From bdc10744fb338ae197692713a0b48a7ccc36f566 Mon Sep 17 00:00:00 2001 From: JF Date: Sun, 26 Apr 2020 10:25:59 +0200 Subject: Add Nimble in libs directory --- src/libs/mynewt-nimble/nimble/host/pts/README.txt | 8 + src/libs/mynewt-nimble/nimble/host/pts/pts-gap.txt | 367 +++++++ .../mynewt-nimble/nimble/host/pts/pts-gatt.txt | 508 ++++++++++ .../mynewt-nimble/nimble/host/pts/pts-l2cap.txt | 304 ++++++ src/libs/mynewt-nimble/nimble/host/pts/pts-sm.txt | 310 ++++++ .../host/pts/tpg/94654-20170317-085122560.tpg | 1026 ++++++++++++++++++++ .../host/pts/tpg/94654-20170317-085441153.pts | 289 ++++++ 7 files changed, 2812 insertions(+) create mode 100644 src/libs/mynewt-nimble/nimble/host/pts/README.txt create mode 100644 src/libs/mynewt-nimble/nimble/host/pts/pts-gap.txt create mode 100644 src/libs/mynewt-nimble/nimble/host/pts/pts-gatt.txt create mode 100644 src/libs/mynewt-nimble/nimble/host/pts/pts-l2cap.txt create mode 100644 src/libs/mynewt-nimble/nimble/host/pts/pts-sm.txt create mode 100644 src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085122560.tpg create mode 100644 src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085441153.pts (limited to 'src/libs/mynewt-nimble/nimble/host/pts') diff --git a/src/libs/mynewt-nimble/nimble/host/pts/README.txt b/src/libs/mynewt-nimble/nimble/host/pts/README.txt new file mode 100644 index 00000000..bb03b18c --- /dev/null +++ b/src/libs/mynewt-nimble/nimble/host/pts/README.txt @@ -0,0 +1,8 @@ +This folder contains qualification tests results against BT SIG Profile Test +Suite. + +pts-FOO.txt files contain result for specific profiles or protocols. This +includes PTS version, test date, enabled tests, results etc. + +In addition to tests results 'tpg' folder constains Test Plang Generator +configuration files that can be imported by PTS for tests configuration. diff --git a/src/libs/mynewt-nimble/nimble/host/pts/pts-gap.txt b/src/libs/mynewt-nimble/nimble/host/pts/pts-gap.txt new file mode 100644 index 00000000..29ed2446 --- /dev/null +++ b/src/libs/mynewt-nimble/nimble/host/pts/pts-gap.txt @@ -0,0 +1,367 @@ +PTS test results for GAP + +PTS version: 7.5.0 +Tested: 27-Sept-2019 + +Results: +PASS test passed +FAIL test failed +INC test is inconclusive +N/A test is disabled due to PICS setup + +------------------------------------------------------------------------------- +Test Name Result Notes +------------------------------------------------------------------------------- + +GAP/BROB/BCST/BV-01-C PASS advertise-configure legacy=1 connectable=0 scannable=0 +GAP/BROB/BCST/BV-02-C PASS advertise-configure legacy=1 connectable=0 scannable=0 + +GAP/BROB/BCST/BV-03-C PASS set irk= e.g: 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:11 + Note: in PTS IXIT please set: + TSPX_iut_device_IRK_for_resolvable_privacy_address_generation_procedure=11000000000000000000000000000000 + set advertise-set-adv-data name= flags=4 + advertise-configure connectable=0 scannable=0 own_addr_type=rpa_pub +GAP/BROB/BCST/BV-04-C PASS TSPX_advertising_data=07086E696D626C65 + advertise-set-adv-data name=nimble + set addr_type=random addr=01:3e:56:f7:46:21 + advertise-configure connectable=0 scannable=0 own_addr_type=random +GAP/BROB/BCST/BV-05-C N/A +GAP/BROB/OBSV/BV-01-C PASS scan passive +GAP/BROB/OBSV/BV-02-C PASS scan +GAP/BROB/OBSV/BV-03-C PASS scan +GAP/BROB/OBSV/BV-04-C PASS connect peer_addr= + security-set-data bonding=1 + security-pair conn= + + +GAP/BROB/OBSV/BV-05-C PASS scan own_addr_type=rpa_pub +GAP/BROB/OBSV/BV-06-C PASS scan own_addr_type=rpa_pub +------------------------------------------------------------------------------- + +GAP/DISC/NONM/BV-01-C PASS advertise-configure connectable=0 legacy=1 adverdise=non +GAP/DISC/NONM/BV-02-C PASS advertise-configure connectable=0 + +GAP/DISC/LIMM/BV-01-C N/A +GAP/DISC/LIMM/BV-02-C N/A +GAP/DISC/LIMM/BV-03-C PASS advertise-configure legacy=1 connectable=0 + advertise-set-adv-data flags=5 + advertise-start duration= e.g.3000 +GAP/DISC/LIMM/BV-04-C PASS advertise-configure legacy=1 connectable=0 + advertise-set-adv-data flags=5 + advertising-start duration= +GAP/DISC/GENM/BV-01-C N/A +GAP/DISC/GENM/BV-02-C N/A +GAP/DISC/GENM/BV-03-C PASS advertise-configure legacy=1 connectable=0 + advertise-set-adv-data flags=6 + advertise-start +GAP/DISC/GENM/BV-04-C PASS advertise-configure legacy=1 connectable=0 + advertise-set-adv-data flags=6 + advertising-start + +GAP/DISC/LIMP/BV-01-C PASS scan limited=1 nodups=1 +GAP/DISC/LIMP/BV-02-C PASS scan limited=1 nodups=1 +GAP/DISC/LIMP/BV-03-C PASS scan limited=1 nodups=1 +GAP/DISC/LIMP/BV-04-C PASS scan limited=1 nodups=1 +GAP/DISC/LIMP/BV-05-C PASS scan limited=1 nodups=1 + +GAP/DISC/GENP/BV-01-C PASS scan nodups=1 +GAP/DISC/GENP/BV-02-C PASS scan nodups=1 +GAP/DISC/GENP/BV-03-C PASS scan nodups=1 + +GAP/DISC/GENP/BV-04-C PASS scan nodups=1 + +GAP/DISC/GENP/BV-05-C PASS scan nodups=1 + +GAP/DISC/RPA/BV-01-C N/A scan nodups=1 +------------------------------------------------------------------------------- + +GAP/IDLE/GIN/BV-01-C N/A +GAP/IDLE/GIN/BV-02-C N/A +GAP/IDLE/NAMP/BV-01-C PASS advertise-configure connectable=1 legacy=1 + advertising-start + gatt-discover-full conn= + gatt-show + + gatt-read conn= uuid=0x2a00 start= end= + disconnect conn= +GAP/IDLE/NAMP/BV-02-C PASS + advertise-configure connectable=1 legacy=1 + advertising-start +GAP/IDLE/DED/BV-01-C N/A +GAP/IDLE/DED/BV-02-C N/A +------------------------------------------------------------------------------- + +GAP/CONN/NCON/BV-01-C PASS advertise-configure connectable=0 legacy=1 + advertising-start +GAP/CONN/NCON/BV-02-C PASS advertise-configure connectable=0 legacy=1 + advertise-set-adv-data flags=6 + advertise-start +GAP/CONN/NCON/BV-03-C PASS advertise-configure connectable=0 legacy=1 + advertise-set-adv-data flags=5 + advertise-start + +GAP/CONN/DCON/BV-01-C PASS advertise-configure connectable=0 directed=1 peer_addr= + advertise-start +GAP/CONN/DCON/BV-02-C N/A +GAP/CONN/DCON/BV-03-C N/A + +GAP/CONN/UCON/BV-01-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=4 + advertise-start +GAP/CONN/UCON/BV-02_C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=5 + advertise-start +GAP/CONN/UCON/BV-03_C PASS adbertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 +GAP/CONN/UCON/BV-04_C N/A +GAP/CONN/UCON/BV-05_C N/A +GAP/CONN/UCON/BV-06_C N/A + +GAP/CONN/ACEP/BV-01-C PASS white-list addr_type=public addr= + connect + disconnect conn= +GAP/CONN/ACEP/BV-02-C N/A + +GAP/CONN/GCEP/BV-01-C PASS connect peer_addr= + disconnect conn= +GAP/CONN/GCEP/BV-02-C PASS connect peer_addr= +GAP/CONN/GCEP/BV-03-C PASS set irk= + connect peer_addr= own_addr_type=rpa_pub + security-set-data bonding=1 our_key_dist=7 their_key_dist=7 + security-pair conn= + connect peer_addr= + disconnect conn=1 +GAP/CONN/GCEP/BV-04-C N/A +GAP/CONN/SCEP/BV-01-C PASS white-list addr_type=public addr= + connect + disconnect conn= +GAP/CONN/SCEP/BV-02-C INC +GAP/CONN/DCEP/BV-01-C PASS connect peer_addr= + disconnect conn= +GAP/CONN/DCEP/BV-02-C INC +GAP/CONN/DCEP/BV-03-C PASS connect peer_addr= + disconnect conn= +GAP/CONN/DCEP/BV-04-C PASS connect peer_addr= + disconnect conn= + +GAP/CONN/CPUP/BV-01-C PASS advertise-start + conn-update-params conn= +GAP/CONN/CPUP/BV-02-C PASS advertise-start + conn-update-params conn= +GAP/CONN/CPUP/BV-03-C PASS advertise-start + conn-update-params conn= +GAP/CONN/CPUP/BV-04-C PASS connect peer_addr= + disconnect conn= +GAP/CONN/CPUP/BV-05-C PASS connect peer_addr= + disconnect conn= +GAP/CONN/CPUP/BV-06-C PASS conect peer_addr= + conn-update-params conn= eg.latency=20 + disconnect conn= +GAP/CONN/CPUP/BV-08-C PASS advertise-configure legacy=1 connectable=1 + advertise-set-data name= + advertise-start + +GAP/CONN/TERM/BV-01-C PASS connect peer_addr= + disconnect conn= +GAP/CONN/PRDA/BV-01-C N/A +GAP/CONN/PRDA/BV-02-C N/A +------------------------------------------------------------------------------- +GAP/BOND/NBON/BV-01-C PASS security-set-data bonding=0 + connect peer_addr= + + connect peer_addr= + +GAP/BOND/NBON/BV-02-C PASS security-set-data bonding=0 + connect peer_addr= + security-pair conn= + + connect peer_addr= + security-pair conn= + +GAP/BOND/NBON/BV-03-C PASS security-set-data bonding=0 + advertise-configure legacy=1 connectable=1 + advertise-set-data name= + advertise-start + + +GAP/BOND/BON/BV-01-C PASS security-set-data bonding=1 sc=1 our_key_dist=7 their_key_dist=7 + advertise-configure legacy=1 connectable=1 + advertise-start + security-start conn= + + advertise-start + +GAP/BOND/BON/BV-02-C PASS security-set-data bonding=1 + connect peer_addr= + security-pair conn= + + connect peer_addr= + seccurity-pair conn= + +GAP/BOND/BON/BV-03-C PASS security-set-sm-data bonding=1 our_key_dist=7 their_key_dist=7 + advertise-configure legacy=1 connectable=1 + advertise-start + + advertise-start + +GAP/BOND/BON/BV-04-C PASS security-set-data bonding=1 + connect-peer_addr= + disconnect conn= + connect peer_addr= + security-pair conn= + disconnect conn= +------------------------------------------------------------------------------- + +GAP/SEC/AUT/BV-11-C PASS security-set-data io_capabilities=1 sc=1 + advertise-configure legacy=1 connectable=1 + advertising-start + Note: in PTS enter handle for characteristics + value which requires encryption for read (gatt-show-local) + auth-passkey conn= action=3 key=123456 + Note: enter '123456' passkey in PTS +GAP/SEC/AUT/BV-12-C PASS security-set-data io_capabilities=1 bonding=1 mitm_flag=1 sc=1 our_key_dist=7 their_key_dist=7 + connect peer_addr= + gatt-show-local + Note: in PTS enter handle for characteristics + value which requires encryption for read + auth-passkey conn= action=3 key=123456 + Note: enter '123456' passkey in PTS +GAP/SEC/AUT/BV-13-C PASS Note: in PTS confirm that IUT supports GATT Server + security-set-data io_capabilities=1 bonding=1 mitm_flag=1 sc=1 our_key_dist=7 their_key_dist=7 + connect peer_addr= + gatt-show-local + Note: in PTS enter handle for characteristics + value which requires authenticated pairing for read + auth-passkey conn= action=3 key=123456 + Note: enter '123456' passkey in PTS +GAP/SEC/AUT/BV-14-C PASS security-set-data io_capabilities=1 + advertise-configure legacy=1 connectable=1 + advertise-start + gatt-show-local + Note: in PTS enter handle for characteristics + value which requires authenticated pairing for read + auth-passkey conn= action=3 key=123456 + Note: enter '123456' passkey in PTS +GAP/SEC/AUT/BV-15-C N/A security-set-data bonding=1 io_capabilities=4 mitm_flag=1 sc=1 our_key_dist=7 their_key_dist=7 + advertise-configure legacy=1 connectable=1 + advertise-start + auth-passkey conn= action=2 key= + advertise-start + gatt-show-local + Note: in PTS enter handle for characteristics + value which requires authenticated pairing for read +GAP/SEC/AUT/BV-16-C N/A security-set-data io_capabilities=1 bonding=1 mitm_flag=1 sc=1 our_key_dist=7 their_key_dist=7 + connect peer_addr= + auth-passkey conn= action=3 key=123456 + Note: enter '123456' passkey in PTS + connect peer_addr= + gatt-show-local + Note: in PTS enter handle for characteristics + value which requires authenticated pairing for read +GAP/SEC/AUT/BV-17-C N/A +GAP/SEC/AUT/BV-18-C N/A +GAP/SEC/AUT/BV-19-C N/A +GAP/SEC/AUT/BV-20-C N/A +GAP/SEC/AUT/BV-21-C N/A +GAP/SEC/AUT/BV-22-C N/A +GAP/SEC/AUT/BV-23-C N/A +GAP/SEC/AUT/BV-24-C N/A + +GAP/SEC/CSIGN/BV-01-C N/A +GAP/SEC/CSIGN/BV-02-C N/A + +GAP/SEC/CSIGN/BI-01-C N/A +GAP/SEC/CSIGN/BI-02-C N/A +GAP/SEC/CSIGN/BI-03-C N/A +GAP/SEC/CSIGN/BI-04-C N/A +------------------------------------------------------------------------------- + +GAP/PRIV/CONN/BV-01-C N/A +GAP/PRIV/CONN/BV-02-C N/A +GAP/PRIV/CONN/BV-03-C N/A +GAP/PRIV/CONN/BV-04-C INC +GAP/PRIV/CONN/BV-05-C N/A +GAP/PRIV/CONN/BV-06-C N/A +GAP/PRIV/CONN/BV-07-C N/A +GAP/PRIV/CONN/BV-08-C N/A +GAP/PRIV/CONN/BV-09-C N/A +GAP/PRIV/CONN/BV-10-C N/A +GAP/PRIV/CONN/BV-11-C N/A +------------------------------------------------------------------------------- + +GAP/ADV/BV-01-C PASS advertise-set-adv_data uuid16=0x1802 + advertise-start + advertise-stop +GAP/ADV/BV-02-C PASS advertise-set-adv_data name= + advertise-start + advertise-stop +GAP/ADV/BV-03-C PASS advertise-set-adv_data flags=6 + advertise-start + advertise-stop +GAP/ADV/BV-04-C PASS advertise-set-adv_data mfg_data=ff:ff + advertise-start + advertise-stop +GAP/ADV/BV-05-C PASS advertise-set-adv_data tx_pwr_lvl=10 + advertise-start + advertise-stop +GAP/ADV/BV-08-C N/A +GAP/ADV/BV-09-C N/A +GAP/ADV/BV-10-C PASS advetrise-set-adv_data service_data_uuid16=18:02:ff:ff + advertise-start + advertise-stop +GAP/ADV/BV-11-C PASS advertise-set -dv_data appearance=12 + advertise-start + advertise-stop +GAP/ADV/BV-12-C N/A +GAP/ADV/BV-13-C N/A +GAP/ADV/BV-14-C N/A +GAP/ADV/BV-15-C N/A +GAP/ADV/BV-16-C N/A +GAP/ADV/BV-17-C PASS In PTS: TSPX_URI= + set-adv-data uri= + advertise-start + advertise-stop +------------------------------------------------------------------------------- + +GAP/GAT/BV-01-C PASS + advertising-start + + connect peer_addr= +GAP/GAT/BV-02-C N/A +GAP/GAT/BV-03-C N/A +GAP/GAT/BV-04-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GAP/GAT/BV-05-C N/A +GAP/GAT/BV-06-C N/A +GAP/GAT/BV-07-C N/A +GAP/GAT/BV-08-C N/A +---------------------------------------------------------------------------- + +GAP/DM/NCON/BV-01-C N/A +GAP/DM/CON/BV-01-C N/A +GAP/DM/NBON/BV-01-C N/A +GAP/DM/BON/BV-01-C N/A +GAP/DM/GIN/BV-01-C N/A +GAP/DM/LIN/BV-01-C N/A +GAP/DM/NAD/BV-01-C N/A +GAP/DM/NAD/BV-02-C N/A +GAP/DM/LEP/BV-01-C N/A +GAP/DM/LEP/BV-02-C N/A +GAP/DM/LEP/BV-04-C N/A +GAP/DM/LEP/BV-05-C N/A +GAP/DM/LEP/BV-06-C N/A +GAP/DM/LEP/BV-07-C N/A +GAP/DM/LEP/BV-08-C N/A +GAP/DM/LEP/BV-09-C N/A +GAP/DM/LEP/BV-10-C N/A +GAP/DM/LEP/BV-11-C N/A +------------------------------------------------------------------------------- + +GAP/MOD/NDIS/BV-01-C N/A +GAP/MOD/LDIS/BV-01-C N/A +GAP/MOD/LDIS/BV-02-C N/A +GAP/MOD/LDIS/BV-03-C N/A +GAP/MOD/GDIS/BV-01-C N/A +GAP/MOD/GDIS/BV-02-C N/A +GAP/MOD/NCON/BV-01-C N/A +GAP/MOD/CON/BV-01-C N/A \ No newline at end of file diff --git a/src/libs/mynewt-nimble/nimble/host/pts/pts-gatt.txt b/src/libs/mynewt-nimble/nimble/host/pts/pts-gatt.txt new file mode 100644 index 00000000..74c0a2e0 --- /dev/null +++ b/src/libs/mynewt-nimble/nimble/host/pts/pts-gatt.txt @@ -0,0 +1,508 @@ +PTS test results for GATT + +PTS version: 7.5.0 +Tested: 27-Sept-2019 + +Results: +PASS test passed +FAIL test failed +INC test is inconclusive +N/A test is disabled due to PICS setup + +------------------------------------------------------------------------------- +Test Name Result Notes +------------------------------------------------------------------------------- +GATT/CL/GAC/BV-01-C PASS connect peer_addr= + gatt-exchanche-mtu conn= + gatt-write conn= long=1 attr= value= + disconnect conn= +------------------------------------------------------------------------------- + +GATT/CL/GAD/BV-01-C PASS connect peer_addr= + gatt-discover-service conn= + gatt-show + + disconnect conn= + +GATT/CL/GAD/BV-02-C PASS connect peer_addr= + gatt-discover-service conn= uuid= + gatt-show + + disconnect conn= + +GATT/CL/GAD/BV-03-C PASS connect peer_addr= + gatt-find-included-services conn= start=1 end=0xffff + + disconnect conn= + +GATT/CL/GAD/BV-04-C PASS connect peer_addr= + gatt-discover-service conn= uuid= + gatt-discover-characteristic conn= start= end= + gatt-show + + disconnect conn= + +GATT/CL/GAD/BV-05-C PASS connect peer_addr= + gatt-discover-service conn= + gatt-discover-characteristic conn= uuid= start= end= + gatt-show + + disconnect conn= + +GATT/CL/GAD/BV-06-C PASS connect peer_addr= + gatt-discover-service conn= + gatt-discover-characteristic conn= start= end= + gatt-discover-descriptor conn= start= end= + + disconnect conn= + +GATT/CL/GAD/BV-07-C N/A +GATT/CL/GAD/BV-08-C N/A +------------------------------------------------------------------------------- + +GATT/CL/GAR/BV-01-C PASS connect peer_addr= + gatt-read conn= attr= + + disconnect conn= +GATT/CL/GAR/BI-01-C PASS connect peer_addr= + gatt-read conn= attr= + + disconnect conn= +GATT/CL/GAR/BI-02-C PASS connect peer_addr= + gatt-read conn= attr= + + disconnect conn= +GATT/CL/GAR/BI-03-C N/A + +GATT/CL/GAR/BI-04-C PASS connect peer_addr= + gatt-read conn= attr= + disconnect conn= + +GATT/CL/GAR/BI-05-C PASS connect peer_addr= + gatt-read conn= attr= + + disconnect conn= +GATT/CL/GAR/BV-03-C PASS connect peer_addr= + gatt-read conn= uuid= start=1 end=0xffff + + + disconnect conn= +GATT/CL/GAR/BI-06-C PASS connect peer_addr= + gatt-read conn= uuid= start= end= + disconnect conn= + +GATT/CL/GAR/BI-07-C PASS connect peer_addr= + gatt-read conn= uuid= start= end= + disconnect conn= + +GATT/CL/GAR/BI-09-C N/A +GATT/CL/GAR/BI-10-C PASS connect peer_addr= + gatt-read conn= uuid= start= end= + disconnect conn= + +GATT/CL/GAR/BI-11-C PASS connect perr_addr= + gatt-read conn= start= end= + disconnect conn= + +GATT/CL/GAR/BV-04-C PASS connect peer_addr= + gatt-read conn= long=1 attr= + + + disconnect conn= +GATT/CL/GAR/BI-12-C PASS connect peer_addr= + gatt-read conn= long=1 attr= + + disconnect conn= +GATT/CL/GAR/BI-13-C PASS connect peer_addr= + gatt-read conn= long=1 attr= offset= + + disconnect conn= +GATT/CL/GAR/BI-14-C PASS connect peer_addr= + gatt-read conn= long=1 attr= + disconnect conn= + +GATT/CL/GAR/BI-15-C N/A + +GATT/CL/GAR/BI-16-C PASS connect peer_addr= + gatt-read conn= long=1 attr= + disconnect conn= + +GATT/CL/GAR/BI-17-C PASS connect peer_addr= + gatt-read conn= long=1 attr= + + disconnect conn= +GATT/CL/GAR/BV-05-C PASS connect peer_addr= + gatt-read conn= attr= attr= + disconnect conn= +GATT/CL/GAR/BI-18-C PASS connect peer_addr= + gatt-read conn= attr= attr= + + disconnect conn= +GATT/CL/GAR/BI-19-C PASS connect peer_addr= + gatt-read conn= attr= attr= + disconnect conn= + +GATT/CL/GAR/BI-20-C N/A + +GATT/CL/GAR/BI-21-C PASS connect peer_addr= + gatt-read conn= attr= attr= + disconnect conn= + +GATT/CL/GAR/BI-22-C PASS connect peer_addr= + gatt-read conn= attr= attr= + + disconnect conn= +GATT/CL/GAR/BV-06-C PASS connect peer_addr= + gatt-read conn= attr= + + disconnect conn= +GATT/CL/GAR/BV-07-C PASS connect peer_addr= + gatt-read conn= long=1 attr= + + + disconnect conn= +GATT/CL/GAR/BI-34-C N/A +GATT/CL/GAR/BI-35-C PASS connect peer_addr= + gatt-read conn= long=1 attr= + + disconnect conn= +------------------------------------------------------------------------------- + +GATT/CL/GAW/BV-01-C PASS connect peer_addr= + gatt-write no_rsp=1 conn= attr= value= + disconnect conn= +GATT/CL/GAW/BV-02-C N/A + +GATT/CL/GAW/BV-03-C PASS connect peer_addr= + gatt-write conn= attr= value= + disconnect conn= +GATT/CL/GAW/BI-02-C PASS connect peer_addr= + gatt-write conn= attr= value= + disconnect conn= +GATT/CL/GAW/BI-03-C PASS connect peer_addr= + gatt-write conn= attr= value= + disconnect conn= +GATT/CL/GAW/BI-04-C N/A + +GATT/CL/GAW/BI-05-C PASS connect peer_addr= + gatt-write conn= attr= value= + disconnect conn= +GATT/CL/GAW/BI-06-C PASS connect peer_addr= + gatt-write conn= attr= value= + disconnect conn= +GATT/CL/GAW/BV-05-C PASS connect peer_addr= + gatt-write long=1 conn= attr= value= + disconnect conn= +GATT/CL/GAW/BI-07-C PASS connect peer_addr= + gatt-write long=1 conn= attr= value= + disocnnect conn= +GATT/CL/GAW/BI-08-C PASS connect peer_addr= + gatt-write long=1 conn= attr= value= + diconnect conn= +GATT/CL/GAW/BI-09-C PASS connect peer_addr= + gatt-write long=1 conn= attr= value= offset= + diconnect conn=1 +GATT/CL/GAW/BI-11-C N/A + +GATT/CL/GAW/BI-12-C PASS connect peer_addr= + gatt-write long=1 conn= attr= value= + disconnect conn= +GATT/CL/GAW/BI-13-C PASS connect peer_addr= + gatt-write long=1 conn= attr= value= + diconnect conn= +GATT/CL/GAW/BV-06-C PASS connect peer_addr= + gatt-write long=1 conn= attr= value= + +GAAT/CL/GAW/BV-08-C PASS connect peer_addr= + gat-write conn= attr= value= + +GATT/CL/GAW/BV-09-C PASS connect peer_addr= + gatt-write long=1 conn= attr= value= + +GATT/CL/GAW/BI-32-C PASS connect peer_addr= + gatt-write conn= attr= value= attr= value= + disconnect conn= +GATT/CL/GAW/BI-33-C PASS connect peer_addr= + gatt-write conn= attr= value= + disconnect conn= +GATT/CL/GAW/BI-34-C PASS connect peer_addr= + gatt-write long=1 conn= attr= value= + disconnect conn= + +------------------------------------------------------------------------------- + +GATT/CL/GAN/BV-01-C PASS connect peer_addr= + gatt-write conn= attr= value=01:00 + Note: verify that the notification was received + disconnect conn= +------------------------------------------------------------------------------- + +GATT/CL/GAI/BV-01-C PASS connect peer_addr= + gatt-write conn= attr= value=01:00 + Note: verify that the notification was received + disconnect conn= +------------------------------------------------------------------------------- + +GATT/CL/GAS/BV-01-C PASS connect peer_addr= + disconnect conn= +------------------------------------------------------------------------------- + +GATT/CL/GAT/BV-01-C PASS connect peer_addr= + gatt-read conn= attr= +GATT/CL/GAT/BV-02-C PASS connect peer_addr= + gatt-write conn= attr= value= +------------------------------------------------------------------------------- + +GATT/CL/GPA/BV-01-C N/A +GATT/CL/GPA/BV-02-C N/A +GATT/CL/GPA/BV-03-C N/A +GATT/CL/GPA/BV-04-C N/A +GATT/CL/GPA/BV-05-C N/A +GATT/CL/GPA/BV-06-C N/A +GATT/CL/GPA/BV-07-C N/A +GATT/CL/GPA/BV-08-C N/A +GATT/CL/GPA/BV-11-C N/A +GATT/CL/GPA/BV-12-C N/A +------------------------------------------------------------------------------- + +GATT/SR/GAC/BV-01-C PASS set mtu=25 + advertise-configure connectable=1 legacy=1 + advertise-start + advertise-start +------------------------------------------------------------------------------- + +GATT/SR/GAD/BV-01-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + gatt-show-local + +GATT/SR/GAD/BV-02-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + gatt-show-local + +GATT/SR/GAD/BV-03-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + gatt-show-local + +GATT/SR/GAD/BV-04-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAD/BV-05-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAD/BV-06-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAD/BV-07-C N/A +GATT/SR/GAD/BV-08-C N/A +------------------------------------------------------------------------------- + +GATT/SR/GAR/BV-01-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BI-01-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BI-02-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAR/BI-03-C N/A +GATT/SR/GAR/BI-04-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BI-05-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BV-03-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BI-06-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + gatt-show-local + + +GATT/SR/GAR/BI-07-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAR/BI-08-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BI-09-C N/A +GATT/SR/GAR/BI-10-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BI-11-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAR/BV-04-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BI-12-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAR/BI-13-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BI-14-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAR/BI-15-C N/A +GATT/SR/GAR/BI-16-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BI-17-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BV-05-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BI-18-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAR/BI-19-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAR/BI-20-C N/A +GATT/SR/GAR/BI-21-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BI-22-C PASS advertise-configure connectable=1 legacy=1 + advertise-startt +GATT/SR/GAR/BV-06-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BI-23-C N/A +GATT/SR/GAR/BI-24-C N/A +GATT/SR/GAR/BI-25-C N/A +GATT/SR/GAR/BI-26-C N/A +GATT/SR/GAR/BI-27-C N/A +GATT/SR/GAR/BV-07-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BV-08-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAR/BI-28-C N/A +GATT/SR/GAR/BI-29-C N/A +GATT/SR/GAR/BI-30-C N/A +GATT/SR/GAR/BI-31-C N/A +GATT/SR/GAR/BI-32-C N/A +GATT/SR/GAR/BI-33-C N/A +GATT/SR/GAR/BI-34-C N/A +GATT/SR/GAR/BI-35-C N/A +------------------------------------------------------------------------------- + +GATT/SR/GAW/BV-01-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BV-02-C N/A +GATT/SR/GAW/BI-01-C N/A +GATT/SR/GAW/BV-03-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-02-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAW/BI-03-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-04-C N/A +GATT/SR/GAW/BI-05-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-06-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BV-05-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-07-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAW/BI-08-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAW/BI-09-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-11-C N/A +GATT/SR/GAW/BI-12-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-13-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BV-06-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BV-10-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-14-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAW/BI-15-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAW/BI-17-C N/A +GATT/SR/GAW/BI-18-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-19-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BV-11-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BV-07-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BV-08-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-20-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAW/BI-21-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAW/BI-22-C N/A +GATT/SR/GAW/BI-23-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-24-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BV-09-C PASS advertise-configure connectable=1 legacy=1q + advertise-start +GATT/SR/GAW/BI-25-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAW/BI-26-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +GATT/SR/GAW/BI-27-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-29-C N/A +GATT/SR/GAW/BI-30-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-31-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-32-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-33-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-34-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/GAW/BI-35-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +------------------------------------------------------------------------------ + +GATT/SR/GAN/BV-01-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + gatt-notify attr= +------------------------------------------------------------------------------ + +GATT/SR/GAI/BV-01-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + gatt-notify attr= +------------------------------------------------------------------------------- + +GATT/SR/GAS/BV-01-C PASS Note: set TSPX_security_enabled to TRUE + security-set-data bonding=1 our_key_dist=7 their_key_dist=7 + advertise-configure connectable=1 legacy=1 + advertise-start + + gatt-service-changed start=1 end=0xffff + advertise-start + security-start conn= +------------------------------------------------------------------------------- + +GATT/SR/GAT/BV-01-C PASS advertise-start + gatt-notify attr=0x0008 +------------------------------------------------------------------------------ + +GATT/SR/GPA/BV-01-C N/A +GATT/SR/GPA/BV-02-C N/A +GATT/SR/GPA/BV-03-C N/A +GATT/SR/GPA/BV-04-C N/A +GATT/SR/GPA/BV-05-C N/A +GATT/SR/GPA/BV-06-C N/A +GATT/SR/GPA/BV-07-C N/A +GATT/SR/GPA/BV-08-C N/A +GATT/SR/GPA/BV-11-C N/A +GATT/SR/GPA/BV-12-C N/A +------------------------------------------------------------------------------- + +GATT/SR/UNS/BI-01-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +GATT/SR/UNS/BI-02-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +-------------------------------------------------------------------------------- + +GATT/SR/GPM/BV-01-C N/A + diff --git a/src/libs/mynewt-nimble/nimble/host/pts/pts-l2cap.txt b/src/libs/mynewt-nimble/nimble/host/pts/pts-l2cap.txt new file mode 100644 index 00000000..c09add91 --- /dev/null +++ b/src/libs/mynewt-nimble/nimble/host/pts/pts-l2cap.txt @@ -0,0 +1,304 @@ +PTS test results for L2CAP + +PTS version: 7.5.0 +Tested: 07-Oct-2019 + +syscfg.vals: + BLE_EXT_ADV: 1 + BLE_PUBLIC_DEV_ADDR: "((uint8_t[6]){0x01, 0xff, 0xff, 0xc0, 0xde, 0xc0})" + BLE_SM_LEGACY: 1 + BLE_SM_SC: 1 + BLE_L2CAP_COC_MAX_NUM: 5 + BLE_SVC_GAP_PPCP_MIN_CONN_INTERVAL: 9 + BLE_SVC_GAP_PPCP_MAX_CONN_INTERVAL: 30 + BLE_SVC_GAP_PPCP_SUPERVISION_TMO: 2000 + CONSOLE_HISTORY_SIZE: 10 + +Results: +PASS test passed +FAIL test failed +INC test is inconclusive +N/A test is disabled due to PICS setup + +------------------------------------------------------------------------------- +Test Name Result Notes +------------------------------------------------------------------------------- + +L2CAP/COS/CED/BV-01-C N/A +L2CAP/COS/CED/BV-03-C N/A +L2CAP/COS/CED/BV-04-C N/A +L2CAP/COS/CED/BV-05-C N/A +L2CAP/COS/CED/BV-07-C N/A +L2CAP/COS/CED/BV-08-C N/A +L2CAP/COS/CED/BV-09-C N/A +L2CAP/COS/CED/BV-10-C N/A +L2CAP/COS/CED/BV-11-C N/A +L2CAP/COS/CED/BI-01-C N/A +------------------------------------------------------------------------------- + +L2CAP/COS/CFD/BV-01-C N/A +L2CAP/COS/CFD/BV-02-C N/A +L2CAP/COS/CFD/BV-03-C N/A +L2CAP/COS/CFD/BV-08-C N/A +L2CAP/COS/CFD/BV-09-C N/A +L2CAP/COS/CFD/BV-10-C N/A +L2CAP/COS/CFD/BV-11-C N/A +L2CAP/COS/CFD/BV-12-C N/A +L2CAP/COS/CFD/BV-13-C N/A +------------------------------------------------------------------------------- + +L2CAP/COS/IEX/BV-01-C N/A +L2CAP/COS/IEX/BV-02-C N/A +------------------------------------------------------------------------------- + +L2CAP/COS/ECH/BV-01-C N/A +L2CAP/COS/ECH/BV-02-C N/A +------------------------------------------------------------------------------- + +L2CAP/COS/CFC/BV-01-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + l2cap-create-server psm= + advertise-start + l2cap-send conn= idx=0 bytes=15 + +L2CAP/COS/CFC/BV-02-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + l2cap-create-server psm= + advertise-start + l2cap-send conn= idx=0 bytes=15 + +L2CAP/COS/CFC/BV-03-C PASS NOTE: #define BTSHELL_COC_MTU = 512 + advertise-configure connectable=1 legacy=1 + l2cap-create-server psm= + advertise-start +L2CAP/COS/CFC/BV-04-C PASS advertise-configure connectable=1 legacy=1 + l2cap-create-server psm= + advertise-start +L2CAP/COS/CFC/BV-05-C PASS advertise-configure connectable=1 legacy=1 + l2cap-create-server psm= + advertise-start + l2cap-connect conn= psm= + l2cap-connect conn= psm=<2nd psm> +------------------------------------------------------------------------------- + +L2CAP/CLS/CLR/BV-01-C N/A +------------------------------------------------------------------------------- + +L2CAP/CLS/UCD/BV-01-C N/A +L2CAP/CLS/UCD/BV-02-C N/A +L2CAP/CLS/UCD/BV-03-C N/A +------------------------------------------------------------------------------- + +L2CAP/EXF/BV-01-C N/A +L2CAP/EXF/BV-02-C N/A +L2CAP/EXF/BV-03-C N/A +L2CAP/EXF/BV-04-C N/A +L2CAP/EXF/BV-05-C N/A +L2CAP/EXF/BV-06-C N/A +------------------------------------------------------------------------------- + +L2CAP/CMC/BV-01-C N/A +L2CAP/CMC/BV-02-C N/A +L2CAP/CMC/BV-03-C N/A +L2CAP/CMC/BV-04-C N/A +L2CAP/CMC/BV-05-C N/A +L2CAP/CMC/BV-06-C N/A +L2CAP/CMC/BV-07-C N/A +L2CAP/CMC/BV-08-C N/A +L2CAP/CMC/BV-09-C N/A +L2CAP/CMC/BV-10-C N/A +L2CAP/CMC/BV-11-C N/A +L2CAP/CMC/BV-12-C N/A +L2CAP/CMC/BV-13-C N/A +L2CAP/CMC/BV-14-C N/A +L2CAP/CMC/BV-15-C N/A +L2CAP/CMC/BI-01-C N/A +L2CAP/CMC/BI-02-C N/A +L2CAP/CMC/BI-03-C N/A +L2CAP/CMC/BI-04-C N/A +L2CAP/CMC/BI-05-C N/A +L2CAP/CMC/BI-06-C N/A +------------------------------------------------------------------------------- + +L2CAP/FOC/BV-01-C N/A +L2CAP/FOC/BV-02-C N/A +L2CAP/FOC/BV-03-C N/A +------------------------------------------------------------------------------- + +L2CAP/OFS/BV-01-C N/A +L2CAP/OFS/BV-02-C N/A +L2CAP/OFS/BV-03-C N/A +L2CAP/OFS/BV-04-C N/A +L2CAP/OFS/BV-05-C N/A +L2CAP/OFS/BV-06-C N/A +L2CAP/OFS/BV-07-C N/A +L2CAP/OFS/BV-08-C N/A +------------------------------------------------------------------------------- + +L2CAP/ERM/BV-01-C N/A +L2CAP/ERM/BV-02-C N/A +L2CAP/ERM/BV-03-C N/A +L2CAP/ERM/BV-05-C N/A +L2CAP/ERM/BV-06-C N/A +L2CAP/ERM/BV-07-C N/A +L2CAP/ERM/BV-08-C N/A +L2CAP/ERM/BV-09-C N/A +L2CAP/ERM/BV-10-C N/A +L2CAP/ERM/BV-11-C N/A +L2CAP/ERM/BV-12-C N/A +L2CAP/ERM/BV-13-C N/A +L2CAP/ERM/BV-14-C N/A +L2CAP/ERM/BV-15-C N/A +L2CAP/ERM/BV-16-C N/A +L2CAP/ERM/BV-17-C N/A +L2CAP/ERM/BV-18-C N/A +L2CAP/ERM/BV-19-C N/A +L2CAP/ERM/BV-20-C N/A +L2CAP/ERM/BV-21-C N/A +L2CAP/ERM/BV-22-C N/A +L2CAP/ERM/BV-23-C N/A +L2CAP/ERM/BI-01-C N/A +L2CAP/ERM/BI-02-C N/A +L2CAP/ERM/BI-03-C N/A +L2CAP/ERM/BI-04-C N/A +L2CAP/ERM/BI-05-C N/A +------------------------------------------------------------------------------- + +L2CAP/STM/BV-01-C N/A +L2CAP/STM/BV-02-C N/A +L2CAP/STM/BV-03-C N/A +L2CAP/STM/BV-11-C N/A +L2CAP/STM/BV-12-C N/A +L2CAP/STM/BV-13-C N/A +------------------------------------------------------------------------------- + +L2CAP/FIX/BV-01-C N/A +L2CAP/FIX/BV-02-C N/A +------------------------------------------------------------------------------- + +L2CAP/EWC/BV-01-C N/A +L2CAP/EWC/BV-02-C N/A +L2CAP/EWC/BV-03-C N/A +------------------------------------------------------------------------------- + +L2CAP/LSC/BV-01-C N/A +L2CAP/LSC/BV-02-C N/A +L2CAP/LSC/BV-03-C N/A +L2CAP/LSC/BI-04-C N/A +L2CAP/LSC/BI-05-C N/A +L2CAP/LSC/BV-06-C N/A +L2CAP/LSC/BV-07-C N/A +L2CAP/LSC/BV-08-C N/A +L2CAP/LSC/BV-09-C N/A +L2CAP/LSC/BI-10-C N/A +L2CAP/LSC/BI-11-C N/A +L2CAP/LSC/BV-12-C N/A +------------------------------------------------------------------------------- + +L2CAP/CCH/BV-01-C N/A +L2CAP/CCH/BV-02-C N/A +L2CAP/CCH/BV-03-C N/A +L2CAP/CCH/BV-04-C N/A +------------------------------------------------------------------------------- + +L2CAP/ECF/BV-01-C N/A +L2CAP/ECF/BV-02-C N/A +L2CAP/ECF/BV-03-C N/A +L2CAP/ECF/BV-04-C N/A +L2CAP/ECF/BV-05-C N/A +L2CAP/ECF/BV-06-C N/A +L2CAP/ECF/BV-07-C N/A +L2CAP/ECF/BV-08-C N/A +------------------------------------------------------------------------------- + +L2CAP/LE/CPU/BV-01-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + advertise-start + l2cap-update conn= +L2CAP/LE/CPU/BV-02-C PASS connect peer_addr= + disconnect conn= +L2CAP/LE/CPU/BI-01-C PASS connect peer_addr= + disconnect conn= +L2CAP/LE/CPU/BI-02-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + advertise-start +------------------------------------------------------------------------------- + +L2CAP/LE/REJ/BI-01-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + advertise-start +L2CAP/LE/REJ/BI-02-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + advertise-start + disconnect conn= +------------------------------------------------------------------------------- + +L2CAP/LE/CFC/BV-01-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + advertise-start +L2CAP/LE/CFC/BV-02-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + advertise-start + l2cap-connect conn= psm=90 +L2CAP/LE/CFC/BV-03-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + l2cap-create-server psm= + advertise-start + l2cap-send conn= idx=0 bytes=15 + +L2CAP/LE/CFC/BV-04-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + advertise-start + l2cap-connect conn= psm= +L2CAP/LE/CFC/BV-05-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + advertise-start +L2CAP/LE/CFC/BV-06-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + l2cap-create-server psm= + advertise-start + l2cap-send conn= idx=0 bytes=15 +L2CAP/LE/CFC/BV-07-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + l2cap-create-server psm= + advertise-start +L2CAP/LE/CFC/BI-01-C PASS advertise-configure connectable=1 legacy=1 + l2cap-create-server psm= + advertise-start +L2CAP/LE/CFC/BV-08-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + l2cap-create-server psm= + advertise-start + l2cap-disconnect conn= idx=0 +L2CAP/LE/CFC/BV-09-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + l2cap-create-server psm= + advertise-start +L2CAP/LE/CFC/BV-16-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + advertise-start + l2cap-connect conn= psm=90 +L2CAP/LE/CFC/BV-17-C N/A +L2CAP/LE/CFC/BV-18-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + advertise-start + l2cap-connect conn= psm=90 +L2CAP/LE/CFC/BV-19-C PASS NOTE: TSPC_L2CAP_3_16 (multiple channel support) must be checked + advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + advertise-start + l2cap-connect conn= psm=90 +L2CAP/LE/CFC/BV-20-C PASS NOTE: TSPC_L2CAP_3_16 (multiple channel support) must be checked + advertise-configure connectable=1 legacy=1 + l2cap-create-server psm= + advertise-start +L2CAP/LE/CFC/BV-21-C PASS advertise-configure connectable=1 legacy=1 + advertise-set-adv-data flags=6 + advertise-start + l2cap-connect conn= psm=90 +------------------------------------------------------------------------------- + +L2CAP/LE/CID/BV-01-C N/A +L2CAP/LE/CID/BV-02-C N/A +------------------------------------------------------------------------------- + diff --git a/src/libs/mynewt-nimble/nimble/host/pts/pts-sm.txt b/src/libs/mynewt-nimble/nimble/host/pts/pts-sm.txt new file mode 100644 index 00000000..ac26db71 --- /dev/null +++ b/src/libs/mynewt-nimble/nimble/host/pts/pts-sm.txt @@ -0,0 +1,310 @@ +PTS test results for SM + +PTS version: 7.5.0 +Tested: 07-Oct-2019 + +syscfg.vals: + BLE_EXT_ADV: 1 + BLE_PUBLIC_DEV_ADDR: "((uint8_t[6]){0x01, 0xff, 0xff, 0xc0, 0xde, 0xc0})" + BLE_SM_LEGACY: 1 + BLE_SM_SC: 1 + BLE_L2CAP_COC_MAX_NUM: 5 + BLE_SVC_GAP_PPCP_MIN_CONN_INTERVAL: 9 + BLE_SVC_GAP_PPCP_MAX_CONN_INTERVAL: 30 + BLE_SVC_GAP_PPCP_SUPERVISION_TMO: 2000 + CONSOLE_HISTORY_SIZE: 10 + +Results: +PASS test passed +FAIL test failed +INC test is inconclusive +N/A test is disabled due to PICS setup +NONE test result is none + +------------------------------------------------------------------------------- +Test Name Result Notes +------------------------------------------------------------------------------- + +SM/MAS/PROT/BV-01-C PASS connect peer_addr= + security-set-data bonding=1 sc=1 our_key_dist=7 their_key_dist=7 + security-pair conn= +------------------------------------------------------------------------------- + +SM/MAS/JW/BV-01-C N/A +SM/MAS/JW/BV-05-C PASS connect peer_addr= + security-pair conn= + disconnect conn= + +SM/MAS/JW/BI-01-C PASS connect peer_addr= + security-pair conn= +SM/MAS/JW/BI-04-C PASS connect peer_addr= + security-set-data bonding=1 sc=1 + security-pair conn= +------------------------------------------------------------------------------- + +SM/MAS/PKE/BV-01-C PASS security-set-data io_capabilities=1 + connect peer_addr= + b sec pair conn= + b passkey conn= action=3 key=123456 + Note: enter '123456' passkey in PTS +SM/MAS/PKE/BV-04-C PASS security-set-data bonding=1 oob_flag=0 + connect peer_addr= + security-pair conn= + disconnect conn= +SM/MAS/PKE/BI-01-C PASS ecurity-set-data io_capabilities=1 oob_flag=0 + connect peer_addr= + security-pair conn= + auth-passkey conn= action=3 key=123456 + Note: enter invalid passkey +SM/MAS/PKE/BI-02-C PASS security-set-data io_capabilities=1 oob_flag=0 + connect peer_addr= + security-pair conn= + auth-passkey conn= action=3 key=123456 + Note: enter '123456' passkey in PTS +------------------------------------------------------------------------------- + +SM/MAS/OOB/BV-01-C N/A +SM/MAS/OOB/BV-03-C N/A +SM/MAS/OOB/BV-05-C PASS security-set-data io_capabilities=1 oob_flag=0 + connect-peer_addr= + security-pair conn= + auth-passkey conn= action=3 key=123456 + Note: enter '123456' passkey in PTS + disconnect conn=1 +SM/MAS/OOB/BV-07-C PASS ecurity-set-data io_capabilities=1 oob_flag=0 + connect-peer_addr= + security-pair conn= + disconnect conn=1 +SM/MAS/OOB/BV-09-C N/A +SM/MAS/OOB/BI-01-C N/A +------------------------------------------------------------------------------- + +SM/MAS/EKS/BV-01-C PASS connect peer_addr= + security-pair conn= + disconnect conn=1 +SM/MAS/EKS/BI-01-C PASS connect peer_addr= + security-pair conn= + disconnect conn=1 +------------------------------------------------------------------------------- + +SM/MAS/SIGN/BV-01-C N/A +SM/MAS/SIGN/BV-03-C N/A +SM/MAS/SIGN/BI-01-C N/A +------------------------------------------------------------------------------- + +SM/MAS/KDU/BV-04-C PASS security-set-data our_key_dist=4 + connect peer_addr= + security-pair conn= + disconnect conn=1 +SM/MAS/KDU/BV-05-C PASS security-set-data our_key_dist=2 + connect peer_addr= + security-pair conn= + disconnect conn=1 +SM/MAS/KDU/BV-06-C PASS security-set-data our_key_dist=1 + connect peer_addr= + security-pair conn= + disconnect conn=1 +SM/MAS/KDU/BV-10-C PASS security-set-data our_key_dist=2 sc=1 + connect peer_addr= + security-pair conn= + disconnect conn=1 +SM/MAS/KDU/BV-11-C PASS security-set-data our_key_dist=2 sc=1 + connect peer_addr= + security-pair conn= + disconnect conn=1 +SM/MAS/KDU/BI-01-C PASS connect peer_addr= + disconnect conn=1 + reset device + + +------------------------------------------------------------------------------- + +SM/MAS/SIP/BV-02-C PASS security-set-data io_capabilities=4 + connect peer_addr= + disconnect conn=1 +------------------------------------------------------------------------------- +SM/MAS/SCJW/BV-01-C PASS security-set-data sc=1 + connect peer_addr= + security-pair conn= + disconnect conn=1 +SM/MAS/SCJW/BV-04-C PASS security-set-data sc=1 io_capabilities=1 our_key_dist=1 + connect peer_addr= + security-pair conn= + disconnect conn=1 +SM/MAS/SCJW/BI-01-C PASS security-set-data sc=1 io_capabilities=4 + connect peer_addr= + security-pair conn= + disconnect conn=1 + + +------------------------------------------------------------------------------- + +SM/MAS/SCPK/BV-01-C PASS security-set-data sc=1 io_capabilities=2 + connect peer_addr= + security-pair conn= + auth_passkey conn=1 action=2 key=123456 + Note: enter '123456' passkey in PTS + disconnect conn=1 +SM/MAS/SCPK/BV-04-C PASS security-set-data io_capabilities=4 oob_flag=0 our_key_dist=1 their_key_dist=1 + connect peer_addr= + security-pair conn= + auth_passkey conn=1 action=2 key=123456 + Note: enter '123456' passkey in PTS + disconnect conn=1 +SM/MAS/SCPK/BI-01-C PASS security-set-data io_capabilities=4 oob_flag=0 sc=1 + connect peer_addr= + security-pair conn= + disconnect conn=1 + + auth_passkey conn=1 action=2 key=123456 + Note: enter '123456' passkey in PTS + disconnect conn=1 +SM/MAS/SCPK/BI-02-C PASS security-set-data io_capabilities=2 oob_flag=0 bonding=1 sc=1 + connect peer_addr= + security-pair conn= + auth_passkey conn=1 action=2 key=123456 + Note: enter '123456' passkey in PTS + disconnect conn=1 +------------------------------------------------------------------------------- + +SM/MAS/SCOB/BV-01-C N/A +SM/MAS/SCOB/BI-04-C N/A +SM/MAS/SCOB/BV-01-C N/A +SM/MAS/SCOB/BI-04-C N/A +------------------------------------------------------------------------------- + +SM/MAS/SCCT/BV-01-C N/A +SM/MAS/SCCT/BV-03-C N/A +SM/MAS/SCCT/BV-05-C N/A +SM/MAS/SCCT/BV-07-C N/A +SM/MAS/SCCT/BV-09-C N/A +------------------------------------------------------------------------------- + +SM/SLA/PROT/BV-02-C PASS advertise-configure connectable=1 legacy=1 + advertise-start + +------------------------------------------------------------------------------- + +SM/MAS/JW/BV-02-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +SM/SLA/JW/BI-02-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +SM/SLA/JW/BI-03-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +------------------------------------------------------------------------------- + +SM/SLA/PKE/BV-02-C PASS security-set-data io_capabilities=4 + advertise-configure connectable=1 legacy=1 + advertise-start + auth-passkey conn= action=2 key= + +SM/SLA/PKE/BV-05-C PASS security-set-data io_capabilities=4 + advertise-configure connectable=1 legacy=1 + advertise-start +SM/SLA/PKE/BI-03-C PASS security-set-data io_capabilities=4 + advertise-configure connectable=1 legacy=1 + advertise-start + auth-passkey conn= action=3 key=123456 + Note: enter invalid passkey +------------------------------------------------------------------------------- + +SM/SLA/OOB/BV-02-C N/A +SM/SLA/OOB/BV-04-C N/A +SM/SLA/OOB/BV-06-C PASS security-set-data io_capabilities=1 + advertise-configure connectable=1 legacy=1 + advertise-start + auth-passkey conn= action=3 key= +SM/SLA/OOB/BV-08-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +SM/SLA/OOB/BV-10-C N/A +SM/SLA/OOB/BI-02-C N/A +------------------------------------------------------------------------------- + +SM/SLA/EKS/BV-02-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +SM/SLA/EKS/BI-02-C PASS advertise-configure connectable=1 legacy=1 + advertise-start +------------------------------------------------------------------------------- + +SM/SLA/KDU/BV-01-C PASS security-set-data io_capabilities=1 + advertise-configure connectable=1 legacy=1 + advertise-start +SM/SLA/KDU/BV-02-C PASS security-set-data io_capabilities=2 + advertise-configure connectable=1 legacy=1 + advertise-start +SM/SLA/KDU/BV-03-C PASS security-set-data io_capabilities=4 + advertise-configure connectable=1 legacy=1 + advertise-start +SM/SLA/KDU/BV-07-C PASS security-set-data our_key_dist=1 bonding=1 + advertise-configure connectable=1 legacy=1 + advertise-start +SM/SLA/KDU/BV-08-C PASS security-set-data our_key_dist=2 sc=1 + advertise-configure connectable=1 legacy=1 + advertise-start +SM/SLA/KDU/BV-09-C PASS security-set-data our_key_dist=4 bonding=0 + advertise-configure connectable=1 legacy=1 + advertise-start +SM/SLA/KDU/BI-01-C PASS advertise-configure connectable=1 legacy=1 + security-set-data sc=1 + advertise-start + + +------------------------------------------------------------------------------- + +SM/SLA/SIP/BV-01-C PASS security-set-data io_capabilities=4 + advertise-configure connectable=1 legacy=1 + advertise-start + security-start conn= +------------------------------------------------------------------------------- + +SM/SLA/SIE/BV-01-C PASS security-set-data io_capabilities=3 bonding=1 our_key_dist=1 their_key_dist=1 + advertise-configure connectable=1 legacy=1 + advertise-start + advertise-start + security-start conn= +------------------------------------------------------------------------------- + +SM/SLA/SCJW/BV-02-C PASS security-set-data io_capabilities=4 oob_flag=0 bonding=0 mitm_flag=0 sc=1 our_key_dist=1 + advertise-configure connectable=1 legacy=1 + advertise-start +SM/SLA/SCJW/BV-03-C PASS security-set-data io_capabilities=1 our_key_dist=1 oob_flag=0 + advertise-configure connectable=1 legacy=1 + advertise-start +SM/SLA/SCJW/BI-02-C PASS security-set-data io_capabilities=1 oob_flag=0 bonding=1 sc=1 + advertise-configure connectable=1 legacy=1 + advertise-start +------------------------------------------------------------------------------- + +SM/SLA/SCPK/BV-02-C PASS security-set-data io_capabilities=1 oob_flag=0 sc=1 + advertise-configure connectable=1 legacy=1 + advertise-start + auth-passkey conn=1 action=4 key=186900 yesno=yy +SM/SLA/SCPK/BV-03-C PASS security-set-data io_capabilities=2 oob_flag=0 our_key_dist=1 their_key_dist=1 sc=1 + advertise-configure connectable=1 legacy=1 + advertise-start + auth-passkey conn=1 action=2 key=123456 + Note: enter '123456' passkey in PTS +SM/SLA/SCPK/BI-03-C PASS security-set-data io_capabilities=2 oob_flag=0 sc=1 + advertise-configure connectable=1 legacy=1 + advertise-start + auth-passkey conn=1 action=2 key=123456 oob= + Note: enter '123456' passkey in PTS +SM/SLA/SCPK/BI-04-C PASS security-set-data io_capabilities=2 oob_flag=0 mitm_flag=1 sc=1 + advertise-configure connectable=1 legacy=1 + advertise-start + + auth-passkey conn=1 action=2 key=123456 + Note: enter '123456' passkey in PTS +------------------------------------------------------------------------------- + +SM/SLA/SCOB/BV-02-C N/A +SM/SLA/SCOB/BI-03-C N/A +SM/SLA/SCOB/BV-02-C N/A +SM/SLA/SCOB/BI-03-C N/A +------------------------------------------------------------------------------- + +SM/SLA/SCCT/BV-02-C N/A +SM/SLA/SCCT/BV-04-C N/A +SM/SLA/SCCT/BV-06-C N/A +SM/SLA/SCCT/BV-08-C N/A +SM/SLA/SCCT/BV-10-C N/A \ No newline at end of file diff --git a/src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085122560.tpg b/src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085122560.tpg new file mode 100644 index 00000000..3cc985fa --- /dev/null +++ b/src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085122560.tpg @@ -0,0 +1,1026 @@ + +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$[)%)G>_I 0Q?@: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?^A\-B,<@/IVC+$#XFXJ<65V*OE'"L]7*OEJ*C]CS^."A/) (K_@0 +ME"&)D)^IP]?+')Q(%NM&7:VL@*6#D!-TU,7.WG SERP(@*R+DH"MPH;@X:Y) +M]X6NG8^EC)N?AH+3[\3SG''R3(?WRGF0NZ#,_4%*E)&>&9R)5[F0OM$A0Y.; +MA8R7%EGBS&\IDPYNR%4ZV$FK^(F[P B/[TU86=H%S^ +MH[H^EYQB:MZ)A:2@IV)4O=//SXNP#%F]5N&<3KZL>(#6'H"D4\DST(O!(![@ +MUYZX#+:1G:V5BE&TGHK]+;@:^JF;;2-&@WD;Z8I9*SB5D+7 &/J8NI6GYGMDGK2(U+_)K!,I$6Q4R% +MAIE9AK#]!JAFCWWD:A8K.9O/I(;D(F2G*6A0YUCMIOQ5M*VD#1: +MG9^)MMZ GIK7,^R0^M"/\%^_B9Y7TLQ/^N?S1 DEF 6XUJU"V_3_U\44H9.; +M6C/PV(36QT(9B9^.C)*YUP?BN>#F%4ST/JM>\*Y;K)J:S+4[O%?G[S[L"^FPVC9/W+).O23U=;?;2EV+G5"5%KG(EED8SLB#Q["2.9YW6IB4DKT QL7P\,%# +MAY^ (+Y+V8GD:B'!S H%G*;=[-\ +M 0+QQ3;G\H21FY_P4-)38+ =K,/38[24B[6W\(N-L/(9[/_LY.X/OLZ%S;A> +MO0TN'._"@/.)DDZ*AGY.V1XW%G7:O+R67U"C@:L%+T\24!11KH^]@[UR\Y\T +M'G.5D/)=H)R"J6R470%+AO24DHF5L -2OV(60>3Z]/#0\HE4<(V%GXBM% 0- +M3X-@G;H%E[2$DL$P-?W&"JI0-EV0AUP(\>] XIW!BI6DO7I9T33VE._FJ(*_ +MKQ6$@E,QFO?! P_#OYFAJ_:"JEF6?]O2PM3:)3"+BYBAK :/H:SLBX.NPOA_3S>U9*&PG[SAU:$=KQR\M>?\!X3 +MZYZ?J;\8N0V1]JOBJ@3;9=L01YQ<:%>>U)-!GAL!T^"]VF8KB/^$EH.ENI:4 +M[(80V,)1T>^'[@;!KIZ5T4.RQW)2M,X;#;8LTO_GV8V[OD6F@JNK JO G$2Q +MH(=0E:GW!3:0E_/T4ZF!M!D-F1F7NI*^QP;A%%V8M*U:R59]QE^+$NONY](% +M28E"K!J#K5N5E8#B_OU9L819J(CL]20ZBF"L4*4D#JV,*& +MYJV<6(JKEZZ4+^NI?%8D<$.P^*4 Z#=7K>XM. +MU3'S/BX/AP [V4*K!EY0C-/CE//ME"./3?_H5OQM$R!7NN&@21#()=Q)MEIG +MU_Y)N7IZ .'V51 ]]L:;LEZ+DI"H^K R=CO:@D2&#^H,PQ!"EDZ>@'"*JK)I +MM9<-XF7"=^(HC+:D156UME\ U?+P=G >A(^3=EW1ZB[7^C_1CZ&R#Y!"F:FH +MHO_0SL+1D%1$55K!?)*MLC?(]!3G_A,(AXY&\M.G+@>5;>6Z]?^Z&KBV:9N< +MBRWP0KI!\#7P]MOC;Y)<5(NN%8*2GEL9'\7/SMD 1Q6PCZ]6;0T*&KK)-^4N +M-OV!3U6TE8(,B;9"K*0WH=?J*<_9J=-(NK)0LY:FO5R)P'*3V.;%;^Z6() 2 +MWEB>F*H-#0RERD0TG[]6I4)#T_26M/[GQ8V5MO]RIY&RN%W_S1G/L829DMR2 +M]('/K/92XJKUML7OR!,>P)J*"H>&-Q0-\]("+'L^-EO>=(036Y>P%.:V&"8V-7ZT139&:(YNN@Z VJQCV=M VOMJ:E/XOE(L[GZ4;QT"H +M$!AY7Y>2^:N K"-$'B0L[FEJN#[Q19:D[2;=9F*>)!$@X/4']#" +M!1&2G)8;"$M&=?M B=+DQ^YQ"-!FB)9'T\^32NDK[68N]-J[6Y^IR:Z(A[.. +M6RG95?0:6^K'2FAK[7\O>>+_9#G(I4O*2=3,_<+@R)UM-9DW*NL+I?DJA^ +M:X8+&-[1=O9MX:R#BIVVVL*?&,-#U928LBR6DI:OR/OQV_;Z"H13GEZ <)J[ +M^8(-)]\+U9V24@V?@HK_A'3=YS&MN]3U&:<&)%JJPHZ6H4 --!,T\L,(ICBY +M$XOXI)]-\^"U_CHZ!52.^"'OK$V=K;>;@,34R_HCW U3FB1#KKV/@Z#_S.'% +M9M 26;U3E76LAFN3DZG5@QO8R.G+!?N(V9N<2;,*E9E2@K&$0L$X+707X.^\ +MT*.^GE""6H$?\19Z=D.11X"6D]CR\RWCD_%?L8JF/FV$&X]!:4**[ +MIJ&85T .P5K[]>8?Q92+TN#S6X[[MHCH"/&KV'J%?' +MDXN2D@L"PEG3X\S?#I9!&(61@+:/6K0YEXK-.ODV/_?'<;&3^)J!2E##A^,3 +M^E;>K7N=]K<"P^$PWC05A%.T7+ 72YJ2?GKS[_#*?9/+D5I=DGF1MKNMU-:; +MTA'SN[>Q@KJ'7 >7QXCJY?#F JZBH%J*TH7WD[S#-.W&]"["KX^N/$.2E8- +M\'OI3>S9)=OP3U7$O"FNK.\J5(+0IC!.XWY;M$\. +M=$Z/KD^-C/1_0?_L_+W"8^N=B7="A8V64I)?G0DOR_KWS/WPQFUSE4C6DDBH +MPJ(PFL.YN.[W]D+^>+I&EEF\EPW'VQA<& I.AD"V5P+ .6_&1:%>-O&=E8%* +M4Z0_F\3GXHI]D-*1FG<:^(&&FQ$__=_Z\-!-I[N#]"^O-VP$ U1GN0\!K]*A/C9:4F99SFM+[ +M[/?CV\*/O(Z#ME:'OC&&?BVA3B31],CN[TF*EE6"FYY(_IXY];+QIY%OQ/?P +MO'*3\1.ABJKLSL+ 7[&CG)>!3%[%>BSWMCX#>%VV+I"SC'*XM%O%*Q$\F$3R +MFPZ16JEA@IM"\L/P^B,0TK:X6KG'%9"W[*C0N>76+Q%7H<_>PHYZHI3A)I%T +M'CJE1J;\5+\;VP%IFYWG(<')6(D;XR:/K)56#*O 5YC#VK;WD_H'2JC>IQI2 +M#Q)4X? :TPVM[5T "L<4HRZ>IZZGK_N#H)Z#!2#PQ>W&P5H#TE6?DII]0?_U +M&*Q64E:.A]I>Y.KMN_K%\W60 9M4G7>#89>?AQ=WP<6$M/BPF(@#DXY8H>HV +M_98"]E%UHB\\ASAPD.K1\^:UE\.K'Z!]6YL*DABNQ='FFM8U\J>$N;^)5E:; +M)HY7P\"EFN02YN[;E$Z.O[U&K 1"I3*7,,8PB6.?)NNE%"<+^?)R\BZB9Z6IC<;N)4W +MEY_GY\JLE%.13J-^"6Q2BLC7\M ,DGJQ)(E!VJ2>JL$T&>X]XL(MD$C9 KM8 +M%Y>>1_Z3H)?PNK"UEQY;MXY:G%GHQVX4[8_K5(P&CO(G'D&LVCKQRXG#YNWUT]23B'FSNANK +M@Z20C[BBQL4UU=+ND/(1D56Y OC->0^5A'RAD:0)&OZ$T.+\%E=K2E)F21L'SG5?CVIO&C8Z+K@7F\3[O\+J% +MK ,6OHYV"U3WZ=%^O_I*[+2LOFNZ'JB&3Z[%X$%9K\/(9II5A+\>CLV44)DG +MY"7V/;KFB)A=4].7@ZASJ'":Q?OL=UEIJBM)BH:'DOQRDJGTL!*[0>HY??Y= +MFH1(OYRWAUJ2T4S+"ZR@FZZRN4&HP\;T]IH2Q9F!DZV225N_C9);$_T!Y9J6 +MB?F&05X*DJ"#A3HS)L?'&@E>::Z$F&OD%;D[>K$/HNT2&C7!VF$ _$SYEG(;VM@7+&[?+^VI-.F;>X +M4$N*I)"B-MC^$ ;YV2@#T;JXA(JZ$ N3WQ-JL"%2M&J##F86WT/BL'P +MY.VZ(+&==J "\H:'QX.LP/#E[>8/BUZF'QI-5Y"0G*"V[S?D9O%'18Y.OQY. +MBN.WELSHV]K#\>(NUEP8;K>_4;:W^HE8]=?]M-" G)V?4[6AJYZ2EEO(SYH. +MTTO,P0*3G@V)GMG/YD6U,L<2Y XGUX) +M5_*33$# Y3?& [B;I:JP:89:E>KG^_6:7=8*G*!8[&^$;(Z@1KQ02XQR>D^[0?W8I/O-HL#UDI)0DZAU +MB0)0^(Z7S,)\T"?Z U#6N@25I]B*U0;.UH2"=%]>6:ZX\2'U/M(5U716I!UU +MAU>VX _/V?RJT)V2DA"&F9I3<(VJ\_9U\.#3L9.F9)JHII.?H+_E_M'N.AC' +MLJ26B+DMEGL&T.?A\O3"2VZZG P?TXM@[/:MS>W.P<\+W$D$U;_/>$NY>I>X +M@7(U+^;^3T^$B;-_E[M7GA&.60E*V?<3XZ;8V;L]]0J6EIF<%& -J5L2]SOF +M)..<4(JK6EB.FR?/*Y/*3^&/#W\G-)F'B? +M_I^'2E1MGHKG[)A4BPP,6SO'#EU2L@8-FX'XNKJJMD?P]A#56)N3GJ:]0(]# +MKQOCD)&4K4(9#][#/G_6O= #>+!255^7FJLR<%C8RX_1K[:$A7N@B;OC]X-8 +MD<#T'M<6O7NCD]Z'?G!;B/,JPSIMY8V7L!]:YYA>@(CT]#ETYC7;3**MC$LL +MGITZ!Y[MV@],Q_+DGQ6>J,^3K(EMA+=-(OW7L//1@8:QI5G:JH(>;!2"QRXJ +M+R[F!=L=DUCVD5J60+I_Q%R+1_*UQG;UV46@EY],D=";@:GC\)J8F)M;W8R; +M*.+3[O8_Q?!5A-&;R((_DEJ? LG"R$Q\%E20$:^YD96)27[S\]/WG8,";9:< +MB\;UOXW--C77[].KC!/_VJ;VMZ.4P+KM^M R]8]67@PGA[R'HA)=V0W=!13! +MY%:R5&I>GJT_;)R Q5/7[);$"[J:>U7SEY&\5B95RW<.4*_2T\;"V(-3OI]Y +M\@__\X:4/1J3QT3^-=.JL]O[I3=Q1GB=J]ISE]AB"MH2U.UFE?U7^,8K))8C=:WBEBA$ISUM_JO# !"7X>:K!ML#X,"_.J= +MG!R4+TY!FAEF5YO2PO$U[*- [4:L7U8]CA>_O)CFP<7;TQ"2IKGZN5>GGPAS +M.;5>5A ;3I:$O*=[#2@N0NZU'H$O7!BZB==5R7@K:4D->IP,'V\CHW@)Z40(>&U;>7 +M1P/+%KBF6Y]?D)!6\L'U->V;]1S=])[\45:#HI67Q LF:<'M@% 1!+V?BN4)3P"-F-18@GM^ +MB*CJ)3+6X,]04)Y;!?R;@V&PFM7.UT&$4!&III5*O9)WV=L2=^YN&LJ[%^V> +M^8,L'!J(D2(FN_1!#SIX%YN/5E^Q;BS"YO_$/\M-5H2=KYR&T+"@GN#,(?G! +M#\A+NYR\%)V%/7N.>R3Q[._&\]JK7Y"+2Y>*JA>IIZE)7I@*XWH6T32[6]6: +MDE";E_',D)?HU"T:YM[A4""1K*)S\ED S^+T6 O:>(>5&_W',OEWT#[C78"> +M&9/2N;T(C;VI#ML)O9.24?.8_!ULCY#%%\3&^]DT8IN UZJHKOWRJB$S^58O +MVTM:L8-\#__SHTK3:?&_L/#V[).5W*:>.9*3O%L"P*T-[H-"IR>MSFR?C*V, +M7@BBPF?DU' *@?*UWU>:HT);D=H.\9>.2TT$P_?4:TX,\+NFJZ@";%6XXS;N +M\O"]VI6&I%N&,+:S)2L3YC&CGJ]R")Y[PR@P[;/_R7I0,$)*=0Y7SNZ"6D_%]Q="M%!&:FJS7 +MEMDR]?W +_V8I>";BHB]UK.,S/(QE??CBZ9@20F__):6I('^/,;W]=B/6Y^, +M@IA>B[!3FPDMXWV\C 9CG6)O96G H-MEHO!3L#FE)82CY>(F8FACI^'F^\P\%K0YJ>( +ML\Z3DHZWO$DPP>+ TPT@28J,F+R&64#!QNR0/]!8CU::O8^>O6>AH$+!S/[- +MY]/4CY#_N8\NCTN@6[?1:OF6]?7%!U>?7UKPC5)"XY*;\,82 ^\%R\-)ZJR9 +M7UK0FZJFL%>MTR9W-<75I9A0@EOP6)^=4-4#Y@^CDZTT45I;R?XY9__P Y!2 +M7D2 ,)(7HJ8:T<,*_863^XETD)J;8I92Y_(E]B_3U(>2X)WV2]:"AIS''MS^ +M-/*(EZQ:@^W7PK6*(.)9Y/8PXI:"! Z?BZMI1I;91/[)R.7"MNN:D Q'^KU<\5$<:<8!WC4$,SLT-V_Z M$U=GJ"^3D?;FF.T@2?V +M/K0[HE"0G'@_UI2;]]COX1F<%%&5CISZ>\3'Y-_Z-/.JEI.MH-,7JJ9VE_%= +M,@YVK@V2V6]?*7-+JUMJ/6I"5IY^5"W.R$^'S^486[]%* +MKI$C6Z9.F*)@GKB'B %&2#&U3&8K:U9&J81DY*05ADDPG'6X$8+D/:8<+Z) +MN-DM1\'<6@O>?07UF%C),M,P]/X*^GR3AU99G .AEBG-[=NPF9+?A(Q=2]N$ +M3Y\"DKTZQN49B(YX&HF'3K:*FG,;O3KG\ZU6A/.I@RV&4(KP^C<\^\>E#*1% +MZ!F/CKJYCIO#QX&,RV;0CZ)=J :>#8N")MLI<]7V+._BGI)]FQ>WD5H(:))7 +M8*(+U0L(Y^-8N0X9$+RF0*I?K,Y7S=0YU/Y$\3CVHKREH,*!P0,*T;BFHXV. +M7;B-1='8T/OGR+F6O@Z65ZFWJ'^;052%R)&@$5_ 9[CIPQ1=7FHV9>NE*HH6="LC/ +M2-'6V$:D7!^]AX]O>HW]\3@9I^;U\Z:8G)M7LHJ*T'"@4L$-^E[3AL[ \8K= +MN;>LF@^KLZF0>MCPEI/0N\=:=C>(EEU*5N4,HN"4G(H=I8D2C +MMJ"?DX&;MP6R*N#-PW:/]WPO6PQ)%,%VJ:ZJ. +MJ*"2@0+#]^_N]@^JAX:?0J:-O'&1SE>@COOE".;#]^9)FKGW"?9##K:3L'JL +M].TPY]##+%);A/H'0EL'W(\0CY&TMU"G^KG"XG3:M";)+'G_E:!=@JNX7)F) +M3T4QOG0#F*7WDZED%C="PC/[_?%4KH^64UAKV%*U0=G'[/04B:N2N,F+GIA& +MB97"X^[TU_971:1]B:=6N)U&NMCPSXOY#\[9O:.=@$,.0:B25[L'/O;%TE+/ +M2:H9@YY7C2QT08^0S2VJQ\<*U4?B/]2=I5NEKPN2\+:+(O+'-^X^YWF@DYN/ +MHKR7)KXL-1;176O#6D!?FKJN&QW^?C\J;DNQV +MBZ'6$*'/'ACJTYYK!F]%LOM)X9&@F;F0,'![/]D:.- +M6@C^ N/$\2PMFL.8!!'UEA&8GN2FGL'#0<05D)X=FJ*[F(&6]PWST-7$\+2K +MCJ2=>EE?E=*\Z?IMU#)+2IK* IQMAX!:O\JJ=<3\]M"+1I'JJYZ]"*2:G5C< +MR*5C0/&/5I")E(RNJ_B5VLT^.6(ZED^'NX]3G_(MC'NZMIG,S_C5_2?9HM&> +MG'BS>O!FBY.LEYW6(OR_.$QA8H!T494B8K,]'35DI1& +MN@@1A)^2_@VAI9E2XLL05! 4W9(U69*P7E+1\/3[E]+@FX6AL]>-#8*!O**Z +M/:S$SS^ZQ!JKC87[B[@)X_R@QOP%N?>IO(*&A<\1LYLA#$S[(<=1CO8-K8,: +M;(J0]XCG'_F@8L2:HKQ]V7J<9T*4:%9;04[J"^.+T<, @5^[HIX7N[N4N_!V +MQ-[O$/_D<)R"D+VDR9Z7 -: AA"$B"R5G9A+!_#@_%;F3PJ<4XZ0E5>KL!(J +M],+:DH_"0]^D=((*H)I?V.@U;<9ET8%0HI>H@Y1T YCU_F?P\@-)L)!6UDM. +M#XLMI\ 3]]HP U[WA)Q/.$'/*%"!]]3!:I[U!@<2^@J$F V0ED19VOXSUN;V +MXKBMJWZLEAN:6*P6F<+"R ,/Q^'W2(C2"4N:$+N"@[B0F_+;Y28:,L"\H)I? +M]ET;B_7,YQVOL91TGE%:FU+K^>YOUE.?D_ %LY/^FTQ3FLW_J39\\EX4S**Z +MF:(&]MGKP/?5Q=C*G*B76&C=IEL:HL(NFB?AJ51RJQKO5C!)O '7T_?@[\*B +MCKR<0UQOBV"F \OL?)D/Y1:#Q/W.@]X.O9)7B4B0+MYR=1DYL)P\??[<[2 +MRU*47U>'#*6@O&5B$?I\V+^3H%=:4K9:GX0!5CCZ\_X/:S9<@:^&5I-PM_O9 +MBERO2_; 1PY?A(,/AJMKG?DG,?]^U"?3XY)5$*S/BOF!IC.XR,C0(J+DR\"< +MQ[(UDU>'AZGX(%:7YSYCYN;>SQ"0B]TV 8NHP0[ \_&6(ATF79>O 3#SKL9O +MSYJ;M/$>]UG^L%Y;&?KS')ZQMJ^FM)):AD87"JOC+/H+,D>4$9J?DUW&4HHG +MX#3:-\F-J0>LSC +ME\";IG1["//YML:23[M=KU5ZSN\6"&6VLR$,Z O'!\S9$"*V>YL C:J=K^=5G>?]\E6\S!0\Y2?DEV" PDYEM?E]CS]_#7391&JIG+ +M4E^5'<<4+3+N;O*.@ER>%(V^@I./NHG$Q,S5P/!'M]P=B_^!;SA63Q+K^3OE +MO\\^EIT?2I:/&DFF#[C!#,"G^\_^Q39JNERS6Y:;@Y^QAE>9__B;_=IK49CS +MK821OX*1 O;1F)&1O7*0F%# T^3"=L"C'8@)M8:S4M/&>YK:R0_!CIB;E7*@ +MJ;:ZD'L(U#EZ1L,1F2:@2UJ-6$WPC$CJ_3KURHN_AJNL1Y)&$HSRPM2ZUBS' +M#I2(3L=:;XUFXC +M.HNR(@->1T^:D(JBY_62- -#6C@!EIM/E:6*23IM?]>20:D&#>F,AI2[#$9^ +MZ,_@^,4#X ]V48P6EX\8H 9:Q_1#-/+N#P*-A8**1D">5BF&@0D"B<\##JW9 +M-=BN!+M65;CYDJ&.ET<^*$X.>LK.*'ZBB+2#*T(95U%2=#(&:@+*@>_,T.?;0(+!+%$&;K&J/CY#* +MHM+QTI(/1_ [O9Q(A)):NL#$^1)GYL6,GK&,5H>/:Q!>6SV/2725PU=[ U>MOEX]2N/^BCG(,M%:DSM'B^X);Q]:]F"RRDI>KL()C +MIE<#,KVWF^XB_[*7KH+QKE?E:X-ACY:1]+ZW6+/9(L7G[+_S"K*FG,>\G'*6 +M<#G'W<>05).VA)^%KE."EACQ/N;UQ"?;O5^P"5@;OY!35='"=O746TJ5E+%3 +MA_;F(" 6>WO#^1'T'((FMD6&\.WL_3B..1& +MQU:MGF&KFDM\3[*GR3+G\!K!8)9F*9F3?9J;O_&S[.6UQ -?5X> C-N>HJV. +M6/' I0"3T>96:O[58O*>HJEN5I)[!OD:2=N G'!!>=(*9KXW5Z0,0CM!SE4^9OI,*]\,Z +M=&?/AG&4G?69 %>QM_O7'JO;K?R^O:;97JFL'?L-T.$_^B+P2:>&.1/95X>B +MH%GT./;BZ9?;OV-D<)]E#M3YRU$YBY61 +M[$^.F)BAI(MQU/4WY_32HH^[VJ/; +MJ:-R_Z4 1;EVI#V&6.S_92M2&V;I'9*R-S!T,;VTYU>K,1)EI];N$>3))'5 +M$!3[\+TLFW*6I:B<0:.20N?B3@\K!F6OT^L/J8B#MX]+>,2/./%T.ZN +M6*1Q'I&^FL?<]M"?H)1WMH&:OUG^_)?F]<"=@#9>II%+^JRFOL46PY;^O<&- +M3I>;O6I:&_<3[=+FPQ"#A$KXEDN;E_&*&SIU^C7/$[:&>YPG)GH.EQEO,Y,$?POKPG-9QO(Z)UXNHPMKC +MK***N194FK<"Z#/ZW^;;K8N7K/>7XKM^^?F +MWB$269JXK1.14E;Q <#^9I+2:U*,AE^;FY)7@L?:PM,>^FS2O_"8A)^^/KF0 +M4AE#1<_(]=5T3(Y_KY2O60O(M%^9M-D2)U*!-/;RT)+C-?(;L9%2L-*;AS^4 +M=8?:P_E[YA6;=+3_$BC=C8#J31.19G#028S_OXY"N%RHI)0+0MZ7XMAS=_\^L;%;Q)( +M>IRG5Y>5O@3CDS[F/I""D%6*CMR52JSUEMD<1OT5V1Q&O[F4:7Z6BZ#RDM/B +M\3;RU\"2GBB3K%YOMYJLGI_-5@OO^0C$4D-7!@T8CUEI.#DT_>BKQ,\.S2 +MNCO6B;JMA>]R:X*J6DT(S\O3]L\1S[11J!:+X8-@1/W3\O/0+OK7 QZ>H9*$ +MSJFGH*>=#5?HP$:CY_]@JA,C992@Y>MV_#PY_ EVU06<+E?E8)3!WVE +M *W3H-"F2KI;9]'YOU +MQOH*UJM.1D.)C01P2.B-_M?FY<,^AFA0JZL&MJ<4<<34T#?6(QE2VFCOAFZ +ML(W]+?H,[UR@Y)>$C8J_FXNGP9I(TQ;WT[ L#Y&8G-JJI(B>T^!6^-'"49\K +MS(KE18J5D2$#CH,(LF!=PU'>U,+:]<-4$YN\D@$"EPS*T[65B8N4AAFJ&1?K +M[)?RP@MY]I:MCZ% DJ&,DJ?)SM*%G(.;F@*^5L)?U^5[T2?&SU1*G^V;@X>] +MU9;%P7)C>CHE2)9!NP&'6YO3*O$S_6XU^O+"A'Y 0JI;:4765Q',R0\' U6' +MEH6437W%1J"6K0=I[7OW]L-*CH2*WE(+F?&H5E*:[M *^(?1Q0B+5)Z@G!:[ +MNH)@7%^A4!6^)B+G** +E-")N9K+!M+DK_K+W7!0@H_G]C3P\K(%_Y&>L?+% +M4[T-NH+EZ440G)12*QH9FIJ5CK<5\O?W\\#)CY:A^U.-J%"EC,#Z-MSR6(>6 +MI:U6RUJ2 X_ UM$F-/?SAQZ,+>^S6@R#J&$;)APO!9DNOKW"?CJNJ6[JEW>CY^77P, "X49I;IZ"3BL#% +M)O11HDN$Q*5:K\+2K?#&QMM<5(.8LB&V2X9PJ2G_ZU&?H(&>GY._@J)/F8+ +M[3HW\N"ZC\&8\8]=OX.^(>'%GJ:A0!DC\^8WU\-71CC825X! +M*J8 D,3J>,7NSMQ)C\Z,'+X50)0WBN^+G*(DJ5VW@H/!V2.)CG 8"L0#T^P,:N+ +MAZ17B<"KM=8N*(G7H/NN37^"7Z#8\<,Z,'K*@XY=X(M22T>26K:CP-7?WI,8 +MBS>L'&FH;4\FLM-,WC?$/!?S!UAVDK86KU>#D*:QR,=J]+,)4PI(6"ZZ1\YFZ2(NHJ' +MF).=8Y>:R.+:P8^;D;ZPD5)W!8RXT/;Q)O;U0ZE>.%S]]!NI^Z&]DRQ +M=IJZBH&B#(W)@@7+QJY;ZT.[MZE;"*)=7Z+CUDNM(N?^P-3BA" 6NQITMBT* +MBO"+_B*0'8R'G'O@]O3N>OKS3$G2^0^(NE<#GGK#S\M02D/Q_W:4RGNBMXG! +M,C#V[%#EPY1F0UKKGJ;?3B7W]?0UD6-WIJN;AQ[%F*7A]#Z:\._5BY><3*O[ +MG3NMEDL- <;HR\?PEH!<5,3RGK^UH(M13\M"4&KJ8@I[[\6/!\^0GF%O[MH.2 +MB+WPLL#W]_4P-!L:D$Q=NX=6!KM!T=XY.G#OVIF:K(V#!ZD9N%K#PQWDR-[% +MY ^F#$SLM[MJN%ZHP4/TYA8P6LB_EK*"?E*:"^@PEV36 G4*_[GW-8 +MCY."H[G4^$BKB, +M5P#4V=/E[E.#>'M56@"Y5X*J@7(/PTF<6 +M[N6FC NQN/>0^9[$PJ75WJ6>65J=BA$A:[E3T/W%6EB G9>5JECAC%?!_0]) +M\* ZA9:AFD*!GYO8\O;V<]K0FI:4B*NY5I1'C%#V=3:V Y*[DML*N)>4DVH( +M].W&-,;PCU8)[9J%Z[BAUBW*S.L%3R+8EW:=C$M5A)"I^I[ NN$0XOK'S;^+ +MH:HFYJNQPEK#$L9)Q*OL!P\VAK);4*Z@K_;1H8X?<,/3.C_@(X1V?H>ZD+J3 +ME2IA^,:IRG\JP'GK;:Y!"#7FQ LY/=EEZ64O(]W^62SX^V>&W/ +M6XV I%^IX,:)R4]#FF,?J8Q##:4T1.FJW"+);'V]R*D$:K +MNJ:6\)<(D_GWQ'XBIIKBB1:=.O(0JJC$)-_V9D^GED3EC(9?3<"0O]G_J,D5 +M6]8I1@^-AYB.B[F0?77^"$HT<:+_=&' +M?@Y+G['&GXD*F<'W]<8*O)""B1X'DIO"_]J9S-02F[>BFA#C\O,_[N;)7[R2 +M'02(GHJFE[K(P_#=J$B;JZ8E>_M,%_T16_#"?O(FL1(FT<%+)S=;+(=B63WN.CXF:F;F0 +M5HL2N^3F)?S(DP>$IK>WDI8@99^;Q>QYT\'_C<\":7^9PRF6NX)0A* )\<#W +M1G'. +M03CN]L8W\X=>7#VO5:UOS .:S-P.S>O'X@J&1-1&CI2;,/#ZS/8M[AW^!Z], +M%5,;\JZV7B , QD(J,>*K#?><\)*;DI 4NO?B>>#WV]5-ED914*'Z +M"\SNP_91D]&-IEU:D\/6N-65_L\=O88?4]2:7;"0EW$'04F9D,I$IYTJ6_AV +M@PW &4?ORV2-6BR:DJJ*IM*IX=0LWI)/ Y*DDHI8BEN53?$Q_Q8N5\6LFE&Z +MAUH%4T9-S2' ZP#2AM"?SYV?BPMEGN%T3S%JO%I>IMHO: +MPX'$V'S)\]P;FK2%EZ9-ED.@6EOB]C]^W_Y!=8F*CO67OG/A(],5K]A*5))3 +M7X.)*B#N0!*+,!S;G*1QEY*CW#U)_X+<&-"6/(ZE_X%[EIW2T?ST=\/+A_PU +MU_N(OH^E;,&X93+0(PN4H9U!FWQVD4QEXY;5YO*!E[I0"9S^H2C!I9+2S(TI +MZ_'+KH2LOX:/O*J4$%/Q,><:WC7' SA0BKHW[KN"#):=T5[!XNH-S:[8D5Z% +M0YN60IBBK8^;I?;DQ=3OHZV6&'B:HJN=$_ZC&;&:4?R7^).1PI(L_>;$*5BQ +MF_"%\5J7::6^@7SQPIQ1HIZ.B/);\HZ9#/#@^A^GUKB'PI] CXN?ATX(PM5& +M-_.Y3A 76X?XU9>7T,'E+9HD"I]4#X'IEXWMQ89]PLP!Q5U%V[NPF!6-/D[- +MJ >8S9(Y,#J[Y6&(3-> GDN;FJP/N>+B"-[1W*7;=(AKLJOI9WJ/7_ +M[3?N%\^>E*>KFDB#D2W4RN"5D'Z,FM"9T,%^P<7$/E,?EEY>FA&(NN&V6Q3# +MP-NX64[FD0H/D^=?PS]!"AFJ/J-M2EE.X4.)LM!7#6Z:ZCZF0K%;7 +M:M+"+5/U]]57''F5BQ>=2[I^KRB**P_CQ]SNM%H-F1:EH(@WJT+P)NX6[/61 +M?:T1 "*"BX)IA*O P_H!Z^A= ]1(F@L@VD:K@@2!AIK'PD7[U]/CM=PCE=*7 +M I<9QO,54R@DBCB1Y'E^4]D'? WJ>9=IJF +MM9TKE^/N-_*;HI.@4H&/N)9)E$/S^,9V!]E08%&SBKW.G^_%T,5_\L/V@U1Z +M:FU&:VF@I+_3^-:OWO/9GU>6KHJ=CQJV_XE2\?F:U\8GXYK.OZARJH)0K Z> +MZ1@M]/Q_S.,3RYZ?MT*ZJ)J2IG")\Y \]O8T 4>\0I66D*B!P4TCT9GX4I". +M49H)V.+T_Y VP)2QDX^6<9Y0DHR=V>?/^:PCE%L0\:GY1!^# L#35A?BLDJ, +M-E/9NI)4'[R-ZM,7N]6? NC_6ZM.)J"_\.@1-_!NYHU/F=6;6%6[(Y>3R_[) +M+0L32@R&6KA#7 5*I%I!*/B3N]KMTXN.6P";CD&:0&RRN^S\V,;("A^CX:N- +MGH&*6H;^D('^7UDQ^4;%Q-NZ2%^6AE*?^L+_#[8&B9:[$'<*N +M_I &V5;(&=.9LI>3KZ4?\304]B>*ICWNOL:N@Y*GK5B,#H3! +0Y39Q.29H; +MBZ&7U^[U'"W>!M#+J#V74Z(;&%.@5OT! +M]"5N1B;BG*!QL3)S@8G#6L,:1Z&+C573EINHXFSWP-> K)*7D:9=2XM@!JC3 +M%P+ESI3T!O9\BIBF6@/-_NUN\"71BPY$]IZ-TA11J!":_)8UVU*^)I>2DP^/ +MH(^-*;SL[; #2869B$6'G;ESFHKPU FM!L/EA7>_P#F:P8^X%?DAXFSZQ>_U +MJ0Z(EKBZ@4NAH%>3".SIALF):P-"H[ROMUIR ZX?DG>"C>K6Q_ILP-_\N@Z% +MI8*ZS=G1UEP1LG:U\*F*S?G&YM(OVKI=MJM[MXG[>)>"T<\@M'Q6DY^46?#Q +M((*HP78W=C?/X$K=Z8/\CH7<%:C%(#/']L6Y>^Y\4&>KT]M26)\S6 +MCXP_+>^M+*:? ^K/$,%8\,*T18^+?HNK@IVZV6@5)\?@((QQ"0($FO +M5H-9D\W^->;U^]5<=O.=1HJ*F*@, _#,UU&_MI&;<'%7F+A>J]4R?; _HMP/ +MI&)"D[J&P%75PN+_[]+6D[7SDU:M59*:O\?$/T;Z)B:.FE2,EXALDRQ4N]C +MUH55#V OCE@4AIP/2*/;_V$0U/Y YL5*F];95Y"]G+.REILBABFBZ?G-PYV( +MK+V F):;7K>@7@O!8D:R[M)GO)*TG(^8BJU!!-O@4/9R_I90UD,G,_,_]^Y& +MD<@+E7+0@=V$A:_K+2\;D=Q4F170BA>[L%GPZGG;[@*6OP>,2*A*A+7>B 'Q +M^,?0 \]6H"J1BIH<0X[T^C:U[/7#1:1VR>/_G;O$G?_(B$]:Z\76B9Q*G$>& +MNY"[IH-U<'FTPD3.ZT>LH-&PQ[I3K(VWP>KZ"L>M_//3D7+57YY>F)HVIE6K +M0O#4]C3EX71TI%$&H[(MD-;;V+FXWE^PT5(ID/INVC)6H*V(?[M6FIF2N!XK +MQ8DI:-B:RI,\;%E_*''8!=5NN2 +M&O\!Q\ W/L>OSHO]D.V-3KZG,/ S"0[>H\OE$%Z?AYR'K$R#,[!XD>G5-#IF +MSQ":A0B,=>J6,[JCF0-*_/4H M_RP9%'C<.,I$:P0OA0BP*D]?XZ.Z:7\!*? +M4@F;JT+OPOR0D+"YMY&L>M?_[,>L=J*P")Z?=H&IDZ8U^^/%X4C\5J*HMG>H +M6*V,347V7)?_YU"=5G*9M@E_EY"\X4'Y.F[78H>0^HAM&J>#+S7!^",7D"\#!VQI)S@^EEUH4FX6'MP$4$SH>E\*[EI674G*XDY8L +M%YT(Q='2QBGJ#U&Z])]>L\:JG+ZLAIOS-CD^-# #F$&P'J" JYN'+0&P.G(* +MFUI94ZCQU/GPX"^#]YA?G/J")PM?G/:]^?9IHY*5^FNE5.&C[K! +MP'U2RR+8XQ:4Z)RR%-BDD%$H\O;%Y?8 JS*=TKF5Y[H>H$8 \0X$2OC+ .76 +MDJZONUKZ2]Q:;81XB>+%0/OR<:Z4AE$2U]J]\*W1BH9)B?T:6)>"Y_OU]?H^ +MUY>A@IU?DI)8ECV[S>L'29&PD)U:HP.;:/:= 7YS?C3OUKM/L%U2'0Y6(0K8 +MP!'D]^>;H&R:ELM?A(- 09^L\C 0VT,0C(KM7^2Y089+]/KNR.=:V$V41DJK +M3;ZYJI29\RO1]K*T0J^>'4#7GXV2DX"&F6<'[,7JK[);=EUV=V&D +MD^C' +)<"%^9#KU#N)*$2-$^9/8^)I!"C$!^F@ZY&-1?00JBWZ-7?GP.V0I%:0AJWP\HG ]#;Z]!): +MGK2'[:_8;-]L]X+8W.'JI\$)AI_>X%Z>K:JYL(,*]^W$V_7PS9*57ZI64)R^ +M,_6N]0+ITOZ'XL$QG8@>M7GTBU9&B*6S8*K&QM#GY7J+H)6F4I/SS,M2X?V( +M.H6UTT#S"1[4QCI]PP0R6_R>5UZXY9Q*]R+2U86BNE6,D8G#>*3]X\+Q_^X% +M$D+R(%/QQKA3GTP PC7V']*)5[.^FH*L3Z&< >+VT/;%B,>-G)Q/CHF-D(V_ +MP/S$S5S VZ_:F$B'TA[J[!?_$_?]PNXTSXJ,51]^!A-RE'(0<.W-Q!;.R\/" +MU$;:!:&7HHU>D\&:NP#S[S8R/>:X@Y^\E%BZGLD-HQ)0E).TP%R6"N?P-9WV +M\@%=D9J-=I*KEY;<7TC/ZH6%G!.,L)":FS > O?R)?;GVLIH]:.#FBV*\+%- +MK3+%DL8!0(>@&];FTX)2E@V6Q-;VE@.6FK:$H'(54W'&MB7D%0: +MZ9R!.L"F"QD2T]?0]"6O"(4UJ@^/0Z1%E9=Q&"A.TLI"6\!+7<6CFG^(D]ZY +MCM+!,>SNOA037(JD?50#O%DMPUNT#(*:$9_53KU%D&;BE:W/79F)K9V$@KBQ +MI)C([VO*=8F6E)H)7JB@A:M(^=DUK\/\3\3$F+N*GX!S'Z7VE1KSVYJ7I B" +M T2$,Z !WD&O]):BB7*$GIZZ#+K&FO?11>WJW=$9BJ7]BD,]ELJYCI*B\Z'Z +ME^7 IU(P0T>K!8ASI_SV8G0;I_+9)BP2!YCP +MD9":$0.(PRK#"9I4@!^.F8+3#70Y,#SZ2KIP6OBU]XB#:;>#!\U%/"^B I2B +M7+*]0):3V?+')G;%&HN%D+U:B(>:DT_9DO4[_ .&FGJ"FI/ZII68U\*L[B[O +MX8=%G[Y4OXNM1C>9)\P$S4OKG!>.E$0\OX22EK*0T.JPD3]?+V+G&X0_>=7IERJ,'?S^"5 +MB!X=A)D%)4M!-3K:.V6Q$)BN @_9SFB[1D/%P,F_:G8J;KYYWJYO1+L_6AZ&V!9."O$-SZ_7& +ML#)"A+&BKYW7?JB3GX]PW=#B7IQ2O( WUYE(LI+AZ\;^==D(JI;AUP(GEGI? +MJ-GT-3>2YTM0^)-[NUPR]I7LZF-F.D:G@Q8NK(*8J\^DO9+,U:L?)O+6NU^6 +MC(<854> #'K!WB[Z-"[BO9B>@SN$DUJFLD2J]_P*)T;2R?;)TH>8@(&0@WI* +M29* S93'5?_T6ZW<5(W?\JN7$8;NX8BV/JE679IXS3)4_<#VCK^D4GR/B8*= +MI9""Y,.EU%^ ]JV. JJJJEY102O?$,7IUCF.N+.^BIB2_[Z'_K;'YHJ=O_A6 +MN9*6=]"\R/'Y;AO$TS\4>DQ9C8U&L#JK@LK\R43S$\] %F@7NKR=0X:SQ\(P +MD#?%K[J<>(%:IXM>"Z&6JZH #J^#NT]2_B)8% +M==SZ@L9?NO>[U>;6Q=2 EZ&ZNH:'GE%, NHU\)X(Y]*2-PF*]EJ11>7R=3?5 +M\,-OE[V=EJYAB6"DN2S*CL%&U1Q?IX?!C*P-2Z&5_\%ZM-;EYD$9N/R1C%R3 +MJYF3IK;8POS1!@J+S_9C?+V;@9N2J'.20YT@YL;V?O8BF+96&9I=&G\55PMF +MA(B3D)>8J[,-]#UT']?.NJ**1[:*LOZT1X,!6<#6C)!>1*0=RD%@FO_:^^;G +M]<+VS="MLO*OCOH I:/R,1?N0XJRI$E+GIZ5FX##/GGVX-#'3X:$/(FLSH>Y +MDC_+ 8Z3SLNV382'BKM,2;MSCE^-<>'BF^?CU>"T#B; +MDL&DD,JS].[2YB&T4G);AAR#J4WCBT6828H%D$JH?W&6],?W]@N>B9.1-X"" +MD+0V4LD#KL#^$ JLH_T;F6RV0N*:]71FKO!GGJ K7$*3IA6DQ]Y6DM?50J:6 +M>]ZM6EZ:G&N4)T=^$ %JKA 10+7ER/YJR\AKFB5P'" +M]II0K *3WDVSK)2IC(.AAIW9Z'HA@X7^P)F3GJM;J ^;_%*DGJT!$'&6^C6% +ME'04J=ZS_ZC@S/"3VHO[KYN(^9[2U/74NM!'^*/2A-I7@EZ"IGOA^0[=WZ8Q +MK=ZQ0EVAI9_A(KG /J"?GIVMOIB S@-8XC,VFN8*KYH$B[F$ +M@MATJ:>HV-7KURX2_J+42\AY\MNPGKN*N).W3<;!;_/WPHFQFGW4L7Z7PJM; +M3Q+8[!;!S[S +M[?8%-HB/D%J#CY00N(6@X!$W]>]+592I5HB'GZ-8$_XU%CI_P,T>?YB7L@EH +MJ W6R0_NVO3U&<*6A[_75>V+HI>;\_[U\#9&X(B^G:""=M#>TJ $6(T-RXJJ +MR\%!F*O^F5&[OD&80LIV8E]3#Y].1D$&M5:?^LT?J +M)SK%L]JNAE^0LA=[NTV&DL<,RM:\T%.-4%RSJ7A'JJC!M?3'RQ.+5J!7";BK +MOI,\P7+U]/?+B\:@@)Q''J23C.6S]2_N]N4>M;S,3YR$@SBRB,'5Q(3U ,&) +MEE^!EYY+4,9^@(CT]V;U]@.M7HUSB)^*LE'!IIW0PO@G RP_(D72$I:N7F1FQH8Z):?[YU#K^ +M IQ3T[E&43.1PHL'T[CP6AZ 0O:0\,;%0KOV HB((927D7RMPMN2Q://M'HV +M%+BD01H]MI8.P?OMQCX#YDJ6K*JHN5^>=X^%*FRR[\5#5B1:NJC\OO4*67OQ +M1Y)RH)Z@1\"&FYZHS%*:]]W/R-_Q,)?R.M2_'8F-+)!8R)O$U_HFVUF.L??9 +M_NM#F9#W^(E&:N7&>M[G5D<$^WM^5A**"I2-F.$PQJ_^%=*L4Y_[5O2^0O+[ +M!V94PS(S8/K:C79DGJJ3J(^5K=KSRRB_\#V-.77W@5M1ICUEH2=*HJHC_J@R@A% +M2%&M\N)M7X6+6(_/?$*B]X+K:J:VML0:^I"PGI(0FH/ JL58?8B7G195+ZK- +M\>W@^CWCE;P1\5>PFJO@IEL#*V?;D9/47T:=EE= 5%W9TMU<$Z;V6- A@IJ" +MDA7RBG$R_336B,. 8)*#V1N&!:P!PO3ZU?(2O[Z<5\KX[5,ACIW*S=?Y7=J8 +MBQ>,[ZD5CHJH3ZK1,\3S\% #1])&9SXIUW3,ZA+W]CXP)52\VJN5 +MB/;SP%.+!=T#286<-E4]B;F)1O"/I_0M/C_#";J&)*FR"+6@(*?E>=-P5L.* +MI[F*_D"6EJ*4V//D\#;_\HR&5^#/Q$$)Z/?3.:JLA(*V,I"*@ZQ=U\,Z,2[M +MVJ:<$%).IO";LL?\RN"%HZ(=18"[@=J2Q)7P1>54MHJVAB":G_I:"PSM#]&* +MG%&[]J>2F:R.2UO^$78OTK@/AY/#>@*2%;J]Y?F5(."@BPX@>HH[+":BE=K@ +M.;0VYO5FGAI,9KB) ZP]JT7.%2CO@]1&MEV 'Q6,B,*Z_P+FE_OR) <-A?M* +MV@Q;DXI&%:O9!, E+@K* P*;>E"2C%O/JDHIFH$A_F3$Q;_&E+#+L:60K'D9 +M*\_D7HBB]7"A?(K7%[SRQ^Q+<;"3^3!;>@\AEI,;#\7P7[!+G7:;0G]LGJN1 +M^I>OP,5<2;9P HB*C]1!3=#RQ>P0 ,MUDD":0W[P@Z'!<>TF[F7+KZ)059]% +MG*DAFYL*W LA%L4^( +M)LH(#HG("H?=@:R>F4""N+>31-+LUA#MY5!85%&02(H#P<*O\9F+H=26F8(" +M\O+Y]BZET=>0E%VTUUA:H/*6VP,*V%2;WI&5V('_0*:JX1*=[Y9B^ K7D%B6 +MJ)H&5:GPT#"0.H"=0*9>D(MR&_.\\L)%-N[MSXT$""J&ADE+,II7 ,[[!*7: +M\LRWF@9/K;FG.;(O*1+EQG;@P6FJCIE*A8V\0::'FT$#JA?1CBLNVKL._55: +MGFJ GI/0>/';N47D8-'5M(J=!=&V?\W9PM.=AK*[U9""K\UB;/3 +\*$6!'\ +MFD&"KKFD5LT% -)_D)@&MA2OQ@*ZD$>7B89-TJR:&QD.?Q'+RO&'=':-B7V%7KI7 +MFR?3[\06/MNYFM"#.)^1B98PFO\E!^[A+@O$]WQ"KHF? B>+J8+#E)[,TOG +M=9/!6 &25I"Q7/T91,'!A;!;N9!;BG+8\_/V0C$^8 ;JV6YO8\G[2/?[!BIB= +M2)J<:ZF7[(Y[P\:IP\S-Z\,!ZHNQBI[&"8RAIE*^Y[CY;CYRCTI1@JR7@+XI +MP8VB]EJ+AJVR1/JW#;;'-]KURX>E^85:5YY8P!:74,M3580 DY\WE5>)<%:_ +M()Y=GNV"UEJ08X-;C9A:N(1(Z]$>)@'/6XB:W$B,L[&, >HYD!#DP5>5K*&I +MFX5JHYY[",0&VM[ FX6D#$&)5YR+$;N8@[&7+]8[PH=]MU$:=&>Z7C1:G2?+ +MZ:\*S^_OX$B5K94<6J]<-( 6 L>K[/00[,56 ";4J"^J\3,X0A4"G9=CG"_ +M@ZE8W78@+L??\%3TDI*:5S*T00+YT=:=HJ*579FKEJ 7M\ +MRM&KGG:EI9(!JR('J\>V.=Y4K<]+E_:?7%7"D[>HDOD+S]C7!LL0\P&(JYRQ +M^E92J+)CH C8\C%_QBX(G$A3\;*!7EK PJ'D+H9^6;"(^D'AWO:B,/K@M+:> +MCUH509.0?ZMBSZ?$6%R:?H^7NAZKMZT4].;>)-KE +MQ8JGJ8W9B(V0Q:H JD5$QA_/3([$%%2M@9*L) -3)@9N0 +MFECQ,?7OT/W"DU71$I.:NUP+L]:7TPV!ZL'+BPOQJX7=FI:T1ZJ4@-Y7:1OG +M\# 663R"DYU0=;J=QX]S/9 (,G7 <7F[<2HVYG9OZKKVH%[P2Y97H'!"YPRC +MV%P001;^O>$&YIIZ9P4#)!=70V8^#C$&NB*R'HY36QV'LU=WWT]*< +MK8>NGJG8^>&GBQC=G)'#K]^NV%N8&;::E::"GI&.>L'JXS?MP-"^$(N5CE%2 +MJ-'#H+&^<(I;@A%_C>?4UMOMU\>?LE1Q=I.NUZ1.*Q/.K_A=N%I_CI6)J4.< +MB/$J9:#G ZS3\T0N4:5^\5E_%7N +M29. DTR0>\35Z_K%!<@/GDQ%S*_%7J"@%^%ITQ8F[N-0LKV@EH^(V)"3E$"M +M"JP+XP''QT/O#G^?2OZ-FI[H!AW9$A'WOE0/+D:QG5?36D/%70/)O8A>K9Q1 +M6:[C*]#PYCY1F%":4;Y5>Y=@FXMQ:H];A\B"4+11G%U!EX'%-O4R/O#82)HP +MG5.]^(6%Q<+P[/(L&U-:D$M^:I:7HI0E.F5MD\;+9J.>6$.>[,?LFJO-SBS/ +M ^'' =\GD%^>7=6ZQ+MZBZ& 4L?V +M/,;2YF".O9^5^C58_H4*[MR0&?J/MX>?^P5 Y.)#\@?%DXN$II*OJ/BV4-C# +MP=)>@J)%&Y+ZJJQ:4?*K\^8UIO&K6CB_%Y&^I:-,0_1TT.WU4J9H0UZ3WY:3 +M;<3IV.S [\.ZH+B8Z:R]DZ6.N(NGSHDD\>9LWYJ 3RBOKTQ:6(KZUJ(P9 J3 +ME'];@?"C@[BH#GL!'<#!X>N@*_9C1I<75\?HC%.RM;O#/YW4T^R@G!N0B3*= +M6%=QXT_#_(*!G1ZTDKM8GA4^)? *_!&@DK+[3^CRE93F6UF:J)<9KOA3GT#3_I&:]Y3NGU". +M1==>0)BL!:[9S?O,U]+0AY>42(*%C8Q-JK +MX2S%YO71$:=2#OI="ZG>BIS0I:>30/(G$&_F*-85D)WUM9J#26_"XM>2/[R: +MD1^?P_.C=9*SPTRPBHTE_5F788Z)UP_*R# 448R5D).:LGY"Y/OU+F[NT>N/ +MJ!T#N890DIA+$N,_Y!NBE ?FU+"U6>D[O"XB(I1=;%3EZT,XPNWL9Z[4L.J]\S7UQ+$.X=] +MG!>^E:4;J,0G@=*NP-&=M;2-5;>V_Z:BCNTSU]3Z&MR.IGFNS!,J-J-$P>0Q +M^_Z3&Y>M@HA)JX23+\36X2;Z]_"NEEB(BQZA2H::/^G]S,KG(=1LC$2_E+B4 +MD*W;K=DW]-;']O-MA?N?JD1+G':3@%;8PM##XOE8[]9OB)BCC%^:GHI!D(K! +M.^?%[\)RV8:>D(V1<@-0R0+:_-0&U)I35@''(\3F$"_;JHAP6)^1"8-B=_F- +M6J,2!;:@NS>AG)UFE@,-^_G\E^_)F Y'UN,:_586&[F.(3TV? +MES_%EC4@-! /.O2IA9V;C8LD#K?HR*S/\?+ "[N,C$Z25)UR>IC!P-CV\'78 +MBI@EZ, 6,+U/O8R)TRD +MGX2/-YWHNZ:=4\PLWXKBT8F7O$ /KY43:+23@-[%;^Y:6H"6]K[3ODMR7D&F +M&\&H"NZA38[#R)E648B9EIVN%ZB/C\'^Q_)SY_$ND*![CX-<6RS/!4*>UIZ% +ME:">GIB3E-9_QHOY?J^!WVZ +MGC""J!C8EE]%A>/%_[;;B5YL6)N'FY92@*CQN7?Z\D;7%Y =HOX B,;/K^T +MU (!\P/.MA7L5?KLN*Q5NLCYYIY +87"EZNPV[:);NAN@SY<#PBT[[=:!4!6AO(81VBG'#O$V>I&QD8Y16H/PX.%%U[;7 +M][:^!9JCG(J@7XK'')/F5=#0"521JENHL%[''O4N5M#P.H[@$I:#]&J;JFE9OQ#M8#].$23WYX5&^> +MO^BLD@O,LNS3[]9W3_Z?2YN>6?ZZJ!8I6:9YQ0ZFJ0[<$TR,L9^2D7):;"13 +M25#VE_ON\)6)H(D0BJF3 M2CPH0+DZMR18*)]W#FEO7MT4J!@964(JJ=^8^X +MH)IZ?C^1,KJS)["6;&NW/XO;:T*^0GF"?K&&3LI1:PN2UE]8R +MTIV-K5Z7MZTKMC'46MGZ$-7)0JO6\IM:F3BIQKBJ=/OV3\'BE/X^U-N<"%ZW +M2OA45R==D(#T"Z(Q%CN6 +MN99V0]FR=J_M\UP FB9:FKJ'O8M H/Z=]<+%480V+WJ-FI"0[,%I]K/T=>., +MDM_HEWQ9B3JZ#4T%_(XA!3 7LIJ!C+CAJ+@&J8WJD1)21:<(N]4BD):*GD*$ +M>X,!SY#?P1;2P].#4JMRG(Z+C+^YG]E(\NT>D"W;3"&2A(8)D__RQ0/(BG61 +MFU^7&9C@\_CR\'"KW[:3A(13L[JEMGK,@]K$FEF4N;I14?JDGGU$\/D^>]?+ +MJH^VNPQM?X8?)N=^126O@-#62'^+GYA6LT_9=!$^-G[UO7()G(*.7NJL5IK! +M#HPMKL/1[HX%O!R2+8JL$%L#U//V;:Q+O08K5II6BOZB1I 7VLY-]P'GKN#0 +M*9)1,K:.4MNV+ Z6Q2OT\&80V_VCLEZUB)ROB-W2X89SN'M0$:NS&S/M]^?T +M+Y63@YU?@5B*JEVKV/]'7%&\4KU66JH#JA>#I^O6L/330$\5L=.,P[6D2I^D +M\.5F?L*8]K&XOD:'EO/L$NOVUM;LSHZ0?KV$F+R3,L) @MP &G4%0X^:1:B/ +MG\T+ME92P>/Q-L8V08N'](N,^EJJE*9SBR"L0O? #T\*X$-2MYM\=B^R0GCW +MO5#S\=1P,.6LH]0;6Z"KJ4T7HP!,G8FH4JFZ +M@D"6%Y.;DHCR/J)OP./'I:.8FHJ.F_<-\,+U'<8"K8_&FY:' +M4HZ#.HUR5VXR!/@%KJ7YY?TZR&0L7S[N8Z +MW?# '/C']ND_^G4(Q13K?F_DE>'2E:LIYD8P>W5K,0E=-!; +ML;N0GIK+QJ,VA'8"AK>:JE,BEO'F0_OG!_&FL82PG)NVGX+-!_48G';_B5N@ +MNGNJ?YO!>]'O]@,PB]N@ UIOBI;S3!L;\77ZP+L&()?(27)66IH!8?;&EM/* +MAX:L1*NN7IF[C;\2W8#B7L\9OX1QG$-2@*Z1TJO2\C3V$MI)BH91=9XF&QIT +M$%.7S*SX$]S6JX\4POI"7@6^<8*XQWG#'+V@ +M"G%:H5I]'C+J:.J^5BL_U%/?@W\5MAZ(3DY+_AG*J ^O%M]7B"QV3NIV^EZF.H9Z* +MU:G4UJ3K8;NZFJA"B)?-@Y[72/*]4E03T)E*?55:WHJV4GF?@P%"S-=-P]H@ +MF8BN!3*IMXF[D+AT4<<6QR[>4"E_]H*QD(*ZGT<74MA0-/*%3EW#OP'@-9W% +M[<*JE(*%I?2[G[C.5]?OQ1B&N &%7%%:$W %JQ,BR'/:AEY;)!O,3D9!PC*!4@E*%TB=OEKX77%W"O9*RNXNL +MWH':C,[*F$.2NW8"B=^039U2XC\4$/&02I )J_R"F$X*KL3B-\1U\UJ I),P +M/ZY;E4W#%[7_W9>!J[.:C$^5OU,2=/_-3(XNH<5$#(ZIE,V&F4UJAE+7(E3G +M]?_+O9_;BHX&8HFC@!(-]>C\T0'9"AL1IH>-F9:.1UZ)QEN;!2HG\!+^Q9&] +MGE_279I7H6M:X$6(D;"0B*Z7 )KXMG_6 IJ@%)5:H7HZLG(=)4;:G/K4$OO. +M 4)#>E"7&+34^M+8\+BGQ +3PI*.$HY;\O,N.B_:G+B;BF*OM?J'X?(YEY?N +M"X,4G,FYNF%(N#:>H:14 DJ(R(>F6@&"GD"+.'*H\-'M%I9WR)F'AWZ#D$T7 +MMF+0&^+8[/3>%NO#"9"5D?::L&N"FZQ: M'Q^>#R$,-YD:&M4L7ZE_%&VS10 +MH8N>W/21M]-VQ9>UM>/\4DH%#8JK@X1.60=+!THOG/ZTDJ/8OZ);@<<>,.^: +MX]*1L*0;@ZN'GDBDA?#Q[C/3CUIXG7F[5:*SED/[L7?E]--7!86J;Z@%4L.@ +MB<%(WE^BJM1O1%B(0IV^V, =@N$T-O[VUX_MEBZ9%Y:M&!I,5=T"S,!"G$G1 +M\/ 2K$6+3X/MJEN@=[W!\GSB,O 'E)"@#Y!9UZCQQR_RA%Q3V98@OZ\8\>3D +M\) +CY*+KO90J).FIZ_'_<>P3*._GY7#K(*LMYO3,_]5L!KUBT+&$XCCGE"% +M1 SC[/;EYPBF8D*RNMV^BQY"PI4E__YU1Q#:;$Z.2+N#I;[BU]1X!T*TCKR' +MX(NZO6NCEE?-Z]3\VO7S3861F,O4C?N_K,2[I]WX$JS4H,5@31R%EZK2Z,H7 +MDY./TIZ3%COFXPBRD'U0EY"_ Q4 PE 6"D7>E5.]Q\&_U>; Q^CMH[[HIR3 +MJ9J?T<[*])1"E%B6N)X3;9"K43+ETMQ%MN<0,+?<2QAZ7Z" _^SP\@^!IX)? +M*I]E,"U64$ ,CI7)MK"8ZK)E +M5<*OCX\NO5"KMAN*4*N/^*/=R@% OS)X^U3GX".^CB6>J.%^O#J[._>=NJ5 +MG;.=VY"6'O+^X]RLMO1'\J**@M?J1?_ZE8_>&$2MM?=3G89UMT=LJ]*)EA)? +MAA*;@JSWFO<3T7WWQ<92M*F:^XJ&7)+ X^I#M<9#D_!JKQ/'?::@G^&6[700 +M%.*O%X67OQ^KO3@GJ5G=W(YG"N OMX6 O)>!AJR?G?,6'T77_]M)+)"3B[*3 +M-HNPT)LG2-)![ @#P_ !7,2PJ99)4Z+F!H#-Y.TFQ\#;7XNCCUI8D[J- Z;# +MO;83CQN0BIC9XZ42QN?#4%B^&[6EMDNP\(+E5_,0';!+O/J7_'^(4+OEZO$N +M[\4V;49&PZI*C%Z3'ZOK[1HV\XD.NDBKDI^FD(C-_^[ZQ_1.@I67K\LHKKJL +M<$L(JBP+Y/$::XR/E+U?G8MFMA$)$+7P+9XIII)&PY:7NZF7H+: P8I: ^SB +MR^,".Y(I4UR"0_JB8!6NR>/%Q>WV#_RED:Z.L+N7K0[ X+I=@$4"LKG](OXP +M]#3%A5QV<9&F77NHJY[["R3O";@2BZN,L9J;)EI#663U]]+ P"L6H)B6GPCW +MLXS:VL7EK@.+7ZA_DH"NEG\%]^K9U_;RRHUZ5;_/F$N[8EN!B4RMAX2GT9\ +MGD2)6BVZD*:+030QY;(ZYQL,K*-8RGN]FCROVX\\FIG-*_9H2=NPW$ +M??;[M/-#7XZ3BO7/0\NX5)N-'=/'UZ_KQ?:&AIZ:G)7'5O^@VGCI_L5O@?V-^^P1P]>^IVL0]8/GX"A-Y75 +MT& FOJ.07$S(;8MXA9<)+-3.(>#:1590C%5:0+MX]GK!LCGPU_)&TY^%BUFC +MIU^2(9Y]"8[+X=K=Y\#FC_.1=Y["NY'2>:!7V.)!\N_VQ[^CFHW>0JJ= OS. +M\GZ)DYVUH5[RI7KL]\74"KF3MENF=SI^N9*]9?GSR(29T;N7U(NX@IRHX39S +MY="+6I.[D8#V1OA;FV0#%C7%]^.O3FJ[6X>'D)#MB<;3/\601\F:^*RCE)ZO +M:9VI&P_\0ES#R8^4^D#FG8U/H82=0_0TW_;6(T=2U5-:I9&II[I%@L<."Z3L +M^LS/&,==OI,2VA"\5K2[GIFA]>P2VH>,49*%\%V[]M*#]='0DCZ1UXD:>5G" +M%1_&$ ^0(%0;6IVL7Y#0?_#90+C]B?!1C#U8BI664R/R-Q 7DU*;6G"H^^J$ +MNE\-P]/E+,7##IN3ETFHKY.# />>_16N%?5E<+KL%JV)8J"7@NG\P.3#PYF, +MG9YDKJZ DJWWD^3J-9?<_]JHQKD2O(>/7A8LI[?JB/OTJ@W[\=:[MZZ@NB93 +MJ[B 7I>BT.Z6>_3S4+944)2*JA=GZ4=1M!)(GOVPJM<(T.4V+!_;7:#?GU07 +MFLBQAM^I#0,P<:6CR()=>K^0E'OMY#74+L7@S89A][J13G^C/?#PV?+UVY*= +MK%=7FP:,6Y7PTY:^>C?0K72/E+E[OH:XCY+RE9W.UL\23Y95C)J_H*J@FHO1 +MP/<2]]!#.WR6DZ^=V/E#R)RB&E%6H:Z;1<8S;L+'PT1&GER2UT.;+!>*R^L)TII" +M]@2PP9:6K/H+P12TQ00[#RIB\G5]8=HG"=$16EPS^M<60%O.Z<$@]5C";@R%? +MP<.YH!YQO%"KJ(G"7)66E@5Z4X>=#A"+K:.0?]'7<,F$UE"[&Z%V2?&,70TQ +M\3?<\/:.D^V"]I.VI@L,&>/%L.V*N*:X75.-!XZ3G C#]S_UPL,75E6$KU^- +MQK!WRUD$),@+T32#\EY*@X9!27GR4J#>^31NY,B+>@U0@Y"3").IFM+W_^X* +M^ASXE1"2^IV?^Z:KNG*@1%WQP?CT%O3%1;.+D=*1]MOG U4*-)2SW;:1FYL5 +M(G,6]O9CO(.PO9:7VX.FG_=!SR=AF+12O9;QOC_B6I[!Z?'T;]-8CZ80@Y)' +MLEJ2I=#V-)HZSXB7EKB"4W^.F8_8U!DUY!3S:8"\A[R:.)*6A@#!_.W.+]CT +MKXV%J*Z:E1.X&I?7(\3 U9)EAUR8@H!TBPA^D"!S -W('/C5 4,UA[Z-L+*V +M"7[^B+)=\O1YTGXPRPJBOXS\6)./0/D/4GA0GXZ2<9(; >)1)!;$$TR;T F2 +ME9.?J/*7F:GJQ%^AFO%UB5R;;'V_HSXNG:;%"DN]P)N6CYR7DHS"T^W"NO6+ +MDI&=JX]65I5J&M;'+]/ $XZ6F$R/GXV8H+6;P1S.[L[7T(G7JDR#F(V(S9J= +MPQ/%\O2Z][B.7;^L=8-X"&VVE_#*! K5S<[%2:,>_9%:UKE:GZ!TDL'JE>XV +MQ>L,G!F>Q)6ZY=J45@!1IA>+@7IR4\,K[P0% +MH))=CKU6FJ"06W%WQ? VPL#M<"Q#G,N+I$N>S?O9]/O/A].BF9P)AEJA0%D4 +M\W?F9>>\E?F 2[N4BK&5F0KY[.Z!'[UKNJZ64N-D_W-+WY!5GM9V9 +M6H_M&K:XE(NAWOA3S=4OR=6.LA6?TY"JJE+VCZKRO\4@<#8"K%B249H=KE;S +MU\?@68+:ET22R/;%(=4V%M8KKHH>7(;9?+Z05ZK#WL<]J)S+E-!]5[\AE?,, +MZBWV_L\4D)20&[:#1YX2UA'PET8]CZN5H+] DIY;DT3-_CCNL/I#%Z!<;:Z& +MZ4>1DJL2U(;7"?C2 +M"_C\J]C82-QTF_Y2XIX)S!J1!>A%P/8L6_QUHKE6L)H9 +M\=/6FI_&YS>=FX6PG9[#N86]=^G%$ZA1GEV5^KN_M!I*P<+C(]?.U%N-K)O# +M@UJ&]^3"]Z,0I@JO%^2;J)L>3:>OF?(W8_KWP1^VAFKD6NKMD9N >0QY/YV^9.E**VDPF2>?07K,%45@G[D+.>JQK^V^ %W!!17HO87\/")-+OP@%$E@'8 +MD+NL<^*7@TSO!=;PF9.0_J*\6H@:6)'!T_)WCN9ID*Q#6^UXEJ:%R>ID]D3" +MB5N!LH.;7H*RO%GF[,6U[>=-I[Y47I>]IWF@@ W1Q6 R$B+N>/)MFEK;1\>;$+_;S.)YY +M7RB2B+Z*I)N;14W%]MP$P<\6FZN;58O[Z(.+D9"Y*3YU(#?"[H664)&>\*J2 +MQ]3%, Q %IDE]Q.2R. L^O??D*_[PIOPD7J;H->_0(_#RY"$$ZV6D1RS)H7+ +MP?/FT)SO4&N5H'V#KQAVDVK'UAG5^L/ID#F-7+]%]I*J!_+L[_;6\Y:VO.R9 +MG;W+('*"P43=V-W W$F?JI86AY6XQEWZP33U+BRVT,KSFZ>3IHF"4L&R%_'* +M @^JW0P+&(>ZK55V]I*^<0U^Z&?F! MIZ%8.QC\A=Q%G".;IHJ( +M6/+^=*XGQ@:><%9\D%U>K6S0]PM[A3.UEEN.H)&7LTB>6\?RU:_U]5"CE&." +MJ(.?D)*?[<'5+OQSP7+DDQZ-CA8>H"T_MS>S]?&)5I0*OKR%JKB:/2<:_Z_F +MVV.O%IIMK7^MJSB6NL4;[/ PUL,=3=E7"E6]=I&@L('U5L##3,7MXM!;OYR* +MO$20F**-MGK1P?S%L/3%7["T5(V1 9C@QH[6G( 4NU^16%O%-!; /O+6E)Q +M'16Q&[VD3D, J>+@&+!*#YYQY):C%I#V7PL!?GHS\J00H>M2HB06QI219*:P7'X +M]9:6=ZZ9AY2:M:I[ ^DC":I8&]BP)U.+P6NTQ[;OU5RJ&3OC:2II>I)S^3C'.M>!8Q#6HD:AO>HQSOFOL(P6J]& +M!9-8NJ>;G[F6LJ#$T,,$RLP#'>JRA5%ZG(>)ENQ'@Z?!\;WZPAJJE"&OHXN\ +M0R7+0L.LF9.$E]N8F<5PQS+Z[<5=H_1-4A26^9&46,U6VV/Z.@J[A?% ?R"6 +MW1LR,_8VP]F3G[I[B8N?GJ=,0/;UT.#32/>SVY['7?>C $RV7O>+EE95DR* +MIXB^B^@7BM$ #LPBV=Q4L+I/UYB-NHB06PF2.?0F-N*JA(5SNXR-=\9QHDL0 +M@BG'S" 3H;2BUIU36\Q/&A*L$E_!*!W0]_X Q(B:K)8+?[L"CQ,<++">JZ>2 +M@YG+\C_B/.Q%F!:BC5Z(D[F67Y]-#U,3L9.0JWN8J?-@%XB-]M7P)A/R#9N& +MFQF9K%#?O-':;R(WYT]&<-*:DQY=WQ12ZO30%_?JEH^>7+_<3HNX59T#($ . +MW*?DOIKX'H^^U0;,6MOG$O%WY!K"N9;=5;>7BWN!J96RH,_XH^:H^\#\K[V] +M7ZG/BJFV; 73!7+%%\;LR,?4@(>GD7N#PJ/3"8>\BZ]&EY8"U?#M]G8O]X:@ +M]@6:4I.=N' =R:V768IQBY\2"+I(P)K_3=/Y\A8"PX\$;;>^1X2:@8S),\4T +MHV5%DV[C)":B87^SZ;;W8F2O(2^AZ4' +MAO +TNG%_A OVHV6/)#VD&"6H;.UB=FN"&'IS=L%]*V$E=B\IKBNP8&0>,,9 +MU/RZ8 5Z@*.%C@E"B,?[QP&:7+9B,AJ-%V?;LG^#/ PV2G7R-1[3( +M[-%IE77<$,^"FCQ)C9Y+:>R/MP5,ZJCA3_9/3;^,!+NM0I!5D/%K]?JV?]F# +MOY&8K)_+"8F,1EK-K_JOP$CDZO)ME[U>B:>-%D.YAXC'%$;&T#>9D9.*GJ77 +M@HK9%0/CW:(R>W)#EIG)$L;VYJ[1NER?NY;=5JK %9K!"U"24%147+8+F@.5 +MC[GQ=M7G^J4 '0_#W5N8N'*73-C^-Y;Z$P>7K!U!NYV0P4RJX/3R<];3[K2> +M#9N.'4=F<+K8[OJ,]M=<9/JJ5%3-U9J,DEL9\?;%\N^2NYA5BTH635.29%H! +MT(P8!Q[%PJM/$R[0PEYYEAV2!UF?YC2#P/YVFA +$FUZ +MN:J*6]>0EXK'(&SP\G.8G;B9<;J,ME6N&?KY,E R#J*5FFQ%C9N+XZ>K94AN +MS@[8]8>Z3^_CDI2+:9Z:X//6YI8_PP-/ELB,](:IUI/V^,C^:$>!K\7N\$== +MW)&NMH,7RB95TTCSV-:@Q=NV4Y:;GO=(5X'Y3Q&Z&))PEYB>N(X +M5%:>];?06I!$O\/KV-F$%E^%I'*(CHQ$6RO"P3ID\]!(D[A;F;V>ODL-U?'E +M]+_ONW:KDII&NK.9@%DR=Q3&&B*[7Y^\"4?/T;BZVLKZS_Q#"T&<^IJ*C):7 +M4H&V6*#JQI#N\@K-_*^52I)8W@@2?;K)U$FGS,76IG8^=NT7_;PG(V13D+8]&\VQG[K5!B0GO6PN(JJ6AL1 +M+O,!NG8@G1I;5ET@FH'G%C<]YL"P!U:2J?Q+DG>UK!/E$V<3V_ $)#E"$[MQ.?X0]:T2::X@1*L!H+;WBS_MWY//' BVK8,;NOO:59S)).RV\!KND$*"J.NNGM% :9_W-NWOXS]W +MFH /&XRHC:776LX [^JJT[Z&A+WC'I4'*'IRP/+^Y&&!2?E9*>D_G/^PE?\>**@)"_M8B"?WN5J*3$/27"+["[ +MEK:]@8=.L).<22(\Q_X#AUN6?IH0A;*3#,KJ%K?VIL=K5=KL7X8-1R.G@//H +MSZ(&XN/OCZ^NBZV4H( 6TYT%5QL#V)0^%0Z)7E\#.M7_P+N. +MFE0>KYZG2HVRC],"CP,06 /".[2GEAUH-@/LZ!$Z-G'&6I;YJ4 /=::?/-GR +M8S?@\TM&H!^[AU.4@X^A.\SN"M/3O5OP;9V& +MGHMZEK=)0<;Z-_#"C7N>^JKPYYFB8/:+R,( Y*K]RL"YNJB4@WF>1X*VL9"_ +M$V@Y9N7@<*^0EYN/^IFK <\E2'R8HY%6DJF"\=[99.[V UZ 7YU?D8#2LAN] +MPLO%XI;XI![UT/R#D$X3\NO],]0EM;B?DEDKZ)>?E0Q1GCSZU\N2E+F2D&:' +MA9E Y-9M?O;Z0VZ6D>@/G>E(QG:?Q\S Q@?"D9^0$:J&GYR#J9J# _OO[<#R +M&KF'JUM:>KM:GD"05^/"# ?ITL<'' ]WG)-:!ZV?WGF?G0/:Q=96%-M07!I5 +M1AVV*.*?U/;5@Q"?G&!7N8E^MY>4V-8]U_8FNUI&GP*/*Y21;DT2%2WWY<]# +M6ZJZA[_=#6@V@>3WI8 78^)T_*L%9K![I=4HY3 $R;=80!6UWZ9"YDIB0IC(,(ZVUF<_+ +MS P>W\.]A96\3XR.A:F $*[@EG;'K[I:[9B-O<^G 6+IBV(OV@V5*+=(V.; \'SQ@:UWD0)[>(R#V4 U/#_2PZ^@89^:457&"\XB +MTL7VQ]CI7X.96H#>)DKI\3;UE^X^T(FCA(A&FZ^-YDZ7Q50DX]_U$8L4+;V? +M5H'C)/93$I8V]^7Z4.<8B9DIE8U:GGJ.B]%]&?\_KD%\^:5(IQVA>#@:RE +M^.D7&L15B+>;4AB<'4.^6>/0%/*RHA_13<,;V ]6H=:8BS?S)E04HX23UER$"OP;.+?VY1<;U+Z#TH=:01I#=!Y[0-03[BZ0 +MV8:4[)*NJU^'BTI9$YW$,%M"HX2!.X?R?=.*H30NYD;ZP[JF4$P6_82+(K8? +MQWQ S_8.X<:5EE6/$FW8AH2[\3X\QC)[\)"^/I,7I&NIFK)ZF2W]Q/;8_ K! +MUI-3AP&V]$J^)B060PSC_6;DUD5&G$N'AH=)NM++H\/>D%Z,HY$8_\+;W18V +M1_?<$]F]1XB3VN& ER4<\M+>]EI$O[#WN,9/BUB2\\;_PQ2'D'236N\&I9*- +MQ2GU->7%2J2DGI^2J)H?/LSQ[/8T):B+4L6^;[A-NW.[^]'4_-@FPM!>M?R\ +M3XV,AX(.DL3S[;I%OEB#5ER N)>HCE>0=KTAR.F/J,)8 - Y>HRPK(8ZJJ*Q +MC$B%/C,T\!:E?).R57)2JAW YL+CCZ99KI80@[CQP<;NXM/%5?"P7PZA')*@ +M5'W;RQ""M=#!E]6EF]BLI%V8D_40_<]A[59B6W?/1J>2BA%Q]KOZB.LGIGVV +MFZQRGTG0Z^TZEG!Q;J2^1KZ_E(JXI%/JB/WXPY'2EX(%G8F3G5-LAI^2L_;^ +M5^_#IQ>9VTP&4JN3I9 !U\VH%,7"#X\QNUX50*F:HIQ9K!W7 3O\EA?UIIQP +M4:T 2:H]PPM%X;B4]@:F6X/_"7 9[/J0(1S4&JRGHIQZH-^=)^*F\!6&D9:? +MD99.P%8#2/3TTO?8X:UP1E.Q7DD"KK)6*V,[-SG;Q'"T"A8I.DKV"I/+8VSNU%^^2$U%XD0/\7DN7 +MDF*EVL+]RJ?H$\#GR*J*'Z62>@]^0F!: P50+,+7L!OWU/*QP'.[D\EJRS20 +M!!XKG;&[K8#R53+F.D+00+.;7*48N62_^L"*XN):I9:1-X>)F6V44Z/9[6[F +MVS&/4$R"L=L^1%2LFIL*V\0YB@DZVEDMOFM.WV=D*3J*\5@J22F8*1CGCC+>KDZ=U' +M:L@15;BSUHQOJ*&@DHK9XF;6]E/E#;1+J9;4FEW"_Z/2=! !K9Y4FHM:\_?0 +M+-;1O9/R+I>BFXCKCA<(SL#9A*3&"492V;^Y@)N$X[,^+?#8B/K[OQ^*C982 +ME-CC_[?R0[Q[HNC!=,/7X/?C;YI01$,2A9*IEJO-#'K8W"<4G)"M +MC:(_AH[WBQ\7FQ\(!BU0(*^ +ME/"?QW_/&'RF2YR.TX*]899:V5/$D.:ORYU/DXB/AQ>22Y7,]#<7[_&G$JP" +MJ*BNI*%M\\3&K[K^4ZV0$8RBF#BI=/.+V?W,U\?NU$.3JF2+KXD/K Z3TSHE +MNKH?SY"8GK&O_[J#BZJ. ('X^<,'^_\/W*EW^Y*)IDM2N*1>D]"0U/[F-I,% +MB8NTC9*KJP.O4]P:H;.'7_*"G:5KQ.W&^^4<7%*$E9.>NJ >J,+O]YRTB=ZM +M$(GY@S.:G2B08]OL4KSMFJV;*HM.-8642/*1O"X#$5!-FW^]#MVS:L7V]/?P +M9\6#2<4# +MG:!;FZ2)?Y?1$!5ME]/:AE&@10.7>H"H=%KS+LM06'7:488T]IZ-EZB1%#7F +M-B.P@U>@O;*"E91^AL>^Q930VY".E9:+DH>%V8@7L]5&]BXA'UN8:.^2H5M# +MDC[J[-@.)";(CYZ4E-:?E(NVG:V ^G7G[E(2NMA=GP./J7NCDG*=Q,H.]2HJ +MF_72:FWLI8#"7_XP#;&VMY:^I64<8.) 5\"L*^4GE^&71N3\RHE +M?(X#T0/'% J(M%O_B?Q];8Y)S3_Y5/9:XF?6:*BJAU;> +MBI1:P^7Z^DE>ZT\Q^!O#+$K]6 +M7,:?'"LFJ9?:P-03QO9ORPU6FU^:MY_V2,Q4B\3^Y,2MRP8#$[J?E7]<58\3 +MN[CSJ.34;91VM<+=H%&TEB5;@Z+"V[9\$%.'=;R[@Z#"+1:0]^]46%H4MAV< +M.I&@20FL\1*0H;*56Y.\TVQ:FQCB.,3 UQ"K=&2_]D.^SD=J!^CNK?I"HU[L +M2*J.CD#70-/JT)3_[_"[5X^\1IAKJZ&;@R??UD[""\)K5=>43YR!9J.FC0SR +MX1_PU,>'5IN(ED^^D-YPOY+2U<@75@K%]1RXKE[S7@6[BY@F<-MMGF_B6L3) +M?HF>7(:=J@/M"R\V1Y/^1KYPK%;2\.7WP-9SC:(2GZ 56XJMII['UV;!Q89R +MD:.*^OZ0A9/:L;;P].#:A[>DMU*9N ^+'@L^<._MPS]48)U867)7DKW!Z]7O +MM9?*KX^-C8F\JVJBI'LE*%>"WZ, 3(^$C9M7GVJP3Y_!'G-@$I#KGIY?HYZU +MJ=F3[ ^:\OS[[LI*[LOPK9X%"/B;CQCR+$2-4\/A;L VY9GYWD5V4IB-$0_" +MXYGVMMVEH9B?X6HF_N;V6U6P&9Z:%1JZX'7_36D!TGJ!VD:F65"3.X[=Q30W +M^_#%&%*V>8]7AP>WTH3-*,$F/\_(I&!:JKJ2,@.\$93Y;_KT#[G4NF0,\KT3 +M.;^:I\#4H@H/$)Z.3%6*GLTZP\Y*YW[A\,+>&UN+G[,HC+J6"L&=M_$'K@M& +M#02KRFJ;G=NN7KM;H8&7DP3^.:XV/\#1M!A%1[6*^<'6PK)=@Z:OEAW\ Q?: +M.38;[F=1H%[[LY$9VH"GEP,.SQ*L5+0ISYU>_K1: L$^&3_@%="-1H/[?HO> +ME9>ET;'T[O6BJ)W"=IF;FJ2)2-+T[L+$,\;NAM6-B9>4BKHUEQG:@ P=HM 4 +MIEKHZ5*+8[".32BS]/3P-"N CX7!7@:[N_Y$M%T3%.#JRB*@<1")%EN#FI^' +MFA>Z4']!ZFSV(/(#?)G6D;97DYM"W?6'UN3A)W* +MZN7^!>+ OX8#OSIK1=&ZIBMUMQ7JTQ)QE?ZP,#L_O;N +M)40<2D2Z49H"TL2EPYS0FIZ.@*J2P3[\T/I%]Y"@D8VV5YJ[>E:RTPU0T800 +M5IM:45I=;*)7YQ03__(3XIVWDIJKNWQSL3K9]&% >_.'5B69FKV8E+"_S2+Y +M;.(N R2VF:>>G$5*LY6:\P0,:M?#'(N5CYQNVXF[A)^JZ233U[WN(VK?C5M# +MCKBWB+&.4H$/R_=Z! %0M,L]O:*ZEIC27F)^6\'CYL9EU^>8S[L%45EZ=7@B>F*6^B\E_(LB&T9X<^E2"6JQ.LL7J +MK,8?]M*3H&P#BXU>&XJ\[<'5(##S4)83@MN3D@QWA*%!E/_%^L"CLMP9C)(, +MOVQZ6L+ _'XI.4FEZ5RH9=3N3WC>$Z)Q(E]:BC4["@F[9-FX)XCH,'!,A= +M7LOJ%>"KKHE*F9I+3J&CT)FJ_N5ZTCO"KI6+^UPW2'K1+<[;G))V>Z1 EY?! +MD]-T/_ KG)V4K[912GN@4$F3AZ#;G/92/*8=*'F@59WCE&WR.LK=D*)MDY:3 +MDEI[C #1L3?EVIND@JJYA]9,D>IE:.S2>L#3UI:5C"*8GX/@D(O-W^BH0 /= +MF8"\'FU8B:V1]YT#'O__K]H%2).9L=J06+Y#NKH/0?[!X=7\$\?3ZI^5RQHF +M[?:+DYI!P\/G/C[E\8QT6AT$>7Q:U0SWV)!1B?[RB?NK\SIF]9?\C[V<@9&D +MPH""RK[9VN+9R8>06YLD$9S>N(YQ03+36D+0\+ORIIJ"ZI*/EVP9ZC-EX-*" +M\K@8_&^4A%D, SOM[I1V KF?O$!6AH]-J%>7)\HJS>I/0NM?K8ZI +M)2/QM#6UAPM/AK;VI)&^/J:/B<#?[$<-V^G3RBNFFG=#]'+'O% +M?IN9%IX@E%KRULOCU"C/HM([CO]U>J!#4E;Q@)C%^>;$%,73^HF4\:)TJA;0 +MR_,"OMR41II(T'\!/C\TUA##E%"!WO97FIUYEOL0RQ?0E)B;E5^Q&IBG4*<9 ?2 +MK(# IHB:B!A7P,]3HY.&C9F-CY.XAI$%U!D^;A+(B).IE5Y2JI)0.)JY QN: +M8?Q\V\ZT2YZ? 9[UZTH2H)*7*)[1K_;V&XX0VZ\0D9.7\>_0D)!#H8>%DW)[ +MT?!Y/N9MPKR!BZ]&21*70:*:S5VKY;Q1DM%?G5S;:X29P/;#.C7U] M>N:EZ +MF)I?H^[)\?3B>IO-):N96XJX:F%J>G<&M1EY_@3OGQF(VX)K_G2%:=H4\4,@L!JU'I($40+'5%O?S +MG79FKTO+DG>5EAKT%_> 1&6GEA O8>[N.RFW:LFY)2OKFPPD7]U. 4]F9"4)Q3DXFE\9:8 +M\P_C1!264YR3MUA#S3/%+K RHQ!&@YG22)./;':I"WL+YG2#G_R6D=R?D?>2 +MP??L]9>GXFVFH9L>6P>V18SSY].7]\N[D.:95^J+@I%&#?[U/OOFVXF;G$&? +M$E6_H_+[(0HD_\K/ [LF^81&AZU&H$^7T,3UE>;ZY5*($9E\H(*ZM+&F^_?M +MSL\(5L/:R:]&>*>.$@**EFRVER+6;_#TQ Z?W%:?@H4:6L#YPL*-@*"'IE%; +MJ/?&^3HT,D#^D8I96J-^F6+ +MFZJJCJ".2.KS[C?&C86(&K.9NE(!*-+-W _B +MHLF_%GC@O_VNAI(7O1#@V7NZ],N'2(^ E@:]KIZF58-)3='#U<34U0GG\K>^ +MDZ7+FEIXC+;E>O7^9CKRG*/RGW"W<\+9RW,0A(:2A9+TFZK9\E5O]_90U9!6 +MOW"#CYJ@^X$IZ='(BI22U/HU'*NYEGUG\\;\/J+0:YJX,IN2AY7SF-K2<);7 +MRZVFP;^*0W>R7M0MU\4G[_ CBQI03BQH-*S@">OH.N%ZOS +MI9< P\3[[N;W1K9[5T(0AKQ2>Z1:\M? =5Z:\E6#TL;%;N;/-D.VQ$M:;Y.VLIP(]\4P^J-=M+ 9K$=7T)Z> +M6RIL]]0P&P]PF8CM6X;KD%6#&6K8!J80ME2GO;Y5$D6=H#6"\?XXU^[_]IB. +MOQ"3CXE*F^)>?U'?R\\4Y>90(N! +MJH<# -S1EO&5\+V?LMF0;._2%$^\EH0=E:27WV" 6L',QM)>B%>=^K"3O[.% +M^L$4GQ(FA;R=%!8;DB\/FH,-P?G%\D/O4Z"AF9R)59YRC!#JX<7'[]574E1* +MI(J'B+GT?MM<' W*]MP/D#ZAHTRORY!?@\,Z$.06VO.KEE&0F+N&F]Y@1E<# +MJM'C7-]")IQ3BYT0J R^FO;AI9OR\?:BGN7OFH)2732'>AMRJ^- >DF:!?:' +M6(KR]K[OUM?U=YA?D*)2WIMD!@O-'L[PNA9#BU>2\8N0)E?'UL7EUA+_3605XM/IKB^2)X6D(G3/OC&^_;5SYY>BK^=GLOX7E,L_-A( +MS^*6GU9?E8U604+H-D+E?NS\]^?%O[7$AUN/D4^+H'NJF0[(H0'!S4#&B_[? +M$((,NYHR<9_1 L#U-?X_UUV DD'G' +M]O"9EFA7*%N83;6.VO+E_O7"P6O6JHH)F(Z->(X8S=_@U\K3"ZU]C!^6QEWK +MAI!0S69EGFWPHHM2G)=7I*U\H:S6")&CZ!\%UMPAN^\@B+JTU=P+&LECZO<)>+DL$3[>8:^]DUEG.1C**"FT.UJ0TB +MD1"*H\F38VE +MTEORSQ'P6E9031"7LY$'._$@=93'6EP;KYJ=T+F0)ZD#Q.;<,%V+O873LJB@ +MFY-SJ]3?UL+"1X^AJ*J[E%)*B,GJ9?7PXL=:,'VXAQI$LY_)-\=PQ?!SETVX +M#+[&#H>-EKL3V@H"2M/\GU"6N+L7C4-Y\ZKQ8MF64$6BPJB$GJF66IB+N:6H +MQ5[84Z#+7L+8ZL^\BON6./^:+%_941(\Q-HOPQC3LX2?D5N)(PL'" 1P"AR' +MN+R]96H\QC VTIR3FZT025J];).ZQU=:T9P05DF.%?*_N8^K IYX__Y/<$ZF +MN8U64,Y;GS_%P^7V+ME#I9&/VHL/E9CO@V+VNYZB]TOVD(^_6F] +MG56HIJN6I"0647%D__02[]-<0!2M4+-*.P>"]4NN>Y11AIGXF<6I3?F,%'0-R$@Y95D$>I@I.:7P4J-/8GHYS I")2JX*N=!.?R^ M +M._OBB_!&JJ@-&!1#G-JJU.?^-<4+CM6F0PQO:+&WJ<'-B@/)OEKYLA7NM +M"Z"%W<#RL3;TY$#KQY&3EYY(@K/$EGKE)E&&_ ?.]U62F(T%K)>/N%K$#Y<) +MY-C:Q<7"A$2CA9.72JE5PRC(C9R*K9K;EBN,W^/2\#X'A%"?E[255X,UEJB@ +MIRMTG_!3AHV5%XMFCY?5M-%R,_?QD(YYL)!3+J !;_+2\3>0RXKWH-.KOZJ0 +MT0WG$9V:ME %GW90E&SRO4*RWAWD_M1>IO&SHPZ>U8.HBYZ GIUQ(''@-A;8 +MC[J8L)R:2():>AZ](O_:%(?"I-#Z.9W^E7.ZKIK2PZ#;46OL]IKEX712BI#W +M@)R*VNL/\%A#ODMTD5X2X=[Q9OIN$/24<962BI&+AGY(\>'YDD*4PH^/ +MNKY.J%VOH_J Q=S4_D8AP82$F9YCBFM2EKY8T_#SDO8G]]FOOJ6ZFMLJ2(&U +MM\,&0<'6=]PC4E[2.YJWC(=2DKI4FJ/7[?:4TM,QMJ* +MHG&L7_'6,S8W[\&7M!Z']@"6MV!P>LT7(1FO@[.6I+R+BL97FH?T[>?_PQ.Z +MCX&/6B:ZI'+!P^KD]F7;XYY%V*AK6%I5@=%^^>)T)8&#\$S5E*V/.L.4^5C( +M5,+=R+!BQKV E?WM1Z 25TSJ$48UG\:;A*M[OZ:36 J1UAK'PD1WK:KJXO&3 +M5YZW6?Y/7O1J]XG1,:/3P#9PK )T_YDH'$QO7A_HFV_:8=MM#"#9"H\&:\FL\0!Y20FP)-KD!3'@' +M9QS&TPJ6.YUZOIAT4JS9T>7&.L"BOT>N0$D5ZT$Y@(,IS?W^R@/&0Q8&K$F> +M36U@6A" P96FL/KO@UY]5U9'DUF ?9)+:)1X7_%VDO2#5@=BZ^%P)B@M!9W +M\?/Y.F?0PHA0E%F^68(!\<[)6;V#GHZVI5^-I.H8_\9URI!0>G']G)Q^I-93 +M)]\%@*V)@\Z]]*^"@ 690?(M\"? UJN6DYV(3PVRDZ?QP=4N5J.(E[)]JBV3 +ME@-6"<0Y),?WVT]5G>VS [L[S]E;PE9:-$DRGHHY7\<)D[C8Z +M\4Z^1)\L4XB(GB:&T]KOX$\J*@# Q@V;AP"Z\$*?BLF&FL?S_>XR;L%_L%N% +M0%>6F-K>PO"YB9(KCZ-;JZ#B=/ P%H%R: +ME[:Z7\TBY?0R\,6#]I.;JB:65]M4HO.=TC_+K87TGY:3F >>ZL7 W-9R/\"& +MGDP\#-:!HV9P4MC]^DP Y32"G)!%B:^[2V!0>,GVP3WT_\J3._U>FY!#=HN@ +M6KMQ" 76P, 1SM*Y/JLA4E93>::0MI,1,=_&1E;"SLF4CHXA&GLD_P*!B8)0 +M?I6GN@/3_N^?@IJ$T2OW-/3F!UZ,FI1+'[\O.9H9TP %Q\I#XYR@G*6I +M6HT=.*:=PV+C-C 6\(J/<"H#WXD>XE4B#\[M"H8&E +MNJG ]1YN/ML:LY.4I%5: N#6V3!7D#0,E]&"@Z#RDQ8R]AM4"+25C@BZ66)T +M^DBVBS!0"<&6/3/EKQF'E*))LYNJ7Z>)PO)E[G?3"W+&E_I" +MKE6*CZS">+YV>_%ICII 3K96BVP"D]&L!(_& T 76K!$'\;ANJRZ\\U^,]6] +MQ9M:F([&_'"+EE1H7YO-2LG3^,/(@)"&K*Z@FEN_&Y_&7%W%]$7DQO;8O=!6 +MKOJ0G*K"[*"(K)P6.4^1*Z\BDH.4 +MDYHJ\L@)RP%&U-LXJ(?%E5P%DQ;T>DZ[YQ+&Q;O&PU@1AA^6E9A*\03:T)!0 +MHDL'E)*:S?O5_X:P@8/H+-W*[8>* +MO8F\F7JWD&NKL997O\#A]6S0^J,DE6L=XW'Q?0/\9._DE&QB1G6-] T +MQ@%=E*.QQ?F^$Y/^2I;>9_3"=VTE$\<;NQ=Q!#L&ZJH=?VEN/ +MTOY$\.X%:Q>3@K:XVZ7:@)F1E,?&]ZZ>\(V439X,DK)?^.MV4^// 0-L]-G_M2@IJ-"%J CKZ [MC#QLT/QQ_DY"MX"D +M)%%QP/3L+L CG;VBD9"PFITEP\K0,8F2K773NAMB\BT:,- ++%.TF[#W0%ML +M5 . YU/3GKP*VW2%JH*MMMTEN^UO]D\02H6KGKZ3A_>9O(73]O_ZY1-?I:E_ +MDXQ42TW9YO7^-Y>K2;2>+4FTE*K1^_:= +MTO6:ZIX$@IHZAY?RP,R?T0+,SY/O*@L(3XBU&W:_AUP&)J)RTV'0U^; )?22 +M%EU&4)99P-WS\:B$H[7;@WGS)]/1Y_07VZV*6;U45UY?*8Z:]PE%2:X*KR7OM-O0JU9U%LAN6@MR@DJP!^_'^4.-/?J&="D*=\HBJ1?''\#9Z +M\HZRFJ^'=_(ZPH*8<)5>AX\H +ME*2/@NTHZ>,C@P4'$DB7E0&[M@-#B^VGD0C#[J#@]8%0$(&[EZ"9@P%/HU&( +M5D&K@)*Z?0OO=EPJ'R].\D*"=$A$6FZ&.GLCS[,;V +M=M*O1:2+GIM25K%,6? 55/K.J8>ADQ^3!A/^H,R4)^_ZQ=..E9R5A4^^BT:@ +MFPK@U)A=;QX95L[_8EG9:>A8>)BYL(ZP44#Z:1])"*D8]A]/W5 +MFL2GKX">6W>BB(GH!9G2[L<6#YN1E+?$CDF&VOTGX/3&^EK=IWVX'_JJCXZ@ +MB?5\*VR@+NFF+F-K8+:M82(7[> M:Y*A3GUQ-_7VWVFEIZ B,&? +M;%Z_07SOUH_PH]'V$WR=$9 #K/OM9?K/XX>:D$J#JJRR!TIST<77PHOCHJ8O +MNE&5I+=, 3YYY\0Z$4*W_8VYA;MKH)03&,^,3<_B_$S&6HIOGE^-8;H+"?+M +ME_HV15">F5:#H%O\^7UZ.Z +MO#9$E%22B/+_VK2H&%H&DI6*P^23Y=6V18*5DE;VAG264O*'KT%^+1N':Q;I? +MNN:/U*BX7Q]Y6SQP3AZVCUO^'&Y20\)?UZFWEPL#Q^8@+N5(R_BB9@U/8 +M>9Q4?867FG[(WK6Z9CK'C%P!K;:@DL,YLE?9YZKZK:"+K-^=F:ZLFJ[1.9,N +M\,*XGQ8PDY.#&(ZPC-/ T1O4 -V:P?U**T9.FX ,TKFW_.93[Z:,.$*2/)D@ +M6J[##:Q4YMOQ@Z2]@$^3SU*( "TG/B7^IO)#BZZ0HIN.BYO4N\":U,[;XLK& +MUL/<0-^="H)>BY::2+>ZV7+P]:_P)8_)@)U4B;^Z\9><@UA_ +MB6RA:_<67Z.-GZ*_>(F=U8*4), O_/?P%6=.G,V7C V2J)7_4L#$R:E#\9^T +M?DS%CHBHJZ7XQ;05QKWN\*&J^QO6$Y*!EZF7K:-OPB]/G_SJU$=^SK> +MT[.2FM'[Y.V4^BN$$%&],J*J6Q5.TO0=EA.IAE*RG>TVE3__K=/P78G/O8D: +M]S!RFU%58S %G/*%59%8$\PPGN<^\7YEV_#+FL&]>^^<=B.EZ?XU=>X%CW"L +MET.G2"!?G_#DU1+0]MM-< YL2Q*-0)&0>T5O_\U/%<.&]]^,5W^!/6:.70$6 +MQ^_FTE#M?9DFD9"0JI>YE]WRSCB9C0_PLTO?P)SKHP@@ML_^SWMN^)6!!1GY"AJI'CO9U'(T#PK=S3 +MF4;7@KUAH(CJZL<0$,7!C;:YJIJO7;!Q1\7$-;_DQHJ:*/NJ.QS5H)G2]GFE +MY!#BF51_G#L83+TAM[;GR$C5U_=XCI!)GDD.BXULEXM(U/-W[Y;;4HA?BUI/ +MB9PRK+(-40V+Q#*O!)&\UB^?V*^"ADM.L(+2H4OQ +MT(P"HYU7@M.;\L*C.N_NVORP5ID$45F8P25*.WD(Z:4'A%@PSZ->_7UZ?XL_Y-M'B!DN4#PM94=DH,M_>87XGF +M+,?NU@5.?9:<\'U6J,!>BUG#QMQ?H90\E;$(@VP 5]*2967E]=&=ID7RF +M5$MH0,#$]'/'DI*X]H.#';)1O:"V\5 UDNZ]&Y>\KY>/JZP:&,*T?%G>/G)K!LX+(_ YUSPH'X\N(KMO!6)9M +MGO)*3E,BDC[&)&;/4=A6A10)@ZODV=CX_9(B'YN5JHKRPC5M[_Y0N(NCA5H) +M\C&CIJW7QO+"FI19K(^ASEVTAD+8H9;UT-'&F\:KJ]@0TM10K$6C]1 ?T6>R +M;%\*FX>/DT 1'K3NUL;E8Q"]B@V'[1LAVD$)"@ 6!-K(AY;0/)RX9:MLEY_- +M]-$P]B?;[YQY?H.62*BPI(^:P*I2*M$.2?. NYZ<@U9 FI&2H(_-Q^NN[O;^ +MRY!6K.18**7H:Z#Q+RC +MG_F<69ZY0 _#R//F]\6K$HF/D[J2CPA7@HA8T]76U\J[TBP?LI&H=8FO\.'D +M]^SZ)KM/C> ]<@%3EI(70.W>"N;"Q!22N)P4JX"3N*0^P-;U1L:N0ZB&F?#8 +MC[N6)NR<0LW]J8JHC8J:%^+5@M&C\S?O]'51H%I&FO"+F]D= +M$_6X0GY=D%F"6\-R-?+FQ8^=G*2M,(M""V/7FR+V +M-,6:_ZK^>6IMV_OUHK +MAK&2TT$/ZLCF5SF5=GF4N:C,ZI!T@N+DQS"^,E6_%?&UEC!B@')P3H+9#LCW +M6LC?&4"+3[=>J?J#FJ)LEI['\#7P;C;2EYRRD9HQEX+Q2O72?IB6G(Q0F8*C +M,A/P]/( J(.*O)^8B+MIH(+S[84<+_)X6U8(O\.CUE<@\OGW^LBUJ/:D6_'/ +MG[>3O<+V'>0^Q1*2(_*;N(:&G[ZA0/U]_?ONNQ*0+]Z:JXNML B@Z ?H!LN( +MJ:><@(SZ3IUSEI]!-^<;[O[#:9O=DIO6CU86@))?\?[KYNO(@&_5ARP1D7Q^ +MRISSD86:P/C&NB7D\_2)EM64>KFY@,+:X+PV4;BD=Y?;)_;S-OWPSZQ6RAF> +M5WFY0]HXRP.NN'JCF)TSE5JIQHR#X1 \]C!7-8U6:9J;HU):GTJ@QL%]XB5& +M_8R)K@_7L%.-US_NI]8VPI:6OHV]AXV3X%NZVJK4SXH"TKL5K]2)N)5'ME>= +MPO1%)'_^"KNRK4.)H$U2LF.?B6Y1%#9/;G?&)X-2N,_!6DEO,>0+QLS8R_\+^7-N]?;$*W2*$77##\1@J +M@8&;=Z>06^R"0^#1\;?_T^ 2I&P)2CBJ.J%,R/&VUO("BZ>D0WJA%);U9%+_ +MQ>;\QO.&E!BHETV.JR10\P/^#,%+43VILDF.HWN^BZQ6BQ?6]_;ZUO#K+ASS +MB;J-J9G!CIW)HAQ?(M_!0N&"GM\+GI)#5X.B-YCQOCE"_\8C68 6G8ZRB:CC +M52G0/AP+A;"0G/?EP>?6_/IS+!:)KL*7NAEF0#O SN=45""6G0ZALD#CEE/) +M%#3O]_'3DX!I@U&#OX1WG.S3P20ZP)*7H!.HK[.<%;C:GCSO_G/S ]91G\FH +M0;ML(%?-R@\:QHK0EUX1CXN+C:]F_XJ#%L7^P&Z(AU97]Y>>J)^F\+Y[2._D +M0]31 G$(N9/]&H!^F8A8L%.KP/XS.OXZY1J1^["0E*H+@O_STLQ0 Y$WEUJ> +M\JOLGN64X[Q<@;6>4*^+S');(-L'W*Y;^Y"0DU:"J::9XT(W\,+CP^<7J8BO +M@T:2D9H$P?COQNNFGY.#6AV2$HL:VI?V^A)'X3T:'$_M1HL.H8Y;%^0)_^?B +MXH./E$1>4X",V3;%=J+: +MDY>V5S9;K@Y3K,#0[])OUE.-O97MOU^)BL:$5_$*'N/' ,B4M%14G_8@CY:. +M4Q$V-7OE^EJYAY"UJ:>]=A*[LX.E!EC/S\@LSO&KJ)[SL?62B?*2AYK#*A7N +MTE?U?G >5:#1]I\%Z8'(#Y."T2 PO(#(T\"VKNB5Y+0L;/O]O-29YHJTI9+C%^5ZB#"/-#^R4:")9?ZJKX5HX!, +MH?37^BY/G19>FF2N()MMAL*IR$VHWO,<3I:L3;D&[U-F=K;A,A#OYF6A@Y+Y +MFP+R@7N*:80?AP)*S,\*5,J#JIN,B*FFDII3Q+!WPSKD]N7N\)J3E(MR@,.K +M$7\5V*YR7@Z:\-B6\^GJJDJ&"':%6;%SO%]L7_\,N&G:.>]XJ:,J16T*XV;).IO7\'T3)V^(:M?8[1YRL +MJR22D?0N=>M%EHN+Q +M4].#G@9@KYJ(G:P&EW'V-.+'^O/*EM%:T+Z?RJ'YDAOWB*ZG1) OTN6C2O&; +MC'^/ I!ACA+1X_?UTM.%4));FU:E3$/EUX-AD)#0^Q(3U@W',;\5L+O VI ? +MG+18F*DXA /'_,\+L+!3JX19J%OD$%W-,!&7]:L<&;V$@JGIE;K;X$F>EWK$ +MVP^>>8-3NHN=I5;EL";WYMK#UU^,; >]C4UCOG?HU"D9Q5LREIN?S R7N4TY +MI9,%,\3V5A &DH^,VX.5AIX&:;>0D0*LU\>-QL661T^-DT.=JH!*IEZ:PI#E +MEM>:P7^(0%U.2H*X[1G/\Y0+GBV7E192UZO\^O/N"YIQB\5&M+9;XM:M\1O/ +M'(6V,@2GDIZZH+>"QSO7+/J^/>"T>(JNCDB\ +MCZ5*X;6:Q_4>1T[_#QO"C_!6 +ME\4B-.X[RW#GIG1= X:MCHM/A^ 3];9PCJ7L0QB37Y33Z*USESO[^]B/4*Q( +MZ9N;CX7<\7$/VMT6P\F/W+F:2_I-K::"@,SD^?ODTH_HEJRS>O>'4[8%MZV@ +M_H1QR\_$CL&'GYV0J;6)3A& EYKG_O/D]NW%A$B(J5J1'*GKWZ<07)7[D1QS +M29+ ]G&6/I/+?(N3L0^=_)*4$-L(SP]D.)Q?A5>2FH%AI)<94;7FU@+(4H^@ +M5T.[#Z971@TPY^__SI*,H(M3@HCPA83 T_;2,!0!G)99KY:HJYUCAJ[#5I1\ +MK*4(OW2:1YFXC(:*5[_HU#WMM=;S0K95LUO5COI*;+9#$-@ X_]BRR>T4U>; +M1Q&0II821I.;)Z%%'"@%*^R6))6PYN_A"MY^@NVJ_08HFF&8R]GI]!1D^7P,#.;<\HYH] '8B/7LVK +M8$1;F9KL\C?Z3XJ2A7=U[6LR3C$]MY"PYH0>0F+?XRC +M3<#^;>[P9AJ)5 9-@IRE( !D,STJ>@(YJ75YHNKG[FM'S[/3P,@-) +MOME;5J1(G[N OXF% ONCRX_"CKR!E'V%J//GDY3!EY[-,A9G_:*3_>(DXLH +MAX#;:&SN,O<84)6 FM.I=HR5JL'B_/+D]5*VDIJYNPI&DHW17\=V=C[15W:( +MO#^&#HZXCDC-#?^O#=/27B_'RI6MPPI&NH.QEIJ* +M\,9" 5+,Q]K)F7@YFI9:+?R?H)^-I.(]%>[WCSV T;$Z,9:9!=SE$)B2$ECW +MD1J0P])O^[;$PKP*7H22H)NM0I/=*,-*_)"[FJF5]UH>IHY33>)6_;XK.X*C +MK;BS@OI&=8X TB&6VD^[GD&7^CV8SZ:M]-XNQ?Y@PVR6GZJ\VH]=H+79V\[* +MS0;2RK^RNHRL^Z6BK!X;K7*YQ].ZX^>!&)7O1KSG<;POB.\B()UL'2^6]+*V?*4D9.%4%37@<'F[,)O[\.. +M\(.;EG>"@SF7MJ7)V1 .B+*MFB%<@TR^B,/3D3!4TM!'Q[*=%\<(C[<&X./U +M^I;6DIV%@MJ2UH9(K:'P_ZEYX%EY_ +MU-SN>O+:])R$FP!QB8/1^87 A(A?FU2C?%+"PCCR$.6CNHBSK5H$KH/!WD'9 +M(P/R7"2&B38128FR]YK,\_E %^5)IX_#FKB-?I91@:+D%6[WU4_2;).L;Y^7 +MVK[-UM5VFL8;KJ2. 8FOKI,$L(K)5EP; L7REH_PK+V>1-*[EBG)$N\5R+E9:*T->.QAJ5L*5TRJO$O 6X4^0 +ME)2'7EZ;I8"!TJ * ]G?*\B>0M(- +M6MF1FM+ ?,?3[N*1EI"$AXF#@6P-FU/4\QF?O!&%CE5*6J2'@QDYV?_04-O) +M7Z 6N;C7E_4 diff --git a/src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085441153.pts b/src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085441153.pts new file mode 100644 index 00000000..6760d5ec --- /dev/null +++ b/src/libs/mynewt-nimble/nimble/host/pts/tpg/94654-20170317-085441153.pts @@ -0,0 +1,289 @@ + +94654mynewt-Updated + + + L2CAP + 0
2
+ 1
3
+ 1
4
+ 1
5
+ 1
6
+ 2
40
+ 2
41
+ 2
42
+ 2
43
+ 2
45
+ 2
46
+ 2
47
+ 3
1
+ 3
12
+ 3
16
+
+ + GAP + 0
2
+ 0a
4
+ 10
1
+ 12
1
+ 13
1
+ 13
2
+ 14
1
+ 15
1
+ 16
1
+ 18
1
+ 18
2
+ 19
1
+ 19
2
+ 19
3
+ 20
1
+ 20
2
+ 20
3
+ 20
4
+ 20A
1
+ 20A
10
+ 20A
11
+ 20A
12
+ 20A
13
+ 20A
14
+ 20A
15
+ 20A
16
+ 20A
17
+ 20A
2
+ 20A
3
+ 20A
4
+ 20A
5
+ 20A
7
+ 20A
8
+ 20A
9
+ 21
1
+ 21
2
+ 21
3
+ 21
4
+ 21
5
+ 21
6
+ 21
7
+ 21
8
+ 21
9
+ 22
1
+ 22
2
+ 22
3
+ 22
4
+ 23
1
+ 23
2
+ 23
3
+ 23
4
+ 23
5
+ 24
1
+ 24
2
+ 24
3
+ 24
4
+ 25
1
+ 25
2
+ 25
3
+ 25
4
+ 25
7
+ 25
8
+ 25
9
+ 26
1
+ 26
2
+ 26
3
+ 26
4
+ 27
1
+ 27
2
+ 28
1
+ 28
2
+ 29
1
+ 29
2
+ 29
3
+ 29
4
+ 30
1
+ 30
2
+ 31
1
+ 31
2
+ 31
3
+ 31
4
+ 31
5
+ 31
6
+ 31
7
+ 31
8
+ 31
9
+ 32
1
+ 32
2
+ 32
3
+ 33
1
+ 33
2
+ 33
3
+ 33
4
+ 33
5
+ 33
6
+ 34
1
+ 34
2
+ 34
3
+ 35
1
+ 35
2
+ 35
3
+ 35
4
+ 35
5
+ 35
7
+ 35
8
+ 35
9
+ 37
1
+ 37
2
+ 37
3
+ 5
1
+ 5
2
+ 5
3
+ 5
4
+ 6
1
+ 7
1
+ 7
2
+ 8
1
+ 8
2
+ 8a
3
+ 9
1
+
+ + SUM ICS + + + PROD + + + GATT + 1
1
+ 1
2
+ 2
2
+ 3
1
+ 3
10
+ 3
11
+ 3
12
+ 3
14
+ 3
15
+ 3
16
+ 3
17
+ 3
18
+ 3
19
+ 3
2
+ 3
20
+ 3
21
+ 3
22
+ 3
23
+ 3
3
+ 3
4
+ 3
5
+ 3
6
+ 3
7
+ 3
8
+ 3
9
+ 4
1
+ 4
10
+ 4
11
+ 4
12
+ 4
14
+ 4
15
+ 4
16
+ 4
17
+ 4
18
+ 4
19
+ 4
2
+ 4
20
+ 4
21
+ 4
22
+ 4
23
+ 4
3
+ 4
4
+ 4
5
+ 4
6
+ 4
7
+ 4
8
+ 4
9
+ 7
2
+ 7
3
+ 7
4
+
+ + ATT + 1
1
+ 1
2
+ 2
2
+ 3
1
+ 3
10
+ 3
11
+ 3
12
+ 3
13
+ 3
14
+ 3
15
+ 3
16
+ 3
17
+ 3
18
+ 3
19
+ 3
2
+ 3
20
+ 3
22
+ 3
23
+ 3
24
+ 3
25
+ 3
26
+ 3
27
+ 3
28
+ 3
29
+ 3
3
+ 3
4
+ 3
5
+ 3
6
+ 3
7
+ 3
8
+ 3
9
+ 4
1
+ 4
10
+ 4
11
+ 4
12
+ 4
13
+ 4
14
+ 4
15
+ 4
16
+ 4
17
+ 4
18
+ 4
19
+ 4
2
+ 4
20
+ 4
22
+ 4
23
+ 4
24
+ 4
25
+ 4
26
+ 4
27
+ 4
28
+ 4
29
+ 4
3
+ 4
4
+ 4
5
+ 4
6
+ 4
7
+ 4
8
+ 4
9
+ 5
2
+ 5
3
+ 5
4
+
+ + SM + 1
1
+ 1
2
+ 2
1
+ 2
2
+ 2
3
+ 2
5
+ 3
1
+ 4
1
+ 4
2
+ 5
1
+ 5
2
+ 5
3
+ 5
4
+ 7
1
+ 7
2
+ 7
3
+
+
+
-- cgit v1.2.3