From fba1bf7afcfb454fe51ca6ecdfd6e88f1ce98bdb Mon Sep 17 00:00:00 2001 From: YuSanka Date: Mon, 11 Jun 2018 16:23:10 +0200 Subject: [PATCH 1/7] Fixed bug from issue #969 --- xs/src/slic3r/GUI/Field.cpp | 20 +++++++++++++++++++- xs/src/slic3r/GUI/Field.hpp | 3 +++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/xs/src/slic3r/GUI/Field.cpp b/xs/src/slic3r/GUI/Field.cpp index 64f3426c4..25925e3b6 100644 --- a/xs/src/slic3r/GUI/Field.cpp +++ b/xs/src/slic3r/GUI/Field.cpp @@ -199,7 +199,25 @@ namespace Slic3r { namespace GUI { }), temp->GetId()); #endif // __WXGTK__ - temp->Bind(wxEVT_TEXT, ([this](wxCommandEvent) { on_change_field(); }), temp->GetId()); + temp->Bind(wxEVT_TEXT, ([this](wxCommandEvent) + { +#ifdef __WXGTK__ + bool bChangedValueEvent = true; +#else + on_change_field(); +#endif //__WXGTK__ + }), temp->GetId()); + +#ifdef __WXGTK__ + temp->Bind(wxEVT_KEY_UP, [this](wxKeyEvent& event) + { + if (bChangedValueEvent) { + on_change_field(); + bChangedValueEvent = false; + } + event.Skip(); + }); +#endif //__WXGTK__ // select all text using Ctrl+A temp->Bind(wxEVT_CHAR, ([temp](wxKeyEvent& event) diff --git a/xs/src/slic3r/GUI/Field.hpp b/xs/src/slic3r/GUI/Field.hpp index 7e421244b..948178d3e 100644 --- a/xs/src/slic3r/GUI/Field.hpp +++ b/xs/src/slic3r/GUI/Field.hpp @@ -220,6 +220,9 @@ inline bool is_sizer_field(const t_field& obj) { return !is_bad_field(obj) && ob class TextCtrl : public Field { using Field::Field; +#ifdef __WXGTK__ + bool bChangedValueEvent = false; +#endif //__WXGTK__ public: TextCtrl(const ConfigOptionDef& opt, const t_config_option_key& id) : Field(opt, id) {} TextCtrl(wxWindow* parent, const ConfigOptionDef& opt, const t_config_option_key& id) : Field(parent, opt, id) {} From 49cd06407a183844ce5290f730d300aad8f638a9 Mon Sep 17 00:00:00 2001 From: bubnikv Date: Mon, 11 Jun 2018 16:56:35 +0200 Subject: [PATCH 2/7] There is a bug related to Ubuntu overlay scrollbars, see https://github.com/prusa3d/Slic3r/issues/898 and https://github.com/prusa3d/Slic3r/issues/952. The issue apparently manifests when Show()ing a window with overlay scrollbars while the UI is frozen. For this reason, we will Thaw the UI prematurely on Linux. This means destroing the no_updates object prematurely. --- xs/src/slic3r/GUI/Tab.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/xs/src/slic3r/GUI/Tab.cpp b/xs/src/slic3r/GUI/Tab.cpp index f24b5ebc6..6eabc2f47 100644 --- a/xs/src/slic3r/GUI/Tab.cpp +++ b/xs/src/slic3r/GUI/Tab.cpp @@ -2056,7 +2056,15 @@ bool Tab::may_discard_current_dirty_preset(PresetCollection* presets /*= nullptr void Tab::OnTreeSelChange(wxTreeEvent& event) { if (m_disable_tree_sel_changed_event) return; + +// There is a bug related to Ubuntu overlay scrollbars, see https://github.com/prusa3d/Slic3r/issues/898 and https://github.com/prusa3d/Slic3r/issues/952. +// The issue apparently manifests when Show()ing a window with overlay scrollbars while the UI is frozen. For this reason, +// we will Thaw the UI prematurely on Linux. This means destroing the no_updates object prematurely. +#ifdef __linux__ + std::unique_ptr no_updates(new wxWindowUpdateLocker(this)); +#else wxWindowUpdateLocker noUpdates(this); +#endif Page* page = nullptr; auto selection = m_treectrl->GetItemText(m_treectrl->GetSelection()); @@ -2072,6 +2080,11 @@ void Tab::OnTreeSelChange(wxTreeEvent& event) for (auto& el : m_pages) el.get()->Hide(); + +#ifdef __linux__ + no_updates.reset(nullptr); +#endif + page->Show(); m_hsizer->Layout(); Refresh(); From a54e587751ade9b831c9de0ec198793d7bad9535 Mon Sep 17 00:00:00 2001 From: Vojtech Kral Date: Mon, 11 Jun 2018 17:34:06 +0200 Subject: [PATCH 3/7] Fix: PresetUpdater: Set bundle & index file permissions #962 (#970) --- xs/src/slic3r/Utils/PresetUpdater.cpp | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/xs/src/slic3r/Utils/PresetUpdater.cpp b/xs/src/slic3r/Utils/PresetUpdater.cpp index dd46c43fe..80651aece 100644 --- a/xs/src/slic3r/Utils/PresetUpdater.cpp +++ b/xs/src/slic3r/Utils/PresetUpdater.cpp @@ -116,6 +116,8 @@ struct PresetUpdater::priv void check_install_indices() const; Updates get_config_updates() const; void perform_updates(Updates &&updates, bool snapshot = true) const; + + static void copy_file(const fs::path &from, const fs::path &to); }; PresetUpdater::priv::priv(int version_online_event) : @@ -285,7 +287,7 @@ void PresetUpdater::priv::check_install_indices() const if (! fs::exists(path_in_cache)) { BOOST_LOG_TRIVIAL(info) << "Install index from resources: " << path.filename(); - fs::copy_file(path, path_in_cache, fs::copy_option::overwrite_if_exists); + copy_file(path, path_in_cache); } else { Index idx_rsrc, idx_cache; idx_rsrc.load(path); @@ -293,7 +295,7 @@ void PresetUpdater::priv::check_install_indices() const if (idx_cache.version() < idx_rsrc.version()) { BOOST_LOG_TRIVIAL(info) << "Update index from resources: " << path.filename(); - fs::copy_file(path, path_in_cache, fs::copy_option::overwrite_if_exists); + copy_file(path, path_in_cache); } } } @@ -397,7 +399,7 @@ void PresetUpdater::priv::perform_updates(Updates &&updates, bool snapshot) cons for (const auto &update : updates.updates) { BOOST_LOG_TRIVIAL(info) << '\t' << update; - fs::copy_file(update.source, update.target, fs::copy_option::overwrite_if_exists); + copy_file(update.source, update.target); PresetBundle bundle; bundle.load_configbundle(update.target.string(), PresetBundle::LOAD_CFGBNDLE_SYSTEM); @@ -433,6 +435,16 @@ void PresetUpdater::priv::perform_updates(Updates &&updates, bool snapshot) cons } } +void PresetUpdater::priv::copy_file(const fs::path &source, const fs::path &target) +{ + static const auto perms = fs::owner_read | fs::owner_write | fs::group_read | fs::others_read; // aka 644 + + // Make sure the file has correct permission both before and after we copy over it + fs::permissions(target, perms); + fs::copy_file(source, target, fs::copy_option::overwrite_if_exists); + fs::permissions(target, perms); +} + PresetUpdater::PresetUpdater(int version_online_event) : p(new priv(version_online_event)) From 69705b5e66d929ae38ca97c1475b105bc2aeb386 Mon Sep 17 00:00:00 2001 From: bubnikv Date: Mon, 11 Jun 2018 18:20:29 +0200 Subject: [PATCH 4/7] Split the MK2.5 profile from the MK2S --- resources/profiles/PrusaResearch.idx | 1 + resources/profiles/PrusaResearch.ini | 63 +++++++++++++++++++++++++++- 2 files changed, 62 insertions(+), 2 deletions(-) diff --git a/resources/profiles/PrusaResearch.idx b/resources/profiles/PrusaResearch.idx index 5c68e3c7c..767c372e8 100644 --- a/resources/profiles/PrusaResearch.idx +++ b/resources/profiles/PrusaResearch.idx @@ -1,3 +1,4 @@ +0.1.6 Split the MK2.5 profile from the MK2S 0.1.5 fixed printer_variant fields for the i3 MK3 0.25 and 0.6mm nozzles 0.1.4 edited fw version, added z-raise after print 0.1.3 Fixed an incorrect position of the max_print_height parameter diff --git a/resources/profiles/PrusaResearch.ini b/resources/profiles/PrusaResearch.ini index 5f1d654a3..fdeefb8c9 100644 --- a/resources/profiles/PrusaResearch.ini +++ b/resources/profiles/PrusaResearch.ini @@ -5,7 +5,7 @@ name = Prusa Research # Configuration version of this file. Config file will only be installed, if the config_version differs. # This means, the server may force the Slic3r configuration to be downgraded. -config_version = 0.1.5 +config_version = 0.1.6 # Where to get the updates from? config_update_url = https://raw.githubusercontent.com/prusa3d/Slic3r-settings/master/live/PrusaResearch/ @@ -19,7 +19,11 @@ name = Original Prusa i3 MK3 variants = 0.4; 0.25; 0.6 [printer_model:MK2S] -name = Original Prusa i3 MK2S, MK2.5 +name = Original Prusa i3 MK2S +variants = 0.4; 0.25; 0.6 + +[printer_model:MK2.5] +name = Original Prusa i3 MK2.5 variants = 0.4; 0.25; 0.6 [printer_model:MK2SMM] @@ -166,6 +170,10 @@ support_material_threshold = 80 support_material_with_sheath = 1 wipe_tower = 1 +# XXXXXXXXXXXXXXXXXXXX +# XXX--- 0.05mm ---XXX +# XXXXXXXXXXXXXXXXXXXX + [print:*0.05mm*] inherits = *common* bottom_solid_layers = 10 @@ -226,6 +234,10 @@ compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and fill_pattern = grid top_infill_extrusion_width = 0.4 +# XXXXXXXXXXXXXXXXXXXX +# XXX--- 0.10mm ---XXX +# XXXXXXXXXXXXXXXXXXXX + [print:*0.10mm*] inherits = *common* bottom_solid_layers = 7 @@ -299,6 +311,10 @@ solid_infill_speed = 200 top_infill_extrusion_width = 0.4 top_solid_infill_speed = 50 +# XXXXXXXXXXXXXXXXXXXX +# XXX--- 0.15mm ---XXX +# XXXXXXXXXXXXXXXXXXXX + [print:*0.15mm*] inherits = *common* bottom_solid_layers = 5 @@ -420,6 +436,10 @@ perimeter_speed = 45 solid_infill_speed = 200 top_solid_infill_speed = 50 +# XXXXXXXXXXXXXXXXXXXX +# XXX--- 0.20mm ---XXX +# XXXXXXXXXXXXXXXXXXXX + [print:0.20mm 100mms Linear Advance] inherits = *0.20mm* compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK2.*/ and nozzle_diameter[0]==0.4 @@ -483,6 +503,10 @@ perimeter_speed = 45 solid_infill_speed = 200 top_solid_infill_speed = 50 +# XXXXXXXXXXXXXXXXXXXX +# XXX--- 0.35mm ---XXX +# XXXXXXXXXXXXXXXXXXXX + [print:*0.35mm*] inherits = *common* bottom_solid_layers = 3 @@ -532,6 +556,10 @@ support_material_interface_layers = 2 support_material_with_sheath = 0 support_material_xy_spacing = 150% +# XXXXXXxxXXXXXXXXXXXXXX +# XXX--- filament ---XXX +# XXXXXXXXxxXXXXXXXXXXXX + [filament:*common*] cooling = 1 compatible_printers = @@ -958,6 +986,10 @@ variable_layer_height = 0 default_print_profile = 0.15mm OPTIMAL default_filament_profile = Prusa PLA +# XXXXXXXXXXXXXXXXX +# XXX--- MK2 ---XXX +# XXXXXXXXXXXXXXXXX + [printer:Original Prusa i3 MK2] inherits = *common* @@ -980,6 +1012,10 @@ nozzle_diameter = 0.6 printer_variant = 0.6 default_print_profile = 0.20mm NORMAL 0.6 nozzle +# XXXXXXXXXXXXXXXXXXX +# XXX--- MK2MM ---XXX +# XXXXXXXXXXXXXXXXXXX + [printer:Original Prusa i3 MK2 MM Single Mode] inherits = *mm-single* @@ -999,6 +1035,29 @@ nozzle_diameter = 0.6,0.6,0.6,0.6 printer_variant = 0.6 default_print_profile = 0.20mm NORMAL 0.6 nozzle +# XXXXXXXXXXXXXXXXXXX +# XXX--- MK2.5 ---XXX +# XXXXXXXXXXXXXXXXXXX + +[printer:Original Prusa i3 MK2.5] +inherits = Original Prusa i3 MK2 +printer_model = MK2.5 +start_gcode = M115 U3.2.1 ; tell printer latest fw version\nM201 X9000 Y9000 Z500 E10000 ; sets maximum accelerations, mm/sec^2\nM203 X500 Y500 Z12 E120 ; sets maximum feedrates, mm/sec\nM204 S1500 T1500 ; sets acceleration (S) and retract acceleration (T)\nM205 X10 Y10 Z0.2 E2.5 ; sets the jerk limits, mm/sec\nM205 S0 T0 ; sets the minimum extruding and travel feed rate, mm/sec\nM83 ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0 F1000.0 ; intro line\nG1 X100.0 E12.5 F1000.0 ; intro line\nG92 E0.0 + +[printer:Original Prusa i3 MK2.5 0.25 nozzle] +inherits = Original Prusa i3 MK2 0.25 nozzle +printer_model = MK2.5 +start_gcode = M115 U3.2.1 ; tell printer latest fw version\nM201 X9000 Y9000 Z500 E10000 ; sets maximum accelerations, mm/sec^2\nM203 X500 Y500 Z12 E120 ; sets maximum feedrates, mm/sec\nM204 S1500 T1500 ; sets acceleration (S) and retract acceleration (T)\nM205 X10 Y10 Z0.2 E2.5 ; sets the jerk limits, mm/sec\nM205 S0 T0 ; sets the minimum extruding and travel feed rate, mm/sec\nM83 ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0 F1000.0 ; intro line\nG1 X100.0 E12.5 F1000.0 ; intro line\nG92 E0.0 + +[printer:Original Prusa i3 MK2.5 0.6 nozzle] +inherits = Original Prusa i3 MK2 0.6 nozzle +printer_model = MK2.5 +start_gcode = M115 U3.2.1 ; tell printer latest fw version\nM201 X9000 Y9000 Z500 E10000 ; sets maximum accelerations, mm/sec^2\nM203 X500 Y500 Z12 E120 ; sets maximum feedrates, mm/sec\nM204 S1500 T1500 ; sets acceleration (S) and retract acceleration (T)\nM205 X10 Y10 Z0.2 E2.5 ; sets the jerk limits, mm/sec\nM205 S0 T0 ; sets the minimum extruding and travel feed rate, mm/sec\nM83 ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0 F1000.0 ; intro line\nG1 X100.0 E12.5 F1000.0 ; intro line\nG92 E0.0 + +# XXXXXXXXXXXXXXXXX +# XXX--- MK3 ---XXX +# XXXXXXXXXXXXXXXXX + [printer:Original Prusa i3 MK3] inherits = *common* end_gcode = G4 ; wait\nM221 S100\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\n{if layer_z < max_print_height}G1 Z{z_offset+min(layer_z+30, max_print_height)}{endif} ; Move print head up\nG1 X0 Y200; home X axis\nM84 ; disable motors From 43e8fe32aac28c8c8d3355aa4106d7a0e1c30292 Mon Sep 17 00:00:00 2001 From: Vojtech Kral Date: Mon, 11 Jun 2018 18:23:54 +0200 Subject: [PATCH 5/7] Add MK2.5 icon, remove testing icons --- resources/icons/printers/BarBaz_M1.png | Bin 10369 -> 0 bytes resources/icons/printers/BarBaz_M2.png | Bin 10369 -> 0 bytes resources/icons/printers/BarBaz_M3.png | Bin 10369 -> 0 bytes resources/icons/printers/Foobar_M1.png | Bin 9323 -> 0 bytes resources/icons/printers/Foobar_M2.png | Bin 9323 -> 0 bytes resources/icons/printers/Foobar_M3.png | Bin 9323 -> 0 bytes .../icons/printers/PrusaResearch_MK2.5.png | Bin 0 -> 59913 bytes 7 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 resources/icons/printers/BarBaz_M1.png delete mode 100644 resources/icons/printers/BarBaz_M2.png delete mode 100644 resources/icons/printers/BarBaz_M3.png delete mode 100644 resources/icons/printers/Foobar_M1.png delete mode 100644 resources/icons/printers/Foobar_M2.png delete mode 100644 resources/icons/printers/Foobar_M3.png create mode 100644 resources/icons/printers/PrusaResearch_MK2.5.png diff --git a/resources/icons/printers/BarBaz_M1.png b/resources/icons/printers/BarBaz_M1.png deleted file mode 100644 index 5924cc88b9ac373d5dc802ac06b82d1ad9d5015c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10369 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 CbaD>> diff --git a/resources/icons/printers/Foobar_M2.png b/resources/icons/printers/Foobar_M2.png deleted file mode 100644 index 61a76a63d1d3b39f402aea981f7adc11e346b389..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9323 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 CbaD>> diff --git a/resources/icons/printers/Foobar_M3.png b/resources/icons/printers/Foobar_M3.png deleted file mode 100644 index 61a76a63d1d3b39f402aea981f7adc11e346b389..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9323 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 CbaD>> diff --git a/resources/icons/printers/PrusaResearch_MK2.5.png b/resources/icons/printers/PrusaResearch_MK2.5.png new file mode 100644 index 0000000000000000000000000000000000000000..efbbc598da2b11edd854a970fddf7d3c99a9c74a GIT binary patch literal 59913 zcmV*uKtaEWP)8`7W(DwsSwd;S!7oOau@4l3B^X1pu=*#EGjrF&0v|mos)1f%XT4<-kKC7munJ(fylvDUyiA`N= zAob^&K35Cc-TGSd@=|Ja;usOOiN@Rsc92W#KWPMEW+G-{%RqRFoT=q%-H#5tm2on? z@t56R@M)&+>bjVk=EK9ozas|gcyJ@s>iGrCnKwV>Mi)PipsR8(>&AE zXA$PddZz1r2!~=Yn^lu0oJo`)%#$cgJVE9eaJ~LE^l%u^RUO>d-$qxrkA*aEWR)Mw zNCx*ZtA85RZ)EbXr~`aZ7RS?NRe4I2Mi&r+r^PO>^JZzNthU znQ|`=5Jm-9JYefIc_9?F@|9WT;47{xXfeGJb((EwI%+?9r4)5u-sbtfC*F1Mx8`}; zA3mj7oIg~5Y~kxXPLoGp)N-Z+2f2Z$fypfp?{kc`< zFFfun1GL~2GtXsn-wr&&{D6=pTDrOh44Q6anTq|d$3rN~nSS@~1~bHwjgXC7z(!lhrG1>=tUhR%7!ER*)`S{xB#gMPjUje*M+tXq7cX>e3`}LXElGT_9us1b zbG(=D^AgGpWwFlXE6=+w^CaEFLUnVs&{l!xVApXBG6Cn~Xqx2ZK|lwm2eFlAk!^KN z(RI2~pFgE>y_@M2bNgHjacq^GxCC|bhK6u7mT9!gYFQQ~a7CR(fa)Mn07!c$#GP;> z4#i$p*Rs4$PjcV5-z@y@g%*f)iu?j(*S;blx5Xyfry1W`EoC+U6G!~HLP}R)|wh^ z;5w2`_?_$knW`!oFVgxf3%1!K8o`~P0%co^gsIYxYrkJ!Qw+L=m7ex5v~?FvkyppE z!Gmv*EZRH0?3oJf1UY=70NmP^;xNXu*&S=B{-%&J{wVfG#YY!8+{JAHhGfhOS=L~o z12O0(&fF)Uew#%qst)Kl=9tm7I6bk0v2B@zIz2#wGeDlUGy3AaPq({z(_AOb$=U{* zM`Aw^o1X={QP~9>vfkx!LzY$nnyNQq_0ULWQr%Z)6+Twb7&kJDWvQC^X>6@)J^Irw zt>r@O)v-BZeJEiq_J7X7km?^;8QnW`e3e=BZ~(`kA`U+H$rFXjQtMi;c_q@!%d@&v zx5>yz5QwTCVH*LeUE2<_ohXY8h&|52n@Lvi3)z=;SA zW^-g%5rh)Tgd5U{V@5G%7UGvexj1QkZz#&de~WalR9z8coGyL<=YGt7uh!}NM%DjC zoy_sbGoPM@-RRsVbE(qRys`cxCMx~-^dUwAQe7F+(rv)?vv*lmw7-0{mCi`yYZr>mmCW$u}vh<4RyfrWG(F``L&4*@0ZlCwnrL74e?r8j4Ck`IFDYcakC(zk9PQB>HUp9wQ|NR+!7`}mn z5qPGT`r9}E1nDnCS{A-f)c^n>07*naRCt{1y?MN4SykuxU3>2{-0{sX=E%q-lX-3d z2arre0f+P>irs$NvbC|r84!VXqN0>4#i7BWEI>>6P=&OqD2gJ25UC=9l8_`hlVoPh z!<*k7&a{XAW8W8Q; zakgY(rhoj}=YGRCzx>s&zV$+1|5Ah6=^MD*@k>Ad(=WUAQ@6eQ=+Tq=s@h5jfdHTc zr8H$(%cv+1t*otm;1^&0>gQa@Yac#*I6t+%^xl0h}y#A#Kv(qNr8m6rKc);vly)P8u%z?$$!6x76SFUS>&8R9{vDtBm)8_^ z_?m8Snt;c9Pt#b&#gKDnPtoc2X}3G{XJ%O&3=ZD-;Sc^^2;q7W2^W4fE)6{5a(sz+ z{m;GXikok}TFTud;YwP)gSfCsKY7p0>yCW--@5*{J^$GUtx9hljLKfGKTWUK<<8shpg%ps z-hF$y>&`ovnVn~G*DlVUIYscEYCH(feeUzV>sNo{H~#cutkF*35exk#AcP>_`;zP5 z+>Gnlsktu7JCw6bNzF6cOFUgKQI(oI*5~ag*8@ zYQJ~??UJ>Q%zyi9hi8BKr`zVtKYr)ZPkib9<3E+QBXHE?RJN9T*_x|`ONE&969nA*Ijp= z-LVDSMm%DnzXbf~5B|Fs-*eYz|72IUCt0eQPXpJ@tnhfh!tF;rH@m&~g;}03<+)O7 zT3Ny{?QoCnkkRnf>HT4hs~|GKl}C*CBL}jC7E8}bDzDF?o^+vuX!}L-+C)~-eJ$aJ$&|_yIEM=MXS|f zY3VEn4_-+*9&+;7(eR9CJo9^g|7~ykqn%#I?Z6`z`XS;iZ+T1d*MIu1*C%x)(`#eC z=?ceFJL~-OXG(r+E$5p3GdyphU~h6CYBNQ*dME-5qtiTUJf=N0z@Hily=j!qz@(!5 zSi54jpL9yX%IR)sFC6rtMbhR8DjPl_h@ghYaYs+HyqWMPn+dix%lym~D8+bOpp*gx z>nuJveDEYj6N1B9N2}AO)yg<={HWZ2^ytfh8-RzMFZ~FiA0lr3=!d_%SY3VW3;P3J ze8_U=Jp+F0bjDbOZ@DsOYIKIZBMrKPQX^!vLOZcERYH5$0DoFRo}n!G;b~N^aLpWg z>NuPkA-!4r@-mWlp{mfFMfr8?*>#rJ3@g*Ke5$CJ-9JZ?8njUqMF9as6xKF)7YNRi zBq`QgocE+@LRmDlx;?z`tndH+?|;hM-~RTScX~Z9G#&}tJp_ahM6DeCsaHK}U0yW3 z#vgvP;)c^1>vqI<97yS}FLN**5sHdryo7A5(q)BaxuDZu!W|zG>==o;)Y07(J^D(YDJO_V67koOK>&H7l0$I4v=hw+SmXDRjuMi z4i&~IU*gx!pzQ|3vlT%r>a|t=-t|E%PM$c1QVNr#IBzMd5(qeFvCa`f0ED`3NYj)M zU^E&LLZE3JgTe5-4j(@Ju=@@D2%*17ocqmZKYRN4r~mX_A1&qGD;XOh&@?4;R6L_& zSx8D;;c2H1X*}9CXzQT#q#cJ{1wtU{c>D$^WATkgCpC5xRNi2hJxRMEgbK#%C@g-X zW^>)sN-FLdw>YX2ybp|rL+Yv_&vHO0%Mua6dxv)p=fQ_SZ7o^W!dlCCJSNLqwAvj; z&@BT8`2MGK9?`RIzY+ik|<5p~nho0?`}egP#)R?eNfey7*= zLgNua{~K8T^{@SjwCNst^`|<2ach(2It0A);4E2F^W>gKBiKeT0$PDs@O6xdCT(!z z7*0s~;D?~{01BiA??5HsN1(HS5D@2(B;eLP;}IC+QJLWm3+>(vy=8|s8%804R#6itUM4O zO9a0OY7YD|s2K?3_&Rk!4EQ1-5~wOjI>K<%leFOOCTD79mQJsSQks>OWwJ?@vM36Y zG-Yabfqe%K^5myHg;uMB_nth@8IQ+=5NLNg=tPm_8D-r({*^!c%6&Vy%oiMw5c&%s z966j{cVg{rS$f57y`O&fn*luG>l0rSyhl*f)^klKAVH`?w9JVCSAk9@mba&{0}!n+ zUBQh(^#Ko9q6t^vD^MK}185KpZUA)!X%_GSmTJSQ$(Wv*rqk_^rWu3HO#qZu6vdc! zx5w0Uk32~T)?urX-Me<7wW2C3+U+)JVyMcJvMA_uyXLO@@A~?kTIcP+BZU4utQ~pd z^tqcq{+`?%de77=|J#3?ysVlKzBaWLK?DaFXE~G$gOMg{8|tyA)zg>^ngOKK5C)*9 z6|Mo*5yDu3RmiL&tbt5HC?Ft+CR%APV89k2Mi>pDKdrcHoS@rn5HQBjo9bhoWw5bH zmS!YL&J_o*U_2aw_q5tA7I*EUEDFl;n5wMl_opCuR+g9ICQ=Eb&A|m#0PZv%A@qZA z=byi(SKs`BKbq=Y`KI1a{{DFZ&$qqc1&`Cg%_nsYKxrL&vp_$A<)NpaYcv8*kj~bdkhx`osx9 zF*QAdQkpYoP7?ym%`MP07Ev*}(KHo4c(gGrFE62urav`B)6}f2tfF*6)6`g3f6Y#< z_jceBLQin~hF7*`KKIGD_uB`4CI7+SegA{slZ59`*MhZJ=dspuMP^A%LQooUo~&!I zBZo?a5J0!UTL?kWT}7w_>1aY*5!M5eLGbZ?)lr}|K`GFJ-wZe(t#%MFS;jps!Mnim zqet=1)9v*zCZQM?q-ll{sHzer3hx~&D=S#rKnN@>E~2!e({8b`zRq|wW?^v`AQWZ! zxZnD%-|FwsvR`mKLTDh|a5znm-}L5|%>F;Em%a7K=f5wW=cuLxJk~mt_3SlJSB73Y z!Hyd8PKHiAzE((I5lTT#8~oU#yBar)kqzAgh5|iB7(q~i$^{=Zh=Np*S|Cx3H$Cm1 zX0sBOREka##^VvID@$}bZCb4sMx*(5Nm0^L+dv=FS2&ZgK^OSWJL!+`3i;5}%C_yFR;dV&|EuaO$WXz&oMf|{5d zaiDXd7(u(OI9)4>Bx7!I4?0OXdjI{12%T=1PPfC-+0(SzEym+9N*SED;00%6$gV0& zlu{f&ew_7|KCobF`kBE7N2-M+Gt>i1GNrJaj@B+s*l0its;dcwMcNuM0fq{+ z2Sao*l;CTRWCjTMfx{CcB`$zb!U>p%tSx+c$aHU~pyX6M;h-=wJ>yZ7z|5%N|WB|=@5PrSG*zkT?MCiLn%zxNmY z%H~bG4}bK-|JpIe_^X4h6Pk+Jd0en8CZ1NBlM=u=Ogkf#6~Ted6o><*@I!~RG*mzu zkj%%|a=?RlfmC9=PKZP=Vojo}JxahN!U>mR@)XgE#oc=dA+U7rEY>*$g?AofQmV4T zXnkIsR8;D-&Wt?&bnYAbLO z|FjbrID!{cPlE%j2cw_?GEFh?B&ncN!-*y#Npk{$x%oNT-5#qet7v7ITUcc8u03?S z9jvoxt*Pr8nFy1NF|pQBJoU;F{eBxI3JHO_j;_f3!mg`B2oH;5kFQ8VFCTg1^Zl_~ zubUk|=Rf>g$2wa-mZ~H;j}OohMO!>ZB>qu=wPaHXZs;+6fl+{#24co9R2I65FmMQy z_v*MI6eR@fqs3Ms{;h?ofUIM1E^yijNtPl4X_~TU?;gskB+qje7v@k}vA(*7)(RIq zO;aNR);8FtAx(2y8%vmClhNh?6`-!hoH}uw-qaLpD`ywq`ObItwtwZfA762V9(?kB z3-Z|;U#Hc~OCMaX_piYRcMbKJ+Id0<^mIc)K*XVeEC*M3lIaw;(V(U^Vdy~xB-3CW z7y%Pt1YRj54G>H$uP7UW1<_Hs6atXMWQ)lXstVSeCrJ|s0a4KIcG$CjA9Y=!lwxu3 zUd}C@BTZB4s-~`M5W#!TXf&eN>$A@UTEVihv4L|HCr=!wX*^k)v9`XhZ@THG1KYm% z7Xe>UgbpD{dHetS+hJw+s_7s7!?iEwGtT=*V;w%k5~sd)BpwnIAP8wLgxVuXfK-7F zPzHhn)fPen(n=6(p#(`)Oriitz||Atr;0GJcmW9klL88cjbf}@6r&NYsd3g)RVCeC zm&P`nK79)7EURm)Q6f4TQ5G>G15gwNRXO06kz?^GU(f8qUQV7m#rnp8gI8SzN^suG zxl`v3Zqu?~R6Ohi-v2Y4{j*p6V0QMz$7X)!!~gQdenx`2N*ap`QFzhSpaNt@QFxCw zipD!^=`p!NyvL&mg-7K?@=AaPLL<-xLYR~%EATExI6{Lo0gTYp9;F2(ij79FI;9>B zx&OX<*nj8{);832O|L)2nX~6G+AtawG48BN0GxC5r>9t1S;96AS(>qX?>?rw9adLX zm|xsQzt_js6#&EW@L?fR`iim8=l}RgO{`wxsy!Rd#0s&7~ zMVV+~4Bj>$TfmgBwKw)htjUlD}<#3$a8aL?br-kuAu6#3#Sos$p_Dvic^JRb3u zzKRA{Cj!+~M~uY(ClH1KH1We#bV(!$(J!_ZB=*A-0b7F-NHSp~ z7{qAi7Z;dYT;#sb-A`%~{3HdRW*KEwp^e768Xr9U=_wX>?P9R8Ns^?1U`+gFtd$|l zGK^A$5Ku}*4YjqqwqfZnI=&(Zz3=Xiy;3dT`_|ouKXC3LeNg%Rc#pWachqBH zkU+2w(Sol7k_w^ppabH8;GhYhJZ>0ObYg(gO`;k;3Ocr)vB_W7MmefV0wc*$iAE{K zfrAH_nVaYK&)mk`+yYDpSydIr=opVq3@fWEoIZVucDI9wAQA~3Ca%uP%F3kXFrbY= zYlC%e;Q}r9j^bfY=#zi`3r|z$?&-|G_ER5vsGrp)-7Ucrf&)A$fkcQ_)_RN)f)7zd zREL=TE2GN+Q3@IwAH#7)K7hwbd2W#L8-=qE1^W^1MaA->1`wWIq30v?fhs=x;oHptG-tU=l;{%zwFSeJS8! zP3Z91_hoYKmRBvR)Bov9`MgQgtkMb}CJ_zsL^oMtvO+_!fKdcDaVg4xNYokO9l;Z0 z(N>~AVLSvC|LuJ=&|CN0fO86y5LJ6VP?`)Su?>L;SZC=@bx~SJjfN<+Ry0k+RKHIM zu?3jcnk_y@E3G(n>J-kp^O?jDJWXApl%YR8JM(2P_$7dcHKEUZ{M|pR&L00A`N?~# zFXi(t_$*1xc~>Bl5PfC=?=0Ft@Bw8Ef+C0zDxwdqRTLe01xiJ!C@PZQGjWyyWb#vp zvQz5 zEHfHb?B2Hrd@=Q0hb^I(KlFxYvU;qu`{zITu`l%;#weX=nRo}DRC(|oB|>lx zrF2YRCko6&yd3LO5u>72R)WAp+boDtK#VK|E71j!cn#69*fz;cdK3w)+;0qyq_I+8n@8*A>u9{!`a?X<^iRyInn0!zPsi+u2Rst?WVh4><0j;AB z86P7Qq9lgtv_wm-)ua)6Owa@c!Ko-8RXRpJjKbF*l_ZFQpfuKKL{$6@5CrQSwz2q$ z3oeraS)~N;nwX-u4sR{a*4Vnj`zT(To|z$pz~Zi5^!t7CR)#SqZW!^cZ~fM9)fZy@ zcM=cF#LC(&?|oI+SbqE5;SX+pIp=A$GI6fJPneqE@gYR(8X}>+51<4+aSKEyfeW=& zAE=o$F^Uia%7b`8u@Y3c^s)O33ts;a=bsH$_$5eS4J z@nmcnT!|q*5wtO}h+yK6h!CZ&KIp2dvM+bdb{Y>mLaUQEzpk#bU$`LW0xu#6(LYuM zR1g9I(TadXiy8vTc!CvznP@d+k`>enoR9n!Vn%Q)jP16_4TM0@lWVz2x;!wEfF{w; z7QwrKvyQp>1?FaF(OT$qy0KDaBA^l#eRicG%Q6mLagfc;Rnj!U7!#v3-k30zyC`7)?gzb5VrKwqP0#g#JcSy9yS&_ z96qf4(#orb-K&22LY>o9!IvXD`QZmdGzyJ(0Tp#clZ~Dsh#`=~e-nVXk&8MFCRREA zJ0O$I;l!GU5bF#>j5UYA&VfE0>-({=t!7G2@P3srxoLQ1N5i`+i zfJlPZCVB)q;QS;3B6)Ory(Z{Z43kL)l7OCs;FLj#u0zlok_?mqQV@f8I@)2COj;)i zm=?}?6goZx#OR4JI%X4%=J8K>0!lnn(^Dv|d4SO}iBSt_mZ4NanzpFQit)INt`Nkg zlf>sM%lu`%A%uqsq3=6#IA>)4w_Deq`Ue;Cym``cGI4$-sMu9ebfk+2w$VtUK}<}X zh!9i)I*pdvXuyCmpmKsq<9iq|DM2(r8Bhtq34w%Q5`xYNszop@3=dLMNzCp^0K8{3 z+~m}$Q?y!rhJ#JCR_FJdTN(~gigu?*e|m1kT67OhqbqZHnIhQk4(G)ieNBISi# zzn#Ftg3#0V-t@!R)?2STeE5P+b~0j0MM8{Y1Z)65@d<)T@LnM%1#tvBF>b*Vk}T?+ zMdOheXATNX9<6qmSYZNq6N!!BB|%hzS1CbKL^N3lct81ClMSDBmetiYtc3#yub|hB z)!T_l5E0ab%#qoe##)~Aw5KvRKZnvWoM$H1ywmH)y{k6XT3cMm_1g(t_Jm$L^2X^< zg=fvZ{Ey%NZy){8V3e+ck5P?)r*RFAFsXITX{s8MHo?|VRfrFWt>Xr<@lm(oJt86Y z=P;89hM%}F&Ozg1k?cexLU4$e*zc|!kT{F?9_K1H)>mknh67h##oXco(=*et4M9_3 zOhUWej*f{$(kcr+$vC!1u8>A_bP(xWG-XgV&J;9n1@eQG|(VF`T@ikJ8 z!PW>4r2^O*5ZZkxH;StP*f>MC2Ko8>{m@DRg{0}*lCv5prLmo=g9JMy+^2E!|+Ui&u}d?-9X z<6I?r(xM9}U9^-ofVF}T9>Ei;3f~Z|va6y(ziJ|3>jrTau_ek^NYg-BAoVClIBbPf z#U#vE<87S5BCa4*CE69#MMRY%{%+xU31?JMs75>sF8d_I90rxH%kF z)&dHGq7JdMrvs{SiAfcWE$~efLwHRy>HTa8jRV_&YX~kN-a%bPvNsh}O8-r3pq7D1^AK=`% zb9nFBy?Zy~(THxRd%jY|c^AWkT2{Af9WN#>TSA8$ZqQ-0ba3%?pZ?T#U1L}cin5*% z4^QFauW1{g7;Tc}P!}~gkM|JjsQQTcali*8*jSwcNK-}s*?GhUBq3^|n@N#?tHA~o zO$-(KKo-UX?_y+wK$=EDQC$_BIB}eP`wswtrjD~z_8&Mn@y8X5yY{lNzCo|oV|_gu z;JNvE2Ez?D*Vm#X+r?nI(aG|5t>eYSWlQLD{>Ek-!c*p*rsx03=BQ z3N|-4$nzF?p0mEb#>~uY9Ai<|Jo>SZ}Wh$J9^22CA15-_R*Sr!gpQ3UKc;9Fwbd2!NriZx=WK3lFfIyare~R%nd5VxyO;533_(b; z{1HO$6i&VOR}QLX{TQELmT`gc*r~^!0kLjNh$M<4fLBn|ai&UDKA7LonwY*rkED5cb zZ~rb?y8k`feVvybe%V-*oN_u!H$94hS9pQ3f56g)Eel-(Y5ZFZ=i|#vl$`!Ni=*`o z!lcxSSP{NO`bkJFAWUgT?j3bqu(7_%>dG>6vvVw+J;QKqh0oo56aD@agTat?Cr3@x zs7fjFESp&7b6s(TjIQ^_h@lXh{&! ztXBM2K>z?C07*naRM>z{6gI#{rRaBITnjoQjwAMprUG(_UHK=zuw?PQ5FlvqRwEOU z(N^PgNw(B+k
lL%b`tINw2qcI1sxQZ-qMHwrKmBE;@ED1hL8qdU51;%KyJYzH( zGc!BO@w;!QsVhVYgUyW?KlcvjEP0;$CqD5p_g}m<-9B7)gw|_Ezhig3^0yc3dZOgh zBngrjM8Sqth|<&u8>P_e!*D3*JRa}7P&W|HmsL&rKPL)rJpmobZHe(|1Ho;z0Rzzr z*GQ~U1X3@|OO3S+-QHB}58dgYO+sxQ{h38X30fQKrY6s#Mn6eX(lnziORk=qB3nMe z>60h$&U5PINqh+S$!4?FYA?U^r7!)Wnpa-xxU2|$_HTc0m$=5u;oItqbxrU1q$El3 zN>HMyFbphI2t#W~GDYyQ09I*mbrdnx)kN^wM3GPk9yEjkR12EI$M_!s34u^W;Zcwn zmsUo_T7k;3H?e4~IC$tvLaZ){gw1jeUG*r6Voa-*Q`a>nNn)v$R%j(ORmEfckVOg9 zRUl1s27@7kjZLhzSleKU|gUnohgB(R%1~ic%V<3@eSM z_JQ@vQ)5U|4_;$(Xo`R`Fc=Z#o>eT-3NHHDzT7G%2?Q4ib(BT>lF0@$HeC$f#|NbG z?AA3#5?Wb{;2fjjkfy0=wL5s@l!!8^1P&Q>uVJa&QA z%|NRYsB6eOkgeH+u#)0pC23cnJ;Qz+^<1<$P}q&pxRU@2Jay z###o04Xk$Uwh5DLqKKfC#x^xsmb2*uH@iTm+ab?$78Vv64u@=PY~X#M z)#}}PG1qiEaoG@h<->1%yt4IK`L>shFZQ)X^gp{Ki#iVHINNxf5}bHe#-2P6*d{h9 zw>9Vth9e*m+?FdbX+UFb^q-A^svvF}Er^ZBq#0Nn@IKZq5@3(6NN^Ozn6eyG6h*Yi zE-)^NC;<(`kQ_0am?SBUb+kJjM&l77F|4mHp_O88ZjMf;!}|IfTAQ$Ye&N#>drh|s zmkpuS%AGIvPPRSv{Dt7G`%>KM9?B-*nn{Mx zZskn^-a^`eVieA&y}gZATA3IXu?=ygatO?eC$DQp!%c?60YyC

TCsHQ99314Wf=<#yBH3K^m~2#_$NR5_MKSQ?Z9P2XuH1t z4f9uj?O*Q1wKeYJ4(%HqvmZ``lNF3zV66!ZYe7v$NMs#wC1eR~j3ybxO7J%N&N>n5 z;UwnlCWW?>ZUTOiVe}51i)97MKnG#288RLY7!EdZ-ZMQjgNV@U^$E^Vj7KP?$nbpI zTx|Q>*oM5-LK#Dzw-8aRudg8@OixeKX?Jiw9R1NB{n3X-gaa-ULJvRohr6UM&dE2v zY-1;`f8)nLenKVsn4dIh33yJ{no$refu$-Io&;jr+5sko%@IfrwurV_DS$v#MG~h8 zjE9lvu8!|373){)Dq33yXyv)mj2UfgQWXW=?i5*`Q8zU{I80(VcI+taP79SJ+|O)m zBW4>mH#eA@o1xq5lBOvu%gYcv*4Ct1#@yVlPwvE;ZWk^KLc8PtcwN1@{^vV+4|$f} z)9Bb`R74m#!)Xgv;KWE67J!DT0hL0cU{pda6TjI-3q0u_fV0rbVdFuMsE-3+NiwMF ziK`NzsRNJ8Ex}sq$}+#O2zZ?LD6L77l;x#myz@9jw^_wK#hD)744xGV^5mzS^Y_7*O9&EP{ptJB_FCx)ODBC)^o{Z+!i3+Kj; zkrSE#NeaUObh2o%mp6eFsxh(EE|IXKK`a1wE|OPks3(2M^DJ6?YhzYC2s}z^(qPe| zn3|fRX=<9fCd*nVt!a0&+k#7;&>;lz)=&3;{2ePhbq|LRA68oQzJSo^sQwWptT@fRjV9>8=_ar? zo)oMARz+f-9Y8QpSb;>Lh;Bt)MnAgS63z`YIu+_MAd0jV-H=gD?0gzvmr>06f_A4( zni!h0!dgqG+r_ykEp4@1Y;10F{Ma#Wzx8(RzxQ5R?G7Lm#h6Z~N1A3VFRw5jkLXWL z-TCsD|H$1twXWNNOP|41+uL3 zXAhSQ;TA4=LaU>WBE$y($|EG92#fyoIf z;R!8+ElcXMpss6d6U(lgbBL%3kz-M>P7-{GLxD_U7>-70qbKf4Lt;`tH@A4hPOj^A z;F2e_-CTX9^yWUXllQQ(G2HKh2d$`$qBO}wnJ*}9xNXBzn4DYJ;hfE>jbgf=usl{w zO}FSJjx%*e6B<^0mrDAmG{+M9Lc1V&0ZPHJ_;~oFyGdsDi+ks1- z(BAn&yRLZ2j%szQsy?vwdpS*8lo&*tsGCqitu!B5k6nn4H#tW~DFMsO{4A%&hTVH+ z7z{?xYO}gIW|YiQx92daW>7-f?J?U+Ia9V!Gy55Dc+}Ja?S2>U1MAih@@eLb=8%Hr zb4yrjX}3DDE2(oRtm^5Q30oDI=iPNeoShkR*n4)^NYeIMXDo<-1u^9YU})X^+*=W$&Iv z)<-pIr_Iu!Vv`T+{8sB~9p!zxprJ z(hPUJyxum|fvuj(q7){}*a!-e43lOkZAj9Le_5+3I@8=fhWl8+^jcI(u^d_q(rLQ$ z^H>xrOIfj+v(iK6c2ihK-I_sbjnz5Ji;rhK^C;B(ep#aM!uG@i2n$Th8mP4Ux z?%V16aLymtl4AN0==8dbeW1=#bk-ux+9;FYOvcAHN}BdGce$Lqni=MME$Seg(jCgq z0=7E`T9MWp*v&Oo(rNUgpF*9qkxqy1!W^^%Yr**OfoJ_~IeTC;U);ykbRS7`!t{Qw zz4}VhBqdEEVex@%G6H#PWSlVur8L$$@;oCkhO#IyCb#=`AdxYKw7}rmh&L8MjEnS50*}A%aN7RnrZtMaf3( z=uJ-%rgov)Q#C6m-p|VFp7CJts8)a4xX$c{8mC5fQ|@#J|Chf!^oG}c`ctp|`D@zi zr(TiI>vp$jw5>L-dS=qv{QHt?H`X^=NtzHstWeq77)pqpNR)gbNS}{On$W5mUroMvQT5NCkHd!#s}FzZZ}!H9ERz-l-jk&{jSCFxhPml! z5Jj$2lu~R|H6L0U^W=kz)Y&vEiD6e~%p#U!`RwLm|IkbJJ?U$1zWPUAeC}gE|NYmn zRR2;<@Asbmmbd)>#y3Ch*Ixfw;Kx4y^_TzTPyPOFpSks=wQmR>vOK5L?J~cx$lS~< z0gqCGwM`7^DMga^$4`91(|+NDAJ|b9!M5U(C3FZ!%-LUlX*G*_mwd0i|2?}qhn zK6}gip8Js>`9BG(s!qCxe*EdbarhzmwBL69H~-vVbNIqjr%vosB4lZ7S+KY;ORw8! zI2xg}!dlDP+B!+r4NragbN=HS-+1_*ZCa{J0+%GAZ@A$G{j&e#&Hp^U@5EC^difym zTy`kLQ{XH z(T{!f^?Ud2UrkIFYY2UuWvFxz1Pe!on{wm}Tr#X3M?&#t{BS&r6*D-Ioa&D`9< z<+Zh?Z&_Vg-rdw?5HY8<&OW+(@0IWQ^$g=En55 zI-6w9Tj~aT@X(WQ*?sWJ|NMgMp7xG!|Mq8J_RY+{7|6eU$oAnK@A$QjuJsQnm0S^m zKNLcE=FOkJ`M})#?z+>-vw!-RTRDB^Ot|LCeRotvu~v-Th9|7bVEiM0eB+J7i*b)H zdcimT%D60FyEUjXc+YTSgFJ7Ora9VZvb@dHzv>y+{_-#X(%)T-d-~V#wzvJ+^wCqN z4xK);60GSS|F3WSsfR_+=ZAtFv(O;~dBqR^Uw`4z&l^`IWjV$=2f=gS$+av5&uBQL zDoXj}r*C__Nm35(zlu}|-MP*+Kk(h(@;h(4;jjMt_TQ--*s8#u{GV>WPnM)uYau8^ zLg@F~JE{l-_<6!sz_z*^zxGT2_w&20 z_Wus*KyBTA=h%fZy%2&59@!j@sjMeBPva{Fo2zttQZ>5PVi=oT1mbdWEKYH)`U$$NM^$5N&w#`ESr=NMvOGg{wKeu!*Yo{&x-8Nb& zvx_bd{H_*{o=tV6=&Zo}`*ZM5+>Pt?2cQiX?ILruv6I@rn1g2ZKTZ zECOpuCICfIDF8DZ3Dfa9#-zdqRJBzAy*`X}DFF4FkI|@32VGVIBdiSypsJ0u+VLFL z21QX&YjfUEIUldDYAxiT8zYUj0-z=h^i<=dv09+QdlYGkvQDga0+3rRHDG*DHDH|+ z<-9c1WJ=3pvVlyeAS#y;3k-U5Y78u_o{*xfB%#4NFHHl!iQljEUUZ%|*Z#z>-Xs?= zBzr+DbO71-(9d5-1p3i*OS6%-tCQaImP7i3cT8Kp5u2OMAllM?I zmOJjan`}PiG1u(j-GBUkZu<162qNq|upeg~qw$ccYG|q^Huv@(ofy3Lq{^@LTe2cL zHe{AbXiZJp-wLs}a~!X&P?HAA=LZOj!iV@m99juVYm7?p9+p?eSJjPE03v$QGtLm{ z{Gf%DIK_2o2PdiisLS0?-L%)-obGa8ADwVng%Pg zg!UAQ5-knrwioS>iuLy-C!Y91IegfExm>&;7J6{xEpy$I@A`nY>pGlEm<~BlO0VK$ zH-4Oj*+q8E?LmT~EE}4ppxf!uG@iOH5oMU3n&Qs8?qqOojeb6hZ5%FmR#!Jkv_>!# zqYZ3hF($!#Pu0{Q!r1$nGfU-6{NY61z0xW+EHnnKHHk4OtuV$+h#f0CqA*@N{)@tkFfvq8zv9rE) zE+zp4Jds4UaSsUgl@Nm6Iz15m_VXtTKnRoh-jQ+6xwr>WaX>vGp36;yRifg96bUea^Wz#y91hSwq%bnN=#OKti)xWeE*P0xU#T zH?jn6H4S*tgBRFdz;c@sEW6unjG+g-jKN;8pfN%gVlp5WLWLwWp+a&ED%F@(m6?^( z%Qr{Fz4x56`;T*OL}XT}1gexRmF`+E-^+OMB5vHf&pzM&_TJwPw94$(6w|&%(7eDD zD}siAY&Y05tEdyMu9T}K!e>98UpKX`i$V!7+zqiz-M@RTHG;VsTp7@98phj>PPbrKmh5ahd>tqX$I)wU zCWMBa?PIAOUxh0UT!mxAcJ0~N+N2(hQB}4_V|?)RdObRwlI2~?G(OPl_SxKAV>})u zPZ}fES$qr>MKNvrw>FJu6A_}cni*+VkJez+5>!#|Sz2Dg`v7Wi))J$~7?E(rq-?)>e;vq(t-$idR8*=4sol5 z7}Dgr=&(RxYN8m7DG)rNzYnuxz}Hx*U|6F?4+2&ev6sRYFNs0#e#^TyH~!!M^?Q0J z&VAyMBj0NO=$?;K?kOovx{%}1n9=qQ7@^niQ;n7J&JN>oY76oqQixz(NnuMglDt5$ zcqzcXO9h?+KGC)sG|2Sw#Ez) zgAz17*Ay0)Gj0GVlqTsDh_R3tg`(Lb=Eq6fzGh?65c7NJ1@G0?E{D)S3p0$FGniIs zKSPyvC(#6$yq_ih1c*X{LhbY0f`1Xb4^t!83|iB!5~sUD`+mWP3=18;sZ+y%wHa!p zdy_8*(O8bX`Nw(m{!g;<&|mR^^)V}#UBTKH9_5`2TYRV*P?n2ay?Tn}ANz40{rJZy zKmAeOU`{f8`4FzS5{#I$TVF#44Y2gXKmVDXpSt~n(UtEQ^@r5av&UKlsH!wc%DNuo zk;7U;jE<;ERaL|gD4fLrrR!u*6)B4`A(V7Oq!Vo}4$|a7qULQ;r$5)D3U4Y@mBu$X zTz;;ho>X)?okY128Ex;-?RBxv;k{3bON6p4>G%3{I-N95%_s4dD`|qOh!BDYNuLLW7$yHc%&Cvg88x|tRUkBZWOI%U zG^XE)HTm_E;YyxXB(&9nhUxSoWx9)`BdJ13-f==+Fp3g_pIa!iMOMeiZ~npi36(JP zE8Mqw9=q`{9kalD&%?%e8;LvgRrukez_09OXWu?nA2~+_SO@c9^FsW*K{XS(;5JO}#NyFe(8#G2n+W?b5Y`-Zf zxxKwbx7$hQS2M%kx$P;<%FM>3O4Nuov->o|$H@b?9{FM;Nw6ai{}GeSZyrCBltwlG z-yn!dN=YdImg#lU7!$^a?2Yp!(b@SxYFuc!oL0X&!Lqa{LTLY1i6N%o8DTFI)*m{> z(#ip3c}O>U>dioBu}4G0a;Zp+NC?!&K1*-sEN&1v*X^-?>?zNlCYFo7zf}LbQ$Kb4 zod^EOZ#}2R-DfrEtzY`+|G8`Hp&y}%Lb}de7?q@NDiu`g^y4zirvkS$6FywOk?qBo zCS}bibh>>uHftU`{t$oX2j9(bVUe}f^Gr@{QcuPV`W-sm4r|-z5ep_*8tGEHg5JO; zZ@Q6gLS5HWxX`i(v_X#;_O9&a=38IN^2**+AcQ3QH|d4|Xo#6n$WeP9t7et#vC`u) z21cW8G(_sA$@ZI-K8Z~0q}#dK!J|GB>j@G)s7GSNYQ*@6pje3z1ELWL?e&x?6we?g z8CU*EB`sPqbW!K~v`NBkp+TAk-5F8XhSAQ1 zNJz!-%?_^UQ@DcB)_G!6p~2&f!8t=y*BF7q7Px$4R+jp73n2ty*Kok9HMuFZz=uqQ zL53p95DVwH;2qpf?y1t`yS_>6JvUvJO?htV{wLC^VT0T4sSnC`~UQo$@(<^o#t~;P1Kr1 zh*9yxmH*}5aM{Xv~&GJt_6AEzK3}9fk$u! zxT2un=`iefSQrc#4EiiA3>b8K^!t4}-I89fPq)*fED8$e65UrCiXu(EGFfr7#hNWn z*7kpS4{wbo1fPvBd-6Gk0F@~}oNj2CEfPsoV7j!4g=qhm9EYG8=eDoizE1m^QDb5= zlnh@ogoz2V*hKN<=PIgsKZpU1GW`tgV%1FDrG=CrOvsd@i4CLmEq3wFPqJv>C=gw8s&4jvXXflNGCTHI;G$GJbJDgoxqnS)t zJ$shMd&Jr70aIYtdg-I-Iq+)j#1xYb@3n zTn^xzb7`!D_h1a(C&P#u>6P8&)y3xTX?9!kUm>vqk`g+`$lOi>Q$P`Ck^_*q=;Vhh;tmbOan=6akaJ$!U2tu z7#b`A6C+}izRdlXF`nY5jzxqNA! zTI(?-Q*`6;B+vYd*ojR6Ukn(N^ee2jxifl3bCqRh>R}g#OMs`EOjuf4#+byuG~*FQ z4Bc)&8EE#}QCkCb$*YEJAUd1e+8VLOkhtrNVZ{hBB*>JEEM9Q?r=m!zdGWvu?xckf zLdpoH#V~_ntv*MacriK7(5aEOJB}eyhbbx3cIX&kx@c4lP6`xuVRBhyHF8V+)19yquwb5UCgI4WK!u}WXNbGUVwXdS{=!XdB zy7H$cWf#|15Gue=yut?Z;`=5Nl`e~ z*BUy5K9CeM9|<*UXEr!<<^;o~Wn9Y)NP!qZOvI?tG!0cX!I5i*+eM(sIV>!dkk$9=0g(zG1MikdiSb;p_L~NKOC% zAOJ~3K~%wTn8v7CN#~idsx|3vA@R6r;AYygBpa<}uWGH$#+!^h%^A!KBSbWF+pQrc zqc>;>c}I{88Io6)C=_{!r(p6B`}7K-E^@yn=`9( z@8^s`)aEL~6b%1Wy-2iYSy}XSJIdd1>&e$A^1+uN+4U!`~OwJhE9i!5Ju8SIdE zw2T?G;qg<)cFZNM!>^*oec`mC=#uJ81eLnH2Pw>`vznw4q)jhZ( z-EgmQn#D>&goa*kkOfp478jQiC!A%kTuyacYpJRNADYxQWz3Y$YJZ;|Pe~Q)(*JE1 zJWR}6Fd0fv&Gj9TNW#0uBvYzGoqtZa85Ked(^R}7i3`sGVavFv zf-wo47@N5F5Yu8!yGq1aVM2i?(pwT74QdTf`W_Fg7aSd=d3J4VFtumMnbruSb;48U za96+R(i`;h|MI~Pz3+YR+jsl^Ys}_V?^swoa`dT=P;RYnGAK*VKJp|_ec?35S@zhM za9I8jIsKWrZ7|{OYP3nWG<0Q)dQt%au{B04O*LX?XN&&A5L-B0Vbfsv)2BH8#1m|d zw^L7?v2=h#Cm$r?|K+efCY0FNL3`*CiWt$R4xR_-GMaPAE=O z(k*i`%PQ(DS)ww>ALrlZpMA^G=OfU*UYsuAkh7K=<200SUr%z1ybU;oWVr3QqV)x^ zPDF_+gis;DQ}zr_8p^^_bxZDhyynPJN6XG!a3l^D)rjBNLDp)xEI#KR*Joro?nqj4 zK_AnRN^&K2l~SOSjS>3~4_Mnc#rr<+M||IsW&a*>pg0Q<4@}N-)x#g=(=jky+|B9Z zC)ixK7zOVGN@O(I!iUJ_)|h^;;E#U)&-lWlk7VuQAy*%|f_L6=2fy@dze>~W2P4V& zy=P(2XFM5WonvKXnbCMmuh&hU-CBCRehRWkMM}m>Dqqd1Woyl}SjSq2ahAdsQ+Q{L zNwp5vq9H+w6c0%DWI8pD5E7dpBE*nW?y8yon$=FYDV`f)kp}l0D8L6;DW^wr{|ml!q~n?He!^NYxS6Rm(mJ@ zf;JcfJ}BZGwU1z34n*5GYtLHIT(c-KEsn$#fOD4d<_3hCLoa&;*IfGowzfaRz2{0Ec(mf^4J7g$mtmb!8eyNG zaPq2K3B5j>qY2$JB`*v$Pj&~q<~48R1MmM8PM(EDLWGqwgM}WEKvOrIIem)#2M%JarBf6v z3|H8c zGk?jE*T0^tt~kiU_gcnv;Pkd|bk3_K7#$Hwh46!+qql#7>vTZRJj%z;32*L-e|x6kv&2u0yzOv~m8nPkr)J-}y~1 z{^ozUd*8k_^5tJxSm^HEvsZ(UVkFm@AUS`OqW|E-w4lg)&(?T{vcI&t`?ABMn{K+P zCEesFfAS~eMSX_teh$E$Pa|u83w{ee@*HmPB|P5!9pCnrfaiO~j_H=l!eWgxmNFRh z?i5@`H5i++u#=X4o+g%N$BZ8*CyfBdSKXjhNmb@z3{n(a|C-n0s|laK_g)@YTcePM zTd(gy+=h@47IBVhw1!)cu5kIQZvun|?sk+Pd60)be=je8^*8fZ|Kay|@vSc=MsPL@ zx>%toEKM`PI!C8d=729T9fRR856D?#I2_`GXMKH*-MjWsx)LK0G*VD97%VUvr)kQq z%xqZ>0L$Xi0>%V3x6UJCIPui+Yj;1f?_In1?fdoi`Y$dn>i_sd|I-g|Z0vNas&e(D zakUTPCk<6qnW`F_s;YEc`7j=jo6%@%eADvYhu(b0>+d;w`0xmFYe+Wg9DF@Pmf>su z&}(kI;s1E#{?C1H6Ft!?WEN`ml;xVn;RwVgP?%0)nx=8|jDDOVjQparCJDa!9y$d% zv1#Ak6(zwpoPF#GZuqvpLv!fm+_e2smU@4hL+Svg0|KSd=~+8tF)k?$6=kB+PMq1~ zH-7VvF`Yh^+|nZ{Ref&tDK@sw0|kS@kd@^XR#tYgvU`PoZ-{Z0rIlq)K6QdgGfpj8 z&eHGo>G!%x0KDi>cKTT72qDrmlSCDY(Cd|05zd`G&H7sMxb3d+$U|Rv!gB8;OOp(G5-Xjg4ht zqoL==ZZjMxRzf}Aj^l-1tn0Dv-8+nT-SxofFMRG3eq(*&v|m%0)cEk=vB1m9h*VH$ zO3Y|z=(Gvs1f1uVMw`%&Q>G_9{?*6OipaEGA?CV+pgp>SUA*X)f+Jt}b)+$A{8I+^ z=?@b$awrma*m>$fY`;fRj`xZ%pDsAAIzFHa6E$EQc;T%>F}%5CXN< zjO!7L%S#OU3pnTKbW2v(&Y{5K;t~QZEiYrOrPuGVytqie-=nG~jK&p>_jn(2w4SnJ zjra6=eTt$(r`yxRhp+t1frI<+jy|?MB1(+vz1J9tKE@E5CV1~dUHfJ-shY{8sV0+A zy*-}Po12?{ygl}#st%*kmd0_-Xs6Pun&`L=Om=p}s~3qFMQ!kE3$R|JGa8*&74OH! z7-NXF6Y&O&#RMB-aK<=mMO+Bpw7DP&!3b*9V2M~HTEsf6aT0>Df}mpf+cH&=kg9fx|IV59J!sD_VFX!?jSK!Y+j(OlbDqS!ZiJ2oc zP})>4YgH*q$NKpV_FlE0rM(@>Qi#UUOq$dr8VzOXIC=U6XV0Cb+Z*!Y7r%mo2llhl zGYoZ;X7dcDKF#jYS#}k>Fh1?%qhdr19vLS5+SOG|wCJW{x6{-J-_%%V65*6fLfd7h zK2Z3QqU_N3-HqLk|CN#B#Wy3OAzC#OBSu10f^nU3H01=>*^!&R^o5^q+i){g)l$@XfbON%#-~{@&jOzlZAO z?_uFHe;*q*($-=mS6L;V)fOEV_g_ZYAEs=Y7^<9#)trU$!Sm=7k7AtTB`mmSo6n zaQJn5+VHl^>4$yp>Tyk{ z+ez6uYgt`CONb5ETzNfLU2!%2xWOLt7~)QXOu&a^h!`Xqpg`OZtV1_WBd0y=8KQNa z0*#npkVc?Msc1+E5t@kjoLUYMsoOeT1>@43Y!M{?oT$iDQ72+h;}AbC*xD%Q^uah> zv83i@FWAESKB}Qs4P{xjMxF5(%-zYa$3tshHKV#>RKw#ZBmJ&tbtGs=>(yzx*2bBf zbZP%|-d3|`Zed8b5Bm=??frTV$Cowe|M=Vg@xAYO$2(3KxGJg^qFO}Nk{C%j&ObxX*Bu6yva*Q--#ruEif&AolCam2PAoGYd|b&Z5rO4 zwLH>dHRQH&D3|j2Sw>6O@dmc zk5N5ALd1sI0D=s!<_Cjp|flkQi0H7r|pp@KqBG8iIysRHCXzjZrtpRsY@x zMl5#5j7N@-|7D~)ZzN&1}@9klFGH`P}s^*w*&H2A-H zrr+)S%ioqCL}^3Di)O9m-BY-PCjz zhJ>wtq9$b)Yy$bJ#0(=+P)Vh**nwCjV^*d{e8Knjt9`k=skFlUsjM>_ZKfcTA?N2= zL874Q@&hTo>u-Ityzu6uMO2Ruo){uNG+8TyTvgYyQxOqM+e6acZUszc`R0q2T9!a# zT2GN&PpvbJjM#p)sdr{I;vuwI*wky$U~bScC1aqk1GdyZ1Bul^Uo z&|mTx{DVLJAMXD3-~5$g^u$MQKK-*IQZehWNEbNiK8+Hk7h8jNSgS2*lc}^GvY8a` z%Q9sKYdgewxWJ9J^a(L}YZ7M11L|q76EJfL?Vn%NM%J=PI)!t>w3C)h{%6Sm4KdgB z&UK>X&I^$xeW2J^uYKljcD6TVXJzv%2SNd_-M;vQn!5!2tL4xqa_w>Mw5y{ zybWO0M`w(>7^4vpqv`oZOf=d=W57m<)+95uMB|9j7>B4vgQ(FMj7oYgB34zM5m#C} z`TPCOX3_2JP&$Rs&>06_7q&pa$AF3=odVx_jcGAezAf!V&)=Le++xnsjq+dLphZMg z^?%#`mw)ht?Hzj28cVNiuIS%-@9~de%cajO9lGM*EZzG0Z#nnmgFiS}TETYu6h#|Y z&Wf3q78lvIvWvBiH8!`;v#_*)FBYI_;YRyi^NP1p<<|3O-smQ07_98U zI7eaaw40)>M>b-(;o2KHcH%J}dgMWtmX>H-`vF@ZsWanN1rmiu9ihmS-8_ddzutB3 z3!ZM^W-cL=a+lMVC``-v&!{KO`WqC($ZOvI;4{3-Gktx%A8MTQt_!^Z^cD=8YeIid z;8V>4hi~4+qYo|6FFNcPhaBF;+MuB$AVfm3h!~Grix!|#vQ{hij7n~N$y>k2o5c^p zA3diNyrgovo8!iAkJQ<2kEZDG_}b*;&DY<${|om$eE3ao`ewRID_Cn7Z*Spp%Mc_P z0VBfF!Xh_xkFvhC%864aIkzMnh^}#hONiGs8@4} z>4fx8-hq?;h0Sb7HuStBq@XVE2*wfiUU#Ov^7?fy3_0h&o^2U@-5u777c1COab3gl zr)rMg;<%?8uzYig8iQI`rJ#S+3J=^|^Jt?K&f!;nlw+U2k1yW$7rgn~CK$H)y^mWS z*ywWm>#n-zUGI6*n^Rh=!Fwc zoM83*X(U&#N!u+UhP}J@@PeCO$nM<-p|`?R0fvh`w9E{(khx%y8K(a0_{OP6Pqc=BCk5GY=r14Of~Zbr z0ir6|qlRSUP5!-=3#qy8onb4D2N6nGEOL~L0wY2ei9lI_ZHdZPg6z(Id` zfbAN@k*~L+)pO^d;SxiRbLY+#twyn=2F(t@4X=9rJsG2(lxG0hCOfG^G5x3Z_EH1HTVz-QCZ$oa_or+T2S`jkzcza4%Nuc&K8e9`5^Va9yh=oB$y=|60B&0 zz_z72CW_56GxCeM==}GsvrRAGMvn#+motNjRY^?7tfaZc&uT5^##cYgtN^LvLZc2m z-BW+vA8Is4RYGWpb--#8Gf!>K!l$qk?_&QJv!kRml;Hg(p0&(>?1DU-p4LE_w+n7$O`go4Rlnry&XxW=04 z^IEU1fZCzTE8g-&W>s|;d+3Y3vwl6}=k_pYh*2pz$~7;rsnXFvwc!{nJBr7J5R@iH zhPy1++#(o>gkYFVT8)m#!7B@z5D=3j&}yx}_6&M7-nmILM?2^b5ite8uBBbI7$JyZ zX<>Nk7~BlyTh|DZ?%pm+E4)xilX7k_Cl#-g&2) zOvXoA1)ff)gB6oJbTmz;+l^({(Cc*4tP?CgK({v_1SrdHQtyW}MP)$NF?oIk3SNyMTg^0MtlXanV15g6O`SS zu}XzXjed<8^p#g$xqEASYk%D|#29gD0#yfqin^|wDBh+~5+UH53Tu=>uS4ldoON`{ zf?>CZGeTK*==X+ryOch7Tf6K8Iwcw>==vI3D-3p{m-mwaPk1{2++yx$`dJd^EXHQ+ zY%+G9!3!X@73Er#=mu(D`PO;3(H8MvjGv!Za04J}2q}(8aZ7A0+uMpaHCNr(;a z7;o$h_utiJ_5T}i>fAE9Oba7Qe~`RQt2aW^d~HFFKmX8&k4&oCk}-5{Q0M@ZmzNF3 z#ySLwvLJ-W*7gpKuj!N}&Xs8B6PiFZsW8saANJ{XO8j^T%^U|^3sgfSZo)ueV+3Xk zPBn1F9*_~#9yTX4lWLFoEaDV`B(FSQvD}vB&Za`mfVYal@4aDdc-;%0;u{Ta07k5z zE_ziS{o;gcj&ynGfeFhij>`@gIHxq)u(e}3IUZn|z+>Bvm%b?RQv$>sw-^Jefe@bw zSN_e9OJ>j;I~%W3Rq@{Ein;<3DFBWiKOVZBPBe^((O+2IlNEVPmJLiDF*8j&Zx%>d zLI8oY4fMvav=>HaQQJqX1MzV39IPm~685gZxpi30tVe5BhKr0mb((9&$q6>=^mo9t zR5S6^1#L=1m*; zL(1U?42`DhND)I-D^??7lQ;K#Z9xvP#@yk(#~3^9!bW2OaNBLS#SmkS^l-MwwHt{$ zYiE+gJY*-ul*xEvjCeC7eO5`^+@i@{C)?2NAZ3Mat;7C4Y75v>2o<`$j`rNN1muFM zyVl`~q)en_()!}M>x+IAgjg)8edU*AH|F8S)R>oA-aNW_TxX_?m zxN)(Ee%>Th+QW(sX^^L&MacvAHwY0G#~1JStgm&s=30lrPaTFx%&~k#Nuu&AyA`dO zRxd6r^bdUU&pvs%vo843$GWbgb1qa>6^o(>=A`kjyyKPQFL!>IWK}$N?ARTR_a@B- zl>dhqd@5H@L7|AKF}60j9CJ3?FNM6xJEsQLs4*Qo>U;obyO$?o-Yu85Sjqaj-qO)L*4?5+^-HQuP4LZe{rC#^!u(ao8f3@}}|LJ#r z`OBT(bN0}xYW~}|zx|zc(*X9V<>BIgh%x-MHANv}oT`e5Xi=0+uRBOu%Qm@<_Ni#Q^NP8s|)#~c%^>x#LaX<5`zxAsp@3`YF-Z_J_*4}Z) z9R>(K)RWp*NqEub;WbSPz(nkHDr(H$IgMHHRGkH;y*zEg!vLlP8=%_*n_08UC%FS6 z6kM2Gk-7gTfzAXqAP0syTR87jqmpDp4Z-!9n7y03j=b;s{l@$uD*mzK zhR2>=7ysR0dc}) zQqk0&5Ip127MojJR862;_E{LNFdRmVDT^<6e$UyU@A=&4zPI*XdjvE;237Xyt=rO3V-&kW|4X0!(V? zb72eC{P*_A)u-CxkHF&i&>Od@tVPoSwb+to?kzQ|+;c%G+ZFc}@Dv#@S zzN|q%Ck*|^zxu0#&8_WsBsF*YkxzX76DI(CV3KE67j<1*fEcKq>jM^REY8hO!p+z@ zt9Q1HM~som_JLw*cu)^8-=G-jxm???)uX+-?F20n$1&?2 zG)Z(liq3Z5spLYMN^5e}qW3-z{)E!mG#MbyFrqPz;KN+SgML{=@th3$%$YOaS65yX zdwQ@~zQ27udf#9S&N(xgOdLQAaXcPZ^m?84d?7O(Ay0QAD#81tC?6uhdm1c32JI)x zxHb!K_!_Dv&1>uyNLvrxFnbT>X(l$E$TSZ%rU7cq#vDQOPSM*JJ8$~#&+&BcJf9tW z-op(5F(yLtyw;io52qt8Qje&YIw#3MNFzJaFs0d`qy$wg?Mz2Bi4LVYpEjSEZlH!8 zPCjuDC!ToN@!pH~+Y67c*r4C@&i7oiGa3J_ozWO;JHPUgk9=g({w`?n#t7CG!uEC= zy{MsbwnU>zbskgE2BvdLH1h-P2(hGG3$@#qo+}0llf1HYvtnEy*{P6a4+nBEm?8EB zH5)DW-2R-CH95(hZphpWKeAdsV$myaI#KLBu*$P%2QTo@&qufcKu~XFR%9fQYno*W zEqqXnEeIjSNX8g^2zknF#2J~+f)Q!2xj{&pc_B1JF`PL5Mb59C;^%(u=lPSn9-)ps z`;pgveZT=zV3a#X4kM*;H|7Oe0n?MN&$NO`a?@ z%@W3Gb}&)SiH{C3FtJ1W%>;Z*IN3NTyXk7y6BrDV0Z+y=5KwUeiKcD$ipi;NV@Rq? zGP^Tbd_}Svk!nO-fw|?ik8q(ef2q!t=e2hRP>}|hF8VZ!B~P}^a6u>%WE2Q7pxJZB zm^`)23HC&d5Cf_KYlP8gn>~lFVYsl&qmMkw%E}_&`~ClbmBl{R8MCnP>|!)uk%#`B z_r34N7{a^HpI@anSp58-ef*EUIRE>m2@^zcwiH+T0w9K1jkd-VuEZ5)4i3y14YFNn zo{ZWWbye&G*G*CdHm14_iC}#C*@nbT7dl&_^J(tPL#u}{QNlPEIb{ZeT*NOXrPtH6 z*9=2!U+oKD^CZs&{QIV9YQbP#fe)bo5W~3kd6r=QpwpF#5TnxghLERWg^=~u zLSTL21*xY`lvb`6X_AFX0Gkcj$qZ`D*KV{ww^{Cvfa{>zC2VUlRaC~ZBB2x0m1 zQE~XXRh}LMUK|WQ|KSFps=jF&khz(TwDZh0!;jQgI;+>wSrRR!n`RyLIT&BrcN1^? z_P@&w*I!GoQ?R-E1fTuHhd8&o#&7)ghuH|1ap>^%_UzfSmlksT^MCY@7C!sHBX8f_ z+MwI%pLp?s7yQz%U-X<9qPIp8R`xz&=t%8~0v{`^v8Xnv<_I{Ztw%*^Cq7I)cZf{- zyJx4`Dkde7Dj=jFQMeF3ToedS9kw-DbA!Zdt3eHUakX!egGCgsxcMn&#{5i4ly4Zg z0f0!b)+R}mTwDh24D!?*Evl3*;psF*HhbtiPT7jhr4O0WQ02(=2kH1@Y^@LY$Xy@i z@snHJ^5R!>%f8F_dq41lIPqAqrYy^6g&colgZ|4ee(^1fgO$aHAA6Yo!mfYzBme40 zo>njtVrY!D6t1A6=>iy`t|ue9MJLV8*4f0=G%<^5hEO#o1<#lQiP{XAZYG&3x~IYTIpRw@YIXQraCbHVyS|sX>UBAy)%FkqpITD z`P^-Rz6Ol31RwFWM?;pyRzKzXQ@$dN9%;jI&G++ne)~7^I^?_FaR;w^Db1@J(Q9>J&<={b+#B2JB1SwGMA(E%9NzB+GO^{q}eA(ZWsANW$w3r*u~E)xy0P8ix#p%&E+g>5ku(`q|N5i(_wFHFlr zry=WOcLhTpWm>UsObQ0u8fHR<8Im41%)Zi9n|kCnK_gaBu?b%INv^QVw&@Dw=2t(- z(_zLl27-J8zzqO}Mpb9Uk3c(;S&YFLOVb22y3Ca(0>DU;+7(UL9aUmXF_UqI_y6|q zu;<`W-u9Lk^QJc)WimR?U@#zr3BUW>|DIz{ZgSh}-YPfU*ts+w`u5vzw?or?+p*(M z;L6S^c=^Y^lv1RI;7v|a5K>KaSrpA=vXf?DJCk6;^beGnbNp#SRZg_DYD%iq{rzdq zR216r%PBHpCfQ|7N~{#jsw-O2nF!(xlpU}I1WWWDM2X`u(#=Xf0uWHUp!P+tYvIN- zanAEb{f%>|HbL{$*vuWO2-k$qBTJtWH(f5+c`CoepD1Vhc~ zGY|90kNp{odyeo;x4xKbj=Y}Nzx6P~zGW+hOXH#Iy1tQq=g{W%21~p4eelD7cBlVR z&y69DQ(Ds^A}QCcOpHKbEE<${HeKtXQ_o&L;^CFDT1UH@`vHmeH=Z7QFMlO3f9b6_ zrz|cAk3aHhjyH|G>5aEPtB3w;^Uz_`{H>-|2_fpzaOwTe_S`0fYTA|3E*i%KYw)4M zSewas&vZUWh2FfOzz-fk;W9FZ~u?@v<8@cj{htcGmcXU-)^R zTKxzI_CLf(*Pqo1|FsQz*c;rozPX0A?)2V+D<6HmnPh!PqldLdRI>l>y2^zR+unYHS^VFJPV!#NjP&5||~*s@a^BgP0Z*34wn zl+=Nei2xBaBLFl;mmpEmY3bm(Hjo3(6fxT&+^2hkFaa+ z75w3cKgTuK-^R^Hucxk`-Ddw<23<@2;`sm5_MTC9T-TN0KKEADOJ71x1VIu214xRN z#3+iAD3Ow7Do~>2rWM+9lI@Z08TZVZY5$m!Jw0Qu={4?d&$y>YUJgs$PA$4E$r77X zA|=vd6q7`P6u|(3$iSCgtg0K%{5bbk)dvCuXlUMA58uPfuj<@$&)H|6eVkLCnLDlC zGpBpLW6lF18;XzufJTy+wgjnC`p}%@loUb}YYpO%8O2m5gwDZPhdf&a*PDgz9{|b$ zFfK%3rdR;d4sfIZ7pVZFJ2r!QLtsIJM-E8CbcuEfHeNijcc^-|IP^DKAjufCI)NK8 zaLLs#CYQZ)KK!g$e+3wIoh)(-nM8ul3jjXx| zx5iyI7FYyHmGGl#e5Trq3(X*Ks6(!G^_7?7(n~gCdFcqA+H(l^eEWXvdeilI$F@2A z^G|;Ygb9ZIC2;!sB>yuq=x)|}3kxfLv^ZMad%EXqz|=Aq93*wgI7=Y30C;$|6%K8! zcwuX8=m=-9*MXcQUfhG=Q-UsnAR|qK{TP&aVcU6tw3Ybm_#*i6MPL?{)*UAv;1ZMp zloBXpjtr8d(n;)0&O*06yLbM=v-%_d{k`EQMMDlFY>}c)Jyp1`>BUcHkgxau|36=Q zrmsKgUuNb{-F~|j&a$iUxCnPLJCIJ`3$AFpL?Tnn5D(2^3`y;w8DNE{p1dD-eeG}X zrYmp4HP>E^U-{gXNc{xeUWz9l|2Cd@>`9!n?WeGH#}#L9&`FZ)TJA4_nO=P6nPRxN=^3_8oQLMIx`Vh2iTQ0#OFqb97i$aDsdY^=!bKxoa;7PKnpWT0B(7yx8RD2ob+1MJy35ko1uMoR!Dg_v0hG0BvxGliJYxVUu!pcLiw`2)P|_LqCV@;gtU z4lxn{8N`sIST8m1KbbJ&ss5ho_D|w@Z}h$5?UP-bu;dDuQYj^DyTDghig3$EK7!|e z^f2<0aOl-Ta2C)ytFmPu!Vzl?6d0nW6e*-0iZm|Xu^Cfz7%%L86;@5*frnneo3Ht4 zY}j}X&OK)<2Fr)>;lJo8&d*=!>4;b0ILxUe> zB5A>Lva|pNj~1u@>m6UuF1U2i_$kpNxA9tIK2e;pX%INcU!3sxiO)Hm(VfZtZ^XDy zWytZ`tcb=dC0WL#708Q`W~s*L&~B`so5S&Ahd=}*DuFG;P^JASc6YPDdH^EY5gpif zzI`XgL&n>0{29FMx+}2r!popB2K*S`{>Gg+d~AYCE`1xUwP$D0$MzlDtU=S(8Zgex zpq=89QI$4R0BB9MN~JP(?1^KZKtMIuTB%Sy(oof)%ji9&FKv1DdaN1z1Efm@bs82o z|H!HXYRn;0Jv^d9fy~nLkm5{eyRtJI$K932Ob`#;L6{MMdU-@%^y@M1PPe81Q~#ds z{a)|Blily}T0@T4Wlc=ECD;DtSVaQ(Y($Bs*H#0?wQqunAT$yuTt z-I?wNQ%(qAIOmU??)d!0y|O1p8`ZjSaCagw7MJjA*0BmZ8M(KFEK02RH&H62tioJC{!SQ$$cK z-p)|BVV#PkgwxzUoBPi6_L;oTi3Z&yUPY>GysGdQ?N$qk)-VC8^9DFJU*Icu{s5Ll z5zG4k*#)jw9NFicNS>>JfC+a;_QzJd;suCVh99H3gmqo0NPnQH`V}LB2ANuJ{prk zr4*7xrXoQRRHC7iL=FbzDA=@vL+d|{a}NB0pc@2{{<5fznjw7uGVq^teIHXANamq{ zq9ZN918X)8Px4dZl9>+g-t6{%Jx<4&8rV<5aL?qvlRX}d`9yCVjX3sB#=Q>!&~9g8 zs4i6@qjNsYX(A+~P?`d*ED7{c4+4iSaoG`lF!JWN+xzN1Jbru`*SzgrIPd(e*m1$R zSYCV;gMJ71e(xTrYy+;m@+OqUS%w^TVyh3$ve)H>R2PM0BD6w)lz8awnr=y?Fd6sd zcMyZ1Lx>?NIZA7&M1!37{<+4#;gC;fA|7 z)-nSj&vPibdIN6(6^)qyb{;OD%s%|BFJC;dR_i2jY1VRSn%X33`83U3+RAL2CRQgc zlV)X=rfF(PC0-GEl_aMMKYmjGe?0>|Q-f}X7|pOE8gXn0USZ4tSnJd) zB@(%Ej>Qd=QdMEaIuF<)?9kHrt+ayk4i)+pFl-%irp=qS;?@t}2JK5ME+58s?*3~G zMj38?-^cKQ5B_r`+QGXqK;_vP^u(A-JK^;vvz~A%MV0_iA%@Pf%xJCA>8%Fw9;8VE z;}o<`kR(ycRw2zY=p;ebPLX99TJ09HG((!E01@`@djf69FH38xKCa@!{iN+c-!P_=fjUN+3oRL!l7Q3#Uw)Uq~rd zidd<{>m;!Rc&)S}t*s*Elp>!bsnLmYS|yHD;zuIhT!BaL{{a3#0l&}K zzkdPmdf!KJ$(wJ(1?O!%r@v%rW+H4C zap+#JXV^Kf6>A{GT8t2Cq-bR=q^THjnx)8E8QSd@TH&gc!v0rYz`b|=IX1%J%8lot zrS=F_bV`f1UF_D5R9p&YlM_h-6V%<~;T*AbfOqJX^O#KvEITDW2HkOa8=?2tw`V@P-re?k;DRn1AGXI-O~VK<3rfqYwmD-m_q@M z84M;x3}`-Q+eI(5yV>OU;a9hKXs?xWNtzl(iA%J0D$%9V%4(&p)@h+Ml}f2n>10Am zPe`e8s*{0MYUsTi>Lgh_XZyu_wrtsc1b|Jlgkv)-oDh_h_d)VR4BPnKjwV zx@d-qx-WLbuGr-ODU zL$}vMr_(`}WjOHai}=o6e+44Og6iPOg^jp+{i~o>4w|*Vg)Lxz3G^93#Y?JG&I2U; z5GXD2c{r%>4(uFMLQwevu31y!aGoKDh@krruZU4frv)hmt#rj*&{|i#U>jmWK0Y&3u7%<1vk84G;$(>wU(+U!QzGIpT0Os3dERIg*dli zTPvg*B+iYd23cm+XA$)GzVqDw@IU{X+X0wXlCYGnT~NGofm|j~tRkRvCAuwL)fi&o z%(Jv^>99jOXQez&z~+rxaP2kMU@|;}#iasweeJ85S+@<>UV9F9UbGI*EaJecPh$3x z>(9=hXV+~QwGSWSB+&#-t50vv01}?W3KD7QSQ(GUKGB&YO2HmT(+r*xkk)8r8CtCt zTCEnk-7Z?47J5@%^m;vXI$az+ycZAN`*%nZhC&8Xz@y74u3WPoy4)|>U(1WPPD04R zfS-6EBOnp!F>ZJ`0AOpSb1O@rT#oJbC0yUS1pjE;upzcnN|IKs0~@d+wliXzSuh_| z?P1*5>tlI1`l`Sij`yq34K44BYC%*@s8P&PaDh-{6C-4%YP4|moT{a*4gunPsY-W* zn+7XStu_WkeG-P!3haG(@#RyqH zP%=m}mgW!Q-f#Xj78fnv_koY#{U5v?Gt+IPiNf={zl(<-`99Wfc`GisNS~cSZ{N6O z{QQreVyzT8=hvR@`2dh{TCfL{PN1Mt1n`WMvPss0(h1t_796K=-l5ZJqucGFH`PP0 z*F(G0MsKQ%si`Tk`qK}8?B{kP#?us}IKtB;q1VAv%YsO9sC zr7^C&`Z`>{?K~tp$8cdk?tkoItXY3Krsg)|y&w7D++cGx+!KYaQ z$8O!}o(}-6DT$#K5lA5ept{{%Dp9)d)}Y;LL2HdP%h2g`&~CTU>2}cVcF~)f!pzJJ zrlzN{w0Icz-Sc0N7ZX@xV62647Nv72oX6vfYh}<@rh$#Cfei}OMv(WCD!uu;8t(rcYpEM|GRIYHgyoRkAjvm>e$v{N8EKdgN7tBstSKRoVQ^y zQ?=L;kdgDxJ0BNr-;6{19>e_cW4QC~2Qj<;23&Z_TXE6O^PtLo_`&!80p6Tt4BhE; z#zmfw2{gl=&&Z%VosMS^Ct8!%x&=U;cOG=R-6^4gtkXuP(*bk`qzF^J9;T*x==OS; zo}Nax*TwSk5j^tXogld2!MKKrh+si@zQ|BO6dsNM03ZNKL_t*YTC~hE*kl0Dg4CiM z`jGp@c$Grj$i_)G3dwWC&KZ=X5_k^|BZb3tY8jic8Ta#6%%@#=G=x%Atp*eoO=Bn^ zMp*6NbvP3KUzb4TAEiQ*=?TZMa+D#Su03u{2)Xe#4$j&jBF|Epi^*hsPVm$c#)Q7j zxB}y6#_442!D#LM_22%Nf2DOL9>EYUham)vzY%i8j{pOs@d(|SENn=zS5(3@rL-t& z1wKc7*^7Igz~c|zg>_pl!$)qr0-yZMFC(D>MZSdZ-}fN)?wiNuZ+#b#re|l+H{N)o z{mjpOdcSpZyGG-|hSNQtndy!@?kE_NFe%b)1h$$ZHfh=c0Cd_tKxar&jj8D=OifQ? zdS)6kGt*dHJdDR4{yK=Qcw0uD_aJ1`0QyXLbufz^YZNFe#5J>Ylv4q4A^9MKr1i=u zkWE3})IP@na4bn=(w6594nd_IoUe{!b9w+T_;c};-h^Z66evw9#6yg@VOXd`i^`Br ze4J$_iHwidVFYtyvP%`8pb|Q)5RVndS$ZppJ*){~MvRAJ=n~#8PQxVxqm2u(`Nit< z2V=PZsbBexKcAkSE^tDZyHcu*B0zD$#=-Q81h;Y4izZ7WNd`+tzY0y#aaZtOFzlqY z4!3^tQ`o$52HuRY`^kIo!>6Cb1uuI-<6| z-t*$PfT^je(hincX+=8GQCJ|$(#&|r$kGg*ZU&w9kYpKVW~MPSGlQ9#8T9){@z^7G zLI~n3BO=u}fJ6c#{%~VpQP-6C`dmfMNxP2H1e0pmYlMrefZaN@Y=) z94Lk$8lt89xKtm)MXg!v>t29oc`FX2bFeCr7`x%&s<1bDI%>wkVNEis_J6VZMvPn^ z$m-gBtn%213Q-PhV{#gIjM`(Wkf#w`+y3T_SKKL3v zyTD^C{Ix1k ziJnBo&GR+J!`NN6vE%5QaJhXIR4_0hpp>DG3;?qlDw_ii%)^^l?(T|_cq`kp^I*l| z+(`kd1E`jace5o>^pQ;ZxL|Y~=eK^0<@P%4>u$lmbRCW+QyA-3@Y);IKR4l8WA z&N(EZ>dA~1p0`qR!U^8JabFGJQRsn0W81HdnV3W38R@#wl;SooVVH|Pg8@^NeDUSi zfBPLbzGn|!J0aHsaNhgUIS1oxwKyYa!vXzJ_;bQFj8zlxXk?!(xw!aLvpZghI>vp488O<#1T00CK94mJaL zvH5t@m;tCQTek4=eXmHNq?JT2al6&dY`Z&!WH`k1^bC^L4BG8BW@cwG8XU)up7^Gm zYz0Jpxp+c3DvO2_?Y$GVQU?r53*fkPrL6J5YDkaZkU^yb`w`Gnpd|-y$6~}44hyg) zkYacWl*d2-As8@{h|vJvfyN7%n=D{%@DeUhJD6mv@k;M}Jkr~NVbT&$ctUsp20SD* zNCF05h1DF5t$Jz|Vl?MCu6#cN2R^b^I&@QWh*qLeM^q%-4nLNvksIN&LnYOFhq?9V zJ#+h~Kl2dkp840zl3`VAp2V;&`1whZv&VmR|Wtqy-RvSXW?4()dNw?7JO{4S~lGYSD-44dX9-bdzOV9mOD4 zjNd4IX+**+b{?r}#$^27h4DyqyE?!`N#m=@kD!o;AdIJ&o1KF~iGRHB8`$-xYq9zK zn{e|j7onAuICf+YzW?1jk^A-d=s(+e_8xlc1zVpy`27B*)w8Qs9XURFFMw}`FaH{2 zh8Q$KDcfqb(yZN10Mi4~Zf|PZr)i4m={XpT(CW-$&_9BgpL+nQCTP+^B4UR31Vy#* zUj<`@@I#S83gG%x`=F9Ms3)OLVGJsw5{RYnGTnkI3gLG|i}sKyv2eoch@RNku!RNy zR&p?~_COnT6*5bJ(qOASh}AROaV+buth%uXxo2rw4ezRq5DmlS_?kv_G6V>snid&r zwFH-SrywIV96$`sPJTb&!7#>;fAKed`yV=;&Jv{UY=qjdqfr|G)=Fuzo{Q6f>taIe zEy3hPXoRjCXa#W+vcGgJp_+o0CJO7;%;K82-GnUbVg35e==Ems=!18Isf%4#e-am* zw+Y=&cJ@Luzx%ttTlUAx-(S0C9g-ybpq!_Z8#90uBc!CXO|up{ovyZ)rU6V(O;7u7 zZyKFm4>PlK$j1wKbO69=wwYDF~}N~r{jw4ftN639Ib75%V$1zR{hSm}Kk`*9&L8>7C?^%A zzqi}&07N@)y#A_PCo$&OM4F+8Oe^Kvtu}hSDecN~7Qjrm*G1NDquuRdGG4$ddmaIY z(P^>G%E#Nzixil5kOOF7oeQHX9N06?O()QLgc^Q3!I(qd!C3-W57HKx%0v{idGUa^ zfX^L#?qn!{mmUCeSW)aCMzsmE0pJw4EC5^Lg3*4ooRK({8Kx|2!}2U>OF%XdzhWbn zu8<86M2aOdf<6huSS#>cG*I>x!VsSuFEx*%COpL{UrH&_Y_^84xaytXzxIZAJO@!Q z8K5@kQ+Vic5eq4RuR@RbodATAwuQ4Uh|AQXn-U(?<$MZ@Hfy)h>h`eb#eEp%2AeLp z4s&bI!Rl2V?AiSg{^I}rQ!Eu5(4JcNlM!o75_M;P*#FmQ($dCFZUyihUfbRu6TnWA zrjD4=>va=mo&(V7_If(YQXD_F4|{+715i-jkMvZfJUA8wlmw%ajYp=w9Ea$cHf1?r z!&!_W2W4{G8HuAEKs(cZt54?23&#M8YeOfNKtqLCGuD}%GlAp-GzFSs7k%_Ek%cFZ z#m`jL|0^1kvskm~qUS&UiO)O;G3I`_p3*x5aMr3q7Efdl#$y&j4g&Hb2kB0=GsVYU z2$4LyYWE0n3bY2i8DRVN?P#^SXth)HW@hp2yS|34+b+Q;e&u@1Oe-Ym>vK8I*h7Em zt6zHFxbnfR=WGL!`h^D{d@#dn+xuez*ws2MTkRI6rlyo-UJYPwYG#HG?0*42di*}Y ze}i~K1E@kQRI5-nC5}cNw_%dUn9=0{szIA^j2kH+>&Z15;bb6)h3bIdfvGkq0aOO4 zURzEE1Kv82^Uw-NQy^&ps)f4EYeg|8e6F`4@$*nN$L7%yxU#IENAGL#ZxI8JV}!+P zI~T?y?AP@HVQ0qYI_kDlClWbHM_KJ#n8 zd3VE@o1w;u31QW4R+goaHY*PzE#Dy~tt2FLXXSfK>s*MLNuWDWa9UyajK8s%bX@=N?-7Y zfAFu~hh~@&JTs&RZz@d_+itfpH9Z3WtG)ND5A1!q`@5(sER9Zi6PA=fJR5{j%09XP_b zE9seR5sMK%hHBgh)i~&wG~Q1xvaN6k5lW{gpZulY{D)qzH-CabHO|K?A3|@cgQhrR43i{>K%Mghm=O%5trpg-T?ebC;F00IAO18h*m)70>Ep3S zAH@9+?!!;L{dR2LvgPbUj+g-My5hPoFC2LB57%$lGPAsN>{kGMFBo$>Tzla<-D^>Tf~>;09MA1Kz6EX zPbbFI;REx+`de=M%-vhIZaIM0#?8??pExNu90hQm=T5w{l1iYIL&FEiNfZfW8$zTy zwvGs>=y_-`hnYIWSY9}eV+Z$Q_3SE;@)$1dLrSxFb^lRZ{+4&*EmtcP;{(V?3uot{ z8)%05{ontcL88;YTeoU06zQA4@P$9#jylZf0hj_X17Id=wa{vJFf~1md+++&_dNCJ z_pbBalh80#An*tyPm@L(<~%2fMw%o@lN4IZ-&7~aLaP=t(CKt4V!eFHq((SO0R2*= zbBTZ~1$wi>i%tRL4k(vF-2~KY1F8T`CrC0DW1bGbC{&l>ApGhR`n%%-lnk?W!Ko{; zc|4H+dqSKc%-&beslAn7kt{_NA|esi+8|HcL=&)Lk%x0sJ;yh%s6UfHFs0=;U3Jp~ z*S!60yOmOvFe9P8t=|lJ5_d5W(4P%~$D9WwM+AYr7EgateV|w}dCoZm$&)`*9R(4h9j!8m@ z@w{_&Ea@Dav&i!tNfIY6S-6U~5xrON6b8Uj9~dsm=;SN|(q5gy78XzjaEl-=f$0p? z4IxH6BB9HU4XSuAeuVsp;FP=%qO3~&hhdC`wI!S_;f;Ya7OpffWeICcpj}!x zXW*@*0@mkcLc{W_<(lo`7pMC&`_df?BqMDbhpo4a_*5Z}5RuxfPt}1wHjYLsU zD|KkM+MG&p?$5c8n@!gD^WmfD{otSRp%^Dn1g0~jkRy#Z%$mvALeHQA>(k_K0)TebO zivCK;Oz*LlucpE;$igB>GGOl9n#R{;Ed;L|sU2dBE037iW}s09UbBP8{)GYDXarl9 zu*TL%Moiiof9s-zpb^dq6|^eGP!%rAXCf|!U@&OJ&GE4Ya>U-DFiHODU;eE-+uioO zF=oKbRj6T%85c#7d+$%BInr!{z(!-N(%P>e^b;Y`iJ&imU!sy0l&%XqHD60^tI&NP z^M=_~GuXUoEeIY*jvPcXeId5(x&b?PUVx)VUdEsOKYxHnpE`ox^!hhu(5Erx3_$yq zTi(00=8 z%WhVE6R>BLMTsoSDz{i=?)5nptBaPWTav+Lvp{zv&{_*5Ge9;4%uWGa0vMV?{g;g3~qloaz z3(w*2zxbypiyU*S*WrrGw`0TV4u1I512Aag-M9WGKK`?}V(nb#4Wk^*>febta|;qP zcW?W-k9_Sv{^=KQX?K&Yle~D_P zgu%I2RmSE4IoUoImpzf7EdW?)Ja>G8LTe~fLZvA@M6fUx5mpuy8iykor%rU8aW)gk z6O2E;o~ngjJzC-ArnG$dHSc}&s%x)$&U-)b-Vd31$jl?H^{6O{+&Ncx?@Mc~IdbHP z+q7xZiuCtH_5Y$MJSpt~8*p(BF|oK?hDT{ilw|=xjJx`-K(&~oB9`+OAcZxXw&TW+ zd>n~pupi?~fB6?!yJ;sbf6H~)v|$GQg}u1vYk!BWJFk1gA;+nVxs5sjoL)6Eliu>7 z5B_PlGi}zb-$VyqedVSv|Lq@tYH8u<#uW#?0aaDoCf6Ki!pV#ru!TXEWr!q}_;>~4 zgD|7=a6bufoOUEh(=8zFhObWIvDpAx18EzeM4o4a-6w76s6U4q*LXBy49$(BMzW}w zq@(=Upv0j`CULnn;k|=b^1R~vSHCsfjvXu&tXJiG4NN(d&rd`;>TATIJ*=@(}xGc*&P18IWb7_pRlgY$A_Sj?ojyvvH5jQt4H{EoTuuTIJ zQ=MnIRnbAAL<)>T_(-Ix9hKQOAWDhI+bu?>3e2vW!?F1#{PeBAg!jJxLs&bjvG>KN z@mGKKbxd!0J9b?BrZ?=No8{~(%s}wW5F}$7!0e74=Pl)v$+!0Jd-3L%pMN5?#qun% zYgEU)R0I7=h>Co4BCfjMh3(WkMxGZ)vvj3Lhs0{NL3@;}1R6`afNBG#knwKD%7m=6 zC7#%nh?O!Bi5E9P5RV{4{xn(;RxWdHTUQ2!1oo+z#5H8EKP#CXAV|6=oNh1~&YAVlHf;gPo2EPe8qfAwB#?U0#=&bbkQ zF*A>oB$+UCUKB-{rl~Q;*rF)hcs%xRed}BO*T4StQ%=R*y?ZwYPXy-BJru(w07@%l zS%O3ZiH(22zy?51v>z2+>w9u$cn54N$1WTQ6}lQgC4;MvkN0 zloBtkGBAbtDp3!^HjKIHp&Q05mLzM#d%#Qxu2gVNVc+oy7F-Ia2u=~e4$3=_3!d4D z=Uh?N_8z6Nm4VB=#>mJE3((gXbCr8I4|Xh_HWA|FdepG7RNnUKU%f{uwLBh=$D`3` zoagy?JRVQ-JkR_6elZ%2%H`!{Ge19XjWMp@@4KT%k9q+7`Okm;q{a*Ypa1;l*)y~B z0!qQBiA#I$!On`as+WJbhH9mNX|7O+8;Cd?25qfUwH;+%MyaPv{y>nFFo5Qheo;4z{0!rig<`4h;Lu=Nr zJvthVCeFEu_kLon&50;y<^n*ewKmJk%XW5l*6rQ9*H2GR^RZ*cP8n*{A47QeJ8y9D z8=km3Fni=h0Z&OKSR>z8L>lA&5qKYRo6*V=tX@3_?UY%dW zb1!&&@ROgzmW`|4utCSUAr;xkTH8yKBoNyI4Cow=Gpe##t+HEJXk0JmibUGV?y9#x!Evm+v<*t4%FE1E4Tsr)CqA*TV=qv-1 zh6BN|ll0ujupB>A_RM~5tWB8^y#c-oC8ac2&q6M`j!C1$;-uj;BF5Ip(b*|QZD(&{_QZ|Cs)D_xF2tv$GZAND-=4A!k%k9F(T;kjqOkA;Ir zpgQYu)iu{*`_7AS=)f~L@XG7+p-<(ZQvjJUrk$o~hlsk)xhbvnl=pu6#pj>g`M|wj zz0KIN9ZyDOBP^bT1L3GX84V5sg3W|;l;;InEg5GhiH2_guK~A2V_`sv95geE-YV?N zQ|w>LF*PVK+hvehM7upinkr~tLTMmLgMlXs$O}-X8@#uZo@D7-NdbWKtMo%Cantwbpp=&0sKa-g}oM ziBn4Xr=Nb>-+%x8h{@pV84Lg>QdVmXY5esoytF8^Dribp@Sd3?eKe>|Ar#EQuC;pY zI&9dq0WUrK0A^O5hZpxwaQRQ&j4c~F7!MclwJ-lCEcK`G;oEL~!##x+?wqD+3qV_I z-9g}M{CM{dE_(R>uYb%r+mhoMw$R|2D>_ctUTXQR`UFHM3e1%;H@%QV1(72mXh_KE zYm^Rvf``=v-RmOlcHrP~B+rqgYvGKC&po&-;arKtduSveZ{Z4sb{8O*pqK!ou|k>> ziqfHU9uvpN6v29jz7OAw*gO@(`z&HMxW1BU-Z6vAt5HpGr(8}W@a69NMBN z?07u3_uu_ROt0GU zPcrBPKx(bch$sV)J@te8u6Xj%Z-2sjmsZ9aG$-Opt>Wh3t%(R6j95tt3?3c|3T0jd zV;1l2z39aekxauvXcIy=wPy+d03ZNKL_t(7XCM+>;xQ>u7$-y+!NU{=y{sLym&1{w z(1OGYURjX$@LEAR1z0Jmi#a7i|6qo5fQN(xL`oJ0LN%P?KY~3+=!vz0*9uN2@LC5c z-sq8BI7YR|V}#?X6WR#co4ZsK+G~btm4^dRSmrC=_5K&LRyLTQpSOd-AYR>QG;)K% zz)dC-H_?YJ6Swq1*Ny!(8#k}(z+4&u-L!=K>dx7>&= zGo20p+wc6=|CqF=p81!b|NT2p{B9>TXk$!5L`jk)iE}Rb!Gqtp>X|1V`1#V7iNGxJ zFbC~l7b%djgv}L>xigG@1-t%qI#&W4}kpt1PuN)7a|zz_}ojbKeBGq`uX|!dAGE* z!!XGp@}C+R)(&`OC;NBB5t0v6TM!$)4lAOGPW;nJ($hYedUK(9l1@{xbQ z!w)}$+kgI7anmgy#7jSZ3Qs)ITDNNLy8okPvwH!YkwI6LLg$>m|DLbBeb4SkewhIs zkLrj0?1~P|oHUBZpWkY_nXo4~6!gz)h(5 z4xuXpo-xi#%%&-F0OUPVB53cSAkbb_8V&~T!=ms+@T9=x#h8@_YmrZI1VBrxQ0W*< z0?`44(z8f_dB76j9K$PuFD#I1jJ*XZ3r+<~9*)NFI;oSxz%q0p)+Evu^GxX=APx>& z@``{tgdDOnIB(Hgd*Se+%XS?;e*Cy!T3YhU%gcUoagqD|z8{T7JRA;vp65K7Ot>ft zo=he@8jUa>k5QH-78Vv(LMLZjs{ke8_+o`x51c3hW zJ72ze&vTFc8i+J1OfhaP(OXhAj9h8)rq&2FR_SR3Voq5aq)E~!64YcJAKstB?psx! zV!b(RPfP^z3Iq>R8nm)DjA9gIp+P|CgjO+uY!K_k{no{cxRdyxuJ1!8UN^P^ZJok1 zBW00+ZD|Eh;)R`3aM18c0;3Z6Bn5PeGD+ldX4#2!0*f$E$IECl?|e9h^1YNIC`Yi) z!ZVPjDV&pjMXiMHm!@er2OgBIDX+NpZHMOP=l$a1qF-28;N|6I?)UpV7z}tg9P)TP z=E-EjWm%#q3JeAV27uvkh~e;LL%+`0ppCB@oT&;qV}fX037zO5*r=eCWA@0LlSKqZ!XCsv1_zZ=ccfNUtx+*E57@Es3}_8+ z9Xt~pDAcw94!XvkNg7dz;FX3a4NnTBG)Rm0(MbZYRRvHf5|7JT!51FhMoBP|p*f-A z=AGmlT5FW11cxe|^TIWD)cKfGESQ0viv(vBh3d*@cBBY=Zwh zaOe>3`0@}p-gGNQ!-IJI2S0{K51rmDK!Db@BP_}Sd0C#BK^H}VNB;2}mmEE?=eGb> zRly_}oewy$pd6v{r9{?MlZNsNtU|J=C1h}=MViXwD8vR>)}dbx0hfhPEJ?b$y(f4j zv`gNPTLkw-5g-Qd~>?L$blcYZJ)v*i})W#(XC(tz- zP_1)dPrT!;H!N9KnrO_yprbLnfpm+qh0d16pe>qVHj}H3FX{mdRC^GN6e<;DTzCDOvHS6Rk((5q-Yh2LF^Ups zwK@o*OAQo7rDtT&%FC>XPXqeQBJq`*qS zka+YU(TUPpaGHhr<+W!=m4`GC4(3Ypx;`esS0wQiNjS3Zyf=-rZYw`_>{w;U%gf7H zUS6i*a7d%k2$RVKMNuHnb2i3=mM-~Q6h(yrop9>UIF2SE6@>2?v_Mb;?x_;ipzv@c z*V2J5DvQ?vB(ZkTbijDn$D@k_DEG9H&382F7U+5$qd>~ zPfw3;{?JG7QA%~4b3JD6dGCA1m?`I6&wJms)^?q9U2AQ}IoCGEwu?OP+W&mO;U~r>y$5aSx&&F5RdH~oGn4@;awrsCNElZI%(CAoA-cn z73M7i7FJ91dwb9@Atp!DKR_vMgb(rLrtJj*T$J;Dir&z5k!`;+%I)UUQnXux;l>c=eSR zVa5ZPIP0eIj^2AH5Qc+gj7KBn`2;F-PcQ?c@fh=q3)petC4m}2h+=?}B#TjVJS=qb zaQUPj+Iw#RXlt$Z-fLrwver^);PiQ(d*_@t#<;R9tue-yWogT@w9dKGT061cu2M>i zgq2TiI@LX#F>C9vs@+Jbkb>crg7tOm>_|cl;XEsNrNE>G z6_Kf%V%U_xD;=`eHQL3FOl#e+Yzo0$DF&P$E%jju;!9}}9$BrGt z($W$wEiIwn?_)3+U^pCNJRVnJMp>39%M#vuc0q?OD1@G1W^de>0YDBz?5bgG-?kA~ z?&@LNmdkMOH@}C{n!xXn);d!`n85PV2zlY*ys8Q@LS|!33Ja->#&9h1TB7(+y@v&9h3^N$3WPGwxP#y8QO4TFA zq}!O_;9;3VoNU3?g5W^jg?QRPd&^`jxXeM;k}JlbvVboq@Wz0P38OS1@1y}%EE3>` z=9AK}AQ%#+orek`OK4r7I;2{Ok=6KZJh3sjCWLq~yvicw_1iC>%nOo%e!tKCejmf( z5QD)0ddGVYUJ{^Bn_)22bTW&MuJ_W!$o{Uu-578nN) z9KhjqJ**loAoVOW-boATG1LZPfU{xadgS>4N0$}@d$*olBS!BLWe+0hnn+g*z80Z$ znwjZDX5dLZw6)d%AZsm+MkBJ;Ql96?^PI=yF^3GA$Kx?3lLY_HqGc$}lCwkEDRxhpRnj=9VT4CsLtL)J;sH~@@lLKG<^S|dqx zkT|IE+%S_!`-rk- z8oAkEMt?NH?uQ;l*LoOkqs1b{AfFyPT>RC$HLV4x>vxJ@F#(2%vQ3_b&;3M!kf+KjUBn(oT?fL1DiLJ~?j zXW1Dek_2T5b{0ihz?LPvHB=S_$})#>jBI)p29qMmCyO078YFf+B232cg@yObX_`P$ z8|_w#xfzVSb;qWsI*XICSZbx|xRs@TYHDUFZKVq-xr4_R<{!K7fge73CdT~LU;ofW zYtyxNzPjx#sct1WUpZXx!-qE9UnuP68MvzCP1w(AHRwQ^dCL{Nb~)Zu@ldozNECx? z8pY;dsRYOKE9;y?8NpZQYCM^!ESrAKcRraxyP_z}($W%~bG*E~4CfplJ$e*HQSkEe zG6sVI`u)BdjYeub9_ykgbe`vlwKjRZ#u99OyZ(Q?PZq_>`&Sxyl$s3(pSjX%evQGO zY`$OPvF7uYtcn%y6Bi?tpe0IY(3t~U3)M1EWeF+^^haalc}|nbBrPU6iXummmnf`( zHI|GiE00EmsdlR~m1f!bDs3T2GMSO6Gql=WfPwWJrYE2H*yc}7w~H6s-Kj+?b^pL< z&-jizp0Q0k__zP(?|u5Xn)$*Jm8BDBF+P3-{U1Dl(JL$1Qi{%@u}mq9Z^oP}jkjsQr~2D8;yQ$B8e+I7yhf1< zA%+~pBu(q;Wi-x)7EDRIeY2Z7R18YzS{X={&Q$1=qD6-BZvVLh*O zukQ1_&wi}ueDsew*V_9?*O6>r;}mP&vF|zioOSkId#&&M&ENd~e!uT;n9<96cx%Ba z2E!p*r+qNLDSMj6<8)uR+tzO?e)gyTNN%g*P-%7Kyqmmw?!tQnsvp=1(EB^|UVIAY zEL9qtEVaThgw;m~P=wA4;6g8N(fY+6fdU(HZ9@v47+i^duM~i_T?rb_b<)Vr*pL*40Ow z-87B%-Y3>t{hxl;6(d?&MOt;Jc}bu2h0{S|@S=DGk;QY``RX&Mvyxx|TLZ4kQ=LQshs<69y28c|86 zvl+YFdmuH#;SlF*oQ2+SK&l&x{T*(c?eZPXd9qAWc!#S?=0+lwMk|e!Z7b*~+iGh} zJxBV$y|-3cdKD_+Maa?7O5$y^sIl|Q2ng3=I-PLk%4Js9HkeE%tgf!&eMQ?j;0*x{ zxW^uQjOldh$Kx^k`}@phGqlzs685rb8fC53LI~}gOPq6w5JLBxiPUDwN#Pj{J%#a< z)+4Ts4A&#!*%CE)U@KV*$L^TjJx#$(TFQYDGvXNz)XigKrlasfR#I z@XKOrxK1oGet2tN7>IWy;3NcN?|sS|GQnrBX%Kc09rw6>}=q27^ck#7l zuL7$CRb6B0VO@i>1}#L$SkxLT1=5BT2q{FUUUwEHBw7%BY-b}=74lqcOT@TXX9=B# zhqVrCL&~xDp3!)vtM<9pcpae6oH^6dJd%a#a(iDTAhRsf-uv2nuj4}j>f>jNfB2pg z!~f8i^G$C-I*)RoeGoI8G@7e*#%|*&`rYk7$EGN@?eMcgLB+*v_oS` zo^pcJE1d91FPR#Tp+QMS)LINKqIaP`r0>zs`po8YG#=%e0C?w7-k_DH^bRdV)S3&f zhlqJ0ZI9<;C3&$gVwz=W6-wW(HU4$wEPm;03vvsXs;U}}_f}DW`lp{i_u0$$-S=*) z!FvT^cPfEIOKN91G8PlV)1mIr1||R3aIoP6gzvk`|6{+49A*Szix1)I*IUAfB_Cf4 z=qjeGYSDVEb7TDSW_0o2GDxKiu8oVqg=K$u8T_pu-A28RozSt*y9lNENKq|=JjTue zVlHvaQHcpaS}SxCbWhSWAxTrxB#F;cl0b z=UKJMv}!miOU7BsN}8f^Ty_U2;Td?#sYEkM6YR;`NK?i9!b^-WC{rU%jdl&Gx1lqZ z_oybwx{9d1lL`T%P4^A%NJ~dA_D-#T7$&7LB}Fm47G}RBpxcOf`+W=O_R%&vt69i~ zNkFLnK+PJ1RGM^Iog4oNIkq(M5q4xNdK1=UO3XgD-)JFvfzA!6L<8 z*KHDgTNDsBStgcr9S2Q>XaHMG-^9Jf^*KiF6M##UUuefM-=65l2R8(}^lGp7lNOiP zFYwi#=koue-SkD?7CcJHuyKu6S<2{kNwM@U!LqmgxK#{Six`2;(jkLEim#6_WzO#Q z9xFH8jY&(Uz88W*TGJ@W)v}@#0!%~g9PdA|%71io%8iMo@Pgk>8tlO?-+5=B=PS>P zrb3#U_l;8?Iw>i=WG0|!<{ZcbEi>-9>utDvLfw>DE5n+Mvkez!O4>w!_BRg)n1liY(rTVxW*xsL>E|b(8H<+unrZC(=smh8}%Adc!`>)HrLfrlB|JBc!H37{oBLqbz1j508*qpa(;Q zNSPk(FQIGkKHj<4zpq$Wi1r7^9T8Zb^X+eguO2NoVgb@6upYa>%NxV)%;+|y%ab^` zSiveQy>KlOokYc|R-tO4RuxhQ7Myv|=S~=ohGeRusSfv=(tY;)tJ9C{P4+%8eeT2m zwnxPDPlb|#EK!Vl8LpUdSJvmxecN5!KNKhdX)_}+@a?*y9y^8@X2z4xOC*v374KdT zI)6@Qe5|P{eM2Q256my~CvLClr4rI92g!)PzFlxtW$}V6q<8y+Ay`kM1jYonkx#rH z(r>26%4;pOZLc>G%zx~=-+SxLH=g{_EE|2_!K4^lKcmX$2+^lj4ax>}dShIWT9qN2 zPApZ9w0`39JytrDsCJEWgy8LW-o~X1mnicx+-#kZqzS7l!%(ZJGL8<9m`-MRFHlKF zmh}+6p-fVeH0}C-n3#Rm6%Y8u9By09g(WT=w+!%QZaX|*T&~x#G0}?q4%kZ<_qFa; zdr_lb-1?H86_ycbT7{M!OCSzbJ2WblQgw|x+m%oX&2YFvnizzgJ7;_U2PXT^|F=hf zWBa}DzU^-v9L_&b)i%0-G45Pt4uHL^C?d7h+n1He*q;WpF2F@hKc6x(JIY}P3%aqlFy->@Q^s9uPrjwh|!p_ z8zTL2Sp*0M=Z-sWWwJ2 zX$ER^66m`?r7iwO#_OK-B*IOwhX>qN`KN#W|Ni)o0pg(tZ~5;oUn%}lZJg+mK76|& z4wT!wbk6swXBgNuN(*;+Lw0b0(hccAkglxKKfTGlx#p*8$+XdUsnNHjta`(XC+^_j z#+!L)@(SyNDZ(|Z_bXIy2)++KS=zg_o541-&T-|!C8`GQy5|92KL1##etMIDe(mr} z5BC@U)Sv3#^7hsLAfMYmzqdd6rrEp{b<=dJwAO_itkhyhE=0)Z4F`#?@uCzGgpK7o zlC;;udq-1McmztO=p-XaMDUfxf_}2b2JyzC!aK7R6bbjj$m@I3XM>gEHis>y!9KK|f_QTDc}zzXU6K>~{hXfA??y!tHrJ{|krv(?7kl zKi|xYN*HTnvl~NWY*z%@Hu^DLAi!d6usAKB8rY2>HLJ9a0R+q1i5t0IyNrpQo` z-dbs?!hR&W7NPZnTL(7vIC{?OkzbH7NEzfu_e@9s_WbW$eh;U==#LCa8%ZbXBNz0ZQ;S%_8z@P<0Q zs>-7_Lnz@-v#>iiO-&gs=ePb_?;+1;Ob(~a@;!Q4!imihx88nt6t1ucp)vKGd^Tlw zcaL)yENkl{Ci@vpossr>2q|dF5^vj<2*>^0mW1f8wTfVl6r5kOQSB}}NfW#a6S$?1 z1S~@Ah>pWj-j>;wIfXhCcA;j?h(_gXL;|M zXE-{6*FBtTINaHz8cS;H7>rjsm&*f5l5ukVv_E<3jt>udtAGAlczq+5Lx^nj=PqBp z^n-^7hd37^BUo&}001BWNklM|tNBuSsS z5*XVcRf^V{y3Wb-3Xdd7Qml2n`1?7sg%(kVJo*rvi-N52=_GcTP>o6N43EN=W5Xstr3Z9K^pEZri)yrY=sw5)DZ7uSFtI$*StQsyPbS)@$qBBQNE zZUNm&gNayU7;4%(FfCSlP1frpyrHa0PTq72S|todW16}_D21sk^Z6916m?x8P?W_C zFyJK4McwJ>g?cAed*0fh=+(FvoK z5lu74G!wS3T;!#fE>cucP1Sp>_Z;nA;mBEDteY+YsAXgY^7!2IBI*i;>1Ep$jZg@T z2Q9j*M+}P`iBeATiiYcO%)`-;&ih~hfm>;pZyF;>Znvb5{=1}M$5fL|p!_k=g z-ua%-7BYNj|GMIN0InaK^27+=2IwG|liR zs?xB1^)kcp3f6jx*#u)8))rL79GwipIoXm{KBAQYfS4{y*mw0UiRr0M*>;q#XrD8Z7gsSwqp>C=L{piDWK1L&oWg0b3x43$xN$AEPIx+jjwQZM@ zwp~TE7$j*AAtm>{<9?JeFxllDS6<*JZcF%NdXm5S#H$?2jC3$SrF{myA-CUs@5SND zO+WO%eCQWG^QM6MCIJl~9(m-qS9W%u{rSVA{U0)oS)b3Y4xKU5)g?3))_^sJ@py$^ zFA4d@1m$+?10i134Ru{%jiah78tZ6Gu;tb|j0RzBCoR&6b-5^CYv z5NCT~dxH@YLtf-a9BC@K>z;2yCMkP6R~Zh5j5oGujG?ZASmbEj$6Cw&{*2*x71NZ= zXLE#*TzL6;r0^u!kX~QmT#1r~=bn9rmtWqdv2@G{eo<7~x+hXfvNW(Y=2#{8wQ?i6 zS2_k50f8n|3axaP4$$SSbQo?YONjEOSy+khxbtoXy*|QO?ws$jvHb=9UwJdH?j4Zz z$Bfpt%KqxsKi^uv&5sAGfAyDt`OIhEG)Uj474kY;_Pf>Z^zBT01-`b!d&)VQe2>U2kRDcG-~U*Kup^w2m~@(+ZNbuzDJ_N#x~?WC}#62Oc2>7oy+d{HrnP~P%V`r z)HsT`ltQRilsW+bO-1c_JzaafX&PYI9d&l#@0n6yIAa#pc#YPMtax@}%<_&-|;;F}&q%?CtM! z&o{s4@v`XunU8(!*Pi+^u?f669(sAiPk4rnjgRWlXk)aOTgu#^t>~m@y_BI1sgrmw zu?}BV25&3jlRiaxfVGw+&FGIuXr1AF5GJ8%!ZPJNLWJC1uSDpoq$P<8oUqaYq1xvu zy)>cMOAs-iLF*K$5~R{Wg^3XTb52B|86U&RvID)dj!{32S%7V%DvEVSFfKG;1D}qw z-ICn8BWcnW6L{*X2yAZT-BqkmS6-l_41y4f&9xCL;~`S@xUzSEF&=9jd0{y^+9OL7 z`n`;zoZ&@9RnPH8^7+p{Ph;Bx0Xo4;BDcF72G=o)SQb(LucdpA(UtM*Yr(wqeOGej z+hShPzN55ke*mR&P4Lwz2i!|N5`}(pLm#`0@eW z4nG==ntp%%C8dkIdU_-z!>P*pFFL6&;nhVa`xk{?y(9etz7la?nqKMJYWfnvt^bjEvOnDgG0pY?V!Lz$lu)BSg zBny)@%@k5AX0r+N`J6&J3JtyC23KCaOw$O8s-TJ4ijidNHqR=ae-fjK?HKc*KMGe+>BQ8*AsSxK5V2{)<(>xQ&_y~v9j_-03*_wEZm*2`Hnw}JbE49_+9U~ z_xt|$U;Cw}zd}p`Upb(8=%I%uXU=^5zPs+5otnS;!aJ|Lvh%qQ{nlUGzt*v5PJZWy zoxQkL4l_7>7Qf4PYG6I`SjaYYd5q>m7=d-XD=D3C%!vO`(HaAm-YXJ6@3 zSX-ckeL`^EQk?~!y3LJnma?is5}DtmCLB}D{O)T#{X_j@IdN}vMGtXwTYnP#X8RIJkG{BiNf7AdMYOO?DL;vRKJaE<4)?`BYH^+2M6TyNaG2GmL5GnB58K0 zrdKKQIo4WwX@-@G+6E2k;dqPTU>MYwaICJM=EfWDLJGm*;Q>`yq9imnXLn}@l_soh zZ2^MAD`)Zfgu+@91bD%Uu)((#jtW5`G(t%#C)vZJREGCKRt(Yl#fH^E#+`TH27O6w z;B%k;9fb7gG@&SG6h%c{*4U=uy|>-XcGYm@=n!WGgVocNbS8VB$us6^GK3H@P|>`J^um_0zGEN zGE`-OH4WAo4r;+?zi<^7#Z@E@ydmr9z*R?A#dyzI_bL+y7iT$1nlh+r&R@JhZK5!` z_s~?KIzD!n3jK*f@FhvoV+~G4aIUkm+4qdIuu>riU{D{lh>Ac19{_Nc!-_; z4&^kX5sE_h$*pF!vdo$(`(??_(S&(bb1<9H(+Pv&kcavu_tx{E{6nZ@s1TepP*{t! zAk#6;;3SF7kw{jQ#1AyKzZO{%iAppoNsu}u=i4f0`uvlOWFJ;fa&_+#4nZOnmurC$ zios}=G)>q(oT8F765oW{J#5tB_Th{K2q{RCltiZ_UH)?rpT~Qex*{(MjB&KGS}pjx ze=REkOQ2lPkDcq_7iqC=T58KbL;IRxw9}${wfMU>CBVC&20Nb~aPI6YAuAJ*QvRE5 zp*7n-f^mV>8(Y|2G0VFbuIxm;#|4vPayk#Mkp}`D19U1}gqO0jhAE zt3m@!yN@#h+X$M*Vj5`bjIv27nm$G4C@YU^G)dj3EDc3tsEwtx4&MlzlDKSzVr7#= zr>x5a8`%@%1GVMwfun9j2p-h}Yi7K+InRR|`{e$Rf?Xy<%gc@C^Hq;pu66K{!2NgM z5yJPemrG+Trm@s@%_}cI$26ZtFfUu>NO1^xuFC5=ul$;$H%7Qr2q&Yd@30$~igqKd z;`d8#MZ7Pbh2_SFD)V;3*Mfd|BPa+wJ@^jH9gT;_nTCs(&vW(i6+9ZHqt>Vp|KD@6>)X{dY*!&#}~r4Qqu zdFIiYQ2TiRyz-`R;KL8A2hWySSzcLbS~|-)Epzc5~$g9DX0}9wISG&IOOPWeE7qU?!M{s`x4`8=W^Ji zABhnSmXJhn!X&=-{NsNjxV(8216kA8hJm*9lwqVSnRaB-Fwl-Hg)|lPQ-w|(T8FMm z0gQ3U3>}N2^XZNM?_7`57H@pWmp^uX z`Ol0u?c*1O%~v|cy?c0Yg1r}J{NnlhIXAoszw%w+3Y^Ko7PxwjYo@5?2ydoHTOe&k z<_#H^o^%YAWh5;F|-T($Le6Oc@5LCrdn83R#+j>K847jFkk@`rNJM z7k06t_&8}|AjRxAU?ijozBZV{IoS;Z)FAqr*5kgo!~8%{7)RwLFRBfGb>)68ZC~Vp z{b%|9K}}ykPeQ67)8LdO7a1QuaJ*;}HgCM0=ZCj3olm)N@jUag2-5?d$bkUlR+x zA};(p!dK(ArNAN->mp+zc*pS>kmK*#SF5cpee(l#XNMU4f)6o)=ZgJ zM;sJ0nsS1v4xpLh%nWG@d@~O(;&P;$K{G|$0__dj8+v&9zM?NJt6H%kJU{S`n$45Z z-)=XcKsVRh@V6{TP8jf6=Q5=y#!IvmP*pgSfDD@};TAaATC{N>S9y?5VMUNO*VX6Y~uk2Cj>&GEXR&OLP*-Z2|OU4pF~-V}IKkXJLN)fAcua`qYS zu0PG{iA&(Ch5z1;E-}JDvjg)25(T{!KW`9b2uL@#6R z9i@diO^-9lV*HadO zjj*kIu*BMBBZ2A*X1g&7Uct#*B(nq0(NziQ5G99bwqjX6*q5HGC=tSgQ-c>t^y@?A#^>h_D;3Il<{tJvwVAuFpcXD=z)3p`-N);3zi^KW1YgJ z;Q0%hVr?CnehX<|U`y~82J3>PCrC4B8qa7`;w+3dpt?-#Q|P-gp?1&KRB*WK8LkJE zdjY0~Dv!jS2OHT!DG4%FlP~ZsH_gHucg39TIkun1g2+QoXUnpvG+1k^Lc^iG64rb8 zroz`cenbIMV3545PBGr-Ge5e>%nP0@Brn&J1E)BZ!1t`zygTvaUeMrBZR-Xf68RCy z6|MBoJ^9QRegj@_Cf*vy$8`s^wue8Aa|^U}0h16cakbzJ`5N<)VR++v=&uA8VZ0%j z9Dp?rDZyCC2A=uEQ_Pk)>llYw=tn?0037s3g5jE=H-y=NXS5-xN{=-Q%sLNt@+>FZ zA-Aj+OVl5WNLk2>1m6UoV4wrNhz()MU7)bw9j=(5h8hTY)Iqc@#~>p+!Iecv2(re(;wDx zT>(A)M}P4od!PEAZpm&($8ZR)oG&=Pb|6#r7k?_SYm3=U>I~gy6zM*Sl{K! zhc*_{&J~pgtA2RdF`sx2cLdoWSm$&AO|ukhiC%>{dW!o;HCj~R#M%SefQ=WSpPM&e zQy6D3pM>8#fu92geB%*~2~Ui}lg5yAU?MIy8C8Mz7FD3;3*@Jb#U+(ol3s~EdLHonOcug>g z{iRno1=D@s(a*wrIC_%%PcHI#!w^fBSpG#NOXi zj0Zk6JHO?dB`OhIc;3=q5ghG!=5^@V0Z^8Z&pfh?b$E}GbP}yHzsO2)k+-i^3l}4v zrYmcN)KD3OOu_de$Q?A`_dskJ7&!ba1Vu!q!8Tw*v@&>Ff*Q@$#^QC2mx^*e!#PKq z_RuN`V&sXUsVatRtL&PJ6+Pp~rlf|K{O(y8{8lieYZz*@fmDygPtB?wtG}E!FibPhW%G6Am0X^M2uw;o8Ny$}A-UR5$J3wDc3G`$|>{4l1qEHc%IdVbzn2FmfNx#W{o zkGIM3=J$T*L*M(+fAQ&$Ua$M}jWVtqpmlTUhlHt;=tSa;UCP4I!sMI)H|l-do+8Iy}O3NfZ|tIWlixf@W65rr60$sty+VABy!k62Yb>~?}c zu>G_}Bm$v8r=V0wn8{>tXS9d<;0YdBorbg@?`cc*LEvhM)S$8i?@}-hoC389O5?Oa z*$OcDwP>+by8^KkWD)Gm3mSxc%yGB=vijVZ(mIb%w(8J?>ZaT9IgFofS4wGTFq7?@lLNH3^fb z%z0;3^1cmC%m05jMXkwO~WRAWJ#bPfePNU-)Y8 z%{St>E*9F?X%ia2S=!3yAW^FzjZu;;1}w5HxD&CNx9|?1B;Xw)i*CF*cgUoe`NrrN2DqA z1b(LQO^np^Q#i^ITce;gF`Ks$mPK5p3(rGmvAsj+81YQopT|8~j2Kc{yid9)C<5}r z;-&VL?*E>3!=HWh?1fINq@S$hM)iwARartKytkruo+>mr^LMX|{;4yApZvjp@R9AW z_P%_h4)Ml^ytz^Rx9|V!$@InlQuyc#w=Sw*0!j-Oe5?gzvGhlVAb_m}KA=SCgsNkX zL|0=NCrc}E5_Raph($^qy zw6L(!FMckF6QezDspFi`;b+<`{eAn|OYh~|TEaFkBo>pgv)L zmyK>wx1zK!xLZQ5z=Es5T0w5cUtImo7w!|+uespYS{1?I2s_?lVhKY$?~xsT-D_0^$B z*;wo8t)Wh~oVF*l5GN3BOX5!`IA-&wvigh9VP)U~vgz!QN;q8)vZvoyubqmWZ ze9UtuSn$S#jiFERjik1{D|Nl~j+Ni~?A{;vm3V7(ir5t>X&FTAiqNF6IzM2L7Q?P|OEk*U7r z=eB Date: Mon, 11 Jun 2018 18:30:40 +0200 Subject: [PATCH 6/7] PresetUpdater: Fix of the fix --- xs/src/slic3r/Utils/PresetUpdater.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/xs/src/slic3r/Utils/PresetUpdater.cpp b/xs/src/slic3r/Utils/PresetUpdater.cpp index 80651aece..f34fc4c19 100644 --- a/xs/src/slic3r/Utils/PresetUpdater.cpp +++ b/xs/src/slic3r/Utils/PresetUpdater.cpp @@ -440,7 +440,9 @@ void PresetUpdater::priv::copy_file(const fs::path &source, const fs::path &targ static const auto perms = fs::owner_read | fs::owner_write | fs::group_read | fs::others_read; // aka 644 // Make sure the file has correct permission both before and after we copy over it - fs::permissions(target, perms); + if (fs::exists(target)) { + fs::permissions(target, perms); + } fs::copy_file(source, target, fs::copy_option::overwrite_if_exists); fs::permissions(target, perms); } From a194d28b1429b7ceead95465e4e044f5526555aa Mon Sep 17 00:00:00 2001 From: Vojtech Kral Date: Mon, 11 Jun 2018 18:24:13 +0200 Subject: [PATCH 7/7] ConfigWizard: Use scrollbars on smaller screens --- xs/src/slic3r/GUI/ConfigWizard.cpp | 43 ++++++++++++++++------ xs/src/slic3r/GUI/ConfigWizard_private.hpp | 5 ++- xs/src/slic3r/GUI/GUI.cpp | 9 +++++ xs/src/slic3r/GUI/GUI.hpp | 3 ++ 4 files changed, 46 insertions(+), 14 deletions(-) diff --git a/xs/src/slic3r/GUI/ConfigWizard.cpp b/xs/src/slic3r/GUI/ConfigWizard.cpp index 996959b2e..aed0c3534 100644 --- a/xs/src/slic3r/GUI/ConfigWizard.cpp +++ b/xs/src/slic3r/GUI/ConfigWizard.cpp @@ -59,7 +59,7 @@ PrinterPicker::PrinterPicker(wxWindow *parent, const VendorProfile &vendor, cons auto *sizer = new wxBoxSizer(wxVERTICAL); auto *printer_grid = new wxFlexGridSizer(models.size(), 0, 20); - printer_grid->SetFlexibleDirection(wxVERTICAL); + printer_grid->SetFlexibleDirection(wxVERTICAL | wxHORIZONTAL); sizer->Add(printer_grid); auto namefont = wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT); @@ -136,7 +136,7 @@ void PrinterPicker::on_checkbox(const Checkbox *cbox, bool checked) // Wizard page base ConfigWizardPage::ConfigWizardPage(ConfigWizard *parent, wxString title, wxString shortname) : - wxPanel(parent), + wxPanel(parent->p->hscroll), parent(parent), shortname(std::move(shortname)), p_prev(nullptr), @@ -182,8 +182,8 @@ ConfigWizardPage* ConfigWizardPage::chain(ConfigWizardPage *page) void ConfigWizardPage::append_text(wxString text) { auto *widget = new wxStaticText(this, wxID_ANY, text, wxDefaultPosition, wxDefaultSize, wxALIGN_LEFT); - widget->Wrap(CONTENT_WIDTH); - widget->SetMinSize(wxSize(CONTENT_WIDTH, -1)); + widget->Wrap(WRAP_WIDTH); + widget->SetMinSize(wxSize(WRAP_WIDTH, -1)); append(widget); } @@ -285,7 +285,7 @@ PageUpdate::PageUpdate(ConfigWizard *parent) : const auto text_bold = _(L("Updates are never applied without user's consent and never overwrite user's customized settings.")); auto *label_bold = new wxStaticText(this, wxID_ANY, text_bold); label_bold->SetFont(boldfont); - label_bold->Wrap(CONTENT_WIDTH); + label_bold->Wrap(WRAP_WIDTH); append(label_bold); append_text(_(L("Additionally a backup snapshot of the whole configuration is created before an update is applied."))); @@ -622,7 +622,7 @@ void ConfigWizard::priv::load_vendors() catch (const std::exception& e) { BOOST_LOG_TRIVIAL(error) << boost::format("Error loading vendor bundle %1%: %2%") % it->path() % e.what(); } - + } } @@ -668,7 +668,7 @@ void ConfigWizard::priv::index_refresh() void ConfigWizard::priv::add_page(ConfigWizardPage *page) { - topsizer->Add(page, 0, wxEXPAND); + hscroll_sizer->Add(page, 0, wxEXPAND); auto *extra_buttons = page->extra_buttons(); if (extra_buttons != nullptr) { @@ -795,12 +795,19 @@ ConfigWizard::ConfigWizard(wxWindow *parent, RunReason reason) : p->index = new ConfigWizardIndex(this); auto *vsizer = new wxBoxSizer(wxVERTICAL); - p->topsizer = new wxBoxSizer(wxHORIZONTAL); + auto *topsizer = new wxBoxSizer(wxHORIZONTAL); auto *hline = new wxStaticLine(this); p->btnsizer = new wxBoxSizer(wxHORIZONTAL); - p->topsizer->Add(p->index, 0, wxEXPAND); - p->topsizer->AddSpacer(INDEX_MARGIN); + // Initially we _do not_ SetScrollRate in order to figure out the overall width of the Wizard without scrolling. + // Later, we compare that to the size of the current screen and set minimum width based on that (see below). + p->hscroll = new wxScrolledWindow(this); + p->hscroll_sizer = new wxBoxSizer(wxHORIZONTAL); + p->hscroll->SetSizer(p->hscroll_sizer); + + topsizer->Add(p->index, 0, wxEXPAND); + topsizer->AddSpacer(INDEX_MARGIN); + topsizer->Add(p->hscroll, 1, wxEXPAND); p->btn_prev = new wxButton(this, wxID_BACKWARD); p->btn_next = new wxButton(this, wxID_FORWARD); @@ -827,13 +834,25 @@ ConfigWizard::ConfigWizard(wxWindow *parent, RunReason reason) : ->chain(p->page_diams) ->chain(p->page_temps); - vsizer->Add(p->topsizer, 1, wxEXPAND | wxALL, DIALOG_MARGIN); + vsizer->Add(topsizer, 1, wxEXPAND | wxALL, DIALOG_MARGIN); vsizer->Add(hline, 0, wxEXPAND); vsizer->Add(p->btnsizer, 0, wxEXPAND | wxALL, DIALOG_MARGIN); p->set_page(p->page_welcome); + SetSizer(vsizer); SetSizerAndFit(vsizer); - SetMinSize(GetSize()); + + // We can now enable scrolling on hscroll + p->hscroll->SetScrollRate(30, 30); + // Compare current ("ideal") wizard size with the size of the current screen. + // If the screen is smaller, resize wizrad to match, which will enable scrollbars. + auto wizard_size = GetSize(); + unsigned width, height; + GUI::get_current_screen_size(width, height); + wizard_size.SetWidth(std::min(wizard_size.GetWidth(), (int)(width - 2 * DIALOG_MARGIN))); + wizard_size.SetHeight(std::min(wizard_size.GetHeight(), (int)(height - 2 * DIALOG_MARGIN))); + SetMinSize(wizard_size); + Fit(); p->btn_prev->Bind(wxEVT_BUTTON, [this](const wxCommandEvent &evt) { this->p->go_prev(); }); p->btn_next->Bind(wxEVT_BUTTON, [this](const wxCommandEvent &evt) { this->p->go_next(); }); diff --git a/xs/src/slic3r/GUI/ConfigWizard_private.hpp b/xs/src/slic3r/GUI/ConfigWizard_private.hpp index 474394bc3..72cb88655 100644 --- a/xs/src/slic3r/GUI/ConfigWizard_private.hpp +++ b/xs/src/slic3r/GUI/ConfigWizard_private.hpp @@ -26,7 +26,7 @@ namespace Slic3r { namespace GUI { enum { - CONTENT_WIDTH = 500, + WRAP_WIDTH = 500, DIALOG_MARGIN = 15, INDEX_MARGIN = 40, @@ -196,7 +196,8 @@ struct ConfigWizard::priv std::unordered_map vendors_rsrc; std::unique_ptr custom_config; - wxBoxSizer *topsizer = nullptr; + wxScrolledWindow *hscroll = nullptr; + wxBoxSizer *hscroll_sizer = nullptr; wxBoxSizer *btnsizer = nullptr; ConfigWizardPage *page_current = nullptr; ConfigWizardIndex *index = nullptr; diff --git a/xs/src/slic3r/GUI/GUI.cpp b/xs/src/slic3r/GUI/GUI.cpp index 3a8f2163f..974c554b6 100644 --- a/xs/src/slic3r/GUI/GUI.cpp +++ b/xs/src/slic3r/GUI/GUI.cpp @@ -37,6 +37,7 @@ #include #include #include +#include #include "wxExtensions.hpp" @@ -933,6 +934,14 @@ int get_export_option(wxFileDialog* dlg) } +void get_current_screen_size(unsigned &width, unsigned &height) +{ + wxDisplay display(wxDisplay::GetFromWindow(g_wxMainFrame)); + const auto disp_size = display.GetClientArea(); + width = disp_size.GetWidth(); + height = disp_size.GetHeight(); +} + void about() { AboutDialog dlg; diff --git a/xs/src/slic3r/GUI/GUI.hpp b/xs/src/slic3r/GUI/GUI.hpp index 2dc18ae3b..285354446 100644 --- a/xs/src/slic3r/GUI/GUI.hpp +++ b/xs/src/slic3r/GUI/GUI.hpp @@ -169,6 +169,9 @@ wxButton* get_wiping_dialog_button(); void add_export_option(wxFileDialog* dlg, const std::string& format); int get_export_option(wxFileDialog* dlg); +// Returns the dimensions of the screen on which the main frame is displayed +void get_current_screen_size(unsigned &width, unsigned &height); + // Display an About dialog extern void about(); // Ask the destop to open the datadir using the default file explorer.