From a7c8e630faca6cdef1a50125ee9c847e8a4391bc Mon Sep 17 00:00:00 2001
From: itdominator <1itdominator@gmail.com>
Date: Sun, 17 Sep 2023 20:26:11 -0500
Subject: [PATCH] Complete rewrite and removed legacy bash version
---
old-bash-version/LICENSE | 340 ---
old-bash-version/README.md | 30 -
old-bash-version/images/pic1.png | Bin 217739 -> 0 bytes
old-bash-version/images/pic2.png | Bin 161857 -> 0 bytes
old-bash-version/install.sh | 20 -
old-bash-version/shellMen | 197 --
src/__builtins__.py | 37 +-
src/__init__.py | 23 +-
src/__main__.py | 35 +-
src/app.py | 48 +
src/core/__init__.py | 3 +
src/core/controller.py | 35 +
src/core/controller_data.py | 51 +
src/core/mixins/__init__.py | 3 +
src/core/mixins/processor_mixin.py | 35 +
src/core/widgets/__init__.py | 3 +
src/core/widgets/desktop_files.py | 146 ++
src/core/widgets/menu.py | 134 ++
src/core/window.py | 51 +
src/libs/PyInquirer/__init__.py | 29 +
src/libs/PyInquirer/color_print.py | 41 +
src/libs/PyInquirer/prompt.py | 98 +
src/libs/PyInquirer/prompts/__init__.py | 0
src/libs/PyInquirer/prompts/checkbox.py | 233 ++
src/libs/PyInquirer/prompts/common.py | 92 +
src/libs/PyInquirer/prompts/confirm.py | 82 +
src/libs/PyInquirer/prompts/editor.py | 197 ++
src/libs/PyInquirer/prompts/expand.py | 195 ++
src/libs/PyInquirer/prompts/input.py | 51 +
src/libs/PyInquirer/prompts/list.py | 184 ++
src/libs/PyInquirer/prompts/password.py | 14 +
src/libs/PyInquirer/prompts/rawlist.py | 166 ++
src/libs/PyInquirer/separator.py | 15 +
src/libs/PyInquirer/utils.py | 35 +
src/libs/prompt_toolkit/__init__.py | 22 +
src/libs/prompt_toolkit/application.py | 192 ++
src/libs/prompt_toolkit/auto_suggest.py | 88 +
src/libs/prompt_toolkit/buffer.py | 1415 ++++++++++++
src/libs/prompt_toolkit/buffer_mapping.py | 92 +
src/libs/prompt_toolkit/cache.py | 111 +
src/libs/prompt_toolkit/clipboard/__init__.py | 8 +
src/libs/prompt_toolkit/clipboard/base.py | 62 +
.../prompt_toolkit/clipboard/in_memory.py | 42 +
.../prompt_toolkit/clipboard/pyperclip.py | 39 +
src/libs/prompt_toolkit/completion.py | 170 ++
src/libs/prompt_toolkit/contrib/__init__.py | 0
.../contrib/completers/__init__.py | 5 +
.../prompt_toolkit/contrib/completers/base.py | 61 +
.../contrib/completers/filesystem.py | 105 +
.../contrib/completers/system.py | 56 +
.../contrib/regular_languages/__init__.py | 76 +
.../contrib/regular_languages/compiler.py | 408 ++++
.../contrib/regular_languages/completion.py | 84 +
.../contrib/regular_languages/lexer.py | 90 +
.../contrib/regular_languages/regex_parser.py | 262 +++
.../contrib/regular_languages/validation.py | 57 +
.../prompt_toolkit/contrib/telnet/__init__.py | 2 +
.../contrib/telnet/application.py | 32 +
src/libs/prompt_toolkit/contrib/telnet/log.py | 11 +
.../prompt_toolkit/contrib/telnet/protocol.py | 181 ++
.../prompt_toolkit/contrib/telnet/server.py | 407 ++++
.../contrib/validators/__init__.py | 0
.../prompt_toolkit/contrib/validators/base.py | 34 +
src/libs/prompt_toolkit/document.py | 1001 +++++++++
src/libs/prompt_toolkit/enums.py | 29 +
src/libs/prompt_toolkit/eventloop/__init__.py | 0
.../prompt_toolkit/eventloop/asyncio_base.py | 46 +
.../prompt_toolkit/eventloop/asyncio_posix.py | 113 +
.../prompt_toolkit/eventloop/asyncio_win32.py | 83 +
src/libs/prompt_toolkit/eventloop/base.py | 85 +
.../prompt_toolkit/eventloop/callbacks.py | 29 +
.../prompt_toolkit/eventloop/inputhook.py | 107 +
src/libs/prompt_toolkit/eventloop/posix.py | 311 +++
.../prompt_toolkit/eventloop/posix_utils.py | 82 +
src/libs/prompt_toolkit/eventloop/select.py | 216 ++
src/libs/prompt_toolkit/eventloop/utils.py | 23 +
src/libs/prompt_toolkit/eventloop/win32.py | 187 ++
src/libs/prompt_toolkit/filters/__init__.py | 36 +
src/libs/prompt_toolkit/filters/base.py | 234 ++
src/libs/prompt_toolkit/filters/cli.py | 395 ++++
src/libs/prompt_toolkit/filters/types.py | 55 +
src/libs/prompt_toolkit/filters/utils.py | 39 +
src/libs/prompt_toolkit/history.py | 120 ++
src/libs/prompt_toolkit/input.py | 135 ++
src/libs/prompt_toolkit/interface.py | 1185 ++++++++++
.../prompt_toolkit/key_binding/__init__.py | 1 +
.../key_binding/bindings/__init__.py | 0
.../key_binding/bindings/basic.py | 407 ++++
.../key_binding/bindings/completion.py | 161 ++
.../key_binding/bindings/emacs.py | 451 ++++
.../key_binding/bindings/named_commands.py | 578 +++++
.../key_binding/bindings/scroll.py | 185 ++
.../key_binding/bindings/utils.py | 25 +
.../prompt_toolkit/key_binding/bindings/vi.py | 1903 +++++++++++++++++
.../prompt_toolkit/key_binding/defaults.py | 119 ++
.../prompt_toolkit/key_binding/digraphs.py | 1378 ++++++++++++
.../key_binding/input_processor.py | 372 ++++
.../prompt_toolkit/key_binding/manager.py | 96 +
.../prompt_toolkit/key_binding/registry.py | 350 +++
.../prompt_toolkit/key_binding/vi_state.py | 61 +
src/libs/prompt_toolkit/keys.py | 129 ++
src/libs/prompt_toolkit/layout/__init__.py | 51 +
src/libs/prompt_toolkit/layout/containers.py | 1665 ++++++++++++++
src/libs/prompt_toolkit/layout/controls.py | 730 +++++++
src/libs/prompt_toolkit/layout/dimension.py | 92 +
src/libs/prompt_toolkit/layout/lexers.py | 320 +++
src/libs/prompt_toolkit/layout/margins.py | 253 +++
src/libs/prompt_toolkit/layout/menus.py | 496 +++++
.../prompt_toolkit/layout/mouse_handlers.py | 29 +
src/libs/prompt_toolkit/layout/processors.py | 605 ++++++
src/libs/prompt_toolkit/layout/prompt.py | 111 +
src/libs/prompt_toolkit/layout/screen.py | 151 ++
src/libs/prompt_toolkit/layout/toolbars.py | 209 ++
src/libs/prompt_toolkit/layout/utils.py | 181 ++
src/libs/prompt_toolkit/mouse_events.py | 48 +
src/libs/prompt_toolkit/output.py | 192 ++
src/libs/prompt_toolkit/reactive.py | 56 +
src/libs/prompt_toolkit/renderer.py | 526 +++++
src/libs/prompt_toolkit/search_state.py | 36 +
src/libs/prompt_toolkit/selection.py | 47 +
src/libs/prompt_toolkit/shortcuts.py | 717 +++++++
src/libs/prompt_toolkit/styles/__init__.py | 21 +
src/libs/prompt_toolkit/styles/base.py | 86 +
src/libs/prompt_toolkit/styles/defaults.py | 95 +
src/libs/prompt_toolkit/styles/from_dict.py | 148 ++
.../prompt_toolkit/styles/from_pygments.py | 77 +
src/libs/prompt_toolkit/styles/utils.py | 45 +
src/libs/prompt_toolkit/terminal/__init__.py | 0
.../prompt_toolkit/terminal/conemu_output.py | 42 +
.../prompt_toolkit/terminal/vt100_input.py | 520 +++++
.../prompt_toolkit/terminal/vt100_output.py | 632 ++++++
.../prompt_toolkit/terminal/win32_input.py | 364 ++++
.../prompt_toolkit/terminal/win32_output.py | 556 +++++
src/libs/prompt_toolkit/token.py | 47 +
src/libs/prompt_toolkit/utils.py | 240 +++
src/libs/prompt_toolkit/validation.py | 64 +
src/libs/prompt_toolkit/win32_types.py | 155 ++
src/shellmen | 13 -
src/signal_classes/Controller.py | 185 --
src/signal_classes/Controller_Data.py | 32 -
src/signal_classes/Menu.py | 88 -
src/signal_classes/__init__.py | 7 -
src/signal_classes/mixins/ProcessorMixin.py | 36 -
src/signal_classes/mixins/__init__.py | 5 -
src/utils/Logger.py | 56 -
src/utils/Settings.py | 51 -
src/utils/__init__.py | 3 -
src/utils/debugging.py | 52 +
src/utils/event_system.py | 54 +
src/utils/ipc_server.py | 114 +
src/utils/logger.py | 61 +
src/utils/settings_manager/__init__.py | 4 +
src/utils/settings_manager/manager.py | 74 +
.../settings_manager/options/__init__.py | 8 +
src/utils/settings_manager/options/config.py | 31 +
.../settings_manager/options/debugging.py | 12 +
.../settings_manager/options/favorites.py | 11 +
src/utils/settings_manager/options/filters.py | 36 +
.../settings_manager/options/settings.py | 33 +
src/utils/settings_manager/options/theming.py | 13 +
.../settings_manager/start_check_mixin.py | 51 +
src/utils/singleton.py | 24 +
.../mixins/StylesMixin.py => utils/styles.py} | 10 +-
163 files changed, 27028 insertions(+), 1105 deletions(-)
delete mode 100644 old-bash-version/LICENSE
delete mode 100644 old-bash-version/README.md
delete mode 100644 old-bash-version/images/pic1.png
delete mode 100644 old-bash-version/images/pic2.png
delete mode 100755 old-bash-version/install.sh
delete mode 100755 old-bash-version/shellMen
create mode 100644 src/app.py
create mode 100644 src/core/__init__.py
create mode 100644 src/core/controller.py
create mode 100644 src/core/controller_data.py
create mode 100644 src/core/mixins/__init__.py
create mode 100644 src/core/mixins/processor_mixin.py
create mode 100644 src/core/widgets/__init__.py
create mode 100644 src/core/widgets/desktop_files.py
create mode 100644 src/core/widgets/menu.py
create mode 100644 src/core/window.py
create mode 100644 src/libs/PyInquirer/__init__.py
create mode 100644 src/libs/PyInquirer/color_print.py
create mode 100644 src/libs/PyInquirer/prompt.py
create mode 100644 src/libs/PyInquirer/prompts/__init__.py
create mode 100644 src/libs/PyInquirer/prompts/checkbox.py
create mode 100644 src/libs/PyInquirer/prompts/common.py
create mode 100644 src/libs/PyInquirer/prompts/confirm.py
create mode 100644 src/libs/PyInquirer/prompts/editor.py
create mode 100644 src/libs/PyInquirer/prompts/expand.py
create mode 100644 src/libs/PyInquirer/prompts/input.py
create mode 100644 src/libs/PyInquirer/prompts/list.py
create mode 100644 src/libs/PyInquirer/prompts/password.py
create mode 100644 src/libs/PyInquirer/prompts/rawlist.py
create mode 100644 src/libs/PyInquirer/separator.py
create mode 100644 src/libs/PyInquirer/utils.py
create mode 100644 src/libs/prompt_toolkit/__init__.py
create mode 100644 src/libs/prompt_toolkit/application.py
create mode 100644 src/libs/prompt_toolkit/auto_suggest.py
create mode 100644 src/libs/prompt_toolkit/buffer.py
create mode 100644 src/libs/prompt_toolkit/buffer_mapping.py
create mode 100644 src/libs/prompt_toolkit/cache.py
create mode 100644 src/libs/prompt_toolkit/clipboard/__init__.py
create mode 100644 src/libs/prompt_toolkit/clipboard/base.py
create mode 100644 src/libs/prompt_toolkit/clipboard/in_memory.py
create mode 100644 src/libs/prompt_toolkit/clipboard/pyperclip.py
create mode 100644 src/libs/prompt_toolkit/completion.py
create mode 100644 src/libs/prompt_toolkit/contrib/__init__.py
create mode 100644 src/libs/prompt_toolkit/contrib/completers/__init__.py
create mode 100644 src/libs/prompt_toolkit/contrib/completers/base.py
create mode 100644 src/libs/prompt_toolkit/contrib/completers/filesystem.py
create mode 100644 src/libs/prompt_toolkit/contrib/completers/system.py
create mode 100644 src/libs/prompt_toolkit/contrib/regular_languages/__init__.py
create mode 100644 src/libs/prompt_toolkit/contrib/regular_languages/compiler.py
create mode 100644 src/libs/prompt_toolkit/contrib/regular_languages/completion.py
create mode 100644 src/libs/prompt_toolkit/contrib/regular_languages/lexer.py
create mode 100644 src/libs/prompt_toolkit/contrib/regular_languages/regex_parser.py
create mode 100644 src/libs/prompt_toolkit/contrib/regular_languages/validation.py
create mode 100644 src/libs/prompt_toolkit/contrib/telnet/__init__.py
create mode 100644 src/libs/prompt_toolkit/contrib/telnet/application.py
create mode 100644 src/libs/prompt_toolkit/contrib/telnet/log.py
create mode 100644 src/libs/prompt_toolkit/contrib/telnet/protocol.py
create mode 100644 src/libs/prompt_toolkit/contrib/telnet/server.py
create mode 100644 src/libs/prompt_toolkit/contrib/validators/__init__.py
create mode 100644 src/libs/prompt_toolkit/contrib/validators/base.py
create mode 100644 src/libs/prompt_toolkit/document.py
create mode 100644 src/libs/prompt_toolkit/enums.py
create mode 100644 src/libs/prompt_toolkit/eventloop/__init__.py
create mode 100644 src/libs/prompt_toolkit/eventloop/asyncio_base.py
create mode 100644 src/libs/prompt_toolkit/eventloop/asyncio_posix.py
create mode 100644 src/libs/prompt_toolkit/eventloop/asyncio_win32.py
create mode 100644 src/libs/prompt_toolkit/eventloop/base.py
create mode 100644 src/libs/prompt_toolkit/eventloop/callbacks.py
create mode 100644 src/libs/prompt_toolkit/eventloop/inputhook.py
create mode 100644 src/libs/prompt_toolkit/eventloop/posix.py
create mode 100644 src/libs/prompt_toolkit/eventloop/posix_utils.py
create mode 100644 src/libs/prompt_toolkit/eventloop/select.py
create mode 100644 src/libs/prompt_toolkit/eventloop/utils.py
create mode 100644 src/libs/prompt_toolkit/eventloop/win32.py
create mode 100644 src/libs/prompt_toolkit/filters/__init__.py
create mode 100644 src/libs/prompt_toolkit/filters/base.py
create mode 100644 src/libs/prompt_toolkit/filters/cli.py
create mode 100644 src/libs/prompt_toolkit/filters/types.py
create mode 100644 src/libs/prompt_toolkit/filters/utils.py
create mode 100644 src/libs/prompt_toolkit/history.py
create mode 100644 src/libs/prompt_toolkit/input.py
create mode 100644 src/libs/prompt_toolkit/interface.py
create mode 100644 src/libs/prompt_toolkit/key_binding/__init__.py
create mode 100644 src/libs/prompt_toolkit/key_binding/bindings/__init__.py
create mode 100644 src/libs/prompt_toolkit/key_binding/bindings/basic.py
create mode 100644 src/libs/prompt_toolkit/key_binding/bindings/completion.py
create mode 100644 src/libs/prompt_toolkit/key_binding/bindings/emacs.py
create mode 100644 src/libs/prompt_toolkit/key_binding/bindings/named_commands.py
create mode 100644 src/libs/prompt_toolkit/key_binding/bindings/scroll.py
create mode 100644 src/libs/prompt_toolkit/key_binding/bindings/utils.py
create mode 100644 src/libs/prompt_toolkit/key_binding/bindings/vi.py
create mode 100644 src/libs/prompt_toolkit/key_binding/defaults.py
create mode 100644 src/libs/prompt_toolkit/key_binding/digraphs.py
create mode 100644 src/libs/prompt_toolkit/key_binding/input_processor.py
create mode 100644 src/libs/prompt_toolkit/key_binding/manager.py
create mode 100644 src/libs/prompt_toolkit/key_binding/registry.py
create mode 100644 src/libs/prompt_toolkit/key_binding/vi_state.py
create mode 100644 src/libs/prompt_toolkit/keys.py
create mode 100644 src/libs/prompt_toolkit/layout/__init__.py
create mode 100644 src/libs/prompt_toolkit/layout/containers.py
create mode 100644 src/libs/prompt_toolkit/layout/controls.py
create mode 100644 src/libs/prompt_toolkit/layout/dimension.py
create mode 100644 src/libs/prompt_toolkit/layout/lexers.py
create mode 100644 src/libs/prompt_toolkit/layout/margins.py
create mode 100644 src/libs/prompt_toolkit/layout/menus.py
create mode 100644 src/libs/prompt_toolkit/layout/mouse_handlers.py
create mode 100644 src/libs/prompt_toolkit/layout/processors.py
create mode 100644 src/libs/prompt_toolkit/layout/prompt.py
create mode 100644 src/libs/prompt_toolkit/layout/screen.py
create mode 100644 src/libs/prompt_toolkit/layout/toolbars.py
create mode 100644 src/libs/prompt_toolkit/layout/utils.py
create mode 100644 src/libs/prompt_toolkit/mouse_events.py
create mode 100644 src/libs/prompt_toolkit/output.py
create mode 100644 src/libs/prompt_toolkit/reactive.py
create mode 100644 src/libs/prompt_toolkit/renderer.py
create mode 100644 src/libs/prompt_toolkit/search_state.py
create mode 100644 src/libs/prompt_toolkit/selection.py
create mode 100644 src/libs/prompt_toolkit/shortcuts.py
create mode 100644 src/libs/prompt_toolkit/styles/__init__.py
create mode 100644 src/libs/prompt_toolkit/styles/base.py
create mode 100644 src/libs/prompt_toolkit/styles/defaults.py
create mode 100644 src/libs/prompt_toolkit/styles/from_dict.py
create mode 100644 src/libs/prompt_toolkit/styles/from_pygments.py
create mode 100644 src/libs/prompt_toolkit/styles/utils.py
create mode 100644 src/libs/prompt_toolkit/terminal/__init__.py
create mode 100644 src/libs/prompt_toolkit/terminal/conemu_output.py
create mode 100644 src/libs/prompt_toolkit/terminal/vt100_input.py
create mode 100644 src/libs/prompt_toolkit/terminal/vt100_output.py
create mode 100644 src/libs/prompt_toolkit/terminal/win32_input.py
create mode 100644 src/libs/prompt_toolkit/terminal/win32_output.py
create mode 100644 src/libs/prompt_toolkit/token.py
create mode 100644 src/libs/prompt_toolkit/utils.py
create mode 100644 src/libs/prompt_toolkit/validation.py
create mode 100644 src/libs/prompt_toolkit/win32_types.py
delete mode 100755 src/shellmen
delete mode 100644 src/signal_classes/Controller.py
delete mode 100644 src/signal_classes/Controller_Data.py
delete mode 100644 src/signal_classes/Menu.py
delete mode 100644 src/signal_classes/__init__.py
delete mode 100644 src/signal_classes/mixins/ProcessorMixin.py
delete mode 100644 src/signal_classes/mixins/__init__.py
delete mode 100644 src/utils/Logger.py
delete mode 100644 src/utils/Settings.py
create mode 100644 src/utils/debugging.py
create mode 100644 src/utils/event_system.py
create mode 100644 src/utils/ipc_server.py
create mode 100644 src/utils/logger.py
create mode 100644 src/utils/settings_manager/__init__.py
create mode 100644 src/utils/settings_manager/manager.py
create mode 100644 src/utils/settings_manager/options/__init__.py
create mode 100644 src/utils/settings_manager/options/config.py
create mode 100644 src/utils/settings_manager/options/debugging.py
create mode 100644 src/utils/settings_manager/options/favorites.py
create mode 100644 src/utils/settings_manager/options/filters.py
create mode 100644 src/utils/settings_manager/options/settings.py
create mode 100644 src/utils/settings_manager/options/theming.py
create mode 100644 src/utils/settings_manager/start_check_mixin.py
create mode 100644 src/utils/singleton.py
rename src/{signal_classes/mixins/StylesMixin.py => utils/styles.py} (90%)
diff --git a/old-bash-version/LICENSE b/old-bash-version/LICENSE
deleted file mode 100644
index 8cdb845..0000000
--- a/old-bash-version/LICENSE
+++ /dev/null
@@ -1,340 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Lesser General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- {description}
- Copyright (C) {year} {fullname}
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License along
- with this program; if not, write to the Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) year name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- {signature of Ty Coon}, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Lesser General
-Public License instead of this License.
-
diff --git a/old-bash-version/README.md b/old-bash-version/README.md
deleted file mode 100644
index 1044e71..0000000
--- a/old-bash-version/README.md
+++ /dev/null
@@ -1,30 +0,0 @@
-# Shellmen
-Shellmen is short for ShellMenu and is intended to be a functional menu for terminals. Rather than needing a full GUI menu for your programs you can view and launch your programs through Shellmen. This is great for systems that don't have panel menus or for systems that have a poorly organized right-click menu.
-
-# NOTE
-This is the old and depricated bash version. It never really functioned to uts full potential. Please use the Python 3 version up a directory...
-
-# To Install
-To install automatically please run the install.sh file and select option 2.
-You will need to make it exacutable.
-
-To Install manually:
-
-sudo cp shellMen.sh /bin/
-sudo chown root:root /bin/shellMen
-sudo chmod 744 /bin/shellMen
-
-# To Uninstall
-To uninstall automatically please run the install.sh file and select option 2.
-
-To Uninstall manually:
-
-sudo rm /bin/shellMen
-
-# License
-You should have received a copy of the GNU General Public License along with this program.
-
If not, see .
-
-# Images
-![1 Root Menu View](images/pic1.png)
-![2 Sub Menu View](images/pic2.png)
diff --git a/old-bash-version/images/pic1.png b/old-bash-version/images/pic1.png
deleted file mode 100644
index 0e56611a97c0c62d714593620f01c2ab0f07f357..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 217739
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 )+4}g
z4dfeo_rkUQXLT#6w0u@JspL;1n#$1ovia75ea1_cbAo!E{Lhzf>=5TK~Q76w~L0vTiSb%rEXp>rk1
zIJ}R{=MD3D=z?}EH+{?Mv^JR(+oI(5)f>uklp^9rr7TLSs#=1ngVz3ZK}>8>boHnj
z386`T_B4Zc()O6OG*lAUmcHa3m05Z@`Yqj`=6jaGGZN6ds;G3VQcZm&{gzFE*CxOA
zn#pawp3b3i%5$628oah=1hm!nJ!}Fq)?%#Pd;)WzS)h^Rdo#_vPo$W)jNAP8l+xck
zt^aL%rvKc}L5}V7za-hDd=IgPHYub-^{5C~hgkdQnV*xqL}mK1EbG1n5r+Ql0}Pu!
z@3XjZDNY
zP)2rFvM$@!l|v37UV>cOT4A-Vx92s!8uRYmJ6t|^*{Zkgp#uz-XNT@Gq+{&O+}Uvd
zN}m|Wf8RV?fX`%Wnf7nnvzxvfYaW%wSi^Wc#uaWQzhgy2D2n3XHrnK0Z$mDC!5GWy
z*Kc_J`pwqz^#47UiF`>J0`u0}`&d~5HK)JxQ(6G^`;XaYJ%t{lXbt;ak@a`b1dKef
zY#O86_tDz>+bu8YVC}qeSUn8gzt5qpTg($XZi$9x(?g&v3_b%{%S>8np_+UeND4v_
zV#L{Gx+DKTdvDezxsGIs9Ro=Bh{)wG)v8hVj5K=CgMOG^^{D@#%svg+FX@sL
zz&h(dTE)630`Bh!4H0YyJU@NIhld7T4?qJ9h10o*F&f5N@grvly$7)XLf1PGiK%F-
zC1b~c<>1FJ24Ia%=|EsD?_oQDltl0i;9ek){rS%yp&N}aU%ue~`^#VPpZ@eG{P57=
z&^9l|fe0cZ>=Y-97dNFu-kO;V;|0pXH(;;Ea!?s{pW(M>qwiAQJzG3nGeZ>ww_54zDZe=R(>_S<1X
zJTwD|Z%}zY12HD%l0D>BeR+#~l?p!9+`Acr<(#Yw6V8z4Eu{Qb>n87++_bEMP?mf%#^44v#SJ0Y}&(a=x%2mUmJwW>d(5W`LWQ^4;
zGd2T)YuB0?CUE>tR$7YG)}$J+lbg^^=?)>UIn#P(#?#|d?4PxaF|ja{XF`yZkl)?`
zODd&WxA+H#R
z!{A0Y5xi&!VC6v}4q(fm2;`x7mC_yz!@x6z(msfW|41z}j3p?gaBS}-Pz3}J>Usc<
z5nQ-=l^AyqgmVW_2RsmwL}GBNbV
z12pVl*?|rXf)%lI4A#OzbS&(_2>h`CdvJ)f*+V1m{Ns=Ja0>YEfBhT!fBQFl{ICBL
zK70g@Oz3)x4-a>^zX!g315T%B=%xp=g(jfY;wSLs1$cQm!@3TK`y+n3Zva2{2auEq
zXxr@5R)DjFzBf3Z4VtFG;h^C>an3rxS+9@@5hV6w*Pnrm)x_+;u1_dn?BfXi0$_>6
zOMqpIzB_}h0oX{`4kzQJX&P9=!p&RP;
zy=%&o`EGg4-s+voG5uD+-I8o^{SeaKs?81u33@igMBEzPc1or|i>-M8Z}3e3iNl
zl&p%i;KBELcyrBnxWtzG_V^87zkc0p5irY)obmg53(5Pneki>S+{^O`dDRcehX7F7
zCb@avAn!^&lJDudkH0CY=^fVE&A`!IRNS%1p5t_S!C(H`VQI|@?H5>yroYb7W^iW}
zUUKo94uq0W^-Pj4+SHeh-R3CDOLD7uM+h2e%Xj
zxmC;exCZSlYucb`TZNZX2d!Hi4si&f(Sq%SPgKUgfF)Wf1b1nGd?1Z#1n`Rf(lVc9
zE-2o9vL+z-t^)}x&NuoX;kPQE%E7V8Hak0eOCY!PDa-
z?%KvP9|+D_Fq_y{@<9bt10}$%GXfA1!y4n+Xui`uU=~egNkBsd1=0=9rUz+{gfc;q
za5(cbBLT{CATccben5~c?#c)2AWD&rq9PKWWJH!8kS0lT`LvioK1BppVchzT4T?`?
zqcI1PQTFVV?6F}OGDOOJO2sIdF-_HbtEufZ@?Jom_XO(YlAB}vv8cUIad!N@v!1!M>;H72LerPs^^$X`9`R?Q(V8@_c_Ou
zijiR5KARK1F!Tq-#zmj8YeUwhZc!soeHeQV(Kk{&Y)>dnggny2@c+5uEG
z9oGQQKcwk83+Eh;$GjmUX-WPm7nNH@1d6{4gKa2c8tO;@tVxyFgKix=SZhH&@cGjL
zx&iL*H7o&NpA4E-10Hk>CQo0_7CmVkTfj2m)c4Q?9Pbp^qcR->wj;0)9VoGoxt~EE9OZf@8o*BwHd`jLC`rLQ#a8;HeSL8Yrb?
zp_3j!K5+%6p-hx=Cxk9%kStcw<~t$#RIJa6Jj*d`)QTBFA%KDuvhw3}o0O-Z9Isy%
z!E!UGv(k%b*kG*z@~#7xwgCXIDY<#>Uf|w)WB+ZHTSZxYuTq+5U&>Ax-*$eRJ6O_96V1y4
z@Hb^9RJ#t0Hz-@pF-ssX@49gHclOix+DPbmu)V3kd%)EGcWjYVeb&EoZ~DcwOLCD(n-SG4?s^=sin7ms8G4r}P22Pzt
zd(hA=!8!qD90LvV_w)fTNSJ-ZlIQW*0zZ5P_b)h~&-nOok7G-)2KeCtccwBVQP64dJYzGUF@-NB|Q`rz5Ysj!5=y1&=f0^1MZ4)M0q-Bi|sMs7D
z3J$@aN1lIO*0N0UllV2@-jwN3eCIa;j@C@HP21v!PoMGa+c)$h6RY^u>|VD&j=37)EgZ>7Hz7u#^=wUae5K`HKf}r!C&KR9Ar$D@Y*x%pq(iB$zCf%
zAg??`*hjXSOO~M8+*-MX*;o483uV;G-)9WfzqU(q)>^?<*!rvM@Ja*ons!^NVjdu6
zN-kx@y{2xor@lI8+CD6FWrpPc7qj`t*gw^P(k%xKf3LF66t`(`eu$?>o%{Kydh{
zKMO#2J{!;I>u@|Cp>=vYW=Rvqf7=erkcz(SLS1xJ%-3AWLINJA-w
zhV)oDXW3vi-W;2l1t25~QcebvXX&xC{shm(!6as}Dr3<(fE`#_uoBjyESBD%qX&yQ
zFcl%-X-zRr8&S@{w7Q=aMFg7xZNxG-ldzx`GwA2S9cI
z@BjdKd48Tu6TrF}xR<|stj`AX+_zHf-@{zIcKkGL3+Ei1wIlY`QvS>gb`Fn^k5|9*
zYq|Acp!%6oyjhpm01wv8to$I
zwBB_0^kP8J(Eb$f=TE?w
zZ@{Myz(4=_h+lrU`1eJ{!xJ4W9dDAht`b$xn#LDL?gNrAL5^}4fc
zj+7!;>p<-L)H#VX1Pic*)*AQs_i)CbX%FbEhEftGS?Nan9Wuv%2>$fIaL&MVFM#Vn
z&OpI>Z+Yw^uK4I30fB{VFbNDq@Qvg3nkYqJ<02>=sfs|Mux0^1R0ep>`r_~mKqw4M
zeHS+2Yc{D-iO!UdIp*FHkXO4_I~mQL_`VLvH{7^7Yw`PUzf}M;DioUh{<`)A-pA%@
zNw$JGf3NbroUGlN0Xx?Q)0^#m#*VPwE>pCxd3MjSAHjy1`h){$p=6&)kxQ
z9rC}X)=G)>ocO(e|9bQ-WK7<9tM%vm5h6nKbnZY5+}$70G=y^>lwpsI3O*G%R>8L!
zkzCgh3@0+;AZ)(S-eG?)6Q$6vGHk|!L~8H>bbSZXTCgAr0T_H;P@KY%f@O!!0@?@Q
z0K~ss0DJ<-s6G43Isq~}BMdWQsb||Z(7wV=+oCf@Fe#4&5)mAfcMu934)7md18coc
zItUB!&=9Nz8U=iK0Dk-JgjQ<-CkasAE!vFc4so0r8UuVK;WhfQg}?z}A3W4`X{Yt;WX>A7PCHSmDFN
zCpdFLqdvlk{Zi;Te~K$XDc~HK42+RTxMX^;IYY4pV8QHJd(MF(TaV*-3h$wmfPBG9
zij;sq3IsR-RpD3^BtKx3Rvs%1o3{W8)=f*&y$L@=*`_|7Mgq!t5YDG7&FaccS;?52
z0{24N0PacN(~8FwxEJbFzC$i+eTB@)J`3L*<7Hj_hzL*5Pdn75E_(tydxILl_W@{@
zvbN59jMGcxRwlSheRiw9ywr#1oa~if?VH#FCM^SH;|<2&{`R*~n&79`SvT`;ud^Ag
zz1tEPvo_ypw)nhh_)?xkgkOLCb#t9+av9*A>hs#Nw2`pRT@;0ti171IKjF9Ef3L9J
zS3F-aWuB{NIX^M8*UPhm$B+*)-G1U5ex0?6(C8LF{`3RBeftv4gE!@H13+&n4RM;A
zwwAtB-%Sj;!KSImXSDtW9X8)sm*q{&FN3l}J?Edg7<^kf_Ad4DR?|)&9zNiBJmTB8
zZ!o6c4C?JEQ}3VeO>X&ZmhHI&@?Fx;&RX$9dg*J>aQuyA=k~dU#Y2|+Zh6m13F5ye
zsUCs~Jo9%gHOrr=gJEVy(_4r8;~kE7K-U4Mu7hrmF#$lrTMHR*2tAxKYLq8vahl8r
z?d-&4*ADE&2US6Milx@^P8e8$y(XYe@Y_a0PbCfGSb}XdN_+t7pmk_b?KQMXp!lYE;f5Sj)!orW6^MMzGQ8Tj-7
ze0vtN-1`qd;xE5G;)l<7`1vQ`uYXn1w@|2vbBwO@zWp3vov`PC2J95He|PJHSv0x<
zJMpvUocxnbjTV1<)&se$&@?TqIg8_DNLz=?(
zgJIy+HZ7I$5KNfjI1Au!WR23m+PeomdMyM>Z`%c!%X`qmC;^Ha}w&;K!Vp!?cj&wCGe@jaeSZ2=`;yT5~Py;}(>0^50T
z^u+*&f6iv+owMn09R2oMnc5U@NnhT#
z7k<~dAG@2*4Sv}z=f51pAfmyto$IO>7rWDYnG4yF?_q^Km
zevK5s7EwWQg1C9M7vbe}#ugrTQl7?Ck%r7H1b*Ghp%f_XR(
zDmuSNg(hJVpi3gEdhpTL_wFd{vaWY%n^r&`DI&g8FcCf;f!+b8Gx(>U@A0Sq0eE^A
z1tkc9=iKD#H3L@;|Ip5!Zlp7o5yf6b)Nim!TnX+;+B$o03f!C8oKEFAC$|Dn
z@(9E;TO*`Yby>rBxRt_E^BeP?WX%Hm9+bFT=FAQM9wm;=nelVWwpd~T|D%9=Q*w*%
zxEbv~Sf1-41@qZmo=e@89!V%uBU(ODTna`Impew{PDD>9*EuZG`){0xKHK6;q{!
zz3AMYw0@wvce^sI>+$>VzhUjrCQ7b*E|qJ+X)Y9^8tAph=2@(o#0tjR>m#U6l~H5!
z1U+6TAoYG99AsDWqk>g8$4FVK{DF8g)2(n!*zWnRT9lXKSRaz^5
zfO~^d01z6j@$lgR&RIO}=<|J3O(y1JB0|$1S~v!to~!^)O4x2hsgWpSsKw8h#vq*d
zP7||PtvnExkebDbGpvDHt7zUEK30k(nE(JF07*naRE7u?GJxQxtxz`{5tMGhB&N6k
zpmk!qak0QE3c)}8eSe*ZaA@SZ@gO1*;0S;tSTG)+I
z3djDLQeMLEl#PQx7Y{gI0RKWC1&}$v2Ii#5vV+!QZd+Yk{Wz>i?Ze0?F$(?#GiA93
zvL!}dQm&P+cOJ#J1mYy^%t_(Iw=%U*le*Bq(#oiW7fEcc>?_%6O{y(6dnqtmBD;NW
z^16(%^<@R6ZAp2XV_~hX*A3ZvlVxTL@9oQa-)yN%B$~9{=-oJODzD3bRdA%0=6$af
zd|+?677%%@jl@(rQ|$b;bIn@7MiJrV`5C6a9E{mIpT|S#l^gCgd(k+zg`g=jOrpyq
z)*7$0bnVADUD%ILkCCk}%2!1HPNI~GCgE$ofe4`T@Lg8*b&ebtQm&UZle3ywYhj$3
za8DyZ6DhU2b(g;3IZ!Vg?B{Z=wE#Qz`3>uEg10zej`&6G
z=58Qgp5Y&Ib7As2UY+FgnlkmhH;MscfV(@5=NBJ|6f9jE;G)ZFztv4&Snwd*n@&zS5qns0(lqhqvs04kI}Y-
zo(a|gA3wI}0X&}oBJJN(z%HdU$VUh!2&3=$`2=Sfy%Q#$bDdACaCdhP>m2&Nmy;&z
z8GDLxI2@oG4YHE|`Q;gk0R<<|bSIep1Y(J*OWOCnZ+L602fcbEEKc5!d@@DCjT_4l;+IG-W2Oj5tLgWP@|N&Q`9X|DzRHPl;LE$Uh3;idV5Z;-z%WEG-krdKHPkJ
z?aA!A1-J+73*x>;f0wM5YF(~W63RX+%}w949FIqQ`1lcDzkc;T@OV(?wdS&OfXdXp
zy}`oZ&rfupq50sNxpi+)Z!M#1jm+h7DHx))M%%Wq#=zL?!HH{S3WTp7(#?FcOW>Y$
z4!`{R>vlloJCy;;tN48@Xu4F!#dW*_(3?B>jrUi*XF4pGIxQSDUhITyS?1b1=<}Cn
z9uD-k=QCxovgChJk(vfuriAPG;~-dF(Kk(_p-90RGwkyn4i(>nep+Me<<}fLC{mli
zzwpeQl+3I(-#e+~<|_cJw*Y3Ugo|pz1o|xv#Ob;%oEYpR<$iaK9y^s!DQnw(O}f`H
z#btmP#u_|6_5g0@$MPC5x=|zmmeRnXZQzg?Y=8_M?b&w0k6ySABp^?~w|oKkW8ZWg&~*;X!K6YMYth70EAKzg;{N^)w(p{E
z9P%KXvy3lazJeVAY++3gVkb;S0?30?Kv=Z=?^eujL(mac3Peo=3kZPHTGBW%BQ7^L
zGDgH7AG|5HMcB~GfYQq65eFLv3^*Bg3UQVMA^<1vnarc(30W3YCDfq=5vI%l=D>y;
zAjp|nfs{4vtFJW4E%Tj|8kl!GlbBKI#jkT3T10^B&li%+H`Z-NYn!8REwu0I&BKiH
z^_EK2(nfLB0=T07dxJn*!M(M40+)^PpxnivMDM`I;vNd-wSeqfgMWHqQ@sT4ts4Jt
z44f2o*)-YxEdbe4iWom5E^s2nKtO1d0ZMSwlpR;7R
zR4xVcmdYHB6<%M@nhsLB3z2o}ZRhN%w+Z_9oN)GYu2rU3gO{$EHAp1vUCMNM-7@aM
zY@Q*%H4Mu4pnF^*xtVRLqfcGmORh4zq%@u`33l{a@|G;HyzDiM$ZN~1m9s@&Gk8WI
zzrBX6)o05-X|!j6SqY*F!25m6!972-32TnxVbaJHH#>}qCn7{pTK;Yt!m$N92N-rh
z4g`{a9*8q({z{=f5uBSiabbwBKV|`V6a@GR?;TBVJ?kw-?NtP&;O%W?)=&&I1RRwx
z!PrSq3}ywzQWw(;D5o0*=NQ&n*t5m`T?=MuTScC=XTxa*&@@u+@m@ed0-zaaG;nf2
ze{vvJ`24vAQybfWS%P%DJoh-CER10QD!wC=fP44%_flTdM!@p<@i7L@=zD|H>4Y!8
zf5V|YdcSjLC~_bNXecT*nUIxVvxUA{Bq!M>f}EC
z^nFs8HH?0a0(A`iWKEertoi6`>DI8J)@}fU@)i}&YPL(W?yO2TSbXz(YtMwOz02f#
z*Gl+K7!skLbKu_6xTrllW_{kq58JIM>z617<)$e&k9jL4doOd5@70f9*Y)_@-~KiL
z?#2fl+cw~D`E5Jva7!l5C2}nYa0}2ejQR8V{3_sAxPL1t!JOKB3k=8Rt;T8SuN**m
z4Y_8Ftm(UvRmByu1=M>_z;m#M61O}_cip;%RCT4y9JiJpST|;uz&%CYHfuwDuYI>%
za^Oi#_y{bga5a(Vs4O?-ad3V8u9ZE$kDBD|b}R5M$kY)vkYS$h%|_l_~6Svn&UykS&g<8
zcHqksV%-4oL-G9djJ`Vy$VLW@$MK{+2yNTKxgO3KI8FgPa*;B9WbK+?rn)BR%WQqZLFN@8aO}Ggd0-wiy_LL9Ii*gy4ZwPBp`6Jv
zE9(#pW;dB^4NLD5=G&gZ9p3fa|BmZc%AP>sT4vuASbfv=eb-NRo*Z!tx%OaX&$fKM
zsJNA~Zvf6;n_nZDBp^+Im6U+;pA2YSFmpKKS(2{8;xjz}Cjl+aB*50Wr_pfB2MI&S
za{@LBQ%phFVF~2(i@QP$wjuj71&hKAGJDVPjArsIIC%;7QC-7JSr2k*AduG35CK}i
zLq+L*iM$DKpyK(ugxDdR{dC?$_jKyfom*%MKpX%A+>wBw|Ma86FW-Q#j~v0U-Z0vR
za6BH+_v}GL3#~McM+xR(jWGEH>`Ub`B!aB99U3kEf0zxrbB{wyXq!gb-Ih+o$Ae4-
zU{h%j1CA|>>mZR=6u<=C0LpZ*Y$cMhA`mNZg`Q6SKM+Cbw7JZ|z|usuHg3ilPqX9z
zL`q*^`;~z*Y5=12ZQY+=^ck348>gu_=B`A_9ly$Yv)sJQTg!-%a6^z}3)r*T#dnxudT%2Y6G}NK7IOx)5{6HxlN?MOJr^TZ|$e4?^`z-iU@r_c4si1m#Y4qM+waD
zl_suD+v2Amf5b1p{JM)n_G{!)|97`$h|b-+nsr$LMPADsc1|t@Yt{nVTifkDgLiYX
z=h$3ixT)bG&D8fa`<<-~w2_UCw>A-7l2rk0R*bJLV~_~LljHn){|CU2kk*#gN?gJasd32dMvGH
zxi7r|`>_I;?j0fb8kw_r`F^EV_icTCE9UH;&rZq6_hO}prTcT~v#TiE`qs?bQ4KO&
zqBdrm&cL&n!UO4M4(c&HXqE+UNTv9669+gxhz|hZd3f1S_RrdcneSpj0u?YT)<@FaUmgG++uia%rWd?b){p5=coIJ5VVNVrfwA
zgRDr@Vn5K80y**&NlJ^i6Z)Z63YHa!oc!(vtp}|Y*ahEc;a@RKDhq17=FO|c)HtPQ
z<{`irzTm*fL(ae}7I440Nv5+ii~N95H)g{O*nSmoZ^`H0+`_wdlevby2P8%Ktrhl5
zm|P(s!<1a4^t`fflziNVze`#B9&e>=u3Z2_e>GaaNd()skf}oiX0Do$?&7X7i-v@aY=F%u>pSk*y5L8PdJ}?==KiQ0ex>lq<#JxO{0B%8OB%u7D_2}okZnR
zT1!w8lAsiD780Vwfs_@#oCnX^wuR~CWS5izSb^DA9h+<20MH;dF=z=hi?2Us51cAk
zX9QRY3O{+2Sm4#T;3%R2fS4LX(i2I4v2)41Ht)*{Lr$Jgk#JqM>8LX4YGY)?_^W|?
z&V$AY@ToEMX0KJiqBQ|E)-d(fEb4pu-@B!3b$Yv${t~8R?BjRj{P;Caj$RY!`R(`L
zUnQ8v7Actqd&!h(13Rwz{<)<%>+t*Uzr7i#7i8;rt|>g#H37qeo2~5Lw~)DdZkdl?
zWB$Ihokr{Ih53m8-UN(qDL?K=4y*O_KD1pcK-x92>iJ0PI8lVdjDA&%j
z^&(5I@=SS+IRgk4p*I+8RER0_x90&eq<;**G0)o0V?+q`AF|{mIE5bYv{GHdGvROM
z!n6{Sp^(a0Sa_839`&KGWWcMasHYR+nv_Kem?Vu;@I;4j|9$^FS3?On@Xj
z`0#WqY!0OD$b)kE%L}6~@6UKQL_moRIBZY>v#bZ&vJF{S)RhvmY?r{gK@OBDdET#H
zuqcZFUzUEjnNU#RICg4)oMe;-)Nsi!AhOfQ36QSLYX};qU>f1wY5_I!y1gffHB$T3
zagVL^5@T;r-pbA0TQbSs1B2yK6W#Z?5azO^WDm@Tc2>x*0Ypeq)zo%-UMkLmz}ta(
zTV+k#l}w7Y&s`&P`EUIWrstx0urAyWK+84k>ygWfBJaKAnts^|>Xn=N*O;UBW;Fsq
zpL?J4>y$}wZNp#NKrKlL>Rlpp2Lmf=Fp+2FyU1Qp@}Dka%1Wc2DUbSo)p)4wX;w(s
zE7kg|&XAj_M^>hq85`w8Vr?Yk6WJzadNlLJxWt-vyT)o_s*GE>dYKwCd(0JofOZ#3
z30%Ab8IO~}t{uSmpyBTg_?wfdF57#}y;d)1rm7NNAianLI5>BSRaURi@b`q>2tal`
z2&O~ED>ecr#mKvZym)wB<)PloMFbva@xU1=F?a1d2T~jXtO#*s^F6aHIKkv8EDRuk
z9K)R*K7Q124(R*wJ33d?Cjfj%3tw+M&OrnyDNg`S5o;Zo6q>fh>D-|=0>}}ycu>Hf
zf4T#M(Hlm?1cd{v1&nRbv_OAG%q$On;vA#zJI}V02DKji(@Np)?g7TUc(z`6CxX%%
z+BHxffOAY>&Q58Zg=Gs^1Jwu<&}PqvK`tkB1VswNn4}DlO$@%Q@wC#g&d37i*q_9b
zKS5*!Sh8f!zsYhgdTK21IjsE_*@Fr5JxJ)U{O1f`
z$9dB1-^-^6^&o&)V#3>v$L^wLBI;a0I&!r_&2a5$=yi91ji1wKzRLLn~o;
zXx3nT0BjG(EFU$CzdJMytgGJS)$6(*|#L>RZs79!%+@4~sXmgL4Ye?3&YuuKX#b
z^QUa$*HDmI=ltY>6f`8ZF$u6Ym{=;C5aqHNlYCTMpDdZldh=Wgpq$Rk4>CZZ$a{Rk
zChWptMB8k0!@LOY)l3ZXle@^?Lw!?RJJp>sSy&711zC!kTW%7oYUf0m%XOh*{#lZ@
znQY&?Iqs|(-*>+7*5n$Ky7$zVd&{MLy=f!8W0b+~K`|^hWLw8i2_#+IM-{-XWY(3x
z-->y+l|8vfS_jsn0ggGdI#hwldZCYOg8t-6JIhwN>LNEBU`
z7YRTiDTUM7;&{~2q&Akv;n@IYCO>TipzDE`u8W{mYc(1TXm&ViL_q280XTP(k0OF2
z1$HT_2?6-@06ae_eEs$a@CV%AH!#-1Sa`;qi)~~29_N=6y8aBn0rn2}$2+ubgAX4+
zfZ4$s17{fI6hI1!lA~jAYNL{|p}gs?R>FL9&WedK7>C0hz!H$7H(gvj1fY%3FY+k3
z?E3>5pru&(w((Q>e;105v7eub{f8ytW~n#
z6CgBoBDoicaIIVdGF}oiDcTa||e#
zOARy|0Vz}Uovh{cGG&Hat?xv8t-sF2Pr~@^lI~WPza;g|^u7R+^1ca6Hx7AJ+$9m~
zt6H6?_&F_GnD!~1!}M3{
z^h!{*MiLnQ9@d_@Tx;{w`nAWCuc
zFXus!rU7iDV5|i|aO43!7L(sO9Xfz%r8ow>d$?4323$J72!-ezVkYVVA^$V1XAIBe
za}M2Ef!X^Rj6hyW7f$S)bukYIz{0c9n9!dLz!nYnIDGy9X5i`h2`{Gx5BCSO64wHa
zZnKYt0SB}S_~F9=2d(hezx{%{`%n1khkHDq0Aqlc7oa_8eE9GIrti@`JCL(*w#U=?
zjN_jg9PjR7tVMr5`|2_@DX>x!;Dbd0>74^xiKa&&SQax_urzS+X8|yvqVixsD}s$tJoiZ#MrmCSF%;X0Dk&quPCi
zqPC<^zju&lPcZjZveZ9&gM06>4K9(jK*3vYRJO>}0mWuUoRa9umR#JtUbuyh$7&D`7yl>x`Xq4r1e~)s>A;~S;Vh)TF9d@~XNkg_4p=O_l)LUuCZ8C&wn_GUCbR|$jxvlzcWY&8KHB`{~Fz20MA?^wLAO
z3eJu}MTRGNS%x(h2Q&Z!f>)9UwtO8e!8*d}Wbp8jpt}~`^9vqYjgJq2c>xT7Q`h1C
z?ttKcLNV~60q*Y!=ED(RzW#>e&n4d|yu?CCzZg0=`GoDi$Y;EW8+|Ct3YHP8+*!nat
z@5+~Nzq;h?!8wsnxaw
zT!Z9b>sr&w5%X@M`jh=sfPn1g#`S*kD&XFQDo1&EFlD(`=02sPEFVVPq7iO0r@mKE
z52*OqV?aK_9E^kbgQJN(V2*tZu?A5lsJPCa{b!AXfx=x2eEM+2`P_qiUI)5yCF25D@+z)F?sd7p(e9KT}#B1GQxiemv1t~J|O
zV(v}7SCC6tQ(Gf3t~o6vA~bCS1`@Eha=xX&99@@uvR>N1mtFf_H;8(6sRVsuO-&XV
zi&L3|^<*`>bnzjgN^?-C-^N5{g+I!f`#Ia~
zJpp{{t3q)doKIHtP1euh`Mk_kfiH^7HXh8Zs(2_V)o<|Jawco~>$Uroxjx=<<~fbt
zbxGFG#)Cf0uWu=C;`y=`YuHgleRW)uZTmOfp@M|8g-U~T2`C5%DBU5c#Hdk&(IAa<
z$wZ{PySp}#?q>9W5gQEl<9?p|dEfKTeLlOc^E%F>&Lh6Z99c_R{S}7t8lVbQxUp$B
z1xQCx;O`|jYcNFZa?&ji$nHWa;+6t32ZT9QbD#Gs6X-{^{(a=`tx8257f!R8fthoC
zrZ%ip8uu#jZ=;t}mE+dPqut3|?G35n;1XYd;$xgY5#!Fd1VVxxPfl>wy<*cX4_T;)
zao)@T4NM*kt`VKjL!FIYmzD240`0SErO1N@HPsWpJ_$VzV;Vla?qQxZ@=0ywL$0{Z
zXdsl$e7Kr=r}|i}x31ncUS?lyv`rBocbYbhyMk+s_G_7Y$>m=YU7S){jz-1*sdG6Q3
zqL|+(N;OL_;$9UVA3C`B({=>?h>Nu^3q*D@3qLA*?EWJV_?+<2oY;e|O@N)Vqo(ez
zaiILJH7;t^@YIw3gAP-fc}%c1LS;NOfRXh$YAtBu`3o}&8l3*B0z9U8eD?k7aavpZ
zh1(`b{{nS}2@l){a
zlRmWNT@E8EOeWydt7SJ0lSD1=#f&>#1QPo+cJS;wn>8U`0Q*f)2{q1ZYx9uFb0*>f
z;`+y<>n>?>o>zqLxu{#k!rX{f+S^v0#n!zX-cVqUKW%WA?+_G{5%!wV96vdFgC`b3
zvK~q!q4#IekzuJ9&w&FMxV8IKi2RdA0-2p%pklb%Qz96VIg9~+gktK2K2a$jR61;;E>_lh(8&-9zL4?1oYhoM{2vn>XsT;-+tsR{>!<*p3IHrBp4n|
z0NJPWv-9}~=Wh)uHsB6sDW*DMn}*MeT`NY(D4Kk?Xxm%UMH3xK!eZ=pg;ZQtTmRh6ylCTMc3r?DS25YrjYUw>
z4TIc3_4XaiMlj~nPEPPehId$A@*Sr2gNosnup3BJid>UX&|EY3&P3hW=ss2Lh15sp
zAQMZrszl&y8PSAyoB;WUjHPY)-+xd6Kl&R#u}%pJy>UsKkzt>(8>waoR!O_XoX6LL(}vQZT{V&LZ{(uwKkeQpxCmi}9yW;FYo
zhmThC!qZrrd+BNz?TDd%3RXW=^5ezV3%UFD(_d;@ovGoz3UuF2x1?g$xSxj4ub?b&
z*5YQ%6I39<=7Bez|1QwrjSOCwA#qT!7n(&nY^J)rtG4Y4LkpXKmkUR0e|f(6je4
za3~dn&6g>%U~g6!?=cUGi!BUL&x`Mmxoq`C@BUNeh_6rXAa`b0F8zbG3
zBH0EVCJ2D1rp`)OvmjG4+f$DKOQ`7(JMqE(17y|UpQb*Gw~Je4724X5_+9I&ES|Uy
zJ@4&bbA{XCa1j6@Q0
z+dosJnVq;g6DE`iB|6xAa2S2%w)zd&Qa+FD-Z-7v%5;1q4v};kHyE+E(9gWld>HG?
z31L|zU)6M`roHBY=;b4e50e#NerXk<>_|$A7Wh8E-lE+gUNh%nEikXa&Q`#+eN@E$
z*!xeoc0pYLtXbIH%U%YSu`;*c)&5$cyxZjTb-VZlN?sAEd!OFC>}kV0oJy$hXjWVY
zPpSLGemr@=;Lh=?;M{M2+IQ`o|6INC$|UOm@p%eYmrutBSij5X;x6I9slHIMhi=^8
zk^J%`PYCC^l%${$-fCcDQXIxTWqg4jSMUv)T1oDM94VW=d&V!S62sVu#nN2_Ih|vL
z@+euORk~RF1Ib)J<_~8KGl0ICrxJbXOpi}_ES<@IjwrSD>%z}&m;L~-WG8zZQt@|_nJ{cK;Uz7NXHM-;K40H6*N`&>y5%=DjGlhfF~+??G3rf}yWK3opaumS%<~
z2^vn`%Azcd?<+Sv52h5(v+q%Hgw_{_{-!Z37o_Um7Wf@IOiM}gZpBCS@GXHY*XnX3
zlM;+@T!!Rc%Q4R=eY$l*BveT7DdC7c0QXp4)cU
zuoXp8sLivu>?lv7%$7WmrCT46okwrJ<#d#c_{{#dBb750M;}4%_TzZ?A{%_0aJevy
z(NA4zw{$V?zp5|F6bp;-yOPGRaJ+!p@OOwz{-xe~I2nRzN`9~n7S5ngh@OcK6)^KY
zzwCT}Pa3iTTRX=rAKzZJsy1!5q}j0JuK0Xh~e~R;K
zW(RrZ^3FJk`IiybProDTNS-v-HXe~Nl87(Sdn(m>ScQ-~t?Io0hdSh2+gUsCC&owx
z|0x`S<1C>}P?Uc^zG%F=QiwIpa6;ra=9K25VXiT%^aXb7j^_z&IvH@On4bM)mFr|t
z#QXSWFaReOo28l`pA^XRAzj&y>Y(pMIrA8Bqpdrg`}&gZ-gw{~PTR1)G2X8b>VwrT
z*u>m>eV_^$&yez;a^NyK$}SJOaJrAZJ271~gtzCrA@wdO=av3bqp4N2yZpq?4%%To$5^6=b^};~eOz!`
z`$&Do(9v(cr}udt)?rL!TB{`6F9?@7;Zp{1gJi5$E8ovMI(^>*+>A?Qoz%U5%a$EJod
zYZ8fq>A~w}srw^U@?fp1lJ0b&lYY
zw?sdhuuX5hX3(IY+zhf!FkYZj%`E0vHPX<+KdGPOa>}u{^iv~x_FUlP(9Xva^9&};Sy43osq7M;5Q(S=IiD$vJr@#GqOOiu)?HT@lyfJzs6w)2eviOZf5PB~gv$)VL}(
z*WW>=8@3$fzpi00m@N(ZQ&0KNZ2?|jn*}Yi_o@PrTvF*D=J4m{w_Flw#_{JV&E0D**>6D1Dr1e@qNlkc=Wt7MDWmXmH-3t|MaEF|%+uis+iA9phm$P9dUWM*KWPmhM6pFmzzCpMcA_na?(B1Fr+vU*uS}X
zN!}38k>=Ur$*RsYlbWl8|M&qB$eNoJ$29J_xC)c#vlS&ss?3m$CbV(RIaop;SNHns$)h$SBTM|6a9|!Zf9hTIqe&*%D8TYz68QOFHe?*dQK1WSd3m0e-|;toyLXY`FsxO4gN(++Kld`^1Cnz
zU3#EVCipj10VnarHc$KR)6mB!HS}uECL{q}_X}MP*5!9Un8#HS=V#s3t<93dwsE32
zHbF5p)SUR)3{QCp-VY7MxybAgAdWfDdjSe=brWhrc>psGp)F7CLtSgndgni=GhEb--O2St6gR(l
zrvNR@tYN2w*wc7Q^G*Xh|2?`7$%9X-r}fYLsHa{hq|Dl9-T|4LUkQC9iE&yrhTj~V
z;7sBo5NSmiHv$);EMF22WA?Zs}dF!
zn(-|Couu2#sRlQ`f2Gn(w&bnb@7Ua=i=)Z(lwZu)Dj=|&o{iWDck-)&y=b4@eX5~#
zjuFBKvUS~z=dqfiYH1bD8QHIr=
z%f>67FZVoDZr?{*=%lo4gZ`=v`8=Ags$|t^59Q~CyP-7+8)~dp_giol$DpGgz{lYG{P9Z}oUe4Ot2(~z?>^?O%Gsz8>@iA|rrcg;
zPvvh{!P$O{eWz+UllMG*q+O(ce?!D}3Z(dvawkr!@A3#Lvygdu
zYP+(?no&sa;
z;VZpj?ce(?tbQ|nOo0Z%Q!+g=B};6#(pyYG9e*Bzb%y#rckmtPm8ejTV?j2rnKK;y
z(sqjyf1z;5-FiM##j%mP9JU);*M2QIPRy6o)WBy{(w_gv4$90%R0_IidyoJ7M!pQJ
z1!NVTeT%zh^lMd&x`$L(6tDU0$M=0X6Rr>Kcv@Tm68Arz{Jbw#*(qhjM}CBZVy9N`
zl+DET=2(jF6D82zoFPc#52@mGEcp3))rWYDVhd;D8{aG2&#?IxwW&;oufN2
zbzjm4!RF@b0sGdlX`#-3`E=HTTS7xdUkv&QN$1Fj5bYO!EsCdqe@Oaboa64o6P`18
zvVJn_3kb9E>wAZrIQ+`16eG_3_svIe+29n>yBjU{d(9vMM4Q}if{2XHvg_jU)Z;Zj
zlI?(o^y~>WUuE1Ev&Z%F2dQAbi6d$>d=DZj+8I9LM~uT;;}ocvie@>heJN(Jze@*!
z!(igH!}$9Q^dNPd3?=soW2V{QZ)|-5ZN0A2wx})H2rZT#;$DBsV`eYeK<1q)BIeVO*-QIYkO^24)-L*v_1NxH*L8QDMQuj
zWnk1^uI~S&Xg4Z~niBWYn!n;jHO@3(NX3MUa-4sj=em#6L9i(3o>G`8xGGD(1nP{u
zK3!XI4%!~)xX6pkq6{Y-#JVx#h=^jH#O>a
zLt)~(X`Ib5|A$-*8^^vx4uIdrY-(@2f&;?tJjPZtkd&wNVh#19^@W^<2W7uq=%^{z
z&K7&liJ-W#%nW2Ewr>n`EQ43r*v3EN2L&EI1mBWK-5%dfE8Sl)XS93YBXQB0jjw>&
zqwIW4)JZk{$Xj$N2=_&qi#A!mKEpz=4!&(nZJw~*BOV-9a{P~A`BC6QXPI;UelnAB
z;xqOKNPt#A^}&J&;F<(l9VMc3pfv2|lH7qbC&I76b+)1ktNn7&^4p>B^|uY)l|RZR
zJ;5@zSYNA!rb3w*+Lc{6#ji5
z#gbRFr?T}+&v@alld7eqf6?K5ftFKQUteAJN0NTRdp?%OBYfDvcEk<5S#g);R$QOn
z);-qHeOPDZWlTq2pOoFrYy{`E7E_b__eXh#;l$;MrG-*npSW9gG+d^Xb6=FyU2OuY
z^j9z+EqvY7s9Hv}k0TF%?q#TnkKysujYKu+?unCT#^z6)G&7&A8xCcHY>7IVwI#xg?L7(n(=@|t0Jx2dvG*7Gt`y*Sm&{Kz(Urp?
z#P`H8+#GEyJvgnkEq)OIJ)mz