From f4d016b9eaaf818e188c28c708e134dc0aa7d769 Mon Sep 17 00:00:00 2001 From: PySimpleGUI Date: Sat, 20 Mar 2021 20:57:05 -0400 Subject: [PATCH] MENU_SHORTCUT_CHARACTER constant, new icon tests, added Exec API call execute_find_callers_filename --- PySimpleGUI.py | 66 +++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 52 insertions(+), 14 deletions(-) diff --git a/PySimpleGUI.py b/PySimpleGUI.py index 27403564..46e61170 100644 --- a/PySimpleGUI.py +++ b/PySimpleGUI.py @@ -1,5 +1,6 @@ -#!/usr/bin/python3 -version = __version__ = "4.37.0.1 Unreleased\nMultiline scrollbar parameter renamed to no_scrollbar to match the listbox (sorry! but at least I caught it quickly), more debugger work" +#!/usr/bin/env python + +version = __version__ = "4.37.0.2 Unreleased\nMultiline scrollbar parameter renamed to no_scrollbar to match the listbox (sorry! but at least I caught it quickly), more debugger work, addition of constant MENU_SHORTCUT_CHARACTER (&), added execute_find_callers_filename" __version__ = version.split()[0] # For PEP 396 and PEP 345 @@ -320,6 +321,10 @@ DEFAULT_BASE64_LOADING_GIF = b'R0lGODlhQABAAKUAAAQCBJyenERCRNTS1CQiJGRmZLS2tPTy9 PSG_DEBUGGER_LOGO = b'R0lGODlhMgAtAPcAAAAAADD/2akK/4yz0pSxyZWyy5u3zZ24zpW30pG52J250J+60aC60KS90aDC3a3E163F2K3F2bPI2bvO3rzP3qvJ4LHN4rnR5P/zuf/zuv/0vP/0vsDS38XZ6cnb6f/xw//zwv/yxf/1w//zyP/1yf/2zP/3z//30wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAP8ALAAAAAAyAC0AAAj/AP8JHEiwoMGDCBMqXMiwoUOFAiJGXBigYoAPDxlK3CigwUGLIAOEyIiQI8cCBUOqJFnQpEkGA1XKZPlPgkuXBATK3JmRws2bB3TuXNmQw8+jQoeCbHj0qIGkSgNobNoUqlKIVJs++BfV4oiEWalaHVpyosCwJidw7Sr1YMQFBDn+y4qSbUW3AiDElXiWqoK1bPEKGLixr1jAXQ9GuGn4sN22Bl02roo4Kla+c8OOJbsQM9rNPJlORlr5asbPpTk/RP2YJGu7rjWnDm2RIQLZrSt3zgp6ZmqwmkHAng3ccWDEMe8Kpnw8JEHlkXnPdh6SxHPILaU/dp60LFUP07dfRq5aYntohAO0m+c+nvT6pVMPZ3jv8AJu8xktyNbw+ATJDtKFBx9NlA20gWU0DVQBYwZhsJMICRrkwEYJJGRCSBtEqGGCAQEAOw==' +PSG_DEBUGGER_LOGO = b'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T5/+BQOY8/xvJtwPAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAKeGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4NCjx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ1IDc5LjE2MjMxOSwgMjAxOC8wMi8xNS0yMDoyOTo0MyAgICAgICAgIj4NCiAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4NCiAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4NCiAgICAgIDx4bXA6Q3JlYXRvclRvb2w+QWRvYmUgUGhvdG9zaG9wIEVsZW1lbnRzIDE3LjAgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+DQogICAgICA8eG1wOkNyZWF0ZURhdGU+MjAyMC0xMi0xOFQxNzozNTo1NC0wNTowMDwveG1wOkNyZWF0ZURhdGU+DQogICAgICA8eG1wOk1vZGlmeURhdGU+MjAyMS0wMy0xOFQwNzoyNzozMi0wNDowMDwveG1wOk1vZGlmeURhdGU+DQogICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDIxLTAzLTE4VDA3OjI3OjMyLTA0OjAwPC94bXA6TWV0YWRhdGFEYXRlPg0KICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4NCiAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+DQogICAgICA8cGhvdG9zaG9wOklDQ1Byb2ZpbGU+c1JHQiBJRUM2MTk2Ni0yLjE8L3Bob3Rvc2hvcDpJQ0NQcm9maWxlPg0KICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDpjMDI1MjQ2Yi0zMmY1LTk3NGEtYmEzMi0xOThhOWZhZTVmNTc8L3htcE1NOkluc3RhbmNlSUQ+DQogICAgICA8eG1wTU06RG9jdW1lbnRJRD5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZTFlYWQ2ZGEtODdkYy0xMWViLThkNDQtZjBjNjMzY2VkNjY2PC94bXBNTTpEb2N1bWVudElEPg0KICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOmJlMzhlNDdkLWIzODgtMDU0NS1hZWE0LThkNzU3MmYzYTM3ZTwveG1wTU06T3JpZ2luYWxEb2N1bWVudElEPg0KICAgICAgPHhtcE1NOkhpc3Rvcnk+DQogICAgICAgIDxyZGY6U2VxPg0KICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPg0KICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jcmVhdGVkPC9zdEV2dDphY3Rpb24+DQogICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmJlMzhlNDdkLWIzODgtMDU0NS1hZWE0LThkNzU3MmYzYTM3ZTwvc3RFdnQ6aW5zdGFuY2VJRD4NCiAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMjAtMTItMThUMTc6MzU6NTQtMDU6MDA8L3N0RXZ0OndoZW4+DQogICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgRWxlbWVudHMgMTcuMCAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+DQogICAgICAgICAgPC9yZGY6bGk+DQogICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+DQogICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+DQogICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmMwMjUyNDZiLTMyZjUtOTc0YS1iYTMyLTE5OGE5ZmFlNWY1Nzwvc3RFdnQ6aW5zdGFuY2VJRD4NCiAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMjEtMDMtMThUMDc6Mjc6MzItMDQ6MDA8L3N0RXZ0OndoZW4+DQogICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgRWxlbWVudHMgMTcuMCAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+DQogICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPg0KICAgICAgICAgIDwvcmRmOmxpPg0KICAgICAgICA8L3JkZjpTZXE+DQogICAgICA8L3htcE1NOkhpc3Rvcnk+DQogICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPg0KICAgICAgPHRpZmY6WFJlc29sdXRpb24+OTYwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPg0KICAgICAgPHRpZmY6WVJlc29sdXRpb24+OTYwMDAwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPg0KICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4NCiAgICAgIDxleGlmOkNvbG9yU3BhY2U+MTwvZXhpZjpDb2xvclNwYWNlPg0KICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjM3MjwvZXhpZjpQaXhlbFhEaW1lbnNpb24+DQogICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MzcyPC9leGlmOlBpeGVsWURpbWVuc2lvbj4NCiAgICA8L3JkZjpEZXNjcmlwdGlvbj4NCiAgPC9yZGY6UkRGPg0KPC94OnhtcG1ldGE+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' + + + DEFAULT_WINDOW_ICON = DEFAULT_BASE64_ICON DEFAULT_ELEMENT_SIZE = (45, 1) # In CHARACTERS @@ -476,6 +481,7 @@ TITLEBAR_DO_NOT_USE_AN_ICON = '__TITLEBAR_NO_ICON__' WRITE_ONLY_KEY = '__WRITE ONLY__' MENU_DISABLED_CHARACTER = '!' +MENU_SHORTCUT_CHARACTER = '&' MENU_KEY_SEPARATOR = '::' ENABLE_TK_WINDOWS = False @@ -843,7 +849,7 @@ class Element(): """ # print('IN MENU ITEM CALLBACK', item_chosen) - self.MenuItemChosen = item_chosen.replace('&', '') + self.MenuItemChosen = item_chosen.replace(MENU_SHORTCUT_CHARACTER, '') self.ParentForm.LastButtonClicked = self.MenuItemChosen self.ParentForm.FormRemainedOpen = True _exit_mainloop(self.ParentForm) @@ -4079,7 +4085,7 @@ class ButtonMenu(Element): :type item_chosen: (str) """ # print('IN MENU ITEM CALLBACK', item_chosen) - self.MenuItemChosen = item_chosen.replace('&', '') + self.MenuItemChosen = item_chosen.replace(MENU_SHORTCUT_CHARACTER, '') self.ParentForm.LastButtonClicked = self.Key self.ParentForm.FormRemainedOpen = True # if self.ParentForm.CurrentlyRunningMainloop: @@ -6825,11 +6831,11 @@ class Menu(Element): baritem = tk.Menu(menubar, tearoff=self.Tearoff) if self.Font is not None: baritem.config(font=self.Font) - pos = menu_entry[0].find('&') + pos = menu_entry[0].find(MENU_SHORTCUT_CHARACTER) # print(pos) if pos != -1: - if pos == 0 or menu_entry[0][pos - 1] != "\\": - menu_entry[0] = menu_entry[0][:pos] + menu_entry[0][pos + 1:] + if pos == 0 or menu_entry[0][pos - len(MENU_SHORTCUT_CHARACTER)] != "\\": + menu_entry[0] = menu_entry[0][:pos] + menu_entry[0][pos + len(MENU_SHORTCUT_CHARACTER):] if menu_entry[0][0] == MENU_DISABLED_CHARACTER: menubar.add_cascade(label=menu_entry[0][len(MENU_DISABLED_CHARACTER):], menu=baritem, underline=pos) menubar.entryconfig(menu_entry[0][len(MENU_DISABLED_CHARACTER):], state='disabled') @@ -11712,10 +11718,10 @@ def AddMenuItem(top_menu, sub_menu_info, element, is_sub_menu=False, skip=False, return_val = None if type(sub_menu_info) is str: if not is_sub_menu and not skip: - pos = sub_menu_info.find('&') + pos = sub_menu_info.find(MENU_SHORTCUT_CHARACTER) if pos != -1: - if pos == 0 or sub_menu_info[pos - 1] != "\\": - sub_menu_info = sub_menu_info[:pos] + sub_menu_info[pos + 1:] + if pos < len(MENU_SHORTCUT_CHARACTER) or sub_menu_info[pos - len(MENU_SHORTCUT_CHARACTER)] != "\\": + sub_menu_info = sub_menu_info[:pos] + sub_menu_info[pos + len(MENU_SHORTCUT_CHARACTER):] if sub_menu_info == '---': top_menu.add('separator') else: @@ -11761,10 +11767,10 @@ def AddMenuItem(top_menu, sub_menu_info, element, is_sub_menu=False, skip=False, if element.ItemFont is not None: new_menu.config(font=element.ItemFont) return_val = new_menu - pos = sub_menu_info[i].find('&') + pos = sub_menu_info[i].find(MENU_SHORTCUT_CHARACTER) if pos != -1: - if pos == 0 or sub_menu_info[i][pos - 1] != "\\": - sub_menu_info[i] = sub_menu_info[i][:pos] + sub_menu_info[i][pos + 1:] + if pos < len(MENU_SHORTCUT_CHARACTER) or sub_menu_info[i][pos - len(MENU_SHORTCUT_CHARACTER)] != "\\": + sub_menu_info[i] = sub_menu_info[i][:pos] + sub_menu_info[i][pos + len(MENU_SHORTCUT_CHARACTER):] if sub_menu_info[i][0] == MENU_DISABLED_CHARACTER: top_menu.add_cascade(label=sub_menu_info[i][len(MENU_DISABLED_CHARACTER):], menu=new_menu, underline=pos, state='disabled') @@ -13018,7 +13024,7 @@ def PackFormIntoFrame(form, containing_frame, toplevel_form): baritem.config(disabledforeground=element.DisabledTextColor) if font is not None: baritem.config(font=font) - pos = menu_entry[0].find('&') + pos = menu_entry[0].find(MENU_SHORTCUT_CHARACTER) # print(pos) if pos != -1: if pos == 0 or menu_entry[0][pos - 1] != "\\": @@ -17948,6 +17954,33 @@ def execute_file_explorer(folder_to_open=''): return sp +def execute_find_callers_filename(): + try: # lots can go wrong so wrapping the entire thing + trace_details = traceback.format_stack() + file_info_pysimplegui, error_message = None, '' + for line in reversed(trace_details): + if __file__ not in line: + file_info_pysimplegui = line.split(",")[0] + error_message = line + break + if file_info_pysimplegui is None: + return '' + error_parts = None + if error_message != '': + error_parts = error_message.split(', ') + if len(error_parts) < 4: + error_message = error_parts[0]+'\n'+error_parts[1]+ '\n' + ''.join(error_parts[2:]) + if error_parts is None: + print('*** Error popup attempted but unable to parse error details ***') + print(trace_details) + return '' + filename = error_parts[0][error_parts[0].index('File ')+5:] + return filename + except: + return '' + + + def _create_full_editor_command(file_to_edit, line_number, edit_format_string): """ The global settings has a setting called - "-editor format string-" @@ -18001,6 +18034,11 @@ def _get_editor(): PSGDebugLogo = b'R0lGODlhMgAtAPcAAAAAADD/2akK/4yz0pSxyZWyy5u3zZ24zpW30pG52J250J+60aC60KS90aDC3a3E163F2K3F2bPI2bvO3rzP3qvJ4LHN4rnR5P/zuf/zuv/0vP/0vsDS38XZ6cnb6f/xw//zwv/yxf/1w//zyP/1yf/2zP/3z//30wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAP8ALAAAAAAyAC0AAAj/AP8JHEiwoMGDCBMqXMiwoUOFAiJGXBigYoAPDxlK3CigwUGLIAOEyIiQI8cCBUOqJFnQpEkGA1XKZPlPgkuXBATK3JmRws2bB3TuXNmQw8+jQoeCbHj0qIGkSgNobNoUqlKIVJs++BfV4oiEWalaHVpyosCwJidw7Sr1YMQFBDn+y4qSbUW3AiDElXiWqoK1bPEKGLixr1jAXQ9GuGn4sN22Bl02roo4Kla+c8OOJbsQM9rNPJlORlr5asbPpTk/RP2YJGu7rjWnDm2RIQLZrSt3zgp6ZmqwmkHAng3ccWDEMe8Kpnw8JEHlkXnPdh6SxHPILaU/dp60LFUP07dfRq5aYntohAO0m+c+nvT6pVMPZ3jv8AJu8xktyNbw+ATJDtKFBx9NlA20gWU0DVQBYwZhsJMICRrkwEYJJGRCSBtEqGGCAQEAOw==' + +PSGDebugLogo = b'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T5/+BQOY8/xvJtwPAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAKeGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4NCjx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ1IDc5LjE2MjMxOSwgMjAxOC8wMi8xNS0yMDoyOTo0MyAgICAgICAgIj4NCiAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4NCiAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4NCiAgICAgIDx4bXA6Q3JlYXRvclRvb2w+QWRvYmUgUGhvdG9zaG9wIEVsZW1lbnRzIDE3LjAgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+DQogICAgICA8eG1wOkNyZWF0ZURhdGU+MjAyMC0xMi0xOFQxNzozNTo1NC0wNTowMDwveG1wOkNyZWF0ZURhdGU+DQogICAgICA8eG1wOk1vZGlmeURhdGU+MjAyMS0wMy0xOFQwNzoyNzozMi0wNDowMDwveG1wOk1vZGlmeURhdGU+DQogICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDIxLTAzLTE4VDA3OjI3OjMyLTA0OjAwPC94bXA6TWV0YWRhdGFEYXRlPg0KICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4NCiAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+DQogICAgICA8cGhvdG9zaG9wOklDQ1Byb2ZpbGU+c1JHQiBJRUM2MTk2Ni0yLjE8L3Bob3Rvc2hvcDpJQ0NQcm9maWxlPg0KICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDpjMDI1MjQ2Yi0zMmY1LTk3NGEtYmEzMi0xOThhOWZhZTVmNTc8L3htcE1NOkluc3RhbmNlSUQ+DQogICAgICA8eG1wTU06RG9jdW1lbnRJRD5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZTFlYWQ2ZGEtODdkYy0xMWViLThkNDQtZjBjNjMzY2VkNjY2PC94bXBNTTpEb2N1bWVudElEPg0KICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOmJlMzhlNDdkLWIzODgtMDU0NS1hZWE0LThkNzU3MmYzYTM3ZTwveG1wTU06T3JpZ2luYWxEb2N1bWVudElEPg0KICAgICAgPHhtcE1NOkhpc3Rvcnk+DQogICAgICAgIDxyZGY6U2VxPg0KICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPg0KICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jcmVhdGVkPC9zdEV2dDphY3Rpb24+DQogICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmJlMzhlNDdkLWIzODgtMDU0NS1hZWE0LThkNzU3MmYzYTM3ZTwvc3RFdnQ6aW5zdGFuY2VJRD4NCiAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMjAtMTItMThUMTc6MzU6NTQtMDU6MDA8L3N0RXZ0OndoZW4+DQogICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgRWxlbWVudHMgMTcuMCAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+DQogICAgICAgICAgPC9yZGY6bGk+DQogICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+DQogICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+DQogICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmMwMjUyNDZiLTMyZjUtOTc0YS1iYTMyLTE5OGE5ZmFlNWY1Nzwvc3RFdnQ6aW5zdGFuY2VJRD4NCiAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMjEtMDMtMThUMDc6Mjc6MzItMDQ6MDA8L3N0RXZ0OndoZW4+DQogICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgRWxlbWVudHMgMTcuMCAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+DQogICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPg0KICAgICAgICAgIDwvcmRmOmxpPg0KICAgICAgICA8L3JkZjpTZXE+DQogICAgICA8L3htcE1NOkhpc3Rvcnk+DQogICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPg0KICAgICAgPHRpZmY6WFJlc29sdXRpb24+OTYwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPg0KICAgICAgPHRpZmY6WVJlc29sdXRpb24+OTYwMDAwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPg0KICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4NCiAgICAgIDxleGlmOkNvbG9yU3BhY2U+MTwvZXhpZjpDb2xvclNwYWNlPg0KICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjM3MjwvZXhpZjpQaXhlbFhEaW1lbnNpb24+DQogICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MzcyPC9leGlmOlBpeGVsWURpbWVuc2lvbj4NCiAgICA8L3JkZjpEZXNjcmlwdGlvbj4NCiAgPC9yZGY6UkRGPg0KPC94OnhtcG1ldGE+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' + +PSGDebugLogo = b'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/GMzLdsAADpEaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjYtYzE0NSA3OS4xNjIzMTksIDIwMTgvMDIvMTUtMjA6Mjk6NDMgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIgogICAgICAgICAgICB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPkFkb2JlIFBob3Rvc2hvcCBFbGVtZW50cyAxNy4wIChXaW5kb3dzKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAyMC0xMi0xOFQxNzozNTo1NC0wNTowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDIxLTAzLTE4VDA3OjE0OjA2LTA0OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAyMS0wMy0xOFQwNzoxNDowNi0wNDowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHBob3Rvc2hvcDpJQ0NQcm9maWxlPnNSR0IgSUVDNjE5NjYtMi4xPC9waG90b3Nob3A6SUNDUHJvZmlsZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDpmOTJlOGY3Ny00YjU5LTExNGYtOGY1OS0xOTViMDdiYTE5M2U8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDphZWIyNTA3YS04N2RhLTExZWItOGQ0NC1mMGM2MzNjZWQ2NjY8L3htcE1NOkRvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+eG1wLmRpZDo0ZjExNGEwMS00NjhiLTUyNGItYTNlOC00Y2Y0MWI3ZmI0YTI8L3htcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkhpc3Rvcnk+CiAgICAgICAgICAgIDxyZGY6U2VxPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jcmVhdGVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6NGYxMTRhMDEtNDY4Yi01MjRiLWEzZTgtNGNmNDFiN2ZiNGEyPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDIwLTEyLTE4VDE3OjM1OjU0LTA1OjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgRWxlbWVudHMgMTcuMCAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmY5MmU4Zjc3LTRiNTktMTE0Zi04ZjU5LTE5NWIwN2JhMTkzZTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAyMS0wMy0xOFQwNzoxNDowNi0wNDowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIEVsZW1lbnRzIDE3LjAgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgPC9yZGY6U2VxPgogICAgICAgICA8L3htcE1NOkhpc3Rvcnk+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjk2MDAwMC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+OTYwMDAwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjM3MjwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAgICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj4zNzI8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PvEysGgAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAK8RJREFUeNrsndtSG1f69h9TPkd3gL4rQDke27SzmX2MksmYQ8QFOJHxBuJMQHLiTcA2DbkAi0NiT0WuJLNJZkwrsY4jrmDEHUhXsL4DNfljAlJvVq/t81RRqYpBenttfu+z3l7d65wQAhRFUZT9mmITUBRFEegURVEUgU5RFEUR6BRFURSBTlEURaBTFEVRBDpFURSlRudP/o9z586xVSzVl19+GST4tcG1a9d6bC2KslPjnh06d/IfCXTjoV0GUIl/AgAlALMZP64DoB//RNeuXYvYwvZqYWGhDKA85ld6e3t7A7YUgU7pA/gRuI9+pgv+ygMAbQBtOnmjwR0cS+yVlOPiME7ivaOfvb099jWBThUI8RqAKoAZjaEcxnAPr1271mfPaIX40ZgIcqzIkqzY2gAiAp5Ap/JBvBxP2Jpm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' + red_x = b"R0lGODlhEAAQAPeQAIsAAI0AAI4AAI8AAJIAAJUAAJQCApkAAJoAAJ4AAJkJCaAAAKYAAKcAAKcCAKcDA6cGAKgAAKsAAKsCAKwAAK0AAK8AAK4CAK8DAqUJAKULAKwLALAAALEAALIAALMAALMDALQAALUAALYAALcEALoAALsAALsCALwAAL8AALkJAL4NAL8NAKoTAKwbAbEQALMVAL0QAL0RAKsREaodHbkQELMsALg2ALk3ALs+ALE2FbgpKbA1Nbc1Nb44N8AAAMIWAMsvAMUgDMcxAKVABb9NBbVJErFYEq1iMrtoMr5kP8BKAMFLAMxKANBBANFCANJFANFEB9JKAMFcANFZANZcANpfAMJUEMZVEc5hAM5pAMluBdRsANR8AM9YOrdERMpIQs1UVMR5WNt8X8VgYMdlZcxtYtx4YNF/btp9eraNf9qXXNCCZsyLeNSLd8SSecySf82kd9qqc9uBgdyBgd+EhN6JgtSIiNuJieGHhOGLg+GKhOKamty1ste4sNO+ueenp+inp+HHrebGrefKuOPTzejWzera1O7b1vLb2/bl4vTu7fbw7ffx7vnz8f///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAJAALAAAAAAQABAAAAjUACEJHEiwYEEABniQKfNFgQCDkATQwAMokEU+PQgUFDAjjR09e/LUmUNnh8aBCcCgUeRmzBkzie6EeQBAoAAMXuA8ciRGCaJHfXzUMCAQgYooWN48anTokR8dQk4sELggBhQrU9Q8evSHiJQgLCIIfMDCSZUjhbYuQkLFCRAMAiOQGGLE0CNBcZYmaRIDLqQFGF60eTRoSxc5jwjhACFWIAgMLtgUocJFy5orL0IQRHAiQgsbRZYswbEhBIiCCH6EiJAhAwQMKU5DjHCi9gnZEHMTDAgAOw==" COLOR_SCHEME = 'dark grey 13'