diff --git a/_posts/2023-08-13-half-marathon.md b/_posts/2023-08-13-half-marathon.md index 0735c16..7ad0e76 100644 --- a/_posts/2023-08-13-half-marathon.md +++ b/_posts/2023-08-13-half-marathon.md @@ -5,7 +5,7 @@ excerpt: | I ran my first half marathon! Let's look at the data. image: /assets/blog/running/time_vs_distance.svg social_image: /assets/blog/running/time_vs_distance.png -thumbnail: /assets/blog/running/time_vs_distance.svg +thumbnail: /assets/blog/running/half_thumbnail.svg image_class: invertable alt: A scatter graph of run time vs run distance for all my runs on strava. It shows that I mainly run between 5 and 6 min per kilometer, regardless of distance --- diff --git a/_posts/2023-10-20-first-marathon.md b/_posts/2023-10-20-first-marathon.md new file mode 100644 index 0000000..79866ce --- /dev/null +++ b/_posts/2023-10-20-first-marathon.md @@ -0,0 +1,12 @@ +--- +title: My First Full Marathon! +layout: post +excerpt: | + I ran the Amsterdam marathon! My first official race and the longest distance I've run in one go! + +thumbnail: /assets/blog/running/full_thumbnail.svg +image_class: invertable +alt: A scatter graph of run time vs run distance for all my runs on strava. There are lots of points between 5-15km, a couple around 21km and one single point way out at 42km. +--- + +I ran the Amsterdam marathon! My first official race and the longest distance I've run in one go! \ No newline at end of file diff --git a/_projects/lego_adapters.md b/_projects/lego_adapters.md new file mode 100644 index 0000000..6c0f1e4 --- /dev/null +++ b/_projects/lego_adapters.md @@ -0,0 +1,13 @@ +--- +title: 3D Printed Lego Motor Adapters +layout: post +image: /assets/projects/lego_adapters/thumbnail.png + +excerpt: Adapters to use common components with lego technic. +permalink: /projects/lego_adapters +assets: /assets/projects/lego_adapters +--- + +Testing! + +{{ page | inspect }} \ No newline at end of file diff --git a/_projects/toothbrush_shelf.md b/_projects/toothbrush_shelf.md new file mode 100644 index 0000000..af8a2bc --- /dev/null +++ b/_projects/toothbrush_shelf.md @@ -0,0 +1,15 @@ +--- +title: Toothbrush Shelf +layout: post +excerpt: | + +image: /assets/projects/toothbrush_shelf/thumbnail.png + +excerpt: A shelf to put your toothbrush charger on. +permalink: /projects/toothbrush_shelf +assets: /assets/projects/toothbrush_shelf +--- + +Testing! + +{{ page | inspect }} \ No newline at end of file diff --git a/assets/blog/running/full_thumbnail.svg b/assets/blog/running/full_thumbnail.svg new file mode 100644 index 0000000..a53cb6a --- /dev/null +++ b/assets/blog/running/full_thumbnail.svg @@ -0,0 +1,1320 @@ + + + + + + + + 2023-10-20T14:51:58.776895 + image/svg+xml + + + Matplotlib v3.7.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/blog/running/garmindb.log b/assets/blog/running/garmindb.log index d4a8b37..6cdbe09 100644 --- a/assets/blog/running/garmindb.log +++ b/assets/blog/running/garmindb.log @@ -4,842 +4,3 @@ INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbut INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/version.py:/Users/math/micromamba/envs/iot_ingester/bin/garmindb_cli.py 1...0...8 INFO:root:Enabled statistics: [, , , , , , ] INFO:/Users/math/micromamba/envs/iot_ingester/bin/garmindb_cli.py:___Downloading Latest Data___ -INFO:root:login: Tom (b9f7e56c-f47d-4bbc-a608-9ceb205d5cc6) -INFO:root:Fetching 25 activities to /Users/math/HealthData/FitFiles/Activities -INFO:root:get_activity_types: '/Users/math/HealthData/FitFiles/Activities' -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/FitFiles/Activities/activity_types.json (exists) -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/garmindb/download.py:Getting activities: '/Users/math/HealthData/FitFiles/Activities' (25) temp /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpeatj5nmp -INFO:root:get_activity_summaries -INFO:root:get_activities: (11766891006) -INFO:root:get_activities: /Users/math/HealthData/FitFiles/Activities/activity_11766891006.json <- {'activityId': 11766891006, 'activityName': 'Junas Running', 'description': None, 'startTimeLocal': '2023-08-11 20:19:00', 'startTimeGMT': '2023-08-11 18:19:00', 'activityType': {'typeId': 1, 'typeKey': 'running', 'parentTypeId': 17, 'isHidden': False, 'trimmable': True, 'restricted': False}, 'eventType': {'typeId': 9, 'typeKey': 'uncategorized', 'sortOrder': 10}, 'comments': None, 'parentId': None, 'distance': 8336.009765625, 'duration': 3358.8330078125, 'elapsedDuration': 3435.2470703125, 'movingDuration': 3308.2889709472656, 'elevationGain': 59.0, 'elevationLoss': 77.0, 'averageSpeed': 2.4820001125335693, 'maxSpeed': 5.197000026702881, 'startLatitude': 43.76949814148247, 'startLongitude': 4.121175762265921, 'hasPolyline': True, 'ownerId': 115149940, 'ownerDisplayName': 'b9f7e56c-f47d-4bbc-a608-9ceb205d5cc6', 'ownerFullName': 'Tom', 'ownerProfileImageUrlSmall': 'https://s3.amazonaws.com/garmin-connect-prod/profile_images/38053e7d-3185-4c4d-a366-226f07729fa6-prth.png', 'ownerProfileImageUrlMedium': 'https://s3.amazonaws.com/garmin-connect-prod/profile_images/38053e7d-3185-4c4d-a366-226f07729fa6-prfr.png', 'ownerProfileImageUrlLarge': 'https://s3.amazonaws.com/garmin-connect-prod/profile_images/38053e7d-3185-4c4d-a366-226f07729fa6-prof.png', 'calories': 783.0, 'bmrCalories': None, 'averageHR': 160.0, 'maxHR': 191.0, 'averageRunningCadenceInStepsPerMinute': 135.90625, 'maxRunningCadenceInStepsPerMinute': 249.0, 'maxLapAvgRunCadence': None, 'averageBikingCadenceInRevPerMinute': None, 'maxBikingCadenceInRevPerMinute': None, 'averageSwimCadenceInStrokesPerMinute': None, 'maxSwimCadenceInStrokesPerMinute': None, 'averageSwolf': None, 'activeLengths': None, 'steps': 7648, 'conversationUuid': None, 'conversationPk': None, 'numberOfActivityLikes': None, 'numberOfActivityComments': None, 'likedByUser': None, 'commentedByUser': None, 'activityLikeDisplayNames': None, 'activityLikeFullNames': None, 'activityLikeProfileImageUrls': None, 'requestorRelationship': None, 'userRoles': ['ROLE_OUTDOOR_USER', 'ROLE_CONNECTUSER', 'ROLE_FITNESS_USER', 'ROLE_WELLNESS_USER'], 'privacy': {'typeId': 2, 'typeKey': 'private'}, 'userPro': False, 'courseId': None, 'poolLength': None, 'unitOfPoolLength': None, 'hasVideo': False, 'videoUrl': None, 'timeZoneId': 124, 'beginTimestamp': 1691777940000, 'sportTypeId': 1, 'avgPower': None, 'maxPower': None, 'aerobicTrainingEffect': 4.800000190734863, 'anaerobicTrainingEffect': 3.4000000953674316, 'strokes': None, 'normPower': None, 'leftBalance': None, 'rightBalance': None, 'avgLeftBalance': None, 'max20MinPower': None, 'avgVerticalOscillation': None, 'avgGroundContactTime': None, 'avgStrideLength': 109.46480258434406, 'avgFractionalCadence': None, 'maxFractionalCadence': None, 'trainingStressScore': None, 'intensityFactor': None, 'vO2MaxValue': 47.0, 'avgVerticalRatio': None, 'avgGroundContactBalance': None, 'lactateThresholdBpm': None, 'lactateThresholdSpeed': None, 'maxFtp': None, 'avgStrokeDistance': None, 'avgStrokeCadence': None, 'maxStrokeCadence': None, 'workoutId': None, 'avgStrokes': None, 'minStrokes': None, 'deviceId': 3974710460, 'minTemperature': 27.0, 'maxTemperature': 32.0, 'minElevation': 26.600000381469727, 'maxElevation': 79.80000305175781, 'avgDoubleCadence': None, 'maxDoubleCadence': 249.0, 'summarizedExerciseSets': None, 'maxDepth': None, 'avgDepth': None, 'surfaceInterval': None, 'startN2': None, 'endN2': None, 'startCns': None, 'endCns': None, 'summarizedDiveInfo': {'weight': None, 'weightUnit': None, 'visibility': None, 'visibilityUnit': None, 'surfaceCondition': None, 'current': None, 'waterType': None, 'waterDensity': None, 'summarizedDiveGases': [], 'totalSurfaceTime': None}, 'activityLikeAuthors': None, 'avgVerticalSpeed': None, 'maxVerticalSpeed': 0.40000152587890625, 'floorsClimbed': None, 'floorsDescended': None, 'manufacturer': 'GARMIN', 'diveNumber': None, 'locationName': 'Junas', 'bottomTime': None, 'lapCount': 9, 'endLatitude': 43.77597886137664, 'endLongitude': 4.128410769626498, 'minAirSpeed': None, 'maxAirSpeed': None, 'avgAirSpeed': None, 'avgWindYawAngle': None, 'minCda': None, 'maxCda': None, 'avgCda': None, 'avgWattsPerCda': None, 'flow': None, 'grit': None, 'jumpCount': None, 'caloriesEstimated': None, 'caloriesConsumed': None, 'waterEstimated': None, 'waterConsumed': None, 'maxAvgPower_1': None, 'maxAvgPower_2': None, 'maxAvgPower_5': None, 'maxAvgPower_10': None, 'maxAvgPower_20': None, 'maxAvgPower_30': None, 'maxAvgPower_60': None, 'maxAvgPower_120': None, 'maxAvgPower_300': None, 'maxAvgPower_600': None, 'maxAvgPower_1200': None, 'maxAvgPower_1800': None, 'maxAvgPower_3600': None, 'maxAvgPower_7200': None, 'maxAvgPower_18000': None, 'excludeFromPowerCurveReports': None, 'totalSets': None, 'activeSets': None, 'totalReps': None, 'minRespirationRate': None, 'maxRespirationRate': None, 'avgRespirationRate': None, 'trainingEffectLabel': None, 'activityTrainingLoad': None, 'avgFlow': None, 'avgGrit': None, 'minActivityLapDuration': 138.3699951171875, 'avgStress': None, 'startStress': None, 'endStress': None, 'differenceStress': None, 'maxStress': None, 'aerobicTrainingEffectMessage': 'HIGHLY_IMPROVING_LACTATE_THRESHOLD_13', 'anaerobicTrainingEffectMessage': 'IMPROVING_ANAEROBIC_BASE_2', 'splitSummaries': [], 'hasSplits': False, 'maxBottomTime': None, 'hasSeedFirstbeatProfile': None, 'calendarEventId': None, 'calendarEventUuid': None, 'avgGradeAdjustedSpeed': None, 'avgWheelchairCadence': None, 'maxWheelchairCadence': None, 'gameName': None, 'differenceBodyBattery': None, 'gameType': None, 'purposeful': False, 'pr': False, 'manualActivity': False, 'autoCalcCalories': False, 'elevationCorrected': False, 'atpActivity': False, 'favorite': False, 'decoDive': False, 'parent': False} -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Activities/activity_details_11766891006.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Activities/activity_details_11766891006.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpeatj5nmp/activity_11766891006.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpeatj5nmp/activity_11766891006.zip -INFO:root:get_activities: (11736049270) -INFO:root:get_activities: (11700504498) -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpeatj5nmp to /Users/math/HealthData/FitFiles/Activities -INFO:/Users/math/micromamba/envs/iot_ingester/bin/garmindb_cli.py:Downloading latest monitoring data from: 2023-08-09 21:03:43 -INFO:root:Date range to update: 2023-08-09 (15) to /Users/math/HealthData/FitFiles/Monitoring -INFO:root:Getting daily summaries: 2023-08-09 (15) -INFO:root:get_summary_day: 2023-08-09 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-09.json (exists) -INFO:root:get_summary_day: 2023-08-10 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-10.json (exists) -INFO:root:get_summary_day: 2023-08-11 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-11.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-11.json -INFO:root:get_summary_day: 2023-08-12 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-12.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-12.json -INFO:root:get_summary_day: 2023-08-13 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-13.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-13.json -INFO:root:get_summary_day: 2023-08-14 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-14.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-14.json -INFO:root:get_summary_day: 2023-08-15 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-15.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-15.json -INFO:root:get_summary_day: 2023-08-16 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-16.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-16.json -INFO:root:get_summary_day: 2023-08-17 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-17.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-17.json -INFO:root:get_summary_day: 2023-08-18 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-18.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-18.json -INFO:root:get_summary_day: 2023-08-19 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-19.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-19.json -INFO:root:get_summary_day: 2023-08-20 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-20.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-20.json -INFO:root:get_summary_day: 2023-08-21 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-21.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-21.json -INFO:root:get_summary_day: 2023-08-22 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-22.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-22.json -INFO:root:get_summary_day: 2023-08-23 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-23.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-23.json -INFO:root:Getting hydration: 2023-08-09 (15) -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-09.json (exists) -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-10.json (exists) -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-11.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-11.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-12.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-12.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-13.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-13.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-14.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-14.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-15.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-15.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-16.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-16.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-17.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-17.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-18.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-18.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-19.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-19.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-20.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-20.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-21.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-21.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-22.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-22.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-23.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-23.json -INFO:root:Getting monitoring: 2023-08-09 (15) -INFO:root:get_monitoring_day: 2023-08-09 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp_2l4cus7 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp_2l4cus7/2023-08-09.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp_2l4cus7/2023-08-09.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp_2l4cus7 to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:get_monitoring_day: 2023-08-10 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpdcg670tl -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpdcg670tl/2023-08-10.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpdcg670tl/2023-08-10.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpdcg670tl to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:get_monitoring_day: 2023-08-11 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp0zgk_f8_ -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp0zgk_f8_/2023-08-11.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp0zgk_f8_/2023-08-11.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp0zgk_f8_ to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:get_monitoring_day: 2023-08-12 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmphm0bpubf -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmphm0bpubf/2023-08-12.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmphm0bpubf/2023-08-12.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmphm0bpubf to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:get_monitoring_day: 2023-08-13 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp2pedqcb5 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp2pedqcb5/2023-08-13.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp2pedqcb5/2023-08-13.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp2pedqcb5 to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:get_monitoring_day: 2023-08-14 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp8bi4spct -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp8bi4spct/2023-08-14.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp8bi4spct/2023-08-14.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp8bi4spct to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:get_monitoring_day: 2023-08-15 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpcpmdfo01 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpcpmdfo01/2023-08-15.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpcpmdfo01/2023-08-15.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpcpmdfo01 to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:get_monitoring_day: 2023-08-16 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp4grt34w_ -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp4grt34w_/2023-08-16.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp4grt34w_/2023-08-16.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp4grt34w_ to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:get_monitoring_day: 2023-08-17 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpfjh2d7rh -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpfjh2d7rh/2023-08-17.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpfjh2d7rh/2023-08-17.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpfjh2d7rh to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:get_monitoring_day: 2023-08-18 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpffh0tjls -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpffh0tjls/2023-08-18.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpffh0tjls/2023-08-18.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpffh0tjls to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:get_monitoring_day: 2023-08-19 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp2l3ppou2 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp2l3ppou2/2023-08-19.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp2l3ppou2/2023-08-19.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmp2l3ppou2 to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:get_monitoring_day: 2023-08-20 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpjeny2lz8 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpjeny2lz8/2023-08-20.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpjeny2lz8/2023-08-20.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpjeny2lz8 to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:get_monitoring_day: 2023-08-21 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpgclerxby -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpgclerxby/2023-08-21.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpgclerxby/2023-08-21.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpgclerxby to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:get_monitoring_day: 2023-08-22 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpy4vd04t1 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpy4vd04t1/2023-08-22.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpy4vd04t1/2023-08-22.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpy4vd04t1 to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:get_monitoring_day: 2023-08-23 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpj88xgm7l -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpj88xgm7l/2023-08-23.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpj88xgm7l/2023-08-23.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpj88xgm7l to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:get_monitoring_day: 2023-08-24 to /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpanqjjb14 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpanqjjb14/2023-08-24.zip -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpanqjjb14/2023-08-24.zip -INFO:root:unzip_files: from /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpanqjjb14 to /Users/math/HealthData/FitFiles/Monitoring/2023 -INFO:root:Saved monitoring files for 2023-08-09 (15) to /Users/math/HealthData/FitFiles/Monitoring for processing -INFO:idbutils.db_object:Found time_col_name timestamp for table Attributes -INFO:idbutils.db_object:Found time_col_name timestamp for table Device -INFO:/Users/math/micromamba/envs/iot_ingester/bin/garmindb_cli.py:Downloading latest sleep data from: 2023-08-10 -INFO:root:Date range to update: 2023-08-10 (14) to /Users/math/HealthData/Sleep -INFO:root:Getting sleep: 2023-08-10 (14) -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Sleep/sleep_2023-08-10.json (exists) -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Sleep/sleep_2023-08-11.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Sleep/sleep_2023-08-11.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Sleep/sleep_2023-08-12.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Sleep/sleep_2023-08-12.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Sleep/sleep_2023-08-13.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Sleep/sleep_2023-08-13.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Sleep/sleep_2023-08-14.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Sleep/sleep_2023-08-14.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Sleep/sleep_2023-08-15.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Sleep/sleep_2023-08-15.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Sleep/sleep_2023-08-16.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Sleep/sleep_2023-08-16.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Sleep/sleep_2023-08-17.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Sleep/sleep_2023-08-17.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Sleep/sleep_2023-08-18.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Sleep/sleep_2023-08-18.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Sleep/sleep_2023-08-19.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Sleep/sleep_2023-08-19.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Sleep/sleep_2023-08-20.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Sleep/sleep_2023-08-20.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Sleep/sleep_2023-08-21.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Sleep/sleep_2023-08-21.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Sleep/sleep_2023-08-22.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Sleep/sleep_2023-08-22.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Sleep/sleep_2023-08-23.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Sleep/sleep_2023-08-23.json -INFO:root:Saved sleep files for 2023-08-10 (14) to /Users/math/HealthData/Sleep for processing -INFO:/Users/math/micromamba/envs/iot_ingester/bin/garmindb_cli.py:Downloading latest weight data from: 2023-07-27 -INFO:root:Date range to update: 2023-07-27 (28) to /Users/math/HealthData/Weight -INFO:root:Getting weight: 2023-07-27 (28) -INFO:root:Checking weight: 2023-07-27 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Weight/weight_2023-07-27.json (exists) -INFO:root:Checking weight: 2023-07-28 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Weight/weight_2023-07-28.json (exists) -INFO:root:Checking weight: 2023-07-29 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Weight/weight_2023-07-29.json (exists) -INFO:root:Checking weight: 2023-07-30 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Weight/weight_2023-07-30.json (exists) -INFO:root:Checking weight: 2023-07-31 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Weight/weight_2023-07-31.json (exists) -INFO:root:Checking weight: 2023-08-01 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Weight/weight_2023-08-01.json (exists) -INFO:root:Checking weight: 2023-08-02 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Weight/weight_2023-08-02.json (exists) -INFO:root:Checking weight: 2023-08-03 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Weight/weight_2023-08-03.json (exists) -INFO:root:Checking weight: 2023-08-04 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Weight/weight_2023-08-04.json (exists) -INFO:root:Checking weight: 2023-08-05 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Weight/weight_2023-08-05.json (exists) -INFO:root:Checking weight: 2023-08-06 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Weight/weight_2023-08-06.json (exists) -INFO:root:Checking weight: 2023-08-07 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Weight/weight_2023-08-07.json (exists) -INFO:root:Checking weight: 2023-08-08 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Weight/weight_2023-08-08.json (exists) -INFO:root:Checking weight: 2023-08-09 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Weight/weight_2023-08-09.json (exists) -INFO:root:Checking weight: 2023-08-10 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/Weight/weight_2023-08-10.json (exists) -INFO:root:Checking weight: 2023-08-11 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Weight/weight_2023-08-11.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Weight/weight_2023-08-11.json -INFO:root:Checking weight: 2023-08-12 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Weight/weight_2023-08-12.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Weight/weight_2023-08-12.json -INFO:root:Checking weight: 2023-08-13 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Weight/weight_2023-08-13.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Weight/weight_2023-08-13.json -INFO:root:Checking weight: 2023-08-14 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Weight/weight_2023-08-14.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Weight/weight_2023-08-14.json -INFO:root:Checking weight: 2023-08-15 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Weight/weight_2023-08-15.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Weight/weight_2023-08-15.json -INFO:root:Checking weight: 2023-08-16 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Weight/weight_2023-08-16.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Weight/weight_2023-08-16.json -INFO:root:Checking weight: 2023-08-17 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Weight/weight_2023-08-17.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Weight/weight_2023-08-17.json -INFO:root:Checking weight: 2023-08-18 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Weight/weight_2023-08-18.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Weight/weight_2023-08-18.json -INFO:root:Checking weight: 2023-08-19 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Weight/weight_2023-08-19.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Weight/weight_2023-08-19.json -INFO:root:Checking weight: 2023-08-20 overwite False -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Weight/weight_2023-08-20.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Weight/weight_2023-08-20.json -INFO:root:Checking weight: 2023-08-21 overwite True -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Weight/weight_2023-08-21.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Weight/weight_2023-08-21.json -INFO:root:Checking weight: 2023-08-22 overwite True -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Weight/weight_2023-08-22.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Weight/weight_2023-08-22.json -INFO:root:Checking weight: 2023-08-23 overwite True -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/Weight/weight_2023-08-23.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/Weight/weight_2023-08-23.json -INFO:root:Saved weight files for 2023-07-27 (28) to /Users/math/HealthData/Weight for processing -INFO:/Users/math/micromamba/envs/iot_ingester/bin/garmindb_cli.py:Downloading latest rhr data from: 2023-08-09 -INFO:root:Date range to update: 2023-08-09 (15) to /Users/math/HealthData/RHR -INFO:root:Getting rhr: 2023-08-09 (15) -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/RHR/rhr_2023-08-09.json (exists) -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Ignoring /Users/math/HealthData/RHR/rhr_2023-08-10.json (exists) -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/RHR/rhr_2023-08-11.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/RHR/rhr_2023-08-11.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/RHR/rhr_2023-08-12.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/RHR/rhr_2023-08-12.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/RHR/rhr_2023-08-13.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/RHR/rhr_2023-08-13.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/RHR/rhr_2023-08-14.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/RHR/rhr_2023-08-14.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/RHR/rhr_2023-08-15.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/RHR/rhr_2023-08-15.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/RHR/rhr_2023-08-16.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/RHR/rhr_2023-08-16.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/RHR/rhr_2023-08-17.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/RHR/rhr_2023-08-17.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/RHR/rhr_2023-08-18.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/RHR/rhr_2023-08-18.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/RHR/rhr_2023-08-19.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/RHR/rhr_2023-08-19.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/RHR/rhr_2023-08-20.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/RHR/rhr_2023-08-20.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/RHR/rhr_2023-08-21.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/RHR/rhr_2023-08-21.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/RHR/rhr_2023-08-22.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/RHR/rhr_2023-08-22.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Downloading /Users/math/HealthData/RHR/rhr_2023-08-23.json -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/rest_client.py:Writing /Users/math/HealthData/RHR/rhr_2023-08-23.json -INFO:root:Saved rhr files for 2023-08-09 (15) to /Users/math/HealthData/RHR for processing -INFO:/Users/math/micromamba/envs/iot_ingester/bin/garmindb_cli.py:___Importing Latest Data___ -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/garmindb/import_monitoring.py:Processing profile data -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/file_processor.py:Reading directory: /Users/math/HealthData/FitFiles looking for files matching profile\.json -INFO:root:Found 1 json files for profile\.json in /Users/math/HealthData/FitFiles -INFO:root:Processing 1 json files -INFO:root:DB updated with 4 entries from /Users/math/HealthData/FitFiles/profile.json -INFO:root:DB updated with 4 entries from 1 files. -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/garmindb/fit_data.py:Processing [] FIT data from /Users/math/HealthData/FitFiles -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/file_processor.py:Reading directory: /Users/math/HealthData/FitFiles looking for files matching \w+\.(fit|FIT) -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/garmindb/import_monitoring.py:Processing weight data -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/file_processor.py:Reading directory: /Users/math/HealthData/Weight looking for files matching weight_\d{4}-\d{2}-\d{2}\.json and created after 2023-08-23 15:38:57.408304 -INFO:root:Found 13 json files for weight_\d{4}-\d{2}-\d{2}\.json in /Users/math/HealthData/Weight -INFO:root:Processing 13 json files -WARNING:root:No data saved for /Users/math/HealthData/Weight/weight_2023-08-11.json -WARNING:root:No data saved for /Users/math/HealthData/Weight/weight_2023-08-21.json -WARNING:root:No data saved for /Users/math/HealthData/Weight/weight_2023-08-17.json -WARNING:root:No data saved for /Users/math/HealthData/Weight/weight_2023-08-16.json -WARNING:root:No data saved for /Users/math/HealthData/Weight/weight_2023-08-20.json -WARNING:root:No data saved for /Users/math/HealthData/Weight/weight_2023-08-19.json -WARNING:root:No data saved for /Users/math/HealthData/Weight/weight_2023-08-23.json -WARNING:root:No data saved for /Users/math/HealthData/Weight/weight_2023-08-15.json -WARNING:root:No data saved for /Users/math/HealthData/Weight/weight_2023-08-14.json -WARNING:root:No data saved for /Users/math/HealthData/Weight/weight_2023-08-22.json -WARNING:root:No data saved for /Users/math/HealthData/Weight/weight_2023-08-18.json -WARNING:root:No data saved for /Users/math/HealthData/Weight/weight_2023-08-13.json -WARNING:root:No data saved for /Users/math/HealthData/Weight/weight_2023-08-12.json -INFO:root:DB updated with 0 entries from 13 files. -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/garmindb/import_monitoring.py:Processing daily summary data -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/file_processor.py:Reading directory: /Users/math/HealthData/FitFiles/Monitoring looking for files matching daily_summary_\d{4}-\d{2}-\d{2}\.json and created after 2023-08-23 15:38:57.443949 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/file_processor.py:Reading directory: /Users/math/HealthData/FitFiles/Monitoring/2023 looking for files matching daily_summary_\d{4}-\d{2}-\d{2}\.json and created after 2023-08-23 15:38:57.445850 -INFO:root:Found 13 json files for daily_summary_\d{4}-\d{2}-\d{2}\.json in /Users/math/HealthData/FitFiles/Monitoring -INFO:root:Processing 13 json files -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-22.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-18.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-14.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-15.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-19.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-23.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-12.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-13.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-11.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-20.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-16.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-17.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/daily_summary_2023-08-21.json -INFO:root:DB updated with 13 entries from 13 files. -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/file_processor.py:Reading directory: /Users/math/HealthData/FitFiles/Monitoring looking for files matching hydration_\d{4}-\d{2}-\d{2}\.json and created after 2023-08-23 15:38:57.541864 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/file_processor.py:Reading directory: /Users/math/HealthData/FitFiles/Monitoring/2023 looking for files matching hydration_\d{4}-\d{2}-\d{2}\.json and created after 2023-08-23 15:38:57.541944 -INFO:root:Found 13 json files for hydration_\d{4}-\d{2}-\d{2}\.json in /Users/math/HealthData/FitFiles/Monitoring -INFO:root:Processing 13 json files -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-17.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-21.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-20.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-16.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-11.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-13.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-12.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-15.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-23.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-19.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-18.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-22.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Monitoring/2023/hydration_2023-08-14.json -INFO:root:DB updated with 13 entries from 13 files. -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/garmindb/fit_data.py:Processing [] FIT data from /Users/math/HealthData/FitFiles/Monitoring -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/file_processor.py:Reading directory: /Users/math/HealthData/FitFiles/Monitoring looking for files matching \w+\.(fit|FIT) and created after 2023-08-23 15:38:57.586422 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/file_processor.py:Reading directory: /Users/math/HealthData/FitFiles/Monitoring/2023 looking for files matching \w+\.(fit|FIT) and created after 2023-08-23 15:38:57.586554 -INFO:root:Debug: 0 -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204127237080_WELLNESS.fit (2023-08-12 22:11:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204813780933_WELLNESS.fit (2023-08-17 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/203934876130_WELLNESS.fit (2023-08-11 22:21:00) [FileType.monitoring_b] with message types: [, , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204477366792_WELLNESS.fit (2023-08-14 23:02:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204727834884_WELLNESS.fit (2023-08-15 06:59:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204423230754_WELLNESS.fit (2023-08-14 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203618240377_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205300306901_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204210993518_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204727903708_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/203934497478_WELLNESS.fit (2023-08-11 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205107752190_WELLNESS.fit (2023-08-18 06:42:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204813784735_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204926950447_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204926909903_WELLNESS.fit (2023-08-17 02:02:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/203934479395_WELLNESS.fit (2023-08-10 01:04:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204813781394_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205107767727_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205300300774_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205773834422_WELLNESS.fit (2023-08-20 00:09:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204423282132_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204727879433_WELLNESS.fit (2023-08-16 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204101308015_WELLNESS.fit (2023-08-12 18:31:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205971056002_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205132538497_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203502534406_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204982035686_WELLNESS.fit (2023-08-17 22:04:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203935066277_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205107767200_WELLNESS.fit (2023-08-18 08:08:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204727941345_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/203935065960_WELLNESS.fit (2023-08-11 22:23:00) [FileType.monitoring_b] with message types: [, , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205773873868_WELLNESS.fit (2023-08-22 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205107778731_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205998964285_WELLNESS.fit (2023-08-24 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205773854217_WELLNESS.fit (2023-08-21 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205300307525_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205971046728_WELLNESS.fit (2023-08-23 15:03:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205774276050_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204477374388_WELLNESS.fit (2023-08-15 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203962315483_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204954284635_WELLNESS.fit (2023-08-17 18:03:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204127240325_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204210981858_WELLNESS.fit (2023-08-13 02:11:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204477375218_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/203934663501_WELLNESS.fit (2023-08-11 22:18:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204982047192_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204127239692_WELLNESS.fit (2023-08-13 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205829660178_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205132533060_WELLNESS.fit (2023-08-19 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203934511259_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205132532243_WELLNESS.fit (2023-08-18 20:08:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203618234234_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204101481068_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/203962301254_WELLNESS.fit (2023-08-11 22:30:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205132533542_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205300300361_WELLNESS.fit (2023-08-20 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205773892225_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/203502533449_WELLNESS.fit (2023-08-09 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204077243277_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205998964582_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204501155817_WELLNESS.fit (2023-08-15 03:02:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205829655126_WELLNESS.fit (2023-08-23 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205829653360_WELLNESS.fit (2023-08-22 19:02:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204222877192_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205247278639_WELLNESS.fit (2023-08-19 00:09:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204127242744_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204101480594_WELLNESS.fit (2023-08-12 22:09:00) [FileType.monitoring_b] with message types: [, , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203618232366_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204785656960_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203962318331_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205773875224_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/203618225612_WELLNESS.fit (2023-08-09 21:04:00) [FileType.monitoring_b] with message types: [, , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204127245783_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205915461797_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/203502920031_WELLNESS.fit (2023-08-09 08:56:00) [FileType.monitoring_b] with message types: [, , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203934664065_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205829655443_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205773874606_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204982049076_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205915453192_WELLNESS.fit (2023-08-23 03:02:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205247294509_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204423253255_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204423238261_WELLNESS.fit (2023-08-14 16:27:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205132539058_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203962313888_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204423238826_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/203935524689_WELLNESS.fit (2023-08-11 22:25:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204954286934_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/203618230450_WELLNESS.fit (2023-08-10 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/203592189849_WELLNESS.fit (2023-08-09 08:59:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205829658258_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204982045447_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205998965114_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204077231046_WELLNESS.fit (2023-08-12 02:30:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204501165127_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203934523050_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204423283826_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205009787024_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204813781870_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205998958543_WELLNESS.fit (2023-08-23 23:03:00) [FileType.monitoring_b] with message types: [, , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204222873327_WELLNESS.fit (2023-08-13 14:11:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204813787425_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204449031119_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205300299672_WELLNESS.fit (2023-08-19 16:09:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205774244728_WELLNESS.fit (2023-08-22 18:59:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205773922905_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203935525126_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203934876768_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204982045080_WELLNESS.fit (2023-08-18 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205773906721_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203934497988_METRICS.fit FileType.metrics [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/205009780808_WELLNESS.fit (2023-08-18 02:04:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204813765193_WELLNESS.fit (2023-08-16 22:01:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204785650502_WELLNESS.fit (2023-08-16 14:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204101310061_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204727880993_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203592198880_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204449027885_WELLNESS.fit (2023-08-14 19:01:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203502563938_SLEEP_DATA.fit FileType.sleep [, , , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204477376640_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/203962313355_WELLNESS.fit (2023-08-12 00:00:00) [FileType.monitoring_b] with message types: [, , , , , , , , , ] -INFO:root:Importing /Users/math/HealthData/FitFiles/Monitoring/2023/204423197974_WELLNESS.fit (2023-08-13 15:43:00) [FileType.monitoring_b] with message types: [, , , , , , , , , , ] -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/205998967250_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/204477374778_METRICS.fit FileType.metrics [, , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203618241110_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:root:skipping non-matching File( /Users/math/HealthData/FitFiles/Monitoring/2023/203502920529_SLEEP_DATA.fit FileType.sleep [, , , , , ] dev fields {}) -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/garmindb/import_monitoring.py:Processing sleep data -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/file_processor.py:Reading directory: /Users/math/HealthData/Sleep looking for files matching sleep_\d{4}-\d{2}-\d{2}\.json and created after 2023-08-23 15:39:07.910530 -INFO:root:Found 13 json files for sleep_\d{4}-\d{2}-\d{2}\.json in /Users/math/HealthData/Sleep -INFO:root:Processing 13 json files -INFO:root:Importing 2023-08-14 with REM data and UTC offset 3600.0 -WARNING:root:Could not get sleep score for 2023-08-14 -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 22, 19) (datetime.datetime(2023, 8, 13, 21, 19)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 22, 26) (datetime.datetime(2023, 8, 13, 21, 26)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 23, 42) (datetime.datetime(2023, 8, 13, 22, 42)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 23, 43) (datetime.datetime(2023, 8, 13, 22, 43)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 23, 45) (datetime.datetime(2023, 8, 13, 22, 45)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 23, 49) (datetime.datetime(2023, 8, 13, 22, 49)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 23, 55) (datetime.datetime(2023, 8, 13, 22, 55)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 0, 27) (datetime.datetime(2023, 8, 13, 23, 27)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 0, 29) (datetime.datetime(2023, 8, 13, 23, 29)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 0, 45) (datetime.datetime(2023, 8, 13, 23, 45)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 0, 48) (datetime.datetime(2023, 8, 13, 23, 48)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 0, 52) (datetime.datetime(2023, 8, 13, 23, 52)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 0, 54) (datetime.datetime(2023, 8, 13, 23, 54)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 1, 20) (datetime.datetime(2023, 8, 14, 0, 20)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 1, 37) (datetime.datetime(2023, 8, 14, 0, 37)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 2, 32) (datetime.datetime(2023, 8, 14, 1, 32)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 2, 45) (datetime.datetime(2023, 8, 14, 1, 45)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 5, 16) (datetime.datetime(2023, 8, 14, 4, 16)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 5, 33) (datetime.datetime(2023, 8, 14, 4, 33)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 5, 36) (datetime.datetime(2023, 8, 14, 4, 36)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 5, 41) (datetime.datetime(2023, 8, 14, 4, 41)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 6, 41) (datetime.datetime(2023, 8, 14, 5, 41)) -INFO:root:DB updated with 22 entries from /Users/math/HealthData/Sleep/sleep_2023-08-14.json -INFO:root:Importing 2023-08-22 with REM data and UTC offset 3600.0 -WARNING:root:Could not get sleep score for 2023-08-22 -INFO:root:Sleep event datetime.datetime(2023, 8, 21, 22, 26) (datetime.datetime(2023, 8, 21, 21, 26)) -INFO:root:Sleep event datetime.datetime(2023, 8, 21, 23, 36) (datetime.datetime(2023, 8, 21, 22, 36)) -INFO:root:Sleep event datetime.datetime(2023, 8, 21, 23, 38) (datetime.datetime(2023, 8, 21, 22, 38)) -INFO:root:Sleep event datetime.datetime(2023, 8, 21, 23, 39) (datetime.datetime(2023, 8, 21, 22, 39)) -INFO:root:Sleep event datetime.datetime(2023, 8, 21, 23, 52) (datetime.datetime(2023, 8, 21, 22, 52)) -INFO:root:Sleep event datetime.datetime(2023, 8, 21, 23, 53) (datetime.datetime(2023, 8, 21, 22, 53)) -INFO:root:Sleep event datetime.datetime(2023, 8, 22, 2, 5) (datetime.datetime(2023, 8, 22, 1, 5)) -INFO:root:Sleep event datetime.datetime(2023, 8, 22, 2, 13) (datetime.datetime(2023, 8, 22, 1, 13)) -INFO:root:Sleep event datetime.datetime(2023, 8, 22, 2, 14) (datetime.datetime(2023, 8, 22, 1, 14)) -INFO:root:Sleep event datetime.datetime(2023, 8, 22, 2, 19) (datetime.datetime(2023, 8, 22, 1, 19)) -INFO:root:Sleep event datetime.datetime(2023, 8, 22, 4, 38) (datetime.datetime(2023, 8, 22, 3, 38)) -INFO:root:Sleep event datetime.datetime(2023, 8, 22, 5, 8) (datetime.datetime(2023, 8, 22, 4, 8)) -INFO:root:Sleep event datetime.datetime(2023, 8, 22, 6, 16) (datetime.datetime(2023, 8, 22, 5, 16)) -INFO:root:DB updated with 13 entries from /Users/math/HealthData/Sleep/sleep_2023-08-22.json -INFO:root:Importing 2023-08-18 with REM data and UTC offset 3600.0 -WARNING:root:Could not get sleep score for 2023-08-18 -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 22, 12) (datetime.datetime(2023, 8, 17, 21, 12)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 22, 29) (datetime.datetime(2023, 8, 17, 21, 29)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 23, 10) (datetime.datetime(2023, 8, 17, 22, 10)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 23, 42) (datetime.datetime(2023, 8, 17, 22, 42)) -INFO:root:Sleep event datetime.datetime(2023, 8, 18, 0, 9) (datetime.datetime(2023, 8, 17, 23, 9)) -INFO:root:Sleep event datetime.datetime(2023, 8, 18, 0, 39) (datetime.datetime(2023, 8, 17, 23, 39)) -INFO:root:Sleep event datetime.datetime(2023, 8, 18, 0, 53) (datetime.datetime(2023, 8, 17, 23, 53)) -INFO:root:Sleep event datetime.datetime(2023, 8, 18, 1, 6) (datetime.datetime(2023, 8, 18, 0, 6)) -INFO:root:Sleep event datetime.datetime(2023, 8, 18, 1, 23) (datetime.datetime(2023, 8, 18, 0, 23)) -INFO:root:Sleep event datetime.datetime(2023, 8, 18, 3, 15) (datetime.datetime(2023, 8, 18, 2, 15)) -INFO:root:Sleep event datetime.datetime(2023, 8, 18, 3, 38) (datetime.datetime(2023, 8, 18, 2, 38)) -INFO:root:Sleep event datetime.datetime(2023, 8, 18, 4, 50) (datetime.datetime(2023, 8, 18, 3, 50)) -INFO:root:Sleep event datetime.datetime(2023, 8, 18, 5, 16) (datetime.datetime(2023, 8, 18, 4, 16)) -INFO:root:Sleep event datetime.datetime(2023, 8, 18, 6, 5) (datetime.datetime(2023, 8, 18, 5, 5)) -INFO:root:DB updated with 14 entries from /Users/math/HealthData/Sleep/sleep_2023-08-18.json -INFO:root:Importing 2023-08-19 with REM data and UTC offset 3600.0 -WARNING:root:Could not get sleep score for 2023-08-19 -INFO:root:Sleep event datetime.datetime(2023, 8, 18, 22, 56) (datetime.datetime(2023, 8, 18, 21, 56)) -INFO:root:Sleep event datetime.datetime(2023, 8, 18, 23, 16) (datetime.datetime(2023, 8, 18, 22, 16)) -INFO:root:Sleep event datetime.datetime(2023, 8, 19, 0, 0) (datetime.datetime(2023, 8, 18, 23, 0)) -INFO:root:Sleep event datetime.datetime(2023, 8, 19, 0, 15) (datetime.datetime(2023, 8, 18, 23, 15)) -INFO:root:Sleep event datetime.datetime(2023, 8, 19, 0, 25) (datetime.datetime(2023, 8, 18, 23, 25)) -INFO:root:Sleep event datetime.datetime(2023, 8, 19, 3, 1) (datetime.datetime(2023, 8, 19, 2, 1)) -INFO:root:Sleep event datetime.datetime(2023, 8, 19, 3, 2) (datetime.datetime(2023, 8, 19, 2, 2)) -INFO:root:Sleep event datetime.datetime(2023, 8, 19, 4, 10) (datetime.datetime(2023, 8, 19, 3, 10)) -INFO:root:Sleep event datetime.datetime(2023, 8, 19, 4, 31) (datetime.datetime(2023, 8, 19, 3, 31)) -INFO:root:Sleep event datetime.datetime(2023, 8, 19, 5, 46) (datetime.datetime(2023, 8, 19, 4, 46)) -INFO:root:Sleep event datetime.datetime(2023, 8, 19, 6, 5) (datetime.datetime(2023, 8, 19, 5, 5)) -INFO:root:Sleep event datetime.datetime(2023, 8, 19, 6, 9) (datetime.datetime(2023, 8, 19, 5, 9)) -INFO:root:Sleep event datetime.datetime(2023, 8, 19, 6, 16) (datetime.datetime(2023, 8, 19, 5, 16)) -INFO:root:Sleep event datetime.datetime(2023, 8, 19, 8, 30) (datetime.datetime(2023, 8, 19, 7, 30)) -INFO:root:DB updated with 14 entries from /Users/math/HealthData/Sleep/sleep_2023-08-19.json -INFO:root:Importing 2023-08-23 with REM data and UTC offset 3600.0 -WARNING:root:Could not get sleep score for 2023-08-23 -INFO:root:Sleep event datetime.datetime(2023, 8, 22, 22, 3) (datetime.datetime(2023, 8, 22, 21, 3)) -INFO:root:Sleep event datetime.datetime(2023, 8, 22, 22, 12) (datetime.datetime(2023, 8, 22, 21, 12)) -INFO:root:Sleep event datetime.datetime(2023, 8, 22, 22, 56) (datetime.datetime(2023, 8, 22, 21, 56)) -INFO:root:Sleep event datetime.datetime(2023, 8, 22, 23, 8) (datetime.datetime(2023, 8, 22, 22, 8)) -INFO:root:Sleep event datetime.datetime(2023, 8, 22, 23, 10) (datetime.datetime(2023, 8, 22, 22, 10)) -INFO:root:Sleep event datetime.datetime(2023, 8, 22, 23, 25) (datetime.datetime(2023, 8, 22, 22, 25)) -INFO:root:Sleep event datetime.datetime(2023, 8, 22, 23, 45) (datetime.datetime(2023, 8, 22, 22, 45)) -INFO:root:Sleep event datetime.datetime(2023, 8, 22, 23, 58) (datetime.datetime(2023, 8, 22, 22, 58)) -INFO:root:Sleep event datetime.datetime(2023, 8, 23, 0, 0) (datetime.datetime(2023, 8, 22, 23, 0)) -INFO:root:Sleep event datetime.datetime(2023, 8, 23, 0, 19) (datetime.datetime(2023, 8, 22, 23, 19)) -INFO:root:Sleep event datetime.datetime(2023, 8, 23, 0, 35) (datetime.datetime(2023, 8, 22, 23, 35)) -INFO:root:Sleep event datetime.datetime(2023, 8, 23, 0, 46) (datetime.datetime(2023, 8, 22, 23, 46)) -INFO:root:Sleep event datetime.datetime(2023, 8, 23, 1, 3) (datetime.datetime(2023, 8, 23, 0, 3)) -INFO:root:Sleep event datetime.datetime(2023, 8, 23, 2, 10) (datetime.datetime(2023, 8, 23, 1, 10)) -INFO:root:Sleep event datetime.datetime(2023, 8, 23, 2, 34) (datetime.datetime(2023, 8, 23, 1, 34)) -INFO:root:Sleep event datetime.datetime(2023, 8, 23, 3, 46) (datetime.datetime(2023, 8, 23, 2, 46)) -INFO:root:Sleep event datetime.datetime(2023, 8, 23, 3, 50) (datetime.datetime(2023, 8, 23, 2, 50)) -INFO:root:Sleep event datetime.datetime(2023, 8, 23, 3, 52) (datetime.datetime(2023, 8, 23, 2, 52)) -INFO:root:Sleep event datetime.datetime(2023, 8, 23, 3, 53) (datetime.datetime(2023, 8, 23, 2, 53)) -INFO:root:Sleep event datetime.datetime(2023, 8, 23, 3, 54) (datetime.datetime(2023, 8, 23, 2, 54)) -INFO:root:Sleep event datetime.datetime(2023, 8, 23, 3, 56) (datetime.datetime(2023, 8, 23, 2, 56)) -INFO:root:Sleep event datetime.datetime(2023, 8, 23, 4, 53) (datetime.datetime(2023, 8, 23, 3, 53)) -INFO:root:Sleep event datetime.datetime(2023, 8, 23, 5, 1) (datetime.datetime(2023, 8, 23, 4, 1)) -INFO:root:DB updated with 23 entries from /Users/math/HealthData/Sleep/sleep_2023-08-23.json -INFO:root:Importing 2023-08-15 with REM data and UTC offset 3600.0 -WARNING:root:Could not get sleep score for 2023-08-15 -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 22, 48) (datetime.datetime(2023, 8, 14, 21, 48)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 22, 57) (datetime.datetime(2023, 8, 14, 21, 57)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 23, 37) (datetime.datetime(2023, 8, 14, 22, 37)) -INFO:root:Sleep event datetime.datetime(2023, 8, 14, 23, 46) (datetime.datetime(2023, 8, 14, 22, 46)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 0, 5) (datetime.datetime(2023, 8, 14, 23, 5)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 0, 26) (datetime.datetime(2023, 8, 14, 23, 26)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 1, 26) (datetime.datetime(2023, 8, 15, 0, 26)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 1, 49) (datetime.datetime(2023, 8, 15, 0, 49)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 3, 6) (datetime.datetime(2023, 8, 15, 2, 6)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 3, 38) (datetime.datetime(2023, 8, 15, 2, 38)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 4, 58) (datetime.datetime(2023, 8, 15, 3, 58)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 5, 8) (datetime.datetime(2023, 8, 15, 4, 8)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 6, 39) (datetime.datetime(2023, 8, 15, 5, 39)) -INFO:root:DB updated with 13 entries from /Users/math/HealthData/Sleep/sleep_2023-08-15.json -INFO:root:Importing 2023-08-12 with REM data and UTC offset 7200.0 -WARNING:root:Could not get sleep score for 2023-08-12 -INFO:root:Sleep event datetime.datetime(2023, 8, 11, 23, 16) (datetime.datetime(2023, 8, 11, 21, 16)) -INFO:root:Sleep event datetime.datetime(2023, 8, 11, 23, 32) (datetime.datetime(2023, 8, 11, 21, 32)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 0, 38) (datetime.datetime(2023, 8, 11, 22, 38)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 0, 40) (datetime.datetime(2023, 8, 11, 22, 40)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 0, 41) (datetime.datetime(2023, 8, 11, 22, 41)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 0, 57) (datetime.datetime(2023, 8, 11, 22, 57)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 1, 7) (datetime.datetime(2023, 8, 11, 23, 7)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 2, 47) (datetime.datetime(2023, 8, 12, 0, 47)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 3, 2) (datetime.datetime(2023, 8, 12, 1, 2)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 4, 46) (datetime.datetime(2023, 8, 12, 2, 46)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 4, 55) (datetime.datetime(2023, 8, 12, 2, 55)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 6, 34) (datetime.datetime(2023, 8, 12, 4, 34)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 7, 7) (datetime.datetime(2023, 8, 12, 5, 7)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 7, 58) (datetime.datetime(2023, 8, 12, 5, 58)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 8, 56) (datetime.datetime(2023, 8, 12, 6, 56)) -INFO:root:DB updated with 15 entries from /Users/math/HealthData/Sleep/sleep_2023-08-12.json -INFO:root:Importing 2023-08-13 with REM data and UTC offset 3600.0 -WARNING:root:Could not get sleep score for 2023-08-13 -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 21, 22) (datetime.datetime(2023, 8, 12, 20, 22)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 21, 38) (datetime.datetime(2023, 8, 12, 20, 38)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 21, 51) (datetime.datetime(2023, 8, 12, 20, 51)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 21, 52) (datetime.datetime(2023, 8, 12, 20, 52)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 21, 54) (datetime.datetime(2023, 8, 12, 20, 54)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 21, 55) (datetime.datetime(2023, 8, 12, 20, 55)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 21, 59) (datetime.datetime(2023, 8, 12, 20, 59)) -INFO:root:Sleep event datetime.datetime(2023, 8, 12, 23, 22) (datetime.datetime(2023, 8, 12, 22, 22)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 0, 21) (datetime.datetime(2023, 8, 12, 23, 21)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 1, 50) (datetime.datetime(2023, 8, 13, 0, 50)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 1, 51) (datetime.datetime(2023, 8, 13, 0, 51)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 1, 52) (datetime.datetime(2023, 8, 13, 0, 52)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 2, 9) (datetime.datetime(2023, 8, 13, 1, 9)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 4, 4) (datetime.datetime(2023, 8, 13, 3, 4)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 4, 42) (datetime.datetime(2023, 8, 13, 3, 42)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 4, 45) (datetime.datetime(2023, 8, 13, 3, 45)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 4, 48) (datetime.datetime(2023, 8, 13, 3, 48)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 6, 6) (datetime.datetime(2023, 8, 13, 5, 6)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 6, 8) (datetime.datetime(2023, 8, 13, 5, 8)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 6, 9) (datetime.datetime(2023, 8, 13, 5, 9)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 6, 23) (datetime.datetime(2023, 8, 13, 5, 23)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 7, 0) (datetime.datetime(2023, 8, 13, 6, 0)) -INFO:root:Sleep event datetime.datetime(2023, 8, 13, 7, 1) (datetime.datetime(2023, 8, 13, 6, 1)) -INFO:root:DB updated with 23 entries from /Users/math/HealthData/Sleep/sleep_2023-08-13.json -INFO:root:Importing 2023-08-11 with REM data and UTC offset 7200.0 -WARNING:root:Could not get sleep score for 2023-08-11 -INFO:root:Sleep event datetime.datetime(2023, 8, 10, 22, 7) (datetime.datetime(2023, 8, 10, 20, 7)) -INFO:root:Sleep event datetime.datetime(2023, 8, 10, 22, 10) (datetime.datetime(2023, 8, 10, 20, 10)) -INFO:root:Sleep event datetime.datetime(2023, 8, 11, 0, 6) (datetime.datetime(2023, 8, 10, 22, 6)) -INFO:root:Sleep event datetime.datetime(2023, 8, 11, 0, 25) (datetime.datetime(2023, 8, 10, 22, 25)) -INFO:root:Sleep event datetime.datetime(2023, 8, 11, 0, 41) (datetime.datetime(2023, 8, 10, 22, 41)) -INFO:root:Sleep event datetime.datetime(2023, 8, 11, 1, 7) (datetime.datetime(2023, 8, 10, 23, 7)) -INFO:root:Sleep event datetime.datetime(2023, 8, 11, 1, 51) (datetime.datetime(2023, 8, 10, 23, 51)) -INFO:root:Sleep event datetime.datetime(2023, 8, 11, 2, 52) (datetime.datetime(2023, 8, 11, 0, 52)) -INFO:root:Sleep event datetime.datetime(2023, 8, 11, 3, 34) (datetime.datetime(2023, 8, 11, 1, 34)) -INFO:root:Sleep event datetime.datetime(2023, 8, 11, 3, 53) (datetime.datetime(2023, 8, 11, 1, 53)) -INFO:root:Sleep event datetime.datetime(2023, 8, 11, 8, 5) (datetime.datetime(2023, 8, 11, 6, 5)) -INFO:root:Sleep event datetime.datetime(2023, 8, 11, 8, 25) (datetime.datetime(2023, 8, 11, 6, 25)) -INFO:root:Sleep event datetime.datetime(2023, 8, 11, 8, 53) (datetime.datetime(2023, 8, 11, 6, 53)) -INFO:root:DB updated with 13 entries from /Users/math/HealthData/Sleep/sleep_2023-08-11.json -INFO:root:Importing 2023-08-16 with REM data and UTC offset 3600.0 -WARNING:root:Could not get sleep score for 2023-08-16 -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 21, 40) (datetime.datetime(2023, 8, 15, 20, 40)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 22, 16) (datetime.datetime(2023, 8, 15, 21, 16)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 22, 38) (datetime.datetime(2023, 8, 15, 21, 38)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 22, 44) (datetime.datetime(2023, 8, 15, 21, 44)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 23, 2) (datetime.datetime(2023, 8, 15, 22, 2)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 23, 6) (datetime.datetime(2023, 8, 15, 22, 6)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 23, 20) (datetime.datetime(2023, 8, 15, 22, 20)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 23, 55) (datetime.datetime(2023, 8, 15, 22, 55)) -INFO:root:Sleep event datetime.datetime(2023, 8, 15, 23, 56) (datetime.datetime(2023, 8, 15, 22, 56)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 0, 1) (datetime.datetime(2023, 8, 15, 23, 1)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 0, 3) (datetime.datetime(2023, 8, 15, 23, 3)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 1, 47) (datetime.datetime(2023, 8, 16, 0, 47)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 1, 49) (datetime.datetime(2023, 8, 16, 0, 49)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 1, 51) (datetime.datetime(2023, 8, 16, 0, 51)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 1, 53) (datetime.datetime(2023, 8, 16, 0, 53)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 1, 54) (datetime.datetime(2023, 8, 16, 0, 54)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 1, 56) (datetime.datetime(2023, 8, 16, 0, 56)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 3, 6) (datetime.datetime(2023, 8, 16, 2, 6)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 3, 7) (datetime.datetime(2023, 8, 16, 2, 7)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 4, 8) (datetime.datetime(2023, 8, 16, 3, 8)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 4, 44) (datetime.datetime(2023, 8, 16, 3, 44)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 4, 46) (datetime.datetime(2023, 8, 16, 3, 46)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 4, 48) (datetime.datetime(2023, 8, 16, 3, 48)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 5, 14) (datetime.datetime(2023, 8, 16, 4, 14)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 5, 20) (datetime.datetime(2023, 8, 16, 4, 20)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 5, 37) (datetime.datetime(2023, 8, 16, 4, 37)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 5, 39) (datetime.datetime(2023, 8, 16, 4, 39)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 5, 41) (datetime.datetime(2023, 8, 16, 4, 41)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 5, 50) (datetime.datetime(2023, 8, 16, 4, 50)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 6, 7) (datetime.datetime(2023, 8, 16, 5, 7)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 6, 25) (datetime.datetime(2023, 8, 16, 5, 25)) -INFO:root:DB updated with 31 entries from /Users/math/HealthData/Sleep/sleep_2023-08-16.json -INFO:root:Importing 2023-08-20 with REM data and UTC offset 3600.0 -WARNING:root:Could not get sleep score for 2023-08-20 -INFO:root:Sleep event datetime.datetime(2023, 8, 19, 23, 44) (datetime.datetime(2023, 8, 19, 22, 44)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 0, 0) (datetime.datetime(2023, 8, 19, 23, 0)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 0, 5) (datetime.datetime(2023, 8, 19, 23, 5)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 0, 16) (datetime.datetime(2023, 8, 19, 23, 16)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 0, 46) (datetime.datetime(2023, 8, 19, 23, 46)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 0, 50) (datetime.datetime(2023, 8, 19, 23, 50)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 1, 4) (datetime.datetime(2023, 8, 20, 0, 4)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 1, 23) (datetime.datetime(2023, 8, 20, 0, 23)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 1, 27) (datetime.datetime(2023, 8, 20, 0, 27)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 1, 33) (datetime.datetime(2023, 8, 20, 0, 33)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 1, 40) (datetime.datetime(2023, 8, 20, 0, 40)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 1, 43) (datetime.datetime(2023, 8, 20, 0, 43)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 1, 45) (datetime.datetime(2023, 8, 20, 0, 45)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 2, 34) (datetime.datetime(2023, 8, 20, 1, 34)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 2, 52) (datetime.datetime(2023, 8, 20, 1, 52)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 2, 59) (datetime.datetime(2023, 8, 20, 1, 59)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 3, 18) (datetime.datetime(2023, 8, 20, 2, 18)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 3, 19) (datetime.datetime(2023, 8, 20, 2, 19)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 4, 23) (datetime.datetime(2023, 8, 20, 3, 23)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 4, 40) (datetime.datetime(2023, 8, 20, 3, 40)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 4, 48) (datetime.datetime(2023, 8, 20, 3, 48)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 4, 57) (datetime.datetime(2023, 8, 20, 3, 57)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 5, 0) (datetime.datetime(2023, 8, 20, 4, 0)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 5, 1) (datetime.datetime(2023, 8, 20, 4, 1)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 6, 29) (datetime.datetime(2023, 8, 20, 5, 29)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 6, 57) (datetime.datetime(2023, 8, 20, 5, 57)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 7, 6) (datetime.datetime(2023, 8, 20, 6, 6)) -INFO:root:Sleep event datetime.datetime(2023, 8, 20, 7, 22) (datetime.datetime(2023, 8, 20, 6, 22)) -INFO:root:DB updated with 28 entries from /Users/math/HealthData/Sleep/sleep_2023-08-20.json -INFO:root:Importing 2023-08-21 without REM data and UTC offset 0 -WARNING:root:Could not get sleep score for 2023-08-21 -WARNING:root:No data saved for /Users/math/HealthData/Sleep/sleep_2023-08-21.json -INFO:root:Importing 2023-08-17 with REM data and UTC offset 3600.0 -WARNING:root:Could not get sleep score for 2023-08-17 -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 22, 50) (datetime.datetime(2023, 8, 16, 21, 50)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 23, 13) (datetime.datetime(2023, 8, 16, 22, 13)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 23, 46) (datetime.datetime(2023, 8, 16, 22, 46)) -INFO:root:Sleep event datetime.datetime(2023, 8, 16, 23, 51) (datetime.datetime(2023, 8, 16, 22, 51)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 0, 44) (datetime.datetime(2023, 8, 16, 23, 44)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 0, 53) (datetime.datetime(2023, 8, 16, 23, 53)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 0, 59) (datetime.datetime(2023, 8, 16, 23, 59)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 1, 3) (datetime.datetime(2023, 8, 17, 0, 3)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 1, 49) (datetime.datetime(2023, 8, 17, 0, 49)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 3, 37) (datetime.datetime(2023, 8, 17, 2, 37)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 3, 57) (datetime.datetime(2023, 8, 17, 2, 57)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 4, 59) (datetime.datetime(2023, 8, 17, 3, 59)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 5, 16) (datetime.datetime(2023, 8, 17, 4, 16)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 6, 0) (datetime.datetime(2023, 8, 17, 5, 0)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 6, 1) (datetime.datetime(2023, 8, 17, 5, 1)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 6, 3) (datetime.datetime(2023, 8, 17, 5, 3)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 6, 26) (datetime.datetime(2023, 8, 17, 5, 26)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 6, 27) (datetime.datetime(2023, 8, 17, 5, 27)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 6, 28) (datetime.datetime(2023, 8, 17, 5, 28)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 6, 30) (datetime.datetime(2023, 8, 17, 5, 30)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 6, 31) (datetime.datetime(2023, 8, 17, 5, 31)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 6, 40) (datetime.datetime(2023, 8, 17, 5, 40)) -INFO:root:Sleep event datetime.datetime(2023, 8, 17, 6, 41) (datetime.datetime(2023, 8, 17, 5, 41)) -INFO:root:DB updated with 23 entries from /Users/math/HealthData/Sleep/sleep_2023-08-17.json -INFO:root:DB updated with 232 entries from 13 files. -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/garmindb/import_monitoring.py:Processing rhr data -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/file_processor.py:Reading directory: /Users/math/HealthData/RHR looking for files matching rhr_\d{4}-\d{2}-\d{2}\.json and created after 2023-08-23 15:39:08.630069 -INFO:root:Found 13 json files for rhr_\d{4}-\d{2}-\d{2}\.json in /Users/math/HealthData/RHR -INFO:root:Processing 13 json files -INFO:root:DB updated with 1 entries from /Users/math/HealthData/RHR/rhr_2023-08-14.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/RHR/rhr_2023-08-18.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/RHR/rhr_2023-08-22.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/RHR/rhr_2023-08-23.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/RHR/rhr_2023-08-19.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/RHR/rhr_2023-08-15.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/RHR/rhr_2023-08-12.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/RHR/rhr_2023-08-13.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/RHR/rhr_2023-08-11.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/RHR/rhr_2023-08-16.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/RHR/rhr_2023-08-20.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/RHR/rhr_2023-08-21.json -INFO:root:DB updated with 1 entries from /Users/math/HealthData/RHR/rhr_2023-08-17.json -INFO:root:DB updated with 13 entries from 13 files. -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/garmindb/garmin_tcx_data.py:Processing activities tcx data -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/file_processor.py:Reading directory: /Users/math/HealthData/FitFiles/Activities looking for files matching .*\.tcx and created after 2023-08-23 15:39:08.667628 -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/garmindb/garmin_json_data.py:Processing latest activities summary data from /Users/math/HealthData/FitFiles/Activities -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/file_processor.py:Reading directory: /Users/math/HealthData/FitFiles/Activities looking for files matching activity_\d*\.json and created after 2023-08-23 15:39:08.667904 -INFO:root:Found 1 json files for activity_\d*\.json in /Users/math/HealthData/FitFiles/Activities -INFO:idbutils.db_object:Found time_col_name start_time for table Activities -INFO:idbutils.db_object:Found time_col_name start_time for table ActivityLaps -INFO:idbutils.db_object:Found time_col_name timestamp for table ActivityRecords -INFO:idbutils.db_object:Found time_col_name avg_pace for table StepsActivities -INFO:root:Processing 1 json files -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Activities/activity_11766891006.json -INFO:root:DB updated with 1 entries from 1 files. -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/garmindb/garmin_json_data.py:Processing activities detail data -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/file_processor.py:Reading directory: /Users/math/HealthData/FitFiles/Activities looking for files matching activity_details_\d*\.json and created after 2023-08-23 15:39:08.695291 -INFO:root:Found 1 json files for activity_details_\d*\.json in /Users/math/HealthData/FitFiles/Activities -INFO:root:Processing 1 json files -INFO:root:DB updated with 1 entries from /Users/math/HealthData/FitFiles/Activities/activity_details_11766891006.json -INFO:root:DB updated with 1 entries from 1 files. -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/garmindb/fit_data.py:Processing [] FIT data from /Users/math/HealthData/FitFiles/Activities -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/idbutils/file_processor.py:Reading directory: /Users/math/HealthData/FitFiles/Activities looking for files matching \w+\.(fit|FIT) and created after 2023-08-23 15:39:08.714212 -INFO:root:Debug: 0 -INFO:root:Importing /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit (2023-08-11 20:19:00) [FileType.activity] with message types: [, , , , , , , , , , , , , , , , , , , , ] -INFO:root:writing hr zone data for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'timestamp': datetime.datetime(2023, 8, 11, 18, 26, 34, tzinfo=datetime.timezone.utc), 'hr_zones_time': [datetime.time(0, 0, 2, 199000), datetime.time(0, 0, 38, 230000), datetime.time(0, 1, 23, 1000), datetime.time(0, 0, 31, 7000), datetime.time(0, 3, 45, 993000), datetime.time(0, 0), datetime.time(0, 0)], 'unknown_5': [None, None, None, None, None, None, None, None], 'unknown_9': [None, None, None, None, None, None, None, None], 'hr_zones_timer_type': , 'record_num': 0, 'unknown_15': None, 'hr_zones': [92, 110, 128, 146, 165, 183], 'hr_zones_method': , 'max_heart_rate': 183.0, 'min_heart_rate': 0.0, 'lactate_threshhold_heart_rate': 0.0, 'unknown_14': None} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'activity_id': '11766891006', 'lap': 0, 'hr_zones_method': , 'hrz_1_time': datetime.time(0, 0, 38, 230000), 'hrz_2_time': datetime.time(0, 1, 23, 1000), 'hrz_3_time': datetime.time(0, 0, 31, 7000), 'hrz_4_time': datetime.time(0, 3, 45, 993000), 'hrz_5_time': datetime.time(0, 0), 'hrz_1_hr': 92, 'hrz_2_hr': 110, 'hrz_3_hr': 128, 'hrz_4_hr': 146, 'hrz_5_hr': 165} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing hr zone data for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'timestamp': datetime.datetime(2023, 8, 11, 18, 33, tzinfo=datetime.timezone.utc), 'hr_zones_time': [datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 6, 26, 388000), datetime.time(0, 0), datetime.time(0, 0)], 'unknown_5': [None, None, None, None, None, None, None, None], 'unknown_9': [None, None, None, None, None, None, None, None], 'hr_zones_timer_type': , 'record_num': 1, 'unknown_15': None, 'hr_zones': [92, 110, 128, 146, 165, 183], 'hr_zones_method': , 'max_heart_rate': 183.0, 'min_heart_rate': 0.0, 'lactate_threshhold_heart_rate': 0.0, 'unknown_14': None} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'activity_id': '11766891006', 'lap': 1, 'hr_zones_method': , 'hrz_1_time': datetime.time(0, 0), 'hrz_2_time': datetime.time(0, 0), 'hrz_3_time': datetime.time(0, 0), 'hrz_4_time': datetime.time(0, 6, 26, 388000), 'hrz_5_time': datetime.time(0, 0), 'hrz_1_hr': 92, 'hrz_2_hr': 110, 'hrz_3_hr': 128, 'hrz_4_hr': 146, 'hrz_5_hr': 165} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing hr zone data for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'timestamp': datetime.datetime(2023, 8, 11, 18, 39, 18, tzinfo=datetime.timezone.utc), 'hr_zones_time': [datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 5, 30, 72000), datetime.time(0, 0, 46, 999000), datetime.time(0, 0)], 'unknown_5': [None, None, None, None, None, None, None, None], 'unknown_9': [None, None, None, None, None, None, None, None], 'hr_zones_timer_type': , 'record_num': 2, 'unknown_15': None, 'hr_zones': [92, 110, 128, 146, 165, 183], 'hr_zones_method': , 'max_heart_rate': 183.0, 'min_heart_rate': 0.0, 'lactate_threshhold_heart_rate': 0.0, 'unknown_14': None} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'activity_id': '11766891006', 'lap': 2, 'hr_zones_method': , 'hrz_1_time': datetime.time(0, 0), 'hrz_2_time': datetime.time(0, 0), 'hrz_3_time': datetime.time(0, 0), 'hrz_4_time': datetime.time(0, 5, 30, 72000), 'hrz_5_time': datetime.time(0, 0, 46, 999000), 'hrz_1_hr': 92, 'hrz_2_hr': 110, 'hrz_3_hr': 128, 'hrz_4_hr': 146, 'hrz_5_hr': 165} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing hr zone data for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'timestamp': datetime.datetime(2023, 8, 11, 18, 45, 21, tzinfo=datetime.timezone.utc), 'hr_zones_time': [datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 4, 2, 1000), datetime.time(0, 1, 17, 7000), datetime.time(0, 0, 44, 1000)], 'unknown_5': [None, None, None, None, None, None, None, None], 'unknown_9': [None, None, None, None, None, None, None, None], 'hr_zones_timer_type': , 'record_num': 3, 'unknown_15': None, 'hr_zones': [92, 110, 128, 146, 165, 183], 'hr_zones_method': , 'max_heart_rate': 183.0, 'min_heart_rate': 0.0, 'lactate_threshhold_heart_rate': 0.0, 'unknown_14': None} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'activity_id': '11766891006', 'lap': 3, 'hr_zones_method': , 'hrz_1_time': datetime.time(0, 0), 'hrz_2_time': datetime.time(0, 0), 'hrz_3_time': datetime.time(0, 0), 'hrz_4_time': datetime.time(0, 4, 2, 1000), 'hrz_5_time': datetime.time(0, 1, 17, 7000), 'hrz_1_hr': 92, 'hrz_2_hr': 110, 'hrz_3_hr': 128, 'hrz_4_hr': 146, 'hrz_5_hr': 165} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing hr zone data for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'timestamp': datetime.datetime(2023, 8, 11, 18, 52, 32, tzinfo=datetime.timezone.utc), 'hr_zones_time': [datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 6, 3, 269000), datetime.time(0, 1, 7, 996000), datetime.time(0, 0)], 'unknown_5': [None, None, None, None, None, None, None, None], 'unknown_9': [None, None, None, None, None, None, None, None], 'hr_zones_timer_type': , 'record_num': 4, 'unknown_15': None, 'hr_zones': [92, 110, 128, 146, 165, 183], 'hr_zones_method': , 'max_heart_rate': 183.0, 'min_heart_rate': 0.0, 'lactate_threshhold_heart_rate': 0.0, 'unknown_14': None} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'activity_id': '11766891006', 'lap': 4, 'hr_zones_method': , 'hrz_1_time': datetime.time(0, 0), 'hrz_2_time': datetime.time(0, 0), 'hrz_3_time': datetime.time(0, 0), 'hrz_4_time': datetime.time(0, 6, 3, 269000), 'hrz_5_time': datetime.time(0, 1, 7, 996000), 'hrz_1_hr': 92, 'hrz_2_hr': 110, 'hrz_3_hr': 128, 'hrz_4_hr': 146, 'hrz_5_hr': 165} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing hr zone data for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'timestamp': datetime.datetime(2023, 8, 11, 19, 0, 2, tzinfo=datetime.timezone.utc), 'hr_zones_time': [datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 7, 30, 486000), datetime.time(0, 0), datetime.time(0, 0)], 'unknown_5': [None, None, None, None, None, None, None, None], 'unknown_9': [None, None, None, None, None, None, None, None], 'hr_zones_timer_type': , 'record_num': 5, 'unknown_15': None, 'hr_zones': [92, 110, 128, 146, 165, 183], 'hr_zones_method': , 'max_heart_rate': 183.0, 'min_heart_rate': 0.0, 'lactate_threshhold_heart_rate': 0.0, 'unknown_14': None} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'activity_id': '11766891006', 'lap': 5, 'hr_zones_method': , 'hrz_1_time': datetime.time(0, 0), 'hrz_2_time': datetime.time(0, 0), 'hrz_3_time': datetime.time(0, 0), 'hrz_4_time': datetime.time(0, 7, 30, 486000), 'hrz_5_time': datetime.time(0, 0), 'hrz_1_hr': 92, 'hrz_2_hr': 110, 'hrz_3_hr': 128, 'hrz_4_hr': 146, 'hrz_5_hr': 165} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing hr zone data for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'timestamp': datetime.datetime(2023, 8, 11, 19, 5, 57, tzinfo=datetime.timezone.utc), 'hr_zones_time': [datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 3, 27, 678000), datetime.time(0, 2, 21), datetime.time(0, 0, 7, 2000)], 'unknown_5': [None, None, None, None, None, None, None, None], 'unknown_9': [None, None, None, None, None, None, None, None], 'hr_zones_timer_type': , 'record_num': 6, 'unknown_15': None, 'hr_zones': [92, 110, 128, 146, 165, 183], 'hr_zones_method': , 'max_heart_rate': 183.0, 'min_heart_rate': 0.0, 'lactate_threshhold_heart_rate': 0.0, 'unknown_14': None} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'activity_id': '11766891006', 'lap': 6, 'hr_zones_method': , 'hrz_1_time': datetime.time(0, 0), 'hrz_2_time': datetime.time(0, 0), 'hrz_3_time': datetime.time(0, 0), 'hrz_4_time': datetime.time(0, 3, 27, 678000), 'hrz_5_time': datetime.time(0, 2, 21), 'hrz_1_hr': 92, 'hrz_2_hr': 110, 'hrz_3_hr': 128, 'hrz_4_hr': 146, 'hrz_5_hr': 165} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing hr zone data for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'timestamp': datetime.datetime(2023, 8, 11, 19, 13, 56, tzinfo=datetime.timezone.utc), 'hr_zones_time': [datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 2, 17, 997000), datetime.time(0, 5, 41, 642000), datetime.time(0, 0)], 'unknown_5': [None, None, None, None, None, None, None, None], 'unknown_9': [None, None, None, None, None, None, None, None], 'hr_zones_timer_type': , 'record_num': 7, 'unknown_15': None, 'hr_zones': [92, 110, 128, 146, 165, 183], 'hr_zones_method': , 'max_heart_rate': 183.0, 'min_heart_rate': 0.0, 'lactate_threshhold_heart_rate': 0.0, 'unknown_14': None} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'activity_id': '11766891006', 'lap': 7, 'hr_zones_method': , 'hrz_1_time': datetime.time(0, 0), 'hrz_2_time': datetime.time(0, 0), 'hrz_3_time': datetime.time(0, 0), 'hrz_4_time': datetime.time(0, 2, 17, 997000), 'hrz_5_time': datetime.time(0, 5, 41, 642000), 'hrz_1_hr': 92, 'hrz_2_hr': 110, 'hrz_3_hr': 128, 'hrz_4_hr': 146, 'hrz_5_hr': 165} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing hr zone data for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'timestamp': datetime.datetime(2023, 8, 11, 19, 16, 21, tzinfo=datetime.timezone.utc), 'hr_zones_time': [datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0), datetime.time(0, 0, 29, 441000), datetime.time(0, 1, 48, 929000), datetime.time(0, 0)], 'unknown_5': [None, None, None, None, None, None, None, None], 'unknown_9': [None, None, None, None, None, None, None, None], 'hr_zones_timer_type': , 'record_num': 8, 'unknown_15': None, 'hr_zones': [92, 110, 128, 146, 165, 183], 'hr_zones_method': , 'max_heart_rate': 183.0, 'min_heart_rate': 0.0, 'lactate_threshhold_heart_rate': 0.0, 'unknown_14': None} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing lap hr zone data {'activity_id': '11766891006', 'lap': 8, 'hr_zones_method': , 'hrz_1_time': datetime.time(0, 0), 'hrz_2_time': datetime.time(0, 0), 'hrz_3_time': datetime.time(0, 0), 'hrz_4_time': datetime.time(0, 0, 29, 441000), 'hrz_5_time': datetime.time(0, 1, 48, 929000), 'hrz_1_hr': 92, 'hrz_2_hr': 110, 'hrz_3_hr': 128, 'hrz_4_hr': 146, 'hrz_5_hr': 165} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing hr zone data for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:writing session hr zone data {'timestamp': datetime.datetime(2023, 8, 11, 19, 16, 21, tzinfo=datetime.timezone.utc), 'hr_zones_time': [datetime.time(0, 0, 2, 199000), datetime.time(0, 0, 38, 230000), datetime.time(0, 1, 23, 1000), datetime.time(0, 0, 31, 7000), datetime.time(0, 39, 33, 325000), datetime.time(0, 13, 3, 573000), datetime.time(0, 0, 51, 3000)], 'unknown_5': [None, None, None, None, None, None, None, None], 'unknown_9': [None, None, None, None, None, None, None, None], 'hr_zones_timer_type': , 'record_num': 0, 'unknown_15': None, 'hr_zones': [92, 110, 128, 146, 165, 183], 'hr_zones_method': , 'max_heart_rate': 183.0, 'min_heart_rate': 0.0, 'lactate_threshhold_heart_rate': 0.0, 'unknown_14': None} for /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit -INFO:root:No entry handler _write_firstbeat_entry for known message type (1) from /Users/math/HealthData/FitFiles/Activities/11766891006_ACTIVITY.fit: DataMessage: : {'timestamp': datetime.datetime(2023, 8, 11, 19, 16, 21, tzinfo=datetime.timezone.utc), 'unknown_2': 13378940.0, 'unknown_3': 13378940.0, 'unknown_5': 971892.0, 'unknown_6': 52121585.0, 'metamax': 888611, 'position_21': None, 'position_24': None, 'unknown_26': 13369344.0, 'unknown_29': 888611.0, 'unknown_35': 3435296.0, 'unknown_36': None, 'unknown_48': None, 'recovery_time': datetime.time(16, 27), 'unknown_10': 53311.0, 'lactate_threshold_heart_rate': 0.0, 'lactate_threshold_speed': 0.0, 'unknown_16': 0.0, 'unknown_0': 161.0, 'max_heart_rate': 189.0, 'aerobic_training_effect': 4.8, 'unknown_8': 5.0, 'unknown_11': 1.0, 'unknown_12': 0.0, 'unknown_13': 0.0, 'unknown_17': -14.0, 'unknown_18': 0.0, 'unknown_19': 0.0, 'anaerobic_training_effect': 3.4, 'unknown_22': 13.0, 'unknown_23': 2.0, 'unknown_25': 0.0, 'unknown_34': 1.0} -INFO:/Users/math/micromamba/envs/iot_ingester/bin/garmindb_cli.py:___Analyzing Data___ -INFO:idbutils.db_object:Found time_col_name timestamp for table summary -INFO:idbutils.db_object:Found time_col_name timestamp for table summary -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/garmindb/analyze.py:Summary Tables Generation: -INFO:/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/garmindb/analyze.py:Generating table entries for 2023 diff --git a/assets/blog/running/half_thumbnail.svg b/assets/blog/running/half_thumbnail.svg new file mode 100644 index 0000000..516a550 --- /dev/null +++ b/assets/blog/running/half_thumbnail.svg @@ -0,0 +1,1272 @@ + + + + + + + + 2023-10-20T14:52:10.737897 + image/svg+xml + + + Matplotlib v3.7.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/blog/running/running.ipynb b/assets/blog/running/running.ipynb index 1ac8f57..4cebb79 100644 --- a/assets/blog/running/running.ipynb +++ b/assets/blog/running/running.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 2, + "execution_count": 50, "id": "0eda6302-263d-4cb4-bb63-a3757839d95c", "metadata": {}, "outputs": [ @@ -315,14 +315,13 @@ "[202 rows x 17 columns]" ] }, - "execution_count": 2, + "execution_count": 50, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Get runs from \n", - "\n", "import pandas as pd\n", "runs = pd.read_excel(\"runs.xlsx\", parse_dates = [\"Date\"])\n", "runs" @@ -330,13 +329,13 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 51, "id": "a64a0e41-8227-4145-a539-b7c448d422e5", "metadata": {}, "outputs": [ { "data": { - "image/png": "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", + "image/png": "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vZ6LFy+Wy6WmpdJ3R30MCgoKSioOSZLuc0uXLqV27drMmzfPVtaxY0fi4uIYPXp0mcdjtVpZvXo1W7duJcDDGSe1Qv2HOlKzbkOeeOZ5UjNzcdaorulAWFQuTmqqBrjTqqofTSr7UMHb1a4DY2nYsGEDgwYNYu/evQC8++67qFQqfH19adOmjd2+Mim4fxU7MbBarXz00UeEhobi5ubG2bNnAfjggw+YOXNmiQcoSdL94cyZM0RHR9tNuqMoisOasadOnUqnTp14//338XNzonaoJ1onJ0bPWMJDTwxG5+xMnQqe+LqV3AyFJe2/T4pnzJjB3Llz+fnnn4HCDoWvv/46eXl5PPPMM44IUSqHip0YjB8/njlz5vDJJ5/YLepRp04dZsyYUaLBSZJ0bzIajcyYMcNultShQ4cyefJk1q9f75CYjhw5YvuiA4VD+nx9fWnQoAEWi4WqAe48FOlPywg/Wkb40joqgCr+5fNbtcVi4b333iMyMpLU1FRb+XPPPcewYcPo37+/reytt95Cp9MxceJER4QqlUfFXVwhIiJCrFu3TgghhJubm4iJiRFCCHHixAnh5eV1Zys3OIhcREmSytaIESMEILp27eroUIQQQowbN04AYsiQIXblBoPBQREV33//fjVq1EgA4uuvv77lsRMmTBBarVacO3eutMKT7iLFbjG4ePGibXnQq1mtVkym4s3YtWXLFrp160ZISAiKorB06dL/Ji2MHTuWkJAQXFxcaNOmzTULNBkMBl555RX8/PzQ6/V0797dbqlSSZIcLz8/n6ysLNv2sGHDqFChAo888sg1zd1lISkpyS6etm3bolarMZlMdvHcyVLHZSUuLo5WrVpRvXp1W+dNgDFjxrBw4UIGDRp0yzpeffVVvL29+fDDD0sxUuluUezEoFatWmzduvWa8t9//50GDRoUq67c3Fzq1avH9OnTr/v+J598wtSpU5k+fTp79uwhKCiIRx99lOzsbNs+I0aMYMmSJSxYsIBt27aRk5ND165d7f4DkSTJcRYuXEjlypXtmqqrVatGbGwsI0aMKPOJccaMGUOlSpX44YcfbGUPPPAA8fHxzJkzp9xP1JOVlcXJkydt20FBQURHR5OUlMSBAwds5d26daN37964urresk43Nzfee+895syZY1e3dJ8qbhPD8uXLhaenp/j444+Fq6ur+PTT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/zZt2jBlyhS2bNmCoii0adPmhvtqNBr69+/PrFmzbGUXLlxg06ZN9O/f327fmJgYevToQWBgIG5ubjRp0oR169bZ7RMeHs748eMZNGgQnp6ettly33nnHSIjI3F1daVKlSp88MEHmEwmoLDlYty4cRw6dMj22GzOnDm2Oi9dusRjjz2Gq6sr1apVY/ny5Xbn3Lx5M02bNkWn0xEcHMz//d//2c230KZNG1599VVGjhyJj48PQUFBjB079obX5F5U7MTglVde4c0332TOnDns27ePw4cP270kqTywWCz89ttvxMfH28o6PfUiUe2fovtrE2xlVgEuThqSswwIIUjNzudsag4qChdFMpqtXEjPJz3XSI6hcMSBotaQn5XO6b2bORSfQXJWAVn5JjQBlTFT+IGuKIWtAgUmCy7/jhwwmARCWBECzP82GaiAQHcnaod6U6+CF62q+rF21Qoef/xxYmJibHH279+fZs2aXdO519XVtVSun3T3KigooFGjRqxYsYKjR4/ywgsv8PTTT9seN/3X4sWLef7552nRogWJiYksXrz4pvUPHjyYhQsXkpeXBxR+UHfs2JHAwEC7/XJycujcuTPr1q3jwIEDdOjQgW7duhEXF2e336effkrt2rXZt28fH3zwAQDu7u7MmTOH48eP88UXX/Djjz/y+eefA9CnTx/efPNNatWqRWJiIomJifTp08dW37hx4+jduzeHDx+mc+fOPPXUU1y+fBmAixcv0rlzZ5o0acKhQ4f49ttvmTlzJuPHj7eLae7cuej1enbt2sUnn3zChx9+aDcT6L2u2I8SHn/8caBw1rcrFEWxTZkqOx9K5cGLL77IzJkzeXHoS4z5eApmiyAoOJTaPV9C524/O2CewUw1fz0WIbCIws6FXi5qkrIMxP6zjpRtv+HT+hncolpiFaCq2opOIz4hxasO+WYrWpWC1Sr+XdTofw8JxL//U/DvokZWoMBU+P/Kvy+VCip4uxDq5YJep0GlUvj2229Zs2YNDRo04P333wcKOw/u3LmzLC6dVI6tWLECNzf7+/e/f3NDQ0N56623bNuvvPIKq1ev5vfff7/u8FQfHx9cXV1xcnKyzXFxM/Xr1yciIoI//viDp59+mjlz5jB16lTOnj1rt1+9evWoV6+ebXv8+PEsWbKE5cuXM3z4cFv5ww8/bBcvYLvvobBV4c03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o0cPAgMDcXNzo0mTJqxbt84ulvDwcCZOnMhzzz2Hu7s7lSpV4ocffrDb58KFC/Tt2xcfHx/0ej2NGzdm165dtvf//PNPGjVqhLOzM1WqVGHcuHF2Cc5/7d+/nzNnztClS5cb7mO1Wnn++eeJjIzk/Pnztuvx/fff07VrV1xdXalRowb//PMPZ86coU2bNuj1elq0aEFMTIxdXd27d2fp0qXk5+ff8HySJBWdTAwkqQw8/PDD1KtXj8WLF1/3/S+//JLly5fz22+/cfLkSX7++WdbArBnzx4AZs+eTWJiom07JyeHzp07s27dOg4cOECHDh3o1q0bcXFxdnVPmTKFxo0bc+DAAYYNG8ZLL71EdHS0rY7WrVuTkJDA8uXLOXToECNHjrQ99vj7778ZMGAAr776KsePH+f7779nzpw5TJgw4Ya/65YtW4iMjMTDw+O67xuNRnr37s3evXvZtm0bYWFhtvc++ugjnnnmGQ4ePEj16tXp378/L774Iu+++y579+4FYPjw4Xb1NW7cGJPJxO7du28YkyRJxeDo5R0l6V4ycOBA0aNHj+u+16dPH1GjRg3bNiCWLFkihBDilVdeEQ8//LCwWq3XPfbqfW+mZs2a4quvvrJth4WFiQEDBti2rVarCAgIEN9++60QQojvv/9euLu7i7S0tOvW9+CDD4qJEyfalf30008iODj4hjG89tpr4uGHH7Yri42NFYDYunWraNeunWjVqpXIyMi45nd8//33bdv//POPAMTMmTNtZfPnzxfOzs7XnNPb21vMmTPnhjFJklR0ssVAksqIEAJFUa773qBBgzh48CBRUVG8+uqrrFmz5pb15ebmMnLkSGrWrImXlxdubm5ER0df02JQt25d28+KohAUFERKSgoABw8epEGDBvj4+Fz3HPv27ePDDz/Ezc3N9nr++edJTEwkLy/vusfk5+fj7Ox83ff69etHTk4Oa9aswdPT85r3r441MDAQgDp16tiVFRQUkJWVZXeci4vLDeORJKl4ZGIgSWXkxIkTVK5c+brvNWzYkNjYWD766CPy8/Pp3bs3TzzxxE3re/vtt1m0aBETJkxg69atHDx4kDp16mA0Gu3202q1dtuKotgeFbi4uNz0HFarlXHjxnHw4EHb68iRI5w+ffqGH/5+fn6kp6df973OnTtz+PBhdu7ced33r471ShJ1vbL/jvC4fPky/v7+N/1dJEkqGo2jA5Ck+8GGDRs4cuQIr7/++g338fDwoE+fPvTp04cnnniCjh07cvnyZXx8fNBqtVgsFrv9t27dyqBBg3jssceAwv4C586dK1ZcdevWZcaMGbbz/FfDhg05efIkVatWLXKdDRo04Ntvv71uC8lLL71E7dq16d69OytXrqR169bFivd6YmJiKCgooEGDBndclyRJMjGQpBJnMBhISkrCYrGQnJzM6tWrmTRpEl27duWZZ5657jGff/45wcHB1K9fH5VKxe+//05QUBBeXl5A4eiC9evX06pVK3Q6Hd7e3lStWpXFixfTrVs3FEXhgw8+uOab9K3069ePiRMn0rNnTyZNmkRwcDAHDhwgJCSEFi1aMHr0aLp27UrFihV58sknUalUHD58mCNHjjB+/Pjr1tm2bVtyc3M5duwYtWvXvub9V155BYvFQteuXVm1ahUPPPBAsWL+r61bt1KlShUiIiLuqB5JkgrJRwmSVMJWr15NcHAw4eHhdOzYkY0bN/Lll1+ybNky1Gr1dY9xc3Nj8uTJNG7cmCZNmnDu3Dn++usvVKrC/0SnTJnC2rVrqVixou2b8eeff463tzctW7akW7dudOjQgYYNGxYrVicnJ9asWUNAQACdO3emTp06fPzxx7Y4O3TowIoVK1i7di1NmjShefPmTJ061W4kwX/5+vrSq1cvfvnllxvuM2LECMaNG0fnzp3ZsWNHsWL+r/nz5/P888/fUR2SJP2PIoQQjg5CkqR7y5EjR2jXrh1nzpzB3d291M5z9OhRHnnkEU6dOnXdzoySJBWfbDGQJKnE1alTh08++aTYfR6KKyEhgXnz5smkQJJKkGwxkCRJkiTJRrYYSJIkSZJkIxMDSZIkSZJsZGIgSZIkSZKNTAwkSZIkSbKRiYEkSZIkSTYyMZAkSZIkyUYmBpIkSZIk2cjEQJIkSZIkG5kYSJIkSZJk8/9Q/2XvF9vrQgAAAABJRU5ErkJggg==", "text/plain": [ "
" ] @@ -367,7 +366,8 @@ " ax.plot(dists, mins_per_km, color = \"black\", linestyle = \"dotted\", label = f\"{i} min/km\")\n", " ax.text(25.5, 25*i, f\"{i} min/km\", va = \"center\")\n", "\n", - "ax.annotate(\"Half Marathon!\", (x[0], y[0]-1), (20, 50), arrowprops = dict(arrowstyle = \"->\"))\n", + "i = runs[\"Distance (m)\"].argmax()\n", + "ax.annotate(\"Half Marathon!\", (x[i], y[i]-1), (20, 50), arrowprops = dict(arrowstyle = \"->\"))\n", "\n", "ax.scatter(x, y, s=20, alpha = 0.6*fade_out_by_date(runs[\"Date\"]))\n", "ax.spines[['right', 'top']].set_visible(False)\n", @@ -377,7 +377,48 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 68, + "id": "e3a8767d-9534-4e1e-954e-0fc6add73f12", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAL4AAAC+CAYAAACLdLWdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA4GUlEQVR4nO2dd3wU1fr/37Ob3exuNp1UCKFJCRB6BymCFKWjSBFBwIsFhcsVK+0r6BVRUBGBiwL6u4BKExSQ3kFECIROICEJhPS6yZbsnt8fuayGBMgmGwhk3q/XvGBmzjnzzOQzZ8+c85znSEIIgYxMJUPxoA2QkXkQyMKXqZTIwpeplMjCl6mUyMKXqZTIwpeplMjCl6mUyMKXqZRUWOELIcjKykIeX5MpDyqs8LOzs/H09CQ7O/tBmyLzCFJhhS8jU57IwpeplJRJ+CaTyVl2yMjcVxwS/m+//cbo0aOpXbs2KpUKnU6Hu7s7nTt3Zs6cOdy4caO87JSRcSpSSdySN27cyFtvvUVmZiZ9+vShdevWVK1aFa1WS1paGmfOnOHAgQMcOXKE0aNH88EHH+Dn51cmw7KysvD09CQzMxMPD48ylSUjczslEn7r1q2ZNm0aTz31FArFnX8krl+/zueff05AQABTpkwpk2Gy8GVu59q1ayQnJ9OyZcsyl1Ui4T8IZOHL/J3Y2Fgef/xxMjIy2L17N82bNy9TeWXu1bFarURERJCenl7WomRk7oiPjw8hISH4+/sTEBBQ5vIcFv6kSZP45ptvgALRd+7cmebNmxMSEsLevXvLbJCMTHHo9Xq2bNnCvn37qFq1apnLc1j4a9eupUmTJgBs3ryZ6OhoLly4wKRJk3jvvffKbJCMzC0uX77M2rVr7fvu7u4EBQU5pWyHhZ+SkkJgYCAAW7Zs4ZlnnqFu3bqMHTuWyMhIpxglI3Pjxg26dOnC0KFD2bx5s9PLd1j4AQEBnDt3DqvVyrZt2+jevTsAubm5KJVKpxsoUzkJDAykd+/ehIWF0aZNG6eX7+JohjFjxvDss88SFBSEJEn06NEDgN9//5369es73UCZyolCoWDp0qVkZWXh5eXl/PIdzTBz5kyWLVvGSy+9xKFDh3B1dQVAqVTy9ttvO93A+0WXLl2YNGmSfT83N5fBgwfj4eGBJElkZGQ8MNvKgiRJbNy48UGbUSLOnDnDnDlz7K7oCoWiXEQPgKigZGZmCkBkZmbeMc0LL7wg+vfvX+T4nj17BCDS09NLfL3OnTuLN954w76/aNEi4efnJyIjI0VCQoKw2WxF8ixfvlwAon79+kXO/fDDDwIQoaGhJbahLMyYMUM0adKkyHFAbNiwodyvHx0dLQBx8uTJUuVPS0sTfn5+AhALFy50rnHF4HBTB2DXrl3s2rWLpKQkbDZboXPffvtt2d7ECsKVK1do0KABjRo1ums6Nzc3kpKSOHLkCO3atbMf//bbb6levXqZ7TCbzajV6jKXU9Hx9vZm2rRpfP/99wwfPrzcr+dwU2fWrFk8+eST7Nq1i5SUFNLT0wttFZHU1FSGDRtGtWrV0Ol0NG7cmNWrV98xfZcuXfj000/Zv38/kiTRpUuXO6Z1cXFh+PDhhV74+Ph49u7dW+QPeOXKFfr3709AQAB6vZ5WrVqxc+fOQmlq1KjB7NmzGT16NJ6enowfPx6At956i7p166LT6ahVqxbTpk3DYrEAsGLFCmbNmsWpU6eQJAlJklixYoW9zJSUFAYOHIhOp+Oxxx5j06ZNha65b98+WrdujaurK0FBQbz99tvk5+cXeh6vv/46U6dOxcfHh8DAQGbOnHnHZ1JaJk6cyMGDB/H29nZ62UVw9CciMDBQfPfdd+Xx61MIZzZ14uPjxSeffCJOnjwprly5Ir744guhVCrF0aNH7Xn+3tRJTU0V48ePF+3atRMJCQkiNTW12OsvX75ceHp6ipMnTwp3d3dhMBiEEEJ88MEHon///mL+/PmFmjoRERFi8eLF4vTp0+LSpUvivffeExqNRly7ds2eJjQ0VHh4eIhPPvlEXL58WVy+fNle5qFDh0R0dLTYtGmTCAgIEB9//LEQQojc3FwxZcoU0bBhQ5GQkCASEhJEbm6uEKKgqVOtWjWxatUqcfnyZfH6668LvV5vv6f4+Hih0+nEK6+8Is6fPy82bNggqlSpImbMmFHo2Xh4eIiZM2eKS5cuiZUrVwpJksT27dvtaUrT1Pnjjz/E888/L0wmU4nzOAuHhe/j4yOioqLKw5ZClFT4SqVSuLm5Fdo0Gs092/h9+vQRU6ZMse/f3sZ/4403ROfOne9q4y3hCyFE06ZNxcqVK4XNZhO1a9cWP//8cxHhF0dYWJj48ssv7fuhoaFiwIABd80jhBBz584VLVq0sO/frY3//vvv2/dzcnKEJEli69atQggh3n33XVGvXr1C3zBfffWV0Ov1wmq1CiEKnk3Hjh0LlduqVSvx1ltv2fevXbsmAHHq1Kl72i5EwcsaFBRUxL77hcNNnXHjxrFq1Son/uaUja5duxIREVFoW7ZsWaE0VquVOXPmEB4ejq+vL3q9nu3btxMbG+s0O1588UWWL1/Ovn37yMnJoU+fPkXSGAwGpk6dSlhYGF5eXuj1ei5cuFDEjuK8D9euXUvHjh0JDAxEr9czbdq0EtsfHh5u/7+bmxvu7u4kJSUBcP78edq1a4ckSfY0HTp0ICcnh/j4+GLLAAgKCrKXAQUuBX//915otVpWrlxJ9+7dmTp1aonyOBOHP26NRiNLly5l586dhIeHo1KpCp3/7LPPnGZcSXBzc6NOnTqFjv39Dwbw6aefMn/+fBYsWEDjxo1xc3Nj0qRJmM1mp9kxYsQIpk6dysyZMxk1ahQuLkUf7Ztvvslvv/3GvHnzqFOnDlqtliFDhhSxw83NrdD+0aNHee6555g1axY9e/bE09OTNWvW8Omnn5bIttv/RpIk2TslhBCFRH/r2K10JSkDwNPTE7i38P9+vR49etC9e/ci178fOCz806dP07RpU6Cg3/XvPIgbKAkHDhygf//+jBw5EgCbzcbly5dp0KCB067h4+NDv379+PHHH1m8ePEd7Rg9ejQDBw4EICcnh5iYmHuWfejQIUJDQwv5Ql27dq1QGrVajdVqddjusLAw1q1bV0iQhw8fxt3d3SFnMKVSec9QMIcOHeJf//oXP//8M/7+/sCD04zDwt+zZ0952FGu1KlTh3Xr1nH48GG8vb357LPPuHnzplOFDwW9K4sWLcLX1/eOdqxfv56+ffsiSRLTpk0r0h18p3yxsbGsWbOGVq1a8euvv7Jhw4ZCaWrUqEF0dDQRERFUq1YNd3d3++Di3XjllVdYsGABEydO5LXXXuPixYvMmDGDf/7zn3eddHQ7169f54knnmDjxo3FjuBbrVbGjRvHhQsXmDlzJosWLSpx2eVBhYmyYDKZyMrKKrQ5i2nTptG8eXN69uxJly5dCAwMZMCAAU4r/xZarfaOogeYP38+3t7etG/fnr59+9KzZ88STajo378/kydP5rXXXqNp06YcPnyYadOmFUozePBgevXqRdeuXfHz87trd+3fqVq1Klu2bOHYsWM0adKECRMmMHbsWN5///0S5b+FxWLh4sWLGI3GYs8rlUo2bdrEyJEjmTdvnkNl/539+/cXacqWhhLNwBo0aBArVqzAw8ODQYMG3TXt+vXrS2XIzJkzmTVrVpHj8gyshxuTyVSiX56SsGnTJgYPHkyjRo04cOBAiT+ki6NENb6np6e9Lebp6XnXrbS88847ZGZm2re4uLhSlyVTMdi5cyd16tTh1KlTTimvTZs2BAcHU69evTJ7AstzbmXKBSEE3bp1Y+/evYwaNYqVK1eWupy/fwAnJCQQEBDg0PdHcVSYNr7Mo4UkSWzYsIG33nqLpUuXlqqMGzdu0KFDh0JTWoOCgsoseihFjZ+amsr06dPZs2dPsU5qaWlpZTYK5Br/YSU5ObnMMZVuMXHiRBYuXEjdunU5d+6cUyc6OdydOXLkSK5cucLYsWMJCAiosH33MvefzZs3M2zYML7//nv7WEVZmDt3LpmZmcycOdP5s/sc9XHQ6/UiIiLCSR4Td6YkvjoyJSM3N1fMnj273P9uY8aMEYAYPnx4qfLbbDaxf/9+J1tVPA4Lv2XLluLIkSPlYUshZOE7j6SkJFGjRg0BiG7duonNmzfbHdCcicViEV999ZWwWCwO57XZbOKll14SgPj222+dbtvtOPyVsGjRIt577z327dtHampquQ06yTgPPz8/Ll26xJo1azAYDPTt25cGDRqwaNEiDAZDmco+d+6c/f8uLi688sorxfop3QtJkuxN5/uyGIijb8qlS5dEixYthEKhKLRJkiQUCoXT3ki5xi8/Dh8+LIYMGSIUCoXw9vYWb7/9toiPj3e4nDVr1gilUik++OADp9hltVrFsWPHnFLWvXD41RwxYgRqtZpVq1bJH7cPKe3ateOnn34iJiaGL7/8kkWLFjFv3jyeffZZJk+eXOKgrHFxcVitVqKioor18rwX+/fv5/vvv2fJkiUoFAoUCgWtWrUqzS05jqNvilarFRcuXCiHd7Awco1//8jMzBQLFiwQNWvWFIDo2LGjWL9+vcjPz79n3l9++aVE6W4nNTVVuLu7C0B88cUXpTG7TDgs/E6dOokdO3aUhy2FkIV//8nPzxfr1q0THTt2FICoVauWWLBggcjKyrKn2b17tzCbzU653vfffy+GDBlin7J5P3FY+D/++KMICwsTy5cvF8ePHxenTp0qtDkLWfgPlmPHjonhw4cLFxcX4eHhIaZMmSI++eQTIUmSeOaZZ4TFYhHXr18XnTp1KnELwGAwiMTExELHigvbcj9wWPiSJBXZ5I/bR5e4uDjx1ltvCS8vL/vfedCgQcJmswmDwSAaNGgg6tatK9LS0u5aTkJCgmjVqpVo0aLFA6nhb8dhl4XbZ/7cTmhoaOk+Nm5DdlmoWBgMBlauXMnHH39MbGwsbdu2ZfLkyYSHh9OhQwdatGjBli1bCnVlZuZayDHn4+um5kbcNdq0aYPNZmPPnj1F5vDeb2TvTJm7smbNGp588kl8fHyAgmmbv/76K/Pnz2fPnj1Ur16d3r17s2zZMl577TUWLFhAttHCT8fjOXo1FVO+DR83Nb0aBeKRFYOfX5Uic6QfBCUS/u1Rwu6GwWAgJiaGhg0blskwWfgPnmXLljF+/HiaNWvGgQMHikyCj4iIYMGCBaxatQpJkjCbzcyZMwdtqyEcuJzMzSMbCQ1rjsq/FharYFynmjzRoOyrmTiDEo3cjho1ih49evDjjz+Sk5NTbJpz587x7rvvUqdOHU6cOOFUI2UeDO3bt8fPz4/u3buj0+nsx/ft20fjxo3p378/mzdvtose4L333uP41SRS/9jMkf83j1/nTcJXnY9SIfHb2ZtYrPeeY3wnrFYrH374Ifv27SvzvZVoAOvcuXMsWbKE6dOnM2LECOrWrUtwcDAajYb09HQuXLiAwWBg0KBB7Nix457xJmUeDsLCwjh16hSBgYGFBqeCgoLo2bMnWq0WvV5v39RqNTEZFv60KWje7WnO7VpLeLcBaNzc8VTmk5pjJivPgq++dFMRly1bxnvvvUf16tU5e/ZsmaYeOtzGP3HiBAcOHCAmJoa8vDyqVKlCs2bN6Nq1q70d6Azkps6DYdGiRXTp0oWwsDCH8+bk5BCTaeXDLefx93BFLdlwURUEvL2RkYeHRsXcIeFoVKVzMbZYLPTq1YtRo0YxatSoMnkNyB+3MnaWL1/Oiy++SEBAAGfOnKFKlSolznvo0CEGDx7M14sXc0rxGJHXM6nmrUWrUpKeaybNYGZY6+oMal6txGWmp6ezYsUKJk2aZBe5KIVrRHGUKky4zKNJv379aNKkCYMGDXJI9AA//PADiYmJfL5gAas3buWbg9FcTMzGaLHioVHxVOMgngov+cJtZrOZ1q1bExUVhV6vt0eNdppv2AMaP7gn8gDWg+FWlGVHMZvNYvbs2SInJ0cIIYTVahOXbmaJ4zFpIiEjr1RlfvLJJ6JOnTri999/L1X+uyE3dSoxQghmz55NixYtigS5tdoEKTkmckz5uCgkquhdcXP9q4GQl5fHqlWrePHFF51WC58/fx69Xk9ISAhQMGaQl5dXpBvVGchNnUrMjz/+yPTp03F1deXChQvUqFEDAFO+ldPxmcSn52KzCQTgoVERXs2LQE8NeSYznbp0489jR7kYe5M3//UvqujVZXoB1q1bx8iRI2nbti27du2yuymXh+ihjMI3Go1oNBpn2SJznxk0aBCDBw+mffv2dtEDxKXmEpNiIMhTg9qlIBhscraJM9cz0Kl9OJeQTcMOT3Lhwnm0wY9xKCqFhsEePBbgXmpbmjRpglKpxNXVlezs7DIFJysJDjd1bDYbc+bMYfHixSQmJnLp0iX70jQ1atRg7NixTjFMburcH2w2W6E4NUII9l5MJiPPgs1mI8eUj6uLEh83FZm5Fqr56IhLyyXQU0NORio+VfzJzLNgslh5vK4fXrqSr9cVHx9PtWp/9fKcO3eO+vXrOyVuzr1w+AqzZ89mxYoVzJ07t9CiZI0bNy6yIINMxUIIwZtvvlkoaOvtIhMCsoxmLiVmcTExh+RsM9dSc1m86CtmvjqC+JRsNColahclPlUKQn17alXkWaykGUq23oDJZGLChAnUq1ePixcv2o+HhYXdF9FDKYT/3XffsXTpUkaMGFEo1kl4eDgXLlxwqnEyzmXnzp3MmzePN998847xLBUKCaPFSkq2iQB3Nb5ualTGdH5dPp9zfxzk0I5NUMZvWZVKxZUrV8jNzWXHjh1lK6yUONzGv379erHedTabzb4Kn0zFpEePHsycOZOAgACaNGlSbBqjxYpSUhLooSE524xGpcSm9Wb4W5+SEh/Fc8NGEJOWS77VhouyoN7MMlrQqpR436WZc2vRCqVSiUKhYOXKlZw/f54nnnjC+TdaAhwWfsOGDTlw4EARv/uffvqJZs2aOc0wGecghMBms9l/nWfMmHHPPDpXJe6WdPIs+Wj1waiVKgb064sp30pVby02AfHpeSiVEjabwEUhERbsgbdb8cKPiYnh+eefp0+fPrzzzjsABAcHExwc7LwbdRCHhT9jxgyef/55rl+/js1mY/369Vy8eJHvvvuOX375pTxslCklNpuNV199lZycHFasWFGiMHwalZL02Au8OeoZvLy8Wbp2Gx6eHiRk5uHjpibAQ0uAh5Zq3kZSDSZUSgX+7q74ud/Z8Wzfvn0cPHiQc+fO8eqrr1aMzorSjHpt27ZNPP7448LNzU1otVrRoUMH8dtvvzlpTK0AeeS27Bw/flwolUohSZJDofkuXb0m/AKDRY26DcXXvx4Tq3+/Jn49fUPcyCjdqK7NZhOzZs0SV65cKVX+8kAeuX3EWbt2LUaj0b7wXUmJPHsepd4H4aLBVaXA30ODh0Z174zA3r17+eyzz/jpp5+cthqK0ynLW5OdnS0yMzMLbc5CrvFLR35+vsjOznYoT15enhg9erRTArYaDAbh7+8vAPHhhx+WubzywmHhX716VfTp00fodDo5hGAFIz8/Xzz//POibdu2Dj236dOnC0AEBgY6JQLCxo0bxbhx4xx+Ae8nDjd12rdvD8Abb7xRbAjBzp07l+qXx2QyYTKZ7PtZWVmEhITITR0HuHr1Kq1atSIzM5OtW7fSo0ePEuXLzc1l4MCBTJ061eHuRSEEixYtolWrVrRu3bo0Zj8YHH1T3NzcyiWE4IwZMwRQZJNrfMc4ceKEWL9+/T3TRUVFOeV6c+fOFYCoU6eO3SX5YcBh4Xfp0qVcQggajcZC3wpxcXGy8EuA2WwWsbGxDuVZtGiRUCqVYuXKlWW+flpamnjsscfE559/Xi4x98sLh/vxly1bxoQJE7h+/TqNGjVCpSr8pV/aQEGurq4VtweggmKxWBg2bBhHjx5l7969JY5XEx8fj9Vq5eDBg4waNcqhaxoMBrZt28bgwYMB8Pb25uzZs0V0UOFx9E05cuSIqFmzphxCsAKQkpIiwsLChFqtFtu2bStxPqvVKtauXStSso0iOjlHpOWYSpQvKytL1K1bVwD3JXBweeJwjf/iiy/SrFkzVq9eLcfHf8D4+vqye/duzpw5c9eP0mvXrrFkyRJmz56NQqHAbBUoa7Xlqz1R5Jqt6NRKmlb34smwwLtGQHB3d6dbt24YDIZSrXpSkXC4V8fNzY1Tp06Vexg4eQCreEwmE5GRkSVevMFoNFK3bl3i4uL48MMPeeedd/g54jr7LiUT4K7BXeNCVp6F5BwTXev783R4Yf+ZmJgYfH19cXcvmGSSm5uL0Wh0aiiZB4HDbsndunVz2hLtMo5hNBoZNGgQnTp1Yvfu3SXKo9FomD17Nk2aNGHEiBGkG8ycisvAX++Kj5salVKBr96VKnpXIuIyyMz7y8N2w4YNNGnShDfeeMN+TKfTPfSih1I4qfXt25fJkycTGRlJ48aNi3zU9OvXz2nGyRRGkiT7drcfaiEE2dnZ9l/KUaNGMWzYMFQqFddSDeRZrPi6Fe5I0Lu6cDPTSFaeBU9twd/U19eX7OxsLl68SF5eHlqttvxu7j7jcFPnbjNkJEmy+12XFbmpUzxGo5GzZ8/SokWLYs+bTCbGjx/PhQsX2Lt3b6GYlwAZuWYW7olCKRVETrhFUrYRSZJ4oaU/Vf197cf37NlDp06dHvo2/e043NSx2Wx33Jwlepm/yM3NZcOGDfZ9jUZzR9EDJCQksGXLFk6cOMHBgweLnPfSqWka4kVKjonkbBNGi5WkLCPJmQYi1n1F62bhpKSk2NN37dr1kRM9lEL4MvcPk8nE008/zaBBg1i6dGmJ8tSoUYMNGzawdetWnnzyycLl5VuJSsrBW6eijp8egzmfm1lGJIXEE/WqEHlkNzdu3GDdunXlcTsVihK9yl988QUvvfQSGo2GL7744q5pX3/9dacYJgNqtZqWLVty/Pjxu0ag3rlzJ/7+/vbBw06dOhVJk2vO52BUCrGpBiRJwkWpoKavjnpBHjQN8cJdoyJk1SpiYmIYMGBAed1ShaFEbfyaNWty/PhxfH19qVmz5p0LkySuXr3qFMPkNn4BQgiuXbtWKO7N39m8eTMDBw4kODiYP/74g4CA4hdeOBWXzu/RaVT30aFSKkhLTuLDt1/n8aeG8MGUl0rsa/+oUKIaPzo6mv3799O+fXuio6PL26ZKTVZWFkuWLGHKlCkoFAokSSpW9DmmfIQQdOjQgTp16tCqVSu8vLyKLVMIQXRKLh4aFar/TRDfum4VEUf2cvXiWf4xaihhIY4FiX3YKfFXS9euXUlISMDf37887anU2Gw2nnrqKQ4ePEhiYmKh+De3SDeY+TMmlZvZJoSAQE8NG7ftol5o8F1H0QsCAf7F0LGvciMuhnb9R6F2rXzR8Er8cetgr6dMKVAoFEyYMIEqVaowfPjwIudzzfms23+KFwf2IPLIHrRqJVeScjidbCs08HQ7kiSRG3+JpR9PI/9/S/G4qFSMfXcudRuE4VfKFUoeZkrcj69QKEhMTMTPz6+8bQIqbxvfZhOkpqeTaFRw7kY2IGgQ5EnDYA8uJ+Xw2qR/svOHZQRXr8nSn/ehdHHhSrKB9rV8aRbqXWyZ6enpVK9enZycHEZN/Yiu/YaSbxOoXRS0qO5Nw6rlG6eyIuJQB+20adOKDIjczmeffVYmgyobaWlpvP/++8ydOxetzo08cz6/XMhg+9lEci35SIBO5UKX+v6EV/VkwLgpaLAweMyrGCwgLPm4uihIvUv4Pm9vb/7v//6Pg4cO88roYZhddLi6KKjmrSPIs/I1c8BB4UdGRhaKl3k7sqemYwghGDJkCHv27CE5OZnv/ruaszey2H4uCTe1C9W8ddhsgvN/7GeXrSVuahdQujB00kwuJ+aQeSUFAZjzbfi5qwuVu2rVKjp27GgP/DVp0qRCS+pUdhwS/oYNG+SPWycghCAj14Ip38Y7Mz4gPn4M06bPwCoEZ65nYrRYCfHWIYRg++KZnNn7M02GvE586AR89a7su5iMykWJj05FttGCKd9KTIqBlBwTVfSuzJkzh2nTpvH444+ze/dulEqlLPjbKPHHrfzgnIPRYiUiLoPfo1M5HpNGvk8tvt96kFqP1SfdYOFUXDrX03I5GZtGTKoBfWAokkKJ0kUFSFTz0gISKqVEtikfN42KdrWrkG+Dq8kFaxAPGzYMLy8vunfv/kDvtSJT4hpf7tVxDsfOXeWfr03g3Tnz8A+qRnx6Ln9ey2HH+WROxqYRlZRDjslGRp6ZG+l5+DTpS+/6rXD1q0mjqp64qpQ0CPbAV68GAXqNC1gtnIuIILNaQYSL2rVrEx0dfcd+fRkHhL98+fJyX6XiUSfPbOXtyRP58+Bupk+ewHMzv+XCzWxuZhm5kZmHyWzDHH+KjBPb8H96CsLFheRsE2ZdAG19tHR8rArRKQaEEHhqVSgkiaz0NKZPeI646Cja/7IbwgIBZNHfgxIL/4UXXihPOyoFpnwrwybNIjMri8fHvkd0mgGDqaBXxmKxYTUZuLH2Q2wmA7rguvi0G4QCBdV93ejdMAhPrYqavm74u2uISTHg76FB0uhxdfdGo9XhYsp80Lf40CDHzrwP2Gw2jPk2dp1PZGtkAsk5JlKzzVhsNlQKBTcycjH+z6M79/Lv5F44QPUBk3FRuaJVK+hc15+nwoPoXLegY+FMVCxRmZCYY0Eg0FiyaVLNk2b1az3Au3y4ePQcrSsY8fHx9OvXjx5j3+Kk0Z/EbCO55oLRU5sNLGYjNmMOLh4FvjK6x9qge6wN+YAt34ZGpaCKXk2wZ8Hsp19//ZUxY8YwceJEXvvnW0DBUjwKhdz54AiyP3458+60GZw8eZKFs9/lWkoORrMNSYDFBqbsFBJXvUXSj9OxmQyF8pmtYPtfWz68mhfVfQsGDtPS0khOTubnn3/G3VWBt5taFn0pkGv8ciTNYGbMlBmciEnFHD4AF6UCqwCT7VYKCashA2HLJz8zEbV/4aaKv15Nj7AAOtTyxtWlIOzHrXDfzz777CM5M+p+4XAb39vbu9g+fUmS0Gg01KlTh9GjRzNmzJgyGfYwt/Fzc3PRarWcT8gi1WDmmwNX+eNqKkarwHrb0zYnRaNw1eHiWeBHL/1v06kVNAlxx+vSNo7u3sqhQ4fkNYWdiMNVxvTp05kzZw69e/emdevWCCH4448/2LZtG6+++irR0dG8/PLL5OfnM378+PKwuUKSZjBzMCqFIyfPsfTt0Qx8cSIu9buRkJVHfHoeufkCmxBkHduAa9V6aKo1BEDtX3hijwAUUsHc2Ma+Kj5buZTk5GR++OEHuWfNiTgs/IMHDzJ79mwmTJhQ6PiSJUvYvn0769atIzw8nC+++KLSCD8py8hnOy5xKTGbi1vXkJZ4ne+WfkX1F+uhVKowiwJB55zaRsbeb1FoPQge9zVKXdFxEQVQ1VPD4JbVeKF9TcJXrCA5OdnhGJcyd8fhpo5eryciIqJIJLWoqCiaNm1KTk4OV65cITw8HIPBcIdS7s3D1NRZcSiaTaduEOqrw2DMZ9N3i1A36FawlM7f0tnMRhLXvItbw654tOhbpByrMQfbwWVMfn0iYwb1xLcS+snfLxzu1fHx8WHz5s1Fjm/evNkeYctgMNhDzj3qCCHYF3EJjYsCk8VGusGEe5shqP4neqsxx55WodYQOPKTYkUPkHPov9z4cyfLPpyKl1b+cC1PHH6606ZN4+WXX2bPnj20bt0aSZI4duwYW7ZsYfHixQDs2LGj1CujPAzkma1cz8hFIUn8cTKSVe8MxzOsE1V7/YNckw3L/6p5Y2wkyRs+xLv7S+gbdgVAUtw5KGvd3mNQ6bL5dO6/S7Q0p0zpcVj448ePJywsjIULF7J+/XqEENSvX599+/bZlwmaMmWK0w2tKJyITWfnuUSSs40k55j4Y8dmzNlpZFw9hSYzB4XrXxN18mJOYjNmk3PqN9zCuhTpDbOkxJEXfQKPVv1RAB5eXqz5dZvcxLkPlOr3tEOHDnTo0MHZtlR4olMMbDh5HatVEOylJSoxG12DLoQMkRBBDQuJHsCr00iUOk/0TXoVEX1+dgoJKych8k1o/avhUbsF7q5qdGq5iXM/KNVTttlsREVFkZSUhM1mK3Tu8ccfL5UhxS3+VpEw59vYdzGJ5GwT+rxEjtzQcTkpD5PFhqJ2wS+dzWwk5/RvuLfoiyQpkCQFHi37F1uei3sV9OHdyU9PQB9YBw+NikbVPFAp5VHY+4HDwj969CjDhw/n2rVrRXz0yxI09qOPPmLWrFmlylvenLuRxaGoFHZfSOTKhTOcXPIvtEG18en/PqgKmiVC2Ej64X1MNy5gM+bg1XFEkXLyrhxHWy0MyVWHUoKqPf+BpFTg5qoixFdH9wYBuChlL5L7gcNPecKECbRs2ZIzZ86QlpZGenq6fUtLSyu1Ie+88w6ZmZn2LS4urtRlOZOYFAO/Rt4gKduIh1ZFakYmVosZU64Bm/WvkB6SpEDf5EkUWg80NZoWKkMCMg+uImntTMThb6gX4EYVd1d0Gld0ahf83TW80L4mHercnwgWMqWo8S9fvszatWudviJKRV387XR8BgZTPl5aFfFpBqz+DQh4bg4q32ooXN0QNqu9p0Yf/iTauu1RavSFyvB0VeBavyWZR3+gad1QBraqjsFsJddsJc1gpnuDAJ4IKz70n0z54LDw27RpQ1RUVLkvBVQRSDeY2X8pmaO/HyPVpsHkWhA33jW4HkIIso6tJ/fSEfyHzkbxvybPLdELmxVrxk1q1aqBp9YVfVBrhnb5jeCQUDx1anz0Eik5ZkKruNG0uteDusVKi8PCnzhxIlOmTOHmzZvFrohS2uU+KxoJmXn88Ecc2/cd4uw3U1HovAgY/m9c9AWDdLbcDDKP/IjNmEPu+f3ow/9aRdxqSCd140dYMxOoM2UZXlU86Nc0mB4NAom8kcn19DysNkE1Hy2Nq3rK3ZcPAIeFf2t90xdffNF+7NbSNM5cEeVBYrHa2HXuJhtPxpGncENy1aN080ah/mspHKWbN34D38WcFI1b48LRDNQaN4TJgM1swsucxD86d6JtLV9clAo6PeZHjikfmxDo1S6yL/0DwmFfnWvXrt31/K0ARmXlQfrq7LuYxIxNZ4hJzQMgPysJhcYdqyEdkW9B7Vf0Hm1mIwq1Bo1SwtNNja8lEbVay4juLXmmVfX7ar/MvXG4xneWsCsqlxOzmfPNOi7dzEMdXA8AFw9/TDejSPphGpJaS9CoT1G6/RWn0hh7mpRf5uPd5QVcw7vg7upCSLW6uLgoCPK6e8hFmQdDiYS/adMmevfujUqlYtOmTXdN+7CtephttHA+IZs0gxmBYNm67exc8E9QKAkc8TFqvxoAuHgGoNC6o9C4FRm/MMaewZqdjOHPnwlt1Z26gXoaBHpgMFnxc5fb7xWREjV1FAoFN2/exN/f/5Fa9TAxy8iaY7HEpBjItVi5nJhNXGIqcWtmIrmo8Rv0vr23BiA/MwmFzgOFSmP/pgHAZkURuYnGPZ5FqLX0ahiIMd9GoIeWgc2qolXLDmcVjRLV+H93S7jdReFhZuf5RC4n5aBTKUhMNZKZa8ai1OL/zEyE1ULq1s/RN+yGtnbBKuIunv4Fa8ie+AXjtdNUGfAOOpWCznUD8WkzkfM3swEJY74g1MeNTo9VkUVfQXG4jR8TE3PH9ZgeJtINZi4mZJNvtXHy+EGuxt3AWrtg0TSFWkvmkc3knt+PMSaCqhO+sffo5Gcmkr77G4TVQnD6aZp26kkVdzVZefmE+Oh4on4ArWv54O+uQSn32FRYHBZ+rVq1aN++Pc8//zzPPPPMQ7u8u1UIckwWLp4/w74v/oWwWQkY6okmtGAcwqP1QMyJV3Bv0bdQN6bKK5CGA19jRJtq9HxmNL9Hp5OYbaR+kAftavvSpJqnHGD3IcDh7swTJ06wevVq1qxZQ3JyMj179mTkyJH069fPqS4H5dXGt1htXEnKYfWxa/x8Mp70vHzSti3EmpeFZ/vncA0sPCJtMxvJ2L8S95b9UXkVxKUc2bY6swc0/iuNTcj98Q8ZDjupNW/enE8++YTY2Fi2bt2Kv78///jHP/D39y80qFURycyzsPdCEmNWHOP/HYklw2hDkhT49HoN12oNufndP8n6s/C0yrQdi8j+czOpv8639+aEBRV+EWXRP3yU2gdWkiS6du3Kf/7zH3bu3EmtWrVYuXKlM21zGjabIDHTSFxaLl/uucyV4/tI2f+dXciSpACbFYQNS0psobyeHYaj8q2OZ8fhSJKEt1ZJl7qyF+XDTqmn+8TFxbF69WpWrVpFZGQk7dq1Y+HChc60rcwIIdh5LpGVR2K4fDMLgzmfjOSbJG/8N9jyUfvVwK1BwcQZjzaDUfvXxMWnKoaLh3CrVzDDTOUVSNDYhUiSAhcJhraqToCn9m6XlXkIcFj4S5cu5b///S+HDh2iXr16jBgxgo0bN1bInp49F5OYufks6bkWcs0F4wsungF4dxuLMSYCY1wkunodkBQFS+W4eAWSsPx1hNWCyqeqffBKkhSoFdC5nh/Ptqou99Y8Ajgs/A8++IDnnnuOzz//nKZNm5aDSc5BCMF3h2PIzLNgybcWGnByb9qLzN/XY4v6HYXGA+/HnwfAxTsYTbUwbCYDkqogXJ9eLeHmqqJhsAeTn6xHLT/9Ha8p8/DgsPBjY2Mfiu46g9lKTGouVqsg48xeDBcO4tfvLSQXFZJShW/38WQe+anAt/5/k0kkSaJKvzeRVBq8dWpq++up5e9OWKAHA5tVxcvtzis+yjxcOCx8SZLIyMjgm2++4fz580iSRIMGDRg7dmyFWirI1UWBi0IiJyud1N++QpjzyDr+M55thwCgq9seU1I0yes+wLPDMLw6DkcJuHu40yDIk16NgugR5o+7RoWXThb8o4bDvTrHjx+ndu3azJ8/n7S0NFJSUpg/fz61a9fmxIkT5WFjqci3CvSuSpQ6T6r0fRMXryByIncVikOv9qkKCKyGdBCCmn5u9G9alTa1fAn20hDi4yaL/hHF4Rp/8uTJ9OvXj//85z/2+Oz5+fmMGzeOSZMmsX//fqcbWVIsVhuXErOJTctl++l4LicVhO9TB9RG5Juw5iaRd/VPe0+OW1gXXLyDcQ2qS8NAPb0aB+OlU5GYZaRGFbcHdh8y5Y/DI7darZaTJ09Sv379QsfPnTtHy5Ytyc3NdYphjo7cZhktfH/kGmdvZHFs609Ebl9NwNA5KNy8AMiLPkn6ge/BYiLohflILgU1uYsEgV4aOtXxw9tNjYtConE1L7rU80Mlh/p4ZHG4xvfw8CA2NraI8OPi4h5ooNhfTt1g+9mbmI25RP7yDebMZDIOrcLnyVcAUAfUwpqVhM1owHTjIprqjQl0d6VTXV+61A3AR6/GaiuIkFbdRyfHt3nEcVj4Q4cOZezYscybN4/27dsjSRIHDx7kzTffZNiwYeVh4z25kZ7H90diSDGYcXdV4d9pGPG/fEnOhYN4tX0GhYcfSp0nfv2motB6ovYLpWk1D6b1DaNWFXe85d6aSofDwp83bx6SJDFq1Cjy8/MBUKlUvPzyy/z73/92uoH3Yt+lJL7eE8XFmAS0Hl4oJYngFt1JPLyOfEMG5vQEfKoEYLUKpOrhqJVQP9CD2QPDaVS14vRCydxfHP49V6vVfP7556SnpxMREcHJkydJS0tj/vz59z0g1P5LSczddoFDP3/PtaUvkXX9Mhm5ZqwuGtyq1kWYDGQc/C8miw2LTeCigOpV9AxuEVLE0UymclFqXx2dTkfjxo3vnbCcMOfb+OFYPDl5JjJP78SWl03mkR/RDHyHHKOFmv1eJ0ajp2rXUVTx0aFyUdAi1JtnWobQtJqX7FFZySmx8Evqcvztt9+W2hhHiEvPJTEnDw83DcEN23DxehSGqyfQKGyYbApUOje6jXmLV7rWoUWoD3pXF9nHRsZOiYW/YsUKQkNDadasWZEoAw+C2KtRqJVKLFZBzVbdubj9v9hMueTFX0BVrSHB3joGNw+h02Nyt6RMUUos/AkTJrBmzRquXr3Kiy++yMiRIx/YtMM5c+YwY8YMhrz5KebAZmiDH+Ox7sNQuurQ12iEn5eOd3vXp0Woj9ykkSkWhwawTCYT69ev59tvv+Xw4cM89dRTjB07lieffNLpjmt3GsASQlC7dm2io6Np3a4j7V7/givJBoyWfGw2QVVvLROfqEurGg/nXGCZ+4PDI7e3uHbtGitWrOC7777DYrFw7tw59HrnuezebeS2efPmnDx5kjZt2rBl136ORaeRajDh66amZQ0fqshBWGXuQal7dSRJsgeLvd+xdr766iv69u3L22+/jY+bml6NAu/r9WUefhz66jOZTKxevZoePXpQr149IiMjWbhwIbGxsU6t7e9Fu3btiIuLY8CAAfftmjKPFiWu8V955RXWrFlD9erVGTNmDGvWrMHX17c8bbsrWq0871Wm9JS4ja9QKKhevTrNmjW764fs+vXrS2VIcasehoSEPJAw4TKPPiWu8UeNGlWuUw4r8qqHMo8epe7VcTZyjS9zP6kwy2jfvurhrfexoi30LFPxcXd3v2frpMII/3ays7MBCAkJecCWyDxslKSVUGGaOrdjs9m4ePEiYWFhxMXFPVLNnVvNuEfpvirSPT3UNb5CoaBq1apAwXTHB/0wy4NH8b4elnuS3RZlKiWy8GUqJRVa+K6ursyYMeO+T2ksbx7F+3rY7qnCftzKyJQnFbrGl5EpL2Thy1RKZOHLVEpk4ctUSmThy1RKZOHLVEpk4ctUSmThy1RKZOHLVEpk4ZcASZLYuHHjgzajXDCbzdSpU4dDhw4BEBMTgyRJREREOPU6CxcupF+/fk4tsyxUWuGPHj3aHhtIpVIREBBAjx49+Pbbb4vECUpISKB3794lKvdhe0mWLl1KaGgoHTp0KNfrjB8/nj/++IODBw+W63VKSqUVPkCvXr1ISEggJiaGrVu30rVrV9544w2efvpp+6IXAIGBgQ+N85WjfPnll4wbN67cr+Pq6srw4cP58ssvy/1aJUJUUl544QXRv3//Isd37dolAPGf//zHfgwQGzZsEEIIYTKZxKuvvioCAwOFq6urCA0NFR9++KEQQojQ0FAB2LfQ0FAhhBBRUVGiX79+wt/fX7i5uYmWLVuKHTt2FLpuaGiomDNnjhgzZozQ6/UiJCRELFmypFCauLg4MXToUOHt7S10Op1o0aKFOHr0qP38pk2bRPPmzYWrq6uoWbOmmDlzprBYLHd8Bn/++adQKBQiMzPTfiw6OloA4uTJk0IIIaxWqxg3bpx47LHHRExMjP15LF68WDz11FNCq9WK+vXri8OHD4vLly+Lzp07C51OJ9q2bSuioqIKXW/v3r1CrVaL3NzcO9p0v5CFXwxNmjQRvXv3tu//XfiffPKJCAkJEfv37xcxMTHiwIEDYtWqVUIIIZKSkgQgli9fLhISEkRSUpIQQoiIiAixePFicfr0aXHp0iXx3nvvCY1GI65du2a/RmhoqPDx8RFfffWVuHz5svjoo4+EQqEQ58+fF0IIkZ2dLWrVqiU6deokDhw4IC5fvix++OEHcfjwYSGEENu2bRMeHh5ixYoV4sqVK2L79u2iRo0aYubMmXd8BvPnzxf169cvdOzvwjeZTGLw4MGiadOmIjExsdDzqFq1qvjhhx/ExYsXxYABA0SNGjVEt27dxLZt28S5c+dE27ZtRa9evQqVnZOTIyRJEnv37r3bn+a+IAu/GIYOHSoaNGhg3/+78CdOnCi6desmbDZbsXn/nvZuhIWFiS+//NK+HxoaKkaOHGnft9lswt/fX3z99ddCCCGWLFki3N3dRWpqarHlderUyf7Lc4vvv/9eBAUF3dGGN954Q3Tr1q3QsVvCP3DggOjevbvo0KGDyMjIKHKP77//vn3/yJEjAhDffPON/djq1auFRqMpck1vb2+xYsWKO9p0v6jUbfw7IYS442Tl0aNHExERQb169Xj99dfZvn37PcszGAxMnTqVsLAwvLy80Ov1XLhwgdjY2ELpwsPD7f+XJInAwECSkpIAiIiIoFmzZndck+DPP//k//7v/9Dr9fZt/PjxJCQk3HHt4by8PDQaTbHnhg0bRk5ODtu3b8fTs+gieX+3NSAgAKDQ0lABAQEYjcYi4WG0Wq3T1kIuC7Lwi+H8+fPUrFmz2HPNmzcnOjqaDz74gLy8PJ599lmGDBly1/LefPNN1q1bx5w5czhw4AARERE0btwYs9lcKJ1KpSq0L0mSvYfpXrFCbTYbs2bNIiIiwr5FRkZy+fLlO4q7SpUqpKenF3uuT58+nD59mqNHjxZ7/u+23qokijt2ew9ZWloafn5+d72X+0GFjbLwoNi9ezeRkZFMnjz5jmk8PDwYOnQoQ4cOZciQIfTq1Yu0tDR8fHxQqVRYrdZC6Q8cOMDo0aMZOHAgADk5OcTExDhkV3h4OMuWLbNf53aaN2/OxYsXqVOnTonLbNasGV9//XWxv3Avv/wyjRo1ol+/fvz666907tzZIXuL48qVKxiNRpo1a1bmsspKpRa+yWTi5s2bWK1WEhMT2bZtGx999BFPP/00o0aNKjbP/PnzCQoKomnTpigUCn766ScCAwPx8vICoEaNGuzatYsOHTrg6uqKt7c3derUYf369fTt2xdJkpg2bZrDawoMGzaMDz/8kAEDBvDRRx8RFBTEyZMnCQ4Opl27dkyfPp2nn36akJAQnnnmGRQKBadPnyYyMpLZs2cXW2bXrl0xGAycPXuWRo0aFTk/ceJErFYrTz/9NFu3bqVjx44O2Xw7Bw4coFatWtSuXbtM5TiDSt3U2bZtG0FBQdSoUYNevXqxZ88evvjiC37++WeUSmWxefR6PR9//DEtW7akVatWxMTEsGXLFhSKgkf56aefsmPHDkJCQuw12/z58/H29qZ9+/b07duXnj170rx5c4dsVavVbN++HX9/f/r06UPjxo3597//bbezZ8+e/PLLL+zYsYNWrVrRtm1bPvvsM0JDQ+9Ypq+vL4MGDeK///3vHdNMmjSJWbNm0adPHw4fPuyQzbezevVqxo8fX6YynIU82bySExkZSffu3YmKisLd3b3crnPmzBmeeOIJLl26VOzH8v2mUtf4MgU9MXPnznX4m8NRbty4wXfffVchRA9yjS9TSZFrfJlKiSx8mUqJLHyZSoksfJlKiSx8mUqJLHyZSoksfJlKiSx8mUqJLHyZSsn/B+FK8U6fkP4HAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "runs = pd.read_excel(\"runs.xlsx\", parse_dates = [\"Date\"])\n", + "f, ax = plt.subplots(figsize = (2,2))\n", + "ax.set(ylabel = \"Moving Time (mins)\", xlabel = \"Distance (km)\")\n", + "\n", + "x = runs[\"Distance (m)\"].values/1e3\n", + "y = runs[\"Moving time\"].values/60\n", + "\n", + "dists = np.linspace(1, 25, 2)\n", + "for i in [5,6,7]:\n", + " mins_per_km = i * dists\n", + " ax.plot(dists, mins_per_km, color = \"black\", linestyle = \"dotted\", label = f\"{i} min/km\")\n", + " # ax.text(25.5, 25*i, f\"{i} min/km\", va = \"center\")\n", + "\n", + "i = runs[\"Distance (m)\"].argmax()\n", + "ax.annotate(\"Half Marathon!\", (x[i], y[i]-1), (1, 150), arrowprops = dict(arrowstyle = \"->\"))\n", + "\n", + "ax.scatter(x, y, s=20, alpha = 0.6*fade_out_by_date(runs[\"Date\"]))\n", + "ax.spines[['right', 'top']].set_visible(False)\n", + "ax.set(xticklabels = [], yticklabels = [])\n", + "f.tight_layout()\n", + "f.savefig(\"half_thumbnail.svg\", transparent=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 53, "id": "51846c1c-a67e-4da4-997c-5699e9e85ecf", "metadata": {}, "outputs": [ @@ -420,50 +461,15 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 54, "id": "bd19b6de-bdde-40bd-a344-0cd3cbd76f80", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "30.0 [8.5, 9.183333333333334, 17.933333333333334, 19.316666666666666, 30.666666666666668, 63.766666666666666, 98.23333333333333, 141.06666666666666, 289.28333333333336]\n", - "31.0 [8.25, 8.916666666666666, 17.45, 18.8, 29.85, 62.06666666666667, 95.6, 137.35, 281.95]\n", - "32.0 [8.033333333333333, 8.683333333333334, 16.983333333333334, 18.3, 29.083333333333332, 60.43333333333333, 93.11666666666666, 133.81666666666666, 274.98333333333335]\n", - "33.0 [7.816666666666666, 8.45, 16.55, 17.833333333333332, 28.35, 58.9, 90.75, 130.45, 268.3666666666667]\n", - "34.0 [7.616666666666666, 8.233333333333333, 16.15, 17.4, 27.65, 57.43333333333333, 88.5, 127.26666666666667, 262.05]\n", - "35.0 [7.416666666666667, 8.016666666666667, 15.75, 16.966666666666665, 27.0, 56.05, 86.36666666666666, 124.21666666666667, 256.05]\n", - "36.0 [7.233333333333333, 7.816666666666666, 15.383333333333333, 16.566666666666666, 26.366666666666667, 54.733333333333334, 84.33333333333333, 121.31666666666666, 250.31666666666666]\n", - "37.0 [7.066666666666666, 7.633333333333334, 15.016666666666667, 16.183333333333334, 25.766666666666666, 53.483333333333334, 82.4, 118.56666666666666, 244.83333333333334]\n", - "38.0 [6.9, 7.45, 14.683333333333334, 15.816666666666666, 25.2, 52.28333333333333, 80.55, 115.91666666666667, 239.58333333333334]\n" - ] - } - ], - "source": [ - "vdot_table = pd.read_csv(\"vdot.csv\")\n", - "table_dists = [1.5, 1.5609, 3, 2*1.609, 5, 10, 15, 42.195/2, 42.195]\n", - "\n", - "for col in vdot_table.columns[1:]:\n", - " seconds = vdot_table[col].str.split(\":\").apply(lambda s: sum(int(x)*60**i for i,x in enumerate(s[::-1])))\n", - " vdot_table[col] = seconds / 60 #pd.to_timedelta(seconds, unit='s')\n", - "\n", - "for i, row in vdot_table.iterrows():\n", - " vdot, *times = row\n", - " print(vdot, times)" - ] - }, - { - "cell_type": "code", - "execution_count": 27, - "id": "887f7db8-d9b7-47ad-9bb2-538bf1c475e6", - "metadata": {}, "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAoIAAAEmCAYAAAD2lfFwAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAACgnElEQVR4nOzdd3iTVfvA8W920nTvRWmZBQq0TBkKCC0OhuJkKAKvgIgKoqg4AF/AraCIg5+KA8HBUHFQRGTI3ksp0AUddO/snN8flbxGZqGljPO5rlw2J0/OcyeW9M55zrmPQgghkCRJkiRJkq45yvoOQJIkSZIkSaofMhGUJEmSJEm6RslEUJIkSZIk6RolE0FJkiRJkqRrlEwEJUmSJEmSrlEyEZQkSZIkSbpGyURQkiRJkiTpGiUTQUmSJEmSpGuUTAQBIQRlZWXI2tqSJEmSJF1LZCIIlJeX4+PjQ3l5eX2HIkmSJEmSdMnIRFCSJEmSJOkaJRNBSZIkSZKka5RMBCVJkiRJkq5RMhGUJEmSJOmqM23aNOLj4+s7jMueTAQlSZIkSbrmpaeno1Ao2L17d632u2HDBrp160ZAQAAGg4HY2FjeeuutU45bsmQJLVu2RKfT0bJlS5YtW3bOvvft20ePHj0wGAxERETw4osv1rgCirpGR0uSJEmSJEnnzWg0Mn78eNq0aYPRaGTDhg2MGTMGo9HI6NGjAdi0aRP33HMP//3vf7n99ttZtmwZd999Nxs2bKBz586n7besrIzExER69erFtm3bSElJ4YEHHsBoNDJp0qTzjk+OCEqSJEmSdNn64IMPiIiIwOl0urUPGDCA4cOHu+6//PLLhISE4OXlxahRozCbzW7HO51OXnzxRSIjI9HpdMTHx/PLL7+4Ho+JiQEgISEBhUJBz549ayX+hIQEBg8eTKtWrYiOjmbYsGH07duX9evXu46ZPXs2iYmJPPPMM8TGxvLMM8/Qu3dvZs+efcZ+Fy5ciNlsZsGCBcTFxTFo0CCmTJnCm2++WaNRwXpNBNetW0f//v0JDw9HoVCwfPnyMx47ZswYFArFKW+KxWLhkUceITAwEKPRyIABAzh+/HjdBi5JkiRJ0iVx1113UVBQwJo1a1xtxcXFrFy5kqFDhwLw9ddfM3XqVGbOnMn27dsJCwtj3rx5bv3MmTOHN954g9dff529e/fSt29fBgwYwOHDhwHYunUrAL/++is5OTksXboUqE64PD09z3pbuHDheb+eXbt2sXHjRnr06OFq27RpE0lJSW7H9e3bl40bN56xn02bNtGjRw90Op3bc7Kzs0lPTz/veOr10nBlZSVt27ZlxIgR3HHHHWc8bvny5WzZsoXw8PBTHpswYQI//PADixcvJiAggEmTJtGvXz927NiBSqWqy/AlSZIkSapj/v7+3HTTTXz55Zf07t0bgG+++QZ/f3/X/dmzZzNy5Ej+85//ADBjxgx+/fVXt1HB119/naeeeop7770XgFdeeYU1a9Ywe/Zs3n33XYKCggAICAggNDTU9bwBAwac8fLsSSEhIed8HZGRkeTn52O325k2bZorVoDc3NxT+ggJCSE3N/eM/eXm5hIdHX3aOHJzc10jnOdSr4ngzTffzM0333zWY7Kyshg/fjwrV67k1ltvdXustLSUjz76iM8//5w+ffoA8MUXX9CgQQN+/fVX+vbtW2exS5IkSdLVSgjBd999h9Vq5e67767vcBg6dCijR49m3rx56HQ6Fi5cyL333usa8Pnzzz8ZO3as23O6dOniGkUsKysjOzubbt26uR3TrVs39uzZc9Zze3l54eXlddGvYf369VRUVLB582aefvppmjRpwuDBg12PKxQKt+OFEKe0/dvpnnO69rO5rOcIOp1O7rvvPp588klatWp1yuM7duzAZrO5DaeGh4cTFxd31uFUi8VCWVmZ202SJEmSpGpfffUVt99+O4899hgmk6m+w6F///44nU5+/PFHjh07xvr16xk2bFiN+7mQZKu2Lg3HxMTQunVrHnzwQSZOnMi0adNcj4WGhp4y+peXl3fWkcYzPQfOb4TypMt61fArr7yCWq3m0UcfPe3jubm5aLVa/Pz83NrPNZz60ksvMX369FqNVZIkSZKuVEIISktL8fX1BWDQoEHExcUxcOBAHA5H/QYHGAwGBg0axMKFCzly5AjNmjWjffv2rsdbtGjB5s2buf/++11tmzdvdv3s7e1NeHg4GzZs4IYbbnC1b9y4kU6dOgGg1WoBTnm9tXVp+J+EEFgsFtf9Ll26sGrVKiZOnOhqS05OpmvXrmfso0uXLkyZMgWr1eqKPTk5mfDw8FMuGZ/NZZsI7tixgzlz5rBz584aDXHCuTP8Z555hscff9x1v6ysjAYNGlxwrJIkSZJ0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s8/y6quvMmLECKB6MYAQos7nAO7fv5+ioiJXwul0OnnggQcYNGgQAwYMOO359xwrYemu42QWVqFUKGgd6cPdHRoQ7nt5zBeUao8sHyNJkiRJdaysrIyCggIWLVrkalMoFHWeBC5ZsoTWrVszZswYnE4nUL345LPPPuO222477fkPnyhn7prDHMwuw0OrRq1Ssi4lnzmrD1NuttVpvLVp2rRpboWhpdOTiaAkSZIk1SKz2cw777zDjh07XG3jxo3js88+46effqrTcwshKC0tdd1PTEzE39+fuLg4t/az+e1QHkUVNhoHeeJt0OBv1NIoyJOjeRVsTy+uq9DrXXp6OgqFwrUTSW3ZsGED3bp1IyAgAIPBQGxsLG+99dYpx5WUlPDwww8TFhaGXq+nRYsW5/x92bdvHz169MBgMBAREcGLL75ITS/0yjmCkiRJklSLnnrqKd5++21uvvlm1x9yDw8P7rvvvjo97+bNmxk7dizR0dEsX74cqK6fl5qaio+Pz3n3k5ZfiVGvditBolFVjxvllplrNeZrgdFoZPz48bRp0waj0ciGDRsYM2YMRqPRtVOM1WolMTGR4OBgvv32WyIjIzl27NhZy9aUlZWRmJhIr1692LZtGykpKTzwwAMYjUYmTZp03vHJEUFJkiRJugg2m43KykrX/UceeYTo6GgGDBhQ49GZi+Hr68vevXv57bffKCgocLXXJAkECPLSYbbZ3dqcQiAAb72mNkKtkQ8++ICIiAjXpe2TBgwYwPDhw133X375Zdeev6NGjcJsdk9anU4nL774IpGRkeh0OuLj4/nll19cj8fExACQkJCAQqE469ZuNZGQkMDgwYNp1aoV0dHRDBs2jL59+7J+/XrXMR9//DFFRUUsX76cbt260bBhQ7p3707btm3P2O/ChQsxm80sWLCAuLg4Bg0axJQpU3jzzTdr9HsnE0FJkiRJukA//vgjzZs358UXX3S1NWnShKNHjzJ27Ng62w2krKyM1157jddff93VFhsby6JFi0hLSyMwMPCC+76+aRAalYqcEhMOp8Bqd5JWUEmIt46O0X61EX6N3HXXXRQUFLj2DQYoLi5m5cqVDB06FICvv/6aqVOnMnPmTLZv305YWBjz5s1z62fOnDm88cYbvP766+zdu5e+ffsyYMAADh8+DFSvpgb49ddfycnJYenSpUDtbTF3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iKqqKld7VlaWsFqtFxXzuZhtdvH1tkyxeEuGWHUg13VbsSdLfLw+VeSWmur0/FL9y87OFoD48ssv6zsU6TQuqI5g3759Wbt2LRUVFVRVVbFhwwaSkpJqNUEF2LRpEwMHDuTWW28lOjqaO++8k6SkJLZv3w78r7r9s88+y6BBg4iLi+PTTz+lqqqKL7/8stbjkSRJstvt2O121/3hw4cTEBBwUYs0ANatW0fjxo0ZNmyYq02v15OSksJnn31W4/l//4wxNDSU/Px8KioqXJ+fUL3PcF2MALrF4RDYHE60avc/N1qVEpvTidUu5wpe7cLCwoiLi5P1BC9TF1VQuqKigrKyMrdbberevTurV68mJSUFgD179rBhwwbXXJm0tDRyc3PdklCdTkePHj3OukLJYrHUadySJF2dvv32W2JjY/n8889dbUlJSWRkZDBhwoSL6jsmJoacnBwOHjzodgnNYDDUqJ+MjAzuvfdeunXr5ioBo1ar+eqrrzh+/DjXX3/9RcVZUwaNigCjlpIq98WEJSYbXjoNvh51m4hKl4ekpCSSk5Ndv5PS5aPGiWBaWhq33norRqMRHx8f/Pz88PPzw9fXFz8/v1oN7qmnnmLw4MHExsai0WhISEhgwoQJDB48GMA1JyckJMTteSEhIW7zdf7tpZdewsfHx3W72G/ykiRdGzIyMjh69CgffPCBq02hUGA0GmvUz8nVw48//rirrUGDBiQnJ5Oenn5Ri0CMRiPfffcdW7duZe/eva726667jsDAwAvu90IplQpahvugUSvIKKqkuMpKdomJkiorsWFeeOllIngtSEpKIisrS5aZuwzVeNXw0KFDAfj4448JCQmp042kv/rqK7744gu+/PJLWrVqxe7du5kwYQLh4eEMHz7cddy/YxDn2OD6mWeecfsALisrk8mgJElubDYbn3/+OfHx8bRr1w6AsWPHolKpePDBBy+q7/T0dD744AP0ej1PPPU0wYGBqFVKevXqVaN+Tpw4wTvvvENJSQlz584Fqreoe//994mPj6dt27YXFWdtaeDvQa/YEA7llFNYaSHQS0fTYE8aB3nWd2jSJXL99dej1WpJTk6mRYsW9R2O9A813mLO09OTHTt20Lx587qKyaVBgwY8/fTTPPzww662GTNm8MUXX/DXX3+RmppK48aN2blzp1vpmoEDB+Lr68unn356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", + "image/png": "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", "text/plain": [ - "
" + "
" ] }, "metadata": {}, @@ -471,29 +477,85 @@ } ], "source": [ - "f, ax = plt.subplots(figsize = (7,3))\n", - "ax.set(ylabel = \"Moving Time (mins)\", xlabel = \"Distance (km)\", xlim = (0,25))\n", + "import pandas as pd\n", + "runs = pd.read_excel(\"runs_2.xlsx\", parse_dates = [\"Date\"])\n", + "\n", + "def fade_out_by_date(dates, low = None, high = None):\n", + " low, high = low or min(dates), high or max(dates)\n", + " range = (high - low)\n", + " return (dates - low) / range\n", + "\n", + "f, ax = plt.subplots(figsize = (5,2.5))\n", + "ax.set(ylabel = \"Moving Time (mins)\", xlabel = \"Distance (km)\")\n", "\n", "x = runs[\"Distance (m)\"].values/1e3\n", "y = runs[\"Moving time\"].values/60\n", "\n", + "dists = np.linspace(1, 50, 2)\n", + "for i in [5,6,7]:\n", + " mins_per_km = i * dists\n", + " ax.plot(dists, mins_per_km, color = \"black\", linestyle = \"dotted\", label = f\"{i} min/km\")\n", + " ax.text(51, 50*i, f\"{i} min/km\", va = \"center\")\n", "\n", - "for i, row in list(vdot_table.iterrows())[::3]:\n", - " vdot, *times = row[:-1]\n", - " ax.plot(table_dists[:-1], times, color = \"black\", linestyle = \"dotted\", label = f\"{i} min/km\")\n", - " ax.text(22.5, times[-1], f\"vdot= {vdot}\", va = \"center\")\n", - "\n", - "ax.annotate(\"Half Marathon!\", (x[0], y[0]-1), (20, 50), arrowprops = dict(arrowstyle = \"->\"))\n", + "i = runs[\"Distance (m)\"].argmax()\n", + "ax.annotate(\"Amsterdamn Marathon!\", (x[i], y[i]-1), (10, 250), arrowprops = dict(arrowstyle = \"->\"))\n", "\n", "ax.scatter(x, y, s=20, alpha = 0.6*fade_out_by_date(runs[\"Date\"]))\n", "ax.spines[['right', 'top']].set_visible(False)\n", - "# f.savefig(\"time_vs_distance.svg\", transparent=True)\n", - "# f.savefig(\"time_vs_distance.png\", transparent=True)" + "f.savefig(\"time_vs_distance_2.svg\", transparent=True)\n", + "f.savefig(\"time_vs_distance_2.png\", transparent=True)" ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 67, + "id": "1c155c8d-4c78-48e5-bb13-31183827aa70", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "runs = pd.read_excel(\"runs_2.xlsx\", parse_dates = [\"Date\"])\n", + "\n", + "def fade_out_by_date(dates, low = None, high = None):\n", + " low, high = low or min(dates), high or max(dates)\n", + " range = (high - low)\n", + " return (dates - low) / range\n", + "\n", + "f, ax = plt.subplots(figsize = (2,2))\n", + "ax.set(ylabel = \"Moving Time (mins)\", xlabel = \"Distance (km)\")\n", + "\n", + "x = runs[\"Distance (m)\"].values/1e3\n", + "y = runs[\"Moving time\"].values/60\n", + "\n", + "dists = np.linspace(1, 50, 2)\n", + "for i in [5,6,7]:\n", + " mins_per_km = i * dists\n", + " ax.plot(dists, mins_per_km, color = \"black\", linestyle = \"dotted\", label = f\"{i} min/km\")\n", + " # ax.text(51, 50*i, f\"{i} min/km\", va = \"center\")\n", + "\n", + "i = runs[\"Distance (m)\"].argmax()\n", + "ax.annotate(\"Amsterdamn\\nMarathon!\", (x[i], y[i]-1), (5, 270))\n", + "\n", + "ax.scatter(x, y, s=20, alpha = 0.6*fade_out_by_date(runs[\"Date\"]))\n", + "ax.spines[['right', 'top']].set_visible(False)\n", + "ax.set(xticklabels = [], yticklabels = [])\n", + "f.tight_layout()\n", + "f.savefig(\"full_thumbnail.svg\", transparent=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 23, "id": "721822c4-c519-4715-ad9d-71bb8a0216e4", "metadata": {}, "outputs": [ @@ -502,48 +564,18 @@ "output_type": "stream", "text": [ "___Downloading Latest Data___\n", - "Getting activities: '/Users/math/HealthData/FitFiles/Activities' (25) temp /var/folders/kh/l7xgsyks5mz4b4q71_dngny40000gn/T/tmpeatj5nmp\n", - "100%|█████████████████████████████████████| 3/3 [00:01<00:00, 2.05activities/s]\n", - "Downloading latest monitoring data from: 2023-08-09 21:03:43\n", - "100%|█████████████████████████████████████████| 15/15 [00:19<00:00, 1.29s/days]\n", - "100%|█████████████████████████████████████████| 15/15 [00:19<00:00, 1.30s/days]\n", - "100%|█████████████████████████████████████████| 16/16 [00:27<00:00, 1.72s/days]\n", - "Downloading latest sleep data from: 2023-08-10\n", - "100%|█████████████████████████████████████████| 14/14 [00:20<00:00, 1.43s/days]\n", - "Downloading latest weight data from: 2023-07-27\n", - "100%|█████████████████████████████████████████| 28/28 [00:32<00:00, 1.15s/days]\n", - "Downloading latest rhr data from: 2023-08-09\n", - "100%|█████████████████████████████████████████| 15/15 [00:18<00:00, 1.24s/days]\n", - "___Importing Latest Data___\n", - "Processing profile data\n", - "100%|█████████████████████████████████████████| 1/1 [00:00<00:00, 103.89files/s]\n", - "Processing [] FIT data from /Users/math/HealthData/FitFiles\n", - "Processing weight data\n", - "100%|███████████████████████████████████████| 13/13 [00:00<00:00, 687.62files/s]\n", - "Processing daily summary data\n", - "100%|███████████████████████████████████████| 13/13 [00:00<00:00, 178.93files/s]\n", - "100%|███████████████████████████████████████| 13/13 [00:00<00:00, 561.70files/s]\n", - "Processing [] FIT data from /Users/math/HealthData/FitFiles/Monitoring\n", - "100%|██████████████████████████████████████| 126/126 [00:10<00:00, 12.23files/s]\n", - "Processing sleep data\n", - "100%|████████████████████████████████████████| 13/13 [00:00<00:00, 18.61files/s]\n", - "Processing rhr data\n", - "100%|███████████████████████████████████████| 13/13 [00:00<00:00, 670.83files/s]\n", - "Processing activities tcx data\n", - "Processing latest activities summary data from /Users/math/HealthData/FitFiles/Activities\n", - "100%|█████████████████████████████████████████| 1/1 [00:00<00:00, 180.11files/s]\n", - "Processing activities detail data\n", - "100%|█████████████████████████████████████████| 1/1 [00:00<00:00, 224.97files/s]\n", - "Processing [] FIT data from /Users/math/HealthData/FitFiles/Activities\n", - "100%|██████████████████████████████████████████| 1/1 [00:00<00:00, 2.48files/s]\n", - "___Analyzing Data___\n", - "Summary Tables Generation:\n", - "Generating table entries for 2023\n", - "100%|█████████████████████████████████████████| 27/27 [00:01<00:00, 26.72days/s]\n", - "100%|██████████████████████████████████████████| 3/3 [00:00<00:00, 611.36days/s]\n", - "100%|███████████████████████████████████████| 52/52 [00:00<00:00, 162.45weeks/s]\n", - "100%|█████████████████████████████████████████| 2/2 [00:00<00:00, 36.21months/s]\n", - "100%|███████████████████████████████████████| 1/1 [00:00<00:00, 1726.76months/s]\n" + "Traceback (most recent call last):\n", + " File \"/Users/math/micromamba/envs/iot_ingester/bin/garmindb_cli.py\", line 358, in \n", + " main(sys.argv[1:])\n", + " File \"/Users/math/micromamba/envs/iot_ingester/bin/garmindb_cli.py\", line 339, in main\n", + " download_data(args.overwrite, args.latest, args.stats)\n", + " File \"/Users/math/micromamba/envs/iot_ingester/bin/garmindb_cli.py\", line 112, in download_data\n", + " if not download.login():\n", + " ^^^^^^^^^^^^^^^^\n", + " File \"/Users/math/micromamba/envs/iot_ingester/lib/python3.11/site-packages/garmindb/download.py\", line 178, in login\n", + " self.display_name = self.user_prefs['displayName']\n", + " ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^\n", + "TypeError: 'NoneType' object is not subscriptable\n" ] } ], diff --git a/assets/blog/running/runs_2.xlsx b/assets/blog/running/runs_2.xlsx new file mode 100644 index 0000000..16897cf Binary files /dev/null and b/assets/blog/running/runs_2.xlsx differ diff --git a/assets/blog/running/thumbnail.png b/assets/blog/running/thumbnail.png deleted file mode 100644 index a74be73..0000000 Binary files a/assets/blog/running/thumbnail.png and /dev/null differ diff --git a/assets/blog/running/time_vs_distance.png b/assets/blog/running/time_vs_distance.png index cd3e9fb..8cb84e5 100644 Binary files a/assets/blog/running/time_vs_distance.png and b/assets/blog/running/time_vs_distance.png differ diff --git a/assets/blog/running/time_vs_distance.svg b/assets/blog/running/time_vs_distance.svg index 8650788..78942eb 100644 --- a/assets/blog/running/time_vs_distance.svg +++ b/assets/blog/running/time_vs_distance.svg @@ -6,7 +6,7 @@ - 2023-08-24T15:35:16.452997 + 2023-10-20T13:40:14.678525 image/svg+xml @@ -41,7 +41,7 @@ z - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + @@ -705,7 +705,7 @@ z - + @@ -745,7 +745,7 @@ z - + @@ -775,7 +775,7 @@ z - + @@ -789,7 +789,7 @@ z - + @@ -829,7 +829,7 @@ z - + @@ -1118,12 +1118,12 @@ z - - + @@ -1136,7 +1136,7 @@ L -3.5 0 - + @@ -1150,7 +1150,7 @@ L -3.5 0 - + @@ -1165,7 +1165,7 @@ L -3.5 0 - + @@ -1298,17 +1298,17 @@ z +" clip-path="url(#p0250cbef11)" style="fill: none; stroke-dasharray: 1.5,2.475; stroke-dashoffset: 0; stroke: #000000; stroke-width: 1.5"/> +" clip-path="url(#p0250cbef11)" style="fill: none; stroke-dasharray: 1.5,2.475; stroke-dashoffset: 0; stroke: #000000; stroke-width: 1.5"/> +" clip-path="url(#p0250cbef11)" style="fill: none; stroke-dasharray: 1.5,2.475; stroke-dashoffset: 0; stroke: #000000; stroke-width: 1.5"/> - - @@ -1539,7 +1539,7 @@ z - + diff --git a/assets/blog/running/time_vs_distance_2.png b/assets/blog/running/time_vs_distance_2.png new file mode 100644 index 0000000..974ae53 Binary files /dev/null and b/assets/blog/running/time_vs_distance_2.png differ diff --git a/assets/blog/running/time_vs_distance_2.svg b/assets/blog/running/time_vs_distance_2.svg new file mode 100644 index 0000000..eed72bf --- /dev/null +++ b/assets/blog/running/time_vs_distance_2.svg @@ -0,0 +1,1656 @@ + + + + + + + + 2023-10-20T13:40:15.026758 + image/svg+xml + + + Matplotlib v3.7.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/blog/running/time_vs_distance_plus_hist.svg b/assets/blog/running/time_vs_distance_plus_hist.svg index ee83711..4a2e70a 100644 --- a/assets/blog/running/time_vs_distance_plus_hist.svg +++ b/assets/blog/running/time_vs_distance_plus_hist.svg @@ -6,7 +6,7 @@ - 2023-08-24T15:35:18.822242 + 2023-10-20T13:40:14.866706 image/svg+xml @@ -45,7 +45,7 @@ L 74.009765 127.2 L 74.009765 115.771429 L 67.279841 115.771429 z -" clip-path="url(#p879bee568c)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> +" clip-path="url(#p9660c46cd0)" style="fill: #1f77b4; opacity: 0.5"/> - - + - + - + - + - + - + @@ -622,7 +622,7 @@ z - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + @@ -1281,7 +1281,7 @@ z - + @@ -1321,7 +1321,7 @@ z - + @@ -1351,7 +1351,7 @@ z - + @@ -1365,7 +1365,7 @@ z - + @@ -1405,7 +1405,7 @@ z - + @@ -1544,12 +1544,12 @@ z - - + @@ -1562,7 +1562,7 @@ L -3.5 0 - + @@ -1576,7 +1576,7 @@ L -3.5 0 - + @@ -1590,7 +1590,7 @@ L -3.5 0 - + @@ -1616,7 +1616,7 @@ z - + @@ -1631,7 +1631,7 @@ z - + @@ -1646,7 +1646,7 @@ z - + @@ -1661,7 +1661,7 @@ z - + @@ -1794,17 +1794,17 @@ z +" clip-path="url(#p344896b77d)" style="fill: none; stroke-dasharray: 1.5,2.475; stroke-dashoffset: 0; stroke: #000000; stroke-width: 1.5"/> +" clip-path="url(#p344896b77d)" style="fill: none; stroke-dasharray: 1.5,2.475; stroke-dashoffset: 0; stroke: #000000; stroke-width: 1.5"/> +" clip-path="url(#p344896b77d)" style="fill: none; stroke-dasharray: 1.5,2.475; stroke-dashoffset: 0; stroke: #000000; stroke-width: 1.5"/> + - + diff --git a/assets/projects/lego_adapters/thumbnail.png b/assets/projects/lego_adapters/thumbnail.png new file mode 100644 index 0000000..c237ff7 Binary files /dev/null and b/assets/projects/lego_adapters/thumbnail.png differ diff --git a/assets/projects/toothbrush_shelf/thumbnail.png b/assets/projects/toothbrush_shelf/thumbnail.png new file mode 100644 index 0000000..531af08 Binary files /dev/null and b/assets/projects/toothbrush_shelf/thumbnail.png differ diff --git a/projects.md b/projects.md index c6d2378..1aa4ecf 100644 --- a/projects.md +++ b/projects.md @@ -12,7 +12,7 @@ redirect_from:

{{ post.title }}

- + {{ post.excerpt | markdownify | remove: '

' | remove: '

' }}
diff --git a/run.sh b/run.sh index 1441fb1..cbdcbb4 100755 --- a/run.sh +++ b/run.sh @@ -1,3 +1,3 @@ #!/usr/bin/env bash sleep 8 && open --url http://0.0.0.0:4000 & -bundle exec jekyll serve --draft --future \ No newline at end of file +bundle exec jekyll serve #--draft --future \ No newline at end of file