From 97f6816da959de17946e1471b3917d98e01be46e Mon Sep 17 00:00:00 2001 From: AceVest Date: Thu, 11 Jan 2018 00:19:26 +0800 Subject: [PATCH] ... --- arduino/clockintr/clockintr.ino | 96 ++++++++++ arduino/ir/irrecv/irrecv.ino | 179 ++++++++++++++++++ arduino/ir/irsend/irsend.ino | 46 +++++ documents/ArduinoClockInterrupt.md | 126 ++++++++++++ ...26\347\272\277\347\274\226\347\240\201.md" | 45 +++++ tools/AceBox/AceBox.xcodeproj/project.pbxproj | 12 ++ .../UserInterfaceState.xcuserstate | Bin 93552 -> 114416 bytes tools/AceBox/AceBox/AppDelegate.swift | 12 +- .../AceBox/AceBox/Base.lproj/LaunchScreen.xib | 25 ++- .../AceBox/AceBox/Base.lproj/Main.storyboard | 2 +- tools/AceBox/AceBox/Info.plist | 12 ++ .../AceBox/AceBox/SecondViewController.swift | 76 +++++++- 12 files changed, 615 insertions(+), 16 deletions(-) create mode 100644 arduino/clockintr/clockintr.ino create mode 100644 arduino/ir/irrecv/irrecv.ino create mode 100644 arduino/ir/irsend/irsend.ino create mode 100644 documents/ArduinoClockInterrupt.md create mode 100644 "documents/\351\201\245\346\216\247\347\272\242\345\244\226\347\272\277\347\274\226\347\240\201.md" diff --git a/arduino/clockintr/clockintr.ino b/arduino/clockintr/clockintr.ino new file mode 100644 index 0000000..25f0363 --- /dev/null +++ b/arduino/clockintr/clockintr.ino @@ -0,0 +1,96 @@ + +int led0 = 7; +int led1 = 8; +int led2 = 12; +int cnt0 = 0; +int cnt1 = 0; +int cnt2 = 0; +void setup(){ + Serial.begin(9600); + pinMode(LED_BUILTIN, OUTPUT); + pinMode(led0, OUTPUT); + pinMode(led1, OUTPUT); + pinMode(led2, OUTPUT); + + cli();//stop interrupts + +#if 0 // 设置timer0会影响到loop函数里调用的delay,会使其失效 + //set timer0 interrupt at 2kHz + TCCR0A = 0;// set entire TCCR0A register to 0 + TCCR0B = 0;// same for TCCR0B + TCNT0 = 0;//initialize counter value to 0 + // set compare match register for 2khz increments + OCR0A = 124;// = (16*10^6) / (2000*64) - 1 (must be <256) + // turn on CTC mode + TCCR0A |= (1 << WGM01); + // Set CS01 and CS00 bits for 64 prescaler (参考上表) + TCCR0B |= (1 << CS01) | (1 << CS00); + // enable timer compare interrupt + TIMSK0 |= (1 << OCIE0A); +#endif + +#if 1 + //set timer1 interrupt at 1Hz + TCCR1A = 0;// set entire TCCR1A register to 0 + TCCR1B = 0;// same for TCCR1B + TCNT1 = 0;//initialize counter value to 0 + // set compare match register for 1hz increments + OCR1A = 15624;// = (16*10^6) / (1*1024) - 1 (must be <65536) + // turn on CTC mode + TCCR1B |= (1 << WGM12); + // Set CS10 and CS12 bits for 1024 prescaler (参考上表) + TCCR1B |= (1 << CS12) | (1 << CS10); + // enable timer compare interrupt + TIMSK1 |= (1 << OCIE1A); +#endif + +#if 1 + //set timer2 interrupt at 8kHz + TCCR2A = 0;// set entire TCCR2A register to 0 + TCCR2B = 0;// same for TCCR2B + TCNT2 = 0;//initialize counter value to 0 + // set compare match register for 8khz increments + OCR2A = 249;// = (16*10^6) / (8000*8) - 1 (must be <256) + // turn on CTC mode + TCCR2A |= (1 << WGM21); + // Set CS21 bit for 8 prescaler (参考上表) + TCCR2B |= (1 << CS21); + // enable timer compare interrupt + TIMSK2 |= (1 << OCIE2A); +#endif + + sei();//allow interrupts + +}//end setup + +void loop() { + Serial.println("High"); + digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) + delay(1000); // wait for a second + + Serial.println("Low"); + digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW + delay(1000); // wait for a second +} + +ISR(TIMER0_COMPA_vect){ + cnt0++; + if(cnt0 % 1000 == 0) { + cnt0 == 0; + digitalWrite(led0, !digitalRead(led0)); + } +} + +ISR(TIMER1_COMPA_vect){ + cnt1++; + digitalWrite(led1, !digitalRead(led1)); +} + +ISR(TIMER2_COMPA_vect) { + cnt2++; + if(cnt2 % 1000 == 0) { + cnt2 = 0; + digitalWrite(led2, !digitalRead(led2)); + } +} + diff --git a/arduino/ir/irrecv/irrecv.ino b/arduino/ir/irrecv/irrecv.ino new file mode 100644 index 0000000..445838d --- /dev/null +++ b/arduino/ir/irrecv/irrecv.ino @@ -0,0 +1,179 @@ +//------------------------------------------------------------------------------ +// Include the IRremote library header +// +#include + +// HX1838(用金属包住头) 面对HX1838正面从左至右三个脚分别为 OUT、GND、VCC + +//------------------------------------------------------------------------------ +// Tell IRremote which Arduino pin is connected to the IR Receiver (TSOP4838) +// +int recvPin = 11; +IRrecv irrecv(recvPin); + +//+============================================================================= +// Configure the Arduino +// +void setup ( ) +{ + Serial.begin(9600); // Status message will be sent to PC at 9600 baud + irrecv.enableIRIn(); // Start the receiver +} + +//+============================================================================= +// Display IR code +// +void ircode (decode_results *results) +{ + // Panasonic has an Address + if (results->decode_type == PANASONIC) { + Serial.print(results->address, HEX); + Serial.print(":"); + } + + // Print Code + Serial.print(results->value, HEX); +} + +//+============================================================================= +// Display encoding type +// +void encoding (decode_results *results) +{ + switch (results->decode_type) { + default: + case UNKNOWN: Serial.print("UNKNOWN"); break ; + case NEC: Serial.print("NEC"); break ; + case SONY: Serial.print("SONY"); break ; + case RC5: Serial.print("RC5"); break ; + case RC6: Serial.print("RC6"); break ; + case DISH: Serial.print("DISH"); break ; + case SHARP: Serial.print("SHARP"); break ; + case JVC: Serial.print("JVC"); break ; + case SANYO: Serial.print("SANYO"); break ; + case MITSUBISHI: Serial.print("MITSUBISHI"); break ; + case SAMSUNG: Serial.print("SAMSUNG"); break ; + case LG: Serial.print("LG"); break ; + case WHYNTER: Serial.print("WHYNTER"); break ; + case AIWA_RC_T501: Serial.print("AIWA_RC_T501"); break ; + case PANASONIC: Serial.print("PANASONIC"); break ; + case DENON: Serial.print("Denon"); break ; + } +} + +//+============================================================================= +// Dump out the decode_results structure. +// +void dumpInfo (decode_results *results) +{ + // Check if the buffer overflowed + if (results->overflow) { + Serial.println("IR code too long. Edit IRremoteInt.h and increase RAWBUF"); + return; + } + + // Show Encoding standard + Serial.print("Encoding : "); + encoding(results); + Serial.println(""); + + // Show Code & length + Serial.print("Code : "); + ircode(results); + Serial.print(" ("); + Serial.print(results->bits, DEC); + Serial.println(" bits)"); +} + +//+============================================================================= +// Dump out the decode_results structure. +// +void dumpRaw (decode_results *results) +{ + // Print Raw data + Serial.print("Timing["); + Serial.print(results->rawlen-1, DEC); + Serial.println("]: "); + + for (int i = 1; i < results->rawlen; i++) { + unsigned long x = results->rawbuf[i] * USECPERTICK; + if (!(i & 1)) { // even + Serial.print("-"); + if (x < 1000) Serial.print(" ") ; + if (x < 100) Serial.print(" ") ; + Serial.print(x, DEC); + } else { // odd + Serial.print(" "); + Serial.print("+"); + if (x < 1000) Serial.print(" ") ; + if (x < 100) Serial.print(" ") ; + Serial.print(x, DEC); + if (i < results->rawlen-1) Serial.print(", "); //',' not needed for last one + } + if (!(i % 8)) Serial.println(""); + } + Serial.println(""); // Newline +} + +//+============================================================================= +// Dump out the decode_results structure. +// +void dumpCode (decode_results *results) +{ + // Start declaration + Serial.print("unsigned int "); // variable type + Serial.print("rawData["); // array name + Serial.print(results->rawlen - 1, DEC); // array size + Serial.print("] = {"); // Start declaration + + // Dump data + for (int i = 1; i < results->rawlen; i++) { + Serial.print(results->rawbuf[i] * USECPERTICK, DEC); + if ( i < results->rawlen-1 ) Serial.print(","); // ',' not needed on last one + if (!(i & 1)) Serial.print(" "); + } + + // End declaration + Serial.print("};"); // + + // Comment + Serial.print(" // "); + encoding(results); + Serial.print(" "); + ircode(results); + + // Newline + Serial.println(""); + + // Now dump "known" codes + if (results->decode_type != UNKNOWN) { + + // Some protocols have an address + if (results->decode_type == PANASONIC) { + Serial.print("unsigned int addr = 0x"); + Serial.print(results->address, HEX); + Serial.println(";"); + } + + // All protocols have data + Serial.print("unsigned int data = 0x"); + Serial.print(results->value, HEX); + Serial.println(";"); + } +} + +//+============================================================================= +// The repeating section of the code +// +void loop ( ) +{ + decode_results results; // Somewhere to store the results + + if (irrecv.decode(&results)) { // Grab an IR code + dumpInfo(&results); // Output the results + dumpRaw(&results); // Output the results in RAW format + dumpCode(&results); // Output the results as source code + Serial.println(""); // Blank line between entries + irrecv.resume(); // Prepare for the next value + } +} diff --git a/arduino/ir/irsend/irsend.ino b/arduino/ir/irsend/irsend.ino new file mode 100644 index 0000000..c30aac6 --- /dev/null +++ b/arduino/ir/irsend/irsend.ino @@ -0,0 +1,46 @@ +/* + * IRremote: IRsendDemo - demonstrates sending IR codes with IRsend + * An IR LED must be connected to Arduino PWM pin 3. + * Version 0.1 July, 2009 + * Copyright 2009 Ken Shirriff + * http://arcfn.com + */ + + +// arduino ~3号引脚接940纳米发送头的长引脚 +// 短引脚接100欧电阻,再接GND + +#include + +IRsend irsend; + +void setup() +{ + Serial.begin(9600); +} + +void loop() { + + // 电信机顶盒用NEC发送 + + irsend.sendNEC(0xCD3201FE, 32); // 音量+ + Serial.println("+"); + delay(1000); + irsend.sendNEC(0xCD32817E, 32); // 音量- + Serial.println("-"); + delay(1000); + + + // 小米电视遥控 + int khz = 38; // 38kHz carrier frequency for the NEC protocol + // xiaomi increase volume signal + unsigned int ivs[] = {1000,600, 550,1150, 600,600, 550,900, 550,1150, 600,550, 600,600, 550,1450, 550,1200, 550,600, 550,600, 550}; + // xiaomi decrease volume signal + unsigned int dvs[] = {1050,550, 650,1050, 650,500, 650,800, 650,1100, 650,500, 650,500, 650,1400, 650,1350, 650,500, 650,800, 650}; + irsend.sendRaw(ivs, sizeof(ivs) / sizeof(ivs[0]), khz); + Serial.println("tv+"); + delay(1000); + irsend.sendRaw(dvs, sizeof(dvs) / sizeof(dvs[0]), khz); + Serial.println("tv-"); + delay(1000); +} diff --git a/documents/ArduinoClockInterrupt.md b/documents/ArduinoClockInterrupt.md new file mode 100644 index 0000000..b89fe99 --- /dev/null +++ b/documents/ArduinoClockInterrupt.md @@ -0,0 +1,126 @@ +# arduino clock interrupt + +## Clock Select Bit Description + + +|CS02|CS01|CS00|Description| +|---|---|---|---| +|0|0|0|no clock source (Timer/Counter stopped)| +|0|0|1|clk/1 (no prescaler)| +|0|1|0|clk/8 (from prescaler)| +|0|1|1|clk/64 (from prescaler)| +|1|0|0|clk/256 (from prescaler)| +|1|0|1|clk/1024 (from prescaler)| +|1|1|0|external clock source on T0 pin. clock falling edge| +|1|1|1|external clock source on T0 pin. clock rising edge| + + + +|CS12|CS11|CS10|Description| +|---|---|---|---| +|0|0|0|no clock source (Timer/Counter stopped)| +|0|0|1|clk/1 (no prescaler)| +|0|1|0|clk/8 (from prescaler)| +|0|1|1|clk/64 (from prescaler)| +|1|0|0|clk/256 (from prescaler)| +|1|0|1|clk/1024 (from prescaler)| +|1|1|0|external clock source on T1 pin. clock falling edge| +|1|1|1|external clock source on T1 pin. clock rising edge| + + +|CS22|CS21|CS20|Description| +|---|---|---|---| +|0|0|0|no clock source (Timer/Counter stopped)| +|0|0|1|clkT2S/1 (no prescaler)| +|0|1|0|clkT2S/8 (from prescaler)| +|0|1|1|clkT2S/64 (from prescaler)| + +## Compare Match Register计算方法 + +arduino有三个时钟计数器:Timer0、Timer1、Timer2。 + +arduino的时钟频率是16MHz,所以每个嘀嗒(tick)代表1/16000000秒(约为63ns)。而arduino的Timer0、Timer2的时钟计数器是8位、Timer1是16位。因此这就意味着就算把值设置成最大的,对于8位的将以256/1600000(约16us),对于16位将以65536/16000000(约4ms)的频率触发。因此如果想让它频率变得更低一点,比如一秒触发一次就有点不现实。 + +除非可以利用预分频器(prescaler)来控制时钟计数器的增加方式: + +`(时钟计数频率(Hz)) = 16MHz / prescaler` + +所以当prescaler=1,时钟计数频率=16MHz;当prescaler=64,时钟计数频率=250KHz。 + +如上表所述,prescaler只能在1, 8, 64, 256, 1024中取值。 + +所以: + +`(计数器触发频率(Hz)) = 16MHz / ( prescaler*(CompareMatchRegister+1) )` + +变换一下上式: + +`CompareMatchRegister = 16MHz / ( prescaler*(计数器触发频率(Hz)) ) - 1` + +**注意:Timer0、Timer1的CompareMatchRegister必需小于256;Timer1的CompareMatchRegister必需小于65536** + +所以如果想要1Hz的触发频率,则`CompareMatchRegister = 16MHz / ( 1024*1) - 1 = 15624`,这里的prescaler=1024,因为prescaler取到最大值了CompareMatchRegister还等于15624,256<15624<65536,所以必需要用到Timer1。 + + +## 示例代码 + +``` +void setup(){ + + cli();//stop interrupts + + //设置timer0会影响到loop函数里调用的delay,会使其失效 + //set timer0 interrupt at 2kHz + TCCR0A = 0;// set entire TCCR0A register to 0 + TCCR0B = 0;// same for TCCR0B + TCNT0 = 0;//initialize counter value to 0 + // set compare match register for 2khz increments + OCR0A = 124;// = (16*10^6) / (2000*64) - 1 (must be <256) + // turn on CTC mode + TCCR0A |= (1 << WGM01); + // Set CS01 and CS00 bits for 64 prescaler (参考上表) + TCCR0B |= (1 << CS01) | (1 << CS00); + // enable timer compare interrupt + TIMSK0 |= (1 << OCIE0A); + + //set timer1 interrupt at 1Hz + TCCR1A = 0;// set entire TCCR1A register to 0 + TCCR1B = 0;// same for TCCR1B + TCNT1 = 0;//initialize counter value to 0 + // set compare match register for 1hz increments + OCR1A = 15624;// = (16*10^6) / (1*1024) - 1 (must be <65536) + // turn on CTC mode + TCCR1B |= (1 << WGM12); + // Set CS10 and CS12 bits for 1024 prescaler (参考上表) + TCCR1B |= (1 << CS12) | (1 << CS10); + // enable timer compare interrupt + TIMSK1 |= (1 << OCIE1A); + + //set timer2 interrupt at 8kHz + TCCR2A = 0;// set entire TCCR2A register to 0 + TCCR2B = 0;// same for TCCR2B + TCNT2 = 0;//initialize counter value to 0 + // set compare match register for 8khz increments + OCR2A = 249;// = (16*10^6) / (8000*8) - 1 (must be <256) + // turn on CTC mode + TCCR2A |= (1 << WGM21); + // Set CS21 bit for 8 prescaler (参考上表) + TCCR2B |= (1 << CS21); + // enable timer compare interrupt + TIMSK2 |= (1 << OCIE2A); + + sei();//allow interrupts + +}//end setup + +void loop() { } + +ISR(TIMER0_COMPA_vect){ /* TODO */ } +ISR(TIMER1_COMPA_vect){ /* TODO */ } +ISR(TIMER2_COMPA_vect){ /* TODO */ } +``` + + + +## 注 +1. 1MHz = 1 * 1000KHz = 1 * 1000 * 1000Hz,这里是1000不是1024 \ No newline at end of file diff --git "a/documents/\351\201\245\346\216\247\347\272\242\345\244\226\347\272\277\347\274\226\347\240\201.md" "b/documents/\351\201\245\346\216\247\347\272\242\345\244\226\347\272\277\347\274\226\347\240\201.md" new file mode 100644 index 0000000..54d8db4 --- /dev/null +++ "b/documents/\351\201\245\346\216\247\347\272\242\345\244\226\347\272\277\347\274\226\347\240\201.md" @@ -0,0 +1,45 @@ + +## 1. 电信机顶盒遥控编码 +||格式|编码| +|---|---|---| +|电源|NEC|`CD328F70`| +|待机|NEC|`CD323BC4`| +|频道+|NEC|`CD32A15E`| +|频道-|NEC|`CD32619E`| +|音量+|NEC|`CD3201FE`| +|音量-|NEC|`CD32817E`| +|返回|NEC|`CD32A35C`| +|确定|NEC|`CD32738C`| +|上|NEC|`CD3253AC`| +|下|NEC|`CD324BB4`| +|左|NEC|`CD329966`| +|右|NEC|`CD32837C`| +|上页|NEC|`CD32BB44`| +|下页|NEC|`CD3231CE`| +|0|NEC|`CD32E11E`| +|1|NEC|`CD3249B6`| +|2|NEC|`CD32C936`| +|3|NEC|`CD3233CC`| +|4|NEC|`CD32718E`| +|5|NEC|`CD32F10E`| +|6|NEC|`CD3213EC`| +|7|NEC|`CD3251AE`| +|8|NEC|`CD32D12E`| +|9|NEC|`CD3223DC`| + + +## 2. 小米电视遥控编码 + +||格式|编码|RawData| +|---|---|---|---| +|电源|UNKNOWN|`5E7DB3DC`|`{1100,500, 650,500, 650,1400, 650,1350, 650,500, 650,1400, 650,500, 650,1350, 650,550, 650,1350, 650,1350, 650}`| +|上|UNKNOWN|`3F9089B2`|`{1100,500, 600,1150, 650,500, 600,850, 650,1050, 650,550, 650,500, 650,800, 650,800, 650,1050, 650,1400, 650}`| +|下|UNKNOWN|`B23FB1E9`|`{1050,550, 600,1150, 600,550, 600,850, 650,1050, 650,550, 600,550, 600,850, 650,1050, 650,1100, 650,500, 650}`| +|左|UNKNOWN|`8753BA5C`|`{1000,600, 600,1150, 550,600, 550,900, 550,1200, 550,600, 550,600, 550,1200, 550,1450, 550,900, 550,900, 550}`| +|右|UNKNOWN|`69893291`|`{1000,600, 550,1200, 550,600, 550,900, 550,1150, 600,600, 550,600, 550,1450, 550,600, 600,600, 550,1150, 550}`| +|确定|UNKNOWN|`76A77416`|`{1000,600, 550,1200, 550,600, 550,900, 550,1150, 600,600, 550,600, 550,1450, 550,900, 550,600, 550,1500, 550}`| +|HOME|UNKNOWN|`F874E0F8`|`{1000,600, 550,1200, 550,600, 550,900, 550,1150, 600,600, 550,600, 550,1150, 600,600, 550,900, 550,1150, 550}`| +|返回|UNKNOWN|`DE3AA631`|`{950,650, 500,1200, 550,650, 550,850, 550,1250, 500,650, 450,650, 550,900, 550,1500, 500,1250, 500,900, 550}`| +|MENU|UNKNOWN|`F574DC41`|`{1000,600, 550,1200, 550,600, 550,900, 550,1200, 550,600, 550,600, 550,900, 550,600, 550,1200, 550,1150, 600}`| +|音量+|UNKNOWN|`8753BA5C`|`{1000,600, 550,1150, 600,600, 550,900, 550,1150, 600,550, 600,600, 550,1450, 550,1200, 550,600, 550,600, 550}`| +|音量-|UNKNOWN|`8453B5A5`|`{1050,550, 650,1050, 650,500, 650,800, 650,1100, 650,500, 650,500, 650,1400, 650,1350, 650,500, 650,800, 650}`| diff --git a/tools/AceBox/AceBox.xcodeproj/project.pbxproj b/tools/AceBox/AceBox.xcodeproj/project.pbxproj index 617ae79..c4d9a97 100644 --- a/tools/AceBox/AceBox.xcodeproj/project.pbxproj +++ b/tools/AceBox/AceBox.xcodeproj/project.pbxproj @@ -128,6 +128,12 @@ 50A4F2741AF2154100DB7E36 = { CreatedOnToolsVersion = 6.3.1; DevelopmentTeam = VR7L9Q5L2E; + ProvisioningStyle = Automatic; + SystemCapabilities = { + com.apple.BackgroundModes = { + enabled = 1; + }; + }; }; }; }; @@ -285,12 +291,15 @@ isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = VR7L9Q5L2E; INFOPLIST_FILE = AceBox/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 8.2; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.tencent.voip.ace; PRODUCT_NAME = Ace; + PROVISIONING_PROFILE_SPECIFIER = ""; }; name = Debug; }; @@ -298,12 +307,15 @@ isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = VR7L9Q5L2E; INFOPLIST_FILE = AceBox/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 8.2; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.tencent.voip.ace; PRODUCT_NAME = Ace; + PROVISIONING_PROFILE_SPECIFIER = ""; }; name = Release; }; diff --git a/tools/AceBox/AceBox.xcodeproj/project.xcworkspace/xcuserdata/Ace.xcuserdatad/UserInterfaceState.xcuserstate b/tools/AceBox/AceBox.xcodeproj/project.xcworkspace/xcuserdata/Ace.xcuserdatad/UserInterfaceState.xcuserstate index edc0110c060f8efbf370b3abd9159bf40d9d7d34..b20ba3ce735579d526b617186c3cd8eef8ea94ee 100644 GIT binary patch literal 114416 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 literal 93552 zcmdpf2Y3_57VggMuB6?SZAq3W2?2v?3D~$7k`PqZwm_B?6&E0EguNIAVL6ga36Sih z_ue};A-(tBZ+e5Yo8EixJ@1=Ytt`1wa`WEzz0189A)WKjnKNf*&Y3wgv#ci;O{U7q zUZem8DVky^meP%xGN!m~>S{TWjK;g$rpA{YBzL5e?NcL(jup|>aw0S}74NZ7;OI-Q zH?zM|ddff*QdY`FRZ>+{HC02^Qgu{4HJ93(+K1Ygnn&$N&8M2FAQhq(QA;U_>YzHQ z6;za3MRijNDoL%O)>0d&jTE8|r;etMp^m5esD5fQbs4pVx}3U#x{|tzx|+I%x{11t zx}Cb4x}SQCdWw3QdY*cLdY5{SdY}4$`jGmF`k4BR`keZL`iA<0`jh&L`WsLH00<0# z13VBw0oWZ(0DFLmU=o-Hrh^%v7Sw@yFc<6%_5u5Xc|ZgWpb<0yH)sZ4-~;X80I(D+ z10A3XtN;m+1S!x9)`1P+FmMDo5}XW92WNnD!1>?;a2ePFE(ceDE5Wtk2JirQ1Uw3! z08fHv!E<06coDn?UI%Z3Pr+B`f96@4{*4Sg+rJ^dj45dARy2>mGiANn!+arz1R1$ryJ zjeePag?^R(FZ~+*5&aqcIsG;L4gCZCBmFl+F@O;mBa_GEGZtn7vj;PgnZ(RsW-+sw zdCY#ye8$c=7$@UmM5c*Z$aok()55eei%uCG6%xlbB z%zMly%%{v}%n!_u%umeE%rDHZ%%5x?o6i=oCf3Ya*g{=}u0}Ukx36x#&Z%qAxpf|$ zPZ!XIb#1!Ex}~~^u2a{gJ4m-m*P~17R_oU3Hs}u19j-e{cdYIN-O0MsbZ6?$(Vefm zNO!5OU$;efrS2Nt^}3sMx9aZD-L1P%_n__(-DA2ZbM1>~*XcREQD309=xzFO`rY*t^^^5e^)vK)=}Yuw`bvF` zzFxnNem}iKFY2503-w<8{`!!n$zgE9qf2bbmkJKNd zKVE;5{#5-L`m^=t=`Yk@qVLmRroTdewf;K&jrv>kx9jiH->ZK>|FHf)`X}^H>z~ta z)xV^FRsXvFE&aRt5A+}FKhuAy|3?44{wMvf`akr48=!$T7z~0T-(WUa4Py-a?ljzE zxZm)Q;ZeimhNleA8eTBGXn4i&n&C~uJBIfS9~nM1d|~+7@SWjD!!L&44S#WfV>ms> zb9tPJE9Ay-rgm}}z}b4$4h z*U5Ep2XU*o9xlnP=GJi=xWl-^xudvaxf8$_+{xS-+$OG%>*qFemvLLT%eia0>$sb_ zd%63#`?&|W2f2s1r@3diXSwINZQQHef4TR$54aDxkGPMyPq;6*Ke#`+zqr47iU&O8 zi}~sNp8RZn4qw4n^L6~*{5;;yyZAZ74{bP6Xpv|f?HT1EEGIKNC*oD2ulS?=n~co8-$I*p~7K;A|T;#;RxYK;V9u~ z;TYjq;dJ2);Y{Hy;UeL3;R@kO;VR*3;Tqvu;dbE;;ZET$;Su3c;XlG-!VAJy;bq}9 z;WOcL;S1qQ;Va=g;YZ;o;b-9&;df(!(PT6mEyhBl)o3%0F^)BkGfptp7;BAn#(Lvi zXBp2no@cz;c#ZK|<8{XCjW-x?G~Q&q!+5vxQR9D%j~O2~ZZ&Q*zG(cf z@eSkq#*d9(8^1ArZ~VphyYa6)CXdbI^7y>zc{B26=IxocSKh3=*?A>-rFnDm%JRzd zD)K7xYVzjh&C6@ZYs_oPbLTC{Ys>4*lk=A6b>*$di{+*Adh=H2t^YbpqyFBmeyc_dw%DX-9;k?K4p2>SQ?}fard2i*tm-k`bM|mITeV_Mp-k*7Y z<-`2^d`teg{N3{>+g#1(UPs=|&|GfOm@~_OlHvhW(>+^5Ozd8T@{D<=&%YQuoiTtPYU(J6b z|DF7I^WV$=F#p^9AM^jn|1 z;4SbK1PYcGEGt-E&{eRaU}eFYg7pPT0V+7W;HZMr3eGCHpy0xSiwZUu+)!{!!5sy6 z7Ti^EZ^07<&lJ2+u(e=Y!OI2j6?|0iS;6N8Ule>@@O#1ECdR~?bSBPZGmSS*G8LJo zn#xR7rn#nlP4i6qnHHLSrm(5S)M{F4I>^**N|=(SlxdCW2-7j96HF(XPBNWpy3ll~ zX|w4v(-zZ}rdv&Sn(j9}V0zH>i0OILi>B91ubbX5y>I&3^u6h4(=Vo9O@EjTW~13; zHk&PGn|ZQ%nt4z2UglZmQuAE%JhRIznj6e+bJ*N&mdpp5Bjy$6lzFXrgL$L*P%|>0 zWIoM&micV+Ip*`tTg+FPuQOk7zQKI6`F``m<|oWgnx8U1Yktf8w)q|NyXN=I@0-6g ze`WsK{EhiX^H1iV&A*s`wQv^RB3O);JWIaCYOz^%w@k3iwCriw%QDL{+frqzw(M(h zS{f})7Oy2_S#IgFtgu8a2U%8HVwP2wq$OopYgupEU_q9{Ek{^Ru$*W)$#RC}JWIc2 zv*j|&^_CkfH(Ktt++(@d@~GuMmd7lQTi&z0Z~4ITq2(jX$CghlpISb%d~W%|@}=cl z%g>fyEPq-4F60XNLZQ%DXeyjiSX?-@a9ZK?!Wo4#3->JCtFW%HzHn~gyh3N8tI%8M zEA$ucUl=Zw3y&^5uJFXdQwmQnJge~B!V3y7F5FbOx$yGBs|v3zyrJ;s!rKb(EWD@i z{=$a}A1!>m@TtOQ3tuRFvGA3`*9zY(e5dgJ!Y>QID*UeSm%?8Q|1A8=3avUTZxyUY ztI2A%j(SN|tY=xzww`0%WbL!|Td%fWW4+dTtMxYP1J*~Z zFI!)+zHj}&`l0o6>o?Y)tUp_SvHoTK+eX?m)@oa9lWZ$(G21Fzw=Hh#v88NlZHL;9v>j_Z&UU=*WZUVs zGi>MB&b6IqyU2F2?JC>VwrgzH+OD(RWxLyUkL_ODeYQtzkJ_HHJ#Tx>_PXs2+efyK zZJ*e_vHdoN8pDh+jN!)cWAeuoju|^<_c4>gQ@eX(v27Gb@svOrsRGK<>J65zl-DH} zd4r|tc%fx#M=X*|_EC9Mz5*4xk1|nag+a80fLStG-7c{;o>-aeiFC-Wct`IlxjQA9 zrj}JUh_zL&%98T(y84nTS50k6okJ`ysjjK5a=EI?D(hVJTG3;usZ_L|YL(7SZDoy&IxS5xtMnsKoFeL@!n9B-6Nn+#z?T#Lj3cp3tNZ z2Rup1w3|y_9_fvxe+#A}DLL5?Pv9Sy*gI0u)pD?7g}h3ZOuMy4yF24+?1@CAyGzFP zcgf3oyWHK&lT}3z^me=CWGdPnNk!w`lBvuS zNv53fRXs5|C3pI9RF_Q2-6>THM|=uNu2o1@*)44q`M=KR|k?@q>JvShM45^`i^PdwV4N|ItCDY;WJ6$Is& z+>w$y)3w`5Ovz4puA&^2lX6ia)j%~;O_ZBjKrK`Xl`+aVWjAGlGEpf~rYKXD>B`J) zl$R1HALXa^rvlgjmqn8DVsEfCA;%(E&kCj36su&iFOSCLxpU^s2`A-5a*n-2p0h@? zyg88$xg*{w&q>AOG4h)uz7~@>;%iIS;$M0a@q@NfVXB2{rP>y$M%^7*CAX;`lG)&01blbN6x>zttV(zyz1METT<=L{XCpg8s-jb@U z!z)4|;M0Z(SzTM}bU3OjOUlc{s*Juv#E-!s1vD^sFSHvs8gxasMD!4s57avl)aQ$%50@XDOKhuWlFhHp;TT)okN{V zokyKdT|iw(T|`|>T|!-|R4Mh!D&=_PTIB%*AOgh*)F9A~$L_K=+^tL9E^%QrRhm15 zm$pRZHR`A)XU28ORGY)%?oP>x<&h5A(Ho6*%89`k!A$p*Ofzyg2NmYWi*M?8+oANt zyR`XWa0Rv}O`F>xnWm2>Mljx+=#ZW9PFXUQj7I2}yCTWnWHx=xX!HYwc>akbqRDu- zR^6GSG1~F?1mBr)#O}sftb1bxQRn>IS7& z$uZ+wi5b^OrYTyV?ZlIC$?B-QCOLP`oZ97`%PQo$&PYW^nFe?VbthGE>7`1YYRC6b z_e!QhZ?L&H66IM-r&G@8pZ?E!&F5d^&s_-GFREBk9vf9 zRGFuQbA@}72)DOnS~7Id((EC*W0P6-_&drZ@*F8~-+yVcQa#44)PJdpEz~yZMd~H$ zW$G2`Rb@YAzG7D#ic@iIpca>Csy zcc-GuqjDlCnZ{$&lGDF9946SOyWf?CuS?S^;)TTenxCZpY5_TE%H7FieX zO@({95|K{XpNOyONi__(b&|=fmKu$B`xEii(M~xbnTp+xfqouLC3-tjy$Kl)AI^Ap zDiM#xFx42h!x`yb9ZBZ?pt?JsP@YSbnXR3wzi6T~)A*A5N;NO-i*Ko)sEWqfml~&I# zsw}J9NNNFS%F_=Rzyh7JzYIcZejwh(azM0;`z}Bh|)CfnP3i8u?6f2_5!oO zY)}G9m8FWL9H>N;WlF~u>Ss_6DnKQuqDmF7(y7SGLCQ)c_U|>TWEzX5x5rX)qC1k3 z2dqajnOySfXou{GBwC`$=(3o+bbV!Q-Rz>0@`|eJ(&}{M??-tygZaP?9Kfk8SGtrH zN>rJd)zpg)TIDM7_m&(SYRV`jJ5wM8PVo z#Dl;}5L0@U)ykTF>NOAtJ&LHTRW@K#p6GUolHcPFh9uGD4*3F7Q1pn-klW{#7K-h| z5r}PmyEm92C>ny$;tskU9x)&~Ll{FHGFF4No4^`now8p2_aR{YrOF{>G6fsKp-VGU zDe(>a!A9&Isy{0LEy?^GlvDjc0f$rVVQ(-frzF#u_3O)K7nN|FyJU9WIs2r*&%HeoI=P3c4LU}fUQ}+yE7&SSHu(A z6cS7&qTO98@tL?XXDLXl%(+i6X*Ii!)J)Umjo=PEi!TH>gIlNt z;5Kl(GF>@AIZ2tSoT8kz1>6bl0(XOZz`fu;K`ueJp`UXd3NlkryeS_FgR##bHn-z?J#|h5KLvX6>&f03HtE{A2 zY$z+Ka#d88)H$oGOYC)Jl`faP-cep&nT_)d!8vsZ&Q3;fU@O5neF#pq!&z5bS6g4= zs;#aqsj@dzlsKyD%1at5L{~+by{fFfp$`8EMQQ(vIRCJY`Ohs1pNG6lKwkOiv8A?RD zlO2g@Pik>zdJ!%h@U%y}JLR?hNNR<0oOYqBlwAG zAMtm|ROo664c3dM%U{568D0LaT%dLIzp%dkRxTVyU*KWziCXy+m2=WC&;WT21`5i> zX&9JKc{afU<&xoG9*1L8n3I)DGdhIhz?UXoIakBo9qvI@Y=RS%zD;nV(!T>u4X5BT zi&FxglrJfbFDnUH@;b zMUnXuE`br^io&J9LR`@sl~$#FGh7BcfECKhP0B4wyK)z9s!47~)4FAe=tyAznI~Wr z>*OHiW@YB0WT?KRtEptULkm%1H%w3!{V)!Dz+~lC{V`8?ojT;rHpku zvOLV}Aj9f*xZ)ivb3+WRg${x1b9`)gC_F6fXwC0=C)+=TN5JDp_fO%8@FaLLJcanD zcPsZO_bK;d|8(j4+OirF71Y&ht|2@V*Y_;tUS;N@sJE;nR#_tVXx<(?51v2B+tcK| z7+y(LTm>(Im%>f35B9^&@G`iCYJ^uP4=N8Uk1CHTPbg0*&nV9+6O|XPf>*(-;WhAD zcpbbR-T-feH^G~gZOZG)+sgaOXUezA56UmfAIjgk7IX)(pofO_w{~c0cuqq!kxb=k ze8_qryq6U7$Ug|CgK|f_yK{TxJVeU*k7RNWbsu-EI`*C(mmHJ3A}M)jH6A1IkN<;e zWUc*hhn`s+8h8|0gQ$A2W zR6bHZ-c0XC?@pjTQ9f0n{@RN4Z+i=nDpb|h*JNa$PS3)!&!A`0d(wL;pDSM| zUn*a1rf1V7ME0+hZ~kA)e%E(L-97uDZKNry>gzJ1*U|e9EBZWoKO*{f%J*6e-u2xn z2Z1Xo0#R32o`Gnf7Y^HU9=e$-rG3he%1=s6`57C*J*O^x>A>Qn7O$_XteRa^Szlkf zv3-4cSs97VHA@K7i-yHpOfR8I>7~lA%5O?c`CY|}H%gCmFJ50!Upu>~s-n7P(8toJQWcle$I-{r zC(tL-C($Rm5Yc!VF(%C$7_hkI-}iP{$h2lmC_tZx}V-cS^DVB^koR-BT&#s zy+&W5hzOVvFo&1NW1Y#RTF9$Lux5jo#G%xE^mToB<3?+(8|XW5Yu!lSMBhx`Lf=Z? zM&FJ=Ap%weYzT}&U@QXT5Ey?seJ6bvX{~$d`{?@-*bRZ*k=j~C2uwy`3U00cMTP(G zH`D*n#{8OQpQN9`jr0`#Gy)S4*rShrmVOR_i3m&@sg+1HMZZY)PRw-7@6Uj}PQQaY z?;G$^`Yrlx1g0tvBQPC-nVac%>G$aO=?@Ut3xN^@$`Po@i3sRVv44TUw13;lrN2@O zn(?o@O!W6^Nqhb~QI0x}{Y3vpRrJ&2@O-X(jA!$HI-mZ7{!@7mfmsO5R!8sdvP)9y z$b4E^Q&X!A*bHQJgSi{>L$8bj@mmx_wMAJ+OQ%zM| z&Xh89m@=lEsbDIZDg@>tur~txAh0h2^AOk%f%%s+HB2p2$J8@(nZ22P5U?ZQK){KB z3jq-UHv$XDdV)I0%AM|%yeexWb#aoU1K@9ylF8I5ry|kVfd79$vLhDlh<10CL=tjD zGMQBJ5}eAA{;D7rNv24anA~Yk$dLo$tK|gVPba^V{>wCgwU?&Xl^HkrESdIjJKWCn zuD>tMGElJAD9wyFx3%|Y@LCZQK%ik06GEU7*RDWa-b~ldrLK=MZA|;62sEjyjfXRf z`|#euQnd!2XflPR)yi4QNV(-KW1>{W7N&#gWMpPJ)5WYnz=J?D0$v1s2>21$e+zRE zvyzE1tC(&kjz9o`AOax-S`cVOpbbklM5B^vq^1}~yV}^dN9BHXt=cM@xiJ-93LoULB41Cezt5>X%NOe=DUkZF1>L z2W-AH*%OPVaQBo-U27eawB#{Rpf; zV3nfnV=)ggk5ZOC=3(X$1fmEW)W`gXc?^M-2*eODAK+>U4GfNWTf8NNftw>;-O*Gp zPMMlKpv#HVp%-I|IJb?U?EGh3<4VwI23`y5Ks_6 z2pqnJ)v)ktvsm{5EyOin^l7o>*jEGfCAe&LY#wAlq&^RC{Dm<#tFFC0nZ+iZ`+<8-%Ef zwSx86o52Lu#*Sgfvg6qC>~8Gt>;!fXb|O28En+9LQ`lm5Dm#sx&dy+GvU{?7v9s9O zYzbS+&SA^ga<+o4WUJU}wuY@`>)3jBF1t6o54$frkKK=*&)QiB>ttQ5$TqNzY!mBd z7qAOi58KRoSs&|X_h$oakPWe6wuNnF+t_w?5xbaO!XCgbWhM4NHo`7rJJ?QEW|y;F z>lI>W9%xnn~k$Q?7?h;O|mJrmtD=SVb`+j*hAR$>;`rtdnkJttFVYYoIQd) zl0Aw&nmvX+mOYL=o;`s*kv)k$nLUL)l|79;ojrp+lRb+)n>~j;mpzX?pS^&+kiCe# zn7xF(l-_62q; zyN!L3eTjXUeT99M{V)3(`#Spu`zHGq`!@Ry`!4$)`#$>t`yu-g`!V|o`ziYw`#Jjs z`z8Ao`!)Lw`z`w&`#t*u`y=}k`!o9s`z!k!`#bvw`zQMs`?rqL0UgxQI!4FpbUMAx zpyPDBPS6>3dAfXEfzG5e>nyrLomFSkjnR$Ojnj?S?WWsZH$k_DZlZ3Iu1GgoH$_*h zo2r|po35Loo2lDVx0h~~ZnmyOSE`$%D?{K&1dc}F7zB<*;5Y=1N8khmPDJ1&1Wrca z6a-F1;4}nIN8k(u&P3oW1kOg_90blq;5-D*N8kbkE=1rW1TIG45(F+qU=sp;2=pVc z8G*|X*n+_22wZ`{l?Ysgz|{y`gTS>2T!+B*2;6|cjR@R?z|9EUg21f^+=jsI2;70d zoe128z}*PkgTTEA+=syZ2t0tmg9to?z{3bUg21B){0D)@5O^GcClGiNfu|678i8jJ zcou=@5O^Me7ZBKrz%~S4MBpU^UPj;*1YSkpzX-gB!0QOSfxw#xyoJEq2)u*9y9m68 z!21Y%fWU_ce1yQq2z-LTrwDw8z~=~jfxwpte1*W*2z-OUw+MWP!1oCJfWVIk{Di>I z2>gP;uL%5x!0!nBfxw>#{Dr{Z2vP_F1R;Vnf((Kzf;t5C2pSON5abaQ5Huo~hhRQ} z1qhlDG$Uw1un<8jf;I%lAUGDmaR`n_a5n^ZM{ojydmuOw!AS@fAvhVqDF_xLI2FNZ z2u??E27)sY+!MjQ5S)eJYy?XXEJbh*f@KJnBUpi8C4yB5RwG!0U@d}m2-YJw7s0&| z+y}vZ5uAtMehAJ-(2k%3K_`MP1VscJ5Nt%S2|+i43lLn0pa;Qb1ic9Q5cDIsKY{@S zg9wHY3?tZrU@L-c2(}}*2*Je&EWp=ce&g+k<0Fpg06)@5&`LIbvRNQNT(wF{kmFRJvqvvWjU!u>_dQULx2O$ zrr_2z&3=St>|mOpYhl3W3u#miLRCD3D(v_B0wK{Q`91bfgD=pW!4(O|?t?j6>>jsE z%8{UnP|g4(gB;g87!*U2-|k!}HQT-J1~C|t!U2!u4~Px!Hcg_1gll$&OKf(CE@^-_ zD7n3oKj3qPogv8)_PRWx#_H87LypXB*dTiC4v#4Lypl_7wtHPtKn(iA0jHR$%>IO< zJX6>(q>|g~4!P|f$?Xk>>>iI4vNvY{esNr5mf)^86rY4Re% zI&~1MFVrLkh>q1l8$4Nk>qx>yC)Dlh)aESXJA+Wp9D&j= z2AbVLT*08)dYUX}6SkrpHkau4_}XzBNgkhSGaC7Mgnar)Z!Ib^CXMylTfgd^9ygQDL~hRYnOA10JjKss#&k1784%$OJmd!?|~-QW@%G@1WH z7^aTEkS5L@8lFf?vrtZS%dw*7cxP`+-mszB=L&m7$!l-U3<*yY$_XP-21E8hMt9GR z3K|UgG7YnpP)-~HbkJ=05+NQ7JkjozWQ!>Z1VP#+Mk*#lhufEW}5Euu6~6n3V9686PHVwO|+@!+a>T#~8* zt#fBL>Su&{@<2gDNhOCpm@$Gc2cwH^Y40}J-t6#s)R9(eif;&Y;Q+eFC3$_4-<_fO zo=}V#pun|~0={s_?adJVM2Myj5Mdokt?p10HaoA&9&kw>wk@~d$ZW;3oOj(0{XFpWy-KDYGb$OGVHbk40vA4RBaE!kY)QG7amkG zjT97d{FO^zMCh~hHZW=v+b741w3a9)#979mwM0%EPaiBoI$8`$A+aq)dY%hAtQzW` zgns;hQi7s0ls4KdhfhD7&}EHKxo|l)GiR_2VQ;2whUwJ$ior6p+5^Oe9AxO#gf2^6 z9+#A5!u}i~>Im^P;E!~yjNmIeHW2T z!urAIxZGaJ;r7}Cn%A$NN0@iZW_F1UZm$@`&Qy4yOW6rwQ8uC2COX3*5)fy?3QZ^% zA>U&J@|^fw-$-a@Wz!BwPR^jYNYLYwf?_D-_GW@*{Q|-{Ih!-1TK~dEjFO|?=Alvz zbi3TyP46ePIhq-eDtoXA62ct)4-l$jpFbd`U1MJ$*YaBkb8&VJvY5jme>jvI)au(u zD=w!X(vW0bC}S&2Mk`Kjm9%4}HKas1a@3$2M)M%kT}B9V3}m1t19EA&G9jOyU2$yM zY7C}M@I!%=6sCHgglY-$b}Il+mgm4-EsLkLTb zUj1Q*$L$qG72|C)E24q88i8+74bqbcO>#cZ-EN~_tu=~TFD6`t03VnjGg$~P&o=pj8RuXV zp{U5B!1IL=_ya!T7Y-WM zFDEP$b6Cx58<9Q zEO)47G|u}8XX&t$VRzaR&NQ}u)*oE zdmE*pYsMb2Ma;C`qdSMzR#zjnkWNa%%0QU7S()MMae}tbj>?u^S|$;+)7K&f?2Va_ z<|zVIy?rRWe2xciXGpSp-1e-+IQ_E(WB!g|WE?4?u}0OpNNlT_*9!#Bv6FD5BWtxI zy)6UyA_1)0F+f+l*WT=Qs)4jqlj)V6siNDP9$o@?fj&F#)8Jm)nJVIig#ZZx@!-=K zus2H$9$zco!pc6Ym{@w%7I*hWmx&3Hda} z_X%U=_8GAl0TIs%X@@{V_=q6X>==UAha=)CepAr!J_CeIX>+^@) z&F)3&PDXmAK4-lCg5Z&pccYI5xLOVNU`T2n*iq1bO}Oi}FAe4nH3dYwD`;=Pnz4u6 z15NxLf!Tphk72aPa(MImkw8`Km_%W3z~}Ku9-q&jQSdJWUGN{i2P z<#$SW{tDY0iNTT8J`Es`0Lf3H^-YX%p@p7d;hSC_S=I_ zoQ|S~ky;&Q5s0A^RxU)a$rlJoqBoq$5iyh!#(lS=LUo=>FNJHH=V}0#)g0vnYv=&2 z34xu*S+g{U(b?8Ea?h(GP$PHUVW3ot(-cxm07mXZ8UUUv((U8)`z5i>Df;n>UPiNX z3DC%mGXhW`6w+2z4f_&^MI-9Cs3g5FhPU8|Gi~=^|HkX{s%sp0j8rogNJ`B>n69pX zWMrLB3L3e`4lO8M_4G>-Flr}8YT%|TRKh>X4jF%b5K+?j1mgO9+?+hGA! zxNH&a0nO_+1PItrEA}Vw1 zAbY7(^7=w}AaJQ!U1V&|G;rGpN^FfJ@ajR4KaP(-VFSlSV2?p^dz;)2Hx8yeBnL36}g6!QDWV^!`#%m;ag0tg%fFU!Bn%3yq z32@aMNdvijP7-vfVF8XavNDVe2NAi4cAJqkk_9a``$O%L!{^G3*Q*HJ&PbXuqy}F& zK>S9#6K`8OeK`AXAQ#HeL!gItqLC%dKnI)bE?=uQ_9O|AxNF*U_Y z?;567)nRbg{S#TShcFE027>9@HCeG&IJEkQ5y+jf{wynUH{<*}cSy}h8w!3n0T1n( zyxy?KL$=^TK0FcQe-2Z`QKX3AP85-`t#q=gdyyC*Lu*6W<7t;10lRad7!orh_pzje zoiVyh3F`O|5JTaBH#;xEa00<>+!d*{HDtdXXRb7f!GTHs5rVc4?GQm7x{k5BNep9CKx$&m_=0(-B9I-Yd4^)h}((IEUa4U5Xib^vSYt zdoZ2h8P?XG4d?$;6_5Z;43JJEy1ZgAqk@YF^v(?F85IyQNeWaTQ}as++%9&%U^wV^ zJKer;aG;wH?cx2Th{#SFvO3wjy;{naN6aV%o5Uz?z!p;80lQY7Hd<-3G}+z2X?Y}r zbcoAwB`K?UC(9x;H?D>1c98fR4`Kd*+Z)mn`3%<(>|GiF!rp<7=_2lV#(u6Rs6&18 zkxe~gKVk1eudfxK7O*!q+cSta5yXa_&_Pz`33~&g-PuG2@vP)#{BOyU4*EvWVJ zI|$+~b)2w@=&?I8dnJau3Ea-ivsrp10^)4XW-*l6fim3pk0ored%~Hn{op@VAvv?) z$fUs-9wCTBL)R?Z$yz%gRxXKc?vR9IFUck19Rj?kn=zfowqIicm{A>$wp-kRP}q*Q z1T;LYiJ#m-`7&@#ZkJ0OK-5eoBi}Owa8%RIl~0|(++Owgj<2C1D299uQnTF|(6%28 z&lAw0D=?#I(b?8k);5qpI;1w268?PZ~Vg& zvb+zB+)mbvo5Y|yqxH9UQac%QQ&)`CIn5)g2V+7$r%&5}HN3a$vS&q@8AXvGR-L-E zF7hEMVbn<_NBw>agm<%Vd%x;C3~N zk`wPZdVSukm9yVS2`+NJ5MLpH-^3Z%M=KdPLPw4(I_)95$A{05rPGV;e!tu4^JXWF z8U7@YO}h%|v4_3RCU-O5Xv)e(<0t|5K%jX8Y3Rw650|au1v+ zO_z;zSa}|%2D|IH%q48p+thN78~J-#~gQr(Rd!*lEaSvDp`B$4BDqjbyUYWK?f5sM=}3MyIw;%c(aS z3?q|TJ?wIjH%_Cg<&uo!m#Hjq{_LS(yI0%$hJU19>@|~R zYE8ZBEe-!j)U-qH^o29oh@5(#L-Qya2+AG3iD+uwkWLiDIq>*ED#_2mDQpCJU>s3z zfN=jK?1f^xvk8Y011HHi^@@nLe}wDy67fZRbP@Z`qI03>QnxcSjjMM_1pjBnG>RdA zEB^nC`KcFB`2S}mG%v)NJ61!I&&kaqIN~77yf|$%)UIy1XIfCb3uEsc z#nO&3lOb8nJJYO9y&7Ym9YrDtBt*rDak)_Hl^Kqmf^vI9VxYn9)J~G*gpulv8f8NP z)uhdw%u!WoInIrG)keh-_S|DdDx;PFmOkyuQv!G5z*}_ODcq@&c7a~{Hp0R8RQ7YH zai`;FsnYlCjX*Z)>r~vC-1$_+W!zcZ+1xqYx!idOUWVWn1TRPM3IwmbjJtrlkh_Sx zn7ahQs}Q^z!P^nM1HsS!+!`x%TiSRgg7xyHBw_*|C zZ3vkC#q-ZIl8Z&Rd)p=VJmuNMy@24IS$BkTFLEzY0p?=_??&)0#fo5mvHkwb8&7?1 z!WEhy$Igd&%MpP!@Y~({RlpQ;Dft%TW5>>W&Zp*8AyV(f=Dp1xw?4Wc} zRW7m-G$c8aSF?As_rP`nZurDQUd`Ce-rwB`%#jlhc{O!+7iAqj@sL+@d9xEDc0$%+ z6AyVcp?7D*%xqVVlvc;9sl3@6pxYBOgE?|m4X@_#W+w`44>ik{M#zET)$HBu9nkH8 zW{Emn4h*j*@ct9TK`9};nzuWug$~oTNf#O|1A$l5c(XGQhSYr|+|e@-cr}@KRHMp4 z&eG{fd)2&}$UCZDb1<_SpA2t9_NsX`jd$jdP*0l%Hl)M6Or|nV3H+fXz%#+LgUcVz zACYspK7TZSGF5Roe++*te;j{2e*%9Ze-eUUAowMMUm^H4g5MzcErQ=&&Y!}c%Adxc z&Y!`b$)APb_Xz%tXak}-MDvIi5M78PkWpS$AUCo4S45I>=9Pq*>V@q&FFB0xT*Ghy z*G|S~>43`_>4_|h#-jKFdhNdbosG|ilV+6gZ~8FxOiPm;TWZa83BQG^*ur1RZ{qv- zett858G=6`_#=WpA^0%Q-}tmgwFhPV0|C|JpTfsA)s28YlFm<6?`d*5OR*Q~tADC49+$ zrGBAm`CH1fiT@7K#;lN;|B?TR|C#w1(FKUkM|2)}OvCd(d?RK~F@9L^mfAVXwYvVn z|4mi&F<yMwPw7;@?>2tpoZ*(4YdZQCT| zBYF&e@C0966j>#!mwyjJC=_f|#U?6Wp*IO*5Irva-nTFwtS8^%;EtyRVUNtewX!D* z)2WKh!W5xcm?}&|^zMk>1JRQZJ$bV*LzpS-DeQ&lVnokG^j?TA$$1M%m_r`pp(p&? zkFyC?YC#kK^~c$SdbOk?$<#E|c6RK|=0OjI&B=PcNSLR>PZ?HY+8X9AzDPDlYg4=6 zqAY!aLvSK`Dx#A=$yB0gl54% z1SCK}_9PwoXjAsfIYNujK8Spguo%&^5IviaAEy;_)PXsC2MQfS_!C5GraMAsvFE~57)>xJg_6j?3}x)v^qCdF8^E4nNuOQtdE*DiT=v_p0$TcZg% zCgV4otl2+k7qv?!i~4o;-Ts*`Rgi|rs%UJTWU^%g;Fn%vc*9{xiOzU;M?y}?OQJpa zS?PGPyc|z_^_{CzokXY-^@q7tH8pjWon@6(HC448HFeeX9W~|ERaMKD*HqUotF5S6 zUcbDuuA**vIFeXZQ`MrrQr)ipRX4jrQ}A)ZNmNC@aJ+DWa3Z4jMf5yG@7FJ!ESw^o zis<=>UV`WY@YGZ0c8T_mRCIMTwJsp{#1ko;>JXFhb@9R8Rrtkab%YAaUHH=Nq+}X5 zge9E~A(_Su`6(1l#ngvwgtNi=%Y<`;bA|JS^Mwl#ZAWwyqCJTABRZ6s+=PpTJ}mkr z!ll9{L^}}eM6|14=odB%mmyk2bOWNv({s~@6qX~YKM{@N9ZtzKYji?Kq+?}J?ujJu zJKvIN&(W#V<8>s~D;LiKjV)e-? zirT*@O#CIS4eu82ACCV4;X&acL^mVai)bI_S9>lMm^)a4$AzbdL7;vXo)w-`yolZ( z(E+6{E&Wzu8zl%Y3NN*KgQcC3RK#ay_F2}0-y19|dl5jIVRg}i+NQ3S6Uk`2yKQQm zWG5usr{ZhmqO0XZXlg3nW1+y&mtJq0pf?nlcH4cz^cl0NYicLg?c)*~8k@XNb3&yE1@!-CH)tLiT)oulxIpcwnhE2b)WO1`33 z#z>|@l^e^I;gd{7-k>vt%W04!sosRFy(^VPl4is*XTIHP;p_L_G*>B5Y`EBc=a283 zx1VBC%zbu;Vo?eet7O{U8OnghR#aUFU>rEVoxL@>-v5BH@A9&A*;P^@HBW9ya2X=m%uCFM_2&Oun>-e#c(#Phx7*2p@;f!#CkO@ICke{1ko*e}KQz`LvmyPS??U)9GOg z0=1)1tI~g`|AR+v_4ym&72(wbGOh25q$2&oE5d)N_7-mt|4SS1UKie@Dz*rh2yY5+ z37dp>gm=mCA4YTwqFsn?MReO1p`R6m4~36dffev<0Q(T#j_AesgZeJql+nj;Y|zs7 zh+L7BESYAEj)aMVsdd=D*bZeViv9d`F?p--H6;k&2;brXEEQcPlWoAM_1Diu^djjxqAce-% z>@UQ}QtFnvU1DpryEDF~ArV=HA7XU7L|>v)PRO0D@x;m`?n|M_vVkXLlags3W*YWK z$x&X`&`@75meiHIoF!FtRShMMvN}geU8SSWWw$$>m6cVJX?8Y%TKqr(;qK_cy;>^87nN6)*KXWM+R8Yd@@x|RM)b1G=BjZIA@WZ~D$2tEG zbMFBjRki(pf5Mz|6`5YrAjzaqQYO6uW@geLkc5yz2_+860MU@a6pElr5Ij_%Iapmoowz~Om7%w{X_rTO&=Y#_Q1!u0 zqq>}Gz1lV8Z_}>SuF|g7c4_z59-!?O8o$s8p*c)w4i}mugyu-0Icl4>N9)tB)gGwr z)%I!oh306XIYnr$5t?g-^lu@(D5TGoPY#^1$*!%cp4-)*9cEy5^TstReBJFvyBh1+ z{d$F`zhiYxS5IfV(G-eEhM$g1HgJ@*-8d-%S(Vk1-`d>YJD|2-Yd21eK%vgJsxJid zq1vMqv^Hz~TA@8md${%p?U6!rjL;k_G{*_e@j`Qg(3~hVCv6+Qef)OqvE#REPURJ{ z)zct13eCytN^^q0+TX2Um8#4b6_@arDibKIh354r%S1&zjd9oPE^n{mJ#P$5mFf*^ zJw3r*+I;~%JH|t5yJ2r%fN=Z>!fO<9@Avlh1iY2838>zlw=+Puuicn7fGLUX@?XX&(~g{y-<6R_G0ZN+CiZ?RcKBVn$v~m452wwXwDLv zv$tut;Lu*G9uV2Cy+UZt@y`;PD*{JEZWNlU6d09NS6F<)NGh@vc58!9SYVYIzPDbH zxu6+VY)1G(m`Ia%ZMUam*gX!@v5vf5c~!tSNErEZn2K^e(8*O<#g+k zdE1T3ga}^op*dG*E*F~ff@e9j zN)Moxn%2s>A!)utdk^L<+B>y(Y3~-A^M&RDp}BC2_FnCM+WUp(BB9wLG?$7fQ^>zn zJ?2JFuVx)so^RkBKV2+$} zDMVdphJ@x4<3EJvVxbva5Lha;8;u>lp8j56cZ+vJzq%URp?zNaC=;|VXkXMm5%SGd zcU)+OR6j`jiuTnI)gkRGEPhV=n)Y=jXy2ew`WkNP^>{0Ky`BRUj`=Z4LbEkM_Fe6J?Z%j}H#!=LE!uar?<=nV|hd`>FOb?dQ8LB6nLiYK=m3nb2%&H=1`}HwMP?m3C)np`!hY#epBc(SF-* zj0+ENSLxrP{Z9M6GQ`NYjJZU4Ru#4%wYLb(l|plQNS>4o#m0~<{ich;Jg7rxt{&8l z6PkaDC{w%9P+L{4hCBM)eJ#CSZ}4v2KXiKqqTG8@?4buH=wivgTBp_Nbb6gZXVjT= zW}QW6)!B5>x)`CkPH3(dnj3`XMxnV$Xl@poTZHCcLUXIo+$J>Jh359Fb#c0Q-9)KH zmq0ezQVZGg1m*uibBEB}DKvM9s98eupugMSEuv=myOkw@`X|+i4W1fo@^H= z5Yo4OeFI9fXq%!7g9bS3BW79y7vSLu2o8T`2bu}sY zgA%vv_4f5C`pwgEfaBLJJGkGVo1y$LQ)uo9yE{6kt^)Ir&ZTn;&Amc%-;l0SS0yy}3(W%}%GA`=+0?&r zdEfw|eQmFAe{VFRX#x(3}mU88Qku1VLdYtgmp76{ElLi3W)d?++u z3u&B?rV6QANF74z5z+}lx>7{V4vE!b-E#7`>e_TmbW3&1gyvzP`M1zKA~cU~)wS#P z(|L3&gyu1!d0J?m7n&DUm#)*-F`y`muufjwH?X2hm4cT3jcdJ2Rt|J`*L(Z=JgWl1 zOI;UrgS!2N=5hbD=XGnM-qiId&EIuC-C7!1rt53!QrTM(p09yp(4iLy&67g&gdcy5 z&^(puzT=*E)&Xq|RR=ga);VT*deq6UTd&)o#8)dqI|udNH7mT~w(DDT8+8XMb3fu8 zV;_GGpnb5yyF-NLnPJ}fbw@^o?kL^SI*;yHp?Owlo>QTFA-D^rJ3+zXM4{Oc0gF)| z8+iFys_U@4UhS*i;qA05E_}OjR->=4ONkiS*LQVy+gEt)(@Jx*>;=X7>B^F~cc90v z$h>{UK)=1K&ps`$EI-R$kYAE+@9MGlulCwIJU#0?ecA2CT2m?;2h^ri99_8M|Y{vyeu^TQNj5j z1kU9OI9CYGE2F`=IwUAU^Xjl9v^5p>I7;gsCBC8nPB%tv8q(dQyIE*n6PkC1Id!Y< z&WMA#OLw=+2jH+CJ&BLS&Z2lHlFEbrb{vl9pmJHsY5kKT*-77ke?mt5FuF$-ve#rZw4|!wwLjt3F zCpfw)C1e`r=(K`dMV*!Ajx9dEDu_SG0)3)BHR7kI=_l(v`l&+mjnI6re7Y1B`t%It z(=&zU+fkpc&mNu~--+<-Xq!8~&5^g>v97x+fI?B!rXhW?zC>t#5Sm|y`7mAYj5rvV z-mUZKD~0Aqq4`Q*UcRCz^CGCx{QSHz84;YM z`WF4-h@a4=U!wEqmkG^(h2}REPePxt-|!~{2G|)KV97#di#j|@^9u4uYTS@^&nqh3 zO|6fdm+lVl0&idc9~Fu&eGmCt_514&(0A+C2uUL(Nl3Dg{;^f>)34PZsP7fhUP786 zB(0EiWBUao9Rbxd7 z{gHeU^{M_S{n0e)kJcaCZnXCGdwP{tJe9ugfi*o11B#h%H=4aYoxA;L>R9dR^>p-m zdz(BxtGspIo_3?L+t=Yy>}GXOhfjH=-DnIvtE_y&uj>ZyYbAeT?yb zOqw^^jkW*RlM=fH)>N-Xe}ewRc4JJ{f)-`{7jkVvp3xTlN&1r&rzX-3WBWAi#!G8^ zln7>r*S^NvzuMPnpXyn=w!15UOI25Abx*&ySJ~TL)$1GR>6|v=>h$!f_8zaNw|k>~ zjS@ca_St=EgLF@~z1Mr-Kv%C<@ecPuajM<7QgLbfeI34T`_xwT+-d0j!T93Tc4PD| z$0ma(x&z{Kdeo+^`ZM%r>d(@jEhN2=Y(knSq~u|Ba-RO;h+=$+eo#N8-y$S~kjz4| z2+10niKxlKsMNOF1Q?s6$4laTiD^H)khyRo{-t85e6`+a-Fv)^a$^YnN1t=wqu zU)|L=k{9hp+b%dZ`1-p#0^Yg)dR5Vc)Ynb=+af}?U4OfNNPnl0qJ>dTO zdxaDe39<*qf-LrLfUK?Fx6ZopzKz)2I5+^h5eDgp?wr$tq4$LOAVIaQa$EsgZE{PXE3B z`=E*Vkw*QG`k#fAW{gvGa+@Dh=B4dpoqXKG>9y8cC3rukR%$nvHT?-S*Xix(_Vju? z?W?`L!3p=PFbF9<0x$;iumBmX zG#adiXdz`Nuo(RqfBI|n)V;rFPe#qQ&MqZd+|{?b&NI-{vAU~g)xxg+)xkqh{}(T@Hm^*+R;R#IC%t*p>Tt%=b!9PiI%BGJRKj`s_Wv9*1hjmA(N=_{KhU z+92^oCy~5|~4q{g_O01_F6i{cMZ#&$SU45`4LGgb&5ryzIsP*?#SmDH1a+mM*{~=gc8d*d`XR$o zAx#(3zAAR*A?(@}?DiAVj7ZpZjD_9IzX7}DyV;aKhut5sFNUsB^44uQFd}BXhCcm} zVL(VOAyulFRfRCypkTI9NbX3O9XxDbv`^8feaf&|NEIq(rl`Tc+_uz4vMql^&FyY$ z42O>b=_teT5kWe^aH9S|!^uLb5mK#cYvzPNI!yuTbRo@(1kza}1nV3c4d)on6VhzO z*4X@*qF()Ljm_Zi8JmS&-Q7)rV-L#7T<<8s`#&sQcBS`+7A^r}a*<+8E;d|Z7&HtC zX|9mw3u&Q{mJJ(|OAS{>7#`FQ86Fl=laN|fU>1acc~k-BF(EZa0_MrF zfNA*~fLXMg_1G1YT?O+`*^B2!q4lESKM~P-&G5Q@$nd6+771yIiq_H)TJI=my(^@} zkknCo&qks2rQzF%D1B%6UO!~`QAo>$_VvQOh?H8~Rp|mWV@AYrWE!({9%HtUx`cFqI*#tpIP#QnIP&qP}gkpIOn8&4Vq)v3m_B0_bx@f`h- z@jM|3AswMYbz}&t3l*p?64GIjpc)(ts>A;VsOrZw%n_mbBUahCZ4^XT8n2BA(RIe_ z^+U!Rg>ofHX?=SK+5i!>Tv zG`=jPlNCgg{Fvl3{#yONZBP1N-D0Zo^?LuBEhfbZ>_YNS*n-y-TkyK^4da`}w}f<> zkj@d(MMBy-Yzy8seiV@_9~(c>4;eob(&<7vOO?~JLtOb%;mTJ+IwKNSz8Q-vXZ{US zxhAqL*bTQmT7;iQN$jttagnewX-txS$n*~(ohzgZRBSE`Vq+Rl-Joe7A)OZi8%#fu?35 zT_vPzR2y+^2$uy4E(?WpbtGKch6Tv9lt$B1({dsGQ^6(GkLe$q|5_Vy@$cD)s;ARQ`@*)t)MbizTE^rvt2W1BM0(<~ z@jseg!a=s_RV5kkBOyKMS5iEr7XpcRN@A{>`4CEk=<@Zbc`Jcj4K<0drPtHb*X8Z$ zS97qGERL#*S>a4A<&3zur$3P8rIK6iTd$I$JNKXmrX(2tc#q`nm?WRwJ^sJIaC_S&7I#jYw)X|00 zQTn|~`d?mcRrPGoI&W=HSAUnMyL)5kdSzp4Ap2E0E4aF=yR+BZqkd2z5xshYw__l1 zIB;E8uTRa2a(8wrxgmkXz)*QJ(^pX&hD5zYB!pLnHtmWfs!)z;=YkT zx;wmq-xB?d5mJ(o0-3{M z4vxBB;a%zL^@bB|0=KK#GL>rggn_>BwQz!tlG+|f&hqAED4s$N~ zL*{IAl8`3j{9Nd!akiHbsS3=q;q_2hajgY?GW?oLVc|WqvE6g2a3+X#Wi~Okk=O-ck z9MC4#5Ql?lU1~yByU|`-RbA&>6&AP(Ur<0oNuBLRYlpA9+q1UM+c{h}r7w^tJo3qr zX<)+-E5$2D-Zdg+ZTKdOHFw$7TG{1QUZ4~$82P9=;);z*qG=GJ9`jlSSf7x- zA2c5*q#u4)KnKk0Mil8YZ&Vfb7!$oHH<&tRJ|t?>koi#aW+D9|q+k69wHqfZ>iuXGhZ}DZoc{A@!QRVLYCCx3bG2PQjH)i9!kN1RM-04k$L{+%gk4fMeC~Z z+s*$J@?I*fy@M43hwB!ky3W6K6qy^$w~R&RU*or%Zxix9Dwzr4A%%-01ctQk%TcuM zGT*Bpez*A^A?t*!A5v1^6$;~SR4|_yMm8vq%C1m2-!UnCb%Ze-b;tCa);@15@j{+>mH7qpi^?a-6L6USV}8y2y7>+Bn?jx>Y-j$w#?*2xl>Q$fO9yEECG)r%f(vr>B6D)cb;FIb(H1~UY zIz7FeiY{I43)iVoa91i(D8Gd&zgiarYH0=j-aN2kjjz+&HiDMw8;tmS@cwqADc}Hj zdq))8Pz_{fSHCYXj#=KGu7SRGqeXQu)Q?afQU=o2t=9V(X}vx-e=(|PrFp0M8%5QA zE#$;O^S44yQY2w=;03{QA(21{G3`h5&kBj3glr!)|03jMe`!m-rz>>bfCRq|J36>-(gq$tp93d|evRD0grQhN&U8>kprPz^@v%4fPLUruz z#@Im3C?!L9v}m;(O#wx+qT8!DJW8T{yD={0n2d34V(40R=ot90g;)~0*4k9pZj9;h zt;tq0BD{gAmOWYpTQV(qn182JjwOHm1(rff(fEsnoU3%ok@JL{FUBbb|M&Wg{N6Qn zciW=Gy(}|@Tri>-ti@?@sr^&rA|V%!?4NSvilD4nsx7s_{wbE(!Tu?7@fOP*%UnyH zkV}MID&#Ungi`{AYSmJEp@M2bkqIW%{NaWvmL_Ge%|f0&EH?`*%l6zb#j@Pe9&VT- z&k%Ck$c8BaAXci)MJ%fr*Vucgn@ZyB(xv#hsluxzv( zWZ7gn*m8*FP|IeE-y$rBSq`@xA>^4t-dD)wLUsz-C1kgdD}-Dr(4e9v7Dqn_J^8_SWZ>%{S(baEN7@s{K@7bma~ITjc#+bhvp)d^VFyQm*ygt z3sn;TTXPZ1B`T5K8+z>4B~2+b|GUjaEL&7kksEsKskw;dvIt`dRh1v3BZ#|UR;$tt zySc^PP~~n4wbHa)v4^pYL26WU5zEyof&aO=h~-+9&R^49#Bzg5?0;`AV!2r*^j9?( zvD~VX``xAmk$aVl-CV?SyGrwSTQ@|e8M(QL<*xr_tYbG9vD~ZD{41M_SRVM(!wh$V zh}2xf@~}$tFK#Ykc~qtP*ESciJfRZ(-If)*a6kO{!A`9;tqqke!~KXYPyf#pcWEwS z*`ZSWT?q{=iMrN}=o_@h<|39CRJwmda}mqSD&^mur=vzZ0@Fy%MJ)f>Gp?g(?yS86Rpv(d;8iNk>~O>(T$e83&wZiz zieCzOxqsRY%h#4~m|*!9hvoaW;WxFaV-Rw?vhvw4TToPssg39uV?6A+HzmhHcg|>vZc3 z>rCsu)^e*;$Qy-xkdO}%@-addLOxc=$Nm3r^_wxg`c*?#E0to<16|#n-rj=j=6+xA z#uYwKZ)f(R+KP}Y%&|6L-lB=s*fi1p5B%@?-`k?mTN|zO{cj6-laSSlp6)wN=_y#c z^}fYQd98xt;*vu~XejFf>q5)N*2UH~As;2=&8k8WP*OvwAS8x2a_C0nU=8~C=M3Yrk5s34`miK21F{Bc*EVLedM z8A3i@;Skz?!8QJaRW$5@XQ^2tIzEgUqqo?ty?j0mmu)bZP`rwjQMH9~u; zh%zl!cDB^OU8?K!Uq%LIt>;)T7>mS(4m! zj_eM{YOkl$8|rLieaZS7=B>(n*2HLHl^N}S-~Yi@>+9Ax$kynEe6f%(@pt>*R!Z)= z?>J@6eP>;M`O;1KxkXA5sl0;XQIq?9>j##PX~ZGqD}+2G7D`^uUL8XDN2?N9wf-dJ zZG+ZdgnYTbw5=<=8`N%`5u7GU4U`euO_?)+xNxPX-@D4!yD>WuAno$?xCi=uYdrm3 z9YNo~78RK1R|e<#>7lAHN*9D+nUlVtE967CnZ%+hTCo z;)HyIBJVGR3n2?_n z@{>Y-UT6{&0s39zR_W{Td0Kn}9jiweH(P+UAcN5c0i3zR!P~ z0$@yS#k_(3?yjEQ25VI-GafMd)$PW(I!|B!+#cWho)OQfC9i_h)wamCc+}>KZK-Y9 z=pXj8dCA{u^Vn9{I&7Unen7|%3i%-+KfIOiZL4gnZC(BbA^%&*j|llue`#Br&$p(= zqcrYVQt4Hux!Sp|-53)9w8gi!PML>6rc^1Fo&yWB+Nu^`c)$THLwdj7vv%pG;?lBg zrA}LENuY4O?Z9DFL*FxC3+@e%@NaAzZ3ij-jqMO2?-26iA^+yt0B<%^x5ehS3EN>p zenQAk3;CI_w_a7?9l{K0>dcEGB>aa{GR27*f zQB`Cu3isNLxug7uUG?OyDq~S?Mc^yWQ?NK+$S>~6Td-Yh+o~}165F6{$hJkuFAMn< zA-^i*|7^8gYP$@F?Q$W%Cgisj4e_qObWxpmrJ8NGxJhZ`rHryIu+0`YkEGV7UEAHI zUI}mHg&1$gd0e4I#fNUZ!>6>)u#dW^jI-I-JEHH6vLia`7L~fP?-d&C-L`wl zAGF;g=`{_kwPh?eVBhL$)VuPYU^c zA%7J1AZ*Xro*%ZbjgY?+^5-Kb`OmgrlrW3! zHz9v5oIeFnXMjzYI_9Xk|0^dm(?NE--?N_+4k{s4&E+kBc_YX#0Ur zXpH()$lof1`c8>d?8Ag;t1=fq7xHKRX=(r>IyO2kZ~`tIf*I9GVl)qiqT`kLgVMR> zkK7)3!=&hhz)7AxJu(!Xs8Cm$1MKNmweME6eZuqeOj6G-{kHZk|D*l3tb6SpXs2b1 zo|Kl6nUzyiTrxe-XRFQSC@bG$bXbj?qGF(C(iwnBq71 zEjuPpF-)D7-foO-Xbu>mfbg`o)>eg@E0{-LQtHt9wMs{?c4JyzWkpSCO?8cK#hwFTc4xVtblVaj?*s)V?(_v883pM^hgvo%n1_ z?2MU8)3o7cUo$4|-U91CPM5o)Qf>RDbPTI+nAb4Bskx`#xwt z1ntM5{S>sHgZ4|%?gZ^Op#2WCKY-2xIveO>Ko<|X1kl+*mkPQmpi2i`Cg>cX%K=>; z=n6qs47&NC>jB*+(47OiD?#@t=-vXo74+GlpAGtU(60miF`z#c^p}DDa?oE1`l~^I z4d|}}{SBbM3G}ys{#MX$2mKwOe+2Z;fc`bmzX5uM{ySip3Wi)T%m70b80LUs9vBvZ z!3%~}VCVwF0bsZX3{QaJDKI<(h8xFR zfblahegVd>z*GUId0?6kre-j;g6TLgoeidQ!E`>DE(FsDVEP73-+}1|F#QDP95BxW zb2*q@V6Fi3dNBLJd<>XR1oL@dz81{agZV}<-wft|f%!Ht-wx(G!F)HE?*;SyV15bA zuYmbKV16CUZ-V)4Fux1t55W8}m_GyamtfurmdRjg2g|Wwxe+YygVg|5Cs;RtbqiQu z1MA0N{S2&MfORKWzX9uaVAFt22HRd>8xOW@u+0G5Ot9?>HYeC-gKat3ykP4E+h(vG z0k)&Sb`01~1l!4AI~8oFgY6Qq4S{Vd*e-);8KTV)ZH4G)h>nHmH4uFeL>~>&$3pb+ z5Pc#h#OWb!D#R5+TnWULLEKD; zD~C82#4Uw5FU0ji+-8Uq5O+Al9SLzqL)@_tcRa+M199g;+yxMK5yV{raYGQd72+;~ zxa%SAPKbLE;{FTqu@IjL@zWu`65{J1z5(JJA-)OXTOfV`#CssV8{*eP{9zD(GQ^(( z@ux!k=@5Sb#9s*US3>;t5Pu`Y-wg5pg7~{2{vL?G58@wy_=g~V2gE-Q@h?LB%P=t! zCT7A!2TaU?iFq(_6HGh?CLRY9Pk@Oh!Nj*=;ukRSJDB(bO#BHZ{sNOUFiD0jf zFlhoz%7RJtFljAJ+6a>lhDnFQBtJ|#7A74BlTLt1XTqedFzG6obQ4Uv7bg81COrw0 zK7dKzz@(pH(yuV-H%N$rguNkQA4t$bf*ul#kPrt6lOQ1x66}z$FC^4JLMZAmIc^I2{tsgoLvp;ao^K9}@0>gf}1&NQ{9*J0zw; z;$%pi3W>Rpmy(p8Z3Pe^(MlAeX6=OO7uNO~EPK8K_qz&-)&F?L5I3-;w;-w*67z|H8HA89=q)vm>3`os_ z)NDx2h14=godK!)LaGx|-H=)dsa{C!fz$&bwGUDUAk`14Cqn8Oka`xRo&%}pLFyo+ zZh_QGA$1$1UID51L+UG#`T?YV2&o@I>L-x;1El^4sXsyLFOVifnijA?*%Gy9?6pfwbo#?L|m?8PZ;bwAUc* z4M=+n(%ylz_aN;9Nc#xVK7q6!AnhkeQ@-uLFu4gPx5H!)OzwcmUYNWcCO-_5AA!k_ z!Q>}kN*qj?0#l~Jlnj`X1yck}ISHnm0#iLCBH853%sr$jyH89l& zQxAlxeK4&MrnzBSB}}V^X|rJ3g)r?(n07Txy9TCR2k8b#p9JZXA$=;Or$c%sq&pzJ z7}852eLAGig!FPqcR~6RNIwkHPl5DXA^l!Re-zSpK>C}I{t={q0_mSY`WKM?6{PAyhwe<1_N7zY^=WauCx8Zwd~BMUN$Afp5_${=F~Wb6wWHIOkIGUh-=9b_~>Mk8b_ zhKvr#*dH?1LxvwR4ugy%Amb>=I0iCKg^bf7<4njn8#2y?jPoJm7RY!FGCqM!3uI1$ z%qfsr0GTr(vm7#AkXZqlRghT^ne!lXK4dmSW-DYagv?&ZJQp&zLFQAC`4VKl1(}~i z=J$~KBV_&znZH8jZ;-V&WbFf4TFBBvmJzbdkTnsq(jY4jvZh1UOvoySEEi-|K-OHy zs)ww3kToB&njxzdvX(>E{*cuVSpu?-gRB!E>m)$a({^-h!-mAnQ}e`W&*pgsh#A^$lcw2U)*?V{dTSz>x?J zJ2+Cnkp_+_;K%_-J~)cNQ38%KaLfQl6*%g_(FTroaCpGc0glz+H~<_y;8+WeL%?wY zI8Fw~Y2Y{$9Or=Jd~jR@jzMr-2aX%TaSJ$Z1IO*)xCjJOqwUAlm}jWstoL zvJZ#sD4cnBkkbV@-H_vhoLc$UP2nPlVi4AoonjJqL2nhun)GcPr%H2)TDa?wyc(H{{+2x%Wfv z1CaY5;UiG^I21kwh0j9a^HBIA6n+GSJE8DvDEtlze}f_kiY!oMhoWRCN`ay@D9VGP zawu{`Q56);f}%N4R1ZasP_zt+_Jg7hC|U_cT~O2wMLsAx5Q>g~qKlyDdMLURiXMZa zm!arKC>{sJ8Yq^b*bK!sD2|2ViBOyf#davphvFGfJQIq`p?EG7*FkYT6wia=rBJ*K zikCz2eo(vyiu<8>Jrr+*;)9|1a40?sijRfj6QKAcC_W#GFNETYp?C;NbWjoxC6k~e z5lWJw#0Mn@L&?!lavYSL2qmXL$>~sX7L*J^$yO-Y1|?TQ$v>gwIw-jTO5TQ29hA<1 z(gUFMJSe>dO7Dl#hoJNkD197CpMuh7p!7W`{TxcahSKk#^hYTD8OrvCG98o|q09nh zu~0S<$`YY08Om~?tOCkbLYWWB4u&!TWk*2S(NJ~*l${J^r$O17P<9cNT?J)VL)kx} z>{=+h1Iq4%vb&({9w>VR${vTZr=aW^D0>^qK83O`plm0UeG6qj!1NB7-VM_?!gN1O zKOCkX1=Ej(>8HT-(_#8qF#TMZem+d!0@JUA=}*D*S77>gF#R`}F%D+PFk>&6VTBpV zFe43SOobU4Fv9^ea$!aR%y7YsN|;dtGiJk#IWVIRX3T>b^I^t%m~lGH*bXz^gqgt1 z$uKh;%J+xzHBi15%KM;v9h7f`@`Is#Gn5|& zK>5p1{vRlR1Ipiq^7o+pLn!|Q%0Gwlub})JDE}VHe}eK~)etC74LJV+&hg;Xg3|y_ zGdOMFj0NXJa3+E?8Jub0oC?kia5})53(f*?7K5`4oHN1c1ZM>}tHC)NoO8k10M7Z~ zYysy&aJGSS894U?X9qY}g0l;p-Qe_rvlpBL;M@StP2fBfoC2Ijfb(c@9tX}7!FdWe zPY35&;5-+c7l89(a1Md@GPa20{86kIdFRSqsUxT?T43tV%+ zRS&L4a5aN#0Vv1iTuZ^#4z3m8@`7tMxDEhU54a8lS3kJcgXc#H_bPDj5AHSKUJLF%aIXXRMsObt?#d~J2e@AV_YY7J1r-*kh=+<)sK|nf9H^KD6^&5Q3>9mjVjWa$go=xy;&Q0C z3Mw9fif5tXd8qgeD))xU2~as5Dl4I~1}eLuasVnfK;_j?c{5br3YG6eTjTCGSp;4O&-*&gc={z^g_*fP_qSUE`yrqq2_g{ zc?)Lk4YN!z%L=om!>me}RRgp3gIQfLs~ct=53|mIS!ctnTVU4RFzY^;^(M^v2xff> zvtwYk9cHJ(>>8Lo4`w&P>`gHH2$+2|%-#yK{|U3NgV|5O>=$76%P{*VsMSF2KcF@N zYNtSLI@DG}Z3EQKhuV!$dl=Ln3AHyv?OjlNFVwyUweLgiM=)nR%rV0p8_byrbE;v^ zY?#vlbGl)U59XW+b1s58gD~fAnDcL#^BBze66X8}bAExjsW3MS=H|fMdYHQa<}QZ0 z8(^-0xktde8VuAL@#rZXwj|2X!4#cR19Y z0Cgur-EB~JAJjbvb>BeUuTT%vr$Bus)MrC|6Vxw(`sGmXhx%io{sgEWg8HkV{u-!% z80w#f`W;aJ3pB{kus1Z=p&=a_vY??78tR~79yIho!+K~q2pZ0Sh6|zL5@@&+8Xkg% zN1)*=X!r>leua6_FfR$_rNF#Om{$k$=E1yUVcuyl?@X9?2h4jA=KUMyeFpQsgLywf zV>ehRJMLhBE(AQ={9 zzyb#>SOg0^u%Htb903bXgaxO-g6**2epv7jEchH2d=CqLf`v)2a2hPkgoX2AVH+%5 z1`9XC!ee0J@v!hwShxcgz5t7CuqY80CBq^YEUJY?b+Bk1EZPi<4ueJKz@kA|v=tV; z42#}|Meo64EiAUd;#gQ*28%0TaWyPn1B=(e;*GHQ0$6-0EWR8TKL(4RgT*hx;vb+b z3fd%Sn+9!p&{ha-E1}H?ZN1QT3A9}SZC69vYtZ&Sw0#6iGGR#}EGdB{8)3;|u;fTs z@&GJ(0+u`tOZSGQCRl2Pr3+!{ez3FymR=4^uZN{K!O~A)={K^J+xeeHYg zPjJ!d6rZIii`KJfT}tcuv_46j zhO~*I&6Biwi8im&W*BXLq|Hd$tf$Qm+U%z7#k9SOw%5|OHElc7_FdYJrR{IDokZIm zv^_}ML$qr_yOy-OhIX&ft_|(l(=MHM6KOY@cH3yTpLP|rzmfKL(f(fA_oMw_+7F}s z0@|;j{c1V{I>gW+o(_-G;RQOpOot(K7*2-~beKzrGCHiFV-q?yr(+8`zCp+KbnHaO zF?7tJ$}RnV!5xBtQ0xA6Auy!{bxf6m)q z@b-M(Ue4RA=-iafm(ck#I=7|sJ9K`J&Y5(cLFZh$#L(qDx?Dh)|Iwu#T{_Ywg)TqS zYrOjl?@s02Y~DT0 zyMOTRpLBhguFuf*dAg3FYX)6^rR!n3{z2D2dG8_Kdz$y2r`tTh33@i5XCytJ zrspg4e2tzd^!%BgztOXjp7r!R&d2xh@uPhF1RsCL$D{c;m5;aZ@m@YYz$dry$^Crt zAfF`h$xnPTnonx@1>~`7D9Yn(^61eAa=_-s7_m`0TIj zcRrg(uNZorN3RR$)tz3w=+%c_Yw5L(UOVZ1H@zRC_oMV4L+=cF|4Q#_dLO6vNj`s+ z&!6M-7x_Gi&wt|c(R{v{&-d{8e)?QZpBw3O3w=JL&j9*-MV}J-ETqp8`bN+n()UyP7SneDeHZgZJYQVE7Z>uy>wM9cFFNo=2476!i)nmO%NHm4;xzqUq~9C# zdy9Uf={JFXztC?N{VM5KP5-Ote*^t*rhgaue@OqH^v|My9{mgG{}*?h{wEo569evM zz?0bhT_ z*K_&0jIUQPs0D*sGUyrx4Pekv1|>0Q4}+>0RKqt9^UX7S^E}^-<(uF5W)k0=W^fdP z8#DL~2DfK$CkFq*;HeDGW^fIIPcZltL+)kBBMf<*A;TE*BSS_qWGO?|Fl0SL;~08A zLoZ-xbB12d(El*>35IrNXkUg7W#|Zoj$&vEL&q|7JVSqG=ro4TU}!EwXEC&hp|ctK zJ40(3b}_@AW>_zVWio65!^#=9j$s=awuNEa8Mc#QM;Ug8#D*kBk=U5TSQ49)cqxfj zka!h|*OGW6iMNn=JBfFZcrS@hlK5W|yO5YjViJjCNE}b%&m{gv;v^EYNz5TJpTt5E zOGune;vy3FkXS`x4T*Im9wjM?q{bx0k(5Bv-$=TMq-#jJfux&Bx{aheN%}WQ{~_rS zk{&1NNs?Y9>2;F&kTj5_bdn~LG?}ESBuyu&grub;EhlLeNoz=2PtqomwvtpqQWZ%x zBpo5Co}}X>oh0cL-(JDD|K{6{d^?nHC-Ln{zTHT2bCO$-{CAQsC%Glb*O2^AlCLNE zCX#O@`3{orCiy;+A0YW5k{>1c36h^C`8kqbB>5GRUnBVqlHVe^4ax0E?nH7IlDm@p zKFJ@F+=JvkB=;kEG|3Z4{)OaKByS>lE6Jz%E{g9O^WBYncNgE?%Xc05t{dNV=esd{ zm%(?x^4&JR+s}6ue19e1|BLT$e!PqyJM&|A ze(b@Ih5R^=9~UyB2_u>_q6H&5GNKzJx-+7H5px-_fS=;{>3n`_&QGoQ>1}>`ho5r! zX*NHVGV&ZoUdYIc8QFo6?=kWNM&>edHY5LHsu+2Uk;fT%f{}kRDwK;bj&!}e@^*p0qV$`dQdYw^kGO87$+A^v=qrPKQ5u+*@ zeG#LdV)SQ>9?$5hj4opIY(|$ddOo8UF?uPZmos`Zqqi}7C!_Z;dOxEp7=4J*)r`5A zF?TZNCC0qRm~R*}oiPQBDP&ABW0o*xDPzhQvz#%T8MB2kTN$&RF^3pa#hAbPY8Z2x zF=rTamXttB0x5qZr70=RNV$lVi%GeOl)Fj!H!1%iiQm-WSYErKy^=?w{BlQ7NA0qWpQhy*dmDEg9r;?gYY7VIdq!yDphtyJ17n8b; z)V-u0A+?UwdQy*(){wL)(i)Q%M_Loo&L!U!+SJEbuHi@(> z#x`W^IgCA*u}vAdE(Gh??hb_eOVll~CtkCXls>Cck> z66vp!{yOPzlHQi|&ZKuIy%*_&NFPS}x1@hh`cI^fCOwt(bkZl1o=bWm=_RE9PWl4U z7n5E_`U=uFkiL`jYSQaSKSufq($6q1FfM{|jTqOIaaS?!TE<<+xEmOEGvjV!+?|ZO zhjI5a?m5Q2$hcP+_g}{Sk8%IUxYmqo$GDD+>&&kk7oS& zjDL~wuQ9$A<2y6HC*wb7{1=QL!1%8iKaBC;GX8tU|H$~C7{7$^dl`R*35}R=E)&jY zLUSgxV8Y*-a5)pMWWr5MxRVL@FyVeCJjjH{neY@7o@K%dOn8Y2y_qnP32T|KjR||1 zaEJ*f$UsIzGNQ<6OvX86oJYn5WL!u_3o=@gaWxtLBI9l{9wg&oG9Dx2Nitp_<7G1b zOUD1mc$16{WV}sAH!^yYF@TJ($oPhgp=5kd#t&rtM8;?`QplJ<#$+;P@>@N>9cLmY zCNS}QCSJ_Me=zY5Cf?1&`$e4B|~n3%-G z8BE+tW+O7sA+tG|my_9&%c@~rBGx;b}qM7n{raa4(H<LtWfD`em@=IyGntadlvzw!#*}qT+02w}Oxekl-At)r%5kQgWXfr>kkyE+ z7_#EYI)|+D$hw%Ue~@((S+|mP2U&NM^&nXfll2%`Pm=WvS+A1Sj;!uv^&smLvU-u# zhpc{NeM#2WWc^6iNV3L|l}6S$vNFi}m8?v%CX-c0)?ubLWa^bneTbLjLSF?BjqXEJpzQx`CGF;mN!x`L^znYxCl>zKNMsb`pW8PjfM+G|Yf z!L*S~o6WREOk2#frA*tvwEax0U|JQ^YM55Xv|~&=!L(CMk7arS)6Zf0c}zc_>CKpa z5z{YW`lU>Nn&};wKAh>9OkcwE-DEc<`*O1XN%oy&-$VBOWIssulVm?b_KRe~3WDB>Pjcdz0Ol?EYjACOd`f31sJ!J&){FWN#;XKiL&zSCM^~>?33!CHoXJ znlR&HX0&9+HO%-2GycVl+nI4cGah2b%gkuSjCYvvIWzh)qaQQAWX3RN{KAYW%$UQB zRm|AHjGfFlz>HdE)HCBaGfpzI2{W5B^HOHEWajnEe3F?jFtaN&`!jP0GZUGa%*;{D zOkrj!Gc%bvg_+ZsIfI$G%$&u{rOe#G%#F<4#LO+sJVj1pa;_lfDsrwR=Q?t3Am?Us zZX@STa_%ALesUfp=V5XlBd0Yv?a1j!PG@r7C8rxXACU7QIX%hwgq&XFd``|6P6fG<*^(3z^dHu;7NZugwhLAUmymaz1$(u@E zA$jx2TS(p#^2*5DN!}j*5{BnDBtMG$X!2vok0<{E@-HX}|_I-gmsnKg-7`ONyAS@W2+kXcKZwTxNon6;5vTbQ+-S-Y6Ehgnt3 zs$o_gvyM^_LqR+R=TLAi1x+bvM!^*nTt~r86x>R|9TeO}!J`yBN5P8}yh6ci6udz} zdkQ*H(1n7o6ueJCcM5t@(1(J46bzu?CkjSWkV?T=3dT{8LBSLXaw*88U>1de!UPJN zQFsxBmr!^ag;!GeFA8s@@D>Vhr|>Qc@1gKv3Lm5JNeZ8)@D&PQrSLTh(c$C636a|VRC~8De3`KDioljA7ids-~2}QS1bUQ_NQFISQ_fhl!MNd)m zGDZKT=zkQwNl|Btx>MAHqE9I5MNuD$zNTm}MZ+limZI+|`hlWUiqa{XK+(?>6;M=6 z(Hx3ODVj&oLW)*Ww2Go~iZ7w~zZAEpxGTl)Q~V*tJt_W_;{Fs5q<9d;Lnuz9_*;rc zQapy@G>X$H&Y?J;;zEjxDV|MnDaFeuUPtj}inmd`lj7YJ*HC=Dc!#q1Pjk7f3FW@j)vpV{-6y_nhM%-+K6?abcA>^;nhXHHAz+|8V4 znbU?jA2H_}=AGhP}MCmP*K0xUcls--AbCkYF=_{1JMQIyK+f&+!(k_&~OKA^EKcTc2rJqy! zGo`;#I*HOLl%8Pjf0+9}=C)&Qd**gz?uX3n&D_4s?a$nS%pJtsWabWM?g-|NVr~j^ z)0q1!b2FJcg}GCiyMeiznY)d-JDB$`<_%`v_skp4ydRl2o_Uj)m&Ls4%$v!)Jm$?| z-dyG_VBTWpl`(HQ^VTzO6Z5t*Z#(m&nIFsi1m>T^{QqPAbmkW@zmWOG%wNL%a^|mN z{zm3+Vg6sY2bf>U{A%XcGQXbr$C!VX1r1mb$$~~KxQPX~vfy?W+{J=>Sa2T;9$-Nd z3zo2;oCRxGu#N@0S#XF2hgooh1xH!%2MYrWBUspog)uCQXJHc-HfLcA7XF=um$C3k z7Cytm=UMn73twj8t1KMHqK+);#-dMH)Qd%ZSk#Y2U$W>c7Jbj6F)T`B(O-N9i+*L% zG#1TZQ7(&Sv8aeeB`jLVq9rU^#-bH0`h!J(vgizpvG^Glk7IErizl&o3X2O^JeS1_ zSiG3UWh`F7;ted`%;Ie<-pS%UEZ)cB!z@0+;-f4+&XUVmawSWyX34cI>A{k%EZN7B z{VX}il4C46%hCocjbv#wOJiBul%>sBdJ#)6Vd-Toy@I9JvGfL(-ptZlS^9r0ZOzhl zEbYM3X_WnqvWqBdLD?mg{gbj=DZ7KRyD7VmvIi)8g0iP6dycXfDSL&o|5DbPvUZep zr0i|Vk|`Tb*$B!;QZ|ON3YOi$vIki9Aj=+N+4C%Won>#btQE`JvaAEk-ecJZEc=LM zAG7Q;mi1=YK$Z<+*$|cuV_6Q%@>y2MvSOCaW?3oA6Iht*wJfh^`Ds>QMMG9Zv7#|6Vp-9Y70p<25i2fc#iOivf)!7*;#pRV zV#Rh=9AL#kR#dX$4^{?NMzFFGD`Qw0&&mr}c_Aw=X62=Z2S$RDxZ(`-Gth}9- ztytNXl^s~wiIv%`if7dYtZK%p3t4qFt8Qe~Ev&koRd=!KURFKAs>fON6sw+P)eEe8 ziB)g1suio+vZ_6+hOz2fR(;Q^A6T`6)wiIYc;469#d_3NyDlhv(Q-Imqw zu=+h#f57UGSp6}pKV@})Ru5$LAXX1%bvCPWSe?)60#+AO9!L3Ols`}T3zWY^d27l$ zQ~oaH-6-!)c@N6_P~MO7FDd_;^1+l3rThoVf1-Re;CG@W!)^+6|!y*>-Mv*f^~;je;4a} zvwk4!zheC$*8jlzRMw}negf-%Vf{qbXR|(s_4%wXWPJ(i=dgY;>&sZbg7vFdf0Fg5 z*?RW8?K~{EUr@*|?gGBf=y4e={YvNz^0ej^eUS&*tD5Vd)Ty>P5aqY&!*FC#^#1> zj$(6THlNGp^V!^-%`MpccQ#+f=6|sHUu?dS%{R084K}~U<~D3@$L0=few)oR*zy)z zIq@q+X6t6QZe#0Cw(e$I9NU_(?Oe7sWm_Azm9T9g+ZM5H3ES4QZ3o-_;`g!bAlnYH z?I_#+VB4Q;JHz(C_J(YaV|x>}pUd{9Y`>rF53>DXwm-`D@7TVd?KNz#WqTbvu%j_M z;@HuI9p|#+e0Kbu9hbACB|ENR$3NNeFLvC{j=R`#FFWpMM<;f4VMkYXbYsT{?D&Ws zrR+G%&S-WvW@juro3rzBcD7{aHSGK+JFjQw9qhcDo%gZx0d_vb&PUk!EIVId=gaJT zm7RUr*`J*Q+4(g)zhUQ4cCKgFXY3lluA%HoV%K-<`hi_Pv1=5&eqq;Cc4f0Ghh6#X zDrDC@b}eMr5_TTyI(8pp_X&3Y$)1+%xrROeWY53Y^C^2) zvu87VwyW?8V;3?2Th@6ZW3V-t*bpjJ=n!_e%C&&E9L-`yzW^ zVef0~{U3XOX76$KVP9ZhL-w7+z6;rRG5aoM-xch;ihVb*?`HPh#=bk*cMtpSW8b6f zdxCvWv+r5ggST+-b`IXj!Mizl9|s@c;D0#yItK@F@D~m);ouey9^~L54j$&< z5e^>Z;2%`PP|=Kvi>SDSip!|Dl8URS_!kv-Q}GZLk5cgj6;D&~92Kuo@dg!dQPGBq z_EdDFqAL~eQSmVq1E~0xiXW)>iHgxwjHO~c6+ct)D-{J)ETp20iWO9>reZx6o2b}I z#dazVQE`}xBUBuv;;+B|q%xYy##F{o8AoMHDsQIpHY)F=@*XPhr}9B6pQZ8zDqp7Z zzf}H@$~UR(Oywt3_M);6mHnvvlFF~C98BdfD#uWnMrAsc6R7-|%HOD*MCBAJr&76q z%7Yxjp{qIcG>6)9s1JvRa43;O$s8Kap%EM!#i2 zwT-Dwptc3IS5SKuwbxR69ksVmdposvQhN`z_fy-2+WypzqINvBKU4b~wVBlBQM-WJ z#nhHjyMo%))UKs=1GSr}t)RAw+8S!>s69sQ32IMKdxj%863>wfIdU6Ep5RCajtt;P z5=VaHNDfElaAYn=7I0)SN6I*|f+L$avXvt{II^1~`#5rtBZsJqrmiJ**Hd>Bb+=M? zJ9Upy_at@CQ1={lFH-jgb#GJGjk@mC^`Pz(>iSaGpSpq64We!^by?KqP`8S@P1J3r zZU=R{s5?yEDeBHr-+=l^>Z7TTr9OfB7S#Wp`pc=mlKQKtzn1#zsK1{2JE-qT{ioFT zroJ!r{iz>F{UGXxP@hPBGWEl$A3^;n>Qks6OZ|B2f2RI7>L*d3Mg4T@XHuU>eF62w z)X$-QF7*qjUrc=&^(&}fMg1n~w^Dzcqd3}-qc?E$PLAHg(Kk5So}-;OI*g+~a&#m| zOF6ofqsuw^2gd@(A~<$0#~$I>;~eY9vB4Z0#<8UwTf?#S9FODp`5bS~@z*%shU4uy zK9b|(IG(}r9UMQ%@k9J^J%8N6A9wS|$NcdHe+=M{`TVh*KUQ(#LQY)4iK{r#ofEw{ z(T5ZBIkB7*t2o)5lb3U{B`3RbvL`1$UUK%lPw3{_Mh^AM$5U{w(Cr zdHlJMQ|EE&VoqJksrNYbF{eJ`)bE^H!l`APK9AEEbNW(FKgH>nIsFQ!|I6ujIo+4j ziJVU7bP=a#bGnq%^EthU(@Qyhnln+HY0Q~8&LnWA1!u12%)dBuBWG^r%x#>xmotxW zrafmmb7l}{k~x#gnX#N1&zTI)OySI2&Me~0HqPwl?75t6#@UBB`y^+-n2+9ziETU%?2$SiyL~&w^hCGX--63j~V=Wr7ug)q=Hx4TAlG3PF{iMo=d>CO9ED zB{(C5SRphM!Yx90ObG3S&`$`%gfL483xu#t2rGoJN(kjb*d&B4Lf9^ZT|(F^glZxD zAvA~=8k{3EI8SJBfzaSWp~1yMgXe?>uL%uW2@To`4LS%7-WD2k5gL3fH26$t@VU_7 z3!%YxLW4A+!8oD81fjt%LW3DXgIu9OzR;jhXfRJ`uu5pKMrg2JXs}Uec!SXJaiL*9 zp<$xX@LQqbcS6G-godd?!*rqH1fk*2Lc=1V;bNg-nb2^B&~UZTaIMgAz0h!n&~UHN z@PN>;QfOEuG(0Ip1R)|qh-f54#0U|86C#=l5zT~%i-d?vgotZ|h?|6n`-O-{goww5 zh^K^zXN8DYgoxLKh&P0Yw}gl`Ld1tcL~kMD8zCZ5h)5P9h6@oRg@`diM4AwhE<|Jr z5i^8{IYPvIA!3mbu~djyDMXYD5$lAA4MM~&A>yzQaZHFfAw--KBF+ktQ9@*6Au?8o zOb{afCPZE&L|!69UM56dAw=FNME+Zd{Era%h!FX>5c!l4`K%E6f)M$#5ZO+M>?lNb z79!sjBD)EZ-G#^=LgXhx91YE)t?H5uz>=qOKI8 zt`?%M6{7AJqMi_)YO)YDONc5GqGk(GzYC3C6B@M> z8oehp8X+{AAT;_}X!NVlC{t)OLuiyMG@2zeDij*678-3A8toGr9TXZJ5*i&A8XXfF zoe&!RDKt7GLL6r%4DqVE@?9~7b=7NTDg zqF)uFUl*d^6rx)R(QSq34np+XLUb1)dV~-?L5R*0qNfYdGll3pA-X__E*7E}3DHZ1 z=;cE6N+G&jh+Zc|Zxo`B3XPiyjc*kiKQ1(GBQ)+JH0~-ieqU(ZU1Lth-oIo zTqwj`EyUa?#M~mp+%Cl2CB)n-#5^LzJSN0EDa1S@#5^y=yeP!{pAgeoh#4TnOcY{r zg_zkwOsNnvUx-;K#HAvRKojT2&<2(jl1 zvF8i1&4k#NLhLm{>_3Ir>xI|{h1iFL*yn}VmxS0?gxJ@F*bYMM+d^y?A-1a!+f#@g zAjEzp#C{{h4iRF%6=F+;*rh`3av^q=5L+(9RtT}jg*ZZ7Lm@6oh-)mw#R+le3vtbb zxE4a(B|_X~LfjQX+;u|S?LypxLfq>@Tt^|Un-JGsi0dK5eIms565_rT;=U5%1_^P4 zg}7ltT#^tsS%_OK#2pgiBZc^Lh4}M@_~t@<3nBgzA^uV!{#GIWK_UKOA^tHT{z)PJ z86o~TA^tTX{{Mvd)|xzA|!k%B>W;IWD5y1g@imIp+HC|77|tq32TLf4MM_ZAz_=4 zuv18=5E80{gc>2?h>&nrXwpDv5+O8cBs577nluxdv=o|LEj0Ou(BwLy$sza6=d=`>ju4uT i5}HmDnobj%=Kg;U Bool { + private func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { // Override point for customization after application launch. return true } - func applicationWillResignActive(application: UIApplication) { + func applicationWillResignActive(_ application: UIApplication) { // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. } - func applicationDidEnterBackground(application: UIApplication) { + func applicationDidEnterBackground(_ application: UIApplication) { // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. } - func applicationWillEnterForeground(application: UIApplication) { + func applicationWillEnterForeground(_ application: UIApplication) { // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background. } - func applicationDidBecomeActive(application: UIApplication) { + func applicationDidBecomeActive(_ application: UIApplication) { // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. } - func applicationWillTerminate(application: UIApplication) { + func applicationWillTerminate(_ application: UIApplication) { // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. } diff --git a/tools/AceBox/AceBox/Base.lproj/LaunchScreen.xib b/tools/AceBox/AceBox/Base.lproj/LaunchScreen.xib index 816612e..6e80504 100644 --- a/tools/AceBox/AceBox/Base.lproj/LaunchScreen.xib +++ b/tools/AceBox/AceBox/Base.lproj/LaunchScreen.xib @@ -1,10 +1,19 @@ - - + + + + + - + + + + + HelveticaNeue + + @@ -15,24 +24,24 @@ - - + + - + diff --git a/tools/AceBox/AceBox/Base.lproj/Main.storyboard b/tools/AceBox/AceBox/Base.lproj/Main.storyboard index cc32045..d68453c 100644 --- a/tools/AceBox/AceBox/Base.lproj/Main.storyboard +++ b/tools/AceBox/AceBox/Base.lproj/Main.storyboard @@ -5,7 +5,7 @@ - + diff --git a/tools/AceBox/AceBox/Info.plist b/tools/AceBox/AceBox/Info.plist index 222ac74..6a070d0 100644 --- a/tools/AceBox/AceBox/Info.plist +++ b/tools/AceBox/AceBox/Info.plist @@ -20,8 +20,20 @@ ???? CFBundleVersion 1 + LSApplicationCategoryType + + en + LSRequiresIPhoneOS + NSLocationAlwaysAndWhenInUseUsageDescription + 需要始终访问你的地理位置 + NSLocationWhenInUseUsageDescription + 需要在使用应用时访问你的地理位置 + UIBackgroundModes + + location + UILaunchStoryboardName LaunchScreen UIMainStoryboardFile diff --git a/tools/AceBox/AceBox/SecondViewController.swift b/tools/AceBox/AceBox/SecondViewController.swift index b403572..3e2c11b 100644 --- a/tools/AceBox/AceBox/SecondViewController.swift +++ b/tools/AceBox/AceBox/SecondViewController.swift @@ -7,20 +7,94 @@ // import UIKit +import CoreLocation -class SecondViewController: UIViewController { +class SecondViewController: UIViewController, CLLocationManagerDelegate { + + var locationMgr:CLLocationManager! + var cnt:Int = 0 + var labelGPS:UILabel! override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. //view.backgroundColor = UIColor.blueColor() view.backgroundColor = UIColor(red: 0, green: 0.47843137250000001, blue: 1, alpha: 1) + + locationMgr = CLLocationManager() + locationMgr.desiredAccuracy = kCLLocationAccuracyBestForNavigation + if #available(iOS 9.0, *) { + locationMgr.allowsBackgroundLocationUpdates = true + } + locationMgr.pausesLocationUpdatesAutomatically = false + + //locationMgr.distanceFilter = 50 + + locationMgr.requestAlwaysAuthorization() + + locationMgr.delegate = self + + if CLLocationManager.locationServicesEnabled() { + locationMgr.startUpdatingLocation() + } else { + print("no location service") + } + + labelGPS = UILabel(frame: CGRect(x: 10, y: 20, width: 300, height: 100)) + labelGPS.text = "searching" + labelGPS.textColor = UIColor.white + labelGPS.numberOfLines = 3 + self.view.addSubview(labelGPS) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } + + + func locationManager(_ manager: CLLocationManager, didFailWithError error: Error) { + print(error) + } + + func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) { + if locations.count > 0 { + let locationInfo = locations.last! + + let msg = "次数:\(cnt)\n经度:\(locationInfo.coordinate.longitude)\n纬度:\(locationInfo.coordinate.latitude)" + + cnt += 1 + + //let alert:UIAlertView = UIAlertView(title:"Get Location", message:msg, delegate:nil, cancelButtonTitle:"Yes") + //alert.show() + + print(msg) + + labelGPS.text = msg + /* + let fileManager = FileManager.default + let filePath:String = NSHomeDirectory() + "/Documents/gps.data" + let exist = fileManager.fileExists(atPath: filePath) + if exist { + print("exist \(filePath)") + let data = "\(cnt) \(locationInfo.coordinate.longitude) \(locationInfo.coordinate.latitude)\n" + //try! data.write(toFile: filePath, atomically: true, encoding: String.Encoding.utf8) + + let writeHandler = try? FileHandle(forWritingAtPath: filePath) + writeHandler!?.seekToEndOfFile() + writeHandler!?.write(data.data(using: String.Encoding.utf8, allowLossyConversion: true)!) + + let rd = fileManager.contents(atPath: filePath) + print("content: \(String(data:rd!, encoding: String.Encoding.utf8))") + } else { + print(NSHomeDirectory()) + try! fileManager.createDirectory(atPath: NSHomeDirectory()+"/Documents/", + withIntermediateDirectories: true, attributes: nil) + let createSuccess = fileManager.createFile(atPath: filePath, contents: nil, attributes: nil) + print("create file \(filePath) return \(createSuccess)") + }*/ + } + } } -- 2.55.0