tor-commits
Threads by month
- ----- 2025 -----
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
February 2014
- 23 participants
- 1529 discussions

[torbirdy/master] Update the ChangeLog (#10588 and better formatting)
by sukhbir@torproject.org 11 Feb '14
by sukhbir@torproject.org 11 Feb '14
11 Feb '14
commit 195d10ab445505ba3b1fc7891eed08215445c8c7
Author: Sukhbir Singh <sukhbir(a)torproject.org>
Date: Sat Jan 11 20:40:03 2014 -0500
Update the ChangeLog (#10588 and better formatting)
---
ChangeLog | 207 ++++++++++++++++++++++++++++++++-----------------------------
1 file changed, 108 insertions(+), 99 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 3719be7..d333f4b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,121 +1,130 @@
0.1.3,
- The default keyserver (hidden service) has been updated:
- hkp://qdigse2yzvuglcix.onion
- New translations:
- Japanese, Malay, Russian
- Show the Sender header in message pane (closes #10226)
- Draft messages on IMAP accounts are now saved locally (closes #10309)
+
+ * The default keyserver (hidden service) has been updated:
+ - hkp://qdigse2yzvuglcix.onion
+ * New translations:
+ - Japanese, Malay, Russian
+ * Show the Sender header in message pane (closes #10226)
+ * Draft messages on IMAP accounts are now saved locally (closes #10309)
+ * Remove all traces of TorBirdy's installation including restoring all
+ preferences (closes #10588)
0.1.2, 04 Nov 2013
- New options:
- restore default TorBirdy settings
- toggle checking of new messages automatically for all accounts
- The minimum version of Thunderbird we now support is 10.0 (closes #9569)
- `--throw-keyids' is now disabled by default (closes #9648)
- We are no longer forcing Thunderbird updates (closes #8341)
- Add support for Thunderbird 24 (Gecko 17+) (closes #9673)
- Enhanced support for Thunderbird chat
- We have a new TorBirdy logo. Thanks to Nima Fatemi!
- Improved documentation:
- https://trac.torproject.org/projects/tor/wiki/torbirdy
- Add new translations and updated existing ones
- Please see the Transifex page for more information and credits
+
+ * New options:
+ - restore default TorBirdy settings
+ - toggle checking of new messages automatically for all accounts
+ * The minimum version of Thunderbird we now support is 10.0 (closes #9569)
+ * `--throw-keyids' is now disabled by default (closes #9648)
+ * We are no longer forcing Thunderbird updates (closes #8341)
+ * Add support for Thunderbird 24 (Gecko 17+) (closes #9673)
+ * Enhanced support for Thunderbird chat
+ * We have a new TorBirdy logo. Thanks to Nima Fatemi!
+ * Improved documentation:
+ - https://trac.torproject.org/projects/tor/wiki/torbirdy
+ * Add new translations and updated existing ones
+ - Please see the Transifex page for more information and credits
0.1.1, 20 Mar 2013
- Add a dialog for new users that is shown during the first-run (closes #8238)
- Do not confirm before sending an email if Enigmail is enabled; default
+
+ * Add a dialog for new users that is shown during the first-run (closes #8238)
+ * Do not confirm before sending an email if Enigmail is enabled; default
behavior changed from 0.1.0 (user opt-in allowed through the preferences)
- Restore all account settings that were changed on uninstall
- Allow the user to use Thunderbird's automatic configuration wizard in case
+ * Restore all account settings that were changed on uninstall
+ * Allow the user to use Thunderbird's automatic configuration wizard in case
they don't want to use our manual account configuration wizard
- Set the SOCKS port to 9150 to reflect the change in the latest TBB
- Add opt-out from TLS-specific settings (closes #8420)
- Allow additional keyservers to be used/changed (closes #8332)
- Add Korean translation (thanks to cwt96)
- Add Norwegian Bokmål translation (thanks to lateralus)
- Add Galician translation (thanks to tombouzada)
+ * Set the SOCKS port to 9150 to reflect the change in the latest TBB
+ * Add opt-out from TLS-specific settings (closes #8420)
+ * Allow additional keyservers to be used/changed (closes #8332)
+ * Add Korean translation (thanks to cwt96)
+ * Add Norwegian Bokmål translation (thanks to lateralus)
+ * Add Galician translation (thanks to tombouzada)
0.1.0, 11 Feb 2013
- Our first release in the Beta release series! Hooray!
- Translation updates:
- Add Gujarati translation (Kartik Mistry)
- Add Dutch translation (thanks to Rejo Zenger)
- Add Serbian translation (thanks to Nikola Nenadic)
- Add Hungarian translation (thanks to vargaviktor)
- Add Italian translation (thanks to spawned76, Michele Orrù and jan)
- Add Basque translation (thanks to Antxon Baldarra)
- Add Latvian translation (thanks to Ojārs Balcers)
- Add Portuguese (BR) translation (thanks to Bruno Geronimo, Rafael Costa)
- Add Polish translation (thanks to bogdrozd)
- Add Greek translation (thanks to mitzie, konpas1986)
- Add Chinese (Simplied) translation (thanks to ln191810)
- Add Russian translation (thanks to Александр)
- Add Arabic translation (thanks to alshara3, Fadi Mansour)
- Update French translation (thanks for arpalord)
- Update Spanish translation (thanks to Juan Garofalo, strel)
- Added Transparent Torification mode for TorBirdy
- Disable all plugins
- Added opt-out from setting time zone to UTC
- Add Tor-JonDo-Preferences quick switch (patch by Karsten N)
- Support for Whonix (http://whonix.sourceforge.net/)
- Improved security: better SSL enforcement
- Add Tails support
+
+ * Our first release in the Beta release series! Hooray!
+ * Translation updates:
+ - Add Gujarati translation (Kartik Mistry)
+ - Add Dutch translation (thanks to Rejo Zenger)
+ - Add Serbian translation (thanks to Nikola Nenadic)
+ - Add Hungarian translation (thanks to vargaviktor)
+ - Add Italian translation (thanks to spawned76, Michele Orrù and jan)
+ - Add Basque translation (thanks to Antxon Baldarra)
+ - Add Latvian translation (thanks to Ojārs Balcers)
+ - Add Portuguese (BR) translation (thanks to Bruno Geronimo, Rafael Costa)
+ - Add Polish translation (thanks to bogdrozd)
+ - Add Greek translation (thanks to mitzie, konpas1986)
+ - Add Chinese (Simplied) translation (thanks to ln191810)
+ - Add Russian translation (thanks to Александр)
+ - Add Arabic translation (thanks to alshara3, Fadi Mansour)
+ - Update French translation (thanks for arpalord)
+ - Update Spanish translation (thanks to Juan Garofalo, strel)
+ * Added Transparent Torification mode for TorBirdy
+ * Disable all plugins
+ * Added opt-out from setting time zone to UTC
+ * Add Tor-JonDo-Preferences quick switch (patch by Karsten N)
+ * Support for Whonix (http://whonix.sourceforge.net/)
+ * Improved security: better SSL enforcement
+ * Add Tails support
0.0.13, 28 Sept 2012
- Translation updates:
- Add Hebrew translation (thanks to Sharon Dvir)
- Add French translation (thanks to N3b)
- Update German translation (thanks to Karsten N)
- Add Spanish translation (thanks to Juan Garofalo)
- Code cleanup: prefixed generically-named IDs with TorBirdy namespace
+ * Translation updates:
+ - Add Hebrew translation (thanks to Sharon Dvir)
+ - Add French translation (thanks to N3b)
+ - Update German translation (thanks to Karsten N)
+ -Add Spanish translation (thanks to Juan Garofalo)
+ * Code cleanup: prefixed generically-named IDs with TorBirdy namespace
0.0.12, 27 Sept 2012
- TorBirdy now has localization support
- Current languages: English, German (translated by Karsten N.), Punjabi
- TorBirdy code cleanup: fix global namespace pollution
- Do not select the last selected account to prevent automatic login
- (TorBirdy selects 'Local Folders' on startup to prevent this)
- Restore proxy settings at TorBirdy uninstall
- (settings prior to installation of TorBirdy)
- TorBirdy now allows HTTP/SSL connections
- Users may opt-out from `--throw-keyids'
- Enhanced TorBirdy JonDo support (thanks to Karsten N.)
- Fix a bug in 0.0.11 that prevented account preferences from being set
- Add Screenshots directory
- TorBirdy no longer requires a configured HTTP proxy for full use with Tor
- TorBirdy now enforces the safest HTTP proxy usage possible with GnuPG
+ * TorBirdy now has localization support
+ * - Current languages: English, German (translated by Karsten N.), Punjabi
+ * TorBirdy code cleanup: fix global namespace pollution
+ * Do not select the last selected account to prevent automatic login
+ * - (TorBirdy selects 'Local Folders' on startup to prevent this)
+ * Restore proxy settings at TorBirdy uninstall
+ * - (settings prior to installation of TorBirdy)
+ * TorBirdy now allows HTTP/SSL connections
+ * Users may opt-out from `--throw-keyids'
+ * Enhanced TorBirdy JonDo support (thanks to Karsten N.)
+ * Fix a bug in 0.0.11 that prevented account preferences from being set
+ * Add Screenshots directory
+ * TorBirdy no longer requires a configured HTTP proxy for full use with Tor
+ * TorBirdy now enforces the safest HTTP proxy usage possible with GnuPG
TorBirdy attempts to disable all name resolution in GnuPG due to a serious
SOCKS5 problem with GnuPG proxy options to how we invoke GnuPG; GnuPG only
- supports SOCKS5 when it is linked against libcurl (>7.21.7) and hostnames
- are not used. This is outlined the following bug:
+ supports SOCKS5 when it is linked against libcurl (>7.21.7) and hostnames are
+ not used. This is outlined the following bug:
https://trac.torproject.org/projects/tor/ticket/2846
0.0.11, 04 Aug 2012
- Implemented an algorithm to generate time-independent message-ID (apply
- the patches in patches/ to a custom Thunderbird build)
- Remove the 'Reference' and 'In-Reply-To' headers when forwarding a message
- Implemented a preference setting for TorBirdy with support for adjusting:
- proxy settings
- account-specific settings
- Support for testing proxy settings: https://check.torproject.org
- Disable push email for IMAP
- Various other stability fixes
+
+ * Implemented an algorithm to generate time-independent message-ID (apply
+ the patches in patches/ to a custom Thunderbird build)
+ * Remove the 'Reference' and 'In-Reply-To' headers when forwarding a message
+ * Implemented a preference setting for TorBirdy with support for adjusting:
+ - proxy settings
+ - account-specific settings
+ * Support for testing proxy settings: https://check.torproject.org
+ * Disable push email for IMAP
+ * Various other stability fixes
0.0.10 Thu, 12 Jul 2012
- Don't check for messages on start up
- Now includes patch in source for upstream date header modifications
- Apply patches/date.patch to a custom Thunderbird compile
- Use SSL/TLS by default for both outgoing and incoming servers
- Disable 'Get new account' from loading at startup
- Set default server ports
- For already configured email accounts, disable automatic email fetching
- For accounts created through the manual account configuration, disable
- automatic email fetching
- Added support for resetting user preferences on extension uninstall
- Various privacy fixes as suggested by Karsten N
+
+ * Don't check for messages on start up
+ * Now includes patch in source for upstream date header modifications
+ - Apply patches/date.patch to a custom Thunderbird compile
+ * Use SSL/TLS by default for both outgoing and incoming servers
+ * Disable 'Get new account' from loading at startup
+ * Set default server ports
+ * For already configured email accounts, disable automatic email fetching
+ * For accounts created through the manual account configuration, disable
+ automatic email fetching
+ * Added support for resetting user preferences on extension uninstall
+ * Various privacy fixes as suggested by Karsten N
0.0.9 Fri, 06 Jul 2012
- Added ChangeLog to document feature progress
- Implemented basic preferences window
- Patch by Karsten N from JonDos
- Supports configuring Thunderbird for Tor or JonDos on the usual ports
+
+ * Added ChangeLog to document feature progress
+ * Implemented basic preferences window
+ - Patch by Karsten N from JonDos
+ - Supports configuring Thunderbird for Tor or JonDos on the usual ports
1
0
commit 4595230e809c5fda1f3a373f7d66e13b6cc6e593
Author: Sukhbir Singh <sukhbir(a)torproject.org>
Date: Sat Jan 11 22:02:51 2014 -0500
Update the ChangeLog
---
ChangeLog | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index d333f4b..2e81449 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -6,8 +6,8 @@
- Japanese, Malay, Russian
* Show the Sender header in message pane (closes #10226)
* Draft messages on IMAP accounts are now saved locally (closes #10309)
- * Remove all traces of TorBirdy's installation including restoring all
- preferences (closes #10588)
+ * Restore preferences to the user's own defaults instead of Thunderbird's
+ (closes #10588)
0.1.2, 04 Nov 2013
1
0

r26606: {website} fix the donate button issue. (in website/trunk: donate/en images)
by Andrew Lewman 11 Feb '14
by Andrew Lewman 11 Feb '14
11 Feb '14
Author: phobos
Date: 2014-02-11 03:08:54 +0000 (Tue, 11 Feb 2014)
New Revision: 26606
Added:
website/trunk/images/paypal-donate-button.gif
Modified:
website/trunk/donate/en/donate.wml
Log:
fix the donate button issue.
Modified: website/trunk/donate/en/donate.wml
===================================================================
--- website/trunk/donate/en/donate.wml 2014-02-10 23:21:43 UTC (rev 26605)
+++ website/trunk/donate/en/donate.wml 2014-02-11 03:08:54 UTC (rev 26606)
@@ -112,8 +112,8 @@
<div>
<label for="custom">or enter a donation amount:</label><input type="text" id="amount" class="amount" name="amount">
<input type="hidden" id="a3" name="a3" value="0">
- <input class="donate-btn" type="submit" name="donate" value="Donate" alt="Subscribe to Tor with PayPal - it's fast, free and secure!">
- <!-- <input type="image" src="../images/btn_donateCC_LG.gif" name="submit" alt="Subscribe to Tor with PayPal - it's fast, free and secure!"> -->
+<!-- <input class="donate-btn" type="submit" name="donate" value="Donate" alt="Subscribe to Tor with PayPal - it's fast, free and secure!"> -->
+ <input type="image" src="$(IMGROOT)/paypal-donate-button.gif" name="submit" alt="Subscribe to Tor with PayPal - it's fast, free and secure!">
</div>
<input type="hidden" id="p3" name="p3" value="1">
<input type="hidden" name="sra" value="1">
Added: website/trunk/images/paypal-donate-button.gif
===================================================================
(Binary files differ)
Property changes on: website/trunk/images/paypal-donate-button.gif
___________________________________________________________________
Added: svn:mime-type
+ image/gif
1
0

[tor-browser-spec/master] Update transfer section to remove old stuff and set permissions.
by mikeperry@torproject.org 11 Feb '14
by mikeperry@torproject.org 11 Feb '14
11 Feb '14
commit 0d9dacdfdabf952648e238ef15c2d3b66451ce41
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Mon Feb 10 18:00:12 2014 -0800
Update transfer section to remove old stuff and set permissions.
---
processes/ReleaseProcess | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/processes/ReleaseProcess b/processes/ReleaseProcess
index 8a668da..3e786bd 100644
--- a/processes/ReleaseProcess
+++ b/processes/ReleaseProcess
@@ -31,8 +31,11 @@
#. Distribute build to tor-qa(a)lists.torproject.org
#XXX: Currently manual
-#. Transfer builds to vescum
+#. Clear out old builds, transfer builds to vescum
+ torsocks ssh www-master.torproject.org "rm -rf /srv/www-master.torproject.org/htdocs/dist/torbrowser/3.5*"
torsocks rsync -aP $TORBROWSER_VERSION www-master.torproject.org:/srv/www-master.torproject.org/htdocs/dist/torbro…
+ torsocks ssh www-master.torproject.org "chmod g+w,o+r -R /srv/www-master.torproject.org/htdocs/dist/torbrowser/3.5*"
+ torsocks ssh www-master.torproject.org "/home/mirroradm/bin/trigger-mirrors"
#. Sign individual bundle files
# XXX: This blocks on Erinn currently. We use her key for file sigs
1
0

r26605: {website} Revert "fix broken donate button -- patch by mrphs" This rev (website/trunk/css)
by George Kadianakis 10 Feb '14
by George Kadianakis 10 Feb '14
10 Feb '14
Author: asn
Date: 2014-02-10 23:21:43 +0000 (Mon, 10 Feb 2014)
New Revision: 26605
Modified:
website/trunk/css/layout.css
Log:
Revert "fix broken donate button -- patch by mrphs"
This reverts commit d8ab1be948c780755b62a3bec4d47f38e2fa6db3.
Apparently the broken button problem needs a deeper fix.
Modified: website/trunk/css/layout.css
===================================================================
--- website/trunk/css/layout.css 2014-02-10 23:11:20 UTC (rev 26604)
+++ website/trunk/css/layout.css 2014-02-10 23:21:43 UTC (rev 26605)
@@ -1120,7 +1120,7 @@
}
.dbox.donate input.donate-btn {
- background: url(../images/button-donate.jpg) left top no-repeat transparent;
+ background: url(../images/btn_donateCC_LG.gif) left top no-repeat transparent;
height: 26px;
width: 115px;
margin-top: -3px;
1
0

r26604: {website} fix broken donate button -- patch by mrphs (website/trunk/css)
by George Kadianakis 10 Feb '14
by George Kadianakis 10 Feb '14
10 Feb '14
Author: asn
Date: 2014-02-10 23:11:20 +0000 (Mon, 10 Feb 2014)
New Revision: 26604
Modified:
website/trunk/css/layout.css
Log:
fix broken donate button -- patch by mrphs
Modified: website/trunk/css/layout.css
===================================================================
--- website/trunk/css/layout.css 2014-02-10 22:59:25 UTC (rev 26603)
+++ website/trunk/css/layout.css 2014-02-10 23:11:20 UTC (rev 26604)
@@ -1120,7 +1120,7 @@
}
.dbox.donate input.donate-btn {
- background: url(../images/btn_donateCC_LG.gif) left top no-repeat transparent;
+ background: url(../images/button-donate.jpg) left top no-repeat transparent;
height: 26px;
width: 115px;
margin-top: -3px;
1
0

r26603: {website} add thedaywefightback banner -- patch by mrphs (in website/trunk: images include)
by George Kadianakis 10 Feb '14
by George Kadianakis 10 Feb '14
10 Feb '14
Author: asn
Date: 2014-02-10 22:59:25 +0000 (Mon, 10 Feb 2014)
New Revision: 26603
Added:
website/trunk/images/thedaywefightback.png
Modified:
website/trunk/include/foot.wmi
Log:
add thedaywefightback banner -- patch by mrphs
Added: website/trunk/images/thedaywefightback.png
===================================================================
--- website/trunk/images/thedaywefightback.png (rev 0)
+++ website/trunk/images/thedaywefightback.png 2014-02-10 22:59:25 UTC (rev 26603)
@@ -0,0 +1,521 @@
+�PNG
+
++IHDR��_� tEXtSoftwareAdobe ImageReadyq�e<
+�IDATx��XmL�W�Z>��ZZH)X�C����e�E���@4D�h@4F4�4b¢K��e��������H�@Pԉ�0������N�dY2}Ϗ����s�y��i���^xᅗwR6n����n�|��������-��ŋ�����v���Mx�0�K����#Gfc�����P|�۷oS�7oެ��9t�PmmmAA�֭[;;;=<<6l�H��/_���趶���y�f�ZZZ�?~|���aaa����t�����D'N�8{�,<�D���Dd�m�6�_�~���z�Ν��۷-&E�����K�Rh,,,���0{p��P������ ���3��v0���Z��uK� �����w�L&��J����mڴI ��2+�tSS�������.\@����DX"� �3g�www[ZZ������a������W�ak��WCb>�ɍ7&''���5�)))���+?~�v]�\�v�"'�cǎ��L������w����ӓ?22����p�L�OO�k��o��,cJ����>vGG�ҥJl���Ԙ�lBl~�@�#��Q�_�+Ny��6�w��j+��t
+Źs�""T���8&qq�===tP-ZBTT����c�'%%k4???�DXXX�nDDDHH4+W�Dj�ׁ^�C�`3�=�<���� N ܀�Y~~>�q����@�D���+��3�H*��5�9%Z��X7FB3::���?<<W c��o�>44D�@8u��8�4#h���ȓ8�������������Ur�ΝիW�װ��=�KJJp"f��6�ܪ���u���$8u�Ӓ��F����t�8�JNN���%@&�Q�!Mtt4]�]�В>����!M��?K#}CC`��,~���!,�+W__O�ix�
+W)w.cܨ
+P�P��gll�BزeZ��!���l��cbb8)�vݺu��+����Ʋ4�* //���'+����ݵ\D��4���[[���k���={Fw2�2G�YeM�ɓ'(Ԫ��X7Ґ�r:}�4iP�7�/%7\�z����ȴ���ub�(1���@�.e��|����+�f��hL�`3��w]�W�BT�x�f�P�AAA\�����4�%s����Ć�;7s��i$l��g3'A�AeeeFF�ӧO�ؘg��N�17\�7s�̙o�9 f<v��t�-22�;���2G�d0/���պi��-�m�Q�\�eM��N8~��1ٶm�m�O>Z �Z��1������`�m��ֵ- c����{�Dda h���Σ:�.��<���ʊ���ICu���ZhS�W+��R�E)jvh�a�XlV)�1U�/y��+�H����*���bׯ?��]"��A?3�D'�h'ۘ_�{�+߹R�L��� �Q�&�7��g���22�v�Re^W�b�+Wĥ-^ ~~�����|�7?m�^W��<��W�kZ��qR��^*�g^��T�]�?�0��~�$���Z�\f\v� �ݸ���L�G��Ԭ��v�b��ok��1�>L��D�$s��H�5�q32ц�p�Z�7"�����B"�2H���?��;>4:ٟ��:/���/��-�V����7A�X�Z\�# l:TB`:�� ei�FP� Y�C�0��L���c0,D���A��� nٌ�c,[0�u�aQ�}��z����lY�����s�;���s�=�G&�d�I�g�N�>}�ʕC3�+���y!�'����'}Paa�D���s�ƍ������R�vp�p<�m۶E��Y�n5� ++uvv���ٷo���#�^�lYUUnh���uϞ=�;;;���:::��ر��Ç�6mR�E\7lؐ���s�Φ�����5k�(DxDIIIWWב#G�u
���0��x�k����4�^�/++[�v-�[�lA��dbg�^�pO�녷t���k�+�.\�ߕ*��x~��E
+�֭[�j5��&0�.]���h~~���;R�T*���a������988����'�.t�>�ѨK������t:8�Ң��fff���xyy)ij`�J�_����x����ccc�A!�#L�����ݻxā��bN5._���s���uuu������EEE�����<QS{{;F�a�'�/<&+�}zL��(-�>&���5..5!f�꼽�}|\0�!ټysEE��0�����ի�V5g��a~����kN}j;T��u>�ѧ��/~���NAAAp ""��!a�0?���FFF0�1w���#"�ЄiR[[�G`�+�Jt�%���G&� ���uŊ$'����X,'N����`��$��<y�p���www���Z�V�U8|cd��ݒ�W�-�:���#�q�v�d`RMM+�&�fsuu5�1x?�+����b��� �W���]�v�I$oll��G�JKK����s�����zy�3�����qϛ�/.~��BVVD�j�+++��LM�䌽�*5٠�#�����HHSB��:��D��III�*�dgg�-Xwy=�V��ȵ���C��J�����>j����F ���<\M&[EM|ewhh�p�Ԋ\jxx����=�0]$�Ԓk�9���~�ر��
+J�Tb��&�ܹ�}��iӦ�z�3۰�0�/��o�F����7L�{K��]%%n�VKta7B:H��� exL�H�yU����Wl��ܺu++�0ֶq+�R�ߛ����z�799{ �v��31�$Y �X�)j�9�9���D�+��+W��9��)R��><�+� ���n��sD���� �s$�|O�h��s�_b�I+]�͛'o��-a@�TͶ4.��j�Sͱ���_�-˛����2�ף���D}5����z�`S���ש{��
+������y)�gn��R=����c
+?L�m�b��jk��=h/��~\@��Y�$�?��K�̷E}5���..��7�l|��s�+�S��iC
+(�j5J*���j�a�,/ǘ9n��s�.��3��Cm�tXO��/��o-p����|m����y��y؎�@�*��ʃ���+dݬgM��]ɒ�����"������>�$���h�����������${�Ib_���(����lHX�W���%���'^��U�!��@�z��ʘ�嶽z��%vĆZ6��*R�O�AA�
+r�i1�����1��}<��.�L2�$�3E���DuD��E��<U����QkAkA���B4�P��!F���G��T!���GC
+��A���LA|`i0�?X�EM�*��=xv���6Mm;_�;���̜��s�Y�'!!!!!!!!!!!��}i0��A0���_%;;����~doo?gΜ��8隯�P���K'-I1��BWO�E�7z�����G�'�E���,ڜ/����`����<333..# ##��u��K�T�T*��2*7���H����ҪU��:SOO^�����|֯_���p��ʹ�4������v?}����Ҡ\�#�"E����#G�gL��a�:�"���'O�mذ��M���L���4,�㚚~���:t���x��9U�ѡ����H���Fݨ])))�w�njj�����DII ���D�7�^�Y��hudd$Evtt�\��+�{�Agh��nnn���Wݑ�C�l�b���۷����5���/��@������b2�v#٥!o1H�\�c}��V�Z��0��H���K$i�����E�o�=�ID]g1
+���PU�ڍ���Dzd��Ie��{Y�o/������kװ~,Z��u��#OX���%''cI6�w`X477wvvnY�ʄ����O����o�]6c�Cg�6�Ue�~�h���c��\�����+s3Vf�n�����?���x#z�����=joo�9s�+�Ą��bR
+
+
+�0�Y]Ϡ('�=�q�F��~�:Vм�<�0**
+a��X��P(F[tt4��w[ZZ�$<<��&MB�`_��;w��۷v�Z���<x��,<�E�+��� ����y�z4`�A�'B��,z�ch�D/\��u� ����!;0����gΜQ%LMME��M����ݻ��P[�"����!g�>l�{��=r��K�,Q�crva���e����Wa͚5���h�g�� &����JK6���!�5���ކ��t*x�NEvr�]���ե�ab����l@�b��G���ݰ������ч�56�\�J�r�uz���C�\d�6���Vѹ����a�̆C�n�a܋�B����-��l}PҲ<!�1��_Bww7��<Z�r��p�f��}I�F(+2������ΦZ�?���ww���rk,���Zzb�m��O��"����;uN�<���X;��q�$���n\�,7(���0�I��Y_䙽���Dz$�i]�/��ٞ�T+���z��(�U�Wf�����L ��~�`)�Smi"���8ȴ����D��m�+�khh�
+v�$}���L�e9Of�4�N�k9
+�$����I�}!oK��f���[^^����-��������+�|uA���' O��N������1�ܵ1��u��l��c�g^O�Q�RЍDYZZ�5� D�6��� .�=��ß��8+��fW#��r-+~���,���
+^F�cTʊ���xt��g��eerlG4H�����k�� ��b&T�����:5dL� >�8�S==�y��-e6tM������YEi��ڎ�5b�8?�X?���nF�B�+��w�r<���7�x���,TǢ��x�|�+=�P6+��xb�t']Ͻh?{=���]YV�����>Ȅ;�s�����@~��fi�gʋ��ګb��ZLܦ��Q�8E�ٻ?�s�{�|����U�ܕ��M~�[��� �+����`1f��[}����F�|п�@���ǵ�y&W��?4����g��ϲ�V����<�u�ey�n���#UETe��co�M�evR�wx��Xl���� &.�2��Do>6>\1!�Oz�m&�_�{�N�J�O��x<�;�\�����,�N�6X�*�,z�:�c(t� fy۩��{}�ꒂ��[ۆ���~.���8q�Y)r���So�;R<�?�L��ӑ_�{~�:�ZZUL������d�u\L` ������8�,����z�D����ٮ������c"��4?�E|��E�˷%�7}|6Ӈ3�m��N#���J-�`9������5�u_���uC9y�\�$$$$$$$$$$$$$$�i�){��q�wA���@ ���(b�T��D�?���1_+jb�/L# ""j� ��%�D���G�j�h��J�
+�C��;;�ww[��~�����ٹsg�9s�ܙs�? $H� A� $H� A� $H� A��g�Aπ�+q��F���N�:uݺu�ϟ��cǎ}ڍ�v��:>�fϞ�7�ƍ}}}�����vMQ)�����)�P�� ==]o�͛7Y�5�����o�^�t\�}���t!���͛�V����E~$֯_ߦ&�_
+8��I�d0Nr����"�RFH���ϊMMM�G9�ٲeF�H���/���ڵk����2cƌ�������;w�g��'77�����۷wqq���F�Q
+n}��ə3g&''���{<����(E�5��PW���^^^%%%K�.+�]�p!�:##�{��s��]�h��S&������۶mÃ{��a^��E����8u377'�x+y���믷lق������h)��lll����љL8��w}��w|�nQ�%K������%��ٳ�E�
+�7�|����������Ǐ_�b������ߜ9s(^�!SCCC��A�GEEɔ��GΟ?�G�C�A��j�0l�0�@�UB�H��">>��۶�rkk렠 4)11��?F�***x?4ʙ���n1��(�bo2��H���¯��UUU:oG�&;;/Z��;���I@���������z���
+�r力�]_�zU&�\� �(�"
+�l�tՐ��n������,N�@E$��e�OrsKm��Qsv����?���%ȅ���&E%�1m�4�x@@�4��(OII����2'`�$�Lx�!~�!��M��1�G�r
+7��<��Dqt$U�@�Y��������`xzz������1655!#��я��q�Ɓ��8:�7ޞ�MDz!(~3���3ϝ;GL�z�//e����f� ކ!i�@XX���2�;p������4\]]�駟���������XTT.ǃ�H�ؒ2Q�TH�O>�����g�B4'N�J�=�_�b������[����ٝ:�
+]T�Q�j�!�e�X�P�R��˗/߱c. ������x����
+
+�ܵk���Z�!jÇ�=�� �`�$�N��|=S���Đ�͞�����@M�y���-���Qai����13C���&��prr�.�p
+ !g��>�S����Ӓ�m}�ԤI���@;��a��M2�O1�y!�����H
+�^_z=6���8? ,#Sh����XPP`|i��q�F�)�FM������$�:y��^�|�H#�x�$'��tH����V)�q��dV��(T� 00*1R�="�4h���N͏#zY\�����f�[�ɗ�w���y�|�L�!d��H_K�ȼ��d7��u�Cu�k�T3n�.]�XXդ�Ø8p �=`P�U����֭[2!������лwGp6��י���S&lk�cPB���'%��<�ݑ������[�no]�pr��Lppӆ�3��0x�u���7o�|�B��;9���=پ)e2�'h��o'��C�Y���` ����ҥKW�X��9��~������G/ty�]��0�s�c&u&�L���+��m�_��w�guj���ڂ��('���Q=��͏r�4�}�6#91�r�R=\����2�=��Հh����0^*���j��
+�
+��N��Dr�����2ĉ�)?H�
+D�+�C����# 5Y�z��i��a�>r����i�ijf�X�$�i1�7�6���۷/���%l�jiR��++-�5��O�MZ<���ּSu���~���� klj�~�ƚh�g���&{�jw����_t�YZh@E��0g!{`������b;t�����S�e�\�UUU�����*(�(!/o���,++#ς�@>0�KKK1.)3y�[p����&]�j -�I6���-���Z�~�0R%|M����%��ٗ��.�"11&�����vvvOLu $H��L-��NA���lC�j�� $H��������
+�����ٳ,��\.�u����***�����M���0m�rh]RR˕�9�ЫW/~3n���/]�D�L� &��,(����{��0�adzg��١��t={�lز�7oƿ^]^�����/ϟ�ѩF��Wo��Ƨlٲ�<l��ӧ�����ڽ{�%K��b)))�������� ��߯�b���3��E������q�W0����||��������FQ���0��]���6���={&''�ݻ�����g͚��¬��;h�@�'s�����V�;w�������:��,HG�ح��e���������WWW\ӎG��֭ө������F���5?:Z'3���[>��E���r�J���q��#3��Gj�۟�n�)�EO�_�o�>\��T�qYSS��SSSq����+�F]>�%⩈��cǎQ�.��cL�)Jqrh��Hȗ��2�D;����p�рk///\����$߹sg�NNN�H�|�r���WLr��C�����4Nr��(�����1Dr��aÆ�C�-�@q0�ቨO����@H_��!TI!^�)OO��5h-{�ś`�}D�SUζLj��⺰�c�lI�4��5!!��WSx��D�����;L$�A�!����ΰ�iG/�|����.]�(A$����Ƹ���S�#��J�����0hy9��$��,AAA|�+6 �v��I.SG��2E����LJ��1at��H�N���: c)�ʮ]�(<�NiDr�P��jb��PG����K�w�}W�<�&9�]�����~��E�hP��qd�M�������駟KOQ�:�#>���*7��l�4m��xCOA*ȸm3ġQQQ��22ʝg)�<�O��ݻ�������pK��h���W���-�0�.OOϾ�GU�.(&x�m�F�Ȕ56����q��膴̈́&,�+UZ�mk����S���h?KH��L��^�0j�Z�ˇA�*�Ą�o߾�&�W^Q
I����I�nN�R�I��R&E�M�$<���#���A'�3�h{�!L�6��Pt�}�wҧ�ȸ��̮����;�<�� ��+>�w2�+�?��K#���!���1�g�b)�_��THN��رc���(pD}���9�#�5 CT�D+i�h�m��/nS��s���#V��3�ܠ�"��x\���/t�Y�{�̙�����O<�!JQ���9|!��C&|�g��ڵk��A�0N`��.�G���Slaa!mM��g�9�s�L�8 �7&O�l�H�'��n2G@ll,}��H�9�WL�
+F�N�=�����S}� {���b�-�k�m��y@��6s�L�7H#>��8q�h���FV�A��H��.ȷ7nPA�֑�d�1�2���llO�A��-
+ĭ��W�<�:88��Zk,qq:]��Ɏ'9���7~�PQQӡ�ULi�J�D�X�R�(�l��P������Ȅ3=�e8q���L���z������!9��#�<J� A³�&����E+�Nq�)���;�����6�ie�ZI47�[X(_�
+j�)|d�űQa�M� �HL�Gaą���z4��*+�艪h��&��b3��r��+��r�N;a������M��B�4�u�L���tf
+�;�ג5�֟�BC[��R.���8�t�����(���W�)���7���Vwh̭���&��D�m��0n�m�����)W3<��֨T�����'���Ηy����ќ���x.��ӛݮe��;��lڋ����ʘ���J��q(�j�[�r;�)��QÄ�%���I�G�?8:�ӹ\4��*��v�6�?�����l�
+4��e�bm>=��rz*_�]˝R�i�����?�T�k���؇��Ӝ�L�OM�{�c�h�����:���p���R>�Ϫ��)���s�����$�W�w��R�ߦ��Y��D��������w
+I�G:<��Ř��WEۡZe�=�r��=�&���̉w����/�]J�걅#9��M��ٚ��T�������Ƣɍ�ô4�����P�G/�f��9�ʗ~�!��q9q���j���[�8�n�Pk�8j�*RE�~����&��t"|�]��v�/���/����s�kkD�|0����S�㾩(����x�7�Omre�`wv]*Ľ�e�"G+��#���I����ݸ�0>�-y���� ŏ�k�9={����fu�����g�[�^5R�1��S�qZ[Zڙ��$ya�/s=|���r�,�h\���_w������:&d�U��G��J��61�cGY���6+��5��wW2���搴�M-,��C�XV\�TY�렞j1.7pKn��P���Ao�<�j5����%��\+kT��<S���E�c=*����P���,���)5G�lttX�YUd��$�7��0#W[��TKK�����Y�mgt
+^��r��o���hV^���)c�e˂������Yy��:'2����[��3V+�y֬�V��[�z�����i��K+�O��n�Z�Б���V��{�����
+��?0�`U����/�=l��~L��)�n>���7��ZL���!m���Cǎ�[ǩ&��֦�U���nt��՛[�3s+�q��1��2}�P���`JJ�5�*����_=�4���Ŵ���^��N4�s$����:�o@���fU��-l���������z���-&*>&����_3v�-����L����5.'�q�n����vP�Q�۾�"Ɣ�]�l��e����H?ˡ��fA�@�Υcj����K~L4t�y�0���� �įE�+0C�Ѝ�c�U[�c�suF]̤���$E� $H� A� $H� A� $H� A� x�K��*���e�E��i;�
+b�����F+�/!51�-�[�A�%��&����E�X" ���wP��v�L�wk�_�y�dz�;�7�>s�a��<==���¥����5k����]5~���={��Y���~��Ycc�iD�QH3f�pww��tuu���n�s�NMMͿ�b�x���r;rpp��Dž��#=3�-1}�����`ڴis��}�*���c��7~>x��˽�G� �}�v`` �HѫW�����Z�t�]���3gΜ��e�)����"�PI�P��{o��C��s�� /^lnn�6-���N�ڱcG�z����c�����`�AAArϤ���R�*��;J���u����`>|�,1����J��+=���숈�ݻw��Ā��tB�'�+r����<(,,�{Vn��/��˷mۖ���g�rHDۥ�����ɓ'�H\���/*�RR�@�������6::Z�Q]`"L��k�(>6����ʁ����w��yh-9�����edd����z���666��Y�uu�7i����}���g�yo߾}qqqJJJMM+��/���ʕ+hYnh�����ͅ�۷�MH��fA|UU2�G�����_�>}
+�Q�iӦ��{������H(l�^���бcG�I��tڵ��!�B�˭b���P��`hթ ��%%% ���ʊ��������l$���`tdeeU�/���Dfff�d||��N��k�����K8eT�(`aa)�Hzh�#$�...�B#�?4+�p�GEEXnn��l{�D����Cgl�1d�qqqg�|��+z)*�j�
+4@"���U�ֺv+�:�"1��Iz+�T���{/ȡ�D�
+
+
+K�قmڴA�?~<"*U ��}�����3դ���ٵn�:;�VғWzYYY�G�=z��ի`�+���11+V�@���g��q�#�=111~rr����#F�ؿ?~̟?��#@�83p�mF�<>|8HTɉ�S��5�v�ژ1c�u�������~��{�����,X�F �o��������wvv��s%G�m������\�z5� Đ)���n�@��ׯ�?A0�K �s��d�����b@����o(-���"W44^�H��C���xD�I�9s���0a=!�7n/�%�K5[��3�D�n�lD��у\���5��1�/_=#9ʔx=X�q#9Z��<=[}I��H��~��C�Wjғ+aZ�S�\r��]{��1�&Nj
+��M�4 �B"9m�Z�n����-[������;o�<�F|�pI;�2p�?�f�۷/��
+�HO�G$?t�i]�\�RMz�#5��5kF�͋���ThP˖-i$���GN�F����&i�����'�of��� �e˖�l4UK��F�L�39[��u�%x��WT!?�b�[By�t@#I_�N�B�p��<JZ��֒�#:O�P��K�.�nݒ�J����` .R��@o��ڃ7d�C����ܽ{w�3��cb�-\��{�2�=X����ߡ�����jFD�|�@Ƥd:@��I���@nu(��\p(���ϩb!o䵉M�8��H
+4{�BF� �G�>��poQ��.\ll,\�{��á]\a�M`*WVV�8ѲeQz20T�w�� 2q@"ӭ[7r](|�&2
+�K�N+���.i�,ނ��&@L����2|=�ӂ�)� �2dr�U�D��"��BHZ {^xt��ㄐp�S�N���5
+-A�f.��{���7���SGS����2�bC/�7�:�8�1Cl���f�?� �jq3\Ud�Ц���Y78T8Z4� �����$T�9-�-r<r�4&�,M)I�P����8[[k�����DI����K�j��#��AA/!c����4]o۶-�qE�uGJ�L(@�D_ }�g�pZZM��X��Pb�I��u��O�>���[`&I�A�G#�S[���_t�vQm�!�Q�CutG(�X�������
+�=z�(9�/<Lb�����`.�X��+�n
+�- D2q��"J���5���|�06�0:R��F�U+�\�fB�`�Dk�d.|Q0���������WdҾlp�(<(G�(���'U;�Ȅ�gk����`������d>0��rv�U�D}!�bV?g��'�m̖��v |}����/�Ǫ���\���2��f͚��$:)������I�b�;u���ҋԟ]��J��[Fn�t�>�{'@n��0.��o���ҥKnnnȮW�XA���+1��R������R�T},_��+�̋��o��v�ʕE��e����cB�*�>899-[��o�*5�ԅ"q�;i��Ã,��5!�f]bA�Ӿ�1�� ��7n�0�yof������~��wYYY�����ONN��JS)��+C�n�>��Sx����ys�ر���666ZZZӧO0`Y<�ݻ7�����]jV�ZE?4k���}ӦMd.&&*��Z�VM!����Ϝ93!!��رڏ�2((h�ʕ���/����]:�0�Lς�{/�l@�+�V�P_�����'��K�w��٢I�ÝuI����}�r��u����9J��{n�ysm ��|֢g{��xҽ��R[,�������5�+�<.�Z��v���1::��Ύ�������E�#� �Ν;ȟQSe�:���%Ok`����d}�_�~�$_�����6;;{߾}����&4����c�`ؤ;�ٮ];�'y�ё#G�����Ν;D����C*��R9GGG� 4�.:JMM%cW�>L Akdd��k�7o�����y��I(��z�j�s�΅:���*G����ΝC�166&�_�~��?p�@WWW��� �����q���YYY�b��p��ڵk�(Q�@�#VϘiw��}kk�m��srr.��m�bZZڮ]�v�� �����u++�%%%`=�~//�y��M0rh0S�~�w�DɁ���
F__�$ki�2�$�.�gx��eie,2�S/��a���GW��_�i's#�0�;�^�F�J?b7�C�����Xf3m��ȱ���ܚ��a���u�>+++Aw��_x4쨵g�q���꣓�˦�������{��[�|0�{���7�0//�~w�ڵ����0����/\�@�;����<����e�Oˁu����cCCÊ�
+�A��۷SL��ⷓ�����%K���7N�<������1tw������'�$�3f�Mii)�
+������ɜ�,b�zQQ�{�0'��5��p3f� 9���Ņ�����.\���4iuy.�2�e(����7:%��߿������I)�xA!y���v�=��H��Cqq1j�3��GF�4hF�IF������M�����N�8KƟp{P�����7��o۶+ZbnnN��@��1LN~|�d?�ރF��cF��6ݝ?>4���O>�t��%�n��N�N���}��Yu�VS���uu55W�V�T"R�id�ժтZȖ�m?������}��Y#;̭��z�i�[x�$�y�Ӫ�7v���L������c�w�'<̪�/H�̯��Ѳ�Y}���rj�������Bz�C�C[[1�w�(DC�a]0�r�r�����wUCDEp&���>"�>�A����2X�ǩ�D�jY _@#��HLMM��c�3��,� ��������9s�<�㖟6����+Њ����hƉH�����i�h.�[�6mZbb"J��I����ఒ�}��7���ȶxL+((�v��H-�V��b&߷o_�.:L̻���@��T0�]\��&}��h*�}���3��ʛ�(�Z_���q�JdלXM,P2=VC��^i�����V�B��6����L�<exo�ü�1��j�L�{M�<�W�.+��Z�)@�*���ҬR]F+�AhO� [���ruIy���]�p�z�w��,�j�?�����ŋ��p��+�'�:B�5k���?��A}}}YYYJJ�������b�844T����������E���+����͛7Q�O�>r�3����t��ٳ+�;����Q>����w����ٳ�0j�n*�{�n�����܋`Œ%K�H�%��n[���ӨȮ)���¢��RyS>��|XN�>\Q�NNN`5D>��{������i�F�ֈ# Y�x||�X�V,\��
@7�Q�n�R���)ZV�ud��F��FDD����xx�^�z��Z\���`fXX����������D���J��֔m�8dȐ�3r�[�n�R�;~����5�r��%UZ�w��r��#P�2}�t��\\\�zh�M�6�Y]
+iwPA[�����dPQQA)���v��yr�_�lus���< �`tk��(+�ϟ���Ñ)o
+*�3���bzW��O�2��f�C>V������}!FNA��}}}U�oooU�����kW�B0�m۶QEZ�|���玏>���d+���[�/_�U0����K�.��555�|��(�&ӥ�<y����/���l9��
+����%<#�0a��733��w%���s9���+�R"0-��ѣi�,�ʍ�K�`jԗ��ъd�^�3~p]5����H�xyy��t�/�F��矿Mv�3r��H�U�9��erZZ4�+�:DFF�:uJ��oc�\B�h�nݺ�.s�F���o������Ǐy�mq���6R%�1c�pbb���-����ՙ�?���l]Y#G�Ӌ]{��u1�F����Y+�BU�b �#'�%������xF�(!��ҥKi���"^�#Fŕ+ENN���Ò�|'���~Ҡ"�+F�?}��y���%����:222d_����U��9�5�����5�ڦ"#���UȊL��4�z.�w��N��9ҙ^����?�w�ƍ�9XM�)O�5��ZK
+###�ˊ&}�H
+X��m�?��SnZ.���rp��ܹs'O��J>.�i�&@#?���F��J<rĉ*dC>�R�ȁ�w��2��á�Ȕ������s���1)�~�ȃ��nii)-��f_�L��ĭ&i>.\�w�<]Ǵ����[��_�+7rLo�~M5��1�ً��k�������8q���C�����N��-�ZW�r��ӻ����q��Q\�v����
+��==9�i544ƌ����55_Р�/+-x����츹+ݱ���>[�z5�o'N�@�'�$
+ᰐeЏyx��9&���ŋy������#G�H�Hz�E$T]�v���z 5���HA�"a[��R��u�l6L� �c��w�oU���!��ޞ��0g#/���+9����L�x�۵kG�6��;���������@��������>#�`��!`^ �M��;z�h����f�pj Tǐқ��e�!��B�3H��Y=g��["9oZ�'��
+��2�r�[n4��t�h�2�7o�X�x1�����^��ʒM�դ_hr�,�<�+���������xn*���-��,��@I$�-�����s�V�Zq��
+��d�нh�"�U��cN�#9z������.�G���.�7.�A���,�s��]Boe�]��d��ɇ�8���Er����}���>>>���p~��HOO���mcc��N��U�����I��6;u�X��7¹�� ���%ME���������� ��F|4���D�%_|�w��~)���I���;*@.&O��ݼ����D(��yE��ͅD�
+�d���\��%%%A�����������Gmm_i�-D*��❻�25???n��)�l���|�쩌���$;� �nذa���`�#�0�6��$�,X�S �(cjj���I�A;�&TI��G�O>�DIa�5���(�Ya.�;���!z�z�rwǎ�D�����V�]]��lݺ���ċ�H��FW�ː)n|�08G�ET|����+"9�o�)<==��������Iv���e"y�9)�6}ʣ�����雱�0X��U 0-&&��sq#yXXo���,0}�@)���+��)B��L�!�&~����b�����_�8���l%[�u��A__�P���;������/�s{�����f���B���ү��
+RA@P�->9�My/�&��A����������*d�T�����Y}cBw�<����%l>##�r��uEBG� 3�I�1IMM�Ӡ�ض�˃nњ��� V�|���=A@��n���`���A
+C�3A�*���I:C���J
+�#�cv������������k��y�H����.9Ȅx�F�g{00000000000�;��t�u^/�Q���,���DC=avP�φ��(�T�g��Y���Ά�/�ښ�3����~e���V#p�_ϱ\:j���v�S��}7�e�t����KÆ�\$�wɵ4|��������+���:�/�1�����b
+�]��J.+ƿ���>���J\�{?i���/�>>��OZ4�V��zϿ�WCC���(g��+���%�8̍D��m�.�:�&�Xm���3�SkZ?>ى|���G���F�m1�� ���-��r,���"K��r�F���_q_2Y�۩贻�F��}1:?�w�z�Nm���k^yuD�./��AI�Ł��Y�yb�:���`����%&����O�7z��m�Ʌ������-E�-3������Y96�L/��F�ǜ��;� N�����(n�u٥�[g�n_��7vXBʱ~�i��w�Xu���k��a͊C�m�<���~�a=������E�I��~��>�p�sc_���Nх-�V:��v�OVyg]��%���� �'K�*�����%R�9�U�omR�%R��m��%KS����'GX2����C�IW��ҏؑ�T�g:�FM�,�����룧~���ͬ�f�+{�-�pg�Hgm%=�C=���VMz�7�.�<���-_ʗ��>:�Q�o�;��T�+V�C��,2��6��)3���� �Ϻ����FM��9��f�3��=�|�%댪"F>>����|���NʆLx��U��X�s� C{r�[�NMA�8����<���k�F�I�����c�G��`-V"֎�JH�쪋8�r�M]������ڬIY�L�4�U�^��$i�"|8�+�2i��k79/��o�@�o'�~aT5��\��z�nG�Vp��7��)�J��~��w�8��c����L�-��2���ާ�����_yN~�f���q�t����g����.s��9X0ŵـ������c=����z��N{��ҹ}�²��CM��啯�i��������G_����\Dޮ����J:�d�aJfUNq���k"�]�����P�g����K&ֿ��5E��j_�����H]M,z����GqJVk�=���|�����������c!����h���к��E9
�����[z�[Ϥ�Wl��,�ݍ�U2u����++�UTZ�6����G�[]�v-�n��ꡫ>�km���|�]9�����⤇�h�f-<��i9���^���+Qfb����U\��S۠�yUyI�)��eufF"��+j�<�W,���ዚg��W
+�Tj*�����!�C�� 몞�캰��|�v��������a��+�?��f���W�EΎW�{�v佗<�_*S�/F�z�������?wo~,$��H!�:�X=��MNJd��fώMkj�t���/����K��?��0P��#�wV���?�D���+C�+�j�DV�x�v���ت�r9�52���+m���|z�u��q�+-]��'��{Dt,�|qw���/z�훃��\�}����i;���v���4h�Rɗ�Q�u�P�d�'�ܬT���m4N�tl��u.�FV�+�P�{DC}�H��f^�/�[t���8�g�3*�y��G�ut)���izc���1�g��5��l��!��#��-�zCNf�Ÿ�C
+���Q {�UoP� TXLUEy��Nķ�=~�_��]3�����"�������D�9�������Ʌ�j+o%�)_-�=�x�n3&d����<TWW���VO߸���s�K]Mu3��~�Ly�qݳ+S88.����b���ᬓU�":E��`+��lشhX���N�Ҟ��R������W/F�⑇;iO����3T�eUE=���1#0hi���PY�y�jy�!�c��x�]C�Vw��#�u��+4rx�;)����fmO'�w�YA;��Vt�yBFͣ���w]�K��g�0�E��U?�8'����{��.�$M��Q�g��_b�J��@���������1r�P h
+�x�&�@,r�P$��0>��v�!a���`��3�N��[j�u���N���U�EWo'���nf�+�����������3>|?�h��!�?^͏"u U��,��n:�p�\�o3�*�y��?\}�w���%t�[[;�G��������-�}%V�&Bq�K_� ��pL��%��&#��飳i�u�%Ou���EuQn���Za�b�:�������U T,V����=� jj*?�cҚ4�����?:@Ϡ�����+꒮F���Z7����݄H���qFz[�';紺�?Z$��U�%!�ў���F%��BK���x��Ѐ�ڤ�>1��u�����!�;-�Z��NM@��U3�j��C��`WZ^�(��fM�k����uY�����^���_����{���+�6��v����|��YqIy^I�MkD�{�F��}���}X���Xz�*Ŏ *���E�b�FM�ƒ�D�����Kb�[, ��Qz���.��zf+����ᙝr�{�r�;3w��B�P$��Z%*��@hr��җ,�����p���E�u��YEc>nnn?���`7o�|��q�DR����;v�������U�>T�f̘q����g�֪U�3H`�����Wڒ�m۪RSr��4�R�++�.]���(6߱cK�:u�n�z��ͫW��Y���ܜw��ӧ�َeddL�8qРA�Ǐ?q�DAA��_�IJnժ՟��0�G����|�9�۷����J��;w�|Pi�$**���o�С...�A�f��������)���$+���*X��+W>�����.]�
��<<<\R�7n�lٲO�>���G�cƌ)..���o�َ���q������ӧ�m~t@���QE�� ����ݰa�OU�������?&�C�MMM?��6k�lݺu��ͩ2r�FUT���7r��U�*�����R����˗/�s��h�VVVw���j8WV8!,,l����払��/^�����-��?�:`5:::��dwҤI��(�Xp)h��iӊ��*]H^^ӧ�X,~��Ϳ��dgg��r5G�%�lܸ1/�,\��y��S28Z�=�O�N�EII <K�5����w��㡨p��s4�V��ơV�t8�*U<bcc###�. �@������W�����`��k��8q"N&SR&����
Mrr.%%E��{{{===''���ܘ��J]]]333�k`Tp�sPxH����b�D9�Ҵ�w_��C�tq���u�������%�ŢddIII����&11wr�
+��5�Dᩩ��ps323s��������J�쿁�N��f͚u�&��i�xC\w��h/���Jh���.i �0��Z�GH��>���`���imm�B x�����QĈ��w�w�q �C3�d�d�zi���=���1^h�m�j��hgBB�G�h*����+:�E��Ջ�[
+�AV .G�Dz/�\�����`'�G�8ҁ{Q���1��z66��&X+��� ��g0�
+����1pe�8�A��4))�.�b'ڏ�hd���^hT�!+��h�p��+$mvtt4�G?|UD�j�[W�ĤjCj����ǫW����0awLSS�J;��o��y��߰a�� ?���w�}��]~�H�V��#3.�go��/^�m�6H+�F*ز�lŊs���9�-:y��~;Vi�8CثW/����>xP�n]�b���!>0v{��8gΜ����]�v�.(H��_����=~>|�p��ͨk��GgϞ�s�v>|�����ӧ'N��AjF�S�N����� {��E��gυ#G��OOOR j�4�wt�"]��%zq��u\h`���ܹ3�@NE��|���ԩ D�������=�rl�#�v��mӦM\��f�֭vvvܦΛ7o�ʕ�]�,ݽ{�ƍ8+F���ѻ:u�pi�_�� �$���n�3��ѣ� v���@�;�-Aw@R�4ir�ڵQ�Fᄙ3g^�t ��Їa��mԋƻ��C;�իw�^���n߾�.��3��xa��(����(8%�p��i[`��8��VA��^^�4�<xpӦMO�8����rHR]�t���t`ժUd0j�
+b��jժa�AE;v�OZ�����������C U��t���硥(UL��
+�b�1+MO�l�Gv��).�ˋ�L�8����|�rz2��_Ν;�{7�J��rr�G�bpt����G��6�+������ŋ8�7f��99r�q�Ƒt~�Hb ���03f��NhLHH����'\&�ư]�p"C�¨��_�~< ���~5�^�l,c-�Xb��̙3z�h�e'�24�^�^ �����4�GLτ��YXH��^�|��$j��~ |�;Y���߿O䃦"����+�Dky'Ê��*R�={��-Z�0�ѵkW*C8�Ç����^�zPbl�r��psr�[�^��nݺ54�$�@��T�B!CI�А��G1p8�1�(c'1����?y�7w�^��0D���!�A0/\G��Hv��B��۰4*4P8&lÉ/�zݻwo��ߺu�yM�4C�n"JaH-�4*e���IN�J����=�D���.����:VI�����*�ߣ��4���AT0����^���#Ȕr��J�$KK$4��QȮaÆ�`�I����+�@l#;�'�����BN��;�(���倁6�NC�!]�P/�2�B���@J?���g0r3g�pݨQ#�@^�
+��~�P^#��!g"7�D�t��͛J��I:��@�h<���IN�Dp���ٳ@�xن �RS��|++�1X,���/T-�Ш8z� X�=�4JX��r�儑#���Si��?�m9���Gs.Pz$k�e�Y��`|�`pj�t�μ@��Z��C&��J�+� ߱v�Z��v71Y�As7�4�..��F�*��A���E?��������|6m�[�h�"��xcx0~S�N�NA�]+������4zZ�j���(®o���=g/��ѣG(]F���<�1E@�L�FEEM�4 �n>0�7u�T�D'6r_+�� �%�3DE�h��Zq~�6���G6
+r1p�@B�HN^�a�;ȍ7(PhX2 �4#AX��#e�I���G�)X)��R��}��lmm��b�!1����L�I\4�+N=B�A#9�I���,-�QQ�i��<Q$XX+h��+��o���Z�!@�B9�en��Æ+�^�dɒ�m��n~J#G�Ç�����@��d��:`z �8Y+��F����Do��F�i[�e��#��Ź�@u(|ƌ�p����ǀM�>�{�:d�e@Jq9r-�4.p��+R��(�'x�
+��␉��G�J
+D��oߎa��.+m6~��'���v��3'O���66yA��%��H��Ǝ��� Dl�A���z�@�/��h�/���'X��^'�� �&a'2<�sEr�C�D���_�e�J,^�����NJ���A�Ræ���ɫ�����r���W�6m0p��Zx(0�dr\����RY���.�]�t���G��<,,l�*$+{ �y��B}|��R��K���Һ`�~~~����-�i%\:FڌZ���|Q5�6�kT�8+-' 6�$�r?G����N)ޯ�s�q�v y�(�@�,'�St*|!I<x�)�n�"ip�+llt���]E�)�9�=�vwwG9$7�~h��:q@\b��Pn`!���$K��I�}|,�H�β�'f4�r�G�5"++ �2�A��x�B�xO,aX.\i0�?7kf2O��?���L�G�TnI��s�0Z///��N��J�?�h!� ��d8�aiiI��2DO�]H�����۷�/�IէGI (�E��8Iְ�<��)(y����x������,*bm!�o� D'I 8�@!"�(�l=ѝh$�7��q��0�b�
+�#BÙ�:*Or-�y4�S�P�ZNvBy�r�+�Kkw"+rsG�̢.2�P]+o����bT�Z˳g�2QT98�I��)"�"����G#yA�O�1�����{��}�֭[��U�][���K�~�g`` "'3rf�R}5�%�$'�!)3f̳g�\�nݏ���b&US#j`oo���No�s������0`@�.]���'L����o��`r`� 0����>C�Ν�
+;hР=zП�7&����F��F�{��%���7���������n%h##�{�����!��ӧϿ�g��������-��E��������~~~��ȑ#��W��M�6۶m�??��-�����
+�:::�.ڿ
+QQQ���b�XWW�r1�\����b���e�+�����d��:ܾ}���W�j�Z�jկ_��4ײ��kճgOGG��CR�vm������w���+#5m(**ڼysxx�'��͛7۷����?;;{��K��������<<<�c$Æ+�y������M?���d����+mmmū�3�g�N��0���@,.ݩ��j�r�5Pv��>�P���~��)v��G�
+H۶m�t�+��E�+�:+�Q���&o�
+��PyCF����yQ�C��L��i����`�A�����3f6���z�����߾z�
+?�8OD��n߾}111Ϟ=�&��Ν;�H'N���N �.�ڵ+22266����K�3g�aϵk�_�|�2ꍏ�++mܸ1-��V��쪯��I9����5�ټ�N^ Ǜ�9�|�ҧ��k��R�H���(����Yik����������~X���`_�D��3�l�f(�o=�������]5�Io�d/Р�$��j������ ˍ��@�D�K���ŪU��ܹɠ�DK�֭���K�100��5*---??W+>�+:��ÇK�s�dQ9r��37w�\�2|Ĕ)SRSo�f�m���L��BuhË/�|����UțK���ӧ�%�i�ɠ\�t��ʼn�M��'K��+&L@Oq����ɣuh���?h�СC�]� S˹s�,,,P�cLjiA����C��ׯ���-��~�z���s涅����ף���pR>.y�𡃃m���ӌ3�����q-
+��p-d�+���+V����dPH"�!C��H���o�������{zz���A3 >�������3ؐ���5j�bH��B �
+�-EG8���˗�^����j֬�lmm����'OF]�*�L��;@/��Ե�$�b'a�z1����ÉXc���:���I8�dxg�U���|��4�b�>����F'c%F^���k��ډ�MGt1��4�H\7�v��[���/�p����v|o�n�ݚ�I��3"�#�f4�o߾��^�&Q���7��� +���*&&Z��<��ŋǺ����w��7ɶm�F�&t1$$��I�'�+��eQ���)�y���{�\�B�����{�M]�vMHH
+]�f���t2(�=:u���q��o��a�pX�z�Bοz��2˯�.t���D��V�O��F�L�DWH��A,({���^���[M�4�d�۷o��;���U��|x.R~�v�pINN��h�3N�b�C���|��q�V�F����d�� ڌ�A��$77cX쁢"=�o�~� ��SͦM�x��h��o��7`u�3T��Ojll����&���Ջ.�^ٮ]'�qZ�QO� ��w@&�
+�V�|q2�"���#@?���QY����dU��a����Y����]1�~j"G-^E[ǰ��Q�f�E�ysF:�������_��~�=~�>��YD\�cU���(%��H𥯱gM]m�zN:s��.�`ץ�둽�+�}�o+c=�����"����8L_�7���QRR�@�!��z�o���A��ޭ��h����� +�(�u믿���/:�����ԐRLB�mq=��O���F�%(1`��3g�w����aW��;,dP�gݺu�X�y�l�"({ ��گ�\b��ƍG|D���?�������sZ��eǎd!�ŋ� FH,!�hڴ�PH�rʇ3��_ԤP�/&b';1:W�^!Ec�0
+PN�W�rQ4c:l�Ȑ�"%%d��f� �H�[��1��4���ØoܸL�H*��e�a���G %�&���Յvs����:w��>��֭���_ &A_\'����Yw��L��S���Dhb(�MK>}��m�3�sS�Qص��#��>}]x;�`�o|M���+���{�x�+��'mH��J��-�Ȓݺ�lLO�SWbn<͛��������� �����W]�cf��w��;O��$��`��ܴi��7%�͐jf�LP�M2�6����
�=�j��}�j�1243{Fg�PY���^�e�TBې��,�1|p܈�D@���;��8:b�ooo��¼:##a���d�����Q�G��`i���I&��sW��:�Et�,���=j``��I-���������
+'�=�ك��*<1���l~ԑ��2j�æM��_�+��!��rx����
+����,(���cW�%�w��_ͺ�"?�ii��z*�u�z��䠵��_�p�u>S����r��[9�E�_�\"�eS��Gӳ�J�R��^��ie.��0��7�\��r���T�3�F���(�$�
+��U`W������]��$����� �Ӡ�ȱQx���U-�MڀZ�Q�.[ �pu1���6��#�g���}�"�(�֭[(Z�}Ք��X��Z4�'�Ö�)�(��9�����9y!��OA�G�P�E�+�w3f̏h����*\�µ��Xpp0��lB��_J�s9�v�Zt�K��
+T4�L_~�%\5=~�x�!d��Y�f��A��^��o�v$~��H�Qb!��/,�K$�'O�D:�]���D^P�Vk�KJ�E�CA�S�F���&�t��S�,KEt�vN�밫O�p�ֿ3�3v^�*WI��+Cm��d��w;�4=�$/����r?}�2��{�d���nX��vӋ>�����{�_��x�}�U��.P.
+?XPPz�ٳ�!�5I�gΜ��G�̵�-Z,Y�D)(� GݻwǵH��+���v ([�m�٠+���u��NC� g���ƃK[Ty
+�$���AVV8i��l��{ȵ(��]�]&�H�\Q��ٳg�SӺ��cL�0H.���ҥKQ)��4R�D��������@�IA��5
+�U(1�����l�#Q�}#�sp-Z�ӦM�
+�lff�@]�{��'t����m[��ѣ�SsotQ1
+����S"*u��nx��Wxk'p_0��bG�r�Ғ3�fe��k3��A��̍�ܣ��J��p_�W
+�Z�g�<I�b�@R�^hw�2�t9U�]��Q���Eq�0Ů����'���.�I8Mδ���qD/�Ê��gu��x?�oj �:��$���߀��9&%(�*\�F�����/���w���k�H$�5j�lٲ^�z+4HMM}��y@@��W��������ػ�@�N�L����k���Ԭ�،ݻw=zt����G��Ϳ��������###y�888t�҅��f;�35Ue�5k��С��l���ࠠ nO���6nܘ��8u�T�ȧp����������q���Z���V�G�{�Vݿ/�@Mk����愒��;�<�z�{m��>o_J�sg�Ç�j.�<=<<Ƞc=ň߹s'""��΅H$��#'��α�����k����%�o�s���R5��Q���F�~���L2�a�xgg�N����������l��h�ʕ>ܹs��W�iQ�Z۵k%IOO�����ߡ���.�W���H�V:t���>}}}����%K@�n��eCGa���:U7U���牍0�8�s��A&''/[�L�w6&N���.��S�q㆓����k�T*�8)�6L^�Vq���1�r�
+=��ݻ���߿?Y>�x%�{�G������7�5"W���98�_2�U�V����G!<<\��}�͛W�N�6�{ ~�C�'OVU����M����`�r��P�nݺ)U���XRxVV��.]�v�+@��.���MMT�·�������y������&F`��̄w�pa(����1�Dm����sѢE������i����Ci�y�0{�G���O���t6��N�\��1���4iR���$z���K�,��#���JO:t(��t�ԉ+�9s��J322��j��b)D����-�ܹs�oQt�^Z|
+wP[�n�r�K��������+����ӹ��'=���Q�������K������P��%j����+��^C#W/g��-ZTX΄ �R9d�I����T�~('O�d� *��{ۡ���k�mD�cn�{�P�'���u�.\�P�J 09��2���G�Y�x�z;����� OAPzΎ;��!��e��o�?s�L��a�1��ӧO�7�ŋt�1�~�&M�Q�Y�fd{�ڵt%���o���F���d�~f�v����м
+��������*�Q��|]`pH�ԯ���;w��l��Q�F���zz�={�|��W�����"M�Y���7lx@��q�ԩ{+�����g0!D�y*�R�/zB\2�FH���o;v�8b�n� _��ӧOÛ��!e��A-Z�lZT�r`0k֬APuÆ+���G�2:�r��aPh5���J߾}�|����A�S�L!�����Y��B��:�w"QQQ�|�L ג��q-]��D$�&�O�j�*Bt�6mJ��ٳg����U)&��l���ɓ'��AVP���رc�W��W/]��|+���ݹ�O���#��-�ҥ
+�۠A��l��܁�!�]�[C ���BeC9tԪU���( Qy!X=$6!�:yƌ��z���A�|*!!�~��ݻwG�1�z�Z�j!>ќ488����se�m�i�:�J�4���#�sC�;�*���F� ���h7W���8@�0�&In۶-m3�Y�G\�l͈@�F��ּ�t�?����ʊ� ��9�8�m�q�nnn�G�^F���8M�ם>���S!��u[[���Hzd�z�j.Aà�������G�u.P/=�~2Asp�:�L[�l����+�*�����;�HxUs�ezfrr28#o�:y�7L�w�"]�V�_ӝ�He>}ko�e�F����q��P�7�\]]��*�R#?q��G��6��M��./J6m
+�7PAn�̛����߸s+t�qw�SM�DD�MMM%�uŊ��@cz��šY�[��F� ���5L/54r5�h�9�n�T%P�t�g���J&G���9�DzR��1rș|I����F�Pެ.�}��&h��ܬ{\��&;w*9x(w���Ko�@�:u�%��L��J?d����+VVB�k�CC7��ЛO�]��4���P���1JSG��
S)�GGh��C?ӡa�W�m333///�Zy����xx�.���ו.8+���_�f��[�p���p�P��(�C�T�g�>|�p���R�[�w^�<]M����(
+�����B��vA=oh��#_�v�3FQ9Q8u"$��}1UU�V�o�[�3 p&hie�߮I$G�M} ]A])���`��֥��摜�I=^Cq�a�6�V�D +#ۯ^��~���KqN�~*LsV��;w�hт�X��9v�nժU��Ф�:�(��:�dNy���U"����=*HUq�f5����*�CR�I�Q���'��S0�ׯ_�y������U]>b�j �ϟG���Yqv���f���_�Tn$GS�j�AAA~/��I�Hʭ�}���y��W� ��W+,t?(q�,��˛=B�'N$n"�u��is�b�mLd�۶mSZ�����ׯ�;%�~��9U�rY}%s0��Ԥ�Иٳgð�'�瑉��Hh�����.2�
+aW�XT�*�K�h���r���=���;�^XXx��1�Oż�p���N�o�R?~�O�>j͂����mD��/�ƍ#� ����s�73+�>�Q�-�M%_�"8s��~,]�XsB͚��<����E+?s��j��bя
+�ǽ��YR�����SqKF�|�ޘ ++��?*!����PԪU��/�$ۗ/_�}�6b&���ȑ#ih�$������A��={�q�u��ڵk��~�����f=LoV#o��=��p��c9}K��(�Xת�^�M�ե�P��H(H����ܽ�M(JV��Uk�T-��M�10r�s]0��������2w�:U����Q#�}�Gs���G��e �܉����@�r��i�:�ŢaG�����}�d>�6�-e�>�[��p�#���FD�߭��>ВM�6!8�]������K�g@`�cǎ�?�`��'O�Љ'$�˖�KR���������X\ɦ"텋��� CC��}�WM��ѧ|�t�T���I��"|�������577����?QF��tvv+&��`� /Nz�ڵ+
+Q5��Ip���!C�p��QGs���:p�8��ᒊ<i!�h0|O��W��2���������[LL>��h.�TiӾ++��H��ڷo�9�Q��h��"��m۶'O�,�u)����d�o7o��#O�C�@���é���4P�����T�ܷM!^(�ܹs�̙Cl�Y�f�/�4i����Q������+�pz��777��ؿ��w$��S�i��ի�_�۲e�?ӦM�ƃ�B�0t�P�ܻ����?�(�������S�l��7/�1����0����y�<�ݻ���?�C�X������>}�>����///�)�+��\�l�G"�� ������1c��N�4i��}#o�K�,����ӱ������.��8Yq>�OI�.�O�?Ǎ�{n��yrr��0r�dh%��-�i͞=6I�+� �yZ<l�|�W��!Br�
+
+
+:}�4�����r���;p3� ��G����B4���[�j%àW�ׯ��>�p���T��̃��ss��۷[*�ֆ���������L5lU+��(<�e�{+�7�����9ȍB��tРA �͛7��2q9�7f͚Ua��>}:-�C�x�����k֬����4h�4)(�c칓��#b2�L5zzz";"�ԨQ#�+�/^�5��q(�,�A$��?�������p%ĝ���Z��|;��竰@���~�M�郤�$��M|$�mA���c(=t]7A�Aq5���@W�L�r��!�vذ�Μ�O����4�d+�+��Aأ�� 0E�I��`�w��E�\�F�U�V��_�<�T�t ��~�'o�N��9s櫯�
+Qx
+�c�+y�������ʠx�'&O��^5�*�-y��%݃��V��hyl�ЫW/r�
+nu��Ł����J����Pt'''�ڽ{��^H�92a��@��D=������'z�$��#G�䆻�eP��������<`��������3�,���7r瞉�����\��E�!���tǎp"��� �d�V�x�b�ʕ+���ɗ��`�X�6l B�ja�]�v<���ՏXRn��+4�_~�\��b!P̜9�;�
+yqi����a�Y1�M�v$�&�X�Gj$��U@r�$%ٻw/4)��1on|���*+"��t�����g�)/5��6�O�t�رc���-+�rrxsfũ\�UDl��#b��Ӈ>��Q���Cի?�w������3fTh�h!8�)���u��-�rr+���T�4;HZ߾}�^��ӿ��$���͚5�a^�S5� ��ީS'x�Ç�o��C��,�vJ#<"�蠑� ����$�;9�1j���<��N�U���HFxK�
+���4l�·ixɄ ��#X)*:J8y����<�(�Ji�K��֭��X�*#�[��Ru�����7�[�����Ϟ=�x8hh�қ5P��G�ҟ�Ǐ��A�4s�̖5k�\�|��sP��GQ��A��INNnݺ5�,�h�tX�zN[T�~c�>r�D�AH�1��j�u��cbb�_器�y�3**JUă���IL��Ѥ|�3Q�����T_�&�EZ>g�Uwtt�?�0iÆ�rrd��C�P}�7O_bWr�����^1���e�
+/15��ԩ*�A���ӧO��_�z�����ٹ�x����+�0t�ã��0�{��)�s��w��X�V\�y�R9�w J��"\@OH�~��+��+@�M����R�ejj��������͛7322���XܠiS"ġ���XJP�������������������������#���P(0�e依����Z�IRz���8��Z�F�"iIa���f"-�0)]������((}~K`e&NJ{�ӽ��b�����8��D�Z����?!����iu���X�_$���)
+�LE"�͔�"A��ih�婴E8Xi�$+��k[E�k���rN�()zw�EX��X��1"���F+"�m�FFbCW��Bc�r�I�~?L�eҤ��U��@m���+���I���R�����H��$M��Y���"����~��:����j{s�WI���"U����_b�샞KB��6ԓ.���d;;]�S�B��&�.z�y��ȢT5jij,
+�Y� ?�U���X�m\Ww��ּK&4��{k�;G�m�͚q�Wo�>�f��r�Q�K��G�'a��'⬠�#��}���Z���-��V�Lw���|3|3.��_f�o�Q2�\�L8�{�{u۷/�5���s�ۋ]�i)�%��ە���f^��lU&x�;�2/�f\,='�\�]��z�驹�-
+��7����β˹�u�T[Ii{Z6����߬���+�7g��_l�Ɨ�K�������I��U3����m��1�&Xg\�P�P*����>�v���j�N+礟[;F
�,1�y�{�^��>T`{# _�SX@��T�����{�δ�pXc�+k�I��f���u�ګ|�t�6:]\� R�h������=5��,�?#rz��G���=���@�K֏���w���.�Z�d���5�l��xk��5���DP<2�:X/�`���.Q��E�?������V�:8�.�@�'[���[3�K�v
++ҭ�������[����y��E�]'�k��G��e�k��]6��F��]�ZK�~Z�����++����뉃���G���22���Մ<�ث����IpT�Okd��3�c�3����%z���I)�<�(��+��ʹ�=��-�Z����X``d�gd����&*=%:<��q���DK�Ģ0?�Ȥ�{� ���s_sU�W��ұ���q��]%c9�$��x`�6��ðO���50��i(G�2yQA���}�6�OA��fj�Pw�4;�$O}��^qq�щ嘂P$01�TA\-���#
+K�vY��DM�!C��ob���J�.v�<����[nfjnN����S=m,����S@�f�#b���X��f��aML�PV=�ґ�NK�:�������X���UUR߭Qs�F��+b����_}���&F=�{�bFJl�v-���W�=#3�@���p���'��&�H��Ue���(�Q�FG4%+����&Q��a=��^�+u�=���.;��*���>q=�����#\�~���pϚ�7X�+_�L�<2�M}���"�_k����=�����@3:��\&�w�����HGKPX(��ГK��r�����H�����k�כ�2��s�Պ����0�`ge�- 侍�C��s+~`�҃\�/�;Xi���:08G��*�R��vJ7��Rz�����Y��ϐ�Eb�y�_�q,��\���+�����q<=O!ŀЦm!��-lkh��a�#��ӗ������Un���u����˽`��"�]uASg]��=d��ҏ��I��m(�Ҿp7�G�O--��a�Ծ�)��U���J����L�5o./�_�����"����ϣ��_�)���}d �B���V]���Z�U^"h9����8h�������s��S���6@_�+5�E������^��KlZ���,ɷQ�ހ,��JKl������Җ��vq_���ع�i��oO�{@��vUz�J��a�PV"�.��<龳���2�O��+7��Z©
+�&��Hx|�ԭoT9���j�������"d���{.�j�@����u|�b�_D�ja��B�}���ܵ~�i>�ϔ����0�+?��� #�+�zZ����A��a�~���'e�:�+Y����#0:�,���dE�&�����H���t^(88��"��G�LP��%�I�}���N#[���E����`��I�n����`��Xw$�H�XF.M�bԾm����+I����ݮ�ܭ��E6��r2�+L,W��v�3�����\�dҢN�lO-ц���?�������{67�-B�³wr
+�4�KH"�}W��c{���oW��zV�B +]�O�
+�Y�����\.SSx��*ʧ�pq�h��-�t�yt�Rz<ot-��g/_���G�
+�cLw˪�q���M��Mz�r/���э+-�̪L^r�������V[�(y^u��T�2U�s����2-�����ʳГ!���,,�hV����"�Ʊn�*Q#��މ�R`f�Ը��3Rb2��ػ!���ʪno�wEb7��Cm��J�W���u���Õ\{�W�^S���r�Q�����9%2i�ÂO;�X"-n��N@�&�o�:�+��t���,��n>\�lML�4=%�̪�{��#m�3�R$��}�ͱ_y�[9YZ>�S��C��<1�=�Ģ��?���4AГ���Lcs�A���
+o����+�����c��0r)�}�Z�����UF����ג�T^d��pr�F�17���S�rȤԚqVNU$b�|�����J�̱�����Y@��C�Q/�
+���wŀ�'�<��tZjl/S{���/�:����H����E|�JW*ye�oz:z�Ң�3�s?��.�WU��:�)��r�3-��F���:ή��u��\�kf��e�&S���b����72������iB�42�� ��G/+��Խ����ն����&�u�T$̷���Y+
+$��{�� ������T?o��m��8<���� �Ҿx�F�FM����sgI$�ȮX�A����Ȋ�ٚv��n�����O�������?�S�T[z�,;+�������A��C��4l��c����?sx�[��6�ɐrG'�*o�XK+)&�aX
+��ɸIY)ʤE+'�� ?�X3g����tE�;��Z�#����R#OM���8�Fr���3�h����F�&M<�-u�2=6-�\��-�~��~qq�������m
+�|�;�ϋE��_8��5�sx�̴D;�z�[~�8^Ä�45K˳2U6Ǧ'�!~d����������K�:6�:��g
+�D�WP�V��۟6�bd7s���c���'��c��GV��I
+x��1fub��ML�WP������"m�Sl�]Ȃ�"��w�]��hE�N��e��N6+�X��[B"
+k�f����L���X,�"�����1߯M�O��\�~,N�1#��0�X}q���]����s���4��)4��]ݺwn��;��v�����RiP+���T�N�cܵ$�6����������;�VT�
+�����J@��M�Q�Ko���m��Vu��<;Qp�-��c�g�k;��*�����rE^,�$����c{Ί)�����;ޔ���r�$��9:"�W��?�5���Q��U��2�������$/�ZV��t�%�M�ҳ���j�_Z�H����6R�^�TZ�dTH|��>=|n�u�H4�Z_�W��vJ>�e��
+��,��;O��?"��W/?��4��֮]��h�%�m�rO����FfV*g� �\����E�*�Qҧ�����ݲ�Ͱ��fñ�.��\W��{b��д���3� �I��jӮً%NG"46����
+j���m�L��5�v�7�n�
+Kd��Mpν+�6i&�<�:���::¯�����"P;0g�L
+�2�+��-sp�qnvfқ��A��FD���ݧ� ������-K���{���;��1Ŧ^5�M�+�)��U(�L�{�X��5s\�G���^`_߭�������� �ܡ�����(8��w����^Z\r���Ɋa�����wF'KW�~XR"�l����:[�y����Z���MTQ��"����6i={��/��G�⣼j6Z}��[�����phR~G],D����)�FZ*N�cľ[�X�������(�e�
+��)ĵG���O^˦a���H��G�4l�g������8���`��Ldf���|�6������z�inN�Bʊs�����ֺ��`% ���"����,,}�@�%~!���)T0��"-�d`߲Oኅ�/���'/�K�k����h"*..~{�_���f3�Z�pݹ�ܴw��m�����ݶq�$*(NNQ�N5���(��ԛ,ۛ�����-�B�
+Eb�C�F�k�:q���HБ��r���+��BiK;B,B���ed�Z�}�yRF�&��y��L�?�v�&߹k������K���w����D�ow���I�n^��+�ZZ��[:8�ļj=�>�������+�֎.M�Cn���w�Z^���թv�a�K?���fb����Y�-��B�w�5�+߉�Z�
+8ɽ��`�uG����+o2 �~3b7�d�z�ӣ��ԍ�Gfv�����3*�K���-��ab���{%��E�?>�;����,,2�PGdmc�R1��t�ʳ|:�
+ҟ�+S����د�����PTGO��O��Lնn�WP(�б���+9��U5��kg��+Gi�o��~x�Y�b2�ݢ���Dx�I>y�NOOԺ�nzvɽ����� ��r-�X˛L�
+^��u�Mޞ��){��P�O�z�Z�����՚����<���~"��q]3#����jl�r�E���9d�F�Ǯ)�G�QU���6wlo</�V�貴D~�Y��j!�v+���\y���,G+-�F �O"
+�TB������7�����Xܴ�N��e�D (��`X�Rָ∄b�&�s�yQ�}������փׅo�M.�I��V��<~Yp�Z��@H/r��BK��ޮA����a�ܻwC;����J\��%C:���m;�Q�J��u�F�B<j���
+���6멏Q�.,��8�ʓ����`�0���xTE�dz��%!��C�A��E��"�+��(
+�((���Azキ !!!�����ˎ�wݖM��7��ɳ��;s��9g���O�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I���%+)I/!9::���;88���Ji� ���T*d���)e"��-YZZ����IIIyl����*\�pZZ�U����ekk��흐������>����F������QQQ6�Gw��u�HdhhF�e�_a�u��mذa���;v���½����˗���hݺuPP�ӧO�?�{����rss�9s���Dɒ%�}�݀��?���_~yF�(P�L�2ӦMk�x�5��M�4�Ν;����vnjS�fM;;�~�� ��ҭ[�bŊ!��L܋��`>��W/����C�֯_�����!�h��ь%00pذaϨWW�k>|x���111`�1��q�Az��وk!�;99u�СZ�j��G�('�(���o���7�.�-[�^�z�~��_|q�С3g�<7�Z�s�o�U��Ν�y! ��U�/^�J�ѣ7~��֭ ��nTԩ��_r�$�0kkkI/��=�����ٳ���^����p�ْ�Kx�l�+Wd����]����K���9���%��"I� ����Q�͛7mllr*�?y��}=7\z���Ƃ*�u_U�V�\�r�.]&L�p�ԩG���W�S�LiѢ���@�^-��ˊ��l̉+�+�Ǐ����?����|�a/\����֭[�2��:�"�IԐ��T�ϟ߲eˢE�^}�ZӦ�^{�5����Y��q�|||~��W
�D�Ƽ���n����\�x���_*�|}}Ɏ���H��Bx�}��K�;�rm���W�\3[�0�k�q/��̡�a�qc���gk�������W� 9�V�nݩS�� �F�z��I�Q��]�|y���y�����E8��7����}�V�T�p6x���~��V�Z#F� �x>�c����"##?����ӧ�7+6�aÆz�88e���F�p�5�����P��яt�X�aю� ���z���ӓ��{����ꫯ��ׯL�2&x�8�p�`�����6� f����lۡ;D�����w���[�jU�D������Π(-s���,0\����O�����Ѕ���� �WҚ��r������c4n!a��9�Gy����������.p��MC:�gK� �8:��Te�1��|]��oڪ��p��E4T�hQ>�f�H�qQ#�_P������#.q�iV�!M+]{Ȑ!�Ŋ3�)́A�D..X��iK�'!�o��Hj�߿ߡC��˗[YY�ر��<[���J�9�Z]��W^��/�ׯ_�P!s�C�5j�����W�X�`��#G��:P�t�ܙJ���ep�&M�����J�.m�Jҥ���s��+:T۠ � x|||����q�F�B�X ~��������g��l�R�`֬YK�.E4%��u��h�7nۋ/�ԩ��%ό3-Z�5lڴ��G4���Ηo�v��}�iW���ꐐ�b|(����z���`�,o߾}���+����%K�bV�������<f�o�.~�̞=�iӦ:#���Ewx��i�|�M�?�!еA1�M�4�d��lT�/�L���?Ο?_[�$�H_�-���)Z�����uOF���gΜIII�;��0(1dѦΐ+RBzb����͛W�T)�+�&��m�6��R�fͷ�z�MNN����Y �x���,�FN�:�<,W�\��텵��&�JAЧO��]?~��o�e�B/����:��
����Z�%����֬YCi"�A<��S�RU.n��W�br���ׯ�D���R�s�)[�n=t��c
+
+�ٳ�믿{hV�;vl�ܹt$,�@$J<|�0.ɍ�Y�- �}O�F�A��?��v��)ܖ�{^�vM1FM��<ۆOT��(*f��1��B:.,����O�-[�j�*m��i�?6�}��f͚����G��� +44hPxx�rr[�z5�P��9s愅�aմ�@�"��>�!��A.FP��'v�c�>!��NC1-�����/2�t�ci���¾�(�a�F�,�{xxP��/�LGB��ݵk��Ss� cQ�{����_0���#+�9R��C�t�rqC�^>`�H���-�J�*o��&�
+c>�S��E��&:����e*Xa��"��eL��/�Ժ9u�����xBǎ{��p�B��`���ys�Ժu��q�����K�.=x������.��٦[�I�\"M�80ߜ8q������?��g�T8���7o�֏;����fT���ѣGAg.;`�����K��cǸ�,8��w�y�[�n�0b� �fQ����A
+�s���Fw\ٶm[��Xj�I�6�ȯ@��˗iaڴit���}�]`y��^����;l�H���Dp�-�.!q[��_lٲ�� 8F��g�c����Ӏ>a�kk�Հg�\�}ժUqt���&44���5��2A�� -�h�B�2��lB��k���~�+щ8JHCbȴ��0d�?�9""E{�)Q���rvǎV�Zi��%�!̋k�[+)�g~8�L!.��|�ڵw�&�k8www@�[Z�nMS��O?������1�z��'<�"�J�*��{�=��ȓ�r��;j�-n��¹BիW��ɓ'oٲ�� hۃa���D�\FnԨAH"uFt+'d��ĉ�_B��\jÆ+�W\IӣGdH�?ȁ�@�!�F�Hc $zD�S��)����U,]:83s�%H����Az�^F�R�լف�|��B�x��ʄ���0øpBB���5w1X\��5�)�Z�]
+��3g�T��C���8d���g��/ʖ�&f;i
+�|��\L�&��e�����K�#��͛7+��3����!v�x,>E� �C��B�p`P|�'"XDJ�f�4/�q����r�T0A�d0�a$X��aˏ#ۻ�(�8bc����|F�p�Bq7��P���e�_�0fS�B�O>��ÌXC
+��:�]�VS�3�%1j,���J|�Pz7v={���%K5n����NU���G�z2�Ǐ+]#+@ ���3ۑl)��6.ٰaCT@�B���@@0~����x��0nj�� ����(��Ԁ�����i�L�T�'O��&/��xaBFZ�"�� s�!��nk#�'������{�e�s���@��.@O<���Ӌ7j��l��c�m1(f��ߏ���0���pr���^א��+M�.4�[�F�c\\4��&&����(y�jժ5f̘ݻw��?�L����觟���ϊ�$+x5f���/��;�-CB�`���>d�o��YT��!�UN&����
+\�<�iS��"(�f�$d��+FZ��(����d��ܡ>X!�6��V�g�7�P�D ��w4B���i�B�!R�͘�����G!V�)?�t��C�(�����t��y���?Ia�lٲT��v8�|`]��ڱ�-/9u�.�I�(���jʗ/��j/�FiQ���D�ժU�:u�СC+⬈�����JYFGg�z%J���q��҄S��]X�B)�frtc���w<�'���qp��g�M4%.#����D��>��>�I�P�|\�D�L��o��eI%��=#Q�(^O` ��>�1! :��P�r%����߿?��_��#'��/��3�b�*��\b(�`��?|���O���@���)ǩ�ёb���{@����L��5�g����NM�@�L���ع%s���`*u��]�x�ʕ+A���Y|�_�ƨ+H�5,��Н$�̏\�|�,�ٽ��\���
+y�o��C``��ĩ�k�H�B�G���H�Bݣu���W^����,m\,-b2C̗wj��d��*��̉h�t�!04��1� �9M�?(��0c����Xw��sK�<}�БPҷo_�Y�
+���Ҿ��k�xS����ik�د��\f�f5�Ӌ/�;&���֭[I�)UA:���&�̝�c��h���x��acG�J����(ڨ<&���Yc3���=0�Kz7���`�a�!c�]��l�k;+�p
+�~����;@����$���
+�^�fM��s�N�D���5k��UY��y�2"5���_L-(��Fp���A�!&1�B("��dea��5*""�vD�_�re�,�i�2���b�N,�W��eW�����ґf���ڔ�\ߠ.�#�ƴ��wș@ ���L��]���/����C�jڴi={�d��K;eDb.�jC
+�+
+&t*.��f���,Y�h�+��ڀD��+%��g��;�9�������ɱ!4D+͗d�+�/Na��ٳGm�-:��ϴ�cP��}q+��s��!J\��| S�; Y����ի�)) �y�&��V��66�)/<��-&&�L�"�|+V�l]b~`�K>�$��������%y�;мjժ�WEw�cvv��7�M0\,�K�~�~!9)�~�h0 `ѢEd�w��5�6M��RM�/E��x���g̘A:O�KY����j�-��*Z���в9o2mҲx.�����o��3�Ke9g�ԓ'=˔酿�ڶ,Z���f��S�L�ȮW�B#�s����>B�^큕�h*����zРA�����߾}�+4��g�u���/˗�NJ
+��K%� \�8|/��'�\�c�رcI��`D��.��u����4h@tDhs��۾�i|CpB/�`����p(�>���&����l��UbZ &��1o�����,,�Jܳ:��V�>�'��臫w�}Ò�L[�l�����\R�FFF��(�/�j�쯊�]\\З����7o��M�>q�������g��W���V��)�1dȐ�+�*���"��7�2;?QAɒ%��zJ��w@�
+*Ј���ڲy�#����>�ر4$$�Ly����=@��_�r��\��r��Ѡ�#G��[-Z�]'3���5k��89�++E���|Y�vmwwwJJZ�F�p�aÆÇ24��-;w);e�^T���ԯ_�b�t�/��s O�%r���N��d�\��i�2~��y� �ثW/jw��2�-��0fh�
+���/i����Ϥ�~!��i��)�(�-����oGL�ӋH�4S1�K����O��S!蘐fQ�3��'�h[�p��p�;4؝��A�9l��}��dBt4�莸B��;��$[P&֪U���<y��i0F����=�'��7o�1�!R�OX�v����,�Ӆ��s9H���+�Z&'�w�����m�$&� ���2}�o4+&����Ox&�
+�@��{�̙7�jRt�<��C�="4R�V��L9h�������:lذ�S�2ҹs�����r�J��*���O+!����d�Y;���zׄas�3ghd������0i+��4i������2Ҏ��K�
+�{�/Q,*�v��)8IҐ�q
+O��&������G�d`{�z-<yI��2e�=z4�|��7Q�yPC��i�)�����6a6�qHHUњ���?�%]��ȇ@sj�?�����Û��^,�aD`�x�)�mj��/0H*�V�Zaf��a�8`�`#���,n�����7����(z��D)�pB� ����+)8&I]d��cv7n�MR��q��Z%|DP�0���٪A]p�x`����9s@|��u b�\7�E��/�#~��1�N�:!q���/ �|�Eu�������b|�T�.���iu�+�SC�_0�w/q��Hk����qF��֭[��@ȗ@��~�3�F�.p��8 NTE�^���5e�6|0V���˼���Wa�Ϛ%�DzNw8��JW<��E����ޢ������{�n�шXѪS�|7��l���!cb�ќ�>�m7[��{!x@#�����г�#E*�-��2ot+��لq�{�)��w�Q7A��J��FSb��7�A�X�&���<"���?�Y)R%�(+���ƍT�������.݄a�>Q�j�7N%@���"[�H��ɓ'��1ab9�����O�_I@��[�H7X��(:*$$Q�VK>F
+�ff>B�K�%�Xj�!N��'w��|�����A�����O��W�Ξ=[+����/�V�J06lعs�HzF$w$�dp:�ޟ�y�����%I2Q]���֫W��ѣX�1���k�lll���_�գ�/Ɋ\�$Iω���&N�X�F�gzr�s&[[�+0�L�2��ބs++����/[���ӧ2�K��\�$I�^n0�����ѱ�Z�bk�H�'�"�9��<�-[6jԨq��7n��_T���Z�r�ѣG����/����իWժUq<e���O�����L���NK�LL�� Y߾}[�h��; ɠr(P�^=���
+Ul�۳gOb^ll�s�PY�:u�j�loo_�n]�<.�c�ɏRR�N�Ց���{�5ĂPqڞ�Q�Q���_ȹ�2���(i�I�&i�,��y��K�.���ڰa��F����yxx..ѐ���$=krqT5��0}L����c�â_��(��o���N�:E�C�|��ŋ�7l�`eeemm}��-GGǁ����gΜ!�~N�Di��Be͚5�z��
+.�z��r����7/�$�f͚mڴ��넅�a��g�Vd�5\�r�G�1)�v����?��Ml�9h� �~�ɓ'���/)���s���ܡC���%hy�Z��1/}�ݵ�Y�bG[���M��.:fZdZ?���L���+�Ǡ`��3�ko,���u~��(hgg�;
+
+
+++����&ZB{Χ��L��ELJM}� ��>�>}��}���۷o���#L���Iz���E�ٳg�m�֣G�ke�?R�nݺծ]�D�W�^�#5A��ݵ7�$��h�b������M�8����={����T�"�;�~��vժU�Z�X�{���o����O/��.C��CZZ���ԉ�롉ؔ������T�0%&&""�XDJCV�ϊ?~�t�����W�\�f͚�Ν���tqq6lU�ŋ��۷kҥK������b��R�JU�^��bΜ9��JE^ioo������D}+"�B��b��/�(�#��������E3)����Q�bW.�������He�QLފ�`~���RRR"""�FJ�4R�`�����puu���`K}�����2--3]e�`�*�m�h�����'g�}��Y�,T��v*/W��6V�������4�T͊++{;U��"==S<�}[U��6��RS�,ĺ����m,lm,��] d���UήV>V�֪���{a� ))�`�h���3�����������Te�4bec����Ln����ʷ�+C��ȼ�8=>E3dC�`�!����:�T0�"E��,��i_��Y�&��8Ė�I���7��Hl�b��-&��.P��ã\b����Ԙ�e
+��e�.ܐbE��a�=<T��i�(p�<>����⯾�����(viJ\#�W}�e[@�-#7�TcbbhVǰ���Mȹ�hѢ�/��]0MlL$�q.�z.Ӗ�ب\�R�aaab�:���N]5dct�nV�'u�Q����+�/k,�f2Be"|jw$*� ��Baw+�'I�����N��-4"!PH�
+���EEe*�+���,�w����*�nPe�+�J�h�����p�ӧw�<��j�kG[���e$��֭[Ǎ'B5�#hB-q�ѣG:t�X�`q��W^iժ%�(������T�J �\���C��S�~+U�T k�6m樿]W�P���'O�Ј8î]�vܲ~�z��n �ʕ�
+���G��=%�r�8:�dɒ�KGO�0bǎ��Oո։'p�S�NYh�b������YC�&v�?~�83���g�ȑ�#���?����wK�=�k����A�1����3�bż���q*a��h,�I}<J��[�!,*�iBFjzfU�Ĕ�K�Rf����0����Wü-3UKv?]�;��j��o]�i�:_-9��DYFuw�\ҮZ)�v����M]��+��~�u}!7��e
+m9�h�ӳw�>\�j)[�����5�j^�qDW�����zi�ާ�O���l�W�R�.N�m��(jӬ�����z�Tmm��p��z,~���ai:�+KvX�|yq.����A�����U�#�zzyyq1�Cr)������y�B5J�K�jժYY�0~�+6�8Q"�$�y��ݻw;vL?���R��P�^݉����; J�;p��vueʔ���ߋ+��k�ݸqC�b,�s���:v��.Xh��Rs��+�p8$j&'7�u�)�������=m9<|�P��֤I��m�2v��\�nݴ��cF�w��*[���ӧ?��C���p<g�Y$L��C��K����1�+W��E����ƥx����[�lٯ��j0�A.;s��54K_�Ɗ+����I ��hѢk�+>��B��{���8)үH�`uy7o��Y�#zl֬٘1c]��FC�h�ԩ"Q��k2�w�}�"Da��X�"�8j�(T�|P����72|M�����+`�c\J�{��ʸN�:}�i���#��,��!C�-::�P�Bs����Ę?�ٛ&a�H&��5j(֞��u���ĮSt+�N}�E�Ee�t��j6֭q�U�\����)S�j�}sq�z��Q`�8��&c١!t!g��M�ݻ�+]��^��sG�Ǔk2d��Ç��@؟�����SZ ��ٳ'�z��B��4<�<����]�/\xbݺ�Ɗ���t�s��U�V����~�%�oɒ%]�vUv�G0�ڒ�f=��vNg0�O>!U�{p���%;�Ϳ/�%o�b�)��8��ҥK�`���*�؊%lc��=1�oH;W;;��?;[��х�,+����SV��d�z�U�'����t�RvT���Y:�l�������-�n��l٫��ӽm�.�햵�r���./��⏷ԛ����������9����4�ϕ��e���)Ǻ��۳z;%�
��,��T����������S����퇶wK<Թ~{O+g'U�R���M�+_�W@�=hm�3���ƕ�7��8�=����v�`D�e�{����۷G����`O�
+�2t�P� �u��,��S���rA\�@�88p@dɯ����Ӂ0,��o2��z��PA+��ꔮ��P��R�
+Q���A������$��{�7�*B;���k��������A�[����H���h�e�p"�Ќ3�o߾��� Z�(P�[H�~��/���� �1d<eӦM�Sĕ���_�)" &��Qd6��^�HC�/R�@�����I����$BD�U�V%�C� �r%�����v�G^���8�� 7 C/B��:��s��!(��H��^��}[g͚E,De���$�ŋ�������&N��7�[���J>(��=��!�a�6�L[}rƏ'O��<j�څʸ�����*c�������|���f�p1j�]|����IA�T�"���"�i��� �Ѫ�eZ��Hr�01A�_|���㏱?��$��>g���:��d�={�v��Trd�@��-�
+�N��q���)ਆ1���f������m4���]����a�S;���\Rl��5]cb<15rFj5�#���P�L�����t�BDf*�B�����g\rFD�Z��V�3�\N��o�]����:.9��i5G����g�%��������ʲ�W���������������%:.ݯ�ͽGi��|�k�UE��:��J�v��HO_{4>1ͬ�U�}�Nm�8��/Z���ց<�����ꖷ�����č��Ą��j�MOK˴�+��ϐe{cwN��Tϩ|1���4;[��#6��O��<x1�nhZiߋ���x����;a�D_��r?"��#R�Ub_��QQ@�-fz��S��#����ŋ���Q;9��n�>www��>�'��`�-u��)�6�7���Q��#��6S"�_�>�in�Fd��3�G�悈+�~�s��Ǐ�(=� $��]o����GVQ�������`CTr�?8�� ��_>^�u���B��ի#���~�w����\�#(>>����V�rs��u�V@ kY�r%Y���f��P���"1!�PG�^�����䀀�9R2ƅ��?қ4i���Q��w�b��ӝb��C���֮\ɐ���'Be0ɍ\�%�T�P\``�ƍ�'�������E˖-�!r�.�������/���J�o���._��p�B��T�
+~ީS'�P��g�*�w��9K\���_SkO��fp�&�QWj*�1cƐp�M.G�Aq��o�-�]���T<��I�q洴Tkk��ӧO��Ԋ�����]&��n�����ٖ=C���83�}U\L�"N^˂�� L���t\\��vjPೡmm�>���� �1�|���÷�F�;r�AdL�Y���s�*]<�1x��A��Y�����E�WK!�И�����]���-�B�c����)���W&o�Z�w�*I�����v2N��-Aa��v�}�doY�����>���! �>~���?˝ē?F<�����������{�Q7����>�chok{Qy�D�^Gq���G��qZ��)kH[��xHIȋOQC�b*U�)��O�n�{�N��+T�kժ����0��Cƒ�p099��a�
+�+�"N��H�x�,t
+Jܺu~)H�sԬ���x���!�Tːʢ_�`r���_�,YB1
+����ҥK
+ё��њ5K��ۺ|�Ŋ���v��s�x� ����$1�sH���Ç��=ȑ�3^���w�HEfШQ��J�#�!EC@7":}���E�����h/�/ͱ��Z�7m�DY,>�hKT�V��&�[�f�N
+4,[�[�+p�_~��+�}1�+q�g�}&�Q�k������m��J,Il�s����ҦM�?���ڵk�z.����(;�W0�ē"�B�
+��`��'��+��0*Y�d�r�w�V���da j�5���.�HB����{6,���hR�����H�x��o߸�c�S������p��Uo+�U�kP ���)�i���|]mP�ȕ��/�|]8�T�����?�%t��]��a�'���n�]�9�/_:<,����xOL�\�'��v*+��7����� �S7�o[�N�J5���y��_G%��eUvXs(6(�836A�x�~j��(|#XR~!X�\�x�*Z�v��ѣG16�� �z���Z�n�Oؘ�zzz�G�۷�#��0���>݇��q:tH�-�t*~r��?��/�\�BD�}�9r$-s+���M���X.�1r�Σ��7܁�8KQ������k��icǙ��T�������+��x\�D �~�7�t��� ���4�S�W��ִ������j�K��ݷm�F�N凑 ��~��ƍ�U��� �Z�j�6D��`�%.�`E,�*�[�.*�N��B�i@��+�U�>{6y��w(�a�����ܹ���@ւU�G�!5Ċ�;��~��@5!E��?xP�Qn��n��I�-Z�z4W�0��#e�#?زe�x�(k��![��,��]�F+�B�'�s`��J�ڸq�;�E�D�����?�"4e�X.!���<�����s��h�S3�?��&M��?��b�n����r0�4��!��XAy�22G???�x�ܹʶGp��nݢE�eˊ��X�+��(����]�vi�~�i�����J|������)h���Ժ��@�����*��c�{\}�r�Z����1�)j[��}y?�o�D��g���n.V�ݭZ�r�W'"�*&.�Fp�����W���w��:�u8p1��Ԅ��fg��}[�.�bt�iR�������>w?4-"V�7�K��)�P�|V!������IR���������W��@N\M�|?E����uɢ6�
6v���IL�_�ss�,\ЪS��l�Ui�7�S/�J�t?�i�� ��ޣGl����[��,�֫W/ľy�f��dx\I��ԩ���xK�dI�ڵ;U�R����(2?��I1�t�BP�Z��zx]�.
+c0�;�)\��F����M?w.k)�8�XcR����C,K��zr.��@m21)%�tv�֍|�_ -�r�����'f˝
+�F\ �É����+V0���"����o�MR�@BCC�HO"B�4�2�V��ٯxFF�&M3��j*|Z�$�!(�Ł�������\�=��;:�S���Be�J���붸��>�&t*�u�V�_�����*�Z�b��� V�@�q�V���ߵ3����ciEP-�`��'�Vf�Ql�Y�;�34��WT(*kԨb�U.0v�30�p�1D���W��%�����=.�ٝ�(�6�+C_���;�C� A���c\F#��S���:bW�D�2e�(*#�C��[�QQ��Ʈ���ڤGrY4�X����<c!�A�d�bk����);���_�XH�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�����Ϭ�,Uv�����I�$I�$I/�:�����+a22,��YY�@.I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�O��fnnn���
+�ũ�
+YZZ������)��匿��,J��P�H8ᯧ�'���Ą��GGG�7000111��;8Xws��,���������iz�zB�...���G��o߾p��������������688�;>R�lmm����
+n�>�i<|x+!!3�*pvvftJ���������l���ի�������s��MJ��v �XR�a�⒖�4>���Qp�����O>�Z�����ѵ��l94��,,������cH�>$ƒ�22��b�`Y��=��G�{�Z�G�k����S�2eJ�(�*qs��81����c���郱�5]����c�f�!3�ל�*V�����n���c�jC��������E>�����ܽ{7�r��XTE��a,��6�G����q�cm�-�T`T�.]�����_�|�LPʋʕ++V�dɒhJ����<z��ƍ|�sԦ����w)m�ˤ���&''��2�qӐr�"$������ۭ�1T�F��={v�������C�+6���9������M43'�q�N�:ժU�B�
+e˖� ��u�e�DS���ɓ7o�\��Jt��܅U٣G���۷j�ʜ�q-RT��ɓ����Ǐ�8q�Ϲ��T�pabմiӰ0�"��o���[�n=b�ƨ->_�t���q��\�7�B� O�F�K7��!(B;�z�7@T�;�ܹ�A��V��X_�m���QQQ&�����̙\�z��ĉ�v�2�w�U�~��6m�}Vz�֭�C�"a��q��-[�9�^�G�4w��իW�Ny������|�A�[�`�����cǎ������^0a���N�n��+1�O&G� �"�<~��s������.�y202.Amf/ X�j�f͚��(�K�8/cܸ>��ٚD_}������ڵkCCCun6lއ��Q�mƍw�С|���~���&M��lDт�0�{��m۶�ʕ+�E�l�\�3f�������y�q�z��$��ڵ#r�WX�y�_)N��C��/X�m���>|���0�ݻw���@�1G(_�|�{��t�Q#�k�R�9�D��8K�*�w��ZQZ[���x�I��������4�9�����f͚~֬4�����n����5$Js�P�B��c�5��8p ((h��=_2�+֮][�5&������s;VHJX�re�9V��S�-J����s� 1]�KϞ�G���ԕ|B_0�ŋ�>}:������(�aÆhS��a/^�Ϝ9s��uc9�Q��<��ff̘���>�S�R�&M�Ь�E�ٸ1))ܠʸX�F�%\�����#��0_�����v/��O�e��h@�MxkԨ��Ij�GCU�Ty��(�N��s�Ν:u�";4�hb�������+|s���(U��/0>���z-��^�o�}��|H1A�����'_9��f�+�T�H���ٳgժU�o��y�^��>��D צM�h˖-�Η��}c�/�����t��ٹ�NKi�
�C��� �o߾�xJP���_C�B\'B���S0S$-ZT��'�5k.\��͛`��D�B\�M'J!)#��v��X#H�ʉ莰G��l�2�� Ƽ<D���ԠA�%22Ξ=K&�GC����>��L��ma���`4ar���_|�M�ƍ����@@$64~������%o����v��OޒL�>/Y�$��ʥK��|����v/x5�+K9�~�7Ȭ�t���N�8����Zd�:�D�)::݄y�WY���<�Fk&c&zAt�3@�8p��o�M�����z�H�?��ٳg�\�288���Z��m�Z�#Q�sc��G����1+��u������cǎ��5���۷:t���jx(�2�[Ƚ�;JaR@r�\?~5ÀH�+����/@�� �\ID0(����SWЬ�|3���__�|yŊ�
+�p �!����+]���UT�:?1fr���t���xJ��/������Biiib��^��8�ϭ�/�+Լys��5�4�!�Ԕ����+Ss�N�Ґ�ic���-ڱc��ի7l�@4ʅ�`�*FQ�`A��o߾}��iӦ��(����ճf�"�bܨm7H�t�@~�С~�A���R����E�
+zu�))h-11���˗�w�:DG?y��4�7i�v��|��ꪣAQR��E�ސ|�.]�7j�[�ni�^��,[�h�3��5���X���P "1n4gI�݃F���.�_�`����nݺ@��I�L�&'|M�J��ZjH��*�^yӰ�BH� �_�12\��W+B�S+�
+�����c��Ӌ�Y�5�+��>�����1b�̙3sg�h|k۶-��3�ڬY3b��Q�bccs���]���O��SħO�
+LdxH�+���s`���,A��G�5��)�}��a�>�����y��3V�)Xc{�g�wPˎ7N�y��#ۼy3%�vC"8��*M'��.� V�X��"I7�$>$$��ݻ�y�\�,&�Yff��E+�Y�P
+V���J�*�ٳ����s��� �`Xl۶�!��B���i�����*�ݓ����Sd`��:u"w����O>16?lb/^�ؠ5mڔb��~����F�7n<vlۮ?g�X�ֱoj_���#� .-���_��z$��n�J�Ǡ��.
+
+R��wt�m �d�Iƃ�-[�}�E�e˖��d�2�r�V�������H́��6K�.��+�ƛ&�>�!�����&5�C���O1�+W��p�(�H"4h�3�M���\�|9X���9yyɒ%I�^�u�CH=z��k��ݻ����ȳ�O�9U�Lf��t��M�Y�r�ʟ�Y�fU'���b GD���g���S*�4HK�+V��j�^��M�(�O�q�Z�j-X�i��ݡqҠ�~��ija�DA��cK��>| I���CCC����241=#�C�\�r�6mڐ���c�@����8�>�H ����5k6l�Pg�4N2y�d��3�������z��`_��,0_���1c7n��������~}˷K��7��e���;�hݺ5�ٍ�T^DiNP$@F�[9���=J�|9����%K��1�����A��g�bU���#�ڵks�1�r��ޮ]�@43c9�K���G
+�9s戕kʯ(�Dx��E���K�YQ|�)_}u4A�9}�45t��u�"�͐����\�&�oٲ��g]4�"���G�VhQ��M{��+�ŋ���~�"���k�k&�}�a��b���78�h�?M�>�``��#D�&�lڴ L`P������Cy����T+�g6�'�_��P��U�E�F�(�W^1�@%*������mc��ˇ
+n����:�V��/]�4s�Lc�bZ����_9[�,[�xo�8s4j�`�ܹ�����Ç)�I�r:�a�ݻZ�j��hѢ:?�ݼy�2zÆ+fNb�^]�x��ͅ��m�u"��b�x�E��e�݄��֡�B}Lj���ۢwȜ���ёʸk���gm���AA�Z�n���mt��+Lө��ףּgq�v�'D��A���b�j߾}xZϞ=����7B/H_>��#���5r�HX=~�87�qK���uP#::�N--W���r�6<<��-��M�555�9���'vϓH���&L������)u��W�W�Z�{����q���ݨzmlm�)��ӳ"\�����$�1}]�:��˵���>z�(�s����dƢ�R�R��W�r��o�HY�^=9���h�~X���M.���ffFŦG�9�w�"�ڬK�.+4ЙGD��q�ƍ�ׯ?�|.���r1'�3?/`=x������7<<u������}��EX�%_غ�J��A*9�+1f���E��1�
+*Pt֪U��ɓ����C��:u����x���[��F!uX�d���D��yAܹ��8`�R����?�hlBBƳ��[���͛E�tI�N��X�N�H�q�#Fԭ[W'�@���X���W*�aÆU�X�\�[~�2et��r�ʐ���,{�G��P���.������y�f>�,Y�4�،�2�B��<���
+�rtlM1g��Qb�֭G�}�B ������v�I�&��l���N��v��X5x%�yzz֩S�]�v��(�:�����(��پɓ'����㛅�A+6���J���[�nիW���<yr�������P�[ȳx�b��_�� �n������S�Rq/j��R��~������C ϝ�O���Jǰ�z�
+�yՄ�j�Y�1�zj�Zm���z����;�Z��Y� �\�R�.�M��y��=z�(^���-��u��i��O�ʕ+k�������o�6�i�ԩSbM8u65�����^�J�
+��W?SÈ�9��t�(9k�Y+<�M�6�N,{� NH���, t��k�SƑ��:H��#R�\ϕ)�����J��u��=�@>|��l���5k�̘1�֭[ς�Z�
+���$c{������s��je��D���rQĠ;�.���e{k�Dqu��=
+���_���m����^�KUh�tj��B5��!r+�퓵�?��ٳ<0�Q����z)������9��Rh2��n��aayZj�b�������o46H�t�y�O�)�v�A���O�rqq� ���m6S(Y�K3.zx�3����Xy��v�gϞ:tй����_�={��Dž��[�v��z����
+R㯿�kWx�����$���?��,A�_<6]��WFDD�����0��ĉ�y���ik��M�4 ^�}YA���Ⓕ�|۶m�]�W�Vm�ƍx��㽝;w�2>��-�֞?��C�e���M(���@ZZnNrc���۴�n���>}��`�~�� �OB&��s �8((���y��ӱcǦM����[:8CVG.�v����5�,XP�hQŋ����?k�,�����uJ��N逡�%$|؛�9�XN�8E���Y�?}YyJ�E�gzLL��J@[�����Wn��p����Z���q~P��"""����L��������݂���*T�w�!�Աr����NH��Bߛ6m�y'+[oѢž}C�����g�&��n�/!%�9�v�sXX�s�+���Ç�>�[;����ʕ+Ϝ9#�!����z��i�� r8CF�r��1�(��g�&��Xt��-T���سk\��f0g�0���Pc���K�G�,i+/0�5����=T�����ت��b�JL�khhȐ!K�.�Uq@sf�:��}�6l�P��x�ܹs�<�ZPL�[�nm֬u��e��@����o�f�^��P 'ظ�T�R�9�§Cp��ۅ[�hg�u��%�y��.\����u^L �J�\q8z�(��>:w���v�9���mР�v���;��z���L�U���v���r��n]���P>�T0\��W_Qp(@FFF~��|��,6lX���)R��kdd�g
+�9��O&@�]���͛��oܸ!���~�ᇖ-[b&����C�o�[J��h�"�jb�)�%R�h����>}�1��fI*���w��:�Gd��..��˗�Dc��gk�bqV�:{XX��8Ӝ�W�������(�=S0�={��q�gB`�6m{�ƍ�D���|�M�W�^�ƍ#P�Xi�y��nĈ�5j�ɀ)
+�U�V)1�P|S�0�D��Q�H��_P����s9(/��~A:��)S���b����֥E?�W�jPP�M.ҽ{w*+�t�4�a���/}��U?��oZ솞V�^ݻwo����A�!M�2�G���<y�~��ヘ�g���~a{����ϩ��6*�[���q�7Mb�ҡC����k�Dr��qĤ*��O6�_��֬Y�X�j�¨�\^;e��{f~V��V/���K�6VS�9g��8A�g��~^��I���B>$1ݻwo�.]tT)$Qp�-[vΜ9:y'��f�9���F��|��|��o�]:����,��v���翂�͑Ο?��=���'N�HI�=i���A�p�֭M�6Q(k�{ �:;*�t�jժ�
+����7R����L���/^L�0���kz:�� �U��駻���%SyԴ��F�2w��U�~�嗵:;_qA�B�ڴ��V�q���f��}�_�@.��!�-ZP���1c�+Vl���T!!!׳�u� ~�f����Q�S����L[3
+<ruu%U;vl�J��7��v�bٲe��~;�4<x0�5h�>���:::v���ԩS������lt��ը��g�VG����HQ�v��F������I�2�Ql�h����˚ư��!�gp���L�y��5h������`.�/��+�/�PTLn� P���owC���d�uy\��wjժu��9c+D����'�o��#3�#<2Į��F:��)`H��0������߿?s�L������Z�"E�0��ׯ_�x�̳-Lc��ǩo�����v��:�����)Ɛ�m��ǖ��p)R<�<�_�~=z� ��ː$�9�$jtԏJ��������
+��5t���O�<����Kݺu;&x/}}}Qb�2e�Fg������t�������_�k�����9%D7nܸ�+>��Y^/?%%e�^�;ٺ�;?��رc$F˗/7�,W�\A�ŋ�ӧ��F��-[0���)���̜:JHH�g5�� �$�2d����g�/�?�r+Oa��"##o߾����r$��n�t��$Q9����࿖����PQi�,Y�I�&g�H�+��uA�U�Vh0�s���˗4hН;wtRy�n�֭T�H���'4��^ECm۶%��m/\���EGGc��գ��wٲekԨ!G�)))� !��i���'�ɣG�F�S�N�+m�G�Hl��ɱ��K�.5q`�K��D(E9�կ��J��ygL�L����6.� ��˗��M4��a`�Ν��O�����~�$6�[T�61-���X�zu���w�=�ͽ nS�paeFNl���?���؛S�$�eAv�-X1�_������������ڵ+..$f\'�!�Z
+�����q��cԨQʹ�1� GS��;v�0x4�W�^=�1�dZ,��� �o�<b)���͛w��=�)�-$$d�С3f� ��wj��rK��ҫW�lݜ���S�����"�X%%%����?V��-�0������-�T�+W���)ϓ�4Ծ}{��)%�\��$���
�N�:e,U|vD2��_����7�C��"䪵k��Ir�#G�Ǐ��r1�ԭ[��_�i�;ԣ�}b�4��_�)X.�ϴlٲaÆ�K�����oߞ���>�ݗ_~ٴi�)S��{���0(�_Ƞ��?�ıc�N�8�x���Ti2��d�+�m�����ئ�T�Hr��s�����v���H��/?|�0�@NT*���r��@,>|8i��C�v�ޭ���o������!�f�/Y��~u��d���ɯu�w\��WϟJ������\C�@��ر�ĉ�`��p�r�B��� �3gΜ;w��!�}}s�V 0�u����/FF�i�d�*Y��bU۶m��ݛ���1�a+VL�'b��̷�+6ܺuk����{,���cǎutt�3�����nϓ��[�l!��<�*Bzd���1::�X����$I�֭�x�bNmC�A�_���s��ˋ?>�^��۷'O����պuk��ҥK�~�����`�d�
+�4�k�_�I��[��:�<+�"&؞�g�ў��s������'LA\�J����m�������Y�8��s�j2dH�
+.\�@k�N+��^P�'�Z�n֬&wo77�������R�&`٘N����֮^���G����ē�4��˗�Y�&�9���x�!�@���F$����h�͜9�I���ʗ/�___��� )k��-",,AS~���7�t�w��djf�&z��<_�v���.�� !�q!.mkG�l�P����G_��x�R{P⡋����X g,667���OgϞ+|�S�h���ӕ*UB\�����'x�ԩS)<B ��S.�D���XO�f��;Ð��3&�Wg�U�����J/��s� ��b�
+��2eʈ�8<��},O��b�U�������jg߶�NF�us�!>>�8��Ni����i��*�fNٺ�Yu�cq.�6(����BZ�"�Oi?��h�9��S{��1��7oRl?~H3;n8K�Ywww��� ���={v��x/��7�ԩSG�7���O�C~���M�6ao}��S��E��Q��al��Mz���g��������X�!� mi黯^�f�:�D�v���c<�1Yi�.]��|��]&�ɒy��@kU�-�{�x�Q(�~1H��(�ѹ�ҩҗ��_��+>)4vh������ڳ+��O~�����k];;;�m�sqVi.lÔ�ÿ<حA��������^���qsȅ�+�Tswh���(G�$������r�P�pg>o�ߌ�`��/�C1�B���Ĺ�PNYe�$�VV��S���8,I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$I�$卌�Z�����0��Ve���������^�0��P���}k���Bmia�Y�j_f�Z�f�U3b>��JvF�ʜ�JS&F'�1GJ�3��i-3��dj�]f�ߪm�K�NּD�?L��1%@�De����ǥ��ӋXϫ�e�bM�i2_����L#���֙�j��\��u���j��f�\��/Gc������B���L�k�������,�,����t��j��<K[��+F`*�6���r�E�:�L~���Q��b�C���M�x(N�d ��n��"�Sv�I�|�;��٩
+�Y}7���+�w��;k����V�h_���� ��EŪ3��k��ί7s^u0���gr��\Ϲs�ƭ:�`xQ���������
+1�+�R��L�a�����O���%�vH꾳�x+��ɲr)����6�?v-�����M��m'��,�n+�F|�Ex�z��M�㣟�����jh�ֵ��1i�O�/�Ky�m�.f[������މ��r�J��۞�dgk�Z�h��Z����X��[f�ĥ����n;�`�܋xZ�׳�����*C�����Tu��i��&<�H?y#ٜ����R����7�<���~v�a���о��k+��w����L_{(n���ٰ���tU}>�`5;[�~�.�������M\�v9{gG˸Č�+�.�Mf\�����ޤ�cjzf�i!�#m_�@׆���c�ԗ�L_�(2��F!O�כ�tk\���2�j�X�hj�O��&�)Z��ֵS����*M�G���7R6��3�ea�X���ebj漍ѧn$�}�f��Uv�SξZY�҅m<]��JJ�x��8&����m'�ĪS�0�-\j��oS�/�t$<�� E[�N���e�~���N�����t��]O��V�1o}������ o+�Ro<�ٴ�:����Ѣ�#L��O=�L�x��jo,^��+/��f���E���IJJ�I?[��6���\Ү��������mJRllB��Gi;��?K�{>1[oE�}m_k��3UPx�{�n;���]=�;�.iߪ����*&^}�R���#�¶Q�تꖷ�e���+l�5o�to��>�H_��i�Ď�[Tw|�7�������2���̤ԌswRl���I����)�y8Yui�\��CՒv.N�VM���R�G��8���b3L�p ��RժZ�V��
+~�v��OM���n�V�j8֩W�l�?��-G�1��ۦNE�W�6��?2&�� �Ӥ�6-kx�_
+�J�~*^q<<���f����3�]{�r�r������|4�hZr�����(��3�S2˗p���1;N%h�Z��]�����6ms�Ѕ�����RʮC�m�4_w`sBb>� U��M�F���@ʌ����S��*>��'b"�~"������j:5�_��[֩祶m
+�H� �]-����^�iV��}933�?�Zd�S��sV������e��[Z[[���lfXe��t�~���@���q�n�^�DEk[{˽�f+J��&[�e��x���_����QJK#�v�O�l֦���ì��o}�6��'�+�hٯ[=[��,,�ԋPg?r9�^X:�Ӱή@@�m�29)�ε��/%>�4�#��*UJ�ye������ݱJ.8����O��䄾G�Vk����u��N�^���Y�����Ib2M�#
+W�ݬUv�_����]�J$V���-�#��9����6��5Ѳ��mf�ڠ��=�]I1�ea��ck�\��{�S� ��-����:�`���}fd�Uw_!kl��������yk�����I�j��w��T�Vց� ��_O"���,K�XSVS�S�'�����[�7����i�[�-53*��1��v��V�f�ԫ\���:-igj���P���:{�w����и8��Vv��j9Gg�ب0b���ɉ9L�"�ЎnTur��up����z��$�j�xkiY����.VqO÷�0xV��.�E��yJD_�{y���%V7����+x�G�O�B���;�_0�=�w�_��V-�_�p�f��5����uy_��-]������ݮ��N�H��:ڜpnkeQ��]〒�V_+}���Z��ܟ�����.�w�~���GW��7�/�kۤ���w+���}��8*[�;����U�.UJ�~2�ވ��sV�|�&*g���f镞͜˖*Z�ܓc7�D0���
+[���bc�P٧a�ȋ��qG������t�����7L�0��&x�_{�U�/�s�ܩ��F �H��QWWQQ,X�.>ׂ��u�]˺�Cdmk/��
+(�TC��B ��$����;sgn�; ���$��}����N.�����[S"T�]���{"�����1A���uYsSu�-�]�l<�M'e���kc2�������ˌV;���z��Uvq^Ĕ��&Yi�E��8�|���#95g�<-_s�����vv��mo���t������aD��/�+�f�+�>?<2d��|�����aE�M��m��'��$LNjE�Y�,,+ g�</�e?:Ʌ�-��������ǟ��ei��ςԂM�6q+�A{�I�.�������ָ�F�
+�:�A+����\R��-�p������mv~��z�m�X��"ݜ9H�Z�(�-����h����+� Q0�<K��/wǏI��Gƭ~dʖ��v�'d��[����y���c�G^��l����c���://�P)��Ș�c9N�x'D���2=����\p�*R��}�-�#�}��-��w��/,d��vH|)�po�����L,�aj���h����i���=1�*�
+��-���ׇ�\��>�XW�*Ԡ����:�������Y��&��Fť�hz�e�{�x����� c� �Dfj����G��A&�$q'�]�$ə�̃�CC��>�����+jk\��ܓ���ߏZ)^�V�X����mF��_U����RN��yYQ *���e�ZZ4���|��l�^Y��yee�!,�Pk"��o=d��/���������k��ɩ�]I�����o+;�2�&�e ���T���Ķ>���F���X8��E�]1�p����M!�����]���&��x>�:^':R��d6��ݶ�ii���o?D�''�_�7a���9˟�;E6���)��w�N�����z˺��) ��/�<롮�� �Q����՚�u[�W�w�X�Ss�+��
+qI�k��x��̍����o�����+G����e���掽������K�Ϯ�[�������2./����}��v���-��,����y����)csӭ������慑�9�����7���>���i�m�|��esË��n���^�-H�Osҧ��Kl� Q�]���6��X�M^Zf�����go�7��O�����L��Ć�s��"�#��h���O�%��.���5X�K�W��J��9���~O�Q�6�\_��H��]�0Ȳ ��h���4x�!�Z��T*iН�<6���p#h������SU��E���+y����Z�u�u�rA�iP� ���<�:,�J�\�Z����S��kqO�a9 n�r�:��wfXD��K��Z�D���N��������+S�t������L�qY�Ic/,��M�#t�3�O�&B����?}c_U���u������AG9M_�v��'&A>���浍��u9��#o �~����v{�y���/!�x��Ĝ�EZC��3���W7������'�"|~��~A�Y�i�J�;�������g�oX�t����k�\�ڴ����,Bn&y�D���6D�g�MpP#�Nv�E�/0d�����l���\�����u�����&->9����f����s��Ϟ� ����r�o�
+�%E����w5��~еr�������2eE�S���?����Olv�9�Ff���9�to<>��+�oz����3 `$��B��;3;�������(-\gtiE��j+�1F��c��uہޕ5�knV��F�GSl7�'eZg�I���0s����F@@�r���z�݂�'�ucIn����QNiA��0C�I�����Қo��)��6w�^W��Ơ�3�i~�^߆���Uq�s�%=|s�jɅaZ����&��Z����zF�b��?w8<R��yq���6�փtV�s�x�/�KM��X8�XRf���`��w�)����P�ֻ�G#�r�����;��H��j���U*REjy�~iO��J!b�>V�1>~�T�*�g��v��/�w������]�V�`zKLB�F�Q��;���G�
+����+gB2���)�s@���11 �E8 :���m!�մ26J�+��{Y�F&{IL饬.���[��C�A���8�Q|Q��V"cR��u���&&) ���2�B��K�.�Z���
+9AzJ�V��\[kK���8��m#Ƴ����%�˒a�
+%8wLI��>��^_I�D~ R�yY�Eu�_� �vJ?#v�����,�8��6L�L�'��2q�y����A��<Q�Pb��0%�DV/)YN��R�{�<�L+.�(���Y�qC�E�&�Z�+��h���<:m�ҳ�'���� Q1)b�w4>����^��Bt�c�;���3N8��3��q}X��iq�����N� ���:C4A�0����G|g:3���y�q�����_];Q��T���}����ܻ����lV�In��������-�a��I�3�=L����%��~>$G�AV�ǤAH�+Rcɛ&BFQu����+_�Cf��c���ڵ�������w����+~�\��)=0�í�-Wd�e���VT50J��r��#�R�/��=pU���v~�p�9�C+���U����\���{;��gWī5��v�]n9m��Pt�on/����+�h�S\���~8��B���_9[��.X\f��H�D.�,��++U��.��ls���gPϭ��d�R�G��t�8����w�?���2�'��fY_��DJ�Q��Ne'����D<��D�s̮�����ǒ�J�FD'?tkX�����>���u��g������,11�����kv�A�C�-�ކv��Gb2"c��U��+��������+jl�<"&9u��5O��7�P�UoY���?����^�p��`��05������M��8��:r�t���z���`^N��ó�T߾R*"� �$Z~�ŵ�;�J�2/a
+�>��iQ�p\%N�C{�d]�^Y�\� �K�Um)'>e�Ҹm��~S����T��f�!"�h�v��'�=V.��4�VN0��A<�_�T���A@�u��Ic���\>����sL/��:��³!�s������:Hx&ʧa$%�%���z%�8�'mRi+ᰒn���z�{��:_Pq��^M�Ĩ��yϖ+�u�m�#�^�#1�vR|o���m��8rH��v2fcsI�&>��M�K�h�R������g6~�Ξ�eQ�:���/#-�`}���A�QN����Y��OLo�6�OK�\� ��`���P���-��ɺ����9�������Ņ.u��|]���߾p�>s�D�����u��2Zg�uw��9)��֘��/�k��x���(!(���&�TY�G..3<y���\B��^�����s�Y�3'��$�eg�2W�gwH�(S���.\.F0ts7[���8�@�o�DܒFcx�Ƥ5_�7!fr�!�WH���"����o�0_�8N��Y\�qX��u|��r��H�r�gM���ֆA2�*��f6vUc葔|0��h�k.�6���'��!Ob��?���dh��$1H>YA�8�W<�O�G��Kw|J.��i���WG� E�]���P���ٝ��ӯRjHLѺ�zw��?j�l��ZZ��������|p'�\�*mO�_�*�|�1dž�o>�X���>��/��9nr4~[��e%�ⱚ���`Z��f�N�U�i���n�&�:��Wz�|W�q�}��Ğ��o�]5�)&��W���9�}����^�:Y@�Z�龷7�y�|������uD䣷�]7�؍/�5�������>vw-�dz|M�ǃ��q�iYA̦�-�A�E>N�A2n7u�zm|��$�Ē�U�Wf�G������r��CqLm�8���,Ԃׯ8B��S0~�S`uX�/-���U1JG.?���l�?|]R�Ĥ��_}w����j��?�M���Hy
�X����n��h��:8E�Z�uaq��)) ��yv
+ټ��a�>��t��1��:�||����͂w�s�n�ܳ4g�T���6|�Q��8OTq{��+��.JZ2'}�,�r�ʏx�7���N���ʏ�+a�z"��"7��q����R�J
+-t[8�@hk,�?I�� �5�X7�x��Ӌ������"�-�<s���m��nfx�{�/������%Q��=�b~@������� \J��.ݫUa/|j�9n���#���uII�FF�j��.����u��Sl�)Zg�5�&'#2)}"L�����.�aMM�D�&2)��;Ip
+�`:`}8N�j��
+!* C��M����>��g�b%PCH�Ym\��KH)ШÊ&��1��е}��x ��1�˟;nYؒ��K�.��Tb�j�G=@��@>�IG��yN/)0i�8-�T���� �� ���@��F��Υ������U7�dde��Uh�$+���^{vȆ��K�I�,���
+[[;�l{/{.�I�*�4�����)%3�J<1����b���^��v�Y�"��8��b����u��+5�
+|�h�_7:��_��~�US����©;�X�X[���V����V���ܼ��kf��K!�z�j�.�O�&��3.3^�g<���{�\hKZF״�aN��$;����}��*�me6|� ��[`�oZy}ڊ%�~N|k��b�N�5/-�]�_j���l_3�g�Q��H꿬�n]���T�H�o�-=ܩ����Cܷ��-�6���w����L��-~��z��|r���>�s��G������c�4}�&��R�yB��z�S�b7u�Z� y���v���2���u����]03!6%�w�������Y�^��^����uT��?��D^P�Ҫ{���!(G昄+��k_��r�ɵ�*1)����]|���ϸmi���*n�~,8���sڌϼUW^C�v���y�3Qw�UcƤ��#]ƚ���#�[��1�+/����3�����M���}���a�A������x��[��N��-�}+��+�@/�:{��ٕ�ѿ�����B��o�!��rQ�M���y��Ҁ� 0/m_�HվF��C5�J�V-_2����U[�y�|��w���g�$dFŤ>���-)��*1�$�-��J��%�}7��!A|�9N����5�ַ���U��υ�����/Їŀ�?t�
+���.V^:\���%��trB�zJ�����|���n�c��>� ��#k,������q�e�ZC�:c��i�� X9صK�k�^�}RN�e��!ns�̴���A���]�̝y1 aQo3�=�zۧ;\�<ٜ�x�OK0?�[��mx�&;��;/����1�/\��nO�ok�ܐ��'>���!�=�����ͮ_�������|^�+���ɾ2��S����?|[����mn?��+��.��s{K�p���;/�����{�����|��qXd���őK����Z��9���-��B{#D�M=왷���[�Bbԑ�T]�h�V</��ME����W�v����=�ǻ؍U�"c��'u�qΑ��+����a3ۅV���`�ot��bA����n�]żF�)N5,_�棜���f��!�/��>�]"[�8n3��^1�Z�=&n��N3N����3~��$%�-�r���Z��!�6�K�
+WK�
+�����K;\AN J�A��]�j'�ZI�6d�xD���}�G�~nc%e�?��Vޱ8RR�v��s{�nOe��x���0�Қ&��.�A�+���#;M|�7H�f�d:M\+OW�S���QYj��}^/%����l`dO[�M~#�mߛ�@�=�k�+���.�W�����[U*����!,���]���so
+J$�2���6�C`�Ѽ/�ᐴ����}����Pqۗ{�_3�X�xMa�:..� H��!��bY_����쫬���6XY��V���N�Y�s��VKAj8�����C?@'(�����8m��r��Tu�)���[���:���SI����ȼ�h�g��2�5X�x�r��;ͫ�ۛ<V�ҝ��Y�+f�3I�uÜ����&�����=۲�˧����jA��(�ςT9���4w�_졂�7}|s/;>�N����囁�l`}l� Kf�BX*��UˢkZ}�����|?%�uQDNF<M9���xY�a������#�[�\��_`�=Y��-��_�/�)�tN`\����k���rx�S/�W�(��kvy�_nAx��<�{^��ChI��WF���9 ��PIm;�yg���M�^y(S�
+�n�q'Ր +8�Ͻ�s�A��Fp��P3ճ�X�ɑ��hn�c� *H*T�s ��c���4��G1��Bb�J%7��XiD�E��(`��N��PT�
+*�h�5�(����_ U!5�q;�sm��ˆ"�03��t��!O?҃��N��2 2�2�oq���\y�ϡ�k1:I|�*p��O�1��Ǒ����~N����V9�nH'���#�\�!c��'~���B14���.���/����]�B_��^(�w�=���9��xqG�(��D�
+U@d]t�i�ߡ���ٜ��B�"~`�A6@*Xf�r:8+���\�b�!�==�v��`�s.�'��j�NjP�HB!�4 ���Y��@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ �@ Ŀ�YMjs��)IEND�B`�
\ No newline at end of file
Modified: website/trunk/include/foot.wmi
===================================================================
--- website/trunk/include/foot.wmi 2014-02-10 20:06:23 UTC (rev 26602)
+++ website/trunk/include/foot.wmi 2014-02-10 22:59:25 UTC (rev 26603)
@@ -121,5 +121,14 @@
</div>
<!-- END WRAP -->
+
+<!-- thedaywefightback banner -->
+<a href="https://thedaywefightback.org">
+<div style="background:black;height:100px;width:100%;bottom:0;position:fixed;text-align:center;">
+<img height="110px" width="auto" src="$(IMGROOT)/thedaywefightback.png">
+</div>
+</a>
+<!-- /thedaywefightback -->
+
</body>
</html>
1
0

[tor/release-0.2.4] Deliver circuit handshake counts as part of the heartbeat
by arma@torproject.org 10 Feb '14
by arma@torproject.org 10 Feb '14
10 Feb '14
commit edc6fa25706534b35259111797fade88c9b694da
Author: Nick Mathewson <nickm(a)torproject.org>
Date: Thu Feb 6 13:03:01 2014 -0500
Deliver circuit handshake counts as part of the heartbeat
Previously, they went out once an hour, unconditionally.
Fixes 10485; bugfix on 0.2.4.17-rc.
---
changes/bug10485 | 4 ++++
src/or/main.c | 5 -----
src/or/rephist.c | 1 -
src/or/status.c | 3 +++
4 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/changes/bug10485 b/changes/bug10485
new file mode 100644
index 0000000..7e5fa53
--- /dev/null
+++ b/changes/bug10485
@@ -0,0 +1,4 @@
+ o Minor bugfixes:
+ - Move message about circuit handshake counts into the heartbeat
+ message where it belongs, instead of logging it once per hour
+ unconditionally. Fixes bug 10485; bugfix on 0.2.4.17-rc.
diff --git a/src/or/main.c b/src/or/main.c
index deed798..bd23141 100644
--- a/src/or/main.c
+++ b/src/or/main.c
@@ -1353,11 +1353,6 @@ run_scheduled_events(time_t now)
next_time_to_write_stats_files = next_write;
}
time_to_write_stats_files = next_time_to_write_stats_files;
-
- /* Also commandeer this opportunity to log how our circuit handshake
- * stats have been doing. */
- if (public_server_mode(options))
- rep_hist_log_circuit_handshake_stats(now);
}
/* 1h. Check whether we should write bridge statistics to disk.
diff --git a/src/or/rephist.c b/src/or/rephist.c
index 131e531..2948bf8 100644
--- a/src/or/rephist.c
+++ b/src/or/rephist.c
@@ -3041,7 +3041,6 @@ void
rep_hist_log_circuit_handshake_stats(time_t now)
{
(void)now;
- /* XXX024 maybe quiet this log message before 0.2.4 goes stable for real */
log_notice(LD_HIST, "Circuit handshake stats since last time: "
"%d/%d TAP, %d/%d NTor.",
onion_handshakes_completed[ONION_HANDSHAKE_TYPE_TAP],
diff --git a/src/or/status.c b/src/or/status.c
index d239e6e..4c42155 100644
--- a/src/or/status.c
+++ b/src/or/status.c
@@ -121,6 +121,9 @@ log_heartbeat(time_t now)
log_notice(LD_HEARTBEAT, "TLS write overhead: %.f%%", overhead);
}
+ if (public_server_mode(options))
+ rep_hist_log_circuit_handshake_stats(now);
+
tor_free(uptime);
tor_free(bw_sent);
tor_free(bw_rcvd);
1
0

10 Feb '14
commit 534acf400e017adf489dfe3eca87ad82bbc15167
Merge: 3511549 edc6fa2
Author: Nick Mathewson <nickm(a)torproject.org>
Date: Thu Feb 6 13:24:12 2014 -0500
Merge branch 'bug10485_024' into maint-0.2.4
changes/bug10485 | 4 ++++
src/or/main.c | 5 -----
src/or/rephist.c | 1 -
src/or/status.c | 3 +++
4 files changed, 7 insertions(+), 6 deletions(-)
1
0

[tor/release-0.2.4] NULL out conns on tlschans when freeing in case channel_run_cleanup() is late; fixes bug 9602
by arma@torproject.org 10 Feb '14
by arma@torproject.org 10 Feb '14
10 Feb '14
commit 707c1e2e263fd34f70a5f780e77820d667ba2931
Author: Andrea Shepard <andrea(a)torproject.org>
Date: Thu Feb 6 14:47:34 2014 -0800
NULL out conns on tlschans when freeing in case channel_run_cleanup() is late; fixes bug 9602
---
changes/bug9602 | 4 +
src/or/channeltls.c | 193 +++++++++++++++++++++++++++++++-----------------
src/or/connection.c | 16 ++++
src/or/connection_or.c | 5 ++
4 files changed, 149 insertions(+), 69 deletions(-)
diff --git a/changes/bug9602 b/changes/bug9602
new file mode 100644
index 0000000..9e9a3ca
--- /dev/null
+++ b/changes/bug9602
@@ -0,0 +1,4 @@
+ o Bugfixes
+ - Null out orconn->chan->conn when closing orconn in case orconn is freed
+ before channel_run_cleanup() gets to orconn->chan, and handle the null
+ conn edge case correctly in channel_tls_t methods. Fixes bug #9602.
diff --git a/src/or/channeltls.c b/src/or/channeltls.c
index f751c0d..495f856 100644
--- a/src/or/channeltls.c
+++ b/src/or/channeltls.c
@@ -365,7 +365,7 @@ channel_tls_describe_transport_method(channel_t *chan)
tor_assert(chan);
- tlschan = BASE_CHAN_TO_TLS(chan);
+ tlschan = BASE_CHAN_TO_TLS(chan);
if (tlschan->conn) {
id = TO_CONN(tlschan->conn)->global_identifier;
@@ -394,15 +394,18 @@ channel_tls_describe_transport_method(channel_t *chan)
static int
channel_tls_get_remote_addr_method(channel_t *chan, tor_addr_t *addr_out)
{
+ int rv = 0;
channel_tls_t *tlschan = BASE_CHAN_TO_TLS(chan);
tor_assert(tlschan);
tor_assert(addr_out);
- tor_assert(tlschan->conn);
- tor_addr_copy(addr_out, &(TO_CONN(tlschan->conn)->addr));
+ if (tlschan->conn) {
+ tor_addr_copy(addr_out, &(TO_CONN(tlschan->conn)->addr));
+ rv = 1;
+ } else tor_addr_make_unspec(addr_out);
- return 1;
+ return rv;
}
/**
@@ -426,41 +429,43 @@ channel_tls_get_remote_descr_method(channel_t *chan, int flags)
char *addr_str;
tor_assert(tlschan);
- tor_assert(tlschan->conn);
-
- conn = TO_CONN(tlschan->conn);
- switch (flags) {
- case 0:
- /* Canonical address with port*/
- tor_snprintf(buf, MAX_DESCR_LEN + 1,
- "%s:%u", conn->address, conn->port);
- answer = buf;
- break;
- case GRD_FLAG_ORIGINAL:
- /* Actual address with port */
- addr_str = tor_dup_addr(&(tlschan->conn->real_addr));
- tor_snprintf(buf, MAX_DESCR_LEN + 1,
- "%s:%u", addr_str, conn->port);
- tor_free(addr_str);
- answer = buf;
- break;
- case GRD_FLAG_ADDR_ONLY:
- /* Canonical address, no port */
- strlcpy(buf, conn->address, sizeof(buf));
- answer = buf;
- break;
- case GRD_FLAG_ORIGINAL|GRD_FLAG_ADDR_ONLY:
- /* Actual address, no port */
- addr_str = tor_dup_addr(&(tlschan->conn->real_addr));
- strlcpy(buf, addr_str, sizeof(buf));
- tor_free(addr_str);
- answer = buf;
- break;
-
- default:
- /* Something's broken in channel.c */
- tor_assert(1);
+ if (tlschan->conn) {
+ conn = TO_CONN(tlschan->conn);
+ switch (flags) {
+ case 0:
+ /* Canonical address with port*/
+ tor_snprintf(buf, MAX_DESCR_LEN + 1,
+ "%s:%u", conn->address, conn->port);
+ answer = buf;
+ break;
+ case GRD_FLAG_ORIGINAL:
+ /* Actual address with port */
+ addr_str = tor_dup_addr(&(tlschan->conn->real_addr));
+ tor_snprintf(buf, MAX_DESCR_LEN + 1,
+ "%s:%u", addr_str, conn->port);
+ tor_free(addr_str);
+ answer = buf;
+ break;
+ case GRD_FLAG_ADDR_ONLY:
+ /* Canonical address, no port */
+ strlcpy(buf, conn->address, sizeof(buf));
+ answer = buf;
+ break;
+ case GRD_FLAG_ORIGINAL|GRD_FLAG_ADDR_ONLY:
+ /* Actual address, no port */
+ addr_str = tor_dup_addr(&(tlschan->conn->real_addr));
+ strlcpy(buf, addr_str, sizeof(buf));
+ tor_free(addr_str);
+ answer = buf;
+ break;
+ default:
+ /* Something's broken in channel.c */
+ tor_assert(1);
+ }
+ } else {
+ strlcpy(buf, "(No connection)", sizeof(buf));
+ answer = buf;
}
return answer;
@@ -480,9 +485,16 @@ channel_tls_has_queued_writes_method(channel_t *chan)
channel_tls_t *tlschan = BASE_CHAN_TO_TLS(chan);
tor_assert(tlschan);
- tor_assert(tlschan->conn);
+ if (!(tlschan->conn)) {
+ log_info(LD_CHANNEL,
+ "something called has_queued_writes on a tlschan "
+ "(%p with ID " U64_FORMAT " but no conn",
+ chan, U64_PRINTF_ARG(chan->global_identifier));
+ }
- outbuf_len = connection_get_outbuf_len(TO_CONN(tlschan->conn));
+ outbuf_len = (tlschan->conn != NULL) ?
+ connection_get_outbuf_len(TO_CONN(tlschan->conn)) :
+ 0;
return (outbuf_len > 0);
}
@@ -502,24 +514,26 @@ channel_tls_is_canonical_method(channel_t *chan, int req)
channel_tls_t *tlschan = BASE_CHAN_TO_TLS(chan);
tor_assert(tlschan);
- tor_assert(tlschan->conn);
- switch (req) {
- case 0:
- answer = tlschan->conn->is_canonical;
- break;
- case 1:
- /*
- * Is the is_canonical bit reliable? In protocols version 2 and up
- * we get the canonical address from a NETINFO cell, but in older
- * versions it might be based on an obsolete descriptor.
- */
- answer = (tlschan->conn->link_proto >= 2);
- break;
- default:
- /* This shouldn't happen; channel.c is broken if it does */
- tor_assert(1);
+ if (tlschan->conn) {
+ switch (req) {
+ case 0:
+ answer = tlschan->conn->is_canonical;
+ break;
+ case 1:
+ /*
+ * Is the is_canonical bit reliable? In protocols version 2 and up
+ * we get the canonical address from a NETINFO cell, but in older
+ * versions it might be based on an obsolete descriptor.
+ */
+ answer = (tlschan->conn->link_proto >= 2);
+ break;
+ default:
+ /* This shouldn't happen; channel.c is broken if it does */
+ tor_assert(1);
+ }
}
+ /* else return 0 for tlschan->conn == NULL */
return answer;
}
@@ -540,6 +554,15 @@ channel_tls_matches_extend_info_method(channel_t *chan,
tor_assert(tlschan);
tor_assert(extend_info);
+ /* Never match if we have no conn */
+ if (!(tlschan->conn)) {
+ log_info(LD_CHANNEL,
+ "something called matches_extend_info on a tlschan "
+ "(%p with ID " U64_FORMAT " but no conn",
+ chan, U64_PRINTF_ARG(chan->global_identifier));
+ return 0;
+ }
+
return (tor_addr_eq(&(extend_info->addr),
&(TO_CONN(tlschan->conn)->addr)) &&
(extend_info->port == TO_CONN(tlschan->conn)->port));
@@ -561,7 +584,15 @@ channel_tls_matches_target_method(channel_t *chan,
tor_assert(tlschan);
tor_assert(target);
- tor_assert(tlschan->conn);
+
+ /* Never match if we have no conn */
+ if (!(tlschan->conn)) {
+ log_info(LD_CHANNEL,
+ "something called matches_target on a tlschan "
+ "(%p with ID " U64_FORMAT " but no conn",
+ chan, U64_PRINTF_ARG(chan->global_identifier));
+ return 0;
+ }
return tor_addr_eq(&(tlschan->conn->real_addr), target);
}
@@ -577,14 +608,22 @@ static int
channel_tls_write_cell_method(channel_t *chan, cell_t *cell)
{
channel_tls_t *tlschan = BASE_CHAN_TO_TLS(chan);
+ int written = 0;
tor_assert(tlschan);
tor_assert(cell);
- tor_assert(tlschan->conn);
- connection_or_write_cell_to_buf(cell, tlschan->conn);
+ if (tlschan->conn) {
+ connection_or_write_cell_to_buf(cell, tlschan->conn);
+ ++written;
+ } else {
+ log_info(LD_CHANNEL,
+ "something called write_cell on a tlschan "
+ "(%p with ID " U64_FORMAT " but no conn",
+ chan, U64_PRINTF_ARG(chan->global_identifier));
+ }
- return 1;
+ return written;
}
/**
@@ -600,18 +639,26 @@ channel_tls_write_packed_cell_method(channel_t *chan,
{
channel_tls_t *tlschan = BASE_CHAN_TO_TLS(chan);
size_t cell_network_size = get_cell_network_size(chan->wide_circ_ids);
+ int written = 0;
tor_assert(tlschan);
tor_assert(packed_cell);
- tor_assert(tlschan->conn);
- connection_write_to_buf(packed_cell->body, cell_network_size,
- TO_CONN(tlschan->conn));
+ if (tlschan->conn) {
+ connection_write_to_buf(packed_cell->body, cell_network_size,
+ TO_CONN(tlschan->conn));
- /* This is where the cell is finished; used to be done from relay.c */
- packed_cell_free(packed_cell);
+ /* This is where the cell is finished; used to be done from relay.c */
+ packed_cell_free(packed_cell);
+ ++written;
+ } else {
+ log_info(LD_CHANNEL,
+ "something called write_packed_cell on a tlschan "
+ "(%p with ID " U64_FORMAT " but no conn",
+ chan, U64_PRINTF_ARG(chan->global_identifier));
+ }
- return 1;
+ return written;
}
/**
@@ -625,14 +672,22 @@ static int
channel_tls_write_var_cell_method(channel_t *chan, var_cell_t *var_cell)
{
channel_tls_t *tlschan = BASE_CHAN_TO_TLS(chan);
+ int written = 0;
tor_assert(tlschan);
tor_assert(var_cell);
- tor_assert(tlschan->conn);
- connection_or_write_var_cell_to_buf(var_cell, tlschan->conn);
+ if (tlschan->conn) {
+ connection_or_write_var_cell_to_buf(var_cell, tlschan->conn);
+ ++written;
+ } else {
+ log_info(LD_CHANNEL,
+ "something called write_var_cell on a tlschan "
+ "(%p with ID " U64_FORMAT " but no conn",
+ chan, U64_PRINTF_ARG(chan->global_identifier));
+ }
- return 1;
+ return written;
}
/*************************************************
diff --git a/src/or/connection.c b/src/or/connection.c
index 062c971..4f74a1d 100644
--- a/src/or/connection.c
+++ b/src/or/connection.c
@@ -514,6 +514,22 @@ connection_free_(connection_t *conn)
or_handshake_state_free(or_conn->handshake_state);
or_conn->handshake_state = NULL;
tor_free(or_conn->nickname);
+ if (or_conn->chan) {
+ /* Owww, this shouldn't happen, but... */
+ log_info(LD_CHANNEL,
+ "Freeing orconn at %p, saw channel %p with ID "
+ U64_FORMAT " left un-NULLed",
+ or_conn, TLS_CHAN_TO_BASE(or_conn->chan),
+ U64_PRINTF_ARG(
+ TLS_CHAN_TO_BASE(or_conn->chan)->global_identifier));
+ if (!(TLS_CHAN_TO_BASE(or_conn->chan)->state == CHANNEL_STATE_CLOSED ||
+ TLS_CHAN_TO_BASE(or_conn->chan)->state == CHANNEL_STATE_ERROR)) {
+ channel_close_for_error(TLS_CHAN_TO_BASE(or_conn->chan));
+ }
+
+ or_conn->chan->conn = NULL;
+ or_conn->chan = NULL;
+ }
}
if (conn->type == CONN_TYPE_AP) {
entry_connection_t *entry_conn = TO_ENTRY_CONN(conn);
diff --git a/src/or/connection_or.c b/src/or/connection_or.c
index 3d16e14..8e7cd9e 100644
--- a/src/or/connection_or.c
+++ b/src/or/connection_or.c
@@ -622,6 +622,11 @@ connection_or_about_to_close(or_connection_t *or_conn)
/* Tell the controlling channel we're closed */
if (or_conn->chan) {
channel_closed(TLS_CHAN_TO_BASE(or_conn->chan));
+ /*
+ * NULL this out because the channel might hang around a little
+ * longer before channel_run_cleanup() gets it.
+ */
+ or_conn->chan->conn = NULL;
or_conn->chan = NULL;
}
1
0