From a46af33a926c9bde9075aa85cd484c0606c232cf Mon Sep 17 00:00:00 2001 From: cguweb-com Date: Sun, 21 Mar 2021 11:16:40 -0400 Subject: [PATCH] minor updates --- Nova-SM2/Code/Nova-SM2-v3.0/Nova-SM2-v3.0.ino | 1006 +++++++++++------ .../{NovaServos => }/NovaServos.h | 56 +- Nova-SM2/ps2_controller.png | Bin 0 -> 157377 bytes 3 files changed, 723 insertions(+), 339 deletions(-) rename Nova-SM2/Code/Nova-SM2-v3.0/{NovaServos => }/NovaServos.h (70%) create mode 100644 Nova-SM2/ps2_controller.png diff --git a/Nova-SM2/Code/Nova-SM2-v3.0/Nova-SM2-v3.0.ino b/Nova-SM2/Code/Nova-SM2-v3.0/Nova-SM2-v3.0.ino index 12a8708..1641b27 100644 --- a/Nova-SM2/Code/Nova-SM2-v3.0/Nova-SM2-v3.0.ino +++ b/Nova-SM2/Code/Nova-SM2-v3.0/Nova-SM2-v3.0.ino @@ -1,28 +1,41 @@ /* - * v3.0 RELEASE NOTES - * performance: 38% storage / 40% memory + * NovaSM2 - a Spot-Micro clone + * Version: 3.0 + * Version Date: 2021-03-12 + * + * Author: Chris Locke - cguweb@gmail.com + * GitHub Project: https://github.com/cguweb-com/Arduino-Projects/tree/main/Nova-SM2 + * Instructables Project: https://www.instructables.com/member/cguweb/instructables/ + * + * RELEASE NOTES: + * mega performance: 41% storage / 54% memory * * DEV NOTES: + * re-calibrate servos to balance Nova!! seems to be back-heavy * x_axis: tweak pattern, adjusting use of move_steps to not near fall over backwards on startup * finish tweaking left and right step * finish forward step (w/ left, right, backwards!) * write fixed speed / step walking routine - * fix standup routine (ie: tends to fall backward when coming off of knees or from sitting) + * fix 'stay' routine (ie: tends to fall backward when coming off of knees or from sitting) + * */ +#define VERSION 3.0 + +//debug vars byte debug = 1; byte debug2 = 0; byte debug3 = 0; byte debug4 = 0; byte plotter = 0; -byte plotter2 = 0; -int debug_servo = 2; +int debug_servo = 1; +//test vars byte test_run = 0; -int test_loops = 0; +int test_loops = 1; int test_wake = 0; -int test_sweep = 0; +int test_sweep = 1; int test_sweep_ramp = 0; int test_march = 0; int test_march_forward = 0; @@ -38,15 +51,16 @@ int test_pitch_body = 0; int test_roll = 0; int test_roll_body = 0; int test_wman = 0; -int test_demo = 1; +int test_demo = 0; int test_look_left = 0; int test_look_right = 0; //activate/deactivate devices byte pwm_active = 1; -byte rgb_active = 1; -byte ps2_active = 1; +byte ps2_active = 0; +byte serial_active = 1; byte mpu_active = 1; +byte rgb_active = 1; byte oled_active = 0; byte pir_active = 0; byte uss_active = 0; //test: PENDING @@ -56,7 +70,7 @@ byte buzz_active = 1; byte melody_active = 0; //include motor setup vars -#include "NovaServos/NovaServos.h" +#include "NovaServos.h" //include supporting libraries #include @@ -71,7 +85,7 @@ byte melody_active = 0; //pwm controller Adafruit_PWMServoDriver pwm1 = Adafruit_PWMServoDriver(0x40); #define SERVO_FREQ 60 -#define OSCIL_FREQ 25000000 //never ever change this without expecting to change servo limits!!! +#define OSCIL_FREQ 25000000 #define OE_PIN 3 int pwm_oe = 0; const float min_spd = 96.0; @@ -90,8 +104,8 @@ int x_dir = 0; int y_dir = 0; int z_dir = 0; byte use_ramp = 0; -float ramp_spd = 0.10; float ramp_dist = 0.20; +float ramp_spd = 5.00; //oled display @@ -99,6 +113,14 @@ Adafruit_SSD1306 display(-1); byte oled_in_use = 0; +//on-board led +#define LED1 13 + + +//buzzer +#define BUZZ 11 + + //rgb leds #define LED_EYES_PIN 31 #define LED_EYES_NUM 4 @@ -117,14 +139,6 @@ int cur_rgb_val[3] = {0, 0, 0}; int cur_rgb_val2[3] = {0, 0, 0}; -//on-board led -#define LED1 13 - - -//buzzer -#define BUZZ 11 - - //pir sensor #define PIR_SENSOR 30 unsigned int pirInterval = 40; @@ -144,7 +158,6 @@ int pir_wait = 0; unsigned int ussInterval = 50; unsigned long lastUSSUpdate = 0; byte uss_val = 0; -float duration; float durationpulse; int distance_l; int prev_distance_l; @@ -154,7 +167,7 @@ int distance_tolerance = 5; //mpu6050 sensor -const int MPU = 0x68; //I2C address +const int MPU = 0x68; unsigned int mpuInterval = 40; unsigned long lastMPUUpdate = 0; float AccX, AccY, AccZ; @@ -184,21 +197,27 @@ int ps2_select = 1; int ps2_error = 0; +//serial commands +int ByteReceived; +unsigned int serialInterval = 50; +unsigned long lastSerialUpdate = 0; + + //amperage monitor #define AMP_PIN A1 #define PWR_PIN 4 -unsigned int ampInterval = 3000; +unsigned int ampInterval = 15000; unsigned long lastAmpUpdate = 0; int amp_cnt = 0; int amp_thresh = 10; int amp_warning = 0; int amp_loop = 1; -float amp_limit = 8.5; +float amp_limit = 6.5; //battery monitor #define BATT_MONITOR A2 -unsigned long batteryInterval = 3000; +unsigned long batteryInterval = 30000; unsigned long lastBatteryUpdate = 0; int batt_cnt = 0; int batt_skip = 0; @@ -259,7 +278,7 @@ byte move_yaw_x = 0; byte move_yaw_y = 0; byte move_yaw = 0; -float step_weight_factor = 0; //this sucks to have to do... re-attempt to balance nova better on center of gravity instead +float step_weight_factor = 0; float step_height_factor = 1.25; @@ -362,78 +381,70 @@ class AsyncServo { } void Update() { + //setup to move servo if active if (activeServo[servoID]) { if (servoPos[servoID] == targetPos[servoID]) { activeServo[servoID] = 0; - //servoDelay[servoID][1] = 0; - //servoDelay[servoID][0] = servoDelay[servoID][1]; - if (servoSwitch[servoID]) { - servoSwitch[servoID] = 0; - } else { - servoSwitch[servoID] = 1; - } } if ((millis() - lastUpdate) > servoSpeed[servoID]) { lastUpdate = millis(); - if (debug2 && servoID == debug_servo) { -// Serial.println("update"); - } - - //interpolate servoRamp - if (servoRamp[servoID][0] && servoRamp[servoID][1]) { - if (servoRamp[servoID][2] && servoRamp[servoID][3]) { //ramp up start - servoSpeed[servoID] = servoRamp[servoID][2]; - servoRamp[servoID][2] = 0; - servoRamp[servoID][3]--; - servoRamp[servoID][1]--; - } else if (!servoRamp[servoID][2] && servoRamp[servoID][3] && servoRamp[servoID][4]) { //ramp up step - servoSpeed[servoID] -= servoRamp[servoID][4]; - servoRamp[servoID][3]--; - servoRamp[servoID][1]--; - if (servoRamp[servoID][3] < 1) { //ramp up end - servoRamp[servoID][3] = 0; - servoRamp[servoID][4] = 0; - } - } else if (servoRamp[servoID][5] && servoRamp[servoID][6] && servoRamp[servoID][1] <= servoRamp[servoID][6]) { //ramp down start - servoSpeed[servoID] += servoRamp[servoID][7]; - servoRamp[servoID][5] = 0; - servoRamp[servoID][6]--; - servoRamp[servoID][1]--; - } else if (!servoRamp[servoID][5] && servoRamp[servoID][6] && servoRamp[servoID][7]) { //ramp down step - servoSpeed[servoID] += servoRamp[servoID][7]; - servoRamp[servoID][6]--; - servoRamp[servoID][1]--; - if (servoRamp[servoID][6] < 1) { //ramp down end - servoRamp[servoID][6] = 0; - servoRamp[servoID][7] = 0; - } - } else if (!servoRamp[servoID][2] && !servoRamp[servoID][3] && !servoRamp[servoID][4] && !servoRamp[servoID][5] && !servoRamp[servoID][6] && !servoRamp[servoID][7]) { //ramp clear - for (int j = 0; j < 8; j++) { - servoRamp[servoID][j] = 0; - } - } else if (servoRamp[servoID][6] && servoRamp[servoID][1]) { - servoRamp[servoID][1]--; + //interpolate servoRamp + if (servoRamp[servoID][0] && servoRamp[servoID][1]) { + if (servoRamp[servoID][2] && servoRamp[servoID][3]) { //ramp up start + servoSpeed[servoID] = servoRamp[servoID][2]; + servoRamp[servoID][2] = 0; + servoRamp[servoID][3]--; + servoRamp[servoID][1]--; + } else if (!servoRamp[servoID][2] && servoRamp[servoID][3] && servoRamp[servoID][4]) { //ramp up step + servoSpeed[servoID] -= servoRamp[servoID][4]; + servoRamp[servoID][3]--; + servoRamp[servoID][1]--; + if (servoRamp[servoID][3] < 1) { //ramp up end + servoRamp[servoID][3] = 0; + servoRamp[servoID][4] = 0; } + } else if (servoRamp[servoID][5] && servoRamp[servoID][6] && servoRamp[servoID][1] <= servoRamp[servoID][6]) { //ramp down start + servoSpeed[servoID] += servoRamp[servoID][7]; + servoRamp[servoID][5] = 0; + servoRamp[servoID][6]--; + servoRamp[servoID][1]--; + } else if (!servoRamp[servoID][5] && servoRamp[servoID][6] && servoRamp[servoID][7]) { //ramp down step + servoSpeed[servoID] += servoRamp[servoID][7]; + servoRamp[servoID][6]--; + servoRamp[servoID][1]--; + if (servoRamp[servoID][6] < 1) { //ramp down end + servoRamp[servoID][6] = 0; + servoRamp[servoID][7] = 0; + } + } else if (!servoRamp[servoID][2] && !servoRamp[servoID][3] && !servoRamp[servoID][4] && !servoRamp[servoID][5] && !servoRamp[servoID][6] && !servoRamp[servoID][7]) { //ramp clear + for (int j = 0; j < 8; j++) { + servoRamp[servoID][j] = 0; + } + } else if (servoRamp[servoID][6] && servoRamp[servoID][1]) { + servoRamp[servoID][1]--; } + } - if (debug2 && servoID == debug_servo) { -// Serial.print("sPos / sSpd \t"); -// Serial.print(servoPos[servoID]); -// Serial.print(" / "); -// Serial.println(servoSpeed[servoID]); - } else if (plotter && servoID == debug_servo) { - Serial.print("sPos:"); - Serial.print(servoPos[servoID]); - Serial.print("\t"); - Serial.print("sSpd:"); - Serial.println(servoSpeed[servoID]); - } + if (debug2 && servoID == debug_servo) { + Serial.print("sPos / sSpd \t"); + Serial.print(servoPos[servoID]); + Serial.print(" / "); + Serial.println(servoSpeed[servoID]); + } else if (plotter && servoID == debug_servo) { + Serial.print("sPos:"); + Serial.print(servoPos[servoID]); + Serial.print("\t"); + Serial.print("sSpd:"); + Serial.println(servoSpeed[servoID]); + } - if (!servoDelay[servoID][0]) { - + //move servo if not delaying + if (!servoDelay[servoID][0]) { + + //restrain targets to min/max limits if (servoLimit[servoID][0] > servoLimit[servoID][1]) { if (targetPos[servoID] > servoLimit[servoID][0]) { targetPos[servoID] = servoLimit[servoID][0]; @@ -448,6 +459,7 @@ class AsyncServo { } } + //move servo in direction of leg if (servoPos[servoID] < targetPos[servoID]) { servoPos[servoID] += increment; driver->setPWM(channel, 0, servoPos[servoID]); @@ -456,20 +468,30 @@ class AsyncServo { driver->setPWM(channel, 0, servoPos[servoID]); } + //check for end of steps servoStep[servoID]++; if (servoPos[servoID] == targetPos[servoID]) { + if (use_ramp) { + servoSpeed[servoID] = servoRamp[servoID][0]; + } servoStep[servoID] = 0; + + //Important! + //this is the amp check that will catch locked / over-extended motors if (amp_active) amperage_check(0); } } else { + //count down delay, if set servoDelay[servoID][0]--; } } } + //setup to sweep servo if active if (activeSweep[servoID] && !activeServo[servoID]) { if (servoPos[servoID] == targetPos[servoID] && !servoSweep[servoID][3]) { activeSweep[servoID] = 0; + //switch direction if (servoSwitch[servoID]) { servoSwitch[servoID] = 0; } else { @@ -489,10 +511,7 @@ class AsyncServo { } if (!servoSweep[servoID][4]) { - if (debug2 && servoID == debug_servo) { - Serial.println("sweep"); - } - + //interpolate servoRamp if (servoRamp[servoID][0] && servoRamp[servoID][1]) { if (servoRamp[servoID][2] && servoRamp[servoID][3]) { //ramp up start @@ -543,6 +562,7 @@ class AsyncServo { Serial.println(servoSpeed[servoID]); } + //sweep servo if (servoPos[servoID] < targetPos[servoID]) { servoPos[servoID] += increment; if (debug2 && servoID == debug_servo) { @@ -557,10 +577,12 @@ class AsyncServo { driver->setPWM(channel, 0, servoPos[servoID]); } + //change direction if (servoPos[servoID] == targetPos[servoID] && !servoSweep[servoID][2]) { servoSweep[servoID][2] = 1; targetPos[servoID] = servoSweep[servoID][0]; if (use_ramp) { + servoSpeed[servoID] = servoRamp[servoID][0]; set_ramp(servoID, servoSpeed[servoID], 0, 0, 0, 0); } if (debug2 && servoID == debug_servo) { @@ -570,7 +592,7 @@ class AsyncServo { servoSweep[servoID][2] = 0; servoSweep[servoID][3]--; if (servoSweep[servoID][3]) { - targetPos[servoID] = servoSweep[servoID][1]; + targetPos[servoID] = servoSweep[servoID][0]; if (debug2 && servoID == debug_servo) { Serial.print(F("\tforward inc: ")); Serial.print(increment); } @@ -579,11 +601,17 @@ class AsyncServo { servoStep[servoID]++; if (servoPos[servoID] == targetPos[servoID]) { + if (use_ramp) { + servoSpeed[servoID] = servoRamp[servoID][1]; + } servoStep[servoID] = 0; + + //Important! + //this is the amp check that will catch locked / over-extended motors if (amp_active) amperage_check(0); } } else { - //delay + //count down delay, if set servoSweep[servoID][4]--; } @@ -597,7 +625,7 @@ class AsyncServo { }; -//instantiate servo objects +//instantiate 12 servo objects //coaxs AsyncServo s_RFC(&pwm1, RFC); AsyncServo s_LFC(&pwm1, LFC); @@ -625,7 +653,8 @@ void setup() { delay(500); //allow ps2 and PWM hardware to powerup & connect if (debug) { Serial.println("\n==================================="); - Serial.println("NOVA SM2 v3.0"); + Serial.print("NOVA SM2 v"); + Serial.println(VERSION); Serial.println("==================================="); } randomSeed(analogRead(0)); @@ -790,6 +819,11 @@ void setup() { } if (debug) Serial.println("Ready!"); + if (serial_active && debug) { + delay(1000); + Serial.println(); + Serial.println("Type a command code or 'h' for help:"); + } } @@ -813,7 +847,7 @@ void loop() { s_RRT.Update(); s_LRT.Update(); - //moves + //moves check if (move_sequence) { run_sequence(); } else if (move_x_axis) { @@ -833,7 +867,7 @@ void loop() { } else if (move_forward) { step_forward(x_dir); } else if (move_backward) { -//todo + step_backward(x_dir); } else if (move_left) { ramp_dist = 0.25; ramp_spd = 1.5; @@ -880,6 +914,10 @@ void loop() { if (millis() - lastPS2Update > ps2Interval) ps2_check(); } + if (serial_active) { + if (millis() - lastSerialUpdate > serialInterval) serial_check(); + } + if (rgb_active) { if (millis() - lastRGBUpdate > rgbInterval) rgb_check(pattern); } @@ -911,10 +949,9 @@ void loop() { delay_sequences(); } - if (test_run) { + if (test_run > 0) { if (test_run > 1) { test_run -= 1; - // move_loops = 10; spd = 3; set_speed(); } @@ -951,7 +988,7 @@ void loop() { if (test_sweep) { if (!activeSweep[debug_servo]) { - spd = 13; + spd = 6; set_speed(); servoSweep[debug_servo][0] = servoLimit[debug_servo][0]; servoSweep[debug_servo][1] = servoLimit[debug_servo][1]; @@ -960,12 +997,13 @@ void loop() { targetPos[debug_servo] = servoSweep[debug_servo][1]; activeSweep[debug_servo] = 1; use_ramp = 0; + test_loops -= 1; } } if (test_sweep_ramp) { if (!activeSweep[debug_servo]) { - spd = 13; + spd = 6; set_speed(); servoSweep[debug_servo][0] = servoLimit[debug_servo][0]; servoSweep[debug_servo][1] = servoLimit[debug_servo][1]; @@ -974,10 +1012,11 @@ void loop() { targetPos[debug_servo] = servoSweep[debug_servo][1]; activeSweep[debug_servo] = 1; - ramp_dist = 0.2; - ramp_spd = 10.0; + ramp_dist = 0.15; + ramp_spd = 8.0; use_ramp = 1; set_ramp(debug_servo, servoSpeed[debug_servo], 0, 0, 0, 0); + test_loops -= 1; } } @@ -1021,7 +1060,6 @@ void loop() { move_march = 1; } - if (test_trot) { spd = 12; move_steps = 30; @@ -1077,8 +1115,12 @@ void loop() { set_speed(); start_stop = 1; - test_run -= 1; + if (!test_loops) { + test_run -= 1; + } } + + } @@ -1228,8 +1270,6 @@ void ps2_check() { Serial.println("march"); if (!move_march) { set_stop(); -// spd = 12; -// set_speed(); start_stop = 1; move_march = 1; if (oled_active) { @@ -1256,6 +1296,7 @@ void ps2_check() { rgb_check(pattern); } + move_march = 1; spd = 12; set_speed(); step_weight_factor = .2; @@ -1304,8 +1345,7 @@ void ps2_check() { } else if (ps2_select == 3) { } } - - + if (ps2x.Button(PSB_PAD_LEFT)) { if (ps2_select == 1) { if (!move_left) { @@ -1433,7 +1473,6 @@ void ps2_check() { } } - if (ps2x.Button(PSB_R1)) { if (ps2_select == 1) { if (!move_roll_body) { @@ -2077,9 +2116,6 @@ void get_mpu() { } void calculate_IMU_error() { - // We can call this funtion in the setup section to calculate the accelerometer and gyro data error. - // From here we will get the error values used in the above equations printed on the Serial Monitor. - // Note that we should place the IMU flat in order to get the proper values, so that we then can the correct values // Read accelerometer values 200 times while (mpu_c < 200) { Wire.beginTransmission(MPU); @@ -2140,8 +2176,8 @@ void amperage_check(int aloop) { for (int x = 0; x < 150; x++){ //Get 150 samples AcsValue = analogRead(AMP_PIN); //Read current sensor values Samples = Samples + AcsValue; //Add samples together -//millis this... can't have any delays!! - delay (3); // let ADC settle before next sample 3ms +//millis this if possible... adds blocking delay to code!! + delay(3); // let ADC settle before next sample 3ms } AvgAcs=Samples/150.0;//Taking Average of Samples AcsValueF = (2.5 - (AvgAcs * (5.0 / 1024.0)) )/0.177; @@ -2238,7 +2274,7 @@ void amperage_check(int aloop) { void battery_check() { int sensorValue = analogRead(BATT_MONITOR); batt_voltage = sensorValue * (5.00 / 1023.00) * 2.7; // Convert the reading values from 5v to 12V - batt_voltage += 1.07; // Account for voltage drop, adding it back + batt_voltage += 1.07; //account for voltage drop, adding it back if (debug4) { Serial.print("batt check: ");Serial.print(sensorValue); Serial.print(F(" / ")); Serial.println(batt_voltage); } @@ -2258,7 +2294,7 @@ void battery_check() { pattern_cnt = (i+1)*1; pattern_int -= (i+1)*20; if (debug4) { - //Serial.print(batt_voltage); Serial.print(" - BATTERY LOW - WARNING #"); Serial.println(i); + Serial.print(batt_voltage); Serial.print(" - BATTERY LOW - WARNING #"); Serial.println(i); } } } @@ -2393,54 +2429,7 @@ void set_ramp(int servo, float sp, float r1_spd, float r1_dist, float r2_spd, fl Serial.print("\t"); Serial.print(servoRamp[servo][5]); Serial.print("\t"); Serial.print(servoRamp[servo][6]); Serial.print("\t"); Serial.println(servoRamp[servo][7]); - } -} - -void run_demo() { - if (!move_delay_sequences[0] && !move_delay_sequences[9]) { - ramp_dist = 0.2; - ramp_spd = 0.5; - use_ramp = 1; - - move_demo = 1; - - move_delays[0] = 300; - move_delay_sequences[0] = 15; - move_delays[1] = 300; - move_delay_sequences[1] = 14; - move_delays[2] = 1200; - move_delay_sequences[2] = 1; - move_delays[3] = 3000; - move_delay_sequences[3] = 2; - move_delays[4] = 900; - move_delay_sequences[4] = 3; - move_delays[5] = 900; - move_delay_sequences[5] = 5; - move_delays[6] = 1500; - move_delay_sequences[6] = 6; - move_delays[7] = 1500; - move_delay_sequences[7] = 7; - move_delays[8] = 1500; - move_delay_sequences[8] = 4; - - move_delays[9] = 900; - move_delay_sequences[9] = 13; - - move_delays[10] = 1500; - move_delay_sequences[10] = 11; - - move_delays[11] = 1500; - move_delay_sequences[11] = 12; - - move_delays[12] = 3000; - move_delay_sequences[12] = 8; - move_delays[13] = 6000; - move_delay_sequences[13] = 9; - move_delays[14] = 3000; - move_delay_sequences[14] = 10; - start_stop = 0; - delay_sequences(); - + Serial.println(); } } @@ -2543,6 +2532,158 @@ void set_speed() { Move Functions ------------------------------------------------------- */ +//set pitch and roll axis from mpu data +void set_axis(float roll_step, float pitch_step) { + float ar = abs(roll_step); + float ap = abs(pitch_step); + + //check if oscillating, and on third, stop! + if (ar > (mroll_prev + mpu_oscill_thresh) || ar < (mroll_prev - mpu_oscill_thresh)) { + mpu_oscill_cnt--; + Serial.print("oscillate: "); + Serial.println(mpu_oscill_cnt); + } else { +// mpu_oscill_grace--; +// if (!mpu_oscill_grace) { +// mpu_oscill_grace = 3; + mpu_oscill_cnt = mpu_oscill_limit; +// } + } + + for (int i = 0; i < TOTAL_SERVOS; i++) { + byte skip = 0; + float t = 0.0; + float f = 0.0; + if (is_tibia(i)) { + t = servoHome[i]; + } else if (is_femur(i)) { + f = servoHome[i]; + } + + if (ar <= (mroll_prev + mpu_trigger_thresh) && ar >= (mroll_prev - mpu_trigger_thresh)) { + if (roll_step < 0) { //roll left + if (is_tibia(i)) { + t += ((abs(roll_step) * 0.65) * 4); + } else if (is_femur(i)) { + f -= ((abs(roll_step) * 0.4) * 4); + } + } else { //roll right + if (is_tibia(i)) { + t -= ((roll_step * 0.65) * 4); + } else if (is_femur(i)) { + f += ((roll_step * 0.4) * 4); + } + } + } else { + skip = 1; + } + mroll_prev = ar; + + if (ap <= (mpitch_prev + mpu_trigger_thresh) || ap >= (mpitch_prev - mpu_trigger_thresh)) { + if (pitch_step < 0) { //pitch front down + if (is_tibia(i)) { + if (is_front_leg(i)) { + if (is_left_leg(i)) { + t -= ((abs(pitch_step) * 1.15) * 3); + } else { + t += ((abs(pitch_step) * 1.15) * 3); + } + } else { + if (is_left_leg(i)) { + t += ((abs(pitch_step) * 1.15) * 3); + } else { + t -= ((abs(pitch_step) * 1.15) * 3); + } + } + } + } else { //pitch front up + if (is_tibia(i)) { + if (is_front_leg(i)) { + if (is_left_leg(i)) { + t += ((abs(pitch_step) * 1.15) * 3); + } else { + t -= ((abs(pitch_step) * 1.15) * 3); + } + } else { + if (is_left_leg(i)) { + t -= ((abs(pitch_step) * 1.15) * 3); + } else { + t += ((abs(pitch_step) * 1.15) * 3); + } + } + } + } + mpitch_prev = pitch_step; + } + + if (!skip) { + if (is_tibia(i)) { + activeServo[i] = 1; + servoSpeed[i] = (7*spd_factor); + targetPos[i] = limit_target(i, t, 0); + } else if (is_femur(i)) { + activeServo[i] = 1; + servoSpeed[i] = (12*spd_factor); + targetPos[i] = limit_target(i, f, 0); + } + if (!mpu_oscill_cnt) { +//Serial.println("oscill delay"); + mpu_oscill_cnt = mpu_oscill_limit; + delay(2000); + } + } + } + +} + +void run_demo() { + if (!move_delay_sequences[0] && !move_delay_sequences[9]) { + ramp_dist = 0.2; + ramp_spd = 0.5; + use_ramp = 1; + + move_demo = 1; + + move_delays[0] = 300; + move_delay_sequences[0] = 15; + move_delays[1] = 300; + move_delay_sequences[1] = 14; + move_delays[2] = 1200; + move_delay_sequences[2] = 1; + move_delays[3] = 3000; + move_delay_sequences[3] = 2; + move_delays[4] = 900; + move_delay_sequences[4] = 3; + move_delays[5] = 900; + move_delay_sequences[5] = 5; + move_delays[6] = 1500; + move_delay_sequences[6] = 6; + move_delays[7] = 1500; + move_delay_sequences[7] = 7; + move_delays[8] = 1500; + move_delay_sequences[8] = 4; + + move_delays[9] = 900; + move_delay_sequences[9] = 13; + + move_delays[10] = 1500; + move_delay_sequences[10] = 11; + + move_delays[11] = 1500; + move_delay_sequences[11] = 12; + + move_delays[12] = 3000; + move_delay_sequences[12] = 8; + move_delays[13] = 6000; + move_delay_sequences[13] = 9; + move_delays[14] = 3000; + move_delay_sequences[14] = 10; + + start_stop = 0; + delay_sequences(); + } +} + void set_stay() { for (int m = 0; m < TOTAL_SERVOS; m++) { activeSweep[m] = 0; @@ -2737,111 +2878,6 @@ void set_kneel() { lastMoveDelayUpdate = millis(); } -//set pitch and roll axis from mpu data -void set_axis(float roll_step, float pitch_step) { - float ar = abs(roll_step); - float ap = abs(pitch_step); - - //check if oscillating, and on third, stop! - if (ar > (mroll_prev + mpu_oscill_thresh) || ar < (mroll_prev - mpu_oscill_thresh)) { - mpu_oscill_cnt--; - Serial.print("oscillate: "); - Serial.println(mpu_oscill_cnt); - } else { -// mpu_oscill_grace--; -// if (!mpu_oscill_grace) { -// mpu_oscill_grace = 3; - mpu_oscill_cnt = mpu_oscill_limit; -// } - } - - for (int i = 0; i < TOTAL_SERVOS; i++) { - byte skip = 0; - float t = 0.0; - float f = 0.0; - if (is_tibia(i)) { - t = servoHome[i]; - } else if (is_femur(i)) { - f = servoHome[i]; - } - - if (ar <= (mroll_prev + mpu_trigger_thresh) && ar >= (mroll_prev - mpu_trigger_thresh)) { - if (roll_step < 0) { //roll left - if (is_tibia(i)) { - t += ((abs(roll_step) * 0.65) * 4); - } else if (is_femur(i)) { - f -= ((abs(roll_step) * 0.4) * 4); - } - } else { //roll right - if (is_tibia(i)) { - t -= ((roll_step * 0.65) * 4); - } else if (is_femur(i)) { - f += ((roll_step * 0.4) * 4); - } - } - } else { - skip = 1; - } - mroll_prev = ar; - - if (ap <= (mpitch_prev + mpu_trigger_thresh) || ap >= (mpitch_prev - mpu_trigger_thresh)) { - if (pitch_step < 0) { //pitch front down - if (is_tibia(i)) { - if (is_front_leg(i)) { - if (is_left_leg(i)) { - t -= ((abs(pitch_step) * 1.15) * 3); - } else { - t += ((abs(pitch_step) * 1.15) * 3); - } - } else { - if (is_left_leg(i)) { - t += ((abs(pitch_step) * 1.15) * 3); - } else { - t -= ((abs(pitch_step) * 1.15) * 3); - } - } - } - } else { //pitch front up - if (is_tibia(i)) { - if (is_front_leg(i)) { - if (is_left_leg(i)) { - t += ((abs(pitch_step) * 1.15) * 3); - } else { - t -= ((abs(pitch_step) * 1.15) * 3); - } - } else { - if (is_left_leg(i)) { - t -= ((abs(pitch_step) * 1.15) * 3); - } else { - t += ((abs(pitch_step) * 1.15) * 3); - } - } - } - } - mpitch_prev = pitch_step; - } - - if (!skip) { - if (is_tibia(i)) { - activeServo[i] = 1; - servoSpeed[i] = (7*spd_factor); - targetPos[i] = limit_target(i, t, 0); - } else if (is_femur(i)) { - activeServo[i] = 1; - servoSpeed[i] = (12*spd_factor); - targetPos[i] = limit_target(i, f, 0); - } - if (!mpu_oscill_cnt) { -//Serial.println("oscill delay"); - mpu_oscill_cnt = mpu_oscill_limit; - delay(2000); - } - } - } - -} - -//x axis void x_axis() { if (!activeSweep[RRT]) { servoSpeed[LFF] = limit_speed((10 * spd_factor)); @@ -2923,7 +2959,6 @@ void x_axis() { } } -//move_x void move_kx() { int fms = (move_steps_kx * 0.8); int tms = (move_steps_kx * 1.3); @@ -2946,7 +2981,6 @@ void move_kx() { lastMoveDelayUpdate = millis(); } -//y axis void y_axis() { if (!activeSweep[RRT]) { @@ -3061,7 +3095,6 @@ void y_axis() { } } -//move_y void move_ky() { int fms = (move_steps_ky * 0.8); @@ -3085,7 +3118,6 @@ void move_ky() { lastMoveDelayUpdate = millis(); } -//roll void roll() { if (!activeSweep[RRF]) { servoSpeed[LFT] = limit_speed((10 * spd_factor)); @@ -3167,7 +3199,6 @@ void roll() { } } -//roll body void roll_body() { if (!activeSweep[RRC]) { servoSpeed[LFC] = limit_speed((10 * spd_factor)); @@ -3214,7 +3245,6 @@ void roll_body() { } } -//roll_x void roll_x() { update_sequencer(LF, LFC, spd, (servoHome[LFC] + move_steps_x), 0, 0); update_sequencer(LR, LRC, spd, (servoHome[LRC] + move_steps_x), 0, 0); @@ -3227,15 +3257,14 @@ void roll_x() { lastMoveDelayUpdate = millis(); } -//pitch void pitch(int xdir) { float sinc0 = .15; float sinc1 = 1.15; if (xdir < 0) { //turn left xdir = abs(xdir); - servoStepMoves[RFC][0] = limit_target(RFC, (servoPos[RFC] - (xdir / 4)), 25); - servoStepMoves[RRC][0] = limit_target(RRC, (servoPos[RRC] - (xdir / 4)), 25); + servoStepMoves[RFC][0] = limit_target(RFC, (servoPos[RFC] + (xdir / 4)), 25); + servoStepMoves[RRC][0] = limit_target(RRC, (servoPos[RRC] + (xdir / 4)), 25); servoStepMoves[LFC][0] = 0; servoStepMoves[LRC][0] = 0; } else if (xdir > 0) { //turn right @@ -3320,7 +3349,6 @@ void pitch(int xdir) { } } -//pitch body void pitch_body() { if (!activeSweep[RRF]) { servoSpeed[LFC] = limit_speed((68 * spd_factor)); @@ -3434,7 +3462,6 @@ void pitch_body() { } } -//pitch_y void pitch_y() { int fms = (move_steps_y * 0.4); @@ -3458,7 +3485,6 @@ void pitch_y() { lastMoveDelayUpdate = millis(); } -//yaw void yaw() { int cms = (move_steps_yaw * 0.4); int fms = (move_steps_yaw * 0.3); @@ -3513,7 +3539,6 @@ void yaw() { lastMoveDelayUpdate = millis(); } -//yaw_x void yaw_x() { int cms = (move_steps_yaw_x * 0.9); int fms = (move_steps_yaw_x * 0.4); @@ -3544,7 +3569,6 @@ void yaw_x() { lastMoveDelayUpdate = millis(); } -//yaw_y void yaw_y() { int fms = (move_steps_yaw_y * 0.6); @@ -3573,7 +3597,6 @@ void yaw_y() { lastMoveDelayUpdate = millis(); } -//step_trot void step_trot(int xdir) { float sinc0 = .15; float sinc1 = 1.15; @@ -3666,7 +3689,6 @@ void step_trot(int xdir) { } } -//step forward void step_forward(int xdir) { int lturn = 0; int rturn = 0; @@ -3784,6 +3806,10 @@ void step_forward(int xdir) { } +void step_backward(int xdir) { +//this is probably not needed, since backwards is just opposite of forwards +} + void look_left() { if (rgb_active) { pattern = 11; @@ -4686,6 +4712,7 @@ void funplay() { if (buzz_active) { play_phrases(); } + move_funplay = 0; set_stop_active(); delay(3000); } @@ -4775,8 +4802,10 @@ void run_sequence() { void delay_sequences() { int moved = 0; + int sequence_cnt = 16; + if (!start_stop) { - for (int i = 0; i < 16; i++) { + for (int i = 0; i < sequence_cnt; i++) { if (move_delay_sequences[i]) { moved = 1; if (move_delay_sequences[i] == 1) { @@ -4923,41 +4952,41 @@ void delay_sequences() { move_demo = 0; moveDelayInterval = 0; - use_ramp = 0; - spd = 5; - set_speed(); + use_ramp = 0; + spd = 5; + set_speed(); - servoSweep[RFC][0] = servoHome[RFC]; - servoSweep[RFC][1] = servoLimit[RFC][0]; - servoSweep[RFC][2] = 0; - servoSweep[RFC][3] = 7; - targetPos[RFC] = servoSweep[RFC][1]; - activeSweep[RFC] = 1; + servoSweep[RFC][0] = servoHome[RFC]; + servoSweep[RFC][1] = servoLimit[RFC][0]; + servoSweep[RFC][2] = 0; + servoSweep[RFC][3] = 7; + targetPos[RFC] = servoSweep[RFC][1]; + activeSweep[RFC] = 1; - servoSweep[LFC][0] = servoHome[LFC]; - servoSweep[LFC][1] = servoLimit[LFC][0]; - servoSweep[LFC][2] = 0; - servoSweep[LFC][3] = 7; - targetPos[LFC] = servoSweep[LFC][1]; - activeSweep[LFC] = 1; + servoSweep[LFC][0] = servoHome[LFC]; + servoSweep[LFC][1] = servoLimit[LFC][0]; + servoSweep[LFC][2] = 0; + servoSweep[LFC][3] = 7; + targetPos[LFC] = servoSweep[LFC][1]; + activeSweep[LFC] = 1; - servoSweep[RFT][0] = servoHome[RFT]; - servoSweep[RFT][1] = servoLimit[RFT][0]; - servoSweep[RFT][2] = 0; - servoSweep[RFT][3] = 3; - targetPos[RFT] = servoSweep[RFT][1]; - activeSweep[RFT] = 1; + servoSweep[RFT][0] = servoHome[RFT]; + servoSweep[RFT][1] = servoLimit[RFT][0]; + servoSweep[RFT][2] = 0; + servoSweep[RFT][3] = 3; + targetPos[RFT] = servoSweep[RFT][1]; + activeSweep[RFT] = 1; - servoSweep[LFT][0] = servoHome[LFT]; - servoSweep[LFT][1] = servoLimit[LFT][0]; - servoSweep[LFT][2] = 0; - servoSweep[LFT][3] = 3; - targetPos[LFT] = servoSweep[LFT][1]; - activeSweep[LFT] = 1; + servoSweep[LFT][0] = servoHome[LFT]; + servoSweep[LFT][1] = servoLimit[LFT][0]; + servoSweep[LFT][2] = 0; + servoSweep[LFT][3] = 3; + targetPos[LFT] = servoSweep[LFT][1]; + activeSweep[LFT] = 1; - move_funplay = 1; - if (debug) - Serial.print("move funplay"); + move_funplay = 1; + if (debug) + Serial.print("move funplay"); if (debug) { Serial.println("\treset DS"); @@ -5100,13 +5129,17 @@ int pwm_to_degrees(int pulse_wide, int mxw, int mnw, int rng) { ------------------------------------------------------- */ void print_command(int cmd) { - //void print_command(uint8_t *buf) { - //char *senddata="none"; display.clearDisplay(); display.setTextSize(2); display.setTextColor(WHITE); display.setCursor(0, 0); - if (cmd == 1) { + if (cmd == 0) { + display.println("Testing"); //test + display.setTextSize(3); + display.setTextColor(WHITE); + display.setCursor(0, 12); + display.println("OLED!"); //test + } else if (cmd == 1) { display.println("Grrrrrrr!"); //wake } else if (cmd == 2) { display.println("Stay!"); //stay @@ -5127,6 +5160,341 @@ void print_command(int cmd) { +/* + ------------------------------------------------------- + Serial Commands + ------------------------------------------------------- +*/ +void serial_check() { + if (serial_active && Serial.available() > 0) { + ByteReceived = Serial.read(); +// Serial.print(ByteReceived);Serial.print("\t"); +// Serial.print(ByteReceived, HEX);Serial.print("\t"); +// Serial.println(char(ByteReceived)); + + + set_stop(); + switch (ByteReceived) { + case '0': + Serial.println("stop!"); + set_stop_active(); + set_home(); + break; + case 91: + Serial.println("move_steps -5"); + if (move_steps > move_steps_min) { + move_steps -= 2; + } + break; + case 93: + Serial.println("move_steps +5"); + if (move_steps < move_steps_max) { + move_steps += 2; + } + break; + case 59: + Serial.println("y_dir -5"); + if (y_dir > move_y_steps[0]) { + y_dir -= 2; + } + Serial.print("-y_dir ");Serial.println(y_dir); + break; + case 39: + Serial.println("y_dir +5"); + if (y_dir < move_y_steps[1]) { + y_dir += 2; + } + Serial.print("+y_dir ");Serial.println(y_dir); + break; + case 46: + Serial.println("x_dir -5"); + if (x_dir > move_x_steps[0]) { + x_dir -= 2; + } + Serial.print("-x_dir ");Serial.println(x_dir); + break; + case 47: + if (x_dir < move_x_steps[1]) { + x_dir += 2; + } + Serial.print("+x_dir ");Serial.println(x_dir); + break; + case '1': + Serial.println("set speed 1"); + spd = 1; + set_speed(); + break; + case '2': + Serial.println("set speed 5"); + spd = 5; + set_speed(); + break; + case '3': + Serial.println("set speed 15"); + spd = 15; + set_speed(); + break; + case '4': + Serial.println("set speed 30"); + spd = 30; + set_speed(); + break; + case 'o': + if (oled_active) { + Serial.println("test OLED"); + print_command(0); + } + break; + case 'd': + Serial.println("demo"); + run_demo(); + break; + case 't': + Serial.println("trot"); + move_steps = 30; + x_dir = 0; + move_trot = 1; + break; + case 'm': + Serial.println("march"); + spd = 32; + set_speed(); + y_dir = 0; + x_dir = 0; + step_height_factor = 1.25; + move_march = 1; + break; + case 'f': + Serial.println("march_forward"); + spd = 32; + set_speed(); + y_dir = 10; + x_dir = 0; + step_height_factor = 1.25; + move_march = 1; + break; + case 'b': + Serial.println("march_backward"); + spd = 32; + set_speed(); + y_dir = -10; + x_dir = 0; + step_height_factor = 1.25; + move_march = 1; + break; + case 's': + Serial.println("stay"); + set_stay(); + break; + case 'i': + Serial.println("sit"); + set_sit(); + break; + case 'k': + Serial.println("kneel"); + set_kneel(); + break; + case 'c': + Serial.println("crouch"); + set_crouch(); + break; + case 'l': + Serial.println("lay"); + set_lay(); + break; + case 'r': + Serial.println("roll"); + move_steps = 30; + x_dir = 0; + move_roll = 1; + break; + case 'p': + Serial.println("pitch"); + move_steps = 30; + x_dir = 0; + move_pitch = 1; + break; + case 'q': + Serial.println("roll_body"); + move_steps = 30; + x_dir = 0; + move_roll_body = 1; + break; + case 'n': + Serial.println("pitch_body"); + move_steps = 30; + x_dir = 0; + move_pitch_body = 1; + break; + case 'w': + Serial.println("wman"); + spd = 3; + set_speed(); + move_wman = 1; + break; + case 'y': + Serial.println("y_axis"); + move_y_axis = 1; + y_axis(); + break; + case 'x': + Serial.println("x_axis"); + move_x_axis = 1; + x_axis(); + break; + case 'u': + Serial.println("look_left"); + spd = 1; + start_stop = 1; + move_loops = 1; + move_steps = 50; + move_look_left = 1; + break; + case 'j': + Serial.println("look_right"); + spd = 1; + start_stop = 1; + move_loops = 1; + move_steps = 50; + move_look_right = 1; + break; + case 'a': + Serial.println("funplay"); + move_funplay = 1; + break; + case '5': + Serial.println("sweep tibias"); + use_ramp = 0; + for (int i = 0; i < TOTAL_SERVOS; i++) { + if (is_tibia(i)) { + servoSweep[i][0] = servoLimit[i][0]; + servoSweep[i][1] = servoLimit[i][1]; + servoSweep[i][2] = 0; + servoSweep[i][3] = 1; + targetPos[i] = servoSweep[i][1]; + activeSweep[i] = 1; + } + } + break; + case '6': + Serial.println("ramp sweep tibia"); + use_ramp = 1; + for (int i = 0; i < TOTAL_SERVOS; i++) { + if (is_tibia(i)) { + servoSweep[i][0] = servoLimit[i][0]; + servoSweep[i][1] = servoLimit[i][1]; + servoSweep[i][2] = 0; + servoSweep[i][3] = 1; + targetPos[i] = servoSweep[i][1]; + activeSweep[i] = 1; + set_ramp(i, servoSpeed[i], 0, 0, 0, 0); + } + } + break; + case '7': + Serial.println("sweep femurs"); + use_ramp = 0; + for (int i = 0; i < TOTAL_SERVOS; i++) { + if (is_femur(i)) { + servoSweep[i][0] = servoLimit[i][0]; + servoSweep[i][1] = servoLimit[i][1]; + servoSweep[i][2] = 0; + servoSweep[i][3] = 1; + targetPos[i] = servoSweep[i][1]; + activeSweep[i] = 1; + } + } + break; + case '8': + Serial.println("ramp sweep femur"); + use_ramp = 1; + for (int i = 0; i < TOTAL_SERVOS; i++) { + if (is_femur(i)) { + servoSweep[i][0] = servoLimit[i][0]; + servoSweep[i][1] = servoLimit[i][1]; + servoSweep[i][2] = 0; + servoSweep[i][3] = 1; + targetPos[i] = servoSweep[i][1]; + activeSweep[i] = 1; + set_ramp(i, servoSpeed[i], 0, 0, 0, 0); + } + } + break; + case '9': + Serial.println("sweep coaxes"); + use_ramp = 0; + for (int i = 0; i < TOTAL_SERVOS; i++) { + if (!is_femur(i) && !is_tibia(i)) { + servoSweep[i][0] = servoLimit[i][0]; + servoSweep[i][1] = servoLimit[i][1]; + servoSweep[i][2] = 0; + servoSweep[i][3] = 1; + targetPos[i] = servoSweep[i][1]; + activeSweep[i] = 1; + } + } + break; + + case 'h': + Serial.println(); + Serial.println("\t-----------------------------------------"); + Serial.println("\t|\tCODE\tCOMMAND\t\t\t|"); + Serial.println("\t-----------------------------------------"); + Serial.println("\t|\t0\tstop!\t\t\t|"); + Serial.println("\t|\t1\tset speed 1\t\t|"); + Serial.println("\t|\t2\tset speed 5\t\t|"); + Serial.println("\t|\t3\tset speed 15\t\t|"); + Serial.println("\t|\t4\tset speed 30\t\t|"); + Serial.println(); + Serial.println("\t|\t5\tsweep tibias\t\t|"); + Serial.println("\t|\t6\tramp sweep tibias\t|"); + Serial.println("\t|\t7\tsweep femurs\t\t|"); + Serial.println("\t|\t8\tramp sweep femurs\t|"); + Serial.println("\t|\t9\tsweep coaxes\t\t|"); + Serial.println(); + Serial.println("\t|\tt\ttrot\t\t\t|"); + Serial.println("\t|\tm\tmarch\t\t\t|"); + Serial.println("\t|\tf\tmarch_forward\t\t|"); + Serial.println("\t|\tb\tmarch_backward\t\t|"); + Serial.println(); + Serial.println("\t|\ts\tstay\t\t\t|"); + Serial.println("\t|\ti\tsit\t\t\t|"); + Serial.println("\t|\tk\tkneel\t\t\t|"); + Serial.println("\t|\tc\tcrouch\t\t\t|"); + Serial.println("\t|\tl\tlay\t\t\t|"); + Serial.println(); + Serial.println("\t|\tr\troll\t\t\t|"); + Serial.println("\t|\tp\tpitch\t\t\t|"); + Serial.println("\t|\tq\troll_body\t\t|"); + Serial.println("\t|\tn\tpitch_body\t\t|"); + Serial.println("\t|\ty\ty_axis\t\t\t|"); + Serial.println("\t|\tx\tx_axis\t\t\t|"); + Serial.println(); + Serial.println("\t|\tw\twman\t\t\t|"); + Serial.println("\t|\tu\tlook_left\t\t|"); + Serial.println("\t|\tj\tlook_right\t\t|"); + Serial.println("\t|\td\tdemo\t\t\t|"); + Serial.println("\t|\ta\tfunplay\t\t\t|"); + Serial.println(); + Serial.println("\t|\t[\tmove_steps -2\t\t|"); + Serial.println("\t|\t]\tmove_steps +2\t\t|"); + Serial.println("\t|\t;\ty_dir -2\t\t|"); + Serial.println("\t|\t'\ty_dir +2\t\t|"); + Serial.println("\t|\t.\tx_dir -2\t\t|"); + Serial.println("\t|\t/\tx_dir +2\t\t|"); + Serial.println(); + Serial.println("\t|\to\ttest OLED\t\t|"); + Serial.println("\t|\th\thelp\t\t\t|"); + Serial.println("\t-----------------------------------------"); + Serial.println(); + Serial.println("Type a command code or 'h' for help:"); + break; + } + } +} + + + /* ------------------------------------------------------- LED Functions diff --git a/Nova-SM2/Code/Nova-SM2-v3.0/NovaServos/NovaServos.h b/Nova-SM2/Code/Nova-SM2-v3.0/NovaServos.h similarity index 70% rename from Nova-SM2/Code/Nova-SM2-v3.0/NovaServos/NovaServos.h rename to Nova-SM2/Code/Nova-SM2-v3.0/NovaServos.h index 6e9af7f..7859076 100644 --- a/Nova-SM2/Code/Nova-SM2-v3.0/NovaServos/NovaServos.h +++ b/Nova-SM2/Code/Nova-SM2-v3.0/NovaServos.h @@ -1,3 +1,14 @@ +/* + * NovaSM2 - a Spot-Micro clone + * Version: 3.0 + * Version Date: 2021-03-12 + * + * Author: Chris Locke - cguweb@gmail.com + * GitHub Project: https://github.com/cguweb-com/Arduino-Projects/tree/main/Nova-SM2 + * Instructables Project: https://www.instructables.com/member/cguweb/instructables/ + * +*/ + #define TOTAL_SERVOS 12 #define TOTAL_LEGS 4 @@ -26,46 +37,51 @@ //setup servo data arrays byte activeServo[TOTAL_SERVOS]; byte activeSweep[TOTAL_SERVOS]; -int servoSweep[TOTAL_SERVOS][6]; //start_pos, target pos, sweep type, loops, delay ms, [unused] +byte servoSwitch[TOTAL_SERVOS]; +float servoSpeed[TOTAL_SERVOS]; +float servoPos[TOTAL_SERVOS]; +float targetPos[TOTAL_SERVOS]; +float servoSweep[TOTAL_SERVOS][6]; //start_pos, target pos, sweep type, loops, delay ms, [unused] float servoRamp[TOTAL_SERVOS][8]; //speed, travel_distance, ramp1_spd, ramp1_dist, ramp1_inc, ramp2_spd, ramp2_dist, ramp2_inc int servoSequence[TOTAL_LEGS]; int servoDelay[TOTAL_SERVOS][2]; int servoStep[TOTAL_SERVOS]; -int servoSwitch[TOTAL_SERVOS]; -float servoSpeed[TOTAL_SERVOS]; -float servoPos[TOTAL_SERVOS]; -float targetPos[TOTAL_SERVOS]; -int bodyBone[3] = { //bone lengths in mm : length, width, height - 180, 120, 200 //(ie: measured on pivots: shoulder-to-shoulder, coax-to-coax, and ground-to-coax) -}; -int servoBone[TOTAL_LEGS][3] = { //bone lengths in mm : tibia, femur, shoulder - {132, 105, 90}, //RFC, RFF, RFT - {132, 105, 90}, //LFx - {132, 105, 90}, //RRx - {132, 105, 90}, //LRx -}; + int servoSetup[TOTAL_SERVOS][2] = { //driver, pin - {1,0}, {1,1}, {1,2}, //RFx - {1,4}, {1,5}, {1,6}, //LFx - {1,8}, {1,9}, {1,10}, //RRx + {1,0}, {1,1}, {1,2}, //RFx + {1,4}, {1,5}, {1,6}, //LFx + {1,8}, {1,9}, {1,10}, //RRx {1,12}, {1,13}, {1,14}, //LRx }; -float servoHome[TOTAL_SERVOS] = { //home pos + +float servoHome[TOTAL_SERVOS] = { //home pos 417, 301, 435, //RFx 355, 422, 355, //LFx 348, 344, 396, //RRx 364, 341, 306, //LRx }; -float servoLimit[TOTAL_SERVOS][2] = { //min, max + +float servoLimit[TOTAL_SERVOS][2] = { //min, max {379, 499}, {226, 466}, {322, 548}, //RFx {393, 273}, {497, 257}, {468, 242}, //LFx {310, 430}, {269, 509}, {283, 509}, //RRx {402, 282}, {416, 176}, {419, 193}, //LRx }; -int servoStepMoves[TOTAL_SERVOS][6] = { //step1, step2, etc + +int servoStepMoves[TOTAL_SERVOS][6] = { //step1, step2, etc {0,0,0,0,0,0}, {0,0,0,0,0,0}, {0,0,0,0,0,0}, //RFx {0,0,0,0,0,0}, {0,0,0,0,0,0}, {0,0,0,0,0,0}, //LFx {0,0,0,0,0,0}, {0,0,0,0,0,0}, {0,0,0,0,0,0}, //RRx {0,0,0,0,0,0}, {0,0,0,0,0,0}, {0,0,0,0,0,0}, //LRx }; +int bodyBone[3] = { //bone lengths in mm : length, width, height + 180, 120, 200 //(ie: measured on pivots: shoulder-to-shoulder, coax-to-coax, and ground-to-coax) +}; + +int servoBone[TOTAL_LEGS][3] = { //bone lengths in mm : tibia, femur, shoulder + {132, 105, 90}, //RFC, RFF, RFT + {132, 105, 90}, //LFx + {132, 105, 90}, //RRx + {132, 105, 90}, //LRx +}; diff --git a/Nova-SM2/ps2_controller.png b/Nova-SM2/ps2_controller.png new file mode 100644 index 0000000000000000000000000000000000000000..8a6a350589965b2bbe39c0a58c62f19a518d2b5b GIT binary patch literal 157377 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≪fM@24(rUm&cb%85Q$1wU;**#R0OCF%zM!#-@Fc0NfSUVULQPt zA}($W;@MN^poa#SpP8ioGYbL?xtzQ_C=zx3`}=cOmmC^e$f#%`Zs3j?^|HVH`4%^j zbO4Cs(})lZ)(##hXf;Eg%a`9^JiHA7rQOV+rc_D8;ai;_jiEWJYJZ|1$34H#pwt-X zU%b6yT?w!N^JPpmFR)Jnv~LW3&XDPwgpaPh=l`1~V^M>FNcVrWoShWXY+mGKWZ|K& zfEyb)6CbIiyX-GKV`O9mQFg%jFn0y0#Es4fLJ%?@9T_q>Z<<}3FN z5}?6~9k_@LwwT(g&4UdK%?Y0$ zOK{rQLsA>D4Y3UqxePP1$*(oW+d9!iD_`uYgW<9Kq0$_BDmS;~gW>!hQ^MjXD1jU2 zKwN*2#Rrvvpg5AYze|HM?3uG25H;B}>?CkVbQ7}}7!Z;0E6Wy6l2mY4UO1z`+IfGT z1@zWIP_92A>ApM4VzcT~-89!a-b>$3A7u3Ol7Ho~uY23XrdW$XLne$>I6_5jzkh{l zNQO?hyASzqNxly|f3b7=w=#vj5$+*p;r;bI$vvRqJU-@ah%epMP6hu~H`Tjz+7!IP z=Zj}lmO~d+T$S$6P0e08Vt=&HAoY0b6GF7o{Gn*;=SM0O6apWBw)?#qkrllN3TM7n zE(PBM$%k`(BD{Apmaij~_qwGJ%S7 zX4HDA!$C%jkj6 ztW>_q4z-16A<=e>3HvL#nc9J@8pHw$sNCZ)Qg=a1HTdJN01N)nqYW4QXSw?t+2S?8 zzzcqsTie^!m6h#h3XriWpnwO;Q&$A{4h+z}rnLu;Y9KMzNrzpd-T$}vW1|9Aj0ynK zY4D<*zfm6;IhOic}+a5HT7d4dK6@B};uhK_n@#ps8V6E}b|lUzU- zD#_1Bb6v8bph8i!@E~<7 zlw|kdi8^$NcF)b-UD3h9_izORO|Kj+0?nKPlj0v}lj8$^8@ zIM(Txpa+)bchu~nG&P-QBRp^5Z74&fpd11;J<>VC(AsL{y}iY<@DLII^^mVDe)0z| zo7`1EyvL!QpsxIGK0*pU6S}_!lE=r#larI+E#?Or;DGyql7b>NF%e;7gDJci)U48b zfUoruyi`Cv4L}v=W9^ZkO-)aOS?Lli0TSu3d(-rE3BuRv7(w`BEnHd#>@0eiy_Yaw zyFB40!QqPszdg{BQviC9mvKMCFhJS|@J$l|%GB@rTpL&bw6zaKsHCmHXK@RX4j>$% ztfB&b@zD7nrl3Cou-d?@+0E1QVQKn*V*7n4=6{PdIqm0+qs6~{q6iZlJ{@t~{wP=b zLLS%3fJ@5Fl(fa-bo%5S_fAOL7R+fjH_Uvu9-9_P8uN*a|GX_DhJXH6>Id1u}a{0(3chITccpzv6^4K$l}b^QShq25OGz#CVk^2~dJ zi`Pn;F-jF1_OQ&0NI>a%iFv?IXk{|7nMZ3J0!lmpPc?>GSTY(s3a6)LAi@Q3Jz&BF zM-jx~Ux&dWN=!ERHtyLJ0B8%)Kmh3>yGHMJiH1NdE1L5qp+N+yluLtXOX!jXr%?E8 zwOckZsXFfYILiRs7g=Aw+?0hfA<+ZGAmpq;%v=t{Z) zyd6m^G_D2k6rxQpgEqwnw6ss5B$&X2QE?RPJWB@-`TN&FAl85T6&?2AyiML$2@cW- zbE}s&4;6}>?eMG6Xe-DuEzsBnlLuISO5GS-=HK;yYT3w6JklxKu0M0zYnMcZ$Uq#A zTeghEQ!Hmaw8`o;sKRMs75ij8FP<&RCKP?%zslM0XII_|r6k9#FN^u76y;e?7vC9# z>S;ug+{#5P@^a2a7x-kY<3d}yc?R2>>Zb>?jb#8J-r+tnY*0t5AC;-;be8ap1StsZv>(LRS6DGg zbsr%=%d#_9o5oRzUk*Z_YIvE!_=S{4X?uUd&=O|L<2u6>W%-9q&hI1}> z%L%J>#~KNBx`tFy$ZDR(ck257E9<9iyw3oxBAl_qT~38I*!%_Q>ht5P-EH9rQW16L z&^FTz@7vcbc7-b|M+C$o_89`6u5?Sdt0h2AQFNZF<=&#*L@b^Gqd+)J4Atdi8A}&+ zNHpFk6-J{q${r2Y^HpBQ8@VX~=o%yM7_fQRA)$505~QUEX-tD-LZ2V8&N$W6p8qSx zq;nsyEwwhHd|q2pVmCJZ@#1aH2B2h2{_9iy0VA_EqL2^z$kV^lz@tW#_=Im}Sd*X= zCEI9{+~aAy<&P>wRyTNr(~|0g9>ioA&_@=Qc#ipWaun#%v3sd`94NI>)NQme;mw+iogx4lYFP7f9Dut4 zmT0i2=MfJN!NUxQ2M&n1ftNIZ)`2XUl=FfFV6f(*0yHq_jO#6=m;F)QmNNigP9RhU zb#n#WCqUHkUI+c5FyXX&8mtvS_&*~+@CgX$tntvBsW2TAXPb$@(P6vW)~1YFXg zOS;iP%YL9o-TcfKolQ8mhp~{KZ&BM~2%OgUyy$yqQqB{A1|ubv-M&**QkrWG2yh{o zlK`Qb`yR!rZNOs#Dlur120d9fXZsJ2IE0A~0Psk}9EA*vtrb!K6O$T%lu=2$0g3AW zM)v<5HRSn9*s`M>*)OGIv@1qBep+a*(shsy5KDxlji@}uL(0LZt!Qa6o{lQW(ISu! z!{HP*(_z$G?Fn`yv3JkzG>cu1pGwz{2|a)hbh zpZsT46Q?ChcI*D*r3yYivqw(1*dx8=vj4PdC|l`35imP=dw^C8_~aSb9Tr&03W(~+ zgNJCcVr(C+*3mUQK95~}j752YH4=#Ejrjn_;aK^?4yykH3FUwH5_R~vKyz>mJ6M{Y zU;W+7Fw3SYD`E99A?PZr%%{BcV}vM&8rpWMJtAk)UGH5+RX`!-`GwiM`dGzbdF88F zVLBjnTb48E4 zOVG%&R{BC7{EnDJjq8BeHk-*V1G(=ptZ}~kas3>vd~}y8L|{d_-?&tN^{`I+98W2U zDCCLt4C04L2FMr{ew z5kxuPaZ1y}Cipt>(a_L3zn|Z0aQ51OY2sosO5HA9p$=nm{E^Z+BhQI5gUM}jLTF5e z&CeI>_?mt%C=yANZuPRL-j?y~O0S&mS^3%Oq2in!LI1cJZOI41H0e<0+EJ2>KS!ls zx%zi9*jhgYl%v&34zP}vhya+?GYSO%fIs{_2%v!--!X4o>W&5YhO=j5%2nkxcxga@(Tu+!jD!3fyi$H$}@E#_WA$ zyiS_MW&B1^l#T$GL3`v;7S2)1!54^l1giSj$gQ1Fo>LOb?;qdX2#k(qP6iftnjtkr zK@T2?yz2`!2};>=^Wp6o^l8=@J2~~}uSzx}$sC=ZpDnPhF_>fyiutPp7xdKln;cQk z9_=gU1jc3W#%B1XmGUse){s`}edv_^^6i@Or+t+auik{C=r3eaGGR2iVMqeUcA?h{!&p=o6J z^ly9G%@Z~*T4^lCFrEMYus}$`0m+-IrMnSjC%dvtPMR#-llgnmZ!eTM5iKulj40#$ zywONot&-+oEgdhE8l4asuh6R=W#LSC{hq>vjps%=nSkK>fY@s0K$h6p!(-c58EhW3 zBGtTOXV?{gyysAtRGIXcVNj4BA#?Wc0Qp=$8S zQZ?@W=(fRYRKvXfl&D+{)ubgn&r;lRVo}KJ5%c)fk>?V9JXWCpu{zlS+ZPnb!K>K=KZ>^GmJ1Um)%i7B`L!(S1r`iNREoO? z!8bGtcxR56GlJ+5HI7e}lbAUlgtzlSMa%8MC3KGqOqj|^mo19DdFsJm%0GVSL6V^_ zuNX~M;wgN*NsoMdx2Vk;%|wo>`El@RX61H^UNOO&h$ZE1;3l-oIK?+|5KbwwH%c{1 zZT{=W0}NVYCYuIeQALHt#1LI3Ct#vP=A-?YZbNa`b6k0`@T7pJ;>QwFY}k; z&w~k2n(*cbn*-%ol>u9%ueR-*D`i{X&ARu{U4h%p4W#WxH|Y$Wn!cy9Y`bimXO(Nt zgYg||6u}RfEj8DWG|(-|2OWM$pa79wEq$lFb;DW36~fzTvfOmE4qlqxbwrTMmKW}} z=s~3vY@yPmH)Y|o-PDy!m7Bf5kjn3|8$<wUa(mM-E`lAOnW7oLRy9Gn_IAZ&y~mV_(M^?o#gGb%p63(3__vWAmfF8YLyKV)45 zmpVH{SeEkRSFaSpPOac4``<^Ni8DVOzG~UX7%OF-Ee1@EDz0}dh;$K?EzKj7HE$m6 z%#9%f4Vt|Mjdk6m^=qst!`a$SK6IE%12BZ7SrdPLEA*oY2+phLj{+#noek%+gEB#a z9hg=>p?$^dqv#4&ANyVRwaDH}dZpaz82D<)4Ev8IR!z#399?%tCfrlvo`2(67(iyR zM@z!rTeQg-K5&P>T2jy^TMJCPe@<~jq@m$IJbuBm{IEW>dwL*8mxYPx;ACB}F8R48 z{Y%&O{C72W+)6DlIf4@zvf~##_iLZ@FR)Bc;C$9~_yg~v4u>pj8KwF!dV)E+=3}ko z`=Y2#Y{;ED@Sc2InQAd)Zn2;xXgoi}7w9Y3-aXgavQTdrz-Z;4C z9Okzw*1-}Itf_O*1>^EI{|Jy)95Ckf8FV4laP-AxmlHaKl#>io-C4)GwZx2Ec0jTp zTjZcJkNw+X$8<&!vCMVh2Zn2WGfMP!vF~`D6^nDxO=fDt-ssMxTV^i*s4I(M z)plZ4Ub(u>Ax!&O1sv1EnPEb>oe7%4#g>eANbGIJZh41ay4RD^BUR3q77X)aLe_~h z?*QyiH2&GJuU_7ouW0-`>uE_>{7xcyV&NFaGNi!mgm3-{rr6nSPP&e!wWog`+FcSRdd$cSeroF7xd$Mo4@L@y-oyIY? zV?xQ%`H?-wL)l{xTNq z=Cf}g{89QMHOw`>{Y>OVv+LqnI)LDK?(Z~cWDx|E!wZb-mM6BaNR#Ot1w9 zVymu%GeoxOf-ih390775_%*CH<~XWfmvG|#gy&eZ&%t1}ILkOPEpEysa<46VR7RSU zf>E{S?iw10yYV~u)PpYR<;CQ-#+D3=AoP}!R&{>0h~&UMTt;bOX(HoSz-?#C(Ot!r zkZh}91e2$=d|CQiUpgYfndEBTwTm{GHwWhKD;@MEWNuT@M82X+=ztwPo zio>&(X9^jvIYm*DnG-&DVf+eBvuo z48z+gK|hfNL}_77qQ5NG6B%8!C^vYT(=%Vq-lN+6tA?`HH_G5#oc&cx=6`2xB!hj< zY`o3c32R~8PVlwG6DiK8V%9KsTa}vrK^qSFaf_T=M|sb$IaZLoVtKrd%^01RzClfR zN7Gq0lWd(@7WLLrffO-YLEp&-^#UHj@og1!xn=HNVS4E=Y$T(f%MA{3n}T(|{EE@} zG?A!8L{rZ2a`5K$qxTLTUvDZKJpX{bdafg9l7107*VcDuzV$%BXwICxcNQKIn{b(V8+D? z1!A1{?9xKDGZYcYS_5J3mDG~i{VcPtg(vy-1FEQCJo9Y0q5K3wIFlTpizs)E5dZSl zDPizQ7b>sRAVSO=bGg*DBKz8bxPv^{y2LOBEPX@l{wBG96xTN0Hkj%)R%16StW2V# z7A+U!64#b5`2+(_aQ@3>R7&(iGBDrh)Y_r+2&sQ5iB`~*(?*{TX3*06*JtfUCJ#B| z>i03F1b$z8m0laFZusp-(5X#%g+E=6e1&%L$$rH%loG3(@}17&nKND8$NlKjtNHNQ z_2iSrn1HoaAjp$kGqs#MAejAfx>xd-Mcq%7VME=LRFT zJN(fqN)^R(!)Ms2*IY|(Pf3Sgnc5`O+6quHXEISsB-}`GCcQOy@wL}1I3mSsFbdb= zXeOD_z}iS%&EyoV)WT?@3agGUVLpaJhA+MC33NS#^kdR~2Q6h`mO=7X1P0eSE|pZblVIP~xaTGJL#gUi9g!?+#Yhz4TUOFIQxl!RE97MYRh#=boL%u5`@& zOc*L_lzLv#ikO?KEiHNcOvQ914MBzZxABF=zIW}kH(GRPC zI#>}b4RLNNO9U=;XGx9Vt>cxK#IG2lgF}pl&|0qTSsWUjFP4-e z5^<`)gicP@*Z&#I0U|LxgWA8(oz5En=Yi;lVK-g0jwN&}{EUF{iW4;Yh&K}FV@)XO zTh3YjLa$heh1r8X+wn(qwj=2_vj*3>298_G-ykEQWr*(Yr)ADDkxqkmW??JXD(0eRK= zy8*@<3hYgvxeMWo`_c7qY@%=keDWy~3+%W91|y z-39ia$%qf^(Rs4sJLW&?*1UE0Kd>;}lYVD8u<*V*9MsFZWfZ07mp2nM#n10U!96L> zy01|foBe!>(IT@5md+W}`oN2#sJ0+e3c!xAzqRa_a@^nH+`R6ee~_<|Ymc#G$s38$ z_;@ICtGGc^+Nu+sDp$^w=R*1}ath>{zWaR76$MoxROXqF~wMD93-C{rl`Ea$_e*6^g^vUCDz9`EMvJGUWD4tE) z3daGF+RayMp_Si4E+L5!PQ#L@PL#1n%jqK7IT#GZ@X7h`@~^K0S|1lZQ2|1Dw2T(F zwNdJJ!+r~__<`xX?v@n*B605yX-R*w11yHbLVvEaukn0Hh%vKt*y!&G{U~R z$}HPn`6~t$4fi+Z&kp|FPn1W!G0?u7!dC5efPFOK_vZW`^yKHjO6$V9}JFk zCZ!!a@_S@>b2ctoT8+Dcm@6mba@&nrWUoXmU*X`qE7;STUuQXP44oX2iz*vZrEzjs z8ld}NPHmW6ULcf<#H>`$DWWaix9wi#^YB(q?% z;$=jRLr|wQcA|(uNmPjSM;T11J;*U3JHmQ$H?S3hn_3y!%$}~5J6Ch5a)4aC!c%Rs zxGC`gj8jf@lOz^vBl@uiT?>0h?@CID9L^Qq-N-c|V7nH80tcnpI(K$X`Q-vn+tv^s z7VJc3)jC?!p`!*ZJ;(tc(`^F@M4M_+HBv!YhFu~kUS>B%NFvc-BvPkPK3|J7W%~^> zsc#P6NQ@N8oWIZ`{R4e3g=~56x-J`2)i38Amf zp8_+T#=quiMJ)$1*NUy&V%qO?<>(>FGZbOvxJf<{r~c?qNXOo?YeZ8%B?zU|_9)os zpxX^t_Plf``rZC-V|(M|`i)rlB&oLLHKpYD!^TmeL2Ec8W&XNu`<$v7UFUIANlAQZ zx1icsY~H3VhSMjm{sZ}Hu6)zUjbCTa!rojz?Bpx37gryv;>sxEcf`P0JOi16!qi&F zR>aqjQpF_zx|#Ce%oqFqp7+O{M>(mu`eQR+d5cXWgrp5WbopgF)K)#&peGLXS9Oa;a`y6KId zsMHjt&>AIj2sH~+U}jNi>h`bibENYex`^4?H9-969@?3retL{UQun?u?4!z;0|&(c zxj%y~Yp-)W1K+W<|9#vqP&a3vp&|BGGAQX)`22FRu+{;mopo#&qORi4?uR9z3k^%o zt~$^@DUOBc@-Mh+Du^~nFfF+x4Sjwf^gN&zT^83iA3B(Cg2E`1K z_eD7U)srS|+5l&M?fy&l;bqI>o(?9AuSz3LLc11H4vla`YcU!GBcuj_UhW1bX`)K0bbu zo1RN_Su`mI$&Tl)hgiY&5BUz!S~{eOy5#sso+oqGw$o1h+Y{{xftM;})VSBa^7v%q zQzW&JPp$g6UHl2!4AqR;m{2TA?ymQ9-?I`ELrV<^0v>|qvB6OJfiIYW{COoL-#J{}cvG~>y>F4|GE+@3J zY+LDJhoIYMuoK@uE?Ias4E(s?JXf)$FUANlSiUh}e;oTXak)f!mA@$vybM*Acd-%^=|JJm}pu?8D zb5f()f_`X4_Jjn<%WH#etrnTE;o@0ghjazmjy3ncf_!%IMh*ercMm04k0msd(CISW z9S?BT7$^0pTDHZxUXCJ4c&W!wB!Vc63o|svuEm|;X>+W@@HA)C=V|XysHmzY)+SW^j=<~8mt7yCkhB+a6ZUSx()gn-g2(?!;In=A(G5@ZJ8DS? z{-e$s%im<^=AX3Qd62qfEcD&r-20*#8qOj5f>+TrPA`-3S&HO{6`@(b_GJ*If8&A1 z90;)PXtSUPvp3OV2fqi&N-qpvCLbzG{;@8>sLC`xfiY<)^wbhJL*YT9`;;{uCz1W- zr{5)~%|#8DH%v}}7>gN!1&4G^c(wIX#BB?d1vKBgXx~1f>h|?tw3S1Q3aIzmk6pd_ za(ze5EtNyRc69W1@hlQDGA{U=C&&P64ACq3)VqQCAM5CmMrb_OwD|{#^5XWCD+cWI zccqkWC#{WK4^*lgpEYgn7VP^bJhK6SgIyKMqLG+Vo#+^0bzmasyG49NP?Z>xP;u-K zd*Ehw!;T~#_8h9+InK6RD{;7Sf(ToZcaGk9h*>)_OEmt)lQ|)EJ-x#`N!xxL=W#yh zZ0!XGowEIR-c;*DF|{$%omDc;NLJun7L1wSTo@+JoShjoMu+6O@rsB1W6ekf6?(ZTVkk6CC` zXd1pHDpRrIP1c7_|LXw4B>S*y)OiQoRq+(Q!Dqk02ft z#=Z2X9V;|AQHd4P*<(JoZhHfwt`A+quQnbD@Bg7jnBVjtTmeBSHd^D8?y84JxM%y8 z8))g!CTob<=<(@B!iWYojuq+*K-viq&(P(E4 z%3hl@EcwNR7Tid&OP4vazqWeFp7=EPSpoe8|Gl%;^YVq5Vo{sRL$9xV>S6@jUWKZg zt9XClGD!6?EpO{Op=c%v*4JoCD|hv?yU{IFc^0{uCaa=6sbE#}Pq*uV01*RIzfM*T zO>g>JDzhlf|4j4P2!?2$V02hT#kcBjBO!*^xH-~EU11IHIo(1@&z*g~g# zbUJi@5DBkUaq&Tb-D#F$IN;(g)jIp_Oj}ggldK|p_+;!%q{y#VAaG8Z$F4(O1A$LY z*Mhc{xqnEy{oL2!pdJIa!PR#*s9T);6PnR|$AuouZF{Pb!|7hOHx0x^6*-mrq z3@l9JCQFa>^bn=Z8sfeO0{RorDx-$YU}(&|1Jbsav2Fp_q>d<8z-~vUA|^V;Et$S? zaiL=rw+{V}xI+i92o0>+cq5}a;^8v+40|6FMZ$jVeHP4 zFkro62~*ntCFH*#|AGtIgOoGczIsE14!mj!;R0IrzV4`nHP%Le3sZOO4&U$w0V9cF z_EN@6cb$*CSZa&+TG{XGj)=}4u-lwHO+Eua8BqfDQe%iPxqKoQo{6Hi)vQOV^{3vj zhdOP3fe5N379?B*+S#(7W^E*v$$*{2@_-H6V&J-h-Pu$7b7{%-S z+~h3gYT{8QnRExJ9p&|_mb*GbfrVmrTrJOv&9ZI2C!dwBq-mv-3P38b=b~&avxpxW z;=qX=oX5T@YW7r%ZW|8|AOv~PH?6@;F1F9Y)!$J?zhInqklI*%KVT@ zB(alp4nM}ZT1L^P$EE`SbRz6B*b192D1HKRf`4m3 z?T4fAK(JC8#o*ktp=<3>2Pdbw9*F9wNCZpw7GmR!iib*H0mTq68-syh?WXt#=` zM3i1O$1(cYE^$d;iE-g$e~cYhj>K}%fKeTlTk_MMcHb%&(mNBs~(tiJMFt zSsI^Gt(Rl!Cu}#oBr=MoPpHAnI^6jGn0oJcs^9ky{Mg4n3LV>#Y;qzad&Y@m?|HI1 zX0lRQ$IJ@JUZGO9BYUsHk(7~5ISm}E5c0dv`}2MLe!oBKQEso->$>mzx}MkbdOjCY zf^^85!@8Ej-EUoiGkDGUbTk18r?@_i>EFM8qa*?Sbl_Ui_?x9$^0&;{+}MJC$CZiz zLlLqb^|$2<@ukhPUQ*BK#jz~2(tr5@xqjr^$3T0-N%f{#uRm|ZPtUFG0R6ru6=>Aw zJ27T7Z`ilqvv^R~cbLJrnBta!?F<-82NS@n02upm?+Qco0xR{@$^fCkkwA9GKYUd! zN{~8T_+@eWngY=djV(%lWfs0R`!PhdsDa+dL0h0{eB1?9)%1}yxw!V5R5&p=fOVVVhcFA*h!MOHRh%)^+2$TQcjjzW_qkJu1cCD%!IOyr!8v2 zK8lHYHO)*7Y67t{4H$0Wx@vs0o4odgdS{0xF5M^o>qd;ITy2M}kM)*bTil^)%DF#0;d_<77vc92eo z_PI5XA$4h(;y``>$>^(ay_s?5_0=c_N2v?#s_Z&s@2`EDEh()%xHDDEbL4BCC6f61 z2E3E_t5x--Tz~n5gZbx~zl4Hrf9{H>f=LPS5${xr#w#o7qH2|4LO0U|zgod40fX1a zr8L9zJHsG%2M}3UqrQD1JKY%$00lK>PPdE9o@4#fZq~6hbnjw6G=7dTGZqAh^Z9qw zn*b_pGPDNVrwl=B4CBzn*vQlBFM#67;3t;&7g!wk&bVLH}3hfQC%up;`6HVs2QvEVOTWzntt=kl=Q8#AESjC zoD?g5N8n->-jbF+5$yy8!3ps8iIOff$t#->p`_%~>Svvrifq>!4mf0JLcnfFW|+*G z@lIn|6ZE@vH3VNVZJ}w{6T-Ke=`BN!#pPem8g{a{&F8R0az(0d(`g$E*4=p%EOVW* zrr$~017`zAX({ZCy0M9T-6|Vym;BLPcD+jB0%*}}m z<9i`IX^*-bSqFUHnwsOLe~Bh)))kI?i`r30nUq~19$04;jJsEc8Zaqes!Y3Zdi#}C zw}))*%@>BaH?1jOB%a+^)Qe9ox+%Qj(=gj!J0p}q+Z37?k#IfoLWe_*;pCebxkmglu!1cS+_QCRbVdFKc*goepjJmTVv#s}cjmSRDWRbp463+Gxe;54q&nv^tEd2%vQ#{MAbo_Xf-UcFLCV3{oSoi*_jjsMPIAgB{i^nq2xaYWQv{g{Q?cMhG4?&D7R8!&BC{rTU%-0x-@!DbJr9 z=s13Y8|O-l?6({+`Ek=+!OUfG%BQmE7#p*866cyEp}?V$#0V;`{Mp4N4}}^z2foqcHG(TuF9Qbzgtp&qzfzpacm&&1rd`+q!zbSOk?@VK~VxLV1ygO$V8R z9^WfmmvC}6jIWh=?a6uNo$~ldy>j;U-SJ+2(Mvo=YO7=}9E!jOw969625GVCN`!wO8p;x-uu{gsPV zFGK@B654dZP02p;uX8XsTgl5nXDUE z3}|d^gLQyGVp%885Mn5Hc3CU81=qRxzVCAz8;&H?Z3oBy?UTl=$uRN{(au z+b6;rFy@{n?|l)HL4wwc9m;gU$o#3mQzxdzdy}%U&RFM=RZSGYyq^xK-kOvJq@IJ* z>z*AFBU1$gZma9&=GedAri^{Vy@7U<&=8r=W=@>5I?4Z(W4xy{0*dQJMRhAT+YOC9+Fpt80I{euYKQf>o#O=A9uwe1pWVR=n)k zW?sLzo|KO9szOES0Su0Q>Fb&MZ#MW@xpYb|t`fycC0P8+#0*AB<^YQC*lP^Ew^$eC zBh;7u;F{Y`(A;p3L-~JXI#B9pjpAF`Ld$y6>b+xkvKVHZBsfNtDk~+&ymM_GmY&CR zMe$3G%Np8Gm(;mc$Dj2{Cy6A+I?w3M(u+g2vR!io^*f0~o>K3*XFA1B7!I`IWSOT8 zYs`n0hBo%BV=eS$-m2`1AEAr7l>OH6pX46na#oIZ%4tw}jx40k3-^#e(uR%>I|$?r z%s>0*`x*e_Nq(pT;e(ZR7KU?H5O9DjJ~h(|+~`e3|PCDTGk_Y403YJ9H;;jlytJ z)t?5cZp=E@6z4ol%2O*V-8hwANQq={nH&PX7AWmJP?`)`uA!fr6V|dZUL!a%sGrCt z;kqb`jH1Tkw5>$UjJv`2FlXbUkaNbYg8EjNkAl!uwHDA`nI*AFj1|6>#@Ag*7I^7V zE*Hr?d@&TFp&UI8!?1WY*4DH12&F5Qsf<0lK!4ydL>#CN>{v)FIGxjRH8~#Bv#EN|=^B4kz>iI=g0>s{BTdlh1B&blSL;Cg zfc3{$d#>uIW1SBx799Y;piqjT511F3@M%IgZ6A#^S-)?2&yb7tP#LF>f*^Z|^5Z>$ z3lbx|tyI4_hIUkv$GTfDGJv7BTGPQ}zO=xSy-s5In>h%&tPUXN7iP5$ridxU$4`f9_odn87JEi!MB~-sV+0ZtDR=$UKlW!+3MTBC+k(NbW4nC+ z`IUY^K2tM-Q3`KSJyQO@Is>!A^0yqS^_XJ zX77Ff;LkleUlM%vk{x8wews8S1+FI&nNY=WvSTnScBu?$odq3@FXvC1La%VZQGw1XbE zl0=H1Kd0D;0iNTD*+?be7!RhR$l4wQ`Ox(Abjr^pN$8g`Vmw~JG~9^>s0;*e`+hq< zIoeC&kO3m3k&lJ~ZP{zzjt>pVm!|NL-Dm&q>V)b8hRK4-k`C<(a&lQrXnDWxv9T&T z>ashx(P$u9$!$Jg3`~kPJSiFkHJ*Y&*#bFlPU-Pgee`xF_2@E?Gkxy55Kj)Yxw^@L z=2hNv3i) zi%Op0#hq9qbZ^2?qo*p-MC!x0*k8Y!ZSQCM-i1bDi_`@<+euOyU9WJOd5ko8 zMK`o27A9Jb926eB?#Nj6eCodaw2TaayL|uKU&3W5V*Ua5Xjo0=mxI$&Zf&9pL83h0 z)Dsqxw6ptbNei9!+SPii>oYu)_V398Gu93T$UvjrHkc#?)(-y#QgwAZHnprG21#ws zvlqb+-5u5X{~}s0ge1$__wN0BF#&-qoSYY7*tj?uB$B1!n6|}H5`jPhF$yrN?_y4| z@jm_G6{HZP)lg5*;{!E+?R6D*JU1BQjZ(QYd_MztaXrcT2&^e1M3b|fne;e;JLE4S zvFpLnuG62)+FI$IP#R_+UQbwAX$e15tzfNvpc=aS73>Hd9i0SgOdrHyhDz|FfPn7E z+b6UURO=*dI8k?5k^dX|W+H_!wJH^d=89`1q4NGn#q^T z*zm%T7B38A=ij^^1MrRm={uBny*{PA%x?(TLYQ_RKoQ%2q0VKVwnL3m-)CB@*S@vG z%US=1zJH#CbTooXjzq!AGHZ99*mK=B#|&H_gFio;lhKfT;rX+}l$BBg=1WR4{+u_Q3%$^PO;fAqy!I$4uU2O`YCsB)(U};x%qDXe@z;X&hXbjZ zwa=C@WghHk27>b7;b#d1*5r=8CBY7Vq>R1QWbsZ=yJX1!lh`v;mW?}w?!;4RhH3kp zB`l18S0P1GY0PFWaN)F68V2~TuGY(SOUf+yw8CcZ#1S+9M1EzMJo8GH567DL=GSgG7TFQh-INLm*ntWXV(|D?FSwixEckxEIU%a_^bF zyac~+Xa(k_%`E8qw}kk=5TcZC(-vU|@eMtF>zVs8oHus04xoBAHNSFOdA>!PmYTc| zTMD$lZ^k>i$8g>R)m7i*Y7Ips)!FJW;0LF^kU$kYM>sdlgLve6to*GmK`g)qvD+m% zBW>JZn$FweEqM;@QRwVF#kkBXgCU*9RDoafxnfHyD@O*^Up!oT>m7YJmb1TLvrd7a zW1O@WU!o2znY{7;i}?r%JYS=&u`b!eh=>RX4b2eHb>IgA`qO)&F=qNXns*V$`2ybf zbfKqdgGw`^RsbN&R8jYf`%O;AzICmpUbb(%n=%>@=xYOFxB`_DkgIEQ{Y0Aw{;daEm{~#yo`|)@^(-1 z$7>K2A9cTVmni?*0UCEeyY7c!7R6Ef*VJXmU%%-X`XFf1j;h0=ApCOwuhMDk+bPaY<}$_VI@3}`chrwgVuv?P=oM_5Z`GJCjPi*2|8{Y&I;%ZZ z^mRQpSO62VJ7*nz|9i2wdTWYzA(C$-Kf0;WjnqGVS=+2sgUU$5o>9o8aiHd5l>X?Z zTo&sr`@^>}%@+`WL@5oXQaw3=%ZvY;R0#nigmxhTuZT`M`1e5VOK9O`uUmmhp1G~n z4O1?{uGXvBO2UJ17ENLO(oBK!4%6wYg$4fH2bR8}o(3q|oZsNJ|9iQ9%vPMZ=LqES zfpnwx%nOmkQ_i`FiCWFvisqT2+{8=Cr;7P|uGT58E3{GkkJ16>v;YY>r!XC^IvAyR z&6Ar(Um4q@*t7mr)DOFE^ovspQfnY|IMwp*JCAMEH{*ZFNN1=~oR6hdAw7_Dg{S7) z{wtOGezyMxlcgCRm+DOd5rjbdrzVd8yXkSM$anw-3=@&$iSIwh#o`oF!r8d*scObo zRwf~RpsQvV%lP=q-ky@5aNP8iQgt6+rJMiGC{G0#}b#B9ssNi zV3c~?&EOQXzNlyA!G>^6azk}>+#oga}=@)*=}|KLmX$|-2N z0U5<{Q_*i+2e+;N{LQTU8tPNEaG=t?+~jS{3e5Z}M48eCvnwk>_WAk}FxJsew-tz{ zFq#ewv`<}wUSGz4z7B&9D36;7{-&>KT&}z(LDSfyIBi3Z_}dwbU-(Avc5b@}Dl1g( zl}jDkEJEkOz!irK!nFX!Vfg9m#(D{7cR2OOnT(wrU_L+xnuAz^B-lG7jYI6p9o-_$ zw8XT}J;s8mt4c>=t8VO6JUsK5JuBP^M z{ta4uRdLHMqse>7|8`QjXC)V)Or}!;dkH5S50HVK)_a24s6gOf{;Sn9S0r&&LGD^S zFd;a2k+`Q!2u&d)9;ZNOnoeisb^D~9&Zjt~yVZQCIO+tF!9k;Y%A;o1StjqL8Dd}+ zpK)C@S-s}?qrB6nCOSYf1Lw`ft(2mr1j@OIZv}*lq73SJL25sad0!b~j$L~`p*KN8 zo6tyJ*8=m{PJbN};c z`W3pkV?t>1j^;lM;>&Us9XaREIYdS~U;if1{;hZ0iR1Vjm>QnY{kW0+!c+Qs*0+&B z2W}8GDMy_|1*Y-6rAKszlYsZ#?94qx;vW-_c~fSaPTwJ8ofT5@2uGuD-TI`9ciVuL zNhw>P{o0{kx_0g<0$v3lfR}ut0|-O`7{$%6qtgM1u#q#)mi0Z}qpk&F>2#0A=be*u zw&88_X2_-20*^Ho|0)GuyZKR(<7TIOx?pGFzx$a*s^Bo%so`&!ZQ^;!lsmWpL<|!J z%APyJTdRqex0P$Ee@Tp_JrSN`*5#QNaxqUA6ufjtM*p00L%hy3BO zzzdir#r}Y9)C7Lq^yH87IQXtQ6HSt0oWM~c(fnYhE`!g9q;dc6xu-IivE-xF$gQaU zm5x66Z?eXN2_%R~peKoUaupC^=&LiSud4_CK2Op!=c6%x*Q>if+Bef#*EJfW%B=J} z7EKzmbM=!ea?Z{Qf#Df`=N55?$72nQhdF+Gxp`eLL}54p#wN^h%DbvW*`7l7izb`cc++B=Wqxd~?-K^QaW(xjT zH+W*3Hpc?yh&Nk(fKJeot2KCQ(hNb^u`%{Md3Xyk40}m}Q!$9mjq}fNlefZl26Faa zZyiADQlil$S;KcELN+ipyfeP%!|TQ{G{am~FQKIu>l?z74N$FyJIj}bw2kvCeteDf zo^#4A6%np*PVwg!){i;@X0%Z%FwnUAqmaTECI+tV!a>sPCwxGIpRR903VP>~)elji z{=-;P_G03rNe{4|(lmgvwLLiG_p0;i-sq)Xv}6#w7CkzBk~%Tbn_MbV1W?&$T_>zM zN8_eT2OXs5M<<~3>y5jucXDPd|t;2Gx>ey@Y8G z9#MhwzJc#AcigZRQy5Ko02AK3N*YIcw&u&9<*Jwx?KGqF*f&2BtsL`tq~2iio?5qT zyJmwwx1z3E(o+EiazICzzw|R7%`jB_tM!qs*tcsH$f+BXr6Q}6U?z6$@RalAu760O zFxL&w6)-nU#Y-x>u$!H+;PLR5$lidyai(5B zRRU|Xr8TQl!cu$2!=V@;Jo)b_$inQJ6)*KkcT2vmM0uW&J>C3Yqe$+i)&noU4DugR zw<-S6n@f$H+e(b9-GY&;IwwU6`?izKJ@2{O_RQ zC39cE$L(KT_qw950FGN=jF@(2-CW{fliapX1jcM9#+(!=PAqL?=pIAMrI@%qk!g5-SyB4_tTQP4HD>T`!3SpNQt0nbBF;$t# zd$%#kVcuKfV_`KoykZ<|itiEilBTFm<@$L}2m}%b@=PVVeqcDQ@ky)=W*0T*ALd5p z)5~+{xj`k4E1;PyhYO_%AP!igHovLv%nZW-@KmzD=xL5ZBwDU?2+w`8;X>c!08wf3 zK7a3^>jed-iheAOJKG@p&Dy#%UeOelA3#Sq3!m&ERwxp%FytU|5M3ReWPcb0eAb=c zd)T5%$du<~G2R$SY{Z=o#yj){?{F5{WDrO{AX0AeP&vVXSO;t3DK!=?s-VJ_-7kM*KT<9>|rX5T1CM*{UK(*z%y zgv`57JeZR5tWxP>y(t>==c5TKm%Sa=!cw$wtIYV#ZdX^0I!jv-I&i)|=lR6l$4H0A zvY0AZZ&-L)G24Trsa#(V2*e4@#x}@D0vBmN3c99cW(y~CIrl~`+t`H29Qb4Y_{E6X zm@ux5yL)W>eQToaksNjY(fq^Ww1|x||7jYjVR1j8%c?*a%*G`ARW=g6B>1yKIm8rG zp1Ek{j@f*doQJazrP98IisW~^C^<}wC>!#JB3zRAe~aIt9*XiMUQ33NPv61k1l$z$ ztg2CDbO^zC6Boi#JO9eV(P0mjz<-490-Y_HMlum>C41*v1(5yDIX}JNRYs=_wG})W8Jv-HWZO>H`EW1mhFs}O~fXLXfvbi zfcNaIln$J_ty4eq*T$DDXHl4{l9gvsE zon%s(*=qsQ9KHxScJn3IfKsh=cX#)H2=cmaTgPcCj;y6NK6&?*x*EF>trFDPeanx# zuzhH_hY|7h^3lJrX&ckTXMXquq|4PoE6n9BcFpa@gT)&ls5=fiCM0FM$48^a6a(;8 zSGoBFK3H~93n&rz6>`VpXlRyaxM<`x<86My*IL0i@P}KXPfbdnJ5Uvd%&Vf<%lWZs zsUYloXekj4IvR}-Og&3jE$wSqTOAei{hbO2717}b@EK~mENh{f2w0a|l%n8&Am-&3 zE_vDPHFNnw6PF|o^tP}v^Gn>H#Q;1JQBP>=RvT4(f)G$cb$0{la?W5unw@nhxd44S|u{e9?$?$^FJE=rAm z>BpV4h#7+uUYDeRn+R-x&u4@3PyXB{C@YKcJ-govPDvV~56$k^p4d&BgHwyK+AB%p z`J;p>P8V>|WRh2?G`U}BKdoPy5?gUc&_MUQM3W+bkn@gj7?iqngVR8 z|9-(Fuq(8TwX=2UsdiW$y3dEwGOt!iNc1aNeWBxmHO=@0+qqHy6PLI&!T%L~4hk*_ zf-$PZ9O_R<7;(CQvv^O-fkt4%H;j%N0`Tw*lSCv+^x4c#fXWDb?e2;jUf)`lhsV0U zQ_X4pz%b-GXNObO)z*qVZ`UA=iCypWIp#6fQ___9p14(g%Rg8Q&LMPIqQ2!Dp4nIK!4PDQMm$ z;x9^;-(%u#Fi{fbe-<&Rn(}tzR2WESYU$7w>r<#cx`IAj98 z_I77%ZGidW0MPV(r)Y^OAaD$o#K~RwYQ{;2y%I_cz+1-q7SEY>7a8bcupnvGX()D0 zLK0DVBv~7Wx#&nsR8QaJ^Sone1`4#-oLnm?TYT^&t_@F|GmN@VMWdg#nL@_oF4uZK z!_Bmd(xvfKwArBs*gA_iCiC(jy-$t5$oy>&!Z$T_^CMU{MU*H$L z=3`*jmC+M6rYJsYLZ}7GAAdvC?|-C^4AkpoA9A9L7`p|0tT~@gEnmvBb`J&uC#E0?;Ty?wNrn; zDT?Y{JO9Ikj#5jmf70vIC53_tkRd1$G@)wT43S|&KM$VW>@!cA2upPu^hD>4-=-fg zYY((%@tV_JZ=nEk3^ZBKYkV@ z3h;nc9V<&d*vK2AlS(psb8`tt#%d$=WuEs_R1w(F!XY4S`7{7<`zBT>cE4>DfFegh za-=@PaYR_Z-Y9Lhi7_7_rmt_F*9;*7DSLEUd*<$wd(ShYd?u8qsRu>TZ-`-;kC~IBnZABP@q2P$@9mO4*?WUiEylv5YyOyq4BP3yM5r^msd^I}7T2iCQq@puXZ5P>!?Xm&O>$}0C6 zJ$HhVHD>++h5^94n1zJ}xDqsG>RyCw2m*n0I{d?fEuOUF%{lpcQ=mi4`QhTH4l-$A zS`6fmmwTce92}l|y3J6is;WBa!WrZK(*=jpK>pX3a~5G(6Y9CNyp_eJ;2A(^wEX*S ziIX1-8#fQR{|AYlqSipM@}^InzDB!HH7xN7mJ`Iz30&G+L`7ni;=aKH7PP_ALE7g% zpC|Y1X^I~FySOq}5L)=u8O0kbtlz8Xo&;tBz323e%K68qYzW+0P{eI(3v+Y( z>3zYUz%~t#-3296)-HNNXF?6R4LYkq;E&XY5L3&56UJR|X4_x@a`#vwQGg_cu&eyy z#F01uH_-V|1y})LgS^%kv|~VJpd-uf|BgfRjyPA?&b9{Vc@4?awAG_>&i7K2ke9-@-T$rE2mwR4= zH5CU92{bn+xz@&UN+nyhRx2@R!6=jJGJ-m)e?6oTV2oL8VlY3N>)O{Nk;Fse{Ok(PL4R#-$&uY)%OA)8@``HH zUKf#l!nagb{%kF*p#8zgle@-mwnUK%q2t_wco@8X_O`pVdU!m3OyO1Z$pd=FJOC?B zeu76wEj05JD<mm;^}4#%M(3qoFE%wBg4bMix~)veg&2umeqE^^^v|dn$c`~b$}iyXgfX}?G+Fd zq%@cTElXu(3aV~XVis0<&E?gx$43qb3u;+W1_4fa$o3VCByTcuCb8yD)tKT_lk&`m#)EKf z%|C1q#}ZSNvZ9m%YR3C|MJN$d6-9rI5UICBY<7UgNscbrkjr%@t2cdt-s-(yeO9}jkmdexjB zUzRxtM^GBL9`lNUe21Od3;aanetrBs*?sA29H;GK#Rrdu6y4DVNyg>@_(P;sv#m8I zjA%Cxn;16))7|Kc5gIVM;#Un6!Jle*#XnBgN8m0B3X6M`{F8^oxJ0t@@ySDKa~6+f zEc_G_FSdl0+vUxEJXsqREKQ)Y#SkNIV5`izj2N8U*3XP<;O*w-+5+UJr#)i2RY7tP z$n;+j77<*3u=lDlzkz1)aAJ0Ruj=Z!rMa1;m;g$& zBN!~!g#*;||68n3Qp@AUCQ9NbyI`(DR6^bJdOxbMZ|!H)>YDnLADYP`QjrZb&rP18 zM1Ls2;qGpd{XqF`xkMs8iBM?}dUkPS8ii0mJG4u-a?ge^W=wepL zwma!-eV`_Nt(U#d##ZOtoKvt>??#4I>&S zjwB&%FqJl_1SD_rz$k(;k4COgRG=-$jI3Rp(0;IIjCytONW@ma2J_j*-~a7hymhoX z4`g|qm-MO5Lp0%Z#q`iwjSuhH<}cltqxG!venWW%v$5OiA`{5wPvGBOjg42OX1wMW z_K0SSdA(ZE9jamOSo7INyxfkV`G6PQ56`)N7xFaezOMNaUA9T@#OZh34SdVg9k-6) zb^Ik3Ym7f%{P*z`$i`d=BLu-f^?_gG>JPiop7f_YWIYTxI3?}9h>U!NEwvcIO?g?W zXfDWMHqHWy7>qZW?{~ac`7)du4pC*dYH=;YRTPHI{Ik20TKtG+0Uan8_Yl3Vn)Pd!oR3G|N-ji8H8qa+8_VAW`Rkm+nr*V1W1jM2V zzp=&|HAJeR@@>9M)+z_6BvIP13Fc|<`^2rz18dVNw&?DaOEN|77QPH30>b}<9kQ*> zZ82`K9bwze=^qD=_8|~?5RZiaLIjeS^~WMB#ckyQLof9`S@xSNIrDTjq|c_O;lfWz zEe}y$Us!Zs6G}(MR#xL|Fp7k^@y(#d%yg4$@X3W1gCxBm6=J0-ycWE>gL7LQlFbDd8AH@9NY%!x{GJvkb>W@-UNVugOAI9~^uX6*J3^PU7DS;@@2XJ7 zVq4p^P0mrwJ#^BcR$+3>RIjApu;994#b2lHsocuk*>almPvSQ^2>Bk4SISvg$smum zKrye>M8;29BK@Fgs(OgC`a89SAQs^$^L=BPK^W8O~NoRAOT zgkyR6+}S_BjkfSFS$)z&@n*itwNqbgln%xW&pp9S!7mED^uw3qCR2dP37Wo zPY`Bvf5*w(o^fj{N1wW;&W$n^vP}4I+i*f$U=gJkee~j1Uu}K3MfK*XF@>Ndi;7gs zi96(+l@o*=R8Zs1VQx)Rqi=*GI+=QOf5&IK3?c*qKF;N*vP<9Q|_fY}1Sd4ZBYf{o+1X@-urP9xJbUV;0;`g`Hzi{umtGSbfu-(Q@z zDbJkx;vR4W?;FLt;T1#uqK|J|y8H4mu(AY)|F#kPY-4^^;LjrK4%56oS@%VVQqV05 z;FIDUa^1^JotXdgWv^JVkX~9}%f-nL-lU%%K`Esi#RchR7H}bLUvTVqdFF1;+nXO` zjS-qMdvE$@xBu+u8T*aZaQpLfM&M)ExMg@!&p9%Pdoz{O5ZD9MU?P&8l{bo0PTgxT zWW$N55v|9Jvfxj^{^RO)e`lF9#0XiY!A*g~H`63PUQ(0Ah6sy>i;_o}Oe+e`Vz4l z>FNqiSS;*LRZ*8uvc9P2m}0|qNH+yIHs*S0yZITYZhd03Q@^Yk>v!SpJ-Ql2v3}s0 z=I{mK)$^x|O!jLu8R8IZw#h1WbM|tKZ#=0Yzz->IUj9X!jLdtw zB5iG!I{6osydjdfOq2C|oW-Y|AT)y=04&E<01$p%7=q=8M_97ZzzEwV`nH$&9{%oN zi)voBh%atC<5H*45}=!)BwM~heov^2}f+1JO{TQEW9X7M35tbzt^+QK>UC zs>TM_A@+cn=YrIA<3)2TsIic+xaRk-aZ^diVG78}ELbt<|5nTrmzYPyh~MU+VdWm^ zrS)3i@A0eVj|x6x%Q8OkEDZr)Y(#9aMLq7oB>7N~PX$DoDgS zaY|@#Yr)QK{o{gs{8vdwT1pC?6uLb)7UPmsiP9Fh`|r<`4e{aeff3Gvz}*|eY^b?O?UO1qJ9=+D|BfZ0RW~QpEjjICXneerIQ|S+JVJbK@M=_Tv8=SJAJ zK6bjGhryt~(9hGYBETK(;_?w20S8;fb+IS8Qh@EkD_k|sB}se#9aXj>NTf!Qu?PRQ zm#iRh)-kpPzK$UEz)hv-IBziI){v-AJet9K}F{U6u;Kc?1U;!65Wvc(eUnw|%)cqlYTl!HL zIn+NpR*c99c~5z6TQHuvHL4N!a0ybH(65$uL0$;NV@xisjwT?WS0_CH5g){o6TkGdoY?5@fT!sptGrfd+{%yYJb#8AA-X5mo>IsiX@5HM|XL$u>y ziZf58H$OvdnQZx7M1hhV*bgPrNzGU%qFvM0GsQPm8~wD}jn`HzVEZZHY!(bP{~!&L zFBRfkGDy9ftx=+bFM+zMEyl-n`g!>&bg4XO#Lcxz&El)^-g~sz+`Co<7nw18Q zg$~!ud)Io;LAonpy?<()pJkdr5#vup?-Sh$;_j3$HL+1W#uSft#bG+?ERln)Mf6|z*9bB zl)mUYi^m6@xIc&7N3gsA-Kp*KcALI-^Pg-&V;*%$DiH1yr@kPmd(9UO<3$FW1Jwl} z{NG49T|NX%7D1>|9Vq2Luw9FK+?*oQ9Gjt_9<=QwB_P{)e&1~3OelUmnlfqzyzlYq zp{}c$Cbtu_17cwxo_zkAKLiK#^>kcN7sZtT;_0a%*D_^#(7Sd)M@+{U<|F6~Tm#3G z$4+j%o+ul--yG7t;zKsm@|+8l;fbXysWCGNd=+T8yi-bNnM`BdpF)<*moRJ!7o>=l z-rOOt{jeFLLAjUt%>UF@NnL-=and7^WcWAxsQ_Lw_PA<|Jx7| zFl_I(P}7@bXe?R&2Wz{5k5T8&jepJBZa?E%(V$=jRmiq}c_wZue{xiBjhkh{CLox_ z`150T+MD}_c?)~bHs70~KoY1+Ecna&{gfvsK!^?!^1rH{ltCuOQe}7Z9M>}1BI>Bi zZ|M54zPlP02lisTZDsOnFpd(fX&S>MS9D zG|ATm0@VD>Hk>PcIHc%oZfCEGZcUv-vVC#c)1>3m0BHL@}zisOpb+4oZwW^FN*C~*kCGKuaj z2a-ir^))DdnOm?GlnIb3l}iO&3K1GjANKxv+ox}a^&unbH6eWK$l&iwa+FlP4;vyeBS}z+<7q!p$)n@y;ps#F#~Wy zKI#>$cP}&mZ-co%#9Z*L=v0kk45R`2qMvO<|F(koT2K@&|H=vR^8))Jm@`5X9#MK; zEW33T$~?-3g=!a*T`(|sD9EO2LS|h#%K(H6;(cv z0GDeo>}a*^IWDBf!OQ|d@6aA&{Hx()UzA`V2I+nX(BvUm2v(Xk*7O24ftKavOD5fu zm1t>1g!C1ysJOQIop7cv2Ngo3*qSo|NhM$g)+Q5vFOFxJ0YJqU9{Ox7%xJ&)gU`RM zGshP)gZn(>9fe{FqEA&%95x!LS&kcpQB(-bp<-L{BDf{==Uw zMw!y@FLI&p;sKNT6!13lWw7evkmVrIi~~3Af5e$MCq`-~UQTK!nXKZ#AG`@XFq2z} zNfDXbOHftIEIer?2b8|H4d&$O{F|xDO3Wd0@I1<7dNN~o@w`e3?$6nh+Q40W0N&(1 zJh~aA9eFu`5ZNsYSq=oVcK^#e;SSWv1I05DRN2u9wG5EFWofu zPea9d$e}W5-n!vAK#%+UFhFZyy^G$BQ&V4VR7#aY5#Lp-afGvHspY&TD1u$p)pG5& zaZ-D^{Qyurd~c9$J+Sw&y?!onrV5El3Z>O6PzLoi?!ljW8`WJmwobYjLn31-t-w0% zr)F0Mn?VUYrugowCvRZY=jTj_kVApHdMjuKc6o)IgD#_ ziV#S13jl+BCLr+<5C)oDA;t2_`}uJc&5i+H#8=di zcG4D&16x!YqGPEZ%&g2b&d(E7lE%<;&M6y0CP=_9(HL?++DMy>~$_G;6%|xrzLM?ib6j7p9WXT#@O6snd_h;UImxJGZGX?>{Ruu@MRn$GY(c7cWjo@Z-0Wv`3nQMv#Ee6?<7YrqZ)z{4~# zjQlQ7xRc=S?!hg%ySux)6I_A>o8o!Dnc?E< zzg=Bjea_i?uXQhyNNFi@(LrwLv~6-aV%@i#4|6h@rrZR*@zp`}V5N zb)fNEN!l`keSI%ohK3aJzjr?Pzjrn$EPJQM9Zd%+*FVNg#KSv_M$_sX#ExA>gI~?T4v-qRwTxswyXVhSO8) zUie-#M<^j8p)PnZqAk1-{b?`SSr;M}PDP_1-AxCXqcc84bLQ_5>1q0H4Ek4mAL_ z2L}vvMyVy{o2Oc@0EuLmuN~S8Vj;4C-C-KRNxKJnr5;Gx>gQRme@>I*uA6cKw8fX* z@jILf)Dfu#G?9jvxUm`wf4?DND`+D@%^jS{b$*a9jqevm9e(yyKo#8v@%|t$#(-n} zqvl}MiV{7{6Fa%aKE-#BAZ!mCE9m+sa6xH=x4iS@2W6UrHo%?d$4S@$S%k-l*) zaV?ws`zQNn@w&D*Jk9seFT!0+m`@^s zCQ3zulXgovitlE3COTpMtUeP>^MlY(-g6IKM{OKmtkmDC-uihkRxHI(^(aFxbp%aV zBl793dFtfXL}Rd+;}Utw)ScIjt$tvJ?7_H=1kz>UN%_A0OeSRK6wbD(O6(?ycNm>oc&QwGPTm@$Qn73|r`I`tItuTj;-_=NA= zs{zt+v=0OHBbXOkCLAmEclNQo6UJ$|)X2sJ<$J~Uh&$)((qQ3WuOi#6W=7OZtF9FR zP!tGNPTqA9>W{bX(9C7$mS_vs+WNjrVn1y8LNl?+MxmD za>1|wRZP*=7AewKqYKI1e-8vHQMc)&2^(`(UAw7{#!&Is^R!6!vqA@No z7XA4W{U$c2+j;zvXsi!m9GPa9U2v+U>LAajAF(F_7>-;ALYS)$1*HC2zX^rR6i|vl zvwdaNx4cZUGx`u9FQXvjho3<5LDQSZCzrZ80o>m3eRJCyl^-mw`z7-r+1X4$ea@%t z@Otd5>h|i8pC(Mf7hpx0OALLkEZmM4pq9d>4{)u8N3bOOB(l?aa6%Xa-}d1aB1C(*Wf zI+iABF()zP5JlJ2EAgkd7kbwx$nS?R_|cV~#fTHB9TD;Heby}?;>d~+#C~;SGz0Q| z;bl>z$mx5%udeK~dL*?Q;kdSgB>Mz=eCjbB@Gw}Q>^U7JBoNDQDlO({YoS@Q=GaWf z;Sk6(7EB|2q2U1829F^)7?Arg9+g`ACRI(*sksIaks@NsZ&C7k`_BS$RVn91X!TXf z!B`VJop-)=%q&0eJ&WHwC76UgTmxK)`B=h(Twi6&eT4Jl>#cbvW`Hw&MnU!+%6&1m z@MJehFmfwa!$?_&pmYeJ@LJ-cO*gNith?Y-eYf zaQW-9Ru`IOgPorFlQ_+stJEI?r9-zPUilLKsJjno9l53G`~#`^sb?6g_b16Gnk=qVMXgk`jH$;ZM7byY}-8 z2dlVuiN*v2EdG=1XdJs__11Q*XudSE1s-^Y6x$HPSXrDmN5-u}df2){Y#!WS@c=)^@z3MkK z?k_Y)ADerR9k_t#tsLsS_@a@=_>p`Jas7-qM>3|)aLmn2>4p%KR${?&`-Gh4@?2w2 zx^JUT1mEAjSsXwjiL4ohk|(u;Tppd!x=g9W?QI0bgI|f|;qh(=p=p3G+Lmi-yK(!e zLr#I66#6>mRje0S-(7r!o`GXaTb;`47}hoKn<@)%)XByjG~Em}m)qktlJx3{>*=i4 zKLAl&WmSLCNgT?gaF*x z&Clq#tlRdB$|;Wxk_R&hHw<5ZHIM_H^j&B~HLKQudbHkphtu9vL0MUs1xs~1q9$ph zYv7&Xv{i;=DCEUt2;WytPn;+svKPgvJN!*Kp#`7-UMeUot<+0dJ5PB~XIu<-G#c}q zI*ligz&$85+RaZHe0#d%1*8b!cGPhC%qN4L(4Y^H&lsKE-Djk$tx$!wq@%3@pGkMI zA}-sc9wX4zLLrYUcz8BIo-6(iC-(uSeO`R)-AHw%JS|H0bgdzg8vvI62V?pG#_BE`oK7;%W z^qbM-5Vb|+O4;j{oT5AfRnlNXF%<7)AiPoWa_0dULJ;f-f?yOKC-j6w$dWGTKZHnQ zboMW*shtp*aR#k-g@#5y+hH3zE@Z8hUu)nHwdXMV2&6aaN4C4)-MlwSc=_;!^G|c4 zQa^;{{n2A)n4ci>0icR}>l-L5d$OA86G`NQk2{&)F*7oA+q`g0X~@q2CTC{UC+X6+ zesk5+cy+0HD(}R1Mv!vJk92w$?L=cmaN&tYWh<5ZcHK`jW6ex98FBKdO%tDRy~(g= z0y4ud(xgPeLK?kMf__0KJHNv`fTd59k~cSfif*z&yx`Ft=utT;~%I= zV0!WmB`6&6LJSx6cqO$c~&7_yOiPQYtpnr2A`M@2ctX z<9H<70jqTW&nbnCJK|y%b>U8I?HOZAT^2{!F2F_OZ^6xmnV6uh$Qy# z7F;=xxf{eb9fmKnkRVcfNnx8bWjpyt9aQ|SS0M!U)KoL@(HC|)YRa~#UFg< z0?_e-jAOkr!mFzX$-XBd;&6l~Wj|Q4n=-MqqX6!iSbz>Nas6hSew1(8eoH2&__SS8 z@~=Hf>FNN>KpjuVi5U{r+1PogClGI3T(^GrK8)^wh{s5K0Wf4&%{y6#Z`~7+VK+WY zQe$@6(K3B(p;{A_7Yo=LQV3a-F7)mI#LryqKPt${{S~CM{l8f~{bFM*t6L)Fo?%Ce z;WT4ClNxFa$+HN)Z2BO%aRlqI+&&^h{Ql zTJ~q3Kb9W@xg0%%FE6%1yM&+t9kpvL!bz0;|qC*q{Cx!Ks1W>6)+>eT6+3#XEGQ*a1e_) z3@kx!qCzY4obD5RXCDywK{PN><^c(m^fVHmknlAL{F37$#mAqINHJ#!Ko1Fhyq$x7t z-mE*kQQ$wvzPtm9-cH96lC2u0|Oun6@fBthfSl zt}(HTDi~ge9ToQa(`3Dx!N2ewvnT@0r66VUTk>ms&(D7%E*%wMsJ*S^Iin>fs>$qu zyhp1bD*MKESUfJlM1yQ0S`f@(>%ripTZDQdi!_Qky3qBc+L4XWiNJ-YQ9u((_e*H> z0tT{HVbiow;6C2A^HD1ixV-T#jCJ3QafCHAhh6qH!JSR^>kNCN!Bl>{@G;;eF6kmo zG`7=Tup?p#5bX4J_L=wjj2)P*27AGav1YEU?6omdy2EETriiu-pa_%!@qg3#qY`l@ z>Sro22yS8kNU9yr3Lqm1-r@QON2Y3lVKZzR-GZ^dKe8BBV;|jEc4gjsxyrNfB|m#;QI)nlm&9VY&r0FbvR5l5P!b#SIDj~ zn!0?PO>SmW_tKBoO-`P4?nry`OEp`#V9W%s44P3skWxoMMq^!3@xIg%+tq(0`CfJP zgVvQtFGWiU02^Jd?=x~F8ZcJ3oq;&`Fl@Xrz&fnol_w~fr{)Bqka8}jY*=rf*1U)8 z(@4d3R#jqfVGaQ2I@y`g>(+A1H!HL>O~t~rd1`4LM1@%tSZ-8iD108FdYDIDnozQ) zeA1v1qSLNP(o{C_cZALkV5PUXpdjt8{6538*RY zNsy0Vn?F>Z%xR;{3NiapXRy*Y^yU5j=12`~SeIo)E zuu5mjKCgF93oD$o`9{=j_CUupPKkm-^xLHufkmKiY2XAEg+mu%#eNvCmPnUOfKcna zaV7djL3!@;+(sC-H~<_m2SSsSzzk;sj)Eb1l=jnZbVZ@qp&XvvK2yueLE9a?-#U{M z#3`E4vyn_lS-wah+tJZ=UFthc^2^>Jc}%sp@u!n6ff3c#BDi495DPbSs} zf@|33eL$e@i%-Z2ayhq9AB0F%Eg1>FXMJ4@GvkHEYE#L@PmrdGM`qx-JizAiK<>+E z8C}reNgN!1;o<4&9=k*8QCM)Is1kuE(>OQ}TJi2#(W(?i`N4W=zgTDvjMoS|?M z_`8c6#h-EO5sFnaPxt(paL2EbNRm*YE9lr>(BTM9Av!_INK^v^9<_ZU;OYoRaup#XN=VQ3rBK} zE@P5_Hse|I8Mpx2Z;IFcK>v^KHCK8J157|Ddr+8odR zhuFcmC9wiuPFpRE+_;3UYDmU254z-f`Qykp9l0Ocfo=@Zz};h8NlE*;Ks#n2=@7uF zb<$P^?~R2fuJ69F6#@6fEny~r%>owMdh2@TP#+(kEl{-agL_*n5ny_gift~Zl$vHA zW0w`eOGW~&k<5;lU|nZ5iTBTSg6NARcY5Z z5>{HinOr%SF~=wh8%Ah^9U$Ff+4dhLykEtcyrRq~JAD!IVE5ewxHbHp`$taO_OS`! z54&0x`c?IZy@~5u)V(CtGnr-glv{9q)UC%m6s#TDKI_P{5nCDxNuw{W*{}Pjw{?1% zfD;W!jdub9@(hL46M>A0RA6;7PjwyprtBpF3>%6{kb%dvpX-5;i1hvbCmkTb%h*&( zQc_Y24KmZi3_Qa_?nwx73@(CWt>-0B>#Lyh}Bg8pP$_77>e6S;;1JBIHX&#Cn*`P!uL$+{sSV17RRS&p-a>By z#&jd(DQ_aw{Yb(!Q-X3w@_BQKI#lJk-5N{No!PDRx3#^6t*5BS_>ubd&OM+tw^X$Q zLabK;y~U>Kg9H4d`@tyn=BpT$ay38qsqT@Erp=8>KSPJ%`Y%?1wmq;f?%N+~rOlMYgr^?c*uoQCPGWXAkymd;I@rCUs&QS#Z& zKtV}=q91%T-FYpakW6ZpS_HKh)Dwa1AnH)Pzn^8VX>55vR9W%=VoDlOg`Qz&7-2=- z3H_-LKq6+q{f@w{bWL#UxKeMASO4PN0$}M|*5q^}0s{m4{S2$rJV6vv*l^IZh(g2)qSOY~4|QeR{!q3n}_bjSi#lNNNpxNd1b#a{;RgO$_7f}?N0DF{YZY0pP zaIx*)cI)-CWvzSammq?<8SpoX@;2-%c}tmEvvJ}5AYb^EXrS@|XbdLqaYkCNdW+k`)q1@?R|1gSU>NmGa4;b(6N59sh1Y+v^Hc zxaBwsv*9ae=APOQDW6F<&?AdehI>JJ|RUp@~ts zoN9a-x)a$-8)(ETMdFr{0`YND*}cb6(|LU$9b~M06y!uCri|>N9>IRRdH(T}_k)_xYeSx;Rc`ER;DDA%U%4@0$^z-xE5zvPOvdhL%G_BdVWm={N_UQtU zYq0goe`Fmo#lh_;S)s%|ZLS%1C+!9HvFis>!1fs3Us7@*V>o4fo^>)LC=kt0RmLM9)A|8RbvF|oBYG_@m z83BwKIA|`*gGOBHsHZYn(wF|H6Y%t8+)WVmVSTBvwjP&P4ZR31b;!Kps9id2*WWxS z3QRHGjBx7ez?>9GsT;e7-Dzqz{KZ={I-gGprAW`c*U}ahMmdFMcW54-Y|D-UVLA(Z zpT~(hBAI~x^&3N(8Wcob?@N*c3?>{i$y6_)GL?GQm8z<7h2l|pD(QD8k};)Rb+NFQ zMBT*JF=}dZ8Xv6r56S<|&dWqoBLT5|o28Sg{dPd;LHTik`M-7v(tz&NZNk|l>Rv@? z0LIfygxhos#Aiw<0@3S41CcwDk^r&l1@biU3#^_f3v@i+6CPF5$9yU&*~Ubyki@&@ z%?$vM>1LJmBc*~GT@v*D9u)Xm#DQJcyhfBpI8Q%P3xKIz^*+i4CU))Wzb{I|#ElF4 znRN_^aEO$0(9Qe0#r69numQhyqIjl9fdn*$M&`123v`ozdp27N0)#UUFxdYtD7^TY zc6wnUFMFlpF)+cW6krxGW~Kp2V0v;KHXpJr10&OB56gxk^!D9{tv@^JFSq%`RckNz zbL`Nc42l8e`G+_3Ww%VH4XJ@~9o{h(Z%ERGO{NTthGwu;RTM8ow3irfe%~trfjllG z7@h4qxDgA(V{RDfD)t`se))&QE;6YdA2v7jUxUI%+(hTP@L*rm$}(%sf@|h1k&LnHODu@4GH$`7 z*epiBw5ki|$(QcqBtV7SuhKg&N7p2OjNWR*7KZFsiJUgV-?6KNi2YH&>_erDQ_vd`-=!l&T1CgUZ*05CZaC*Ge53yJz13FP?1d(|u*|1`P^GA# zgh*u80D;X#TT_LMRn-_CU9_>@M@ta#vDM2q7^t8meIWkXhuN*Wt3!0IcoWPWy!V_M zR@nhdPYsxsGs$^t6!EU?0Q}V-Qy6%;AT!deQyHUirtYB<_+Azfw)0i4GC@XwUC_gg zyx2Gfk1ExSKEIOs9YqbHfU-EnjE98xpNRwfVdO^oqU?KnvHmZQa@o-+>z82kOFc#@ zTJoFADYJ8W5zF-mVOsTG*(_xI&_;n1v0HM5*f%{7}~{$b?U(&is2MjoMeHZ zEI1ox#F0cB8W4A?WQ4ntbV7b6j#i-~)M69nsX{PpbnE&^UY5!B)J+N$>W+Zk9#+wG z5Sj7F=4_juj}tVlHl^~<>AZ$LJLHBcnWqd8D?WJ`qZcwFz1_^RaQr8ixW!48$D0~H6L04T5LH~f+vYJ> zk6QY@gD@!@*uN!?o2qUZL7uD>nr8GDH#=hR=)DIbt3nZVqMI{>U7(TN3-8qdXk9nu zy#YL!T?jFXlWyo~lt_G7NcD|Wv{CR0Gk?j}Ue;mRbQAq}7ei4k{omKEk3^JgSw=Kf zh%IF)J7>ZJCW6SC{5xdLJ-euscqE%uN0@Htla{dmyy4Z3*gowZ$aLixbdo_XO%^^& z8{zMx?}?slex53r34}8nShIM4m&3B5lk~uVBwEnNf z@rN&w2~i61|2?3+jFo&kn%t}jmC>A?cx?<4Ijvv`VV?_mlc=zyCoJ4a{gg2!>BcS| zvAWTds?HWyH5Pw#7IEHU`%mCzd&5tttfNOtJc^4y{2+BQ2p0f+w{M?pZ08Na^F=EgZu>4WHJWJvvdcs9^lAv_le zEdh$q*_-;h58pUqJ?=J)I6%A2>4=9-u*9sQG)Pf%t|<@{N>`J~5B58k12c%MYgm5o zWDCgH&3m+_nJwT!FLqyx2(goNk})C-P5TpjA}(k+pBmhrJo!E--}o!$ZwRgQAY&O( zhP$$y!XtESx7!HKiB|`1rhAMwSzue?F9U<{wvZz2V?D` z9tGI;aP-lXsO~7I2Lco$@1JKs;!Bl6-D4yQ`|DJO-WyU_=soA-^?uD`o+KOhS#2Fc zR*YdJgvQDCAQLqh;5lpqMD_`IL9G}xVJsY<7_2ml)FEY#`x5(H7)%=CG$E@oXIH+f z6qcLtP2OWY_-#4l^D?W#KTv_N0)VRa!-q=k9e=ns;xco4ls2GBBtaB>^MOosQ#Rog zI>v^`=7XK`!yYs#X_6bs+_pOf5MUT$?58|xa6r4SwRdv!=rT{;yL8s$<<%r(t)*ji z^ZgLdKh9Z9L+4CG&7gDH?f0Ln*%mHMMM;?hf(ymu^jcDU(UL-FWl) z#s|25vHe&A@528Ix!h3=PRyRe)`v${p~{L^k_JddN`D02zwHQbPcit^_H5ghpbM9% zB%9cmy>D5BCjKtcmoSIwSwP6{nor%=F4o*CD7T~z&uO7YfKoPem#bl4e2g%Fwr*Z) z>x&J2-SEipkQC(;F1Y7wnFLM#-I+cUAt#dn4&G1N8;hNH5&TTXivxxMgVVoVdU}{^ zR{P}(vlgiTTL+=;Spa zvXU%z%Wb;6!>pbzd%wHd(hRB>)JRgiqbZCh%T2%bR12&kF|Z@=*;TBV_SnRop0E0E z&%%VY`cQ*Z^>PLGbeup>>yrRUe*}kjHQUEZMjX%+Nsh86UAwuc9FdQj%M% zC)`GWg{S*byi)Lw?kSN|oQ2qQHUs33c|xQpqkEwgUjV}it@~vb!I+zdW$=3n=D;9y zlKA1~3|;HLP}A%6ZYG%OM&a3A8g29L#etYY1rHwQ%_VKLvMV&u#@*Zal+OJz%kr~F zmCt#$TXnVkT@5rjO?C_P9RHmSI^g~~KPOqf_`lt`LjXmMkkjIdaK4LmqTCu+~)g`X|Mr3Q|I5c3+D`mf}l~v4uFPcah>$1kg^sy?|Ue_*0h6IC8d_J)z9|DOt2HA zaP!jwLf4eeFEw<^Zh}fGt4h*c-fXILOl>ado6rJ;OOITl)x8~Ip?OvAma?=Oy%oYp z#fu3!_T!@O42cZs4ZRZS`A&Xi5V^=PY}^o^<`Gkh^UF8w3+c2Y6mqNlcjf(0c!V^Y zyvYJv04aCD85msm>J^N4qh3(+Xe5kJNe4TxZIdt!*LJ`p$8)|fC4 z!K?0=nZSt}T8~?lGBf;+ziN+BvS@``R!4R@`P=N%6XV&nFO=eNyMD(&&*m9TwP#T( zEC1V2nup#aJf<|__k)V(1&_bCJll8}ymynB*P~U^?Zb<#)U?z`DfY*hFJl7kyh@k= zR}D@`&0A>R#2g0ZBc;exN}j-PIop#f_O;Hi3%BHqu^qEe{a8cJhaQr`phb4wDSSfr zG3N6s3kUk>EDD$*;S$$>o61JhHDM zDy=uTw()uSo+SV6**^!ocC5~8wl9hkBtGStZb>1-53)J_n%>KQ& zc*xH~Pu9Q&glAH!Dd0u^uS4+pAf4B~C9b{5<2!wN%jJ5Iiv=KSnbip6iCVn_HQ8~* zF%Svc35rRU{ZZPfbirYeW_7M*v0kO-i#%QI#sD$GeC7WrAIJA~fG1v@2z+7M^XU{M zF4g}n-(#7kyN~S$Gtn|8L$3q~RoZB%7vF~n^J@fA}W%5c}J9HBUtH8To`@|wJvl*4-CET^(VPXgJ z1!F-&I8v0NQh&dR=`cR*1ii`6Boh>XluFZn~_atQCWJ8Iq@yPT@)wYLVXH9?g!)^u3 z>pzypD*BOXAcu@-^(F@;w2DXiyZl3{RF~EtV&Al)R~e?taKSMmc6~&foWp!AQ>T0d z-Iv&AD@;jqK}ag`!!PeNVc$hc2mD`D9dZ^{S9wf&u#-e_VT(u8r$!^fzkmmO1g)0@ zRWu2&C_v*d%6A&3&M2>tq?ZaM-Ts0{Z2Oo91RZ6qRE&{bcS6s|4RquzO`L3>EbTRt zgp^a2EF4AB9XIRog*!c>6Q1cM$IgfT&3cf|HzJ<%T{^Ohl!df8(K@~FNtb1%I4C7k z$1HUJ8zs0V+Yi|6q;ADQ~xeFWzfdB9)%L0plDP6_zde7z3 z`Gy*c^0pj}PtWPu<0CeSg9$YxQ0cOzs2WtNTm4mda52ypcw{wCB+;XyChc$tISp$? zSbavlUl%`>7H8w*TBKWC+DkqtjcnhHmbq=%{;t;Vd?UM8!T@R6RnM=gnjqefquiGT zL&_4z=sA}2=Bu9mcN*Gl^y@{*0$u9Z0L?4r{Z$hG_%mivxIKEm+NXfg9I3#(`{tuG zj(U(K+2H$c&`E7r`<}7-hO4_xgDGeVq8qbPW=m;`XsV%;(~ZT4HH3Z*KOVb&5s9}H zW;2TUn6ie9UowsL@;9sJaROtVa2qH%eG*!_N*Fq3m`D#*S6vBa!WKQT0>VV^a(^y{y$4qI#}2QNcOY#4C2D zv#npW20}M1KPU{>>(*ZF?i=*h)F@D^fhqy<6kwPD!3b4C+;b76y|IgYw#~X^<{|b7 zxZ4i<5wX|$jzeo%utC>`Vd_Ar_hLaIT$6P7s_| zyw1ZjYlV-`PCfSUqTUiuqh$`z9QsNIex@I>iF~l5duYNLJ~B8r^N(nu$fxi)Kc|d3 zN?Y5IPOLq4s>tvAk8|7gwl2ech2>L3VVHzzQ-o!h^i@@-5vJf@O1w&Q`{mhi6*kwc zzxsA5P*6`Oy067`iAqG1AiStW$I6;GCHFSAk5L%67Ht8JPsXNhC*Dt5WzRyeh?j{8 zEd7ZAF<(Au%rKgo1p=m_wU1#9JYGp-T*?HRazC_Ph4zsTiEJDkGV_j80nc?j3<(Hs3Vkny*H85lRj1m=M+`gR57l;C2ZeJV z)4OE?|9AID&e;b23KO_&?i~wgU4S+P0n!JXD{^(_OTFCQi(0)R2y=dJE4^o;1V(l+qL(J;z zotQJD;oUZ|g)dW7_2HDq)yKxGL3eqX79tk@-bMu~c9>=y$szs8wi@%lBk+2fF7lCW zenhgI+rK@~c~GDp!Hb56R~%G&|Ev|g?*^vjfrQ(A{`G$7L@(ZqygfOHZ#RlqXlT))|vIlpK8ca+en$tsfa+0$%uhvBdy%T)*j+Aa$pbOWIMN#gYws>F6D6wDBo7l z&aQE!5`iV%Jtql9+;CAMG|-q8&S5gWmGo;kY9nqr*G^2ybckfR7ZX8rBuwQ?thwU8 zE!Dy6?~yVyCpa7%^bQykKCN>9X4<=;VKNgtM?$3@;PV@^HhDd5L*qu33tR2E5VtS) z>$wpPA56qcO0CuC)w4;kcEHzh6Klq76c9r7O{k;O)7vM9+SC+2TGf!h!>FAvM?1s3 z5CJ^T|5t1_e>K&^OLW9Dx!mpx6ih1;@U%V0sUkA_(mI(#$T7nCz58TrXNmb}9=2gO z;0dqu{&|8|LruRO;B(OBXJveZ`E)JXlf4q1^!QR@Xae!l!9g8fT{sapLpcrM2QOgi zdVU$0@nh3Z(Gcxi#qx;?>~7>Nr>I#}TVqJKcZE=h&TE)Tm_T5ZYWz(zIUb}s{wopG zWXvY5&X!$ijN3jK$TI?0>-V2STW&!;J-?+1rsYNqTcoI8#M1rn=RiO53oH`cHh(-;$ik7lUz0(+1)%vsuO`NW=ghu22rRwHLg#WJnkG$`rTT^{tBx_IF zmUsVmnV6cFJdSyO_YA-RGyRQ(g9-P$mQ%A5FKoEW6CI})j`CMZAzUj(hw&}D&C3B} za+c374l+~c4^}dyX|$Vk3CkUZ`=EP#ijQx2A_cop7WebZ#Y7plZ#~r)zD}&_J>m=I zERH1ahPAWB78`UeBcuXbwkg{C4`%(GZhDBLF6SF6`i|vK%4V*^g5UlIx!!J8(i^HQ zSR;&KQAVTkqh;j~8qW!tZ%$=(5>Vtq1d`y`M7H*SQpl`FQo|BcPXD>Nw0a%;GiS+G zUAIEnUz8(W=Cu8Xs*PRu4o9`SJTh8|wZ`@*!lfSfWhy$&`gdz)-U9DqN$wW~)v|EN z%JB%7%;HbuW@1&Ez6pyfsK|bd|DHOiphn)1e|&g6*fog8=qyUwn_0UZW-G~_57doIs|R$==HGCKnG** zAK{UT^iWHrw5Rx=S9Q;!-w!9-G^+5- zG1yFzApVV{<*7J7G2D56vG-{qEd8Ql(0+v6cm`^1>u6aTv-rNY_5HIGS}d&jkk+cW z$p0vPZZc_?%;77wPAx3@@c?B;DsC=pa1Cx>v;0zuI^Ss0ybKZF@_;AT;CIE_lQDV- za~4<^+KI7A#9JC(`iVV|nh zzABQDbt^06gO6lm9LC+&rvf%uqtBk^4IEXTw{DliFYN9MNj-wu=MuIz<)NLXO6Zf7 z>~RwDPJ-R1QX|&M+S>NQHH!zeHBu{kY`#W1-(0a2HG2Jc`-bk>#BC%Al+PuI>F4*x`Q!;B_>qt$V zpT9FaX(9zO>ZCOZ4nBFn%A8kMM?@IkU*Myjs zO3Z=o;&*+nX04!v@nf)SZ&k1f$F+GUFXBebc=Rp5)v~*&v!EaD;G=1B*Lour~ z&0F8rR{A*P18b~BUI;l?&B3EUOdZX7@0)^>0T|H)=6D?9H6N>w(A%JYpzbPQ%^Kv~ z{Sh+Dj#l3`$2+{UPt|GUAf^*Qqs~r?upDkaL9yEo%}Qmc|AmeX4<*c&{PW*gL1Mhz z5f1E~4$R}>9F!qTk>=vnTaHd5_QadiyAZY?@=1PcecuKy1Kgrt{`;U{5KwOH*s5KbRG2k>C@m)AEvzgRg@@~(06xf zU+%~$bbR(-c_%(D)sK12wTF9k#4o>-TB$D-{hs*ix8J@ZOj{eeSb5#&kk7FoQJcZ0 zv&V8GX_~PwK_!b%4Eq`=AFz3Ub(dOk0_oc|EOzLP_AVSU-PVEYgZMoHH#ngG#rudrttWhz7<5#S~&kD zG7NkAg-7gba`+hmLprN!hFQ?{@M*kSz*_}3h3>};5?gDyd408`%JgTic+uo7+}${nTov$$Bmx3;+Z#}1No5JIoN^}n*E&wG;=q>`RN({Rs;PyhEcy!ymA zl2>gPwMjFD+8Au74P0<5F5BnhyC4wnQs%$c*2b2ea2C?b<149Ph2KXlq51cRE8(Lz zm)?ibqu_i&(u$$Kac*L4UjuSbzk4{wI%ya7;=Sr@WZ3v&$67EvJUdJzlR7#37Zb^r zwEQ(i{=G#5#d8n~1Mu~_MBH9mlp&akkAA{tk0z>whLRjps0nu0{Nile-<#p^rWfDi z|5qj%aOE$>=uQ!2*E8M1&DG&QJi8J<$A_8f5$jT*lpBVH`IHND>lUVDEEBiypA0^d zha{Ky6KPWTpA@sZv3Vhsm$&41Z{U)RG=^u!L*HcovpLXe2v2)ylF0mILxxwV6EJ6k_}e{h zCfb@YTLV6MUOXh~QCV=y>kc*C>BrcBtShg9Yq~*rE-m0UyBE|5j3rs?KVNfb27e#A8qx3jeL52Vzxe zH2)F1%E`^&-J5XOkoq7Uu2`aJnHLwXPK7=BM|RL}mk?E-=b6Lf`{rJ<21ANOQt9;^ zY<_%vZ2YY)L`;e4Fmd=PovkZ%FZfG@I4Ljj2Mw3xkK-XnYSbcWPZkF%398-GWVlLs zE(Mav56ylIqfgU@L%UZ@4-%jMJBuO%K|<1YwZcrbg0i)OOs{=XpT)^^F+O}*CqmnX zp`sco?~C}~Sh>Fyeoo2EEP^^DQ3*ODt%2{9@?caXvvz*aHf7_V42@V#K%>x?O`4mY zicYdMlNM?jqAsXCt8H|}GUd2*R%vQ&-a;_LY|pcd6bO8}3xOqI(G8h~EH}}^2>$AG zO()c^q@tqf!Obf?h&X|@M*B352}nY-|;EB|8CthMihl1K&U@DaUZ*nc<-&g zv<3Pma9svUUzOVH8aYY2Lqw;7n6C%PgI%Ik6W7waBi_yn!Gl4VBxGrEX%0?0CsK)o z=IWm_=VVEZz?qI+>9NON=X_~L6m(w`FUG&!NxvU;v^x0)%9_s;?@asDkS+=r(+`=$ zhZSvLBg6*H@&|izVB;ykN!u2H?R)e{`gU{?@iw< z4UGxsdw9efW_pRNGfl^Sp@%d}9mj95E%0g2y2K0*|~88AD0R&9KY4W#o_4qfdR z*MIdN#dypIWZytr>WZ7|U_g~CF;}zdrkL_t89RL19v;zSjC#m>MYE%e6ASgcMy<;E zpFK$b^pH)etZrZ^V?_9*Y#zCyGU8Ma|Gkao3X$npfs=pl#)*WH;yrB2coT%Yl_7t0 z#j>rsV2p=ci1skR;@nFbsX0)@c2IQ@Xg8p~6$>Oq!1v6Ho%ZEMVWlMb(D;BFxxgQL zs9Ade657pFd8=WW(phn5gTjAJy0hsyo_|7_=uMALvfwD2QW;JDP?@lU?Sgez!Ca#k zp@VT?GyW~LNIWV}K7%(6%i?H`&k&t>n51T*r?pIS$xOGWQzvlYgOHAgKl;k675y!R z>PTlDqsOWDbvfQkve!?Y|BbQX>bB0W&@9UNDyOHDOy}a*D*E~snh1-;00PDyEgp{2Ow@#W!Doy8hw)2{| z7_wcK{kC)+o4__!+w4}7?$@XC_Q#69>JZYgK{&dZ?LwT9V{lD<%cRlN7Y8Ph|%Cjgf!5M%p> zKQ%U;K51sNfZ9``@=f(pfn1|b_1W09Ndowic5T|b7bL3Rn7b*iY4F5}g&A|4B@MJ+ zN|1yV?~n%#PC6ql4=l(Ds(+2i1N>v>Rwhl&COSenz7KW4z~xsNc9R)G3RPZuub(`U zBa^;?uUo_Qcuu$mm>2qnHaq2*kXR9;`OG|zch(6HGz2={@y0rHbcpLVvd zB^LLN*%NmXIpeAfwtE|oM51K6dii&y1!5gcMXd&*bCBAfmQl2L7Qz2G%kibG0NUybkDK!_*}je9lCs~ zET;3aA*<=<_v{|M!)#y3#R4SbAT85eTWRmQ=o>CBpXp7zh6Q@_3;7)({?LvrM9@St zw;IG+P4gKaHIe~=tdDY0vmh|x!g`kGvF3=%x#QmBMegxLeGZ}V^W60KTttsJ#zO}Y z8PQs!&SIp?EOJ;I8Dy7knVQKq&tfB6cR#`!eK)2>7JBdl8WVl%om3>|$!UOvN;K1l z-Qm+{Heak}Q-C^Jb;wrNNLyE0LgD9L_Zgu?_(1+Zh(lEUN7wgtnNpE@?iRhl0fItl zQ}&m%2_s|$pI6Agn|IJE18D!-^gv@w8-LBop4rWxAB_|eL?zgI9eKr+m}FZzou}rN zuKeB!A1o*n7Rj~%n`><91Xx!^_U7=vSO_9zH{z`rPMbQ!=e*Z7A&v(OcL`N3I?0!9 zZNl$P;T?4=8;U@C04L?FpZ?3uixu_WqZzZ$oZUP| zRUHJ@$88l|6g9Kw-Z;;~C7I8SXOF3m+GN1PJibn#wCT-#((+mD&|VmkouA{eRWRAvFN z-+4DSp4b&~FO}zAtf7Bf+1Bl_?e$2b90lR%ye4EB0T)YJg-S(~g| z_|3u#Q8NFqPf$H}#^kuiE8dh808^8PEm2Y>*?xEq_i}}3x2hgK3^6Ub8Xy=BPeJ#* z)oq%aap_P|C!*h8lu0qQA!lsW9*jL+ynKQj#@3#-_NP4s=!hc#xTUx5P(^J}iB6+B zLayo%+`N+(eMRD1dv};YX)z%#Khw6JBBC`{?oCdyO}$+}sav{%DCJUE`gkYXn8Pz@ zE%5l1zQ^&=Kzx!^)y7oOSBTV!3( zKtLiwCey6LDxsK zNEdb28zdJIzvA8EM_)bPD6zzRa}9dtpHK{A(Xaksaz_V0610|K0-mwVSVukTE!$Co z=c!?Fw|*}ad3l>Q*(3+{o$sh04Vrj{`|Bt^i9hPgpz>ctv|HoktEtTU#ZBdpg?qmgA^gxTr+rmj^#;e*q>8i;{Q|jrJH_cy*r>QNTRDFfc#-GNipxIW zN|CvqpaOZ$Yje6WV!ymr_y1cQbOVSu8US!kI%FL*xP~#fCc{gCo&&wkN5^u$M}sK? zbJsUJ@BZ|>qWP?{Ho<9$m(Xdogc4?+>UrqH<%h@_?l$^Woj!y^Zq=kO1~-p18jB6O z2jit~h&L9gRYLTh+#PA=5hU=dmW%oZK44;dxAmd;n8Dl3So1&`NrubuoLp&do-aD1 zm^n^gJnve$WezLRtLhtUm})k)Covy>H`)I0*fJfZi%(*a(D49!~Pmw&nO{U2e;uZ9_lut)Lp2Q{I) zeifU6N{q$lOE5{36HxlAg{<7X>64hXhXE3`(lU4Y%81=`R<}w;`&ij?iBs!3pDEK4 z?*1K7%)8i~&NJP%o=WiygKjcW$_|t%W$-3fO4xnJS-rpdn1Nb0U^fE+Kr^6J$V$su z&ngB*UIvtQ7yL3dd0!ruw3D2f&}faZh1mFH)<-MxRC@{l4-5h+ zWq?+`R8w!aiiRz_ufUQL1c3?m6$1cIf7GzaM7eg!*}zG{oBGg8Zh)R;#hQ9~{c+1C z!k