From 3ddbcb4bc4500d18da0c047ca9bf540bdaac0038 Mon Sep 17 00:00:00 2001 From: t-h-rk-turner <71654487+t-h-rk-turner@users.noreply.github.com> Date: Mon, 12 Jul 2021 23:45:40 -0400 Subject: [PATCH] Adding actual code --- __main__.py | 363 ++++++++++++++++++++++++++++ __pycache__/__main__.cpython-39.pyc | Bin 0 -> 3203 bytes icons/copy.png | Bin 0 -> 3374 bytes icons/down arrow icon.png | Bin 0 -> 8106 bytes icons/exit full screen.png | Bin 0 -> 1079 bytes icons/exit.png | Bin 0 -> 4064 bytes icons/full screen.png | Bin 0 -> 1560 bytes icons/home.png | Bin 0 -> 2358 bytes icons/i.jpg | Bin 0 -> 24249 bytes icons/open file.png | Bin 0 -> 4553 bytes icons/save.png | Bin 0 -> 5961 bytes icons/window icon.png | Bin 0 -> 373060 bytes modules/attributions.py | 6 + modules/conversions.py | 65 +++++ requirements.txt | 2 + 15 files changed, 436 insertions(+) create mode 100644 __main__.py create mode 100644 __pycache__/__main__.cpython-39.pyc create mode 100644 icons/copy.png create mode 100644 icons/down arrow icon.png create mode 100644 icons/exit full screen.png create mode 100644 icons/exit.png create mode 100644 icons/full screen.png create mode 100644 icons/home.png create mode 100644 icons/i.jpg create mode 100644 icons/open file.png create mode 100644 icons/save.png create mode 100644 icons/window icon.png create mode 100644 modules/attributions.py create mode 100644 modules/conversions.py create mode 100644 requirements.txt diff --git a/__main__.py b/__main__.py new file mode 100644 index 0000000..d2f635c --- /dev/null +++ b/__main__.py @@ -0,0 +1,363 @@ +import ctypes +import logging +import sys +import colorlog + +from PyQt5.QtCore import ( + QSize, + QRect +) +from PyQt5.QtGui import ( + QFont, + QIcon, + QGuiApplication +) +from PyQt5.QtWidgets import ( + QPushButton, + QGridLayout, + QComboBox, + QPlainTextEdit, + QApplication, + QMainWindow, + QSizePolicy, + QSpacerItem, + QWidget, + QLabel, + QAction, + QMenu, + QStatusBar, + QMessageBox, + QFileDialog, + qApp +) + +from modules import conversions +from modules.replace import ReplaceDialog + + +# global variables +with open("stylesheets/main.qss") as f: + stylesheet = f.read() + + +# ----- functions ----- +def decode(method: str, text: str) -> str: + """ + Decode string by given method. Supported methods are: ascii85, base85, base64, base32, base16, and url. + + :param method: Method to decode text + :param text: Text to decode + :return: Decoded version of text + """ + + if text is None: + return "" + + try: + return conversions.decodings[method.lower().replace("-", '')](text) + except Exception as err: + logger.error(f'Ran into error encoding "{text}" through decryption method "{method}". Error: {err}') + + +def encode(method: str, text: str): + """ + Encode string by given method. Supported methods are: ascii85, base85, base64, base32, base16, url, md5 hash, sha1, + sha256, and sha512. + + :param method: Method to encode text + :param text: Text to encode + :return: Decoded version of text + """ + + if text is None: + return "" + + if method == "MD5 hash": + method = method.split(" ")[0] + + try: + return conversions.encodings[method.lower().replace("-", '')](text) + except Exception as err: + logger.error(f'Ran into error decoding "{text}" through encryption method "{method}". Error: {err}') + + +# ----- logging setup ----- +MISC = 1 +logger = logging.getLogger(__name__) + +log_colors = { + 'MISC': 'white', + 'DEBUG': 'green', + 'INFO': 'blue', + 'WARNING': 'yellow', + 'ERROR': 'red', + 'CRITICAL': 'bold_red' +} + +formatter = colorlog.ColoredFormatter( + fmt="%(log_color)s%(name)s [level %(levelno)s %(levelname)s %(asctime)s, line %(lineno)s] %(message)s", + datefmt="%m/%d/%Y %I:%M:%S %p", + log_colors=log_colors +) + +handler = logging.StreamHandler(stream=sys.stdout) +handler.setFormatter(formatter) +handler.setLevel(MISC) + +logger.addHandler(handler) +logging.addLevelName(MISC, 'MISC') +logger.setLevel(MISC) + + +# ----- application ----- +class ConverterApplication(QMainWindow): + def __init__(self): + super().__init__() + + self.setGeometry(QRect(625, 350, 650, 600)) + self.setMinimumSize(QSize(650, 550)) + self.setStyleSheet(stylesheet) + self.setWindowIcon(QIcon("icons/window icon.png")) + self.setWindowTitle("Encryption and Decryption Tool") + + self.__widget = QWidget(self) + + self.gridLayout = QGridLayout(self.__widget) + + self.methodComboBox = QComboBox(self.__widget) + self.methodComboBox.setFont(QFont("MS Shell Dlg 2", 11)) + self.methodComboBox.addItem("ASCII85") + self.methodComboBox.addItem("Base85") + self.methodComboBox.addItem("Base64") + self.methodComboBox.addItem("Base32") + self.methodComboBox.addItem("Base16") + self.methodComboBox.addItem("Url") + self.methodComboBox.addItem("MD5 hash") + self.methodComboBox.addItem("SHA-1") + self.methodComboBox.addItem("SHA-256") + self.methodComboBox.addItem("SHA-512") + # self.methodComboBox.addItem("Pig latin") + self.methodComboBox.setMaxVisibleItems(4) + self.methodComboBox.currentIndexChanged.connect(self.onComboBoxItemSelect) + self.gridLayout.addWidget(self.methodComboBox, 5, 0, 1, 2) + + # Text edits for input and output. Plain text edits are used if the user wants to input a large amount of text. + self.outputTextEdit = QPlainTextEdit(self.__widget) + self.outputTextEdit.setFont(QFont("MS Shell Dlg 2", 12)) + self.outputTextEdit.setReadOnly(True) + self.gridLayout.addWidget(self.outputTextEdit, 10, 0, 1, 2) + + self.inputTextEdit = QPlainTextEdit(self.__widget) + self.inputTextEdit.setFont(QFont("MS Shell Dlg 2", 12)) + self.inputTextEdit.setAcceptDrops(True) + self.gridLayout.addWidget(self.inputTextEdit, 1, 0, 1, 2) + + # ----- buttons ----- + self.encryptButton = QPushButton("Encrypt", self.__widget) + self.encryptButton.setFont(QFont("MS Shell Dlg 2", 13)) + self.encryptButton.clicked.connect(self.encodeUserText) + self.gridLayout.addWidget(self.encryptButton, 11, 0, 1, 1) + + self.decryptButton = QPushButton("Decrypt", self.__widget) + self.decryptButton.setFont(QFont("MS Shell Dlg 2", 13)) + self.decryptButton.clicked.connect(self.decodeUserText) + self.gridLayout.addWidget(self.decryptButton, 11, 1, 1, 1) + + # ----- labels ----- + self.inputLabel = QLabel("Text to encrypt/decrypt:", self.__widget) + self.inputLabel.setFont(QFont("MS Shell Dlg 2", 14)) + self.gridLayout.addWidget(self.inputLabel, 0, 0, 1, 1) + + self.outputLabel = QLabel("Output:", self.__widget) + self.outputLabel.setFont(QFont("MS Shell Dlg 2", 14)) + self.gridLayout.addWidget(self.outputLabel, 8, 0, 1, 1) + + self.methodLabel = QLabel("Method:", self.__widget) + self.methodLabel.setFont(QFont("MS Shell Dlg 2", 14)) + self.gridLayout.addWidget(self.methodLabel, 3, 0, 1, 1) + + # ----- spacers ----- + spaceritem0 = QSpacerItem(20, 30, QSizePolicy.Minimum, QSizePolicy.Minimum) + self.gridLayout.addItem(spaceritem0, 6, 0, 1, 2) + + spaceritem1 = QSpacerItem(20, 30, QSizePolicy.Minimum, QSizePolicy.Minimum) + self.gridLayout.addItem(spaceritem1, 2, 0, 1, 2) + + # ----- actions ----- + _open = QAction(QIcon("icons/open file.png"), "", self) + _open.setToolTip("Shortcut: Ctrl + O") + _open.setShortcut("Ctrl+O") + _open.setStatusTip("Open text file. The file's content will be appended to the input text edit.") + _open.triggered.connect(self.__open_file_dialogue) + + _save = QAction(QIcon("icons/save.png"), "", self) + _save.setToolTip("Shortcut: Ctrl + S") + _save.setShortcut("Ctrl+S") + _save.setStatusTip("Save the output's content to a text file.") + _save.triggered.connect(self.__save_file_dialogue) + + _copy = QAction("&Copy", self) + _copy.setShortcut("Alt+C") + _copy.setStatusTip("Copy output text.") + _copy.triggered.connect(lambda: QGuiApplication.clipboard().setText(self.outputTextEdit.toPlainText())) + + _paste = QAction("&Paste", self) + _paste.setShortcut("Alt+V") + _paste.setStatusTip( + "Paste clipboard text to the input text edit. This will overwrite any data in the text edit.") + _paste.triggered.connect(lambda: self.inputTextEdit.setPlainText(QGuiApplication.clipboard().text())) + + _cut = QAction("C&ut", self) + _cut.setShortcut("Alt+X") + _cut.setStatusTip("Cut (delete and copy) all text from the input text edit.") + _cut.triggered.connect(self.__cut_text) + + _find = QAction("&Find", self) + _find.setShortcut("Ctrl+F") + + _replace = QAction("&Replace", self) + _replace.setShortcut("Ctrl+R") + _replace.triggered.connect(lambda: ReplaceDialog(self.inputTextEdit, self.styleSheet(), self)) + + _aboutqt = QAction("About Qt", self) + _aboutqt.triggered.connect(lambda: QMessageBox.aboutQt(self, "About Qt")) + + _credits = QAction("Credits", self) + _about = QAction("About", self) + + # ----- toolbar actions ----- + self._fullscreen = QAction(QIcon("icons/full screen.png"), "", self) + self._fullscreen.setStatusTip("Enter full screen") + self._fullscreen.setToolTip("Shortcut: Ctrl + F") + self._fullscreen.setShortcut("Ctrl+F") + self._fullscreen.triggered.connect(self.__fullScreen) + + self._home = QAction(QIcon("icons/home.png"), "", self) + self._home.setStatusTip("Reset window geometry.") + self._home.setToolTip("Shortcut: Alt + H") + self._home.setShortcut("Alt+H") + self._home.triggered.connect(lambda: self.setGeometry(QRect(625, 350, 650, 550))) + + _exit = QAction(QIcon("icons/exit.png"), "", self) + _exit.setStatusTip("Exit application.") + _exit.setToolTip("Shortcut: Ctrl + W") + _exit.setShortcut("Ctrl+W") + _exit.triggered.connect(qApp.quit) + + # menus + editmenu = self.menuBar().addMenu("&Edit") + helpmenu = self.menuBar().addMenu(QIcon("icons/i.jpg"), "&Help") + + fnr = QMenu("Find and Replace", self) + fnr.addActions((_find, _replace)) + + editmenu.addActions((_copy, _paste, _cut)) + editmenu.addSeparator() + editmenu.addMenu(fnr) + + helpmenu.addActions((_aboutqt, _credits, _about)) + + # ----- toolbar(s) ----- + optionbar = self.addToolBar("Window") + filebar = self.addToolBar("File") + + filebar.addActions((_open, _save)) + optionbar.addActions((_exit, self._fullscreen, self._home)) + + # ----- statusbar ----- + statusbar = QStatusBar(self) + statusbar.setSizeGripEnabled(False) # disable size grip, size grip icon is broken. + + self.setStatusBar(statusbar) + + # ----- window setup ----- + self.methodComboBox.setCurrentIndex(2) + self.setCentralWidget(self.__widget) + self.show() + + def encodeUserText(self) -> None: + a = encode(b := self.methodComboBox.currentText(), c := self.inputTextEdit.toPlainText()) + logger.debug(f'Attempted to encode "{c}" by {b}. Result: {a}') + + self.outputTextEdit.setPlainText(a) + + def decodeUserText(self) -> None: + a = decode(b := self.methodComboBox.currentText(), c := self.inputTextEdit.toPlainText()) + logger.debug(f'Attempted to decode "{c}" by {b}. Result: {a}') + + self.outputTextEdit.setPlainText(a) + + def onComboBoxItemSelect(self, index: int) -> None: + # self.methodComboBox.itemText() + logger.log(MISC, f'Method "{self.methodComboBox.itemText(index)}" has been selected.') + + if self.methodComboBox.itemText(index).lower() == "MD5 hash": + self.decryptButton.setEnabled(False) + else: + if not self.decryptButton.isEnabled(): + self.decryptButton.setEnabled(True) + + def __cut_text(self): + QGuiApplication.clipboard().setText(self.inputTextEdit.toPlainText()) + self.inputTextEdit.setPlainText("") + + def __open_file_dialogue(self) -> None: + file, _ = QFileDialog.getOpenFileName( + self, + "Open File", + "", + "All Files (*);;Text Files (*.txt)" + ) + + if file: + try: + with open(file) as f: + self.inputTextEdit.appendPlainText(f.read()) + except Exception as err: + logger.error(f"Exception encountered when attempting to read file. Exception: {err}") + else: + return + + def __save_file_dialogue(self) -> None: + file, _ = QFileDialog.getSaveFileName( + "Save file", + "", + "Text Files (*.txt)" + ) + + if file: + with open(file, 'w+') as f: + f.write(self.outputTextEdit.toPlainText()) + else: + return + + def __fullScreen(self) -> None: + if self.isFullScreen(): + self.showNormal() + self._fullscreen.setIcon(QIcon("icons/full screen.png")) + self._fullscreen.setShortcut("Ctrl+F") + self._fullscreen.setStatusTip("Enter full screen") + self._fullscreen.setToolTip("Shortcut: Ctrl + F") + self._home.setDisabled(False) + else: + self.showFullScreen() + self._fullscreen.setIcon(QIcon("icons/exit full screen.png")) + self._fullscreen.setShortcut('Esc') + self._fullscreen.setStatusTip("Exit full screen") + self._fullscreen.setToolTip("Shortcut: Esc") + self._home.setDisabled(True) + + +if __name__ == "__main__": + app = QApplication(sys.argv) + app.setStyle("Fusion") + + ctypes.windll.shell32.SetCurrentProcessExplicitAppUserModelID(u"{}".format(__name__)) + # setting the AppUserModelID so our window icon also is our taskbar icon. + # the AppUserModelID string has to be unicode as well. + # info from https://stackoverflow.com/questions/1551605/how-to-set-applications-taskbar-icon-in-windows-7 + + ui = ConverterApplication() + logger.info("Application started.") + + sys.exit(app.exec_()) diff --git a/__pycache__/__main__.cpython-39.pyc b/__pycache__/__main__.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..be197267092f3430c046fa373403f27149e9133b GIT binary patch literal 3203 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 literal 0 HcmV?d00001 diff --git a/icons/exit.png b/icons/exit.png new file mode 100644 index 0000000000000000000000000000000000000000..7867f763190922b93a615229531889e6527eb163 GIT binary patch literal 4064 zcmeHKYgAKL7T!0c7_C~ZGU#H{_793R@U9;?0vqw z_jkT?_PV(rhXyg1S}g?t=B^I|_5#q5Ndty4db~{QoJ9{JX>ZUDsBE?Q9~#iPej$DU zRr$;255I-RCW#+LBmuA*$v@GQ@NF!B>4{wdexIa8jSn~r4slofcq}ZI?|$Q6cYLg0 za&}dW`we-_>caR~Uk3||l@VquH!SaYdg|$^Z%+qoOWDZC6~y|MTE_b8E_=McYoWI) zb8tB0^5nwF|GI>i-}W9H^j53aqWAvUe*XyP54y;52CfkY`?twW`HQZyX0Pw+qciG_ zb$gX9KR@hydgcfxJ>y_qw2_DUc)@}AY=MMo1%GJKfOn)b2v!22qJPo(X#N0r3( zsym-Iry4j(V`^97+U=9>#r#yhV&qv@pgY5*|9N2$af_$8?_HS}Z^o&9ULRrPD8IAf zv*Z{j*}`+KD|@d}LeGnTn^V1*?qVM-nCWTn$h)V~H)tp9oYoU;x94;S4hC_{HUcay zfioEjiu-h7?;T5Ua{goP$PFNjvg-_t=8J+!5QsGc-wgz;phNp^@HHmjrUjfsdZ~Eh zdc(%=YUACEdj04DSMylr0iSPCCvtGnKYoh4yK3;y16!f z*{Id{-}+uy(uUTPic`2K{R}m3wO22UpJcA1!B&QFpEA{;_L^U8(4L3jFmh?)tZK3J z$wGJ$gZ%{#dFVc$S2=G zaU%!Za9-z74xeN2U#IqC=#9_jsM$uKxj7-l6VWm2n`F#i%Q) zm`F$~+O!zw;SbWClCG2C*7en@v0vtPF{A9E=b~M=;gEHGrD|+;E}eOIHS~NXQF~v@ ziwfg(%LcoLObEsP>GKV}En`8hW+3>XU*0j=teTxF>2v1=heD!2nQvH(u&zI=5`42z z@#6>`n)IkQxyEuvpY^*sI)X>FcH8+5ezU53U<)6$iNs)KQgg>>ld5~Lgc=Wimlx&3 zsWup*Vvf*+F|(m@FK3-)ucq>?P&ctD2m(%1e>4>u{ryZ&v}|~6ib9U=3Y4sJiA)`o zI6D)Hs!dtXQeRqamA%qStO_haaBmB*OnttnLT1+~z69)Lg;TU?Uwc_`ZwU`o{&(#j zp*#IzMV&T$F}}+er0XSJWa0ZbDLsb0Nz;>S2*vUR>Em*OlQ|dDqG?-(7=E>Te7rA# zmnAI-!W_?)>Z=BNyd`;tmEAuDxr%(aXxDUpaWCa5&4vEC#S^HQ1gYM}aOopb>*ti3 zHb*R}t)BC}8_CW0wH5gkW4$&1tm95%iFn!=0`QF$n>cNWj=nJ=&17X!5~*&{gi)$V z@tn`4gybmld9AHs-C9a+kv4|c3KTV#9Kv9N?8cG-Y}u5cIdf8xqiq}7Rx zFm%)ivT!n&Z%0}mYU@jymTkaiZ(k}eA2o`IBt!@99f@Cn&-J{@qb+DZsd67YsFQb` zxbBIlTZ69=&zVxU+OzVm%Z2XQk zZNYAp5orSQ=v?8Plmjs1%1`j_q(!>C_{$!#3g4t$ui?jvV;ZbK!^OG z(%)+1-{L{om!DVDqjj9(@H7OEfr{sp}N9zLJ&0Lg^ET$xC z*nIQRy6qND%E1@LgIZ?RZ S#>s=sZ`aPyfXW^0Q~w82TK0(m literal 0 HcmV?d00001 diff --git a/icons/full screen.png b/icons/full screen.png new file mode 100644 index 0000000000000000000000000000000000000000..ffc0bbf6fe9aa664c976374c3a6666ddf4c15f31 GIT binary patch literal 1560 zcmb7EYfzF26vajjAz3U})9{t1?#PzS1fr%WTZ68PH75G`2o~S@HWMt}saVKS#z&iF zX0L5q9|*n@rBG5#9CBz;A z0)Z?;Lykmj^k zxP4hRj?Jh!QOy`lPj`1W<^|DJvWcRo6J-+c3D6XDtJxeE|30H>QkASlad*P2SlpZB&CKu!`&Wx`E}GZtN;OVa%#oavf=kH zC7*0yn3?+AZolwkxXeMV0Q22ZNH#qz9iUbe=-!)n`lcX<+N*|!UyP62Ua{Hf+ow1L zoy9!b;+p^8QNA!;(Kc;v9G=u`G=V(qpyB3|xFKND>!LvkWrb!O*Sxe|u$#k5I`A5f zX{PHE8`Vri+^QONz{nbOw6qi;2$k&|(Y7Bb71ddEknmib+=*=pFg>KSgsMjTVnw^QV0 z!)exdM+S2}IaEbV21AKps1ye@{z6k{ZxD<%j&8Rp@acQ*^9AlO=49(dlF0u&je)BD zp`+DGe1Z`F^_tP>eagk^El?F=$$FT6eWnCgWRk(kN4h;)`czYizDV)`nk5qP?eRn%pH34 zz6tB2lvfs&Hy@*Jgg2}_6ADYpMdYsd!yZP)^P~jq(}|IIALkrhwi`#S)f*ZbJS1~2 z%+v6Rgx%HW?QMSU)d7dlZNe~loObThfsY)vR;C|2c(=LlO$>2m3<74UoH4wmR@Q*? zVW0!AZLq78aO(bHjO@bO+VLW;y8P$ogclZm+^%3|Iijc7s*P_B3OyQrqy_gQ{a-P# BvNHex literal 0 HcmV?d00001 diff --git a/icons/home.png b/icons/home.png new file mode 100644 index 0000000000000000000000000000000000000000..7491e79d33df0d1fe4445c1a899b6baecd975754 GIT binary patch literal 2358 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 literal 0 HcmV?d00001 diff --git a/icons/i.jpg b/icons/i.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b686268426858f1b24ed2b06f972e2043529058e GIT binary patch literal 24249 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 literal 0 HcmV?d00001 diff --git a/icons/open file.png b/icons/open file.png new file mode 100644 index 0000000000000000000000000000000000000000..8a4afefba0272af6b90cf827f32416febee7c5fb GIT binary patch literal 4553 zcmeH~`#)6M|Hs$NX56;>gh|RJHTaOsM=mLwQlpE8bWzl(TuL%BE-CCG_fw5h$Ymx? zms1jQiXmrmNkMDU6_+Xk0F+&+n>_%)V<8^MLm29AuY7?43UhY#l$V$9>fI&5qymHL6$U{5*@X+| zz=^EKOcK*&KXZ48KQq$zv>%9!jI=m@Dk$uzFT>9wvBq*O#d@8Mt)0EYMn}ZSdDCW>En8i;?bzu?bNAToxo7Xb{ayzS zdixwYO!qx<^q8N2K;ZEcLBXd&7@?=bnBfsoXQI!Zi;0axS@8+y6O&R>)6##raEYC9 z`AX*1YgySj*K_mo3pm^xg*SP(Zr{24>%F1}#ScqL%N~{g_V`IfCBLfrY0d9~+PeCN z=Z!D^c-h<{Y7T8>OfJ4tC)N4ndBc^B*Q@cs#R9cS(y*YlexC2SGT@-P_FUQxFy=u zmcq>Gv9RmV$~&gM;QlL4!Bgpvs|@`wOR}$zaOT$;9%dc=q$z6&PcLoWMHFbg4q`m^ zxjY-$P_6jJ6`y@RYRTS}3X<^p`;0P|_}RlTxCtxRRSmKJGyJZrnqWuyaLFnskp8N8 zQ%pQK@v6A4R|a=-OO;y7C#dsMxBoA-nl&^)HQhO_Tl{FJy*NlT?ZZ>9$DY~ zp7AyC)EC`TA=`zXCMG#YO?c-I4LRS;bNobHiXrOKWBe#zl$*PdaUDBml4LGJaL8^s6L zovnR(RWA_=q>MY-ZRX=^G91vdH+cqrIHTQi z<7OAxk5TvIP(`xl%7GoNnK-6hv#iJD0Rtb9Xfw_!D3#)Ml45Ww;nXF_gvyB7c%vuI zv-eQKkK_2jj+AKSfm;f6wE-7f+U1q#*X(`1j5MG)W^gDmV7Cmz=)IrqdqXGS_^e7L zK|^L-wS3sJVj7Z&6Z2n0yI}`?_vSEd&IKcL<>jrdtXBUXX{J`5Il# zzgzYJ5vJ<^zt5XNu!1GHJS8ELgln#=l)%Sy1gm(MjKF!HQIW<|*gnAKgLf#QOiALN zXSU$ak)&x0_AI-&zP$s-d|pYs`2ea|F?gB6_5xuH3p*%Bc6^n{I6(hCxXy9n{{(8HMc%rX}7H z1Ssq2)U?88g2LWCB%n=xJ~>S zm}r9*8d0@5tUkiHUEcjxBoxv~2>X?Ex7Hr*(f5fVr0EKN$EL_|7##3H_}^fnHR@!W z#bFf^ER_d8Q)sWji3|%zr~&3OO*VjF1*xxjQ|kzO;R4n?hys`zuGaLl^OWD@xhFbW;@C8TK! z&hgG>v-)JmwL}}5kym)KV=_~fLMsQS8YBSZB&#YJwvAjM zT}9;6f;@wwG^NG<+%_Dx9v6di>Vq{4#twx4kVIyJRwMCSm}rmsV2P9&4mh=yk4R(& zI9yk$F{WJv&6tStTM!nsKb;vsp><-}tS^2C6W5`-jL~3%qORac#v(O%XLDJ#gc3;l z-k;0GmDiw5WBx%o#%iIs1#yD1FES%3v^Fe(Mo$qGNl34n2=fh~Ar_W^L#D%Ei-EWY zCR(Ag)M*tGz>rQ4~qR=XUzmfO@Ote7%rcT>JvP#^kO}w*ttaw?5kLJB?|4$VycrM~&PF z^}~`ii=?j*1_B6sB9qNlA$CI0Sa z{w#^S52#|x^N#_XLo(BtkS*7i!knhi3V^-7cplDNjXpG7$v;kn;zqyv6@Zz6!}IV9P0(6h5fI{943d1??6B`i+}_R<=eN~oU1~rX%a++v z@vk)wGs8L0Mcufm-lH|Kc9CJ%IHnGKztdXrUMb9N!3I>|V&*Qrob=dB$MmsbyTRXj zk7(u5r2Ns&*XxwFt__Jj^WnE^UbN?V&we!$x|#ifZx7KsATD_tqQx>e_r6gs`F56{ zJ2{qN6VZPr;M^Il3(oVaXZ(k(PTca-rtWQzO?^k2A)c{avsf2}>ov giSl1=X&4RjxUP_3s}T2L$Aw$Cy0~pFcBaSw2L~QeF8}}l literal 0 HcmV?d00001 diff --git a/icons/save.png b/icons/save.png new file mode 100644 index 0000000000000000000000000000000000000000..005467b634b844fd2671d387721672e3c741a1b7 GIT binary patch literal 5961 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