From 7ee25292fc9841bd9bf27701bb6103f52e55ad79 Mon Sep 17 00:00:00 2001 From: Jaap van Ekris <82339657+JaapvanEkris@users.noreply.github.com> Date: Sun, 7 Nov 2021 14:53:11 +0100 Subject: [PATCH] Improved Rowing Engine (#24) * Update to accomodate the new RowingEngine Update of the MovingFlankDetector to provide the values needed to determine the speeds at the beginning of the flank. * Created the MovingAverager for RowingEngine 2.0 Added the MovingAverager to accomodate the RowingEngine 2.0 * Update to RowingEngine 2.0 Update based on the great theoretical work of Anu Dudhia and the practical experiences of Dave Venrooy. * Added to explain RowingEngine 2.0 design A rationale for explaining the RowingEngine 2.0 design, based on the great theoretical work of Anu Dudhia, and the practical work of Dave Venrooy and Marinus van Holst, as well as the great feedback from Lars Berning. * Update to accomodate the new RowingEngine Update to the rower settings to accommodate the new RowingEngine. Please note that the modifications need to be verified by the respective users. * Modifications to the RX800 tests Modifications to the RX800 to bring it in line with the Concept2 Power and distance measurements. * BUGFIX: Prevent ghost-strokes at end of session This change to isAccelerating prevents stroke-detection to detect a stroke when the currentDt "flatlines". This typically happens when the error correction kicks in when you quit rowing (and thus the rowerSettings.maximumTimeBetweenImpulses is exceeded). It is bad (flatlining isn't acceleration), and this ghost-stroke causes havoc in the GUI: all measurements are reset again to random values instead of the nice indicators normally used. * BUGFIX: Prevent ghost-strokes at end of session This change to isAccelerating prevents stroke-detection to detect a stroke when the currentDt "flatlines". This typically happens when the error correction kicks in when you quit rowing (and thus the rowerSettings.maximumTimeBetweenImpulses is exceeded). It is bad (flatlining isn't acceleration), and this ghost-stroke causes havoc in the GUI: all measurements are reset again to random values instead of the nice indicators normally used. * Added defensive programming In some rare cases not rounding led to a buffer overflow, so added defensive programming to prevent this. * Update MovingFlankDetector.js * Improved stroke detection algorithm accuracy Improvement of the Stroke detection algorithm: when naturalDeceleration is specified in the settings, it will only consider something a Revocery when this level of deceleration is encountered for the FlankLength. * Made the RowingEngine more stateful Removed some bugs, added a lot of defensive programming and made the RowingEngine report the key statistics every impuls to create a more fluid experience on the monitor. To do this, the rowingEngine maintins and reports absolute values to rowingStatistics, instead of relative. * Improved stroke detection algorithm accuracy Improvement of the Stroke detection algorithm: when naturalDeceleration is specified in the settings, it will only consider something a Revocery when this level of deceleration is encountered for the FlankLength. * Modification to fit new RowingEngine * Addition of new parameters for stroke detection Added new parameters for stroke detection and monitor fluidity * Fixed missing bracket * Updated to more fluid RowingStatistics Moved the timer from a static timer to the raw measurements of the flywheel, and the distance more frequently updated, to keep all data consistent. Also made the GUI-updates more fluid, responsive and dependent on settings: this more fluid GUI update mechanism is dependent on the screenUpdateInterval setting and moving averager dependent on a setting (numOfPhasesForAveragingScreenData) * Made all monitor updates consistent * Accommodate more frequent update of the monitors Update to accommodate the more frequent updates, and to accommodate the reset for the RowingEngine * improves some testcases, fixes some minor code styling and duplicate definitions * Fixed a comment about dragfactor * Added parameters for the new RowingStatistics.js Added screenUpdateInterval, numOfPhasesForAveragingScreenData and maxCycleTimeBeforePause as config parameters to remove statically determined parameters in RowingStatistics.js * Added RX800 as second testbed * fixes some problems that caused the engine to crash * uses non sanitized durations for now * updates some settings, fixes some typos * wires the correct timer configuration, fixes a problem where SPM would not reset to 0 * fixes a crash problem in workout recorder, fixes fallback value for strokeTime * relaxes constraint on stroke time * updates some explanatory text, updates some rower parameters Co-authored-by: Lars Berning <151194+laberning@users.noreply.github.com> --- README.md | 6 +- app/ble/ftms/IndoorBikeDataCharacteristic.js | 18 +- app/ble/ftms/RowerDataCharacteristic.js | 20 +- .../pm5/characteristic/AdditionalStatus.js | 14 +- .../pm5/characteristic/AdditionalStatus2.js | 6 +- .../characteristic/AdditionalStrokeData.js | 6 +- app/ble/pm5/characteristic/GeneralStatus.js | 6 +- app/ble/pm5/characteristic/StrokeData.js | 4 +- app/engine/MovingAverager.js | 55 +++ app/engine/MovingFlankDetector.js | 151 +++++- app/engine/RowingEngine.js | 442 +++++++++++------- app/engine/RowingEngine.test.js | 37 +- app/engine/RowingStatistics.js | 123 +++-- app/engine/WorkoutRecorder.js | 13 +- app/server.js | 10 +- config/default.config.js | 18 + config/rowerProfiles.js | 178 +++---- docs/Physics of the OpenRowingMonitor.docx | Bin 0 -> 359302 bytes 18 files changed, 727 insertions(+), 380 deletions(-) create mode 100644 app/engine/MovingAverager.js create mode 100644 docs/Physics of the OpenRowingMonitor.docx diff --git a/README.md b/README.md index bb9fc33..46d8960 100644 --- a/README.md +++ b/README.md @@ -5,10 +5,10 @@ An open source rowing monitor for rowing exercise machines. It upgrades a rowing machine into a real smart trainer that can be used with training applications and games. -Open Rowing Monitor is a Node.js application that runs on a Raspberry Pi and measures the rotation of the rower's flywheel to calculate rowing specific metrics, such as power, split time, speed, stroke rate, distance and calories. +Open Rowing Monitor is a Node.js application that runs on a Raspberry Pi and measures the rotation of the rower's flywheel (or similar) to calculate rowing specific metrics, such as power, split time, speed, stroke rate, distance and calories. -I currently develop and test it with a Sportstech WRX700 waterrower. But it should run fine with any rowing machine that uses an air or water resistance mechanism as long as you can add something to measure the speed of the flywheel. -I suspect it works well with DIY rowing machines like the [Openergo](https://openergo.webs.com) too. +We currently develop and test it with a Sportstech WRX700 waterrower and a NordicTrack RX-800 hybrid magetic/airrower. But it should run fine with any rowing machine that uses an air or water resistance mechanism as long as you can add something to measure the speed of the flywheel. +We suspect it works well with DIY rowing machines like the [Openergo](https://openergo.webs.com) too. ## Features diff --git a/app/ble/ftms/IndoorBikeDataCharacteristic.js b/app/ble/ftms/IndoorBikeDataCharacteristic.js index b7cebef..141a49c 100644 --- a/app/ble/ftms/IndoorBikeDataCharacteristic.js +++ b/app/ble/ftms/IndoorBikeDataCharacteristic.js @@ -68,26 +68,26 @@ export default class IndoorBikeDataCharacteristic extends bleno.Characteristic { // see https://www.bluetooth.com/specifications/specs/gatt-specification-supplement-3/ // for some of the data types // Instantaneous Speed in km/h - bufferBuilder.writeUInt16LE(data.speed * 100) + bufferBuilder.writeUInt16LE(Math.round(data.speed * 100)) // Instantaneous Cadence in rotations per minute (we use this to communicate the strokes per minute) - bufferBuilder.writeUInt16LE(data.strokesPerMinute * 2) + bufferBuilder.writeUInt16LE(Math.round(data.strokesPerMinute * 2)) // Total Distance in meters - bufferBuilder.writeUInt24LE(data.distanceTotal) + bufferBuilder.writeUInt24LE(Math.round(data.distanceTotal)) // Instantaneous Power in watts - bufferBuilder.writeUInt16LE(data.power) + bufferBuilder.writeUInt16LE(Math.round(data.power)) // Energy // Total energy in kcal - bufferBuilder.writeUInt16LE(data.caloriesTotal) + bufferBuilder.writeUInt16LE(Math.round(data.caloriesTotal)) // Energy per hour // The Energy per Hour field represents the average expended energy of a user during a // period of one hour. - bufferBuilder.writeUInt16LE(data.caloriesPerHour) + bufferBuilder.writeUInt16LE(Math.round(data.caloriesPerHour)) // Energy per minute - bufferBuilder.writeUInt8(data.caloriesPerMinute) + bufferBuilder.writeUInt8(Math.round(data.caloriesPerMinute)) // Heart Rate: Beats per minute with a resolution of 1 - bufferBuilder.writeUInt8(data.heartrate) + bufferBuilder.writeUInt8(Math.round(data.heartrate)) // Elapsed Time: Seconds with a resolution of 1 - bufferBuilder.writeUInt16LE(data.durationTotal) + bufferBuilder.writeUInt16LE(Math.round(data.durationTotal)) const buffer = bufferBuilder.getBuffer() if (buffer.length > this._subscriberMaxValueSize) { diff --git a/app/ble/ftms/RowerDataCharacteristic.js b/app/ble/ftms/RowerDataCharacteristic.js index 319a2d4..2c03ca7 100644 --- a/app/ble/ftms/RowerDataCharacteristic.js +++ b/app/ble/ftms/RowerDataCharacteristic.js @@ -62,29 +62,29 @@ export default class RowerDataCharacteristic extends bleno.Characteristic { // see https://www.bluetooth.com/specifications/specs/gatt-specification-supplement-3/ // for some of the data types // Stroke Rate in stroke/minute, value is multiplied by 2 to have a .5 precision - bufferBuilder.writeUInt8(data.strokesPerMinute * 2) + bufferBuilder.writeUInt8(Math.round(data.strokesPerMinute * 2)) // Stroke Count - bufferBuilder.writeUInt16LE(data.strokesTotal) + bufferBuilder.writeUInt16LE(Math.round(data.strokesTotal)) // Total Distance in meters - bufferBuilder.writeUInt24LE(data.distanceTotal) + bufferBuilder.writeUInt24LE(Math.round(data.distanceTotal)) // Instantaneous Pace in seconds/500m // if split is infinite (i.e. while pausing), use the highest possible number - bufferBuilder.writeUInt16LE(data.split !== Infinity ? data.split : 0xFFFF) + bufferBuilder.writeUInt16LE(data.split !== Infinity ? Math.round(data.split) : 0xFFFF) // Instantaneous Power in watts - bufferBuilder.writeUInt16LE(data.power) + bufferBuilder.writeUInt16LE(Math.round(data.power)) // Energy in kcal // Total energy in kcal - bufferBuilder.writeUInt16LE(data.caloriesTotal) + bufferBuilder.writeUInt16LE(Math.round(data.caloriesTotal)) // Energy per hour // The Energy per Hour field represents the average expended energy of a user during a // period of one hour. - bufferBuilder.writeUInt16LE(data.caloriesPerHour) + bufferBuilder.writeUInt16LE(Math.round(data.caloriesPerHour)) // Energy per minute - bufferBuilder.writeUInt8(data.caloriesPerMinute) + bufferBuilder.writeUInt8(Math.round(data.caloriesPerMinute)) // Heart Rate: Beats per minute with a resolution of 1 - bufferBuilder.writeUInt8(data.heartrate) + bufferBuilder.writeUInt8(Math.round(data.heartrate)) // Elapsed Time: Seconds with a resolution of 1 - bufferBuilder.writeUInt16LE(data.durationTotal) + bufferBuilder.writeUInt16LE(Math.round(data.durationTotal)) const buffer = bufferBuilder.getBuffer() if (buffer.length > this._subscriberMaxValueSize) { diff --git a/app/ble/pm5/characteristic/AdditionalStatus.js b/app/ble/pm5/characteristic/AdditionalStatus.js index 9775d07..0e8dd26 100644 --- a/app/ble/pm5/characteristic/AdditionalStatus.js +++ b/app/ble/pm5/characteristic/AdditionalStatus.js @@ -38,22 +38,22 @@ export default class AdditionalStatus extends bleno.Characteristic { if (this._updateValueCallback || this._multiplexedCharacteristic.centralSubscribed()) { const bufferBuilder = new BufferBuilder() // elapsedTime: UInt24LE in 0.01 sec - bufferBuilder.writeUInt24LE(data.durationTotal * 100) + bufferBuilder.writeUInt24LE(Math.round(data.durationTotal * 100)) // speed: UInt16LE in 0.001 m/sec - bufferBuilder.writeUInt16LE(data.speed * 1000 / 3.6) + bufferBuilder.writeUInt16LE(Math.round(data.speed * 1000 / 3.6)) // strokeRate: UInt8 in strokes/min - bufferBuilder.writeUInt8(data.strokesPerMinute) + bufferBuilder.writeUInt8(Math.round(data.strokesPerMinute)) // heartrate: UInt8 in bpm, 255 if invalid - bufferBuilder.writeUInt8(data.heartrate) + bufferBuilder.writeUInt8(Math.round(data.heartrate)) // currentPace: UInt16LE in 0.01 sec/500m // if split is infinite (i.e. while pausing), use the highest possible number - bufferBuilder.writeUInt16LE(data.split !== Infinity ? data.split * 100 : 0xFFFF) + bufferBuilder.writeUInt16LE(data.split !== Infinity ? Math.round(data.split * 100) : 0xFFFF) // averagePace: UInt16LE in 0.01 sec/500m let averagePace = 0 if (data.distanceTotal && data.distanceTotal !== 0) { averagePace = data.durationTotal / data.distanceTotal * 500 } - bufferBuilder.writeUInt16LE(averagePace * 100) + bufferBuilder.writeUInt16LE(Math.round(averagePace * 100)) // restDistance: UInt16LE bufferBuilder.writeUInt16LE(0) // restTime: UInt24LE in 0.01 sec @@ -62,7 +62,7 @@ export default class AdditionalStatus extends bleno.Characteristic { // the multiplexer uses a slightly different format for the AdditionalStatus // it adds averagePower before the ergMachineType // averagePower: UInt16LE in watts - bufferBuilder.writeUInt16LE(data.power) + bufferBuilder.writeUInt16LE(Math.round(data.power)) } // ergMachineType: 0 TYPE_STATIC_D bufferBuilder.writeUInt8(0) diff --git a/app/ble/pm5/characteristic/AdditionalStatus2.js b/app/ble/pm5/characteristic/AdditionalStatus2.js index eb41e93..67f54f1 100644 --- a/app/ble/pm5/characteristic/AdditionalStatus2.js +++ b/app/ble/pm5/characteristic/AdditionalStatus2.js @@ -38,17 +38,17 @@ export default class AdditionalStatus2 extends bleno.Characteristic { if (this._updateValueCallback || this._multiplexedCharacteristic.centralSubscribed()) { const bufferBuilder = new BufferBuilder() // elapsedTime: UInt24LE in 0.01 sec - bufferBuilder.writeUInt24LE(data.durationTotal * 100) + bufferBuilder.writeUInt24LE(Math.round(data.durationTotal * 100)) // intervalCount: UInt8 bufferBuilder.writeUInt8(0) if (this._updateValueCallback) { // the multiplexer uses a slightly different format for the AdditionalStatus2 // it skips averagePower before totalCalories // averagePower: UInt16LE in watts - bufferBuilder.writeUInt16LE(data.power) + bufferBuilder.writeUInt16LE(Math.round(data.power)) } // totalCalories: UInt16LE in cal - bufferBuilder.writeUInt16LE(data.caloriesTotal) + bufferBuilder.writeUInt16LE(Math.round(data.caloriesTotal)) // splitAveragePace: UInt16LE in 0.01 sec/500m bufferBuilder.writeUInt16LE(0 * 100) // splitAveragePower UInt16LE in watts diff --git a/app/ble/pm5/characteristic/AdditionalStrokeData.js b/app/ble/pm5/characteristic/AdditionalStrokeData.js index 3c75397..3b6e7bf 100644 --- a/app/ble/pm5/characteristic/AdditionalStrokeData.js +++ b/app/ble/pm5/characteristic/AdditionalStrokeData.js @@ -38,13 +38,13 @@ export default class AdditionalStrokeData extends bleno.Characteristic { if (this._updateValueCallback || this._multiplexedCharacteristic.centralSubscribed()) { const bufferBuilder = new BufferBuilder() // elapsedTime: UInt24LE in 0.01 sec - bufferBuilder.writeUInt24LE(data.durationTotal * 100) + bufferBuilder.writeUInt24LE(Math.round(data.durationTotal * 100)) // strokePower: UInt16LE in watts - bufferBuilder.writeUInt16LE(data.power) + bufferBuilder.writeUInt16LE(Math.round(data.power)) // strokeCalories: UInt16LE in cal bufferBuilder.writeUInt16LE(0) // strokeCount: UInt16LE - bufferBuilder.writeUInt16LE(data.strokesTotal) + bufferBuilder.writeUInt16LE(Math.round(data.strokesTotal)) // projectedWorkTime: UInt24LE in 1 sec bufferBuilder.writeUInt24LE(0) // projectedWorkDistance: UInt24LE in 1 m diff --git a/app/ble/pm5/characteristic/GeneralStatus.js b/app/ble/pm5/characteristic/GeneralStatus.js index 246b26e..85c1e0b 100644 --- a/app/ble/pm5/characteristic/GeneralStatus.js +++ b/app/ble/pm5/characteristic/GeneralStatus.js @@ -38,9 +38,9 @@ export default class GeneralStatus extends bleno.Characteristic { if (this._updateValueCallback || this._multiplexedCharacteristic.centralSubscribed()) { const bufferBuilder = new BufferBuilder() // elapsedTime: UInt24LE in 0.01 sec - bufferBuilder.writeUInt24LE(data.durationTotal * 100) + bufferBuilder.writeUInt24LE(Math.round(data.durationTotal * 100)) // distance: UInt24LE in 0.1 m - bufferBuilder.writeUInt24LE(data.distanceTotal * 10) + bufferBuilder.writeUInt24LE(Math.round(data.distanceTotal * 10)) // workoutType: UInt8 will always use 0 (WORKOUTTYPE_JUSTROW_NOSPLITS) bufferBuilder.writeUInt8(0) // intervalType: UInt8 will always use 255 (NONE) @@ -52,7 +52,7 @@ export default class GeneralStatus extends bleno.Characteristic { // strokeState: UInt8 2 DRIVING, 4 RECOVERY bufferBuilder.writeUInt8(data.strokeState === 'DRIVING' ? 2 : 4) // totalWorkDistance: UInt24LE in 1 m - bufferBuilder.writeUInt24LE(data.distanceTotal) + bufferBuilder.writeUInt24LE(Math.round(data.distanceTotal)) // workoutDuration: UInt24LE in 0.01 sec (if type TIME) bufferBuilder.writeUInt24LE(0 * 100) // workoutDurationType: UInt8 0 TIME, 1 CALORIES, 2 DISTANCE, 3 WATTS diff --git a/app/ble/pm5/characteristic/StrokeData.js b/app/ble/pm5/characteristic/StrokeData.js index 1e363a1..ededdb2 100644 --- a/app/ble/pm5/characteristic/StrokeData.js +++ b/app/ble/pm5/characteristic/StrokeData.js @@ -39,9 +39,9 @@ export default class StrokeData extends bleno.Characteristic { if (this._updateValueCallback || this._multiplexedCharacteristic.centralSubscribed()) { const bufferBuilder = new BufferBuilder() // elapsedTime: UInt24LE in 0.01 sec - bufferBuilder.writeUInt24LE(data.durationTotal * 100) + bufferBuilder.writeUInt24LE(Math.round(data.durationTotal * 100)) // distance: UInt24LE in 0.1 m - bufferBuilder.writeUInt24LE(data.distanceTotal * 10) + bufferBuilder.writeUInt24LE(Math.round(data.distanceTotal * 10)) // driveLength: UInt8 in 0.01 m bufferBuilder.writeUInt8(0 * 100) // driveTime: UInt8 in 0.01 s diff --git a/app/engine/MovingAverager.js b/app/engine/MovingAverager.js new file mode 100644 index 0000000..224b727 --- /dev/null +++ b/app/engine/MovingAverager.js @@ -0,0 +1,55 @@ +'use strict' +/* + Open Rowing Monitor, https://github.com/laberning/openrowingmonitor + + This keeps an array, which we can ask for an moving average + + Please note: The array contains flankLenght + 1 measured currentDt's, thus flankLenght number of flanks between them + They are arranged that dataPoints[0] is the youngest, and dataPoints[flankLength] the youngest +*/ +function createMovingAverager (length, initValue) { + let dataPoints + reset() + + function pushValue (dataPoint) { + // add the new dataPoint to the array, we have to move datapoints starting at the oldst ones + let i = length - 1 + while (i > 0) { + // older datapoints are moved toward the higher numbers + dataPoints[i] = dataPoints[i - 1] + i = i - 1 + } + dataPoints[0] = dataPoint + } + + function replaceLastPushedValue (dataPoint) { + // replace the newest dataPoint in the array, as it was faulty + dataPoints[0] = dataPoint + } + + function getMovingAverage () { + let i = length - 1 + let arrayTotal = 0.0 + while (i >= 0) { + // summarise the value of the moving average + arrayTotal = arrayTotal + dataPoints[i] + i = i - 1 + } + const arrayAverage = arrayTotal / length + return arrayAverage + } + + function reset () { + dataPoints = new Array(length) + dataPoints.fill(initValue) + } + + return { + pushValue, + replaceLastPushedValue, + getMovingAverage, + reset + } +} + +export { createMovingAverager } diff --git a/app/engine/MovingFlankDetector.js b/app/engine/MovingFlankDetector.js index 34d8915..8ab9386 100644 --- a/app/engine/MovingFlankDetector.js +++ b/app/engine/MovingFlankDetector.js @@ -5,33 +5,91 @@ This keeps an array, which we can test for an upgoing or downgoing flank Please note: The array contains flankLenght + 1 measured currentDt's, thus flankLenght number of flanks between them - They are arranged that dataPoints[0] is the youngest, and dataPoints[flankLength] the youngest + They are arranged that dataPoints[0] is the youngest, and dataPoints[flankLength] the oldest */ +import loglevel from 'loglevel' +import { createMovingAverager } from './MovingAverager.js' +const log = loglevel.getLogger('RowingEngine') + function createMovingFlankDetector (rowerSettings) { - const dataPoints = new Array(rowerSettings.flankLength + 1) - dataPoints.fill(rowerSettings.maximumTimeBetweenImpulses) + const angularDisplacementPerImpulse = (2.0 * Math.PI) / rowerSettings.numOfImpulsesPerRevolution + const dirtyDataPoints = new Array(rowerSettings.flankLength + 1) + dirtyDataPoints.fill(rowerSettings.maximumTimeBetweenImpulses) + const cleanDataPoints = new Array(rowerSettings.flankLength + 1) + cleanDataPoints.fill(rowerSettings.maximumTimeBetweenImpulses) + const angularVelocity = new Array(rowerSettings.flankLength + 1) + angularVelocity.fill(angularDisplacementPerImpulse / rowerSettings.minimumTimeBetweenImpulses) + const angularAcceleration = new Array(rowerSettings.flankLength + 1) + angularAcceleration.fill(0) + const movingAverage = createMovingAverager(rowerSettings.smoothing, rowerSettings.maximumTimeBetweenImpulses) function pushValue (dataPoint) { // add the new dataPoint to the array, we have to move datapoints starting at the oldst ones let i = rowerSettings.flankLength while (i > 0) { // older datapoints are moved toward the higher numbers - dataPoints[i] = dataPoints[i - 1] + dirtyDataPoints[i] = dirtyDataPoints[i - 1] + cleanDataPoints[i] = cleanDataPoints[i - 1] + angularVelocity[i] = angularVelocity[i - 1] + angularAcceleration[i] = angularAcceleration[i - 1] i = i - 1 } - dataPoints[0] = dataPoint + dirtyDataPoints[0] = dataPoint + + // reduce noise in the measurements by applying some sanity checks + // noise filter on the value of dataPoint: it should be within sane levels and should not deviate too much from the previous reading + if (dataPoint < rowerSettings.minimumTimeBetweenImpulses || dataPoint > rowerSettings.maximumTimeBetweenImpulses) { + // impulseTime is outside plausible ranges, so we assume it is close to the previous clean one + log.debug(`noise filter corrected currentDt, ${dataPoint} was not between minimumTimeBetweenImpulses and maximumTimeBetweenImpulses, changed to ${cleanDataPoints[1]}`) + dataPoint = cleanDataPoints[1] + } + + // lets test if pushing this value would fit the curve we are looking for + movingAverage.pushValue(dataPoint) + + if (movingAverage.getMovingAverage() < (rowerSettings.maximumDownwardChange * cleanDataPoints[1]) || movingAverage.getMovingAverage() > (rowerSettings.maximumUpwardChange * cleanDataPoints[1])) { + // impulses are outside plausible ranges, so we assume it is close to the previous one + log.debug(`noise filter corrected currentDt, ${dataPoint} was too much of an accelleration/decelleration with respect to ${movingAverage.getMovingAverage()}, changed to previous value, ${cleanDataPoints[1]}`) + movingAverage.replaceLastPushedValue(cleanDataPoints[1]) + } + + // determine the moving average, to reduce noise + cleanDataPoints[0] = movingAverage.getMovingAverage() + + // determine the derived data + if (cleanDataPoints[0] > 0) { + angularVelocity[0] = angularDisplacementPerImpulse / cleanDataPoints[0] + angularAcceleration[0] = (angularVelocity[0] - angularVelocity[1]) / cleanDataPoints[0] + } else { + log.error('Impuls of 0 seconds encountered, this should not be possible (division by 0 prevented)') + angularVelocity[0] = 0 + angularAcceleration[0] = 0 + } } - function isDecelerating () { - let i = rowerSettings.flankLength + function isFlywheelUnpowered () { let numberOfErrors = 0 - while (i > 0) { - if (dataPoints[i] < dataPoints[i - 1]) { - // Oldest interval (dataPoints[i]) is shorter than the younger one (datapoint[i-1], as the distance is fixed, we are decelerating - } else { - numberOfErrors = numberOfErrors + 1 + if (rowerSettings.naturalDeceleration < 0) { + // A valid natural deceleration of the flywheel has been provided, this has to be maintained for a flanklength to count as an indication for an unpowered flywheel + // Please note that angularAcceleration[] contains flank-information already, so we need to check from rowerSettings.flankLength -1 until 0 flanks + let i = rowerSettings.flankLength - 1 + while (i >= 0) { + if (angularAcceleration[i] > rowerSettings.naturalDeceleration) { + // There seems to be some power present, so we detecten an error + numberOfErrors = numberOfErrors + 1 + } + i = i - 1 + } + } else { + // No valid natural deceleration has been provided, we rely on pure deceleration for recovery detection + let i = rowerSettings.flankLength + while (i > 0) { + if (cleanDataPoints[i] >= cleanDataPoints[i - 1]) { + // Oldest interval (dataPoints[i]) is larger than the younger one (datapoint[i-1], as the distance is fixed, we are accelerating + numberOfErrors = numberOfErrors + 1 + } + i = i - 1 } - i = i - 1 } if (numberOfErrors > rowerSettings.numberOfErrorsAllowed) { return false @@ -40,16 +98,34 @@ function createMovingFlankDetector (rowerSettings) { } } - function isAccelerating () { - let i = rowerSettings.flankLength + function isFlywheelPowered () { let numberOfErrors = 0 - while (i > 0) { - if (dataPoints[i] > dataPoints[i - 1]) { - // Oldest interval (dataPoints[i]) is longer than the younger one (datapoint[i-1], as the distance is fixed, we are accelerating - } else { + if (rowerSettings.naturalDeceleration < 0) { + // A valid natural deceleration of the flywheel has been provided, this has to be consistently be encountered for a flanklength to count as an indication of a powered flywheel + // Please note that angularAcceleration[] contains flank-information already, so we need to check from rowerSettings.flankLength -1 until 0 flanks + let i = rowerSettings.flankLength - 1 + while (i >= 0) { + if (angularAcceleration[i] < rowerSettings.naturalDeceleration) { + // Some deceleration is below the natural deceleration, so we detected an error + numberOfErrors = numberOfErrors + 1 + } + i = i - 1 + } + } else { + // No valid natural deceleration of the flywheel has been provided, we rely on pure acceleration for stroke detection + let i = rowerSettings.flankLength + while (i > 1) { + if (cleanDataPoints[i] < cleanDataPoints[i - 1]) { + // Oldest interval (dataPoints[i]) is shorter than the younger one (datapoint[i-1], as the distance is fixed, we discovered a deceleration + numberOfErrors = numberOfErrors + 1 + } + i = i - 1 + } + if (cleanDataPoints[1] <= cleanDataPoints[0]) { + // We handle the last measurement more specifically: at least the youngest measurement must be really accelerating + // This prevents when the currentDt "flatlines" (i.e. error correction kicks in) a ghost-stroke is detected numberOfErrors = numberOfErrors + 1 } - i = i - 1 } if (numberOfErrors > rowerSettings.numberOfErrorsAllowed) { return false @@ -58,10 +134,41 @@ function createMovingFlankDetector (rowerSettings) { } } + function timeToBeginOfFlank () { + // You expect the curve to bend between dirtyDataPoints[rowerSettings.flankLength] and dirtyDataPoints[rowerSettings.flankLength+1], + // as acceleration FOLLOWS the start of the pulling the handle, we assume it must have started before that + let i = rowerSettings.flankLength + let total = 0.0 + while (i >= 0) { + total += dirtyDataPoints[i] + i = i - 1 + } + return total + } + + function noImpulsesToBeginFlank () { + return rowerSettings.flankLength + } + + function impulseLengthAtBeginFlank () { + // As this is fed into the speed calculation where small changes have big effects, and we typically use it when the curve is in a plateau, + // we return the cleaned data and not the dirty data + // Regardless of the way to determine the acceleration, cleanDataPoints[rowerSettings.flankLength] is always the impuls at the beginning of the flank being investigated + return cleanDataPoints[rowerSettings.flankLength] + } + + function accelerationAtBeginOfFlank () { + return angularAcceleration[rowerSettings.flankLength - 1] + } + return { pushValue, - isDecelerating, - isAccelerating + isFlywheelUnpowered, + isFlywheelPowered, + timeToBeginOfFlank, + noImpulsesToBeginFlank, + impulseLengthAtBeginFlank, + accelerationAtBeginOfFlank } } diff --git a/app/engine/RowingEngine.js b/app/engine/RowingEngine.js index 6509642..8301242 100644 --- a/app/engine/RowingEngine.js +++ b/app/engine/RowingEngine.js @@ -11,211 +11,312 @@ Also Dave Vernooy has some good explanations here: https://dvernooy.github.io/projects/ergware */ import loglevel from 'loglevel' -import { createWeightedAverager } from './WeightedAverager.js' +import { createMovingAverager } from './MovingAverager.js' import { createMovingFlankDetector } from './MovingFlankDetector.js' -import { createTimer } from './Timer.js' const log = loglevel.getLogger('RowingEngine') function createRowingEngine (rowerSettings) { - // How many impulses are triggered per revolution of the flywheel - // i.e. the number of magnets if used with a reed sensor - const numOfImpulsesPerRevolution = rowerSettings.numOfImpulsesPerRevolution - - // Needed to determine the damping constant of the rowing machine. This value can be measured in the recovery phase - // of the stroke (some ergometers do this constantly). - // However I still keep it constant here, as I still have to figure out the damping physics of a water rower (see below) - // To measure it for your rowing machine, comment in the logging at the end of "startDrivePhase" function. Then do some - // strokes on the rower and estimate a value. - let omegaDotDivOmegaSquare = rowerSettings.omegaDotDivOmegaSquare - - // The moment of inertia of the flywheel kg*m^2 - // A way to measure it is outlined here: https://dvernooy.github.io/projects/ergware/, "Flywheel moment of inertia" - // You could also roughly estimate it by just doing some strokes and the comparing the calculated power values for - // plausibility. Note that the power also depends on omegaDotDivOmegaSquare (see above). - const jMoment = rowerSettings.jMoment - - // Set this to true if you are using a water rower - // The mass of the water starts rotating, when you pull the handle, and therefore acts - // like a massive flywheel - // Liquids are a tricky thing and therefore the dumping constant does not seem to be - // that constant on water rowers... - // This is WIP, but for now this setting is used to figure out the drive and recovery phases - // differently on water rowers - const liquidFlywheel = rowerSettings.liquidFlywheel - - // A constant that is commonly used to convert flywheel revolutions to a rowed distance - // see here: http://eodg.atm.ox.ac.uk/user/dudhia/rowing/physics/ergometer.html#section9 - const c = rowerSettings.magicConstant - - // jMoment * ωdot = -kDamp * ω^2 during non-power part of stroke - let kDamp = jMoment * omegaDotDivOmegaSquare - let workoutHandler - const kDampEstimatorAverager = createWeightedAverager(5) const flankDetector = createMovingFlankDetector(rowerSettings) - let prevDt = rowerSettings.maximumTimeBetweenImpulses - let kPower = 0.0 - let jPower = 0.0 - let kDampEstimator = 0.0 - let strokeElapsed = 0.0 - let driveElapsed = 0.0 - let strokeDistance = 0.0 - const omegaVector = new Array(2) - const omegaDotVector = new Array(2) - let omegaDotDot = 0.0 - - const timer = createTimer() - - omegaVector.fill(0.0) - omegaDotVector.fill(0.0) - let isInDrivePhase = true - let wasInDrivePhase = false - - // a rowing session always starts with a drive phase - timer.start('drive') - timer.start('stroke') + let movementAllowed = true + let cyclePhase = 'Drive' + let totalTime = 0.0 + let totalNumberOfImpulses = 0.0 + let strokeNumber = 0.0 + const angularDisplacementPerImpulse = (2.0 * Math.PI) / rowerSettings.numOfImpulsesPerRevolution + let drivePhaseStartTime = 0.0 + let drivePhaseStartAngularDisplacement = 0.0 + let drivePhaseLength = rowerSettings.minimumDriveTime + let drivePhaseAngularDisplacement = rowerSettings.numOfImpulsesPerRevolution + // let driveStartAngularVelocity = 0 + // let driveEndAngularVelocity = angularDisplacementPerImpulse / rowerSettings.minimumTimeBetweenImpulses + let driveLinearDistance = 0.0 + // let drivePhaseEnergyProduced = 0.0 + let recoveryPhaseStartTime = 0.0 + let recoveryPhaseStartAngularDisplacement = 0.0 + let recoveryPhaseAngularDisplacement = rowerSettings.numOfImpulsesPerRevolution + let recoveryPhaseLength = rowerSettings.minimumRecoveryTime + let recoveryStartAngularVelocity = angularDisplacementPerImpulse / rowerSettings.minimumTimeBetweenImpulses + let recoveryEndAngularVelocity = angularDisplacementPerImpulse / rowerSettings.maximumTimeBetweenImpulses + let recoveryLinearDistance = 0.0 + let currentDragFactor = rowerSettings.dragFactor / 1000000 + const movingDragAverage = createMovingAverager(5, currentDragFactor) + let dragFactor = movingDragAverage.getMovingAverage() + const minimumCycleLenght = rowerSettings.minimumDriveTime + rowerSettings.minimumRecoveryTime + let cycleLenght = minimumCycleLenght + let linearCycleVelocity = 0.0 + let totalLinearDistance = 0.0 + let averagedCyclePower = 0.0 + let currentTorque = 0.0 + let previousAngularVelocity = 0.0 + let currentAngularVelocity = 0.0 // called if the sensor detected an impulse, currentDt is an interval in seconds function handleRotationImpulse (currentDt) { - // impulses that take longer than 3 seconds are considered a pause - if (currentDt > 3.0) { + // First we check if the rower is allowed to move + if (movementAllowed !== true) { + // The rower isn't allowed to move + return + } + + // impulses that take longer than maximumImpulseTimeBeforePause seconds are considered a pause + if (currentDt > rowerSettings.maximumImpulseTimeBeforePause) { workoutHandler.handlePause(currentDt) return } - // remember the state of drive phase from the previous impulse, we need it to detect state changes - wasInDrivePhase = isInDrivePhase - - // STEP 1: reduce noise in the measurements by applying some sanity checks - // noise filter on the value of currentDt: it should be within sane levels and should not deviate too much from the previous reading - if (currentDt < rowerSettings.minimumTimeBetweenImpulses || currentDt > rowerSettings.maximumTimeBetweenImpulses || currentDt < (rowerSettings.maximumDownwardChange * prevDt) || currentDt > (rowerSettings.maximumUpwardChange * prevDt)) { - // impulses are outside plausible ranges, so we assume it is close to the previous one - currentDt = prevDt - log.debug(`noise filter corrected currentDt, ${currentDt} was dubious, changed to ${prevDt}`) - } - prevDt = currentDt - - // each revolution of the flywheel adds distance of distancePerRevolution - // s = (k/c)^(1/3)*θ - const distancePerRevolution = 2.0 * Math.PI * Math.pow((kDamp / c), 1.0 / 3.0) - strokeDistance += distancePerRevolution / numOfImpulsesPerRevolution - - omegaVector[1] = omegaVector[0] - - // angular speed ω = 2π𝑛, revolutions per minute 𝑛 = 1/𝑑t, 𝑑t is the time for one revolution of flywheel - // => ω = 2π/measured time for last impulse * impulses per revolution - omegaVector[0] = (2.0 * Math.PI) / (currentDt * numOfImpulsesPerRevolution) - // angular velocity ωdot = 𝑑ω/𝑑t - omegaDotVector[1] = omegaDotVector[0] - omegaDotVector[0] = (omegaVector[0] - omegaVector[1]) / (currentDt) - // we use the derivative of the velocity (ωdotdot) to classify the different phases of the stroke - omegaDotDot = (omegaDotVector[0] - omegaDotVector[1]) / (currentDt) - - // a stroke consists of a drive phase (when you pull the handle) and a recovery phase (when the handle returns) - // calculate screeners to find drive portion of stroke - see spreadsheet if you want to understand this - // if ((omegaDotDot > -40.0) && (omegaDotDot < 40.0)) { - - // the acceleration is constant if ωdotdot is 0, we expand the range, since measurements are imperfect - const accelerationIsChanging = !((omegaDotDot > -20.0) && (omegaDotDot < 20.0)) - - // the acceleration is positive if ωdot > 0, we expand the range, since measurements are imperfect - // used to be 15 - const accelerationIsPositive = omegaDotVector[0] > 0 + totalTime += currentDt + totalNumberOfImpulses++ // STEP 2: detect where we are in the rowing phase (drive or recovery) - if (liquidFlywheel) { - // Identification of drive and recovery phase on water rowers is still Work in Progress - // ω does not seem to decay that linear on water rower in recovery phase, so this would not be - // a good indicator here. - // Currently we just differentiate by checking if we are accelerating. This gives a stable indicator - // but probably we are missing the final part of the drive phase by doing so. - // This would mean, that the stroke ratio and the estimation of kDamp is a bit off. - // todo: do some measurements and find a better stable indicator for water rowers - isInDrivePhase = accelerationIsPositive - } else { - flankDetector.pushValue(currentDt) - // Here we use a finite state machine that goes between "Drive" and "Recovery", provinding sufficient time has passed and there is a credible flank - // We analyse the current impulse, depending on where we are in the stroke - if (wasInDrivePhase) { - // during the previous impulse, we were in the "Drive" phase - const strokeElapsed = timer.getValue('drive') - // finish drive phase if we have been long enough in the Drive phase, and we see a clear deceleration - isInDrivePhase = !((strokeElapsed > rowerSettings.minimumDriveTime) && flankDetector.isDecelerating()) + flankDetector.pushValue(currentDt) + + // Here we implement the finite state machine that goes between "Drive" and "Recovery" phases, + // It will allow a phase-change provinding sufficient time has passed and there is a credible flank + if (cyclePhase === 'Drive') { + // We currently are in the "Drive" phase, lets determine what the next phase is + if (flankDetector.isFlywheelUnpowered()) { + // The flankdetector detects that the flywheel has no power excerted on it + drivePhaseLength = (totalTime - flankDetector.timeToBeginOfFlank()) - drivePhaseStartTime + if (drivePhaseLength >= rowerSettings.minimumDriveTime) { + // We change into the Revocevery phase since we have been long enough in the Drive phase, and we see a clear lack of power excerted on the flywheel + startRecoveryPhase(currentDt) + cyclePhase = 'Recovery' + } else { + // We seem to have lost power to the flywheel, but it is too early according to the settings. We stay in the Drive Phase + log.debug(`Time: ${totalTime.toFixed(4)} sec, impuls ${totalNumberOfImpulses}: flank suggests no power (${flankDetector.accelerationAtBeginOfFlank().toFixed(1)} rad/s2), but waiting for for recoveryPhaseLength (${recoveryPhaseLength.toFixed(4)} sec) to exceed minimumRecoveryTime (${rowerSettings.minimumRecoveryTime} sec)`) + updateDrivePhase(currentDt) + } } else { - // during the previous impulse, we were in the "Recovery" phase - const recoveryElapsed = timer.getValue('stroke') - // if we are long enough in the Recovery phase, and we see a clear acceleration, we need to change to the Drive phase - isInDrivePhase = ((recoveryElapsed > rowerSettings.minimumRecoveryTime) && flankDetector.isAccelerating()) + // We stay in the "Drive" phase as the acceleration is lacking + updateDrivePhase(currentDt) + } + } else { + // We currently are in the "Recovery" phase, lets determine what the next phase is + if (flankDetector.isFlywheelPowered()) { + // The flankdetector consistently detects some force on the flywheel + recoveryPhaseLength = (totalTime - flankDetector.timeToBeginOfFlank()) - recoveryPhaseStartTime + if (recoveryPhaseLength >= rowerSettings.minimumRecoveryTime) { + // We change into the Drive phase if we have been long enough in the Recovery phase, and we see a conistent force being excerted on the flywheel + startDrivePhase(currentDt) + cyclePhase = 'Drive' + } else { + // We see a force, but the recovery phase has been too short, we stay in the recovery phase + log.debug(`Time: ${totalTime.toFixed(4)} sec, impuls ${totalNumberOfImpulses}: flank suggests power (${flankDetector.accelerationAtBeginOfFlank().toFixed(1)} rad/s2), but waiting for recoveryPhaseLength (${recoveryPhaseLength.toFixed(4)} sec) to exceed minimumRecoveryTime (${rowerSettings.minimumRecoveryTime} sec)`) + updateRecoveryPhase(currentDt) + } + } else { + // No force on the flywheel, let's continue the drive phase + updateRecoveryPhase(currentDt) } } - - // STEP 3: handle the current impulse, depending on where we are in the stroke - if (isInDrivePhase && !wasInDrivePhase) { startDrivePhase(currentDt) } - if (!isInDrivePhase && wasInDrivePhase) { startRecoveryPhase() } - if (isInDrivePhase && wasInDrivePhase) { updateDrivePhase(currentDt) } - if (!isInDrivePhase && !wasInDrivePhase) { updateRecoveryPhase(currentDt) } - - timer.updateTimers(currentDt) - log.debug(`𝑑t: ${currentDt} ω: ${omegaVector[0].toFixed(2)} ωdot: ${omegaDotVector[0].toFixed(2)} ωdotdot: ${omegaDotDot.toFixed(2)} aPos: ${accelerationIsPositive} aChange: ${accelerationIsChanging}`) } function startDrivePhase (currentDt) { - log.debug('*** drive phase started') - timer.start('drive') - jPower = 0.0 - kPower = 0.0 - if (strokeElapsed - driveElapsed !== 0) { - kDampEstimatorAverager.pushValue(kDampEstimator / (strokeElapsed - driveElapsed)) + // First, we conclude the recovery phase + log.debug('*** recovery phase completed') + if (rowerSettings.minimumRecoveryTime <= recoveryPhaseLength && rowerSettings.minimumDriveTime <= drivePhaseLength) { + // We have a credible cycletime + cycleLenght = recoveryPhaseLength + drivePhaseLength + } else { + log.debug(`Cyclelenght isn't credible: recoveryPhaseLength ${recoveryPhaseLength.toFixed(4)} sec, drivePhaseLength = ${drivePhaseLength.toFixed(4)} s, maximumImpulseTimeBeforePause ${rowerSettings.maximumImpulseTimeBeforePause} s`) } - const _kDamp = jMoment * (-1 * kDampEstimatorAverager.weightedAverage()) - const _omegaDotDivOmegaSquare = -1 * kDampEstimatorAverager.weightedAverage() - log.debug(`estimated kDamp: ${_kDamp}`) - log.info(`estimated omegaDotDivOmegaSquare: ${_omegaDotDivOmegaSquare}`) - if (rowerSettings.autoAdjustDampingConstant) { - log.debug('auto adjusting kDamp and omegaDotDivOmegaSquare to new values') - kDamp = _kDamp - omegaDotDivOmegaSquare = _omegaDotDivOmegaSquare + recoveryPhaseAngularDisplacement = (totalNumberOfImpulses - recoveryPhaseStartAngularDisplacement) * angularDisplacementPerImpulse + + // Calculation of the drag-factor + if (flankDetector.impulseLengthAtBeginFlank() > 0) { + recoveryEndAngularVelocity = angularDisplacementPerImpulse / flankDetector.impulseLengthAtBeginFlank() + if (recoveryPhaseLength >= rowerSettings.minimumRecoveryTime && recoveryStartAngularVelocity > 0 && recoveryEndAngularVelocity > 0) { + // Prevent division by zero and keep useless data out of our calculations + currentDragFactor = -1 * rowerSettings.flywheelInertia * ((1 / recoveryStartAngularVelocity) - (1 / recoveryEndAngularVelocity)) / recoveryPhaseLength + if (rowerSettings.autoAdjustDampingConstant) { + if (currentDragFactor > (movingDragAverage.getMovingAverage() * 0.75) && currentDragFactor < (movingDragAverage.getMovingAverage() * 1.40)) { + // If the calculated dragfactor is close to that we expect + movingDragAverage.pushValue(currentDragFactor) + dragFactor = movingDragAverage.getMovingAverage() + log.info(`*** Calculated drag factor: ${(currentDragFactor * 1000000).toFixed(2)}`) + } else { + // The calculated drag factor is outside the credible ranges + log.info(`Calculated drag factor: ${(currentDragFactor * 1000000).toFixed(2)}, which is too far off the currently used dragfactor of ${movingDragAverage.getMovingAverage() * 1000000}`) + log.debug(`Time: ${totalTime.toFixed(4)} sec, impuls ${totalNumberOfImpulses}: recoveryStartAngularVelocity = ${recoveryStartAngularVelocity.toFixed(2)} rad/sec, recoveryEndAngularVelocity = ${recoveryEndAngularVelocity.toFixed(2)} rad/sec, recoveryPhaseLength = ${recoveryPhaseLength.toFixed(4)} sec`) + } + } else { + log.info(`*** Calculated drag factor: ${(currentDragFactor * 1000000).toFixed(2)}`) + } + } else { + log.error(`Time: ${totalTime.toFixed(4)} sec, impuls ${totalNumberOfImpulses}: division by 0 prevented, recoveryPhaseLength = ${recoveryPhaseLength} sec, recoveryStartAngularVelocity = ${recoveryStartAngularVelocity} rad/sec, recoveryEndAngularVelocity = ${recoveryEndAngularVelocity} rad/sec`) + } + } else { + log.error(`Time: ${totalTime.toFixed(4)} sec, impuls ${totalNumberOfImpulses}: division by 0 prevented, impulseLengthAtBeginFlank = ${flankDetector.impulseLengthAtBeginFlank()} sec`) + } + + // Calculate the key metrics + recoveryLinearDistance = Math.pow((dragFactor / rowerSettings.magicConstant), 1.0 / 3.0) * recoveryPhaseAngularDisplacement + totalLinearDistance += recoveryLinearDistance + if (currentDt > 0) { + previousAngularVelocity = currentAngularVelocity + currentAngularVelocity = angularDisplacementPerImpulse / currentDt + currentTorque = rowerSettings.flywheelInertia * ((currentAngularVelocity - previousAngularVelocity) / currentDt) + dragFactor * Math.pow(currentAngularVelocity, 2) + } + if (cycleLenght >= minimumCycleLenght) { + // There is no division by zero and the data data is credible + linearCycleVelocity = Math.pow((dragFactor / rowerSettings.magicConstant), 1.0 / 3.0) * ((recoveryPhaseAngularDisplacement + drivePhaseAngularDisplacement) / cycleLenght) + averagedCyclePower = dragFactor * Math.pow((recoveryPhaseAngularDisplacement + drivePhaseAngularDisplacement) / cycleLenght, 3.0) + } else { + log.error(`Time: ${totalTime.toFixed(4)} sec, impuls ${totalNumberOfImpulses}: cycle length was not credible, cycleLenght = ${cycleLenght} sec`) + } + + // Next, we start the Drive Phase + log.debug(`*** DRIVE phase started at time: ${totalTime.toFixed(4)} sec, impuls number ${totalNumberOfImpulses}`) + strokeNumber++ + drivePhaseStartTime = totalTime - flankDetector.timeToBeginOfFlank() + drivePhaseStartAngularDisplacement = totalNumberOfImpulses - flankDetector.noImpulsesToBeginFlank() + // driveStartAngularVelocity = angularDisplacementPerImpulse / flankDetector.impulseLengthAtBeginFlank() + + // Update the metrics + if (workoutHandler) { + workoutHandler.handleRecoveryEnd({ + timeSinceStart: totalTime, + // currDragFactor : currentDragFactor, + power: averagedCyclePower, + duration: cycleLenght, + strokeDistance: driveLinearDistance + recoveryLinearDistance, + durationDrivePhase: drivePhaseLength, + speed: linearCycleVelocity, + distance: totalLinearDistance, + numberOfStrokes: strokeNumber, + instantanousTorque: currentTorque, + strokeState: 'DRIVING' + }) } - workoutHandler.handleStrokeStateChanged({ - strokeState: 'DRIVING' - }) } function updateDrivePhase (currentDt) { - jPower = jPower + jMoment * omegaVector[0] * omegaDotVector[0] * currentDt - kPower = kPower + kDamp * (omegaVector[0] * omegaVector[0] * omegaVector[0]) * currentDt - log.debug(`Jpower: ${jPower}, kPower: ${kPower}`) + // Update the key metrics on each impulse + drivePhaseAngularDisplacement = ((totalNumberOfImpulses - flankDetector.noImpulsesToBeginFlank()) - drivePhaseStartAngularDisplacement) * angularDisplacementPerImpulse + driveLinearDistance = Math.pow((dragFactor / rowerSettings.magicConstant), 1.0 / 3.0) * drivePhaseAngularDisplacement + if (currentDt > 0) { + previousAngularVelocity = currentAngularVelocity + currentAngularVelocity = angularDisplacementPerImpulse / currentDt + currentTorque = rowerSettings.flywheelInertia * ((currentAngularVelocity - previousAngularVelocity) / currentDt) + dragFactor * Math.pow(currentAngularVelocity, 2) + } + if (workoutHandler) { + workoutHandler.updateKeyMetrics({ + timeSinceStart: totalTime, + distance: totalLinearDistance + driveLinearDistance, + instantanousTorque: currentTorque + }) + } } - function startRecoveryPhase () { - driveElapsed = timer.getValue('drive') - timer.stop('drive') - strokeElapsed = timer.getValue('stroke') - timer.stop('stroke') - log.debug(`driveElapsed: ${driveElapsed}, strokeElapsed: ${strokeElapsed}`) - timer.start('stroke') + function startRecoveryPhase (currentDt) { + // First, we conclude the Drive Phase + log.debug('*** drive phase completed') + if (rowerSettings.minimumRecoveryTime <= recoveryPhaseLength && rowerSettings.minimumDriveTime <= drivePhaseLength) { + // We have a credible cycletime + cycleLenght = recoveryPhaseLength + drivePhaseLength + } else { + log.debug(`Cycleleght wasn't credible: recoveryPhaseLength ${recoveryPhaseLength.toFixed(4)} sec, drivePhaseLength = ${drivePhaseLength.toFixed(4)} s`) + } + drivePhaseAngularDisplacement = ((totalNumberOfImpulses - flankDetector.noImpulsesToBeginFlank()) - drivePhaseStartAngularDisplacement) * angularDisplacementPerImpulse + // driveEndAngularVelocity = angularDisplacementPerImpulse / flankDetector.impulseLengthAtBeginFlank() + driveLinearDistance = Math.pow((dragFactor / rowerSettings.magicConstant), 1.0 / 3.0) * drivePhaseAngularDisplacement + totalLinearDistance += driveLinearDistance + if (currentDt > 0) { + previousAngularVelocity = currentAngularVelocity + currentAngularVelocity = angularDisplacementPerImpulse / currentDt + currentTorque = rowerSettings.flywheelInertia * ((currentAngularVelocity - previousAngularVelocity) / currentDt) + dragFactor * Math.pow(currentAngularVelocity, 2) + } + // We display the AVERAGE speed in the display, NOT the topspeed of the stroke + if (drivePhaseLength > rowerSettings.minimumDriveTime && cycleLenght > minimumCycleLenght) { + // let's prevent division's by zero and make sure data is credible + linearCycleVelocity = Math.pow((dragFactor / rowerSettings.magicConstant), 1.0 / 3.0) * ((drivePhaseAngularDisplacement + recoveryPhaseAngularDisplacement) / cycleLenght) + // drivePhaseEnergyProduced = rowerSettings.flywheelInertia * ((driveEndAngularVelocity - driveStartAngularVelocity) / drivePhaseLength) * drivePhaseAngularDisplacement + dragFactor * Math.pow(driveEndAngularVelocity, 2) * drivePh$ + averagedCyclePower = dragFactor * Math.pow((recoveryPhaseAngularDisplacement + drivePhaseAngularDisplacement) / cycleLenght, 3.0) + } else { + log.error(`Time: ${totalTime.toFixed(4)} sec, impuls ${totalNumberOfImpulses}: cycle length was not credible, drivePhaseLength = ${drivePhaseLength.toFixed(4)} sec, cycleLenght = ${cycleLenght.toFixed(4)} sec`) + } - if (strokeElapsed !== 0 && workoutHandler) { - workoutHandler.handleStroke({ - // if the recoveryPhase is shorter than 0.2 seconds we set it to 2 seconds, this mitigates the problem - // that we do not have a recovery phase on the first stroke - power: (jPower + kPower) / (((strokeElapsed - driveElapsed) < 0.2) ? strokeElapsed + 2 : strokeElapsed), - duration: strokeElapsed, - durationDrivePhase: driveElapsed, - distance: strokeDistance, + // Next, we start the Recovery Phase + log.debug(`*** RECOVERY phase started at time: ${totalTime.toFixed(4)} sec, impuls number ${totalNumberOfImpulses}`) + recoveryPhaseStartTime = totalTime - flankDetector.timeToBeginOfFlank() + recoveryPhaseStartAngularDisplacement = totalNumberOfImpulses - flankDetector.noImpulsesToBeginFlank() + if (flankDetector.impulseLengthAtBeginFlank() > 0) { + recoveryStartAngularVelocity = angularDisplacementPerImpulse / flankDetector.impulseLengthAtBeginFlank() + } else { + log.error(`Time: ${totalTime.toFixed(4)} sec, impuls ${totalNumberOfImpulses}: division by 0 prevented, flankDetector.impulseLengthAtBeginFlank() is ${flankDetector.impulseLengthAtBeginFlank()} sec`) + } + + // Update the metrics + if (workoutHandler) { + workoutHandler.handleStrokeEnd({ + timeSinceStart: totalTime, + power: averagedCyclePower, + duration: cycleLenght, + strokeDistance: driveLinearDistance + recoveryLinearDistance, + durationDrivePhase: drivePhaseLength, + speed: linearCycleVelocity, + distance: totalLinearDistance, + instantanousTorque: currentTorque, strokeState: 'RECOVERY' }) } - - // stroke finished, reset stroke specific measurements - kDampEstimator = 0.0 - strokeDistance = 0 - log.debug('*** recovery phase started') } function updateRecoveryPhase (currentDt) { - kDampEstimator = kDampEstimator + (omegaDotVector[0] / (omegaVector[0] * omegaVector[0])) * currentDt + // Update the key metrics on each impulse + recoveryPhaseAngularDisplacement = ((totalNumberOfImpulses - flankDetector.noImpulsesToBeginFlank()) - recoveryPhaseStartAngularDisplacement) * angularDisplacementPerImpulse + recoveryLinearDistance = Math.pow((dragFactor / rowerSettings.magicConstant), 1.0 / 3.0) * recoveryPhaseAngularDisplacement + if (currentDt > 0) { + previousAngularVelocity = currentAngularVelocity + currentAngularVelocity = angularDisplacementPerImpulse / currentDt + currentTorque = rowerSettings.flywheelInertia * ((currentAngularVelocity - previousAngularVelocity) / currentDt) + dragFactor * Math.pow(currentAngularVelocity, 2) + } + if (workoutHandler) { + workoutHandler.updateKeyMetrics({ + timeSinceStart: totalTime, + distance: totalLinearDistance + recoveryLinearDistance, + instantanousTorque: currentTorque + }) + } + } + + function allowMovement () { + movementAllowed = true + } + + function stopMoving () { + movementAllowed = false + } + + function reset () { + cyclePhase = 'Drive' + totalTime = 0.0 + totalNumberOfImpulses = 0.0 + strokeNumber = 0.0 + drivePhaseStartTime = 0.0 + drivePhaseStartAngularDisplacement = 0.0 + drivePhaseLength = 0.0 + drivePhaseAngularDisplacement = rowerSettings.numOfImpulsesPerRevolution + // driveStartAngularVelocity = 0 + // driveEndAngularVelocity = angularDisplacementPerImpulse / rowerSettings.minimumTimeBetweenImpulses + driveLinearDistance = 0.0 + // drivePhaseEnergyProduced = 0.0 + recoveryPhaseStartTime = 0.0 + recoveryPhaseStartAngularDisplacement = 0.0 + recoveryPhaseAngularDisplacement = rowerSettings.numOfImpulsesPerRevolution + recoveryPhaseLength = rowerSettings.minimumRecoveryTime + recoveryStartAngularVelocity = angularDisplacementPerImpulse / rowerSettings.minimumTimeBetweenImpulses + recoveryEndAngularVelocity = angularDisplacementPerImpulse / rowerSettings.maximumTimeBetweenImpulses + recoveryLinearDistance = 0.0 + currentDragFactor = rowerSettings.dragFactor / 1000000 + movingDragAverage.reset() + dragFactor = movingDragAverage.getMovingAverage() + cycleLenght = 0.0 + linearCycleVelocity = 0.0 + totalLinearDistance = 0.0 + averagedCyclePower = 0.0 } function notify (receiver) { @@ -224,6 +325,9 @@ function createRowingEngine (rowerSettings) { return { handleRotationImpulse, + allowMovement, + stopMoving, + reset, notify } } diff --git a/app/engine/RowingEngine.test.js b/app/engine/RowingEngine.test.js index ba85c96..13fe2e7 100644 --- a/app/engine/RowingEngine.test.js +++ b/app/engine/RowingEngine.test.js @@ -17,12 +17,13 @@ log.setLevel('warn') const createWorkoutEvaluator = function () { const strokes = [] - function handleStroke (stroke) { + function handleStrokeEnd (stroke) { strokes.push(stroke) log.info(`stroke: ${strokes.length}, power: ${Math.round(stroke.power)}w, duration: ${stroke.duration.toFixed(2)}s, ` + ` drivePhase: ${stroke.durationDrivePhase.toFixed(2)}s, distance: ${stroke.distance.toFixed(2)}m`) } - function handleStrokeStateChanged () {} + function updateKeyMetrics () {} + function handleRecoveryEnd () {} function handlePause () {} function getNumOfStrokes () { return strokes.length @@ -33,17 +34,23 @@ const createWorkoutEvaluator = function () { function getMinStrokePower () { return strokes.map((stroke) => stroke.power).reduce((acc, power) => Math.max(acc, power)) } - function getDistance () { - return strokes.reduce((acc, stroke) => acc + stroke.distance, 0) + function getDistanceSum () { + return strokes.map((stroke) => stroke.strokeDistance).reduce((acc, strokeDistance) => acc + strokeDistance) } + function getDistanceTotal () { + return strokes[strokes.length - 1].distance + } + return { - handleStroke, - handleStrokeStateChanged, + handleStrokeEnd, + handleRecoveryEnd, + updateKeyMetrics, handlePause, getNumOfStrokes, getMaxStrokePower, getMinStrokePower, - getDistance + getDistanceSum, + getDistanceTotal } } @@ -54,7 +61,8 @@ test('sample data for WRX700 should produce plausible results with rower profile await replayRowingSession(rowingEngine.handleRotationImpulse, { filename: 'recordings/WRX700_2magnets.csv' }) assert.is(workoutEvaluator.getNumOfStrokes(), 16, 'number of strokes does not meet expectation') assertPowerRange(workoutEvaluator, 50, 220) - assertDistanceRange(workoutEvaluator, 140, 144) + assertDistanceRange(workoutEvaluator, 158, 162) + assertStrokeDistanceSumMatchesTotal(workoutEvaluator) }) test('sample data for DKNR320 should produce plausible results with rower profile', async () => { @@ -65,6 +73,7 @@ test('sample data for DKNR320 should produce plausible results with rower profil assert.is(workoutEvaluator.getNumOfStrokes(), 10, 'number of strokes does not meet expectation') assertPowerRange(workoutEvaluator, 75, 200) assertDistanceRange(workoutEvaluator, 64, 67) + assertStrokeDistanceSumMatchesTotal(workoutEvaluator) }) test('sample data for RX800 should produce plausible results with rower profile', async () => { @@ -73,8 +82,9 @@ test('sample data for RX800 should produce plausible results with rower profile' rowingEngine.notify(workoutEvaluator) await replayRowingSession(rowingEngine.handleRotationImpulse, { filename: 'recordings/RX800.csv' }) assert.is(workoutEvaluator.getNumOfStrokes(), 10, 'number of strokes does not meet expectation') - assertPowerRange(workoutEvaluator, 160, 270) - assertDistanceRange(workoutEvaluator, 78, 92) + assertPowerRange(workoutEvaluator, 80, 200) + assertDistanceRange(workoutEvaluator, 70, 80) + assertStrokeDistanceSumMatchesTotal(workoutEvaluator) }) function assertPowerRange (evaluator, minPower, maxPower) { @@ -83,6 +93,11 @@ function assertPowerRange (evaluator, minPower, maxPower) { } function assertDistanceRange (evaluator, minDistance, maxDistance) { - assert.ok(evaluator.getDistance() >= minDistance && evaluator.getDistance() <= maxDistance, `distance should be between ${minDistance}m and ${maxDistance}m, but is ${evaluator.getDistance().toFixed(2)}m`) + assert.ok(evaluator.getDistanceSum() >= minDistance && evaluator.getDistanceSum() <= maxDistance, `distance should be between ${minDistance}m and ${maxDistance}m, but is ${evaluator.getDistanceSum().toFixed(2)}m`) } + +function assertStrokeDistanceSumMatchesTotal (evaluator) { + assert.ok(evaluator.getDistanceSum().toFixed(2) === evaluator.getDistanceTotal().toFixed(2), `sum of distance of all strokes is ${evaluator.getDistanceSum().toFixed(2)}m, but total in last stroke is ${evaluator.getDistanceTotal().toFixed(2)}m`) +} + test.run() diff --git a/app/engine/RowingStatistics.js b/app/engine/RowingStatistics.js index 4bd8013..b377bee 100644 --- a/app/engine/RowingStatistics.js +++ b/app/engine/RowingStatistics.js @@ -8,11 +8,15 @@ import { EventEmitter } from 'events' import { createMovingIntervalAverager } from './MovingIntervalAverager.js' import { createWeightedAverager } from './WeightedAverager.js' -// The number of strokes that are considered when averaging the calculated metrics -// Higher values create more stable metrics but make them less responsive -const numOfDataPointsForAveraging = 3 +import loglevel from 'loglevel' +const log = loglevel.getLogger('RowingEngine') -function createRowingStatistics () { +function createRowingStatistics (config) { + const numOfDataPointsForAveraging = config.numOfPhasesForAveragingScreenData + const screenUpdateInterval = config.screenUpdateInterval + const minimumStrokeTime = config.rowerSettings.minimumRecoveryTime + config.rowerSettings.minimumDriveTime + const maximumStrokeTime = config.maximumStrokeTime + const timeBetweenStrokesBeforePause = maximumStrokeTime * 1000 const emitter = new EventEmitter() const strokeAverager = createWeightedAverager(numOfDataPointsForAveraging) const powerAverager = createWeightedAverager(numOfDataPointsForAveraging) @@ -21,7 +25,6 @@ function createRowingStatistics () { const caloriesAveragerMinute = createMovingIntervalAverager(60) const caloriesAveragerHour = createMovingIntervalAverager(60 * 60) let trainingRunning = false - let durationTimer let rowingPausedTimer let heartrateResetTimer let distanceTotal = 0.0 @@ -31,12 +34,14 @@ function createRowingStatistics () { let heartrate let heartrateBatteryLevel = 0 let lastStrokeDuration = 0.0 + let instantanousTorque = 0.0 let lastStrokeDistance = 0.0 + let lastStrokeSpeed = 0.0 let lastStrokeState = 'RECOVERY' let lastMetrics = {} // send metrics to the clients periodically, if the data has changed - setInterval(emitMetrics, 1000) + setInterval(emitMetrics, screenUpdateInterval) function emitMetrics () { const currentMetrics = getMetrics() if (Object.entries(currentMetrics).toString() !== Object.entries(lastMetrics).toString()) { @@ -45,28 +50,35 @@ function createRowingStatistics () { } } - function handleStroke (stroke) { + function handleStrokeEnd (stroke) { if (!trainingRunning) startTraining() - // if we do not get a stroke for 6 seconds we treat this as a rowing pause + // if we do not get a stroke for timeBetweenStrokesBeforePause miliseconds we treat this as a rowing pause if (rowingPausedTimer)clearInterval(rowingPausedTimer) - rowingPausedTimer = setTimeout(() => pauseRowing(), 6000) + rowingPausedTimer = setTimeout(() => pauseRowing(), timeBetweenStrokesBeforePause) // based on: http://eodg.atm.ox.ac.uk/user/dudhia/rowing/physics/ergometer.html#section11 const calories = (4 * powerAverager.weightedAverage() + 350) * (stroke.duration) / 4200 + durationTotal = stroke.timeSinceStart powerAverager.pushValue(stroke.power) - speedAverager.pushValue(stroke.distance / stroke.duration) - powerRatioAverager.pushValue(stroke.durationDrivePhase / stroke.duration) - strokeAverager.pushValue(stroke.duration) - caloriesAveragerMinute.pushValue(calories, stroke.duration) - caloriesAveragerHour.pushValue(calories, stroke.duration) - caloriesTotal += calories - distanceTotal += stroke.distance - strokesTotal++ - lastStrokeDuration = stroke.duration - lastStrokeDistance = stroke.distance - lastStrokeState = stroke.strokeState + speedAverager.pushValue(stroke.speed) + if (stroke.duration < timeBetweenStrokesBeforePause && stroke.duration > minimumStrokeTime) { + // stroke duration has to be credible to be accepted + powerRatioAverager.pushValue(stroke.durationDrivePhase / stroke.duration) + strokeAverager.pushValue(stroke.duration) + caloriesAveragerMinute.pushValue(calories, stroke.duration) + caloriesAveragerHour.pushValue(calories, stroke.duration) + } else { + log.debug(`*** Stroke duration of ${stroke.duration} sec is considered unreliable, skipped update stroke statistics`) + } + caloriesTotal += calories + lastStrokeDuration = stroke.duration + distanceTotal = stroke.distance + lastStrokeDistance = stroke.strokeDistance + lastStrokeState = stroke.strokeState + lastStrokeSpeed = stroke.speed + instantanousTorque = stroke.instantanousTorque emitter.emit('strokeFinished', getMetrics()) } @@ -79,11 +91,33 @@ function createRowingStatistics () { } // initiated when the stroke state changes - function handleStrokeStateChanged (state) { + function handleRecoveryEnd (stroke) { // todo: wee need a better mechanism to communicate strokeState updates // this is an initial hacky attempt to see if we can use it for the C2-pm5 protocol - lastStrokeState = state.strokeState - emitter.emit('strokeStateChanged', getMetrics()) + durationTotal = stroke.timeSinceStart + powerAverager.pushValue(stroke.power) + speedAverager.pushValue(stroke.speed) + if (stroke.duration < timeBetweenStrokesBeforePause && stroke.duration > minimumStrokeTime) { + // stroke duration has to be credible to be accepted + powerRatioAverager.pushValue(stroke.durationDrivePhase / stroke.duration) + strokeAverager.pushValue(stroke.duration) + } else { + log.debug(`*** Stroke duration of ${stroke.duration} sec is considered unreliable, skipped update stroke statistics`) + } + distanceTotal = stroke.distance + strokesTotal = stroke.numberOfStrokes + lastStrokeDistance = stroke.strokeDistance + lastStrokeState = stroke.strokeState + lastStrokeSpeed = stroke.speed + instantanousTorque = stroke.instantanousTorque + emitter.emit('recoveryFinished', getMetrics()) + } + + // initiated when updating key statistics + function updateKeyMetrics (stroke) { + durationTotal = stroke.timeSinceStart + distanceTotal = stroke.distance + instantanousTorque = stroke.instantanousTorque } // initiated when new heart rate value is received from heart rate sensor @@ -93,29 +127,34 @@ function createRowingStatistics () { heartrateResetTimer = setTimeout(() => { heartrate = 0 heartrateBatteryLevel = 0 - }, 2000) + }, 6000) heartrate = value.heartrate heartrateBatteryLevel = value.batteryLevel } function getMetrics () { - const splitTime = speedAverager.weightedAverage() !== 0 ? (500.0 / speedAverager.weightedAverage()) : Infinity + const splitTime = speedAverager.weightedAverage() !== 0 && lastStrokeSpeed > 0 ? (500.0 / speedAverager.weightedAverage()) : Infinity + // todo: due to sanitization we currently do not use a consistent time throughout the engine + // We will rework this section to use both absolute and sanitized time in the appropriate places. + // We will also polish up the events for the recovery and drive phase, so we get clean complete strokes from the first stroke onwards. + const averagedStrokeTime = strokeAverager.weightedAverage() > minimumStrokeTime && strokeAverager.weightedAverage() < maximumStrokeTime && lastStrokeSpeed > 0 ? strokeAverager.weightedAverage() : 0 // seconds return { durationTotal, durationTotalFormatted: secondsToTimeString(durationTotal), strokesTotal, - distanceTotal: distanceTotal, // meters + distanceTotal: distanceTotal > 0 ? distanceTotal : 0, // meters caloriesTotal: caloriesTotal, // kcal - caloriesPerMinute: caloriesAveragerMinute.average(), - caloriesPerHour: caloriesAveragerHour.average(), + caloriesPerMinute: caloriesAveragerMinute.average() > 0 ? caloriesAveragerMinute.average() : 0, + caloriesPerHour: caloriesAveragerHour.average() > 0 ? caloriesAveragerHour.average() : 0, strokeTime: lastStrokeDuration, // seconds - distance: lastStrokeDistance, // meters - power: powerAverager.weightedAverage(), // watts + distance: lastStrokeDistance > 0 && lastStrokeSpeed > 0 ? lastStrokeDistance : 0, // meters + power: powerAverager.weightedAverage() > 0 && lastStrokeSpeed > 0 ? powerAverager.weightedAverage() : 0, // watts split: splitTime, // seconds/500m splitFormatted: secondsToTimeString(splitTime), - powerRatio: powerRatioAverager.weightedAverage(), - strokesPerMinute: strokeAverager.weightedAverage() !== 0 ? (60.0 / strokeAverager.weightedAverage()) : 0, - speed: (speedAverager.weightedAverage() * 3.6), // km/h + powerRatio: powerRatioAverager.weightedAverage() > 0 && lastStrokeSpeed > 0 ? powerRatioAverager.weightedAverage() : 0, + instantanousTorque: instantanousTorque, + strokesPerMinute: averagedStrokeTime !== 0 ? (60.0 / averagedStrokeTime) : 0, + speed: speedAverager.weightedAverage() > 0 && lastStrokeSpeed > 0 ? (speedAverager.weightedAverage() * 3.6) : 0, // km/h strokeState: lastStrokeState, heartrate, heartrateBatteryLevel @@ -124,12 +163,10 @@ function createRowingStatistics () { function startTraining () { trainingRunning = true - startDurationTimer() } function stopTraining () { trainingRunning = false - stopDurationTimer() if (rowingPausedTimer)clearInterval(rowingPausedTimer) } @@ -157,17 +194,6 @@ function createRowingStatistics () { emitter.emit('rowingPaused') } - function startDurationTimer () { - durationTimer = setInterval(() => { - durationTotal++ - }, 1000) - } - - function stopDurationTimer () { - clearInterval(durationTimer) - durationTimer = undefined - } - // converts a timeStamp in seconds to a human readable hh:mm:ss format function secondsToTimeString (secondsTimeStamp) { if (secondsTimeStamp === Infinity) return '∞' @@ -180,10 +206,11 @@ function createRowingStatistics () { } return Object.assign(emitter, { - handleStroke, + handleStrokeEnd, handlePause, handleHeartrateMeasurement, - handleStrokeStateChanged, + handleRecoveryEnd, + updateKeyMetrics, reset: resetTraining }) } diff --git a/app/engine/WorkoutRecorder.js b/app/engine/WorkoutRecorder.js index c783606..c281dd2 100644 --- a/app/engine/WorkoutRecorder.js +++ b/app/engine/WorkoutRecorder.js @@ -167,8 +167,8 @@ function createWorkoutRecorder () { fs.writeFile(workout.filename, tcxXml, (err) => { if (err) log.error(err) }) } - function reset () { - createRecordings() + async function reset () { + await createRecordings() strokes = [] rotationImpulses = [] startTime = undefined @@ -178,7 +178,7 @@ function createWorkoutRecorder () { createRecordings() } - function createRecordings () { + async function createRecordings () { if (!config.recordRawData && !config.createTcxFiles) { return } @@ -186,17 +186,16 @@ function createWorkoutRecorder () { const minimumRecordingTimeInSeconds = 10 const rotationImpulseTimeTotal = rotationImpulses.reduce((acc, impulse) => acc + impulse, 0) const strokeTimeTotal = strokes.reduce((acc, stroke) => acc + stroke.strokeTime, 0) - - if (rotationImpulseTimeTotal < minimumRecordingTimeInSeconds && strokeTimeTotal < minimumRecordingTimeInSeconds) { + if (rotationImpulseTimeTotal < minimumRecordingTimeInSeconds || strokeTimeTotal < minimumRecordingTimeInSeconds) { log.debug(`recording time is less than ${minimumRecordingTimeInSeconds}s, skipping creation of recording files...`) return } if (config.recordRawData) { - createRawDataFile() + await createRawDataFile() } if (config.createTcxFiles) { - createTcxFile() + await createTcxFile() } } diff --git a/app/server.js b/app/server.js index 1c25534..63720a7 100644 --- a/app/server.js +++ b/app/server.js @@ -61,9 +61,10 @@ peripheralManager.on('control', (event) => { }) function resetWorkout () { + workoutRecorder.reset() + rowingEngine.reset() rowingStatistics.reset() peripheralManager.notifyStatus({ name: 'reset' }) - workoutRecorder.reset() } const gpioTimerService = fork('./app/gpio/GpioTimerService.js') @@ -76,7 +77,7 @@ function handleRotationImpulse (dataPoint) { } const rowingEngine = createRowingEngine(config.rowerSettings) -const rowingStatistics = createRowingStatistics() +const rowingStatistics = createRowingStatistics(config) rowingEngine.notify(rowingStatistics) const workoutRecorder = createWorkoutRecorder() @@ -90,11 +91,12 @@ rowingStatistics.on('strokeFinished', (metrics) => { workoutRecorder.recordStroke(metrics) }) -rowingStatistics.on('strokeStateChanged', (metrics) => { +rowingStatistics.on('recoveryFinished', (metrics) => { // @@ COPY ME TO GOOD FILE !! + webServer.notifyClients(metrics) peripheralManager.notifyMetrics('strokeStateChanged', metrics) }) -rowingStatistics.on('metricsUpdate', (metrics) => { +rowingStatistics.on('metricsUpdate', (metrics) => { // @@ COPY ME TO GOOD FILE !! webServer.notifyClients(metrics) peripheralManager.notifyMetrics('metricsUpdate', metrics) }) diff --git a/config/default.config.js b/config/default.config.js index a2d8238..fdd78be 100644 --- a/config/default.config.js +++ b/config/default.config.js @@ -66,6 +66,24 @@ export default { // Most bike training applications are fine with any device name ftmsBikePeripheralName: 'OpenRowingBike', + // The interval for updating all your screens (i.e. the monitor, but also bluetooth devices) in ms. + // Advised is to update at least once per second, to make sure the timer moves nice and smoothly. + // Around 100 ms results in a very smooth experience that the distance display also updates smoothly + // Please note that using a 100ms or less will result in more work for your rapberry pi + screenUpdateInterval: 1000, + + // The number of stroke phases (i.e. Drive or Recovery) used to smoothen the data displayed on your + // screens (i.e. the monitor, but also bluetooth devices, etc.). A nice smooth experience is found at 6 + // phases, a much more volatile (but more accurate and responsive) is found around 3. The minimum is 1, + // but for recreational rowers that might feel much too restless to be useful + numOfPhasesForAveragingScreenData: 6, + + // The time between strokes in seconds before the rower considers it a pause. Default value is set to 6. + // It is not recommended to go below this value, as not recognizing a stroke could result in a pause + // (as a typical stroke is between 2 to 3 seconds for recreational rowers). Increase it when you have + // issues with your stroke detection and the rower is pausing unexpectedly + maximumStrokeTime: 10, + // The rower specific settings. Either choose a profile from config/rowerProfiles.js or // define the settings individually. If you find good settings for a new rowing device // please send them to us (together with a raw recording of 10 strokes) so we can add diff --git a/config/rowerProfiles.js b/config/rowerProfiles.js index fe971e3..64b230d 100644 --- a/config/rowerProfiles.js +++ b/config/rowerProfiles.js @@ -16,37 +16,58 @@ export default { // i.e. the number of magnets if used with a reed sensor numOfImpulsesPerRevolution: 1, + // NOISE FILTER SETTINGS // Filter Settings to reduce noise in the measured data // Minimum and maximum duration between impulses in seconds during active rowing. Measurements outside of this range - // will be replaced by a default value. + // are replaced by a default value. minimumTimeBetweenImpulses: 0.014, maximumTimeBetweenImpulses: 0.5, - // Percentage change between successive intervals - maximumDownwardChange: 0.25, // effectively the maximum deceleration - maximumUpwardChange: 1.75, // effectively the maximum acceleration + // Percentage change between successive intervals before measurements are considered invalid + maximumDownwardChange: 0.25, // effectively the maximum acceleration + maximumUpwardChange: 1.75, // effectively the maximum decceleration + // Smoothing determines the length of the running average for certain volatile measurements, 1 effectively turns it off + smoothing: 1, + + // STROKE DETECTION SETTINGS + // Flank length determines the minimum number of consecutive increasing/decreasing measuments that are needed before the stroke detection + // considers a drive phase change + // numberOfErrorsAllowed allows for a more noisy approach, but shouldn't be needed flankLength: 2, numberOfErrorsAllowed: 0, - // Settings for the rowing phase detection (in seconds) - minimumDriveTime: 0.500, - minimumRecoveryTime: 0.800, - // Needed to determine the damping constant of the rowing machine. This value can be measured in the recovery phase + // Natural deceleration is used to distinguish between a powered and unpowered flywheel. + // This must be a NEGATIVE number and indicates the level of deceleration required to interpret it as a free spinning + // flywheel. The best way to find the correct value for your rowing machine is a try and error approach. + // You can also set this to zero (or positive), to use the more robust, but not so precise acceleration-based stroke + // detection algorithm. + naturalDeceleration: 0, + + // Error reducing settings for the rowing phase detection (in seconds) + maximumImpulseTimeBeforePause: 3.0, // maximum time between impulses before the rowing engine considers it a pause + minimumDriveTime: 0.300, // minimum time of the drive phase + minimumRecoveryTime: 1.200, // minimum time of the recovery phase + + // Needed to determine the drag factor of the rowing machine. This value can be measured in the recovery phase // of the stroke. // To display it for your rowing machine, set the logging level of the RowingEngine to 'info'. Then start rowing and // you will see the measured values in the log. + // Just as a frame of reference: the Concept2 can display this factor from the menu, where it is multiplied with 1.000.000 + // For a new Concept2 the Drag Factor ranges between 80 (Damper setting 1) and 220 (Damper setting 10). Other rowers are + // in the range of 150 to 450 (NordicTrack). // Open Rowing Monitor can also automatically adjust this value based on the measured damping. To do so, set the setting // autoAdjustDampingConstant to true (see below). - omegaDotDivOmegaSquare: 0.02, + dragFactor: 1500, // The moment of inertia of the flywheel kg*m^2 // A way to measure it is outlined here: https://dvernooy.github.io/projects/ergware/, "Flywheel moment of inertia" // You could also roughly estimate it by just doing some strokes and the comparing the calculated power values for - // plausibility. Note that the power also depends on omegaDotDivOmegaSquare (see above). - jMoment: 0.49, + // plausibility. Note that the power also depends on the drag factor (see above). + flywheelInertia: 0.5, - // Set this to true, if you want to automatically update omegaDotDivOmegaSquare and kDamp based on the measured + // Set this to true, if you want to automatically update the drag factor based on the measured // values in the stroke recovery phase. If your rower produces stable damping values, then this could be a good // option to dynamically adjust your measurements to the damper setting of your rower. + // When your machine's power and speed readings are too volatile it is wise to turn it off autoAdjustDampingConstant: false, // A constant that is commonly used to convert flywheel revolutions to a rowed distance @@ -55,103 +76,102 @@ export default { // to their expectations. So for your rower, you have to find a credible distance for your effort. // Also note that the rowed distance also depends on jMoment, so please calibrate that before changing this constant. // PLEASE NOTE: Increasing this number decreases your rowed meters - magicConstant: 2.8, - - // Set this to true if you are using a water rower - // The mass of the water starts rotating, when you pull the handle, and therefore acts - // like a massive flywheel - // Liquids are a tricky thing and therefore the dumping constant does not seem to be - // that constant on water rowers... - // This is WIP, but for now this setting is used to figure out the drive and recovery phases - // differently on water rowers - liquidFlywheel: false + magicConstant: 2.8 }, // Sportstech WRX700 WRX700: { numOfImpulsesPerRevolution: 2, - minimumTimeBetweenImpulses: 0.05, - maximumTimeBetweenImpulses: 1, - omegaDotDivOmegaSquare: 0.046, - jMoment: 0.49, - liquidFlywheel: true + naturalDeceleration: -5.0, + flywheelInertia: 0.45, + dragFactor: 22000 }, // DKN R-320 Air Rower DKNR320: { numOfImpulsesPerRevolution: 1, - minimumTimeBetweenImpulses: 0.15, - maximumTimeBetweenImpulses: 0.5, - omegaDotDivOmegaSquare: 0.019, - jMoment: 0.4, - liquidFlywheel: true + flywheelInertia: 0.41, + dragFactor: 4000 }, // NordicTrack RX800 Air Rower RX800: { numOfImpulsesPerRevolution: 4, - liquidFlywheel: false, - - // Damper setting 10 + /* Damper setting 10 minimumTimeBetweenImpulses: 0.018, maximumTimeBetweenImpulses: 0.0338, - maximumDownwardChange: 0.69, - maximumUpwardChange: 1.3, - flankLength: 3, - numberOfErrorsAllowed: 0, - minimumDriveTime: 0.300, - minimumRecoveryTime: 0.750, - omegaDotDivOmegaSquare: 0.00543660639574872, - jMoment: 0.174, - magicConstant: 3.75 - // + smoothing: 3, + maximumDownwardChange: 0.88, + maximumUpwardChange: 1.11, + flankLength: 9, + numberOfErrorsAllowed: 2, + naturalDeceleration: -11.5, // perfect runs + minimumDriveTime: 0.40, + minimumRecoveryTime: 0.90, + flywheelInertia: 0.146, + dragFactor: 560 + */ /* Damper setting 8 minimumTimeBetweenImpulses: 0.017, maximumTimeBetweenImpulses: 0.034, + smoothing: 3, maximumDownwardChange: 0.8, maximumUpwardChange: 1.15, - minimumDriveTime: 0.300, - minimumRecoveryTime: 0.750, - omegaDotDivOmegaSquare: 0.005305471, - jMoment: 0.155, // still under investigation - magicConstant: 4 // still under investigation + flankLength: 9, + numberOfErrorsAllowed: 2, + naturalDeceleration: -10.25, // perfect runs + minimumDriveTime: 0.30, + minimumRecoveryTime: 0.90, + flywheelInertia: 0.131, + dragFactor: 440 */ - /* Damper setting 6 - minimumTimeBetweenImpulses: 0.017, - maximumTimeBetweenImpulses: 0.034, - maximumDownwardChange: 0.85, - maximumUpwardChange: 1.15, - minimumDriveTime: 0.300, - minimumRecoveryTime: 0.750, - omegaDotDivOmegaSquare: 0.0047, - jMoment: 0.135, // still under investigation - magicConstant: 4.25 // still under investigation - */ + // Damper setting 6 + minimumTimeBetweenImpulses: 0.00925, + maximumTimeBetweenImpulses: 0.038, + smoothing: 3, + maximumDownwardChange: 0.86, + maximumUpwardChange: 1.13, + flankLength: 9, + numberOfErrorsAllowed: 2, + // naturalDeceleration: -8.5, // perfect runs IIII + naturalDeceleration: -8.6, // perfect runs IIIXI + minimumDriveTime: 0.28, + minimumRecoveryTime: 0.90, + flywheelInertia: 0.131, + dragFactor: 310 + // /* Damper setting 4 - minimumTimeBetweenImpulses: 0.019, - maximumTimeBetweenImpulses: 0.032, - maximumDownwardChange: 0.70, - maximumUpwardChange: 1.30, - minimumDriveTime: 0.300, - minimumRecoveryTime: 0.750, - omegaDotDivOmegaSquare: 0.00355272, - jMoment: 0.125, - magicConstant: 4.4 + minimumTimeBetweenImpulses: 0.00925, + maximumTimeBetweenImpulses: 0.0335, + smoothing: 3, + maximumDownwardChange: 0.890, + maximumUpwardChange: 1.07, + flankLength: 10, + numberOfErrorsAllowed: 2, + naturalDeceleration: -5.5, // perfect runs I + minimumDriveTime: 0.24, + minimumRecoveryTime: 0.90, + flywheelInertia: 0.140, + dragFactor: 255 */ /* Damper setting 2 - minimumTimeBetweenImpulses: 0.016, - maximumTimeBetweenImpulses: 0.033, - maximumDownwardChange: 0.85, - maximumUpwardChange: 1.15, - minimumDriveTime: 0.300, - minimumRecoveryTime: 0.750, - omegaDotDivOmegaSquare: 0.002263966, - jMoment: 0.111, - magicConstant: 4.6 + minimumTimeBetweenImpulses: 0.00925, + maximumTimeBetweenImpulses: 0.030, + smoothing: 4, + maximumDownwardChange: 0.962, + maximumUpwardChange: 1.07, + flankLength: 11, + numberOfErrorsAllowed: 2, + naturalDeceleration: -2.45, // perfect runs + minimumDriveTime: 0.28, + minimumRecoveryTime: 0.90, + flywheelInertia: 0.155, + dragFactor: 155, + magicConstant: 2.8 */ } } diff --git a/docs/Physics of the OpenRowingMonitor.docx b/docs/Physics of the OpenRowingMonitor.docx new file mode 100644 index 0000000000000000000000000000000000000000..4e924a82cbf65543e887fc991658ade9f115e43c GIT binary patch literal 359302 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 z z>0?;E$ue^NC-mt#&$;$ufz+Dnab-LL2PB=aVyoxElr&N6qo64oR#&Ss5$Rz#=dIl{ z?~jb2YU0fq*wDkmP(4C!>Pa&cm3(&;r15}yh+aXJ8Nc|fuS%eSYHu`hOXF-NPL2SuLL)^1JG?mr`t3~2dH7DqKn#o%>Z&fsSkK9ok+8rW#7BqoL2MIa&;>N z8Hfz6AQ;c(WuTinia7zkPl=1yD-$U&1q#*&e5&J;QlaRI3Xl#QmS9!GKEx@L_+8rL zWx!*do_Qu@RAUow3Ti_SlV1xhu$ff zPMq=koNC0_MpR$pG`b-l<6ZK?(%R?v2N)ND$(fw$O6VsxOv3;1_OUG>seoI=&zSIB~H>QSOa;JafN(oE%Zdk3wQ7Ae}$RwnJ)SdQceD-v8z z8VC}go6#DKB-S0oo;5#-S;|H`DnaY0%!W_ZMVu6)!|MrxR_#<*N4j2~i@olG97TE2<=mOuZ!4u29r4zsZsslp< z?xXd7?=hdvaMBkm)=y#Rtrf;)k%V1}7nj&0ZjW%qOxgBw86hvH4;85YUiSzpWLNH8 zV%$WQkl^e4J!u&u(vn*7`nw&DQaV@BjD$0x8YT{EL89^rY|3cBqg`9#0ZFr1)m@Ki z8w-f2YG2Xn#B&_-1C?p#*_X$$XWpFC##qXok63hdGSk#ars!F{6r0bS3BvA~4Vzg! zZE@zc&DGIg?=_#rCu{qHZk9)X7^*Ze|JNPUUgg-*#}Ph;ibP8B$O;feaA9<j@nv z@{4_+Ao8@^3M1W><9|b?{eH;}FddEK0%peVW&Ac|@(mJJF2&z!NQCEp`wZ9Z|i1Z`>D299~t6a<|kZxCEHTH$cN0dWclnnlf;bK zrC<#JFeh?RP)R5P(Q#POO_3dz$n?@p&^tYMBcBZx2)0QXHkk+-$jJQOKfte&NpXRA ztWTBj*jqMz!pmgOrh%)V*4jRnjeMZ>$saCP{=JLChz+^3EIgltS(=`eBIep}4@DHxq(ruV9VHI9G7Fx48=_WvFm>IsR5_;;Of8;y}bquymp# zS|oi8f0J-Kj#b7!T*vG~^^i9rm*uYHT==NpbDA+Hj;+0!X^5TFV=Ltyrx-E-ty-HZ zv8P?C4HOZReKl5qy!TFjVFe5F@~yf*fnc1A?MH$FPjOOTP3V_e!g310*Gf@gA-jF= zlKX4u2p;ED^xP(BcSZ2Ff15sXEnt)fqnEd1_q?1&1eu!pUNaF4bbkX+p72%Udc^q&Oecxgaup z^x)%j_pCLa@&gfANkgeKdUS?`T>FC6+#Umg6t9U+2g~MuUQ2%m(kWjx=u&CMz#IUi z*3`2Qx(IZ9wDn>k1i>GGqTp!(CwnkjcZp(a9bli9bXg=eKTh7jEPy_04gA>b$$I1t zz5&qa7)v|v1>OPh(GcU%O{j(pYxsN#;2&!*m4@RS9Hti%5Mb-9pC$;5QWAy&N>CHbh-C?M05< z1u-wY8ym>en@{2C*sF>I4vb*@FDS_(0VZRMtp~w-O=O^ZZLHwoShCAaa#zk31?fag zJAjV@pQ=fbt^zB_$z6Pz@U&WQnYu?i!L&L_tXk<4OQ#r-;>=nmW{CFs*An}#A%Ez> z2e2_O<=P3Q8@RB7&3=j<)>-`K27;MZ{@qQ4qo&jXPrMYE8$d#e45<`lx9*!{gY?btVTY6$VG~=DwM!O zj~S(x!WrY0NH!qwJ-S@wh{R_eVHVbckU#5!(`vNZ83rs!8Sb=}5^xHi0D33rOIQuK{z_yc8^IT4^>(0V$9$28f73uO`D0lKV^>9H=$epwW!8 zuRhdwFZ*h8T%UDO@|3z>zT=xeM8B!opv`+Vs9Tc$A(3d1c z8&w`m(RaNi%36eduV$#6>YX26aux=ZpBp*xW(8*F-Y>X>c86#LSsrO8(o5y&7FCdi zifJ5!XS)*H`Zqi%WQc7z1=eon9;_9>2hhgig7(eKFQo}4o%hx~wCr1l_`Ninot|Td z9evC+BFS6f4gf>FhKv!pE=p9^Z~AVUDiL>umsq04YDL+bHBa@zFbAksi=f_dv(f<_ z-T!SjGFuRt0-fF$P0+M0zPX-t*L%7oeZ*g&=fy@3Hb%J0C>B+!S9CYGW@G;+(Z-1H z-_cVK6oa)ttBJ1=bqVx9o@1$0L+m0@s#D-6qGpo)3}R?_wq?O12c9MXQZBA@^R36o zgA=*whKeT3dX}6w*9)-~9qAQJeNvfpAa*F zmVURDEW^_*OjQ|~wh&`S?)+|v2p}`gwbORqB?&z~hCuLng+O*abF6J5mRV0b$7CHo znzk1Msz((*SJlyf8T`ZSkZ?{QwNJ;PMSX@57UcD?HX=|d_rW2C&PsCj^>5dqxCpJD zqHN2=KbDyKq|fzO+8~i;)PD(W=3n2Oy8n4L#b?Xu$8Z#fkY#tNIAuSbXC;ah{1-8kzg;@qC#-cOks` zUe+UCgJT$0=d@`_E`~>#t=xFN5~jnz!LSGna@8>CJKg{@s*0}o#ImgG@%N`_dUIuo ztr$qJU?P?;Xq*{nl&O5MGS!I=TrfJ8tfc#nd242};Dagude-?0Bk2{4RfyxLCJ^Yh z64;tY$4D3-!Zy8ijGpZvZ(75z)H99MqKz%P7apZMXvN}<15qAHR?_6%!>4Lps%o)F>7(uX-;W`N{r zP4dETQ$^`m@JawzDW^>Za~*mR8btd8-2%bm%3Sj9u*5@wp6Sh=bKe@jFat9aNf^h$ zC=&WklV(Enn3El&Uuh)4lgh00o|k^;5aK@N3c#X$j6H;f%-X$Ul`&JwnK>>ToB#y# zL(ZonF!PPd1Pk(cL zg@-k%3O?is7#&96M*wD3#!X4KzGs%CLyh_^-p+i1)1nS9E_vb1L5#C@+*yj_%9{DoCVYTbTHO>AU|c=q*%sA9xaS2yTOi?QU)JP!N0RR@rt^_$a@ z?2RQ9f}Pz<79Ll?X1=afMvL;z5t1-YFSC*Bo+>#!4ujy>oh63 z6pdi^;=z*t|3m`LfXb^d9Fah>0O7jvt?F95xo^U4WQ4!3uQ6Uh58P$sx;K!?>B7zL z2sU$FU{`K*wNvsW=tv-!!Q8q`J4tjcN#PGJ?RGl(;}Z9$O5!Uf^mV{7Z1vngd*Zzt zU0dmH-`Cpbv|rt^{P(@iBUZF%)d&2rOBCir|{xMCkWr(>77mp1S}Xio{Rr(%AGH_tp8sda`n;oBrWxg5x2X^v`N zpm9;and5Z^90fzxZW1w-9^5lsH(6IC{mLic*@p~?$DDC?z*Iz^w4A1N2U8vZ^9LRV zeY?$M$>vOo&w-QEdK^77y=P5gcD5yI&l2OZUzQ`(zQbr<$29%>f3ayv_r{Wl63fIg z&5thWHwR3fH{zPRKqLySQ}YmpBeCU2DT=>c2-^Gju6WciOvhK#tl&euCZW zkbs0S!W~Ca{Zw*504SJG2rP70E*`&K*M<}bhy7$*(4%;QV~Ep%g?_PsMe=wCq2Dvs z$Cr7`hpDuZl1qk?l93$TA1K{O^hOabylcZAXrfjGJd|XO2e=3(IT6U&@N2Zvd@;(p zvnGyc#{+6pYf?u$upTnMQML*RdjzLJNfnV4f5jNalvr{NBcHeEm%8j1V;o6asC1vn z_I(zAkX}hQ^7Wt|ZQdy~zU^s*YK&w~4*~t~sN9uk!OtyV;o#V=ZV3 zzXUq7LFpuS9z`$(btvU`XPBxtdr9o_1j!Nj`Ami1PJRp55)w9GKU(5y-;y=oVO3iO zE*wS7QD%vKRqr6QOq$)f3TA79)}jhr>Iy&h%lS+$JyoZ8`r#5fu6r(1kJ?n9DPL1 zf4s8ZOCb;5R0PfiUB_|;@w#JU7NVp8e~QR48AIuDH$l#=!Ysu+7f4XKT58^~i+ddL z^=<}Z@|V*kR02Imcr5W)yh?yZfEW_m4*;89a|?+R)QiV{e7@7OTH~-B-VzLYtpY#m3|Sp{hvK79HHhv@m%@y+7EE zrS>hEz5|TGm-6g84RN|xOV&To%lkD#XBF5^kXGOZaDExzDB|mvNUZYQ+nH+&mzPF0 zqCsFi0k;Fq7GO+x2d+g!hliUzhfSiIL>4dphmsKs#BoJKY@ks^Y!EXD;1o@nONH_7 zL~h*36=H%uP%-yUd;ym@xkYK>3z-qQ z%?Ij^5y5n2?8e$stlxq;*}c4#?zu{z@b;bxR$}`7N zOcv+s8c(hI!Zy!$#5oG2dSq2S&5H_KVp0svm1_O(=SOtb@AQVbi25l|a%bHpfXtCO zXM=v5D~e6L!#{>8#=9b~!--rrxH7{Sf7B|zU*d-p=)x&bZH1@p7I6eX9?BjVn)hA~ zjNE*Xy3fUezqHVq{ktfoDfSp<x%GBCG-L@nIgx$J&gMaMo}9&kb;iu*Qi)>Bci5s$IA-i z`GfVUq^MiVd{b=VlE7#`1w)o#eVRbSQ27ffNy=W5rW zI^~fKH(lLtYHLvb@s`Q7Cp5+A2tV`AFAT+q1>t_FJ0|1#$T>q8FuQ2Ok^x{gssXXY z*OMl-4Xie@1ltv8jc}pc$!*J5c_KX~upknp08wZSqC?)pp~!skIGY>-T4%%nl=X(D zM9<7HWcMX_Mk8FH&#jPjJKgDV^4mmit^S3q(r4nzuJCybixu4eQt-qxT+V1*_X|F; zufK!78M1mPMQQY4OOR?~ZsHJGOuS_X9WQ?-o|7Q#)W*yF8%?s(fqDJ43lT zap$7J9o53)UjpebwG6(Nw|a)A3pUV7IRB@Rk8`dvLo2FJ0)_4Z|nZ!fsJG<#r-Mi!sd zpE}`p#OQ#|O-V97B*9#+ z1v0sCaukd1T+chR{9BocWkxPm#Uy5Oz|+>=FB6A+_&5Z{e+-okJid=1c*a^;5$DU1Q+x=TP`g(WX z=Z8YO^J8d*!{ie0vZ#G2QFkw-JbP(6b#tDX%3(y0-d^cNpMgE&K>TR>iA?HcioY^P zsHbG*_`pJ7Qpi&PD8{hQo;5N)7pwQ@0IA3 zQ!*r8gXi(r#;i`L(jR{)H4xP8p*@PH<4@WGf{oDYMQRh(UlBC#ivgDiUff&=nq`Nn zm*0!v{7guPi{yrm|NWVwLJ-p}v*{7o7{lj0{WqLAu~w=4BMSjt&3q@Zhpk2X@bWGM zLhy-i-O==QILL|iMV|YsSPpF1hpmYqVLt>eS#)%WIy_IHL-=2=9_RZaV8@)L@I{(x*eIt)SGGS4>db zj}pkhWr-Kp;eq)p^F4=uCBy~pI(84w7m^zY95t1k&fVMAV+`?Ge|*yDnZJ1wlahG4 z1HdTdukzntPbdmqZQR=l1^4K*CrL~H@b7>0rNnjMY^{%Lwr)j^J%xntOG#=^!0#O+ z)A+xm0M>F=h$|3!=daj_;7;BCes7+T`s|WK61a+|r;%~5b)^D;Aj@1eX00;^gx1sU zs6B2Thzckn$Fr0B&25~t3DoLsqTnO5sgTd_fP{m~E~DbAbv$%d{>zv=rJnLwW|gH+ z;O^g&J0R|(hmLiQ?x?i)YeTibJ*5mIwp}P#YB%sO_nG&@e^~6mnoPe3tv&eX3Rzai z5u4xIHMpGm9F8OGpGX6;*#eAB)2OD6EIkeKDUwSp3vf393Ypr&3uK~Fh3o;aD6%*F zPjSV4b#_HiqJv6`3s?~9q%d#c-{Y`g5FNq#Oe0%M3pqJAHtaq zi=El)tts<~!<@%KcjErDiA&jDpVUl4PQ4*nE2&e=pQ&pOfD?)o=< zikbqRLcH1vVY$0dVGjS#V$8gj?pYUTr?oTwYSWO&+R+IBtIDo+L9f!?7{pqJ4_Ds8 zVuKXi0vGPsu*4fD?Mz*UdKS92e$`#|XMHokvi?mD`o!iNY4mVXmGFHW$Zl%#JZkC= zv$_LMjnU?9)7}j7{dJcm{7jA!H~OTt>z?Vv-azrabbDU{v`JIFyXn|}HlmyaB+%1* zzLZExz2`i-b{a`cVUI{8U#NM(HP@BB{yODnMCq_i&)V?8fAm6tnHFC{{Z>$kS7 zDt0oY_^_3FWEco&WeWm%ZR;p#!01^x80@4PkV7oF^sG%)dNo|rX=I|D)(AW0M^!YK zaWc4&YYc{1yzpJMu`R~E^@u$v&9fql673PEd{!+El^e8;I_L%z&7(2BftLOG zKDbFQnOACOO-&a;&)h%etKt^(ax1l-s}>RCG98U9F-x%A-F8CgSl8lCpbTh1tLkuQ zPSpMLN~|L)2W*Q$^-}K5cUcR+6(+M!rM&K7yhS31N!;p4VtR+7Sj?L4jy=9S2 zedz90gD9a@i*B3d>wMlxDl*}xf8;%E7pPOhu!jU@UTPLw3P}m~!iygttWDI#sLpH! z8St(XPhEn#7bazC>j4{0-g6w{QZgAxaR;J3`^DsIzaR+tGK!FSor>?%B=7$vAG!y! z`#~Z7QO&?3%6I7=rTjnM-ZHGpXL|z%QBXiY>6Y&9mfUnVNOyOKNJ*E}rldi-*?=J3 zv1#dU>CX4T-#O=h&in2C@_Kp6#rE0r%*hf-D=F0iaZ*(S6p z^g%V4)Xc8;kW1?1%e2fr3p@hW?5}=#JD`Q?&o$Z$jV~)x`MRMZ9XlPVLARdvONL&bW za+yJOx%-!Pa{usfSC5LZbSWjKkU6K`9(xT&eZI0TA*fn@zlcX-bQH5ChSS)~PJuWfmjo{s=%dFKCzcd#&=B zQKx|MB%3Vz*>CLd>0}Y2R8v1V-Xb+>fnEvOmGbcSv!-CT%#E&{zcOW<`~`?hl>&7s z2;Y)kb9C|Q|Gv1@_r}oFQgA_z&XGaF3cVw<1R}ia7WC(l%Gbnx-!tWfi(Q$7AP)e; zmN}y=6EFxTzDmWuHF``zLUGi|%G#A<3~)MV)uVLhWwmjD9a{KVg*G3vRXpm9IM>ut)qS_T&o&V*Z8-Po{Jeb0=Q%>gP*cq??;%*@;_~f z@Mss44Ih-WNdT%wMgw_Zt;fta^2^Ao?EWvS01wq&zpm!MD|420hMe8AJD;^yrFZZa1K{ zio4Jx_TBm9Dju*IAc-g7e?y`GDyD5;Nb&LzEaiBkcWH%tCTj`&=}fIkzJDfJfmcEF zu>fdwfGY)%pHc|$k@=`YA4cY6dv40WV|n?!4f?H#pswGhNr|Ih8%8Rt+SL1R_AP7cJBPA{D?W;_v$`KW34;L684yb_?Xdht6|M37IKpcOm6h zrT`I0Nwmx@Jxz31^+=w&0yZGjsyH7YZ6J#(dE{mcAPNE;8P5*B2_X0FRyhVxo+)&2 z?F-*zUY}H%E&*SQA6F5T79y=iQGx~J#8Zq8p|2UqmGlJ_C z7v+CzjUfO5uQ)TUx5Vis&(N2)IBgvIv}>nhTVLt(E1%Sdo6VF0RqsR)FJ$vwn)2;` zO*inqxf?VHMM4V|!tn=Gb_S;-C}}AwRJW>qrQdpHx*y;flkB9Fh~O}QELhCzVttNz64HX3$0qyv)bqHBi;4Ob`pj1a(0&4`Ibe=mzFS(RDp{|N5vI5K+r6PGe0FueJDdPwJK%tL z)9;$e#MyS5857y_-`{%sd?=vn!jSN7ygsaG%V(g!tNda|rHTE3%#{NR!w4;v0v@Q* zg?abQZ3u$AglmB`NT!=&Q15{wuq_;o3-htU0syM8#W1G!x&cd7rTeFo=x(`=T=7ir zGg;eEWYWU=Cw6!Rx*@Ey|59u-IdDh5ep;`a?A#3p--qb5?~|S-G5hG;ytu$1&GI&| zDxxxVw&C*sdo`E=P=cto;a6zJS(k}^BNXP4B83%XY|8itOdz#og#`<+q!x0u5(G;t zPJq0*wXxQ5qRlB$IzgLkN4taZMpF-_`!Ju0#w{AX6Btj<$FKnXDE0VwcpNG7 z%4OL~J18-2=Hh-x>-KiDGnFQG;kSn{d|3#T_*&8OzZFF(p|!B$7_^(skl^k&tmt(v zh`-oyTPqk`2tflWaDDG~1=Nh7A9a5;mw%CN3gE712Z*vh{>{&suxPvsY3(phb%CuN z4cXUG_bXE{93iFW6$C6RKgVM~+tij+E$ZY}fS7%*Pzk^cqg2T@eQwx5%damzK#@KG zFOqJO1h<>2&(sYprD>dRQuj!os6T5DOH@en=HHWGN6+y-DG{aCi}H#fa||@xVoyAR zEOXeVORf`LqsZnThWboO0}#OiSupHYfQhPYR?;cO-?rXR>hgUm`2}0FXlft3j9)q~ z*$qibKOysz&(Bk!;2tp;;L!S)Hy=Rm4CeJ7jE}PO#jvrpJaGY}+NX2gabv;%I|x(- zdBPD{Z*O5FeT!S{^Tn?lHuRyrBqUesbo=_h zwbh?`g5{Ci7B?N}sSZ%<0B zeI218HUU48zL!YEmkB1!wuAXR^DB?9U@|Fj(Md1uM9Rw}?aLx)2!4XdhI3K22q-f& z_hQwKXOAX&u6jI*cWK6e%k|7!;p%2Q4??1Q5R)ZhX^oi$p?z2Pg*)0YG^a}uE zG0-g*WJqw(b0=axt=XRF*PKMlfd+;#VNU}}d7SsaU$8M;#yHn6r%Ha=b(WhYg{IhiK z&UuRo3vy;y7!Tx*MW;!%dr4fmOedOXGS>}E=(ldZr0F2{xodOChY;72h8){mPxS^q zs%D(OlLL6qnJsy&=*r`>Y#eAp=v?zKp|yP1lU3I?b_31;uK-$S`4mD0S%jYEG8Y0N z@9*HhJ}MY-jgO7pijInx{O0!O;}|Mc!6FJ^;ajdHmwgK!6oa8GMD6ERtSKR`yk$ zVB6^<{b(40tIp3F5w5GSO_LCoLU}jXzt$7r5jPlj(xfID^PRjoHzG0LlcdWjEGRf~ z?X=?<3`fHFc>zw!uIDQ+T4u9TAda?Kkt0tbYBU)g{EU58=SU0bqhw!27P{j$j1S2}*K=*IiWgt}cD{r$> z#Ychh?28P%``-1+>|}P!q>5s|wvn%@_4Y4!VB+2bx zMj8ARZJi*`Fk}_=aABc#zJgm1n7XnA%$DY}Y_Lc79%VI(nF;A>Qw)_)tlCZ-SMO`O zfy>5gKrLozTS=O=R^xjD)t8}^0ssTlJL%~YIr;|8*vFdJsJ!pPpMj{AYt@g-~O*9AN%vufhG1%t_Jj{$T<0i#!kz_=|ALkmg|uChdn3 zf5ql=21Y67^5{FtlL({yQlJFYKR&d7ME#ojPzmG85$*UgXUbnJ?fez+Y(exhSIOp# zt|v535#ygY3EH7s#M|mDHAYXMy!JQym?{OS-U@@4c?q4Q% z%bfg2YTD7Bp`LJ4q#Gbi$#ltM{`cL3D5#mR>t)M!iESBGe*7XoB6gF#N8iCn~mu{V;s2Cjx;Z>A)jUQkAEA`%#KC7Y8jd6EuXMs zB51Uan$TQ}bPU|#*aRleY`EMu5q;_5sUyIbg3oLT@|1zEv%uW21zcaTQr0fm&D#9{uNVLG zg1IWi=rMl``RehfFZ+KcFr}8DI^0L+mIFK3qG&2Djt{-J{D(1nQF%4;{)fyu6K2gM z9mlD*hM2$Ie?G4Om9IHaejfv|Wo#OzIW;ruk=-lj{lk;jpwI-;KYH7@6TED&-zhu{X{Xr>Mb)krdgt3A(|<8 z_Ze|W)YoPYFCjt%McQCo-q=oN)SD%gmgOtwLU#7~&cb*5;Y|H-h?;_WFdWQB9iYn~ z^ze%Q*38=`tS~2!-gqzbS-k>yD?NC&jg9?Tw;JpJ>~@q4AhPh${$F}0u-4jk7p{2H z*jw-qIAsxj@5GV*U(c@E_5SAKvRQV5a#>VFeOdV44Ap~<3ZAk&vs)XCm!Abpqux2{ z@J46}`NqhEXZ-o|C#tTl4tr4PyZ7&yAO>JId0)E^LSu6v3=d*v%4+jv(N2Mf6^tOH zG7SGC{|BK*s>cGqV{$@@*b3wQ;d0=v3#@A*I=jp)o==VwpJCJ&TKE&RO2%=4a}=!1 z-jHvq+jOC>KTRp{aJ=Hmzg@U?^q??#@&q-gZ0v5s0fKs$X`kT!9=`nQlQKf6GjkNl zm|U)Np}R6JdCwD`1y{o|S?xho&N-X6@ck*xfred_NPy#_4RcB8CCr%nkU;$|P$ZA= z)S|m;-siiH!8lQ+u|)Q0i;LyJ+uP+E@5wJ;{l5slRGFx1o`Qjq;bfXdIdAG5-%Lf~ z(ZVJr(o2U_cE!{zc1DIuh|67>-}Ume{pFJY zhXHenzMh_6YyD;0cZJWS_HXNa2>C4BTmi+Zz;yk7^>v7Ac|`kXUUHBucJuN0t3MsR z=b12`;c1|Y;9zd8MWZ^S4XBDrD3UVEA}^nF(@^=#_rL~Vq3Aeo^RBL=`?hvzFR<=ep9JUX9MT^m)%@ zDF(OjD(^(|a5{a=3{{T&l)+9_?fTRG@vGk!26h^-wF`OJ>)uje|1>lD;fd|R?~(YJB>1LD$n}Ktfvpn+3!^R;u(V6yP4`MJmDeRv zhG$`#($nS}A2hFoEcsMmOtUt}qL%o~qFZ*ap?v%`=LdWLpP^eNPqsCsVgds<6e?k& zHwg`aB?*3g#+S1%t3x$j?5h)O1Y5E@@>;EY`j7PuO0dP<_kc1sQ>o z&X)zO8ZU2n>*o%dfF&P;$;G5ub`-TJQ^r%rlQQk24RNp|WJ=w3ErNVz*7TueOK*G9 zcoCt#5p(%Fw-C-dJsj1eA{5@vq`=;EU$Xg??5^a^+i7m=%-3()sALI8aYvrgJqLz( zygdfKdA#_&r8YOs^l@kD2{?+K*h?Gj=$V?!8xjB1db!^X&y_Ie&ffd$x8(;ee5WMf zaMc!A$UEu|9Z#kJIyh;=_uZm<>euo@+4^`Qda_(z<42|DgE+4%|8F@rm)_qH(q84R zDg`X13=_9zX!KHC9_J|5d=Xmeg3^V(yXq9WM7ViFYF|t2aUPX_JaU>HL7>}adavPp znT<{lu2jF2%hm)!8wEDCSxliESSkI;G2OY`$5751Vkzn`Ec((aEry{R9)gapq?{@f zeaLJYDohL1%$6}8mbym**cnFt7sbV&!cBj=!uwLw9JtK;Aj%(OuFxm$nG?c%z6LKz zx=>XyVpW-$?G6;_#=8%FrzglW_2?tg9L?v7YA=R$anRwKz+LUy`Jyu|B{c9dkY{pu zLz+I7QzGK~w;{C$tr(s2&0&O_+=oUGot-1!x1I~;Lw?sUZH71#nNmK9E6FjfB_|&D zv8jDn6=K)E=zTAuKh=AusXp6YU=3Z8<+K`yU4ZAX|F)l>Q*CqM`<{qt z`TNyEgRpX$b}oIO95+Kcp7(dntY6Co^7K>c^m<0R%5nT#imgxL4U+w-PMDolMpZIQ zm?J-1pL%x`cIiH%CCV>GMae~uWH@8WTDJ~xJOqa6BZ@9!OO&3mwmCapuZSGfq3Abe zR9akkLvkO!f#}M+RFT=TVVP3xUxaaj+uiv?`!W3tFGTu}-gM5lbA{z*o80bUpviww zA%M(IXY9NNOaTUJ@I&&pphFe!@Z^at?|z{niR3M=O^xGd%e--dsQp;L#urgQjUBB@ z1J+(oGAG+_Z@qt8i?Up<1!^5kH5b^#2!yrq%Pc9$7L{Ed(b#yC2qsM~XfC~J-xIQZ z9P_E}xY1W-C8v_uo@512-+#d2>q&ZzkZt!s5hObN+aAe`+D}!(=*-Fs<_8O)ytseN z1+-%xI_)M1BAEVo88A|^WN`_2@Sg}mhT*+w9|TAW$_o2wsx=Bf8@%|vS|iSdi1%vM zu7aDHQQ&Cua*#Mzjw-c#6Wh9?!C0SS$Jlo#6CzJ8_=@s?-RKj=@n?r=b^yz<#H4Y!JNQPJ?Qm>4kxd^JKzz-a~zAF>b{&BcVi z+%G08-nnKVBYq5k5c^S2xw4~wkSKj`_#qA4&vJe5{yPeAz{+o*djmJDhczGz0(Hy1 zaY4YFsYs&h^mK1-{*QnkWsm6XeG01D=?jw=iJ{JdxK_vC*gRkLv5gpAEY67pPVN-H zk~_rhBJ0e-4cQWKp>E9gqHQR@l8+gC07<8-Jg6kO~@VYZnQ9 z*~4t-*vB!N@3~n)ie9?J?oW8<*HK|1(hwE~m9dcvlN#N%95!UWF2(vPvbd$y`jlaX zpnw)TXHqj z8QPN@Vb9_6Y;o7-G}`NWRTap{%$ykfX)CxTulCzQD=+HvK^&rDAWC6#%^M6-EkIXL zsHdR7yqI#@sFTv)94g)L5pVr9Gsi})*utw4`zX>Gtx|j3i(FrhVvie`#tVKcz4Sqb znkWLqm;_YqoIDA+Jjr>p;TWS%9@rnyOX%Ha=EX7}V^&o5Sl*Yy_hw?F zs@clP%gAL#8)VEBmpV=0Q!#dywVrJU7sHD_wW6g{4CLzsN>(}bs+QbfTGZ+vK*RT~ zaPaB7qzzh=92XYPh3`e)qlK_20|``U=ffn%Cm_~{CIT417zEM+w;qoy6zIhoqw!ar zN;IcO`47iHAK$@uiVPKUU+zx2BC88dMtm|mzA#D7_E2}?5ucdoe(Y8`-rY+s!HE*F zKEUk?ztz?#PYt`rm~fCf*IzB6Tb-RSnkEVl5p9aL)SIwX{^%S7kKf+Ex2mW!jx(i(Jopk8}|v z^c_jA!C`EW^qKL7Re83q@@4ydXL8Mj?~u`ukHpD??_4oTM)9FS2O)ojw+i-#kLqlc zXy@R4ZEWr27Z|u$5GLFel2aRkfNhk#dN1%!mYBd#v!#pMjV4A4p^KlAZ*L=C!{=)1 zdUtj5hBaGzsS(ibz#E0$z`LRo0}g)~X#`dyHYhu^Ylqp1$i?Hab}O_By+ks4NiJCq z1m2>D=2eZq%=LYQSN@$F*x1ZlV#qtDdq}`kX(3*k%F37U6)xctbxBWK%h>v?m%Fb# zRYy-x$Ghz(vDpLtm1{e4zA^FMYiE|Qiu~91n3$i`-u#gdrqlBgjtW%J@|{>wQq7i0 z2*3~`G|iG^Yir9wkd@2lcxtw&Ufj=$-G^f1N+f8|Ar!BlReq*2xf(nHW&*uPMa3HpLA5fJ<-@1KmpgtHTXYEBn|#IMHi2;Q z!rp~UG|t=A2_~p{(?agVxN&XQbSlODC-0#+QN|{5DdBNNlvoT5qF~5YHI|>q+2djX;+XDOzqgXYG#4_RDa)T^^$>EXBq zjy`_68_t;HAMzh2!U_1MOh(NbS^IFb%vKdJ4mcO?Xm}0YYj(}R5^_|;|BOC!h|KJh z<(M#Zw|jWL<;a((ubzID;(hK5yrIoXD#y;sO)bs z>gN37Q~OXDo$>6Y73dD+sBzvjU?!#)XOt@Ag@?V=eOzwqZ{r9-02QKO~rJ#$^|)pljL44Q-~D$K1G*BlOX`g}tWg-cS{#frn&-TUj#N z^$sU8noqOL2Se1ehDvg)gk8;?FOg{jls7!M0KV+V^%kYbg zr#HTPdC4YWWEbVMULzA}jO6;IUndM=Y8fLR)N*s)wVifym6H-AwTrIL_swC~fY*&W z9$7uDVNB>&qbRmRHh(Y`hfw=$lEyFAGjI&D1tIZV4uTX?!z2h<(#tLJ@e}-+Ik70i zStwV^iziiE?Wrm@p8V%^vnk=IC=w$Uv zoR&*rb#rWk6ehpX$drTS`Ch&Ofi87B+-gUOKD~xh=39g-QA`LU;esSPk7>1vF)>av z5B`w!Rwqj&QmP8JL=v6chk5q60dyPjZn{7x?8lTDSrm+QLp`HgdXA-*tZ`wvGmZ~n z*Y1hbFBCniW!Sti?W{!>AJQ)@T{nozZ@&i zLAx??@+Ax!cZFZJ&=9&cUA5qwfth|LlZ8LAl+NV2z6$kYh@s4h^%N%dK$V@-SQ0YJ zB53K;N}=xqIV1VlSsUA$^7trysqvdLE}yV^i6uM6BCOK%xa*Rm)v>zT0@51tD6OCWdGC-Iw(eq4s;eBhB{DbB7p-KYg?-HFL?)(y+lV$ zxtrqp;HJgCakU_4DPponrw$s}s8^HLo5wOTE-LG)rl+UU=ow-L$@NwsuPuGe`r}eL z?-1H{hZC)fI1+OsAK&5#t{R%nGrq9-?h+(N-ndQZliYV^A--m|U!^)RoE+>xTD^NW zxe+mzKRmRtBLnviNj*&upDkpVqV;p*-muA+WsGDiIXt9nsGn~PO6xj?-m7~Az_OiF z*F~j_9WG05qAM-d>$N?jJrjPceE4%^Z9O>X9N118JSVPgYiC2`-8a))oVx`!Oy|Br zYC1Xkwc#YPltvl%B`g|CRoTA<^aoL9efD0nMjg3E24e_Cm#&%bbFg#a9LiBF!QuV_Vur z!Z=D#;nj0SlMN>b$8}UFdQo>-e ztagn=4RWS4EI%6f<^1V31Olm;OSWI@#}7M@J(*!4V?cSCw(ZaRThZBXjfR~g_ugs#!b@WV{8 zO&|(r3t$GdI0JO!A3#H3J%vrd;!e&+jX*TuWPO*9ZiL99i=6A(a?7 zE(Cd9shb_ivl7OxnZO6svy%^hf`Cg{5 zEvr-r%-Bw#Z$zkoVINNCM7a6*_I#S;+rW6#;%X2;)k`2Q8`$m*ahjM3=BzA8hMlENiB13eD*rW zG(Q;le%+DPVsORnLCdoY%el@wYv&pGa6@febL8D)VC2Mc<*9{I>CNLP^z62twAp1`tW%O2^<&LDDYo}q z4C_qDRTrfv0S>c~37iNyi^bZ$r6%f%9WKfAuhbbX z41Bj(RS>T9Uciqx=PPby)YB|r=HipznHg1zw0jeCx+C%}2ZCvfm!J>Voq?_bLh4z= zyCpSmvezvsQBj62ppAs}n*T$qRg18CD79i+8?VK@GdwY#nV89I7dqk=&qf>3lSX3p z5)*a&70J=pT#Z_M42keSUFwF@2@V9V`)DRiniRzfo{?yrw#lADbv%_mN^NFiYEF_& z34;2p-su)j&W87n2~0G}yGJV!4tol*3S(7j6P1O@@d4<|AI^7TwVTcwk$uW9#Xd_Z z!0ViH4ii1JP{c5jwm9RzZ^Oh#(>clE!PJEyl6D6y7g2rD>3tKi=@_qr&zumx@B`dW*9yhp?Ms(wIUVjOO@MH(j|##_~*lRimPJI!Tx66mYmu+vV{?ug6l zEa!^I%tYORO@4DNvfsM%NWUpG*Mmwb zs0(nVb0?WG&anXNcSpS{T`pOj-@~j{y-`vLk0nH=Q zt~8!fQyTWY>4v104H{v8499YIqG)!1{+2EUKW}ACUUz}$<-z!tf`=|)aELRlp-8t> zs4+f3rKupdF~0T6$&MUeU+e2Z?QWYaT}AJZG-J?Fwo^mp`V%r{{L3~?=8q8!_x_*q$TR z!bGtLt;T(id&8IXCNd1;X|lp8js>e(|~ajI;5unV`F3_^9zSKGj5G)f zdiC->nTr@cdPH~NRH}4}&$ib)?es>Otl>=Xuly*1jU~xQh|9>g^E-cVCN3KtB(@8Y z4t?rzcQTbFQVX{$AmrY_J(Y|6s*;p1dUSkJXW{(g$W!r31-wkw@7GZ+*|mMmX4i^g@54zU3nc)1D_ zq#UhB1F9ft6P(C0ciuAqYpf2RTETtsWf8pMtu-<5#ONpHj{7t}12 zyteY7&90)WTwYB? zSo@)gA!9yVtcb^!xL7*H!FOaWT@~kp+)%#rC*5|&PbOJgcWf)j7RDi~wx zk^G(fOwErUzTGt$k$(gu>{**`d1Jvyp&cf5zU{6BFjmRQS!HEq57TXJpO{;hyw7NV zTAyPHal~V36Y8Vc9Fz~(w%9bz(eFzm8*+d4vI(=-*xT$U!F_cm(;sKSyuGI$4MLd4 z;x*T!J6w)wcIoj)Ph@r;T(8*`iF`YO#&$Fr#F&8{!8|6tw$T8F$+zI4uAh+{wdle zZx&fvg^%}y5Wvq(wu;ldQVFXaq=4_(y({)XPw(ucEU_F|SFOp-NObNgI+0GfJ1w3u zI0Q^AvsR&vOgy(;rQcMCMX-90Xc~0dBht|omApDnf6i7kp&eQA;a(Uz{Lu=E4bk0z z*B{7r7jE=^Ph&hmmg?V1bl|o5a+OdMFI3GX)TME5L0t}2jb}(MU6MyrI>0KSOl&BB zf{4&(bmgvvl0B16{cTRWXZxNe#ZXa`30@rg#yCZ9EM#^>8bw1B)0PMx<}0vWQ4%-Q z0NP;UXqtQShy91q7Ax^KX1SVuFlFbIS*q)$oyoUyo;ZPYN$R|rpx~gtYM_b!wr%)f zcEKiw($e(Nr>OG1*|d5TJ5k75fRogaM!_vt(C^KdNn0Qx>=~h>s~QQch3*6m`^#&l z!EyN#Irdx98;gT22dT9yfJE#xD@j$Cxb!LZjr7vmJx-1UxeHi5j$m z-@NZk9&7iD-WRa-pqixda!l964A#6>=FTo3G7SG&)K-8Ck4Ls#J^x=x#2{gOZ^uT_h=0% zmn?q>wXW@ptygTLz{d0CqeGDa>5;g~%walfn&YNn#|9`$xy+#IMuoIR7zL;qU@-m* z^~*hG*i?W18`5qwBR9vQdhQT>>J%;GI(pUt=fvMWHRJ{F!7VBLFb1d3a2D!;*a{1Y z%0xGpuZ>S7l*&Hy3pk8TyL^bz9BFs$+twU>ST(3z(_g7`acI8{bgUlr*Z+gN01SBm zp!Y(YjjC~}DfjM5E^ijc_or@bmFC%MzSl74x`%jXZ;~=Ht&){neJ|BKum=7@i14q! z=y|C6%R6Gwl&2xFDi@`(^6EwcrE$L%ixtuo!oo1TNPurO;40*f#L!s6B>kW&c_g3) z>#Q@^VO;!v_8aWyrO!Z!>zOVojyzD(aY~i?UBH*e0>zs6jVex_!VB$#PKvf4*A7;H z@izdk4q(q9JQM7&$5SfnG90X-Eu&_&0L>T*U|oY68LG)9@WhAm|Q6il1vm z1U16~v1m|$6ddp)`Wfi-+}n4AGytU<@Gt;|2V5k8e)ZAikOlvRj65^epdG>kj}yG2 z1mf#3+=zh37g(vD;x2h;e-Q`(GX^RE)Ok)8{2Gn%7ZUf+ItBo1Fb)_g0G0q|g&GKK z16>0^U~zx3J%6+GfNkfQ1B{ec`SsrzG+^RUjpi+9qyYs%laNlv0WxJc-tX76yx-ur zHQ=cc1EQbd>cGo;F@F;t#q0Y${^Y@No;+3>$;SB)DfJ4rF~x)SYSzTbM)vD;eE_xe zl2;i(*8;Gs1$E?wlSA|6R5-DXqSf4VQOAE(IX{AVPSCr(YliCUPv|4Zhmtz@0TY6@ zBl#EfWa^;J;?kQZ1&YQK9N_6{lQogMUE~oEBU)nb=vUt8I~q}{<@2M4AE^My3||n^ z{1cZir`t+#d47-nC{cKG(+`!o|D@lMf>2Bi#!3EX^8fGg0iqoL7uA%*ZOnUF*Pr?M zF}4AEA{geA%H2)Fg*eLSe2Kcfe<#Yoa>()epm}2iTB8Eb$THh_d3G(F;0Z;Rviqnm z0)F>qAz$1PDurEK3H27Nzj&8_D};lJQcU{rFP^RFc6!D*pg83VRC``3nRencB{}KQ z&u4US7{MPw&+`TdX+NCB9r+OLc?NDdy{X;Mb!KR6$0g`vWs|%z38-v2VxjRX_dv%;#^Ro}0XV~Ijdr5ho6}@jcZ(bg zhY7;t%*RQ%I(H3$Ie{rs5C9RHjvtMje8zqL9c$8MQi;-+4ZY`Ctv|Y2@$U6G0N_9v zm?pS?skkg2@Y{b>_bvEbqozxa5%Hg?I169)_nYCrKFsnnA(~wa{9Cm7>{rr}(9>yx z=lLI85-Axxw%sE^wwbiwznzb+V<{9jM3X+op=zxK7-ZxwiM|A?~uzYxSFl zev<u|F2YubU{M784$68;8WMRv7|FG4>~9x>Nojt^PA4T*;GAroKzl7d!Rr zX5&yUf?^t{{~Cx;MYVt}kf>qMZ9mnkXlC}6BP#XW;W`Sk^qLdn?<(EK^uG=d-7>oV zK0EP@aQB>V$QMp{p7hUehf~hmD4b&$|3R_+XCZvb#!YyX0E(;pvmyQ0=RiRf_pCPz z+DLz4TfjE(uRV%vCG(#Rh8X~W!TeIfW4AyFLR-r6wHeARmIRuR z+AweFOG*qskh_@e?0qli+*_2RS|Hl%JrbPApxOBRaF5|Mb$iLu6)GX2^eAc!Fw+tG zrsR)Q+>BesDt}u#?5fp%-22Yntq%WE1L49Ssy;~P_cXc_f>fvD@5x2X1LgJ0544F7 zmyoHA4obPOy%aYI(*aG}ySd^q1b zR;#V76o489$L^*umrUp@`%7vk0W=eI^pvVU9?lx~zMP2UqPze#VAuQi?`1=5G?%2W%y z{X}%Gm2^vu&u}q(hF@$bQHtMPj$)=4RGu|y4v`XvqzVOPHqfYoz;Mn{RzNY=9=J<;9Y@{0CEnB2^L)O{%=Z%;gwQ_bxsd| z8#oJqN~*c8}E>uN5MP?c9a6)Re4({ejj&F7EZ7#g_itkd5+-kpxMw6 zx}qHwq3U!I31||foVLCVy9f*1!#gZFGV%&Q5VKSYh$lh3Z}Z-b@AzTJy5?C+5K)^J zo6xZTmMV=t?;&})zthR5dnrxwlzk!$O*?nW@o+Swx17wI+LZA<4I-G5eTb9&r!Dv; z7ATiEUhC_R=)EQruW`?9)JU3HYpl*alfZ5`G@Q&1@2u*CjvR!$;RV?RscEHr>p4XJ zBajd|ZHx;ZtR}Ztl5_(N+Jc=4Uu4w|!IEF3Wg$tEGlggnRnVM@>9XK$4)ub;i5l@C zFy2PxK7R`zMb+2-m3O~mqSA5cz^s-)%3YTn9?S~QzcxdI@#oDp_gCJ3n|**43w-(? zbMAl7y8nN__#GfYzh6V}(-aHShlNoEj^B^i&tw98cW<$29W)+(9~^8iJ1a$7*XW<* z`T(PGftAJkjMB(+SH@XK%jkPmb9DZ6K}-vp^0$ocJ3d^90r5RqAS9I{!hCoEGi6j&qW2x?#hQ5^|!mmiN?f*lC9;YitaEUZGnbo zYo44O6{EYcz309~5z`t0MC72{t*4Fdn2|B13#2MXwlwyKPbbH&y9aT_P6Rv`icbMV zbIXx>D{~ED{;qO;0i9Nk0u|7iui()fV_TXV%D#)($~=7uTk0#DLgGl zTG?C0OdNtnspPbYnK*YRY}!pzp#ImcPO13w#Hfa9J?@%>D90&GZN;TCzu@I}f!6Hd*9B@b`YR^Paz1dZ{(q{U8Ul z?Y&yWesLHri1t48_NM3%<}(=3rb_eFhX&*b{%dxO)Y{hm60!ktN&(&lfzC&r5VF0i zs2V*Lul8^CJNo5eES8KfFOUzvQOSZI6^TCs?|%zuoVOcM4P1=*sz7t9;iROtiotjl zndbuE01AI*C)ecBGWpq5Ldz*=Jluj@PEnwkP)ThzZx{9A3{cNfU<_k|?H(y|DUl3z z<4XK3zw%6z4Nj8b9~7ATVjefaDO7=0sb0!IRVarGWUulJ0l5Hk_#Li1ZbpxdYz9=j zLu)r~)A1&kO;pu*+-wdDRr}AIR<<3Dd<}I>nfnqe5flRT!O4X5bmhdVPZMmn?n6({ z!hLQ8>HLea(_C6jP1ciWh8Mlz_&L9po{7sI*9EU-lpiHGDNOeQX3PjR58>@ra;`sw zvL_%A5b1^7o_+bNM7B1OHsiTxfnxpZTJ-<#dV9Wz{eOQWu&)4r8vBT^?N6UCjxdc~ z4^Pui#L3~_nB`M^rq3TqiOY+Xix_-Slz{{40>Z-pi8L@IF!kr=DdWIy)Bgbm1{3(i z-QLNB$;HCd*7To$Sr|QRZ4R_#BJe?Itq7;YA&^0@;T^+Lj&aFT>lx0ay1JSxjN<$gDj^vFVka1ks+ICBFHRV8}Y=(l~U=%aeG8kYz!A&F`ok8G=EVOYW?xp z^rNYX-FbEGA%z!|g47Wots|h}NSGcun?i2b`_q@1zD^e;`7QFD>6^nwB>II2zAS$? z*o@?N(N%D#VcapicI2A}J`j2d=EyD{&dxVOayT(@L5!$_#?jHj_OgR@()mi!@1%68 zgjtGyvZThob3^$i?QWj$^Kn(5G#C#@skK7YSX9KgcjCwGd!%=YhXf>Zj)oa5e1gBO z^7j?V$z@#@!XKRn`LGA9NobKwoSj4;8oucuMiz1~^mcaEec!&(%Wa;nfK|0yhaVO; z9@E^PfMLgLmsepd7%^iwPMRg4w$*mIN_+5{`n7#N({TJr-xs+BK3~orNr(VG^{w;w z+FkqA2fgMQt_y3$IUAeRv_!jQYdnv);nY$EIy>RZMF=H}1x8ONbX%M$+B;j!fRHdR^~TnH|dMUUx)tOlBK!1sv>+(HFdRg>VQSBW1ml7xJ^>if#pPB{*dNhcyzPaudDB?Gf&50b;T(c8Ri zUk;O(Td(473Yjxa${&Ae414;V?Nx=|q zWEC1`D!z~5*iU%Np2JIlrmu43$tG5!hon8HeS&H5@50U1N65oYXX%U(Ny5|9WVNN3 z&w`2suVE>I4_iemR}UMq{>;aQ9Khz7Z7sNwGqa7Zf00M4r#U*Em8|+CUkZh$g-Tc) z8OcIf@Qe=@T8%nuQVq`{&!=8j5188246B*+{Me(?{8*M3jvrwh#w_AS99sH$bjgV9 zgkJGInO@$_?Idz4tgdSnhu*G*Ri1LkRCZlLBZ-l*f3UW_MBi(=DeOy+PY#{_M@~H- zx0Vq4R<4o)x*kXBc|J~Ren3ird#M(}u=wTc>Z7a}Ar%8>!+_k7Xc{EDMd`eY+|&A1 ztkV?vHQWV1XW(~ev_J3nhsla4%l_$(_L&1Uv>pMqec+@SPgiq zwBTlWhFyI72FSH8F&Ux7ZSDgVnN+Wd3%$@5*nw)VbrcGsi|n@QDz?zM{3csDhzVsb z;?uTxh_%ELc7~(}An}abhO*tfii7$EnN`ZFRiK6E?p}Lz%FV3JPf`S-VgsA?@Rn1(k=Vm6$uC;A2X1jkH`m$ z&v)eHPhwY(>C067+T8eXA-Qm+EP-Z+Hg3FGsOq=5sB+~J$1-d?LqBg#S6;Yo87RiM zAp0J|9Jz8jOCV^f-@ulPcm9p0-jZF1xO0X!%w_`~oFcG|GorhQz(K~o--v$Q|8m#^ z{x)bp^=pV!FJXUvwh(#EP-Cnwc@9QF;rK(Zn9-r)d(qPE#g7S*I(5^k-uGhtb#z&o zo97x!{T{6CWLnJeu7-?iMi~Mmny#}1l1HF*x128jiS!@4tin@u@7Ya7@i(c1MX!g4J2ih~kzR)v~q8%a8$W>7-M zxrTPL$sb5YY8rb>(-F3A9;l>ks8f6C(%How6LoE_eTrSUdd8*-lC9}_{0_Q4T`*%4kTELo9ur9Gh zXH_$!hMKcUXHdI;xks`@(>PG{<+N`GHEk~qzF46`GVKv)mlkK# zTlXTzmd9Qq%Y2zxpUa?0FsqnmAIw6>R5PP^)|oiCoG+90oVsXITc0k!B5%vP=#&ZF zl$BRFQTl0?jkDdNDTu^RsgT&dWHnQxp zT$At;3uv#WmBiFTZp5f5KrOVv&3Ae|UCx78xaiWS1k^6s8&zSa>?T}`;R1a}*{j~r zthLaW*pdBO^mPfF=dJ}`mn(`lt3IxJjS|#c!BB1bf=-^KC^THwii&q-6Nx!@U3&VJ zOB}!+$qhtB2Xsv}ypq~*6)qzpI|{|%StFyWenl6Y0(XJiL1(!vyBDZuDvT~R^{gyJ z>Sc`j=RTeBd@RWjjF0imgtR zP;HX;dv86j($~5IPcpw7Ob@v znd=D7QC|+c3%owL_pflS-`L}zKy!*B!YaKj1%DxV3nwYRi;G8yHktP4Joji}_3-2i;V2o8UD{>HY)J(!m(07QLlS>=0DEN*BCsc3CyI z3f)N<RKK^7z?mSSSMB#|2=rhz}Spox{!?Em>2y~d3) zb|CN1JNK^4=o@^Ci?XdjuaaQD7(PAR)71WZKkuMx;C=MY(spdO{*}O>my22pPhC1> zer7SbYLppOFtKk)*XSXn=peX=-uES5)O|*z{&rrx7#e5je!uzhRt{3m4c z0(vR|_Q3rg_K>r;v32-=Wt6n&4)acC)}oeOv?- zBL2m7e5;e2_Jq{0@8?mpht{d03n;x6>6Y7at^ou6Pj_-`KB1`xX2e!6pr9}SGya<1 zT02?k8`%S6J7j1dN?fpB;6x8P#@XRPXqGkXrxGo~Y($(euF{|%d(l=vGf(;5Ur>R6 z@xtih`9;+Y63^6}Jb}bJIZm8{_ah(iAJXtxj%`rWxOj5d;`LW=63J#rpA0624u8MD zarJ)Q9Qj6~D@0NV`{=Xj<<Yua?PV)wUSQfVDILI)dB=H5#dV2TtSr8&5}s$Uy&8+armKZFd6wqt8Wu+yoU(cu zB;7{GWa;k*O){&u(jdRSRFrIzYwk`Le~~Lb`g2z$82(5P%q^ls7QOYx zyuQFx+UHmgIPvW$d;|Ak*=KTE7nv=Kl4EwZmJyaGA35TIU}}@W!CWiO#Jjv)cHwOWOJM%VA3Svvu)q^n-2dxvygok zOA-naQ)uHPN6RY;GJ0I13c4xaL$njrT-U{_sO5p@JQr2l9c)l3XTs8hoM)dooZ~FD z6YGiNrDIdXbi_T1Qpc8-;N8E3p4lYid1*20)KmK|b=jSLd9IL+c#ghhk^819kggcTeK$`cqUx z$FPYH(KQ-7K;S8~&d>XESQ)Q{A7Al&CyGL(v8wNl&pBCkj+m=koc<9IkF7Geu=zR( z?iy)f4i-t6NYM}jt}@%!i+EA{dXPSdzK1r1*(G3qj<3>Kg~p&uu}|E-D8cLFV`a)C zW@1fv*|XCPVk3Ck1OCIa@9FSr)EeY(=0xpy2QLnkdP;DQ@|ovLN?8JjZtXYd`pf8q z=IPl*qihdsP1C+#d#d{-;mvrNsT)|~I}@9xrOHEBbs0to4zFF$`L|gzje<@s&PnhN zmpM~?XOLP`ox9X)r_MY=X>Q-`%2IaLw#FCdh;U{0f6bn&Q7c;rx>tOrUh;lfyN-DI z@vu~5Wi)8_0;TM*oufH>epge#_b0hIQXJJh!Lz9rv8M|mK?sV8TBWES?^wA8L!T0k zG_U=<;cgF24TpEWZ>VUTOIBWVWcw1|uGKv}TD?|q>f3h1p`__rfW?uDY`I!l$$7jX zrfE6V&wqH%IkUboqIpylE~nb?ap-tt21woimnbJ4ob59}g@Td|fr5f;vj2*52S+zc zqhHzkLAr*+dOcR}GSB4kxA70RU#gC@kGuM3tHI#iqn=N#!>l52vGqgc+^S~o&tL_A z6bQ@ll2jkoCJz}hC~U){KRTe=Qfq&GJlW?z%P>o0Cen(eT#gVYiug$MW#`2HY;*N! zc;Rzm9yyXkADKIsdw%~;FY&`&;jzvV#jb?}rYuy>26(Cc<>AEHkD~+n6BkF>nByy7 zG5zg?UXPg2s1qP@?UJ2ajTpUzkEup^rgr20hA=9TEaKCx+?Dg-NB7QqOW9n-xy)|1 z7a~LyJkAnG^HRj~&!YT=hdfir*Rn44Miwx!0oAcWXs09A|P=i)bIIEu8_7|vLwS<@0Q=HD}#n2d`!t|kD)?K|an;`cOPAN*}+eQr4%rK*|VZ}eXAPZOV0osSYmO>}vU-Ewhe~+?G=7kyQo9khi_VH3K)rde= zg3a*tY++c~S|?NTOQV>4O^zI>>voC@c)bHJtsH1q} zb!|(`N)%>k%hfDr6&hjDY;vrIK2~(mZQA?fW;FaR5Y(3KJV)9*BUGTg!j5(w1MF4re(5GdHnIErb zt;sb|S$@mTcB_ms+^!@XW&;}gslo2}P>%0@TaK@gv|K}q4SQxm6!Ha6kguCXge=7X z;SF0ax|C@osp8m6Ve%|4IB{_YWUufo+{G6il1(;0zo*oUA}=is^YMw#+R4fyIxkML z`Vd|^es5UM7&!)h?Jh=oaCPHa_E@55sM^=?ygWT*k_3G=4-!eM=ks;@kMcS zCy0uQ51)ri0zQeiX7`gT^Dx!ksTrEQkhwr+VRhc=)$~GjFMUD(O625Da!}6Mr35-c zhOn;mB>kK4kO#2N$7XN{FV`0_zJ-#+XeYvdI5l?zMRnXJP11GXY?^|Pq zzQ5!=&$wbCUSgL?+YFAP$KzMVSkp4mlOU|(Z?R+P#@8mG9{MpMs28LHhs4^-Tx7Oo z9>O*}E@76E3q8puzMgPfSZW9PPk~uv&-=-ssD-Ce!trbSrIC`44lbq9gAVupw^hbb z&!0c@S)GjFH`xQnCh_)cd^rV9EONHIPpUf9JY4~K*s>JHldJ5zZ@!|lo1z~GLNoQ> zqHTPak^6(zE%Hg(1`1l0tbQ^*j_EOYign*IwjQqh)j85UJ7Ud8As*g&3GT(t5~xN4 zyES^``6^W2s~XLbcU)SAUrQ1@d6cVyf@8P|ybMKRlCvSWE;Oss7IiOg**mp+&grkD!n%SrK0~#D0AZqQ{;#osQ zf3{dovLx{FW{2;GKRxT_w?=5~Q?^YH6KPM%A585N!#ZHcAMajtjF;x-w%I$nOLQm? zb&$u#x~_zfCnVGB%WTPY-|~2ZZ86}jO)pu7nT8~b$<|U1(5`bjg)Bd{UcLGmHGjTIpX4CJ^PSQavEh`Tv`TR4PwH?Z(Nmv$uCGE z%6sJIoQ1Q#>Ud*Yf$EGEL$248DOc`Rf!eUr#J{xKow;=q-Mc{V$l(J!Hiv*MXd>L# zX-Q1M7^QmhlIY7?6TfyaW3DTzOh3)ivOYE^rf`QQO}1`@p&YXcK6TOu=pdc!5B@0a z(uHsYUga{V4z(~v9h%q4le^2~mAvdpbOIlkRlEvxEAFI$+j9p!xeMj0FfFP2<`OFW zD#FdFra5s(XuOmsrDPjc62zbUG4r?%`L{IOdf}pehBXqBY;x_5t?KjiHep<=G}}$H z_uJ1g!JCLk;@ThWEUL4wQV(v`SriUUwGsHY*b-x89=YO<&Du&EYsfQIo-VwOY^iJ> z->=;kzi5G3P|e$5a~x&; z+HBpNV*HEdS#5w7qpXH<=|<3|o2=CA)K<0kWw%6} z_@44%XD$V^xh=nKE$t};tmA>p%}Q9gbT1Zz`ePhkV-M*U$uvo}uRpl=#^V8BHESO; zp)_%po=`lDSCRE;t;8O0d%Zo1H#)k&;bpt${b2^a$~F{Zug>21-n-G<5bu=pLWaXw z`X?`Sfo_-A~=Kb>%381L7-wo}HbZ7@$R!^`LEP-px7g7OX1))p& z1VRQ$QP&!)DBAB|a_sG(F@CvhK1R9hw)a_YLxBtF_rw1_g!M|!7ip;czi5^aKZA#% zt?h-St!+S5l&AtOp??MZ!)AcMi-cOYO?ECxA)%76X`ekUUV*m z?E6u)?ncJv?KrC`r&N{aJ)OxV95+I~+F2+=d^JYl z$rNxi{NmfTCqoBUyj$Yn41>^Tj^m$a%@nFmBQ4c7U<_&h(~7*(wdzJ{QEBmSjda6P z;Z$&^6_#48!NQC2xfVgT0WGf`hS5=NRro9L7<$c223fl&e-&Sd{2=#4IHNCDb`EU%dbaMWQC?o-f2)NZNFjCV!q=QqH@`@r7JunJ0TDH5}sQMWxI*DbjC_>G?cbee4 zTBDtl?NN_v<5#xFSe_5?p4=;jCx3k6e(0P};{Buyu7t@8VPHm4(qIl#wjEpAMwxJ0 zV5X#fU1VzNhG+fc%GfzoN8P^QGZnY|n^JGl44Bl|(=>-)$%c2KuQ1}% z^P~}wmf8)hDR-LN17~5>sNP&OkvLdn`*y9*hVVEnmdED&O;h{HKx2^6`2c6rb@NA~ zG^Wn>otZOhmUcNrK~J^(puy+zpMgbjeJw@k+KK5B!f5T<;Ea#+mO#e%hS+Uzd`C2jpIOP#K)7#^>Ir-XUg--KsKB zMEKMgoBWIdd&RV~is-BxroGv8FE(lf!MX^GGKdG2`Y|xZne*p`~TnEh&KeV%1psmJxU4p9kyLqZCJ8}0| zCTCvcU^BSPoSx=nu?HSIE>igj6}^TvD*f0tsY*Yz9d`Y5&$Wsqw_Q^)L0j2ektW8b zMoEP7=bkTGZ*!4-)4b=q3~apG)7(AO0!l3|qk*u7x>9F~uGQjP`L~2oeoMRWgN&oA ziP*vuocT_n?&TS?DTe6?V)H(T#{iqkG-hp_H@U`KF|`<9cq!nf=q^_RSSyt@3O*GW zs>F8Nm!YXkP2;wm=yPc(b>@lN%p901f7JNOL8Buziz?&fT*1lZ!YjeBeXJQVy^D{; z;W~J-=3F&#pk=lb9Je7~;VCauv9_KNsDFI8v30a%+=n|jBU=)&u_a^lcFdBqNI zQJ3FmY$8&#X$pY2|~VE*mp-AluIBFEG2FIM7~C7FA(Ba@N|+K#NrOW1BE5_YiD z#&zTcI0O;o(+*{~BT~9akyzAUquUuxR_><8+(R^`#UC#TIGEpo-kXStmususWDeLc z7@SJ4pV1md841KlOT&I5uJJb~ij+E0`Pte2zpgqpG~6PN0X6Hu`JKSR(?9c37bE=- ze{Crp#1C69FeCRKKfOQ=I*Jh3YfK-{6O?nrWk&9t=JTN+{KPEzf}Fzo<}BBU$}W*; zPrF{230rjck(DO&V)!sOW;{}ZN)R|+R7#?Y-Cup@-0#l4vAvP<^Qq#DqTklD>g~uy zMggxzv%v%vfu_sGNl}UM3PnqyH%qCnBMBF5MZw6(GmW!8N>l4o6$YY*$K_4BS;*%( z7z$UOX%vz|aN(XPuqk59UhtNsjTb`18jPP2=B)zk;MH&O)t}YB!Nzq#J(aKCrlCE1 z9=l~iLXiXuACal|T37@+@FyE$LJZZnkN6}!PhW%!$QWp%h2zE>L>3j=g_4O+k&P_) z;X%L53`!ziv-JQO<*8m9m3K_MdxdE6VwFW4dXbN1-Wq|@T4$}iyn6)2U@8I3wIP|X zHD{zAaE`Qhucf*m|A|m&Z6wU)g3jiyBlTsQK$rWe-!1e|lLPFM|IJ{OU77iU+C$#> ztOX3!QSrhIUeIg)S!8nEu(9%BB2w|s?>{JyzDg;mTOTTvSpP85cHR1Nmv{J7wi^WU z;CqO2e~~B|W8!wA9p$YY<%PV=z^qMu(skTXL0=oW@Z$|FMeTCC=h1nt&goCcdc*%* zcWkU->ot4=1to*@*Se#zjkTkqp1!3KWZiKielRkX`Gw$R{0&;jJ&bVQhuH8bw$HS6 zTD2dX4skKd^a-xHWBZpc=Qq@1%#yk#l!Tr*SP>r>I5c^?CK&zbLP02})LSIg`-U}{ zELSRdwQgs}f&BD~qEYQssO)!!;2(N758!*_Gz%lrZx2X4G4H>BpErLg`VEPZ#?i4G zOL=Qv!u$j{`bBcM(#ff}wyX$CN*<{t0^{w?Dyo5X_6{#jxc8JLLsRuvZ$sBlBIQ}= zSO;dQ8m0tR)dQwI(6%GhWo|J@PT#uBo|40|;yYUNa3+I8c#&FqyAloEV9w^DW8ktz zuN-)KY&S9nF zC^XlJL#JzN66}TY#z2(9`RZ%Dl-7-_XgnN|0SJ?Uigb4s53?ci=|rzb6!P~zc0*Y9 zZ-lwlNmHw7@8qp7<#Q>NoJ1+;=`K#F%mWB4v|#lEu`Ed5hB#{(qhd*C&o|LK$Tec0Nr04kjUe)${<0ou^U;Me{ElYx!>FP9|Afq|yZ zf&w1-|8@zFS+)T-j(nCA54=e{gB2DXNqzdguD%Qz_G{K3lv~Ii229i{owe&gcRcr; zUC=siiCUjGY-X~zfu9diC{ zF2^Czk$IZfu%+Tjy066|sPIaSE=Q*!OsG38&%*G_Mtoo@r*8G75`CUG% zT4t2#_`Q6a6}k8n0xDcX)OFn??1AP|%X9yy;@eZRO)U%gP+s1gw-a3Q9A>khZk!Aa zCrCUqUb=uI;TIivLKh;O<8nEPx{J zJ#SUJs5vbvYjeGv0r`001=XLFT$s+&Vn)!=RcjA7s4XYh4Sa!rkvAbY%MmW&?qOG>2Y3YlO9p_ zfrDdTuiDeL$yZMvKUr#Wt zFlAJ!uIML4pT1?7wy9moq#`AJODBhGI_-*9jsHd5sSQavX#L8_tu86vHHeS<+7_#z zz03Q5-R*D`;Bx;C^gT5Y97I51{MjPcu{W}G__I;Y2>JQ{hsi%-5(}=;h9Q{yOQe5HH+)~m~(wuO4d+y%eJjw+Ifk7aU zQsyb|^6?`usRD|eGaNiT$3o8Q*6pH!AFaLvKW==pR|QZMO9;+xin90gmAo>t_YU7w zDpDe&M&6fsxcq7c`6t8=&K|!yBEXu=cd;mYRh`2;dK>Kr!tuWkAj6e{#_eG2hGPma~6D3IU`@2!1KP%k<9U6BO^v!Hw^N00Uf&gEzj=(B%HAGTd2 zS)x&K+3!0(Lo4BA9BjNGyqWSWUro6u+`k{)Az0$HzqZjh)YgJO+WUPMN+O}Uwp{G9 z56}ny6pU^Q4MN-!MzUy&gg*Kn`xRop@A=p= zM{2e1`f8Rnmjd6q|EH`Fw%To&YP?rQ;Q=fC%iSob9`qm~_)jkY z{h;4k5Ax04d;O&8@4K&B>y=DiHobH5$HLWX-n(7-%J-YB9Gjn2sj^@|KbQ3_;@0s! z24t%ItGqzy`MlrmanR;sHLo^l(ZJAL=X}}blG1P@^)J6@2VC)rcJuhfhhQRwRF>0^ zRMEE}o9P*?X8liY#O*MSzu9o*+Pwt6rgobx5ba?I9te^fVS@hMi-OQuR&|d6kpE5Zc4T|Xfu#S2Vb#~gat-;vye6LIi^ApYl4CBQkBK-W--AsqB!_B}D4qUiJz9#%Vt{RvNRPZ^a&( z{iGQ%oeS%43;1vrN0D(TYKf7|5Z}l0kSkHl$XF%TWhCnSA&~TAUKvlk!n=pPNm%ob z@$y387?h#>`%AJHKNV)IDfXZ9L_d4?$8N83gG$26q2SipBl-!~UP}uWE=05-{$?!5 zgg!=5$kF5vr>#~RW3k;zu$^34DF276>R8qG0Tf*Bo>IS-{dInFWsC*YAA5$Pk2%>) z1BwpHL8n`C98m%%D*aR1m`fDWjo_F~0l5Hc_it>V+DZN;6^!HI@FZ}rcr~|<5uZHk zcbJ60KWR2T<^FFK`vmj3JCSwY8RC_0%>PZr2xX`CU4>~ZPnS`nPX+fNIN&$`ESv$1 zv1=+9Rlq;+q*p@{HNA?PPznBG6b#@-u`yJvgTGa&Vt-)bzad2;8v0`FkkgLC#6H-K zV}vYvU+9lLUf==UZwbfD72Qu5!va{deEe^%qZ@o=s9eTqn-;La@8UJzny;9Zd;H~{ zELEaLuCjDK{h<&2gheq@;(t-@R~PKvK)wH4km?s>X8A9DH6KCP`uq2Pg#$WfstPS; z8B_srhU*@Uv2MUFK5Z5Oe#V~l+us%#dj{i(8~2x15Oh<9nnXj~sV4oeF4U9rBrdz` z{VPtSe_}<&6c&>4&mcV<$eMUf;wa}`NykZUcR>Q9{MhD}#;}X?&`DXcVGXyH> z0wgs6d;S5@=+}TC9EyS*oEJ6!Cyl@CXgnq7RP`U_UN+pr{I@;H02+V!jFFg9(6$<> z^gPCxk?I3Txd)N-CK3Qcs~^ArGbs7sLY|-Y!2HXB z#1MAID$kc-{!6WQPC@^Xtad3i>!{#gL)Zxl24_T-X_$TG5CXsdm*tv|4=Udu-EO{p z8~dU7k6|AEp#2y;z{_Dblw!+cU8O!zpegm=aj2`~Thg8(T?oXK|7VNXf4w~m%~Bq3 zX%a~vP_5$ej}M(e10KfzI-`oNIci z9SiHGZZv>y`;E2bC&i$K-Dc-Ul{&XpXKw~miSDsaJZ0zNFRS z1*Z8ev3tn%W$jdg#(vx1fWZpm2n;{klUWry43+;GeZd zhjUhgt?MnT^*{cUC5w!V^4O1LFcIfdA#Y=>^2q(JdQ*w27$L~79@Kqg{Ku7q1QXx4 zC2QTAn-;b=ST9Gc`g6(t;WJB`HCRz@tbACvspQ{87L~5g*wXe#!YWosSa&9!k!M+y zR}fgFn{8@LC8$`Xr#nxd6o2HWrOZW-D}=a zu;p+3AYnweiPnl!Kq64Y@AJ!0X(&Vz> zqud38C$p>g?@AW)qUKp7L%^nt&E>|<5gJrUrHUrM;Jl^(w*rD`=wq8R&a5pLdpsSB zE5=6!zhM|kGVAH12K4(Bj4`Lek!k$P0Ca6Sx{jCsX({*)Xt*H5+7cA6`#U1DWOs(r zly!mAy&c=!7IHL(&+*0lfU|*r6(4?KK^0`CraJ`(aQ%nQrVewb+7_DsR6+>~kYv$C zf`<;cfiAM;fXqC8l^uBQ4~1BZc{I>kAD!82ER0+;T7FZ65}ZdL!y2?UaRvjEfWj8Z z-;D%QfcvBQbO}lOP3a@9j{XJ$`_|aMYooEb{R^>XAtdjdS!?zo9o?e#yH-#gXggzV z>}Zz|6;;R!ckr&Z6;X?j0) zEz)rF`-~|ki}F+F*F?XPO+l_PIhm(iD60?T({D=}KC6*@G>`d>joISP$G`@@%spoxQD4j&TQkxn#z#oiUX)?rv3X z_#a!|jYsK@Fg3Se_?TH?6%mP{+2J_wxkhdFgB0|{sAZK?hz8**Ft0pP00NyzmKj|)G zrhMNCqs{%GAt2n8#Z6Fl&U>0Sa)4h)sQOgPjVg z8mAT^R!jtt#c(3z&)BLU;?HG8Soi%)**h#kC_w}^%PPMlwsUyLd3QGe$Bo~_ood8M zlGWmmxqFtsgmmEkFa1d5Zhrgx7i6*nX z6;=Q&SNnSCk{;4f@VhB9hg7X!WvfIg9h9I5Tu@M9iXL*k6EL3|9;5qZtgr!Q&_AcSpY26&9z7@quyi2R?NK6-2 z;mTG#Ph%Czh(7#gEsN-_0L%D2=TV<~FEJ2GlTq?baxvp{@8o?D z&PJ2$uUkCedMvIN=Kas5;)VRX*e2834!j#!1tI*6l4I-QyUNVBX4Kx+jk-#e1m z7LDu_#E9!u)(y#M1G6LJop_Gik%NJ}=lxkinr$ecVi^L&wX#bR??}bP2*ri**Utdm zyT#F52VM+aZ|b5!kr=0i5}q3J5O8CO#P5}HmN?eV_qvBe%#U#1XHb|_IjS(j6EEMk z9%v_1rzS?X7Bg{sfN=rfwct3l1M@ayHWUqo|H`oVP)YWnu3AF&V7;QtPW?2z*V06u zG9rYx#v)LXEGKKhT-ZqS)AvT(NX1!}1PDlNVEHw#H z_ZwuOxC^-FJn10K6@qmu+D=8Fpd^wT=e5~ae#o@eC{RpVLH!z!0RNZav1q=&QBO9G zH<%x*NRfB)!|j2r%=pBSBt4^gl!S%aAybz$%n)=LL)@$lWY49V0|&5h2Q5rsNew~b zCu6P-iXr3%-&AEd71XT=0z5)cVF&sM`Lk|C4R@I4kt`5MKO-kE@b$433)KObeyONw zrfSd@B(rB(q`VR@4xC%h9akwyc6RSs$X&rrcYIi4(6I3Jjon1vyihQ)GLPO~f8=(W zOU1g8inem9!{Na^%IWr-qW06Ng{yS8lfcNrbe3U6i_3YN_W7%H7Zze3Rs|)@(_ngVYdt*5q&JJR`WJRk1MnjIe0NHTR?Y9KvmirArfxyPLw2pCpDNSKHYYR3@p z-mw|Iwy(K0TsYRMMaQ&@fpfi zEqknP1y3DpHnT2@L>=?5Vp1p~6S&U~((6HY!xbf1_VXnv zg?o*hpl>od-YHnlGOki`5VJn%&^$KhY$yaeHkuY3DXx+yN%m^^K)rbHMCKLeap0s_ zdgeQ>%6BrQeYNjKkje*2Dx%m*_Yoi%I}irvfKU5;=)543OI!o+(K8gj;s%*39yI{< zr@V#__H6X(i0De)v(scsbOS%kmMPDOBKo%|HBgj)bL3zFNKi9tGdF10KA}P`R30|l z%&w3H-1Tb?tB5+)Z8{`6$4#6My`mp(4AIn2;;PKKtaOx}v`kHlA-P0kp$t#C^X_Ki zwDsehRoy0C0w<%#&cpoE!Q)Z}HRnpaciC3>@lN>Uh2t^6rZLoRu22kWq%`wP%T1=s zLk$3O$=M4hJBsPgK}c;sji-{ea+PUzxsObqmBQKJH=1G1)YcU6tRFMn&BVG!0- zyylI{0~T=b!CDkWgOIa=+Ee2KT?I15fd-PaiQjT^er`;<(lom=l0|o#R(S!(FYx4e0 zc(1I0oHUxCmSTjv>39QJU(<(Ua#Pd^JI7~WKeJUy7oO-ygR|Fm(#&|;Bx4?*Uf-M0 z^j*fkS!7B;eD|0ba8Kp(P`ji!E4y2<#mT#GHqF?~~$RRWnM#(S$oe#trVUgk^ z_{OtgkJDbXGG<@7lCa(q~8h0wPeX z)S?XYMh4sLS7smvO5G5mD$G)-;22a^DlD%A&}?b3qB-W5$WtUqVd5xT37>w6?dtfE z{nYTQ|9pm7Ahp{WFo{g9tioYWI#pLK@9jGByeqEDFDcS0SWdar82kvBE;?Z)87|ZTy}cB-2du5{&OSa8Rxx5XT`z%LS+zxPE{9jedq=N zo7^?G>I<42sK_X?PA-tt75yooh9pFd{QSg|olphRX^T=itFrq#dL<|PscsH_Eu~<4 z;7K2%FiWEJO2kJpt zN0BW!AXM%3#)0o~wILHKAMCT&MCn0F%5pJE z=hx03*tg$52r?(4&G4N_teSX5RHjsLcY+~{`*Bg~<@J(uh+F!6o!e$KjXjp#F0d^dsOtrKRTuj%kaA8lHL;}WZs2xA+-rT{pyyx?g?rX(` zNuv$v(opi6>_s(CDqi8LuoJFNK;ouY6nR~9IoIoFZ06mqOZzPtFzr>smFEeuD1-=f zd0v&wB2O_xo-*|WTHVk0bSq`sbMGj9sDowsYbwStCA$>fL-t<4ki5q*QT0PVbqT0tw2qCy!T9DebqzBb4ipYc+HNp z>ciEABrwb^O87I*dDV;8C*|3Ly&yE_;uDiI{lDyaeFIYfEy!idJ?k_}=E)dT#X>6~|ISZ8>%o>*T`5Ell!9Yr7?8X0GLIMc+ zst+DiaW#HTW7%nUchF2p3x=`p5w_epaEH{8!zR0QLLQ}R6Jp~=Kh1=|f6BxF?DozV z7278LOEAl)Ir&^^xK*X$@rh7*t<%{~UIQS&)4RoWrrl z@+~lK*!j=WB-PA{EDG_;ew3(9NY8Wkc`cPj?xhHL6*c{@?HJ4p8FN8wlTGz0+sIEO zUvPjB4#BhE1W%468G9LjF9POM?JX@p6#AG>xg%_CG-D1F-yXFb>$E-IAGiDHGGcSI z?rR;V+*Cz*9<1B*q4LvvDYYtUQmIEJ=b?q+gz$tOV*`31`Lhyf0jr$cddGS7iR!E3 zitK4M2{y%;;$st`c2`}KQJ@4q$96o&%{gt#D3ZLVP(FQA2wT-VnMIG=s`mF=-&zZqk(c z&L#alSecRCzk-)%dwy=qggU&o1<3HJTgQ6q44AhA?H_byD!j*VhT6))x-;%3Z*{cq)rW(p_k99-ab<-X> zDF8WatIu5SI?}L4lFQ4qnJ+&_ecW*LYgz(1ub_Qgd0My|fPZvzKHX6BAWBzsy3|tp zmRn#x)IG?x^2%G})QKXme&s=qS8!@t6L1LW+(WDBes?OTwV*Gg>Tv^2c&wuwiM~kz zQ37@K7vFx~4t=4kT(Y~&neUQ}9U4^;r&CJj1aiEU$7dSs;>?MD_(QwRyjLs!0{Q#O z=hJm9U(2IMp6#{D)#;F?_qK?nAFO6}VdY$_V=7WLU43l~E{fFw{M;~9yC?S&KD2%q}$nE{x^rS22uAGY7N8+Mtn9Ud(Fz8`~3SLMQF8%ZN^M%nTxc$A?Rn_y%@NBx5e=&Hhn6tsMbrYyy+g7HG;I;n#K5x zG(A)H6MU!uMkeO4Q*893#$Di*l^tY-WQ?P>ZkSshEf=c-vI)9nH*33wv9DyN!wGju+^u?}|fT_<6Y5OCz9ADDy29?0|`TI9>8%|ot&XpQ0 zmtY(3+XZjB{R@NY41v8Gnxa@Ks=N=I+ssy#YG}K6ABA|;Tjixa7H)DI<#^>6H38_5 zz#=4Hf(YR~5%Ohqk;vm%3$o}hEa*3D6NWtjuC^6Y0giG6*3`|us1qI@5doQXpQ}&= z!TeQclRI-^b9NLa)UF6D@%@f?dsRPWY9614$*QA&Q`pzj^y81p(}%|V0tEx^9RA!* z2X!ej%g1H#PDK7|G;8`NIwB5QlpA6vy=%|cOdyypg7@;}qO|NldF;8&5oD`$B7{2L zA;2L?32|4<@ojTQ)yv=~P%rS9((L^4nUX9Jwm%9*;oN=v@f3(PE_as$ZIrDy3zjv< zgpOlExkl*^$%SR>Q7!dId))PH1Nm4JY9L29q}@A9h76hqg*&uy&0fT70=xRg%qvOY zQ%xk!?s!o$!rUlJW$o9Xg)6!v^qL(=(Cevax9L4B9=&Y_vc#avBSs+dLjwo~T%q3= z*~)0BF9Wc)SnSe!G^Kl#3s@owmH%pmrCLT{m1h5XRErGW$$qXXMTSu$&{111u^}4x z=-ArGnzUWMX~iXsr*x~xqShh=$3tMbNHg`)i+V{h-|7MfnMjy;GV&B39{=*bP(Om6 zTBPkXl3o<2Jtc=d2(n$fyM!MB`OnYFRIB>AC{%&FAE9M~?Y8%MwEK-8eO@^5=xcm;SdHNHWNA;wsjj9{m8gPwr5gE z3m8=7J6=?U0$4Y_$YmciGxX*udRLi7ZM5}BUCr>QDOK_u7E~4#@E&QNtqdc_{Zt`; zU1`1X-Ya_cxCOIqLW|`LFZIKmFq1c~v#ank^ z)iS;F2hJmf(lw7~FKFA3Ro_$1>@!r_tMx>Wj0%K&=z?7%$hm%?*jQMzT02=w6ajRP z+(C|Bh>LWGrKT;Dx^!uLXsBq1#j$)N&h2N`_}{tC!N*>g!p#VS z17k_^;in^JNLzk;R%i9ouS4_TevJ((hfUiVEq&Z~7BjLfJ$O@fWd*UB3qg)0nhkHc znTqJ#CALkZP83g2PnJbaJ>T~wcDt>ut}TZGh()QP7<5@HGnLDEShj1t;+w<)h(ZY2 z3uj%B>B)Tx)kkAJJE6pRndp6;c)S0KzV7u1()v8tW@GNK(WVy47XJ@lw6Z0e_Iu~} z^Gl93laFxz&F-pH`<&)-I0Y#qmTvKb%%oasw7cq6<*xOOB6qUmAKNj1;+@di5uc1g zLX^8LTwI(pSk$3=&&YT-UWG~~#n8)nLA`jy-UV28jfP*0&M&nEhTxsHW6xu)=AVw0%klcUo{&LxyL(Rl{pJpG3xKU?4t-`DdBlh&Wms|j1ag%Cs zE>RuPdZ}nKq#S$uRbaJK9Z`DyUsSz$IMi$SKR!}aNJ2trS7fOOV<+tfF@v#`%95Qi z_AUETsf5DV3o~X2gRv$g`#PhnSqBqBvh#i3&gb*Fe!uh2IbG+v&UxO?b1$#^^}6qS z)b_&y-|h+LDLJKYoR37$YKkWS?-Z^YpVuNUDlRj^;jdpN$8hUO)Sjh)Xjd_mV4jMZeC!h zzuBrt&VKJJ`Ew-bHWKSNRee2- zZ>1(+R}^&Ce;%4OSf^adi)B=?U~%}Fw+Cn3HeEE}UUQw_t?M-#7!7<{7@s@ecP|Y~ z_}|L|cvaUqncplN-;x*W)&gYRBRcEP~-sV)SfA<`&so?@@NF)1;T*P&qW)n|H23Kc! ztY@}be-<)pPEa~87Y+UQekU9w#*j+ubqb>*`!)L9mUic6vZ>4^ z^1V??43`Ze3+9%H-`~EcW?PvZ0SABZ{Alu)5ob(z1GB2pgb(>2oEfuF)N6cgB9=H{ z8nkn__w%wFyRy(d;5x2ff##2H{7{JaF7bh9U(0M_qww`Ql2U(L78j)8y*^zD=5!vM z3CG|~JwTv={OhopePL4S&hu-~D0OCCvM@ zb~b=UNVy;hJz)cPWJVyUX7$YF3U@bo2Mu=`8;eH4?=jA1P$Vu)3+P#AQ;lu0C1^l3 zoqC}dexi++knjPrYKtAyWy~;Q=wVp}IPo-}Kw{ZOoq|-F-Fu#|98dbgFiXpgXkb}6 z#y~7Yg?*DzM)U)!s6%D*QwztfZOgX&m35 z4Z<|IA9_cFUp=8dTMHwo{e725q7QeN;_XKx63%+LEQ$Y`?FU#0jq9J}_XIdcd^ zBLdK-QoFv?b08}3W_!zLmp_l@Zl|cf;BL=#t-6%VEw}lLRn_K|x<_*_H=`D9I$tp| ztQ`{@FS7F|yl=j0bvV4mZuf0EH*Gx*+ap=P7KU{IV1->@+q$H(*|PU_yJ`iYr}?s~ zhhVqD^MX9p+hH}loP5|XBODo&xeF6DkseXmQ6?Zhcd|kX8CrCN2o=xQ^3*OT!HXDx z9lge!uT#>RCPaq0Emeex!I31z z(>POiftYr-z}$>`3A>WQQo|Q^%wOIoXbnuWNy{!pH@j`S)5#MF?TBDLhM{V(CkS9t#g&j z?V>Gq!)Jo#G%7w7ApGY~^ft}GQ9VtTgm^={r3mn-tHbWeG8&S(87@UB)hiK7Mq73OZau!KLz;`7x4QKWXJQ$~6JZHaMr~ijW7;Y1CF|=>qL7SwX*}$l zK>U8@@)9D^^{4cFvZ+VEh?Zz_?8x@d>dkpYw8)w1sic5hVSK~0Zl;vWy(J-4jsyvM}Zr9R_R>NaaRM`@$6t` z^9qWJK`3Tz&3DwRjsO~9M@vM^X7CyXpStrmJ5gBli0peoW$(YMpw_N-n2>$xDrBF& zx|%k(uOi+8m)GL1Zl*7bGmYt95;&jLvs#3_-RG_Zr~KVl{)j-}W9RO)jMi?*k4T7! ziJGFHQ8$d_i&BhUfCAXLvqdFgP7aoX3ibbvJ1CV$#$Nca85EBS!zw)i*j|9+=3wBB zy0>Ao3LMBmFkugQgqb{jzuS@`xI#uMs8Ch@VEl5@?i5q}x5h=Bypzob-FmcBg}`we zK#JZiS@O=4mc(1^tN4_Lpgk#Aku?BE{dcmvY2nPvThIj_kI{+Rj4En)7(GQle|lH5 z@}ZLcAmF+JuTM7>d%bn|UWSPnHT^HH-f}W7`!Xm}j441d5Fu(1jVqBk* zORk4v@LOAvHQNI<%6CL0b4oJNr%j~LF+DFqQEy&1own3pV*e5AgWNfOAj)V0dF0^X@hJ&E~a59v5AJtNDban&Fg^L6;^=+`q|SYC4-C0=OcH2^M&+Q>~ukX65UwbZ>;D;8z7Csg#gnXX6mZ zFwa?Tf@ng)mD9oV#mlcam`tQnuCCO7n!L5*2Y4EWi6dq5{Jr?gKM^TD1E<=t_thBJ zUzID>EGdfbo!8E1?#Gf?!rZs4orv-l zwFsAwJbPnW_kyFpaj8zON1T|=n zePh!cd{i&eF1z1NfKb^>km>mL3X8uM65|5Vh&mO!b&J2Om?hufQM7c3 z;Msg)H-e$^xXyLbT`#B{L3MKpaTDlNIE~vsKR8gnxSYCc+Eb{wJ`WypMCQE@K!7C)^q)N6n-~XKoHQ+D=j}kklq29t zX1a#?pJF$QZM|L|>uwmDo!wuybPeg2HoZv+_N-oeZR3BO+pS9ee>k{{C!yBauL$sd5WtK6(yY?G^7gqfoO(3G?&di@dd%k3KxnZJ{#xRUR)A>6d9!C{90C#h<{#^O}R z#Xj6uV=A6U2#4w-{7m_wnOW{z-z_yk%&xt2R^VG^Y|YBYD8#V%Mb3ar^HMvyz9<>h zibLxG^_%rGWAfl*JOF8-Lq=pstp4y>=MS@Ay0f{NFyNp|&;Mk{*L|Qd zE4qq`l*Fl_e&eGMlCo(<`03=sI$k4b$-d@F50a&-#S&9zLbj}3-gp+upV|j|npj)= zIhA9e9}jhaUbDYgBvAa6jFoki^?f>6zSgVOhwkwDn^wnpZIvIi`{+}DZegNP!i=4s zZ7x`vs^@69V2F%C2k3$8F7ZahrJgnHp!jR zzthpov8uhnAmFhED+J_BaSnXL<_7TB7Lbs-e1=f8(gBW5eD?L=x`F{O&XiLzli(O` z(Dgi&#Zojlq-@ga1V!D6_(HR7&oZ1fS>a_-`6ueG$Ec`mIy&eCgRmgpx~bP zEul!}3l|cmhtH79Qy_j|Co>L?DXvg#<^l4syw}FomPPXUSaX=#!>(U-9BNymrkZMW zmWz6L`Ycq4;Zu4FvV}V%1C}Wreh80Q+8t+|YQV>DjEpzNq)NujAyZ{TFs{a&b@hna zWL5ita<=W&RjE>7VJaPf+-GsaX_QwRbTxhC@62_@T{oOQjss$gzOk zQz*hcJ=T1Bf)57E<+6Mnv6o5MEcG;ba9%|h)$blV){Av|V}*Tr)gpxD;kF|;Rk|J5 z;EkW>#`-ETC?(ex=E`BO^(#BU`33NF1G&r31Us8nNZ(Spw;>$cG_vE~DCE(5mxobb zY6pIEGzs(c=Z5g+z*e%atj?|9gBq=qBvqX#vl& z+FSbI0nRIHA32@i(3rx_07*nnihZMknN#VHxXA8WBj2q4Z!M=v1!Kqe&h2dVL8GQE zj}Y;n9dy^LUOCWzj4kY>AsqO68w9$W=Fq6F+@;d*NB}f>zyl~7Y28W^fBGC^fBPaj zBB!d)p5858V_O^;D>w){DriBVL+zUXmLCo~upHJZ1zlyYPG_S7qVENj+ssY~(!5(U zxka_Fu8I=xiw$;9hB+YThGrkHS}?)7)tNcv*8YTJfIqN^I(mX=3qrhhtmgNXPqPY0 z|32XFlCnpazNUA)6qK9)v06!2Hf!r&gCv43<07lM3oZQbCcX9^tYhvgrKC1_uur6f zS|@Las+O9-iF-HCgY>vKuHfoGM-;nBf7p`(%W1rnYK*pFtqYe4*6`+CanI ziYXeXwII)8&)Btcn|YmMOEDQcXUA^1U_cZS&oJnSb9sD_V@eoJ>17v=$|y1L&NtMQ z**0#Z^>j+k-;r{o?5so+%|3g7pd4AA0y2BzW^DX7T`fZ=Bvl$=g5>5Hw_jNt%4UYW zR&xB+btNsf#i-w8vO6zDe{x|Z5PayVrLP$^BaRhwuQuyNRa`1mCf#it22;0xrYbu( zU&{V1zKRiRe#$=-hOv?s?NbbO8D~b9KI83O*93eUTbSF*U0`Q;rUn_p^j|-Qk(OwJ zO9|yzr#hNFDmy}zdsj!w!a~)Z3nq#Jchu5a{vBTY>!Nc=Uv< z5rpbyX>md|%1+4hn^6C=^BJfJ#Z?0e?p~9Wu>K^yZkrjJnBImOBju3(HGEd5NL1u$lFQ{mZ!9Zpf;RDHx@=DbE1!R zA0SM_!+>=bg7jn3HjQ5})a1o&Ni;v@a$w%`vhq)_+lNA!x*yps-e2@zRJ|c?bg%hg zbWy{0y$+~vwdF;NzeRqu{D7y+D2cVmV+6{K8ELV@H~0k}qgyyKhx^ditH&YQqR(u& z5-?zxn(n(qZ;Xe&w#}&obAqkYtP0JqAN)R0x_Y>v=Z(Vvk~sJf#8f>FPggpVE~UlZ zlRCMyuiRT+6rTQeOPl!uZcU9@lq03`C>|)FQfWP}TiB-aoJqp1xvoR( zQxi_LryRr6Y6r?nLG``@h=p+=zJM0u84YAt(?U|eDUu?bmw^GXWas#G$Yx(?vU-hI z?UC?tHlen6HgY^8*LYp@xnOtOZ?Bk^@gHt^pltXFuh3y`g7Cq)81$|5V+pO6;}KdP zB#cDgfBq*$>^N?@v){FVBo)g zd;}nb9tiarVHl3uWYg7fmxqp-{6CsHhCWE-h6-Hu?*2l+M$n@{CIk^fh@gGb;nfh-vf2J zVWSD7*VY8(!=YX@CgdS?byZ4&Xs~;0c%MRxJ2em}*S}bVgqY!!`)*qb>n6&{`jg%T z-h0;%ctOtT)>#G0yf*$QI~}@0dU7Db(GD;>6_2FpoTKi)A88uVO;Dg<-TYAtG`?dM zxfwkxJ^BC;Y%s&6vZ9Z59vCpiDn335zj!P_Lin<|X!R*{I{Lv*g=dUsx%|0(YPBwS zx<<;H?aJU%+`YD6X%}q;Ek59^^hdy>>_kAhIIc}Np7Lu;#t)oaK6Xg{T zVS#Hd!LM%Y14ve3pCMt?9*qDI2=uyJzaD91hIo2UeLub2asU1=(} zQi+e*1}B%tDjV#ml==5j7U7-1_CxeR=PcpQrjHOGrTiHLESxhUj-fYT(gwxq5$;T-~+ZZiL~4uyq5s5=z?Jae^t%2aWnQfCPC<5mcQA5!P! zkT-1uM}LxZO2hx3)%uI`kh3PU@q*-k8&vNz1_hB0bqecd((ea8z9a?#dbnqj;Hqp7 z2#ii+q}!W*)5!-aqZ=csevfHN?vds}E*5N&3tJYEi->-GE}wIX!Xp_Zr50+5r61b#r+> z_Gy{#hgsax@pM3p0uLB-cd*dc6-@we3c7a?cGyZNv)+s0ZXn-^^;K|8&jKLaCelgO z1Uw;&+m0A~A3Tt2SZYtOI17yZ?f(fDf$ZFtQ#8PzCaJ5ZNH9Dx>R2HohG?EZvT=*H zhLx9J<2l0d9+}w}q-Q@!aLGK}*G4dX?(Jd74w~cyoXf1vfP9A-?`YudBojf#^RAdx z5H*M$IZy}2KrWPYiS!--S!`{&wA`C1y(S7+dl1qM0WQ~p0ggVj_s4W7xRY#5Pf{7~AdFvwRjd>tAYsh|!otPTnk4+a#8biM23sCKlfSJ4R4%^W*;NMGlOnGhfC1K&d%l}~i2E8io59oDG`j;?;o zd|x>@x-k<@U;Bb;I0%S^W-F%eogL-+^2@wckuaW-L-nLB>tfk;h1hzBB$#1;!&pu_cBVhS#kCJE z3WDEt03t{}qshFTUQ`<};#CWf-c-;AxYi$Rz`c$^e8ynOX%IZhdH?U?s@F0+lRcx? z;%yGt-N}u~jv>VCj@*FVj@)Z1Xv(mB144akFZ$D+v)=pxl5PKJXLv-J=ck{G>C53%V5pW4!26_x22{8$uqu;x-fR=dhTn�+1$Xl3- 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 F_