diff --git a/.gitignore b/.gitignore index 8b55d7e1..1774bfe0 100644 --- a/.gitignore +++ b/.gitignore @@ -21,6 +21,9 @@ work-record-archive export internal data +figures +fonts +wip # Test htmlcov diff --git a/environment.yml b/environment.yml index 7061885d..8c7fc998 100644 --- a/environment.yml +++ b/environment.yml @@ -19,4 +19,5 @@ dependencies: - pip: - python-dotenv + - black - -e git+https://github.com/tidepool-org/data-analytics#egg=tidals\&subdirectory=tidepool-analysis-tools diff --git a/projects/bigdata-processing-pipeline/anonymize-and-export-data/anonymize-and-export.py b/projects/bigdata-processing-pipeline/anonymize-and-export-data/anonymize-and-export.py index 1e3b48d4..1e9059f2 100644 --- a/projects/bigdata-processing-pipeline/anonymize-and-export-data/anonymize-and-export.py +++ b/projects/bigdata-processing-pipeline/anonymize-and-export-data/anonymize-and-export.py @@ -30,81 +30,100 @@ parser = argparse.ArgumentParser(description=codeDescription) -parser.add_argument("-i", - "--input-tidepool-data", - dest="inputFilePathAndName", - default=os.path.abspath( - os.path.join( - os.path.dirname(__file__), - "example-data", - "jill-jellyfish-lite.json")), - help="csv, xlsx, or json file that contains Tidepool data") - -parser.add_argument("--data-field-list", - dest="dataFieldExportList", - default=os.path.abspath( - os.path.join( - os.path.dirname(__file__), - "example-data", - "dataFieldExportList.csv")), - help="a csv file that contains a list of fields to export") - -parser.add_argument("--salt", - dest="salt", - default="no salt specified", - help="salt used in the hashing algorithm") - -parser.add_argument("-o", - "--output-data-path", - dest="exportPath", - default=os.path.abspath( - os.path.join( - os.path.dirname(__file__), - "example-data", "export")), - help="the path where the data is exported") - -parser.add_argument("--merge-wizard-data", - dest="mergeWizardDataWithBolusData", - default="True", - help="specify boolean with a string (e.g., 'True', 'False', 'T', or 'F'") - -parser.add_argument("-a", - "--anonymize", - dest="anonymize", - default="True", - help="specify boolean with a string (e.g., 'True', 'False', 'T', or 'F'") - -parser.add_argument("-f", - "--output-format", - dest="exportFormat", - # default=["all"], NOTE: we define the default to be "all" below - action="append", - help="the format of the exported data. Export options " + - "include json, xlsx, csv, csvs, or all. " + - "NOTE: you can include multiple formats by passing " + - "the option multiple times (e.g., -f json -f csv)") - -parser.add_argument("--start-date", - dest="startDate", - default="2010-01-01", - help="filter data by startDate and EndDate") - -parser.add_argument("--end-date", - dest="endDate", - default=dt.datetime.now().strftime("%Y-%m-%d"), - help="filter data by startDate and EndDate") - -parser.add_argument("--filterByDatesExceptUploadsAndSettings", - dest="filterByDatesExceptUploadsAndSettings", - default=True, - help="upload and settings data can occur before and " + - "after start and end dates, so include ALL " + - "upload and settings data in export") +parser.add_argument( + "-i", + "--input-tidepool-data", + dest="inputFilePathAndName", + default=os.path.abspath( + os.path.join( + os.path.dirname(__file__), "example-data", "jill-jellyfish-lite.json" + ) + ), + help="csv, xlsx, or json file that contains Tidepool data", +) + +parser.add_argument( + "--data-field-list", + dest="dataFieldExportList", + default=os.path.abspath( + os.path.join( + os.path.dirname(__file__), "example-data", "dataFieldExportList.csv" + ) + ), + help="a csv file that contains a list of fields to export", +) + +parser.add_argument( + "--salt", + dest="salt", + default="no salt specified", + help="salt used in the hashing algorithm", +) + +parser.add_argument( + "-o", + "--output-data-path", + dest="exportPath", + default=os.path.abspath( + os.path.join(os.path.dirname(__file__), "example-data", "export") + ), + help="the path where the data is exported", +) + +parser.add_argument( + "--merge-wizard-data", + dest="mergeWizardDataWithBolusData", + default="True", + help="specify boolean with a string (e.g., 'True', 'False', 'T', or 'F'", +) + +parser.add_argument( + "-a", + "--anonymize", + dest="anonymize", + default="True", + help="specify boolean with a string (e.g., 'True', 'False', 'T', or 'F'", +) + +parser.add_argument( + "-f", + "--output-format", + dest="exportFormat", + # default=["all"], NOTE: we define the default to be "all" below + action="append", + help="the format of the exported data. Export options " + + "include json, xlsx, csv, csvs, or all. " + + "NOTE: you can include multiple formats by passing " + + "the option multiple times (e.g., -f json -f csv)", +) + +parser.add_argument( + "--start-date", + dest="startDate", + default="2010-01-01", + help="filter data by startDate and EndDate", +) + +parser.add_argument( + "--end-date", + dest="endDate", + default=dt.datetime.now().strftime("%Y-%m-%d"), + help="filter data by startDate and EndDate", +) + +parser.add_argument( + "--filterByDatesExceptUploadsAndSettings", + dest="filterByDatesExceptUploadsAndSettings", + default=True, + help="upload and settings data can occur before and " + + "after start and end dates, so include ALL " + + "upload and settings data in export", +) args = parser.parse_args() # Because having a default for an action="append" always includes the default... if args.exportFormat is None: - args.exportFormat = ['all'] + args.exportFormat = ["all"] # %% LOAD DATA FUNCTIONS @@ -140,12 +159,17 @@ def checkDataFieldList(dataFieldPath): sys.exit("{0} is not a valid file path".format(dataFieldPath)) dataFieldExportList = pd.read_csv(dataFieldPath) - approvedDataFields = \ - list(dataFieldExportList.loc[dataFieldExportList.include.fillna(False), - "dataFieldList"]) + approvedDataFields = list( + dataFieldExportList.loc[ + dataFieldExportList.include.fillna(False), "dataFieldList" + ] + ) - hashSaltFields = list(dataFieldExportList.loc[ - dataFieldExportList.hashNeeded.fillna(False), "dataFieldList"]) + hashSaltFields = list( + dataFieldExportList.loc[ + dataFieldExportList.hashNeeded.fillna(False), "dataFieldList" + ] + ) return approvedDataFields, hashSaltFields @@ -153,9 +177,7 @@ def checkDataFieldList(dataFieldPath): def filterByDates(df, startDate, endDate): # filter by qualified start & end date, and sort - df = \ - df[(df.time >= startDate) & - (df.time <= (endDate + "T23:59:59"))] + df = df[(df.time >= startDate) & (df.time <= (endDate + "T23:59:59"))] return df @@ -163,24 +185,35 @@ def filterByDates(df, startDate, endDate): def filterByDatesExceptUploadsAndSettings(df, startDate, endDate): # filter by qualified start & end date, and sort - uploadEventsSettings = df[((df.type == "upload") | - (df.type == "deviceEvent") | - (df.type == "cgmSettings") | - (df.type == "pumpSettings"))] - - theRest = df[~((df.type == "upload") | - (df.type == "deviceEvent") | - (df.type == "cgmSettings") | - (df.type == "pumpSettings"))] + uploadEventsSettings = df[ + ( + (df.type == "upload") + | (df.type == "deviceEvent") + | (df.type == "cgmSettings") + | (df.type == "pumpSettings") + ) + ] + + theRest = df[ + ~( + (df.type == "upload") + | (df.type == "deviceEvent") + | (df.type == "cgmSettings") + | (df.type == "pumpSettings") + ) + ] if "est.localTime" in list(df): - theRest = theRest[(theRest["est.localTime"] >= startDate) & - (theRest["est.localTime"] <= - (endDate + "T23:59:59"))] + theRest = theRest[ + (theRest["est.localTime"] >= startDate) + & (theRest["est.localTime"] <= (endDate + "T23:59:59")) + ] else: - theRest = theRest[(theRest["time"] >= startDate) & - (theRest["time"] <= (endDate + "T23:59:59"))] + theRest = theRest[ + (theRest["time"] >= startDate) + & (theRest["time"] <= (endDate + "T23:59:59")) + ] df = pd.concat([uploadEventsSettings, theRest]) @@ -188,13 +221,15 @@ def filterByDatesExceptUploadsAndSettings(df, startDate, endDate): def sortColumns(df): - allSettingsFields = ["basalSchedules", - "bgTarget", - "bgTargets", - "carbRatio", - "carbRatios", - "insulinSensitivity", - "insulinSensitivities"] + allSettingsFields = [ + "basalSchedules", + "bgTarget", + "bgTargets", + "carbRatio", + "carbRatios", + "insulinSensitivity", + "insulinSensitivities", + ] existingSettingsFields = list(set(df) & set(allSettingsFields)) columnsWithoutSettings = list(set(df) - set(existingSettingsFields)) @@ -202,22 +237,29 @@ def sortColumns(df): for col in columnsWithoutSettings: if "." in col: columsWithDots.append(col) - columnsWithoutSettingsAndDots = list(set(columnsWithoutSettings) - set(columsWithDots)) - newColOrder = sorted(columnsWithoutSettingsAndDots) + sorted(columsWithDots) + \ - sorted(existingSettingsFields) + columnsWithoutSettingsAndDots = list( + set(columnsWithoutSettings) - set(columsWithDots) + ) + newColOrder = ( + sorted(columnsWithoutSettingsAndDots) + + sorted(columsWithDots) + + sorted(existingSettingsFields) + ) df = df[newColOrder] return df def tempRemoveFields(df): - removeFields = ["basalSchedules", - "bgTarget", - "bgTargets", - "carbRatio", - "carbRatios", - "insulinSensitivity", - "insulinSensitivities"] + removeFields = [ + "basalSchedules", + "bgTarget", + "bgTargets", + "carbRatio", + "carbRatios", + "insulinSensitivity", + "insulinSensitivities", + ] tempRemoveFields = list(set(df) & set(removeFields)) tempDf = df[tempRemoveFields] @@ -228,8 +270,9 @@ def tempRemoveFields(df): def removeBrackets(df, fieldName): if fieldName in list(df): - df.loc[df[fieldName].notnull(), fieldName] = \ - df.loc[df[fieldName].notnull(), fieldName].str[0] + df.loc[df[fieldName].notnull(), fieldName] = df.loc[ + df[fieldName].notnull(), fieldName + ].str[0] return df @@ -258,8 +301,15 @@ def flattenJson(df, dataFieldsForExport): df.loc[jsonBlob.index, colHead] = np.nan # turn jsonBlob to dataframe - newDataFrame = pd.concat([newDataFrame, pd.DataFrame(jsonBlob.tolist(), - index=jsonBlob.index).add_prefix(colHead + '.')], axis=1) + newDataFrame = pd.concat( + [ + newDataFrame, + pd.DataFrame(jsonBlob.tolist(), index=jsonBlob.index).add_prefix( + colHead + "." + ), + ], + axis=1, + ) newColHeadings = list(newDataFrame) @@ -299,36 +349,37 @@ def removeInvalidCgmValues(df): nBefore = len(df) # remove values < 38 and > 402 mg/dL - df = df.drop(df[((df.type == "cbg") & - (df.value < 2.109284236597303))].index) - df = df.drop(df[((df.type == "cbg") & - (df.value > 22.314006924003046))].index) + df = df.drop(df[((df.type == "cbg") & (df.value < 2.109284236597303))].index) + df = df.drop(df[((df.type == "cbg") & (df.value > 22.314006924003046))].index) nRemoved = nBefore - len(df) return df, nRemoved def tslimCalibrationFix(df): - searchfor = ['tan'] - tandemDataIndex = ((df.deviceId.str.contains('|'.join(searchfor))) & - (df.type == "deviceEvent")) + searchfor = ["tan"] + tandemDataIndex = (df.deviceId.str.contains("|".join(searchfor))) & ( + df.type == "deviceEvent" + ) if "payload.calibration_reading" in list(df): payloadCalReadingIndex = df["payload.calibration_reading"].notnull() - nTandemAndPayloadCalReadings = sum(tandemDataIndex & - payloadCalReadingIndex) + nTandemAndPayloadCalReadings = sum(tandemDataIndex & payloadCalReadingIndex) if nTandemAndPayloadCalReadings > 0: # if reading is > 30 then it is in the wrong units if df["payload.calibration_reading"].min() > 30: - df.loc[payloadCalReadingIndex, "value"] = \ - df[tandemDataIndex & payloadCalReadingIndex] \ - ["payload.calibration_reading"] / 18.01559 + df.loc[payloadCalReadingIndex, "value"] = ( + df[tandemDataIndex & payloadCalReadingIndex][ + "payload.calibration_reading" + ] + / 18.01559 + ) else: - df.loc[payloadCalReadingIndex, "value"] = \ - df[tandemDataIndex & - payloadCalReadingIndex]["payload.calibration_reading"] + df.loc[payloadCalReadingIndex, "value"] = df[ + tandemDataIndex & payloadCalReadingIndex + ]["payload.calibration_reading"] else: nTandemAndPayloadCalReadings = 0 return df, nTandemAndPayloadCalReadings @@ -337,10 +388,12 @@ def tslimCalibrationFix(df): # %% ANONYMIZE DATA FUNCTIONS def hashScheduleNames(df, salt, userID): - scheduleNames = ["basalSchedules", - "bgTargets", - "carbRatios", - "insulinSensitivities"] + scheduleNames = [ + "basalSchedules", + "bgTargets", + "carbRatios", + "insulinSensitivities", + ] # loop through each of the scheduleNames that exist for scheduleName in scheduleNames: @@ -352,32 +405,45 @@ def hashScheduleNames(df, salt, userID): # loop through each schedule name row for scheduleNameRow in scheduleNameRows: # this is for the csv version, which loads the data as string - if isinstance(scheduleNameDataFrame.loc[scheduleNameRow, scheduleName], str): - scheduleNameDataFrame.loc[scheduleNameRow, [scheduleName]] = \ - [ast.literal_eval(scheduleNameDataFrame.loc[scheduleNameRow, scheduleName])] - - scheduleNameKeys = \ - list(scheduleNameDataFrame[scheduleName] - [scheduleNameRow].keys()) + if isinstance( + scheduleNameDataFrame.loc[scheduleNameRow, scheduleName], str + ): + scheduleNameDataFrame.loc[scheduleNameRow, [scheduleName]] = [ + ast.literal_eval( + scheduleNameDataFrame.loc[scheduleNameRow, scheduleName] + ) + ] + + scheduleNameKeys = list( + scheduleNameDataFrame[scheduleName][scheduleNameRow].keys() + ) # loop through each key and replace with hashed version for scheduleNameKey in scheduleNameKeys: - hashedScheduleName = \ - hashlib.sha256((scheduleNameKey + args.salt + userID). - encode()).hexdigest()[0:8] - scheduleNameDataFrame[scheduleName][scheduleNameRow][hashedScheduleName] = \ - scheduleNameDataFrame[scheduleName][scheduleNameRow].pop(scheduleNameKey) + hashedScheduleName = hashlib.sha256( + (scheduleNameKey + args.salt + userID).encode() + ).hexdigest()[0:8] + scheduleNameDataFrame[scheduleName][scheduleNameRow][ + hashedScheduleName + ] = scheduleNameDataFrame[scheduleName][scheduleNameRow].pop( + scheduleNameKey + ) # drop and reattach the new data df = df.drop(columns=scheduleName) - df = pd.merge(df, scheduleNameDataFrame.loc[:, ["id", scheduleName]], how="left", on="id") + df = pd.merge( + df, + scheduleNameDataFrame.loc[:, ["id", scheduleName]], + how="left", + on="id", + ) return df def hashData(df, columnHeading, lengthOfHash, salt, userID): - df[columnHeading] = \ - (df[columnHeading].astype(str) + salt + userID).apply( - lambda s: hashlib.sha256(s.encode()).hexdigest()[0:lengthOfHash]) + df[columnHeading] = (df[columnHeading].astype(str) + salt + userID).apply( + lambda s: hashlib.sha256(s.encode()).hexdigest()[0:lengthOfHash] + ) return df @@ -386,10 +452,13 @@ def anonymizeData(df, hashSaltFields, salt, userID): for hashSaltField in hashSaltFields: if hashSaltField in df.columns.values: - df.loc[df[hashSaltField].notnull(), hashSaltField] = \ - hashData(pd.DataFrame(df.loc[df[hashSaltField].notnull(), - hashSaltField]), - hashSaltField, 8, salt, userID) + df.loc[df[hashSaltField].notnull(), hashSaltField] = hashData( + pd.DataFrame(df.loc[df[hashSaltField].notnull(), hashSaltField]), + hashSaltField, + 8, + salt, + userID, + ) # also hash the schedule names df = hashScheduleNames(df, salt, userID) @@ -415,39 +484,37 @@ def filterAndSort(groupedDF, filterByField, sortByField): def removeManufacturersFromAnnotationsCode(df): # remove manufacturer from annotations.code - manufacturers = ["animas/", - "bayer/", - "carelink/", - "insulet/", - "medtronic/", - "medtronic600/", - "tandem/"] + manufacturers = [ + "animas/", + "bayer/", + "carelink/", + "insulet/", + "medtronic/", + "medtronic600/", + "tandem/", + ] annotationFields = [ "annotations.code", "suppressed.annotations.code", - "suppressed.suppressed.annotations.code" - ] + "suppressed.suppressed.annotations.code", + ] for annotationField in annotationFields: if annotationField in df.columns.values: if sum(df[annotationField].notnull()) > 0: - df[annotationField] = \ - df[annotationField].str. \ - replace("|".join(manufacturers), "") + df[annotationField] = df[annotationField].str.replace( + "|".join(manufacturers), "" + ) return df def mergeWizardWithBolus(df, exportDirectory): - if (("bolus" in set(df.type)) and ("wizard" in set(df.type))): - bolusData = pd.read_csv(exportDirectory + "bolus.csv", - low_memory=False) - wizardData = pd.read_csv(exportDirectory + "wizard.csv", - low_memory=False) - - + if ("bolus" in set(df.type)) and ("wizard" in set(df.type)): + bolusData = pd.read_csv(exportDirectory + "bolus.csv", low_memory=False) + wizardData = pd.read_csv(exportDirectory + "wizard.csv", low_memory=False) # merge the wizard data with the bolus data wizardData["calculatorId"] = wizardData["id"] @@ -468,13 +535,14 @@ def mergeWizardWithBolus(df, exportDirectory): "recommended.net", "units", ] - keepTheseWizardFields = \ - set(wizardDataFields).intersection(list(wizardData)) - bolusData = pd.merge(bolusData, - wizardData[list(keepTheseWizardFields)], - how="left", - left_on="id", - right_on="bolus") + keepTheseWizardFields = set(wizardDataFields).intersection(list(wizardData)) + bolusData = pd.merge( + bolusData, + wizardData[list(keepTheseWizardFields)], + how="left", + left_on="id", + right_on="bolus", + ) mergedBolusData = bolusData.drop("bolus", axis=1) else: @@ -487,15 +555,13 @@ def cleanDiretory(exportFolder, fileName): # if there is a failure during an export, you will want to clear out # the remnants before trying to export again, so delete files if they exist - hiddenCsvExportFolder = os.path.join(exportFolder, - "." + fileName + "-csvs", "") + hiddenCsvExportFolder = os.path.join(exportFolder, "." + fileName + "-csvs", "") if os.path.exists(hiddenCsvExportFolder): shutil.rmtree(hiddenCsvExportFolder) os.makedirs(hiddenCsvExportFolder) - unhiddenCsvExportFolder = os.path.join(exportFolder, - fileName + "-csvs", "") + unhiddenCsvExportFolder = os.path.join(exportFolder, fileName + "-csvs", "") for fType in ["xlsx", "json", "csv"]: fName = os.path.join(exportFolder, fileName + "." + fType) @@ -523,8 +589,7 @@ def exportCsvFiles(df, exportFolder, fileName, mergeCalculatorData): bolusWithWizardData = mergeWizardWithBolus(df, hiddenCsvExportFolder) if len(bolusWithWizardData) > 0: bolusWithWizardData = sortColumns(bolusWithWizardData) - bolusWithWizardData.to_csv(hiddenCsvExportFolder + "bolus.csv", - index=False) + bolusWithWizardData.to_csv(hiddenCsvExportFolder + "bolus.csv", index=False) if os.path.exists(hiddenCsvExportFolder + "wizard.csv"): os.remove(hiddenCsvExportFolder + "wizard.csv") @@ -536,12 +601,14 @@ def exportSingleCsv(exportFolder, fileName, exportDirectory, fileType): csvFiles = glob.glob(exportDirectory + "*.csv") bigTable = pd.DataFrame() for csvFile in csvFiles: - bigTable = pd.concat([bigTable, pd.read_csv(csvFile, low_memory=False)], sort=False) + bigTable = pd.concat( + [bigTable, pd.read_csv(csvFile, low_memory=False)], sort=False + ) # first sort by time and then put columns in alphabetical order bigTable = bigTable.sort_values("time") bigTable = sortColumns(bigTable) - if (("csv" in fileType) | ("all" in fileType)): + if ("csv" in fileType) | ("all" in fileType): bigTable.to_csv(os.path.join(exportFolder, fileName + ".csv"), index=False) return bigTable @@ -561,7 +628,7 @@ def formatKeyValue(key, val): def formatRow(oneRow): keyValList = [formatKeyValue(k, v) for k, v in oneRow.items()] keyValString = ",".join(keyValList) - rowString = '\n {' + keyValString + '\n }' + rowString = "\n {" + keyValString + "\n }" return rowString @@ -573,10 +640,10 @@ def rowToDict(rowData): def exportPrettyJson(df, exportFolder, fileName): jsonExportFileName = os.path.join(exportFolder, fileName + ".json") - outfile = open(jsonExportFileName, 'w') + outfile = open(jsonExportFileName, "w") rowList = df.apply(rowToDict, axis=1) allRows = ",".join(rowList) - jsonString = '[' + allRows + '\n]' + jsonString = "[" + allRows + "\n]" outfile.write(jsonString) outfile.close() @@ -585,41 +652,43 @@ def exportPrettyJson(df, exportFolder, fileName): def exportExcelFile(exportDirectory, exportFolder, fileName): mylen = np.vectorize(len) - writer = pd.ExcelWriter(os.path.join(exportFolder, fileName + ".xlsx"), - engine='xlsxwriter') + writer = pd.ExcelWriter( + os.path.join(exportFolder, fileName + ".xlsx"), engine="xlsxwriter" + ) workbook = writer.book - header_format = workbook.add_format({'bold': True, - 'valign': 'center', - 'border': False, - 'align': 'center'}) + header_format = workbook.add_format( + {"bold": True, "valign": "center", "border": False, "align": "center"} + ) - cell_format = workbook.add_format({'align': 'center'}) + cell_format = workbook.add_format({"align": "center"}) csvFiles = sorted(os.listdir(exportDirectory)) for csvFile in csvFiles: dataName = csvFile[:-4] tempCsvData = pd.read_csv( - os.path.join(exportDirectory, dataName + ".csv"), - low_memory=False) + os.path.join(exportDirectory, dataName + ".csv"), low_memory=False + ) # put the date time columns in an excel interpretable format for col_heading in list(tempCsvData): if "time" in col_heading.lower()[-4:]: - tempCsvData[col_heading] = \ - pd.to_datetime(tempCsvData[col_heading]) + tempCsvData[col_heading] = pd.to_datetime(tempCsvData[col_heading]) - tempCsvData.to_excel(writer, dataName, startrow=1, header=False, - index=False, freeze_panes=(1, 0)) + tempCsvData.to_excel( + writer, dataName, startrow=1, header=False, index=False, freeze_panes=(1, 0) + ) worksheet = writer.sheets[dataName] - workbook.add_format({'align': 'center'}) + workbook.add_format({"align": "center"}) # Write the column headers with the defined format for col_num, value in enumerate(tempCsvData.columns.values): worksheet.write(0, col_num, value, header_format) - colWidth = max(len(value), max(mylen(tempCsvData.iloc[:, col_num].astype(str)))) + colWidth = max( + len(value), max(mylen(tempCsvData.iloc[:, col_num].astype(str))) + ) worksheet.set_column(col_num, col_num, colWidth, cell_format) writer.save() @@ -631,7 +700,7 @@ def readXlsxData(xlsxPathAndFileName): # load xlsx df = pd.read_excel(xlsxPathAndFileName, sheet_name=None, ignore_index=True) cdf = pd.concat(df.values(), ignore_index=True) - cdf = cdf.set_index('rowIndex') + cdf = cdf.set_index("rowIndex") return cdf @@ -648,19 +717,18 @@ def exportData(df, fileName, fileType, exportDirectory, mergeCalculatorData): # merge the bolus and wizard (AKA calculator) data csvExportFolder = exportCsvFiles(df, exportDirectory, fileName, mergeCalculatorData) - if (("csv" in fileType) | ("json" in fileType) | ("all" in fileType)): + if ("csv" in fileType) | ("json" in fileType) | ("all" in fileType): allData = exportSingleCsv(exportDirectory, fileName, csvExportFolder, fileType) - if (("json" in fileType) | ("all" in fileType)): + if ("json" in fileType) | ("all" in fileType): exportPrettyJson(allData, exportDirectory, fileName) - if (("xlsx" in fileType) | ("all" in fileType)): + if ("xlsx" in fileType) | ("all" in fileType): exportExcelFile(csvExportFolder, exportDirectory, fileName) - if (("csvs" in fileType) | ("all" in fileType)): + if ("csvs" in fileType) | ("all" in fileType): # unhide the csv files - unhiddenCsvExportFolder = \ - os.path.join(exportDirectory, fileName + "-csvs", "") + unhiddenCsvExportFolder = os.path.join(exportDirectory, fileName + "-csvs", "") os.rename(csvExportFolder, unhiddenCsvExportFolder) else: shutil.rmtree(csvExportFolder) @@ -685,9 +753,7 @@ def exportData(df, fileName, fileType, exportDirectory, mergeCalculatorData): # remove data between start and end dates if args.filterByDatesExceptUploadsAndSettings: - data = filterByDatesExceptUploadsAndSettings(data, - args.startDate, - args.endDate) + data = filterByDatesExceptUploadsAndSettings(data, args.startDate, args.endDate) else: data = filterByDates(data, args.startDate, args.endDate) @@ -729,11 +795,16 @@ def exportData(df, fileName, fileType, exportDirectory, mergeCalculatorData): # if a hashID is defined, then use the hashID, if not use the PHI userID startTime = time.time() print("exporting data...", end="") -if 'hashID' in locals(): +if "hashID" in locals(): outputName = hashID else: outputName = "PHI-" + userID -exportData(data, outputName, args.exportFormat, - args.exportPath, "t" in args.mergeWizardDataWithBolusData.lower()) +exportData( + data, + outputName, + args.exportFormat, + args.exportPath, + "t" in args.mergeWizardDataWithBolusData.lower(), +) print("done, took", round(time.time() - startTime, 1), "seconds") diff --git a/projects/bigdata-processing-pipeline/environmentalVariables.py b/projects/bigdata-processing-pipeline/environmentalVariables.py index 80efffed..25bbb059 100644 --- a/projects/bigdata-processing-pipeline/environmentalVariables.py +++ b/projects/bigdata-processing-pipeline/environmentalVariables.py @@ -17,7 +17,7 @@ # %% load environmental variables -dotenv_path = join(dirname(__file__), '.env') +dotenv_path = join(dirname(__file__), ".env") if isfile(dotenv_path): load_dotenv(dotenv_path) @@ -34,4 +34,6 @@ def get_environmental_variables(donorGroup): return emailAddress, pswd except KeyError: - raise KeyError("Details for Donor Group '{0}' not found in .env".format(donorGroup)) + raise KeyError( + "Details for Donor Group '{0}' not found in .env".format(donorGroup) + ) diff --git a/projects/bigdata-processing-pipeline/estimate-local-time/estimate-local-time.py b/projects/bigdata-processing-pipeline/estimate-local-time/estimate-local-time.py index 9d9a051f..dc3bae6c 100644 --- a/projects/bigdata-processing-pipeline/estimate-local-time/estimate-local-time.py +++ b/projects/bigdata-processing-pipeline/estimate-local-time/estimate-local-time.py @@ -32,62 +32,70 @@ parser = argparse.ArgumentParser(description=codeDescription) -parser.add_argument("-i", - "--input-data-file", - dest="inputFilePathAndName", - default=os.path.abspath( - os.path.join( - os.path.dirname(__file__), "example-csv.csv")), - help="csv, xlsx, or json file that contains Tidepool data") - -parser.add_argument("--deprecated-timezone-list", - dest="timezoneAliasesFilePathAndName", - default=os.path.abspath( - os.path.join( - os.path.dirname(__file__), - "wikipedia-timezone-aliases-2018-04-28.csv")), - help="a .csv file that contains a list of deprecated " + - "timezones and their alias") - -parser.add_argument("-o", - "--output-data-path", - dest="outputPath", - default=os.path.abspath( - os.path.join( - os.path.dirname(__file__), - "output", "dataWithLocalTimeEstimates")), - help="the output where the data is stored") - -parser.add_argument("--day-series-output-path", - dest="daySeriesOutputPath", - default=os.path.abspath( - os.path.join( - os.path.dirname(__file__), - "output", "daySeriesData")), - help="optional path to store the contiguous day series" + - "data. If no path is specified, then data is not saved") - -parser.add_argument("--start-date", - dest="startDate", - default="2010-01-01", - help="filter data by startDate and endDate") - -parser.add_argument("--end-date", - dest="endDate", - default=dt.datetime.now().strftime("%Y-%m-%d"), - help="filter data by startDate and endDate") +parser.add_argument( + "-i", + "--input-data-file", + dest="inputFilePathAndName", + default=os.path.abspath(os.path.join(os.path.dirname(__file__), "example-csv.csv")), + help="csv, xlsx, or json file that contains Tidepool data", +) + +parser.add_argument( + "--deprecated-timezone-list", + dest="timezoneAliasesFilePathAndName", + default=os.path.abspath( + os.path.join( + os.path.dirname(__file__), "wikipedia-timezone-aliases-2018-04-28.csv" + ) + ), + help="a .csv file that contains a list of deprecated " + + "timezones and their alias", +) + +parser.add_argument( + "-o", + "--output-data-path", + dest="outputPath", + default=os.path.abspath( + os.path.join(os.path.dirname(__file__), "output", "dataWithLocalTimeEstimates") + ), + help="the output where the data is stored", +) + +parser.add_argument( + "--day-series-output-path", + dest="daySeriesOutputPath", + default=os.path.abspath( + os.path.join(os.path.dirname(__file__), "output", "daySeriesData") + ), + help="optional path to store the contiguous day series" + + "data. If no path is specified, then data is not saved", +) + +parser.add_argument( + "--start-date", + dest="startDate", + default="2010-01-01", + help="filter data by startDate and endDate", +) + +parser.add_argument( + "--end-date", + dest="endDate", + default=dt.datetime.now().strftime("%Y-%m-%d"), + help="filter data by startDate and endDate", +) args = parser.parse_args() # %% FUNCTIONS + def filterByDates(df, startDate, endDate): # filter by qualified start & end date, and sort - df = \ - df[(df.time >= startDate) & - (df.time <= (endDate + "T23:59:59"))] + df = df[(df.time >= startDate) & (df.time <= (endDate + "T23:59:59"))] return df @@ -98,8 +106,9 @@ def convertDeprecatedTimezoneToAlias(df, tzAlias): uniqueTimezones = uniqueTimezones[pd.notnull(df.timezone.unique())] for uniqueTimezone in uniqueTimezones: - alias = tzAlias.loc[tzAlias.tz.str.endswith(uniqueTimezone), - ["alias"]].values + alias = tzAlias.loc[ + tzAlias.tz.str.endswith(uniqueTimezone), ["alias"] + ].values if len(alias) == 1: df.loc[df.timezone == uniqueTimezone, ["timezone"]] = alias @@ -108,21 +117,23 @@ def convertDeprecatedTimezoneToAlias(df, tzAlias): def largeTimezoneOffsetCorrection(df): - while ((df.timezoneOffset > 840).sum() > 0): - df.loc[df.timezoneOffset > 840, ["conversionOffset"]] = \ - df.loc[df.timezoneOffset > 840, ["conversionOffset"]] - \ - (1440 * 60 * 1000) + while (df.timezoneOffset > 840).sum() > 0: + df.loc[df.timezoneOffset > 840, ["conversionOffset"]] = df.loc[ + df.timezoneOffset > 840, ["conversionOffset"] + ] - (1440 * 60 * 1000) - df.loc[df.timezoneOffset > 840, ["timezoneOffset"]] = \ + df.loc[df.timezoneOffset > 840, ["timezoneOffset"]] = ( df.loc[df.timezoneOffset > 840, ["timezoneOffset"]] - 1440 + ) - while ((df.timezoneOffset < -720).sum() > 0): - df.loc[df.timezoneOffset < -720, ["conversionOffset"]] = \ - df.loc[df.timezoneOffset < -720, ["conversionOffset"]] + \ - (1440 * 60 * 1000) + while (df.timezoneOffset < -720).sum() > 0: + df.loc[df.timezoneOffset < -720, ["conversionOffset"]] = df.loc[ + df.timezoneOffset < -720, ["conversionOffset"] + ] + (1440 * 60 * 1000) - df.loc[df.timezoneOffset < -720, ["timezoneOffset"]] = \ + df.loc[df.timezoneOffset < -720, ["timezoneOffset"]] = ( df.loc[df.timezoneOffset < -720, ["timezoneOffset"]] + 1440 + ) return df @@ -131,9 +142,11 @@ def createContiguousDaySeries(df): firstDay = df.date.min() lastDay = df.date.max() rng = pd.date_range(firstDay, lastDay).date - contiguousDaySeries = \ - pd.DataFrame(rng, columns=["date"]).sort_values( - "date", ascending=False).reset_index(drop=True) + contiguousDaySeries = ( + pd.DataFrame(rng, columns=["date"]) + .sort_values("date", ascending=False) + .reset_index(drop=True) + ) return contiguousDaySeries @@ -148,11 +161,15 @@ def getAndPreprocessUploadRecords(df): ud.loc[ud.deviceTags.str.contains("pump"), ["deviceType"]] = "pump" # this is for non-healthkit cgm records only - ud.loc[((ud.deviceTags.str.contains("cgm")) & - (ud.timeProcessing != "none")), ["deviceType"]] = "cgm" + ud.loc[ + ((ud.deviceTags.str.contains("cgm")) & (ud.timeProcessing != "none")), + ["deviceType"], + ] = "cgm" - ud.loc[((ud.deviceTags.str.contains("cgm")) & - (ud.timeProcessing == "none")), ["deviceType"]] = "healthkit" + ud.loc[ + ((ud.deviceTags.str.contains("cgm")) & (ud.timeProcessing == "none")), + ["deviceType"], + ] = "healthkit" return ud @@ -162,9 +179,11 @@ def getAndPreprocessNonDexApiCgmRecords(df): if "payload" in df: # convert payloads to strings df["isDexcomAPI"] = df.payload.astype(str).str.contains("systemTime") - cd = df[(df.type == "cbg") & - (df.timezoneOffset.notnull()) & - (~df.isDexcomAPI.fillna(False))].copy() + cd = df[ + (df.type == "cbg") + & (df.timezoneOffset.notnull()) + & (~df.isDexcomAPI.fillna(False)) + ].copy() else: cd = df[(df.type == "cbg") & (df.timezoneOffset.notnull())] @@ -198,18 +217,19 @@ def getTzoForDateTime(currentDateTime, currentTimezone): def isDSTChangeDay(currentDate, currentTimezone): - tzoCurrentDay = getTimezoneOffset(pd.to_datetime(currentDate), - currentTimezone) - tzoPreviousDay = getTimezoneOffset(pd.to_datetime(currentDate) + - timedelta(days=-1), currentTimezone) + tzoCurrentDay = getTimezoneOffset(pd.to_datetime(currentDate), currentTimezone) + tzoPreviousDay = getTimezoneOffset( + pd.to_datetime(currentDate) + timedelta(days=-1), currentTimezone + ) - return (tzoCurrentDay != tzoPreviousDay) + return tzoCurrentDay != tzoPreviousDay def addAnnotation(df, idx, annotationMessage): if pd.notnull(df.loc[idx, "est.annotations"]): - df.loc[idx, ["est.annotations"]] = df.loc[idx, "est.annotations"] + \ - ", " + annotationMessage + df.loc[idx, ["est.annotations"]] = ( + df.loc[idx, "est.annotations"] + ", " + annotationMessage + ) else: df.loc[idx, ["est.annotations"]] = annotationMessage @@ -223,24 +243,26 @@ def addDeviceDaySeries(df, dfContDays, deviceTypeName): if "upload" in deviceTypeName: if "timezone" in df: if dfDayGroups.timezone.count().values[0] > 0: - dfDaySeries["timezone"] = \ - dfDayGroups.timezone.describe()["top"] + dfDaySeries["timezone"] = dfDayGroups.timezone.describe()["top"] # get the timezone offset for the timezone for i in dfDaySeries.index: if pd.notnull(dfDaySeries.loc[i, "timezone"]): tzo = getTimezoneOffset( - pd.to_datetime(i), - dfDaySeries.loc[i, "timezone"]) + pd.to_datetime(i), dfDaySeries.loc[i, "timezone"] + ) dfDaySeries.loc[i, ["timezoneOffset"]] = tzo - dfDaySeries["timeProcessing"] = \ - dfDayGroups.timeProcessing.describe()["top"] + dfDaySeries[ + "timeProcessing" + ] = dfDayGroups.timeProcessing.describe()["top"] - dfDaySeries = dfDaySeries.add_prefix(deviceTypeName + "."). \ - rename(columns={deviceTypeName + ".date": "date"}) + dfDaySeries = dfDaySeries.add_prefix(deviceTypeName + ".").rename( + columns={deviceTypeName + ".date": "date"} + ) - dfContDays = pd.merge(dfContDays, dfDaySeries.reset_index(), - on="date", how="left") + dfContDays = pd.merge( + dfContDays, dfDaySeries.reset_index(), on="date", how="left" + ) else: dfContDays[deviceTypeName + ".timezoneOffset"] = np.nan @@ -249,24 +271,23 @@ def addDeviceDaySeries(df, dfContDays, deviceTypeName): def imputeUploadRecords(df, contDays, deviceTypeName): - daySeries = \ - addDeviceDaySeries(df, contDays, deviceTypeName) + daySeries = addDeviceDaySeries(df, contDays, deviceTypeName) - if ((len(df) > 0) & (deviceTypeName + ".timezone" in daySeries)): + if (len(df) > 0) & (deviceTypeName + ".timezone" in daySeries): for i in daySeries.index[1:]: if pd.isnull(daySeries[deviceTypeName + ".timezone"][i]): - daySeries.loc[i, [deviceTypeName + ".timezone"]] = \ - daySeries.loc[i-1, deviceTypeName + ".timezone"] + daySeries.loc[i, [deviceTypeName + ".timezone"]] = daySeries.loc[ + i - 1, deviceTypeName + ".timezone" + ] if pd.notnull(daySeries[deviceTypeName + ".timezone"][i]): tz = daySeries.loc[i, deviceTypeName + ".timezone"] - tzo = \ - getTimezoneOffset(pd.to_datetime(daySeries.loc[i, "date"]), - tz) + tzo = getTimezoneOffset(pd.to_datetime(daySeries.loc[i, "date"]), tz) daySeries.loc[i, deviceTypeName + ".timezoneOffset"] = tzo - if pd.notnull(daySeries[deviceTypeName + ".timeProcessing"][i-1]): - daySeries.loc[i, deviceTypeName + ".timeProcessing"] = \ - daySeries.loc[i-1, deviceTypeName + ".timeProcessing"] + if pd.notnull(daySeries[deviceTypeName + ".timeProcessing"][i - 1]): + daySeries.loc[i, deviceTypeName + ".timeProcessing"] = daySeries.loc[ + i - 1, deviceTypeName + ".timeProcessing" + ] else: daySeries[deviceTypeName + ".timezone"] = np.nan @@ -290,10 +311,13 @@ def estimateTzAndTzoWithUploadRecords(cDF): cDF["est.timezone"] = np.nan cDF["est.timeProcessing"] = np.nan - cDF.loc[((cDF["est.timezoneOffset"] != - cDF["home.imputed.timezoneOffset"]) & - (pd.notnull(cDF["est.timezoneOffset"]))), - "est.annotations"] = "travel" + cDF.loc[ + ( + (cDF["est.timezoneOffset"] != cDF["home.imputed.timezoneOffset"]) + & (pd.notnull(cDF["est.timezoneOffset"])) + ), + "est.annotations", + ] = "travel" return cDF @@ -306,8 +330,12 @@ def estimateTzAndTzoWithDeviceRecords(cDF): for deviceType in ["pump", "cgm"]: # find the indices of days where a TZO estimate has not been made AND # where the device (e.g., pump or cgm) TZO has data - sIndices = cDF[((cDF["est.timezoneOffset"].isnull()) & - (cDF[deviceType + ".timezoneOffset"].notnull()))].index + sIndices = cDF[ + ( + (cDF["est.timezoneOffset"].isnull()) + & (cDF[deviceType + ".timezoneOffset"].notnull()) + ) + ].index # compare the device TZO to the imputed series to infer time zone cDF = compareDeviceTzoToImputedSeries(cDF, sIndices, deviceType) @@ -316,8 +344,12 @@ def estimateTzAndTzoWithDeviceRecords(cDF): # previous day's TZO, AND if the previous day has a TZ estimate, use the # previous day's TZ estimate for the current day's TZ estimate for deviceType in ["pump", "cgm"]: - sIndices = cDF[((cDF["est.timezoneOffset"].isnull()) & - (cDF[deviceType + ".timezoneOffset"].notnull()))].index + sIndices = cDF[ + ( + (cDF["est.timezoneOffset"].isnull()) + & (cDF[deviceType + ".timezoneOffset"].notnull()) + ) + ].index cDF = compareDeviceTzoToPrevDayTzo(cDF, sIndices, deviceType) @@ -327,14 +359,22 @@ def estimateTzAndTzoWithDeviceRecords(cDF): # allow the estimates to be off by 60 minutes as there are a lot of cases # where the devices are off because the user changes the time for DST, # at different times - sIndices = cDF[((cDF["est.type"] == "DEVICE") & - (cDF["pump.timezoneOffset"].notnull()) & - (cDF["cgm.timezoneOffset"].notnull()) & - (cDF["pump.timezoneOffset"] != cDF["cgm.timezoneOffset"]) - )].index - - tzoDiffGT60 = abs(cDF.loc[sIndices, "cgm.timezoneOffset"] - - cDF.loc[sIndices, "pump.timezoneOffset"]) > 60 + sIndices = cDF[ + ( + (cDF["est.type"] == "DEVICE") + & (cDF["pump.timezoneOffset"].notnull()) + & (cDF["cgm.timezoneOffset"].notnull()) + & (cDF["pump.timezoneOffset"] != cDF["cgm.timezoneOffset"]) + ) + ].index + + tzoDiffGT60 = ( + abs( + cDF.loc[sIndices, "cgm.timezoneOffset"] + - cDF.loc[sIndices, "pump.timezoneOffset"] + ) + > 60 + ) idx = tzoDiffGT60.index[tzoDiffGT60] @@ -350,7 +390,8 @@ def addHomeTimezone(df, contDays): if "timezone" in df: homeTimezone = df["timezone"].describe()["top"] tzo = contDays.date.apply( - lambda x: getTimezoneOffset(pd.to_datetime(x), homeTimezone)) + lambda x: getTimezoneOffset(pd.to_datetime(x), homeTimezone) + ) contDays["home.imputed.timezoneOffset"] = tzo contDays["home.imputed.timezone"] = homeTimezone @@ -364,10 +405,12 @@ def addHomeTimezone(df, contDays): def getRangeOfTZOsForTimezone(tz): - minMaxTzo = [getTimezoneOffset(pd.to_datetime("1/1/2017"), tz), - getTimezoneOffset(pd.to_datetime("5/1/2017"), tz)] + minMaxTzo = [ + getTimezoneOffset(pd.to_datetime("1/1/2017"), tz), + getTimezoneOffset(pd.to_datetime("5/1/2017"), tz), + ] - rangeOfTzo = np.arange(int(min(minMaxTzo)), int(max(minMaxTzo))+1, 15) + rangeOfTzo = np.arange(int(min(minMaxTzo)), int(max(minMaxTzo)) + 1, 15) return rangeOfTzo @@ -387,7 +430,7 @@ def tzoRangeWithComparisonTz(df, i, comparisonTz): def tzAndTzoRangePreviousDay(df, i): # if we have a previous timezone estimate, then calcuate the range of # timezone offset values for that time zone - comparisonTz = df.loc[i-1, "est.timezone"] + comparisonTz = df.loc[i - 1, "est.timezone"] rangeTzos = tzoRangeWithComparisonTz(df, i, comparisonTz) @@ -407,14 +450,11 @@ def tzAndTzoRangeWithHomeTz(df, i): def assignTzoFromImputedSeries(df, i, imputedSeries): df.loc[i, ["est.type"]] = "DEVICE" - df.loc[i, ["est.timezoneOffset"]] = \ - df.loc[i, imputedSeries + ".timezoneOffset"] + df.loc[i, ["est.timezoneOffset"]] = df.loc[i, imputedSeries + ".timezoneOffset"] - df.loc[i, ["est.timezone"]] = \ - df.loc[i, imputedSeries + ".timezone"] + df.loc[i, ["est.timezone"]] = df.loc[i, imputedSeries + ".timezone"] - df.loc[i, ["est.timeProcessing"]] = \ - df.loc[i, imputedSeries + ".timeProcessing"] + df.loc[i, ["est.timeProcessing"]] = df.loc[i, imputedSeries + ".timeProcessing"] return df @@ -423,34 +463,41 @@ def compareDeviceTzoToImputedSeries(df, sIdx, device): for i in sIdx: # if the device tzo = imputed tzo, then chose the imputed tz and tzo # note, dst is accounted for in the imputed tzo - for imputedSeries in ["pump.upload.imputed", "cgm.upload.imputed", - "healthkit.upload.imputed", "home.imputed"]: + for imputedSeries in [ + "pump.upload.imputed", + "cgm.upload.imputed", + "healthkit.upload.imputed", + "home.imputed", + ]: # if the estimate has not already been made if pd.isnull(df.loc[i, "est.timezone"]): - if df.loc[i, device + ".timezoneOffset"] == \ - df.loc[i, imputedSeries + ".timezoneOffset"]: + if ( + df.loc[i, device + ".timezoneOffset"] + == df.loc[i, imputedSeries + ".timezoneOffset"] + ): assignTzoFromImputedSeries(df, i, imputedSeries) - df = addAnnotation(df, i, - "tz-inferred-from-" + imputedSeries) + df = addAnnotation(df, i, "tz-inferred-from-" + imputedSeries) # if the imputed series has a timezone estimate, then see if # the current day is a dst change day - elif (pd.notnull(df.loc[i, imputedSeries + ".timezone"])): + elif pd.notnull(df.loc[i, imputedSeries + ".timezone"]): imputedTimezone = df.loc[i, imputedSeries + ".timezone"] if isDSTChangeDay(df.loc[i, "date"], imputedTimezone): dstRange = getRangeOfTZOsForTimezone(imputedTimezone) - if ((df.loc[i, device + ".timezoneOffset"] in dstRange) - & (df.loc[i, imputedSeries + ".timezoneOffset"] in dstRange)): + if (df.loc[i, device + ".timezoneOffset"] in dstRange) & ( + df.loc[i, imputedSeries + ".timezoneOffset"] in dstRange + ): assignTzoFromImputedSeries(df, i, imputedSeries) df = addAnnotation(df, i, "dst-change-day") df = addAnnotation( - df, i, "tz-inferred-from-" + imputedSeries) + df, i, "tz-inferred-from-" + imputedSeries + ) return df @@ -459,10 +506,11 @@ def assignTzoFromPreviousDay(df, i, previousDayTz): df.loc[i, ["est.type"]] = "DEVICE" df.loc[i, ["est.timezone"]] = previousDayTz - df.loc[i, ["est.timezoneOffset"]] = \ - getTimezoneOffset(pd.to_datetime(df.loc[i, "date"]), previousDayTz) + df.loc[i, ["est.timezoneOffset"]] = getTimezoneOffset( + pd.to_datetime(df.loc[i, "date"]), previousDayTz + ) - df.loc[i, ["est.timeProcessing"]] = df.loc[i-1, "est.timeProcessing"] + df.loc[i, ["est.timeProcessing"]] = df.loc[i - 1, "est.timeProcessing"] df = addAnnotation(df, i, "tz-inferred-from-prev-day") return df @@ -471,10 +519,10 @@ def assignTzoFromPreviousDay(df, i, previousDayTz): def assignTzoFromDeviceTzo(df, i, device): df.loc[i, ["est.type"]] = "DEVICE" - df.loc[i, ["est.timezoneOffset"]] = \ - df.loc[i, device + ".timezoneOffset"] - df.loc[i, ["est.timeProcessing"]] = \ - df.loc[i, device + ".upload.imputed.timeProcessing"] + df.loc[i, ["est.timezoneOffset"]] = df.loc[i, device + ".timezoneOffset"] + df.loc[i, ["est.timeProcessing"]] = df.loc[ + i, device + ".upload.imputed.timeProcessing" + ] df = addAnnotation(df, i, "likely-travel") df = addAnnotation(df, i, "tzo-from-" + device) @@ -487,22 +535,25 @@ def compareDeviceTzoToPrevDayTzo(df, sIdx, device): for i in sIdx[sIdx > 0]: # first see if the previous record has a tzo - if (pd.notnull(df.loc[i-1, "est.timezoneOffset"])): + if pd.notnull(df.loc[i - 1, "est.timezoneOffset"]): previousDayTz, dstRange = tzAndTzoRangePreviousDay(df, i) - timeDiff = abs((df.loc[i, device + ".timezoneOffset"]) - - df.loc[i-1, "est.timezoneOffset"]) + timeDiff = abs( + (df.loc[i, device + ".timezoneOffset"]) + - df.loc[i - 1, "est.timezoneOffset"] + ) # next see if the previous record has a tz - if (pd.notnull(df.loc[i-1, "est.timezone"])): + if pd.notnull(df.loc[i - 1, "est.timezone"]): if timeDiff == 0: assignTzoFromPreviousDay(df, i, previousDayTz) # see if the previous day's tzo and device tzo are within the # dst range (as that is a common problem with this data) - elif ((df.loc[i, device + ".timezoneOffset"] in dstRange) - & (df.loc[i-1, "est.timezoneOffset"] in dstRange)): + elif (df.loc[i, device + ".timezoneOffset"] in dstRange) & ( + df.loc[i - 1, "est.timezoneOffset"] in dstRange + ): # then see if it is DST change day if isDSTChangeDay(df.loc[i, "date"], previousDayTz): @@ -518,24 +569,21 @@ def compareDeviceTzoToPrevDayTzo(df, sIdx, device): # procedure puts clock drift into the device.tzo, # and as a result the tzo can be off by 15, 30, # or 45 minutes. - if (((df.loc[i, device + ".timezoneOffset"] == - min(dstRange)) | - (df.loc[i, device + ".timezoneOffset"] == - max(dstRange))) & - ((df.loc[i-1, "est.timezoneOffset"] == - min(dstRange)) | - (df.loc[i-1, "est.timezoneOffset"] == - max(dstRange)))): + if ( + (df.loc[i, device + ".timezoneOffset"] == min(dstRange)) + | (df.loc[i, device + ".timezoneOffset"] == max(dstRange)) + ) & ( + (df.loc[i - 1, "est.timezoneOffset"] == min(dstRange)) + | (df.loc[i - 1, "est.timezoneOffset"] == max(dstRange)) + ): df.loc[i, ["est.type"]] = "UNCERTAIN" - df = addAnnotation(df, i, - "likely-dst-error-OR-travel") + df = addAnnotation(df, i, "likely-dst-error-OR-travel") else: df.loc[i, ["est.type"]] = "UNCERTAIN" - df = addAnnotation(df, i, - "likely-15-min-dst-error") + df = addAnnotation(df, i, "likely-15-min-dst-error") # next see if time difference between device.tzo and prev.tzo # is off by 720 minutes, which is indicative of a common @@ -557,23 +605,27 @@ def compareDeviceTzoToPrevDayTzo(df, sIdx, device): else: comparisonTz, dstRange = tzAndTzoRangeWithHomeTz(df, i) - timeDiff = abs((df.loc[i, device + ".timezoneOffset"]) - - df.loc[i, "home.imputed.timezoneOffset"]) + timeDiff = abs( + (df.loc[i, device + ".timezoneOffset"]) + - df.loc[i, "home.imputed.timezoneOffset"] + ) - if ((df.loc[i, device + ".timezoneOffset"] in dstRange) - & (df.loc[i, "home.imputed.timezoneOffset"] in dstRange)): + if (df.loc[i, device + ".timezoneOffset"] in dstRange) & ( + df.loc[i, "home.imputed.timezoneOffset"] in dstRange + ): # see if it is DST change day if isDSTChangeDay(df.loc[i, "date"], comparisonTz): df = addAnnotation(df, i, "dst-change-day") df.loc[i, ["est.type"]] = "DEVICE" - df.loc[i, ["est.timezoneOffset"]] = \ - df.loc[i, device + ".timezoneOffset"] - df.loc[i, ["est.timezone"]] = \ - df.loc[i, "home.imputed.timezone"] - df.loc[i, ["est.timeProcessing"]] = \ - df.loc[i, device + ".upload.imputed.timeProcessing"] + df.loc[i, ["est.timezoneOffset"]] = df.loc[ + i, device + ".timezoneOffset" + ] + df.loc[i, ["est.timezone"]] = df.loc[i, "home.imputed.timezone"] + df.loc[i, ["est.timeProcessing"]] = df.loc[ + i, device + ".upload.imputed.timeProcessing" + ] # if it is not DST change day, then mark this as uncertain else: @@ -583,14 +635,13 @@ def compareDeviceTzoToPrevDayTzo(df, sIdx, device): # procedure puts clock drift into the device.tzo, # and as a result the tzo can be off by 15, 30, # or 45 minutes. - if (((df.loc[i, device + ".timezoneOffset"] == - min(dstRange)) | - (df.loc[i, device + ".timezoneOffset"] == - max(dstRange))) & - ((df.loc[i, "home.imputed.timezoneOffset"] == - min(dstRange)) | - (df.loc[i, "home.imputed.timezoneOffset"] == - max(dstRange)))): + if ( + (df.loc[i, device + ".timezoneOffset"] == min(dstRange)) + | (df.loc[i, device + ".timezoneOffset"] == max(dstRange)) + ) & ( + (df.loc[i, "home.imputed.timezoneOffset"] == min(dstRange)) + | (df.loc[i, "home.imputed.timezoneOffset"] == max(dstRange)) + ): df.loc[i, ["est.type"]] = "UNCERTAIN" df = addAnnotation(df, i, "likely-dst-error-OR-travel") @@ -623,20 +674,18 @@ def getImputIndices(df, sIdx, hIdx): currentDayIdx = sIdx.min() tempList = pd.Series(hIdx) - currentDayIdx prevDayIdx = currentDayIdx - 1 - nextDayIdx = \ - min(currentDayIdx + min(tempList[tempList >= 0]), lastDayIdx) + nextDayIdx = min(currentDayIdx + min(tempList[tempList >= 0]), lastDayIdx) return currentDayIdx, prevDayIdx, nextDayIdx def imputeByTimezone(df, currentDay, prevDaywData, nextDaywData): - gapSize = (nextDaywData - currentDay) + gapSize = nextDaywData - currentDay if prevDaywData >= 0: - if df.loc[prevDaywData, "est.timezone"] == \ - df.loc[nextDaywData, "est.timezone"]: + if df.loc[prevDaywData, "est.timezone"] == df.loc[nextDaywData, "est.timezone"]: tz = df.loc[prevDaywData, "est.timezone"] @@ -644,8 +693,9 @@ def imputeByTimezone(df, currentDay, prevDaywData, nextDaywData): df.loc[i, ["est.timezone"]] = tz - df.loc[i, ["est.timezoneOffset"]] = \ - getTimezoneOffset(pd.to_datetime(df.loc[i, "date"]), tz) + df.loc[i, ["est.timezoneOffset"]] = getTimezoneOffset( + pd.to_datetime(df.loc[i, "date"]), tz + ) df.loc[i, ["est.type"]] = "IMPUTE" @@ -655,13 +705,16 @@ def imputeByTimezone(df, currentDay, prevDaywData, nextDaywData): # TODO: this logic should be updated to handle the edge case # where the day before and after the gap have differing TZ, but # the same TZO. In that case the gap should be marked as UNCERTAIN - elif df.loc[prevDaywData, "est.timezoneOffset"] == \ - df.loc[nextDaywData, "est.timezoneOffset"]: + elif ( + df.loc[prevDaywData, "est.timezoneOffset"] + == df.loc[nextDaywData, "est.timezoneOffset"] + ): for i in range(currentDay, nextDaywData): - df.loc[i, ["est.timezoneOffset"]] = \ - df.loc[prevDaywData, "est.timezoneOffset"] + df.loc[i, ["est.timezoneOffset"]] = df.loc[ + prevDaywData, "est.timezoneOffset" + ] df.loc[i, ["est.type"]] = "IMPUTE" @@ -689,18 +742,24 @@ def imputeTzAndTzo(cDF): if len(sIndices) > 0: lastDay = max(sIndices) - while ((sIndices.min() < max(hasTzoIndices)) & - (len(sIndices) > 0)): + while (sIndices.min() < max(hasTzoIndices)) & (len(sIndices) > 0): - currentDay, prevDayWithDay, nextDayIdx = \ - getImputIndices(cDF, sIndices, hasTzoIndices) + currentDay, prevDayWithDay, nextDayIdx = getImputIndices( + cDF, sIndices, hasTzoIndices + ) - cDF = imputeByTimezone(cDF, currentDay, - prevDayWithDay, nextDayIdx) + cDF = imputeByTimezone(cDF, currentDay, prevDayWithDay, nextDayIdx) - sIndices = cDF[((cDF["est.timezoneOffset"].isnull()) & - (~cDF["est.annotations"].str.contains( - "unable-to-impute-tzo").fillna(False)))].index + sIndices = cDF[ + ( + (cDF["est.timezoneOffset"].isnull()) + & ( + ~cDF["est.annotations"] + .str.contains("unable-to-impute-tzo") + .fillna(False) + ) + ) + ].index hasTzoIndices = cDF[cDF["est.timezoneOffset"].notnull()].index @@ -713,16 +772,20 @@ def imputeTzAndTzo(cDF): gapSize = lastDay - currentDay for i in range(currentDay, lastDay + 1): - if cDF.loc[prevDayWithDay, "est.timezoneOffset"] == \ - cDF.loc[prevDayWithDay, "home.imputed.timezoneOffset"]: + if ( + cDF.loc[prevDayWithDay, "est.timezoneOffset"] + == cDF.loc[prevDayWithDay, "home.imputed.timezoneOffset"] + ): cDF.loc[i, ["est.type"]] = "IMPUTE" - cDF.loc[i, ["est.timezoneOffset"]] = \ - cDF.loc[i, "home.imputed.timezoneOffset"] + cDF.loc[i, ["est.timezoneOffset"]] = cDF.loc[ + i, "home.imputed.timezoneOffset" + ] - cDF.loc[i, ["est.timezone"]] = \ - cDF.loc[i, "home.imputed.timezone"] + cDF.loc[i, ["est.timezone"]] = cDF.loc[ + i, "home.imputed.timezone" + ] cDF = addAnnotation(cDF, i, "gap=" + str(gapSize)) cDF.loc[i, ["est.gapSize"]] = gapSize @@ -738,31 +801,35 @@ def imputeTzAndTzo(cDF): def reorderColumns(cDF): - cDF = cDF[["pump.upload.imputed.timezoneOffset", - "pump.upload.imputed.timezone", - "pump.upload.imputed.timeProcessing", - "cgm.upload.imputed.timezoneOffset", - "cgm.upload.imputed.timezone", - "cgm.upload.imputed.timeProcessing", - "healthkit.upload.imputed.timezoneOffset", - "healthkit.upload.imputed.timezone", - "healthkit.upload.imputed.timeProcessing", - "home.imputed.timezoneOffset", - "home.imputed.timezone", - "home.imputed.timeProcessing", - "upload.timezoneOffset", - "upload.timezone", - "upload.timeProcessing", - "cgm.timezoneOffset", - "pump.timezoneOffset", - "date", - "est.type", - "est.timezoneOffset", - "est.timezone", - "est.timeProcessing", - "est.annotations", - "est.gapSize", - "est.version"]] + cDF = cDF[ + [ + "pump.upload.imputed.timezoneOffset", + "pump.upload.imputed.timezone", + "pump.upload.imputed.timeProcessing", + "cgm.upload.imputed.timezoneOffset", + "cgm.upload.imputed.timezone", + "cgm.upload.imputed.timeProcessing", + "healthkit.upload.imputed.timezoneOffset", + "healthkit.upload.imputed.timezone", + "healthkit.upload.imputed.timeProcessing", + "home.imputed.timezoneOffset", + "home.imputed.timezone", + "home.imputed.timeProcessing", + "upload.timezoneOffset", + "upload.timezone", + "upload.timeProcessing", + "cgm.timezoneOffset", + "pump.timezoneOffset", + "date", + "est.type", + "est.timezoneOffset", + "est.timezone", + "est.timeProcessing", + "est.annotations", + "est.gapSize", + "est.version", + ] + ] return cDF @@ -770,7 +837,7 @@ def readXlsxData(xlsxPathAndFileName): # load xlsx df = pd.read_excel(xlsxPathAndFileName, sheet_name=None, ignore_index=True) cdf = pd.concat(df.values(), ignore_index=True) - cdf = cdf.set_index('jsonRowIndex') + cdf = cdf.set_index("jsonRowIndex") return cdf @@ -800,9 +867,13 @@ def checkInputFile(inputFile): def getListOfDSTChangeDays(cDF): # get a list of DST change days for the home time zone - dstChangeDays = \ - cDF[abs(cDF["home.imputed.timezoneOffset"] - - cDF["home.imputed.timezoneOffset"].shift(-1)) > 0].date + dstChangeDays = cDF[ + abs( + cDF["home.imputed.timezoneOffset"] + - cDF["home.imputed.timezoneOffset"].shift(-1) + ) + > 0 + ].date return dstChangeDays @@ -814,21 +885,24 @@ def correctEstimatesAroundDst(df, cDF): # loop through the df within 2 days of a daylight savings time change for d in dstChangeDays: - dstIndex = df[(df.date > (d + timedelta(days=-2))) & - (df.date < (d + timedelta(days=2)))].index + dstIndex = df[ + (df.date > (d + timedelta(days=-2))) & (df.date < (d + timedelta(days=2))) + ].index for dIdx in dstIndex: if pd.notnull(df.loc[dIdx, "est.timezone"]): tz = timezone(df.loc[dIdx, "est.timezone"]) tzRange = getRangeOfTZOsForTimezone(str(tz)) - minHoursToLocal = min(tzRange)/60 - tzoNum = int(tz.localize(df.loc[dIdx, "utcTime"] + - timedelta(hours=minHoursToLocal)).strftime("%z")) + minHoursToLocal = min(tzRange) / 60 + tzoNum = int( + tz.localize( + df.loc[dIdx, "utcTime"] + timedelta(hours=minHoursToLocal) + ).strftime("%z") + ) tzoHours = np.floor(tzoNum / 100) tzoMinutes = round((tzoNum / 100 - tzoHours) * 100, 0) tzoSign = np.sign(tzoHours) tzo = int((tzoHours * 60) + (tzoMinutes * tzoSign)) - localTime = \ - df.loc[dIdx, "utcTime"] + pd.to_timedelta(tzo, unit="m") + localTime = df.loc[dIdx, "utcTime"] + pd.to_timedelta(tzo, unit="m") df.loc[dIdx, ["est.localTime"]] = localTime df.loc[dIdx, ["est.timezoneOffset"]] = tzo return df @@ -836,8 +910,9 @@ def correctEstimatesAroundDst(df, cDF): def applyLocalTimeEstimates(df, cDF): df = pd.merge(df, cDF, how="left", on="date") - df["est.localTime"] = \ - df["utcTime"] + pd.to_timedelta(df["est.timezoneOffset"], unit="m") + df["est.localTime"] = df["utcTime"] + pd.to_timedelta( + df["est.timezoneOffset"], unit="m" + ) df = correctEstimatesAroundDst(df, cDF) @@ -850,11 +925,9 @@ def applyLocalTimeEstimates(df, cDF): data, fileName = checkInputFile(args.inputFilePathAndName) if os.path.isfile(args.timezoneAliasesFilePathAndName): - timezoneAliases = pd.read_csv(args.timezoneAliasesFilePathAndName, - low_memory=False) + timezoneAliases = pd.read_csv(args.timezoneAliasesFilePathAndName, low_memory=False) else: - sys.exit("{0} is not a valid file".format( - args.timezoneAliasesFilePathAndName)) + sys.exit("{0} is not a valid file".format(args.timezoneAliasesFilePathAndName)) if not os.path.isdir(args.outputPath): os.makedirs(args.outputPath) @@ -901,8 +974,7 @@ def applyLocalTimeEstimates(df, cDF): # day series for interpolated pump, non-hk-cgm, and healthkit uploads for deviceType in ["pump", "cgm", "healthkit"]: tempUploadData = uploadData[uploadData.deviceType == deviceType] - cDays = imputeUploadRecords(tempUploadData, cDays, - deviceType + ".upload.imputed") + cDays = imputeUploadRecords(tempUploadData, cDays, deviceType + ".upload.imputed") # add a home timezone that also accounts for daylight savings time changes cDays = addHomeTimezone(data, cDays) @@ -944,5 +1016,6 @@ def applyLocalTimeEstimates(df, cDF): else: daySeriesFileName = fileName if pd.notnull(args.daySeriesOutputPath): - cDays.to_csv(os.path.join(args.daySeriesOutputPath, - daySeriesFileName + "-daySeries.csv")) + cDays.to_csv( + os.path.join(args.daySeriesOutputPath, daySeriesFileName + "-daySeries.csv") + ) diff --git a/projects/bigdata-processing-pipeline/estimate-local-time/estimateLocalTime-batchProcess.py b/projects/bigdata-processing-pipeline/estimate-local-time/estimateLocalTime-batchProcess.py index 92d64818..8b50e850 100644 --- a/projects/bigdata-processing-pipeline/estimate-local-time/estimateLocalTime-batchProcess.py +++ b/projects/bigdata-processing-pipeline/estimate-local-time/estimateLocalTime-batchProcess.py @@ -19,61 +19,78 @@ import subprocess as sub import time from multiprocessing import Pool + # load tidals package locally if it does not exist globally import importlib + if importlib.util.find_spec("tidals") is None: - tidalsPath = os.path.abspath(os.path.join(os.path.dirname(__file__), - "..", "..", "tidepool-analysis-tools")) + tidalsPath = os.path.abspath( + os.path.join(os.path.dirname(__file__), "..", "..", "tidepool-analysis-tools") + ) if tidalsPath not in sys.path: sys.path.insert(0, tidalsPath) import tidals as td + startTime = time.time() print("starting at " + dt.datetime.now().strftime("%Y-%m-%d %H:%M:%S")) # %% USER INPUTS -codeDescription = "A batch processing or wrapper script to run the estimate-local-time.py" +codeDescription = ( + "A batch processing or wrapper script to run the estimate-local-time.py" +) parser = argparse.ArgumentParser(description=codeDescription) -parser.add_argument("-d", - "--date-stamp", - dest="dateStamp", - default=dt.datetime.now().strftime("%Y-%m-%d"), - help="date in '%Y-%m-%d' format needed to call unique " + - "donor list (e.g., PHI-2018-03-02-uniqueDonorList)") - -parser.add_argument("--start-date", - dest="startDate", - default="2010-01-01", - help="filter data by startDate and endDate") - -parser.add_argument("-ow", - "--overWrite", - dest="overWrite", - default=False, - help="Specify if you want to overwrite a file that has already" + \ - "been processed, False if NO, True if YES") +parser.add_argument( + "-d", + "--date-stamp", + dest="dateStamp", + default=dt.datetime.now().strftime("%Y-%m-%d"), + help="date in '%Y-%m-%d' format needed to call unique " + + "donor list (e.g., PHI-2018-03-02-uniqueDonorList)", +) + +parser.add_argument( + "--start-date", + dest="startDate", + default="2010-01-01", + help="filter data by startDate and endDate", +) + +parser.add_argument( + "-ow", + "--overWrite", + dest="overWrite", + default=False, + help="Specify if you want to overwrite a file that has already" + + "been processed, False if NO, True if YES", +) args = parser.parse_args() # %% SET UP PATHS dataPath = os.path.abspath( - os.path.join(os.path.dirname(__file__), - "..", "data", - "PHI-" + args.dateStamp + "-donor-data")) + os.path.join( + os.path.dirname(__file__), "..", "data", "PHI-" + args.dateStamp + "-donor-data" + ) +) donorInfoPath = os.path.join(dataPath, "PHI-" + args.dateStamp + "-uniqueDonorList.csv") donors = td.load.load_csv(donorInfoPath) jsonDataPath = os.path.join(dataPath, "PHI-" + args.dateStamp + "-donorJsonData") -localTimeEstimateDataPath = os.path.join(dataPath, "PHI-" + args.dateStamp + "-localTime") +localTimeEstimateDataPath = os.path.join( + dataPath, "PHI-" + args.dateStamp + "-localTime" +) # create localTimeEstimateDataPath folders if not os.path.exists(localTimeEstimateDataPath): os.makedirs(localTimeEstimateDataPath) -localTimeEstimateDaySeriesPath = os.path.join(dataPath, args.dateStamp + "-localTime-daySeries") +localTimeEstimateDaySeriesPath = os.path.join( + dataPath, args.dateStamp + "-localTime-daySeries" +) # create localTimeEstimateDataPath folders if not os.path.exists(localTimeEstimateDaySeriesPath): @@ -87,31 +104,55 @@ def run_estimate_local_time(dIndex): jsonFileName = os.path.join(jsonDataPath, fileName + ".json") fileSize = os.stat(jsonFileName).st_size if fileSize > 1000: - localTimeEstimateDataPathAndName = \ - os.path.join(localTimeEstimateDataPath, fileName + ".csv") + localTimeEstimateDataPathAndName = os.path.join( + localTimeEstimateDataPath, fileName + ".csv" + ) # if estimate has not yet been made OR if the estimate has been made, but overWrite = True - if ((not os.path.exists(localTimeEstimateDataPathAndName)) | - ((os.path.exists(localTimeEstimateDataPathAndName)) & (args.overWrite))): - - print("starting with index=" + str(dIndex), - "file size is: " + str(round(fileSize/1E6, 1)) + "MB") + if (not os.path.exists(localTimeEstimateDataPathAndName)) | ( + (os.path.exists(localTimeEstimateDataPathAndName)) & (args.overWrite) + ): + + print( + "starting with index=" + str(dIndex), + "file size is: " + str(round(fileSize / 1e6, 1)) + "MB", + ) # local time estimate - p = sub.Popen(["python", "estimate-local-time.py", - "-i", jsonFileName, - "-o", localTimeEstimateDataPath, - "--day-series-output-path", localTimeEstimateDaySeriesPath, - "--start-date", args.startDate], stdout=sub.PIPE, stderr=sub.PIPE) + p = sub.Popen( + [ + "python", + "estimate-local-time.py", + "-i", + jsonFileName, + "-o", + localTimeEstimateDataPath, + "--day-series-output-path", + localTimeEstimateDaySeriesPath, + "--start-date", + args.startDate, + ], + stdout=sub.PIPE, + stderr=sub.PIPE, + ) output, errors = p.communicate() output = output.decode("utf-8") errors = errors.decode("utf-8") - print("finished with index=" + str(dIndex), - " output: " + output, "errors: " + errors) + print( + "finished with index=" + str(dIndex), + " output: " + output, + "errors: " + errors, + ) else: print("skipped index=" + str(dIndex) + " because is was already processed") else: - print("skipped index=" + str(dIndex) + " because file size is: " + str(fileSize) + "Bytes") + print( + "skipped index=" + + str(dIndex) + + " because file size is: " + + str(fileSize) + + "Bytes" + ) return diff --git a/projects/bigdata-processing-pipeline/get-donor-data/accept-new-donors.py b/projects/bigdata-processing-pipeline/get-donor-data/accept-new-donors.py index a578f457..82568443 100644 --- a/projects/bigdata-processing-pipeline/get-donor-data/accept-new-donors.py +++ b/projects/bigdata-processing-pipeline/get-donor-data/accept-new-donors.py @@ -20,41 +20,44 @@ import requests import json import argparse -envPath = os.path.abspath( - os.path.join( - os.path.dirname(__file__), "..")) + +envPath = os.path.abspath(os.path.join(os.path.dirname(__file__), "..")) if envPath not in sys.path: sys.path.insert(0, envPath) import environmentalVariables # %% user inputs (choices to be made in order to run the code) -codeDescription = "Download a list of donors for each of the Tidepool" + \ - "accounts defined in .env" +codeDescription = ( + "Download a list of donors for each of the Tidepool" + "accounts defined in .env" +) parser = argparse.ArgumentParser(description=codeDescription) -parser.add_argument("-d", - "--date-stamp", - dest="dateStamp", - default=dt.datetime.now().strftime("%Y-%m-%d"), - help="date, in '%Y-%m-%d' format, of the date when " + - "donors were accepted") - -parser.add_argument("-i", - "--input-donor-groups", - dest="donorGroupsCsvFile", - default="2018-09-04-donor-groups.csv", - help="a .csv file that contains a column heading " + - "'donorGroups' and a list of donor groups") - -parser.add_argument("-o", - "--output-data-path", - dest="dataPath", - default=os.path.abspath( - os.path.join( - os.path.dirname(__file__), "..", "data")), - help="the output path where the data is stored") +parser.add_argument( + "-d", + "--date-stamp", + dest="dateStamp", + default=dt.datetime.now().strftime("%Y-%m-%d"), + help="date, in '%Y-%m-%d' format, of the date when " + "donors were accepted", +) + +parser.add_argument( + "-i", + "--input-donor-groups", + dest="donorGroupsCsvFile", + default="2018-09-04-donor-groups.csv", + help="a .csv file that contains a column heading " + + "'donorGroups' and a list of donor groups", +) + +parser.add_argument( + "-o", + "--output-data-path", + dest="dataPath", + default=os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "data")), + help="the output path where the data is stored", +) args = parser.parse_args() @@ -67,10 +70,9 @@ # %% define global variables donorGroupPath = os.path.join(args.dataPath, args.donorGroupsCsvFile) -donorGroups = pd.read_csv(donorGroupPath, - header=0, - names=["donorGroups"], - low_memory=False) +donorGroups = pd.read_csv( + donorGroupPath, header=0, names=["donorGroups"], low_memory=False +) donorGroups[args.dateStamp] = np.nan @@ -84,8 +86,7 @@ def get_secrets(donorGroup): if donorGroup == "bigdata": donorGroup = "" - email, password = \ - environmentalVariables.get_environmental_variables(donorGroup) + email, password = environmentalVariables.get_environmental_variables(donorGroup) return email, password @@ -95,33 +96,35 @@ def accept_new_donor(email, password): url1 = "https://api.tidepool.org/auth/login" myResponse = requests.post(url1, auth=(email, password)) - if(myResponse.ok): + if myResponse.ok: xtoken = myResponse.headers["x-tidepool-session-token"] userid = json.loads(myResponse.content.decode())["userid"] url2 = "https://api.tidepool.org/confirm/invitations/" + userid headers = { "x-tidepool-session-token": xtoken, - "Content-Type": "application/json" + "Content-Type": "application/json", } myResponse2 = requests.get(url2, headers=headers) - if(myResponse2.ok): + if myResponse2.ok: usersData = json.loads(myResponse2.content.decode()) for i in range(0, len(usersData)): shareKey = usersData[i]["key"] shareID = usersData[i]["creatorId"] - payload = { - "key": shareKey - } + payload = {"key": shareKey} - url3 = "https://api.tidepool.org/confirm/accept/invite/" + \ - userid + "/" + shareID + url3 = ( + "https://api.tidepool.org/confirm/accept/invite/" + + userid + + "/" + + shareID + ) myResponse3 = requests.put(url3, headers=headers, json=payload) - if(myResponse3.ok): + if myResponse3.ok: nAccepted = nAccepted + 1 else: print(email, "ERROR", myResponse3.status_code) @@ -154,5 +157,6 @@ def accept_new_donor(email, password): # %% save output -donorGroups.to_csv(os.path.join(newDonorFolder, args.dateStamp + "-donorCounts.csv"), - index=False) +donorGroups.to_csv( + os.path.join(newDonorFolder, args.dateStamp + "-donorCounts.csv"), index=False +) diff --git a/projects/bigdata-processing-pipeline/get-donor-data/get-all-col-headings.py b/projects/bigdata-processing-pipeline/get-donor-data/get-all-col-headings.py index 98256eb1..6d6df7f5 100644 --- a/projects/bigdata-processing-pipeline/get-donor-data/get-all-col-headings.py +++ b/projects/bigdata-processing-pipeline/get-donor-data/get-all-col-headings.py @@ -18,11 +18,14 @@ import datetime as dt import argparse import time + # load tidals package locally if it does not exist globally import importlib + if importlib.util.find_spec("tidals") is None: - tidalsPath = os.path.abspath(os.path.join(os.path.dirname(__file__), - "..", "..", "tidepool-analysis-tools")) + tidalsPath = os.path.abspath( + os.path.join(os.path.dirname(__file__), "..", "..", "tidepool-analysis-tools") + ) if tidalsPath not in sys.path: sys.path.insert(0, tidalsPath) import tidals as td @@ -34,22 +37,29 @@ # %% USER INPUTS -codeDescription = "A batch processing or wrapper script to get a list of all column headings" +codeDescription = ( + "A batch processing or wrapper script to get a list of all column headings" +) parser = argparse.ArgumentParser(description=codeDescription) -parser.add_argument("-d", - "--date-stamp", - dest="dateStamp", - default=dt.datetime.now().strftime("%Y-%m-%d"), - help="date in '%Y-%m-%d' format needed to call unique " + - "donor list (e.g., PHI-2018-03-02-uniqueDonorList)") +parser.add_argument( + "-d", + "--date-stamp", + dest="dateStamp", + default=dt.datetime.now().strftime("%Y-%m-%d"), + help="date in '%Y-%m-%d' format needed to call unique " + + "donor list (e.g., PHI-2018-03-02-uniqueDonorList)", +) args = parser.parse_args() # %% SET UP PATHS -dataPath = os.path.abspath(os.path.join(os.path.dirname(__file__), - "..", "data", "PHI-" + args.dateStamp + "-donor-data")) +dataPath = os.path.abspath( + os.path.join( + os.path.dirname(__file__), "..", "data", "PHI-" + args.dateStamp + "-donor-data" + ) +) donorInfoPath = os.path.join(dataPath, "PHI-" + args.dateStamp + "-uniqueDonorList.csv") donors = td.load.load_csv(donorInfoPath) diff --git a/projects/bigdata-processing-pipeline/get-donor-data/get-donor-json-files.py b/projects/bigdata-processing-pipeline/get-donor-data/get-donor-json-files.py index 74741fbb..315ca3c3 100644 --- a/projects/bigdata-processing-pipeline/get-donor-data/get-donor-json-files.py +++ b/projects/bigdata-processing-pipeline/get-donor-data/get-donor-json-files.py @@ -23,10 +23,12 @@ import json from multiprocessing import Pool import time + envPath = os.path.abspath(os.path.join(os.path.dirname(__file__), "..")) if envPath not in sys.path: sys.path.insert(0, envPath) import environmentalVariables + startTime = time.time() print("starting at " + dt.datetime.now().strftime("%Y-%m-%d %H:%M:%S")) @@ -37,19 +39,19 @@ def get_user_data(email, password, userid, outputFilePathName): url1 = "https://api.tidepool.org/auth/login" myResponse = requests.post(url1, auth=(email, password)) - if(myResponse.ok): + if myResponse.ok: xtoken = myResponse.headers["x-tidepool-session-token"] url2 = "https://api.tidepool.org/data/" + userid headers = { "x-tidepool-session-token": xtoken, - "Content-Type": "application/json" - } + "Content-Type": "application/json", + } myResponse2 = requests.get(url2, headers=headers) - if(myResponse2.ok): + if myResponse2.ok: usersData = json.loads(myResponse2.content.decode()) - with open(outputFilePathName, 'w') as outfile: + with open(outputFilePathName, "w") as outfile: json.dump(usersData, outfile) else: @@ -65,37 +67,51 @@ def get_user_data(email, password, userid, outputFilePathName): parser = argparse.ArgumentParser(description=codeDescription) -parser.add_argument("-d", - "--date-stamp", - dest="dateStamp", - default=dt.datetime.now().strftime("%Y-%m-%d"), - help="date in '%Y-%m-%d' format of unique donor list" + - "(e.g., PHI-2018-03-02-uniqueDonorList)") +parser.add_argument( + "-d", + "--date-stamp", + dest="dateStamp", + default=dt.datetime.now().strftime("%Y-%m-%d"), + help="date in '%Y-%m-%d' format of unique donor list" + + "(e.g., PHI-2018-03-02-uniqueDonorList)", +) args = parser.parse_args() # create a datestamp of when the data is pulled, and add PHI bc data has PHI phiDateStamp = "PHI-" + args.dateStamp -parser.add_argument("-i", - "--input-data-path", - dest="donorListPath", - default=os.path.abspath( - os.path.join( - os.path.dirname(__file__), "..", "data", - phiDateStamp + "-donor-data", - phiDateStamp + "-uniqueDonorList.csv")), - help="csv file that contains the a list of donors") - -parser.add_argument("-o", - "--output-data-path", - dest="donorJsonDataFolder", - default=os.path.abspath( - os.path.join( - os.path.dirname(__file__), "..", "data", - phiDateStamp + "-donor-data", - phiDateStamp + "-donorJsonData")), - help="the output path where the data is stored") +parser.add_argument( + "-i", + "--input-data-path", + dest="donorListPath", + default=os.path.abspath( + os.path.join( + os.path.dirname(__file__), + "..", + "data", + phiDateStamp + "-donor-data", + phiDateStamp + "-uniqueDonorList.csv", + ) + ), + help="csv file that contains the a list of donors", +) + +parser.add_argument( + "-o", + "--output-data-path", + dest="donorJsonDataFolder", + default=os.path.abspath( + os.path.join( + os.path.dirname(__file__), + "..", + "data", + phiDateStamp + "-donor-data", + phiDateStamp + "-donorJsonData", + ) + ), + help="the output path where the data is stored", +) args = parser.parse_args() @@ -108,19 +124,20 @@ def get_user_data(email, password, userid, outputFilePathName): os.makedirs(args.donorJsonDataFolder) # load in list of unique donors -uniqueDonors = pd.read_csv(args.donorListPath, - index_col="dIndex", - low_memory=False) +uniqueDonors = pd.read_csv(args.donorListPath, index_col="dIndex", low_memory=False) # %% pull the json files for all of the unique donors blankDF = pd.DataFrame() + + def get_json_file(dIndex): userID = uniqueDonors.userID[dIndex] donorGroup = uniqueDonors.donorGroup[dIndex] - outputFilePathName = os.path.join(args.donorJsonDataFolder, - "PHI-" + userID + ".json") + outputFilePathName = os.path.join( + args.donorJsonDataFolder, "PHI-" + userID + ".json" + ) # if the json file already exists, do NOT pull it again if not os.path.exists(outputFilePathName): @@ -133,8 +150,7 @@ def get_json_file(dIndex): donorGroup = "" # get environmental variables - email, password = \ - environmentalVariables.get_environmental_variables(donorGroup) + email, password = environmentalVariables.get_environmental_variables(donorGroup) # get json data get_user_data(email, password, userID, outputFilePathName) diff --git a/projects/bigdata-processing-pipeline/get-donor-data/get-donor-list.py b/projects/bigdata-processing-pipeline/get-donor-data/get-donor-list.py index 1282c1f0..c8a84a5c 100644 --- a/projects/bigdata-processing-pipeline/get-donor-data/get-donor-list.py +++ b/projects/bigdata-processing-pipeline/get-donor-data/get-donor-list.py @@ -22,47 +22,52 @@ import requests import json import argparse -envPath = os.path.abspath( - os.path.join( - os.path.dirname(__file__), "..")) + +envPath = os.path.abspath(os.path.join(os.path.dirname(__file__), "..")) if envPath not in sys.path: sys.path.insert(0, envPath) import environmentalVariables # %% user inputs (choices to be made in order to run the code) -codeDescription = "Download a list of donors for each of the Tidepool" + \ - "accounts defined in .env" +codeDescription = ( + "Download a list of donors for each of the Tidepool" + "accounts defined in .env" +) parser = argparse.ArgumentParser(description=codeDescription) -parser.add_argument("-d", - "--date-stamp", - dest="dateStamp", - default=dt.datetime.now().strftime("%Y-%m-%d"), - help="date, in '%Y-%m-%d' format, of the date when " + - "donors were accepted") - -parser.add_argument("-i", - "--input-donor-groups", - dest="donorGroupsCsvFile", - default="2018-09-04-donor-groups.csv", - help="a .csv file that contains a column heading " + - "'donorGroups' and a list of donor groups") - -parser.add_argument("-o", - "--output-data-path", - dest="dataPath", - default=os.path.abspath( - os.path.join( - os.path.dirname(__file__), "..", "data")), - help="the output path where the data is stored") - -parser.add_argument("--ignore-accounts", - dest="ignoreAccountsCsvFile", - default="PHI-2018-02-28-prod-accounts-to-be-ignored.csv", - help="a .csv file that contains a column heading " + - "'userID' and a list of userIDs to ignore") +parser.add_argument( + "-d", + "--date-stamp", + dest="dateStamp", + default=dt.datetime.now().strftime("%Y-%m-%d"), + help="date, in '%Y-%m-%d' format, of the date when " + "donors were accepted", +) + +parser.add_argument( + "-i", + "--input-donor-groups", + dest="donorGroupsCsvFile", + default="2018-09-04-donor-groups.csv", + help="a .csv file that contains a column heading " + + "'donorGroups' and a list of donor groups", +) + +parser.add_argument( + "-o", + "--output-data-path", + dest="dataPath", + default=os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "data")), + help="the output path where the data is stored", +) + +parser.add_argument( + "--ignore-accounts", + dest="ignoreAccountsCsvFile", + default="PHI-2018-02-28-prod-accounts-to-be-ignored.csv", + help="a .csv file that contains a column heading " + + "'userID' and a list of userIDs to ignore", +) args = parser.parse_args() @@ -76,10 +81,9 @@ ignoreAccountsPath = os.path.join(args.dataPath, args.ignoreAccountsCsvFile) donorGroupPath = os.path.join(args.dataPath, args.donorGroupsCsvFile) -donorGroups = pd.read_csv(donorGroupPath, - header=0, - names=["donorGroups"], - low_memory=False) +donorGroups = pd.read_csv( + donorGroupPath, header=0, names=["donorGroups"], low_memory=False +) donorGroups = donorGroups.donorGroups @@ -90,10 +94,18 @@ phiDateStamp = "PHI-" + args.dateStamp -donorMetadataColumns = ["userID", "name", "email", - "bDay", "dDay", "diagnosisType", - "targetDevices", "targetTimezone", - "termsAccepted", "hashID"] +donorMetadataColumns = [ + "userID", + "name", + "email", + "bDay", + "dDay", + "diagnosisType", + "targetDevices", + "targetTimezone", + "termsAccepted", + "hashID", +] alldonorMetadataList = pd.DataFrame(columns=donorMetadataColumns) @@ -106,8 +118,7 @@ if not os.path.exists(donorListFolder): os.makedirs(donorListFolder) -uniqueDonorPath = os.path.join(donorFolder, - phiDateStamp + "-uniqueDonorList.csv") +uniqueDonorPath = os.path.join(donorFolder, phiDateStamp + "-uniqueDonorList.csv") # %% define functions @@ -116,17 +127,17 @@ def get_donor_info(email, password, donorMetadataColumns): url1 = "https://api.tidepool.org/auth/login" myResponse = requests.post(url1, auth=(email, password)) - if(myResponse.ok): + if myResponse.ok: xtoken = myResponse.headers["x-tidepool-session-token"] userid = json.loads(myResponse.content.decode())["userid"] url2 = "https://api.tidepool.org/metadata/users/" + userid + "/users" headers = { "x-tidepool-session-token": xtoken, - "Content-Type": "application/json" + "Content-Type": "application/json", } myResponse2 = requests.get(url2, headers=headers) - if(myResponse2.ok): + if myResponse2.ok: usersData = json.loads(myResponse2.content.decode()) @@ -152,7 +163,9 @@ def get_donor_info(email, password, donorMetadataColumns): except Exception: targetDevices = np.nan try: - targetTimezone = usersData[i]["profile"]["patient"]["targetTimezone"] + targetTimezone = usersData[i]["profile"]["patient"][ + "targetTimezone" + ] except Exception: targetTimezone = np.nan try: @@ -164,18 +177,25 @@ def get_donor_info(email, password, donorMetadataColumns): hash_user = hashlib.sha256(usr_string.encode()) hashID = hash_user.hexdigest() donorMetaData = donorMetaData.append( - pd.DataFrame([[userID, - userName, - userEmail, - bDay, - dDay, - diagnosisType, - targetDevices, - targetTimezone, - termsAccepted, - hashID]], - columns=donorMetadataColumns), - ignore_index=True) + pd.DataFrame( + [ + [ + userID, + userName, + userEmail, + bDay, + dDay, + diagnosisType, + targetDevices, + targetTimezone, + termsAccepted, + hashID, + ] + ], + columns=donorMetadataColumns, + ), + ignore_index=True, + ) else: print(donorGroup, "ERROR", myResponse2.status_code) sys.exit("Error with" + donorGroup + ":" + str(myResponse2.status_code)) @@ -194,8 +214,7 @@ def get_donor_info(email, password, donorMetadataColumns): donorGroup = "" # get environmental variables - email, password = \ - environmentalVariables.get_environmental_variables(donorGroup) + email, password = environmentalVariables.get_environmental_variables(donorGroup) # load in bdays and ddays and append to all donor list donorMetadataList = get_donor_info(email, password, donorMetadataColumns) @@ -204,18 +223,17 @@ def get_donor_info(email, password, donorMetadataColumns): print("BIGDATA_" + donorGroup, "complete") donorMetadataList["donorGroup"] = donorGroup - alldonorMetadataList = alldonorMetadataList.append(donorMetadataList, - ignore_index=True, - sort=False) + alldonorMetadataList = alldonorMetadataList.append( + donorMetadataList, ignore_index=True, sort=False + ) # %% save output -alldonorMetadataList.sort_values(by=['name', 'donorGroup'], inplace=True) +alldonorMetadataList.sort_values(by=["name", "donorGroup"], inplace=True) uniqueDonors = alldonorMetadataList.loc[~alldonorMetadataList["userID"].duplicated()] # cross reference the QA users here and DROP them ignoreAccounts = pd.read_csv(ignoreAccountsPath, low_memory=False) -uniqueIgnoreAccounts = \ - ignoreAccounts[ignoreAccounts.Userid.notnull()].Userid.unique() +uniqueIgnoreAccounts = ignoreAccounts[ignoreAccounts.Userid.notnull()].Userid.unique() for ignoreAccount in uniqueIgnoreAccounts: uniqueDonors = uniqueDonors[uniqueDonors.userID != ignoreAccount] @@ -223,14 +241,18 @@ def get_donor_info(email, password, donorMetadataColumns): uniqueDonors = uniqueDonors.reset_index(drop=True) uniqueDonors.index.name = "dIndex" -print("There are", - len(uniqueDonors), - "unique donors, of the", - len(alldonorMetadataList), - "records") - -print("The total number of missing datapoints:", - "\n", - uniqueDonors[["bDay", "dDay"]].isnull().sum()) +print( + "There are", + len(uniqueDonors), + "unique donors, of the", + len(alldonorMetadataList), + "records", +) + +print( + "The total number of missing datapoints:", + "\n", + uniqueDonors[["bDay", "dDay"]].isnull().sum(), +) uniqueDonors.to_csv(uniqueDonorPath) diff --git a/projects/bigdata-processing-pipeline/qualify-data/qualify-data.py b/projects/bigdata-processing-pipeline/qualify-data/qualify-data.py index 9ee193e5..8e803e83 100644 --- a/projects/bigdata-processing-pipeline/qualify-data/qualify-data.py +++ b/projects/bigdata-processing-pipeline/qualify-data/qualify-data.py @@ -24,12 +24,12 @@ import pandas as pd import datetime as dt import importlib + # load tidals package locally if it does not exist globally if importlib.util.find_spec("tidals") is None: tidalsPath = os.path.abspath( - os.path.join( - os.path.dirname(__file__), - "..", "..", "tidepool-analysis-tools")) + os.path.join(os.path.dirname(__file__), "..", "..", "tidepool-analysis-tools") + ) if tidalsPath not in sys.path: sys.path.insert(0, tidalsPath) import tidals as td @@ -40,47 +40,54 @@ parser = argparse.ArgumentParser(description=codeDescription) -parser.add_argument("-d", - "--date-stamp", - dest="dateStamp", - default=dt.datetime.now().strftime("%Y-%m-%d"), - help="date in '%Y-%m-%d' format needed to call unique " + - "donor list (e.g., PHI-2018-03-02-uniqueDonorList)") - -parser.add_argument("-o", - "--output-data-path", - dest="dataPath", - default=os.path.abspath( - os.path.join( - os.path.dirname(__file__), "..", "data")), - help="the output path where the data is stored") - -parser.add_argument("-s", - "--start-index", - dest="startIndex", - default=0, - help="donor index (integer) to start at") - -parser.add_argument("-e", - "--end-index", - dest="endIndex", - default=-1, - help="donor index (integer) to end at," + - "-1 will result in 1 file if startIndex != 0," + - "and will default to number of unique donors" + - "if startIndex = 0, or endIndex = -2") - -parser.add_argument("-q", - "--qualification-criteria", - dest="qualificationCriteria", - default=os.path.abspath( - os.path.join( - os.path.dirname(__file__), - "tidepool-qualification-criteria.json")), - type=argparse.FileType('r'), - help="JSON file to be processed, see " + - "tidepool-qualification-critier.json " + - "for a list of required fields") +parser.add_argument( + "-d", + "--date-stamp", + dest="dateStamp", + default=dt.datetime.now().strftime("%Y-%m-%d"), + help="date in '%Y-%m-%d' format needed to call unique " + + "donor list (e.g., PHI-2018-03-02-uniqueDonorList)", +) + +parser.add_argument( + "-o", + "--output-data-path", + dest="dataPath", + default=os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "data")), + help="the output path where the data is stored", +) + +parser.add_argument( + "-s", + "--start-index", + dest="startIndex", + default=0, + help="donor index (integer) to start at", +) + +parser.add_argument( + "-e", + "--end-index", + dest="endIndex", + default=-1, + help="donor index (integer) to end at," + + "-1 will result in 1 file if startIndex != 0," + + "and will default to number of unique donors" + + "if startIndex = 0, or endIndex = -2", +) + +parser.add_argument( + "-q", + "--qualification-criteria", + dest="qualificationCriteria", + default=os.path.abspath( + os.path.join(os.path.dirname(__file__), "tidepool-qualification-criteria.json") + ), + type=argparse.FileType("r"), + help="JSON file to be processed, see " + + "tidepool-qualification-critier.json " + + "for a list of required fields", +) args = parser.parse_args() @@ -109,10 +116,12 @@ def removeNegativeDurations(df): def addUploadDate(df): - uploadTimes = pd.DataFrame(df[df.type == "upload"].groupby("uploadId").time.describe()["top"]) + uploadTimes = pd.DataFrame( + df[df.type == "upload"].groupby("uploadId").time.describe()["top"] + ) uploadTimes.reset_index(inplace=True) uploadTimes.rename(columns={"top": "uploadTime"}, inplace=True) - df = pd.merge(df, uploadTimes, how='left', on='uploadId') + df = pd.merge(df, uploadTimes, how="left", on="uploadId") return df @@ -137,18 +146,20 @@ def getClosedLoopDays(groupedData, qualCriteria, metadata): tbDataFrame = tbDataFrame.drop(["time"], axis=1) tbDataFrame["basal.temp.count"] = 1 nTempBasalsPerDay = tbDataFrame.resample("D").sum() - closedLoopDF = pd.DataFrame(nTempBasalsPerDay, - index=nTempBasalsPerDay.index.date) + closedLoopDF = pd.DataFrame( + nTempBasalsPerDay, index=nTempBasalsPerDay.index.date + ) closedLoopDF["date"] = nTempBasalsPerDay.index.date - closedLoopDF["basal.closedLoopDays"] = \ - closedLoopDF["basal.temp.count"] >= nTB + closedLoopDF["basal.closedLoopDays"] = closedLoopDF["basal.temp.count"] >= nTB nClosedLoopDays = closedLoopDF["basal.closedLoopDays"].sum() # get the number of days with 670g basalData["date"] = pd.to_datetime(basalData.time).dt.date bdGroup = basalData.groupby("date") topPump = bdGroup.deviceId.describe()["top"] - med670g = pd.DataFrame(topPump.str.contains("1780")).rename(columns={"top":"670g"}) + med670g = pd.DataFrame(topPump.str.contains("1780")).rename( + columns={"top": "670g"} + ) med670g.reset_index(inplace=True) n670gDays = med670g["670g"].sum() @@ -167,8 +178,7 @@ def getClosedLoopDays(groupedData, qualCriteria, metadata): def removeInvalidCgmValues(df): nBefore = len(df) # remove values < 38 and > 402 mg/dL - df = df.query("(value >= 2.109284236597303) and" + - "(value <= 22.314006924003046)") + df = df.query("(value >= 2.109284236597303) and" + "(value <= 22.314006924003046)") nRemoved = nBefore - len(df) return df, nRemoved @@ -185,16 +195,18 @@ def removeDuplicates(df, criteriaDF): def removeCgmDuplicates(df, timeCriterion): if timeCriterion in df: - df.sort_values(by=[timeCriterion, "uploadTime"], - ascending=[False, False], - inplace=True) + df.sort_values( + by=[timeCriterion, "uploadTime"], ascending=[False, False], inplace=True + ) dfIsNull = df[df[timeCriterion].isnull()] dfNotNull = df[df[timeCriterion].notnull()] - dfNotNull, nDuplicatesRemoved = removeDuplicates(dfNotNull, [timeCriterion, "value"]) + dfNotNull, nDuplicatesRemoved = removeDuplicates( + dfNotNull, [timeCriterion, "value"] + ) df = pd.concat([dfIsNull, dfNotNull]) - df.sort_values(by=[timeCriterion, "uploadTime"], - ascending=[False, False], - inplace=True) + df.sort_values( + by=[timeCriterion, "uploadTime"], ascending=[False, False], inplace=True + ) else: nDuplicatesRemoved = 0 @@ -217,13 +229,16 @@ def getCalculatorCounts(groupedData, metadata): calculatorData["dayIndex"] = pd.DatetimeIndex(calculatorData["time"]).date # get rid of duplicates - calculatorData, nDuplicatesRemoved = \ - removeDuplicates(calculatorData, ["time", "bolus"]) + calculatorData, nDuplicatesRemoved = removeDuplicates( + calculatorData, ["time", "bolus"] + ) metadata["calculator.duplicatesRemoved.count"] = nDuplicatesRemoved # get start and end times - calculatorBeginDate, calculatorEndDate = getStartAndEndTimes(calculatorData, "dayIndex") + calculatorBeginDate, calculatorEndDate = getStartAndEndTimes( + calculatorData, "dayIndex" + ) metadata["calculator.beginDate"] = calculatorBeginDate metadata["calculator.endDate"] = calculatorEndDate @@ -252,23 +267,24 @@ def getListOfDexcomCGMDays(df): def dexcomCriteria(df): # if day is closed loop or non-dexcom set to 0 - isClosedLoop = (df["basal.closedLoopDays"].fillna(False)) + isClosedLoop = df["basal.closedLoopDays"].fillna(False) isNonDexcom = ~(df["cgm.dexcomOnly"].fillna(False)) - df.loc[(isClosedLoop | isNonDexcom), - ["bolus.count", "cgm.count"]] = 0 + df.loc[(isClosedLoop | isNonDexcom), ["bolus.count", "cgm.count"]] = 0 return df def isQualifyingDay(df, bolusCriteria, percentCgmCriteria, cgmPoints1Day): df["cgm.percentage"] = df["cgm.count"] / cgmPoints1Day - df["qualifyingDay"] = ((df["bolus.count"] >= bolusCriteria) & - (df["cgm.percentage"] >= percentCgmCriteria)) + df["qualifyingDay"] = (df["bolus.count"] >= bolusCriteria) & ( + df["cgm.percentage"] >= percentCgmCriteria + ) # calculate the gaps in the data and group them df["nonQualifyingDay"] = ~df["qualifyingDay"] - df["qualifyAndNotQualifyGroups"] = \ - ((df.qualifyingDay != df.qualifyingDay.shift()).cumsum()) + df["qualifyAndNotQualifyGroups"] = ( + df.qualifyingDay != df.qualifyingDay.shift() + ).cumsum() df["gapGroup"] = df["qualifyAndNotQualifyGroups"] * df["nonQualifyingDay"] return df @@ -283,60 +299,71 @@ def getSummaryStats(df, dayStatsDF): numberContiguousDays = len(dayStatsDF) df["contiguous.count"] = numberContiguousDays - percentQualifyingDays = round((numberQualifyingDays / - numberContiguousDays) * 100, 1) + percentQualifyingDays = round( + (numberQualifyingDays / numberContiguousDays) * 100, 1 + ) df["qualifyingDays.percent"] = percentQualifyingDays - avgBolusCalculations = \ - round(dayStatsDF.loc[dayStatsDF.qualifyingDay == 1, - "calculator.count"].mean(), 1) + avgBolusCalculations = round( + dayStatsDF.loc[dayStatsDF.qualifyingDay == 1, "calculator.count"].mean(), 1 + ) df["qualfiyingDays.avgBolusCalculatorCount"] = avgBolusCalculations return df -def getQualifyingTier(df, criteriaName, contDayCriteria, - avgBolusCalculationsCriteria, percQualDayCriteria, - maxGapToContRatioCriteria): +def getQualifyingTier( + df, + criteriaName, + contDayCriteria, + avgBolusCalculationsCriteria, + percQualDayCriteria, + maxGapToContRatioCriteria, +): - tempDF = pd.DataFrame(columns=["avgBolusCalculationsPerDay", - "numberContiguousDays", - "percentQualifyingDays", - "maxGapToContiguousRatio", - "tier"]) + tempDF = pd.DataFrame( + columns=[ + "avgBolusCalculationsPerDay", + "numberContiguousDays", + "percentQualifyingDays", + "maxGapToContiguousRatio", + "tier", + ] + ) - for i in range(0, len(df)-(contDayCriteria-1)): + for i in range(0, len(df) - (contDayCriteria - 1)): - tempIndex = min(i+contDayCriteria, len(df)) + tempIndex = min(i + contDayCriteria, len(df)) numberContiguousDays = df["date"].iloc[i:tempIndex].count() tempDF.loc[i, "numberContiguousDays"] = numberContiguousDays - avgBolusCalculationsPerDay = \ - df["calculator.count"].iloc[i:tempIndex].mean() - tempDF.loc[i, "avgBolusCalculationsPerDay"] = \ - avgBolusCalculationsPerDay + avgBolusCalculationsPerDay = df["calculator.count"].iloc[i:tempIndex].mean() + tempDF.loc[i, "avgBolusCalculationsPerDay"] = avgBolusCalculationsPerDay - percentQualifyingDays = \ + percentQualifyingDays = ( df.qualifyingDay.iloc[i:tempIndex].sum() / contDayCriteria * 100 + ) tempDF.loc[i, "percentQualifyingDays"] = percentQualifyingDays - gapGroups = \ - df.gapGroup.iloc[i:tempIndex].loc[df.gapGroup > 0].astype(str) + gapGroups = df.gapGroup.iloc[i:tempIndex].loc[df.gapGroup > 0].astype(str) if len(gapGroups) > 0: - maxGapToContiguousRatio = \ + maxGapToContiguousRatio = ( gapGroups.describe()["freq"] / contDayCriteria * 100 + ) else: maxGapToContiguousRatio = 0 tempDF.loc[i, "maxGapToContiguousRatio"] = maxGapToContiguousRatio - tier = (numberContiguousDays == contDayCriteria - and avgBolusCalculationsPerDay >= avgBolusCalculationsCriteria - and percentQualifyingDays >= percQualDayCriteria - and maxGapToContiguousRatio <= maxGapToContRatioCriteria) + tier = ( + numberContiguousDays == contDayCriteria + and avgBolusCalculationsPerDay >= avgBolusCalculationsCriteria + and percentQualifyingDays >= percQualDayCriteria + and maxGapToContiguousRatio <= maxGapToContRatioCriteria + ) tempDF.loc[i, "tier"] = tier @@ -347,19 +374,21 @@ def getQualifyingTier(df, criteriaName, contDayCriteria, if sum(df[tierName].fillna(0) * 1) > 0: tierGroupName = criteriaName + ".group" tierGapGroupName = criteriaName + ".gapGroup" - df[tierGroupName] = ((df[tierName] != df[tierName].shift()).cumsum()) + df[tierGroupName] = (df[tierName] != df[tierName].shift()).cumsum() df[tierGapGroupName] = df[tierGroupName] * df[tierName] groupObj = df[df[tierGapGroupName] > 0].groupby(tierGapGroupName) biggestGroup = groupObj[tierGroupName].count().idxmax() qualifiedBeginDate = groupObj.get_group(biggestGroup).date.min() - qualifiedEndDate = \ - groupObj.get_group(biggestGroup).date.max() + \ - pd.Timedelta(days=contDayCriteria) + qualifiedEndDate = groupObj.get_group(biggestGroup).date.max() + pd.Timedelta( + days=contDayCriteria + ) nDaysToDeliever = (qualifiedEndDate - qualifiedBeginDate).days - qualifyingResults = {"qualified": True, - "qualified.beginDate": qualifiedBeginDate, - "qualified.endDate": qualifiedEndDate, - "qualified.nDaysToDeliever": nDaysToDeliever} + qualifyingResults = { + "qualified": True, + "qualified.beginDate": qualifiedBeginDate, + "qualified.endDate": qualifiedEndDate, + "qualified.nDaysToDeliever": nDaysToDeliever, + } else: qualifyingResults = {"qualified": False} @@ -370,21 +399,22 @@ def qualify(df, metaDF, q, idx): q["maxGapToContigRatio"] metaDF[q["tierAbbr"] + ".topTier"] = q["tierAbbr"] + "0" for j in range(0, len(q["tierNames"])): - df, qualifyingResults = \ - getQualifyingTier(df, - q["tierNames"][j], - q["minContiguousDays"][j], - q["avgBolusCalcsPerDay"][j], - q["percentDaysQualifying"][j], - q["maxGapToContigRatio"][j]) - - qrDF = pd.DataFrame(qualifyingResults, index=[idx]). \ - add_prefix(q["tierNames"][j] + ".") + df, qualifyingResults = getQualifyingTier( + df, + q["tierNames"][j], + q["minContiguousDays"][j], + q["avgBolusCalcsPerDay"][j], + q["percentDaysQualifying"][j], + q["maxGapToContigRatio"][j], + ) + + qrDF = pd.DataFrame(qualifyingResults, index=[idx]).add_prefix( + q["tierNames"][j] + "." + ) metaDF = pd.concat([metaDF, qrDF], axis=1) if qualifyingResults["qualified"]: - metaDF[q["tierAbbr"] + ".topTier"] = \ - q["tierNames"][j] + metaDF[q["tierAbbr"] + ".topTier"] = q["tierNames"][j] return df, metaDF @@ -395,22 +425,19 @@ def qualify(df, metaDF, q, idx): qualCriteria = json.load(args.qualificationCriteria) -criteriaMaxCgmPointsPerDay = \ - 1440 / qualCriteria["timeFreqMin"] +criteriaMaxCgmPointsPerDay = 1440 / qualCriteria["timeFreqMin"] # input folder(s) donorFolder = os.path.join(args.dataPath, phiDateStamp + "-donor-data") if not os.path.isdir(donorFolder): sys.exit("{0} is not a directory".format(donorFolder)) -donorJsonData = os.path.join(donorFolder, - phiDateStamp + "-donorJsonData", "") +donorJsonData = os.path.join(donorFolder, phiDateStamp + "-donorJsonData", "") if not os.path.isdir(donorJsonData): sys.exit("{0} is not a directory".format(donorJsonData)) # create output folder(s) -donorQualifyFolder = os.path.join(donorFolder, - args.dateStamp + "-qualified", "") +donorQualifyFolder = os.path.join(donorFolder, args.dateStamp + "-qualified", "") if not os.path.exists(donorQualifyFolder): os.makedirs(donorQualifyFolder) @@ -450,11 +477,20 @@ def qualify(df, metaDF, q, idx): if "hClosedLoop" in qualCriteria["name"]: if "basal" in data.type.unique(): data["date"] = pd.to_datetime(data.time).dt.date - bd = data[(data.type == "basal") & (data.deliveryType == "temp")] - tempBasalCounts = pd.DataFrame(bd.groupby("date").deliveryType.count()).reset_index() - tempBasalCounts.rename({"deliveryType": "tempBasalCounts"}, axis=1, inplace=True) + bd = data[ + (data.type == "basal") & (data.deliveryType == "temp") + ] + tempBasalCounts = pd.DataFrame( + bd.groupby("date").deliveryType.count() + ).reset_index() + tempBasalCounts.rename( + {"deliveryType": "tempBasalCounts"}, axis=1, inplace=True + ) data = pd.merge(data, tempBasalCounts, on="date") - data = data[data.tempBasalCounts >= qualCriteria["nTempBasalsPerDayIsClosedLoop"]] + data = data[ + data.tempBasalCounts + >= qualCriteria["nTempBasalsPerDayIsClosedLoop"] + ] else: data = pd.DataFrame(columns=list(data)) @@ -465,11 +501,13 @@ def qualify(df, metaDF, q, idx): # flatten json data = td.clean.flatten_json(data) - if (("cbg" in data.type.unique()) and ("bolus" in data.type.unique())): + if ("cbg" in data.type.unique()) and ("bolus" in data.type.unique()): # get rid of all negative durations data, numberOfNegativeDurations = removeNegativeDurations(data) - metadata["all.negativeDurationsRemoved.count"] = numberOfNegativeDurations + metadata[ + "all.negativeDurationsRemoved.count" + ] = numberOfNegativeDurations # group data by type groupedData = data.groupby(by="type") @@ -483,23 +521,39 @@ def qualify(df, metaDF, q, idx): metadata["cgm.invalidValues.count"] = numberOfInvalidCgmValues # get rid of duplicates that have the same ["deviceTime", "value"] - cgmData, nDuplicatesRemovedDeviceTime = removeCgmDuplicates(cgmData, "deviceTime") - metadata["cgm.nDuplicatesRemovedDeviceTime.count"] = nDuplicatesRemovedDeviceTime + cgmData, nDuplicatesRemovedDeviceTime = removeCgmDuplicates( + cgmData, "deviceTime" + ) + metadata[ + "cgm.nDuplicatesRemovedDeviceTime.count" + ] = nDuplicatesRemovedDeviceTime # get rid of duplicates that have the same ["time", "value"] - cgmData, nDuplicatesRemovedUtcTime = removeCgmDuplicates(cgmData, "time") + cgmData, nDuplicatesRemovedUtcTime = removeCgmDuplicates( + cgmData, "time" + ) - metadata["cgm.nDuplicatesRemovedUtcTime.count"] = \ - nDuplicatesRemovedUtcTime + metadata[ + "cgm.nDuplicatesRemovedUtcTime.count" + ] = nDuplicatesRemovedUtcTime # round time to the nearest 5 minutes - cgmData = td.clean.round_time(cgmData, timeIntervalMinutes=5, timeField="time", - roundedTimeFieldName="roundedTime", verbose=False) + cgmData = td.clean.round_time( + cgmData, + timeIntervalMinutes=5, + timeField="time", + roundedTimeFieldName="roundedTime", + verbose=False, + ) # get rid of duplicates that have the same "roundedTime" - cgmData, nDuplicatesRemovedRoundedTime = removeDuplicates(cgmData, "roundedTime") + cgmData, nDuplicatesRemovedRoundedTime = removeDuplicates( + cgmData, "roundedTime" + ) - metadata["cgm.nDuplicatesRemovedRoundedTime.count"] = nDuplicatesRemovedRoundedTime + metadata[ + "cgm.nDuplicatesRemovedRoundedTime.count" + ] = nDuplicatesRemovedRoundedTime # calculate day or date of data cgmData["dayIndex"] = cgmData.roundedTime.dt.date @@ -515,14 +569,13 @@ def qualify(df, metaDF, q, idx): # group by date (day) and get stats catDF = cgmData.groupby(cgmData["dayIndex"]) - cgmRecordsPerDay = \ - pd.DataFrame(catDF.value.count()). \ - rename(columns={"value": "cgm.count"}) + cgmRecordsPerDay = pd.DataFrame(catDF.value.count()).rename( + columns={"value": "cgm.count"} + ) dayDate = catDF.dayIndex.describe()["top"] dexcomCGM = catDF.dexcomCGM.describe()["top"] nTypesCGM = catDF.dexcomCGM.describe()["unique"] - cgmRecordsPerDay["cgm.dexcomOnly"] = \ - (dexcomCGM & (nTypesCGM == 1)) + cgmRecordsPerDay["cgm.dexcomOnly"] = dexcomCGM & (nTypesCGM == 1) cgmRecordsPerDay["date"] = cgmRecordsPerDay.index # %% BOLUS @@ -530,32 +583,38 @@ def qualify(df, metaDF, q, idx): bolusData = filterAndSort(groupedData, "bolus", "time") # get rid of duplicates - bolusData, nDuplicatesRemoved = removeDuplicates(bolusData, ["time", "normal"]) + bolusData, nDuplicatesRemoved = removeDuplicates( + bolusData, ["time", "normal"] + ) metadata["bolus.duplicatesRemoved.count"] = nDuplicatesRemoved # calculate day or date of data bolusData["dayIndex"] = pd.DatetimeIndex(bolusData.time).date # get start and end times - bolusBeginDate, bolusEndDate = getStartAndEndTimes(bolusData, - "dayIndex") + bolusBeginDate, bolusEndDate = getStartAndEndTimes( + bolusData, "dayIndex" + ) metadata["bolus.beginDate"] = bolusBeginDate metadata["bolus.endDate"] = bolusEndDate # group by date and get bolusRecordsPerDay catDF = bolusData.groupby(bolusData["dayIndex"]) - bolusRecordsPerDay = \ - pd.DataFrame(catDF.subType.count()). \ - rename(columns={"subType": "bolus.count"}) + bolusRecordsPerDay = pd.DataFrame(catDF.subType.count()).rename( + columns={"subType": "bolus.count"} + ) bolusRecordsPerDay["date"] = bolusRecordsPerDay.index # %% GET CALCULATOR DATA (AKA WIZARD DATA) - calculatorRecordsPerDay, metadata = getCalculatorCounts(groupedData, metadata) + calculatorRecordsPerDay, metadata = getCalculatorCounts( + groupedData, metadata + ) # %% GET CLOSED LOOP DAYS WITH TEMP BASAL DATA - isClosedLoopDay, is670g, metadata = \ - getClosedLoopDays(groupedData, qualCriteria, metadata) + isClosedLoopDay, is670g, metadata = getClosedLoopDays( + groupedData, qualCriteria, metadata + ) # %% CONTIGUOUS DATA # calculate the start and end of contiguous data @@ -569,25 +628,33 @@ def qualify(df, metaDF, q, idx): contiguousData = pd.DataFrame(rng, columns=["date"]) # merge data - contiguousData = pd.merge(contiguousData, bolusRecordsPerDay, - on="date", how="left") - contiguousData = pd.merge(contiguousData, cgmRecordsPerDay, - on="date", how="left") - contiguousData = pd.merge(contiguousData, calculatorRecordsPerDay, - on="date", how="left") - contiguousData = pd.merge(contiguousData, isClosedLoopDay, - on="date", how="left") - contiguousData = pd.merge(contiguousData, is670g, - on="date", how="left") + contiguousData = pd.merge( + contiguousData, bolusRecordsPerDay, on="date", how="left" + ) + contiguousData = pd.merge( + contiguousData, cgmRecordsPerDay, on="date", how="left" + ) + contiguousData = pd.merge( + contiguousData, calculatorRecordsPerDay, on="date", how="left" + ) + contiguousData = pd.merge( + contiguousData, isClosedLoopDay, on="date", how="left" + ) + contiguousData = pd.merge( + contiguousData, is670g, on="date", how="left" + ) # fill in nan's with 0s for dataType in ["bolus", "cgm", "calculator", "basal.temp"]: - contiguousData[dataType + ".count"] = \ - contiguousData[dataType + ".count"].fillna(0) + contiguousData[dataType + ".count"] = contiguousData[ + dataType + ".count" + ].fillna(0) - if ((len(contiguousData) > 0) & - (sum(contiguousData["cgm.count"] > 0) > 0) & - (sum(contiguousData["bolus.count"] > 0) > 0)): + if ( + (len(contiguousData) > 0) + & (sum(contiguousData["cgm.count"] > 0) > 0) + & (sum(contiguousData["bolus.count"] > 0) > 0) + ): # create an output folder userQualifyFolder = os.path.join(donorQualifyFolder, userID) @@ -600,43 +667,71 @@ def qualify(df, metaDF, q, idx): contiguousData = dexcomCriteria(contiguousData) # determine if each day qualifies - contiguousData = \ - isQualifyingDay(contiguousData, - qualCriteria["bolusesPerDay"], - qualCriteria["cgmPercentPerDay"], - criteriaMaxCgmPointsPerDay) + contiguousData = isQualifyingDay( + contiguousData, + qualCriteria["bolusesPerDay"], + qualCriteria["cgmPercentPerDay"], + criteriaMaxCgmPointsPerDay, + ) # calcuate summary stats metadata = getSummaryStats(metadata, contiguousData) # %% QUALIFICATION OF DATASET - contiguousData, metadata = qualify(contiguousData, metadata, - qualCriteria, dIndex) + contiguousData, metadata = qualify( + contiguousData, metadata, qualCriteria, dIndex + ) # %% SAVE RESULTS contiguousData.index.name = "dayIndex" dSFileName = os.path.join( - userQualifyFolder, userID + "-qualified-as-" + - metadata[qualCriteria["tierAbbr"] + ".topTier"].values[0] + - "-on-" + qualifiedOn + "-for-" + qualCriteria["name"] + - "-dayStats.csv") + userQualifyFolder, + userID + + "-qualified-as-" + + metadata[qualCriteria["tierAbbr"] + ".topTier"].values[0] + + "-on-" + + qualifiedOn + + "-for-" + + qualCriteria["name"] + + "-dayStats.csv", + ) contiguousData.to_csv(dSFileName) # append meta data to the user results - allMetaData = pd.concat([allMetaData, metadata], axis=0, sort=False) + allMetaData = pd.concat( + [allMetaData, metadata], axis=0, sort=False + ) # update on progress - print(round((dIndex - startIndex + 1) / - (endIndex - startIndex) * 100, 1), - "% ", dIndex, "of", endIndex - 1, "qualifed as:", - metadata[qualCriteria["tierAbbr"] + - ".topTier"].values) + print( + round( + (dIndex - startIndex + 1) + / (endIndex - startIndex) + * 100, + 1, + ), + "% ", + dIndex, + "of", + endIndex - 1, + "qualifed as:", + metadata[qualCriteria["tierAbbr"] + ".topTier"].values, + ) allMetaData.index.name = "dIndex" uniqueDonors = pd.concat([uniqueDonors, allMetaData], axis=1) -aMFileName = os.path.join(donorFolder, - phiDateStamp + "-records-" + str(startIndex) + "-" + - str(endIndex - 1) + "-qualified-on-" + qualifiedOn + - "-for-" + qualCriteria["name"] + "-metadata.csv") +aMFileName = os.path.join( + donorFolder, + phiDateStamp + + "-records-" + + str(startIndex) + + "-" + + str(endIndex - 1) + + "-qualified-on-" + + qualifiedOn + + "-for-" + + qualCriteria["name"] + + "-metadata.csv", +) uniqueDonors.to_csv(aMFileName) diff --git a/projects/clinician-insights/daily-feedback.py b/projects/clinician-insights/daily-feedback.py index 1d397a8c..3eb90d55 100644 --- a/projects/clinician-insights/daily-feedback.py +++ b/projects/clinician-insights/daily-feedback.py @@ -32,9 +32,8 @@ # load tidals package locally if it does not exist globally if importlib.util.find_spec("tidals") is None: tidalsPath = os.path.abspath( - os.path.join( - os.path.dirname(__file__), - "..", "..", "tidepool-analysis-tools")) + os.path.join(os.path.dirname(__file__), "..", "..", "tidepool-analysis-tools") + ) if tidalsPath not in sys.path: sys.path.insert(0, tidalsPath) import tidals as td @@ -42,9 +41,10 @@ # load environmental variables from .env file and environmentalVariables.py # TODO: load environment variables when conda env is loaded envPath = os.path.abspath( - os.path.join( - os.path.dirname(__file__), - "..", "..", "projects", "bigdata-processing-pipeline")) + os.path.join( + os.path.dirname(__file__), "..", "..", "projects", "bigdata-processing-pipeline" + ) +) if envPath not in sys.path: sys.path.insert(0, envPath) import environmentalVariables @@ -55,31 +55,39 @@ parser = argparse.ArgumentParser(description=codeDescription) -parser.add_argument("-d", - "--date-stamp", - dest="dateStamp", - default=dt.datetime.now().strftime("%Y-%m-%d"), - help="date of the daily report, defaults to current date") - -parser.add_argument("-a", - "--accountAlias", - dest="accountAlias", - default=np.nan, - help="enter an account alias so the master clinician or study account" + - "can be looked up in your environmental variables, OR leave this blank" + - "and you will be prompted to enter in account credentials") - -parser.add_argument("-o", - "--output-data-path", - dest="outputPath", - default=os.path.abspath(os.path.join(".", "data")), - help="the output path where the data is stored") - -parser.add_argument("-v", - "--verbose", - dest="verboseOutput", - default=True, - help="True if you want script progress to print to the console") +parser.add_argument( + "-d", + "--date-stamp", + dest="dateStamp", + default=dt.datetime.now().strftime("%Y-%m-%d"), + help="date of the daily report, defaults to current date", +) + +parser.add_argument( + "-a", + "--accountAlias", + dest="accountAlias", + default=np.nan, + help="enter an account alias so the master clinician or study account" + + "can be looked up in your environmental variables, OR leave this blank" + + "and you will be prompted to enter in account credentials", +) + +parser.add_argument( + "-o", + "--output-data-path", + dest="outputPath", + default=os.path.abspath(os.path.join(".", "data")), + help="the output path where the data is stored", +) + +parser.add_argument( + "-v", + "--verbose", + dest="verboseOutput", + default=True, + help="True if you want script progress to print to the console", +) args = parser.parse_args() @@ -88,7 +96,7 @@ if pd.isnull(args.accountAlias): os.environ["TEMP_EMAIL"] = getpass.getpass(prompt="email: ") os.environ["TEMP_PASSWORD"] = getpass.getpass(prompt="password: ") - if (pd.isnull(os.environ["TEMP_EMAIL"]) | pd.isnull(os.environ["TEMP_PASSWORD"])): + if pd.isnull(os.environ["TEMP_EMAIL"]) | pd.isnull(os.environ["TEMP_PASSWORD"]): sys.exit("error in entering user email and password") else: @@ -119,11 +127,15 @@ os.makedirs(jsonDataPath) allStats = pd.DataFrame() -metaData = pd.DataFrame(columns=["userID", - "studyID", - "getData.response1", - "getData.response2", - "nDuplicatesRemoved"]) +metaData = pd.DataFrame( + columns=[ + "userID", + "studyID", + "getData.response1", + "getData.response2", + "nDuplicatesRemoved", + ] +) # %% FUNCTIONS @@ -149,7 +161,7 @@ def get_stats(df): statDF["percent70to140"] = statDF["total70to140"] / statDF["totalNumberCBGValues"] statDF["percent70to180"] = statDF["total70to180"] / statDF["totalNumberCBGValues"] statDF["percentAbove180"] = statDF["totalAbove180"] / statDF["totalNumberCBGValues"] - statDF["percentAbove250"] = statDF["totalAbove250"] / statDF["totalNumberCBGValues"] + statDF["percentAbove250"] = statDF["totalAbove250"] / statDF["totalNumberCBGValues"] statDF["min_mgdL"] = df.mg_dL.min() statDF["median_mgdL"] = df.mg_dL.describe()["50%"] @@ -160,23 +172,32 @@ def get_stats(df): statDF["startTime"] = startTime endTime = df["localTime"].max() statDF["endTime"] = endTime - statDF["totalNumberPossibleCBGvalues"] = len(pd.date_range(startTime, endTime, freq="5min")) + statDF["totalNumberPossibleCBGvalues"] = len( + pd.date_range(startTime, endTime, freq="5min") + ) # feedback criteria # A. incomplete dataset - statDF["percentOfExpectedData"] = \ - (((endTime - startTime).days * 86400) + - ((endTime - startTime).seconds)) / (86400 - (5*60)) + statDF["percentOfExpectedData"] = ( + ((endTime - startTime).days * 86400) + ((endTime - startTime).seconds) + ) / (86400 - (5 * 60)) - if statDF.loc[0, "percentOfExpectedData"] < 0.834: # greater than 4 hours of expected data + if ( + statDF.loc[0, "percentOfExpectedData"] < 0.834 + ): # greater than 4 hours of expected data statDF["GTE4hoursNoCgmSignal"] = "NA" - statDF["incompleteDataset"] = "FLAG (" + \ - str(round(statDF.loc[0, "percentOfExpectedData"] * 100, 1)) + "%)" + statDF["incompleteDataset"] = ( + "FLAG (" + + str(round(statDF.loc[0, "percentOfExpectedData"] * 100, 1)) + + "%)" + ) else: statDF["incompleteDataset"] = np.nan # 1. >=4 hours without CGM signal - missingCgm = statDF["totalNumberPossibleCBGvalues"] - statDF["totalNumberCBGValues"] + missingCgm = ( + statDF["totalNumberPossibleCBGvalues"] - statDF["totalNumberCBGValues"] + ) if missingCgm[0] > (4 * 60 / 5): statDF["GTE4hoursNoCgmSignal"] = "FLAG" else: @@ -184,14 +205,17 @@ def get_stats(df): # 2. >= 2 hours 54 <= BG < 70 mg/dl if statDF.loc[0, "total54to70"] > (2 * 60 / 5): - statDF["GTE2hoursBetween54to70"] = \ + statDF["GTE2hoursBetween54to70"] = ( "FLAG (" + str(round(statDF.loc[0, "total54to70"] * 5)) + "min)" + ) else: statDF["GTE2hoursBetween54to70"] = np.nan # 3. >= 15 minutes < 54 mg/dl" if statDF.loc[0, "totalBelow54"] > (15 / 5): - statDF["GTE15minBelow54"] = "FLAG (" + str(round(statDF.loc[0, "totalBelow54"] * 5)) + "min)" + statDF["GTE15minBelow54"] = ( + "FLAG (" + str(round(statDF.loc[0, "totalBelow54"] * 5)) + "min)" + ) else: statDF["GTE15minBelow54"] = np.nan @@ -201,49 +225,55 @@ def get_stats(df): def sort_and_pretty_stat_output(df): for col in list(df): - if (("percent" in col) | ("cov" in col)): + if ("percent" in col) | ("cov" in col): df[col] = round(df[col] * 100, 1) for col in ["mean_mgdL", "std_mgdL"]: df[col] = round(df[col], 1) - df = df[["studyID", - "incompleteDataset", - "GTE4hoursNoCgmSignal", - "GTE2hoursBetween54to70", - "GTE15minBelow54", - "totalNumberCBGValues", - "totalNumberPossibleCBGvalues", - "startTime", - "endTime", - "percentOfExpectedData", - "mean_mgdL", - "std_mgdL", - "cov_mgdL", - "min_mgdL", - "median_mgdL", - "max_mgdL", - "percentBelow54", - "percentBelow70", - "percent70to140", - "percent70to180", - "percentAbove180", - "percentAbove250", - "totalBelow54", - "totalBelow70", - "total54to70", - "total70to140", - "total70to180", - "total180to250", - "totalAbove180", - "totalAbove250"]] + df = df[ + [ + "studyID", + "incompleteDataset", + "GTE4hoursNoCgmSignal", + "GTE2hoursBetween54to70", + "GTE15minBelow54", + "totalNumberCBGValues", + "totalNumberPossibleCBGvalues", + "startTime", + "endTime", + "percentOfExpectedData", + "mean_mgdL", + "std_mgdL", + "cov_mgdL", + "min_mgdL", + "median_mgdL", + "max_mgdL", + "percentBelow54", + "percentBelow70", + "percent70to140", + "percent70to180", + "percentAbove180", + "percentAbove250", + "totalBelow54", + "totalBelow70", + "total54to70", + "total70to140", + "total70to180", + "total180to250", + "totalAbove180", + "totalAbove250", + ] + ] return df def get_timeZoneOffset(currentDate, userTz): tz = timezone(userTz) - tzoNum = int(tz.localize(pd.to_datetime(currentDate) + timedelta(days=1)).strftime("%z")) + tzoNum = int( + tz.localize(pd.to_datetime(currentDate) + timedelta(days=1)).strftime("%z") + ) tzoHours = np.floor(tzoNum / 100) tzoMinutes = round((tzoNum / 100 - tzoHours) * 100, 0) tzoSign = np.sign(tzoHours) @@ -257,17 +287,17 @@ def get_donor_info(email, password, outputDonorList): url1 = "https://api.tidepool.org/auth/login" myResponse = requests.post(url1, auth=(email, password)) - if(myResponse.ok): + if myResponse.ok: xtoken = myResponse.headers["x-tidepool-session-token"] userid = json.loads(myResponse.content.decode())["userid"] url2 = "https://api.tidepool.org/metadata/users/" + userid + "/users" headers = { "x-tidepool-session-token": xtoken, - "Content-Type": "application/json" + "Content-Type": "application/json", } myResponse2 = requests.get(url2, headers=headers) - if(myResponse2.ok): + if myResponse2.ok: usersData = json.loads(myResponse2.content.decode()) @@ -276,9 +306,9 @@ def get_donor_info(email, password, outputDonorList): userEmail = usersData[i]["username"] donorMetaData = donorMetaData.append( - pd.DataFrame([[userID, userEmail]], - columns=donorMetadataColumns), - ignore_index=True) + pd.DataFrame([[userID, userEmail]], columns=donorMetadataColumns), + ignore_index=True, + ) else: print("ERROR", myResponse2.status_code) sys.exit("Error with" + str(myResponse2.status_code)) @@ -295,20 +325,25 @@ def get_json_data(email, password, userid, outputFilePathName, startDate, endDat url1 = "https://api.tidepool.org/auth/login" myResponse = requests.post(url1, auth=(email, password)) - if(myResponse.ok): + if myResponse.ok: xtoken = myResponse.headers["x-tidepool-session-token"] - url2 = "https://api.tidepool.org/data/" + userid + \ - "?endDate=" + endDate.strftime("%Y-%m-%d") + \ - "T23:59:59.000Z&startDate=" + \ - startDate.strftime("%Y-%m-%d") + "T00:00:00.000Z" + url2 = ( + "https://api.tidepool.org/data/" + + userid + + "?endDate=" + + endDate.strftime("%Y-%m-%d") + + "T23:59:59.000Z&startDate=" + + startDate.strftime("%Y-%m-%d") + + "T00:00:00.000Z" + ) headers = { "x-tidepool-session-token": xtoken, - "Content-Type": "application/json" - } + "Content-Type": "application/json", + } myResponse2 = requests.get(url2, headers=headers) - if(myResponse2.ok): + if myResponse2.ok: usersData = json.loads(myResponse2.content.decode()) with open(outputFilePathName, "w") as outfile: @@ -327,16 +362,23 @@ def get_json_data(email, password, userid, outputFilePathName, startDate, endDat # %% START OF CODE # get the list of donors if it doesn't already exist -outputDonorList = os.path.abspath(os.path.join(args.outputPath, "PHI-study-participants.csv")) +outputDonorList = os.path.abspath( + os.path.join(args.outputPath, "PHI-study-participants.csv") +) if not os.path.exists(outputDonorList): - get_donor_info(os.environ["TEMP_EMAIL"], os.environ["TEMP_PASSWORD"], outputDonorList) + get_donor_info( + os.environ["TEMP_EMAIL"], os.environ["TEMP_PASSWORD"], outputDonorList + ) # load in the donor list studyPartipants = pd.read_csv(outputDonorList, index_col=["dIndex"]) # deal with a specific use case called telet1d if args.accountAlias in ["TELET1D"]: - studyPartipants = studyPartipants[studyPartipants["name"] != - "demo+james@tidepool.org"].sort_values("name").reset_index(drop=True) + studyPartipants = ( + studyPartipants[studyPartipants["name"] != "demo+james@tidepool.org"] + .sort_values("name") + .reset_index(drop=True) + ) studyPartipants.to_csv(outputDonorList, index_label="dIndex") else: studyPartipants = pd.read_csv(outputDonorList, index_col="dIndex", low_memory=False) @@ -351,11 +393,19 @@ def get_json_data(email, password, userid, outputFilePathName, startDate, endDat startDate = pd.to_datetime(reportDate) - pd.Timedelta(2, unit="D") endDate = pd.to_datetime(reportDate) + pd.Timedelta(1, unit="D") - reponse1, reponse2 = get_json_data(os.environ["TEMP_EMAIL"], os.environ["TEMP_PASSWORD"], - userID, outputFileLocation, startDate, endDate) + reponse1, reponse2 = get_json_data( + os.environ["TEMP_EMAIL"], + os.environ["TEMP_PASSWORD"], + userID, + outputFileLocation, + startDate, + endDate, + ) - metaData.loc[dIndex, ["getData.response1", "getData.response2"]] = \ - reponse1.status_code, reponse2.status_code + metaData.loc[dIndex, ["getData.response1", "getData.response2"]] = ( + reponse1.status_code, + reponse2.status_code, + ) # load json data data = pd.read_json(outputFileLocation) @@ -368,43 +418,61 @@ def get_json_data(email, password, userid, outputFilePathName, startDate, endDat cgmData["utcTime"] = pd.to_datetime(cgmData.time, utc=True) # get data from 6am to 6am - if (("timezone" in list(data)) | ("timezoneOffset" in list(data))): + if ("timezone" in list(data)) | ("timezoneOffset" in list(data)): if "timezone" in list(data): userTz = data.timezone.describe()["top"] tzo = get_timeZoneOffset(reportDate, userTz) tz = timezone(userTz) - start6amDate = tz.localize(pd.to_datetime(reportDate) - - pd.Timedelta(1, unit="D") - + pd.Timedelta(5, unit="h") - + pd.Timedelta(57, unit="m") - + pd.Timedelta(30, unit="s")) - - end6amDate = tz.localize(pd.to_datetime(reportDate) - + pd.Timedelta(5, unit="h") - + pd.Timedelta(57, unit="m") - + pd.Timedelta(30, unit="s")) - - cgm = cgmData.loc[((cgmData.utcTime > start6amDate) & - (cgmData.utcTime < end6amDate)), ["time", "value"]] + start6amDate = tz.localize( + pd.to_datetime(reportDate) + - pd.Timedelta(1, unit="D") + + pd.Timedelta(5, unit="h") + + pd.Timedelta(57, unit="m") + + pd.Timedelta(30, unit="s") + ) + + end6amDate = tz.localize( + pd.to_datetime(reportDate) + + pd.Timedelta(5, unit="h") + + pd.Timedelta(57, unit="m") + + pd.Timedelta(30, unit="s") + ) + + cgm = cgmData.loc[ + ( + (cgmData.utcTime > start6amDate) + & (cgmData.utcTime < end6amDate) + ), + ["time", "value"], + ] else: # if there is no timezone given, then infer from timezone offset tzo = data.timezoneOffset.median() - start6amDate = (pd.to_datetime(reportDate) - - pd.Timedelta(1, unit="D") - + pd.Timedelta(5, unit="h") - + pd.Timedelta(57, unit="m") - + pd.Timedelta(30, unit="s") - - pd.Timedelta(tzo, unit="m")) - - end6amDate = (pd.to_datetime(reportDate) - + pd.Timedelta(5, unit="h") - + pd.Timedelta(57, unit="m") - + pd.Timedelta(30, unit="s") - - pd.Timedelta(tzo, unit="m")) - - cgm = cgmData.loc[((pd.to_datetime(cgmData.time) > start6amDate) & - (pd.to_datetime(cgmData.time) < end6amDate)), ["time", "value"]] + start6amDate = ( + pd.to_datetime(reportDate) + - pd.Timedelta(1, unit="D") + + pd.Timedelta(5, unit="h") + + pd.Timedelta(57, unit="m") + + pd.Timedelta(30, unit="s") + - pd.Timedelta(tzo, unit="m") + ) + + end6amDate = ( + pd.to_datetime(reportDate) + + pd.Timedelta(5, unit="h") + + pd.Timedelta(57, unit="m") + + pd.Timedelta(30, unit="s") + - pd.Timedelta(tzo, unit="m") + ) + + cgm = cgmData.loc[ + ( + (pd.to_datetime(cgmData.time) > start6amDate) + & (pd.to_datetime(cgmData.time) < end6amDate) + ), + ["time", "value"], + ] cgm = cgm.rename(columns={"value": "mmol_L"}) cgm["mg_dL"] = (cgm["mmol_L"] * 18.01559).astype(int) @@ -413,7 +481,9 @@ def get_json_data(email, password, userid, outputFilePathName, startDate, endDat cgm = td.clean.round_time(cgm) # drop any duplicates - cgm, nDuplicatesRemoved = td.clean.remove_duplicates(cgm, cgm["roundedTime"]) + cgm, nDuplicatesRemoved = td.clean.remove_duplicates( + cgm, cgm["roundedTime"] + ) metaData.loc[dIndex, ["nDuplicatesRemoved"]] = nDuplicatesRemoved cgm["localTime"] = cgm["roundedTime"] + pd.to_timedelta(tzo, unit="m") @@ -426,8 +496,12 @@ def get_json_data(email, password, userid, outputFilePathName, startDate, endDat cgm = cgm.sort_values("localTime").reset_index(drop=True) cgm = cgm.rename(columns={"localTime": "roundedLocalTime"}) cgm = cgm[["time", "roundedLocalTime", "mmol_L", "mg_dL"]] - cgm.to_csv(os.path.join(indvidualDataFolder, - reportDate + "-cgm-data-for-" + studyID + ".csv")) + cgm.to_csv( + os.path.join( + indvidualDataFolder, + reportDate + "-cgm-data-for-" + studyID + ".csv", + ) + ) else: stats = pd.DataFrame(index=[dIndex]) @@ -448,5 +522,7 @@ def get_json_data(email, password, userid, outputFilePathName, startDate, endDat # sort and save output feedback = sort_and_pretty_stat_output(allStats) -feedback.to_csv(os.path.join(reportOutputPath, reportDate + "-daily-report.csv"), index=False) +feedback.to_csv( + os.path.join(reportOutputPath, reportDate + "-daily-report.csv"), index=False +) metaData.to_csv(os.path.join(metadataPath, "PHI-" + reportDate + "-metaData.csv")) diff --git a/projects/parsers/example.py b/projects/parsers/example.py deleted file mode 100644 index c0774e01..00000000 --- a/projects/parsers/example.py +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- -""" -description: Example code using the loop_report class. -Created on Fri Jan 25 06:55:48 2019 - -@author: ed -""" - -from loop_report import LoopReport -import pandas as pd -import json -import os - -# %% file name and path -file_path = os.path.join("..", "tests", "parsers", "files") -file_name = "LoopReport" - -# %% parse file -lr = LoopReport() -loop_dict = lr.parse_by_file(path=file_path, file_name="%s.md" % file_name) - -# %% save parsed file -with open(file_path + file_name + "-data.json", "w") as fp: - json.dump(loop_dict, fp, sort_keys=True, indent=4) - -# %% put data into a dataframe and save -loop_df = pd.DataFrame(columns=loop_dict.keys(), index=[0]) -loop_df = loop_df.astype("object") -for k in loop_dict.keys(): - loop_df[k][0] = loop_dict[k] - -loop_df.to_csv(file_path + file_name + "-data-in-columns.csv", index_label="index") -loop_df.T.to_csv(file_path + file_name + "-data-in-rows.csv", index_label="index") diff --git a/projects/parsers/loop_report.py b/projects/parsers/loop_report.py index bc5c5ed4..c6dffd52 100644 --- a/projects/parsers/loop_report.py +++ b/projects/parsers/loop_report.py @@ -11,6 +11,9 @@ import os import re import json +import logging + +logger = logging.getLogger("LoopReport") class LoopReport: @@ -20,7 +23,6 @@ def parse_by_file(self, path: str, file_name: str) -> dict: raise RuntimeError("The file path or file name passed in is invalid.") except: raise RuntimeError("The file path or file name passed in is invalid.") - return self.__parse(path, file_name) def parse_by_directory(self, directory: dict) -> list: @@ -32,13 +34,17 @@ def parse_by_directory(self, directory: dict) -> list: all_dict_list = [] for file_name in os.listdir(directory): - if file_name.endswith(".md"): - all_dict_list.append(self.__parse(directory, file_name)) + try: + if file_name.endswith(".md"): + all_dict_list.append(self.__parse(directory, file_name)) + except Exception as e: + logger.debug("loop parser parse by directory error for file") + logger.debug(e) return all_dict_list def __parse(self, path, file_name) -> dict: loop_report_dict = {} - dict = parse_loop_report(f"{path}/{file_name}") + dict = parse_loop_report(path, file_name) loop_report_dict["file_name"] = file_name if Sections.LOOP_VERSION in dict: try: @@ -46,13 +52,13 @@ def __parse(self, path, file_name) -> dict: Sections.LOOP_VERSION ] except: - print("handled error loop_version") + logger.debug("handled error loop_version") if Sections.DEVICE_DATA_MANAGER in dict: try: self.__device_data_manager = dict[Sections.DEVICE_DATA_MANAGER] except: - print("handled error device data manager") + logger.debug("handled error device data manager") if Sections.RILEY_LINK_DEVICE in dict: try: @@ -64,7 +70,7 @@ def __parse(self, path, file_name) -> dict: "bleFirmware" ].strip() except: - print("handled error riley link device") + logger.debug("handled error riley link device") if Sections.CARB_STORE in dict: try: @@ -139,7 +145,7 @@ def __parse(self, path, file_name) -> dict: ] = insulin_sensitivity_factor_schedule["unit"] except: - print("handled error carb store") + logger.debug("handled error carb store") if Sections.DOSE_STORE in dict: try: @@ -168,24 +174,24 @@ def __parse(self, path, file_name) -> dict: ) except: - print("handled error dose store") + logger.debug("handled error dose store") minimed_pump_manager = None omnipod_pump_manager = None if ( Sections.MINIMED_PUMP_MANAGER in dict - or Sections.OMNIPOD_PUMP_MAANGER in dict + or Sections.OMNIPOD_PUMP_MANAGER in dict ): if Sections.MINIMED_PUMP_MANAGER in dict: try: minimed_pump_manager = dict[Sections.MINIMED_PUMP_MANAGER] except: - print("handled error minimed pump manager") - if Sections.OMNIPOD_PUMP_MAANGER in dict: + logger.debug("handled error minimed pump manager") + if Sections.OMNIPOD_PUMP_MANAGER in dict: try: - omnipod_pump_manager = dict[Sections.OMNIPOD_PUMP_MAANGER] + omnipod_pump_manager = dict[Sections.OMNIPOD_PUMP_MANAGER] except: - print("handled error omnipod pump manager") + logger.debug("handled error omnipod pump manager") self.__set_pump_manager_type( loop_report_dict, minimed_pump_manager, omnipod_pump_manager @@ -199,95 +205,1197 @@ def __parse(self, path, file_name) -> dict: ].strip() except: - print("handled error watch data manager") + logger.debug("handled error watch data manager") if Sections.LOOP_DATA_MANAGER in dict: try: loop_data_manager = dict[Sections.LOOP_DATA_MANAGER] - loop_report_dict["maximum_basal_rate"] = float( - re.search( - r"maximumBasalRatePerHour: Optional\((.+?)\), maximumBolus", - loop_data_manager["settings"], - ).group(1) - ) + try: + carbs_on_board = loop_data_manager['carbsOnBoard'] + carbs_on_board = carbs_on_board.replace('Optional(LoopKit.CarbValue(', '').replace('))', '').replace(')', '') + carbs_on_board_list = carbs_on_board.split(",") + carbs_on_board_dict = {} + for v in carbs_on_board_list: + aux = v.split(": ") + if 'quantity' in aux[0]: + aux[1] = aux[1].replace('g', '') + carbs_on_board_dict[aux[0]] = float(aux[1]) + carbs_on_board_dict["units"] = 'g' + else: + carbs_on_board_dict[aux[0]] = aux[1] + loop_report_dict["carbs_on_board"] = carbs_on_board_dict + except Exception as e: + logger.debug("handled error loop data manager - carbs_on_board") + logger.debug(e) - loop_report_dict["maximum_bolus"] = float( - re.search( - r"maximumBolus: Optional\((.+?)\), suspendThreshold", - loop_data_manager["settings"], - ).group(1) - ) + try: + last_temp_basal = loop_data_manager['lastTempBasal'] + if last_temp_basal != 'nil': + last_temp_basal = last_temp_basal.replace('Optional(LoopKit.DoseEntry(','').replace('))', '').replace(')', '') + last_temp_basal_list = last_temp_basal.split(",") + last_temp_basal_dict = {} + for v in last_temp_basal_list: + aux = v.split(": ") + if 'value' in aux[0]: + last_temp_basal_dict[aux[0]] = float(aux[1]) + else: + last_temp_basal_dict[aux[0]] = aux[1] + loop_report_dict["last_temp_basal"] = last_temp_basal_dict + except Exception as e: + logger.debug("handled error loop data manager - last_temp_basal") + logger.debug(e) - loop_report_dict["retrospective_correction_enabled"] = re.search( - "retrospectiveCorrectionEnabled: (.+?), retrospectiveCorrection", - loop_data_manager["settings"], - ).group(1) + try: + recommended_bolus = loop_data_manager['recommendedBolus'] + recommended_bolus = recommended_bolus.replace('Optional((recommendation: Loop.BolusRecommendation(', '').replace('))', '').replace(')', '') + recommended_bolus_list = recommended_bolus.split(",") + recommended_bolus_dict = {} + for v in recommended_bolus_list: + aux = v.split(": ") + if 'amount' in aux[0]: + recommended_bolus_dict[aux[0]] = float(aux[1]) + elif 'pendingInsulin' in aux[0]: + recommended_bolus_dict[aux[0]] = float(aux[1]) + else: + recommended_bolus_dict[aux[0]] = aux[1] + loop_report_dict["recommended_bolus"] = recommended_bolus_dict + except Exception as e: + logger.debug("handled error loop data manager - recommended_bolus") + logger.debug(e) - loop_report_dict["suspend_threshold"] = float( - re.search( - r"Loop.GlucoseThreshold\(value: (.+?), unit", + try: + recommended_temp_basal = loop_data_manager['recommendedTempBasal'] + if recommended_temp_basal.strip() != 'nil': + recommended_temp_basal = recommended_temp_basal.replace('Optional((recommendation: Loop.TempBasalRecommendation(', '').replace('))', '').replace(')', '') + recommended_temp_basal_list = recommended_temp_basal.split(",") + recommended_temp_basal_dict = {} + for v in recommended_temp_basal_list: + aux = v.split(": ") + if 'unitsPerHour' in aux[0]: + recommended_temp_basal_dict[aux[0]] = float(aux[1]) + elif 'duration' in aux[0]: + recommended_temp_basal_dict[aux[0]] = float(aux[1]) + else: + recommended_temp_basal_dict[aux[0]] = aux[1] + loop_report_dict["recommended_temp_basal"] = recommended_temp_basal_dict + except Exception as e: + logger.debug("handled error loop data manager - recommended_temp_basal") + logger.debug(e) + + try: + retrospective_glucose_effect = loop_data_manager['retrospectiveGlucoseEffect'] + retrospective_glucose_effect = retrospective_glucose_effect.replace("[", "").replace("]", "").replace( + "LoopKit.GlucoseEffect(", "") + values = retrospective_glucose_effect.split(")") + values.pop(len(values) - 1) + retrospective_glucose_effect_list = [] + for value in values: + items = value.split(",") + dictionary = {} + + for item in items: + if 'startDate' in item: + item = item.replace("startDate:", "").strip() + dictionary['startDate'] = item + elif "quantity" in item: + item = float(item.replace("quantity:", "").replace("mg/dL", "").strip()) + dictionary['quantity'] = item + dictionary['quantity_units'] = "mg/dL" + retrospective_glucose_effect_list.append(dictionary) + loop_report_dict["retrospective_glucose_effect"] = retrospective_glucose_effect_list + except Exception as e: + logger.debug("handled error loop data manager - retrospective_glucose_effect") + logger.debug(e) + + try: + glucose_momentum_effect = loop_data_manager['glucoseMomentumEffect'] + glucose_momentum_effect = glucose_momentum_effect.replace("[", "").replace("]", "").replace("LoopKit.GlucoseEffect(", "") + values = glucose_momentum_effect.split(")") + values.pop(len(values) - 1) + glucose_momentum_effect_list = [] + for value in values: + items = value.split(",") + dictionary = {} + + for item in items: + if 'startDate' in item: + item = item.replace("startDate:", "").strip() + dictionary['startDate'] = item + elif "quantity" in item: + item = float(item.replace("quantity:", "").replace("mg/dL", "").strip()) + dictionary['quantity'] = item + dictionary['quantity_units'] = "mg/dL" + glucose_momentum_effect_list.append(dictionary) + loop_report_dict["glucose_momentum_effect"] = glucose_momentum_effect_list + except Exception as e: + logger.debug("handled error loop data manager - glucose_momentum_effect") + logger.debug(e) + + try: + retrospective_glucose_change = loop_data_manager['retrospectiveGlucoseChange'] + retrospective_glucose_change = retrospective_glucose_change.replace("Optional((", "").replace("))", "") + split_index = retrospective_glucose_change.index('end') + start = retrospective_glucose_change[:split_index] + start = start.replace("start: LoopKit.StoredGlucoseSample(", "").replace(")", "") + start_list = start.split(",") + start_list.pop(len(start_list) - 1) + start_dict = {} + for v in start_list: + aux = v.split(": ") + start_dict[aux[0]] = aux[1] + + end = retrospective_glucose_change[split_index:] + end = end.replace("end: LoopKit.StoredGlucoseSample(", "").replace(")", "") + end_list= end.split(",") + end_dict = {} + for v in end_list: + aux = v.split(": ") + end_dict[aux[0]] = aux[1] + + retrospective_glucose_change_dict = {} + retrospective_glucose_change_dict['start_dict'] = start_dict + retrospective_glucose_change_dict['end_dict'] = end_dict + loop_report_dict["retrospective_glucose_change"] = retrospective_glucose_change_dict + except Exception as e: + logger.debug("handled error loop data manager - retrospective_glucose_change") + logger.debug(e) + + try: + retrospective_predicted_glucose = loop_data_manager['retrospectivePredictedGlucose'] + retrospective_predicted_glucose = retrospective_predicted_glucose.replace("[", "").replace("]", "").replace("LoopKit.PredictedGlucoseValue(", "") + values = retrospective_predicted_glucose.split(")") + values.pop(len(values) - 1) + retrospective_predicted_glucose_list = [] + for value in values: + items = value.split(",") + dictionary = {} + + for item in items: + if 'startDate' in item: + item = item.replace("startDate:", "").strip() + dictionary['startDate'] = item + elif "quantity" in item: + item = float(item.replace("quantity:", "").replace("mg/dL", "").strip()) + dictionary['quantity'] = item + dictionary['quantity_units'] = "mg/dL" + retrospective_predicted_glucose_list.append(dictionary) + + loop_report_dict["retrospective_predicted_glucose"] = retrospective_predicted_glucose_list + except Exception as e: + logger.debug("handled error loop data manager - retrospective_predicted_glucose") + logger.debug(e) + + try: + loop_report_dict["maximum_basal_rate"] = float( + re.search( + r"maximumBasalRatePerHour: Optional\((.+?)\), maximumBolus", + loop_data_manager["settings"], + ).group(1) + ) + except Exception as e: + logger.debug("handled error loop data manager") + logger.debug(e) + try: + loop_report_dict["maximum_bolus"] = float( + re.search( + r"maximumBolus: Optional\((.+?)\), suspendThreshold", + loop_data_manager["settings"], + ).group(1) + ) + + temp = re.search( + "retrospectiveCorrectionEnabled: (.+?), retrospectiveCorrection", loop_data_manager["settings"], - ).group(1) - ) + ) + if temp: + loop_report_dict["retrospective_correction_enabled"] = temp.group(1) - start_index = loop_data_manager["settings"].index("suspendThreshold") - end_index = loop_data_manager["settings"].index( - "retrospectiveCorrectionEnabled" - ) - substr = loop_data_manager["settings"][start_index:end_index] - - unit = substr.index("unit") - start_index = unit + 6 - check = "" - while check != ")": - unit += 1 - check = substr[unit] - loop_report_dict["suspend_threshold_unit"] = substr[start_index:unit] - - start_index = loop_data_manager["settings"].index("overrideRanges") - end_index = loop_data_manager["settings"].index( - "maximumBasalRatePerHour" + loop_report_dict["suspend_threshold"] = float( + re.search( + r"Loop.GlucoseThreshold\(value: (.+?), unit", + loop_data_manager["settings"], + ).group(1) + ) + except Exception as e: + logger.debug("handled error LOOP_DATA_MANAGER - retrospective_correction_enabled") + logger.debug(e) + + try: + start_index = loop_data_manager["settings"].index("suspendThreshold") + end_index = loop_data_manager["settings"].index( + "retrospectiveCorrectionEnabled" + ) + substr = loop_data_manager["settings"][start_index:end_index] + + unit = substr.index("unit") + start_index = unit + 6 + check = "" + while check != ")": + unit += 1 + check = substr[unit] + loop_report_dict["suspend_threshold_unit"] = substr[start_index:unit] + except Exception as e: + logger.debug("handled error LOOP_DATA_MANAGER - suspend_threshold_unit") + logger.debug(e) + + try: + glucoseTargetRangeSchedule_index = loop_data_manager["settings"].index("glucoseTargetRangeSchedule") + temp_str = loop_data_manager["settings"][glucoseTargetRangeSchedule_index:] + items_index = temp_str.index("items") + temp_str = temp_str[items_index:] + temp_str = temp_str.replace('items":', '') + values = [] + + while True: + if "]]" in temp_str: + end_index = temp_str.index("]]") + parse_string = temp_str[:end_index + 2] + item = self._parse_item(parse_string) + if item: + values.append(item) + else: + break + temp_str = temp_str[end_index+3:] + else: + break + + loop_report_dict["correction_range_schedule"] = values + + except Exception as e: + print("correction_range_schedule missing in file : " + file_name) + logger.debug("handled error LOOP_DATA_MANAGER - glucose_target_range_schedule") + logger.debug(e) + + try: + start_index = loop_data_manager["settings"].index("overrideRanges") + end_index = loop_data_manager["settings"].index( + "maximumBasalRatePerHour" + ) + substr = loop_data_manager["settings"][start_index:end_index] + + workout = substr.index("workout") + start_index = workout + 10 + check = "" + while check != "]": + workout += 1 + check = substr[workout] + workout_list = eval( + substr[start_index : workout + 1] + ) + loop_report_dict["override_range_workout_minimum"] = workout_list[0] + loop_report_dict["override_range_workout_maximum"] = workout_list[1] + + except Exception as e: + logger.debug("handled error LOOP_DATA_MANAGER - override_range_workout") + logger.debug(e) + + try: + premeal = substr.index("preMeal") + start_index = premeal + 10 + check = "" + + while check != "]": + premeal += 1 + check = substr[premeal] + + + premeal_list = eval( + substr[start_index : premeal + 1] + ) + + loop_report_dict["override_range_premeal_minimum"] = premeal_list[0] + loop_report_dict["override_range_premeal_maximum"] = premeal_list[1] + + except Exception as e: + logger.debug("preMeal is not in loop data") + logger.debug(e) + + except Exception as e: + logger.debug("handled error loop data manager") + logger.debug(e) + + if Sections.INSULIN_COUNTERACTION_EFFECTS in dict: + try: + ice_list = dict[Sections.INSULIN_COUNTERACTION_EFFECTS] + ice_list.pop(0) + ice_list.pop(len(ice_list) - 1) + temp_list = [] + for items in ice_list: + start, end, value = items.split(",") + temp_dict = { + "start_time": start, + "end_time": end, + "value": float(value), + "units": "mg/dL/min", + } + temp_list.append(temp_dict) + loop_report_dict["insulin_counteraction_effects"] = temp_list + + except Exception as e: + logger.debug("handled error INSULIN_COUNTERACTION_EFFECTS") + logger.debug(e) + + if Sections.RETROSPECTIVE_GLUCOSE_DISCREPANCIES_SUMMED in dict: + try: + local_list = dict[Sections.RETROSPECTIVE_GLUCOSE_DISCREPANCIES_SUMMED] + local_list.pop(0) + local_list.pop(len(local_list) - 1) + temp_list = [] + for items in local_list: + start, end, value = items.split(",") + temp_dict = { + "start_time": start, + "end_time": end, + "value": float(value), + "units": "mg/dL", + } + temp_list.append(temp_dict) + + loop_report_dict[ + "retrospective_glucose_discrepancies_summed" + ] = temp_list + + except Exception as e: + logger.debug("handled error RETROSPECTIVE_GLUCOSE_DISCREPANCIES") + logger.debug(e) + + if Sections.GET_RESERVOIR_VALUES in dict: + try: + local_list = dict[Sections.GET_RESERVOIR_VALUES] + local_list.pop(0) + local_list.pop(len(local_list) - 1) + temp_list = [] + for items in local_list: + start, value = items.split(",") + + temp_dict = { + "start_time": start, + "value": float(value), + "units": "unitVolume", + } + temp_list.append(temp_dict) + + loop_report_dict["get_reservoir_values"] = temp_list + + except Exception as e: + logger.debug("handled error GET_RESERVOIR_VALUES") + logger.debug(e) + + if Sections.PREDICTED_GLUCOSE in dict: + try: + local_list = dict[Sections.PREDICTED_GLUCOSE] + local_list.pop(0) + local_list.pop(len(local_list) - 1) + temp_list = [] + for items in local_list: + start, value = items.split(",") + temp_dict = { + "start_time": start, + "value": float(value), + "units": "mg/dL", + } + temp_list.append(temp_dict) + + loop_report_dict["predicted_glucose"] = temp_list + + except Exception as e: + logger.debug("handled error PREDICTED_GLUCOSE") + logger.debug(e) + + if Sections.RETROSPECTIVE_GLUCOSE_DISCREPANCIES in dict: + try: + local_list = dict[Sections.RETROSPECTIVE_GLUCOSE_DISCREPANCIES] + local_list.pop(0) + local_list.pop(len(local_list) - 1) + temp_list = [] + + for items in local_list: + start, value = items.split(",") + temp_dict = { + "start_time": start, + "value": float(value), + "units": "mg/dL", + } + temp_list.append(temp_dict) + + loop_report_dict["retrospective_glucose_discrepancies"] = temp_list + + except Exception as e: + logger.debug("handled error RETROSPECTIVE_GLUCOSE_DISCREPANCIES") + logger.debug(e) + + if Sections.CARB_EFFECT in dict: + try: + local_list = dict[Sections.CARB_EFFECT] + local_list.pop(0) + local_list.pop(len(local_list) - 1) + temp_list = [] + for items in local_list: + start, value = items.split(",") + temp_dict = { + "start_time": start, + "value": float(value), + "units": "mg/dL", + } + temp_list.append(temp_dict) + loop_report_dict["carb_effect"] = temp_list + + except Exception as e: + logger.debug("handled error CARB_EFFECT") + logger.debug(e) + + if Sections.INSULIN_EFFECT in dict: + try: + local_list = dict[Sections.INSULIN_EFFECT] + local_list.pop(0) + local_list.pop(len(local_list) - 1) + temp_list = [] + for item in local_list: + start, value = item.split(",") + temp_dict = { + "start_time": start, + "value": float(value), + "units": "mg/dL", + } + temp_list.append(temp_dict) + + loop_report_dict["insulin_effect"] = temp_list + + except Exception as e: + logger.debug("handled error INSULIN_EFFECT") + logger.debug(e) + + if Sections.GET_NORMALIZED_PUMP_EVENT_DOSE in dict: + try: + local_list = dict[Sections.GET_NORMALIZED_PUMP_EVENT_DOSE] + temp_list = [] + for item in local_list: + record_dict = {} + item = item.replace("DoseEntry(", "") + item = item.replace(item[len(item) - 1], "") + item = item.replace("Optional(", "") + key_value = item.split(", ") + + for v in key_value: + aux = v.split(": ") + if "scheduledBasalRate" in v: + if "IU/hr" in aux[1]: + aux[1] = float(aux[1].replace("IU/hr", "").strip()) + + record_dict[aux[0]] = aux[1] + record_dict["scheduledBasalRate"] = "IU/hr" + temp_list.append(record_dict) + + loop_report_dict["get_normalized_pump_event_dose"] = temp_list + except Exception as e: + logger.debug("handled error GET_NORMALIZED_PUMP_EVENT_DOSE") + logger.debug(e) + + if Sections.GET_NORMALIZED_DOSE_ENTRIES in dict: + try: + local_list = dict[Sections.GET_NORMALIZED_DOSE_ENTRIES] + temp_list = [] + for item in local_list: + record_dict = {} + item = item.replace("DoseEntry(", "") + item = item.replace(item[len(item) - 1], "") + item = item.replace("Optional(", "") + key_value = item.split(", ") + + for v in key_value: + aux = v.split(": ") + record_dict[aux[0]] = aux[1] + temp_list.append(record_dict) + + loop_report_dict["get_normalized_dose_entries"] = temp_list + + except Exception as e: + logger.debug("handled error GET_NORMALIZED_DOSE_ENTRIES") + logger.debug(e) + + if Sections.CACHED_DOSE_ENTRIES in dict: + try: + local_list = dict[Sections.CACHED_DOSE_ENTRIES] + temp_list = [] + for item in local_list: + record_dict = {} + item = item.replace("DoseEntry(", "") + item = item.replace(item[len(item) - 1], "") + item = item.replace("Optional(", "") + key_value = item.split(", ") + + for v in key_value: + aux = v.split(": ") + if 'scheduledBasalRate' in aux[0] and aux[1] != 'nil': + val = aux[1].replace('IU/hr', '') + record_dict[aux[0]] = float(val) + record_dict['scheduledBasalRateUnits'] = 'IU/hr' + else: + record_dict[aux[0]] = aux[1] + temp_list.append(record_dict) + + loop_report_dict["cached_dose_entries"] = temp_list + except Exception as e: + logger.debug("handled error CACHED_DOSE_ENTRIES") + logger.debug(e) + + if Sections.GET_PUMP_EVENT_VALUES in dict: + try: + items = dict[Sections.GET_PUMP_EVENT_VALUES] + get_pump_even_values_list = [] + for temp in items: + + get_pump_even_values_dict = {} + + value = "rate" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "timeOffset" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "index" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "isLeapMonth" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "timestamp" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "rawData" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "length" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "raw" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "objectIDURL" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "isUploaded" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + #todo: need to parse this out more + value = "syncIdentifier" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(")),") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "description" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "unit" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "value" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "endDate" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "startDate" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "type" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + value = "type" + try: + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + try: + value = "persistedDate" + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value) + 1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + + try: + value = "date" + start_index = temp.index(value) + value_temp = temp[start_index:] + value_temp = value_temp.replace('"', '') + last_index = value_temp.index(",") + get_pump_even_values_dict[value] = value_temp[len(value)+1:last_index] + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES --" + value) + logger.debug(e) + get_pump_even_values_list.append(get_pump_even_values_dict) + + loop_report_dict["get_pump_event_values"] = get_pump_even_values_list + + except Exception as e: + logger.debug("handled error GET_PUMP_EVENT_VALUES") + logger.debug(e) + + if Sections.MESSAGE_LOG in dict: + local_list = dict[Sections.MESSAGE_LOG] + loop_report_dict["message_log"] = local_list + + if Sections.G5_CGM_MANAGER in dict: + try: + temp_dict = dict[Sections.G5_CGM_MANAGER] + cgmblekit = temp_dict["latestReading"] + cgmblekit = cgmblekit.replace( + "Optional(CGMBLEKit.Glucose(glucoseMessage: CGMBLEKit.GlucoseSubMessage(", + "", ) - substr = loop_data_manager["settings"][start_index:end_index] - - workout = substr.index("workout") - start_index = workout + 10 - check = "" - while check != "]": - workout += 1 - check = substr[workout] - loop_report_dict["override_range_workout"] = eval( - substr[start_index : workout + 1] + cgmblekit = cgmblekit.replace("))", "") + + split_list = cgmblekit.split(",") + + dictionary_complete = {} + + if "transmitter" in temp_dict: + dictionary_complete["transmitter"] = temp_dict["transmitter"] + + if "providesBLEHeartbeat" in temp_dict: + dictionary_complete["providesBLEHeartbeat"] = temp_dict[ + "providesBLEHeartbeat" + ] + dictionary = {} + timeMessage = {} + glucoseMessage = {} + latestReading = {} + for item in split_list: + if "timeMessage:" in item: + item = item.replace( + "timeMessage: CGMBLEKit.TransmitterTimeRxMessage(", "" + ) + keyvalue = item.split(":") + timeMessage["status"] = keyvalue[1].strip("\"'") + + else: + item = item.replace(")", "") + keyvalue = item.split(":") + m = keyvalue[0].strip("'") + m = m.replace('"', "").strip() + dictionary[m] = keyvalue[1].strip("\"'") + + glucoseMessage["timestamp"] = dictionary["timestamp"] + glucoseMessage["glucoseIsDisplayOnly"] = dictionary[ + "glucoseIsDisplayOnly" + ] + glucoseMessage["glucose"] = dictionary["glucose"] + glucoseMessage["trend"] = dictionary["trend"] + + timeMessage["currentTime"] = dictionary["currentTime"] + timeMessage["sessionStartTime"] = dictionary["sessionStartTime"] + + latestReading["glucoseMessage"] = glucoseMessage + latestReading["timeMessage"] = timeMessage + latestReading["transmitterID"] = dictionary["transmitterID"] + latestReading["status"] = dictionary["status"] + latestReading["sessionStartDate"] = dictionary["sessionStartDate"] + latestReading["lastCalibration"] = dictionary["lastCalibration"] + latestReading["readDate"] = dictionary["readDate"] + + dictionary_complete["latestReading"] = latestReading + + loop_report_dict["g5_cgm_manager"] = dictionary_complete + except Exception as e: + logger.debug("handled error G5_CGM_MANAGER") + logger.debug(e) + + if Sections.DEX_CGM_MANAGER in dict: + try: + temp_dict = dict[Sections.DEX_CGM_MANAGER] + temp_string = temp_dict["latestBackfill"] + temp_string = temp_string.replace( + " Optional(ShareClient.ShareGlucose(", "" ) + temp_string = temp_string.replace("))", "") + temp_list = temp_string.split(",") + dictionary = {} + for item in temp_list: + self.add_to_dictionary(dictionary, item) - premeal = substr.index("preMeal") - start_index = premeal + 10 - check = "" + latestBackfill = {} + latestBackfill["latestBackfill"] = dictionary - while check != "]": - premeal += 1 - check = substr[premeal] - loop_report_dict["override_range_premeal"] = eval( - substr[start_index : premeal + 1] + loop_report_dict["dex_cgm_manager"] = latestBackfill + + except Exception as e: + logger.debug("handled error DEX_CGM_MANAGER") + logger.debug(e) + + if Sections.STATUS_EXTENSION_DATA_MANAGER in dict: + try: + status_extension_data_manager = dict[ + Sections.STATUS_EXTENSION_DATA_MANAGER + ] + status_extension_context_dict = {} + + predicted_glucose = {} + + temp = status_extension_data_manager["statusExtensionContext"] + temp = temp.replace("Optional([", "") + values_index = temp.index("values") + values_temp = temp[values_index:] + last_index = values_temp.index("]") + values = values_temp[:last_index+1] + values = values.replace(": [", "") + values = values.replace("values", "") + values = values.replace("]", "") + values = values.replace(', "', "") + values = values.replace('"', "") + values = values.replace(' ', "") + values_list = values.split(",") + predicted_glucose["values"] = values_list + + try: + sensor_index = temp.index("sensor") + sensor_temp = temp[sensor_index:] + last_index = sensor_temp.index("]") + sensor = sensor_temp[9:last_index+1] + sensor = sensor.replace('"', "") + sensor = sensor.replace('[', "").replace(']', "") + sensor = sensor.strip() + temp_list = sensor.split(",") + value_dict = {} + for value in temp_list: + val = value.split(":") + value_dict[val[0]] = val[1] + '"85.732078872579' + status_extension_context_dict["sensor"] = value_dict + except Exception as e: + logger.debug("handled error STATUS_EXTENSION_DATA_MANAGER - sensor") + logger.debug(e) + + + try: + netBasal_index = temp.index("netBasal") + netBasal_temp = temp[netBasal_index:] + last_index = netBasal_temp.index("]") + netBasal = netBasal_temp[9:last_index+1] + netBasal = netBasal.replace('[', "").replace(']', "") + netBasal = netBasal.strip() + temp_list = netBasal.split(",") + value_dict = {} + for value in temp_list: + val = value.split(":") + value_dict[val[0]] = val[1] + status_extension_context_dict["netBasal"] = value_dict + except Exception as e: + logger.debug("handled error STATUS_EXTENSION_DATA_MANAGER - netBasal") + logger.debug(e) + + try: + version_index = temp.index("version") + version_temp = temp[version_index:] + last_index = version_temp.index(",") + status_extension_context_dict["version"] = version_temp[10:last_index] + except Exception as e: + logger.debug("handled error STATUS_EXTENSION_DATA_MANAGER - version") + logger.debug(e) + + try: + unit_index = temp.index("unit") + unit_temp = temp[unit_index:] + unit_temp = unit_temp.replace('"', '') + last_index = unit_temp.index(",") + predicted_glucose["unit"] = unit_temp[6:last_index] + except Exception as e: + logger.debug("handled error STATUS_EXTENSION_DATA_MANAGER - unit") + logger.debug(e) + + try: + interval_index = temp.index("interval") + interval_temp = temp[interval_index:] + interval_temp = interval_temp.replace('"', '') + last_index = interval_temp.index(",") + interval_temp = interval_temp[9:last_index].replace("]", "") + predicted_glucose["interval"] = float(interval_temp) + except Exception as e: + logger.debug("handled error STATUS_EXTENSION_DATA_MANAGER - interval") + logger.debug(e) + + try: + startDate_index = temp.index("startDate") + startDate_temp = temp[startDate_index:] + startDate_temp = startDate_temp.replace('"', '') + last_index = startDate_temp.index(",") + predicted_glucose["startDate"] = startDate_temp[10:last_index] + except Exception as e: + logger.debug("handled error STATUS_EXTENSION_DATA_MANAGER - startDate") + logger.debug(e) + + status_extension_context_dict["predictedGlucose"] = predicted_glucose + + try: + batteryPercentage_index = temp.index("batteryPercentage") + batteryPercentage_temp = temp[batteryPercentage_index:] + batteryPercentage_temp = batteryPercentage_temp.replace('"', '') + last_index = batteryPercentage_temp.index(",") + status_extension_context_dict["batteryPercentage"] = float(batteryPercentage_temp[18:last_index].strip()) + except Exception as e: + logger.debug("handled error STATUS_EXTENSION_DATA_MANAGER - batteryPercentage") + logger.debug(e) + + try: + lastLoopCompleted_index = temp.index("lastLoopCompleted") + lastLoopCompleted_temp = temp[lastLoopCompleted_index:] + lastLoopCompleted_temp = lastLoopCompleted_temp.replace('"', '') + last_index = lastLoopCompleted_temp.index(",") + status_extension_context_dict["lastLoopCompleted"] = lastLoopCompleted_temp[18:last_index] + except Exception as e: + logger.debug("handled error STATUS_EXTENSION_DATA_MANAGER - lastLoopCompleted") + logger.debug(e) + + + loop_report_dict["status_extension_data_manager"] = status_extension_context_dict + except Exception as e: + logger.debug("handled error STATUS_EXTENSION_DATA_MANAGER") + logger.debug(e) + + if Sections.RILEY_LINK_PUMP_MANAGER in dict: + try: + loop_report_dict["riley_link_pump_manager"] = dict[ + Sections.RILEY_LINK_PUMP_MANAGER + ] + except Exception as e: + logger.debug("handled error RILEY_LINK_PUMP_MANAGER") + logger.debug(e) + + if Sections.RILEY_LINK_DEVICE_MANAGER in dict: + try: + loop_report_dict["riley_link_device_manager"] = dict[ + Sections.RILEY_LINK_DEVICE_MANAGER + ] + except Exception as e: + logger.debug("handled error RILEY_LINK_DEVICE_MANAGER") + logger.debug(e) + + if Sections.PERSISTENCE_CONTROLLER in dict: + try: + loop_report_dict["persistence_controller"] = dict[ + Sections.PERSISTENCE_CONTROLLER + ] + except Exception as e: + logger.debug("handled error PERSISTENCE_CONTROLLER") + logger.debug(e) + + if Sections.INSULIN_DELIVERY_STORE in dict: + try: + loop_report_dict["insulin_delivery_store"] = dict[ + Sections.INSULIN_DELIVERY_STORE + ] + except Exception as e: + logger.debug("handled error INSULIN_DELIVERY_STORE") + logger.debug(e) + + if Sections.CACHED_CARB_ENTRIES in dict: + try: + temp_list = [] + items = dict[Sections.CACHED_CARB_ENTRIES] + items.pop(0) + items.pop(len(items) - 1) + columns = [ + "sampleUUID", + "syncIdentifier", + "syncVersion", + "startDate", + "quantity", + "foodType", + "absorptionTime", + "createdByCurrentApp", + "externalID", + "isUploaded", + ] + for item in items: + empty, sampleUUID, syncIdentifier, syncVersion, startDate, quantity, foodType, absorptionTime, createdByCurrentApp, externalID, isUploaded = item.split( + "," + ) + if isinstance(quantity, str): + quantity = float(quantity.replace("g", "")) + + record_dict = { + "sampleUUID": sampleUUID, + "syncIdentifier": syncIdentifier, + "syncVersion": syncVersion, + "startDate": startDate, + "quantity": quantity, + "quantity_units": "g", + "foodType": foodType, + "absorptionTime": absorptionTime, + "createdByCurrentApp": createdByCurrentApp, + "externalID": externalID, + "isUploaded": isUploaded, + } + temp_list.append(record_dict) + loop_report_dict["cached_carb_entries"] = temp_list + except Exception as e: + logger.debug("handled error CACHED_CARB_ENTRIES") + logger.debug(e) + + if Sections.GLUCOSE_STORE in dict: + try: + temp_dict = dict[Sections.GLUCOSE_STORE] + latest_glucose_value = temp_dict["latestGlucoseValue"] + latest_glucose_value = latest_glucose_value.replace( + "Optional(LoopKit.StoredGlucoseSample(", "" ) + latest_glucose_value = latest_glucose_value.replace("))", "") + latest_glucose_value = latest_glucose_value.split(",") - return loop_report_dict + dictionary = {} + for item in latest_glucose_value: + if "startDate" in item: + value = item.replace("startDate: ", "") + dictionary["startDate"] = value + elif "quantity" in item: + value = item.replace("quantity: ", "") + if "mg/dL" in value: + value = float(value.replace("mg/dL", "").strip()) + dictionary["quantity"] = value + dictionary["quantity_units"] = "mg/dL" + else: + self.add_to_dictionary(dictionary, item) - except: - print("handled error loop data manager") + temp_dict["latestGlucoseValue"] = dictionary + loop_report_dict["glucose_store"] = temp_dict + + except Exception as e: + logger.debug("handled error GLUCOSE_STORE") + logger.debug(e) + + if Sections.CACHED_GLUCOSE_SAMPLES in dict: + try: + local_list = dict[Sections.CACHED_GLUCOSE_SAMPLES] + temp_list = [] + for item in local_list: + record_dict = {} + item = item.replace("StoredGlucoseSample(", "") + item = item.replace(item[len(item) - 1], "") + key_value = item.split(", ") + + for v in key_value: + aux = v.split(": ") + if aux[0] == "quantity": + if isinstance(aux[1], str) and "mg/dL" in aux[1]: + aux[1] = float(aux[1].replace("mg/dL", "")) + record_dict[aux[0]] = aux[1] + record_dict["quantity_units"] = "mg/dL" + temp_list.append(record_dict) + + loop_report_dict["cached_glucose_samples"] = temp_list + except Exception as e: + logger.debug("handled error CACHED_GLUCOSE_SAMPLES") + logger.debug(e) + + return loop_report_dict + + def add_to_dictionary(self, dictionary, item): + keyvalue = item.split(":") + m = keyvalue[0].strip("'") + if m.isdigit(): + if "." in m: + m = float(m) + else: + m = int(m) + + m = m.replace("]", "").strip() + dictionary[m] = keyvalue[1].strip("\"'").replace("]", "") def __set_pump_manager_type( self, loop_report_dict, minimed_pump_manager, omnipod_pump_manager ): if minimed_pump_manager: loop_report_dict["pump_manager_type"] = "minimed" - loop_report_dict["pump_model"] = minimed_pump_manager["pumpModel"].strip() + try: + loop_report_dict["pump_model"] = minimed_pump_manager[ + "pumpModel" + ].strip() + except Exception as e: + logger.debug("pump model in minimed_pump_manager is not available") + logger.debug(e) elif omnipod_pump_manager: loop_report_dict["pump_manager_type"] = "omnipod" - loop_report_dict["pm_version"] = omnipod_pump_manager["pmVersion"].strip() - loop_report_dict["pi_version"] = omnipod_pump_manager["piVersion"].strip() + try: + loop_report_dict["pm_version"] = omnipod_pump_manager[ + "pmVersion" + ].strip() + loop_report_dict["pi_version"] = omnipod_pump_manager[ + "piVersion" + ].strip() + except Exception as e: + logger.debug( + "pm version or pi version in omnipod_pump_manager is not available" + ) + logger.debug(e) else: loop_report_dict["pump_manager_type"] = "unknown" + + + def _parse_item(self, item): + item_dict = None + if "startTime" in item: + item = item.replace('[', '').replace('"', "").replace(']', "") + items_values = item.split(",") + item_list = [] + + if 'startTime' not in items_values[0] and 'value:' not in items_values[0]: + items_values.pop(0) + + if 'value:' in items_values[0]: + item_list = [float(items_values[0].replace('value:', '').strip()), + float(items_values[1].strip())] + startTime = items_values[2].replace('startTime:', '').strip() + else: + startTime = items_values[0].replace('startTime:', '').strip() + item_list = [float(items_values[1].replace('value:', '').strip()), + float(items_values[2].strip())] + + item_dict = {'startTime': startTime, + 'value': item_list} + return item_dict diff --git a/projects/parsers/loop_report_parser.py b/projects/parsers/loop_report_parser.py index 8c3d8a9b..8ae79a48 100644 --- a/projects/parsers/loop_report_parser.py +++ b/projects/parsers/loop_report_parser.py @@ -7,18 +7,52 @@ * <> license: BSD-2-Clause """ +import os class Sections: + G5_CGM_MANAGER = "g5_cgm_manager" + DEX_CGM_MANAGER = "dex_cgm_manager" + RILEY_LINK_PUMP_MANAGER = "riley_link_pump_manager" + RILEY_LINK_DEVICE_MANAGER = "riley_link_device_manager" + PERSISTENCE_CONTROLLER = "persistence_controller" + GLUCOSE_STORE = "glucose_store" + CACHED_GLUCOSE_SAMPLES = "cached_glucose_samples" + CACHED_CARB_ENTRIES = "cached_carb_entries" + INSULIN_DELIVERY_STORE = "insulin_delivery_store" LOOP_VERSION = "loop_version" DEVICE_DATA_MANAGER = "device_data_manager" RILEY_LINK_DEVICE = "riley_link_device" CARB_STORE = "carb_store" DOSE_STORE = "dose_store" MINIMED_PUMP_MANAGER = "minimed_pump_manager" - OMNIPOD_PUMP_MAANGER = "omnipod_pump_manager" + OMNIPOD_PUMP_MANAGER = "omnipod_pump_manager" WATCH_DATA_MANAGER = "watch_data_manager" LOOP_DATA_MANAGER = "loop_data_manager" + GET_RESERVOIR_VALUES = "get_reservoir_values" + PREDICTED_GLUCOSE = "predicted_glucose" + GET_PUMP_EVENT_VALUES = "get_pump_event_values" + POD_COMMS = "pod_comms" + MESSAGE_LOG = "message_log" + POD_INFO_FAULT_EVENT = "pod_info_fault_event" + OMNIPOD_PUMP_MANAGER_STATE = "omnipod_pump_manager_state" + POD_STATE = "pod_state" + INSULIN_COUNTERACTION_EFFECTS = "insulin_counteraction_effects" + RETROSPECTIVE_GLUCOSE_DISCREPANCIES_SUMMED = ( + "retrospective_glucose_discrepancies_summed" + ) + RETROSPECTIVE_GLUCOSE_DISCREPANCIES = "retrospective_glucose_discrepancies" + CARB_EFFECT = "carb_effect" + INSULIN_EFFECT = "insulin_effect" + GET_NORMALIZED_PUMP_EVENT_DOSE = "get_normalized_pump_event_dose" + GET_NORMALIZED_DOSE_ENTRIES = "get_normalized_dose_entries" + CACHED_DOSE_ENTRIES = "cached_dose_entries" + STATUS_EXTENSION_DATA_MANAGER = "status_extension_data_manager" + + """ + #not sure this one is used + deleted_carb_entries + """ def _split_key_value(line, separator): @@ -28,228 +62,383 @@ def _split_key_value(line, separator): return key, value -def parse_loop_report(dataPathAndName): +def parse_loop_report(path: str, file_name: str): current_section = "" all_sections = {} + new_line = False + dataPathAndName = os.path.join(path, file_name) - with open(dataPathAndName, "r") as reader: - for line in reader: - if line.startswith("Generated:"): - key, value = _split_key_value(line, ":") - generated = {} - generated[key] = value - all_sections["generated"] = generated - new_line = False - - elif line.startswith("Loop"): - key, value = _split_key_value(line, ":") - loop = {} - loop["loop_version"] = key - all_sections["loop_version"] = loop - new_line = False - - elif line.startswith("## DeviceDataManager"): - device_data_manager = {} - current_section = "device_data_manager" - all_sections["device_data_manager"] = device_data_manager - new_line = False - - elif line.startswith("## G5CGMManager"): - g5_cgm_manager = {} - current_section = "g5_cgm_manager" - all_sections["g5_cgm_manager"] = g5_cgm_manager - new_line = False - - elif line.startswith("## DexCGMManager"): - dex_cgm_manager = {} - current_section = "dex_cgm_manager" - all_sections["dex_cgm_manager"] = dex_cgm_manager - new_line = False - - elif line.startswith("## MinimedPumpManager"): - minimed_pump_manager = {} - current_section = "minimed_pump_manager" - all_sections["minimed_pump_manager"] = minimed_pump_manager - new_line = False - - elif line.startswith("## RileyLinkPumpManager"): - riley_link_pump_manager = {} - current_section = "riley_link_pump_manager" - all_sections["riley_link_pump_manager"] = riley_link_pump_manager - new_line = False - - elif line.startswith("## RileyLinkDeviceManager"): - riley_link_device_manager = {} - current_section = "riley_link_device_manager" - all_sections["riley_link_device_manager"] = riley_link_device_manager - new_line = False - - elif line.startswith("## RileyLinkDevice"): - riley_link_device = {} - current_section = "riley_link_device" - all_sections["riley_link_device"] = riley_link_device - new_line = False - - elif line.startswith("## StatusExtensionDataManager"): - status_extension_data_manager = {} - current_section = "status_extension_data_manager" - all_sections[ - "status_extension_data_manager" - ] = status_extension_data_manager - new_line = False - - elif line.startswith("## LoopDataManager"): - loop_data_manager = {} - current_section = "loop_data_manager" - all_sections["loop_data_manager"] = loop_data_manager - new_line = False - - elif line.startswith("insulinCounteractionEffects:"): - insulin_counteraction_effects = [] - current_section = "insulin_counteraction_effects" - all_sections[ - "insulin_counteraction_effects" - ] = insulin_counteraction_effects - new_line = False - - elif line.startswith("predictedGlucose:"): - predicted_glucose = [] - current_section = "predicted_glucose" - all_sections["predicted_glucose"] = predicted_glucose - new_line = False - - elif line.startswith("retrospectivePredictedGlucose"): - retrospective_predicted_glucose = {} - current_section = "retrospective_predicted_glucose" - all_sections[ - "retrospective_predicted_glucose" - ] = retrospective_predicted_glucose - new_line = False - - elif line.startswith("cacheStore: ## PersistenceController"): - persistence_controller = {} - current_section = "persistence_controller" - all_sections["persistence_controller"] = persistence_controller - new_line = False - - elif line.startswith("## GlucoseStore"): - glucose_store = {} - current_section = "glucose_store" - all_sections["glucose_store"] = glucose_store - new_line = False - - elif line.startswith("### cachedGlucoseSamples"): - cached_glucose_samples = {} - current_section = "cached_glucose_samples" - all_sections["cached_glucose_samples"] = cached_glucose_samples - new_line = False - - elif line.startswith("## CarbStore"): - carb_store = {} - current_section = "carb_store" - all_sections["carb_store"] = carb_store - new_line = False - - elif line.startswith("cachedCarbEntries:"): - cached_carb_entries = {} - current_section = "cached_carb_entries" - all_sections["cached_carb_entries"] = cached_carb_entries - new_line = False - - elif line.startswith("deletedCarbEntries:"): - deleted_carb_entries = {} - current_section = "deleted_carb_entries" - all_sections["deleted_carb_entries"] = deleted_carb_entries - new_line = False - - elif line.startswith("## DoseStore"): - dose_store = {} - current_section = "dose_store" - all_sections["dose_store"] = dose_store - new_line = False - - elif line.startswith("### getReservoirValues"): - get_reservoir_values = [] - current_section = "get_reservoir_values" - all_sections["get_reservoir_values"] = get_reservoir_values - new_line = False - - elif line.startswith("### getPumpEventValues"): - get_pump_event_values = [] - current_section = "get_pump_event_values" - all_sections["get_pump_event_values"] = get_pump_event_values - new_line = False - - elif line.startswith( - "### getNormalizedPumpEventDoseEntriesOverlaidWithBasalEntries" - ): - normalized_pump_event_dose = {} - current_section = "normalized_pump_event_dose" - all_sections["normalized_pump_event_dose"] = normalized_pump_event_dose - new_line = False - - elif line.startswith("### InsulinDeliveryStore"): - insulin_delivery_store = {} - current_section = "insulin_delivery_store" - all_sections["insulin_delivery_store"] = insulin_delivery_store - new_line = False - - elif line.startswith("## WatchDataManager"): - watch_data_manager = {} - current_section = "watch_data_manager" - all_sections["watch_data_manager"] = watch_data_manager - new_line = False - - elif line.startswith("## OmnipodPumpManager"): - omnipod_pump_manager = {} - current_section = "omnipod_pump_manager" - all_sections["omnipod_pump_manager"] = omnipod_pump_manager - new_line = False - - elif line.startswith("\n"): - new_line = True + try: - elif ( - line.startswith("#") or line.startswith("##") or line.startswith("###") - ): - print(f"UNHANDLED SECTION: {line}") - new_line = False + with open(dataPathAndName, "r") as reader: + for line in reader: - else: - if ( - current_section == "insulin_counteraction_effects" - or current_section == "get_reservoir_values" - or current_section == "predicted_glucose" - or current_section == "get_pump_event_values" + if line.startswith("Generated:"): + key, value = _split_key_value(line, ":") + generated = {} + generated[key] = value + all_sections["generated"] = generated + new_line = False + + elif line.startswith("Loop"): + key, value = _split_key_value(line, ":") + loop = {} + loop["loop_version"] = key + all_sections["loop_version"] = loop + new_line = False + + elif line.startswith("## DeviceDataManager"): + device_data_manager = {} + current_section = "device_data_manager" + all_sections["device_data_manager"] = device_data_manager + new_line = False + + elif line.startswith("## G5CGMManager"): + g5_cgm_manager = {} + current_section = "g5_cgm_manager" + all_sections["g5_cgm_manager"] = g5_cgm_manager + new_line = False + + elif line.startswith("## DexCGMManager"): + dex_cgm_manager = {} + current_section = "dex_cgm_manager" + all_sections["dex_cgm_manager"] = dex_cgm_manager + new_line = False + + elif line.startswith("## MinimedPumpManager"): + minimed_pump_manager = {} + current_section = "minimed_pump_manager" + all_sections["minimed_pump_manager"] = minimed_pump_manager + new_line = False + + elif line.startswith("## RileyLinkPumpManager"): + riley_link_pump_manager = {} + current_section = "riley_link_pump_manager" + all_sections["riley_link_pump_manager"] = riley_link_pump_manager + new_line = False + + elif line.startswith("## RileyLinkDeviceManager"): + riley_link_device_manager = {} + current_section = "riley_link_device_manager" + all_sections["riley_link_device_manager"] = riley_link_device_manager + new_line = False + + elif line.startswith("## RileyLinkDevice"): + riley_link_device = {} + current_section = "riley_link_device" + all_sections["riley_link_device"] = riley_link_device + new_line = False + + elif line.startswith("## StatusExtensionDataManager"): + status_extension_data_manager = {} + current_section = "status_extension_data_manager" + all_sections[ + "status_extension_data_manager" + ] = status_extension_data_manager + new_line = False + + elif line.startswith("## LoopDataManager"): + loop_data_manager = {} + current_section = "loop_data_manager" + all_sections["loop_data_manager"] = loop_data_manager + new_line = False + + elif line.startswith("retrospectivePredictedGlucose"): + parse_key_value(all_sections, line) + + elif line.startswith("glucoseMomentumEffect"): + parse_key_value(all_sections, line) + + elif line.startswith("retrospectiveGlucoseEffect"): + parse_key_value(all_sections, line) + + elif line.startswith("recommendedTempBasal"): + parse_key_value(all_sections, line) + + elif line.startswith("recommendedBolus"): + parse_key_value(all_sections, line) + + elif line.startswith("lastBolus"): + parse_key_value(all_sections, line) + + elif line.startswith("retrospectiveGlucoseChange"): + parse_key_value(all_sections, line) + + elif line.startswith("lastLoopCompleted"): + parse_key_value(all_sections, line) + + elif line.startswith("lastTempBasal"): + parse_key_value(all_sections, line) + + elif line.startswith("carbsOnBoard"): + parse_key_value(all_sections, line) + + elif line.startswith("error"): + parse_key_value(all_sections, line) + + elif line.startswith("insulinCounteractionEffects:"): + insulin_counteraction_effects = [] + current_section = "insulin_counteraction_effects" + all_sections[ + "insulin_counteraction_effects" + ] = insulin_counteraction_effects + new_line = False + + elif line.startswith("carbEffect:"): + carb_effect = [] + current_section = "carb_effect" + all_sections["carb_effect"] = carb_effect + new_line = False + + elif line.startswith("insulinEffect:"): + insulin_effect = [] + current_section = "insulin_effect" + all_sections["insulin_effect"] = insulin_effect + new_line = False + + elif line.startswith("predictedGlucose:"): + predicted_glucose = [] + current_section = "predicted_glucose" + all_sections["predicted_glucose"] = predicted_glucose + new_line = False + + elif line.startswith("retrospectiveGlucoseDiscrepancies:"): + retrospective_glucose_discrepancies = [] + current_section = "retrospective_glucose_discrepancies" + all_sections[ + "retrospective_glucose_discrepancies" + ] = retrospective_glucose_discrepancies + new_line = False + + elif line.startswith("retrospectiveGlucoseDiscrepanciesSummed:"): + retrospective_glucose_discrepancies_summed = [] + current_section = "retrospective_glucose_discrepancies_summed" + all_sections[ + "retrospective_glucose_discrepancies_summed" + ] = retrospective_glucose_discrepancies_summed + new_line = False + + elif line.startswith("retrospectivePredictedGlucose"): + retrospective_predicted_glucose = {} + current_section = "retrospective_predicted_glucose" + all_sections[ + "retrospective_predicted_glucose" + ] = retrospective_predicted_glucose + new_line = False + + elif line.startswith("cacheStore: ## PersistenceController"): + persistence_controller = {} + current_section = "persistence_controller" + all_sections["persistence_controller"] = persistence_controller + new_line = False + + elif line.startswith("## GlucoseStore"): + glucose_store = {} + current_section = "glucose_store" + all_sections["glucose_store"] = glucose_store + new_line = False + + elif line.startswith("### cachedGlucoseSamples"): + cached_glucose_samples = [] + current_section = "cached_glucose_samples" + all_sections["cached_glucose_samples"] = cached_glucose_samples + new_line = False + + elif line.startswith("## CarbStore"): + carb_store = {} + current_section = "carb_store" + all_sections["carb_store"] = carb_store + new_line = False + + elif line.startswith("cachedCarbEntries:"): + cached_carb_entries = [] + current_section = "cached_carb_entries" + all_sections["cached_carb_entries"] = cached_carb_entries + new_line = False + + elif line.startswith("deletedCarbEntries:"): + deleted_carb_entries = {} + current_section = "deleted_carb_entries" + all_sections["deleted_carb_entries"] = deleted_carb_entries + new_line = False + + elif line.startswith("## DoseStore"): + dose_store = {} + current_section = "dose_store" + all_sections["dose_store"] = dose_store + new_line = False + + elif line.startswith("### getReservoirValues"): + get_reservoir_values = [] + current_section = "get_reservoir_values" + all_sections["get_reservoir_values"] = get_reservoir_values + new_line = False + + elif line.startswith("### getPumpEventValues"): + get_pump_event_values = [] + current_section = "get_pump_event_values" + all_sections["get_pump_event_values"] = get_pump_event_values + new_line = False + + elif line.startswith("### getNormalizedDoseEntries"): + get_normalized_dose_entries = [] + current_section = "get_normalized_dose_entries" + all_sections[ + "get_normalized_dose_entries" + ] = get_normalized_dose_entries + new_line = False + + elif line.startswith( + "### getNormalizedPumpEventDoseEntriesOverlaidWithBasalEntries" ): + get_normalized_pump_event_dose = [] + current_section = "get_normalized_pump_event_dose" + all_sections[ + "get_normalized_pump_event_dose" + ] = get_normalized_pump_event_dose new_line = False - i_list = all_sections[current_section] - if line.startswith("*"): - line = line[1:] - if line.startswith(" "): - line = line[1:] - if line.endswith("\n"): - line = line[:-1] - i_list.append(line) + elif line.startswith("### InsulinDeliveryStore"): + insulin_delivery_store = {} + current_section = "insulin_delivery_store" + all_sections["insulin_delivery_store"] = insulin_delivery_store + new_line = False - elif current_section: + elif line.startswith("## WatchDataManager"): + watch_data_manager = {} + current_section = "watch_data_manager" + all_sections["watch_data_manager"] = watch_data_manager new_line = False - dict = all_sections[current_section] - key, value = _split_key_value(line, ":") - if key or value != "\n": - if key.startswith("*"): - key = key[1:] - if key.startswith(" "): - key = key[1:] - if value.endswith("\n"): - value.replace("\n", "") - dict[key] = value.replace("\n", "") + + elif line.startswith("## OmnipodPumpManager"): + omnipod_pump_manager = {} + current_section = "omnipod_pump_manager" + all_sections["omnipod_pump_manager"] = omnipod_pump_manager + new_line = False + + elif line.startswith("## G6CGMManager"): + g6_cgm_manager = {} + current_section = "g6_cgm_manager" + all_sections["g6_cgm_manager"] = g6_cgm_manager + new_line = False + + elif line.startswith("## ShareClientManager"): + share_client_manager = {} + current_section = "share_client_manager" + all_sections["share_client_manager"] = share_client_manager + new_line = False + + elif line.startswith("## PodComms"): + pod_comms = {} + current_section = "pod_comms" + all_sections["pod_comms"] = pod_comms + new_line = False + + elif line.startswith("### MessageLog"): + message_log = [] + current_section = "message_log" + all_sections["message_log"] = message_log + new_line = False + + elif line.startswith("#### cachedDoseEntries"): + cached_dose_entries = [] + current_section = "cached_dose_entries" + all_sections["cached_dose_entries"] = cached_dose_entries + new_line = False + + elif line.startswith("## PodInfoFaultEvent"): + pod_info_fault_event = {} + current_section = "pod_info_fault_event" + all_sections["pod_info_fault_event"] = pod_info_fault_event + new_line = False + + elif line.startswith("### OmnipodPumpManagerState"): + omnipod_pump_manager_state = {} + current_section = "omnipod_pump_manager_state" + all_sections["omnipod_pump_manager_state"] = omnipod_pump_manager_state + new_line = False + + elif line.startswith("## PodState"): + pod_state = {} + current_section = "pod_state" + all_sections["pod_state"] = pod_state + new_line = False + + elif line.startswith("\n"): + new_line = True + + elif ( + line.startswith("#") or line.startswith("##") or line.startswith("###") + ): + print(f"UNHANDLED SECTION: {line}") + new_line = False + + else: + if ( + current_section == "insulin_counteraction_effects" + or current_section == "get_reservoir_values" + or current_section == "predicted_glucose" + or current_section == "get_pump_event_values" + or current_section == "message_log" + or current_section == "get_normalized_dose_entries" + or current_section == "cached_dose_entries" + or current_section == "get_normalized_pump_event_dose" + or current_section == "insulin_effect" + or current_section == "carb_effect" + or current_section == "retrospective_glucose_discrepancies" + or current_section == "retrospective_glucose_discrepancies_summed" + or current_section == "cached_glucose_samples" + or current_section == "cached_carb_entries" + ): + new_line = False + i_list = all_sections[current_section] + if line.startswith("*"): + line = line[1:] + if line.startswith(" "): + line = line[1:] + if line.endswith("\n"): + line = line[:-1] + + i_list.append(line) + + elif ( + not line.startswith("settings") + and current_section == Sections.LOOP_DATA_MANAGER + ): + one = "one" + elif current_section: + new_line = False + dict = all_sections[current_section] + key, value = _split_key_value(line, ":") + if key or value != "\n": + if key.startswith("*"): + key = key[1:] + if key.startswith(" "): + key = key[1:] + if value.endswith("\n"): + value.replace("\n", "") + dict[key] = value.replace("\n", "") + except Exception as e: + print("loop report parser error for file : " + dataPathAndName) + print(e) return all_sections +def parse_key_value(all_sections, line): + dict = all_sections["loop_data_manager"] + key, value = _split_key_value(line, ":") + if key or value != "\n": + if key.startswith("*"): + key = key[1:] + if key.startswith(" "): + key = key[1:] + if value.endswith("\n"): + value.replace("\n", "") + dict[key] = value.replace("\n", "") + + def list_sections_in_loop_report(file_path): section_list = [] existing_sections = [] diff --git a/projects/parsers/parser_client.py b/projects/parsers/parser_client.py new file mode 100644 index 00000000..0207e695 --- /dev/null +++ b/projects/parsers/parser_client.py @@ -0,0 +1,158 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- + + +# %% REQUIRED LIBRARIES +import argparse +import logging, sys +#from config.logconfig import log_config +from loop_report import LoopReport +import pandas as pd +import json +import os +import datetime as dt + + +# %% CODE DESCRIPTION +codeDescription = ( + "Parses Loop issue report(s) into a dictionary," + + "and saves the data to user specified format (json or csv)" +) + + +# %% FUNCTIONS +logger = None + +def setup_logging(): + console_handler = logging.StreamHandler(sys.stdout) + args, _ = parser.parse_known_args() + logging.basicConfig(format='%(asctime)s: %(levelname)s: %(name)s: %(message)s', + level=logging.getLevelName(args.logLevel), + handlers=[console_handler]) + + global logger + logger = logging.getLogger("loop_report_parser") + logger.debug('debug_level: %s', args.logLevel) + + +def parse_by_file(file_path, file_name, output_path): + + if not os.path.isfile(os.path.join(file_path, file_name)): + raise RuntimeError("The file name is invalid.") + + # make an output folder if it does not exist + if not os.path.exists(output_path): + os.makedirs(output_path) + + # % parse file + lr = LoopReport() + loop_dict = lr.parse_by_file(path=file_path, file_name=file_name) + + # save a pretty json + output_path_name = os.path.join( + output_path, file_name[:-3] + "-parsed.json" + ) + + with open(output_path_name, "w") as fp: + json.dump(loop_dict, fp, sort_keys=True, indent=4) + + print(file_name, "file parsed") + + return loop_dict + + +def parse_directory(file_path, output_path): + all_loop_df = pd.DataFrame() + for file in os.listdir(args.file_path): + if ".md" in file: + loop_dict = parse_by_file(file_path, file, output_path) + + loop_df = pd.DataFrame(columns=loop_dict.keys(), index=[0]) + loop_df = loop_df.astype("object") + for k in loop_dict.keys(): + loop_df[k][0] = loop_dict[k] + + all_loop_df = pd.concat( + [all_loop_df, loop_df], + sort=False, + ignore_index=True) + + process_date = dt.datetime.now().strftime("%Y-%m-%d") + output_path_name = os.path.join( + output_path, process_date + "-batch-parsing.csv" + ) + + all_loop_df.to_csv(output_path_name, index_label="index") + + return all_loop_df + + +# %% COMMAND LINE ARGUMENTS +def main(args): + setup_logging() + + logger.debug("This is a simple Test") + + if not os.path.isdir(args.file_path): + raise RuntimeError("The file path is invalid.") + + if args.batch_process: # process all md files in path + output = parse_directory(args.file_path, args.output_path) + + else: # process one file + output = parse_by_file( + args.file_path, + args.file_name, + args.output_path + ) + + return output + + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description=codeDescription) + parser.add_argument( + "-p", + "--path", + dest="file_path", + default=os.path.join("..", "tests", "parsers", "files"), + help="directory of the issue report file(s)" + ) + parser.add_argument( + "-n", + "--file_name", + dest="file_name", + default="LoopReport.md", + help="directory of the issue report file(s)" + ) + parser.add_argument( + "-o", + "--output_path", + dest="output_path", + default=os.path.join(".", "output", ""), + help="directory of where to save the output file(s)" + ) + parser.add_argument( + "-b", + "--batch", + dest="batch_process", + default=True, + help="True if you want to process all issue reports in the dir", + ) + parser.add_argument( + "-v", + "--verbose", + dest="verbose_output", + default=True, + help="True if you want script progress to print to the console", + ) + parser.add_argument( + "-l", "--log", + dest="logLevel", + choices=['DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL'], + help="Set the logging level", + default="INFO" + ) + args = parser.parse_args() + + output = main(args) diff --git a/projects/tests/parsers/files/LoopReport.md b/projects/tests/parsers/files/LoopReport.md index 14256fe9..727cad61 100644 --- a/projects/tests/parsers/files/LoopReport.md +++ b/projects/tests/parsers/files/LoopReport.md @@ -18,11 +18,10 @@ transmitter: Optional(CGMBLEKit.Transmitter) providesBLEHeartbeat: true ## DexCGMManager shareManager: Optional(## ShareClientManager -latestBackfill: nil +latestBackfill: Optional(ShareClient.ShareGlucose(glucose: 98, trend: 5, timestamp: 2018-12-13 21:55:17 +0000)) ) - ## MinimedPumpManager isPumpDataStale: false latestPumpStatus: nil @@ -80,6 +79,15 @@ peripheral: ) @@ -2611,5 +387,16 @@ deletedCarbEntries: [ * lastBasalEndDate: 2019-01-28 10:06:28 +0000 +#### cachedDoseEntries +DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-07 20:43:18 +0000, endDate: 2019-01-07 20:43:21 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-07T20:43:18Z 2019-01-07T20:43:21Z"), scheduledBasalRate: nil) +DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-07 20:43:21 +0000, endDate: 2019-01-07 21:13:21 +0000, value: 0.95, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("74656d70426173616c20302e39323520323031392d30312d30375432303a34333a32315a20313830302e30"), scheduledBasalRate: Optional(0.9 IU/hr)) +DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-07 21:13:21 +0000, endDate: 2019-01-07 21:16:57 +0000, value: 0.05, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-07T21:13:21Z 2019-01-07T21:16:57Z"), scheduledBasalRate: nil) +DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-07 21:16:57 +0000, endDate: 2019-01-07 21:21:14 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("74656d70426173616c20302e3020323031392d30312d30375432313a31363a35375a203235372e3132383533333935393338383733"), scheduledBasalRate: Optional(0.9 IU/hr)) +DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-07 21:21:14 +0000, endDate: 2019-01-07 21:21:20 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-07T21:21:14Z 2019-01-07T21:21:20Z"), scheduledBasalRate: nil) +DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-07 21:21:20 +0000, endDate: 2019-01-07 21:26:00 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("74656d70426173616c20302e3020323031392d30312d30375432313a32313a32305a203237392e37333436363930383933313733"), scheduledBasalRate: Optional(0.9 IU/hr)) +DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-07 21:26:00 +0000, endDate: 2019-01-07 21:26:08 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-07T21:26:00Z 2019-01-07T21:26:08Z"), scheduledBasalRate: nil) + + + diff --git a/projects/tests/parsers/files/LoopReport2.md b/projects/tests/parsers/files/LoopReport2.md deleted file mode 100644 index 924efeb8..00000000 --- a/projects/tests/parsers/files/LoopReport2.md +++ /dev/null @@ -1,4071 +0,0 @@ -Use the Share button above save this diagnostic report to aid investigating your problem. Issues can be filed at https://github.com/LoopKit/Loop/issues. - -Generated: 2019-01-17 00:19:57 +0000 - - - -Loop v1.9.3 - -## DeviceDataManager -launchDate: 2019-01-16 13:08:36 +0000 -cgm: Optional(Loop.CGM.g5(transmitterID: Optional("000AAA"))) -lastError: Optional((date: 2019-01-17 00:14:44 +0000, error: LoopKit.PumpManagerError.communication(Optional(MinimedKit.PumpCommandError.command(MinimedKit.PumpOpsError.deviceError(RileyLinkBLEKit.RileyLinkDeviceError.responseTimeout)))))) -sensorInfo: Optional(ShareClient.ShareGlucose(glucose: 401, trend: 8, timestamp: 2019-01-17 00:16:14 +0000)) - -## G5CGMManager -latestReading: nil -transmitter: Optional(CGMBLEKit.Transmitter) -providesBLEHeartbeat: false -## DexCGMManager -shareManager: Optional(## ShareClientManager -latestBackfill: Optional(ShareClient.ShareGlucose(glucose: 401, trend: 8, timestamp: 2019-01-17 00:16:14 +0000)) -) - - - -## MinimedPumpManager -isPumpDataStale: true -latestPumpStatus: Optional(MinimedKit.PumpStatus(clock: calendar: gregorian (fixed) timeZone: GMT-0600 (fixed) year: 2019 month: 1 day: 16 hour: 18 minute: 15 second: 25 isLeapMonth: false , batteryVolts: 1.58 V, batteryStatus: MinimedKit.BatteryStatus.normal, suspended: false, bolusing: false, reservoir: 252.1, model: 722, pumpID: "000000")) -latestPumpStatusFromMySentry: nil -lastAddedPumpEvents: 2019-01-17 00:15:54 +0000 -pumpBatteryChargeRemaining: Optional(1.0) -state: ## MinimedPumpManagerState -batteryChemistry: Lithium -preferredInsulinDataSource: Event History -pumpColor: smoke -pumpID: ✔︎ -pumpModel: 722 -pumpRegion: North America -lastValidFrequency: Optional(916.65 MHz) -timeZone: GMT-0600 (fixed) -Optional(RileyLinkBLEKit.RileyLinkConnectionManagerState(autoConnectIDs: Set(["2125698C-68DA-1EDA-FC21-A869F7C02DE7"]))) -sensorState: nil - -pumpOps: Optional(### PumpOps -pumpSettings: ## PumpSettings -pumpID: ✔︎ -pumpRegion: North America -pumpState: ## PumpState -timeZone: GMT-0600 (fixed) -pumpModel: 722 -awakeUntil: 2019-01-17 00:20:28 +0000 -lastValidFrequency: Optional(916.65 MHz) -lastTuned: 2019-01-17 00:20:28 +0000) -lastWakeAttempt: Optional(2019-01-17 00:19:18 +0000) -configuredDevices: ["2125698C-68DA-1EDA-FC21-A869F7C02DE7"]) - -## RileyLinkPumpManager -rileyLinkConnectionManager: Optional(RileyLinkBLEKit.RileyLinkConnectionManager) -lastTimerTick: 2019-01-17 00:18:25 +0000 - -## RileyLinkDeviceManager - -central: - -autoConnectIDs: ["2125698C-68DA-1EDA-FC21-A869F7C02DE7"] - -timerTickEnabled: true - -idleListeningState: disabled - -## RileyLinkDevice -name: RileyLink -lastIdle: 0000-12-30 00:00:00 +0000 -isIdleListeningPending: false -isTimerTickEnabled: true -isTimerTickNotifying: true -radioFirmware: Optional(subg_rfspy 2.2) -bleFirmware: Optional(ble_rfspy 2.0) -peripheral: -sessionQueue.operationCount: 0 - - - -## StatusExtensionDataManager -appGroupName: group.com.VQ3BBL2C22.loopkit.LoopGroup -statusExtensionContext: Optional(["sensor": ["isLocal": false, "stateDescription": "OK", "isStateValid": true], "netBasal": ["end": 2019-01-17 00:30:43 +0000, "rate": 3.6, "start": 2019-01-17 00:00:43 +0000, "percentage": 1.0], "predictedGlucose": ["values": [411.17, 420.7768100225015, 425.2340760611609, 423.5693772062071, 418.9910739194276, 413.18697652360487, 406.43988072123807, 398.9893641920858, 391.0452833747793, 382.7869478695214, 374.3663550449117, 365.91150591397724, 357.6220553683664, 349.5862488420499, 341.87613349837653, 334.5496031100566, 327.652238605738, 321.21894514436764, 315.27576955404476, 304.70601272429127, 293.61220806062425, 283.02774408365923, 272.95295734738085, 263.386405601676, 254.32299216767052, 245.7545867781144, 237.6705697390758, 230.05831876951567, 222.9037217005128, 216.19144175281014, 209.90519827656368, 204.02803432409206, 198.5425620044726, 193.43114579531408, 188.67608020156428, 184.25972954220475, 180.1646520519235, 176.37369654325772, 172.870084736514, 169.63747621575595, 166.66002092130822, 163.92241139424374, 161.4098962852616, 159.1082956002479, 157.0040148966969, 155.08389023538103, 153.3351641430482, 151.74569514234696, 150.30373577394363, 148.9981947521215, 147.81862459546034, 146.75519779533857, 145.79868402477183, 144.94046186079828, 144.1723826587018, 143.4869341361869, 142.87720169637856, 142.33680708669596, 141.8598640140279, 141.44079973708932, 141.07440738876204, 140.75584295139657, 140.48062773575094, 140.24465323610963, 140.04411420988168, 139.87549248849092, 139.73552955054066, 139.62097397683175, 139.52881565158106, 139.4562955960683, 139.40091489082357, 139.3606264242856, 139.3338216583748, 139.31906894019886, 139.3150053064747, 139.3150053064747], "unit": "mg/dL", "interval": 300.0, "startDate": 2019-01-17 00:20:00 +0000], "reservoirCapacity": 300.0, "lastLoopCompleted": 2019-01-17 00:15:55 +0000, "version": 5, "batteryPercentage": 1.0]) - - - - -## LoopDataManager -settings: Loop.LoopSettings(dosingEnabled: true, dynamicCarbAbsorptionEnabled: true, glucoseTargetRangeSchedule: Optional(["items": [["value": [100.0, 100.0], "startTime": 0.0]], "unit": "mg/dL", "overrideRanges": ["preMeal": [80.0, 100.0], "workout": [120.0, 130.0]], "timeZone": -21600]), maximumBasalRatePerHour: Optional(5.0), maximumBolus: Optional(13.0), suspendThreshold: Optional(Loop.GlucoseThreshold(value: 60.0, unit: mg/dL)), retrospectiveCorrectionEnabled: true, retrospectiveCorrectionInterval: 1800.0, recencyInterval: 900.0, minimumChartWidthPerHour: 50.0, statusChartMinimumHistoryDisplay: 3600.0) -insulinCounteractionEffects: [ -* GlucoseEffectVelocity(start, end, mg/dL/min) -* 2019-01-16 00:16:16 +0000, 2019-01-16 00:21:16 +0000, 0.1982427826297339 -* 2019-01-16 00:21:16 +0000, 2019-01-16 00:26:16 +0000, 0.19090649148772626 -* 2019-01-16 00:26:16 +0000, 2019-01-16 00:31:16 +0000, 0.18325104307100443 -* 2019-01-16 00:31:16 +0000, 2019-01-16 00:36:16 +0000, 0.17537905376898377 -* 2019-01-16 00:36:16 +0000, 2019-01-16 00:41:16 +0000, 0.16738491556766347 -* 2019-01-16 00:41:16 +0000, 2019-01-16 00:46:16 +0000, 0.15939180772528513 -* 2019-01-16 00:46:16 +0000, 2019-01-16 00:51:16 +0000, 0.1514614088564599 -* 2019-01-16 00:51:16 +0000, 2019-01-16 00:56:16 +0000, 0.14362819132001048 -* 2019-01-16 00:56:16 +0000, 2019-01-16 01:01:16 +0000, 0.13591252108438992 -* 2019-01-16 01:01:16 +0000, 2019-01-16 01:06:16 +0000, 0.12832619474061174 -* 2019-01-16 01:06:16 +0000, 2019-01-16 01:11:16 +0000, 0.12125178140763636 -* 2019-01-16 01:11:16 +0000, 2019-01-16 01:16:16 +0000, 0.11510003348635107 -* 2019-01-16 01:16:16 +0000, 2019-01-16 01:21:16 +0000, 0.10905453050568212 -* 2019-01-16 01:21:16 +0000, 2019-01-16 01:26:16 +0000, 0.10311423747260733 -* 2019-01-16 01:26:16 +0000, 2019-01-16 01:31:16 +0000, 0.13701617326861423 -* 2019-01-16 01:31:16 +0000, 2019-01-16 01:36:16 +0000, 0.9163908319123039 -* 2019-01-16 01:36:16 +0000, 2019-01-16 01:41:16 +0000, 1.8594757224723706 -* 2019-01-16 01:41:16 +0000, 2019-01-16 01:46:16 +0000, 0.6594254545905073 -* 2019-01-16 01:46:16 +0000, 2019-01-16 01:51:16 +0000, 2.5332435249190777 -* 2019-01-16 01:51:16 +0000, 2019-01-16 01:56:16 +0000, 2.0961359791559513 -* 2019-01-16 01:56:16 +0000, 2019-01-16 02:01:16 +0000, 1.159894310634968 -* 2019-01-16 02:01:16 +0000, 2019-01-16 02:06:16 +0000, 1.1191495200323969 -* 2019-01-16 02:06:16 +0000, 2019-01-16 02:11:16 +0000, 1.3835112821257778 -* 2019-01-16 02:11:16 +0000, 2019-01-16 02:16:16 +0000, 1.1662480312521664 -* 2019-01-16 02:16:16 +0000, 2019-01-16 02:21:16 +0000, 1.0791030191771824 -* 2019-01-16 02:21:16 +0000, 2019-01-16 02:26:16 +0000, 1.3324558965268125 -* 2019-01-16 02:26:16 +0000, 2019-01-16 02:31:16 +0000, 1.7354634883194648 -* 2019-01-16 02:31:16 +0000, 2019-01-16 02:36:16 +0000, 2.0961891268432735 -* 2019-01-16 02:36:16 +0000, 2019-01-16 02:41:16 +0000, 2.621716418273308 -* 2019-01-16 02:41:16 +0000, 2019-01-16 02:46:16 +0000, 3.5182572059200763 -* 2019-01-16 02:46:16 +0000, 2019-01-16 02:51:16 +0000, 3.1912442395685723 -* 2019-01-16 02:51:16 +0000, 2019-01-16 02:56:16 +0000, 2.445416067135784 -* 2019-01-16 02:56:16 +0000, 2019-01-16 03:01:16 +0000, 1.4848934002202439 -* 2019-01-16 03:01:16 +0000, 2019-01-16 03:06:16 +0000, 0.9132470278911112 -* 2019-01-16 03:06:16 +0000, 2019-01-16 03:11:16 +0000, 0.7335596966448291 -* 2019-01-16 03:11:16 +0000, 2019-01-16 03:16:16 +0000, 0.5484816889105331 -* 2019-01-16 03:16:16 +0000, 2019-01-16 03:21:16 +0000, 0.5602815892395256 -* 2019-01-16 03:21:16 +0000, 2019-01-16 03:26:16 +0000, 1.3708950890202685 -* 2019-01-16 03:26:16 +0000, 2019-01-16 03:31:16 +0000, 1.7819674438251694 -* 2019-01-16 03:31:16 +0000, 2019-01-16 03:36:16 +0000, 2.39486512736496 -* 2019-01-16 03:36:16 +0000, 2019-01-16 03:41:16 +0000, 2.8107212073231946 -* 2019-01-16 03:41:16 +0000, 2019-01-16 03:46:16 +0000, 2.630466380529401 -* 2019-01-16 03:46:16 +0000, 2019-01-16 03:51:16 +0000, 2.6548543649344305 -* 2019-01-16 03:51:16 +0000, 2019-01-16 03:56:16 +0000, 2.0844845325192636 -* 2019-01-16 03:56:16 +0000, 2019-01-16 04:01:16 +0000, 2.1198220596437976 -* 2019-01-16 04:01:16 +0000, 2019-01-16 04:06:16 +0000, 2.161215845056904 -* 2019-01-16 04:06:16 +0000, 2019-01-16 04:11:16 +0000, 1.8089144219068882 -* 2019-01-16 04:11:16 +0000, 2019-01-16 04:16:16 +0000, 1.6630800684049287 -* 2019-01-16 04:16:16 +0000, 2019-01-16 04:21:16 +0000, 1.1238013021019242 -* 2019-01-16 04:21:16 +0000, 2019-01-16 04:26:16 +0000, 0.9911101614885409 -* 2019-01-16 04:26:16 +0000, 2019-01-16 04:31:16 +0000, 2.2650122493332217 -* 2019-01-16 04:31:16 +0000, 2019-01-16 04:36:16 +0000, 3.1452826003493093 -* 2019-01-16 04:36:16 +0000, 2019-01-16 04:41:16 +0000, 5.026707249116907 -* 2019-01-16 04:41:16 +0000, 2019-01-16 04:46:16 +0000, 5.307635000867048 -* 2019-01-16 04:46:16 +0000, 2019-01-16 04:51:16 +0000, 6.189141746904124 -* 2019-01-16 04:51:16 +0000, 2019-01-16 04:56:15 +0000, 4.891462784148369 -* 2019-01-16 04:56:15 +0000, 2019-01-16 05:01:16 +0000, 4.362455981748149 -* 2019-01-16 05:01:16 +0000, 2019-01-16 05:06:16 +0000, 3.6958101729898316 -* 2019-01-16 05:06:16 +0000, 2019-01-16 05:11:16 +0000, 2.6371223910535715 -* 2019-01-16 05:11:16 +0000, 2019-01-16 05:16:16 +0000, 1.6077098800689782 -* 2019-01-16 05:16:16 +0000, 2019-01-16 05:21:16 +0000, 1.0219571896167055 -* 2019-01-16 05:21:16 +0000, 2019-01-16 05:26:17 +0000, 1.2955661643680867 -* 2019-01-16 05:26:17 +0000, 2019-01-16 05:31:17 +0000, 1.8124286594360908 -* 2019-01-16 05:31:17 +0000, 2019-01-16 05:36:17 +0000, 1.2632884842641943 -* 2019-01-16 05:36:17 +0000, 2019-01-16 05:41:17 +0000, -0.34688068896243746 -* 2019-01-16 05:41:17 +0000, 2019-01-16 05:46:17 +0000, -1.810937762699177 -* 2019-01-16 05:46:17 +0000, 2019-01-16 05:51:17 +0000, -1.9211379369397947 -* 2019-01-16 05:51:17 +0000, 2019-01-16 05:56:17 +0000, -0.27069392857310953 -* 2019-01-16 05:56:17 +0000, 2019-01-16 06:01:17 +0000, 1.1464218217596225 -* 2019-01-16 06:01:17 +0000, 2019-01-16 06:06:17 +0000, 1.7353209022454847 -* 2019-01-16 06:06:17 +0000, 2019-01-16 06:11:17 +0000, 1.100360039590714 -* 2019-01-16 06:11:17 +0000, 2019-01-16 06:16:17 +0000, 1.045398258770956 -* 2019-01-16 06:16:17 +0000, 2019-01-16 06:21:17 +0000, 0.975207843725775 -* 2019-01-16 06:21:17 +0000, 2019-01-16 06:26:17 +0000, 1.2914899966264781 -* 2019-01-16 06:26:17 +0000, 2019-01-16 06:31:17 +0000, 1.5980390243429607 -* 2019-01-16 06:31:17 +0000, 2019-01-16 06:36:17 +0000, 1.8971539437366116 -* 2019-01-16 06:36:17 +0000, 2019-01-16 06:41:16 +0000, 1.7971011583487753 -* 2019-01-16 06:41:16 +0000, 2019-01-16 06:46:17 +0000, 1.8758840574471745 -* 2019-01-16 06:46:17 +0000, 2019-01-16 06:51:17 +0000, 1.7725687311718956 -* 2019-01-16 06:51:17 +0000, 2019-01-16 06:56:16 +0000, 1.6697695285857999 -* 2019-01-16 06:56:16 +0000, 2019-01-16 07:01:17 +0000, 1.7520469730865942 -* 2019-01-16 07:01:17 +0000, 2019-01-16 07:06:17 +0000, 1.8542444984251687 -* 2019-01-16 07:06:17 +0000, 2019-01-16 07:11:16 +0000, 2.3634062382675998 -* 2019-01-16 07:11:16 +0000, 2019-01-16 07:16:17 +0000, 3.253752625149631 -* 2019-01-16 07:16:17 +0000, 2019-01-16 07:21:17 +0000, 3.3813500860657313 -* 2019-01-16 07:21:17 +0000, 2019-01-16 07:26:17 +0000, 3.5069361489127457 -* 2019-01-16 07:26:17 +0000, 2019-01-16 07:31:17 +0000, 2.8434105399184317 -* 2019-01-16 07:31:17 +0000, 2019-01-16 07:36:17 +0000, 2.403324965365527 -* 2019-01-16 07:36:17 +0000, 2019-01-16 07:41:17 +0000, 1.991159005768668 -* 2019-01-16 07:41:17 +0000, 2019-01-16 07:46:17 +0000, 1.401109522285742 -* 2019-01-16 07:46:17 +0000, 2019-01-16 07:51:17 +0000, 0.8295278468705418 -* 2019-01-16 07:51:17 +0000, 2019-01-16 07:56:17 +0000, 0.6808427523699264 -* 2019-01-16 07:56:17 +0000, 2019-01-16 08:01:16 +0000, 0.19707404633473713 -* 2019-01-16 08:01:16 +0000, 2019-01-16 08:06:17 +0000, 0.30188606412924657 -* 2019-01-16 08:06:17 +0000, 2019-01-16 08:11:17 +0000, 0.18088809574742298 -* 2019-01-16 08:11:17 +0000, 2019-01-16 08:16:17 +0000, 0.23403642717462386 -* 2019-01-16 08:16:17 +0000, 2019-01-16 08:21:17 +0000, 0.06357122698595957 -* 2019-01-16 08:21:17 +0000, 2019-01-16 08:26:17 +0000, -0.12998540096991745 -* 2019-01-16 08:26:17 +0000, 2019-01-16 08:31:17 +0000, 0.057697857170524 -* 2019-01-16 08:31:17 +0000, 2019-01-16 08:36:17 +0000, 0.03095651790740703 -* 2019-01-16 08:36:17 +0000, 2019-01-16 08:41:17 +0000, -1.2076696882223132 -* 2019-01-16 08:41:17 +0000, 2019-01-16 08:46:17 +0000, -1.2558667786860043 -* 2019-01-16 08:46:17 +0000, 2019-01-16 08:51:17 +0000, -0.9120226568269572 -* 2019-01-16 08:51:17 +0000, 2019-01-16 08:56:17 +0000, 0.6268154636063628 -* 2019-01-16 08:56:17 +0000, 2019-01-16 09:01:16 +0000, 0.5625577507353805 -* 2019-01-16 09:01:16 +0000, 2019-01-16 09:06:16 +0000, 0.6918199786382956 -* 2019-01-16 09:06:16 +0000, 2019-01-16 09:11:17 +0000, 1.0215347430476471 -* 2019-01-16 09:11:17 +0000, 2019-01-16 09:16:16 +0000, 0.7646823693822202 -* 2019-01-16 09:16:16 +0000, 2019-01-16 09:21:16 +0000, 0.7032527111943636 -* 2019-01-16 09:21:16 +0000, 2019-01-16 09:26:15 +0000, 0.04907602202430922 -* 2019-01-16 09:26:15 +0000, 2019-01-16 09:31:16 +0000, 0.20408675616967037 -* 2019-01-16 09:31:16 +0000, 2019-01-16 09:36:16 +0000, 0.7736589222295605 -* 2019-01-16 09:36:16 +0000, 2019-01-16 09:41:16 +0000, 0.7502586150345905 -* 2019-01-16 09:41:16 +0000, 2019-01-16 09:46:16 +0000, 0.5325680331587591 -* 2019-01-16 09:46:16 +0000, 2019-01-16 09:51:16 +0000, 0.12002155128084267 -* 2019-01-16 09:51:16 +0000, 2019-01-16 09:56:16 +0000, -0.08552034105132407 -* 2019-01-16 09:56:16 +0000, 2019-01-16 10:01:16 +0000, -0.08679723826076041 -* 2019-01-16 10:06:16 +0000, 2019-01-16 10:11:16 +0000, -0.2846570177179728 -* 2019-01-16 10:11:16 +0000, 2019-01-16 10:16:16 +0000, -0.2839635328018175 -* 2019-01-16 10:16:16 +0000, 2019-01-16 10:21:15 +0000, -0.08511589768116218 -* 2019-01-16 10:21:15 +0000, 2019-01-16 10:26:16 +0000, -0.29085284377803367 -* 2019-01-16 10:26:16 +0000, 2019-01-16 10:31:15 +0000, 0.09515093942055106 -* 2019-01-16 10:31:15 +0000, 2019-01-16 10:36:16 +0000, -0.12336352638297121 -* 2019-01-16 10:36:16 +0000, 2019-01-16 10:41:16 +0000, -0.14417766051237774 -* 2019-01-16 10:41:16 +0000, 2019-01-16 10:46:15 +0000, 0.03629209113493187 -* 2019-01-16 10:46:15 +0000, 2019-01-16 10:51:16 +0000, 0.015544420222381497 -* 2019-01-16 10:51:16 +0000, 2019-01-16 10:56:16 +0000, -0.20504738078338958 -* 2019-01-16 10:56:16 +0000, 2019-01-16 11:01:16 +0000, -0.22423877829323827 -* 2019-01-16 11:01:16 +0000, 2019-01-16 11:06:15 +0000, -0.2426508684874744 -* 2019-01-16 11:06:15 +0000, 2019-01-16 11:11:15 +0000, -0.45793356767758264 -* 2019-01-16 11:11:15 +0000, 2019-01-16 11:16:16 +0000, -0.8701341780071767 -* 2019-01-16 11:16:16 +0000, 2019-01-16 11:21:15 +0000, -0.49037133658271387 -* 2019-01-16 11:21:15 +0000, 2019-01-16 11:26:16 +0000, -0.10463632769848039 -* 2019-01-16 11:26:16 +0000, 2019-01-16 11:31:16 +0000, 0.07362220347863511 -* 2019-01-16 11:31:16 +0000, 2019-01-16 11:36:16 +0000, 0.8471565332057708 -* 2019-01-16 11:36:16 +0000, 2019-01-16 11:41:16 +0000, 0.8166114431190181 -* 2019-01-16 11:41:16 +0000, 2019-01-16 11:46:16 +0000, 0.1829759774049307 -* 2019-01-16 11:46:16 +0000, 2019-01-16 11:51:16 +0000, -0.24785211258890738 -* 2019-01-16 11:51:16 +0000, 2019-01-16 11:56:16 +0000, -0.8669088899667713 -* 2019-01-16 11:56:16 +0000, 2019-01-16 12:01:16 +0000, 0.9264727184196545 -* 2019-01-16 12:01:16 +0000, 2019-01-16 12:06:16 +0000, 0.7269406805767176 -* 2019-01-16 12:06:16 +0000, 2019-01-16 12:11:16 +0000, -0.6696353032336445 -* 2019-01-16 12:11:16 +0000, 2019-01-16 12:16:16 +0000, 0.5343815138608988 -* 2019-01-16 12:16:16 +0000, 2019-01-16 12:21:16 +0000, 1.7451032655993457 -* 2019-01-16 12:21:16 +0000, 2019-01-16 12:26:16 +0000, 0.9616025412185082 -* 2019-01-16 12:26:16 +0000, 2019-01-16 12:31:16 +0000, 0.7803168194525368 -* 2019-01-16 12:31:16 +0000, 2019-01-16 12:36:16 +0000, -1.0008407376730246 -* 2019-01-16 12:36:16 +0000, 2019-01-16 12:41:15 +0000, -2.381952658012845 -* 2019-01-16 12:41:15 +0000, 2019-01-16 12:46:16 +0000, 3.6463539767858233 -* 2019-01-16 12:46:16 +0000, 2019-01-16 12:51:16 +0000, 3.091544515415762 -* 2019-01-16 12:51:16 +0000, 2019-01-16 12:56:16 +0000, 5.51469281915297 -* 2019-01-16 12:56:16 +0000, 2019-01-16 13:01:16 +0000, 5.449605385627228 -* 2019-01-16 13:01:16 +0000, 2019-01-16 13:06:15 +0000, 5.234183316854896 -* 2019-01-16 13:06:15 +0000, 2019-01-16 16:11:14 +0000, 1.1247390365939516 -* 2019-01-16 16:11:14 +0000, 2019-01-16 16:16:14 +0000, -0.26288051766709936 -* 2019-01-16 16:16:14 +0000, 2019-01-16 16:21:14 +0000, 1.4828546453934677 -* 2019-01-16 16:21:14 +0000, 2019-01-16 16:26:14 +0000, -0.16842261735431518 -* 2019-01-16 16:26:14 +0000, 2019-01-16 16:31:14 +0000, 0.1832026693431203 -* 2019-01-16 16:31:14 +0000, 2019-01-16 16:36:14 +0000, -0.06235690824661333 -* 2019-01-16 16:36:14 +0000, 2019-01-16 16:41:15 +0000, 0.09450124738259091 -* 2019-01-16 16:41:15 +0000, 2019-01-16 16:46:15 +0000, -0.7453686165497743 -* 2019-01-16 16:46:15 +0000, 2019-01-16 16:51:14 +0000, -0.1836377274887992 -* 2019-01-16 16:51:14 +0000, 2019-01-16 16:56:14 +0000, 1.781740687397314 -* 2019-01-16 16:56:14 +0000, 2019-01-16 17:01:14 +0000, 1.3488279230345028 -* 2019-01-16 17:01:14 +0000, 2019-01-16 17:06:15 +0000, 1.7124195822307977 -* 2019-01-16 17:06:15 +0000, 2019-01-16 18:11:14 +0000, 2.666640640835534 -* 2019-01-16 18:11:14 +0000, 2019-01-16 18:16:15 +0000, 0.2085614695528665 -* 2019-01-16 18:16:15 +0000, 2019-01-16 18:21:15 +0000, 1.2067458537122546 -* 2019-01-16 18:21:15 +0000, 2019-01-16 18:26:15 +0000, 2.2059702246459323 -* 2019-01-16 18:26:15 +0000, 2019-01-16 18:31:14 +0000, -1.1973343205124818 -* 2019-01-16 18:31:14 +0000, 2019-01-16 18:36:15 +0000, 3.3972443700407733 -* 2019-01-16 18:36:15 +0000, 2019-01-16 18:41:15 +0000, -1.9783074031888757 -* 2019-01-16 18:41:15 +0000, 2019-01-16 18:46:14 +0000, 1.1102072099157965 -* 2019-01-16 18:46:14 +0000, 2019-01-16 18:51:15 +0000, -3.9782633664722864 -* 2019-01-16 18:51:15 +0000, 2019-01-16 18:56:14 +0000, 5.094298006418784 -* 2019-01-16 18:56:14 +0000, 2019-01-16 19:01:15 +0000, -0.49741570529460777 -* 2019-01-16 19:01:15 +0000, 2019-01-16 19:06:15 +0000, 0.48564472011423726 -* 2019-01-16 19:06:15 +0000, 2019-01-16 19:11:14 +0000, -0.9176195087193407 -* 2019-01-16 19:11:14 +0000, 2019-01-16 19:51:15 +0000, 0.4144803147208698 -* 2019-01-16 19:51:15 +0000, 2019-01-16 19:56:15 +0000, 2.6511112783953763 -* 2019-01-16 19:56:15 +0000, 2019-01-16 20:01:15 +0000, 3.336347699440279 -* 2019-01-16 20:01:15 +0000, 2019-01-16 20:06:15 +0000, 4.178326128944575 -* 2019-01-16 20:06:15 +0000, 2019-01-16 20:11:15 +0000, 6.485318669450508 -* 2019-01-16 20:11:15 +0000, 2019-01-16 20:16:15 +0000, 6.075238227603057 -* 2019-01-16 20:16:15 +0000, 2019-01-16 20:21:15 +0000, 5.96398925914799 -* 2019-01-16 20:21:15 +0000, 2019-01-16 20:26:14 +0000, 5.985625405250848 -* 2019-01-16 20:26:14 +0000, 2019-01-16 20:31:14 +0000, 5.892774776433077 -* 2019-01-16 20:31:14 +0000, 2019-01-16 20:36:14 +0000, 5.556328501380466 -* 2019-01-16 20:36:14 +0000, 2019-01-16 20:41:13 +0000, 4.380673495275407 -* 2019-01-16 20:41:13 +0000, 2019-01-16 20:46:14 +0000, 5.281260600319681 -* 2019-01-16 20:46:14 +0000, 2019-01-16 20:51:14 +0000, 4.608156646030033 -* 2019-01-16 20:51:14 +0000, 2019-01-16 20:56:14 +0000, 4.888576380940696 -* 2019-01-16 20:56:14 +0000, 2019-01-16 21:01:14 +0000, 5.946666207583746 -* 2019-01-16 21:01:14 +0000, 2019-01-16 21:06:14 +0000, 6.987083820066811 -* 2019-01-16 21:06:14 +0000, 2019-01-16 21:11:14 +0000, 5.763977024143139 -* 2019-01-16 21:11:14 +0000, 2019-01-16 21:16:14 +0000, 5.1655075023025 -* 2019-01-16 21:16:14 +0000, 2019-01-16 21:21:14 +0000, 3.76284338337731 -* 2019-01-16 21:21:14 +0000, 2019-01-16 21:26:14 +0000, 3.3582274249692543 -* 2019-01-16 21:26:14 +0000, 2019-01-16 21:31:14 +0000, 3.7054690396578054 -* 2019-01-16 21:31:14 +0000, 2019-01-16 21:36:14 +0000, 4.283442078317875 -* 2019-01-16 21:36:14 +0000, 2019-01-16 21:41:14 +0000, 4.66705577791663 -* 2019-01-16 21:41:14 +0000, 2019-01-16 21:46:14 +0000, 4.657763897093582 -* 2019-01-16 21:46:14 +0000, 2019-01-16 21:51:13 +0000, 4.438519816396005 -* 2019-01-16 21:51:13 +0000, 2019-01-16 21:56:14 +0000, 4.000057728094233 -* 2019-01-16 21:56:14 +0000, 2019-01-16 22:01:13 +0000, 4.43167157240372 -* 2019-01-16 22:01:13 +0000, 2019-01-16 22:06:14 +0000, 2.8332935584546437 -* 2019-01-16 22:06:14 +0000, 2019-01-16 22:11:14 +0000, 3.090047097400974 -* 2019-01-16 22:11:14 +0000, 2019-01-16 22:16:13 +0000, 2.1605345855149327 -* 2019-01-16 22:16:13 +0000, 2019-01-16 22:21:14 +0000, 1.8150467539361823 -* 2019-01-16 22:21:14 +0000, 2019-01-16 22:26:14 +0000, 1.8935030860291586 -* 2019-01-16 22:26:14 +0000, 2019-01-16 22:31:14 +0000, 1.5707995743598755 -* 2019-01-16 22:31:14 +0000, 2019-01-16 22:36:14 +0000, 0.48767588581940785 -* 2019-01-16 22:36:14 +0000, 2019-01-16 22:41:13 +0000, 2.035920712203544 -* 2019-01-16 22:41:13 +0000, 2019-01-16 22:46:14 +0000, 1.8347017830802221 -* 2019-01-16 22:46:14 +0000, 2019-01-16 22:51:14 +0000, 2.0563357022244646 -* 2019-01-16 22:51:14 +0000, 2019-01-16 22:56:14 +0000, 2.2528575530030133 -* 2019-01-16 22:56:14 +0000, 2019-01-16 23:01:14 +0000, 2.247731991495448 -* 2019-01-16 23:01:14 +0000, 2019-01-16 23:06:14 +0000, 1.6384152359621564 -* 2019-01-16 23:06:14 +0000, 2019-01-16 23:11:14 +0000, 1.4291993409192172 -* 2019-01-16 23:11:14 +0000, 2019-01-16 23:16:14 +0000, 0.42096402856645904 -* 2019-01-16 23:16:14 +0000, 2019-01-16 23:21:13 +0000, 2.6153531427154 -* 2019-01-16 23:21:13 +0000, 2019-01-16 23:26:14 +0000, 2.96981091825824 -* 2019-01-16 23:26:14 +0000, 2019-01-16 23:31:14 +0000, 4.3423647101066525 -* 2019-01-16 23:31:14 +0000, 2019-01-16 23:36:14 +0000, 3.3306540389022983 -* 2019-01-16 23:36:14 +0000, 2019-01-16 23:41:14 +0000, 5.284025004011345 -* 2019-01-16 23:41:14 +0000, 2019-01-16 23:46:14 +0000, 3.5670344384825055 -* 2019-01-16 23:46:14 +0000, 2019-01-16 23:51:14 +0000, -1.4553577597843967 -* 2019-01-16 23:51:14 +0000, 2019-01-16 23:56:14 +0000, 6.511468984395924 -* 2019-01-16 23:56:14 +0000, 2019-01-17 00:01:14 +0000, 3.469529264506513 -* 2019-01-17 00:01:14 +0000, 2019-01-17 00:06:14 +0000, 5.02057874837626 -* 2019-01-17 00:06:14 +0000, 2019-01-17 00:11:14 +0000, 4.966142784728776 -* 2019-01-17 00:11:14 +0000, 2019-01-17 00:16:14 +0000, 3.835330868220831 - -] -predictedGlucose: [ -* PredictedGlucoseValue(start, mg/dL) -* 2019-01-17 00:16:14 +0000, 401.0 -* 2019-01-17 00:20:00 +0000, 411.17 -* 2019-01-17 00:25:00 +0000, 420.7768100225015 -* 2019-01-17 00:30:00 +0000, 425.2340760611609 -* 2019-01-17 00:35:00 +0000, 423.5693772062071 -* 2019-01-17 00:40:00 +0000, 418.9910739194276 -* 2019-01-17 00:45:00 +0000, 413.18697652360487 -* 2019-01-17 00:50:00 +0000, 406.43988072123807 -* 2019-01-17 00:55:00 +0000, 398.9893641920858 -* 2019-01-17 01:00:00 +0000, 391.0452833747793 -* 2019-01-17 01:05:00 +0000, 382.7869478695214 -* 2019-01-17 01:10:00 +0000, 374.3663550449117 -* 2019-01-17 01:15:00 +0000, 365.91150591397724 -* 2019-01-17 01:20:00 +0000, 357.6220553683664 -* 2019-01-17 01:25:00 +0000, 349.5862488420499 -* 2019-01-17 01:30:00 +0000, 341.87613349837653 -* 2019-01-17 01:35:00 +0000, 334.5496031100566 -* 2019-01-17 01:40:00 +0000, 327.652238605738 -* 2019-01-17 01:45:00 +0000, 321.21894514436764 -* 2019-01-17 01:50:00 +0000, 315.27576955404476 -* 2019-01-17 01:55:00 +0000, 304.70601272429127 -* 2019-01-17 02:00:00 +0000, 293.61220806062425 -* 2019-01-17 02:05:00 +0000, 283.02774408365923 -* 2019-01-17 02:10:00 +0000, 272.95295734738085 -* 2019-01-17 02:15:00 +0000, 263.386405601676 -* 2019-01-17 02:20:00 +0000, 254.32299216767052 -* 2019-01-17 02:25:00 +0000, 245.7545867781144 -* 2019-01-17 02:30:00 +0000, 237.6705697390758 -* 2019-01-17 02:35:00 +0000, 230.05831876951567 -* 2019-01-17 02:40:00 +0000, 222.9037217005128 -* 2019-01-17 02:45:00 +0000, 216.19144175281014 -* 2019-01-17 02:50:00 +0000, 209.90519827656368 -* 2019-01-17 02:55:00 +0000, 204.02803432409206 -* 2019-01-17 03:00:00 +0000, 198.5425620044726 -* 2019-01-17 03:05:00 +0000, 193.43114579531408 -* 2019-01-17 03:10:00 +0000, 188.67608020156428 -* 2019-01-17 03:15:00 +0000, 184.25972954220475 -* 2019-01-17 03:20:00 +0000, 180.1646520519235 -* 2019-01-17 03:25:00 +0000, 176.37369654325772 -* 2019-01-17 03:30:00 +0000, 172.870084736514 -* 2019-01-17 03:35:00 +0000, 169.63747621575595 -* 2019-01-17 03:40:00 +0000, 166.66002092130822 -* 2019-01-17 03:45:00 +0000, 163.92241139424374 -* 2019-01-17 03:50:00 +0000, 161.4098962852616 -* 2019-01-17 03:55:00 +0000, 159.1082956002479 -* 2019-01-17 04:00:00 +0000, 157.0040148966969 -* 2019-01-17 04:05:00 +0000, 155.08389023538103 -* 2019-01-17 04:10:00 +0000, 153.3351641430482 -* 2019-01-17 04:15:00 +0000, 151.74569514234696 -* 2019-01-17 04:20:00 +0000, 150.30373577394363 -* 2019-01-17 04:25:00 +0000, 148.9981947521215 -* 2019-01-17 04:30:00 +0000, 147.81862459546034 -* 2019-01-17 04:35:00 +0000, 146.75519779533857 -* 2019-01-17 04:40:00 +0000, 145.79868402477183 -* 2019-01-17 04:45:00 +0000, 144.94046186079828 -* 2019-01-17 04:50:00 +0000, 144.1723826587018 -* 2019-01-17 04:55:00 +0000, 143.4869341361869 -* 2019-01-17 05:00:00 +0000, 142.87720169637856 -* 2019-01-17 05:05:00 +0000, 142.33680708669596 -* 2019-01-17 05:10:00 +0000, 141.8598640140279 -* 2019-01-17 05:15:00 +0000, 141.44079973708932 -* 2019-01-17 05:20:00 +0000, 141.07440738876204 -* 2019-01-17 05:25:00 +0000, 140.75584295139657 -* 2019-01-17 05:30:00 +0000, 140.48062773575094 -* 2019-01-17 05:35:00 +0000, 140.24465323610963 -* 2019-01-17 05:40:00 +0000, 140.04411420988168 -* 2019-01-17 05:45:00 +0000, 139.87549248849092 -* 2019-01-17 05:50:00 +0000, 139.73552955054066 -* 2019-01-17 05:55:00 +0000, 139.62097397683175 -* 2019-01-17 06:00:00 +0000, 139.52881565158106 -* 2019-01-17 06:05:00 +0000, 139.4562955960683 -* 2019-01-17 06:10:00 +0000, 139.40091489082357 -* 2019-01-17 06:15:00 +0000, 139.3606264242856 -* 2019-01-17 06:20:00 +0000, 139.3338216583748 -* 2019-01-17 06:25:00 +0000, 139.31906894019886 -* 2019-01-17 06:30:00 +0000, 139.3150053064747 -* 2019-01-17 06:35:00 +0000, 139.3150053064747 - -] -retrospectivePredictedGlucose: [LoopKit.PredictedGlucoseValue(startDate: 2019-01-16 23:46:14 +0000, quantity: 340 mg/dL), LoopKit.PredictedGlucoseValue(startDate: 2019-01-16 23:50:00 +0000, quantity: 340 mg/dL), LoopKit.PredictedGlucoseValue(startDate: 2019-01-16 23:55:00 +0000, quantity: 331.155 mg/dL), LoopKit.PredictedGlucoseValue(startDate: 2019-01-17 00:00:00 +0000, quantity: 354.822 mg/dL), LoopKit.PredictedGlucoseValue(startDate: 2019-01-17 00:05:00 +0000, quantity: 363.194 mg/dL), LoopKit.PredictedGlucoseValue(startDate: 2019-01-17 00:10:00 +0000, quantity: 379.21 mg/dL), LoopKit.PredictedGlucoseValue(startDate: 2019-01-17 00:15:00 +0000, quantity: 394.869 mg/dL)] -glucoseMomentumEffect: [LoopKit.GlucoseEffect(startDate: 2019-01-17 00:15:00 +0000, quantity: 0 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 00:20:00 +0000, quantity: 10.17 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 00:25:00 +0000, quantity: 23.67 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 00:30:00 +0000, quantity: 37.17 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 00:35:00 +0000, quantity: 50.67 mg/dL)] -retrospectiveGlucoseEffect: [LoopKit.GlucoseEffect(startDate: 2019-01-17 00:15:00 +0000, quantity: 401 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 00:20:00 +0000, quantity: 402.022 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 00:25:00 +0000, quantity: 402.951 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 00:30:00 +0000, quantity: 403.787 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 00:35:00 +0000, quantity: 404.53 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 00:40:00 +0000, quantity: 405.18 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 00:45:00 +0000, quantity: 405.738 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 00:50:00 +0000, quantity: 406.202 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 00:55:00 +0000, quantity: 406.574 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 01:00:00 +0000, quantity: 406.852 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 01:05:00 +0000, quantity: 407.038 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 01:10:00 +0000, quantity: 407.131 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-17 01:15:00 +0000, quantity: 407.131 mg/dL)] -recommendedTempBasal: Optional((recommendation: Loop.TempBasalRecommendation(unitsPerHour: 3.025, duration: 1800.0), date: 2019-01-17 00:19:30 +0000)) -recommendedBolus: Optional((recommendation: Loop.BolusRecommendation(amount: 0.125, pendingInsulin: 0.672455638051033, notice: nil), date: 2019-01-17 00:19:30 +0000)) -lastBolus: nil -retrospectiveGlucoseChange: Optional((start: LoopKit.StoredGlucoseSample(sampleUUID: DCEACFBA-69D4-4444-9329-5F8549A67434, syncIdentifier: "1547682374.0", syncVersion: 1, startDate: 2019-01-16 23:46:14 +0000, quantity: 340 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.VQ3BBL2C22.loopkit.Loop"), end: LoopKit.StoredGlucoseSample(sampleUUID: FAD5BF45-EEEA-405D-9C50-37B1D1E5EFAF, syncIdentifier: "1547684174.0", syncVersion: 1, startDate: 2019-01-17 00:16:14 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.VQ3BBL2C22.loopkit.Loop"))) -lastLoopCompleted: Optional(2019-01-17 00:15:55 +0000) -lastTempBasal: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-17 00:00:43 +0000, endDate: 2019-01-17 00:30:43 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: nil, scheduledBasalRate: nil)) -carbsOnBoard: Optional(LoopKit.CarbValue(startDate: 2019-01-17 00:15:00 +0000, endDate: 2019-01-17 00:15:00 +0000, quantity: 24.4756 g)) -error: nil - -cacheStore: ## PersistenceController -* isReadOnly: false -* directoryURL: file:///private/var/mobile/Containers/Shared/AppGroup/C647C9D0-726E-489D-9221-22CBA3BFDF42/com.loopkit.LoopKit/ -* persistenceStoreCoordinator: Optional() - -## GlucoseStore - -* latestGlucoseValue: Optional(LoopKit.StoredGlucoseSample(sampleUUID: FAD5BF45-EEEA-405D-9C50-37B1D1E5EFAF, syncIdentifier: "1547684174.0", syncVersion: 1, startDate: 2019-01-17 00:16:14 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "")) -* managedDataInterval: 10800.0 -* cacheLength: 86400.0 -* momentumDataInterval: 900.0 -* observerQuery: Optional() -* observationStart: 2019-01-15 13:08:36 +0000 -* observationEnabled: true -* authorizationRequired: false - -### cachedGlucoseSamples -StoredGlucoseSample(sampleUUID: A5F63E6A-9D69-4B60-8496-47A3627F3F13, syncIdentifier: "A5F63E6A-9D69-4B60-8496-47A3627F3F13", syncVersion: 1, startDate: 2019-01-16 00:21:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 41E3FC2B-F72E-4461-A335-EFBABDDA9849, syncIdentifier: "41E3FC2B-F72E-4461-A335-EFBABDDA9849", syncVersion: 1, startDate: 2019-01-16 00:26:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: BD62D8C8-41D2-4EF3-9619-4C353550A0D9, syncIdentifier: "BD62D8C8-41D2-4EF3-9619-4C353550A0D9", syncVersion: 1, startDate: 2019-01-16 00:31:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 3991983F-8517-450D-A29A-7A2C52E2392C, syncIdentifier: "3991983F-8517-450D-A29A-7A2C52E2392C", syncVersion: 1, startDate: 2019-01-16 00:36:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 66772EA0-6140-4AFC-827A-B7F88187E74A, syncIdentifier: "66772EA0-6140-4AFC-827A-B7F88187E74A", syncVersion: 1, startDate: 2019-01-16 00:41:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: DD9A5724-BE68-48B6-8F17-BA8ACBC0DF17, syncIdentifier: "DD9A5724-BE68-48B6-8F17-BA8ACBC0DF17", syncVersion: 1, startDate: 2019-01-16 00:46:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 0065E291-349D-46FB-AD7A-07494FC8AF45, syncIdentifier: "0065E291-349D-46FB-AD7A-07494FC8AF45", syncVersion: 1, startDate: 2019-01-16 00:51:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: C073929C-B99B-4E85-AB42-4C7830A8BF74, syncIdentifier: "C073929C-B99B-4E85-AB42-4C7830A8BF74", syncVersion: 1, startDate: 2019-01-16 00:56:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 30E5C628-85E4-433A-9A61-FD8DEE7A3A5F, syncIdentifier: "30E5C628-85E4-433A-9A61-FD8DEE7A3A5F", syncVersion: 1, startDate: 2019-01-16 01:01:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: E265F03B-6E55-453C-860F-B66084068067, syncIdentifier: "E265F03B-6E55-453C-860F-B66084068067", syncVersion: 1, startDate: 2019-01-16 01:06:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 56DFF002-331A-46A8-BF2B-BCD7AB096BEF, syncIdentifier: "56DFF002-331A-46A8-BF2B-BCD7AB096BEF", syncVersion: 1, startDate: 2019-01-16 01:11:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: C0F43159-4970-4994-A96B-724796CB9435, syncIdentifier: "C0F43159-4970-4994-A96B-724796CB9435", syncVersion: 1, startDate: 2019-01-16 01:16:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 49F50400-EAAA-4408-8947-315BDD27D7F6, syncIdentifier: "49F50400-EAAA-4408-8947-315BDD27D7F6", syncVersion: 1, startDate: 2019-01-16 01:21:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A9B0E528-2AAB-4C76-A181-7FD0F8F721ED, syncIdentifier: "A9B0E528-2AAB-4C76-A181-7FD0F8F721ED", syncVersion: 1, startDate: 2019-01-16 01:26:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 1CBB394F-FF2C-4ECA-8196-A1BCF33FA408, syncIdentifier: "1CBB394F-FF2C-4ECA-8196-A1BCF33FA408", syncVersion: 1, startDate: 2019-01-16 01:31:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: CD7AE6D6-DCF8-47F1-9358-B08BF9133508, syncIdentifier: "CD7AE6D6-DCF8-47F1-9358-B08BF9133508", syncVersion: 1, startDate: 2019-01-16 01:36:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A61BCBAA-CA65-49D9-A84C-E5C694DE7F3D, syncIdentifier: "A61BCBAA-CA65-49D9-A84C-E5C694DE7F3D", syncVersion: 1, startDate: 2019-01-16 01:41:16 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 895B3F5D-B0D5-4BD3-A5F4-0C16ABF93614, syncIdentifier: "895B3F5D-B0D5-4BD3-A5F4-0C16ABF93614", syncVersion: 1, startDate: 2019-01-16 01:46:16 +0000, quantity: 391 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 716705AD-324C-4F3D-83F3-955C2BB6EA43, syncIdentifier: "716705AD-324C-4F3D-83F3-955C2BB6EA43", syncVersion: 1, startDate: 2019-01-16 01:51:16 +0000, quantity: 387 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 5FE4C147-8A64-41C8-8CD9-02413D6C4831, syncIdentifier: "5FE4C147-8A64-41C8-8CD9-02413D6C4831", syncVersion: 1, startDate: 2019-01-16 01:56:16 +0000, quantity: 378 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 896FD042-4223-402A-966F-D3C35CEC45EC, syncIdentifier: "896FD042-4223-402A-966F-D3C35CEC45EC", syncVersion: 1, startDate: 2019-01-16 02:01:16 +0000, quantity: 362 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: AA135DE9-E6C3-468D-A075-1018B4282FE9, syncIdentifier: "AA135DE9-E6C3-468D-A075-1018B4282FE9", syncVersion: 1, startDate: 2019-01-16 02:06:16 +0000, quantity: 344 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 0CC738BD-CCBC-4AB1-9735-0BAFC806D42D, syncIdentifier: "0CC738BD-CCBC-4AB1-9735-0BAFC806D42D", syncVersion: 1, startDate: 2019-01-16 02:11:16 +0000, quantity: 326 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 53082037-3636-49E5-BEE7-BCA6FB077890, syncIdentifier: "53082037-3636-49E5-BEE7-BCA6FB077890", syncVersion: 1, startDate: 2019-01-16 02:16:16 +0000, quantity: 306 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 96DD560E-B933-443A-8E9B-8095CD67E65D, syncIdentifier: "96DD560E-B933-443A-8E9B-8095CD67E65D", syncVersion: 1, startDate: 2019-01-16 02:21:16 +0000, quantity: 285 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 8772919E-A8B3-4D86-8546-E285389BBFE6, syncIdentifier: "8772919E-A8B3-4D86-8546-E285389BBFE6", syncVersion: 1, startDate: 2019-01-16 02:26:16 +0000, quantity: 265 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 6A67B132-E287-45D9-8A80-D9414DB1EBD0, syncIdentifier: "6A67B132-E287-45D9-8A80-D9414DB1EBD0", syncVersion: 1, startDate: 2019-01-16 02:31:16 +0000, quantity: 247 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 9A53EE97-AF5B-4EEA-8562-A9D0934E1CBB, syncIdentifier: "9A53EE97-AF5B-4EEA-8562-A9D0934E1CBB", syncVersion: 1, startDate: 2019-01-16 02:36:16 +0000, quantity: 231 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 6F48AC0D-DE89-4F2C-B33B-06304D7AFD26, syncIdentifier: "6F48AC0D-DE89-4F2C-B33B-06304D7AFD26", syncVersion: 1, startDate: 2019-01-16 02:41:16 +0000, quantity: 218 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 8F20F1B8-515D-4BDE-9A97-DA2228558F3E, syncIdentifier: "8F20F1B8-515D-4BDE-9A97-DA2228558F3E", syncVersion: 1, startDate: 2019-01-16 02:46:16 +0000, quantity: 210 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A4B0CF46-DE1C-4F4C-8EC9-7F35DDE04F4D, syncIdentifier: "A4B0CF46-DE1C-4F4C-8EC9-7F35DDE04F4D", syncVersion: 1, startDate: 2019-01-16 02:51:16 +0000, quantity: 201 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: DF86042E-6843-4AB0-925F-D43673D1D059, syncIdentifier: "DF86042E-6843-4AB0-925F-D43673D1D059", syncVersion: 1, startDate: 2019-01-16 02:56:16 +0000, quantity: 189 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 43C0B9E5-34C8-4EA7-91B7-2F21E08E2572, syncIdentifier: "43C0B9E5-34C8-4EA7-91B7-2F21E08E2572", syncVersion: 1, startDate: 2019-01-16 03:01:16 +0000, quantity: 173 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A586C109-AE43-44E8-935E-CEBCAC724D28, syncIdentifier: "A586C109-AE43-44E8-935E-CEBCAC724D28", syncVersion: 1, startDate: 2019-01-16 03:06:16 +0000, quantity: 155 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 18907153-3062-4813-BD95-DE6F7F540CB0, syncIdentifier: "18907153-3062-4813-BD95-DE6F7F540CB0", syncVersion: 1, startDate: 2019-01-16 03:11:16 +0000, quantity: 137 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 5A7E1A48-DD42-414A-BD9E-7AC2928CCA33, syncIdentifier: "5A7E1A48-DD42-414A-BD9E-7AC2928CCA33", syncVersion: 1, startDate: 2019-01-16 03:16:16 +0000, quantity: 119 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 14338002-8AA9-40D7-9308-6728FFA9DBE1, syncIdentifier: "14338002-8AA9-40D7-9308-6728FFA9DBE1", syncVersion: 1, startDate: 2019-01-16 03:21:16 +0000, quantity: 102 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: B7DFB66C-8E8B-41A8-A12C-BEF480E1F228, syncIdentifier: "B7DFB66C-8E8B-41A8-A12C-BEF480E1F228", syncVersion: 1, startDate: 2019-01-16 03:26:16 +0000, quantity: 90 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 9F7264C1-9093-4276-9AF2-EECF4309A043, syncIdentifier: "9F7264C1-9093-4276-9AF2-EECF4309A043", syncVersion: 1, startDate: 2019-01-16 03:31:16 +0000, quantity: 81 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 9A9EB735-3ABA-43E9-8C2C-BF3AB6AA7595, syncIdentifier: "9A9EB735-3ABA-43E9-8C2C-BF3AB6AA7595", syncVersion: 1, startDate: 2019-01-16 03:36:16 +0000, quantity: 76 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: E5DCB69A-B30B-45A3-83A1-3C709CC72A47, syncIdentifier: "E5DCB69A-B30B-45A3-83A1-3C709CC72A47", syncVersion: 1, startDate: 2019-01-16 03:41:16 +0000, quantity: 74 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 4B0B8A53-24CD-4575-B78D-B160864C700A, syncIdentifier: "4B0B8A53-24CD-4575-B78D-B160864C700A", syncVersion: 1, startDate: 2019-01-16 03:46:16 +0000, quantity: 72 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A19C5B9A-D378-4ECF-A690-84FFDB327592, syncIdentifier: "A19C5B9A-D378-4ECF-A690-84FFDB327592", syncVersion: 1, startDate: 2019-01-16 03:51:16 +0000, quantity: 71 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 08C868AA-C7A2-4707-8430-5FC1F208435B, syncIdentifier: "08C868AA-C7A2-4707-8430-5FC1F208435B", syncVersion: 1, startDate: 2019-01-16 03:56:16 +0000, quantity: 68 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A2A651E2-2001-4E36-9B6A-980D5E17842F, syncIdentifier: "A2A651E2-2001-4E36-9B6A-980D5E17842F", syncVersion: 1, startDate: 2019-01-16 04:01:16 +0000, quantity: 66 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 50A3F20F-91F2-406A-9C5F-ED63B7249255, syncIdentifier: "50A3F20F-91F2-406A-9C5F-ED63B7249255", syncVersion: 1, startDate: 2019-01-16 04:06:16 +0000, quantity: 65 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 1420A883-CA9F-4497-9DE0-D0AF71A0C96E, syncIdentifier: "1420A883-CA9F-4497-9DE0-D0AF71A0C96E", syncVersion: 1, startDate: 2019-01-16 04:11:16 +0000, quantity: 63 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 3D6701E1-96FF-4264-82DC-1B10E726ABCD, syncIdentifier: "3D6701E1-96FF-4264-82DC-1B10E726ABCD", syncVersion: 1, startDate: 2019-01-16 04:16:16 +0000, quantity: 61 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: C21BD69C-2464-411C-B70E-A9168541C0B0, syncIdentifier: "C21BD69C-2464-411C-B70E-A9168541C0B0", syncVersion: 1, startDate: 2019-01-16 04:21:16 +0000, quantity: 57 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 9F3B0018-48CD-4527-8ADA-A751386BD4AF, syncIdentifier: "9F3B0018-48CD-4527-8ADA-A751386BD4AF", syncVersion: 1, startDate: 2019-01-16 04:26:16 +0000, quantity: 53 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 85F44787-B178-4DB1-8F88-3A122D85763E, syncIdentifier: "85F44787-B178-4DB1-8F88-3A122D85763E", syncVersion: 1, startDate: 2019-01-16 04:31:16 +0000, quantity: 56 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 24E5385A-0515-4277-B641-694B8EDF1DC7, syncIdentifier: "24E5385A-0515-4277-B641-694B8EDF1DC7", syncVersion: 1, startDate: 2019-01-16 04:36:16 +0000, quantity: 64 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 8744F178-E810-44DC-8D58-8238F4B5EF4D, syncIdentifier: "8744F178-E810-44DC-8D58-8238F4B5EF4D", syncVersion: 1, startDate: 2019-01-16 04:41:16 +0000, quantity: 82 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: B63A5843-9389-449F-BE7E-24F607AC2DD4, syncIdentifier: "B63A5843-9389-449F-BE7E-24F607AC2DD4", syncVersion: 1, startDate: 2019-01-16 04:46:16 +0000, quantity: 102 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 68C8130C-F75A-4F43-A29B-F04C9E3A41A0, syncIdentifier: "68C8130C-F75A-4F43-A29B-F04C9E3A41A0", syncVersion: 1, startDate: 2019-01-16 04:51:16 +0000, quantity: 127 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: E7D5094A-83B8-4001-9534-08F4E8DCADC1, syncIdentifier: "E7D5094A-83B8-4001-9534-08F4E8DCADC1", syncVersion: 1, startDate: 2019-01-16 04:56:15 +0000, quantity: 146 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 25812127-134A-4918-AFFD-BF56FF28DD4C, syncIdentifier: "25812127-134A-4918-AFFD-BF56FF28DD4C", syncVersion: 1, startDate: 2019-01-16 05:01:16 +0000, quantity: 163 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 9FA891A5-E461-455E-B084-B1ED7A1AF3CF, syncIdentifier: "9FA891A5-E461-455E-B084-B1ED7A1AF3CF", syncVersion: 1, startDate: 2019-01-16 05:06:16 +0000, quantity: 177 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 621A1AFD-BE2B-4D15-ACA9-273DCEC70EB5, syncIdentifier: "621A1AFD-BE2B-4D15-ACA9-273DCEC70EB5", syncVersion: 1, startDate: 2019-01-16 05:11:16 +0000, quantity: 186 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: D3BD2E1F-5C92-4A4F-AE6E-C3D4B9A7D06B, syncIdentifier: "D3BD2E1F-5C92-4A4F-AE6E-C3D4B9A7D06B", syncVersion: 1, startDate: 2019-01-16 05:16:16 +0000, quantity: 190 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 6288219C-119D-404C-AAC6-FDF42195C5CF, syncIdentifier: "6288219C-119D-404C-AAC6-FDF42195C5CF", syncVersion: 1, startDate: 2019-01-16 05:21:16 +0000, quantity: 191 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: DD385614-E76A-4232-878C-66195DBB5019, syncIdentifier: "DD385614-E76A-4232-878C-66195DBB5019", syncVersion: 1, startDate: 2019-01-16 05:26:17 +0000, quantity: 192 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: D60D8276-9E8F-4D99-B259-1BC0C2C6FCDF, syncIdentifier: "D60D8276-9E8F-4D99-B259-1BC0C2C6FCDF", syncVersion: 1, startDate: 2019-01-16 05:31:17 +0000, quantity: 194 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: D2C074AE-174A-4E13-8034-DF5CE2C1BB16, syncIdentifier: "D2C074AE-174A-4E13-8034-DF5CE2C1BB16", syncVersion: 1, startDate: 2019-01-16 05:36:17 +0000, quantity: 192 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: BD48AAB0-89DB-4334-A0BE-030BBFB7A395, syncIdentifier: "BD48AAB0-89DB-4334-A0BE-030BBFB7A395", syncVersion: 1, startDate: 2019-01-16 05:41:17 +0000, quantity: 181 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 50623210-B780-4B9C-BCC0-6FB9B1F07A96, syncIdentifier: "50623210-B780-4B9C-BCC0-6FB9B1F07A96", syncVersion: 1, startDate: 2019-01-16 05:46:17 +0000, quantity: 162 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: E3818C9B-7B91-4718-805C-51DD9FF289F7, syncIdentifier: "E3818C9B-7B91-4718-805C-51DD9FF289F7", syncVersion: 1, startDate: 2019-01-16 05:51:17 +0000, quantity: 142 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: FCCDAE81-7630-4957-AB62-0CDAA558A326, syncIdentifier: "FCCDAE81-7630-4957-AB62-0CDAA558A326", syncVersion: 1, startDate: 2019-01-16 05:56:17 +0000, quantity: 130 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: D93E045A-CD2F-4E04-B04C-6883A5A87D74, syncIdentifier: "D93E045A-CD2F-4E04-B04C-6883A5A87D74", syncVersion: 1, startDate: 2019-01-16 06:01:17 +0000, quantity: 125 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: B1A2E43C-9601-457F-8911-09EE7047E678, syncIdentifier: "B1A2E43C-9601-457F-8911-09EE7047E678", syncVersion: 1, startDate: 2019-01-16 06:06:17 +0000, quantity: 123 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: C2662E87-40DB-4737-A745-26278EC9E399, syncIdentifier: "C2662E87-40DB-4737-A745-26278EC9E399", syncVersion: 1, startDate: 2019-01-16 06:11:17 +0000, quantity: 118 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 05AD31FD-6431-46BA-9952-DCB89F38B07B, syncIdentifier: "05AD31FD-6431-46BA-9952-DCB89F38B07B", syncVersion: 1, startDate: 2019-01-16 06:16:17 +0000, quantity: 113 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 07487EE3-2A8E-4258-9348-BB7A2426F2AD, syncIdentifier: "07487EE3-2A8E-4258-9348-BB7A2426F2AD", syncVersion: 1, startDate: 2019-01-16 06:21:17 +0000, quantity: 108 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A7ECACAA-39B6-4237-9C7C-1787B4460920, syncIdentifier: "A7ECACAA-39B6-4237-9C7C-1787B4460920", syncVersion: 1, startDate: 2019-01-16 06:26:17 +0000, quantity: 105 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 62B59FC2-6C0F-442B-8ACE-0D06E0EB3997, syncIdentifier: "62B59FC2-6C0F-442B-8ACE-0D06E0EB3997", syncVersion: 1, startDate: 2019-01-16 06:31:17 +0000, quantity: 104 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: DB791FE0-4734-461B-BC3F-2F79BCB1B32D, syncIdentifier: "DB791FE0-4734-461B-BC3F-2F79BCB1B32D", syncVersion: 1, startDate: 2019-01-16 06:36:17 +0000, quantity: 105 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: C9B19216-C811-44EE-99CB-191068D73952, syncIdentifier: "C9B19216-C811-44EE-99CB-191068D73952", syncVersion: 1, startDate: 2019-01-16 06:41:16 +0000, quantity: 106 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: B7F8D429-EA34-49E9-807B-61C2C6D5F59B, syncIdentifier: "B7F8D429-EA34-49E9-807B-61C2C6D5F59B", syncVersion: 1, startDate: 2019-01-16 06:46:17 +0000, quantity: 108 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: B2868E41-EF0D-469A-B35C-041A6C5DAD53, syncIdentifier: "B2868E41-EF0D-469A-B35C-041A6C5DAD53", syncVersion: 1, startDate: 2019-01-16 06:51:17 +0000, quantity: 110 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 30CC7A76-B466-4F2C-A6A4-5A537EBEEA5A, syncIdentifier: "30CC7A76-B466-4F2C-A6A4-5A537EBEEA5A", syncVersion: 1, startDate: 2019-01-16 06:56:16 +0000, quantity: 112 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 9B5F6EE0-C543-44DE-88DE-FDDF96A9DA80, syncIdentifier: "9B5F6EE0-C543-44DE-88DE-FDDF96A9DA80", syncVersion: 1, startDate: 2019-01-16 07:01:17 +0000, quantity: 115 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 32AD5C76-842B-47CE-ABF2-5290EC778727, syncIdentifier: "32AD5C76-842B-47CE-ABF2-5290EC778727", syncVersion: 1, startDate: 2019-01-16 07:06:17 +0000, quantity: 119 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 7A524750-BAEC-419D-8A05-FDCC3EE5EFBC, syncIdentifier: "7A524750-BAEC-419D-8A05-FDCC3EE5EFBC", syncVersion: 1, startDate: 2019-01-16 07:11:16 +0000, quantity: 126 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: CF8E0B07-F7B3-4578-AD80-7215197AD111, syncIdentifier: "CF8E0B07-F7B3-4578-AD80-7215197AD111", syncVersion: 1, startDate: 2019-01-16 07:16:17 +0000, quantity: 138 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: CC0526D1-5792-4A4C-8A05-5942F6C15986, syncIdentifier: "CC0526D1-5792-4A4C-8A05-5942F6C15986", syncVersion: 1, startDate: 2019-01-16 07:21:17 +0000, quantity: 151 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: C402A869-794D-4EDD-933F-8C0E7F96056E, syncIdentifier: "C402A869-794D-4EDD-933F-8C0E7F96056E", syncVersion: 1, startDate: 2019-01-16 07:26:17 +0000, quantity: 165 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: D36058AF-7A99-495D-B741-32BF8F73C11E, syncIdentifier: "D36058AF-7A99-495D-B741-32BF8F73C11E", syncVersion: 1, startDate: 2019-01-16 07:31:17 +0000, quantity: 176 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: FA03D1DD-B4E9-4131-BE9B-811F63075D04, syncIdentifier: "FA03D1DD-B4E9-4131-BE9B-811F63075D04", syncVersion: 1, startDate: 2019-01-16 07:36:17 +0000, quantity: 185 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 75C3A842-F5F2-42F2-8620-689731260091, syncIdentifier: "75C3A842-F5F2-42F2-8620-689731260091", syncVersion: 1, startDate: 2019-01-16 07:41:17 +0000, quantity: 192 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: AC962B31-C237-4558-824A-06599D61F090, syncIdentifier: "AC962B31-C237-4558-824A-06599D61F090", syncVersion: 1, startDate: 2019-01-16 07:46:17 +0000, quantity: 196 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 95C61722-5D7C-45BA-9E5D-32569B6738E8, syncIdentifier: "95C61722-5D7C-45BA-9E5D-32569B6738E8", syncVersion: 1, startDate: 2019-01-16 07:51:17 +0000, quantity: 197 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 64EAEE19-69ED-4751-929D-8B32497E7CBA, syncIdentifier: "64EAEE19-69ED-4751-929D-8B32497E7CBA", syncVersion: 1, startDate: 2019-01-16 07:56:17 +0000, quantity: 197 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A11994B4-74C8-4E98-B396-F68F92EE43A9, syncIdentifier: "A11994B4-74C8-4E98-B396-F68F92EE43A9", syncVersion: 1, startDate: 2019-01-16 08:01:16 +0000, quantity: 194 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: F6F5CBA3-F6C3-42A7-94DE-9181B2C7332A, syncIdentifier: "F6F5CBA3-F6C3-42A7-94DE-9181B2C7332A", syncVersion: 1, startDate: 2019-01-16 08:06:17 +0000, quantity: 191 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 99BB01CE-C27E-426E-93C6-2DC08AB28894, syncIdentifier: "99BB01CE-C27E-426E-93C6-2DC08AB28894", syncVersion: 1, startDate: 2019-01-16 08:11:17 +0000, quantity: 187 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 55AAF5AB-B904-4284-A336-F54349E61985, syncIdentifier: "55AAF5AB-B904-4284-A336-F54349E61985", syncVersion: 1, startDate: 2019-01-16 08:16:17 +0000, quantity: 183 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 2ED3CD15-7DF1-4DC8-81A9-C4B9F0AC8E0D, syncIdentifier: "2ED3CD15-7DF1-4DC8-81A9-C4B9F0AC8E0D", syncVersion: 1, startDate: 2019-01-16 08:21:17 +0000, quantity: 178 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 8B5AF2C0-7A9A-4C74-99D4-182F45996DDA, syncIdentifier: "8B5AF2C0-7A9A-4C74-99D4-182F45996DDA", syncVersion: 1, startDate: 2019-01-16 08:26:17 +0000, quantity: 172 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 20DE8313-64EE-4CC7-98C3-AF8B028C551C, syncIdentifier: "20DE8313-64EE-4CC7-98C3-AF8B028C551C", syncVersion: 1, startDate: 2019-01-16 08:31:17 +0000, quantity: 167 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: FB914E55-27D0-441F-B466-38F68AE05FDC, syncIdentifier: "FB914E55-27D0-441F-B466-38F68AE05FDC", syncVersion: 1, startDate: 2019-01-16 08:36:17 +0000, quantity: 162 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: EB5BB5B4-18E6-4BB8-99D5-4751AD7B3AD9, syncIdentifier: "EB5BB5B4-18E6-4BB8-99D5-4751AD7B3AD9", syncVersion: 1, startDate: 2019-01-16 08:41:17 +0000, quantity: 151 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 8E743ABC-235C-4BC6-AABB-478F82F12B5A, syncIdentifier: "8E743ABC-235C-4BC6-AABB-478F82F12B5A", syncVersion: 1, startDate: 2019-01-16 08:46:17 +0000, quantity: 140 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: F8AABA0E-F8C1-4E80-821B-1EB550C53872, syncIdentifier: "F8AABA0E-F8C1-4E80-821B-1EB550C53872", syncVersion: 1, startDate: 2019-01-16 08:51:17 +0000, quantity: 131 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 1082A623-6F1F-4BBE-964A-6ED80F60BD71, syncIdentifier: "1082A623-6F1F-4BBE-964A-6ED80F60BD71", syncVersion: 1, startDate: 2019-01-16 08:56:17 +0000, quantity: 130 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 6B6FB29E-B4F5-42C9-BE9A-4E03E4DC354B, syncIdentifier: "6B6FB29E-B4F5-42C9-BE9A-4E03E4DC354B", syncVersion: 1, startDate: 2019-01-16 09:01:16 +0000, quantity: 129 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 14949F64-4253-4365-BC04-5F41F1BCBF40, syncIdentifier: "14949F64-4253-4365-BC04-5F41F1BCBF40", syncVersion: 1, startDate: 2019-01-16 09:06:16 +0000, quantity: 129 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 78540582-B127-4538-A903-5DA0F9B22555, syncIdentifier: "78540582-B127-4538-A903-5DA0F9B22555", syncVersion: 1, startDate: 2019-01-16 09:11:17 +0000, quantity: 131 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 659A8698-A761-427D-9226-BFF0F99B5D81, syncIdentifier: "659A8698-A761-427D-9226-BFF0F99B5D81", syncVersion: 1, startDate: 2019-01-16 09:16:16 +0000, quantity: 132 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 1411F188-50FA-4D0B-BE64-D733B8A82475, syncIdentifier: "1411F188-50FA-4D0B-BE64-D733B8A82475", syncVersion: 1, startDate: 2019-01-16 09:21:16 +0000, quantity: 133 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 4CB98E34-1E43-4F57-90BC-FC68443B3585, syncIdentifier: "4CB98E34-1E43-4F57-90BC-FC68443B3585", syncVersion: 1, startDate: 2019-01-16 09:26:15 +0000, quantity: 131 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: D51B2912-53E3-485E-B1ED-59D82A3A95DF, syncIdentifier: "D51B2912-53E3-485E-B1ED-59D82A3A95DF", syncVersion: 1, startDate: 2019-01-16 09:31:16 +0000, quantity: 130 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 748766EC-F14D-410E-B3D0-0E4FAF65AA05, syncIdentifier: "748766EC-F14D-410E-B3D0-0E4FAF65AA05", syncVersion: 1, startDate: 2019-01-16 09:36:16 +0000, quantity: 132 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: ADFE430D-0063-48BD-B614-8DA9FB231AE3, syncIdentifier: "ADFE430D-0063-48BD-B614-8DA9FB231AE3", syncVersion: 1, startDate: 2019-01-16 09:41:16 +0000, quantity: 134 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 8898A7E6-DB0D-4C5F-8FA8-3404BF41AFA1, syncIdentifier: "8898A7E6-DB0D-4C5F-8FA8-3404BF41AFA1", syncVersion: 1, startDate: 2019-01-16 09:46:16 +0000, quantity: 135 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 532A4857-324C-44E6-A7FD-E7027B5890BB, syncIdentifier: "532A4857-324C-44E6-A7FD-E7027B5890BB", syncVersion: 1, startDate: 2019-01-16 09:51:16 +0000, quantity: 134 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 222824B5-73EE-4B78-996F-23C925DFA27C, syncIdentifier: "222824B5-73EE-4B78-996F-23C925DFA27C", syncVersion: 1, startDate: 2019-01-16 09:56:16 +0000, quantity: 132 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: EDB54975-0E6A-46D4-A130-C9D6D83078B3, syncIdentifier: "EDB54975-0E6A-46D4-A130-C9D6D83078B3", syncVersion: 1, startDate: 2019-01-16 10:01:16 +0000, quantity: 130 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: D1E24E9E-C370-4494-A592-06716FF92655, syncIdentifier: "D1E24E9E-C370-4494-A592-06716FF92655", syncVersion: 1, startDate: 2019-01-16 10:06:16 +0000, quantity: 128 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 8B7EF469-44ED-409B-961E-434ABCDF156B, syncIdentifier: "8B7EF469-44ED-409B-961E-434ABCDF156B", syncVersion: 1, startDate: 2019-01-16 10:11:16 +0000, quantity: 126 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 2AEF7415-285E-44AB-9A98-C0E9C7F1DDF1, syncIdentifier: "2AEF7415-285E-44AB-9A98-C0E9C7F1DDF1", syncVersion: 1, startDate: 2019-01-16 10:16:16 +0000, quantity: 123 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: F2F272DB-7DAC-48D6-9375-BB762214B847, syncIdentifier: "F2F272DB-7DAC-48D6-9375-BB762214B847", syncVersion: 1, startDate: 2019-01-16 10:21:15 +0000, quantity: 121 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 50BF2446-2B55-4839-BA54-E655D3A9A559, syncIdentifier: "50BF2446-2B55-4839-BA54-E655D3A9A559", syncVersion: 1, startDate: 2019-01-16 10:26:16 +0000, quantity: 119 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 8F60EC38-2F62-4DF5-98AF-C3A5B9C22BDD, syncIdentifier: "8F60EC38-2F62-4DF5-98AF-C3A5B9C22BDD", syncVersion: 1, startDate: 2019-01-16 10:31:15 +0000, quantity: 117 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 4C17D963-E81C-4B6D-A3D0-EB624E88EA1E, syncIdentifier: "4C17D963-E81C-4B6D-A3D0-EB624E88EA1E", syncVersion: 1, startDate: 2019-01-16 10:36:16 +0000, quantity: 115 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 974E89A8-EBCD-4063-BCAF-C99D9A0567FB, syncIdentifier: "974E89A8-EBCD-4063-BCAF-C99D9A0567FB", syncVersion: 1, startDate: 2019-01-16 10:41:16 +0000, quantity: 113 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 2435EED0-A171-4641-9F49-D9D3DFA9DBB1, syncIdentifier: "2435EED0-A171-4641-9F49-D9D3DFA9DBB1", syncVersion: 1, startDate: 2019-01-16 10:46:15 +0000, quantity: 112 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 6AEF2517-4842-458C-8E9F-1EAB2BD258A3, syncIdentifier: "6AEF2517-4842-458C-8E9F-1EAB2BD258A3", syncVersion: 1, startDate: 2019-01-16 10:51:16 +0000, quantity: 111 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 81F67AB4-1D5F-401B-87D6-E0C550B097AE, syncIdentifier: "81F67AB4-1D5F-401B-87D6-E0C550B097AE", syncVersion: 1, startDate: 2019-01-16 10:56:16 +0000, quantity: 109 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 49269F6D-176B-4A20-88C6-45CD5706841A, syncIdentifier: "49269F6D-176B-4A20-88C6-45CD5706841A", syncVersion: 1, startDate: 2019-01-16 11:01:16 +0000, quantity: 107 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: B6A7FF53-87BA-477B-A67B-7D8367EE67A4, syncIdentifier: "B6A7FF53-87BA-477B-A67B-7D8367EE67A4", syncVersion: 1, startDate: 2019-01-16 11:06:15 +0000, quantity: 105 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: CA009642-F5F0-4A8A-AD51-A245B6E3F372, syncIdentifier: "CA009642-F5F0-4A8A-AD51-A245B6E3F372", syncVersion: 1, startDate: 2019-01-16 11:11:15 +0000, quantity: 101 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 5A6DA2E0-1020-4570-B94C-E4BDEF02F427, syncIdentifier: "5A6DA2E0-1020-4570-B94C-E4BDEF02F427", syncVersion: 1, startDate: 2019-01-16 11:16:16 +0000, quantity: 98 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 3FF946D6-2213-43F3-A115-F3EB1B148485, syncIdentifier: "3FF946D6-2213-43F3-A115-F3EB1B148485", syncVersion: 1, startDate: 2019-01-16 11:21:15 +0000, quantity: 95 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: FB060248-B713-46B3-9C76-9CDDDBB6FEF1, syncIdentifier: "FB060248-B713-46B3-9C76-9CDDDBB6FEF1", syncVersion: 1, startDate: 2019-01-16 11:26:16 +0000, quantity: 93 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 7D4C0221-6EBB-4325-828F-2E8DF95C3C86, syncIdentifier: "7D4C0221-6EBB-4325-828F-2E8DF95C3C86", syncVersion: 1, startDate: 2019-01-16 11:31:16 +0000, quantity: 94 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: C1BC1289-54E6-4F8B-B12A-09612538C9D4, syncIdentifier: "C1BC1289-54E6-4F8B-B12A-09612538C9D4", syncVersion: 1, startDate: 2019-01-16 11:36:16 +0000, quantity: 97 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: D9C4F98D-EE0E-4327-BCE9-FE458988E3BF, syncIdentifier: "D9C4F98D-EE0E-4327-BCE9-FE458988E3BF", syncVersion: 1, startDate: 2019-01-16 11:41:16 +0000, quantity: 100 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 0900B59C-F54E-4F43-8DCE-BCF4BBE857B8, syncIdentifier: "0900B59C-F54E-4F43-8DCE-BCF4BBE857B8", syncVersion: 1, startDate: 2019-01-16 11:46:16 +0000, quantity: 101 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 2701E162-9AE2-4D99-A48D-EA943F2D10A9, syncIdentifier: "2701E162-9AE2-4D99-A48D-EA943F2D10A9", syncVersion: 1, startDate: 2019-01-16 11:51:16 +0000, quantity: 100 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 5E200FC0-0344-4719-9FF1-6B9503F64471, syncIdentifier: "5E200FC0-0344-4719-9FF1-6B9503F64471", syncVersion: 1, startDate: 2019-01-16 11:56:16 +0000, quantity: 100 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 0A393B24-1267-448D-8AA4-B40CA6E12CB7, syncIdentifier: "0A393B24-1267-448D-8AA4-B40CA6E12CB7", syncVersion: 1, startDate: 2019-01-16 12:01:16 +0000, quantity: 102 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: EDEDD7ED-85DE-4BC9-A5BA-CFD5443F6802, syncIdentifier: "EDEDD7ED-85DE-4BC9-A5BA-CFD5443F6802", syncVersion: 1, startDate: 2019-01-16 12:06:16 +0000, quantity: 104 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 6E43C21A-2B5D-4963-9781-0D656888B28F, syncIdentifier: "6E43C21A-2B5D-4963-9781-0D656888B28F", syncVersion: 1, startDate: 2019-01-16 12:11:16 +0000, quantity: 105 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A633B0B6-20CE-47E4-B9C4-8749E0ACAB72, syncIdentifier: "A633B0B6-20CE-47E4-B9C4-8749E0ACAB72", syncVersion: 1, startDate: 2019-01-16 12:16:16 +0000, quantity: 108 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 076D9233-DFF3-482E-9F61-A5C68D1D5330, syncIdentifier: "076D9233-DFF3-482E-9F61-A5C68D1D5330", syncVersion: 1, startDate: 2019-01-16 12:21:16 +0000, quantity: 114 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 8F73E40C-3C16-46C5-8983-06F7A1AF97DF, syncIdentifier: "8F73E40C-3C16-46C5-8983-06F7A1AF97DF", syncVersion: 1, startDate: 2019-01-16 12:26:16 +0000, quantity: 120 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: F4295207-E6A3-4BB6-8A64-23876CFF269F, syncIdentifier: "F4295207-E6A3-4BB6-8A64-23876CFF269F", syncVersion: 1, startDate: 2019-01-16 12:31:16 +0000, quantity: 121 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 6537B3C6-3368-4BD6-8C5F-2BE6127CF36E, syncIdentifier: "6537B3C6-3368-4BD6-8C5F-2BE6127CF36E", syncVersion: 1, startDate: 2019-01-16 12:36:16 +0000, quantity: 117 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 5BA9CEE9-3038-4426-97F5-F1FA5022A702, syncIdentifier: "5BA9CEE9-3038-4426-97F5-F1FA5022A702", syncVersion: 1, startDate: 2019-01-16 12:41:15 +0000, quantity: 117 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: E017156E-2008-417A-8551-4C22524BE10E, syncIdentifier: "E017156E-2008-417A-8551-4C22524BE10E", syncVersion: 1, startDate: 2019-01-16 12:46:16 +0000, quantity: 124 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 940504F8-1FEC-4B84-A41A-FD48A004FD89, syncIdentifier: "940504F8-1FEC-4B84-A41A-FD48A004FD89", syncVersion: 1, startDate: 2019-01-16 12:51:16 +0000, quantity: 144 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 4E745C10-B0AC-46F6-8E0D-69F198595F0B, syncIdentifier: "4E745C10-B0AC-46F6-8E0D-69F198595F0B", syncVersion: 1, startDate: 2019-01-16 12:56:16 +0000, quantity: 167 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 3F04AD86-5174-4365-928A-E19335922605, syncIdentifier: "3F04AD86-5174-4365-928A-E19335922605", syncVersion: 1, startDate: 2019-01-16 13:01:16 +0000, quantity: 192 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 979AAFD0-9163-4086-88A6-96BA5CC24138, syncIdentifier: "979AAFD0-9163-4086-88A6-96BA5CC24138", syncVersion: 1, startDate: 2019-01-16 13:06:15 +0000, quantity: 216 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A1ED6A6A-6333-4469-B327-6C2E8DEBE709, syncIdentifier: "A1ED6A6A-6333-4469-B327-6C2E8DEBE709", syncVersion: 1, startDate: 2019-01-16 13:36:14 +0000, quantity: 195 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A2DC8925-3D13-484D-9C86-DFB32C206551, syncIdentifier: "A2DC8925-3D13-484D-9C86-DFB32C206551", syncVersion: 1, startDate: 2019-01-16 13:41:14 +0000, quantity: 183 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 7C05EF53-7FB4-430C-8A00-E5949FE0C26C, syncIdentifier: "7C05EF53-7FB4-430C-8A00-E5949FE0C26C", syncVersion: 1, startDate: 2019-01-16 13:46:14 +0000, quantity: 173 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: E4048FCE-9C81-42C1-8631-1A41B6E87877, syncIdentifier: "E4048FCE-9C81-42C1-8631-1A41B6E87877", syncVersion: 1, startDate: 2019-01-16 13:51:14 +0000, quantity: 166 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: F1E751DE-9A33-481F-8ECC-9B5CC39FB89A, syncIdentifier: "F1E751DE-9A33-481F-8ECC-9B5CC39FB89A", syncVersion: 1, startDate: 2019-01-16 13:56:14 +0000, quantity: 160 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: DCA32DF2-AB02-4B33-8B41-D9F38FB4CA01, syncIdentifier: "DCA32DF2-AB02-4B33-8B41-D9F38FB4CA01", syncVersion: 1, startDate: 2019-01-16 14:01:14 +0000, quantity: 153 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 8EA496E1-B6A6-4A47-92C9-DDEABE45F55A, syncIdentifier: "8EA496E1-B6A6-4A47-92C9-DDEABE45F55A", syncVersion: 1, startDate: 2019-01-16 14:06:14 +0000, quantity: 144 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 3EF130D9-0219-49EA-9105-C6E2C4B0CFD3, syncIdentifier: "3EF130D9-0219-49EA-9105-C6E2C4B0CFD3", syncVersion: 1, startDate: 2019-01-16 14:11:14 +0000, quantity: 134 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: E1F30450-6785-4AD4-A6A1-01DD510B5F17, syncIdentifier: "E1F30450-6785-4AD4-A6A1-01DD510B5F17", syncVersion: 1, startDate: 2019-01-16 14:16:14 +0000, quantity: 125 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 15D162A9-802D-482C-9A9B-064AE9F0140B, syncIdentifier: "15D162A9-802D-482C-9A9B-064AE9F0140B", syncVersion: 1, startDate: 2019-01-16 14:21:14 +0000, quantity: 119 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 00913CB1-0587-423C-BC90-96008559F9B2, syncIdentifier: "00913CB1-0587-423C-BC90-96008559F9B2", syncVersion: 1, startDate: 2019-01-16 14:26:14 +0000, quantity: 113 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 050BDD9F-113E-49C2-B6D0-E1D5921A76BE, syncIdentifier: "050BDD9F-113E-49C2-B6D0-E1D5921A76BE", syncVersion: 1, startDate: 2019-01-16 14:31:14 +0000, quantity: 108 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A0E21F8F-D8EA-4DCB-8FEC-D6FD3F1AE18D, syncIdentifier: "A0E21F8F-D8EA-4DCB-8FEC-D6FD3F1AE18D", syncVersion: 1, startDate: 2019-01-16 14:36:14 +0000, quantity: 102 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 77B4BC63-B768-4FE7-AB97-8DDE62A22C60, syncIdentifier: "77B4BC63-B768-4FE7-AB97-8DDE62A22C60", syncVersion: 1, startDate: 2019-01-16 14:41:14 +0000, quantity: 98 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: BA4FF16F-8483-4CEF-87BB-23D6ACDF389D, syncIdentifier: "BA4FF16F-8483-4CEF-87BB-23D6ACDF389D", syncVersion: 1, startDate: 2019-01-16 14:46:14 +0000, quantity: 95 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: D152FEF7-6790-4D45-BA08-3A7994E89E4A, syncIdentifier: "D152FEF7-6790-4D45-BA08-3A7994E89E4A", syncVersion: 1, startDate: 2019-01-16 14:51:14 +0000, quantity: 93 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 89952E7F-633E-44CA-AEC5-602851341984, syncIdentifier: "89952E7F-633E-44CA-AEC5-602851341984", syncVersion: 1, startDate: 2019-01-16 14:56:14 +0000, quantity: 91 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 07FEAB12-90EF-4CEC-A1D3-48CE5639D5CC, syncIdentifier: "07FEAB12-90EF-4CEC-A1D3-48CE5639D5CC", syncVersion: 1, startDate: 2019-01-16 15:01:14 +0000, quantity: 89 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 9EC231BC-51A5-4521-A412-6834AA7AE732, syncIdentifier: "9EC231BC-51A5-4521-A412-6834AA7AE732", syncVersion: 1, startDate: 2019-01-16 15:06:14 +0000, quantity: 89 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 5FB8F244-C960-4A3C-BCB9-F02AE7A52309, syncIdentifier: "5FB8F244-C960-4A3C-BCB9-F02AE7A52309", syncVersion: 1, startDate: 2019-01-16 15:11:14 +0000, quantity: 90 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 079CEDFD-E176-4FB7-A490-EADE255B809B, syncIdentifier: "079CEDFD-E176-4FB7-A490-EADE255B809B", syncVersion: 1, startDate: 2019-01-16 15:16:14 +0000, quantity: 92 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 987B2085-CE94-4818-B9F8-C878E0181F18, syncIdentifier: "987B2085-CE94-4818-B9F8-C878E0181F18", syncVersion: 1, startDate: 2019-01-16 15:21:14 +0000, quantity: 93 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: B02756A9-FBCF-4405-A84A-F95BCB879234, syncIdentifier: "B02756A9-FBCF-4405-A84A-F95BCB879234", syncVersion: 1, startDate: 2019-01-16 15:26:14 +0000, quantity: 92 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: AF5089B0-6E0D-4E02-8486-E6CA3A21D98F, syncIdentifier: "AF5089B0-6E0D-4E02-8486-E6CA3A21D98F", syncVersion: 1, startDate: 2019-01-16 15:31:14 +0000, quantity: 91 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 6A830BC9-D8D1-4BF8-9B3F-1A39D211301D, syncIdentifier: "6A830BC9-D8D1-4BF8-9B3F-1A39D211301D", syncVersion: 1, startDate: 2019-01-16 15:36:14 +0000, quantity: 89 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: C7186DD4-314A-4AD5-A0BD-3EFB8CFA5983, syncIdentifier: "C7186DD4-314A-4AD5-A0BD-3EFB8CFA5983", syncVersion: 1, startDate: 2019-01-16 15:41:14 +0000, quantity: 89 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 892B3058-CFD1-4E21-B17A-2AC32537774B, syncIdentifier: "892B3058-CFD1-4E21-B17A-2AC32537774B", syncVersion: 1, startDate: 2019-01-16 15:46:14 +0000, quantity: 89 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 37E5371E-D49A-4682-B76C-DCDDB2EE59B5, syncIdentifier: "37E5371E-D49A-4682-B76C-DCDDB2EE59B5", syncVersion: 1, startDate: 2019-01-16 15:51:14 +0000, quantity: 90 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 6C0937D7-E7C8-4825-B4A8-D8E65B9BA7EE, syncIdentifier: "6C0937D7-E7C8-4825-B4A8-D8E65B9BA7EE", syncVersion: 1, startDate: 2019-01-16 15:56:14 +0000, quantity: 90 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 9870D2BF-EDCC-4E52-9702-6F657F7F7B08, syncIdentifier: "9870D2BF-EDCC-4E52-9702-6F657F7F7B08", syncVersion: 1, startDate: 2019-01-16 16:01:14 +0000, quantity: 90 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A1C1ECA8-2C83-4ECC-A6E9-5E954A6D8605, syncIdentifier: "A1C1ECA8-2C83-4ECC-A6E9-5E954A6D8605", syncVersion: 1, startDate: 2019-01-16 16:06:14 +0000, quantity: 89 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 536026B4-9D68-4092-A6A0-5F96A2A9AF0B, syncIdentifier: "536026B4-9D68-4092-A6A0-5F96A2A9AF0B", syncVersion: 1, startDate: 2019-01-16 16:11:14 +0000, quantity: 86 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 3730A431-D8B1-4D52-9A39-97C04A077B8F, syncIdentifier: "3730A431-D8B1-4D52-9A39-97C04A077B8F", syncVersion: 1, startDate: 2019-01-16 16:16:14 +0000, quantity: 85 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: D0710CD8-2DC7-4454-9FA0-A12C0F8D66C9, syncIdentifier: "D0710CD8-2DC7-4454-9FA0-A12C0F8D66C9", syncVersion: 1, startDate: 2019-01-16 16:21:14 +0000, quantity: 83 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 38D6666E-A432-49CD-9D73-E58DF3CA646D, syncIdentifier: "38D6666E-A432-49CD-9D73-E58DF3CA646D", syncVersion: 1, startDate: 2019-01-16 16:26:14 +0000, quantity: 83 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: D180B47D-F745-4F37-9068-C934194EDEB1, syncIdentifier: "D180B47D-F745-4F37-9068-C934194EDEB1", syncVersion: 1, startDate: 2019-01-16 16:31:14 +0000, quantity: 80 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 38B13250-FA32-493C-8028-6AA65C3BCBD3, syncIdentifier: "38B13250-FA32-493C-8028-6AA65C3BCBD3", syncVersion: 1, startDate: 2019-01-16 16:36:14 +0000, quantity: 77 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: CB8FF43F-A4B5-452C-ABD1-EDBD92F5EF88, syncIdentifier: "CB8FF43F-A4B5-452C-ABD1-EDBD92F5EF88", syncVersion: 1, startDate: 2019-01-16 16:41:15 +0000, quantity: 74 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 8F75F09C-1CE1-45EB-869F-C546007E079A, syncIdentifier: "8F75F09C-1CE1-45EB-869F-C546007E079A", syncVersion: 1, startDate: 2019-01-16 16:46:15 +0000, quantity: 70 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 32FB6DF6-EF0A-484A-9212-E717C05CCDA3, syncIdentifier: "32FB6DF6-EF0A-484A-9212-E717C05CCDA3", syncVersion: 1, startDate: 2019-01-16 16:51:14 +0000, quantity: 69 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 329D73AF-D524-4075-A3A5-047E9C877885, syncIdentifier: "329D73AF-D524-4075-A3A5-047E9C877885", syncVersion: 1, startDate: 2019-01-16 16:56:14 +0000, quantity: 72 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: FD72DD34-E7CA-4DD0-94B5-CBD4C9487E90, syncIdentifier: "FD72DD34-E7CA-4DD0-94B5-CBD4C9487E90", syncVersion: 1, startDate: 2019-01-16 17:01:14 +0000, quantity: 79 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: F86EACF0-AC62-4D2A-AD63-ED1BCAD407D4, syncIdentifier: "F86EACF0-AC62-4D2A-AD63-ED1BCAD407D4", syncVersion: 1, startDate: 2019-01-16 17:06:15 +0000, quantity: 86 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 3A04D93A-4511-4DCE-BC65-88D192EEC0BE, syncIdentifier: "3A04D93A-4511-4DCE-BC65-88D192EEC0BE", syncVersion: 1, startDate: 2019-01-16 17:11:15 +0000, quantity: 95 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: FA9AE75E-70D3-4A2E-92AE-A82E373BF007, syncIdentifier: "FA9AE75E-70D3-4A2E-92AE-A82E373BF007", syncVersion: 1, startDate: 2019-01-16 17:16:15 +0000, quantity: 110 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A48BC847-00E6-4C70-91D8-DDA1FD9E4EBE, syncIdentifier: "A48BC847-00E6-4C70-91D8-DDA1FD9E4EBE", syncVersion: 1, startDate: 2019-01-16 17:21:14 +0000, quantity: 130 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: EA48F3C8-7564-4FA2-9DFD-E4E9ACC15B03, syncIdentifier: "EA48F3C8-7564-4FA2-9DFD-E4E9ACC15B03", syncVersion: 1, startDate: 2019-01-16 17:26:14 +0000, quantity: 153 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 8136A573-7092-435D-A3AA-BBA6951F3CD2, syncIdentifier: "8136A573-7092-435D-A3AA-BBA6951F3CD2", syncVersion: 1, startDate: 2019-01-16 17:31:15 +0000, quantity: 170 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A205D44E-C261-4FE0-B4F9-D12AD91FED02, syncIdentifier: "A205D44E-C261-4FE0-B4F9-D12AD91FED02", syncVersion: 1, startDate: 2019-01-16 17:36:15 +0000, quantity: 184 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 771DF525-F543-4F3D-8B0C-5ECE56C1AB3E, syncIdentifier: "771DF525-F543-4F3D-8B0C-5ECE56C1AB3E", syncVersion: 1, startDate: 2019-01-16 17:41:15 +0000, quantity: 197 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 15E3B0A7-D250-4446-A9FF-4B003ECB21C5, syncIdentifier: "15E3B0A7-D250-4446-A9FF-4B003ECB21C5", syncVersion: 1, startDate: 2019-01-16 17:46:15 +0000, quantity: 209 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 85AF736A-CAE5-455F-A307-F7EB349C2DC9, syncIdentifier: "85AF736A-CAE5-455F-A307-F7EB349C2DC9", syncVersion: 1, startDate: 2019-01-16 17:51:14 +0000, quantity: 223 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: B1B57F7A-AAE2-48B0-94DA-E045506624EB, syncIdentifier: "B1B57F7A-AAE2-48B0-94DA-E045506624EB", syncVersion: 1, startDate: 2019-01-16 17:56:15 +0000, quantity: 233 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 4DBD4112-AA7E-4F62-ABFB-EF4F9CBA99D8, syncIdentifier: "4DBD4112-AA7E-4F62-ABFB-EF4F9CBA99D8", syncVersion: 1, startDate: 2019-01-16 18:01:15 +0000, quantity: 241 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 7DECE4F5-6CE3-4CE6-A09C-7D4F99517376, syncIdentifier: "7DECE4F5-6CE3-4CE6-A09C-7D4F99517376", syncVersion: 1, startDate: 2019-01-16 18:06:15 +0000, quantity: 250 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 7D68498B-6632-4B15-B456-23A1C8260076, syncIdentifier: "7D68498B-6632-4B15-B456-23A1C8260076", syncVersion: 1, startDate: 2019-01-16 18:11:14 +0000, quantity: 257 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: DDEB8CF1-D91E-4C19-855C-C6A16AC6EA35, syncIdentifier: "DDEB8CF1-D91E-4C19-855C-C6A16AC6EA35", syncVersion: 1, startDate: 2019-01-16 18:16:15 +0000, quantity: 266 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 4857D447-9BCA-40B0-9A73-55E85CC0C80B, syncIdentifier: "4857D447-9BCA-40B0-9A73-55E85CC0C80B", syncVersion: 1, startDate: 2019-01-16 18:21:15 +0000, quantity: 273 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 927876FE-46FF-46BE-90E8-0FD9054F6949, syncIdentifier: "927876FE-46FF-46BE-90E8-0FD9054F6949", syncVersion: 1, startDate: 2019-01-16 18:26:15 +0000, quantity: 277 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: D402B6FD-BC10-4997-9712-B31EEEB9DF13, syncIdentifier: "D402B6FD-BC10-4997-9712-B31EEEB9DF13", syncVersion: 1, startDate: 2019-01-16 18:31:14 +0000, quantity: 286 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 44771D03-CB0F-4758-B2CE-98D7717B5FB7, syncIdentifier: "44771D03-CB0F-4758-B2CE-98D7717B5FB7", syncVersion: 1, startDate: 2019-01-16 18:36:15 +0000, quantity: 287 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 8E45EA6C-DB43-463B-8188-ABB35E2BCBC2, syncIdentifier: "8E45EA6C-DB43-463B-8188-ABB35E2BCBC2", syncVersion: 1, startDate: 2019-01-16 18:41:15 +0000, quantity: 293 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 060767DF-A592-4E99-8E30-6869B8DA2742, syncIdentifier: "060767DF-A592-4E99-8E30-6869B8DA2742", syncVersion: 1, startDate: 2019-01-16 18:46:14 +0000, quantity: 286 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: E3F19D4C-989C-4B7C-9F3D-5FEA8BE56ABF, syncIdentifier: "E3F19D4C-989C-4B7C-9F3D-5FEA8BE56ABF", syncVersion: 1, startDate: 2019-01-16 18:51:15 +0000, quantity: 290 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: E72F0D0C-7E9C-4186-B7D9-4801340E41F5, syncIdentifier: "E72F0D0C-7E9C-4186-B7D9-4801340E41F5", syncVersion: 1, startDate: 2019-01-16 18:56:14 +0000, quantity: 289 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 6DBE11B6-1FAA-421D-B9BD-D5810AA68CFE, syncIdentifier: "6DBE11B6-1FAA-421D-B9BD-D5810AA68CFE", syncVersion: 1, startDate: 2019-01-16 19:01:15 +0000, quantity: 295 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 2C28AE37-3DD2-49CF-B1D3-5D708D28B621, syncIdentifier: "2C28AE37-3DD2-49CF-B1D3-5D708D28B621", syncVersion: 1, startDate: 2019-01-16 19:06:15 +0000, quantity: 290 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 278F21F4-293B-453C-8778-B75B62998899, syncIdentifier: "278F21F4-293B-453C-8778-B75B62998899", syncVersion: 1, startDate: 2019-01-16 19:11:14 +0000, quantity: 284 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 830CA8EB-9B7F-4919-81E5-1235D114291D, syncIdentifier: "830CA8EB-9B7F-4919-81E5-1235D114291D", syncVersion: 1, startDate: 2019-01-16 19:16:16 +0000, quantity: 275 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 6B295424-1FF7-4B95-909F-EFE31A7F230D, syncIdentifier: "6B295424-1FF7-4B95-909F-EFE31A7F230D", syncVersion: 1, startDate: 2019-01-16 19:41:15 +0000, quantity: 238 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 423CC4BD-D070-4C64-840E-D5BFECA4A3EF, syncIdentifier: "423CC4BD-D070-4C64-840E-D5BFECA4A3EF", syncVersion: 1, startDate: 2019-01-16 19:46:15 +0000, quantity: 230 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 7BC05171-2580-42DF-B05A-D3D144DBF471, syncIdentifier: "7BC05171-2580-42DF-B05A-D3D144DBF471", syncVersion: 1, startDate: 2019-01-16 19:51:15 +0000, quantity: 226 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 06EBC90B-CA4F-424C-B2A0-800CD2C6EDB3, syncIdentifier: "06EBC90B-CA4F-424C-B2A0-800CD2C6EDB3", syncVersion: 1, startDate: 2019-01-16 19:56:15 +0000, quantity: 224 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: E4F2198D-AEC2-4651-B653-77BF88C788BE, syncIdentifier: "E4F2198D-AEC2-4651-B653-77BF88C788BE", syncVersion: 1, startDate: 2019-01-16 20:01:15 +0000, quantity: 224 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 377B2B55-5704-4C93-BA5D-3927FED67AB0, syncIdentifier: "377B2B55-5704-4C93-BA5D-3927FED67AB0", syncVersion: 1, startDate: 2019-01-16 20:06:15 +0000, quantity: 228 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 79AE20E7-2C8A-4ED7-AFA9-B0CB7E0117D6, syncIdentifier: "79AE20E7-2C8A-4ED7-AFA9-B0CB7E0117D6", syncVersion: 1, startDate: 2019-01-16 20:11:15 +0000, quantity: 234 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: E50AC7D3-BD28-41AF-A73B-92BC8F39FB92, syncIdentifier: "E50AC7D3-BD28-41AF-A73B-92BC8F39FB92", syncVersion: 1, startDate: 2019-01-16 20:16:15 +0000, quantity: 240 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 776194E1-2FD1-4EDE-BE14-248CE90BCDA0, syncIdentifier: "776194E1-2FD1-4EDE-BE14-248CE90BCDA0", syncVersion: 1, startDate: 2019-01-16 20:21:15 +0000, quantity: 245 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: B4741618-144E-4B68-B931-DBEB4FB52066, syncIdentifier: "B4741618-144E-4B68-B931-DBEB4FB52066", syncVersion: 1, startDate: 2019-01-16 20:26:14 +0000, quantity: 248 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 3908454D-5AB7-4048-AABD-03E12843BAF3, syncIdentifier: "3908454D-5AB7-4048-AABD-03E12843BAF3", syncVersion: 1, startDate: 2019-01-16 20:31:14 +0000, quantity: 249 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 464EAF51-6B93-40C4-8BFA-F8C80BA534F4, syncIdentifier: "464EAF51-6B93-40C4-8BFA-F8C80BA534F4", syncVersion: 1, startDate: 2019-01-16 20:36:14 +0000, quantity: 248 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 38E596D9-4408-4C79-860B-300D20484762, syncIdentifier: "38E596D9-4408-4C79-860B-300D20484762", syncVersion: 1, startDate: 2019-01-16 20:41:13 +0000, quantity: 246 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 5F5D6F47-E166-45C0-905D-DED04D01AD5B, syncIdentifier: "5F5D6F47-E166-45C0-905D-DED04D01AD5B", syncVersion: 1, startDate: 2019-01-16 20:46:14 +0000, quantity: 242 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: A856DC0E-D65B-4F64-8D99-B9F895129AC8, syncIdentifier: "A856DC0E-D65B-4F64-8D99-B9F895129AC8", syncVersion: 1, startDate: 2019-01-16 20:51:14 +0000, quantity: 240 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 33410BE8-72C2-4977-9F79-6CDDEFB9B364, syncIdentifier: "33410BE8-72C2-4977-9F79-6CDDEFB9B364", syncVersion: 1, startDate: 2019-01-16 20:56:14 +0000, quantity: 239 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 65CDB4AB-3876-4C30-8CD6-C93E436B9790, syncIdentifier: "65CDB4AB-3876-4C30-8CD6-C93E436B9790", syncVersion: 1, startDate: 2019-01-16 21:01:14 +0000, quantity: 243 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 2507685D-BFB4-4116-8D5D-9C1D082C0C0F, syncIdentifier: "2507685D-BFB4-4116-8D5D-9C1D082C0C0F", syncVersion: 1, startDate: 2019-01-16 21:06:14 +0000, quantity: 249 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 769096F1-4E29-4A9D-B46A-145BF8F1A788, syncIdentifier: "769096F1-4E29-4A9D-B46A-145BF8F1A788", syncVersion: 1, startDate: 2019-01-16 21:11:14 +0000, quantity: 255 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: 8E6ABB65-7EAB-4304-8F23-AE307AADA967, syncIdentifier: "1547673374.0", syncVersion: 1, startDate: 2019-01-16 21:16:14 +0000, quantity: 259 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: ABEA95D0-6D84-4C0F-94DD-ED53F427CAC3, syncIdentifier: "ABEA95D0-6D84-4C0F-94DD-ED53F427CAC3", syncVersion: 1, startDate: 2019-01-16 21:16:14 +0000, quantity: 257 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6") -StoredGlucoseSample(sampleUUID: C9C0AADB-F4C1-4C20-839A-D5BD0829B9B5, syncIdentifier: "1547673674.0", syncVersion: 1, startDate: 2019-01-16 21:21:14 +0000, quantity: 256 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: D7508B4C-DB2E-4553-B706-A1BAB680DE4F, syncIdentifier: "1547673974.0", syncVersion: 1, startDate: 2019-01-16 21:26:14 +0000, quantity: 252 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 7D05E7E8-DB79-4F3A-B24D-1696BC74282F, syncIdentifier: "1547674274.0", syncVersion: 1, startDate: 2019-01-16 21:31:14 +0000, quantity: 251 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: BF0204A5-4585-4ADF-B996-B002D3D2291A, syncIdentifier: "1547674574.0", syncVersion: 1, startDate: 2019-01-16 21:36:14 +0000, quantity: 254 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: A870508B-A1B0-4FC4-A765-C82E92C4BD22, syncIdentifier: "1547674874.0", syncVersion: 1, startDate: 2019-01-16 21:41:14 +0000, quantity: 260 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 3273EE7A-189C-4876-B1E4-44E885D47B63, syncIdentifier: "1547675174.0", syncVersion: 1, startDate: 2019-01-16 21:46:14 +0000, quantity: 267 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: ECBC40CA-7762-47A4-AE50-862301236A32, syncIdentifier: "1547675473.0", syncVersion: 1, startDate: 2019-01-16 21:51:13 +0000, quantity: 274 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: E8BC0194-39C0-4449-94C8-5322EC45E195, syncIdentifier: "1547675774.0", syncVersion: 1, startDate: 2019-01-16 21:56:14 +0000, quantity: 280 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 6296EFE7-2A41-438E-8037-2B1BD7F3528D, syncIdentifier: "1547676073.0", syncVersion: 1, startDate: 2019-01-16 22:01:13 +0000, quantity: 289 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 07B15331-87A9-478D-A677-0A2C37F9A5FD, syncIdentifier: "1547676374.0", syncVersion: 1, startDate: 2019-01-16 22:06:14 +0000, quantity: 291 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 61F20A3F-0EC0-40D8-BACD-3F435EE21A82, syncIdentifier: "1547676674.0", syncVersion: 1, startDate: 2019-01-16 22:11:14 +0000, quantity: 295 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 6AE157D1-32A2-4482-9692-5BAA83305F41, syncIdentifier: "1547676973.0", syncVersion: 1, startDate: 2019-01-16 22:16:13 +0000, quantity: 295 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: BA0C1173-03AE-4FE3-BB2E-FDD5C7190956, syncIdentifier: "1547677274.0", syncVersion: 1, startDate: 2019-01-16 22:21:14 +0000, quantity: 294 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 0A0C0B2A-1295-4C2F-B325-DA9A974BD801, syncIdentifier: "1547677574.0", syncVersion: 1, startDate: 2019-01-16 22:26:14 +0000, quantity: 294 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 703B7BD1-2B28-4759-8A5C-05CD66564FD8, syncIdentifier: "1547677874.0", syncVersion: 1, startDate: 2019-01-16 22:31:14 +0000, quantity: 293 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 2D465A18-3112-4B05-A43E-9B903080789B, syncIdentifier: "1547678174.0", syncVersion: 1, startDate: 2019-01-16 22:36:14 +0000, quantity: 286 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: A6438B27-A01A-41C9-B6D1-5DB235FC28C1, syncIdentifier: "1547678473.0", syncVersion: 1, startDate: 2019-01-16 22:41:13 +0000, quantity: 287 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: E0CA6AEF-85D8-4C19-BBE5-C8263875F1F0, syncIdentifier: "1547678774.0", syncVersion: 1, startDate: 2019-01-16 22:46:14 +0000, quantity: 287 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 84294F7E-D8E0-4644-8672-01E2A52855EF, syncIdentifier: "1547679074.0", syncVersion: 1, startDate: 2019-01-16 22:51:14 +0000, quantity: 288 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: E011BDAC-476B-40E9-B732-8B5FE7B32C90, syncIdentifier: "1547679374.0", syncVersion: 1, startDate: 2019-01-16 22:56:14 +0000, quantity: 290 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 13FFF286-28C4-4498-A0D8-1992569712FB, syncIdentifier: "1547679674.0", syncVersion: 1, startDate: 2019-01-16 23:01:14 +0000, quantity: 292 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 0221CB94-9E68-48E0-B405-0F7B4C21E668, syncIdentifier: "1547679974.0", syncVersion: 1, startDate: 2019-01-16 23:06:14 +0000, quantity: 291 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: E1C9C581-EC79-4183-87F5-DA6C4DDC4AE9, syncIdentifier: "1547680274.0", syncVersion: 1, startDate: 2019-01-16 23:11:14 +0000, quantity: 289 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 0D4ADDCD-04EB-4A6E-9C78-604493A63F32, syncIdentifier: "1547680574.0", syncVersion: 1, startDate: 2019-01-16 23:16:14 +0000, quantity: 282 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 09D1CB03-2651-4145-9696-6837D3514724, syncIdentifier: "1547680873.0", syncVersion: 1, startDate: 2019-01-16 23:21:13 +0000, quantity: 286 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 8451D9C5-B517-4EBF-8390-872E077D8E16, syncIdentifier: "1547681174.0", syncVersion: 1, startDate: 2019-01-16 23:26:14 +0000, quantity: 292 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 1A20E578-F14C-415F-97A6-42A2A3C3C525, syncIdentifier: "1547681474.0", syncVersion: 1, startDate: 2019-01-16 23:31:14 +0000, quantity: 305 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 32301A74-B5E9-49C3-BB19-D2A0E5C7E9DA, syncIdentifier: "1547681774.0", syncVersion: 1, startDate: 2019-01-16 23:36:14 +0000, quantity: 313 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: F1DC7ECE-4F25-49FA-B0E3-5B2B3BDD77A8, syncIdentifier: "1547682074.0", syncVersion: 1, startDate: 2019-01-16 23:41:14 +0000, quantity: 331 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: DCEACFBA-69D4-4444-9329-5F8549A67434, syncIdentifier: "1547682374.0", syncVersion: 1, startDate: 2019-01-16 23:46:14 +0000, quantity: 340 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: B8DFEE87-053D-4301-9C07-A04521C6D357, syncIdentifier: "1547682674.0", syncVersion: 1, startDate: 2019-01-16 23:51:14 +0000, quantity: 324 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 58DE8977-425B-4F66-BD20-3A3BE706A5EC, syncIdentifier: "1547682974.0", syncVersion: 1, startDate: 2019-01-16 23:56:14 +0000, quantity: 348 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 79BA52D4-446E-4737-9C9B-B955ACEE3DCF, syncIdentifier: "1547683274.0", syncVersion: 1, startDate: 2019-01-17 00:01:14 +0000, quantity: 357 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: F2D57137-F498-404B-8E0F-B4C264A341C9, syncIdentifier: "1547683574.0", syncVersion: 1, startDate: 2019-01-17 00:06:14 +0000, quantity: 374 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: 085D512E-46B7-4BC6-BA3C-62B9DF80515B, syncIdentifier: "1547683874.0", syncVersion: 1, startDate: 2019-01-17 00:11:14 +0000, quantity: 391 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") -StoredGlucoseSample(sampleUUID: FAD5BF45-EEEA-405D-9C50-37B1D1E5EFAF, syncIdentifier: "1547684174.0", syncVersion: 1, startDate: 2019-01-17 00:16:14 +0000, quantity: 401 mg/dL, isDisplayOnly: false, provenanceIdentifier: "") - - -## CarbStore - -* carbRatioSchedule: ["timeZone": -21600, "unit": "g", "items": [["value": 8.0, "startTime": 0.0], ["value": 8.0, "startTime": 21600.0], ["value": 9.0, "startTime": 39600.0]]] -* defaultAbsorptionTimes: (fast: 7200.0, medium: 10800.0, slow: 14400.0) -* insulinSensitivitySchedule: ["timeZone": -21600, "unit": "mg/dL", "items": [["value": 50.0, "startTime": 0.0], ["value": 50.0, "startTime": 1800.0]]] -* delay: 600.0 -* delta: 300.0 -* absorptionTimeOverrun: 1.5 -* observerQuery: Optional() -* observationStart: 2019-01-16 05:08:36 +0000 -* observationEnabled: true -* authorizationRequired: false - -cachedCarbEntries: [ - StoredCarbEntry(sampleUUID, syncIdentifier, syncVersion, startDate, quantity, foodType, absorptionTime, createdByCurrentApp, externalID, isUploaded) - , A31D6DE9-7717-45E7-BCBF-64A556BDDFE0, 85AA0BE1-B1A1-454B-81B1-A4F12B89CA44, 1, 2019-01-16 18:36:26 +0000, 40 g, , 10800.0, true, 5c3f79b10cbbee3b804081eb, true - , 0937B131-B632-4C19-BF07-E49A9E373C1C, 24589B5A-266C-4274-8D57-9CFE4E95BF2B, 1, 2019-01-16 19:44:13 +0000, 30 g, , 10800.0, true, 5c3f89900cbbee3b8040c0fa, true - , D1FC4D1D-7968-4B77-B58C-9AA50A2A0566, F151045E-3922-4D8B-B823-BF4E1C086823, 1, 2019-01-16 19:47:01 +0000, 39 g, , 10800.0, true, 5c3f8a3a0cbbee3b8040c3c1, true - , 90637986-EE19-40B5-B19E-03E754A55BD5, 548F176C-F233-4EAC-B63C-9DCC5B24BB12, 1, 2019-01-16 23:19:51 +0000, 60 g, , 10800.0, true, 5c3fbc1b0cbbee3b804195ae, true -] - -deletedCarbEntries: [ - DeletedCarbEntry(externalID, isUploaded) -] - - -## DoseStore - -* insulinModel: Optional(fiasp(ExponentialInsulinModel(actionDuration: 21600.0, peakActivityTime: 3300.0)) -* basalProfile: ["timeZone": -21600, "items": [["value": 1.25, "startTime": 0.0], ["value": 1.45, "startTime": 23400.0], ["value": 1.45, "startTime": 30600.0], ["value": 0.9, "startTime": 43200.0], ["value": 1.4, "startTime": 57600.0], ["value": 1.2, "startTime": 72000.0]]] -* insulinSensitivitySchedule: ["timeZone": -21600, "unit": "mg/dL", "items": [["value": 50.0, "startTime": 0.0], ["value": 50.0, "startTime": 1800.0]]] -* areReservoirValuesValid: false -* isUploadRequestPending: false -* lastAddedPumpEvents: 2019-01-17 00:15:54 +0000 -* lastStoredReservoirValue: Optional(LoopKit.StoredReservoirValue(startDate: 2019-01-17 00:15:25 +0000, unitVolume: 252.1, objectIDURL: x-coredata:///Reservoir/tB6FBD934-5F4E-42D7-9AE4-1FA02A45311D411)) -* mutablePumpEventDoses: [LoopKit.DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-17 00:19:30 +0000, endDate: 2019-01-17 00:22:38 +0000, value: 4.7, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional(""), scheduledBasalRate: nil)] -* pumpEventQueryAfterDate: 2019-01-17 00:00:28 +0000 -* totalDeliveryCache: Optional(LoopKit.InsulinValue(startDate: 2019-01-16 06:03:12 +0000, value: 53.00000000000002)) -* lastRecordedPrimeEventDate: Optional(2019-01-16 19:42:39 +0000) -* pumpRecordsBasalProfileStartEvents: false -* device: Optional(<, name:RileyLink, manufacturer:Medtronic, model:722, firmware:subg_rfspy 2.2, software:43.0, localIdentifier:000000>) - -* insulinOnBoard: InsulinValue(startDate: 2019-01-17 00:15:00 +0000, value: 5.152747280934235) - -### getReservoirValues - -* Reservoir(startDate, unitVolume) -* 2019-01-17 00:15:25 +0000, 252.1 -* 2019-01-17 00:00:11 +0000, 253.4 -* 2019-01-16 23:56:09 +0000, 253.8 -* 2019-01-16 23:51:08 +0000, 254.2 -* 2019-01-16 23:45:56 +0000, 254.6 -* 2019-01-16 23:41:55 +0000, 254.9 -* 2019-01-16 23:37:37 +0000, 255.3 -* 2019-01-16 23:17:32 +0000, 256.4 -* 2019-01-16 23:13:31 +0000, 256.6 -* 2019-01-16 23:09:25 +0000, 256.8 -* 2019-01-16 23:05:20 +0000, 257.1 -* 2019-01-16 23:01:16 +0000, 257.3 -* 2019-01-16 22:57:12 +0000, 257.6 -* 2019-01-16 22:53:11 +0000, 257.8 -* 2019-01-16 22:49:07 +0000, 258.0 -* 2019-01-16 22:44:50 +0000, 258.2 -* 2019-01-16 22:36:57 +0000, 258.8 -* 2019-01-16 22:32:50 +0000, 259.2 -* 2019-01-16 22:28:46 +0000, 259.5 -* 2019-01-16 22:24:42 +0000, 259.9 -* 2019-01-16 22:20:41 +0000, 260.2 -* 2019-01-16 22:16:36 +0000, 260.5 -* 2019-01-16 22:12:32 +0000, 260.9 -* 2019-01-16 22:08:28 +0000, 261.2 -* 2019-01-16 22:04:24 +0000, 261.6 -* 2019-01-16 22:00:21 +0000, 261.8 -* 2019-01-16 21:56:17 +0000, 262.0 -* 2019-01-16 21:52:15 +0000, 262.3 -* 2019-01-16 21:48:11 +0000, 262.4 -* 2019-01-16 21:44:09 +0000, 262.4 -* 2019-01-16 21:40:02 +0000, 262.4 -* 2019-01-16 21:35:08 +0000, 262.4 -* 2019-01-16 21:30:54 +0000, 262.4 -* 2019-01-16 21:26:50 +0000, 262.4 -* 2019-01-16 21:22:46 +0000, 262.4 -* 2019-01-16 21:18:42 +0000, 262.4 -* 2019-01-16 21:14:38 +0000, 262.4 -* 2019-01-16 21:10:34 +0000, 262.4 -* 2019-01-16 21:06:32 +0000, 262.4 -* 2019-01-16 21:02:28 +0000, 262.4 -* 2019-01-16 20:58:24 +0000, 262.4 -* 2019-01-16 20:54:20 +0000, 262.4 -* 2019-01-16 20:50:16 +0000, 262.4 -* 2019-01-16 20:46:14 +0000, 262.4 -* 2019-01-16 20:42:13 +0000, 262.4 -* 2019-01-16 20:37:55 +0000, 262.4 -* 2019-01-16 20:30:58 +0000, 262.4 -* 2019-01-16 20:26:54 +0000, 262.4 -* 2019-01-16 20:22:50 +0000, 262.4 -* 2019-01-16 20:18:46 +0000, 262.4 -* 2019-01-16 20:14:42 +0000, 262.5 -* 2019-01-16 20:10:38 +0000, 262.5 -* 2019-01-16 20:06:36 +0000, 262.6 -* 2019-01-16 20:02:21 +0000, 262.7 -* 2019-01-16 19:57:26 +0000, 262.7 -* 2019-01-16 19:53:27 +0000, 262.8 -* 2019-01-16 19:48:27 +0000, 267.9 -* 2019-01-16 19:44:16 +0000, 272.9 -* 2019-01-16 19:36:11 +0000, 2.5 -* 2019-01-16 19:32:07 +0000, 2.7 -* 2019-01-16 19:28:03 +0000, 3.0 -* 2019-01-16 19:23:58 +0000, 3.4 -* 2019-01-16 19:19:54 +0000, 3.7 -* 2019-01-16 19:15:40 +0000, 4.1 -* 2019-01-16 19:08:42 +0000, 4.6 -* 2019-01-16 19:04:28 +0000, 5.0 -* 2019-01-16 18:59:25 +0000, 5.4 -* 2019-01-16 18:53:30 +0000, 5.9 -* 2019-01-16 18:49:15 +0000, 6.3 -* 2019-01-16 18:45:22 +0000, 6.6 -* 2019-01-16 18:41:18 +0000, 6.9 -* 2019-01-16 18:36:35 +0000, 11.0 -* 2019-01-16 17:03:02 +0000, 12.2 -* 2019-01-16 16:59:00 +0000, 12.2 -* 2019-01-16 16:54:57 +0000, 12.2 -* 2019-01-16 16:50:53 +0000, 12.2 -* 2019-01-16 16:46:50 +0000, 12.2 -* 2019-01-16 16:39:49 +0000, 12.2 -* 2019-01-16 16:35:38 +0000, 12.3 -* 2019-01-16 16:31:35 +0000, 12.4 -* 2019-01-16 16:27:32 +0000, 12.5 -* 2019-01-16 16:23:29 +0000, 12.6 -* 2019-01-16 16:19:24 +0000, 12.7 -* 2019-01-16 16:15:20 +0000, 12.8 -* 2019-01-16 16:11:16 +0000, 12.9 -* 2019-01-16 16:07:14 +0000, 13.0 -* 2019-01-16 16:03:14 +0000, 13.1 -* 2019-01-16 15:59:10 +0000, 13.2 -* 2019-01-16 15:55:02 +0000, 13.3 -* 2019-01-16 15:50:58 +0000, 13.4 -* 2019-01-16 15:46:56 +0000, 13.5 -* 2019-01-16 15:42:53 +0000, 13.6 -* 2019-01-16 15:37:56 +0000, 13.7 -* 2019-01-16 15:33:45 +0000, 13.8 -* 2019-01-16 15:29:29 +0000, 13.9 -* 2019-01-16 15:25:40 +0000, 14.0 -* 2019-01-16 15:21:32 +0000, 14.1 -* 2019-01-16 15:17:28 +0000, 14.2 -* 2019-01-16 15:13:26 +0000, 14.3 -* 2019-01-16 15:09:23 +0000, 14.4 -* 2019-01-16 15:05:18 +0000, 14.5 -* 2019-01-16 15:01:14 +0000, 14.6 -* 2019-01-16 14:57:14 +0000, 14.7 -* 2019-01-16 14:52:11 +0000, 14.8 -* 2019-01-16 14:48:07 +0000, 14.9 -* 2019-01-16 14:44:00 +0000, 15.0 -* 2019-01-16 14:39:56 +0000, 15.1 -* 2019-01-16 14:35:52 +0000, 15.2 -* 2019-01-16 14:31:48 +0000, 15.3 -* 2019-01-16 14:27:47 +0000, 15.4 -* 2019-01-16 14:23:42 +0000, 15.5 -* 2019-01-16 14:18:47 +0000, 15.6 -* 2019-01-16 14:14:37 +0000, 15.7 -* 2019-01-16 14:10:33 +0000, 15.8 -* 2019-01-16 14:06:28 +0000, 15.9 -* 2019-01-16 14:02:12 +0000, 16.0 -* 2019-01-16 13:56:08 +0000, 16.1 -* 2019-01-16 13:50:21 +0000, 16.3 -* 2019-01-16 13:45:11 +0000, 16.6 -* 2019-01-16 13:41:09 +0000, 16.8 -* 2019-01-16 13:37:02 +0000, 17.0 -* 2019-01-16 13:32:47 +0000, 17.3 -* 2019-01-16 13:23:55 +0000, 17.8 -* 2019-01-16 13:19:46 +0000, 18.1 -* 2019-01-16 13:15:33 +0000, 18.4 -* 2019-01-16 13:09:38 +0000, 18.9 -* 2019-01-16 13:04:32 +0000, 19.3 -* 2019-01-16 13:00:31 +0000, 19.7 -* 2019-01-16 12:56:24 +0000, 20.0 -* 2019-01-16 12:52:11 +0000, 23.3 -* 2019-01-16 12:47:16 +0000, 25.0 -* 2019-01-16 12:43:15 +0000, 25.0 -* 2019-01-16 12:39:11 +0000, 25.2 -* 2019-01-16 12:34:53 +0000, 25.4 -* 2019-01-16 12:30:01 +0000, 25.7 -* 2019-01-16 12:25:45 +0000, 25.9 -* 2019-01-16 12:20:55 +0000, 26.0 -* 2019-01-16 12:15:56 +0000, 26.2 -* 2019-01-16 12:11:43 +0000, 26.3 -* 2019-01-16 12:07:40 +0000, 26.4 -* 2019-01-16 12:03:36 +0000, 26.5 -* 2019-01-16 11:59:32 +0000, 26.6 -* 2019-01-16 11:55:17 +0000, 26.8 -* 2019-01-16 11:51:24 +0000, 27.0 -* 2019-01-16 11:47:20 +0000, 27.1 -* 2019-01-16 11:43:19 +0000, 27.3 -* 2019-01-16 11:39:14 +0000, 27.4 -* 2019-01-16 11:35:13 +0000, 27.4 -* 2019-01-16 11:31:09 +0000, 27.4 -* 2019-01-16 11:27:07 +0000, 27.4 -* 2019-01-16 11:22:58 +0000, 27.4 -* 2019-01-16 11:18:56 +0000, 27.4 -* 2019-01-16 11:14:52 +0000, 27.4 -* 2019-01-16 11:10:48 +0000, 27.5 -* 2019-01-16 11:06:44 +0000, 27.5 -* 2019-01-16 11:02:40 +0000, 27.6 -* 2019-01-16 10:58:36 +0000, 27.6 -* 2019-01-16 10:54:34 +0000, 27.7 -* 2019-01-16 10:50:33 +0000, 27.8 -* 2019-01-16 10:45:33 +0000, 27.9 -* 2019-01-16 10:41:22 +0000, 28.0 -* 2019-01-16 10:37:18 +0000, 28.0 -* 2019-01-16 10:33:14 +0000, 28.1 -* 2019-01-16 10:29:13 +0000, 28.1 -* 2019-01-16 10:25:09 +0000, 28.2 -* 2019-01-16 10:21:07 +0000, 28.2 -* 2019-01-16 10:17:00 +0000, 28.3 -* 2019-01-16 10:12:56 +0000, 28.3 -* 2019-01-16 10:07:59 +0000, 28.4 -* 2019-01-16 10:03:46 +0000, 28.5 -* 2019-01-16 09:59:42 +0000, 28.6 -* 2019-01-16 09:55:38 +0000, 28.7 -* 2019-01-16 09:51:25 +0000, 28.9 -* 2019-01-16 09:47:32 +0000, 29.0 -* 2019-01-16 09:43:28 +0000, 29.2 -* 2019-01-16 09:39:24 +0000, 29.3 -* 2019-01-16 09:35:20 +0000, 29.4 -* 2019-01-16 09:31:18 +0000, 29.5 -* 2019-01-16 09:27:14 +0000, 29.7 -* 2019-01-16 09:23:13 +0000, 29.9 -* 2019-01-16 09:19:09 +0000, 30.1 -* 2019-01-16 09:15:02 +0000, 30.2 -* 2019-01-16 09:11:00 +0000, 30.2 -* 2019-01-16 09:06:56 +0000, 30.3 -* 2019-01-16 09:02:50 +0000, 30.4 -* 2019-01-16 08:58:46 +0000, 30.5 -* 2019-01-16 08:54:42 +0000, 30.5 -* 2019-01-16 08:50:40 +0000, 30.5 -* 2019-01-16 08:46:36 +0000, 30.5 -* 2019-01-16 08:42:32 +0000, 30.5 -* 2019-01-16 08:38:28 +0000, 30.5 -* 2019-01-16 08:34:24 +0000, 30.5 -* 2019-01-16 08:30:20 +0000, 30.5 -* 2019-01-16 08:26:18 +0000, 30.5 -* 2019-01-16 08:22:14 +0000, 30.5 -* 2019-01-16 08:18:13 +0000, 30.5 -* 2019-01-16 08:14:09 +0000, 30.5 -* 2019-01-16 08:10:02 +0000, 30.5 -* 2019-01-16 08:05:48 +0000, 30.5 -* 2019-01-16 08:00:54 +0000, 30.6 -* 2019-01-16 07:56:50 +0000, 30.6 -* 2019-01-16 07:52:46 +0000, 30.7 -* 2019-01-16 07:48:31 +0000, 31.1 -* 2019-01-16 07:44:38 +0000, 32.4 -* 2019-01-16 07:40:37 +0000, 32.7 -* 2019-01-16 07:36:32 +0000, 33.1 -* 2019-01-16 07:32:28 +0000, 33.4 -* 2019-01-16 07:28:24 +0000, 33.7 -* 2019-01-16 07:24:20 +0000, 34.0 -* 2019-01-16 07:20:16 +0000, 34.1 -* 2019-01-16 07:16:14 +0000, 34.2 -* 2019-01-16 07:12:13 +0000, 34.3 -* 2019-01-16 07:08:10 +0000, 34.4 -* 2019-01-16 07:04:02 +0000, 34.5 -* 2019-01-16 06:59:58 +0000, 34.5 -* 2019-01-16 06:55:56 +0000, 34.6 -* 2019-01-16 06:51:41 +0000, 34.6 -* 2019-01-16 06:47:48 +0000, 34.7 -* 2019-01-16 06:43:44 +0000, 34.7 -* 2019-01-16 06:39:40 +0000, 34.7 -* 2019-01-16 06:35:36 +0000, 34.7 -* 2019-01-16 06:31:34 +0000, 34.7 -* 2019-01-16 06:27:30 +0000, 34.7 -* 2019-01-16 06:23:26 +0000, 34.7 -* 2019-01-16 06:19:22 +0000, 34.7 -* 2019-01-16 06:15:18 +0000, 34.7 -* 2019-01-16 06:11:16 +0000, 34.7 -* 2019-01-16 06:07:12 +0000, 34.7 -* 2019-01-16 06:03:12 +0000, 34.7 -* 2019-01-16 05:58:13 +0000, 34.7 -* 2019-01-16 05:54:00 +0000, 34.7 -* 2019-01-16 05:49:45 +0000, 34.7 -* 2019-01-16 05:45:52 +0000, 34.7 -* 2019-01-16 05:41:48 +0000, 34.7 -* 2019-01-16 05:37:44 +0000, 34.7 -* 2019-01-16 05:33:42 +0000, 34.7 -* 2019-01-16 05:29:38 +0000, 34.7 -* 2019-01-16 05:25:34 +0000, 34.7 -* 2019-01-16 05:21:30 +0000, 34.8 -* 2019-01-16 05:17:29 +0000, 35.1 -* 2019-01-16 05:17:26 +0000, 35.1 -* 2019-01-16 05:12:22 +0000, 39.8 -* 2019-01-16 05:08:08 +0000, 40.2 -* 2019-01-16 05:04:18 +0000, 40.5 -* 2019-01-16 05:00:13 +0000, 40.8 -* 2019-01-16 04:56:09 +0000, 41.1 -* 2019-01-16 04:51:07 +0000, 41.2 -* 2019-01-16 04:46:49 +0000, 41.4 -* 2019-01-16 04:41:44 +0000, 41.4 -* 2019-01-16 04:36:50 +0000, 41.4 -* 2019-01-16 04:32:46 +0000, 41.4 -* 2019-01-16 04:28:43 +0000, 41.4 -* 2019-01-16 04:22:28 +0000, 41.5 -* 2019-01-16 04:14:19 +0000, 41.7 -* 2019-01-16 04:10:26 +0000, 41.7 -* 2019-01-16 04:06:22 +0000, 41.8 -* 2019-01-16 04:02:18 +0000, 41.9 -* 2019-01-16 03:58:16 +0000, 42.0 -* 2019-01-16 03:54:01 +0000, 42.1 -* 2019-01-16 03:48:09 +0000, 42.2 -* 2019-01-16 03:44:02 +0000, 42.3 -* 2019-01-16 03:40:00 +0000, 42.3 -* 2019-01-16 03:35:45 +0000, 42.4 -* 2019-01-16 03:29:41 +0000, 42.6 -* 2019-01-16 03:23:46 +0000, 42.7 -* 2019-01-16 03:18:54 +0000, 42.8 -* 2019-01-16 03:01:15 +0000, 43.1 -* 2019-01-16 02:54:09 +0000, 43.3 -* 2019-01-16 02:49:15 +0000, 43.4 -* 2019-01-16 02:45:13 +0000, 43.4 -* 2019-01-16 02:39:56 +0000, 43.6 -* 2019-01-16 02:30:48 +0000, 43.7 -* 2019-01-16 02:25:44 +0000, 43.8 -* 2019-01-16 02:18:38 +0000, 44.0 -* 2019-01-16 02:13:33 +0000, 44.1 -* 2019-01-16 02:08:41 +0000, 44.2 -* 2019-01-16 02:04:36 +0000, 44.3 -* 2019-01-16 02:00:32 +0000, 44.3 -* 2019-01-16 01:56:18 +0000, 44.4 -* 2019-01-16 01:50:17 +0000, 44.8 -* 2019-01-16 01:31:57 +0000, 47.5 -* 2019-01-16 01:23:02 +0000, 60.0 -* 2019-01-16 01:18:54 +0000, 60.1 -* 2019-01-16 01:14:50 +0000, 60.2 -* 2019-01-16 01:10:49 +0000, 60.3 -* 2019-01-16 01:06:42 +0000, 60.4 -* 2019-01-16 01:02:38 +0000, 60.5 -* 2019-01-16 00:58:34 +0000, 60.6 -* 2019-01-16 00:54:32 +0000, 60.7 -* 2019-01-16 00:50:28 +0000, 60.8 -* 2019-01-16 00:46:24 +0000, 60.9 -* 2019-01-16 00:42:20 +0000, 61.0 -* 2019-01-16 00:38:16 +0000, 61.1 -* 2019-01-16 00:34:14 +0000, 61.2 -* 2019-01-16 00:30:13 +0000, 61.2 -* 2019-01-16 00:26:09 +0000, 61.3 -* 2019-01-16 00:22:02 +0000, 61.4 -* 2019-01-16 00:17:58 +0000, 61.5 - -### getPumpEventValues - -* PersistedPumpEvent(date: 2019-01-17 00:00:28 +0000, persistedDate: 2019-01-17 00:15:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5971, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 18 minute: 0 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-17 00:00:28 +0000, persistedDate: 2019-01-17 00:15:54 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-17 00:00:28 +0000, endDate: 2019-01-17 00:30:28 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c40125013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5970, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 18 minute: 0 second: 28 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 23:37:54 +0000, persistedDate: 2019-01-16 23:46:25 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 23:37:54 +0000, endDate: 2019-01-17 00:07:54 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013665115013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5969, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 17 minute: 37 second: 54 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 23:37:54 +0000, persistedDate: 2019-01-16 23:46:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5968, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 17 minute: 37 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 23:13:48 +0000, persistedDate: 2019-01-16 23:38:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5967, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 17 minute: 13 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 23:13:48 +0000, persistedDate: 2019-01-16 23:38:06 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 23:13:48 +0000, endDate: 2019-01-16 23:43:48 +0000, value: 3.225, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601304d115013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5966, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 17 minute: 13 second: 48 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 23:09:42 +0000, persistedDate: 2019-01-16 23:14:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5965, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 17 minute: 9 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 23:09:42 +0000, persistedDate: 2019-01-16 23:14:00 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 23:09:42 +0000, endDate: 2019-01-16 23:39:42 +0000, value: 3.725, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012a49115013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5964, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 17 minute: 9 second: 42 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 23:05:37 +0000, persistedDate: 2019-01-16 23:09:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5963, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 17 minute: 5 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 23:05:37 +0000, persistedDate: 2019-01-16 23:09:54 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 23:05:37 +0000, endDate: 2019-01-16 23:35:37 +0000, value: 3.65, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012545115013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5962, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 17 minute: 5 second: 37 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 23:01:33 +0000, persistedDate: 2019-01-16 23:05:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5961, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 17 minute: 1 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 23:01:33 +0000, persistedDate: 2019-01-16 23:05:49 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 23:01:33 +0000, endDate: 2019-01-16 23:31:33 +0000, value: 3.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012141115013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5960, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 17 minute: 1 second: 33 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 22:57:29 +0000, persistedDate: 2019-01-16 23:01:45 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:57:29 +0000, endDate: 2019-01-16 23:27:29 +0000, value: 3.6, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011d79105013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5959, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 57 second: 29 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 22:57:29 +0000, persistedDate: 2019-01-16 23:01:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5958, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 57 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 22:53:28 +0000, persistedDate: 2019-01-16 22:57:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5957, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 53 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 22:53:28 +0000, persistedDate: 2019-01-16 22:57:41 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:53:28 +0000, endDate: 2019-01-16 23:23:28 +0000, value: 3.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c75105013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5956, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 53 second: 28 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 22:49:24 +0000, persistedDate: 2019-01-16 22:53:40 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:49:24 +0000, endDate: 2019-01-16 23:19:24 +0000, value: 2.875, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011871105013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5955, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 49 second: 24 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 22:49:24 +0000, persistedDate: 2019-01-16 22:53:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5954, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 49 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 22:45:07 +0000, persistedDate: 2019-01-16 22:49:36 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:45:07 +0000, endDate: 2019-01-16 23:15:07 +0000, value: 3.775, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601076d105013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5953, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 45 second: 7 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 22:45:07 +0000, persistedDate: 2019-01-16 22:49:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5952, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 45 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 22:33:07 +0000, persistedDate: 2019-01-16 22:45:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5951, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 33 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 22:33:07 +0000, persistedDate: 2019-01-16 22:45:19 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:33:07 +0000, endDate: 2019-01-16 23:03:07 +0000, value: 4.55, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010761105013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5950, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 33 second: 7 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 22:24:59 +0000, persistedDate: 2019-01-16 22:33:19 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:24:59 +0000, endDate: 2019-01-16 22:54:59 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013b58105013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5949, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 24 second: 59 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 22:24:59 +0000, persistedDate: 2019-01-16 22:33:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5948, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 24 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 22:04:41 +0000, persistedDate: 2019-01-16 22:08:57 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:04:41 +0000, endDate: 2019-01-16 22:34:41 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012944105013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5947, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 4 second: 41 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 22:04:41 +0000, persistedDate: 2019-01-16 22:08:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5946, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 4 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 22:00:42 +0000, persistedDate: 2019-01-16 22:04:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5945, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 0 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 22:00:42 +0000, persistedDate: 2019-01-16 22:04:53 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:00:42 +0000, endDate: 2019-01-16 22:30:42 +0000, value: 4.3, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012a40105013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5944, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 16 minute: 0 second: 42 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 21:56:35 +0000, persistedDate: 2019-01-16 22:00:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5943, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 15 minute: 56 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 21:56:35 +0000, persistedDate: 2019-01-16 22:00:54 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:56:35 +0000, endDate: 2019-01-16 22:26:35 +0000, value: 3.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160123780f5013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5942, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 15 minute: 56 second: 35 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 21:52:33 +0000, persistedDate: 2019-01-16 21:56:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5941, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 15 minute: 52 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 21:52:33 +0000, persistedDate: 2019-01-16 21:56:47 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:52:33 +0000, endDate: 2019-01-16 22:22:33 +0000, value: 3.15, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160121740f5013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5940, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 15 minute: 52 second: 33 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 21:48:28 +0000, persistedDate: 2019-01-16 21:52:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5939, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 15 minute: 48 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 21:48:28 +0000, persistedDate: 2019-01-16 21:52:45 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:48:28 +0000, endDate: 2019-01-16 22:18:28 +0000, value: 1.875, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c700f5013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5938, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 15 minute: 48 second: 28 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 21:44:26 +0000, persistedDate: 2019-01-16 21:48:40 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:44:26 +0000, endDate: 2019-01-16 22:14:26 +0000, value: 0.3, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011a6c0f5013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5937, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 15 minute: 44 second: 26 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 21:44:26 +0000, persistedDate: 2019-01-16 21:48:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5936, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 15 minute: 44 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 21:27:07 +0000, persistedDate: 2019-01-16 21:31:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5935, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 15 minute: 27 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 21:27:07 +0000, persistedDate: 2019-01-16 21:31:23 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:27:07 +0000, endDate: 2019-01-16 21:57:07 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601075b0f5013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5934, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 15 minute: 27 second: 7 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 21:02:44 +0000, persistedDate: 2019-01-16 21:07:01 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:02:44 +0000, endDate: 2019-01-16 21:32:44 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012c420f5013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5933, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 15 minute: 2 second: 44 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 21:02:44 +0000, persistedDate: 2019-01-16 21:07:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5932, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 15 minute: 2 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 20:42:29 +0000, persistedDate: 2019-01-16 20:46:44 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 20:42:29 +0000, endDate: 2019-01-16 21:12:29 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011d6a0e5013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5931, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 14 minute: 42 second: 29 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 20:42:29 +0000, persistedDate: 2019-01-16 20:46:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5930, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 14 minute: 42 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 20:23:07 +0000, persistedDate: 2019-01-16 20:27:37 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 20:23:07 +0000, endDate: 2019-01-16 20:53:07 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160107570e5013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5929, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 14 minute: 23 second: 7 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 20:23:07 +0000, persistedDate: 2019-01-16 20:27:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5926, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 14 minute: 23 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 19:48:30 +0000, persistedDate: 2019-01-16 19:53:56 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 19:48:30 +0000, endDate: 2019-01-16 19:48:30 +0000, value: 5.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("013232001e702d5013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5912, raw: Optional(9 bytes), title: Optional("BolusNormalPumpEvent(length: 9, rawData: 9 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 13 minute: 48 second: 30 isLeapMonth: false , unabsorbedInsulinRecord: nil, amount: 5.0, programmed: 5.0, unabsorbedInsulinTotal: 0.0, type: MinimedKit.BolusNormalPumpEvent.BolusType.normal, duration: 0.0, deliveryUnitsPerMinute: 1.5)"), type: Optional(LoopKit.PumpEventType.bolus)) -* PersistedPumpEvent(date: 2019-01-16 19:44:33 +0000, persistedDate: 2019-01-16 19:48:57 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 19:44:33 +0000, endDate: 2019-01-16 19:44:33 +0000, value: 5.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("01323200216c2d5013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5911, raw: Optional(9 bytes), title: Optional("BolusNormalPumpEvent(length: 9, rawData: 9 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 13 minute: 44 second: 33 isLeapMonth: false , unabsorbedInsulinRecord: nil, amount: 5.0, programmed: 5.0, unabsorbedInsulinTotal: 0.0, type: MinimedKit.BolusNormalPumpEvent.BolusType.normal, duration: 0.0, deliveryUnitsPerMinute: 1.5)"), type: Optional(LoopKit.PumpEventType.bolus)) -* PersistedPumpEvent(date: 2019-01-16 19:42:39 +0000, persistedDate: 2019-01-16 19:44:45 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.resume, startDate: 2019-01-16 19:42:39 +0000, endDate: 2019-01-16 19:42:39 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("0300000060276a2d1013"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5909, raw: Optional(10 bytes), title: Optional("PrimePumpEvent(length: 10, rawData: 10 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 13 minute: 42 second: 39 isLeapMonth: false , amount: 9.6, primeType: \"manual\", programmedAmount: 0.0)"), type: Optional(LoopKit.PumpEventType.prime)) -* PersistedPumpEvent(date: 2019-01-16 19:41:28 +0000, persistedDate: 2019-01-16 19:44:45 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-16 19:41:28 +0000, endDate: 2019-01-16 19:41:28 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("21001c690d1013"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5910, raw: Optional(7 bytes), title: Optional("RewindPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 13 minute: 41 second: 28 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.rewind)) -* PersistedPumpEvent(date: 2019-01-16 19:04:46 +0000, persistedDate: 2019-01-16 19:09:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5908, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 13 minute: 4 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 19:04:46 +0000, persistedDate: 2019-01-16 19:09:11 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 19:04:46 +0000, endDate: 2019-01-16 19:34:46 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012e440d5013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5907, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 13 minute: 4 second: 46 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 18:41:35 +0000, persistedDate: 2019-01-16 18:45:51 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 18:41:35 +0000, endDate: 2019-01-16 19:11:35 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160123690c5013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5906, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 12 minute: 41 second: 35 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 18:41:35 +0000, persistedDate: 2019-01-16 18:45:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5904, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 12 minute: 41 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 18:37:17 +0000, persistedDate: 2019-01-16 18:41:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5903, raw: Optional(7 bytes), title: Optional("JournalEntryPumpLowReservoirPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 12 minute: 37 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 18:36:38 +0000, persistedDate: 2019-01-16 18:41:47 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 18:36:38 +0000, endDate: 2019-01-16 18:36:38 +0000, value: 4.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("0128280026642c5013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5900, raw: Optional(9 bytes), title: Optional("BolusNormalPumpEvent(length: 9, rawData: 9 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 12 minute: 36 second: 38 isLeapMonth: false , unabsorbedInsulinRecord: nil, amount: 4.0, programmed: 4.0, unabsorbedInsulinTotal: 0.0, type: MinimedKit.BolusNormalPumpEvent.BolusType.normal, duration: 0.0, deliveryUnitsPerMinute: 1.5)"), type: Optional(LoopKit.PumpEventType.bolus)) -* PersistedPumpEvent(date: 2019-01-16 17:03:20 +0000, persistedDate: 2019-01-16 18:41:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5902, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 11 minute: 3 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 17:03:20 +0000, persistedDate: 2019-01-16 18:41:47 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 17:03:20 +0000, endDate: 2019-01-16 17:33:20 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160114430b5013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5901, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 11 minute: 3 second: 20 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 16:40:23 +0000, persistedDate: 2019-01-16 16:40:53 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 16:40:23 +0000, endDate: 2019-01-16 17:10:23 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160117680a5013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5899, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 10 minute: 40 second: 23 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 16:40:23 +0000, persistedDate: 2019-01-16 16:40:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5898, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 10 minute: 40 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 13:19:56 +0000, persistedDate: 2019-01-16 13:20:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5896, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 7 minute: 19 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 13:19:56 +0000, persistedDate: 2019-01-16 13:20:25 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 13:19:56 +0000, endDate: 2019-01-16 13:49:56 +0000, value: 3.625, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013853075013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5894, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 7 minute: 19 second: 56 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 13:15:50 +0000, persistedDate: 2019-01-16 13:20:25 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 13:15:50 +0000, endDate: 2019-01-16 13:45:50 +0000, value: 4.575, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601324f075013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5897, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 7 minute: 15 second: 50 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 13:15:50 +0000, persistedDate: 2019-01-16 13:20:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5895, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 7 minute: 15 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 13:09:59 +0000, persistedDate: 2019-01-16 13:16:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5893, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 7 minute: 9 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 13:09:59 +0000, persistedDate: 2019-01-16 13:16:01 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 13:09:59 +0000, endDate: 2019-01-16 13:39:59 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013b49075013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5892, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 7 minute: 9 second: 59 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 12:57:01 +0000, persistedDate: 2019-01-16 12:57:31 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:57:01 +0000, endDate: 2019-01-16 13:27:01 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010179065013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5890, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 57 second: 1 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 12:57:01 +0000, persistedDate: 2019-01-16 12:57:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5889, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 57 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 12:55:26 +0000, persistedDate: 2019-01-16 12:57:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5888, raw: Optional(7 bytes), title: Optional("JournalEntryPumpLowReservoirPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 55 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 12:51:11 +0000, persistedDate: 2019-01-16 12:57:31 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 12:51:11 +0000, endDate: 2019-01-16 12:51:11 +0000, value: 4.7, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("012f2f000b73265013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5891, raw: Optional(9 bytes), title: Optional("BolusNormalPumpEvent(length: 9, rawData: 9 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 51 second: 11 isLeapMonth: false , unabsorbedInsulinRecord: nil, amount: 4.7, programmed: 4.7, unabsorbedInsulinTotal: 0.0, type: MinimedKit.BolusNormalPumpEvent.BolusType.normal, duration: 0.0, deliveryUnitsPerMinute: 1.5)"), type: Optional(LoopKit.PumpEventType.bolus)) -* PersistedPumpEvent(date: 2019-01-16 12:47:34 +0000, persistedDate: 2019-01-16 12:52:40 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:47:34 +0000, endDate: 2019-01-16 13:17:34 +0000, value: 2.125, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601226f065013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5887, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 47 second: 34 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 12:47:34 +0000, persistedDate: 2019-01-16 12:52:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5886, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 47 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 12:43:32 +0000, persistedDate: 2019-01-16 12:47:45 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:43:32 +0000, endDate: 2019-01-16 13:13:32 +0000, value: 0.125, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601206b065013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5885, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 43 second: 32 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 12:43:32 +0000, persistedDate: 2019-01-16 12:47:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5884, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 43 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 12:39:20 +0000, persistedDate: 2019-01-16 12:39:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5881, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 39 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 12:39:20 +0000, persistedDate: 2019-01-16 12:39:49 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:39:20 +0000, endDate: 2019-01-16 13:09:20 +0000, value: 2.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011467065013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5880, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 39 second: 20 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 12:35:10 +0000, persistedDate: 2019-01-16 12:39:49 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:35:10 +0000, endDate: 2019-01-16 13:05:10 +0000, value: 2.775, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010a63065013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5883, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 35 second: 10 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 12:35:10 +0000, persistedDate: 2019-01-16 12:39:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5882, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 35 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 12:30:10 +0000, persistedDate: 2019-01-16 12:35:21 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:30:10 +0000, endDate: 2019-01-16 13:00:10 +0000, value: 3.525, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010a5e065013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5879, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 30 second: 10 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 12:30:10 +0000, persistedDate: 2019-01-16 12:35:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5874, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 30 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 12:26:07 +0000, persistedDate: 2019-01-16 12:35:21 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:26:07 +0000, endDate: 2019-01-16 12:56:07 +0000, value: 3.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601075a065013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5878, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 26 second: 7 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 12:26:07 +0000, persistedDate: 2019-01-16 12:35:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5876, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 26 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 12:21:18 +0000, persistedDate: 2019-01-16 12:35:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5877, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 21 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 12:21:18 +0000, persistedDate: 2019-01-16 12:35:21 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:21:18 +0000, endDate: 2019-01-16 12:51:18 +0000, value: 1.55, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011255065013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5875, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 21 second: 18 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 12:12:24 +0000, persistedDate: 2019-01-16 12:13:08 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:12:24 +0000, endDate: 2019-01-16 12:42:24 +0000, value: 2.15, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601184c065013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5873, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 12 second: 24 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 12:12:24 +0000, persistedDate: 2019-01-16 12:13:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5871, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 12 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 12:08:00 +0000, persistedDate: 2019-01-16 12:13:08 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:08:00 +0000, endDate: 2019-01-16 12:38:00 +0000, value: 2.3, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010048065013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5872, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 8 second: 0 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 12:08:00 +0000, persistedDate: 2019-01-16 12:13:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5870, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 6 minute: 8 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 11:59:49 +0000, persistedDate: 2019-01-16 12:08:11 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:59:49 +0000, endDate: 2019-01-16 11:59:49 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1600317b055013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5869, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 59 second: 49 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 11:59:49 +0000, persistedDate: 2019-01-16 12:08:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5868, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 59 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 11:55:34 +0000, persistedDate: 2019-01-16 12:00:01 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:55:34 +0000, endDate: 2019-01-16 12:25:34 +0000, value: 1.975, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012277055013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5867, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 55 second: 34 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 11:55:34 +0000, persistedDate: 2019-01-16 12:00:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5866, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 55 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 11:51:41 +0000, persistedDate: 2019-01-16 11:55:46 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:51:41 +0000, endDate: 2019-01-16 12:21:41 +0000, value: 2.175, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012973055013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5865, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 51 second: 41 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 11:51:41 +0000, persistedDate: 2019-01-16 11:55:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5864, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 51 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 11:47:37 +0000, persistedDate: 2019-01-16 11:51:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5863, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 47 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 11:47:37 +0000, persistedDate: 2019-01-16 11:51:53 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:47:37 +0000, endDate: 2019-01-16 12:17:37 +0000, value: 2.575, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601256f055013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5862, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 47 second: 37 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 11:43:36 +0000, persistedDate: 2019-01-16 11:47:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5861, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 43 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 11:43:36 +0000, persistedDate: 2019-01-16 11:47:49 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:43:36 +0000, endDate: 2019-01-16 12:13:36 +0000, value: 2.65, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601246b055013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5860, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 43 second: 36 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 11:39:31 +0000, persistedDate: 2019-01-16 11:43:48 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:39:31 +0000, endDate: 2019-01-16 11:39:31 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16001f67055013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5859, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 39 second: 31 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 11:39:31 +0000, persistedDate: 2019-01-16 11:43:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5858, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 39 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 11:19:13 +0000, persistedDate: 2019-01-16 11:23:27 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:19:13 +0000, endDate: 2019-01-16 11:49:13 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010d53055013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5857, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 19 second: 13 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 11:19:13 +0000, persistedDate: 2019-01-16 11:23:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5856, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 19 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 11:15:09 +0000, persistedDate: 2019-01-16 11:19:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5855, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 15 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 11:15:09 +0000, persistedDate: 2019-01-16 11:19:25 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:15:09 +0000, endDate: 2019-01-16 11:45:09 +0000, value: 0.625, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601094f055013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5854, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 15 second: 9 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 11:07:02 +0000, persistedDate: 2019-01-16 11:11:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5853, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 7 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 11:07:02 +0000, persistedDate: 2019-01-16 11:11:17 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:07:02 +0000, endDate: 2019-01-16 11:37:02 +0000, value: 0.85, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010247055013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5852, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 7 second: 2 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 11:02:58 +0000, persistedDate: 2019-01-16 11:07:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5851, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 2 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 11:02:58 +0000, persistedDate: 2019-01-16 11:07:13 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:02:58 +0000, endDate: 2019-01-16 11:32:58 +0000, value: 0.975, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013a42055013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5850, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 5 minute: 2 second: 58 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 10:58:53 +0000, persistedDate: 2019-01-16 11:03:09 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:58:53 +0000, endDate: 2019-01-16 11:28:53 +0000, value: 1.125, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601357a045013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5849, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 58 second: 53 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 10:58:53 +0000, persistedDate: 2019-01-16 11:03:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5848, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 58 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 10:54:51 +0000, persistedDate: 2019-01-16 10:59:05 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:54:51 +0000, endDate: 2019-01-16 10:54:51 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16003376045013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5847, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 54 second: 51 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 10:54:51 +0000, persistedDate: 2019-01-16 10:59:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5846, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 54 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 10:50:51 +0000, persistedDate: 2019-01-16 10:55:03 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:50:51 +0000, endDate: 2019-01-16 11:20:51 +0000, value: 1.15, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013372045013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5845, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 50 second: 51 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 10:50:51 +0000, persistedDate: 2019-01-16 10:55:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5844, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 50 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 10:45:50 +0000, persistedDate: 2019-01-16 10:51:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5843, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 45 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 10:45:50 +0000, persistedDate: 2019-01-16 10:51:02 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:45:50 +0000, endDate: 2019-01-16 11:15:50 +0000, value: 0.975, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601326d045013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5842, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 45 second: 50 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 10:37:36 +0000, persistedDate: 2019-01-16 10:41:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5841, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 37 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 10:37:36 +0000, persistedDate: 2019-01-16 10:41:51 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:37:36 +0000, endDate: 2019-01-16 11:07:36 +0000, value: 1.025, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012465045013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5840, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 37 second: 36 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 10:33:31 +0000, persistedDate: 2019-01-16 10:37:47 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:33:31 +0000, endDate: 2019-01-16 11:03:31 +0000, value: 1.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011f61045013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5839, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 33 second: 31 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 10:33:31 +0000, persistedDate: 2019-01-16 10:37:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5838, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 33 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 10:29:30 +0000, persistedDate: 2019-01-16 10:33:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5837, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 29 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 10:29:30 +0000, persistedDate: 2019-01-16 10:33:43 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:29:30 +0000, endDate: 2019-01-16 10:59:30 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011e5d045013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5836, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 29 second: 30 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 10:25:26 +0000, persistedDate: 2019-01-16 10:29:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5835, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 25 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 10:25:26 +0000, persistedDate: 2019-01-16 10:29:42 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:25:26 +0000, endDate: 2019-01-16 10:55:26 +0000, value: 0.825, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011a59045013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5834, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 25 second: 26 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 10:21:25 +0000, persistedDate: 2019-01-16 10:25:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5833, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 21 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 10:21:25 +0000, persistedDate: 2019-01-16 10:25:38 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:21:25 +0000, endDate: 2019-01-16 10:51:25 +0000, value: 0.75, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011955045013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5832, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 21 second: 25 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 10:17:17 +0000, persistedDate: 2019-01-16 10:21:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5831, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 17 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 10:17:17 +0000, persistedDate: 2019-01-16 10:21:36 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:17:17 +0000, endDate: 2019-01-16 10:47:17 +0000, value: 0.65, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011151045013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5830, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 17 second: 17 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 10:13:13 +0000, persistedDate: 2019-01-16 10:17:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5829, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 13 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 10:13:13 +0000, persistedDate: 2019-01-16 10:17:29 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:13:13 +0000, endDate: 2019-01-16 10:43:13 +0000, value: 0.875, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010d4d045013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5828, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 13 second: 13 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 10:08:16 +0000, persistedDate: 2019-01-16 10:13:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5827, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 8 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 10:08:16 +0000, persistedDate: 2019-01-16 10:13:25 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:08:16 +0000, endDate: 2019-01-16 10:38:16 +0000, value: 1.325, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011048045013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5826, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 8 second: 16 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 10:04:26 +0000, persistedDate: 2019-01-16 10:04:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5825, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 4 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 10:04:26 +0000, persistedDate: 2019-01-16 10:04:55 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:04:26 +0000, endDate: 2019-01-16 10:34:26 +0000, value: 1.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011a44045013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5824, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 4 minute: 4 second: 26 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 09:59:59 +0000, persistedDate: 2019-01-16 10:04:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5823, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 59 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 09:59:59 +0000, persistedDate: 2019-01-16 10:04:55 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:59:59 +0000, endDate: 2019-01-16 10:29:59 +0000, value: 1.325, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013b7b035013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5822, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 59 second: 59 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 09:55:55 +0000, persistedDate: 2019-01-16 10:00:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5821, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 55 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 09:55:55 +0000, persistedDate: 2019-01-16 10:00:11 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:55:55 +0000, endDate: 2019-01-16 10:25:55 +0000, value: 1.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013777035013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5820, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 55 second: 55 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 09:51:42 +0000, persistedDate: 2019-01-16 09:56:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5819, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 51 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 09:51:42 +0000, persistedDate: 2019-01-16 09:56:07 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:51:42 +0000, endDate: 2019-01-16 10:21:42 +0000, value: 1.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012a73035013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5818, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 51 second: 42 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 09:47:49 +0000, persistedDate: 2019-01-16 09:51:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5817, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 47 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 09:47:49 +0000, persistedDate: 2019-01-16 09:51:54 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:47:49 +0000, endDate: 2019-01-16 10:17:49 +0000, value: 2.225, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601316f035013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5816, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 47 second: 49 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 09:43:45 +0000, persistedDate: 2019-01-16 09:48:01 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:43:45 +0000, endDate: 2019-01-16 10:13:45 +0000, value: 2.5, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012d6b035013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5815, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 43 second: 45 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 09:43:45 +0000, persistedDate: 2019-01-16 09:48:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5814, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 43 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 09:39:41 +0000, persistedDate: 2019-01-16 09:43:57 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:39:41 +0000, endDate: 2019-01-16 10:09:41 +0000, value: 2.225, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012967035013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5813, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 39 second: 41 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 09:39:41 +0000, persistedDate: 2019-01-16 09:43:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5812, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 39 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 09:35:37 +0000, persistedDate: 2019-01-16 09:39:53 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:35:37 +0000, endDate: 2019-01-16 10:05:37 +0000, value: 1.775, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012563035013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5811, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 35 second: 37 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 09:35:37 +0000, persistedDate: 2019-01-16 09:39:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5810, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 35 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 09:31:35 +0000, persistedDate: 2019-01-16 09:35:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5809, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 31 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 09:31:35 +0000, persistedDate: 2019-01-16 09:35:49 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:31:35 +0000, endDate: 2019-01-16 10:01:35 +0000, value: 1.825, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601235f035013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5808, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 31 second: 35 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 09:27:31 +0000, persistedDate: 2019-01-16 09:31:47 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:27:31 +0000, endDate: 2019-01-16 09:57:31 +0000, value: 2.025, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011f5b035013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5807, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 27 second: 31 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 09:27:31 +0000, persistedDate: 2019-01-16 09:31:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5806, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 27 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 09:23:30 +0000, persistedDate: 2019-01-16 09:27:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5805, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 23 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 09:23:30 +0000, persistedDate: 2019-01-16 09:27:43 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:23:30 +0000, endDate: 2019-01-16 09:53:30 +0000, value: 2.85, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011e57035013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5804, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 23 second: 30 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 09:19:26 +0000, persistedDate: 2019-01-16 09:23:42 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:19:26 +0000, endDate: 2019-01-16 09:49:26 +0000, value: 3.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011a53035013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5803, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 19 second: 26 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 09:19:26 +0000, persistedDate: 2019-01-16 09:23:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5802, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 19 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 09:15:19 +0000, persistedDate: 2019-01-16 09:19:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5801, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 15 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 09:15:19 +0000, persistedDate: 2019-01-16 09:19:38 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:15:19 +0000, endDate: 2019-01-16 09:15:19 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1600134f035013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5800, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 15 second: 19 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 09:03:07 +0000, persistedDate: 2019-01-16 09:07:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5799, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 3 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 09:03:07 +0000, persistedDate: 2019-01-16 09:07:24 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:03:07 +0000, endDate: 2019-01-16 09:33:07 +0000, value: 1.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010743035013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5798, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 3 minute: 3 second: 7 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 08:59:17 +0000, persistedDate: 2019-01-16 08:59:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5797, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 59 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 08:59:17 +0000, persistedDate: 2019-01-16 08:59:45 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:59:17 +0000, endDate: 2019-01-16 08:59:17 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1600117b025013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5796, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 59 second: 17 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 08:46:53 +0000, persistedDate: 2019-01-16 08:51:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5795, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 46 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 08:46:53 +0000, persistedDate: 2019-01-16 08:51:08 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:46:53 +0000, endDate: 2019-01-16 09:16:53 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601356e025013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5794, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 46 second: 53 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 08:42:49 +0000, persistedDate: 2019-01-16 08:47:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5793, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 42 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 08:42:49 +0000, persistedDate: 2019-01-16 08:47:04 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:42:49 +0000, endDate: 2019-01-16 09:12:49 +0000, value: 0.675, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601316a025013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5792, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 42 second: 49 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 08:38:45 +0000, persistedDate: 2019-01-16 08:43:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5791, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 38 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 08:38:45 +0000, persistedDate: 2019-01-16 08:43:00 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:38:45 +0000, endDate: 2019-01-16 09:08:45 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012d66025013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5790, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 38 second: 45 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 08:18:30 +0000, persistedDate: 2019-01-16 08:22:43 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:18:30 +0000, endDate: 2019-01-16 08:48:30 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011e52025013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5789, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 18 second: 30 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 08:18:30 +0000, persistedDate: 2019-01-16 08:22:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5788, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 18 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 08:14:26 +0000, persistedDate: 2019-01-16 08:18:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5787, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 14 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 08:14:26 +0000, persistedDate: 2019-01-16 08:18:42 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:14:26 +0000, endDate: 2019-01-16 08:44:26 +0000, value: 0.025, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011a4e025013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5786, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 14 second: 26 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 08:10:19 +0000, persistedDate: 2019-01-16 08:14:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5785, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 10 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 08:10:19 +0000, persistedDate: 2019-01-16 08:14:38 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:10:19 +0000, endDate: 2019-01-16 08:40:19 +0000, value: 0.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601134a025013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5784, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 10 second: 19 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 08:06:06 +0000, persistedDate: 2019-01-16 08:10:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5783, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 6 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 08:06:06 +0000, persistedDate: 2019-01-16 08:10:31 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:06:06 +0000, endDate: 2019-01-16 08:36:06 +0000, value: 0.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010646025013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5782, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 2 minute: 6 second: 6 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 07:57:21 +0000, persistedDate: 2019-01-16 08:01:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5781, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 57 second: 21 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 07:57:21 +0000, persistedDate: 2019-01-16 08:01:23 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:57:21 +0000, endDate: 2019-01-16 08:27:21 +0000, value: 0.6, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011579015013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5780, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 57 second: 21 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 07:53:03 +0000, persistedDate: 2019-01-16 07:57:32 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:53:03 +0000, endDate: 2019-01-16 08:23:03 +0000, value: 1.55, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010375015013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5779, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 53 second: 3 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 07:53:03 +0000, persistedDate: 2019-01-16 07:57:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5778, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 53 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 07:48:48 +0000, persistedDate: 2019-01-16 07:53:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5776, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 48 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 07:48:48 +0000, persistedDate: 2019-01-16 07:53:15 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:48:48 +0000, endDate: 2019-01-16 08:18:48 +0000, value: 4.425, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013070015013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5775, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 48 second: 48 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 07:47:50 +0000, persistedDate: 2019-01-16 07:48:59 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 07:47:50 +0000, endDate: 2019-01-16 07:47:50 +0000, value: 1.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("010a0a00326f215013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5774, raw: Optional(9 bytes), title: Optional("BolusNormalPumpEvent(length: 9, rawData: 9 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 47 second: 50 isLeapMonth: false , unabsorbedInsulinRecord: nil, amount: 1.0, programmed: 1.0, unabsorbedInsulinTotal: 0.0, type: MinimedKit.BolusNormalPumpEvent.BolusType.normal, duration: 0.0, deliveryUnitsPerMinute: 1.5)"), type: Optional(LoopKit.PumpEventType.bolus)) -* PersistedPumpEvent(date: 2019-01-16 07:28:42 +0000, persistedDate: 2019-01-16 07:32:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5773, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 28 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 07:28:42 +0000, persistedDate: 2019-01-16 07:32:57 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:28:42 +0000, endDate: 2019-01-16 07:58:42 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012a5c015013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5772, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 28 second: 42 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 07:24:37 +0000, persistedDate: 2019-01-16 07:28:53 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:24:37 +0000, endDate: 2019-01-16 07:54:37 +0000, value: 3.975, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012558015013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5771, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 24 second: 37 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 07:24:37 +0000, persistedDate: 2019-01-16 07:28:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5770, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 24 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 07:20:33 +0000, persistedDate: 2019-01-16 07:24:49 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:20:33 +0000, endDate: 2019-01-16 07:50:33 +0000, value: 2.5, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012154015013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5769, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 20 second: 33 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 07:20:33 +0000, persistedDate: 2019-01-16 07:24:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5768, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 20 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 07:12:30 +0000, persistedDate: 2019-01-16 07:16:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5767, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 12 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 07:12:30 +0000, persistedDate: 2019-01-16 07:16:43 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:12:30 +0000, endDate: 2019-01-16 07:42:30 +0000, value: 1.525, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011e4c015013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5766, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 12 second: 30 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 07:08:27 +0000, persistedDate: 2019-01-16 07:12:42 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:08:27 +0000, endDate: 2019-01-16 07:38:27 +0000, value: 1.075, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011b48015013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5765, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 8 second: 27 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 07:08:27 +0000, persistedDate: 2019-01-16 07:12:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5764, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 8 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 07:04:19 +0000, persistedDate: 2019-01-16 07:08:39 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:04:19 +0000, endDate: 2019-01-16 07:34:19 +0000, value: 1.125, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011344015013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5763, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 4 second: 19 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 07:04:19 +0000, persistedDate: 2019-01-16 07:08:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5762, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 4 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 07:00:15 +0000, persistedDate: 2019-01-16 07:04:31 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:00:15 +0000, endDate: 2019-01-16 07:30:15 +0000, value: 1.075, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010f40015013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5761, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 0 second: 15 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 07:00:15 +0000, persistedDate: 2019-01-16 07:04:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5760, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 1 minute: 0 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 06:56:13 +0000, persistedDate: 2019-01-16 07:00:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5759, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 0 minute: 56 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 06:56:13 +0000, persistedDate: 2019-01-16 07:00:27 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:56:13 +0000, endDate: 2019-01-16 07:26:13 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010d78005013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5758, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 0 minute: 56 second: 13 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 06:51:58 +0000, persistedDate: 2019-01-16 06:56:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5757, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 0 minute: 51 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 06:51:58 +0000, persistedDate: 2019-01-16 06:56:25 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:51:58 +0000, endDate: 2019-01-16 07:21:58 +0000, value: 0.7, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013a73005013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5756, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 0 minute: 51 second: 58 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 06:48:05 +0000, persistedDate: 2019-01-16 06:52:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5755, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 0 minute: 48 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 06:48:05 +0000, persistedDate: 2019-01-16 06:52:10 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:48:05 +0000, endDate: 2019-01-16 07:18:05 +0000, value: 0.725, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010570005013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5754, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 0 minute: 48 second: 5 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 06:44:01 +0000, persistedDate: 2019-01-16 06:48:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5753, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 0 minute: 44 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 06:44:01 +0000, persistedDate: 2019-01-16 06:48:16 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:44:01 +0000, endDate: 2019-01-16 07:14:01 +0000, value: 0.7, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601016c005013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5752, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 0 minute: 44 second: 1 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 06:39:56 +0000, persistedDate: 2019-01-16 06:44:13 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:39:56 +0000, endDate: 2019-01-16 07:09:56 +0000, value: 0.225, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013867005013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5751, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 0 minute: 39 second: 56 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 06:39:56 +0000, persistedDate: 2019-01-16 06:44:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5750, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 0 minute: 39 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 06:31:51 +0000, persistedDate: 2019-01-16 06:36:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5749, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 0 minute: 31 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 06:31:51 +0000, persistedDate: 2019-01-16 06:36:05 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:31:51 +0000, endDate: 2019-01-16 07:01:51 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601335f005013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5748, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 0 minute: 31 second: 51 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 06:11:34 +0000, persistedDate: 2019-01-16 06:15:47 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:11:34 +0000, endDate: 2019-01-16 06:41:34 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601224b005013"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5747, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 0 minute: 11 second: 34 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 06:11:34 +0000, persistedDate: 2019-01-16 06:15:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5746, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 16 hour: 0 minute: 11 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 05:50:02 +0000, persistedDate: 2019-01-16 05:54:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5745, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 50 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 05:50:02 +0000, persistedDate: 2019-01-16 05:54:29 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:50:02 +0000, endDate: 2019-01-16 06:20:02 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010272174f13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5744, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 50 second: 2 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 05:29:56 +0000, persistedDate: 2019-01-16 05:34:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5743, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 29 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 05:29:56 +0000, persistedDate: 2019-01-16 05:34:12 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:29:56 +0000, endDate: 2019-01-16 05:59:56 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601385d174f13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5742, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 29 second: 56 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 05:25:52 +0000, persistedDate: 2019-01-16 05:30:07 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:25:52 +0000, endDate: 2019-01-16 05:55:52 +0000, value: 0.275, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013459174f13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5741, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 25 second: 52 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 05:25:52 +0000, persistedDate: 2019-01-16 05:30:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5740, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 25 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 05:21:47 +0000, persistedDate: 2019-01-16 05:26:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5739, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 21 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 05:21:47 +0000, persistedDate: 2019-01-16 05:26:04 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:21:47 +0000, endDate: 2019-01-16 05:21:47 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16002f55174f13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5738, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 21 second: 47 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 05:18:02 +0000, persistedDate: 2019-01-16 05:21:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5736, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 18 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 05:18:02 +0000, persistedDate: 2019-01-16 05:21:59 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:18:02 +0000, endDate: 2019-01-16 05:48:02 +0000, value: 3.925, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010252174f13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5735, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 18 second: 2 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 05:18:00 +0000, persistedDate: 2019-01-16 05:21:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5737, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 18 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 05:18:00 +0000, persistedDate: 2019-01-16 05:21:59 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:18:00 +0000, endDate: 2019-01-16 05:48:00 +0000, value: 3.925, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010052174f13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5733, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 18 second: 0 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 05:13:20 +0000, persistedDate: 2019-01-16 05:17:58 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 05:13:20 +0000, endDate: 2019-01-16 05:13:20 +0000, value: 4.3, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("012b2b00144d374f13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5731, raw: Optional(9 bytes), title: Optional("BolusNormalPumpEvent(length: 9, rawData: 9 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 13 second: 20 isLeapMonth: false , unabsorbedInsulinRecord: nil, amount: 4.3, programmed: 4.3, unabsorbedInsulinTotal: 0.0, type: MinimedKit.BolusNormalPumpEvent.BolusType.normal, duration: 0.0, deliveryUnitsPerMinute: 1.5)"), type: Optional(LoopKit.PumpEventType.bolus)) -* PersistedPumpEvent(date: 2019-01-16 05:04:35 +0000, persistedDate: 2019-01-16 05:08:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5730, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 4 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 05:04:35 +0000, persistedDate: 2019-01-16 05:08:37 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:04:35 +0000, endDate: 2019-01-16 05:34:35 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012344174f13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5729, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 4 second: 35 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 05:00:30 +0000, persistedDate: 2019-01-16 05:04:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5728, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 0 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 05:00:30 +0000, persistedDate: 2019-01-16 05:04:46 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:00:30 +0000, endDate: 2019-01-16 05:30:30 +0000, value: 4.6, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011e40174f13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5727, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 23 minute: 0 second: 30 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 04:56:27 +0000, persistedDate: 2019-01-16 05:00:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5726, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 22 minute: 56 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 04:56:27 +0000, persistedDate: 2019-01-16 05:00:42 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 04:56:27 +0000, endDate: 2019-01-16 05:26:27 +0000, value: 3.375, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011b78164f13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5725, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 22 minute: 56 second: 27 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 04:51:24 +0000, persistedDate: 2019-01-16 04:56:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5724, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 22 minute: 51 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 04:51:24 +0000, persistedDate: 2019-01-16 04:56:38 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 04:51:24 +0000, endDate: 2019-01-16 05:21:24 +0000, value: 2.175, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011873164f13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5723, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 22 minute: 51 second: 24 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 04:47:19 +0000, persistedDate: 2019-01-16 04:51:36 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 04:47:19 +0000, endDate: 2019-01-16 05:17:19 +0000, value: 2.325, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601136f164f13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5722, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 22 minute: 47 second: 19 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 04:47:19 +0000, persistedDate: 2019-01-16 04:51:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5721, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 22 minute: 47 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 04:29:02 +0000, persistedDate: 2019-01-16 04:33:15 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 04:29:02 +0000, endDate: 2019-01-16 04:59:02 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601025d164f13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5720, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 22 minute: 29 second: 2 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-16 04:29:02 +0000, persistedDate: 2019-01-16 04:33:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5718, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 22 minute: 29 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 01:23:42 +0000, persistedDate: 2019-01-16 02:01:01 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 01:23:42 +0000, endDate: 2019-01-16 01:23:42 +0000, value: 13.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("018282002a57334f13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5696, raw: Optional(9 bytes), title: Optional("BolusNormalPumpEvent(length: 9, rawData: 9 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 19 minute: 23 second: 42 isLeapMonth: false , unabsorbedInsulinRecord: nil, amount: 13.0, programmed: 13.0, unabsorbedInsulinTotal: 0.0, type: MinimedKit.BolusNormalPumpEvent.BolusType.normal, duration: 0.0, deliveryUnitsPerMinute: 1.5)"), type: Optional(LoopKit.PumpEventType.bolus)) -* PersistedPumpEvent(date: 2019-01-16 01:23:08 +0000, persistedDate: 2019-01-16 01:23:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5695, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 19 minute: 23 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-16 01:23:08 +0000, persistedDate: 2019-01-16 01:23:41 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 01:23:08 +0000, endDate: 2019-01-16 01:53:08 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010857134f13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5694, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 19 minute: 23 second: 8 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal)) -* PersistedPumpEvent(date: 2019-01-15 22:25:33 +0000, persistedDate: 2019-01-15 22:35:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5693, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 16 minute: 25 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 22:17:30 +0000, persistedDate: 2019-01-15 22:21:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5691, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 16 minute: 17 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 21:16:31 +0000, persistedDate: 2019-01-15 21:20:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5689, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 15 minute: 16 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 21:12:29 +0000, persistedDate: 2019-01-15 21:16:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5686, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 15 minute: 12 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 20:47:54 +0000, persistedDate: 2019-01-15 20:52:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5685, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 14 minute: 47 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 20:27:47 +0000, persistedDate: 2019-01-15 20:32:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5683, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 14 minute: 27 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 20:07:29 +0000, persistedDate: 2019-01-15 20:11:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5680, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 14 minute: 7 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 19:47:11 +0000, persistedDate: 2019-01-15 19:51:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5678, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 13 minute: 47 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 19:26:56 +0000, persistedDate: 2019-01-15 19:31:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5676, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 13 minute: 26 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 19:26:53 +0000, persistedDate: 2019-01-15 19:31:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5674, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 13 minute: 26 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 19:06:35 +0000, persistedDate: 2019-01-15 19:10:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5671, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 13 minute: 6 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 18:57:28 +0000, persistedDate: 2019-01-15 19:02:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5669, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 12 minute: 57 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 18:53:24 +0000, persistedDate: 2019-01-15 18:57:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5666, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 12 minute: 53 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 18:49:17 +0000, persistedDate: 2019-01-15 18:53:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5665, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 12 minute: 49 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 18:38:08 +0000, persistedDate: 2019-01-15 18:49:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5663, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 12 minute: 38 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 18:34:03 +0000, persistedDate: 2019-01-15 18:38:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5661, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 12 minute: 34 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 18:21:55 +0000, persistedDate: 2019-01-15 18:34:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5658, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 12 minute: 21 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 18:17:47 +0000, persistedDate: 2019-01-15 18:22:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5656, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 12 minute: 17 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 18:13:43 +0000, persistedDate: 2019-01-15 18:17:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5655, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 12 minute: 13 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 18:09:42 +0000, persistedDate: 2019-01-15 18:13:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5653, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 12 minute: 9 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 17:57:31 +0000, persistedDate: 2019-01-15 18:05:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5651, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 11 minute: 57 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 17:34:58 +0000, persistedDate: 2019-01-15 17:39:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5648, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 11 minute: 34 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 17:13:49 +0000, persistedDate: 2019-01-15 17:18:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5646, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 11 minute: 13 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 17:05:42 +0000, persistedDate: 2019-01-15 17:14:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5645, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 11 minute: 5 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 16:29:09 +0000, persistedDate: 2019-01-15 16:33:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5643, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 10 minute: 29 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 16:25:05 +0000, persistedDate: 2019-01-15 16:29:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5641, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 10 minute: 25 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 16:04:47 +0000, persistedDate: 2019-01-15 16:09:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5639, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 10 minute: 4 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 16:00:43 +0000, persistedDate: 2019-01-15 16:04:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5636, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 10 minute: 0 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 15:48:33 +0000, persistedDate: 2019-01-15 15:52:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5634, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 9 minute: 48 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 15:44:29 +0000, persistedDate: 2019-01-15 15:48:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5633, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 9 minute: 44 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 15:40:28 +0000, persistedDate: 2019-01-15 15:44:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5631, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 9 minute: 40 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 15:36:13 +0000, persistedDate: 2019-01-15 15:40:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5629, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 9 minute: 36 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 15:32:19 +0000, persistedDate: 2019-01-15 15:36:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5627, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 9 minute: 32 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 15:24:09 +0000, persistedDate: 2019-01-15 15:28:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5624, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 9 minute: 24 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 15:15:52 +0000, persistedDate: 2019-01-15 15:20:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5623, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 9 minute: 15 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 15:11:06 +0000, persistedDate: 2019-01-15 15:16:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5620, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 9 minute: 11 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 15:06:55 +0000, persistedDate: 2019-01-15 15:11:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5619, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 9 minute: 6 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 14:48:43 +0000, persistedDate: 2019-01-15 14:54:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5616, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 8 minute: 48 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 13:22:30 +0000, persistedDate: 2019-01-15 14:48:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5615, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 7 minute: 22 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 13:13:13 +0000, persistedDate: 2019-01-15 13:13:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5613, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 7 minute: 13 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 13:04:14 +0000, persistedDate: 2019-01-15 13:09:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5611, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 7 minute: 4 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 12:59:14 +0000, persistedDate: 2019-01-15 13:04:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5609, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 6 minute: 59 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 12:50:59 +0000, persistedDate: 2019-01-15 12:55:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5605, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 6 minute: 50 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 12:30:30 +0000, persistedDate: 2019-01-15 12:34:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5602, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 6 minute: 30 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 12:10:37 +0000, persistedDate: 2019-01-15 12:16:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5600, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 6 minute: 10 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 12:01:04 +0000, persistedDate: 2019-01-15 12:06:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5599, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 6 minute: 1 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 11:51:03 +0000, persistedDate: 2019-01-15 11:51:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5597, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 5 minute: 51 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 11:47:00 +0000, persistedDate: 2019-01-15 11:51:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5596, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 5 minute: 47 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 11:42:46 +0000, persistedDate: 2019-01-15 11:47:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5593, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 5 minute: 42 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 11:39:07 +0000, persistedDate: 2019-01-15 11:39:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5588, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 5 minute: 39 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 11:34:48 +0000, persistedDate: 2019-01-15 11:39:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5591, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 5 minute: 34 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 11:30:44 +0000, persistedDate: 2019-01-15 11:34:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5587, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 5 minute: 30 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 11:26:42 +0000, persistedDate: 2019-01-15 11:30:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5584, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 5 minute: 26 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 11:22:39 +0000, persistedDate: 2019-01-15 11:26:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5583, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 5 minute: 22 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 11:18:34 +0000, persistedDate: 2019-01-15 11:22:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5580, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 5 minute: 18 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 11:14:30 +0000, persistedDate: 2019-01-15 11:18:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5579, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 5 minute: 14 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 11:10:29 +0000, persistedDate: 2019-01-15 11:14:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5576, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 5 minute: 10 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 11:02:19 +0000, persistedDate: 2019-01-15 11:06:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5575, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 5 minute: 2 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 10:58:16 +0000, persistedDate: 2019-01-15 11:02:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5573, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 4 minute: 58 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 10:54:00 +0000, persistedDate: 2019-01-15 10:58:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5571, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 4 minute: 54 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 10:42:01 +0000, persistedDate: 2019-01-15 10:46:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5568, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 4 minute: 42 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 10:37:57 +0000, persistedDate: 2019-01-15 10:42:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5566, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 4 minute: 37 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 10:33:53 +0000, persistedDate: 2019-01-15 10:38:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5565, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 4 minute: 33 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 10:29:52 +0000, persistedDate: 2019-01-15 10:34:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5563, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 4 minute: 29 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 10:25:48 +0000, persistedDate: 2019-01-15 10:30:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5560, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 4 minute: 25 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 10:21:50 +0000, persistedDate: 2019-01-15 10:25:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5559, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 4 minute: 21 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 10:17:42 +0000, persistedDate: 2019-01-15 10:22:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5556, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 4 minute: 17 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 10:13:36 +0000, persistedDate: 2019-01-15 10:17:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5555, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 4 minute: 13 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 10:09:32 +0000, persistedDate: 2019-01-15 10:13:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5553, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 4 minute: 9 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 10:05:32 +0000, persistedDate: 2019-01-15 10:09:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5551, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 4 minute: 5 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 10:00:27 +0000, persistedDate: 2019-01-15 10:05:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5548, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 4 minute: 0 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 09:52:17 +0000, persistedDate: 2019-01-15 09:56:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5547, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 3 minute: 52 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 09:48:11 +0000, persistedDate: 2019-01-15 09:52:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5545, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 3 minute: 48 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 09:44:07 +0000, persistedDate: 2019-01-15 09:48:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5542, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 3 minute: 44 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 09:40:06 +0000, persistedDate: 2019-01-15 09:44:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5541, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 3 minute: 40 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 09:36:02 +0000, persistedDate: 2019-01-15 09:40:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5538, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 3 minute: 36 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 09:31:04 +0000, persistedDate: 2019-01-15 09:36:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5537, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 3 minute: 31 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 09:26:54 +0000, persistedDate: 2019-01-15 09:31:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5535, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 3 minute: 26 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 09:22:38 +0000, persistedDate: 2019-01-15 09:27:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5533, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 3 minute: 22 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 09:18:46 +0000, persistedDate: 2019-01-15 09:22:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5531, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 3 minute: 18 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 09:14:41 +0000, persistedDate: 2019-01-15 09:18:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5529, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 3 minute: 14 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 09:10:37 +0000, persistedDate: 2019-01-15 09:14:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5527, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 3 minute: 10 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 09:06:24 +0000, persistedDate: 2019-01-15 09:10:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5524, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 3 minute: 6 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 09:02:02 +0000, persistedDate: 2019-01-15 09:06:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5523, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 3 minute: 2 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 08:57:30 +0000, persistedDate: 2019-01-15 09:01:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5521, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 2 minute: 57 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 08:53:24 +0000, persistedDate: 2019-01-15 08:57:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5518, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 2 minute: 53 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 08:49:19 +0000, persistedDate: 2019-01-15 08:53:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5517, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 2 minute: 49 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 08:45:15 +0000, persistedDate: 2019-01-15 08:49:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5514, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 2 minute: 45 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 08:40:18 +0000, persistedDate: 2019-01-15 08:45:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5513, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 2 minute: 40 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 08:32:03 +0000, persistedDate: 2019-01-15 08:36:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5511, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 2 minute: 32 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 08:27:59 +0000, persistedDate: 2019-01-15 08:32:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5508, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 2 minute: 27 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 08:23:56 +0000, persistedDate: 2019-01-15 08:28:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5506, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 2 minute: 23 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 08:19:51 +0000, persistedDate: 2019-01-15 08:24:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5505, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 2 minute: 19 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 08:15:47 +0000, persistedDate: 2019-01-15 08:20:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5503, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 2 minute: 15 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 08:11:45 +0000, persistedDate: 2019-01-15 08:15:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5500, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 2 minute: 11 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 08:07:41 +0000, persistedDate: 2019-01-15 08:11:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5499, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 2 minute: 7 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 08:03:51 +0000, persistedDate: 2019-01-15 08:07:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5497, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 2 minute: 3 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 07:59:47 +0000, persistedDate: 2019-01-15 08:04:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5494, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 15 hour: 1 minute: 59 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 04:54:37 +0000, persistedDate: 2019-01-15 05:11:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5490, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 22 minute: 54 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 04:33:08 +0000, persistedDate: 2019-01-15 04:54:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5488, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 22 minute: 33 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 04:20:58 +0000, persistedDate: 2019-01-15 04:33:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5478, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 22 minute: 20 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 04:07:21 +0000, persistedDate: 2019-01-15 04:33:18 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.resume, startDate: 2019-01-15 04:07:21 +0000, endDate: 2019-01-15 04:07:21 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("03000000001547360e13"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5477, raw: Optional(10 bytes), title: Optional("PrimePumpEvent(length: 10, rawData: 10 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 22 minute: 7 second: 21 isLeapMonth: false , amount: 0.0, primeType: \"manual\", programmedAmount: 0.0)"), type: Optional(LoopKit.PumpEventType.prime)) -* PersistedPumpEvent(date: 2019-01-15 04:07:03 +0000, persistedDate: 2019-01-15 04:33:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5483, raw: Optional(7 bytes), title: Optional("BatteryPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 22 minute: 7 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 04:06:34 +0000, persistedDate: 2019-01-15 04:33:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5476, raw: Optional(7 bytes), title: Optional("BatteryPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 22 minute: 6 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 04:04:04 +0000, persistedDate: 2019-01-15 04:33:18 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-15 04:04:04 +0000, endDate: 2019-01-15 04:04:04 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("21000444160e13"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5472, raw: Optional(7 bytes), title: Optional("RewindPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 22 minute: 4 second: 4 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.rewind)) -* PersistedPumpEvent(date: 2019-01-15 04:01:07 +0000, persistedDate: 2019-01-15 04:33:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5481, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 22 minute: 1 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 04:01:05 +0000, persistedDate: 2019-01-15 04:33:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5484, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 22 minute: 1 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 04:01:00 +0000, persistedDate: 2019-01-15 04:33:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5474, raw: Optional(7 bytes), title: Optional("JournalEntryPumpLowBatteryPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 22 minute: 1 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 03:56:29 +0000, persistedDate: 2019-01-15 04:33:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5473, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 21 minute: 56 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 03:51:43 +0000, persistedDate: 2019-01-15 04:33:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5485, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 21 minute: 51 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 03:47:40 +0000, persistedDate: 2019-01-15 03:51:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5470, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 21 minute: 47 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 03:39:30 +0000, persistedDate: 2019-01-15 03:47:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5468, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 21 minute: 39 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 03:35:28 +0000, persistedDate: 2019-01-15 03:39:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5467, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 21 minute: 35 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 03:30:18 +0000, persistedDate: 2019-01-15 03:30:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5462, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 21 minute: 30 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 03:21:17 +0000, persistedDate: 2019-01-15 03:30:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5465, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 21 minute: 21 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 03:14:08 +0000, persistedDate: 2019-01-15 03:21:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5461, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 21 minute: 14 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 03:10:08 +0000, persistedDate: 2019-01-15 03:10:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5458, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 21 minute: 10 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 03:02:22 +0000, persistedDate: 2019-01-15 03:02:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5456, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 21 minute: 2 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 02:57:52 +0000, persistedDate: 2019-01-15 03:02:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5457, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 20 minute: 57 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 02:53:48 +0000, persistedDate: 2019-01-15 02:58:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5452, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 20 minute: 53 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 02:49:43 +0000, persistedDate: 2019-01-15 02:53:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5450, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 20 minute: 49 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 02:45:35 +0000, persistedDate: 2019-01-15 02:46:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5446, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 20 minute: 45 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 02:40:43 +0000, persistedDate: 2019-01-15 02:46:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5447, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 20 minute: 40 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 02:21:22 +0000, persistedDate: 2019-01-15 02:40:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5445, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 20 minute: 21 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 02:13:35 +0000, persistedDate: 2019-01-15 02:14:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5443, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 20 minute: 13 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 01:53:10 +0000, persistedDate: 2019-01-15 02:01:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5440, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 19 minute: 53 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 01:16:23 +0000, persistedDate: 2019-01-15 01:24:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5439, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 19 minute: 16 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 00:57:02 +0000, persistedDate: 2019-01-15 01:12:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5437, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 18 minute: 57 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 00:43:48 +0000, persistedDate: 2019-01-15 00:48:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5434, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 18 minute: 43 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 00:39:34 +0000, persistedDate: 2019-01-15 00:43:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5433, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 18 minute: 39 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 00:35:14 +0000, persistedDate: 2019-01-15 00:35:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5431, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 18 minute: 35 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 00:30:38 +0000, persistedDate: 2019-01-15 00:35:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5430, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 18 minute: 30 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 00:22:30 +0000, persistedDate: 2019-01-15 00:26:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5426, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 18 minute: 22 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 00:18:26 +0000, persistedDate: 2019-01-15 00:22:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5425, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 18 minute: 18 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 00:14:23 +0000, persistedDate: 2019-01-15 00:18:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5423, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 18 minute: 14 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-15 00:10:16 +0000, persistedDate: 2019-01-15 00:14:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5421, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 18 minute: 10 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 23:57:07 +0000, persistedDate: 2019-01-15 00:01:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5418, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 17 minute: 57 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 23:53:02 +0000, persistedDate: 2019-01-14 23:57:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5417, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 17 minute: 53 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 23:48:47 +0000, persistedDate: 2019-01-14 23:53:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5414, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 17 minute: 48 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 23:44:54 +0000, persistedDate: 2019-01-14 23:48:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5413, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 17 minute: 44 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 23:40:50 +0000, persistedDate: 2019-01-14 23:45:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5411, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 17 minute: 40 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 23:36:48 +0000, persistedDate: 2019-01-14 23:41:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5408, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 17 minute: 36 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 23:32:44 +0000, persistedDate: 2019-01-14 23:36:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5406, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 17 minute: 32 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 23:28:38 +0000, persistedDate: 2019-01-14 23:32:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5405, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 17 minute: 28 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 23:24:36 +0000, persistedDate: 2019-01-14 23:28:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5403, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 17 minute: 24 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 23:20:32 +0000, persistedDate: 2019-01-14 23:24:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5401, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 17 minute: 20 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 23:16:30 +0000, persistedDate: 2019-01-14 23:20:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5398, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 17 minute: 16 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 23:12:27 +0000, persistedDate: 2019-01-14 23:16:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5397, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 17 minute: 12 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 23:08:23 +0000, persistedDate: 2019-01-14 23:12:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5394, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 17 minute: 8 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 23:04:16 +0000, persistedDate: 2019-01-14 23:08:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5392, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 17 minute: 4 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 23:00:11 +0000, persistedDate: 2019-01-14 23:04:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5391, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 17 minute: 0 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 22:52:06 +0000, persistedDate: 2019-01-14 22:56:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5389, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 16 minute: 52 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 22:47:51 +0000, persistedDate: 2019-01-14 22:52:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5387, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 16 minute: 47 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 22:39:54 +0000, persistedDate: 2019-01-14 22:44:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5384, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 16 minute: 39 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 22:35:50 +0000, persistedDate: 2019-01-14 22:40:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5382, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 16 minute: 35 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 22:27:44 +0000, persistedDate: 2019-01-14 22:31:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5380, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 16 minute: 27 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 22:23:40 +0000, persistedDate: 2019-01-14 22:27:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5379, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 16 minute: 23 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 22:19:36 +0000, persistedDate: 2019-01-14 22:23:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5377, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 16 minute: 19 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 22:15:31 +0000, persistedDate: 2019-01-14 22:19:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5374, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 16 minute: 15 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 22:07:28 +0000, persistedDate: 2019-01-14 22:11:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5372, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 16 minute: 7 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 22:03:23 +0000, persistedDate: 2019-01-14 22:07:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5371, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 16 minute: 3 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 21:59:19 +0000, persistedDate: 2019-01-14 22:03:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5368, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 15 minute: 59 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 21:55:14 +0000, persistedDate: 2019-01-14 21:59:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5366, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 15 minute: 55 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 21:51:14 +0000, persistedDate: 2019-01-14 21:55:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5365, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 15 minute: 51 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 21:47:09 +0000, persistedDate: 2019-01-14 21:51:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5363, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 15 minute: 47 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 21:43:02 +0000, persistedDate: 2019-01-14 21:47:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5360, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 15 minute: 43 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 21:39:12 +0000, persistedDate: 2019-01-14 21:43:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5359, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 15 minute: 39 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 21:34:57 +0000, persistedDate: 2019-01-14 21:39:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5357, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 15 minute: 34 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 21:30:51 +0000, persistedDate: 2019-01-14 21:35:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5355, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 15 minute: 30 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 21:26:48 +0000, persistedDate: 2019-01-14 21:31:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5352, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 15 minute: 26 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 21:22:45 +0000, persistedDate: 2019-01-14 21:26:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5351, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 15 minute: 22 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 21:18:42 +0000, persistedDate: 2019-01-14 21:22:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5349, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 15 minute: 18 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 21:14:35 +0000, persistedDate: 2019-01-14 21:18:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5346, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 15 minute: 14 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 21:06:36 +0000, persistedDate: 2019-01-14 21:07:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5343, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 15 minute: 6 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 20:58:22 +0000, persistedDate: 2019-01-14 21:02:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5341, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 14 minute: 58 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 20:54:16 +0000, persistedDate: 2019-01-14 20:58:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5339, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 14 minute: 54 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 20:33:58 +0000, persistedDate: 2019-01-14 20:38:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5337, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 14 minute: 33 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 20:25:53 +0000, persistedDate: 2019-01-14 20:30:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5335, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 14 minute: 25 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 20:21:49 +0000, persistedDate: 2019-01-14 20:26:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5332, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 14 minute: 21 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 20:18:08 +0000, persistedDate: 2019-01-14 20:18:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5329, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 14 minute: 18 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 20:13:39 +0000, persistedDate: 2019-01-14 20:18:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5328, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 14 minute: 13 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 20:05:32 +0000, persistedDate: 2019-01-14 20:09:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5327, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 14 minute: 5 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 19:57:27 +0000, persistedDate: 2019-01-14 20:01:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5324, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 13 minute: 57 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 19:53:23 +0000, persistedDate: 2019-01-14 19:57:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5323, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 13 minute: 53 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 19:49:16 +0000, persistedDate: 2019-01-14 19:53:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5321, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 13 minute: 49 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 19:40:17 +0000, persistedDate: 2019-01-14 19:49:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5319, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 13 minute: 40 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 19:36:07 +0000, persistedDate: 2019-01-14 19:40:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5317, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 13 minute: 36 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 19:27:58 +0000, persistedDate: 2019-01-14 19:36:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5314, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 13 minute: 27 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 19:23:54 +0000, persistedDate: 2019-01-14 19:28:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5312, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 13 minute: 23 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 19:19:50 +0000, persistedDate: 2019-01-14 19:24:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5310, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 13 minute: 19 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 19:15:46 +0000, persistedDate: 2019-01-14 19:20:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5309, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 13 minute: 15 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 19:11:44 +0000, persistedDate: 2019-01-14 19:15:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5307, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 13 minute: 11 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 19:07:40 +0000, persistedDate: 2019-01-14 19:11:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5305, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 13 minute: 7 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 19:02:43 +0000, persistedDate: 2019-01-14 19:07:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5303, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 13 minute: 2 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 18:42:19 +0000, persistedDate: 2019-01-14 18:46:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5301, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 12 minute: 42 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 17:27:09 +0000, persistedDate: 2019-01-14 18:42:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5297, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 11 minute: 27 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 17:10:52 +0000, persistedDate: 2019-01-14 17:14:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5295, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 11 minute: 10 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 17:06:48 +0000, persistedDate: 2019-01-14 17:11:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5293, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 11 minute: 6 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 17:02:46 +0000, persistedDate: 2019-01-14 17:06:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5290, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 11 minute: 2 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 16:58:41 +0000, persistedDate: 2019-01-14 17:02:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5289, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 10 minute: 58 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 16:54:36 +0000, persistedDate: 2019-01-14 16:58:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5287, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 10 minute: 54 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 16:50:32 +0000, persistedDate: 2019-01-14 16:54:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5284, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 10 minute: 50 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 16:38:24 +0000, persistedDate: 2019-01-14 16:42:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5283, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 10 minute: 38 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 16:34:18 +0000, persistedDate: 2019-01-14 16:38:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5281, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 10 minute: 34 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 16:30:14 +0000, persistedDate: 2019-01-14 16:34:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5278, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 10 minute: 30 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 16:26:12 +0000, persistedDate: 2019-01-14 16:30:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5277, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 10 minute: 26 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 16:22:08 +0000, persistedDate: 2019-01-14 16:26:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5275, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 10 minute: 22 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 16:18:04 +0000, persistedDate: 2019-01-14 16:22:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5273, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 10 minute: 18 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 16:14:00 +0000, persistedDate: 2019-01-14 16:18:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5270, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 10 minute: 14 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 16:10:02 +0000, persistedDate: 2019-01-14 16:14:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5268, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 10 minute: 10 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 16:09:59 +0000, persistedDate: 2019-01-14 16:14:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5267, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 10 minute: 9 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 16:05:54 +0000, persistedDate: 2019-01-14 16:10:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5264, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 10 minute: 5 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 16:01:50 +0000, persistedDate: 2019-01-14 16:06:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5262, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 10 minute: 1 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 15:57:47 +0000, persistedDate: 2019-01-14 16:02:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5260, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 9 minute: 57 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 15:53:43 +0000, persistedDate: 2019-01-14 15:57:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5259, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 9 minute: 53 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 15:49:38 +0000, persistedDate: 2019-01-14 15:53:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5256, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 9 minute: 49 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 15:41:30 +0000, persistedDate: 2019-01-14 15:49:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5254, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 9 minute: 41 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 15:37:28 +0000, persistedDate: 2019-01-14 15:41:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5253, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 9 minute: 37 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 15:33:24 +0000, persistedDate: 2019-01-14 15:37:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5251, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 9 minute: 33 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 15:29:18 +0000, persistedDate: 2019-01-14 15:33:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5248, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 9 minute: 29 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 15:21:12 +0000, persistedDate: 2019-01-14 15:29:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5247, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 9 minute: 21 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 15:16:57 +0000, persistedDate: 2019-01-14 15:21:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5245, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 9 minute: 16 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 14:57:52 +0000, persistedDate: 2019-01-14 15:17:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5243, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 8 minute: 57 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 14:53:46 +0000, persistedDate: 2019-01-14 14:58:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5240, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 8 minute: 53 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 14:49:42 +0000, persistedDate: 2019-01-14 14:53:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5238, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 8 minute: 49 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 14:45:40 +0000, persistedDate: 2019-01-14 14:49:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5237, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 8 minute: 45 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 14:41:36 +0000, persistedDate: 2019-01-14 14:45:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5235, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 8 minute: 41 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 14:37:34 +0000, persistedDate: 2019-01-14 14:41:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5233, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 8 minute: 37 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 14:33:31 +0000, persistedDate: 2019-01-14 14:37:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5230, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 8 minute: 33 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 14:29:27 +0000, persistedDate: 2019-01-14 14:33:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5229, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 8 minute: 29 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 14:25:22 +0000, persistedDate: 2019-01-14 14:29:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5226, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 8 minute: 25 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 14:21:18 +0000, persistedDate: 2019-01-14 14:25:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5224, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 8 minute: 21 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 14:13:23 +0000, persistedDate: 2019-01-14 14:21:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5223, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 8 minute: 13 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 13:26:42 +0000, persistedDate: 2019-01-14 14:13:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5218, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 7 minute: 26 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 13:21:32 +0000, persistedDate: 2019-01-14 14:13:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5220, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 7 minute: 21 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 13:16:27 +0000, persistedDate: 2019-01-14 13:21:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5217, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 7 minute: 16 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 13:12:22 +0000, persistedDate: 2019-01-14 13:16:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5215, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 7 minute: 12 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 13:08:01 +0000, persistedDate: 2019-01-14 13:08:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5213, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 7 minute: 8 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 13:03:25 +0000, persistedDate: 2019-01-14 13:03:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5209, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 7 minute: 3 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 12:59:05 +0000, persistedDate: 2019-01-14 13:03:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5208, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 6 minute: 59 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 12:55:01 +0000, persistedDate: 2019-01-14 12:59:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5207, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 6 minute: 55 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 12:38:48 +0000, persistedDate: 2019-01-14 12:43:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5204, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 6 minute: 38 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 12:27:57 +0000, persistedDate: 2019-01-14 12:28:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5201, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 6 minute: 27 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 12:04:24 +0000, persistedDate: 2019-01-14 12:12:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5199, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 6 minute: 4 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 12:00:00 +0000, persistedDate: 2019-01-14 12:04:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5197, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 6 minute: 0 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 11:41:57 +0000, persistedDate: 2019-01-14 11:46:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5195, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 5 minute: 41 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 11:37:41 +0000, persistedDate: 2019-01-14 11:42:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5192, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 5 minute: 37 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 11:32:46 +0000, persistedDate: 2019-01-14 11:37:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5190, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 5 minute: 32 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 11:27:50 +0000, persistedDate: 2019-01-14 11:32:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5188, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 5 minute: 27 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 11:23:37 +0000, persistedDate: 2019-01-14 11:28:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5186, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 5 minute: 23 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 11:19:33 +0000, persistedDate: 2019-01-14 11:23:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5185, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 5 minute: 19 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 11:12:00 +0000, persistedDate: 2019-01-14 11:15:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5182, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 5 minute: 12 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 11:07:26 +0000, persistedDate: 2019-01-14 11:11:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5180, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 5 minute: 7 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 11:03:23 +0000, persistedDate: 2019-01-14 11:07:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5178, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 5 minute: 3 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 10:59:16 +0000, persistedDate: 2019-01-14 11:03:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5177, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 4 minute: 59 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 10:51:08 +0000, persistedDate: 2019-01-14 10:55:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5175, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 4 minute: 51 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 10:47:08 +0000, persistedDate: 2019-01-14 10:51:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5173, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 4 minute: 47 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 10:42:04 +0000, persistedDate: 2019-01-14 10:47:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5171, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 4 minute: 42 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 10:37:57 +0000, persistedDate: 2019-01-14 10:42:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5168, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 4 minute: 37 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 10:33:53 +0000, persistedDate: 2019-01-14 10:38:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5167, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 4 minute: 33 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 10:15:38 +0000, persistedDate: 2019-01-14 10:19:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5164, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 4 minute: 15 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 10:10:41 +0000, persistedDate: 2019-01-14 10:15:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5163, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 4 minute: 10 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 10:06:30 +0000, persistedDate: 2019-01-14 10:10:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5160, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 4 minute: 6 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 09:56:24 +0000, persistedDate: 2019-01-14 10:01:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5158, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 3 minute: 56 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 09:52:04 +0000, persistedDate: 2019-01-14 09:52:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5154, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 3 minute: 52 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 09:47:13 +0000, persistedDate: 2019-01-14 09:52:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5156, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 3 minute: 47 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 09:43:26 +0000, persistedDate: 2019-01-14 09:43:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5150, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 3 minute: 43 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 09:39:04 +0000, persistedDate: 2019-01-14 09:43:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5153, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 3 minute: 39 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 09:35:00 +0000, persistedDate: 2019-01-14 09:39:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5148, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 3 minute: 35 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 09:26:54 +0000, persistedDate: 2019-01-14 09:31:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5147, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 3 minute: 26 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 09:21:57 +0000, persistedDate: 2019-01-14 09:27:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5144, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 3 minute: 21 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 09:09:37 +0000, persistedDate: 2019-01-14 09:13:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5142, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 3 minute: 9 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 09:05:33 +0000, persistedDate: 2019-01-14 09:09:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5141, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 3 minute: 5 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 09:01:47 +0000, persistedDate: 2019-01-14 09:02:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5136, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 3 minute: 1 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 08:57:30 +0000, persistedDate: 2019-01-14 09:02:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5137, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 2 minute: 57 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 08:53:24 +0000, persistedDate: 2019-01-14 08:57:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5135, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 2 minute: 53 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 08:49:18 +0000, persistedDate: 2019-01-14 08:53:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5132, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 2 minute: 49 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 08:45:13 +0000, persistedDate: 2019-01-14 08:49:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5131, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 2 minute: 45 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 08:41:26 +0000, persistedDate: 2019-01-14 08:41:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5129, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 2 minute: 41 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 08:37:08 +0000, persistedDate: 2019-01-14 08:41:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5127, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 2 minute: 37 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 08:33:01 +0000, persistedDate: 2019-01-14 08:37:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5125, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 2 minute: 33 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 08:29:00 +0000, persistedDate: 2019-01-14 08:33:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5123, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 2 minute: 29 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 08:24:58 +0000, persistedDate: 2019-01-14 08:29:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5121, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 2 minute: 24 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 08:20:51 +0000, persistedDate: 2019-01-14 08:25:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5118, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 2 minute: 20 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 08:12:35 +0000, persistedDate: 2019-01-14 08:17:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5117, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 2 minute: 12 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 08:07:48 +0000, persistedDate: 2019-01-14 08:12:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5115, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 2 minute: 7 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 08:03:35 +0000, persistedDate: 2019-01-14 08:07:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5113, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 2 minute: 3 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 07:59:32 +0000, persistedDate: 2019-01-14 08:03:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5110, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 1 minute: 59 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 07:55:30 +0000, persistedDate: 2019-01-14 07:59:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5108, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 14 hour: 1 minute: 55 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 03:30:32 +0000, persistedDate: 2019-01-14 03:34:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5107, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 21 minute: 30 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 03:26:30 +0000, persistedDate: 2019-01-14 03:30:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5105, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 21 minute: 26 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 03:22:26 +0000, persistedDate: 2019-01-14 03:26:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5103, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 21 minute: 22 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 03:17:21 +0000, persistedDate: 2019-01-14 03:22:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5100, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 21 minute: 17 second: 21 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-14 02:49:53 +0000, persistedDate: 2019-01-14 02:54:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5096, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 20 minute: 49 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 21:42:32 +0000, persistedDate: 2019-01-13 23:54:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5044, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 15 minute: 42 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 21:36:26 +0000, persistedDate: 2019-01-13 21:42:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5040, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 15 minute: 36 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 21:27:16 +0000, persistedDate: 2019-01-13 21:36:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5038, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 15 minute: 27 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 21:23:01 +0000, persistedDate: 2019-01-13 21:27:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5037, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 15 minute: 23 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 21:22:59 +0000, persistedDate: 2019-01-13 21:27:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5034, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 15 minute: 22 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 19:38:50 +0000, persistedDate: 2019-01-13 19:57:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5032, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 13 minute: 38 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 19:21:30 +0000, persistedDate: 2019-01-13 19:38:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5031, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 13 minute: 21 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 19:16:28 +0000, persistedDate: 2019-01-13 19:21:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5029, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 13 minute: 16 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 18:53:53 +0000, persistedDate: 2019-01-13 18:58:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5026, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 12 minute: 53 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 18:09:22 +0000, persistedDate: 2019-01-13 18:54:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5022, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 12 minute: 9 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 18:03:20 +0000, persistedDate: 2019-01-13 18:54:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5021, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 12 minute: 3 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 17:52:29 +0000, persistedDate: 2019-01-13 18:54:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5019, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 11 minute: 52 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 17:44:07 +0000, persistedDate: 2019-01-13 17:48:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5017, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 11 minute: 44 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 17:40:27 +0000, persistedDate: 2019-01-13 17:44:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5012, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 11 minute: 40 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 17:34:54 +0000, persistedDate: 2019-01-13 17:44:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5013, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 11 minute: 34 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 17:30:51 +0000, persistedDate: 2019-01-13 17:31:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5011, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 11 minute: 30 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 17:02:54 +0000, persistedDate: 2019-01-13 17:03:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5005, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 11 minute: 2 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 16:57:28 +0000, persistedDate: 2019-01-13 17:03:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5006, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 10 minute: 57 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 16:52:33 +0000, persistedDate: 2019-01-13 17:03:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5009, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 10 minute: 52 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 16:45:54 +0000, persistedDate: 2019-01-13 16:52:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5002, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 10 minute: 45 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 16:45:51 +0000, persistedDate: 2019-01-13 16:52:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p5001, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 10 minute: 45 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 16:36:06 +0000, persistedDate: 2019-01-13 16:40:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4998, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 10 minute: 36 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 16:32:07 +0000, persistedDate: 2019-01-13 16:36:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4995, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 10 minute: 32 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 16:28:16 +0000, persistedDate: 2019-01-13 16:32:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4994, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 10 minute: 28 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 16:22:55 +0000, persistedDate: 2019-01-13 16:28:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4992, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 10 minute: 22 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 16:18:46 +0000, persistedDate: 2019-01-13 16:23:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4989, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 10 minute: 18 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 16:14:42 +0000, persistedDate: 2019-01-13 16:18:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4988, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 10 minute: 14 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 16:10:38 +0000, persistedDate: 2019-01-13 16:14:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4985, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 10 minute: 10 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 16:06:36 +0000, persistedDate: 2019-01-13 16:10:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4984, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 10 minute: 6 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 16:02:33 +0000, persistedDate: 2019-01-13 16:06:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4982, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 10 minute: 2 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 15:54:27 +0000, persistedDate: 2019-01-13 15:58:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4979, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 9 minute: 54 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 15:50:23 +0000, persistedDate: 2019-01-13 15:54:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4978, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 9 minute: 50 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 15:46:18 +0000, persistedDate: 2019-01-13 15:50:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4976, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 9 minute: 46 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 15:41:24 +0000, persistedDate: 2019-01-13 15:46:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4973, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 9 minute: 41 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 15:36:59 +0000, persistedDate: 2019-01-13 15:41:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4972, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 9 minute: 36 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 15:33:26 +0000, persistedDate: 2019-01-13 15:33:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4970, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 9 minute: 33 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 14:47:27 +0000, persistedDate: 2019-01-13 14:51:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4967, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 8 minute: 47 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 14:43:23 +0000, persistedDate: 2019-01-13 14:47:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4966, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 8 minute: 43 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 14:31:10 +0000, persistedDate: 2019-01-13 14:35:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4964, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 8 minute: 31 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 14:07:50 +0000, persistedDate: 2019-01-13 14:13:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4962, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 8 minute: 7 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 14:03:44 +0000, persistedDate: 2019-01-13 14:08:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4960, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 8 minute: 3 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 13:59:43 +0000, persistedDate: 2019-01-13 14:03:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4958, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 7 minute: 59 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 13:55:39 +0000, persistedDate: 2019-01-13 13:59:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4955, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 7 minute: 55 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 13:51:36 +0000, persistedDate: 2019-01-13 13:55:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4953, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 7 minute: 51 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 13:47:31 +0000, persistedDate: 2019-01-13 13:51:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4952, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 7 minute: 47 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 13:43:31 +0000, persistedDate: 2019-01-13 13:47:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4950, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 7 minute: 43 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 13:39:26 +0000, persistedDate: 2019-01-13 13:43:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4948, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 7 minute: 39 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 13:35:20 +0000, persistedDate: 2019-01-13 13:39:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4946, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 7 minute: 35 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 13:31:17 +0000, persistedDate: 2019-01-13 13:35:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4944, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 7 minute: 31 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 13:27:03 +0000, persistedDate: 2019-01-13 13:31:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4942, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 7 minute: 27 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 13:23:28 +0000, persistedDate: 2019-01-13 13:23:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4938, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 7 minute: 23 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 13:19:04 +0000, persistedDate: 2019-01-13 13:23:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4940, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 7 minute: 19 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 13:14:49 +0000, persistedDate: 2019-01-13 13:19:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4936, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 7 minute: 14 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 13:10:57 +0000, persistedDate: 2019-01-13 13:14:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4934, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 7 minute: 10 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 13:06:55 +0000, persistedDate: 2019-01-13 13:11:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4932, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 7 minute: 6 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 13:02:48 +0000, persistedDate: 2019-01-13 13:07:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4930, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 7 minute: 2 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 12:57:56 +0000, persistedDate: 2019-01-13 13:02:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4928, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 6 minute: 57 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 12:53:40 +0000, persistedDate: 2019-01-13 12:58:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4926, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 6 minute: 53 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 12:49:36 +0000, persistedDate: 2019-01-13 12:53:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4923, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 6 minute: 49 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 12:45:34 +0000, persistedDate: 2019-01-13 12:49:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4921, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 6 minute: 45 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 12:41:31 +0000, persistedDate: 2019-01-13 12:45:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4920, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 6 minute: 41 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 12:36:29 +0000, persistedDate: 2019-01-13 12:41:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4918, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 6 minute: 36 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 12:32:25 +0000, persistedDate: 2019-01-13 12:36:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4916, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 6 minute: 32 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 12:28:18 +0000, persistedDate: 2019-01-13 12:32:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4913, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 6 minute: 28 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 12:24:14 +0000, persistedDate: 2019-01-13 12:28:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4912, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 6 minute: 24 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 12:20:10 +0000, persistedDate: 2019-01-13 12:24:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4909, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 6 minute: 20 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 12:16:07 +0000, persistedDate: 2019-01-13 12:20:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4908, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 6 minute: 16 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 12:12:20 +0000, persistedDate: 2019-01-13 12:16:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4906, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 6 minute: 12 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 12:08:00 +0000, persistedDate: 2019-01-13 12:12:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4904, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 6 minute: 8 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 12:03:55 +0000, persistedDate: 2019-01-13 12:08:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4901, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 6 minute: 3 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 11:59:54 +0000, persistedDate: 2019-01-13 12:04:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4900, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 5 minute: 59 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 11:55:39 +0000, persistedDate: 2019-01-13 12:00:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4898, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 5 minute: 55 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 11:50:51 +0000, persistedDate: 2019-01-13 11:55:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4895, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 5 minute: 50 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 11:46:40 +0000, persistedDate: 2019-01-13 11:51:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4894, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 5 minute: 46 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 11:41:39 +0000, persistedDate: 2019-01-13 11:46:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4892, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 5 minute: 41 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 11:37:03 +0000, persistedDate: 2019-01-13 11:41:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4890, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 5 minute: 37 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 11:27:27 +0000, persistedDate: 2019-01-13 11:31:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4888, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 5 minute: 27 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 11:23:19 +0000, persistedDate: 2019-01-13 11:27:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4886, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 5 minute: 23 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 11:19:14 +0000, persistedDate: 2019-01-13 11:23:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4884, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 5 minute: 19 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 11:15:12 +0000, persistedDate: 2019-01-13 11:19:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4882, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 5 minute: 15 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 11:11:08 +0000, persistedDate: 2019-01-13 11:15:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4879, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 5 minute: 11 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 11:02:00 +0000, persistedDate: 2019-01-13 11:06:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4877, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 5 minute: 2 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 10:56:58 +0000, persistedDate: 2019-01-13 11:02:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4876, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 4 minute: 56 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 10:51:59 +0000, persistedDate: 2019-01-13 10:57:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4874, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 4 minute: 51 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 10:43:43 +0000, persistedDate: 2019-01-13 10:47:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4872, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 4 minute: 43 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 10:39:41 +0000, persistedDate: 2019-01-13 10:43:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4869, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 4 minute: 39 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 10:35:37 +0000, persistedDate: 2019-01-13 10:39:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4868, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 4 minute: 35 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 10:31:33 +0000, persistedDate: 2019-01-13 10:35:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4866, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 4 minute: 31 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 10:21:27 +0000, persistedDate: 2019-01-13 10:26:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4864, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 4 minute: 21 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 10:17:22 +0000, persistedDate: 2019-01-13 10:21:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4862, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 4 minute: 17 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 10:13:16 +0000, persistedDate: 2019-01-13 10:17:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4860, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 4 minute: 13 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 10:09:12 +0000, persistedDate: 2019-01-13 10:13:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4858, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 4 minute: 9 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 10:05:08 +0000, persistedDate: 2019-01-13 10:09:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4856, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 4 minute: 5 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 10:01:04 +0000, persistedDate: 2019-01-13 10:05:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4853, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 4 minute: 1 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 09:57:02 +0000, persistedDate: 2019-01-13 10:01:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4851, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 3 minute: 57 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 09:52:00 +0000, persistedDate: 2019-01-13 09:57:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4850, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 3 minute: 52 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 09:47:52 +0000, persistedDate: 2019-01-13 09:52:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4848, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 3 minute: 47 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 09:42:56 +0000, persistedDate: 2019-01-13 09:48:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4846, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 3 minute: 42 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 09:38:44 +0000, persistedDate: 2019-01-13 09:43:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4844, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 3 minute: 38 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 09:34:40 +0000, persistedDate: 2019-01-13 09:38:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4842, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 3 minute: 34 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 09:30:36 +0000, persistedDate: 2019-01-13 09:34:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4839, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 3 minute: 30 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 09:26:34 +0000, persistedDate: 2019-01-13 09:30:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4838, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 3 minute: 26 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 09:22:30 +0000, persistedDate: 2019-01-13 09:26:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4835, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 3 minute: 22 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 09:17:29 +0000, persistedDate: 2019-01-13 09:22:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4834, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 3 minute: 17 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 09:13:24 +0000, persistedDate: 2019-01-13 09:17:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4832, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 3 minute: 13 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 09:09:18 +0000, persistedDate: 2019-01-13 09:13:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4829, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 3 minute: 9 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 09:05:14 +0000, persistedDate: 2019-01-13 09:09:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4828, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 3 minute: 5 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 09:01:10 +0000, persistedDate: 2019-01-13 09:05:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4825, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 3 minute: 1 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 08:57:08 +0000, persistedDate: 2019-01-13 09:01:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4823, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 2 minute: 57 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 08:53:02 +0000, persistedDate: 2019-01-13 08:57:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4821, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 2 minute: 53 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 08:48:58 +0000, persistedDate: 2019-01-13 08:53:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4820, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 2 minute: 48 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 08:44:56 +0000, persistedDate: 2019-01-13 08:49:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4818, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 2 minute: 44 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 08:40:53 +0000, persistedDate: 2019-01-13 08:45:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4816, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 2 minute: 40 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 08:36:48 +0000, persistedDate: 2019-01-13 08:41:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4814, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 2 minute: 36 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 08:32:44 +0000, persistedDate: 2019-01-13 08:36:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4812, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 2 minute: 32 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 08:27:47 +0000, persistedDate: 2019-01-13 08:32:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4810, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 2 minute: 27 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 08:23:36 +0000, persistedDate: 2019-01-13 08:27:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4808, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 2 minute: 23 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 08:19:32 +0000, persistedDate: 2019-01-13 08:23:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4806, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 2 minute: 19 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 08:14:31 +0000, persistedDate: 2019-01-13 08:19:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4804, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 2 minute: 14 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 08:09:45 +0000, persistedDate: 2019-01-13 08:14:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4799, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 2 minute: 9 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 08:09:43 +0000, persistedDate: 2019-01-13 08:14:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4801, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 2 minute: 9 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 08:04:18 +0000, persistedDate: 2019-01-13 08:09:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4797, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 2 minute: 4 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 08:00:14 +0000, persistedDate: 2019-01-13 08:04:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4795, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 2 minute: 0 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 07:52:08 +0000, persistedDate: 2019-01-13 07:56:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4794, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 1 minute: 52 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 07:47:52 +0000, persistedDate: 2019-01-13 07:52:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4791, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 1 minute: 47 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 07:42:57 +0000, persistedDate: 2019-01-13 07:48:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4790, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 1 minute: 42 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 07:38:54 +0000, persistedDate: 2019-01-13 07:43:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4788, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 1 minute: 38 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 07:34:52 +0000, persistedDate: 2019-01-13 07:39:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4786, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 1 minute: 34 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 07:30:47 +0000, persistedDate: 2019-01-13 07:35:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4783, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 1 minute: 30 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 07:26:44 +0000, persistedDate: 2019-01-13 07:30:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4782, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 1 minute: 26 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 07:22:40 +0000, persistedDate: 2019-01-13 07:26:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4780, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 1 minute: 22 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 07:18:35 +0000, persistedDate: 2019-01-13 07:22:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4778, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 1 minute: 18 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 07:14:31 +0000, persistedDate: 2019-01-13 07:18:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4775, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 1 minute: 14 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 07:09:30 +0000, persistedDate: 2019-01-13 07:14:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4773, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 1 minute: 9 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 07:05:41 +0000, persistedDate: 2019-01-13 07:09:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4771, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 1 minute: 5 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 07:00:25 +0000, persistedDate: 2019-01-13 07:05:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4770, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 1 minute: 0 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 07:00:22 +0000, persistedDate: 2019-01-13 07:05:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4769, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 1 minute: 0 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 06:56:17 +0000, persistedDate: 2019-01-13 07:00:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4766, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 0 minute: 56 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 06:51:14 +0000, persistedDate: 2019-01-13 06:56:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4764, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 0 minute: 51 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 06:32:55 +0000, persistedDate: 2019-01-13 06:51:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4761, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 0 minute: 32 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 06:24:48 +0000, persistedDate: 2019-01-13 06:33:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4759, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 0 minute: 24 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 06:16:41 +0000, persistedDate: 2019-01-13 06:20:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4758, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 13 hour: 0 minute: 16 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 05:53:24 +0000, persistedDate: 2019-01-13 05:58:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4756, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 23 minute: 53 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 05:49:19 +0000, persistedDate: 2019-01-13 05:53:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4754, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 23 minute: 49 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 05:40:33 +0000, persistedDate: 2019-01-13 05:45:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4752, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 23 minute: 40 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 05:24:59 +0000, persistedDate: 2019-01-13 05:30:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4749, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 23 minute: 24 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 04:58:22 +0000, persistedDate: 2019-01-13 05:25:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4748, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 22 minute: 58 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 04:38:28 +0000, persistedDate: 2019-01-13 04:48:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4743, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 22 minute: 38 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 04:38:25 +0000, persistedDate: 2019-01-13 04:48:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4746, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 22 minute: 38 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 04:11:50 +0000, persistedDate: 2019-01-13 04:26:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4741, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 22 minute: 11 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 03:46:28 +0000, persistedDate: 2019-01-13 03:50:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4740, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 21 minute: 46 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 03:27:08 +0000, persistedDate: 2019-01-13 03:31:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4734, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 21 minute: 27 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 03:18:20 +0000, persistedDate: 2019-01-13 03:23:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4729, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 21 minute: 18 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 03:18:18 +0000, persistedDate: 2019-01-13 03:23:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4730, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 21 minute: 18 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 03:13:14 +0000, persistedDate: 2019-01-13 03:18:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4726, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 21 minute: 13 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 03:13:12 +0000, persistedDate: 2019-01-13 03:18:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4725, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 21 minute: 13 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 03:08:40 +0000, persistedDate: 2019-01-13 03:13:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4722, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 21 minute: 8 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 03:03:48 +0000, persistedDate: 2019-01-13 03:08:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4720, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 21 minute: 3 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 02:58:48 +0000, persistedDate: 2019-01-13 03:03:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4718, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 20 minute: 58 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 02:54:30 +0000, persistedDate: 2019-01-13 02:58:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4715, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 20 minute: 54 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 02:49:33 +0000, persistedDate: 2019-01-13 02:54:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4713, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 20 minute: 49 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 02:40:28 +0000, persistedDate: 2019-01-13 02:49:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4711, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 20 minute: 40 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 02:35:24 +0000, persistedDate: 2019-01-13 02:40:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4710, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 20 minute: 35 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 02:31:16 +0000, persistedDate: 2019-01-13 02:35:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4708, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 20 minute: 31 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 02:10:59 +0000, persistedDate: 2019-01-13 02:31:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4706, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 20 minute: 10 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 02:06:53 +0000, persistedDate: 2019-01-13 02:11:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4703, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 20 minute: 6 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 02:02:49 +0000, persistedDate: 2019-01-13 02:07:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4701, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 20 minute: 2 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 01:58:45 +0000, persistedDate: 2019-01-13 02:02:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4699, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 19 minute: 58 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 01:46:27 +0000, persistedDate: 2019-01-13 01:58:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4697, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 19 minute: 46 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 00:41:42 +0000, persistedDate: 2019-01-13 00:45:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4696, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 18 minute: 41 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 00:18:30 +0000, persistedDate: 2019-01-13 00:22:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4692, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 18 minute: 18 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-13 00:10:04 +0000, persistedDate: 2019-01-13 00:14:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4690, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 18 minute: 10 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 23:57:13 +0000, persistedDate: 2019-01-13 00:10:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4688, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 17 minute: 57 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 23:52:02 +0000, persistedDate: 2019-01-12 23:57:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4686, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 17 minute: 52 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 23:32:20 +0000, persistedDate: 2019-01-12 23:37:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4679, raw: Optional(10 bytes), title: Optional("PrimePumpEvent(length: 10, rawData: 10 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 17 minute: 32 second: 20 isLeapMonth: false , amount: 0.8, primeType: \"fixed\", programmedAmount: 0.8)"), type: Optional(LoopKit.PumpEventType.prime)) -* PersistedPumpEvent(date: 2019-01-12 23:30:44 +0000, persistedDate: 2019-01-12 23:37:10 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.resume, startDate: 2019-01-12 23:30:44 +0000, endDate: 2019-01-12 23:30:44 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("03000000c12c5e310c13"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4683, raw: Optional(10 bytes), title: Optional("PrimePumpEvent(length: 10, rawData: 10 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 17 minute: 30 second: 44 isLeapMonth: false , amount: 19.3, primeType: \"manual\", programmedAmount: 0.0)"), type: Optional(LoopKit.PumpEventType.prime)) -* PersistedPumpEvent(date: 2019-01-12 23:29:43 +0000, persistedDate: 2019-01-12 23:37:10 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-12 23:29:43 +0000, endDate: 2019-01-12 23:29:43 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("21002b5d110c13"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4680, raw: Optional(7 bytes), title: Optional("RewindPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 17 minute: 29 second: 43 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.rewind)) -* PersistedPumpEvent(date: 2019-01-12 23:27:36 +0000, persistedDate: 2019-01-12 23:37:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4682, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 17 minute: 27 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 22:27:14 +0000, persistedDate: 2019-01-12 23:27:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4677, raw: Optional(7 bytes), title: Optional("JournalEntryPumpLowReservoirPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 16 minute: 27 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 22:00:32 +0000, persistedDate: 2019-01-12 23:27:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4675, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 16 minute: 0 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 21:50:24 +0000, persistedDate: 2019-01-12 22:00:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4673, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 15 minute: 50 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 21:32:01 +0000, persistedDate: 2019-01-12 21:50:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4671, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 15 minute: 32 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 21:27:58 +0000, persistedDate: 2019-01-12 21:32:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4669, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 15 minute: 27 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 21:23:50 +0000, persistedDate: 2019-01-12 21:28:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4666, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 15 minute: 23 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 21:03:34 +0000, persistedDate: 2019-01-12 21:08:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4665, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 15 minute: 3 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 20:24:09 +0000, persistedDate: 2019-01-12 21:03:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4663, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 14 minute: 24 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 19:29:14 +0000, persistedDate: 2019-01-12 19:34:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4659, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 12 hour: 13 minute: 29 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 04:47:44 +0000, persistedDate: 2019-01-12 19:29:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4654, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 22 minute: 47 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 04:36:06 +0000, persistedDate: 2019-01-12 19:29:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4657, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 22 minute: 36 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 04:31:50 +0000, persistedDate: 2019-01-12 04:36:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4651, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 22 minute: 31 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 04:27:46 +0000, persistedDate: 2019-01-12 04:31:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4649, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 22 minute: 27 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 04:04:34 +0000, persistedDate: 2019-01-12 04:22:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4647, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 22 minute: 4 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 03:33:58 +0000, persistedDate: 2019-01-12 03:44:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4645, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 21 minute: 33 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 03:23:31 +0000, persistedDate: 2019-01-12 03:28:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4643, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 21 minute: 23 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 02:45:56 +0000, persistedDate: 2019-01-12 03:01:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4641, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 20 minute: 45 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 02:34:34 +0000, persistedDate: 2019-01-12 03:01:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4640, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 20 minute: 34 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 02:29:33 +0000, persistedDate: 2019-01-12 02:34:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4637, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 20 minute: 29 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 02:14:01 +0000, persistedDate: 2019-01-12 02:34:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4636, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 20 minute: 14 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 02:09:52 +0000, persistedDate: 2019-01-12 02:14:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4632, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 20 minute: 9 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 02:00:18 +0000, persistedDate: 2019-01-12 02:10:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4629, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 20 minute: 0 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 01:55:22 +0000, persistedDate: 2019-01-12 02:10:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4630, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 19 minute: 55 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 01:48:05 +0000, persistedDate: 2019-01-12 01:48:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4626, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 19 minute: 48 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 01:43:12 +0000, persistedDate: 2019-01-12 01:43:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4621, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 19 minute: 43 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 01:35:03 +0000, persistedDate: 2019-01-12 01:43:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4620, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 19 minute: 35 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 01:31:15 +0000, persistedDate: 2019-01-12 01:43:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4623, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 19 minute: 31 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 01:27:28 +0000, persistedDate: 2019-01-12 01:27:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4618, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 19 minute: 27 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 01:22:55 +0000, persistedDate: 2019-01-12 01:27:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4619, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 19 minute: 22 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 01:17:40 +0000, persistedDate: 2019-01-12 01:23:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4613, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 19 minute: 17 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 01:11:51 +0000, persistedDate: 2019-01-12 01:23:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4614, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 19 minute: 11 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 01:08:00 +0000, persistedDate: 2019-01-12 01:08:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4611, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 19 minute: 8 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 01:03:42 +0000, persistedDate: 2019-01-12 01:08:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4608, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 19 minute: 3 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 00:59:37 +0000, persistedDate: 2019-01-12 01:03:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4607, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 18 minute: 59 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 00:55:22 +0000, persistedDate: 2019-01-12 00:59:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4604, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 18 minute: 55 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 00:51:19 +0000, persistedDate: 2019-01-12 00:55:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4603, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 18 minute: 51 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 00:40:30 +0000, persistedDate: 2019-01-12 00:51:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4601, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 18 minute: 40 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 00:36:20 +0000, persistedDate: 2019-01-12 00:40:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4599, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 18 minute: 36 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 00:26:54 +0000, persistedDate: 2019-01-12 00:27:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4594, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 18 minute: 26 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 00:18:04 +0000, persistedDate: 2019-01-12 00:27:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4597, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 18 minute: 18 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 00:13:12 +0000, persistedDate: 2019-01-12 00:18:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4593, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 18 minute: 13 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 00:08:19 +0000, persistedDate: 2019-01-12 00:13:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4591, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 18 minute: 8 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-12 00:02:50 +0000, persistedDate: 2019-01-12 00:08:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4589, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 18 minute: 2 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 23:17:13 +0000, persistedDate: 2019-01-11 23:22:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4587, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 17 minute: 17 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 23:12:50 +0000, persistedDate: 2019-01-11 23:17:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4583, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 17 minute: 12 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 22:50:41 +0000, persistedDate: 2019-01-11 22:55:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4580, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 16 minute: 50 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 22:46:30 +0000, persistedDate: 2019-01-11 22:50:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4578, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 16 minute: 46 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 22:20:11 +0000, persistedDate: 2019-01-11 22:46:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4576, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 16 minute: 20 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 22:00:55 +0000, persistedDate: 2019-01-11 22:05:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4574, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 16 minute: 0 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 21:39:38 +0000, persistedDate: 2019-01-11 21:43:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4572, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 15 minute: 39 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 21:35:34 +0000, persistedDate: 2019-01-11 21:39:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4570, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 15 minute: 35 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 21:31:29 +0000, persistedDate: 2019-01-11 21:35:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4568, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 15 minute: 31 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 21:27:28 +0000, persistedDate: 2019-01-11 21:31:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4565, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 15 minute: 27 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 21:08:07 +0000, persistedDate: 2019-01-11 21:12:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4564, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 15 minute: 8 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 21:04:26 +0000, persistedDate: 2019-01-11 21:04:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4562, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 15 minute: 4 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 21:00:00 +0000, persistedDate: 2019-01-11 21:04:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4560, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 15 minute: 0 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 20:55:56 +0000, persistedDate: 2019-01-11 21:00:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4558, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 14 minute: 55 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 20:51:53 +0000, persistedDate: 2019-01-11 20:56:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4555, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 14 minute: 51 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 20:46:49 +0000, persistedDate: 2019-01-11 20:52:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4553, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 14 minute: 46 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 20:24:30 +0000, persistedDate: 2019-01-11 20:29:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4552, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 14 minute: 24 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 20:20:26 +0000, persistedDate: 2019-01-11 20:24:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4550, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 14 minute: 20 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 20:15:22 +0000, persistedDate: 2019-01-11 20:20:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4547, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 14 minute: 15 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 18:54:08 +0000, persistedDate: 2019-01-11 19:02:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4546, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 12 minute: 54 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 18:50:03 +0000, persistedDate: 2019-01-11 18:54:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4543, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 12 minute: 50 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 18:27:45 +0000, persistedDate: 2019-01-11 18:31:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4542, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 12 minute: 27 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 18:14:22 +0000, persistedDate: 2019-01-11 18:18:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4539, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 12 minute: 14 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 17:51:03 +0000, persistedDate: 2019-01-11 17:55:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4538, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 11 minute: 51 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 17:45:59 +0000, persistedDate: 2019-01-11 17:55:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4535, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 11 minute: 45 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 17:20:45 +0000, persistedDate: 2019-01-11 17:24:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4532, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 11 minute: 20 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 17:01:31 +0000, persistedDate: 2019-01-11 17:06:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4530, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 11 minute: 1 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 16:40:08 +0000, persistedDate: 2019-01-11 16:45:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4528, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 10 minute: 40 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 16:32:00 +0000, persistedDate: 2019-01-11 16:36:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4526, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 10 minute: 32 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 16:27:56 +0000, persistedDate: 2019-01-11 16:32:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4523, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 10 minute: 27 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 16:11:42 +0000, persistedDate: 2019-01-11 16:15:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4521, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 10 minute: 11 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 15:52:28 +0000, persistedDate: 2019-01-11 16:06:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4520, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 9 minute: 52 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 15:30:06 +0000, persistedDate: 2019-01-11 15:38:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4517, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 9 minute: 30 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 15:08:46 +0000, persistedDate: 2019-01-11 15:13:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4511, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 9 minute: 8 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 14:48:18 +0000, persistedDate: 2019-01-11 14:56:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4509, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 8 minute: 48 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 14:19:14 +0000, persistedDate: 2019-01-11 14:23:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4507, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 8 minute: 19 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:57:02 +0000, persistedDate: 2019-01-11 14:01:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4502, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 57 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:57:00 +0000, persistedDate: 2019-01-11 14:01:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4503, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 57 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:47:32 +0000, persistedDate: 2019-01-11 13:52:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4486, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 47 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:47:30 +0000, persistedDate: 2019-01-11 13:52:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4498, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 47 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:47:28 +0000, persistedDate: 2019-01-11 13:52:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4496, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 47 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:47:26 +0000, persistedDate: 2019-01-11 13:52:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4494, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 47 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:42:36 +0000, persistedDate: 2019-01-11 13:52:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4487, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 42 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:42:34 +0000, persistedDate: 2019-01-11 13:52:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4491, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 42 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:42:32 +0000, persistedDate: 2019-01-11 13:52:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4490, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 42 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:38:36 +0000, persistedDate: 2019-01-11 13:42:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4484, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 38 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:33:30 +0000, persistedDate: 2019-01-11 13:42:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4483, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 33 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:27:06 +0000, persistedDate: 2019-01-11 13:33:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4480, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 27 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:21:13 +0000, persistedDate: 2019-01-11 13:27:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4477, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 21 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:21:11 +0000, persistedDate: 2019-01-11 13:27:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4473, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 21 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:21:09 +0000, persistedDate: 2019-01-11 13:27:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4475, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 21 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:17:28 +0000, persistedDate: 2019-01-11 13:17:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4469, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 17 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:13:03 +0000, persistedDate: 2019-01-11 13:17:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4471, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 13 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:08:59 +0000, persistedDate: 2019-01-11 13:13:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4467, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 8 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:04:54 +0000, persistedDate: 2019-01-11 13:09:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4466, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 4 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 13:00:50 +0000, persistedDate: 2019-01-11 13:05:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4464, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 7 minute: 0 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 12:51:42 +0000, persistedDate: 2019-01-11 13:00:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4460, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 6 minute: 51 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 12:47:38 +0000, persistedDate: 2019-01-11 12:51:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4458, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 6 minute: 47 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 12:35:22 +0000, persistedDate: 2019-01-11 12:35:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4454, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 6 minute: 35 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 12:26:11 +0000, persistedDate: 2019-01-11 12:31:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4453, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 6 minute: 26 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 12:21:59 +0000, persistedDate: 2019-01-11 12:31:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4450, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 6 minute: 21 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 12:00:03 +0000, persistedDate: 2019-01-11 12:12:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4449, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 6 minute: 0 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 11:38:36 +0000, persistedDate: 2019-01-11 11:42:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4447, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 5 minute: 38 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 11:34:33 +0000, persistedDate: 2019-01-11 11:38:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4445, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 5 minute: 34 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 11:29:31 +0000, persistedDate: 2019-01-11 11:34:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4443, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 5 minute: 29 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 11:24:27 +0000, persistedDate: 2019-01-11 11:29:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4441, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 5 minute: 24 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 11:19:30 +0000, persistedDate: 2019-01-11 11:24:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4438, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 5 minute: 19 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 11:15:16 +0000, persistedDate: 2019-01-11 11:19:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4437, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 5 minute: 15 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 11:11:27 +0000, persistedDate: 2019-01-11 11:11:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4432, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 5 minute: 11 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 11:07:08 +0000, persistedDate: 2019-01-11 11:11:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4435, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 5 minute: 7 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 11:02:07 +0000, persistedDate: 2019-01-11 11:07:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4431, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 5 minute: 2 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 10:57:59 +0000, persistedDate: 2019-01-11 11:02:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4429, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 4 minute: 57 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 10:53:56 +0000, persistedDate: 2019-01-11 10:58:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4426, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 4 minute: 53 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 10:49:53 +0000, persistedDate: 2019-01-11 10:54:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4424, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 4 minute: 49 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 10:45:48 +0000, persistedDate: 2019-01-11 10:50:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4422, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 4 minute: 45 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 10:41:44 +0000, persistedDate: 2019-01-11 10:45:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4421, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 4 minute: 41 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 10:37:41 +0000, persistedDate: 2019-01-11 10:41:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4419, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 4 minute: 37 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 10:33:36 +0000, persistedDate: 2019-01-11 10:37:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4417, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 4 minute: 33 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 10:29:32 +0000, persistedDate: 2019-01-11 10:33:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4415, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 4 minute: 29 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 10:25:30 +0000, persistedDate: 2019-01-11 10:29:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4412, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 4 minute: 25 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 10:20:27 +0000, persistedDate: 2019-01-11 10:25:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4410, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 4 minute: 20 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 10:15:23 +0000, persistedDate: 2019-01-11 10:20:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4409, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 4 minute: 15 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 10:11:06 +0000, persistedDate: 2019-01-11 10:15:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4407, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 4 minute: 11 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 10:06:13 +0000, persistedDate: 2019-01-11 10:11:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4405, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 4 minute: 6 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 10:02:08 +0000, persistedDate: 2019-01-11 10:06:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4402, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 4 minute: 2 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 09:58:04 +0000, persistedDate: 2019-01-11 10:02:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4401, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 3 minute: 58 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 09:54:00 +0000, persistedDate: 2019-01-11 09:58:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4398, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 3 minute: 54 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 09:49:56 +0000, persistedDate: 2019-01-11 09:54:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4397, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 3 minute: 49 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 09:45:52 +0000, persistedDate: 2019-01-11 09:50:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4395, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 3 minute: 45 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 09:41:50 +0000, persistedDate: 2019-01-11 09:46:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4392, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 3 minute: 41 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 09:37:46 +0000, persistedDate: 2019-01-11 09:41:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4391, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 3 minute: 37 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 09:33:42 +0000, persistedDate: 2019-01-11 09:37:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4389, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 3 minute: 33 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 09:29:27 +0000, persistedDate: 2019-01-11 09:33:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4387, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 3 minute: 29 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 09:25:34 +0000, persistedDate: 2019-01-11 09:29:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4385, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 3 minute: 25 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 09:21:30 +0000, persistedDate: 2019-01-11 09:25:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4383, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 3 minute: 21 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 09:17:28 +0000, persistedDate: 2019-01-11 09:21:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4381, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 3 minute: 17 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 09:13:24 +0000, persistedDate: 2019-01-11 09:17:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4379, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 3 minute: 13 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 09:09:20 +0000, persistedDate: 2019-01-11 09:13:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4376, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 3 minute: 9 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 08:57:08 +0000, persistedDate: 2019-01-11 09:09:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4375, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 2 minute: 57 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 08:53:04 +0000, persistedDate: 2019-01-11 08:57:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4373, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 2 minute: 53 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 08:49:00 +0000, persistedDate: 2019-01-11 08:53:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4371, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 2 minute: 49 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 08:44:56 +0000, persistedDate: 2019-01-11 08:49:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4369, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 2 minute: 44 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 08:40:52 +0000, persistedDate: 2019-01-11 08:45:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4367, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 2 minute: 40 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 08:36:50 +0000, persistedDate: 2019-01-11 08:41:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4365, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 2 minute: 36 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 08:32:00 +0000, persistedDate: 2019-01-11 08:36:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4363, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 2 minute: 32 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 08:27:41 +0000, persistedDate: 2019-01-11 08:32:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4361, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 2 minute: 27 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 08:23:36 +0000, persistedDate: 2019-01-11 08:27:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4359, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 2 minute: 23 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 08:19:34 +0000, persistedDate: 2019-01-11 08:23:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4357, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 2 minute: 19 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 08:15:30 +0000, persistedDate: 2019-01-11 08:19:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4355, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 2 minute: 15 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 08:10:26 +0000, persistedDate: 2019-01-11 08:15:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4352, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 2 minute: 10 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 08:05:22 +0000, persistedDate: 2019-01-11 08:10:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4351, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 2 minute: 5 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 07:57:14 +0000, persistedDate: 2019-01-11 08:01:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4349, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 1 minute: 57 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 07:43:18 +0000, persistedDate: 2019-01-11 07:57:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4346, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 1 minute: 43 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 07:43:16 +0000, persistedDate: 2019-01-11 07:57:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4345, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 1 minute: 43 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 07:38:56 +0000, persistedDate: 2019-01-11 07:43:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4343, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 1 minute: 38 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 07:34:52 +0000, persistedDate: 2019-01-11 07:39:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4341, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 1 minute: 34 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 07:30:48 +0000, persistedDate: 2019-01-11 07:35:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4339, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 1 minute: 30 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 07:25:46 +0000, persistedDate: 2019-01-11 07:30:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4337, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 1 minute: 25 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 07:21:40 +0000, persistedDate: 2019-01-11 07:25:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4334, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 1 minute: 21 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 07:17:36 +0000, persistedDate: 2019-01-11 07:21:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4332, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 1 minute: 17 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 07:12:34 +0000, persistedDate: 2019-01-11 07:17:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4331, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 1 minute: 12 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 07:07:30 +0000, persistedDate: 2019-01-11 07:12:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4328, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 1 minute: 7 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 06:58:18 +0000, persistedDate: 2019-01-11 07:02:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4327, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 0 minute: 58 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 06:54:15 +0000, persistedDate: 2019-01-11 06:58:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4324, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 0 minute: 54 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 06:33:56 +0000, persistedDate: 2019-01-11 06:38:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4323, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 0 minute: 33 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 06:11:39 +0000, persistedDate: 2019-01-11 06:16:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4321, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 11 hour: 0 minute: 11 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 05:52:24 +0000, persistedDate: 2019-01-11 05:57:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4318, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 23 minute: 52 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 05:22:58 +0000, persistedDate: 2019-01-11 05:28:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4317, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 23 minute: 22 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 05:13:44 +0000, persistedDate: 2019-01-11 05:18:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4312, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 23 minute: 13 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 05:09:42 +0000, persistedDate: 2019-01-11 05:13:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4311, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 23 minute: 9 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 05:05:37 +0000, persistedDate: 2019-01-11 05:09:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4308, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 23 minute: 5 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 05:01:34 +0000, persistedDate: 2019-01-11 05:05:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4306, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 23 minute: 1 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 04:42:06 +0000, persistedDate: 2019-01-11 04:46:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4304, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 22 minute: 42 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 04:38:13 +0000, persistedDate: 2019-01-11 04:42:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4303, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 22 minute: 38 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 04:34:06 +0000, persistedDate: 2019-01-11 04:38:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4300, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 22 minute: 34 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 04:16:56 +0000, persistedDate: 2019-01-11 04:23:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4299, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 22 minute: 16 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 03:12:55 +0000, persistedDate: 2019-01-11 04:17:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4296, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 21 minute: 12 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 00:26:51 +0000, persistedDate: 2019-01-11 02:51:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4291, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 18 minute: 26 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 00:22:30 +0000, persistedDate: 2019-01-11 02:51:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4288, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 18 minute: 22 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 00:17:28 +0000, persistedDate: 2019-01-11 00:22:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4287, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 18 minute: 17 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 00:12:24 +0000, persistedDate: 2019-01-11 00:17:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4285, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 18 minute: 12 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 00:08:18 +0000, persistedDate: 2019-01-11 00:12:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4283, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 18 minute: 8 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-11 00:04:14 +0000, persistedDate: 2019-01-11 00:08:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4281, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 18 minute: 4 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 23:59:10 +0000, persistedDate: 2019-01-11 00:04:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4279, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 17 minute: 59 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 23:55:06 +0000, persistedDate: 2019-01-10 23:59:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4277, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 17 minute: 55 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 23:50:51 +0000, persistedDate: 2019-01-10 23:55:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4275, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 17 minute: 50 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 23:46:58 +0000, persistedDate: 2019-01-10 23:50:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4273, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 17 minute: 46 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 23:41:55 +0000, persistedDate: 2019-01-10 23:47:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4270, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 17 minute: 41 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 23:36:50 +0000, persistedDate: 2019-01-10 23:42:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4269, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 17 minute: 36 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 23:31:46 +0000, persistedDate: 2019-01-10 23:36:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4267, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 17 minute: 31 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 23:26:58 +0000, persistedDate: 2019-01-10 23:31:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4264, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 17 minute: 26 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 23:21:38 +0000, persistedDate: 2019-01-10 23:27:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4263, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 17 minute: 21 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 23:16:34 +0000, persistedDate: 2019-01-10 23:21:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4261, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 17 minute: 16 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 23:11:32 +0000, persistedDate: 2019-01-10 23:16:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4259, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 17 minute: 11 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 23:06:30 +0000, persistedDate: 2019-01-10 23:11:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4256, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 17 minute: 6 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 23:02:24 +0000, persistedDate: 2019-01-10 23:06:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4255, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 17 minute: 2 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 22:57:15 +0000, persistedDate: 2019-01-10 23:02:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4253, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 16 minute: 57 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 22:47:09 +0000, persistedDate: 2019-01-10 22:52:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4250, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 16 minute: 47 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 22:42:55 +0000, persistedDate: 2019-01-10 22:43:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4247, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 16 minute: 42 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 22:31:55 +0000, persistedDate: 2019-01-10 22:43:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4245, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 16 minute: 31 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 22:11:34 +0000, persistedDate: 2019-01-10 22:16:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4243, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 16 minute: 11 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 21:48:56 +0000, persistedDate: 2019-01-10 21:57:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4238, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 15 minute: 48 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 21:34:37 +0000, persistedDate: 2019-01-10 21:57:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4241, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 15 minute: 34 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 21:10:32 +0000, persistedDate: 2019-01-10 21:57:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4239, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 15 minute: 10 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 20:50:24 +0000, persistedDate: 2019-01-10 21:10:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4233, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 14 minute: 50 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 20:22:48 +0000, persistedDate: 2019-01-10 20:37:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4229, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 14 minute: 22 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 20:16:54 +0000, persistedDate: 2019-01-10 20:22:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4225, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 14 minute: 16 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 20:12:11 +0000, persistedDate: 2019-01-10 20:12:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4224, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 14 minute: 12 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 20:01:41 +0000, persistedDate: 2019-01-10 20:06:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4222, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 14 minute: 1 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 19:39:06 +0000, persistedDate: 2019-01-10 19:43:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4213, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 13 minute: 39 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 19:29:08 +0000, persistedDate: 2019-01-10 19:34:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4208, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 13 minute: 29 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 19:25:04 +0000, persistedDate: 2019-01-10 19:29:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4207, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 13 minute: 25 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 19:21:00 +0000, persistedDate: 2019-01-10 19:25:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4205, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 13 minute: 21 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 19:15:56 +0000, persistedDate: 2019-01-10 19:21:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4202, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 13 minute: 15 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 19:11:52 +0000, persistedDate: 2019-01-10 19:16:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4201, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 13 minute: 11 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 19:06:50 +0000, persistedDate: 2019-01-10 19:12:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4198, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 13 minute: 6 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 19:01:46 +0000, persistedDate: 2019-01-10 19:06:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4196, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 13 minute: 1 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 18:56:41 +0000, persistedDate: 2019-01-10 19:01:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4195, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 12 minute: 56 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 18:51:37 +0000, persistedDate: 2019-01-10 18:56:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4193, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 12 minute: 51 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 18:46:32 +0000, persistedDate: 2019-01-10 18:51:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4191, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 12 minute: 46 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 18:42:17 +0000, persistedDate: 2019-01-10 18:46:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4189, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 12 minute: 42 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 18:37:25 +0000, persistedDate: 2019-01-10 18:42:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4187, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 12 minute: 37 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 18:32:22 +0000, persistedDate: 2019-01-10 18:37:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4185, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 12 minute: 32 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 17:22:20 +0000, persistedDate: 2019-01-10 17:26:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4181, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 11 minute: 22 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 17:00:59 +0000, persistedDate: 2019-01-10 17:22:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4178, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 11 minute: 0 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 16:55:56 +0000, persistedDate: 2019-01-10 17:01:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4176, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 10 minute: 55 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 16:50:50 +0000, persistedDate: 2019-01-10 16:56:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4175, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 10 minute: 50 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 16:46:46 +0000, persistedDate: 2019-01-10 16:50:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4173, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 10 minute: 46 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 16:41:42 +0000, persistedDate: 2019-01-10 16:46:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4171, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 10 minute: 41 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 16:36:38 +0000, persistedDate: 2019-01-10 16:41:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4168, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 10 minute: 36 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 16:31:34 +0000, persistedDate: 2019-01-10 16:36:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4167, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 10 minute: 31 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 16:27:30 +0000, persistedDate: 2019-01-10 16:31:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4164, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 10 minute: 27 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 16:23:26 +0000, persistedDate: 2019-01-10 16:27:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4163, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 10 minute: 23 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 16:18:22 +0000, persistedDate: 2019-01-10 16:23:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4160, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 10 minute: 18 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 16:14:16 +0000, persistedDate: 2019-01-10 16:18:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4158, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 10 minute: 14 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 16:03:24 +0000, persistedDate: 2019-01-10 16:14:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4156, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 10 minute: 3 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 16:03:22 +0000, persistedDate: 2019-01-10 16:14:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4154, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 10 minute: 3 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 15:57:02 +0000, persistedDate: 2019-01-10 16:03:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4151, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 9 minute: 57 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 15:52:00 +0000, persistedDate: 2019-01-10 15:57:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4148, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 9 minute: 52 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 15:46:56 +0000, persistedDate: 2019-01-10 15:52:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4146, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 9 minute: 46 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 15:41:53 +0000, persistedDate: 2019-01-10 15:47:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4145, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 9 minute: 41 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 15:36:46 +0000, persistedDate: 2019-01-10 15:42:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4142, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 9 minute: 36 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 15:31:42 +0000, persistedDate: 2019-01-10 15:36:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4141, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 9 minute: 31 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 15:27:36 +0000, persistedDate: 2019-01-10 15:31:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4139, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 9 minute: 27 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 15:17:30 +0000, persistedDate: 2019-01-10 15:27:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4137, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 9 minute: 17 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 15:13:24 +0000, persistedDate: 2019-01-10 15:17:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4134, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 9 minute: 13 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 15:09:18 +0000, persistedDate: 2019-01-10 15:13:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4132, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 9 minute: 9 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 15:04:17 +0000, persistedDate: 2019-01-10 15:09:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4131, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 9 minute: 4 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 14:55:08 +0000, persistedDate: 2019-01-10 15:04:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4128, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 8 minute: 55 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 14:50:51 +0000, persistedDate: 2019-01-10 14:55:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4127, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 8 minute: 50 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 14:31:46 +0000, persistedDate: 2019-01-10 14:50:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4125, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 8 minute: 31 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 14:14:33 +0000, persistedDate: 2019-01-10 14:18:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4123, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 8 minute: 14 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 13:30:04 +0000, persistedDate: 2019-01-10 14:09:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4120, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 7 minute: 30 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 13:24:41 +0000, persistedDate: 2019-01-10 14:09:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4119, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 7 minute: 24 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 13:15:34 +0000, persistedDate: 2019-01-10 13:20:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4116, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 7 minute: 15 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 13:10:44 +0000, persistedDate: 2019-01-10 13:11:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4115, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 7 minute: 10 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 13:03:26 +0000, persistedDate: 2019-01-10 13:11:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4114, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 7 minute: 3 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 12:59:17 +0000, persistedDate: 2019-01-10 13:03:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4111, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 6 minute: 59 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 12:54:19 +0000, persistedDate: 2019-01-10 12:59:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4109, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 6 minute: 54 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 12:50:10 +0000, persistedDate: 2019-01-10 12:54:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4106, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 6 minute: 50 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 12:45:08 +0000, persistedDate: 2019-01-10 12:50:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4105, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 6 minute: 45 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 12:35:58 +0000, persistedDate: 2019-01-10 12:40:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4101, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 6 minute: 35 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 12:17:13 +0000, persistedDate: 2019-01-10 12:36:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4100, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 6 minute: 17 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 11:59:29 +0000, persistedDate: 2019-01-10 12:16:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4096, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 5 minute: 59 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 11:54:25 +0000, persistedDate: 2019-01-10 11:59:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4094, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 5 minute: 54 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 11:49:18 +0000, persistedDate: 2019-01-10 11:54:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4093, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 5 minute: 49 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 11:45:14 +0000, persistedDate: 2019-01-10 11:49:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4091, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 5 minute: 45 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 11:41:10 +0000, persistedDate: 2019-01-10 11:45:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4088, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 5 minute: 41 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 11:33:03 +0000, persistedDate: 2019-01-10 11:37:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4087, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 5 minute: 33 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 11:28:59 +0000, persistedDate: 2019-01-10 11:33:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4085, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 5 minute: 28 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 11:24:55 +0000, persistedDate: 2019-01-10 11:29:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4083, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 5 minute: 24 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 11:21:04 +0000, persistedDate: 2019-01-10 11:25:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4081, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 5 minute: 21 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 11:15:49 +0000, persistedDate: 2019-01-10 11:21:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4079, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 5 minute: 15 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 11:11:33 +0000, persistedDate: 2019-01-10 11:15:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4076, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 5 minute: 11 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 11:06:43 +0000, persistedDate: 2019-01-10 11:11:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4074, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 5 minute: 6 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 10:57:32 +0000, persistedDate: 2019-01-10 11:01:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4072, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 4 minute: 57 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 10:52:30 +0000, persistedDate: 2019-01-10 10:57:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4071, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 4 minute: 52 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 10:47:25 +0000, persistedDate: 2019-01-10 10:52:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4068, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 4 minute: 47 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 10:42:18 +0000, persistedDate: 2019-01-10 10:47:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4066, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 4 minute: 42 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 10:37:14 +0000, persistedDate: 2019-01-10 10:42:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4064, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 4 minute: 37 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 10:32:16 +0000, persistedDate: 2019-01-10 10:37:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4063, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 4 minute: 32 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 10:28:25 +0000, persistedDate: 2019-01-10 10:32:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4059, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 4 minute: 28 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 10:28:23 +0000, persistedDate: 2019-01-10 10:32:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4060, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 4 minute: 28 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 10:24:01 +0000, persistedDate: 2019-01-10 10:28:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4057, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 4 minute: 24 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 10:19:56 +0000, persistedDate: 2019-01-10 10:24:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4054, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 4 minute: 19 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 10:15:54 +0000, persistedDate: 2019-01-10 10:20:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4052, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 4 minute: 15 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 10:11:40 +0000, persistedDate: 2019-01-10 10:16:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4051, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 4 minute: 11 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 09:58:40 +0000, persistedDate: 2019-01-10 10:02:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4048, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 3 minute: 58 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 09:53:42 +0000, persistedDate: 2019-01-10 09:58:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4047, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 3 minute: 53 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 09:48:33 +0000, persistedDate: 2019-01-10 09:53:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4045, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 3 minute: 48 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 09:43:28 +0000, persistedDate: 2019-01-10 09:48:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4042, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 3 minute: 43 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 09:38:23 +0000, persistedDate: 2019-01-10 09:43:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4041, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 3 minute: 38 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 09:34:06 +0000, persistedDate: 2019-01-10 09:38:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4039, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 3 minute: 34 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 09:27:10 +0000, persistedDate: 2019-01-10 09:34:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4037, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 3 minute: 27 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 09:23:06 +0000, persistedDate: 2019-01-10 09:27:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4035, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 3 minute: 23 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 09:19:02 +0000, persistedDate: 2019-01-10 09:23:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4032, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 3 minute: 19 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 09:10:54 +0000, persistedDate: 2019-01-10 09:19:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4031, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 3 minute: 10 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 09:05:50 +0000, persistedDate: 2019-01-10 09:11:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4029, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 3 minute: 5 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 09:01:47 +0000, persistedDate: 2019-01-10 09:05:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4026, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 3 minute: 1 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 08:57:42 +0000, persistedDate: 2019-01-10 09:01:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4025, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 2 minute: 57 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 08:53:39 +0000, persistedDate: 2019-01-10 08:57:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4023, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 2 minute: 53 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 08:49:34 +0000, persistedDate: 2019-01-10 08:53:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4021, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 2 minute: 49 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 08:45:31 +0000, persistedDate: 2019-01-10 08:49:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4019, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 2 minute: 45 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 08:40:29 +0000, persistedDate: 2019-01-10 08:45:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4016, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 2 minute: 40 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 08:35:25 +0000, persistedDate: 2019-01-10 08:40:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4015, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 2 minute: 35 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 08:30:18 +0000, persistedDate: 2019-01-10 08:35:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4012, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 2 minute: 30 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 08:26:14 +0000, persistedDate: 2019-01-10 08:30:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4011, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 2 minute: 26 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 08:22:10 +0000, persistedDate: 2019-01-10 08:26:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4009, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 2 minute: 22 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 08:17:15 +0000, persistedDate: 2019-01-10 08:22:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4007, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 2 minute: 17 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 08:12:02 +0000, persistedDate: 2019-01-10 08:17:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4004, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 2 minute: 12 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 08:07:58 +0000, persistedDate: 2019-01-10 08:12:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4003, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 2 minute: 7 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 08:03:54 +0000, persistedDate: 2019-01-10 08:08:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p4000, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 2 minute: 3 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 07:59:50 +0000, persistedDate: 2019-01-10 08:04:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3999, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 1 minute: 59 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 07:54:46 +0000, persistedDate: 2019-01-10 07:59:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3997, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 1 minute: 54 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 07:50:42 +0000, persistedDate: 2019-01-10 07:54:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3995, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 1 minute: 50 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 07:45:39 +0000, persistedDate: 2019-01-10 07:50:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3993, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 1 minute: 45 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 07:41:36 +0000, persistedDate: 2019-01-10 07:45:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3991, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 1 minute: 41 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 07:37:32 +0000, persistedDate: 2019-01-10 07:41:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3988, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 1 minute: 37 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 07:32:31 +0000, persistedDate: 2019-01-10 07:37:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3987, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 1 minute: 32 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 07:27:25 +0000, persistedDate: 2019-01-10 07:32:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3984, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 1 minute: 27 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 07:23:18 +0000, persistedDate: 2019-01-10 07:27:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3983, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 1 minute: 23 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 07:19:14 +0000, persistedDate: 2019-01-10 07:23:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3980, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 1 minute: 19 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 07:15:12 +0000, persistedDate: 2019-01-10 07:19:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3978, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 1 minute: 15 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 07:10:06 +0000, persistedDate: 2019-01-10 07:15:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3977, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 1 minute: 10 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 07:05:04 +0000, persistedDate: 2019-01-10 07:10:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3974, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 1 minute: 5 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 07:00:02 +0000, persistedDate: 2019-01-10 07:05:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3972, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 1 minute: 0 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 06:14:55 +0000, persistedDate: 2019-01-10 07:00:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3970, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 0 minute: 14 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 06:07:08 +0000, persistedDate: 2019-01-10 07:00:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3969, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 0 minute: 7 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 06:03:01 +0000, persistedDate: 2019-01-10 06:07:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3967, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 10 hour: 0 minute: 3 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 05:59:20 +0000, persistedDate: 2019-01-10 05:59:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3964, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 23 minute: 59 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 05:54:54 +0000, persistedDate: 2019-01-10 05:59:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3965, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 23 minute: 54 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 05:50:55 +0000, persistedDate: 2019-01-10 05:55:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3960, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 23 minute: 50 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 05:46:37 +0000, persistedDate: 2019-01-10 05:51:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3958, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 23 minute: 46 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 05:41:47 +0000, persistedDate: 2019-01-10 05:46:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3956, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 23 minute: 41 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 05:36:35 +0000, persistedDate: 2019-01-10 05:41:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3955, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 23 minute: 36 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 05:31:45 +0000, persistedDate: 2019-01-10 05:36:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3953, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 23 minute: 31 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 05:26:30 +0000, persistedDate: 2019-01-10 05:31:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3951, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 23 minute: 26 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 05:02:28 +0000, persistedDate: 2019-01-10 05:02:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3947, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 23 minute: 2 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 04:57:02 +0000, persistedDate: 2019-01-10 05:02:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3948, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 22 minute: 57 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 04:52:01 +0000, persistedDate: 2019-01-10 04:57:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3944, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 22 minute: 52 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 04:46:52 +0000, persistedDate: 2019-01-10 04:52:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3943, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 22 minute: 46 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 04:42:48 +0000, persistedDate: 2019-01-10 04:47:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3940, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 22 minute: 42 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 04:37:32 +0000, persistedDate: 2019-01-10 04:42:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3938, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 22 minute: 37 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 04:32:43 +0000, persistedDate: 2019-01-10 04:42:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3937, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 22 minute: 32 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 04:28:24 +0000, persistedDate: 2019-01-10 04:32:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3935, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 22 minute: 28 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 04:22:31 +0000, persistedDate: 2019-01-10 04:28:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3933, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 22 minute: 22 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 04:17:29 +0000, persistedDate: 2019-01-10 04:22:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3931, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 22 minute: 17 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 04:12:28 +0000, persistedDate: 2019-01-10 04:17:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3929, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 22 minute: 12 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 04:08:20 +0000, persistedDate: 2019-01-10 04:12:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3927, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 22 minute: 8 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 03:57:08 +0000, persistedDate: 2019-01-10 04:08:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3925, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 21 minute: 57 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 03:51:58 +0000, persistedDate: 2019-01-10 03:57:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3920, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 21 minute: 51 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 03:46:54 +0000, persistedDate: 2019-01-10 03:57:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3921, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 21 minute: 46 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 03:42:19 +0000, persistedDate: 2019-01-10 03:42:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3918, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 21 minute: 42 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 03:37:02 +0000, persistedDate: 2019-01-10 03:42:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3917, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 21 minute: 37 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 03:13:14 +0000, persistedDate: 2019-01-10 03:13:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3914, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 21 minute: 13 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 03:08:21 +0000, persistedDate: 2019-01-10 03:13:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3915, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 21 minute: 8 second: 21 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 02:11:28 +0000, persistedDate: 2019-01-10 02:15:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3910, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 20 minute: 11 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 02:06:32 +0000, persistedDate: 2019-01-10 02:11:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3908, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 20 minute: 6 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 01:45:10 +0000, persistedDate: 2019-01-10 02:02:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3904, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 19 minute: 45 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 01:41:06 +0000, persistedDate: 2019-01-10 01:45:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3902, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 19 minute: 41 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 01:36:06 +0000, persistedDate: 2019-01-10 01:41:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3900, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 19 minute: 36 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 01:31:58 +0000, persistedDate: 2019-01-10 01:36:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3898, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 19 minute: 31 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 01:26:54 +0000, persistedDate: 2019-01-10 01:32:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3896, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 19 minute: 26 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 01:21:50 +0000, persistedDate: 2019-01-10 01:27:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3893, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 19 minute: 21 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 01:12:31 +0000, persistedDate: 2019-01-10 01:21:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3891, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 19 minute: 12 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 01:07:27 +0000, persistedDate: 2019-01-10 01:12:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3890, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 19 minute: 7 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 00:56:30 +0000, persistedDate: 2019-01-10 01:01:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3888, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 18 minute: 56 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 00:52:47 +0000, persistedDate: 2019-01-10 00:56:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3884, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 18 minute: 52 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 00:47:18 +0000, persistedDate: 2019-01-10 00:56:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3885, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 18 minute: 47 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 00:43:14 +0000, persistedDate: 2019-01-10 00:47:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3882, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 18 minute: 43 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 00:39:10 +0000, persistedDate: 2019-01-10 00:43:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3879, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 18 minute: 39 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 00:34:19 +0000, persistedDate: 2019-01-10 00:34:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3878, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 18 minute: 34 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 00:29:39 +0000, persistedDate: 2019-01-10 00:34:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3875, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 18 minute: 29 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 00:24:46 +0000, persistedDate: 2019-01-10 00:34:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3873, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 18 minute: 24 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 00:19:52 +0000, persistedDate: 2019-01-10 00:24:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3872, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 18 minute: 19 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 00:15:59 +0000, persistedDate: 2019-01-10 00:16:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3867, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 18 minute: 15 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-10 00:11:34 +0000, persistedDate: 2019-01-10 00:16:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3869, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 18 minute: 11 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 23:51:22 +0000, persistedDate: 2019-01-09 23:51:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3863, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 17 minute: 51 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 23:46:28 +0000, persistedDate: 2019-01-09 23:51:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3862, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 17 minute: 46 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 23:39:40 +0000, persistedDate: 2019-01-09 23:40:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3857, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 17 minute: 39 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 23:34:59 +0000, persistedDate: 2019-01-09 23:40:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3858, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 17 minute: 34 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 23:31:07 +0000, persistedDate: 2019-01-09 23:35:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3854, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 17 minute: 31 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 23:26:03 +0000, persistedDate: 2019-01-09 23:31:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3851, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 17 minute: 26 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 23:20:58 +0000, persistedDate: 2019-01-09 23:26:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3850, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 17 minute: 20 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 23:16:00 +0000, persistedDate: 2019-01-09 23:21:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3848, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 17 minute: 16 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 23:11:39 +0000, persistedDate: 2019-01-09 23:16:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3845, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 17 minute: 11 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 23:06:45 +0000, persistedDate: 2019-01-09 23:11:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3843, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 17 minute: 6 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 22:56:38 +0000, persistedDate: 2019-01-09 23:01:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3841, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 16 minute: 56 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 22:52:33 +0000, persistedDate: 2019-01-09 22:56:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3839, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 16 minute: 52 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 22:47:30 +0000, persistedDate: 2019-01-09 22:52:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3837, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 16 minute: 47 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 22:42:24 +0000, persistedDate: 2019-01-09 22:47:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3836, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 16 minute: 42 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 22:37:20 +0000, persistedDate: 2019-01-09 22:42:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3834, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 16 minute: 37 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 22:31:01 +0000, persistedDate: 2019-01-09 22:37:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3832, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 16 minute: 31 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 22:23:22 +0000, persistedDate: 2019-01-09 22:31:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3828, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 16 minute: 23 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 22:23:20 +0000, persistedDate: 2019-01-09 22:31:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3830, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 16 minute: 23 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 22:17:00 +0000, persistedDate: 2019-01-09 22:23:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3826, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 16 minute: 17 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 22:11:56 +0000, persistedDate: 2019-01-09 22:17:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3823, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 16 minute: 11 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 22:06:53 +0000, persistedDate: 2019-01-09 22:12:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3822, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 16 minute: 6 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 22:01:48 +0000, persistedDate: 2019-01-09 22:07:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3820, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 16 minute: 1 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 21:57:43 +0000, persistedDate: 2019-01-09 22:01:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3817, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 15 minute: 57 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 21:53:38 +0000, persistedDate: 2019-01-09 21:57:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3816, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 15 minute: 53 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 21:49:47 +0000, persistedDate: 2019-01-09 21:53:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3814, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 15 minute: 49 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 21:45:30 +0000, persistedDate: 2019-01-09 21:49:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3811, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 15 minute: 45 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 21:35:25 +0000, persistedDate: 2019-01-09 21:40:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3810, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 15 minute: 35 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 21:31:07 +0000, persistedDate: 2019-01-09 21:35:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3808, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 15 minute: 31 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 21:26:12 +0000, persistedDate: 2019-01-09 21:31:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3806, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 15 minute: 26 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 21:21:10 +0000, persistedDate: 2019-01-09 21:26:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3803, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 15 minute: 21 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 21:16:03 +0000, persistedDate: 2019-01-09 21:16:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3799, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 15 minute: 16 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 21:12:10 +0000, persistedDate: 2019-01-09 21:16:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3801, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 15 minute: 12 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 21:05:55 +0000, persistedDate: 2019-01-09 21:11:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3797, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 15 minute: 5 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 21:01:46 +0000, persistedDate: 2019-01-09 21:06:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3796, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 15 minute: 1 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 20:56:51 +0000, persistedDate: 2019-01-09 21:01:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3794, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 14 minute: 56 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 20:51:53 +0000, persistedDate: 2019-01-09 20:56:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3792, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 14 minute: 51 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 20:46:40 +0000, persistedDate: 2019-01-09 20:52:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3790, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 14 minute: 46 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 20:41:36 +0000, persistedDate: 2019-01-09 20:46:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3788, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 14 minute: 41 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 20:37:30 +0000, persistedDate: 2019-01-09 20:41:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3785, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 14 minute: 37 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 20:32:28 +0000, persistedDate: 2019-01-09 20:37:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3784, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 14 minute: 32 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 20:27:29 +0000, persistedDate: 2019-01-09 20:32:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3782, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 14 minute: 27 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 20:18:15 +0000, persistedDate: 2019-01-09 20:22:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3780, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 14 minute: 18 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 20:13:31 +0000, persistedDate: 2019-01-09 20:18:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3778, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 14 minute: 13 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 20:13:28 +0000, persistedDate: 2019-01-09 20:18:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3777, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 14 minute: 13 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 20:07:08 +0000, persistedDate: 2019-01-09 20:13:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3774, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 14 minute: 7 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 20:02:00 +0000, persistedDate: 2019-01-09 20:07:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3772, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 14 minute: 2 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 19:56:57 +0000, persistedDate: 2019-01-09 20:02:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3770, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 13 minute: 56 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 19:51:56 +0000, persistedDate: 2019-01-09 19:57:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3768, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 13 minute: 51 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 19:32:31 +0000, persistedDate: 2019-01-09 19:36:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3766, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 13 minute: 32 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 19:09:10 +0000, persistedDate: 2019-01-09 19:13:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3764, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 13 minute: 9 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 18:49:01 +0000, persistedDate: 2019-01-09 19:00:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3762, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 12 minute: 49 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 18:12:43 +0000, persistedDate: 2019-01-09 18:13:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3757, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 12 minute: 12 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 18:07:27 +0000, persistedDate: 2019-01-09 18:13:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3755, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 12 minute: 7 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 18:02:15 +0000, persistedDate: 2019-01-09 18:07:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3753, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 12 minute: 2 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 17:57:08 +0000, persistedDate: 2019-01-09 18:02:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3752, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 11 minute: 57 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 17:52:02 +0000, persistedDate: 2019-01-09 17:57:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3750, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 11 minute: 52 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 17:46:59 +0000, persistedDate: 2019-01-09 17:52:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3748, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 11 minute: 46 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 17:41:54 +0000, persistedDate: 2019-01-09 17:47:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3746, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 11 minute: 41 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 17:36:50 +0000, persistedDate: 2019-01-09 17:42:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3743, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 11 minute: 36 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 17:31:49 +0000, persistedDate: 2019-01-09 17:36:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3742, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 11 minute: 31 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 17:26:40 +0000, persistedDate: 2019-01-09 17:31:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3740, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 11 minute: 26 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 17:22:36 +0000, persistedDate: 2019-01-09 17:26:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3737, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 11 minute: 22 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 17:17:40 +0000, persistedDate: 2019-01-09 17:22:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3736, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 11 minute: 17 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 17:03:23 +0000, persistedDate: 2019-01-09 17:08:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3734, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 11 minute: 3 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 16:42:00 +0000, persistedDate: 2019-01-09 16:47:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3732, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 10 minute: 42 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 16:21:44 +0000, persistedDate: 2019-01-09 16:26:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3730, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 10 minute: 21 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 16:11:36 +0000, persistedDate: 2019-01-09 16:16:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3725, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 10 minute: 11 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 16:06:31 +0000, persistedDate: 2019-01-09 16:11:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3724, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 10 minute: 6 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 16:01:29 +0000, persistedDate: 2019-01-09 16:06:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3721, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 10 minute: 1 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 15:56:23 +0000, persistedDate: 2019-01-09 16:01:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3720, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 9 minute: 56 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 15:52:07 +0000, persistedDate: 2019-01-09 15:56:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3717, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 9 minute: 52 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 15:47:25 +0000, persistedDate: 2019-01-09 15:47:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3715, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 9 minute: 47 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 15:42:08 +0000, persistedDate: 2019-01-09 15:47:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3713, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 9 minute: 42 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 15:37:04 +0000, persistedDate: 2019-01-09 15:42:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3711, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 9 minute: 37 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 15:32:07 +0000, persistedDate: 2019-01-09 15:37:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3710, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 9 minute: 32 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 15:26:56 +0000, persistedDate: 2019-01-09 15:32:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3708, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 9 minute: 26 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 15:21:52 +0000, persistedDate: 2019-01-09 15:27:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3706, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 9 minute: 21 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 15:16:48 +0000, persistedDate: 2019-01-09 15:21:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3704, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 9 minute: 16 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 15:11:42 +0000, persistedDate: 2019-01-09 15:16:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3702, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 9 minute: 11 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 15:06:38 +0000, persistedDate: 2019-01-09 15:11:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3700, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 9 minute: 6 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 15:01:36 +0000, persistedDate: 2019-01-09 15:06:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3697, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 9 minute: 1 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 14:57:31 +0000, persistedDate: 2019-01-09 15:01:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3694, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 8 minute: 57 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 14:37:59 +0000, persistedDate: 2019-01-09 14:42:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3692, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 8 minute: 37 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 14:16:52 +0000, persistedDate: 2019-01-09 14:22:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3690, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 8 minute: 16 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 13:54:47 +0000, persistedDate: 2019-01-09 13:59:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3685, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 7 minute: 54 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 13:46:26 +0000, persistedDate: 2019-01-09 13:59:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3686, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 7 minute: 46 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 13:42:11 +0000, persistedDate: 2019-01-09 13:46:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3683, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 7 minute: 42 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 13:37:18 +0000, persistedDate: 2019-01-09 13:42:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3680, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 7 minute: 37 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 13:33:12 +0000, persistedDate: 2019-01-09 13:37:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3679, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 7 minute: 33 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 13:29:08 +0000, persistedDate: 2019-01-09 13:33:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3677, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 7 minute: 29 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 13:24:04 +0000, persistedDate: 2019-01-09 13:29:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3674, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 7 minute: 24 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 13:19:40 +0000, persistedDate: 2019-01-09 13:20:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3672, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 7 minute: 19 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 13:14:54 +0000, persistedDate: 2019-01-09 13:20:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3673, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 7 minute: 14 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 13:09:51 +0000, persistedDate: 2019-01-09 13:15:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3668, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 7 minute: 9 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 13:09:50 +0000, persistedDate: 2019-01-09 13:15:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3669, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 7 minute: 9 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 13:04:48 +0000, persistedDate: 2019-01-09 13:09:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3664, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 7 minute: 4 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 12:56:52 +0000, persistedDate: 2019-01-09 13:04:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3663, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 6 minute: 56 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 12:52:24 +0000, persistedDate: 2019-01-09 13:04:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3662, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 6 minute: 52 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 12:48:19 +0000, persistedDate: 2019-01-09 12:52:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3658, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 6 minute: 48 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 12:42:30 +0000, persistedDate: 2019-01-09 12:48:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3657, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 6 minute: 42 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 12:38:03 +0000, persistedDate: 2019-01-09 12:38:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3653, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 6 minute: 38 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 12:28:02 +0000, persistedDate: 2019-01-09 12:33:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3651, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 6 minute: 28 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 12:22:55 +0000, persistedDate: 2019-01-09 12:28:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3650, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 6 minute: 22 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 12:05:36 +0000, persistedDate: 2019-01-09 12:23:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3648, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 6 minute: 5 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 11:52:40 +0000, persistedDate: 2019-01-09 11:56:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3645, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 5 minute: 52 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 11:47:37 +0000, persistedDate: 2019-01-09 11:52:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3644, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 5 minute: 47 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 11:42:32 +0000, persistedDate: 2019-01-09 11:47:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3642, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 5 minute: 42 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 11:37:29 +0000, persistedDate: 2019-01-09 11:42:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3639, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 5 minute: 37 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 11:32:24 +0000, persistedDate: 2019-01-09 11:37:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3638, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 5 minute: 32 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 11:28:07 +0000, persistedDate: 2019-01-09 11:32:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3636, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 5 minute: 28 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 11:18:10 +0000, persistedDate: 2019-01-09 11:22:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3633, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 5 minute: 18 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 11:13:27 +0000, persistedDate: 2019-01-09 11:18:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3631, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 5 minute: 13 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 11:13:24 +0000, persistedDate: 2019-01-09 11:18:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3630, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 5 minute: 13 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 11:06:57 +0000, persistedDate: 2019-01-09 11:13:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3627, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 5 minute: 6 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 11:02:02 +0000, persistedDate: 2019-01-09 11:07:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3625, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 5 minute: 2 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 10:57:50 +0000, persistedDate: 2019-01-09 11:02:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3624, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 4 minute: 57 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 10:53:46 +0000, persistedDate: 2019-01-09 10:57:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3622, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 4 minute: 53 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 10:49:42 +0000, persistedDate: 2019-01-09 10:53:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3620, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 4 minute: 49 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 10:45:38 +0000, persistedDate: 2019-01-09 10:49:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3618, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 4 minute: 45 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 10:41:25 +0000, persistedDate: 2019-01-09 10:45:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3616, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 4 minute: 41 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 10:36:32 +0000, persistedDate: 2019-01-09 10:41:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3613, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 4 minute: 36 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 10:31:30 +0000, persistedDate: 2019-01-09 10:36:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3611, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 4 minute: 31 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 10:27:13 +0000, persistedDate: 2019-01-09 10:31:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3609, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 4 minute: 27 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 10:22:22 +0000, persistedDate: 2019-01-09 10:27:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3608, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 4 minute: 22 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 10:17:16 +0000, persistedDate: 2019-01-09 10:22:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3606, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 4 minute: 17 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 10:07:06 +0000, persistedDate: 2019-01-09 10:17:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3604, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 4 minute: 7 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 10:02:02 +0000, persistedDate: 2019-01-09 10:07:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3602, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 4 minute: 2 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 09:56:55 +0000, persistedDate: 2019-01-09 10:02:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3600, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 3 minute: 56 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 09:52:51 +0000, persistedDate: 2019-01-09 09:57:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3598, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 3 minute: 52 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 09:48:47 +0000, persistedDate: 2019-01-09 09:52:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3596, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 3 minute: 48 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 09:44:43 +0000, persistedDate: 2019-01-09 09:48:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3594, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 3 minute: 44 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 09:29:31 +0000, persistedDate: 2019-01-09 09:34:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3592, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 3 minute: 29 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 09:24:27 +0000, persistedDate: 2019-01-09 09:29:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3589, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 3 minute: 24 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 09:19:24 +0000, persistedDate: 2019-01-09 09:24:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3588, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 3 minute: 19 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 09:14:17 +0000, persistedDate: 2019-01-09 09:19:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3586, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 3 minute: 14 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 09:10:13 +0000, persistedDate: 2019-01-09 09:14:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3584, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 3 minute: 10 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 09:01:05 +0000, persistedDate: 2019-01-09 09:10:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3581, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 3 minute: 1 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 08:57:01 +0000, persistedDate: 2019-01-09 09:01:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3580, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 2 minute: 57 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 08:47:53 +0000, persistedDate: 2019-01-09 08:52:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3578, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 2 minute: 47 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 08:43:49 +0000, persistedDate: 2019-01-09 08:48:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3575, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 2 minute: 43 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 08:39:45 +0000, persistedDate: 2019-01-09 08:43:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3574, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 2 minute: 39 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 08:34:41 +0000, persistedDate: 2019-01-09 08:39:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3572, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 2 minute: 34 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 08:29:37 +0000, persistedDate: 2019-01-09 08:34:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3570, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 2 minute: 29 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 08:24:40 +0000, persistedDate: 2019-01-09 08:29:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3568, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 2 minute: 24 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 08:19:29 +0000, persistedDate: 2019-01-09 08:24:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3565, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 2 minute: 19 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 08:14:26 +0000, persistedDate: 2019-01-09 08:19:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3563, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 2 minute: 14 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 08:09:21 +0000, persistedDate: 2019-01-09 08:14:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3562, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 2 minute: 9 second: 21 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 08:04:15 +0000, persistedDate: 2019-01-09 08:09:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3559, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 2 minute: 4 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 07:59:11 +0000, persistedDate: 2019-01-09 08:04:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3557, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 1 minute: 59 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 07:54:05 +0000, persistedDate: 2019-01-09 07:59:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3556, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 1 minute: 54 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 07:50:00 +0000, persistedDate: 2019-01-09 07:54:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3554, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 1 minute: 50 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 07:35:49 +0000, persistedDate: 2019-01-09 07:41:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3550, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 9 hour: 1 minute: 35 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-09 00:58:27 +0000, persistedDate: 2019-01-09 01:14:55 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.resume, startDate: 2019-01-09 00:58:27 +0000, endDate: 2019-01-09 00:58:27 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("03000000461b7a320813"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3460, raw: Optional(10 bytes), title: Optional("PrimePumpEvent(length: 10, rawData: 10 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 18 minute: 58 second: 27 isLeapMonth: false , amount: 7.0, primeType: \"manual\", programmedAmount: 0.0)"), type: Optional(LoopKit.PumpEventType.prime)) -* PersistedPumpEvent(date: 2019-01-09 00:57:19 +0000, persistedDate: 2019-01-09 01:14:55 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-09 00:57:19 +0000, endDate: 2019-01-09 00:57:19 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("21001379120813"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3459, raw: Optional(7 bytes), title: Optional("RewindPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 18 minute: 57 second: 19 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.rewind)) -* PersistedPumpEvent(date: 2019-01-09 00:11:06 +0000, persistedDate: 2019-01-09 00:12:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3453, raw: Optional(7 bytes), title: Optional("JournalEntryPumpLowReservoirPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 18 minute: 11 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 23:26:52 +0000, persistedDate: 2019-01-08 23:37:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3451, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 17 minute: 26 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 23:21:45 +0000, persistedDate: 2019-01-08 23:26:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3449, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 17 minute: 21 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 23:17:39 +0000, persistedDate: 2019-01-08 23:21:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3447, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 17 minute: 17 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 23:12:37 +0000, persistedDate: 2019-01-08 23:17:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3445, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 17 minute: 12 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 22:06:39 +0000, persistedDate: 2019-01-08 22:11:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3443, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 16 minute: 6 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 21:46:18 +0000, persistedDate: 2019-01-08 21:51:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3440, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 15 minute: 46 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 21:25:23 +0000, persistedDate: 2019-01-08 21:26:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3433, raw: Optional(7 bytes), title: Optional("JournalEntryPumpLowReservoirPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 15 minute: 25 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 20:34:17 +0000, persistedDate: 2019-01-08 20:39:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3431, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 14 minute: 34 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 20:11:57 +0000, persistedDate: 2019-01-08 20:22:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3429, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 14 minute: 11 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 19:53:37 +0000, persistedDate: 2019-01-08 19:57:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3423, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 13 minute: 53 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 17:23:15 +0000, persistedDate: 2019-01-08 17:27:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3420, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 11 minute: 23 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 16:04:05 +0000, persistedDate: 2019-01-08 16:08:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3417, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 10 minute: 4 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 14:57:23 +0000, persistedDate: 2019-01-08 15:02:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3403, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 8 minute: 57 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 14:52:15 +0000, persistedDate: 2019-01-08 14:57:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3401, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 8 minute: 52 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 14:47:58 +0000, persistedDate: 2019-01-08 14:52:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3400, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 8 minute: 47 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 13:37:51 +0000, persistedDate: 2019-01-08 14:48:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3398, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 7 minute: 37 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 12:58:24 +0000, persistedDate: 2019-01-08 13:03:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3395, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 6 minute: 58 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 12:34:47 +0000, persistedDate: 2019-01-08 12:39:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3394, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 6 minute: 34 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 12:13:40 +0000, persistedDate: 2019-01-08 12:22:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3389, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 6 minute: 13 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 11:42:10 +0000, persistedDate: 2019-01-08 11:47:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3388, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 5 minute: 42 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 11:37:06 +0000, persistedDate: 2019-01-08 11:42:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3385, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 5 minute: 37 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 11:16:48 +0000, persistedDate: 2019-01-08 11:21:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3383, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 5 minute: 16 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 11:11:42 +0000, persistedDate: 2019-01-08 11:16:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3382, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 5 minute: 11 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 11:07:38 +0000, persistedDate: 2019-01-08 11:11:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3379, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 5 minute: 7 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 10:57:19 +0000, persistedDate: 2019-01-08 11:07:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3378, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 4 minute: 57 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 10:52:27 +0000, persistedDate: 2019-01-08 10:57:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3376, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 4 minute: 52 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 10:47:23 +0000, persistedDate: 2019-01-08 10:52:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3374, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 4 minute: 47 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 10:42:16 +0000, persistedDate: 2019-01-08 10:47:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3371, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 4 minute: 42 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 10:37:12 +0000, persistedDate: 2019-01-08 10:42:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3369, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 4 minute: 37 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 10:32:06 +0000, persistedDate: 2019-01-08 10:37:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3368, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 4 minute: 32 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 10:27:02 +0000, persistedDate: 2019-01-08 10:32:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3365, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 4 minute: 27 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 10:21:58 +0000, persistedDate: 2019-01-08 10:27:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3363, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 4 minute: 21 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 10:16:54 +0000, persistedDate: 2019-01-08 10:22:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3361, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 4 minute: 16 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 10:11:48 +0000, persistedDate: 2019-01-08 10:17:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3360, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 4 minute: 11 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 10:06:46 +0000, persistedDate: 2019-01-08 10:11:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3357, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 4 minute: 6 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 10:02:11 +0000, persistedDate: 2019-01-08 10:06:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3356, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 4 minute: 2 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 09:57:36 +0000, persistedDate: 2019-01-08 10:01:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3354, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 3 minute: 57 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 09:52:32 +0000, persistedDate: 2019-01-08 09:57:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3352, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 3 minute: 52 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 09:47:28 +0000, persistedDate: 2019-01-08 09:52:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3350, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 3 minute: 47 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 09:42:25 +0000, persistedDate: 2019-01-08 09:47:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3348, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 3 minute: 42 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 09:37:18 +0000, persistedDate: 2019-01-08 09:42:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3346, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 3 minute: 37 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 09:32:14 +0000, persistedDate: 2019-01-08 09:37:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3344, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 3 minute: 32 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 09:27:10 +0000, persistedDate: 2019-01-08 09:32:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3342, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 3 minute: 27 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 09:22:04 +0000, persistedDate: 2019-01-08 09:27:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3339, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 3 minute: 22 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 09:17:00 +0000, persistedDate: 2019-01-08 09:22:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3337, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 3 minute: 17 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 09:06:52 +0000, persistedDate: 2019-01-08 09:12:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3336, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 3 minute: 6 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 09:01:48 +0000, persistedDate: 2019-01-08 09:06:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3334, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 3 minute: 1 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 08:57:33 +0000, persistedDate: 2019-01-08 09:01:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3332, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 2 minute: 57 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 08:52:46 +0000, persistedDate: 2019-01-08 08:57:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3330, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 2 minute: 52 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 08:47:34 +0000, persistedDate: 2019-01-08 08:52:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3328, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 2 minute: 47 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 08:42:30 +0000, persistedDate: 2019-01-08 08:47:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3326, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 2 minute: 42 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 08:37:28 +0000, persistedDate: 2019-01-08 08:42:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3324, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 2 minute: 37 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 08:32:24 +0000, persistedDate: 2019-01-08 08:37:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3321, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 2 minute: 32 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 08:27:15 +0000, persistedDate: 2019-01-08 08:32:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3319, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 2 minute: 27 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 08:17:10 +0000, persistedDate: 2019-01-08 08:22:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3317, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 2 minute: 17 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 08:12:03 +0000, persistedDate: 2019-01-08 08:17:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3316, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 2 minute: 12 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 07:56:49 +0000, persistedDate: 2019-01-08 08:02:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3314, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 1 minute: 56 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 07:37:34 +0000, persistedDate: 2019-01-08 07:43:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3311, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 1 minute: 37 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 07:32:31 +0000, persistedDate: 2019-01-08 07:37:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3310, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 1 minute: 32 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 07:27:26 +0000, persistedDate: 2019-01-08 07:32:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3308, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 1 minute: 27 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 07:22:22 +0000, persistedDate: 2019-01-08 07:27:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3305, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 1 minute: 22 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 07:17:16 +0000, persistedDate: 2019-01-08 07:22:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3304, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 1 minute: 17 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 07:13:10 +0000, persistedDate: 2019-01-08 07:17:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3302, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 1 minute: 13 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 07:09:19 +0000, persistedDate: 2019-01-08 07:13:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3299, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 1 minute: 9 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 07:05:02 +0000, persistedDate: 2019-01-08 07:09:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3298, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 1 minute: 5 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 06:59:58 +0000, persistedDate: 2019-01-08 07:05:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3296, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 0 minute: 59 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 06:54:54 +0000, persistedDate: 2019-01-08 07:00:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3294, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 0 minute: 54 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 06:49:52 +0000, persistedDate: 2019-01-08 06:55:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3291, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 0 minute: 49 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 06:44:46 +0000, persistedDate: 2019-01-08 06:49:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3290, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 0 minute: 44 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 06:39:40 +0000, persistedDate: 2019-01-08 06:44:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3288, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 0 minute: 39 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 06:34:36 +0000, persistedDate: 2019-01-08 06:39:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3286, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 0 minute: 34 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 06:29:32 +0000, persistedDate: 2019-01-08 06:34:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3284, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 0 minute: 29 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 06:24:31 +0000, persistedDate: 2019-01-08 06:29:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3281, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 0 minute: 24 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 06:19:24 +0000, persistedDate: 2019-01-08 06:24:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3279, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 0 minute: 19 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 06:14:17 +0000, persistedDate: 2019-01-08 06:19:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3278, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 0 minute: 14 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 06:09:13 +0000, persistedDate: 2019-01-08 06:14:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3276, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 0 minute: 9 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 06:04:09 +0000, persistedDate: 2019-01-08 06:09:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3273, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 8 hour: 0 minute: 4 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 05:59:03 +0000, persistedDate: 2019-01-08 06:04:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3271, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 23 minute: 59 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 05:54:59 +0000, persistedDate: 2019-01-08 05:59:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3270, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 23 minute: 54 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 05:49:56 +0000, persistedDate: 2019-01-08 05:55:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3268, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 23 minute: 49 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 05:44:54 +0000, persistedDate: 2019-01-08 05:50:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3265, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 23 minute: 44 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 05:39:47 +0000, persistedDate: 2019-01-08 05:45:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3264, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 23 minute: 39 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 05:35:33 +0000, persistedDate: 2019-01-08 05:39:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3262, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 23 minute: 35 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 05:30:39 +0000, persistedDate: 2019-01-08 05:35:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3260, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 23 minute: 30 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 05:25:35 +0000, persistedDate: 2019-01-08 05:30:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3258, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 23 minute: 25 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 05:20:29 +0000, persistedDate: 2019-01-08 05:25:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3255, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 23 minute: 20 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 05:15:28 +0000, persistedDate: 2019-01-08 05:20:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3254, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 23 minute: 15 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 05:10:24 +0000, persistedDate: 2019-01-08 05:15:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3252, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 23 minute: 10 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 05:05:27 +0000, persistedDate: 2019-01-08 05:10:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3250, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 23 minute: 5 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 05:00:12 +0000, persistedDate: 2019-01-08 05:05:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3248, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 23 minute: 0 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 04:56:25 +0000, persistedDate: 2019-01-08 04:56:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3244, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 22 minute: 56 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 04:51:03 +0000, persistedDate: 2019-01-08 04:56:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3245, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 22 minute: 51 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 04:46:06 +0000, persistedDate: 2019-01-08 04:51:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3241, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 22 minute: 46 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 04:41:17 +0000, persistedDate: 2019-01-08 04:41:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3240, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 22 minute: 41 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 04:36:00 +0000, persistedDate: 2019-01-08 04:41:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3239, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 22 minute: 36 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 04:31:04 +0000, persistedDate: 2019-01-08 04:31:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3233, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 22 minute: 31 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 04:25:40 +0000, persistedDate: 2019-01-08 04:31:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3234, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 22 minute: 25 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 04:20:36 +0000, persistedDate: 2019-01-08 04:25:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3232, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 22 minute: 20 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 04:16:20 +0000, persistedDate: 2019-01-08 04:20:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3230, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 22 minute: 16 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 04:10:27 +0000, persistedDate: 2019-01-08 04:16:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3228, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 22 minute: 10 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 04:05:15 +0000, persistedDate: 2019-01-08 04:10:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3224, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 22 minute: 5 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 03:50:10 +0000, persistedDate: 2019-01-08 04:10:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3226, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 21 minute: 50 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 02:47:12 +0000, persistedDate: 2019-01-08 02:51:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3222, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 20 minute: 47 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 02:23:46 +0000, persistedDate: 2019-01-08 02:37:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3220, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 20 minute: 23 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 00:59:29 +0000, persistedDate: 2019-01-08 01:09:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3203, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 18 minute: 59 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 00:55:26 +0000, persistedDate: 2019-01-08 01:09:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3207, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 18 minute: 55 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 00:55:22 +0000, persistedDate: 2019-01-08 01:09:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3204, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 18 minute: 55 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 00:39:21 +0000, persistedDate: 2019-01-08 00:39:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3195, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 18 minute: 39 second: 21 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 00:33:19 +0000, persistedDate: 2019-01-08 00:39:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3198, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 18 minute: 33 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 00:27:17 +0000, persistedDate: 2019-01-08 00:39:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3196, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 18 minute: 27 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 00:21:01 +0000, persistedDate: 2019-01-08 00:39:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3192, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 18 minute: 21 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-08 00:05:46 +0000, persistedDate: 2019-01-08 00:16:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3191, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 18 minute: 5 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 23:42:24 +0000, persistedDate: 2019-01-07 23:42:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3186, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 17 minute: 42 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 23:22:58 +0000, persistedDate: 2019-01-07 23:42:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3184, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 17 minute: 22 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 23:13:00 +0000, persistedDate: 2019-01-07 23:17:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3180, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 17 minute: 13 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 23:07:57 +0000, persistedDate: 2019-01-07 23:13:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3178, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 17 minute: 7 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 23:02:55 +0000, persistedDate: 2019-01-07 23:08:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3175, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 17 minute: 2 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 22:57:42 +0000, persistedDate: 2019-01-07 23:03:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3169, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 16 minute: 57 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 22:57:40 +0000, persistedDate: 2019-01-07 23:03:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3173, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 16 minute: 57 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 22:52:33 +0000, persistedDate: 2019-01-07 23:03:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3172, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 16 minute: 52 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 22:39:32 +0000, persistedDate: 2019-01-07 22:52:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3168, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 16 minute: 39 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 22:34:28 +0000, persistedDate: 2019-01-07 22:39:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3165, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 16 minute: 34 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 22:29:24 +0000, persistedDate: 2019-01-07 22:34:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3163, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 16 minute: 29 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 22:24:18 +0000, persistedDate: 2019-01-07 22:29:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3162, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 16 minute: 24 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 22:19:14 +0000, persistedDate: 2019-01-07 22:24:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3160, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 16 minute: 19 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 22:15:26 +0000, persistedDate: 2019-01-07 22:16:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3157, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 16 minute: 15 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 22:10:04 +0000, persistedDate: 2019-01-07 22:16:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3156, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 16 minute: 10 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 20:42:47 +0000, persistedDate: 2019-01-07 20:48:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3154, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 14 minute: 42 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 20:33:56 +0000, persistedDate: 2019-01-07 20:38:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3152, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 14 minute: 33 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 20:33:53 +0000, persistedDate: 2019-01-07 20:38:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3151, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 14 minute: 33 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 20:27:33 +0000, persistedDate: 2019-01-07 20:33:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3148, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 14 minute: 27 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 20:22:30 +0000, persistedDate: 2019-01-07 20:27:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3145, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 14 minute: 22 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 20:17:26 +0000, persistedDate: 2019-01-07 20:22:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3144, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 14 minute: 17 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 20:12:25 +0000, persistedDate: 2019-01-07 20:17:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3142, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 14 minute: 12 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 19:52:02 +0000, persistedDate: 2019-01-07 19:57:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3139, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 13 minute: 52 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 19:32:46 +0000, persistedDate: 2019-01-07 19:37:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3138, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 13 minute: 32 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 19:10:49 +0000, persistedDate: 2019-01-07 19:11:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3136, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 13 minute: 10 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 18:30:51 +0000, persistedDate: 2019-01-07 18:44:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3134, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 12 minute: 30 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 18:11:27 +0000, persistedDate: 2019-01-07 18:15:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3132, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 12 minute: 11 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 18:05:20 +0000, persistedDate: 2019-01-07 18:11:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3123, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 12 minute: 5 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 18:05:17 +0000, persistedDate: 2019-01-07 18:11:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3126, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 12 minute: 5 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 17:57:15 +0000, persistedDate: 2019-01-07 18:11:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3128, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 11 minute: 57 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 17:57:11 +0000, persistedDate: 2019-01-07 18:11:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3125, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 11 minute: 57 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 17:28:00 +0000, persistedDate: 2019-01-07 17:38:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3120, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 11 minute: 28 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 16:52:29 +0000, persistedDate: 2019-01-07 16:57:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3118, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 10 minute: 52 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 16:42:19 +0000, persistedDate: 2019-01-07 16:47:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3115, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 10 minute: 42 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 16:37:11 +0000, persistedDate: 2019-01-07 16:42:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3113, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 10 minute: 37 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 16:27:03 +0000, persistedDate: 2019-01-07 16:32:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3111, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 10 minute: 27 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 16:21:59 +0000, persistedDate: 2019-01-07 16:27:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3109, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 10 minute: 21 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 16:11:51 +0000, persistedDate: 2019-01-07 16:17:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3106, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 10 minute: 11 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 16:06:47 +0000, persistedDate: 2019-01-07 16:11:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3103, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 10 minute: 6 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 15:51:32 +0000, persistedDate: 2019-01-07 15:56:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3101, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 9 minute: 51 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 15:46:27 +0000, persistedDate: 2019-01-07 15:51:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3099, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 9 minute: 46 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 15:41:22 +0000, persistedDate: 2019-01-07 15:46:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3097, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 9 minute: 41 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 15:36:16 +0000, persistedDate: 2019-01-07 15:41:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3095, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 9 minute: 36 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 15:22:05 +0000, persistedDate: 2019-01-07 15:27:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3092, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 9 minute: 22 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 15:17:00 +0000, persistedDate: 2019-01-07 15:22:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3091, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 9 minute: 17 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 15:11:57 +0000, persistedDate: 2019-01-07 15:17:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3088, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 9 minute: 11 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 15:06:55 +0000, persistedDate: 2019-01-07 15:12:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3086, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 9 minute: 6 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 15:01:48 +0000, persistedDate: 2019-01-07 15:07:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3085, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 9 minute: 1 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 14:56:58 +0000, persistedDate: 2019-01-07 14:57:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3078, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 8 minute: 56 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 14:51:29 +0000, persistedDate: 2019-01-07 14:57:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3081, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 8 minute: 51 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 14:47:22 +0000, persistedDate: 2019-01-07 14:57:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3079, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 8 minute: 47 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 14:41:41 +0000, persistedDate: 2019-01-07 14:47:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3072, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 8 minute: 41 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 14:36:23 +0000, persistedDate: 2019-01-07 14:47:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3077, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 8 minute: 36 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 14:32:08 +0000, persistedDate: 2019-01-07 14:47:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3076, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 8 minute: 32 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 14:20:47 +0000, persistedDate: 2019-01-07 14:21:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3069, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 8 minute: 20 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 14:15:05 +0000, persistedDate: 2019-01-07 14:21:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3070, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 8 minute: 15 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 14:11:08 +0000, persistedDate: 2019-01-07 14:11:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3065, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 8 minute: 11 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 14:06:43 +0000, persistedDate: 2019-01-07 14:11:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3067, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 8 minute: 6 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 14:00:48 +0000, persistedDate: 2019-01-07 14:06:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3063, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 8 minute: 0 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 13:56:35 +0000, persistedDate: 2019-01-07 14:00:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3061, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 7 minute: 56 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 13:52:50 +0000, persistedDate: 2019-01-07 13:53:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3056, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 7 minute: 52 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 13:47:36 +0000, persistedDate: 2019-01-07 13:53:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3058, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 7 minute: 47 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 13:42:30 +0000, persistedDate: 2019-01-07 13:47:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3054, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 7 minute: 42 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 13:37:38 +0000, persistedDate: 2019-01-07 13:38:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3053, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 7 minute: 37 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 13:32:25 +0000, persistedDate: 2019-01-07 13:38:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3050, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 7 minute: 32 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 13:27:21 +0000, persistedDate: 2019-01-07 13:32:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3049, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 7 minute: 27 second: 21 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 13:13:04 +0000, persistedDate: 2019-01-07 13:22:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3047, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 7 minute: 13 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 12:52:45 +0000, persistedDate: 2019-01-07 12:58:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3045, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 6 minute: 52 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 12:33:18 +0000, persistedDate: 2019-01-07 12:37:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3041, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 6 minute: 33 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 12:22:41 +0000, persistedDate: 2019-01-07 12:27:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3038, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 6 minute: 22 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 12:18:07 +0000, persistedDate: 2019-01-07 12:27:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3039, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 6 minute: 18 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 12:12:11 +0000, persistedDate: 2019-01-07 12:18:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3035, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 6 minute: 12 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 12:07:23 +0000, persistedDate: 2019-01-07 12:12:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3031, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 6 minute: 7 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 12:02:00 +0000, persistedDate: 2019-01-07 12:12:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3032, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 6 minute: 2 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 11:56:56 +0000, persistedDate: 2019-01-07 12:02:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3029, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 5 minute: 56 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 11:51:55 +0000, persistedDate: 2019-01-07 11:57:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3026, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 5 minute: 51 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 11:46:48 +0000, persistedDate: 2019-01-07 11:52:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3025, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 5 minute: 46 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 11:41:42 +0000, persistedDate: 2019-01-07 11:46:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3022, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 5 minute: 41 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 11:36:52 +0000, persistedDate: 2019-01-07 11:41:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3021, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 5 minute: 36 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 11:31:37 +0000, persistedDate: 2019-01-07 11:36:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3018, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 5 minute: 31 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 11:26:31 +0000, persistedDate: 2019-01-07 11:31:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3017, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 5 minute: 26 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 11:21:27 +0000, persistedDate: 2019-01-07 11:26:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3014, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 5 minute: 21 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 11:17:26 +0000, persistedDate: 2019-01-07 11:17:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3012, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 5 minute: 17 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 11:12:18 +0000, persistedDate: 2019-01-07 11:17:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3010, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 5 minute: 12 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 11:07:10 +0000, persistedDate: 2019-01-07 11:12:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3008, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 5 minute: 7 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 11:02:06 +0000, persistedDate: 2019-01-07 11:07:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3006, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 5 minute: 2 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 10:57:02 +0000, persistedDate: 2019-01-07 11:02:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3004, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 4 minute: 57 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 10:51:58 +0000, persistedDate: 2019-01-07 10:57:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3003, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 4 minute: 51 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 10:37:48 +0000, persistedDate: 2019-01-07 10:42:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p3001, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 4 minute: 37 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 10:32:42 +0000, persistedDate: 2019-01-07 10:37:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2999, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 4 minute: 32 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 10:27:45 +0000, persistedDate: 2019-01-07 10:32:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2997, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 4 minute: 27 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 10:22:32 +0000, persistedDate: 2019-01-07 10:27:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2995, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 4 minute: 22 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 10:17:28 +0000, persistedDate: 2019-01-07 10:22:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2992, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 4 minute: 17 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 10:12:24 +0000, persistedDate: 2019-01-07 10:17:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2991, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 4 minute: 12 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 10:08:18 +0000, persistedDate: 2019-01-07 10:12:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2988, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 4 minute: 8 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 10:03:29 +0000, persistedDate: 2019-01-07 10:08:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2984, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 4 minute: 3 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 10:03:27 +0000, persistedDate: 2019-01-07 10:08:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2985, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 4 minute: 3 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 09:58:08 +0000, persistedDate: 2019-01-07 10:03:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2983, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 3 minute: 58 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 09:53:04 +0000, persistedDate: 2019-01-07 09:58:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2980, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 3 minute: 53 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 09:48:02 +0000, persistedDate: 2019-01-07 09:53:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2979, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 3 minute: 48 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 09:42:56 +0000, persistedDate: 2019-01-07 09:48:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2977, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 3 minute: 42 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 09:37:58 +0000, persistedDate: 2019-01-07 09:43:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2975, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 3 minute: 37 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 09:32:48 +0000, persistedDate: 2019-01-07 09:38:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2973, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 3 minute: 32 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 09:27:51 +0000, persistedDate: 2019-01-07 09:32:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2970, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 3 minute: 27 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 09:22:38 +0000, persistedDate: 2019-01-07 09:27:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2969, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 3 minute: 22 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 09:12:30 +0000, persistedDate: 2019-01-07 09:17:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2967, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 3 minute: 12 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 09:07:26 +0000, persistedDate: 2019-01-07 09:12:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2965, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 3 minute: 7 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 09:02:22 +0000, persistedDate: 2019-01-07 09:07:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2963, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 3 minute: 2 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 08:57:18 +0000, persistedDate: 2019-01-07 09:02:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2961, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 2 minute: 57 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 08:53:12 +0000, persistedDate: 2019-01-07 08:57:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2959, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 2 minute: 53 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 08:48:06 +0000, persistedDate: 2019-01-07 08:53:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2956, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 2 minute: 48 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 08:43:02 +0000, persistedDate: 2019-01-07 08:48:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2954, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 2 minute: 43 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 08:37:58 +0000, persistedDate: 2019-01-07 08:43:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2953, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 2 minute: 37 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 08:32:54 +0000, persistedDate: 2019-01-07 08:38:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2951, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 2 minute: 32 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 08:27:50 +0000, persistedDate: 2019-01-07 08:33:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2949, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 2 minute: 27 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 08:22:43 +0000, persistedDate: 2019-01-07 08:27:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2947, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 2 minute: 22 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 08:02:28 +0000, persistedDate: 2019-01-07 08:07:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2945, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 2 minute: 2 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 07:57:24 +0000, persistedDate: 2019-01-07 08:02:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2943, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 1 minute: 57 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 07:52:18 +0000, persistedDate: 2019-01-07 07:57:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2940, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 1 minute: 52 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 07:48:11 +0000, persistedDate: 2019-01-07 07:52:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2938, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 1 minute: 48 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 07:27:56 +0000, persistedDate: 2019-01-07 07:33:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2937, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 1 minute: 27 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 07:22:52 +0000, persistedDate: 2019-01-07 07:28:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2934, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 1 minute: 22 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 07:17:46 +0000, persistedDate: 2019-01-07 07:22:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2933, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 1 minute: 17 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 07:12:42 +0000, persistedDate: 2019-01-07 07:17:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2931, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 1 minute: 12 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 07:07:38 +0000, persistedDate: 2019-01-07 07:12:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2929, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 1 minute: 7 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 07:02:32 +0000, persistedDate: 2019-01-07 07:07:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2926, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 1 minute: 2 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 06:57:30 +0000, persistedDate: 2019-01-07 07:02:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2924, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 0 minute: 57 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 06:52:26 +0000, persistedDate: 2019-01-07 06:57:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2923, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 0 minute: 52 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 06:47:22 +0000, persistedDate: 2019-01-07 06:52:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2920, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 0 minute: 47 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 06:42:16 +0000, persistedDate: 2019-01-07 06:47:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2919, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 0 minute: 42 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 06:37:15 +0000, persistedDate: 2019-01-07 06:42:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2917, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 0 minute: 37 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 06:33:08 +0000, persistedDate: 2019-01-07 06:37:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2914, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 0 minute: 33 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 06:28:04 +0000, persistedDate: 2019-01-07 06:33:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2912, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 0 minute: 28 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 06:22:58 +0000, persistedDate: 2019-01-07 06:28:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2910, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 0 minute: 22 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 06:17:54 +0000, persistedDate: 2019-01-07 06:23:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2908, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 0 minute: 17 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 06:12:50 +0000, persistedDate: 2019-01-07 06:18:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2907, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 0 minute: 12 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 06:08:44 +0000, persistedDate: 2019-01-07 06:12:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2904, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 0 minute: 8 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 06:04:30 +0000, persistedDate: 2019-01-07 06:08:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2903, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 7 hour: 0 minute: 4 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 05:58:36 +0000, persistedDate: 2019-01-07 06:04:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2900, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 23 minute: 58 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 05:53:30 +0000, persistedDate: 2019-01-07 05:58:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2899, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 23 minute: 53 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 05:48:28 +0000, persistedDate: 2019-01-07 05:53:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2897, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 23 minute: 48 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 05:43:27 +0000, persistedDate: 2019-01-07 05:48:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2894, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 23 minute: 43 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 05:38:48 +0000, persistedDate: 2019-01-07 05:43:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2890, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 23 minute: 38 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 05:38:46 +0000, persistedDate: 2019-01-07 05:43:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2893, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 23 minute: 38 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 05:33:28 +0000, persistedDate: 2019-01-07 05:38:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2889, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 23 minute: 33 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 05:33:26 +0000, persistedDate: 2019-01-07 05:38:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2888, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 23 minute: 33 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 05:27:08 +0000, persistedDate: 2019-01-07 05:33:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2885, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 23 minute: 27 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 05:22:02 +0000, persistedDate: 2019-01-07 05:27:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2883, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 23 minute: 22 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 05:16:58 +0000, persistedDate: 2019-01-07 05:22:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2881, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 23 minute: 16 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 05:12:01 +0000, persistedDate: 2019-01-07 05:17:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2879, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 23 minute: 12 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 05:06:48 +0000, persistedDate: 2019-01-07 05:12:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2876, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 23 minute: 6 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 05:01:46 +0000, persistedDate: 2019-01-07 05:06:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2875, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 23 minute: 1 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 04:56:40 +0000, persistedDate: 2019-01-07 05:01:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2872, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 22 minute: 56 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 04:51:36 +0000, persistedDate: 2019-01-07 04:56:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2871, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 22 minute: 51 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 04:46:30 +0000, persistedDate: 2019-01-07 04:51:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2868, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 22 minute: 46 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 04:36:34 +0000, persistedDate: 2019-01-07 04:36:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2865, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 22 minute: 36 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 04:31:18 +0000, persistedDate: 2019-01-07 04:36:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2864, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 22 minute: 31 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 04:26:13 +0000, persistedDate: 2019-01-07 04:31:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2863, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 22 minute: 26 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 04:02:42 +0000, persistedDate: 2019-01-07 04:07:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2860, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 22 minute: 2 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 03:56:49 +0000, persistedDate: 2019-01-07 04:02:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2859, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 21 minute: 56 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 03:52:42 +0000, persistedDate: 2019-01-07 03:56:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2856, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 21 minute: 52 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 03:48:00 +0000, persistedDate: 2019-01-07 03:48:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2853, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 21 minute: 48 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 03:42:33 +0000, persistedDate: 2019-01-07 03:48:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2855, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 21 minute: 42 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 03:37:32 +0000, persistedDate: 2019-01-07 03:42:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2850, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 21 minute: 37 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 03:32:28 +0000, persistedDate: 2019-01-07 03:37:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2849, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 21 minute: 32 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 03:22:34 +0000, persistedDate: 2019-01-07 03:22:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2847, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 21 minute: 22 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 02:59:33 +0000, persistedDate: 2019-01-07 03:07:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2843, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 20 minute: 59 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 02:59:30 +0000, persistedDate: 2019-01-07 03:07:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2844, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 20 minute: 59 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 02:59:28 +0000, persistedDate: 2019-01-07 03:07:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2845, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 20 minute: 59 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 02:38:36 +0000, persistedDate: 2019-01-07 02:42:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2838, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 20 minute: 38 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 02:18:22 +0000, persistedDate: 2019-01-07 02:23:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2836, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 20 minute: 18 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 02:13:17 +0000, persistedDate: 2019-01-07 02:18:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2833, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 20 minute: 13 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 02:08:15 +0000, persistedDate: 2019-01-07 02:13:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2830, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 20 minute: 8 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 02:03:57 +0000, persistedDate: 2019-01-07 02:08:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2826, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 20 minute: 3 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 01:57:36 +0000, persistedDate: 2019-01-07 02:08:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2827, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 19 minute: 57 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 01:36:44 +0000, persistedDate: 2019-01-07 01:41:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2825, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 19 minute: 36 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 01:31:37 +0000, persistedDate: 2019-01-07 01:36:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2823, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 19 minute: 31 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 01:26:31 +0000, persistedDate: 2019-01-07 01:31:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2821, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 19 minute: 26 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 01:21:28 +0000, persistedDate: 2019-01-07 01:26:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2818, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 19 minute: 21 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 01:16:44 +0000, persistedDate: 2019-01-07 01:17:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2816, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 19 minute: 16 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 01:09:15 +0000, persistedDate: 2019-01-07 01:17:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2817, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 19 minute: 9 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 01:04:10 +0000, persistedDate: 2019-01-07 01:09:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2813, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 19 minute: 4 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 00:59:08 +0000, persistedDate: 2019-01-07 01:04:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2810, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 18 minute: 59 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 00:54:51 +0000, persistedDate: 2019-01-07 00:59:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2809, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 18 minute: 54 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 00:23:35 +0000, persistedDate: 2019-01-07 00:29:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2807, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 18 minute: 23 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 00:03:13 +0000, persistedDate: 2019-01-07 00:07:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2802, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 18 minute: 3 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-07 00:03:10 +0000, persistedDate: 2019-01-07 00:07:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2803, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 18 minute: 3 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 23:37:58 +0000, persistedDate: 2019-01-07 00:03:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2801, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 17 minute: 37 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 23:18:39 +0000, persistedDate: 2019-01-06 23:38:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2796, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 17 minute: 18 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 23:12:32 +0000, persistedDate: 2019-01-06 23:18:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2795, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 17 minute: 12 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 23:05:27 +0000, persistedDate: 2019-01-06 23:12:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2793, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 17 minute: 5 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 23:00:23 +0000, persistedDate: 2019-01-06 23:05:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2791, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 17 minute: 0 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 22:56:07 +0000, persistedDate: 2019-01-06 23:00:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2789, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 16 minute: 56 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 22:43:52 +0000, persistedDate: 2019-01-06 22:56:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2784, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 16 minute: 43 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 22:26:31 +0000, persistedDate: 2019-01-06 22:56:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2787, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 16 minute: 26 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 21:51:40 +0000, persistedDate: 2019-01-06 21:56:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2781, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 15 minute: 51 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 21:26:16 +0000, persistedDate: 2019-01-06 21:31:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2779, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 15 minute: 26 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 21:05:52 +0000, persistedDate: 2019-01-06 21:11:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2777, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 15 minute: 5 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 20:45:26 +0000, persistedDate: 2019-01-06 20:50:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2774, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 14 minute: 45 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 20:25:08 +0000, persistedDate: 2019-01-06 20:35:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2770, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 14 minute: 25 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 20:04:47 +0000, persistedDate: 2019-01-06 20:09:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2767, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 14 minute: 4 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 19:45:20 +0000, persistedDate: 2019-01-06 19:49:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2764, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 13 minute: 45 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 19:26:16 +0000, persistedDate: 2019-01-06 19:30:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2762, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 13 minute: 26 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 19:21:10 +0000, persistedDate: 2019-01-06 19:26:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2760, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 13 minute: 21 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 19:16:05 +0000, persistedDate: 2019-01-06 19:21:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2756, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 13 minute: 16 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 18:55:48 +0000, persistedDate: 2019-01-06 19:01:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2754, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 12 minute: 55 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 18:35:39 +0000, persistedDate: 2019-01-06 18:40:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2753, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 12 minute: 35 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 18:16:16 +0000, persistedDate: 2019-01-06 18:21:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2751, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 12 minute: 16 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 17:57:00 +0000, persistedDate: 2019-01-06 18:01:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2749, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 11 minute: 57 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 17:46:48 +0000, persistedDate: 2019-01-06 17:52:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2745, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 11 minute: 46 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 17:41:44 +0000, persistedDate: 2019-01-06 17:46:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2743, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 11 minute: 41 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 17:36:40 +0000, persistedDate: 2019-01-06 17:41:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2741, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 11 minute: 36 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 17:31:39 +0000, persistedDate: 2019-01-06 17:36:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2739, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 11 minute: 31 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 17:26:39 +0000, persistedDate: 2019-01-06 17:31:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2736, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 11 minute: 26 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 17:21:45 +0000, persistedDate: 2019-01-06 17:26:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2735, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 11 minute: 21 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 17:01:04 +0000, persistedDate: 2019-01-06 17:01:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2731, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 11 minute: 1 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 16:56:13 +0000, persistedDate: 2019-01-06 17:01:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2732, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 10 minute: 56 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 16:46:00 +0000, persistedDate: 2019-01-06 16:56:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2728, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 10 minute: 46 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 16:40:50 +0000, persistedDate: 2019-01-06 16:46:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2727, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 10 minute: 40 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 16:36:37 +0000, persistedDate: 2019-01-06 16:40:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2725, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 10 minute: 36 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 16:31:44 +0000, persistedDate: 2019-01-06 16:36:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2723, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 10 minute: 31 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 16:27:29 +0000, persistedDate: 2019-01-06 16:31:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2721, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 10 minute: 27 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 16:22:36 +0000, persistedDate: 2019-01-06 16:27:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2718, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 10 minute: 22 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 16:17:42 +0000, persistedDate: 2019-01-06 16:18:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2717, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 10 minute: 17 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 16:12:28 +0000, persistedDate: 2019-01-06 16:18:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2714, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 10 minute: 12 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 16:07:22 +0000, persistedDate: 2019-01-06 16:12:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2713, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 10 minute: 7 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 16:02:28 +0000, persistedDate: 2019-01-06 16:07:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2711, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 10 minute: 2 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 15:57:12 +0000, persistedDate: 2019-01-06 16:02:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2708, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 9 minute: 57 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 15:52:20 +0000, persistedDate: 2019-01-06 15:52:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2707, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 9 minute: 52 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 15:41:59 +0000, persistedDate: 2019-01-06 15:47:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2705, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 9 minute: 41 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 15:36:56 +0000, persistedDate: 2019-01-06 15:42:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2703, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 9 minute: 36 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 15:31:50 +0000, persistedDate: 2019-01-06 15:37:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2701, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 9 minute: 31 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 15:26:46 +0000, persistedDate: 2019-01-06 15:31:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2699, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 9 minute: 26 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 14:47:12 +0000, persistedDate: 2019-01-06 14:52:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2697, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 8 minute: 47 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 14:42:08 +0000, persistedDate: 2019-01-06 14:47:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2695, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 8 minute: 42 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 14:37:06 +0000, persistedDate: 2019-01-06 14:42:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2693, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 8 minute: 37 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 14:31:58 +0000, persistedDate: 2019-01-06 14:37:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2691, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 8 minute: 31 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 14:26:54 +0000, persistedDate: 2019-01-06 14:32:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2688, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 8 minute: 26 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 14:21:48 +0000, persistedDate: 2019-01-06 14:27:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2687, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 8 minute: 21 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 14:16:44 +0000, persistedDate: 2019-01-06 14:21:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2685, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 8 minute: 16 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 14:11:40 +0000, persistedDate: 2019-01-06 14:16:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2682, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 8 minute: 11 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 14:06:36 +0000, persistedDate: 2019-01-06 14:11:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2681, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 8 minute: 6 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 14:01:30 +0000, persistedDate: 2019-01-06 14:06:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2678, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 8 minute: 1 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 13:57:17 +0000, persistedDate: 2019-01-06 14:01:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2677, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 7 minute: 57 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 13:52:25 +0000, persistedDate: 2019-01-06 13:57:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2675, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 7 minute: 52 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 13:47:23 +0000, persistedDate: 2019-01-06 13:52:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2673, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 7 minute: 47 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 13:42:16 +0000, persistedDate: 2019-01-06 13:47:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2671, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 7 minute: 42 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 13:37:13 +0000, persistedDate: 2019-01-06 13:42:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2669, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 7 minute: 37 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 13:32:06 +0000, persistedDate: 2019-01-06 13:37:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2667, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 7 minute: 32 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 13:27:00 +0000, persistedDate: 2019-01-06 13:32:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2665, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 7 minute: 27 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 13:21:56 +0000, persistedDate: 2019-01-06 13:27:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2663, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 7 minute: 21 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 13:16:52 +0000, persistedDate: 2019-01-06 13:22:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2661, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 7 minute: 16 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 13:07:33 +0000, persistedDate: 2019-01-06 13:11:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2659, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 7 minute: 7 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 13:02:40 +0000, persistedDate: 2019-01-06 13:07:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2656, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 7 minute: 2 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 12:57:36 +0000, persistedDate: 2019-01-06 13:02:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2655, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 6 minute: 57 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 12:52:30 +0000, persistedDate: 2019-01-06 12:57:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2653, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 6 minute: 52 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 12:47:28 +0000, persistedDate: 2019-01-06 12:52:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2651, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 6 minute: 47 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 12:37:18 +0000, persistedDate: 2019-01-06 12:42:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2649, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 6 minute: 37 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 12:33:26 +0000, persistedDate: 2019-01-06 12:33:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2647, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 6 minute: 33 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 12:28:08 +0000, persistedDate: 2019-01-06 12:33:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2645, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 6 minute: 28 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 12:23:04 +0000, persistedDate: 2019-01-06 12:28:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2642, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 6 minute: 23 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 12:18:07 +0000, persistedDate: 2019-01-06 12:23:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2641, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 6 minute: 18 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 12:12:54 +0000, persistedDate: 2019-01-06 12:18:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2639, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 6 minute: 12 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 12:07:50 +0000, persistedDate: 2019-01-06 12:13:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2636, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 6 minute: 7 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 12:03:34 +0000, persistedDate: 2019-01-06 12:07:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2635, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 6 minute: 3 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 11:57:40 +0000, persistedDate: 2019-01-06 12:03:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2632, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 5 minute: 57 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 11:52:36 +0000, persistedDate: 2019-01-06 11:57:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2631, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 5 minute: 52 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 11:47:32 +0000, persistedDate: 2019-01-06 11:52:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2629, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 5 minute: 47 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 11:42:31 +0000, persistedDate: 2019-01-06 11:47:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2627, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 5 minute: 42 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 11:37:25 +0000, persistedDate: 2019-01-06 11:42:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2625, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 5 minute: 37 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 11:32:18 +0000, persistedDate: 2019-01-06 11:37:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2622, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 5 minute: 32 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 11:27:14 +0000, persistedDate: 2019-01-06 11:32:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2621, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 5 minute: 27 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 11:17:55 +0000, persistedDate: 2019-01-06 11:22:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2619, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 5 minute: 17 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 11:13:02 +0000, persistedDate: 2019-01-06 11:18:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2617, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 5 minute: 13 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 11:07:56 +0000, persistedDate: 2019-01-06 11:13:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2615, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 5 minute: 7 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 11:02:52 +0000, persistedDate: 2019-01-06 11:08:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2612, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 5 minute: 2 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 10:59:05 +0000, persistedDate: 2019-01-06 10:59:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2611, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 4 minute: 59 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 10:53:42 +0000, persistedDate: 2019-01-06 10:59:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2609, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 4 minute: 53 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 10:48:38 +0000, persistedDate: 2019-01-06 10:53:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2606, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 4 minute: 48 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 10:43:34 +0000, persistedDate: 2019-01-06 10:48:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2605, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 4 minute: 43 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 10:38:30 +0000, persistedDate: 2019-01-06 10:43:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2603, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 4 minute: 38 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 10:33:26 +0000, persistedDate: 2019-01-06 10:38:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2601, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 4 minute: 33 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 10:28:22 +0000, persistedDate: 2019-01-06 10:33:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2598, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 4 minute: 28 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 10:23:34 +0000, persistedDate: 2019-01-06 10:28:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2595, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 4 minute: 23 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 10:23:32 +0000, persistedDate: 2019-01-06 10:28:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2594, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 4 minute: 23 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 10:18:12 +0000, persistedDate: 2019-01-06 10:23:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2593, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 4 minute: 18 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 10:13:06 +0000, persistedDate: 2019-01-06 10:18:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2591, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 4 minute: 13 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 10:08:02 +0000, persistedDate: 2019-01-06 10:13:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2588, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 4 minute: 8 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 10:02:58 +0000, persistedDate: 2019-01-06 10:08:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2587, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 4 minute: 2 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 09:57:54 +0000, persistedDate: 2019-01-06 10:03:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2585, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 3 minute: 57 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 09:52:48 +0000, persistedDate: 2019-01-06 09:57:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2583, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 3 minute: 52 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 09:47:43 +0000, persistedDate: 2019-01-06 09:52:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2581, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 3 minute: 47 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 09:42:40 +0000, persistedDate: 2019-01-06 09:47:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2579, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 3 minute: 42 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 09:37:36 +0000, persistedDate: 2019-01-06 09:42:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2576, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 3 minute: 37 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 09:23:24 +0000, persistedDate: 2019-01-06 09:37:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2575, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 3 minute: 23 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 09:18:36 +0000, persistedDate: 2019-01-06 09:23:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2571, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 3 minute: 18 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 09:18:34 +0000, persistedDate: 2019-01-06 09:23:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2570, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 3 minute: 18 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 09:12:26 +0000, persistedDate: 2019-01-06 09:12:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2567, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 3 minute: 12 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 09:07:08 +0000, persistedDate: 2019-01-06 09:12:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2568, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 3 minute: 7 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 09:02:04 +0000, persistedDate: 2019-01-06 09:07:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2564, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 3 minute: 2 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 08:56:58 +0000, persistedDate: 2019-01-06 09:02:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2562, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 2 minute: 56 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 08:51:54 +0000, persistedDate: 2019-01-06 08:57:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2561, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 2 minute: 51 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 08:46:50 +0000, persistedDate: 2019-01-06 08:52:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2559, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 2 minute: 46 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 08:41:46 +0000, persistedDate: 2019-01-06 08:46:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2557, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 2 minute: 41 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 08:36:45 +0000, persistedDate: 2019-01-06 08:41:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2555, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 2 minute: 36 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 08:31:35 +0000, persistedDate: 2019-01-06 08:36:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2553, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 2 minute: 31 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 08:27:22 +0000, persistedDate: 2019-01-06 08:31:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2550, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 2 minute: 27 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 08:22:30 +0000, persistedDate: 2019-01-06 08:27:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2549, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 2 minute: 22 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 08:17:26 +0000, persistedDate: 2019-01-06 08:22:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2547, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 2 minute: 17 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 08:12:21 +0000, persistedDate: 2019-01-06 08:12:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2545, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 2 minute: 12 second: 21 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 08:05:26 +0000, persistedDate: 2019-01-06 08:05:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2542, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 2 minute: 5 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 08:00:05 +0000, persistedDate: 2019-01-06 08:05:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2543, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 2 minute: 0 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 07:55:02 +0000, persistedDate: 2019-01-06 08:00:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2539, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 1 minute: 55 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 07:49:58 +0000, persistedDate: 2019-01-06 07:55:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2537, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 1 minute: 49 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 07:44:52 +0000, persistedDate: 2019-01-06 07:50:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2535, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 1 minute: 44 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 07:39:48 +0000, persistedDate: 2019-01-06 07:44:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2533, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 1 minute: 39 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 07:34:43 +0000, persistedDate: 2019-01-06 07:39:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2531, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 1 minute: 34 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 07:15:31 +0000, persistedDate: 2019-01-06 07:20:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2529, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 1 minute: 15 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 07:10:24 +0000, persistedDate: 2019-01-06 07:15:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2527, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 1 minute: 10 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 07:05:20 +0000, persistedDate: 2019-01-06 07:10:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2525, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 1 minute: 5 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 07:01:03 +0000, persistedDate: 2019-01-06 07:05:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2523, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 1 minute: 1 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 06:51:06 +0000, persistedDate: 2019-01-06 07:01:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2521, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 0 minute: 51 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 06:46:09 +0000, persistedDate: 2019-01-06 06:51:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2518, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 0 minute: 46 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 06:40:57 +0000, persistedDate: 2019-01-06 06:46:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2517, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 0 minute: 40 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 06:35:51 +0000, persistedDate: 2019-01-06 06:41:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2515, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 0 minute: 35 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 06:30:47 +0000, persistedDate: 2019-01-06 06:35:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2513, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 0 minute: 30 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 06:25:43 +0000, persistedDate: 2019-01-06 06:30:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2511, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 0 minute: 25 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 06:20:40 +0000, persistedDate: 2019-01-06 06:25:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2508, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 0 minute: 20 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 06:15:36 +0000, persistedDate: 2019-01-06 06:20:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2507, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 0 minute: 15 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 06:11:20 +0000, persistedDate: 2019-01-06 06:15:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2504, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 6 hour: 0 minute: 11 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 05:46:07 +0000, persistedDate: 2019-01-06 05:51:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2502, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 23 minute: 46 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 05:41:03 +0000, persistedDate: 2019-01-06 05:46:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2501, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 23 minute: 41 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 05:35:59 +0000, persistedDate: 2019-01-06 05:41:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2499, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 23 minute: 35 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 05:30:53 +0000, persistedDate: 2019-01-06 05:36:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2497, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 23 minute: 30 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 05:25:49 +0000, persistedDate: 2019-01-06 05:30:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2495, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 23 minute: 25 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 04:50:22 +0000, persistedDate: 2019-01-06 04:55:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2493, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 22 minute: 50 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 04:31:01 +0000, persistedDate: 2019-01-06 04:36:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2490, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 22 minute: 31 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 04:10:43 +0000, persistedDate: 2019-01-06 04:15:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2489, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 22 minute: 10 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 03:50:30 +0000, persistedDate: 2019-01-06 03:55:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2487, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 21 minute: 50 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 03:30:12 +0000, persistedDate: 2019-01-06 03:35:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2484, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 21 minute: 30 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 03:10:05 +0000, persistedDate: 2019-01-06 03:15:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2481, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 21 minute: 10 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 02:49:33 +0000, persistedDate: 2019-01-06 03:00:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2479, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 20 minute: 49 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 02:29:17 +0000, persistedDate: 2019-01-06 02:34:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2475, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 20 minute: 29 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 02:22:12 +0000, persistedDate: 2019-01-06 02:29:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2474, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 20 minute: 22 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 02:02:38 +0000, persistedDate: 2019-01-06 02:07:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2470, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 20 minute: 2 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 01:48:15 +0000, persistedDate: 2019-01-06 01:53:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2467, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 19 minute: 48 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 01:43:15 +0000, persistedDate: 2019-01-06 01:48:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2465, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 19 minute: 43 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 01:38:09 +0000, persistedDate: 2019-01-06 01:43:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2464, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 19 minute: 38 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 01:33:54 +0000, persistedDate: 2019-01-06 01:38:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2461, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 19 minute: 33 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 01:29:02 +0000, persistedDate: 2019-01-06 01:34:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2458, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 19 minute: 29 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 01:28:59 +0000, persistedDate: 2019-01-06 01:34:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2459, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 19 minute: 28 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 01:08:41 +0000, persistedDate: 2019-01-06 01:13:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2456, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 19 minute: 8 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 01:03:54 +0000, persistedDate: 2019-01-06 01:08:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2454, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 19 minute: 3 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 00:58:39 +0000, persistedDate: 2019-01-06 01:04:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2452, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 18 minute: 58 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 00:53:30 +0000, persistedDate: 2019-01-06 00:58:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2449, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 18 minute: 53 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 00:48:28 +0000, persistedDate: 2019-01-06 00:53:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2447, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 18 minute: 48 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 00:45:03 +0000, persistedDate: 2019-01-06 00:48:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2444, raw: Optional(10 bytes), title: Optional("PrimePumpEvent(length: 10, rawData: 10 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 18 minute: 45 second: 3 isLeapMonth: false , amount: 0.8, primeType: \"fixed\", programmedAmount: 0.8)"), type: Optional(LoopKit.PumpEventType.prime)) -* PersistedPumpEvent(date: 2019-01-06 00:43:23 +0000, persistedDate: 2019-01-06 00:48:33 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.resume, startDate: 2019-01-06 00:43:23 +0000, endDate: 2019-01-06 00:43:23 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("0300000072176b320513"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2445, raw: Optional(10 bytes), title: Optional("PrimePumpEvent(length: 10, rawData: 10 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 18 minute: 43 second: 23 isLeapMonth: false , amount: 11.4, primeType: \"manual\", programmedAmount: 0.0)"), type: Optional(LoopKit.PumpEventType.prime)) -* PersistedPumpEvent(date: 2019-01-06 00:41:39 +0000, persistedDate: 2019-01-06 00:48:33 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-06 00:41:39 +0000, endDate: 2019-01-06 00:41:39 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("21002769120513"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2446, raw: Optional(7 bytes), title: Optional("RewindPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 18 minute: 41 second: 39 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.rewind)) -* PersistedPumpEvent(date: 2019-01-06 00:28:10 +0000, persistedDate: 2019-01-06 00:33:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2443, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 18 minute: 28 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 00:23:04 +0000, persistedDate: 2019-01-06 00:28:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2440, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 18 minute: 23 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-06 00:02:46 +0000, persistedDate: 2019-01-06 00:08:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2439, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 18 minute: 2 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 23:43:27 +0000, persistedDate: 2019-01-05 23:48:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2437, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 17 minute: 43 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 23:23:14 +0000, persistedDate: 2019-01-05 23:28:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2435, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 17 minute: 23 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 23:02:54 +0000, persistedDate: 2019-01-05 23:08:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2433, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 17 minute: 2 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 22:42:36 +0000, persistedDate: 2019-01-05 22:47:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2427, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 16 minute: 42 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 22:22:20 +0000, persistedDate: 2019-01-05 22:27:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2425, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 16 minute: 22 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 22:02:02 +0000, persistedDate: 2019-01-05 22:12:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2421, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 16 minute: 2 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 22:00:49 +0000, persistedDate: 2019-01-05 22:02:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2420, raw: Optional(7 bytes), title: Optional("JournalEntryPumpLowReservoirPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 16 minute: 0 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 21:52:58 +0000, persistedDate: 2019-01-05 21:57:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2417, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 15 minute: 52 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 21:47:45 +0000, persistedDate: 2019-01-05 21:53:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2416, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 15 minute: 47 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 21:43:29 +0000, persistedDate: 2019-01-05 21:47:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2414, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 15 minute: 43 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 21:37:39 +0000, persistedDate: 2019-01-05 21:43:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2412, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 15 minute: 37 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 21:32:32 +0000, persistedDate: 2019-01-05 21:37:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2409, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 15 minute: 32 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 21:27:29 +0000, persistedDate: 2019-01-05 21:32:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2408, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 15 minute: 27 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 21:22:25 +0000, persistedDate: 2019-01-05 21:27:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2406, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 15 minute: 22 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 21:17:19 +0000, persistedDate: 2019-01-05 21:22:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2404, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 15 minute: 17 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 21:12:13 +0000, persistedDate: 2019-01-05 21:17:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2402, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 15 minute: 12 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 21:02:55 +0000, persistedDate: 2019-01-05 21:07:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2398, raw: Optional(7 bytes), title: Optional("JournalEntryPumpLowReservoirPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 15 minute: 2 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 21:02:05 +0000, persistedDate: 2019-01-05 21:07:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2399, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 15 minute: 2 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 20:41:47 +0000, persistedDate: 2019-01-05 20:46:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2397, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 14 minute: 41 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 20:22:20 +0000, persistedDate: 2019-01-05 20:26:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2395, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 14 minute: 22 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 20:02:13 +0000, persistedDate: 2019-01-05 20:07:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2392, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 14 minute: 2 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 18:58:47 +0000, persistedDate: 2019-01-05 19:03:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2390, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 12 minute: 58 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 16:19:58 +0000, persistedDate: 2019-01-05 18:58:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2388, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 10 minute: 19 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 16:13:13 +0000, persistedDate: 2019-01-05 16:20:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2384, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 10 minute: 13 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 16:08:01 +0000, persistedDate: 2019-01-05 16:13:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2383, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 10 minute: 8 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 16:00:43 +0000, persistedDate: 2019-01-05 16:03:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2381, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 10 minute: 0 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 16:00:41 +0000, persistedDate: 2019-01-05 16:03:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2378, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 10 minute: 0 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 15:53:43 +0000, persistedDate: 2019-01-05 15:59:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2377, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 9 minute: 53 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 15:48:41 +0000, persistedDate: 2019-01-05 15:53:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2375, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 9 minute: 48 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 15:43:35 +0000, persistedDate: 2019-01-05 15:48:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2373, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 9 minute: 43 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 15:38:31 +0000, persistedDate: 2019-01-05 15:43:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2371, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 9 minute: 38 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 15:33:27 +0000, persistedDate: 2019-01-05 15:38:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2369, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 9 minute: 33 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 15:28:23 +0000, persistedDate: 2019-01-05 15:33:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2367, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 9 minute: 28 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 15:23:17 +0000, persistedDate: 2019-01-05 15:28:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2365, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 9 minute: 23 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 15:18:13 +0000, persistedDate: 2019-01-05 15:23:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2363, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 9 minute: 18 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 15:08:05 +0000, persistedDate: 2019-01-05 15:18:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2361, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 9 minute: 8 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 15:02:59 +0000, persistedDate: 2019-01-05 15:08:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2358, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 9 minute: 2 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 14:57:57 +0000, persistedDate: 2019-01-05 15:03:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2357, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 8 minute: 57 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 14:30:34 +0000, persistedDate: 2019-01-05 14:58:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2355, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 8 minute: 30 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 14:25:31 +0000, persistedDate: 2019-01-05 14:30:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2352, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 8 minute: 25 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 14:20:25 +0000, persistedDate: 2019-01-05 14:25:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2351, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 8 minute: 20 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 14:15:19 +0000, persistedDate: 2019-01-05 14:20:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2348, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 8 minute: 15 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 13:35:33 +0000, persistedDate: 2019-01-05 14:15:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2346, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 7 minute: 35 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 13:29:40 +0000, persistedDate: 2019-01-05 13:35:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2345, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 7 minute: 29 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 13:24:32 +0000, persistedDate: 2019-01-05 13:29:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2342, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 7 minute: 24 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 13:13:25 +0000, persistedDate: 2019-01-05 13:17:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2340, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 7 minute: 13 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 11:27:45 +0000, persistedDate: 2019-01-05 13:13:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2339, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 5 minute: 27 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 11:17:31 +0000, persistedDate: 2019-01-05 11:22:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2337, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 5 minute: 17 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 11:12:24 +0000, persistedDate: 2019-01-05 11:17:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2335, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 5 minute: 12 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 11:07:24 +0000, persistedDate: 2019-01-05 11:12:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2333, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 5 minute: 7 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 09:16:09 +0000, persistedDate: 2019-01-05 11:07:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2329, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 3 minute: 16 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 08:32:15 +0000, persistedDate: 2019-01-05 09:16:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2328, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 2 minute: 32 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 06:47:43 +0000, persistedDate: 2019-01-05 08:32:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2324, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 0 minute: 47 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 06:10:00 +0000, persistedDate: 2019-01-05 06:47:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2322, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 5 hour: 0 minute: 10 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 05:14:09 +0000, persistedDate: 2019-01-05 05:19:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2321, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 23 minute: 14 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 04:13:16 +0000, persistedDate: 2019-01-05 05:14:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2319, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 22 minute: 13 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 04:08:07 +0000, persistedDate: 2019-01-05 04:13:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2316, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 22 minute: 8 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 03:47:55 +0000, persistedDate: 2019-01-05 03:53:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2314, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 21 minute: 47 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 03:42:54 +0000, persistedDate: 2019-01-05 03:48:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2312, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 21 minute: 42 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 03:27:43 +0000, persistedDate: 2019-01-05 03:32:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2311, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 21 minute: 27 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 03:14:35 +0000, persistedDate: 2019-01-05 03:27:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2308, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 21 minute: 14 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 02:48:44 +0000, persistedDate: 2019-01-05 03:07:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2304, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 20 minute: 48 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 02:13:30 +0000, persistedDate: 2019-01-05 02:18:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2302, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 20 minute: 13 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 01:53:00 +0000, persistedDate: 2019-01-05 02:03:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2300, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 19 minute: 53 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 01:32:54 +0000, persistedDate: 2019-01-05 01:38:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2294, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 19 minute: 32 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 01:18:40 +0000, persistedDate: 2019-01-05 01:23:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2291, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 19 minute: 18 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 00:58:24 +0000, persistedDate: 2019-01-05 01:03:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2289, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 18 minute: 58 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 00:48:13 +0000, persistedDate: 2019-01-05 00:58:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2285, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 18 minute: 48 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 00:43:11 +0000, persistedDate: 2019-01-05 00:48:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2283, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 18 minute: 43 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 00:38:03 +0000, persistedDate: 2019-01-05 00:43:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2280, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 18 minute: 38 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 00:33:00 +0000, persistedDate: 2019-01-05 00:38:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2278, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 18 minute: 33 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 00:27:56 +0000, persistedDate: 2019-01-05 00:33:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2276, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 18 minute: 27 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 00:21:52 +0000, persistedDate: 2019-01-05 00:28:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2275, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 18 minute: 21 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 00:16:47 +0000, persistedDate: 2019-01-05 00:21:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2273, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 18 minute: 16 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 00:12:31 +0000, persistedDate: 2019-01-05 00:16:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2271, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 18 minute: 12 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 00:07:38 +0000, persistedDate: 2019-01-05 00:12:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2268, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 18 minute: 7 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-05 00:02:33 +0000, persistedDate: 2019-01-05 00:07:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2266, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 18 minute: 2 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 23:57:30 +0000, persistedDate: 2019-01-05 00:02:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2264, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 17 minute: 57 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 23:52:25 +0000, persistedDate: 2019-01-04 23:57:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2263, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 17 minute: 52 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 23:47:22 +0000, persistedDate: 2019-01-04 23:52:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2261, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 17 minute: 47 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 23:42:15 +0000, persistedDate: 2019-01-04 23:47:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2259, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 17 minute: 42 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 23:37:09 +0000, persistedDate: 2019-01-04 23:42:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2257, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 17 minute: 37 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 23:17:00 +0000, persistedDate: 2019-01-04 23:22:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2254, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 17 minute: 17 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 22:53:21 +0000, persistedDate: 2019-01-04 22:57:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2253, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 16 minute: 53 second: 21 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 22:33:16 +0000, persistedDate: 2019-01-04 22:38:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2251, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 16 minute: 33 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 22:19:01 +0000, persistedDate: 2019-01-04 22:24:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2248, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 16 minute: 19 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 21:58:55 +0000, persistedDate: 2019-01-04 21:59:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2247, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 15 minute: 58 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 21:49:15 +0000, persistedDate: 2019-01-04 21:53:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2241, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 15 minute: 49 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 21:49:13 +0000, persistedDate: 2019-01-04 21:53:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2244, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 15 minute: 49 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 21:43:18 +0000, persistedDate: 2019-01-04 21:49:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2240, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 15 minute: 43 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 21:38:47 +0000, persistedDate: 2019-01-04 21:43:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2236, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 15 minute: 38 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 21:38:45 +0000, persistedDate: 2019-01-04 21:43:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2237, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 15 minute: 38 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 21:33:40 +0000, persistedDate: 2019-01-04 21:38:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2233, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 15 minute: 33 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 21:33:38 +0000, persistedDate: 2019-01-04 21:38:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2234, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 15 minute: 33 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 21:22:28 +0000, persistedDate: 2019-01-04 21:27:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2230, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 15 minute: 22 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 21:02:53 +0000, persistedDate: 2019-01-04 21:07:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2227, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 15 minute: 2 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 20:41:33 +0000, persistedDate: 2019-01-04 20:46:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2226, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 14 minute: 41 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 20:21:27 +0000, persistedDate: 2019-01-04 20:26:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2224, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 14 minute: 21 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 19:55:54 +0000, persistedDate: 2019-01-04 20:01:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2219, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 13 minute: 55 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 19:35:36 +0000, persistedDate: 2019-01-04 19:40:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2217, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 13 minute: 35 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 19:30:31 +0000, persistedDate: 2019-01-04 19:35:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2216, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 13 minute: 30 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 19:10:10 +0000, persistedDate: 2019-01-04 19:20:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2214, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 13 minute: 10 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 19:00:06 +0000, persistedDate: 2019-01-04 19:05:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2210, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 13 minute: 0 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 18:54:54 +0000, persistedDate: 2019-01-04 19:00:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2208, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 12 minute: 54 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 18:50:30 +0000, persistedDate: 2019-01-04 18:54:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2205, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 12 minute: 50 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 18:39:24 +0000, persistedDate: 2019-01-04 18:54:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2206, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 12 minute: 39 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 18:13:10 +0000, persistedDate: 2019-01-04 18:28:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2202, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 12 minute: 13 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:59:06 +0000, persistedDate: 2019-01-04 18:13:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2200, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 59 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:54:03 +0000, persistedDate: 2019-01-04 17:59:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2198, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 54 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:49:01 +0000, persistedDate: 2019-01-04 17:54:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2196, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 49 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:48:59 +0000, persistedDate: 2019-01-04 17:54:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2194, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 48 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:44:30 +0000, persistedDate: 2019-01-04 17:49:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2192, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 44 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:44:28 +0000, persistedDate: 2019-01-04 17:49:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2189, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 44 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:44:25 +0000, persistedDate: 2019-01-04 17:49:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2190, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 44 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:38:50 +0000, persistedDate: 2019-01-04 17:44:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2186, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 38 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:33:43 +0000, persistedDate: 2019-01-04 17:38:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2183, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 33 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:28:39 +0000, persistedDate: 2019-01-04 17:33:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2182, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 28 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:23:33 +0000, persistedDate: 2019-01-04 17:28:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2180, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 23 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:18:32 +0000, persistedDate: 2019-01-04 17:23:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2177, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 18 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:13:28 +0000, persistedDate: 2019-01-04 17:18:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2176, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 13 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:08:38 +0000, persistedDate: 2019-01-04 17:13:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2172, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 8 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:08:36 +0000, persistedDate: 2019-01-04 17:13:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2174, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 8 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 17:03:17 +0000, persistedDate: 2019-01-04 17:08:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2170, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 11 minute: 3 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 16:58:03 +0000, persistedDate: 2019-01-04 16:58:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2167, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 10 minute: 58 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 16:53:07 +0000, persistedDate: 2019-01-04 16:58:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2165, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 10 minute: 53 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 16:48:26 +0000, persistedDate: 2019-01-04 16:48:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2163, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 10 minute: 48 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 16:43:57 +0000, persistedDate: 2019-01-04 16:48:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2161, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 10 minute: 43 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 16:38:56 +0000, persistedDate: 2019-01-04 16:44:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2159, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 10 minute: 38 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 16:33:48 +0000, persistedDate: 2019-01-04 16:39:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2157, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 10 minute: 33 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 16:28:45 +0000, persistedDate: 2019-01-04 16:33:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2155, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 10 minute: 28 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 16:23:39 +0000, persistedDate: 2019-01-04 16:28:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2153, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 10 minute: 23 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 16:18:35 +0000, persistedDate: 2019-01-04 16:23:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2152, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 10 minute: 18 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 16:13:33 +0000, persistedDate: 2019-01-04 16:18:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2150, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 10 minute: 13 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 16:08:27 +0000, persistedDate: 2019-01-04 16:13:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2147, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 10 minute: 8 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 16:03:26 +0000, persistedDate: 2019-01-04 16:08:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2145, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 10 minute: 3 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 15:58:18 +0000, persistedDate: 2019-01-04 16:03:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2144, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 9 minute: 58 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 15:53:26 +0000, persistedDate: 2019-01-04 15:53:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2140, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 9 minute: 53 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 15:49:02 +0000, persistedDate: 2019-01-04 15:53:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2141, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 9 minute: 49 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 15:44:04 +0000, persistedDate: 2019-01-04 15:49:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2137, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 9 minute: 44 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 15:39:03 +0000, persistedDate: 2019-01-04 15:44:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2136, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 9 minute: 39 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 15:34:03 +0000, persistedDate: 2019-01-04 15:39:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2133, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 9 minute: 34 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 15:29:28 +0000, persistedDate: 2019-01-04 15:34:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2132, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 9 minute: 29 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 15:29:26 +0000, persistedDate: 2019-01-04 15:34:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2131, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 9 minute: 29 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 15:24:47 +0000, persistedDate: 2019-01-04 15:29:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2127, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 9 minute: 24 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 15:19:42 +0000, persistedDate: 2019-01-04 15:24:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2126, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 9 minute: 19 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 15:14:37 +0000, persistedDate: 2019-01-04 15:19:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2123, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 9 minute: 14 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 15:09:33 +0000, persistedDate: 2019-01-04 15:14:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2122, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 9 minute: 9 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 15:04:32 +0000, persistedDate: 2019-01-04 15:09:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2120, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 9 minute: 4 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 14:59:27 +0000, persistedDate: 2019-01-04 15:04:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2118, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 8 minute: 59 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 14:54:23 +0000, persistedDate: 2019-01-04 14:59:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2116, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 8 minute: 54 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 14:49:14 +0000, persistedDate: 2019-01-04 14:54:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2113, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 8 minute: 49 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 14:44:10 +0000, persistedDate: 2019-01-04 14:49:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2112, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 8 minute: 44 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 14:39:06 +0000, persistedDate: 2019-01-04 14:44:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2110, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 8 minute: 39 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 14:34:02 +0000, persistedDate: 2019-01-04 14:39:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2108, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 8 minute: 34 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 14:28:56 +0000, persistedDate: 2019-01-04 14:34:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2105, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 8 minute: 28 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 14:23:53 +0000, persistedDate: 2019-01-04 14:29:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2104, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 8 minute: 23 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 14:18:48 +0000, persistedDate: 2019-01-04 14:23:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2102, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 8 minute: 18 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 14:13:44 +0000, persistedDate: 2019-01-04 14:18:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2100, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 8 minute: 13 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 14:08:40 +0000, persistedDate: 2019-01-04 14:13:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2098, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 8 minute: 8 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 14:03:34 +0000, persistedDate: 2019-01-04 14:08:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2095, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 8 minute: 3 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 13:58:30 +0000, persistedDate: 2019-01-04 14:03:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2094, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 7 minute: 58 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 13:53:29 +0000, persistedDate: 2019-01-04 13:58:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2092, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 7 minute: 53 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 13:48:25 +0000, persistedDate: 2019-01-04 13:53:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2090, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 7 minute: 48 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 13:43:18 +0000, persistedDate: 2019-01-04 13:48:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2088, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 7 minute: 43 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 13:38:14 +0000, persistedDate: 2019-01-04 13:43:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2086, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 7 minute: 38 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 13:33:10 +0000, persistedDate: 2019-01-04 13:38:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2084, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 7 minute: 33 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 13:28:26 +0000, persistedDate: 2019-01-04 13:28:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2082, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 7 minute: 28 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 13:23:00 +0000, persistedDate: 2019-01-04 13:28:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2081, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 7 minute: 23 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 13:17:48 +0000, persistedDate: 2019-01-04 13:23:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2077, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 7 minute: 17 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 13:12:50 +0000, persistedDate: 2019-01-04 13:23:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2076, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 7 minute: 12 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 13:08:35 +0000, persistedDate: 2019-01-04 13:12:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2073, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 7 minute: 8 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 13:02:40 +0000, persistedDate: 2019-01-04 13:08:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2071, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 7 minute: 2 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 12:57:38 +0000, persistedDate: 2019-01-04 13:02:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2069, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 6 minute: 57 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 12:52:32 +0000, persistedDate: 2019-01-04 12:57:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2067, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 6 minute: 52 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 12:47:43 +0000, persistedDate: 2019-01-04 12:52:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2065, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 6 minute: 47 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 12:42:27 +0000, persistedDate: 2019-01-04 12:47:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2064, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 6 minute: 42 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 12:37:18 +0000, persistedDate: 2019-01-04 12:42:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2062, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 6 minute: 37 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 12:32:04 +0000, persistedDate: 2019-01-04 12:32:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2059, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 6 minute: 32 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 12:22:04 +0000, persistedDate: 2019-01-04 12:32:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2058, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 6 minute: 22 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 12:17:00 +0000, persistedDate: 2019-01-04 12:22:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2055, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 6 minute: 17 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 12:11:56 +0000, persistedDate: 2019-01-04 12:17:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2054, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 6 minute: 11 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 12:06:50 +0000, persistedDate: 2019-01-04 12:12:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2051, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 6 minute: 6 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 12:01:55 +0000, persistedDate: 2019-01-04 12:06:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2050, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 6 minute: 1 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 11:56:42 +0000, persistedDate: 2019-01-04 12:02:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2047, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 5 minute: 56 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 11:37:26 +0000, persistedDate: 2019-01-04 11:56:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2046, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 5 minute: 37 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 11:33:18 +0000, persistedDate: 2019-01-04 11:37:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2044, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 5 minute: 33 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 11:28:14 +0000, persistedDate: 2019-01-04 11:33:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2042, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 5 minute: 28 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 11:23:10 +0000, persistedDate: 2019-01-04 11:28:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2040, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 5 minute: 23 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 11:18:06 +0000, persistedDate: 2019-01-04 11:23:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2038, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 5 minute: 18 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 11:13:02 +0000, persistedDate: 2019-01-04 11:18:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2035, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 5 minute: 13 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 11:07:56 +0000, persistedDate: 2019-01-04 11:13:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2033, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 5 minute: 7 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 11:02:54 +0000, persistedDate: 2019-01-04 11:08:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2032, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 5 minute: 2 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 10:57:48 +0000, persistedDate: 2019-01-04 11:02:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2030, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 4 minute: 57 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 10:52:44 +0000, persistedDate: 2019-01-04 10:57:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2028, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 4 minute: 52 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 10:47:38 +0000, persistedDate: 2019-01-04 10:52:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2026, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 4 minute: 47 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 10:42:36 +0000, persistedDate: 2019-01-04 10:47:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2024, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 4 minute: 42 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 10:37:30 +0000, persistedDate: 2019-01-04 10:42:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2021, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 4 minute: 37 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 10:32:29 +0000, persistedDate: 2019-01-04 10:37:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2019, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 4 minute: 32 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 10:28:11 +0000, persistedDate: 2019-01-04 10:32:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2017, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 4 minute: 28 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 10:18:24 +0000, persistedDate: 2019-01-04 10:23:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2015, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 4 minute: 18 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 10:13:08 +0000, persistedDate: 2019-01-04 10:18:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2013, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 4 minute: 13 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 10:08:04 +0000, persistedDate: 2019-01-04 10:13:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2012, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 4 minute: 8 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 10:03:22 +0000, persistedDate: 2019-01-04 10:03:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2010, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 4 minute: 3 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 09:57:54 +0000, persistedDate: 2019-01-04 10:03:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2009, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 3 minute: 57 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 09:52:53 +0000, persistedDate: 2019-01-04 09:57:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2006, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 3 minute: 52 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 09:47:58 +0000, persistedDate: 2019-01-04 09:48:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2004, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 3 minute: 47 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 09:42:49 +0000, persistedDate: 2019-01-04 09:48:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2003, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 3 minute: 42 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 09:37:36 +0000, persistedDate: 2019-01-04 09:42:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p2000, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 3 minute: 37 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 09:32:32 +0000, persistedDate: 2019-01-04 09:37:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1997, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 3 minute: 32 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 09:27:29 +0000, persistedDate: 2019-01-04 09:32:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1996, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 3 minute: 27 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 09:22:29 +0000, persistedDate: 2019-01-04 09:27:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1993, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 3 minute: 22 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 09:18:18 +0000, persistedDate: 2019-01-04 09:22:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1992, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 3 minute: 18 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 09:13:14 +0000, persistedDate: 2019-01-04 09:18:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1990, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 3 minute: 13 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 09:08:10 +0000, persistedDate: 2019-01-04 09:13:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1987, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 3 minute: 8 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 09:03:07 +0000, persistedDate: 2019-01-04 09:08:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1986, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 3 minute: 3 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 08:58:02 +0000, persistedDate: 2019-01-04 09:03:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1983, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 2 minute: 58 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 08:52:56 +0000, persistedDate: 2019-01-04 08:58:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1981, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 2 minute: 52 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 08:48:41 +0000, persistedDate: 2019-01-04 08:53:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1979, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 2 minute: 48 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 08:43:48 +0000, persistedDate: 2019-01-04 08:48:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1978, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 2 minute: 43 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 08:38:42 +0000, persistedDate: 2019-01-04 08:43:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1976, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 2 minute: 38 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 08:33:38 +0000, persistedDate: 2019-01-04 08:38:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1974, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 2 minute: 33 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 08:28:34 +0000, persistedDate: 2019-01-04 08:33:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1971, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 2 minute: 28 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 08:08:19 +0000, persistedDate: 2019-01-04 08:13:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1970, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 2 minute: 8 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 07:58:10 +0000, persistedDate: 2019-01-04 08:04:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1966, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 1 minute: 58 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 07:53:13 +0000, persistedDate: 2019-01-04 07:58:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1963, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 1 minute: 53 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 07:32:48 +0000, persistedDate: 2019-01-04 07:37:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1961, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 1 minute: 32 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 07:12:31 +0000, persistedDate: 2019-01-04 07:17:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1960, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 1 minute: 12 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 06:53:03 +0000, persistedDate: 2019-01-04 06:57:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1958, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 0 minute: 53 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 06:42:53 +0000, persistedDate: 2019-01-04 06:48:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1954, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 0 minute: 42 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 06:35:58 +0000, persistedDate: 2019-01-04 06:42:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1952, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 0 minute: 35 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 06:30:50 +0000, persistedDate: 2019-01-04 06:36:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1949, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 0 minute: 30 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 06:25:45 +0000, persistedDate: 2019-01-04 06:30:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1948, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 0 minute: 25 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 06:20:42 +0000, persistedDate: 2019-01-04 06:25:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1946, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 0 minute: 20 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 06:15:41 +0000, persistedDate: 2019-01-04 06:20:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1944, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 0 minute: 15 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 06:10:43 +0000, persistedDate: 2019-01-04 06:15:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1941, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 0 minute: 10 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 06:05:33 +0000, persistedDate: 2019-01-04 06:10:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1939, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 0 minute: 5 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 06:00:41 +0000, persistedDate: 2019-01-04 06:05:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1938, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 4 hour: 0 minute: 0 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 05:44:26 +0000, persistedDate: 2019-01-04 06:00:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1934, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 23 minute: 44 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 05:39:04 +0000, persistedDate: 2019-01-04 06:00:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1933, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 23 minute: 39 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 05:29:11 +0000, persistedDate: 2019-01-04 05:34:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1930, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 23 minute: 29 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 05:29:09 +0000, persistedDate: 2019-01-04 05:34:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1929, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 23 minute: 29 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 05:23:49 +0000, persistedDate: 2019-01-04 05:29:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1926, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 23 minute: 23 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 04:54:26 +0000, persistedDate: 2019-01-04 04:59:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1924, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 22 minute: 54 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 04:48:17 +0000, persistedDate: 2019-01-04 04:54:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1922, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 22 minute: 48 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 04:36:10 +0000, persistedDate: 2019-01-04 04:41:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1919, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 22 minute: 36 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 04:20:56 +0000, persistedDate: 2019-01-04 04:26:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1918, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 22 minute: 20 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 04:05:39 +0000, persistedDate: 2019-01-04 04:10:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1916, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 22 minute: 5 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 03:45:24 +0000, persistedDate: 2019-01-04 03:50:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1911, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 21 minute: 45 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 03:15:55 +0000, persistedDate: 2019-01-04 03:21:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1908, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 21 minute: 15 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 02:55:38 +0000, persistedDate: 2019-01-04 03:00:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1906, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 20 minute: 55 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 02:35:22 +0000, persistedDate: 2019-01-04 02:40:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1904, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 20 minute: 35 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 02:16:03 +0000, persistedDate: 2019-01-04 02:21:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1900, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 20 minute: 16 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 01:55:45 +0000, persistedDate: 2019-01-04 02:00:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1897, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 19 minute: 55 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 01:36:33 +0000, persistedDate: 2019-01-04 01:45:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1895, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 19 minute: 36 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 01:27:15 +0000, persistedDate: 2019-01-04 01:31:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1891, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 19 minute: 27 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 01:22:14 +0000, persistedDate: 2019-01-04 01:27:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1890, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 19 minute: 22 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 01:16:09 +0000, persistedDate: 2019-01-04 01:22:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1888, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 19 minute: 16 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 01:11:05 +0000, persistedDate: 2019-01-04 01:16:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1886, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 19 minute: 11 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 01:06:01 +0000, persistedDate: 2019-01-04 01:11:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1884, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 19 minute: 6 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 00:55:53 +0000, persistedDate: 2019-01-04 01:01:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1882, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 18 minute: 55 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 00:50:47 +0000, persistedDate: 2019-01-04 00:55:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1880, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 18 minute: 50 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 00:45:44 +0000, persistedDate: 2019-01-04 00:50:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1877, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 18 minute: 45 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 00:25:28 +0000, persistedDate: 2019-01-04 00:30:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1875, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 18 minute: 25 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 00:20:24 +0000, persistedDate: 2019-01-04 00:25:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1874, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 18 minute: 20 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 00:10:16 +0000, persistedDate: 2019-01-04 00:15:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1872, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 18 minute: 10 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 00:05:09 +0000, persistedDate: 2019-01-04 00:10:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1870, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 18 minute: 5 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-04 00:00:06 +0000, persistedDate: 2019-01-04 00:05:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1867, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 18 minute: 0 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 23:54:59 +0000, persistedDate: 2019-01-04 00:00:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1866, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 17 minute: 54 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 23:49:55 +0000, persistedDate: 2019-01-03 23:55:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1864, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 17 minute: 49 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 23:44:51 +0000, persistedDate: 2019-01-03 23:50:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1861, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 17 minute: 44 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 23:40:36 +0000, persistedDate: 2019-01-03 23:44:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1860, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 17 minute: 40 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 23:35:43 +0000, persistedDate: 2019-01-03 23:40:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1858, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 17 minute: 35 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 23:25:33 +0000, persistedDate: 2019-01-03 23:30:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1856, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 17 minute: 25 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 23:20:32 +0000, persistedDate: 2019-01-03 23:25:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1854, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 17 minute: 20 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 23:15:28 +0000, persistedDate: 2019-01-03 23:20:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1852, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 17 minute: 15 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 23:10:24 +0000, persistedDate: 2019-01-03 23:15:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1850, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 17 minute: 10 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 23:06:06 +0000, persistedDate: 2019-01-03 23:10:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1848, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 17 minute: 6 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 23:00:11 +0000, persistedDate: 2019-01-03 23:06:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1846, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 17 minute: 0 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 22:55:07 +0000, persistedDate: 2019-01-03 23:00:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1843, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 16 minute: 55 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 22:50:03 +0000, persistedDate: 2019-01-03 22:55:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1842, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 16 minute: 50 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 22:44:57 +0000, persistedDate: 2019-01-03 22:50:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1840, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 16 minute: 44 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 22:39:53 +0000, persistedDate: 2019-01-03 22:45:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1838, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 16 minute: 39 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 22:34:49 +0000, persistedDate: 2019-01-03 22:39:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1835, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 16 minute: 34 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 22:14:31 +0000, persistedDate: 2019-01-03 22:19:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1834, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 16 minute: 14 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 21:51:02 +0000, persistedDate: 2019-01-03 21:55:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1831, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 15 minute: 51 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 21:08:28 +0000, persistedDate: 2019-01-03 21:13:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1829, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 15 minute: 8 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 20:48:09 +0000, persistedDate: 2019-01-03 20:52:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1828, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 14 minute: 48 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 20:43:01 +0000, persistedDate: 2019-01-03 20:48:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1826, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 14 minute: 43 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 20:21:55 +0000, persistedDate: 2019-01-03 20:27:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1823, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 14 minute: 21 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 20:02:26 +0000, persistedDate: 2019-01-03 20:06:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1819, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 14 minute: 2 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 19:42:22 +0000, persistedDate: 2019-01-03 19:47:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1817, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 13 minute: 42 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 19:23:19 +0000, persistedDate: 2019-01-03 19:28:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1812, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 13 minute: 23 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 19:23:17 +0000, persistedDate: 2019-01-03 19:28:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1814, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 13 minute: 23 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 19:01:43 +0000, persistedDate: 2019-01-03 19:06:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1811, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 13 minute: 1 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 18:41:30 +0000, persistedDate: 2019-01-03 18:46:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1809, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 12 minute: 41 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 18:21:59 +0000, persistedDate: 2019-01-03 18:31:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1805, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 12 minute: 21 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 18:06:34 +0000, persistedDate: 2019-01-03 18:07:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1800, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 12 minute: 6 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 17:56:31 +0000, persistedDate: 2019-01-03 18:07:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1787, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 11 minute: 56 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 17:50:54 +0000, persistedDate: 2019-01-03 18:07:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1803, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 11 minute: 50 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 17:46:29 +0000, persistedDate: 2019-01-03 18:07:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1784, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 11 minute: 46 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 17:46:23 +0000, persistedDate: 2019-01-03 18:07:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1789, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 11 minute: 46 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 17:39:51 +0000, persistedDate: 2019-01-03 18:07:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1801, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 11 minute: 39 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 17:34:19 +0000, persistedDate: 2019-01-03 18:07:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1796, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 11 minute: 34 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 17:34:16 +0000, persistedDate: 2019-01-03 18:07:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1798, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 11 minute: 34 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 17:25:58 +0000, persistedDate: 2019-01-03 18:07:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1799, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 11 minute: 25 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 16:59:58 +0000, persistedDate: 2019-01-03 18:07:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1802, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 10 minute: 59 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 16:54:48 +0000, persistedDate: 2019-01-03 17:00:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1783, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 10 minute: 54 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 16:49:44 +0000, persistedDate: 2019-01-03 16:54:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1781, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 10 minute: 49 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 16:44:40 +0000, persistedDate: 2019-01-03 16:49:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1778, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 10 minute: 44 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 16:39:36 +0000, persistedDate: 2019-01-03 16:44:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1776, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 10 minute: 39 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 16:34:32 +0000, persistedDate: 2019-01-03 16:39:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1775, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 10 minute: 34 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 16:29:28 +0000, persistedDate: 2019-01-03 16:34:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1773, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 10 minute: 29 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 16:24:25 +0000, persistedDate: 2019-01-03 16:29:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1771, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 10 minute: 24 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 16:19:18 +0000, persistedDate: 2019-01-03 16:24:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1768, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 10 minute: 19 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 16:14:14 +0000, persistedDate: 2019-01-03 16:19:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1767, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 10 minute: 14 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 16:09:09 +0000, persistedDate: 2019-01-03 16:14:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1765, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 10 minute: 9 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 16:04:04 +0000, persistedDate: 2019-01-03 16:09:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1763, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 10 minute: 4 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 15:59:01 +0000, persistedDate: 2019-01-03 16:04:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1760, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 9 minute: 59 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 15:54:17 +0000, persistedDate: 2019-01-03 15:54:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1759, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 9 minute: 54 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 15:48:53 +0000, persistedDate: 2019-01-03 15:54:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1757, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 9 minute: 48 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 15:43:46 +0000, persistedDate: 2019-01-03 15:48:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1755, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 9 minute: 43 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 15:38:42 +0000, persistedDate: 2019-01-03 15:43:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1752, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 9 minute: 38 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 15:34:27 +0000, persistedDate: 2019-01-03 15:38:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1751, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 9 minute: 34 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 15:29:34 +0000, persistedDate: 2019-01-03 15:34:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1749, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 9 minute: 29 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 15:24:30 +0000, persistedDate: 2019-01-03 15:29:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1747, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 9 minute: 24 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 15:19:27 +0000, persistedDate: 2019-01-03 15:24:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1745, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 9 minute: 19 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 15:14:23 +0000, persistedDate: 2019-01-03 15:19:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1743, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 9 minute: 14 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 15:09:16 +0000, persistedDate: 2019-01-03 15:14:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1741, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 9 minute: 9 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 15:04:10 +0000, persistedDate: 2019-01-03 15:09:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1739, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 9 minute: 4 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 14:59:06 +0000, persistedDate: 2019-01-03 15:04:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1737, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 8 minute: 59 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 14:54:02 +0000, persistedDate: 2019-01-03 14:59:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1735, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 8 minute: 54 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 14:49:46 +0000, persistedDate: 2019-01-03 14:54:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1733, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 8 minute: 49 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 14:43:54 +0000, persistedDate: 2019-01-03 14:49:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1731, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 8 minute: 43 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 14:38:48 +0000, persistedDate: 2019-01-03 14:43:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1729, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 8 minute: 38 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 14:28:40 +0000, persistedDate: 2019-01-03 14:33:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1726, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 8 minute: 28 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 14:23:42 +0000, persistedDate: 2019-01-03 14:28:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1725, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 8 minute: 23 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 14:18:30 +0000, persistedDate: 2019-01-03 14:23:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1723, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 8 minute: 18 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 14:13:29 +0000, persistedDate: 2019-01-03 14:18:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1721, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 8 minute: 13 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 14:08:25 +0000, persistedDate: 2019-01-03 14:13:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1718, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 8 minute: 8 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 14:03:42 +0000, persistedDate: 2019-01-03 14:04:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1714, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 8 minute: 3 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 13:58:14 +0000, persistedDate: 2019-01-03 14:04:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1715, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 7 minute: 58 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 13:48:04 +0000, persistedDate: 2019-01-03 13:53:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1713, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 7 minute: 48 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 13:43:00 +0000, persistedDate: 2019-01-03 13:48:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1711, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 7 minute: 43 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 13:37:56 +0000, persistedDate: 2019-01-03 13:43:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1709, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 7 minute: 37 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 13:32:58 +0000, persistedDate: 2019-01-03 13:38:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1707, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 7 minute: 32 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 13:12:34 +0000, persistedDate: 2019-01-03 13:17:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1704, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 7 minute: 12 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 13:07:32 +0000, persistedDate: 2019-01-03 13:12:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1702, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 7 minute: 7 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 13:02:30 +0000, persistedDate: 2019-01-03 13:07:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1701, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 7 minute: 2 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 12:57:23 +0000, persistedDate: 2019-01-03 13:02:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1698, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 6 minute: 57 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 12:52:15 +0000, persistedDate: 2019-01-03 12:57:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1695, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 6 minute: 52 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 12:48:00 +0000, persistedDate: 2019-01-03 12:52:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1693, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 6 minute: 48 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 12:42:14 +0000, persistedDate: 2019-01-03 12:48:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1691, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 6 minute: 42 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 12:37:01 +0000, persistedDate: 2019-01-03 12:42:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1689, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 6 minute: 37 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 12:31:57 +0000, persistedDate: 2019-01-03 12:37:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1687, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 6 minute: 31 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 12:26:53 +0000, persistedDate: 2019-01-03 12:32:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1685, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 6 minute: 26 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 12:21:52 +0000, persistedDate: 2019-01-03 12:26:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1683, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 6 minute: 21 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 12:16:43 +0000, persistedDate: 2019-01-03 12:21:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1681, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 6 minute: 16 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 12:11:39 +0000, persistedDate: 2019-01-03 12:16:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1678, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 6 minute: 11 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 12:01:29 +0000, persistedDate: 2019-01-03 12:06:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1677, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 6 minute: 1 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 11:56:28 +0000, persistedDate: 2019-01-03 12:01:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1675, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 5 minute: 56 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 11:51:24 +0000, persistedDate: 2019-01-03 11:56:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1673, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 5 minute: 51 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 11:46:20 +0000, persistedDate: 2019-01-03 11:51:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1671, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 5 minute: 46 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 11:41:11 +0000, persistedDate: 2019-01-03 11:46:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1669, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 5 minute: 41 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 11:36:07 +0000, persistedDate: 2019-01-03 11:41:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1667, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 5 minute: 36 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 11:31:03 +0000, persistedDate: 2019-01-03 11:36:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1665, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 5 minute: 31 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 11:25:59 +0000, persistedDate: 2019-01-03 11:31:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1663, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 5 minute: 25 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 11:21:02 +0000, persistedDate: 2019-01-03 11:26:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1660, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 5 minute: 21 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 11:15:49 +0000, persistedDate: 2019-01-03 11:21:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1658, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 5 minute: 15 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 11:10:59 +0000, persistedDate: 2019-01-03 11:15:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1657, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 5 minute: 10 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 11:05:41 +0000, persistedDate: 2019-01-03 11:11:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1655, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 5 minute: 5 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 11:00:35 +0000, persistedDate: 2019-01-03 11:05:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1653, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 5 minute: 0 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 10:55:31 +0000, persistedDate: 2019-01-03 11:00:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1650, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 4 minute: 55 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 10:35:13 +0000, persistedDate: 2019-01-03 10:40:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1649, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 4 minute: 35 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 10:30:09 +0000, persistedDate: 2019-01-03 10:35:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1647, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 4 minute: 30 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 10:25:05 +0000, persistedDate: 2019-01-03 10:30:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1644, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 4 minute: 25 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 10:20:01 +0000, persistedDate: 2019-01-03 10:25:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1643, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 4 minute: 20 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 10:14:55 +0000, persistedDate: 2019-01-03 10:20:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1640, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 4 minute: 14 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 10:09:51 +0000, persistedDate: 2019-01-03 10:15:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1639, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 4 minute: 9 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 10:04:47 +0000, persistedDate: 2019-01-03 10:09:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1636, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 4 minute: 4 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 09:54:37 +0000, persistedDate: 2019-01-03 09:59:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1635, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 3 minute: 54 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 09:49:33 +0000, persistedDate: 2019-01-03 09:54:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1633, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 3 minute: 49 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 09:39:27 +0000, persistedDate: 2019-01-03 09:44:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1631, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 3 minute: 39 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 09:19:07 +0000, persistedDate: 2019-01-03 09:24:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1628, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 3 minute: 19 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 08:58:49 +0000, persistedDate: 2019-01-03 09:03:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1627, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 2 minute: 58 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 08:39:09 +0000, persistedDate: 2019-01-03 08:43:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1625, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 2 minute: 39 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 08:14:13 +0000, persistedDate: 2019-01-03 08:20:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1622, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 2 minute: 14 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 07:52:56 +0000, persistedDate: 2019-01-03 07:58:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1618, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 1 minute: 52 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 07:47:48 +0000, persistedDate: 2019-01-03 07:52:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1617, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 1 minute: 47 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 07:27:33 +0000, persistedDate: 2019-01-03 07:32:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1615, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 1 minute: 27 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 06:58:05 +0000, persistedDate: 2019-01-03 07:03:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1608, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 0 minute: 58 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 06:52:59 +0000, persistedDate: 2019-01-03 06:58:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1606, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 0 minute: 52 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 06:47:57 +0000, persistedDate: 2019-01-03 06:53:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1604, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 3 hour: 0 minute: 47 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 03:53:28 +0000, persistedDate: 2019-01-03 04:04:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1590, raw: Optional(10 bytes), title: Optional("PrimePumpEvent(length: 10, rawData: 10 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 21 minute: 53 second: 28 isLeapMonth: false , amount: 0.8, primeType: \"fixed\", programmedAmount: 0.8)"), type: Optional(LoopKit.PumpEventType.prime)) -* PersistedPumpEvent(date: 2019-01-03 03:50:47 +0000, persistedDate: 2019-01-03 04:04:41 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.resume, startDate: 2019-01-03 03:50:47 +0000, endDate: 2019-01-03 03:50:47 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("030000001e2f72350213"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1591, raw: Optional(10 bytes), title: Optional("PrimePumpEvent(length: 10, rawData: 10 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 21 minute: 50 second: 47 isLeapMonth: false , amount: 3.0, primeType: \"manual\", programmedAmount: 0.0)"), type: Optional(LoopKit.PumpEventType.prime)) -* PersistedPumpEvent(date: 2019-01-03 03:47:57 +0000, persistedDate: 2019-01-03 04:04:41 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-03 03:47:57 +0000, endDate: 2019-01-03 03:47:57 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("2100396f150213"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1592, raw: Optional(7 bytes), title: Optional("RewindPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 21 minute: 47 second: 57 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.rewind)) -* PersistedPumpEvent(date: 2019-01-03 02:23:12 +0000, persistedDate: 2019-01-03 02:28:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1587, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 20 minute: 23 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 01:57:47 +0000, persistedDate: 2019-01-03 02:02:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1584, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 19 minute: 57 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 01:52:42 +0000, persistedDate: 2019-01-03 01:57:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1582, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 19 minute: 52 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 01:47:38 +0000, persistedDate: 2019-01-03 01:52:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1581, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 19 minute: 47 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 01:42:43 +0000, persistedDate: 2019-01-03 01:47:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1579, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 19 minute: 42 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 01:38:29 +0000, persistedDate: 2019-01-03 01:42:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1577, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 19 minute: 38 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 01:29:21 +0000, persistedDate: 2019-01-03 01:34:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1575, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 19 minute: 29 second: 21 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 01:00:02 +0000, persistedDate: 2019-01-03 01:05:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1573, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 19 minute: 0 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 00:55:01 +0000, persistedDate: 2019-01-03 01:00:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1567, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 18 minute: 55 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 00:54:58 +0000, persistedDate: 2019-01-03 01:00:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1571, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 18 minute: 54 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 00:49:50 +0000, persistedDate: 2019-01-03 00:55:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1565, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 18 minute: 49 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 00:44:44 +0000, persistedDate: 2019-01-03 00:49:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1564, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 18 minute: 44 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 00:19:58 +0000, persistedDate: 2019-01-03 00:25:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1562, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 18 minute: 19 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 00:19:55 +0000, persistedDate: 2019-01-03 00:25:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1561, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 18 minute: 19 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 00:07:17 +0000, persistedDate: 2019-01-03 00:19:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1557, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 18 minute: 7 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-03 00:02:05 +0000, persistedDate: 2019-01-03 00:07:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1555, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 18 minute: 2 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 23:57:00 +0000, persistedDate: 2019-01-03 00:02:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1554, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 17 minute: 57 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 23:31:38 +0000, persistedDate: 2019-01-02 23:57:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1551, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 17 minute: 31 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 22:20:26 +0000, persistedDate: 2019-01-02 22:24:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1548, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 16 minute: 20 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 21:08:58 +0000, persistedDate: 2019-01-02 21:09:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1546, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 15 minute: 8 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 20:58:37 +0000, persistedDate: 2019-01-02 21:09:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1543, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 14 minute: 58 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 20:54:23 +0000, persistedDate: 2019-01-02 20:58:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1538, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 14 minute: 54 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 20:49:14 +0000, persistedDate: 2019-01-02 20:58:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1539, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 14 minute: 49 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 20:43:21 +0000, persistedDate: 2019-01-02 20:49:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1537, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 14 minute: 43 second: 21 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 20:38:53 +0000, persistedDate: 2019-01-02 20:39:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1534, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 14 minute: 38 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 20:17:56 +0000, persistedDate: 2019-01-02 20:28:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1532, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 14 minute: 17 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 20:12:48 +0000, persistedDate: 2019-01-02 20:18:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1529, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 14 minute: 12 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 19:57:38 +0000, persistedDate: 2019-01-02 19:58:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1527, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 13 minute: 57 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 19:36:15 +0000, persistedDate: 2019-01-02 19:41:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1525, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 13 minute: 36 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 19:16:56 +0000, persistedDate: 2019-01-02 19:22:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1523, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 13 minute: 16 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 18:56:42 +0000, persistedDate: 2019-01-02 19:01:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1521, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 12 minute: 56 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 18:16:08 +0000, persistedDate: 2019-01-02 18:22:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1517, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 12 minute: 16 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 18:05:56 +0000, persistedDate: 2019-01-02 18:11:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1514, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 12 minute: 5 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 18:01:08 +0000, persistedDate: 2019-01-02 18:01:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1513, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 12 minute: 1 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 17:56:57 +0000, persistedDate: 2019-01-02 18:01:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1512, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 11 minute: 56 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 17:50:46 +0000, persistedDate: 2019-01-02 17:56:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1509, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 11 minute: 50 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 17:45:41 +0000, persistedDate: 2019-01-02 17:50:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1507, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 11 minute: 45 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 17:40:38 +0000, persistedDate: 2019-01-02 17:45:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1505, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 11 minute: 40 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 17:35:45 +0000, persistedDate: 2019-01-02 17:40:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1502, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 11 minute: 35 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 17:30:34 +0000, persistedDate: 2019-01-02 17:35:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1501, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 11 minute: 30 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 17:25:39 +0000, persistedDate: 2019-01-02 17:30:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1492, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 11 minute: 25 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 17:25:35 +0000, persistedDate: 2019-01-02 17:30:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1496, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 11 minute: 25 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 17:25:29 +0000, persistedDate: 2019-01-02 17:30:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1498, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 11 minute: 25 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 17:18:17 +0000, persistedDate: 2019-01-02 17:30:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1488, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 11 minute: 18 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 17:13:24 +0000, persistedDate: 2019-01-02 17:30:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1494, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 11 minute: 13 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 17:08:04 +0000, persistedDate: 2019-01-02 17:30:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1497, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 11 minute: 8 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 17:02:58 +0000, persistedDate: 2019-01-02 17:08:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1487, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 11 minute: 2 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 16:57:54 +0000, persistedDate: 2019-01-02 17:03:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1485, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 10 minute: 57 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 16:52:52 +0000, persistedDate: 2019-01-02 16:57:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1482, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 10 minute: 52 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 16:47:46 +0000, persistedDate: 2019-01-02 16:52:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1480, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 10 minute: 47 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 16:42:42 +0000, persistedDate: 2019-01-02 16:47:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1479, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 10 minute: 42 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 16:37:36 +0000, persistedDate: 2019-01-02 16:42:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1477, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 10 minute: 37 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 16:32:32 +0000, persistedDate: 2019-01-02 16:37:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1475, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 10 minute: 32 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 16:22:24 +0000, persistedDate: 2019-01-02 16:27:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1472, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 10 minute: 22 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 16:17:18 +0000, persistedDate: 2019-01-02 16:22:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1471, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 10 minute: 17 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 16:12:14 +0000, persistedDate: 2019-01-02 16:17:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1469, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 10 minute: 12 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 16:07:10 +0000, persistedDate: 2019-01-02 16:12:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1467, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 10 minute: 7 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 16:02:04 +0000, persistedDate: 2019-01-02 16:07:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1465, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 10 minute: 2 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 15:57:51 +0000, persistedDate: 2019-01-02 16:02:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1462, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 9 minute: 57 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 15:52:56 +0000, persistedDate: 2019-01-02 15:57:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1461, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 9 minute: 52 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 15:47:54 +0000, persistedDate: 2019-01-02 15:52:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1458, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 9 minute: 47 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 15:42:48 +0000, persistedDate: 2019-01-02 15:47:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1456, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 9 minute: 42 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 15:37:44 +0000, persistedDate: 2019-01-02 15:42:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1454, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 9 minute: 37 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 15:32:38 +0000, persistedDate: 2019-01-02 15:37:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1453, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 9 minute: 32 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 15:27:34 +0000, persistedDate: 2019-01-02 15:32:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1450, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 9 minute: 27 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 15:22:32 +0000, persistedDate: 2019-01-02 15:27:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1449, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 9 minute: 22 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 15:17:29 +0000, persistedDate: 2019-01-02 15:22:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1447, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 9 minute: 17 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 15:12:27 +0000, persistedDate: 2019-01-02 15:17:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1444, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 9 minute: 12 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 15:07:17 +0000, persistedDate: 2019-01-02 15:12:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1442, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 9 minute: 7 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 15:02:13 +0000, persistedDate: 2019-01-02 15:07:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1441, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 9 minute: 2 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 14:57:09 +0000, persistedDate: 2019-01-02 15:02:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1438, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 8 minute: 57 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 14:52:34 +0000, persistedDate: 2019-01-02 14:57:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1437, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 8 minute: 52 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 14:46:59 +0000, persistedDate: 2019-01-02 14:52:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1435, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 8 minute: 46 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 14:41:55 +0000, persistedDate: 2019-01-02 14:47:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1433, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 8 minute: 41 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 14:36:50 +0000, persistedDate: 2019-01-02 14:41:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1431, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 8 minute: 36 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 14:26:41 +0000, persistedDate: 2019-01-02 14:31:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1429, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 8 minute: 26 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 14:21:36 +0000, persistedDate: 2019-01-02 14:26:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1427, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 8 minute: 21 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 14:16:32 +0000, persistedDate: 2019-01-02 14:21:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1425, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 8 minute: 16 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 14:11:31 +0000, persistedDate: 2019-01-02 14:16:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1422, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 8 minute: 11 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 14:06:25 +0000, persistedDate: 2019-01-02 14:11:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1421, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 8 minute: 6 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 14:01:18 +0000, persistedDate: 2019-01-02 14:06:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1418, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 8 minute: 1 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 13:56:14 +0000, persistedDate: 2019-01-02 14:01:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1417, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 7 minute: 56 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 13:51:10 +0000, persistedDate: 2019-01-02 13:56:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1415, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 7 minute: 51 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 13:46:04 +0000, persistedDate: 2019-01-02 13:51:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1413, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 7 minute: 46 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 13:41:01 +0000, persistedDate: 2019-01-02 13:46:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1410, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 7 minute: 41 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 13:35:57 +0000, persistedDate: 2019-01-02 13:41:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1408, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 7 minute: 35 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 13:30:52 +0000, persistedDate: 2019-01-02 13:36:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1407, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 7 minute: 30 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 13:25:49 +0000, persistedDate: 2019-01-02 13:30:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1404, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 7 minute: 25 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 13:20:42 +0000, persistedDate: 2019-01-02 13:25:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1402, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 7 minute: 20 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 13:15:38 +0000, persistedDate: 2019-01-02 13:20:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1400, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 7 minute: 15 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 13:10:36 +0000, persistedDate: 2019-01-02 13:15:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1399, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 7 minute: 10 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 13:05:30 +0000, persistedDate: 2019-01-02 13:10:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1397, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 7 minute: 5 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 13:00:26 +0000, persistedDate: 2019-01-02 13:05:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1395, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 7 minute: 0 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 12:55:23 +0000, persistedDate: 2019-01-02 13:00:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1392, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 6 minute: 55 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 12:51:06 +0000, persistedDate: 2019-01-02 12:55:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1391, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 6 minute: 51 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 12:41:08 +0000, persistedDate: 2019-01-02 12:46:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1388, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 6 minute: 41 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 12:36:02 +0000, persistedDate: 2019-01-02 12:41:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1386, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 6 minute: 36 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 12:30:58 +0000, persistedDate: 2019-01-02 12:36:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1385, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 6 minute: 30 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 12:25:54 +0000, persistedDate: 2019-01-02 12:31:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1382, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 6 minute: 25 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 12:20:50 +0000, persistedDate: 2019-01-02 12:25:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1381, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 6 minute: 20 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 12:15:44 +0000, persistedDate: 2019-01-02 12:20:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1378, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 6 minute: 15 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 12:10:42 +0000, persistedDate: 2019-01-02 12:15:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1377, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.25, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 6 minute: 10 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 12:05:50 +0000, persistedDate: 2019-01-02 12:10:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1375, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 6 minute: 5 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 12:00:32 +0000, persistedDate: 2019-01-02 12:05:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1373, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 6 minute: 0 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 11:55:28 +0000, persistedDate: 2019-01-02 12:00:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1371, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 5 minute: 55 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 11:50:24 +0000, persistedDate: 2019-01-02 11:55:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1369, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 5 minute: 50 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 11:45:17 +0000, persistedDate: 2019-01-02 11:50:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1367, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 5 minute: 45 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 11:40:13 +0000, persistedDate: 2019-01-02 11:45:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1365, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 5 minute: 40 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 11:35:16 +0000, persistedDate: 2019-01-02 11:40:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1363, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 5 minute: 35 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 11:25:02 +0000, persistedDate: 2019-01-02 11:30:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1361, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 5 minute: 25 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 11:14:51 +0000, persistedDate: 2019-01-02 11:19:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1359, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 5 minute: 14 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 11:09:49 +0000, persistedDate: 2019-01-02 11:14:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1357, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 5 minute: 9 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 11:04:42 +0000, persistedDate: 2019-01-02 11:09:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1355, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 5 minute: 4 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 10:59:38 +0000, persistedDate: 2019-01-02 11:04:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1353, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 4 minute: 59 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 10:54:34 +0000, persistedDate: 2019-01-02 10:59:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1350, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 4 minute: 54 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 10:49:30 +0000, persistedDate: 2019-01-02 10:54:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1349, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 4 minute: 49 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 10:44:26 +0000, persistedDate: 2019-01-02 10:49:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1346, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 4 minute: 44 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 10:39:22 +0000, persistedDate: 2019-01-02 10:44:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1344, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 4 minute: 39 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 10:34:16 +0000, persistedDate: 2019-01-02 10:39:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1343, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 4 minute: 34 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 10:29:13 +0000, persistedDate: 2019-01-02 10:34:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1340, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 4 minute: 29 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 10:24:57 +0000, persistedDate: 2019-01-02 10:29:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1338, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 4 minute: 24 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 10:20:27 +0000, persistedDate: 2019-01-02 10:20:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1337, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 4 minute: 20 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 10:14:58 +0000, persistedDate: 2019-01-02 10:20:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1336, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 4 minute: 14 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 10:09:55 +0000, persistedDate: 2019-01-02 10:15:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1333, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 4 minute: 9 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 10:04:51 +0000, persistedDate: 2019-01-02 10:09:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1330, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 4 minute: 4 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 09:59:47 +0000, persistedDate: 2019-01-02 10:04:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1329, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 3 minute: 59 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 09:54:43 +0000, persistedDate: 2019-01-02 09:59:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1326, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 3 minute: 54 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 09:49:36 +0000, persistedDate: 2019-01-02 09:54:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1325, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 3 minute: 49 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 09:44:33 +0000, persistedDate: 2019-01-02 09:49:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1323, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 3 minute: 44 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 09:39:29 +0000, persistedDate: 2019-01-02 09:44:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1320, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 3 minute: 39 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 09:34:25 +0000, persistedDate: 2019-01-02 09:39:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1319, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 3 minute: 34 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 09:29:19 +0000, persistedDate: 2019-01-02 09:34:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1316, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 3 minute: 29 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 09:24:13 +0000, persistedDate: 2019-01-02 09:29:22 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1315, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 3 minute: 24 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 09:19:07 +0000, persistedDate: 2019-01-02 09:24:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1312, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 3 minute: 19 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 09:14:03 +0000, persistedDate: 2019-01-02 09:19:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1310, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 3 minute: 14 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 09:09:00 +0000, persistedDate: 2019-01-02 09:14:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1309, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 3 minute: 9 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 09:03:55 +0000, persistedDate: 2019-01-02 09:09:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1306, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 3 minute: 3 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 08:59:29 +0000, persistedDate: 2019-01-02 08:59:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1302, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 2 minute: 59 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 08:54:34 +0000, persistedDate: 2019-01-02 08:59:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1303, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 2 minute: 54 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 08:48:39 +0000, persistedDate: 2019-01-02 08:54:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1301, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 2 minute: 48 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 08:43:35 +0000, persistedDate: 2019-01-02 08:48:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1299, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 2 minute: 43 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 08:38:31 +0000, persistedDate: 2019-01-02 08:43:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1296, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 2 minute: 38 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 08:18:13 +0000, persistedDate: 2019-01-02 08:23:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1294, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 2 minute: 18 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 08:13:10 +0000, persistedDate: 2019-01-02 08:18:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1293, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 2 minute: 13 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 08:08:13 +0000, persistedDate: 2019-01-02 08:13:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1290, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 2 minute: 8 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 06:57:52 +0000, persistedDate: 2019-01-02 07:02:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1285, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 2 hour: 0 minute: 57 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 05:09:31 +0000, persistedDate: 2019-01-02 05:14:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1275, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 23 minute: 9 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 04:54:14 +0000, persistedDate: 2019-01-02 05:04:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1271, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 22 minute: 54 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 04:49:10 +0000, persistedDate: 2019-01-02 04:54:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1270, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 22 minute: 49 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 04:44:06 +0000, persistedDate: 2019-01-02 04:49:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1267, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 22 minute: 44 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 04:38:59 +0000, persistedDate: 2019-01-02 04:44:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1266, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 22 minute: 38 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 04:33:55 +0000, persistedDate: 2019-01-02 04:39:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1263, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 22 minute: 33 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 04:28:52 +0000, persistedDate: 2019-01-02 04:33:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1262, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 22 minute: 28 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 04:23:49 +0000, persistedDate: 2019-01-02 04:28:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1259, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 22 minute: 23 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 04:18:46 +0000, persistedDate: 2019-01-02 04:23:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1258, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 22 minute: 18 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 04:13:43 +0000, persistedDate: 2019-01-02 04:18:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1256, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 22 minute: 13 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 04:08:25 +0000, persistedDate: 2019-01-02 04:13:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1252, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 22 minute: 8 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 04:04:21 +0000, persistedDate: 2019-01-02 04:13:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1254, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 22 minute: 4 second: 21 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 03:58:29 +0000, persistedDate: 2019-01-02 04:04:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1250, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 21 minute: 58 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 03:54:10 +0000, persistedDate: 2019-01-02 03:58:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1248, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 21 minute: 54 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 03:47:56 +0000, persistedDate: 2019-01-02 03:48:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1246, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 21 minute: 47 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 03:43:30 +0000, persistedDate: 2019-01-02 03:43:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1239, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 21 minute: 43 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 03:38:12 +0000, persistedDate: 2019-01-02 03:43:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1243, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 21 minute: 38 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 03:38:09 +0000, persistedDate: 2019-01-02 03:43:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1240, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.725, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 21 minute: 38 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 03:33:25 +0000, persistedDate: 2019-01-02 03:38:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1238, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 21 minute: 33 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 03:27:58 +0000, persistedDate: 2019-01-02 03:33:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1235, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 21 minute: 27 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 03:23:01 +0000, persistedDate: 2019-01-02 03:23:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1232, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 21 minute: 23 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 03:17:50 +0000, persistedDate: 2019-01-02 03:23:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1234, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 21 minute: 17 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 03:02:33 +0000, persistedDate: 2019-01-02 03:07:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1229, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 21 minute: 2 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 02:42:30 +0000, persistedDate: 2019-01-02 02:47:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1228, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 20 minute: 42 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 02:21:58 +0000, persistedDate: 2019-01-02 02:27:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1225, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 20 minute: 21 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 02:07:44 +0000, persistedDate: 2019-01-02 02:12:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1221, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 20 minute: 7 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 02:02:43 +0000, persistedDate: 2019-01-02 02:07:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1219, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 20 minute: 2 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 01:57:35 +0000, persistedDate: 2019-01-02 02:02:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1218, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 19 minute: 57 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 01:53:20 +0000, persistedDate: 2019-01-02 01:57:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1216, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 19 minute: 53 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 01:48:46 +0000, persistedDate: 2019-01-02 01:53:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1214, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 19 minute: 48 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 01:48:44 +0000, persistedDate: 2019-01-02 01:53:24 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1213, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 19 minute: 48 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 01:32:24 +0000, persistedDate: 2019-01-02 01:38:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1209, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 19 minute: 32 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 01:24:54 +0000, persistedDate: 2019-01-02 01:32:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1208, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 19 minute: 24 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 01:19:00 +0000, persistedDate: 2019-01-02 01:24:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1206, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 19 minute: 19 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 01:13:55 +0000, persistedDate: 2019-01-02 01:19:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1204, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 19 minute: 13 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 01:08:50 +0000, persistedDate: 2019-01-02 01:13:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1202, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 19 minute: 8 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 00:54:37 +0000, persistedDate: 2019-01-02 00:59:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1200, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 18 minute: 54 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 00:34:20 +0000, persistedDate: 2019-01-02 00:40:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1198, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 18 minute: 34 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 00:29:31 +0000, persistedDate: 2019-01-02 00:34:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1194, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 18 minute: 29 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 00:29:29 +0000, persistedDate: 2019-01-02 00:34:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1193, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 4.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 18 minute: 29 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 00:24:59 +0000, persistedDate: 2019-01-02 00:29:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1190, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 18 minute: 24 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 00:19:03 +0000, persistedDate: 2019-01-02 00:25:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1187, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 18 minute: 19 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 00:14:08 +0000, persistedDate: 2019-01-02 00:19:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1186, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 18 minute: 14 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 00:09:34 +0000, persistedDate: 2019-01-02 00:10:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1180, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 18 minute: 9 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 00:04:07 +0000, persistedDate: 2019-01-02 00:10:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1183, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 18 minute: 4 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-02 00:04:05 +0000, persistedDate: 2019-01-02 00:10:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1184, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 18 minute: 4 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 23:58:03 +0000, persistedDate: 2019-01-02 00:03:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1175, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 17 minute: 58 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 23:58:01 +0000, persistedDate: 2019-01-02 00:03:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1177, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 17 minute: 58 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 23:57:59 +0000, persistedDate: 2019-01-02 00:03:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1178, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.65, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 17 minute: 57 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 23:42:39 +0000, persistedDate: 2019-01-01 23:47:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1172, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 17 minute: 42 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 23:37:29 +0000, persistedDate: 2019-01-01 23:42:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1170, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 17 minute: 37 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 23:32:24 +0000, persistedDate: 2019-01-01 23:37:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1167, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 17 minute: 32 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 23:27:17 +0000, persistedDate: 2019-01-01 23:32:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1166, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 17 minute: 27 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 23:22:15 +0000, persistedDate: 2019-01-01 23:27:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1163, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 17 minute: 22 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 23:08:08 +0000, persistedDate: 2019-01-01 23:12:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1162, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 17 minute: 8 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 22:48:32 +0000, persistedDate: 2019-01-01 22:52:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1160, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 16 minute: 48 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 22:38:34 +0000, persistedDate: 2019-01-01 22:43:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1156, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 16 minute: 38 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 22:28:28 +0000, persistedDate: 2019-01-01 22:33:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1153, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 16 minute: 28 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 22:04:54 +0000, persistedDate: 2019-01-01 22:09:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1152, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 16 minute: 4 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 21:44:48 +0000, persistedDate: 2019-01-01 21:49:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1149, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 15 minute: 44 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 21:24:30 +0000, persistedDate: 2019-01-01 21:29:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1147, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 15 minute: 24 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 21:04:21 +0000, persistedDate: 2019-01-01 21:09:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1146, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 15 minute: 4 second: 21 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 20:43:30 +0000, persistedDate: 2019-01-01 20:49:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1135, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 14 minute: 43 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 20:24:38 +0000, persistedDate: 2019-01-01 20:29:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1133, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 14 minute: 24 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 20:04:26 +0000, persistedDate: 2019-01-01 20:09:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1132, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 14 minute: 4 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 19:34:44 +0000, persistedDate: 2019-01-01 19:47:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1128, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 13 minute: 34 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 19:29:48 +0000, persistedDate: 2019-01-01 19:47:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1126, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 13 minute: 29 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 19:29:40 +0000, persistedDate: 2019-01-01 19:47:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1127, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 13 minute: 29 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 19:19:52 +0000, persistedDate: 2019-01-01 19:47:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1125, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 13 minute: 19 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 19:14:38 +0000, persistedDate: 2019-01-01 19:19:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1119, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 3.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 13 minute: 14 second: 38 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 19:10:04 +0000, persistedDate: 2019-01-01 19:10:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1115, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 13 minute: 10 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 18:52:12 +0000, persistedDate: 2019-01-01 19:10:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1117, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 12 minute: 52 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 18:44:10 +0000, persistedDate: 2019-01-01 18:52:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1113, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 12 minute: 44 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 18:39:06 +0000, persistedDate: 2019-01-01 18:44:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1111, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 12 minute: 39 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 18:34:00 +0000, persistedDate: 2019-01-01 18:39:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1109, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 12 minute: 34 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 18:28:56 +0000, persistedDate: 2019-01-01 18:34:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1106, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 12 minute: 28 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 18:23:52 +0000, persistedDate: 2019-01-01 18:28:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1105, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 12 minute: 23 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 18:18:48 +0000, persistedDate: 2019-01-01 18:23:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1103, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 12 minute: 18 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 18:13:43 +0000, persistedDate: 2019-01-01 18:18:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1100, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 12 minute: 13 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 18:08:40 +0000, persistedDate: 2019-01-01 18:13:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1098, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 12 minute: 8 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 18:03:34 +0000, persistedDate: 2019-01-01 18:08:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1097, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 12 minute: 3 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 17:58:30 +0000, persistedDate: 2019-01-01 18:03:37 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1095, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 11 minute: 58 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 17:53:28 +0000, persistedDate: 2019-01-01 17:58:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1092, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 11 minute: 53 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 17:43:29 +0000, persistedDate: 2019-01-01 17:48:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1091, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 11 minute: 43 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 17:38:12 +0000, persistedDate: 2019-01-01 17:43:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1089, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 11 minute: 38 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 17:33:08 +0000, persistedDate: 2019-01-01 17:38:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1086, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 11 minute: 33 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 17:28:02 +0000, persistedDate: 2019-01-01 17:33:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1085, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 11 minute: 28 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 17:22:58 +0000, persistedDate: 2019-01-01 17:28:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1083, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 11 minute: 22 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 17:17:54 +0000, persistedDate: 2019-01-01 17:23:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1080, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 11 minute: 17 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 17:12:50 +0000, persistedDate: 2019-01-01 17:17:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1079, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 11 minute: 12 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 17:07:44 +0000, persistedDate: 2019-01-01 17:12:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1077, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 11 minute: 7 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 17:02:42 +0000, persistedDate: 2019-01-01 17:07:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1075, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 11 minute: 2 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 16:57:36 +0000, persistedDate: 2019-01-01 17:02:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1072, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 10 minute: 57 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 16:52:32 +0000, persistedDate: 2019-01-01 16:57:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1070, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 10 minute: 52 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 16:47:28 +0000, persistedDate: 2019-01-01 16:52:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1069, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 10 minute: 47 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 16:42:24 +0000, persistedDate: 2019-01-01 16:47:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1066, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 10 minute: 42 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 16:37:18 +0000, persistedDate: 2019-01-01 16:42:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1064, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 10 minute: 37 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 16:32:14 +0000, persistedDate: 2019-01-01 16:37:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1062, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 10 minute: 32 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 16:27:08 +0000, persistedDate: 2019-01-01 16:32:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1060, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 10 minute: 27 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 16:22:04 +0000, persistedDate: 2019-01-01 16:27:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1059, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 10 minute: 22 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 16:17:13 +0000, persistedDate: 2019-01-01 16:17:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1055, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 10 minute: 17 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 16:11:56 +0000, persistedDate: 2019-01-01 16:17:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1057, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 10 minute: 11 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 16:06:50 +0000, persistedDate: 2019-01-01 16:11:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1053, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 10 minute: 6 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 16:01:55 +0000, persistedDate: 2019-01-01 16:06:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1050, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 10 minute: 1 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 15:56:40 +0000, persistedDate: 2019-01-01 16:01:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1049, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.225, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 9 minute: 56 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 15:51:36 +0000, persistedDate: 2019-01-01 15:56:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1047, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.7, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 9 minute: 51 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 15:46:51 +0000, persistedDate: 2019-01-01 15:47:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1045, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 9 minute: 46 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 15:41:28 +0000, persistedDate: 2019-01-01 15:47:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1044, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 9 minute: 41 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 15:36:24 +0000, persistedDate: 2019-01-01 15:41:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1041, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 9 minute: 36 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 15:31:17 +0000, persistedDate: 2019-01-01 15:36:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1039, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 9 minute: 31 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 15:26:12 +0000, persistedDate: 2019-01-01 15:31:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1037, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 9 minute: 26 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 15:21:07 +0000, persistedDate: 2019-01-01 15:26:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1034, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 9 minute: 21 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 15:16:03 +0000, persistedDate: 2019-01-01 15:21:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1032, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.45, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 9 minute: 16 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 15:10:59 +0000, persistedDate: 2019-01-01 15:16:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1031, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 9 minute: 10 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 15:05:46 +0000, persistedDate: 2019-01-01 15:06:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1028, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 9 minute: 5 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 14:50:41 +0000, persistedDate: 2019-01-01 14:55:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1026, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 8 minute: 50 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 14:45:35 +0000, persistedDate: 2019-01-01 14:50:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1025, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 8 minute: 45 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 14:40:31 +0000, persistedDate: 2019-01-01 14:45:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1023, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 8 minute: 40 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 14:35:51 +0000, persistedDate: 2019-01-01 14:36:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1018, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 8 minute: 35 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 14:30:24 +0000, persistedDate: 2019-01-01 14:36:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1019, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 8 minute: 30 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 14:25:17 +0000, persistedDate: 2019-01-01 14:30:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1017, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 8 minute: 25 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 14:20:13 +0000, persistedDate: 2019-01-01 14:25:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1015, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 8 minute: 20 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 14:15:09 +0000, persistedDate: 2019-01-01 14:20:17 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1012, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 8 minute: 15 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 14:09:03 +0000, persistedDate: 2019-01-01 14:15:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1011, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 8 minute: 9 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 14:03:59 +0000, persistedDate: 2019-01-01 14:09:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1008, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 8 minute: 3 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 13:59:44 +0000, persistedDate: 2019-01-01 14:04:03 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1007, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 7 minute: 59 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 13:54:51 +0000, persistedDate: 2019-01-01 13:59:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1005, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 7 minute: 54 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 13:49:45 +0000, persistedDate: 2019-01-01 13:54:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1003, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.125, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 7 minute: 49 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 13:44:41 +0000, persistedDate: 2019-01-01 13:49:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p1001, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 7 minute: 44 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 13:14:15 +0000, persistedDate: 2019-01-01 13:19:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p998, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 7 minute: 14 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 13:09:11 +0000, persistedDate: 2019-01-01 13:14:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p997, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.275, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 7 minute: 9 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 12:59:04 +0000, persistedDate: 2019-01-01 13:04:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p995, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 6 minute: 59 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 12:53:58 +0000, persistedDate: 2019-01-01 12:59:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p992, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 6 minute: 53 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 12:49:44 +0000, persistedDate: 2019-01-01 12:54:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p991, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 6 minute: 49 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 12:39:34 +0000, persistedDate: 2019-01-01 12:49:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p989, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 6 minute: 39 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 12:34:42 +0000, persistedDate: 2019-01-01 12:39:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p987, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 6 minute: 34 second: 42 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 12:29:36 +0000, persistedDate: 2019-01-01 12:34:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p985, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.1, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 6 minute: 29 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 12:24:32 +0000, persistedDate: 2019-01-01 12:29:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p982, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 6 minute: 24 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 12:19:30 +0000, persistedDate: 2019-01-01 12:24:35 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p981, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 6 minute: 19 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 12:14:26 +0000, persistedDate: 2019-01-01 12:19:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p979, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 6 minute: 14 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 12:10:09 +0000, persistedDate: 2019-01-01 12:14:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p976, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.975, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 6 minute: 10 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 12:05:16 +0000, persistedDate: 2019-01-01 12:10:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p974, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.925, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 6 minute: 5 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 12:00:09 +0000, persistedDate: 2019-01-01 12:05:19 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p973, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 6 minute: 0 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 11:55:07 +0000, persistedDate: 2019-01-01 12:00:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p970, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 5 minute: 55 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 11:50:02 +0000, persistedDate: 2019-01-01 11:55:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p968, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 5 minute: 50 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 11:44:58 +0000, persistedDate: 2019-01-01 11:50:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p967, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 5 minute: 44 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 11:39:55 +0000, persistedDate: 2019-01-01 11:45:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p965, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 5 minute: 39 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 11:34:48 +0000, persistedDate: 2019-01-01 11:39:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p963, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.325, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 5 minute: 34 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 11:29:44 +0000, persistedDate: 2019-01-01 11:34:51 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p961, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 5 minute: 29 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 11:24:39 +0000, persistedDate: 2019-01-01 11:29:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p959, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 5 minute: 24 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 11:19:36 +0000, persistedDate: 2019-01-01 11:24:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p957, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 5 minute: 19 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 11:14:44 +0000, persistedDate: 2019-01-01 11:19:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p955, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.525, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 5 minute: 14 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 11:09:28 +0000, persistedDate: 2019-01-01 11:14:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p953, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 5 minute: 9 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 11:04:24 +0000, persistedDate: 2019-01-01 11:09:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p951, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 5 minute: 4 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 10:59:17 +0000, persistedDate: 2019-01-01 11:04:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p949, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 4 minute: 59 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 10:55:02 +0000, persistedDate: 2019-01-01 10:59:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p947, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 4 minute: 55 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 10:50:09 +0000, persistedDate: 2019-01-01 10:55:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p945, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.025, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 4 minute: 50 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 10:45:03 +0000, persistedDate: 2019-01-01 10:50:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p943, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 4 minute: 45 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 10:40:02 +0000, persistedDate: 2019-01-01 10:45:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p940, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.75, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 4 minute: 40 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 10:34:55 +0000, persistedDate: 2019-01-01 10:40:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p939, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 4 minute: 34 second: 55 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 10:29:51 +0000, persistedDate: 2019-01-01 10:34:59 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p937, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 4 minute: 29 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 10:24:46 +0000, persistedDate: 2019-01-01 10:29:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p935, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 4 minute: 24 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 10:09:33 +0000, persistedDate: 2019-01-01 10:14:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p933, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 4 minute: 9 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2019-01-01 09:49:16 +0000, persistedDate: 2019-01-01 09:54:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p925, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 1 hour: 3 minute: 49 second: 16 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 22:50:44 +0000, persistedDate: 2018-12-31 22:55:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p418, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 16 minute: 50 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 22:30:28 +0000, persistedDate: 2018-12-31 22:35:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p416, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 16 minute: 30 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 22:10:11 +0000, persistedDate: 2018-12-31 22:15:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p415, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 16 minute: 10 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 21:50:51 +0000, persistedDate: 2018-12-31 21:56:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p411, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 15 minute: 50 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 21:30:33 +0000, persistedDate: 2018-12-31 21:35:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p408, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 15 minute: 30 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 21:25:29 +0000, persistedDate: 2018-12-31 21:30:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p404, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 5.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 15 minute: 25 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 21:10:17 +0000, persistedDate: 2018-12-31 21:15:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p403, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 15 minute: 10 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 20:50:00 +0000, persistedDate: 2018-12-31 20:55:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p401, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 14 minute: 50 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 20:29:48 +0000, persistedDate: 2018-12-31 20:34:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p398, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 14 minute: 29 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 20:13:45 +0000, persistedDate: 2018-12-31 20:15:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p396, raw: Optional(7 bytes), title: Optional("ChangeMaxBasalPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 14 minute: 13 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 20:13:30 +0000, persistedDate: 2018-12-31 20:15:21 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p397, raw: Optional(7 bytes), title: Optional("ChangeMaxBasalPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 14 minute: 13 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 20:10:24 +0000, persistedDate: 2018-12-31 20:10:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p395, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 14 minute: 10 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 19:56:28 +0000, persistedDate: 2018-12-31 19:56:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p391, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 13 minute: 56 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 19:51:07 +0000, persistedDate: 2018-12-31 19:56:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p392, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 13 minute: 51 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 19:46:04 +0000, persistedDate: 2018-12-31 19:51:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p387, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.525, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 13 minute: 46 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 19:41:05 +0000, persistedDate: 2018-12-31 19:46:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p385, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 13 minute: 41 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 19:35:54 +0000, persistedDate: 2018-12-31 19:41:07 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p383, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 13 minute: 35 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 19:31:21 +0000, persistedDate: 2018-12-31 19:35:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p378, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 13 minute: 31 second: 21 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 19:26:44 +0000, persistedDate: 2018-12-31 19:35:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p380, raw: Optional(7 bytes), title: Optional("ChangeMaxBasalPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 13 minute: 26 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 19:25:45 +0000, persistedDate: 2018-12-31 19:35:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p381, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 13 minute: 25 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 19:20:46 +0000, persistedDate: 2018-12-31 19:25:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p376, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 13 minute: 20 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 19:15:34 +0000, persistedDate: 2018-12-31 19:20:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p374, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 13 minute: 15 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 19:11:22 +0000, persistedDate: 2018-12-31 19:15:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p367, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 13 minute: 11 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 19:05:40 +0000, persistedDate: 2018-12-31 19:15:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p371, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 13 minute: 5 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 19:01:10 +0000, persistedDate: 2018-12-31 19:15:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p370, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 13 minute: 1 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 18:54:05 +0000, persistedDate: 2018-12-31 19:15:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p363, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 12 minute: 54 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 18:50:13 +0000, persistedDate: 2018-12-31 19:15:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p372, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.85, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 12 minute: 50 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 18:44:33 +0000, persistedDate: 2018-12-31 18:45:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p362, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 12 minute: 44 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 18:39:06 +0000, persistedDate: 2018-12-31 18:45:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p359, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.275, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 12 minute: 39 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 18:34:03 +0000, persistedDate: 2018-12-31 18:39:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p358, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.675, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 12 minute: 34 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 18:28:52 +0000, persistedDate: 2018-12-31 18:34:05 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p356, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.575, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 12 minute: 28 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 18:23:48 +0000, persistedDate: 2018-12-31 18:28:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p353, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.75, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 12 minute: 23 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 18:15:40 +0000, persistedDate: 2018-12-31 18:23:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p352, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.05, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 12 minute: 15 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 18:10:33 +0000, persistedDate: 2018-12-31 18:15:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p350, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 12 minute: 10 second: 33 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 18:05:29 +0000, persistedDate: 2018-12-31 18:10:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p348, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.15, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 12 minute: 5 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 18:00:28 +0000, persistedDate: 2018-12-31 18:05:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p345, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.225, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 12 minute: 0 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 17:37:06 +0000, persistedDate: 2018-12-31 17:44:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p344, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 11 minute: 37 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 17:16:48 +0000, persistedDate: 2018-12-31 17:21:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p342, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 11 minute: 16 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 16:57:32 +0000, persistedDate: 2018-12-31 17:02:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p340, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 10 minute: 57 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 16:52:28 +0000, persistedDate: 2018-12-31 16:57:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p337, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 10 minute: 52 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 16:47:24 +0000, persistedDate: 2018-12-31 16:52:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p336, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 10 minute: 47 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 16:26:02 +0000, persistedDate: 2018-12-31 16:33:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p334, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 10 minute: 26 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 16:20:58 +0000, persistedDate: 2018-12-31 16:26:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p331, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 10 minute: 20 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 16:15:54 +0000, persistedDate: 2018-12-31 16:21:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p329, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 10 minute: 15 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 16:10:50 +0000, persistedDate: 2018-12-31 16:15:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p328, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.925, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 10 minute: 10 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 16:05:44 +0000, persistedDate: 2018-12-31 16:10:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p326, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 10 minute: 5 second: 44 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 16:01:08 +0000, persistedDate: 2018-12-31 16:01:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p321, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 10 minute: 1 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 15:55:34 +0000, persistedDate: 2018-12-31 16:01:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p323, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 9 minute: 55 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 15:50:30 +0000, persistedDate: 2018-12-31 15:55:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p319, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 9 minute: 50 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 15:45:28 +0000, persistedDate: 2018-12-31 15:50:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p317, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 9 minute: 45 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 15:37:18 +0000, persistedDate: 2018-12-31 15:45:31 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p315, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 9 minute: 37 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 15:33:03 +0000, persistedDate: 2018-12-31 15:37:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p314, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 9 minute: 33 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 15:27:09 +0000, persistedDate: 2018-12-31 15:33:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p312, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 9 minute: 27 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 15:22:04 +0000, persistedDate: 2018-12-31 15:27:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p310, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 9 minute: 22 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 15:16:59 +0000, persistedDate: 2018-12-31 15:22:06 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p307, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.975, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 9 minute: 16 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 15:11:56 +0000, persistedDate: 2018-12-31 15:17:02 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p306, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.95, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 9 minute: 11 second: 56 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 15:06:49 +0000, persistedDate: 2018-12-31 15:11:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p303, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 9 minute: 6 second: 49 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 15:01:46 +0000, persistedDate: 2018-12-31 15:06:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p302, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 9 minute: 1 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 14:56:41 +0000, persistedDate: 2018-12-31 15:01:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p300, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 8 minute: 56 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 14:51:37 +0000, persistedDate: 2018-12-31 14:56:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p297, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 8 minute: 51 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 14:41:30 +0000, persistedDate: 2018-12-31 14:46:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p296, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.1, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 8 minute: 41 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 14:36:26 +0000, persistedDate: 2018-12-31 14:41:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p294, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.225, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 8 minute: 36 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 14:32:10 +0000, persistedDate: 2018-12-31 14:36:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p292, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 8 minute: 32 second: 10 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 14:27:15 +0000, persistedDate: 2018-12-31 14:32:13 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p289, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 8 minute: 27 second: 15 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 14:22:11 +0000, persistedDate: 2018-12-31 14:27:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p288, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.025, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 8 minute: 22 second: 11 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 14:17:07 +0000, persistedDate: 2018-12-31 14:22:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p286, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.075, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 8 minute: 17 second: 7 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 14:12:01 +0000, persistedDate: 2018-12-31 14:17:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p284, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 8 minute: 12 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 14:06:57 +0000, persistedDate: 2018-12-31 14:12:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p282, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.525, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 8 minute: 6 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 14:01:53 +0000, persistedDate: 2018-12-31 14:07:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p280, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 8 minute: 1 second: 53 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 13:56:47 +0000, persistedDate: 2018-12-31 14:01:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p278, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 7 minute: 56 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 13:51:43 +0000, persistedDate: 2018-12-31 13:56:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p276, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 7 minute: 51 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 13:46:39 +0000, persistedDate: 2018-12-31 13:51:46 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p274, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 7 minute: 46 second: 39 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 13:41:35 +0000, persistedDate: 2018-12-31 13:46:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p271, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 7 minute: 41 second: 35 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 13:36:32 +0000, persistedDate: 2018-12-31 13:41:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p270, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 7 minute: 36 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 13:31:28 +0000, persistedDate: 2018-12-31 13:36:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p268, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 7 minute: 31 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 13:26:24 +0000, persistedDate: 2018-12-31 13:31:30 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p265, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 7 minute: 26 second: 24 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 13:21:17 +0000, persistedDate: 2018-12-31 13:26:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p264, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 7 minute: 21 second: 17 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 13:16:14 +0000, persistedDate: 2018-12-31 13:21:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p262, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.925, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 7 minute: 16 second: 14 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 13:06:04 +0000, persistedDate: 2018-12-31 13:11:10 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p260, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 7 minute: 6 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 12:45:46 +0000, persistedDate: 2018-12-31 12:50:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p258, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 6 minute: 45 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 12:41:03 +0000, persistedDate: 2018-12-31 12:41:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p256, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 6 minute: 41 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 12:35:37 +0000, persistedDate: 2018-12-31 12:41:23 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p254, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 6 minute: 35 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 12:31:23 +0000, persistedDate: 2018-12-31 12:35:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p252, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.525, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 6 minute: 31 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 12:26:30 +0000, persistedDate: 2018-12-31 12:31:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p250, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 6 minute: 26 second: 30 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 12:21:26 +0000, persistedDate: 2018-12-31 12:26:33 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p248, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 6 minute: 21 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 12:16:22 +0000, persistedDate: 2018-12-31 12:21:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p245, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.8, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 6 minute: 16 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 12:01:06 +0000, persistedDate: 2018-12-31 12:06:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p244, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 6 minute: 1 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 11:56:02 +0000, persistedDate: 2018-12-31 12:01:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p242, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.65, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 5 minute: 56 second: 2 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 11:40:50 +0000, persistedDate: 2018-12-31 11:45:56 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p240, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 5 minute: 40 second: 50 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 11:35:46 +0000, persistedDate: 2018-12-31 11:40:53 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p238, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.625, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 5 minute: 35 second: 46 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 11:30:40 +0000, persistedDate: 2018-12-31 11:35:49 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p236, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 5 minute: 30 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 11:25:36 +0000, persistedDate: 2018-12-31 11:30:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p233, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.55, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 5 minute: 25 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 11:20:32 +0000, persistedDate: 2018-12-31 11:25:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p232, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 5 minute: 20 second: 32 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 11:15:28 +0000, persistedDate: 2018-12-31 11:20:34 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p229, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.7, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 5 minute: 15 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 11:06:08 +0000, persistedDate: 2018-12-31 11:10:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p227, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 5 minute: 6 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 11:00:12 +0000, persistedDate: 2018-12-31 11:06:09 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p225, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.6, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 5 minute: 0 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 10:55:08 +0000, persistedDate: 2018-12-31 11:00:15 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p224, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.375, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 4 minute: 55 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 10:50:04 +0000, persistedDate: 2018-12-31 10:55:11 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p222, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 4 minute: 50 second: 4 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 10:45:19 +0000, persistedDate: 2018-12-31 10:45:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p218, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 4 minute: 45 second: 19 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 10:39:54 +0000, persistedDate: 2018-12-31 10:45:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p219, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.575, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 4 minute: 39 second: 54 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 10:34:52 +0000, persistedDate: 2018-12-31 10:39:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p215, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.95, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 4 minute: 34 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 10:24:41 +0000, persistedDate: 2018-12-31 10:29:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p214, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 4 minute: 24 second: 41 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 10:19:37 +0000, persistedDate: 2018-12-31 10:24:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p212, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 4 minute: 19 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 10:14:34 +0000, persistedDate: 2018-12-31 10:19:39 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p210, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.725, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 4 minute: 14 second: 34 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 10:09:28 +0000, persistedDate: 2018-12-31 10:14:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p208, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.65, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 4 minute: 9 second: 28 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 10:04:37 +0000, persistedDate: 2018-12-31 10:04:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p204, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 4 minute: 4 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 09:59:18 +0000, persistedDate: 2018-12-31 10:04:57 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p203, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 3 minute: 59 second: 18 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 09:54:12 +0000, persistedDate: 2018-12-31 09:59:20 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p201, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 3 minute: 54 second: 12 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 09:49:58 +0000, persistedDate: 2018-12-31 09:54:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p200, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.725, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 3 minute: 49 second: 58 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 09:45:05 +0000, persistedDate: 2018-12-31 09:50:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p197, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.35, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 3 minute: 45 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 09:39:59 +0000, persistedDate: 2018-12-31 09:45:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p196, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.475, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 3 minute: 39 second: 59 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 09:24:48 +0000, persistedDate: 2018-12-31 09:29:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p192, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 3 minute: 24 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 09:04:29 +0000, persistedDate: 2018-12-31 09:09:36 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p189, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 3 minute: 4 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 08:45:26 +0000, persistedDate: 2018-12-31 08:55:27 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p188, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 2 minute: 45 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 08:25:00 +0000, persistedDate: 2018-12-31 08:35:18 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p186, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 2 minute: 25 second: 0 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 08:04:37 +0000, persistedDate: 2018-12-31 08:09:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p184, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 2 minute: 4 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 07:49:40 +0000, persistedDate: 2018-12-31 07:50:01 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p182, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 1 minute: 49 second: 40 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 07:29:03 +0000, persistedDate: 2018-12-31 07:34:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p180, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 1 minute: 29 second: 3 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 07:08:48 +0000, persistedDate: 2018-12-31 07:13:52 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p178, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 1 minute: 8 second: 48 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 06:48:29 +0000, persistedDate: 2018-12-31 06:53:43 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p175, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 0 minute: 48 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 06:43:26 +0000, persistedDate: 2018-12-31 06:48:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p174, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.825, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 0 minute: 43 second: 26 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 06:38:22 +0000, persistedDate: 2018-12-31 06:43:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p172, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.3, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 0 minute: 38 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 06:33:13 +0000, persistedDate: 2018-12-31 06:38:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p169, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.125, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 0 minute: 33 second: 13 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 06:28:09 +0000, persistedDate: 2018-12-31 06:33:16 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p168, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.175, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 0 minute: 28 second: 9 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 06:23:05 +0000, persistedDate: 2018-12-31 06:28:12 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p165, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.675, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 0 minute: 23 second: 5 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 06:18:01 +0000, persistedDate: 2018-12-31 06:23:08 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p163, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 0 minute: 18 second: 1 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 06:12:57 +0000, persistedDate: 2018-12-31 06:18:04 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p161, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.9, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 0 minute: 12 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 06:07:52 +0000, persistedDate: 2018-12-31 06:13:00 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p159, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 0 minute: 7 second: 52 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 06:02:47 +0000, persistedDate: 2018-12-31 06:07:55 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p157, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.9, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 31 hour: 0 minute: 2 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 05:57:45 +0000, persistedDate: 2018-12-31 06:02:50 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p155, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.875, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 23 minute: 57 second: 45 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 05:52:43 +0000, persistedDate: 2018-12-31 05:57:48 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p153, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 23 minute: 52 second: 43 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 05:43:20 +0000, persistedDate: 2018-12-31 05:47:38 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p151, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 23 minute: 43 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 05:32:23 +0000, persistedDate: 2018-12-31 05:37:29 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p149, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 23 minute: 32 second: 23 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 05:27:20 +0000, persistedDate: 2018-12-31 05:32:26 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p147, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.975, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 23 minute: 27 second: 20 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 05:22:27 +0000, persistedDate: 2018-12-31 05:22:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p146, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.725, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 23 minute: 22 second: 27 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 05:17:08 +0000, persistedDate: 2018-12-31 05:22:47 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p145, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 23 minute: 17 second: 8 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 04:56:47 +0000, persistedDate: 2018-12-31 05:01:54 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p141, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 22 minute: 56 second: 47 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 04:45:37 +0000, persistedDate: 2018-12-31 04:50:44 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p139, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 2.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 22 minute: 45 second: 37 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 04:41:22 +0000, persistedDate: 2018-12-31 04:45:40 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p138, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.925, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 22 minute: 41 second: 22 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 04:36:29 +0000, persistedDate: 2018-12-31 04:41:25 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p135, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.775, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 22 minute: 36 second: 29 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 04:31:25 +0000, persistedDate: 2018-12-31 04:36:32 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p134, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.5, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 22 minute: 31 second: 25 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 04:26:21 +0000, persistedDate: 2018-12-31 04:31:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p132, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.8, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 22 minute: 26 second: 21 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-31 04:11:57 +0000, persistedDate: 2018-12-31 04:16:14 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p128, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 22 minute: 11 second: 57 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-30 22:35:31 +0000, persistedDate: 2018-12-30 22:39:17 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.resume, startDate: 2018-12-30 22:35:31 +0000, endDate: 2018-12-30 22:35:31 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("0300050005df23101e12"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p55, raw: Optional(10 bytes), title: Optional("PrimePumpEvent(length: 10, rawData: 10 bytes, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 16 minute: 35 second: 31 isLeapMonth: false , amount: 0.5, primeType: \"fixed\", programmedAmount: 0.5)"), type: Optional(LoopKit.PumpEventType.prime)) -* PersistedPumpEvent(date: 2018-12-30 22:31:17 +0000, persistedDate: 2018-12-30 22:34:14 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.resume, startDate: 2018-12-30 22:31:17 +0000, endDate: 2018-12-30 22:31:17 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("0300000036d11f301e12"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p54, raw: Optional(10 bytes), title: Optional("PrimePumpEvent(length: 10, rawData: 10 bytes, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 16 minute: 31 second: 17 isLeapMonth: false , amount: 5.4, primeType: \"manual\", programmedAmount: 0.0)"), type: Optional(LoopKit.PumpEventType.prime)) -* PersistedPumpEvent(date: 2018-12-30 21:50:46 +0000, persistedDate: 2018-12-30 22:09:04 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2018-12-30 21:50:46 +0000, endDate: 2018-12-30 21:50:46 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("2100ee320f1e12"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p52, raw: Optional(7 bytes), title: Optional("RewindPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 15 minute: 50 second: 46 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.rewind)) -* PersistedPumpEvent(date: 2018-12-30 21:49:50 +0000, persistedDate: 2018-12-30 22:09:04 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2018-12-30 21:49:50 +0000, endDate: 2018-12-30 21:49:50 +0000, value: 0.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("2100f2310f1e12"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p53, raw: Optional(7 bytes), title: Optional("RewindPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 15 minute: 49 second: 50 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.rewind)) -* PersistedPumpEvent(date: 2018-12-30 21:32:51 +0000, persistedDate: 2018-12-30 21:39:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p50, raw: Optional(7 bytes), title: Optional("BatteryPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 15 minute: 32 second: 51 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-30 21:32:31 +0000, persistedDate: 2018-12-30 21:39:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p46, raw: Optional(7 bytes), title: Optional("BatteryPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 15 minute: 32 second: 31 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-30 14:44:06 +0000, persistedDate: 2018-12-30 21:39:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p51, raw: Optional(7 bytes), title: Optional("PlaceholderPumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 8 minute: 44 second: 6 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-30 14:39:36 +0000, persistedDate: 2018-12-30 21:39:42 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p47, raw: Optional(7 bytes), title: Optional("ChangeAlarmNotifyModePumpEvent(length: 7, rawData: 7 bytes, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 30 hour: 8 minute: 39 second: 36 isLeapMonth: false )"), type: nil) -* PersistedPumpEvent(date: 2018-12-23 15:14:36 +0000, persistedDate: 2018-12-23 15:24:45 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://33F82037-DF72-44DB-A5C5-91DBE080DC82/PumpEvent/p44, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.425, timestamp: calendar: gregorian (fixed) year: 2018 month: 12 day: 23 hour: 9 minute: 14 second: 36 isLeapMonth: false )"), type: nil) - -### getNormalizedDoseEntries - -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2018-12-30 21:50:46 +0000, endDate: 2018-12-30 22:00:00 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("2100ee320f1e12 1/2"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2018-12-30 22:00:00 +0000, endDate: 2018-12-30 22:31:17 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("2100ee320f1e12 2/2"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-03 03:47:57 +0000, endDate: 2019-01-03 03:50:47 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("2100396f150213"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-06 00:41:39 +0000, endDate: 2019-01-06 00:43:23 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("21002769120513"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-09 00:57:19 +0000, endDate: 2019-01-09 00:58:27 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("21001379120813"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-12 23:29:43 +0000, endDate: 2019-01-12 23:30:44 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("21002b5d110c13"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-15 04:04:04 +0000, endDate: 2019-01-15 04:07:21 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("21000444160e13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 01:23:42 +0000, endDate: 2019-01-16 01:23:42 +0000, value: 13.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("018282002a57334f13"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 01:23:08 +0000, endDate: 2019-01-16 01:53:08 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010857134f13"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 04:29:02 +0000, endDate: 2019-01-16 04:47:19 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601025d164f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 04:47:19 +0000, endDate: 2019-01-16 04:51:24 +0000, value: 2.325, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601136f164f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 04:51:24 +0000, endDate: 2019-01-16 04:56:27 +0000, value: 2.175, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011873164f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 04:56:27 +0000, endDate: 2019-01-16 05:00:30 +0000, value: 3.375, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011b78164f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:00:30 +0000, endDate: 2019-01-16 05:04:35 +0000, value: 4.6, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011e40174f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 05:13:20 +0000, endDate: 2019-01-16 05:13:20 +0000, value: 4.3, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("012b2b00144d374f13"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:04:35 +0000, endDate: 2019-01-16 05:18:00 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012344174f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:18:00 +0000, endDate: 2019-01-16 05:18:02 +0000, value: 3.925, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010052174f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:18:02 +0000, endDate: 2019-01-16 05:21:47 +0000, value: 3.925, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010252174f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:25:52 +0000, endDate: 2019-01-16 05:29:56 +0000, value: 0.275, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013459174f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:29:56 +0000, endDate: 2019-01-16 05:50:02 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601385d174f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:50:02 +0000, endDate: 2019-01-16 06:00:00 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010272174f13 1/2"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:00:00 +0000, endDate: 2019-01-16 06:11:34 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010272174f13 2/2"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:11:34 +0000, endDate: 2019-01-16 06:31:51 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601224b005013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:31:51 +0000, endDate: 2019-01-16 06:39:56 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601335f005013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:39:56 +0000, endDate: 2019-01-16 06:44:01 +0000, value: 0.225, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013867005013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:44:01 +0000, endDate: 2019-01-16 06:48:05 +0000, value: 0.7, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601016c005013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:48:05 +0000, endDate: 2019-01-16 06:51:58 +0000, value: 0.725, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010570005013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:51:58 +0000, endDate: 2019-01-16 06:56:13 +0000, value: 0.7, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013a73005013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:56:13 +0000, endDate: 2019-01-16 07:00:15 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010d78005013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:00:15 +0000, endDate: 2019-01-16 07:04:19 +0000, value: 1.075, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010f40015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:04:19 +0000, endDate: 2019-01-16 07:08:27 +0000, value: 1.125, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011344015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:08:27 +0000, endDate: 2019-01-16 07:12:30 +0000, value: 1.075, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011b48015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:12:30 +0000, endDate: 2019-01-16 07:20:33 +0000, value: 1.525, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011e4c015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:20:33 +0000, endDate: 2019-01-16 07:24:37 +0000, value: 2.5, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012154015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:24:37 +0000, endDate: 2019-01-16 07:28:42 +0000, value: 3.975, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012558015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 07:47:50 +0000, endDate: 2019-01-16 07:47:50 +0000, value: 1.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("010a0a00326f215013"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:28:42 +0000, endDate: 2019-01-16 07:48:48 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012a5c015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:48:48 +0000, endDate: 2019-01-16 07:53:03 +0000, value: 4.425, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013070015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:53:03 +0000, endDate: 2019-01-16 07:57:21 +0000, value: 1.55, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010375015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:57:21 +0000, endDate: 2019-01-16 08:06:06 +0000, value: 0.6, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011579015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:06:06 +0000, endDate: 2019-01-16 08:10:19 +0000, value: 0.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010646025013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:10:19 +0000, endDate: 2019-01-16 08:14:26 +0000, value: 0.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601134a025013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:14:26 +0000, endDate: 2019-01-16 08:18:30 +0000, value: 0.025, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011a4e025013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:18:30 +0000, endDate: 2019-01-16 08:38:45 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011e52025013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:38:45 +0000, endDate: 2019-01-16 08:42:49 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012d66025013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:42:49 +0000, endDate: 2019-01-16 08:46:53 +0000, value: 0.675, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601316a025013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:46:53 +0000, endDate: 2019-01-16 08:59:17 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601356e025013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:03:07 +0000, endDate: 2019-01-16 09:15:19 +0000, value: 1.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010743035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:19:26 +0000, endDate: 2019-01-16 09:23:30 +0000, value: 3.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011a53035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:23:30 +0000, endDate: 2019-01-16 09:27:31 +0000, value: 2.85, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011e57035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:27:31 +0000, endDate: 2019-01-16 09:31:35 +0000, value: 2.025, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011f5b035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:31:35 +0000, endDate: 2019-01-16 09:35:37 +0000, value: 1.825, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601235f035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:35:37 +0000, endDate: 2019-01-16 09:39:41 +0000, value: 1.775, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012563035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:39:41 +0000, endDate: 2019-01-16 09:43:45 +0000, value: 2.225, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012967035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:43:45 +0000, endDate: 2019-01-16 09:47:49 +0000, value: 2.5, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012d6b035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:47:49 +0000, endDate: 2019-01-16 09:51:42 +0000, value: 2.225, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601316f035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:51:42 +0000, endDate: 2019-01-16 09:55:55 +0000, value: 1.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012a73035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:55:55 +0000, endDate: 2019-01-16 09:59:59 +0000, value: 1.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013777035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:59:59 +0000, endDate: 2019-01-16 10:04:26 +0000, value: 1.325, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013b7b035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:04:26 +0000, endDate: 2019-01-16 10:08:16 +0000, value: 1.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011a44045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:08:16 +0000, endDate: 2019-01-16 10:13:13 +0000, value: 1.325, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011048045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:13:13 +0000, endDate: 2019-01-16 10:17:17 +0000, value: 0.875, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010d4d045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:17:17 +0000, endDate: 2019-01-16 10:21:25 +0000, value: 0.65, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011151045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:21:25 +0000, endDate: 2019-01-16 10:25:26 +0000, value: 0.75, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011955045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:25:26 +0000, endDate: 2019-01-16 10:29:30 +0000, value: 0.825, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011a59045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:29:30 +0000, endDate: 2019-01-16 10:33:31 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011e5d045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:33:31 +0000, endDate: 2019-01-16 10:37:36 +0000, value: 1.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011f61045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:37:36 +0000, endDate: 2019-01-16 10:45:50 +0000, value: 1.025, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012465045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:45:50 +0000, endDate: 2019-01-16 10:50:51 +0000, value: 0.975, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601326d045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:50:51 +0000, endDate: 2019-01-16 10:54:51 +0000, value: 1.15, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013372045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:58:53 +0000, endDate: 2019-01-16 11:02:58 +0000, value: 1.125, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601357a045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:02:58 +0000, endDate: 2019-01-16 11:07:02 +0000, value: 0.975, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013a42055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:07:02 +0000, endDate: 2019-01-16 11:15:09 +0000, value: 0.85, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010247055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:15:09 +0000, endDate: 2019-01-16 11:19:13 +0000, value: 0.625, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601094f055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:19:13 +0000, endDate: 2019-01-16 11:39:31 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010d53055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:43:36 +0000, endDate: 2019-01-16 11:47:37 +0000, value: 2.65, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601246b055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:47:37 +0000, endDate: 2019-01-16 11:51:41 +0000, value: 2.575, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601256f055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:51:41 +0000, endDate: 2019-01-16 11:55:34 +0000, value: 2.175, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012973055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:55:34 +0000, endDate: 2019-01-16 11:59:49 +0000, value: 1.975, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012277055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:08:00 +0000, endDate: 2019-01-16 12:12:24 +0000, value: 2.3, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010048065013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:12:24 +0000, endDate: 2019-01-16 12:21:18 +0000, value: 2.15, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601184c065013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:21:18 +0000, endDate: 2019-01-16 12:26:07 +0000, value: 1.55, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011255065013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:26:07 +0000, endDate: 2019-01-16 12:30:00 +0000, value: 3.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601075a065013 1/2"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:30:00 +0000, endDate: 2019-01-16 12:30:10 +0000, value: 3.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601075a065013 2/2"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:30:10 +0000, endDate: 2019-01-16 12:35:10 +0000, value: 3.525, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010a5e065013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:35:10 +0000, endDate: 2019-01-16 12:39:20 +0000, value: 2.775, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010a63065013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:39:20 +0000, endDate: 2019-01-16 12:43:32 +0000, value: 2.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011467065013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:43:32 +0000, endDate: 2019-01-16 12:47:34 +0000, value: 0.125, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601206b065013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 12:51:11 +0000, endDate: 2019-01-16 12:51:11 +0000, value: 4.7, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("012f2f000b73265013"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:47:34 +0000, endDate: 2019-01-16 12:57:01 +0000, value: 2.125, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601226f065013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:57:01 +0000, endDate: 2019-01-16 13:09:59 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010179065013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 13:09:59 +0000, endDate: 2019-01-16 13:15:50 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013b49075013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 13:15:50 +0000, endDate: 2019-01-16 13:19:56 +0000, value: 4.575, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601324f075013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 13:19:56 +0000, endDate: 2019-01-16 13:49:56 +0000, value: 3.625, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013853075013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 16:40:23 +0000, endDate: 2019-01-16 17:03:20 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160117680a5013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 18:36:38 +0000, endDate: 2019-01-16 18:36:38 +0000, value: 4.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("0128280026642c5013"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 17:03:20 +0000, endDate: 2019-01-16 17:33:20 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160114430b5013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 18:41:35 +0000, endDate: 2019-01-16 19:04:46 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160123690c5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 19:04:46 +0000, endDate: 2019-01-16 19:34:46 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012e440d5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-16 19:41:28 +0000, endDate: 2019-01-16 19:42:39 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("21001c690d1013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 19:44:33 +0000, endDate: 2019-01-16 19:44:33 +0000, value: 5.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("01323200216c2d5013"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 19:48:30 +0000, endDate: 2019-01-16 19:48:30 +0000, value: 5.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("013232001e702d5013"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 20:23:07 +0000, endDate: 2019-01-16 20:42:29 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160107570e5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 20:42:29 +0000, endDate: 2019-01-16 21:02:44 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011d6a0e5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:02:44 +0000, endDate: 2019-01-16 21:27:07 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012c420f5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:27:07 +0000, endDate: 2019-01-16 21:44:26 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601075b0f5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:44:26 +0000, endDate: 2019-01-16 21:48:28 +0000, value: 0.3, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011a6c0f5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:48:28 +0000, endDate: 2019-01-16 21:52:33 +0000, value: 1.875, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c700f5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:52:33 +0000, endDate: 2019-01-16 21:56:35 +0000, value: 3.15, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160121740f5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:56:35 +0000, endDate: 2019-01-16 22:00:00 +0000, value: 3.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160123780f5013 1/2"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:00:00 +0000, endDate: 2019-01-16 22:00:42 +0000, value: 3.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160123780f5013 2/2"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:00:42 +0000, endDate: 2019-01-16 22:04:41 +0000, value: 4.3, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012a40105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:04:41 +0000, endDate: 2019-01-16 22:24:59 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012944105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:24:59 +0000, endDate: 2019-01-16 22:33:07 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013b58105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:33:07 +0000, endDate: 2019-01-16 22:45:07 +0000, value: 4.55, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010761105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:45:07 +0000, endDate: 2019-01-16 22:49:24 +0000, value: 3.775, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601076d105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:49:24 +0000, endDate: 2019-01-16 22:53:28 +0000, value: 2.875, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011871105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:53:28 +0000, endDate: 2019-01-16 22:57:29 +0000, value: 3.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c75105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:57:29 +0000, endDate: 2019-01-16 23:01:33 +0000, value: 3.6, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011d79105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 23:01:33 +0000, endDate: 2019-01-16 23:05:37 +0000, value: 3.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012141115013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 23:05:37 +0000, endDate: 2019-01-16 23:09:42 +0000, value: 3.65, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012545115013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 23:09:42 +0000, endDate: 2019-01-16 23:13:48 +0000, value: 3.725, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012a49115013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 23:13:48 +0000, endDate: 2019-01-16 23:37:54 +0000, value: 3.225, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601304d115013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 23:37:54 +0000, endDate: 2019-01-17 00:00:28 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013665115013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-17 00:00:28 +0000, endDate: 2019-01-17 00:30:28 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c40125013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-17 00:19:30 +0000, endDate: 2019-01-17 00:22:38 +0000, value: 4.7, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional(""), scheduledBasalRate: nil) - -### getNormalizedPumpEventDoseEntriesOverlaidWithBasalEntries - -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-23 15:14:36 +0000, endDate: 2018-12-23 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-23T15:14:36Z 2018-12-23T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-23 18:00:00 +0000, endDate: 2018-12-23 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-23T18:00:00Z 2018-12-23T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-23 22:00:00 +0000, endDate: 2018-12-24 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-23T22:00:00Z 2018-12-24T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-24 02:00:00 +0000, endDate: 2018-12-24 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-24T02:00:00Z 2018-12-24T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-24 06:00:00 +0000, endDate: 2018-12-24 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-24T06:00:00Z 2018-12-24T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-24 12:30:00 +0000, endDate: 2018-12-24 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-24T12:30:00Z 2018-12-24T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-24 14:30:00 +0000, endDate: 2018-12-24 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-24T14:30:00Z 2018-12-24T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-24 18:00:00 +0000, endDate: 2018-12-24 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-24T18:00:00Z 2018-12-24T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-24 22:00:00 +0000, endDate: 2018-12-25 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-24T22:00:00Z 2018-12-25T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-25 02:00:00 +0000, endDate: 2018-12-25 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-25T02:00:00Z 2018-12-25T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-25 06:00:00 +0000, endDate: 2018-12-25 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-25T06:00:00Z 2018-12-25T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-25 12:30:00 +0000, endDate: 2018-12-25 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-25T12:30:00Z 2018-12-25T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-25 14:30:00 +0000, endDate: 2018-12-25 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-25T14:30:00Z 2018-12-25T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-25 18:00:00 +0000, endDate: 2018-12-25 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-25T18:00:00Z 2018-12-25T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-25 22:00:00 +0000, endDate: 2018-12-26 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-25T22:00:00Z 2018-12-26T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-26 02:00:00 +0000, endDate: 2018-12-26 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-26T02:00:00Z 2018-12-26T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-26 06:00:00 +0000, endDate: 2018-12-26 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-26T06:00:00Z 2018-12-26T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-26 12:30:00 +0000, endDate: 2018-12-26 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-26T12:30:00Z 2018-12-26T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-26 14:30:00 +0000, endDate: 2018-12-26 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-26T14:30:00Z 2018-12-26T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-26 18:00:00 +0000, endDate: 2018-12-26 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-26T18:00:00Z 2018-12-26T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-26 22:00:00 +0000, endDate: 2018-12-27 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-26T22:00:00Z 2018-12-27T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-27 02:00:00 +0000, endDate: 2018-12-27 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-27T02:00:00Z 2018-12-27T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-27 06:00:00 +0000, endDate: 2018-12-27 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-27T06:00:00Z 2018-12-27T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-27 12:30:00 +0000, endDate: 2018-12-27 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-27T12:30:00Z 2018-12-27T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-27 14:30:00 +0000, endDate: 2018-12-27 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-27T14:30:00Z 2018-12-27T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-27 18:00:00 +0000, endDate: 2018-12-27 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-27T18:00:00Z 2018-12-27T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-27 22:00:00 +0000, endDate: 2018-12-28 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-27T22:00:00Z 2018-12-28T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-28 02:00:00 +0000, endDate: 2018-12-28 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-28T02:00:00Z 2018-12-28T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-28 06:00:00 +0000, endDate: 2018-12-28 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-28T06:00:00Z 2018-12-28T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-28 12:30:00 +0000, endDate: 2018-12-28 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-28T12:30:00Z 2018-12-28T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-28 14:30:00 +0000, endDate: 2018-12-28 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-28T14:30:00Z 2018-12-28T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-28 18:00:00 +0000, endDate: 2018-12-28 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-28T18:00:00Z 2018-12-28T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-28 22:00:00 +0000, endDate: 2018-12-29 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-28T22:00:00Z 2018-12-29T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-29 02:00:00 +0000, endDate: 2018-12-29 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-29T02:00:00Z 2018-12-29T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-29 06:00:00 +0000, endDate: 2018-12-29 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-29T06:00:00Z 2018-12-29T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-29 12:30:00 +0000, endDate: 2018-12-29 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-29T12:30:00Z 2018-12-29T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-29 14:30:00 +0000, endDate: 2018-12-29 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-29T14:30:00Z 2018-12-29T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-29 18:00:00 +0000, endDate: 2018-12-29 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-29T18:00:00Z 2018-12-29T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-29 22:00:00 +0000, endDate: 2018-12-30 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-29T22:00:00Z 2018-12-30T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-30 02:00:00 +0000, endDate: 2018-12-30 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-30T02:00:00Z 2018-12-30T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-30 06:00:00 +0000, endDate: 2018-12-30 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-30T06:00:00Z 2018-12-30T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-30 12:30:00 +0000, endDate: 2018-12-30 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-30T12:30:00Z 2018-12-30T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-30 14:30:00 +0000, endDate: 2018-12-30 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-30T14:30:00Z 2018-12-30T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-30 18:00:00 +0000, endDate: 2018-12-30 21:50:46 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-30T18:00:00Z 2018-12-30T21:50:46Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2018-12-30 21:50:46 +0000, endDate: 2018-12-30 22:00:00 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("2100ee320f1e12 1/2"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2018-12-30 22:00:00 +0000, endDate: 2018-12-30 22:31:17 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("2100ee320f1e12 2/2"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-30 22:31:17 +0000, endDate: 2018-12-31 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-30T22:31:17Z 2018-12-31T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-31 02:00:00 +0000, endDate: 2018-12-31 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-31T02:00:00Z 2018-12-31T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-31 06:00:00 +0000, endDate: 2018-12-31 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-31T06:00:00Z 2018-12-31T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-31 12:30:00 +0000, endDate: 2018-12-31 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-31T12:30:00Z 2018-12-31T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-31 14:30:00 +0000, endDate: 2018-12-31 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-31T14:30:00Z 2018-12-31T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-31 18:00:00 +0000, endDate: 2018-12-31 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-31T18:00:00Z 2018-12-31T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2018-12-31 22:00:00 +0000, endDate: 2019-01-01 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2018-12-31T22:00:00Z 2019-01-01T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-01 02:00:00 +0000, endDate: 2019-01-01 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-01T02:00:00Z 2019-01-01T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-01 06:00:00 +0000, endDate: 2019-01-01 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-01T06:00:00Z 2019-01-01T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-01 12:30:00 +0000, endDate: 2019-01-01 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-01T12:30:00Z 2019-01-01T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-01 14:30:00 +0000, endDate: 2019-01-01 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-01T14:30:00Z 2019-01-01T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-01 18:00:00 +0000, endDate: 2019-01-01 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-01T18:00:00Z 2019-01-01T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-01 22:00:00 +0000, endDate: 2019-01-02 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-01T22:00:00Z 2019-01-02T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-02 02:00:00 +0000, endDate: 2019-01-02 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-02T02:00:00Z 2019-01-02T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-02 06:00:00 +0000, endDate: 2019-01-02 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-02T06:00:00Z 2019-01-02T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-02 12:30:00 +0000, endDate: 2019-01-02 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-02T12:30:00Z 2019-01-02T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-02 14:30:00 +0000, endDate: 2019-01-02 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-02T14:30:00Z 2019-01-02T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-02 18:00:00 +0000, endDate: 2019-01-02 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-02T18:00:00Z 2019-01-02T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-02 22:00:00 +0000, endDate: 2019-01-03 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-02T22:00:00Z 2019-01-03T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-03 02:00:00 +0000, endDate: 2019-01-03 03:47:57 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-03T02:00:00Z 2019-01-03T03:47:57Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-03 03:47:57 +0000, endDate: 2019-01-03 03:50:47 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("2100396f150213"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-03 03:50:47 +0000, endDate: 2019-01-03 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-03T03:50:47Z 2019-01-03T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-03 06:00:00 +0000, endDate: 2019-01-03 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-03T06:00:00Z 2019-01-03T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-03 12:30:00 +0000, endDate: 2019-01-03 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-03T12:30:00Z 2019-01-03T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-03 14:30:00 +0000, endDate: 2019-01-03 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-03T14:30:00Z 2019-01-03T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-03 18:00:00 +0000, endDate: 2019-01-03 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-03T18:00:00Z 2019-01-03T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-03 22:00:00 +0000, endDate: 2019-01-04 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-03T22:00:00Z 2019-01-04T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-04 02:00:00 +0000, endDate: 2019-01-04 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-04T02:00:00Z 2019-01-04T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-04 06:00:00 +0000, endDate: 2019-01-04 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-04T06:00:00Z 2019-01-04T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-04 12:30:00 +0000, endDate: 2019-01-04 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-04T12:30:00Z 2019-01-04T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-04 14:30:00 +0000, endDate: 2019-01-04 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-04T14:30:00Z 2019-01-04T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-04 18:00:00 +0000, endDate: 2019-01-04 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-04T18:00:00Z 2019-01-04T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-04 22:00:00 +0000, endDate: 2019-01-05 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-04T22:00:00Z 2019-01-05T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-05 02:00:00 +0000, endDate: 2019-01-05 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-05T02:00:00Z 2019-01-05T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-05 06:00:00 +0000, endDate: 2019-01-05 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-05T06:00:00Z 2019-01-05T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-05 12:30:00 +0000, endDate: 2019-01-05 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-05T12:30:00Z 2019-01-05T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-05 14:30:00 +0000, endDate: 2019-01-05 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-05T14:30:00Z 2019-01-05T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-05 18:00:00 +0000, endDate: 2019-01-05 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-05T18:00:00Z 2019-01-05T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-05 22:00:00 +0000, endDate: 2019-01-06 00:41:39 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-05T22:00:00Z 2019-01-06T00:41:39Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-06 00:41:39 +0000, endDate: 2019-01-06 00:43:23 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("21002769120513"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-06 00:43:23 +0000, endDate: 2019-01-06 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-06T00:43:23Z 2019-01-06T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-06 02:00:00 +0000, endDate: 2019-01-06 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-06T02:00:00Z 2019-01-06T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-06 06:00:00 +0000, endDate: 2019-01-06 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-06T06:00:00Z 2019-01-06T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-06 12:30:00 +0000, endDate: 2019-01-06 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-06T12:30:00Z 2019-01-06T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-06 14:30:00 +0000, endDate: 2019-01-06 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-06T14:30:00Z 2019-01-06T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-06 18:00:00 +0000, endDate: 2019-01-06 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-06T18:00:00Z 2019-01-06T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-06 22:00:00 +0000, endDate: 2019-01-07 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-06T22:00:00Z 2019-01-07T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-07 02:00:00 +0000, endDate: 2019-01-07 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-07T02:00:00Z 2019-01-07T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-07 06:00:00 +0000, endDate: 2019-01-07 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-07T06:00:00Z 2019-01-07T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-07 12:30:00 +0000, endDate: 2019-01-07 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-07T12:30:00Z 2019-01-07T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-07 14:30:00 +0000, endDate: 2019-01-07 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-07T14:30:00Z 2019-01-07T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-07 18:00:00 +0000, endDate: 2019-01-07 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-07T18:00:00Z 2019-01-07T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-07 22:00:00 +0000, endDate: 2019-01-08 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-07T22:00:00Z 2019-01-08T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-08 02:00:00 +0000, endDate: 2019-01-08 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-08T02:00:00Z 2019-01-08T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-08 06:00:00 +0000, endDate: 2019-01-08 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-08T06:00:00Z 2019-01-08T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-08 12:30:00 +0000, endDate: 2019-01-08 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-08T12:30:00Z 2019-01-08T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-08 14:30:00 +0000, endDate: 2019-01-08 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-08T14:30:00Z 2019-01-08T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-08 18:00:00 +0000, endDate: 2019-01-08 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-08T18:00:00Z 2019-01-08T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-08 22:00:00 +0000, endDate: 2019-01-09 00:57:19 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-08T22:00:00Z 2019-01-09T00:57:19Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-09 00:57:19 +0000, endDate: 2019-01-09 00:58:27 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("21001379120813"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-09 00:58:27 +0000, endDate: 2019-01-09 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-09T00:58:27Z 2019-01-09T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-09 02:00:00 +0000, endDate: 2019-01-09 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-09T02:00:00Z 2019-01-09T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-09 06:00:00 +0000, endDate: 2019-01-09 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-09T06:00:00Z 2019-01-09T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-09 12:30:00 +0000, endDate: 2019-01-09 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-09T12:30:00Z 2019-01-09T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-09 14:30:00 +0000, endDate: 2019-01-09 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-09T14:30:00Z 2019-01-09T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-09 18:00:00 +0000, endDate: 2019-01-09 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-09T18:00:00Z 2019-01-09T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-09 22:00:00 +0000, endDate: 2019-01-10 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-09T22:00:00Z 2019-01-10T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-10 02:00:00 +0000, endDate: 2019-01-10 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-10T02:00:00Z 2019-01-10T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-10 06:00:00 +0000, endDate: 2019-01-10 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-10T06:00:00Z 2019-01-10T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-10 12:30:00 +0000, endDate: 2019-01-10 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-10T12:30:00Z 2019-01-10T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-10 14:30:00 +0000, endDate: 2019-01-10 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-10T14:30:00Z 2019-01-10T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-10 18:00:00 +0000, endDate: 2019-01-10 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-10T18:00:00Z 2019-01-10T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-10 22:00:00 +0000, endDate: 2019-01-11 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-10T22:00:00Z 2019-01-11T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-11 02:00:00 +0000, endDate: 2019-01-11 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-11T02:00:00Z 2019-01-11T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-11 06:00:00 +0000, endDate: 2019-01-11 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-11T06:00:00Z 2019-01-11T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-11 12:30:00 +0000, endDate: 2019-01-11 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-11T12:30:00Z 2019-01-11T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-11 14:30:00 +0000, endDate: 2019-01-11 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-11T14:30:00Z 2019-01-11T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-11 18:00:00 +0000, endDate: 2019-01-11 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-11T18:00:00Z 2019-01-11T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-11 22:00:00 +0000, endDate: 2019-01-12 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-11T22:00:00Z 2019-01-12T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-12 02:00:00 +0000, endDate: 2019-01-12 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-12T02:00:00Z 2019-01-12T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-12 06:00:00 +0000, endDate: 2019-01-12 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-12T06:00:00Z 2019-01-12T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-12 12:30:00 +0000, endDate: 2019-01-12 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-12T12:30:00Z 2019-01-12T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-12 14:30:00 +0000, endDate: 2019-01-12 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-12T14:30:00Z 2019-01-12T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-12 18:00:00 +0000, endDate: 2019-01-12 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-12T18:00:00Z 2019-01-12T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-12 22:00:00 +0000, endDate: 2019-01-12 23:29:43 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-12T22:00:00Z 2019-01-12T23:29:43Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-12 23:29:43 +0000, endDate: 2019-01-12 23:30:44 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("21002b5d110c13"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-12 23:30:44 +0000, endDate: 2019-01-13 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-12T23:30:44Z 2019-01-13T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-13 02:00:00 +0000, endDate: 2019-01-13 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-13T02:00:00Z 2019-01-13T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-13 06:00:00 +0000, endDate: 2019-01-13 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-13T06:00:00Z 2019-01-13T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-13 12:30:00 +0000, endDate: 2019-01-13 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-13T12:30:00Z 2019-01-13T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-13 14:30:00 +0000, endDate: 2019-01-13 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-13T14:30:00Z 2019-01-13T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-13 18:00:00 +0000, endDate: 2019-01-13 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-13T18:00:00Z 2019-01-13T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-13 22:00:00 +0000, endDate: 2019-01-14 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-13T22:00:00Z 2019-01-14T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-14 02:00:00 +0000, endDate: 2019-01-14 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-14T02:00:00Z 2019-01-14T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-14 06:00:00 +0000, endDate: 2019-01-14 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-14T06:00:00Z 2019-01-14T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-14 12:30:00 +0000, endDate: 2019-01-14 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-14T12:30:00Z 2019-01-14T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-14 14:30:00 +0000, endDate: 2019-01-14 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-14T14:30:00Z 2019-01-14T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-14 18:00:00 +0000, endDate: 2019-01-14 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-14T18:00:00Z 2019-01-14T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-14 22:00:00 +0000, endDate: 2019-01-15 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-14T22:00:00Z 2019-01-15T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-15 02:00:00 +0000, endDate: 2019-01-15 04:04:04 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-15T02:00:00Z 2019-01-15T04:04:04Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-15 04:04:04 +0000, endDate: 2019-01-15 04:07:21 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("21000444160e13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 01:23:42 +0000, endDate: 2019-01-16 01:23:42 +0000, value: 13.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("018282002a57334f13"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-15 04:07:21 +0000, endDate: 2019-01-15 06:00:00 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-15T04:07:21Z 2019-01-15T06:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-15 06:00:00 +0000, endDate: 2019-01-15 12:30:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-15T06:00:00Z 2019-01-15T12:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-15 12:30:00 +0000, endDate: 2019-01-15 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-15T12:30:00Z 2019-01-15T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-15 14:30:00 +0000, endDate: 2019-01-15 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-15T14:30:00Z 2019-01-15T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-15 18:00:00 +0000, endDate: 2019-01-15 22:00:00 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-15T18:00:00Z 2019-01-15T22:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-15 22:00:00 +0000, endDate: 2019-01-16 01:23:08 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-15T22:00:00Z 2019-01-16T01:23:08Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 01:23:08 +0000, endDate: 2019-01-16 01:53:08 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010857134f13"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-16 01:53:08 +0000, endDate: 2019-01-16 02:00:00 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-16T01:53:08Z 2019-01-16T02:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-16 02:00:00 +0000, endDate: 2019-01-16 04:29:02 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-16T02:00:00Z 2019-01-16T04:29:02Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 04:29:02 +0000, endDate: 2019-01-16 04:47:19 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601025d164f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 04:47:19 +0000, endDate: 2019-01-16 04:51:24 +0000, value: 2.325, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601136f164f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 04:51:24 +0000, endDate: 2019-01-16 04:56:27 +0000, value: 2.175, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011873164f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 04:56:27 +0000, endDate: 2019-01-16 05:00:30 +0000, value: 3.375, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011b78164f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:00:30 +0000, endDate: 2019-01-16 05:04:35 +0000, value: 4.6, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011e40174f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 05:13:20 +0000, endDate: 2019-01-16 05:13:20 +0000, value: 4.3, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("012b2b00144d374f13"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:04:35 +0000, endDate: 2019-01-16 05:18:00 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012344174f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:18:00 +0000, endDate: 2019-01-16 05:18:02 +0000, value: 3.925, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010052174f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:18:02 +0000, endDate: 2019-01-16 05:21:47 +0000, value: 3.925, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010252174f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-16 05:21:47 +0000, endDate: 2019-01-16 05:25:52 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-16T05:21:47Z 2019-01-16T05:25:52Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:25:52 +0000, endDate: 2019-01-16 05:29:56 +0000, value: 0.275, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013459174f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:29:56 +0000, endDate: 2019-01-16 05:50:02 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601385d174f13"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 05:50:02 +0000, endDate: 2019-01-16 06:00:00 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010272174f13 1/2"), scheduledBasalRate: Optional(1.2 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:00:00 +0000, endDate: 2019-01-16 06:11:34 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010272174f13 2/2"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:11:34 +0000, endDate: 2019-01-16 06:31:51 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601224b005013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:31:51 +0000, endDate: 2019-01-16 06:39:56 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601335f005013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:39:56 +0000, endDate: 2019-01-16 06:44:01 +0000, value: 0.225, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013867005013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:44:01 +0000, endDate: 2019-01-16 06:48:05 +0000, value: 0.7, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601016c005013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:48:05 +0000, endDate: 2019-01-16 06:51:58 +0000, value: 0.725, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010570005013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:51:58 +0000, endDate: 2019-01-16 06:56:13 +0000, value: 0.7, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013a73005013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 06:56:13 +0000, endDate: 2019-01-16 07:00:15 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010d78005013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:00:15 +0000, endDate: 2019-01-16 07:04:19 +0000, value: 1.075, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010f40015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:04:19 +0000, endDate: 2019-01-16 07:08:27 +0000, value: 1.125, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011344015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:08:27 +0000, endDate: 2019-01-16 07:12:30 +0000, value: 1.075, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011b48015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:12:30 +0000, endDate: 2019-01-16 07:20:33 +0000, value: 1.525, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011e4c015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:20:33 +0000, endDate: 2019-01-16 07:24:37 +0000, value: 2.5, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012154015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:24:37 +0000, endDate: 2019-01-16 07:28:42 +0000, value: 3.975, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012558015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 07:47:50 +0000, endDate: 2019-01-16 07:47:50 +0000, value: 1.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("010a0a00326f215013"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:28:42 +0000, endDate: 2019-01-16 07:48:48 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012a5c015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:48:48 +0000, endDate: 2019-01-16 07:53:03 +0000, value: 4.425, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013070015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:53:03 +0000, endDate: 2019-01-16 07:57:21 +0000, value: 1.55, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010375015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 07:57:21 +0000, endDate: 2019-01-16 08:06:06 +0000, value: 0.6, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011579015013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:06:06 +0000, endDate: 2019-01-16 08:10:19 +0000, value: 0.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010646025013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:10:19 +0000, endDate: 2019-01-16 08:14:26 +0000, value: 0.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601134a025013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:14:26 +0000, endDate: 2019-01-16 08:18:30 +0000, value: 0.025, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011a4e025013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:18:30 +0000, endDate: 2019-01-16 08:38:45 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011e52025013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:38:45 +0000, endDate: 2019-01-16 08:42:49 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012d66025013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:42:49 +0000, endDate: 2019-01-16 08:46:53 +0000, value: 0.675, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601316a025013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 08:46:53 +0000, endDate: 2019-01-16 08:59:17 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601356e025013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-16 08:59:17 +0000, endDate: 2019-01-16 09:03:07 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-16T08:59:17Z 2019-01-16T09:03:07Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:03:07 +0000, endDate: 2019-01-16 09:15:19 +0000, value: 1.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010743035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-16 09:15:19 +0000, endDate: 2019-01-16 09:19:26 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-16T09:15:19Z 2019-01-16T09:19:26Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:19:26 +0000, endDate: 2019-01-16 09:23:30 +0000, value: 3.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011a53035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:23:30 +0000, endDate: 2019-01-16 09:27:31 +0000, value: 2.85, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011e57035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:27:31 +0000, endDate: 2019-01-16 09:31:35 +0000, value: 2.025, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011f5b035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:31:35 +0000, endDate: 2019-01-16 09:35:37 +0000, value: 1.825, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601235f035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:35:37 +0000, endDate: 2019-01-16 09:39:41 +0000, value: 1.775, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012563035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:39:41 +0000, endDate: 2019-01-16 09:43:45 +0000, value: 2.225, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012967035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:43:45 +0000, endDate: 2019-01-16 09:47:49 +0000, value: 2.5, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012d6b035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:47:49 +0000, endDate: 2019-01-16 09:51:42 +0000, value: 2.225, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601316f035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:51:42 +0000, endDate: 2019-01-16 09:55:55 +0000, value: 1.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012a73035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:55:55 +0000, endDate: 2019-01-16 09:59:59 +0000, value: 1.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013777035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 09:59:59 +0000, endDate: 2019-01-16 10:04:26 +0000, value: 1.325, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013b7b035013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:04:26 +0000, endDate: 2019-01-16 10:08:16 +0000, value: 1.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011a44045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:08:16 +0000, endDate: 2019-01-16 10:13:13 +0000, value: 1.325, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011048045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:13:13 +0000, endDate: 2019-01-16 10:17:17 +0000, value: 0.875, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010d4d045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:17:17 +0000, endDate: 2019-01-16 10:21:25 +0000, value: 0.65, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011151045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:21:25 +0000, endDate: 2019-01-16 10:25:26 +0000, value: 0.75, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011955045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:25:26 +0000, endDate: 2019-01-16 10:29:30 +0000, value: 0.825, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011a59045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:29:30 +0000, endDate: 2019-01-16 10:33:31 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011e5d045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:33:31 +0000, endDate: 2019-01-16 10:37:36 +0000, value: 1.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011f61045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:37:36 +0000, endDate: 2019-01-16 10:45:50 +0000, value: 1.025, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012465045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:45:50 +0000, endDate: 2019-01-16 10:50:51 +0000, value: 0.975, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601326d045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:50:51 +0000, endDate: 2019-01-16 10:54:51 +0000, value: 1.15, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013372045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-16 10:54:51 +0000, endDate: 2019-01-16 10:58:53 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-16T10:54:51Z 2019-01-16T10:58:53Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 10:58:53 +0000, endDate: 2019-01-16 11:02:58 +0000, value: 1.125, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601357a045013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:02:58 +0000, endDate: 2019-01-16 11:07:02 +0000, value: 0.975, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013a42055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:07:02 +0000, endDate: 2019-01-16 11:15:09 +0000, value: 0.85, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010247055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:15:09 +0000, endDate: 2019-01-16 11:19:13 +0000, value: 0.625, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601094f055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:19:13 +0000, endDate: 2019-01-16 11:39:31 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010d53055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-16 11:39:31 +0000, endDate: 2019-01-16 11:43:36 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-16T11:39:31Z 2019-01-16T11:43:36Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:43:36 +0000, endDate: 2019-01-16 11:47:37 +0000, value: 2.65, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601246b055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:47:37 +0000, endDate: 2019-01-16 11:51:41 +0000, value: 2.575, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601256f055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:51:41 +0000, endDate: 2019-01-16 11:55:34 +0000, value: 2.175, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012973055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 11:55:34 +0000, endDate: 2019-01-16 11:59:49 +0000, value: 1.975, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012277055013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-16 11:59:49 +0000, endDate: 2019-01-16 12:08:00 +0000, value: 1.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-16T11:59:49Z 2019-01-16T12:08:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:08:00 +0000, endDate: 2019-01-16 12:12:24 +0000, value: 2.3, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010048065013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:12:24 +0000, endDate: 2019-01-16 12:21:18 +0000, value: 2.15, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601184c065013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:21:18 +0000, endDate: 2019-01-16 12:26:07 +0000, value: 1.55, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011255065013"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:26:07 +0000, endDate: 2019-01-16 12:30:00 +0000, value: 3.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601075a065013 1/2"), scheduledBasalRate: Optional(1.25 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:30:00 +0000, endDate: 2019-01-16 12:30:10 +0000, value: 3.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601075a065013 2/2"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:30:10 +0000, endDate: 2019-01-16 12:35:10 +0000, value: 3.525, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010a5e065013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:35:10 +0000, endDate: 2019-01-16 12:39:20 +0000, value: 2.775, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010a63065013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:39:20 +0000, endDate: 2019-01-16 12:43:32 +0000, value: 2.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011467065013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:43:32 +0000, endDate: 2019-01-16 12:47:34 +0000, value: 0.125, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601206b065013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 12:51:11 +0000, endDate: 2019-01-16 12:51:11 +0000, value: 4.7, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("012f2f000b73265013"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:47:34 +0000, endDate: 2019-01-16 12:57:01 +0000, value: 2.125, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601226f065013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 12:57:01 +0000, endDate: 2019-01-16 13:09:59 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010179065013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 13:09:59 +0000, endDate: 2019-01-16 13:15:50 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013b49075013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 13:15:50 +0000, endDate: 2019-01-16 13:19:56 +0000, value: 4.575, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601324f075013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 13:19:56 +0000, endDate: 2019-01-16 13:49:56 +0000, value: 3.625, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013853075013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-16 13:49:56 +0000, endDate: 2019-01-16 14:30:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-16T13:49:56Z 2019-01-16T14:30:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-16 14:30:00 +0000, endDate: 2019-01-16 16:40:23 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-16T14:30:00Z 2019-01-16T16:40:23Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 16:40:23 +0000, endDate: 2019-01-16 17:03:20 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160117680a5013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 18:36:38 +0000, endDate: 2019-01-16 18:36:38 +0000, value: 4.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("0128280026642c5013"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 17:03:20 +0000, endDate: 2019-01-16 17:33:20 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160114430b5013"), scheduledBasalRate: Optional(1.45 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-16 17:33:20 +0000, endDate: 2019-01-16 18:00:00 +0000, value: 1.45, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-16T17:33:20Z 2019-01-16T18:00:00Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-16 18:00:00 +0000, endDate: 2019-01-16 18:41:35 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-16T18:00:00Z 2019-01-16T18:41:35Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 18:41:35 +0000, endDate: 2019-01-16 19:04:46 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160123690c5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 19:04:46 +0000, endDate: 2019-01-16 19:34:46 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012e440d5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-16 19:34:46 +0000, endDate: 2019-01-16 19:41:28 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-16T19:34:46Z 2019-01-16T19:41:28Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-16 19:41:28 +0000, endDate: 2019-01-16 19:42:39 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("21001c690d1013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 19:44:33 +0000, endDate: 2019-01-16 19:44:33 +0000, value: 5.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("01323200216c2d5013"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.bolus, startDate: 2019-01-16 19:48:30 +0000, endDate: 2019-01-16 19:48:30 +0000, value: 5.0, unit: LoopKit.DoseUnit.units, description: nil, syncIdentifier: Optional("013232001e702d5013"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-16 19:42:39 +0000, endDate: 2019-01-16 20:23:07 +0000, value: 0.9, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("BasalRateSchedule 2019-01-16T19:42:39Z 2019-01-16T20:23:07Z"), scheduledBasalRate: nil) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 20:23:07 +0000, endDate: 2019-01-16 20:42:29 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160107570e5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 20:42:29 +0000, endDate: 2019-01-16 21:02:44 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011d6a0e5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:02:44 +0000, endDate: 2019-01-16 21:27:07 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012c420f5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:27:07 +0000, endDate: 2019-01-16 21:44:26 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601075b0f5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:44:26 +0000, endDate: 2019-01-16 21:48:28 +0000, value: 0.3, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011a6c0f5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:48:28 +0000, endDate: 2019-01-16 21:52:33 +0000, value: 1.875, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c700f5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:52:33 +0000, endDate: 2019-01-16 21:56:35 +0000, value: 3.15, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160121740f5013"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 21:56:35 +0000, endDate: 2019-01-16 22:00:00 +0000, value: 3.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160123780f5013 1/2"), scheduledBasalRate: Optional(0.9 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:00:00 +0000, endDate: 2019-01-16 22:00:42 +0000, value: 3.05, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("160123780f5013 2/2"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:00:42 +0000, endDate: 2019-01-16 22:04:41 +0000, value: 4.3, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012a40105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:04:41 +0000, endDate: 2019-01-16 22:24:59 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012944105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:24:59 +0000, endDate: 2019-01-16 22:33:07 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013b58105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:33:07 +0000, endDate: 2019-01-16 22:45:07 +0000, value: 4.55, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010761105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:45:07 +0000, endDate: 2019-01-16 22:49:24 +0000, value: 3.775, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601076d105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:49:24 +0000, endDate: 2019-01-16 22:53:28 +0000, value: 2.875, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011871105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:53:28 +0000, endDate: 2019-01-16 22:57:29 +0000, value: 3.25, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c75105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 22:57:29 +0000, endDate: 2019-01-16 23:01:33 +0000, value: 3.6, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011d79105013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 23:01:33 +0000, endDate: 2019-01-16 23:05:37 +0000, value: 3.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012141115013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 23:05:37 +0000, endDate: 2019-01-16 23:09:42 +0000, value: 3.65, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012545115013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 23:09:42 +0000, endDate: 2019-01-16 23:13:48 +0000, value: 3.725, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012a49115013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 23:13:48 +0000, endDate: 2019-01-16 23:37:54 +0000, value: 3.225, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601304d115013"), scheduledBasalRate: Optional(1.4 IU/hr)) -* DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-16 23:37:54 +0000, endDate: 2019-01-17 00:00:28 +0000, value: 5.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16013665115013"), scheduledBasalRate: Optional(1.4 IU/hr)) - -### InsulinDeliveryStore -* observerQuery: Optional() -* observationStart: 2019-01-16 07:08:36 +0000 -* observationEnabled: true -* authorizationRequired: false - -* lastBasalEndDate: 2019-01-17 00:00:28 +0000 - - - - diff --git a/projects/tests/parsers/test_loop_report.py b/projects/tests/parsers/test_loop_report.py index e320276c..55db049a 100644 --- a/projects/tests/parsers/test_loop_report.py +++ b/projects/tests/parsers/test_loop_report.py @@ -1,71 +1,2055 @@ -from projects.parsers.loop_report import LoopReport +# from projects.parsers.loop_report import LoopReport +import projects.parsers.loop_report as loop_report import os import pytest def test_parse_by_file(): - lr = LoopReport() - loop_dict = lr.parse_by_file(os.getcwd() + "/files", 'LoopReport.md') - - valid_loop_report_dict = {'file_name': 'LoopReport.md', - 'loop_version': 'Loop v1.9.3', - 'rileyLink_radio_firmware': - 'Optional(subg_rfspy 0.9)', - 'rileyLink_ble_firmware': 'Optional(ble_rfspy 0.9)', - 'carb_ratio_unit': 'g', - 'carb_ratio_timeZone': -28800, - 'carb_ratio_schedule': [{'startTime': 0.0, 'value': 10.0}, {'startTime': 66600.0, 'value': 9.0}], - 'carb_default_absorption_times_fast': 1800.0, - 'carb_default_absorption_times_medium': 10800.0, - 'carb_default_absorption_times_slow': 18000.0, - 'insulin_sensitivity_factor_schedule': [{'startTime': 0.0, 'value': 20.0}, {'startTime': 9000.0, 'value': 40.0}, {'startTime': 82800.0, 'value': 35.0}], - 'insulin_sensitivity_factor_timeZone': -28800, - 'insulin_sensitivity_factor_unit': 'mg/dL', - 'basal_rate_timeZone': -28800, - 'basal_rate_schedule': [{'startTime': 0.0, 'value': 0.8}, {'startTime': 23400.0, 'value': 0.8}, {'startTime': 72000.0, 'value': 0.6}], - 'insulin_model': 'humalogNovologAdult', - 'insulin_action_duration': 21600.0, - 'pump_manager_type': 'minimed', - 'pump_model': '723', - 'maximum_basal_rate': 4.0, - 'maximum_bolus': 10.0, - 'retrospective_correction_enabled': 'true', - 'suspend_threshold': 85.0, - 'suspend_threshold_unit': 'mg/dL', - 'override_range_workout': [135.0, 145.0], - 'override_range_premeal': [70.0, 80.0]} - - assert loop_dict == valid_loop_report_dict + lr = loop_report.LoopReport() + loop_dict = lr.parse_by_file(os.getcwd() + "/files", "LoopReport.md") + assert loop_dict["file_name"] == "LoopReport.md" + assert loop_dict["loop_version"] == "Loop v1.9.3" + assert loop_dict["rileyLink_radio_firmware"] == "Optional(subg_rfspy 0.9)" + assert loop_dict["rileyLink_ble_firmware"] == "Optional(ble_rfspy 0.9)" + assert loop_dict["carb_ratio_unit"] == "g" + assert loop_dict["carb_ratio_timeZone"] == -28800 + + carb_ratio_schedule = [ + {"startTime": 0.0, "value": 10.0}, + {"startTime": 66600.0, "value": 9.0}, + ] + assert loop_dict["carb_ratio_schedule"] == carb_ratio_schedule + assert loop_dict["carb_default_absorption_times_fast"] == 1800.0 + assert loop_dict["carb_default_absorption_times_medium"] == 10800.0 + assert loop_dict["carb_default_absorption_times_slow"] == 18000.0 + insulin_sensitivity_factor_schedule = [ + {"startTime": 0.0, "value": 20.0}, + {"startTime": 9000.0, "value": 40.0}, + {"startTime": 82800.0, "value": 35.0}, + ] + assert ( + loop_dict["insulin_sensitivity_factor_schedule"] + == insulin_sensitivity_factor_schedule + ) + + assert loop_dict["insulin_sensitivity_factor_timeZone"] == -28800 + assert loop_dict["insulin_sensitivity_factor_unit"] == "mg/dL" + assert loop_dict["basal_rate_timeZone"] == -28800 + basal_rate_schedule = [ + {"startTime": 0.0, "value": 0.8}, + {"startTime": 23400.0, "value": 0.8}, + {"startTime": 72000.0, "value": 0.6}, + ] + assert loop_dict["basal_rate_schedule"] == basal_rate_schedule + assert loop_dict["insulin_model"] == "humalogNovologAdult" + assert loop_dict["insulin_action_duration"] == 21600.0 + assert loop_dict["pump_manager_type"] == "minimed" + assert loop_dict["pump_model"] == "723" + assert loop_dict["maximum_basal_rate"] == 4.0 + assert loop_dict["maximum_bolus"] == 10.0 + assert loop_dict["retrospective_correction_enabled"] == "true" + assert loop_dict["suspend_threshold"] == 85.0 + assert loop_dict["suspend_threshold_unit"] == "mg/dL" + + assert loop_dict["override_range_workout_minimum"] == 135.0 + assert loop_dict["override_range_workout_maximum"] == 145.0 + + assert loop_dict["override_range_premeal_minimum"] == 70.0 + assert loop_dict["override_range_premeal_maximum"] == 80.0 + + assert ( + loop_dict["retrospective_glucose_discrepancies_summed"] + == get_retrospective_glucose_discrepancies_summed() + ) + assert ( + loop_dict["insulin_counteraction_effects"] + == get_insulin_counteraction_effects() + ) + assert loop_dict["get_reservoir_values"] == get_reservoir_values() + assert loop_dict["predicted_glucose"] == get_predicted_glucose() + assert ( + loop_dict["retrospective_glucose_discrepancies"] + == get_retrospective_glucose_discrepancies() + ) + assert loop_dict["carb_effect"] == get_carb_effect() + assert loop_dict["insulin_effect"] == get_insulin_effect() + assert ( + loop_dict["get_normalized_pump_event_dose"] == get_normalized_pump_event_dose() + ) + assert loop_dict["get_normalized_dose_entries"] == get_normalized_dose_entries() + assert loop_dict["cached_dose_entries"] == get_cached_dose_entries() + assert loop_dict["get_pump_event_values"] == get_pump_event_values() + assert loop_dict["message_log"] == get_message_log() + assert loop_dict["g5_cgm_manager"] == get_g5_cgm_manager() + assert loop_dict["dex_cgm_manager"] == { + "latestBackfill": { + "glucose": " 98", + "trend": " 5", + "timestamp": " 2018-12-13 21", + } + } + assert loop_dict["riley_link_pump_manager"] == { + "rileyLinkConnectionManager": " Optional(RileyLinkBLEKit.RileyLinkConnectionManager)", + "lastTimerTick": " 2019-01-28 14:26:19 +0000", + } + assert loop_dict["riley_link_device_manager"] == get_riley_link_device_manager() + assert loop_dict["persistence_controller"] == get_persistence_controller() + assert loop_dict["glucose_store"] == get_glucose_store() + assert loop_dict["cached_glucose_samples"] == get_cached_glucose_samples() + assert loop_dict["cached_carb_entries"] == get_cached_carb_entries() + assert loop_dict["insulin_delivery_store"] == get_insulin_delivery_store() + assert loop_dict["glucose_momentum_effect"] == get_glucose_momentum_effect() + assert ( + loop_dict["status_extension_data_manager"] + == get_status_extension_data_manager() + ) + assert ( + loop_dict["retrospective_glucose_change"] == get_retrospective_glucose_change() + ) + assert ( + loop_dict["retrospective_predicted_glucose"] + == get_retrospective_predicted_glucose() + ) + + +def get_status_extension_data_manager(): + return { + "sensor": { + "isStateValid": " true", + " stateDescription": " ok ", + " trendType": " 4", + " isLocal": " true", + }, + "netBasal": { + "": ' "percentage"', + ' "start"': " 2019-01-28 15", + ' "rate"': " -0.8", + ' "end"': " 2019-01-28 15", + }, + "version": "5", + "predictedGlucose": { + "values": [ + "85.732078872579", + "86.44096256310476", + "86.77019751074303", + "86.74103998552496", + "86.64342159003903", + "86.57898055151605", + "86.54829897295224", + "86.5520006409324", + "86.59083783299144", + "86.66555585381998", + "86.77683520191353", + "86.92521097785732", + "87.06166310407576", + "87.18657445807551", + "87.30036060017812", + "87.40355987211228", + "87.4967727773405", + "87.58041626246342", + "87.65476704819528", + "87.72029003700567", + "87.77754565123954", + "87.8273377716408", + "87.87044653212743", + "87.90751659629285", + "87.93889754994686", + "87.96500123976884", + "87.98647008053209", + "88.00392652213652", + "88.01795871129279", + "88.02912156874194", + "88.0379378183584", + "88.04489934830934", + "88.05046836922816", + "88.05508417906836", + "88.05917636320798", + "88.06314680728673", + "88.06727407099355", + "88.07155325261802", + "88.07596408572763", + "88.08048771649001", + "88.0851791482404", + "88.09021545216102", + "88.0955744117943", + "88.10122342167693", + "88.10713178627508", + "88.11312558507561", + "88.11889980331782", + "88.12484203567728", + "88.13124497984529", + "88.13808315983019", + "88.14502479923775", + "88.15104161042552", + "88.15539987378455", + "88.15777204139727", + "88.15835646191698", + "88.15761275402889", + "88.15598599919659", + "88.15389249855268", + "88.15170285865179", + "88.149703828917", + "88.14810111911734", + "88.14688621614334", + "88.14603489653823", + "88.145523923539", + "88.14533102945123", + "88.14543489642449", + "88.14574261113549", + "88.14596950526587", + "88.14598217974014", + "88.14598217974014", + "88.14598217974014", + "88.14598217974014", + "88.14598217974014", + "88.14598217974014", + "88.14598217974014", + ], + "unit": "mg/dL", + "interval": 300.0, + "startDate": " 2019-01-28 15:20:00 +0000", + }, + "batteryPercentage": 1.0, + "lastLoopCompleted": " 2019-01-28 15:16:28 +0000", + } def test_parse_by_directory(): - lr = LoopReport() - list_of_files = lr.parse_by_directory(os.path.realpath('files')) + lr = loop_report.LoopReport() + list_of_files = lr.parse_by_directory(os.path.realpath("files")) assert len(list_of_files) == 2 + def test_parse_by_file_missing_file_name(): with pytest.raises(RuntimeError) as excinfo: - lr = LoopReport() - lr.parse_by_file(os.getcwd() + "/files", '') - assert 'The file path or file name passed in is invalid.' in str(excinfo.value) + lr = loop_report.LoopReport() + lr.parse_by_file(os.getcwd() + "/files", "") + assert "The file path or file name passed in is invalid." in str(excinfo.value) + def test_parse_by_file_invalid_directory(): with pytest.raises(RuntimeError) as excinfo: - lr = LoopReport() - lr.parse_by_file("", 'test_loop_report.py') - assert 'The file path or file name passed in is invalid.' in str(excinfo.value) + lr = loop_report.LoopReport() + lr.parse_by_file("", "test_loop_report.py") + assert "The file path or file name passed in is invalid." in str(excinfo.value) def test_parse_by_directory_invalid_directory(): with pytest.raises(RuntimeError) as excinfo: - lr = LoopReport() + lr = loop_report.LoopReport() lr.parse_by_directory("") - assert 'The directory passed in is invalid.' in str(excinfo.value) + assert "The directory passed in is invalid." in str(excinfo.value) + + +def get_retrospective_predicted_glucose(): + return [ + { + "startDate": "2019-01-28 14:51:19 +0000", + "quantity": 89.0, + "quantity_units": "mg/dL", + }, + { + "startDate": "2019-01-28 14:55:00 +0000", + "quantity": 89.0, + "quantity_units": "mg/dL", + }, + { + "startDate": "2019-01-28 15:00:00 +0000", + "quantity": 88.8429, + "quantity_units": "mg/dL", + }, + { + "startDate": "2019-01-28 15:05:00 +0000", + "quantity": 88.6718, + "quantity_units": "mg/dL", + }, + { + "startDate": "2019-01-28 15:10:00 +0000", + "quantity": 88.48, + "quantity_units": "mg/dL", + }, + { + "startDate": "2019-01-28 15:15:00 +0000", + "quantity": 88.2673, + "quantity_units": "mg/dL", + }, + ] + + +def get_retrospective_glucose_change(): + return { + "start_dict": { + " sampleUUID": "8B9AA1D2-E475-47E0-9612-76C01A438AD3", + " syncIdentifier": '"00AA0A 2594908"', + " syncVersion": "1", + " startDate": "2019-01-28 14:51:19 +0000", + " quantity": "89 mg/dL", + " isDisplayOnly": "false", + " provenanceIdentifier": '"com.34SNZ39Q48.loopkit.Loop"', + }, + "end_dict": { + "sampleUUID": "7ED3FC10-0E37-4243-86F1-6E187E62F2DF", + " syncIdentifier": '"00AA0A 2596408"', + " syncVersion": "1", + " startDate": "2019-01-28 15:16:20 +0000", + " quantity": "85 mg/dL", + " isDisplayOnly": "false", + " provenanceIdentifier": '"com.34SNZ39Q48.loopkit.Loop"', + }, + } + + +def get_glucose_momentum_effect(): + return [ + { + "startDate": "2019-01-28 15:15:00 +0000", + "quantity": 0.0, + "quantity_units": "mg/dL", + }, + { + "startDate": "2019-01-28 15:20:00 +0000", + "quantity": 0.732079, + "quantity_units": "mg/dL", + }, + { + "startDate": "2019-01-28 15:25:00 +0000", + "quantity": 1.73202, + "quantity_units": "mg/dL", + }, + { + "startDate": "2019-01-28 15:30:00 +0000", + "quantity": 2.73197, + "quantity_units": "mg/dL", + }, + { + "startDate": "2019-01-28 15:35:00 +0000", + "quantity": 3.73191, + "quantity_units": "mg/dL", + }, + ] + + +def get_pump_event_values(): + return [ + { + "rate": "ype: MinimedKit.TempBasalPumpEvent.RateType.Absolute", + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 7 minute: 1 second: 27 isLeapMonth: false ))", + "rawData": " 8 bytes", + "length": " 8", + "raw": " Optional(8 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50085", + "isUploaded": " false", + "persistedDate": " 2019-01-28 15:06:41 +0000", + "date": " 2019-01-28 15:01:27 +0000", + }, + { + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 7 minute: 1 second: 27 isLeapMonth: false ))", + "rawData": " 7 bytes", + "length": " 7", + "raw": " Optional(7 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50084", + "isUploaded": " true", + "syncIdentifier": " Optional(16011b41075c13), scheduledBasalRate: nil", + "description": " nil", + "unit": " LoopKit.DoseUnit.unitsPerHour", + "value": " 0.0", + "endDate": " 2019-01-28 15:31:27 +0000", + "startDate": " 2019-01-28 15:01:27 +0000", + "type": " LoopKit.DoseType.tempBasal", + "persistedDate": " 2019-01-28 15:06:41 +0000", + "date": " 2019-01-28 15:01:27 +0000", + }, + { + "rate": "ype: MinimedKit.TempBasalPumpEvent.RateType.Absolute", + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 51 second: 28 isLeapMonth: false ))", + "rawData": " 8 bytes", + "length": " 8", + "raw": " Optional(8 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50083", + "isUploaded": " false", + "persistedDate": " 2019-01-28 14:56:28 +0000", + "date": " 2019-01-28 14:51:28 +0000", + }, + { + "rate": " 0.8)))", + "timeOffset": " 23400.0", + "index": " 1", + "isLeapMonth": " false ", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 51 second: 28 isLeapMonth: false ", + "rawData": " 10 bytes", + "length": " 10", + "raw": " Optional(10 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50082", + "isUploaded": " false", + "syncIdentifier": " Optional(7b011c73061c130d2000), scheduledBasalRate: nil", + "description": " nil", + "unit": " LoopKit.DoseUnit.unitsPerHour", + "value": " 0.8", + "endDate": " 2019-01-29 14:51:28 +0000", + "startDate": " 2019-01-28 14:51:28 +0000", + "type": " LoopKit.DoseType.basal", + "persistedDate": " 2019-01-28 14:56:28 +0000", + "date": " 2019-01-28 14:51:28 +0000", + }, + { + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 51 second: 28 isLeapMonth: false ))", + "rawData": " 7 bytes", + "length": " 7", + "raw": " Optional(7 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50081", + "isUploaded": " true", + "syncIdentifier": " Optional(16001c73065c13), scheduledBasalRate: nil", + "description": " nil", + "unit": " LoopKit.DoseUnit.unitsPerHour", + "value": " 0.0", + "endDate": " 2019-01-28 14:51:28 +0000", + "startDate": " 2019-01-28 14:51:28 +0000", + "type": " LoopKit.DoseType.tempBasal", + "persistedDate": " 2019-01-28 14:56:28 +0000", + "date": " 2019-01-28 14:51:28 +0000", + }, + { + "rate": "ype: MinimedKit.TempBasalPumpEvent.RateType.Absolute", + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 46 second: 28 isLeapMonth: false ))", + "rawData": " 8 bytes", + "length": " 8", + "raw": " Optional(8 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50080", + "isUploaded": " false", + "persistedDate": " 2019-01-28 14:51:28 +0000", + "date": " 2019-01-28 14:46:28 +0000", + }, + { + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 46 second: 28 isLeapMonth: false ))", + "rawData": " 7 bytes", + "length": " 7", + "raw": " Optional(7 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50079", + "isUploaded": " true", + "syncIdentifier": " Optional(16011c6e065c13), scheduledBasalRate: nil", + "description": " nil", + "unit": " LoopKit.DoseUnit.unitsPerHour", + "value": " 0.0", + "endDate": " 2019-01-28 15:16:28 +0000", + "startDate": " 2019-01-28 14:46:28 +0000", + "type": " LoopKit.DoseType.tempBasal", + "persistedDate": " 2019-01-28 14:51:28 +0000", + "date": " 2019-01-28 14:46:28 +0000", + }, + { + "rate": "ype: MinimedKit.TempBasalPumpEvent.RateType.Absolute", + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 41 second: 28 isLeapMonth: false ))", + "rawData": " 8 bytes", + "length": " 8", + "raw": " Optional(8 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50078", + "isUploaded": " false", + "persistedDate": " 2019-01-28 14:46:28 +0000", + "date": " 2019-01-28 14:41:28 +0000", + }, + { + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 41 second: 28 isLeapMonth: false ))", + "rawData": " 7 bytes", + "length": " 7", + "raw": " Optional(7 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50077", + "isUploaded": " true", + "syncIdentifier": " Optional(16011c69065c13), scheduledBasalRate: nil", + "description": " nil", + "unit": " LoopKit.DoseUnit.unitsPerHour", + "value": " 1.2", + "endDate": " 2019-01-28 15:11:28 +0000", + "startDate": " 2019-01-28 14:41:28 +0000", + "type": " LoopKit.DoseType.tempBasal", + "persistedDate": " 2019-01-28 14:46:28 +0000", + "date": " 2019-01-28 14:41:28 +0000", + }, + { + "rate": "ype: MinimedKit.TempBasalPumpEvent.RateType.Absolute", + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 36 second: 27 isLeapMonth: false ))", + "rawData": " 8 bytes", + "length": " 8", + "raw": " Optional(8 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50076", + "isUploaded": " false", + "persistedDate": " 2019-01-28 14:41:28 +0000", + "date": " 2019-01-28 14:36:27 +0000", + }, + { + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 36 second: 27 isLeapMonth: false ))", + "rawData": " 7 bytes", + "length": " 7", + "raw": " Optional(7 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50075", + "isUploaded": " true", + "syncIdentifier": " Optional(16011b64065c13), scheduledBasalRate: nil", + "description": " nil", + "unit": " LoopKit.DoseUnit.unitsPerHour", + "value": " 1.4", + "endDate": " 2019-01-28 15:06:27 +0000", + "startDate": " 2019-01-28 14:36:27 +0000", + "type": " LoopKit.DoseType.tempBasal", + "persistedDate": " 2019-01-28 14:41:28 +0000", + "date": " 2019-01-28 14:36:27 +0000", + }, + { + "rate": " 0.8)))", + "timeOffset": " 23400.0", + "index": " 1", + "isLeapMonth": " false ", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 30 second: 0 isLeapMonth: false ", + "rawData": " 10 bytes", + "length": " 10", + "raw": " Optional(10 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50074", + "isUploaded": " false", + "syncIdentifier": " Optional(7b01005e061c130d2000), scheduledBasalRate: nil", + "description": " nil", + "unit": " LoopKit.DoseUnit.unitsPerHour", + "value": " 0.8", + "endDate": " 2019-01-29 14:30:00 +0000", + "startDate": " 2019-01-28 14:30:00 +0000", + "type": " LoopKit.DoseType.basal", + "persistedDate": " 2019-01-28 14:31:28 +0000", + "date": " 2019-01-28 14:30:00 +0000", + }, + { + "rate": " 0.8)))", + "timeOffset": " 0.0", + "index": " 0", + "isLeapMonth": " false ", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 6 second: 27 isLeapMonth: false ", + "rawData": " 10 bytes", + "length": " 10", + "raw": " Optional(10 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50071", + "isUploaded": " false", + "syncIdentifier": " Optional(7b001b46061c13002000), scheduledBasalRate: nil", + "description": " nil", + "unit": " LoopKit.DoseUnit.unitsPerHour", + "value": " 0.8", + "endDate": " 2019-01-29 14:06:27 +0000", + "startDate": " 2019-01-28 14:06:27 +0000", + "type": " LoopKit.DoseType.basal", + "persistedDate": " 2019-01-28 14:11:28 +0000", + "date": " 2019-01-28 14:06:27 +0000", + }, + { + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 6 second: 27 isLeapMonth: false ))", + "rawData": " 7 bytes", + "length": " 7", + "raw": " Optional(7 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50072", + "isUploaded": " true", + "syncIdentifier": " Optional(16001b46065c13), scheduledBasalRate: nil", + "description": " nil", + "unit": " LoopKit.DoseUnit.unitsPerHour", + "value": " 0.0", + "endDate": " 2019-01-28 14:06:27 +0000", + "startDate": " 2019-01-28 14:06:27 +0000", + "type": " LoopKit.DoseType.tempBasal", + "persistedDate": " 2019-01-28 14:11:28 +0000", + "date": " 2019-01-28 14:06:27 +0000", + }, + { + "rate": "ype: MinimedKit.TempBasalPumpEvent.RateType.Absolute", + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 6 second: 27 isLeapMonth: false ))", + "rawData": " 8 bytes", + "length": " 8", + "raw": " Optional(8 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50073", + "isUploaded": " false", + "persistedDate": " 2019-01-28 14:11:28 +0000", + "date": " 2019-01-28 14:06:27 +0000", + }, + { + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 1 second: 41 isLeapMonth: false ))", + "rawData": " 7 bytes", + "length": " 7", + "raw": " Optional(7 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50069", + "isUploaded": " true", + "syncIdentifier": " Optional(16012941065c13), scheduledBasalRate: nil", + "description": " nil", + "unit": " LoopKit.DoseUnit.unitsPerHour", + "value": " 0.0", + "endDate": " 2019-01-28 14:31:41 +0000", + "startDate": " 2019-01-28 14:01:41 +0000", + "type": " LoopKit.DoseType.tempBasal", + "persistedDate": " 2019-01-28 14:01:58 +0000", + "date": " 2019-01-28 14:01:41 +0000", + }, + { + "rate": "ype: MinimedKit.TempBasalPumpEvent.RateType.Absolute", + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 1 second: 41 isLeapMonth: false ))", + "rawData": " 8 bytes", + "length": " 8", + "raw": " Optional(8 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50067", + "isUploaded": " false", + "persistedDate": " 2019-01-28 14:01:58 +0000", + "date": " 2019-01-28 14:01:41 +0000", + }, + { + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 5 minute: 56 second: 27 isLeapMonth: false ))", + "rawData": " 7 bytes", + "length": " 7", + "raw": " Optional(7 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50070", + "isUploaded": " true", + "syncIdentifier": " Optional(16011b78055c13), scheduledBasalRate: nil", + "description": " nil", + "unit": " LoopKit.DoseUnit.unitsPerHour", + "value": " 0.375", + "endDate": " 2019-01-28 14:26:27 +0000", + "startDate": " 2019-01-28 13:56:27 +0000", + "type": " LoopKit.DoseType.tempBasal", + "persistedDate": " 2019-01-28 14:01:58 +0000", + "date": " 2019-01-28 13:56:27 +0000", + }, + { + "rate": "ype: MinimedKit.TempBasalPumpEvent.RateType.Absolute", + "isLeapMonth": " false ))", + "timestamp": " calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 5 minute: 56 second: 27 isLeapMonth: false ))", + "rawData": " 8 bytes", + "length": " 8", + "raw": " Optional(8 bytes)", + "objectIDURL": " x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50068", + "isUploaded": " false", + "persistedDate": " 2019-01-28 14:01:58 +0000", + "date": " 2019-01-28 13:56:27 +0000", + }, + ] + + +def get_insulin_counteraction_effects(): + return [ + { + "start_time": "2019-01-27 15:16:22 +0000", + "end_time": " 2019-01-27 15:21:22 +0000", + "value": 0.12323223579096947, + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:21:22 +0000", + "end_time": " 2019-01-27 15:26:22 +0000", + "value": 0.11340556858587406, + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:26:22 +0000", + "end_time": " 2019-01-27 15:31:22 +0000", + "value": -0.09644491407321425, + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:31:22 +0000", + "end_time": " 2019-01-27 15:36:22 +0000", + "value": -0.5038144363643894, + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:36:22 +0000", + "end_time": " 2019-01-27 15:41:22 +0000", + "value": 0.09110549888380319, + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:41:22 +0000", + "end_time": " 2019-01-27 15:46:22 +0000", + "value": 0.08806492424520086, + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:46:22 +0000", + "end_time": " 2019-01-27 15:51:21 +0000", + "value": 0.2877941626511216, + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:51:21 +0000", + "end_time": " 2019-01-27 15:56:22 +0000", + "value": -0.11365967464421017, + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:56:22 +0000", + "end_time": " 2019-01-27 16:01:22 +0000", + "value": -0.3170549421296755, + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 16:01:22 +0000", + "end_time": " 2019-01-27 16:06:22 +0000", + "value": -0.12201958445077564, + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 16:06:22 +0000", + "end_time": " 2019-01-27 16:11:22 +0000", + "value": -0.1286808487354534, + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 16:11:22 +0000", + "end_time": " 2019-01-27 16:16:22 +0000", + "value": -0.5368095386319524, + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 16:16:22 +0000", + "end_time": " 2019-01-27 16:21:22 +0000", + "value": -0.9461971753678154, + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 16:21:22 +0000", + "end_time": " 2019-01-27 16:26:22 +0000", + "value": -0.9566544114980243, + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 16:26:22 +0000", + "end_time": " 2019-01-27 16:31:22 +0000", + "value": -0.1680095551964925, + "units": "mg/dL/min", + }, + ] + + +def get_retrospective_glucose_discrepancies_summed(): + return [ + { + "start_time": "2018-11-28 00:02:31 +0000", + "end_time": " 2018-11-28 00:02:31 +0000", + "value": 13.150577197081377, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:02:31 +0000", + "end_time": " 2018-11-28 00:07:31 +0000", + "value": 26.06978171944507, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:02:31 +0000", + "end_time": " 2018-11-28 00:12:31 +0000", + "value": 38.67818952118729, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:02:31 +0000", + "end_time": " 2018-11-28 00:17:31 +0000", + "value": 49.22323442360305, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:02:31 +0000", + "end_time": " 2018-11-28 00:22:31 +0000", + "value": 57.644897625857766, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:02:31 +0000", + "end_time": " 2018-11-28 00:27:31 +0000", + "value": 64.15869871324333, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:02:31 +0000", + "end_time": " 2018-11-28 00:32:31 +0000", + "value": 67.1655997352358, + "units": "mg/dL", + }, + ] + + +def get_insulin_counteration_effects(): + return [ + { + "start_time": "2019-01-27 15:16:22 +0000", + "end_time": " 2019-01-27 15:21:22 +0000", + "value": " 0.12323223579096947", + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:21:22 +0000", + "end_time": " 2019-01-27 15:26:22 +0000", + "value": " 0.11340556858587406", + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:26:22 +0000", + "end_time": " 2019-01-27 15:31:22 +0000", + "value": " -0.09644491407321425", + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:31:22 +0000", + "end_time": " 2019-01-27 15:36:22 +0000", + "value": " -0.5038144363643894", + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:36:22 +0000", + "end_time": " 2019-01-27 15:41:22 +0000", + "value": " 0.09110549888380319", + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:41:22 +0000", + "end_time": " 2019-01-27 15:46:22 +0000", + "value": " 0.08806492424520086", + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:46:22 +0000", + "end_time": " 2019-01-27 15:51:21 +0000", + "value": " 0.2877941626511216", + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:51:21 +0000", + "end_time": " 2019-01-27 15:56:22 +0000", + "value": " -0.11365967464421017", + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 15:56:22 +0000", + "end_time": " 2019-01-27 16:01:22 +0000", + "value": " -0.3170549421296755", + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 16:01:22 +0000", + "end_time": " 2019-01-27 16:06:22 +0000", + "value": " -0.12201958445077564", + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 16:06:22 +0000", + "end_time": " 2019-01-27 16:11:22 +0000", + "value": " -0.1286808487354534", + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 16:11:22 +0000", + "end_time": " 2019-01-27 16:16:22 +0000", + "value": " -0.5368095386319524", + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 16:16:22 +0000", + "end_time": " 2019-01-27 16:21:22 +0000", + "value": " -0.9461971753678154", + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 16:21:22 +0000", + "end_time": " 2019-01-27 16:26:22 +0000", + "value": " -0.9566544114980243", + "units": "mg/dL/min", + }, + { + "start_time": "2019-01-27 16:26:22 +0000", + "end_time": " 2019-01-27 16:31:22 +0000", + "value": " -0.1680095551964925", + "units": "mg/dL/min", + }, + ] + + +def get_message_log(): + return [ + "2019-01-08 18:42:00 +0000 send 1f0d624118030e01008179", + "2019-01-08 18:42:02 +0000 receive 1f0d62411c0a1d2803c0a000003d9bff81b4", + "2019-01-08 18:46:07 +0000 send 1f0d624120030e010002cd", + "2019-01-08 18:46:09 +0000 receive 1f0d6241240a1d2803c1a000003dabff0342", + "2019-01-08 18:46:11 +0000 send 1f0d624128071f054c4d1dbb0280ff", + "2019-01-08 18:46:14 +0000 receive 1f0d62412c0a1d1803c1d000003dabff82a6", + ] + + +def get_cached_dose_entries(): + return [ + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-07 20:43:18 +0000", + "endDate": "2019-01-07 20:43:21 +0000", + "value": "0.0", + "unit": "LoopKit.DoseUnit.units", + "description": "nil", + "syncIdentifier": '"BasalRateSchedule 2019-01-07T20:43:18Z 2019-01-07T20:43:21Z"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-07 20:43:21 +0000", + "endDate": "2019-01-07 21:13:21 +0000", + "value": "0.95", + "unit": "LoopKit.DoseUnit.units", + "description": "nil", + "syncIdentifier": '"74656d70426173616c20302e39323520323031392d30312d30375432303a34333a32315a20313830302e30"', + "scheduledBasalRate": 0.9, + "scheduledBasalRateUnits": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-07 21:13:21 +0000", + "endDate": "2019-01-07 21:16:57 +0000", + "value": "0.05", + "unit": "LoopKit.DoseUnit.units", + "description": "nil", + "syncIdentifier": '"BasalRateSchedule 2019-01-07T21:13:21Z 2019-01-07T21:16:57Z"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-07 21:16:57 +0000", + "endDate": "2019-01-07 21:21:14 +0000", + "value": "0.0", + "unit": "LoopKit.DoseUnit.units", + "description": "nil", + "syncIdentifier": '"74656d70426173616c20302e3020323031392d30312d30375432313a31363a35375a203235372e3132383533333935393338383733"', + "scheduledBasalRate": 0.9, + "scheduledBasalRateUnits": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-07 21:21:14 +0000", + "endDate": "2019-01-07 21:21:20 +0000", + "value": "0.0", + "unit": "LoopKit.DoseUnit.units", + "description": "nil", + "syncIdentifier": '"BasalRateSchedule 2019-01-07T21:21:14Z 2019-01-07T21:21:20Z"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-07 21:21:20 +0000", + "endDate": "2019-01-07 21:26:00 +0000", + "value": "0.0", + "unit": "LoopKit.DoseUnit.units", + "description": "nil", + "syncIdentifier": '"74656d70426173616c20302e3020323031392d30312d30375432313a32313a32305a203237392e37333436363930383933313733"', + "scheduledBasalRate": 0.9, + "scheduledBasalRateUnits": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-07 21:26:00 +0000", + "endDate": "2019-01-07 21:26:08 +0000", + "value": "0.0", + "unit": "LoopKit.DoseUnit.units", + "description": "nil", + "syncIdentifier": '"BasalRateSchedule 2019-01-07T21:26:00Z 2019-01-07T21:26:08Z"', + "scheduledBasalRate": "nil", + }, + ] + + +def get_normalized_dose_entries(): + return [ + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 14:11:24 +0000", + "endDate": "2019-01-24 14:13:17 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b00004b061813002000"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.suspend", + "startDate": "2019-01-24 14:13:17 +0000", + "endDate": "2019-01-24 14:13:58 +0000", + "value": "0.0", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"2100354c061813"', + "scheduledBasalRate": "0.8 IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 14:13:58 +0000", + "endDate": "2019-01-24 14:14:28 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"030000002f224d261813"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 14:14:28 +0000", + "endDate": "2019-01-24 14:30:24 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b00044e061813002000"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 14:30:24 +0000", + "endDate": "2019-01-24 14:53:31 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b01005e0618130d2000"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 14:53:31 +0000", + "endDate": "2019-01-24 15:31:25 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b0107750658130d2000"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 15:31:25 +0000", + "endDate": "2019-01-24 17:36:24 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b01195f0718130d2000"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 17:36:24 +0000", + "endDate": "2019-01-24 20:06:25 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b0118640918130d2000"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 20:06:25 +0000", + "endDate": "2019-01-24 20:36:24 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b0119460c18130d2000"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 20:36:24 +0000", + "endDate": "2019-01-24 21:36:25 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b0118640c18130d2000"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 21:36:25 +0000", + "endDate": "2019-01-24 22:06:24 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b0119640d18130d2000"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 22:06:24 +0000", + "endDate": "2019-01-25 01:06:25 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b0118460e18130d2000"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-25 01:06:25 +0000", + "endDate": "2019-01-25 01:31:27 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b0119461118130d2000"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-25 01:31:27 +0000", + "endDate": "2019-01-25 02:36:24 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b011b5f1118130d2000"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-25 02:36:24 +0000", + "endDate": "2019-01-25 03:11:24 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b0118641218130d2000"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-25 03:11:24 +0000", + "endDate": "2019-01-25 04:51:24 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b01184b1318130d2000"', + "scheduledBasalRate": "nil", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-25 04:51:24 +0000", + "endDate": "2019-01-25 05:01:25 +0000", + "value": "0.6", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b021873141813281800"', + "scheduledBasalRate": "nil", + }, + ] + + +def get_normalized_pump_event_dose(): + return [ + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 14:11:24 +0000", + "endDate": "2019-01-24 14:13:17 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b00004b061813002000"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.suspend", + "startDate": "2019-01-24 14:13:17 +0000", + "endDate": "2019-01-24 14:13:58 +0000", + "value": "0.0", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"2100354c061813"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 14:13:58 +0000", + "endDate": "2019-01-24 14:14:28 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"030000002f224d261813"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 14:14:28 +0000", + "endDate": "2019-01-24 14:30:24 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b00044e061813002000"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 14:30:24 +0000", + "endDate": "2019-01-24 14:53:31 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b01005e0618130d2000"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 14:53:31 +0000", + "endDate": "2019-01-24 15:31:25 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b0107750658130d2000"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 15:31:25 +0000", + "endDate": "2019-01-24 17:36:24 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b01195f0718130d2000"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 17:36:24 +0000", + "endDate": "2019-01-24 20:06:25 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b0118640918130d2000"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 20:06:25 +0000", + "endDate": "2019-01-24 20:36:24 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b0119460c18130d2000"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-24 20:36:24 +0000", + "endDate": "2019-01-24 21:36:25 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b0118640c18130d2000"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-25 17:26:28 +0000", + "endDate": "2019-01-25 18:36:45 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b011c5a0919130d2000"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-25 18:36:45 +0000", + "endDate": "2019-01-25 19:16:28 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b012d640a19130d2000"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-27 14:21:28 +0000", + "endDate": "2019-01-27 14:41:27 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b001c55061b13002000"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-27 14:41:27 +0000", + "endDate": "2019-01-27 15:21:29 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b011b69061b130d2000"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 15:21:29 +0000", + "endDate": "2019-01-27 15:22:13 +0000", + "value": "0.0", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16011d55075b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 15:22:13 +0000", + "endDate": "2019-01-27 15:22:15 +0000", + "value": "1.625", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16010d56075b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 15:22:15 +0000", + "endDate": "2019-01-27 15:31:27 +0000", + "value": "1.625", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16010f56075b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 15:31:27 +0000", + "endDate": "2019-01-27 15:36:28 +0000", + "value": "1.575", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16011b5f075b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-27 15:36:28 +0000", + "endDate": "2019-01-27 15:41:28 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b011c64071b130d2000"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 15:41:28 +0000", + "endDate": "2019-01-27 15:51:27 +0000", + "value": "0.0", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16011c69075b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-27 15:51:27 +0000", + "endDate": "2019-01-27 15:56:28 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b011b73071b130d2000"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 15:56:28 +0000", + "endDate": "2019-01-27 16:17:00 +0000", + "value": "0.0", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16011c78075b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 16:17:00 +0000", + "endDate": "2019-01-27 16:21:29 +0000", + "value": "0.0", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16010051085b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 16:21:29 +0000", + "endDate": "2019-01-27 16:41:27 +0000", + "value": "0.0", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16011d55085b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 16:41:27 +0000", + "endDate": "2019-01-27 16:46:28 +0000", + "value": "0.0", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16011b69085b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 16:46:28 +0000", + "endDate": "2019-01-27 16:51:27 +0000", + "value": "2.825", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16011c6e085b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 16:51:27 +0000", + "endDate": "2019-01-27 16:56:28 +0000", + "value": "2.975", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16011b73085b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 16:56:28 +0000", + "endDate": "2019-01-27 17:01:27 +0000", + "value": "1.85", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16011c78085b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 17:01:27 +0000", + "endDate": "2019-01-27 17:06:27 +0000", + "value": "1.425", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16011b41095b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 17:06:27 +0000", + "endDate": "2019-01-27 17:11:41 +0000", + "value": "1.15", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16011b46095b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 17:11:41 +0000", + "endDate": "2019-01-27 17:31:31 +0000", + "value": "1.275", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"1601294b095b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-27 17:31:32 +0000", + "endDate": "2019-01-27 17:36:28 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b01205f091b130d2000"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 17:36:28 +0000", + "endDate": "2019-01-27 17:41:28 +0000", + "value": "0.525", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16011c64095b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 17:41:28 +0000", + "endDate": "2019-01-27 17:56:42 +0000", + "value": "1.5", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16011c69095b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.tempBasal", + "startDate": "2019-01-27 17:56:42 +0000", + "endDate": "2019-01-27 18:26:42 +0000", + "value": "2.225", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"16012a78095b13"', + "scheduledBasalRate": "IU/hr", + }, + { + "type": "LoopKit.DoseType.basal", + "startDate": "2019-01-27 18:26:42 +0000", + "endDate": "2019-01-27 18:30:37 +0000", + "value": "0.8", + "unit": "LoopKit.DoseUnit.unitsPerHour", + "description": "nil", + "syncIdentifier": '"7b012a5a0a1b130d2000"', + "scheduledBasalRate": "IU/hr", + }, + ] + + +def get_insulin_effect(): + return [ + { + "start_time": "2018-11-28 00:30:00 +0000", + "value": -598.4414718881781, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:35:00 +0000", + "value": -608.2232418870775, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:40:00 +0000", + "value": -618.1781269950548, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:45:00 +0000", + "value": -628.2362250846572, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:50:00 +0000", + "value": -638.3355211023576, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:55:00 +0000", + "value": -648.4211533199497, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 01:00:00 +0000", + "value": -658.4447024193285, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 01:05:00 +0000", + "value": -668.3632968575748, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 01:10:00 +0000", + "value": -678.1394998374639, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 01:15:00 +0000", + "value": -687.740877675081, + "units": "mg/dL", + }, + ] + + +def get_carb_effect(): + return [ + {"start_time": "2018-11-28 00:00:00 +0000", "value": 309.375, "units": "mg/dL"}, + {"start_time": "2018-11-28 00:05:00 +0000", "value": 309.375, "units": "mg/dL"}, + {"start_time": "2018-11-28 00:10:00 +0000", "value": 309.375, "units": "mg/dL"}, + {"start_time": "2018-11-28 00:15:00 +0000", "value": 309.375, "units": "mg/dL"}, + {"start_time": "2018-11-28 00:20:00 +0000", "value": 309.375, "units": "mg/dL"}, + {"start_time": "2018-11-28 00:25:00 +0000", "value": 309.375, "units": "mg/dL"}, + {"start_time": "2018-11-28 00:30:00 +0000", "value": 309.375, "units": "mg/dL"}, + { + "start_time": "2018-11-28 00:35:00 +0000", + "value": 313.1571581860383, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:40:00 +0000", + "value": 320.79604707492723, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:45:00 +0000", + "value": 328.4349359638161, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:50:00 +0000", + "value": 336.073824852705, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:55:00 +0000", + "value": 343.7127137415939, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 01:00:00 +0000", + "value": 351.3516026304828, + "units": "mg/dL", + }, + ] + + +def get_retrospective_glucose_discrepancies(): + return [ + { + "start_time": "2018-11-28 00:02:31 +0000", + "value": 13.150577197081377, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:07:31 +0000", + "value": 12.919204522363694, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:12:31 +0000", + "value": 12.608407801742223, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:17:31 +0000", + "value": 10.545044902415762, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:22:31 +0000", + "value": 8.421663202254713, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:27:31 +0000", + "value": 6.513801087385557, + "units": "mg/dL", + }, + { + "start_time": "2018-11-28 00:32:31 +0000", + "value": 3.0069010219924754, + "units": "mg/dL", + }, + ] + + +def get_predicted_glucose(): + return [ + {"start_time": "2019-01-28 15:16:20 +0000", "value": 85.0, "units": "mg/dL"}, + { + "start_time": "2019-01-28 15:20:00 +0000", + "value": 85.732078872579, + "units": "mg/dL", + }, + { + "start_time": "2019-01-28 15:25:00 +0000", + "value": 86.44096256310476, + "units": "mg/dL", + }, + { + "start_time": "2019-01-28 15:30:00 +0000", + "value": 86.77019751074303, + "units": "mg/dL", + }, + { + "start_time": "2019-01-28 15:35:00 +0000", + "value": 86.74103998552496, + "units": "mg/dL", + }, + { + "start_time": "2019-01-28 15:40:00 +0000", + "value": 86.64342159003903, + "units": "mg/dL", + }, + { + "start_time": "2019-01-28 15:45:00 +0000", + "value": 86.57898055151605, + "units": "mg/dL", + }, + { + "start_time": "2019-01-28 15:50:00 +0000", + "value": 86.54829897295224, + "units": "mg/dL", + }, + { + "start_time": "2019-01-28 15:55:00 +0000", + "value": 86.5520006409324, + "units": "mg/dL", + }, + { + "start_time": "2019-01-28 16:00:00 +0000", + "value": 86.59083783299144, + "units": "mg/dL", + }, + { + "start_time": "2019-01-28 16:05:00 +0000", + "value": 86.66555585381998, + "units": "mg/dL", + }, + { + "start_time": "2019-01-28 16:10:00 +0000", + "value": 86.77683520191353, + "units": "mg/dL", + }, + ] + + +def get_reservoir_values(): + return [ + { + "start_time": "2019-01-28 15:16:00 +0000", + "value": 168.9, + "units": "unitVolume", + }, + { + "start_time": "2019-01-28 15:11:00 +0000", + "value": 168.9, + "units": "unitVolume", + }, + { + "start_time": "2019-01-28 15:06:00 +0000", + "value": 168.9, + "units": "unitVolume", + }, + { + "start_time": "2019-01-28 15:01:00 +0000", + "value": 168.9, + "units": "unitVolume", + }, + { + "start_time": "2019-01-28 14:56:00 +0000", + "value": 169.0, + "units": "unitVolume", + }, + { + "start_time": "2019-01-28 14:51:00 +0000", + "value": 169.1, + "units": "unitVolume", + }, + { + "start_time": "2019-01-28 14:46:00 +0000", + "value": 169.1, + "units": "unitVolume", + }, + { + "start_time": "2019-01-28 14:41:00 +0000", + "value": 169.2, + "units": "unitVolume", + }, + { + "start_time": "2019-01-28 14:36:00 +0000", + "value": 169.3, + "units": "unitVolume", + }, + { + "start_time": "2019-01-28 14:31:00 +0000", + "value": 169.3, + "units": "unitVolume", + }, + { + "start_time": "2019-01-28 14:26:00 +0000", + "value": 169.4, + "units": "unitVolume", + }, + { + "start_time": "2019-01-28 14:21:00 +0000", + "value": 169.5, + "units": "unitVolume", + }, + { + "start_time": "2019-01-28 14:16:00 +0000", + "value": 169.5, + "units": "unitVolume", + }, + ] + + +def get_cached_carb_entries(): + return [ + { + "sampleUUID": " 29A45677-9670-48A0-A6C6-379CEA88581F", + "syncIdentifier": " 8A570A49-59FF-435B-BEEF-F6BBA0BCDEAA", + "syncVersion": " 1", + "startDate": " 2019-01-27 22:02:29 +0000", + "quantity": 10, + "quantity_units": "g", + "foodType": " ", + "absorptionTime": " 10800.0", + "createdByCurrentApp": " true", + "externalID": " 5c4e2a77d8dfb37103e14f78", + "isUploaded": " true", + }, + { + "sampleUUID": " CB1F6944-A6FF-4917-B5F6-7509E8CD9EB8", + "syncIdentifier": " 8E9EC8B3-7A44-4AB4-A81B-4A54F2AAA18D", + "syncVersion": " 1", + "startDate": " 2019-01-28 01:00:59 +0000", + "quantity": 25, + "quantity_units": "g", + "foodType": " ", + "absorptionTime": " 10800.0", + "createdByCurrentApp": " true", + "externalID": " 5c4e4b6bd8dfb37103e1e137", + "isUploaded": " true", + }, + { + "sampleUUID": " 2C030171-3604-4542-B492-9990AF375546", + "syncIdentifier": " 7FF9C039-BE6E-4479-BE4C-3F7EAC1ECF34", + "syncVersion": " 1", + "startDate": " 2019-01-28 05:41:22 +0000", + "quantity": 7, + "quantity_units": "g", + "foodType": " ", + "absorptionTime": " 10800.0", + "createdByCurrentApp": " true", + "externalID": " 5c4e9604d8dfb37103e428d1", + "isUploaded": " true", + }, + ] + + +def get_insulin_delivery_store(): + return { + "observerQuery": " Optional()", + "observationStart": " 2019-01-28 04:20:09 +0000", + "observationEnabled": " true", + "authorizationRequired": " false", + "lastBasalEndDate": " 2019-01-28 10:06:28 +0000", + } + + +def get_cached_glucose_samples(): + return [ + { + "sampleUUID": "1A5FEA27-285C-4BB2-87BF-1F3DAC3CA6EB", + "syncIdentifier": '"1A5FEA27-285C-4BB2-87BF-1F3DAC3CA6EB"', + "syncVersion": "1", + "startDate": "2019-01-27 15:21:22 +0000", + "quantity": 92, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + { + "sampleUUID": "85AC7720-6C3F-4125-AB1D-5ADE22707CD1", + "syncIdentifier": '"85AC7720-6C3F-4125-AB1D-5ADE22707CD1"', + "syncVersion": "1", + "startDate": "2019-01-27 15:26:22 +0000", + "quantity": 92, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + { + "sampleUUID": "89DE2881-D0F9-436B-836C-B19D450DAD8D", + "syncIdentifier": '"89DE2881-D0F9-436B-836C-B19D450DAD8D"', + "syncVersion": "1", + "startDate": "2019-01-27 15:31:22 +0000", + "quantity": 91, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + { + "sampleUUID": "BE900B25-BDAC-4FFD-9FC6-D2F1855C6AA4", + "syncIdentifier": '"BE900B25-BDAC-4FFD-9FC6-D2F1855C6AA4"', + "syncVersion": "1", + "startDate": "2019-01-27 15:36:22 +0000", + "quantity": 88, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + { + "sampleUUID": "12B89D59-60E6-4251-AC57-EA65A7313C9C", + "syncIdentifier": '"12B89D59-60E6-4251-AC57-EA65A7313C9C"', + "syncVersion": "1", + "startDate": "2019-01-27 15:41:22 +0000", + "quantity": 88, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + { + "sampleUUID": "3172335D-761C-4B62-8288-45F58A19C89A", + "syncIdentifier": '"3172335D-761C-4B62-8288-45F58A19C89A"', + "syncVersion": "1", + "startDate": "2019-01-27 15:46:22 +0000", + "quantity": 88, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + { + "sampleUUID": "D0861787-FE69-48C0-BED6-25BE432ED62E", + "syncIdentifier": '"D0861787-FE69-48C0-BED6-25BE432ED62E"', + "syncVersion": "1", + "startDate": "2019-01-27 15:51:21 +0000", + "quantity": 89, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + { + "sampleUUID": "A122F1AB-910C-4A6E-8A6F-0AD1D6F7B274", + "syncIdentifier": '"A122F1AB-910C-4A6E-8A6F-0AD1D6F7B274"', + "syncVersion": "1", + "startDate": "2019-01-27 15:56:22 +0000", + "quantity": 88, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + { + "sampleUUID": "97CA822A-3E61-4217-A8BA-1D3C7E1C5620", + "syncIdentifier": '"97CA822A-3E61-4217-A8BA-1D3C7E1C5620"', + "syncVersion": "1", + "startDate": "2019-01-27 16:01:22 +0000", + "quantity": 86, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + { + "sampleUUID": "C94C3098-A946-4155-89E5-A11EAEEDD9B3", + "syncIdentifier": '"C94C3098-A946-4155-89E5-A11EAEEDD9B3"', + "syncVersion": "1", + "startDate": "2019-01-27 16:06:22 +0000", + "quantity": 85, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + { + "sampleUUID": "407921B2-F4AA-449E-B37B-2740ABB2464A", + "syncIdentifier": '"407921B2-F4AA-449E-B37B-2740ABB2464A"', + "syncVersion": "1", + "startDate": "2019-01-27 16:11:22 +0000", + "quantity": 84, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + { + "sampleUUID": "FBEE49E9-6EF7-4298-92C5-B8F87BCA1233", + "syncIdentifier": '"FBEE49E9-6EF7-4298-92C5-B8F87BCA1233"', + "syncVersion": "1", + "startDate": "2019-01-27 16:16:22 +0000", + "quantity": 81, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + { + "sampleUUID": "574F9FD3-E283-4880-9A4D-002B5641E526", + "syncIdentifier": '"574F9FD3-E283-4880-9A4D-002B5641E526"', + "syncVersion": "1", + "startDate": "2019-01-27 16:21:22 +0000", + "quantity": 76, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + { + "sampleUUID": "960009BD-5B7C-458B-9426-8DEE05DE874D", + "syncIdentifier": '"960009BD-5B7C-458B-9426-8DEE05DE874D"', + "syncVersion": "1", + "startDate": "2019-01-27 16:26:22 +0000", + "quantity": 71, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + { + "sampleUUID": "C067386B-AB07-42C6-9480-4EF450661287", + "syncIdentifier": '"C067386B-AB07-42C6-9480-4EF450661287"', + "syncVersion": "1", + "startDate": "2019-01-27 16:31:22 +0000", + "quantity": 70, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + { + "sampleUUID": "AFCF551E-BA6D-45A3-9507-18ADCC1F41EB", + "syncIdentifier": '"AFCF551E-BA6D-45A3-9507-18ADCC1F41EB"', + "syncVersion": "1", + "startDate": "2019-01-27 16:36:22 +0000", + "quantity": 71, + "isDisplayOnly": "false", + "provenanceIdentifier": '"com.dexcom.G6"', + "quantity_units": "mg/dL", + }, + ] + + +def get_glucose_store(): + return { + "latestGlucoseValue": { + "sampleUUID": " 7ED3FC10-0E37-4243-86F1-6E187E62F2DF", + "syncIdentifier": ' "00AA0A 2596408', + "syncVersion": " 1", + "startDate": " 2019-01-28 15:16:20 +0000", + "quantity": 85, + "quantity_units": "mg/dL", + "isDisplayOnly": " false", + "provenanceIdentifier": " ", + }, + "managedDataInterval": " 10800.0", + "cacheLength": " 86400.0", + "momentumDataInterval": " 900.0", + "observerQuery": " Optional()", + "observationStart": " 2019-01-27 10:20:09 +0000", + "observationEnabled": " true", + "authorizationRequired": " false", + } - +def get_persistence_controller(): + return { + "isReadOnly": " false", + "directoryURL": " file:///private/var/mobile/Containers/Shared/AppGroup/8BC29390-EA20-4B3E-AB35-4AFB9CA53A94/com.loopkit.LoopKit/", + "persistenceStoreCoordinator": " Optional()", + } +def get_riley_link_device_manager(): + return { + "central": " ", + "autoConnectIDs": ' ["3F390A3A-9BEC-D2E4-08D7-13D13BDF4672"]', + "timerTickEnabled": " false", + "idleListeningState": " enabled(timeout: 240.0, channel: 0)", + } +def get_g5_cgm_manager(): + return { + "transmitter": " Optional(CGMBLEKit.Transmitter)", + "providesBLEHeartbeat": " true", + "latestReading": { + "glucoseMessage": { + "timestamp": " 2596408", + "glucoseIsDisplayOnly": " false", + "glucose": " 85", + "trend": " -1", + }, + "timeMessage": { + "status": " 0", + "currentTime": " 2596413", + "sessionStartTime": " 1820222", + }, + "transmitterID": ' "00AA0A', + "status": " CGMBLEKit.TransmitterStatus.ok", + "sessionStartDate": " 2019-01-19 15", + "lastCalibration": " nil", + "readDate": " 2019-01-28 15", + }, + } diff --git a/projects/tests/parsers/test_loop_report_parser.py b/projects/tests/parsers/test_loop_report_parser.py new file mode 100644 index 00000000..5e2a25e5 --- /dev/null +++ b/projects/tests/parsers/test_loop_report_parser.py @@ -0,0 +1,348 @@ +import projects.parsers.loop_report_parser as plr +import os +import pytest + + +def test_parse_by_file(): + + dict = plr.parse_loop_report(os.getcwd() + "/files", "LoopReport.md") + print(dict) + + valid_loop_report_dict = get_valid_dictionary() + + assert valid_loop_report_dict == dict + + +def get_valid_dictionary(): + + return { + "generated": {"Generated": " 2019-01-28 15:20:13 +0000\n"}, + "loop_version": {"loop_version": "Loop v1.9.3"}, + "device_data_manager": { + "launchDate": " 2019-01-28 10:20:09 +0000", + "cgm": ' Optional(Loop.CGM.g5(transmitterID: Optional("00AA0A")))', + "lastError": ' Optional((date: 2019-01-28 15:11:21 +0000, error: LoopKit.PumpManagerError.communication(Optional(MinimedKit.PumpOpsError.rfCommsFailure("Short history page: 448 bytes. Expected 1024")))))', + "sensorInfo": ' Optional(CGMBLEKit.Glucose(glucoseMessage: CGMBLEKit.GlucoseSubMessage(timestamp: 2596408, glucoseIsDisplayOnly: false, glucose: 85, state: 6, trend: -1), timeMessage: CGMBLEKit.TransmitterTimeRxMessage(status: 0, currentTime: 2596413, sessionStartTime: 1820222), transmitterID: "00AA0A", status: CGMBLEKit.TransmitterStatus.ok, sessionStartDate: 2019-01-19 15:39:54 +0000, lastCalibration: nil, readDate: 2019-01-28 15:16:20 +0000))', + }, + "g5_cgm_manager": { + "latestReading": ' Optional(CGMBLEKit.Glucose(glucoseMessage: CGMBLEKit.GlucoseSubMessage(timestamp: 2596408, glucoseIsDisplayOnly: false, glucose: 85, state: 6, trend: -1), timeMessage: CGMBLEKit.TransmitterTimeRxMessage(status: 0, currentTime: 2596413, sessionStartTime: 1820222), transmitterID: "00AA0A", status: CGMBLEKit.TransmitterStatus.ok, sessionStartDate: 2019-01-19 15:39:54 +0000, lastCalibration: nil, readDate: 2019-01-28 15:16:20 +0000))', + "transmitter": " Optional(CGMBLEKit.Transmitter)", + "providesBLEHeartbeat": " true", + }, + "dex_cgm_manager": { + "shareManager": " Optional(## ShareClientManager", + "latestBackfill": " nil", + ")": ")", + }, + "minimed_pump_manager": { + "isPumpDataStale": " false", + "latestPumpStatus": " nil", + "latestPumpStatusFromMySentry": " Optional(MinimedKit.MySentryPumpStatusMessageBody(sequence: 142, pumpDateComponents: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 7 minute: 16 second: 0 isLeapMonth: false , batteryRemainingPercent: 100, iob: 0.0, reservoirRemainingUnits: 168.9, reservoirRemainingPercent: 75, reservoirRemainingMinutes: 2204, glucoseTrend: MinimedKit.GlucoseTrend.flat, glucoseDateComponents: nil, glucose: MinimedKit.SensorReading.off, previousGlucose: MinimedKit.SensorReading.off, sensorAgeHours: 0, sensorRemainingHours: 0, clockType: MinimedKit.ClockType.twelveHour, nextSensorCalibrationDateComponents: Optional(calendar: gregorian (fixed) hour: 0 minute: 0 isLeapMonth: false ), rxData: 36 bytes))", + "lastAddedPumpEvents": " 2019-01-28 15:16:27 +0000", + "pumpBatteryChargeRemaining": " Optional(1.0)", + "state": " ## MinimedPumpManagerState", + "batteryChemistry": " Lithium", + "preferredInsulinDataSource": " Event History", + "pumpColor": " purple", + "pumpID": " ✔︎", + "pumpModel": " 723", + "pumpRegion": " North America", + "lastValidFrequency": " Optional(916.65 MHz)", + "timeZone": " GMT-0800 (fixed)", + "Optional(RileyLinkBLEKit.RileyLinkConnectionManagerState(autoConnectIDs": ' Set(["3F390A3A-9BEC-D2E4-08D7-13D13BDF4672"])))', + "sensorState": " Optional(MinimedKit.MySentryPumpStatusMessageBody(sequence: 142, pumpDateComponents: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 7 minute: 16 second: 0 isLeapMonth: false , batteryRemainingPercent: 100, iob: 0.0, reservoirRemainingUnits: 168.9, reservoirRemainingPercent: 75, reservoirRemainingMinutes: 2204, glucoseTrend: MinimedKit.GlucoseTrend.flat, glucoseDateComponents: nil, glucose: MinimedKit.SensorReading.off, previousGlucose: MinimedKit.SensorReading.off, sensorAgeHours: 0, sensorRemainingHours: 0, clockType: MinimedKit.ClockType.twelveHour, nextSensorCalibrationDateComponents: Optional(calendar: gregorian (fixed) hour: 0 minute: 0 isLeapMonth: false ), rxData: 36 bytes))", + "pumpOps": " Optional(### PumpOps", + "pumpSettings": " ## PumpSettings", + "pumpState": " ## PumpState", + "awakeUntil": " 2019-01-28 15:17:14 +0000", + "lastTuned": " 2019-01-28 15:17:14 +0000)", + "lastWakeAttempt": " nil", + "configuredDevices": ' ["3F390A3A-9BEC-D2E4-08D7-13D13BDF4672"])', + }, + "riley_link_pump_manager": { + "rileyLinkConnectionManager": " Optional(RileyLinkBLEKit.RileyLinkConnectionManager)", + "lastTimerTick": " 2019-01-28 14:26:19 +0000", + }, + "riley_link_device_manager": { + "central": " ", + "autoConnectIDs": ' ["3F390A3A-9BEC-D2E4-08D7-13D13BDF4672"]', + "timerTickEnabled": " false", + "idleListeningState": " enabled(timeout: 240.0, channel: 0)", + }, + "riley_link_device": { + "name": " RileyLink 2018-08", + "lastIdle": " 2019-01-28 15:16:27 +0000", + "isIdleListeningPending": " false", + "isTimerTickEnabled": " false", + "isTimerTickNotifying": " false", + "radioFirmware": " Optional(subg_rfspy 0.9)", + "bleFirmware": " Optional(ble_rfspy 0.9)", + "peripheral": " ", + "sessionQueue.operationCount": " 0", + }, + "status_extension_data_manager": { + "appGroupName": " group.com.34SNZ39Q48.loopkit.LoopGroup", + "statusExtensionContext": ' Optional(["lastLoopCompleted": 2019-01-28 15:16:28 +0000, "sensor": ["isStateValid": true, "stateDescription": "ok ", "trendType": 4, "isLocal": true], "predictedGlucose": ["startDate": 2019-01-28 15:20:00 +0000, "values": [85.732078872579, 86.44096256310476, 86.77019751074303, 86.74103998552496, 86.64342159003903, 86.57898055151605, 86.54829897295224, 86.5520006409324, 86.59083783299144, 86.66555585381998, 86.77683520191353, 86.92521097785732, 87.06166310407576, 87.18657445807551, 87.30036060017812, 87.40355987211228, 87.4967727773405, 87.58041626246342, 87.65476704819528, 87.72029003700567, 87.77754565123954, 87.8273377716408, 87.87044653212743, 87.90751659629285, 87.93889754994686, 87.96500123976884, 87.98647008053209, 88.00392652213652, 88.01795871129279, 88.02912156874194, 88.0379378183584, 88.04489934830934, 88.05046836922816, 88.05508417906836, 88.05917636320798, 88.06314680728673, 88.06727407099355, 88.07155325261802, 88.07596408572763, 88.08048771649001, 88.0851791482404, 88.09021545216102, 88.0955744117943, 88.10122342167693, 88.10713178627508, 88.11312558507561, 88.11889980331782, 88.12484203567728, 88.13124497984529, 88.13808315983019, 88.14502479923775, 88.15104161042552, 88.15539987378455, 88.15777204139727, 88.15835646191698, 88.15761275402889, 88.15598599919659, 88.15389249855268, 88.15170285865179, 88.149703828917, 88.14810111911734, 88.14688621614334, 88.14603489653823, 88.145523923539, 88.14533102945123, 88.14543489642449, 88.14574261113549, 88.14596950526587, 88.14598217974014, 88.14598217974014, 88.14598217974014, 88.14598217974014, 88.14598217974014, 88.14598217974014, 88.14598217974014], "unit": "mg/dL", "interval": 300.0], "netBasal": ["percentage": -1.0, "start": 2019-01-28 15:01:30 +0000, "rate": -0.8, "end": 2019-01-28 15:31:30 +0000], "batteryPercentage": 1.0, "version": 5, "reservoirCapacity": 300.0])', + }, + "loop_data_manager": { + "settings": ' Loop.LoopSettings(dosingEnabled: true, dynamicCarbAbsorptionEnabled: true, glucoseTargetRangeSchedule: Optional(["timeZone": -28800, "items": [["startTime": 0.0, "value": [90.0, 100.0]], ["startTime": 19800.0, "value": [90.0, 100.0]], ["startTime": 32400.0, "value": [90.0, 100.0]]], "overrideRanges": ["preMeal": [70.0, 80.0], "workout": [135.0, 145.0]], "unit": "mg/dL"]), maximumBasalRatePerHour: Optional(4.0), maximumBolus: Optional(10.0), suspendThreshold: Optional(Loop.GlucoseThreshold(value: 85.0, unit: mg/dL)), retrospectiveCorrectionEnabled: true, retrospectiveCorrectionInterval: 1800.0, recencyInterval: 900.0, minimumChartWidthPerHour: 50.0, statusChartMinimumHistoryDisplay: 3600.0)', + "retrospectivePredictedGlucose": " [LoopKit.PredictedGlucoseValue(startDate: 2019-01-28 14:51:19 +0000, quantity: 89 mg/dL), LoopKit.PredictedGlucoseValue(startDate: 2019-01-28 14:55:00 +0000, quantity: 89 mg/dL), LoopKit.PredictedGlucoseValue(startDate: 2019-01-28 15:00:00 +0000, quantity: 88.8429 mg/dL), LoopKit.PredictedGlucoseValue(startDate: 2019-01-28 15:05:00 +0000, quantity: 88.6718 mg/dL), LoopKit.PredictedGlucoseValue(startDate: 2019-01-28 15:10:00 +0000, quantity: 88.48 mg/dL), LoopKit.PredictedGlucoseValue(startDate: 2019-01-28 15:15:00 +0000, quantity: 88.2673 mg/dL)]", + "glucoseMomentumEffect": " [LoopKit.GlucoseEffect(startDate: 2019-01-28 15:15:00 +0000, quantity: 0 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 15:20:00 +0000, quantity: 0.732079 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 15:25:00 +0000, quantity: 1.73202 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 15:30:00 +0000, quantity: 2.73197 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 15:35:00 +0000, quantity: 3.73191 mg/dL)]", + "retrospectiveGlucoseEffect": " [LoopKit.GlucoseEffect(startDate: 2019-01-28 15:15:00 +0000, quantity: 85 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 15:20:00 +0000, quantity: 84.4554 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 15:25:00 +0000, quantity: 83.9604 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 15:30:00 +0000, quantity: 83.5149 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 15:35:00 +0000, quantity: 83.1188 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 15:40:00 +0000, quantity: 82.7723 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 15:45:00 +0000, quantity: 82.4753 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 15:50:00 +0000, quantity: 82.2277 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 15:55:00 +0000, quantity: 82.0297 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 16:00:00 +0000, quantity: 81.8812 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 16:05:00 +0000, quantity: 81.7822 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 16:10:00 +0000, quantity: 81.7327 mg/dL), LoopKit.GlucoseEffect(startDate: 2019-01-28 16:15:00 +0000, quantity: 81.7327 mg/dL)]", + "recommendedTempBasal": " nil", + "recommendedBolus": " Optional((recommendation: Loop.BolusRecommendation(amount: 0.0, pendingInsulin: 0.0, notice: nil), date: 2019-01-28 15:16:28 +0000))", + "lastBolus": " nil", + "retrospectiveGlucoseChange": ' Optional((start: LoopKit.StoredGlucoseSample(sampleUUID: 8B9AA1D2-E475-47E0-9612-76C01A438AD3, syncIdentifier: "00AA0A 2594908", syncVersion: 1, startDate: 2019-01-28 14:51:19 +0000, quantity: 89 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.34SNZ39Q48.loopkit.Loop"), end: LoopKit.StoredGlucoseSample(sampleUUID: 7ED3FC10-0E37-4243-86F1-6E187E62F2DF, syncIdentifier: "00AA0A 2596408", syncVersion: 1, startDate: 2019-01-28 15:16:20 +0000, quantity: 85 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.34SNZ39Q48.loopkit.Loop")))', + "lastLoopCompleted": " Optional(2019-01-28 15:16:28 +0000)", + "lastTempBasal": " Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-28 15:01:30 +0000, endDate: 2019-01-28 15:31:30 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: nil, scheduledBasalRate: nil))", + "carbsOnBoard": " Optional(LoopKit.CarbValue(startDate: 2019-01-28 15:15:00 +0000, endDate: 2019-01-28 15:15:00 +0000, quantity: 0 g))", + "error": " nil", + }, + "insulin_counteraction_effects": [ + "GlucoseEffectVelocity(start, end, mg/dL/min)", + "2019-01-27 15:16:22 +0000, 2019-01-27 15:21:22 +0000, 0.12323223579096947", + "2019-01-27 15:21:22 +0000, 2019-01-27 15:26:22 +0000, 0.11340556858587406", + "2019-01-27 15:26:22 +0000, 2019-01-27 15:31:22 +0000, -0.09644491407321425", + "2019-01-27 15:31:22 +0000, 2019-01-27 15:36:22 +0000, -0.5038144363643894", + "2019-01-27 15:36:22 +0000, 2019-01-27 15:41:22 +0000, 0.09110549888380319", + "2019-01-27 15:41:22 +0000, 2019-01-27 15:46:22 +0000, 0.08806492424520086", + "2019-01-27 15:46:22 +0000, 2019-01-27 15:51:21 +0000, 0.2877941626511216", + "2019-01-27 15:51:21 +0000, 2019-01-27 15:56:22 +0000, -0.11365967464421017", + "2019-01-27 15:56:22 +0000, 2019-01-27 16:01:22 +0000, -0.3170549421296755", + "2019-01-27 16:01:22 +0000, 2019-01-27 16:06:22 +0000, -0.12201958445077564", + "2019-01-27 16:06:22 +0000, 2019-01-27 16:11:22 +0000, -0.1286808487354534", + "2019-01-27 16:11:22 +0000, 2019-01-27 16:16:22 +0000, -0.5368095386319524", + "2019-01-27 16:16:22 +0000, 2019-01-27 16:21:22 +0000, -0.9461971753678154", + "2019-01-27 16:21:22 +0000, 2019-01-27 16:26:22 +0000, -0.9566544114980243", + "2019-01-27 16:26:22 +0000, 2019-01-27 16:31:22 +0000, -0.1680095551964925", + "]", + ], + "insulin_effect": [ + "GlucoseEffect(start, mg/dL)", + "2018-11-28 00:30:00 +0000, -598.4414718881781", + "2018-11-28 00:35:00 +0000, -608.2232418870775", + "2018-11-28 00:40:00 +0000, -618.1781269950548", + "2018-11-28 00:45:00 +0000, -628.2362250846572", + "2018-11-28 00:50:00 +0000, -638.3355211023576", + "2018-11-28 00:55:00 +0000, -648.4211533199497", + "2018-11-28 01:00:00 +0000, -658.4447024193285", + "2018-11-28 01:05:00 +0000, -668.3632968575748", + "2018-11-28 01:10:00 +0000, -678.1394998374639", + "2018-11-28 01:15:00 +0000, -687.740877675081", + "]", + ], + "carb_effect": [ + "GlucoseEffect(start, mg/dL)", + "2018-11-28 00:00:00 +0000, 309.375", + "2018-11-28 00:05:00 +0000, 309.375", + "2018-11-28 00:10:00 +0000, 309.375", + "2018-11-28 00:15:00 +0000, 309.375", + "2018-11-28 00:20:00 +0000, 309.375", + "2018-11-28 00:25:00 +0000, 309.375", + "2018-11-28 00:30:00 +0000, 309.375", + "2018-11-28 00:35:00 +0000, 313.1571581860383", + "2018-11-28 00:40:00 +0000, 320.79604707492723", + "2018-11-28 00:45:00 +0000, 328.4349359638161", + "2018-11-28 00:50:00 +0000, 336.073824852705", + "2018-11-28 00:55:00 +0000, 343.7127137415939", + "2018-11-28 01:00:00 +0000, 351.3516026304828", + "]", + ], + "predicted_glucose": [ + "PredictedGlucoseValue(start, mg/dL)", + "2019-01-28 15:16:20 +0000, 85.0", + "2019-01-28 15:20:00 +0000, 85.732078872579", + "2019-01-28 15:25:00 +0000, 86.44096256310476", + "2019-01-28 15:30:00 +0000, 86.77019751074303", + "2019-01-28 15:35:00 +0000, 86.74103998552496", + "2019-01-28 15:40:00 +0000, 86.64342159003903", + "2019-01-28 15:45:00 +0000, 86.57898055151605", + "2019-01-28 15:50:00 +0000, 86.54829897295224", + "2019-01-28 15:55:00 +0000, 86.5520006409324", + "2019-01-28 16:00:00 +0000, 86.59083783299144", + "2019-01-28 16:05:00 +0000, 86.66555585381998", + "2019-01-28 16:10:00 +0000, 86.77683520191353", + "]", + ], + "retrospective_glucose_discrepancies": [ + "GlucoseEffect(start, mg/dL)", + "2018-11-28 00:02:31 +0000, 13.150577197081377", + "2018-11-28 00:07:31 +0000, 12.919204522363694", + "2018-11-28 00:12:31 +0000, 12.608407801742223", + "2018-11-28 00:17:31 +0000, 10.545044902415762", + "2018-11-28 00:22:31 +0000, 8.421663202254713", + "2018-11-28 00:27:31 +0000, 6.513801087385557", + "2018-11-28 00:32:31 +0000, 3.0069010219924754", + "]", + ], + "retrospective_glucose_discrepancies_summed": [ + "GlucoseChange(start, end, mg/dL)", + "2018-11-28 00:02:31 +0000, 2018-11-28 00:02:31 +0000, 13.150577197081377", + "2018-11-28 00:02:31 +0000, 2018-11-28 00:07:31 +0000, 26.06978171944507", + "2018-11-28 00:02:31 +0000, 2018-11-28 00:12:31 +0000, 38.67818952118729", + "2018-11-28 00:02:31 +0000, 2018-11-28 00:17:31 +0000, 49.22323442360305", + "2018-11-28 00:02:31 +0000, 2018-11-28 00:22:31 +0000, 57.644897625857766", + "2018-11-28 00:02:31 +0000, 2018-11-28 00:27:31 +0000, 64.15869871324333", + "2018-11-28 00:02:31 +0000, 2018-11-28 00:32:31 +0000, 67.1655997352358", + "]", + ], + "persistence_controller": { + "isReadOnly": " false", + "directoryURL": " file:///private/var/mobile/Containers/Shared/AppGroup/8BC29390-EA20-4B3E-AB35-4AFB9CA53A94/com.loopkit.LoopKit/", + "persistenceStoreCoordinator": " Optional()", + }, + "glucose_store": { + "latestGlucoseValue": ' Optional(LoopKit.StoredGlucoseSample(sampleUUID: 7ED3FC10-0E37-4243-86F1-6E187E62F2DF, syncIdentifier: "00AA0A 2596408", syncVersion: 1, startDate: 2019-01-28 15:16:20 +0000, quantity: 85 mg/dL, isDisplayOnly: false, provenanceIdentifier: ""))', + "managedDataInterval": " 10800.0", + "cacheLength": " 86400.0", + "momentumDataInterval": " 900.0", + "observerQuery": " Optional()", + "observationStart": " 2019-01-27 10:20:09 +0000", + "observationEnabled": " true", + "authorizationRequired": " false", + }, + "cached_glucose_samples": { + "StoredGlucoseSample(sampleUUID": ' AFCF551E-BA6D-45A3-9507-18ADCC1F41EB, syncIdentifier: "AFCF551E-BA6D-45A3-9507-18ADCC1F41EB", syncVersion: 1, startDate: 2019-01-27 16:36:22 +0000, quantity: 71 mg/dL, isDisplayOnly: false, provenanceIdentifier: "com.dexcom.G6")' + }, + "carb_store": { + "carbRatioSchedule": ' ["timeZone": -28800, "unit": "g", "items": [["startTime": 0.0, "value": 10.0], ["startTime": 66600.0, "value": 9.0]]]', + "defaultAbsorptionTimes": " (fast: 1800.0, medium: 10800.0, slow: 18000.0)", + "insulinSensitivitySchedule": ' ["timeZone": -28800, "unit": "mg/dL", "items": [["startTime": 0.0, "value": 20.0], ["startTime": 9000.0, "value": 40.0], ["startTime": 82800.0, "value": 35.0]]]', + "delay": " 600.0", + "delta": " 300.0", + "absorptionTimeOverrun": " 1.5", + "observerQuery": " Optional()", + "observationStart": " 2019-01-28 00:20:09 +0000", + "observationEnabled": " true", + "authorizationRequired": " false", + }, + "cached_carb_entries": { + "\tStoredCarbEntry(sampleUUID, syncIdentifier, syncVersion, startDate, quantity, foodType, absorptionTime, createdByCurrentApp, externalID, isUploaded)": "\tStoredCarbEntry(sampleUUID, syncIdentifier, syncVersion, startDate, quantity, foodType, absorptionTime, createdByCurrentApp, externalID, isUploaded)", + "\t, 29A45677-9670-48A0-A6C6-379CEA88581F, 8A570A49-59FF-435B-BEEF-F6BBA0BCDEAA, 1, 2019-01-27 22": "02:29 +0000, 10 g, , 10800.0, true, 5c4e2a77d8dfb37103e14f78, true", + "\t, CB1F6944-A6FF-4917-B5F6-7509E8CD9EB8, 8E9EC8B3-7A44-4AB4-A81B-4A54F2AAA18D, 1, 2019-01-28 01": "00:59 +0000, 25 g, , 10800.0, true, 5c4e4b6bd8dfb37103e1e137, true", + "\t, 2C030171-3604-4542-B492-9990AF375546, 7FF9C039-BE6E-4479-BE4C-3F7EAC1ECF34, 1, 2019-01-28 05": "41:22 +0000, 7 g, , 10800.0, true, 5c4e9604d8dfb37103e428d1, true", + "]": "]", + }, + "deleted_carb_entries": { + "\tDeletedCarbEntry(externalID, isUploaded)": "\tDeletedCarbEntry(externalID, isUploaded)", + "]": "]", + }, + "dose_store": { + "insulinModel": " Optional(humalogNovologAdult(ExponentialInsulinModel(actionDuration: 21600.0, peakActivityTime: 4500.0))", + "basalProfile": ' ["timeZone": -28800, "items": [["startTime": 0.0, "value": 0.8], ["startTime": 23400.0, "value": 0.8], ["startTime": 72000.0, "value": 0.6]]]', + "insulinSensitivitySchedule": ' ["timeZone": -28800, "unit": "mg/dL", "items": [["startTime": 0.0, "value": 20.0], ["startTime": 9000.0, "value": 40.0], ["startTime": 82800.0, "value": 35.0]]]', + "areReservoirValuesValid": " true", + "isUploadRequestPending": " false", + "lastAddedPumpEvents": " 2019-01-28 15:16:27 +0000", + "lastStoredReservoirValue": " Optional(LoopKit.StoredReservoirValue(startDate: 2019-01-28 15:16:00 +0000, unitVolume: 168.9, objectIDURL: x-coredata:///Reservoir/t71F0F3A4-ABF7-4E46-8F3B-7D9AFB8AA60F311))", + "mutablePumpEventDoses": " []", + "pumpEventQueryAfterDate": " 2019-01-28 15:01:27 +0000", + "totalDeliveryCache": " Optional(LoopKit.InsulinValue(startDate: 2019-01-28 07:56:00 +0000, value: 4.100000000000001))", + "lastRecordedPrimeEventDate": " Optional(2019-01-27 17:43:46 +0000)", + "pumpRecordsBasalProfileStartEvents": " true", + "device": " Optional(<, name:RileyLink 2018-08, manufacturer:Medtronic, model:723, firmware:subg_rfspy 0.9, software:43.0, localIdentifier:000000>)", + "insulinOnBoard": " InsulinValue(startDate: 2019-01-28 15:20:00 +0000, value: -0.49090285427454483)", + }, + "get_reservoir_values": [ + "Reservoir(startDate, unitVolume)", + "2019-01-28 15:16:00 +0000, 168.9", + "2019-01-28 15:11:00 +0000, 168.9", + "2019-01-28 15:06:00 +0000, 168.9", + "2019-01-28 15:01:00 +0000, 168.9", + "2019-01-28 14:56:00 +0000, 169.0", + "2019-01-28 14:51:00 +0000, 169.1", + "2019-01-28 14:46:00 +0000, 169.1", + "2019-01-28 14:41:00 +0000, 169.2", + "2019-01-28 14:36:00 +0000, 169.3", + "2019-01-28 14:31:00 +0000, 169.3", + "2019-01-28 14:26:00 +0000, 169.4", + "2019-01-28 14:21:00 +0000, 169.5", + "2019-01-28 14:16:00 +0000, 169.5", + "2019-01-28 14:11:00 +0000, 169.6", + ], + "get_pump_event_values": [ + 'PersistedPumpEvent(date: 2019-01-28 15:01:27 +0000, persistedDate: 2019-01-28 15:06:41 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50085, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 7 minute: 1 second: 27 isLeapMonth: false )"), type: nil)', + 'PersistedPumpEvent(date: 2019-01-28 15:01:27 +0000, persistedDate: 2019-01-28 15:06:41 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-28 15:01:27 +0000, endDate: 2019-01-28 15:31:27 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011b41075c13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50084, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 7 minute: 1 second: 27 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal))', + 'PersistedPumpEvent(date: 2019-01-28 14:51:28 +0000, persistedDate: 2019-01-28 14:56:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50083, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 51 second: 28 isLeapMonth: false )"), type: nil)', + 'PersistedPumpEvent(date: 2019-01-28 14:51:28 +0000, persistedDate: 2019-01-28 14:56:28 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-28 14:51:28 +0000, endDate: 2019-01-29 14:51:28 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b011c73061c130d2000"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50082, raw: Optional(10 bytes), title: Optional("BasalProfileStartPumpEvent(length: 10, rawData: 10 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 51 second: 28 isLeapMonth: false , scheduleEntry: MinimedKit.BasalScheduleEntry(index: 1, timeOffset: 23400.0, rate: 0.8))"), type: Optional(LoopKit.PumpEventType.basal))', + 'PersistedPumpEvent(date: 2019-01-28 14:51:28 +0000, persistedDate: 2019-01-28 14:56:28 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-28 14:51:28 +0000, endDate: 2019-01-28 14:51:28 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16001c73065c13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50081, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 51 second: 28 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal))', + 'PersistedPumpEvent(date: 2019-01-28 14:46:28 +0000, persistedDate: 2019-01-28 14:51:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50080, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 46 second: 28 isLeapMonth: false )"), type: nil)', + 'PersistedPumpEvent(date: 2019-01-28 14:46:28 +0000, persistedDate: 2019-01-28 14:51:28 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-28 14:46:28 +0000, endDate: 2019-01-28 15:16:28 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c6e065c13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50079, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 46 second: 28 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal))', + 'PersistedPumpEvent(date: 2019-01-28 14:41:28 +0000, persistedDate: 2019-01-28 14:46:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50078, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.2, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 41 second: 28 isLeapMonth: false )"), type: nil)', + 'PersistedPumpEvent(date: 2019-01-28 14:41:28 +0000, persistedDate: 2019-01-28 14:46:28 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-28 14:41:28 +0000, endDate: 2019-01-28 15:11:28 +0000, value: 1.2, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c69065c13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50077, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 41 second: 28 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal))', + 'PersistedPumpEvent(date: 2019-01-28 14:36:27 +0000, persistedDate: 2019-01-28 14:41:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50076, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 1.4, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 36 second: 27 isLeapMonth: false )"), type: nil)', + 'PersistedPumpEvent(date: 2019-01-28 14:36:27 +0000, persistedDate: 2019-01-28 14:41:28 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-28 14:36:27 +0000, endDate: 2019-01-28 15:06:27 +0000, value: 1.4, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011b64065c13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50075, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 36 second: 27 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal))', + 'PersistedPumpEvent(date: 2019-01-28 14:30:00 +0000, persistedDate: 2019-01-28 14:31:28 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-28 14:30:00 +0000, endDate: 2019-01-29 14:30:00 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b01005e061c130d2000"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50074, raw: Optional(10 bytes), title: Optional("BasalProfileStartPumpEvent(length: 10, rawData: 10 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 30 second: 0 isLeapMonth: false , scheduleEntry: MinimedKit.BasalScheduleEntry(index: 1, timeOffset: 23400.0, rate: 0.8))"), type: Optional(LoopKit.PumpEventType.basal))', + 'PersistedPumpEvent(date: 2019-01-28 14:06:27 +0000, persistedDate: 2019-01-28 14:11:28 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-28 14:06:27 +0000, endDate: 2019-01-29 14:06:27 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b001b46061c13002000"), scheduledBasalRate: nil)), isUploaded: false, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50071, raw: Optional(10 bytes), title: Optional("BasalProfileStartPumpEvent(length: 10, rawData: 10 bytes, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 6 second: 27 isLeapMonth: false , scheduleEntry: MinimedKit.BasalScheduleEntry(index: 0, timeOffset: 0.0, rate: 0.8))"), type: Optional(LoopKit.PumpEventType.basal))', + 'PersistedPumpEvent(date: 2019-01-28 14:06:27 +0000, persistedDate: 2019-01-28 14:11:28 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-28 14:06:27 +0000, endDate: 2019-01-28 14:06:27 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16001b46065c13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50072, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 6 second: 27 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal))', + 'PersistedPumpEvent(date: 2019-01-28 14:06:27 +0000, persistedDate: 2019-01-28 14:11:28 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50073, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 6 second: 27 isLeapMonth: false )"), type: nil)', + 'PersistedPumpEvent(date: 2019-01-28 14:01:41 +0000, persistedDate: 2019-01-28 14:01:58 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-28 14:01:41 +0000, endDate: 2019-01-28 14:31:41 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012941065c13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50069, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 1 second: 41 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal))', + 'PersistedPumpEvent(date: 2019-01-28 14:01:41 +0000, persistedDate: 2019-01-28 14:01:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50067, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.0, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 6 minute: 1 second: 41 isLeapMonth: false )"), type: nil)', + 'PersistedPumpEvent(date: 2019-01-28 13:56:27 +0000, persistedDate: 2019-01-28 14:01:58 +0000, dose: Optional(LoopKit.DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-28 13:56:27 +0000, endDate: 2019-01-28 14:26:27 +0000, value: 0.375, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011b78055c13"), scheduledBasalRate: nil)), isUploaded: true, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50070, raw: Optional(7 bytes), title: Optional("TempBasalDurationPumpEvent(length: 7, rawData: 7 bytes, duration: 30, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 5 minute: 56 second: 27 isLeapMonth: false )"), type: Optional(LoopKit.PumpEventType.tempBasal))', + 'PersistedPumpEvent(date: 2019-01-28 13:56:27 +0000, persistedDate: 2019-01-28 14:01:58 +0000, dose: nil, isUploaded: false, objectIDURL: x-coredata://17F97154-93F5-49F8-9870-B15219F6980C/PumpEvent/p50068, raw: Optional(8 bytes), title: Optional("TempBasalPumpEvent(length: 8, rawData: 8 bytes, rateType: MinimedKit.TempBasalPumpEvent.RateType.Absolute, rate: 0.375, timestamp: calendar: gregorian (fixed) year: 2019 month: 1 day: 28 hour: 5 minute: 56 second: 27 isLeapMonth: false )"), type: nil)', + ], + "get_normalized_dose_entries": [ + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 14:11:24 +0000, endDate: 2019-01-24 14:13:17 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b00004b061813002000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-24 14:13:17 +0000, endDate: 2019-01-24 14:13:58 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("2100354c061813"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 14:13:58 +0000, endDate: 2019-01-24 14:14:28 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("030000002f224d261813"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 14:14:28 +0000, endDate: 2019-01-24 14:30:24 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b00044e061813002000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 14:30:24 +0000, endDate: 2019-01-24 14:53:31 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b01005e0618130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 14:53:31 +0000, endDate: 2019-01-24 15:31:25 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b0107750658130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 15:31:25 +0000, endDate: 2019-01-24 17:36:24 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b01195f0718130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 17:36:24 +0000, endDate: 2019-01-24 20:06:25 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b0118640918130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 20:06:25 +0000, endDate: 2019-01-24 20:36:24 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b0119460c18130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 20:36:24 +0000, endDate: 2019-01-24 21:36:25 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b0118640c18130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 21:36:25 +0000, endDate: 2019-01-24 22:06:24 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b0119640d18130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 22:06:24 +0000, endDate: 2019-01-25 01:06:25 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b0118460e18130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-25 01:06:25 +0000, endDate: 2019-01-25 01:31:27 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b0119461118130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-25 01:31:27 +0000, endDate: 2019-01-25 02:36:24 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b011b5f1118130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-25 02:36:24 +0000, endDate: 2019-01-25 03:11:24 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b0118641218130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-25 03:11:24 +0000, endDate: 2019-01-25 04:51:24 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b01184b1318130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-25 04:51:24 +0000, endDate: 2019-01-25 05:01:25 +0000, value: 0.6, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b021873141813281800"), scheduledBasalRate: nil)', + ], + "get_normalized_pump_event_dose": [ + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 14:11:24 +0000, endDate: 2019-01-24 14:13:17 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b00004b061813002000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.suspend, startDate: 2019-01-24 14:13:17 +0000, endDate: 2019-01-24 14:13:58 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("2100354c061813"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 14:13:58 +0000, endDate: 2019-01-24 14:14:28 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("030000002f224d261813"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 14:14:28 +0000, endDate: 2019-01-24 14:30:24 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b00044e061813002000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 14:30:24 +0000, endDate: 2019-01-24 14:53:31 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b01005e0618130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 14:53:31 +0000, endDate: 2019-01-24 15:31:25 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b0107750658130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 15:31:25 +0000, endDate: 2019-01-24 17:36:24 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b01195f0718130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 17:36:24 +0000, endDate: 2019-01-24 20:06:25 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b0118640918130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 20:06:25 +0000, endDate: 2019-01-24 20:36:24 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b0119460c18130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-24 20:36:24 +0000, endDate: 2019-01-24 21:36:25 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b0118640c18130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-25 17:26:28 +0000, endDate: 2019-01-25 18:36:45 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b011c5a0919130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-25 18:36:45 +0000, endDate: 2019-01-25 19:16:28 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b012d640a19130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-27 14:21:28 +0000, endDate: 2019-01-27 14:41:27 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b001c55061b13002000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-27 14:41:27 +0000, endDate: 2019-01-27 15:21:29 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b011b69061b130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 15:21:29 +0000, endDate: 2019-01-27 15:22:13 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011d55075b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 15:22:13 +0000, endDate: 2019-01-27 15:22:15 +0000, value: 1.625, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010d56075b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 15:22:15 +0000, endDate: 2019-01-27 15:31:27 +0000, value: 1.625, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010f56075b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 15:31:27 +0000, endDate: 2019-01-27 15:36:28 +0000, value: 1.575, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011b5f075b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-27 15:36:28 +0000, endDate: 2019-01-27 15:41:28 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b011c64071b130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 15:41:28 +0000, endDate: 2019-01-27 15:51:27 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c69075b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-27 15:51:27 +0000, endDate: 2019-01-27 15:56:28 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b011b73071b130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 15:56:28 +0000, endDate: 2019-01-27 16:17:00 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c78075b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 16:17:00 +0000, endDate: 2019-01-27 16:21:29 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16010051085b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 16:21:29 +0000, endDate: 2019-01-27 16:41:27 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011d55085b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 16:41:27 +0000, endDate: 2019-01-27 16:46:28 +0000, value: 0.0, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011b69085b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 16:46:28 +0000, endDate: 2019-01-27 16:51:27 +0000, value: 2.825, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c6e085b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 16:51:27 +0000, endDate: 2019-01-27 16:56:28 +0000, value: 2.975, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011b73085b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 16:56:28 +0000, endDate: 2019-01-27 17:01:27 +0000, value: 1.85, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c78085b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 17:01:27 +0000, endDate: 2019-01-27 17:06:27 +0000, value: 1.425, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011b41095b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 17:06:27 +0000, endDate: 2019-01-27 17:11:41 +0000, value: 1.15, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011b46095b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 17:11:41 +0000, endDate: 2019-01-27 17:31:31 +0000, value: 1.275, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("1601294b095b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-27 17:31:32 +0000, endDate: 2019-01-27 17:36:28 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b01205f091b130d2000"), scheduledBasalRate: nil)', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 17:36:28 +0000, endDate: 2019-01-27 17:41:28 +0000, value: 0.525, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c64095b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 17:41:28 +0000, endDate: 2019-01-27 17:56:42 +0000, value: 1.5, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16011c69095b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.tempBasal, startDate: 2019-01-27 17:56:42 +0000, endDate: 2019-01-27 18:26:42 +0000, value: 2.225, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("16012a78095b13"), scheduledBasalRate: Optional(0.8 IU/hr))', + 'DoseEntry(type: LoopKit.DoseType.basal, startDate: 2019-01-27 18:26:42 +0000, endDate: 2019-01-27 18:30:37 +0000, value: 0.8, unit: LoopKit.DoseUnit.unitsPerHour, description: nil, syncIdentifier: Optional("7b012a5a0a1b130d2000"), scheduledBasalRate: nil)', + ], + "insulin_delivery_store": { + "observerQuery": " Optional()", + "observationStart": " 2019-01-28 04:20:09 +0000", + "observationEnabled": " true", + "authorizationRequired": " false", + "lastBasalEndDate": " 2019-01-28 10:06:28 +0000", + }, + }