From 4f8d7b00e9cb2163448e9d01483e04e0cf9be3e7 Mon Sep 17 00:00:00 2001 From: Emil Tin Date: Thu, 1 Dec 2011 20:17:55 +0100 Subject: [PATCH 01/16] Rakefile for building binaries --- .gitignore | 4 +++ Rakefile | 75 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 79 insertions(+) create mode 100644 Rakefile diff --git a/.gitignore b/.gitignore index 6ce0714bd..d82026a43 100644 --- a/.gitignore +++ b/.gitignore @@ -39,6 +39,10 @@ SconsBuilder* .scon* .build +# Rake build directory # +####################### +build + # Eclipse related files # ######################### .setting* diff --git a/Rakefile b/Rakefile new file mode 100644 index 000000000..fd257fc4c --- /dev/null +++ b/Rakefile @@ -0,0 +1,75 @@ + +build_dir = "build" +compiler = 'g++' #build osrm with the default gcc 4.2. +opt = '' #don't use OpenMP +proto = 'DataStructures/pbf-proto' +formats = "-L#{proto} -losmformat.pb.o -lfileformat.pb.o" + +#assume libs are installed with homebrew +#call out to the brew binary to find folders with latest version +stxxl_prefix = `brew --prefix libstxxl`.strip +boost_prefix = `brew --prefix boost`.strip +stxxl = "-I#{stxxl_prefix}/include -L#{stxxl_prefix}/lib -lstxxl " +boost = "-L#{boost_prefix}/lib -lboost_system-mt -lboost_thread-mt -lboost_regex-mt -lboost_iostreams-mt " + +xml2 = "-I/usr/include/libxml2 -lxml2 " +bz = "-lbz2 -lz " +pbf = "-lprotobuf " + + +task :default => 'compile' + +desc "Compile OSRM" +task :compile => [build_dir, "protobuffer", "binaries"] do + puts "Done." +end + +directory build_dir + + +#compile protobuffer files +task "protobuffer" => ["#{proto}/fileformat.pb.o", "#{proto}/osmformat.pb.o" ] + +file "#{proto}/fileformat.pb.o" => ["#{proto}/fileformat.pb.cc"] do |t| + sh "#{compiler} -c #{proto}/fileformat.pb.cc -o #{proto}/fileformat.pb.o #{opt}" +end + +file "#{proto}/osmformat.pb.o" => ["#{proto}/osmformat.pb.cc"] do |t| + sh "#{compiler} -c #{proto}/osmformat.pb.cc -o #{proto}/osmformat.pb.o #{opt}" +end + +file "#{proto}/fileformat.pb.cc" => ["#{proto}/fileformat.proto"] do |t| + sh "protoc #{proto}/fileformat.proto -I=#{proto} --cpp_out=#{proto}" +end + +file "#{proto}/osmformat.pb.cc" => ["#{proto}/osmformat.proto"] do |t| + sh "protoc #{proto}/osmformat.proto -I=#{proto} --cpp_out=#{proto}" +end + +#compile binaries +task "binaries" => ["#{build_dir}/osrm-extract", "#{build_dir}/osrm-prepare", "#{build_dir}/osrm-routed" ] + +def cpp_files prerequisites + prerequisites.select { |f| f =~ /.cpp$/ } +end + +task :headers => FileList['typedefs.h', 'DataStructures/*.h', 'Contractor/*.h', 'Util/*.h'] + +file "#{build_dir}/osrm-extract" => :headers +file "#{build_dir}/osrm-extract" => ['extractor.cpp'] do |t| + sh "#{compiler} -o #{t.name} #{cpp_files(t.prerequisites).join ' '} #{stxxl+xml2+boost+bz+pbf+formats} #{opt}" +end + +file "#{build_dir}/osrm-prepare" => :headers +file "#{build_dir}/osrm-prepare" => ['createHierarchy.cpp', 'Contractor/EdgeBasedGraphFactory.cpp'] do |t| + sh "#{compiler} -o #{t.name} #{cpp_files(t.prerequisites).join ' '} #{stxxl+xml2+boost} #{opt}" +end + +file "#{build_dir}/osrm-routed" => :headers +file "#{build_dir}/osrm-routed" => FileList['Descriptors/*.h', 'Server/*.h', 'Plugins/*.h'] +file "#{build_dir}/osrm-routed" => ['routed.cpp', 'Descriptors/DescriptionFactory.cpp'] do |t| + sh "#{compiler} -o #{t.name} #{cpp_files(t.prerequisites).join ' '} #{stxxl+xml2+boost+bz} #{opt}" +end + + + From cccd76b39ef34d9b3ba86cb3e305cab47a35bed8 Mon Sep 17 00:00:00 2001 From: Emil Tin Date: Sat, 3 Dec 2011 08:33:33 +0100 Subject: [PATCH 02/16] updated SConstruct file to compile on Mac --- SConstruct | 90 +++++++++++++++++++++++++++++++++--------------------- 1 file changed, 55 insertions(+), 35 deletions(-) diff --git a/SConstruct b/SConstruct index 0440fa32b..5cbab86de 100644 --- a/SConstruct +++ b/SConstruct @@ -49,49 +49,65 @@ def CheckProtobuf(context, version): context.Result(ret) return ret + AddOption('--cxx', dest='cxx', type='string', nargs=1, action='store', metavar='STRING', help='C++ Compiler') AddOption('--stxxlroot', dest='stxxlroot', type='string', nargs=1, action='store', metavar='STRING', help='root directory of STXXL') AddOption('--verbosity', dest='verbosity', type='string', nargs=1, action='store', metavar='STRING', help='make Scons talking') AddOption('--buildconfiguration', dest='buildconfiguration', type='string', nargs=1, action='store', metavar='STRING', help='debug or release') -env = Environment(ENV = {'PATH' : os.environ['PATH']} ,COMPILER = GetOption('cxx')) -if sys.platform.startswith("freebsd"): - env.ParseConfig('pkg-config --cflags --libs protobuf') + +env = Environment( ENV = {'PATH' : os.environ['PATH']} ,COMPILER = GetOption('cxx')) +conf = Configure(env, custom_tests = { 'CheckBoost' : CheckBoost, 'CheckProtobuf' : CheckProtobuf }) + + if GetOption('cxx') is None: #default Compiler print 'Using default C++ Compiler: ', env['CXX'] else: env.Replace(CXX = GetOption('cxx')) print 'Using user supplied C++ Compiler: ', env['CXX'] -if GetOption('stxxlroot') is not None: - env.Append(CPPPATH = GetOption('stxxlroot')+'/include') - env.Append(LIBPATH = GetOption('stxxlroot')+'/lib') - print 'STXXLROOT = ', GetOption('stxxlroot') -if sys.platform == 'win32': - #SCons really wants to use Microsoft compiler - print "Compiling is not yet supported on Windows" - Exit(-1) -else: #Mac OS X - if sys.platform == 'darwin': - print "Compiling is experimental on Mac" - env.Append(CPPPATH = ['/opt/local/include/', '/opt/local/include/libxml2']) - env.Append(LIBPATH = ['/opt/local/lib']) - elif sys.platform.startswith('freebsd'): - env.Append(CPPPATH = ['/usr/local/include', '/usr/local/include/libxml2']) - env.Append(LIBPATH = ['/usr/local/lib']) - else: - env.Append(CPPPATH = ['/usr/include', '/usr/include/include', '/usr/include/libxml2/']) + if GetOption('buildconfiguration') == 'debug': env.Append(CCFLAGS = ['-Wall', '-g3', '-rdynamic']) else: - env.Append(CCFLAGS = ['-O3', '-DNDEBUG', '-march=native']) -#print "Compiling with: ", env['CXX'] -conf = Configure(env, custom_tests = { 'CheckBoost' : CheckBoost, 'CheckProtobuf' : CheckProtobuf }) + env.Append(CCFLAGS = ['-O3', '-DNDEBUG']) + + +if sys.platform == 'darwin': #Mac OS X + env.Append(CPPPATH = ['/usr/include/libxml2'] ) #comes with os x + #assume stxxl and boost are installed via homebrew. + #call out to brew to get the folder locations + import subprocess + stxxl_prefix = subprocess.check_output(["brew", "--prefix", "libstxxl"]).strip() + boost_prefix = subprocess.check_output(["brew", "--prefix", "boost"]).strip() + env.Append(CPPPATH = [stxxl_prefix+"/include"] ) + env.Append(LIBPATH = [stxxl_prefix+"/lib"] ) + env.Append(CPPPATH = [boost_prefix+"/include"] ) + env.Append(LIBPATH = [boost_prefix+"/lib"] ) +elif sys.platform.startswith("freebsd"): + env.ParseConfig('pkg-config --cflags --libs protobuf') + env.Append(CPPPATH = ['/usr/local/include', '/usr/local/include/libxml2']) + env.Append(LIBPATH = ['/usr/local/lib']) + if GetOption('stxxlroot') is not None: + env.Append(CPPPATH = GetOption('stxxlroot')+'/include') + env.Append(LIBPATH = GetOption('stxxlroot')+'/lib') + print 'STXXLROOT = ', GetOption('stxxlroot') + if GetOption('buildconfiguration') != 'debug': + env.Append(CCFLAGS = ['-march=native']) + #print "Compiling with: ", env['CXX'] + env.Append(CCFLAGS = ['-fopenmp']) + env.Append(LINKFLAGS = ['-fopenmp']) +elif sys.platform == 'win32': + #SCons really wants to use Microsoft compiler + print "Compiling is not yet supported on Windows" + Exit(-1) +else: + print "Unknown platform.." + env.Append(CPPPATH = ['/usr/include', '/usr/include/include', '/usr/include/libxml2/']) + + if not conf.CheckHeader('omp.h'): print "Compiler does not support OpenMP. Exiting" - if sys.platform == 'darwin': - print "Continuing because we are on Mac. This might be fatal." - else: - Exit(-1) + Exit(-1) if not conf.CheckLibWithHeader('xml2', 'libxml/xmlreader.h', 'CXX'): print "libxml2 library or header not found. Exiting" Exit(-1) @@ -131,8 +147,13 @@ if not conf.CheckCXXHeader('boost/thread.hpp'): print "boost thread header not found. Exiting" Exit(-1) if not conf.CheckLib('boost_system', language="C++"): - print "boost_system library not found. Exiting" - Exit(-1) + if not conf.CheckLib('boost_system-mt', language="C++"): + print "boost_system library not found. Exiting" + Exit(-1) + else: + print "using boost -mt" + env.Append(CCFLAGS = ' -lboost_system-mt') + env.Append(LINKFLAGS = ' -lboost_system-mt') if not conf.CheckCXXHeader('boost/bind.hpp'): print "boost/bind.hpp not found. Exiting" Exit(-1) @@ -162,19 +183,18 @@ if not (conf.CheckProtobuf('2.3.0')): Exit(-1); if not (env.Detect('protoc')): print 'protobuffer compiler not found' - Exit(-1); + + protobld = Builder(action = 'protoc -I=DataStructures/pbf-proto --cpp_out=DataStructures/pbf-proto $SOURCE') env.Append(BUILDERS = {'Protobuf' : protobld}) env.Protobuf('DataStructures/pbf-proto/fileformat.proto') env.Protobuf('DataStructures/pbf-proto/osmformat.proto') -env.Append(CCFLAGS = ['-fopenmp']) -env.Append(LINKFLAGS = ['-fopenmp']) +env.Append(CCFLAGS = ['-lboost_regex', '-lboost_iostreams', '-lbz2', '-lz', '-lprotobuf']) +#env.Append(LINKFLAGS = ['-lboost_system']) env.Program(target = 'osrm-extract', source = ["extractor.cpp", 'DataStructures/pbf-proto/fileformat.pb.cc', 'DataStructures/pbf-proto/osmformat.pb.cc']) env.Program(target = 'osrm-prepare', source = ["createHierarchy.cpp", 'Contractor/EdgeBasedGraphFactory.cpp']) -env.Append(CCFLAGS = ['-lboost_regex', '-lboost_iostreams', '-lbz2', '-lz', '-lprotobuf']) -env.Append(LINKFLAGS = ['-lboost_system']) env.Program(target = 'osrm-routed', source = ["routed.cpp", 'Descriptors/DescriptionFactory.cpp']) env = conf.Finish() From 1c38827b556ab057dde32f76b20e3a908cd48ad0 Mon Sep 17 00:00:00 2001 From: Emil Tin Date: Sat, 3 Dec 2011 08:34:57 +0100 Subject: [PATCH 03/16] remove rakefile --- Rakefile | 75 -------------------------------------------------------- 1 file changed, 75 deletions(-) delete mode 100644 Rakefile diff --git a/Rakefile b/Rakefile deleted file mode 100644 index fd257fc4c..000000000 --- a/Rakefile +++ /dev/null @@ -1,75 +0,0 @@ - -build_dir = "build" -compiler = 'g++' #build osrm with the default gcc 4.2. -opt = '' #don't use OpenMP -proto = 'DataStructures/pbf-proto' -formats = "-L#{proto} -losmformat.pb.o -lfileformat.pb.o" - -#assume libs are installed with homebrew -#call out to the brew binary to find folders with latest version -stxxl_prefix = `brew --prefix libstxxl`.strip -boost_prefix = `brew --prefix boost`.strip -stxxl = "-I#{stxxl_prefix}/include -L#{stxxl_prefix}/lib -lstxxl " -boost = "-L#{boost_prefix}/lib -lboost_system-mt -lboost_thread-mt -lboost_regex-mt -lboost_iostreams-mt " - -xml2 = "-I/usr/include/libxml2 -lxml2 " -bz = "-lbz2 -lz " -pbf = "-lprotobuf " - - -task :default => 'compile' - -desc "Compile OSRM" -task :compile => [build_dir, "protobuffer", "binaries"] do - puts "Done." -end - -directory build_dir - - -#compile protobuffer files -task "protobuffer" => ["#{proto}/fileformat.pb.o", "#{proto}/osmformat.pb.o" ] - -file "#{proto}/fileformat.pb.o" => ["#{proto}/fileformat.pb.cc"] do |t| - sh "#{compiler} -c #{proto}/fileformat.pb.cc -o #{proto}/fileformat.pb.o #{opt}" -end - -file "#{proto}/osmformat.pb.o" => ["#{proto}/osmformat.pb.cc"] do |t| - sh "#{compiler} -c #{proto}/osmformat.pb.cc -o #{proto}/osmformat.pb.o #{opt}" -end - -file "#{proto}/fileformat.pb.cc" => ["#{proto}/fileformat.proto"] do |t| - sh "protoc #{proto}/fileformat.proto -I=#{proto} --cpp_out=#{proto}" -end - -file "#{proto}/osmformat.pb.cc" => ["#{proto}/osmformat.proto"] do |t| - sh "protoc #{proto}/osmformat.proto -I=#{proto} --cpp_out=#{proto}" -end - -#compile binaries -task "binaries" => ["#{build_dir}/osrm-extract", "#{build_dir}/osrm-prepare", "#{build_dir}/osrm-routed" ] - -def cpp_files prerequisites - prerequisites.select { |f| f =~ /.cpp$/ } -end - -task :headers => FileList['typedefs.h', 'DataStructures/*.h', 'Contractor/*.h', 'Util/*.h'] - -file "#{build_dir}/osrm-extract" => :headers -file "#{build_dir}/osrm-extract" => ['extractor.cpp'] do |t| - sh "#{compiler} -o #{t.name} #{cpp_files(t.prerequisites).join ' '} #{stxxl+xml2+boost+bz+pbf+formats} #{opt}" -end - -file "#{build_dir}/osrm-prepare" => :headers -file "#{build_dir}/osrm-prepare" => ['createHierarchy.cpp', 'Contractor/EdgeBasedGraphFactory.cpp'] do |t| - sh "#{compiler} -o #{t.name} #{cpp_files(t.prerequisites).join ' '} #{stxxl+xml2+boost} #{opt}" -end - -file "#{build_dir}/osrm-routed" => :headers -file "#{build_dir}/osrm-routed" => FileList['Descriptors/*.h', 'Server/*.h', 'Plugins/*.h'] -file "#{build_dir}/osrm-routed" => ['routed.cpp', 'Descriptors/DescriptionFactory.cpp'] do |t| - sh "#{compiler} -o #{t.name} #{cpp_files(t.prerequisites).join ' '} #{stxxl+xml2+boost+bz} #{opt}" -end - - - From 3c5ce306a722f10555703bbb0085df388993b9c8 Mon Sep 17 00:00:00 2001 From: Emil Tin Date: Sat, 3 Dec 2011 14:30:07 +0100 Subject: [PATCH 04/16] Rake task for reprocessing data, setting up config files etc inside sandbox folder --- .gitignore | 4 ++-- Rakefile | 55 +++++++++++++++++++++++++++++++++++++++++++++++++ SConstruct | 6 +++--- amager.osm.pbf | Bin 0 -> 210405 bytes 4 files changed, 60 insertions(+), 5 deletions(-) create mode 100644 Rakefile create mode 100644 amager.osm.pbf diff --git a/.gitignore b/.gitignore index d82026a43..e5d81496b 100644 --- a/.gitignore +++ b/.gitignore @@ -39,9 +39,9 @@ SconsBuilder* .scon* .build -# Rake build directory # +# sandbox directory # ####################### -build +sandbox # Eclipse related files # ######################### diff --git a/Rakefile b/Rakefile new file mode 100644 index 000000000..e28fec545 --- /dev/null +++ b/Rakefile @@ -0,0 +1,55 @@ +sandbox = "sandbox" #where to locate builds, server configs and test data +osm_data = "amager" #name of OSM data file + +desc "Recompile, reprocess OSM data and run server" +task :default => [:compile, :process, :run] + +desc "Compile" +task :compile do + system "scons" +end + + +file "#{sandbox}/amager.osm.pbf" => "amager.osm.pbf" do |t| + system "cp #{t.prerequisites.join} #{t.name}" +end + +desc "Reprocess OSM test data" +task :process => ["#{sandbox}/amager.osm.pbf", :setup] do + prev = Dir.pwd + cd sandbox #we must be in the sandbox folder to use the speedprofile.ini in that folder + system "./osrm-extract amager.osm.pbf" + system "./osrm-prepare amager.osrm amager.osrm.restrictions" + cd prev +end + +desc "Setup server files" +task :setup => ["#{sandbox}/speedprofile.ini", "#{sandbox}/extractor.ini", "#{sandbox}/server.ini"] + +file "#{sandbox}/speedprofile.ini" => "speedprofile.ini" do |t| + system "cp #{t.prerequisites.join} #{t.name}" +end + +file "#{sandbox}/extractor.ini" => "extractor.ini" do |t| + system "cp #{t.prerequisites.join} #{t.name}" +end + +file "#{sandbox}/server.ini" => "server.ini" do |t| + #first time the file is copied, we adjusts server settings to point to data files in our sandbox folder + text = File.read(t.prerequisites.join) + text.gsub!('/opt/osm/germany', "#{Dir.pwd}/sandbox/#{osm_data}") + file = File.new( t.name, "w+") + file.puts text + file.close +end + +desc "Run the OSRM server" +task :run => :setup do + cd sandbox + system "osrm-routed" +end + +desc "Run all test" +task :test do + puts "Test would go here..." +end \ No newline at end of file diff --git a/SConstruct b/SConstruct index 5cbab86de..21022ac5b 100644 --- a/SConstruct +++ b/SConstruct @@ -193,8 +193,8 @@ env.Protobuf('DataStructures/pbf-proto/osmformat.proto') env.Append(CCFLAGS = ['-lboost_regex', '-lboost_iostreams', '-lbz2', '-lz', '-lprotobuf']) #env.Append(LINKFLAGS = ['-lboost_system']) -env.Program(target = 'osrm-extract', source = ["extractor.cpp", 'DataStructures/pbf-proto/fileformat.pb.cc', 'DataStructures/pbf-proto/osmformat.pb.cc']) -env.Program(target = 'osrm-prepare', source = ["createHierarchy.cpp", 'Contractor/EdgeBasedGraphFactory.cpp']) -env.Program(target = 'osrm-routed', source = ["routed.cpp", 'Descriptors/DescriptionFactory.cpp']) +env.Program(target = 'sandbox/osrm-extract', source = ["extractor.cpp", 'DataStructures/pbf-proto/fileformat.pb.cc', 'DataStructures/pbf-proto/osmformat.pb.cc']) +env.Program(target = 'sandbox/osrm-prepare', source = ["createHierarchy.cpp", 'Contractor/EdgeBasedGraphFactory.cpp']) +env.Program(target = 'sandbox/osrm-routed', source = ["routed.cpp", 'Descriptors/DescriptionFactory.cpp']) env = conf.Finish() diff --git a/amager.osm.pbf b/amager.osm.pbf new file mode 100644 index 0000000000000000000000000000000000000000..bfcb5b654ffa5edd39599ce3d923ea72c28b0c8e GIT binary patch literal 210405 zcmc$`1z48L)-bGyinM@~G}0x~-5}jv(hbrL($b)WbV+x2s5H{uiXigS)pqt{`x}|=5 zvvS7q^QWJNpYPtXZ)iMcg?D$3`)9<wGE-MU4p|iRpE*hIq%reLeaKR=!a`IOgxiAvN*9byO+df{jSxX{!JVd%&r}Ts+9Bkig1{vAf z_}Esqx34$RSv2H?pbn$iwtKh?5!TzWES?7y<3!77eT1>|usk2QHLvcwO9Vra+sV*Q z)#YU8+=s=749hIdC~w)UlmMtek>ev??NW(Zkl(^_ZCrh6QT zH1N~xIgHk|XQ?qMXK}WWSX*^!(uLf1hS{<)#}mhl>Xh)ZlJ61~wM-Pnb-nA5WpTFe zJhaBw+OmkFg}v?asL+biGa!T^C+A?J`CFnh4yub;b8FIhe6eBwl=Ly<;@86Jx88?~ zNsY7TY>oT)wq34t4D}cdkA_QY7Ns`Sl5Htm>UCUXT}^$8=hxVMkXVXY)TNHUEPVdzEHO@q;_5S>pRGH#PLw zW{QktqJ-*k>*gFuUjr>XnEd>my6@G>6y*2hts0H`yIzs?eg3?;Jjzhn%vNnJ7fO`i zx4PcM(h3`^563n$lgmiP=k;aXJ%yfk;wICg?hW$-Ds3NUlHhUp z>DTZYj0*J(zJAeZ=V>@BY0Z}()Y{B<3};#K(PtQ4N`g%Y?|oUhm367ol2RT=KR|z8 z5Gr2t(lL4 zB6ID0s%Il|;_VoUYqgIDPggRtem2e0#z*;>OBBOA%m))!1YT7kIU(iosXCF~oQWiDdF5s{#5p^XfOC$Un@KFo@ zf_}w1uKqf~S#0WgI1}wmYos_Ezbb|b7!LI{T&{lR5mL$J-GdxKAFSSJxN}8xft7pv zEerlgMMPTKMzI#^gV!dMboX+4~V*^PSs-=ab&?&KxybAxbKue(c6{H)`z?6z%|o zxKarl1%Ec$eT55+b&N7ceyL@N%}Z+UjEjO!37L>^)1Y z0MIHY<~8zc=*QU|S|f9px|QsV3hOJ|YAV@lAj+0a35w0CN1#J!1uvOp?ID6Du0g1n zhT+2mjX(-)(zizRmAFX+ihlx45y^@PO!{N^ZE1f8Nd-ol zeu^&qc*97kO1tNkLs=o3>0|;U_ZcLJYY4nY9FBzODxztBgSpOVxXS`KO^wWQWxqDL zyBFM#Hnvs%&k(MIJFQuWN5QlskBbD`_u;N{5swmSNA!yXeGC65i2qe?|9IdnpAFU@ zBKdyA+$dKg7GER=avJ;-mT&bvxcvqb?ghyG&`IIz*6a`rZ zK4}5_6Js3yikeapVZ}n2IaC-u03%Ei z3k(tDNd%zsRf*uM%mOje*TgjL{fI(bvVF>G2>ljP=~cq$ZygVc(ET|R-l_+ocQU6| zn}1CeLt3ZT;xrrm$Q6z~q*?QFC_Bgzo8iAl0xav`r|tP~LjH^=U^pxBWWNQ!6yW!u z!~?+kbL!s;X%*fw_VVZ=tY`@NSPP@~ARZWD`g5wq5T~GbR{CGf1d>EOTJ52Pw=W^t zb0U3hbl1HJG>7sr#H(qH@CN}c<3WNxF#>7my=Vswn1Dt6?tn$me5~F-Uj>!T$pz*B zZ5yKLJz_X2GS32h0VU1mS<7O@uLUoJs{0VWgrIkzk-j1pz9kTNYZK}A7!KTfCiq@4 zgqU!2lEh3&7j9AoM&o=;xHaKlSu9^Vc&VroMB&WU-XaqC32oBMB}DLHXWC$75b+>j z#SV;2;i?q8E3Ewyc>BX9X!3;B!N|lmpvt&L#2B^88~LW#pXAYXjR9FP3nwnkelz8L9m{*PcbkGTrHGnzdzHi*Qh z#v+0qem_Un$QVeI4L&)N(3SZ(t|r2YL`rwBFuK4Tt2iq7VS_IKRlr>SS6M6pD)<9( zVV}%|adC$HNG-X?wW;iuTsB&{n&8vB;Gj>}5QIJ*i5h%*_FafiHJK2fsIcI2 z!nX8pVDI#1W#dWLsAO2qTPz7GnkYFXV}mdPY5Sd6G9+b?rI(2fqN#c+hMm{@5li!3 ztZxkZlg5avfWXWXa`K-fq|fW{&hOs^zXw89gS`UJ5#HE{-v|lEShE}e{bA`MzP}|D ze6lJR&|f2B&nc{s!W%z&wKRIPSy^Xsh_ zKgT}YmtPX%w$g51-(+jfs@ijpgyjUtdl3*&`qvMNJj54CVkZ> zeCusc<};hI{#x)w>=w0bzn9&j43X7}mPL3`1=R!MV?+V1oRUBwJ`wSd_*7zmmockB zFY1PrO_v6wY;fuR^U5T$TA-c980g~pTS(-SYe2_i?;#~a$pBu*Y5_WXFNp-S&>vON z1-vE#yyor-BG4*lOwprxYgO|iSEyxEDZl0yC%wQ8+AzY(j#m6XMD8oTCK4s}Ko8mw z!pa87jS%U@{h$qEtZZL}{|b5FH`c@a?2opw;EM>z>+K^Jx|tmw_w?HQ8$_bRrmFIR zU#=WGJ88v4UpFOu0{84pV26?folc6H7Z#iqMd=xCHx>sI{AA<1mG40$n>`RBDUjE2 z{xq+_o%Hzya~C{<&{%ZeTSnD)!Cx-VEZ zA7}vWUkMQ_XMrR>##lX6@cZQCzBWMN;hkHB;7Kux^qEjMB2y%0tv*X2(AsASOM3+N zXYtBv(hKgOjcu&#a^=@;a=#%@;N!VHM1nR@9%XZ=yk1fu{e@5f9V((o0Td=TmMVq| zbrG}(#Nr`CqW}ZQj4b$OV!{al?gC#Yg`XQES|dQl%p>t2+2kO0p|;h71a=SzRwm$F z4DrmeOGW$c3*Y$*QBUd#!=fP(-&e#ZCl#RP@9)-p4TRq-4if&~DUk60 z+G$If$$`91y@M8@)n{lNY^GqTjNr3?Dq6kK*arbFZ*c(e#%UMZ{T9OQLWB>6w~&Hv zVI$tA$AZ(KhOektBtyGJ`YLEQW~&rk#gKGTo3x-)xTs!OAv8$EZXUubIt!NO45?nf z@}T>D7rcF}hESvk(ZC*kAKKim1i*V^eoF8>`H2P!Ydk}^Uf+UaXtk+1sv8}f7nins z{FjJ!9my+__BM9d-e~tV-&{kx#N*Rb^KUmqHVex+k(Zt|_P)`7NfbdSQJg8J`WviH zgB>a0>H^Xffe{e1VjlXR#lF3H$X1|+csrL7KCTH}VM|!B5b0l#2`SP{HN+2Z0<>u0 zf91tdisAtWK|{b&P-p1ZAz z5XZ3liWa^(A^64)gF1LT?In6+^rkF03Jxai*#NG@i35l*vTzhpuL zuVQ_SXMklEsF?at++G~F>wg7VjrFYp;zM*!g(O7r{a=wB-UE4Tf6F+Dn?7NM$b;S$ zdiY7|X!;@W{ZRfO;GeV9=?c(d!GvbOO&E+COCGW$rcfXTJq!Wus8^sGrH`RvLk#k0 zviZOc73wNk1Y=UMx(9yr?|a!vV}h_|DdDSP08J2E$v6eQSNPxz2N)nXSCE>@&_{^l zKR-nB8>8~|Ayv5Gr2X+y<;&NCj!%kyA=s=7Of(;_-;hDcVhq^=3eCY|6+`~0Q*VO3 zOU|WJ`m5YB^I)wc&i}MmH^w9-?wY@o=eiGQxSr_5Y8nu`xfFA zH-XN5pV$8hL4tEA>SZe7S5BUf_AY_nb`W}IA4XM^6PW!*NXwi`Txrn=tJb3#vdHB$ zieHIP4P#NW2ry1Dlz(R^FfHWW8gSup-%O0BVANHij?40hOG= zvF67|1$NZu{^=>^sStINNw6!#H5cGebAQbot$&m#E{Bg=;x7r~i0ELRM-1a~x~L_> z6{E0o2pGhaD_)FrJMdud?obsLB5AHE&Yj zD>W&E0!3lLNDMg3ICN_717i#zSikRoG*RZdcOj`|poVW_&}0wlsHYgnLqDrCo&}rg z9jJ?LN8uMXnGZA2H6Hg?(ZEmLtFi{dPSTtU`l`}K1TxudLNKl&gYZUL#)z5pIU{pq zS0G7aCo49l|CS9Xy8YbYS5aRV>liQ8-Y(w4 zL}I?+?%vqO%_%pEXp8zsq>j6LW((J-*eIejiuvzIcog#%S9gIKaImoS!KYG(m1DtC zNbJXN;VU>mB~nppPjKL@u*BpM{oardGdc%q5J3yRjo~~RvhQXo0WW9N^H6BfQmwH3 z&-{RjR7hI!%0*YnqnR^Ms;PQ!E+T1xB1-!7QB@S8-nI4D6t24r@Q^JdS z{H(^y423otS-T0jbP5k51mS6=veZzSnadB2Xr*Q`aEfTZ6tAQc{xYw$6NaurL^x5$ zJrm`uK)n4zdOGV7b6{p&MF6+%eeD5)-9E0lw~jSb>!9sudTI_ImxQN7)X6GD0M5Q& zZWQ)90mBfNR;ptS=lUuQw8iq8Ko)9#2~YqBagehK0s$lfFHt#rxW1(RHL({&41k5w z4JpxH4Zy)wOgSI>E??mxI)^#}^^JeNbDM>}|m>EBPD z*@_dG>H5GNY^ffJuf9(O0>eaz9vQ-E#~~bAV}=HTj#g06MeCC;f}w-x_9{h#wwZsk zGv$ArAPUuzQl{wxUTj`T%5b-X4<9>+cre5S80+K%KI%Q#1+GYbuLC~y`8s4barqMjHMZgqW@eem!KIi?hyM4MEwPFQde2X3qF zkI>pn8H6wI&^wq(Ul~~hTpP6fV>8pPOuVc-F&1q~*^Oe_>iK+FCxc26t-Dl~ukw?ef^ zDCk#g30Xj@Y*5cIWQakoP=v6CMS> z{+)ys41@~4k0$c~qu#yddlY1-bv;KAV(ZVreSjn>3YlVtPXaUX*AycH!6b&oLTqEk z09L5ifr#Xt17{5X452EN-f7_C*$B4Df$+qyLgU9VRBu5%;}zHrGm{A+M5X%9KWv1O zz`}BW1~wfkc}mg()BCG^Pas{E1X;_VI&f3j?r~Zozm&oK^6qH|v%xE)kL*JuHTJ=I zku0n>saY0p?J7Z_ko_DRN$8E$pO7jW2%*+KV8HgD%XA5cez<{FU_!s^hgsb`5JLW_ zdRtlN(bF!~+vD(;^AS_7=>7+>qZg_o>1A1Ffa6`lRJx5XIzso&;JD4#nO@cvX3pjz+l=AO zy=SSBG&6rYG(wq{CCe?6;uOrj`ELj=1IW7xcykOaHQJ`;^`A##4UcCl}Vx!oSfG|4JFQh-H#W#=yn{w4Lo?_JzIIOH$ zghYWP_b9MVY2lfvvs8y5OGGVf-+NA@IQlvVjusV{?mp3Hm4chR3h>=QrS`JSE*rP z1*=diA+rYT8uU(K9R@A1O1jid8`5i_Ap+wlSAIWUQ+yxtLPw?&vr3sncF7=EBo$e_ zJ$*j(GHnm}S7JvRvu%DpG;)xZwZ~yr`5&+?3KR}avIbjr3hpI1g-TT z#l27rEp$(4_qQ(xZ=r^%0v>m@LZ(8)G=0v${Qji_s~+-J1q5nm(#(m!Mf&~;X_&|Y zzIScaw^+XC2nF%Nf~Ao6hD{E}V$2Ll$vr2&c-X|Gx;gE|f}YkdQMdjdzUAR~BYId~>2 zXh!O9AXWntr^xrimD%(d@DJ(&tV{3?aC&Vx$Djk^2r^dJ zh(cGd`&dLEBpnZEdBbE2Z2z-|<1*FY$l#r6G6*_!vW_o=T9iVei2~^^0IWDrZ1j6J zwCZ)Bh-q>-q$eDK$t+;b2!&J!#h}I8Xs#VY07ewX1L7}!=@W!U?_rr#&iDBWc{U^$ zB}Y$^vUgd;=FP(DhOuliXy*8pYrON!FJ=A%f>9;ZB5F#Bpfnfjm>#}AXax+XQDLqEFDF@zzSA0i0g=ttr7kWx$$;Why#9A^RtO_(rn ztKMc)1BZ&$LQfa6b)Ga*4i+QbW@tx$GEX^}41xmrczX-b={y%2MF`PDE)UUF{#s(N zq`j>LytE875sK>hODpK%C71JSs{%hmh(3x=b}n(s9_o2qlgHyy6z(!~@d!etB7aK!D8!*Mf^dsm3=j-uhQjRj^m*}8 z(6nyN0)F>~L3V4&+5cKrD#QB7J z@e)Gmy22yPSgW%X@NG!YsjCcQZ?!bom>~lCTcj|&hyL$$M)WKIVt?FEpbiw}xt|VG z%=TT!v=b>zxHCn!nrDURBwVC|4#KZi18?;`BAVR@`upKB@I7KuA-aNtu@NSmWgWUg zHByFYF%bAOED_~1RuDGM6FzhdlCQRdte<3UO#id5;|s~?ooE@~r^2woaf1+-n6C~g zCvoREI3@-w$vl>+6umPO`y42OQk8JS6tKg7S5UI7S1gezUL6OO+dPt{&mjG>0P7kWA#;d|(?Lr%CcOcYG1`3e%0`_rdUD9ziz1e>c1NHc}64dSG@0|1sN!@c7AfOtv==j}YiH`q?Ba8|t@5hu=yLnS$S5eN79~!3NzUd)FcrrYN)pq;pgTKf^88PDna>PI6hJ&2pO&v6zGAw zCO|rJq#p^d6eR9~<3mR}Vxk{uuMpf5A}x?%F?I-+8H(w{d&VU~`OOFWF3e2v%U>nN z=FJ_1Oo$8n*?*bz($MOG<6SxXLvY=};UJg6LF;~LZ{K`fuSIP)S^gw`5XrqYPT!Po z5voxvYFtAaYasIYpCSlUJrCug$WsXU8v;pIrOA6#PvTDYRd`EOs(s{HwOU= zq!Pbi5^R7_!VFT6!w6pFOlA<#Q-oT3Qj%C)@= zCZW8K?re-e8+|J~3R!4PsF?M!znj$Go}d*d_jB;$k{40X#_dSW2Nz4=pRQYg)%V#Q z9}J{YHdxT7qoe>RfiJPYic_FsM^31iAPN*e4Kadhe}#tqM=|<~OIG+ixG6;u5~L5@ zmLPooSrZpd6TuNXSP=VTY7hvbzc65fXMWxC30bI$V(+O4Sa}s=`2NPyM5e(cvu{F@ z!17!*FhzL7;QkKJUkmr(DGU6;ost^x+E?*YKv#g;;Du^hA|wJGQdVFDC3kJWQ*;_C zwi0^$@1I{u1$b9OLatun%8Fzjk;07w`}lPSE4&mj*;5q1u@D5AKZ>_im2Edti&(I?XDMh_P63EUCM)KQqW%_&+ zq(AV!FdHElqq}{^g~NlVBSP@=Al+p!M_9#mGsT7D3cjF$Fhhd~$Ggl!k2*Qk(ZA^k z{f3Mn?go?eb#bZ-?h}EGVoM0v6Mw@po8O@_}7!)9hy`5bRbHc z9P-%rH^ zm4k404I=c!yFhSy3BT~+;mi9H9fSnSE-$_2KkVDw@2US2B2i9A(CYH?Xzs(P)&0Lf zDwbR-)F2qC&ks1R3pi$%C?6td<#s&U`aD|9@+ZWMMI!n$!8OBSjMfc-3khcSuiJeg z$1hMo%+*Jm>%!(yZzdd`3P}K>v4S5mZH&;}i@P|zm2lVoNJldaBS!VF*lr;U@hSM} zwcqu)#@;yA&YZS`kdh;7z;{r214k!Q|D~VLhr7Q^c^n>)?}sLUIf9}|fOF==bR+y~ zncgLWm$^=alutZi~zwXnP z16wrmCc(Uwbcx! zdRYVsroRE^T(9y$t_?QIip6N264MJ=OA&=aoC?ZXAg^~Vss9CV?pppG%=zrHk6S{g z4k@*UQ~nJySDRu!ZJVvz9ICcWIrk#PJisO!r7o0xhEhu-#oWLqJE%4kdx~-w&kF1h z6K|3J6FBIFjA551{~afyGRL*Av}#0UhW}B5uS!&=xb_ua6*>|v7KV;Qb=^=7n$bZN z!UqQw8szH%Eh`D)Lb>u<6+oZ=iv2)=BjAg_01|DSe~1tL{_)ZbaNqy^{hHMf=o2j{VWf1C>=JA6Fut`0qXDLCnNj4DBOJ4z0YAPt_A`@u^mj4vBcK)GOB4KS)+USWJW zqv+U|e)TQ!Ru9wdD1A7Bc6d&o2Y({q=+yRoQcdCghol8{ONbC!HLGK!`kX+52q$v6 z3#6SZmiJz?FMsf954iTZe|e31a!I&z$}_X)`tJxhHTY5JM~rvD?K+`7{{%fWhE_cx zt6K;{^z`O;Y1<|B;F}QXCsf_Emvid>IB5CJ*?AQt3@&{@XDQ~nzm8OXy9%jrvAPBY zgj#g2vE6qcfKIoqFB*pOqW>`|Hos^P&x@vealzHKj3`vNiiJr6zaC&|BFB6ixHO+> zZq$HL2abGWg}9zkOWa%Q%}iB`#sIfd$F~$A2jm#K30mU;-C+6WQk~qw3c!uivwm z4Z^RZ=>pIGCHd!y(1`xlCLuK1D(S4@R|4G$`9(M=gs$Z9vw_cmZl?Yn>&+JjAN6l; zkH|+t9Qb#YiF3xF2$+79d~*=kcZIB)&u|6S$8EoYjb&txk$)GP5x#VH<+lO_9Y4@l z7#$SIw`zu>LcMp0$%(xqypEU;MtgcC{sH;9OGYe_92rc=%X8*p-l$6W=HT62Xa{N* z;hYQgUg)laj-KSsiw;u}s{7L^vX?V5{YF|u)dw?`;R$Nv^?N>{KL(n$T@ZFW71B}q ztFye38Ny|yTR+>g)CJ_u(=#U#?)0U9<&~bN!`$b++?ajKCoM0gK=k&&{1mlp*3&KF zje6dyrj(xXat;Q5yn?40Q=R`0dYf`y3ky$^xkf_9s!z5&JC&a(xX;w+eKh;qOa|@d z$oo^zOb*%}HS7CSMVzgz)#=(M67R-)dzvi2VW{5Ku4>EOz;UTC_Li8qhnQcIE< z2+J~gP($yRKrvFqVH0#RlhA5Wd}Rz3DQ)=iQB|zN4;Jvw<#wcF&y2%)YP}dkyr z^xWxV72Ww6hdUFbH1ggwVREmgkua{1SZTX$+*?H}C7D0@>|*p1xj(0`Y4NDvsF*i+ ztx}gL=Rm_ys;*W#yH+}?wiRP9ewapb@}$36O1M^fv##`LZmqVi)wQ_=E0LJtFxG^E zc9!7WwiNF!X5vkacV$WrhJkPx{b8kde5XH{RCIdsHcrk#e?9p4HAK*qlk#gPJavs|Un;FyQ z>FcEeg+EK3skFJ1hbO_P$ZSq8kdS}x$-6nmT&F-?J$G5uqT ztTb-weVJ>V=!!Gdb!5zqyIuqA{Q+Jn4_?MP$5eXU>y%OyIgbxXRCfl(<|gh_<)Fxw zF`%a*4;^Z4gHHRXE4<3Qb25z=n!l;_oQGPgQ!XMyF^~w2&QND~J_uzd! zQDgeyt`dQj6b)^0T|I2|f?kZGb(&oJF&~QtRYSpNrI)6Dq9*R_9Ne2WPGkC)GQ|j^ zTC0KtW~ntQC9BgJSZ}A(t+mB89LI_bT42V9$c&S%!76R0BG(DiF-;1!3Iwj5EPO)% zs>_zF5;C6gI0f#%=T~V};yaMJ+<$+q!nYiUsGKh@Wz)}6+j+?2((BylEHocAMY@GM ztGJjEHMQxUXYIz|DWjl=)Ndt}q=2p|oX6;vchAF*kFz2ouxUCfp~Cqno!g^_TVt4e z=Hc*#e7VhOO|HF%A~}6@f}pW?xrGyXuJF3%>898glWg^&;W(!Z6LoayfjL^u&15*k z!{eg#>%k){*R_lIlQr$Wb2SGa^6G%Hr0jK$QjybAR_}2?Z)MS9pTd9(J2 z`j!c8H1TbGx>5#{9Hoj9<04+|E%RstIk1;9Mn|RS-s3Y@3Au|^Jh|>?esTAE5LGx> z7i8ONs61QZ-`P=^UgX;0hkVmsQT+6V8mYG)?x6IQ7ahqm;`2GP$>_%knU6y3x=0Io zFfIZ!C>m=Bmrp)bt6EP-3#pMRi5kCp%_~LGul1OWfV^2w%;l&*r?SLk#Y)mEs&J5D z{F2aOa56!itQBMPd`CU zckNkF!Z;t0+rP)OixKiP*WiE3s@iO_Vi|OzvRN1vcWhZ~V{8%MWGJoUs&%sZ{KBnB zQ4fPPnNVQ)OJAiAicPsiw9-w)p3oYf0}ts+|8bcVuWdLo||JzBEyqyC0&9VmuB2+8_A8t@`k!RN^wS93*X$` zrG{#ArYRbV}iS^%Ii8LTxZvHPRL* zkwBwe4<2icVzr!DgdhS2TJ#c|lJ&aA@z|y+KgOn=@8`8BZD6+nq)p8*glE)Y+T9ev{w{a!L{}Tzd-hmU8wWrk!zgLJh(SpBPQ^T`r&9_w(Or}70X=?185KoI z81>UG@~SXA%?pEbQ}!a_&6RjX$j_B!4m|4LPF5}#`dw@WGVjWjn-b538| zIqdVo&XtO5)%w(%LOtK*)MmD%q$Jo7Y>#kP_gfTINHaHIEcoN_qbQflw=m5BmdguA zOybs>`jL#wQHq!}si@BkN2ra>Z)W@Se0>aE?dk-)&D%J51ngsTE0w3$aXeT;@-9Q1 z4th>@c-)+(oZsGLHO|^5h41#YShu4(E_% zlv>%03f7asp^*3Mu&&}%U{lWN;r3iMvrDDWL#Yw zV)92zJTp0B<$k6vnGY?h`7}G({=9*$>MRpZPmi~=*xOUha=5i<4|-g#FQm;1N$X;y zHJq)4o*NJiabCveR<9!u5y6J!bv!O6K1YQ9I7ou6wrCIMnR$jZXI$W&mRQ4{+nr=O z6lkwAIKobb#Beg|_ujRR+J^deFD^71l1;km;(2N0^(V-=ZXFeVuySc)xi6QoRqR#2 z`R%ITGs?NCx|(m)!tzJ!lHx;RVC*dTIE>=Y~`q!8e-*R(S*7;+w9sty=FZ`1QNKRqjTm_6^W=PJQp9`adkCvEp6v7nJHLx7d9`pE|`AA>bMj&%`y z8``E2>?T-Uw(Hr*=S^jakdI7xX6hZ^x{j{0^n5SCzblCOnA7$7XvZIy*D7#c@$>OI zj$8&-u33B?Z71pJPPQGEItp(A0ot;eXI97&W&F=gECH5g|zW_jDAiXkv?xUw{`Hz=(t0wHzD9{ zsb=T6p+HkP3jXL^O>wr3@LdYAmm`zXZF#AcR!LVUSJy{Fll7m95+q8oVb~1cRXFe9 z?ZSq%kLkOrOkC|Or)W1yJf~pkb4;ote1>P;^Dd{T!>5$ZB8UjQJY3Xgql>LKY%aMi zKW-+MDL;nh;OI*9WLIP{(KzLw}-EyY@cn7tG2b$Wf?|wfAzx6XRQ;@q;hab zXEJTs)f!;~mNC!q#HVk>IewaQE^xvutC^)ajDJ%-C~#2M9;4l7|@vwe4657Wb4eGT{07r}ob(5>yIePzJ!ELPiFG?~CRt{j3r8CG0y zioDhH6;>haV?LbPL|eO9#4>*AiMcMj1O8)02Ae_=C8nq7uo#_OR-T8**PW#8VHl?U zI?m2*So+P%)g}|NMx$9}dyxlh6ccTb0CV+d*TQEOwpui>P_0h%(+JZtpPn3csh)q{ zH)~Zf8&$6ed)N5qnopmG*{i1S1EVmu|w%kiJ} z&QP?f?sjibjNeyNjg`(rV>;%ZXH<;G=j~szxuodH!}chC$L-QrdA>wz8KLL#VJS4+ z%oJPfwPwAK#p#Rs<<`7y+r}Et!Pv&OM>loS$H5_q%5?2TVmuWJQT`0LV%dX68bjq-3#h*e~D`+L~HzawB`dqUjc1ZxrQ z*!U>^jkmn;TeSSnE^0f+ZUb_t^m8LTB_F#w6o&*7Pn^W`l~VpkOagA3DlF9U=f(21 z>T(p^&TAh+#oddTdt)gC&R}UtpK|x4EfU@8+1x~{-LnKfNAa!jF4lVW6ECQ0^#^n5 zH5Kztn(NFUC+r;z$ym9mCrzE1ECvN^rA<(wK8DE#pxVuwU|bhPO|_kPVoJAe4ShYW zs{2fj`uNd0rsu*1m1!qaZ13VpXwv3VQQa=42TZhydJZM7x>BBijZloR|I1}T+q_70 z!Z7}IXFe)*q``RY@d3==DdAwlwylMO#k-&w`^sVRqRlqF<|;9AFmE8=7q;H?ah|wV zID9HXhtZ$0-YbPE(U5C&_M2@bT1ZoWbo1^3*X>T0Z#tg{dA@D8u`PRAwGnfEJ8^4o zzCQ4Awe*Rn1UuZSZ6jGbYm&KT#cq_|Xj*D|Mn+27b2IEk8}+02i1eqy+GQJr31#Z+ z>*_~QgiU##Dy#BKTGqx``|`MTQGO5wzTVY$`NehU&J3xA2Q05u zjd*diHN=DEQZ9p+wfA&MWc>2IWFhHHZnQ)cu1{V*zpp{z&)G_KI~GSb!_(16-d^KN zB91Hx-C2!(uY)aD>((#>x{dd;jJ8e^5&ITBpD&&$c+c>RtIpRhklN0Bo*m(+!4{fa zU4|wuz7~I$9ZVlB*-cB)w8*K0v3Yx+nOK)w&|j~m+YKz;tRjskR@yaP=@e zUGcyCK!ATC|_on-}F1O{L ze3jZ1#vEHXDMWC(KB9R$tkTXi;o{=uAdXm~71tJbWpE=dV9_)s%1=&2OP;}7Rb+Q% z>>FQES7QEjPw$3v^oWX4;c@+_SHi5&LwTor=@W@-DkR% z3);KYZcm#lj!epv%g-q$mXgFSTUxJLUhL*BS)2#jrVvn8@5(SZ9u+NJ3AU+#!7dYdct7lTnaPoFTeT>e5%W}lRzCx!mhbe z9X!6_DyEY*`;K$LH~FgcQdS}(9``hS?DBHVT9niE@TSYcTY*dRo}=ZDCZzE(UCX!Q ze37>oW7F3zUUlD7Cw`Zb;#ADdxY1xfo!4||>s-`K5{NLpUEE~#rR8e><9TCO8^*ks zg2zqmq7f`FVC`icXG6uy)sIMwGv#?kwk|hUR{3bM#4uSo*I{*=hK@E}1)1R^Mjbpx zUEPx=^>XC+;r8#nam_|&sUqX|*$%kfZdS997Fwx#x{A zxzB{}G-~vuma!=(oR4wx&DIxXSr(1n?0-*MI=af%dfkL2%7*u5*JV4SOwU4c!ScL! z@Qpt%&o}OBM{YJV3f_9(4^m{PYW(6bcDje5`&$9DTkiE`<#%YT`LhvC4@!wPoy8`| z$3)RwPo?kOX|v{g*6Qox@pCdyeS1Mh-2tEJrw*U%mo2N(#$^7LCT>UTqR;94!-Sft zcojyM{p-b4vNz5-i<6h%`E&2j=QrND&+0J}uwGVcZ*#tGxmIGl5PNf^*le-dyTVV= z)LS87Iq}%lv7Lv{$Z2+LPqVbrQ~aX!j%_Pbq-p<{>*av+TH#IhD zffd`S^Jn4nCC_wAKg*z<@wOKv*Ogyc4KH!qU5m~l(uhf}y^0rf&blnLa1DPx_ZUlA z)nmD)*ReuuP2~mGL>V{sq4PABC>B-m5Mjn&@jweN{(s9J5mVll9Le zUz)c7Gd}Nza%6E6^a=++#R!pbNmcw7ddMlS&nvai|%J36X+YBC*9LGxt@&f-arQPek;;tOZ?i^jHs`!`QZyjfeCis#ZgnsrLC7 zBN^9eD0><|b9ip3eAwYtd*W*eo16wva8%mu7wIOOl-sYfwq}Y?ug;A0XOFKsQ_iK^ zvlgc556d%fNB5hES)H=EwH$3d><@p`+P3cbmZ}nadyF6N6-Lb|%cp;9!$(g4`D4Qf zCT`c}0Mi~=-uh&HlX>+ewYl2EYohG>z?86E$vq{Jn1Hw`Yel7eZlgBi{2^cUMeTB} zp+nEo)y337)ZR_~Xo$Y&UW4P}&&x^-mvK9_{+d)CSbMP&|4|Urgzk0Y&11^9iF*q= zt(#|5#gn;DGJeMUu5Uq|pFKPJX5No^lbGhEYgeRr;W54|zD-^i- zaZ*KpZ*vMcGn&@N)#ky5({-rpG`()Vnxl&smy7N7RMd~!ME=#5{pV||b`xoH13z0~ z5x#4VDFZ2b&1c=7i!A9swzlFhwOJi|FV7hFm@Sp?Rd(4Al}|73Czd(NtLe478?zPNBq;CBglsIZI5b=x)(R|E zJABY}o!$7co+6i?ODBJoKRO>360N7yx_)GqAar`;(*C64dSd6~vb#s+<>Wk3)A7gh z#g}rNiQs?Yq_Fo7L?%hPy_?H&@QY1yfd&b6UY&=+> z*T2EczfyWzP;6U!u~CL8P*U%15)Omp)m{Eso{h1m>r7b2I zQHeU21O54wdt=M)Ih}4lfjh?Nk{Z8F_w^F4`Xq&bYgDx+^!#(++J% zIR-KAP3;A=|8#qBJ%X3(vz-yiv+YA!R6c{0z%V~&wTwU7C_x)-SH)2?fToseMq7`H zyLENYYa(@;pL%7x9Uap)Ek#LFBR8kmuK9ww+PhP1$K%omseBIRy<2BTw%pm z@7>hgVZJJRg_D+OYD=d&CZG46zPhYE_w{j5#U99*d#hi+ayEkW4Q<+0SKs~X&RnG2 z@rliH*#fge_JQx>nwO)qw5!8mq13VVqf_(aq<(U89^30<;>KO+VyW{~*E6>krSkNj zg=R$OuMP{%Zr1XsGHe9uEUpHL6@_rhwH^qpF;1scxfkNIq+Sl-Yw266s-uY=V z?K@pYyAB&&QJU9P{MSem*Mop&ejUp5nz=V-K5KC6dh7AqTO4869MQN|Wrf_+vuiwb z{p0&+6Hz~x6`f~f)V3!>#EWv@MI4sL>yGxFmRK>~^Odu%L~~86buiGijrPso<=rRd zV8HpTJmj}0sWa)hYTRS z4`x>K)*iYTtz}A{R-Jgwj-6F6&&Pl6=q5xZ=LkK*xMMX`^g7Jm9}rvXg8)N3K&KMCJrk@ zXiFOIUvWx~ITc+($S3pb7InA|HuNX@^HDu%^VM7@FD4f*GWW(BD|?8odG|$z(AYCd z7Pt-sk2^OQT-CXGeZLa4`Dk+z7<_!~tC!mHVQVxXpveBP zj5&U6<6YIk%ya+`(UQ|4#W7B5PmjQbQ?1L|+v8?B4i#AGQrlT~UWWHkfI7cwqkB)Q zymhfp%SFr^rla1Ep*u9?Dn(Oe8#LdB-bS}J&ow!(p7E8ktd)KDsWIg{FPf|UE`im$ zKExox_MW}&{pO;QdxodknonP?&)Q{A_d<$o+gX?U`b4<4^X@3sdI-n=2P{C-zrXs~ z=PS?X*Q&cFp7^WU3Sp~C`<@@xhncFi z+B)$?f5HHF+SiAwW%*Pe88qm2O`oa@maygXjUm}yw?t3ue!{tR z;yLG;o2**j|2rdUZSMG>u0Csm_guHNdeh&#W#qyqDmCYemHXbKN8R>ABKoa$T|V(H@$Z{IY|ZZ2U%tCu ztKYm;&%4>gaQoKlQM4*Y=0^-u%YSXWi$VpLp&^-haO1 zJolcztdyPI8-u1&73la~PW8Upz5nHJR$A-os^iL;8>|g`(!Nea-MrmuYC#?7@)zka$B zzWCW6a-Z6?)2)xa;f&T@{i~kbGCDf;;_=G(`1sC=T|0J;@BFs&Uj3cewd=aS{ZmWt z%b)qhiu3BG7yj+>>M5mn*H2%0Pj=6yJHK=G^IPt$KUw+G$Q^(7fHfOZKc1I#YGspQ z%}llW!1xQ!4i#vt;^+C(^ zwKJ5&YHiT$ZK!6i6UCVz6XI<{EyH=xU3+=(_;0M-I8?u_J1N`IvMH^X7wSvOnOnY( zuQhuB!RY`j}f)iCP)& zs+Hw1{H+dYvP`q;pvZ<4Ts}yD7_@PZZyD0??=JCiITN$as%%xA_uG(i3GiCU&ecQl zU#_jXedS}_vgbVK4B2vS^_!c|c*PC4SiR03dt%f2D`=XGm)ZLpc3!i@166dQ+ zech@GQ(g6Y=9luQ-eB<7Wifwg%bLojKQC6EtFD}@K5djexl~tHv-4}iw(rx!?>7v( z!BR-h(uiT@xof|ip`)&Y>G#$TEuVaN)7xR4>Wya)T9K+%+xsi)-nd#@Qea;?>&a24 zy5`@KYP0gss*&SX*8-RSo%wb6=WCWyeZAx~uvvTJ%nE+S&zU2jGwcM;rzXnR7(gB$ zSw)lE)E(|vDY)u8B%q%+HZK>vH0lBPrb_jh(N&n+-su5rf2u#ItQ5y%e(kj_YfE&H z-qB%cFBf51tFK?q&Z@tw3RnNHcchn@J~L2DtJT-U;hIxhB4pWVEq%4WuJv5YDV5fO zx>;SyyS}{1t&h9)`lz)zW#8zyWtV54%8u|+yYb{wy}tKtOjmDP9PcFH>&I5n^U1Bt zFFQDST+#ow|*De3g{w%+7wdO2$YeS8q{9CJy zzPx3lJ5N*}*}Up08~m6?Y*((gFF$$4rQyied1}jZo7X&GSs*uW9)5VbUj5#t<#9xL z>fGfo4~&1gQj%rq+Nt-fe&D)h{2e}QaBic&cRNemA9PCl&UpPd2b`-7Dpc8J4tnF- zc=cP(;7i$`y6)Ie&#}jtdR-f|)%6{t?wHjFbuK@&HjC@KrM20wZuCZP3`@1TT)H*q zyN>;@-eYG!UAENKC#t(^mX$Bphw8$TGO==WR@#l>sa4ljUn>8+UN-2DY}zod)sHXf zEDxH6)6}g8R<)#qiu(#TWa&y z@ZxLR*PeQ~qQTzBs!M&}S4NhVmr|1-jvY5*+EQ5zUahinu~Qu%bcbhVaKmR*&wP{G znO8r(ZTRKpO0~AsBCh2B;L5El8s~|M<19(nls8jqhZ(3Yi+sS4>SJTWGtQ7R%O957 zmNKcC9oIV|C}j%Fqt;no}KJYHXLa zrKLhxVy%g$`m;;7*Os4Db5^~W>(&N$F1^v<;&SgdRHNQf{TQ_ex@&l_L8G$4r!!^v z>0$MGqB874Z(c=~w`-9G%}c#H`svZ7>|S5l;I3x}Ie&I-4(_NpUtFfa?&WK>Wp#1g zvxcW`t5i>HFNJ^W_^`lF)!ZF+^}&(SVpjcPZTO7aE7hT3hho&YcumjOy@# z11>CSq(k}+9x}S)#4feg<*cc1hj-xO+x&go8{dwFZ+qu$Z{0KUUgsN?tG?;H z_QkiB#x<+d&*A89Swh3gRozi5`+@3`I$0L_%79Zpcf9bqE!A7jdE@Wha_x(ouKW2L zhH2h>;yW6^x@IcT|N2Dzp~{)&j9sh0>~PMww&Bmq{jt$=cI~LTH~nq(iz8qBPu|nc zgTL`l&1lpquYbw;_BS6HTcT=d&wYOU!yk4|{fqZ`>8Bq!UAgY2&p7wi-WbfUy?Wb0 z=Z$U7%b)$d>I20aXFYn$w&jH0di=Qi)Ca3~SDf+VpStM}pWo`-;=K6P%6-39fAtH0 zIr89d|FyF;r*rSE+nlA2w=A^p{q^5gUK+ph`fq1r&K>{h*ET)z)xW7fy!Yvm7bo9n zKKYYh+I(;2sZH0v?}?vy>G_KDrO~%GfBC%X_ujSh+vCplTVMVD-#hWvZ(37RE9V#2 z+ULtE>x`GDt&LfA-Sn3Furi%2YiPKxW2&w`5ni%k39n7Ey5r36qpJbyXFI-Kv0-p$ z$!4=smskJ1lD|#TYsUpE&CcNGOaISbRZbp%vGUedk?Q7;JXEs@*XO@~_sH`P-Qhg? z`AYTGzy8>#D>saM^x=Q;l6zw7_wM{J)yKaRyj1z_&Ql{#j(n~1weg8pD$l&vX1>1n z`tj|r{mo}LefWi+e`xcKk9>aY`c2NKU;QoTOMj)IlXLHX|BSn%_?cZdzVIv6JGOk| zr=I?an@_CO^q>6?|F~BBXxRW6(Y`xVz3#)+`prM{#Q$z1rGXh{SiS0l&tLvOoHu@J z^ycHOb+7)&OD`?8Znf3(?vDG`MEUoZHySy=_4-XC-%56zqn@_vT=(by!a4QKb0ao6 zJHBJb_~_`4#*RCluRJyK%`GQy`K8Ls&wr%TB=j8z{9{<9YyC1r!JTrEUF?+dnuD(%o zPVB0F*gk(nI_s?S%4^O6w`wzH?^k25&gro$ob#RPvOcB)|L(cfk7;mJ`^j-L``vYJ zdH$ZC7`x*GH~&iIm6Hvp{)BtmZ`MbzyYtsa&Z*X3`-hL*^W>)bU4QYXloof3ofVFIN70{f6JE{fB>E`&T=^xA`-VSAOq(*Z=r`9sS17SAOB| z|7P#&pFI7KfANmWEpIyiZU4Vt_^&4`fBW};A^nr$KcDyD*848F`={Qz;`6_{^Ok?~ z?|T2b`X`(3d*MfZ^;?_1bw~BFKXv{f{pv4OzCV8Z-+%f?pFQ`@bN=HezW+Jrv;VC6 zPu@J|=BKy3@UJ(0{rATn7`u}+E z!*^A_e!uezXZ_&*k#AjnOZ4Q-bwB&cj~~DCbMHUB<$-hVtbT6f*{u(3zrXgy(HAz| zxb4X;Pi=bN-_$-|JaOR8ANj?z|LT)(ocrVtegC1#pPv2eANkd-pWXXMAN<_t=XZT! z?3dp6i|!x1=lA?Sc+bB)>+{vGj{ebE-`W1zAO3^!?{7XG{?^3z&;9EAKlhPe{r^cY z>*zMlb?f&X)QDM@nc0phu>(ySrY31q44kG6r+CZf^xPiHGP5l+Gc%LS%*@Qpw#@!~ z*Z0Re&zf0UGt#4X@8`FNK1B{yi4}AdKtb`4qYH>xL<=mV@5ZYqL;`zK-xw@bSS0)e z3;eEaU`<=G2Gu5o`k8d8T-qQ$`dQB3F)y=3pv(ta2qDU}x&`gId>_@_9B?dwgX4hx zKet2*qh87mCNnK)$mf11P)`XjC>9%Qf=iB3M_0=Dk4I~u{{5Ot#Q)Cm(=FrvM9lfI z2P5X?d^9MtgBQEO$%}g&3hTC5k%ym-mfQ1)FCD zR)Z!1q;ZSz)OLanNoAI2{Ht zLvZCN@cleoZSAttQxWyl9rP}OMeIOrl)LeF_rtVlKy_0nyc3lGITcco7y+m02 zZtag--(-I2Of0y83Kz)k`eHg{r=2PSBaOhzvhW9SIy9R`OAi1xPd&K~!ElKL_D=wk z8W8_%(;Lp+1o>&?_&7Lg0Svubk^=7)5Lgb!C9uQI!jvV>P)#meItfHAP=LkJKD22K z9sQXa2{lH7VU^G=B-IhrCE)38u0EvZFa+dSp2DwAj#1UUoCk2ITX*J{e*peC$PPRO^-7(Db_6^+$)!nr@zo zvra2s_;I90*Dag3y)?61K@-+9j!yQ2)?iTI4w}&843MbhW(&GRKr#fJv_ghKY%>tE zycj){K$brzbRS8kY}A51rVV;ZPO$@tDm#DsCqWWhFy;dSq@W1Q3g;>A-0}iw`oioH zbJzj&%GCy;y+#{Pr#@ca1PhEF7jRr4NOeMNM&yFa;i11JI(33E@}OMXJB5a223`YT z^=aLY+-Aj|&%3SSo;F$R}$uqrn8AtJ!tC&bI)TVK-uHK&t^Uz|HCU2va1GDnsG?K6iV$!e4lro zoj$3IkXw4tY9{t1?hO}s2b;k5 zL5-m2&a6rNO^;-dbOfd^T3>U$5?e=ac7>NGph}emM{Egpumf9PdtAv^IumF(+Mfwm zej+vSGe3EMjCcJ0Xdhfoc6pqlIAL6(?5w=%4i>alIMP^~SzdP=U00<~Yedx3;M9siN^s@4O9WP;^8dvlQE zIF{J~3bH`2dI>mvC+Y1iO|fRx7Xga>U)3@O(%>;yu=8{02m5L(y781k<#DRDNtoKc zypx94IH#DLJg8=`F0BP!KQ=CvspXa`FjAb$&uBd1Jq zsx+tJe#7(!<8P+2_jPRL{O>m=f%>-{{+xYKrWle4iTmJVJ0Q7q?1CjZfD9?L+JjD_e11FJa4XccDimvD!MhVmnxV|I`__Cx;M&_523irHj&45J{R5W?)0h&;(D$9%N4p1DWo44zf2v z-J`d}tJD$^h>IgAcLIkMV73*UB#}G3pfWd*6$1BoLraceIT~&vCpth)~_?zBL?# z50O&hRmDgLJ08zW2Ic>;$7(dPpXBa^D3ucfMz8`!4(e7uxq$6Gg*%z*3rZXm8&=408 ztF~qAVNfKPQmMnMk#)|-y=Oc1NKh&2aNUbh@U7=(y$=`vGZz5)v;g=29?2EOfwf+c zR|ZNhY+8*(qwbo`fiRGIr{1a6*kYGo?BO(O$D&bC8fB44p_IpiI@}I> z%@$4|EfcQP6pB059vi&lb-7j3`*LLpQhZ@VaZq>ww#iwnN?s)qqL8o+8u}4?^+jhm zU$8{XV6FF@b)AV~4?OSNE#sk|QvC5UZIAoq+QUj-iW|>;6x}@0P=#%_qtZ+V>N^T* zl{bgMrWduw70voEgq!_gZ!T1n0D^=Q@nB~ObTB;)I+^Qish}H;q;=DM7?s+Myuf>f zQiWlD^G7Fdg*k#KcTn(k#;0jI_SlSi%fH)lL3Ax>x$#<%>Fh7wcYPi--w1j%Xb*;k z{pa$zP77edDpEQ1FOQFdzsvn1C5St7(?1(H-r6=uz8R&we9J!w`uNzg=m)2dWxRoL z5QC=N40@|xBhO?S-ZEY!_IQy{o=G*bs=GohR|>Q!6!@@r+Mqg(;-?9k<3&)eNu(Fp zGmTPCO@v%@vyGayE0hM5{kqsk_v1ma2+B3KP6orzm;Uf#RbJ^~rca_B$8h&!>kGBW zsMR1AcnCTl_^7*uf$@hO1)!!E8L$Hx`EcA65XsQNaU{SQY(pJiH|pD8=|GBm2){I_ z?{T{|*n2dQ3}&9EemeVn?w4?CNh+wvorz^4fm8{^a6BoIG>3`d!N(Pu_%U02JNW75 zcYV&l;lt_cN&l1gX3d9z>RZ2M4FK<}4U|1@oN@jE@Uw?LA1C!Ih2Y-mb$AUc9Fn1# zbP;dgAGADfcP7!?QBG-2L2`kVAR+btQdtc ztLV$jh1{~7 zdJZTK11nJ7jY+WZRTgzz1PY+Z7d=n|-H8?Ypqnwe45S}y%DHf?DXH9iYK6rn<@DWR zDAU}BXR|l9CAno4`9U#jUn}YM;2*l0YaZMmv#fGj_{}crd z-t_JVT_=!pH?m>_dYr(zAR!;vel1G{X;Dz0Nz`}Y?07$Ac4v{YK#_uKF_<@szzfdp;{EzIx6&+oUk`g4 zbuCHIPeds1S)IJU{jl=V342)3-v)=jU$KiwhEz^$SHC`Ng5{{f1A1&!lojsoK4uTlL z{6-B4Ar@5OUHn9TKQ+}rikHLX?Cv*nHz@vJ6n>m+S$K8lgArAk=8oo;%8I<5RxOx( zx~JT(SYoxw%{XuKj}UH_T!3ZY=OWc?%pXo6N(EcLm)uyQ=nIA` zic5+v%xuySQgkm2AJt#wrklj;3>en_SJnU=>L8DF5Nj;^DNqn_`p#!w9 zS=|rj)1cv>+}Zw7%xM?7aI;W9G**f%sCnXhrEm+e_0L0=T@_evL<{sv^zFkyw+FEP zFyNymBgx&=Es$yl`ZmE(1+;K&#d7P1;85T^1s7x4p3sWGPGwcl1$8ObUD;Lk7BuSF zA3SMtWNH%-`QtOionh`)M7f7 z2%k(s3r_IbU(>()(Oay+rzvl&$cGsAmcgMx(0DM|{JAg;*m#0gHs~C@0Q^80lm_L%jo`Be5D^TdzR*A<5Hn8n zo$RoBeC=-3v&d)Sc*yA=vscC5ASRpSWgH1@*MSc6bwv6?|n}d=y8@gxLpJ|=_)fkcLfKWfBpt|jRe`|Qv>J(aBQ`EZ zC_Nhehj#MW&5=b{PyvbyK?Kqq1OgGS4@QuU^J9$thy9EuPTAkPKPHNRdpJl`Pa(CC z>>J=`Q>;);7yUVQ4{l3xWJO%5<;hr)#1d{ zw;dIJ%Y>?>Q1%RHb3&V|;gD01Z=B05`!M_45i1Xd2P5;%bh-y48tQsDu2^*8=*N6D zDcXIl6g_>j0ZF>jh^*Y7L)I_NBV~Vfzwg9|eS7(AMp@>N+PVIMNqT^wLs=|{eA5B5 zzU)qIrbR)Clz5Wci@>WQv;f_JXRSidA6)Vx?O!?|=1qO^Ia6259o+T&EDMbkb}q|+%cIY_rgHrk_M5@VEw zMH__#oMq`eq(?4S*o65QHDe13uG|jlA~s1YfRDJT$}(1rMwe3g6&Gq7)s4x1{ zr$s1MX%U7M!_jE3<`LYAC4dlU4DO&z!v6o*g4d|q@B(cNX`qZF4%i&zN12Bbh9DWW zlbWU1L24lFqHCPdyE4OGWY4g82C|3R3qY%a2hyUDiA&{!*o$B8OoDAOSkhRzTdTjL zX#JL0Rc2zV8fPGbr-(gx`H7hA!?R(>{+tijunXY5ABs?K?Lsu(wAVBo5$Q)Di!Up{ zq>3$^`a==77%k+stM0Hf?!T6A?o3ny?=yWS0i7u71YSULBDwU_7qx7Qpc)UPqaUrU z1hFxovjkb*LzCfJhWiJV??i&O~G##f5my5p$>doHft>`E(Xz_(Ip$ z2flc`iU{-9bEc)J+9)Kdu2PRwiUhH$<`XpsTZHls|IjYuA8BxpNj;cpcB0dpW=FmDV*IB0&>0d2e(Yw*4 z@fYJNJsZf@H_o>P`Q;yGvRd>cZ2z}{EK(@Wx9qTvS(XIze-=#azud=qp2t$%p0$ue zzg!`@7N7}MQW~^v3!G^~9$;P!rmVrFClI-Vc|TC)1jXFl%VPKigW(-W>m0`>`ek>X69%7e;yHjHv!TpQ#{muM{$lhDZHqq~JvDYb<9`SC0i%s;&! z#_yqo%1zx1k;`{OvT2J@4$b!j%(1tar`BL}2O4>|K8x&nedC+lCllGM$~dgq7Htg$ zw%ee$2@SWHR%o!;Rt)A<38w;-DnW}%8u`}qHob1TBluEeJWsDNI-=#uhe@%ZGC7$P zEWJITlXt~U82iZtyYrJVQZo@jBniB347@X=d`#pLaknxbO`DXx>u0=lcON~t(eTLj zjm%HN9@o9^+y{5OUi<#mkJb8zclV6?C}USDsfDV|)J#nq_L|WF|M){6ewDEucas>> zsfK6N%D(h|nHUCU|2j?tvmZ*FfIqz$o4nKXB*(n!t@4{?kJl+(YTi`4iw8;@mwJhP zp7d-`&(KeC5$lv^hqj=}NFO6ou3g^gRuQ{OCrdt3eH9I4Eh-J&N;93h)2+0o7Rp{> zEy-tc>5DlA1=Qp zJh%HS?bgKeh}XlPB{CZIM=mAlI~kP=YdFDJi{$|%IWGn?f{mL_>;bKIddpu+A1z<@ z_{{EM6RA!$zaBb;L$MJg6}3aRuy`~Yks*o5l)MeU0Xs;vugv~F>p%j z!gfea*Z_GBk}xk?d%<4sFW+*j0MTG911zx8S^4Z3SI}1icCIYy7n{|S^9?(ddfdR? z7pIIBjeYuxW*`xchdV<z1sT-va-%?;6T_bfWTXKZryU+* zpFjib0BDUh4(+pN5iz$Cmntt)BhP5t$dY4D4TYT`7J)umr<7;I=`R6pIH7x>A8eRsE}%V5i`2xS&&_CDBB;ZJz;R7H(;=7mTTN>lxw_em}_9KzN9v3;3*PJrJzyd zw%2PPR$VJ#_Ql|7Nz^%mY2{Si0L2+?XT=%KGxe%9(gTHUngzTOO&7!qEhM6e7QBuj zL90lK>P#4$Suo}d=eyk%IQS#B1i znbb&|r*+fw=sPA`_<@nF{IGnMKPgtRRXb8xR>IGJ7AqGibhU7Jw0&Oupx0>a&Yo$< z{Up=iTb00G_wa^~fycu*vv~f}S(I!r%owFXP75cPn+%T4U3HExWYMHFH%1vva?ILMYSh}&InX{cfZCun)-7AO@eMH%+# zx}G~WNi(R^-7{Lyx7S(G4bdD>u~7?Fan*}AXf}w~J3$*&8&oY4oGAxNNj;39^N}>! z8cD*hHETg!RF7!~kPm-m0#7n@xU_9?dSl&e?M9<{+qGSj;w$62TbADXGRp(4eKlLg zY9!N_;iT6HPjJFnWsEg;HY=7F;PPC6s)iu6&tuoq+RU^rn@kiWozK8U1{tjmvOF6+eSYL*@aK#OH^Wo zd8%82AQdm+kwy+u4$rGLDAa2t;qi%R2i;#kOKH3q%~szQs&)fn%ohMu$5Xt+CkdFR2TQQ(CYDg;;+6g?;0?d*bK0!hDrE;r^2@etR5L1W`vpCSWH= zPhxgx*78>L^HdznHdVdM)|ErecGaTIT{Vv_#x>iR$;?E0=O!}d4e}ue$O&|T-(0|7 zrw%Gj`bqeVTxq00tmb1FC|_FuBuIf-HPsf5Ar9~;Jc=>|RiN&dBGFc!2n~^6A}0t7 zi5&U9Da`rxIsE{=BmEOIe@baPIa|eDMt8#Mig z)n7J|8WD*4I~yx@0AtvmHCS>0iC7U7sW!&h5_VRBiT~6f8|X3O23P+X`(V4i^8D9|zWbKp$h^^53>QgS2mUdAPvu#34&nxJKYM3osLo3K8@8g%w} zP1m!`7w7{tDaW-Qanp|z=4+2ClGs?o_%uF#EAmFl;vMjMW+ z9qZewd6?MfOi)heXby5YauHW1E=61zyOeWr&C2y^q~-YeE%SC`*_n#=jf&14o7{h& zPQXqA!kj>#1nfG4As-Ou0?K@VtqVx?0qf2n(;tjF0I?tF{WX{pO2pHhh!)ZzF>>}> zqKV2c_sO0Lb~;;Vo=Tx!CZ$?08lND|k2s1`b=l7k}nlp-?*`PU-oeFY4E$QFAiTiejfWp`F9RK4F2l>dof4`MOknNnl1=n z`B|jvO#o-$3X~h&a0hxJv*v`k&6wp*GlnkOWGMxz40Q_v6*HkxkMQWp_>4whcW$M#-?IN_#TZIb+N!T$X znHg=~t`UEsTEn-P*=Cft%&E|f(Fs=A;A{!(FWH^hyWP10oxbPmc+{;1nhW7WpA+^F zoeJTaM@o^}9&NNEP7)`DvvuC}{xG|mJD{WY- zf|S=!@uG&Ru8*j6g?DH(mCa^j@5=|!uqifUwMjEdQm2t$x z5Y}xC#P|r(huNVGSRd?$6ykP-6K9a>#Hm4Z(Hi^=qGNg1+Oe$JO1MLPn5a{TV6SL9 z6K#r9%ku3MYfJwNCl(v#gJuK#W?logmb1@xJ>MZ0Cf6Y-;@9vFIB{qGFis?$op2;D`iu(NSa^3zP!I?>M7+0Pt>Fu&6??2&e~2oVK)zNmfV_B zZ`5egT>X0g8_%Clf6n+>^h@PO$5+zckX)~RqvHC(8>u(;uBYDcyXH$RSIg3{Ro)y? zl+mTm(1>Z3`UK14!3HOsSNCat6;z?(MTB3-)6He}kuu>P&OR?%7{Oha-xt~|x7->w zoicE(CfTiU19hT|Lrv^0rB?mdI<6<(OTXX$*4WeLXOb6wpYD9N`_G~8c7O5xEyrNY z(9^=nG{#DN$@Y5Fjneyx57VCRywm@@>E-5UpX%r@;S(q zYBPI^A^IZiR_@a%axOR2vP5OTC=!mQwjr@h7m&@O>=?%=<-YDiK8=FcIgT2wg#Ql_ zf6jbcN^PgQJCR~}VmO`lZ4;#ml2CHt3Sxm;Px$f+a0gBvB4VHAWtJzD%R54vIPGZP zyYsi!J_x#(|6Vu4PCI~=F6Uc?`tduSHn0jFC*Et;cd_hM&o<03I zhNn)#mod&%GOVQS{IU6ta^L2Y%o%IZ(gE^!Tj7 zvfE*goZjnw(eP>gH{m~p{gM24k{w8N1qBjt90)ceKx6{&ezl~xYf@pAb8X}H=9{PQ zxV~`sbo=X?p9cRJ_}KPJ^QBk%Zq`5Od)xEu^KoB>en0=~ z)?dvw;4B+gdV(5%P!I;PV?pyGchWdor(2;a`9v* zNQxZ6-ctlTB5fi$3!NUsZy&jqL=zdp`KVytiBE((oX3o75EZZgQh@aCw@w<mAGrcqt zgmVU^svBk@S}l}da+hgmH@3};q92|2kRMfZqDZp%yIshzX^Q;ZXWbv?{^{xs8sb53 z2}u63-(=*@@IM0oSoH+{@7jJlV*~6TNM5=AvUG0sLAYtw{qb6Co;`zyu?I*egf%&i zd=x_}L!)-!M7>e171KSVCM5D=oJGgQZgUT-XvALc)Noy1?4yv4r1EBv36?+N#z&*& zPoWbBCD{P2Up|_VAQ#LGl0Rjn$z{^lT-t3OkeE#~az+#El5?42VHVUP#>**UVfP-QuU#%2_$$AHmee=Es~G0*iiANbup@FYxojA zM+wjvx)O4sOm0eNP;JSe)oAX5?LF~ZwqGXxo?#0nLV#Z~C@cm=c_1CBL;aCZq>op_ za%20m=BOJ;7sr?3QcaE3IWm%+v$ZU?nm%*HynFr+T;CphTKY`(Jnhrd&)mPA`mX*L z*{|&e(MCQNZl={%O_!psi*N4T_kC#dwD_I9Ge?~MEcy%A@5a8b{x$V?AG2Wdj7x=A zd~Wt*<@f=Xcjk-pSQego{{%b1D)D|S0$;_Nu}#bmZ+QHFUf6_%;u1U(E5wWO0c_6D z`n<2zucKyT#)}vFE+kz^e0^J2th=n21cmCH=&YH#n-yCWxeH&xxKRmyV|M#8}4dqk?E5*0?c{Clm%{K+7Nq zii5&%PvV3aBxZ>!9}vPAzvV_mQ%WX4sCtJWRIWlG<>eENh&>vF#{9jcm?;Pr1S-_1 z2cQX9FY3qX=ei191w{(3L$pcA8{SpVq{Iix`^%3iNi3q|^Dpcvc9>)df=&Gd8-~?f zf753EfXOhw#?n*G$qkf#6-v~-O0iXJc{hpN$Z5rU&myZIyPTBi4Ih}Mv!%3b-D5@} zy+W^Ul92>5FNZvAXQg17my@-9-iv-2_T?zy&UcQL8f zsIbX&TeIzID(`nVsFs@Q@*K`8mr&{Co}xH{%k2Ln6b|&W;L-Kvhi(HG>$Bn zQ~DTnv;lfNJ(tpl1+z==e2#+;DVQT7A}M{O8r)93K>JAGem9P>%BZBC(7ZW0sCsgL4Knqf|mWE2~Qh;Jht;#D(U%&V0} zL>cUaRLJMS!>}6`%#u+y#^G4{67DNMNz6U0M~2uw$d1w`)?ba4L32nTyOUl*8By&+ zJP}uNEcukQjEFeaym*rUs7i78Lf}K|^CDiXZsk>X+zWL>d$1wuF(QRKD3O#y?vVT; zr-jr-%A`gzr!gDBq^7IVG^_Jp$CwB&!|U(}H778{8>HoOgBVTxFr_fUOTCFo%flsT zH$9Q(N88~x(pChn%oU9$QmJZ79uiKGqFdw{B$m2^$S8ijU`?6VQrC{ z2<-3eM}ipr!|MTG=Z1lx=QF<~z3#^ezj$obvW-k|$|+9#X8MA#o$0UW$Ei?G<0cL< z>c}(v8UZ0QQi{@kyCcPF@9rAZ%?6?pV6$CNu2;*)FFByqs7dP z8fF%Gd)cDxj`O9hdq?SwYa4xUdvBzzent_zZgCgMB9DS1ORS9yl#ad+vBq4)ZY)ASM)N{A%Q z99ja^o?XJ3r~4r7)J{cLxj3&q2kC%)tZlZpqWAJ_fa zct$Gmpt=;ee4S>#b3f=++rK6~z}S<$FPr|Gbua!C=ij%qMz2H~^xled;Y1p)TdW!E zUJt$Ke6#72{mqGsVI=oIcYYei$MID>f)qr`BW;tGNxeibQBNEZlf?AdN?b=$^*SCq z$hpZK8;JO0xD;PCt)vD}D&>dtT)OEkFWR(+G(G6US5M#Zl5<&v_sqt=XnrF4tcEkh znYHL(w6QiAF06D`Dy!h1p^QUjG`El0#TaA6{V-&eYMxIS0snYC?3;YOl*fsv3zCn| z@ecOA+p}ft3^}H zu9yLf*lakicSNgSEa_FNZ_E|49(HMNha3_s+j-o(W&OGXa=wgRqe?VUL(8if(wzspE7mT zJT~@Il^HB5)#&%Ck6qg}Z+rci$X{VL|FyFOM318qAv;#p8HYUBf4y~+e5BPObf<+V zFK{Z=I=B(%Z0KRkQKl=$TPWqma>E&?P&uuizSc&rhYu_dFKl0`xnXU?^X2VRrYKWn zG0XSD3fGQNLCvN~*jw*}5b5&u*r_9ZjJ%fwiHSPWF+RYuC5DM0N*vj-7OoJao2Ch; z49c(~rh~d8OQN~X_F?(n_99%U1*$dXL0T=>r}dlexEcpvic&4+6!JzGE|x3Iu0*g! zK2T_7o=sM!t6VQBgq%X|(JZDHGS94@XQSHqzplYp8#|94!MDeTxL(1$eOf)!!NiBQ zbM8cLgy(olw!xl;X$BBEXbzlKhc1nR3~vzm{?Nrfo&6wa-w!T_>`hv9Q?wT#Z%P#C zmC_dsvoxj*lSvsjQc$NGY4NR1`5jbJ4HoGzb{wW?ZOy=xW;J2kfmuelVDlvkd^^H-^Y=yal?G zV2T&^VwabShH$FTa*kX%eGrt;%jr{^=_-EInHzDI(U1GBQtynLxbb?$z@6^T9>W4j zL!=gDn-#}gh)_xDP-y}kNHMYiFUk2M6EtxTBvlAG=T1E^^;Yy`Hj;axWdK7!yuV`c z43XxE7`T9j_^|xZNoHiUQX9TyoMX0ORq*=K)p4_q3x6~bd3R^N$T5D3J7pIjhJz`&)aF9f6nGregLJ46c0f+4$BI4jn~JWS zG`*F}c3Awi9Uo<+-|*CE{lb{Vq($MK^4lH8KE^Xf1x7O$OF`K6#22M+W?T5Y+4r#E zcEfFJbJ>OA*N-ocUuiJg)f+NA((Kc1*7JeaOaq_^xLyCU3ux!)SQ@;i)L)_8p^!vx zQS4?cDW*Gd`%L{HH=zyErnHSj3chPlk`Luyb775;hA4G%;m<oh6(B zW;=Y$n`l#LA?()$y_Y>Kqj|;dq*csYWkrxc8sxjN7KNlBYA@u;3?<5$@ziO|hgihM zoS{MafB|YUGD7MhYG4_;n3hi4V8n*=K4}5U-r&7|Ops==bTk{}QAocSq@-Q6f0(MCG_-HzA`=|*|W0j~BuwP3= z@=$krB)p-S&+a2Nn@vt3os@16M=N4wX<4HMtWL_PMx#nQv(vE58_S~fvt5;K8Gmo)<)BT?8X6k=SKU(^<^rO)4Ne6CY>s{(lX6{r}hcpJX?uukGKo{qX;)?B-$?kbYGCtoWlKM(Ia; zXEzGh{Qot`0j~MJP_bQZd7OH{>V03rj=#N*cVF4SPuY{cpu7VLjYP_vs0XA3)0y9+ zpmS7+phxbe(Xc0mGY)o>gHseg!6XLg*z@!+P*D(C7K12U`$GCbOdD=66%qz9}~_Mn1nEQ6}*L| zDy71hLMTAh^Jdcjgu5~)yRe8$6aMhY3=ow=ef#9RVSzolMyKGWI6!4FMJR58g6Veb zLxuxbCak&JtVW&XE>QerF9O77fJLU$>mp``)wKCBBinpe(UuW>K8U&Ag4VJU|7e&} z^n54qu6qS{y$E!jCCErHKSXi3kfM}xZctcH^UsFE+Mv=)c0y{V;qdD@6mL0act%k~ zUzg8}CJo!+wlC6ut7f0!QT8d^MUU_RlAF8lI^%ygv8@%C1fI_%7A4OPHBN)kR>PPl znTFoxm0E-3nD+zGe#7Cf>X;sWR$vh;X4WCPkmq5LR#m+JS_AJ4PO7D~Qs zP;xa~f#NS!Vm(MLRCH$!Bwfo6ge0HaU$1{JS7lSTUPlCHV_tiVMoyv)I3ic^GyUKa z`OI5!AG(7bW+jnu*Yoj^8?d=}M!V&>!)FINd*(@Cm01Jl@g(G9b^}sk4cz#?@{!6p znV^u68AS7DWN^|B_2h$*Z|ceZNF|!B6hrE*gxipKP7tf17&`F;OTnNQ?z}aAFJ=cS z!g5+ciB{|emacn@ZYcCI3yHK4kakhl1|@2zfRq9d;0mH|)j?zV;KXV}qsg+3V}F)M zG!sAis8M{T>tk@)ZxFI3$)-Vxc5*1Fm_ZATftOTi9 z(7f^>uUeri2AL9u5`E`Ve?PSanG#TU?wGQ3YfL+wUh`|R2ax_X_NpYFvP?c?hoCj& zRY)X^V{PcRk|w@BU`syjR1SSvWH_`*?jlVHY)N)+bb~#(yYsL}WeWE9hl=IB7^A{XN}$|$8YDwqZ+K$K zrO@2Jj$DBMTOpQC#PJ5!MDAcN6E#X+HOMD!)K{z2*V5?~pq=)bSfv6uX}#9NsYd+R zuhnZrLEYZeAz^zBh(E=;SRRUH_xhAv^wvI(zY}gQBOkJ|nWyiUd7wTF$0t6oH?F~{ z-FOB$kkt;ykygnWSQ#xBiNLlMW2(_EezsoUgLI@0oFc(WO^R)=nlD!S!rrcUs)!zo z+PLF^pA0!+_D{Axt3q6eW(jD}==%IrVfqNzUe4CZ4{qSTUdDVCCpa(l(`EZZj@%cekRy`pSII`Qq zloNjq>85#G)bGO{Oj$b3|G%r$40?&+z;uFW&Ai^yen z{2$6Lj2uFh7uR+D{&qJUeLJiilsJH+xAsm*OT=+I=4mj~3)T1`vz}mpUnakDt4w~g z4IVo07)qbk_RYr1ov?adw`rX6_@CX^9hp*Uz994B)DM}owfpIUwHBnwFrXYwP-^uB z>z5YSz#ywsxY-X1!B{znRy?Kp#(=R`hcX~q!t+dIo=CT0nB|~Zk-5J+)HMh)?(CTs zn9Qp;ErJb${5O4zfOH6K-L=_cEM95bCOTd4WhcawIwM8riYUuvlmND@1m1z?xjnjx zE%3Ob(DvKxancC2@3&zcSB;);;%C9p^8;g_w-S%RWCc86<&lH-U7Y2%-st_(>*oI> z;VYxtxVE;t&xmcwl5APF%nUKbv6DE7<2cZ8(liaHZIWWj+}^hL)*xH5%*@Qp%*@OT zGBY!L?)Ux}&0e!KGe>*Reqhd7vXe@9cZIR_?t=K?wLBdwgT(WNrpfR1nz$+s*`gpq zf~k{sn?z|e>~hk{jaP%-^qcu9*8JWgV$4|$!m{&M0BcaTzhK9Afe zmnaoy9vdY$J%}w^fQ@9nfy)6om*XoMPWM*G=Ok5vvrH~$2;4}Uv<9&X5jWC1o|F~Q zDN+)6QATjXFvcZtKW+ZWiw7csuf2Xe>;gMUFJ_Ep`1@h<`45Xkb50zcpMp)2D>Rt9 zphm(W*71>V1_WY#PvZ#*5@mOnd?845JP8H<6AQV7b_jXj9a*UaVOjKgKFpEq-lh@a z^b3%s*|)ufWT?Pr5R$+R<3cs|Rpi+q(V-hNr1=M#xA*W_xB0poq@pvMBq0_}j@6DK zTPrM)8nu^6tJ!cw?9{a&b?Hu!mUJdbF^YTAu9RKrZE8EgU%P|gy(TUo_emuw6&QcJ z!V10ZNbZNMQxhfyJEB_yU|~%UcPF%m5T~?b3BpzATqNCUa)dsQvEQ2{B5JTr&AfQg zL|f5(RR>L;5Q|bB6TmWKH4KgYGsPn~UdokC7p=ROeAQp3nOaWc-RO3M!eLk z2xf0OjF5_qds=bhzPPYnsPtj+2ME4?_yMzk2Kk^OLQWdy-KBJ1VPQ|L(Rrh zUh-a|t5OZJUh-V|IE^65D-E*Kies8C>U`NK4X*5v;q>_;o%s`C^1k#q)hPVvxylt( zc`8r3q9;WmT(YOrB)IwM{_@?4f9 z#p<`sL{w0P5*8ulBkq5_tYKHLERw(%nb-u|aG3kg;XdSZF}E0G?Sy45K&bA{5=!bp z@sB4AygnGe+imLpaEQ8>1eqJ){JrBW>KjHb>oDtt#TB8W47^(+eyR`+eIzWx2WTW4 zmHgmT4%2QheKLY-rMbU|cHgE~V+oJivSGyqc^J7kforANVGWE|KvflF@nO~hiYEzv z@sMB;RRFWUr+txVwp#!Pxlok_p1mkx7K_Ue^QnUBOq@q+*dG?axk2qoix z%d3XgJwoDzeCe(jT!$~r{+3h@y*FDv8@m^xGqH?jt5D9J!4;If1|`mrmIZly2>o;2 z2Zg?}EX1X3VvD**($$CZ8O|b+m2mLZejk^#$Vr?fCWpg3pK$bkdOk>h=`Sn(~f_Z@jAE!4pWJ>^Vm_oYIYOK+kw$dnD2r$ z0d8mxiaTK8YWNP$wH0;Mb7GV6Ic2!9%ki0v(9hRB)ixiMFtQ4f^V88`DJLgVh!e|o z7`JQ%9b3>lq1c-Vwi4}nu~L?O$W5~RtUcR%911DNIP|z)D$n@nYj^YJbjZ5Yc{cA< zZ4lxrZgfGG-=noF*gqZA9o2*Ng81cJ7kYxd)Oq^vxN}5brX4JC^ zX?`l?{g@vKi4oY`5_H7k21o&BQL@_%KWfqrcxV?`P`$p~m*P$kiu#pStkCAGiZ0kU zO8DPSB|fW;;GDuf2A5RQCZUoMrCr6Gr>|?po$+fyHauwJ1J}?8s@@8&`xyjkcj$R& z6kcdio8JeQ0bIcd)>DT&YQ=hf>H4MegIOUY+C#`EeIMj~QeBPe8^Kx#Yofl=TSw?1 z5}NvH>86&yJKk93L86Rh5%^6)$^9_V=4XfJ2dUF)x%Lv-YSB}aGzYNY%611c%CGH? z;46k8IuYy0$9RFp1&-kIsTIk03MQl@28_xRC8ju@X7zjE>H|V`+i2J*0zm|<7a+f5 za=TsgzQ?UOH%Xs-)aHP4q?cUq!wSMr+#lPYh}YeF>5xt08V7xo&;&V8clu%WR_W`S zIK+RO|7z)a&hI(Td5_j)Y#(_TrAr*Etw~h(ZAH1Pmk0DqZvJNVU49|#1i}2DM^&Wl zCZa<(A#okIuhZ$vDDuaxk}^5gMsrWr0-&%8+~dLb;vzZE21*L32UBQmfs#@VUJ0nH z05-#+V+Pm%urd^HpMs0G#pTNs?9mrq+AP3G8>H*4J+0R%L(`|zzM0kOd^?Fdbj1XY z$UlrYl!m(GCfxM5tdR#wV+HL);Oi|5m=f#6*E!<6%8iq!v`cFs=m@+lVaOz42G%6qhv-%~$bvOu5v|A>iiW`U(|`BB)e(3s zPr2M6YQidG%o^tt4kfnWzD}9SruZbQ+g(4{#1B{>gEoZc1NXhDM#zl;7YE{I8S3;o zGeWMr>nc7U1kuGXa&AUr>B8<18mq=K62NB=3woaR!?+En+>;=DJ{SiLcI0KfwtFj6 zT6u?b-h|lvDAqND2Ig7s@o{|wH{Fa$dhqqGVM3NQH21;aI1J}0uK#35oqw@S^AiaX zi+xhWocJ-7F+(5OQJwO{LWd#C9c9$RVF#>KvyREHUORdpv(c!bCTR~1W4WpV4J)P1 zY$!3!FIM+*IdkB^ao8uUPoS6pNcd!%3+d}3(CqC&Cim(foa=deD!&8ORh`eZ^` zn&CUMk365Oc;kF*F#A$MWTZ+Fp;3d64OpP&F=S2RU5WU*<4A4%?&vzW6Uqgo;021! z)4XL|^8%XW!_ki}_Y2fQP;BeQWOKKMk* za^xf7rB*`Qp=6Ik!0$%f>SL2YvcTZ7hP zu(iXX>mJS0t@ng{RQCSpo_OUR+3DDC z%Q=?9;WXkdph7jr1(f`Dl0E&=1lvPhpd2I`CO)EY#L9RWtB~a@H&dv&8v$82au`mw zV4DeL?$C)gK5PGB=|e|b=rjraqVNOHClhyT)cOe>#%`6c{9%u2x2bR!tj*?JphT|v zm5>h$@?l^2HNs93ZafiMdm%F!LJEi_a>t6;ThaE)iW52%!tsOP_oCuuVjASLiskIw zaUK?ELUNi@z!F>^qzIX=Qf^X?61ATW(?V^rH1hFy7Pis63&fuF^#aRqbex~9&x-4g z3tgw>tvHko%gV=sAmRRIy+&FPvF(I!oy_88w{_GUf?EG}k_zHM4tvd?P@PPR$^4g< zyG+WSZklFV6D@49-A|WdaT%T{%M0)4g+*qgfMZKk2$4}(@ey+6&zdz1_hby)zH#82t1TL-{4bz0oVOl@M3YSJ6padt7 z6G#Hxc^l~C!u~8c7s1@!u+I{`;9wAjA|dVKx@m~?=Che#tVKQLp(87XhxZq$#BV?m z;(wS#Si(<#2_0HoLY-`bO3S&8PkK&N&CAZqAJ{{~25GGry7(|9y|czBNrR|OSoMTl zKECn@ZG1T5h|91>5qVI+XvSB_=Zgf3gr9BW1hRdlLp73>N6zHRtjib4NB5xs2WXYf zcYu^B*pTZShjN1bXM2R8pY|B;-`dIbNY*koZcU=zFV-oRd{|`9X$6>YpN~;o9$RzD z9tVjODh|*>?kA)93fRXTt{k6U!VVO*7j@KG&<>*(NR6om?kP5w5}K!B-bc-C6>;fy zdsvhOaF1}a@kA$+%sLUSBVI^ey5sydVhZO$m=sB{B?v3TdP*_d4Wh7up@Iv}UYKwcj`j5fj32|YHP%Py zK}k!fdI%S&X@#5J#BGokCUB)np&Hx@YP|=^-4<3{QR%B}+;SJ*(pw|)my}xA7I(iH zo`xD~PA8X;!)&p>V}V)5m`}pmdeK$^u5S&W6pD`4VeEN)pY}=uME;VAKb%W>m6p=Lsz{x;Y@*)6wsa*wv4v*-$&YECD2%Ag1J5&|m-7QYI} z4OPS$PN8)5E9Y^Xjg^Q47Xn&vUSVi-8^0KXCOU8xpUg)SOBV^_GuWg(EM6=7bIHVO zisG&oORyAcps&g1YSa)5nD2zD9F)VBymKuau;1jEO)|o6WnD=SbJZF(t*ZfBqZqZ4 z4^uLs;8nf_ZeH1iQ6aa^1qC#0?hvXH^TQZP2s?&VaRhGxGM=2jJeDC<{ zTrJib0KI##;{ZdX%Io3arksTv!t-5qGauALm(iA=M%D%la_T$Cg60#M)}0|{02P&>Ay3G7>vjOM-}-ZLi@DHSimMIBXMPd< z-oi2jhGWwU`dQZsn`G@Ic7GN~BnLv(PyHve?VzO_4m=<(K_X9=my6btm_kj#H)ER7 z(Xdnjt5MKZ0d?x5=Ch6H(ABzSNYIGrRtb4Le`jQR=v^R`~cN zSfRw8ab%=)5o$Yi7N@Y7IH)mRG7B4kHMRB(XqX}$Ie}*(u_c`7?238%BU=|NHWuqk zhi(Dty=|)=soK{|3{N4}6rsszw8q6o`qAd=2A!okoFEpT$ZC(pPlj^V1_^nJL;vI| z`nr?D%z`eKvQ`yFwSrm*4n#j9S1*TRP*gPdtCm!t=6PlxA>5$uQ|oY%-F_I%23u0j zoiH8$kB`SX_n(~bAP_17$v_U=YK9OwH{Mh&{|vVz=WRu0sR9)*s0uv?@Sys%*B z+d+z>T!Tic(TZvS55|>~&3Q^~#O)K|cdc}fJ1fo}vSs=OFhQ&~h$(&iGP=xI8pPup?->=D*P-c1H^uKAYysdnc zRE@aMO)|?0)^2*fo|hg@gdP0A8iDVC+1W^hWNOX?;2J#%R+v*3Y!+iF!^ru5CN%}W z|7|`ihmlH7r^eD_yU~#?&iBrMEgY(p$seg$TrN=@;gl*Sn2snVafX#5ei@ON{;2r0 z|EC_0gvR65;3*RL%1b05A7(`DJ7HDbP3j%FY=$$QC+hLCT%}6J2}@w*CDb?u^P+o&Z~CN7gS4bB`MV~5|t|6^-ymUcUK?J z1uLx)B}*-jhwIWQI&0FCj4FDMYBhau5iLqJtIkO+n#a%%*wHk>Eb1{VVs;zu-HEgW zPr}TJA%eSP2qml>q8Fi@F)WsLr|5bwq44^4K9rnVB@~}JG;V#rTcJs+N5RjqPbql; zs@ZiiRqQ>fj9XsR%v)Zz;4fQ84Ui2EgFe|(a|vM*8eOP4tLRT+_)+>H3oeA17&LN+xO@Gv=Y{tjvMx zz^OVV52n9#1eQp0W3RGD@hj}W-zVi=@e}fkMtRCdxLoBZvm(v_me27W!S)Ekn^BTQ zhRwKIinBD*8* zEZbg%5-#+htSy=F5~&u*%jG{M)F=5syLaW5@PP49piy2KCp9u3Z-qm6?L0pa?8m!W2^HC7aDZy zv@Cvd={T9R2lk6tK?o&HJzGq0u0p9@BkWp-#=fGjhQoyh4O_)M^+m%m^$5jC?PB7V zR;^-;R{n)4&1gjz&D`_(>MP1AO0oJo%KR`GQmD`vR4Di;Ry#s2PJ7naTeC|3*sF#6 zz=l|o4{(hN=*2yVM=W{JE4T1yS9D`mrst2bO&F$mA6t4>=~F9Q)k}|B;E5h3fDI{b zp6qs}^@G_ev(&{JdoY1>fXPz@Y$Y9LQB%NWz+S)< zw-2(x*(6|5>NR;-&8veLsA&T~)n(;cYiw1$;={TkG*iNgGPX%Yk;eNeD2Ntqj{<3( z)`Yot>q_XIr4U?Ax0iK)oUgN`x2l|{?f76#v5e$wHpK~(jpNj*_V?q$4J=s^22G)a z2oCT2GM2Am{r5G^U@MU-Wi1gSVL3zSPz(%$PQ`MWapm~nW0{hbFYAVPV!PwVn{hh? zL$6%=+%w+)(!-#50&g)&$Ymwpi#--3zl9f}kR!B}Y8doz>WbgP&Z`MxtF)Rd?cT@Z zFY2E;vNpsM{v3VWDIP7}^LyosfLE4}igA&SdILks4FmYG9n4}BE7NNFe#9E8KAQ6e zC-rJto>Bmvf6woBz|ZqqL)wmK1s^7;41FDN((P;kCsw84eV$B0AjIBF`C+0Bvwe>* znn0b_uat1n3lq&$;NR~(w|*!6%YC|G9#3V^~s+0B(HHxz&#=Wwmzi!?w+h!b3AG_Lqdf=h2QpD@{YcX#^jS~ny z#6!Hpr$e%pKk&mL@_Ro%)PGwqk*FP24x>K|g~5tFY({|n-vOs;B%LHJ6mz8FIHgLF zZ4}oxeGiJCmfZJ!!o6=p3w4G~KBPKB7Y~l(0zSBhLykYprGsq{Oq4)FHWc?kLkq+o zOTZ@R?}7>3Kn?H`U@QuX?I6k;52ajty2PQ+_$<>${NHEKia-uNAWZ(evtOS z@wE5LkvCZ=NwdZ{O=skUt+tzfgyy1ZhT51$;YUINcs{84Z!X!N9Iv=yv~wcaz*@Ug z(MG0(R6?33FB6NRiOuHI5>Z!p3Qk(S(&Oru<0kcnZCCttr!QHb%(WKAQZy*%QXh`;YS>KXqeJ#`9BW#eT{9Bz(T9qfxpEzmQNUZ!O;~7p$1Q z3XMEula2^)YvmSr;ZN*B1o;2>Co9I^1(H z{o?fxoW8CR6VSF-p>2>OKPC}IZeov!_Q;&1QO%Za-mM z*&SD=97!Hgw;~QU5!`BNLsG@k4Q9DY1t)AG%+s6|cvz6)9LY&zL2OClMjJtTby2qnag`yLC6;Z8WI4E$v9~_uWemr_BK&f_Dq~KcLz7k)eK_pCMQ8bFW;EoC-(fJB;4<&38Kcp55 zhsJHvQ;MGM>kNw2YtsapkiL z+2m_QcCvG{2P zdyuZ|rfMIJ_x?ETrjWICcjh~xbg6iFC<<7I($oGv5M+{zw<89ct}!wV8^xN{1`S8Z z`=lO{7tvZQU%&cgDflg$%{Ps48^us(k?Twma^{#E3~0CV)coAm2{0((`-(n zbSkyMaO+md#r*H1-emve^-185Zl4Q(^7^v(Pup+3{|tE<|83s$sasX9nAc|q%Jy;% z?Dn6cl$`&`Q_lT$o9a`G+TYK95qPt02I`0bwB-K^jz8ny4W%c(@}rJZyQmG4!5*gD z(5<_D(h1q?b{PtP&IdcJ?jN3B2AVgtlFS$Fz#R@=sKF;Zo_U`3WW(Iz(@x!dV)54%rsZGpWN(h1@V*&-Dh1chj%QD?`b~ON zgx3}oBOmN)MBZrbfi2}&wu|D?6|U&Qsm=9^2P!j+U`G6~T(5MK;Vf1p-HI)<&FUnX zRT6kUs~GwufA^3)mnGMN<4QSQ%v7qlf(az&rL)-Oa#0>r2{^R6o-~rj-(PyVnKc@k_W~f7o^d;Rs6VMX{tr@-WrVhSSZiR2nsO zBSSoyOqWymyqqBz0a!i@EHc< zy6ajgdRZr?E5U_jrCM^l`LI^zjO^YE_@wyJ=G)kh$9|amIO>PokC%UNeZBuf>6@+} zbKit81hhIzhBr1Ggx@pT({2?n%BH<76~JaZxJSW`X@Q~eVvm9U`Ei5H3vK!n{yMXE;LGvxL5p8=b+{MY z+O)%%A$VKWL{iKB(9_Nl24zZpOy0Rb$+XW>f1i#9H<9{fnBIppO0yqoh(jr4-%J!l zUMxcG8Aw2m)Kh&~7UVEJNG|bX1PUT2O2?3X$Be zLV?+6Qgo5FT8OGBHt{H}63y75lrUr=IW-3(y|72CZG&`XC^MBA%}iv*GsBrS%&s=n zPTZ?PRz)aKA)RHII0@5%J5;*a9a`(jfU{iHVxyL2{AW~pbN7`c#ssq561 zStaw37>Kj2p!r_ljMu> zJ#yaoZ5bY6n`0qTB(f+|(JC6N+OIwFkaV$pFrD}}gny!{>>!15xdVE>csu<-y~Ofdp?;BxosrL_ z`m?*2S2R-2rr>L21Y*2Ne8X>hUstaX4@^=n_#2EHI;wALEXlOU*D^aKt0^(mk0Y=& z@)Ti_xglmN8zDDAj}p&ej?%;AVmW;Ec$HoK1)bfq!>41e_+Ik4<9ciR@!Z4Rk2^$b zM8iW+w1$m7?`n+3@Iy;=XX6R8PTdqs#-jYVaviM*s-OdMvtZAtkq^c7_-%3nsex?i z4N;^4a-T@OCpZubC>EqmA?7db`kTv>U;#|OP5)n=l(SU2l($r|Qmk~abf+5c`hjv& zCL~58H!fNTLP>eBHUJIrP}>1v?>T;zW*B^ZO{y%EG))+nu($F(Z>wX4FJ4k%*#azDfG6Kw_0u!Rp^Y zVUAdi^awk&92ZfCTaj~I#4@i%$}Y(Z4R`4EcG@#HY;@!G4(?2RJ*-~(CY-(S$&~q| zcy|_XpHx08RJF-OZnntLeD9}Jt>#ZdH4}f%mk*TjJ~kH0)mpA!TPxV9?)k z_Hm(ly>5R8c$m*?g=z{^xthboG5K+k<9z>EIVc}{dR?*8FqT|@Do3u`(D%aR?X5TY zgyvHja;_&s9I$vfcg5_RE9whI1I!&WPos%-sA+{jlUl_{BS$x4%Nim2M_*PfpIo;} zI(TkrORgIxrM8i?ge2bvvWp+NojsgEUNaqZg4uOScQDp&+-?oLe9V_Hb~g1vt6sL* znqIqvox;x5>TT+g{M@-CPP(imdsMoRaiA2+a9|vwU|k-w{z|6olvGkY5=u@mrdaXJ zLYAlKjA*{h3a8hcr|3n_XFAjKIZ6JPxSTrrq1vi$x4PHaP93WcTyHpB>@^tm#fO;9 zz2X0-(-~T#Ai4;`9HBcLc5}h84!EOG=>jPqXZ|{A5AESFnFqpF2nd1pWLT|)rC$;p zpfDU~*4*0o{ z*a97eFw+6M<>1*4HE}R}&leYtUqH^S^5M%+9*D}HRNg2*H|h$yYhO54!NM}m&J7m* z#e39>>tPD#r+g^ZA(p2&tkkO7DQRK2_pnac=0aLC*jmW-PmvbRtzSqra5|N#-ln-B zYoXXEJ}y~I38C771J*?LCsr^=#hPR*3b zu~^I%*<(Cx1uY;)CiY}Me6Z9qz5dz(gnWPWZ0M8F%UO5r&5Q2G zo4eg_z2fxK&S&F)rr$UmflVEs8(tC-8ktPNi4o~08T+j>^+rv%(=W!|3N>}PVP_h0 z+xb!r#mju+RK;ccGksU1O}IC`&v{(WKRtOZ@l49q0MRk=D0n z?aaNiwg$tDLY;bIFOf%Y!yMJ8rQFmk=#GS5eC)@E>aAkF$XDD^Jd?J{Y*pEpuvVF* z4|4iMt0mot<;*zD@v6nCxho0!qh%rmxNM|VhIoWFl919vofC7ANMu_{N6Ka>OeuCK zAE>QsmY(SOEC!d49yMTrgglbH$Sie~UM9Z5Dw491X_A{z^iuivYmM4be?^M9Fc!qO zB^#xyWPKF`O3fJwU3I(vEvCr6Fk&TN>Bo3@%w{;|ZKB>FHrSzT;z&a9lL!lGiV zYKBIv_J~fj{_@FwBd0T|CS&J&FIp$){I)ITb<8$Fqzvi^bsgEtx`^gVj50TGByntX zrX))xb1AmikX+~_)Ktq&o!XbqKN(62Hyn_yHs~fTu)@!ko{Ev}H}Zt|tBa>vZ`B!B zKbk#zT%mgh4$$`fjw{3~FQ~K_Pray-9=DNkFsP7QHcEVv!0;1aD>Sh;;GId=9FI2( zW!Ou*pe^|hm|{etDKTHs9rBcTG9zECwGXp6y{^-Id;C%Bxk>dkq zrh{R4qV&qi1mzUTJc%mFdA8S!!fOJ1sQuYu>EG21vl);gA7{$tSaVTCGdPiF&yAn4 zOF?m7XhbhZA?DKLiGFKrOulIh*=QF^gi`$1VV<2*2EK_w0VkIo zq~wWDQy-D%(5yZ%gBi$ z-4q{Hmj*052`lix$|c7}q2%SJdCr$uPR?Ph2o;3 z#14!`Oj}Pmn6(-un7JFZeaEGh-d=qce5XtNkm_h5)`w5Vf(xNvqJfl8NtVjRMH8na z78H^xrDBtRw!WGC#m*W80vP^%$9U5ZqT^slwaE_Bc~E2p2cK|1<)J>&#&2?dPyKrS ztI{_G&r^T$c%6SW2=+Ir)vEp?{^ky>J*ixYMETc_V*O-i^1)@>vn#Z6<$9IO)4jyt zHyM}Pzudvii8pfWkWkr&wRf&cM|eNxdSW$<#6xH$tfqiJE1ez56iV_TiMlJ2CsHV0 zEVc8rR?3nGOXv8el?FwpTs4xkc4U_oy2X>&-IRT*Gn&R0N%@3TX0F(fOqEHC>hJyka5cs}lK@t@+^RUYCa7`qVNrlt%l_lW%4?VNM4ZBN^%E98Y&f(kov! zePRFEw&cKf73*RyE>O)0qy_8yh(`X`sv2e_BW34^l{&-cGRVbeGI2v#5NWfR^*QJvp9YM-C>%8mDSDs~+esSwP(v_GCNq5!ucp zSjSP%Mk`Xmk2p`VqQp_URodl~l@j00f8k+6agf+}8}pIn%e33wUzYq){>1i``@^oc z6W?{cNPHgidhRcaU;S^6ecStG3d~D8BtUi-gz2t6i&3AwU!ghqUV=u^m!l3aB2mR~ zGOQC%6CW|Pb`dE*5#Nbsc~~7`K-!DC77T}FkZl7!|KVbpXNNAw-pUkdV|O=8%%~(8 zrK%;Ju345DI9Gha;eSQL0sYKf7^5sSg%MH-3KH`%4^sJ9Hfkemp`ky|Tl2t=2N%PwAn5BE59s@^7v4#sZJ&~=pK!@v zZddz2Y+kMwnl8KFSRo7&jtGIIVqz*OoD?mUEK*F4CNB_1iQeP`Qphmuu+wGARgxwB z+@Xu+aeha8>_O(`{NJN#p0pY2M26`q-u6ThR)*?G5m+DCT=2N)d^!TNI3904&WGfK zLNJG`mX|iKHDBDn@`uk6zVvCHc8CzFXJAs%O0+=A&p3 z290NL6l!K%_3u7)cyHlq!0QpY6!wI+3$a0TnYGD^6tCt3_n+KcIL@Azcm*@l9a;Dz z_dV#5^J#$Q07#_x=nv2W$Ro@MQUu=qfq=lJOsX}==1?uDRg5ypG2>WLztNs{7Hew| zYa#XvP^A^ip*wC)m_}s7o6v* z_=^W!uPHJPH=e!NdTRG#ym8v)@Y9jeit%@ruLfQTdC&KL)BDl)t6m2F*C`a*6nNUs zuWf&d{%rdD>W_UDGNj^Eqbg(z&u!iFb8hjRqS=Lv5b;Cs*JlZj>y_k`xh_%1r@1hM4s|HRlq z=YPEHVC%mQj?nqP9s!j8cU=IEfA8`k_Agrj)c&uD5B-0|@nPbBK`zkF1+M5A-H9%k zz*|znl$W*B^g@w?N{EOP(~s7|YLm6YrBbcMGFeM9(Ki;%9SsKkA=n9=C6gZXT#YfC zmKeVir8vo%)hN>%Qnb?U(6SZnJDV=)HX&d9ah|#RyN7q8-{U{4e3Wt1^4a|Byjf9; zd(ltJUPr&({AuFveOqWBgQWYlPjgMhCC}1q?8Z^{dO=QGbFn$8z7q{nEk4EW;t0L z7Y>)x-lVemn~QcZKIUaQ<}Xu9ULY20t?Ii=dB~Oh;h8Dp?+F#8%4fY|#TWUy_R2YP zW>aA(&K9fhAT+cQ^1&Akewqm0umOMNLN`o!Kr8q{Dy+a4ozTAkmc9@`_mrHHKB8rd zd;a71V#f!q81VvOPp8@nD!=tU?QSr2HuFDo#qUNaUxOo)KkY#29>H6CyR&u=?STBXO$eNXjCq+cl}XPs~S&x%y8Ug&50 zA0L{H=oQg-$y;y6MDljf-U3#&i)}dIdlK+VxoEK!<(x~Cv5i83RwyVIHBUo=J=(EE zR=4|1_n(gFY(E{*wp~S2uBc0TQ*8AEFVrRM6)hLfN+#zj?aBrlddfA4da8S{ea#Z-S!N5@b4)V*phy7i888w7Q?yi-32X&d zjCaOW;_UD{cxzD`c{>`9y*#~lINRU*KW>CjBh)Tp)vDSpN>ID@EUjIN)}EEvqcy5l zsaXkCt7=u%iioOORbI7f$A~>5X3THu{rUa=a6K>QB)M|sdG7mujQgCY#(;~`@aErF zUtw+{X-UeDCCA-S{Ef7Pg~PwBb&rvRc?P9p_pI$qLi%5sI{S)WtC%O~=Bgcf)j%un zal^VF5A*0Dv#n1A6~*&-C%q*ZRijbt!O;Vq2!Jt#gWl!{?tPZgDxLS%t5qgQ5u?^3Z zY+<0&kUVRj2xB;J-5Nery=5H73Q|sybx|e zxKjiK$T0br?7P+}PsTt`2h?+I#~5d_|LcEI3RLlwGK~BcP`IU7*rgC8wyU*!D=u|G zqCx$uwkPq#CsH=Cg8N36q8SN)aN$y-OrKjz%rxL>el4r|_35`Q%Zr-ygy*vqfJ^?; z^6zWZg#rveXb0>083k`!p$tYwd0o?1RfehO^tiKTF*hqErLI3eG~nxsIJd~PwoNe2 zdp(|LFafI|={l47Qfa!~l_{%J^KOt)zLd z{%lDN-kNLkDs0rFebOLGo7{NIQd!5k^)iK*zBtrqv>9KQtcz~Hq`7l13oN8%kw^(RQf?QPbiQg2&2!CfCeH^Yn z|DfW}_J^4X-Lih2I6Kz?MHZn@MQRJ1pL{_-Q{Yt#pTCvNR>LdcRn}Fgj}D(}eZN2a zV!QKT*t*iB&O{Kg6eOqr#J+9u<2&0l_w*;xlV6uF62l4L0aCl@^`ZzV@2&m3Hzpq1 z-s=VpFWLi(#@=^CPrlub%WC)&_r0%q#ge(>-K{R&T$d^`L7I1pRgV`*v7Jm|1l@1> zmMMPlU$Jy!aoV*;AH%BQ^)ITe=OcwI#993BX53w|c>Qo|Db}0HLfxqAfsTm5CpV%4 z^nP^d6Y-&S&qJOG^?YUG9`zbgIyiktX51}S;x4pdSTR{q=CS=e`HPj&H+bvP{kpP4}yAXwd8)AB;Z+Q4i>PltWy+cz7(Cv^(CJ)xToBb zT`#&(F)6n$c1zAF|EI>Jk@Z6}81oSP}J{FI*#38`(pQ>(hl_1BCDzoE^4AOV=PSon_{cw|4!Y-`rh+Hlad>3sRy~s zwqK`;0^dRhiyJiRAg&{!f|XK%R41?3$F$;&)ff33?wE+$d`VM?49WA43h3F~9{;6X4?-zLKP}0f_2lR`Q<+>BOKc51}b}i3NUk3_3*P68atbI;mRR+d2X}4Kc zSkBZ_Tu461*Aci?WTkE4I_E8-Z8u@^i!Q2MEV1t%@4gcK+jo1s0@UXYL!n{P2pauA z9+$VdcdS0jw-#Bq%^Ovr@>oP>fBs@mTYZDYV`%qj=f}P06Ujlz zMh$eyc;4GPMo&+uS0w&CiL=~gV~nJ9f00L<6Th}p@BjFq1qoX%`2IaZtv01BouPN#lTFIK(^W2jib&rcfqyeqPS*KlVNoz7c{q+dNHmhL#2dp$y^orVh9&g9TB zZU|c1-0?NfNnfn>;97`ropFrdg0(D^zLfgi`MQN@jPDg@mobD!7`MrUdlZrVIcTa0 zqkoXx>Tb$6GzGAG9mCJuu5OUFS*K+a;pjmf%9p_Iwb_mMeVq4ZNkjP~HUrPTERe{3CvHc-u= zw;R$0aZ^!i2=YD2yYZV@cm<~IVWecwsCHk=l%WQyritWzogjiakCE48reI+)HD#ng zMs?GD?pism8ie1JRgQdPY*sS1aXvNGFn&@sXB`^rBf)6-sQOLMvDEM(1|+MZ8ZqX7 zODGbqKa&Gz)^EOC5X|B%UJl=Qe|IOA+?z00T?;wx$_0IC51l_v7R<8Tc(ntDUgBLE z^IkL-Z%G`uRCCWMvA)>vWS--OCtb6vpM@zn{ak%_F{7KG(Px|8n1Tc!e?_}|>pppx z)vPZ*K9>5Rzu`^AXkg*Q_pPJ*dCLTtwgK6?@sv9*D0s$pe(wXtV(_H zWa(h->9*sGEmQqL>)=!s`45YmJp^aHp9gOq6Jq;|-NHSFS69HoI`GDUv-!33^ToqA z(*=r7gq*qQ^BTLAD!Rv6_>!zw{oxDZTj9Yw3xXy-?Mnx=(gVTA=UD- zsR!=!3;HHwezt=7s;&{$ANHY7w*z4nIzc%AHv&dOuM@v522Izn~HS$oj0AiF^10fju+8uAz~*xgt3C1Y7VWJ^kT1JS;|@TF?QfafwbS?9?p>U3sebxQ zn5S#ZazCmMo!RkeSQ@DH?EAtz?f3Yw5jfZaIkdfVIICKfKlEkR<&~9@#c1~tWKua~ z>=C{8n0(8x%iYPKtUm$U0Xp!5D#-S?^+uZ+x%2F%bDqZcLHg7R`1v!@e#GP8v&Ns7 zM~q6QaPMrLMQ~R1lp6T;=bJ^Ri5y9tQ^*6dFylYTLflH(9 z_QaD_qwonf=7`^4A=W$o&x;S#Q%hD_jp>_xsQy~)gh1={bw35oU)z|W$a-InjL6nl zbURbsxSrMK+Z;HGg~pbIN0%s0eZkgz>aIGNI52vWjy0&(H{CmOzZk0T`?GN@gVK7Q zr0!HQ?f{a4A-(T2IDA@>utzC0Z zpHCX}Pk%R^=of!(tZi5R#k)5o()m8*I|)-f8mPds*Y>)iVtOpvYp$?pBqVw}cKZ55o9s@u_J` zBZ+XgN}G((q%GU~`Q0DtPEn?wxd+)WdmnpTqyAj(<%`j7CGF8St%Qs1VDET@__0W5 zQ1U6^zc$q{eDX%|HB=o|C!4h??8WB!Njnj(@C1BBj5CY;O42 za=BF8@VguI<26rPVC#V-tUZk5t(|HGA9k@Nk>#;Kb;M~O*G6qUECngvufS8mczq_SHo(=BUcqXMeQ+@_bLv~WiMeHk>MxB zZ$S84GXcW3%}X+6<7O*uu#vTdQkv>2y|!$gUwO~h#Dnc*>W23A9cs9xcXkjL zhpP_zo8Mf+mEG$4$7&qvQ3*{lu9tHvffLFn&x93du+abhHVaHe$eqq{!E>w^zg)z&b$cdBrf#ELw?b9# zb_qJK<$MSlo7u(&d52yOXQ3M<;32B*A)XU|ry8ntbdZzJdtbm#BKpg<<|d!DZ}_{8 zj73hR2iA_6ai9oE>$_8z*hyOb@oV~tZNU}Tv&JlmuaM*43xWD$0@+(_S#dA7BJ17# zCtE`!ty@Q0wikceWZi3jaDKdetKYNcGY>bx#VgCD>z4i?DBt6DzsK#0;ys-ikRq;% zW^NPm)DAU*SLl}BeqT_m)Mj+*d9u1@kd57OeP{F;BI|k-&_D0vWmtb3xoGLy->_Nt zZo;)0ap?-j&aNg`RePXhSI%wwCrm*Qo{+4_+Nl>iZ5B1%89X5pmyV+z{WA#2jk>ks zgHUl<^V?Pz&B_D*&c!7?=YMN_Tw9+aA1}FC+Y`2a`FRjO~38(y_DH~$rQ>t*n`9foMiv=olCBFuB;rMIQhsV!mpOAqgXUe|l z$~ekHnQpvQ{V<6g%DI!BDedB%Wn+{w?F8FGZMO%vvPN1cwAB0#PwIXbbv-rPv@xRP zVxvkmT)7jEE6bnTI$kSET|Qe>nc9rBy_m6yY~P>ZjGSv5D>)t>-SHyqKYU#hVsSYL zN>)5LUudt0aNC%hhVPxX3WVy&w>z-Up7vHri?#oidNLF2zmT>3$os`bVL*e;ZkMU> zO6t8ig4*uRk$hOD!=b76Bx$dOl{8>vM7MSavafSB%iQ(B5)^9Wsu) zEQ+kUkRCq$6kK{FxL3p_fP^D|P3@lQ&z?nMg1OqCpZz$S!$tC5?na)e)}PjYQay^q zJ1ntvwx5n7zVpyEK5COkGHbMRO$Oqz>EsKbwl0_I+G&$@U64w&yy{(e_UnPUKkYu- zVtRe5@+g$U#LAB(V+0;?)EP9k6n)t_7b z1GR!l9;slILt_YtahU2?HkfKYvimeM_|*}(CVVzq_>FgcJ1osD<6|e$TFInSUH#v;@FWXcp!H{kVo@u|=K`(?Z9gcUM@c+rjKTis8 z4gQHZ>Z6TI&S(rRGX$S>RmvBC<95U!~5?RlyTktUqQ)# z6plA^BA0^BG9qX<8T%>arxT2)J%p6teQ2DRQ2X5v6a8&Jw~q^M@9g=&&F4PK?Br&N z%~t-U4C3W?mh^lG8wIm&NJ-B2mB7(E z&+6wq$M5;bP5$a7Z)b;!TXqf(8p>rcZV3Avpw4Q---1t`Ac;Hf-mASvI$U^cKE!p_ zy`n5bbVOcChX>+PQ3tWd$)j0j= zrzeTGzjWQ!EkJgLcIF$J9traR$Zei<=BvW;oX_jF2H5xJ-qdXk-dMcE@eB&{?1LeV zX9%3YVC%dwv@}IOiYS;7)4!-VNC3a9hCJ zjmEjtNu9CA4dg80=XiJ6@Rp4#&yn%Y3!^Us4Pg)>jDtImTSHJvCrYupZ3gSfPcy=& z2NKz5RZ-ByWXs@7xQ2f533JzkH&1(KG6!p^%r++vK#szK_GYU!IHj!7^SZ ze{E8gj;ZC_x##`8)mUi4>^4tp*fS0rDhL-$0h=FflWrp_NjAHlh#JkHwBcmXwsDSP0O?g{5lK>&V6u~Drf0QuG0cn~al}I<_cWzafl9my8az4#BTRaafT$z| zI28iN+o6lobWH6jA*`_5*w*;tojG4bdV9c*Ow%BPWPNJu-QAgL-EXk0)X2;EouAv$ zyWw+hE=Q=s;>k{%bazw=p6YXRwR0UGB(ByNb6pck*^6{3auneIkY>@?|l@ zFZ>V3EMdBoc~9Y(W{5&cMmE**E(QQt^7XDkiFXQmEC@Q6mOJzxXo%NRq) z{}&xgNmYv6RpnSPzkm7Ta1OXB802)Es3=+J1=s+N`Se^&`9(TU_B)cJDbxIFq7Hx? z#y`EtI014AZ$eo%&vm1AjQIr|I@dT3$V>CpfaLT-gT)k{B7aR}wu5T<95s5HMkrJgDXC5SKSUR-2&vN3ar$pBckB+P(_Yr8c)6y+aB$RYb}7FL^h67 zj#Zfv7lYu%*A-l_dyC3FVrf=VvowPx*MkIy2i3+uR1?bpEEy-)S65#v+wt8|HaIxMIXEah^Fi1J` zswHXdUSX)|k&H51AkVsrhEf(L&WLm-wFR*TD|9mkD2MX@S5atgS|+2+6L@3&PU-M{ zx1!%piZfk{9|=wpny9qhMSCZPP~N!PQRc+aJYHsE_A>_owV*kmgFx_t!gJHDUg)j3Ce`IkB+8gBcrF_>chFB`Jyy1ccuLpF;eI! zo=f6Uouu*g=}DwEq&5>hHl#WvDUJf!Bq^j^o!Ya@3#N{6_YZ11^+k=HLw-?z2$9*|i?PuF503^MYe zrettgiq;_>nL-~4fGXod6i-YshCN*e?|V~8eY9rv2!7$ot~j}qY2zm7?R2*1aXW>b zh>>wS%AF6Lh(Fn8lsm;|Ur|{yP*rTuiBlhD!KrV_ZT}#>V^~C$2Eqgr!mdQQ2@IB= zLA;Mu_QOXUqUPNU$y7Y9FCL(W)62|>n=-(7NFOKe1~rTno9+8a&0Y^CV9&@~^WjVe z=e{(W=|CC*CcyggqZ~9MlJS*jo3uug2)bjsC3z7a%GnfT0iG4(T{y#zqK9G(oi*fB z-Oea+`8_^n5lqM8ON}Bv6cIoIcb^YwWYifcwlP{&?cya~3Ei3=Y(7hQCP+NhVXjN` zI*bRqrLY29c)!wntc=-98!SFk!BO9-1;kFLJJc!R7Ptu2| z&^OIEHJ?@f(GBuE^)^0Q30b`Kolcz%SLw}KK2CVtxbhcFRhr;<4HUwMV~hrY;2Ib) zG6yg+3T+ICfIz9$qNvEAxNBsQjK_P0pcr08z-}Q=%zZ`x9&;Da!B4f^K|4OrYXK;N zlO=L|oRc;Ub`2F*m?*FYNH2h3{xAQ@XM^QHdXUImrhBYm3_%==7g z=rxQety^Qt%g=O(03m3?G!`UpsM(YzP%`rE$5ACq#Sb? z1YYsT6TY?PkJL_Q{j9r<^HbIiu%vA`o~(G!Jj&eHb5(eu+ENhmv?mxJF-6 zl&bng0$v;)ns#JjPaB3g7mLl`aiB)AK(FDM`}CtEi7628g(fCw6BPIHy`>eAx#&|` z{6^*uU{(eU?T7xYEQn9J19e91nv~9Dpg1Z94NS)xUC{g+owhs zzpf#QBaP0%`!z%DA5dK9=#>mQp9sj~y5)|1=oVs`W9 zk`t@-6?350LG2|@(VFjT4GiIY2SCST@g8DuF#JmZeU*NTo9gXJCpXw5h!@~c@bsp1WTp>M~ z1LHBCSpOsVaf=;~smL@L(6Ipw$4O`eaD|WRx*7vW;y!~&%za|{XSf~X2)1Porj??? zs>L=rN2yVPBodV<*f#-&wAwePW2hG(wE4sTP)?SiPO<#G361r+7(__xnR@(d#d2@aLbMi`}a zqaQV+OpHy2UV9Feh7vfthOWpexhC{h6gdfy*gHL197cvxY`2t589I8h%8OQ`RW*@Z zsu|r7@daWW(H*p^0Iq8ane#eP8YJ;jXY9W07^yfV(s*)uw_|EYF-NgZyC?w?9jP;B zUs?=%9D+23l54dA2AfQem01>%O-!kK!Ci zjmX~r@a4fgMfcJkk%N!ZGKw6G9nbFK07KNYgSGUF(UKn0UkNVaF@pdVmVJvjH`3qT zb$e@n>!Xc<$_4ZHqGg~xLb`&d29J{6v#(ko=PK>OBo(<7K^gQQ~ya|H3Q=ZS~1B52tM|;lTT%8@o0uv+d z$Zq8GDGsX}bbmGJ{ULuFY-|UC>vg)FPm&fYgQjdk5gG9Hbs!nrXmq|EE?$j zgL4|mC<&GLU(l0Y1^qQl3ie^U{U1e@s3FzfZ@#N?syK=i4rp9>k7N!>2W_j@e?!R; zmE9Nft@dlYC>0I{G5&oMV<&fy$SmQ!9#`6exqF@Rh(_4QY+l>z0+9|B|xepgQW3g#)!oAlXR1%xIpEv z?ko`;kSIjY`!{Ic`G*BQX(6J^WNnMA{Nf~box*r|2mfQ{-QPs~@#KGb- zs;gwkGfE>98*CO~AlXAZt3~i@K1&(*UJ98 zSJ|CDUnBj(vvflHDQX_`X!h5)sVsVx#yy-)??37walcj*pbs?xb(k^U#&&2?`D>*59=c4VOSphpR$9hBOVL-JnT2j0GdVUiz^s{4G3NhOLt%**x(TrIjbG#w~eGA z4X`%Bu0j9zXzRzNE%yRr*DoaDKAq@EYlxe8UsIWtW zYB|YK1q7~Osaq2ejiiNuVGwMAJGB>Hqz^%2tOYY# z50q%@sQS!4b>>m|Xk%}g`D|rrKC|+S0tzMF)Btcg1rlG9&VcEqpQlxmFUSTdxBv)padnov%-ua+=iAI4rKB$SLxb!^R)6X zdud-lXRbH?vlB57*847M#ikI+11&dDA!T068^7s@c@W38xR(Ir9t@OQ7a1}&kW?$6 zQcPbf@g{OrVm1sQ`3I$;x%rTIc7@z|toJ&t)3e>#qTYa+B|;}LA+C^up*urE3vC)1 zH6&N*aF29l@h>58^PM+d({*)?wua0$;UB2BB9~ONS0~)Sl=SEm(*}~b(-^xE^)DMD zN&W%qzH#yzEqi?erTqEtqWO*TIjYWafts?gjQog|AspQZ+jpE{Prk?;Es_H!i`7Eg zq&J$OC=g+sCvxja{{kkb_Yd&$EClF^QDiwdFl7Y0r20E&xFJdgdG12ZVqBYXuhyF7raad1`s1T+z zYJq*0E$gMC_`Z!yrBBT2N<|dwy88 zTq3%0pHG>EHg3x$)o62}bHU@Mseb5YV0YrXus~$Y~A$aVp>=RyH zCf=cR@R>OA6%a{=q=Ru{?M@bcVhS==4oXnDm2IHOEjVgx-dHY-ONE!`vhbfzWE9h!^zHg@v)hM zX>Ml!Wo&rh0tLQB+ONxf#E!;lo?s9%>xTL>sHAyuy28RC>Zi9LT2GnkBLN(Li2M zAw)+xm*S*X!JAdQcFGbo6JcfS8XY0?RuZ^P+~AG3J(y-&U6FvnmBNlpBKI#wYNF<2 z(}1RM5QG87ixrCo3V=$(Sa1wWe3>QrN| z9mPR%8ns4%4XDY-lpNX@UqO4~==1bbbNkQqIke&E2dIbKQXD5y=}680UBmJf9cA`O z1qd%N^F5uSbEFV5Vj)u+U7TSDN4?d<)7+7%VW~I?&faHa?E=LR7c%wE)2Ft$i}Z^4_|T2 zGxUGN&iaBo^nqN%@lRGCpwnr2{Hzc#sX)lE&djJAn3lV1pV)Ge7{$b)La)H;d%IH@ z2fG<<Gpp) zIsjc33;&ISA)o%JqgngQ7M0B_S%d^%kse7hNez2#82R=smQ}Ixc0i{Uf6YfEBUBu3 z-6u(Y1%g<@@CU0K6+SWZ|4>i_3zP{j)K@c)y+cGn`MbT1AACws6mdQpv)Y6p40n%` zNINN#2_}q{j}GSB`G6d?i(KfywT;ZF&&8usPo`Fh4ff`dz;m>hUS|?WIR`}-e&giM z`p$750C>bbSJjN3oSkdJTZcV$fY&?2RF4c~MZqLpAabCAXP#mn$+I_iB zzu?Jiv4pne->#p*n~Gwa-!j#vE2}51YJ}fow8>i-2RYQ_#OX2GwPhX+_yhA#)!NvABLj=>D&T$lR>&Ip8_nQkSBrTss+%{p2*LurgMZeylA0E;jZ(S8 zHEfTX$x`eY)<%C`N}WZV>@)iF^pBtBEYU>qB2O}fbyc#P& zN6R-8NW-Tf6ypqe1nBT%b>NbeK^YC1LJ>{CUfn z)VM)eYQEY4H)t(ajL5!e=1K~#Tri5Em3gel4QL&GlB?;Ry$>Wwa;9H* zos?M%KCCWvQ5O4#m7F}ONgs#ISmnuPq@RUNtG2cN@$TP0gPz5YL%O}WCLg6NB^abA z=*p>?31=t@>+;<^kf{iM>lyb^SIE%lE&qc&mp_{~C&+Xw4Xg`pcBM^c^ePMYT0YqB zUqWSk1iS^xz%Vx_D0Slv6yM*R(t$qB4K*n9R4llogn1I;@@M1b1hp>0;N<D76%M9m<7Q=sO}$)dcIpSa8s#-Ao=6VW$ioQ=%BbkJs$0 zjPB-7EkRO3uj6m_c|;2f7?++g;G#MID`j&)DRXhf@sfs|w1^fg|N6Y<6^utPLksU~5*Tx9b5-kAsz6<7}w~-KmaM6A|8Lw zEAPITnpBHWvlGq>yM{eLho_yIL@+i<`aAS-MxF8<6`x(lkt~sB%99=GY#S3?Fws5a zqU|5HlRl3gX>rX7KChawl}v+Jg+Ta{*2N4z9UQYJJs)oR8E=7y-jtQU$AHy-OVl?@WJH7B2CA6}WylEknm@Sp)NKAHj8eD6;8wxSnY59God$K#nY?1gpPt+hR$ z_9rC2u$dSNrFXY;B>uo|Z!$N?GEPlZn4ly?iPViW_;XG~5vxIp?5?EeY22(IyXa+M zyGf)`^a{x#>1HQxI-STw)QL>Qe1w(oYLb_1(0po<%{_qX{k1C{e~(mYmh$)&6m);+ zYkH^89_9C@Xxg&QrjDps4to*>W?zv`jw==BJ+%U@FMH?Xf1185lA)G`NIA`HD%|^laq=V*R|SqU`d@(yW5Ss&m1MGA6*z(`hJ`5JNs`$oBHt2KN{{q$ zGkaPjJ&YS`6a9~XAOTQvqR`n$>Z3lZNyHBWJ^4iZfcz)MC`JDhW01^HAfCQ2m~=;T zRu{&BlUTCL+@YLJLT2NY(WhxgruOtm9+)aNG#V7<;~AT@lkA1RhNXee|$ zXr5$mN>fP=XyOUU)$l1khG4c74qx<1lFUVi0f|8#%s;0~&}#FPf{J44LM9w>GJTSy zs!~WhdXs6YV~mu_gIyQ&=&|M}(RMN49goP^S+6#2M@ zly+7RmZVa_iHyZ>oIu=hDt$h0Mi6@P$YYC^HJ|l>><(E`pHbmrhqa7!OyhpP%s!5OKbMUJV%(vO<_2($TxjnEJHAJoNGr486jO(9kia*lv<`_&E33ca^`D z_&hUZKMZLPxri}2_$4F(ABgGbi4}DqfdF7sSPpb&db~ND8gd-OZ{r{J zv5^{U!wm>d80sD-kwHoo7J@}zHmzT`%`?QCu;n$BRwQk=ANRK|@74t<`Bv`A-x3A` z#tvri(tV5o84vh&EZPcyf;^&+Mo^tW(`c^jl{8>?p&_1m2fG4_+!JHFnULI)g-vFZgpT`WBfO=o)VVgBk!drokW{^9<}6#cKvg zhy0~d%cS}Mt)-5U-@pkOA2}6ESuNymE_xe*w5h+pzpgM(#Fg@K+bD8G46(8)MW6B>6(O0Mc>GoSf|K#javYH?+fe+} zgwCDDDX+nJ@AgXJb~{yAZ}9(JiMrCji?&ET`)c?v`tzq;b5YRvnM3#0!`2(&@nAb* zQutR2=j8i}`;hUBaVl?4`b@zG%UO*d8qFf7n8IjJ*w>Fbhf_7cI{!a1=r7|AiOD$Q z#c3`jW?EH_X7xIY)|gg`X9%0y(}ZEj_e&#{qbcLHJI3dQ9nO?PYsmH@5uLK zs8rAvw54W|%wS#z$bFT_C}#$ux=?^$MALK~zY05JV#rJ=dqbgnJDgRLkl0F`EpXdHL2fGRti~;L*#RAW`aK20P znFtO0$vnhVvyM{rVB6hF|_&XA6z2gor@l zZ3|p{v?gOI`HI^`Jhl}%|9ieO@**(o=Gl(tC4Twyx!k`%M<%oo!xZU@W;P7gUQ-oNkffNsrc=0QvLb!XzJF~*EN2@~kgAAS z6D}+xhZ}ja{k_iB{4)8BIgn#rrW6rft!dXAD8Cw84w9K6Z($7*A8sq$Fd3IV=L%F_ z4=Hts^1eTV-q#;8EYHu0plIO;k{u2&v@vaznE|!X1#u47s0Dx6ej4&~^~qH`Lhk?C z5oiKc*CR^ZVvP!@Cc_YH2V6tX%ZGE|G>V)-a>Js9G$w3P%Ai2%_3NePYVw8Njv*?m z+9SyZWzpLjGu?rTtC_lm1Hsa!k|YHwiUn)5L$LC_oZkSumn{ivw})&@e4Y^75S&K3 z{&|k&GZ*_N7zg$wfjna*Z z_~mLS!Z{9HO2?y7F(=oCDGKvVhU>}ju*3!CV8eozUq+GeX4Z$h z=Il^{qaaauWp_3)x7NQ>l2)yc?oD;Y5$qe1-qqWA=2(&Zlkx~E4LVu%%KkZ4pOnA6 z-%9TcQ^h$M?{~rPl*c$$Qhmc?NC5MzouaB#)32xXV0Up;M7}UyPG0+-JF1iDHvD6H zpo+zY_uMs|XHvKaOX-g03HR2 z#+#$d_z`-9=XdXJ4Vz~yig$#+m>N*CFDoq#cR1g!>pXswmvgw5sEe<6ce-(73b7F2 zZarC6CfGYz`TRKoo^`Xma5*qY2tLr?dk zg<-{tZx7c5bn*SQk4~O0F&Q7}9m0zATC0M-=VSjc4c1xlUYVcIV$eDO6-d*y=o+dp zm@gffD&z5PAx8`eBLG)Oab?nD6ai}dR0|z+RAgEVJ+b)=fF#}=U=_p5*Swj)MqVmL zqT}hU!5|bP1)h%n#{nSE{#Qk|)fxC=sK8$}7zAS2!PBw4)`0&YO(3=RR0~iXNz4OA zO?)AF43zQ59)=HK%Ac^%AwYFqE3GHCo8iZ6-Yj4N!_7qAM4&M*R9TIAfphQvpI41& zq^1)pxaMtH+EV|`IbA%h(9>?EZ>JN&afef0!IZ*F-Wc+^@%BF4!s&_Cgco>a0 z>QsX(Ya2xZ_xFVfZ>9ZDlnTpKd$Uv0hv!I@&voIl|KHpfX@3=^!WG%x?9_Co5mIF} zU3jJId-9N<=@4VDqq($!3(l!xHKe-N!CYFh_d;01K%|CTbE4HJ@e9r`9fn9fuN~rx zycR~UjAEpA+nsj4nm38#Wb|ZQKX8f%w=Uw42|^Mk!W`s4S)_d%hB)1rC|}O>CR&4i zw%kaPXp=xQ6r0%<-p{KCx&Jds2G)N#VW{GgMxJ+}rD=Uk-KfdCrI9SYH;K-O{s?s! z(IxgFzjBGU)~B5@nsLG9vZ>J-?6VbvN^x?=N-^2%^(h?#87Y|7{d?UQLT2`wY)S`> z=v>vHJf&nw7zlTb2p6;eXKmPH{`tE#B(pD(iTLm<376P$_>W1P{*OsqyJ8X`l7CEs zpoX#QX%(sYACtI&3GX=-siC-XbT!aGR8U$+S0lX);mH+~P$j!!5<1aWh9NtS*g%%a z1BAyy;_*!AfbNJXxRd{Euj&vOJ7VN@p{-2Ofg5{o!MAk8JMAC9${D2ZUELH&^3_B60xcL=#5`Q^`r6A!<^n?k@k|YCql*_ z&*X5Amg+L+OljmZgiU8DAsjFnY;d$NuW=#L&QO22=kCHCn{i%LnNZ1dccbgasFqFH zTFFk($k|;(LkF_p@(GW;JR~5Ze7X9$`}+0c^t|TMibQ=(w==}Z2%SirY<#(Gu{U(* zE*^#BJ3SD(f*?J+OGzAuosL+VWQ(U0fwgjHt2}06L7t+WwOhm!?gVAhoau2d4Ub4m_#za4lvN1WVj{vt z-Jbc0y5Yy&RdPy8$)nwnRn@1o;?<`HDoj^|7EYnS)BU^5c`#ziIsSNxflj4h?Vc2r zkKXDgw)Am_l#5QF@G4F)*9rFX<2|7WQYgFIyEAXD;x>y8#v)ng+% zNPJ2zkz(DxT4N4WND#4WD~Z@0w9jE{yPq2-jk~k-JkyPQP#bPYxQ-$BQMZi58b0XG zKDM0lGLH8S)wpU?UAiwtan9VAO?srZtwHd|=(G*-9DGod0H9XGMF+{RyaE=qm9b`f z2tOU3kBW#6iM>WvUB_00<4WEpp%@RyBRaJtDr;yhB^l92AhsJ_5tg8<))IRX2s6-g!sgYIXAXb;Kf10w zkm>*bvtjNLlH{H%Wsc;UGxu2`m7+rwISMhy80nI0$Zg6^Q3=H`sSnFpND`aO9a}?; z(f7US_vi1gXRr6(wAx!tnKt)UpDJ%yWrmx2A#-v_w~(ie#(e5FwFmP zpO&!b?GGS2H6w(tWE4>JLn;Vhl{z=&!+_=uWm8z`AZCGsr~dpm34oa1-|$>J7}hyD@~j`ozQmJi z$H3N_(Jn6r_zSv&Yt9!+=slV8h|6G8){K@6)*^Y|qp(T8z34MPDsmtQ%pyEmw(jIU z?Hj)q-&8Yx?OxF*s!>c!?;yZQZ}0IP;FzY~!NkyCfYndir znM*TdMVp5Y)$S8^zU3NMT^WuqLW*Ya3A-rL2mltbT)LJ6lz5)Sm!9snyFUX`-DW2yFRgV9x4ZgQbw*xRq^pH3Y6A5- zW-Aq&m%tx*nfFp=oG zP0g7&9-cOE%6T>ipymeL_F~0eYl&d>1kN$m(oS8=KQG;mu5X^cv?cvC=~eet)dBXEw{HykR)h)~$F;cV zS`A5sUt7L;rEaT{dPXJ#Z_5}&)_zxTUNSnJQUv({eJ3LollUF&yd-rtr3m^%=ADUD zOxbrL;19l-(#E^_)OH@~_^iV(EUw@yIV2Oq@-dlay@5I=eg) zZD8uO1h$~9FS6;sfC>?GE5YP9#-=c0rC{377F#-yIbdYlP+b*{qQ{8bls1V?eAwNE zj~lAef{$cvOtGe2L{K#8{QI?^y?k=LB*+cH$C0;tWp{$CSnQH9aLZQru#g9$QRXN1uD@my@?fYJb{W88;IPpZk zyJz@_N0-moDv**-ky;o9u>al2piSs8dLgScj7=1vNY3A8&$UT zPR@B4_q|pRrPK9wLH`WxFzIr4r;15&IoZHS(HnEhcGc;^4ei*^+bv}4kzJG(g@TcBF{Dbgg6&Zk zmhrx8f=B2)4PfkN!UJDz^1ovHFva2;Zg`zqbHtX2YnfC_&bggB_s0hvP3}jROb%%(@fOUkaey}J6uAc!OBH{Zy>cz{2|x2i?RJ4rSlvMh8&xMLqM zM_j7nenKM|bLh)=Pj!H~iyo0wp$4)MO7Xsk2yQc`4TQ=aFD<-ACA~6ul|PvZV2NOC zt#&JY!9W6mCgpM0{x0T=-!J@zN~${VpEHT2`EE%kEc8Y3Yt7#yz2p{LEw(=D+`lAp zm)z>tddqX*55~k@?NY{lmtFITOuf1aSAtiy7!_$WX1i9XM$~4%(>}s`TSP8o??1cL{PqbY-2&KZfb=zy z$FqwOpC1H8@;e?xJkD47aSznB@hVmfI0c+0^yyl)TKzUIa_<%SyA?mt0uP#P$JjR7a`6GD^; z`)oW3DzPB6%Q9)cmCcx|R6SpZX$8-ry4ETCJOD5135_VxGU(O)Gu|M0DQ>9^~t6PA`6 zWZD7jZxHeQ(dV=6R)w4}H*C zY+%IWGL>rG>d4~c#ACnZ*53nnii^mcssADFhY{K2-cvHTiTo7zGZx*<$rEfpS^pH@ z#Ugn&@8;>ZpA@OUE3+$uoqRS$N$Bu50!Q1@evm8BP@Gvn@b88xr8;mC@K|1&HeOeb zXhA=h-*s@6jcBHjYzaLoUsuMEry7vM zGIiPNtUaCSihva(UnPixMa%RYPdy)E|EGjfvCGSELVeM|uin=1gpeOsA?IAesP3Ci zqu=x!96d?AnXpqV9HX#)be>Y&egb&>Mc476IxGij2R0k@jYP>H#-YILx}SqA+S9kr ztmO{|J==ZKH!Z`@()^B7{oEAl${B(zcporG9HjYY5;;*|x&ZK;^d^O%3WoFrYU?}K z=3fgay4t86%dY3yIR5C6cyzW=*W~?D3nfJ-3?%JWIzd|576JpF=yeN&xLbNkDcK2Q zo%SQ0Af-&WYSZlfWd^ozx71lF#tEYw(R3AK)7yUUl;XuSG66PVOA`&c*zKK_L6(5k zTzmc9_Diy^>$TG)*aEuLRjJGg<7rdveR>9l6trz{s4j%TW%c11t4^5gvLp7~CB_d{KF!w-Rmxx|Bj{`Y876t22z9g?EwIv_lu9}8J^b@n9?z+o z$L9;J>SddcmW(@h)9FG4z!*#2`7kG z%}qYXwvdxXm@i+X-DE+6ULXWh&1{d}R@kUOKv?ZocGdE3)%Ra1hVj_%jeiu!TSI~Toc%d ztDqN26ztg`>9_JQw&}Ehi$OObv0a>$DK#T)aPjV{&R!rW)~T8sOS+Q3ji#J(kf1QLJ&+Fl<%Gm>In4^Sw9mCE=odV(^m0( zY2qhQ>~l8c#LQ7J+{)8|Zdq_TJ^SP&TeKuCAkz!f2BAxTlH6lYwWtTlI+BOJfrcGnMae?CjEs%{*U5nL!8{3BD zkrmA=?Jp>AY<4X!_7cA~Il(9(V=5XoB$H>6P$6_^f5&BML;~pncM7#wGQLD!?^A*_ zcgjQ30l+V%ryf6zh!E`H5iTHg@NqjmBEg`Z=E3JVDv(s(cx`#T&IDub{zs%E(5;c9 z`-dPdyXPn9%_S6FgSO1ol!?Zmw1EicNw@7>1D``g7qV~TPC~?N)a_r`s;8Vq>qUq* zRJkA=?c1)LT8phpuqWxq?XYcYA~uYWvbzpa_dykGe;~gGs0h4ST*3h-&O_XKX;X9x zA)Dd5C?>8a5UfHvd2fjQKAYg>2zHjP&X;8c2v%aL>dx&64}@64196u9gL(xIm5X5xcK_wYe}7Cz{K4wt1A1H1&&`4kwBR<7}HYAvWh0Yi*00PRwLsl*y_<_4Gw~0cC$vRiycv+@GC>z|=)0A#jfCi8z zPXQb+Qfx*CUz6?*u#5}@Z8cK{gc6|Ze1d|5%qGq0!X(`^VlhL7dWXE6DdQr3EPVYV zW_mnkqG7!HUSL;^eO}Af6Es&R`ij2@g_U%dT+ zEF8L)v>5+^tQoq-6=r({AW7g=N&7OoPEA&-+dD|x(yxVGzCw%mR99&)0_dtHOVynm zifrg^VaO{03tm^nC(48tpR1p8C~`n1wb^L4Zmy(sc7%oHUfJUK6jV8`wfqZwd-=}z z)2EU&zbk&DA{pcte&shtwUfzB!xx2_2#rVIvE|6}bVf?vjqmFY3dsDuNWZ8P_GYQ- z1nthh7)22vmhXC#uR3o;ZH3+bQQGF)RCw!0De9O0A7c&|3ynkwRF>slG?1l=q2W+z zbCNR1L>dv#nxP{2S@ilKk69Xbd<2z)e8KmY zLjAxNXPOp^#pAh!EvO{@J<}rJ-dL2qCylC;Wl5v9WFLr|A)s4wtm(*eZ#wGT{2nZ% z7JpW{_bv++%i%Nw8g-PP-({L8ocb z3K3R^VMCUH|9DkSB{TKZJX!OLtZJ5RRR(Ow|2AhZ_66I@c!2Nym61J`U4o?_E8>YJ z)p_Z((nsq)$?}1`*4i@R94vIvl7)=49e8VUJN8pO8X^aM7R^I71->(IPU**p9NHn4 z=*5c*7mL{1{eA4LV28gjZWe$jwGo;*Q?>~RZl6b&l%Qu!h2o9x(xO>owHFVQZ=)Y3 z33n@~cnKi5ko+_LaV+xWDD|Dl;6R~iLYUBpr>P}?b%6WpoLhbz zOQ$Eq(&_1fodIbDQdrvUXJTZZSLIP5STTTDABbqqNgbj`)O1 zt`0yWsY(?52QWPCzxUU(kY6f%eYbV_uOzOu&MEO;q4~`!1L(o8_rG0SEbuw&b){#R zr|%`|!^#<7?M^PC7VE-K{7cR^-x;Jz9Dnc)c$AvYH`6O>!xFtOJ3g$qRKPp$?enOb zjp@86)Z*p1bx%N{k@u$Fx8N(#%KC)MFFr`SR&aG%33 zK+^h`oKB16am=?)KR?}@h*#FbxWI2JS5m8OCtg1MAnl^veEI4_quTP2P9@K-_SvXW`(V!fj zP-}g0U`=dLpi(j?5HxYO`QbuMasDY??HGYjwZ${QNd`?%1Ftr7hC&tv%j*(WEG7tR z0)rPTTXNcXn#IH5LobTAPi|<&@YPM9+|Z7ZT*G%M@*g!;zdUcqa_~=Z83=?O911t{ zeb(>YECqOGZkAKf{bq%oYcYfGDnoKnY|U(8>_bv|&}Zu2TXOS9E1NWSxI;A;uawJ7 zA4&rFaVHi(zQr?dRJoxs!O61eJDZIb*IwR|=)VcP?-j0z2hHgV(u1R?ynLI**QAES zb5Md?!i&}p?f5ZBnD`LfY@>MP@|IY?apiW-N@o-z!*n3WBGhF5T&1t(&cRULMbUC! z9JB^Dyx=gv(JHiVUhWGVg5`4OQ#Yh&C3W4%r7Qb4qH(-mKagNdJ!B{ek`dmdUJ~SJ zlc&yfT-Y<2igL$W2z^LE?s2SDd#KB*9Jjcc9`uW>-n=UB?S4qzjo4xY2+_H{ z;g}<6n4{7SCrnwIgV;w`Ku?sWCZjM)xOxQej+ngk-RW=5Xtn%)qv_(>*5-!HZs4!m zIkygNlr^ul97}=sFT5UC7nnfoxpr1ry?-=kuot-va5rz901V@HEG?85Clgcz+|8^U zA;8KJ0NwBifXu^KqH2I{U>;$z#5%%+$i{*}3?dHVP=K?9tBF#)ZHM zCy*7%T+ir@nWPkr1^Ae9xtvyM4&CSV|*xN3S1~gri*s?I%qpM#S z{LV-5&fFhf`Pz4<=`!kU;ilt?J%AmC->Gj6$&qnWMggoK%As(xWvn03n_45%4!EIA zo;opCw5sO2q{Tc(zWgdi3Lz8yTD_pytyLr$_o4&m=~ zoNr%8wXL6Uj3))z);@>)>K&EaGw!e);p>0DM;(PqAAH+k*r0corX zvgzE_2!uUt&L?^5Hv!YG0lYY8xBJE6Jh8@hX`2$AdJmbZ>Ocv&d>dI;rA-MayoJQ> zMY@`c@8r0_G;Opz7}u28ITPfd7!jm~?jhzq-I){&$ll1WFt~*EBPn=+iS+OH>4q)} zkekV&^r#Rw$g-Qjk3O#URU_$HnO--kH|`@dGJSgyJXsjMGTmj0#^qW*~nm1uCdgf2A*|_h8U6BZ0_(Oc5fTs+ zPG{6Tb5HR>%e>*7T<2@M&BrJ{N>%sTbX&8fgkJ;|{>sRE7QNNK;r$K1^=a7~ds8_C zx$7RNyzOn6+an%3BiQbIXY*Y&!95Vm@ZK)%;d9uF*?Gov!XMjgxONOJV>v_JD{zaf zJg$7P?fn|TxzV{9M^#f_u6w-oQ@Op$q0{UAMh0;M@eS^pWOqGu5LyU-17rxf1f3c<^VyDkmRVl8WB(SX9gU3$pHu$vSN8Y z5^;*Q&J5>h0?gn>OJ)X3nj`53`3C0i&BJ9~LyE+kk>ri?6I_j)?HfDyr;?+Gq}p{` z)9)lLTp;GRS+FlSpHBFwGd54@ zlkk&U@@oedb?m(2)yvh-Y-xo`gynv5FIKBm%dAbPEvEo1B!Dh9(VDJnbs%?ZsX7SvOu7LChV^wo+{HESWjg1yYk6xs^WFZE3k z*-~6XEF$eTOyMP-<)QF3rA0@(jaTlcvQ>8;Z5&(lEAu*mEjE6-CON+}Jeq~tc3U$G zN}@{BjXrJ@Ji0wZW4p50fDe!u!sWDcb^$uLVMW7R^X>?5>Ehdk?~rQd$0yr-wDSYc zI6`mVvY4n|Q=as!8qX}Ex4aCj2y~C!9|{di{ZjuF>;dapF26`>Aw1cRp~M@GlSI0e zZH&dE5%dVc9J&kBWoImdNI^K!I7vKY9t@l#RXH^~S~y}K5<{kw9+Dqo;9RlCQ+CJn zB+ka0YQ?-JbCRmaRTwy@vz&8!v_ymfvYFh|q1~+w^Sazj;i*x$wbyv%@qzH?t}e> zfhPmkiw7HjIwbh~MDYin%z0BD&^4!G2gp~2K{7{P=p`^Hz^T{~a$J6JnWH)EQpUp5 z#OnL|w_;@CTYj`B86)!C8VApu8x1;c)O>P%UITt@_0`&|FF~5u8V8@8%MRjf*L|`( zc~;`vJ=1!T>tE5!zzo?1%Dm;h#TA=l1cg%mQwXy zBr5XW&y!Zm)tz*%eeMuNI@naCfZA^E;fCP`9HVxqkggQB^rjZ>w1q;o>-P ziz-06fgciWyD?WTw;a9H*d>WqHgi6``K0i_dvA1;!XgwlL+2NGiH+KmY3k_#M0PB@ z(TORqUu3<~9`Et+4z+GISP-ZVR+q_;ju1m;k^4v^V@-7uxX^Qrd>iE;kN~^P=6EY$iYyDQsT&?O_lSyT}2Tg{LtzBZQIZ zWM{lR!Co#xhqtE1pR3-*Sk0s?$apz{uFP!uE$lmf~Qo7whqtKp+u9sGIwrYHN>S^ zO}T;!YH@DY-Qe=~*j|LvUFE}w)w&6!1Gld#f-gdg>YeBdo&(Jt20(URs%T;?sE7;U zIQ0&HBBUtoPUAGf7#h8A4VE|uhV~)NzmL6J-2_n=28YBvxi7qLwD%rQ!uy&IoYa$f z`#2z*&?uhZp5|`T#(~4&PSZft!?eSM?0EMKcl$Pe+&!EXZH81qaJFv)0Y{N~(#)w` zG%kXBye>x9u8kM>5NAu1r|zfi2R3+9dXsG%7cL*?LAydVrWq4PNAd`4@6> zE72X;E_=LqIvf*i6d{LvN|wYY5t0;%-LLFCmFP+-ZZuv(ESCxJ;00PAsiNE2){_@? zpOHfLz#DcO!ib-YPfRM)kN=UNu@jmSpfN{19vFJ{%>LGz|lPV z#E-lVo~lUwh@;3CjmpzIb@epB4>trQKz~iFi`~-Ipkp=V$ zB_vg{DrPjUBE7;E#g8aNT%?_+s?byjsR_PmzBVWjA|K&F%OD}iNDLM<02|0;9NV;@ zJ;Y!&{gd4mX9_h;{Le_%4EGpbMhPNbuAeM5HgqR%^hwXo^_@NX`s&Dxcszr0|Igvw zm86kB>tww6_=`W=sDp-UAMc2FTqRspZ0C@+mR6=;8$yqM6Z|D3ygG9bIO3K1%1cu! zB6%6FUZ?#pLI&gp(izq796l~4GOn}-O=`4r8Ka})$)kO4N6(1q^#u@DqaYJ`9o)k8}5I_d4?AOck-)WPWj!DkK+Tns&n0cqwkr1GfSfWS-KcY0`x8 zj%~s=u(f4iGMTs`b@mfK&VeEsnwuaR=T)~Q=UaDswJj=OZw6^R7&Y^J$Y`nZFIiQ)?|Al zM=8wLd37hY$oQ24zKaZh~nL zjCj0>T&z6Zj!HEBYc=JDKdPV~D_IpGym^9lA5+H_Yq4uX(>ZjAEQJwI2u}~UZQGB_ z#<|nNNI~618&A+Knvp#@OgKaz0)>1O9~JOD!V<88h2y5B|X^cFEagUozpR;X)uqtmWNra$m*9Ju- z0n^wHDTAPF@5#d|yX>saqYi|%GIpdTkWNr6skjXv4&7jGwC!33%%oTK!+|Y^rdBWq zdSPuyv5pIV>pT4OvW(>=t{r}YKfb5nPfzG}m(aIqjz9CJM?q1Acuy(46w@q`$}eaU zZjL{?J->E+NG*RqG1?S61R`B7_1r`Y;9AvtopV7RK77x6ob&hMK+eCI_b;L=(kg6F z(yYwESB`%&23n#ekt$6*T$S&JU=U>#;l}YurM@{gjO)PT8O`wR?r2R&|&Ls=tsZY@P zJ{HT33ZG^K$`yV!N_EUM;itQ&VL_~hknx975*}f{ZLwvsKp9jXQnvrgC#cNKbuH!j z%Z(GgGmbu7Grx}!D7g}uT_v!fSnogs>C`OT1b;fOp~Z#C z%PBE+=db))-~KAN>J;)TYWYxt-Xg^Hw{k zb`cfjc5(O9g^``=>-XvYA#NMvHH$Re+3FQ{9pheNUQIL6(+!xy_hP%YVpRL#vCF%Y zz5IwGbvnc)VWZ~Yp;=(;HY%=NWN#1h2);U5(B1xEbyJ-9hg6G0K8qC|80y6K4l$A< zo=6wbbyqTgKcz?)aTW*^yrAABMU_0IB%g^EjL=5blTFaRWk)tn@O*B15UK&+Lor`?%+vjS{X(nkn4p!kDP58^TrOO*c5|JV(8=U@~ z9Q};^0uuxZQV7Zbw*MX49fEFxiDK+wq-xhbWGdO?n+#zaM%>cfJd@|XR#!^2`kS}g zur~fzskwVKXn|83nRnEDr&rl zB7`T90&K~)7#WZ=%sG>x5ut^AO}56nbi2UnxSW-pvl*4SU1!D!%{~6T4qvCoFfw3f z;l_P+a55@Vq~FpuT92qDEBA7YOb@|KZj@I_V_|evZQJ$DP=a&*jp{C-?*HfHYDDRC zoxqPe2WQFBM_%ku_>fh{^UFdZy4zy$kM6U22!hV@)yUW zFcKH2%&FKF5}0S`UiKYaxwd_Wt7*FLMfdcyV*9m~qtdAvxX(Y1Af(~+Wmy@0hPQ`R z%q^<>Kx6EW2aT`1q=EZWcRIU?O^>&>1kGmxD-l=b#qS#YIBET1@Z#OAA1A#&oD?w! z2VR%GGB0gj-=!}{>AQ)RNwg}JNN))A4!CQ>=iDTznk;m~va~lj!t20Jjc@`@}0CCjXOOmknDNa#!&ufV5y>cDL8$={+Jcc zGVfvNuH)Lf&rf?}bVE$cXEn8QroqfwCVPqY7 zqrg&SbFzT^P~nGAsfZ*zzp};&$d>RXqQm=r{^h)GLyPJkHg0#jqb&S>*f`$phFC04 z*u>oJwzfDpVRQ9vH(O7k#gf#jqScMQbkQ1o{oloUXFY?$U-I2T_U=0YKi(g^>4u6O1Pivst$^X#(&;O-HPlV zJru+LVFB;V{lO3&A(fM4`b@-T7>(pEH9)&c<)oTE60!M==HxEbM<0_q`@l3)>VswV!@1^jW2FNLPff;Yo?kAY7aoSYTC&ZQN42?El0 zlC_51kxyIZcpY|09E5a|b%uN@jN$_48oZQ5KXkhEOwd&}ZHD7@=p`s9qY&>c^)1P? zR-}6b9mDN#3*-`d$pkc1fIlWxX+avgt~}Lxj%Xn$t3|MN_<}ynLF>}vp$Kd%-4;q; zaJtegc*wl?L(F3gcj~PJ=@L#??g<_;D}EpI_z`#Nsbrfh$*M;}`j2dqC956^RhgAe zCJ$RbICP@)bMi5(2gCATep;QEw@6X=vS4MPVBsYDW!frI-oi=#3&m;+Sm)mOWNYZi zgM;su62p&eo`-C5(0G86qyAuOYBu8tD=p6T!n&t#VX%NV52&K?x!On|F($DRqnDP; zkyK?nlmsFdKt7zs7F;G)Za&9!XHc6Po*XEzF4e->bpN)Z==LYVCKt zOB{)H>~Lww@=k4hXI%nZ&P$#SoP|pR5rX33ie8723EJ2AmMjv3*u!5ftB>7Lh|ong zk()ZO87A2b!A(AzIOgw92c1rXb5kw-$Fv{2hy~s*&$(RijB4Z?De>P8UR^LnnzJ=3 z^XE}qN4mSsRY(M@3-^hT_gc!nf1;Tj2Sispi6$W?2%Juno zC1ODkthKQ-P0;s@^rr5=~=K8}zuy(E_hwa<=Z?T(AzAvy;-`ra${fzFH zgK{*&*z#q0Pl(TMNA44iDF+9k-1YnO9w$r+4RI$v*kGJ`|4V=wpe>|w5=>u<*nCA} zg>1q=RR$X3Xi?>~XW&&K6`2{>C+mgoXp1{7=@Y{8d_rT>R(~uW9I^1OlN^(jd(E95 z6X@-A*Tz_Wd!l=nJN@H>Qp1O#QUE&0${ipMtpd|~f=4W6yLia+crA|Cg{F;yN33NB zc*qNQUJk87({e#kd5zCJ4#Vgy?zP8v_Vx3%KX`6lI-0y@^*~fk>!Yp1XY@#Hu={Go zh~MrTVmM;+H5=>8DxQ$4ECZ*Xr=Fz&5I(vqz01}U#F`T#sS&gYf^M90y0UHC=YkFG zKRAdnDC$3op)lidygtSE7c!haFpI;!nwyx(??akg9cbyX{}-EbR#E>Ig=Yup%s3D}bwg`|RI4t3xN{2~3Q+zY5r z7s^BaXuV^+dFL?q>)LI)L`ZJ`SPz+2KdV((pG}yV>%C^+3(x2o$nOd5_f*RE(kNNL zNjb8kCMkv@KN@sdEA@77^&w+h|M6{kQ=6thDmL5qJ5_eKGfgZI`_k}v?n># z^1(6vaX|;zQfKqrO+$^eYMG~FV|OmeTAG;ifo?d-I+~c*)GzwTUNm_h<2%x4nu)p# z>95X5^Y3s&3*B_V`dh-^3xGJbB`mF96UaqdQ+Q(tM6Gp&P(2_jEn3f8$oBAfFIY!B z#(OJkoHKbZ!g0IMv=()@qJLi@T6IgfNKT`V$6+XSFcDwz+3Dxd^_>F~4;*gq%UHXL zu$GN|oY5^)A~Vg&Y8iG8z=dR{8a%=P6``(Z9lx&hc z@8{1Rt*I3szI55O3-O!I}LrTtyJGX+u|VJ z@~ru6PIkWf9m}v+8pMF+Z(<`K-{ao@yHWbzjZuz!H&VdN@dKD!M3I@m+#*4i0Ol4Z zY=`4z;fM(=98qQuN7P{9h%)R0@&g#$!DubIHz75C4l`%xd3DjD@P#&-vRJpeofi*R z$uV&8U3%Q(?^sw>ANJo&*T1Oju(wwJx32iNuK2h1{kQi0x1MvDs;mb{>N&@~DE@CP z?xCn6wNw`Dqfsx#%)m`_u=bl0tQZMbL+pPnLlNxQF%72c_O7nzo8mjslqD!9vp# z!5>z|A9;YWNy-Jj6wu0#bMmBYG(cCq9N3>XaSqOemz0dA`iNCExqVody7~-`+$Gp> z6+O;;sB~zs`V{~3gNon{A(h)8OM}73ct7Qr=OO2X&Q5cDoi|kjeRL{53yJKy3-&L> zpO<=@YJGN&)cN=+m7OpNZ&&)?v6 zTQOJfwRx5p8Ep3a_q1;MtzT3%PpF1amuZ1usFgK^2KvqHQm-1D%Yz>pP&o$lbB)h! zS5T|gs=k{fIF~pNwee-&oafu#O`5pK7rp&H_IH?|*XuwkiiRR!Lqs2QZnQP_Pr>(y z3m#7^PbDNYNSZ8$*@%~sH-RB#HdSdZn08S636wQ$lq3bfcJ1sG1xg0v=q4LIj=V!U z(Vlbg=VW%TK0_+P7}-Xqbc|x^vKZiPeqo6TmtR{jm`pX;cT(yyB4%W zk~0Bo*T&7z9c1jg0|hvVoznp}hV8CPzdz#2$xubF_eo5c5mXdL69k9{7R<=cf*EI6 zFk{=#)XjaX&^4J-xWy`%493)P$ZS=87YavJf1R$`J+MUk zR{X_I4uW|>r6E!kDS%%Z6ddn|R0!S|jCr3Qmx0a@+m+B0&~ubp^&w4{6sM-14#pIbdsh!;UCS3e17 z_ht93deVbd20NcQO5s|O5Lk|BCfsO=S9}71t41W3;)==>V?FVNMu_+LHXZ_SSVZXV z!yi#WSs@x(q}6i=XM4T`vqiJhL4+E7#R+HkO<5{GNrG1fR7*m;c7yeS)4Dtr>B9TD zY10_@deby)8bf8%mX-mq6s!+albTP~RjlI-k_}2@=tU?XOUTOj{O)|13BmRdGKpNF zH>4Dl!8oSe1fcI&c8U_^2{1A+p`p36oZS$Z$-rS#V--4Q|Lgza2PA4XEd~8)oER?< z3y$d_agu=rI~)ej#0lbZaA$#S??SGCwQqIJhfO}OOKo%B^2a>~K1wf$%y$j$TS1-p zDP8<3VO6o6r|ofcE?Iz7MlQn;S@a)Hm<45zPqFMxhz;4!svb8Y_8`xrCzVjJEfA?g04%AZ!@<0JqNtS z6#?ua>Y*~PoU&5@y~m)Xe(q{5UoBqET+#F|5$bn+JNi7?JmT5=7@q*q_vd)qf1<>? zwiWazz4FUkZJf_+3IwYM*S-(x`=oNWLgfb(ArO)Gp7P6FxzvPEu_?_W`b?fyt0#o&bcNGmADIV7TO9l}wJ(kFfYV-vr%sU0Y)aE*aohu=o~2 ziz1e97sDtcuj046w_#YQv8k~v9Yoc~8TJAP`zDf-y2WkVxN&K?leB2+71|X5Zp=>4 zwguqEc$_%^H{w$$j@v&s{u=*`-KLcjH;%nU3K}1~MZ@Wa+y?gu<(Qh70SM$Yp$i}q zS=^dAi(7M#S58y5Y1@P3@(~|6=xD#QhM>5nXh08<#f+u^CL(vhs zbclQqy>RG2#OKW?#8HtSp1O0254!Ae1DQnGl#Gb>s&cbK@LOf7DP{#Kzu8?5Cg{2S zJnXU%ujlwPp*)!LR_2HM@e!K}O@B8(n&ecAZC0^&;G4MbUv4n4B~*x!!eK$ zNoJ;KL_u(wIM>Eqz6c3q?#&(b2z}(co2?HmQ*q{vC@714i`3qfqXFdGe(HJJ`LRef zX4QMWzWrRAocwwnLJIGubbpnJ4^IoXncPo~H3>D`X@MVH=7`+9_$3)dteNt<6MYwG z(;XtVgO7jNRmSN=?^DQ-hZ#_1ha_^OnzJf8%~Ydx&fwQ=>){0SseBnsYk9Fb+Q1S@s&?)upndpT`=9Fd`y1VJ%Q#m*3vc`=b^Z3%yYgR1}^C)g`F^`uG3V-kd|^rLNWCA6%PUXfp6 z;0LCj)F^q>UT6!x>k*rGbLSTQnQ)-ljn|wXXXq?G9L|E#qj@5@koN!)5tFHdb22e> zKt!}3`2-LVg%Cm%y)@q+b$4vM@D5-k4$_Yi+*340UM#qe^a(sSzqD@$Mo4li_Wps3ABz6W9lo z28WT=fYN}~$8)pbNF|nTC-!*QFKf-EtGbjDCL@`oM7Yda6v* z(7X^(#_txsy0;leR_?ezNfG`z*;dl&jE2j5!RR-r<}`D{0Pw_2aeLH$++&;rErcWn zbeC8NOO(OK5@n!-8G>{v0vyfUU#MI@1wiLf_i_Nxd3fr|<6MqSHN|dNCKdkXY+O0d zXiM!hG+t+6yF0rCWk)FaI)U@oYjf$oHAV-sy>zv+&b0iz4FHA7R~K5b zQ(<6T;csM);|rzi0@Fmn zAFpOc_*@t9aBf$9^kJ#DNu~`Vm0!_H9DW4=(T4IioVGA7B}L+BlE2xu7?8XO4w89TH&NyVCdeEKppIb8DZ6t`R7`r5GQEX3eW7V z>Pz2LVZO|6^hxRB+)^?7?4{L^T@U7Y>*&X}jx88|j%JQ-sn(Yy5%-O)x0KhAYsfDq zWmt0)%PrqKyR>=t78-i!Z#O01Bzmhw==yDtqrsq&d}O!z0KMBa&;kZ9P~9afiQc?2RWPr=PCdRW(k+Oeb#a(Ion@;_;rhXtsMF za+$4Oc-U`T0L(}n24J&i16H@%hPyUEjJX-`8A=emQ)a)ezh&g*v)y^a^V$V*2CaN9;Gnd~Wi1vnecR>5Co1$g(!S6w+RW#? z>3-=xWUKAId0|;2t?uhB>>ccUU7q!>~5)gf9 zzFWOpov$mJDV|C02^NSFkbSwoTR1M0?(IjY`@-9$+cWo{g!KkIBYTD{#zwBQ6XycXPV?u!py zXq+D&glu--CxV}`LZm*0`=*Bi*NaG)X_sLCTz@KeB#+qr&MCyl3IZBNCYZlgjdyGN zD1Y~$R?oH%w2=Oi_-dwv$nc4Ee_1E#LX$wy?$)w4+ z%(=U%Sjx1O^pmPlHgZ8Ti3K*^OkI8J&`~yCK3(5+5cS>Fz3nylq))E}5~h?}?;l5D z-g%qxSAd@H#D8+_KRNQBT>ek~_)l)qyf$NI`v&pWAuIfk`B&pFDuBS7Kw7o{y%x?FPR`I{T`K(?+#*?befIqT=R`* z$<28cL~g?O+PgUX-b9GQs*DWrXgs-OQq_XH#auAguQXkh?X{o2l54)tIwsq+--JQx zk(B@J`P#F){iFNy6Cp>-;A_BNsX6#sfaAk&br<51b&|+mDI5Aswm{*fnuc)e`kzGl zPkvdj^i(T50TCY%Z$}TmoLs{u3W6eK8u#Cs{j3;O>P}6J-lwu3^+AyJrs)r_IuL|? z$$8Yh0)n&!xf%4FXMbW8O?z%M8PVT3Q21eAKf-rX|W*0nOV!I#Sb$~=(m2HCeD zljGC_#8zGT$C-H_nL_v*+Sa-HYb9TD{igq$!GPoq_l!Qi6$IMGi}l7n=vBY~`?<9z z@vqMP8>{hy`U@|3gLxlvUuEo}6G7$43+RAcj@z*#X@T1rqg;htCXmZv3VO+79^yZS zp3^_{;sf>{*|7b8z6qq@7hhcvYCtuvAkzc(kEn+g_>ZUu{72OD{ue$mKzI*+jo6oU zKO^%vdo6W}!vgU>y|$z-n|hKJKzzQI9)wqtXVKM{Z&#c*oU1Qz|F{S6|D#O7z9+v{ z>{s=9jd_tXL0nQ?rg(EaS>J%r4{$%xcL@+-(QW^d+yMT6jHW)pM8D)NC~tpnp_}{d zM#=AnamwD1Pr5hliS|%=3IYZ<^3|97&mgd{C)hh;KdV12ktwAs*$w%|6hv?O>-T!o zJppbI6YU|l#CoJ}&bPD1xn%VLJt5vv`@DUviS{YpR8O2Ywje&!)|Vc=n{QXFH>~4s zL6@Xk6dur*Yx^mQm*9d@zKS>9+hJqK(mlwp%+E&Sk3mEvf}|c4|A>t+eKYZSe^J4D zu`?CfA%R|d9|uUnf4-IIKXNw_K!H>t5fuFT%WYWtXOs~^|6O6a0DM6pU1svnC|e0M zPc)bD#s9~cLfdZNZ%@p7b-Me&SbNJ55fHyovGCz}29X+qkh`OQdmOE>4+gOL#rEu- zODyq5c;;|Ng#m4xUkx8VLy+ymY|ZrZyKi%EbBD}iA$;xX*@G)U<(4}XRUitc&u?%4>PrfsqVpb2 zP9T!QaJ*vbQ}HjO_QrC@1=&woAj_-|V}28+4Iku3{H4cceMTdM%n_8h##DLnWlovt zuj!+(=@e`6A@T;?A%qY)aE`QqsL05+i0}QWhGDIaoD%vp&t(6|How{rMD!UvM)QiI zx*nN1=DB3H#%mxzG*}`h7KKg9XS6H38@utmcN{^m70E5CH?|kw7vGak2kxN#phP!N zUvBUXb-QKpzJ7KG_XyZ$`b$hC_ZyGlzfm6d>YE&&q_~9M677+^5%@7NZcX6_P3XRJ z7~``;c@+X?|JpO%ujj%>=VxMm!02ak$VLc?lIgHT_?b{$GhT9`5yy>6zyFX6*!=mq zcXBJMY^`pye(mz{9C%R)s@UgMP6}rJPr^*8oVO}09RwX#Jp2MB3n`fO99_GQoBRI$ z@$_R1O@0vnQUMtMEvdJC3*!qEdC31PYltg^8w8L-KZ-w+ z0x9&rVKVRk>G+_3Iv(mDKn>sb&+vy62=R{GpX>`ew9R#+wA<;svEL|M`(zRcdSCx- zD)v^ucF#+zUCH$m2(;;Sp^F&>AqO`)t@G|6Uas2VPo4AcFu7LN(RH+Kb#}4cON5=1 z8d=Mizm_41TDyt%c(KB7kb0oJBMyI0tJpSzx&^N<%$JeoXUC(pG~*V~7yLEwFiS4a zve9ScKrm=D1TQYhy|G=&_JOp$3;myK!f?2`e@#B#n(37^ibk zu;ua*QayvS6=t4?fAdJeA)R&&Z+p!@xt(sA>3oep8JccE>wK+mm-`57`}LaFBQ(ezd?^y3RKo}(NFOSlK$w|nm|8uWix?Xx9*IzzZ z9{pjzbxx!E?ey#R*8qir9o3(zMhb(aeWgGz04E}+{LjYvllqf^+@P4im`@LUHUOK@ zdMraHL#N0H)!x_a-zMp(XOoL_vW^i86uB2yTM!yXk4I6`N!g3IJwSHFBx7W81 z=>J*vk*E4v2J|9u#XVy;vhPEZKNbC%u@H7Ae=OaX6m08Huoj7EWKPFfY%dI=$T8ZG z*}&>BDlu$@=7RHy{^YGUwP}}Yeua02b_tnxE1;{OOR)>AEv!|3A#~<&X`Y|{mzdNl zlvgTH<4otw@6tX0Sb$fKm+T9+A+=F{CwfeIN?GzNU#DCr*%xXqP2^GWk@^k0Bd$Z?glhI}@l8hXz}5+*Jg&_xyyHC;PZ&7`?l2rl1k9_qH!Qrt z?;%R^M41Zpi|^o%AxEFQ@88toK=(v%pGO+h^5;XiXvf76wEgKA4^)n54TXiimR{0zGb?NndL?g&nK zWsrro%6jVVh@D|v!shex4HSD7JrAW8(LtF^<}pJ;zOwJ?*Q*xZ{+>c7pJzqwJCH3e z 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 Date: Sun, 4 Dec 2011 22:19:16 +0100 Subject: [PATCH 05/16] improved parsing of some osm tags --- DataStructures/ExtractorCallBacks.h | 142 ++++++++++++++-------------- Rakefile | 12 +-- 2 files changed, 77 insertions(+), 77 deletions(-) diff --git a/DataStructures/ExtractorCallBacks.h b/DataStructures/ExtractorCallBacks.h index 0face8d56..3ca24974d 100644 --- a/DataStructures/ExtractorCallBacks.h +++ b/DataStructures/ExtractorCallBacks.h @@ -93,75 +93,78 @@ public: /** warning: caller needs to take care of synchronization! */ inline bool wayFunction(_Way &w) { - - //Get the properties of the way. - std::string highway( w.keyVals.Find("highway") ); - std::string name( w.keyVals.Find("name") ); - std::string ref( w.keyVals.Find("ref")); - std::string oneway( w.keyVals.Find("oneway")); - std::string junction( w.keyVals.Find("junction") ); - std::string route( w.keyVals.Find("route") ); - double maxspeed( atoi(w.keyVals.Find("maxspeed").c_str()) ); - std::string access( w.keyVals.Find("access") ); + std::string accessClass( w.keyVals.Find(settings.accessTag) ); - std::string man_made( w.keyVals.Find("man_made") ); - std::string barrier( w.keyVals.Find("barrier") ); - - //Save the name of the way if it has one, ref has precedence over name tag. - if ( 0 < ref.length() ) - w.name = ref; - else - if ( 0 < name.length() ) - w.name = name; - - if(junction == "roundabout") { - w.roundabout = true; - } - - //Is the highway tag listed as usable way? - if(0 < settings[highway]) { - - if(0 < maxspeed) - w.speed = maxspeed; - else - w.speed = settings[highway]; - w.useful = true; - - //Okay, do we have access to that way? - if(0 < access.size()) { //fastest way to check for non-empty string - //If access is forbidden, we don't want to route there. - if(access == "private" || access == "no" || access == "agricultural" || access == "forestry" || access == "delivery") { //Todo: this is still hard coded - w.access = false; - } - } - - if("yes" == accessClass || "designated" == accessClass) - w.access = true; - else if("no" == accessClass) - w.access = false; - - //Let's process oneway property, if speed profile obeys to it - if(oneway != "no" && oneway != "false" && oneway != "0" && settings.obeyOneways) { - //if oneway tag is in forward direction or if actually roundabout - if(junction == "roundabout" || oneway == "yes" || oneway == "true" || oneway == "1") { - w.direction = _Way::oneway; - } else { - if( oneway == "-1") - w.direction = _Way::opposite; - } - } - } else { - //Is the route tag listed as usable way in the profile? - if(settings[route] > 0 || settings[man_made] > 0) { - w.useful = true; - w.speed = settings[route]; - w.direction = _Way::bidirectional; - } - } - if ( w.useful && w.access && (1 < w.path.size()) ) { //Only true if the way is specified by the speed profile - //TODO: type is not set, perhaps use a bimap'ed speed profile to do set the type correctly? + std::string access( w.keyVals.Find("access") ); + std::string highway( w.keyVals.Find("highway") ); + + //class tag like bicycle=yes/no overrides everything else + if("yes" == accessClass || "permissive" == accessClass || "designated" == accessClass || "official" == accessClass) + w.access = true; + else if("no" == accessClass) + w.access = false; + else { + std::string route( w.keyVals.Find("route") ); + std::string man_made( w.keyVals.Find("man_made") ); + //speedprofile allows routing on this type of way/route/man_made? + if(settings[highway] > 0 || settings[route] > 0 || settings[man_made] > 0) { + if(0 < access.size()) { //fastest way to check for non-empty string + if( access == "yes" || access == "permissive" || access == "designated" || access == "public" ) + w.access = true; + else + w.access = false; + } + } + else + w.access = false; + } + + if ( w.access == true && (1 < w.path.size()) ) { + std::string name( w.keyVals.Find("name") ); + std::string ref( w.keyVals.Find("ref")); + std::string oneway( w.keyVals.Find("oneway")); + std::string onewayClass( w.keyVals.Find("oneway:"+accessClass)); + std::string junction( w.keyVals.Find("junction") ); + double maxspeed( atoi(w.keyVals.Find("maxspeed").c_str()) ); + std::string barrier( w.keyVals.Find("barrier") ); + + //name + if ( 0 < ref.length() ) + w.name = ref; + else if ( 0 < name.length() ) + w.name = name; + + //roundabout + if(junction == "roundabout") + w.roundabout = true; + + //speed + if(0 < maxspeed && (maxspeed < settings[highway]) ) + w.speed = maxspeed; + else + w.speed = settings[highway]; + + //TODO: type is not set, perhaps use a bimap'ed speed profile to do set the type correctly? w.type = 1; + //oneway + if( settings.obeyOneways ) { + //TODO: handle cycleway=opposite_* + if( oneway == "no" || oneway == "0" || oneway == "false" || + onewayClass == "no" || onewayClass == "0" || onewayClass == "false") + w.direction = _Way::bidirectional; + else if( oneway == "yes" || oneway == "1" || oneway == "true" || + onewayClass == "yes" || onewayClass == "1" || onewayClass == "true" || + junction == "roundabout" || highway == "motorway_link" || highway == "motorway" ) + w.direction = _Way::oneway; + else if( oneway == "-1") { + w.direction = _Way::opposite; + std::reverse( w.path.begin(), w.path.end() ); + } + else + w.direction = _Way::bidirectional; + } + //Get the unique identifier for the street name const StringMap::const_iterator strit = stringMap->find(w.name); if(strit == stringMap->end()) { @@ -172,7 +175,7 @@ public: w.nameID = strit->second; } - if(-1 == w.speed){ + if(-1 == w.speed) { WARN("found way with bogus speed, id: " << w.id); return true; } @@ -181,10 +184,6 @@ public: return true; } - if ( w.direction == _Way::opposite ){ - std::reverse( w.path.begin(), w.path.end() ); - } - for(vector< NodeID >::size_type n = 0; n < w.path.size()-1; ++n) { externalMemory->allEdges.push_back(_Edge(w.path[n], w.path[n+1], w.type, w.direction, w.speed, w.nameID, w.roundabout)); externalMemory->usedNodeIDs.push_back(w.path[n]); @@ -194,6 +193,7 @@ public: //The following information is needed to identify start and end segments of restrictions externalMemory->wayStartEndVector.push_back(_WayIDStartAndEndEdge(w.id, w.path[0], w.path[1], w.path[w.path.size()-2], w.path[w.path.size()-1])); } + return true; } }; diff --git a/Rakefile b/Rakefile index e28fec545..d7fd2d11d 100644 --- a/Rakefile +++ b/Rakefile @@ -6,20 +6,20 @@ task :default => [:compile, :process, :run] desc "Compile" task :compile do - system "scons" + raise "Error while building." unless system "scons" end file "#{sandbox}/amager.osm.pbf" => "amager.osm.pbf" do |t| - system "cp #{t.prerequisites.join} #{t.name}" + raise unless system "cp #{t.prerequisites.join} #{t.name}" end desc "Reprocess OSM test data" task :process => ["#{sandbox}/amager.osm.pbf", :setup] do prev = Dir.pwd cd sandbox #we must be in the sandbox folder to use the speedprofile.ini in that folder - system "./osrm-extract amager.osm.pbf" - system "./osrm-prepare amager.osrm amager.osrm.restrictions" + raise "Error while extracting data." unless system "./osrm-extract amager.osm.pbf" + raise "Error while preparing data." unless system "./osrm-prepare amager.osrm amager.osrm.restrictions" cd prev end @@ -27,11 +27,11 @@ desc "Setup server files" task :setup => ["#{sandbox}/speedprofile.ini", "#{sandbox}/extractor.ini", "#{sandbox}/server.ini"] file "#{sandbox}/speedprofile.ini" => "speedprofile.ini" do |t| - system "cp #{t.prerequisites.join} #{t.name}" + raise unless system "cp #{t.prerequisites.join} #{t.name}" end file "#{sandbox}/extractor.ini" => "extractor.ini" do |t| - system "cp #{t.prerequisites.join} #{t.name}" + raise unless system "cp #{t.prerequisites.join} #{t.name}" end file "#{sandbox}/server.ini" => "server.ini" do |t| From df82140a39f7afff67cc8f22ac2f2698e0b25288 Mon Sep 17 00:00:00 2001 From: DennisOSRM Date: Mon, 5 Dec 2011 14:45:45 +0100 Subject: [PATCH 06/16] fixes ticket 43 --- Contractor/EdgeBasedGraphFactory.cpp | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/Contractor/EdgeBasedGraphFactory.cpp b/Contractor/EdgeBasedGraphFactory.cpp index 517e1337a..47b5376a9 100644 --- a/Contractor/EdgeBasedGraphFactory.cpp +++ b/Contractor/EdgeBasedGraphFactory.cpp @@ -58,8 +58,8 @@ EdgeBasedGraphFactory::EdgeBasedGraphFactory(int nodes, std::vectorisBackward(); edge.data.edgeBasedNodeID = edges.size(); edges.push_back( edge ); - std::swap( edge.source, edge.target ); if( edge.data.backward ) { + std::swap( edge.source, edge.target ); edge.data.forward = i->isBackward(); edge.data.backward = i->isForward(); edge.data.edgeBasedNodeID = edges.size(); @@ -126,15 +126,25 @@ void EdgeBasedGraphFactory::Run() { ++secondRestrictionIterator; } while(u == secondRestrictionIterator->fromNode); } - + if(_nodeBasedGraph->EndEdges(v) == _nodeBasedGraph->BeginEdges(v) + 1 && _nodeBasedGraph->GetEdgeData(e1).type != 14 ) { + EdgeBasedNode currentNode; + currentNode.nameID = _nodeBasedGraph->GetEdgeData(e1).nameID; + currentNode.lat1 = inputNodeInfoList[u].lat; + currentNode.lon1 = inputNodeInfoList[u].lon; + currentNode.lat2 = inputNodeInfoList[v].lat; + currentNode.lon2 = inputNodeInfoList[v].lon; + currentNode.id = _nodeBasedGraph->GetEdgeData(e1).edgeBasedNodeID;; + currentNode.weight = _nodeBasedGraph->GetEdgeData(e1).distance; + edgeBasedNodes.push_back(currentNode); + } for(_NodeBasedDynamicGraph::EdgeIterator e2 = _nodeBasedGraph->BeginEdges(v); e2 < _nodeBasedGraph->EndEdges(v); ++e2) { _NodeBasedDynamicGraph::NodeIterator w = _nodeBasedGraph->GetTarget(e2); //if (u,v,w) is a forbidden turn, continue bool isTurnRestricted(false); if(isOnlyAllowed && w != onlyToNode) { -// INFO("skipped turn <" << u << "," << v << "," << w << ">, only allowing <" << u << "," << v << "," << onlyToNode << ">"); - continue; - } + // INFO("skipped turn <" << u << "," << v << "," << w << ">, only allowing <" << u << "," << v << "," << onlyToNode << ">"); + continue; + } if( u != w ) { //only add an edge if turn is not a U-turn if(restrictionIterator != inputRestrictions.end() && u == restrictionIterator->fromNode) { @@ -151,7 +161,7 @@ void EdgeBasedGraphFactory::Run() { if( !isTurnRestricted || (isOnlyAllowed && w == onlyToNode) ) { //only add an edge if turn is not prohibited if(isOnlyAllowed && w == onlyToNode) { -// INFO("Adding 'only_*'-turn <" << u << "," << v << "," << w << ">"); + // INFO("Adding 'only_*'-turn <" << u << "," << v << "," << w << ">"); } else if(isOnlyAllowed && w != onlyToNode) { assert(false); } @@ -175,9 +185,10 @@ void EdgeBasedGraphFactory::Run() { //create edge-based graph edge EdgeBasedEdge newEdge(edgeBasedSource, edgeBasedTarget, v, nameID, distance, true, false, turnInstruction); edgeBasedEdges.push_back(newEdge); - EdgeBasedNode currentNode; - if(_nodeBasedGraph->GetEdgeData(e1).type != 14) { + if(_nodeBasedGraph->GetEdgeData(e1).type != 14 ) { + EdgeBasedNode currentNode; + currentNode.nameID = _nodeBasedGraph->GetEdgeData(e1).nameID; currentNode.lat1 = inputNodeInfoList[u].lat; currentNode.lon1 = inputNodeInfoList[u].lon; From dbc5529bdece41de1aed65c5592bd27b8dceeda1 Mon Sep 17 00:00:00 2001 From: DennisOSRM Date: Mon, 5 Dec 2011 15:14:23 +0100 Subject: [PATCH 07/16] Moving check to member function --- DataStructures/ExtractorStructs.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/DataStructures/ExtractorStructs.h b/DataStructures/ExtractorStructs.h index 0cbd7d7f4..864b05761 100644 --- a/DataStructures/ExtractorStructs.h +++ b/DataStructures/ExtractorStructs.h @@ -64,6 +64,13 @@ struct _Coordinate { bool isSet() const { return (INT_MIN != lat) && (INT_MIN != lon); } + inline bool isValid() const { + if(lat > 90*100000 || lat < -90*100000 || lon > 180*100000 || lon <-180*100000) { + return false; + } + return true; + } + }; inline ostream & operator<<(ostream & out, const _Coordinate & c){ From 0ec72f40f0cb9b04d0423782dd48db6d81afc891 Mon Sep 17 00:00:00 2001 From: DennisOSRM Date: Mon, 5 Dec 2011 15:14:43 +0100 Subject: [PATCH 08/16] Compare edge by edgebasednodeids --- DataStructures/GridEdge.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/DataStructures/GridEdge.h b/DataStructures/GridEdge.h index e1865f6a7..aeb0539fa 100644 --- a/DataStructures/GridEdge.h +++ b/DataStructures/GridEdge.h @@ -29,6 +29,12 @@ struct _GridEdge { int weight; _Coordinate startCoord; _Coordinate targetCoord; + bool operator< ( const _GridEdge& right) const { + return edgeBasedNode < right.edgeBasedNode; + } + bool operator== ( const _GridEdge& right) const { + return edgeBasedNode == right.edgeBasedNode; + } }; struct GridEntry { From 98c9ebba93a01fd4d21a4abac5297c07b559f3e1 Mon Sep 17 00:00:00 2001 From: DennisOSRM Date: Mon, 5 Dec 2011 15:22:19 +0100 Subject: [PATCH 09/16] Solves another case of flickery routes. --- DataStructures/NNGrid.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/DataStructures/NNGrid.h b/DataStructures/NNGrid.h index fb79d3400..93cdfb4b2 100644 --- a/DataStructures/NNGrid.h +++ b/DataStructures/NNGrid.h @@ -315,7 +315,7 @@ public: std::swap(resultNode.weight1, resultNode.weight2); } } - if(tmpDist < dist) { + if(tmpDist < dist && !DoubleEpsilonCompare(dist, tmpDist)) { resultNode.Reset(); resultNode.edgeBasedNode = candidate.edgeBasedNode; resultNode.nodeBasedEdgeNameID = candidate.nameID; @@ -346,6 +346,7 @@ public: resultNode.weight2 *= (1-ratio); // INFO("New weight1: " << resultNode.weight1 << ", new weight2: " << resultNode.weight2); } +// INFO("bidirected: " << (resultNode.isBidirected() ? "yes" : "no") << "\n--") return foundNode; } From c758b1aeb7040d1470792839075b6f6461cde795 Mon Sep 17 00:00:00 2001 From: DennisOSRM Date: Mon, 5 Dec 2011 18:28:00 +0100 Subject: [PATCH 10/16] if =no then immediately return. Fixes ticket 41 --- DataStructures/ExtractorCallBacks.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/DataStructures/ExtractorCallBacks.h b/DataStructures/ExtractorCallBacks.h index 0face8d56..9d3c0eeb0 100644 --- a/DataStructures/ExtractorCallBacks.h +++ b/DataStructures/ExtractorCallBacks.h @@ -103,7 +103,7 @@ public: std::string route( w.keyVals.Find("route") ); double maxspeed( atoi(w.keyVals.Find("maxspeed").c_str()) ); std::string access( w.keyVals.Find("access") ); - std::string accessClass( w.keyVals.Find(settings.accessTag) ); + std::string accessTag( w.keyVals.Find(settings.accessTag) ); std::string man_made( w.keyVals.Find("man_made") ); std::string barrier( w.keyVals.Find("barrier") ); @@ -135,10 +135,11 @@ public: } } - if("yes" == accessClass || "designated" == accessClass) + if("yes" == accessTag || "designated" == accessTag) w.access = true; - else if("no" == accessClass) - w.access = false; + else if("no" == accessTag) { + return true; + } //Let's process oneway property, if speed profile obeys to it if(oneway != "no" && oneway != "false" && oneway != "0" && settings.obeyOneways) { From 39872e9867a85652a718671e8a474d0a89a3b716 Mon Sep 17 00:00:00 2001 From: Emil Tin Date: Tue, 6 Dec 2011 13:52:39 +0100 Subject: [PATCH 11/16] rake task for downloading osm data --- Rakefile | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/Rakefile b/Rakefile index d7fd2d11d..c1a3a1fe3 100644 --- a/Rakefile +++ b/Rakefile @@ -2,7 +2,7 @@ sandbox = "sandbox" #where to locate builds, server configs and test data osm_data = "amager" #name of OSM data file desc "Recompile, reprocess OSM data and run server" -task :default => [:compile, :process, :run] +task :default => [:compile, "data:process", :run] desc "Compile" task :compile do @@ -14,13 +14,26 @@ file "#{sandbox}/amager.osm.pbf" => "amager.osm.pbf" do |t| raise unless system "cp #{t.prerequisites.join} #{t.name}" end -desc "Reprocess OSM test data" -task :process => ["#{sandbox}/amager.osm.pbf", :setup] do - prev = Dir.pwd - cd sandbox #we must be in the sandbox folder to use the speedprofile.ini in that folder - raise "Error while extracting data." unless system "./osrm-extract amager.osm.pbf" - raise "Error while preparing data." unless system "./osrm-prepare amager.osrm amager.osrm.restrictions" - cd prev +namespace :data do + desc "Reprocess OSM test data" + task :process => ["#{sandbox}/amager.osm.pbf", :setup] do + prev = Dir.pwd + cd sandbox #we must be in the sandbox folder to use the speedprofile.ini in that folder + raise "Error while extracting data." unless system "./osrm-extract amager.osm.pbf" + raise "Error while preparing data." unless system "./osrm-prepare amager.osrm amager.osrm.restrictions" + cd prev + end + + desc "Download fresh OSM for the test data" + task :download => :setup do + start = Time.now + country = 'denmark' + bbox = 'top=55.6655 left=12.5589 bottom=55.6462 right=12.5963' + area = 'amager' + + raise "Error while downloading data." unless system "curl http://download.geofabrik.de/osm/europe/#{country}.osm.pbf -o #{sandbox}/#{country}.osm.pbf" + raise "Error while cropping data." unless system "osmosis --read-pbf file=#{sandbox}/#{country}.osm.pbf --bounding-box #{bbox} --write-pbf file=#{sandbox}/#{area}.osm.pbf omitmetadata=true" + end end desc "Setup server files" From c79a7f469fbe681132bd6e43cba789d181cf20ec Mon Sep 17 00:00:00 2001 From: Emil Tin Date: Tue, 6 Dec 2011 15:05:14 +0100 Subject: [PATCH 12/16] updated scons script --- SConstruct | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/SConstruct b/SConstruct index 21022ac5b..a6a6423b3 100644 --- a/SConstruct +++ b/SConstruct @@ -74,15 +74,20 @@ else: if sys.platform == 'darwin': #Mac OS X env.Append(CPPPATH = ['/usr/include/libxml2'] ) #comes with os x - #assume stxxl and boost are installed via homebrew. - #call out to brew to get the folder locations + #assume dependencies are installed with homebrew, and call out get folder locations import subprocess stxxl_prefix = subprocess.check_output(["brew", "--prefix", "libstxxl"]).strip() - boost_prefix = subprocess.check_output(["brew", "--prefix", "boost"]).strip() env.Append(CPPPATH = [stxxl_prefix+"/include"] ) env.Append(LIBPATH = [stxxl_prefix+"/lib"] ) + + boost_prefix = subprocess.check_output(["brew", "--prefix", "boost"]).strip() env.Append(CPPPATH = [boost_prefix+"/include"] ) env.Append(LIBPATH = [boost_prefix+"/lib"] ) + + #libxml2_prefix = subprocess.check_output(["brew", "--prefix", "libxml2"]).strip() + #env.Append(CPPPATH = [libxml2_prefix+"/include"] ) + #env.Append(LIBPATH = [libxml2_prefix+"/lib"] ) + elif sys.platform.startswith("freebsd"): env.ParseConfig('pkg-config --cflags --libs protobuf') env.Append(CPPPATH = ['/usr/local/include', '/usr/local/include/libxml2']) @@ -105,9 +110,11 @@ else: env.Append(CPPPATH = ['/usr/include', '/usr/include/include', '/usr/include/libxml2/']) -if not conf.CheckHeader('omp.h'): - print "Compiler does not support OpenMP. Exiting" - Exit(-1) +if sys.platform != 'darwin': + if not conf.CheckHeader('omp.h'): + print "Compiler does not support OpenMP. Exiting" + Exit(-1) + if not conf.CheckLibWithHeader('xml2', 'libxml/xmlreader.h', 'CXX'): print "libxml2 library or header not found. Exiting" Exit(-1) From a321c3d3b6d62bc24201a4dbf3cd5b7825c69415 Mon Sep 17 00:00:00 2001 From: Emil Tin Date: Tue, 6 Dec 2011 17:29:56 +0100 Subject: [PATCH 13/16] just a comment --- DataStructures/NNGrid.h | 1 - 1 file changed, 1 deletion(-) diff --git a/DataStructures/NNGrid.h b/DataStructures/NNGrid.h index 53edf8327..eaa92d1e0 100644 --- a/DataStructures/NNGrid.h +++ b/DataStructures/NNGrid.h @@ -353,7 +353,6 @@ public: // INFO("New weight1: " << resultNode.weight1 << ", new weight2: " << resultNode.weight2); } // INFO("bidirected: " << (resultNode.isBidirected() ? "yes" : "no") << "\n--") -// INFO("selected node: " << resultNode.edgeBasedNode << ", bidirected: " << (resultNode.isBidirected() ? "yes" : "no") << "\n--") return foundNode; } From bcd43ddcc77c82544da00dadeee51b48f5ba2fb3 Mon Sep 17 00:00:00 2001 From: Emil Tin Date: Tue, 6 Dec 2011 17:37:37 +0100 Subject: [PATCH 14/16] match upstream --- DataStructures/ExtractorCallBacks.h | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/DataStructures/ExtractorCallBacks.h b/DataStructures/ExtractorCallBacks.h index 2ec397f0a..d84a5ebfc 100644 --- a/DataStructures/ExtractorCallBacks.h +++ b/DataStructures/ExtractorCallBacks.h @@ -140,9 +140,7 @@ public: } } - if("yes" == accessTag || "designated" == accessTag) - w.access = true; - else if("no" == accessTag) { + if("no" == accessTag) { return true; } From 24982f57e5b505277f7414dbc13a128003539040 Mon Sep 17 00:00:00 2001 From: Emil Tin Date: Tue, 6 Dec 2011 17:51:31 +0100 Subject: [PATCH 15/16] moved osm test data into a folder --- Rakefile | 43 +++++++++++----------- amager.osm.pbf => testdata/amager.osm.pbf | Bin 2 files changed, 21 insertions(+), 22 deletions(-) rename amager.osm.pbf => testdata/amager.osm.pbf (100%) diff --git a/Rakefile b/Rakefile index 61c6bfbd1..f4fcbcf08 100644 --- a/Rakefile +++ b/Rakefile @@ -1,8 +1,9 @@ +testdata_folder = "testdata" #where to locate test data sandbox = "sandbox" #where to locate builds, server configs and test data -osm_data = "amager" #name of OSM data file +area_name = "amager" #name of OSM data file desc "Rebuild, reprocess OSM data and run server" -task :default => [:build, "data:process", :run] +task :default => [:build, :process, :run] desc "Build with Scons" task :build do @@ -10,30 +11,28 @@ task :build do end -file "#{sandbox}/amager.osm.pbf" => "amager.osm.pbf" do |t| +file "#{sandbox}/#{area_name}.osm.pbf" => "#{testdata_folder}/#{area_name}.osm.pbf" do |t| raise unless system "cp #{t.prerequisites.join} #{t.name}" end -namespace :data do - desc "Process OSM test data" - task :process => ["#{sandbox}/amager.osm.pbf", :setup] do - prev = Dir.pwd - cd sandbox #we must be in the sandbox folder to use the speedprofile.ini in that folder - raise "Error while extracting data." unless system "./osrm-extract amager.osm.pbf" - raise "Error while preparing data." unless system "./osrm-prepare amager.osrm amager.osrm.restrictions" - cd prev - end +desc "Process OSM test data" +task :process => ["#{sandbox}/#{area_name}.osm.pbf", :setup] do + prev = Dir.pwd + cd sandbox #we must be in the sandbox folder to use the speedprofile.ini in that folder + raise "Error while extracting data." unless system "./osrm-extract #{area_name}.osm.pbf" + raise "Error while preparing data." unless system "./osrm-prepare #{area_name}.osrm #{area_name}.osrm.restrictions" + cd prev +end - desc "Download fresh OSM for the test data" - task :download => :setup do - start = Time.now - country = 'denmark' - bbox = 'top=55.6655 left=12.5589 bottom=55.6462 right=12.5963' - area = 'amager' +desc "Download fresh OSM for the test data" +task :download => :setup do + start = Time.now + country = 'denmark' + bbox = 'top=55.6655 left=12.5589 bottom=55.6462 right=12.5963' + area = area_name - raise "Error while downloading data." unless system "curl http://download.geofabrik.de/osm/europe/#{country}.osm.pbf -o #{sandbox}/#{country}.osm.pbf" - raise "Error while cropping data." unless system "osmosis --read-pbf file=#{sandbox}/#{country}.osm.pbf --bounding-box #{bbox} --write-pbf file=#{sandbox}/#{area}.osm.pbf omitmetadata=true" - end + raise "Error while downloading data." unless system "curl http://download.geofabrik.de/osm/europe/#{country}.osm.pbf -o #{sandbox}/#{country}.osm.pbf" + raise "Error while cropping data." unless system "osmosis --read-pbf file=#{sandbox}/#{country}.osm.pbf --bounding-box #{bbox} --write-pbf file=#{sandbox}/#{area}.osm.pbf omitmetadata=true" end desc "Setup server files" @@ -50,7 +49,7 @@ end file "#{sandbox}/server.ini" => "server.ini" do |t| #first time the file is copied, we adjusts server settings to point to data files in our sandbox folder text = File.read(t.prerequisites.join) - text.gsub!('/opt/osm/germany', "#{Dir.pwd}/sandbox/#{osm_data}") + text.gsub!('/opt/osm/germany', "#{Dir.pwd}/sandbox/#{area_name}") file = File.new( t.name, "w+") file.puts text file.close diff --git a/amager.osm.pbf b/testdata/amager.osm.pbf similarity index 100% rename from amager.osm.pbf rename to testdata/amager.osm.pbf From 2f5ebdf7effd9e0024e5fb5bc67ca92c27a2ed04 Mon Sep 17 00:00:00 2001 From: Emil Tin Date: Tue, 6 Dec 2011 17:54:20 +0100 Subject: [PATCH 16/16] fix deleted comment --- DataStructures/NNGrid.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DataStructures/NNGrid.h b/DataStructures/NNGrid.h index eaa92d1e0..c40f138c3 100644 --- a/DataStructures/NNGrid.h +++ b/DataStructures/NNGrid.h @@ -352,7 +352,7 @@ public: resultNode.weight2 *= (1-ratio); // INFO("New weight1: " << resultNode.weight1 << ", new weight2: " << resultNode.weight2); } -// INFO("bidirected: " << (resultNode.isBidirected() ? "yes" : "no") << "\n--") + INFO("selected node: " << resultNode.edgeBasedNode << ", bidirected: " << (resultNode.isBidirected() ? "yes" : "no") << "\n--") return foundNode; }