From c508bcffe69274407c88414e96fd0dd63da54eee Mon Sep 17 00:00:00 2001 From: itdominator <1itdominator@gmail.com> Date: Tue, 21 Feb 2023 14:23:39 -0600 Subject: [PATCH] Changed how deb packaging is setup, deleted unused dirs, updated readme --- README.md | 7 + bin/REMOVE.txt | 1 - bin/solarfm-0-0-1-x64.deb | Bin 132972 -> 0 bytes plugins/searcher/mixins/grep_search_mixin.py | 3 +- plugins/searcher/utils/search.py | 31 +- src/debs/{chownAll.sh => chown_all.sh} | 0 src/debs/solarfm-0-0-1-x64/DEBIAN/postrm | 9 +- src/debs/solarfm-0-0-1-x64/bin/solarfm | Bin 14416 -> 14392 bytes .../opt/SolarFM/__builtins__.py | 74 - .../solarfm-0-0-1-x64/opt/SolarFM/__init__.py | 3 - .../solarfm-0-0-1-x64/opt/SolarFM/__main__.py | 42 - src/debs/solarfm-0-0-1-x64/opt/SolarFM/app.py | 55 - .../opt/SolarFM/context/__init__.py | 3 - .../opt/SolarFM/context/controller.py | 171 -- .../opt/SolarFM/context/controller_data.py | 157 -- .../opt/SolarFM/context/mixins/__init__.py | 3 - .../context/mixins/exception_hook_mixin.py | 62 - .../SolarFM/context/mixins/show_hide_mixin.py | 147 -- .../opt/SolarFM/context/mixins/ui/__init__.py | 3 - .../SolarFM/context/mixins/ui/pane_mixin.py | 59 - .../SolarFM/context/mixins/ui/tab_mixin.py | 202 -- .../mixins/ui/widget_file_action_mixin.py | 457 ---- .../SolarFM/context/mixins/ui/widget_mixin.py | 218 -- .../SolarFM/context/mixins/ui/window_mixin.py | 256 --- .../opt/SolarFM/context/mixins/ui_mixin.py | 14 - .../opt/SolarFM/context/signals/__init__.py | 3 - .../context/signals/ipc_signals_mixin.py | 29 - .../context/signals/keyboard_signals_mixin.py | 114 - .../opt/SolarFM/ipc_server.py | 90 - .../opt/SolarFM/plugins/__init__.py | 3 - .../opt/SolarFM/plugins/plugins.py | 83 - .../opt/SolarFM/shellfm/__init__.py | 3 - .../opt/SolarFM/shellfm/windows/__init__.py | 3 - .../opt/SolarFM/shellfm/windows/controller.py | 185 -- .../SolarFM/shellfm/windows/tabs/__init__.py | 3 - .../shellfm/windows/tabs/icons/__init__.py | 3 - .../shellfm/windows/tabs/icons/icon.py | 82 - .../windows/tabs/icons/mixins/__init__.py | 3 - .../tabs/icons/mixins/desktopiconmixin.py | 62 - .../tabs/icons/mixins/videoiconmixin.py | 53 - .../tabs/icons/mixins/xdg/BaseDirectory.py | 160 -- .../windows/tabs/icons/mixins/xdg/Config.py | 39 - .../tabs/icons/mixins/xdg/DesktopEntry.py | 435 ---- .../tabs/icons/mixins/xdg/Exceptions.py | 84 - .../tabs/icons/mixins/xdg/IconTheme.py | 445 ---- .../windows/tabs/icons/mixins/xdg/IniFile.py | 419 ---- .../windows/tabs/icons/mixins/xdg/Locale.py | 79 - .../windows/tabs/icons/mixins/xdg/Menu.py | 1125 ---------- .../tabs/icons/mixins/xdg/MenuEditor.py | 541 ----- .../windows/tabs/icons/mixins/xdg/Mime.py | 780 ------- .../tabs/icons/mixins/xdg/RecentFiles.py | 181 -- .../windows/tabs/icons/mixins/xdg/__init__.py | 3 - .../windows/tabs/icons/mixins/xdg/util.py | 75 - .../opt/SolarFM/shellfm/windows/tabs/path.py | 62 - .../opt/SolarFM/shellfm/windows/tabs/tab.py | 246 -- .../shellfm/windows/tabs/utils/__init__.py | 3 - .../shellfm/windows/tabs/utils/filehandler.py | 86 - .../shellfm/windows/tabs/utils/launcher.py | 114 - .../shellfm/windows/tabs/utils/settings.py | 100 - .../opt/SolarFM/shellfm/windows/window.py | 87 - .../opt/SolarFM/trasher/__init__.py | 3 - .../opt/SolarFM/trasher/trash.py | 46 - .../opt/SolarFM/trasher/xdgtrash.py | 161 -- .../opt/SolarFM/utils/__init__.py | 3 - .../opt/SolarFM/utils/logger.py | 56 - .../opt/SolarFM/utils/settings.py | 102 - .../usr/share/applications}/solarfm.desktop | 5 +- .../usr/share/solarfm/Main_Window.glade | 1998 ++--------------- .../usr/share/solarfm/contexct_menu.json | 17 + .../usr/share/solarfm/fileicons/3g2.png | Bin 0 -> 3780 bytes .../usr/share/solarfm/fileicons/3gp.png | Bin 0 -> 3771 bytes .../usr/share/solarfm/fileicons/ai.png | Bin 0 -> 3547 bytes .../usr/share/solarfm/fileicons/air.png | Bin 0 -> 3170 bytes .../usr/share/solarfm/fileicons/asf.png | Bin 0 -> 3126 bytes .../usr/share/solarfm/fileicons/avi.png | Bin 0 -> 3208 bytes .../usr/share/solarfm/fileicons/bib.png | Bin 0 -> 3531 bytes .../usr/share/solarfm/fileicons/cls.png | Bin 0 -> 1763 bytes .../usr/share/solarfm/fileicons/csv.png | Bin 0 -> 4519 bytes .../usr/share/solarfm/fileicons/deb.png | Bin 0 -> 2915 bytes .../usr/share/solarfm/fileicons/djvu.png | Bin 0 -> 4973 bytes .../usr/share/solarfm/fileicons/dmg.png | Bin 0 -> 2523 bytes .../usr/share/solarfm/fileicons/doc.png | Bin 0 -> 1536 bytes .../usr/share/solarfm/fileicons/docx.png | Bin 0 -> 4144 bytes .../usr/share/solarfm/fileicons/dwf.png | Bin 0 -> 4319 bytes .../usr/share/solarfm/fileicons/dwg.png | Bin 0 -> 3107 bytes .../usr/share/solarfm/fileicons/eps.png | Bin 0 -> 2299 bytes .../usr/share/solarfm/fileicons/epub.png | Bin 0 -> 2772 bytes .../usr/share/solarfm/fileicons/exe.png | Bin 0 -> 2651 bytes .../usr/share/solarfm/fileicons/f.png | Bin 0 -> 2050 bytes .../usr/share/solarfm/fileicons/f77.png | Bin 0 -> 2187 bytes .../usr/share/solarfm/fileicons/f90.png | Bin 0 -> 2212 bytes .../usr/share/solarfm/fileicons/flac.png | Bin 0 -> 1121 bytes .../usr/share/solarfm/fileicons/flv.png | Bin 0 -> 3181 bytes .../usr/share/solarfm/fileicons/gif.png | Bin 0 -> 2802 bytes .../usr/share/solarfm/fileicons/gz.png | Bin 0 -> 1480 bytes .../usr/share/solarfm/fileicons/ico.png | Bin 0 -> 3130 bytes .../usr/share/solarfm/fileicons/indd.png | Bin 0 -> 4031 bytes .../usr/share/solarfm/fileicons/iso.png | Bin 0 -> 2704 bytes .../usr/share/solarfm/fileicons/jpeg.png | Bin 0 -> 3319 bytes .../usr/share/solarfm/fileicons/jpg.png | Bin 0 -> 3319 bytes .../usr/share/solarfm/fileicons/log.png | Bin 0 -> 2486 bytes .../usr/share/solarfm/fileicons/m4a.png | Bin 0 -> 3806 bytes .../usr/share/solarfm/fileicons/m4v.png | Bin 0 -> 3178 bytes .../usr/share/solarfm/fileicons/midi.png | Bin 0 -> 3511 bytes .../usr/share/solarfm/fileicons/mkv.png | Bin 0 -> 1915 bytes .../usr/share/solarfm/fileicons/mov.png | Bin 0 -> 3197 bytes .../usr/share/solarfm/fileicons/mp3.png | Bin 0 -> 4064 bytes .../usr/share/solarfm/fileicons/mp4.png | Bin 0 -> 3156 bytes .../usr/share/solarfm/fileicons/mpeg.png | Bin 0 -> 3195 bytes .../usr/share/solarfm/fileicons/mpg.png | Bin 0 -> 3195 bytes .../usr/share/solarfm/fileicons/msi.png | Bin 0 -> 2655 bytes .../usr/share/solarfm/fileicons/odp.png | Bin 0 -> 2895 bytes .../usr/share/solarfm/fileicons/ods.png | Bin 0 -> 2435 bytes .../usr/share/solarfm/fileicons/odt.png | Bin 0 -> 3701 bytes .../usr/share/solarfm/fileicons/oga.png | Bin 0 -> 3163 bytes .../usr/share/solarfm/fileicons/ogg.png | Bin 0 -> 5100 bytes .../usr/share/solarfm/fileicons/ogv.png | Bin 0 -> 5921 bytes .../usr/share/solarfm/fileicons/pdf.png | Bin 0 -> 3408 bytes .../usr/share/solarfm/fileicons/png.png | Bin 0 -> 3014 bytes .../usr/share/solarfm/fileicons/pps.png | Bin 0 -> 3178 bytes .../usr/share/solarfm/fileicons/ppsx.png | Bin 0 -> 3306 bytes .../usr/share/solarfm/fileicons/ppt.png | Bin 0 -> 3390 bytes .../usr/share/solarfm/fileicons/pptx.png | Bin 0 -> 3942 bytes .../usr/share/solarfm/fileicons/psd.png | Bin 0 -> 3898 bytes .../usr/share/solarfm/fileicons/pub.png | Bin 0 -> 3822 bytes .../usr/share/solarfm/fileicons/py.png | Bin 0 -> 2431 bytes .../usr/share/solarfm/fileicons/qt.png | Bin 0 -> 3731 bytes .../usr/share/solarfm/fileicons/ra.png | Bin 0 -> 3141 bytes .../usr/share/solarfm/fileicons/ram.png | Bin 0 -> 3269 bytes .../usr/share/solarfm/fileicons/rar.png | Bin 0 -> 3168 bytes .../usr/share/solarfm/fileicons/rm.png | Bin 0 -> 3185 bytes .../usr/share/solarfm/fileicons/rpm.png | Bin 0 -> 3278 bytes .../usr/share/solarfm/fileicons/rtf.png | Bin 0 -> 2400 bytes .../usr/share/solarfm/fileicons/rv.png | Bin 0 -> 3136 bytes .../usr/share/solarfm/fileicons/skp.png | Bin 0 -> 3208 bytes .../usr/share/solarfm/fileicons/spx.png | Bin 0 -> 1283 bytes .../usr/share/solarfm/fileicons/sql.png | Bin 0 -> 1883 bytes .../usr/share/solarfm/fileicons/sty.png | Bin 0 -> 1301 bytes .../usr/share/solarfm/fileicons/tar.png | Bin 0 -> 2781 bytes .../usr/share/solarfm/fileicons/tex.png | Bin 0 -> 2936 bytes .../usr/share/solarfm/fileicons/tgz.png | Bin 0 -> 1757 bytes .../usr/share/solarfm/fileicons/tiff.png | Bin 0 -> 3127 bytes .../usr/share/solarfm/fileicons/ttf.png | Bin 0 -> 2699 bytes .../usr/share/solarfm/fileicons/txt.png | Bin 0 -> 1734 bytes .../usr/share/solarfm/fileicons/vob.png | Bin 0 -> 3184 bytes .../usr/share/solarfm/fileicons/wav.png | Bin 0 -> 3169 bytes .../usr/share/solarfm/fileicons/wmv.png | Bin 0 -> 3205 bytes .../usr/share/solarfm/fileicons/xls.png | Bin 0 -> 4439 bytes .../usr/share/solarfm/fileicons/xlsx.png | Bin 0 -> 4560 bytes .../usr/share/solarfm/fileicons/xml.png | Bin 0 -> 1596 bytes .../usr/share/solarfm/fileicons/xpi.png | Bin 0 -> 4283 bytes .../usr/share/solarfm/fileicons/zip.png | Bin 0 -> 2099 bytes .../usr/share/solarfm/icons/solarfm.png | Bin 40783 -> 16172 bytes .../usr/share/solarfm/key-bindings.json | 23 + .../usr/share/solarfm/settings.json | 29 +- .../share/solarfm/ui_widgets/about_ui.glade | 390 ++++ .../solarfm/ui_widgets/appchooser_ui.glade | 75 + .../solarfm/ui_widgets/file_exists_ui.glade | 337 +++ .../solarfm/ui_widgets/new_file_ui.glade | 186 ++ .../share/solarfm/ui_widgets/rename_ui.glade | 241 ++ .../solarfm/ui_widgets/save_load_ui.glade | 65 + .../solarfm-0.0.1/SolarFM/tests/__init__.py | 3 - .../solarfm-0.0.1/SolarFM_exec_bin.cpp | 4 +- .../solarfm-0.0.1/clear_pycache_dirs.sh | 12 - .../{compileBin.sh => compile_bin.sh} | 0 .../usr/share/applications/solarfm.desktop | 11 + 166 files changed, 1643 insertions(+), 9884 deletions(-) delete mode 100644 bin/REMOVE.txt delete mode 100644 bin/solarfm-0-0-1-x64.deb rename src/debs/{chownAll.sh => chown_all.sh} (100%) mode change 100644 => 100755 src/debs/solarfm-0-0-1-x64/bin/solarfm delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/__builtins__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/__init__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/__main__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/app.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/__init__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/controller.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/controller_data.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/mixins/__init__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/mixins/exception_hook_mixin.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/mixins/show_hide_mixin.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/mixins/ui/__init__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/mixins/ui/pane_mixin.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/mixins/ui/tab_mixin.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/mixins/ui/widget_file_action_mixin.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/mixins/ui/widget_mixin.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/mixins/ui/window_mixin.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/mixins/ui_mixin.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/signals/__init__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/signals/ipc_signals_mixin.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/context/signals/keyboard_signals_mixin.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/ipc_server.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/plugins/__init__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/plugins/plugins.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/__init__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/__init__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/controller.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/__init__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/__init__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/icon.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/__init__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/desktopiconmixin.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/videoiconmixin.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/xdg/BaseDirectory.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/xdg/Config.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/xdg/DesktopEntry.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/xdg/Exceptions.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/xdg/IconTheme.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/xdg/IniFile.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/xdg/Locale.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/xdg/Menu.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/xdg/MenuEditor.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/xdg/Mime.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/xdg/RecentFiles.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/xdg/__init__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/icons/mixins/xdg/util.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/path.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/tab.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/utils/__init__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/utils/filehandler.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/utils/launcher.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/tabs/utils/settings.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/shellfm/windows/window.py delete mode 100755 src/debs/solarfm-0-0-1-x64/opt/SolarFM/trasher/__init__.py delete mode 100755 src/debs/solarfm-0-0-1-x64/opt/SolarFM/trasher/trash.py delete mode 100755 src/debs/solarfm-0-0-1-x64/opt/SolarFM/trasher/xdgtrash.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/utils/__init__.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/utils/logger.py delete mode 100644 src/debs/solarfm-0-0-1-x64/opt/SolarFM/utils/settings.py rename src/{versions/solarfm-0.0.1 => debs/solarfm-0-0-1-x64/usr/share/applications}/solarfm.desktop (68%) create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/contexct_menu.json create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/3g2.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/3gp.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/ai.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/air.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/asf.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/avi.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/bib.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/cls.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/csv.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/deb.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/djvu.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/dmg.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/doc.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/docx.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/dwf.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/dwg.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/eps.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/epub.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/exe.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/f.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/f77.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/f90.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/flac.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/flv.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/gif.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/gz.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/ico.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/indd.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/iso.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/jpeg.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/jpg.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/log.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/m4a.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/m4v.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/midi.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/mkv.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/mov.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/mp3.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/mp4.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/mpeg.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/mpg.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/msi.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/odp.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/ods.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/odt.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/oga.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/ogg.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/ogv.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/pdf.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/png.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/pps.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/ppsx.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/ppt.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/pptx.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/psd.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/pub.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/py.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/qt.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/ra.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/ram.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/rar.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/rm.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/rpm.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/rtf.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/rv.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/skp.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/spx.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/sql.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/sty.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/tar.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/tex.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/tgz.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/tiff.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/ttf.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/txt.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/vob.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/wav.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/wmv.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/xls.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/xlsx.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/xml.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/xpi.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/fileicons/zip.png create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/key-bindings.json create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/ui_widgets/about_ui.glade create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/ui_widgets/appchooser_ui.glade create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/ui_widgets/file_exists_ui.glade create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/ui_widgets/new_file_ui.glade create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/ui_widgets/rename_ui.glade create mode 100644 src/debs/solarfm-0-0-1-x64/usr/share/solarfm/ui_widgets/save_load_ui.glade delete mode 100644 src/versions/solarfm-0.0.1/SolarFM/tests/__init__.py delete mode 100755 src/versions/solarfm-0.0.1/clear_pycache_dirs.sh rename src/versions/solarfm-0.0.1/{compileBin.sh => compile_bin.sh} (100%) create mode 100755 user_config/usr/share/applications/solarfm.desktop diff --git a/README.md b/README.md index dd95b27..5073190 100644 --- a/README.md +++ b/README.md @@ -4,11 +4,18 @@ SolarFM is a Gtk+ Python file manager. # Notes Still Work in progress! Use at own risk! +Additionally, if not building a .deb then just move the contents of user_config to their respective folders. +Copy the share/solarfm folder to your user .config/ directory too. +
8416&|#**ucWw4N%EtDpXD8BS!vxVpaG-NknT04_4vezoISCmI0Duy;M_MZ+7rV>0J>#!>af_Y+w zT;3jpaU#(j6lziJgQjX>XCQ4-v37{K*%3jF>hF*|A2BJCK97cJ@w7cRv)ksYBe3<2 zD(lE)@TyNsCRrOaEh>rfPj?HFgoCYs%WMcZswGblJ#b#Ukz(W{_L0g%;RnkWV=n@j z{7<~0nC`Wa+fpNerX>P1Dsvw6CgZgUK*Ak6L$YnC27^G%&cq!KCdfpG^B>z 1+Wd*IB$6kJ<5{Yc OFm!&y%%#jFIcBld*8D1@lGc9oGU zP8~lHnOk7Xc9<&u0nsj3Ib*(xa)))lch3q6mP6$DK4ZU!S3@RWtLBLSVnXW3M#Q;< zrtjacw )`i_M*yssVX)*34+-^k{NK}-d|BTrL{Yb0 z@^AhWJ6VH>ed5FlLRRAb%R(1?MI`@=11-m4e4i5InO1lDNN2Jo$JQ3LV+ntri(XJ) z+x4E%?XB`1iuB=0Ji3>Xtbag5fUFy}zj{D|{cOs%O&TF+6IEp7^wYo+&Zb1Pc{Ojj zc2!Q#%@AQ6shWQ!C*!)C(lp%aA)ecJvt!W9i~%VK@yEL_n&rHPh$Ras*StEp!E}8O z)SS= EucSIeeU9<*gwzO0P%QEKXHK}zOkIbn!zneW>{OBqk z#QJF3?YRu3P|icmDm$sUtd%(^8>{hF_vuDKK!!8vNzY{e >>|F!mcD&=`Q|N0W^ZsaNBQ){ARW1@3pMbX29 zXTN!-uEXUBAVzB9iWIe1*igZ`5F53@zEQUBSjZbVP=p>V2H$m;WMa$wLFw6im6|z^ zF))(p2}Ghq2E{@YDm9^HD<{q4xc*w)fQ9ijG1mC*nb6*Gf<5 t>Drb7YsblDAxL-CVJN4p6JM z)sGxvu*q7T>K6vz5qjRZ&bHGq@@ocBkzPr4JTeJTBX^NMF*(Xl8%0+jcsZEF8vi1; zqWm{E4CTmjANFW>F}zY*nlyflTVpzK@HI_51c-hHiT(k@1FNOWPz9txW!m@IP09#H z^Q;~@__hAMG^BE&Hi!3XwB;O~LGbMV#yR;tmz&k<<$Hh|_$rs+K4o;h05#`8@HW%6 zd@}TPStjEIXJ9VsLgtZu$PooeuVKLGz#jnjK{bLd$xG-BqxNBJ2bn4qEu7>Em?rCR z7ems3m5+UjCVihM3g?JaE0=yuDlunhcH?zUe}o~(%1u8gD&hB`lEp$u0up^uu~1>j zap6x#T<$g2b|?KCj%RKH+?B}KW?2!x!_}+cxqdmSwlUxC<7(%DU5}X2i838eOj4Pq zY)(JGeMEF05%8`LofeZ?2&>cVDammo)!R&1W5eY+mkpxV@xzQZaOp(LFWA(*fabac z2hYublXK6!ec>U~O;4pEOCL@#A8&WPZX=~?piia{z0r?XYJ<{^1S!NYUc#|$7^&J5 zegnr?$4DZeNjs+uqSy!|^^nD(K{ug_sSI~O%8IeGUYsdLCehOk**g|npQZ|Y;!AOR z(nAK0cD*f4K@*x3wu;UjOG0)vEZqyyPZjZWc&b$(Vo}ECGbEs5m5YXxO ^ z#h{mjK8gpM_&bvLCmNs5-|Ny0D(BT$y3- DK-g%18f*s&FzrNj6 zbr;7Lvn(Bwn3vV`@WwFvCGTdN`wt!uK{v60cCet_^xQk=Sx<fqS_qN*OFQD75vP zqDA2ABY?1xT!PL1WZxPUMZYP~0wAB>HDNlcjcWUiEbUcre&RsrEOw0W*7pGI4~j(l zfg47wlNY+g&N#hg2*ue<{ P zdtpIXzz~G!*4%E0vNo18Trb1^($t9tDr5%M9aigcKy?%2&WNpfOGit}>E9jMQrM;j zHVlX~rgql~7Sv)hg6J2d8lA%S1BSOgSBzwGJhB83-8?S4SenCLo@H8Wrx}Eq8Vvuu zMZ>N)%bbTow&M-A7<26g-omaoDos7RL-s|Z;?=u$b8zg*VbbTuL>qroifwmm(|Q)g zIajz1h`k1?15y44M!Vw7JdcC08119cu;JAiz4>@sfwcNm-{j9x28v|e+%K6#lik%- zrPJr)YtpE@OxkMG5+TPB3eb5U%j$KuwnE*C-n8 I2+BO2M2mWIuTo+kc$Fj)hc}_< zqLhvbUGS~;%3s1@+!7$u6=?+srY~=TS$55!J*{m7&3}Jraa};{%jN@SVdO-0%Zklp zE7juuI+sv$e-5DyF
bt_NN!vO(WS{{Z52#VX|<$czbZ3+eO|%|9fhinUhX|? zs(JhY3!o6=d#&e{!%o;0r8b%ZwrU;908;=!`=gd*p86q(` Tq)v5Iv4P%|=uYQs}RoJ&9WjNvX6au6Pt+56VEL8CuYaoc+VY#|+WB0{+X;ok^bH z15!NGLP#=*|16~7gj&4(_FLCV#II#g1eNsh`DkM9d-99}+3XW~@0ety!*dl~IVkOw zIIN1M1a(^B>bdU9A8>*9o-0~ki$ej#g7ZvUq8bUqbj?71vB@b+QzraPx^JaFm{JU9 z nbN` o8Z)IUJ|pMt9%8^q z3(k;u&{yk-{K|jwB0?r?@7_K6%+6up{m(Z{1LmRtSllnO!95A%n%e^Cl`)1t`1l#O z$%j>r=G$hXPo?K%eL?jBnVAwmPr$`6pYvA)T%6Al^1cWj9(Diz3VvTlmabHpZWddn zT-Pb5_b?~(EX-QO*Y%+N1OSIFUYoB*k1cG|EAK OuXFTeHik&u@y zOUwx9Or@vO4WsUlR(2l~0^R1glvCWVu2EFc ^W~0NKJ@=3Dpu+GrA{a z3^;LNm!URH2;mm}>44>VfLE|{d8A}HZPF*c63F>v{~t7$Ck>HpBaiMsG=J?nud4Hx zaS%G=bKFWjBP93lI#|Cd?VYc>CLh}6l+*(WD&J_&_bsdyDbKLCQF6?F5lqR|t}+L3 z?OSkSbQc5CW8_s5i_cu(*xQ=aR9{W`FUkvOhQ1b8e$>kA2>$q(amVSP!cxRt`5Sw# z2WS*1kzlqSQq@Sa`|Zdr(uAx>Qit@{#T 8XsSSBR7e@PS_KYrL? zlf`** ;R;{K{_Z3AuGNNU)r9Ipp~+U2KbAnV8$D zix*7JCA1oq)5qGwZo)hnTq!Ndz0qYd`1E63-q#|QBh1I3Z%(aW;|{XEqpV2y5}EeZ z3Aj|;@@=8+1jm(2jgzPFos#^ss%CFbH_jmw0Galmev7;%8rQgh@LIMZMI$1U_ht!4 z$?*B{d ;;FQeB1>UaZ)q-HtfsUq&qBr4O{8=N~Rwd{{Ph%y?tr z3E{e(2rX_9cuUB?tKSO7RD4`WCf16(kY%N`VA|c_ZqrNV$ZDp~!3uL4?(5QBLk&0W z_&*}o?E4XVo0LzHK3pwez<+9pXr`=a3;^m6=U%bq+E*sNqDA9I+MlmCoz;G&fv~v+ zPBB6sZQ%rsN|%4a3w~?^lPb?iWqq E8z8&y=Ka?X21yCzb9myvJN4k3W3BjH@<=mf zO%UJ9^m`LP=;S$zbd+069F{XkGYOBJY0k2O+f>@V6aMeuF`13iZsO)kRYh6zdK{eN zJpxCN>9ekr3Jg5l9gwYpQIIhP#$X4?al42CTh`@_*ZWXAV=95~(S_FvYq|`cebds{ z{z~0-0oyXHu74LZ{aKD??n5z1`Iaa=-MW`|L=y3vde3Z?k$OxGu`TjVW>{J|6pP%| zY%vdYL -LYSrhdvM+rfWkiAt}f#JOBt5v7qftzji*r&Q4nC6 Vtn#P1QSn4K5gx;8^vRkoCR {Z z-hT4_l!y@txs82x6pVw)U ^<9|LHUB#j*;r`~Gmzv8)i| z6pn3QqD=|I!f^@Q7-)274Vb>nREy1vyKwJTuwU*=Vg1nPj`|xvm2(_#1y?Gx10R~* z5w)skUkAi$|tQ~NzyHsKUKeHW{8u~) RJJAs4^QAoHYK?I z@=8qL_Bn35uPUo9`Qc6mI*2~T=po({A#R;Sgd(}G>!YZR*R`UG@%f9)?c`I2CGL6F zlce^8&J5uwM*#`o>D-bk(q08iwg4H-G^Y+QR3|&{nypyJ`O0k)z5(K#cP0dS_J)7) zFeV<&jo8>Ldh&|Ib(}ph6H%My`<@J$S~XHg<#c}t-ZKuNg3Om&; N znl?EAJ@HPYYS|sfk1LW#Yv_$RA+}xOmaf@S6g@^#7U?oqKvDiFT*#qOu5956xT>@4 zmZ9v?mhDvl{nM+Hs_L_Wg|3gU&c`%=l?O!!G_(j(8|pf=qL|aC0}GklXIs4#K$A|= zdro9tun<9|^v4V|?7>l3Gu^luOc$_0-4LA$5<2gvnNuf8q!1UKm}Z(0xoctc2I3>4 z(Gqb^!y}}rwt-Ng$@^0C*QpbG5BpQ@4)+J^6+}+h@<(3>j9GfnT`d!qO5r|2ICt~p z=!WyHb;(WU&IT|47sqhVbu9QR=keln+M*M-=n7&+oaT!h_NLf`;>gTA>U99J6}*m< zjNX(Vui6HLIEPFAL}CD`FIR44WGtDm{!#C9rx8|UEqRNhs5d>%@IG|TVh~{dT59Bn zW=eHD_D5DNme_{%>#ge0q`XqK-qwX}mhg`_T?h3He^4WJ{RCZr#9@ADK&aUP`j?|K zQ$ klVD1wq#BpOEx d@r*}Sg5uFvskBGbUe8mpARc2QqAZC!vjTy1w`4%ooqk# z6JDU_n?L;^=xVQ*$c@fy^?Ad=n}UbN#XSRB4wxBITK+kQUpXiIp!-~*gZR_^^Ck=G zK`Js~Q0ja{D{~^q&y@o|16f8C<3~BEJ{9=*J9##qIozb>nD-&^uSae{qn*k^Piv2m zVl1Zr`c5TpO+IJ~lAW`u2L|v0k%ylz7>DqZ?;&MBdyqfFFSk?+JVcYQMxO5gW?Bzv zEBC2c&qVXpZI`!1W>M+~9(EPBJljmCw&cbKozKA|VZ@((*SM*GtmjOkZqa8 ;D8#B`77X$rzvnX4l^P{rj^ zG6qQMZjiC=;7%Y4!9k2I;&g-JyGDuaSTbh1&`t w^dI$!F1G&% z06Rd$zqI}&>kOD`@4>o*$2kkgseepT!}tLu+E(mz^`tbmcqT77EwB{&l8C}ZJ{S8J zt&BjXTUcz(^SGHBiEWeg&iUgbkzW>oP|%N9NoAKNqJl{=(Ao!=i93K>5)MA}_weUn zl}oM$l+9h6xt5u*G!r2b=e2U`TC39YIPPc&m)AS%Y^DJa^Q+Jup}$roLma8R6noX` zKa(cmIKu{QUazE;k&cz{8z()$p|h+G>3+oA phD9G^O=J1n=rZ zB~+w5jikqfSSF31!Wa0Jb_)!@4hStFELDAV|A-n}ze1XxOwp7p`z6HNRZAbt&jqIA zZAE`sw+&$CoivRR$ai9tW?H1|OSg1J0(WCPl0=$g#?xv_(R#Ga^ zBBHRl#3pCkY3gXdXreg^AC*c{PQS%$v2;;V8-UsX*oQI1x#A`YQ3s0er|8ofWg}^D z_4S1y`pizL>*_Bzv{9W0m7Fp!*e3vD@K^Nf+$=@MgmrfpjZ>W|FIfpIW$wQz3iZw) z3%AUpwvcG*R929tO-lk5$(fj*O1&!;e)n!-N66y r8w|YB|5V9^W$DJ9$M+ z#t4jV&Y4$syPHW8*(_ur5?~)GSl8_xW>Xa&v2_DG7z!;jtlk{PCcumoR8Km`^~8cW ztnY3i8x#+;t2NcG39{%^s?;@g6di@XgC_isG$tElDdH~5aUe?) z`Wnf(V}sdKZ!cCywDJ`#oID7ut{*tGdUfw>s-1X$`S_pFr)UhlKcQXXljTF)JPggx zK{oN#^~k%}#TFADPH$jbg6J*ENf|?9!`_r?AFjg|%ZcA)rNGT3Q@hmv>9Hlt#~BIs z#)WcX>~KD~0@Z;XXnh_2oRd~&2gB=f5j#}Qih8NIvgCRI`8>NH;Kgpt3^?2q(QB7+ zI-kY!;IS{&-NNLcG9~_#B_RJM5H&|1M;{bAYEyJ?xQY^k29eBEhFgTm #Ik4WY0qLEDjB(CQcBAJ z)M5=w-i9$ka^2{*)O?M3n$(;)?QPeEJ0fTrl`H@=UQyS2gFRvzlF;-T$=3GFF!tB~ z1DKZ|#*(%BOxNyVd(Z3NR{Kd^^zA<*PB?C>4CKc>R$g!;Z|tC#Pj}qQYwa-G>Xl H9)Y*Q`&YgH3N5%Qi1~{^Al=2&0>(5 zHIT7aSyKhHOV6V8+ISiFNzyj`i4MzQV>Kk`@_PUwv5AVjEV4CTHId_T9BCf|T1u_f zdVV1vP3|oY23FY28SDU2+uy`4**3N&es4ltOjoM`{C+HsRNzE@rK0AX?QJo%6r1c< zQJS|3u6ISn-|fVE>;&VEU&GshI(++B6M{p|s-Ac-&4U4Ymo#1^SE~x z{e7oYW8Hqf*+YyGek$}C_m)Q)r&ehG;ERVSdO82C_Lfkg4#<`Dk~$Q5!r45K7OgMc zqe&e#1}mOL7yJb*Y?OC)dMgMX{j=oUEDYJ`)OS(wRF;F89x?T!gYX74%mEt4 LYh;`!eIopzjRCS92$G+L15@#d7pZD@|8$Up!&>Nl0 UfUy2 zR^DTucwsh;+YW$_o+y%?Hhqaj4(yB7i~dgy%9?k=a<7|pRxez|)j=O#AgOnLP*AvR z^Ut`o^{4TEbq1eUlH9ExGJOfabfk14XHq1UgQowkO?E@bv6Vd+HJg-(5v;x1O<0ks z2ij8Nuq<;!4|*5ba3x=zHggLoLghg`k1X6Zp3}qf%xR*}zkEfFG^-TbCO_0SS{y}h zF H&&1vAaAlg+fXSW%k<^Ch_HQ{mT(EpS@fib4QwDtTAB697>I~GT*@D lmBcK6ZB$B;AjA^O+-pwau1S$`vd+dhK|@R9rsu>X+_`Ld`L z0OspA?=#1rqi=kn@YG_XD?s1&O3i@e7%n(s$pb%^50F>qnnODv_t>Twe(s0XE~ph` z)7HWuhEeoyXggvHwS|QLtSLlkLE2-Fq-BnJAXb+S7)L?}9vzyz0E?;>$ivHic7n=U z+CQd_fa-lObxAGUBk-l8rfAWB>vg~Wo<-YS`FU{Y2f%fC2Uz7e+JU>wYk=LHq1%UK zD|Y=*joF
fWbHK(_bu~q(G5zA4X2G|ZZgYXw;4E< zO-EAI!+fPXCO{?D3V}pf{B&V6f(fqDJ<;`_luD7`v6*ZQBi2HsIAcz3$nb%hkMLR} zZG>gv&OGcRlj;JIa6NUZ*=RvouSR!X(N&lbQ5Y<3-A%F+?4AjE{X$MkQ=OswE#2Rp z!q8>fr@*?>(S|Edyf107L7*YW^k!j*Yj O0Yn%-D^o z0hrzmy#UsvNDihuY6OlsP-<6uWy9K}+VmTeEMdGep!$v+GUG^U<754*Vf-bH*EVOb zp4puZkI$U4ll5+l)xTo4d_pz=i`*`tPQ2xQc^FGYD8Nr9c|FzeY|4x#BknpP+|LRN ztg{tC<&Khu!##k1a3b>FJpCdMW!4~omv^eEOU^J!XQ3{CQ_u^Su9*tBzC9*VBLQ&C zufS@a4xp@Uqmj->_R{120?!v{frM-> gL_K-)T0v+8!- vPFyQyMGOq#Pj=y?8E4vXy6XE zFbHta;sBd_o2IoFoWac5#*hEtizN^Vo>@=V+m2*DCGw2IKLmV1fb^`hyF1Sx^%}d~ zqYbk-bUkoubIO|!?<4nBPv%@GNN`+$`B!zlG(dX(^lnrdIn-UY6(MS?sD&Fv>5WHO z)~0topZtPP87jfGzqVZM`)@lL^tAS6Y($U7G?X1-V*)5mdm@yDMM&;}tPxXO(6VZk z2$XWQi8Tyu^%K(SamXSUpooUc@$#qjOnNP;l<1F=U*-!227RiMZWS0!yBjN0-)n#x zZ2=fu$eT!)(kA*NMB(J>>C<6`ExRTGANpmBl^OW$40}a8J>a)`sacWlGnN#l$d*AE z-tve14cC{U#-klNj{;EtDKzzoD_t|5fm%IUbp;Byv#vfRSrJXReJHbOpWp%BV1rxD z>iyWQrt-JE>7-Kr$UNmw<%%@%s_x5xopZq8DX{Lf1z49r0kg4Q{ae^y^B#Iaa}^89 zAjxo&CC?YJI@~!fRYr)`^hjZJku(zprqpSF^@fX!U |ElXsetpkk1UYmr`K4@tgGkg(SYL(30!cfG7T-*S%b3c`m*`UxGyxgnr< z!3yb^CAU02ru^qND*BZjhXC}^B&-5>vzD!5G87KJj>-BG8-u8AWFB^07?I{~`-oM) z;9ePXfT3);HDm*bobq8zy)XwpVG*zTv>$GLx~aucM2m9eP;sf$;n$b;2+PLawxoI& zgvI69&SNXmsqTSN-QFL`qKE7%u9`pW7ECZJj+gwtx?JlAVd(Gg?_af<9A<*BtLh{) zfFu8yqd{gEBv0pQ5EMCG+~7M>6cktv2>KV>Vsh4Jj23%+oPJgxPJxVJAMDoQP#Rv` zQ(u8_q7Vv| eJ5_y9 z!;KbnU{vmQkFt1V`n)d#1&x^!Oh?RCOgh41$?Gao)%K8)s%FHOUs&X7iDE-PD*HEi zm>3uTTd`1S;10f@UtTY~A3uYo0sh6w_H4R7@lxCmLro9^kP&s>DP3Okmv62s2euiq zS3QuSq;OTfF^VRPdYnpLt6KPODTcGBLWdNl>LF^Ns}CbtJ5u$}@Erg?ruA@T1*d3- za>}1bfP`EE-7ZScC+R)NF1ZH_mH~`!43A`U_W8@2Gh@u4xSwk>hOU>;AU@v2 q2ki*i16)IPTj4EP;lr?^t&_;J!o#+??>e;W`)kRGN^LC6a9%%k^MG1Uobb?dqR| zG8ts|Wl)3nr+xSC39rmjl_;n1GwRNV_XJ}7x9xY#A~Y#Q64F*0Gr2XU#Bj2sR=nZP zp3t>Pd7}Bw%Ur=`s9Qc?dkS=T`K#yK>Z* HL0%)y?*Pi5qbcn+lQZqbS){ms3d@)kiLSzJ3{P6k0`GXKQ+45?VoFOM$K=ZOH@ zcr4)tByo_)#=y0CWlX{g2awma|G{s_TT*>iBF`ZWH-TWC-6$;20WE&bR^K>Ame!=^ zNRilERf=rFCMAIhoOR?e@WpzRh9N)_MM{kFnFIT4joy`;3%}62Brxx5!d2o69X=5K zgIM;xlv?^*0#_N6*Fp*=uxm8i%9Td85RPFmk+-JyEXj{C)d)U*FsxbyT0Ac%D~k7) zNP6l1YS^RuH6Z<}bzD$PupAPP>u0KWA%{8V>?k#0jLgR_IqYB@K*jbJ-2t>_?<2Wr ze?{e|yDO8?CuJ-WTmi-pYOsl!JWO7Xf>h2Y1)VbIoA%B_5oq5=zCa%m1}tA1{mDUN z0V&tW^(P579oTJ;t^_#T!d0&C)aJZOaf7)>V7Q~bU<&B6EwM7YJNj>9uGyUiJ|-=_ z4>na^twG!c75NI+emQA=Ui)|lII)9$$A~8xoH!JR(znc;n=jtSYZ$orUim;?hs+ie zd?4}7EF&5cP;Pn{r^)A)3DKKw`XGw|*VaB&L#KtY6KLt-j4Aez0HnGJYFsi&FrEiV zwwY&_KPlR{#Za)KDJk8F^oxHVw28yf`cKhWF*LOBs7m|I34&=QFWK+77H9cUYKC)2 zX^|`;5=Q!$?A+2-zzV9ibVbi$>+ECu`gZ4(%is7+dP`DqJ(XheC;3&r2Uco )) V>mSxnuJ0+zs6gSlk Naa}S^5Zbm1Ac;iywnM5yRF_eb z!bKdv9v?y`_t?uh7Yi|<|G|>3qT}L|zDO+%hKcW>F-r2Z8kLYfw@xih*6(U{Zz)qd zb!Z*kFZs66ZJ_Si+8c(I&S&(bN`yIZfrJu%jHn~%at))pvrM`=zRV6;7~5s9x`xxv z{B$+VuzWCh6W&&Bps0$l+7>pzKi7VkkC=9L-dkSW4G1IXca`6AgVyAiqbzkghtj7o z_3g&fpoRhAlheN!(9;v%@3bpDynR(M-Ymi;)F4X}DU0smLHcftX<`li &o;9s7i4u1p7@WTzhmAdKYlV{4>^REEPCn=C^2uHTYs zXoQ4jb>Dp`_$dE)1EXf>U>@0F{B;2gD_{JqUaM_l_G9Yskigex)BzQcF#ZomTE%RI z0gI!Hh=!lp8b&=FdX|WsV0hI>LKTc`rGjIW;#%?@!NWXANAk $1p z`NIm&B8r27t P59w!mXBlTB5XDHULhC-uOy5UjPO+=L>xq`tVuc%>bP4#LVz8t&3Tv5i!uEil^& z-E|XzdIAR=Zxw5##Hv?G_O-&1hPpf=Yc}a9r4Eizw94-tofNjJRKT8HYNf5K La?RLr1ECe^s1zr{WoN3wlG5+n>p=!Pn`_&1ea?4b;o_OBCAe8V2`%@})~a-1r`w zs|wwBhRA?h1n(^($KnHF%GC1el>utjRc_9{)Yr8bMFOTNBkkq?7q=$7{Y*=^+o-}y zWLyM@EXr&|TG)jWq}n;!ZfxgdEMihjNz|{BGw#Kbi1&&b%J)+ zm_)lN Pl0NP6wCndMMq@{ z(fG^cY&ONpSI`Ku;pj~g4m&rOCPtsnnc>9klom>9lnuq@Y^`ks5Y34=L(4EhGu6KF zmoVTQ+vIBqKFQNo(EUTL7JaFzXs8! in{ypfiWzY#Ay(<}XR_$V0+{aWChonBmQ+0KGh)9QuM)WJyf6B2YxULd)Z_K|} zY7G>59n0!0vj&AA A?D5yG-{5xQWc zyzL Cv^d!X`UE2}?m)cvJBBOgDOa zgTj$(!~w02vpr5ZXTQj2f2}8Z-k aFnHZrBaW;wZy^r9gtNlr zd0Z8IB3%3Lw~1iB5r3ENa&=%eWKi_x9RHHCef3CO7;2z|8CX^}o|U3K8v>3!8nK>} z)6(6D#dNS$Q$VkcOd7<~tsI3`QpnY(l|6YuA0;{Hb&p>VBBXaIi&-AZ4v5r9E`Z_K zG?w4O@3(DY1l%)v@v1Vj8J!ay5I{MK^k=q65b0V9T^w<(A7X_PR&p`|`pesK2cM9`EvFs_iY+slUQ)DQs*jg$=Rurq?uGpma~aPCOF&l0+&27QSD{AXD4 zZc;BiD{7q{cVLH{DUp*cbKW}v=u<--3hAV#1J+goYr>>Ybb+O`=FfxpFgoRL2zkY<}b$zlZH_rkR?rn5CI**-$q`N0g9JvbXJ)ej@e z=SIq@5T-c{?=^g3h`98=#B9v3^zP@P{Lh3lm>f@GrgQhQbiTdq2JEqi;UXmU{^1kt zJwbl_d+;ox%#|*~{J=NDXpHI#In?0FKS6E4M|j$jiW!jWU&n!#f%R|&2ZTEPvO<2B z=$#2@o1iQYCXP5yf7#uum~TMKe?drwQrP@9ub=3KTfyjXGe`)6qZ>6#BPok@aiIu5 zkC+N_t|OM{TM5%iufC$o@Kpe#)s+|JU|OifFJ#(SZ207S4yHU4eHA9|Dix2QE9*X} zQA|6j;06{668C>Vx1_^9-F!fkO3}Mn#`IWpyBl;c_^|Sog*diaUbqm>Z2q3%lLg_* zDnd_RU{k?@h~svrtjm=U*HucFj1Ks IFl#=`#Lw@u$ej|F z%$(egu1x~GiG%D=ry)fuQCrZlNvtNq8Bbz0!V!?{{O*Y6cv !}B5vg^g$pg<^05?Ca#8ruV#0>J^#J;vu3{rM`&E{ho5 zvIX~KRU}!nqjUfQTxyaZGm};!3*W>odF#0|*zULXi72AHG9V4$g6cX8$6@sDy(cw+ z_vY6CC#mw~c3@T^^fosui3x6+Y_;RFn6UQ2ZDKDmS96LK$H#$&1zoI!XHwHPP*{>o z3!yg`U3!wc3@uyyJ`D8HK|H25L}XFdwgw(MrbYB8T_zcvU7xdmPgvSnK6>d4++h+i zHi2Y7ZqQc#Tad(Yr9uJ!ErwNcp|OIi5zhxs`&YZy +^w9I!nMxNGW5L4YIK9_apT ^#o33Ecmbo=KbaZAM4OFnD*@yZhb~?Zlt-BtL8>cgs&Pd zZB|roqPn08MFHvs0a+-q%%Ie0Wh?jkzJ!`ReV|gXH+v4&4_ESCc?{yWSlz1Pg)JY4 zF==@0-SK3_-SnM<;~X)(bcHo9%c{>dhol%PAc-N=eZKQG4He)q$Q5SqjwoptAPe05 z<$xT7BPOS2p-Z20`^ %tE5BEkRhmVIgOJ1fasfI=x8 z4&qJtr{jD%DxeOKUDErIMyybFyTOXRejm9c26*3uj<5WCm4RjEX8zCy{rT?%0JE;0 z1SlkPdh@A^RSsNZO=p)P?vhOg>;3it4oY><6S&cjE!ZboC7Ft?cc;Jv(zj7R*? D2Pv6YE+A-uS7yy$h2b{73^Bxf4?pcS+zs#!Rewr%2^ zx6D2he`u#Eu1x5ccOA;LZ*#>!S+9$nja Em{lL-%Lm#yLYR6^I>0P z$Q4uw3S+IYGOMYqcRmAyWVTu3Xf`IKY;zFDXu!Tx(fG6NIMTZ3<&_UMMwrIB61Zfv zhcXWQbQ!GjpWfl$aO3IlN(yIr2(kcpt&v?JC6!{;hDof9A!*mF;?Kqn8*8!654}0p zK|7N8F%pgk3s(UVFv3F ss~gU( z&7U5OK29Krpu7@`n{xx^MU3sNb*1So(97f}`dj*_WWACzJdqJ56L7jb*nbh24Bu#u zd<{1u33FmuWrn(*^^4pnQG5{f@Lx3w@8xlBsgZ;BHuwITdHd8&V4uvB0Fp)H_J5kw z=~R)IQgoYULugP8p&mj0G$SBzTKWM;S2N13;*d%1yr(teQUNJ8lihgwmUXQH{tD%u z(0A% eR&xRia)TEZ}i5{z~=wc@V?;7*SD#>G=%qTO77%62> z%B*)1T C9Uh@`_<4v#=&KNhd)3>d&pov=5tdECh}+eI*wO zV9|nT!%biBp*J**VqXS@5G>wS);^KG#|3;$u}RMZ{XO+K8F$fN;$Md!A*9*-CNEE9 zP5YnbhBo+m<1>rzC||Hb>=~<}^(*9sRJ>B}hV{ r0e|}Ejs!Xf{CejM6>4D59@`Ww{>F}`-mIYr><}L*dAyq#}zEF zGo$eCZ1v2w?a1S@Z8dQWvi$*-h&AvYLa;MFMWZT;g+Qtwh16b^9Ui+E`bsU*(ID|4 z(+$=wUgrSg1W-ZYWPR!-U3}zQ6-|o`NiWjyuV7q#qlA<-Vg(mi&%4{uo-eZ#06FSD z9D2WTM0}Ya<(0Qa5351&RdjV?1$0VQ^bOCO4b8DfM!ml2Wfr#t?NAb~1Y)v_q36{e zTCEgtd8E=G%5hz6Sc&85SqdGM(N-*Oo^!jW0Imj2E17r>8?3p}y)l = z?wxt^q|o1<2U%%tXp$@F1XeC9(+5Ewp+hxx^IXI94_`?rHBfp3kZEr-BY5$}9sN-1 zklbg<#{FPf2r2{yzB 1}W={%2l1Bmvg*b0Q>2I-H4$6=LBgp!2 L}>t>C!Mjq%h2Iwj2~cFHKVWP zr4y9VG-k`}b|Ec`xhCz5KZ+E8%UGYu#%OgZdWo4aPa-_Oma%xy3{(8{FB`iRMh*Yn zDVTOr%g0N!vj~RDjrqar= ^hn%t0u~3!eyJ$ zd|Z!$#tT;`3;bUSR5jfbfB#wBx$>U^*j=R7x9i(F9nt!^_K>$FKm-!t!u439vpv7Y z+?b4YQ)%;(lN0Hs_}9}W&8IfQ9*ik*Ie_!67!3HZ=AVpL+<``Aj6k~e!0bp|D!TlI z8_NTN^)H{Bvl*dd%cwt! z3$%pN?_T=Jzwg?ORXgUo E;z;d6HFRK$exjDJ=(3d?}&7O9uL?yR z*Jrqa4%oz<1 bwvVa+s!?nR>Y3?%ys{w&r<7NcAxyt5f! z%7)m-6&7U(?m9=rN>Btq@^337BsJxPX+`za?M&M&8mGN47V|A>!ZY_f;#&asUu0lC zVIH=qLnl(?D*_f$Ed*oVBwTJbX}2xwmW0^B;Ep7M%H4^2)iQKV&=<{lzDK7f&AR z|B+&SUUIWyD+0y!$HsbYKWXzTqH!)k^L+S^EFo3d4pH$@QXYbX)kKeAlbEpFuhkb_ ziS@RG`p&zBNdH^a^ElFyo57jGW2X^+aDKq8VRv?b;UqOBVO*yp#3vMP?y5GJtpfOp z9j0n{J2jjSE@lZyrix!WvEadL&tOM-W6+oGI))wx`4{*Y(}O00R*Zo@&-zQunO#LP zarnh0>&4M%$)NQ**pW~mu~i4tMt`Sz(fTzaM(Qcp#4KU!5mTqvmEUlsi_@_w>>u`n9U970RZL+EvdeCg*psP3oU2fCtl8-A7ly|g<2z^~ zCAyglqjPEC8rujNq#J}AxkbfHS}mvXwvmGjJmtEIqT=mOtzDS}PJ3;Iu4K*Kn7?_J zmsEZ`#dzBk)1O(@#>r72xnx){q`d0dy#{9BgoCiz^^EE$5E{4W@i2&Zp@bHPN_tzq zg;K4%YbBj-#`~ W?m?YJ)Zd98{3k mp&Y_-(2#B4Z^ahDZXmDV*5F})6-z+FwJj7H+d ztcj=j7M(cOuzzaLrC|46nv$bApFHmDR|O+PfPW}Rc*ccBy={i=01^cbuj6>in1#;l zL_E5qSoA8|c&E*MI!W1xnoGo81uZ*E+`+R+a4QASf|W_ i#71s#6!1c ze7wlgM=)Z_38Q@YjbO=q^V5b0iZ-5jFJklt9@<~>EFHScy&Ah{XV&CG0zV-@jZVbO zranQ9s}PDZC67H6 {v3}(Eb)`eS15aWKK2o5<2GbKTwZTteM$eojV$&_TqaXg7WGg$)8H{ zFzKPl^Qtjn5+^f2OnWr#fGazAUDAuLofLX%B>H~k2to`6R3V4+ZE_x5)0(l-&z0&a zSY82-1wnzRGvp$|u$n1cJHhpZkgoA3*-WD$i+$7<$HJK`TDq;`EGgT~pU)y>M#qIY z{XK_d5f&3QG0sTg34;!LkKzMFHKC0VP5R8I$Q`M*>^#>_2k3Ab-nb*lY;If(P4AH7 z5r&rcg-EnHDP6AaKWaqIM~nd7M~{1R!3xg>>$H0O*QYy$+B0cI {zb zaEpSJS6IvMV6}R?j;gKM1zl7a(4)QOAsm6PKHTXOle%3<=rM;`Ahy>9xEWSrMwAjE zMY#4~o#nm{z;n{;B5EdM2FW$H6!_mW)|t5fXIJ^r5FC^emM4E(m4O6lM3@*-B>zLC z(7;e(ve0yIjQ2(~+&GWmRNC)|E*)aKWz`3%j|-@u#!J%CD3@s2O~Pd33*a^1B;7Or zf^q;BXUc&MuuF<3NM^<@$y K3Ky;aDhIT^eetp-dj>)KQ53ym79NEYiw-Nv+{gYU*p6G@{g#e;gso z(1Z_qsA9L^)uQDT*%*AG*Zi;BrDI_vGKVGK`CUqvJ`ua zwoqOw_iz4K_>mjn*=9=`*uFqX&ikiSAysVfNL1|^z(-QcQ+_mtYZ}2z3%`jAT2rCL zRD%10A_Rdu6>UTBo=h (E*etM;CY{9NGQRp}Bj!(xmk z(*7q+OGz2X+AMFN(&|#L=x=4WUZ61m@uN^g6sI7$g3 xmGP$&N}c>CK!LM1wdIgsTT O7+Ty4L$7>a#IjAcQ`k}{Cs&tbFV?JA za{6HF6G;@IciZX}!(U(-ZJ9&Va z@8`QUGdN(5sFIYQ!-W(L<`d3J!0#UTlJj6sPtGjad7?ztU*` l>f20f{-5^QF26otL4V-V@E;9q&h`)5fAlj58i{J)@vrLiYW)lufbQt$+Mf%3 zU6=a;U7m7`QPUl%0cZQlCUa+6MJNkqUt_7~+|Mdzhb_9FR68A{ni+0w6?1BAK`6pj z4hq>OtVsRkGz0bmxQxoTz^MO=mL&$E!Y8YGkvRuSs?h|JL#!6V@+PD2@&&CeRCXcC zLG!@HWpn=e+MkveEr(hCxD=T^nBT*QcD~enpN=4%?v*iS35?yrkYKfhAbZ>OA^vNa zHX@to1&Nhk@W+O#$jpF|aVJQfU26{5W*ATZ1pxq@!H#SbkyebuL-Ww)$X#R?lV|E* z0S?PF +{*g1Z{vLnY5l{G$9_4m?furHf$pE2&pM-V zM{7qAZ>#xA 5ReJf 6HdfDGBL?eg8-fDM$1`A3zEdj9Iy(z|JYB4 AelgM NtNNa7X;XDhY5SSohWA4Z%lbhy|Efp_wEpY!*e)he7 z(3jL@5Jy@!E T?K-R7UFmV8L9Yx2yr%y;O2E)gS=TW5Xu3Pc{#5*{;rKhY(i|s zd P=jj>{rArFGvSI) z7F-ks7RvH(45^BEMPsAqZDbJ|QfmKn;Ro{^q(g9nndNz0t3aRSAL;m(cT{6<;o7_; z$(6l9TN$bQhanF~Ox9E@o3B47Xw|qyIs9Y$6S{>16{6wiyGG TgFS~c|O4LTN8 zU_e%yF9+IV;QGhx3Sv8SB(%ZsX87g LoKFgfRh4X`>-`T1d)=x9u!6sy pZ$8^dAB2(J@sZ!;x9%PP_3hfqbj4<4p>H5V(e@8ltdbO@B zt)VsSnsI_EWpB$sxhM93V{};QtN`=BLfXH_DJJBNn?;2?IT_4zJYsV#J5qHa3ZNVk z##-M`k3NOO5b=fHd3JH##Ixone&fuaTPdBh!rCc*nUbKt+!v=;gNyF2R0(>d;d5{q z-W+okJEK>2fRWO&O$g&*el{e#gB4T9Ui+8Ap6#?VyV51U%}FVYNKO6tezx+g_?R$< zSwTEkkAs7HF)L^#&zpGmMxQMmN$JZlOn7r?lG=V(_meB!dAQvJd7oRE@wUnGq{&RH zD7B+RxAbK$Z&xi@6_Yo~^~OmjU~yQzppU+*qY>PYW9In=^gB=}>X+2o9>Yk=*cH^1 zZ)ode$Fg!x%1-+1DQjW3Afn$gUn*oKKXEMR=04@|h!t;2x&WHPqtT$rfYMU0aLfvy zXm4{W@>W# =?%i|)piT4X(MJ8{vfn0b@M+VDW4V0M7#3-nmt6~HyS(bZpV5()3< zR5Sm1*v>8vO6I~U!upTdCo+7=t{3>QNIue(`By}myv3e%4g?}_9JTVa$`rfQ{t4iZ zjmjbuTTuuW}~!H7x%hf|RIBJ<{_4!)}FtsZ~0)8rg20bEgL~V9xSS*`M)a z-8<_B87XE?&31~B;u*#I*LUNJp~GlYy!b@o0B=`t7D#m6{16tkqvMT>Fp647Jx2;D zU&uW5p;4kl#F=li2Fv1L8|F|Bgvi$ rLW4+fZ?qwrRTmoGL&Alk!Aa4=DMlb?Xc7tCLd_dj se=e6atI14puO2*V~|~Sl}$;E>Cw71)q2P67FMzNj|ah1<`3b z`Qp^?C5)gODHpDMfv9+#yL`+%Ck0_W(YSZe8b0ZyezIGa0tJ^2)Xb`OE-6;wGqeIv z&$C-=W|^HPm$Lj%Cd&>-N&9eb2FH)K0d!2Hl49Y2qoe#^4F=DVs^qr(=!okt3bEJ( z#_G6FI%TUoQcgu;2g*c)RlD^(#bBRUDF&A4kU`r6Shd1qgDyF7SjWXL$v{jUhV=w9 zG$C&)&)1YON`)67Tn(*|vmgsONAYV{nGXFx b~ab zfS+F6s6w=&@Z1&x$qvR20D$8&(Fl=7t=69Op OLadT>{yjmXa=B-}?6xysWG zn~X15K>2y2CmwEGjI?(CJ`rJk7%EKm*4m*ZbK+@U$zSVE`-MEeLxE2R8i|mzr}Ar~ zsfw|OR3u89VDIxaQ`laAQ$cEwwp0b&@`S$~IfjBj_R>J!m+euqLrv};6M9V_B_fXz z(n`XRs_`XDDdNF>)l_1FHpsB>hl5K`YCAUAQL&ODX#X!*cdPbbRb !8vmo?4 zgf7*NIeExaInUq7GB9~wQoEZ#=6|O5UgU{_+P=%RYB&A$b@zEG2!%^`hQeSnD2G2) z=*t@Kcvk2;4%1Z4?1;Cm4f%n7?Zg`EH7!Zq{COs>v5L6oqAK7}-#~g`kgaA}26p+W z-UJE9{(hOJQS3VV3ul*VLGvN%aO)o46B?gT+mly&LAMxjVJ=fG6?%Ti`UBs$_2T)Z zCAoi`IT{ekCY}Jw=-&Ph*(UksC?)r+tTol!(f-MF1MM2IleMgccdVI;JfAIKmTr19 zY7ipw9qv*|VS`<8b)Az}JWsMlIy2e;&78?h fywUwK=kW< zBjvs$?p_VI2yQnCt$v29>cW3&7Z8I{_f!zUBqnnlBg93^5h5Er?^i-N8NC{MrZ#$f z1UF8(_w0Wla{TmwpcQn-42BxHR%@l9533q8z#7-^eOX7}7cx#Wnc`bI+mG>JTZ|_u zsoHIgw-+5K@>b-WuXXJ~FKQEnL{PaRl}j%WuiouW|HY053yRi}?rV&lk0boUptJr| zjs5vfEPi?8#&{lq;SLvr)N#veUF$|<9{zpR-UcwIf=oem_j*#VaeKKF`dCmFBL~gQ zGk1=0`{hV}`>oP>i-FSjX8(4A-}gGXBk4*H`iLO=5HQiE6VP<_zC|dMPq9J)i0$EY zrV&M>IQpIgn-Q-tNj~Tm^-^L~BrJb-^9BXgtWB}SwBo2X4?4DM+7vje#y!GTS8;j_ zykCo D9_dk368I)B z-dH?zy)3<-Jt!QV6!;`fhS5;lx1BO>G?e`2fhzB01wh10!+dXBSp FenStFB;;KJCsFt+Xd+R2o?P7u{1-QM`R|Cu$Hv3`O3i7XknZf z(4i>=6e#4Gbr_lkO3O{Q&^Uy#|K&S2nQXN20j@H9oVcwO>NFA_2 Mbtkoe z?syHKs_BxBAfj|f;d@b>TGxd#uc9XM=#295%nMWxOvAM!1`jdc 3TMn(GKDchA&%+6v@LQxzfZqC!!y_L0M(gfUIzOy6nHX2e*XDpv3x~5`U=L zBNwV8CV^)ijL6)cB!o{7^! B4u{Fl2!cQio;3lzAEl`xG=gdo zElUbq1xjmIdDg|jb +ZuzTf7|B{tq(jH>axiQDupNOIq-mc3-VQLC>;e#fU} zw8r|>j1L};$d&N-wA|7a-kfoKHARfx0;1$uGx6~vz<;rKR-McDv;$%N_V0FkEEO4o zx=w?Nx#rnw7VgNKrQ@7bGvpefu7H0HEEIvcLHuLjaLp};`Ugz@(4AT6EbXspxtn*W z7q>Ehb&UJChLwJhxI_3J K1@L;0CaL6Sj9>apoqh;CQFtgvmM)wUg zU`X`Qi>e^6L(%hZKXy4_HlF{Ko9u%<#!gS!a9C|1tR!Fssa!(tb190Z`f%Om5ge;D z*WSDy2gUc0(hF>ONTPEU3Cp1y$!I*IP6qMyq c3IRXA5g27l>@e`Kb@Wi+FwKe* zDLk&NRi8PW_JD$nt?YWXfwcFl7bF?4{y*t28dolEj0~@byn>sm{KgzNVWUxkw}4 zq+l!6mS9EM#jvgn2#NVgOtCFr_g3_MH4aN3dPB-sSpmaj3GJ8y{<{d7yER5`oHRaD z;VTb1k{=#}8-g$aq*5+T(8tZVMSSwJok>>IVI^^IPA+Gaq|$_{ShW=p!5$Pjz-ET9 zjT`XexMYg(fZ&vC6cW+wR=_yThPqg(SIKYfv_3vVT*wF*PaZdrfzn56?!ffNc)OvE z6=Ag7!V)}7EHLvaYp5{|eNl>P3CN>Go_uKHMXG*+u}-43e1$~9W!vKc4%+0%I}pT! zB`RnZYQW3InvrMUeaU=0UGNFae!(7@bFO}`>@&1~xo0$-2X&>;hV)YDHUHKn&dvA4 zSu(wa{~y8mJ*>CkZ_0=JK`V}m9S$s4f*2rP_M(% LH)IMIgcCBN=Sm6aV5y*Qv04l;<*4mg8(itT%m zFzhmE^yEoejEu7S-zAQxHQ81I3cN1k+5aTCBRK$*L?iXGguQYOjdhXXM?gHG0at ztds2$3{DdPYp8p-8d$j>JEMOy=-%d;(NCzK6V&NQY3^>A$?J8z*$TFLS+4e;NlBD6 z%0#TL(d@A=;&A`Xeg8ILNtqk4X<$g1RvF Da@-nj23bN}=Kk8&?<5ApBWR)=K#U_e%^VOILKPSvU%_;P|$jJ5|}^`N(P zY4PmThYv)V{ 6Z56kK5KPF+&*Q?!D5Q*8@~-Q?qfph9%;L}ipg4v}W>k$pwj92H z*8D*w=-otr#s`yEwJ^PH%uyyumM%Iy##Q M7&QW2O^NuiJ|IIJ0NA<4y zlYXm5u$6>Ai4WPRD7HXs7+3k*FgAzRN-2Ds1+|S;Ck<$TeKvZV3`PORV8VB-V zKi6@-5zQLTi_}ae)bIfPkX?{3U-b-l#`&1w+DWHAt$>5n*`XO>mZ7qHiLv)25%C31 zMRk;9f-;PrB+ca0$H>jmt{id =49TqA0%UB~hArb4T!!bsXeAqzRnTk9yiGLWhDbkv?5TOcMn~zU7?6yJq z0%1<_&XMbYt`I1Zw8~sHI@aGC;_=I02-kCBHH}}*+jr9B<>E~Tg#geGnoi|LMZ|T{ z7k%9gam)rsTcH0C4{J#pN?PPy6athonK%c3h(pSF;6^ e>rL&L+@d^1_ zur8rm%0m>ta=AgnhYC2gRA&^g!Vm7UEYp6H!0}64uS>jB)TK{LTKmJ~^MJh7(@6&; zLb{9wzZJxLm1w8XTc1gM0o{*T;rp|j%l8%JRlbzl?u}33I8ZK}P*mo%!#f}!q!{Xl z@<1(Oe;GZcS=An_BFt9NMN5NxT@LiL?(q#lciopbR4)$+_IlHXO)oIpAi#)$MxQlI zAVon-2D4+sb1{>wS0Sf0OE(_Mmmi0W<=-Kd;(KP6!W3@+dp*ueCgDp?AiE@F+p|c- zdz@u9%}RA>4(^kk?Zq0Z4?;@v9IJR;Gn)^WwC&LOn=_GrLlhU1Sm$$PJz+?9!41_0 zy;8ZmyilZpkrC9OnB+?$ChkK#!`d&&YKrd_mqABSTV-WQ0mSBbGc}Lx1&L_o8+r>% z0yR`xvR1qLRU7n8oofBC{P2ldE#8DGdTg2qrE2Gl-cK(Lx+#PMfgcdJz6NQI*(?O< zAX=iSj>X%n2@ZyCI!N#e`hlBTYnqi_Ls7}Gy*PR1#j@i@<)*?4W~exY?{I|TE$lwA zUM0^F{B!lq1S7YWRABO76j^(s_>lm`RYps?mX?I9IWF9)?Ug4xfZ==W@TUyjwC#@y zm)q;ZaMDy2>`^Ym-Gg(wWJVa> ~F5#%&Kr5tJ5R*%Bh`RU&D2H~s zdXu|XC
-TT2TLClUcFN!jsMucPx z`%sHNk2P23X%k|RqqGD~EW>_=!=3KJ5na={e%^as;h2<-n)&nD06yvW)d!d(rkat@ zUOw&sY$=#x)x>m~(fqig0 CJcU``jX% byead8hI08}PN!enui ziUYuiS=mr~HXjR9vu#T )gPUQ-0FRlI0r>W>o&B zA|X)YY_1R^OZ$^7d@`|_;hu0jlcIrc oD&fkY_EqX(Iw{nL1Quz$Q zWEiV> g;+JWIYM&)b&Q5%n-|hBTF2FjI%1MzfX-@ vmNI_)A8BuF?S3DG-n>nn5HTO`xyk_7-4( zY&7amnI&6h#`!#>3!dCdmtU4It95F;leI0dVn0z>ZUowfuVi+rkrQjtb#BD%)2dO2 zFo{&o)3@cJU?H(itz9+Nd(bCR{IwSgfZy;$T*dISRw|Jx+tJ&&YQF|Bju#7;RJO+C zOK9de5W6KM9H_UWw_5C@2sGSs9;G@Tlz!4KMFM(}n$_GAUB!Olt3x`^;#`HPW9m$X ze!>q@TJ4$dOO^Kz!%lqXgF}Xg7^Hh3`d(!ab^P5W#Yf!`M>MVW9)R}`yFw4KR%v!i zUrwNUHCqL$h4La?mI(;Ltcz&iDDmHp@$oi|; 3 zh)MNm9&bd;#st3B;%>EL1ZUl5SH!XXQY1S%QF@dcxoekXkw{YUqFmxvvyovTGq8Bz z>3q8KSE*x vyc<<@~doj-4; ukNt7Ik#`kjnQXKi+!& 5eAUl$UMI49> zm4J{7QPLtV?F%QZoNAUp*`bMFYONZm{WvxZ6u6w%IB<=bDq4u$mtvBW<0UeFIj6w} z5+s=^wL}3FTh+&u9G|d#$Gifz==L(nG*#Zf1TB;a4Lpw)JoaO4$_sF&Xik%f*GkD$ z^q{2zf-Ga5kRN5+-Mhl~Njgg_&?gryhEENB;kqj)NM*S~_PLp!*sBITfbe(QgTJkS z$LVFV%EH#B ykJt$e%QX%i zSXnCeG1HCn!T(#$-<25jrR>-CGua}vz|SS9g?^;{|3O1b!sp7sX%pePc+bn#rueK= ztJUubJv@C2A(}@{qFtZ-v}eL93KXXat|xY|j5`v2G@*cq+~_ywk?`|tc~sGp@tyhC zZ0cnTts3Pr&dw<* WW79j#owZ$S? G!yZ!@Hn@$fwK!hEyZ;uxDDw2kFb%Drrc?$&HT%YE_f%X<~-eR;n^gv@vor!Qlt@ z4h{DAE=F2P00F7j3z5dDSIaFk88^+0H(NTZUeCN$`BSLK9aa|eV8A +I78ZSva5(4uYpIEV=xvYTHp??f^9cHc@Y@!Mh_};J%qaJwx^E8r zEfE#D6pM2NyNH?j2s85IVZ}k_(fUH~w0(fU(A>kRBqs!df|fP 7VT)jo{6urflalGM~T@fUZlbEE4FTy0DnXEuzHA$F1ya(;K1tUI6E*{4v#U! zPSbd;qQflA?Xp$8BI>LgeWwxn$_6_9HZW89w95K4`Z*OU737YVQ1Xh=JjOM*P*sZ4 z=7`7%eoEl&4~UEYXg0 Nj0Qt^C1cOhPg9;fu~n>hH4CmFXo-Ogf{Gc)9%&U1zdQR zR{9o1AaNdIa~lbb9{Dr#G61}vuYC=&0v4o9<~;BT2~I!8|D;8Pp%) zdBBRhjzJg;#Ul(NRQ!~ss#!`vftty2PJMwS`K~R2ZkV?HHd{t}8#sK&o*r3bFZj}V zsMqB+zE$oPVR1UyDv6!RL ~TdFDiKuJd7J}P6ZR(yr{#i zht+5cR(qv1WEjJaF!KMH+Z4N5a8>Zm{C5%$`-JKedrMSj(p`_zV0W&OeqoFN1kY<> zp|=M@oUhPvrh0%z69w)zrzsHX{VF&%&bV(g@%lzPiV<5&-#5j+HTFgvA(O8%#`G+} zq`=^}KZPfT1NPI&*VE9|N$0C=_;Bu4u_7Z4LB1-Usim`N$=z% Oc!ZG~iUsuLy$ z^#t&)ceTvS)EEr%xzz1Gxx9^w)O~I;H7}4$x~j=2Mn0rx?NEWkYwFz_+sg`9_XTx? zo{MDO_VyG=0OES&k%XXI^Y0CaKKD=Vc8d=+n}m{@op=WhW5zDHO#(=d+(vK(o&Vk% z0J{+r1M!H9c;E)ci7nF-|8kdnh{m Q+$H2XQtCXi@%^f#c3}Gq zPL{r3ol6QZ6Sbp3e+>`uu5^FN&0?;fgh#T}q!Gl^C+DB!L+c9{_b-8F(n@+9qA<3y zc(wxMHeo@-!y{ +A_yYnmgo=d75<%JWXfjDZ^brA1O%uHXE<_^XQ$dn=MRJxBAGcisIXb8j0k+ zBL7rEFwM!{(=6)5Lh8?b17IC7SNj1+H>!)+!nTIsN2Cy~g!AtnTbOd$u4f8D^PdG* zyYEKV`x8vnOo `yK5CIK6>|r3(PDGU`;;bGs2c{Qy1|Q;?~H%EQ*WC$c1c z4Wqo`sY&n?h1f)p(G>@JI$Y<9_QOqBF1VsZw>+C|i}>%Y;lePw`euUD10;)nJ4M(s zNMkF@dN*`t~%?KA)hM+Y2^tNmw-ht=zE0#Q-LVZ5sg%j{gfuM5U7QZOi??aNo$= z9R*Y~%U%J?XRg&!G7x+`J$iU2CfQPlVih50wqHWWtHv>}i^_PsQ?(DEbA%RrFRi%1 zqMbz*iR;7}k0V9TNcZZtKtzspk39JVz%Z)3wg0F01RdA(Be@oeyFU^vmW7(tG?>24 zsa^7atVUe!(7$JI_3iQW|I&oVJ%wkHu_V1TV}S-g8fF-}ifG=QST1mY@k{JM?J-1y z+s^})pF9x9Z(3%zz!^{ESv&*?H>r6@ys#49*ZHV`jfYa^C*v-G$!l(zF3(IOuJW z^Js;S_u>BWuw~!P2EUK!U#d`SVMIkabQ=T8S@Kvz{rT74UUu*KwGhu1u=O-z1hp!< zP!$HPz5{xv{fU)E rk*yA-H)z zH;#pPU$jTN^yVyu ~ra+Ei~+2Rbtfhy8+ z^|d6ML-qmIhT%}hmt5ve(_SkPjm=B+{3&bcW*pzsDm!560h1||J(*;8TWE+J22hRf z!dJocB2=0bXQit!4vz&f9K=Gby z3UEP6srpMA?hTTYID{PUfyN6&^?=yZ!ZH0(@Q~c3-F_aeL3>s7CNMiThCMR?8$2F5 zGB^{6F__CM<%@n@X`o_2Yc#XH{Ln7njWIl$%P;F^phC0g7@Quklg71bnB;y1iQdy+ zIt4C-BN;4t0fpt&pM7Aswl^MTGJ(#p95K6oZz3}S-h1uI<`tOmc+#+u0&UvGUq$|H z^RGu^`i3W}i22Cv7BcH($O5xoUrA}hPv5L05tFw~9CHDG7=@F9E+~_=5+mAg%^-sx zn)YsBIN_?NN3n70Xgo*pfV~(=K@HwMJIyO=bcwC0>gpp~x=Ty`M0UYMvB?irTBqmy zmmqKYVE*x293*R-JnS~ByMQU=#9c2;hA@dxU&`({>>!eU2%M#0#^KO+@uk!6U}lF| zyL`&<%Z5#m4{3KSHVE#z+&OriZov~@! +nNDU=eDSoYz;n13ibUL z@K4uDCgV~;(U5=9K-sAkH@ wB{=ot;W#WLGN*1Ix z&VK ZK8u*nuT^wG zheMWQ%ws*-TjAF83HbqO`$Ej%&AtAxfxw^;ju1OQ@!db{BX`H*uXG1I?1%?9*`Y6{ z$LNm(LqeiVtakeOkW7`P!&l%3Oc?YsB5|A+$($oCo`I?2Au7Dath5Yj^!s^Kz?ypk z@O-t-;b3Ni1j+$NS#6Mr;?q@%!wXnXi&WPttByk?a|R&wQ#!EnH*yEmUK~)+-*(6L zVu|CE3c%a@E|OUAtXi`-$S@>Q!BokYe{Z6RVNPx1Vf@15{i-DG(_k!i^K4pCJjnm( zG5&G4q1C_(l=|HT7gKH!YUjyklkTZj3h7xgh5RFxD@f@0 &jxo}HkoqOrXw$-!FO64tMfj!v67OW)%8w;REI;s4hBG_|60l^r@d_{O3Icm5bm z*jao8=P27fczokiD^gLfo#o0pMQ2IPZR%<-f_hAU%DYA#y?BihzKZyhXp(m3Pv_vp zqG@ksvA~c94lCytgv_Uy2uCtpCH(i+9_R$_C|S+kTboVd@p#X@-i+O^CA yEFC??MC$3- zihKf^D`9lg-(yTl8+KmRy@hV8-I4;dlE~M7ooc7R6<9XdmWYbntFOw-j}CR*>@cU@ z=|<8XbHSiFAl&v}{M=aM*Gs1UCQCPg!p|M+0_41w%0JZ*Z_0GAih)iQ1Xwv3*-{BA zKUnPOLE$O-IY^k4;kYZg$R 3pee4sW I3r~&&VuQ#V3y|dm3QvX>{?zyan }!fqQqOn(>3yA`qsu53NWhwL z+X3-R%;+U2E2BRNJQb7{!>{sK_?irk#^vUUc(-d9n~hzZTMXmG9jt|ZEG4gRzG42g znIpkKy@7u8W8AsEa6~#^B^$I VAmAV## zJZ+D5_MvMt<2GYWbX9W)JayZ~Ou>^^*FO`a8!+(nA>XT@lNe}s?M8=;as8vpZ8Z6X z-|KP=CX$YBoS*+P(_A6xjLNwo6ADx~jxRZNJ(y9=5$EKuZ4{JlbU82j!Y&y}fR&HQ zsFpeQbn#`ZzKHz!^zNE*Ns3L2KmW%z3)}$fgbMO+d~SZ5*9WKnc90YSx_awpdQAnK zlpK5KyUWa0O~)(s414R|-AJjw&@&GbUQYRf=n9r8B9mybVA@}M-Gf!2&V9P*%i=^y zi5r|YdT&JKn$_k^pX_ZSAbw|x!9zQWmtI~RryFV!6u`mfL7Vnac+!F_QM}}32O=GK zm}>CuW}k72Vj5gub|}{Xn>NL*Q`75&e{JRkI`TwV=G=$CNkgguld~7fvSxzsfB@9W z-g)V#3 Y8yP<2k zN%>?9Nlqo}Ns!zM;a_iJc4kc?P0NVuUM=$7rqC>@_N@sD(u&nVByOOwhgQ >ZVO&MM0y|Ts!+EY%|C6XQXU$v%qg-!fsQ;W`%O; zPI#C7y_Mo4)>x!qGdBi+4pf8O^|P9|MmZ !=Z}>0R_ |wM^Kb0X|IQ#|w$vRQL6L#b*v9t{aUzz)p|=jKCS}y-m^jt~LU=v|}s>&Gg-= z&_aM0$VOB>AmFa3MsFSiCY&YzL5L9I+^4pvig2w7k_FC10U!+Kgw&yA!KIufT&-hL z@3g)*r~*-S;kvbyj;n!5du|;j{5X*Z*3IvmsJcT7N2~uFiXr}$)BUNnCOk~aqFfUG zuw-e42|PD~WBBX1nBT-|z3?=R@m$6b_kxe-fzr;@zJRpOS72NFfDEnSz&m<4M3;fK z+9vizsQhabT$??AX-HffBPa}G8jzGikJ_4sipAGQ5Gk(KK+Cj+sVe7D8^&W^2#`nx z-J7;S#3lHhrapim2ZFv#*sM})`>b&2Wz%hj%}1l%UJ8w#n)=IOPvbY4zePjP0W1KB z>k(AlY4~IoGsD@%dW+x=GJ%5WR06|+UR=0jbbOJb>%@>~24$Bhnx7!LF?%wb=NNU6 zijZSQlzO}%{ArozE*ohUnxvikc`RG6z)@7vnBz!>jiSs4gAq-%=3gCe)?OC$iFJOX zVD{Usa%!EepbuXg_E!o?Z(d3pu3p*qgkhj0Ffv`FKsvO91W|AtVuU}TGZrN11Ol?R zxJrW<1kFGz874{-GjL7gOE$!toGpgP?V+anrTJAQWYfy7J~kgai^2*g_7?gT9)?)Y zfYS0wm7KyF8YdJ)K|};)jfwzi@t7ywoI7+Ze}<%U9{J @*L}1N`c6xzuCItgBSMBuF=QKv z!+FIt@y@n91@OJyG1F#F etpcNX~NT&5$ypj}>$h;LF8m;y?2^(T& z42+X2xA3ETNm<*5%>`JdHzHgXJ6R0E6eWyJGJt9tQVT(2Jq7&A;p_34dT+QimOiZ@ ziso92rl?S4F7BD&0blIRk-;xY`wsZpRkuy5^LVIqqAPj;F6i`Lhn0K` N_Niy@L znD@nCfK@0v!ODLNYh;8B-1dQ^lI<45vP}as#FG`Iz$IEsd;qpM 1UoS$gt`0fn_fqW?`&|*QV9;hL6N4a z-d*e*U}{Pw;6TgsN4I%3x3fI;O9qoxiqXRa6!eX#js4?ses}uv`KA6mK Nt$+xrs*gg&wc4h7SutF(?bzz zQV31m{ 7XL|Cfcx+mu +dk$aCMJtkf$f0dZg z8J>UvO0&;6RtC)i%N`Iw%%!tEoK$Ghh@yDtR&FFbf4j)_Mg7Yj@QG;e#Q@p}xmDvZ zw+oBEuvHI9_?l4N%)A=G^Xb-g*f@xC^Mqx4n^5}FJj5D?m2LAQmr2l?!Z*tj>w<_w zy`ncs`zOS&+pS*jeG>Bb8W}Ly3{-}viu)(plI!A3u$-puBLyy)AH_1oIkqb`l8ATe zn`aWzWAMRC?S?~rsA4yef}j9|YrhZGt52uA)2ZCSsOQ(DSfgw#Y&9jpJ1Xo`>6V>5 zdRlxwnJ}5nQv2Aj@mRDDVMFX`!3q1w0&XzmkCj?^4M0+(q`;uqox`{kLK_+>H7K1+ zaI~R&dC*?Ti8QE+k(Q0^h)O&lffZgg&Ja(HvE>+!1Cii}FRPv-#43ukXPQk*+DKh_ z0)XRqI~51YN9N0d&p_P5o!sJ3R}C@* *0yo?aIpX@G&8FN5II{uqR%O%oK+20Vm|63BI((R zUIOxNPX{e`QS$%9RhfQKm=&`3ta$1&2|HV3{P+e&rS!hm!mNoc>SV5Yu#_|EjsV zJwl2uaBPhGz*A*A1 ~me)i~1Z%cbT3bIRrQ5O@_% zA*LiQ0LVBKhCHwR))}#p--OWAmhoEQ0B~y;P2^{qYN-b~DLA%Lc-0D@F50gA651Ok zKn##{f<8JcPSKXWmwZAXLU{&DV(2DnFHtR#@c|usoH#5F##h3Kv{;Rem!Pn1rw9wD zVMPqEjH=GMQ{{Ro!XQFLsUbZlkND;P`2p49cB0Uz2~m?-8P&W;QtN{lC%IEQ*#qg2 zw&U}sDxpsl!Wdq}&qwc$&Qv<^>-0b)@s>Ds{y3yeem`VBvry;!TS9yiWQqr$v)}&- z{Jh&MQ58Ne7f>m@{EUpDS4c035Xh0(eoo%S4Xt0q={+E#G!3>$>yke#iu_ZCviy3d zqMK>Ylvnk{vbI-b-G$kkiVFm9N>R8t2*-(;bhgq)OJjyW2yYfj+5FMUZc y+LI_N6jW#~Vy<><;sxu$L&PgQe)rp 4e1&JK7`a^!wYUbrn z2++m(7yClX>8a7pTBn@hu}N)BHu-L9P&4BG8Ag<@_-q;SD|g_YL-zj~5N&!YFzhGv zf-Cp~K$wCd-@t<2J%PNMnP;rSOdY_S+EYs1?y9>wCS^nks5O1#I18ED1Mf>wBM*Qv zm%RPW$ecUOxixU*+YG|h%iuxvEjZFYQEK9f2<{J8xH=Tg?n+6AV>ohvOX*g^86=uJ zVns?H{j>i35!W8Ui=QBwqhHPxS=P7Td2nn|te0=pio7&?PU>AJ4(vG~*sX8?-eito zur94G>36J|&Vp6CD^1z 1;up&DWhkd`Up5#N=nJ@6stY4dTzU<8!_ zh5$w-6vSl#0pX@i$AxW_iY;UNhC%WJyHlmj4_|)&{u`<`cyT|UKrRD!f00T$f!5Xs zh2!!2a8Pu~5N^_;&JSBD&0Px&gbzOc^zj{crpA|<_D-Gf7T2Kvu)M~nDEO!2rBSGo zD6zaBZ4LG3O!b#%B7L)opS>Yz&kqxQ!;?Y&Jp`epMDFlIY;d8vh}T*s$jV3zQiUl} z{4n*tQ9>g-?-( ^>zvpUr6)M B+f&rrRX=3daribsw3lVp0iEP!Qjs{w_PAR6mH@58bZfPjv1Bj zd1W)10Ykd<&L)D9Ujc|E2xr227F+A^{?I)09LWCB{0@JbH@GwhL{boo5el=i&M+eB zTj+Y*$I6Vh*ml=-0ad|YC+aTK9E_II4GW5;^+=!{M=pGt88X=w *Ujj|(wPB46` z`3|CzL!BTQN`sA|eq@k@!Uhod1+1UhuJ7Eu$_1G-R}X9WP-!G`J|;B14rip+JY0-e zgyN0jiWSP>clbvjN(|(WNjabTi4&Q~UD2z_ob@IJXj*W{gl6pw T^HbS=xmu#q{MGd6Xg?Hlx`PGdND?oWgj3?FW@J?}S{I>+E-g ze>d#!hPO?pABZyB{1CJEQxY&3rr4;W?Z0uYr$-#_*vCd`rZn~nFuk2z$@)2UNBx+& zO4r@XzoLL9o+}+Kx6>)5RxT%lB&=ItPcF)~+fyMdH&BhVqI;5DpT6vkx7>^^8MeP0 z)@~`IP8qt=4Ow&)Lz2J@SL=Qsum*1qQ7eZXtRiLZsBp4=5O9w $0vpv1 zv>>jeNIMOdpDqe7;I=F|z9*F3Kghg95GKVbz#LsL)fKRRA~fR^an@ta`TJWD`*n1; zI90WR-loM<`x_g(>^V?^0j+2Te&tHwomA_0lzvZ{G%Xz4_&-4NFu%im^p-${(Y_a- zqw#bnN$90KW~pS|jf`Q_8Gx<38J&BzP|souG?aI&9SQ*MGK%tWIPgS;t))n2KPTQ9 z_I5M2T5WED+z)KTe;;0;fWQBg?I851>e8ckXaN;HoQzp|zm&4~8-K;m>lX;ma5*Gg zV?BCyNp^kl6Wzp{;KKCBkg6uVHwD}kbvZ6godnrPNZKjKaTPquLjE-_Yc3)#?lVW- z0=l+o5t-YeA|eRRd=YT(l?ID)vH}~b9p}ptdLxW|-YIlkym$Y@ODrPD#@T#Qo-0}H z666$Qe{OpITbXGg`uTgr=~`0M60g%@(Z$4@Bl?*|*tsA3$#C)64-dv|G4Rg-yp-{M z{2Kus1E6UQBK`76H@iCqMtkWPohfi88yj{(N1DSUKExq}-dY4bf5yW`_Tf%vf(WAm zjOiIMLYD zW<;+uwcCfIz2NI+tQS<{g;2?X_8yL^ZxJzGx&ccF6~s)@kd)F(4ifIUzFMz99o?6O z?`ZhAxeY5P!U>4-pU+g1?0m2LkZ89pa)j|PuY2aoKmM^_g@(;wHPOhGLSMhjYv_xj zj*_DI0!AIk;y(MeO_W(-#dg}a!B|9 qcRXVL{t+7E3Hc19T7 cEl=DM)j`ud~2 zX}K}x1zE8G1T2{uv6aVHA;@>1D-kb81JmE`LbiQ_ZRwWl?Rv7ZDMaj~;X3qgO@GY_ zC+q%vu;LvxwTL? OnPacxEb&{La-`kR_mx7KYkaW~sNSDHMx2 z*I7#1D(}C-Mm2-lF3(22LS+VUeYyq@f)l{p@;q7|cTfM5sx<;S4zH#Z5b>!mi&U+% zJyVztUk qT$$a&ck}^?`7lFvW{0##j>w_t={~#*M0bsu%+e3d9NWLortKQvBt!J zrneZ5hgAz>qcH`Wr)wlwYpGWdO!S(vl3t{4uy(E%$^2t0;CSlF;<7;_;7Sq_*p&4E z`0mi5xyIJ+Jriy(mxd=uf(jxcJAi5baAUOz>|V|bc=L>5Ck-c*VPy7|o5^$))u4FS zkNXc~4>_GA>EXoAvrfHaRi9(e)SXQFPA_#=OHrfn6n5JZuvN~>e)wdvzx0V^edc{7 zKNm#2B+GwXFpCEyPEzq&A2j@CU-OIMb|Rd(;>acsY-p ;}}#Z9t65faH}qxNA4Lowg__s+dD5Q&_eTa+`*4l5B~1 zT6jnzyC}*t*eVX?R>EjVQgS>1>dapDDbD#hrRfRn=pb_(+#mI$gmBCuqqTKPh7&Y8 zv>gRSZgn4buC>S#nilEh%&8~dF?X!Bwm$J6Whmt8jZ7IdXGiBgxA0$XgAR9=K2QYp zcVY$nmuY{04kEXK$ht~f^Fq8vfDT@;1Ou#htKm515=wqgMnuIJ0fI_aU)EFZ6kE{` zEbcp74v@`N$Nq7mlWSPDFAFk?g}Lun=Ve2Ymzv=}=4DtC^>H6p(0YsmGpLwU2CFEu z$;#y5IGsayXP{CCdXq?}pCpAS?XCnh255k0p_d3h&Q=H~itKy1q6kZK_H+>juxChp zIkGhBSj #TVhFl2T tJD zU&`|Xp(Wh`k2L=I-2wn&46c7 (^kD;j!Qx_UcX15L8P4P zOwY sUCiJK!iuIe&UU<1m~F`*m5#AQ|6xk#;CCG zm`atJS@-VxNmMlE{2CNXr&nv@7)D>P&{}nhH