How to get the same swimming distance like in the Fitness app

Hello Apple Community,

What does approach use the Fitness app for swimming distance calculation per set (segment)?

I've tried 2 options but all of them have different values than in the Fitness app.

  1. Calculation like that: pool length * number of laps = swimming distance BUT the Fitness app sometimes shows other values for distance per set (segment).

  2. Fetch all distance values via HKQuantityTypeIdentifier.distanceSwimming (HKSampleQuery`) and than try to match distance values with set (segment) duration. Again I got other values for swimming distance per set, values are bigger than in the Fitness app.

let healthStore = HKHealthStore()
let distanceType = HKQuantityType.quantityType(forIdentifier: HKQuantityTypeIdentifier.distanceSwimming)!
let predicate = HKQuery.predicateForSamples(withStart: startDate as Date, end: endDate as Date?, options: .strictStartDate)
let query = HKSampleQuery(sampleType: distanceType, predicate: predicate, limit: HKObjectQueryNoLimit, sortDescriptors: [.init(keyPath: \HKSample.startDate, ascending: true)], resultsHandler: { (query, results, error) in
if let error {
Logger.e("\(error)")
continuation.resume(returning: nil)
}
continuation.resume(returning: results)
})
healthStore.execute(query)

Is it possible to get the same swimming distance like in the Fitness app per set via HealthKit?

Would you mind to share more information, maybe screenshots, to show the values Fitness.app presents and how they are different from your calculation? I'd take a look and see if there is something to comment.

Best,
——
Ziqiao Chen
 Worldwide Developer Relations.

Hello,

We have 2 issues on our side.

1. We struggle with distances in Fitness app.

As we can see with this activity (a real activity), when we compare Total Distance with the Sum of All Sets, both distances are different.

Total Distance = 1050 m

Sum of All Sets = 1025 m

There are 25 m difference between total values and set details.

2. Then, on our side, we have 2 options to calculate swimming distance but we don’t know which one is the best to use.

a Option 1 : pool length * number of laps = swimming distance

With this option, we see that distance is matching total distance from Fitness app. But for some activities (are shown above), some distance per set (segment) are different than from Fitness app.

b Option 2 : Fetch all distances values via HKQuantityTypeIdentifier.distanceSwimming (HKSampleQuery) .

With this option, we see that distance is matching sum of all sets distance from Fitness app. But for some activities (are shown above), total distance is different than from Fitness app.

Also we added more screenshots from the Fitness app and raw data from that workout sesseion.

[
  {
    "provider": "apple",
    "stroke_id": 1,
    "level": "beginner",
    "sets": [
      {
        "phase": "main",
        "distance": 100,
        "repetitions": [
          {
            "duration": "00:00:19.111",
            "distance_unit": "meters",
            "cycles": 7,
            "max_heartrate": 0,
            "min_heartrate": 0,
            "max_speed": 0,
            "distance": 25,
            "average_heartrate": 0,
            "swolf": 26,
            "rest_time": "",
            "average_speed": 0,
            "calories_burned": 0,
            "repetition_number": 1,
            "strokeId": 1
          },
          {
            "average_heartrate": 0,
            "max_heartrate": 0,
            "calories_burned": 0,
            "distance_unit": "meters",
            "strokeId": 1,
            "rest_time": "",
            "swolf": 41,
            "distance": 25,
            "min_heartrate": 0,
            "repetition_number": 2,
            "duration": "00:00:30.173",
            "cycles": 11,
            "max_speed": 0,
            "average_speed": 0
          },
          {
            "average_speed": 0,
            "cycles": 10,
            "distance_unit": "meters",
            "min_heartrate": 0,
            "rest_time": "",
            "swolf": 35,
            "average_heartrate": 0,
            "duration": "00:00:25.775",
            "strokeId": 1,
            "max_heartrate": 0,
            "calories_burned": 0,
            "distance": 25,
            "max_speed": 0,
            "repetition_number": 3
          },
          {
            "distance": 25,
            "swolf": 42,
            "calories_burned": 0,
            "max_speed": 0,
            "average_speed": 0,
            "duration": "00:00:31.296",
            "average_heartrate": 0,
            "min_heartrate": 0,
            "repetition_number": 4,
            "rest_time": "",
            "cycles": 11,
            "max_heartrate": 0,
            "distance_unit": "meters",
            "strokeId": 1
          },
          {
            "duration": "00:00:23.865",
            "rest_time": "",
            "max_speed": 0,
            "calories_burned": 0,
            "average_speed": 0,
            "max_heartrate": 0,
            "min_heartrate": 0,
            "strokeId": 1,
            "distance": 25,
            "swolf": 32,
            "repetition_number": 5,
            "cycles": 9,
            "average_heartrate": 0,
            "distance_unit": "meters"
          }
        ],
        "distance_unit": "meters",
        "stroke_id": 1,
        "intensity": "mild",
        "interval": "classic",
        "repetition_numbers": 5,
        "duration": "00:01:57.093",
        "rest_time": "00:00:15.019"
      },
      {
        "repetition_numbers": 4,
        "distance": 100,
        "rest_time": "00:00:25.854",
        "intensity": "mild",
        "interval": "classic",
        "stroke_id": 1,
        "repetitions": [
          {
            "distance_unit": "meters",
            "average_heartrate": 0,
            "max_speed": 0,
            "max_heartrate": 0,
            "calories_burned": 0,
            "repetition_number": 1,
            "average_speed": 0,
            "distance": 25,
            "swolf": 40,
            "rest_time": "",
            "cycles": 11,
            "min_heartrate": 0,
            "duration": "00:00:29.625",
            "strokeId": 1
          },
          {
            "calories_burned": 0,
            "min_heartrate": 0,
            "average_speed": 0,
            "repetition_number": 2,
            "average_heartrate": 0,
            "distance": 25,
            "duration": "00:00:25.277",
            "cycles": 9,
            "distance_unit": "meters",
            "max_speed": 0,
            "max_heartrate": 0,
            "swolf": 34,
            "rest_time": "",
            "strokeId": 1
          },
          {
            "distance_unit": "meters",
            "strokeId": 1,
            "average_heartrate": 0,
            "duration": "00:00:27.685",
            "cycles": 10,
            "max_speed": 0,
            "rest_time": "",
            "distance": 25,
            "calories_burned": 0,
            "max_heartrate": 0,
            "repetition_number": 3,
            "min_heartrate": 0,
            "average_speed": 0,
            "swolf": 37
          },
          {
            "distance": 25,
            "max_heartrate": 0,
            "average_speed": 0,
            "average_heartrate": 0,
            "max_speed": 0,
            "cycles": 11,
            "strokeId": 2,
            "distance_unit": "meters",
            "min_heartrate": 0,
            "rest_time": "",
            "calories_burned": 0,
            "duration": "00:00:28.560",
            "repetition_number": 4,
            "swolf": 39
          }
        ],
        "phase": "main",
        "distance_unit": "meters",
        "duration": "00:02:00.242"
      },
      {
        "stroke_id": 7,
        "distance_unit": "meters",
        "repetition_numbers": 2,
        "repetitions": [
          {
            "max_speed": 0,
            "duration": "00:00:36.369",
            "cycles": 13,
            "max_heartrate": 0,
            "distance_unit": "meters",
            "average_heartrate": 0,
            "min_heartrate": 0,
            "strokeId": 2,
            "calories_burned": 0,
            "swolf": 49,
            "repetition_number": 1,
            "average_speed": 0,
            "rest_time": "",
            "distance": 25
          },
          {
            "rest_time": "",
            "swolf": 0,
            "max_speed": 0,
            "max_heartrate": 0,
            "average_speed": 0,
            "distance": 25,
            "duration": "00:00:40.388",
            "cycles": 0,
            "min_heartrate": 0,
            "distance_unit": "meters",
            "strokeId": 7,
            "average_heartrate": 0,
            "repetition_number": 2,
            "calories_burned": 0
          }
        ],
        "duration": "00:01:07.984",
        "distance": 50,
        "phase": "main",
        "rest_time": "00:00:19.199",
        "interval": "classic",
        "intensity": "mild"
      },
      {
        "distance": 50,
        "duration": "00:01:35.202",
        "phase": "main",
        "distance_unit": "meters",
        "stroke_id": 7,
        "interval": "classic",
        "repetitions": [
          {
            "average_heartrate": 0,
            "min_heartrate": 0,
            "cycles": 0,
            "distance": 25,
            "rest_time": "",
            "repetition_number": 1,
            "average_speed": 0,
            "max_heartrate": 0,
            "swolf": 0,
            "strokeId": 7,
            "distance_unit": "meters",
            "max_speed": 0,
            "duration": "00:00:54.813",
            "calories_burned": 0
          },
          {
            "distance": 25,
            "max_heartrate": 0,
            "swolf": 32,
            "average_heartrate": 0,
            "strokeId": 1,
            "calories_burned": 0,
            "duration": "00:00:24.173",
            "cycles": 8,
            "repetition_number": 2,
            "min_heartrate": 0,
            "rest_time": "",
            "average_speed": 0,
            "max_speed": 0,
            "distance_unit": "meters"
          }
        ],
        "repetition_numbers": 2,
        "rest_time": "00:00:06.754",
        "intensity": "mild"
      },
      {
        "stroke_id": 1,
        "distance_unit": "meters",
        "repetitions": [
          {
            "swolf": 35,
            "repetition_number": 1,
            "max_heartrate": 0,
            "distance": 25,
            "distance_unit": "meters",
            "cycles": 9,
            "average_heartrate": 0,
            "min_heartrate": 0,
            "average_speed": 0,
            "duration": "00:00:26.978",
            "rest_time": "",
            "max_speed": 0,
            "calories_burned": 0,
            "strokeId": 1
          },
          {
            "average_heartrate": 0,
            "max_heartrate": 0,
            "duration": "00:00:25.297",
            "cycles": 9,
            "rest_time": "",
            "max_speed": 0,
            "strokeId": 1,
            "average_speed": 0,
            "calories_burned": 0,
            "repetition_number": 2,
            "swolf": 34,
            "distance": 25,
            "min_heartrate": 0,
            "distance_unit": "meters"
          },
          {
            "min_heartrate": 0,
            "swolf": 39,
            "cycles": 10,
            "strokeId": 1,
            "distance_unit": "meters",
            "calories_burned": 0,
            "average_heartrate": 0,
            "rest_time": "",
            "max_heartrate": 0,
            "distance": 25,
            "average_speed": 0,
            "duration": "00:00:29.843",
            "max_speed": 0,
            "repetition_number": 3
          },
          {
            "cycles": 9,
            "calories_burned": 0,
            "max_heartrate": 0,
            "distance": 25,
            "distance_unit": "meters",
            "min_heartrate": 0,
            "swolf": 33,
            "strokeId": 1,
            "repetition_number": 4,
            "average_speed": 0,
            "duration": "00:00:24.631",
            "max_speed": 0,
            "rest_time": "",
            "average_heartrate": 0
          },
          {
            "distance_unit": "meters",
            "average_heartrate": 0,
            "rest_time": "",
            "max_heartrate": 0,
            "strokeId": 1,
            "duration": "00:00:30.301",
            "max_speed": 0,
            "average_speed": 0,
            "calories_burned": 0,
            "distance": 25,
            "swolf": 41,
            "min_heartrate": 0,
            "repetition_number": 5,
            "cycles": 11
          },
          {
            "average_heartrate": 0,
            "distance": 25,
            "cycles": 10,
            "max_speed": 0,
            "distance_unit": "meters",
            "max_heartrate": 0,
            "duration": "00:00:27.665",
            "min_heartrate": 0,
            "swolf": 37,
            "strokeId": 1,
            "repetition_number": 6,
            "calories_burned": 0,
            "average_speed": 0,
            "rest_time": ""
          }
        ],
        "rest_time": "00:00:52.415",
        "intensity": "mild",
        "distance": 150,
        "phase": "main",
        "duration": "00:02:55.590",
        "repetition_numbers": 6,
        "interval": "classic"
      },
      {
        "phase": "main",
        "intensity": "mild",
        "repetition_numbers": 3,
        "distance": 75,
        "stroke_id": 1,
        "repetitions": [
          {
            "average_heartrate": 0,
            "swolf": 42,
            "max_heartrate": 0,
            "average_speed": 0,
            "rest_time": "",
            "min_heartrate": 0,
            "distance_unit": "meters",
            "duration": "00:00:31.534",
            "strokeId": 1,
            "cycles": 11,
            "calories_burned": 0,
            "max_speed": 0,
            "repetition_number": 1,
            "distance": 25
          },
          {
            "max_heartrate": 0,
            "average_heartrate": 0,
            "duration": "00:00:25.606",
            "average_speed": 0,
            "cycles": 8,
            "strokeId": 1,
            "rest_time": "",
            "repetition_number": 2,
            "calories_burned": 0,
            "distance": 25,
            "max_speed": 0,
            "min_heartrate": 0,
            "swolf": 33,
            "distance_unit": "meters"
          },
          {
            "min_heartrate": 0,
            "distance_unit": "meters",
            "cycles": 7,
            "repetition_number": 3,
            "swolf": 23,
            "strokeId": 1,
            "average_speed": 0,
            "calories_burned": 0,
            "max_speed": 0,
            "distance": 25,
            "max_heartrate": 0,
            "average_heartrate": 0,
            "duration": "00:00:16.155",
            "rest_time": ""
          }
        ],
        "interval": "classic",
        "duration": "00:01:33.341",
        "rest_time": "00:00:11.380",
        "distance_unit": "meters"
      },
      {
        "phase": "main",
        "duration": "00:00:16.155",
        "distance_unit": "meters",
        "interval": "classic",
        "repetitions": [
          {
            "cycles": 7,
            "average_speed": 0,
            "average_heartrate": 0,
            "rest_time": "",
            "max_heartrate": 0,
            "repetition_number": 1,
            "calories_burned": 0,
            "min_heartrate": 0,
            "distance": 25,
            "swolf": 29,
            "strokeId": 1,
            "duration": "00:00:22.064",
            "max_speed": 0,
            "distance_unit": "meters"
          }
        ],
        "distance": 25,
        "stroke_id": 1,
        "rest_time": "00:01:17.145",
        "repetition_numbers": 1,
        "intensity": "mild"
      },
      {
        "phase": "main",
        "interval": "classic",
        "rest_time": "00:00:47.699",
        "repetitions": [
          {
            "average_heartrate": 0,
            "distance_unit": "meters",
            "strokeId": 1,
            "max_heartrate": 0,
            "calories_burned": 0,
            "cycles": 8,
            "min_heartrate": 0,
            "average_speed": 0,
            "distance": 25,
            "duration": "00:00:24.949",
            "max_speed": 0,
            "swolf": 32,
            "rest_time": "",
            "repetition_number": 1
          },
          {
            "average_heartrate": 0,
            "swolf": 25,
            "max_speed": 0,
            "distance": 25,
            "cycles": 8,
            "duration": "00:00:17.766",
            "repetition_number": 2,
            "average_speed": 0,
            "strokeId": 1,
            "min_heartrate": 0,
            "distance_unit": "meters",
            "max_heartrate": 0,
            "calories_burned": 0,
            "rest_time": ""
          }
        ],
        "intensity": "mild",
        "stroke_id": 1,
        "distance": 50,
        "duration": "00:00:48.685",
        "distance_unit": "meters",
        "repetition_numbers": 2
      },
      {
        "repetitions": [
          {
            "distance": 25,
            "duration": "00:00:19.119",
            "distance_unit": "meters",
            "average_heartrate": 0,
            "max_speed": 0,
            "cycles": 9,
            "calories_burned": 0,
            "min_heartrate": 0,
            "repetition_number": 1,
            "max_heartrate": 0,
            "average_speed": 0,
            "rest_time": "",
            "strokeId": 1,
            "swolf": 28
          }
        ],
        "repetition_numbers": 1,
        "duration": "00:00:17.766",
        "intensity": "mild",
        "interval": "classic",
        "rest_time": "00:00:10.723",
        "phase": "main",
        "distance": 25,
        "stroke_id": 1,
        "distance_unit": "meters"
      },
      {
        "rest_time": "00:00:25.287",
        "intensity": "mild",
        "distance": 25,
        "phase": "main",
        "stroke_id": 1,
        "distance_unit": "meters",
        "interval": "classic",
        "repetition_numbers": 1,
        "repetitions": [
          {
            "distance": 25,
            "max_heartrate": 0,
            "distance_unit": "meters",
            "min_heartrate": 0,
            "average_heartrate": 0,
            "repetition_number": 1,
            "swolf": 36,
            "strokeId": 1,
            "max_speed": 0,
            "duration": "00:00:26.620",
            "cycles": 10,
            "calories_burned": 0,
            "average_speed": 0,
            "rest_time": ""
          }
        ],
        "duration": "00:00:19.119"
      },
      {
        "repetition_numbers": 2,
        "distance": 50,
        "phase": "main",
        "duration": "00:00:59.886",
        "repetitions": [
          {
            "average_heartrate": 0,
            "max_speed": 0,
            "repetition_number": 1,
            "strokeId": 1,
            "max_heartrate": 0,
            "duration": "00:00:28.580",
            "rest_time": "",
            "average_speed": 0,
            "distance_unit": "meters",
            "cycles": 11,
            "swolf": 39,
            "min_heartrate": 0,
            "distance": 25,
            "calories_burned": 0
          },
          {
            "distance_unit": "meters",
            "average_speed": 0,
            "calories_burned": 0,
            "min_heartrate": 0,
            "average_heartrate": 0,
            "rest_time": "",
            "cycles": 11,
            "distance": 25,
            "swolf": 40,
            "max_speed": 0,
            "repetition_number": 2,
            "max_heartrate": 0,
            "duration": "00:00:29.266",
            "strokeId": 1
          }
        ],
        "intensity": "mild",
        "distance_unit": "meters",
        "interval": "classic",
        "stroke_id": 1,
        "rest_time": "00:00:29.803"
      },
      {
        "distance": 50,
        "duration": "00:01:04.900",
        "rest_time": "00:00:27.217",
        "intensity": "mild",
        "phase": "main",
        "stroke_id": 1,
        "repetition_numbers": 2,
        "distance_unit": "meters",
        "repetitions": [
          {
            "max_speed": 0,
            "repetition_number": 1,
            "cycles": 10,
            "max_heartrate": 0,
            "strokeId": 1,
            "average_heartrate": 0,
            "rest_time": "",
            "duration": "00:00:26.670",
            "average_speed": 0,
            "distance": 25,
            "swolf": 36,
            "calories_burned": 0,
            "min_heartrate": 0,
            "distance_unit": "meters"
          },
          {
            "duration": "00:00:26.362",
            "rest_time": "",
            "strokeId": 1,
            "max_speed": 0,
            "calories_burned": 0,
            "distance": 25,
            "max_heartrate": 0,
            "repetition_number": 2,
            "swolf": 36,
            "distance_unit": "meters",
            "average_speed": 0,
            "cycles": 10,
            "min_heartrate": 0,
            "average_heartrate": 0
          }
        ],
        "interval": "classic"
      },
      {
        "distance": 75,
        "phase": "main",
        "distance_unit": "meters",
        "intensity": "mild",
        "rest_time": "00:00:17.170",
        "stroke_id": 2,
        "duration": "00:01:42.622",
        "repetition_numbers": 3,
        "repetitions": [
          {
            "min_heartrate": 0,
            "cycles": 11,
            "average_heartrate": 0,
            "max_speed": 0,
            "distance_unit": "meters",
            "strokeId": 1,
            "repetition_number": 1,
            "calories_burned": 0,
            "max_heartrate": 0,
            "distance": 25,
            "swolf": 40,
            "average_speed": 0,
            "rest_time": "",
            "duration": "00:00:29.236"
          },
          {
            "min_heartrate": 0,
            "duration": "00:00:33.047",
            "distance": 25,
            "rest_time": "",
            "repetition_number": 2,
            "distance_unit": "meters",
            "strokeId": 2,
            "max_speed": 0,
            "average_heartrate": 0,
            "cycles": 11,
            "max_heartrate": 0,
            "calories_burned": 0,
            "swolf": 44,
            "average_speed": 0
          },
          {
            "max_speed": 0,
            "min_heartrate": 0,
            "calories_burned": 0,
            "max_heartrate": 0,
            "average_speed": 0,
            "rest_time": "",
            "repetition_number": 3,
            "duration": "00:00:30.301",
            "distance": 25,
            "strokeId": 2,
            "distance_unit": "meters",
            "average_heartrate": 0,
            "cycles": 10,
            "swolf": 40
          }
        ],
        "interval": "classic"
      },
      {
        "interval": "classic",
        "phase": "main",
        "repetition_numbers": 1,
        "distance": 25,
        "distance_unit": "meters",
        "rest_time": "00:00:19.179",
        "repetitions": [
          {
            "duration": "00:00:24.730",
            "rest_time": "",
            "max_heartrate": 0,
            "repetition_number": 1,
            "average_heartrate": 0,
            "cycles": 9,
            "swolf": 33,
            "max_speed": 0,
            "min_heartrate": 0,
            "calories_burned": 0,
            "strokeId": 1,
            "distance": 25,
            "average_speed": 0,
            "distance_unit": "meters"
          }
        ],
        "intensity": "mild",
        "stroke_id": 1,
        "duration": "00:00:30.301"
      },
      {
        "duration": "00:00:24.730",
        "intensity": "mild",
        "rest_time": "00:00:14.514",
        "phase": "main",
        "distance_unit": "meters",
        "repetition_numbers": 1,
        "repetitions": [
          {
            "calories_burned": 0,
            "strokeId": 1,
            "distance": 25,
            "max_heartrate": 0,
            "max_speed": 0,
            "cycles": 10,
            "repetition_number": 1,
            "swolf": 40,
            "average_speed": 0,
            "distance_unit": "meters",
            "average_heartrate": 0,
            "duration": "00:00:30.251",
            "rest_time": "",
            "min_heartrate": 0
          }
        ],
        "distance": 25,
        "interval": "classic",
        "stroke_id": 1
      },
      {
        "interval": "classic",
        "repetitions": [
          {
            "swolf": 33,
            "duration": "00:00:24.899",
            "average_heartrate": 0,
            "distance": 25,
            "min_heartrate": 0,
            "distance_unit": "meters",
            "calories_burned": 0,
            "strokeId": 1,
            "cycles": 9,
            "max_heartrate": 0,
            "average_speed": 0,
            "rest_time": "",
            "repetition_number": 1,
            "max_speed": 0
          }
        ],
        "repetition_numbers": 1,
        "distance_unit": "meters",
        "duration": "00:00:30.251",
        "phase": "main",
        "intensity": "mild",
        "rest_time": "00:02:00.609",
        "distance": 25,
        "stroke_id": 1
      },
      {
        "repetition_numbers": 1,
        "rest_time": "00:00:17.796",
        "stroke_id": 1,
        "phase": "main",
        "repetitions": [
          {
            "strokeId": 1,
            "repetition_number": 1,
            "average_speed": 0,
            "max_speed": 0,
            "average_heartrate": 0,
            "distance": 25,
            "duration": "00:00:28.242",
            "min_heartrate": 0,
            "rest_time": "",
            "distance_unit": "meters",
            "swolf": 40,
            "max_heartrate": 0,
            "cycles": 12,
            "calories_burned": 0
          }
        ],
        "distance": 25,
        "interval": "classic",
        "duration": "00:00:24.899",
        "distance_unit": "meters",
        "intensity": "mild"
      },
      {
        "repetition_numbers": 1,
        "stroke_id": 1,
        "duration": "00:00:28.242",
        "distance": 25,
        "interval": "classic",
        "rest_time": "00:00:15.887",
        "intensity": "mild",
        "distance_unit": "meters",
        "repetitions": [
          {
            "rest_time": "",
            "swolf": 38,
            "strokeId": 1,
            "calories_burned": 0,
            "max_speed": 0,
            "duration": "00:00:28.262",
            "distance_unit": "meters",
            "min_heartrate": 0,
            "average_heartrate": 0,
            "cycles": 10,
            "distance": 25,
            "max_heartrate": 0,
            "repetition_number": 1,
            "average_speed": 0
          }
        ],
        "phase": "main"
      },
      {
        "rest_time": "00:00:16.562",
        "intensity": "mild",
        "distance": 25,
        "duration": "00:00:28.262",
        "distance_unit": "meters",
        "interval": "classic",
        "repetitions": [
          {
            "average_heartrate": 0,
            "max_speed": 0,
            "cycles": 9,
            "duration": "00:00:26.660",
            "distance": 25,
            "repetition_number": 1,
            "max_heartrate": 0,
            "calories_burned": 0,
            "rest_time": "",
            "swolf": 35,
            "min_heartrate": 0,
            "strokeId": 1,
            "average_speed": 0,
            "distance_unit": "meters"
          }
        ],
        "repetition_numbers": 1,
        "stroke_id": 1,
        "phase": "main"
      },
      {
        "distance": 25,
        "repetition_numbers": 1,
        "repetitions": [
          {
            "max_speed": 0,
            "min_heartrate": 0,
            "max_heartrate": 0,
            "average_heartrate": 0,
            "cycles": 11,
            "duration": "00:00:29.654",
            "strokeId": 1,
            "repetition_number": 1,
            "swolf": 40,
            "average_speed": 0,
            "distance_unit": "meters",
            "rest_time": "",
            "distance": 25,
            "calories_burned": 0
          }
        ],
        "phase": "main",
        "duration": "00:00:26.660",
        "intensity": "mild",
        "stroke_id": 1,
        "distance_unit": "meters",
        "interval": "classic",
        "rest_time": "00:00:30.955"
      },
      {
        "repetition_numbers": 1,
        "stroke_id": 1,
        "repetitions": [
          {
            "distance": 25,
            "calories_burned": 220,
            "average_speed": 0.8430378569966355,
            "swolf": 40,
            "rest_time": "00:00:00.000",
            "min_heartrate": 83,
            "max_heartrate": 125,
            "max_speed": 0.8430378569966355,
            "strokeId": 1,
            "duration": "00:00:29.654",
            "repetition_number": 1,
            "average_heartrate": 109,
            "cycles": 11,
            "distance_unit": "meters"
          }
        ],
        "phase": "main",
        "interval": "classic",
        "distance": 25,
        "duration": "00:00:29.654",
        "intensity": "mild",
        "rest_time": "00:00:00.000",
        "distance_unit": "meters"
      }
    ],
    "finished_at": "2025-01-23 12:24:26",
    "name": "Apple Watch 23\/01\/2025",
    "records": {
      "distances": [
        {
          "date": "2025-01-23T11:52:58.508000+0100",
          "value": 25
        },
        {
          "value": 25,
          "date": "2025-01-23T11:53:18.454000+0100"
        },
        {
          "value": 25,
          "date": "2025-01-23T11:53:51.900000+0100"
        },
        {
          "value": 25,
          "date": "2025-01-23T11:54:20.106000+0100"
        },
        {
          "value": 25,
          "date": "2025-01-23T11:55:06.422000+0100"
        },
        {
          "value": 25,
          "date": "2025-01-23T11:55:34.794000+0100"
        },
        {
          "value": 25,
          "date": "2025-01-23T11:56:09.304000+0100"
        },
        {
          "date": "2025-01-23T11:56:38.980000+0100",
          "value": 25
        },
        {
          "date": "2025-01-23T11:57:32.519000+0100",
          "value": 25
        },
        {
          "date": "2025-01-23T11:58:04.134000+0100",
          "value": 25
        },
        {
          "value": 25,
          "date": "2025-01-23T11:58:59.703000+0100"
        },
        {
          "value": 25,
          "date": "2025-01-23T11:59:40.092000+0100"
        },
        {
          "date": "2025-01-23T12:00:41.660000+0100",
          "value": 25
        },
        {
          "date": "2025-01-23T12:01:08.042000+0100",
          "value": 25
        },
        {
          "value": 25,
          "date": "2025-01-23T12:01:40.731000+0100"
        },
        {
          "date": "2025-01-23T12:02:07.723000+0100",
          "value": 25
        },
        {
          "value": 25,
          "date": "2025-01-23T12:02:41.284000+0100"
        },
        {
          "date": "2025-01-23T12:03:06.950000+0100",
          "value": 25
        },
        {
          "date": "2025-01-23T12:04:29.666000+0100",
          "value": 25
        },
        {
          "value": 25,
          "date": "2025-01-23T12:04:57.332000+0100"
        },
        {
          "date": "2025-01-23T12:05:37.402000+0100",
          "value": 25
        },
        {
          "date": "2025-01-23T12:06:14.389000+0100",
          "value": 25
        },
        {
          "value": 25,
          "date": "2025-01-23T12:07:47.690000+0100"
        },
        {
          "value": 25,
          "date": "2025-01-23T12:08:11.427000+0100"
        },
        {
          "date": "2025-01-23T12:09:24.075000+0100",
          "value": 25
        },
        {
          "value": 25,
          "date": "2025-01-23T12:09:52.566000+0100"
        },
        {
          "date": "2025-01-23T12:10:36.974000+0100",
          "value": 25
        },
        {
          "date": "2025-01-23T12:11:08.280000+0100",
          "value": 25
        },
        {
          "date": "2025-01-23T12:12:06.664000+0100",
          "value": 25
        },
        {
          "value": 25,
          "date": "2025-01-23T12:12:44.894000+0100"
        },
        {
          "value": 25,
          "date": "2025-01-23T12:13:38.782000+0100"
        },
        {
          "value": 25,
          "date": "2025-01-23T12:14:11.023000+0100"
        },
        {
          "date": "2025-01-23T12:14:48.357000+0100",
          "value": 25
        },
        {
          "value": 25,
          "date": "2025-01-23T12:15:38.574000+0100"
        },
        {
          "value": 25,
          "date": "2025-01-23T12:16:28.056000+0100"
        },
        {
          "date": "2025-01-23T12:17:07.300000+0100",
          "value": 25
        },
        {
          "value": 25,
          "date": "2025-01-23T12:19:38.161000+0100"
        },
        {
          "date": "2025-01-23T12:20:20.857000+0100",
          "value": 25
        },
        {
          "value": 25,
          "date": "2025-01-23T12:21:04.987000+0100"
        },
        {
          "date": "2025-01-23T12:21:49.812000+0100",
          "value": 25
        },
        {
          "date": "2025-01-23T12:22:47.427000+0100",
          "value": 25
        },
        {
          "value": 25,
          "date": "2025-01-23T12:23:33.556000+0100"
        }
      ],
      "swolf": [
        {
          "value": 26.11110281944275,
          "date": "2025-01-23T11:52:58.508000+0100"
        },
        {
          "date": "2025-01-23T11:53:18.454000+0100",
          "value": 41.17322611808777
        },
        {
          "date": "2025-01-23T11:53:51.900000+0100",
          "value": 35.775845646858215
        },
        {
          "date": "2025-01-23T11:54:20.106000+0100",
          "value": 42.296870827674866
        },
        {
          "date": "2025-01-23T11:55:06.422000+0100",
          "value": 32.865588426589966
        },
        {
          "date": "2025-01-23T11:55:34.794000+0100",
          "value": 40.62521767616272
        },
        {
          "value": 34.27797305583954,
          "date": "2025-01-23T11:56:09.304000+0100"
        },
        {
          "value": 37.68528151512146,
          "date": "2025-01-23T11:56:38.980000+0100"
        },
        {
          "value": 39.56065595149994,
          "date": "2025-01-23T11:57:32.519000+0100"
        },
        {
          "value": 49.36989939212799,
          "date": "2025-01-23T11:58:04.134000+0100"
        },
        {
          "date": "2025-01-23T11:58:59.703000+0100",
          "value": 0
        },
        {
          "value": 0,
          "date": "2025-01-23T11:59:40.092000+0100"
        },
        {
          "value": 32.17354905605316,
          "date": "2025-01-23T12:00:41.660000+0100"
        },
        {
          "value": 35.9788476228714,
          "date": "2025-01-23T12:01:08.042000+0100"
        },
        {
          "value": 34.297597885131836,
          "date": "2025-01-23T12:01:40.731000+0100"
        },
        {
          "date": "2025-01-23T12:02:07.723000+0100",
          "value": 39.843761920928955
        },
        {
          "date": "2025-01-23T12:02:41.284000+0100",
          "value": 33.63105618953705
        },
        {
          "value": 41.301416993141174,
          "date": "2025-01-23T12:03:06.950000+0100"
        },
        {
          "date": "2025-01-23T12:04:29.666000+0100",
          "value": 37.66516554355621
        },
        {
          "date": "2025-01-23T12:04:57.332000+0100",
          "value": 42.53493809700012
        },
        {
          "value": 33.60602939128876,
          "date": "2025-01-23T12:05:37.402000+0100"
        },
        {
          "value": 23.155423879623413,
          "date": "2025-01-23T12:06:14.389000+0100"
        },
        {
          "date": "2025-01-23T12:07:47.690000+0100",
          "value": 29.06442105770111
        },
        {
          "value": 32.9493705034256,
          "date": "2025-01-23T12:08:11.427000+0100"
        },
        {
          "date": "2025-01-23T12:09:24.075000+0100",
          "value": 25.766945958137512
        },
        {
          "date": "2025-01-23T12:09:52.566000+0100",
          "value": 28.11988890171051
        },
        {
          "date": "2025-01-23T12:10:36.974000+0100",
          "value": 36.62054717540741
        },
        {
          "date": "2025-01-23T12:11:08.280000+0100",
          "value": 39.58034610748291
        },
        {
          "date": "2025-01-23T12:12:06.664000+0100",
          "value": 40.266772389411926
        },
        {
          "date": "2025-01-23T12:12:44.894000+0100",
          "value": 36.67033362388611
        },
        {
          "value": 36.36200451850891,
          "date": "2025-01-23T12:13:38.782000+0100"
        },
        {
          "value": 40.23691403865814,
          "date": "2025-01-23T12:14:11.023000+0100"
        },
        {
          "value": 44.04713225364685,
          "date": "2025-01-23T12:14:48.357000+0100"
        },
        {
          "value": 40.301494121551514,
          "date": "2025-01-23T12:15:38.574000+0100"
        },
        {
          "value": 33.73051416873932,
          "date": "2025-01-23T12:16:28.056000+0100"
        },
        {
          "date": "2025-01-23T12:17:07.300000+0100",
          "value": 40.25161552429199
        },
        {
          "date": "2025-01-23T12:19:38.161000+0100",
          "value": 33.8996741771698
        },
        {
          "date": "2025-01-23T12:20:20.857000+0100",
          "value": 40.24220263957977
        },
        {
          "date": "2025-01-23T12:21:04.987000+0100",
          "value": 38.262025475502014
        },
        {
          "date": "2025-01-23T12:21:49.812000+0100",
          "value": 35.66040599346161
        },
        {
          "value": 40.654658794403076,
          "date": "2025-01-23T12:22:47.427000+0100"
        },
        {
          "value": 40.654658794403076,
          "date": "2025-01-23T12:22:47.427000+0100"
        }
      ],
      "speed": [
        {
          "date": "2025-01-23T11:52:58.508000+0100",
          "value": 1.3081401024417156
        },
        {
          "date": "2025-01-23T11:53:18.454000+0100",
          "value": 0.8285491217332374
        },
        {
          "date": "2025-01-23T11:53:51.900000+0100",
          "value": 0.9699002834868085
        },
        {
          "date": "2025-01-23T11:54:20.106000+0100",
          "value": 0.7988019037958666
        },
        {
          "value": 1.0475333586221627,
          "date": "2025-01-23T11:55:06.422000+0100"
        },
        {
          "date": "2025-01-23T11:55:34.794000+0100",
          "value": 0.8438756559792538
        },
        {
          "date": "2025-01-23T11:56:09.304000+0100",
          "value": 0.9890033486773053
        },
        {
          "value": 0.9030068914540463,
          "date": "2025-01-23T11:56:38.980000+0100"
        },
        {
          "value": 0.8753300359226188,
          "date": "2025-01-23T11:57:32.519000+0100"
        },
        {
          "date": "2025-01-23T11:58:04.134000+0100",
          "value": 0.6873816100082771
        },
        {
          "value": 0.618984620208899,
          "date": "2025-01-23T11:58:59.703000+0100"
        },
        {
          "date": "2025-01-23T11:59:40.092000+0100",
          "value": 0.4560942009798651
        },
        {
          "value": 1.0341882336776649,
          "date": "2025-01-23T12:00:41.660000+0100"
        },
        {
          "date": "2025-01-23T12:01:08.042000+0100",
          "value": 0.9266518848198014
        },
        {
          "value": 0.9882361208173547,
          "date": "2025-01-23T12:01:40.731000+0100"
        },
        {
          "date": "2025-01-23T12:02:07.723000+0100",
          "value": 0.837696000465273
        },
        {
          "date": "2025-01-23T12:02:41.284000+0100",
          "value": 1.0149788059279274
        },
        {
          "date": "2025-01-23T12:03:06.950000+0100",
          "value": 0.8250439247002486
        },
        {
          "date": "2025-01-23T12:04:29.666000+0100",
          "value": 0.9036634883185442
        },
        {
          "value": 0.7927714943692317,
          "date": "2025-01-23T12:04:57.332000+0100"
        },
        {
          "date": "2025-01-23T12:05:37.402000+0100",
          "value": 0.9763325511336431
        },
        {
          "value": 1.5474679083804241,
          "date": "2025-01-23T12:06:14.389000+0100"
        },
        {
          "date": "2025-01-23T12:07:47.690000+0100",
          "value": 1.1330458177271907
        },
        {
          "date": "2025-01-23T12:08:11.427000+0100",
          "value": 1.0020292895392873
        },
        {
          "value": 1.407107336224527,
          "date": "2025-01-23T12:09:24.075000+0100"
        },
        {
          "value": 1.3075389783129672,
          "date": "2025-01-23T12:09:52.566000+0100"
        },
        {
          "date": "2025-01-23T12:10:36.974000+0100",
          "value": 0.939124197382971
        },
        {
          "value": 0.8747269856698655,
          "date": "2025-01-23T12:11:08.280000+0100"
        },
        {
          "value": 0.8542110372595937,
          "date": "2025-01-23T12:12:06.664000+0100"
        },
        {
          "value": 0.9373711012602352,
          "date": "2025-01-23T12:12:44.894000+0100"
        },
        {
          "date": "2025-01-23T12:13:38.782000+0100",
          "value": 0.948334561677484
        },
        {
          "value": 0.8550834047308845,
          "date": "2025-01-23T12:14:11.023000+0100"
        },
        {
          "date": "2025-01-23T12:14:48.357000+0100",
          "value": 0.7564952930898013
        },
        {
          "value": 0.8250418246610189,
          "date": "2025-01-23T12:15:38.574000+0100"
        },
        {
          "date": "2025-01-23T12:16:28.056000+0100",
          "value": 1.0108968956092843
        },
        {
          "date": "2025-01-23T12:17:07.300000+0100",
          "value": 0.8264021463556234
        },
        {
          "date": "2025-01-23T12:19:38.161000+0100",
          "value": 1.0040292022343886
        },
        {
          "date": "2025-01-23T12:20:20.857000+0100",
          "value": 0.8852000787277117
        },
        {
          "date": "2025-01-23T12:21:04.987000+0100",
          "value": 0.8845792040514013
        },
        {
          "date": "2025-01-23T12:21:49.812000+0100",
          "value": 0.9377201534789523
        },
        {
          "value": 0.8430378569966355,
          "date": "2025-01-23T12:22:47.427000+0100"
        },
        {
          "value": 0.8430378569966355,
          "date": "2025-01-23T12:22:47.427000+0100"
        }
      ],
      "cycles": [
        {
          "date": "2025-01-23T11:52:58.508000+0100",
          "value": 7
        },
        {
          "date": "2025-01-23T11:53:18.454000+0100",
          "value": 11
        },
        {
          "date": "2025-01-23T11:53:51.900000+0100",
          "value": 10
        },
        {
          "date": "2025-01-23T11:54:20.106000+0100",
          "value": 11
        },
        {
          "date": "2025-01-23T11:55:06.422000+0100",
          "value": 9
        },
        {
          "value": 11,
          "date": "2025-01-23T11:55:34.794000+0100"
        },
        {
          "date": "2025-01-23T11:56:09.304000+0100",
          "value": 9
        },
        {
          "date": "2025-01-23T11:56:38.980000+0100",
          "value": 10
        },
        {
          "value": 11,
          "date": "2025-01-23T11:57:32.519000+0100"
        },
        {
          "date": "2025-01-23T11:58:04.134000+0100",
          "value": 13
        },
        {
          "value": 8,
          "date": "2025-01-23T12:00:41.660000+0100"
        },
        {
          "date": "2025-01-23T12:01:08.042000+0100",
          "value": 9
        },
        {
          "value": 9,
          "date": "2025-01-23T12:01:40.731000+0100"
        },
        {
          "date": "2025-01-23T12:02:07.723000+0100",
          "value": 10
        },
        {
          "date": "2025-01-23T12:02:41.284000+0100",
          "value": 9
        },
        {
          "value": 11,
          "date": "2025-01-23T12:03:06.950000+0100"
        },
        {
          "date": "2025-01-23T12:04:29.666000+0100",
          "value": 10
        },
        {
          "date": "2025-01-23T12:04:57.332000+0100",
          "value": 11
        },
        {
          "date": "2025-01-23T12:05:37.402000+0100",
          "value": 8
        },
        {
          "date": "2025-01-23T12:06:14.389000+0100",
          "value": 7
        },
        {
          "value": 7,
          "date": "2025-01-23T12:07:47.690000+0100"
        },
        {
          "value": 8,
          "date": "2025-01-23T12:08:11.427000+0100"
        },
        {
          "value": 8,
          "date": "2025-01-23T12:09:24.075000+0100"
        },
        {
          "date": "2025-01-23T12:09:52.566000+0100",
          "value": 9
        },
        {
          "value": 10,
          "date": "2025-01-23T12:10:36.974000+0100"
        },
        {
          "date": "2025-01-23T12:11:08.280000+0100",
          "value": 11
        },
        {
          "value": 11,
          "date": "2025-01-23T12:12:06.664000+0100"
        },
        {
          "value": 10,
          "date": "2025-01-23T12:12:44.894000+0100"
        },
        {
          "date": "2025-01-23T12:13:38.782000+0100",
          "value": 10
        },
        {
          "date": "2025-01-23T12:14:11.023000+0100",
          "value": 11
        },
        {
          "date": "2025-01-23T12:14:48.357000+0100",
          "value": 11
        },
        {
          "value": 10,
          "date": "2025-01-23T12:15:38.574000+0100"
        },
        {
          "value": 9,
          "date": "2025-01-23T12:16:28.056000+0100"
        },
        {
          "value": 10,
          "date": "2025-01-23T12:17:07.300000+0100"
        },
        {
          "value": 9,
          "date": "2025-01-23T12:19:38.161000+0100"
        },
        {
          "value": 12,
          "date": "2025-01-23T12:20:20.857000+0100"
        },
        {
          "value": 10,
          "date": "2025-01-23T12:21:04.987000+0100"
        },
        {
          "date": "2025-01-23T12:21:49.812000+0100",
          "value": 9
        },
        {
          "date": "2025-01-23T12:22:47.427000+0100",
          "value": 11
        },
        {
          "value": 13,
          "date": "2025-01-23T12:23:33.556000+0100"
        }
      ],
      "heartrate": [
        {
          "value": 83,
          "date": "2025-01-23T11:52:57.946000+0100"
        },
        {
          "date": "2025-01-23T11:53:02.946000+0100",
          "value": 92.00000000000001
        },
        {
          "value": 102,
          "date": "2025-01-23T11:53:09.946000+0100"
        },
        {
          "value": 102,
          "date": "2025-01-23T11:53:15.946000+0100"
        },
        {
          "date": "2025-01-23T11:53:21.946000+0100",
          "value": 102
        },
        {
          "value": 103,
          "date": "2025-01-23T11:53:23.946000+0100"
        },
        {
          "date": "2025-01-23T11:53:27.946000+0100",
          "value": 104
        },
        {
          "value": 105,
          "date": "2025-01-23T11:53:32.946000+0100"
        },
        {
          "date": "2025-01-23T11:53:40.946000+0100",
          "value": 111
        },
        {
          "date": "2025-01-23T11:53:46.946000+0100",
          "value": 116
        },
        {
          "value": 115,
          "date": "2025-01-23T11:53:48.946000+0100"
        },
        {
          "date": "2025-01-23T11:53:56.946000+0100",
          "value": 111
        },
        {
          "date": "2025-01-23T11:54:00.000000+0100",
          "value": 117
        },
        {
          "date": "2025-01-23T11:54:01.946000+0100",
          "value": 113
        },
        {
          "value": 114,
          "date": "2025-01-23T11:54:02.946000+0100"
        },
        {
          "date": "2025-01-23T11:54:10.946000+0100",
          "value": 115
        },
        {
          "date": "2025-01-23T11:54:15.946000+0100",
          "value": 114
        },
        {
          "date": "2025-01-23T11:54:17.946000+0100",
          "value": 114
        },
        {
          "value": 115,
          "date": "2025-01-23T11:54:22.946000+0100"
        },
        {
          "date": "2025-01-23T11:54:27.946000+0100",
          "value": 116
        },
        {
          "value": 117,
          "date": "2025-01-23T11:54:35.946000+0100"
        },
        {
          "date": "2025-01-23T11:54:38.946000+0100",
          "value": 117
        },
        {
          "date": "2025-01-23T11:54:45.946000+0100",
          "value": 118
        },
        {
          "value": 118,
          "date": "2025-01-23T11:54:47.946000+0100"
        },
        {
          "value": 119,
          "date": "2025-01-23T11:54:53.946000+0100"
        },
        {
          "date": "2025-01-23T11:54:59.946000+0100",
          "value": 119
        },
        {
          "value": 118,
          "date": "2025-01-23T11:55:02.946000+0100"
        },
        {
          "date": "2025-01-23T11:55:07.946000+0100",
          "value": 116
        },
        {
          "date": "2025-01-23T11:55:16.946000+0100",
          "value": 115
        },
        {
          "date": "2025-01-23T11:55:20.946000+0100",
          "value": 118
        },
        {
          "date": "2025-01-23T11:55:22.946000+0100",
          "value": 119
        },
        {
          "date": "2025-01-23T11:55:27.946000+0100",
          "value": 119
        },
        {
          "date": "2025-01-23T11:55:33.946000+0100",
          "value": 118
        },
        {
          "value": 118,
          "date": "2025-01-23T11:55:40.946000+0100"
        },
        {
          "date": "2025-01-23T11:55:43.946000+0100",
          "value": 117
        },
        {
          "date": "2025-01-23T11:55:50.946000+0100",
          "value": 116
        },
        {
          "date": "2025-01-23T11:55:53.946000+0100",
          "value": 116
        },
        {
          "value": 116,
          "date": "2025-01-23T11:55:58.946000+0100"
        },
        {
          "date": "2025-01-23T11:56:00.000000+0100",
          "value": 127
        },
        {
          "value": 117,
          "date": "2025-01-23T11:56:04.946000+0100"
        },
        {
          "date": "2025-01-23T11:56:07.946000+0100",
          "value": 117
        },
        {
          "date": "2025-01-23T11:56:12.946000+0100",
          "value": 119
        },
        {
          "date": "2025-01-23T11:56:19.946000+0100",
          "value": 118
        },
        {
          "date": "2025-01-23T11:56:23.946000+0100",
          "value": 119
        },
        {
          "date": "2025-01-23T11:56:29.946000+0100",
          "value": 118
        },
        {
          "date": "2025-01-23T11:56:36.946000+0100",
          "value": 119
        },
        {
          "date": "2025-01-23T11:56:40.946000+0100",
          "value": 113
        },
        {
          "date": "2025-01-23T11:56:43.946000+0100",
          "value": 116
        },
        {
          "date": "2025-01-23T11:56:51.946000+0100",
          "value": 116
        },
        {
          "value": 116,
          "date": "2025-01-23T11:56:55.946000+0100"
        },
        {
          "value": 116,
          "date": "2025-01-23T11:57:00.946000+0100"
        },
        {
          "date": "2025-01-23T11:57:02.946000+0100",
          "value": 117
        },
        {
          "date": "2025-01-23T11:57:11.946000+0100",
          "value": 108
        },
        {
          "date": "2025-01-23T11:57:16.946000+0100",
          "value": 109
        },
        {
          "date": "2025-01-23T11:57:17.946000+0100",
          "value": 109
        },
        {
          "date": "2025-01-23T11:57:25.946000+0100",
          "value": 107.00000000000001
        },
        {
          "value": 105,
          "date": "2025-01-23T11:57:31.946000+0100"
        },
        {
          "value": 104,
          "date": "2025-01-23T11:57:32.946000+0100"
        },
        {
          "date": "2025-01-23T11:57:37.946000+0100",
          "value": 104
        },
        {
          "date": "2025-01-23T11:57:42.946000+0100",
          "value": 105
        },
        {
          "date": "2025-01-23T11:57:48.946000+0100",
          "value": 106
        },
        {
          "value": 107.00000000000001,
          "date": "2025-01-23T11:57:52.946000+0100"
        },
        {
          "value": 108,
          "date": "2025-01-23T11:57:59.571000+0100"
        },
        {
          "date": "2025-01-23T11:58:00.000000+0100",
          "value": 104
        },
        {
          "value": 108,
          "date": "2025-01-23T11:58:07.571000+0100"
        },
        {
          "value": 109,
          "date": "2025-01-23T11:58:08.571000+0100"
        },
        {
          "value": 108,
          "date": "2025-01-23T11:58:17.571000+0100"
        },
        {
          "date": "2025-01-23T11:58:22.571000+0100",
          "value": 115
        },
        {
          "date": "2025-01-23T11:58:26.571000+0100",
          "value": 117
        },
        {
          "date": "2025-01-23T11:58:31.571000+0100",
          "value": 119
        },
        {
          "date": "2025-01-23T11:58:33.571000+0100",
          "value": 121
        },
        {
          "date": "2025-01-23T11:58:38.571000+0100",
          "value": 120
        },
        {
          "date": "2025-01-23T11:58:47.571000+0100",
          "value": 124.00000000000001
        },
        {
          "date": "2025-01-23T11:58:51.571000+0100",
          "value": 122.99999999999999
        },
        {
          "date": "2025-01-23T11:58:53.571000+0100",
          "value": 122
        },
        {
          "date": "2025-01-23T11:58:58.571000+0100",
          "value": 120
        },
        {
          "date": "2025-01-23T11:59:07.571000+0100",
          "value": 119
        },
        {
          "value": 114,
          "date": "2025-01-23T11:59:11.571000+0100"
        },
        {
          "value": 112,
          "date": "2025-01-23T11:59:16.571000+0100"
        },
        {
          "value": 112,
          "date": "2025-01-23T11:59:18.571000+0100"
        },
        {
          "value": 112,
          "date": "2025-01-23T11:59:26.571000+0100"
        },
        {
          "value": 112,
          "date": "2025-01-23T11:59:28.571000+0100"
        },
        {
          "date": "2025-01-23T11:59:34.571000+0100",
          "value": 114
        },
        {
          "date": "2025-01-23T11:59:40.571000+0100",
          "value": 117
        },
        {
          "value": 113,
          "date": "2025-01-23T11:59:46.571000+0100"
        },
        {
          "date": "2025-01-23T11:59:51.571000+0100",
          "value": 112
        },
        {
          "date": "2025-01-23T11:59:56.571000+0100",
          "value": 110
        },
        {
          "date": "2025-01-23T11:59:59.571000+0100",
          "value": 109
        },
        {
          "date": "2025-01-23T12:00:00.000000+0100",
          "value": 81
        },
        {
          "date": "2025-01-23T12:00:07.571000+0100",
          "value": 118
        },
        {
          "value": 116,
          "date": "2025-01-23T12:00:12.571000+0100"
        },
        {
          "value": 115,
          "date": "2025-01-23T12:00:14.571000+0100"
        },
        {
          "value": 114,
          "date": "2025-01-23T12:00:19.571000+0100"
        },
        {
          "value": 112,
          "date": "2025-01-23T12:00:23.571000+0100"
        },
        {
          "date": "2025-01-23T12:00:32.571000+0100",
          "value": 113
        },
        {
          "date": "2025-01-23T12:00:35.571000+0100",
          "value": 109
        },
        {
          "value": 102,
          "date": "2025-01-23T12:00:40.571000+0100"
        },
        {
          "date": "2025-01-23T12:00:43.571000+0100",
          "value": 105
        },
        {
          "date": "2025-01-23T12:00:52.571000+0100",
          "value": 110
        },
        {
          "value": 112,
          "date": "2025-01-23T12:00:56.571000+0100"
        },
        {
          "value": 114,
          "date": "2025-01-23T12:01:00.571000+0100"
        },
        {
          "value": 110,
          "date": "2025-01-23T12:01:06.571000+0100"
        },
        {
          "value": 110,
          "date": "2025-01-23T12:01:12.571000+0100"
        },
        {
          "value": 110,
          "date": "2025-01-23T12:01:15.571000+0100"
        },
        {
          "date": "2025-01-23T12:01:18.571000+0100",
          "value": 111
        },
        {
          "value": 114,
          "date": "2025-01-23T12:01:27.571000+0100"
        },
        {
          "date": "2025-01-23T12:01:32.571000+0100",
          "value": 116
        },
        {
          "date": "2025-01-23T12:01:34.571000+0100",
          "value": 116
        },
        {
          "date": "2025-01-23T12:01:40.571000+0100",
          "value": 114
        },
        {
          "date": "2025-01-23T12:01:47.571000+0100",
          "value": 115
        },
        {
          "date": "2025-01-23T12:01:48.571000+0100",
          "value": 114
        },
        {
          "value": 112,
          "date": "2025-01-23T12:01:57.571000+0100"
        },
        {
          "date": "2025-01-23T12:02:00.000000+0100",
          "value": 130
        },
        {
          "date": "2025-01-23T12:02:00.571000+0100",
          "value": 114
        },
        {
          "value": 115,
          "date": "2025-01-23T12:02:03.571000+0100"
        },
        {
          "date": "2025-01-23T12:02:08.571000+0100",
          "value": 117
        },
        {
          "date": "2025-01-23T12:02:17.571000+0100",
          "value": 117
        },
        {
          "value": 117,
          "date": "2025-01-23T12:02:19.571000+0100"
        },
        {
          "date": "2025-01-23T12:02:25.571000+0100",
          "value": 118
        },
        {
          "value": 118,
          "date": "2025-01-23T12:02:31.571000+0100"
        },
        {
          "date": "2025-01-23T12:02:35.571000+0100",
          "value": 117
        },
        {
          "value": 118,
          "date": "2025-01-23T12:02:38.571000+0100"
        },
        {
          "date": "2025-01-23T12:02:47.571000+0100",
          "value": 118
        },
        {
          "value": 119,
          "date": "2025-01-23T12:02:51.571000+0100"
        },
        {
          "date": "2025-01-23T12:02:57.571000+0100",
          "value": 119
        },
        {
          "date": "2025-01-23T12:02:59.571000+0100",
          "value": 119
        },
        {
          "date": "2025-01-23T12:03:04.571000+0100",
          "value": 119
        },
        {
          "date": "2025-01-23T12:03:08.571000+0100",
          "value": 120
        },
        {
          "date": "2025-01-23T12:03:17.571000+0100",
          "value": 120
        },
        {
          "value": 122,
          "date": "2025-01-23T12:03:21.571000+0100"
        },
        {
          "date": "2025-01-23T12:03:23.571000+0100",
          "value": 121
        },
        {
          "date": "2025-01-23T12:03:28.571000+0100",
          "value": 119
        },
        {
          "value": 120,
          "date": "2025-01-23T12:03:36.571000+0100"
        },
        {
          "value": 120,
          "date": "2025-01-23T12:03:42.571000+0100"
        },
        {
          "value": 120,
          "date": "2025-01-23T12:03:46.571000+0100"
        },
        {
          "date": "2025-01-23T12:03:51.571000+0100",
          "value": 120
        },
        {
          "value": 119,
          "date": "2025-01-23T12:03:53.571000+0100"
        },
        {
          "date": "2025-01-23T12:04:00.000000+0100",
          "value": 153
        },
        {
          "date": "2025-01-23T12:04:01.571000+0100",
          "value": 113
        },
        {
          "date": "2025-01-23T12:04:03.571000+0100",
          "value": 112
        },
        {
          "date": "2025-01-23T12:04:08.571000+0100",
          "value": 111
        },
        {
          "value": 103,
          "date": "2025-01-23T12:04:17.571000+0100"
        },
        {
          "value": 102,
          "date": "2025-01-23T12:04:22.571000+0100"
        },
        {
          "date": "2025-01-23T12:04:23.571000+0100",
          "value": 102
        },
        {
          "value": 103,
          "date": "2025-01-23T12:04:31.571000+0100"
        },
        {
          "value": 102,
          "date": "2025-01-23T12:04:33.571000+0100"
        },
        {
          "date": "2025-01-23T12:04:38.571000+0100",
          "value": 103
        },
        {
          "value": 108,
          "date": "2025-01-23T12:04:46.571000+0100"
        },
        {
          "value": 107.00000000000001,
          "date": "2025-01-23T12:04:51.571000+0100"
        },
        {
          "date": "2025-01-23T12:04:56.571000+0100",
          "value": 106
        },
        {
          "date": "2025-01-23T12:04:59.571000+0100",
          "value": 107.00000000000001
        },
        {
          "date": "2025-01-23T12:05:07.571000+0100",
          "value": 106
        },
        {
          "value": 106,
          "date": "2025-01-23T12:05:08.571000+0100"
        },
        {
          "date": "2025-01-23T12:05:13.571000+0100",
          "value": 108
        },
        {
          "value": 111,
          "date": "2025-01-23T12:05:21.571000+0100"
        },
        {
          "date": "2025-01-23T12:05:23.571000+0100",
          "value": 111
        },
        {
          "date": "2025-01-23T12:05:31.571000+0100",
          "value": 113
        },
        {
          "date": "2025-01-23T12:05:35.821000+0100",
          "value": 110
        },
        {
          "date": "2025-01-23T12:05:39.821000+0100",
          "value": 110
        },
        {
          "value": 111,
          "date": "2025-01-23T12:05:48.821000+0100"
        },
        {
          "date": "2025-01-23T12:05:51.821000+0100",
          "value": 111
        },
        {
          "value": 111,
          "date": "2025-01-23T12:05:56.821000+0100"
        },
        {
          "value": 138,
          "date": "2025-01-23T12:06:00.000000+0100"
        },
        {
          "date": "2025-01-23T12:06:00.821000+0100",
          "value": 112
        },
        {
          "date": "2025-01-23T12:06:08.821000+0100",
          "value": 111
        },
        {
          "value": 112,
          "date": "2025-01-23T12:06:13.821000+0100"
        },
        {
          "date": "2025-01-23T12:06:14.821000+0100",
          "value": 111
        },
        {
          "date": "2025-01-23T12:06:19.821000+0100",
          "value": 106
        },
        {
          "date": "2025-01-23T12:06:26.821000+0100",
          "value": 117
        },
        {
          "date": "2025-01-23T12:06:33.821000+0100",
          "value": 119
        },
        {
          "value": 119,
          "date": "2025-01-23T12:06:38.821000+0100"
        },
        {
          "date": "2025-01-23T12:06:39.821000+0100",
          "value": 119
        },
        {
          "value": 117,
          "date": "2025-01-23T12:06:46.821000+0100"
        },
        {
          "date": "2025-01-23T12:06:52.821000+0100",
          "value": 117
        },
        {
          "date": "2025-01-23T12:06:58.821000+0100",
          "value": 113
        },
        {
          "date": "2025-01-23T12:07:02.821000+0100",
          "value": 111
        },
        {
          "date": "2025-01-23T12:07:08.821000+0100",
          "value": 108
        },
        {
          "date": "2025-01-23T12:07:09.821000+0100",
          "value": 108
        },
        {
          "date": "2025-01-23T12:07:18.821000+0100",
          "value": 104
        },
        {
          "date": "2025-01-23T12:07:20.821000+0100",
          "value": 104
        },
        {
          "date": "2025-01-23T12:07:28.821000+0100",
          "value": 100
        },
        {
          "value": 100,
          "date": "2025-01-23T12:07:30.821000+0100"
        },
        {
          "date": "2025-01-23T12:07:37.821000+0100",
          "value": 101
        },
        {
          "value": 98,
          "date": "2025-01-23T12:07:43.821000+0100"
        },
        {
          "date": "2025-01-23T12:07:45.821000+0100",
          "value": 98
        },
        {
          "value": 103,
          "date": "2025-01-23T12:07:53.821000+0100"
        },
        {
          "date": "2025-01-23T12:07:54.821000+0100",
          "value": 102
        },
        {
          "value": 105,
          "date": "2025-01-23T12:07:59.821000+0100"
        },
        {
          "value": 116,
          "date": "2025-01-23T12:08:00.000000+0100"
        },
        {
          "value": 108,
          "date": "2025-01-23T12:08:07.821000+0100"
        },
        {
          "date": "2025-01-23T12:08:09.821000+0100",
          "value": 108
        },
        {
          "date": "2025-01-23T12:08:17.821000+0100",
          "value": 108
        },
        {
          "value": 109,
          "date": "2025-01-23T12:08:19.821000+0100"
        },
        {
          "date": "2025-01-23T12:08:24.821000+0100",
          "value": 106
        },
        {
          "value": 108,
          "date": "2025-01-23T12:08:33.821000+0100"
        },
        {
          "value": 114,
          "date": "2025-01-23T12:08:38.821000+0100"
        },
        {
          "value": 113,
          "date": "2025-01-23T12:08:43.821000+0100"
        },
        {
          "date": "2025-01-23T12:08:48.821000+0100",
          "value": 114
        },
        {
          "date": "2025-01-23T12:08:52.821000+0100",
          "value": 114
        },
        {
          "value": 112,
          "date": "2025-01-23T12:08:56.821000+0100"
        },
        {
          "date": "2025-01-23T12:08:59.821000+0100",
          "value": 111
        },
        {
          "date": "2025-01-23T12:09:08.821000+0100",
          "value": 99
        },
        {
          "date": "2025-01-23T12:09:12.821000+0100",
          "value": 98
        },
        {
          "date": "2025-01-23T12:09:17.821000+0100",
          "value": 97
        },
        {
          "value": 95,
          "date": "2025-01-23T12:09:21.821000+0100"
        },
        {
          "value": 95,
          "date": "2025-01-23T12:09:24.821000+0100"
        },
        {
          "date": "2025-01-23T12:09:29.821000+0100",
          "value": 100
        },
        {
          "value": 103,
          "date": "2025-01-23T12:09:34.821000+0100"
        },
        {
          "date": "2025-01-23T12:09:39.821000+0100",
          "value": 107.00000000000001
        },
        {
          "date": "2025-01-23T12:09:44.821000+0100",
          "value": 111
        },
        {
          "date": "2025-01-23T12:09:50.821000+0100",
          "value": 110
        },
        {
          "date": "2025-01-23T12:09:54.821000+0100",
          "value": 111
        },
        {
          "date": "2025-01-23T12:10:00.000000+0100",
          "value": 115
        },
        {
          "date": "2025-01-23T12:10:00.821000+0100",
          "value": 108
        },
        {
          "date": "2025-01-23T12:10:08.821000+0100",
          "value": 113
        },
        {
          "date": "2025-01-23T12:10:10.821000+0100",
          "value": 116
        },
        {
          "date": "2025-01-23T12:10:15.821000+0100",
          "value": 121
        },
        {
          "date": "2025-01-23T12:10:23.821000+0100",
          "value": 122
        },
        {
          "date": "2025-01-23T12:10:25.821000+0100",
          "value": 117
        },
        {
          "value": 115,
          "date": "2025-01-23T12:10:30.821000+0100"
        },
        {
          "date": "2025-01-23T12:10:36.821000+0100",
          "value": 113
        },
        {
          "value": 112,
          "date": "2025-01-23T12:10:43.821000+0100"
        },
        {
          "date": "2025-01-23T12:10:49.821000+0100",
          "value": 113
        },
        {
          "date": "2025-01-23T12:10:53.821000+0100",
          "value": 116
        },
        {
          "value": 115,
          "date": "2025-01-23T12:10:55.821000+0100"
        },
        {
          "date": "2025-01-23T12:11:12.821000+0100",
          "value": 115
        },
        {
          "value": 113,
          "date": "2025-01-23T12:11:29.821000+0100"
        },
        {
          "date": "2025-01-23T12:11:32.821000+0100",
          "value": 113
        },
        {
          "value": 113,
          "date": "2025-01-23T12:11:36.821000+0100"
        },
        {
          "date": "2025-01-23T12:11:40.821000+0100",
          "value": 111
        },
        {
          "date": "2025-01-23T12:11:49.821000+0100",
          "value": 106
        },
        {
          "date": "2025-01-23T12:11:54.821000+0100",
          "value": 104
        },
        {
          "date": "2025-01-23T12:11:55.821000+0100",
          "value": 103
        },
        {
          "date": "2025-01-23T12:12:00.000000+0100",
          "value": 120
        },
        {
          "date": "2025-01-23T12:12:00.821000+0100",
          "value": 103
        },
        {
          "value": 97,
          "date": "2025-01-23T12:12:07.821000+0100"
        },
        {
          "date": "2025-01-23T12:12:10.821000+0100",
          "value": 97
        },
        {
          "date": "2025-01-23T12:12:15.821000+0100",
          "value": 102
        },
        {
          "date": "2025-01-23T12:12:20.821000+0100",
          "value": 105
        },
        {
          "date": "2025-01-23T12:12:29.821000+0100",
          "value": 110
        },
        {
          "date": "2025-01-23T12:12:30.821000+0100",
          "value": 110
        },
        {
          "date": "2025-01-23T12:12:39.821000+0100",
          "value": 111
        },
        {
          "value": 109,
          "date": "2025-01-23T12:12:44.821000+0100"
        },
        {
          "date": "2025-01-23T12:12:45.821000+0100",
          "value": 108
        },
        {
          "value": 109,
          "date": "2025-01-23T12:12:50.821000+0100"
        },
        {
          "date": "2025-01-23T12:12:59.821000+0100",
          "value": 111
        },
        {
          "value": 111,
          "date": "2025-01-23T12:13:02.821000+0100"
        },
        {
          "value": 112,
          "date": "2025-01-23T12:13:05.821000+0100"
        },
        {
          "value": 112,
          "date": "2025-01-23T12:13:11.821000+0100"
        },
        {
          "value": 110,
          "date": "2025-01-23T12:13:17.821000+0100"
        },
        {
          "date": "2025-01-23T12:13:20.821000+0100",
          "value": 108
        },
        {
          "date": "2025-01-23T12:13:25.821000+0100",
          "value": 106
        },
        {
          "date": "2025-01-23T12:13:30.821000+0100",
          "value": 104
        },
        {
          "value": 101,
          "date": "2025-01-23T12:13:39.821000+0100"
        },
        {
          "date": "2025-01-23T12:13:41.821000+0100",
          "value": 101
        },
        {
          "date": "2025-01-23T12:13:45.821000+0100",
          "value": 97
        },
        {
          "date": "2025-01-23T12:13:50.821000+0100",
          "value": 100
        },
        {
          "value": 106,
          "date": "2025-01-23T12:13:55.821000+0100"
        },
        {
          "date": "2025-01-23T12:14:00.000000+0100",
          "value": 114
        },
        {
          "date": "2025-01-23T12:14:03.821000+0100",
          "value": 109
        },
        {
          "value": 111,
          "date": "2025-01-23T12:14:08.821000+0100"
        },
        {
          "value": 112,
          "date": "2025-01-23T12:14:10.821000+0100"
        },
        {
          "date": "2025-01-23T12:14:16.821000+0100",
          "value": 111
        },
        {
          "date": "2025-01-23T12:14:23.821000+0100",
          "value": 110
        },
        {
          "date": "2025-01-23T12:14:28.821000+0100",
          "value": 111
        },
        {
          "date": "2025-01-23T12:14:32.821000+0100",
          "value": 111
        },
        {
          "date": "2025-01-23T12:14:35.821000+0100",
          "value": 112
        },
        {
          "date": "2025-01-23T12:14:41.821000+0100",
          "value": 112
        },
        {
          "value": 112,
          "date": "2025-01-23T12:14:49.821000+0100"
        },
        {
          "date": "2025-01-23T12:14:50.821000+0100",
          "value": 111
        },
        {
          "date": "2025-01-23T12:14:55.821000+0100",
          "value": 110
        },
        {
          "date": "2025-01-23T12:15:03.821000+0100",
          "value": 109
        },
        {
          "value": 110,
          "date": "2025-01-23T12:15:06.821000+0100"
        },
        {
          "date": "2025-01-23T12:15:10.821000+0100",
          "value": 110
        },
        {
          "date": "2025-01-23T12:15:29.821000+0100",
          "value": 109
        },
        {
          "date": "2025-01-23T12:15:30.821000+0100",
          "value": 112
        },
        {
          "date": "2025-01-23T12:15:35.821000+0100",
          "value": 104
        },
        {
          "date": "2025-01-23T12:15:40.821000+0100",
          "value": 104
        },
        {
          "value": 103,
          "date": "2025-01-23T12:15:48.821000+0100"
        },
        {
          "date": "2025-01-23T12:15:51.821000+0100",
          "value": 103
        },
        {
          "value": 104,
          "date": "2025-01-23T12:15:56.821000+0100"
        },
        {
          "date": "2025-01-23T12:16:00.000000+0100",
          "value": 110
        },
        {
          "date": "2025-01-23T12:16:01.821000+0100",
          "value": 105
        },
        {
          "date": "2025-01-23T12:16:09.821000+0100",
          "value": 106
        },
        {
          "date": "2025-01-23T12:16:14.821000+0100",
          "value": 106
        },
        {
          "value": 108,
          "date": "2025-01-23T12:16:15.821000+0100"
        },
        {
          "date": "2025-01-23T12:16:24.821000+0100",
          "value": 106
        },
        {
          "date": "2025-01-23T12:16:27.821000+0100",
          "value": 108
        },
        {
          "date": "2025-01-23T12:16:31.821000+0100",
          "value": 108
        },
        {
          "date": "2025-01-23T12:16:35.821000+0100",
          "value": 110
        },
        {
          "date": "2025-01-23T12:16:40.821000+0100",
          "value": 112
        },
        {
          "date": "2025-01-23T12:16:45.821000+0100",
          "value": 114
        },
        {
          "value": 116,
          "date": "2025-01-23T12:16:50.821000+0100"
        },
        {
          "value": 114,
          "date": "2025-01-23T12:16:59.821000+0100"
        },
        {
          "date": "2025-01-23T12:17:03.821000+0100",
          "value": 111
        },
        {
          "value": 108,
          "date": "2025-01-23T12:17:06.821000+0100"
        },
        {
          "value": 106,
          "date": "2025-01-23T12:17:10.821000+0100"
        },
        {
          "value": 105,
          "date": "2025-01-23T12:17:15.821000+0100"
        },
        {
          "date": "2025-01-23T12:17:23.821000+0100",
          "value": 105
        },
        {
          "value": 106,
          "date": "2025-01-23T12:17:25.821000+0100"
        },
        {
          "value": 107.00000000000001,
          "date": "2025-01-23T12:17:34.821000+0100"
        },
        {
          "value": 107.00000000000001,
          "date": "2025-01-23T12:17:35.821000+0100"
        },
        {
          "date": "2025-01-23T12:17:40.821000+0100",
          "value": 107.00000000000001
        },
        {
          "date": "2025-01-23T12:17:46.821000+0100",
          "value": 107.00000000000001
        },
        {
          "value": 103,
          "date": "2025-01-23T12:17:54.821000+0100"
        },
        {
          "value": 102,
          "date": "2025-01-23T12:17:57.821000+0100"
        },
        {
          "value": 112,
          "date": "2025-01-23T12:18:00.000000+0100"
        },
        {
          "value": 99,
          "date": "2025-01-23T12:18:02.821000+0100"
        },
        {
          "value": 98,
          "date": "2025-01-23T12:18:08.821000+0100"
        },
        {
          "value": 97,
          "date": "2025-01-23T12:18:10.821000+0100"
        },
        {
          "value": 90,
          "date": "2025-01-23T12:18:16.821000+0100"
        },
        {
          "date": "2025-01-23T12:18:24.821000+0100",
          "value": 91
        },
        {
          "date": "2025-01-23T12:18:25.821000+0100",
          "value": 91
        },
        {
          "date": "2025-01-23T12:18:30.821000+0100",
          "value": 94
        },
        {
          "date": "2025-01-23T12:18:36.821000+0100",
          "value": 93
        },
        {
          "date": "2025-01-23T12:18:40.821000+0100",
          "value": 93
        },
        {
          "value": 88,
          "date": "2025-01-23T12:18:49.821000+0100"
        },
        {
          "date": "2025-01-23T12:18:53.821000+0100",
          "value": 86
        },
        {
          "value": 85,
          "date": "2025-01-23T12:18:55.821000+0100"
        },
        {
          "value": 89,
          "date": "2025-01-23T12:19:03.821000+0100"
        },
        {
          "value": 89,
          "date": "2025-01-23T12:19:08.821000+0100"
        },
        {
          "value": 85,
          "date": "2025-01-23T12:19:13.821000+0100"
        },
        {
          "value": 92.00000000000001,
          "date": "2025-01-23T12:19:19.821000+0100"
        },
        {
          "date": "2025-01-23T12:19:24.821000+0100",
          "value": 90
        },
        {
          "date": "2025-01-23T12:19:26.821000+0100",
          "value": 89
        },
        {
          "date": "2025-01-23T12:19:31.821000+0100",
          "value": 87
        },
        {
          "date": "2025-01-23T12:19:35.821000+0100",
          "value": 88
        },
        {
          "date": "2025-01-23T12:19:40.821000+0100",
          "value": 89
        },
        {
          "date": "2025-01-23T12:19:45.821000+0100",
          "value": 94
        },
        {
          "date": "2025-01-23T12:19:53.821000+0100",
          "value": 101
        },
        {
          "date": "2025-01-23T12:19:55.821000+0100",
          "value": 103
        },
        {
          "date": "2025-01-23T12:20:00.000000+0100",
          "value": 88
        },
        {
          "value": 106,
          "date": "2025-01-23T12:20:01.821000+0100"
        },
        {
          "date": "2025-01-23T12:20:08.821000+0100",
          "value": 108
        },
        {
          "date": "2025-01-23T12:20:13.821000+0100",
          "value": 105
        },
        {
          "value": 104,
          "date": "2025-01-23T12:20:17.821000+0100"
        },
        {
          "date": "2025-01-23T12:20:22.821000+0100",
          "value": 101
        },
        {
          "value": 100,
          "date": "2025-01-23T12:20:25.821000+0100"
        },
        {
          "date": "2025-01-23T12:20:30.821000+0100",
          "value": 100
        },
        {
          "date": "2025-01-23T12:20:35.821000+0100",
          "value": 102
        },
        {
          "date": "2025-01-23T12:20:40.821000+0100",
          "value": 105
        },
        {
          "date": "2025-01-23T12:20:45.821000+0100",
          "value": 107.00000000000001
        },
        {
          "date": "2025-01-23T12:20:50.821000+0100",
          "value": 108
        },
        {
          "value": 109,
          "date": "2025-01-23T12:20:56.821000+0100"
        },
        {
          "date": "2025-01-23T12:21:04.821000+0100",
          "value": 109
        },
        {
          "value": 108,
          "date": "2025-01-23T12:21:06.821000+0100"
        },
        {
          "value": 106,
          "date": "2025-01-23T12:21:10.821000+0100"
        },
        {
          "date": "2025-01-23T12:21:15.821000+0100",
          "value": 106
        },
        {
          "date": "2025-01-23T12:21:20.821000+0100",
          "value": 110
        },
        {
          "value": 113,
          "date": "2025-01-23T12:21:25.821000+0100"
        },
        {
          "value": 113,
          "date": "2025-01-23T12:21:31.821000+0100"
        },
        {
          "date": "2025-01-23T12:21:39.821000+0100",
          "value": 111
        },
        {
          "value": 109,
          "date": "2025-01-23T12:21:43.821000+0100"
        },
        {
          "date": "2025-01-23T12:21:47.821000+0100",
          "value": 104
        },
        {
          "value": 104,
          "date": "2025-01-23T12:21:50.821000+0100"
        },
        {
          "date": "2025-01-23T12:21:55.821000+0100",
          "value": 103
        },
        {
          "date": "2025-01-23T12:22:00.000000+0100",
          "value": 117
        },
        {
          "value": 106,
          "date": "2025-01-23T12:22:00.821000+0100"
        },
        {
          "date": "2025-01-23T12:22:05.821000+0100",
          "value": 110
        },
        {
          "value": 113,
          "date": "2025-01-23T12:22:13.821000+0100"
        },
        {
          "value": 113,
          "date": "2025-01-23T12:22:17.821000+0100"
        },
        {
          "value": 111,
          "date": "2025-01-23T12:22:24.821000+0100"
        },
        {
          "date": "2025-01-23T12:22:29.821000+0100",
          "value": 108
        },
        {
          "date": "2025-01-23T12:22:30.821000+0100",
          "value": 106
        },
        {
          "value": 103,
          "date": "2025-01-23T12:22:36.821000+0100"
        },
        {
          "value": 103,
          "date": "2025-01-23T12:22:40.821000+0100"
        },
        {
          "date": "2025-01-23T12:22:48.821000+0100",
          "value": 102
        },
        {
          "date": "2025-01-23T12:22:50.821000+0100",
          "value": 101
        },
        {
          "value": 100,
          "date": "2025-01-23T12:22:56.821000+0100"
        },
        {
          "date": "2025-01-23T12:23:00.821000+0100",
          "value": 105
        },
        {
          "date": "2025-01-23T12:23:08.821000+0100",
          "value": 110
        },
        {
          "date": "2025-01-23T12:23:10.821000+0100",
          "value": 111
        },
        {
          "value": 113,
          "date": "2025-01-23T12:23:18.821000+0100"
        },
        {
          "date": "2025-01-23T12:23:20.821000+0100",
          "value": 114
        },
        {
          "value": 113,
          "date": "2025-01-23T12:23:25.821000+0100"
        },
        {
          "date": "2025-01-23T12:23:32.821000+0100",
          "value": 106
        },
        {
          "value": 98,
          "date": "2025-01-23T12:23:37.821000+0100"
        },
        {
          "value": 98,
          "date": "2025-01-23T12:23:40.821000+0100"
        },
        {
          "value": 103,
          "date": "2025-01-23T12:23:46.821000+0100"
        },
        {
          "date": "2025-01-23T12:23:51.821000+0100",
          "value": 106
        },
        {
          "value": 107.00000000000001,
          "date": "2025-01-23T12:23:57.821000+0100"
        },
        {
          "date": "2025-01-23T12:24:00.000000+0100",
          "value": 114
        },
        {
          "date": "2025-01-23T12:24:01.821000+0100",
          "value": 109
        },
        {
          "date": "2025-01-23T12:24:09.821000+0100",
          "value": 109
        },
        {
          "date": "2025-01-23T12:24:10.821000+0100",
          "value": 109
        },
        {
          "value": 107.00000000000001,
          "date": "2025-01-23T12:24:16.821000+0100"
        },
        {
          "date": "2025-01-23T12:24:24.821000+0100",
          "value": 95
        }
      ]
    },
    "provider_id": "EB9B9453-4E69-4E0A-BFEF-1EB7244EB646",
    "swimming_location": "pool",
    "pool_length": 25,
    "device": "Watch7,1 (10.5)"
  }
]

Thanks for providing the screenshots, which are quite helpful.

Your screenshots show the data per set. From there, I calculated the total of each activity and got the following:

  • Kick-board: 50
  • Breaststroke: 75
  • Freestyle: 925

This is different from the data shown in Fitness.app, which is:

  • Kick-board: 50
  • Breaststroke: 100
  • Freestyle: 875

This inconsistency is probably because Fitness.app does something wrong, and so I'd suggest that you file a feedback report with all the information, and share your report ID here. I can probably use your report to see what the HealthKit folks have to say.

The total of all activities from the per-set data, which is 1050, is the same as the Distance in Fitness.app.

To get the per-set data and the total distance for a swimming workout, you might consider the following:

  1. Use HKWorkout.statistics(for:) + .distanceSwimming to retrive the total distance.

  2. Use HKWorkout.workoutEvents to retrive the per-segment (.segment) or per-lap (.lap) data.

You have the real swimming workout data, so if you don't mind, please give them a try and share if what you get from the APIs matches the real situation.

Best,
——
Ziqiao Chen
 Worldwide Developer Relations.

How to get the same swimming distance like in the Fitness app
 
 
Q