You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by cc...@apache.org on 2017/04/11 00:55:07 UTC

[01/11] incubator-mynewt-core git commit: nimble/l2cap: Add PTS instructions for LE CoC and run all the testcases

Repository: incubator-mynewt-core
Updated Branches:
  refs/heads/master 004423135 -> f6605c2ab


nimble/l2cap: Add PTS instructions for LE CoC and run all the testcases

This patch adds instructions for LE CoC and fixes adv data settings
for previous test cases.


Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/commit/b907e7d3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/b907e7d3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/b907e7d3

Branch: refs/heads/master
Commit: b907e7d3ea98965dae6d3b8d1bf858bce48c96aa
Parents: 5a6fd54
Author: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Authored: Tue Mar 21 14:19:02 2017 +0100
Committer: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Committed: Thu Apr 6 10:04:03 2017 +0200

----------------------------------------------------------------------
 net/nimble/host/pts/pts-l2cap.txt | 75 +++++++++++++++++++++++++---------
 1 file changed, 55 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/b907e7d3/net/nimble/host/pts/pts-l2cap.txt
----------------------------------------------------------------------
diff --git a/net/nimble/host/pts/pts-l2cap.txt b/net/nimble/host/pts/pts-l2cap.txt
index c94e9ba..9002183 100644
--- a/net/nimble/host/pts/pts-l2cap.txt
+++ b/net/nimble/host/pts/pts-l2cap.txt
@@ -1,7 +1,7 @@
 PTS test results for L2CAP
 
 PTS version: 7.0
-Tested: 10-Jan-2017
+Tested: 21-Mar-2017
 
 Results:
 PASS   test passed
@@ -181,40 +181,75 @@ L2CAP/ECF/BV-07-C		N/A
 L2CAP/ECF/BV-08-C		N/A
 -------------------------------------------------------------------------------
 
-L2CAP/LE/CPU/BV-01-C	PASS	b set adv_data flags=0
+L2CAP/LE/CPU/BV-01-C	PASS	b set adv_data flags=6
 				b adv
 				b l2cap update conn=<handle>
 L2CAP/LE/CPU/BV-02-C	PASS	b conn peer_addr=<addr>
 				b term conn=<handle>
 L2CAP/LE/CPU/BI-01-C	PASS	b conn peer_addr=<addr>
 				b term conn=<handle>
-L2CAP/LE/CPU/BI-02-C	PASS	b set adv_data flags=0
+L2CAP/LE/CPU/BI-02-C	PASS	b set adv_data flags=6
 				b adv
 -------------------------------------------------------------------------------
 
-L2CAP/LE/REJ/BI-01-C	PASS	b set adv_data flags=0
+L2CAP/LE/REJ/BI-01-C	PASS	b set adv_data flags=6
 				b adv
-L2CAP/LE/REJ/BI-02-C	PASS	b set adv_data flags=0
+L2CAP/LE/REJ/BI-02-C	PASS	b set adv_data flags=6
 				b adv
 				b term conn=<handle>
 -------------------------------------------------------------------------------
 
-L2CAP/LE/CFC/BV-01-C	N/A
-L2CAP/LE/CFC/BV-02-C	N/A
-L2CAP/LE/CFC/BV-03-C	N/A
-L2CAP/LE/CFC/BV-04-C	N/A
-L2CAP/LE/CFC/BV-05-C	N/A
-L2CAP/LE/CFC/BV-06-C	N/A
-L2CAP/LE/CFC/BV-07-C	N/A
-L2CAP/LE/CFC/BI-01-C	N/A
-L2CAP/LE/CFC/BV-08-C	N/A
-L2CAP/LE/CFC/BV-09-C	N/A
-L2CAP/LE/CFC/BV-16-C	N/A
+L2CAP/LE/CFC/BV-01-C	PASS	b set adv_data flags=6
+				b adv
+				b l2cap connect conn=<handle> psm=90
+L2CAP/LE/CFC/BV-02-C	PASS	b set adv_data flags=6
+				b adv
+				b l2cap connect conn=<handle> psm=90
+L2CAP/LE/CFC/BV-03-C	PASS	b set adv_data flags=6
+				b l2cap create_srv psm=<your psm>
+				b adv
+				b l2cap send conn=<handle> idx=0 bytes=15
+L2CAP/LE/CFC/BV-04-C	PASS	b set adv_data flags=6
+				b adv
+				b l2cap connect conn=<handle> psm=<not suppported psm from ixit>
+L2CAP/LE/CFC/BV-05-C	PASS	b set adv_data flags=6
+				b adv
+L2CAP/LE/CFC/BV-06-C	PASS	b set adv_data flags=6
+				b l2cap create_srv psm=<your psm>
+				b adv
+				b l2cap send conn=<handle> idx=0 bytes=15
+L2CAP/LE/CFC/BV-07-C	PASS	b set adv_data flags=6
+				b l2cap create_srv psm=<your psm>
+				b adv
+L2CAP/LE/CFC/BI-01-C	PASS	b set adv_data flags=6
+				b l2cap create_srv psm=<your psm>
+				b adv
+L2CAP/LE/CFC/BV-08-C	PASS	b set adv_data flags=6
+				b l2cap create_srv psm=<your psm>
+				b adv
+				b l2cap disconnect conn=<handle> idx=0
+L2CAP/LE/CFC/BV-09-C	PASS	b set adv_data flags=6
+				b l2cap create_srv psm=<your psm>
+				b adv
+L2CAP/LE/CFC/BV-16-C	PASS    b set adv_data flags=6
+				b adv
+				b l2cap connect conn=<handle> psm=90
 L2CAP/LE/CFC/BV-17-C	N/A
-L2CAP/LE/CFC/BV-18-C	N/A
-L2CAP/LE/CFC/BV-19-C	N/A
-L2CAP/LE/CFC/BV-20-C	N/A
-L2CAP/LE/CFC/BV-21-C	N/A
+L2CAP/LE/CFC/BV-18-C	PASS    b set adv_data flags=6
+				b adv
+				b l2cap connect conn=<handle> psm=90
+L2CAP/LE/CFC/BV-19-C	PASS    NOTE: TSPC_L2CAP_3_16 (multiple channel support) must be checked
+				b set adv_data flags=6
+				b adv
+				b l2cap connect conn=<handle> psm=90
+L2CAP/LE/CFC/BV-20-C	PASS	NOTE: TSPC_L2CAP_3_16 (multiple channel support) must be checked
+				b set adv_data flags=6
+				b l2cap create_srv psm=<your psm>
+				b adv
+				b term conn=<handle>
+L2CAP/LE/CFC/BV-21-C	PASS	b set adv_data flags=6
+				b adv
+				b l2cap connect conn=<handle> psm=90
 -------------------------------------------------------------------------------
 
 L2CAP/LE/CID/BV-01-C	N/A


[04/11] incubator-mynewt-core git commit: nimble/l2cap: Fix for reject incoming LE CoC channel

Posted by cc...@apache.org.
nimble/l2cap: Fix for reject incoming LE CoC channel

With this patch, when user rejects incoming connection stack not send
BLE_L2CAP_EVENT_COC_DISCONNECTED event


Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/commit/41c9c799
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/41c9c799
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/41c9c799

Branch: refs/heads/master
Commit: 41c9c799807bc654ef20361611ba732c68012979
Parents: 11d2cb5
Author: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Authored: Wed Mar 15 14:02:17 2017 +0100
Committer: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Committed: Thu Apr 6 10:04:03 2017 +0200

----------------------------------------------------------------------
 net/nimble/host/src/ble_l2cap_sig.c | 4 ++++
 1 file changed, 4 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/41c9c799/net/nimble/host/src/ble_l2cap_sig.c
----------------------------------------------------------------------
diff --git a/net/nimble/host/src/ble_l2cap_sig.c b/net/nimble/host/src/ble_l2cap_sig.c
index ae99f00..d9e7c52 100644
--- a/net/nimble/host/src/ble_l2cap_sig.c
+++ b/net/nimble/host/src/ble_l2cap_sig.c
@@ -695,6 +695,10 @@ ble_l2cap_sig_coc_req_rx(uint16_t conn_handle, struct ble_l2cap_sig_hdr *hdr,
     rc = ble_l2cap_event_coc_accept(chan, le16toh(req->mtu));
     if (rc != 0) {
         uint16_t coc_err = ble_l2cap_sig_ble_hs_err2coc_err(rc);
+
+        /* Make sure we do not send disconnect event when removing channel */
+        chan->cb = NULL;
+
         ble_l2cap_chan_free(chan);
         rsp->result = htole16(coc_err);
         goto failed;


[07/11] incubator-mynewt-core git commit: nimble/l2cap: Fix logs on LE CoC receive data

Posted by cc...@apache.org.
nimble/l2cap: Fix logs on LE CoC receive data


Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/commit/8a64a498
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/8a64a498
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/8a64a498

Branch: refs/heads/master
Commit: 8a64a498afdcc1d7b7b46436f87e16a393521c77
Parents: 41c9c79
Author: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Authored: Fri Mar 17 13:35:37 2017 +0100
Committer: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Committed: Thu Apr 6 10:04:03 2017 +0200

----------------------------------------------------------------------
 net/nimble/host/src/ble_l2cap_coc.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/8a64a498/net/nimble/host/src/ble_l2cap_coc.c
----------------------------------------------------------------------
diff --git a/net/nimble/host/src/ble_l2cap_coc.c b/net/nimble/host/src/ble_l2cap_coc.c
index 3f8373f..87d830a 100644
--- a/net/nimble/host/src/ble_l2cap_coc.c
+++ b/net/nimble/host/src/ble_l2cap_coc.c
@@ -197,17 +197,19 @@ ble_l2cap_coc_rx_fn(struct ble_l2cap_chan *chan)
     if (OS_MBUF_PKTLEN(rx->sdu) == rx->data_offset) {
         struct os_mbuf *sdu_rx = rx->sdu;
 
+        BLE_HS_LOG(DEBUG, "Received sdu_len=%d, credits left=%d\n",
+                   OS_MBUF_PKTLEN(rx->sdu), rx->credits);
+
         /* Lets get back control to os_mbuf to application.
          * Since it this callback application might want to set new sdu
          * we need to prepare space for this. Therefore we need sdu_rx
          */
-
         rx->sdu = NULL;
         rx->data_offset = 0;
 
         ble_l2cap_event_coc_received_data(chan, sdu_rx);
 
-        goto done;
+        return 0;
     }
 
     /* If we did not received full SDU and credits are 0 it means
@@ -223,8 +225,7 @@ ble_l2cap_coc_rx_fn(struct ble_l2cap_chan *chan)
         ble_l2cap_sig_le_credits(chan, rx->credits);
     }
 
-done:
-    BLE_HS_LOG(DEBUG, "Received sdu_len=%d, credits left=%d\n",
+    BLE_HS_LOG(DEBUG, "Received partial sdu_len=%d, credits left=%d\n",
                OS_MBUF_PKTLEN(rx->sdu), rx->credits);
 
     return 0;


[11/11] incubator-mynewt-core git commit: This closes #206.

Posted by cc...@apache.org.
This closes #206.

Merge remote-tracking branch 'rymanluk/fix_l2cap_coc_locking'

* rymanluk/fix_l2cap_coc_locking:
  nimble/l2cap: Add PTS instructions for LE CoC and run all the testcases
  nimble/pts: Update pts files due to L2CAP LE CoC
  nimble/l2cap: Add initial unit tests for LE CoC
  nimble/l2cap: Fix hs locking issue when sending le_credit_update
  nimble/l2cap: Fix logs on LE CoC receive data
  nimble/l2cap: Fix for reject incoming LE CoC channel
  nimble/l2cap: Fix locking on incoming LE CoC connect request
  nimble/l2cap: Fix locking on LE CoC connect
  nimble/l2cap: Fix locking when receiving LE CoC credit update


Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/commit/f6605c2a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/f6605c2a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/f6605c2a

Branch: refs/heads/master
Commit: f6605c2ab4a664fee54f13eb0b0fc091baf1fde2
Parents: 0044231 b907e7d
Author: Christopher Collins <cc...@apache.org>
Authored: Mon Apr 10 17:25:05 2017 -0700
Committer: Christopher Collins <cc...@apache.org>
Committed: Mon Apr 10 17:25:05 2017 -0700

----------------------------------------------------------------------
 net/nimble/host/pts/pts-l2cap.txt               |   75 +-
 .../host/pts/tpg/90359-20161220-172100175.tpg   | 1022 -----------------
 .../host/pts/tpg/90359-20161220-172113981.pts   |  288 -----
 .../host/pts/tpg/94654-20170317-085122560.tpg   | 1026 ++++++++++++++++++
 .../host/pts/tpg/94654-20170317-085441153.pts   |  289 +++++
 net/nimble/host/src/ble_l2cap_coc.c             |   21 +-
 net/nimble/host/src/ble_l2cap_sig.c             |   20 +-
 net/nimble/host/src/ble_l2cap_sig_priv.h        |    3 +-
 net/nimble/host/test/src/ble_hs_test_util.c     |   73 ++
 net/nimble/host/test/src/ble_hs_test_util.h     |    7 +
 net/nimble/host/test/src/ble_l2cap_test.c       |  696 +++++++++++-
 net/nimble/host/test/syscfg.yml                 |    1 +
 12 files changed, 2174 insertions(+), 1347 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/f6605c2a/net/nimble/host/src/ble_l2cap_sig_priv.h
----------------------------------------------------------------------


[05/11] incubator-mynewt-core git commit: nimble/l2cap: Fix locking when receiving LE CoC credit update

Posted by cc...@apache.org.
nimble/l2cap: Fix locking when receiving LE CoC credit update

Lets remove lock once we have conn and chan.
Functions ble_l2cap_coc_continue_tx() and ble_l2cap_sig_disconnect()
do own locking when needed,


Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/commit/f902592a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/f902592a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/f902592a

Branch: refs/heads/master
Commit: f902592a8e83030111a5555be12530a681ca6b97
Parents: 04d4600
Author: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Authored: Tue Mar 14 14:37:20 2017 +0100
Committer: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Committed: Thu Apr 6 10:04:03 2017 +0200

----------------------------------------------------------------------
 net/nimble/host/src/ble_l2cap_coc.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/f902592a/net/nimble/host/src/ble_l2cap_coc.c
----------------------------------------------------------------------
diff --git a/net/nimble/host/src/ble_l2cap_coc.c b/net/nimble/host/src/ble_l2cap_coc.c
index fbfbf31..3f8373f 100644
--- a/net/nimble/host/src/ble_l2cap_coc.c
+++ b/net/nimble/host/src/ble_l2cap_coc.c
@@ -437,15 +437,14 @@ ble_l2cap_coc_le_credits_update(uint16_t conn_handle, uint16_t dcid,
 
     if (chan->coc_tx.credits + credits > 0xFFFF) {
         BLE_HS_LOG(INFO, "LE CoC credits overflow...disconnecting\n");
-        ble_l2cap_sig_disconnect(chan);
         ble_hs_unlock();
+        ble_l2cap_sig_disconnect(chan);
         return;
     }
 
     chan->coc_tx.credits += credits;
-    ble_l2cap_coc_continue_tx(chan);
-
     ble_hs_unlock();
+    ble_l2cap_coc_continue_tx(chan);
 }
 
 void


[03/11] incubator-mynewt-core git commit: nimble/pts: Update pts files due to L2CAP LE CoC

Posted by cc...@apache.org.
nimble/pts: Update pts files due to L2CAP LE CoC


Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/commit/5a6fd54f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/5a6fd54f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/5a6fd54f

Branch: refs/heads/master
Commit: 5a6fd54f1ca6c8efb7a010137e78065320c4569f
Parents: 082d066
Author: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Authored: Fri Mar 17 15:22:55 2017 +0100
Committer: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Committed: Thu Apr 6 10:04:03 2017 +0200

----------------------------------------------------------------------
 .../host/pts/tpg/90359-20161220-172100175.tpg   | 1022 -----------------
 .../host/pts/tpg/90359-20161220-172113981.pts   |  288 -----
 .../host/pts/tpg/94654-20170317-085122560.tpg   | 1026 ++++++++++++++++++
 .../host/pts/tpg/94654-20170317-085441153.pts   |  289 +++++
 4 files changed, 1315 insertions(+), 1310 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/5a6fd54f/net/nimble/host/pts/tpg/90359-20161220-172100175.tpg
----------------------------------------------------------------------
diff --git a/net/nimble/host/pts/tpg/90359-20161220-172100175.tpg b/net/nimble/host/pts/tpg/90359-20161220-172100175.tpg
deleted file mode 100644
index 17ee08c..0000000
--- a/net/nimble/host/pts/tpg/90359-20161220-172100175.tpg
+++ /dev/null
@@ -1,1022 +0,0 @@
-<!-- START ENCRYPTED FILE --->
-M'&/JP\$+#X83?)"[ M2E=\N*7*U 5)JSKT(5#=>@^/#]IP*[GTZ0%0]$F(/$
-MEK[V7>349??;!JZJNFZ CK=QGD^FOYV^FU>"DK<@0U*##HV\H9&_%["5IK@1
-MA9F,FJO2P^3:4_]04%-0T%9=^XCMWKF"L$[)%)C;_)T1Q?@:H)&1HX)7VY&.
-M3 *!JH;^YUJ1[_*7JN2'Z5^*0I&NP+[LAE:>S92BP^T:3+B>IKFJJ8A,4Y^L
-MUX+P_C'Z#VN20)A!ANN2@J#!AYY4"KQ\5):1]+[B\TN+BI"AB8NJH ,NZ(()
-MG>K?^<ZA'-8/RL)K$<%/C9_^!,V#I\G\U //$%L+CAC;BZR I+VL1_?1UG&4
-M!5L,T[F[JEFYD;^4JYE2JO%6O=++]8Z @-$:]Y- 6I)WEL+V;4;S1I>]HZN1
-M@3V^]HE#L(M;!\K8_&=C699*N9MLH+@9N+!6Q>)1NG/"7H]IEY.MLV*)DI*K
-MV>O#U![T"<3;_ES>HPKF_04M50[1?P\(FEZ?)DV2'Y-@^7V;5F5T%>W&A<$!
-MGL>FH8G$FI[2O\4! O_)M,S.X<X'$LG=U<8OR<W%'0?+P+J,BYX96H.4HKM;
-MZIH"ZC$_XI6-C(U81ZK0+U'WT]"<$W..KDS D:RWXTV0D9:?G)#"*98 J*=.
-MT5&<EI>NG(F.;(E.'NP9/M[ZRJ^)BET8L+6MV'LWDW-6Q=R-F82IG=BED:A"
-M\X'Q_OSSU9R9G\R_B[20D&GQ M:EG$60H;Z3HP0ZF(F=5_#M)]J/N]![._KF
-MYHB<"5BIYW0%DU=-V94.BJ^8J=_ G"-+%G\,1(N&BZ"GD\#SPW;G0+./B8N=
-MY+[SNH*+;=:R&,%8U&JP?ZGIGXZ0<E*"/L6/@,D:\OCOPY6-[1N.G(VOLX%"
-MC*P.DI"3X_.VGKN8B_:?0X9)7)F$IG"3PRO]/\Z1D+^>K: >TY"AJMR,O$?T
-MDI8GEL$,+X?4E:*]K&).J8B=H\'Z'46F7-"P5[_Q*ORZ4)>H3\X+UXR73'J.
-MCL3M0_"2EKV4C%&PD]6C*:GD]C22PUYAB'^=(_'-U]FPCO N@;KWY!4ORJBN
-M7^L?%4A0@M*IKGE%Q\;M-"?@4;I+4LF4MEM%DZI6*,S@^97E\)J?B4'/=OFD
-M>H:7B;RJB(*E2Q09G;J#AZ^5OBY: PF<J9J=+3 ^]ACK59!5_)V+8.AJE%&6
-MFXH"Z[7N%:]+4GVH@$0[\H>7^P;OX(.&G#AIGX/--_7ZTM#X4%>%DE5YFI$5
-MY3"06_11TY"J6^3RT7#'RSSQDJ]5_(X!:/)#S=;#T:^@2YM5L9JK.8?]S58]
-M]O_;H].\A*& 6MBJPMC&I1.\OY1 LY89\M+%8G!PF!F*W: 2LYK([L58K9&4
-M433[V=[8]F=S[\Z/BI&^VE>*U[:&31&K;^94\:9=FIV;EZ;%DO'_X_H@QU>F
-M78^ZIAF%Y=?6W^4S[T 5K$:EEL<1Q9K&3H0(!$N'BX.J[);G4%'9E%\6D5I0
-MP,'M%O?@E+&(5+:5%A"ECIC!UI#)F%22!9>1J(CJ_I] DL26D.,JE*QH*)))
-MS>WJ!,0+MF\ AX26=Y^@^;.SM<\$6=!%L'=2BM+&Q5A<7:!%=($7_<<6QO(L
-M!U PHHT:V8R;(]>#%P+:T%J4'K_^D5A"H9W(FM+U4OXE3Y6HB(97K_'*R,0*
-MTM.#%K1<N-.S91(Y.N79'$B@7WXU6'L UL7<AHF@C*8'/GV)-A5"<".:<;![
-M#%*9JV"'JMG.RM+Z4=I55K<<]JR&*.GV[-[7HIZ C.@BNY;8WM4#_IO)SHY4
-MJFQT2^#VMM7PQTZ6M'5#B799(4S:\+"44%NDBJI?(7XW.G( KXF^A+ BF_%B
-M?BO(SZ,0JIV*KUJ37%LDT[_)\.[^T%%'LEX,>K.3P,KK_L@!/(ZSE9_,3E,!
-M<K5&Y.\%BX:/GY%86\K_"N9<-%*;@%<)J^%QQ_>GVY2BOGU4@5R8PH^^]=WN
-MXA^%BE4'G?:;;%J(XOO&P*/#OT^F?-J/NX&@;'*6F(6R]VCQ]^/MAXRCUNN4
-MNUQ0=KEV6%#.5Y3':#WL,M&!ID"#@J&-GEFDU^OEE!.?ST>$>;P\GJ_BIGY+
-MI<3-[O=%Y FG_+RL^$29#8Y;"?@U$B[VFI-_E1-:MY[1OC!^F*#7S-[X_,7%
-MG)L5A)\#C:O7L&6'OL'ZMR_2NBM<A,H=6M5#O\C>V<&WO$JMA:"J6*7QN2[7
-MQ-E:E*'Q4E7_^J64"_3>Y50'F!&1C)6_G6FT7P#ZT\8ZFQQM\&F+29*%A[=*
-M6/ A^G?:K5.CG9:HDI10K<UW_*^0-]G9MX1*C[INIX2R0W*JS=B?#_:$E9X\
-MOH>K:J::$_$@1=60%]*:KAU32)^XOKO(@(M'%L#5TXD $MB[#YE7 !RNB)OE
-MH+W#-^S'];>BG[RCE+)3BGBEE.[V7+VAKO93D)L \L?^9<2#5+:4K/"2_%.#
-MAEK2Z],0A*.D5-J2D8BF4)OS$F?B-\B0C89AWSAC_I.%ZN,SY7HVTKJ$38-8
-MGUV06U0-_F-MM"[C%UY?C)V/[(Z[]'O!%ZVO'J$P%Q9=K:_R"5*@<)<'TC,=
-MKI8'N41Q"+J2*WQ9H).+[0W1S\WNI^%":SZ&WQ;:2[I4H%92R2'X[!#W\[Q9
-ML9%:@0JO0-LHP+JF2EZRO5Y:V\/5'!9ZVH62?EN&B4&ZK%^)TO[C0II#D:^>
-MI?Z*H9>:S38C/CJ3-H*;A#>3C7^'FUP9_NT0GXJG)C&=>Z_6EIK &,'5/_;P
-MPSSP3;H/G$V-H+N[(<@.$\/S2(:DE$Q7386-IHQ+"7'9]=8^(PTT$;*24YM"
-M4JO47PKGS]]1S^H3W+DR_8JX=8N)\K .JNT_U?K&P 6'\':5CX6J MFO(-P>
-MW%>5GZ$,5P*4[RY2^^%<I$I%A)?YV:B'G=#*Y[)XIIFTCEK^EW::^MG[];?R
-MILO?FL!2N=.>UJ"@V6I]EO?3"H^P/P)'G[135<3R9O0MN@-)MGWHBY^K.)6/
-MFO/<*L?#0Y*)H/V*;U:6IX10<N/B8/?T-^,139N9OE*#D_)P6M<(W?CWZ>H7
-M)="/6(:%0Y9+E\N"I)C!(O?V0^;WC9 RK4^5&;T!A]K6F/P@GXPPGO\5]F7"
-M=GPG59::__!1/IB$<K_S7>' &GF8M8^BJ[J4D%T'\=/P%<O :*9R@]BM=+"G
-M2@#K_\!V44M.0_-6P[Z'HI1S<;,PY?H/PL^<2J='E1MXE(+U <WN@?/5@X6$
-M3&ESC(:0T@,-]O?O[NZ)N)*IGUZUZ):B; Y9TRP%'/\6^@CB2J[UIY9VH_YS
-MLH9.POHY+<7#]7J6@KB D9CS&,]#T(96LZ^;D9J[)2 W[C;V[ZR1@:DFD9SR
-MH'!=(=_#9IJ1B+R&D1BHNM!W(_/7.GKO0&=?H(-VGM.5@Y3(T)7T[XN0E:/"
-MJK_?GG,HP_31-\?D4,>^<9[#B#W+*'>1#03>TQ[U8ID6ND:+3$V!K)"]HOOM
-M_^3_TM+62Y5^3@VWBJP$@_'%X^X(!@T DXJ8$)*.<DC:B[ ?@RW!UM8_[_%P
-M6X(-3[V^&\%4X>"/B)*]W<F>0LUR\/[^UG*<DYZIGYB>MJ":4MD,SQ.*<9*]
-MSX4,?;!>GL#P-6;_T,#OLD+=O$C&V[&Z"-YE<C?SPH:@J59'6'!1B,%QQ6[4
-M?\/II)!-O8S-@VQ:71K4JF:G\1"9F[V,SI:4B9)VET,W\UXZQO./O:OWEX6[
-M"K1$#*T,QB[YW2O#PMG(AD>%FK6/5J?KGXO#)M5F]>0+C(& 1)9;0AD@V>_P
-MW*&QE5>)6]L1P#,0$"?/38&>E8^1G$"U\ZD"[MO1G!B2N]^(FCMIMIL',L70
-MQO/21W8XP0&"GH9ZBH7RL;:> H[S@(#^0Z^/E6# \G66._S'B79,GK^\O*MC
-MCEK'*O@"[P+F0OJ*3F^3E4NCGJCAT^/V_]Y1;QZKTII69YH6:X*?1>[<_0R'
-MP-KBCPY>GPN/IYZ ;=!11^KW[-;R [H)DXR:699;",['/;V1]Y&&05&9B=(V
-MD#"Z\W&<_K%5H(Y=B%1-V0SE$;H60YRD>7NI@*6!(/&L^CH/V&FG@+OVK;W[
-MMU[BPM3G[^.'5#&?T<*&AI6< -?!]C?FFI3WG+R-6)6[HDZ:X=7\>PO/R(=V
-M^FRG'ZR;38Z[ 3&MQE#&XN\47XJ+PDE*6[A2.PG'R@3[")#RP)%'D)-*=$=7
-ME*6EN_#X=>?7] ^)V++'\YV)FLK,R/2N4D:1!(*2B.>BQ30F>X":=*2.IEMZ
-M7V2CDN*'0S)0&;)17Z%3EWB@0_+SU/K%QQ&0VI)7 F<OCZ-'P/_E[/?SNU"Z
-M'9[K5H^GJ*#K^4*0;D,6OG6$3WB+&Y/V2VC\@MOU#QQ)EE>@H[(.H18._P%J
-M'33VQ@&-LO]W&IN2D-F4-OO"VBP7WLW+ ^)"F%5RF:6[GJ23@'TL^BZZ\C7Q
-MS)(TG)3:UX/ ST*R=+A)G5ZWEE?)ZCTV?FX0C$&^456C5@*0)?D#::#0GX!"
-M59(XFIZ(M\$@\K7Z^B50Z+>PFTI&EK^?O\$TQ.WN*J:.B8BIQ_^TEHCQZ.[$
-MNGKBJI;]G):;II*05E;2[>W+:MK@#]W'S$]2E5N&%HLED,$U]/[:F:AXDHF?
-MDIN'C9>?X]W9ZPO [V#V8RC]$W:.N)JVC ^:R3KD]_XUIY )\;2FQ/X"\\[P
-M\'Z1_ABF@:NVP//E-=?'PIV 1%B2&4.:X%Y;)0+G8YJRA'2.LUJ?1$1WQ2:5
-M\&[#$+E7M)L9BZB0GVP!J]7N-^#''::_^N*\VH"L+6@T]Z*RBI]ZK92O2ND)
-M2%K]"/RN$_=&A@5?D8JI<X&+,-Q0K4+FUNP^0JO^7)"8OLB;]ZQ26O>-_4</
-M3T(%D>T?CU#_LA%24:12LW'QP<+'TJ*-D)J%4D.?J-K_P18/T%J4E9%\&_'$
-M/<8P-@B$AM)8LXF"UJREJRC/4-9>G'^%5Y">W7@BBICFTY/0RL(3I;A8^I-=
-MG?--YR@6]$)EAS!&F/R;GX70[<'2?/80-],;DA>NB[V>YX!5JNG>Z_C!"PN?
-M$(1 C9+EV(Q'K:"__33WU_-&D@]*_E;I7*)F)ZO QX#4Z2_/T]9/E9U;J(VK
-MJC8DCY;4]O]P+Y8(S(@#GK:RFELE0R7"<)FAGU>7+KW'^NW0[_K(K#83OL)4
-M^/*QAY+QRP+<1*)V#UI5BY*XIYM1\!W:1-L+RI*HJII-<HY8K=-4\QZT6[M0
-M(9^(#9+PQ>WRP]/C^G(3IHY5G!>$OQ-"C=>E#MY!QZ]!B5W0*".OC;C#FYO!
-M7F7^<F3#C9>%BI^F$IJ>: 2+#=?,SM;B2A#<QS^MEMN2IKJ@L)*#UQ;5UGO6
-MVJJ@B[[UI:I8XNONW/X3GEZ^"?F7=SZP[AK%SZX($OC3LXA#K8:?R,+Q (2@
-MTZU?IYH99EV9\/(UVC0E,J\SH]J)[?+R(X[BY#2UM\+&A;B#N$^*DEN5\L/F
-M^FYZ]I]V!%2YA:D#Z9H2HN[^^2+G0ZRP1;F+L@$;R):#*/X\_L9VP,VJ6Y%\
-M@%N:6>RSF,<."(?&QOXBV&V?F::^)ADX\D@/FMGH]) 2[_#Z@!:]%HE6$,ED
-MFLA$O9.\@%&3BT+Z+L;&__"XN$FNE*6;F\QRG<3>PN"82%.YNY5:29)4KL?T
-M[I+F$Q0:I):#WD-81J*("W ]/\/%OO2$WZF+K$Z(X$5>L_9M^M.4LIF_[Z[$
-M@JR:NZ$ *@[/XQQ?I;V\7JANDT;V%U/">76]I]=G'[:EVA:X@9:HCX,1RNSL
-M 0[;]>"_,X2C0E>YB')@EZKGZ^S6<';%NIFTF_!RFI[BXT#;K%V2O0P3LEC1
-M$MTV.^?G=G&*N5Z[KHFAI(+Q5P7@$*'+G[.PT:U$1X+"J^S[]L.8S[JHBIJ)
-MCXW?;Z#D%?9OJX:/\8NZBIR&B)P-\CWP<G8%1I"?G.[:ETJR!JD)']P)]D,3
-MCM6]@8*ZFYBDI*E@LC5B%]_Q48B\\M(\B[N9XH60P\[$!^3D^\_BBUZ4DLA?
-MDQJ9HD2#P6A5Y_#_\YJ0%E:"^(JIQPS E%V\EE^WH5PPV<)A>] UUIP$=(V 
-MD(^3@8YRPL?+UHZ<5*^:2JH[$YI6U[F5%_"BFF> $'L\1O)VL80-,O-N\@<)
-M7\2;6@JLAE*\ <'X...@ZC8Y>;
-M!](]&_VOP.OR3Q"!GXM8\:./V=DN(>@!#M\C"E*^':"*];N<]J.S@LT_]<05
-M]%M>R(J1FZ$3O1## QS:N N>H-.+CPC_\^[D$ %46*:^ID*:4X1UC2D)]5!_
-MAE^PU@C.@Y/_F\#P]7OFR]!#1KNJJ(\>D(6<H.K%,O?QIINIJ*FODK*+0!J^
-MT?+[Y/$\EG0&GHN9CZ*B$R#@SDM6CM9DVORZ@[^.@ZA>EP=@O,6V$ 6Y1)RP
-MVA9+0X*H&E_;VN@KQOX%SV&37%47BZ93L_N[GZMBFFSZ]N3%&E )KPQQF%;1
-M'>/07(BD45^%FGW!&K:VQOX#^HJ4K<Z4KI<$#GTE_L+4_)VTF5HQ?*B(UY$ 
-M],3V<\=8"-NSRWX'%=VQ3/#F4Q(U\,:.H[=2BUB"BJPAXO:OQ?#;JYR<#+S_
-MO+JHM9NERM3=W>5"5X982-=.Y8VSOY;GP>74\C+.N9>'</^:9IR3I"99QRO$
-MJL["%@4=@X^[L<H%RUQ0.'W743(TWF9PPH_(OKS]U2B=P2G5%)>1D:VZ2XX9
-MH2K&^O?P\T@8!]B471"[Z[!;)>\#&%66DJT$=UF"I-J:\M3C[AORPZO5P8,#
-MZ*N4>Y@'Q!CU_H>'=D93GKE&H%\7Y_3TYG(VKXE>CXBZF$$)L%6# OC_RP)Q
-MPYD,#8FCB$\.H*>OT7'WTK;[XHE3C[\61H.[U*6$D=GB_@V+[-=/' F'FW-X
-M?FZV6[A;@P>9]S;V/>-Q]%B-$)':JT',V0FLE9!'EMN:VZ?2U?#^_,51W(2=
-M?X&\@Z!?G:T*U9R1R8HYI%V>6*:7@Q$><3_P0^6IIZ.)$@>8D[:XC/IA._O%
-MB\[#MYN'6E:RE='2[T62MN[GMZR4CM:5AX92K<$,#$MNVN&#E!A*EU^=1W.4
-MKQC6/1 G]N,_4I>(GC>I@/*27JK%* ZGQM?H!U9(SBM3 OZ2@Y^AGI,,T?D5
-MDG*F_;:0.TWPJ"G)#-/0T"""L+!7&I>2\;?\[\;*K$;7O)V*NJOX1!_W+4_)
-MF%2>J)!5UJC,#'D-D>=G[]O1@Z7IN\A*GX1Q5,+T]][RZZO:B*B^AH^RBQ0'
-M_^3ZFY*A7-Q>GFD&CN&SED#,[-;;U\?8J9"=K<Z*00:"HKC9.O&\.FX QRQ&
-ML[?^BU/2H%;[S<S,SMW;S.,VC5Z>FI)>N:F2QDV_1,#FO;_V YPP6IZ6?9I?
-M\L^/TH26=%BRD5:O4=(]QO0\T]RV@E[V<?.8X9KW45\3$HV;I!U:"()8D[_6
-MP7[S1"X3T E089N)NYI5B>Q1E"7Z,@\]AB&WJM**HJ"AT6GQ\-26\4:GD @]
-M5<TC '!# ,S6^^X!TZN^GA:>J\N8D(9(F/#!Q\+WJUN^^Q]7E(V3BG!4&8W5
-MV%S?#RWC"ZW7WKE\NA&X29:'F_?R$S#W_^^:H-.OEZ*9GPT.@-*80HB-TKR6
-M'0WZ,]+ /\%5D9A0I:*:6+O[K4&"I=/V4%Z%E)*6GZ*E^_?QEQ8>B4&)MZVZ
-M@XJJ^XK K70C$NZ%C78XB)J;1@QRA +1])2ZY^:E3:J.UJY/1Z"6>1&>UOO&
-MP)2_T P\CYBDF*NV/\'_E6949*]+GY$5?Y)!DI)H#X#G_\K7QRC*&QF1D_Z2
-MK-> F8J%D);Q'_VEE?K9O%:8&YI)5KB-A0?AC%(>#[J4B[\'?B7G_K &B'IV
-MCO^)2E^ @)<-#\\6#_V3A5>WFX^A@@K9,G;"QL< K:1!V8!K'(X+5=O"=+OS
-MH(,D*A*>VTY%WHY#=EDN>O?'1U^^;F*NGH*27Y,##-;:YL';U(:JB:Z>8;NF
-M6H,%W_7&;?7+/46%<W^5DH.BI8^[ ,/0'\;-_D;9NJP5 \I;HRI"LG*K!+K\
-M_C#FSO_\E)&_MT)WT>?A'"R3HZET^5A:P=/1,FV^)HV4$_N0498:AEZ[ -_/
-M5)G3L;L^BKSS88Y"X/'U.I/*M@U:N9">;J^FGI8E&_C6NO.HILOZO&M?FC-5
-MV3(YY^X01^[SK$J=!8G"YI"NHLG'F^_#9):EMDQ,DNU/B=8)Z4/$M!7WPJVR
-M50#YIAF(L"9?D:WFA /+Y!0*X<<+...@U7FY22>Q%CEM?&UO$,7%&^M%6!
-MG\>$VMF*IE2--[VR?R4BPUO%^O%X"99]E$M?@.6?D2</(_B>5G.-AHJ8^VQ0
-M7<K^M3N7ZSA!GBGW6FJ8 I^_\Q*?Y=(@Q[I@@_N3EZ2E:LGW[N^2[O>>ME_N
-M#+B>AK&;BHV!PF+*U6##(E_?CK8,FH ,B^$SW<0[^B*]AY2?J9?A4J&[L'KL
-MR,7>"IWK#\ 3_=V9BYJMJ+HDG@$,T^]%Q"V!!)&$7()169/"S<'<CD&"E[*U
-M@Y/WZODRNM7A%'61N3!"O%<%CB_13\/0293[O9:1DJL2D)O!^_#&=$/0BIKA
-MEH)+GIVE8.SAQK;VTXBUX+N:AIY2\(WA\L4V)&7W[9:9I,^21+NAE8#! <W+
-MR\4#CX99C$=_H8]D4OO8P!$V=F3FKY:<H(.4*HJ">)JMH,PJR\\L>\KE@K*$
-M@5)T&)I[P:.:TQ(5-G_&0LQ3HX6 4)&3"/S;$I!#@XS>>(.)4M E)=6WXYR*
-MEGV@LH*;I%!!TRK8\)^F"H5;D8J;(96MR?1UY/?:TYF7N)_<XH10E17!G\3>
-MWI>3FKB_J@-<HH>ZT71#'^?@T*V&5D"/JI3M:;  P0S(^L;#X&.7JE6/GKZ/
-M@(:?P?26P_9&P4N>4+^*#H?ZD:.0%PC,! ZAR@ 3DX^>K)M 4J]6GZ /^O/V
-M.3:PYO.H@%.KA$486/+LI=1<@%3[7Y2<"MLRPV7%]_,^4%)=GIU6"JF06\T-
-M#PF*,9H1E*$;BZQ?MMCQG.(4PM"+5*!2O(M.EDJ<Q?[QMO"O2]ZTCHJ-<K^;
-M3O#Q]/HW[Z7&PKJ*;HXAF:!0NMC85DG6UO9M<)S."JR)BH*7_:7^^78^&L_9
-MBO^5?$>"DZ&X3'?A_ QH!0!'(/!JB!U1G)Q-B:+C\ET"\<;2+CJ"E%.PAW"5
-M4=D,FU#<D'HPW9.0]H+AT#SV<C7+A)WR?9.DB[*L5*OWR<+@JM(?K)!QEJLR
-M)CJDP-2]^AO&IY 5F9Q(F/#SK-%3YS ZCHJV:X-04P;PFT#90<7R->X/5*6T
-M#8Z27T*XE[[PK 7+RL#VAU*\3)F8')"-@Y'!/OGOWO?;"TVY&[J7ARIRN81:
-M\<)X#_<.R/,0@[W;U5)467*9MG>(\L(_=L9LRIR@4A]SH1Z[UW\+W/J:?[6.
-ML]AW2?#Y,&VZ(P_TD%Z>4;Q=HIY2IR/"REQ8E 67D2B7@H[[Q/"X[^P/ <NR
-M>9]9Z]9:HZH(\>TN=]"'1H""C#EWWE^=\=0UTI[%RSR&7XJ^ED]!K:?]0OX7
-MKU#2T[Z/A(R-E<'.K#.;P<8TTG_V0XN\+=-R%ZN:2+FWCLTNP$/FT0E9&(]2
-M//]9A$M:LX >J5%V=M#&/?-1G,I1FK=6N<E]\73ZH+.NI\F FPT[]-+ Q].$
-M7+"+$K*WO:V'D.3)[T.<5J&QGGB:&SO0@\S"%2[&YM6(G[AYDXF65;6J!3YM
-M;E?Q1M7 5MHA3Z:12O'"=:YVQ_"GL+B$&9QADVP0G5D-R,K0)[1.E(^*1)J/
-M"K:#DPC -67$[\%O1(;UJEQGRX*CIK;'S\ #X\K8@0"]5YU0J ^3VY.CMYJ"
-MUM' ^G+RO9F4?(^3^?[G@L<6>C6'G5I!5[\"D\7^^NY#KX@:BY^7?%OB6Z[#
-MZ?'2F8"3L3.U*[JBECW!\CTT, /SBY1IB+OHG[6CC.'HN7I'PU.7K!VIJKJ6
-M&XAQ/F4N-B^BCH^$;Y<&K<J#E(*HU<+YU/+B@TZ<%JVOGTFQEED+5#30$L+ 
-MJ)Z9B5FGB8.*H%JZV-7$%O?-X2#ATU+\TZFT2+N?E*!9Q=:1998^5[BCM'S[
-MEX)=T.G#8%Y9B_$ 25I=TKXUY??0Z5JF\K^5@1NWXD:1<2:NV*I<BJV.6YC3
-M(!!ZXQ9D\\6EV;E2(#<9NUB;F+Y%U^S /@%KT&2]5Y.KCY%NB]+Q[J3GUHE&
-MAI6,CY:)@98/"_XOSNX+Y9EPL,^^G<N[:)N2\\?T^CIF#ZBL7+-<6HBIM@2:
-M6?5*V,H&S7 E,9*5D7#XEH=7BB2D+XORPS?%TE*<P+*-=9&H6MD'YS6LD92$
-MI;>6?\7SD6;[Y!":4!N'5G*[\V.:.O$,HM@=MD)=#E22/S.F6^SB)I7$ ])3
-MIG8:NDN^5]N I?GTY]7.FTYIBH*ZK]I1K@$[V<)\\(]6CKR$35:@BW+:G2<O
-MW:_FTO*'@%1@ UWOOK:>@R$4U. GQ\4->[]? 92H_'.P^[O9E"3+WHO.PYQK
-MCOV+0O"/0)1$%[+9$\?RYD?%D$8Z7[I:B=U1S5MCN)P6$0Z0F%D)-I:7]\?3
-M4 GV!+2GGD%[^IO%6T"XG!"0F-*AGYNL%(](\OEV^O#QB+>@]U:*N[6AOZ72
-M[?+P(UE7H]JJHY8.L4A),_F<;_ EEH!5OX3&#;FJEHC%',.MXL/@#)*0BA:.
-MB.<$%;K!,OGS[>3@J\:>TI9:1PY>P!J7Y-P(RZ-LV"K*JYR0DJJ$O7J P9>.
-MPQ?5%I ;TIV<DY%671JI(7]3QAJ 4ERP4XJH\M 4[^QECTQ5@8R;EQNXQ/0>
-MYU= R963]@N7HI@(C9Y;"7)SMO)G$X*&:%**B9^;\IWQXN;WWHZ-!;2)JNC6
-M7LF^S4;9DG?'Q93[A+A'CX3=D)Q=]ZW[^\O;V,LGN8QO7@RY1I(:P))DU_IR
-M(HJN_("\>X?,!I+/LN,N@B[-)A7%&$M>'1.X6J/6B:!&D0#4Q/)WQN*:B_1P
-MD[V ?<C=<-".DK*OSI666MBQHWKB['*?G)!-4)./D0"&%U?# L.:E%^MAA4K
-MKJV/V=*@)+3$)L@:EJQ?@Y%>#:,JP/@S]/KQ@YQ""XZ_D@25B $PT\8[N@-?
-M#X0MZ:QKBHQ06Q"MUML&91S+'EJ6N8:!*/F@34EVDW#]\$.0J$]1@9I-NH*@
-MMZCR^"7XQUK,"=P+G)Z?FE)/FKJ4#IB-9BWV<,;;C8B4G:6XBDLM"\#PK)A0
-M_5H0BJ_"UCC%U_ JE%!2G06(EH,YM@O"S*%(N9+VG7I4FY>0_'TAD#E_K/#P
-MB90P]H*2JY>PBLFS__[Z 6C5D%,,Z*Y-_UWCT#<DQG:G1S!&O$^[JXJVCYKL
-MU.[;"@$RCU:L%(6^/-MHL%W-H)2T^K9 O:Q<@1/T4+(6(YZ!$-;!Q>&KYD73
-MJI9%0/.0XWA!DYY;R3YE0.7P;QVRGZF>5[J[H-3C$E7;HK&%L0F2\?/Q-,?N
-M(WR1@@2_BOY"L8::V,\3W!Q"DZ^VM?Z7;9*- .1NGA #58>GI9M2NJR_B('#
-MLC'",@Z'!).HJB\.<I\&VL;P]CHV&J=:D(1/.D"'I9Y7)6P.QN;;"Y=&O>R7
-MV!SM+*.+"6HV_OIGR*M5EO%\58$2L'&&\\T&2_B>RZK0UBZ]E)6"<^*YGZ/:
-MU^U:]3OG^O#V$%*1L%T,B]'GSUR<B=(]!H"IFP#QUIOP1D,L7)^I5E.<PY /
-ME\?$Y;P4]E'XAEE:0Y6F5\/3T<3&YMA*L' 74=*(3)]$(S[W1_?&DU7P6IQM
-MC%>_3<OT$>[&-<=I4JWD5U(^NTF2".??Q-+&"Q:&DEF "XP\KV*F+J3T$[::
-M_XZ;F']S4Y>'VJ+$&JL"_ XNGZY$616KMGU1NEJ'6Y&Z5C+I%/UL[=?%G$0*
-MN0*WEGT)Q\K2>KV277"4]I-8PA4ZE?#!F%R*!5Y:^;JSE9+Q:MK2>H/#A1)1
-MGJMSVYC@UM3WE>O2ZHZ&?5I.G)>*U 7B(;/WPQ+>EOLL1X20DHK5-/<0Q_6#
-M0U^:'8EX54^X#JK V [97=#CAJ6%K<>6A(ZRE;L)T[5G\I?/;P9=1TF/AU>!
-MZ9HNR<Y$'L?.1QC6$KV=49+VNY.BIG!ZY3/5-_;FVI&!@E'.G)?VRN-K'93Q
-MHH^6M(/+#,?T\O?UXWB1D%:7L(NO(*#[0-=8^(RR6M7P?)N IEJ*T_K\_A+R
-MXZ:,IGM3K5(:(XP X$7V)@.-4'OXF@*&GE^/R/+<T,; #X-&'8R\KJS'@$R?
-M0,[:"8X',HE0>$6"K^N1:Z>7!Q?X\#?FP+Z'G0*65)N2GF2%J2M7I?[AQB '
-MT(N_E4>!UHN<5&P.JT7R]=1VQEE_L)*0M)T"J,G/S\FL5H.KEI=>@UE@/<;V
-M/?*ZW+:[%KB3GK*EPP'7X?+-]A>%D%CV43&&J,WJ9?;@A1F]F[@;GD::G8ML
-M*_+1=&X'1T>LF)SHBY;W3@$Z.6YL^M->E:J*!U85 H'R&>=<7Z[%V\F_.DQI
-MIIV@NJ)6JT$2./9O_\$8G@U2G) ]6):X6A+2UMG>%P++!UF;A%5?VYY#4O.Z
-M<\CQ:]TZ-<6@G)&*D1!='Y"ASL_9C ATD9?*G$K2P^SV_N7/3%V?J=9Y@]? 
-M!G_73-+3N+*"&9ZE+'JEA<T(MC/V;-/0D(26>ZA-4I:U;Z$R=Q?V]6J'N9C<
-MZ+Z2M^@-/I-MT/  E9)5NHZH@6\QAIW"Q./+']K2;R943H.$K>BB\JTC$#D_
-M\!S0SUW957X4J[*D@[Y_R-P)[*[@VB-\J5/XDX.SN]X"I)"MQT/4_O?6Z8Q3
-MHE%44=+:K-<BL[Z5H8GVI5:_9;)$Y?#UJK2V4+6.0:J*NM^K5^WWT<V]E'2@
-M=SB=LI+;"?'1[__7Y$.TH!BJ1XV5H6C*Q#SF9 $;MZ9;0YNN%9"N63/VPMP_
-MS^?<E81KG$]2D93ZY_^J[L88F9:%F [I$H&(X/2#&O0YVO+6&5&N>;6Z  ^;
-MA+NZW1/([LW-RQG.\%*6BX,;GDG;IL9[^/$ALSW&U"N9F9/=I%U"NPCI(UC>
-M48N;7H"SO>4[_7?UDLGUB]&XMZ%;EY.6@P&G )V:0Y.Q59T\_\RSFP%ST_)E
-M\<CGOF.8B8*(4E6]QU PE#;.D7P,K8."AJ>#C /:-L6WX.."@'G7KI+ BX",
-MFLSX3\L*Q9!6E=1$KI>6CY!5U\S!Y<?OE LOOE:0NYN??X.(=;KU#8NN5L5(
-M$/"G4MRE7@Y3EH.2)AM1(_27IB:O6HF>5=(2JXN':PG84 AP3J>CFHL(^$;&
-M\C?#JE!6GYY4FEV61I+' H_66;#R?K:'6+> 6J\:LA5C^HM<"_6!LZ^;4X0C
-MB$?4_3?&PTMT>;JQ@UZ$E6##&?4P1/7;;)J4O[_?E)CCI%L1#=7'Q8;#IIN$
-M3[^2Y4+TA*T2P?<^)O3@ZXI<EH*,6(**.86MR<?H?!\"JP$PN_Y\HZR2IU:D
-MDJ.*X-H^T,?5\U6EH)B6W2G_0=DG4!Q<>XF>I(R/YS(UY+87RT68MI5=E*Q7
-M(@>7VR[%T/^8"%&'L/J-<?Z0\)[9UL:+%+F:*_M6J8I?GVWA,,305$K97[&J
-MMA.86Y.8<,+Q_AXVRYOV>+X+/IF92'2#VLK,KMZ&XF=2>H@K7)2[K 1RQ?'X
-MEC;FUIB?KX,JL(M;@Z*'LM#/CM6D^(;W%9F&2U+YUDV1ED9VNLSKPS3F+\&.
-M>8&KDD=<DME/$Y!<W!^NL)W>%L+T%4:4&EM,$;"LFG>JML/:4JT6FM9$</:(
-MII&<6VV>$]'RY.^4Y00(IJ"^PKT.FO&,T>/V]"V+CU1$$IN+KI"S# 7"N?6V
-MQ>MC_ZH 3WJ=I\:602WIK]/D%3"?DGQ=AHZ!DJ&CF-,ZQ;XP_M%;ADR;?_6K
-M?'"MI:USR"G"].K/$-./1[N_'%YK6C',E?M0QN[OU_(%VI3:*[1Q4X[RZ>[B
-M5*9^%9:UFYW2Q_7UQO IO("2N0Z=D_JPE9C WV<3K)!#_)JAOY]YEMVCWZ;F
-M+L71K5QL&ZQJAK*#C 'ZYQR5STN3H?F<4586GT_-:M70%O!O8Q603+\?C*JJ
-MI9T'#%:/HDE)C(#>GED83>CL\'BLPN3NX!?S*[Z$WH*F3Q.2<!:7<J?[^"'!
-M3$,9@IZ=L4X0C8BRH]Z6@4/\MO?TQXV5PEV;AZYR]</PT-ISLX6.W(KRS.O&
-MQL3NYQQ5DK%5BUR7B8:#\-3&X?V6>XV BJH3>'V[V> W[^"@L*M^38JV@HR&
-MNVX#(/GNP$J16F#Y%XJ2!?>H:2OOT#+WTX-7C<>4KJMCK R*\:K*P];C8[VF
-M6 X-%X^*DH _ NH6U>WTR(LMT/Z)VAL^TB"6B<KJ4=C*R<'C$.>=OI.)I8:9
-M@L1=^\$R/7IO]<-\G9"TMEN86]DNV=.*%IH<CXB*5R,>QSKZ]\J01J)?D@F0
-M6))T/5+,DM.0$8+1D+"N V2=_P+[T[)R=1B1 L#RB^N(59=4H.@QYK_"AS>B
-M?9&0KYH>G!?B%^*2?F#,C8_J W_I&R:P$<*E[<D+Y0&LDIX<#Y(&NVB.N0'V
-M1S?Z- ="GI&+?D!)O)YPG9UAS^+6!<WF -&*B%5+R:?/6[.@HMC#?GGN,_HE
-M5IRABW6T^(T!#)M(U(F#D9NPJ8K'^[$P\L0*L%&CE(Y(LZNBCD&B^0K07)G(
-MD5N1/IC@CIWQDFZV,L$0'79QCZO2EG65E%GKP?J=X.MR:8-WA[.?G[S'%G$>
-M%_#O1I>:ODJ/ZT.P7LC,R@?-QX'(3IK_@9=.!K]RC%<(V]#N$!;8BY[YFHB&
-MCUJ6@96"P7O(^ \LXLO<@YJ1"UF^N)A2E/?(A]'YOM3  Y94!E%/H4@KX0TC
-MT(1P&Y>GD9HW -IQ7;;USY"]QIR6IX.-X(Z= </RW%_XD%^FFO!S2/92V-)U
-MY-7S0^^'L)VP3;[V IS-(MC:X*%?5Z&8F@](5A4:T_&6P/[OVU[>A;P"G)2O
-M[%N.Q^#_PJ8O-H:<4%I&G8N1D9I:@= XTF_CKX->3_6(EHV\2JR"$T'-^L;5
-MC?WVT+J840JZD(M6M()<G\"2Y,0L\,]<LY.KC).?BL<<VQ@:<K94DHE277.4
-M)<>UQ(ZL2[)=,+*6'X"& _#I"Q2. %I\D%68?H2RJ0L1T?+T$P6KA:CWDI*>
-MII]%Q](M$"[0C0Q&0/['DK2#G\%'Y3X]Q^,7MJ@4/ZBLK6&V>U<(B"^FVS.$
-MAH?J8ZA,K3OUK]G@Y/#&\\6G_Y% B'*)O]1Z6H''SX'^]<O)@I!+_8V? \YJ
-MF=*& YK*_D=O[OY1O%!9Q0:]NZ_MS,,8'YFSF08)EE;$XI#_[^_*C!BB'T"(
-M@_JDHE,DJ<?@A:!(E)>+D_VFFYG8_N3P^E#T1O1IU[X"ND>C@$4S_+OVVH>U
-MXY[3BQX 'T G,?47UFW/2IO<*K]?A1-CFJJ,WBP'"_<&;7/<0%^>B4U@5A[)
-M\NSN-!6+1IZ=I5P-DQ>3H)9:T=?1B@-(SZ#82U?&LX);N=**IDZ;"_'&\';&
-MXXQ06%GV,WK3$1OG9*P)F]N.LIN1"./!Q9RO@WI1BHFPE5N=I-)=HL[/_/C$
-M6[L[O8._AA!;P?8U0'I+T(JCN+=.BYR7EH_8]O7WE@J-H&:MFHJ65;F(6O[U
-M\\ Z@TN2#(^.NJE;8I>KR43>:J;!\+RP4+Y)&(BGN [?J3XU-A>_Q4=2/XB,
-M=^=ZM$ST7XF*PX_&_ UHMKT&&=^*H(NHGG@Z_0+^]1?R^\5Z%KY-W],+DY3/
-M S#PHB>_D+WR^('^D>_5^J*NB))7WD=1O6CZ6]%6\+"<5IZ$GI>:F7*,DW/S
-MQ??T"QJ#L*"7'+Z^$A*: >IC-C6/29JCKU*K>A^_#=GJ]/R7^L&NDYVD%H05
-MAK):__&<)L?.PSWK\M =[JZMN+0SP?#J-5;OML-M4O%3"E^'FIJMDD$BU C%
-MP8H&V)S+AGRW2A>(TEZB(%OPP!;S[M;S58JAV[^:EAC'"0#T79A4K*>8BYK+
-M%]$[Q"_:SJ12J96QPIV0IH,!"]+5N""^3;!WJ'.0OAK"PN;U_\'UDI1YF=FY
-MAEI2O?'#[)?UJ(]5B8NH:XVF%U>E])4W]9#6CZ:N0%=/BYMAMYL9'&J?  -<
-M+I *AXJX.(>)FY<'ZZ?V9=9;0*H\@9*.KZR2B*>+">?ZU<O=_=,6DY>%FHQ0
-M1T&ADE99PO/%]O#OQ5WP\YV5H(F+3=:+T*XFIE:PB8*;UQ*Y]E+"P]B($H5>
-M49&6LZ6:V2*G$*V(>JV.09Z7.:98@ROU+I9@N!J4<(-8 U*@!60!=BSF7/*+
-MCY)?GXK'UK-4*O"T]I;"!6Z"4*"6G;M'9AJ2S=0/I\(/%D.D4*'MDI6=N<93
-MQ5/%9A# (T\8N=L7NDFH6$&F%P<ER>%-Z0?2X+NTE9=\E>J6'I&FCLW1F6^S
-ME<60 =Z[>Z$[KZ4O"^*=\9:Q3X"I\\>7K3O_XZ-\]9)$CXF9F, 2G\<J\\J-
-MF9N;59";DHV/BM+Y]M70PQAG,[JXBX^:1I.Z4MY$UCI+BU @D))*QI75G,4A
-M[/+6T_"OLYFFO9QIA[!T@<= _@O@]>);LCK$/Q.!2T1<&(4QX360\L,3>M"R
-M@CY;GEN#IMW:ROO)SH[/#QQ(NE25>M6MJHN$EEW1/_-6=??U,-&>O+>ABIBG
-MZW$6K:#TGYR;LZB+-.4ZQC#:G)&+M?>%*[V0EOO%*2/$MY")GMJ!@A. A(/R
-MDF,0/\-\!HV1NYY)G97Q3Y3S^282TT=>K)#9FQ)'H63GTC,MVC6#OW6/@#^:
-MKX:MI%T@S.OXI^O9GM;<@+R]C[EQE[O8P^_OEL0C:IV5<+H7B;P*\;N6J1_J
-M(<'\V-#2$8B5WU>:A_H$B 6KZ,8]9,(@!JS3TDWZ08B3]^WBR"P4M!%SO2Q0
-MA,&NE$3T0X:&E'VWE9N#+)JK$1:#M 6)LE$UF7N9H)X;%R&6E!;&@&N4@8F:
-M2UN6B1_TNO<P+@/KEI#76&^;EI%/DQH4\,;WSP_%EZ6OF$;GIH^-Q<W."^*F
-MP#^;G%Q#4X:JK)*[V.0U+KV:T+^+JX,*%KJ<@J0.5V=. ZTI%=+(T+L?C?*;
-MMXLKHG026/%^9;)O]?$5N! \NEF\4O/,T-C0DM+Y5 #\N<J:_2_NX,]*4%.>
-MSCU<J^964LU,\4O<I9Z\HL=<F\!7@NKQE;OT2/"(M*C[JAJJDX%HB2*8X.[+
-MB+7&NM:]FY953AEC\QHPU\]'!K1!G[)!1R:/@M? _LK*6O0=CE#4C4^DBKF0
-MKT'"93:5W_5JAE6@FB>*BG)F#]C@Q>G5)13&6I@MDCB+4E9KB9[$%K^D\!4T
-M[^[;K8G0_Y^+6E;"J\CV#K":3Z>=NIU9Z92=Q^?3GI2"_Y.77)J$6Y;RS.MV
-MFL(>7798GY.2&A+Q'A57_=L<0TR1MWA1BA_U"%KK[/)W]0*0X!."$UYPM1?-
-M/G=_D[8(CUZ5A8^&(<OT%$U-R@;FQ,L0G5803!::&X>"6C,G$>7&KC_*BH:'
-M7UNPI[^!N :3)R@.#5O^ ]/:;IP1@]*7C9Z*%K*JP4/5PK_R2OF06(6GL0A[
-MV=RFP >SM_R7\I^>S)3PM,/Z!U"<@A=V"-8^AIV=!P?1T)V4HE[7BU:;DEH"
-MK<)=[O;ST%*WJ9N#BYV6%I7!X_7"Y?*Y7J)/FAJ:%E/, >O8Q+9F\(:4G&I&
-MF)6[8J:HP0Q;JM/8MKR7W#J$GJM'*'>3V1+T]C(]RI"7\9:;WI]\AJR2W>#8
-M^OU]H?S@LD?&3IL;E>JX4FQPENTT-L+ TJ_?D8H9)Z"\5PC9(\AZ?(BQE[&2
-MS\?#Y/?^T@,8 A1%I$%1OV*6"P#/!T!0HE.56MW0EVN2J*O T^Y<(,;K@G97
-M"(Z%NY'4S/[Q\'+5:I21^KI-\M6_GA+Z/3HMW]O,EE&6')Y%HK/RE\'L*BJ&
-M!M"$DE6^KI3)BR@6T2U[P/8Z98.KN$6;NI"(VE) WDNIB,+9A0C5UIFZE[E*
-MJEN1G%XYH$O#TM5V]G;%>%'0798!G)W-'</6_-CZ1(_1G%="X)V0\/?'N 1#
-MC0215LJ@D@$,UP+<7_R4G0^<]ZFXD!O9:O3%]@700W)XFO:[1_:BE,WS\Q#&
-MXZ:>QI\>V964H00@W_FTY'K5*_(?JN:H7**@!A?IS!:BQ=L"2?::J)>MZ(MR
-M#IUG(F;W_O# BX>;=9.?BU*@H%6K(-H)[_VEQRL=AP91(+>&N79TLH";HK[A
-M$FXVQK_VFX]=^JZ:PO\*\)R AA4 F9J8\>N\IK)VQ;VCDA:TD9Q2N(:1 N/#
-M4 Z)EHR0D+N2K*66]2K\P,9W,>MZ(?U*(INB%U;%\#44]?=G5[.8DK\&M!&^
-M#>0D\,*5T4Z"7$:6KCMM8K>)S?W-^\#Q&8V">D6'GY:)1HW= 1_G]?#RU[FN
-M78-)WYJ*0:J=@UC7_>/FT<5Q%8*>F;$K@H"HTJQ$>2#VI47VQMM>M*0/IJ.8
-M*/3=SQ:&@YJ<IYU#JP#IO/;N+]%<"9Z1#IJZDT!/F?,/ -':=I:K=E*[JY'5
-M_=JPX] RV.'-5:F+":E2%["<2,/M[>6BO0Q+G8))O9!)C,EF;/_0+@,/G'R 
-M#U26BY!7J\D$#GKF"/!K^@F-@HY.CXR2J43B+:X_YMJ;#OOREY)3@GFH4K\3
-M1@A/H^WD#U 1!D55^I;+^I>J7 O!8I'PD._"G* 0O*"!%HW XM4!FD1>6Z;Q
-M"I;@\M,[];73K%Q2E92UU[C#GI= XM=26=626X:7EBMH% +$\JTOQ\]@2\Y 
-M@U:Y<B>*A'7T.7KWRZJ"D-J_J[A/N^A->O'R_^80FUN:3;]=AVMX-YWBP /]
-MS@=85W!'VF^2JT*UTYO1J_3FT.[#F;Y<GX)$BXN&E(QWYPY(F OL2\;9JXZ&
-MGM.5F2N1D)H+Q=OC^\8PSTV07EVUE5 3Z,=!.86(@?Z0M7*[+>(PQ;XN"IA2
-M5X7>24^#%G+3;4.*T:YPGY25VSP3D->71;+Q5^[WM9%-H)V)J)>4$HS:_I]C
-MNJ*(MKFM>HO4!E>J(7+W]_ MTVUVGDPKC^ZHL)+9V> "3M6C_"SWKX6<GLUK
-MC*2 X.#%Q?_G\JJJ&UNJ59EVNF.2$V<#T>YFK>?3?(N8C0.3LZM:E\V>@0'J
-M)??V/\&LG8N=\I6+J./6H^&:&G>1I:"<2?"2/-O\-:*=^9N7E?%#D+"D<07N
-MRKV/\%*17Z*_VQ.DB<$SQ?7NVKA+Q+B95XF+FGKHQ\'DE/(9CX.ICUA"KK8C
-M3?' +49Z-\_IU9B7GJV=4,Q$4M$.7<:@RM#I\XQJC)Y!ASH0D/74\6_T5@#-
-ME@R0EO9'7%[ML''7'XS4SP?.R]P2O+Z_6H^0B_)%H!K!,M$DYL9SL*9SKJ*<
-M@EK9+L_2F*6DD4^(D'?:^\7_]AK2D-&1UI8=KJB27@M"R0\3D!" O->Q6DZL
-ME9#E$,26->7<0X^20MB=DK>5@,$[Y3SB\=M:H%NN&HX/T6_!(L7LXL78O5;8
-M:IRN52ZCEXT91BO2PDK 3XQTN&;8:TV$DI>@T#-WX'[KH+8\HQF46()RNJ"!
-M(OY*5'/.W=,9F:Z<GJA0JKX&8))8Q61&MB;6VPJQ@IR0H2J6X.KC^= AFMF0
-M"99#R,(YT^8TT1B<H822O2I:A+Y9(,L/&$:AFB[40)"_EAHO0))GM<?+/(J0
-M@YUP[HB.4KV*V_#V/]B/L*!!@@F?FZ,,!: S-CS?PJS.D.^+O+T"I*.NS0XH
-M+20;-FV6KJB=JI;MN::2T3/_U//UP1J(]($)E8?VLY!R\\6=Y/PCYM,!W!.;
-MM45_I;TIEH!5V\'PT2[:U<.<EG2/I/-3F\$- 0NP0)J=EZ. FT,2]/.>-LZ$
-M4)(/CX&;DL96F,GNPL*<<)96I(N<@XB:LO%!\S!PH^/I<BF#6;FX-G*MHS/O
-M8#Z NIIB%ZK'AK!RP=?F8;Z2-^-?)J^_OH1I2J8.OL,5RY+2!0B_%9V$A:R)
-M;VQ& 4+B,\(Z-$M*FE%)<YSMU[Z[AIO1"%O/WPW*$1ROOK"ABI>)7$K I[O2
-M\>?F.ONGGK'Z60Y2EBOR_=OV1%V9C564^YCQ/I-L[_+E&G84B82WN=BD=DD@
-M_V$9MYF@D9!(KO/LG9G3^O<7\-+8O5"6FI 14@^A@%?JXS0VQ5L2,!B+BX[-
-MF^H$H#6>=+_1HY><K^MSB4E"EG_$_&^I]YOSAZ2MNA;>3L:F5?]W*?4T,/)5
-MBY^<W[Q5D)*2E)J"Q0/,'L&!4 $<K9:>H+RD77N*99;;]U+Q/\)F05V04OM6
-METH#<1_BT*QSOCETBHB95/(_+<?OTU_2GIW_@0.:EK?8\<W&W*Q<0XU6 :F)
-M>%>ND_:3;98NP(B0; .6AX8.E6K \FT2F\>-VB)9OEKVG_-/V2O=</K^VQZ/
-MKX_#1<21N]!;!]_+SPS:P+U%D)V^ADGO89:NRQ/6ND#RCX^&'O%ZAA*6H;F@
-MN5';S>SKS1;PT$J65+&[UXC8-F $L^/ T382?O<1HG.$VHFYJLU5P)/PN &.
-MHHF[E]?@\S9WUBB_\:&,FIJIBX1/@N<"Y^9QMH']3I"#BZ!U_R$T]/3T"[KA
-M%K2HF@]<%E* \3.^O^ZECHWJ';Z/3%"BC,? $<;0.^^/^Y 45X:,BX+V?X*,
-MW<MV<+*I&JR(3;B/4J8-NXS0+/7R%L6KO):R@@QK2Z.V=9=0S\JGU_3GVHF/
-M%?]!>G>G6IZ!U[OE:NV2/\3SN!9>D160K_+'R06VNI22C5JPK B0]C7Z1BWQ
-M7()1E9J=6HNCFXT!*:+03(N"GIX+ JJC@AKBU/;P$",=B(YHJXY+%M!:[<UV
-MQS0ORKJ.]EW#B(Z<BJC4ZM:E_CKE1)*5OXFH1SNL1G[ P ;+WM4QEQI>K):2
-MEL<R6BMAZC%N__1!2)W0]SITJI(DL)!:Q(6" \'PR.+"BYY^VWOSJ*B2H-N8
-M\]+F]/;F![F06@V6 2G?V>MG\)ZVDX2?@:P;"NK%.I 6H)Q1WD5P4)Q2H8X>
-MS)=:V'C1B=NR@JZQ0GI0S+XS\G6"P >-AEFKDQ*[BTV'QF3:)?%*C(/6GDN=
-MFZ*J ;8U]D?]PHL<3(ZZED[(NI6;"_XDCJJBP+_RE^B&V@\8C)"=Q_@CYC[N
-M]9"%K8LN% ?8IA*;^QC_^X7ABNP"W)"RG;>H6X;\HI"5@2VZ.?(^Y<,XEE&M
-M%9.[FP/<X3AXIEX-I+DLRMCJ_=/>N@&ZT%HOQYD!MV0V^/#7+O9<FY&4CADJ
-MGZ*&.-C 1/9FE4!'$*!6FDV6D!*_P/3FWAK!DIZ[@;KC7Z6@[?#^?M8P.J.#
-M&O !B:Q/0Y'/EL6GPJK$$^.C!OHD1UR>X:RP6Q#[[N;^Q *##;MPRHVK6%XP
-MF@#%UE/8)*?'8LJ^G%\7KJ1I4X:1AX$8XJ7@Q#OI3,A4C57'FI,- J;;_!"0
-M60Z0JACA\]GZ]M3GO9"D?("<@ZKZ%OKM5\_2?("AE9 R^KFJM .A-,7#UB7B
-M2)NZ31Z/-_>:J$'D-23T[PEWH9BJJRV:7Q35&^3&E^0E"Z>,+87[C4*Z5(,,
-MK=XK<-7#R49T'XNV2X*FCE$'JF;?[C):F[N,OUIP;59ZP9>KR<;,!B+\Q,=<
-M"IA4F(.#AWBR;!>JJ_ XWZ;7Q;"<@IVD5593 PD#U$VR$:N'H)K=(S"54!1N
-MQ5!86ZZFMY:=MD_;JL<.T?"=FKR:7((?N+1+F5[_,'SW$YBV8%J".T9026WI
-MH^$Z>^.^CFS_.:J*596'IU*DEM?6$T^>!YQC$@NGH8>!Z-08$*#SR%>PA:V/
-MDCT0K'>3K7+]DN7:6MB:FUESEHBI@:!5NVW.B>W%H^Q/T%L%K5-6&[F:6X:0
-M@O' W3::-H5478!^WH&J+<S+<>*8A%X9T-&\JJ/@K^PO[:,069^$L)B:F*Q>
-MC\K^T]!5DYI>H#JZEX12 LS2]_8Z\4F+7L"=6@<8'E&@Q\(LYC +'09@*1R2
-MK'*!C>7BPSKW^H-.A(Q #_/4CV9P@PU*WLVD KF]=XQ<NJBNBH /DP/P+S#2
-M)?"YE)^1J$^OFM;B%[_!3AN#S\G#PO";G#M:OI2K_).@?E- N_SWMA)5?!.!
-M^;>3<@-8S2_8>;.$_L6Q6_?2T.:>K^*O&IB__:>12X"TOEOQ).,6?%Q^<5>C
-MDK*H5?D!:CCR;N\)J*2R2(I'#Y9;:8$[[Q83PPZ4HE>8ZU_:4I3Q,F,7[L8.
-MAHV%B):614B)A/W9;=P3%//61*2^9):8'8,0C'_Q-.46O_+SF7WPO_Z&9PR6
-M ]:6R2I*0D #R-%(0*^K6UP&N1ASN8: ]^JW__K^VY A\=M/BY.1QRGER860
-M7MG0I_:RP2?0Y"W^6W1UD9V6O+N#;(9]P<["]@76@IV$G4(]9D^[P>IA?/ C
-MX(UR$*]8F[B6\Y[G="SR%LB-3<(8O&>65A*=PI3S\CO\SKSP_8F.F$Z'HG("
-MT.[5JN:%,=M:_966CJ&HP)1"R/NWFB?VXZJ'NXM1DY.HOZ.EW<W&!/X&%,_O
-M0^BKJ5^[@[_6MJ)WC==QTQ64]@](N*&U-\FIJ^?>Y3:'HIJM59CREL5CQ)?N
-M7MN_TDCU7GV[JVP=FUEM"K&45E:^TYM+K4V'GMC W3[LP\/33I+]N+N:GXM*
-M SN1=CZHQK!EEUI*KE:39=#P-.73]LJ]3ZZ<3XZ.K:"ET(G7SML&T]2)IH>H
-MCJZ$CSN5D.&^\3+^NE#JTASW2).#KHIBFIK3!D0J5E<@Q0(-=;&0ED>/FYZA
-MDE:%:L?[PO 'G?&>O5>0@%L%!.;TCYVSGU^QGY,#DC<Z\O?JREV>#+"36O"@
-MDED SLO ?).CD:#;7A*@O\[8_G3GT,+0BP8H JR+3I:"E=L1EO7NPRV"QKE;
-MYUZF][P#.>3V=KJNPH)=ED/ZO*N@]EO8P.3;QJ7F@O)4!<^:%0^@3Y/9]#U@
-MD/3/.OZM T)VK;NTHG"_5]9N_E_+'O4UB)(M17H?DYH>.(9; JK%]A_URM")
-MBM264H.#B2T3$(:F<E\$MUAWS6J19N3^3Y741KL2\PF/P\V7 ,;8X)>%BKZ'
-MHYF2@#Z!*.OQ__I;%+B6LZL3@+)5RHSM-J>2]>**E[9[">^:]G^)V>/T\F7N
-M2U6$/*!/LCG2HO;ZQRC6V=?G4;[PD."?%ZVHNH12Q,&4\#I5V,J'A9KYE]^6
-M\[.5MPU/RM@/S=8OL:K&N5<>#FE<@B3V4QC$8^03VJ7X4G =\)&V2QLK!]3\
-MDY^1%@B)F23R+/ RY$&$F(K56A=676J:$N<O"[6_]H"%7[""7:(0=W+ 9?_"
-M#OBM=J"3@HNL1A.*"_+FQM #B(^LFUF3_I9>A@'_^2SO]MOKIIJ8F:[4DWB/
-MN<D?S?D=XM:I<#V.:9Y$CRR^UUGJ_3Y%U\J2J+F8BX[B\X&F=+KJQDC^5]A)
-M"[60GZ\@KY0/DK(@D(C8^_3&NO:JJGA*?5YPFI_!%W'T3_6259YYJ9O1_L7_
-M[GI#CI8@A:/8NI-@%9T#SP,9OA);JY6Q6DMFWZM!ML?P[]#FCT:R5WN&KIYU
-M:LW[TR:VKPUZEH.:$9R@=X79(N:ZVC?0K*7:BHL]@>B6=X+$W*@JJ\_ #K0$
-M3[^TF3EL1M+1,.3Z>C;RC76_6K^,DY/V@*3SPNQIR&9#WN#@:/X;EP)$IUFD
-M: X#(,+%-YOCVOA#GBB&\YX=!5;:T8:9H)5PH)J+(/[S[<?26YF#M$4DB)JK
-MYE(:V>[SXI?6=JZEF(XJLH6I _XUU^!EG8E^A)*ZDJV>$)89T_6WNELGGDQ7
-MOI.85E+HY3(SKOX7\TTR^96BAAL;;";_S4Q\Z\O%]LN2MX6"A^M=0:>=]3O_
-M]OYP&T>^!W*:NE"64'BWK<?-V&_4U@WWPEFOJZ%8=@>"D96/PMCWYNWP_B-$
-M>9:&FO>H.,C-6^'05H+4]:"62XC?Q.+06O=<7))^FE$[D):6UN+[ S&%B(J;
-MDY>#OJSPGP+BD<;N4."ZG&A1&E*T<*"FQT#M[M[GBI"D]ZC-DM6BG(CDW*X[
-MU=J'=]^\AIV!$TVDBW%.* L0T-!"AC"\S)B\BR.F6($D?Q)NTO*=?8V[G*9.
-M_%.3^JK#*]H.]\X(6M&+KOMWF:*(GY)XIKL ]!.6YG_*KZ3P+U>"\YW55QKP
-MK'"?^08) H/(_C4V[>W+^)PTBY>8E_F!I8BBW]CAK'6T?+8$JKJ!AI_BZO%N
-M%8ZPDO!INJS"OH:SBL7Y]/?7XX:/J%E:2(96E>0*GK'$6F7"YUJ>1:N>#4J#
-MD)LAS>_:W_,\C5:NKF*8SH,A@%<1P^Z[]<1#2Y^>]YH>RKJ!L!0)YZ_*V S6
-M^LCCN[.$GZZ 1UK1K+!S(]+][?OO\7VB1YMWA:F;2<\BU+I4%I%:$7Y/63I#
-M[N[WSIV9H[5:EU(92;>6Y_W;"KR+NOB"0();-I6=T?(Y+\1/@%%6K/^!@HV'
-MD(WGM+/[WZNOALP(L^F>4G*40?/1\B0GUH^5E("-4@&+MK"? =S6>\#QDX./
-MF"B%4\[1J9[] ^#N\,(D![M-A5?6%NUX7D9<40DNP*8B%LK7$DNRKU*:]ZV"
-M7[!46\KCW)#UD(6<':"$E9*6"4#=PL&9F8*1IA2)MMCWU3K%[_.<,[(?A[?\
-M&ZRZJQ#:J8C\E:)6I_&9JR9V'2'>U>02!<F:E(6;P8C25?:>)_KMEG60B-66
-M@8&8OHZ?[B4Z)+ F$-J[%:A:QU*OFV#UF_+7_"[?B\(OM?_&CY8/B4;.B\<[
-M]S?DQ@^(A+N+4G>YJY.$O<]2E,6J1DP)QM*[AH2+6IH/*9/DS'_ X#'NL$7"
-MG/&@EIW0FX/EWR'X7G!4C1N(J!?MNF#R+^Y;FDN@>2;UFZJAEE/#UL+</8&*
-MEH(Q4Y-L^XNC<FW'PZ]1B5J 0KGCGA0#X>$>_?9&!4*;D!VRC;(U]ZW7.\7 
-M%K+E2UZ5G8/WRY*BD)<)% X0U\K;O71^8*]25NB&5%]%.C7UG\3RAH>I7UJF
-MB/8T^E>#@1[H^,3LWM+1FYB%M2APPM:CH]^#P<0]Q&_FI5R4FJM6<Q[[S0R%
-MV'@6IM6T]*FZPL&VL.V?\9&)\9B%MYJY[+ ?I?R#R=!6BEBTH7J[EEN6@L16
-MQK[C"$V7DY^Z6]*@6^^-V9;6/'.[1+F8O#J<C9^\2=+G=^?\!5M'K*^)N&N?
-MHZ98X/XFPTK"_8='_87#1I2JLG0*Y?/VY.3%\)B^Q0L#ADU:_K!?O\57T.W4
-MQX4EV;JMA(BYAF]!HL&26Y<6E+?0X^*$B)>Q&J6N L3.PL6]F'+?MG66F*5J
-M5)/DTB^:E9I=A'T+G6&/BV'_P.*OG;)-5X'Z5K*W@QCV-23P*W9;589;7$>8
-MC9-*)_'LQC?:CYPFL)/JC')2C^TR-L+$.L"6GZQ879)-:VP?F(-$+=_>[U1L
-MG@?!AUVNF).@4HSR[L6N/:.+G)R3J)J+G%(0M9CASOO6)I6"@] 97=%0F=OK
-MF)XBWKNA]C?7WCS!?(!?B5>W7JK V6.&C+6?N9J3EH[-UO;[]B7S7Z;VM1")
-M2%>3TX+SV0[=N!9SO7N!DYUCGYWALC3F, [YN4YQJO.XWI2BA +R-?8Z4+BC
-MB)LJBQZ6D8W)\J7V[? /#Z2<C*O?C5*XEKU0[^Z+!L'9APZXGX^'A,:258K'
-M\C;[[O8%4/AUB-.0B0J1H%:] =XHW,_,YP"QNYB,GZI-C8F"K$^-$5/QV_N6
-M\YVAIE>;F5:; JSS,9"BH9U<@HN/"L/G;OZ3VKIPE%WVR1J9H+29 ^+#R9S&
-M48U<L989H;PZU_/!=<95U$<0K)=<ZU^RWPH@V;['QD&JABB:B9BL<D5I\_*P
-MT.+OP\^ 7&0-KH]KN/>.VVS*^^*K8IF7G%?NBL&39+*#X)8GY#QZ JKZN5\*
-MDCD3H[@FE\G" B)/Y,:OUDM>E)*\\*B3DFR.@2OKP\?WY$"_D8J//IV6N0W'
-M M!?T;9-5CB0F(4V]M*6/D"*0_Z6IZ6J+^V66M77<-F=D'2K]-R3G\R:_R=4
-M<]/$$U M@* .FH*&IEM,]S/U^L?QN5>H?YG/1@_7E<<Z-7(WUN#MOOH*%Q>)
-M.L02^-#Z%8?/QL.L^EB-N8^/BKBD>]F64Z[&=<>-$IM0D_^ZNYYPCDG1XJR-
-MKJT4R.#J_=4;.+2'*8:$$%=;E!T2-F_3!*2)GK93J<+)+-+@7YWT7?.U0ZCU
-M-D,VUG;#E9&3O7*1EOL04(+!SU41A F^#Y:2F8*&%HO!(L,VML+@B:9BG5J#
-M7I!^NNW0\R_V V,:-)^"B5Y0!8#8]!4R\\;;N8^:K9E=A>-#I$\-!,(:I=DT
-MC_V5P8:$CXNXIAD+\?DV]'_ESQ*I]YN22HFSB%!]&<NNPM3;?-O8DO_\EUH4
-M"0+VD:1] .KM-.^R)4R2\X2\"<G;@?T:MIRRD9D7D8*:I/1]%^[SPQQ4)ZR:
-MDH*-K%V[R.- O%VQDJW6H5I91#*0S/&S-";/W$=V8EV"J[8\=NGG(;-W[\."
-MFB/ZG#M>GE&LBKKC-O_OD0J&"JQ/KHR'@Y)*\>3.$(.EL%<7A(J$GY>[.H_3
-MQ7/EE=!]P(J61***5[J?E 965XT/Y?CGW<W:P$>?R+69T$*P$I"6>P<SQL;6
-MTL+5LZ*5@)4:5L#]$[3ZPA/5'I?Y_5/B%L(Z[_=<TG05FH&8FVA0?0GCB^:?
-MB?[U]E2*7[)6 MC^43Y=V_.9<,:/_(U&7EJ,&,/E<L3K"+V6*+&O%; 5+,'S
-MQ._GD@B'EJV4EI^<C6"?JL+<!X<&PM9?,%Y C5:-OV&V@,7"=>XMY,]'6AD2
-MO(VM7"1!A[_)1L7."NGYHK.Y?KR2EA!(NZ*P?[KSZ^3:4NW3C9Q9T9197D/:
-MXZ;0'%!!K?>0LYWR^\7OQ<9#3X&SAXWQJ_BF);T)Z=O[C"&2F<Q="E:"6IK7
-M_C;0EO78B9JX2P"'>A9*G:EVY,6N(P*:([*KKY7V19JB\FUV%^9S/2:ME92,
-M0<E@AJTHQ$@++^74!YHWO N<56J(UI\(TC3Z9GW"B/RQ]UF"Z9>6<E(=VJ@1
-MCEP=P-LV"*Z%69)T;UF>8$2+)3_TX#NR\T09GH=VG0NI\H;&V+S)OJZ7IWA#
-M)?[!-.[&JWJ@=(R =-.?D8P3+._"M#I:<@D7D9)!8)"[ M(L]A;)"&]:J*O*
-M@_S/I8I-,-4F;]&*A^))6YJ>IHEJ K(6Q"WV"V_PC*&/'95;N 63X?@"$M88
-MP:T7D8Q$CDMC<9!7@_A_%B_"@1MR?*/[F@D*$ZQ:6-EB6<+P#V+.^:M'J;+:
-M=XM:4NJ.&MBRY\#^Y!F,B+.5$[&#NR?4Y1Q45EZ;3X$"F\R>U//MQ8J<F(H$
-MI9&6FWC%B8K/Q1"^UE!<EO67@6Q?DPGYN?KUBLOO=I"JNFOVC_,MZ7.TQC7/
-MJ)(P7;^ZO%/U0(+D(_ S_,-C&_R\O*X]2[B-E\->6FW/VQ1/!)! 3IR[1L*/
-MN8+3\WPVQ?>G![DG<G:;JA*VE'GUW<(>U<OA$-::GAU>^$:0W'1-G*M1DC,V
-M_A?9D*/4?J:XUBC36=&9N(B2#M:]?I?7\_;WX-;EWY&*J9H! YF63YK9!T"Q
-MD$"*J(^C5Y=J59DB\O]MUD;6O5:AFX(9NZ93CZ&?]+_UR(NTHI_ZJM*FE4!#
-M-\'@==K##II0A$O8BVKYIEKTRA70P-L0UIJ0#%=</U.LG[K)$!_W\!7+7H1<
-MDWRWD:AR:(ZIQ8/8;,_7U<= A_IY6KRP;UF:E#I2\>;Y;D?V\(SSD)B;L9:M
-M0JK!% V069NV5_Q#2O#D[]8_YYI:@G2/D)R;))^J\L?:Q)@44(2,H*B:H[#Z
-MA_ 3-"80XY*Z$Y>?CW_V6Y[Q(CS )]M*FDQ=B;C>@[5JYSCNQ?87P\>/E*J)
-M7H5+BE>JV03"4LK+7%S;M(3M6E29((;WRL/Y]C;P3[J(4).#E@"^6:B4FL?.
-M$\[,+/S&G)-^GYO[DHV0M*!'^M3>[/*F=-6OEE:XL-N6 PE+CP9=@*.<A[4H
-MFX.3TS#MXO.X1?*Q6M6H6HR5D]KZJ,A05I9>]A&6"J0&'MEB]/17QQV91F"_
-M>^<V_HC-QR/S->X"C9!LL)("A[)[7 .V.-[WL "=L[Z,3X9![4:$F1G/_N;@
-MQMANE91L1I9&F+F5T,O 93OP/]*++["0V-7I0[)MEY<BY I.)"#N#T1'F'N6
-MN_Y+DK&,IEC*PO-P.M(%.K 2!)#(@YDGU<4:# *46:>UJI["T"T^;!(#A'&W
-MA?X[LAMV3I^"KP6YF).2402S0%B6A)W P,7^/<OAAI8AMYQ;>!OW0/+J[97^
-MDZ\0Q9Z,ORRVTL'#/^?T;<8/#U"NOJZ<J)LV,E;PW*1HUNM(UI*:ZD.2J4*Y
-MGYKE^A_?W/I/JQP,HYS21[(P^YI;R*7$" 6%Q.;8C_Q7DHJ&1Y9)D$>8]//7
-MEC8O\;Q3I Z/D5X2\1<(T$11_KF&55N:S)#!1. :![J)\D>VO9G/9IJXZ>G/
-MPE 4296F>*HXH/*/!3[]%>_%\ Z=@:U/C8V^097-LO\7]8#2FDQ7FXE&TA+?
-MQ_/$_^"UP)R0RJI.QCTYD'^7 M264QWPW)::+A0==XWM9 1/R-[S]?!VSYNN
-MD5"J58N#M*N7@PJ"2<?*_ I:P\N2CU#3NXV:TFBWN]JR_/K4.O.:L-I1/GB(
-MG0<O67".D9);<K&<G8%"&/IN5BO*<'&])DE9BR /LN>I\1/Z2IY1EG=#O6/V
-MDP%R%?8R [Q:AI.;P:U^U=O/P=+QQ?#W0*"@ Y";7$8S3 +TP3NWQ\:#.JY,
-MJ2NNK:14F*G*%_CF)1R]D)2.CQ*)1[*%DL'GY3O7X.*'G9_>G 62N;FAAL+#
-M_MSZSNZ)J)&ZCD2 SL"/_XO-GDO'=M#V]=O;D*&*?):)C%K:^=#R'(F:A599
-MJ8O-D934%NX%B!!WB["WN;:[MY_"[04\?)*FT9))*DFA^K, VCT4[L?#N76J
-MB*Q-'[(C:B#^-?O&6N?UIDB"DT6CD-9-^#32Q/K+C0Z\3X-\P3O#FYTKI@>I
-M ,[=EWJ:;(J'J[BB4(-!^B4_M<>+7IZK'[H-K7I"N+9 [>[[PM_/B,'CB47Q
-M5_Y:KU*:I 7_41#Y)I[PPY#8 AN.<7Z:B6T/8DJSDES444*?4S+LU^XZ\Y90
-M4:BT2+^=L%X)Q0_+'+14<Y%6G(HK!=H0VJKE.]0#UDUWH8&>3YY26[_),?EF
-M\ J]\+.-TXB<CY=6&2HYQB82(H>7K91K5AT0Q::3*/G,'PK#L</:D+R#G&R-
-M9I^!P+(Q']/PRXV^5M]#CM*7D&V4F*&(T WFK@@'Y9-5NWJ3IX=6%J)6F=$_
-MY>67YL"H"'^9C[R:6NVLT?V>DE27&B+9@L#KU_HT%\]0<:9,VE6Y]KF$%\-,
-MYV.XO).)DM.:E[&7F=C6+?8GF-0&GJ*9J(VOU?N:PRIQ;^YS:QZ0?1:(_/J_
-M+%#V51?0$/._'[V W)Y>TY9?F/5]QM/* Y2[1(BZC/A,K6Q&4PTP]]8L?E6]
-M6%SU6Y6XJ?' !A>0U\[/]-14ILO37!W1*;"+4H!$UD_!,K/6I,8CA9&$5)"5
-M4ZOEWV#"L9V:\3)3_]\$W_GZ?Y[1O8:7_5(CBX\5DE^8S-K)K).GKLZQ48*L
-ME)D#X,4N>\"PNIIL4:G2F(90Z>#2.6[23I&VDZM:"9@7M9?W*\4^+C+;SI:<
-M;8J%H)&6CYOT^NK?H/'@EY.$K\7UCLM#I*TBN_/Z-D#AKW)14-&>J,Y4,E^#
-MRRP U:#DW^G8$WY=0)*0K;C^2+!S&?AQ.Z>5U5V"L;V47/*YY-6@T!>2ACF:
-M4U8K[7[FEN3EPQ2UFKT/_7I3<Y!2H4[QW,0)GKGT45BO:9)2V.'MGCO ELJ[
-MIE, C88-M^P \ZSZ$]&)<H3S6:*>]O&<62#Y_OIUYNE3D$"=DNGGH?2VT0K<
-M IX#'9R:#[F7G[N.L(>;R?/],OOMPX<?N276=KN9FJ2EFO,>A,(=PN7/M,>N
-MO7&7M[F"2<04'J4R;<6^]\7>E:.5%Y%(?5C?*)H9DI+^LI&"$V'SQ[WT6^*0
-MD!>9E)#,&,33FQ'OV\ O_%&15XF(C6"?@VUV-N?UPMF*A$A"OX*>3@NAP)+L
-M_G!:N8YFFHX!?H!:GAG;]I86QA-'IE^5F[9(NXQ:4M=]_X&@(>*IEK6J3U+K
-M0K&6V_'1Q>__UO6)4Z];6?>*BK8@6X+(R"7$!,J>]4.;K9M?DG6*M]/V]EKE
-M5NWZ-]XEK] ;G06AN@J3U_#TA(A>?K98EO<"TB[=U_KE6,*B\9NTN'^26]\@
-MPT;SGZ03KO(@@(C!E9K U]/F->7\[Y"4CK9*O+2?5<WWQ2_#E1,B *M2BXA2
-MGH218O3[[^0!NH2<+XJZF5NLEZC@S K/PD/\3K"0**>OC(B =)\BZ"W%[=#:
-MD)/0I8)3BKJCH*9]VJC$_A0*R2?CG5.$GX*2KJH"C)!_U_?%X#_GQX1QE(R6
-M6(BHV/MRE8J<GX:6>0(*QS/_EK)BBI!27@>00*N+1D^#]]<A%960 854</C7
-M-?996-3'T%?SUHU0H -6@I*<\J#-UK.\Y Z)D#A/P*EVGC-L&<#M)?KD!UR?
-MF#^+^DU=8G!7=*[XQMS&T(\2!*"FFNV*EJ>+1=_E]C?Z&IU,<9":I*::E".-
-MFL=/R,CI^=+!  *>E(:#I<M9WF22F/'1L<1T=@^.B$N%]8$SGRSO!3'5@[+^
-MOH%0O=+WM2*6+<4:"/.,G:&ILVN:5PS6T.*X2HN96E$J.S";ER+0[3*4TY8B
-MAY1!5AUX3LJ,\O U]O*%B?"0FY^0C).G'B'RU<3NQL,/EZP %JZ-0Z!2?P+^
-MSL?.:L#LC:R*'9YMFNVWFL?SU3IVQ]L35K^;V[J[ XH,#Y#)I>6'X @A#S&[
-M'IWU6+_G$=*@CHD)/N[U]N#W&9B+B9:=J)]$WO%BG*)TA(176G;!-&?TL/K;
-MGZ&6F,_P^[LIIM.!ZW,5K!@>7;((EX- <ZT2ZI7>N\KPCT8XEURGCIK;2&S#
-M_6;O\1C0H%=3SX^FFLS9\#TZ-??/BI9=@.:=P0JLDAZ93<%>XZ-=C/#%N*-2
-ME4=FIDB TGR6+)*BN))>LI.=F/(D>]#2R/CKC^C*(<524JX-D9FF2IHZ;;:M
-MS6OAWA?FXQ60RY%4H4)6VN^!'!FCLXT6T2B= , 3$/?5SX104H6G@XXH@=:/
-MJNGO2)"BE(R66(N=<\:M"+*W8C3#X$N>AEZ<9YY.,Y_A0^VV?\^#>F:R@XZ=
-MS\N^(4?UQ=?]QTFFA*V6\N^_>"1>PJ#(VJX;]+Z0GXR_7)=&D[19 1H1+A;V
-M\>B2F0.7UI*_BX B7Z',$,_ &J/KV LL!?LKE$CZ\FV: Q/CU_/R["M47"!5
-M'C.9^LS7\-F%HH8;C:*26-J2Y^YM]_5X1(J/H!.)^Z.-B1?>T-B>(Z*;SXBY
-M^ZBZ-\="P^(V&Q"[IF:ZEZL$5EM$+2O'/M7KNP)&F[G;O' U2L' %7 GEF%C
-MEEV:3-*NJ*!^?M#%WJ<-\_'-VB^,5+^.IY&/F^'T]QKFQ"^3C)]2F8#+^[)D
-MAXW2_@7#Z>YWYT')7X6G0H2/'O&UM(L%]E[%IL7S>LOR29:!^Y,)[=O0!%RX
-M>5.]MIK5&ORP\#7"Q"&4N)"XG("2=[C%>>,"JIA63,Y35GTRQ<NI:<5:=FG<
-MJ:! 0X++'<^(O$UY^7 WP[J/BX-6ZI+^D+C'*.=@0A;%BY"?[(\%CLZB%;O"
-MR(ZKUB$$C0RP&@-7O<M&4'M9UO/[]="OJ(8-H=:.[WXV$_(8Y(9YQ,C&RA/T
-M9H9=DL*.ATJ'H)63#<04\.[VU;&)F]\?D8)SIQ3; "V0BXT.F/ZHRS+MX!/U
-MQ566$9ZWD)>?IA#S@NG"R8Y2N[R3L7N6[(^/QSOSTMH#&^J2J'T?B9)>'IC:
-MT^S@UE5M=[ 7,*T2)D#5@JFU'A+GUXE6O$^7&&E#8!ZM\RA8W\/3 ^Z:7(V/
-M7,UHR9::H.ILQF7Z8XJ2&U-8L(V:"?H>K5EX#<X(QJGS-HT2AI,?ID>[^H.6
-M.<T^5-KN+X*X' J0DDB;G5$IV[&OL%&^CY>NTM/CQ.P5W"5:$*.U3%""FK&4
-M=\C,TM!5@%",G%JJ@I 2%PS>-=8V". 3G"&#_)*]T)&<439VY[[5P[V20HGN
-MG(8#!,#AE>?5T@Z6EOSL7(>.JX",EL#*+_[%Q>&7!,A7S(Y!7Q)0",'^+-+V
-M]X,+B%U:FH>/6J)@%)O8I]#8I!;\Q=9NCGSQ$*:'6A)IIE,-V/T0%E+K3$CS
-MNP>0GKE'">7@K]844*>@J!<9DB4F^^W"O' "5)J9"YBH6GK2[N?)O[:@5)^]
-M@)=!A@/',G3Z&A+<!Z6MDM.+5<(*C_*^QO7UPXJ&K?\;NJZ6>+P U.R0]OK/
-M0XZ,.L,>+Q-D$$L-W-?*X"7$R[7\%D-:EIESS*L!Y#.0)O81TY*-2IZ7D(I>
-MBY[7P-8+IJJJ*J&P'7:_0HGUN+R(0%)#\I;9_C?Z$UB<HY]/HH*XF_TE.-Q9
-MOK"7E9N1R)(3[A!FV+V;HE5U]9Z+%9N_6J[W_(ZQE)V F(.7:*!3P128XCOR
-M\&N<29N: KJ/DTPA\KCV;@-O@J#[6E%WDA" PL)E=OJD 6-659I/#8Z[P+.2
-MR=S^#N+S YV-AZA<C\&G.9I2\> 8YCHZSJZOV:.)EDJ:=HP<FMD"+LIY6D@E
-M8$Z2D/&J0IN#].Q2TJ4S[O+R<HM<B#I?$/=25L$#00N.7 JU=HFYG7?R.=?&
-M;B]0H%)[)%D<K:&=G2#/KLF-EB&M4'&6FSN.L(TXM<3WQTA+DC"#&CJ3MI64
-MTQ[DVM?#.J>C@MF_>)2%I<<4Y/1^_]KNAGVJ38>]RH."4U/)Z-?WRO2*EY2=
-MF_N5D\.^*O7>\]([X-G-O97?$Y;#/C!%A8D5+@X.@<CB PF"AET?GH8*EH1#
-MWYCQ:E3%U_3BGHAP5Y!UJ$/I:2DS^H"^FX6QGAT98_TZ4I;;1%S+N5:#6O"3
-MC9KWR]/(K_6SF8[)5HV D%/;VF;N/ ,0 T8SJTQ2CO+U9<OQM<963PN/K(-:
-M[JQ^4\ABN?4T/_I@J9V?A9^&3(>2IE+'%/P*"ELUU)I%O9_2@4N2>I]G$^4R
-M_OK:FX90@2F4"*I3K8:-PL*,5]_Y_:?#D+(&E5&F$U&TN9:JS7 7=F)PP47V
-MH=N.BQI;YWRA-,2P$_VFG)>3",(V^_84TJI5BE32L4@"P-Y/ 0*3\)BSLXV:
-MV8" XYN!Q2'UT!90P\^F>YT)FU1T=;Z!,_-?QJ6"D'@"N(Z.5*$/\2/C\OY<
-M=[];FDV->\V"B_?9Y>G(Q@;(XE<D?NB#'L]KQI /0NK [K3NUTU4C5J,1BJ+
-MD:F>K<"(T=I9(-_R\ \(J;6N@$:,4GA7MMCB__KN.@>']E^=4DE(G27'Q=VQ
-MG%#96I%6^V5KQ2_N]>Z:B::15_F7VRFV6L?_1=A0H'(\A'4<?RF/UZ>V=9"N
-M4PA33&:70\V_FK>7X<'$DF^*PIJX&I@1GI!+0"VC_^[VYBJ^M?6'KYY!ZL&.
-M4\U.SH/PYSQ,CCR)[_851RW=@\G",WO[]@Z+!GF@J[63>O(AG8G8U"77SP]&
-MYQ+-'KZ%OJ690["@3X#*_I#VT!;;E9Q>!(:2EHW%*<,UG:.B6<+QEJM(ZA$Z
-MQ^_ UO69L805JOKCU;NA#1M(!XNCA;))6%TD4@%R_IG?\O&2KY1M@9QG6X__
-MK,/HT_)VVJN/J$"RSYR2BTG1]CDN\!7S1**\E@V7R0JSE(L97]?@)O585O6J
-MGH\:GQK%_Y\A(#'R._7PV/X6BKI02)*2@=K]R7W"0\GO2$L\2-A>D9(3VQR+
-MD[8"\RKM(^.0\U60<[N6D1./!<D'V)RB )M>W*FKR1[7[CHWAYPAMZE/DHN)
-MIO!3TLW:X_Q1H)60H*Z=DI+[$<'8]/61YI*:@9N(2I0UU57D\B&0?M'CEF:-
-M4D:/CY.?Y7'%-"_>\LR^A!X,KNU8J9XM"4J()@?3%;^UKZFLA94]8!?_P-CN
-MFO+2\VN=G5^6CZJ0OJ.F7=K"PY^+SZCNW-F^^X"J0^N!]*8F74/J\<:RE9,9
-MHY>)A?W\>PS?XT2^DG);D)N^61LQYSIP;AO4E%N[D*+0N+"@6T+\Y\/QHY25
-MGYV>BZ&?O\D@\S/VZM0#6Z:K"DN.LKD*IYYS9MJ%2Q!,5[;*DX^5B WXQ-0R
-M1M=-D*VAJ4^]2*G?K0'&_^6"T= /AZIH30^=D*#P>V,R.3IUYMO)B+N0L=8;
-M.:;YVI]Q[@O_Z5G8 =N2_?^ F% '5J&JI?T,\.;BFD7/=).!_*>)@X+I3^K9
-MD;&2T)>='ZCPTOG&T) 9^*."A(")*I*L]=>#1Q7@O_9;F[!RMAT#_IG4]'4T
-MYD#1DIK!FJQJNAV2BM<KU__WHHJ.:IK6J88@T+Q!ZI,\PG^/;*:OGZ_ZE0E&
-M=+KA3=?=]D+VN0XMOA>/G<L 7ZMAT^SZQ?_/AI*4E:AR82FSJ8Y9<\/(W^W1
-M:]K S9Y[%8 0JUQ?H+81 ZO6Q?8T"JS6 H::AX)+\/G;$X>A@%%?F+O7#9?F
-MU]!WT1&1@IZ.@,I_D(>;#0?O5K^DODV&]X._.*9;0-(LUYK%MF^^9KN^DYI.
-MBHHG%"40KO-*A&B;">&'CG],\?!M["7'VHZFGXB#DY:'D906S,_%Y8)U\[Z:
-M>EQ&^&U.@Z11)>CF[L0WTXM8O1E2=,N<2<A\MLT5F,+(^?7&T*N%G=<(4JNV
-ME(!$*\U&-3#B/J.L4!&HGH"JJ-K/#["IDZ&%M["6]P#QQ= [Y!L(L['[=9U?
-MF6*EW0$I(-RL7'.NG9GZ44NZ0N5P[,#LX]"+$&Q# AV>E[>/T5)U]O7/GP#!
-MNYJ0MJ: U 'R//X2_LB_EG %N8:AJJ"2DL,@!_6&Q1:_5%&6QQ[LPN/RFM%D
-M]S[P,F.ZKJV#&E!/B=9LL@M3__@,+,1#2U8OT@6^B'>XOJ)T$ZLAZ_3$^OO*
-MK(F27(V2EOT%PNN(!K1?A;!2G-B@ZY7_]-*.KX&0FUI75OFB<X.124":7%"B
-M6]J@NH/,G[;ED:["_(#6BUHXF)FXJ%^3E*'6W/80H^.BI$.Z:KB. HH0^?,N
-ML!PE8Q15B$VWC8]X=K:E@=VFP,4(3[":3H\&#H&L'GB!PB.;YF_Q9KJ6LU:@
-M YJ?XJ93 -W(WJJ,%YK(29[10(&6D/NRIK"6V?'\\/6Z#_&0WGZ^G:ARV=_%
-M]$03LYU;D*F:R.N3]A!PS[_<^XU7DW/8Z%J342F"\?_X&JM0H2B]0_8.X/@@
-M]^^'',NSI)J<C5>@$HV1_B;PTL*&MZ&=J$V:5(K*178]K/# "\</D(#O6^VH
-MA@!^\/G"%@65,(].CX!'?I6+1K61"S(Y]BPR#KM&_7*:UD><LZ03P\#6T W\
-MY C#48-X5=.9L)V)OZ.@GZS^$?*BQLC<2:11CX$NG]C/Q_.OF(+51:&<6/+_
-MUQ3O]\._H%;T\AF#FI.T4N3,YQ:L=C)XCY6\/Y:F@]G[MM#WAL&HM*JHND\8
-MA;7$2^K8Q^VO1O!MDW))>E:@C>'6+3S6-\^6D)_MQZJK0I/P'X? JN;JR<.K
-M7Y>^55V]!SN6@L'PDSJ?]<-/GX^5&)!*LY* =E<-A@@.^M+_]LI8AYM36?6K
-MKI>L7M<"T?5^NFWE6(2_F,["FH$EXX? 79"*^UJP]XB-Q/2Z]%K/W8@2?PZA
-M>G*0<%?-?P564)RD6:;7?JJV%?.@ZY<Z[&\2FJ.@4WB+7'!RW$/B.2;%HNJ,
-MC%<;B;^&2;_!=_C%^B7@OI., +GRA6CX=:TK*NBF7_#49I:=E:>N@:&DEM+"
-M^?<>U\;.DI/\F[^.2_NXJ8^XF>I)Z-C,#D=<NK*VU:FE[5FADI"KZ,'&UD8N
-M\K:P6I'ULX'[3,WS'+I67Y^-H18]YW9TWG0LP/>QHM%?LXI;>G^# /^.TEX6
-MDLZ'@=[S8E9[+,?$H^(/,*^FHGNVG5ZT2XKQM.4WFN.11DFK*[J<NI>/V>O^
-M^CH[TQ>,5)6^O^[#+%>(XR[=WO FXX*.A86\Q]R+L9I9 ?(\]N/7[JJ>D8.*
-MI(E^DX86*R//RLY=* T.P+BRF4+V#&^>HGA7GLSVPR3OUAJ8MIF]HK5 ?O3+
-M"-*$?$B=E*2<@O=R[?;$?@]<H*:=$J5< Y2GFQD9SQ&8UDN=&A"+D81<F<<@
-MD6_0D]R&FLP+FFW?I:*OQ_(P[N8/&1PF>ZF[KZ22K<V2U3HNEO*$I?":EH:\
-MJ_6VGX5(H@#*S]&DIA&<6:R)"R /B_$SYOJ6.LNZ^A$G?@>[4D"F3)+ W?[7
-MQ>@(AQ.*Q[D>D9Q9%E.@C(CC\CDT%O2;>G12D5N=VJBG+_/V?$HR73>0@GM1
-M\.;3QGHOME&CKMZA,_C ]ETG#-;0!!&#JY67?HNX)8+9M#?0>_,\6<>Z759(
-MFE>YO^?W\+OOKY.^D ,:4X^FU9>(P<7N,#_%%HZ<G$:OCT*CHIM9# ?.Y@+0
-MPH9]W!=698ULA'_-EC<P^NX/24?Y6ONZAU@*LIV;)5X+U\_05<+9A]>KHKQ;
-MO4ND]E:"I?+YE\;6XWR00%NFHI>9(<W%";^)GMF6_=J]#60O7O+7@[R0DYU"
-M01Q[H)8[X=SA\)R6TX60F/8;H'(JQ=8UUO:C]"_4;)Z:D)J4"IQ)]L5&[LM'
-MNFR:LYJ:5_] S?'TP-7N&VZ.EH^6N&%(LG2K)]KNS?7'99:@C!>/KJR+2(V_
-MX>GLTM?RVQ.&$9^,1[JLL<0PEP/+V=0KR%0OX#UV7(":3;^"7B!SE^'BUM[6
-M="?PN+9;I9<6OTD)RT:NO8/W7YB.&O<^=Q(V^]"8<)H=5H$^24"D2Q'$@428
-ME)N9GO66P\:_CP+#_9H5VQ:+6DN_^$=%_<.*&S+>EO;/CY2AFIJ(OXZGP/?R
-M\<?PQ\='5IIJ5+J_4H6@2\#,R@;&PM"<EK^,CTZ/JZF"F\>SPS;Z\,.(\Y&5
-MF'>[GI#LHJC1#N3X*L\M61VKDJR75EN2FI"F#[-!DO<VML0#D9!PE):)^H,!
-M_.M D!N1SY*7?DO@ZC3W]9?#7[A$AYN(EYKLA8+)"5$<K!:#ATQU4IE$ND]8
-MPO4V[N\<BI:F6RH.KI!3C=&4$WHNQ<N#DD.(AY>ZD8'-_K#T]/!!EUJN0!=X
-MBPJP!;_RSZO* N;)CH>?CD2KK:OF)@,AZN[]EC*@JYN?L();HKZ3LD!WZL["
-M#M"A3N?(B8[]@ZH"BH)VJI.>[7KYO_#7\US&BZREW*I-1P\"X%207I$:I5>I
-MV?;%,^2^R4Z3P/"20KI;0+9S\]5/$8S8=+BF4*N9L9)V]?ZL_[ O':\7H_-7
-MDT:6FX %Z??&=N^#3Z@:P%N<]"-'C=+V]M(LVH];G$2#DD"3YIH;6?H.)^?;
-MM$.GF+Q<AXN3J'NZX,'\WA(D]4LL4+>6%@V6@X85E^&D3<>-!<C5")O25:6 
-M6K^K\[N>6(,;_9(RG\<'_!Z74HLJK<$56[!YH+9==O-XEN"44_1V.]54L9(?
-MIK"Y]\FFOVK"RLBZG);%CX*\+8:06/4S^3;UJ/&O@BQ*FKN(0[*!Q2+N^O::
-M@U*P__*(F\!UW C6=++VQ-,/3:BOUYY/'JR7F5'LUX8" ^*_5%P AKV<F<6V
-M=^G"QS_7QI<9A@R8G/>'MX(*C!-:^]X-Q0;<=PJ+JA&S?+:;FA226K$2\D7W
-MUYK7FI*RE5[Q%ID@E<$86@OTF[25JD#PZL5ONG0/5(K0692A2[^YHED9R5"5
-MFKJD==20@A: 4)VM^_3[GO#V2KXL6,JXN)(2P?<0\_HN NUPH*Z3@X8'DS[ 
-M\#C7W^_33X*]O!>*E+CCC;\#_>P>%\K@HT^J99R-OLVP5INGWL=_^_;#YHV%
-M4-Y4BYN2:;I?"-[(YM'!!P#P2YC\H_I>!IJ6"'>= NON[O3]\7^ (9RBDUZ8
-M\R+'L%Q6B9F0HH. UT34UN^4!5AP?X45E1>?:8:+K)?PW-"VE)">D()VN8>:
-M\709\BP#<[B2R?M;B[X%D)8!>]'BQ "2IH!6ED>]I@5(</?\TCYPQ:JSCDVO
-M3$&G8;>PS0[^W@*/$",%N8^\O;]"C)J;V9/M\L+V<IM8G;Z*E9BH2Z"F*,$J
-M!'S-Q.W;U(:>&1"7IYM3E*Q0B_3T,^>;E=J%H92_?ET:30#[[LF:4IZ5]Z&3
-MG=KT%68F<L<O]AN4GX-#EZ&_R/*DD];ZD'*=EM"^&N"6@,WF=,;VPU:C$+/+
-MFHJ-L/F@01+V]A#:KQ! FWR-NGJP@,&0\V_@,/=4]IVJ29Z4DJ"VJ]CL[J;0
-MP.#/%GB5CQ:<G;J5EP?[P^QO[]NX^%;RFE"+0DC@A=JLR/S'^<70 [&O$JV7
-M4%[MBEAH7I?EPC,:EN_%EAST5)6]EJD"PJ'3E!(BK*93.D+RM/DO^D?%K(N 
-M7J6=&\-QIE[#+P<QFEQ6JUK7]E$4T'CH]#SEP,/=HWZH6YR+OL^0ND':]S7O
-M\8.7IIJ)IZVV2X9QN!&R_G+%GQ81H&-3STKEE:G'#,9 ]^'8KHZ0*FE(ONJ!
-MCBCA<O,7U!?CJP:=LIY_DIQ4@)8-$HH,7@KQ*\#0K82I"Y*2"Y.P@99+X//L
-MT"3MP:R]LGR&HI.HA\W%$[RV6X:6"IFZR+_S]N9PY5604%V25WFM:)*.R<,1
-M4!^P$[N224):QK>K1=(M9/X.^9*F$:J1@W.6N^KGP<;Z$ *+![J]F$=>#)<J
-M)SXS[OXORP^,\96,^I<=H(^ZTX@-BL7QE&E?F;ZL]I7&[91[V.#E1C9R HM]
-MVZ"Z^KE2([.$*T$&2>_!B\X+_$=&A2%^5+Z^DZG64MC"+.3P)D-<=9:<EA*7
-MF*&O=^*5A9N1LJ%Z6><2+, ^?X:Z)EN-E@C;JN"/C0'#Q>'>D/*MH)SSDKB/
-MFN'0Q?77Q;*K7Y6:G*>+CXBOP>(XTL?!:P"CNINY4K27@,64-785T 4#5DJ4
-MPY6M1T;RJ*# [@"7]3GKNZZ^Z[@(BH.V5Z4Z;/8Z,L<:N/R@G%^8TJ9F#[\9
-M5L@,Y>K.SLF+M_R9@I)#G))@6_KMZC<6_/K0F-Q#A?"BGM#-^QKFF".@J(RW
-M0G_%<^;&__?:G=J0GY(3J%^LC9T _*4 6!6>_Z>369<YCBBG6&W0Y:,*;Q:@
-MW4!+6)93C,CJ_.P6T(N7J*]:"IJ6M9K1,93EMO*/3/>L $]>H0:(3@$7#![ 
-M[M7CC]X=G9]23XE%C)<:U-,UKO##NK:;4U+V1YA"8+>ZV]8H[]/ (Y<!OTY,
-MWWN6BW9*PO*RB?(U-ZPR0QR<%EF62W*]P,< B(28HYT,=+I8@2(Y1M;Z]:V3
-MBY^<D5"/:HP=Q4GSP%2)F[^@6)X78 98[/'WP!O*X^-6(8C6C[Z00USC=/C0
-M]D"9I&;7JINV#$=-Y38E)K_VVP]=T!0<AHRM09>RV-7,%O:!$X^.7XI-<@%+
-MN_*O\/Z19/;6FP;R4=.\=H\;@$R7J<F.#N/(QBS0V8BW_)*J\J'^HZ.ZO^+2
-M.<6O]_"X7 '54A&J>O'5R(O8@HBLEG""F*WB+.W:[_%,EIX$@I."FR!/K]O_
-MITB04YN;CG<<D\+"$M<3[/1R6O!8]JS_%JJ2DG--TO9G.]KG1XRLB9J#7Z91
-M"%CR\WOUD_=*E9R]OU*-O>&VEPWF*,?<2Q"_NIJ-Q]>_BL&.EL?VU?['[^L'
-MN/L#B8V[DG1YCYW);\NBSRW \,.HC(7S6C"NFX!FLKW;^K[0QL7WS[&4?I1Z
-MNY&-604VC*&*A0Y)B9WU]B3P.M("A'6:O475 [J3\H+E0\' 1/R0O+6CDZZD
-M59CRT>'D]:\<1[:3][G"GY:B[ $[E9>6V.B$L*M3DYJ/^IK->F[$\!#%5K3'
-M[)\%[0B*<)?,P&X#Q,,6;=J%H$L>J^V&&KT!*=;V?=/C0JY>F*H/BY;2*8R3
-MX,+#^,"&6-C\6U^1\JC^AQZ^B;1]R-(XY<?P3TV)@XZ0=RFKYPZ9W9^(D:[0
-MB8N#&S+&M\16)7A"GI^><:F;L,Z)YP/.]IS<7JSV$IN;9 79#38S-]99T!.C
-MN;FJ#[Z'G^H19&R5L *8L$2?6I*25/. $7[T^G M\XR0SDSDC(R/);:+H.[,
-M1]+30$-0>JV6O+O)D8(7*I[#+BVEFYJRF5-"E8BIEKG'J\<&T!Y)  /#%$<$
-MC-%*5EF3E\@:NRGB,13P._%]G*"I.@N6G2+]&Q6<G+2?^IM"&\CC\.YV="N<
-M4;2M^Y=:6J!.'1#,S^&MH N/A:".24&%B0,;\7;R51./T *#FX<=^G5$ Q09
-M[\?36]^FGYR-3 ^5B''A_N[T'?*=MEJN5Y:!3P925NS/R"8,T,:/U:V\*QHO
-MBVF-OLG>)I6:^MJ+5Y62NY>HBO)IEA,0Q9/8J\OZA^/K_92C.A;&^9&-ME<"
-ML_?"UOY.Q!91U1^0M[N7_-OZ7Y24E?!#5MOW?C30?O8NG9F6OM!)FY>6]:_E
-M"P?3_[;87*9#OIF$C9+9=#CNQ"#"GKIR6W"[JEH!O,$Q\.XVP+V6B$,;GYV&
-MD<7MPA7]__8.J[.6@!=>#VF0>GKU!<WV0!J2U8ZPS82HCKDD7@K2GO/P]?[9
-M4K^]4/N.N/R*I%_=H_S.'LT5C%EB8+^5B1OVBY9Z$+>3(?+^L!(N<T7PDKTG
-M@Q>=0L_!%H^1M'R049B"]^J1-9"4PH>01D2/EP!;D!ZS"4?!T_^QL(R<71I+
-M0:9*YQ1']GH)'$T6K(&\;UQ=@X^A?C7$Q*5+FD&]NEU/MA-AV\&T]I#'@8ZT
-MB(JY3)Z!;,R#K4W=W@3!$FOV&H>K6@^HH[*S#;+=,]_0SQ*2#8J %JZ<H)*0
-M@N$.J%0-0@JC$;N'D86#_],#HF9&%T##QQ)F;\&*"/9;=KF+LW+;4+;\LY^%
-MCG$*FN7!G/7<,(.:F9(0]Z*^FH),G0W7T]BM\%"9>GF0ESF?GM5@U3XWUS/I
-M%X&WT$:&O_: #7'5^^Y"NO/L78J#2(_3BAB7\Q3OQ*._GMY )_./2[N/NW$M
-MR,I&1M&LNZ_ %)Q!JHW_F/#B[<>:=ML'%G%ZFY: B:.$I:K;V,O<S$SI(/&'
-MWX>U@E>35CYXICU50>3$-L?;7)!;K;:"O$O"YZ, W8BBGYJG_)<#U#7LD_WE
-M5;99E9))_)UVEZ_;1T72GY.6E<_(^E,PI*G7XO?4U=K(;TVCJ/^]5D6G8*'"
-M]>#0V(=&AIN* TY?HH0!_CC $_98E+*<#(2&;LJ@QI\E#XBF%MM00Q6ME[VZ
-MCN=@MZBAZ\;4\L7:H+X=V9&UZ[>7H%N2VI8(3*O)V"] QUQ8N5AWBQZB9!:)
-MY/(1DD!0PI&4@ZRFG4*"C0<*W!2 <8=:<)Q?62HFLO):2P2(5EE46;J2EMO6
-MQPM/XI2F0HN$B-)8X%9;!6&E4-3UW U>  .WD7I:4S[7(_6OQ!D/?9"7*I.>
-M %*:\3(E]G+7ST*4C(_O5[]3:%(-P0_6W\/G +^?S\V7?ZVK;(:8\S^9%^3N
-MT(M$G;\2);B64Z:7G23-H?ZNH\[S$.N.E)]2M>VLGZ/_JO?[Y17^.MNX@92Y
-M1 M6"]+9<..<E92$_9*J6\$4;1;^Q\]<DZ&$IKVV";B66P/?#M!5D(C4A!R\
-MF*20J<N:PW65@K:3IG@3J9*64[%JI,'\Q#1RZ)^IG1H;\E^?K<GK]^___"Z6
-MA99 JKH5 Z":&R#,PZ)&P+1,\'R(B9Z!@V&7VM'T>-#_]]*#EY&+6)^1@:2D
-M3ZG8^  .)/\,SS"-4K^?7E:N@IID6A\H\_4V9]#&T$F;FU2YJKMA+=L<4!A:
-M31J]*;TLZD=DQ]!CG+*4?O!1>IN3NH-ACO/0O%9:7U*AF]C,G_F"V?5N-],9
-MHI6@L0SFOY:PS 'F_S8ZX(EV@9^"DKI>LHPDPCD0\F['.I2>;@-^;5"AA9<-
-M ?CPSN* "5X\EJEX15B 7Y_LT=3?^M /KII0F5X/D_[3LX99\<*$']!9KPK+
-MOYNMFI.02[Z4K(Y=19;]-F1[YH6*29]P5XR_Z8?#,YV&&XD2T9.]V?YX[]^2
-MQ9JCB@RFDIG;$K.ZT,]BW%@BGX=VB0A)09+8@_1G-N_;F>*:(YJ:"):=^P7!
-M4J<0%N-=6KA;%DM>#K-J!Q04O_W5VHF0?&"]!D=?AE#[!2W[QLI5MFE0>>6.
-MGDU;N9;VR_'5-?7FRZF^&Z:[\@BKR^P/_<?>*$)(?\;*])"'K1.+E\V>LY /
-MF1/@;9!%Q\6:G+9<GHBSET<O+M2Z(/*KWEF*+\WI]L"]FB::BK")4%&LDQ*%
-MS=DC\_&%H?>?#G")@HF5NR&3YL87PTAK3KJ#@CE>7%J=TM;#-_+#45WP ]AH
-MOJ:3O=J0/-7T-LC/)D7IOUJ-ZKA>B,?YUL(/QO*)T$2 BP9EIKF@6L5P1,?F
-M/L_C&OU;2?)(FX&L!?='VL)]R\D)SPJ3CHT!BIJ/4H&B1$DAZ?&7YG(#A**A
-MD,_S>*L1?)L AX)>7Z>10AL'<G[25C0;J8BD?8;\G)>R=Y?'"]L\T!:+AYJB
-M^;-X3X\(ZM#P,DK6#76(6;BI?Y+7/!?$.))&#UU < -^B[:6D18-,O;&]I;%
-M6I:V3(T:C(O@5H-"[*+?T,,V'J9]CZM>K)T3H!TG6\7E^O)#;9Z\BU:>2H.R
-MH_7VH,@2_HC#$-48F1W]H-R0C0H>9I*-2.HPPB T18V<6@2:4;B(I(+.VJR9
-MH']6LX)ZU_/T^C8O[R_3E%U/HMN;H%^3 4_@L)PFBZM0<;8#H9(;C73A-O)%
-MX+M"LZM:$OA5H(K0P?SP/LM*C\99%IJ?L%:\T/_$U=86Y9>]^)6%O$Z#$9;7
-MY^@'T%_+'(L/VD_JGF$:II?XR?[MXC7&VQ*VQ5N[T(=6H,&DJN+4#-Y%UO4G
-M&FE3F*-#NHN:7KAWN^'R]/*MDB.TD).NT)<\'?'/ YF0B8G]ED%Z%T%@_??G
-MO_&4H-Z>W%2<2P)T^]G,AQ&."_0=#K#WOWA.G^/AM>PZ$U!30BA[&ZUXCDO?
-MR/_WNO_WJU>Q@UP3?_ZA2ED[P-+L5\_C?=R*[UA6FQ":F_3\ @9?H-F/%+P(
-MB2X!BI!;JHCQ_R_V>B/8N(^SJEI"JE8MI8#A;<A#...@EJ>?K%&B
-MD(,,Z&?:E#?G*!0215N D@O3[T4*D$F(C8!"NXC%DN:T]CK2J9 0^96XLGM@
-M)Z^!3(CP38F;W->'EG]SIYF#E#TOW^*]J/!YBP/KF*::C 7^\R+^ ^\.DYJ;
-MCT664)_',\?R\_/:N9H0/H*=E(MB1?#%")?T)N40OT6Q[)^&O9U EYL0T97&
-M-N7"A[P%FI^7D]8AZ V3"0_;[,GETP;@:[A]E;O>[Y("8Y8I)>/6P.9'\ZR!
-MB$[275Q9QR^E,)^P6GE5H1R:Z//&Y< ]\)P1B[ZFHJF#M+.="*_A$@2@%)26
-M4WR!I$7)Z+*F_+7WT<B:DEW#ZIYPF(!PE#4T-B[/3I&:G%L=E=Z BI)$\!#:
-MT[URD$F>AY5'P! I(/[L#/?BR8Z.KD2DVKR]I<29V>9LY_#[TU-2C9?)UXB2
-M,[F6MTC*@!A8'_?"U8T$BY#Z18*26NQWJP%Z)L7ZW\57G!G15EB3^R#,IM!\
-M4Z(+3J$\F05TQ-+RDEBL6HOY7A-V@:SP>4&+2^&MHY1\EMB<?8WSNTCD]OW_
-MP]Q>]F #$XV?LI*7\-03$#[%FW!ITYJ'K+Z+O\#R]M?P--&75'R/GK) R0F2
-MN]C8#*\7SQVOFI^=EIR,BQ"D5V-F[/ W^O."FOG0@%_+>XO$1D$GPEBH  [!
-MPQ*XWYZ@F/:O0Y2$CKK5<,/^&G(G3%!>!5(S0Z_@B1N[V/"^RW2PDI-D^A'Z
-M8GIUE["SJ]>1.E^P6AJ-'^+65J00OU*X^YKEMZD'Q_'Z5]7#B5NB4_B@A@Z#
-ME"#V,QKOZ-LV<E\[JPZ6(H3(]C/B/O2/5I"M@"F8C1*@AX+G -U_B\4TCQ>%
-MG:R_C(MX'X+GU,3&.O#NDY.NFH""RH&2(!>#]_Q.UOK7R-/ADWV_<+BUKHX:
-M"8X!"M?5NNP2\:^0EHR.@0F[P6KE0;A)IIW3D5R8\9+W'G9E\Y15DHT-D)B]
-M>K:)X,RC8YVCDX[=B192H962V<:A8B8 DZ^/MIO?FMA>2+_)\9FMTD:*A: :
-M@I*/GJ*-T\/O+=J>"ZU[K>B/&+NJMI>[(< !!P-/V):?G+R#7CN=NG)?TO3$
-M][(V)H_?J+6YH[N*HY14FPM/SE7HU8G3L%-87I6"A)B<]A.BR*$V-\0V8]J1
-M@$OY)'%<F0U5+]"0V$)8C)F:_P+1_L>^TL->"::+\'."F(.;FM-+&1!^>8JX
-MHO>>G1":4R'$+/?N@<BM...@VN0LQ>76AQ^D0X.&F%1RE?/><?IO
-MQ."_I*YMO:B^TNR>"^/*0,_BQ66M0OF<EZ^-DJ&[GPWWPQ[RQ\</D@6;B%Y;
-MUMY)FH#'S>K[H?_1VMJ3!=VEJY) J*!LFKDHE/3EQC8+MI1:E8?SNY/1#Y-)
-MA8F[AI6@JEFA8OEPQ]?95?.*F_((JX"0F[U! P/)GY*6O)89J9B HM?IZ[G&
-M<-NSDP6LG7/I"+N)':V4^?OV<XM& XV" I[RV50!:#,;]A/U']V\:HN:C(JF
-M!YW2R W+ L7<O*3?G8];FVE&D%<,F/<N/B9+B[X;7QY'RYH#Y+ ^VL7XS\/\
-M#\/T79^[R[J:O;J:C+8#P-X^]##D4IS1M%N.=2I2V\[RTG7TE+V.@-;91_0F
-M]\8_Q:Z(=Y&&<WH P;."VP[Q" F6<H:><UNI09X;!1>].N9FO(Z[H:C*;5Z&
-M4VRA^C3VT.N"G:)VD(W2IO&JV>GMP_OGVI:%UHA9WZT[H$YY40')*Z_/_%]U
-MF"FDOIE+0G.#P?K][J_WVHN(EJ7;G@N+B@1'JH<.Q%?1["?RXF^8F)=<I&UY
-MPI::N-LD9^_^-/"Y@I(%7AR7K0'_VI)6^)J?=HB(6U$SE<7R^@&,7!.5I$E*
-M$)&BE_,7\\1&<#)?3HD"BVR27U?JTS"?V[9M6[A)ED:2-),5\QZU/L7SAU[H
-M@H(0KX:?@$5V-)X:_=5<_(A [U8%*Z/VV.7Z"Q[/VQ)73%VMG9X_0Y:>6?$R
-M-;SF=&4FEYS2F[!MJI(YGAT)R 3.Z=FC&;Q)CIBCMI7JF%Y@5:K ^ADP-?)*
-MM8CWKK.W OE!C,*1K%.[G2)0@OC,ZI,6=C?9?[VSA?>A0GO&E[<)!PM9O!R4
-M/*>G2%/#I%G-P]7^.\'VPUILFT.;4Z2EF '2%S+2KT.V^$]\382-R(! VCVZ
-M)<;&GT#80)V&J.FICZCU#=[_!L4VKY>1E&F-EPND7HDE,;[N-O3/9IVMA5>6
-MGW.4@I*7"<C3PA'XQ(\ HI>.B)I&$5F>EEJH\3&5,F7&TI86=-TZ_0"/;?W)
-M,H6<4XV:H0*W!1X3+?6:&+1QI%"%DXJ:EK8KT/U#TJH44XR;H9^=N#.*F.05
-M^L/8L.ZFLY.!R-V0D:_+_M3RV@N9L#F#"$%2$XJ7P48W-O T$6-7G;V/AZV2
-MX_>2X=7<SLGA]FZ4KFQK>A;'N?9+ NOM]^(_T6J.1)>:>@T,=L:^CL$,^,KK
-M[X["G!*?KJ&IOXT9M*BVO<%J;I3[\D'\'$"+!*". _</Y=7UW$I]59.,2P'S
-MQO.0TH.OH)"9M@E)D["6 PCO2-.0%!*\UG+^%P94F2?CO2W&"QJ##;C=GDU<
-MFY6*"2O5+^(.AP^!VI*'1*)#1<VQQS8WQO*#,@R\7_B!$JR45_>.ZR=,K^ 7
-M#[6-Z9*5YVQ:6]#J)2_S]H,Z_<5"O!J?G*:(3DO4S.A\TOS 6[& LJU:_%H!
-M7E'(C'K$\KW"/L8"K[&3E5.=5L,!!L"=N!I*3+*!^)O8\Y<WY<+QG!ST!4"Y
-M5EM-CC\,_P^VN9 1W+:@EEEAFEGQ-M-"K\\4[H)L II'<E^%6L'T)=66)XO6
-MHY^SF]V7BX^@T?Z4&_73BZ2&2)R8EK^24YZ@W(3.R<K)CHP_@%>(P4E[]YM:
-MPC.2D#K%8XZ%17/7BIB48GZ0T-::"EC]ZJ\TJ5A/2;*[C7'T$E:9233E]O_Z
-MPQF*5'D6B0.;%\L#,)74GKU0F)H8T\2YT!JRQ194\]^FHT"K.,!(Y5;'UM6!
-MD[V.>98K<C;ZQ,)WY/+!>*M/I9U!BKYV\6_$Y//GX,:ZC;GXGX#7IY*\6+_D
-MY/? &Q\47D6_KH2XBIIXP.#6S,].Y!?WD.POFAV'<=^MB>*5X_IV45NMCY61
-MCIN2%F2P@O/*2:W[^RC1" J.7J-*7[N[\'0 ^L?"L+ WUA5']E/\EZ.#D\'7
-M)0@02$NQ5I$#B,J4YO:V_L"$@:*4EEV3O:PEK\W_P,"\5I*]3%&SB6(%FMER
-M,? Z Q!-6I17O&UXGY=<\^34Q/?RNW1%N2R3F (E ?'^-7/T]O6)E+^_@TZ!
-M$;1.6VKLR.3>P1A.A9^-O59-+[&65\7QYN87L\>[NI2BLD"MN]FX=GJ W@ 7
-MT/[DV<&35]U2F:8]5EXS\MMBTL36]N6+4%)Z79: B:M2[N?0G%A3O+X7FH,3
-MZGG%L_;"AH.X3)I7FHMECID)"0_05 F6GI.YBI,0=X/;L_EWF@;(2IIXLIZ3
-MQZ9ZN</JPSINTHU6+8*JIZVV14KQ*?5%[[?;@PQXA.\M[(*3FICMZ(U:S,]1
-MNUIP38R204JAM]C:_C?OL^X33MK\A;I>67Y!H_VS#./[S^@+R=,(DX9;69H,
-M&9FT=J:[\>8L]?HV%Z^3U)_]G8H7Y0+"XIF)]%<P0WN+(__^]O02):Y!GY&6
-M\+P9:9!SP<+%XKQ00GV65TC)Z/60P90U5\9/8FF68YVX[0:27X7,Z<$[_L^3
-MFFQSFDJ]TE*?V.+'U,?5S\=,GNHK!)2O+*"+F,S$SV+%PH?6FIR#C:GM)E:6
-MU^359!0PQZVO_)58>H&3RXQ06,S*ZH[.'N,2RJ<*':.3L)*N2J25^L#ZK79&
-MD*^%HYY'E*"(4PG<\<!X6!(/?G=;CP+&_?HW[:#XB/.MI%D)F,&<U^##T-RN
-MPXB$_+G8@(V,@MKR//!$0];.CKAQ&DNX.B>?X<*1\/?;ZIJYGWI3AE  FM#[
-MD>YUD">%A%8,35>5D\(66O?%[0,6V]))GEV :9AKB(P:":4[Q/3EQ@\:K;RA
-M?D>/V%'CTAL0U>VB^M?B;]:2C)R"OA9*B;&PC]T-QM5$+#?UJKF6^)"1J9]7
-MP_43S)PZ%)^]JEG'X%:2--OS/%B"N:8*F[VI@+W2[P+$$%OSD5I7@ZJTC9L2
-MDCSP) ?SCX9 0ZCM<EI1"$<TY]N6T;M3LE+7BIZD1T&@DO4UEA;#N;:6O8T>
-MA4"@5$%%+,S5R<,#CM^LBIZ.G:O@=HW8ZG#Z<_/"CI/YNUF'JPRTJ[I7<RB>
-M*L7>0\]0B5^NBYFRDWJ4P90KT9 3%L ^"UC!A)Z2FHFI(_S3MH66_JESH1>*
-MQ<(GU+KP&)!)V'E675!9@'";R0_0D_Q6DIM/D?I*I$*;R?K\_C_C4(<4*%:"
-MJ5Z.%VHEXFSZ_^:XI*RMNY*ZD)./V\/#=K76PT7S_&Q'&HT)8%?ZTQC-)T>/
-M\83VK)_4VED2IIH8[??O]^#EP9.&C9E>L&=2"D2=F,SZS@H,[<8!2(>\7T;(
-M,+LN@:WR6\'P9_*5EA,<D):1?_V^PL'/&\(<V: ;EIB6J^'AM?HEQ=F/DGI]
-MAI,64[ -FN'>VN),2!J1=Z6;ES+^KN$S];H_SQ;+7;*9FX^H6E"ZY7(][\0C
-MF))IJ_B#G9>' )FT1OWT-\*I<G&,0[^%1ZB:5M'J%2*&U?"K$DP4BRRO:I;R
-MN-G^\2#G]8^M>%5WVE^9J@9@M8J@SGH.*,!^[U:YFIF(F9:"MA1D5-KATA-Z
-M-*/2K)6>^+^"F?*!">]0F("4D3N54I\"L^4VNN;'OX!>+;))G$*YLG]'PPJQ
-MG%"47)!SG'>YEI,$D"W^Q<_0&-JRBW91!9>32(5^+?3T(ZU/DHD""MVV<XWQ
-MY!4PPB>#@W>:EE28;XK*VK\![<BNS0[)[UK02IR2I5.X5%K8^C$ZQ._2IWAQ
-M6KQWN4.?IG 8H<*ICJ!$[^/;PJX0BHK;YIR4>#Z30>HEQD9V45R*@AB&!8J7
-MQ5EA_"I86DU$D+8;&V)SEA86([S=V%?>O;Z2H9::X,,'%-_PDEL%],FK;:67
-MP3OU]OS&\)MVH'V2J[IPDX@5Q-'U^DN+5F;]N!+6E_-']1ODQC;N (UWAIV5
-MGZM&H!+9"(#][\G/8F=6D$37E+V)1I8=T_3#-N86<RUR7+^"Q[M>$L&2?X<M
-MP?X((%+QP]-5O(68E&M#LX#TBRG#_?XRP^"^\D'[@X-[FU%[4-!?D8:N]IV9
-MJ0'287[P-\*9ME!%FE"J0^92^TT9TM3829N)6G&H411>K2GA^)?VPY:/I\&2
-MFHZ'E?+H\Q3%]_9'6P^ 39JYB[#RC<G"\[#T.Z*:@IY&0Y*-0ZV&@\?!S0+?
-M3PB[E?CL;UAENJR:2/5"D/X_[^-&GD2?BZ"+^8*LL$+70L(H_L7JY<&[_JNP
-MG)Y/"Y^YC[\9%\'B<G_3F%RRD76U )W#_0[3T%20B8(16YKW\^?GYL39K%!3
-MKJ"EEE=B4ABCSML44*)V=7>(@OURDAK98&;ZX\#VFK:278*1> Y?2,<^&3/F
-MPJJBN*B8 H:0BTW$].;>=]_1JU(.*8FZO8<IWIL77>T*SL/P0K2.;YR?G4J$
-M]X+Q<A&:QI7@AJP<M4N$IQ?>HIZ7%]S;PECZ_<_62(85$(.2DIF+MD_WK=C8
-M_\6VPU1(B+"R&9J340/RT*_PD'NP>,.#Q4(U[N#VVYCUDZR.D3H"H98(B,\'
-M\GJ"AYR6_(!SAH2#U_;UOYIG5KN/H'T\BJV<6^W!$OGN7\*2CZ/[CI"^$_.M
-MR=3%E]+F"V:R4=1CN[U:N9![Q4 !#HTI\$.4S)0$G$'98:3[$J/WQ/K&6:O-
-MKI];I[J7BK"B5NDH#!9.P>$#"[E?KHJ2(YNJWL.?L0*^[/IL.B::B/9\C9$ 
-M5]K\VN95DYJ0U:/^FU/_]/HD[?.)B%&&AKE FJ6E]M"#S[B\2%*<MXJYCY&Z
-MF^/4%,0^)Q2*Q&.#B;^N#H. )SK5DB8#;YN NHI"FZ95@*$DU^9TP ]&T)&>
-M%484BH)00T$JR,NM!MOOIE^45SB90\!%_1K#U,0L>@N=GCZ*JII&NXJIHXC1
-M[$O'T<X6RI)#>@V"F99JNEA!E[T(]_,0/M?@F9C4'0R$B!KJUH?P7Y662XR*
-MJ]T-,?F[\)7+^KR7M([S X*$=!?AR=50GZ6?V5:'6YNCDYD#ZC#VFN+9KX6S
-M^IIM]')#RJWD=T!VRR\'K(L;BY6FESGM*L/W]/#!1)Y]C%Z&F;B1CXT9" 4)
-MY-?:C(_^:94.74BLHY=!]%?;VB3ARZY4BYA>;HARC*:[R0++S.7&SH\06U)?
-M]X.R&X(:1=I#U/)VQ&S#P_C1H9VEDIG/J=SOUHY04C^ <1HHI=)E$"_^6_R&
-M4(REE=&"@+>M*L<.W:A3UIU2 0J7<9N[YW0DX#? NYNF$%><KZZ%LUW-D_[3
-M[A":GY) UFMRGE#J5?(L\-72 (\6GXF=4H"[K9:-@<0/R?_ P\_.5$1BKID-
-MJ;?=T3(V[_0^#T+6/4J^&I*0D[&0K^J7W _1T1O:T&:OQ5.:\$:<EB. FZ&P
-M=NYLQL,\09O75:.:6,D&UQ&,<+1YS)":0N+"M48VQ-NT4=2M-J%9NT).7=CF
-MTSQ/F;Z/1?&!NJ! >/'V^:+ZSV(+!G@9EDDNMJ*$$Y8YQC>!;07!@T'N_!JB
-MC/+@]3XZ1!.)3;J.E)Z=@Z.BF26,^\E)Q=.)3H0/@XVADJR&0.,9Y67OKA/K
-MN)M8E@(;\@FF]YL-S\P#^NTK\-S+#<W^NDY"B)"BFKK-:_3_]B8/KKV2&UX3
-M@X,G"Z?ASAFQ^0^ JA=3\93&\%KQ>I:#E)9P@HM,FX%HR2+<AJ.*G76RJ%=-
-MQ%O7P:[WP$/ C;JLJQKCF Y35 WK]^;&=9M:AH.^*J^4MP6LX/WZM"?8A):-
-ME,:V%;JXE?<@S G^_0G4EH1=F%E>A<=@CMO)]C;[MY?SC1Y;H/H5I_K4I (:
-MQ0/N7N./R*[$G8:]7IA.VI)6996?X3314\#$X06;IBZ6DKA]!4;/4%R<0H:B
-MV5JHP2#5,# T$QJ6NY=06)Y-(_2?!P-*XI"<V+^F(*A9J[.7;3_LUN6!^+B6
-MK9,HTK^_LXW3/NSWQ?.[G&1"GH.&!I"*X+XY9A#4SPM$O)^'6[\-DY KV1?I
-M3_Z;4X.[G*Q=B$M'+(:WT33_PL)_PT-'^**J!J?Z-!/WTO?7Q?W(&LG:R;BM
-MF0.* N>6"J&>^I#3[)?V1::4'%O?!G%3J>T6PU3?L8N4EE"(>04V+6X6;D*-
-MN;2[,@E3JV96BL',RN :2%*[6I2[G3@/FL%R,2+N1[BOC[FK6><3GYL 83?%
-M[^ /4,9MERF/KX:35-LZQL?BML,>E9?OS0Z.QLC"KP6LP<S_!SH]5D2*1I/!
-M"^A5D^'!]38UKMC;#EN16;"36E3"3Y<@PEY-@9'+RLI32INSEKN+LG.5EM?B
-M\C/$QM;/JA025R8'D)DEUM,03!:B6[1!.EV,Q&[$'? /C\J2KJ61>8+CEYGW
-M[Z;DE8B47*+8F9LH%9?9X?$^\!7CDJ6L7UY37Y9"[(VYQW0_\H*F0AN)@8Q.
-M7H'@\I,0Q\1%"11,G)3&K)JH59U%U(3E U$R;(>]OH^?RT:Z]*DA\M<6_!/C
-M"YZ.U9N6SUJ0LA7[F,+(P\ (T>*TBW^Y>P/7NUN2E!."Q^)CP/?RX53T"Y%>
-MA[>W\OS"R$BABIB00:@/S1GMY_KN\Y#:GBW;O(R_IEY?V0_.VKZ47X4#D:GZ
-MR'X_PI(T[>W'79M0N9>.S;H25KC@Z>TOW<E3)I8)>;B^DE+JR?.4]K['][N0
-MW@VI?>7GX#!=T2P!URROX$:$U JJK)4;P*3X[6KWK_K Q9Z^E94J1 ^,4D"-
-MG^7+Z\C$"- +"@.X?J*(1<">^[.\*<*1\Q_:T\/<\Z3=!@B#FZW<X3A>B)_\
-MAY>+@.4^U3(EVA5^D%84MKV>"ZP.2*G+(-B8BYF-L'E)JXA:$O%QMM?PZ1.M
-M<GAZOELJFY*61< W=;?;#9647URIBKO13$#CN-!3] 66E=6\CXV![Q3TFL'5
-MZ_T.]0"KE?"7BXZ5NR!TBLK@\.0:XB52J+50B)2-_I)QHLGP[?[NQ)MW&?&H
-MLI];$Y"1*X) %$Z-5/S;[/H+G(I0G/2T@INCZ]-]NJ"3V290_)M-<L267G3 
-MJ'"D6::U7%MACYG*ZT_*_ &>L59W>Y=X=%+RX=3]Q.[!FO!AFMR-AH>:C +#
-M[-?B R:RDGK7B8:'DQ_9FOT3M<0C25I:@9\2@9\B1=G-JAV6U/#2/O6>[A::
-M%8>[G?LLHM3Z[)6C1YX97Q>.;RI1R9.+V_@@Z_C3!%OARQ^;GQ8FZO:S@;>#
-M"/'1-9XR!_I:\X^&4LR^]P]PX YV\L65EYF6\;Y]%K^6&92@WD>2"5R3>:0[
-M1RGU!,6#GY&/E8">J:"JH^O1EL9/_,#T.Y#SB0W<_X !?O?&]EM-IG9;"$NL
-M!'F\T7/U;? 6]HET7:R7O9V[;*#Z\1W_ PE(MD4/BI1GG[R[K%:-#7)OUC#V
-M VU>41C;I>O*U*RZDP$N# (9T@S1<>M,<?\#L#B9@BB4'0=R[</EO<&NA!)Q
-MII"65U#IPL1<EE:U7HD J\#X?-?E^M"\I%>+\XEWDI 5DLT/*SSWG91XDM%2
-M?;!0R_#KY*7=IN62MC.9&HM&D$*/Q]+UQ?#13P6$F[&[K;9++*'Q].00QF6"
-ME@Q61ZA!69&7@P$/S*[<]]WK)H_<2[Z!JZBFO1B4_.ST>@*GG(5?JJ8:@E)L
-MI%[A%\1X#<G<SU:;UH:RLAYM=ENC@!W$Z&;6D#_&A/F"G)"0DH,%5\$SO%F*
-M2U"=F8#0\]73[_9UA:)3K?>!&YUF=9"-*=,$^'&#CU9]UE/BH$$7]K%UP [0
-MAX",7Y9;CI17O]3ZE<7V\R:>8=-"Z)_^MT7)U.:B\OK;B0>1ZHNLI*LD7YC(
-MQ!U_3(O<IU!Z19:ONPEFL'_,^/D_\,?U2UY;<)*2OU&0J9^#9*X%S\X"(=K0
-M1[XM55>'AYQ+K92I8<1'/C8N(*B@LI5&4K"K<6_"@L66@84F$7I^\3.DX^0T
-M()^FL@6$G8A7E%132=<.W:Q4M)$/H(X#.*>]233TUO_/A("B!IB*N46>LX[R
-MGJSV<\B+L)"*@L*-AI6EQ2BM%^XORI]2F8IC7:UK89N)R2CX_ML/N8R 7LQ%
-M$YFK<Y!R\7&4U.WFCXFJOW"WG\<,E@.: Q'7RD_+Q_K:R,,.JX""FKBLH<IR
-M%_67^6PT-L4JA)ZMGE>:NUC&VM&J69*ND@CZ6,$2Y7HZ_O=,HI'13O$*7V*>
-M>P'7)[&Z6?.[4!-20H#RN,,^U285VPOK [*XG&UX-E:MXI0F[_3138?@+1*X
-MAK6FO $2DW?_Q:>.@I6$GT>/2:*&7Q#6R]<+0N(K#Y .G5)$@JP6J-+$]=_0
-M,L,=!JV5F :=6E1 I9K#S\#8*<G[]PB2MG[?D[*;5M24I%?G^B[OD\8;K[&A
-MO/ZCFG-9!]M6OY&;KU)1 [K8Z!4]]E!2G="*A?>1_'MDED,)5^78A FR7U1S
-M^)=B<)C*T9;$&AK\FP9F"9KO5E. X C^]_0DZINB::^?B)X&BPW1<A&0^I8*
-MOU6%C^*N ,,@&ZDGU,L##NL+CUH(A)_^1<J@5@M9/MD^9JZONI*Q^Y8:3;G9
-MD\Y*Q]V=J"[*Q@480IZ1%YN"N):4X]:6\\'&]CO"0I'V6%N2ERJ)\<_8\=Q4
-MH?&7EZN8XI&MQOIR9T6=E%R-D)^;B;1YY4/.\IV0(ZD4=:I"H"92P./NQ_).
-MLH<$N[K3N4?7NTQC,[DVU\:JCD3ZW(ZZ=Z$Z4MOLYC8@\,^6AI6O?A6;H)"Z
-MK0@!ZT_"N>[SE=@)GIV#(%J;6/+S-\)WTY/>N8N+SXJKLH7?D0$,V]; T]#%
-MXX<OKI5;FD$3B[A^N-BJ\S!E[D_Z2DJ]L'&IJ(S_PQ0=A!"=DI-+JPKK]?HV
-MQA4-E9J<FIBZD)&:"^2NQ1BL^:)==G+2NTA6^H+3W972ZM9C4.:#=YZ&CA#>
-M+2C!=]:&OU:AN;F _GR3A 4YI77U\,/I0IV5AJJYB:.6&5.<31?<Q1*6FY@4
-MAI^)KL:%K]$;U,)EUJ7#7=F'@9+/6 :$&MC0K &/Z</D*O:MA-^U?HR*N-GI
-M^YGC]AS;\!;ROZ93N9>"F@'GPZ-0"DF1F5*G=M?)]-%EE_?AF%"YCTZU6+UB
-MIED R_+\S_BV%:7Y2)*@58D8_ODUQ>73[0:KVQ(]FJ:+BLTX;9?7\X=7[%.9
-MF)(GE90'$G3%[]KPRJ75@-?][+J0E_;0JMS7#<-1EH15[ZEWGXDBE=NE\NWG
-MPM7"AYY5OSY:0IQT8)I=P*@)UL3,50OPD[O<LXJ2AIA6IHY;8>C7DBX_[HZ4
-M(%<FHYN!&?DCT;&@GINWD9Q_S?OU6^_V\W_2LATUD4)W9K!3<0SEUKKV2%U:
-M4P+:B :8P]YML!37X)*;@-U^PH8/DP !,^;]\^>3C\&1JL^_E9J YVH\\\03
-MVYU41$V7BHV#8??S!^[-@U['$8+P5:R?N%]:MI:KQS/UQ.[V8TF*GZ**GXCQ
-MMJ//^L%7V<YDQLNCL-&:C5^>GM.Z<FA.7]?:?1K?^@4(%J9TA *_NM'Y);B>
-M%%)-5YU8FM/"U,+BQ^O1@G'U<+"^BJ)W@_#5"/!>5E99'XF;K680 O-H%/9 
-MT..+EH&KD@*&5I%EQ.0FY';/@M26FKI+EY*;*N$V'??P9@J,\H>J"YV_C6 :
-MJL#HR^S'*)0CFHRHNKH=H[@'N>?RU3#BQ8JBGKN(]J7G%Y9LEY+'(\X*V<U]
-MQ=22A[%UN[)CUEYD5%C(^F?7UGX:A=VCEU^@@<W7S($<'(.TG*>2@EM!DG3B
-M,"7UBI.R>YQP^I^"FA<"R?,0][961,W:EE#HGICA\L?V<D-<BY>XGI.*AZ:3
-M.</6)O+FQYM:8+E:$YQV,8#,T.3W_G/;%Q/QH(+X7Y*LI8O S\W6Q1+CCW"J
-MC$2RE(BAFYW'\??7UF#Q2HZ)07(>QZI4D_:2\*BJ0G[BUJ,!KHBOEINEC5Y:
-MIG>=\7'M6G[R\5FY@="F@OH!V,\ET9J<BHR.@)I2Y30Q9<#UJIJ+F8DVEY*X
-MS*3_\M_/%GVC@(_> IB(@9)=4OGV_]>6Q%FP[/U\F9^FGQ7,WA[N<J.JA[BH
-MG[U=LE*>Y73'\-8T\(-$4:J.TXB1N'"]Q\K)#VD+5H[SGZF,GD"]3)^XV?[9
-MYO3D1SU?N[=:A8/"GF.]B\47V<P>Z>C'2+BZ7)*LGDV24KF&>LS4P])FTD_-
-MBYF)I)>>KN"L\.&^@K2MG[*,]XSKD.[N.^F*M*9,TEJ:J8FW@R#YQ].*B<F9
-M6EF^&Q.ZG=*2Q+J603:-)Z8#]X*&!9^ \O[YQB?:JJ2$#UPYO::RN(F:P?!"
-MUAF$I+A,3U(!FI):20SMK,[YV.9OEIX$5IW-"Z"WMP*B,_ 6]A&-7[$#4I:3
-M^YY@$$#!R@W7_AFJ(^")^*F3'K7+3D.@?CB'DC3&.G?*FE6!_36GEH*@[J/V
-ML#1+GU.9B:CQZY'"?CY8F)2"Q;/PBKC@)=K(S0>[C'6>5,2 KAU,LX[1\^:6
-M-<G;B)9YF9._7*6*C<+F=2_;CH-7@:V/B)Z5RIW:]'G ]L;%:5^$1J^VO<<)
-MVK[!COG?SLL0:0Y89(EX 0JAH'[1\/,5^_##HIXMHU.%HY+2;'I9&I8)Z\Y?
-M3P/&#\85D+Q&AXH+K%H#V,+%NI_Z0IJ@])&BB0*(]?GQM80)MEDU]2G#C6+]
-M$_HP(X^6DGB?O=K7,%J?T0-0X+RAFL4/M5:#B/^Q\,+LQ[_/T[Z:K*Z*0/A.
-ME8VIYG5F_LJ#$+BXFIFLLGZN J3YEY F8U=.E(!"OL'*JH8+H?S=>P+/89T6
-M4+F-7^T2B8ZZS<#4^C;[@5*V"R5\6EN2PJ06F_'#^<_0R<N%R]V?B).)LXJ2
-MBJ":4(#R;.X^]L^4>+.\CA&?F)C))</%@I)?CK2[J\G@)3H6LO.0$9!17GM3
-MFRBRN.%#Q=/V@O157;&.NSG?DNG^]]7& \@*E&!75DBJE:"OAY;Q+_K%@U!)
-M@7KK!Y1S):'T_/32%,&,U8V4:JQ7@:&032D4S8[7T5"6GI_H')*%C\86NM'0
-M%S:\YL:HE:[PGM!KJMFXI;'UJ$""3=#3QMF*J/\RD'X/RZ.)DE<AH=%S[[K'
-MW8.6G(:8BX"CPRO('%.R.:6A6D] X]%W\'?WC%.ZF[I5^E*IS8NM MB"MX@2
-M\09UF@LZ-GM8_I7N-<,2 _H&GKQ'FAX E.&R^9?0(N^40"NSHY)6$)0']A/Z
-M^B_O62!0G[Z(K6^&EH,#*E\O"T_01*>:; L]OHL@0(C(D[;V+A?//5B%55IR
-MN8."A 7](LI]Q<[2]\;)BMBND)Z6:H.0B:8)U_.6^L66]H0!ED:R%Y:0V*]1
-MQKA4%%RD@IF*\3H1UYIMD+ QB@T[G(.:X(_1!4\ TIJ@HI?5NIP=3!6[\+ZT
-M\B:%R*U7EHBQDZQP=8K0]-7OQ\.O589Y48^H5MJ>Q//Y?I;&<PW5KYF<F@'8
-MLG"ZUPXNWWM%$;D7O:&IF@F3N*(SP/0@Y#!FQ8U2G(,3L(T;B\".0M<,T X1
-MR\!CW*\(#5#9E(D^4CF3N?6:\^7Z[J>*2#:I4_+3NQBFV...A$1%MXG3^T7 
-M]>9DQ\-=@]N=I:',5[F.@J'O!]0.4%&>]\N7UJ&<M_#2M/9[T3*]=ZJ"GZCZ
-M4[>%H.CEM]:OCW1Z_JFYEA.)[ G![*_2)\"IGXY,W[@)P))-E]C(W-=9P]8>
-MH%H&:1:+DR&.?ZCA\7HZ<@^ZAZZ;B[:XPG>6=@##'D1>&,[?C_F/TJVUB+(3
-M>[23L'?-.\7;\//#7DA!A5N96H+@[J>TO_Q"OW^*D[\-\_,^$"Y2O?:06=Z%
-M0ZJXMET3(L?1^GQ>KO99B@.LDY<"P_-7]>-"DUHV5XGK#@6 NL#DQ1.?P,J6
-M8D-^"JRGD0G%Z_'NF^_+#+)>O>[:B2UC\K;S0<;_[\K2KYH0#XE^'+C CZKS
-MP.S$-??ED79/"UJF4_N"Z)!+)_Y$0BG,R,NQKH>4H5PDCUQ;@(V8\;2G-/80
-MQ_QZ2E5U\5&K$U_/'=14BA\.B*J^U^G=E_1&09&4HHREH5H N9X(Y=3RR% (
-M^C>5H:R-J:>)Q_8^Q^_SA$V"L$*#V/V5M9[7XJ7]QH$0VN)8N@_/EG5ETQ[1
-M.C)FTY:/G$!?<LR3@*:]+4KLR4W:L!\7T%9'6$%38X^#R?*Y1N70*ZM2G)>6
-MD*]<DG&._\,J)=?("__AU)*?G/< >Y%8%I#&J\'SY3H@Y\B<D(O+D(C!@\''
-MR]Q0D:&=E=%6EZ#V]?YW_@^JG!F=G]U3_VS>?>'+SU!46[N75J66^\'6C^'!
-M^)+\"]2I=CG#DXJ-EZ#D _#LQ=?+CP!ABIX2O[:SK<C"L7IRWMFY=8:OOHV<
-MBKJ:?O45W*-]+UQ7H)@ #K^?3X&7CUKVT>9MP\Z3AJ\VF[*+*J+X%KC9RJN,
-MT?C =YR!1Y&@^Y*'7K*&7MTA%NS$[??#&=+1A(; G%K8S74=K%A)D?> FH,3
-M(M#2)!H#FEB*79016I^PI=? P_71K=.3G=N@DHE$L)<!<]#&4-D(&U7AFWF/
-M7Z7_/="R)M75PZZ/L8.\8;J64XHGOL7Z?O0CKUK0# +^!9*LS[_8_(S\_P=V
-M@H>8Q ]=JXV  G+;$A#NP,""ZJY_BKF N5S:9 "O2J+NPFXAT2, 4X>%4YJF
-M&IZ*>@:;$-@XQ9K^PZQ<DIB0DUJ=60_2VY"PGI$VG(.K1,3W%/[RPH91D83T
-M47R=HI)8]=S;\969@+U?IX.I@M!7<I ?,#9:]=.5X%=[BY*7GX>DT97R-JC/
-MEX&;JXB:?H%$QVOQ=9_W\)>&D+[O+(4 JYNV]4C!;)[']H^;NA_NND:M8)[#
-MY\/U^O62 )U-G9<:4YEWBJB6><2.R<^'RP='\(]:K:.YMZN>U R3EW-^]Q >
-MM\7]H8&<EYNIUQ+=\[B%E-J??;*XVLSKQ=90->:N=I_=<)6<6ZN0E_$)FU24
-M5G&_==TYD6S[\R?!__93QQ"Y\+J#NFE7EE48)/0U/_?"HUILEUSJJJ(8F"<_
-MGMKDPD?&L%R-F5.6VH!6FMC,[\[]VM"7UE&ME/B5BNQ7F?5QQJ[PT-M'B%R5
-MF9 [2!NH7ZOM_AC=\0D"XQ."C)&0JJ>[5\![IDOB_F3FWOO/C[F!Q131 ZC!
-M'_525Y9*!I30G*N'T?'$590(F%K$?U62W%MDGYJC XKP=[ "VQ2#7"JLI%-W
-MX^;P%_7:2]JT0[NHFM>:G/%KQSID$SBB#*E:@IW5LX@ \L3R+A;I!9;Z9!R3
-MO9NJIJO(SDGKUQ#3KQ):Y$VL3(,L!';GUB#TVA/PBY)=@TRRB9J>@*7[<4^H
-MW>O)^LBQDYB5_TX.;HR4(:>2P;!M\O(^#HV2,YZFW58OR/\C%8P4DH6U@JFY
-M6QCU5'IOV[J1E/&RHHB[JIHK<4G8X\B6LA]01SJ:H;(?"4+Q]F[S^%#5H%.2
-M;5^/DK["ZN,_[@B#M[)_BJ:_HD% PNOT]G[$YZ*<&KB4\D22J!.K38P#V(#U
-M'+]:*D"#F$]8H=^;V3IX]?+CPZ]8](+8<KN2I#C=EPD$K,''[L/W@*-^%+*V
-M$IB"5A).J<R2?.P>Y-%6@%>MEYU<5\D#Y5:=^;^;DZ$*V/'"]Z8V9\\]EE*8
-MI<B#\[/TN^$#T/B44:>-^G5:>K12E_,YG/OPP1R2GY"9N#M<D*>LTIYT_^7V
-M@TZDF8Q.K9N*O.G?_,7N-E6#$H0:E/N.AT0GN7- 3@BD&]8*EX1,6;9)O8"W
-MJ<WK_3XEX\+3VANU":9;4M "<%ORW]'_"P3XS_9"J$6_NX9O?'*AD(,DWFSF
-M%O  KD"41]H1N:O9R<$Z_)NQG*:%BKT!,\;G].?;C+&@A*6C3A=QTD]GS*/)
-MM#' NY* FYKEE8K'.]'O^BL3O4.VF()/1XV#C=+P/SIW@L>698B:DUJF$]C8
-MZO3@.EH3OPY<K(Z\EZ\YM@O#Y\>J]@+4CO".0+]87J&@58/:T#TNYIYNCZB%
-M6TI22Q>!K ^IV,/N_OSZ)4/+KH;Y6PJ>@YIPK;>[]_&5W97OT/RB@YR427J#
-MY6[U,GP<6JO6_9Y?Y[#M9?7FCRHQM(:?L*A7P))9#0GO$,605EM2_1F?N)Q7
-M6]_ME!?0D*N489*+R-B/D[Q#'OE\O\]+A&F=_&JN7[6$RS_A<_J6XJ\5K( "
-MS8RJK$X7TTP,W2WS?9];C-7GF@WJN:97 /+%-\!NH5-8?;ZZ5FZ#@C/TD\VJ
-MP%6IQBG;&9D:VU\8G8-8"ZG%NL3C[L7&[\-=]+1QE%F+F]+7\-:?EH1YA\BJ
-M2W$D_<04.E"0\="0IJ":270&'TT4UV#\DEN4OO62LZ&5^X5P.3;2SQ.^^N(/
-M&NB3CX.!I_/VP!#"G9>B@I:*FH:*B<V1E6XOE/*'1:^$0II$X(N@FO?5_XDL
-MP]&-HH6(#9Z?CV.G@-G:]]#=P"Z'5EZ33%^[FJ&II=O9SOC)K,W'8]1+U?MS
-M2J6+7).@M8DE,L<Z[_8K.@BQGYJQ5AL@UR?TU;!!K?+W'A['ZL=PTY)E39VD
-MK7/Q_IEX%;,8R=K1F !249I=_[O&MEU-E&R6[B+)AP8Z4IQIFE.S5&'C_M(0
-MTIJVK$E;GQ9,=JIALNTV;#;#EZ285H?>C1G %Y#%3(H>P\+\K?:=E8ZME:"6
-M!IC-^F\:UO+&G9(-GRJ22HZCK*;:R8(!A^78EO")CQZKU?SV",)VL:.S%9[]
-MX!_R6YY1BA2&@)B8Y>J%')Y9E%VB1T*_V;)$^O:TI1@2W@N04M!XYMN8A\].
-MT;Y9D*\.@P*=DYI [=(TP.0+XDO2)EV627KWD.0-8-[2[_#IG8S3]@/R]!^^
-MV7;]+^X_\IJ=JE:KW%Z*L+J;F07>*T[@T$E5M&"FAFE;H@YYV/_VMG7_]TT'
-MKIM>5[J:,D93@M#?@-3.QLM7&:J5S5_^AHO?GJ;05Q#B]2_]U]E$EEJ<E?.*
-M^^"CP3.$0E)%38FYMQ?^UOYM^G.=E!Y4@,B3EZ6.4\<NVHA,M;Y=U-&LJW2:
-M5]C456_'P-2JEH&"G$*\$EZ,4O:5.KHG8W:1O:@ZF 2_'LT^D?W%[\J#5Y"4
-M28:>D8Q40-M5@\\."O0/6IY(O*Y!&Y!0FLSD[](WQ_:)5I2*J?)3V((R#[L,
-MZ-Z% 2O"!? ]AG2U2H>O5M(YU'CQ=!/WY>[:KX)SG)>]0Y>)!.#X=(BAA4^W
-MCO]$T)#P%?#EKZ:Y^Q#RO-*5IJC!A/$27).1O:6QJY>AL[/A<!,<]DG4G\9@
-MEYY;7XY>A&&>Q2(P6H:EN(-9S8QPD,QR]\:Z+G3;3I3<Z.,?[T:MFX#!"OT+
-MJ,;&B[/6YC]=FYMYEH+!N-#@,I(#K9B)B)> AY> A-KXR?_H+JG+ N=UJJC\
-MH]8@BYN>[8>7P/+VQ=7T%Q^PDYRPG9R)P=3%R$2*IE&6%ZBQT98U-O.?SQ9R
-M0927E1[[:/.3(=3"_ 6<])2B%]I2H%HO9?XX[C? T)%7DI="*-Z&LTW9*^SV
-M.AJ[!Y!?4$=<A(J%S.OO]N8_RIGPBH2.OXZO9G19TLP([-?U]IE5C+F-!-4Z
-MP_!#\1#S/>#0PH:T7+>SL$.!T8"F4ND&Z ^+PJD;'*M&3(52LK\VGD3R0PCT
-M(7WPV\\<=I>=<J"LGLF=4-&'N%O,FX-:-]C&+=IZ]].\-IN>C)<\K9"FDJT#
-M =BP_ N9D'% TX'07RW"<\32"MA&]:V_*X:(O':.#/.A^G;SNU9AEKR*AC9?
-MF-.R=OHTL,J7>A^MJ816I_FP.L?\2,_\P\)%<$6 CI*/*Z!]K<$D=/+V-H.K
-M7D]3POZ2GE.L&IK-UBP(Z?3EPSI.Q\:U5E0)G)0@EIK),#C_]O;.J$*@K+!1
-MFIW!5W$1G)/RGH^16%O"_O<N-;7SG/8BWUY4@ZNHCD+'!,#0NKA4/Y2<FGBH
-M YUA0C'Z9'?<NU+D/9R+CKHREXTJ^3KUH9V6X;VZ@U2GDZ1 NOE&%&7#;HRL
-M38Z2%9.F!D+'#E<.P\'!BI!:3J<:05]CF@'0Y.<0)#8FNH?PDHJ7DIB49%99
-MX8H  OH$PNKPHHS97ZGRB]B>[?J1RQ+CQ).:RIKQDYB:47A!"/T X[1P7MV2
-M'?HXK>HX]NYC\:J "(66")O_.'R=C</3R*I8]'N.BX.>I)+2PI3M))?:V9L>
-ML8" $0>.5[@)*?;6]XJI?KJ=O(N.GY>>]RO5Q/?5\QM&G8V?,[\+(%Z)&2S9
-M_W[;4XJ.A%^#7[[I8I[^S91L][# VH/:#9BJ':V^.GF2VLK^F%X8]M_@YH>/
-MK)L04!*;F+F/B2=6_/HZ4*61D)N+\X%2>-G.CW&,T[XQ-IV87]+4-?+T=@;]
-MD!*6E+$ EN"DFN%5#\F8H9.K=)3<<JP?M\W9_<+UI1 .D+A3%IL]G=MD*OO 
-M^]7J@O)P?9A*OD+SH$W"_1?ZEG6)SZFMNK)6N*@ FR+,SNG]A])9EK_.E9R+
-MBVF'@?'6T_;5D^NBDA43]A;'J[?L)I/APF0!!\O>$Q&;WI"7\E>3>:&@CAU@
-MP.3L&_+'"E)3NTV0\JO'AR/PA(!ZNW.U6HC$Z-?^]_?;6E7?AY:%@Z\YCYO3
-MK]+6G':*A0^0M_^FC%M3ZM7&^G,6DWJ(B)BJ^E QG<$^I.3P3L< N;\0JH^6
-MG^S4Z_[3[[;:QX9'K>^<A;J $Y?'#=4$W]++KQZMO9R_JTFL38D*ML,2^CKS
-MO9Z'59RR&1F"J!!8F0+$%J>G+,L2J;N;@*HD1T.[@9.6Y1+G]L?'SI UDYF7
-MM[.#3<O:N)"&E MV@H*+][3E[NX[Q5ZB=%25H5>?1H7[Y]?BX% %IH7WV4"#
-M3%:Y 4;AXE9# YF$P9J7BI(@<JI8WNR5]^&-=J!9E^B(=@N-US:Q.O[ )XZ7
-MU;Z#NJT+S*9#X/[?0LCR\Y<RNIV'!!U=;9"YV.N9UL3V"M*%G2&2=IE:E*&4
-M@.GOR.O"PPS2X:M<E3+2L+C>E#F#@,?K[.>0[M67@<!=-E-8JP5=PQ&4-%>[
-M7)*<#0OYQO:7U?>>B(J94E<HESF:6_#="-Q4\%2-HY&+BKC;C4?^]VR_\M&_
-M7I!7J;]>L!Z I>HW]@-5D+^122ZMDY*Z"$V=4J&:@(^1 :/LY!O1>IMSN&"0
-L@X*:8%J.EIR TIXS.L68#?R1 QZT4BJ\/KBLAY".6:'TX^*QE+RAEM;%@W( 
-<!-- END ENCRYPTED FILE --->

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/5a6fd54f/net/nimble/host/pts/tpg/90359-20161220-172113981.pts
----------------------------------------------------------------------
diff --git a/net/nimble/host/pts/tpg/90359-20161220-172113981.pts b/net/nimble/host/pts/tpg/90359-20161220-172113981.pts
deleted file mode 100644
index 2a38859..0000000
--- a/net/nimble/host/pts/tpg/90359-20161220-172113981.pts
+++ /dev/null
@@ -1,288 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project><qdid>90359</qdid><name>mynewt</name>
-	<pics>
-		<profile>
-		<name>L2CAP</name>
-			<item><table>0</table><row>2</row></item>
-			<item><table>1</table><row>3</row></item>
-			<item><table>1</table><row>4</row></item>
-			<item><table>1</table><row>5</row></item>
-			<item><table>1</table><row>6</row></item>
-			<item><table>2</table><row>40</row></item>
-			<item><table>2</table><row>41</row></item>
-			<item><table>2</table><row>42</row></item>
-			<item><table>2</table><row>43</row></item>
-			<item><table>2</table><row>46</row></item>
-			<item><table>2</table><row>47</row></item>
-			<item><table>3</table><row>1</row></item>
-			<item><table>3</table><row>12</row></item>
-			<item><table>3</table><row>16</row></item>
-		</profile>
-		<profile>
-		<name>GAP</name>
-			<item><table>0</table><row>2</row></item>
-			<item><table>0a</table><row>4</row></item>
-			<item><table>10</table><row>1</row></item>
-			<item><table>12</table><row>1</row></item>
-			<item><table>13</table><row>1</row></item>
-			<item><table>13</table><row>2</row></item>
-			<item><table>14</table><row>1</row></item>
-			<item><table>15</table><row>1</row></item>
-			<item><table>16</table><row>1</row></item>
-			<item><table>18</table><row>1</row></item>
-			<item><table>18</table><row>2</row></item>
-			<item><table>19</table><row>1</row></item>
-			<item><table>19</table><row>2</row></item>
-			<item><table>19</table><row>3</row></item>
-			<item><table>20</table><row>1</row></item>
-			<item><table>20</table><row>2</row></item>
-			<item><table>20</table><row>3</row></item>
-			<item><table>20</table><row>4</row></item>
-			<item><table>20A</table><row>1</row></item>
-			<item><table>20A</table><row>10</row></item>
-			<item><table>20A</table><row>11</row></item>
-			<item><table>20A</table><row>12</row></item>
-			<item><table>20A</table><row>13</row></item>
-			<item><table>20A</table><row>14</row></item>
-			<item><table>20A</table><row>15</row></item>
-			<item><table>20A</table><row>16</row></item>
-			<item><table>20A</table><row>17</row></item>
-			<item><table>20A</table><row>2</row></item>
-			<item><table>20A</table><row>3</row></item>
-			<item><table>20A</table><row>4</row></item>
-			<item><table>20A</table><row>5</row></item>
-			<item><table>20A</table><row>7</row></item>
-			<item><table>20A</table><row>8</row></item>
-			<item><table>20A</table><row>9</row></item>
-			<item><table>21</table><row>1</row></item>
-			<item><table>21</table><row>2</row></item>
-			<item><table>21</table><row>3</row></item>
-			<item><table>21</table><row>4</row></item>
-			<item><table>21</table><row>5</row></item>
-			<item><table>21</table><row>6</row></item>
-			<item><table>21</table><row>7</row></item>
-			<item><table>21</table><row>8</row></item>
-			<item><table>21</table><row>9</row></item>
-			<item><table>22</table><row>1</row></item>
-			<item><table>22</table><row>2</row></item>
-			<item><table>22</table><row>3</row></item>
-			<item><table>22</table><row>4</row></item>
-			<item><table>23</table><row>1</row></item>
-			<item><table>23</table><row>2</row></item>
-			<item><table>23</table><row>3</row></item>
-			<item><table>23</table><row>4</row></item>
-			<item><table>23</table><row>5</row></item>
-			<item><table>24</table><row>1</row></item>
-			<item><table>24</table><row>2</row></item>
-			<item><table>24</table><row>3</row></item>
-			<item><table>24</table><row>4</row></item>
-			<item><table>25</table><row>1</row></item>
-			<item><table>25</table><row>2</row></item>
-			<item><table>25</table><row>3</row></item>
-			<item><table>25</table><row>4</row></item>
-			<item><table>25</table><row>7</row></item>
-			<item><table>25</table><row>8</row></item>
-			<item><table>25</table><row>9</row></item>
-			<item><table>26</table><row>1</row></item>
-			<item><table>26</table><row>2</row></item>
-			<item><table>26</table><row>3</row></item>
-			<item><table>26</table><row>4</row></item>
-			<item><table>27</table><row>1</row></item>
-			<item><table>27</table><row>2</row></item>
-			<item><table>28</table><row>1</row></item>
-			<item><table>28</table><row>2</row></item>
-			<item><table>29</table><row>1</row></item>
-			<item><table>29</table><row>2</row></item>
-			<item><table>29</table><row>3</row></item>
-			<item><table>29</table><row>4</row></item>
-			<item><table>30</table><row>1</row></item>
-			<item><table>30</table><row>2</row></item>
-			<item><table>31</table><row>1</row></item>
-			<item><table>31</table><row>2</row></item>
-			<item><table>31</table><row>3</row></item>
-			<item><table>31</table><row>4</row></item>
-			<item><table>31</table><row>5</row></item>
-			<item><table>31</table><row>6</row></item>
-			<item><table>31</table><row>7</row></item>
-			<item><table>31</table><row>8</row></item>
-			<item><table>31</table><row>9</row></item>
-			<item><table>32</table><row>1</row></item>
-			<item><table>32</table><row>2</row></item>
-			<item><table>32</table><row>3</row></item>
-			<item><table>33</table><row>1</row></item>
-			<item><table>33</table><row>2</row></item>
-			<item><table>33</table><row>3</row></item>
-			<item><table>33</table><row>4</row></item>
-			<item><table>33</table><row>5</row></item>
-			<item><table>33</table><row>6</row></item>
-			<item><table>34</table><row>1</row></item>
-			<item><table>34</table><row>2</row></item>
-			<item><table>34</table><row>3</row></item>
-			<item><table>35</table><row>1</row></item>
-			<item><table>35</table><row>2</row></item>
-			<item><table>35</table><row>3</row></item>
-			<item><table>35</table><row>4</row></item>
-			<item><table>35</table><row>5</row></item>
-			<item><table>35</table><row>7</row></item>
-			<item><table>35</table><row>8</row></item>
-			<item><table>35</table><row>9</row></item>
-			<item><table>37</table><row>1</row></item>
-			<item><table>37</table><row>2</row></item>
-			<item><table>37</table><row>3</row></item>
-			<item><table>5</table><row>1</row></item>
-			<item><table>5</table><row>2</row></item>
-			<item><table>5</table><row>3</row></item>
-			<item><table>5</table><row>4</row></item>
-			<item><table>6</table><row>1</row></item>
-			<item><table>7</table><row>1</row></item>
-			<item><table>7</table><row>2</row></item>
-			<item><table>8</table><row>1</row></item>
-			<item><table>8</table><row>2</row></item>
-			<item><table>8a</table><row>3</row></item>
-			<item><table>9</table><row>1</row></item>
-		</profile>
-		<profile>
-		<name>SUM ICS</name>
-		</profile>
-		<profile>
-		<name>PROD</name>
-		</profile>
-		<profile>
-		<name>GATT</name>
-			<item><table>1</table><row>1</row></item>
-			<item><table>1</table><row>2</row></item>
-			<item><table>2</table><row>2</row></item>
-			<item><table>3</table><row>1</row></item>
-			<item><table>3</table><row>10</row></item>
-			<item><table>3</table><row>11</row></item>
-			<item><table>3</table><row>12</row></item>
-			<item><table>3</table><row>14</row></item>
-			<item><table>3</table><row>15</row></item>
-			<item><table>3</table><row>16</row></item>
-			<item><table>3</table><row>17</row></item>
-			<item><table>3</table><row>18</row></item>
-			<item><table>3</table><row>19</row></item>
-			<item><table>3</table><row>2</row></item>
-			<item><table>3</table><row>20</row></item>
-			<item><table>3</table><row>21</row></item>
-			<item><table>3</table><row>22</row></item>
-			<item><table>3</table><row>23</row></item>
-			<item><table>3</table><row>3</row></item>
-			<item><table>3</table><row>4</row></item>
-			<item><table>3</table><row>5</row></item>
-			<item><table>3</table><row>6</row></item>
-			<item><table>3</table><row>7</row></item>
-			<item><table>3</table><row>8</row></item>
-			<item><table>3</table><row>9</row></item>
-			<item><table>4</table><row>1</row></item>
-			<item><table>4</table><row>10</row></item>
-			<item><table>4</table><row>11</row></item>
-			<item><table>4</table><row>12</row></item>
-			<item><table>4</table><row>14</row></item>
-			<item><table>4</table><row>15</row></item>
-			<item><table>4</table><row>16</row></item>
-			<item><table>4</table><row>17</row></item>
-			<item><table>4</table><row>18</row></item>
-			<item><table>4</table><row>19</row></item>
-			<item><table>4</table><row>2</row></item>
-			<item><table>4</table><row>20</row></item>
-			<item><table>4</table><row>21</row></item>
-			<item><table>4</table><row>22</row></item>
-			<item><table>4</table><row>23</row></item>
-			<item><table>4</table><row>3</row></item>
-			<item><table>4</table><row>4</row></item>
-			<item><table>4</table><row>5</row></item>
-			<item><table>4</table><row>6</row></item>
-			<item><table>4</table><row>7</row></item>
-			<item><table>4</table><row>8</row></item>
-			<item><table>4</table><row>9</row></item>
-			<item><table>7</table><row>2</row></item>
-			<item><table>7</table><row>3</row></item>
-			<item><table>7</table><row>4</row></item>
-		</profile>
-		<profile>
-		<name>ATT</name>
-			<item><table>1</table><row>1</row></item>
-			<item><table>1</table><row>2</row></item>
-			<item><table>2</table><row>2</row></item>
-			<item><table>3</table><row>1</row></item>
-			<item><table>3</table><row>10</row></item>
-			<item><table>3</table><row>11</row></item>
-			<item><table>3</table><row>12</row></item>
-			<item><table>3</table><row>13</row></item>
-			<item><table>3</table><row>14</row></item>
-			<item><table>3</table><row>15</row></item>
-			<item><table>3</table><row>16</row></item>
-			<item><table>3</table><row>17</row></item>
-			<item><table>3</table><row>18</row></item>
-			<item><table>3</table><row>19</row></item>
-			<item><table>3</table><row>2</row></item>
-			<item><table>3</table><row>20</row></item>
-			<item><table>3</table><row>22</row></item>
-			<item><table>3</table><row>23</row></item>
-			<item><table>3</table><row>24</row></item>
-			<item><table>3</table><row>25</row></item>
-			<item><table>3</table><row>26</row></item>
-			<item><table>3</table><row>27</row></item>
-			<item><table>3</table><row>28</row></item>
-			<item><table>3</table><row>29</row></item>
-			<item><table>3</table><row>3</row></item>
-			<item><table>3</table><row>4</row></item>
-			<item><table>3</table><row>5</row></item>
-			<item><table>3</table><row>6</row></item>
-			<item><table>3</table><row>7</row></item>
-			<item><table>3</table><row>8</row></item>
-			<item><table>3</table><row>9</row></item>
-			<item><table>4</table><row>1</row></item>
-			<item><table>4</table><row>10</row></item>
-			<item><table>4</table><row>11</row></item>
-			<item><table>4</table><row>12</row></item>
-			<item><table>4</table><row>13</row></item>
-			<item><table>4</table><row>14</row></item>
-			<item><table>4</table><row>15</row></item>
-			<item><table>4</table><row>16</row></item>
-			<item><table>4</table><row>17</row></item>
-			<item><table>4</table><row>18</row></item>
-			<item><table>4</table><row>19</row></item>
-			<item><table>4</table><row>2</row></item>
-			<item><table>4</table><row>20</row></item>
-			<item><table>4</table><row>22</row></item>
-			<item><table>4</table><row>23</row></item>
-			<item><table>4</table><row>24</row></item>
-			<item><table>4</table><row>25</row></item>
-			<item><table>4</table><row>26</row></item>
-			<item><table>4</table><row>27</row></item>
-			<item><table>4</table><row>28</row></item>
-			<item><table>4</table><row>29</row></item>
-			<item><table>4</table><row>3</row></item>
-			<item><table>4</table><row>4</row></item>
-			<item><table>4</table><row>5</row></item>
-			<item><table>4</table><row>6</row></item>
-			<item><table>4</table><row>7</row></item>
-			<item><table>4</table><row>8</row></item>
-			<item><table>4</table><row>9</row></item>
-			<item><table>5</table><row>2</row></item>
-			<item><table>5</table><row>3</row></item>
-			<item><table>5</table><row>4</row></item>
-		</profile>
-		<profile>
-		<name>SM</name>
-			<item><table>1</table><row>1</row></item>
-			<item><table>1</table><row>2</row></item>
-			<item><table>2</table><row>1</row></item>
-			<item><table>2</table><row>2</row></item>
-			<item><table>2</table><row>3</row></item>
-			<item><table>2</table><row>5</row></item>
-			<item><table>3</table><row>1</row></item>
-			<item><table>4</table><row>1</row></item>
-			<item><table>4</table><row>2</row></item>
-			<item><table>5</table><row>1</row></item>
-			<item><table>5</table><row>2</row></item>
-			<item><table>5</table><row>3</row></item>
-			<item><table>5</table><row>4</row></item>
-			<item><table>7</table><row>1</row></item>
-			<item><table>7</table><row>2</row></item>
-			<item><table>7</table><row>3</row></item>
-		</profile>
-	</pics>
-	</project>


[10/11] incubator-mynewt-core git commit: nimble/l2cap: Fix hs locking issue when sending le_credit_update

Posted by cc...@apache.org.
nimble/l2cap: Fix hs locking issue when sending le_credit_update


Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/commit/0b3ea953
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/0b3ea953
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/0b3ea953

Branch: refs/heads/master
Commit: 0b3ea953da71eca84fdcbcfd7affbea2e615ce8e
Parents: 8a64a49
Author: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Authored: Fri Mar 17 15:32:12 2017 +0100
Committer: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Committed: Thu Apr 6 10:04:03 2017 +0200

----------------------------------------------------------------------
 net/nimble/host/src/ble_l2cap_coc.c      | 7 +++++--
 net/nimble/host/src/ble_l2cap_sig.c      | 6 +++---
 net/nimble/host/src/ble_l2cap_sig_priv.h | 3 ++-
 3 files changed, 10 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/0b3ea953/net/nimble/host/src/ble_l2cap_coc.c
----------------------------------------------------------------------
diff --git a/net/nimble/host/src/ble_l2cap_coc.c b/net/nimble/host/src/ble_l2cap_coc.c
index 87d830a..5c4b9af 100644
--- a/net/nimble/host/src/ble_l2cap_coc.c
+++ b/net/nimble/host/src/ble_l2cap_coc.c
@@ -222,7 +222,7 @@ ble_l2cap_coc_rx_fn(struct ble_l2cap_chan *chan)
          * so since we have still buffer to handle it
          */
         rx->credits = 1;
-        ble_l2cap_sig_le_credits(chan, rx->credits);
+        ble_l2cap_sig_le_credits(chan->conn_handle, chan->scid, rx->credits);
     }
 
     BLE_HS_LOG(DEBUG, "Received partial sdu_len=%d, credits left=%d\n",
@@ -468,7 +468,10 @@ ble_l2cap_coc_recv_ready(struct ble_l2cap_chan *chan, struct os_mbuf *sdu_rx)
      * to be able to send complete SDU.
      */
     if (chan->coc_rx.credits < c->initial_credits) {
-        ble_l2cap_sig_le_credits(chan, c->initial_credits - chan->coc_rx.credits);
+        ble_hs_unlock();
+        ble_l2cap_sig_le_credits(chan->conn_handle, chan->scid,
+                                 c->initial_credits - chan->coc_rx.credits);
+        ble_hs_lock();
         chan->coc_rx.credits = c->initial_credits;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/0b3ea953/net/nimble/host/src/ble_l2cap_sig.c
----------------------------------------------------------------------
diff --git a/net/nimble/host/src/ble_l2cap_sig.c b/net/nimble/host/src/ble_l2cap_sig.c
index d9e7c52..1acfbad 100644
--- a/net/nimble/host/src/ble_l2cap_sig.c
+++ b/net/nimble/host/src/ble_l2cap_sig.c
@@ -1047,7 +1047,7 @@ ble_l2cap_sig_le_credits_rx(uint16_t conn_handle, struct ble_l2cap_sig_hdr *hdr,
 }
 
 int
-ble_l2cap_sig_le_credits(struct ble_l2cap_chan *chan, uint16_t credits)
+ble_l2cap_sig_le_credits(uint16_t conn_handle, uint16_t scid, uint16_t credits)
 {
     struct ble_l2cap_sig_le_credits *cmd;
     struct os_mbuf *txom;
@@ -1059,10 +1059,10 @@ ble_l2cap_sig_le_credits(struct ble_l2cap_chan *chan, uint16_t credits)
         return BLE_HS_ENOMEM;
     }
 
-    cmd->scid = htole16(chan->scid);
+    cmd->scid = htole16(scid);
     cmd->credits = htole16(credits);
 
-    return ble_l2cap_sig_tx(chan->conn_handle, txom);
+    return ble_l2cap_sig_tx(conn_handle, txom);
 }
 #endif
 

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/0b3ea953/net/nimble/host/src/ble_l2cap_sig_priv.h
----------------------------------------------------------------------
diff --git a/net/nimble/host/src/ble_l2cap_sig_priv.h b/net/nimble/host/src/ble_l2cap_sig_priv.h
index 49d096c..3af6f75 100644
--- a/net/nimble/host/src/ble_l2cap_sig_priv.h
+++ b/net/nimble/host/src/ble_l2cap_sig_priv.h
@@ -108,7 +108,8 @@ int ble_l2cap_sig_coc_connect(uint16_t conn_handle, uint16_t psm, uint16_t mtu,
                               struct os_mbuf *sdu_rx,
                               ble_l2cap_event_fn *cb, void *cb_arg);
 int ble_l2cap_sig_disconnect(struct ble_l2cap_chan *chan);
-int ble_l2cap_sig_le_credits(struct ble_l2cap_chan *chan, uint16_t credits);
+int ble_l2cap_sig_le_credits(uint16_t conn_handle, uint16_t scid,
+                             uint16_t credits);
 #else
 #define ble_l2cap_sig_coc_connect(conn_handle, psm, mtu, sdu_rx, cb, cb_arg) \
                                                                 BLE_HS_ENOTSUP


[09/11] incubator-mynewt-core git commit: nimble/l2cap: Fix locking on incoming LE CoC connect request

Posted by cc...@apache.org.
nimble/l2cap: Fix locking on incoming LE CoC connect request

Just use lock when retrieve or add channel to conn object.
Without this patch there is a locking issue when ble_l2cap_recv_read()
is called on BLE_L2CAP_EVENT_COC_ACCEPT

Issue found during unit test writing for LE CoC


Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/commit/11d2cb59
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/11d2cb59
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/11d2cb59

Branch: refs/heads/master
Commit: 11d2cb595e40943463f8b9f349820a3fda28f7a5
Parents: e6d3b0e
Author: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Authored: Wed Mar 15 12:29:54 2017 +0100
Committer: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Committed: Thu Apr 6 10:04:03 2017 +0200

----------------------------------------------------------------------
 net/nimble/host/src/ble_l2cap_sig.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/11d2cb59/net/nimble/host/src/ble_l2cap_sig.c
----------------------------------------------------------------------
diff --git a/net/nimble/host/src/ble_l2cap_sig.c b/net/nimble/host/src/ble_l2cap_sig.c
index 09ff8e0..ae99f00 100644
--- a/net/nimble/host/src/ble_l2cap_sig.c
+++ b/net/nimble/host/src/ble_l2cap_sig.c
@@ -665,12 +665,14 @@ ble_l2cap_sig_coc_req_rx(uint16_t conn_handle, struct ble_l2cap_sig_hdr *hdr,
     scid = le16toh(req->scid);
     if (scid < BLE_L2CAP_COC_CID_START || scid > BLE_L2CAP_COC_CID_END) {
         rsp->result = htole16(BLE_L2CAP_COC_ERR_INVALID_SOURCE_CID);
+        ble_hs_unlock();
         goto failed;
     }
 
     chan = ble_hs_conn_chan_find_by_dcid(conn, scid);
     if (chan) {
         rsp->result = htole16(BLE_L2CAP_COC_ERR_SOURCE_CID_ALREADY_USED);
+        ble_hs_unlock();
         goto failed;
     }
 
@@ -678,6 +680,7 @@ ble_l2cap_sig_coc_req_rx(uint16_t conn_handle, struct ble_l2cap_sig_hdr *hdr,
     if (rc != 0) {
         uint16_t coc_err = ble_l2cap_sig_ble_hs_err2coc_err(rc);
         rsp->result = htole16(coc_err);
+        ble_hs_unlock();
         goto failed;
     }
 
@@ -687,6 +690,8 @@ ble_l2cap_sig_coc_req_rx(uint16_t conn_handle, struct ble_l2cap_sig_hdr *hdr,
     chan->coc_tx.credits = le16toh(req->credits);
     chan->coc_tx.mtu = le16toh(req->mtu);
 
+    ble_hs_unlock();
+
     rc = ble_l2cap_event_coc_accept(chan, le16toh(req->mtu));
     if (rc != 0) {
         uint16_t coc_err = ble_l2cap_sig_ble_hs_err2coc_err(rc);
@@ -713,12 +718,10 @@ ble_l2cap_sig_coc_req_rx(uint16_t conn_handle, struct ble_l2cap_sig_hdr *hdr,
 
     /* Notify user about connection status */
     ble_l2cap_event_coc_connected(chan, rc);
-    ble_hs_unlock();
 
     return 0;
 
 failed:
-    ble_hs_unlock();
     ble_l2cap_sig_tx(conn_handle, txom);
     return 0;
 }


[06/11] incubator-mynewt-core git commit: nimble/l2cap: Fix locking on LE CoC connect

Posted by cc...@apache.org.
nimble/l2cap: Fix locking on LE CoC connect

Make sure to do hs unlock before ble_l2cap_sig_tx() as this function
does it's own locking.
Found during writing unit test for LE CoC


Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/commit/e6d3b0e6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/e6d3b0e6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/e6d3b0e6

Branch: refs/heads/master
Commit: e6d3b0e6c2ed8351e0931ec4858be2651e21bfd9
Parents: f902592
Author: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Authored: Wed Mar 15 12:28:21 2017 +0100
Committer: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Committed: Thu Apr 6 10:04:03 2017 +0200

----------------------------------------------------------------------
 net/nimble/host/src/ble_l2cap_sig.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/e6d3b0e6/net/nimble/host/src/ble_l2cap_sig.c
----------------------------------------------------------------------
diff --git a/net/nimble/host/src/ble_l2cap_sig.c b/net/nimble/host/src/ble_l2cap_sig.c
index c9c1886..09ff8e0 100644
--- a/net/nimble/host/src/ble_l2cap_sig.c
+++ b/net/nimble/host/src/ble_l2cap_sig.c
@@ -836,13 +836,14 @@ ble_l2cap_sig_coc_connect(uint16_t conn_handle, uint16_t psm, uint16_t mtu,
     req->mps = htole16(chan->my_mtu);
     req->credits = htole16(chan->coc_rx.credits);
 
+    ble_hs_unlock();
+
     rc = ble_l2cap_sig_tx(proc->conn_handle, txom);
     if (rc != 0) {
         ble_l2cap_chan_free(chan);
     }
 
     ble_l2cap_sig_process_status(proc, rc);
-    ble_hs_unlock();
 
     return rc;
 }


[08/11] incubator-mynewt-core git commit: nimble/l2cap: Add initial unit tests for LE CoC

Posted by cc...@apache.org.
nimble/l2cap: Add initial unit tests for LE CoC


Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/commit/082d066e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/082d066e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/082d066e

Branch: refs/heads/master
Commit: 082d066ef9f1d4ffcb4a4a1103c3dda7ff18cfeb
Parents: 0b3ea95
Author: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Authored: Fri Mar 17 13:40:00 2017 +0100
Committer: \u0141ukasz Rymanowski <lu...@codecoup.pl>
Committed: Thu Apr 6 10:04:03 2017 +0200

----------------------------------------------------------------------
 net/nimble/host/test/src/ble_hs_test_util.c |  73 +++
 net/nimble/host/test/src/ble_hs_test_util.h |   7 +
 net/nimble/host/test/src/ble_l2cap_test.c   | 696 ++++++++++++++++++++++-
 net/nimble/host/test/syscfg.yml             |   1 +
 4 files changed, 776 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/082d066e/net/nimble/host/test/src/ble_hs_test_util.c
----------------------------------------------------------------------
diff --git a/net/nimble/host/test/src/ble_hs_test_util.c b/net/nimble/host/test/src/ble_hs_test_util.c
index 26783ef..c1f7c0f 100644
--- a/net/nimble/host/test/src/ble_hs_test_util.c
+++ b/net/nimble/host/test/src/ble_hs_test_util.c
@@ -1766,6 +1766,79 @@ ble_hs_test_util_verify_tx_l2cap_sig_hdr(uint8_t op, uint8_t id,
     return om;
 }
 
+int
+ble_hs_test_util_inject_rx_l2cap_sig(uint16_t conn_handle, uint8_t opcode,
+                              uint8_t id, void *cmd, uint16_t cmd_size)
+{
+    void *r;
+    struct hci_data_hdr hci_hdr;
+    struct os_mbuf *om;
+    int rc;
+
+    hci_hdr = BLE_HS_TEST_UTIL_L2CAP_HCI_HDR(2, BLE_HCI_PB_FIRST_FLUSH,
+                         BLE_L2CAP_HDR_SZ + BLE_L2CAP_SIG_HDR_SZ + cmd_size);
+
+    r = ble_l2cap_sig_cmd_get(opcode, id, cmd_size, &om);
+    TEST_ASSERT_FATAL(r != NULL);
+
+    memcpy(r, cmd, cmd_size);
+
+    rc = ble_hs_test_util_l2cap_rx_first_frag(conn_handle, BLE_L2CAP_CID_SIG,
+                                              &hci_hdr, om);
+    return rc;
+}
+
+/**
+ * @return  The L2CAP sig identifier in the request/response.
+ */
+uint8_t
+ble_hs_test_util_verify_tx_l2cap_sig(uint16_t opcode, void *cmd,
+                                     uint16_t cmd_size)
+{
+    struct ble_l2cap_sig_hdr hdr;
+    struct os_mbuf *om;
+
+    ble_hs_test_util_tx_all();
+
+    om = ble_hs_test_util_verify_tx_l2cap_sig_hdr(opcode, 0, cmd_size, &hdr);
+    om = os_mbuf_pullup(om, cmd_size);
+
+    /* Verify payload. */
+    TEST_ASSERT(memcmp(om->om_data, cmd, cmd_size) == 0);
+
+    return hdr.identifier;
+}
+
+void
+ble_hs_test_util_verify_tx_l2cap(struct os_mbuf *txom)
+{
+    struct os_mbuf *om;
+
+    ble_hs_test_util_tx_all();
+
+    om = ble_hs_test_util_prev_tx_dequeue();
+    TEST_ASSERT_FATAL(om != NULL);
+
+    /* TODO Handle fragmentation */
+    TEST_ASSERT_FATAL(os_mbuf_cmpm(om, 0, txom, 0, OS_MBUF_PKTLEN(om)) == 0);
+}
+
+void
+ble_hs_test_util_inject_rx_l2cap(uint16_t conn_handle, uint16_t cid,
+                                 struct os_mbuf *rxom)
+{
+    struct hci_data_hdr hci_hdr;
+    int rc;
+
+    hci_hdr = BLE_HS_TEST_UTIL_L2CAP_HCI_HDR(2, BLE_HCI_PB_FIRST_FLUSH,
+                                             BLE_L2CAP_HDR_SZ +
+                                             BLE_L2CAP_SIG_HDR_SZ +
+                                             OS_MBUF_PKTLEN(rxom));
+
+    rc = ble_hs_test_util_l2cap_rx_first_frag(conn_handle, cid, &hci_hdr, rxom);
+    TEST_ASSERT(rc == 0);
+}
+
 static void
 ble_l2cap_test_update_req_swap(struct ble_l2cap_sig_update_req *dst,
                                struct ble_l2cap_sig_update_req *src)

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/082d066e/net/nimble/host/test/src/ble_hs_test_util.h
----------------------------------------------------------------------
diff --git a/net/nimble/host/test/src/ble_hs_test_util.h b/net/nimble/host/test/src/ble_hs_test_util.h
index 9914e83..a8ae1f3 100644
--- a/net/nimble/host/test/src/ble_hs_test_util.h
+++ b/net/nimble/host/test/src/ble_hs_test_util.h
@@ -150,6 +150,13 @@ int ble_hs_test_util_l2cap_rx(uint16_t conn_handle,
                               struct os_mbuf *om);
 int ble_hs_test_util_l2cap_rx_payload_flat(uint16_t conn_handle, uint16_t cid,
                                            const void *data, int len);
+uint8_t ble_hs_test_util_verify_tx_l2cap_sig(uint16_t opcode, void *cmd,
+                                                 uint16_t cmd_size);
+int ble_hs_test_util_inject_rx_l2cap_sig(uint16_t conn_handle, uint8_t opcode,
+                                     uint8_t id, void *cmd, uint16_t cmd_size);
+void ble_hs_test_util_verify_tx_l2cap(struct os_mbuf *txom);
+void ble_hs_test_util_inject_rx_l2cap(uint16_t conn_handle, uint16_t cid,
+                                      struct os_mbuf *rxom);
 void ble_hs_test_util_rx_hci_buf_size_ack(uint16_t buf_size);
 void ble_hs_test_util_set_att_mtu(uint16_t conn_handle, uint16_t mtu);
 int ble_hs_test_util_rx_att_mtu_cmd(uint16_t conn_handle, int is_req,

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/082d066e/net/nimble/host/test/src/ble_l2cap_test.c
----------------------------------------------------------------------
diff --git a/net/nimble/host/test/src/ble_l2cap_test.c b/net/nimble/host/test/src/ble_l2cap_test.c
index 3fc7876..ece2e37 100644
--- a/net/nimble/host/test/src/ble_l2cap_test.c
+++ b/net/nimble/host/test/src/ble_l2cap_test.c
@@ -24,12 +24,20 @@
 #include "host/ble_hs_test.h"
 #include "ble_hs_test_util.h"
 
-#define BLE_L2CAP_TEST_CID  99
+#define BLE_L2CAP_TEST_PSM                   (90)
+#define BLE_L2CAP_TEST_CID                   (99)
+#define BLE_L2CAP_TEST_COC_MTU               (256)
+/* We use same pool for incoming and outgoing sdu */
+#define BLE_L2CAP_TEST_COC_BUF_COUNT         (6 * MYNEWT_VAL(BLE_L2CAP_COC_MAX_NUM))
 
 static uint16_t ble_l2cap_test_update_conn_handle;
 static int ble_l2cap_test_update_status;
 static void *ble_l2cap_test_update_arg;
 
+static void *test_sdu_coc_mem;
+struct os_mbuf_pool sdu_os_mbuf_pool;
+static struct os_mempool sdu_coc_mbuf_mempool;
+static uint16_t current_cid  = 0x0040;
 /*****************************************************************************
  * $util                                                                     *
  *****************************************************************************/
@@ -41,6 +49,26 @@ ble_l2cap_test_util_init(void)
     ble_l2cap_test_update_conn_handle = BLE_HS_CONN_HANDLE_NONE;
     ble_l2cap_test_update_status = -1;
     ble_l2cap_test_update_arg = (void *)(uintptr_t)-1;
+    int rc;
+
+    if (test_sdu_coc_mem) {
+        free(test_sdu_coc_mem);
+    }
+
+    /* For testing we want to support all the available channels */
+    test_sdu_coc_mem = malloc(
+        OS_MEMPOOL_BYTES(BLE_L2CAP_TEST_COC_BUF_COUNT,BLE_L2CAP_TEST_COC_MTU));
+    assert(test_sdu_coc_mem != NULL);
+
+    rc = os_mempool_init(&sdu_coc_mbuf_mempool, BLE_L2CAP_TEST_COC_BUF_COUNT,
+                         BLE_L2CAP_TEST_COC_MTU, test_sdu_coc_mem,
+                         "test_coc_sdu_pool");
+    assert(rc == 0);
+
+    rc = os_mbuf_pool_init(&sdu_os_mbuf_pool, &sdu_coc_mbuf_mempool,
+                           BLE_L2CAP_TEST_COC_MTU, BLE_L2CAP_TEST_COC_BUF_COUNT);
+    assert(rc == 0);
+
 }
 
 static void
@@ -627,6 +655,658 @@ TEST_CASE(ble_l2cap_test_case_sig_update_init_fail_bad_id)
     TEST_ASSERT(ble_l2cap_test_update_arg == NULL);
 }
 
+/* Test enum but first four events matches to events which L2CAP sends to
+ * application. We need this in order to add additional SEND_DATA event for
+ * testing
+ */
+
+enum {
+    BLE_L2CAP_TEST_EVENT_COC_CONNECT = 0,
+    BLE_L2CAP_TEST_EVENT_COC_DISCONNECT,
+    BLE_L2CAP_TEST_EVENT_COC_ACCEPT,
+    BLE_L2CAP_TEST_EVENT_COC_RECV_DATA,
+    BLE_L2CAP_TEST_EVENT_COC_SEND_DATA,
+};
+
+struct event {
+    uint8_t type;
+    uint16_t early_error;
+    uint16_t l2cap_status;
+    uint16_t app_status;
+    uint8_t handled;
+    uint8_t *data;
+    uint16_t data_len;
+};
+
+struct test_data {
+    struct event event[3];
+    uint16_t expected_num_of_ev;
+    /* This we use to track number of events sent to application*/
+    uint16_t event_cnt;
+    /* This we use to track verified events (received or not) */
+    uint16_t event_iter;
+    uint16_t psm;
+    uint16_t mtu;
+    struct ble_l2cap_chan *chan;
+};
+
+static int
+ble_l2cap_test_event(struct ble_l2cap_event *event, void *arg)
+{
+    struct test_data *t = arg;
+    struct event *ev = &t->event[t->event_cnt++];
+    struct os_mbuf *sdu_rx;
+
+    assert(ev->type == event->type);
+    ev->handled = 1;
+    switch(event->type) {
+    case BLE_L2CAP_EVENT_COC_CONNECTED:
+        assert(ev->app_status == event->connect.status);
+        t->chan = event->connect.chan;
+        return 0;
+    case BLE_L2CAP_EVENT_COC_DISCONNECTED:
+        return 0;
+    case BLE_L2CAP_EVENT_COC_ACCEPT:
+        if (ev->app_status != 0) {
+            return ev->app_status;
+        }
+
+        sdu_rx = os_mbuf_get_pkthdr(&sdu_os_mbuf_pool, 0);
+        assert(sdu_rx != NULL);
+        ble_l2cap_recv_ready(event->accept.chan, sdu_rx);
+
+        return 0;
+
+    case BLE_L2CAP_EVENT_COC_DATA_RECEIVED:
+        sdu_rx = os_mbuf_pullup(event->receive.sdu_rx,
+                                    OS_MBUF_PKTLEN(event->receive.sdu_rx));
+        TEST_ASSERT(memcmp(sdu_rx->om_data, ev->data, ev->data_len) == 0);
+        return 0;
+    default:
+        return 0;
+    }
+}
+
+static void
+ble_l2cap_test_coc_connect(struct test_data *t)
+{
+    struct ble_l2cap_sig_le_con_req req = {};
+    struct ble_l2cap_sig_le_con_rsp rsp = {};
+    struct os_mbuf *sdu_rx;
+    struct event *ev = &t->event[t->event_iter++];
+    uint8_t id;
+    int rc;
+
+    ble_l2cap_test_util_init();
+
+    ble_l2cap_test_util_create_conn(2, ((uint8_t[]){1,2,3,4,5,6}),
+                                    ble_l2cap_test_util_conn_cb, NULL);
+
+    sdu_rx = os_mbuf_get_pkthdr(&sdu_os_mbuf_pool, 0);
+    assert(sdu_rx != NULL);
+
+    rc = ble_l2cap_sig_coc_connect(2, t->psm, t->mtu, sdu_rx,
+                                   ble_l2cap_test_event, t);
+    TEST_ASSERT_FATAL(rc == ev->early_error);
+
+    if (rc != 0) {
+        os_mbuf_free_chain(sdu_rx);
+        return;
+    }
+
+    ble_hs_test_util_tx_all();
+
+    req.credits = htole16((t->mtu + (BLE_L2CAP_COC_MTU - 1) / 2) /
+                                                        BLE_L2CAP_COC_MTU);
+    req.mps = htole16(BLE_L2CAP_COC_MTU);
+    req.mtu = htole16(t->mtu);
+    req.psm = htole16(t->psm);
+    req.scid = htole16(current_cid++);
+
+    /* Ensure an update request got sent. */
+    id = ble_hs_test_util_verify_tx_l2cap_sig(
+                                            BLE_L2CAP_SIG_OP_CREDIT_CONNECT_REQ,
+                                            &req, sizeof(req));
+
+    /* Use some different parameters for peer. Just keep mtu same for testing
+     * only*/
+    rsp.credits = htole16(10);
+    rsp.dcid = htole16(current_cid);
+    rsp.mps = htole16(BLE_L2CAP_COC_MTU + 16);
+    rsp.mtu = htole16(t->mtu);
+    rsp.result = htole16(ev->l2cap_status);
+
+    rc = ble_hs_test_util_inject_rx_l2cap_sig(2,
+                                              BLE_L2CAP_SIG_OP_CREDIT_CONNECT_RSP,
+                                              id, &rsp, sizeof(rsp));
+    TEST_ASSERT(rc == 0);
+
+    /* Ensure callback got called. */
+    TEST_ASSERT(ev->handled);
+}
+
+static void
+ble_l2cap_test_coc_connect_by_peer(struct test_data *t)
+{
+    struct ble_l2cap_sig_le_con_req req = {};
+    struct ble_l2cap_sig_le_con_rsp rsp = {};
+    uint8_t id = 10;
+    int rc;
+    struct event *ev = &t->event[t->event_iter++];
+
+    ble_l2cap_test_util_create_conn(2, ((uint8_t[]){1,2,3,4,5,6}),
+                                    ble_l2cap_test_util_conn_cb, NULL);
+
+    ble_hs_test_util_tx_all();
+
+    /* Use some different parameters for peer */
+    req.credits = htole16(30);
+    req.mps = htole16(BLE_L2CAP_COC_MTU + 16);
+    req.mtu = htole16(t->mtu);
+    req.psm = htole16(t->psm);
+    req.scid = htole16(0x0040);
+
+    /* Receive remote request*/
+    rc = ble_hs_test_util_inject_rx_l2cap_sig(2,
+                                              BLE_L2CAP_SIG_OP_CREDIT_CONNECT_REQ,
+                                              id, &req, sizeof(req));
+    TEST_ASSERT_FATAL(rc == 0);
+
+    if (ev->type == BLE_L2CAP_EVENT_COC_ACCEPT) {
+        /* Lets check if there is accept event */
+        TEST_ASSERT(ev->handled);
+        /* Ensure callback got called. */
+        ev = &t->event[t->event_iter++];
+    }
+
+    if (ev->l2cap_status != 0) {
+        rsp.result = htole16(ev->l2cap_status);
+    } else {
+        /* Receive response from peer.*/
+        rsp.credits = htole16((t->mtu + (BLE_L2CAP_COC_MTU - 1) / 2) /
+                                                          BLE_L2CAP_COC_MTU);
+        rsp.dcid = current_cid++;
+        rsp.mps = htole16(BLE_L2CAP_COC_MTU);
+        rsp.mtu = htole16(t->mtu);
+    }
+
+    /* Ensure we sent response. */
+    TEST_ASSERT(id == ble_hs_test_util_verify_tx_l2cap_sig(
+                                            BLE_L2CAP_SIG_OP_CREDIT_CONNECT_RSP,
+                                            &rsp, sizeof(rsp)));
+
+    if (ev->l2cap_status == 0) {
+        TEST_ASSERT(ev->handled);
+    } else {
+        TEST_ASSERT(!ev->handled);
+    }
+}
+
+static void
+ble_l2cap_test_coc_disc(struct test_data *t)
+{
+    struct ble_l2cap_sig_disc_req req;
+    struct event *ev = &t->event[t->event_iter++];
+    uint8_t id;
+    int rc;
+
+    rc = ble_l2cap_sig_disconnect(t->chan);
+    TEST_ASSERT_FATAL(rc == 0);
+
+    ble_hs_test_util_tx_all();
+
+    req.dcid = htole16(t->chan->dcid);
+    req.scid = htole16(t->chan->scid);
+
+    /* Ensure an update request got sent. */
+    id = ble_hs_test_util_verify_tx_l2cap_sig(BLE_L2CAP_SIG_OP_DISCONN_REQ,
+                                                   &req, sizeof(req));
+
+    /* Receive response from peer. Note it shall be same as request */
+    rc = ble_hs_test_util_inject_rx_l2cap_sig(2, BLE_L2CAP_SIG_OP_DISCONN_RSP,
+                                           id, &req, sizeof(req));
+    TEST_ASSERT(rc == 0);
+
+    /* Ensure callback got called. */
+    TEST_ASSERT(ev->handled);
+}
+
+static void
+ble_l2cap_test_coc_disc_by_peer(struct test_data *t)
+{
+    struct ble_l2cap_sig_disc_req req;
+    struct event *ev = &t->event[t->event_iter++];
+    uint8_t id = 10;
+    int rc;
+
+    ble_hs_test_util_tx_all();
+
+    /* Receive disconnect request from peer. Note that source cid
+     * and destination cid are from peer perspective */
+    req.dcid = htole16(t->chan->scid);
+    req.scid = htole16(t->chan->dcid);
+
+    rc = ble_hs_test_util_inject_rx_l2cap_sig(2, BLE_L2CAP_SIG_OP_DISCONN_REQ,
+                                       id, &req, sizeof(req));
+    TEST_ASSERT(rc == 0);
+
+    /* Ensure callback got called. */
+    TEST_ASSERT(ev->handled);
+
+    /* Ensure an we sent back response. Note that payload is same as request,
+     * lets reuse it */
+    TEST_ASSERT(ble_hs_test_util_verify_tx_l2cap_sig(
+                                        BLE_L2CAP_SIG_OP_DISCONN_RSP,
+                                        &req, sizeof(req)) == id);
+}
+
+static void
+ble_l2cap_test_coc_invalid_disc_by_peer(struct test_data *t)
+{
+    struct ble_l2cap_sig_disc_req req;
+    uint8_t id = 10;
+    int rc;
+    struct event *ev = &t->event[t->event_iter++];
+
+    ble_hs_test_util_tx_all();
+
+    /* Receive disconnect request from peer. Note that source cid
+     * and destination cid are from peer perspective */
+    req.dcid = htole16(t->chan->scid);
+    req.scid = htole16(0);
+
+    rc = ble_hs_test_util_inject_rx_l2cap_sig(2, BLE_L2CAP_SIG_OP_DISCONN_REQ,
+                                       id, &req, sizeof(req));
+    TEST_ASSERT(rc == 0);
+
+    /* Ensure callback HAS NOT BEEN*/
+    TEST_ASSERT(!ev->handled);
+}
+
+static void
+ble_l2cap_test_coc_send_data(struct test_data *t)
+{
+    struct os_mbuf *sdu;
+    struct os_mbuf *sdu_copy;
+    struct event *ev = &t->event[t->event_iter++];
+    int rc;
+
+    /* Send data event is created only for testing.
+     * Since application callback do caching of real stack event
+     * and checks the type of the event, lets increase event counter here and
+     * fake that this event is handled*/
+    t->event_cnt++;
+
+    sdu = os_mbuf_get_pkthdr(&sdu_os_mbuf_pool, 0);
+    assert(sdu != NULL);
+
+    sdu_copy = os_mbuf_get_pkthdr(&sdu_os_mbuf_pool, 0);
+    assert(sdu_copy != NULL);
+
+    rc = os_mbuf_append(sdu, ev->data, ev->data_len);
+    TEST_ASSERT(rc == 0);
+
+    rc = os_mbuf_append(sdu_copy, ev->data, ev->data_len);
+    TEST_ASSERT(rc == 0);
+
+    rc = ble_l2cap_send(t->chan, sdu);
+    TEST_ASSERT(rc == ev->early_error);
+
+    if (rc) {
+        os_mbuf_free(sdu);
+        os_mbuf_free(sdu_copy);
+        return;
+    }
+
+    /* Add place for SDU len */
+    sdu_copy = os_mbuf_prepend_pullup(sdu_copy, 2);
+    assert(sdu_copy != NULL);
+    put_le16(sdu_copy->om_data, ev->data_len);
+
+    ble_hs_test_util_verify_tx_l2cap(sdu);
+
+    os_mbuf_free_chain(sdu_copy);
+}
+
+static void
+ble_l2cap_test_coc_recv_data(struct test_data *t)
+{
+    struct os_mbuf *sdu;
+    int rc;
+    struct event *ev = &t->event[t->event_iter++];
+
+    sdu = os_mbuf_get_pkthdr(&sdu_os_mbuf_pool, 0);
+    assert(sdu != NULL);
+
+    rc = os_mbuf_append(sdu, ev->data, ev->data_len);
+    TEST_ASSERT(rc == 0);
+
+    /* TODO  handle fragmentation */
+
+    /* Add place for SDU len */
+    sdu = os_mbuf_prepend_pullup(sdu, 2);
+    assert(sdu != NULL);
+    put_le16(sdu->om_data, ev->data_len);
+
+    ble_hs_test_util_inject_rx_l2cap(2, t->chan->scid, sdu);
+}
+
+static void
+ble_l2cap_test_set_chan_test_conf(uint16_t psm, uint16_t mtu,
+                                  struct test_data *t)
+{
+    memset(t, 0, sizeof(*t));
+
+    t->psm = psm;
+    t->mtu = mtu;
+}
+
+TEST_CASE(ble_l2cap_test_case_sig_coc_conn_invalid_psm)
+{
+    struct test_data t;
+
+    ble_l2cap_test_util_init();
+    ble_l2cap_test_set_chan_test_conf(BLE_L2CAP_TEST_PSM,
+                                      BLE_L2CAP_TEST_COC_MTU, &t);
+    t.expected_num_of_ev = 1;
+
+    t.event[0].type = BLE_L2CAP_EVENT_COC_CONNECTED;
+    t.event[0].app_status = BLE_HS_ENOTSUP;
+    t.event[0].l2cap_status = BLE_L2CAP_COC_ERR_UNKNOWN_LE_PSM;
+
+    ble_l2cap_test_coc_connect(&t);
+
+    TEST_ASSERT(t.expected_num_of_ev == t.event_iter);
+}
+
+TEST_CASE(ble_l2cap_test_case_sig_coc_conn_out_of_resource)
+{
+    struct test_data t;
+
+    ble_l2cap_test_util_init();
+
+    ble_l2cap_test_set_chan_test_conf(BLE_L2CAP_TEST_PSM,
+                                      BLE_L2CAP_TEST_COC_MTU, &t);
+    t.expected_num_of_ev = 1;
+
+    t.event[0].type = BLE_L2CAP_EVENT_COC_CONNECTED;
+    t.event[0].app_status = BLE_HS_ENOMEM;
+    t.event[0].l2cap_status = BLE_L2CAP_COC_ERR_NO_RESOURCES;
+
+    ble_l2cap_test_coc_connect(&t);
+
+    TEST_ASSERT(t.expected_num_of_ev == t.event_iter);
+}
+
+TEST_CASE(ble_l2cap_test_case_sig_coc_conn_invalid_cid)
+{
+    struct test_data t;
+
+    ble_l2cap_test_util_init();
+
+    ble_l2cap_test_set_chan_test_conf(BLE_L2CAP_TEST_PSM,
+                                      BLE_L2CAP_TEST_COC_MTU, &t);
+    t.expected_num_of_ev = 1;
+
+    t.event[0].type = BLE_L2CAP_EVENT_COC_CONNECTED;
+    t.event[0].app_status = BLE_HS_EREJECT;
+    t.event[0].l2cap_status = BLE_L2CAP_COC_ERR_INVALID_SOURCE_CID;
+
+    ble_l2cap_test_coc_connect(&t);
+
+    TEST_ASSERT(t.expected_num_of_ev == t.event_iter);
+}
+
+TEST_CASE(ble_l2cap_test_case_sig_coc_conn_insuff_authen)
+{
+    struct test_data t;
+
+    ble_l2cap_test_util_init();
+
+    ble_l2cap_test_set_chan_test_conf(BLE_L2CAP_TEST_PSM,
+                                      BLE_L2CAP_TEST_COC_MTU, &t);
+    t.expected_num_of_ev = 1;
+
+    t.event[0].type = BLE_L2CAP_EVENT_COC_CONNECTED;
+    t.event[0].app_status = BLE_HS_EAUTHEN;
+    t.event[0].l2cap_status = BLE_L2CAP_COC_ERR_INSUFFICIENT_AUTHEN;
+
+    ble_l2cap_test_coc_connect(&t);
+
+    TEST_ASSERT(t.expected_num_of_ev == t.event_iter);
+}
+
+TEST_CASE(ble_l2cap_test_case_sig_coc_conn_insuff_author)
+{
+    struct test_data t;
+
+    ble_l2cap_test_util_init();
+
+    ble_l2cap_test_set_chan_test_conf(BLE_L2CAP_TEST_PSM,
+                                      BLE_L2CAP_TEST_COC_MTU, &t);
+    t.expected_num_of_ev = 1;
+
+    t.event[0].type = BLE_L2CAP_EVENT_COC_CONNECTED;
+    t.event[0].app_status = BLE_HS_EAUTHOR;
+    t.event[0].l2cap_status = BLE_L2CAP_COC_ERR_INSUFFICIENT_AUTHOR;
+
+    ble_l2cap_test_coc_connect(&t);
+
+    TEST_ASSERT(t.expected_num_of_ev == t.event_iter);
+}
+
+TEST_CASE(ble_l2cap_test_case_sig_coc_incoming_conn_invalid_psm)
+{
+    struct test_data t;
+
+    ble_l2cap_test_util_init();
+
+    ble_l2cap_test_set_chan_test_conf(BLE_L2CAP_TEST_PSM,
+                                      BLE_L2CAP_TEST_COC_MTU, &t);
+    t.expected_num_of_ev = 1;
+
+    t.event[0].type = BLE_L2CAP_EVENT_COC_CONNECTED;
+    t.event[0].l2cap_status = BLE_L2CAP_COC_ERR_UNKNOWN_LE_PSM;
+
+    ble_l2cap_test_coc_connect_by_peer(&t);
+
+    TEST_ASSERT(t.expected_num_of_ev == t.event_iter);
+}
+
+TEST_CASE(ble_l2cap_test_case_sig_coc_incoming_conn_rejected_by_app)
+{
+    struct test_data t;
+    int rc;
+
+    ble_l2cap_test_util_init();
+
+    ble_l2cap_test_set_chan_test_conf(BLE_L2CAP_TEST_PSM,
+                                      BLE_L2CAP_TEST_COC_MTU, &t);
+    t.expected_num_of_ev = 2;
+
+    t.event[0].type = BLE_L2CAP_EVENT_COC_ACCEPT;
+    t.event[0].app_status = BLE_HS_ENOMEM;
+
+    /* This event will not be called and test is going to verify it*/
+    t.event[1].type = BLE_L2CAP_EVENT_COC_CONNECTED;
+    t.event[1].l2cap_status = BLE_L2CAP_COC_ERR_NO_RESOURCES;
+
+    /* Register server */
+    rc = ble_l2cap_create_server(t.psm, BLE_L2CAP_TEST_COC_MTU,
+                                 ble_l2cap_test_event, &t);
+    TEST_ASSERT(rc == 0);
+
+    ble_l2cap_test_coc_connect_by_peer(&t);
+
+    TEST_ASSERT(t.expected_num_of_ev == t.event_iter);
+
+    /* In this test case, L2CAP channel is created and once application rejects
+     * connection, channel is destroyed. In such case CID for channel has been
+     * used and we need to increase current_cid. */
+    current_cid++;
+}
+
+TEST_CASE(ble_l2cap_test_case_sig_coc_incoming_conn_success)
+{
+    struct test_data t;
+    int rc;
+
+    ble_l2cap_test_util_init();
+
+    ble_l2cap_test_set_chan_test_conf(BLE_L2CAP_TEST_PSM,
+                                      BLE_L2CAP_TEST_COC_MTU, &t);
+    t.expected_num_of_ev = 2;
+
+    t.event[0].type = BLE_L2CAP_EVENT_COC_ACCEPT;
+    t.event[1].type = BLE_L2CAP_EVENT_COC_CONNECTED;
+
+    /* Register server */
+    rc = ble_l2cap_create_server(t.psm, BLE_L2CAP_TEST_COC_MTU,
+                                 ble_l2cap_test_event, &t);
+    TEST_ASSERT(rc == 0);
+
+    ble_l2cap_test_coc_connect_by_peer(&t);
+
+    TEST_ASSERT(t.expected_num_of_ev == t.event_iter);
+}
+
+TEST_CASE(ble_l2cap_test_case_sig_coc_disconnect_succeed)
+{
+    struct test_data t;
+
+    ble_l2cap_test_util_init();
+
+    ble_l2cap_test_set_chan_test_conf(BLE_L2CAP_TEST_PSM,
+                                      BLE_L2CAP_TEST_COC_MTU, &t);
+    t. expected_num_of_ev = 2;
+
+    t.event[0].type = BLE_L2CAP_EVENT_COC_CONNECTED;
+    t.event[0].app_status = 0;
+    t.event[0].l2cap_status = BLE_L2CAP_COC_ERR_CONNECTION_SUCCESS;
+    t.event[1].type = BLE_L2CAP_EVENT_COC_DISCONNECTED;
+
+    ble_l2cap_test_coc_connect(&t);
+    ble_l2cap_test_coc_disc(&t);
+
+    TEST_ASSERT(t.expected_num_of_ev == t.event_iter);
+}
+
+TEST_CASE(ble_l2cap_test_case_sig_coc_incoming_disconnect_succeed)
+{
+    struct test_data t;
+
+    ble_l2cap_test_util_init();
+
+    ble_l2cap_test_set_chan_test_conf(BLE_L2CAP_TEST_PSM,
+                                      BLE_L2CAP_TEST_COC_MTU, &t);
+    t.expected_num_of_ev = 2;
+
+    t.event[0].type = BLE_L2CAP_EVENT_COC_CONNECTED;
+    t.event[0].app_status = 0;
+    t.event[0].l2cap_status = BLE_L2CAP_COC_ERR_CONNECTION_SUCCESS;
+    t.event[1].type = BLE_L2CAP_EVENT_COC_DISCONNECTED;
+
+    ble_l2cap_test_coc_connect(&t);
+    ble_l2cap_test_coc_disc_by_peer(&t);
+
+    TEST_ASSERT(t.expected_num_of_ev == t.event_iter);
+}
+
+TEST_CASE(ble_l2cap_test_case_sig_coc_incoming_disconnect_failed)
+{
+    struct test_data t;
+
+    ble_l2cap_test_util_init();
+
+    ble_l2cap_test_set_chan_test_conf(BLE_L2CAP_TEST_PSM,
+                                      BLE_L2CAP_TEST_COC_MTU, &t);
+    t.expected_num_of_ev = 2;
+
+    t.event[0].type = BLE_L2CAP_EVENT_COC_CONNECTED;
+    t.event[0].app_status = 0;
+    t.event[0].l2cap_status = BLE_L2CAP_COC_ERR_CONNECTION_SUCCESS;
+    t.event[1].type = BLE_L2CAP_EVENT_COC_DISCONNECTED;
+
+    ble_l2cap_test_coc_connect(&t);
+    ble_l2cap_test_coc_invalid_disc_by_peer(&t);
+
+    TEST_ASSERT(t.expected_num_of_ev == t.event_iter);
+}
+
+TEST_CASE(ble_l2cap_test_case_coc_send_data_succeed)
+{
+    struct test_data t;
+    uint8_t buf[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15};
+
+    ble_l2cap_test_util_init();
+
+    ble_l2cap_test_set_chan_test_conf(BLE_L2CAP_TEST_PSM,
+                                      BLE_L2CAP_TEST_COC_MTU, &t);
+    t.expected_num_of_ev = 3;
+
+    t.event[0].type = BLE_L2CAP_TEST_EVENT_COC_CONNECT;
+    t.event[1].type = BLE_L2CAP_TEST_EVENT_COC_SEND_DATA;
+    t.event[1].data = buf;
+    t.event[1].data_len = sizeof(buf);
+    t.event[2].type = BLE_L2CAP_TEST_EVENT_COC_DISCONNECT;
+
+    ble_l2cap_test_coc_connect(&t);
+    ble_l2cap_test_coc_send_data(&t);
+    ble_l2cap_test_coc_disc(&t);
+
+    TEST_ASSERT(t.expected_num_of_ev == t.event_iter);
+}
+
+TEST_CASE(ble_l2cap_test_case_coc_send_data_failed_too_big_sdu)
+{
+    struct test_data t = {};
+    uint16_t small_mtu = 27;
+    uint8_t buf[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
+                    1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15};
+
+    ble_l2cap_test_util_init();
+
+    ble_l2cap_test_set_chan_test_conf(BLE_L2CAP_TEST_PSM, small_mtu, &t);
+    t.expected_num_of_ev = 3;
+
+    t.event[0].type = BLE_L2CAP_TEST_EVENT_COC_CONNECT;
+    t.event[1].type = BLE_L2CAP_TEST_EVENT_COC_SEND_DATA;
+    t.event[1].data = buf;
+    t.event[1].data_len = sizeof(buf);
+    t.event[1].early_error = BLE_HS_EBADDATA;
+    t.event[2].type = BLE_L2CAP_TEST_EVENT_COC_DISCONNECT;
+
+    ble_l2cap_test_coc_connect(&t);
+    ble_l2cap_test_coc_send_data(&t);
+    ble_l2cap_test_coc_disc(&t);
+
+    TEST_ASSERT(t.expected_num_of_ev == t.event_iter);
+}
+
+TEST_CASE(ble_l2cap_test_case_coc_recv_data_succeed)
+{
+    struct test_data t = {};
+    uint8_t buf[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15};
+
+    ble_l2cap_test_util_init();
+
+    ble_l2cap_test_set_chan_test_conf(BLE_L2CAP_TEST_PSM,
+                                      BLE_L2CAP_TEST_COC_MTU, &t);
+    t.expected_num_of_ev = 3;
+
+    t.event[0].type = BLE_L2CAP_EVENT_COC_CONNECTED;
+    t.event[1].type = BLE_L2CAP_EVENT_COC_DATA_RECEIVED;
+    t.event[1].data = buf;
+    t.event[1].data_len = sizeof(buf);
+    t.event[2].type = BLE_L2CAP_EVENT_COC_DISCONNECTED;
+
+    ble_l2cap_test_coc_connect(&t);
+    ble_l2cap_test_coc_recv_data(&t);
+    ble_l2cap_test_coc_disc(&t);
+
+    TEST_ASSERT(t.expected_num_of_ev == t.event_iter);
+}
+
 TEST_SUITE(ble_l2cap_test_suite)
 {
     tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL);
@@ -644,6 +1324,20 @@ TEST_SUITE(ble_l2cap_test_suite)
     ble_l2cap_test_case_sig_update_init_reject();
     ble_l2cap_test_case_sig_update_init_fail_master();
     ble_l2cap_test_case_sig_update_init_fail_bad_id();
+    ble_l2cap_test_case_sig_coc_conn_invalid_psm();
+    ble_l2cap_test_case_sig_coc_conn_out_of_resource();
+    ble_l2cap_test_case_sig_coc_conn_invalid_cid();
+    ble_l2cap_test_case_sig_coc_conn_insuff_authen();
+    ble_l2cap_test_case_sig_coc_conn_insuff_author();
+    ble_l2cap_test_case_sig_coc_incoming_conn_invalid_psm();
+    ble_l2cap_test_case_sig_coc_incoming_conn_rejected_by_app();
+    ble_l2cap_test_case_sig_coc_incoming_conn_success();
+    ble_l2cap_test_case_sig_coc_disconnect_succeed();
+    ble_l2cap_test_case_sig_coc_incoming_disconnect_succeed();
+    ble_l2cap_test_case_sig_coc_incoming_disconnect_failed();
+    ble_l2cap_test_case_coc_send_data_succeed();
+    ble_l2cap_test_case_coc_send_data_failed_too_big_sdu();
+    ble_l2cap_test_case_coc_recv_data_succeed();
 }
 
 int

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/082d066e/net/nimble/host/test/syscfg.yml
----------------------------------------------------------------------
diff --git a/net/nimble/host/test/syscfg.yml b/net/nimble/host/test/syscfg.yml
index 47d3b11..971d786 100644
--- a/net/nimble/host/test/syscfg.yml
+++ b/net/nimble/host/test/syscfg.yml
@@ -27,3 +27,4 @@ syscfg.vals:
     BLE_SM: 1
     BLE_SM_SC: 1
     MSYS_1_BLOCK_COUNT: 100
+    BLE_L2CAP_COC_MAX_NUM: 1


[02/11] incubator-mynewt-core git commit: nimble/pts: Update pts files due to L2CAP LE CoC

Posted by cc...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/5a6fd54f/net/nimble/host/pts/tpg/94654-20170317-085122560.tpg
----------------------------------------------------------------------
diff --git a/net/nimble/host/pts/tpg/94654-20170317-085122560.tpg b/net/nimble/host/pts/tpg/94654-20170317-085122560.tpg
new file mode 100644
index 0000000..f5bb0ce
--- /dev/null
+++ b/net/nimble/host/pts/tpg/94654-20170317-085122560.tpg
@@ -0,0 +1,1026 @@
+<!-- START ENCRYPTED FILE --->
+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
+MN-DM1\'<6...@O>?07UF%C),M,P]/X*^GR3AU99G .AEBG-[=NPF9+?A(Q=2]N$
+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
+M4E^5'<<4...@ER>%(V^@I./NHG$Q,S5P/!'M]P=B_^!;SA63Q+K^3OE
+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
+MSJFGH*>=#5?HP<H#...@Y>MV_#PY_ EVU06<+E?E8)3!WVE
+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
+MJ >8S9(Y,#J[Y6&(3-> GDN;FJP/N>+B"-[1W*<FY...@J>7;=(AKLJOI9WJ/7_
+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
+M_^#P'6YO]"^4=;&+]<*Z...@.L>[);=EUV=V&D
+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
+M1==>0)BL!:[9S?O,U]+0AY>42(*%C8<AL...@KB>Q-JK
+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
+MP<.Y...@5Z4X>=#A"+K:.0?]'7<,F$UE"[&Z%V2?&,70TQ
+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
+MVUROU9*<C(...@B>F*6^B\E_(LB&T9X<^E2"6JQ.LL7J
+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
+MDXQ42TW9YO7^-Y>K2;2<P!...@B5><OI>>+4FTE*K1^_:=
+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
+L@U91N$5;H(.IY7/\[ +<DK:=41RCLZB8DY:;7E]*"<<2\\K1C(F(AZJX39  
+<!-- END ENCRYPTED FILE --->

http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/5a6fd54f/net/nimble/host/pts/tpg/94654-20170317-085441153.pts
----------------------------------------------------------------------
diff --git a/net/nimble/host/pts/tpg/94654-20170317-085441153.pts b/net/nimble/host/pts/tpg/94654-20170317-085441153.pts
new file mode 100644
index 0000000..92507b1
--- /dev/null
+++ b/net/nimble/host/pts/tpg/94654-20170317-085441153.pts
@@ -0,0 +1,289 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project><qdid>94654</qdid><name>mynewt-Updated</name>
+	<pics>
+		<profile>
+		<name>L2CAP</name>
+			<item><table>0</table><row>2</row></item>
+			<item><table>1</table><row>3</row></item>
+			<item><table>1</table><row>4</row></item>
+			<item><table>1</table><row>5</row></item>
+			<item><table>1</table><row>6</row></item>
+			<item><table>2</table><row>40</row></item>
+			<item><table>2</table><row>41</row></item>
+			<item><table>2</table><row>42</row></item>
+			<item><table>2</table><row>43</row></item>
+			<item><table>2</table><row>45</row></item>
+			<item><table>2</table><row>46</row></item>
+			<item><table>2</table><row>47</row></item>
+			<item><table>3</table><row>1</row></item>
+			<item><table>3</table><row>12</row></item>
+			<item><table>3</table><row>16</row></item>
+		</profile>
+		<profile>
+		<name>GAP</name>
+			<item><table>0</table><row>2</row></item>
+			<item><table>0a</table><row>4</row></item>
+			<item><table>10</table><row>1</row></item>
+			<item><table>12</table><row>1</row></item>
+			<item><table>13</table><row>1</row></item>
+			<item><table>13</table><row>2</row></item>
+			<item><table>14</table><row>1</row></item>
+			<item><table>15</table><row>1</row></item>
+			<item><table>16</table><row>1</row></item>
+			<item><table>18</table><row>1</row></item>
+			<item><table>18</table><row>2</row></item>
+			<item><table>19</table><row>1</row></item>
+			<item><table>19</table><row>2</row></item>
+			<item><table>19</table><row>3</row></item>
+			<item><table>20</table><row>1</row></item>
+			<item><table>20</table><row>2</row></item>
+			<item><table>20</table><row>3</row></item>
+			<item><table>20</table><row>4</row></item>
+			<item><table>20A</table><row>1</row></item>
+			<item><table>20A</table><row>10</row></item>
+			<item><table>20A</table><row>11</row></item>
+			<item><table>20A</table><row>12</row></item>
+			<item><table>20A</table><row>13</row></item>
+			<item><table>20A</table><row>14</row></item>
+			<item><table>20A</table><row>15</row></item>
+			<item><table>20A</table><row>16</row></item>
+			<item><table>20A</table><row>17</row></item>
+			<item><table>20A</table><row>2</row></item>
+			<item><table>20A</table><row>3</row></item>
+			<item><table>20A</table><row>4</row></item>
+			<item><table>20A</table><row>5</row></item>
+			<item><table>20A</table><row>7</row></item>
+			<item><table>20A</table><row>8</row></item>
+			<item><table>20A</table><row>9</row></item>
+			<item><table>21</table><row>1</row></item>
+			<item><table>21</table><row>2</row></item>
+			<item><table>21</table><row>3</row></item>
+			<item><table>21</table><row>4</row></item>
+			<item><table>21</table><row>5</row></item>
+			<item><table>21</table><row>6</row></item>
+			<item><table>21</table><row>7</row></item>
+			<item><table>21</table><row>8</row></item>
+			<item><table>21</table><row>9</row></item>
+			<item><table>22</table><row>1</row></item>
+			<item><table>22</table><row>2</row></item>
+			<item><table>22</table><row>3</row></item>
+			<item><table>22</table><row>4</row></item>
+			<item><table>23</table><row>1</row></item>
+			<item><table>23</table><row>2</row></item>
+			<item><table>23</table><row>3</row></item>
+			<item><table>23</table><row>4</row></item>
+			<item><table>23</table><row>5</row></item>
+			<item><table>24</table><row>1</row></item>
+			<item><table>24</table><row>2</row></item>
+			<item><table>24</table><row>3</row></item>
+			<item><table>24</table><row>4</row></item>
+			<item><table>25</table><row>1</row></item>
+			<item><table>25</table><row>2</row></item>
+			<item><table>25</table><row>3</row></item>
+			<item><table>25</table><row>4</row></item>
+			<item><table>25</table><row>7</row></item>
+			<item><table>25</table><row>8</row></item>
+			<item><table>25</table><row>9</row></item>
+			<item><table>26</table><row>1</row></item>
+			<item><table>26</table><row>2</row></item>
+			<item><table>26</table><row>3</row></item>
+			<item><table>26</table><row>4</row></item>
+			<item><table>27</table><row>1</row></item>
+			<item><table>27</table><row>2</row></item>
+			<item><table>28</table><row>1</row></item>
+			<item><table>28</table><row>2</row></item>
+			<item><table>29</table><row>1</row></item>
+			<item><table>29</table><row>2</row></item>
+			<item><table>29</table><row>3</row></item>
+			<item><table>29</table><row>4</row></item>
+			<item><table>30</table><row>1</row></item>
+			<item><table>30</table><row>2</row></item>
+			<item><table>31</table><row>1</row></item>
+			<item><table>31</table><row>2</row></item>
+			<item><table>31</table><row>3</row></item>
+			<item><table>31</table><row>4</row></item>
+			<item><table>31</table><row>5</row></item>
+			<item><table>31</table><row>6</row></item>
+			<item><table>31</table><row>7</row></item>
+			<item><table>31</table><row>8</row></item>
+			<item><table>31</table><row>9</row></item>
+			<item><table>32</table><row>1</row></item>
+			<item><table>32</table><row>2</row></item>
+			<item><table>32</table><row>3</row></item>
+			<item><table>33</table><row>1</row></item>
+			<item><table>33</table><row>2</row></item>
+			<item><table>33</table><row>3</row></item>
+			<item><table>33</table><row>4</row></item>
+			<item><table>33</table><row>5</row></item>
+			<item><table>33</table><row>6</row></item>
+			<item><table>34</table><row>1</row></item>
+			<item><table>34</table><row>2</row></item>
+			<item><table>34</table><row>3</row></item>
+			<item><table>35</table><row>1</row></item>
+			<item><table>35</table><row>2</row></item>
+			<item><table>35</table><row>3</row></item>
+			<item><table>35</table><row>4</row></item>
+			<item><table>35</table><row>5</row></item>
+			<item><table>35</table><row>7</row></item>
+			<item><table>35</table><row>8</row></item>
+			<item><table>35</table><row>9</row></item>
+			<item><table>37</table><row>1</row></item>
+			<item><table>37</table><row>2</row></item>
+			<item><table>37</table><row>3</row></item>
+			<item><table>5</table><row>1</row></item>
+			<item><table>5</table><row>2</row></item>
+			<item><table>5</table><row>3</row></item>
+			<item><table>5</table><row>4</row></item>
+			<item><table>6</table><row>1</row></item>
+			<item><table>7</table><row>1</row></item>
+			<item><table>7</table><row>2</row></item>
+			<item><table>8</table><row>1</row></item>
+			<item><table>8</table><row>2</row></item>
+			<item><table>8a</table><row>3</row></item>
+			<item><table>9</table><row>1</row></item>
+		</profile>
+		<profile>
+		<name>SUM ICS</name>
+		</profile>
+		<profile>
+		<name>PROD</name>
+		</profile>
+		<profile>
+		<name>GATT</name>
+			<item><table>1</table><row>1</row></item>
+			<item><table>1</table><row>2</row></item>
+			<item><table>2</table><row>2</row></item>
+			<item><table>3</table><row>1</row></item>
+			<item><table>3</table><row>10</row></item>
+			<item><table>3</table><row>11</row></item>
+			<item><table>3</table><row>12</row></item>
+			<item><table>3</table><row>14</row></item>
+			<item><table>3</table><row>15</row></item>
+			<item><table>3</table><row>16</row></item>
+			<item><table>3</table><row>17</row></item>
+			<item><table>3</table><row>18</row></item>
+			<item><table>3</table><row>19</row></item>
+			<item><table>3</table><row>2</row></item>
+			<item><table>3</table><row>20</row></item>
+			<item><table>3</table><row>21</row></item>
+			<item><table>3</table><row>22</row></item>
+			<item><table>3</table><row>23</row></item>
+			<item><table>3</table><row>3</row></item>
+			<item><table>3</table><row>4</row></item>
+			<item><table>3</table><row>5</row></item>
+			<item><table>3</table><row>6</row></item>
+			<item><table>3</table><row>7</row></item>
+			<item><table>3</table><row>8</row></item>
+			<item><table>3</table><row>9</row></item>
+			<item><table>4</table><row>1</row></item>
+			<item><table>4</table><row>10</row></item>
+			<item><table>4</table><row>11</row></item>
+			<item><table>4</table><row>12</row></item>
+			<item><table>4</table><row>14</row></item>
+			<item><table>4</table><row>15</row></item>
+			<item><table>4</table><row>16</row></item>
+			<item><table>4</table><row>17</row></item>
+			<item><table>4</table><row>18</row></item>
+			<item><table>4</table><row>19</row></item>
+			<item><table>4</table><row>2</row></item>
+			<item><table>4</table><row>20</row></item>
+			<item><table>4</table><row>21</row></item>
+			<item><table>4</table><row>22</row></item>
+			<item><table>4</table><row>23</row></item>
+			<item><table>4</table><row>3</row></item>
+			<item><table>4</table><row>4</row></item>
+			<item><table>4</table><row>5</row></item>
+			<item><table>4</table><row>6</row></item>
+			<item><table>4</table><row>7</row></item>
+			<item><table>4</table><row>8</row></item>
+			<item><table>4</table><row>9</row></item>
+			<item><table>7</table><row>2</row></item>
+			<item><table>7</table><row>3</row></item>
+			<item><table>7</table><row>4</row></item>
+		</profile>
+		<profile>
+		<name>ATT</name>
+			<item><table>1</table><row>1</row></item>
+			<item><table>1</table><row>2</row></item>
+			<item><table>2</table><row>2</row></item>
+			<item><table>3</table><row>1</row></item>
+			<item><table>3</table><row>10</row></item>
+			<item><table>3</table><row>11</row></item>
+			<item><table>3</table><row>12</row></item>
+			<item><table>3</table><row>13</row></item>
+			<item><table>3</table><row>14</row></item>
+			<item><table>3</table><row>15</row></item>
+			<item><table>3</table><row>16</row></item>
+			<item><table>3</table><row>17</row></item>
+			<item><table>3</table><row>18</row></item>
+			<item><table>3</table><row>19</row></item>
+			<item><table>3</table><row>2</row></item>
+			<item><table>3</table><row>20</row></item>
+			<item><table>3</table><row>22</row></item>
+			<item><table>3</table><row>23</row></item>
+			<item><table>3</table><row>24</row></item>
+			<item><table>3</table><row>25</row></item>
+			<item><table>3</table><row>26</row></item>
+			<item><table>3</table><row>27</row></item>
+			<item><table>3</table><row>28</row></item>
+			<item><table>3</table><row>29</row></item>
+			<item><table>3</table><row>3</row></item>
+			<item><table>3</table><row>4</row></item>
+			<item><table>3</table><row>5</row></item>
+			<item><table>3</table><row>6</row></item>
+			<item><table>3</table><row>7</row></item>
+			<item><table>3</table><row>8</row></item>
+			<item><table>3</table><row>9</row></item>
+			<item><table>4</table><row>1</row></item>
+			<item><table>4</table><row>10</row></item>
+			<item><table>4</table><row>11</row></item>
+			<item><table>4</table><row>12</row></item>
+			<item><table>4</table><row>13</row></item>
+			<item><table>4</table><row>14</row></item>
+			<item><table>4</table><row>15</row></item>
+			<item><table>4</table><row>16</row></item>
+			<item><table>4</table><row>17</row></item>
+			<item><table>4</table><row>18</row></item>
+			<item><table>4</table><row>19</row></item>
+			<item><table>4</table><row>2</row></item>
+			<item><table>4</table><row>20</row></item>
+			<item><table>4</table><row>22</row></item>
+			<item><table>4</table><row>23</row></item>
+			<item><table>4</table><row>24</row></item>
+			<item><table>4</table><row>25</row></item>
+			<item><table>4</table><row>26</row></item>
+			<item><table>4</table><row>27</row></item>
+			<item><table>4</table><row>28</row></item>
+			<item><table>4</table><row>29</row></item>
+			<item><table>4</table><row>3</row></item>
+			<item><table>4</table><row>4</row></item>
+			<item><table>4</table><row>5</row></item>
+			<item><table>4</table><row>6</row></item>
+			<item><table>4</table><row>7</row></item>
+			<item><table>4</table><row>8</row></item>
+			<item><table>4</table><row>9</row></item>
+			<item><table>5</table><row>2</row></item>
+			<item><table>5</table><row>3</row></item>
+			<item><table>5</table><row>4</row></item>
+		</profile>
+		<profile>
+		<name>SM</name>
+			<item><table>1</table><row>1</row></item>
+			<item><table>1</table><row>2</row></item>
+			<item><table>2</table><row>1</row></item>
+			<item><table>2</table><row>2</row></item>
+			<item><table>2</table><row>3</row></item>
+			<item><table>2</table><row>5</row></item>
+			<item><table>3</table><row>1</row></item>
+			<item><table>4</table><row>1</row></item>
+			<item><table>4</table><row>2</row></item>
+			<item><table>5</table><row>1</row></item>
+			<item><table>5</table><row>2</row></item>
+			<item><table>5</table><row>3</row></item>
+			<item><table>5</table><row>4</row></item>
+			<item><table>7</table><row>1</row></item>
+			<item><table>7</table><row>2</row></item>
+			<item><table>7</table><row>3</row></item>
+		</profile>
+	</pics>
+	</project>