All of lore.kernel.org
 help / color / mirror / Atom feed
* [Fuego] [PATCH 01/18] remove extra word in command
@ 2017-10-13  9:45 Song Cai
  2017-10-13  9:45 ` [Fuego] [PATCH 02/18] add http proxy Song Cai
                   ` (13 more replies)
  0 siblings, 14 replies; 21+ messages in thread
From: Song Cai @ 2017-10-13  9:45 UTC (permalink / raw)
  To: fuego

remove extra 'any' word in command line

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 engine/tests/Functional.bsdiff/fuego_test.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/engine/tests/Functional.bsdiff/fuego_test.sh b/engine/tests/Functional.bsdiff/fuego_test.sh
index b84c259..6ebe3c7 100755
--- a/engine/tests/Functional.bsdiff/fuego_test.sh
+++ b/engine/tests/Functional.bsdiff/fuego_test.sh
@@ -6,7 +6,7 @@ function test_deploy {
 
 function test_run {
     report "cd $BOARD_TESTDIR/fuego.$TESTDIR; \
-    if bsdiff 13.bspatch.original 13.bspatch.modified 13.diff any; then echo 'TEST-1 OK'; else echo 'TEST-1 FAIL'; fi; \
+    if bsdiff 13.bspatch.original 13.bspatch.modified 13.diff; then echo 'TEST-1 OK'; else echo 'TEST-1 FAIL'; fi; \
     if bspatch 13.bspatch.original 13.out 13.diff; then echo 'TEST-2 OK'; else echo 'TEST-2 FAIL'; fi; \
     if diff 13.bspatch.modified 13.out; then echo 'TEST-3 OK'; else echo 'TEST-3 FAIL'; fi"
 }
-- 
2.9.3.windows.3




^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Fuego] [PATCH 02/18] add http proxy
  2017-10-13  9:45 [Fuego] [PATCH 01/18] remove extra word in command Song Cai
@ 2017-10-13  9:45 ` Song Cai
  2017-10-13  9:45 ` [Fuego] [PATCH 03/18] rewrite parser.py file using fuego common function Song Cai
                   ` (12 subsequent siblings)
  13 siblings, 0 replies; 21+ messages in thread
From: Song Cai @ 2017-10-13  9:45 UTC (permalink / raw)
  To: fuego

add http proxy for curl

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 engine/tests/Functional.curl/fuego_test.sh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/engine/tests/Functional.curl/fuego_test.sh b/engine/tests/Functional.curl/fuego_test.sh
index 90d24dd..5f8d71a 100755
--- a/engine/tests/Functional.curl/fuego_test.sh
+++ b/engine/tests/Functional.curl/fuego_test.sh
@@ -1,5 +1,6 @@
 function test_run {
-    report "if curl -o test.html www.baidu.com > /dev/null; then echo 'TEST-1 OK'; else echo 'TEST-1 FAILED'; fi;\
+    report "export http_proxy=$http_proxy;\
+        if curl -o test.html www.baidu.com > /dev/null; then echo 'TEST-1 OK'; else echo 'TEST-1 FAILED'; fi;\
     if curl -i -r 0-1024 http://www.sina.com.cn -o sina_part1.html > /dev/null; then echo 'TEST-2 OK'; else echo 'TEST-2 FAILED'; fi;\
     if curl -v www.baidu.com > /dev/null; then echo 'TEST-3 OK'; else echo 'TEST-3 FAILED'; fi;\
     if curl -V > /dev/null; then echo 'TEST-4 OK'; else echo 'TEST-4 FAILED'; fi;\
-- 
2.9.3.windows.3




^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Fuego] [PATCH 03/18] rewrite parser.py file using fuego common function
  2017-10-13  9:45 [Fuego] [PATCH 01/18] remove extra word in command Song Cai
  2017-10-13  9:45 ` [Fuego] [PATCH 02/18] add http proxy Song Cai
@ 2017-10-13  9:45 ` Song Cai
  2017-10-13  9:45 ` [Fuego] [PATCH 04/18] repair build script and add target lib check Song Cai
                   ` (11 subsequent siblings)
  13 siblings, 0 replies; 21+ messages in thread
From: Song Cai @ 2017-10-13  9:45 UTC (permalink / raw)
  To: fuego

rewrite parser.py of Functional.curl using fuego common parer function under script directory

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 engine/tests/Functional.curl/parser.py | 178 ++-------------------------------
 1 file changed, 11 insertions(+), 167 deletions(-)

diff --git a/engine/tests/Functional.curl/parser.py b/engine/tests/Functional.curl/parser.py
index 1e44a31..9e32eb3 100755
--- a/engine/tests/Functional.curl/parser.py
+++ b/engine/tests/Functional.curl/parser.py
@@ -1,174 +1,18 @@
 #!/usr/bin/python
-# parser.py for a functional test
-# can be run after a test, or during one
+# See common.py for description of command-line arguments
 
-import os, re, sys, time, collections
-import xmltodict
-import json
-import argparse
+import os, sys
 
-fuego_rw = os.environ.get("FUEGO_RW", "/fuego-rw")
-fuego_core = os.environ.get('FUEGO_CORE', '/fuego-core')
-jenkins_home = os.environ.get('JENKINS_HOME', '/var/lib/jenkins')
+sys.path.insert(0, os.environ['FUEGO_CORE'] + '/engine/scripts/parser')
+import common as plib
 
-def error_out(msg):
-    print("Error: %s" % msg)
-    sys.exit(1)
+measurements = {}
 
-def main():
-    # support invocation onthe command line
-    parser = argparse.ArgumentParser(description="Parse the results from a Fuego test")
-    parser.add_argument("-b", "--board", type=str, help="board name")
-    parser.add_argument("-t", "--test", type=str, help="test name")
-    parser.add_argument("-j", "--job", type=str, help="job name")
-    parser.add_argument("-n", "--num", type=int, help="job number")
-    parser.add_argument("-s", "--start", type=str, help="start time")
-    parser.add_argument("-r", "--result", type=str, help="result")
-    args = parser.parse_args()
+regex_string = '^TEST-(\d+) (.*)$'
+matches = plib.parse_log(regex_string)
 
-    job_name = args.job
-    node_name = args.board
-    test_name = args.test
-    number = args.num
+if matches:
+    for m in matches:
+        measurements['default.test' + m[0]] = 'PASS' if m[1] == 'OK' else 'FAIL'
 
-    print("parsing data for test: %s, num=%s, node=%s, job=%s" % (test_name, number, node_name, job_name))
-
-    if not job_name:
-        try:
-            job_name = os.environ["JOB_NAME"]
-        except:
-            print("Warning: Missing job name (or $JOB_NAME)")
-
-    if not test_name:
-        try:
-            test_name = os.environ['TESTDIR']
-        except:
-            error_out("Missing test name (or $TESTDIR)")
-
-    if not node_name:
-        try:
-            node_name = os.environ.get('NODE_NAME')
-        except:
-            pass
-
-    ret_val = 0
-
-    cur_dict = collections.OrderedDict()
-    cur_dict['report'] = collections.OrderedDict()
-    cur_dict['report']['name'] = test_name
-
-    if not number:
-        if job_name:
-            # Get build number
-            number_file = "%s/jobs/%s/nextBuildNumber" % (jenkins_home, job_name)
-            file_hd = open(number_file, 'r')
-            number_line = file_hd.read()
-            file_hd.close
-            number = int(number_line.strip()) - 1
-            number = int(os.environ.get('BUILD_NUMBER', number))
-        else:
-            number = int(os.environ["BUILD_NUMBER"])
-
-    # check run.json file for the test meta-data
-    logdir = "%s/logs/%s/%s.%s.%s" % (fuego_rw, test_name, node_name, number, number)
-
-    start_time = args.start
-    result = args.result
-    if start_time and result:
-        cur_dict["report"]["starttime"] = start_time
-        cur_dict["report"]["result"] = result
-    else:
-        result = None
-    #print "start_time=%s" % start_time
-    #print "result=%s" % result
-
-    run_path = logdir+"/run.json"
-    run_data = None
-    print("Looing for %s" % run_path)
-
-    if not result and os.path.isfile(run_path):
-        run_fd = open(run_path, "r")
-        run_data = json.load(run_fd)
-        start_sec = run_data['start_time'] / 1000
-        cur_dict['report']['starttime'] = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(start_sec))
-        cur_dict['report']['result'] = run_data["result"]
-        console_log = logdir + "/consolelog.txt"
-
-    if not result and not run_data:
-        if not job_name:
-            error_out("Missing both run.json file and job_name")
-
-        # Get start time and result of the testset
-        build_xml = "%s/jobs/%s/builds/%d/build.xml" % (jenkins_home, job_name, number)
-        build_file = open(build_xml, 'rb')
-        build_raw_values = build_file.read()
-        build_file.close()
-        build_dict = xmltodict.parse(build_raw_values)
-
-        start_sec = int(build_dict['build']['startTime']) / 1000
-        cur_dict['report']['starttime'] = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(start_sec))
-        cur_dict['report']['result'] = str(build_dict['build']['result'])
-
-
-    # get end time from console log timestamp
-    # FIXTHIS - doesn't work for ftc jobs, since there's no job name for this
-    console_log = "%s/jobs/%s/builds/%d/log" % (jenkins_home, job_name, number)
-    cur_dict['report']['endtime'] = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(os.path.getmtime(console_log)))
-
-    # Get meta-data for the test
-    cur_dict['report']['items'] = collections.OrderedDict({'item': []})
-    log_file = open(console_log, 'r')
-    log_raw_lines = log_file.readlines()
-    log_file.close()
-
-    # this is specific to AGL console log output
-    for line in log_raw_lines:
-            if line.startswith("++++ BOARD_VER"):
-                    cur_dict['report']['board_version'] = line.split("=")[1].strip()
-            if line.startswith("++++ DEVICE_TEST"):
-                    cur_dict['report']['device'] = line.split("=")[1].strip()
-            if line.startswith("++++ DEVICE_FS"):
-                    cur_dict['report']['filesystem'] = line.split("=")[1].strip()
-            if line.startswith("+++ report "):
-                    tmp_cmd = line.split(";")[0]
-                    cur_dict['report']['test_dir'] = tmp_cmd.split()[3]
-                    tmp_cmd = line.split(";")[1].strip()
-                    cur_dict['report']['command_line'] = tmp_cmd.split("'")[0]
-                    break
-
-    test_log = logdir + "/testlog.txt"
-    cur_search_pat = re.compile("^(TEST-[\d]+) (.*)$", re.MULTILINE)
-    cur_file = open(test_log, 'r')
-    pat_result = cur_search_pat.findall(cur_file.read())
-    cur_file.close()
-
-    if pat_result:
-            for i in range(0, len(pat_result)):
-                    ditem = collections.OrderedDict()
-                    cur_dict['report']['items']['item'].append(ditem)
-                    ditem['name'] = "%s" % pat_result[i][0]
-                    if ((pat_result[i][1]).strip() == "OK"):
-                            ditem['result'] = "PASS"
-                    else:
-                            ditem['result'] = "FAIL"
-                            ret_val = 1
-    if (ret_val == 1):
-            cur_dict['report']['result'] = "FAILURE"
-    print cur_dict
-
-    xcontent = xmltodict.unparse(cur_dict, pretty=True)
-
-    xmlfile_path = "%s/test_result.xml" % (logdir)
-    cur_file = open(xmlfile_path, 'wb')
-    cur_file.write(xcontent)
-    cur_file.close()
-
-    jsonfile_path = logdir + "/fres.json"
-    outfile = open(jsonfile_path, 'wb')
-    jcontent = json.dump(cur_dict, outfile, sort_keys=True, indent=4, ensure_ascii=False)
-    outfile.close()
-
-    sys.exit(ret_val)
-
-if __name__=="__main__":
-    main()
+sys.exit(plib.process(measurements))
-- 
2.9.3.windows.3




^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Fuego] [PATCH 04/18] repair build script and add target lib check
  2017-10-13  9:45 [Fuego] [PATCH 01/18] remove extra word in command Song Cai
  2017-10-13  9:45 ` [Fuego] [PATCH 02/18] add http proxy Song Cai
  2017-10-13  9:45 ` [Fuego] [PATCH 03/18] rewrite parser.py file using fuego common function Song Cai
@ 2017-10-13  9:45 ` Song Cai
  2017-10-13  9:45 ` [Fuego] [PATCH 05/18] repair librsvg build script Song Cai
                   ` (10 subsequent siblings)
  13 siblings, 0 replies; 21+ messages in thread
From: Song Cai @ 2017-10-13  9:45 UTC (permalink / raw)
  To: fuego

repair lwip build script
and add pre_check of library lwip

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 engine/tests/Functional.lwip/fuego_test.sh | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/engine/tests/Functional.lwip/fuego_test.sh b/engine/tests/Functional.lwip/fuego_test.sh
index 17d15af..bf7ff1a 100755
--- a/engine/tests/Functional.lwip/fuego_test.sh
+++ b/engine/tests/Functional.lwip/fuego_test.sh
@@ -1,6 +1,15 @@
 tarball=lwip.tar.gz
 
+function  pre_check {
+    is_on_target liblwip.so LIB_LWIP /lib:/usr/lib:/usr/local/lib
+    assert_define LIB_LWIP
+}
+
 function test_build {
+    [ -d build ] || mkdir build
+    cd build
+    cmake .. && make
+    cd -
     cd contrib/apps/func_tests
     make
     cd -
@@ -32,7 +41,8 @@ function test_build {
 }
 
 function test_deploy {
-    put run-tests.sh contrib/apps/func_tests/*_test  $BOARD_TESTDIR/fuego.$TESTDIR/;
+    put build/lib/liblwip.a build/lib/liblwip.so build/lib/liblwip.so.2.0.0 \
+        run-tests.sh contrib/apps/func_tests/*_test  $BOARD_TESTDIR/fuego.$TESTDIR/;
 }
 
 function test_run {
-- 
2.9.3.windows.3




^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Fuego] [PATCH 05/18] repair librsvg build script
  2017-10-13  9:45 [Fuego] [PATCH 01/18] remove extra word in command Song Cai
                   ` (2 preceding siblings ...)
  2017-10-13  9:45 ` [Fuego] [PATCH 04/18] repair build script and add target lib check Song Cai
@ 2017-10-13  9:45 ` Song Cai
  2017-10-13  9:45 ` [Fuego] [PATCH 06/18] add tarball file to repair libtar test case Song Cai
                   ` (9 subsequent siblings)
  13 siblings, 0 replies; 21+ messages in thread
From: Song Cai @ 2017-10-13  9:45 UTC (permalink / raw)
  To: fuego

The program such as "rsvg-test" is built for target board, which can't be
executed on host, it cause fail of building.

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 engine/tests/Functional.librsvg/fuego_test.sh | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/engine/tests/Functional.librsvg/fuego_test.sh b/engine/tests/Functional.librsvg/fuego_test.sh
index 75513a0..b450762 100755
--- a/engine/tests/Functional.librsvg/fuego_test.sh
+++ b/engine/tests/Functional.librsvg/fuego_test.sh
@@ -10,13 +10,7 @@ function test_build {
 	automake -a
 	./configure --host=$PREFIX --enable-always-build-tests --disable-pixbuf-loader
 	make rsvg-convert
-	cd tests
-	make
-	./rsvg-test
-	./styles
-	./crash
-	cd ../tools
-	make
+    make -k check || true
 }
 
 function test_deploy {
-- 
2.9.3.windows.3




^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Fuego] [PATCH 06/18] add tarball file to repair libtar test case
  2017-10-13  9:45 [Fuego] [PATCH 01/18] remove extra word in command Song Cai
                   ` (3 preceding siblings ...)
  2017-10-13  9:45 ` [Fuego] [PATCH 05/18] repair librsvg build script Song Cai
@ 2017-10-13  9:45 ` Song Cai
  2017-10-17  1:07   ` Bird, Timothy
  2017-10-13  9:45 ` [Fuego] [PATCH 07/18] repair test program build script Song Cai
                   ` (8 subsequent siblings)
  13 siblings, 1 reply; 21+ messages in thread
From: Song Cai @ 2017-10-13  9:45 UTC (permalink / raw)
  To: fuego

The libtar tarball file is from [libtar]("https://repo.or.cz/libtar.git")

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 engine/tests/Functional.libtar/fuego_test.sh        |  11 ++++++++++-
 engine/tests/Functional.libtar/libtar-1.2.20.tar.gz | Bin 0 -> 63544 bytes
 2 files changed, 10 insertions(+), 1 deletion(-)
 create mode 100755 engine/tests/Functional.libtar/libtar-1.2.20.tar.gz

diff --git a/engine/tests/Functional.libtar/fuego_test.sh b/engine/tests/Functional.libtar/fuego_test.sh
index 2fcc01f..986f274 100755
--- a/engine/tests/Functional.libtar/fuego_test.sh
+++ b/engine/tests/Functional.libtar/fuego_test.sh
@@ -1,5 +1,14 @@
+#!/bin/bash
+
+
+tarball=libtar-1.2.20.tar.gz
+
 function test_build {
+    autoreconf  --force --install
+    ./configure $CONFIGURE_FLAGS && make
     echo "#!/bin/bash
+    export LD_LIBRARY_PATH=\`pwd\`:\$LD_LIBRARY_PATH
+    export PATH=\`pwd\`:\$PATH
     rm -f testfile testfile.tar
     echo 'testfile' > testfile;
     libtar -C $BOARD_TESTDIR/fuego.$TESTDIR -c testfile.tar testfile;
@@ -25,7 +34,7 @@ function test_build {
 }
 
 function test_deploy {
-    put run-tests.sh  $BOARD_TESTDIR/fuego.$TESTDIR/
+    put libtar/.libs/libtar lib/.libs/libtar.so.0 run-tests.sh  $BOARD_TESTDIR/fuego.$TESTDIR/
 }
 
 function test_run {
diff --git a/engine/tests/Functional.libtar/libtar-1.2.20.tar.gz b/engine/tests/Functional.libtar/libtar-1.2.20.tar.gz
new file mode 100755
index 0000000000000000000000000000000000000000..987622cacff57423680cf1f83d27b7bf3813a1ae
GIT binary patch
literal 63544
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%0A1ycx@Or>tv1tvj27l8BBY%+u
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%0A>Bo6qhJtHD|$P;=8S{+
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
TC{dzB{}1{PYdf$60I&oA!#Sc_

literal 0
HcmV?d00001

-- 
2.9.3.windows.3




^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Fuego] [PATCH 07/18] repair test program build script
  2017-10-13  9:45 [Fuego] [PATCH 01/18] remove extra word in command Song Cai
                   ` (4 preceding siblings ...)
  2017-10-13  9:45 ` [Fuego] [PATCH 06/18] add tarball file to repair libtar test case Song Cai
@ 2017-10-13  9:45 ` Song Cai
  2017-10-13  9:45 ` [Fuego] [PATCH 09/18] solve boost library header file interface change problem Song Cai
                   ` (7 subsequent siblings)
  13 siblings, 0 replies; 21+ messages in thread
From: Song Cai @ 2017-10-13  9:45 UTC (permalink / raw)
  To: fuego

The program CppServer and CppClient depend on the header file config.h,
which is generate in thrift configure prin thrift process.
So add the step to build thrift library, generating config.h file.

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 engine/tests/Functional.thrift/fuego_test.sh | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/engine/tests/Functional.thrift/fuego_test.sh b/engine/tests/Functional.thrift/fuego_test.sh
index 3b52b4a..da41535 100755
--- a/engine/tests/Functional.thrift/fuego_test.sh
+++ b/engine/tests/Functional.thrift/fuego_test.sh
@@ -1,6 +1,10 @@
 tarball=thrift-0.9.3.tar.gz
 
 function test_build {
+    cd git/build
+    cmake -DBUILD_COMPILER=OFF -DBUILD_LIBRARIES=ON -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF -DWITH_QT4=NO -DWITH_QT5=NO ..
+    make
+    cd -
     echo "#!/bin/bash
     tar zxf git.tar.gz
     cd git/tutorial
@@ -128,8 +132,8 @@ function test_run {
     tar zxf gen-cpp.tar.gz -C git/tutorial/;
     cd git/tutorial/cpp
     CPPFILES="../gen-cpp/shared_types.cpp ../gen-cpp/tutorial_types.cpp ../gen-cpp/tutorial_constants.cpp ../gen-cpp/Calculator.cpp ../gen-cpp/SharedService.cpp"
-    ${CXX} CppServer.cpp ${CPPFILES} -o CppServer -I../../lib/cpp/src/ -lthrift
-    ${CXX} CppClient.cpp ${CPPFILES} -o CppClient -I../../lib/cpp/src/ -lthrift
+    ${CXX} CppServer.cpp ${CPPFILES} -o CppServer -I../../lib/cpp/src/ -I../../build -L../../build/lib -lthrift
+    ${CXX} CppClient.cpp ${CPPFILES} -o CppClient -I../../lib/cpp/src/ -I../../build -L../../build/lib -lthrift
     put CppServer CppClient $BOARD_TESTDIR/fuego.$TESTDIR/
     report "cd $BOARD_TESTDIR/fuego.$TESTDIR; \
     sh -v run-tests.sh 2>&1"
-- 
2.9.3.windows.3




^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Fuego] [PATCH 09/18] solve boost library header file interface change problem
  2017-10-13  9:45 [Fuego] [PATCH 01/18] remove extra word in command Song Cai
                   ` (5 preceding siblings ...)
  2017-10-13  9:45 ` [Fuego] [PATCH 07/18] repair test program build script Song Cai
@ 2017-10-13  9:45 ` Song Cai
  2017-10-17 21:12   ` Bird, Timothy
  2017-10-13  9:45 ` [Fuego] [PATCH 10/18] add target board boost library check Song Cai
                   ` (6 subsequent siblings)
  13 siblings, 1 reply; 21+ messages in thread
From: Song Cai @ 2017-10-13  9:45 UTC (permalink / raw)
  To: fuego

By the way, delete the tmp file in tarball file.

In header file `boost/system/error_code.hpp`, the class method defined in class error_category is
changed since version 1.53.0, which will cause the following error:

```c
boost-system.c:12:15: error: looser throw specifier for 'virtual const char* application_category::name() const'
   const char *name() const { return "application"; }
               ~~~
In file included from boost-system.c:3:0:
/usr/include/boost/system/error_code.hpp:190:32: error:   overriding 'virtual const char* boost::system::error_category::name() const noexcept'
    virtual const char *     name() const BOOST_SYSTEM_NOEXCEPT = 0;
                              ~~~
```

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 engine/tests/Functional.boost/boost.tar.gz | Bin 4402 -> 4347 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

diff --git a/engine/tests/Functional.boost/boost.tar.gz b/engine/tests/Functional.boost/boost.tar.gz
index 1203a679ca168f1c6d009c76ddd04155c60e67af..0d1ace8fb705a69d9d47e3e20434243915337eb1 100755
GIT binary patch
literal 4347
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

literal 4402
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%0DDCLI}t>S|MBZ2e8RGVksZ2T(K^{
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

-- 
2.9.3.windows.3




^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Fuego] [PATCH 10/18] add target board boost library check
  2017-10-13  9:45 [Fuego] [PATCH 01/18] remove extra word in command Song Cai
                   ` (6 preceding siblings ...)
  2017-10-13  9:45 ` [Fuego] [PATCH 09/18] solve boost library header file interface change problem Song Cai
@ 2017-10-13  9:45 ` Song Cai
  2017-10-13  9:45 ` [Fuego] [PATCH 12/18] using common script to generate dbus test program Song Cai
                   ` (5 subsequent siblings)
  13 siblings, 0 replies; 21+ messages in thread
From: Song Cai @ 2017-10-13  9:45 UTC (permalink / raw)
  To: fuego

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 engine/tests/Functional.boost/fuego_test.sh | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/engine/tests/Functional.boost/fuego_test.sh b/engine/tests/Functional.boost/fuego_test.sh
index 602b9e3..b2043c5 100755
--- a/engine/tests/Functional.boost/fuego_test.sh
+++ b/engine/tests/Functional.boost/fuego_test.sh
@@ -1,5 +1,18 @@
 tarball=boost.tar.gz
 
+BOOST_LIBRARY=('libboost_atomic.so' 'libboost_chrono.so' 'libboost_date_time.so' \
+    'libboost_filesystem.so' 'libboost_iostreams.so' 'libboost_log.so' \
+    'libboost_program_options.so' 'libboost_regex.so' 'libboost_serialization.so' \
+    'libboost_system.so' 'libboost_thread.so')
+
+function pre_check {
+    for lib in ${BOOST_LIBRARY[@]};do
+        is_on_target $lib TARGET_BOOST_LIB /lib:/usr/lib:/usr/local/lib
+        assert_define TARGET_BOOST_LIB
+    done
+}
+
+
 function test_build {
     $CXX boost-chrono.c -lboost_system -lboost_chrono -o boost-chrono
     $CXX boost-timer.c -o boost-timer
-- 
2.9.3.windows.3




^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Fuego] [PATCH 12/18] using common script to generate dbus test program
  2017-10-13  9:45 [Fuego] [PATCH 01/18] remove extra word in command Song Cai
                   ` (7 preceding siblings ...)
  2017-10-13  9:45 ` [Fuego] [PATCH 10/18] add target board boost library check Song Cai
@ 2017-10-13  9:45 ` Song Cai
  2017-10-17 22:50   ` Bird, Timothy
  2017-10-13  9:45 ` [Fuego] [PATCH 13/18] using common script to generate someip " Song Cai
                   ` (4 subsequent siblings)
  13 siblings, 1 reply; 21+ messages in thread
From: Song Cai @ 2017-10-13  9:45 UTC (permalink / raw)
  To: fuego

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 .../commonAPI_Dbus.tar.gz                          | Bin 6320 -> 0 bytes
 .../tests/Functional.commonAPI_Dbus/fuego_test.sh  |  34 +++++++++++++--------
 2 files changed, 22 insertions(+), 12 deletions(-)
 delete mode 100755 engine/tests/Functional.commonAPI_Dbus/commonAPI_Dbus.tar.gz

diff --git a/engine/tests/Functional.commonAPI_Dbus/commonAPI_Dbus.tar.gz b/engine/tests/Functional.commonAPI_Dbus/commonAPI_Dbus.tar.gz
deleted file mode 100755
index 7f1b491803d44b4fb25b16ea50294e9bd1a4b6b7..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 6320
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

diff --git a/engine/tests/Functional.commonAPI_Dbus/fuego_test.sh b/engine/tests/Functional.commonAPI_Dbus/fuego_test.sh
index 485d279..97ae6c9 100755
--- a/engine/tests/Functional.commonAPI_Dbus/fuego_test.sh
+++ b/engine/tests/Functional.commonAPI_Dbus/fuego_test.sh
@@ -1,25 +1,35 @@
-tarball=commonAPI_Dbus.tar.gz
+#!/bin/bash
 
-function test_build {
-    $CXX -std=gnu++11 HelloWorldService.cpp HelloWorldStubImpl.cpp HelloWorldDBusStubAdapter.cpp HelloWorldStubDefault.cpp HelloWorldDBusDeployment.cpp -rdynamic -lCommonAPI -lCommonAPI-DBus -ldbus-1 -I $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -I $SDKTARGETSYSROOT/usr/include/dbus-1.0/ -I $SDKTARGETSYSROOT/usr/lib/dbus-1.0/include/ -o HelloWorldService
-    $CXX -std=gnu++11 HelloWorldClient.cpp HelloWorldDBusProxy.cpp HelloWorldDBusDeployment.cpp -rdynamic -lCommonAPI -lCommonAPI-DBus -ldbus-1 -I $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -I $SDKTARGETSYSROOT/usr/include/dbus-1.0/ -I $SDKTARGETSYSROOT/usr/lib/dbus-1.0/include/ -o HelloWorldClient   
+
+tarball=../commonAPI/commonapi.tar.gz
+source $FUEGO_CORE/engine/tests/commonAPI/common_api.sh
+
+function pre_check {
+    is_on_target libCommonAPI.so COMMON_API /lib:/usr/lib:/usr/local/lib
+    assert_define COMMON_API
+    is_on_target libCommonAPI-DBus.so COMMON_API_DBUS /lib:/usr/lib:/usr/local/lib
+    assert_define COMMON_API_DBUS
 }
 
+
 function test_deploy {
-	put HelloWorldService $BOARD_TESTDIR/fuego.$TESTDIR/
-	put HelloWorldClient $BOARD_TESTDIR/fuego.$TESTDIR/
+    put build/project/commonAPI_Dbus/HelloWorldService $BOARD_TESTDIR/fuego.$TESTDIR/
+    put build/project/commonAPI_Dbus/HelloWorldClient $BOARD_TESTDIR/fuego.$TESTDIR/
+    put `find build -name 'libdbus-1.so*'` $BOARD_TESTDIR/fuego.$TESTDIR/
 }
 
 function test_run {
-	report "cd $BOARD_TESTDIR/fuego.$TESTDIR; export PATH=$BOARD_TESTDIR/fuego.$TESTDIR:$PATH; chmod 777 *;
-	if (./HelloWorldService &); then echo 'TEST-1 OK'; else echo 'TEST-1 FAILED'; fi;\
-	if ./HelloWorldClient; then echo 'TEST-2 OK'; else echo 'TEST-2 FAILED'; fi;
-	pkill HelloWorldServi"
+    report "cd $BOARD_TESTDIR/fuego.$TESTDIR; \
+        export PATH=$BOARD_TESTDIR/fuego.$TESTDIR:\$PATH; \
+        export LD_LIBRARY_PATH=\`pwd\`:\$LD_LIBRARY_PATH; chmod 777 *;\
+        if (./HelloWorldService &); then echo 'TEST-1 OK'; else echo 'TEST-1 FAILED'; fi;\
+            if ./HelloWorldClient; then echo 'TEST-2 OK'; else echo 'TEST-2 FAILED'; fi; \
+                pkill HelloWorldServi"
 }
 
 function test_processing {
-	log_compare "$TESTDIR" "2" "^TEST.*OK" "p"
-    	log_compare "$TESTDIR" "0" "^TEST.*FAILED" "n"
+    log_compare "$TESTDIR" "2" "^TEST.*OK" "p"
+    log_compare "$TESTDIR" "0" "^TEST.*FAILED" "n"
 }
 
 
-- 
2.9.3.windows.3




^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Fuego] [PATCH 13/18] using common script to generate someip test program
  2017-10-13  9:45 [Fuego] [PATCH 01/18] remove extra word in command Song Cai
                   ` (8 preceding siblings ...)
  2017-10-13  9:45 ` [Fuego] [PATCH 12/18] using common script to generate dbus test program Song Cai
@ 2017-10-13  9:45 ` Song Cai
  2017-10-17 22:51   ` Bird, Timothy
  2017-10-13  9:45 ` [Fuego] [PATCH 14/18] using common script to generate commonapi c++ " Song Cai
                   ` (3 subsequent siblings)
  13 siblings, 1 reply; 21+ messages in thread
From: Song Cai @ 2017-10-13  9:45 UTC (permalink / raw)
  To: fuego

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 .../commonAPI_SomeIp.tar.gz                        | Bin 6533 -> 0 bytes
 .../Functional.commonAPI_SomeIp/fuego_test.sh      |  44 +++++++++++++--------
 2 files changed, 27 insertions(+), 17 deletions(-)
 delete mode 100755 engine/tests/Functional.commonAPI_SomeIp/commonAPI_SomeIp.tar.gz

diff --git a/engine/tests/Functional.commonAPI_SomeIp/commonAPI_SomeIp.tar.gz b/engine/tests/Functional.commonAPI_SomeIp/commonAPI_SomeIp.tar.gz
deleted file mode 100755
index b00f19aaa659a2b9a4af3be583a980098db12d7b..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 6533
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

diff --git a/engine/tests/Functional.commonAPI_SomeIp/fuego_test.sh b/engine/tests/Functional.commonAPI_SomeIp/fuego_test.sh
index c47d56b..3b2c880 100755
--- a/engine/tests/Functional.commonAPI_SomeIp/fuego_test.sh
+++ b/engine/tests/Functional.commonAPI_SomeIp/fuego_test.sh
@@ -1,28 +1,38 @@
-tarball=commonAPI_SomeIp.tar.gz
-
-function test_build {
-    $CXX -std=gnu++11 HelloWorldService.cpp HelloWorldStubImpl.cpp HelloWorldSomeIPStubAdapter.cpp HelloWorldStubDefault.cpp HelloWorldSomeIPDeployment.cpp -rdynamic -lCommonAPI -lCommonAPI-SomeIP -lvsomeip -I $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -o HelloWorldService
-    $CXX -std=gnu++11 HelloWorldClient.cpp HelloWorldSomeIPProxy.cpp HelloWorldSomeIPDeployment.cpp -rdynamic -lCommonAPI -lCommonAPI-SomeIP -lvsomeip -I $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -o HelloWorldClient   
+#!/bin/bash
+
+
+tarball=../commonAPI/commonapi.tar.gz
+source $FUEGO_CORE/engine/tests/commonAPI/common_api.sh
+
+function test_pre_check {
+    if [ -z "test" ];then
+        is_on_target libCommonAPI.so COMMON_API /lib:/usr/lib:/usr/local/lib
+        assert_define COMMON_API
+        is_on_target libCommonAPI-SomeIP.so COMMON_API_SOMEIP /lib:/usr/lib:/usr/local/lib
+        assert_define COMMON_API_SOMEIP
+        is_on_target libvsomeip.so VSOMEIP /lib:/usr/lib:/usr/local/lib
+        assert_define VSOMEIP
+        is_on_target libvsomeip-cfg.so VSOMEIP_CFG /lib:/usr/lib:/usr/local/lib
+        assert_define VSOMEIP_CFG
+    fi
 }
 
 function test_deploy {
-	put HelloWorldService $BOARD_TESTDIR/fuego.$TESTDIR/
-	put HelloWorldClient $BOARD_TESTDIR/fuego.$TESTDIR/
-	put ./fidl/vsomeip.json $BOARD_TESTDIR/fuego.$TESTDIR/
+    put build/project/commonAPI_SomeIp/HelloWorldService $BOARD_TESTDIR/fuego.$TESTDIR/
+    put build/project/commonAPI_SomeIp/HelloWorldClient $BOARD_TESTDIR/fuego.$TESTDIR/
+    put build/project/fidl/vsomeip.json $BOARD_TESTDIR/fuego.$TESTDIR/
 }
 
 function test_run {
-	report "cd $BOARD_TESTDIR/fuego.$TESTDIR; export PATH=$BOARD_TESTDIR/fuego.$TESTDIR:$PATH; export VSOMEIP_CONFIGURATION_FILE=./fidl/vsomeip.json; chmod 777 *;
-	if (VSOMEIP_APPLICATION_NAME=service-sample ./HelloWorldService &); then echo 'TEST-1 OK'; else echo 'TEST-1 FAILED'; fi;\
-	if (VSOMEIP_APPLICATION_NAME=client-sample ./HelloWorldClient); then echo 'TEST-2 OK'; else echo 'TEST-2 FAILED'; fi;
-        pkill HelloWorldServi"
+    report "cd $BOARD_TESTDIR/fuego.$TESTDIR; export PATH=$BOARD_TESTDIR/fuego.$TESTDIR:\$PATH; \
+        export VSOMEIP_CONFIGURATION_FILE=./vsomeip.json; chmod 777 *; \
+        if (VSOMEIP_APPLICATION_NAME=service-sample ./HelloWorldService &); then echo 'TEST-1 OK'; else echo 'TEST-1 FAILED'; fi; \
+            if (VSOMEIP_APPLICATION_NAME=client-sample ./HelloWorldClient); then echo 'TEST-2 OK'; else echo 'TEST-2 FAILED'; fi; \
+                pkill HelloWorldServi"
 }
 
 function test_processing {
-	log_compare "$TESTDIR" "2" "^TEST.*OK" "p"
-    	log_compare "$TESTDIR" "0" "^TEST.*FAILED" "n"
+    log_compare "$TESTDIR" "2" "^TEST.*OK" "p"
+    log_compare "$TESTDIR" "0" "^TEST.*FAILED" "n"
 }
 
-
-
-
-- 
2.9.3.windows.3




^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Fuego] [PATCH 14/18] using common script to generate commonapi c++ test program
  2017-10-13  9:45 [Fuego] [PATCH 01/18] remove extra word in command Song Cai
                   ` (9 preceding siblings ...)
  2017-10-13  9:45 ` [Fuego] [PATCH 13/18] using common script to generate someip " Song Cai
@ 2017-10-13  9:45 ` Song Cai
  2017-10-17 22:51   ` Bird, Timothy
  2017-10-13  9:45 ` [Fuego] [PATCH 15/18] avoid inline function not defined problem Song Cai
                   ` (2 subsequent siblings)
  13 siblings, 1 reply; 21+ messages in thread
From: Song Cai @ 2017-10-13  9:45 UTC (permalink / raw)
  To: fuego

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 .../Functional.commonAPI_C++/commonAPI_C++.tar.gz  | Bin 11657 -> 0 bytes
 .../tests/Functional.commonAPI_C++/fuego_test.sh   |  59 ++++++++++++---------
 2 files changed, 34 insertions(+), 25 deletions(-)
 delete mode 100755 engine/tests/Functional.commonAPI_C++/commonAPI_C++.tar.gz

diff --git a/engine/tests/Functional.commonAPI_C++/commonAPI_C++.tar.gz b/engine/tests/Functional.commonAPI_C++/commonAPI_C++.tar.gz
deleted file mode 100755
index a5a6670887348b30e94a3feaef0423665314fd1a..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 11657
zcmY+}gLj?n(+B#-Y1p`F>@;ZD*l6rDwry+2wr$(CZEH7n8ly?}eV*TY);epQzhSPK
z`CgwPi9-A&sne_R3Fb=I)A?Yu;kj>0f#tYLnO1!2&4D)KyJn*8Z%g;zRj!16TqA*!
zk|Ma!FP{_}_q9MzYy5cdK?5Ttw6-FYM<xE;Uf0*T*ZOnsUA$o4POdCs;B~I1F89!K
zi0vEd4S3dKUJbyRQ_s=!W<Ey`we<m?MTh3pjsLM6mlBv_ZiE);jU@NZO{+b9!}~Xl
zc|ZcVo`E;aqaJ0$6A!?Do5P9>3C2M4*Kw@}eGz2_@1SPgHDCjMo7>mX5#yzgpTj&#
zJcZ|OtZxY)#hVMV<JZS|=@zQr(p3-X(oc9&`Kjd#nHtNxDQi*35_}#H)25+Zi?vQd
zpr_<)HAlc@&(q;gJYA(8GfIsoS*H<1%#wb}6Op_?;FKFb+vb(ysH%p8AlWQhyJhwq
z`{Jd&mcPjnK+LCoi8OYnjXXDJ`h<RrFaCAm1)aHg`BFv6zn1i&m`NUQQ-j|IhyvXA
z?#}g}7|0V8vc7B#=t{m@{~IF!z_Axvhen=9JZw(a(>6@a&lA2$E?KrItxeWO2^oDJ
z$(l^FmL#5jV#o4d;bvDbz0U_C?8u=0j{4q3^-;1-Q9yp1aNoq4W6>)k^~MyAw6Am;
zC$ks4GSYU!t+XZo)4n?axOS&?Mc&SjalE=TmQ9VQ)_%Tv+3E8V$FFnwJs;0>wY9I$
z?fP-~0#BztNOeDEXX6C2d%U{{PK>xE{r+)vT+QTMXk{*oa@%V~FRw265U(4)K*964
zIDRAB!GhV5LARhK7ovWy=H=DVV1~QqUE+A%xe=C^dZ7~xTkzpSv#;sTRlrmFvcyZw
z7C2_S*@eZ5Y@_jIwAOxnUv_T#c`*Dd(y^|vTPf~ai+*8tBP_{VE<zIcw&$}da}wx^
z&NoQGKw_%jcw|?T<mx;9+x+^xlxU*#GAp`CLf(EYzqj|(-sS20B}f6x3H=7I7D@C~
zW<_f9y3%7cdW_R;dEJ-a(O?5!$qV+pR<LQ?u^WBlcN_(8^!eGW9k6=#^zZHFuL0LT
zv%HTO;8R>BJ4?{;-x~b+N7~O=a%M%sG;;*JosTD$S~!c$&lw0CwT6=%ZcAd<hts0>
zTwjx7$MhkxtLI;{XpL)FXSFc#Zn`$@9p`r5X8Ee#L@pBiEX!j8n)<t-$Q_q9)F-%G
zb)H!p3#pzGf(|Y;?cSaAr_i<4EOvx2Du~DU%y(N9p7PVJ1<lX0*OAvi&9ypjir;;}
z%Tj3%SW^z>-V4FgXZD-1@b;)TvI%Tiv(?P3s404*yTyBqx_IzzoZeT}LBDp@W6JWG
zSfUKt@!TBJGdD^nFZ&yGPQdGpMSsj9a6-?rH+m8}d@y&CGb+X2VmxUo+L9imA#-;2
z`!gndp`yd4Z%=dm;GVEMl&nMIM&DAHqpa2sxqlxmN6>W{UOV|RneQp}pfQuN`5y+6
z)g=TGzWoj&wAP#-3(c=4DgElHt$f4QcQvVK8o;T2YFDta41d@#6Hnrr%pZ<R(Sup8
z@0(U}gA(?sO<=vsv-)j%>n991ABc5VmcW?Z<m=Q`X=U$*U8RwVsr5hPT}6QGISmx(
zVSD%zjRNjmt=TSV=|Rp@PizfMfFGKzsnPQhC?Oz{iCS>l+eE$UXTAogUad%vc7mQc
zc@YD|?HK|tXC1y>ebMjrG5(lBe~P$GI(QxU0X|9kC^!mRs&bA``6LqnYg@$i7}2an
zT_d6fy)3but9_K_L3a*fDmq$O*w*TQ7uJ>Q;6Zu-f(+HqL0v)e&sA=COhK*xz;b*w
zJ)4pLc2^#{aUQx78(lA)*J{TY=fT%4R=|OdHQh9c!rUBK4&?U?c{lNTy`DMS7<srG
zQUJ@v$;bW>$nMR9csR1ul>DwMX<UguH`M5qWzwlCMfgzx;CO)ved`*%nf2n%yr+(6
zWv5c?Le2#Eeq7cwuQdGC<>h41tSN@(De;(9<dP7AVw`g+x7Kw@Cmd)tNS<_5teVlG
zN4Zzdbwu+gRyA%kpg-FETv&3HXp+Jg#r5jBDZ*;ix2CbkGNTcgPI=K*8R*E5G*W3Q
zV%^&$LV)~vkJEv_*<WyyodC-@HvG5hdRz4%7Q(R_dsj;k`Z)7-|11&yE;0sRlc?n_
z2KYWvoJyZltciAsqs?%D`?-9omCxYu*j!P-=FDweYk2sVN{HZk0t1(n14CK#SbOMb
z!=gYzNvP~C;`g5pwQ_!$2BP~u%2~5ZRP<#-@p3JtuPhjPi55Hwv~AU_uSr%UQ<AXs
zrj>Hx^Nq!CVGPhbhapis=7ovOA9j<+78M&(_cZ##PYR|_J%@hkMvhip#8=W=MZfQI
z{_x!VEgdH>uANBUr!Ic5Th~~diG=WtjJ~|Oo)ef?2QlyNl@povf>b{<G`)S32@w4H
zQ`X^K%v`;+**x)%OE6d;`x^BuLpiXqqb=qRC^-_eR9EalqXuFcFF~C>b`q1I9VPU`
zzNhjX@FXb9qxBB#JOP?ibGU`<fI$<<FVml6Sc!Fu+jE?R|5{S@v_y$N?F@!QNT4YR
z4T=?S*d$i)ohyK%3@8n~(P%1)ayfEH{))s(5#1{f<z$FF<-6Tvg$wOB#=4qW$2;FR
z$`p27ZF0_=%@zR#X{20sWUQm$2op1<{21}@RbtNYEsAn5DizxpHQV{RJq-9h?PjF6
ziSLhF$m1^YMJ~V7Vdwj)o(5Djj4C#!1)O8|2<vTPt)K?6dos5j-77!XJBRK7Dixul
z(eY=;?Oo&R%$M#Ci4|wrIfQLLqpObGkJTp&H#J@+INHZ!p|kCbJ(I=)wAmNofXAu4
z*f<3yri*$wVLx*>nJ(OCC|<-rJB*jm5SvyMgXzrqvHES%fB0(rat#W*J^Vn3ZFC~5
zQa34cGsObDSu+haVM?}MXb<9RYPff25G&gl9gFKrJR>x)n=ynK!HclL@*+ai@k#tU
zchn92G}{*zo3C)(7KIlZ{lO-^#kM2w=|z^=)SIy35_-v6zR-NBIZ$n@{DdfCHr+1D
zG{?<OP{eb-UfYu`*a}Z2Qzu<G4YL8B!*h(AzKw@X;imgL3M#?vG0M>6Kbz&xsOa?+
z+Ukw+ef-iRh1ur*V7fmObQLSe?kzt(=h`Dk5r;OtIil~rGD{i6Mf$fH!qoTIq~*%V
z#LX7O*M4#a6<Z`5ZN?DYf>Hg@UE}49KfxS+l^Qfu86PwaOj?RE*z<XKM?fD#g<t4w
zBgCUpVarkPMUNuq!>m}9RT<grbN<+nNJpkB_unLewr=pZ+9)8|85HrSOC!r_is|_9
zQcu@VUi6P~u5~=TNvB>->5CR?&>$>Zam+boF(#gGEA&04J`3Z{`Y3y5W>p21_9dIY
zO2;&tv1O}1%Q}iXJR!I@2Tb6GC#qYA*ODgbpxY`PtFJZ(TS=PxqA;jUe>gnKWlj`W
zqSO4#!g5oHv+i991TMf6_zsC2R!tV@hK178CGtY>&zwpt-YML@4XUc?k@lAjjmL39
zRcu*5e7qjm=m}NKIZOt+x`ec=;S+MYy#o4={VK=v(*6#z&vl8oX5tGg<uC=oV4YKO
zi`3C1GRuqC){F|UnFWlfw{+3r|4F%;j@dYL<Yg6YW5E;yk5JWZDr|&#zg|l<L1oM+
zCaKY+<~AIivED#u1XC^AC9>uy(25#nm+_Qzgn5;)D3Ac2Lv}{E0zpsN&fUrsPV(>F
ztB0&er)o-aDSG8H>JLV9HHsgDxpz<cZVrE^FDrZdUJfsStsK8DrbnRX8u0_f8?>he
z^hMCL`aAk?)!JUjw?szR?agf4&`^LZOW89gFr4<ciCS7w5{SapIhj8r+<em@bTa48
z-Bxi*KYf;Aa=I3BL0m__W0V3N`MD$1;J(wVIEA(e@nEnkjPFq7-78Au$`p^2UNU(2
zHms2_l@4rwxp*s{%|<);7O(ofKeSt|)J0S&F5~xnY*a;FfT9c<y3~i0l=#p^$%R0m
z(1bKpK|<PxE0M}=)J4aX>3o=W_qAnyIC{^nl@h+vGK#H>t_=dx5=VHpYLS)a9*mWw
zk5kV>`r3AM<>!VT(rt;u$xzf`v<ZpI+DM|bqz8x%H^wXs_Od0EN8!)d+ILbTTLH)o
z<b7_ei)SZdF@E=ZRxWdVtu0fjB5{&KdLpJC4EHXd&BNv((yK~Lc^K}uM?Z34MdH`%
z2Z=35`g+edi0Cl{OoVdq1|G;qe*@vM+B^etd|Pi|)EyvGL877X6be7DQ7t_7a%M~F
zbxOs!qw^IXw4>;vAZsmY8cSlB=6+?c*$+?e#vVI5qd=f3e?ItI)FN7WpG~1&ly&?k
zPU;XUVHeuGFGrq#wF1aWSt`<r&X@ASkHo!S4_7nxM9dPa#)n!&%demV_v3r`(sbVR
z>ys39M!8c2mV5v|#!tfX7%&S8V^Xh69zjdRuNjSwS%vd~U}p-ZxJ_Ak3f2;JH7WTx
z({Nv@3)j^zsjV1qxyo_x)fEtd6`iH7P!`UOEGICNPsh|1qLoMhU7svLgo{n8I;L5k
z_t08yBt)<w!vc;vzaJ=D!k2oj6Z}dJQE_MA-UQhmZsY=U?vM-m$PJqmzMF$K#|RY@
zSc56yp!~JH!Q4G6T6fJ7;-QBs)zKr$y&t2c*cBi06+qN35<s7~_y$;&_C0)01bD7~
zfPt+Y!@f5hAEGC(tq%~^oErdwg5**8@Mp~YRndOPeCUqsI_yOCb0yH5$y8e}qlJeq
zC&xv5*;bjl)v+PNQa2;5xJ;n5+YBIc)uQ~l(Kf$T2}3s8*w}QtkyvP6WEYrK#YQ%&
z=vyF}!yuq5Qq-idNv~Ts0ve;wLE;#-=JZt-ct&gW6*$q<h0xETV^4sJV%;D?@0?$4
z=Kfdldl1D*UjWn}2*^dybn9&5Y~-~|e>c1LBYp$}`^3`-jSPXAtmCKb>NNdfMAuz4
zdqmZ8r{H_yu+c$-Hs4)U4Iuptdic@T2_+fuj*ta20{nIR)$>#?cO~eRa|P*3C|kEF
zN`>U>)9>-lW@KRk2^pE`wd5M5=3QY1YRvl_`-zYdvG8GftI7WEqVfXhn$X_&PCtYC
z#rUh&q||qXF5|&ns!4ljqIntikvhGcEL%!@vE^hP)e0WS%6ngkwPgzr(qEu!XB|?t
zH1G%}u{{v9Io!AdF^vLmT}4w%ck+K6tqzU?9X^4Rdrx<N-PA;AhEO(8sLF^KikWpx
zw4Em1JXBJ5<YefMy0STlv!ytU9s6NdQ-yh?m+Wa9l|>Tm?dKD6@^)c084m|Ioce9l
z4zX|?BfEbw4Xz~_6W5QO>nT$A{x6@Zi3EI~2OfBaTKRyto&^rb5`5m(D*$~BYIn#(
zhe^un#r`(!Jm8lKcg)`S+4CmHG$Xj39j&yD2b^yc)S}KU$;J|kQqd#5H)9e|i<3Wm
z6nylmGvEF*WRJVtbZ5JQ@lTouQ)<tKZwE@uaEGKz7CtReR`#&O7$*{g*PvzJlgn3k
z?dNX1x8!3WJ=GTHxlaV>GZcIRE*{{q0sH1hV0}F4FF+GJ^)j;vb8Qiu`<eb9Y~}5D
z6|{hFUUv8=LQWPApD2I7!!YjQ)22&Jej57D7<u!(N)vwN&>_$+=#m!TaD(mE;vo-6
zH7w+XBUfVQmRL;?;$2LE@?%M+?j-FH)mC2f@v&Axc!8aln?zT1gn7@zs^R|kw^ggY
z3%O2+6k4mfuJC0z-1<7`ar{eA`WCo~%5~D(WwVRgww<A1!>06fF^4kQ*pC`ST>Osk
zmC=5kZ0_e%p=M%TIhz3NKkw3;&k@yJu-M_UgL%3KLjQ=vkiF~id(-|D8}ilWbi93|
z3N9_E5%iZG&_pjdQ&=uLePL-j&VLz(M8LfXa$GhA`KLt#F;67?!+~%Cj_fw}2O#_X
z?`)7~viCiPOaRH(K844@KWxbF=@o2z048wt(me+@t{>Z;`v^S!P6*_4$ae;y#74yk
zr7nXmz}x*#NF=9VN6L~;Yw*^O8RoXSR8DE^9iB+MUhAbe5886DL*6iYUlNa~a#@AN
zdTr-7gGvE+iX$xNKgVL4Q6cm<JFuoeJa^JU?)kX>eBgS*D^K$mB3a~r+V02fa&K+&
zb>OHVb9z`)oGJA2L8q>w1mzzej|#iQdc$&mnDB7E4f`%U&^3)JQ~z0+$Q-_p8`eL|
ze1tZc^70i$F<teE)$30(Vn3=bmSL*bm6#3JL*NMWqB|=a&H|aa(7Komo7s-OjJG+{
zWWPSU-B_gWRlHVA&+?wWv}bkg_+g>dQ@^?AQ|r7y$t+nv1B>!LpWnyxUTshrPxwsU
z%E|=pSIRm+6kG-4$=~w!XnO$?x3^^oLTvDV10X<xw$ylt6-CnF>3HAgpK*042Z$;!
z2s!D-hsKh>iWxSsA>t0E3Q=%Z7Os+=Px|~Rx>ag|awBr$F_VI9Y_7&5SkHED`yTO6
zM=6mJ)q7mZHNd(CsuTP+`a(is1)u`p+W%W!eRu|dsBwRGwjbzW$+Ps#-S1yvJSb9H
z!Qxd~KR~H{pWkUfXhbyBTAovzCZJKq^>;=-4kB5|h{ZAn?r#~R*f2ug9g3$Na<Ape
z^)XB?WoHWsLJ(4AYw#_{82ib;@{O9K9cDro_<-3kZR)YR7wo|Xl*^2(ZIx5H&13g|
zJa`l-q7%X|(H`q@%%6Sce1q{17Vv3rRvEKXCGqO0IUJn|CA4q?c?4f%+++QBL;@&X
zeX^-`#(J#=Wc1dy%kCGOFrat6ixY5Oz8Dm!bGT%{Si@G>;VUd+C1hg%dYj@Grt(AS
zJDCzz*2FTI4ETmO2TOUs5zaD-+=8k}qC&uw3~fN)bW%OG@q*tkdp9PhYb6_~6o!$9
z)1W8@P|o+TmBDYQEGToGZwfQgTj>b+MSaeej5l^DU@!Qn2BcLsya5<HHu_r-z0oJ^
z8_-YyCSW~Z^si6Yy9(GEZ#n|>kO1}6ze|@rm~P80D8C$<;0-!j{}_>I_C;`>sDRms
ze_*@YF}nnSXxe|lvi6ineAd(I<XUG(`JTJNjOX9i0)z0<0=oYrPImHzarA>lZ6?*d
zP#Q0Zf-||Abk)w2olgz%L$nqeoLSTupDMASTGB;ktb9_JBrN0q6+o&gc&<hQAvdX_
z6d-;bt`LUA5kj#M(vOjy^<4e?sz%ve;!}1=$zl<$KtVB*lzm6MVPnD?ZWSw+g=9ST
z8j>7B==6QDbhkh7C<M=}b^F^vaqw^M0wS@XT%jcj1RAJl9mFMN*jP*-f-B3>j*wz;
z`yCeUqh%#*3~_RE!626KA<B@}C^dW1n(`tUl{VUg0h(e`_<Iiykw>k8BJvv{N1I=j
zi7~zkpOI|Ru7|rPJ-!(XOv17I@$qtxy&{YKK-vGALs;*PdAhpQPKwF@g2edsAO??j
z6s68^KL~~L#FTJ8%I(Yhp5Q$0yjUC`+6=&W#f<4#cWP56f@zD@iuUtfgNMxRzI1{)
zmaK-tiT%8HtbIU+mnS*4!`^U5;k-*u{;TXm#;>HfM$DeuPv7ZZB&)5hRtug8>!6E#
zbT?YZ#D}>lXlga89@9&VQq~X!)7QThTpd6k;xM!#Y(~AyNuII)kkkqBdH7pFY6W!$
zk%+#7dt--(ZFE2qg8mMBz=2)odQbj){ZxxAH!@XN!^~`YcO5<?7D99*Pdg@kx1JhI
zUWqvr{+HLsxcc^s>=`OH!6e=%{n(l8*w$JfRV+SpiL8>dIr!&gc*d=zaCXeVQlW`#
zi$=3psUOSH6p-%;e?E&{;R7Sjw#0DA{C5?mD&?aNCUl7=%|c)0SlEIGB__x=w|qEQ
zaygN!%yDh4g*;XsXb>VM>O=2Rf-RI3n)}xD^tC$6Rx<Tztmo8RX#4IP7e*&4-b}Ot
zm=^jw3V}4%?IXDW<jcNLn3vHbU?6<I?`c!}4LrlA{R(8<>aXCWbXR(Eyz(D8jrfKO
z^!tbWKm(Q#Z>YNCFxz08`a>-<mkNHVSIj*mYsD2UM~aIsY5bYau^hi0W1(onokdnI
za-S(C)0R^0M5Iq2M9l5se{*ni@q6kk`%6I1BPX9g?eS)^Hi{Ll{iiRNi})8$I6~w`
z)rcE0lG}c|_)LOS#?FR-;V;v-OZ)dS!LLqOXfWTm@s%)1gC2%axl8XOb!A7BO<@G3
zi4e$mL!6z|(S`GAxDNbmq_(rGRTmk_6?B~p9;j8NgA|a1r}DPO-R?+jdDs;=3OXvk
zX{<{P%dlYn$3NJOXX0PfM>YluF6VCB`>$zo(JUjx{W6oS;iIjx<<ndeu{qolO}?`5
zZan4|9NAcXpqL}$P|C(IZ8+c}TYgr)C?Kzut@LHTZc1klb<zGWtq-h7qXmCyY8EJ?
zEauUp+*Ri@Jf)UAvtiy=$31F=o$*cz{S>{vqwgMIBZA1cfqB8Q0Y##S)2-t5gMjsd
zw$YI1Gcrb^r{v<~aHVcQzKI?d{{%LlkyHiUq)nQWf<_3c#`A{$M?XncD=&<*iNH=u
zx<E)0(**Cx2$jCMBfBZNoN-Ej=)Bwa<cwnz3d>Lk?|a?H7N_kS!JQ?^tj+<krmMFS
z%9Nnxp@j<Tb*Ao!#{2IpnP|8qDj-jXacIu%eP2NesPil1Cv@A4uU#T}kkAI|<oG%c
zNa{+H{-zdCSESYz^#j)HSIlqVALk%1+h*Vjt?daQ@NE5;_um$ByxUPolMV54adNrc
zd+^0Kj*pf#MGd%^7^w*%OC)?7b(OC(+#D95WGs$>lp%`I((6Yyyk=w4ova8qtktlx
z>C79nT=rFzUQFXnZ2!^x7sL)pNR?;)ZORZe@>3~QI6NU(E0x;`o=mFs=g8q$j!OO&
zy~)f$A|36&O1AfRt=qW$P-A5SmI%Kj@1wULnY=zE>&(9g;}ZJX<IPw)>r@Q)Gp*uu
znceX3tWzz#3|b$|h-?#i*~FwB_jFCfhWBu-_*kPIZ8$56D)aq}yn^`#^=l)gqRrvp
zRDR)d_*LIevl3m<6yirxt%afB4|g&QPv$?vkO)H@KLa1L{0-z)hR`#UJ4sGz!lB3F
zSrnQof}#q_-MTbwXM_CWTb10ukZWS?^)0lx#UZE6P4!Zx5)rBKwmWrdTTN?y`s&~+
z{Evgdp>)oNlv33IJk1k$R{`*E@NXW($IM~v$6cD+0R0~rdvU#P-VrFrj~yiiKyO*`
zdmrX?oyXmWAkPl*Gav*L?^Y&ptN%+Ih>Q7OU&D<9ul;?;!6jcnd1_wzUCh>C#`*0W
z!a@xhm}2%UIo6cy*)w~LXv$6r*=c`>*<3JJ0^hOppC@Wh5-bc!9bEe%e>>-P1b6@e
zI?@^}l-0q07p4~&Z-(+KMp?|DG){zFWt%j%qNO^xp(qJI!2JKP@08QY+>=x!ST3Px
z6vFKU=iXfp{S~1+{1u*S*C@k7YAp}TNqf6Ak)$VC#T0Q!PeabGyBjt(-vK}T?A3ou
z0R<>C?`y$I?Z=Fn7cC3t)(YGjcAK9N$JXe3KYMw3xNAhy{xWtyR6F9^j|S}#77O+N
zw>{lOmJtEZ=cjkPRu<_=vD?7@`B*UmEvlKsJht#5;fxI9lyn}S@%9GL<!YU_%Tz)U
z{IV0S(z-Z3VmXk?gdpd_PmmrzowgW*;LIMgB$oB*c05YCO2L1uk<H)mt0V#uPX(5<
zRzPy>Nw34nev_vB|0IvsYun(YpKt#J_ewzX4!<oM&jWUO0lH1;_&yL#Sei-m)=LB^
zTAz|c$@GNpqh!Av#+J7Q{e5+dKQwHo#eODrW$@>xyR(TM>d#ldwJDUeLitVJ`SV#K
z^4Is0-E|D0<{XXH0>!|ekU|QRI4~h(3YMk}Z(#8C^c9`h^{5GMy~;Z4thllVw);ZM
zvQp#Cy;gzDN=7jNjVGW*NP&2y2C-5n)Ml3B_~}B|a7;o<rc+r<9m0w^qHN9#hs*i@
z^SWjHfOG1{v^xg<iiA}ZeuRa&SYsj~-oNQ(Dur-`hb!L-tB9!9j2|Eg`kG6aS`E;}
zCZ${$+vsb0B^iXVmDPQF=@{+D+KkIy*5C<EXbyO+-$p-Np;_DeA}U#Grf)}D`AYW*
zykl5@u{-{MI>(UsKb>PBe8F-x%skO8;F-~ADW6Rn2pDPY@(ISyw~`NO=xm3_z$&zI
zPvIJ_az9=|=#$h!{?-|jK>F{;56>09NrCMtcZE#UahuT0W}b$JXhwy!0K9QZh6J~y
z<TD=;e53=umG3kB%k(jx|6b+@+_0K%@S9Jv4^qA*IPagdP^T#gdGA`aeWo(Lv90@3
zDTs3kU~8vZDH)U}=nE16JzE5~FW?}hy0BYNSB@~K3IGo`tpI{qK-s`$ZF4Q3A3+*t
z38^Gw;Q605i*A2%W}E54(0IQTZAbaUKW3g10e4NxJ~W@~r=`MsW9Y^F9C7b}4TXsh
zATg+*8WU2*43Wqi1O0vS{&<St2T&2T-~Pt%z25c}YJ0FT8Q*GQKI)2nVTJ>s6B=au
znSSdX-FE+XMZ^5w@vlfooyuagUe5<rh{!W`l{~1PDOtF`xQK=R7y5e($(nz$v}@@n
zX(M&!@)u+H=;i~XbJOOEDXQPtdQ7^{3Ed|p{ZgY-^5RfM;y26&<u@UE_ARQa+|d6g
zca>^a-uV&xYyZg|at5_f1Q!>2>lzgrx#)nKQP?3xPqzgf@o%~wL2b0b0Hqd2#!p9C
zqYEh{V%0NaB)fUQtH&C4k8En_gZzd`NWgHvu?lV6S=V|BPB*+$x99q4i~H-mPvzM_
z>o`1xeRp)(C4>a#QB4pA=|;aRh^!4bbMxL2*zfx^);<D&|Ch@1&;hE&!u;W~Y8-Mp
z_+J|gwtU76oD|a1q8;AMLN=WB1CcG3Nb1@HsGL?2-}XmI31of*ZO{F3R<J6O4gce%
zPNjIkHm-%0-UCHyD$d@*EYAfODz@y9&*3)~o*TQ#NwgtqdtOR<ueuv+`X}w%d^Qhy
z$iyNCY$F+kfO91Q={@RSX~SJ--p0&!p(u>2|ARKr1g7o8J?Qt6{y*#-AjeKS8~9K{
zm<49b*9h$XUwQ&ME<r5yYstT!CY#?^l9qEf3)?hiC60_<*n6ux#hJc~G2uFlTv8Uy
zI>eqBdH-Dd0aty|AI~$B|Fyx+(}APq(nhhKl47wu>&wjfr6ilG{<r~EltSA4>1EQB
zbeiog__nibEc+HyKCf`DC(ky|YR>8zw9+0>_|~@|ISB+^=Z{?jttY^*+^g5VgnMxR
zCq=w*uI`hE!-xI%9VUBuuvzFQhRNIE?E&+Cz3McT@viq|nvyfKM6G{eOoxf=u0QI0
zq^$TdqNtJe0h}k$F-+$ms=)w6@VsrS0n)}M@?l>F-ns_<J3_qyO`9OezVo|M5>Muh
zZ{xz>$hG~fmg%4wyS4BJp(B6PMPgJP{4z1nO!Y5MHJ#^CDK--pX1l{8ov+g~mGPSA
ztW$2Eb6m-s)bvwyy=OAiu&Nt9`w{t>4PE5Qy)+3&9WK*M)ADkvu^lgN)4+?P=%XIV
zv?-4`f_<8Wch!<U_{tMry1oMzhvMbW+37(~a)`k@cQX|YvIK!l@$9tY1kAPJ6s!u)
z@riB=%{b-nOUjsGfLk@SsF|`^DR6c;Yr-SC74zG;3g(*)dR&dk#kmp2>f`ff6#RYd
zJN<nYsc~Zxd4_&a_+v{JgODc11bXR+%_KhfmC|X<U2MXoKTr%LO0yQ4NCE#)b9imE
z-pp~lq3nld`&`1XxyZ9{^`siH_-LnKbL9i2y(D<(^+98q?wMdYz7h904eFS(tO8Ps
zi^;6nFI_gf0TX`%^?h6m0&Al@hM|7pp1;I=jy?6kzTIruzj%k!n7|r<hy&~a&DecV
zF>;zm^Lu@ZJ6a>A!FPuBT#>H#j1sm9$s5eN15Su)Jy6uzRrS>$ZynSoL4o?;ShI9*
zeF719MxwU-M!w~pa>o2L-mu`on4{k&Fy#I|xtjbEH@!S;(lE@*pVfhB-NvldSqyTt
zJ|E__I-FK?DgVq?6ZSvF{DMb!RbUzfDW(FJuG8z?Bkr<<5M8k3ZmZN!C@C4smXqHx
zwWC2e?}AVaYOb+3o50f+G*HKT-dq83j{@2<%&P!jmKPA1NH;eX0V-PML_B&sy=T5B
zrgK>eAB()=UJV^{Pt52)#H4K$?5RlD-fiD2gGVn9f~HNCVi$Fbz7AEoF<%^xRYayO
zo1DEKu9l4-zhEMe{9!h$&!zK~!sVlX^xwYE^+(TXg%8lR|C%=hJbMuZ09ypEzxcf%
z=&iSToOl0GF`ffNMLTAZwBPHTRkFY27C}$Coy2cNll#wXrC}g;X)!|+M%rwVUiB<U
z5^4H9>~k&`%mkPAMGiq|fW82-+{XQ=K|F@eA}*MvX8Yl7gjKwYDGfDIqawmiJIfDG
zT7gu!uw-iqHeQi);6y;OZ@!EY7)v&<8USJMgQ7Qe3xF&4w{T$j8oljBfxz?bR&aO#
zw@=fnpJ--*&66>mH1Z=$crH5-aRFK_B><T$3|{h!G91e=rUqHyMllL&c1s~*USpxD
zqCGkdBIRK0fxWRsd{qerrUgDVk1Qglc#`v>>E~ev-JCr<(c4m))?X+*#|PS3(3I5v
z@han_>2WYYJ~I)k{-o~OjO#^k@`zuc7&q0Ga*f6Oo(H^4!WU5x4_6WgUD$c9bdzv(
zQs-?rR9w#FmnSg<k_6FRLio#$P<i`9D)pLWSWzGUzSEyxWeh@5vhIIUO!xX63yK*!
z^(K^s449q%4GariXm>llwoWF=3{8c6!bC8q3-%LK$}8L`3;PbCfoFKN=}yGC1|a2H
zV@S`SompJKl49-&V($&8n|{;<!YH;wcwIi8;XSU_E}Gte8i+kboTBVVuE^Jvzn3#3
zuMcAy7^V>E)iC6={sFS@AK^NGSqB~b4wVDW6H4yFpVNXE<V4jHZE%LX+==-1UbS!<
zZ*n~enX`u`b%a75>!OwZL-%XI`(r`z6hP=9;|CCSYTnxt{(G+=sDGeuh>wR4Z$){t
zY&oF&r7R{Whm~_#9a{X>#!0JhwPtZT_4&$VQP$#Z>NFUpA(Mp}`M(jrMf?xq%qSU*
z<wN+~QY9|C#2?CkH^fohNb-|~AEP*8{wHxmKjJJ$j%NNRarImp46wK)b{T|I2P%kT
zto7!t&I$u`mRaDPE#ZE0%e`!vKo;Uf3R!5dGl}7-hYNh9hc>RfOmUPt7Qs({AGxZ*
zd;xR_=J0cshFCHyUs~~VL!H)5;@Z#Wv+f5Q6sTkV#c?km#QJ%9g3jrHpMk1v(dH)+
zl5)v6bNga4)HD2SRDOi!Y|in^tFRev`J-71L)l-4Fn^0iv(XK4QmQFdp)vAs69~ej
zYeL#9WMV$kpEK__k>h5b<^{_OI$Oo_<1oe?R1+_=LYLzGY0K#U495*WPl&Y%-ee+P
z?s*pcvseHPw6VhLKmnYDH!tWGz(VN@Q$Lj5Yu|tW8OYy~8<6R%z|1j)A-Cp~0W7EW
zw$cEu>LvXJ=k1}+h4<(}h=?UT4E~FIV3-)`y|!2VADoaV(Z2e^4aVGUW;Xw=BR^NZ
zWZUsq@u=ItXvd}_)bPc<!*Nt9<M0-3V$@VZ5&H!C02I-wB8ziOhtP)V`?ZNLsY219
zkd=9DoRF;$ZhCmt;JBk@QclTO|DSpcI(lf7J#D%qL9(H3$;c@_RH0uUEwi^hCROAq
zvnmd^wF)L|pqEpf(Z3Jj9%>fL)dY}bZQ)Kk9g^*85Jw-pM<4t#R{Uu-Rned%9Y2G$
zDa;N_&Cc)SfZ0DD!Yn2J)o@^BA=k`DM^ft{7Bxwwmk16^iSq81?Q0O1g`Gv0MGtgi
z6i+9+Yg8kdj|h?xbDTMaY99_C-99?@m{~F1$@+70e!tsU?{rmk85C}{4%gmTQ<8Ib
zpU~kTY4*Ydl=t@lyPg<i@`a$f`9O?5&j#b^n{U(tl44GJqkB1)2m>S#7+Wa0hw-9B
z2zU{V0s}5%){TyJfy40P3xq_5X4r0*T{9X+@*<otrt>e$?#*H>8WsDJw#IYPKf5F>
zcr4%2g~Oslu{s6eV<Z90i%h-!O8&8`{`5KZ)+@&V$Jy}+`c*4_vkHx)pM!DVTYp)+
zwR3sGMO_6vk%O?5d18<;)yYUcyy;T4ggOBXV}YUCm_0+rZ0LBQ$l-R>5$m09Nu1J7
zweYeE(=Qxq_)VO>j-^E)gluf-mPEc*s)GJXvF4*UH1JnzK2m!xn32#sxc)R_wz8rc
zdXg0Qxs3(04XrKsDp6nSpwuf%p>LlXRN7zV*(cbxn$fIBF@R*r8`!|-Xkh=1BQ7F3
z-DWv9K<)=IOwM=N#D)Vy_L1o?=Ok2N7WVfW!Ct!z)wvsWK2MaAQ1c{|)I;AU)iKFg
zi5DPx-oBQad1}^vIo15yR|W60Q@;pk%C3{n5PK1y<LDqHlYi9MU>Vv0B2*q2Pk`-G
z`F-tr6)<L-Q-gpw-ury!P+VL1p#%&>cI=?*R9v5_2{Tr7V3px~dfWP~LX7V%lD%o^
z4-5F1jkyg(TAruJJ>G(Gv@uH*zt4Z6q9&<ToXCP@99F(_K#ss@QKTC2*Dd!EIM~Jf
zyi^m-zR1U^5HHB=QA%sdvQ0hwEbJB@mdNpG^{dqMZ_@tC*JQZMJWcWk>Wi~4N&RpA
z68ZXsAAR5s8Z{G3;VIAgfM)ZsqT`Y1Lv8Mgi?Hm5krl{Qoh!`NhqdormAb+pHIddp
z%(#f@w*EyjPM~0#%nQFev>H+OO&UhGrQEr638R{Ip+OGz0D!xquyNE5QLNg%wYYi}
zckra{!d?ic9I#?Ly$}m7R_)_7SFxfj3o{LGD<rv;JcmBL!dd%T>0xx>7~rYgZCV0H
z|0)$$Je3*bNaw3Zd1ie{8Nm#nx=zE)e}1XAxDEB~IKKj2x;0PSPRxc5hs#>|%9v$x
z6-m=b=0Z7$bTwcV-0ZJf7B&2avU!Okz@xf0Ddch1<lt+1FE!vkF(}8gfls1n-=pI6
zi=gowN@36i6L*Uth_T>zgsXN&x`{j%;{>)>ddKu#RNM^Sexhc<Ft+(`@1L`u7*#c7
z*|1z~I|>-hT?ewKjD~4z?j^XS40fH>i8+8IYv)CShwCJhmeP(@Nu%`-G(hDGilb$c
z!nl5hTYuzRIJ9x(9F1uLff=!}S>w1J4>5eIjiMLomSAEp(h*K9nZ+kvBK6+CshWXp
zYA?P9Th6@iUtgn;JwrqZHmw@Y+EWLUspM$-2hxbQ?B8tiu9|#X=bk3KASA=1Hawp!
Hpg#RSLPc@Y

diff --git a/engine/tests/Functional.commonAPI_C++/fuego_test.sh b/engine/tests/Functional.commonAPI_C++/fuego_test.sh
index 94d74c4..0776809 100755
--- a/engine/tests/Functional.commonAPI_C++/fuego_test.sh
+++ b/engine/tests/Functional.commonAPI_C++/fuego_test.sh
@@ -1,40 +1,49 @@
-tarball=commonAPI_C++.tar.gz
+#!/bin/bash
 
-function test_build {
-    $CXX -std=gnu++11 ./commonAPI_Dbus/HelloWorldService.cpp ./commonAPI_Dbus/HelloWorldStubImpl.cpp ./commonAPI_Dbus/HelloWorldDBusStubAdapter.cpp ./commonAPI_Dbus/HelloWorldStubDefault.cpp ./commonAPI_Dbus/HelloWorldDBusDeployment.cpp -rdynamic -lCommonAPI -lCommonAPI-DBus -ldbus-1 -I $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -I $SDKTARGETSYSROOT/usr/include/dbus-1.0/ -I $SDKTARGETSYSROOT/usr/lib/dbus-1.0/include/ -o HelloWorldService_Dbus
-    $CXX -std=gnu++11 ./commonAPI_Dbus/HelloWorldClient.cpp ./commonAPI_Dbus/HelloWorldDBusProxy.cpp ./commonAPI_Dbus/HelloWorldDBusDeployment.cpp -rdynamic -lCommonAPI -lCommonAPI-DBus -ldbus-1 -I $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -I $SDKTARGETSYSROOT/usr/include/dbus-1.0/ -I $SDKTARGETSYSROOT/usr/lib/dbus-1.0/include/ -o HelloWorldClient_Dbus
+tarball=../commonAPI/commonapi.tar.gz
+source $FUEGO_CORE/engine/tests/commonAPI/common_api.sh
 
-    $CXX -std=gnu++11 ./commonAPI_SomeIp/HelloWorldService.cpp ./commonAPI_SomeIp/HelloWorldStubImpl.cpp ./commonAPI_SomeIp/HelloWorldSomeIPStubAdapter.cpp ./commonAPI_SomeIp/HelloWorldStubDefault.cpp ./commonAPI_SomeIp/HelloWorldSomeIPDeployment.cpp -rdynamic -lCommonAPI -lCommonAPI-SomeIP -lvsomeip -I $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -o HelloWorldService_SomeIp
-    $CXX -std=gnu++11 ./commonAPI_SomeIp/HelloWorldClient.cpp ./commonAPI_SomeIp/HelloWorldSomeIPProxy.cpp ./commonAPI_SomeIp/HelloWorldSomeIPDeployment.cpp -rdynamic -lCommonAPI -lCommonAPI-SomeIP -lvsomeip -I $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -o HelloWorldClient_SomeIp
+
+function pre_check {
+    is_on_target libCommonAPI.so COMMON_API /lib:/usr/lib:/usr/local/lib
+    assert_define COMMON_API 
+    is_on_target libCommonAPI-DBus.so COMMON_API_DBUS /lib:/usr/lib:/usr/local/lib
+    assert_define COMMON_API_DBUS
+
+    is_on_target libCommonAPI-SomeIP.so COMMON_API_SOMEIP /lib:/usr/lib:/usr/local/lib
+    assert_define COMMON_API_SOMEIP
+    is_on_target libvsomeip.so VSOMEIP /lib:/usr/lib:/usr/local/lib
+    assert_define VSOMEIP
+    is_on_target libvsomeip-cfg.so VSOMEIP_CFG /lib:/usr/lib:/usr/local/lib
+    assert_define VSOMEIP_CFG
 }
 
 function test_deploy {
-	put HelloWorldService_Dbus $BOARD_TESTDIR/fuego.$TESTDIR/
-	put HelloWorldClient_Dbus $BOARD_TESTDIR/fuego.$TESTDIR/
-
-	put HelloWorldService_SomeIp $BOARD_TESTDIR/fuego.$TESTDIR/
-	put HelloWorldClient_SomeIp $BOARD_TESTDIR/fuego.$TESTDIR/
-	put ./commonAPI_SomeIp/fidl/vsomeip.json $BOARD_TESTDIR/fuego.$TESTDIR/
+    report "cd $BOARD_TESTDIR/fuego.$TESTDIR/ && mkdir -p commonAPI_Dbus commonAPI_SomeIp fidl"
+    put build/project/commonAPI_Dbus/HelloWorldService $BOARD_TESTDIR/fuego.$TESTDIR/commonAPI_Dbus
+    put build/project/commonAPI_Dbus/HelloWorldClient $BOARD_TESTDIR/fuego.$TESTDIR/commonAPI_Dbus
+    put build/project/commonAPI_SomeIp/HelloWorldService $BOARD_TESTDIR/fuego.$TESTDIR/commonAPI_SomeIp
+    put build/project/commonAPI_SomeIp/HelloWorldClient $BOARD_TESTDIR/fuego.$TESTDIR/commonAPI_SomeIp
+    put build/project/fidl/vsomeip.json $BOARD_TESTDIR/fuego.$TESTDIR/fidl
 }
 
 function test_run {
-	
 
-	report "cd $BOARD_TESTDIR/fuego.$TESTDIR; export PATH=$BOARD_TESTDIR/fuego.$TESTDIR:$PATH; export VSOMEIP_CONFIGURATION_FILE=./fidl/vsomeip.json; chmod 777 *;
-	if (./HelloWorldService_Dbus &); then echo 'TEST-1 OK'; else echo 'TEST-1 FAILED'; fi;\
-	if ./HelloWorldClient_Dbus; then echo 'TEST-2 OK'; else echo 'TEST-2 FAILED'; fi;
-	pkill HelloWorldServi
 
-	if (VSOMEIP_APPLICATION_NAME=service-sample ./HelloWorldService_SomeIp &); then echo 'TEST-3 OK'; else echo 'TEST-3 FAILED'; fi;\
-	if (VSOMEIP_APPLICATION_NAME=client-sample ./HelloWorldClient_SomeIp); then echo 'TEST-4 OK'; else echo 'TEST-4 FAILED'; fi;
-    pkill HelloWorldServi"
+    report "cd $BOARD_TESTDIR/fuego.$TESTDIR; export PATH=$BOARD_TESTDIR/fuego.$TESTDIR:$PATH; \
+        export LD_LIBRARY_PATH=\`pwd\`:\$LD_LIBRARY_PATH; \
+        export VSOMEIP_CONFIGURATION_FILE=./fidl/vsomeip.json; chmod 777 *; \
+        if (commonAPI_Dbus/HelloWorldService &); then echo 'TEST-1 OK'; else echo 'TEST-1 FAILED'; fi;\
+            if commonAPI_Dbus/HelloWorldClient; then echo 'TEST-2 OK'; else echo 'TEST-2 FAILED'; fi;\
+                pkill HelloWorldServi
+
+    if (VSOMEIP_APPLICATION_NAME=service-sample commonAPI_SomeIp/HelloWorldService &); then echo 'TEST-3 OK'; else echo 'TEST-3 FAILED'; fi;\
+        if (VSOMEIP_APPLICATION_NAME=client-sample commonAPI_SomeIp/HelloWorldClient); then echo 'TEST-4 OK'; else echo 'TEST-4 FAILED'; fi;\
+            pkill HelloWorldServi"
 }
 
 function test_processing {
-	log_compare "$TESTDIR" "4" "^TEST.*OK" "p"
-    	log_compare "$TESTDIR" "0" "^TEST.*FAILED" "n"
+    log_compare "$TESTDIR" "4" "^TEST.*OK" "p"
+    log_compare "$TESTDIR" "0" "^TEST.*FAILED" "n"
 }
 
-
-
-
-- 
2.9.3.windows.3




^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Fuego] [PATCH 15/18] avoid inline function not defined problem
  2017-10-13  9:45 [Fuego] [PATCH 01/18] remove extra word in command Song Cai
                   ` (10 preceding siblings ...)
  2017-10-13  9:45 ` [Fuego] [PATCH 14/18] using common script to generate commonapi c++ " Song Cai
@ 2017-10-13  9:45 ` Song Cai
  2017-10-13  9:45 ` [Fuego] [PATCH 16/18] add libneon precheck Song Cai
  2017-10-13  9:45 ` [Fuego] [PATCH 17/18] solve glib test program failed problem Song Cai
  13 siblings, 0 replies; 21+ messages in thread
From: Song Cai @ 2017-10-13  9:45 UTC (permalink / raw)
  To: fuego

gcc default standard is now gnu11 after gcc-5.
Different semantics for inline functions is at here [inline function](https://gcc.gnu.org/gcc-5/porting_to.html)
Higher version leads to "inline function not defined" problem.

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 engine/tests/Benchmark.tiobench/fuego_test.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/engine/tests/Benchmark.tiobench/fuego_test.sh b/engine/tests/Benchmark.tiobench/fuego_test.sh
index f916335..452962b 100755
--- a/engine/tests/Benchmark.tiobench/fuego_test.sh
+++ b/engine/tests/Benchmark.tiobench/fuego_test.sh
@@ -2,7 +2,7 @@ tarball=tiobench-0.3.3.tar.gz
 
 function test_build {
     patch -N -s -p1 < $TEST_HOME/tiobench-fix-conflicting-types.patch
-    make LINK="$CC" CC="$CC" AR="$AR" RANLIB="$RANLIB" CXX="$CXX" CPP="$CPP" CXXCPP="$CXXCPP" CFLAGS+="${CFLAGS}"
+    make LINK="$CC" CC="$CC -std=gnu89" AR="$AR" RANLIB="$RANLIB" CXX="$CXX" CPP="$CPP" CXXCPP="$CXXCPP" CFLAGS+="${CFLAGS}"
 }
 
 function test_deploy {
-- 
2.9.3.windows.3




^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Fuego] [PATCH 16/18] add libneon precheck
  2017-10-13  9:45 [Fuego] [PATCH 01/18] remove extra word in command Song Cai
                   ` (11 preceding siblings ...)
  2017-10-13  9:45 ` [Fuego] [PATCH 15/18] avoid inline function not defined problem Song Cai
@ 2017-10-13  9:45 ` Song Cai
  2017-10-13  9:45 ` [Fuego] [PATCH 17/18] solve glib test program failed problem Song Cai
  13 siblings, 0 replies; 21+ messages in thread
From: Song Cai @ 2017-10-13  9:45 UTC (permalink / raw)
  To: fuego

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 engine/tests/Functional.neon/fuego_test.sh | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/engine/tests/Functional.neon/fuego_test.sh b/engine/tests/Functional.neon/fuego_test.sh
index 58b4c9f..28ed015 100755
--- a/engine/tests/Functional.neon/fuego_test.sh
+++ b/engine/tests/Functional.neon/fuego_test.sh
@@ -2,6 +2,11 @@
 
 tarball=neon-test.tar.bz2
 
+function pre_check {
+    is_on_target libneon.so LIB_NEON /lib:/usr/lib:/usr/local/lib
+    assert_define LIB_NEON
+}
+
 function test_build {
 	chmod -R 777 *
 	patch -p0 < gnutls_4.3_fixup.patch
-- 
2.9.3.windows.3




^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Fuego] [PATCH 17/18] solve glib test program failed problem
  2017-10-13  9:45 [Fuego] [PATCH 01/18] remove extra word in command Song Cai
                   ` (12 preceding siblings ...)
  2017-10-13  9:45 ` [Fuego] [PATCH 16/18] add libneon precheck Song Cai
@ 2017-10-13  9:45 ` Song Cai
  13 siblings, 0 replies; 21+ messages in thread
From: Song Cai @ 2017-10-13  9:45 UTC (permalink / raw)
  To: fuego

* TEST-11 dump problem
  Avoid the following warning by adding macro `#define _XOPEN_SOURCE`, the warning cause dump

  ```plain
  warning: implicit declaration of function 'crypt' [-Wimplicit-function-declaration]
  ```

* TEST-14 version mismatch problem
  The original specified the version 2.23.
  Avoid versoin confict by checking link file's realpath

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 engine/tests/Functional.glibc/fuego_test.sh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/engine/tests/Functional.glibc/fuego_test.sh b/engine/tests/Functional.glibc/fuego_test.sh
index 6e3213c..7f573b7 100755
--- a/engine/tests/Functional.glibc/fuego_test.sh
+++ b/engine/tests/Functional.glibc/fuego_test.sh
@@ -1,6 +1,8 @@
 tarball=glibc_tests.tar.gz
 
 function test_build {
+    sed -i -e '1i\#define _XOPEN_SOURCE' libnss_test/libnss_compat.c
+
     CC="$CC" AR="$AR" RANLIB="$RANLIB"
     make all
 
@@ -35,7 +37,7 @@ EOF
     if ./nss localhost;   then echo 'TEST-13 OK'; else echo 'TEST-13 FAIL'; fi;
     cp nsswitch.conf.bk /etc/nsswitch.conf;
 
-    if [ -f /lib/libBrokenLocale-2.23.so ];
+    if [ -f $(realpath /lib/libBrokenLocale.so.1) ]
                          then echo 'TEST-14 OK'; else echo 'TEST-14 FAIL'; fi;
     " > run-tests.sh
 
-- 
2.9.3.windows.3




^ permalink raw reply related	[flat|nested] 21+ messages in thread

* Re: [Fuego] [PATCH 06/18] add tarball file to repair libtar test case
  2017-10-13  9:45 ` [Fuego] [PATCH 06/18] add tarball file to repair libtar test case Song Cai
@ 2017-10-17  1:07   ` Bird, Timothy
  0 siblings, 0 replies; 21+ messages in thread
From: Bird, Timothy @ 2017-10-17  1:07 UTC (permalink / raw)
  To: Song Cai, fuego

Looks good.  Applied.

Don't know how this test got in without its source code.
Thanks for the fix.
 -- Tim

> -----Original Message-----
> From: fuego-bounces@lists.linuxfoundation.org [mailto:fuego-
> bounces@lists.linuxfoundation.org] On Behalf Of Song Cai
> Sent: Friday, October 13, 2017 2:45 AM
> To: fuego@lists.linuxfoundation.org
> Subject: [Fuego] [PATCH 06/18] add tarball file to repair libtar test case
> 
> The libtar tarball file is from [libtar]("https://repo.or.cz/libtar.git")
> 
> Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
> ---
>  engine/tests/Functional.libtar/fuego_test.sh        |  11 ++++++++++-
>  engine/tests/Functional.libtar/libtar-1.2.20.tar.gz | Bin 0 -> 63544 bytes
>  2 files changed, 10 insertions(+), 1 deletion(-)
>  create mode 100755 engine/tests/Functional.libtar/libtar-1.2.20.tar.gz
> 
> diff --git a/engine/tests/Functional.libtar/fuego_test.sh
> b/engine/tests/Functional.libtar/fuego_test.sh
> index 2fcc01f..986f274 100755
> --- a/engine/tests/Functional.libtar/fuego_test.sh
> +++ b/engine/tests/Functional.libtar/fuego_test.sh
> @@ -1,5 +1,14 @@
> +#!/bin/bash
> +
> +
> +tarball=libtar-1.2.20.tar.gz
> +
>  function test_build {
> +    autoreconf  --force --install
> +    ./configure $CONFIGURE_FLAGS && make
>      echo "#!/bin/bash
> +    export LD_LIBRARY_PATH=\`pwd\`:\$LD_LIBRARY_PATH
> +    export PATH=\`pwd\`:\$PATH
>      rm -f testfile testfile.tar
>      echo 'testfile' > testfile;
>      libtar -C $BOARD_TESTDIR/fuego.$TESTDIR -c testfile.tar testfile;
> @@ -25,7 +34,7 @@ function test_build {
>  }
> 
>  function test_deploy {
> -    put run-tests.sh  $BOARD_TESTDIR/fuego.$TESTDIR/
> +    put libtar/.libs/libtar lib/.libs/libtar.so.0 run-tests.sh
> $BOARD_TESTDIR/fuego.$TESTDIR/
>  }
> 
>  function test_run {
> diff --git a/engine/tests/Functional.libtar/libtar-1.2.20.tar.gz
> b/engine/tests/Functional.libtar/libtar-1.2.20.tar.gz
> new file mode 100755
> index
> 0000000000000000000000000000000000000000..987622cacff57423680cf1f83d2
> 7b7bf3813a1ae
> GIT binary patch
> literal 63544
> zcmV(!K;^$5iwFP!000001MFPuavDjN_FwZ9xsHjj)FUoJH><-
> tYlM(QTLKLryS*D5
> zbW)W-
> wdyu?k&NGHo?~BZzjHFHs6t3~_llm~9TScg6jhn$e!g?^(4qW1p1Hw9y5qT$
> zwu)Xn|Eq!5;o%|w#cTC1zTAJY+iW%u_8JF=e0_KSpmFeGwgFlmywW(45w?ti
> AbIM(
> zuYJGD-2ai+K~q?P=P5t=*T!+<NFF!#_LZDA<-w79qxR+T{@(HQ=y-
> 3sH*Fl)`}>EM
> zUHM1T{QdQOFV~sC{;RvSX06$%Z)Okjhohr|$NeAgSNwmkvA_S~U^C>DU;pI
> (U)F!k
> zx{IBeA4KXo_t5cw|8f2AAFS&Cps~OA;tvtxKe_&8ngrf{qH313=Bi=^{?wV(<~7
> GR
> z@6$+q5BUFoUuFMq-
> Ha~!gW)sp@m2qS82|To8_n<j{|CIv`fvBIKXrTO&%B4u|3|+?
> z{|9@A2QQjL&Y*jKF?wc#im&hbU(x^b3;ZkozqfbPeBl3kz<=NUfAg<)5H2ETHc
> !Ns
> zwJmm!kKa_AP>B#XzH_Id*hv;5n2N6JI)329;v|rfO;<({B&Sqdd31#<8QqH0niv
> Gh
> zywY-A!FR<XQn8BelwGS-
> PSu@qgHYLGviMQ7r5C2L==#$j@?_!!z8EQM?gwr#b5ty(
> zZ;OtdTKtuC#SqIlmWp>OqV#%%beV{oXd-
> =CZO^fj1kkNiu2tkYaZG#Rmbr@5WFcme
> z^b=+8h-
> su0tzpe&G*dew2|&a`gjgL91aKY4cl=pJqKFQ8w`7iG;$WKG%SbWBGL8ew
> zkyuaIft6CJt$CX|E|}U%0K0zqWoRCG{d$|Xu@xA+cak|)R3iJ9uLNmAGE5@JqI
> GtJ
> z<6CZO6CK&tuH!jo7kb<X9?PaNxFA}0gcsP(l>RDaElek_6VG=lwnIx#(gYV{x@a
> k%
> zo&qoRAQG{HCb0r3g!x@k$M;~DN=QOYjF@=e`+4A%If0m_Y2;%|Wi!J8#Kt@
> Rs;q=o
> zq1&f{>jw8=4O{xQLmb6FRw_S;fy(KmYeY&Mq>-
> g?qpgGo<Ajh%KfJA+1b2!VXIa2t
> z{2&2mJ6d7jJYhZOn`l-
> _6ktQkl@8<;*Vd7MttO5yqlF;*%}5BN04A$8L50xFVVSaF
> z8BM|MR3zX?DsrS73s7?B*pPN^Rz>=mrJi#5A^Osno>uX1bW4zvJLYe2#U03^
> urXG_
> z0}iYf($GW(;MkK3F;Qg3Y&6QZaTP8a5qDmYD52$z=WMWzD1(Kj5gQ-
> &ec(rNs4Qpd
> zSa{6ABKMJ#B+3_I9u**#(M3lL`)8w%twBe0hvItB|Ij_{oQhw5X$^7V_3It+u?y
> gQ
> zGZMIG(CUpoiT;^r^*)LB-
> QMX=rStRkpfenb{y=oEt}nZt(;d<6wJ&c@0k*^mp6m5T
> z;<9_y9bwr~U(l9jscr|)omH+ngZ2eJwoba2-
> O;BVan>F6Xw5S$+7j2T!KmB5xoi!@
> z_08bAKkQ)pQ!Lx-
> _Ra>_rE}HkjcS!{57$KJ13rl1MeFjCw`%u$qd^yR0Q(b>ISddN
> z{mau1E}nEiUhCwtL;F>Tv-
> V}Hd$l7@TUV{~4nNh$QUkutkofVU!<VpW3;)`qZofx@
> z;qCBor-
> BVf`J*4Z!_JOq4Z1^;%Gscg<w>S^qR)%qxn4)FLh=?x#Z+($eZB$bIW4E1
> z)+N>&KD-@j{YPis{~fOt{5O~WOkD=g+j)N)|1}Sennw@t-
> {Ic({?8xrdWp!>`LXhn
> z@tJa!j1kc%0A=@xwb3oY>{fdoA#|QaYOyUSc6vyv2$IrAR?8l#ytD&f0mX^s-
> N<Un
> z3xh~Tj=K;5i(yC!3`q-#M59B3hPBGe(HxL)xjk(%bCT*rQkV~XJWV;ql0L=$X^;}C
> zN<j3>d6I-
> b*6YZ!K`n@C)|dKyU0ZYw3sfpEPp|>4g$#M`yMeS#N|ney;J9!Vdxil*
> z{=`+3o-~eg5`{=n(Mt;LB%&&sjorQaZlm5fE=i|SExrsWZP}D^)n{a3U%YC+q6C!y
> z;ZQb12BVxmm+`zdFWpaVIqJUwc`EBRW{Hi*$vjfhrURQ0*b!JP4I$seJbC7P#*
> ?x0
> zMU4R?kank}#Ys8?E+f=Uw=&WeBgYHGM;ZBX=~2CWHI`FFk7;-
> @o~dLU%4AMyd23s2
> z4GAwU#J|s-
> B=DRlz6IkY5$zsp5jE@dZ};mW8YmCs+Tu>aR%UT+u5mNzM}<i7%C{T>
> z6NJ9+0>`HGA7xSyDvBV>N?8bjr$jsl!(bv2b^dQIHXr~(?Tnx9<QRK`uQZl3wPux
> >
> zWkDE@n^bZ4gC(*Dbl@!L&8SABQ3fEb_IPm98xt3J+wNaocP~5qaq4_F%K&q
> vs-P=7
> zjTrkzu*|C79G`31uB|Y19o*&x8aVz04`~Cs$lKS9n{bsXmmh$%eM>{bXvRQMK
> %>@t
> z#kP0fWQuFNsW+P6YTI5Akyl1D=Z=VN58B#l=>tJT3+Nx1ifoH6(QaJ&WL)&%4
> ?l|T
> zR4f4Cg(RLdmLxsL3<*665s)!jku?r(x2Q&<H6gqiLHudzx@I+L-=TPeF0<;yV$~S1
> z40afgQrU#<fCFJ=zS3wiQbxaKsR#5(+AK~qN>%qlpP0urA^HTH@12;Tyn<IxA}
> R!&
> z%)#s^2+4q;Syx(0BFeB=rg19WRW%&tYB;Jl_rF06#th)r;smZk%IC0=dRoug01>x
> c
> z)(MpvC_ANp8~@9y?;hrRAJjp}SNGPQLJk6dSs=)J?50$$aL@wCt_IVpsm&6qr}
> ^f1
> zW#5D1zKy5$U4A3BcDH{l(E(%kU|Gmu>2wM=&7<J`+<_SIoF!9gRUilg$d0;ap
> O9Zn
> zxM1p6>Dt$H?NTgjKIsxq(UnASKy5>;8PvIf*lje}Jx!&BI4jP3H=HVbZb)P?gxv=T
> z7e-
> ^RkhhnS*Ep=>!?%*xSfS7Htssi1?!FmZ3P(Gur`D#VI@zsuNZW}X+%i*sEuM?m
> ziky(jcw-
> xqdMUWRJXFeJKXG4JU0QBn!6&?ZdN_<{^bXQ8*P%oIbwU^DZmI)Uk_hhB
> z{Se9+lt)nFN~*S%PhbKy-+%lk-
> SoE<r8m5RjMPJrMt06<h*y@R>s9cjBJSeo;8o<?
> zmQV=rA>=_sU&&iVH`N^fbveW8fU(RTW&Z^vvLO3&6uYj36C2-
> kKAW&PhG|67N_b#r
> zYkMX25CO%lOO!}&$M^t}gJO;-
> +96Th2hlBAR;6<8D&H4Z);ZXm7j5_^=7^RAfxA?w
> zy@28n+fAseRDNPBzJeV&)Ep~3e`>lDP(>O#wrK`{p=1#fRspRBv{?v+S90d3vA
> 76a
> zZx*T2LY>%>p%U{&2#=u50HB5}pMo3!L(ie-
> ==_?4y@zBNA`eir<{Co3bnO57JC<t}
> zZC`lMF#<J^=j|H2lN$oJaLm2jd_Vv(eyF`uYlaPq%maH?pY>IC`(3#GULC=5Z^g?
> i
> zRgs1^n`sV3*jM8n1}{=0673lo_T)==a;jrh!O$W#BX$6f$QLC7E4j)NMc`@xgvPe
> G
> zh0scp>0EaPR}@u;fh#HI^v;IDf`R)<yj`Gg&}p4sbv7#}0_y}q4*+K#mz1HTN*2V
> G
> ziFO*6N1V%LbTRG@2c2^W!@!Y%+IQ4tOc6W~;u!@|4kFPaxo(s<0@;+7j#pW
> $EHybF
> zQykaYGi2_PW;*>dQkaGS^yQ~JxNaK(8Woy&Yu?oUn!-
> iDy!+VdwNCr}+S%YQ%pd_A
> zDi1VD-
> OlAkpX3A>1OBZ=_ndoZmSPyBOx=XISn)ZXMY*^6raD2%*BZ9FUCyw$3oxxr
> zjtL3y-M68N-
> ksgNAJtAq7qww$NdX7o?Xm@&b_cly=<X~>4Dt(H&w(~}z*aV_C~zr7
> zA+*n(J7t0vie*Y-N<&EsgHu-$8w#OJAEpou$R}JWI&6mUE<xw0f-
> or6fe50Fqk{tu
> zcDJ~9?x;w+;xkEollDus#xXF<I`fsBRbN%RwOTz3Qm=@c_VxAIW$S#nOd0h;#
> w&CF
> zo?_2O>S6c^@qVlB`NO-
> v_I|FR{CdpL^yanei+=AD1w+DR<)mKTXPBrvSWyQ_*d^aj
> z#M@Zu5AQy;E+F1VH`}CqkF<Q7kB0~CwV)@~;w&bE5{Eybu6XYU)ERmEt9Q
> %q-i5&=
> z_*_FyS;tzuS>6scZ;f@lWkG$}!zQia3tNY4#^3N?s!O%MA(h*TqYANYDl~X|YcT
> Gf
> z_xgj*_^Nf@Z6njMXLE$1FWVQL_IvXkpG6Ri((7**V{jon5COPVAH9j;xO;Xr5)(
> S*
> zaJX1qh<ioHhAzeJ1qFz5@cAJNJ**ea3ZJU!l{h);<$SVZCksVcgwcAX0~jjMsQfG
> k
> zDlX2;p^Adka@`5=Gnl|SD?w`|TybdB2T**(0^rWLs0aY4PBa*$+N>P_%IIUw)Iz
> 3u
> z2w;|RVZyOs_9dYGnOD3A3>l-
> $rOqT}Jfi2`@%Ner_Bc8*tqBpG2$t~GIHB#DfjHzx
> zY(QiE@kzJW8hoO{5+>wOg|UU|h^+*BZ||5G4>?js!tzU+31=<A(=!nz-
> Ixz~3#9oP
> zp`v!;>R)eZ&cxP1J)$P-ycXLBC<_$I<ZG4a)9<&l@ZH~h9Rikdlloe%(fI79*M@7n
> z@0@l%Ea8$dw7n{#YSxFLEJihnt?qvB-
> kS_H+?S{~pA0oChTJ6M@aVLaYdQla3+QMW
> zfy>1QWsfQ$M;H^eh`C+xAR1qxij&F}@1+;QF!0}Z7v0gQ*1LQfI<0ILFFf9gb)pa
> 0
> zH?$KqHQb<p()3oF)EaedsCQOx>^{&McVsOP=cggF$rUlRd8;3(=RB8TxcG(yc-
> =qg
> zuK<Z0FOsu~G;z3NK2cNZkXmzuQG7J6kH9b{fsE;_IW`f?TFma(;+WqZ4-
> Ar;y%HR(
> zDHi}=&JdSNy{34HsLT*Uu1(WQOXx`4*FCHZGhFwF-
> Jh3g4I`NPXCy+1n5I$6G7J=)
> zeu&hf<IvkUd;4x0+@^7D=Giq{J;q2zOLi(jjbKRGGJ^XZ1;B;$>>%|W(Q(Cz1Tm
> 3#
> zJHg*~U)0>H`6_ux3Y$Ci1Sq?;{3P(5w0f=rU_>!&eYgQrQeS-
> sS*j>m#A!6GO`}Ik
> z3T$`_P1^Bt=mV)zeTFE_P?Ena<I40uz5iwRq%#<O8r}@fO7K44Ut0!sv6qR+K%
> 7|D
> zi;RP^BabQ>Gi5UpMNA!(0zT^WM>`Mj(oO*+edr8^-
> F~lhQ+v=Zh5M;eHi<(={BN`R
> z&BlIet{&E#hwGw<=fu{-
> ikHRQhb&Kqr@4+zZ)?tTP(gI7O|<>zKhsg*ERx=`$52ej
> zg~m$+^+fK%0KO?tyQr%A49HG~X+nAYSoSof?!TE*cbeWNwfSu|s>SLrOH<U
> ~AC{J6
> zb_Ze{-
> $}N%8JQVaT&OfPBYxmlf%{Tq^E;Jg_5V>HDpGpVh@RHxXY7a4&hqCbmENSj
> z3fD~!m7YWTFmn84Oi69*##%`X?RA@9=>tk)Z59P-XeOE-
> OFhN3v(auCbM|H(W0|f#
> z4$sG(Ub}U@qP3j&6=iZeSk2{~S{f;%O=%ka`e!A&1f%0kGF(*0%d*A}tolmRnr
> %?&
> z7FvD+%27z_c}HD<P!|M(<7)+9Gp6K8pPIj-76-
> f%f3wk!97}fvaa8i=SV{F8BxAQW
> zdBc=EFyL=f^hPN=GVR#CdZY1>wiOGDefF{`xtEHQ++C1Tl|Xjy-
> CR~PP@*<0(nH;B
> z-D|8RT&L1MZJl<8qtotSyVx!wx6f;U>?j)FXJ>n)i0k*~94sDF3WpAJ$^)wEL7IeV
> zQnSoJFP(5r4c5G$bN}E@!dduGXOmK)+Gw{?Zyv9eO0kW;SvvNgq=Uy3vev``c
> ?57t
> z`p%auaI7@_b02-Yt(|Fn+3a0}%91)6=R+!MW<@qBggqmK!?i-
> llW~5!y6*fVyI_Ln
> zQU*)$<^7r5m?w%4et1&&!;m0i8g7==re^iv31_TU&4h3D3!Yq_Iva%hgmO1ZIi
> =t?
> z_2%wc%3IgnOsIsfxryK^I%hM;aBAoMqIF-
> IFSGyvw8alUB&DOe0?;oUA?Sl49xXRV
> zy1IVXyG$9f_xgQ6_>Y6`s6$Ddnp)J$3YSCbec<^{YgGJ}J6-y>8HJts2dD5oDv`Ov
> z8ROZ`&+SVZE4Wv#yIBo1xHGW3K9E1qK#qE8;xVGqEa4`vKE7sH!_IHYPFXnAr
> qfdH
> z4Xp}bve08m;9u$Si7nHO<>jPh(Ey95V7|5iSb1~NXoy6omAxz*03Vfak7>e215!
> ZG
> zTbil&vfgVZVES7;St>E=-H!2HJO<>>DiCI^2>ZFHP~q*Y{3t?065NjS!T_IR6&kC|
> zLJPsLdJgs(IHLq*@lLS{d+>7hv7icV*5&CCj@4Lt>EHTv=27pa8Plv~N11f$dprkc
> z74S#iWLT<9XI1_sjf(m7ahml}?<GY*-
> R<D=OzB>Dqv&GQUHy|DYU=5E#bQi0=4sQ<
> z6{4&rEVN4}G{aisnbt45uO8X@cP4ZZ``$T{iK~9e!rQkGw?8ufjSG$1=VzKR{>tzF
> zjt+Ns*Z%(V`~3IjUwLe7a0PR?COMI<uI*U*!99mD8aE8?xqn2n+WII<sOgk?*
> mtHH
> z?w(R^Xi$%WM~)&M<0e<>4!S?HU0+;RZ+_0^l*|Yrg~S;ak@s@Jr;1-
> EMYmb8u$#S?
> z(}V_wHIexln2rdNJPtA4(?P2+R6t0^G2>nW#BvwKPd_sik(mwCo6-
> <(CIjMRn(h3=
> zF-
> x(j8JGHeMgq2DXHx=*8UC^lRNVhgMoy3teLQ?aA1OmU8;&Vt&jxo8_Umg6B
> %=p+
> z(*)o=8^Y5PK<?lUG0BEHROS>Q?*lD?TPZ4=Te1)ik*2O$F>A6FCPNTCk?MlUu
> av+F
> z=h_d(1hV$sgSu?XRC4*4fvM7VGE^DlUG(LoF#Ye7z*oG(wb-
> B9`pLl0+77<j5h}4t
> zR`bg7>5Et5RxRKSw&sc2KxR-
> @8y)xlXu2RN9UqCzWaBkcOdHU9)=y}xbT%^ETL+@W
> zD=yYeljapWXp{mhdbi5AWXPsK7$Q6Qe!Wt+lHyoP@Kk!3Ai_)!VB&3H^!n`VH
> fjg8
> zLuB+snqI|W{rLFdCY3@-
> PN*@TdB&3zYdFal&JHL=vlA~ZJu9;Gk6+D%q@e;!R*Fs6
> zc;QU~*RirW0zO~LKvs6Gc+UN-
> M{FhG9OS~;eM&gmDIY)7F!4|~F?3%WhH$UQ3}|Yb
> zeu=43l`J>Axs^yBOh3dn$E+ke^J^MCM!E{7wn}Qrew{$IiE-
> >U+hg@Et7(=lyQ1YR
> ztmVJemA-Fgf^{XZQv`lg1ZXbuUO^Zz*p15tS)seUF1?xlGO5_5-
> #f?&4KimL2ZG~4
> z#DM#v#E6+QDIG)7?-#P8f~6HMp*W@DLiSsZF>*1-qa4dN01e2-
> WunW&$vhfLXn>n|
> zh4VR6QKFnYp<k&Qz$#4PSh9LLq0F)c{p91n*?aT;G>&Cq`1uz;MTa;x$bdkS?L>
> +k
> z%M!M^ktJP$vRv6OX9R;Z$G~tHu&gA$pZ%?+*I59`ijs4#_$3z1^ithjU0qdOi#$c
> }
> zt2FHH&Bp1NFL-
> yzQ$pQJM123NbOA8Cc+n6cnfE6Z53y8xuE6S<zNtUm{hzY0Htc=1
> zp1H4Lw04sYoryO>Er*48&}b#n2OV=dh&Lo8R=Z`h|9CDhC-
> `c@+p!nMHcEzcBt=ds
> zCR)ua7LG8Cy{ORP?wpQGeI3h2Q@C6`ZH>S<QUs|AS)YTGeWT-
> 5SFkLCv41%7OIWX1
> zDy6^}r<#bzN_7fY(DhmEA^AK)DSvt%pt&YqANPU?5b??xzm4dyxwuhh@(Af
> ^<HawD
> zf<Br}!3dK0Z(+Y?gRm=QBSXGi9$C;&q>_<^L+DfPTUJll?iK8U5m}<=B^n}Gb~h
> 6J
> zf=Hdy=wI?D;P$%0?b>&%YtI&(87UeFty4Xlgup(SooKXRq|G%LpURR@q>CQe
> xfPgZ
> z6lm280BSEPIQDDAW1woHfbE%gSCYb#>H!*?jV)FGpD}l9*4))=nRAC^0I@FYy
> 4t;=
> zd1h-g*y|9t3W{M-MelTBZ*T|G<qD;20sD&jB2-
> }<q&0|AK>jI{Q`eL8?L5TFM2TC6
> zNW=3C9odrb@FY%vcc6GHUFG!rmxUv6^*@%s&@J|{K>t%)UrWS)dQy9Ku
> m8D=&t9|D
> zW*eQ|!-
> H4N*C)q~4ok4x`TWlA{^9P<zIq@kO|6{O?{?m%z0H4pw6pu;&g(|!VCQWk
> zw=G`Szh9Ww(lW>{As@ZS=U>omXlJkSss+Eke$i^Q$*2^5v`${`HIK1d<b0G0HS
> FHU
> z^|;>0-Tw!TpKm+(<Nv!+{Kxet>-
> GEne+M6T{aJ@}+kGrp|EKFu67k>HpRM1=|GSHi
> zq?{G8tAiGhN3=Hz#<PKxx^%>bZTe`22OUY4sK(k&6v%<E+|^c()%+VWR)POX
> MwIcs
> z`o4$u1sLW{h!ydM<eZ3a!PwwfU%j%KpbnDeS~ORwI;w4C;Il|8Vc1R+_^vAsh
> !@RJ
> zT8)ydt!x9GDl!@&>k^C?2&103t?7$jDJN^yKgN4#I@W6rhuBsw);!A`sKU58(*-
> nI
> z5TWdIg-
> TT%eB^6IG)<hSt~##vsEt*Bm9z(7G)NbF<aIxwv0O{WlgVInHDIwIhiCyH
> zxTP_-#4vZs13RJ+9?&K`NL5(<E9Ks4Xx-fk(Z+@;CdZlYS_<T4`~!WvgsNklf2mGZ
> zNJZ$x;x604Vqp&LP|l<Gl8hpRI>t%RL;p{CAz!J0z@LB+*6L?8XrzH7Rwsu_xA|J
> B
> zBm*DNAlwmny?@SR@DST}Q3*=Yn9CzI3W!q^j2Y?nmDf@z%vBTJNXbhpKu
> 0cuO<ef1
> z2`Wmv!W*1}Bs;wrN@a}y$r}bEj;E6U=nZBje&d7Rna^q+o*eHsKGS|u&)Pf3u
> N&>p
> z!XJGMCgF&b)aH^&?L6DcL{G(|2<B7{PETgDua^w3&NEgD?fX*EfY6<7Li6qo1I)
> -v
> z?Z{VV{NP2v-3#qN%`*9~(S$J?<b%;ga26l{Iw+!r2hc`Ewx2K|g0Z{;{0pq8h;j_h
> zk|9ZiKOFu*4leT9nBeEuYq<e;*yWCQt_*5*d3jl-iK>Q^^HtcZWXY7aMPX-
> Vqu>;S
> za7|g@m#g)gWSNO<1JD%bhJni?O+z%)(~)YOKwDKdqy~zIfx5pTik}$G`ELOa2J
> 5X7
> zE>H`${wW3zuNV>&>AraxL>FqS1k-
> Y!130Q3>==D1e@)!J*g`P+7=Ezk3CZwVB;QtK
> z%LM7;Rd(ZR%57urYRr<tf(^pRy4``9dL@sEd<w3}HZ(1Pb`sOp_x&;YqsYi+FmW
> v_
> z(y4OnK)aSGO}nS}kzO3s<x}{fyfO!3ER@kp-KeJWSihp<1*sKuL|Sv4K8cMm-
> Xrxm
> z?eKu5hMh^Fe)+IQNF{i3B20i&-
> 2qR;4jlL!)%EH+)qGN|<3q9(5cPVsh6V*}LGZNt
> zB+s!r-
> T+TPH}&FKbq$}XNEF{v8{YvqI&KJ42RhZVAz>_RDjf94tN|#xGUA15Lj&zP
> zx(yo8*BIno<=TZYcznFNHsh!P?~OkRXk6wl)mL}i)(B+F=I2xU=QG+<#4gOpj11
> #q
> zT{+wYT?38yI!BGK4Bt=*C43AKCGeg;&+a2KlC0V?$~8ozG2+0kbNjMOE*#l9GL
> GmL
> z>8MMJ46z-Byf=V7N%O2R7GOZ5|5?PpWL<-
> bK#nj%5TIy?m*J8jk`bNCqWS2fuWs&o
> zdC%S?l69iqWvpOnmk`a)%yA17i)};$jLk5(Vh`?soI$X@%M+@rYMv~-
> =VN{eH*Fpb
> z^wc?IDta_|7hXgIKl6cP=`LjWTAYR8JirLM+!T!Zh}Uft(wIHe@Y6*kop4AUB$ku
> g
> z5rPJ|QAR{2(~>-
> 1vJx4^cuEonRA`D3`f=JW{W$Hx6jyv_22^&E*91~IZjp6|Re=KS
> z`U99xpW^zMaNy$m3H<wF7R<U;zc+iHziH_2{B>e||JAbA-
> |^$h|Lw!Q!`ts;k^blD
> zMw<TTUjDy}&x)qNz{e<~=a1;{jgoVbqlLka3(uLh!G8NB`jIkICc>%h&heIv9lpps
> zf-M~6O(m642WCVfJZ<%2RQf^JSMRYWlJ%=~OeRnV2I-
> S5Ph|%fmW6cyvdRxm`zqF?
> zG`}08NJ#X8`C1^XePDrrB|jU4K)5hwYV<>XMYChf<??jU6xh6)v?=k#5CwgXeu
> ?L7
> zMQSeSmYAzzxOaW!?B25zXvn4-qY7=nV%;|W+3WA_e;tMIR{J0$-
> |OXn+j#nP?LPn8
> z9egs@-
> |JEgybeV@47%0f#uxN4pZ+tgch`Td2EXp<{~dgKqk(u4U5&zV1Z>mJZs%yH
> z{igG}anLw!?iTl(FOM;Z%xPJ?Z5}k=p1iHd+c|v15&bL8SCv<XCkK1(ql3dXKYsuI
> zeJKy!;Q!(nO+Y;%+pVx*p%fNmWJR7Xkt)%V=Ct@qJ%Yb2-5{zVWOYiop-
> zB*R4QF^
> zKzc-V;U{1^{=fj!R1+kn_?VDO=Y$ZL{AC(znnXoQ<fB%gVJS^e+q!A2{0~-
> 0ROAU;
> zIrTsJ-
> O77bi9OOvGqTXJ)U`7H`A2_Lrq+VA{{Nv=YkGXtxO~Q76r0L$4{eO2vTo@N
> z4>JsUGW{TzplX)r71<McXjrqUAEGoH!;M#ASSG9RnyGt9(gy12{?QLZwY>Heq
> 3Mha
> zTLnBi#zZ1!9c7Oxx279w_9-
> KbE0c2%6#UuvMLBT3Iy_WZ1M}*_!6@+$yC`B4>gnS}
> z5ncYF+ufNe&vn+GuvN0duc&xiAe|K69`2p&H(CWzM8(j~TRC&>A4|M25eOw
> d1}dh&
> z_~8IXL;L_N2)Z^&wJJsgB8MXBEa8d17eGft_%$_?{=y@9Oze!#L4?}(VfTCw-
> v%$b
> zkza-Vc8MZZ)dMMuN-
> N>_L9@3hl61cOksReVs&xUJ*V=0ByVcrLQU7jpV}0|<6M=G@
> zXnY!r2WTFESMw(a#nTvWyf5cZHA;|4?|CTA)+pBY40)ighnFR=to)S*jh-Tv{v-
> hD
> z6J|zPZAv+vnv(`_|B%GsQ69v`3qXV7>B-
> T1K$eL&0wH}`Jbh4ypQm2sH~h0x`JeZt
> z5`v_Q?;ZYpkWv9l%6eQuPxEUTt&wp^2Cl%39jF^Fe49$ys12B-
> o#WRXOhr<}&gEV$
> zp9-nCth~p^r}Fvs(W_rL`m8u&9XflVJ*d0-(ju!ly+P@{$%91=z3(s(9ob;v0rv9I
> z8x+bJ1q!7klonY@f@-}acpLCr-
> DlhwTx@hP%uXo)98HM(tXcf@AhW3WYFm5~TeQ3K
> zDShMd0G%cu3WvaMXZKLxW(_RApBzC!wyt>``P0t?1A6t?U<hFqo74R2Suk3q
> h2eKx
> zyC3A`KUs6|<-
> <=O`JXrFWyYH~$I{X9;p?K+9OH|ug)u`)G&}wv@?o#9!6ujZ2MxS!
> zz2-ng&4brPq~#ClrMYiGwo_#E`L=klhHc~jqp)*ITLVziT8zR23$TLN7KKq*aAv|(
> zydsZW1T$~V5S?e+g@4!$iS%`nXI#Omj%VC*mFd*et7%V`D4%BR*P-
> {%P@5`mFYe`?
> zZpUy2;tzqhCXb@k)6@U2R{8Gz`;~Xa(^L7aRL%Uc`mVnE=pR{-
> p%?I92ie*@$hwp8
> zuY+to1+q)Zc^F&G!o)xKKaGnI*5FWl_dT?NjX)cCNWQDTFBP(yai%`AnRnG#l
> WX&u
> zwC60d$!h9XYJ43V*R6jo=;{KM)YO6A(v+`|JQHo{gySS&+Dg*^u&7P(0nNmzf>
> Nbv
> zr*OV>4j%Q$W6wLoOh$vq_8wF%c}yv^a!FoOleds4DwkNOD(zGJp1w)bDG;z
> 7<U!Op
> z0{4!kqLbZSdRHY~#}KJG+qxhsgQ<;$v5&5thD8OZVkH#siVJ)5|8+aPL4RJdGaE
> Ut
> zJv6uSyVBo%bl2-FHoC=~S)20uQ|VNOsdTvmffyYQ(DPd1G-dy?-
> p3D4_3^tGp{R^R
> zVP$0nBqMVAu&({!2rs0SF3w%Jv>Mg9vmdX4laQ=o%>qZ1pix#+`@`}48qQdd
> @?v8G
> zN<`T^y;1t`=3>^|(WRot+|i}2adJpFp45jjA(Wutaw;IUks~~iz577RFs%eoRV2YW
> zu@g~F@?cAES<~X7@2NB*NH;GhA%&V#nS6blg%r^R8cWE-
> Ac)eNW~$H2N4hEBivpys
> zKysDS4S^TPAe(eWK$p7)LDQS26*l%TXu!l8At{&IEQD>Xh2A-
> IiqJ*0pWe7i|Dy(P
> z4ZKQvBxy7i`BvU6TAFE?-
> lB|gPPRPzdmW{`LtZ`An5>MK{C+Q(idBEwT^;nQQCLL?
> z(wmP$vu+A_BaV9$lP3_*V2WO9F%~30z~_A_E;kiEJ<uctIdxZBlG4C&qjj?1E?)
> Uj
> zDaI<V6RW%l%m#cdIgGqpm*o+09T~wMemjnw5-s)qIJ-i6&?Rjdn-
> uVb6q0Q<iF6>@
> zG1W1+?{VW*^Ov#}bdR5)M8-0GN?Wwts8OQjT!flx?c=Cv+QW-
> AY7dLpNLjE1K@pRZ
> zlA=#sqS-LZv|(@nR;YFIvehnHt(6kbu|-lhjKi@~Je91Uq*yBD;lICHx4+CM>;C6c
> zXF7<!?Ak|v7To_od78BUf4Z?=yTAXrgU{Du`}RKhuSNVL?HF}@e3@LL+MQgD
> tJ6>+
> z+QoD@$lo$7&|d4;gTtd%vqe8(BmdHA@AHqnMr-%Dd4#uB^5u~-
> @Ry>PGOUbeTV>vW
> z60vedx@a0s&;YgwZI`Gi%Lzg3$qOxbiL{<?JS2m#JDW_He<82&4<n2M$FUt=
> @9t7l
> zDCE6u{j^&JK@<HaK8V(A1fZJSm=OimiLeIy^1lox14^JeM&TBlr<Nr6z!_1F_bLs
> 0
> zzq#8uXf@;%?5fQ4qS!5=`u|(815Jsa!>~t9e((MBvi9VKcLw#nZguwIxvWWs`$~
> Al
> z0b-&@<sq=C8J3B!jY}zptF$kayh1Rgwm8%hB}T&V7m61{?~d1$gl`~@*m-
> t8=)yeH
> z=*gWHShSur=cks?($eI7e}$7SLkP<}_lkR7SDnZf>GUdk#A!{aDOOu!Ac!k6wbg
> a2
> z88cu8+Ea#w7vb2~_g=~@7uFFDIpXW69hFHQbF8au@>@DzJ*65V4}u}*41|$
> QfYC;#
> zjjG4;#N#*?Ws0wgmb6~BrkJ;cJI&hPrRPt*0Cue$`me@6g;+vh#{7U1CpygZya
> mK4
> z3DlOfJ2!J#Mg9ah7`Czg-
> Zm#6&B&U3z>P$!&lNyBxQSKX8UIt)A5W!VK;a|CGA`MU
> z3N-i@qwG@3T!sJPCBR8-ol`2D*=P_9$xi@7vILRR6Jd?Awbrx&B|1BPA-
> n}uL<YnG
> zPlgm^`yiYo4G)>D!}!s}N`<{37^^tf)D($-
> $k_4K=(V;BHBTNRjM@{+<QwB*pjndy
> zwX85MoSk2g3%zwA2OWNzs>?Y-
> KF*3Z9{cDVMu<9OF=!4n#n(ssC3a;wN3Wa_(>>T7
> ze0MEl%W@iE7$UCeRI2BqX)uLZXF}*Mr?W2;xF9)B0ey3ZUyj2RyK&S_TBDN=`
> -;w(
> zUZoF5Rs5_R4y5s1&%qCBO566jmdLRolw~Vde4r@5D;|qHXi~;Ar6m}Uyh;3cq
> Bj``
> zwCY^p(%Fb=(tP@@NA{T~x&tqYB&WQ)1GPFo?d%u5Zm0VZPj_w;)|Afrj*NL
> 0Z5MP#
> z^G>JdcLzAKB0s^1ej_Om(B-;Q6>;l9thFsbAtgW1ee#1u9Y<|6@=HQPxQ)L-
> *gBhF
> z&YG>Qd`^g!l2xANw>BE2aN_P_LdkXdwTcb(eKhR>UtPU;p45az=tI&K7|kU4v
> LA*;
> zd{Yv?XV!e57}zOgH$U?xTggiPr(jyFmr~w*w(eie7*ZdaX^M9(XDqFjJGbup63(
> w5
> zd0l$k!}sr<8{EPJUA=%ehXuk0OBg1b48q;!L8EvoF&F=rwl{IE4NnAQ!4%>W%1Z
> kY
> zJdUSQpMaOv?|J2Q`<;`6|2{cvH}+IV4{X%Ftqzq4YAFd!KYyA$nIZqN<Js+qe~a
> w@
> z>b0i{`_HFq^?Uj6E<Rri_VYaY@pbW3dS+H+5Io#Y%KcF$!h{Vf9dTjL+tOZ2LFq=
> >
> zdyhiVocKBOKTvm9r@di6HB3Ye%%?fK^bq9n_4Y@8a(L8kZ9k}QA!+$q256*U
> v=|bL
> zp_5I@P0KqF4PY7vJ1>FCpVEX#`bOq2u9L9(?5O~K+J-
> Ob6s=lOe|aK1)X=tcT#b`K
> zyNsfQHXZyL&f}2hhCE)0{p3|tG|X5>oHpbXVNpZmtO9c4u#9Yl0m6=CeoK=rla
> L|i
> zhOHH^RLP9vckFtTEI~-O31150k3aNl*>SwY!-we;0q-
> Rc1xG{bOzD*$@wsPNi)76#
> zGzi7rnN=CzMISJS9Gs-vG}(YG_L-
> K=XwxuT^C@);Y9`s%#hJ6pZ!~RoCuTnEm$El^
> zBJ6tGP!tXl*_X7d`OGA~u;o<Xw$dxeqW&Na!Z|>wHvgf50LMo4kGT!2q0b$i1
> A{X#
> zUUggsXk2@v+jhR2^1TrC5-VsT5UxH=E7PztK%-
> PV*n#^Pk>aMnjid8yG#hGZUbi6x
> zU$#VwAy?kfcKkRlx>jNV=Q4<V-
> Ci(_)tBVdt#0irwKzl@4h|0*?o9D(sO`+Ztn?4P
> z`uqUnT|zk>pgE<W?m1Zsnumh8ljH)pSGn;uGnEQku|msYjEysHi!>W^Q78+b_
> `XQ)
> z40k)2D+rvM;?lE&#Lu}XPa8$bAVdj?fK}72hyCi|+ab3;SIlo|?w&CtK&V?sjos~7
> zo3Y`VjU~fm%D9}7I#nF`@zfmNGQhP)Xmbu(jPGe|*lwY;X5;&0ezTHPEN(Wje
> PtE<
> zWV2^&voag$BaFVLQ7$#bj~1`dBQ@{yCuntXOA>N(A-
> T9o2U^vDL;z_H`e;$DM_UR}
> zWXKhB>P1%(GEBXIbLEj{0i|3Yp2TL^6vdf+WbM{z_mMNhrlf&QpA1;o9)#(@=
> {(lQ
> zM{nZx;S}C}gay!RKfVZ$;%AV_-<Td`L}8=DfLiahob7U=c9;^yiJ}h%F=sM?o*gU2
> zG-
> JLgb_l9;WHDr*66l^%PF+^Jhz{$&UD!+<!<wnm!S_ux8R?Z_?psf7)M789)B?P|
> za|%dgOfP{<aoP*T49|H-5{4|GOAR+VL7%RI8*eFG;j89;1J-
> koq!U%jnT*M7;Hyv@
> zW}PHav#P`zES_?ElK4rz^Y^m)b8?FjIT;s9ynFXfGuof=*FTus>hqgu(#2C}b@%Y
> -
> z*W>2vH*Gv<*bu0hQ3Bg=nx*;pEGiK{l?m}a(+`(luK2=ws)&UPu*DC)!%rdJC_
> G}M
> zg9DLj=D1C0&HxeXcWOUX(T!3-*-
> ~u+?&9C~?@LM+GEphF3wG<U4`SWDdzZI6vI@wa
> zbphF}RYC!RMKD7ky+J9evWd^+jMHN!Jvnb^E$r94IC4kEcL<I~jSq+W_18<Ir<s
> !G
> zL94y9zu!4V=cnyQdj0wU#55dt5(uPL51`KF9{jHA@9ngAK4;a5&vD|!+2Z#40sLb
> j
> zd<v2pWJ*ELM6=MGjgbWl6$`O}Xben2zc}t?g8wLerJPB2QBu8<%<6+R+W;xO
> $a>y#
> zq)6>Y6Ibl(-
> @>Nl{<HiiL;pLD&TmWmyIB9bwvo*L^{jp$|Klz`UyCCU0rs0OI~e<Q
> zzj@F|QPw&-SiH)Wc^9;6fvt><w`Z;tInMMOcn%^-@l-Xks=ib&-
> k0W=ya*x+$HWEW
> zw?!9F%%5~rY4hbGO~HrsuCa5x`-
> Uv~il=xBPbzP`Mn~BXQ<`fISOW!x4M13YGU#-r
> zg0RD(P9};oR`)tYIn7K1MRh0HnO_;?DjCRa&Rj!_a++b|cEUlggN|Gv!sF2J7M0B
> )
> z=_lIgdt@1{Z)<5}EcRygu9Vi;K1?+{>|kh9F0Nk6E7D^GE$>{11|i;t+K*5wai7WL
> zJ@71#7n(ya7!~mga2ee)<qZ)l@crZId%hoKha6Fawz|V{(M_3A76qVbg%bMb)
> x;0*
> z|E9ou(9d}z^Q4Z2q@D#uM&S}As6Yw-
> xVV~HAp=3x{pOpUpBlK(yw3Ibb?fP#yjJYn
> zu@fnrn1^Ugp>C2(>ewes46*U2kcz#pfE$R>h{gEZNBLw90%N1|G1%RJQP}<9
> PqBvl
> zR!S5ZMFV_)j)_#G=^18D<%?E#FCb*s+6-
> 7BWjEmC^zEQ528{otgY#I?m<rG&<X*Lp
> z#7ciU-pc0)@6Tra(|T=fqxK%2a0+GtuRF8JK=fx@d0-
> d$S7+=2(JB`DWF>_IuYxqS
> z3LNw*<#m{Tnik69VSiTIGLCRq7f$_=-<=j8!jCevS?$j{SRH2#jnn#Nijoxei}1Zv
> z7B&12cwMYtsh8=0OxMHzYJ-
> E+ePT^j=5DjgEVr4g8cXgbiFB}?ayQ;bgbfQf(pKtD
> z`uTY0Xx>h0?;eStIbhVhy@SnU9<tN!xHtc}#1iQzWX4X6?;wn6RnUiId=EioET9IE
> zy4YBNur2Czr$#*`_YW`;KU$l|-
> ah(dNqfmdx8Koeg15jO$`%<+ueM@ud;aJu<>h;2
> z!o(j9YO#Pb3OlORK5ibo?wlO_cyRdh0UkazjAc@-
> C*GCpR`u8H*>HBq+=6PG@E%eB
> zrtTHDX4=}PZWxJau+`n2!e*axrIUK*jHAU|%v$^6xN)?<v)kyje?4jxIhA(VM0G
> xu
> ziyK|vroh=*-sCKplB+IuL8;616W$gST&@_E;v3F}kCx?B?>T(b;y5BSI&%uhc|`ZE
> z2Wxr*$SK6gGY{4tsVsgf)i>oYWAbAFimHkdaw{ah16efl*Ls78pPHsJMFE{VS9)
> G9
> z(27*W!j0h6@$CR7a6U|dAyd|<`udd9?R_nZuw^hhcQ2qg$&;(Z%n@W6_JyZ
> &J12~y
> zum&AznX+A|^v6M$=<1*sd-
> GaUxCMG`@PBugFUHQhT^rNMSg`Pq8J=|iC>S$Aip^_m
> z0Au|>{vYwcd1T!fCLsEGP_CSb2kvvL!j}5lnvD)ynSEA%gfVA#D_fCvb-
> cF#*J<8W
> zL?kqvbn1&jL0e9m())X+xC^yi-kcB|a{~4_ccXz)9$6|Y?gJYbbNj3aLr*m$``0Dp
> zZ}UdA6fX#fg~vsw`KqzsYEWRJ{T(2_tbap&`GY!%7x~_7IJ{zO%lz;8+=I1zP6`w?
> zk`mtI9?L0mOMrEv3&6?kf*h4I7!6_!u&hSn#M+uGcT!X4AU0pg%lQY%4&%l{I
> WpXg
> zUF!CfrRH^7;ufsts4>~p{Du<k*fY9akOOljR6ce6^-
> k@2N)&Kj$=d3jbM2XgOes5=
> zq;fE?BFBTq*ie&mAgtADb(up5+h9X}wqU0e)>W^|!Ap_IQ?r=Qp`TVl#lu6p@
> gW(Y
> zciBUe>z%&uG!L5XGH0A5w-On*-
> $a+g6dV|oG<3(4Akh3=Qt07Ehr0$@i+aN6aI{fO
> zEWYF7GlmYlRSmWEp6|fm?J2=18{i+s2QNxiTj=uRbVjf470!SD$JPIG==0l+{(7_c
> zuj^~i?&H7S!6$Y7cPZ!fet3R6eJt?*tv{(J@;^SU*Y54V@8YvotF2dR^-AsA9A_Rz
> zZPiY@1E<0+*&6IMe&T~CpT~HRmHJv`t>%{fY3I1pAq!$Odx@8>f0t7t`N+qEF
> eYTl
> z;E9f&t~052^SK-
> v0l@RfpM12Q!wX|bgG#9m20m~Af8A)mIc&9G{)zx~j?ugbYQ;*l
> z8pl8B5(IQ)LH%t``f4CUdGd?oAUoU!_Q!jrdVxGnG@V5LxLATtFfgd^_c)WyPV
> *N8
> zmy;KdC*d?Cc{92K5$O}fAsP6b8BH`_z7@O1iv+}wT&_PFVj2z{Gs9J{tZle+53}Ar
> zgoWBYK6ED@imv5mV@!w9i%+ghXdatd%B0@&<z(@MSjnShd`@xc2a_J<Hg
> S_L(?AKd
> zOOFz3N1Uq*?@B6>*SE7|s0<%$DlQ?e;iO|A7uhw%ip9_#(KsAYICq(u1EJhR-
> Q&u<
> zMNchYuesIllN98K(nmj^H1`y8$l|qUmHIPT9MEIh@uuOZ`fr<eG?o6}avI15^dH
> _m
> zP2B&k)t}wd|2z1&*?U^EV49Y`hf<7@Q@hGlAoW3{7<Zb8unD${*C`Xd0i~yhr
> epcq
> zQHhTBf8i`Lc_cNJ$j%0o#|N3&fH)tT%9dk!b=wKJI0GcKulnPdHk=~}$uFt7*jSl
> W
> zZ-
> Vm(*{Ofz0jARe#j^k8t?WNIE!WTclehE!NN}pRNo!K~|1GD1S+xJxpC$PJC$;<i
> ze<z;`g(S1jz2-rq-Pvg$9#DJ(&1m_bFs~#AH`DuNBq{?qox{P$e6ktEJEAwbVt<g^
> ziPG4eybwjyV9+5y9!pIJ6{LU@6a$rLieVu!VgRP9>H}He@EJm=Hnbun3`O5?6cl
> 6t
> z%l~`CX1a?{>i$>WE7k6;^s!+7Z#-K|#(!FSa-
> aX>E<UR(xd$@O;HEI^PFVmpME$$(
> zzFVz5SzWJ*`m@b?Z4<r#J0AF)0wA}tn$NGU<dM&ILI**;XQCbUfTOO8x4{4<
> n(y&<
> zm4CeG!bvvuBX5M}3D5JCWO*Q{fe1Z`KrEq1yVUlvZ>OZxf(V7TrSq8*&vEifnXi
> #{
> ze>hQbbFdXYSGzI*5ONh1%4JGHU6@npnV5nm<3tyQ4`N8L6|6V(r<?e_UX6i
> 9{7hse
> z=cH^K6O5L_QG2{I4ELxR5^O|ZFp6o=^<~^j%A5twm~M4`YXcK>+8ubo5W_e
> @8*52G
> zphIg$6d*9p-
> mL5YNwCO}FR~>!XR3_!#35Z&9GA#Uyw+RW!=S;fa|9Xkrjub(WWo!K
> zj3Q$j&RD}O{82BQM3gWRnjT_aL>}`rQegQLicKWla_vOcD#((KlRO5_6mV#QN
> HVe_
> z|0u+4ziGBa>+n_k=bht*fbSrU|J2-T?1_K;W2XfV9z7B}2YVFDsqxFvF-
> BoJJQmHj
> zNBd1EB*Qy38?7?7);!qVKiO*@ye^BECv9<X*cSWEx6L+`Y#)}Pvqnlyari18^ND
> s7
> z^tveSlR%*Nnyuaao#xxd9`d&b(5q<t)HrC1)|;LEeI6u~JOR=ASiEciMCg{pZNjM
> b
> zn#YaZb{T4#Z@Vx90L*?_pgnsNzF;$rUm5`X&hf8hoPyoMgI43ePoNyU7kfKzc
> V5F-
> ziu0!cn}HeLJvnZ?MG#@=bjj0fpR^m|_2J<jO)tv$&D}<8OY9%EXo5~!jj}+e0_q!
> @
> zfT?M1VRJaBlU9@Fsd><D93P)hOt_MGbNDk%1VFk2wfAU3fhEE*!-
> O0j|BCJ6WYClo
> zXg|Mcz^h}NMHpWDcn7BgjX!qVR!Qu#eR$lq1}hF4ulJj;8wa}$cuQbmLq9iLjS?
> (U
> zvxQ}v2QnlW^n5~N$Atmd_^XA8Wm-
> Yed_{<`_fr$$m*rvITTK}njHYk*jhubNX`tp`
> z2YtMYfvrE9=4HqkGC`Ykqo8;Co_tbod|(u|@?XOi4f<krg|;qsBl}fmJN{%cTEbd1
> zx{6lE9tH?QgHg5)&4&QkS=8$&xQZA$w3N?Ls3>VdijTJN%GVy<8J0eMyYmYM
> L)dQ|
> zpq<^sKL=XmPlR0?pdXjT3Nj67o|n(TKpMj_24I_z>6^+>gUU5Ao%p1G1Np8{E
> #N@W
> zg@m9I+uL0Jk3SeDeDLU9?GYNc=5l;9ji#;RtKu13;XxB6fJ@#}^HY5AnZam5$74)
> r
> z6A%v^4ZP?A_+9K2p@x;CZXP3q1AoMGBPyZ}O>o}WB9(j2<sLrd(Gpy%k5IRX
> KPweE
> zYCN!2A7?%$d4)l)nn9|%sf}fiadqw(U#T4Cv;gWnz~!cXd0Akj*q0fWd~6L&J*u
> GB
> z|5ti|{FH~N$50Wn@MBSjHk278LB<0il!aa!s90<t9_}9=ytW1*Eh1qIX2>IJ%-nog
> zBznV2jG2j7xDgRsw({|*`g|?fCYAqJs_k3iG3WFD^^N+oXG#B$XZQU7U3^wo
> %)JD=
> z_??B5Nq7lFtKca13e3^Ev|0vZMhfgwW@;`;u#x1(OHX^4H!nu-
> dvFHHf@nq{lm#Lj
> zlASmCuZ3+ueeRE_Ivp%|s-
> mpuiU*CxUgzabi*_c3PWVc_q9*k#H1^=G)Y*aIjmR!R
> zKgl5lLOsVhrf3&ulkkH-
> 8lh<i%nAm`q5k=tNSs9WAp*PfYZVGiM~aBo$XiFHGYlGq
> zaKNW!Ne&!%vW#)7H*s)f#End7RYZ<h`2?)8eG63eL_vxZOGRHDyxnQ<(xNi!L
> B-Wm
> zTm{)TJn9@A(&Jnmm*Oqus7HMc$cl`avBHhk?#@voSNl|>3VSl<6Z-
> 1V(FMFo*Bc{m
> z!Aoe@Mos`B#@cIizETa9K#^|dI1D5;mDWPzxOupT^*6Bo5l9|kFRg(wy-
> 6Fweq#qY
> zM4UYV?R<;vG|xw<6I=ZrgRnjqULSdsCf^h$f!GBUd3CstVAN|^eb*z|Il>6V6b
> 3c&
> zF(`9N)#mGiLtyHm0jH%{DRM@qrL|{`eRvd_$csz|t;)jv1?36TRNJynybYWov@J
> $d
> zvoS?Yo<%R@8zLCOkPLOJiZny0T`RXQw)$0~-
> 57G)Jvyiyzk##~)ySXr&X}a(y=bgx
> z=iuZmhJ9!uGxC%tkI8Q*es}B6nsf%i66l<;f<77O&7j}Y{dlq*PdIIEYtCbRWq{z!
> z*4%;cqPVjcznf1dU9waL`Lf^gWJwU2csXOI5vGC=qfqwKw54_Lj^{3|U3C7^Iv4
> Qs
> zwuf9m(u^&!(7If5h3zggAc?PV_INT@*s-
> mk$#iFP|L|pu;M1c#@(uV%jslo#THFC;
> zDeZ323A~HxPl@#pryggAKqU?w1d}RDA6$iYdAtsnrdKE=!B4!Jbn1oue#Etor6L
> lu
> zh@62mI3oLZXhj0_(WyrUq^dg(d(EjrNlf*p9Cz@15T0>0Ubz+3))rRWmm0TuV
> CI}I
> zK=!~JnXFDIeHiv3%aw|0R2OBde2%oR@}`z=HrWBe>yrKI5Vu&5nMCYh3l)k3u
> S@s2
> zRND@p+#Q4whQ}$cm&)WXtiB^XSKpBzEUuNPGKBz=532YCpr?x?0$(*(A_<D
> <mU4u{
> zOKHS(Dkpogi}5#lEBh|R`5QA$1VMa~)SiM@vEs{={!FvgnQo!3T)ZNbaL!sp{m#
> zO
> zQR9G^g&H#}JL56Md=6EFaMD<gC;mseF2}2`YDznMhlj6TwYVK(TTbAtlvtfszH
> xla
> zg*O=E$pk(easH&V3U7Cgf8-k9T41gspc-G5oj~BH_IYqfo*&c-
> GbOTLiRT!E&mZ)q
> zOUwnwFG6l9qqWxIahn=jqsI0^ycdkZ$u!PV@l5Yy&<?z$M3$<yQ4?~Ow3z~C
> W!4TZ
> z#^wR{Pbvg2k9T&7Ppo}Q05m?0=}KY(n**&MJkd=sh;lAp@4nfg1*q4k>XDp*
> 3$I6L
> zb4FJXfLWOHZ;~;7Xr{SKd@46$PqNl(5504#?TSPZ;3=iGMRAUaW963qdxk1>6+
> WFS
> zldAq*TJ3goe~)T^TeIh38Vq`@z_$`5qgDE4kH}2=pfv9eGXRZ1a=%ksf_ul!)j*_
> G
> zVLDa9M&z(@DuLppW6u$;Ua?Xyu~0D>gk83$w?vCL4!s1FYwSU-
> HL7(o3WzK3W$zm$
> zx)dwxROLYK7b1MlilJgO@~0WN{%Z@G*q|m}sjGOZ!69t3;6>tMgYGiuG(U-
> xfqBH@
> zO4^}OmQ;;M9FbVNEzJK>v<g@Z2t0I(#@<opka$xGrXNR=!tv7pW9&Yig$sCn)
> m)sB
> zQN1MjQ*9-Y!kwCTJjvQjF#VtiMjbe_CXyF-Auz@mhEFxm5?rb@x-
> iO&w>$rJcnmc<
> zZ-2z+Ut9Bn`k3K|p8t_2hx|45Z0dS|Ze(2AawnCPIad+eRXDS&^&r4etgMJbG-
> !&Z
> z(w8x!08-Fru|!5s)60--JE~Z;g;rc_T`EhL#US|Li~m0O<!PCHOiguTCPsI*{wK`p
> zfz5a$&XEeFWfD!b9}KZAg;Ch^3uS3ph8bx<5U;UIC`a|f7GP8t7>*>*2&QI)rnb|
> 5
> zbKGbU|7#(x<f0XHL+_tuF$_kfoO)8jJZkcxHQA}vbE=k^%NSND+nRLLY#kgOH
> xJsc
> zQZQ4$k|8!`(`hFfjVJJ<UyMr<F0xjuRlrYO>*JEuK6)LzMMe@J2dgT&z3bN>-
> S_%u
> zViMF?tev4BWlT)_cz<`Noi;D>O+GK}$?=M$3#@2{ES4o$%64p!<dZoN9sQaG5
> xj9B
> z8eiQAqN88q5W$m7i1tp7(gDI3afKm()tiko^@aRexTVv8gtlE6@j)htZx8p<)B@
> ^F
> zo)0AGZ3z3ls4w#H7ow=S*;4?gK!h#1AkmXdn2zE9beQOknm7Oo$kN2D;~Ws
> Mq6-2&
> zNsxVb*lHXZTBS<kLqlcK92rQIbo>>>Ms>ZqE;ZUnrVQNZ;t-p<6?-
> yW9LS_z3>c5%
> zufG2HKmSR+|C3t%TQdJ!nE$a>TTl9b-RJ+flaFKnr`P@7{O{iU@810H-
> u&<0{O{iU
> zZ;tujHP4H?vi?&>41bF8-
> ~VZwzjX6EOyGb$&TH_i^adN8hgY={un8e&M<Tx;^!;;&
> z6*n!+o;rIZ;s<JYGkZQ+zld%1Li(ct&B4nh=1MM#Wi}|M{?9QQ#KyJBpz0}MFsN
> SK
> zmbu{l=RfR|D*x%Y1Gm%10{hP=AoV5XzqPe{`R@)sj{K+BozC;8c%FZ|T3cVOe
> <y0S
> z&9(0~pL{2VB*9G=N`T*fSH}A5^zR0g$RQhl?4MIiDtU68i~_P5p#0@x*Bb;Nu8
> aZ?
> zn9(@`A-STHfQ2sUHbbv@d2~-
> #+1EiXc<E0*_yhk+oLyl9uV(=e`H$X69EX^9?OxKn
> zmo!PzM5Ob2fRfW7l2!+@K6U^F$pISpyBXl52(9GgmLMs?qM1<1(cF=E-
> 4CPia^UyQ
> z$#!OwcL(RZ@9~u&$L}-<-Sa>C17L7<-
> f?H^U;}3NlnuU98l7om_5+B=G}w)*IPeYg
> zWsBEV%cIb|CY+16rN#<FTuuz1BY?}cZcz+>Nz$4)Zh&yrZjlg2qFEE9%fsWAE2g
> vD
> zyhu`CLQE%Nei=!9DKVYES}3VI<75Hb3{%VP*w*z#_jz(Vwzj0`zDRDDviP#1d$!
> z;
> z4P8%kpC`9tYu6Cn=gaLh#wA7f`Eon9lq$OGJE{HV%iT_EcemwUNTIx4qJlL?xR1
> I<
> zx_?ppx}^Dl+_%*=QB>5VBsNy-
> PglR&AVD7Qh8AiFuFX+s9f74P(4!%8<|q!B_t17Q
> z%Feum(zh|;g5v^au=$Iq*J|rk3`zFgT3JLsS9)1}T4fFfm|vvp9$6(ZNt}=fMc*-!
> zg|@`Z$MhEIo-
> isrxw@@uwfA;aY<Am%*ivz*J2UGhZx<s=yKXOCG?aDA8%WrB>p5N$
> z^2+BLhpilnf945LrPqy)bf$<sRhCM%*mKxshsR_nWv(9&JI$AGRf>b-
> &YQzy%zvm5
> z1D9!nu>{%DDQ@5lf2Ey~yiF{{5G!84q_Kly_^RcWi&B<)m@?blCRIONXoX8jGf
> uYJ
> zMU{|Un2V5>L*-
> yt8TpqwAw#!JacwE{0^mr|Di0e#cCbY*g>atH(BZj);qhZu0Z`~^
> zSQ`vxMv8+X8w@{;`+m?imOxp$8Ko=`#TqF!^iQiOG%wSiSpG9qntFfq!z10hTg
> &Yr
> zUO8R?bu0j*GXUiaQo3eS)s&{ll?JCln!T$j#|rl3|M7<|kPeG-
> |D?*~{we2k5tNS~
> zYrM&+=*emlS9lWbHKt-
> @r#%>W;|N*w!88~TSa%jFQ*NnP>Jk(ya#g9F$B%VO|0a_p
> zM|?P*2E*VtpUkS1MK7`4D`-
> fM*23s!==aHsNlgTfud7gx6>#({6+U{ap~&7fJWw7g
> zDhDqnMMWaW3t8!7e=x<;c1kWsM9Jw??l`G8)X>l02iCas(xd^VA&ZSP37AGi
> Qa;lB
> zzoxW}0}5<kCJANYV=gOXnO&?aQf%&RMOnxbIyU`Z&8M+2!vD2Uuar7R)DU;
> I6rr#N
> z<?g!A`8jjJJMr|MoGrOi)xl)W*JAvLl#5&z5Ap0%=t~oAaRi&nC558&iSsb*@u6
> Mj
> zyAVOq?IuG&$*KQos(e_^!)Yj=Z^fD=Fu7SpKemNDejW6%>d3)u&R?6)izxZKc
> LssJ
> za;98aq`SK~eyqC$j3_y_$$;l775j8xXg<qr`wGOk_M79wlh<!}ie%Ok1c#?d1J=cj
> zs!$9Wd>1*Cqo%^I9PGYu5MKI|VsSQ#f^#&AM>eL^MS!_TMhQh4Zg@O?rd
> uA629Fz<
> z7-
> $bi287D6clk8*Lt3G6k5Dg_l~c?Zb7D3(r+ljzXQUU|$UpZm24nca;^Mk%w)Ydc
> zY<%#^oERhl%JW1U5ht3CFmEJgqko}S1WZsc>CT4zf&YnWYcCC{>;Opu=28nG
> &>pO2
> z1kz)p(QqUYs=Z#V!-EnC_oNAO17-3?iZHGnSwuhj>QNbwSMC>P2Jb3I-
> 7BNrn)v6l
> zfj4mmLQ#jwwMzU~wOs|)Wb^?fDPqg<%Zt&u7gRrZ13&0_Xqi)zZdiorJbi%A
> #TC6N
> zw-
> FL`o2eiDf0Ft*98CNy*GLKl<uR0jg80_)QDeQZUaRN=eKpWOjMP)gS!L*Zq^?7
> m
> z5fzetq}<e$chLx_Rmy?~sOA!37tc&-
> L@u?esHWukt5jH`1o3#S`fU|fPEJ+$0R~b-
> z1ak-jJdoFlhEo8tz?(On%ETE;YQ$xe?BmcP$R(%X;-
> k!M!rs*hnMALe1}~GcsQM0S
> zR37E|I75iKYdAc$?H|`miUGm5@DlHg-
> ^;skeGoj}7Hj&L#TJ&E$sBj)%%#;tf<cH+
> z=Un`it!GWenrWdczTf7IC;%`0h2PyZZiH~B&KJ%uS4mqSZx_*5(uosD&KhnQqJ
> Ow!
> zrBSY-n`)TY-
> nOKSASOB(0F1D89N%9R|3`jO?|&1q_`j@=1@^!7r?tfW@3W`R?(Ki?
> z;=^8A*6l3@xsTn;HZiDf2u#V#(3|w|NqYj*=KE1v-
> M8N4gV?Kz<8XRG?^ADbSGeB<
> zrhyETOje*n4x>iF4L2^MhO74M&c*i=`1i#un02duZ}yyl^@ihFB$`$v@V4K*7y;
> =%
> z$2@n)Ei{06^Ef)UXaT%ISB^AeT0q1(nVfkeud;gq&3i!m^ViW1FASYz0!)zFbBV
> wp
> zDzKOv^y6ZzQnu>A5jwMLXNp-
> ~2mZ(^k_Z}dF&@jfAs7B+f{D|<o)^mmj+Q5I3PCM6
> zgyP^bhyW62mzA9hYFIIhT-B&T<grz$Z`s+}zV-(Tpjg+z0_0daJ#XrX3;b90l?~rR
> zDo3&%>b_kt<mfKOF_0F<N5RRF;?Q4suFj+Xx8(z}fc~$ouP5R^KdaT(@9F;?d;
> mk8
> z)!sxG)c|!h(d;am2GiM;6}fcj&Ni+((2k+Zcz@QFhOcl6)G9!TD{vV6bNB&YP5gh&
> z0=!yl{dBw`X0kHU+RC6Sukp{W#D4`t@#6@?#Eb8tCVhJ`4$s0*+E2tBHa}2DRv
> p>S
> zkv0&(8@n0mK+*Q3%yv2OR~vr78w3G_!9mgzL0L|?)+OXAJh~F&*<?%tXM_
> aH#|Q%x
> zZ#0$mC1}3T_kA)8Pg?xM>|vxOjKDn49+|eFI18`kafFRf-
> LsHndrE*4uS>=<Xh32H
> zA8!`hkud_un#LZNV_BtbP6Eqprr<^JyHM8SgAzDmItg(`J_Ms44OmLjsN+W^
> M&S3#
> z^4=1=#RM39gF6hQaTd;rY%L%w6EdRmCvZRkczn*6K@gu(s6F=89-
> ~gCOBxQf6mqIY
> zXr$9eO%$n5s&Le!39(PnkXTh<d`OB>3GG$}0R@(ji%YnShDLxY-
> q1T|OCL5U!jcl8
> z%L|_#;ex?`%%HFh(-ieUG#S$n&7@`R%K(wlo3L#W8o-
> n>whLCGydgp+VaJA)B8OH@
> zEr_(nnXzdNL)7!V0Vi8x9fc~KxS`H6qn}M9+WN>|q({<{%mgzDa7g31Z@2?lU(6
> _5
> zC$@mvJ>apn<wk!v<DA!c$X4nopK<{d>@}Z3rp?^ZtcqUx{2hB!NlMAC86KdT
> +t@S1
> zi_iFvG;5Ykqp*4}tuFD&I{)3AYhTvKLiukkP5#@sKmYIG^ViFNE~c^k7fVZbFaKr8
> zf0@w(nR+^RCK%;6Dck8dfzh~p4Uy1<7mUVZOAbsA6e#7uNXdZ?*wUSaz!Q-
> x4jMr)
> zx|SfA3C4yN1my@=5R77i;CuidM)TxB9%VE~9?YJkyO#&k=|6@{x+Uk2|F?+#Z
> #=85
> zJxRp>-heaVp8o&&pZU%k_ih{aZX5S*8~1J-_ih{aZX5S*8-I7V4QAVN-
> &WUcpN)EL
> zwZ6Xk-TLxQ8{7_gY<w#{Hojf0Z-
> }+}=K6OS(*cNq=k>nCV?)JbtyF}ET1g;WzK$ml
> zVxkEid)#%y@Djc_{i<56zDK(Dk*Pe=Flox*u?3=_%)2r!swlRuqMrb%!zlPv79TJ
> K
> zu51oXmPy>>$dQp0`pQf+;Q(L)&h{TT90eXcB=9z6LneqWoem8dpw<F%Q@n
> #gU4Z;L
> zjYx4Cw^wq`9Bjncl?{nSqd=HN|5Mi=PoXhoQr%ZkD1u0`6n>8e=!6<3uv$KuG^
> v>7
> zsF_pdH8QU=#;-_;KWv(lL5I0HJcYc-31Z8sjwuf-9M0ira7CJE0940#CNryEfLhxe
> z&Z+F0CdC9RR&kHT=}E-
> +(2Xu&s8<7D1NdHpWnw!MWXnW#meI|1JW(@73TI61_#DXi
> zf8nH@toFlDsjXKp!l94h(pJO%s(PvGQ&?!b{_pkj+UMWB^4Vu>pzewKnOO70
> +8J*N
> z8L^&f9L$Diu;Q?)GV-<3?{;Ss3U?liK8DP!azJ|6vdj4-*^yHgX6ND9>Tc1L5G~`&
> zULu3fvYt;p5J5SD?2_(KCkIVv&Gm<xjesreE$<MuceoFyV=njT!6WNg8y-
> |2IbKuj
> zHl?2I<C6Z^Xy+cCnuiBe?<?~FPTCe8Yq>{1*bgzXb`EXTT(>HCR<R!G9^RXWt;P
> |Q
> zTD2au3HTNBghOxV9{sO*baH@`y?c1v$UW-B#(+hCkM)YrK3je4@3h{y-
> R>T~eY*pX
> z%8yK>puNV+lh<Zq-
> ^vi;x!R|1K@7H@0~gQ+h6P@1xG&!Bw0^|$efU_9cUrs6W{#q&
> z!*iV(V%CW+@KR+LXafb!q!^W{-
> Dh;3+I3pT&#Z3gwA6j7OjBxJfUtt#oXZu9Sfo^h
> z9}i_irIKm7(cXy{`$Ix(7XvD`pX1Wx5@cRr5O4Y7z4L-_kY9Y|yf{2)s24vtFOCmh
> zs}~jLMXRBkI<;N|5s0-Of?t%wW4Q4?r&h|_Hr+Ya(N28j@W&Y#ls-
> ~tW{@@TcTSvl
> zcBf%i)!2<kN3~l&=PV7Ps7g5*7o5Q4vKpKTxs`L3{=rmCmc%z$l$~-
> +NtvC9$q<}Y
> z@F%T`4V66-<GAP!<eKB)TJX3QpQt%y>+{B|ORbqw@xOCwt!LL-
> qBd|_$Pp|Yiv2!^
> zuQ{VYte&1l8Hjpr$K(1nW)O<6B``C!vdOAsw;{b((`U$_6_ZkDSNu!H!j5^)#*vDy
> z1)Ny^+LuClQONW!WiiIrnf?^ohoUTsD=KA-=yZ;XDJcNZtXU15nzh_$XC2-
> 22$oqk
> z-
> G#rq>XHGUm+2b}f&yB>S1SzL<NAA4$;%edj9E2W5*EacqmGqIMf&LwV3p@
> 8g^;w)
> zk3Ie<_-
> aAftj8MUoGNTcZYp9%71`Y9y!D)`ZW{+VoB!UjORC&G+iH27x6BQ45BZ#&
> zFplU3Kep%*Zl7(T-
> aQs(_O@J?3n!@t`gNenhAqfd?eB$bkZkj%RXM(qR^`%09&4)Q
> zd;A!RA=El}8m2Irgj3+HiCa~kGHwDB?SOdAu8mWJJbO|cu~e-
> TM=Yvjdtyn<R8Ckq
> zcUa;Np&19`Jf=NC6LSEsSIjCw=W(|eBNSMdMv5F2d0Ev4m2>Krt0fA3Rsyw5w
> IV$|
> zKccY10-
> X5$vq>NI^MyZ>q4fe3WW^ADa7j9eq!ky+6(4*R<Zsl&8(%F5PQuv~Ly5~2
> zQ_|BY(vmxgZF$=lDk7o8a_6_l%M{9`NV_qLlto~$+=>`aC%hvp`Zf6|g9|D|1c4r
> a
> z2YmbeGkHx3U}$>9dP%02KzY)N(uggc*4`rmF{_M7sh-#A`Ela;+I!23B)($yFcCE6
> zxxv6Y=SoQ^)}vTdPoP*?g2Em$>JpSFl{%k_RLt$IEFMliIzB!;H}e6+3&>S@u_Cd
> F
> zQyCdNxbO#Ke^M1~%<x32V@5wc(^Q@$=_ZN!(F~+)zlX^>d`#~o(JV5ju~zV
> p{7XB^
> zhHL;+@tE3E)o&^mDh&f~2pnou%|OG9X@gmd;UkvH#!AAw6`Wk@Ylxpf9d
> <x32Scbn
> zAkRd*Rg6+O##iHkDV#hBDT1R!YP^sk^EWXYD>VeK4&pEcqZkbJDFGuIS{np^
> 0Rq8j
> zwh$&FT>t>kOLTw@N3gkPK0q?S^J_4SNBunW2HvRa_u?G}ct}B4=pFd@F}FV
> Up*Npf
> zW;ZZjZz+&(C1Ez{O#P4k<cf2Bo%z#C9~S!bz4R5PPIw^DA~lY~P_i=lK=UJ{y1H9
> u
> zNDdU%$$(CU=>NJRe#YCb*?{$xNFo58bw)GQS5=jkU?YzG6R(U0VfcZF3lj%fj
> 9r~+
> zV#Y&#h~WR)!ONZ)j%*OHds@5%H!R`C=K(&gm0~{8fs9$oYj+Ti%pf=+*%kw
> =w~pE_
> ziUtNG(y>>kJ6nL^Xuy$r66Gvw2kP9xi~&u6kf;aWzQ?u1Z@g5>86A+(3XP(WW
> %IhI
> z!rd{d43nrbG^jG1gDS(n0##^|28Q2|3+qftW79&Dc!^`H1g@rpo+uKd27R{!M`S
> pl
> zQ*)&AF|DZygqfi?aqQEKV9w5AXz4Abl3EVe&?_L0v~b_Unv`tnG*Bz#E|IkwR
> xhc?
> z03}Gqi)UFLb4lv$;LN^-
> Jw6g$0LcYJAx;7!HDZ<W&Kj|`zZ^jiYe@O7SWxHDW<g0p
> zM!F+zQ*XUgW>IxN#5;REVAR75y|Owch%<HPUv13C>~|VRIV%K#<I~U3)Ep
> BhWE&*k
> z;M;lsQZxS9$FY4P=CyQh@g-
> `k^tVG^Li2e>{hQ?^Y0GBnr?Qn&`68iQ8DI8v9D$4Y
> zxoyN)3^RSEt<=;~1D23N7K!Lr#kgqr(7IkISq!7)Ew2*1nloPB@i1RbO9;5S%8|a$
> zU@;y_uEC6w?4-9OAs!np02jL~E-b%bBT^z|xPU#V-
> ayl|;pM+DE>a7_{=AU8BF;OY
> zN0cl66l2|#BzLVTEA3=Jn+rgi0p8t>2Y3(kzc|AGUBx>#MkpNggExn78(duGcjMi
> L
> zArh|C^%<>UIAL7N^Y*rH5Sp!4qkZzaxhHv(Ac|lG&VydDq|d(M1=}k6qmRV`c
> 3QBa
> z@&MRoZ_*e6UAX-Cat7_d7yMI-
> NAiiUv@K9#htN#r`S=n;*l%Tm{8@MY*^#_?S{jNK
> zr`xK$B5rXgN8XSZ#;l7AYZ6oiX#!BiY!J%g0^qfnb;YI`#WSP65NCj961^?}pUxPc
> zE|U1Px{$(K!RJk@Mb+fkRU%lY$jX_)R5M)K2}THNlUy6HxC96yW#COxa$}NY2
> b5wc
> zuaZFkA5TKOTI6e7R)s_$bYf~z7JTZ^9Bl7iC`ZQGtf?KvO|Xj+uo&1PJA+K7k&Z?
> o
> zinGxGuP<k#h%dQA5X|^mknVy1HG}!Wi(nyh>_(zSVm?_vq2I_Qo>7<nU{FTi
> ncw_L
> zh%YIPX~a=5CYV!HG^eaHm{NvCe9aCn%>Rr+ouW4;YUNYK%$tb&V&z{kbt36
> C%OV`~
> zNV%8PE@mkeRYUSj%{Xyn)PA`=fZECjbbC`~YN`2O1q7nFt8?5+)7}wY10UI=W
> W|_*
> z4d)Uju*<w56zbyzFz~wlL3qix;=o2$ZER<)ml}+P=R^^7=)o+O+No{Ds6aAs*k+3
> L
> z_;I4ZikUqQ*I}YmCAAkCI5=~TweV*V(u6Kefw-
> lWdoDz|O2q*w7h`3e#^^pPV`#C0
> z@O&#VE0V`nIU(FS^4`w?>dXw??&=Us7{Uu%RwYjB?@P91qBWH<sE#=+#N
> 4h8I_u~t
> zGPabMhbX#hsuAZ>{@4~V#dQL<#=)K&?uk%LU4L)hu+_tZMoO!A<-
> K%^q$iPa7rov;
> zfz4;Pv<WGV!jWIjvnYTuUFkj&I1G3UCj-#nGylT-7+`cIEg9hA>OHJBF|rBr;c2D*
> z9;cM<ZcA!6#0Iv*7Yt@#HhZ19x;EdPqGEPM3P+x(r3n*~Cj+`EX<uBJP&c|d6N
> z%j
> zm*JP1eW^jd^de36;Q%4i=kt(wuuvKMSVtp=Uh2n^lRI&G(F?Ng*cZ74s0q()7
> A=Ux
> zBJ&}t=(HO|aug(yC;f^@9f?`ntq@p=tE6px@|1LJrz~z?j#$Q|<cNNmMF~b3z7
> 30J
> z$`BIiOSY1?Xs%Y{r*6q+<78<&Ik`+Y!&hLL(6tVa+tlH|kmra^%SR9|Vs~VZ^)x9*
> zqWDZ!ObK<yN|~XoYzazQ*rc$MZV)+HrZ_H(e`(f&?F``2%D;$_&>o_b?r>aOD
> XN&m
> zSVI5!S1HlB-Xt#nvY2zB5;&?<76jQ^F`5kqCc-qveH(rB1^~ATFvfO|bqZEp6>HUv
> zszygUu$FW4z;QP%WLPUoD9XbA62pwoHpgqyYqN0x?mE8kCl80&bVe+$zHiz
> x*Gg!<
> zIY7I2YzsJb9etFxnePF$i2U;*8?iZCSvt4VKIV2X@Ic5m=4gImUnHinnX!SYd*zIU
> z<AN)?<lM!yZ8M@Xqhw(8B6bug4+3e?%Kb1L6APz@C`XPAJ20I}s#kB(H36Sf
> Wi?4e
> zirmq|OwL9<MVm;plAV)UX3LPHIFg9pSxx2i`-42?)KsXmMIL<8-
> p0)B!{|)ojV0C+
> z-
> f4+An`9mTXh%MkeX0|*)!^*Y#TLlCd(GowbXJX~9ZcP<&s7x9@%8?}kM?Ujo
> GP2v
> zq=L*^bE|MlPbD4YQ_TsT%K+S#^VFIt8Co=cf4`MUm@n)@SE=mveT&2l*4Z&
> 8a3BjY
> zWv3as<Asw}LLx8L|0Pqt!4oobaBfGH*ua_`8E8+cb#U6v%>o;Ht&HXR8suU%;
> mW_X
> zXsrRKLqir+Xm${q%jGi4x%O~WFk&;6|JstjWyn{K_o{(5n2gXSSI3R+$1(Jn89YG
> o
> z%7TPRlCL1JmS=q~1+kZFacI+p?V&E?`s4||Srt=>mCjx$sTP~@iWN*>m;+RYZ^
> 2|N
> z$rkW;O4I2cRPQZH)@B7o59*Q0O3&{OJgI2tdMLu4`RpT07L#T8+4aZ^57h?DxJ
> 4Wl
> z5#NDC%WCP%&^l^hrQvWO*E`*kkeZk3h35X0Q8L<`PrVPwagKrS#8ZLPDFI5(
> Py+V{
> zH4%=zf6aU*sx%?!2d1cJY>J92)-X#&j-wdg?J9R)P3t&uK9QkTHin4}?uxvCIqk!}
> z!%Zpvqe_TQ$Hu`S`r7a}G-dz6XzvnsLvq8i<)rD5+5KEbr6QG~0hBDkJ%d;`j*s2A
> zm~3G65;(xdo+Mf>+kv!zg^QZxa$3GOfn_!7Knf?MZp+9=t(wAPyCz-
> QuAkW)gNU}a
> zMLxG}XY7LJwUUY{LuPEnaU~V`*ZW9Wo<-
> d)`!Vm;UUy4U?&c^U33BhS&5nd;zEq3#
> z1c((FmVIzlHA~tXSDyDe6xf7y;#iSrvbjjulj;il_KR~)bX}V`(-@H2u6quUK|&EA
> zWkMNs<9Ath>qN<QNak#srOwEd!_aPyZo9R(X|ZUPO0Szr1QiezW6lzRResH-
> kfgX`
> zis6l)4+|?-*C2>`p`SZ4uTcUw*isdlRW0WXedVIzDf>@NT}TA(f>;vv*c}P2S^xot
> z6cq@tO`E#VL-
> tu7Q&}YxId0P)`a4Ti^UKyA>52zow=78}`PayhQDmqA?>=CJq7jEg
> z29b&*bcInw32w$1sJ0UJD@cIPkeT!*S6j3*KRz?9lcVP)-
> E=cG|JTgxA=M`%FQq3j
> ze%O2$h(f#?8jcl7J}Hc)_jezs4haF>q06&_dc^o)s<kFaLX*H7X>EUej@iSConf^k
> z3Gk8%o8=X`Qt*(hJCUyHlFtE9jv1BH1?d=}L!@YgS6u@WtkR&;g%69f%hYmT%
> s;NB
> z6iUEsS<ms9MsuQBhXa{k;)?3)N#qKXH<bCDEQir3Sf=KNOE9^`HAhTW<8uXf+
> z(@E
> z9UB+&e~?5)qKdxbi<K)YU`t|C));aH^?b{uNB-!Zkx7-yN1_J(iSH*~7y}fg&}bc@
> zwM;72a5^J1K38G!9OVOfO!F<{G(Z=(32qb=&AS7Rsm9b^RU_13;x08I+p(54?
> G8lZ
> z6|@_O=Xh)i8s-X_sM@B<j+L=q7{(R%nintBkT;Lrcd?-
> ?$`IRX8B~&B%d(J0ZZQ=s
> zcF+t{XQv7EP7IMAKSqaAiIt!8OV)aC1}YblAyp|_guSj}Q`8&+9ltkoV+N^wUg$^I
> zKm~-
> n*BW)T`@GW%5j&)lMt4CPjl{m^Q&MMSrhkA4l=5*NL8hdpGAmq28w-
> XX%F=JO
> zLtd*&xc~(CgJmxYwa_|-JK!4~DfF<wV=_%W6ztk$-TRRCS)1`-
> Q>?~jV2un^FUk83
> z#Ta7otWlQq)rMPJNo-
> gH7!G+SWlO>}ld^>r{w8UQtdoq%uCmFv*8+6EL$!6}eW`!I
> zpR%>moaU_D20Z)7R1u}Lrg2-|50xBibWU(!kJy-
> @W2dJ6SMs)`q;HB+dpJILt*?P}
> zwD=E5pgxenoJY4t{N9Qd&oZ-
> p_Y(^r|3TKVs^B|2_&bk%?tI&~74}lW;JR}w^2LRG
> zNww5^NTs8A1ti^Y0D@vNp^!K_SJw%N)1SC#RPj1~FXn70%{^$<ftomZ$6Fbv
> g+m=F
> z#M2_ZcLuR1Vz))McxWs;){YG;@;e`J_={S|IPE@L$_A3?^G5cJ$fjA&LW~f>yHp
> +|
> zOa3Qe0Bez%=5#_S=#hIbR0|d(Ezb+;nFY{m$#aAnHpec9QYw;RiZReAsxivvF^
> !AV
> zRQ54X)mi2o^igZ#INOm%clk+?qs4BdwEZPxC74S*s}U=gWGNnv^&&ppf5Xvc
> 4mNwN
> z$~I6L7Z8?pFSN3ZahfbbE@&iHt`&TV<c5kHJq9B5mX$^Wivi8vGO00Ww-
> XeZUY{B!
> z0KA7Oi=s(a1J$FXM7FaEyfybiD^ZV<-
> t;(&qyhteCam#6PNue~Oi`90F@9pn@zSZw
> zww%&~?NJ6DZ8v8780O<U*CvXVM8R{cBLt?&EvyG2l1KUnGV`*O4m88I*1^
> DPW;x*m
> znOAq(1Yta@CxaEIaV~V0NL0iYOX`yRn`rahs6c+Vxbm8Vj*xxc64JIYR;LRU=zbo
> x
> z<6H42p}p%hg|?N(&kWeyM}<eg-
> 98eJZlQ6b$H#^{3mVq=@mB|>yZ_wTCpG?KF!HAz
> zZyJtnCkW)C_`kLFXYu%tPdA?2$N#;H&tDw>*TOVWF~9y3V*XM@oe-
> 1DC4%|lIAN2y
> z&%Mdmqn&30{hIl(kG$?!M~VnW9k17eXTgY~@B$Ast~`(U;kKMl_+IRe72D>
> Nhy}2<
> z96IV-e{o`x`_G+xQtAIN?9B##)w`t-!1L+<`uava5&!*Zef>WF*Ij(RMmIhX_Buc9
> z9Ctd%hQ7wY)cLPPCG7*xcgaK@NC}`$R|dl4Tc=KEJPFT9ze86yXXxm)v)kEgfH+
> t@
> zP3`D?S)AtKjM(k$q7_Alj3kSv@#am_@5_`9;?(PQx*t1Os3Qw?l7*nz_VKTs{pJ
> C*
> zDIW^zkUw~3gX&(QtET#vE?^`D;HFIhos+_}ITxPoD?eJc=qP+o1xxs+lqU@=Wr
> {33
> zm|L-cK^&o<0-
> 55Cs12U{=0T%)N?t_Hyw^2Ad(_ynYx*96>IeDv81+fx4@&%<mpiS-
> z9Q4uHgJ=3>I3d%GGcWRE*@RNC#%bOljT+rSqp@ed)?-
> VI@G6{%OT1O&<UrD|ok7q5
> z&=3(P5gS$5y5cF!&bbfAwtj7+Y}%L<9?FRQuz1)*N4@S~`6!00$2jWrGy%pPY`^
> *P
> zb>qN|fv2D|G4NFIGRZAqx)nxs&X}xzab{vT@Cna4sE=TNgMZSWh=PP-
> 3%`rP>MWY9
> zqOx{?@eW~U6!4GuTuytv8h?+9l`>!Ie9nK~B36eytcoQABKBE7t=HBz-
> Xow=UyF#R
> z-O9HlV8Qz;jYkBiUf`TEQc+2*l-
> +W2?;<ZGO@TEAQt^^io@a*aWE3jNI;ky}@`|hk
> zQ@RVm+%$RloA0X(6_|??F2R^z6bQ!hC9_D&+=|PPmh8<J-
> +mJTtTCDfTzGiJme?~0
> z7-^MdH-
> PJhFaN7}>J&()KYPvNZ1R&zeR{!UN#Y~h&Y(T!?e$2H?Els%k8Cf4@W{9S
> zu5<^e$eA}O(A`4@wZWI>$y}P0T8v(p-)>)jJIbZ7_pc;e4o=ObTW-
> lYWGhi{Nvh@4
> zTZU+5?%E}3mfCGuB+GuEPO)AckmJoYC{};O*YS%fmTWtNVwtyq4hyK1>~j&
> 7lEoyM
> ziu0`(zSr|79a*Szk+DF|w9vFAo1)cL4awF1Dz&v3gk2;}5<X|8WMgwy3U9YkmM
> L|O
> zq^tO%1;QpXR!6>CyfhTXXTiF#{q(}K1B+!G9CTTD<5Pn!2Awm5A#&n7Q#4`Qy
> co)}
> zB;q_(KN<&ncJxb|49lC%b47kRCm_*aotltVsDKf&SAfRX%96G}JSXC(OljOig=B
> D2
> z+ce*8i=_Bt32w49A@-
> (CaBEtelqM7SRa;vmD6>=W^E}dQR&6d_wu;Rm%5JG8DYB`w
> z3^~q1`V8tz_?ks}^-F6*;HHD^pu>I4+3jz4er)VDep-
> Sqk94GVZ*o3k=Pv)#*zZm`
> zKfuuY0L;+GVkwIX$gT__IBxv+N%I&cWk-cfhcf?lc&s+CLnut`>oJ}ZtR(5Mse{UK
> zstWVCP%}UVJ8HZcL_^l<Q0WeowuuMMKy$y*X})Ugw_q?5c3i=ogV&^|INo
> _%JUz{4
> zrpF@!Lo?H99(3OR$m`{l9)17-n9v}Oz+1Oc>(|!Xo!#R@j7jg-g#U*g8ccI+dOO2K
> z{ynbMX`aT0DSo!{L+_vAq=QuGpMd92;6X6r2LU=VJp<x{^S7<B0VocXE#rIG)N
> Eu2
> zO%&lBU6I2tnvp;L5Y&`;0TuEVJ<t^7{rghp-c7E=T!N5NeEBV(th`|BOAPL`-
> yAm@
> zlnZYjKL!+_PA23FP%?XKw+@bun+NSz*HKbMBdG~oe5kADGY)p^_4PKa0%8
> 7+O#?b(
> zd#cyhJJ-{MJ3M3u{^%Ud+vB1hMP&7-
> AHBiN1;0A%mO_1PedEc~XWxETGvDCoUUS}&
> zsK%Lcu;PMxEXlEKSE*;0#doT#BmuH@<{D~$woo|qhj3&m+3nFUkF=XSOMa
> GQSk$N*
> zm-
> KjrV3efHb_GC#h(Ka2DH7Msks^yR5fhD5Ey>b)!(G%%UnE?*I69YT#fr}1WRfM
> 9
> zByDcRWjLDb-
> M*xRsrPUepW_rr5Ii(1I_%I9S48TBaaqcOnToQY=av0ts|~d3<>B71
> zP&wn`XNeC~-
> SelI=M4tMeo4DxOi2YX3>G>4buqeBMB$EP&bd#Nyj}ZyVphDbg#s0w
> zKN;An5U<b^ql}S8rV|;UV-#{2P?bYTre)#<fs)XaE=z$27y=4OXa)~$|BO-
> f!ZDsM
> zQHbdX(VOE@#D4bB3Pn`wQLK;$yRY_lUbis9$s~lir_4erhk-
> Tqgo&p~=E@@iFNGYW
> z1P|(FCX!T}UUl9-sGoLd95IqDIjW+<dW~*|ia%I;E}vSLVL1+zffzm}Yq|#;x~hB#
> znEs%iyz|NiZM!fEM}EN+?VIHvi3jUj0zC}kfaeGt0$EPV1F9pRIm5^iAf`rq5ctd*
> zNOCao2IdWh!6@WS<W#Hr{8^YX4i(<#bBYl5U}|iV^WLI4m61bsxWxx`Zm%FJ
> -rU!y
> z12J7LR~nYdB4CW%Fyi0&+h<YP%Wh(eX-
> *1{)jn<?{@6Lb7LPTZOv4YD@H>;WlC5U3
> zR_66JSu5Fdg0(ts9PNW_uLMU`j$WrwSW^H1R7tGxJ2ce59EAsML2T|00K4<50
> qvwI
> zni}n+pHG^5nX?z0KZ+Am!8IC?yQB(2Id3LSA960!Mq?VnLX_i6k(>^7+Bs5#X}ra
> B
> znY%4vMyiU+g>b{GLSto$u{u^%MH`<ZlT>@J9$SL}F6$xHvt#q2#WFu1OD1UE
> DbDC?
> z+DzX!^E4Fpywzn0zy(Kn_WC3a^|!6pou7A(VX?a2NXM3*MR@IQ)e{xLJQi*n
> wuVDH
> zHcGXJwa$DJhrC`T^7`|%&oG=fhpo0sMn3=WcaRQ%xd@}FPLe(k)9fzNwH)nV
> kAPQd
> z{!gRRPE~Rw8&Pw=NIU9+nb_d1#?JBX8)T+hgzt7?1a%Y*Qgzu8#Wd)|YA8f<2
> x|Jq
> zN_6B;duMTCVd<|d#=$;P)09t`79rk2^2Cl6vDGsvEJcnENymt>M+)2=9)k2zZg6
> ZA
> z18Kncr*z0BHg=BXp9_jRg1_RpRG>>ad<1gJ!wZUhld|V8*h!xum_M-
> XCsZh%QIcGc
> z%VL-T#@K|EVFD$)7)zETZM5<6-
> h9MkYuG9LN9xd@%3>+ZmL62r$W<R!!K`IYzUz=1
> z-
> v$1w#=YFgA5xvtRt$m#<6K|1Aj*3=V!Lvs_Yw!>my!~r6DLPnOKICZ^~gw}UAY
> +H
> zqNJ`1DVEcI=j4Dg8toNNV|{cEPTopInyiFwx~B_<^PYoZD!?$AZVGitA^sY)>rLE
> K
> zcivp>eMS#-
> 8)%)Gu~Tz4!VK*r&S{TnQDc*N{c}@xx%iO&@~$$EXw0vDvm+X<?Uy>D
> z?JjP7M8_Ig{)o20TzEv=g^AB58+)<%q_!(w<D`!Fck3s$+d=9{Z5O$<lbT#H@Om
> `!
> zq?U)XgGGg@KY%vTFlO2vBhijhkE`^PIWdsiKbh@e!O0wDp3M3vzR~#b#W?#
> MP7d_X
> zIftD^6zMPdAdV6T@lxY{7%e`GlY`w@w%|<<<3vkKAI2$EYTjX-
> O`GN%#&#b|9mZ)J
> zeEGxJp&$zm<BW-
> 0a2TidaQ(yBnan@;F#f`>5{I#^3Mwi*Sg0<C_s9Nt;B|cp<%;VS
> zS1YBQ%J%yVUDx~R#DgO*m=+(@%coxDxA*1Koyz~bFD-
> rUqM9<paEQkEpl;O5&K_E#
> z>tyeGOU1gibl4Kzuz<XZ$<|oR^HE9HRIrur0xgAQ;G4GWr&e3(x;vPqc4w!3c(Bl
> c
> z20^p@9kT$_4bB5gx04Q3t9`t8a+C^@0}h-
> Tz1euK`W4!l2MD*23B~^IPJ0Q98fayJ
> zAr<BUf=w-e1lyPc%F(aOf-
> =5Z0Lsy?3qcuQWrFhdaBmrlb!Y}d6VC+&n_2)0wvh?S
> zG5o(AC=>X9E-2X40#LAxOi)^l<uEq#=VL6ivj7ZeK|%3Xd*j{xC)NK`-6`LW`~L#}
> z&yBV9^|gfm=laIlz5nMOd{$S!=z~G?4ky7m=BL7VoZ`rvP6F7SM<J$^6788UcE
> %G?
> zuZ!Aun;YM5uGPiSUR%_^`|b%A-
> w|iw@N5i|+ZW_!AC8b!?1keAa4SXpTT*s;6d6>s
> zg7b^2;HapWeuCroA!CPL`GZUEDiR|vnqFbJ@gAns!rOnSaS%>@$}m7_tAG<x
> {ZZb6
> zUg&djD<yyR2cb9Bp{1);6_(Vp1cMHNnZgLw(G-
> |Rge1~0$%25J9R$N*%Bh_&9k!xe
> z#Eg<njv7xFQw89a5f5MxhU1Hnvn8s$3?bQLnvmHTESobgU?}*BPr@J>Bk7RX
> Xzf7J
> zU%gqx5tl(K@cVr<n^R4{#RR3tewU(V(?W`uz~%K|diF!8^ZgkHV|&pL*z^tfjpy
> RK
> z)%ugw@1Alv=h<{BYSoQ(s!D^w%q_EX40kM3hecE5x78yNjwxN)j8@Q{ZEA$
> &od_jw
> z&Lz*$8z>s{s0VK_J9)(UTf8%D$K-
> {j26W=d5mp?CT{Y?4P#I%541AmnfVA&T@J|zi
> znS<Pf;kf0rQ4_6j05U@))~ZjGPw;xHB!(Vlj62sWw0P3$wbiw?)$g9!v-
> a(?YMp8e
> zarmLk5pw~zhdvs61_-
> )4JtCTo$AJ1O`tQ&Oew<?U%2r@Moq1=Jp5tG$U_vN(1~S-4
> z3`5MG$0_3Q%AM{hF)HRB#Ua1)r?Lsz1*e{rxsgQCFE>hL3ljzB{oq^_&&#hdwc
> O4i
> z3d^EDghqjFlT9E307gy$lh3>!Kyx+;KVb4s*bKC4P=JH~A}IbRf6@(jI|<yysudby
> zbOH1PUSW)_kaqE-2rBv@T?U^hJ)H!Bme!XESb^1%t-
> $7>$?k?D+#$Gi$}&GVrcCW2
> zrRZ^Z;(_0va?TEgK(dWc(mCCk&UiAy{A_@y0ZNz^l)B42LYX3vNYJKiMt;t_T~X
> O<
> zH(G6NBql1MvGO!$u&4}%vMxb98(FrXfJH3Y(pDC7`-
> MZ8`(vOz(E!Hr{X~9yaXy=!
> zS9|_*QLC@6JzM?mTL%rl3uHG)XpUYV@qExeCc-fraR7gyn4i3!-
> (}RK83z=Sbx$zL
> z%5*j&v#7GEBg+Bi499>Ay?_EgqwR;@Ja1v8J%1n?gAbVh<@=%kq8n8&h8)U
> 8)YeyP
> zPhv2C2Vh%3t0iK{IcRo|)5@G-
> bQp_x<5YgMeqZ_%wa~+Wk~YFRw{R26O~OI8NshIu
> zA#uWE!)gjqRH2>3LWLx}1K?D+95E3Sj+Gz*MNfWGkM!j1ULgH>HSw>+_uXC
> }{=Vpk
> zvq|)?85{vjTh?mzwbj~pFiW!gV~N}!y$Nc1Fk=GRu?^5r4#Oz=qwW<_g<vYX`J
> #^#
> z{RTa2f^#w$MswV+q-
> 9>w8E=X5<2tYOz)Man9cfGR+_vwRzFg0<90XkJWtadeD-Fwj
> z+Ue{c?(Xb^)Udk`Q}xm7P(Dp>Y!|_#bM0ckL^~FWAg?$rdSf6oC8yk*=Bsw`V|
> fZC
> zx1i|i3M_Xe9J9jbpw*-
> dw5ELHV9!tjXcyy#d*c$uLM8gHws%nnxntdP2T96|Gr^dE
> zKtOlP0yvb?7WBd`e7s2$dJZP%)RY~Ck61F*80V(c?G3$8l$6<NP@b_dn^$2^HK
> 1f^
> z%jpEbz;KP}-K=29X6nf8SH>0RIv>5k%rDc0JB6j>uW*jaFW#qQm-
> ymFUE=XBtRB%r
> zJ=viJO|tL)_(ok*&%JPlc0qj$g5~<fwd?@LMA4$J(>YIaS71O^j=POb6-
> %4In2>?z
> z2#)0#ACFi_VY4yNFQWxz;vio<KeBhm-chH8V*Jj@ep}Ss$82;fMBRP-
> ws}BEwH9mS
> zuuYHGW2JX~p~oAs$A`QfpSX{A4-
> bCA$4}#JA2jgsGkZiF1GOSvV!j1;NUspcla|O8
> z>*D+GF}0%e@@OC4sh9QGOAdA}U#`Vo9-
> O=ty5@T9<^ME}5B1B9*vpe6VQM~!zXW>q
> z`k=9=-ajR}BzBQ?;+1_xgLOx_3q<hnxE)`iT_CduuM;Z-
> kM|BwUhX$wh4gbouFf>X
> z90$d5Nl<M1N3}-
> =JXpTsxcsjYrcT6A`TxSOmSeGrN&jwxSUHp_ubnr#<kn&~yZ+^D
> zK;zy5Buqb%n^J%EKG|NWx(K0<`q9<D6v5`*h)?qD!-
> `SL?cGA1b18Vk$ha*V65G-X
> zt%jul0)b)Q7+j3Y%A>~^@_C`c;c_2eZ5xco3xeO(jU1+X!02(0-of%vIyTk$^KCi9
> zrIMokF1(c8mEN$EEq5ggTYk3o=#&#I1vKZ5zkz-
> +s<G8HQ3z!>N&(O@5U`<i3K1S^
> z;%2B?$(W(KQ^HRzzgz<x^`}77!S^rpxPMnoVvR?YN1OSa&RA>6f{8U1?>cAos
> #<xR
> zYz67Z^%@b$Mu^T_ua&QptpGu~UK_P!8%Vd7ZNx;RcMt*QHD2=byoH4FHii
> XJ52T1`
> zv8ZJi+}5S;Maf#)9B-
> +5Z3VwPwrLk30mVvAL#5Bc#!w5RR~{vs2Z98&NEDGE(Q%&E
> zZZ5XL+UZ?omrI=#c%QQEst%Cutnd7?<e=jf5BKIm0u5h(dDx@&lc4i9r^p@#x
> a4oR
> zaPZ|%SU76_1`B6R!<S9h;hvf<Jhds!$rMHLOO<S1>2^p-
> h5w+AZ8!vJ6pnPRxsaS)
> z;Lg?Oi#h+(hMBVQ2g&NlCoEZeKczOa6AK$KBqNnRI5Um>-
> `uIj0!tqNy+@nQ?*Iou
> zXe0+>Ph*Kpd5DY1!X|@;Zhf4`Qg&@(T&yM*_M-
> %(?Bi3)ALyk^@(0NtO72Kozc5Mm
> z71OyjXHK#~)uiCd=0-
> QO{3OMDUV65^U3Ri&_mg!E)cPf5wvOB)pYA7A)SoUpq5TXp
> zB?&H#r$2|(u#996C8M+{2*=iJSdLwKa3WNxG07gEQid!yxW-
> ~^@$Y{8DS*CS4Cwja
> z0?;l(v7FSEJZ&=Cj2;n(KS>8iCLY{!c|Kv7KJIS|xuF0sV-(VJiA|(#%!X0*T2|Ub
> zg;yD%j^~2PKFZ5&)FLiQ$pT>cEjwDoS^Q2`;1|dPA`~m5*^ume;co(Fs~8&ruW
> %_#
> zC!v|v`IJv}tjOE^eod(*yOpgkY<QVAQ>XQt<x!jEh?F)iu?@N%&}=wR?<*gpWk
> 6}V
> zil!XtjMb~lv$N3X2^-
> wPntceyR5_K$O&4#nv`YAyr%%F<ty9WmmiH*lU!p)P&KV5j
> zVmSQ4NFrPmpVN)_IOu-3QunG8jwHcpYGn-^CH_xXD3wy*%Y_jY%-
> ~AJc<oMQ2@ExZ
> zx-
> 0~Vk;y7!>Y8Go^LKx5kyoL1#$Hbmr@?4TO`A8wYaKEJ@p?QPq)Z%5)l$h>k+f+
> W
> zC1WL|D0)@+9&JaS7j%#o&NPi3af})&NG6S=_n5zqzLj`=rZm~qGlM8Gr6M7f{
> mXYu
> zrLl8exTcDzjABMj7B5=iZ`AQV-
> q`=wESd)WE4paVYE0D^C3JoG5Ef`OWo%$&0S`WH
> zPbaoC=S{-
> m71cNWdi=OMnr=y?Q(3%tI=`$#ZiI4@W%c7s<!ucQlUk+@k5e_iAw%v^
> zTzDfWWiBF$fiG&G=z_T>yaC45$LpPvh+ib$?S-
> 4(G{`6`EGIm3+3lID!zVkD$@Fxs
> zrsFk{6~9JOY|+A7cLTy3DC%s(-!cnRx@vdJdgCazXSFKJklPxm(PxI!Ao!_#@hf)+
> zDe<OcEAfkR(?heOq;(bcG(D<3QWRZxQ_=IJ4iwA%Be8W+H(es?w1+u7v2js+
> yc!Tz
> z<ea`9%f99{$0?m-
> 6~!a9E7FL^$x%toXPqX#b;0S(VU@iu*~gvv0#0JgVh7mtgCro7
> zL6FF^!~|M?%4{s5D`K-
> hh=K_fw)1iq4$i`+^~gKx!U0!M9y6zM9={P<ds#vp7D5KR
> z(DPiB-&W%#Ier#X096RLKBMRNVy(u}z=+Z^%5LLB#@|YXP~0BVdyPv5M-
> js+T!XHm
> zV&ojJQH!+Es7MJO70sIbAnGzbGehy4O{IQI68p%0A1ycx@Or>tv1tvj27l8BBY
> %+u
> zE!O1cv}Wxy#+0u_>8H$;j~P2-
> p@}L8xI>rTqF4tmzUQCK&N2OTSribyP4P{S0pxEm
> zq4JCOiNDa4;#W*fDDfsfGFuYhC4jN2Xt=cBT1bK<Q>5<n?8ETphhJolhtH}r+}BL
> L
> z`W7b0`CO_8Q)x>!`aeJyBh%_{snE-
> z*)Qq2B4^8uuBJwZ<NM7%{ytly+{0@JcS?DK
> zJ=dJfQr)TD2YdwWzmlZ$E{+9g1Dd^v-
> *bxk8=ddY3K~w<zS8#2q7EzvOQGr^uMeH5
> z_G1|c&^>|_o2d^iU8-V=$y{SP9Aqje<M6Ux>tN!tDO#e=>A!B@U{g_r2(riu-
> uuX7
> z=F^yIp*%R|gEGOmK%M!s0q~8z$&|;>-
> _4xZ3OxK<F~#lKdJZ(I`b0XuashcSFX7X*
> zk^;ybSrTP4RCY_Vm`y|wW2oq1KZVN*5^PpK@g$R#%I3III4gJ2<nKN(1?mBB
> NnDE+
> zvD5qot((x+TSVw$K)E|ubVcLN8k?yrGx2y4ZUkODWvgT9CV;k=*s?4|0Rf&;Sw
> ;0y
> z_`avi_i5#v-l~0ze$oLK+kq*poo2SK$GN4jieJRO>4>ej!@ik=(CkBvkoKy!!pVd$
> zM#;8U-
> HU!FdQ9ra=p4Yy$i~iRJ~~lgkV=7JzPOdHF^n3be`qhUg3rZw_6mNdp!nGr
> zh3<v#O$!((T<!+Sc#rN5I6zKFNn@B|=)|di4kJCg;+}`-(mWnqQTm)KSf)Ny3CTyi
> zUei!0oQ9qi9V;rL%A(>5Fq!=rVJcaOq#6M7<Ww}$grQaVQ&*_C6(rAaUA~Ek8
> *oH@
> zvHb(^MO9{vY-
> )v_m36lXW{6GKrh5JeHkupF=4%2Kd>NyEs!;A5SOUq^8!RlUudDFZ
> z;pEi|WaWc2UOsS``M~1lW1t&;-
> WquvncTr^Lfrqt!Rv*$MsJ~?!KB3a^&6ake%b`|
> zoeAh$6A%O6nSe^2R9I>Q(^V4EVD_V`P$=<BpWLVj`*15sa+jvalB-
> aW5>g!{ADiLT
> zvX4lSr}|o;ii<@tVMdESf2OKzs&r*!&zBUkSgJI9wZ(O(arxKcxNUA<@!dAtEt1
> @Y
> zQa32h`}P?AB)^~0%NJ`4mFRgJ5|V^4xRD4F7#SqcLI`abK3Mkb?V`Oc`RLWoWq
> 1%$
> z^fuB5Qrr#pcbQE5u4H*Q_<6{C3!VL{`dC_S9;=U>;r4Gd+`buZ-
> yUwd^mv_Ru9;>2
> zEhZPcDD?f82;H_y_H&%||59Uq$<YH^uEg(4cx%aP5dFGD=Y!~?5W>eSQkEN
> d_$VdH
> zNGA%??>LD5Y&z|HsV9q+SfJKv?Y$x<<h4Kz$rh-
> VbVyOcR*^3>@K31}8>|a$av;fZ
> zqz%IvMSKwG&_kd*u1bWr$}<V}!;rJWDIX*uN2Tt>?Kg6$veVd0ngFX>5pk;&T
> Y{7+
> z8>@C22YYj-
> PVsz>zoVWqydK6_4b6ks+ScECCNN@`;^+dIT|q)<tn>j*>!(&NBWJ>!
> zwe&YD{c#7zp;Ju=QTV1(uRiHZ&0FCc_s80L^*ifl&3-
> A|pO4qp?6QwH>|eEdb=~~h
> zFkjcJb^FJf`hmA{xcM1*Sy&%;Mzf(zlOYi5vZ$|bRM&ug{tmv>s%vGjzEQ6tn^q
> RJ
> zwHg3lMxV*2^e_IQw(&dusPnUpYJD9`d^WQLbDla)J$ssZ?lhU7Pn>r(`<HNk;+
> (Co
> z_nc`mzczX)lcA(|cP?lq<TTJE@c7lJ5QjdM#g$f6ol|sV4YY1!+fF*RZQJgoW83K@
> zU9qi>ZQD*dwr$&H-
> Tdd?`*6nC54GRwp=x8T@0*jwqpw$!x%MZ>eVp|&)|wA{6B{e_
> zH)i2FD(Lr>5e^9E>rc3s+E5X7nlyQ0fD;+{nzvUhBi2Dx4~3wB5537Rqdq#lI4E}s
> z3LE7MSxhworKt8DPG$eI7p*eeH#%JgYb@&evuXxf+j^z)?%HI<yW2m4CC=t
> Hsmw57
> zYlJRHeOl~xBvTUClGnxUGtFKkzT?m&$4=5T@U#`W>_z^A4V8_D1|Yfu9|Sqx!
> BdeX
> z24qXvQ$443wk>H*V383(4I9ILw@ZoI<~c5bDHbvOX$XIi*=)!^9y&u~b!u8!_=
> Nlt
> zFB8#OBTxPxT2h*?&o70;z&vLC7K~2|m5-
> dYp~RAJg^{ndjnef#aHG${jpBL7@gi2g
> z`H3@F=lM>`5Ne4<db(k8t);?-LuGxX(zoN)Q~@Ed4+K*-
> TFK;=WLUrJ1iBMHriQZb
> z6%x<=Z|+gcc5<EIP~fPMX^06hlT=f+k;ve?Q$ClbSaUO4%?0Ck5d#)$Y=Z#Ngt2
> Rf
> zAjy1LMglYJ!_=z`V!^gx7EehStZWEX;K&KuhLV#BN#@`zQR1S0v>=pf3h@P&)~
> 6Zr
> zV<sy1+z8)n>BDd?pGIfT-
> |?O0q%0Mcz|EW)hUs<(8mbFh`2@ul@*MG#M&hwl%OrP}
> zn?fD~XcRUp?8hZJgsJ;D^)L2CRxv$lnHf%`{C?baS`rL_-K4!}w~bk(WYZrT;S)9(
> zs4WKuMySJ<5906iWUdEP3Xr&=Hk0eBmD`mSXtJy*%}@5EDET74fr?M_&|#j
> 6vJVjn
> z)U83Y_Yjy%P!mT}^Bqyqqwb8o_D2BY$8{x3dQ^+STFlY+q8x*sf^cOe^3bY__t
> 0Z6
> z3`#uB{O4}ZiUti~h75i_){9oGFadUo{EwyNL*9^^(=e`+{<|-
> W{MFl&|8pP%Dpi}v
> zmU~y25nsb;2bx_5;~$L60M+vpHG2*0@t$2--
> 9MDuZ1Mz|7D)k*&|OtWaWRA_3Ms5U
> zVM@>;g!n#(gnP>0XvZ4?-a*5>_O-
> BAxv1Ag)CrN2MipD^y7_J|<)8OcPGY^!1^fLu
> z>3^aHZtt`_R#Aqdm!kvS<t_*=!Z-
> WD<7V}<8<Asm_lSWjRwBVtu{W5(@O&>C>^?la
> z_KiAwH`?smM3-E7gqApgj$HUv^_D~zS2-
> 8{f1w)yb6C)!c6Hl;^?`}L%YN3UP(%uw
> zh<>d-
> yM2#m#E%Wn)eVPcUkX2cj&<mjO}Y~YDFXk6%?*LoZ5}Kss$r>625ZFOre)j9
> zt84b{Z~A}xBB(1po={({`1vFfbLta!9)(3J6F$h^)VQ~G<eR_Ix7Q25!;T>KwHdwv
> zYUVOU;=HtOeSqm3*~R=fYu{kJe)WHNT_~LcOHb}wSDhh!nAr00^rKg!PWud
> C2<WrC
> zo~zbe>r|H^9^M|U%lXU>!(jb*T)*+F7~-aM*-fabByoAIu9cr>;N-
> D8L#~;WbQIFL
> zcZTtXhpD7er=vy1x_CZt&7u4@{n!4mkA_0Co2M4`?;F(VWg_bY*1x<efM*l$X
> U<h#
> z?)=In=~*9Is!W)%!52eG?TZK;I{&1cc(VuJCNlni$gZCa!I0@2_tShmb2v(tFRj`j
> z_`XeXE%I`-=`{mWTS^KL`dConmK+pw1l{?}Zd4r(2NzoRvO<M-
> ^O)bxn%{g?o10ix
> zt4%((eu^k}tm@@2(jc+zo75-
> quDTxo5eueHzljCy)U?K`Xi8dKnmxKqwxhN!?&x&r
> zwqW?JuTBOt%hn;+OJqM(L(DJ1S!;g>fKI}WgNwxm-
> =sbHQAG=>?fTyFr}8VW&3;q9
> zM&g=EEyj**5p{xOc4j2fn)Gf$e~H~<X1n4*6K3}Tw9{#CaTKJT3ARDtW(N^7VK
> +%J
> z7?N(zV1p%2Xs8x{J)oD@GFqP?vuM(5QtaEJf!{XKM>9zmzE-
> 3Oo+l0hO>Q>U(Lk_n
> zfJ!?(5I}=%5BF){b|2Lg@V*^g!h>|lkV12}hZiNZB;(N{!v<dt9%S2_Zq2BM%DrN
> b
> zK?8Mr|C$!)F$;O*aVE7@3djANi8TAC8<>4Pz4N}#g0+&-
> SFRXVm2~@_VrYk{orZ8_
> zSKo|u-
> VU)XD}O4w<i^vT#B(@Ud5#94Lq?O$ZrmnOE8$+WsV`fZAW(Gs$(aO(Fnz3E
> z(_buG&6%avMVS#{H@W-
> YIhyu8_hQkix@eGR=2=Q@nVe(FGM_yAA5XS!)+D`y1}lrG
> zSw^D*rS^mDej~p>^6PP81HLn}#wdVX+uDNaVXh*}1{xY2Unpn{%%NU)oV}z
> >?$JeP
> zlOa`t4H~JHVB@5Av%;`Pn)MM})D2<D$|A$XUNN|-
> bcNj;6gZ)X()(+UKX9K(vKoT$
> z@hMRYk%kbixNHVupgRVbTzsd=%{S?OY^?>mM2%9?yjc^H0H}!CNUk@)M
> D-D734J2d
> z3``!OxiRK7f>Mid)Kg){Vf|_kS^pm-bpkuqHY`J^Wp<_u$~eRl^KYU$Q92XLIU{i`
> zCWL24w<;7>?YHRUf_>9Mi#r2j0-M2w=Wfz-
> gfmMUQXsA{dZ<)&_nffT8RUr$cLm|)
> zgQ#soR;)a`bi_!y^`->^CO9PCwR~X@bdfDm^y_j=f_ZLp$2+<bIri*>uLVr6AjiHj
> zxJT0RG<n=R1V{!3+dbP@&u1;TWP&P&N{aTk*|Gd&NDz0AfCbrn*MTB-
> !}sbbkpUQ8
> zb0z(??$NFyH|9Hib=cGKLVhUp>o;#bmvThE<(#86ygIbN=0@rExbO4bcGt&u
> M|Sgn
> zKBC=iyCEeCDSh=fSask0ey_(52eU%c4Y6&`H011l%YZc}kC^@NLiLi?m+2c%Jm
> q)?
> zWk`>AkRB;lf8iVFJqZ14f?Ha8m^~aTr;|NaCM`(<M$_-
> L2_+*2F)R|6ugA^TgVI}#
> zc*~u?dgq7SSCrpiv$uQ6(}u_f2cnMy)54*CQF@F2+=rHy(BizXI_e`)Be09!Y<$4i
> zh#sVa#%qQ>>5L0W`lcIZ{_{hq7`Bt_3%I%_DKH8YT5Uc4F8(&OtI8a1+3fLZ>OO
> zG
> z3jlo_THOBs@#wo`Zv*Qe)<!$Lbw;BXR^=e*+1#etuXo|urHdW5!y=kOLz(xgs!
> x$R
> z<U3~ktG?9-5EN5zV?p;rJW8fs7-w}H8+7Nzo|Rls6CGKiVjl3=tT4eL0Xeu`E5+$D
> zp!f{-fQLk-
> H6d9OC4=Cx@Fz&VXYb3cYm=)y8*3r8)?fH=;ktO)w+&cO>B|YzK|FV!
> zU9=48OmhBDd;*G9v7%Z-
> rl!d^*DI<z#9|jj3?8xo*?v>RYjbJ0x*B2TO|3=KbU7g=
> zS-
> a}>Y{nYGXO#2JF}sZ+DhsPHI>+kdn9Hu>#|s5M*iVbI{j@!H_p~`}#bD3F2(}pY
> z^QHGb+z*Qwa3Y09NAsDJmqNE+_120+r=^QmtgVYaF&Z5c<yc}Hqzj*rXAwf
> RNlP*=
> zHKw(#&25gCb=7)jYSuKi%Z!U-
> w&T5ZX~B@rZ&Osewwav%HL<bwtp0V@%jv?UbfCW8
> zm#{(Ya`HRpMU*rCCbJN%9T}|tj^vxBU?z*z9RA8$U|(wQDK?5E3wp+2d3qh{
> d<_iX
> zp?W@eIl_;k(n;Z}1)exea2keu9q+Ni3%D`R1GVn}x*pc%J$m3G*q!eSl^l@GA9
> yVd
> zRNF4CqIwYe_BVV^|Hlcuqaz{0`$XQ_&|I=^YD#S`;Q?`{fT+7OJ5d<fDHiZ=yZ@
> wa
> z@c)mj08)2`Q%a2~tASd@41ssd{fpa&DcLpu&)t~$1;SJS=s$>5zFSJI^6pJs^UiGj
> z&QwS?MZ!rGul`$lv`N(WOOpb-o<A&b(7T>H4aS9_^^H{frcEH-
> xpbi^EZAG>netPe
> z@mi~0en(w9fWNU$2lM(Uj2VU6_xqmuScGa8ev)zkx}E6uLY3U#r6L77D;2KM
> %84bP
> zBw+G46#aU_MG2Q!A`U!~ip<8kl!p{7l84;@>ksnMV1_ZLJ`O@`IFCX!r_%Ik1*
> ##|
> zh!5&gZ`bDQm^M`PU4G6%7UN_HSy!5Es-AxaNwP9!C$l;Z+#!-
> 42wvn%m;M)jLl1;+
> zaF5<<wgP-lsUp9mzOr6@g{thxPlY~yD}DcY&|83cZc1)2y6^4{*;iljPJxcsAU?kF
> zj{p0Jn>sClfor*-R)l^_;fpYcWNK|LXeH#S^WLx~km;{l{`xzgr_hfqtP@5qBO)Tp
> z+52b!7X8pBK2YKbb8u|ysBs&*e~Q`MZ|0xyYT~e`kS49mGElagEd&#y5%sR<4
> McdD
> zph9Qj7xT9y%}UAwx5<4=IZ%I6D$Ky!n=s{`3Rk*?8?7Ddw{%(gxg3~?P`+nS?#i
> 7|
> zhdy3x1=nL8{DX=GMIjKQiUG=%l!Pi@(LVR?b2Vrh5v)vIl9gDT;ACQ9N30?iN&I
> Uk
> zVvaP#i%2fQo$DQnU{&(xUSLoPF>4GyD#jM}BiwAzUo>o~@?H9Sw(?~2W-
> K$j%IL26
> zc>>5!Xul4f>fl=%-z;PC5OW0ah(A3uU!UZ~q6&Z2TAEh`E9t5hl#gXT^BD-m2-
> vJ5
> zTd9-
> dCGGT15Bh)NF|f4|1PtWUd?l0{0ep1I#&3#V)M{YC#Fa2cK+M9k0nO2eAP^>
> W
> zQcE_Wm-|CgSNJ4GrWWQBstwP(-Xu-H8>L@g#E*e4J6RQ5cCbL8gVRT-
> MN`n{cH-kB
> z)$`r|)%?A@o!1P4(n>&!wkJaM#8+w#YRLia_&TzVL>lz?&0M_<uu7s-
> uH{~kULN;{
> ze6f|5%azVQAaL5gU9?$Qi3YsAn^@nScTJSn%oYbczCY3Xnzw&v>%H=}h(5hG
> 0H09p
> ze3Mk0G0M-K-JN&56`)d{S>*{H*C6Y>TSf7`2$gsAI38ua{{`Oq4=lImCi>(Xk+-it
> zR;aV{S9E#a8E|U)Yz%+>j^ULO>SoN|D+IG(8)R<iWmo@DS;iNO2k2Mr`kXw9v
> -7bP
> zV~E9_LisdK@E*nLfb8#XjrxF75j^_Mw0@$vfne*q`umNzHUDt{t&ybB>1P>zr
> 7fFO
> zmHsQ$41rir*8{rW_HONa>{d}5oH<6#1OeP)R7Zk;^@;O+C!5%FH~L1*(9)Wy;6
> _*|
> zWn(y2%h=OotHMIJZ^HMyi)@n`UTK5gcm*Ej1}2LToHY8_HQ_t(MH{R|2VzO
> HF-TtZ
> zFK2D)ePZHlKJD&ye{J$xHq9nV_6VJ%dbJ*8X%^UtmG8`d&`kW9(X&TI-
> 9*{dx%`-7
> z%6jsVQ?lLlU%qq|axV@n_1pNQCU}MXQG!$66`TZB3{u#!XXSGUFXV}mj3nH
> ?hS6i3
> zO(1Z%Hl<gz1_~ol!q%1g;@3|6Q8Df~7diGyjiIHja=7S^IF2){H8OV`S)oB%bFI}w
> zU@DB=TZJ<u9>j`0gD4z(YMCr<k*Zv*-z#;AY7bJ;^j`48ssXjqS}7jp=hNksFCo!<
> zHlMwpe9!;z^8+4nynqN)Sv2<iSxp$+x*v!gWc%i@262$cO>mYg{(7@7usQH0P
> #0w1
> zx3eGfTq3Y7w1$GSHCSD)=lwvj8a`N!ng9tQ+vsj-Ry2IHnSEgG50R8QP$S1X-
> (%Fg
> zy47CdO-psfW7EbE2i1<WzJEfSJNnewe2>ET;P5-
> 35E75m{aQ7Z231GE6{hb<*bUw4
> zFiiBNF?im>6K)BF>~$$b((|;O?fb{o?s`F%`|;vvpZz!8wZf_PzIm5Fh>hm<VzF;M
> z>*)$#?8gnwOsL2+X(s`wqq`A50}9`T1#eoweeHiym!RnKoSL;s?dcmw-{+I%7q-
> lc
> z7dG{gLIpH~K4>{K2??CvF$TYV?3=eSlzaoBwoK%KYVx_Hk7Jks+J|HEyI^4WoD
> A{+
> zPp!lmC-^G~KgW(O^W{y?iYhd*y}>K$L>>?LBR((qZj}-
> 116(gCQtpr9OkfDK{GOp-
> zs2Xu#a;(L?4FR0>M*=Zmal@fkwC7RqWd%y{sQeRLk?+0(+x-
> !F3pbSNvLNvZdt1Nb
> zj@aFW&N%q~2UU%QQvHF@8&M)~DQD>%cs+U<nDFsIoB~WZubHXDi?T0
> ^eZBMTda@O8
> z0s;?C=f5#}K%{R=2)54YJglVftp35h^kGcrX>iyF%@Ke2-
> E1NJKTXDOyY$U6_Nx{5
> z)yVM8!iQHpu@Z>Cpo-Dg8|k(0T?gSS0g<kd!GV8vMf2-
> <<j2f>?8|v1KS{aQfPujQ
> zMeL6s%su)Ce~9R5=~Dq_pFy*Pmlt2H_wBQN4LI9tJq9N&LZBH)q}h7Hf&rBJw
> ZFQT
> zJr)z@7fs7DYg&gBZvcCUuQ8dd=Z8fY(l_JRObcRYkg>nFbgmZ)u=DfJ-EYz-83TI^
> z4pg!W&2Puyv0_fSy#K`eg6>f`A%W2Nmm?>^o<WI2Y5*HXa@0xdJ?^Pb>$%
> d5trtZ+
> z(xzK}$MA(pAzFT+;D@wbJp94&*Xk6LXoyp~FxV7<;iuKy;0Z|o<GN<#U45k@+
> >BH#
> zT}L}wf}Vrst9qI89_mO+9Oz+6n>Z{9T_c=3f&YoNt)KdxYS$VLbzo7`)Ya@h*>RI{
> z&ExAj0SWo-*MQXSbMYf%s$+V@sNY*0YVE3k<%-
> }LwQZm^)^W%xEZX2imW@-a_b&Hl
> zIuH`%(o^+XStRZjj)ROQcJ!X?kcaaCVakgth3rzpl_P37LJ(rVk(S#Ouq1Nt2ZMdW
> zL65?m=HR$~+q!Gi@aPPb(unoB?&fj#`To`P%+?Hg*81*n`i1vAWzZnknH=vr?K
> j<b
> zJf7>?%uX3WY|3ywK^)~2-v1q@-W?*!f$myC&lIY^bR-
> _0i6Bx46lZ}m*cD8N6v)&=
> zgX8`CVB1qPn?uk@P$|ZnAl!a0;*ng>Qi8rc-
> LvA*yyoDpvm)`I_79uz&1vQZcMY^y
> zM^g?<Y|*F$S%IEf^ttOkvUl{>NhE&cnQ}7{GMJfh-
> ~)}h;QI;&8SM2%Vy1J`hc+Le
> zvj{maDsiL)kC`UKpl&+bsGQd}pD$~8@(5XEsE?JzOwL&_Fq4z{{`x`Gxv}YRK@h
> hP
> z)Yz?~rvZ1mC@<e$SzYmToRXr3aJU;6<N{#JsUhm(;eT;cbA|5aA~j+EqI|r5<^K!
> {
> zcuS(sm{thMpW`~d2;A1Y5jwuFk5}+#_?Gr4T0C0NuUa<Uo_{O1Z(lp%e3$FOy
> w6Nz
> zj+zB)_Mis)aYEAd2#X#;s_uwB?6Zz?T9~2P72~$MU?lSJf^quIHmw^-vMo3}-
> gf$~
> z`;O1vusCPorM^g+DF}a@?%~a}(+~X0%_6eLbU)%%CUzv8A^b99JaB(+fqof$B
> =Kp$
> zS%?$@l{7}8+^rQ;92*D6KfXN@Aw1vLbn36wS{A#&Ip@L_+7PsNd77q}j<6l!pc
> ESF
> znaudp61pCgg_DkS7ReWQg4a8|THrY|{Pv>83|-
> Z0@5epS#SqN3(2xDE`ys7kLHNiy
> zA<ZOx`8tP}zn^r&)dNe)BYHQ@r-rNZkiB2#(_jzh)0l7`?ERZgbouia@VQdcpl2Dl
> z*;lgWLuO3JxFoUL<2O6#_X(*Y-BRd}-C>-g$2{w8fr5FrxP&i){i_aYoFz+%M`E39
> zO9Mg(wX{lXUc2*3$_lbQw)AqT20B!#%AC%?+e(j_)+FP&x2`{<m|7VH4LgWb
> S)oo9
> zMNLJyI}Q>wYQoR-TC}Z~V=-go{p3DlPV-
> 03T6xePk^ZzrBfQFTZ3HQ5jwsJN4u3m_
> zp{=%>PYY5zWYBd??0r2TMeLUzuv8Wi#A!vqKB3H;sH-
> |x+?F!8^ipfRXuML|gMG6R
> zZEnpUXAUqO+n%_C5S=|L0R_J^)0i>d;iHC#ogM<oN2NWE;YM7uen(J1+?DI4
> ZqQaQ
> ztiUl1(}SW=?@W}plvd9O6A{3ZencUzj}g4-
> H__6Rh{6swA0}Ynaq<+7T>PSjXA8bd
> z@M~1%>F#M}tT3y~l+NMKWmlQGK0ny|Hs-z_8KNzRm7$JCM97GcHbfRH?-
> <aV%xrDW
> zPao{X4F|7AYr#nPvp09uV~gPjY65&8$$@>oCxVpP`fJRImms7_CMSE02dlSaC(
> ZYQ
> zINJJl0G7?E%20gEf*HO&hh%KOb%DGXsfRv*Mt@@(N&qzm>R^%muEPgI2D
> ycQ0Z00{
> zJFM$vL=+HUuj@6)QOG$IdeDf~n=-
> C)_Rw1#tq?6vyiyk3uT^V8MGR=f=t00ub4*vx
> zBJsJWGE%QE3FDngCte#Lj(!@w^?$Ll02a=U5&!E>b#u!7{8q`8LkaRRi$=yf&|~
> 6=
> z6!Lf=7UNkPOJ1%HFzxGiI>U8VELdq8P8(f+6ZPQ^pKdJ=seat_cx->p;!glVDxClT
> zj}6(hT+H8I>Im8=dJvzJfF{o%OuR{OobRsXwMpYI?E+Lm`-
> a9SC_)&};rK3bEy%;G
> zxPjWU=ymc)w$uIOT;ooWaw#e9A-
> cQld#K+0(Ri3Bmx`wZcRcojA>$13ER_}0&cV&G
> zRR{{Aeh2lsR0Ej!*P<)d1N5i+ake{N6;$@mJh>1vOVcfp2F-
> #W?oYa*j`D=}l^Dw)
> zzdj^>^S@yu4t=PDMC^H;Zb|KIKPFBA*T+hku1!Gy8{8#F0pDFevw=O4v3tPD
> h;5{I
> zhc&ukCcF4W3tjO;kYUqdf~oX`BTWDE5cEc?->LA0zqu0N5p2sg-
> d8JghFW#WQVlMr
> zO%D)H0CRhpJT(((c}J<*5}Ey#GD{`W0Oxt6L;zMlViXi&GHw1mH#0`c$Ye>ju(I&
> o
> zfw5%Fhcn8XxO}}ZH)8Mch>FZpFo0Dho8&6!-
> ;|AO_z+Gd$eKHJHWz1B<dl$S_bIv(
> z*h`M<UeUa-l-
> 0|iH+?Sf+hK$D<U4Ks{OWssP;k=IwAbPSqK%l0J_LE#`V%x87Q63N
> z!pzTz{l-pTg)}$2&x4YoVq(-0{hveMU)g`Fqzut7>%AqKgV?9-g%^@lw-
> )8`GjUWJ
> z0uoGL7yCo$wW&LF+u|Pnlbkb>sr6ddI=uLo=CLUfudV6fRCAiFZKCa6l973YUT
> S`h
> zu8LCoJbn>(-~C((keP!GT(x3NldZaw7@9m@U3N-
> %3D&=?qp#EWK%q4qr!I`nW(?E&
> zhhO(tkyC$&Frjn8bETa3!nra^q-8K%!go_&_WhR+)wV;V%Y?sm1O@eBqJ-
> fz)BWlq
> z;)m(=+sY?P@6Rf^<b0Hb{k98<{=Q)yb^jPoSL1Mu@i%_11r~zlRJiYWCV0WhDf
> mZ(
> zNXVLKIu<%A)$iISiEId?;LzMt+B=?fHeOSG1+LWee6ZyJJF?(=AwRa~-
> x8Z3fGy3M
> z9ml|{9rR<M{WaK(eO+dA-)86-MB9aWGS-m2iq-
> RlpnAxhy?3tU;mXUK5sygN7!Bu`
> z@albivUji7)a(<*uaoF%WD^&U%eSXe6YRKC!ajs89O<TFE_-
> 1{VDvd%VXG53+M@k0
> z;@QhLn}eNQw8d*t2<Z-
> N@)*2p1|y58Voan!iC^#%zbA&%!?uxblN?e$FRI@4*NgyE
> zDLu&_%AK7s?brk>w-a1_@*hMuG3c^zN@vVPj_u6p?ClxnubDH`*eN4s-
> Z0z^{M*$a
> z;}qAh{uaZzM)Nc64MXOhD4gRdyr4Ru5_$dP!D&N$u7`dQDHfWb1`?znBOjy&
> gJZfn
> zZm{7Wr`%EO&@@a@)SWn66)vtU-
> (4*!A711nQ=+l%PBEZq4QvZu;IzmpchH$2aS&~U
> z+-XI|NvF}?A|~so*}rC7!^P}5rn8X@Yn<5pPQn?D+zj!bj%XP-
> &Id{_`8gk+>SRkv
> zY)5EFEJWPZI~sRjy#7Gj)twDiwlybdE*y+d&TqsW>+YnmEII~*VtN0)3nixe69O
> ov
> zKZ3Q_k%0#>c+3sdJeu;_jE$@i=XX0BgdKwd$$z|LTy)Q?URh8AOO}jXmbH#?
> wTkhK
> z-*Ni@e(VqU#-Ns8j|h8oy?yENOx=Ur*$~sDCO*^OqG)J-
> z6$~ZBCx#A*VfhIchiSU
> zwK01_<P^rIedb$@JJCXIM}uy*06iASkP0~{6jr2&<@49{ySZdZ1J7pLoBYW2cCs
> Ab
> z%dO^<7CZHLqdmhgY64=;&BTsSzk<Y|QYR9tfQ@XgQ)YRGAkZj_`SsSCk~mRG
> #%89S
> z(_R8^<{okfV<H65)a*}mWZ(G}1lUARg<HbPW|N){Y_Uz8$OB1frT9)BEY+n!NS
> @PE
> zgE1Q=A(Gz9oCC^IU-
> X?LDp2bt!gmF~5=)RPil?4KD!ng@?VR;96aNq3#m`Hbe?Xwj
> zr{LGN9^mhX(sOzX>9dKP**=6~NY{WzYktEEj)&>3^m89qd_f%<Rt(xRw<?XD
> y<#rE
> zzWncEa+zIB4vgUtIA%`Q87_%e8lIhWRue&L)gX?ipx?VYvY+~6W^w-
> Vg?$ITxj)d6
> z<n7Zu<E&;`4jC9?ba$pP$Q}o~c{*-Y2xtl)jJLOx`a6v)ERWE%sGViA<S@E3{aW}#
> zM{-Ml>+t`beGISR+v4M20b*vr946+(9->bcaXLj`=&M5jXriR)iQncUYb`2iU+lxR
> z@ojtkikFGkO~Ew`E8@)pIYTT)2yeBWaG15Yojj-
> lek(M3o%wf4o{ny>(HF|t`uXT2
> z1281-Qt}N7TP2rqApY!Eip(H-
> _Z^)^vKA<FSyT%2AA;EvNb<IRe?gmekoX;JC=N<P
> z!aswZ5on`PJ7EQJ&IJ*9L#3+%>`}@0xoPCtkdsCn4B)bV!1nk#^`(qRAsT9((Rpm
> -
> zG}lw{;IyY?xjiAyK~&L)vQ_h0)*eXP4OcDznH>ugeC;+}g4`kq1In5=N&kLElUn&3
> z%l0k(@mvul;@=k4fOA%48wjQj5RhgIO8GTU#N5%jDX*u+IC>pSj-
> RXQ_p|SIpeBx9
> zG>R#>vc7`LfS7=Yi#J*f%|nMcfMttL(=tdk)G&BGJ^wJ~0R|@@4Cbte<JtY#&1
> D%3
> zI;cDMSZ4n`4_fV8vI^eL)+i2z%^ovKF^a}Hv^!i2D-k(|kD5PHFW3`J?wof55d2p$
> zW=#Wmw7D-
> IwwtsBg)1#`q%C|ra*~osZ>Sq;TZGh#xon(tAJ&+?G&Yh|X8o*ghrxB5
> zueRA}Z5N#{*~P#8sPoPEiB6k<W`#P9l8`EDu(Wp0PNA)eyS7i;+PkR@pnx-
> f0_pby
> zlGXdBtdrFy)Wpve<2Pl{%TdHS^Qw%wi>ZxWRWH8lsr`u?fi9dd#&3MtJ7DUP9
> !m&;
> zYrV<o7j`T68`#SaK!gr$R|-V-R2VeU^cjlzCSEA<q^S+Z0XEmZjU?0SXs*o|jC}DA
> z+)FZoORyig4@`x%kZaD08o5rYd{)@7RW}9baseO|Q)uQdP!UHkZYch<R1_DV
> m9L^n
> z5FimMAus%@ej*LT0AG4#jyn;fsHjOXBsQ`GUt5fS(FcEKAQZ4$++)UuJdwaFC
> D^_5
> z=dg#W^c+Y{Tzi)V1&SeM#ePGDE=48znxmgB+3ECF8b#q59t%upK%A89j299f
> b^^=J
> zV~f0S%$v3osmgU^>*>>a$%7j#9W~<L6HTBJ&X+vk5`%nLV)nx&CZk0&-
> L($e25oAo
> zP_L)ed-
> 8mkIQf&%MRV@3FqT=FoZ4BSyAInzrm@`q8UU<>S=uSPr;FLU=yuw)v471L
> za!nU<ZBla7c^&?JWLi&drzr?;jKS=RD=g+z*yJ^s_p*pIIn_oV=@1UZwU|I04;IH
> I
> z3sah9l+*U=9i-<a>PNzq6;2WadLYqK7%>NbJH&ML7&>{Ko5G!!-
> FHN?__mE_p!#O^
> z$ZseSD;`HLMtHFz`G>QI<|<XrkEr_YiiVhJ-f}!TLztFW=<9*r_3?W^?;PN+qF^D=
> zN$Ue^LD)XfjE*zy%g5gPc$^pAM8S9X#k?3}`(hBRh6kDXAl=7Mv_j*7gKjA01L
> wh<
> z+%(`9$)|P|{Bb87q}F%%YmArR*U#ZXx^qi6Gs2W=TdBf|i7tia4tA{{^)8s1)da|f
> z$IYio8qUI6rR1R4FKC9S)kRu~ukjnBa!sgCvgI0z4B>R^X=~@1ItVEJe*=iif~PJ;
> zk8y*gyNXb0nxt2*Gu%=7Rpoxv|BTz8en54${o>XsPC3kdc8Z!L2ooKAg#-
> ~h#s(S4
> zG61>p^Z^yVe}!bO8r=YErNKfFGydFDZN<H!^#H3;-
> ^=FA$hH(wfMlxWd~=KXi9jc{
> zudng}=P5*kiS;vXM~|14PKFj;Ty=IhU|b_4eiG37{idQ?am4&{N|wiu&hS10U{w
> 0)
> zm@YAB8I|T}FwQN#9xG13Ww?h7f}@=yY;cXQku_!%NI=s^(gZV!Q(|L<iZ-
> #{6WXFp
> z3&f7}cr5a!-vOTCE1^I8PA^@3_FNs1y$V?jIs}6jVvUbB`-
> kU2rwaX$AWjVvb78<b
> zGQoL3(<>&TRvhi%lPBmkp5y5%(1kv@HeT~tvM+Pw_xTsW6#Z|SrT^zplN4pE
> FoiKQ
> z0<*`Y`q`jiFQm?xNZ%ay$ZSz;#KWWILvT{j6w>3}9FimMcwU<hfnj#mII7sC3aU
> V>
> zF>4H%=d@5pR^pute@2u_XrrIUxg+)k!N>37qh(;>9B>`(gG31a1gIlG0qpm>6a
> @C`
> z0mwglih7Z;Y4`erVINW8`F4J#j>PG<>}orqBA>*?!S3hbf0?Q}1h8wrX(@%w=H
> p}8
> z+`y)co;x+)j##}?q<(1UHhM%cBLOA<_EO%`aGg<x=+q}s1m)rooPL$QzV6l?rE(
> 2p
> zi=Fys<$a85PKA>5u_GCbR>)zK4tMh8=@`I0WrVEkRd}16!w(m9@|q-
> howZp8M>zdr
> zzeHgI8kHRQUQs=M#14*q%?V<i0+-KZK7ngPL!Ym{(8Qi!d~`l^QGWBJP7s-YN-
> Ep?
> zJD5JflSbY`A6^<0?@w}4Ii-LkIYggw+oa-CW+H|6h3a9Z!;fDEv^KopZkdmT5|9cs
> zl9$qnLW}a;m_<v!egcY@|Ix_B8t2=|&(oQEsh`0oMn!aDC~Ay(!uiRvMMp)nS}J
> lZ
> zJ!9WEXcFq^mdv$Px@POqxcAi_$PXpGoBc=vLe3sn^5J5dq(GbXX~8Q;qc9d>
> UHf;K
> zh!&_Hazt!j)c;jB9EQBhu&$8_j^h$0fg4D}>6&l?L2YhOmej=ULy!+(ETYyuto$`8
> z&=i>zUHX{7>@kKVuU#xV-
> ?s!|k6j3DE&vzvOJb>Y51!}YdSbX(_4*zMnqMuMdgyUF
> z`wzM^LYjEGrwMwAWWWtc9^bvPT3?+d4_0&Y+&HwFi6eP5rSkc%jt@0`WS?
> axGXql6
> zMK`}VvsFc$MTdN*)^I1Qv$tLcPMl24&wS|j+o=%K3P^D`6dLVEd}|tsb?0mHh
> ZOH$
> zU&t;qTRy}W2QHf*H8#($2G=`@zknT6K%I3D9k~Ht&$|b!|K1q`r*q<gm_0d@
> 0V2rW
> zs=H(c6;dtnBu@^Rh|Q11bv+JuDf=g<v)h6y^!_dQNW-
> <SR1m0buySnQ({M)2t<B)%
> zbf)#t(Dx^l!vgHr&4L20cfJ~3<>t9c)d+n5?Fp?c&`~ernd5s}>+8-k4K<6y_-Xx8
> z!CbDZNRY(Xr{@W_*DR7`r5*T>@2q-
> %3UD!B>TEdj<8}%ZP!jO5D3kM!Uffat{5>Ri
> zLc3Cc-^!re7#tm-_eLNI6|6uK<pCh|<oP}U5E6}iTviayxiZRAp(n~RwgC{zctrzZ
> z1mT_|TmeVVws;5=HRG_Ny#CPEAP!G4x|!wiR`MEEhHC-
> iLYlab`lH{xVcI2sA2SQb
> zdP!li4rOIjMiBM#P5+b>{3(8EiF^#xNUGwEY~+6c=8DaWXZ0SsM74hyAOkrmB
> PwN5
> zL2mSo|M*Suu7!?WkRzPIQ^bn`>hCx&KcNRVH_^W2`Uf4HS#z~5i{%{MRyi@
> %?8N$D
> zCAtC1rlNXdzFFWmu|knDT1`7e-!h*5xlU}M^S#$j-
> 7P$Vd;<9iF2CTL#*tK2olmGE
> zMzc7*Vs~Zl-
> `IZ+o#wb?j0GcQv4`Jwf<11!te5q3*6n!QOg1#JS&e9lsIndg$AA$@
> z)~VWjq6`mxj}n-
> a{LY&9@C{kAoeD}GV=wU$QT3px(<|mihSp+Mn>bTD_njAj^b>l$
> z-(OSH)<;ZOo{1kl{PyiF%fo=L9(~_8`aGa-eY4YdQfTly^4L>P>UW86pzvL4Ei3hX
> z-fT%~(y`MkJpUXVM-
> e#O`SuLB9KWlWgFAGMLf2_w4(~n$z+LW0P+|Rh`5gJk-93O4
> z%bh`5AsdqMw~a~~iO9MgQP}9FNm;z?9{69%0nmqU<p9J*OC7h(`(~s{nBbP6
> %TDxG
> zl($uvza^>zrBn(FW^YmU|JsNf{Ddr4GQh_{I&Ayo2HPbYusA~1BkPEL+njaX5sa
> wL
> z*D%EFGP+~gA{DRC@tMAc&*kjM;)>1^KvBOlfbVcgHL~vY;RY3nB{D|X?zTUio
> KlLO
> z8U>Ae=$gXs7_x;J_(naC&|$0Q0tA32U(bM;Yv^KukFKQYpA!fnU4F;dy06o^7&
> xGO
> zF8Ip6eDe$?cBuec{4c|G(65l@Q!H?wyszhn%PFRj%4;s9Eeki0rUipDlAd-
> ^AHT6v
> zy6USZ1a2@aT#h%-
> M~HLGs^$5u)*zC#{X^C+r$Zj34teh+5c@}hZeMe1S4#&%3?_RV
> z&`)Svjd*!yZiWU;E&cOS>G&(PB#+qK#_O_thRl^Rn2kj|rCEnvV+5rvqkxl8f5HP
> 3
> z{rDs+Ln5``BOvW^`L#ARw|56_f>M$JpT<Ui-aU1WhAzK3-
> %vT?w|cu7Cwh76OS?=h
> zuQER|?s#Y-u@+_yI_5f1^-
> p?zla7ae$V^96Yc22)`!b&rb4l!CK;LyM2OO$+WW&GZ
> zOY@%Rr)`F+$N-
> uctcw6w&nqX+B$x{SWa@g|WFhA@8L1G3Xx&ojwSfecLi#A&Pb#$=
> zb+73P1;(I#G1Hn>YBY8mmeGsln{>I{e`y8j{}swJ@me$p%3D{_-
> >lJIU{~pV3$agJ
> z!aJsDqP@mJ>^7lLrhyWUCh#n^ml;YY{3fFd>3=aSU4gws*|F-$5@-
> (9(8L^pAoXNk
> z%jc@SvElYiP<FQOJK@l3KK}SwEF+{y$6pVDzQN<5e?iB3g$7IUX0vQy<Je1P)tB
> ;_
> z(>z+{(~=#z<{YB^dDhZ6C1?k8MJQ6ihKR*|@Rr6DUSDoaoGS;5L?{sOXXm^f;y
> EdE
> zk-lj9UYr^ZIchIp&4zxgY|04LK8v6kyE`&0ap;_-1jQ%^O4ATwtcx~Tb+w|bH`{}|
> zP-
> 8D=^E2?VF_oauV1E^cI62AV%a1v#W_6`&i>8vc`ONFXR%o1s%jP(QU<$aIucU
> &K
> zFbyCOBuC=*?0-
> O5ms9j*2NK|N$Ja?nKM#bF7SO;H|C7$;2$r08_o77|Qa0i4F)9Uw
> z@Qvh+sAD2KN3^#wJR$qo0=*V;F<a>Ii*Gd@mr|shB5K-
> j#T<vO>o;Dv5xk~67TO9!
> z8elG~2=g`PCj8kh21JXlV7-
> 2_mg1X|Rb}EHcsIKpzmVdMw$&a@xf)MWWj1Y#LrQi+
> zK47maT%bgc&*z%PbaIDlve5dA&ZjmKlSL)Q<CH+zp;%2Kg4O+q55o6N^@L^R
> ECRd&
> zbaAkP;f%14P+=(5(^J!S1UmmbR6m^z@rg$(U&W5OKo`|NK}U}ap<v%0+Hh1
> {SdxMJ
> zJctQos3F|-J;5LcV|tYjFtl&6&8sHpW&D;ew`2!ItwWOv4=m-
> ~1ugGTuV0)JV96@d
> z`E3m+?qv|&yS=bwWVJ)BSY+1?Chx37;fXlh%qt%MYF34_dAC5Gv=-
> TLL&4GWG>Sqd
> zE~Y@s(P0<P*<W(JJCjm?hudH>CmOP0LDB1%iLlI7i&m1O=LG$2fCW^a;JFPgN
> j77y
> zKTa3>TUPJS)hHXc0_Keggr!qiM+0JPM{>N}ztlDHm{9f&Fw8mFi2Y-
> }G~a!_ZoFNP
> zYtwZhClJf9UFu9)>C3@AL`R3fkP625d!GLQ{nPnxBHj<Nzxh@ZnH`yHE}vV;Z0pj
> 0
> z{lfN%GmRL*0`p(u%_A$MsUm(TA0F76!eK8=09FGk=b8zZpUd>+ez658fG{+sK
> oYC(
> z!3Uo|D9Hp+gjsu|mx}hk9Cr?W9dlr3j7m}lm^mAGN}O{r{pAVi4dCD3m{G+j5V
> `5b
> z*rs+gPj$D4U<y4o-
> I0|cy%~J#Df~(~9Mn|@GR^@7|FmaE0d@a)IRL$}b9$n`wDR>-
> zKj{$V>>g99R>QsoIC^z9JG6BxFdNEfe--`t#KRNm*-e?`tRIVZzokz_>VlER1<-`&
> zzaf5v_Fnf&&*P4MdBO&xXGLBB7F0~6Yf<m~@FznEqcGRvkt9YiCNyq~8qdq
> mqpGLO
> z`xu$1KXqr#n8E;LEKQ9+De}uk$>4|hx)9L&6hg!JMx=gp6l<H(I3)<SJrS*og&5@
> M
> z)`<xDbQUQ#)J)*vD0a|qeAm+{+QGSSa)eMMmR{%=7KnZ<gUC8z363m76r@
> cblOm(s
> zVD!6DB6>dV)bH+FR$#O?{awBRMT%+fuj8Ou;8xE|_|S@w4*9L%NSgo(JgcY~
> unkJX
> zmqe3xM?jWLZfffvK2dX0h;>Obl7_Ep1CMtBUo^FPMKtTRi56G5LmbLK+`fWLl
> R0<O
> ziIVOZe&Y3p3_Me8&$<C0AN{5q(7!kNbJit9_6h_dKKrjGJ}`WJKDj$brf?R;l8uF^
> zdcjv_n+o|;Y{c=zvlv>yKYBDQp`yZ*?4#AOuN86MZTpEZ$?4<{<R{&_)+3<ODZa
> Xk
> zqE)|e`1dv5&qkSA&m{oNFxUa#B0u?XkkOVxUhNGStbR%R{Ojok4D6hnGO&
> mRn&vp2
> zlycMfAM2m?k=_ZL3U_Zb&p$eO9ABM+oqkp76gFkkjujW#5|YZEN91qM6=r7
> &Rz)Zq
> zF8XWo7l&?hPkbQfGjbY@MC55L;3<+16{;2y*+}JJdF9$LWz@`@rh8hGhg*FIY
> hX#_
> z_imbe<jKNmWn~Z4Lb@nfGFUL;^}ZA}YI$*>)cP~>*i8ou2<~Ld!%`Nd+gZ`-
> G|y4S
> zz?$(HRjtu0jb`2xLtm$dW80SYG1^!~p5{u_f-T%j8V#)$jc6A?VB`9V(Pr$_!R~|Z
> z#>a$Cqs4gVS1}mPY<P@k*#40xeNR5?A|+(l)43c+&-
> =7fAM<AihHB~c&6&Ea)^{u@
> z^X3X&kS<?c)TK^MLuQPS((*jqfTO087Mm{(BM2N{MW!M6ucWMj3LA)Nvua
> *S=Jx&*
> zr9}oY69bTA9h7X$vMOT6iPKdeq4<h|>YXy&_)ezfDDH__FjU6<1r0JUpy0I?8A
> ?yX
> zg;+>P>(L6cK~gz0B7g5q<|H7XquKqj&3b>AHl;6vU}&I8sQStScA%%F2ugL*_!T
> <+
> z^81B!Bu1Cpg=IH}?IW}Hhip3IC+R%NDaFAvU`vV7tK_KJ>s=M}3b!A>ga5D9TK!
> wl
> zvLe4Z=aq+!DY35`4DlG?OUT#Nk)=`IBU1idHL@Y1;@f&+Z=ov5Pc|RuAqf;cDna
> VF
> z2aeag?j<86x964<IaJaHtLQ0Xj~8kVG1tJKiN-
> IK<AAt}Xiz8UVD`^5mae@$R#m>O
> zUQ9-<SIa9TVQ$fU=EL*-
> aw+OQY2nb?N?hh`@c9t6ttKe#$SxR|!>$+%ic0N_4Zd$V
> zu+K&4V|ve4H!!vzyWDM5ZUoWGW+Kyo+<HJS%U>sV?j7DRD{RcAai7v^8Z$
> MyS=WIJ
> z9H_e6bC#DLTf1Oni!bPY?o+ztKrAtY<C8_ZpdKJcVh{=0o2zfvus}hTTTsL879m2x
> zP04J=yPM{g-b0r}(vR?r3)f_C5jiHCOgIXt9u2Yn&?e6luy}_#N~cY-t)}T~IB9!#
> zNyGXwI1@F5uv-3RN1?{lya@CrI%lN0wIRZP9anMTMzGAO-
> LPyxrDm9+WkP%C_Wi6s
> zwuO=SN?7SCmY1xSi!v^+#77~sHu`Cd!4>=VOeRUq#3&Qh2)QW0(vHNU>bx
> Pq^7flb
> zk}+ghI+D}A!JehI1%cA0ZPF>j>zsX@EdwFFBQD*0+j)G6Fj7e79r;wr$KuPk>9G
> V~
> z<~_FQtqb@)KL6r;B8Iz6fFk)A+ByYJg%HzJ`{F8k?~iA{?*Lf4iwDD4kwBfTSfL*+
> zY7q`{3Z_i3{PwLfY=7c?dIwZnUbpaGat+T=Wr)-2nNPIY#H25^Gfi-JqA&6wAfy`t
> ziWHcoH>>5BFfrZ))dWaP9<4t|6D={n7OcnY1-
> 9IIipyw!Lg+P7C>0g)6>X`mDX>Qd
> zW$*nce_ei!jlu&bva=ErK!E<eicYsLmsxR3K_I4V2Y{XY*}&Pr6qgt0_LE)&$3QbX
> zmWgknnbo1#HDSdE=1=CYAL2|81+!!a7Xe}X#4aiekCNUUOcRG1FO)%`LP6I{
> %w<jl
> zyKMsh?hjz5FHxOIdXii^{id^&Jp7K)fBQ`#@?gj!-
> 2hZQeFRT4hoMI%nFQKhY+R40
> zPNo)5wB1TWEb^7_UQAJBKg5a`$ItOs;esLq*q6@O4Z7^k&ne@?+Oe%<6$f|
> Rx<<6d
> zniK{A*2l4S)|S8>DdU^JJkTl0aJ}MI9@(loXCG)qyPmREWef6uLyl>RlJMA62(n8s
> zv}89G23NMEU+I6ov7gBM4z!U8cCD>$LpytT+`S>*w?l+K$gQdOF!Y)>-
> w(v)hPh$W
> z)J5JNDjk6*e&j?EyZ*i<wpQ|6{$BlkrB82%0M#s04uCI{zRbXs!IMqy?tW*ie&O
> Ci
> z+!D@!fwY++Ki(04{ATU!RV#bbQkn(#=9I63aHdYfFj2<!E6BzxVUY1XTPSGK9c1
> (6
> z;?m~QN~8T>S--
> amN=IwH3GkCzJrN^9RC~B8AqObj%b$kq?*os90mWa;YX=4wIy7!n
> zumy`?cAoyX={*#Ru~yIdcgi1S1%G8&NEr;vno_4vH}Gi8OHREDbvLXhFT+w{b|
> @m|
> zpfCa-
> uu3R0AkFSoi5@M2K};~sjZ6PkrDmAJgKuyjsuBLoz`+bg2|w?KZ1FDpT?SvR
> zs>Y;(y^&X}@5k5*l<#`|<#?OcS%m5P;SUX{aBJ--
> #dWcxTb7&?P`sn)r&$>{0_z?A
> zSa_%^cv6cr_r}Ounz3n8p3%yl-
> {royPP~ArbcDw?Bh=n%JCtvj@4@U}me>6eLr)5c
> zzuIAZ&CWit;w=$HsIPxQUu27eIOz1}wzIcekKwO+VtDclE)wQ*?Ix|8EnU_P?ih
> 3r
> z?d$_wGDGp>6am`9YDRSAlbaJ9Y#ifVS@d7TIILIHNGMZ3L0(%9-
> +03Yb^88%wu63_
> zz}2o)4C1LQ_f1X)P!tl=s-
> {b<W)o$<R=Z#)%fB%d!LP#arWoMdmg@+s4P<Giqa3<d
> z=XI-KJemAUvlfJy-
> Tk*Tpo4VN=vkF?i(rNH)Mzu9iJH4CygUG<Yw^!f^xHsbhPrU3
> zq>fJTPC@*UGe?j;_nAX=jDehyeakY`v@lLD;j(gz0((uyDKCqZjamxE+aD(W?0Y
> 5&
> z(gR_!_4yKeY|EDaUaG*YRGJ9p@-rghvBF*79;4k$XPQx-
> DlOJT#tE(c3&X?83by{e
> zscThKFg@i7GJgYRVPg!p{`H^Kr!Q`!ysJBgi1W~442TZ<OJswuvXO%Gd&d|>A!
> O$5
> zA+B(n93!WdZ~XXR#@F3wFH(r97C{9uHAEytB)J~Sif5>}!M`hUTQz1;sKYa#p`7
> Hu
> zjc~{8SoFYD6n9|Jadv0Ea5&pY#h_73B7)?w()6gNZz3*-
> FPdX0JCh@wmxoF)Jj}sA
> zA}i)UAe)U!T>!9D890Yk>dE03B+Z$X&$VTC1WwF+<o&zZh?-q|q8O%D5-
> $Ue<LrB$
> z;Y@F`WS7LwGEda~&?y(1Bz;EbXLSnn9z-
> G)IB5uR(EVU454`zI_Bku<66BkC;yFfT
> z=7>3(@w4s6l2c`mrl5|15zkm0MoT(IjV*6HyqjIZA3PwfuoYlTJJ)Ob;}(dH5ZF-k
> zhwNaPiGr0+y1*ctkIAYX-
> B9teQSgZ2t5M2dRf@OujWc~~kExPs`a(NR=XC1I8W^P%
> z@uf5b-y;CI1Nhw5@xGK{{W>3d^ZvT-c=_;t@P)fn#qj%(rJ+@=AN(q@1Y=m-
> Y!dCB
> zipI@A`{^Fic#~dd+(S-JuSZlN&F6~MC+a@*Wr~CQgA~_fxQ%<<sv4%-=BV!%-
> d^es
> zNKlVXj}hZfo{bo1PSq^Glj0tGT3uo9&&eN)2X<NBO;T9DQ`;4VB#EN3v)7fT7r!5
> +
> zV$H_LTM%zFK+|43tdo?=6JoSZqo=%4^<!LB*$!twio7o>$+H|T7gx5uU0&|}4?
> dtb
> z;Y%GhRnc2QN=jfk@A;}T&WGnyY`N%v<RXr+)DvP_V5VI;c=ZPND>W}o942_9
> So9f%
> z!@P!_VnrbtB<h1nz9u0y9p2jqdx@!BB@a2h_xB2M#|%&>P`a2a2#l$8!mXe@
> fK#&l
> zwN++v1iUn=RqYC8D#%5eh&WXR`<qiJw;~5h^G#aNgZJ9@^+j!q3b(ESgwbM
> %0CnDy
> z$5EJhazx;D%EL0{d7bY?g2wFTZ3^eIyv$Iq(u@02xGi|lp`k(?F}{NK%}E@F^oI3o
> z&NQh0PAQ~+CY}OF8rhMM@S!gYd(8K-
> Ns6qXQr4K)7Y)DcSAELEPa)B%A~NfM5X>v~
> zEITXoF+Oo!Ka+X@`5Ks;oLh~$2E*p^3n~6c$68Y1q+Pt#q|)&B6$J<J`dQU**h^
> Hw
> z-d^CJxx~eq=6}%mY7Jym>$KsmK)*2RA#bI9{gFE3_-
> Ra(O_y6(HtSiGvK>mx$X&1+
> z5am75qvPcI6zloj6v$OeT85{xRSi`agS?UQTGjIff=El6o)4qcRv68mpSQjhWYr=O
> z^GH#L7l<QOEJWED`rbD+bN?a|W$v4cVidvB@dh~f<e8()R)u3Dz?=IOi{ppHA
> O1;v
> zul5p|6Z`YSLb~F(=}tACjp*jTH^P8P<frTvs&&?KSNgGzh=b~7a-
> Q|4Rf=cw#IZpq
> zN&5_;iHIf-
> #O`=0whs{3PtqHzlPWnv8#%E^==xhK@Alwc*px)X*4T;IM*8>SW>mCw
> zv8dU$kN4<@OD3LnjTA`7REniU>H(@Cm0bpfs{X0zVVo`14^V^OvG{y;Z%cxLJ
> S!S;
> z#P0f>$nG(|lXB28LKEnd5<B<xr2^h>>ZrJ@yD7t?3;JsjBKZ^DBhgyH)cR1V9oTB
> n
> z1whVh(8N`k{jU6w+(O*aZqr|=r4Y*z1W87)F?hoc$0GC@IwMnvqZC%0Mt)Xi;
> H>rt
> zlGtD5sm3o*H2mnGM)1)nK{}WX%V60n0#N!o#7o(I7O>ehJ*lS+foHU9Lv3+s)
> kPBI
> zRo{c7&p14gz9+v|=4tSw{z-xC6=DPd18TNx{~SDX3uK<~lYjlcLk5lMd#zzlqAo8Q
> zX~6#2lsI4EV6o5AxzmD&7?&)QBBz$tV#fd?MWs)r9XvCpDAS&h`?RIe?1>d#_}
> v*-
> zw^oVKLY0%DpC)DAIsR>Z>BZ6OG1sGO4aE9P7S9tzKJ*LuupUojT|NM4H!2xa
> U1cZ1
> zOlpR@39Zkk`79k=v3!iskYK~xwIzs{90HmP&3?tj`WYz5bnZCMxUf1OOhllJSJ-
> #P
> zn?RU<beV`7j#2h?QE~~7KptG+;|>lJtk)+(n83qO8T@oLzQq;6tf|0a<^kOssWF}
> 4
> z0XV3V;b^&h2(YA9OiHqMuOM{T1})KV{KZyBw?!cdK9}3mMxbi!%-
> P^u?n7Ce;E0Dv
> z!5um{$Kaq@$ybLPx5<{m!GUh2sy{YP1gST`fhtfpYY<_mT6wW4L<w2!R5?O8v
> SW7M
> zPSEJrlOYaYd^4Y+tBBL0897$;M)*Ggm^Nq0@rEBp2^FRILwT>T=Qw9n?I5R&7!
> Yf3
> z3AE%+u8EY)CT1g~R#M#sMrvKzJw~Qrq_b3i5;npL{FT_Kf_`14p(5&#m&U?*X
> y$0D
> z?;OqUSaqVOG{!a=i!?S(aS;UPI{QY2<pw!(>W09PDdykFq{SzkdoPm~qe4d-
> Pisr2
> z(^*+rkx^a9i4wo)`AF};je#M%NQtJXu^eZrlpdFQuE2zP{q!rOet0`*Zf*|#WAPj(
> ztCXP#kloXKUi)%T*1Hb*`m4=l{^LGL`!5creuwctHrAe{#Q#{k_y4?$&)>%WOQ
> BuN
> z{0nt-G6+}j8y+nl-pR|-|1ox7^Q^XRU~zSAqprN=!6DUB(nIkSUB-@fc7NP?-
> B1ZN
> zwzNqX6hs>|GUF%bOfnpX8o$%EPnq@9bd%RpY4SdAB~8L`h50<r@?|SqeXZ
> bM<gHML
> z9HRSNRHpBIBSlZyf<s$f7rB^tC=NS2ySr}>_ZoCSVY0QKkC#5ZS5V8wfF@IM!e
> g!G
> zS(#?scjt5Pu4E#ELVN1#mU^emPqx)C^cy+5Mf&>#2jJQi5ADe>nPzy%+j5E&v
> oLQe
> zDDNBq%nf8E&?QzbC(`oh;#l-=%V;{g!FqZ^UUUvo33&-
> >)qoXkP&%)yOiO8Nm0$)D
> zBY}KCr-
> (~*PazYBSR5kV4*r>#sL_3Ddv8%Yx&^MSYR*v$7PBpt$PLO`YPxDA3m5tD
> z4_xxbFT4AO9W?i@b{T$V-Tm-dQ0~IwO3`2@Vy-
> `;l`j>|*z8fc%ju*wyv}N>)#~@$
> z^<qPXYpk32D^|{$KgtoAH8%UY%*0IU_l&ZWZUM8AnePIViEr4#2-
> a?@7LH2Fl~XxY
> zwK?2{?QLW4U*$V?QI>H-
> =TjD@8$SrF#@{#f*2iaZ>#H>1_=pH9cT=(~V}g5W;Fdl~
> z{@-
> vdx7Ei2{=fFDzMkO!>F;d;Fz<8E|GVrvaPDhg#Q&QHuEqZww8NyS@`noe!hRp
> 2
> zVov|&d_SB%{UGMW!K&VvB*3Gwnf&&COJ{Plg6+{`Vx^KV^|^eb^-
> u191=Q`~*aH8r
> z+OsFg{lB(x@BeidpTCX#uh0&5fBL4!KND|q^*7!8{Sofp{pL$##NX(Bsvj(N-
> NMHx
> z7rRdlfpDotX8=+^a$z?4=ybZ{!7Rf6^O&{@Sf#>l0e$POpieX8^aji$dzcd)2B67`
> zF<;8%p48W@7c#&?E?2MBtj9;kjaSWI_{Eba)(aC76vRIh6y&j8r$hk7@-
> |YeC@Tb!
> zYBCW-J@;t;QR1!6_mF$^<0F>)W)q#AGvo-
> 6RxC00<v^oJ=qiy2QCp56vwsRB*Y?fG
> z>7Rb9f6juQ_3PaEh5CWh`kJYV-
> Z}OI4$NfLumaUfoeUdMxDa4OsMDwVx6;^{cFB$Z
> zblp5Sk3UeiuU6mc%GG)#Be25ynnzv_Q(D=hSaHL+#vW3Zh&(BOR#)(2G=3{z
> @PWOD
> zlZD8S!cB2SiJ%}z6m2n(WV*7bR;wULxK*_9gLUAMRUneKiAB60>RDyVf`XH+u
> =b~u
> zUWXK3P9=sYQPtEX1VpSe;}GiWmP`jPAM5WVLMrHl`U+32{)PUIqLY?{Q@f7I$
> $BX*
> zMHOc<Q@#O8!IZPa<}K}*X?By~7zM6b9(HqqKmncHVzE|ICKX1WgU9)#_*D
> uI9h*oK
> z91ik=im7^zsa#4zSiAI3jpLVxEueE^Ek|U+7}HYpifIUQLN?{Gik6xMDsN!rUWj(q
> z%9PqSH=&%zE7pL?0uA-
> QrO34Bu;YAaW_AYM+o`F&NacODTd?vp1KoXU(id_<<$wbW
> zTaodTm8CK_x4vd-
> D>6C1zR5kD%RSw&z=tO(RdGo<HCZIWvnU++FhRiMPaj24YQkqc
> zrt-Q3#v-aPryQIG13G-
> s&_2C?9(^sZPP#cd?5*WAfZ_`@fMO|K(w2<6_rYfmb{hu7
> zG&r9;B)1=fa25@&DhQ0<1DYIlC&73cPHaeTLHl(bs9E<C(N?qo@}em02HsR9jh
> nh4
> zD)rOWB8`<uXsoQW0#iYcdS8B400@9>h-
> esAe&9`{3vNg~V6<Kw9ikw>H;J(Xa5Ab<
> z_}*wXHmRv)6c}Nvu8M9=7*KC4XJLm%6DdCo=v^@-GN3^<FQC-
> qd^YrfLEFr8Ov|ZU
> zFtKgjfhpKA2~8*qYHI?%TtKW+9dS`v4zuUTa`Xo&9wyY$t{AgXkKz^46BTU1UN
> 3Gg
> z=8|inpYevZpQ?W4bTG+8Di;8k3jDZ>=CTiY#bR&?I1q*s)6C#J$>^0Tg<`UagnL{
> H
> zq&C(O3I0N)lUOIyFe0gw*+5s7(~SmLWj!_2F5Tfkyh9ywv1s(}>dY^d_$g8WWo
> BOF
> zY~PM!Lb83G6eYa_%{?sJ0}~9dw>l?lpU&*5msLJ=Qu$fyp>srh`FdFC5NKz}{7w
> 3p
> zF>WTgq8(nz&Lb&<lHzQ^IsV5VBCFue(j|8f58APkDpXNQy!d$Br&3AQlleDOd-
> -Zx
> zMJO+o-0`v_NA`GCHMbTU&u7<?;a<&%RFv4I1{CXz&8f3Hlkr>K&al!=I%7-
> O?9OE1
> zSGO~)bd%25UNXBg8O_%13@cp+FA$%WL{f!9c5#v(r7ueSxf@D9K00Y8mpw
> cc{ni~H
> zRlCV-
> TFJSy`%EYlQW`;Z!cvWBy+cXTmw3=}6%kL<UN+_HPB2Wf$QT@J21@Zt(uXap
> z7J1^v>!=_zS(P|GTD+EJo}E=u6-litjko93#UhEimfMJngH9C6cX=`A^Mkly#Z9N8
> ziD)XLCa0&#*^*g692-sjj$P|5w{QLC+<tRzztQKOj*b82=bjzFkT8<tJR50^`Pc;k
> zzqg!Xivv-+<rl|}b<59-8|s$Kh@$Bh$_hj2mdcLgxMkz26KJr{dkATm3DVdZg`?SE
> zP%O%~v2cy}tSstlrFg3<z+j(tb5@)5(rpqSaf{Z1`ydNnffSAwbRgJ`y1pp-pSu2d
> zDs%owb0k!Xo4~p;d{`Jka?9>AHMzh94g4tZ|C!JJ#$F%&e=PVoG)p8f#h?X%n}
> fjK
> z9XfK{7w?Y9|JMv8iNG5SuC!zN2)<a6=N$QVnV3XdP6&@)(C_;be>63WXO!0B
> 97l|;
> zL}AzYcbOUsJSLMB7C6l%D=czqO4gWXmA|EAcjaRqmBpnGYlC_3LnnxU6bCH
> @+ND1j
> zq|Nbya481DG$(co16g%=EA&}rwRG<&tX;s_Egd<Ss}u&2s0<2~LGZx@29SzV!
> ZcRd
> zocS2lLzsZxx=}hDJA)`?e6wjVxE(PV6~3evRhkn7Q4t@#4;(8(DP?}}uUIKHnhnop
> z-
> 4FiMXw#<MWTSLSJkm|#PbygC<6{N>)YVynKi1~920V)08vf+g=!IB;KlQROKU8
> a}
> z<4pk#%UO`ktDOQ0)i#~?)OP6tDx>f{x`K^@f#*ETcos}_W#c$v4s2D|8+2y_tS*
> tz
> z&I=>ube(6!)$!??o{(OO*-
> dbPtd>v}Jn?nC2)PvxXW=~fh!b<^UBy^xY$*IdT%*fi
> zZ*MygPbq3~T9G(J=-fkR1I6a7!0GD^kmR6^$~g`y94WQA9G1oF^0dMOIU-
> dF>Z3tj
> zg_RJbJayW48&%`8B0rBXkqdmGe=yP(G6*_nKoNTcu0X!Sd;u$i5R=oWM{o+S
> mC>)<
> z@*^!_t8%m!pc#Ob#fS%?DM^w)k^5CqR)SaFj!8HyDswqOHQnTk2+gW<))J=
> |DfMUS
> zF?&7;&tmi+A4#1hZwk8oOgXQBONdp~MU{Ti6PFhu9`h65PlZEjCh>jBF$BA_Z
> 0Stl
> zCrwz&ZNG`BV<J<2rL7O>8Yb2LBWeGm4zt^{F<D^$_w-
> pU8UJ~G{oelXE<S%7`yb6i
> zCBi>5e}lJU|Cdw1sff+C9ndhCrq~eaV9_^76s+u+I+PBmvw!%yc|fK+XwCz5<w
> 2DC
> zI`^GvN97%G*j2PGV5i}Cqa%DFZ$IRkZc>^Q<BLl2C|`HIlNohY=*2`<T~mu3Wlg
> Pb
> zlXa9If~kX%@8;K$ISEXa^MzH;<5egOl{KEVWF3`iz#0xk2cBC=CpIv(SZz2DI;mK6
> zYFWw1-
> aY!J`|eS!j!rM@)Kc1ldCO#{&9TNtwh9``rzu0j5?E<<#Z*&_k*t<7BeFzk
> zi=v_>YGNvBHN>)dR)6mdTi=c+TIDFEiKq4VF`QE9%TTVTfH_M}$@$`1=gC@11
> Dn0v
> zT1T6xCo|~GsYm)*r=H9Yrjhc=lVnZJ3fcA8Xlx!b%Odevak8bEAgp?oveM1{kdZ
> D;
> zY>L7uGOzCorS!gJmZRnRqQYr?(F?b)&vEh?7reF2ArdO4(bCK=B@<9e;+)Jdu51
> $+
> z`4l4HG?j)MOF?XJemNvNs1U}#mbDj1cf;v$%k^7rwU1x5n{OM+z7eWmh`&18
> 7_wn|
> z&Q=5u!_o92BHvSV3@iMXhged0<)7gnIPLMz&UnJVuJF%)%{Y)dd>PQ&**X4
> c`D6TZ
> z*q!2^gYYB%+4H-
> FeD1U5(v}{TbzYJs%e_;JU21N%OQ?E45?HTLmfC3L6{#{8nR;ny
> znRFxM0hOL%U|y=EG)VRG>R$8{4eNO-tX9pm{7R-7f);9VtO_S?McG1ad-
> vh#5s7aq
> z-
> vTL8e+qWtvM^I+dQz@x)(tTV_p!*}dW(Ovj=^o$d%^^9wr;tcXY%&Sng$K(cLQ
> pm
> zNP@F_Ek^(ivr;_3n<4tahFxz!4<D)nJblB!$opKGH;qYU#lLC2F2py!_~y;#H*du^
> zzv7flowJ>C1*-CT$C+tghv{DH;s2Z8)bPtj&rYYtyAj$1`Zk0`9KE+*s;52gs;qxq
> zgtLkH1@mZrT=}rWAA^`stCg%BXqG2R4X*93vP?{%R@n(bnG%!Uv|f2Gh|Sc2
> ZS)%z
> z`i@_dlWJ-
> fLA(`TBCno1_1XFL;&3nrmB~G!FD&rTNG6NGs5~ltp(kWg{%2+HEsB_n
> z<o_oy;JEz1@oeqh|K~0~e;fH<-
> Z50fFo?STVBn4X5F~bdj1cHxApaH~fXfU18QGl@
> z(Lb&s!!LWyl3(_kMKh$xvKhA?<M=U_M?LZfbV5NZbo{_McjiT8>sjQZN4szri$?
> j3
> zJ{Oq%p(MU>uXl8o^2Iki`6X_6EJymUhW@ZS92a$=HGQs9jnbmt-
> D{Zq5;sCAz3W1z
> zcdB9azQheuKJ5m{>J5Lx%+{aIZ!~2@$%`esS$YBuuRYN%<F+xEN_fkl?x0}ntEh
> 0e
> z@8}}u9Jbep@Dl4u`|?fro~vPg+ZiQG!k=~c8E?TGpzY`tyINqON?jCjJ4b*!92U2f
> zqex?UIil3tE|VjD(zTHrkRqDe58Tx0(9*apR?s$pGGkA=TPmf{^dr!bZJ~p7D9#z
> m
> zaNr2N*6^f+*^BL;u~0N9aJ3H)(ZVb(EQZQ~PAUyHz02#w#4rGp+WhhYFM*2
> ~Ax@_9
> zj{I@)Aq{{_l`Q^6@lh*W99n)?qoz?zn+BtquhSmkG}SoOx+;VHdsDlA_Zc=?(hY
> EU
> zKYCGfG7OkVhbG9ej)Its0H|3hy#zHkcnCi?(K8m@aOP8PIIYO_SdhA~0?AYO`0
> s5?
> zXn64WF|7#{f4nU$s;8`{9~y;1sZ=@*kgmpC{5H|fBk>4!m)lw?uHS>kY?=#CQb
> xbv
> zmNuV#OM45mahr2-
> !<kt6VmF_9vFpTDiK4DI>KEyvv+zxbIp>3vz$G`kV9np;f|Zgh
> zE3x0YFqU`11@#-
> vcM})FBUTYZiBnSwDIv`GeF&ESgilib)7S8~*2g0G?`bU=|6yZe
> z?Oy)7gU{ba{xjAe`U3a@idF{xM}MH+k{I}(F8d*qJDT2}JQ&1+A1`n6lASUpDGB
> N$
> zP%)YTD?izBt)vpxa-cU81UaebQ`)!wh~+5*n+Y)d>fmh$`$q0q{J}pP$IZjNlEXGy
> zUR<QLi(7I^<zOuCwc&7?txQb{DxJrve&Qm>3_{+N*@{7Z7~8sBrN@m{Nngm
> -oPf)Q
> zy;brA)i-
> luwWPaGm?$d;Kb3YcE6$$G87h7dHL;1@xEq^pp#{`UFlV_efp(WxUO;m@
> zC#U=ebxXM^3Pt3VN`;cGZ(fL|@u1Z*+PO$TW2KXfW3wCDdMUL3x5KpfJn5
> U%`7@P*
> znT5PgtyHj6KB`L#IgNiNVqe=FPa`_MCrLa-L577>-
> pLzNruV3&8DWCWy(V<q8=Ln!
> z&G7sUVuLOdXsR@(Y5PPblcgaQ<!E45)HnCe+DWe&_xrY6Qqz)}*E9ydv!QJ00
> Zqs=
> zgu@BMdMj0{)q)LDZ!D8cq832{qHaHX<5<90H>JYCVH;-
> KMwePr$zn7oxJujP)l3SD
> zajM1y^&F&E9KlZR$;;6KfUI&sOC--
> IrwS%@EqXUAOe+h6PS%cAYe9aLcJrE4Xxz1F
> zgu>B`R%IQI{TpvKA5VbI4PgT8wEZZHD+ku78u87rdw9pOLZTTpts)SMIO<ZkgH
> 2u&
> ztMj=hd_K{ijn<~W<-3d19*SxqaVDAH_b=uD6Y?MYTD|2yD8}crCz<g-
> Ybp1C>udG@
> z_vDu0Nd5dDm;X}N|E>4I$30LDMz_(&0{MTvzMhc(pRPZBdN2Rq!RKr7g2R>0
> CVnRv
> z!J+&D4(hMJ7Dq_hB7cfTx=}uwbb)^5a@*nse|?dkhU1QW3{TB3eseYp26#-
> eE#nLO
> z(ThAYozxnCeUbM+`Q46u4v(#$FY;#?7KS_LuP^d|sOk}aeUX<Uu!P6_dXdM>
> nz(%O
> zmGu+Gs&X5kD2Z?F-!Jm9%m;P>`3RbL(Ky)MIqK{+UbWy?>rG>S-
> *P60D)dOsYZGIe
> z4F;@^7*E1;kpEc~K_Qs(&4X5ZXMdlDCcnQ>4?9Q4hp&%!-
> dgX}qZgv0>vr~b+B<d`
> z{QV-of6!@Bv-ssj{_T%&_|k9sCc)cPp^ua!unGc|-
> `%CcySva*^CjL%*+Z0%UgUR=
> zj$ZBWylz3+O0!y}cn*TTB6V?pasW&H?7{B_i#|K0-
> 8UQ|Oul@fI)tvdV}epX+TSzJ
> z<aYvJK7lVVaRW3cfbWMd|4To|?=SMlI|uNcp7GZg`4_DQ#<u(skmDz0lbk)lbE
> wFt
> zn9R`Ir-
> FKXv|Fo0q+s$e#M{`LOe1mT55miQUb^W}|0+X5br7oOZ}yJyIZT;~EG);K
> zHZ7|v(r{`SJHW3jV6DVzBDAOifu?L*JSf^5xrF8O5?Q5PMm`V7y$QX-
> V_<HoM{f=f
> ze%<7VSs>{|Q~nn4F39J(8dk6-;j{UP9a}$fDu5+_P?Y#q5|s+Fj@yK)4}Ra>#lpP$
> zRBcawt%ORe$aQ5;P=7zIFX$xig0vY2BL596(WdyO+D(H;h7d~uN#QHN)J3o!yb
> uq*
> z&*y1gHi0)Bipr!fR{mG4R6{wBahSUpY_AIAiSl_pr*e|Hg}z2Ylx=CQ^`hh+{7yR_
> zf!S-cPz3t?;CH61sdFnEfZ{Qt^I6YnN<;ToL;nt+RQ^v=h}*gWn$Q2$H`Z$P#Qo2+
> zjeGyUyZHQV?tc`{!ExF1hoR_Auy@5F{ri~yr3L?Y;{4w*4cNkKBa_wZ`gcS(PBF&
> 1
> zJiBd}5x)CMYa33M|FKK|7Ry7HnlB-*ZWclrSsE`4U~$eclqlJp-~(W=I_IOAG(vH}
> zBio6{KSv`u44FA0vk8FI@<=>9JZgP~I5R^WZZ%)G8n1sUi!(1Eb#*wKO1)#Q-
> yh7P
> ziz0^xb|1iEkv`dWr*y}zLB)|vSW)+U{u^pAF~APSF6mhYYOELxQew1Pmn=|Sg
> <wAa
> z?G^GJ=fCyk)e1&w&gY`bVA{P9Y01AxciF|*r-z-
> Nk1<gXupv3sB$~Zlo}uAe?rh?F
> zAGUN^PU;gcJ8{d()MT4ht)GuK^Gl^l?McP%f?QHo7OAuhS@9HDcoW!{sdIa>
> r9@Sj
> zK6I%0jU()0IW<Pr>sL@DVXSxfw(&M?D61=?Eh8X%fKwQBg)TvW%!LBz(phj`L
> 7V~3
> zcrbptAz+J7{UL_9p#aI#3!n7%<UxvLYdr9}KE{Sc;v_AJsC5%v2pD*fFGISGj;d7s
> zO?Zi6mde;K-
> W5^cr%4Fn$WUzPD|TfQ8i~trHt1oTCXBM<_poPb2O6fk7XX_8K!I9^
> z0mgB?{-0M;c@I4#+N}z5%hVS#qiKn-6(-
> 8WC_ev9XA&%0A>Bo6qhJtHD|$P;=8S{+
> zT+s^H4v#qlVbPAr4o~SP1*JDp6ZB@Kpb4})*@jhaN*TOZ-
> wUxOp)4%f3C(2(v_1I_
> zX)7gydd6j_)yjA}frbX-
> E$iNe(DC84tU@T4lO#sop%pci`9VCCvne&zW#s_GCGlC=
> zT(8kHMG3?oYTuMa?dirwSvRi;@DKJSCG<cVa4PZ#!+=Ej2jx9O1>7vxeRTmr^s
> _7q
> zdYmQ9KTJ1(aAI-
> JU^eS5rR}lU%prp@Ej}Ee#$8?E*h_?luf;)GU<swUM{umfj4Hlu
> ztYt)Z)vz|eC09vl2D|zQX^cdSYv0IfgtDUNWn9S`x|ntOAG<(tYMBcQx^s!G16_F
> (
> z;%&rk6!ijO!&JipDP_%aCdN14T&Je-jsZ`;Zq6E|qKs8~KH|h-NVBQ7%Pj1f3tkUf
> zlR5toy<8IGQV?xmbN94>PkNvLf8*`HgxOK5^+e2kLC36^#!U_u8xzglPdqTEh8`
> g8
> zoYei2vOUtR0Mw96(v1R+>u-
> 8Ad4cT+ib2+gC^%t^#u@Skc&<|f#&7Vfznc0C5isd-
> zTv7%$3Yqel%kliT$oD@Ki_CVGI6)<1ifA<&KX!Ic=z4t<+LLoBTNzNbw9?r<mlCa
> {
> znI_!vwv|>WbD0BYBd3}{Ai_(t7`k|KY#i=)eA-&1O`}|l#WQJJB~A62yBKF;)=Xap
> zEh6AzQ11|*Nl>0e-Z?ZwqOqhJC-?~46{nS5HCgZB$2tD<+j~*@^haf?EySt-
> jbm%1
> zM0YpR27TtV*>xJk%uSh%`k#VnQ5$oqaCs=*!menwb9MI_F|>``n)|fzOZ#|dx
> 1C$(
> zjXm^&5h)71$$3|8X!!o|^t~l{t5hb;<Y`7<F@O3oHl$p{C`1u^C&h(^E%Jm9RiqQ
> `
> zJW2i5-aDRLT@LvWj;BQi5eoq>bayw;ryqa%^qX|)V#!!30J`dcB6<ALPmfR-
> *Q+A+
> z`LHTyS93LN>ey1`+)22@XO~g|$ewn&Co?mEpS{@_Q&<DwsZ~C56{G8^r<FS
> AQbqxk
> zTB^&X$l;8XCpoG^xK8Ees#pk;*375tG$S!8t)1z0+Cdz)8%d%1-
> 0E*;Dx`wRnTre|
> zH)m;S93T`o{1pL1$paA6M1?MeN4=8xp20`@ZcQAJ|1}`|^-?L-l2+oH(-gJ<49irt
> zCYcwfj6REm(*NjV%K)9AwXBgWYL%X?2(<YJwL#=^D4m$Skeh~rs$-
> uvCWH6hoFiLy
> zWuB8wmOLb}u&d!rqqm|fon97k)jR)v(l}|9`Q*le<P6s(#TZT7V_0F)g>}H0f^X~
> ?
> z=g<|e*F!;<y6nEUj{&LI&`gWbWw;|iNUX7wq+*Yt<S6<ys!Pq+!C@O_VE0X9&
> (`}?
> z*8T?8Z}*@0{hu@hxYa&xV*mH_>H59>-
> yM81)_)fW<hj2ep5I0v3+(^uwG{imjrDu~
> zzq|NQw)Xm3rS@G8&I$DU#UsNXj;B|}65TaWj!yMJEAjJrs#*IED(CvaCsi|;`V(|
> 2
> z*O4Wrq0mAHNcJL_BGVedF+pZPAH6})!?TG}-H|PJ;wF{AFgJpnh9L@PlP-
> t0kI++k
> ziiab<u(C&^UKBH3*a@XEu|zoZF&I`vy^(DTYC$40%HkA^WUlowhyt|L+Bs@M
> $>Q_^
> znNauvEnLvmi2o5_o>8)hGarW8^QH4NUVc!(TD-
> W)X+t*(VsqxB%r~B$4T3IIl%1do
> zl>_#V!b@?9)l_Z+uM0yDdpN6@Mzf@*{u%s-
> Y+}$4<m`(%vyUQ84sS&`i6bw@crZK1
> zgq^Cmd0V<ang36GGU$K%aPRQe`dCE&>uXPv@xPzk)Bn5pypmhr!zf#u`HJ(
> &=Q)Z!
> z(UzeM#|`8TC=`bNp@f@fn3e#j<&@$$QLYJZau$GeG`XT6huFGor?A2qpCy?p
> mI|8m
> z$P#>6uZ{z3e}#pZo<D%&2at2h0B{;wc_k;|i2P|@sBEe#iLOABiWz+T0o|DARbc
> *e
> zf8<YsuDT=V6p%zO>2_Uq%$Klu05R<R`-
> dNX0MTU^XJnUi!N#TzXKupIp8CiH(P+io
> zJ?6HbTV2p?WJwo5;N1fFgbUCNnidpLvIPuhf~VMwG>Zk<-
> n2kNQ1cHz@!W$`5l=f^
> zNUTsXm_uC<AN?SwjLq?R)!8+1Hu1&KAD+?Kiut%Hyx9H8@o)6Wp#Nn3-
> Mth4pZe4F
> zCu#ma_wgU^;<LJvbO4e`+cWGs*S^#+bZt4qP@xPxU!eNw%}(o0=jgccs`<-
> {4r8aN
> zkZdBR<WMmIemfZXfA^FSY38Apt)qFE9JTSvSY$_fjc6ggm<6U>_w+e8b~PB;k
> G^4M
> zXIun%isn_QsznWCzlSsDVoWzI=~G}C_Y^P2mFE<e5H*nagF{D(ZMxz5yu@(G
> n1@F*
> zodmv2eohu`Qc$CTQF3*a=V)cl=%~GA1}DX`>@l*Lku$`31A-
> IT#PTeW6*Vbjd3h8Q
> zQYO9eF!&8d)W^t(D>;3M^Q?mQd~6&X;b86foGC+gdbFa4+SM>PS;vYa3iv2$I
> QVlI
> zC9n;;EUYL3%eP|swPW)FjoY!z&DEtFA`XF2(FoB{14G8Guj!a^x+D2zMXax%h{s
> gz
> z@nbtcsVwk~GX@<zdjUkM5h#LYVaY~lyDh>{;Oa)xNZ}_oh~ZITVu0vKel}ut2$
> o)A
> z&8$W<ULuCt2zmkNhvgS<C%Uw-
> Lw*9^eW?M<?k*e5OB3HNy$oA&3iUOEYUpvnUtAm7
> z5!+(U43scTN!TscwPjsa*^;sc=0+39Ag_P%Eli}2Z42FxFa)8lis0L(f?Pqr+16v+
> z(xK=RMKXYt=C1QMu$q_3b3RT}TT^0!o*!D8%o$R}ojKASIFU2@Xk3V|?dvHy
> cb1(3
> zuiz4h_=%6GbARdxe<-
> 0cLb~B*F}^I({C+qC0Z0a*g*}QJZ9ws5IRfOo4(A}AzA9hh
> zWKg%4txigymwEkPY|F4O7vt^Uzv-
> 3f*Jn5C%LTqw$0UCrIajH2q0CYG9HW*18C69U
> zlESlm#*mDCty=9<)8PBEun#q3)sh&uV=6Ltr8jxqP)ZFXw`Ru@qLqb}@6IM<8Z
> Spy
> z{H9kbGaBGQUza8gYNj;A_C2%2!<bP|VyTvZ*hILI;P8!ieqR6bpfj)Fz_JR$LFW(|
> z`yCyAUpUG3oKlcjoHhsgj9JsTqs?I$%TlnzL9d(Pm#l}3O&X@9&cb!4LC*stp29F
> a
> z87X)*AF*uAvhAR4rgqz1-Y;KJn{#(omwh(q_Mryg$Jf%~veTA#-
> ro3rdwUUFqfiXd
> z#TloS!h$Kdc#?2dV_>;<Y;z9>)+8c-Jn$(wt^k@axsu7ff%#86AY$>z(?X5+y<h+`
> z^n#NDdtc(9SVn?~p~v^gSd$s%AHt>I4%V15X}eFJ%1%QgX_8|d*NdIEGIlKvf
> AOJ!
> z43lI#E0wKlt**MLtO)vME$CdqRMwlfGATVG*CJU^_0<gr9S>a{BhOMKacE)i-
> tid8
> zm`4WJs#G=*5GyCAj|HlQvqtQfy(tC*<a}`QSkVu(ZP}Tmw*GA<k{Qp;d30Wrv
> nM@R
> zAdAyjBj1~JFKAZzz9aaER}}b=?s<{$7_QXI<Vz_Es>_%neZ;2=XpMwm8NPHO#
> VHF`
> zeGo~WSBn6XYpK7}VoJN!xhyPl5ay&N2hJ7KN|6tQYv@dpLD}lb0Bm!Y5kv@(;
> b|F3
> zd_j}k-rcUF1mRZK5j8b8TE?4*CvpJk0*Z6MLoroI_sS2Jl4B_Ij8%1xTw{AAI6O^p
> zrD%!OrBacabUClBoAF%=mp1JK+UC1Zp$a_LJZ4%mhI5YZn{$Q+!coZAzBYJ>?r
> |1Z
> zb7S+E{}{t)1>3wKr)c0z<qk85y&}n}yyN^j3z-
> %xCS?){7g8Ct(M1wNSJQ@|$h+)6
> zl_SNj=N{LF@ar>K?K?Yc^K}RU_Nl1>ww$rYsZ(nYXKzwI85Zu+CAI)9#ilfBKxDG
> z
> zItRc6t~>kk*7l?Xh_tE*4{B8rHRFO=qT_7QIo-JYhI>)Mcb$z$Rb2RkY<LM<Vx!Zz
> zL6aWnn7NAaMOA(*>B?Vy)%v&m%(?$ZJgKhVf(^g|`>$tfYft0%|Ig}A?(hHa;!
> |zE
> znRA^Z)&=HX7Hcq~f+(cldc%udu^*g~#n&!~j!_~1u8<N}wAy+jFs$aB3!kiu9+J
> ~C
> zU!v?#&T17cr!s3YACdW*5C6=jfiPuO1xZ@GOSe$Kd1(E5aCp>ew(`}NV$P*M
> Ud>mJ
> zpiom3vJdG67ia~%Yr<s3_@lT|(056qP%4&6TZMe}Y{GreS${LZ9-75Is0Hjq$<fJ9
> z5R98$q{u$z$~aJFj7fZ#>yYf~?y|#$LizGtmJ8OR!86iATg$9D&}%KhLTU4_25>&
> Z
> zYNMg<a@nTmYiF;C46w`h8m-;q=25$Oc#v-
> cBmb`dGJCJS>mOMj7V;K7vaZqjy69cM
> z3ELS8=ha;@^8IY@>DYQ$rYq>p3-#2#hssqUn*F@{41FWu39^Ims|-D-
> +K>qC=71I?
> zY&Eje+HE$K?FhCri!ip|f<YsRh>g1E)6FuEd@w-s(h!an6<x~j<#k{w0?HVo;#kzc
> z@Q0#5a$uuyY7Z_CK*Q56`+i_REGVArji=oAx)-
> Dfwe_G2M~AeGM~4fPT@Fc*I}2z5
> z?dNd{DIcM9>X=@@336`64kKj%nsYD`N3Z8750Az4GGuGrXcOx)6482JUIZ{s4B
> yK0
> zj~&JCOnLm+4oGJ_tR_y3T^~_a8&!u+EA|}9XA+BXFrl<v_Q-
> KYocZU$h@^;cBII4X
> z8he?Wz}1^bZyb<ugK6LmFh&~U!nmr3hG4t{30VRRuO!U$LL<e(6=m8T!&rWZ
> I&!7u
> z9bDOKMU$nlQ_M!wV1Q0geVAw3+&Cqd<XY6Fm}an{Syc#Cka|%q+}(K`axx
> h)6w`E+
> z@xMh7(d8^oVWcKhTjM7Q!+4qD^T`k!K458NwxfO=-
> >_=@81l}Ci5g<q1x6T&TGnu-
> zdlk7BFq)}J&W9tKT~A{qsbI~t&~!2}oHH@`^odEKm`hCzoJg@*fhUnYB4{=gHX
> <x+
> z6ON)-n-
> d^TALV4zFeg66`s?}_xF>I*#gpf_(LOmo5I^ngpERz0^e8v5#6H#rU7Dnn
> zadVn2gux6c=*XW*9rH?+kKqwVf?Wvt3O>@|j~H)iYKdd?<65{rAHX!C5C>5rD
> 8fe<
> z05oeg5dt`q%OLV^fMIHlYB=Rm5y*=HgbwyNt%9W!gf$|yAT(3D5%PUWcO>y
> N8e(U^
> zbqGw@@f^*RD6W_8RW*0^$<Y7cmpk(RSgSvImhk_7x>4V_*Z<tX=kM$Pk?
> sD$$Vqu(
> zM<0~y^S%Ga@<GF|5g`0Vz9O!hhV3gtOSRZn#BCt^J%-
> F;V<`Bm&CllDwmFsp>3$zB
> z6F3;p_4{zzTLw_&7=XVk&#~HKfKx5&%hJM0nI~u4UuV5i`au~}J6Wnb97_`b`E
> 8C{
> z4t4|$;@5eXf<fj*D?)>}%H}3e0j4^SUFNf|@K@V{?y^o=jpJ7*2fKU=g)zRJ*RA
> %>
> z?vEMo=o)O1Wt(M;E{8eaMt&I=0xqk~<K;MQvnAP8<+*ydt!Bgc0i={k=}WI=i8
> D`b
> z<xNEuyj{kS*GQ_@b0LCik8VU#)Z2K5bwmjb<Bne$7i`Pxh-
> _x&o7g)&WY74(wz5qY
> zlMQqvMsw&3y9)1d%wg#-a6g-
> hk#b5Jr1*Sr2zfGD8(~~8nBZUn(<nx2Y4Pi}7~x&z
> zr>T`Zw79}xm5L*#4Q0Xbm<aa^LO9M{r8MJ6HT82Sai(#knfYtj^evp$#S^Dq$e
> B|=
> z&6Fw&bA1P4TLKnWG(2jWIkXzyZ;VPRocPifl*W#b&l8l=IiVXrqagSf;b6JB&bVc
> {
> z#i^FdIdDuJdGvz?wkncPFZM~3IzBbv1zu@ZvvWpnAD@GzywZ%V0h`uDDYi8
> X;_chk
> z=)UK!Wz4o_?%pVi;q}dJG#GY5Z57x)ZeBCWKGFz=(vZ(Id7#Ps)X56kiW~RfD1$
> =g
> z<lcimnG4cej@&S>X}V*UdQ+$y1Xc<;W+oJnFzD-
> *M~w{ALJUnv1YHvo$Ko9x4?H3<
> zHnl;rAxRDsAJkT9J~Z3fC*7LH9s>b)=}G9e95Xx))Wtw3Y)1Ud^p058;BN8M5?FY
> Z
> zLSV(FR!tvs6E@=|Cow)j_T*_|FG;taW}9@Yhq@hF0e3~dWY!JDxY^TY9iwGo?
> vc3@
> zoIVpan`vf3B9=QDwwIK`yx2V8GlO|s4vOB!ED*F=vjB1~jC}qa&@n!Aj`5*6#_`2
> a
> z^FNaL!Lcf4Uzzj`<q3`cEjqS75PbM|g|_mgPj@K-{ps*x;8BF>bk2QFVS#1Hl27^c
> z_tCK^n9{q|>wALP^K>3gfskU@ZrdZw7!D?=j|%vUC}Ht1a!|QAWl7sGx!ll2ej9
> Cu
> zY3qKSm8XHE(V4ihuQMil<;i(X1L-
> 2DH5~bVE1xo;MdMk1I6Q!1(CZESva?9@hGUQB
> z%cv!)vkC16-sBu_Q7|Wyx(l`JC5fsk-YNCG0whOYX3Pdv)>j>j=G-a?Se#YL;=Slp
> zOCuI(^v9te31W0j%h2R9P`0Kobl|f>foV>gZg=D<=&Ei;TF}(KeKaY9MLc-
> A8OU4~
> z+*0(67P4|T<>P4NG5i=<j&k|jkZhwzB_#&QBxv*m7aXaL`K6cGuA<Zm7BzBSn
> +6r}
> zHor7hnLeBbC4Sj&rR1?fg4fE3cl{DFh~?qWH<PZHe->+BcUk+T-
> TY0j%P1h0zz>|p
> z6^A!o8M$nboHlywuBp}`YPneaAnKHAV~M%rP;%DX=}>up_WWfS+uic~Nph
> B)K80{M
> zo<0niK^M6+eXJ!<T4ZE8e=YC!WjbO>jlAtu4hk(T%5i+f3caE%B!#+V<YMfHhcX
> @n
> zAlu3j!5=nQ0D2P)EA(%GmK?U;PK){;2VNk%gdtL1MPvUwnVR5UQW3~=1{L)5
> ;c!d_
> zkLhrHTCc5b)G!Xe%;^z+7?)9-{b`Dq3ezE_;8U5`;3wr)(Ry8YP_mND6|p*}w}||4
> z@gX%+=DB2lL`$qBEanOvv543~Gz1DpGhc}SbB@<RS>@5dRw&`Z7pVv>uT|o
> zwR^m!
> zr@bZLM!Ub|7IQvX_;MH3o1DpV00ZUCG*VwIg^S60RYo;VmimQc18ov(Q8w
> #g8Zubp
> z$%yhpB@{Ps(^H28x-GF{DPv=$7Wg>nm?7S|hw(?{6ges>Zp@t-
> EgqW1QqrMSJk8U0
> zF8{7D)R#s%H)lv;_tC{iIKJZKsPGiWdGo6|Y;ut*bcuVo#maVbmo?{FPN_1=!V=
> K8
> zu6M<e1uhaX2}D^Kb$s@+84-fG`gv=Tx}wWpY7PC#IV<()8(Gfci-
> =E0PkZ9sY>m13
> zC2n2WV4hb%)3rI+0e|bu7F@eyR7zawvesFuH!?#681|b-CmxQ>hQA(W-
> Jrj<FX=BG
> z@&0PNAN84I|8+<HfAw1ZX+7!x_w3&P?=C*+{(oxu@67*Cb(p1E$@Krz8#T>
> IPYa!y
> zH8VW;l(r?aQRx^s=k&>ZM`S;<VJY39>tL#N+pYNyDgwX2HmD$NWwbAs^4(I#
> Cd;}I
> zE_1nE5Q8srAzV^El-)4LSs-
> y&4^KTLacwEbu_Z2g?Qy01q|KYO`PxX?cKRhO1?wyT
> zC${uJ7RqBw_IK;9f6FM~Zh0;isH<+$+qL)Md_jOf__7X|3r*YAyjTeWFc%tR&e
> A8v
> zEwpw`A4x@%=K4rtA>$NBV56I)&L%R1vmTv_@TO4ug7ia7CW6AmM{h9mqs
> @G^d4wR)
> z9jLM?#8zaha)Qv+MYl`04wM!{CXR|`<M9BKGHF1`(<!e#pV)~fob-
> HBxP`_bq3QrY
> zSJBw}N#vXR3l9ejY)kh8jP?KqZgg=IU*5Jz>lV7J{{P#%mfkjQAbj@zimmE{Y$%D
> P
> zranZ-
> !Byl$XyT}reF%g=Q00vwRFxFTLQxz3@8!&pT$0O|{74*>0|YT_K89RAhBNcc
> zxZ6h~uf6@Rn_^Q0+gD&Uy!C!R@D=X|`a}lVcbLUPJ#!W6nQaU8q+tcd<N$y<
> O;ecy
> z4O9G(lz~Bi%f%YQ*~(CS<)>iG&Sn`~%W_Ep28=#AZr3Fn81)vhpAe%2P(@?{yi
> RCi
> zc@ezoWor!nYVlVwpI-
> B2&b7*HY*aEMcpmy&bJg++FXQoq{Um+I%4%4uoED19j(|w$
> z$5@r>JW3#7=(`2S=|_GVVc=-93*C|l<IH1WoP^I-f9VEjSKHG-
> +ID!h1t}^GrMLwu
> zYjz$$E(&?YgIpwSvbANyOj`kC&Z2tXES;AGD(IBsN;Jw><i)@9@!!)4=JP9k$mp
> O5
> z_KWwZ?|R~!i-Tds?IbYC<-
> O978vwFL{WFF$DhqF7STJbL<7W??qk4(}7%be+cqdY?
> zcolEAQR2a+8hee1Plk|9&rmH>EbyLos4D8_?gdqqQfF`w5~ms(g%vL<hGB!W
> W+kLG
> z9yO|8OHKr<`w*89RtMr!%v}VuQ$`a?(9S1E9{nF-
> %^qL>_tK{SYaRZQ^nc%gepLJ?
> zElvo^tK{|tIZXT!@>OnT#S?{tewl-
> Dt2#9Ki+9=2tONwf@D>tgve9U=oNd<dFJre=
> z!Orbkr<UJH<MNArAbQPA^8GuLTp1kzt*)l)g_1tFE<)CnAwKYpYeGZFkzh~pB
> *<s%
> zc0o_ZMqYf~u=%}O;AL}(A{2LWJjlr97cRyoh_O+%pmYo79Ws2vWRbGNV|d%
> EliEtC
> z?7)gcqdtbGV>w<}aPXQ$qqZS2!a(sg$w$7YvcOfGRUS$xk6@zgyl-S{hTa`ly2Rtf
> zj9W*>xd;ED^2m@M9DPL`pP0M|rM6_cE}^!NNmNGChO+B|9Yz<G!YDdR?=
> *Dr#yLmi
> z^onO^+gE~Autg%w`%2J_`C|U;x>zkr5h`YSRQC$Y++<!D3|Lo7x0E)z5xGl~(^0
> q-
> zd9vNMCGUaq9@}l(GXRvI1HP=nZ^T!Id*nr!y4w_Am;+IF^i*;j@D(v?TrVyiWE
> <`N
> zT;YeCh*Ty32jFL}rv2MF04MAX1ZW~A0n@kOC!1LbHFi5qs4-
> VHXO{~J9jVkoE!<Aa
> zR!50m14l3LZG+P10;2Bz3K39x+UXIQ5M_6sg%t+G^X{}qvI=U?y<Qc5yOkHsE;
> <h3
> zl*@B0CnvVhY3t^;A%GR3(^o%r4V-S^GY4_Hf(!4pBNl-
> T#>ysTx{Bi^VCv(nL~sHj
> z(dCx#e+R!6&X`)Elu{ITy8h{zyib$|Z)n(lV;zk;auZ_Lff!e)5Fj*`@WBquQNV=u
> z1UL+s-L~bBF~|X*$ed8i@{Nt^$cCy_32+xQkh(XS!l77;?!v0np$*5C0aVPac4s;l
> zfgfvKZoRe9%UI~;rB^s8XUSR~+?)ZsyfDd&|2Y>fKYMq7ru)3wpm+)41M)#$Lh
> o2h
> zx>T&#`Lqy+um~^NOK}bvB9McEd<i{rGL+=813d!r)#8f1e#)gGl6@&cF^1G6KB
> $~3
> z`)Z5ECIpKxv8oKLR`N^2JRGT>J|g5($RyV|X^*$=3(V`2a&c-
> oXG&5jpI78QM)bB8
> zDJM!z*?Lz&7Bv|Tjj9l2ZF#so*OZu(h&<d6A`pu9!kMvocQJ{p^<>o%$DSowb#
> (!U
> z4_V|X+#A<;`_n9I@~;}^*_$odtzLJ@y~@@#g-
> X$#FYJ3LGu{?LrIK9^dbht;*J_+j
> z6hJ4lf(dDxWr)*2fckim^D#u5nDF*4(Z;$ZA5^r73r+9-)C!095N+ge;L^MAXo7L<
> zA8j;x1b_gW{%H2bo5jpo>TlW~&E6j^%UE(2HS?|1Ez|!w<L@W0wi;C!-
> `n7kNF#^+
> zkBleJ$CHQXBar{6+5EMV|L5@K;X$(heFHk`jNWvQ&rj;>&7T+3)o|21>79LU<ij
> k_
> z+22mPf1LMDyY*q`<A?sy*$DKZqrutf`%eGU=RJR!LATF}urhF{7obqN&TG4^S{
> uDo
> zGB|gP!{T*q_ojc;`Tgi^cLYFz+gdvVr183Nlx|^xFH>S<aQ@ritUfe~5fAd0Z+fS!
> zViPM`>aagk1@^bj$CKmU+tG3FeRohF?lxcS-
> WYA)Dz?a1tbk@V7xNR_%=3w80wXVP
> zQ=J~OP@R6dL+^z45gbVD&$e8Y&1fmaSTiuK-+Q$uN|Y#3qC|-
> jB}$YiQKCeN5+zEM
> TC{dzB{}1{PYdf$60I&oA!#Sc_
> 
> literal 0
> HcmV?d00001
> 
> --
> 2.9.3.windows.3
> 
> 
> 
> _______________________________________________
> Fuego mailing list
> Fuego@lists.linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/fuego

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Fuego] [PATCH 09/18] solve boost library header file interface change problem
  2017-10-13  9:45 ` [Fuego] [PATCH 09/18] solve boost library header file interface change problem Song Cai
@ 2017-10-17 21:12   ` Bird, Timothy
  0 siblings, 0 replies; 21+ messages in thread
From: Bird, Timothy @ 2017-10-17 21:12 UTC (permalink / raw)
  To: Song Cai, fuego



> -----Original Message-----
> From: Song Cai on Friday, October 13, 2017 2:45 AM
> Subject: [Fuego] [PATCH 09/18] solve boost library header file interface
> change problem

In the future, please prefix the description with the base name of the
test.  I didn't catch this in earlier patches, but it will be useful going forward
to be able to scan the git logs for changes to specific tests.
 
> By the way, delete the tmp file in tarball file.
> 
> In header file `boost/system/error_code.hpp`, the class method defined in
> class error_category is
> changed since version 1.53.0, which will cause the following error:
> 
> ```c
> boost-system.c:12:15: error: looser throw specifier for 'virtual const char*
> application_category::name() const'
>    const char *name() const { return "application"; }
>                ~~~
> In file included from boost-system.c:3:0:
> /usr/include/boost/system/error_code.hpp:190:32: error:   overriding 'virtual
> const char* boost::system::error_category::name() const noexcept'
>     virtual const char *     name() const BOOST_SYSTEM_NOEXCEPT = 0;
>                               ~~~
> ```
> 
> Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
> ---
>  engine/tests/Functional.boost/boost.tar.gz | Bin 4402 -> 4347 bytes
>  1 file changed, 0 insertions(+), 0 deletions(-)
> 
> diff --git a/engine/tests/Functional.boost/boost.tar.gz
> b/engine/tests/Functional.boost/boost.tar.gz

I'm not sure about these tar file changes.  I'm happy to see backup files
removed, but where did this source come from in the first place?
If it's an external site, we should be doing any source changes against
that, as a patch.

I'll take this for now, but if you know where the original source came
from, please let me know.

> index
> 1203a679ca168f1c6d009c76ddd04155c60e67af..0d1ace8fb705a69d9d47e3e20
> 434243915337eb1 100755
> GIT binary patch
> literal 4347
> zcmV<X5CrcZiwFQB*WOtG1MOUUbK6Fe_rK<+m}6>fz@kWkFWDr`EydC8y4J
> CGEqUv<
> z;v8xS49Q7A00n@Q6qoL^U-
> vxlA}DI>Wag5f?Gib!p6Pk~rl+Te^B{<m&Xcc7U7)kG
> zA%0qCqe1>t(-W(2jn0O{-
> l*Sw(zSZsQTGWMe%)qC+QbQs2zlaA9tZw%Z@xq6zfqct
> z@fUwjW4`pM*LEJe4jkZ7aoqFcZ}nhqSp9ByFdPj=qY;e%VALNxA>GGrNEQ9T
> $NwAd
> zJKn}+q$y{@CgC1WZaWc+H(p`~i}orEn~id|<Thl%LVZ+cp)t;<>a>XMDKzK4Tb;
> 7l
> z_)fxuJq+d4jeF%(4v7(?>t<sUbAL&Ex@K`m9Y*5BoirNTfV(7Nabg)}<4fbI6KoP
> P
> zosy=ABM$YvCWe{sdXvUou0XG%K(C?z)W2~O@>k}0!ME5}EG4)EA&Y1dM22
> aY#0mU3
> zA&sYy_!OEp9;b{&$rcfEHm6gOD7inqYuteh+)v1wa$hz`<QtE5hv;uptkN)N1cH
> +W
> zQB<rcj{-
> u*aZ^h|8jYur(1vFE%t?%AqJPXuMQjgZMYJKl+}9qW8f2*wR>~>sF2hu{
> zSdw4Fl1=23E_Uv(y?A~Hl*j)t3YHOFp9Uc=wD{3Bf`j-!Nb$cnI>Y^cH0%y*{67Yz
> zP&w65Im_S^z$OCJ%*V+2qGpP%X9}S1tWgcIDLUa78ZDg`aaJ^Xf#0`3{D_!^N
> K`JX
> zV53wK003q#Ay#SLD(K2kSd>wTw##BC;vzusyU{!csJUjY&e1d_K4M~<x~{Gp;
> 8nw>
> z(OfYvY^|Ct(uB(04Kx^I2(&(?OV-S11(b)0(+VN;mU<heJJm2xXD(Y%+-
> 60B(Yy{K
> z&uyB(^?DWLm?#mpG~#sbvDjYIkZjizo!*dG9z@ItX%sWt3D#@sySB%DX2?#
> *?rsU8
> zfd6)_g!F@iFK!JC3q~T6F9^f{7H|ASirO?y@+EDK?tWyJ?Ijs7W9Y6pPy)}17?bV#
> z2h}IdAKNs}x+5E~BD)&rzar)F-
> &sY09~@o(@ArCV3jYUi2(+aBU*rE#sEq7t4hTTM
> ze{bLcKn$<KeTChU6<}Aw)}coeHYJV+rvmcE3!I<HtRX`QU$aQ;0(hE0E;7S-j45^)
> z;KqT2luR1oX6|ukjCrvXV8&P`8M=%gTth6N)m;TccLNGH0zdO;7&BMv-
> H`Q59&`%4
> zPIcuH)Z75t0DBvQl5V_@Lt24CQIotNh9S$EiamfJ4?zF+H|tI*%4NPOE8J1=mFU
> y>
> zHimw+9V|E_i8aYm5=PzIG^LlNtoU+e!^tl2HrNemmcH0vstyBk4CRh0;X8N!D3
> =j|
> z1;2s4REJ`ggb{Oi4AmL0giOV1PEYfKoMr^orCSRUWKOJh*6mnWkHTlaS;;xq5%;
> m}
> z{d;UHd$F2x|31#hIwyN!zPkhRx|Awr<K*5#!+nKzr1<O?JD%YB^qt${0AN-
> FxSm3L
> zvYA{l39^1JHfV$mDx_vo>@9S*uh4-
> ZF3XS#aE1bm?h&AJM2n4j360v5EfwhjY+fB?
> z^Uw*GNt?>~3gvux??Ab#ISFWf*E_Q%32d2aRLr7>Oe2k%awX{cY3v|dLj;y<
> @%<TO
> zG)=`sE{0m;`xPj!|LI-+u{FR0`d@c+HqiQC&%$_XXn`77>wia}vi_&%K-^hyFJX8z
> zv(>CXosjI90?GwC%U^hSFt5wD++kRR?bS8mG@9v@JOH#(ie<_M&60cU3*?
> 2gFqowA
> z1<uD+x{YR&vlryx5^6+cM)!fv8!WI^{Ah=pcx7NNlo*fPpy|Xh+H=jFEGVcAYVy
> y9
> zFcgahw3C~pndX&7<Q0zz{HLN#5G_SUgv7JCL`b8HW$wtMfMkCCCo2%qJ^uX
> <1mybf
> z_j`Rf_~H4_>elQ37*t-Oat^4E^3p8c(d?$E!s|`KZuTD`tIvy*JvTIh87xNesc&qe
> zjsIrFJ=c)eCb;x{ZAr}RRH6u+L7X6Dt}T@&_+uz$W@fuek>N@$K!FCnT9cwHnn
> m-}
> zUE}{=ndF?Sirw&}ToIlD_oAEzIVrm2XD_2*6B6-
> PuqeTv%(Y`Ag^UZpF42{n_3Q2g
> z{!T6NadMKHA_dpB0~``i69p#&=Y#P~4@nCOm{MAq`6tkPZR&YSxvkZ_|5ud9
> |A;MN
> z-99?}AHx5h^#73hU%%T&{2$c!|Hq+9y{nAta$-
> oGj*v>ACI>HiP!R*_bPQq<6R$=L
> zLiz;1_K1mrAu$K0ftg15$4sv_pv>p%6LSoo_~moke1T!Z=zP9@VZJc&6Jjy$&$`5
> a
> zhf#o97Zjqdi<+5n)4pl9+c#z>q{+&-
> xq)w(1HZK~MAV%HZYffSjDPvamY{exjn7#F
> zurARA-G;OgGDXDy88x<Dc9%(n>{dw<0<*anEZa`(`fZ;j9gng8u-|<->d+|Rj>kYt
> zPAK={&Y<`5Z1C#LYOj*DCmD;*>~xkaA@OET<Ryx%QJY`aG;vliB*~-
> @F9s7(cxezR
> zo|(3^uusT*Wj6rD$Rp9~JU?4hh8#h{7FOEADl}`pFe15!d?D#R*y+Tp;F`eJ06Q1
> k
> z5re25sUQw0|B3XPAUug)LtJ~#mS`HCV8nlj7-
> %YnPfj4l%$Vh>meuD&WQChz1>p!(
> z#pA%jzMd4B>OO>;PiG4rp+AKfbclNn|8$bH1MZ}~;4+x&Y@|E+6+d)$f}B4Ler
> $_Q
> zVXm1C-rr$vg9amZc9|*15I8h)`!9s@_`i&3xcW8lf7r{;|ARAu|ASipKMEbdf8`D~
> zBfFb|m@V?JokWx;@t#w^%t+mzV6X6<TifGs_C2tfR38yUfrsof>Oy??%rDxq
> =fE#9
> z0q=~6%NE>ck_|>cm=pz=Zkco0BJ!`xBjzN`y_^x%AF`>6rL1&CV-
> oWlA}qnNOjNna
> z(ioXp5p+6W?vfe3R=<^EXfAeC5!<iK+izJFv4hsIB6ipsRK$+*9Ev@XAN#2a%*N
> v_
> zivSqy6sU9IiAFHd?;+*UG?&`SXPuF4MExa$?Gj_T!(t<C2kr~Gykakq+1mni)n=f
> g
> zB-
> rk52zqW*pzcHD#O}$YOhXkirfID#+l(+RAI6o0OS1{l*sf^oVWP#sCUTg862d5|
> z`-GX8`T%>NJ>-
> *8`HK!1ux+6A>DNZ8n!W}V?0<MkeEj_%()y|YH;~x>Yy1CksM50!
> z4oh-_&Tr-
> mtsanF2f;!d?1=z~#W)R<rP$Oan7KH}qfJAAr{pAEo^?%I!|Ha;Nh96e
> zr_*L``s%%X(vUd<)oikerRlwio^Fl2dm%_`yF3m(dP_pr*tTQ-
> 3lm2C{msaoL&5;v
> z5)riF+v{z59)S?-K<Y4Zasoju+ajJ$UqCqT%ni|y$Hh-L7r{|5G%V4AyRydqxIkR6
> z|4`oz9{u+3u>BtrQ~%##PuPD(@KLY-
> BhZeiN6vwg@m}2D7afCL9<*2cjrk4bCv{2J
> zp~v0_(VBWhIY5y$qkb#(q~gmpMGH1)$}t0#o_x=unE9Z8C)c29vj|f*F(aRRP@
> l0S
> z1XXFqTv(nIG()mZtXHr4XC(5MhK#Zu3Of46$HxZDoe?8-
> eK5MFaAojClW^g~ik=I{
> zim7bTj9{8bF=R_+6Y=r^J#Z6dFPSe_|5R1|tVQl)IMb=I=#I#MmbS8LkhNOmrF`
> b3
> zVExy397rJmQL-
> ?a`L!$2@3W6S%ulsBpM#1CS{x@+V&Uh>iTPAMG|?>nw16V5!dMx+
> z1tm_1C7xg072jRdy5R4I^7t>Tkzb*XgZMwl`G1^=_kUKeSL6RN=o@9~`1Zqx%
> Pafc
> zhrih0{p-E`?(O@(5vy^)16a--m^B?hye+5ReeXb05F>_sOHi`R0Go<C$*fsdAK(7-
> z?fE+cj^PfIC)sl%0<aZqS;Uju^!Y_~NtewxOI=a~9$J$7i$E3h2?hWm5#M1;dmx8
> v
> z8u`#Ex^@+OXlWKjL6kN?gdSRSK@;lfYDJ*Bq#h03@%1h3AA<_-
> zlA5~@%8_HcckC{
> z_XpDd=d4@X|BpgN{J;Fy<<-
> Ua_WKX^cNc&Ec=6`^>f*b`4&uvs(h)dhJAu37!lxgA
> z^PPtzG6nD_R!_MPy)w}+5Y=N58ipQssC0t{O?(+dw*=pV$d@7dj#IV}j@Gh?
> DkCV*
> z`T@x|e4#}C=f%g%w;$evif(m>poBDvSGKr|rO&hdfZaGOOvo3FkIh_zniF!@_
> =b5g
> zyN}0xMSYhqw2!sA3RM^_6nVDYWg<6&6v@?#k;-
> m@FZstL=tw2c6V;st<4TxgSc4Xp
> zta!SS2aSDKDuoivY0HO>W!LoGe7ezw*;c)`<IG;~P>(?c`!9^)*Ej$i!vDc=nCkyS
> zQ2ZgL->dDvM<G(&0In|J&-dqV-#5sPb0<R&ZW-
> rxHa<^mF<}IV@8r&Y{iBeWLHy2(
> zZ+S`}>i061UNEPgz2G;n$^lT7-J=+dCy7*ZHJUOJjYyjiZ6Mj5mVAv&{^udZ6GkI9
> zxb}BAAh4=#`pdfy-=4p-
> |MTsCU48m^VHDY#IWc56?1)i}F0~`x@Z>%rb_<uv?v(&Z
> z8M9#<n33%Sr6Q?VN**~2E<e4!x-eo}R@W-E*-
> Q(af4cf0OT0P1yf6|~z_!d(+&vFO
> zWk%)ZTJ};!|Mv<XRS<xjye5{_vU)A6-
> ?9cOS~lj*UoYPL&A#}@Cph|OLw<`4%>9{u
> z=>OOvmdJ5eA(Q9@`{Mm~hWWcRd*$)pg-
> uu7qCD~@aPa=GpW1({GfTYx=~=b?|0q<(
> zZC5yU!yM==Bh<h+^|Np4Qn308uW*Ma{SzBi3S&CUs&z(vHJ4U89%BjO8ojP
> Hf~DGR
> zk={%3a}`DQZu=H+udFFnWLpP*vU)&1m)<@smmMtZYsP+lKyHY~+|^Ae-
> }D`0{0rxQ
> z2L0{vU&OiL5i#JP{x`7F`@b^_{r^V2+WvbS+P&X@kkOY$&WdkY2R&fzK!x_00r
> FXS
> zA*(vnpX0$i;#*keW92iqh&ZeX`Fj!4DJmC{9$54971RmGfn%`xtsLPTsD8*t-
> ZRc+
> zDE%=CRkv)<Or(joMVc!!R2q3kXw*_CZ+)dGDo}O|v-
> A`Q=F>A>c^aOl?}oA;u^{AJ
> zdNI<LZsgn?Q-e~oH8<e<mphe9e-kYf*LDz<bAh1K>2vaYI-
> Tcz3eXmS7_@VLSb2`m
> zcV_1Horfn~GV`eb7DiJ%;uLQgC!Nl9!~v|6faq8(rS(18pW|_1){uZ2$VlpF=Omc
> _
> zgpQBxp^OMXG>8J$F~!XDpX5`e4IEXyAZGIEy=)jy8wRrG+qJh5dOi{kjo|(t?}<_
> #
> z|FOfqh7I_T{x`G+ssGnd{Qlc;*stxsN1+GUe=EE`c7B{Qn>peKILnAr^i{}m%V*B
> Y
> zVIf_jSvva9CMzP|>ohx?IMN0PIb+e6tJ5LM_W^U^8MC2ZsED61&7O_t*>ZIGi
> o{X)
> z*1&?o*D7nMdPPAfNwbkL`I9UBBqU?=cVUIhuYZ~ZYwjHV{-
> +D8UA_PAoyqgxVAQME
> z|50d1Ta$BO|Ksh_%C1r+B#+$j?)hi`dGXg{+A)J=CO7RM9*=RsQZHOlxvKPDEf`
> JX
> zRS+dJ67O6T#BEr|_{!Q|L`+>0q;(Z}2zwXb;lLlx!3)s+boaKxyN|_h9Uf|`sivB0
> ps;Q=$YO1NGnrf=4rkZN1sivB0s;Q=$YWj`Q{{sDh6XpPT008TWrcM9=
> 
> literal 4402
> zcmV-25zX!&iwFP&>JnH01MMAaliRk@U#(w(suP>^@gz~y!<J-
> aF3z>}#If7lxzkRZ
> za&ROhF`-Be3F+?Qx%~F-
> 0^m!ePU`fm#0fXai2!yN&s{8l1#%UJF>gQmq|gBv4*U3P
> z4*Q+_Zvu}@tJCTA2fe{y@Tg;UhMn#s(*Lx@lCX|BjR<+fIdkvB+n4^C!j<TM@
> %PlF
> zoSkxS$y&~X=7AkN81#1b|G?_0{_mMX6Y$Jl$Fd%g&V!a>2mHbN|Ic3F_-
> mJui5v+y
> z25cMy?RmuJVdT*u`)Vy#t0^I*kx_X-6fwG-
> HX2^Q$&z}3rX$Kn{1bC`G;+c<CzA<j
> zZjCa+S<FXGOcHo3aQ$(kA+ScHG}F-tDTu3eJLbS3X2&4i=lZzB-fi778bRg-eidlT
> zFyM;=@LYO(7?vH*>}$q;IshBu5xcqwjYh=yItoZ<+_;0#G5S9*|4Cmyu=wwn|6
> wZs
> zU2`Di-!yCaKL%{ee=-
> K*_RRA+i@acNt5G3@zp;;?J^$HT?ZtK3#&Z~wFo9d8Q9uF$
> zx@7T+I*fQBc}bLNNZFvsq*@0*Xf$^W;w+#?pFP9SMn_H5AXSPeVN<P#Aji=
> tYl8$g
> zoMEo`(^{?Lg@#yIW7`RrtBA#M2r5V~p<qSr*b9ErnwXm?K#Sk-
> W{N8c#ur{p;9n}r
> z1ktj}AA%-
> Ul}PoVb&v)W#6$FdUj9MjvYUq%{zrS|znj^Ay{^@<K>n?6zgNruF`!cJ
> zw&hk13@Otvr>$Wi&q*emAT=-
> `cL<^s!|#94rAa{AZH<@&O$1FN#3K0FB{~NBMDOVu
> zA`S2l;$VJ)=EL=gK7wET_|VdyVOZ1JAFiM2&vg8SSd9BJq4>`#3Q_8Sh`KIHrgqc
> 1
> zX|-B6dV57-
> _Px1*FT}vF7KS9L69yo9QisGpf5+yac$(UWtN@soC_++(v=A~y#D9qr
> zTV{8`BV@PWd<D#|{BYiKVmD|7jJJKptiIKGK4{a3dydaQOLFS@al6-
> jKJ2|1nym$2
> z`jW9|%yxUuIEmL+&;_WaWR6NpI!nr(1#}4?7ve={f-
> 0G7L{?8vOIlEm5>M(zh*c(v
> zV&s$PWuBicGDD6~LjyB4FpGq>H`5|re0`J=vXA0LculD96TV=jY9P!&n-
> ;1A${!Rm
> z<zYlT9=(LP))kwh%{j)1KZzJ9Duz!^AV$xa<+7I9=R;({s7opUd!Q;FJC?H>USyiI
> zA>@2Iop}+oqwI8udkX&~NihR*x0LqGlfhhLBizYP{7IS<>iK=|hn8p*=IUAJ{T;?
> O
> zOd(=AlSny+cO@G$um7Dz6b9kLPXK%Lzt!yy)AiqAXrlh__4~E{KL%{8dNl@i*<
> ^*d
> zB@H}4E6oRq#0plhqT_72@?i}(A&yVun7r~s=O;34$Pg|CqsB)V*!*_Ikc&hZjW
> ESt
> zg*cyJC-
> HG(wZ8H_XN0&&1uLkLOwtmXAiRcHoqW8jVCb$vb$DSwm`_(R11%xdGoXGH
> zf~91m!0R;090U;lb3-
> TtXe%MW@h%Q&1}zZGfCJhynC~R5uGp`@vJAoA4A#r`R+P&E
> zU1oSU&M&NGGhx*y@ofz4YCA|cCEOfmDI8SUZJN@}QWoBPVZ&4y`fF^46v
> cu}NTrP|
> z`%umTq_kAuq7i|acf;H?6f+K1vE#*%o%TZ1shG{_X}%(-89;Ug%?ileY-
> P=k#7Qrp
> zeO$#k*AVxy?f!3UD_gOevvnV5WSy&fVZ6INFcXTYVl<BLCF<`YD%IjcP;7XD@)
> <a{
> z#STDJ4Y-~{d9smQF$l7DE*5Bj1uCRwwb)5C+(opfi?{2LR$zz~7~E5V${sBi>Nyl@
> z2U=RC1K7OS%jVDlm(@0{=L@Xo^LsnWRmI^1vMY@i9@;Whs~AOx45LJ6N=
> Zoar?G=<
> zH4&IE#rG3H)OE!~3Pa8?Im*^o4UdZJe_Ra7-h5aaaNqu4-
> |VI5KmB0`_x~(NuI;}g
> zz@J?<^8!Y`diU<)(!Tij#pU_8_S<*%*XMu#?)=r+<@wh+lMe*g1KTiX1xhoaof
> |n|
> zIW|is%L<lte5N(G$C=#b8i5873RD@6SvpumxSSE|^=5k=M{Sj{9I-
> %!%eaUJZnzX!
> zXzewU6)KC@KF_ud^K8A?c0DjmU?F*{At4?p<O-
> @*QG}8d4NT21Tqvob80)_arL{}`
> ze|f+>4wwI)IUIIT{`<Xp{dW}jO~`-
> yvyuPy?^*t1Sbb98`&q1!AJ7EYBmZWvXD0K1
> zcW4el{`;L?x0e57KqlO?sx6*!oE$JTau(i(wQ&d34pnG-*Qf&3E1;?!pfk`BAb1;C
> z(2UgX{Veie)gt$cL{vT^5$M8rg=L20us9Y{Nr*Uv7>iG}V{;`#>1LG5Tb5@k(l(*z
> zl7uVMR2q3gXk@63{B;m}^MJV`gAI#tV?*t1r>lP$PfwD})3D0^u94fsBIHb-
> mQW)p
> z<dr_68l}2%rNOt@#X_v)OO#M3DTqqfVv`A-
> OrDablgZU&k}dgg_Xuc8+PHG3r_h+$
> zwtwC|A)yS_P$4s5p*6)Jt~kpax7*i|#~I-
> vNn(*o^_S{<SZC%(4GF1+jKmB;&PaIm
> zqt-R7R$oShP&J4G)-
> gros~<5I30kn^jG0_|%Yu1n!Jw}Ba_uZcG9HNsh42EY(?5Hq
> z{y#uo|BFq+<DdURnw75q0C4}`s{KEX1KZkq6@_y=ELE;vjq?0Zh?EC*#kh^Imx
> ^)8
> zsoivk^H|<@439RY-<0GeHCmF>Ml(Adkkg#<YvzV;;>-
> bpyrrvR>3Y!=mYz}uNo~Ox
> zjA2%|B`a6kv|?2Ly1?62jNCcoD#SSlPb%T-
> <t9CkgwUTLC=Vk~P9T`nZ5B@^&mf%F
> z)esFhF8+e1^BG%drYOPP_KDrYYNWjUi__=_<t|~L{nzQ`{J)0i|Jxnb_TO=!xc+<
> d
> z?yvUO|9)$~dHwbqVm1yk1!2^*K`1t0Jt(WL%0DDCLI}t>S|MBZ2e8RGVksZ2T(
> K^{
> zd;QPXXKyqf0ZX}Yd`3h7EH*I2Jbp_c!<f!lvzpRnSL=B~DFTO5dciDIgaN@ov=n9
> %
> z^$+E6O``xBCCOa{52a>N6h>(QMCee`8RgVZvK4`9%A_}vhW`VZK!0c`*nbO<a
> QEo`
> zA13O2q5mzbYgv8a|6$ep|3`ssZ7#=v`l(*fUwOff6h*vTbLB2reNmv&Uu3*v+7
> Qf$
> z7m8m9ixqIR4qh!h-__)z9H*8*t!;Dba6tkln-
> i{>Ys*7Z_@gOidbUDO=b}sHfGZ}U
> zK>6f~rYKBHVjcf~XC^u4vSK$L-_8hqKz4dLCr-
> |?>XM&5kHYneh`)lx)<i3@D&|_@
> zZ6}&?y?ogj!{3Q1eojvGr0{}k%K;8}O+;|ga6D*Fk}ffTK$o?Z$UlZ&U{l}M{&<V)
> z&j1Shzup{7nuk66LD;ANyMu0O|Mv!X{%Z}a+WtQZY@g(;x#xpz*p_D;b~uv<I
> @@UI
> zSr^XKPc;gSaXeM0MQjIAGPjgdX6wKa=Mt5va_Gk0?bKw}Y3`U^#B749&=h;4k
> 2Bqj
> zal`?=mD7=TIf8BlLAQbc@?Sfg{Ehj3_!X8FsRS38D8vqerYBy6r12OM9~ZZ01*IV;
> zNifwPSNH@zPBz3<D<oeN%tzCw1cKT8Q@Q&q@Jrs_jmMDCg0cn7;o1|?D4
> @p6v0YT|
> z7%jB?z2zaQK&GNFQ%+eM32!5jDEZZM#;1ZR{r}K;?A8Cn{?`3(t5@IuIS$nN|Fh
> En
> z`7PsmD)_a9=XU^w{U7MPPjLXS*Z-
> s6PwoGH7yZ91vsa)09R*170O0Z*{(O7(`fY=h
> zHg_1_;FfW2dmVV(76V4?^OUeN?O#aDc7aH>LMBRI&i(L;`u5Db0dZ%IWTT}Rj
> VB4|
> z_J-D!i6jOMu|k*9?Bbhro*=&*Le3eD-0(UmaX?+Gn(41^-
> hFlU#{SFee_g)+?p!Of
> z)pOO5%}}aFF?y>U@!I3}RiaG1MZ2>G!h=K}X2PT~C7UtUilo(2^^v3C;{EH(b1k-
> I
> zcE(nj^_1xB{pCAJ@#^g2T;qzsHubc+J1&SxL^T_2?^2;-
> V8tF4RDhhkB&KPYUBk2t
> zv!|kEVP5_1{M9%1`9I#Dy-
> 5#p4bszhBYkiEU=UMa+*Q;`w1R#9_G_43e~<G`h5yGx
> zZ~q+N|6ykO-;(z~hl5)G9|LOtkKdgC#}U0hit;a7gDy|Q6)v>m2QvltuK#=K`oB96
> z_ka3UxAy-
> (3f%AEp+<Y@pihkyI~ghW_<ihq7DS!e?JyCxGE&aHTeia1xGk9tf<`6U
> zE{mPW69IzXTJsE+n%B%tFqFHfNNiEpP4d>#Lol$j7R+B6i>5)Ekh!~t0%J_-
> QISW5
> zRel@>#tM)()L*ltQ8oQ^3br@JZ5ENBHLt_Scbj0aG_Mz7j)|(mhDIK}@>y&z>5
> 6QY
> z<0QQy*YY7)gDV=v3?Cy}(!jNSu<SM2=-
> Awbs1)$uELA0gkbARR4a0(wdR~G+jJifD
> zs@l}`+)-
> !xoEb37_7XBZB~L929VOQD@>F%R{9d(5^M@9Vv*sw;dG$K~C{Wn{{RDSE
> z5%&6jbj{TN!yG94ulD~q3LJ3%tEBzqIB5$%G*C6}u8SYB7nUA^t9)fDvF(xzA#}C
> !
> zJ%`H6?v&$0ka+zH?`Mg-6X^vIb(>3-B*DZN-
> _#`w(kQ;bgcD4<+xjt4GR<6u&9QuL
> zCui*?YF$iWY*Qwe9(k!d9WoHh>dJaJ;z6do#VcN@+fgTIUBVpA>={TX-
> &3mGwaxC+
> zm7lUJQZT0_=bO^|lV!xD)SBK>O;;kRodrK<$m@SFqE?Gv<Nd#W=Ko>#hT{Fd
> L9PFf
> z0(&&GIu0x@+vS)MqecF;c|<)P?|Ai7B2xE9u<HZo7K~E0YkbdRg4Hg9g5Z#M1{
> =E$
> zw?tWXX-V-
> W93E*BH7UvqgAf5>Qmg>(a$Fch{*`xxnR_uMsy!0TC|Jr&7c?fZcSFQW
> zFtJQj*krB^^o#@-9n6LKrfXP6`i5REc2E&(RpMHPSrOYa`W3N#qgN3-
> $a5&RNWSkU
> zDlo<El8Cb#JKZ43g~!PYcB0)^)Qcv$R3nc%C7Xx_b4Ff@SkGaxmX-
> r|TXMMKEkKFh
> z5|8ew#{gB7d~~V&AYd{!Dqh_?q@LJ3SuN90MIF;LBSV`Kmedd9wknsRiK?-
> 3)!1QG
> zi^Fx~Fb!*HsM`mpr&BTXLG8^M&nM-
> l^xUMbjG13sQ`PV(AV2@ZI9__r(bs>SeqY`H
> zw7Nt2{=e1h)${*RptNX{V_>)Q{?=Xcs!3Mz$j!1(KLk&UuZMx+;xqXm81NpA@
> WBr1
> zuNG7~i6;kyg3%;igb|;TxU`aqTV5<&?d@5_)Z!$~tH?u~cX}lb-r*el5SOUs<&=LP
> zi{JdpsPO)`ct_><`#+GF?*I3@mX!bc|Nn6mC_VKp$H12Si}(AA2LtLQpk0@F8tO
> rd
> z3%XqS>@D7y^oe=^l`I(zjPxZ{Z@#3cOu$kGtw1RGmPIiO!2agfU}>`mQ`Rvf?*l
> NO
> z#s4`3O=-s52J{_RhGfaj7cZ<KiGsN%qilzQjh;N#F(q31^r6<##Z!iXC=wq0@yNRp
> z4=YY&iKYb8M2aR$DvOBjg17_EnLTHLH2Wqh>n8@ekKr^)jYV@r8kE$?vO(5LQ
> *7bs
> z<HGHq<g^5#_@<J214-yy`JCG0<T{TBCMH;M9+?mme@{;I$I{U-
> Ve!RGyla;4E6p>2
> s;)IyO{qC;lclX;=Wi`}LLk%_5P(uwh)KEhWHQWRL1q^B_#Q=B!04DFcxBvhE
> 
> --
> 2.9.3.windows.3

OK - I can't compile this, but I'm applying it.
My use of it fails during test_build with:

+ arm-linux-gnueabihf-g++ boost-chrono.c -lboost_system -lboost_chrono -o boost-chrono
boost-chrono.c:1:28: fatal error: boost/chrono.hpp: No such file or directory
 #include <boost/chrono.hpp>
                            ^

So ,clearly there's a build dependency on boost.  I'm guessing the AGL SDK includes this.
Please add an is_on_sdk for this.

In the meantime, please test in your own setup, and let me kow if it works.
 -- Tim

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Fuego] [PATCH 12/18] using common script to generate dbus test program
  2017-10-13  9:45 ` [Fuego] [PATCH 12/18] using common script to generate dbus test program Song Cai
@ 2017-10-17 22:50   ` Bird, Timothy
  0 siblings, 0 replies; 21+ messages in thread
From: Bird, Timothy @ 2017-10-17 22:50 UTC (permalink / raw)
  To: Song Cai, fuego



> -----Original Message-----
> From: fuego-bounces@lists.linuxfoundation.org [mailto:fuego-
> bounces@lists.linuxfoundation.org] On Behalf Of Song Cai
> Sent: Friday, October 13, 2017 2:45 AM
> To: fuego@lists.linuxfoundation.org
> Subject: [Fuego] [PATCH 12/18] using common script to generate dbus test
> program
> 
> Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
> ---
>  .../commonAPI_Dbus.tar.gz                          | Bin 6320 -> 0 bytes
>  .../tests/Functional.commonAPI_Dbus/fuego_test.sh  |  34
> +++++++++++++--------
>  2 files changed, 22 insertions(+), 12 deletions(-)
>  delete mode 100755
> engine/tests/Functional.commonAPI_Dbus/commonAPI_Dbus.tar.gz
> 
> diff --git
> a/engine/tests/Functional.commonAPI_Dbus/commonAPI_Dbus.tar.gz
> b/engine/tests/Functional.commonAPI_Dbus/commonAPI_Dbus.tar.gz
> deleted file mode 100755
> index
> 7f1b491803d44b4fb25b16ea50294e9bd1a4b6b7..0000000000000000000000000
> 000000000000000
> GIT binary patch
> literal 0
> HcmV?d00001
> 
> literal 6320
> zcmV;h7*FRPiwFQyY=l?<1MNNiQ{y<Y^DFr)wAm^y@R)o<?gE=v49xCQ#mrE
...[ binary stuff omitted]
> mNJT1Ak&0BLA{D7fMJiH}id3W`6{$#nzVvT4*9}Ji$N&I8dw_fZ
> 
> diff --git a/engine/tests/Functional.commonAPI_Dbus/fuego_test.sh
> b/engine/tests/Functional.commonAPI_Dbus/fuego_test.sh
> index 485d279..97ae6c9 100755
> --- a/engine/tests/Functional.commonAPI_Dbus/fuego_test.sh
> +++ b/engine/tests/Functional.commonAPI_Dbus/fuego_test.sh
> @@ -1,25 +1,35 @@
> -tarball=commonAPI_Dbus.tar.gz
> +#!/bin/bash
> 
> -function test_build {
> -    $CXX -std=gnu++11 HelloWorldService.cpp HelloWorldStubImpl.cpp
> HelloWorldDBusStubAdapter.cpp HelloWorldStubDefault.cpp
> HelloWorldDBusDeployment.cpp -rdynamic -lCommonAPI -lCommonAPI-
> DBus -ldbus-1 -I $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -I
> $SDKTARGETSYSROOT/usr/include/dbus-1.0/ -I
> $SDKTARGETSYSROOT/usr/lib/dbus-1.0/include/ -o HelloWorldService
> -    $CXX -std=gnu++11 HelloWorldClient.cpp HelloWorldDBusProxy.cpp
> HelloWorldDBusDeployment.cpp -rdynamic -lCommonAPI -lCommonAPI-
> DBus -ldbus-1 -I $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -I
> $SDKTARGETSYSROOT/usr/include/dbus-1.0/ -I
> $SDKTARGETSYSROOT/usr/lib/dbus-1.0/include/ -o HelloWorldClient
> +
> +tarball=../commonAPI/commonapi.tar.gz

I can't use this patch without the one that adds commonapi.tar.gz.
I suspect this was in patch 11, which got lost from this series.

Sorry - I have to drop this one.

> +source $FUEGO_CORE/engine/tests/commonAPI/common_api.sh
> +
> +function pre_check {
> +    is_on_target libCommonAPI.so COMMON_API /lib:/usr/lib:/usr/local/lib
> +    assert_define COMMON_API
> +    is_on_target libCommonAPI-DBus.so COMMON_API_DBUS
> /lib:/usr/lib:/usr/local/lib
> +    assert_define COMMON_API_DBUS
>  }
> 
> +
>  function test_deploy {
> -	put HelloWorldService $BOARD_TESTDIR/fuego.$TESTDIR/
> -	put HelloWorldClient $BOARD_TESTDIR/fuego.$TESTDIR/
> +    put build/project/commonAPI_Dbus/HelloWorldService
> $BOARD_TESTDIR/fuego.$TESTDIR/
> +    put build/project/commonAPI_Dbus/HelloWorldClient
> $BOARD_TESTDIR/fuego.$TESTDIR/
> +    put `find build -name 'libdbus-1.so*'` $BOARD_TESTDIR/fuego.$TESTDIR/
>  }
> 
>  function test_run {
> -	report "cd $BOARD_TESTDIR/fuego.$TESTDIR; export
> PATH=$BOARD_TESTDIR/fuego.$TESTDIR:$PATH; chmod 777 *;
> -	if (./HelloWorldService &); then echo 'TEST-1 OK'; else echo 'TEST-1
> FAILED'; fi;\
> -	if ./HelloWorldClient; then echo 'TEST-2 OK'; else echo 'TEST-2
> FAILED'; fi;
> -	pkill HelloWorldServi"
> +    report "cd $BOARD_TESTDIR/fuego.$TESTDIR; \
> +        export PATH=$BOARD_TESTDIR/fuego.$TESTDIR:\$PATH; \
> +        export LD_LIBRARY_PATH=\`pwd\`:\$LD_LIBRARY_PATH; chmod 777 *;\
> +        if (./HelloWorldService &); then echo 'TEST-1 OK'; else echo 'TEST-1
> FAILED'; fi;\
> +            if ./HelloWorldClient; then echo 'TEST-2 OK'; else echo 'TEST-2 FAILED';
> fi; \
> +                pkill HelloWorldServi"
>  }
> 
>  function test_processing {
> -	log_compare "$TESTDIR" "2" "^TEST.*OK" "p"
> -    	log_compare "$TESTDIR" "0" "^TEST.*FAILED" "n"
> +    log_compare "$TESTDIR" "2" "^TEST.*OK" "p"
> +    log_compare "$TESTDIR" "0" "^TEST.*FAILED" "n"
>  }
> 
> 
> --
> 2.9.3.windows.3

This needs another patch that isn't available to me.
Please send the required patches in a separate series again.
 -- Tim


^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Fuego] [PATCH 13/18] using common script to generate someip test program
  2017-10-13  9:45 ` [Fuego] [PATCH 13/18] using common script to generate someip " Song Cai
@ 2017-10-17 22:51   ` Bird, Timothy
  0 siblings, 0 replies; 21+ messages in thread
From: Bird, Timothy @ 2017-10-17 22:51 UTC (permalink / raw)
  To: Song Cai, fuego

The requires another patch (probably 11 in this series) that is not available to me.
I am NOT applying this one.

Please resend these patches with the complete series.
 -- Tim


> -----Original Message-----
> From: fuego-bounces@lists.linuxfoundation.org [mailto:fuego-
> bounces@lists.linuxfoundation.org] On Behalf Of Song Cai
> Sent: Friday, October 13, 2017 2:45 AM
> To: fuego@lists.linuxfoundation.org
> Subject: [Fuego] [PATCH 13/18] using common script to generate someip test
> program
> 
> Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
> ---
>  .../commonAPI_SomeIp.tar.gz                        | Bin 6533 -> 0 bytes
>  .../Functional.commonAPI_SomeIp/fuego_test.sh      |  44 +++++++++++++-
> -------
>  2 files changed, 27 insertions(+), 17 deletions(-)
>  delete mode 100755
> engine/tests/Functional.commonAPI_SomeIp/commonAPI_SomeIp.tar.gz
> 
> diff --git
> a/engine/tests/Functional.commonAPI_SomeIp/commonAPI_SomeIp.tar.gz
> b/engine/tests/Functional.commonAPI_SomeIp/commonAPI_SomeIp.tar.gz
> deleted file mode 100755
> index
> b00f19aaa659a2b9a4af3be583a980098db12d7b..0000000000000000000000000
> 000000000000000
> GIT binary patch
> literal 0
> HcmV?d00001
> 
> literal 6533
> zcmV;08G7a)iwFR)Z-
> iI?1MNL)Q{%?6`!)U*6Q3%M;j(@|Hiq~XVM*dDc9#Nja&vM|
> zxr9A{vO@BeWC+<Jzx{U4OCxC{%V5lIqS>uNmgdnj)6>)4)7>-mZf-
> pH;AA{G^KR&P
> z-gveC)Pyt`^w{54uZ@3OgI<&U7U@;1)9kjI{Xrj|o2^c-
> (|kpG&j3p*ErQVU33>IA
> z`mX2AgRFdENN1aXXTxcloc|xG<9I)NzB6MlPELI9_xt*EK7V{0`Sagu_4*y0|8}?
> A
> z>9<?`SIu@49$%5>`ns8&{^s*fL~86*<l_!GzqSK%X*-
> nMSpm7CF7++wKDoFj;WZ_P
> z5@*N{{FCPgb*=bM0p#`kt2&glZ|yqAF>8)bJ|&%ctKO;KwgDHKgZ7&y{4<um
> ^euO4
> z@iNW&H&6<SbX)D#H?3Bus})H?e&#LwDS|np<a^J*A@D9(T>M6-
> AqhR!g^>C;0r4)`
> zk9Xc5w&PgjWO3oxQ*vxisT<H;a$6_udQ*pOd`T=a_2&1g=*ck~Bi9Sb%nm}|z
> F6Q$
> z-
> Pz$aWDvu+OMdYdWNNv@y9g~C{<xG_p;qyA7|w@{#tnz04&84+)eUIAp|#&
> okN>dU
> zsk4CoRn6=5dOokJ%vz~S^7V{f+Ae@tJN)qO-G}$M^vCbdk51no98ciY$@uu-
> eEi}4
> zc2tU&Ao=;D?9`pvmz6ZA`wDLw9Ms0aZ06G-
> IERT297H38dt`un;Q|cH08rUo>xKq%
> z3sB&;HEEJhh7SrQ;j8)_gtOr=xVC&co6JK$f_FIN01t<3bVp?BQ&<qjp|7dxOlj)5
> zK}ZZ0i=iM}6N^9X7O1Bvz=xje0`l9QJAwwL>ese5Hkf=GE_|0)dt-
> g16JGbev7@7!
> z0+r}>?x`vtqM;qXAD@p8j>rE#I<5Ki3RVjBjkP90${wl+Ylg!s8rHU7k8D`Bewdzt
> zs^d*9XBg3;sOe!ygRq(&?B?&ScBi`we|!DGn_d1J|8#qOt&15Tes4_yu6qTT>@
> uGX
> zhCJ_Rc<s&7uxg-
> T>9GsNE&*k0+i4)Ta`4bR55}y+;g^rei8h8N$at@eSWBV`KI!8Y
> zjohtg&$5Ouu<qHHn%)`M3*0LJ5{b^P4$h(FIA@_1E^v%&oL|>+qL;gg@<6fz>
> k6t!
> zjX0JWyO$o>fod+joTc-
> Y&K>XGx^U>eR{5@Jkj~gAUf_nh;fT!GGwVl9^agmQ(4J1F
> zRuGz|Dp|+QsOByl2PSqqd+n?PMln{k=YTJUMKIlS>hGs8+te8KZOgI$z@8oW
> R|{+~
> zNSDkWjm+f}8>Y-
> $1^RC+J4(GBrC0J_yT7qFqu~%X5r@<5pMk$Sh58IcatGNy(}wb<
> zN#CU3Us?|EnyJ?{wxr2_6aIHdwha9OrpQ`2p`-
> (b9YR~X>5nGjlU0LQS&8K#Uz2YW
> z`GEBg|7AG~*tYb2NItQdyj%dcLHCW6akPxo9t8L9G>6`v>G`nU3v2ojD86_qsp(
> 5l
> zQ^8-BL{)!N5>-
> i5`I`QM3F@zkzWfKoYa_>JWcb##ZWWbI&@N10DcEX87z~s<v3fB*
> zq&po+i{WDK&{|@{Fw*~md^Ldb;m-XR^#fqhYYPCo)t`i0#8WTdS-*MyE-
> `+xUC-YZ
> zbUr>FiSn>}wf3?yU@efLX%wd(NTXrWDr99qeMIG@RerIwRR4PxE-
> nsc)*LVfwKI=t
> zV~PI1*KaHRZ@brm@9kEv+bs3Jn@EkF$|Lo?kJIz6px;%Hty`bFc0KMA{q0Vp
> @(=qm
> zp~C#}==k`<<mV5k$8RTRAKo2}PbO#QKYcejczbYiesntd@#JJuNvmE96{{H4!?
> 2LK
> zUbwQF9=M?XSL%Ip^t~D_;k+K#_ZBO$G_O#)EzNg+Kc~UcT!)@}X<zYdm4X
> WBl;Sx<
> z;T!@4tUlAGo*1J2_zb26qg08#N@eO;L6DboEI0tRQ4PtQuasNc4;Pk0;!TPoa_1
> L$
> zmx59GRN+~NtY86P;;i3e6^!dqD6U#3^yWJ&pjb%&&%pJt3jQq8ZOkk<BHqx_
> vE>cE
> zwE?%n={5Dwkzw2d${iZsOA$PCKw0&npn37C;;(D6Ta0O&QCM*HE$Xr@7g)X
> 780rU-
> zP6OT}E;gDP{DFq5;yA#OoH88Z8X87Q`<Rv*3Pm%dwIH}Q^=X71iOMN$y2uxA
> oJ~VE
> z)CtXx3GjkIGelzCvd-j>R{K~)B6w7x%7{oUOL~0B+-
> Fn1bW!IZDhbl>CLBi#VJ9me
> ze+9)KiqO3{y(_Rd6I724C3RVof)ZT%-pvGAgw!#aR^5mcriQh3ovb9&a}dU-
> x0xiI
> zkq*LmhNBOZ`TS7_un6@v)&f5`G+c0eVAz!@?U|%J!4KgVjeA3QCJdl#?ro#|e
> ~$d8
> zED4_42ABT^S@u8ePP?V#zxJT>3chywy;A<$L@MRKmy-
> W9QgCwm;eUR~l=#dUjWQlv
> zvPe#ap!d9z-
> rB_?dNX$b@yI?3NSKM#>vb|wTm8}RA<QI@=U|lD>RH#t_Acd^)Hbg)
> z+?hGl2qrdu6A%bo*0#=V4RSU<VM#Qj4!wdt3m*N?WDSzzmLg;HohW7&1=
> >i2XzU1s
> zxE+G}-9RyO9GOwae(ig%w}3D7#&Ut%mDYPZe0X-
> qf#Zm+dv5tK571CRpclk;=Zn}&
> zw*Fvw+%V?2u9bH^_jRg{J6Im%g5qj&qUA-
> !$q>A`Mb&cz&pDExNPC_veob9goVPA&
> z0Z82$KsvLhh)fjP5R4yGSUvmc@bKvDtO_Iu%G=XxHnd0wsPDtOYoG$&bh_|i
> &gwA6
> zu-
> pUo8CE^Zu}eO@KmLUiMg^IyUIG}<Q1*cv?MZ}VlGEp5FG9X0@|<q32<BJ?P)
> AJJ
> z-1lzn8O)G8b5H|=FZ7x7QIt|xgkJ&AK*XRh3u@Bj(DR82$ZWy-isi9H-
> H0X$1c+u{
> z*19?Z+!w`wYwH#^1|kVBL+Th#YX{&F?z8Pyt)&Rr7mmPpE98R%cqH~MHhik)
> amWja
> z;b%DlB%=%fatXcDM#+lS(>1IZs9$WRa?;EgT;S|}V~6xH6i$)9Q$Y^mJd9xXqY=F
> E
> z07-yGg}~eJ378}4WqZ@YWjGYD6<{8Z6pTttyP~0Zu8DJ~y=)kLm>}B-
> 5>A^27A_M+
> zPB(;w^U?M0T%0$UMC;bF9h6MXa9(&GEQ;Vj=2|mME4Kcf<4r#TE);+QTEFw
> H`5c<%
> zn|^o=3jvy31RQ5;Gx~a4npiT>fQ_>+aprKFCf0?w2xYZcoq*ML?C?GV57=ATKX
> aFo
> zn>ok+qg$96raw!*RD1cOI%!R(h*Y;+aYYdO{TtT7cn@UFkLyTML8iDK)}zd?ylX
> Ml
> zP?GgAuviiIBh)u(CWqzSA0^+s<>&Oc<{J(8pZre7z)4cnX0Z{%Oe-
> ;$NdPjqzmcxq
> zTbbh<Dn*5<`q~b!YjzK?+SAG0V_QGB!Z8hIO;x<T4X{OO5H-
> k;uMpVWhZXtr;zO9`
> zc^}bS!i-
> >9o1X^<Ce=%7hF*^pU;>I<Ta8_A%mRyV)!|yn0I%p^Zp<c6*pV5Aje{V^
> zE~@#l<CML*7ayK98<5!zJ?rYgvOTsqTn1hs6R=p`O+uFB6N*3>m02Cq+)aI@IZ
> to@
> zdDCuU7M=im&OW|UCvtZDyx!z83g}j`nks#%E?v`$y|hC03rl(SU(~;~r}SyQznJp
> %
> z|IJpn*;V@gPJ4j*|9)ps>i;*9A`2MXgYBAHH@a0!cnxo6W;+@6lrW`9m>eM|F
> 5FQo
> zivZbyXmtaVum`V!#UVGA?JAm*!$hAh+|a%O(ZS~r<Xe*dD*W#D8V&fXatel
> biF6`i
> z9+8`Su>zotJeNpWK-
> yV|_9Cx8QB94zAy#)ul{+0qEg+~$fDJ^eT<M0Q9yhCC0~bL*
> z1)-Mg@004;f{BKg3&*(!fs)q(LZhhr>ni3F2iG%4$e?%Ec-
> &J%5g$gq(O@#7Y#I9K
> zIM@#qrYVS=OrvVK!5wNyJaV~kx!2s3sR^;aAl!%Kf&w|A0r|+(RgvRz9NwQTJ
> 48G{
> zL7i2AJ6i4F!t+Dk=fm^U<NrF`PQo3l4dI<|^n{6YD4kEBJ}%*KB_+HDaNJo?>olb
> m
> z@<WB_n-
> &`NK9IllmXSyQ(Mp30+Utn_kV*gBy?%85+v{~%{D(nl|GSY?p8sy>{MWoY
> z%Js!I$Y__f0(4}rUyq6(o*L^-nxBc+HBI-
> #wT4XQ_z|eQL;Xn&JFMB!*a>caQp<8u
> zm#!L8W0Vq~MTRYs0j{aC9B$yyu>tP!Yy`4CdrU|rDae`h5pVl68i1WFux!^3(<W
> N^
> zOoX!hLUS$lD1l3uKbgzzl1wmB<q~C_0DB@^*wZ_|WtdtneI<Qv^sX8;W5otPt
> _PFO
> zjiNqgGdT&#gdJJMIXzw=@+GZSc}IBOTI74mJo2+p{WR5G)4Q6nG})O5-
> !FW*E$j#?
> zQh}<zOlq-w9LrY{W?!1%C(=^?pU5!u(M-
> S+|DRTCpya=9uaEJcTHS7G|Fw}+?*A{h
> z|0mZMx7jMV;YV+y8YjpI0Lejvpx42iPVo>_xU4ddVfIxi<8rbH7h_Y76ur~h|Ds9
> Z
> z-!kRU|8<!Dvb0S8Yc<<~{x{qGE_`qGJFRX>|2L6J`u`dDe-`ld<Tk(0ZP9De^J?yr
> z>o)jJ+VCc<X{CLNW*~qnV(EY{Jhg1s!5(sPWeSqY4vEK2+cV@&i=-y|7Is>-
> C&gG^
> zcXoWXxae7{n!?Rhxe#M$eyK<uuRdKvt+h*<k2+q9en%^v2{y)Kw<J=&GzBZu
> Q_?E(
> z-(&fKW%A#kmDvA5{_FJ1{eKgw-
> 2XSS{~H(p;s3|zDJQ3Ik4}z1{POPT{dpEgu)NGO
> za|k&B6XJwov}Rr*Pux{|rAb_6*8RbkBo-UD-
> Q_d?xb?r}{Ewa9Kh*$aiTnq|fyMuC
> zw+5Z&pvmk%27{9RZzL@@+o+^JB#)Kwo#4z(ng7hpO-x4-
> ywHoCLvSk?c^YxXesK{Z
> z_KKM@aPKH)sKA<GFTbwt8LTu^fBu=s{?F|p;qPMg*8vU~C6?oV-
> KsF#h@Xh)IfbaQ
> z>ijSB|CY|APr<RJ=l|_?WdGG_;rV~7SKj}ykyP@3pN;?bcL!%j#ht*T+{VKN=>W
> bd
> zebFt&;9DcJ3Q0wh&@Bn25t-%0-
> =a^#^Q)Q^aWlJ&C(Xb$%~Z@CTli7%p6ughmJZ(%
> zIaO>)7YA*-+1ehN9V7OnL-*(HIvmBu{LCFhIiTy0<C0vCFHO-`OH1`XYls4~ME}!i
> z^_yz{?{)^|{ZAWA<^KN}oc{>nK0gdhZvH~iU|uThXVJi%Mm8ZYd}mQ6A*xLT(
> |bJM
> zpb^E&S2>YpqBt_7@>MF{OjgjfB~jvXuH|`Z(6}{S!?Rb(I=Rz(AP(_9TlQxA^JQp
> M
> zoQv47nFFO`m*er#@r@Q1J?6AudA=BTrF-
> 6In{xO+u2*}y``=RkzkWCJ|7&%6sQ>Nu
> zOaG6Jq<sHBxm`wY7A|l{GxSV&q)(uJKV`}xFcCesh;ty>H#h*2Rr~`j=@}@QNy
> Y%f
> zE-kC@7^_(%s>%Kc-3Iwq{%zz4c(Jf$hD3o;(kT#uV%bGx9TjLtxiY{LkJ7}Jr*LSC
> z>zWU*DRY321-eQ30cvi5UkjiUj{e(?22gkD6$n5;k9PGaK2gLq=gzw45reqf-&YIf
> zlvistw@un`RYSdAPr;RRlF+vKse0T?`44bd-tkRdXzXRT6kk#0d<cy9RO1t3MR5vP
> zATkyH>=Gx^b49qYJIdpGNlqH(<I<ivuTes%8~XYK$P|M0kedEjdzy|P3nv^DpV
> >b#
> zMgOrYYrX`0iTsaA+JAH~7A#1C-EOPA|9cb3JpZ=={IKWs-
> vZBldK);w{eCxl|L^em
> z?+jX<Hu`_I2F-
> SP{=1R%Nf4YWi*yGY5E&A=CGiiAcXb8i6+W=v(M?KKhu%_$6`0YB
> z#g%r8ZWYA~&!OxiZVLK0q?7pJ6RGk@>MR$#wyUaNFjbv7q4tS8a0{TU`P`B5-
> 6Ukc
> zs*>^Bo~p=Su!{JW`8u#LI#}Y;->N-hd78hsI^9lmdA0^nR<&Y-
> Tv~5?Fwp8{PyZ49
> z5mj9I-eSH&hlDR$vdOHuR2f8bswJ6zjr~fuoUB0gtkX5zq0GB4q8Es)c$;!o)`ja+
> z$5t58X#sJlrm{Z7-
> ux$HKw%(5j<p%{qu$Q!VCvmc|K5P%Dg4y1^9BY!8s>JpTZav-
> z&j0rGjC0TDc{<JRH_g}=-
> wVB|$JfweCa!FMc<w!4Pets1p6Um(%>Ji8h|d4}ZRY>q
> zY_&@IzlkIj(~)5rUPv&0cXB-WF;YXDzmliKg^78-leC^y8Um@iiSjR2k$$|H3RGoy
> z6xZz;ZIj|zvK5o-HAg~@Us&--
> z1og><S~HfnkYoU_#bOH|I1weo$jC?#s3(f{dcq1
> zEYJTolFIYH&%pkN-
> 2wCV==+18jx$Za^Ybse@=sIgNiARDBQO@Oc!!+upyC0KYtD$R
> z9gDKdbXA!_D=>r<R+E5^@LRQ1%<(|PPIn2tnTPj@CU&s~5ve(#p@=^PO<U
> 4<Tf{UM
> z`l#u(<zDeP=sX0vm~NFF>k}x1bLrD5wQpJID%R%@z!&;Fk~-
> oX0F3dl?*R!s*SQCb
> zaTx~6c<UCTCBh||iA<dA@SZh=L7nfsg)_r|-BN+1bbNv(-
> NmtLz)R8A%wu@zQVap_
> z-
> m{w(#1vqq7ZirfhBbmvH;g;!TbY|Iz3ne|2UYQ7#5rG1B$YLVOxe@##WMwxd2
> +-U
> z<AK_StdE(E7fJy@%IJ)bIG;a5Fq8aw)0Y~TVDxFk^vGB!a(rUZy)#jR?C8-
> _MAWst
> zO4hA$`SDv!!HFa|1{X?Gw4e1KX==3hFL0W<g#TMh41gv4U%#i_|JCa-
> {a>qJ>i;&9
> zO8)P2;s1*AeF=N7m>qQ`gAv@U0a&grxTGrUH}MvH>M7^p0(s^JQ|Eg(l5503r
> q^sM
> z!9z<2C!1YEihDKS0`Rxgw}D^#LtI`I2oBNW+#hGvs5%qXhL{{Ufno)*b<1VfV+Ali
> z<ihu?87d1|eJq-)ayR5m>g;v=(h>m1yTE4HIjhFs0+z}tlotjGXpsLS2fz$R%5lhg
> zOC1ld6$!2x-
> >EoByfnsRHzP$z&UlY(HZp#RYK~2t9>z}a3n>dZ<WiJPy@3VGyIz>v
> zawixk?OK($Y=GFMC(!lKMkIil3ji(U#Zi)PV<XKuw}3R*sXJz8oH~jkvP$Iar!WW6
> zHAw+=(CQ7O6@7MD?gnE#1VTz+u#8JFRIlaVYXT2c$1zfuZ0Icm$fpjY#G=Uv4
> X|SE
> z02)7z-
> yS3W0+4fqIL43zs3(D8y^bm(;hm?!f_J=$YKK_hH6T97KngFT3%%F?!4L0_
> z^?+r%7x&Qo-
> +~6Ay!VP>I}?&vpRjkRnaA1*q4ldek8uonZCRpL^<2&kp3!h$Ip)5H
> zbw8?Z*9BmJ=+gvD9?DAW!~>)(|0A(3nOTQEa-
> s>m<?Dh{SBQu+4o=i?qSZs5i#J{&
> zVq@ZKg!NAdkQcDn?${`bHvxmwxFB&AirK$qf~W<cdmr(ZFQC(SA&`YA02!1Jj
> ASTU
> z>*htOvC);K@l+B8q-
> ACX_C_`+Z1!(}cS1Q<fyYS_im2KhMuP4L!dMYkFr^77c2q0?
> zu^j6;18rS+s3v&Hfi_FiPY&*xn6zw9BT|bAnleh}C?RX+nB+psIO7ko49_5HPsNj
> <
> z+u{~1^vGwHO@V%gBUh2cZwrLkl$aqEK3WOc-
> };M*@uFMUJhy0DLxk6a{$wwP3~Q)g
> z%ZL{BB=LLg?WLuA)~xw;y!C8FhxVLTjCD?-?z3qHzC;7(rT$;q1V7dkc!~X2zX#uh
> z{NEe!_^-Xv{&zE}l>c8i{;R&e;zu<vCcmd#u7nTKIZRmK;PgL_0AIlSD0WIP^(mlf
> z&VU+SrJm?1wH`;QM^+78;}>UcO#%^r9199-;k-
> *~l0!49sa_HtF2XBjVFbtT$LHgN
> z<MF?bPHXaZnw%<4;qBu?8zGRez<)imUA*Zanka6s7TI}du@i^<)*O|U+nwza
> ZdA6*
> zf8(ESuP;nE44?>SL<NAlq$ldgA;T+vFd0FX9r#h{I0)HVij&*PD+rPq#=?&+9ycc|
> zmvW29Q<v-
> +y$QA2;L{w#<<BUxo#K+VWN4mjKyy_!u(0D1FXc@9Ktm;Dvx6X^ilhF%
> z8qeWyiQP|x4rz%+eHs<(2Fz-dFDdE7A*^l1!7#?`<i~r4o^#at8TJ+?NSHcbu;ctL
> zqy<Q=`<l2iTJ58e&SKUmq}$^PB?(-
> m;6z9<D>3E_gw(*x%)6Q=3?qUJ&Ki&V%5S+X
> z0Q1hMCId!n@2<N-
> ju0}QY=QL{AAoaI1#cC`Wkca)6xkr1g<lbpxk<9d<f?rHK=HCB
> zc;Y$4jU|PeC_*k3O?V6&u<pHo^$mY$B6kMn$h^C2cls<vzBum`RTqDq#nBYG
> X&RdZ
> zHiY#{gUp1JwYVAjC-~R={Y{g;ArHH-=Nf6`s^mp8EPqIVlR(L6Xtp(D@vkah`du((
> rDpQ%tRHibOsZ3=mQ<=(CrZSbOOl2xlnaWhAzfSspNV{Xd0LTCU88!z)
> 
> diff --git a/engine/tests/Functional.commonAPI_SomeIp/fuego_test.sh
> b/engine/tests/Functional.commonAPI_SomeIp/fuego_test.sh
> index c47d56b..3b2c880 100755
> --- a/engine/tests/Functional.commonAPI_SomeIp/fuego_test.sh
> +++ b/engine/tests/Functional.commonAPI_SomeIp/fuego_test.sh
> @@ -1,28 +1,38 @@
> -tarball=commonAPI_SomeIp.tar.gz
> -
> -function test_build {
> -    $CXX -std=gnu++11 HelloWorldService.cpp HelloWorldStubImpl.cpp
> HelloWorldSomeIPStubAdapter.cpp HelloWorldStubDefault.cpp
> HelloWorldSomeIPDeployment.cpp -rdynamic -lCommonAPI -lCommonAPI-
> SomeIP -lvsomeip -I $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -o
> HelloWorldService
> -    $CXX -std=gnu++11 HelloWorldClient.cpp HelloWorldSomeIPProxy.cpp
> HelloWorldSomeIPDeployment.cpp -rdynamic -lCommonAPI -lCommonAPI-
> SomeIP -lvsomeip -I $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -o
> HelloWorldClient
> +#!/bin/bash
> +
> +
> +tarball=../commonAPI/commonapi.tar.gz
> +source $FUEGO_CORE/engine/tests/commonAPI/common_api.sh
> +
> +function test_pre_check {
> +    if [ -z "test" ];then
> +        is_on_target libCommonAPI.so COMMON_API
> /lib:/usr/lib:/usr/local/lib
> +        assert_define COMMON_API
> +        is_on_target libCommonAPI-SomeIP.so COMMON_API_SOMEIP
> /lib:/usr/lib:/usr/local/lib
> +        assert_define COMMON_API_SOMEIP
> +        is_on_target libvsomeip.so VSOMEIP /lib:/usr/lib:/usr/local/lib
> +        assert_define VSOMEIP
> +        is_on_target libvsomeip-cfg.so VSOMEIP_CFG /lib:/usr/lib:/usr/local/lib
> +        assert_define VSOMEIP_CFG
> +    fi
>  }
> 
>  function test_deploy {
> -	put HelloWorldService $BOARD_TESTDIR/fuego.$TESTDIR/
> -	put HelloWorldClient $BOARD_TESTDIR/fuego.$TESTDIR/
> -	put ./fidl/vsomeip.json $BOARD_TESTDIR/fuego.$TESTDIR/
> +    put build/project/commonAPI_SomeIp/HelloWorldService
> $BOARD_TESTDIR/fuego.$TESTDIR/
> +    put build/project/commonAPI_SomeIp/HelloWorldClient
> $BOARD_TESTDIR/fuego.$TESTDIR/
> +    put build/project/fidl/vsomeip.json $BOARD_TESTDIR/fuego.$TESTDIR/
>  }
> 
>  function test_run {
> -	report "cd $BOARD_TESTDIR/fuego.$TESTDIR; export
> PATH=$BOARD_TESTDIR/fuego.$TESTDIR:$PATH; export
> VSOMEIP_CONFIGURATION_FILE=./fidl/vsomeip.json; chmod 777 *;
> -	if (VSOMEIP_APPLICATION_NAME=service-sample
> ./HelloWorldService &); then echo 'TEST-1 OK'; else echo 'TEST-1 FAILED'; fi;\
> -	if (VSOMEIP_APPLICATION_NAME=client-sample
> ./HelloWorldClient); then echo 'TEST-2 OK'; else echo 'TEST-2 FAILED'; fi;
> -        pkill HelloWorldServi"
> +    report "cd $BOARD_TESTDIR/fuego.$TESTDIR; export
> PATH=$BOARD_TESTDIR/fuego.$TESTDIR:\$PATH; \
> +        export VSOMEIP_CONFIGURATION_FILE=./vsomeip.json; chmod 777 *;
> \
> +        if (VSOMEIP_APPLICATION_NAME=service-sample ./HelloWorldService
> &); then echo 'TEST-1 OK'; else echo 'TEST-1 FAILED'; fi; \
> +            if (VSOMEIP_APPLICATION_NAME=client-sample
> ./HelloWorldClient); then echo 'TEST-2 OK'; else echo 'TEST-2 FAILED'; fi; \
> +                pkill HelloWorldServi"
>  }
> 
>  function test_processing {
> -	log_compare "$TESTDIR" "2" "^TEST.*OK" "p"
> -    	log_compare "$TESTDIR" "0" "^TEST.*FAILED" "n"
> +    log_compare "$TESTDIR" "2" "^TEST.*OK" "p"
> +    log_compare "$TESTDIR" "0" "^TEST.*FAILED" "n"
>  }
> 
> -
> -
> -
> --
> 2.9.3.windows.3
> 
> 
> 
> _______________________________________________
> Fuego mailing list
> Fuego@lists.linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/fuego

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Fuego] [PATCH 14/18] using common script to generate commonapi c++ test program
  2017-10-13  9:45 ` [Fuego] [PATCH 14/18] using common script to generate commonapi c++ " Song Cai
@ 2017-10-17 22:51   ` Bird, Timothy
  0 siblings, 0 replies; 21+ messages in thread
From: Bird, Timothy @ 2017-10-17 22:51 UTC (permalink / raw)
  To: Song Cai, fuego

This patch requires patch 11, which is missing from this series.
 Not applied.
 -- Tim


> -----Original Message-----
> From: fuego-bounces@lists.linuxfoundation.org [mailto:fuego-
> bounces@lists.linuxfoundation.org] On Behalf Of Song Cai
> Sent: Friday, October 13, 2017 2:45 AM
> To: fuego@lists.linuxfoundation.org
> Subject: [Fuego] [PATCH 14/18] using common script to generate commonapi
> c++ test program
> 
> Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
> ---
>  .../Functional.commonAPI_C++/commonAPI_C++.tar.gz  | Bin 11657 -> 0
> bytes
>  .../tests/Functional.commonAPI_C++/fuego_test.sh   |  59 ++++++++++++--
> -------
>  2 files changed, 34 insertions(+), 25 deletions(-)
>  delete mode 100755
> engine/tests/Functional.commonAPI_C++/commonAPI_C++.tar.gz
> 
> diff --git
> a/engine/tests/Functional.commonAPI_C++/commonAPI_C++.tar.gz
> b/engine/tests/Functional.commonAPI_C++/commonAPI_C++.tar.gz
> deleted file mode 100755
> index
> a5a6670887348b30e94a3feaef0423665314fd1a..00000000000000000000000000
> 00000000000000
> GIT binary patch
> literal 0
> HcmV?d00001
> 
> literal 11657
> zcmY+}gLj?n(+B#-Y1p`F>@;ZD*l6rDwry+2wr$(CZEH7n8ly?}eV*TY);epQzhSPK
> z`CgwPi9-A&sne_R3Fb=I)A?Yu;kj>0f#tYLnO1!2&4D)KyJn*8Z%g;zRj!16TqA*!
> zk|Ma!FP{_}_q9MzYy5cdK?5Ttw6-
> FYM<xE;Uf0*T*ZOnsUA$o4POdCs;B~I1F89!K
> zi0vEd4S3dKUJbyRQ_s=!W<Ey`we<m?MTh3pjsLM6mlBv_ZiE);jU@NZO{+b9!}
> ~Xl
> zc|ZcVo`E;aqaJ0$6A!?Do5P9>3C2M4*Kw@}eGz2_@1SPgHDCjMo7>mX5#yzg
> pTj&#
> zJcZ|OtZxY)#hVMV<JZS|=@zQr(p3-
> X(oc9&`Kjd#nHtNxDQi*35_}#H)25+Zi?vQd
> zpr_<)HAlc@&(q;gJYA(8GfIsoS*H<1%#wb}6Op_?;FKFb+vb(ysH%p8AlWQhyJ
> hwq
> z`{Jd&mcPjnK+LCoi8OYnjXXDJ`h<RrFaCAm1)aHg`BFv6zn1i&m`NUQQ-
> j|IhyvXA
> z?#}g}7|0V8vc7B#=t{m@{~IF!z_Axvhen=9JZw(a(>6@a&lA2$E?KrItxeWO2^o
> DJ
> z$(l^FmL#5jV#o4d;bvDbz0U_C?8u=0j{4q3^-;1-
> Q9yp1aNoq4W6>)k^~MyAw6Am;
> zC$ks4GSYU!t+XZo)4n?axOS&?Mc&SjalE=TmQ9VQ)_%Tv+3E8V$FFnwJs;0>w
> Y9I$
> z?fP-
> ~0#BztNOeDEXX6C2d%U{{PK>xE{r+)vT+QTMXk{*oa@%V~FRw265U(4)K*96
> 4
> zIDRAB!GhV5LARhK7ovWy=H=DVV1~QqUE+A%xe=C^dZ7~xTkzpSv#;sTRlrm
> FvcyZw
> z7C2_S*@eZ5Y@_jIwAOxnUv_T#c`*Dd(y^|vTPf~ai+*8tBP_{VE<zIcw&$}da}
> wx^
> z&NoQGKw_%jcw|?T<mx;9+x+^xlxU*#GAp`CLf(EYzqj|(-
> sS20B}f6x3H=7I7D@C~
> zW<_f9y3%7cdW_R;dEJ-
> a(O?5!$qV+pR<LQ?u^WBlcN_(8^!eGW9k6=#^zZHFuL0LT
> zv%HTO;8R>BJ4?{;-
> x~b+N7~O=a%M%sG;;*JosTD$S~!c$&lw0CwT6=%ZcAd<hts0>
> zTwjx7$MhkxtLI;{XpL)FXSFc#Zn`$@9p`r5X8Ee#L@pBiEX!j8n)<t-$Q_q9)F-%G
> zb)H!p3#pzGf(|Y;?cSaAr_i<4EOvx2Du~DU%y(N9p7PVJ1<lX0*OAvi&9ypjir;;}
> z%Tj3%SW^z>-V4FgXZD-
> 1@b;)TvI%Tiv(?P3s404*yTyBqx_IzzoZeT}LBDp@W6JWG
> zSfUKt@!TBJGdD^nFZ&yGPQdGpMSsj9a6-
> ?rH+m8}d@y&CGb+X2VmxUo+L9imA#-;2
> z`!gndp`yd4Z%=dm;GVEMl&nMIM&DAHqpa2sxqlxmN6>W{UOV|RneQp}pf
> QuN`5y+6
> z)g=TGzWoj&wAP#-
> 3(c=4DgElHt$f4QcQvVK8o;T2YFDta41d@#6Hnrr%pZ<R(Sup8
> z@0(U}gA(?sO<=vsv-
> )j%>n991ABc5VmcW?Z<m=Q`X=U$*U8RwVsr5hPT}6QGISmx(
> zVSD%zjRNjmt=TSV=|Rp@PizfMfFGKzsnPQhC?Oz{iCS>l+eE$UXTAogUad%vc
> 7mQc
> zc@YD|?HK|tXC1y>ebMjrG5(lBe~P$GI(QxU0X|9kC^!mRs&bA``6LqnYg@$i7}
> 2an
> zT_d6fy)3but9_K_L3a*fDmq$O*w*TQ7uJ>Q;6Zu-
> f(+HqL0v)e&sA=COhK*xz;b*w
> zJ)4pLc2^#{aUQx78(lA)*J{TY=fT%4R=|OdHQh9c!rUBK4&?U?c{lNTy`DMS7<sr
> G
> zQUJ@v$;bW>$nMR9csR1ul>DwMX<UguH`M5qWzwlCMfgzx;CO)ved`*%nf2
> n%yr+(6
> zWv5c?Le2#Eeq7cwuQdGC<>h41tSN@(De;(9<dP7AVw`g+x7Kw@Cmd)tNS<
> _5teVlG
> zN4Zzdbwu+gRyA%kpg-
> FETv&3HXp+Jg#r5jBDZ*;ix2CbkGNTcgPI=K*8R*E5G*W3Q
> zV%^&$LV)~vkJEv_*<WyyodC-@HvG5hdRz4%7Q(R_dsj;k`Z)7-
> |11&yE;0sRlc?n_
> z2KYWvoJyZltciAsqs?%D`?-9omCxYu*j!P-
> =FDweYk2sVN{HZk0t1(n14CK#SbOMb
> z!=gYzNvP~C;`g5pwQ_!$2BP~u%2~5ZRP<#-
> @p3JtuPhjPi55Hwv~AU_uSr%UQ<AXs
> zrj>Hx^Nq!CVGPhbhapis=7ovOA9j<+78M&(_cZ##PYR|_J%@hkMvhip#8=W
> =MZfQI
> z{_x!VEgdH>uANBUr!Ic5Th~~diG=WtjJ~|Oo)ef?2QlyNl@povf>b{<G`)S32@w
> 4H
> zQ`X^K%v`;+**x)%OE6d;`x^BuLpiXqqb=qRC^-
> _eR9EalqXuFcFF~C>b`q1I9VPU`
> zzNhjX@FXb9qxBB#JOP?ibGU`<fI$<<FVml6Sc!Fu+jE?R|5{S@v_y$N?F@!QN
> T4YR
> z4T=?S*d$i)ohyK%3@8n~(P%1)ayfEH{))s(5#1{f<z$FF<-
> 6Tvg$wOB#=4qW$2;FR
> z$`p27ZF0_=%@zR#X{20sWUQm$2op1<{21}@RbtNYEsAn5DizxpHQV{RJq-
> 9h?PjF6
> ziSLhF$m1^YMJ~V7Vdwj)o(5Djj4C#!1)O8|2<vTPt)K?6dos5j-77!XJBRK7Dixul
> z(eY=;?Oo&R%$M#Ci4|wrIfQLLqpObGkJTp&H#J@+INHZ!p|kCbJ(I=)wAmNo
> fXAu4
> z*f<3yri*$wVLx*>nJ(OCC|<-
> rJB*jm5SvyMgXzrqvHES%fB0(rat#W*J^Vn3ZFC~5
> zQa34cGsObDSu+haVM?}MXb<9RYPff25G&gl9gFKrJR>x)n=ynK!HclL@*+ai@
> k#tU
> zchn92G}{*zo3C)(7KIlZ{lO-^#kM2w=|z^=)SIy35_-v6zR-NBIZ$n@{DdfCHr+1D
> zG{?<OP{eb-
> UfYu`*a}Z2Qzu<G4YL8B!*h(AzKw@X;imgL3M#?vG0M>6Kbz&xsOa?+
> z+Ukw+ef-iRh1ur*V7fmObQLSe?kzt(=h`Dk5r;OtIil~rGD{i6Mf$fH!qoTIq~*%V
> z#LX7O*M4#a6<Z`5ZN?DYf>Hg@UE}49KfxS+l^Qfu86PwaOj?RE*z<XKM?fD#
> g<t4w
> zBgCUpVarkPMUNuq!>m}9RT<grbN<+nNJpkB_unLewr=pZ+9)8|85HrSOC!r_i
> s|_9
> zQcu@VUi6P~u5~=TNvB>-
> >5CR?&>$>Zam+boF(#gGEA&04J`3Z{`Y3y5W>p21_9dIY
> zO2;&tv1O}1%Q}iXJR!I@2Tb6GC#qYA*ODgbpxY`PtFJZ(TS=PxqA;jUe>gnKWlj`
> W
> zqSO4#!g5oHv+i991TMf6_zsC2R!tV@hK178CGtY>&zwpt-
> YML@4XUc?k@lAjjmL39
> zRcu*5e7qjm=m}NKIZOt+x`ec=;S+MYy#o4={VK=v(*6#z&vl8oX5tGg<uC=oV4
> YKO
> zi`3C1GRuqC){F|UnFWlfw{+3r|4F%;j@dYL<Yg6YW5E;yk5JWZDr|&#zg|l<L1o
> M+
> zCaKY+<~AIivED#u1XC^AC9>uy(25#nm+_Qzgn5;)D3Ac2Lv}{E0zpsN&fUrsPV(
> >F
> ztB0&er)o-
> aDSG8H>JLV9HHsgDxpz<cZVrE^FDrZdUJfsStsK8DrbnRX8u0_f8?>he
> z^hMCL`aAk?)!JUjw?szR?agf4&`^LZOW89gFr4<ciCS7w5{SapIhj8r+<em@bTa
> 48
> z-Bxi*KYf;Aa=I3BL0m__W0V3N`MD$1;J(wVIEA(e@nEnkjPFq7-
> 78Au$`p^2UNU(2
> zHms2_l@4rwxp*s{%|<);7O(ofKeSt|)J0S&F5~xnY*a;FfT9c<y3~i0l=#p^$%R0
> m
> z(1bKpK|<PxE0M}=)J4aX>3o=W_qAnyIC{^nl@h+vGK#H>t_=dx5=VHpYLS)a9
> *mWw
> zk5kV>`r3AM<>!VT(rt;u$xzf`v<ZpI+DM|bqz8x%H^wXs_Od0EN8!)d+ILbTTLH)
> o
> z<b7_ei)SZdF@E=ZRxWdVtu0fjB5{&KdLpJC4EHXd&BNv((yK~Lc^K}uM?Z34M
> dH`%
> z2Z=35`g+edi0Cl{OoVdq1|G;qe*@vM+B^etd|Pi|)EyvGL877X6be7DQ7t_7a%
> M~F
> zbxOs!qw^IXw4>;vAZsmY8cSlB=6+?c*$+?e#vVI5qd=f3e?ItI)FN7WpG~1&ly&
> ?k
> zPU;XUVHeuGFGrq#wF1aWSt`<r&X@ASkHo!S4_7nxM9dPa#)n!&%demV_v
> 3r`(sbVR
> z>ys39M!8c2mV5v|#!tfX7%&S8V^Xh69zjdRuNjSwS%vd~U}p-
> ZxJ_Ak3f2;JH7WTx
> z({Nv@3)j^zsjV1qxyo_x)fEtd6`iH7P!`UOEGICNPsh|1qLoMhU7svLgo{n8I;L5k
> z_t08yBt)<w!vc;vzaJ=D!k2oj6Z}dJQE_MA-UQhmZsY=U?vM-
> m$PJqmzMF$K#|RY@
> zSc56yp!~JH!Q4G6T6fJ7;-QBs)zKr$y&t2c*cBi06+qN35<s7~_y$;&_C0)01bD7~
> zfPt+Y!@f5hAEGC(tq%~^oErdwg5**8@Mp~YRndOPeCUqsI_yOCb0yH5$y8e
> }qlJeq
> zC&xv5*;bjl)v+PNQa2;5xJ;n5+YBIc)uQ~l(Kf$T2}3s8*w}QtkyvP6WEYrK#YQ%&
> z=vyF}!yuq5Qq-idNv~Ts0ve;wLE;#-=JZt-
> ct&gW6*$q<h0xETV^4sJV%;D?@0?$4
> z=Kfdldl1D*UjWn}2*^dybn9&5Y~-~|e>c1LBYp$}`^3`-
> jSPXAtmCKb>NNdfMAuz4
> zdqmZ8r{H_yu+c$-Hs4)U4Iuptdic@T2_+fuj*ta20{nIR)$>#?cO~eRa|P*3C|kEF
> zN`>U>)9>-lW@KRk2^pE`wd5M5=3QY1YRvl_`-
> zYdvG8GftI7WEqVfXhn$X_&PCtYC
> z#rUh&q||qXF5|&ns!4ljqIntikvhGcEL%!@vE^hP)e0WS%6ngkwPgzr(qEu!XB|
> ?t
> zH1G%}u{{v9Io!AdF^vLmT}4w%ck+K6tqzU?9X^4Rdrx<N-
> PA;AhEO(8sLF^KikWpx
> zw4Em1JXBJ5<YefMy0STlv!ytU9s6NdQ-
> yh?m+Wa9l|>Tm?dKD6@^)c084m|Ioce9l
> z4zX|?BfEbw4Xz~_6W5QO>nT$A{x6@Zi3EI~2OfBaTKRyto&^rb5`5m(D*$~BYI
> n#(
> zhe^un#r`(!Jm8lKcg)`S+4CmHG$Xj39j&yD2b^yc)S}KU$;J|kQqd#5H)9e|i<3W
> m
> z6nylmGvEF*WRJVtbZ5JQ@lTouQ)<tKZwE@uaEGKz7CtReR`#&O7$*{g*PvzJl
> gn3k
> z?dNX1x8!3WJ=GTHxlaV>GZcIRE*{{q0sH1hV0}F4FF+GJ^)j;vb8Qiu`<eb9Y~}5D
> z6|{hFUUv8=LQWPApD2I7!!YjQ)22&Jej57D7<u!(N)vwN&>_$+=#m!TaD(mE;
> vo-6
> zH7w+XBUfVQmRL;?;$2LE@?%M+?j-
> FH)mC2f@v&Axc!8aln?zT1gn7@zs^R|kw^ggY
> z3%O2+6k4mfuJC0z-
> 1<7`ar{eA`WCo~%5~D(WwVRgww<A1!>06fF^4kQ*pC`ST>Osk
> zmC=5kZ0_e%p=M%TIhz3NKkw3;&k@yJu-M_UgL%3KLjQ=vkiF~id(-
> |D8}ilWbi93|
> z3N9_E5%iZG&_pjdQ&=uLePL-
> j&VLz(M8LfXa$GhA`KLt#F;67?!+~%Cj_fw}2O#_X
> z?`)7~viCiPOaRH(K844@KWxbF=@o2z048wt(me+@t{>Z;`v^S!P6*_4$ae;y#74
> yk
> zr7nXmz}x*#NF=9VN6L~;Yw*^O8RoXSR8DE^9iB+MUhAbe5886DL*6iYUlNa~
> a#@AN
> zdTr-
> 7gGvE+iX$xNKgVL4Q6cm<JFuoeJa^JU?)kX>eBgS*D^K$mB3a~r+V02fa&K+&
> zb>OHVb9z`)oGJA2L8q>w1mzzej|#iQdc$&mnDB7E4f`%U&^3)JQ~z0+$Q-
> _p8`eL|
> ze1tZc^70i$F<teE)$30(Vn3=bmSL*bm6#3JL*NMWqB|=a&H|aa(7Komo7s-
> OjJG+{
> zWWPSU-
> B_gWRlHVA&+?wWv}bkg_+g>dQ@^?AQ|r7y$t+nv1B>!LpWnyxUTshrPxwsU
> z%E|=pSIRm+6kG-4$=~w!XnO$?x3^^oLTvDV10X<xw$ylt6-
> CnF>3HAgpK*042Z$;!
> z2s!D-
> hsKh>iWxSsA>t0E3Q=%Z7Os+=Px|~Rx>ag|awBr$F_VI9Y_7&5SkHED`yTO6
> zM=6mJ)q7mZHNd(CsuTP+`a(is1)u`p+W%W!eRu|dsBwRGwjbzW$+Ps#-
> S1yvJSb9H
> z!Qxd~KR~H{pWkUfXhbyBTAovzCZJKq^>;=-
> 4kB5|h{ZAn?r#~R*f2ug9g3$Na<Ape
> z^)XB?WoHWsLJ(4AYw#_{82ib;@{O9K9cDro_<-
> 3kZR)YR7wo|Xl*^2(ZIx5H&13g|
> zJa`l-
> q7%X|(H`q@%%6Sce1q{17Vv3rRvEKXCGqO0IUJn|CA4q?c?4f%+++QBL;@&X
> zeX^-
> `#(J#=Wc1dy%kCGOFrat6ixY5Oz8Dm!bGT%{Si@G>;VUd+C1hg%dYj@Grt(AS
> zJDCzz*2FTI4ETmO2TOUs5zaD-
> +=8k}qC&uw3~fN)bW%OG@q*tkdp9PhYb6_~6o!$9
> z)1W8@P|o+TmBDYQEGToGZwfQgTj>b+MSaeej5l^DU@!Qn2BcLsya5<HHu_
> r-z0oJ^
> z8_-YyCSW~Z^si6Yy9(GEZ#n|>kO1}6ze|@rm~P80D8C$<;0-
> !j{}_>I_C;`>sDRms
> ze_*@YF}nnSXxe|lvi6ineAd(I<XUG(`JTJNjOX9i0)z0<0=oYrPImHzarA>lZ6?*d
> zP#Q0Zf-
> ||Abk)w2olgz%L$nqeoLSTupDMASTGB;ktb9_JBrN0q6+o&gc&<hQAvdX_
> z6d-
> ;bt`LUA5kj#M(vOjy^<4e?sz%ve;!}1=$zl<$KtVB*lzm6MVPnD?ZWSw+g=9ST
> z8j>7B==6QDbhkh7C<M=}b^F^vaqw^M0wS@XT%jcj1RAJl9mFMN*jP*-f-
> B3>j*wz;
> z`yCeUqh%#*3~_RE!626KA<B@}C^dW1n(`tUl{VUg0h(e`_<Iiykw>k8BJvv{N1I
> =j
> zi7~zkpOI|Ru7|rPJ-!(XOv17I@$qtxy&{YKK-
> vGALs;*PdAhpQPKwF@g2edsAO??j
> z6s68^KL~~L#FTJ8%I(Yhp5Q$0yjUC`+6=&W#f<4#cWP56f@zD@iuUtfgNMxRz
> I1{)
> zmaK-tiT%8HtbIU+mnS*4!`^U5;k-
> *u{;TXm#;>HfM$DeuPv7ZZB&)5hRtug8>!6E#
> zbT?YZ#D}>lXlga89@9&VQq~X!)7QThTpd6k;xM!#Y(~AyNuII)kkkqBdH7pFY6
> W!$
> zk%+#7dt--
> (ZFE2qg8mMBz=2)odQbj){ZxxAH!@XN!^~`YcO5<?7D99*Pdg@kx1JhI
> zUWqvr{+HLsxcc^s>=`OH!6e=%{n(l8*w$JfRV+SpiL8>dIr!&gc*d=zaCXeVQlW`
> #
> zi$=3psUOSH6p-
> %;e?E&{;R7Sjw#0DA{C5?mD&?aNCUl7=%|c)0SlEIGB__x=w|qEQ
> zaygN!%yDh4g*;XsXb>VM>O=2Rf-RI3n)}xD^tC$6Rx<Tztmo8RX#4IP7e*&4-
> b}Ot
> zm=^jw3V}4%?IXDW<jcNLn3vHbU?6<I?`c!}4LrlA{R(8<>aXCWbXR(Eyz(D8jrfK
> O
> z^!tbWKm(Q#Z>YNCFxz08`a>-
> <mkNHVSIj*mYsD2UM~aIsY5bYau^hi0W1(onokdnI
> za-S(C)0R^0M5Iq2M9l5se{*ni@q6kk`%6I1BPX9g?eS)^Hi{Ll{iiRNi})8$I6~w`
> z)rcE0lG}c|_)LOS#?FR-;V;v-
> OZ)dS!LLqOXfWTm@s%)1gC2%axl8XOb!A7BO<@G3
> zi4e$mL!6z|(S`GAxDNbmq_(rGRTmk_6?B~p9;j8NgA|a1r}DPO-
> R?+jdDs;=3OXvk
> zX{<{P%dlYn$3NJOXX0PfM>YluF6VCB`>$zo(JUjx{W6oS;iIjx<<ndeu{qolO}?`5
> zZan4|9NAcXpqL}$P|C(IZ8+c}TYgr)C?Kzut@LHTZc1klb<zGWtq-
> h7qXmCyY8EJ?
> zEauUp+*Ri@Jf)UAvtiy=$31F=o$*cz{S>{vqwgMIBZA1cfqB8Q0Y##S)2-
> t5gMjsd
> zw$YI1Gcrb^r{v<~aHVcQzKI?d{{%LlkyHiUq)nQWf<_3c#`A{$M?XncD=&<*iNH
> =u
> zx<E)0(**Cx2$jCMBfBZNoN-
> Ej=)Bwa<cwnz3d>Lk?|a?H7N_kS!JQ?^tj+<krmMFS
> z%9Nnxp@j<Tb*Ao!#{2IpnP|8qDj-
> jXacIu%eP2NesPil1Cv@A4uU#T}kkAI|<oG%c
> zNa{+H{-
> zdCSESYz^#j)HSIlqVALk%1+h*Vjt?daQ@NE5;_um$ByxUPolMV54adNrc
> zd+^0Kj*pf#MGd%^7^w*%OC)?7b(OC(+#D95WGs$>lp%`I((6Yyyk=w4ova8q
> tktlx
> z>C79nT=rFzUQFXnZ2!^x7sL)pNR?;)ZORZe@>3~QI6NU(E0x;`o=mFs=g8q$j!O
> O&
> zy~)f$A|36&O1AfRt=qW$P-
> A5SmI%Kj@1wULnY=zE>&(9g;}ZJX<IPw)>r@Q)Gp*uu
> znceX3tWzz#3|b$|h-?#i*~FwB_jFCfhWBu-_*kPIZ8$56D)aq}yn^`#^=l)gqRrvp
> zRDR)d_*LIevl3m<6yirxt%afB4|g&QPv$?vkO)H@KLa1L{0-z)hR`#UJ4sGz!lB3F
> zSrnQof}#q_-
> MTbwXM_CWTb10ukZWS?^)0lx#UZE6P4!Zx5)rBKwmWrdTTN?y`s&~+
> z{Evgdp>)oNlv33IJk1k$R{`*E@NXW($IM~v$6cD+0R0~rdvU#P-VrFrj~yiiKyO*`
> zdmrX?oyXmWAkPl*Gav*L?^Y&ptN%+Ih>Q7OU&D<9ul;?;!6jcnd1_wzUCh>C
> #`*0W
> z!a@xhm}2%UIo6cy*)w~LXv$6r*=c`>*<3JJ0^hOppC@Wh5-bc!9bEe%e>>-
> P1b6@e
> zI?@^}l-0q07p4~&Z-
> (+KMp?|DG){zFWt%j%qNO^xp(qJI!2JKP@08QY+>=x!ST3Px
> z6vFKU=iXfp{S~1+{1u*S*C@k7YAp}TNqf6Ak)$VC#T0Q!PeabGyBjt(-
> vK}T?A3ou
> z0R<>C?`y$I?Z=Fn7cC3t)(YGjcAK9N$JXe3KYMw3xNAhy{xWtyR6F9^j|S}#77O
> +N
> zw>{lOmJtEZ=cjkPRu<_=vD?7@`B*UmEvlKsJht#5;fxI9lyn}S@%9GL<!YU_%Tz
> )U
> z{IV0S(z-
> Z3VmXk?gdpd_PmmrzowgW*;LIMgB$oB*c05YCO2L1uk<H)mt0V#uPX(5<
> zRzPy>Nw34nev_vB|0IvsYun(YpKt#J_ewzX4!<oM&jWUO0lH1;_&yL#Sei-
> m)=LB^
> zTAz|c$@GNpqh!Av#+J7Q{e5+dKQwHo#eODrW$@>xyR(TM>d#ldwJDUeLit
> VJ`SV#K
> z^4Is0-
> E|D0<{XXH0>!|ekU|QRI4~h(3YMk}Z(#8C^c9`h^{5GMy~;Z4thllVw);ZM
> zvQp#Cy;gzDN=7jNjVGW*NP&2y2C-
> 5n)Ml3B_~}B|a7;o<rc+r<9m0w^qHN9#hs*i@
> z^SWjHfOG1{v^xg<iiA}ZeuRa&SYsj~-oNQ(Dur-`hb!L-tB9!9j2|Eg`kG6aS`E;}
> zCZ${$+vsb0B^iXVmDPQF=@{+D+KkIy*5C<EXbyO+-$p-
> Np;_DeA}U#Grf)}D`AYW*
> zykl5@u{-{MI>(UsKb>PBe8F-x%skO8;F-
> ~ADW6Rn2pDPY@(ISyw~`NO=xm3_z$&zI
> zPvIJ_az9=|=#$h!{?-
> |jK>F{;56>09NrCMtcZE#UahuT0W}b$JXhwy!0K9QZh6J~y
> z<TD=;e53=umG3kB%k(jx|6b+@+_0K%@S9Jv4^qA*IPagdP^T#gdGA`aeWo(
> Lv90@3
> zDTs3kU~8vZDH)U}=nE16JzE5~FW?}hy0BYNSB@~K3IGo`tpI{qK-
> s`$ZF4Q3A3+*t
> z38^Gw;Q605i*A2%W}E54(0IQTZAbaUKW3g10e4NxJ~W@~r=`MsW9Y^F9C7
> b}4TXsh
> zATg+*8WU2*43Wqi1O0vS{&<St2T&2T-
> ~Pt%z25c}YJ0FT8Q*GQKI)2nVTJ>s6B=au
> znSSdX-
> FE+XMZ^5w@vlfooyuagUe5<rh{!W`l{~1PDOtF`xQK=R7y5e($(nz$v}@@n
> zX(M&!@)u+H=;i~XbJOOEDXQPtdQ7^{3Ed|p{ZgY-
> ^5RfM;y26&<u@UE_ARQa+|d6g
> zca>^a-
> uV&xYyZg|at5_f1Q!>2>lzgrx#)nKQP?3xPqzgf@o%~wL2b0b0Hqd2#!p9C
> zqYEh{V%0NaB)fUQtH&C4k8En_gZzd`NWgHvu?lV6S=V|BPB*+$x99q4i~H-
> mPvzM_
> z>o`1xeRp)(C4>a#QB4pA=|;aRh^!4bbMxL2*zfx^);<D&|Ch@1&;hE&!u;W~Y8
> -Mp
> z_+J|gwtU76oD|a1q8;AMLN=WB1CcG3Nb1@HsGL?2-
> }XmI31of*ZO{F3R<J6O4gce%
> zPNjIkHm-%0-
> UCHyD$d@*EYAfODz@y9&*3)~o*TQ#NwgtqdtOR<ueuv+`X}w%d^Qhy
> z$iyNCY$F+kfO91Q={@RSX~SJ--p0&!p(u>2|ARKr1g7o8J?Qt6{y*#-
> AjeKS8~9K{
> zm<49b*9h$XUwQ&ME<r5yYstT!CY#?^l9qEf3)?hiC60_<*n6ux#hJc~G2uFlTv8
> Uy
> zI>eqBdH-Dd0aty|AI~$B|Fyx+(}APq(nhhKl47wu>&wjfr6ilG{<r~EltSA4>1EQB
> zbeiog__nibEc+HyKCf`DC(ky|YR>8zw9+0>_|~@|ISB+^=Z{?jttY^*+^g5VgnM
> xR
> zCq=w*uI`hE!-
> xI%9VUBuuvzFQhRNIE?E&+Cz3McT@viq|nvyfKM6G{eOoxf=u0QI0
> zq^$TdqNtJe0h}k$F-+$ms=)w6@VsrS0n)}M@?l>F-
> ns_<J3_qyO`9OezVo|M5>Muh
> zZ{xz>$hG~fmg%4wyS4BJp(B6PMPgJP{4z1nO!Y5MHJ#^CDK--
> pX1l{8ov+g~mGPSA
> ztW$2Eb6m-
> s)bvwyy=OAiu&Nt9`w{t>4PE5Qy)+3&9WK*M)ADkvu^lgN)4+?P=%XIV
> zv?-
> 4`f_<8Wch!<U_{tMry1oMzhvMbW+37(~a)`k@cQX|YvIK!l@$9tY1kAPJ6s!u)
> z@riB=%{b-nOUjsGfLk@SsF|`^DR6c;Yr-SC74zG;3g(*)dR&dk#kmp2>f`ff6#RYd
> zJN<nYsc~Zxd4_&a_+v{JgODc11bXR+%_KhfmC|X<U2MXoKTr%LO0yQ4NCE#
> )b9imE
> z-pp~lq3nld`&`1XxyZ9{^`siH_-LnKbL9i2y(D<(^+98q?wMdYz7h904eFS(tO8Ps
> zi^;6nFI_gf0TX`%^?h6m0&Al@hM|7pp1;I=jy?6kzTIruzj%k!n7|r<hy&~a&Dec
> V
> zF>;zm^Lu@ZJ6a>A!FPuBT#>H#j1sm9$s5eN15Su)Jy6uzRrS>$ZynSoL4o?;ShI9
> *
> zeF719MxwU-M!w~pa>o2L-mu`on4{k&Fy#I|xtjbEH@!S;(lE@*pVfhB-
> NvldSqyTt
> zJ|E__I-
> FK?DgVq?6ZSvF{DMb!RbUzfDW(FJuG8z?Bkr<<5M8k3ZmZN!C@C4smXqHx
> zwWC2e?}AVaYOb+3o50f+G*HKT-dq83j{@2<%&P!jmKPA1NH;eX0V-
> PML_B&sy=T5B
> zrgK>eAB()=UJV^{Pt52)#H4K$?5RlD-
> fiD2gGVn9f~HNCVi$Fbz7AEoF<%^xRYayO
> zo1DEKu9l4-
> zhEMe{9!h$&!zK~!sVlX^xwYE^+(TXg%8lR|C%=hJbMuZ09ypEzxcf%
> z=&iSToOl0GF`ffNMLTAZwBPHTRkFY27C}$Coy2cNll#wXrC}g;X)!|+M%rwVUiB
> <U
> z5^4H9>~k&`%mkPAMGiq|fW82-
> +{XQ=K|F@eA}*MvX8Yl7gjKwYDGfDIqawmiJIfDG
> zT7gu!uw-
> iqHeQi);6y;OZ@!EY7)v&<8USJMgQ7Qe3xF&4w{T$j8oljBfxz?bR&aO#
> zw@=fnpJ--*&66>mH1Z=$crH5-
> aRFK_B><T$3|{h!G91e=rUqHyMllL&c1s~*USpxD
> zqCGkdBIRK0fxWRsd{qerrUgDVk1Qglc#`v>>E~ev-JCr<(c4m))?X+*#|PS3(3I5v
> z@han_>2WYYJ~I)k{-
> o~OjO#^k@`zuc7&q0Ga*f6Oo(H^4!WU5x4_6WgUD$c9bdzv(
> zQs-
> ?rR9w#FmnSg<k_6FRLio#$P<i`9D)pLWSWzGUzSEyxWeh@5vhIIUO!xX63yK*!
> z^(K^s449q%4GariXm>llwoWF=3{8c6!bC8q3-
> %LK$}8L`3;PbCfoFKN=}yGC1|a2H
> zV@S`SompJKl49-
> &V($&8n|{;<!YH;wcwIi8;XSU_E}Gte8i+kboTBVVuE^Jvzn3#3
> zuMcAy7^V>E)iC6={sFS@AK^NGSqB~b4wVDW6H4yFpVNXE<V4jHZE%LX+==
> -1UbS!<
> zZ*n~enX`u`b%a75>!OwZL-%XI`(r`z6hP=9;|CCSYTnxt{(G+=sDGeuh>wR4Z$){t
> zY&oF&r7R{Whm~_#9a{X>#!0JhwPtZT_4&$VQP$#Z>NFUpA(Mp}`M(jrMf?x
> q%qSU*
> z<wN+~QY9|C#2?CkH^fohNb-
> |~AEP*8{wHxmKjJJ$j%NNRarImp46wK)b{T|I2P%kT
> zto7!t&I$u`mRaDPE#ZE0%e`!vKo;Uf3R!5dGl}7-
> hYNh9hc>RfOmUPt7Qs({AGxZ*
> zd;xR_=J0cshFCHyUs~~VL!H)5;@Z#Wv+f5Q6sTkV#c?km#QJ%9g3jrHpMk1v(
> dH)+
> zl5)v6bNga4)HD2SRDOi!Y|in^tFRev`J-71L)l-4Fn^0iv(XK4QmQFdp)vAs69~ej
> zYeL#9WMV$kpEK__k>h5b<^{_OI$Oo_<1oe?R1+_=LYLzGY0K#U495*WPl&Y
> %-ee+P
> z?s*pcvseHPw6VhLKmnYDH!tWGz(VN@Q$Lj5Yu|tW8OYy~8<6R%z|1j)A-
> Cp~0W7EW
> zw$cEu>LvXJ=k1}+h4<(}h=?UT4E~FIV3-
> )`y|!2VADoaV(Z2e^4aVGUW;Xw=BR^NZ
> zWZUsq@u=ItXvd}_)bPc<!*Nt9<M0-3V$@VZ5&H!C02I-
> wB8ziOhtP)V`?ZNLsY219
> zkd=9DoRF;$ZhCmt;JBk@QclTO|DSpcI(lf7J#D%qL9(H3$;c@_RH0uUEwi^hCR
> OAq
> zvnmd^wF)L|pqEpf(Z3Jj9%>fL)dY}bZQ)Kk9g^*85Jw-pM<4t#R{Uu-
> Rned%9Y2G$
> zDa;N_&Cc)SfZ0DD!Yn2J)o@^BA=k`DM^ft{7Bxwwmk16^iSq81?Q0O1g`Gv0M
> Gtgi
> z6i+9+Yg8kdj|h?xbDTMaY99_C-
> 99?@m{~F1$@+70e!tsU?{rmk85C}{4%gmTQ<8Ib
> zpU~kTY4*Ydl=t@lyPg<i@`a$f`9O?5&j#b^n{U(tl44GJqkB1)2m>S#7+Wa0hw-
> 9B
> z2zU{V0s}5%){TyJfy40P3xq_5X4r0*T{9X+@*<otrt>e$?#*H>8WsDJw#IYPKf5F
> >
> zcr4%2g~Oslu{s6eV<Z90i%h-
> !O8&8`{`5KZ)+@&V$Jy}+`c*4_vkHx)pM!DVTYp)+
> zwR3sGMO_6vk%O?5d18<;)yYUcyy;T4ggOBXV}YUCm_0+rZ0LBQ$l-
> R>5$m09Nu1J7
> zweYeE(=Qxq_)VO>j-^E)gluf-
> mPEc*s)GJXvF4*UH1JnzK2m!xn32#sxc)R_wz8rc
> zdXg0Qxs3(04XrKsDp6nSpwuf%p>LlXRN7zV*(cbxn$fIBF@R*r8`!|-
> Xkh=1BQ7F3
> z-
> DWv9K<)=IOwM=N#D)Vy_L1o?=Ok2N7WVfW!Ct!z)wvsWK2MaAQ1c{|)I;AU
> )iKFg
> zi5DPx-
> oBQad1}^vIo15yR|W60Q@;pk%C3{n5PK1y<LDqHlYi9MU>Vv0B2*q2Pk`-G
> z`F-tr6)<L-Q-gpw-
> ury!P+VL1p#%&>cI=?*R9v5_2{Tr7V3px~dfWP~LX7V%lD%o^
> z4-
> 5F1jkyg(TAruJJ>G(Gv@uH*zt4Z6q9&<ToXCP@99F(_K#ss@QKTC2*Dd!EIM~J
> f
> zyi^m-
> zR1U^5HHB=QA%sdvQ0hwEbJB@mdNpG^{dqMZ_@tC*JQZMJWcWk>Wi~4
> N&RpA
> z68ZXsAAR5s8Z{G3;VIAgfM)ZsqT`Y1Lv8Mgi?Hm5krl{Qoh!`NhqdormAb+pHId
> dp
> z%(#f@w*EyjPM~0#%nQFev>H+OO&UhGrQEr638R{Ip+OGz0D!xquyNE5QL
> Ng%wYYi}
> zckra{!d?ic9I#?Ly$}m7R_)_7SFxfj3o{LGD<rv;JcmBL!dd%T>0xx>7~rYgZCV0H
> z|0)$$Je3*bNaw3Zd1ie{8Nm#nx=zE)e}1XAxDEB~IKKj2x;0PSPRxc5hs#>|%9v
> $x
> z6-m=b=0Z7$bTwcV-0ZJf7B&2avU!Okz@xf0Ddch1<lt+1FE!vkF(}8gfls1n-=pI6
> zi=gowN@36i6L*Uth_T>zgsXN&x`{j%;{>)>ddKu#RNM^Sexhc<Ft+(`@1L`u7*
> #c7
> z*|1z~I|>-hT?ewKjD~4z?j^XS40fH>i8+8IYv)CShwCJhmeP(@Nu%`-
> G(hDGilb$c
> z!nl5hTYuzRIJ9x(9F1uLff=!}S>w1J4>5eIjiMLomSAEp(h*K9nZ+kvBK6+CshWXp
> zYA?P9Th6@iUtgn;JwrqZHmw@Y+EWLUspM$-
> 2hxbQ?B8tiu9|#X=bk3KASA=1Hawp!
> Hpg#RSLPc@Y
> 
> diff --git a/engine/tests/Functional.commonAPI_C++/fuego_test.sh
> b/engine/tests/Functional.commonAPI_C++/fuego_test.sh
> index 94d74c4..0776809 100755
> --- a/engine/tests/Functional.commonAPI_C++/fuego_test.sh
> +++ b/engine/tests/Functional.commonAPI_C++/fuego_test.sh
> @@ -1,40 +1,49 @@
> -tarball=commonAPI_C++.tar.gz
> +#!/bin/bash
> 
> -function test_build {
> -    $CXX -std=gnu++11 ./commonAPI_Dbus/HelloWorldService.cpp
> ./commonAPI_Dbus/HelloWorldStubImpl.cpp
> ./commonAPI_Dbus/HelloWorldDBusStubAdapter.cpp
> ./commonAPI_Dbus/HelloWorldStubDefault.cpp
> ./commonAPI_Dbus/HelloWorldDBusDeployment.cpp -rdynamic -
> lCommonAPI -lCommonAPI-DBus -ldbus-1 -I
> $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -I
> $SDKTARGETSYSROOT/usr/include/dbus-1.0/ -I
> $SDKTARGETSYSROOT/usr/lib/dbus-1.0/include/ -o HelloWorldService_Dbus
> -    $CXX -std=gnu++11 ./commonAPI_Dbus/HelloWorldClient.cpp
> ./commonAPI_Dbus/HelloWorldDBusProxy.cpp
> ./commonAPI_Dbus/HelloWorldDBusDeployment.cpp -rdynamic -
> lCommonAPI -lCommonAPI-DBus -ldbus-1 -I
> $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -I
> $SDKTARGETSYSROOT/usr/include/dbus-1.0/ -I
> $SDKTARGETSYSROOT/usr/lib/dbus-1.0/include/ -o HelloWorldClient_Dbus
> +tarball=../commonAPI/commonapi.tar.gz
> +source $FUEGO_CORE/engine/tests/commonAPI/common_api.sh
> 
> -    $CXX -std=gnu++11 ./commonAPI_SomeIp/HelloWorldService.cpp
> ./commonAPI_SomeIp/HelloWorldStubImpl.cpp
> ./commonAPI_SomeIp/HelloWorldSomeIPStubAdapter.cpp
> ./commonAPI_SomeIp/HelloWorldStubDefault.cpp
> ./commonAPI_SomeIp/HelloWorldSomeIPDeployment.cpp -rdynamic -
> lCommonAPI -lCommonAPI-SomeIP -lvsomeip -I
> $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -o
> HelloWorldService_SomeIp
> -    $CXX -std=gnu++11 ./commonAPI_SomeIp/HelloWorldClient.cpp
> ./commonAPI_SomeIp/HelloWorldSomeIPProxy.cpp
> ./commonAPI_SomeIp/HelloWorldSomeIPDeployment.cpp -rdynamic -
> lCommonAPI -lCommonAPI-SomeIP -lvsomeip -I
> $SDKTARGETSYSROOT/usr/include/CommonAPI-3.1/ -o
> HelloWorldClient_SomeIp
> +
> +function pre_check {
> +    is_on_target libCommonAPI.so COMMON_API /lib:/usr/lib:/usr/local/lib
> +    assert_define COMMON_API
> +    is_on_target libCommonAPI-DBus.so COMMON_API_DBUS
> /lib:/usr/lib:/usr/local/lib
> +    assert_define COMMON_API_DBUS
> +
> +    is_on_target libCommonAPI-SomeIP.so COMMON_API_SOMEIP
> /lib:/usr/lib:/usr/local/lib
> +    assert_define COMMON_API_SOMEIP
> +    is_on_target libvsomeip.so VSOMEIP /lib:/usr/lib:/usr/local/lib
> +    assert_define VSOMEIP
> +    is_on_target libvsomeip-cfg.so VSOMEIP_CFG /lib:/usr/lib:/usr/local/lib
> +    assert_define VSOMEIP_CFG
>  }
> 
>  function test_deploy {
> -	put HelloWorldService_Dbus $BOARD_TESTDIR/fuego.$TESTDIR/
> -	put HelloWorldClient_Dbus $BOARD_TESTDIR/fuego.$TESTDIR/
> -
> -	put HelloWorldService_SomeIp $BOARD_TESTDIR/fuego.$TESTDIR/
> -	put HelloWorldClient_SomeIp $BOARD_TESTDIR/fuego.$TESTDIR/
> -	put ./commonAPI_SomeIp/fidl/vsomeip.json
> $BOARD_TESTDIR/fuego.$TESTDIR/
> +    report "cd $BOARD_TESTDIR/fuego.$TESTDIR/ && mkdir -p
> commonAPI_Dbus commonAPI_SomeIp fidl"
> +    put build/project/commonAPI_Dbus/HelloWorldService
> $BOARD_TESTDIR/fuego.$TESTDIR/commonAPI_Dbus
> +    put build/project/commonAPI_Dbus/HelloWorldClient
> $BOARD_TESTDIR/fuego.$TESTDIR/commonAPI_Dbus
> +    put build/project/commonAPI_SomeIp/HelloWorldService
> $BOARD_TESTDIR/fuego.$TESTDIR/commonAPI_SomeIp
> +    put build/project/commonAPI_SomeIp/HelloWorldClient
> $BOARD_TESTDIR/fuego.$TESTDIR/commonAPI_SomeIp
> +    put build/project/fidl/vsomeip.json
> $BOARD_TESTDIR/fuego.$TESTDIR/fidl
>  }
> 
>  function test_run {
> -
> 
> -	report "cd $BOARD_TESTDIR/fuego.$TESTDIR; export
> PATH=$BOARD_TESTDIR/fuego.$TESTDIR:$PATH; export
> VSOMEIP_CONFIGURATION_FILE=./fidl/vsomeip.json; chmod 777 *;
> -	if (./HelloWorldService_Dbus &); then echo 'TEST-1 OK'; else echo
> 'TEST-1 FAILED'; fi;\
> -	if ./HelloWorldClient_Dbus; then echo 'TEST-2 OK'; else echo 'TEST-2
> FAILED'; fi;
> -	pkill HelloWorldServi
> 
> -	if (VSOMEIP_APPLICATION_NAME=service-sample
> ./HelloWorldService_SomeIp &); then echo 'TEST-3 OK'; else echo 'TEST-3
> FAILED'; fi;\
> -	if (VSOMEIP_APPLICATION_NAME=client-sample
> ./HelloWorldClient_SomeIp); then echo 'TEST-4 OK'; else echo 'TEST-4
> FAILED'; fi;
> -    pkill HelloWorldServi"
> +    report "cd $BOARD_TESTDIR/fuego.$TESTDIR; export
> PATH=$BOARD_TESTDIR/fuego.$TESTDIR:$PATH; \
> +        export LD_LIBRARY_PATH=\`pwd\`:\$LD_LIBRARY_PATH; \
> +        export VSOMEIP_CONFIGURATION_FILE=./fidl/vsomeip.json; chmod
> 777 *; \
> +        if (commonAPI_Dbus/HelloWorldService &); then echo 'TEST-1 OK'; else
> echo 'TEST-1 FAILED'; fi;\
> +            if commonAPI_Dbus/HelloWorldClient; then echo 'TEST-2 OK'; else
> echo 'TEST-2 FAILED'; fi;\
> +                pkill HelloWorldServi
> +
> +    if (VSOMEIP_APPLICATION_NAME=service-sample
> commonAPI_SomeIp/HelloWorldService &); then echo 'TEST-3 OK'; else echo
> 'TEST-3 FAILED'; fi;\
> +        if (VSOMEIP_APPLICATION_NAME=client-sample
> commonAPI_SomeIp/HelloWorldClient); then echo 'TEST-4 OK'; else echo
> 'TEST-4 FAILED'; fi;\
> +            pkill HelloWorldServi"
>  }
> 
>  function test_processing {
> -	log_compare "$TESTDIR" "4" "^TEST.*OK" "p"
> -    	log_compare "$TESTDIR" "0" "^TEST.*FAILED" "n"
> +    log_compare "$TESTDIR" "4" "^TEST.*OK" "p"
> +    log_compare "$TESTDIR" "0" "^TEST.*FAILED" "n"
>  }
> 
> -
> -
> -
> --
> 2.9.3.windows.3
> 
> 
> 
> _______________________________________________
> Fuego mailing list
> Fuego@lists.linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/fuego

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Fuego] [PATCH 09/18] solve boost library header file interface change problem
@ 2017-10-13 10:06 Song Cai
  0 siblings, 0 replies; 21+ messages in thread
From: Song Cai @ 2017-10-13 10:06 UTC (permalink / raw)
  To: fuego

By the way, delete the tmp file in tarball file.

In header file `boost/system/error_code.hpp`, the class method defined in class error_category is
changed since version 1.53.0, which will cause the following error:

```c
boost-system.c:12:15: error: looser throw specifier for 'virtual const char* application_category::name() const'
   const char *name() const { return "application"; }
               ~~~
In file included from boost-system.c:3:0:
/usr/include/boost/system/error_code.hpp:190:32: error:   overriding 'virtual const char* boost::system::error_category::name() const noexcept'
    virtual const char *     name() const BOOST_SYSTEM_NOEXCEPT = 0;
                              ~~~
```

Signed-off-by: Song Cai <cais.fnst@cn.fujitsu.com>
---
 engine/tests/Functional.boost/boost.tar.gz | Bin 4402 -> 4347 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

diff --git a/engine/tests/Functional.boost/boost.tar.gz b/engine/tests/Functional.boost/boost.tar.gz
index 1203a679ca168f1c6d009c76ddd04155c60e67af..0d1ace8fb705a69d9d47e3e20434243915337eb1 100755
GIT binary patch
literal 4347
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

literal 4402
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%0DDCLI}t>S|MBZ2e8RGVksZ2T(K^{
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

-- 
2.9.3.windows.3




^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2017-10-17 22:51 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-13  9:45 [Fuego] [PATCH 01/18] remove extra word in command Song Cai
2017-10-13  9:45 ` [Fuego] [PATCH 02/18] add http proxy Song Cai
2017-10-13  9:45 ` [Fuego] [PATCH 03/18] rewrite parser.py file using fuego common function Song Cai
2017-10-13  9:45 ` [Fuego] [PATCH 04/18] repair build script and add target lib check Song Cai
2017-10-13  9:45 ` [Fuego] [PATCH 05/18] repair librsvg build script Song Cai
2017-10-13  9:45 ` [Fuego] [PATCH 06/18] add tarball file to repair libtar test case Song Cai
2017-10-17  1:07   ` Bird, Timothy
2017-10-13  9:45 ` [Fuego] [PATCH 07/18] repair test program build script Song Cai
2017-10-13  9:45 ` [Fuego] [PATCH 09/18] solve boost library header file interface change problem Song Cai
2017-10-17 21:12   ` Bird, Timothy
2017-10-13  9:45 ` [Fuego] [PATCH 10/18] add target board boost library check Song Cai
2017-10-13  9:45 ` [Fuego] [PATCH 12/18] using common script to generate dbus test program Song Cai
2017-10-17 22:50   ` Bird, Timothy
2017-10-13  9:45 ` [Fuego] [PATCH 13/18] using common script to generate someip " Song Cai
2017-10-17 22:51   ` Bird, Timothy
2017-10-13  9:45 ` [Fuego] [PATCH 14/18] using common script to generate commonapi c++ " Song Cai
2017-10-17 22:51   ` Bird, Timothy
2017-10-13  9:45 ` [Fuego] [PATCH 15/18] avoid inline function not defined problem Song Cai
2017-10-13  9:45 ` [Fuego] [PATCH 16/18] add libneon precheck Song Cai
2017-10-13  9:45 ` [Fuego] [PATCH 17/18] solve glib test program failed problem Song Cai
2017-10-13 10:06 [Fuego] [PATCH 09/18] solve boost library header file interface change problem Song Cai

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.