From 98b48cb97b765938c02bb2d4973cc067649b6b49 Mon Sep 17 00:00:00 2001 From: Alexander Bocken Date: Thu, 12 Oct 2023 15:12:12 +0200 Subject: [PATCH] major springcleaning --- .config/X11/xinitrc | 14 - .config/Xresources | 208 -- .config/aliasrc | 58 - .config/alsa/asoundrc | 21 - .config/calcurse/.calcurse.pid | 1 - .config/calcurse/conf | 14 +- .config/calcurse/keys | 95 +- .../node_modules/coc-vimtex/Readme.md | 24 - .../node_modules/coc-vimtex/package.json | 46 - .../node_modules/coc-vimtex/src/index.js | 66 - .../node_modules/coc-vimtex/src/util.js | 56 - .config/coc/extensions/package.json | 10 - .config/coc/history.json | 28 - .config/coc/lists | 1 - .config/coc/memos.json | 1 - .config/coc/mru | 0 .config/directories | 11 - .config/dunst/dunstrc | 4 +- .config/dunst/dunstrc_old | 152 -- .config/emoji | 1644 --------------- .config/files | 15 - .config/fontconfig/fonts.conf | 60 +- .config/gtk-2.0/gtkrc-2.0 | 6 +- .config/gtk-3.0/bookmarks | 2 - .config/gtk-3.0/settings.ini | 3 +- .config/homepage/bookmarks | 15 - .config/homepage/html/empty.html | 10 - .config/homepage/html/homepage.html | 151 -- .config/homepage/script.js | 0 .config/homepage/styles/archlinux.css | 186 -- .config/homepage/styles/arcolinux-info.css | 27 - .config/homepage/styles/arcolinuxforum.css | 48 - .config/homepage/styles/empty.css | 186 -- .config/homepage/styles/homepage.css | 125 -- .config/homepage/styles/suckless.css | 41 - .config/homepage/styles/wikipedia.css | 4 - .config/lf/lfrc | 70 - .config/lf/scope | 59 - .config/mbsync/mailsync.patch | 4 + .config/mbsync/patch_mailsync.sh | 4 + .config/mimeapps.list | 20 + .config/mpd/mpd.conf | 26 +- .config/mpd/playlists/lofi.m3u | 5 - .config/mpv/input.conf | 7 +- .config/mpv/script-opts/youtube-upnext.conf | 4 +- .config/mpv/scripts/modules.lua | 3 + .config/mpv/scripts/sponsorblock-minimal.lua | 1 + .config/mpv/scripts/youtube-upnext.lua | 3 +- .../mutt/accounts/1-abocken@ethz.ch.muttrc | 47 + .../accounts/alexander@aaathats3as.com.muttrc | 22 + .../mutt/accounts/alexander@bocken.org.muttrc | 22 + .config/mutt/mailcap | 25 - .config/mutt/muttrc | 96 +- .config/mutt/templates/email.html | 29 + .config/ncmpcpp/config | 2 +- .config/ncmpcpp/config_ | 545 ----- .config/ncmpcpp/error.log | 27 - .config/newsboat/config | 9 +- .config/{sxiv => nsxiv}/exec/key-handler | 19 +- .config/nvim/init.vim | 511 ----- .config/openvpn/cfgs/Argentina.ovpn | 45 - .config/openvpn/cfgs/Australia.ovpn | 45 - .config/openvpn/cfgs/Austria.ovpn | 45 - .config/openvpn/cfgs/Belgium.ovpn | 45 - .config/openvpn/cfgs/Brazil.ovpn | 45 - .config/openvpn/cfgs/Canada.ovpn | 45 - .config/openvpn/cfgs/Cyprus.ovpn | 45 - .config/openvpn/cfgs/Denmark.ovpn | 45 - .config/openvpn/cfgs/Finland.ovpn | 45 - .config/openvpn/cfgs/France.ovpn | 45 - .config/openvpn/cfgs/Germany.ovpn | 45 - .config/openvpn/cfgs/Hong Kong.ovpn | 45 - .config/openvpn/cfgs/Hungary.ovpn | 45 - .config/openvpn/cfgs/India.ovpn | 45 - .config/openvpn/cfgs/Ireland.ovpn | 45 - .config/openvpn/cfgs/Israel.ovpn | 45 - .config/openvpn/cfgs/Italy.ovpn | 45 - .config/openvpn/cfgs/Japan.ovpn | 45 - .config/openvpn/cfgs/Mexico.ovpn | 45 - .config/openvpn/cfgs/NewZealand.ovpn | 45 - .config/openvpn/cfgs/Norway.ovpn | 45 - .config/openvpn/cfgs/Poland.ovpn | 45 - .config/openvpn/cfgs/Portugal.ovpn | 45 - .config/openvpn/cfgs/Romania.ovpn | 45 - .config/openvpn/cfgs/Singapore.ovpn | 45 - .config/openvpn/cfgs/South Africa.ovpn | 45 - .config/openvpn/cfgs/Spain.ovpn | 45 - .config/openvpn/cfgs/Sweden.ovpn | 45 - .config/openvpn/cfgs/Switzerland.ovpn | 47 - .config/openvpn/cfgs/The Netherlands.ovpn | 45 - .config/openvpn/cfgs/UK.ovpn | 45 - .config/openvpn/cfgs/US East.ovpn | 45 - .config/openvpn/cfgs/US West.ovpn | 45 - .config/pass-git-helper/git-pass-mapping.ini | 10 +- .config/picom/picom.conf | 7 +- .config/pinentry/preexec | 5 + .config/pipewire/pipewire.conf | 247 +++ .config/qutebrowser/autoconfig.yml | 10 + .config/qutebrowser/bookmarks/urls | 8 - .config/qutebrowser/config.py | 14 +- .config/qutebrowser/dracula/.gitignore | 2 - .config/qutebrowser/dracula/INSTALL.md | 31 - .config/qutebrowser/dracula/__init__.py | 0 .../__pycache__/__init__.cpython-38.pyc | Bin 141 -> 0 bytes .../dracula/__pycache__/draw.cpython-311.pyc | Bin 0 -> 7932 bytes .../dracula/__pycache__/draw.cpython-38.pyc | Bin 2721 -> 0 bytes .config/qutebrowser/dracula/readme.md | 21 - .config/qutebrowser/dracula/screenshot.png | Bin 619955 -> 0 bytes .config/qutebrowser/quickmarks | 8 - .config/qutebrowser/startpage.html | 9 - .../__init__.cpython-310.opt-1.pyc | Bin 0 -> 143 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 143 bytes .../__init__.cpython-311.opt-1.pyc | Bin 0 -> 159 bytes .../__pycache__/__init__.cpython-311.pyc | Bin 0 -> 159 bytes .../__pycache__/default.cpython-310.opt-1.pyc | Bin 0 -> 2855 bytes .../__pycache__/default.cpython-310.pyc | Bin 0 -> 2855 bytes .../__pycache__/default.cpython-311.opt-1.pyc | Bin 0 -> 5802 bytes .../__pycache__/default.cpython-311.pyc | Bin 0 -> 5802 bytes .config/ranger/rc.conf | 14 +- .config/ranger/rifle.conf | 66 +- .config/ranger/scope.sh | 6 +- .config/shell/aliasrc | 62 + .config/shell/bm-dirs | 14 + .config/shell/bm-files | 23 + .config/{ => shell}/inputrc | 0 .config/shell/profile | 117 ++ .config/shell/shortcutrc | 30 + .config/shell/zshnameddirrc | 29 + .config/shortcutrc | 2 - .config/sxhkd/sxhkdrc | 3 - .config/transmission-daemon/settings.json | 68 - .config/transmission/dht.dat | Bin 1091 -> 0 bytes .config/transmission/settings.json | 99 - .config/transmission/stats.json | 7 - .config/tremc/settings.cfg | 108 - .config/{X11 => x11}/Xres_casting | 0 .config/x11/xinitrc | 20 + .config/x11/xprofile | 24 + .config/{X11/Xresources => x11/xresources} | 3 +- .config/xinitrc | 25 - .config/xprofile | 31 - .config/zsh/.zcompdump | 1849 +++++++++++++++++ .config/zsh/.zshrc | 14 +- .gtkrc-2.0 | 1 + .local/bin/SCRIPTS.md | 87 - .local/bin/booksplit | 49 - .local/bin/bt | 247 --- .local/bin/cabl | 26 - .local/bin/castscreen | 13 - .local/bin/compiler | 40 - .local/bin/cookies2nsformat | 33 + .../bin/cron/{IMPORTANT_NOTE.md => README.md} | 2 +- .local/bin/cron/checkup | 2 - .local/bin/cron/cronbat | 9 - .local/bin/cron/crontog | 4 +- .local/bin/cron/newsup | 4 +- .local/bin/cv | 13 - .local/bin/ddspawn | 19 - .local/bin/displayselect | 13 +- .local/bin/dmenuhandler | 21 + .local/bin/dmenumountcifs | 19 + .local/bin/dmenurecord | 57 +- .local/bin/dmenuunicode | 18 - .local/bin/dmenuvpn | 12 +- .local/bin/emoji | 19 +- .local/bin/ethupdate | 14 + .local/bin/f2py | 8 - .local/bin/f2py3 | 8 - .local/bin/f2py3.8 | 8 - .local/bin/getbib | 14 + .local/bin/getbib_ | 14 + .local/bin/getcomproot | 12 + .local/bin/getkeys | 4 +- .local/bin/ifinstalled | 8 - .local/bin/launch_polybar | 9 - .local/bin/lf-select | 9 - .local/bin/linkhandler | 23 + .local/bin/lmc | 28 - .local/bin/maimpick | 16 +- .local/bin/manga-py | 12 - .local/bin/markdown_py | 8 - .local/bin/mounter | 114 + .local/bin/muccadoro | 304 --- .local/bin/noisereduce | 81 + .local/bin/opout | 13 - .local/bin/pauseallmpv | 2 +- .local/bin/podentr | 7 - .local/bin/pom | 13 - .local/bin/pomft | 12 - .local/bin/print_slides | 45 +- .local/bin/prompt | 2 +- .local/bin/pyls | 8 - .local/bin/qndl | 12 - .local/bin/queueandnotify | 14 - .local/bin/refbar | 5 - .local/bin/remapd | 8 + .local/bin/remaps | 2 + .local/bin/ripper | 117 -- .local/bin/rotdir | 12 + .local/bin/samedir | 6 +- .local/bin/setbg | 33 + .local/bin/shortcuts | 29 - .local/bin/statusbar/corona | 11 - .local/bin/statusbar/crypto | 53 - .local/bin/statusbar/getpomminutes | 7 - .local/bin/statusbar/getpomminutesft | 7 - .local/bin/statusbar/headset_connected | 5 - .local/bin/statusbar/help | 7 - .local/bin/statusbar/help-icon | 16 - .local/bin/statusbar/iplocate | 9 - .local/bin/statusbar/moonphase | 25 - .local/bin/statusbar/mpdupdate | 9 - .local/bin/statusbar/music | 12 - .local/bin/statusbar/music_old | 18 - .../{appointments => sb-appointments} | 13 + .local/bin/statusbar/{battery => sb-battery} | 0 .../bin/statusbar/{btstatus => sb-btstatus} | 0 .local/bin/statusbar/{clock => sb-clock} | 0 .local/bin/statusbar/{cpu => sb-cpu} | 0 .../statusbar/{current_day => sb-current_day} | 0 .local/bin/statusbar/{disk => sb-disk} | 0 .../statusbar/{dunststatus => sb-dunststatus} | 0 .../bin/statusbar/{getbright => sb-getbright} | 0 .local/bin/statusbar/{getmail => sb-getmail} | 0 .../bin/statusbar/{internet => sb-internet} | 9 +- .local/bin/statusbar/{mailbox => sb-mailbox} | 0 .local/bin/statusbar/{memory => sb-memory} | 0 .local/bin/statusbar/sb-music | 16 + .local/bin/statusbar/{nettraf => sb-nettraf} | 0 .local/bin/statusbar/{news => sb-news} | 0 .../statusbar/{pacpackages => sb-pacpackages} | 0 .local/bin/statusbar/{torrent => sb-torrent} | 0 .local/bin/statusbar/sb-volume | 52 + .local/bin/statusbar/statusbarinfo | 32 - .local/bin/statusbar/sync_status | 8 - .local/bin/statusbar/volume | 48 - .local/bin/statusbar/volume_ | 25 - .local/bin/statusbar/weather | 26 - .local/bin/sysact | 14 - .local/bin/td-toggle | 12 - .local/bin/test2 | 3 - .local/bin/testscript | 2 - .local/bin/texclear | 16 + .local/bin/tldextract | 8 - .local/bin/tools/arkenfox-auto-update | 23 + .local/bin/tools/booksplit | 43 + .local/bin/tools/bt_blacklist | 1 - .local/bin/tools/bthandler_ | 77 - .local/bin/tools/casttest | 12 - .local/bin/tools/castyt | 2 +- .local/bin/tools/clip | 2 - .local/bin/tools/dl_torrent_and_view.sh | 10 - .local/bin/tools/dmenuhandler | 8 +- .local/bin/tools/email_handler | 6 - .local/bin/tools/epdf | 3 - .local/bin/tools/ext | 1 - .local/bin/tools/fix_devices | 3 - .local/bin/tools/getkeys | 4 - .local/bin/tools/gomuks_profile | 2 + .local/bin/tools/hover | 2 +- .local/bin/tools/importvocabs | 13 - .local/bin/tools/mand | 23 - .local/bin/tools/nsxiv-rifle | 51 + .local/bin/tools/opout | 11 - .local/bin/tools/passmenu2 | 11 +- .local/bin/tools/patch_mailsync | 2 - .local/bin/tools/pauseallmpv | 4 - .local/bin/tools/plot | 30 - .local/bin/tools/polybox_sync | 7 - .local/bin/tools/print_zine | 5 + .local/bin/tools/pw | 19 - .local/bin/tools/qndl | 11 - .local/bin/tools/queueandnotify | 13 - .local/bin/tools/refbar | 5 - .local/bin/tools/restart | 3 - .local/bin/tools/rotdir | 4 - .local/bin/tools/score | 3 - .local/bin/tools/search | 1 - .local/bin/tools/searx | 10 +- .local/bin/tools/select_emailrecipient | 3 + .local/bin/tools/shortcuts | 26 - .local/bin/tools/startmpv | 2 +- .local/bin/tools/startzoom | 2 - .local/bin/tools/temp_bt | 3 - .local/bin/tools/toprim | 2 - .local/bin/tools/transadd | 2 +- .local/bin/tools/vifmimg | 13 - .local/bin/tools/vpnstatus | 2 +- .local/bin/tools/vu | 15 - .local/bin/tools/watchit | 26 - .local/bin/tools/wv | 11 - .local/bin/torwrap | 7 - .local/bin/tutorialvids | 20 - .local/bin/ueberzug | 12 - .local/bin/ueberzug_ | 12 - .local/bin/unix | 26 - .local/bin/unix_ | 25 - .local/bin/unmounter | 28 + .local/bin/update_musicbar | 2 +- .local/bin/vifmimg | 14 - .local/bin/vnc | 69 - .local/bin/wal | 12 - .local/bin/wheel | 8 - .local/bin/xlsx2csv | 1137 ---------- .local/share/applications/file.desktop | 2 +- .local/share/applications/img.desktop | 2 +- .local/share/applications/mimeinfo.cache | 22 +- .local/share/applications/monero-gui.desktop | 16 - .local/share/applications/video.desktop | 4 + .../applications/wine-extension-chm.desktop | 8 - .../applications/wine-extension-gif.desktop | 8 - .../applications/wine-extension-hlp.desktop | 8 - .../applications/wine-extension-htm.desktop | 8 - .../applications/wine-extension-ini.desktop | 8 - .../applications/wine-extension-jfif.desktop | 8 - .../applications/wine-extension-jpe.desktop | 8 - .../applications/wine-extension-msp.desktop | 8 - .../applications/wine-extension-pdf.desktop | 8 - .../applications/wine-extension-png.desktop | 8 - .../applications/wine-extension-rtf.desktop | 8 - .../applications/wine-extension-txt.desktop | 8 - .../applications/wine-extension-url.desktop | 8 - .../applications/wine-extension-vbs.desktop | 7 - .../applications/wine-extension-wri.desktop | 8 - .../applications/wine-extension-xml.desktop | 8 - .../Heimat Defender Rebellion.desktop | 8 - .local/share/larbs/chars/emoji | 1630 +++++++++++++++ .local/share/larbs/chars/font-awesome | 1456 +++++++++++++ .local/share/larbs/ttymaps.kmap | 2 + .profile | 1 - .xprofile | 2 +- .zprofile | 169 +- 332 files changed, 6708 insertions(+), 10208 deletions(-) delete mode 100644 .config/X11/xinitrc delete mode 100644 .config/Xresources delete mode 100644 .config/aliasrc delete mode 100644 .config/alsa/asoundrc delete mode 100644 .config/calcurse/.calcurse.pid delete mode 100644 .config/coc/extensions/node_modules/coc-vimtex/Readme.md delete mode 100644 .config/coc/extensions/node_modules/coc-vimtex/package.json delete mode 100644 .config/coc/extensions/node_modules/coc-vimtex/src/index.js delete mode 100644 .config/coc/extensions/node_modules/coc-vimtex/src/util.js delete mode 100644 .config/coc/extensions/package.json delete mode 100644 .config/coc/history.json delete mode 100644 .config/coc/lists delete mode 100644 .config/coc/memos.json delete mode 100644 .config/coc/mru delete mode 100644 .config/directories delete mode 100644 .config/dunst/dunstrc_old delete mode 100644 .config/emoji delete mode 100644 .config/files delete mode 100644 .config/gtk-3.0/bookmarks delete mode 100644 .config/homepage/bookmarks delete mode 100644 .config/homepage/html/empty.html delete mode 100644 .config/homepage/html/homepage.html delete mode 100644 .config/homepage/script.js delete mode 100644 .config/homepage/styles/archlinux.css delete mode 100644 .config/homepage/styles/arcolinux-info.css delete mode 100644 .config/homepage/styles/arcolinuxforum.css delete mode 100644 .config/homepage/styles/empty.css delete mode 100644 .config/homepage/styles/homepage.css delete mode 100644 .config/homepage/styles/suckless.css delete mode 100644 .config/homepage/styles/wikipedia.css delete mode 100644 .config/lf/lfrc delete mode 100755 .config/lf/scope create mode 100644 .config/mbsync/mailsync.patch create mode 100644 .config/mbsync/patch_mailsync.sh create mode 100644 .config/mimeapps.list delete mode 100644 .config/mpd/playlists/lofi.m3u create mode 100644 .config/mpv/scripts/modules.lua create mode 120000 .config/mpv/scripts/sponsorblock-minimal.lua create mode 100644 .config/mutt/accounts/1-abocken@ethz.ch.muttrc create mode 100644 .config/mutt/accounts/alexander@aaathats3as.com.muttrc create mode 100644 .config/mutt/accounts/alexander@bocken.org.muttrc delete mode 100644 .config/mutt/mailcap create mode 100644 .config/mutt/templates/email.html delete mode 100644 .config/ncmpcpp/config_ delete mode 100644 .config/ncmpcpp/error.log rename .config/{sxiv => nsxiv}/exec/key-handler (62%) delete mode 100644 .config/nvim/init.vim delete mode 100644 .config/openvpn/cfgs/Argentina.ovpn delete mode 100644 .config/openvpn/cfgs/Australia.ovpn delete mode 100644 .config/openvpn/cfgs/Austria.ovpn delete mode 100644 .config/openvpn/cfgs/Belgium.ovpn delete mode 100644 .config/openvpn/cfgs/Brazil.ovpn delete mode 100644 .config/openvpn/cfgs/Canada.ovpn delete mode 100644 .config/openvpn/cfgs/Cyprus.ovpn delete mode 100644 .config/openvpn/cfgs/Denmark.ovpn delete mode 100644 .config/openvpn/cfgs/Finland.ovpn delete mode 100644 .config/openvpn/cfgs/France.ovpn delete mode 100644 .config/openvpn/cfgs/Germany.ovpn delete mode 100644 .config/openvpn/cfgs/Hong Kong.ovpn delete mode 100644 .config/openvpn/cfgs/Hungary.ovpn delete mode 100644 .config/openvpn/cfgs/India.ovpn delete mode 100644 .config/openvpn/cfgs/Ireland.ovpn delete mode 100644 .config/openvpn/cfgs/Israel.ovpn delete mode 100644 .config/openvpn/cfgs/Italy.ovpn delete mode 100644 .config/openvpn/cfgs/Japan.ovpn delete mode 100644 .config/openvpn/cfgs/Mexico.ovpn delete mode 100644 .config/openvpn/cfgs/NewZealand.ovpn delete mode 100644 .config/openvpn/cfgs/Norway.ovpn delete mode 100644 .config/openvpn/cfgs/Poland.ovpn delete mode 100644 .config/openvpn/cfgs/Portugal.ovpn delete mode 100644 .config/openvpn/cfgs/Romania.ovpn delete mode 100644 .config/openvpn/cfgs/Singapore.ovpn delete mode 100644 .config/openvpn/cfgs/South Africa.ovpn delete mode 100644 .config/openvpn/cfgs/Spain.ovpn delete mode 100644 .config/openvpn/cfgs/Sweden.ovpn delete mode 100644 .config/openvpn/cfgs/Switzerland.ovpn delete mode 100644 .config/openvpn/cfgs/The Netherlands.ovpn delete mode 100644 .config/openvpn/cfgs/UK.ovpn delete mode 100644 .config/openvpn/cfgs/US East.ovpn delete mode 100644 .config/openvpn/cfgs/US West.ovpn create mode 100755 .config/pinentry/preexec create mode 100644 .config/pipewire/pipewire.conf create mode 100644 .config/qutebrowser/autoconfig.yml delete mode 100644 .config/qutebrowser/bookmarks/urls delete mode 100644 .config/qutebrowser/dracula/.gitignore delete mode 100644 .config/qutebrowser/dracula/INSTALL.md delete mode 100644 .config/qutebrowser/dracula/__init__.py delete mode 100644 .config/qutebrowser/dracula/__pycache__/__init__.cpython-38.pyc create mode 100644 .config/qutebrowser/dracula/__pycache__/draw.cpython-311.pyc delete mode 100644 .config/qutebrowser/dracula/__pycache__/draw.cpython-38.pyc delete mode 100644 .config/qutebrowser/dracula/readme.md delete mode 100644 .config/qutebrowser/dracula/screenshot.png delete mode 100644 .config/qutebrowser/quickmarks delete mode 100644 .config/qutebrowser/startpage.html create mode 100644 .config/ranger/colorschemes/__pycache__/__init__.cpython-310.opt-1.pyc create mode 100644 .config/ranger/colorschemes/__pycache__/__init__.cpython-310.pyc create mode 100644 .config/ranger/colorschemes/__pycache__/__init__.cpython-311.opt-1.pyc create mode 100644 .config/ranger/colorschemes/__pycache__/__init__.cpython-311.pyc create mode 100644 .config/ranger/colorschemes/__pycache__/default.cpython-310.opt-1.pyc create mode 100644 .config/ranger/colorschemes/__pycache__/default.cpython-310.pyc create mode 100644 .config/ranger/colorschemes/__pycache__/default.cpython-311.opt-1.pyc create mode 100644 .config/ranger/colorschemes/__pycache__/default.cpython-311.pyc create mode 100644 .config/shell/aliasrc create mode 100644 .config/shell/bm-dirs create mode 100644 .config/shell/bm-files rename .config/{ => shell}/inputrc (100%) create mode 100644 .config/shell/profile create mode 100644 .config/shell/shortcutrc create mode 100644 .config/shell/zshnameddirrc delete mode 100644 .config/shortcutrc delete mode 100644 .config/sxhkd/sxhkdrc delete mode 100644 .config/transmission-daemon/settings.json delete mode 100644 .config/transmission/dht.dat delete mode 100644 .config/transmission/settings.json delete mode 100644 .config/transmission/stats.json delete mode 100644 .config/tremc/settings.cfg rename .config/{X11 => x11}/Xres_casting (100%) create mode 100755 .config/x11/xinitrc create mode 100755 .config/x11/xprofile rename .config/{X11/Xresources => x11/xresources} (95%) delete mode 100755 .config/xinitrc delete mode 100755 .config/xprofile create mode 100644 .config/zsh/.zcompdump create mode 120000 .gtkrc-2.0 delete mode 100644 .local/bin/SCRIPTS.md delete mode 100755 .local/bin/booksplit delete mode 100755 .local/bin/bt delete mode 100755 .local/bin/cabl delete mode 100755 .local/bin/castscreen delete mode 100755 .local/bin/compiler create mode 100755 .local/bin/cookies2nsformat rename .local/bin/cron/{IMPORTANT_NOTE.md => README.md} (73%) delete mode 100755 .local/bin/cron/cronbat delete mode 100755 .local/bin/cv delete mode 100755 .local/bin/ddspawn create mode 100755 .local/bin/dmenuhandler create mode 100755 .local/bin/dmenumountcifs delete mode 100755 .local/bin/dmenuunicode mode change 120000 => 100755 .local/bin/emoji create mode 100755 .local/bin/ethupdate delete mode 100755 .local/bin/f2py delete mode 100755 .local/bin/f2py3 delete mode 100755 .local/bin/f2py3.8 create mode 100755 .local/bin/getbib create mode 100755 .local/bin/getbib_ create mode 100755 .local/bin/getcomproot delete mode 100755 .local/bin/ifinstalled delete mode 100755 .local/bin/launch_polybar delete mode 100755 .local/bin/lf-select create mode 100755 .local/bin/linkhandler delete mode 100755 .local/bin/lmc delete mode 100755 .local/bin/manga-py delete mode 100755 .local/bin/markdown_py create mode 100755 .local/bin/mounter delete mode 100755 .local/bin/muccadoro create mode 100755 .local/bin/noisereduce delete mode 100755 .local/bin/opout delete mode 100755 .local/bin/podentr delete mode 100755 .local/bin/pom delete mode 100755 .local/bin/pomft delete mode 100755 .local/bin/pyls delete mode 100755 .local/bin/qndl delete mode 100755 .local/bin/queueandnotify delete mode 100755 .local/bin/refbar create mode 100755 .local/bin/remapd delete mode 100755 .local/bin/ripper create mode 100755 .local/bin/rotdir create mode 100755 .local/bin/setbg delete mode 100755 .local/bin/shortcuts delete mode 100755 .local/bin/statusbar/corona delete mode 100755 .local/bin/statusbar/crypto delete mode 100755 .local/bin/statusbar/getpomminutes delete mode 100755 .local/bin/statusbar/getpomminutesft delete mode 100755 .local/bin/statusbar/headset_connected delete mode 100755 .local/bin/statusbar/help delete mode 100755 .local/bin/statusbar/help-icon delete mode 100755 .local/bin/statusbar/iplocate delete mode 100755 .local/bin/statusbar/moonphase delete mode 100755 .local/bin/statusbar/mpdupdate delete mode 100755 .local/bin/statusbar/music delete mode 100755 .local/bin/statusbar/music_old rename .local/bin/statusbar/{appointments => sb-appointments} (72%) rename .local/bin/statusbar/{battery => sb-battery} (100%) rename .local/bin/statusbar/{btstatus => sb-btstatus} (100%) rename .local/bin/statusbar/{clock => sb-clock} (100%) rename .local/bin/statusbar/{cpu => sb-cpu} (100%) rename .local/bin/statusbar/{current_day => sb-current_day} (100%) rename .local/bin/statusbar/{disk => sb-disk} (100%) rename .local/bin/statusbar/{dunststatus => sb-dunststatus} (100%) rename .local/bin/statusbar/{getbright => sb-getbright} (100%) rename .local/bin/statusbar/{getmail => sb-getmail} (100%) rename .local/bin/statusbar/{internet => sb-internet} (61%) rename .local/bin/statusbar/{mailbox => sb-mailbox} (100%) rename .local/bin/statusbar/{memory => sb-memory} (100%) create mode 100755 .local/bin/statusbar/sb-music rename .local/bin/statusbar/{nettraf => sb-nettraf} (100%) rename .local/bin/statusbar/{news => sb-news} (100%) rename .local/bin/statusbar/{pacpackages => sb-pacpackages} (100%) rename .local/bin/statusbar/{torrent => sb-torrent} (100%) create mode 100755 .local/bin/statusbar/sb-volume delete mode 100755 .local/bin/statusbar/statusbarinfo delete mode 100755 .local/bin/statusbar/sync_status delete mode 100755 .local/bin/statusbar/volume delete mode 100755 .local/bin/statusbar/volume_ delete mode 100755 .local/bin/statusbar/weather delete mode 100755 .local/bin/sysact delete mode 100755 .local/bin/td-toggle delete mode 100755 .local/bin/test2 delete mode 100755 .local/bin/testscript create mode 100755 .local/bin/texclear delete mode 100755 .local/bin/tldextract create mode 100755 .local/bin/tools/arkenfox-auto-update create mode 100755 .local/bin/tools/booksplit delete mode 100644 .local/bin/tools/bt_blacklist delete mode 100755 .local/bin/tools/bthandler_ delete mode 100755 .local/bin/tools/casttest delete mode 100755 .local/bin/tools/clip delete mode 100755 .local/bin/tools/dl_torrent_and_view.sh delete mode 100755 .local/bin/tools/email_handler delete mode 100755 .local/bin/tools/epdf delete mode 120000 .local/bin/tools/ext delete mode 100644 .local/bin/tools/fix_devices delete mode 100755 .local/bin/tools/getkeys create mode 100755 .local/bin/tools/gomuks_profile delete mode 100755 .local/bin/tools/importvocabs delete mode 100755 .local/bin/tools/mand create mode 100755 .local/bin/tools/nsxiv-rifle delete mode 100755 .local/bin/tools/opout delete mode 100755 .local/bin/tools/patch_mailsync delete mode 100755 .local/bin/tools/pauseallmpv delete mode 100755 .local/bin/tools/plot delete mode 100755 .local/bin/tools/polybox_sync create mode 100755 .local/bin/tools/print_zine delete mode 100755 .local/bin/tools/pw delete mode 100755 .local/bin/tools/qndl delete mode 100755 .local/bin/tools/queueandnotify delete mode 100755 .local/bin/tools/refbar delete mode 100755 .local/bin/tools/restart delete mode 100755 .local/bin/tools/rotdir delete mode 100755 .local/bin/tools/score delete mode 100755 .local/bin/tools/search create mode 100755 .local/bin/tools/select_emailrecipient delete mode 100755 .local/bin/tools/shortcuts delete mode 100755 .local/bin/tools/startzoom delete mode 100755 .local/bin/tools/temp_bt delete mode 100755 .local/bin/tools/toprim delete mode 100755 .local/bin/tools/vifmimg delete mode 100755 .local/bin/tools/vu delete mode 100755 .local/bin/tools/watchit delete mode 100755 .local/bin/tools/wv delete mode 100755 .local/bin/torwrap delete mode 100755 .local/bin/tutorialvids delete mode 100755 .local/bin/ueberzug delete mode 100755 .local/bin/ueberzug_ delete mode 100755 .local/bin/unix delete mode 100755 .local/bin/unix_ create mode 100755 .local/bin/unmounter delete mode 100755 .local/bin/vifmimg delete mode 100755 .local/bin/vnc delete mode 100755 .local/bin/wal delete mode 100755 .local/bin/wheel delete mode 100755 .local/bin/xlsx2csv delete mode 100644 .local/share/applications/monero-gui.desktop create mode 100644 .local/share/applications/video.desktop delete mode 100644 .local/share/applications/wine-extension-chm.desktop delete mode 100644 .local/share/applications/wine-extension-gif.desktop delete mode 100644 .local/share/applications/wine-extension-hlp.desktop delete mode 100644 .local/share/applications/wine-extension-htm.desktop delete mode 100644 .local/share/applications/wine-extension-ini.desktop delete mode 100644 .local/share/applications/wine-extension-jfif.desktop delete mode 100644 .local/share/applications/wine-extension-jpe.desktop delete mode 100644 .local/share/applications/wine-extension-msp.desktop delete mode 100644 .local/share/applications/wine-extension-pdf.desktop delete mode 100644 .local/share/applications/wine-extension-png.desktop delete mode 100644 .local/share/applications/wine-extension-rtf.desktop delete mode 100644 .local/share/applications/wine-extension-txt.desktop delete mode 100644 .local/share/applications/wine-extension-url.desktop delete mode 100644 .local/share/applications/wine-extension-vbs.desktop delete mode 100644 .local/share/applications/wine-extension-wri.desktop delete mode 100644 .local/share/applications/wine-extension-xml.desktop delete mode 100644 .local/share/applications/wine/Programs/Heimat Defender Rebellion.desktop create mode 100644 .local/share/larbs/chars/emoji create mode 100644 .local/share/larbs/chars/font-awesome create mode 100644 .local/share/larbs/ttymaps.kmap delete mode 120000 .profile mode change 100644 => 120000 .zprofile diff --git a/.config/X11/xinitrc b/.config/X11/xinitrc deleted file mode 100644 index 4a7c6e8..0000000 --- a/.config/X11/xinitrc +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/sh - -xrdb -merge ~/.Xresources -[ -f "$HOME/.xprofile" ] && . ~/.xprofile -#xrdb -merge ~/.Xresources -wal -n -i ~/.config/wall.png -b '#000000' -while true; do - # Log stderror to a file - #dwm 2> ~/.dwm.log - # No error logging - dwm >/dev/null 2>&1 -done -#exec i3 -#exec bspwm diff --git a/.config/Xresources b/.config/Xresources deleted file mode 100644 index c883396..0000000 --- a/.config/Xresources +++ /dev/null @@ -1,208 +0,0 @@ -!! Transparency (0-1): -*.alpha: 0.8 -st.alpha: 0.1 - -!! Set a default font and font size as below: - -*.dpi: 180 - -/* name dark light */ -/* black 0 8 */ -/* red 1 9 */ -/* green 2 10 */ -/* yellow 3 11 */ -/* blue 4 12 */ -/* purple 5 13 */ -/* cyan 6 14 */ -/* white 7 15 */ - -/* !! gruvbox: */ -/* *.color0: #1d2021 */ -/* *.color1: #cc241d */ -/* *.color2: #98971a */ -/* *.color3: #d79921 */ -/* *.color4: #458588 */ -/* *.color5: #b16286 */ -/* *.color6: #689d6a */ -/* *.color7: #a89984 */ -/* *.color8: #928374 */ -/* *.color9: #fb4934 */ -/* *.color10: #b8bb26 */ -/* *.color11: #fabd2f */ -/* *.color12: #83a598 */ -/* *.color13: #d3869b */ -/* *.color14: #8ec07c */ -/* *.color15: #ebdbb2 */ -/* *.color256: #1d2021 */ -/* *.color257: #ebdbb2 */ - -/* !! gruvbox light: */ -/* *.color0: #fbf1c7 */ -/* *.color1: #cc241d */ -/* *.color2: #98971a */ -/* *.color3: #d79921 */ -/* *.color4: #458588 */ -/* *.color5: #b16286 */ -/* *.color6: #689d6a */ -/* *.color7: #7c6f64 */ -/* *.color8: #928374 */ -/* *.color9: #9d0006 */ -/* *.color10: #79740e */ -/* *.color11: #b57614 */ -/* *.color12: #076678 */ -/* *.color13: #8f3f71 */ -/* *.color14: #427b58 */ -/* *.color15: #3c3836 */ -/* *.background: #fbf1c7 */ -/* *.foreground: #282828 */ -/* st.alpha: 0.9 */ - -/* !! brogrammer: */ -/* *.foreground: #d6dbe5 */ -/* *.background: #131313 */ -/* *.color0: #1f1f1f */ -/* *.color8: #d6dbe5 */ -/* *.color1: #f81118 */ -/* *.color9: #de352e */ -/* *.color2: #2dc55e */ -/* *.color10: #1dd361 */ -/* *.color3: #ecba0f */ -/* *.color11: #f3bd09 */ -/* *.color4: #2a84d2 */ -/* *.color12: #1081d6 */ -/* *.color5: #4e5ab7 */ -/* *.color13: #5350b9 */ -/* *.color6: #1081d6 */ -/* *.color14: #0f7ddb */ -/* *.color7: #d6dbe5 */ -/* *.color15: #ffffff */ -/* *.colorBD: #d6dbe5 */ - -/* ! base16 */ -/* *.color0: #181818 */ -/* *.color1: #ab4642 */ -/* *.color2: #a1b56c */ -/* *.color3: #f7ca88 */ -/* *.color4: #7cafc2 */ -/* *.color5: #ba8baf */ -/* *.color6: #86c1b9 */ -/* *.color7: #d8d8d8 */ -/* *.color8: #585858 */ -/* *.color9: #ab4642 */ -/* *.color10: #a1b56c */ -/* *.color11: #f7ca88 */ -/* *.color12: #7cafc2 */ -/* *.color13: #ba8baf */ -/* *.color14: #86c1b9 */ -/* *.color15: #f8f8f8 */ - -/* !! solarized */ -/* *.color0: #073642 */ -/* *.color1: #dc322f */ -/* *.color2: #859900 */ -/* *.color3: #b58900 */ -/* *.color4: #268bd2 */ -/* *.color5: #d33682 */ -/* *.color6: #2aa198 */ -/* *.color7: #eee8d5 */ -/* *.color9: #cb4b16 */ -/* *.color8: #fdf6e3 */ -/* *.color10: #586e75 */ -/* *.color11: #657b83 */ -/* *.color12: #839496 */ -/* *.color13: #6c71c4 */ -/* *.color14: #93a1a1 */ -/* *.color15: #fdf6e3 */ - -/* !! xterm */ -/* *.color0: #000000 */ -/* *.color1: #cd0000 */ -/* *.color2: #00cd00 */ -/* *.color3: #cdcd00 */ -/* *.color4: #0000cd */ -/* *.color5: #cd00cd */ -/* *.color6: #00cdcd */ -/* *.color7: #e5e5e5 */ -/* *.color8: #4d4d4d */ -/* *.color9: #ff0000 */ -/* *.color10: #00ff00 */ -/* *.color11: #ffff00 */ -/* *.color12: #0000ff */ -/* *.color13: #ff00ff */ -/* *.color14: #00ffff */ -/* *.color15: #aabac8 */ -/* *.background: #000000 */ - -/* ! Dracula Xresources palette */ -/* *.foreground: #F8F8F2 */ -/* *.background: #282A36 */ -/* *.color0: #000000 */ -/* *.color8: #4D4D4D */ -/* *.color1: #FF5555 */ -/* *.color9: #FF6E67 */ -/* *.color2: #50FA7B */ -/* *.color10: #5AF78E */ -/* *.color3: #F1FA8C */ -/* *.color11: #F4F99D */ -/* *.color4: #BD93F9 */ -/* *.color12: #CAA9FA */ -/* *.color5: #FF79C6 */ -/* *.color13: #FF92D0 */ -/* *.color6: #8BE9FD */ -/* *.color14: #9AEDFE */ -/* *.color7: #BFBFBF */ -/* *.color15: #E6E6E6 */ - -/* *.background: .color0 */ -/* *.color256: 0#1d2021 */ -/* *.color257: 15#ebdbb2 */ - - -/* !nord */ -#define bblack #000000 -#define nord0 #2E3440 -#define nord1 #3B4252 -#define nord2 #434C5E -#define nord3 #4C566A -#define nord4 #D8DEE9 -#define nord5 #E5E9F0 -#define nord6 #ECEFF4 -#define nord7 #8FBCBB -#define nord8 #88C0D0 -#define nord9 #81A1C1 -#define nord10 #5E81AC -#define nord11 #BF616A -#define nord12 #D08770 -#define nord13 #EBCB8B -#define nord14 #A3BE8C -#define nord15 #B48EAD - -*.foreground: nord4 -*.background: bblack -*.cursorColor: nord4 -*fading: 35 -*fadeColor: nord3 - -Sxiv.font: monospace-10 -Sxiv.txtcolor: nord6 -Sxiv.background: bblack -Sxiv.foreground: nord6 - -xterm*saveLines: 2000 - -*.color0: nord1 -*.color1: nord11 -*.color2: nord14 -*.color3: nord13 -*.color4: nord9 -*.color5: nord15 -*.color6: nord8 -*.color7: nord5 -*.color8: nord3 -*.color9: nord11 -*.color10: nord14 -*.color11: nord13 -*.color12: nord9 -*.color13: nord15 -*.color14: nord7 -*.color15: nord6 diff --git a/.config/aliasrc b/.config/aliasrc deleted file mode 100644 index 7c2fd68..0000000 --- a/.config/aliasrc +++ /dev/null @@ -1,58 +0,0 @@ -#!/bin/sh - -# Use neovim for vim if present. -command -v nvim >/dev/null && alias vim="nvim" vimdiff="nvim -d" - -# Verbosity and settings that you pretty much just always are going to want. -alias \ - bat="cat /sys/class/power_supply/BAT?/capacity" \ - cp="cp -iv" \ - mv="mv -iv" \ - rm="rm -v" \ - mkd="mkdir -pv" \ - yt="youtube-dl --add-metadata -o '%(upload_date)s-%(title)s.%(ext)s' -i" \ - yta="yt -x --add-metadata -f bestaudio/best" -o '%(upload_date)s-%(title)s.%(ext)s'\ - ffmpeg="ffmpeg -hide_banner" \ - sage="sage -q" \ - abook="abook --config $XDG_CONFIG_HOME/abook/abookrc --datafile $XDG_DATA_HOME/abook/addressbook" - -# Colorize commands when possible. -alias \ - ls="ls -hN --color=auto --group-directories-first" \ - grep="grep --color=auto" \ - diff="diff --color=auto" \ - ccat="highlight --out-format=ansi" - -# These common commands are just too long! Abbreviate them. -alias \ - ka="killall" \ - g="git" \ - trem="transmission-remote" \ - YT="youtube-viewer" \ - sdn="sudo shutdown -h now" \ - f="$FILE" \ - e="$EDITOR" \ - v="$EDITOR" \ - p="sudo pacman" \ - xi="sudo xbps-install" \ - xr="sudo xbps-remove -R" \ - xq="xbps-query" \ - z="zathura"\ - q="exit"\ - dunstpause="notify-send 'dunst' 'Pausing dunst...'; sleep 2; notify-send 'DUNST_COMMAND_PAUSE'"\ - dunstresume="notify-send 'dunst' 'Resuming dunst...' && notify-send 'DUNST_COMMAND_RESUME'"\ - glog="git log --all --graph --decorate"\ - clog="config log --all --graph --decorate"\ - cam="mpv --demuxer-lavf-format=video4linux2 --demuxer-lavf-o-set=input_format=mjpeg av://v4l2:/dev/video0"\ - pa="paru" - -# Some other stuff -alias \ - magit="nvim -c MagitOnly" \ - ref="shortcuts >/dev/null; source ${XDG_CONFIG_HOME:-$HOME/.config}/shortcutrc ; source ${XDG_CONFIG_HOME:-$HOME/.config}/zshnameddirrc" \ - weath="less -S ${XDG_DATA_HOME:-$HOME/.local/share}/weatherreport" \ - tmux="tmux -f ${XDG_CONFIG_HOME:-$HOME/.config}/tmux/tmux.conf"\ - cast="mkchromecast --video --control -i"\ - castaudio="mkchromecast --control --screencast --b 320"\ - -alias config='/usr/bin/git --git-dir=/home/alex/.local/share/git_dotfiles --work-tree=/home/alex' diff --git a/.config/alsa/asoundrc b/.config/alsa/asoundrc deleted file mode 100644 index 38722f0..0000000 --- a/.config/alsa/asoundrc +++ /dev/null @@ -1,21 +0,0 @@ -# Find and use input "Microphone" for input -pcm.usb -{ - type hw - card Microphone -} -pcm.!default -{ - type asym - playback.pcm - { - # Use the dmix plug to allow multiple outputs. - type plug - slave.pcm "dmix" - } - capture.pcm - { - type plug - slave.pcm "usb" - } -} diff --git a/.config/calcurse/.calcurse.pid b/.config/calcurse/.calcurse.pid deleted file mode 100644 index 382d2d7..0000000 --- a/.config/calcurse/.calcurse.pid +++ /dev/null @@ -1 +0,0 @@ -6827 diff --git a/.config/calcurse/conf b/.config/calcurse/conf index 9312851..88e05af 100644 --- a/.config/calcurse/conf +++ b/.config/calcurse/conf @@ -6,12 +6,13 @@ appearance.headerline=yes appearance.eventseparator=yes appearance.dayseparator=yes appearance.emptyline=yes +appearance.emptyday=-- appearance.notifybar=yes appearance.sidebarwidth=0 -appearance.theme=blue on black +appearance.theme=blue on default appearance.todoview=hide-completed appearance.headingpos=right-justified -daemon.enable=yes +daemon.enable=no daemon.log=no format.inputdate=1 format.notifydate=%a %F @@ -24,9 +25,8 @@ general.confirmdelete=yes general.confirmquit=yes general.firstdayofweek=monday general.multipledays=yes -general.periodicsave=1 +general.periodicsave=0 general.systemevents=yes -general.systemdialogs=yes -notification.command=appointments notif -notification.notifyall=all -notification.warning=900 +notification.command=printf '\a' +notification.notifyall=flagged-only +notification.warning=300 diff --git a/.config/calcurse/keys b/.config/calcurse/keys index 0f5ee8d..49b4826 100644 --- a/.config/calcurse/keys +++ b/.config/calcurse/keys @@ -6,50 +6,51 @@ # via the key configuration menu of the interactive user # interface. It should not be edited directly. -generic-cancel ESC -generic-select SPC -generic-credits @ -generic-help ? -generic-quit q Q -generic-save s S ^S -generic-reload R -generic-copy c -generic-paste p ^V -generic-change-view TAB -generic-import i I -generic-export x X -generic-goto g G -generic-other-cmd o O -generic-config-menu C -generic-redraw ^R -generic-add-appt ^A -generic-add-todo ^T -generic-prev-day T ^H -generic-next-day t ^L -generic-prev-week W ^K -generic-next-week w -generic-prev-month M -generic-next-month m -generic-prev-year Y -generic-next-year y -generic-scroll-down ^N -generic-scroll-up ^P -generic-goto-today ^G -generic-command : -move-right l L RGT -move-left h H LFT -move-down j J DWN -move-up k K UP -start-of-week 0 -end-of-week $ -add-item a A -del-item d D -edit-item e E -view-item v V RET -pipe-item | -flag-item ! -repeat r -edit-note n N -view-note > -raise-priority + -lower-priority - +generic-cancel ESC +generic-select SPC +generic-credits @ +generic-help ? +generic-quit q Q +generic-save s S ^S +generic-reload R +generic-copy c +generic-paste p ^V +generic-change-view TAB +generic-prev-view KEY_BTAB +generic-import i I +generic-export x X +generic-goto g G +generic-other-cmd o O +generic-config-menu C +generic-redraw ^R +generic-add-appt ^A +generic-add-todo ^T +generic-prev-day T ^H +generic-next-day t ^L +generic-prev-week W ^K +generic-next-week w +generic-prev-month M +generic-next-month m +generic-prev-year Y +generic-next-year y +generic-scroll-down ^N +generic-scroll-up ^P +generic-goto-today ^G +generic-command : +move-right l L RGT +move-left h H LFT +move-down j J DWN +move-up k K UP +start-of-week 0 +end-of-week $ +add-item a A +del-item d D +edit-item e E +view-item v V RET +pipe-item | +flag-item ! +repeat r +edit-note n N +view-note > +raise-priority + +lower-priority - diff --git a/.config/coc/extensions/node_modules/coc-vimtex/Readme.md b/.config/coc/extensions/node_modules/coc-vimtex/Readme.md deleted file mode 100644 index d14e891..0000000 --- a/.config/coc/extensions/node_modules/coc-vimtex/Readme.md +++ /dev/null @@ -1,24 +0,0 @@ -# coc-vimtex - -Tex completion source use [vimtex](https://github.com/lervag/vimtex). - -## Install - -In your vim/neovim, run command: - -``` -:CocInstall coc-vimtex -``` - -Or add this plugin's folder to your vim's runtimepath. - -## Options - -- `coc.source.vimtex.disableSyntaxes` disabled syntax names. -- `coc.source.vimtex.enable` set to false to disable this source. -- `coc.source.vimtex.priority` priority of source, default `99`. -- `coc.source.vimtex.shortcut` shortcut used in `menu` of completion item. - -## License - -MIT diff --git a/.config/coc/extensions/node_modules/coc-vimtex/package.json b/.config/coc/extensions/node_modules/coc-vimtex/package.json deleted file mode 100644 index a4f1465..0000000 --- a/.config/coc/extensions/node_modules/coc-vimtex/package.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "name": "coc-vimtex", - "version": "1.0.4", - "description": "vimtex integration for coc.nvim", - "main": "src/index.js", - "publisher": "chemzqm", - "keywords": [ - "coc.nvim", - "vimtex" - ], - "engines": { - "coc": "^0.0.56" - }, - "activationEvents": [ - "onLanguage:tex", - "onLanguage:plaintex", - "onLanguage:latex" - ], - "contributes": { - "configuration": { - "type": "object", - "properties": { - "coc.source.vimtex.enable": { - "type": "boolean", - "default": true - }, - "coc.source.vimtex.priority": { - "type": "integer", - "default": 99 - } - } - } - }, - "author": "chemzqm@gmail.com", - "repository": { - "type": "git", - "url": "git+https://github.com/neoclide/coc-vimtex.git" - }, - "license": "MIT", - "devDependencies": { - "@types/node": "^10.12.24", - "coc.nvim": "^0.0.74", - "rimraf": "^2.6.3" - }, - "dependencies": {} -} diff --git a/.config/coc/extensions/node_modules/coc-vimtex/src/index.js b/.config/coc/extensions/node_modules/coc-vimtex/src/index.js deleted file mode 100644 index 27781ac..0000000 --- a/.config/coc/extensions/node_modules/coc-vimtex/src/index.js +++ /dev/null @@ -1,66 +0,0 @@ -const {sources, workspace, SourceType} = require('coc.nvim') -const {convertRegex, byteSlice} = require('./util') - -exports.activate = async context => { - let config = workspace.getConfiguration('coc.source.vimtex') - let {nvim} = workspace - - let regex = await nvim.getVar('vimtex#re#deoplete') - if (!regex) { - workspace.showMessage('vimtex not loaded', 'error') - return - } - let pattern = new RegExp(convertRegex(regex) + '$') - - function convertItems(list) { - let res = [] - for (let item of list) { - if (typeof item == 'string') { - res.push(Object.assign({word: item})) - } - if (item.hasOwnProperty('word')) { - res.push(item) - } - } - return res - } - - let source = { - name: 'vimtex', - enable: config.get('enable', true), - priority: config.get('priority', 99), - filetypes: ['tex', 'plaintex', 'latex'], - sourceType: SourceType.Remote, - triggerPatterns: [pattern], - doComplete: async opt => { - let {nvim} = workspace - let func = 'vimtex#complete#omnifunc' - let {line, colnr, col} = opt - let startcol = col - try { - startcol = await nvim.call(func, [1, '']) - startcol = Number(startcol) - } catch (e) { - workspace.showMessage(`vim error from ${func} :${e.message}`, 'error') - return null - } - // invalid startcol - if (isNaN(startcol) || startcol < 0 || startcol > colnr) return null - let text = byteSlice(line, startcol, colnr - 1) - let words = await nvim.call(func, [0, text]) - if (words.hasOwnProperty('words')) { - words = words.words - } - let res = {items: convertItems(words)} - res.startcol = startcol - return res - } - } - - sources.addSource(source) - context.subscriptions.push({ - dispose: () => { - sources.removeSource(source) - } - }) -} diff --git a/.config/coc/extensions/node_modules/coc-vimtex/src/util.js b/.config/coc/extensions/node_modules/coc-vimtex/src/util.js deleted file mode 100644 index d5518ec..0000000 --- a/.config/coc/extensions/node_modules/coc-vimtex/src/util.js +++ /dev/null @@ -1,56 +0,0 @@ -/****************************************************************** -MIT License http://www.opensource.org/licenses/mit-license.php -Author Qiming Zhao (https://github.com/chemzqm) -*******************************************************************/ - -const conditionRe = /\(\?\(\?:\w+\).+\|/ -const bellRe = /\\a/ -const commentRe = /\(\?#.*?\)/ -const stringStartRe = /\\A/ -const lookBehindRe = /\(\?<[!=].*?\)/ -const namedCaptureRe = /\(\?P<\w+>.*?\)/ -const namedReferenceRe = /\(\?P=(\w+)\)/ -const braceRe = /\^\]/ -const regex = new RegExp(`${bellRe.source}|${commentRe.source}|${stringStartRe.source}|${lookBehindRe.source}|${namedCaptureRe.source}|${namedReferenceRe.source}|${braceRe}`, 'g') - -/** - * Convert python regex to javascript regex, - * throw error when unsupported pattern found - * - * @public - * @param {string} str - * @returns {string} - */ -exports.convertRegex = function(str) { - if (str.indexOf('\\z') !== -1) { - throw new Error('pattern \\z not supported') - } - if (str.indexOf('(?s)') !== -1) { - throw new Error('pattern (?s) not supported') - } - if (str.indexOf('(?x)') !== -1) { - throw new Error('pattern (?x) not supported') - } - if (str.indexOf('\n') !== -1) { - throw new Error('multiple line pattern not supported') - } - if (conditionRe.test(str)) { - throw new Error('condition pattern not supported') - } - return str.replace(regex, (match, p1) => { - if (match == '^]') return '^\\]' - if (match == '\\a') return '' - if (match.startsWith('(?#')) return '' - if (match == '\\A') return '^' - if (match.startsWith('(?<')) return '(?' + match.slice(3) - if (match.startsWith('(?P<')) return '(?' + match.slice(3) - if (match.startsWith('(?P=')) return `\\k<${p1}>` - return '' - }) -} - - -exports.byteSlice = function (content, start, end) { - let buf = Buffer.from(content, 'utf8') - return buf.slice(start, end).toString('utf8') -} diff --git a/.config/coc/extensions/package.json b/.config/coc/extensions/package.json deleted file mode 100644 index 382695b..0000000 --- a/.config/coc/extensions/package.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "dependencies": { - "coc-clangd": ">=0.7.0", - "coc-html": ">=1.4.1", - "coc-json": ">=1.3.2", - "coc-pyright": ">=1.1.101", - "coc-sh": ">=0.6.0", - "coc-vimtex": ">=1.0.4" - } -} diff --git a/.config/coc/history.json b/.config/coc/history.json deleted file mode 100644 index 36c9d4d..0000000 --- a/.config/coc/history.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "diagnostics": { - "%2Fhome%2Falex%2F": { - "local%2Fbin%2Ftools": [ - " " - ], - "local%2Fsrc%2Fbthandler": [ - " " - ], - "local%2Fsrc%2Fbibel": [ - " " - ], - "local%2Fsrc%2Favl": [ - " " - ], - "local%2Fbin": [ - " " - ] - }, - "%2Fhome%2Falex": [ - "kk", - " " - ], - "%2Fhome%2Falex%2Fdrv%2FDocuments%2Fencyclicals%2FleoXIII": [ - " " - ] - } -} \ No newline at end of file diff --git a/.config/coc/lists b/.config/coc/lists deleted file mode 100644 index 20a174f..0000000 --- a/.config/coc/lists +++ /dev/null @@ -1 +0,0 @@ -diagnostics \ No newline at end of file diff --git a/.config/coc/memos.json b/.config/coc/memos.json deleted file mode 100644 index 9e26dfe..0000000 --- a/.config/coc/memos.json +++ /dev/null @@ -1 +0,0 @@ -{} \ No newline at end of file diff --git a/.config/coc/mru b/.config/coc/mru deleted file mode 100644 index e69de29..0000000 diff --git a/.config/directories b/.config/directories deleted file mode 100644 index 879219c..0000000 --- a/.config/directories +++ /dev/null @@ -1,11 +0,0 @@ -# You can add comments to these files with # -h ~/ -d ~/Documents -D ~/Downloads -m ~/Music -pp ~/Pictures -vv ~/Videos -cf ${XDG_CONFIG_HOME:-$HOME/.config} -cac ${XDG_CACHE_HOME:-$HOME/.cache} -sc ~/.local/bin -mn /mnt diff --git a/.config/dunst/dunstrc b/.config/dunst/dunstrc index 98b56a5..5dcaa5d 100644 --- a/.config/dunst/dunstrc +++ b/.config/dunst/dunstrc @@ -17,7 +17,7 @@ # # If this option is set to mouse or keyboard, the monitor option # will be ignored. - follow = none + follow = mouse ### Geometry ### @@ -186,7 +186,7 @@ ignore_newline = no # Stack together notifications with the same content - stack_duplicates = true + stack_duplicates = false # Hide the count of stacked notifications with the same content hide_duplicate_count = false diff --git a/.config/dunst/dunstrc_old b/.config/dunst/dunstrc_old deleted file mode 100644 index abf5586..0000000 --- a/.config/dunst/dunstrc_old +++ /dev/null @@ -1,152 +0,0 @@ -[global] - monitor = 0 - follow = keyboard - geometry = "350x5-0+24" - indicate_hidden = yes - shrink = yes - transparency = 20 - notification_height = 0 - separator_height = 2 - padding = 0 - horizontal_padding = 8 - frame_width = 3 - frame_color = "#282828" - - # Define a color for the separator. - # possible values are: - # * auto: dunst tries to find a color fitting to the background; - # * foreground: use the same color as the foreground; - # * frame: use the same color as the frame; - # * anything else will be interpreted as a X color. - separator_color = frame - - # Sort messages by urgency. - sort = yes - - idle_threshold = 120 - font = Monospace 14 - line_height = 0 - markup = full - - # The format of the message. Possible variables are: - # %a appname - # %s summary - # %b body - # %i iconname (including its path) - # %I iconname (without its path) - # %p progress value if set ([ 0%] to [100%]) or nothing - # %n progress value if set without any extra characters - # %% Literal % - # Markup is allowed - format = "%s\n%b" - - alignment = left - show_age_threshold = 60 - word_wrap = yes - ellipsize = middle - ignore_newline = no - stack_duplicates = true - hide_duplicate_count = true - show_indicators = yes - icon_position = left - max_icon_size = 40 - #icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/:/usr/share/icons/Adwaita/256x256/status/ - sticky_history = yes - history_length = 20 - dmenu = /usr/bin/dmenu -p dunst: - browser = /usr/bin/firefox -new-tab - - # Always run rule-defined scripts, even if the notification is suppressed - always_run_script = true - - title = Dunst - class = Dunst - startup_notification = false - force_xinerama = false -[experimental] - per_monitor_dpi = false - -[shortcuts] - close = ctrl+space - close_all = ctrl+shift+space - history = ctrl+grave - context = ctrl+shift+period - -[urgency_low] - # IMPORTANT: colors have to be defined in quotation marks. - # Otherwise the "#" and following would be interpreted as a comment. - background = "#282828" - foreground = "#928374" - timeout = 5 - # Icon for notifications with low urgency, uncomment to enable - #icon = /path/to/icon - -[urgency_normal] - background = "#458588" - foreground = "#ebdbb2" - timeout = 5 - -[urgency_critical] - background = "#cc2421" - foreground = "#ebdbb2" - frame_color = "#fabd2f" - timeout = 0 - -# Every section that isn't one of the above is interpreted as a rules to -# override settings for certain messages. -# Messages can be matched by "appname", "summary", "body", "icon", "category", -# "msg_urgency" and you can override the "timeout", "urgency", "foreground", -# "background", "new_icon" and "format". -# Shell-like globbing will get expanded. -# -# SCRIPTING -# You can specify a script that gets run when the rule matches by -# setting the "script" option. -# The script will be called as follows: -# script appname summary body icon urgency -# where urgency can be "LOW", "NORMAL" or "CRITICAL". -# -# NOTE: if you don't want a notification to be displayed, set the format -# to "". -# NOTE: It might be helpful to run dunst -print in a terminal in order -# to find fitting options for rules. - -#[espeak] -# summary = "*" -# script = dunst_espeak.sh - -#[script-test] -# summary = "*script*" -# script = dunst_test.sh - -#[ignore] -# # This notification will not be displayed -# summary = "foobar" -# format = "" - -#[history-ignore] -# # This notification will not be saved in history -# summary = "foobar" -# history_ignore = yes - -#[signed_on] -# appname = Pidgin -# summary = "*signed on*" -# urgency = low -# -#[signed_off] -# appname = Pidgin -# summary = *signed off* -# urgency = low -# -#[says] -# appname = Pidgin -# summary = *says* -# urgency = critical -# -#[twitter] -# appname = Pidgin -# summary = *twitter.com* -# urgency = normal -# -# vim: ft=cfg diff --git a/.config/emoji b/.config/emoji deleted file mode 100644 index 35c1e1b..0000000 --- a/.config/emoji +++ /dev/null @@ -1,1644 +0,0 @@ -๐Ÿ˜€ grinning face; U+1F600 -๐Ÿ˜ƒ grinning face with big eyes; U+1F603 -๐Ÿ˜„ grinning face with smiling eyes; U+1F604 -๐Ÿ˜ beaming face with smiling eyes; U+1F601 -๐Ÿ˜† grinning squinting face; U+1F606 -๐Ÿ˜… grinning face with sweat; U+1F605 -๐Ÿคฃ rolling on the floor laughing; U+1F923 -๐Ÿ˜‚ face with tears of joy; U+1F602 -๐Ÿ™‚ slightly smiling face; U+1F642 -๐Ÿ™ƒ upside-down face; U+1F643 -๐Ÿ˜‰ winking face; U+1F609 -๐Ÿ˜Š smiling face with smiling eyes; U+1F60A -๐Ÿ˜‡ smiling face with halo; U+1F607 -๐Ÿฅฐ smiling face with 3 hearts; U+1F970 -๐Ÿ˜ smiling face with heart-eyes; U+1F60D -๐Ÿคฉ star-struck; U+1F929 -๐Ÿ˜˜ face blowing a kiss; U+1F618 -๐Ÿ˜— kissing face; U+1F617 -โ˜บ smiling face; U+263A -๐Ÿ˜š kissing face with closed eyes; U+1F61A -๐Ÿ˜™ kissing face with smiling eyes; U+1F619 -๐Ÿ˜‹ face savoring food; U+1F60B -๐Ÿ˜› face with tongue; U+1F61B -๐Ÿ˜œ winking face with tongue; U+1F61C -๐Ÿคช zany face; U+1F92A -๐Ÿ˜ squinting face with tongue; U+1F61D -๐Ÿค‘ money-mouth face; U+1F911 -๐Ÿค— hugging face; U+1F917 -๐Ÿคญ face with hand over mouth; U+1F92D -๐Ÿคซ shushing face; U+1F92B -๐Ÿค” thinking face; U+1F914 -๐Ÿค zipper-mouth face; U+1F910 -๐Ÿคจ face with raised eyebrow; U+1F928 -๐Ÿ˜ neutral face; U+1F610 -๐Ÿ˜‘ expressionless face; U+1F611 -๐Ÿ˜ถ face without mouth; U+1F636 -๐Ÿ˜ smirking face; U+1F60F -๐Ÿ˜’ unamused face; U+1F612 -๐Ÿ™„ face with rolling eyes; U+1F644 -๐Ÿ˜ฌ grimacing face; U+1F62C -๐Ÿคฅ lying face; U+1F925 -๐Ÿ˜Œ relieved face; U+1F60C -๐Ÿ˜” pensive face; U+1F614 -๐Ÿ˜ช sleepy face; U+1F62A -๐Ÿคค drooling face; U+1F924 -๐Ÿ˜ด sleeping face; U+1F634 -๐Ÿ˜ท face with medical mask; U+1F637 -๐Ÿค’ face with thermometer; U+1F912 -๐Ÿค• face with head-bandage; U+1F915 -๐Ÿคข nauseated face; U+1F922 -๐Ÿคฎ face vomiting; U+1F92E -๐Ÿคง sneezing face; U+1F927 -๐Ÿฅต hot face; U+1F975 -๐Ÿฅถ cold face; U+1F976 -๐Ÿฅด woozy face; U+1F974 -๐Ÿ˜ต dizzy face; U+1F635 -๐Ÿคฏ exploding head; U+1F92F -๐Ÿค  cowboy hat face; U+1F920 -๐Ÿฅณ partying face; U+1F973 -๐Ÿ˜Ž smiling face with sunglasses; U+1F60E -๐Ÿค“ nerd face; U+1F913 -๐Ÿง face with monocle; U+1F9D0 -๐Ÿ˜• confused face; U+1F615 -๐Ÿ˜Ÿ worried face; U+1F61F -๐Ÿ™ slightly frowning face; U+1F641 -โ˜น frowning face; U+2639 -๐Ÿ˜ฎ face with open mouth; U+1F62E -๐Ÿ˜ฏ hushed face; U+1F62F -๐Ÿ˜ฒ astonished face; U+1F632 -๐Ÿ˜ณ flushed face; U+1F633 -๐Ÿฅบ pleading face; U+1F97A -๐Ÿ˜ฆ frowning face with open mouth; U+1F626 -๐Ÿ˜ง anguished face; U+1F627 -๐Ÿ˜จ fearful face; U+1F628 -๐Ÿ˜ฐ anxious face with sweat; U+1F630 -๐Ÿ˜ฅ sad but relieved face; U+1F625 -๐Ÿ˜ข crying face; U+1F622 -๐Ÿ˜ญ loudly crying face; U+1F62D -๐Ÿ˜ฑ face screaming in fear; U+1F631 -๐Ÿ˜– confounded face; U+1F616 -๐Ÿ˜ฃ persevering face; U+1F623 -๐Ÿ˜ž disappointed face; U+1F61E -๐Ÿ˜“ downcast face with sweat; U+1F613 -๐Ÿ˜ฉ weary face; U+1F629 -๐Ÿ˜ซ tired face; U+1F62B -๐Ÿ˜ค face with steam from nose; U+1F624 -๐Ÿ˜ก pouting face; U+1F621 -๐Ÿ˜  angry face; U+1F620 -๐Ÿคฌ face with symbols on mouth; U+1F92C -๐Ÿ˜ˆ smiling face with horns; U+1F608 -๐Ÿ‘ฟ angry face with horns; U+1F47F -๐Ÿ’€ skull; U+1F480 -โ˜  skull and crossbones; U+2620 -๐Ÿ’ฉ pile of poo; U+1F4A9 -๐Ÿคก clown face; U+1F921 -๐Ÿ‘น ogre; U+1F479 -๐Ÿ‘บ goblin; U+1F47A -๐Ÿ‘ป ghost; U+1F47B -๐Ÿ‘ฝ alien; U+1F47D -๐Ÿ‘พ alien monster; U+1F47E -๐Ÿค– robot face; U+1F916 -๐Ÿ˜บ grinning cat face; U+1F63A -๐Ÿ˜ธ grinning cat face with smiling eyes; U+1F638 -๐Ÿ˜น cat face with tears of joy; U+1F639 -๐Ÿ˜ป smiling cat face with heart-eyes; U+1F63B -๐Ÿ˜ผ cat face with wry smile; U+1F63C -๐Ÿ˜ฝ kissing cat face; U+1F63D -๐Ÿ™€ weary cat face; U+1F640 -๐Ÿ˜ฟ crying cat face; U+1F63F -๐Ÿ˜พ pouting cat face; U+1F63E -๐Ÿ™ˆ see-no-evil monkey; U+1F648 -๐Ÿ™‰ hear-no-evil monkey; U+1F649 -๐Ÿ™Š speak-no-evil monkey; U+1F64A -๐Ÿ’‹ kiss mark; U+1F48B -๐Ÿ’Œ love letter; U+1F48C -๐Ÿ’˜ heart with arrow; U+1F498 -๐Ÿ’ heart with ribbon; U+1F49D -๐Ÿ’– sparkling heart; U+1F496 -๐Ÿ’— growing heart; U+1F497 -๐Ÿ’“ beating heart; U+1F493 -๐Ÿ’ž revolving hearts; U+1F49E -๐Ÿ’• two hearts; U+1F495 -๐Ÿ’Ÿ heart decoration; U+1F49F -โฃ heavy heart exclamation; U+2763 -๐Ÿ’” broken heart; U+1F494 -โค red heart; U+2764 -๐Ÿงก orange heart; U+1F9E1 -๐Ÿ’› yellow heart; U+1F49B -๐Ÿ’š green heart; U+1F49A -๐Ÿ’™ blue heart; U+1F499 -๐Ÿ’œ purple heart; U+1F49C -๐Ÿ–ค black heart; U+1F5A4 -๐Ÿ’ฏ hundred points; U+1F4AF -๐Ÿ’ข anger symbol; U+1F4A2 -๐Ÿ’ฅ collision; U+1F4A5 -๐Ÿ’ซ dizzy; U+1F4AB -๐Ÿ’ฆ sweat droplets; U+1F4A6 -๐Ÿ’จ dashing away; U+1F4A8 -๐Ÿ•ณ hole; U+1F573 -๐Ÿ’ฃ bomb; U+1F4A3 -๐Ÿ’ฌ speech balloon; U+1F4AC -๐Ÿ‘๏ธโ€๐Ÿ—จ๏ธ eye in speech bubble; U+1F441 U+FE0F U+200D U+1F5E8 U+FE0F -๐Ÿ—จ left speech bubble; U+1F5E8 -๐Ÿ—ฏ right anger bubble; U+1F5EF -๐Ÿ’ญ thought balloon; U+1F4AD -๐Ÿ’ค zzz; U+1F4A4 -๐Ÿ‘‹ waving hand; U+1F44B -๐Ÿคš raised back of hand; U+1F91A -๐Ÿ– hand with fingers splayed; U+1F590 -โœ‹ raised hand; U+270B -๐Ÿ–– vulcan salute; U+1F596 -๐Ÿ‘Œ OK hand; U+1F44C -โœŒ victory hand; U+270C -๐Ÿคž crossed fingers; U+1F91E -๐ŸคŸ love-you gesture; U+1F91F -๐Ÿค˜ sign of the horns; U+1F918 -๐Ÿค™ call me hand; U+1F919 -๐Ÿ‘ˆ backhand index pointing left; U+1F448 -๐Ÿ‘‰ backhand index pointing right; U+1F449 -๐Ÿ‘† backhand index pointing up; U+1F446 -๐Ÿ–• middle finger; U+1F595 -๐Ÿ‘‡ backhand index pointing down; U+1F447 -โ˜ index pointing up; U+261D -๐Ÿ‘ thumbs up; U+1F44D -๐Ÿ‘Ž thumbs down; U+1F44E -โœŠ raised fist; U+270A -๐Ÿ‘Š oncoming fist; U+1F44A -๐Ÿค› left-facing fist; U+1F91B -๐Ÿคœ right-facing fist; U+1F91C -๐Ÿ‘ clapping hands; U+1F44F -๐Ÿ™Œ raising hands; U+1F64C -๐Ÿ‘ open hands; U+1F450 -๐Ÿคฒ palms up together; U+1F932 -๐Ÿค handshake; U+1F91D -๐Ÿ™ folded hands; U+1F64F -โœ writing hand; U+270D -๐Ÿ’… nail polish; U+1F485 -๐Ÿคณ selfie; U+1F933 -๐Ÿ’ช flexed biceps; U+1F4AA -๐Ÿฆต leg; U+1F9B5 -๐Ÿฆถ foot; U+1F9B6 -๐Ÿ‘‚ ear; U+1F442 -๐Ÿ‘ƒ nose; U+1F443 -๐Ÿง  brain; U+1F9E0 -๐Ÿฆท tooth; U+1F9B7 -๐Ÿฆด bone; U+1F9B4 -๐Ÿ‘€ eyes; U+1F440 -๐Ÿ‘ eye; U+1F441 -๐Ÿ‘… tongue; U+1F445 -๐Ÿ‘„ mouth; U+1F444 -๐Ÿ‘ถ baby; U+1F476 -๐Ÿง’ child; U+1F9D2 -๐Ÿ‘ฆ boy; U+1F466 -๐Ÿ‘ง girl; U+1F467 -๐Ÿง‘ person; U+1F9D1 -๐Ÿ‘ฑ person: blond hair; U+1F471 -๐Ÿ‘จ man; U+1F468 -๐Ÿ‘ฑโ€โ™‚๏ธ man: blond hair; U+1F471 U+200D U+2642 U+FE0F -๐Ÿ‘จโ€๐Ÿฆฐ man: red hair; U+1F468 U+200D U+1F9B0 -๐Ÿ‘จโ€๐Ÿฆฑ man: curly hair; U+1F468 U+200D U+1F9B1 -๐Ÿ‘จโ€๐Ÿฆณ man: white hair; U+1F468 U+200D U+1F9B3 -๐Ÿ‘จโ€๐Ÿฆฒ man: bald; U+1F468 U+200D U+1F9B2 -๐Ÿง” man: beard; U+1F9D4 -๐Ÿ‘ฉ woman; U+1F469 -๐Ÿ‘ฑโ€โ™€๏ธ woman: blond hair; U+1F471 U+200D U+2640 U+FE0F -๐Ÿ‘ฉโ€๐Ÿฆฐ woman: red hair; U+1F469 U+200D U+1F9B0 -๐Ÿ‘ฉโ€๐Ÿฆฑ woman: curly hair; U+1F469 U+200D U+1F9B1 -๐Ÿ‘ฉโ€๐Ÿฆณ woman: white hair; U+1F469 U+200D U+1F9B3 -๐Ÿ‘ฉโ€๐Ÿฆฒ woman: bald; U+1F469 U+200D U+1F9B2 -๐Ÿง“ older person; U+1F9D3 -๐Ÿ‘ด old man; U+1F474 -๐Ÿ‘ต old woman; U+1F475 -๐Ÿ™ person frowning; U+1F64D -๐Ÿ™โ€โ™‚๏ธ man frowning; U+1F64D U+200D U+2642 U+FE0F -๐Ÿ™โ€โ™€๏ธ woman frowning; U+1F64D U+200D U+2640 U+FE0F -๐Ÿ™Ž person pouting; U+1F64E -๐Ÿ™Žโ€โ™‚๏ธ man pouting; U+1F64E U+200D U+2642 U+FE0F -๐Ÿ™Žโ€โ™€๏ธ woman pouting; U+1F64E U+200D U+2640 U+FE0F -๐Ÿ™… person gesturing NO; U+1F645 -๐Ÿ™…โ€โ™‚๏ธ man gesturing NO; U+1F645 U+200D U+2642 U+FE0F -๐Ÿ™…โ€โ™€๏ธ woman gesturing NO; U+1F645 U+200D U+2640 U+FE0F -๐Ÿ™† person gesturing OK; U+1F646 -๐Ÿ™†โ€โ™‚๏ธ man gesturing OK; U+1F646 U+200D U+2642 U+FE0F -๐Ÿ™†โ€โ™€๏ธ woman gesturing OK; U+1F646 U+200D U+2640 U+FE0F -๐Ÿ’ person tipping hand; U+1F481 -๐Ÿ’โ€โ™‚๏ธ man tipping hand; U+1F481 U+200D U+2642 U+FE0F -๐Ÿ’โ€โ™€๏ธ woman tipping hand; U+1F481 U+200D U+2640 U+FE0F -๐Ÿ™‹ person raising hand; U+1F64B -๐Ÿ™‹โ€โ™‚๏ธ man raising hand; U+1F64B U+200D U+2642 U+FE0F -๐Ÿ™‹โ€โ™€๏ธ woman raising hand; U+1F64B U+200D U+2640 U+FE0F -๐Ÿ™‡ person bowing; U+1F647 -๐Ÿ™‡โ€โ™‚๏ธ man bowing; U+1F647 U+200D U+2642 U+FE0F -๐Ÿ™‡โ€โ™€๏ธ woman bowing; U+1F647 U+200D U+2640 U+FE0F -๐Ÿคฆ person facepalming; U+1F926 -๐Ÿคฆโ€โ™‚๏ธ man facepalming; U+1F926 U+200D U+2642 U+FE0F -๐Ÿคฆโ€โ™€๏ธ woman facepalming; U+1F926 U+200D U+2640 U+FE0F -๐Ÿคท person shrugging; U+1F937 -๐Ÿคทโ€โ™‚๏ธ man shrugging; U+1F937 U+200D U+2642 U+FE0F -๐Ÿคทโ€โ™€๏ธ woman shrugging; U+1F937 U+200D U+2640 U+FE0F -๐Ÿ‘จโ€โš•๏ธ man health worker; U+1F468 U+200D U+2695 U+FE0F -๐Ÿ‘ฉโ€โš•๏ธ woman health worker; U+1F469 U+200D U+2695 U+FE0F -๐Ÿ‘จโ€๐ŸŽ“ man student; U+1F468 U+200D U+1F393 -๐Ÿ‘ฉโ€๐ŸŽ“ woman student; U+1F469 U+200D U+1F393 -๐Ÿ‘จโ€๐Ÿซ man teacher; U+1F468 U+200D U+1F3EB -๐Ÿ‘ฉโ€๐Ÿซ woman teacher; U+1F469 U+200D U+1F3EB -๐Ÿ‘จโ€โš–๏ธ man judge; U+1F468 U+200D U+2696 U+FE0F -๐Ÿ‘ฉโ€โš–๏ธ woman judge; U+1F469 U+200D U+2696 U+FE0F -๐Ÿ‘จโ€๐ŸŒพ man farmer; U+1F468 U+200D U+1F33E -๐Ÿ‘ฉโ€๐ŸŒพ woman farmer; U+1F469 U+200D U+1F33E -๐Ÿ‘จโ€๐Ÿณ man cook; U+1F468 U+200D U+1F373 -๐Ÿ‘ฉโ€๐Ÿณ woman cook; U+1F469 U+200D U+1F373 -๐Ÿ‘จโ€๐Ÿ”ง man mechanic; U+1F468 U+200D U+1F527 -๐Ÿ‘ฉโ€๐Ÿ”ง woman mechanic; U+1F469 U+200D U+1F527 -๐Ÿ‘จโ€๐Ÿญ man factory worker; U+1F468 U+200D U+1F3ED -๐Ÿ‘ฉโ€๐Ÿญ woman factory worker; U+1F469 U+200D U+1F3ED -๐Ÿ‘จโ€๐Ÿ’ผ man office worker; U+1F468 U+200D U+1F4BC -๐Ÿ‘ฉโ€๐Ÿ’ผ woman office worker; U+1F469 U+200D U+1F4BC -๐Ÿ‘จโ€๐Ÿ”ฌ man scientist; U+1F468 U+200D U+1F52C -๐Ÿ‘ฉโ€๐Ÿ”ฌ woman scientist; U+1F469 U+200D U+1F52C -๐Ÿ‘จโ€๐Ÿ’ป man technologist; U+1F468 U+200D U+1F4BB -๐Ÿ‘ฉโ€๐Ÿ’ป woman technologist; U+1F469 U+200D U+1F4BB -๐Ÿ‘จโ€๐ŸŽค man singer; U+1F468 U+200D U+1F3A4 -๐Ÿ‘ฉโ€๐ŸŽค woman singer; U+1F469 U+200D U+1F3A4 -๐Ÿ‘จโ€๐ŸŽจ man artist; U+1F468 U+200D U+1F3A8 -๐Ÿ‘ฉโ€๐ŸŽจ woman artist; U+1F469 U+200D U+1F3A8 -๐Ÿ‘จโ€โœˆ๏ธ man pilot; U+1F468 U+200D U+2708 U+FE0F -๐Ÿ‘ฉโ€โœˆ๏ธ woman pilot; U+1F469 U+200D U+2708 U+FE0F -๐Ÿ‘จโ€๐Ÿš€ man astronaut; U+1F468 U+200D U+1F680 -๐Ÿ‘ฉโ€๐Ÿš€ woman astronaut; U+1F469 U+200D U+1F680 -๐Ÿ‘จโ€๐Ÿš’ man firefighter; U+1F468 U+200D U+1F692 -๐Ÿ‘ฉโ€๐Ÿš’ woman firefighter; U+1F469 U+200D U+1F692 -๐Ÿ‘ฎ police officer; U+1F46E -๐Ÿ‘ฎโ€โ™‚๏ธ man police officer; U+1F46E U+200D U+2642 U+FE0F -๐Ÿ‘ฎโ€โ™€๏ธ woman police officer; U+1F46E U+200D U+2640 U+FE0F -๐Ÿ•ต detective; U+1F575 -๐Ÿ•ต๏ธโ€โ™‚๏ธ man detective; U+1F575 U+FE0F U+200D U+2642 U+FE0F -๐Ÿ•ต๏ธโ€โ™€๏ธ woman detective; U+1F575 U+FE0F U+200D U+2640 U+FE0F -๐Ÿ’‚ guard; U+1F482 -๐Ÿ’‚โ€โ™‚๏ธ man guard; U+1F482 U+200D U+2642 U+FE0F -๐Ÿ’‚โ€โ™€๏ธ woman guard; U+1F482 U+200D U+2640 U+FE0F -๐Ÿ‘ท construction worker; U+1F477 -๐Ÿ‘ทโ€โ™‚๏ธ man construction worker; U+1F477 U+200D U+2642 U+FE0F -๐Ÿ‘ทโ€โ™€๏ธ woman construction worker; U+1F477 U+200D U+2640 U+FE0F -๐Ÿคด prince; U+1F934 -๐Ÿ‘ธ princess; U+1F478 -๐Ÿ‘ณ person wearing turban; U+1F473 -๐Ÿ‘ณโ€โ™‚๏ธ man wearing turban; U+1F473 U+200D U+2642 U+FE0F -๐Ÿ‘ณโ€โ™€๏ธ woman wearing turban; U+1F473 U+200D U+2640 U+FE0F -๐Ÿ‘ฒ man with Chinese cap; U+1F472 -๐Ÿง• woman with headscarf; U+1F9D5 -๐Ÿคต man in tuxedo; U+1F935 -๐Ÿ‘ฐ bride with veil; U+1F470 -๐Ÿคฐ pregnant woman; U+1F930 -๐Ÿคฑ breast-feeding; U+1F931 -๐Ÿ‘ผ baby angel; U+1F47C -๐ŸŽ… Santa Claus; U+1F385 -๐Ÿคถ Mrs. Claus; U+1F936 -๐Ÿฆธ superhero; U+1F9B8 -๐Ÿฆธโ€โ™‚๏ธ man superhero; U+1F9B8 U+200D U+2642 U+FE0F -๐Ÿฆธโ€โ™€๏ธ woman superhero; U+1F9B8 U+200D U+2640 U+FE0F -๐Ÿฆน supervillain; U+1F9B9 -๐Ÿฆนโ€โ™‚๏ธ man supervillain; U+1F9B9 U+200D U+2642 U+FE0F -๐Ÿฆนโ€โ™€๏ธ woman supervillain; U+1F9B9 U+200D U+2640 U+FE0F -๐Ÿง™ mage; U+1F9D9 -๐Ÿง™โ€โ™‚๏ธ man mage; U+1F9D9 U+200D U+2642 U+FE0F -๐Ÿง™โ€โ™€๏ธ woman mage; U+1F9D9 U+200D U+2640 U+FE0F -๐Ÿงš fairy; U+1F9DA -๐Ÿงšโ€โ™‚๏ธ man fairy; U+1F9DA U+200D U+2642 U+FE0F -๐Ÿงšโ€โ™€๏ธ woman fairy; U+1F9DA U+200D U+2640 U+FE0F -๐Ÿง› vampire; U+1F9DB -๐Ÿง›โ€โ™‚๏ธ man vampire; U+1F9DB U+200D U+2642 U+FE0F -๐Ÿง›โ€โ™€๏ธ woman vampire; U+1F9DB U+200D U+2640 U+FE0F -๐Ÿงœ merperson; U+1F9DC -๐Ÿงœโ€โ™‚๏ธ merman; U+1F9DC U+200D U+2642 U+FE0F -๐Ÿงœโ€โ™€๏ธ mermaid; U+1F9DC U+200D U+2640 U+FE0F -๐Ÿง elf; U+1F9DD -๐Ÿงโ€โ™‚๏ธ man elf; U+1F9DD U+200D U+2642 U+FE0F -๐Ÿงโ€โ™€๏ธ woman elf; U+1F9DD U+200D U+2640 U+FE0F -๐Ÿงž genie; U+1F9DE -๐Ÿงžโ€โ™‚๏ธ man genie; U+1F9DE U+200D U+2642 U+FE0F -๐Ÿงžโ€โ™€๏ธ woman genie; U+1F9DE U+200D U+2640 U+FE0F -๐ŸงŸ zombie; U+1F9DF -๐ŸงŸโ€โ™‚๏ธ man zombie; U+1F9DF U+200D U+2642 U+FE0F -๐ŸงŸโ€โ™€๏ธ woman zombie; U+1F9DF U+200D U+2640 U+FE0F -๐Ÿ’† person getting massage; U+1F486 -๐Ÿ’†โ€โ™‚๏ธ man getting massage; U+1F486 U+200D U+2642 U+FE0F -๐Ÿ’†โ€โ™€๏ธ woman getting massage; U+1F486 U+200D U+2640 U+FE0F -๐Ÿ’‡ person getting haircut; U+1F487 -๐Ÿ’‡โ€โ™‚๏ธ man getting haircut; U+1F487 U+200D U+2642 U+FE0F -๐Ÿ’‡โ€โ™€๏ธ woman getting haircut; U+1F487 U+200D U+2640 U+FE0F -๐Ÿšถ person walking; U+1F6B6 -๐Ÿšถโ€โ™‚๏ธ man walking; U+1F6B6 U+200D U+2642 U+FE0F -๐Ÿšถโ€โ™€๏ธ woman walking; U+1F6B6 U+200D U+2640 U+FE0F -๐Ÿƒ person running; U+1F3C3 -๐Ÿƒโ€โ™‚๏ธ man running; U+1F3C3 U+200D U+2642 U+FE0F -๐Ÿƒโ€โ™€๏ธ woman running; U+1F3C3 U+200D U+2640 U+FE0F -๐Ÿ’ƒ woman dancing; U+1F483 -๐Ÿ•บ man dancing; U+1F57A -๐Ÿ•ด man in suit levitating; U+1F574 -๐Ÿ‘ฏ people with bunny ears; U+1F46F -๐Ÿ‘ฏโ€โ™‚๏ธ men with bunny ears; U+1F46F U+200D U+2642 U+FE0F -๐Ÿ‘ฏโ€โ™€๏ธ women with bunny ears; U+1F46F U+200D U+2640 U+FE0F -๐Ÿง– person in steamy room; U+1F9D6 -๐Ÿง–โ€โ™‚๏ธ man in steamy room; U+1F9D6 U+200D U+2642 U+FE0F -๐Ÿง–โ€โ™€๏ธ woman in steamy room; U+1F9D6 U+200D U+2640 U+FE0F -๐Ÿง— person climbing; U+1F9D7 -๐Ÿง—โ€โ™‚๏ธ man climbing; U+1F9D7 U+200D U+2642 U+FE0F -๐Ÿง—โ€โ™€๏ธ woman climbing; U+1F9D7 U+200D U+2640 U+FE0F -๐Ÿคบ person fencing; U+1F93A -๐Ÿ‡ horse racing; U+1F3C7 -โ›ท skier; U+26F7 -๐Ÿ‚ snowboarder; U+1F3C2 -๐ŸŒ person golfing; U+1F3CC -๐ŸŒ๏ธโ€โ™‚๏ธ man golfing; U+1F3CC U+FE0F U+200D U+2642 U+FE0F -๐ŸŒ๏ธโ€โ™€๏ธ woman golfing; U+1F3CC U+FE0F U+200D U+2640 U+FE0F -๐Ÿ„ person surfing; U+1F3C4 -๐Ÿ„โ€โ™‚๏ธ man surfing; U+1F3C4 U+200D U+2642 U+FE0F -๐Ÿ„โ€โ™€๏ธ woman surfing; U+1F3C4 U+200D U+2640 U+FE0F -๐Ÿšฃ person rowing boat; U+1F6A3 -๐Ÿšฃโ€โ™‚๏ธ man rowing boat; U+1F6A3 U+200D U+2642 U+FE0F -๐Ÿšฃโ€โ™€๏ธ woman rowing boat; U+1F6A3 U+200D U+2640 U+FE0F -๐ŸŠ person swimming; U+1F3CA -๐ŸŠโ€โ™‚๏ธ man swimming; U+1F3CA U+200D U+2642 U+FE0F -๐ŸŠโ€โ™€๏ธ woman swimming; U+1F3CA U+200D U+2640 U+FE0F -โ›น person bouncing ball; U+26F9 -โ›น๏ธโ€โ™‚๏ธ man bouncing ball; U+26F9 U+FE0F U+200D U+2642 U+FE0F -โ›น๏ธโ€โ™€๏ธ woman bouncing ball; U+26F9 U+FE0F U+200D U+2640 U+FE0F -๐Ÿ‹ person lifting weights; U+1F3CB -๐Ÿ‹๏ธโ€โ™‚๏ธ man lifting weights; U+1F3CB U+FE0F U+200D U+2642 U+FE0F -๐Ÿ‹๏ธโ€โ™€๏ธ woman lifting weights; U+1F3CB U+FE0F U+200D U+2640 U+FE0F -๐Ÿšด person biking; U+1F6B4 -๐Ÿšดโ€โ™‚๏ธ man biking; U+1F6B4 U+200D U+2642 U+FE0F -๐Ÿšดโ€โ™€๏ธ woman biking; U+1F6B4 U+200D U+2640 U+FE0F -๐Ÿšต person mountain biking; U+1F6B5 -๐Ÿšตโ€โ™‚๏ธ man mountain biking; U+1F6B5 U+200D U+2642 U+FE0F -๐Ÿšตโ€โ™€๏ธ woman mountain biking; U+1F6B5 U+200D U+2640 U+FE0F -๐Ÿคธ person cartwheeling; U+1F938 -๐Ÿคธโ€โ™‚๏ธ man cartwheeling; U+1F938 U+200D U+2642 U+FE0F -๐Ÿคธโ€โ™€๏ธ woman cartwheeling; U+1F938 U+200D U+2640 U+FE0F -๐Ÿคผ people wrestling; U+1F93C -๐Ÿคผโ€โ™‚๏ธ men wrestling; U+1F93C U+200D U+2642 U+FE0F -๐Ÿคผโ€โ™€๏ธ women wrestling; U+1F93C U+200D U+2640 U+FE0F -๐Ÿคฝ person playing water polo; U+1F93D -๐Ÿคฝโ€โ™‚๏ธ man playing water polo; U+1F93D U+200D U+2642 U+FE0F -๐Ÿคฝโ€โ™€๏ธ woman playing water polo; U+1F93D U+200D U+2640 U+FE0F -๐Ÿคพ person playing handball; U+1F93E -๐Ÿคพโ€โ™‚๏ธ man playing handball; U+1F93E U+200D U+2642 U+FE0F -๐Ÿคพโ€โ™€๏ธ woman playing handball; U+1F93E U+200D U+2640 U+FE0F -๐Ÿคน person juggling; U+1F939 -๐Ÿคนโ€โ™‚๏ธ man juggling; U+1F939 U+200D U+2642 U+FE0F -๐Ÿคนโ€โ™€๏ธ woman juggling; U+1F939 U+200D U+2640 U+FE0F -๐Ÿง˜ person in lotus position; U+1F9D8 -๐Ÿง˜โ€โ™‚๏ธ man in lotus position; U+1F9D8 U+200D U+2642 U+FE0F -๐Ÿง˜โ€โ™€๏ธ woman in lotus position; U+1F9D8 U+200D U+2640 U+FE0F -๐Ÿ›€ person taking bath; U+1F6C0 -๐Ÿ›Œ person in bed; U+1F6CC -๐Ÿ‘ญ women holding hands; U+1F46D -๐Ÿ‘ซ woman and man holding hands; U+1F46B -๐Ÿ‘ฌ men holding hands; U+1F46C -๐Ÿ’ kiss; U+1F48F -๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘จ kiss: woman, man; U+1F469 U+200D U+2764 U+FE0F U+200D U+1F48B U+200D U+1F468 -๐Ÿ‘จโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘จ kiss: man, man; U+1F468 U+200D U+2764 U+FE0F U+200D U+1F48B U+200D U+1F468 -๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘ฉ kiss: woman, woman; U+1F469 U+200D U+2764 U+FE0F U+200D U+1F48B U+200D U+1F469 -๐Ÿ’‘ couple with heart; U+1F491 -๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ‘จ couple with heart: woman, man; U+1F469 U+200D U+2764 U+FE0F U+200D U+1F468 -๐Ÿ‘จโ€โค๏ธโ€๐Ÿ‘จ couple with heart: man, man; U+1F468 U+200D U+2764 U+FE0F U+200D U+1F468 -๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ‘ฉ couple with heart: woman, woman; U+1F469 U+200D U+2764 U+FE0F U+200D U+1F469 -๐Ÿ‘ช family; U+1F46A -๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆ family: man, woman, boy; U+1F468 U+200D U+1F469 U+200D U+1F466 -๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ง family: man, woman, girl; U+1F468 U+200D U+1F469 U+200D U+1F467 -๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ family: man, woman, girl, boy; U+1F468 U+200D U+1F469 U+200D U+1F467 U+200D U+1F466 -๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ family: man, woman, boy, boy; U+1F468 U+200D U+1F469 U+200D U+1F466 U+200D U+1F466 -๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง family: man, woman, girl, girl; U+1F468 U+200D U+1F469 U+200D U+1F467 U+200D U+1F467 -๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ฆ family: man, man, boy; U+1F468 U+200D U+1F468 U+200D U+1F466 -๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ง family: man, man, girl; U+1F468 U+200D U+1F468 U+200D U+1F467 -๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ฆ family: man, man, girl, boy; U+1F468 U+200D U+1F468 U+200D U+1F467 U+200D U+1F466 -๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ family: man, man, boy, boy; U+1F468 U+200D U+1F468 U+200D U+1F466 U+200D U+1F466 -๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ง family: man, man, girl, girl; U+1F468 U+200D U+1F468 U+200D U+1F467 U+200D U+1F467 -๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆ family: woman, woman, boy; U+1F469 U+200D U+1F469 U+200D U+1F466 -๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ง family: woman, woman, girl; U+1F469 U+200D U+1F469 U+200D U+1F467 -๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ family: woman, woman, girl, boy; U+1F469 U+200D U+1F469 U+200D U+1F467 U+200D U+1F466 -๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ family: woman, woman, boy, boy; U+1F469 U+200D U+1F469 U+200D U+1F466 U+200D U+1F466 -๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง family: woman, woman, girl, girl; U+1F469 U+200D U+1F469 U+200D U+1F467 U+200D U+1F467 -๐Ÿ‘จโ€๐Ÿ‘ฆ family: man, boy; U+1F468 U+200D U+1F466 -๐Ÿ‘จโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ family: man, boy, boy; U+1F468 U+200D U+1F466 U+200D U+1F466 -๐Ÿ‘จโ€๐Ÿ‘ง family: man, girl; U+1F468 U+200D U+1F467 -๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ฆ family: man, girl, boy; U+1F468 U+200D U+1F467 U+200D U+1F466 -๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ง family: man, girl, girl; U+1F468 U+200D U+1F467 U+200D U+1F467 -๐Ÿ‘ฉโ€๐Ÿ‘ฆ family: woman, boy; U+1F469 U+200D U+1F466 -๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ family: woman, boy, boy; U+1F469 U+200D U+1F466 U+200D U+1F466 -๐Ÿ‘ฉโ€๐Ÿ‘ง family: woman, girl; U+1F469 U+200D U+1F467 -๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ family: woman, girl, boy; U+1F469 U+200D U+1F467 U+200D U+1F466 -๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง family: woman, girl, girl; U+1F469 U+200D U+1F467 U+200D U+1F467 -๐Ÿ—ฃ speaking head; U+1F5E3 -๐Ÿ‘ค bust in silhouette; U+1F464 -๐Ÿ‘ฅ busts in silhouette; U+1F465 -๐Ÿ‘ฃ footprints; U+1F463 -๐Ÿฆฐ red hair; U+1F9B0 -๐Ÿฆฑ curly hair; U+1F9B1 -๐Ÿฆณ white hair; U+1F9B3 -๐Ÿฆฒ bald; U+1F9B2 -๐Ÿต monkey face; U+1F435 -๐Ÿ’ monkey; U+1F412 -๐Ÿฆ gorilla; U+1F98D -๐Ÿถ dog face; U+1F436 -๐Ÿ• dog; U+1F415 -๐Ÿฉ poodle; U+1F429 -๐Ÿบ wolf face; U+1F43A -๐ŸฆŠ fox face; U+1F98A -๐Ÿฆ raccoon; U+1F99D -๐Ÿฑ cat face; U+1F431 -๐Ÿˆ cat; U+1F408 -๐Ÿฆ lion face; U+1F981 -๐Ÿฏ tiger face; U+1F42F -๐Ÿ… tiger; U+1F405 -๐Ÿ† leopard; U+1F406 -๐Ÿด horse face; U+1F434 -๐ŸŽ horse; U+1F40E -๐Ÿฆ„ unicorn face; U+1F984 -๐Ÿฆ“ zebra; U+1F993 -๐ŸฆŒ deer; U+1F98C -๐Ÿฎ cow face; U+1F42E -๐Ÿ‚ ox; U+1F402 -๐Ÿƒ water buffalo; U+1F403 -๐Ÿ„ cow; U+1F404 -๐Ÿท pig face; U+1F437 -๐Ÿ– pig; U+1F416 -๐Ÿ— boar; U+1F417 -๐Ÿฝ pig nose; U+1F43D -๐Ÿ ram; U+1F40F -๐Ÿ‘ ewe; U+1F411 -๐Ÿ goat; U+1F410 -๐Ÿช camel; U+1F42A -๐Ÿซ two-hump camel; U+1F42B -๐Ÿฆ™ llama; U+1F999 -๐Ÿฆ’ giraffe; U+1F992 -๐Ÿ˜ elephant; U+1F418 -๐Ÿฆ rhinoceros; U+1F98F -๐Ÿฆ› hippopotamus; U+1F99B -๐Ÿญ mouse face; U+1F42D -๐Ÿ mouse; U+1F401 -๐Ÿ€ rat; U+1F400 -๐Ÿน hamster face; U+1F439 -๐Ÿฐ rabbit face; U+1F430 -๐Ÿ‡ rabbit; U+1F407 -๐Ÿฟ chipmunk; U+1F43F -๐Ÿฆ” hedgehog; U+1F994 -๐Ÿฆ‡ bat; U+1F987 -๐Ÿป bear face; U+1F43B -๐Ÿจ koala; U+1F428 -๐Ÿผ panda face; U+1F43C -๐Ÿฆ˜ kangaroo; U+1F998 -๐Ÿฆก badger; U+1F9A1 -๐Ÿพ paw prints; U+1F43E -๐Ÿฆƒ turkey; U+1F983 -๐Ÿ” chicken; U+1F414 -๐Ÿ“ rooster; U+1F413 -๐Ÿฃ hatching chick; U+1F423 -๐Ÿค baby chick; U+1F424 -๐Ÿฅ front-facing baby chick; U+1F425 -๐Ÿฆ bird; U+1F426 -๐Ÿง penguin; U+1F427 -๐Ÿ•Š dove; U+1F54A -๐Ÿฆ… eagle; U+1F985 -๐Ÿฆ† duck; U+1F986 -๐Ÿฆข swan; U+1F9A2 -๐Ÿฆ‰ owl; U+1F989 -๐Ÿฆš peacock; U+1F99A -๐Ÿฆœ parrot; U+1F99C -๐Ÿธ frog face; U+1F438 -๐ŸŠ crocodile; U+1F40A -๐Ÿข turtle; U+1F422 -๐ŸฆŽ lizard; U+1F98E -๐Ÿ snake; U+1F40D -๐Ÿฒ dragon face; U+1F432 -๐Ÿ‰ dragon; U+1F409 -๐Ÿฆ• sauropod; U+1F995 -๐Ÿฆ– T-Rex; U+1F996 -๐Ÿณ spouting whale; U+1F433 -๐Ÿ‹ whale; U+1F40B -๐Ÿฌ dolphin; U+1F42C -๐ŸŸ fish; U+1F41F -๐Ÿ  tropical fish; U+1F420 -๐Ÿก blowfish; U+1F421 -๐Ÿฆˆ shark; U+1F988 -๐Ÿ™ octopus; U+1F419 -๐Ÿš spiral shell; U+1F41A -๐ŸŒ snail; U+1F40C -๐Ÿฆ‹ butterfly; U+1F98B -๐Ÿ› bug; U+1F41B -๐Ÿœ ant; U+1F41C -๐Ÿ honeybee; U+1F41D -๐Ÿž lady beetle; U+1F41E -๐Ÿฆ— cricket; U+1F997 -๐Ÿ•ท spider; U+1F577 -๐Ÿ•ธ spider web; U+1F578 -๐Ÿฆ‚ scorpion; U+1F982 -๐ŸฆŸ mosquito; U+1F99F -๐Ÿฆ  microbe; U+1F9A0 -๐Ÿ’ bouquet; U+1F490 -๐ŸŒธ cherry blossom; U+1F338 -๐Ÿ’ฎ white flower; U+1F4AE -๐Ÿต rosette; U+1F3F5 -๐ŸŒน rose; U+1F339 -๐Ÿฅ€ wilted flower; U+1F940 -๐ŸŒบ hibiscus; U+1F33A -๐ŸŒป sunflower; U+1F33B -๐ŸŒผ blossom; U+1F33C -๐ŸŒท tulip; U+1F337 -๐ŸŒฑ seedling; U+1F331 -๐ŸŒฒ evergreen tree; U+1F332 -๐ŸŒณ deciduous tree; U+1F333 -๐ŸŒด palm tree; U+1F334 -๐ŸŒต cactus; U+1F335 -๐ŸŒพ sheaf of rice; U+1F33E -๐ŸŒฟ herb; U+1F33F -โ˜˜ shamrock; U+2618 -๐Ÿ€ four leaf clover; U+1F340 -๐Ÿ maple leaf; U+1F341 -๐Ÿ‚ fallen leaf; U+1F342 -๐Ÿƒ leaf fluttering in wind; U+1F343 -๐Ÿ‡ grapes; U+1F347 -๐Ÿˆ melon; U+1F348 -๐Ÿ‰ watermelon; U+1F349 -๐ŸŠ tangerine; U+1F34A -๐Ÿ‹ lemon; U+1F34B -๐ŸŒ banana; U+1F34C -๐Ÿ pineapple; U+1F34D -๐Ÿฅญ mango; U+1F96D -๐ŸŽ red apple; U+1F34E -๐Ÿ green apple; U+1F34F -๐Ÿ pear; U+1F350 -๐Ÿ‘ peach; U+1F351 -๐Ÿ’ cherries; U+1F352 -๐Ÿ“ strawberry; U+1F353 -๐Ÿฅ kiwi fruit; U+1F95D -๐Ÿ… tomato; U+1F345 -๐Ÿฅฅ coconut; U+1F965 -๐Ÿฅ‘ avocado; U+1F951 -๐Ÿ† eggplant; U+1F346 -๐Ÿฅ” potato; U+1F954 -๐Ÿฅ• carrot; U+1F955 -๐ŸŒฝ ear of corn; U+1F33D -๐ŸŒถ hot pepper; U+1F336 -๐Ÿฅ’ cucumber; U+1F952 -๐Ÿฅฌ leafy green; U+1F96C -๐Ÿฅฆ broccoli; U+1F966 -๐Ÿ„ mushroom; U+1F344 -๐Ÿฅœ peanuts; U+1F95C -๐ŸŒฐ chestnut; U+1F330 -๐Ÿž bread; U+1F35E -๐Ÿฅ croissant; U+1F950 -๐Ÿฅ– baguette bread; U+1F956 -๐Ÿฅจ pretzel; U+1F968 -๐Ÿฅฏ bagel; U+1F96F -๐Ÿฅž pancakes; U+1F95E -๐Ÿง€ cheese wedge; U+1F9C0 -๐Ÿ– meat on bone; U+1F356 -๐Ÿ— poultry leg; U+1F357 -๐Ÿฅฉ cut of meat; U+1F969 -๐Ÿฅ“ bacon; U+1F953 -๐Ÿ” hamburger; U+1F354 -๐ŸŸ french fries; U+1F35F -๐Ÿ• pizza; U+1F355 -๐ŸŒญ hot dog; U+1F32D -๐Ÿฅช sandwich; U+1F96A -๐ŸŒฎ taco; U+1F32E -๐ŸŒฏ burrito; U+1F32F -๐Ÿฅ™ stuffed flatbread; U+1F959 -๐Ÿฅš egg; U+1F95A -๐Ÿณ cooking; U+1F373 -๐Ÿฅ˜ shallow pan of food; U+1F958 -๐Ÿฒ pot of food; U+1F372 -๐Ÿฅฃ bowl with spoon; U+1F963 -๐Ÿฅ— green salad; U+1F957 -๐Ÿฟ popcorn; U+1F37F -๐Ÿง‚ salt; U+1F9C2 -๐Ÿฅซ canned food; U+1F96B -๐Ÿฑ bento box; U+1F371 -๐Ÿ˜ rice cracker; U+1F358 -๐Ÿ™ rice ball; U+1F359 -๐Ÿš cooked rice; U+1F35A -๐Ÿ› curry rice; U+1F35B -๐Ÿœ steaming bowl; U+1F35C -๐Ÿ spaghetti; U+1F35D -๐Ÿ  roasted sweet potato; U+1F360 -๐Ÿข oden; U+1F362 -๐Ÿฃ sushi; U+1F363 -๐Ÿค fried shrimp; U+1F364 -๐Ÿฅ fish cake with swirl; U+1F365 -๐Ÿฅฎ moon cake; U+1F96E -๐Ÿก dango; U+1F361 -๐ŸฅŸ dumpling; U+1F95F -๐Ÿฅ  fortune cookie; U+1F960 -๐Ÿฅก takeout box; U+1F961 -๐Ÿฆ€ crab; U+1F980 -๐Ÿฆž lobster; U+1F99E -๐Ÿฆ shrimp; U+1F990 -๐Ÿฆ‘ squid; U+1F991 -๐Ÿฆ soft ice cream; U+1F366 -๐Ÿง shaved ice; U+1F367 -๐Ÿจ ice cream; U+1F368 -๐Ÿฉ doughnut; U+1F369 -๐Ÿช cookie; U+1F36A -๐ŸŽ‚ birthday cake; U+1F382 -๐Ÿฐ shortcake; U+1F370 -๐Ÿง cupcake; U+1F9C1 -๐Ÿฅง pie; U+1F967 -๐Ÿซ chocolate bar; U+1F36B -๐Ÿฌ candy; U+1F36C -๐Ÿญ lollipop; U+1F36D -๐Ÿฎ custard; U+1F36E -๐Ÿฏ honey pot; U+1F36F -๐Ÿผ baby bottle; U+1F37C -๐Ÿฅ› glass of milk; U+1F95B -โ˜• hot beverage; U+2615 -๐Ÿต teacup without handle; U+1F375 -๐Ÿถ sake; U+1F376 -๐Ÿพ bottle with popping cork; U+1F37E -๐Ÿท wine glass; U+1F377 -๐Ÿธ cocktail glass; U+1F378 -๐Ÿน tropical drink; U+1F379 -๐Ÿบ beer mug; U+1F37A -๐Ÿป clinking beer mugs; U+1F37B -๐Ÿฅ‚ clinking glasses; U+1F942 -๐Ÿฅƒ tumbler glass; U+1F943 -๐Ÿฅค cup with straw; U+1F964 -๐Ÿฅข chopsticks; U+1F962 -๐Ÿฝ fork and knife with plate; U+1F37D -๐Ÿด fork and knife; U+1F374 -๐Ÿฅ„ spoon; U+1F944 -๐Ÿ”ช kitchen knife; U+1F52A -๐Ÿบ amphora; U+1F3FA -๐ŸŒ globe showing Europe-Africa; U+1F30D -๐ŸŒŽ globe showing Americas; U+1F30E -๐ŸŒ globe showing Asia-Australia; U+1F30F -๐ŸŒ globe with meridians; U+1F310 -๐Ÿ—บ world map; U+1F5FA -๐Ÿ—พ map of Japan; U+1F5FE -๐Ÿงญ compass; U+1F9ED -๐Ÿ” snow-capped mountain; U+1F3D4 -โ›ฐ mountain; U+26F0 -๐ŸŒ‹ volcano; U+1F30B -๐Ÿ—ป mount fuji; U+1F5FB -๐Ÿ• camping; U+1F3D5 -๐Ÿ– beach with umbrella; U+1F3D6 -๐Ÿœ desert; U+1F3DC -๐Ÿ desert island; U+1F3DD -๐Ÿž national park; U+1F3DE -๐ŸŸ stadium; U+1F3DF -๐Ÿ› classical building; U+1F3DB -๐Ÿ— building construction; U+1F3D7 -๐Ÿงฑ brick; U+1F9F1 -๐Ÿ˜ houses; U+1F3D8 -๐Ÿš derelict house; U+1F3DA -๐Ÿ  house; U+1F3E0 -๐Ÿก house with garden; U+1F3E1 -๐Ÿข office building; U+1F3E2 -๐Ÿฃ Japanese post office; U+1F3E3 -๐Ÿค post office; U+1F3E4 -๐Ÿฅ hospital; U+1F3E5 -๐Ÿฆ bank; U+1F3E6 -๐Ÿจ hotel; U+1F3E8 -๐Ÿฉ love hotel; U+1F3E9 -๐Ÿช convenience store; U+1F3EA -๐Ÿซ school; U+1F3EB -๐Ÿฌ department store; U+1F3EC -๐Ÿญ factory; U+1F3ED -๐Ÿฏ Japanese castle; U+1F3EF -๐Ÿฐ castle; U+1F3F0 -๐Ÿ’’ wedding; U+1F492 -๐Ÿ—ผ Tokyo tower; U+1F5FC -๐Ÿ—ฝ Statue of Liberty; U+1F5FD -โ›ช church; U+26EA -๐Ÿ•Œ mosque; U+1F54C -๐Ÿ• synagogue; U+1F54D -โ›ฉ shinto shrine; U+26E9 -๐Ÿ•‹ kaaba; U+1F54B -โ›ฒ fountain; U+26F2 -โ›บ tent; U+26FA -๐ŸŒ foggy; U+1F301 -๐ŸŒƒ night with stars; U+1F303 -๐Ÿ™ cityscape; U+1F3D9 -๐ŸŒ„ sunrise over mountains; U+1F304 -๐ŸŒ… sunrise; U+1F305 -๐ŸŒ† cityscape at dusk; U+1F306 -๐ŸŒ‡ sunset; U+1F307 -๐ŸŒ‰ bridge at night; U+1F309 -โ™จ hot springs; U+2668 -๐ŸŒŒ milky way; U+1F30C -๐ŸŽ  carousel horse; U+1F3A0 -๐ŸŽก ferris wheel; U+1F3A1 -๐ŸŽข roller coaster; U+1F3A2 -๐Ÿ’ˆ barber pole; U+1F488 -๐ŸŽช circus tent; U+1F3AA -๐Ÿš‚ locomotive; U+1F682 -๐Ÿšƒ railway car; U+1F683 -๐Ÿš„ high-speed train; U+1F684 -๐Ÿš… bullet train; U+1F685 -๐Ÿš† train; U+1F686 -๐Ÿš‡ metro; U+1F687 -๐Ÿšˆ light rail; U+1F688 -๐Ÿš‰ station; U+1F689 -๐ŸšŠ tram; U+1F68A -๐Ÿš monorail; U+1F69D -๐Ÿšž mountain railway; U+1F69E -๐Ÿš‹ tram car; U+1F68B -๐ŸšŒ bus; U+1F68C -๐Ÿš oncoming bus; U+1F68D -๐ŸšŽ trolleybus; U+1F68E -๐Ÿš minibus; U+1F690 -๐Ÿš‘ ambulance; U+1F691 -๐Ÿš’ fire engine; U+1F692 -๐Ÿš“ police car; U+1F693 -๐Ÿš” oncoming police car; U+1F694 -๐Ÿš• taxi; U+1F695 -๐Ÿš– oncoming taxi; U+1F696 -๐Ÿš— automobile; U+1F697 -๐Ÿš˜ oncoming automobile; U+1F698 -๐Ÿš™ sport utility vehicle; U+1F699 -๐Ÿšš delivery truck; U+1F69A -๐Ÿš› articulated lorry; U+1F69B -๐Ÿšœ tractor; U+1F69C -๐ŸŽ racing car; U+1F3CE -๐Ÿ motorcycle; U+1F3CD -๐Ÿ›ต motor scooter; U+1F6F5 -๐Ÿšฒ bicycle; U+1F6B2 -๐Ÿ›ด kick scooter; U+1F6F4 -๐Ÿ›น skateboard; U+1F6F9 -๐Ÿš bus stop; U+1F68F -๐Ÿ›ฃ motorway; U+1F6E3 -๐Ÿ›ค railway track; U+1F6E4 -๐Ÿ›ข oil drum; U+1F6E2 -โ›ฝ fuel pump; U+26FD -๐Ÿšจ police car light; U+1F6A8 -๐Ÿšฅ horizontal traffic light; U+1F6A5 -๐Ÿšฆ vertical traffic light; U+1F6A6 -๐Ÿ›‘ stop sign; U+1F6D1 -๐Ÿšง construction; U+1F6A7 -โš“ anchor; U+2693 -โ›ต sailboat; U+26F5 -๐Ÿ›ถ canoe; U+1F6F6 -๐Ÿšค speedboat; U+1F6A4 -๐Ÿ›ณ passenger ship; U+1F6F3 -โ›ด ferry; U+26F4 -๐Ÿ›ฅ motor boat; U+1F6E5 -๐Ÿšข ship; U+1F6A2 -โœˆ airplane; U+2708 -๐Ÿ›ฉ small airplane; U+1F6E9 -๐Ÿ›ซ airplane departure; U+1F6EB -๐Ÿ›ฌ airplane arrival; U+1F6EC -๐Ÿ’บ seat; U+1F4BA -๐Ÿš helicopter; U+1F681 -๐ŸšŸ suspension railway; U+1F69F -๐Ÿš  mountain cableway; U+1F6A0 -๐Ÿšก aerial tramway; U+1F6A1 -๐Ÿ›ฐ satellite; U+1F6F0 -๐Ÿš€ rocket; U+1F680 -๐Ÿ›ธ flying saucer; U+1F6F8 -๐Ÿ›Ž bellhop bell; U+1F6CE -๐Ÿงณ luggage; U+1F9F3 -โŒ› hourglass done; U+231B -โณ hourglass not done; U+23F3 -โŒš watch; U+231A -โฐ alarm clock; U+23F0 -โฑ stopwatch; U+23F1 -โฒ timer clock; U+23F2 -๐Ÿ•ฐ mantelpiece clock; U+1F570 -๐Ÿ•› twelve oโ€™clock; U+1F55B -๐Ÿ•ง twelve-thirty; U+1F567 -๐Ÿ• one oโ€™clock; U+1F550 -๐Ÿ•œ one-thirty; U+1F55C -๐Ÿ•‘ two oโ€™clock; U+1F551 -๐Ÿ• two-thirty; U+1F55D -๐Ÿ•’ three oโ€™clock; U+1F552 -๐Ÿ•ž three-thirty; U+1F55E -๐Ÿ•“ four oโ€™clock; U+1F553 -๐Ÿ•Ÿ four-thirty; U+1F55F -๐Ÿ•” five oโ€™clock; U+1F554 -๐Ÿ•  five-thirty; U+1F560 -๐Ÿ•• six oโ€™clock; U+1F555 -๐Ÿ•ก six-thirty; U+1F561 -๐Ÿ•– seven oโ€™clock; U+1F556 -๐Ÿ•ข seven-thirty; U+1F562 -๐Ÿ•— eight oโ€™clock; U+1F557 -๐Ÿ•ฃ eight-thirty; U+1F563 -๐Ÿ•˜ nine oโ€™clock; U+1F558 -๐Ÿ•ค nine-thirty; U+1F564 -๐Ÿ•™ ten oโ€™clock; U+1F559 -๐Ÿ•ฅ ten-thirty; U+1F565 -๐Ÿ•š eleven oโ€™clock; U+1F55A -๐Ÿ•ฆ eleven-thirty; U+1F566 -๐ŸŒ‘ new moon; U+1F311 -๐ŸŒ’ waxing crescent moon; U+1F312 -๐ŸŒ“ first quarter moon; U+1F313 -๐ŸŒ” waxing gibbous moon; U+1F314 -๐ŸŒ• full moon; U+1F315 -๐ŸŒ– waning gibbous moon; U+1F316 -๐ŸŒ— last quarter moon; U+1F317 -๐ŸŒ˜ waning crescent moon; U+1F318 -๐ŸŒ™ crescent moon; U+1F319 -๐ŸŒš new moon face; U+1F31A -๐ŸŒ› first quarter moon face; U+1F31B -๐ŸŒœ last quarter moon face; U+1F31C -๐ŸŒก thermometer; U+1F321 -โ˜€ sun; U+2600 -๐ŸŒ full moon face; U+1F31D -๐ŸŒž sun with face; U+1F31E -โญ star; U+2B50 -๐ŸŒŸ glowing star; U+1F31F -๐ŸŒ  shooting star; U+1F320 -โ˜ cloud; U+2601 -โ›… sun behind cloud; U+26C5 -โ›ˆ cloud with lightning and rain; U+26C8 -๐ŸŒค sun behind small cloud; U+1F324 -๐ŸŒฅ sun behind large cloud; U+1F325 -๐ŸŒฆ sun behind rain cloud; U+1F326 -๐ŸŒง cloud with rain; U+1F327 -๐ŸŒจ cloud with snow; U+1F328 -๐ŸŒฉ cloud with lightning; U+1F329 -๐ŸŒช tornado; U+1F32A -๐ŸŒซ fog; U+1F32B -๐ŸŒฌ wind face; U+1F32C -๐ŸŒ€ cyclone; U+1F300 -๐ŸŒˆ rainbow; U+1F308 -๐ŸŒ‚ closed umbrella; U+1F302 -โ˜‚ umbrella; U+2602 -โ˜” umbrella with rain drops; U+2614 -โ›ฑ umbrella on ground; U+26F1 -โšก high voltage; U+26A1 -โ„ snowflake; U+2744 -โ˜ƒ snowman; U+2603 -โ›„ snowman without snow; U+26C4 -โ˜„ comet; U+2604 -๐Ÿ”ฅ fire; U+1F525 -๐Ÿ’ง droplet; U+1F4A7 -๐ŸŒŠ water wave; U+1F30A -๐ŸŽƒ jack-o-lantern; U+1F383 -๐ŸŽ„ Christmas tree; U+1F384 -๐ŸŽ† fireworks; U+1F386 -๐ŸŽ‡ sparkler; U+1F387 -๐Ÿงจ firecracker; U+1F9E8 -โœจ sparkles; U+2728 -๐ŸŽˆ balloon; U+1F388 -๐ŸŽ‰ party popper; U+1F389 -๐ŸŽŠ confetti ball; U+1F38A -๐ŸŽ‹ tanabata tree; U+1F38B -๐ŸŽ pine decoration; U+1F38D -๐ŸŽŽ Japanese dolls; U+1F38E -๐ŸŽ carp streamer; U+1F38F -๐ŸŽ wind chime; U+1F390 -๐ŸŽ‘ moon viewing ceremony; U+1F391 -๐Ÿงง red envelope; U+1F9E7 -๐ŸŽ€ ribbon; U+1F380 -๐ŸŽ wrapped gift; U+1F381 -๐ŸŽ— reminder ribbon; U+1F397 -๐ŸŽŸ admission tickets; U+1F39F -๐ŸŽซ ticket; U+1F3AB -๐ŸŽ– military medal; U+1F396 -๐Ÿ† trophy; U+1F3C6 -๐Ÿ… sports medal; U+1F3C5 -1st place medal; U+1F947 ๐Ÿฅ‡ -2nd place medal; U+1F948 ๐Ÿฅˆ -3rd place medal; U+1F949 ๐Ÿฅ‰ -โšฝ soccer ball; U+26BD -โšพ baseball; U+26BE -๐ŸฅŽ softball; U+1F94E -๐Ÿ€ basketball; U+1F3C0 -๐Ÿ volleyball; U+1F3D0 -๐Ÿˆ american football; U+1F3C8 -๐Ÿ‰ rugby football; U+1F3C9 -๐ŸŽพ tennis; U+1F3BE -๐Ÿฅ flying disc; U+1F94F -๐ŸŽณ bowling; U+1F3B3 -๐Ÿ cricket game; U+1F3CF -๐Ÿ‘ field hockey; U+1F3D1 -๐Ÿ’ ice hockey; U+1F3D2 -๐Ÿฅ lacrosse; U+1F94D -๐Ÿ“ ping pong; U+1F3D3 -๐Ÿธ badminton; U+1F3F8 -๐ŸฅŠ boxing glove; U+1F94A -๐Ÿฅ‹ martial arts uniform; U+1F94B -๐Ÿฅ… goal net; U+1F945 -โ›ณ flag in hole; U+26F3 -โ›ธ ice skate; U+26F8 -๐ŸŽฃ fishing pole; U+1F3A3 -๐ŸŽฝ running shirt; U+1F3BD -๐ŸŽฟ skis; U+1F3BF -๐Ÿ›ท sled; U+1F6F7 -๐ŸฅŒ curling stone; U+1F94C -๐ŸŽฏ direct hit; U+1F3AF -๐ŸŽฑ pool 8 ball; U+1F3B1 -๐Ÿ”ฎ crystal ball; U+1F52E -๐Ÿงฟ nazar amulet; U+1F9FF -๐ŸŽฎ video game; U+1F3AE -๐Ÿ•น joystick; U+1F579 -๐ŸŽฐ slot machine; U+1F3B0 -๐ŸŽฒ game die; U+1F3B2 -๐Ÿงฉ jigsaw; U+1F9E9 -๐Ÿงธ teddy bear; U+1F9F8 -โ™  spade suit; U+2660 -โ™ฅ heart suit; U+2665 -โ™ฆ diamond suit; U+2666 -โ™ฃ club suit; U+2663 -โ™Ÿ chess pawn; U+265F -๐Ÿƒ joker; U+1F0CF -๐Ÿ€„ mahjong red dragon; U+1F004 -๐ŸŽด flower playing cards; U+1F3B4 -๐ŸŽญ performing arts; U+1F3AD -๐Ÿ–ผ framed picture; U+1F5BC -๐ŸŽจ artist palette; U+1F3A8 -๐Ÿงต thread; U+1F9F5 -๐Ÿงถ yarn; U+1F9F6 -๐Ÿ‘“ glasses; U+1F453 -๐Ÿ•ถ sunglasses; U+1F576 -๐Ÿฅฝ goggles; U+1F97D -๐Ÿฅผ lab coat; U+1F97C -๐Ÿ‘” necktie; U+1F454 -๐Ÿ‘• t-shirt; U+1F455 -๐Ÿ‘– jeans; U+1F456 -๐Ÿงฃ scarf; U+1F9E3 -๐Ÿงค gloves; U+1F9E4 -๐Ÿงฅ coat; U+1F9E5 -๐Ÿงฆ socks; U+1F9E6 -๐Ÿ‘— dress; U+1F457 -๐Ÿ‘˜ kimono; U+1F458 -๐Ÿ‘™ bikini; U+1F459 -๐Ÿ‘š womanโ€™s clothes; U+1F45A -๐Ÿ‘› purse; U+1F45B -๐Ÿ‘œ handbag; U+1F45C -๐Ÿ‘ clutch bag; U+1F45D -๐Ÿ› shopping bags; U+1F6CD -๐ŸŽ’ backpack; U+1F392 -๐Ÿ‘ž manโ€™s shoe; U+1F45E -๐Ÿ‘Ÿ running shoe; U+1F45F -๐Ÿฅพ hiking boot; U+1F97E -๐Ÿฅฟ flat shoe; U+1F97F -๐Ÿ‘  high-heeled shoe; U+1F460 -๐Ÿ‘ก womanโ€™s sandal; U+1F461 -๐Ÿ‘ข womanโ€™s boot; U+1F462 -๐Ÿ‘‘ crown; U+1F451 -๐Ÿ‘’ womanโ€™s hat; U+1F452 -๐ŸŽฉ top hat; U+1F3A9 -๐ŸŽ“ graduation cap; U+1F393 -๐Ÿงข billed cap; U+1F9E2 -โ›‘ rescue workerโ€™s helmet; U+26D1 -๐Ÿ“ฟ prayer beads; U+1F4FF -๐Ÿ’„ lipstick; U+1F484 -๐Ÿ’ ring; U+1F48D -๐Ÿ’Ž gem stone; U+1F48E -๐Ÿ”‡ muted speaker; U+1F507 -๐Ÿ”ˆ speaker low volume; U+1F508 -๐Ÿ”‰ speaker medium volume; U+1F509 -๐Ÿ”Š speaker high volume; U+1F50A -๐Ÿ“ข loudspeaker; U+1F4E2 -๐Ÿ“ฃ megaphone; U+1F4E3 -๐Ÿ“ฏ postal horn; U+1F4EF -๐Ÿ”” bell; U+1F514 -๐Ÿ”• bell with slash; U+1F515 -๐ŸŽผ musical score; U+1F3BC -๐ŸŽต musical note; U+1F3B5 -๐ŸŽถ musical notes; U+1F3B6 -๐ŸŽ™ studio microphone; U+1F399 -๐ŸŽš level slider; U+1F39A -๐ŸŽ› control knobs; U+1F39B -๐ŸŽค microphone; U+1F3A4 -๐ŸŽง headphone; U+1F3A7 -๐Ÿ“ป radio; U+1F4FB -๐ŸŽท saxophone; U+1F3B7 -๐ŸŽธ guitar; U+1F3B8 -๐ŸŽน musical keyboard; U+1F3B9 -๐ŸŽบ trumpet; U+1F3BA -๐ŸŽป violin; U+1F3BB -๐Ÿฅ drum; U+1F941 -๐Ÿ“ฑ mobile phone; U+1F4F1 -๐Ÿ“ฒ mobile phone with arrow; U+1F4F2 -โ˜Ž telephone; U+260E -๐Ÿ“ž telephone receiver; U+1F4DE -๐Ÿ“Ÿ pager; U+1F4DF -๐Ÿ“  fax machine; U+1F4E0 -๐Ÿ”‹ battery; U+1F50B -๐Ÿ”Œ electric plug; U+1F50C -๐Ÿ’ป laptop computer; U+1F4BB -๐Ÿ–ฅ desktop computer; U+1F5A5 -๐Ÿ–จ printer; U+1F5A8 -โŒจ keyboard; U+2328 -๐Ÿ–ฑ computer mouse; U+1F5B1 -๐Ÿ–ฒ trackball; U+1F5B2 -๐Ÿ’ฝ computer disk; U+1F4BD -๐Ÿ’พ floppy disk; U+1F4BE -๐Ÿ’ฟ optical disk; U+1F4BF -๐Ÿ“€ dvd; U+1F4C0 -๐Ÿงฎ abacus; U+1F9EE -๐ŸŽฅ movie camera; U+1F3A5 -๐ŸŽž film frames; U+1F39E -๐Ÿ“ฝ film projector; U+1F4FD -๐ŸŽฌ clapper board; U+1F3AC -๐Ÿ“บ television; U+1F4FA -๐Ÿ“ท camera; U+1F4F7 -๐Ÿ“ธ camera with flash; U+1F4F8 -๐Ÿ“น video camera; U+1F4F9 -๐Ÿ“ผ videocassette; U+1F4FC -๐Ÿ” magnifying glass tilted left; U+1F50D -๐Ÿ”Ž magnifying glass tilted right; U+1F50E -๐Ÿ•ฏ candle; U+1F56F -๐Ÿ’ก light bulb; U+1F4A1 -๐Ÿ”ฆ flashlight; U+1F526 -๐Ÿฎ red paper lantern; U+1F3EE -๐Ÿ“” notebook with decorative cover; U+1F4D4 -๐Ÿ“• closed book; U+1F4D5 -๐Ÿ“– open book; U+1F4D6 -๐Ÿ“— green book; U+1F4D7 -๐Ÿ“˜ blue book; U+1F4D8 -๐Ÿ“™ orange book; U+1F4D9 -๐Ÿ“š books; U+1F4DA -๐Ÿ““ notebook; U+1F4D3 -๐Ÿ“’ ledger; U+1F4D2 -๐Ÿ“ƒ page with curl; U+1F4C3 -๐Ÿ“œ scroll; U+1F4DC -๐Ÿ“„ page facing up; U+1F4C4 -๐Ÿ“ฐ newspaper; U+1F4F0 -๐Ÿ—ž rolled-up newspaper; U+1F5DE -๐Ÿ“‘ bookmark tabs; U+1F4D1 -๐Ÿ”– bookmark; U+1F516 -๐Ÿท label; U+1F3F7 -๐Ÿ’ฐ money bag; U+1F4B0 -๐Ÿ’ด yen banknote; U+1F4B4 -๐Ÿ’ต dollar banknote; U+1F4B5 -๐Ÿ’ถ euro banknote; U+1F4B6 -๐Ÿ’ท pound banknote; U+1F4B7 -๐Ÿ’ธ money with wings; U+1F4B8 -๐Ÿ’ณ credit card; U+1F4B3 -๐Ÿงพ receipt; U+1F9FE -๐Ÿ’น chart increasing with yen; U+1F4B9 -๐Ÿ’ฑ currency exchange; U+1F4B1 -๐Ÿ’ฒ heavy dollar sign; U+1F4B2 -โœ‰ envelope; U+2709 -๐Ÿ“ง e-mail; U+1F4E7 -๐Ÿ“จ incoming envelope; U+1F4E8 -๐Ÿ“ฉ envelope with arrow; U+1F4E9 -๐Ÿ“ค outbox tray; U+1F4E4 -๐Ÿ“ฅ inbox tray; U+1F4E5 -๐Ÿ“ฆ package; U+1F4E6 -๐Ÿ“ซ closed mailbox with raised flag; U+1F4EB -๐Ÿ“ช closed mailbox with lowered flag; U+1F4EA -๐Ÿ“ฌ open mailbox with raised flag; U+1F4EC -๐Ÿ“ญ open mailbox with lowered flag; U+1F4ED -๐Ÿ“ฎ postbox; U+1F4EE -๐Ÿ—ณ ballot box with ballot; U+1F5F3 -โœ pencil; U+270F -โœ’ black nib; U+2712 -๐Ÿ–‹ fountain pen; U+1F58B -๐Ÿ–Š pen; U+1F58A -๐Ÿ–Œ paintbrush; U+1F58C -๐Ÿ– crayon; U+1F58D -๐Ÿ“ memo; U+1F4DD -๐Ÿ’ผ briefcase; U+1F4BC -๐Ÿ“ file folder; U+1F4C1 -๐Ÿ“‚ open file folder; U+1F4C2 -๐Ÿ—‚ card index dividers; U+1F5C2 -๐Ÿ“… calendar; U+1F4C5 -๐Ÿ“† tear-off calendar; U+1F4C6 -๐Ÿ—’ spiral notepad; U+1F5D2 -๐Ÿ—“ spiral calendar; U+1F5D3 -๐Ÿ“‡ card index; U+1F4C7 -๐Ÿ“ˆ chart increasing; U+1F4C8 -๐Ÿ“‰ chart decreasing; U+1F4C9 -๐Ÿ“Š bar chart; U+1F4CA -๐Ÿ“‹ clipboard; U+1F4CB -๐Ÿ“Œ pushpin; U+1F4CC -๐Ÿ“ round pushpin; U+1F4CD -๐Ÿ“Ž paperclip; U+1F4CE -๐Ÿ–‡ linked paperclips; U+1F587 -๐Ÿ“ straight ruler; U+1F4CF -๐Ÿ“ triangular ruler; U+1F4D0 -โœ‚ scissors; U+2702 -๐Ÿ—ƒ card file box; U+1F5C3 -๐Ÿ—„ file cabinet; U+1F5C4 -๐Ÿ—‘ wastebasket; U+1F5D1 -๐Ÿ”’ locked; U+1F512 -๐Ÿ”“ unlocked; U+1F513 -๐Ÿ” locked with pen; U+1F50F -๐Ÿ” locked with key; U+1F510 -๐Ÿ”‘ key; U+1F511 -๐Ÿ— old key; U+1F5DD -๐Ÿ”จ hammer; U+1F528 -โ› pick; U+26CF -โš’ hammer and pick; U+2692 -๐Ÿ›  hammer and wrench; U+1F6E0 -๐Ÿ—ก dagger; U+1F5E1 -โš” crossed swords; U+2694 -๐Ÿ”ซ pistol; U+1F52B -๐Ÿน bow and arrow; U+1F3F9 -๐Ÿ›ก shield; U+1F6E1 -๐Ÿ”ง wrench; U+1F527 -๐Ÿ”ฉ nut and bolt; U+1F529 -โš™ gear; U+2699 -๐Ÿ—œ clamp; U+1F5DC -โš– balance scale; U+2696 -๐Ÿ”— link; U+1F517 -โ›“ chains; U+26D3 -๐Ÿงฐ toolbox; U+1F9F0 -๐Ÿงฒ magnet; U+1F9F2 -โš— alembic; U+2697 -๐Ÿงช test tube; U+1F9EA -๐Ÿงซ petri dish; U+1F9EB -๐Ÿงฌ dna; U+1F9EC -๐Ÿ”ฌ microscope; U+1F52C -๐Ÿ”ญ telescope; U+1F52D -๐Ÿ“ก satellite antenna; U+1F4E1 -๐Ÿ’‰ syringe; U+1F489 -๐Ÿ’Š pill; U+1F48A -๐Ÿšช door; U+1F6AA -๐Ÿ› bed; U+1F6CF -๐Ÿ›‹ couch and lamp; U+1F6CB -๐Ÿšฝ toilet; U+1F6BD -๐Ÿšฟ shower; U+1F6BF -๐Ÿ› bathtub; U+1F6C1 -๐Ÿงด lotion bottle; U+1F9F4 -๐Ÿงท safety pin; U+1F9F7 -๐Ÿงน broom; U+1F9F9 -๐Ÿงบ basket; U+1F9FA -๐Ÿงป roll of paper; U+1F9FB -๐Ÿงผ soap; U+1F9FC -๐Ÿงฝ sponge; U+1F9FD -๐Ÿงฏ fire extinguisher; U+1F9EF -๐Ÿ›’ shopping cart; U+1F6D2 -๐Ÿšฌ cigarette; U+1F6AC -โšฐ coffin; U+26B0 -โšฑ funeral urn; U+26B1 -๐Ÿ—ฟ moai; U+1F5FF -๐Ÿง ATM sign; U+1F3E7 -๐Ÿšฎ litter in bin sign; U+1F6AE -๐Ÿšฐ potable water; U+1F6B0 -โ™ฟ wheelchair symbol; U+267F -๐Ÿšน menโ€™s room; U+1F6B9 -๐Ÿšบ womenโ€™s room; U+1F6BA -๐Ÿšป restroom; U+1F6BB -๐Ÿšผ baby symbol; U+1F6BC -๐Ÿšพ water closet; U+1F6BE -๐Ÿ›‚ passport control; U+1F6C2 -๐Ÿ›ƒ customs; U+1F6C3 -๐Ÿ›„ baggage claim; U+1F6C4 -๐Ÿ›… left luggage; U+1F6C5 -โš  warning; U+26A0 -๐Ÿšธ children crossing; U+1F6B8 -โ›” no entry; U+26D4 -๐Ÿšซ prohibited; U+1F6AB -๐Ÿšณ no bicycles; U+1F6B3 -๐Ÿšญ no smoking; U+1F6AD -๐Ÿšฏ no littering; U+1F6AF -๐Ÿšฑ non-potable water; U+1F6B1 -๐Ÿšท no pedestrians; U+1F6B7 -๐Ÿ“ต no mobile phones; U+1F4F5 -๐Ÿ”ž no one under eighteen; U+1F51E -โ˜ข radioactive; U+2622 -โ˜ฃ biohazard; U+2623 -โฌ† up arrow; U+2B06 -โ†— up-right arrow; U+2197 -โžก right arrow; U+27A1 -โ†˜ down-right arrow; U+2198 -โฌ‡ down arrow; U+2B07 -โ†™ down-left arrow; U+2199 -โฌ… left arrow; U+2B05 -โ†– up-left arrow; U+2196 -โ†• up-down arrow; U+2195 -โ†” left-right arrow; U+2194 -โ†ฉ right arrow curving left; U+21A9 -โ†ช left arrow curving right; U+21AA -โคด right arrow curving up; U+2934 -โคต right arrow curving down; U+2935 -๐Ÿ”ƒ clockwise vertical arrows; U+1F503 -๐Ÿ”„ counterclockwise arrows button; U+1F504 -๐Ÿ”™ BACK arrow; U+1F519 -๐Ÿ”š END arrow; U+1F51A -๐Ÿ”› ON! arrow; U+1F51B -๐Ÿ”œ SOON arrow; U+1F51C -๐Ÿ” TOP arrow; U+1F51D -๐Ÿ› place of worship; U+1F6D0 -โš› atom symbol; U+269B -๐Ÿ•‰ om; U+1F549 -โœก star of David; U+2721 -โ˜ธ wheel of dharma; U+2638 -โ˜ฏ yin yang; U+262F -โœ latin cross; U+271D -โ˜ฆ orthodox cross; U+2626 -โ˜ช star and crescent; U+262A -โ˜ฎ peace symbol; U+262E -๐Ÿ•Ž menorah; U+1F54E -๐Ÿ”ฏ dotted six-pointed star; U+1F52F -โ™ˆ Aries; U+2648 -โ™‰ Taurus; U+2649 -โ™Š Gemini; U+264A -โ™‹ Cancer; U+264B -โ™Œ Leo; U+264C -โ™ Virgo; U+264D -โ™Ž Libra; U+264E -โ™ Scorpio; U+264F -โ™ Sagittarius; U+2650 -โ™‘ Capricorn; U+2651 -โ™’ Aquarius; U+2652 -โ™“ Pisces; U+2653 -โ›Ž Ophiuchus; U+26CE -๐Ÿ”€ shuffle tracks button; U+1F500 -๐Ÿ” repeat button; U+1F501 -๐Ÿ”‚ repeat single button; U+1F502 -โ–ถ play button; U+25B6 -โฉ fast-forward button; U+23E9 -โญ next track button; U+23ED -โฏ play or pause button; U+23EF -โ—€ reverse button; U+25C0 -โช fast reverse button; U+23EA -โฎ last track button; U+23EE -๐Ÿ”ผ upwards button; U+1F53C -โซ fast up button; U+23EB -๐Ÿ”ฝ downwards button; U+1F53D -โฌ fast down button; U+23EC -โธ pause button; U+23F8 -โน stop button; U+23F9 -โบ record button; U+23FA -โ eject button; U+23CF -๐ŸŽฆ cinema; U+1F3A6 -๐Ÿ”… dim button; U+1F505 -๐Ÿ”† bright button; U+1F506 -๐Ÿ“ถ antenna bars; U+1F4F6 -๐Ÿ“ณ vibration mode; U+1F4F3 -๐Ÿ“ด mobile phone off; U+1F4F4 -โ™€ female sign; U+2640 -โ™‚ male sign; U+2642 -โš• medical symbol; U+2695 -โ™พ infinity; U+267E -โ™ป recycling symbol; U+267B -โšœ fleur-de-lis; U+269C -๐Ÿ”ฑ trident emblem; U+1F531 -๐Ÿ“› name badge; U+1F4DB -๐Ÿ”ฐ Japanese symbol for beginner; U+1F530 -โญ• heavy large circle; U+2B55 -โœ… white heavy check mark; U+2705 -โ˜‘ ballot box with check; U+2611 -โœ” heavy check mark; U+2714 -โœ– heavy multiplication x; U+2716 -โŒ cross mark; U+274C -โŽ cross mark button; U+274E -โž• heavy plus sign; U+2795 -โž– heavy minus sign; U+2796 -โž— heavy division sign; U+2797 -โžฐ curly loop; U+27B0 -โžฟ double curly loop; U+27BF -ใ€ฝ part alternation mark; U+303D -โœณ eight-spoked asterisk; U+2733 -โœด eight-pointed star; U+2734 -โ‡ sparkle; U+2747 -โ€ผ double exclamation mark; U+203C -โ‰ exclamation question mark; U+2049 -โ“ question mark; U+2753 -โ” white question mark; U+2754 -โ• white exclamation mark; U+2755 -โ— exclamation mark; U+2757 -ใ€ฐ wavy dash; U+3030 -ยฉ copyright; U+00A9 -ยฎ registered; U+00AE -โ„ข trade mark; U+2122 -#๏ธโƒฃ keycap: #; U+0023 U+FE0F U+20E3 -*๏ธโƒฃ keycap: *; U+002A U+FE0F U+20E3 -0๏ธโƒฃ keycap: 0; U+0030 U+FE0F U+20E3 -1๏ธโƒฃ keycap: 1; U+0031 U+FE0F U+20E3 -2๏ธโƒฃ keycap: 2; U+0032 U+FE0F U+20E3 -3๏ธโƒฃ keycap: 3; U+0033 U+FE0F U+20E3 -4๏ธโƒฃ keycap: 4; U+0034 U+FE0F U+20E3 -5๏ธโƒฃ keycap: 5; U+0035 U+FE0F U+20E3 -6๏ธโƒฃ keycap: 6; U+0036 U+FE0F U+20E3 -7๏ธโƒฃ keycap: 7; U+0037 U+FE0F U+20E3 -8๏ธโƒฃ keycap: 8; U+0038 U+FE0F U+20E3 -9๏ธโƒฃ keycap: 9; U+0039 U+FE0F U+20E3 -๐Ÿ”Ÿ keycap: 10; U+1F51F -๐Ÿ”  input latin uppercase; U+1F520 -๐Ÿ”ก input latin lowercase; U+1F521 -๐Ÿ”ข input numbers; U+1F522 -๐Ÿ”ฃ input symbols; U+1F523 -๐Ÿ”ค input latin letters; U+1F524 -๐Ÿ…ฐ A button (blood type); U+1F170 -๐Ÿ†Ž AB button (blood type); U+1F18E -๐Ÿ…ฑ B button (blood type); U+1F171 -๐Ÿ†‘ CL button; U+1F191 -๐Ÿ†’ COOL button; U+1F192 -๐Ÿ†“ FREE button; U+1F193 -โ„น information; U+2139 -๐Ÿ†” ID button; U+1F194 -โ“‚ circled M; U+24C2 -๐Ÿ†• NEW button; U+1F195 -๐Ÿ†– NG button; U+1F196 -๐Ÿ…พ O button (blood type); U+1F17E -๐Ÿ†— OK button; U+1F197 -๐Ÿ…ฟ P button; U+1F17F -๐Ÿ†˜ SOS button; U+1F198 -๐Ÿ†™ UP! button; U+1F199 -๐Ÿ†š VS button; U+1F19A -๐Ÿˆ Japanese โ€œhereโ€ button; U+1F201 -๐Ÿˆ‚ Japanese โ€œservice chargeโ€ button; U+1F202 -๐Ÿˆท Japanese โ€œmonthly amountโ€ button; U+1F237 -๐Ÿˆถ Japanese โ€œnot free of chargeโ€ button; U+1F236 -๐Ÿˆฏ Japanese โ€œreservedโ€ button; U+1F22F -๐Ÿ‰ Japanese โ€œbargainโ€ button; U+1F250 -๐Ÿˆน Japanese โ€œdiscountโ€ button; U+1F239 -๐Ÿˆš Japanese โ€œfree of chargeโ€ button; U+1F21A -๐Ÿˆฒ Japanese โ€œprohibitedโ€ button; U+1F232 -๐Ÿ‰‘ Japanese โ€œacceptableโ€ button; U+1F251 -๐Ÿˆธ Japanese โ€œapplicationโ€ button; U+1F238 -๐Ÿˆด Japanese โ€œpassing gradeโ€ button; U+1F234 -๐Ÿˆณ Japanese โ€œvacancyโ€ button; U+1F233 -ใŠ— Japanese โ€œcongratulationsโ€ button; U+3297 -ใŠ™ Japanese โ€œsecretโ€ button; U+3299 -๐Ÿˆบ Japanese โ€œopen for businessโ€ button; U+1F23A -๐Ÿˆต Japanese โ€œno vacancyโ€ button; U+1F235 -๐Ÿ”ด red circle; U+1F534 -๐Ÿ”ต blue circle; U+1F535 -โšช white circle; U+26AA -โšซ black circle; U+26AB -โฌœ white large square; U+2B1C -โฌ› black large square; U+2B1B -โ—ผ black medium square; U+25FC -โ—ป white medium square; U+25FB -โ—ฝ white medium-small square; U+25FD -โ—พ black medium-small square; U+25FE -โ–ซ white small square; U+25AB -โ–ช black small square; U+25AA -๐Ÿ”ถ large orange diamond; U+1F536 -๐Ÿ”ท large blue diamond; U+1F537 -๐Ÿ”ธ small orange diamond; U+1F538 -๐Ÿ”น small blue diamond; U+1F539 -๐Ÿ”บ red triangle pointed up; U+1F53A -๐Ÿ”ป red triangle pointed down; U+1F53B -๐Ÿ’  diamond with a dot; U+1F4A0 -๐Ÿ”˜ radio button; U+1F518 -๐Ÿ”ฒ black square button; U+1F532 -๐Ÿ”ณ white square button; U+1F533 -๐Ÿ chequered flag; U+1F3C1 -๐Ÿšฉ triangular flag; U+1F6A9 -๐ŸŽŒ crossed flags; U+1F38C -๐Ÿด black flag; U+1F3F4 -๐Ÿณ white flag; U+1F3F3 -๐Ÿณ๏ธโ€๐ŸŒˆ rainbow flag; U+1F3F3 U+FE0F U+200D U+1F308 -๐Ÿดโ€โ˜ ๏ธ pirate flag; U+1F3F4 U+200D U+2620 U+FE0F -๐Ÿ‡ฆ๐Ÿ‡จ flag: Ascension Island; U+1F1E6 U+1F1E8 -๐Ÿ‡ฆ๐Ÿ‡ฉ flag: Andorra; U+1F1E6 U+1F1E9 -๐Ÿ‡ฆ๐Ÿ‡ช flag: United Arab Emirates; U+1F1E6 U+1F1EA -๐Ÿ‡ฆ๐Ÿ‡ซ flag: Afghanistan; U+1F1E6 U+1F1EB -๐Ÿ‡ฆ๐Ÿ‡ฌ flag: Antigua & Barbuda; U+1F1E6 U+1F1EC -๐Ÿ‡ฆ๐Ÿ‡ฎ flag: Anguilla; U+1F1E6 U+1F1EE -๐Ÿ‡ฆ๐Ÿ‡ฑ flag: Albania; U+1F1E6 U+1F1F1 -๐Ÿ‡ฆ๐Ÿ‡ฒ flag: Armenia; U+1F1E6 U+1F1F2 -๐Ÿ‡ฆ๐Ÿ‡ด flag: Angola; U+1F1E6 U+1F1F4 -๐Ÿ‡ฆ๐Ÿ‡ถ flag: Antarctica; U+1F1E6 U+1F1F6 -๐Ÿ‡ฆ๐Ÿ‡ท flag: Argentina; U+1F1E6 U+1F1F7 -๐Ÿ‡ฆ๐Ÿ‡ธ flag: American Samoa; U+1F1E6 U+1F1F8 -๐Ÿ‡ฆ๐Ÿ‡น flag: Austria; U+1F1E6 U+1F1F9 -๐Ÿ‡ฆ๐Ÿ‡บ flag: Australia; U+1F1E6 U+1F1FA -๐Ÿ‡ฆ๐Ÿ‡ผ flag: Aruba; U+1F1E6 U+1F1FC -๐Ÿ‡ฆ๐Ÿ‡ฝ flag: ร…land Islands; U+1F1E6 U+1F1FD -๐Ÿ‡ฆ๐Ÿ‡ฟ flag: Azerbaijan; U+1F1E6 U+1F1FF -๐Ÿ‡ง๐Ÿ‡ฆ flag: Bosnia & Herzegovina; U+1F1E7 U+1F1E6 -๐Ÿ‡ง๐Ÿ‡ง flag: Barbados; U+1F1E7 U+1F1E7 -๐Ÿ‡ง๐Ÿ‡ฉ flag: Bangladesh; U+1F1E7 U+1F1E9 -๐Ÿ‡ง๐Ÿ‡ช flag: Belgium; U+1F1E7 U+1F1EA -๐Ÿ‡ง๐Ÿ‡ซ flag: Burkina Faso; U+1F1E7 U+1F1EB -๐Ÿ‡ง๐Ÿ‡ฌ flag: Bulgaria; U+1F1E7 U+1F1EC -๐Ÿ‡ง๐Ÿ‡ญ flag: Bahrain; U+1F1E7 U+1F1ED -๐Ÿ‡ง๐Ÿ‡ฎ flag: Burundi; U+1F1E7 U+1F1EE -๐Ÿ‡ง๐Ÿ‡ฏ flag: Benin; U+1F1E7 U+1F1EF -๐Ÿ‡ง๐Ÿ‡ฑ flag: St. Barthรฉlemy; U+1F1E7 U+1F1F1 -๐Ÿ‡ง๐Ÿ‡ฒ flag: Bermuda; U+1F1E7 U+1F1F2 -๐Ÿ‡ง๐Ÿ‡ณ flag: Brunei; U+1F1E7 U+1F1F3 -๐Ÿ‡ง๐Ÿ‡ด flag: Bolivia; U+1F1E7 U+1F1F4 -๐Ÿ‡ง๐Ÿ‡ถ flag: Caribbean Netherlands; U+1F1E7 U+1F1F6 -๐Ÿ‡ง๐Ÿ‡ท flag: Brazil; U+1F1E7 U+1F1F7 -๐Ÿ‡ง๐Ÿ‡ธ flag: Bahamas; U+1F1E7 U+1F1F8 -๐Ÿ‡ง๐Ÿ‡น flag: Bhutan; U+1F1E7 U+1F1F9 -๐Ÿ‡ง๐Ÿ‡ป flag: Bouvet Island; U+1F1E7 U+1F1FB -๐Ÿ‡ง๐Ÿ‡ผ flag: Botswana; U+1F1E7 U+1F1FC -๐Ÿ‡ง๐Ÿ‡พ flag: Belarus; U+1F1E7 U+1F1FE -๐Ÿ‡ง๐Ÿ‡ฟ flag: Belize; U+1F1E7 U+1F1FF -๐Ÿ‡จ๐Ÿ‡ฆ flag: Canada; U+1F1E8 U+1F1E6 -๐Ÿ‡จ๐Ÿ‡จ flag: Cocos (Keeling) Islands; U+1F1E8 U+1F1E8 -๐Ÿ‡จ๐Ÿ‡ฉ flag: Congo - Kinshasa; U+1F1E8 U+1F1E9 -๐Ÿ‡จ๐Ÿ‡ซ flag: Central African Republic; U+1F1E8 U+1F1EB -๐Ÿ‡จ๐Ÿ‡ฌ flag: Congo - Brazzaville; U+1F1E8 U+1F1EC -๐Ÿ‡จ๐Ÿ‡ญ flag: Switzerland; U+1F1E8 U+1F1ED -๐Ÿ‡จ๐Ÿ‡ฎ flag: Cรดte dโ€™Ivoire; U+1F1E8 U+1F1EE -๐Ÿ‡จ๐Ÿ‡ฐ flag: Cook Islands; U+1F1E8 U+1F1F0 -๐Ÿ‡จ๐Ÿ‡ฑ flag: Chile; U+1F1E8 U+1F1F1 -๐Ÿ‡จ๐Ÿ‡ฒ flag: Cameroon; U+1F1E8 U+1F1F2 -๐Ÿ‡จ๐Ÿ‡ณ flag: China; U+1F1E8 U+1F1F3 -๐Ÿ‡จ๐Ÿ‡ด flag: Colombia; U+1F1E8 U+1F1F4 -๐Ÿ‡จ๐Ÿ‡ต flag: Clipperton Island; U+1F1E8 U+1F1F5 -๐Ÿ‡จ๐Ÿ‡ท flag: Costa Rica; U+1F1E8 U+1F1F7 -๐Ÿ‡จ๐Ÿ‡บ flag: Cuba; U+1F1E8 U+1F1FA -๐Ÿ‡จ๐Ÿ‡ป flag: Cape Verde; U+1F1E8 U+1F1FB -๐Ÿ‡จ๐Ÿ‡ผ flag: Curaรงao; U+1F1E8 U+1F1FC -๐Ÿ‡จ๐Ÿ‡ฝ flag: Christmas Island; U+1F1E8 U+1F1FD -๐Ÿ‡จ๐Ÿ‡พ flag: Cyprus; U+1F1E8 U+1F1FE -๐Ÿ‡จ๐Ÿ‡ฟ flag: Czechia; U+1F1E8 U+1F1FF -๐Ÿ‡ฉ๐Ÿ‡ช flag: Germany; U+1F1E9 U+1F1EA -๐Ÿ‡ฉ๐Ÿ‡ฌ flag: Diego Garcia; U+1F1E9 U+1F1EC -๐Ÿ‡ฉ๐Ÿ‡ฏ flag: Djibouti; U+1F1E9 U+1F1EF -๐Ÿ‡ฉ๐Ÿ‡ฐ flag: Denmark; U+1F1E9 U+1F1F0 -๐Ÿ‡ฉ๐Ÿ‡ฒ flag: Dominica; U+1F1E9 U+1F1F2 -๐Ÿ‡ฉ๐Ÿ‡ด flag: Dominican Republic; U+1F1E9 U+1F1F4 -๐Ÿ‡ฉ๐Ÿ‡ฟ flag: Algeria; U+1F1E9 U+1F1FF -๐Ÿ‡ช๐Ÿ‡ฆ flag: Ceuta & Melilla; U+1F1EA U+1F1E6 -๐Ÿ‡ช๐Ÿ‡จ flag: Ecuador; U+1F1EA U+1F1E8 -๐Ÿ‡ช๐Ÿ‡ช flag: Estonia; U+1F1EA U+1F1EA -๐Ÿ‡ช๐Ÿ‡ฌ flag: Egypt; U+1F1EA U+1F1EC -๐Ÿ‡ช๐Ÿ‡ญ flag: Western Sahara; U+1F1EA U+1F1ED -๐Ÿ‡ช๐Ÿ‡ท flag: Eritrea; U+1F1EA U+1F1F7 -๐Ÿ‡ช๐Ÿ‡ธ flag: Spain; U+1F1EA U+1F1F8 -๐Ÿ‡ช๐Ÿ‡น flag: Ethiopia; U+1F1EA U+1F1F9 -๐Ÿ‡ช๐Ÿ‡บ flag: European Union; U+1F1EA U+1F1FA -๐Ÿ‡ซ๐Ÿ‡ฎ flag: Finland; U+1F1EB U+1F1EE -๐Ÿ‡ซ๐Ÿ‡ฏ flag: Fiji; U+1F1EB U+1F1EF -๐Ÿ‡ซ๐Ÿ‡ฐ flag: Falkland Islands; U+1F1EB U+1F1F0 -๐Ÿ‡ซ๐Ÿ‡ฒ flag: Micronesia; U+1F1EB U+1F1F2 -๐Ÿ‡ซ๐Ÿ‡ด flag: Faroe Islands; U+1F1EB U+1F1F4 -๐Ÿ‡ซ๐Ÿ‡ท flag: France; U+1F1EB U+1F1F7 -๐Ÿ‡ฌ๐Ÿ‡ฆ flag: Gabon; U+1F1EC U+1F1E6 -๐Ÿ‡ฌ๐Ÿ‡ง flag: United Kingdom; U+1F1EC U+1F1E7 -๐Ÿ‡ฌ๐Ÿ‡ฉ flag: Grenada; U+1F1EC U+1F1E9 -๐Ÿ‡ฌ๐Ÿ‡ช flag: Georgia; U+1F1EC U+1F1EA -๐Ÿ‡ฌ๐Ÿ‡ซ flag: French Guiana; U+1F1EC U+1F1EB -๐Ÿ‡ฌ๐Ÿ‡ฌ flag: Guernsey; U+1F1EC U+1F1EC -๐Ÿ‡ฌ๐Ÿ‡ญ flag: Ghana; U+1F1EC U+1F1ED -๐Ÿ‡ฌ๐Ÿ‡ฎ flag: Gibraltar; U+1F1EC U+1F1EE -๐Ÿ‡ฌ๐Ÿ‡ฑ flag: Greenland; U+1F1EC U+1F1F1 -๐Ÿ‡ฌ๐Ÿ‡ฒ flag: Gambia; U+1F1EC U+1F1F2 -๐Ÿ‡ฌ๐Ÿ‡ณ flag: Guinea; U+1F1EC U+1F1F3 -๐Ÿ‡ฌ๐Ÿ‡ต flag: Guadeloupe; U+1F1EC U+1F1F5 -๐Ÿ‡ฌ๐Ÿ‡ถ flag: Equatorial Guinea; U+1F1EC U+1F1F6 -๐Ÿ‡ฌ๐Ÿ‡ท flag: Greece; U+1F1EC U+1F1F7 -๐Ÿ‡ฌ๐Ÿ‡ธ flag: South Georgia & South Sandwich Islands; U+1F1EC U+1F1F8 -๐Ÿ‡ฌ๐Ÿ‡น flag: Guatemala; U+1F1EC U+1F1F9 -๐Ÿ‡ฌ๐Ÿ‡บ flag: Guam; U+1F1EC U+1F1FA -๐Ÿ‡ฌ๐Ÿ‡ผ flag: Guinea-Bissau; U+1F1EC U+1F1FC -๐Ÿ‡ฌ๐Ÿ‡พ flag: Guyana; U+1F1EC U+1F1FE -๐Ÿ‡ญ๐Ÿ‡ฐ flag: Hong Kong SAR China; U+1F1ED U+1F1F0 -๐Ÿ‡ญ๐Ÿ‡ฒ flag: Heard & McDonald Islands; U+1F1ED U+1F1F2 -๐Ÿ‡ญ๐Ÿ‡ณ flag: Honduras; U+1F1ED U+1F1F3 -๐Ÿ‡ญ๐Ÿ‡ท flag: Croatia; U+1F1ED U+1F1F7 -๐Ÿ‡ญ๐Ÿ‡น flag: Haiti; U+1F1ED U+1F1F9 -๐Ÿ‡ญ๐Ÿ‡บ flag: Hungary; U+1F1ED U+1F1FA -๐Ÿ‡ฎ๐Ÿ‡จ flag: Canary Islands; U+1F1EE U+1F1E8 -๐Ÿ‡ฎ๐Ÿ‡ฉ flag: Indonesia; U+1F1EE U+1F1E9 -๐Ÿ‡ฎ๐Ÿ‡ช flag: Ireland; U+1F1EE U+1F1EA -๐Ÿ‡ฎ๐Ÿ‡ฑ flag: Israel; U+1F1EE U+1F1F1 -๐Ÿ‡ฎ๐Ÿ‡ฒ flag: Isle of Man; U+1F1EE U+1F1F2 -๐Ÿ‡ฎ๐Ÿ‡ณ flag: India; U+1F1EE U+1F1F3 -๐Ÿ‡ฎ๐Ÿ‡ด flag: British Indian Ocean Territory; U+1F1EE U+1F1F4 -๐Ÿ‡ฎ๐Ÿ‡ถ flag: Iraq; U+1F1EE U+1F1F6 -๐Ÿ‡ฎ๐Ÿ‡ท flag: Iran; U+1F1EE U+1F1F7 -๐Ÿ‡ฎ๐Ÿ‡ธ flag: Iceland; U+1F1EE U+1F1F8 -๐Ÿ‡ฎ๐Ÿ‡น flag: Italy; U+1F1EE U+1F1F9 -๐Ÿ‡ฏ๐Ÿ‡ช flag: Jersey; U+1F1EF U+1F1EA -๐Ÿ‡ฏ๐Ÿ‡ฒ flag: Jamaica; U+1F1EF U+1F1F2 -๐Ÿ‡ฏ๐Ÿ‡ด flag: Jordan; U+1F1EF U+1F1F4 -๐Ÿ‡ฏ๐Ÿ‡ต flag: Japan; U+1F1EF U+1F1F5 -๐Ÿ‡ฐ๐Ÿ‡ช flag: Kenya; U+1F1F0 U+1F1EA -๐Ÿ‡ฐ๐Ÿ‡ฌ flag: Kyrgyzstan; U+1F1F0 U+1F1EC -๐Ÿ‡ฐ๐Ÿ‡ญ flag: Cambodia; U+1F1F0 U+1F1ED -๐Ÿ‡ฐ๐Ÿ‡ฎ flag: Kiribati; U+1F1F0 U+1F1EE -๐Ÿ‡ฐ๐Ÿ‡ฒ flag: Comoros; U+1F1F0 U+1F1F2 -๐Ÿ‡ฐ๐Ÿ‡ณ flag: St. Kitts & Nevis; U+1F1F0 U+1F1F3 -๐Ÿ‡ฐ๐Ÿ‡ต flag: North Korea; U+1F1F0 U+1F1F5 -๐Ÿ‡ฐ๐Ÿ‡ท flag: South Korea; U+1F1F0 U+1F1F7 -๐Ÿ‡ฐ๐Ÿ‡ผ flag: Kuwait; U+1F1F0 U+1F1FC -๐Ÿ‡ฐ๐Ÿ‡พ flag: Cayman Islands; U+1F1F0 U+1F1FE -๐Ÿ‡ฐ๐Ÿ‡ฟ flag: Kazakhstan; U+1F1F0 U+1F1FF -๐Ÿ‡ฑ๐Ÿ‡ฆ flag: Laos; U+1F1F1 U+1F1E6 -๐Ÿ‡ฑ๐Ÿ‡ง flag: Lebanon; U+1F1F1 U+1F1E7 -๐Ÿ‡ฑ๐Ÿ‡จ flag: St. Lucia; U+1F1F1 U+1F1E8 -๐Ÿ‡ฑ๐Ÿ‡ฎ flag: Liechtenstein; U+1F1F1 U+1F1EE -๐Ÿ‡ฑ๐Ÿ‡ฐ flag: Sri Lanka; U+1F1F1 U+1F1F0 -๐Ÿ‡ฑ๐Ÿ‡ท flag: Liberia; U+1F1F1 U+1F1F7 -๐Ÿ‡ฑ๐Ÿ‡ธ flag: Lesotho; U+1F1F1 U+1F1F8 -๐Ÿ‡ฑ๐Ÿ‡น flag: Lithuania; U+1F1F1 U+1F1F9 -๐Ÿ‡ฑ๐Ÿ‡บ flag: Luxembourg; U+1F1F1 U+1F1FA -๐Ÿ‡ฑ๐Ÿ‡ป flag: Latvia; U+1F1F1 U+1F1FB -๐Ÿ‡ฑ๐Ÿ‡พ flag: Libya; U+1F1F1 U+1F1FE -๐Ÿ‡ฒ๐Ÿ‡ฆ flag: Morocco; U+1F1F2 U+1F1E6 -๐Ÿ‡ฒ๐Ÿ‡จ flag: Monaco; U+1F1F2 U+1F1E8 -๐Ÿ‡ฒ๐Ÿ‡ฉ flag: Moldova; U+1F1F2 U+1F1E9 -๐Ÿ‡ฒ๐Ÿ‡ช flag: Montenegro; U+1F1F2 U+1F1EA -๐Ÿ‡ฒ๐Ÿ‡ซ flag: St. Martin; U+1F1F2 U+1F1EB -๐Ÿ‡ฒ๐Ÿ‡ฌ flag: Madagascar; U+1F1F2 U+1F1EC -๐Ÿ‡ฒ๐Ÿ‡ญ flag: Marshall Islands; U+1F1F2 U+1F1ED -๐Ÿ‡ฒ๐Ÿ‡ฐ flag: Macedonia; U+1F1F2 U+1F1F0 -๐Ÿ‡ฒ๐Ÿ‡ฑ flag: Mali; U+1F1F2 U+1F1F1 -๐Ÿ‡ฒ๐Ÿ‡ฒ flag: Myanmar (Burma); U+1F1F2 U+1F1F2 -๐Ÿ‡ฒ๐Ÿ‡ณ flag: Mongolia; U+1F1F2 U+1F1F3 -๐Ÿ‡ฒ๐Ÿ‡ด flag: Macau SAR China; U+1F1F2 U+1F1F4 -๐Ÿ‡ฒ๐Ÿ‡ต flag: Northern Mariana Islands; U+1F1F2 U+1F1F5 -๐Ÿ‡ฒ๐Ÿ‡ถ flag: Martinique; U+1F1F2 U+1F1F6 -๐Ÿ‡ฒ๐Ÿ‡ท flag: Mauritania; U+1F1F2 U+1F1F7 -๐Ÿ‡ฒ๐Ÿ‡ธ flag: Montserrat; U+1F1F2 U+1F1F8 -๐Ÿ‡ฒ๐Ÿ‡น flag: Malta; U+1F1F2 U+1F1F9 -๐Ÿ‡ฒ๐Ÿ‡บ flag: Mauritius; U+1F1F2 U+1F1FA -๐Ÿ‡ฒ๐Ÿ‡ป flag: Maldives; U+1F1F2 U+1F1FB -๐Ÿ‡ฒ๐Ÿ‡ผ flag: Malawi; U+1F1F2 U+1F1FC -๐Ÿ‡ฒ๐Ÿ‡ฝ flag: Mexico; U+1F1F2 U+1F1FD -๐Ÿ‡ฒ๐Ÿ‡พ flag: Malaysia; U+1F1F2 U+1F1FE -๐Ÿ‡ฒ๐Ÿ‡ฟ flag: Mozambique; U+1F1F2 U+1F1FF -๐Ÿ‡ณ๐Ÿ‡ฆ flag: Namibia; U+1F1F3 U+1F1E6 -๐Ÿ‡ณ๐Ÿ‡จ flag: New Caledonia; U+1F1F3 U+1F1E8 -๐Ÿ‡ณ๐Ÿ‡ช flag: Niger; U+1F1F3 U+1F1EA -๐Ÿ‡ณ๐Ÿ‡ซ flag: Norfolk Island; U+1F1F3 U+1F1EB -๐Ÿ‡ณ๐Ÿ‡ฌ flag: Nigeria; U+1F1F3 U+1F1EC -๐Ÿ‡ณ๐Ÿ‡ฎ flag: Nicaragua; U+1F1F3 U+1F1EE -๐Ÿ‡ณ๐Ÿ‡ฑ flag: Netherlands; U+1F1F3 U+1F1F1 -๐Ÿ‡ณ๐Ÿ‡ด flag: Norway; U+1F1F3 U+1F1F4 -๐Ÿ‡ณ๐Ÿ‡ต flag: Nepal; U+1F1F3 U+1F1F5 -๐Ÿ‡ณ๐Ÿ‡ท flag: Nauru; U+1F1F3 U+1F1F7 -๐Ÿ‡ณ๐Ÿ‡บ flag: Niue; U+1F1F3 U+1F1FA -๐Ÿ‡ณ๐Ÿ‡ฟ flag: New Zealand; U+1F1F3 U+1F1FF -๐Ÿ‡ด๐Ÿ‡ฒ flag: Oman; U+1F1F4 U+1F1F2 -๐Ÿ‡ต๐Ÿ‡ฆ flag: Panama; U+1F1F5 U+1F1E6 -๐Ÿ‡ต๐Ÿ‡ช flag: Peru; U+1F1F5 U+1F1EA -๐Ÿ‡ต๐Ÿ‡ซ flag: French Polynesia; U+1F1F5 U+1F1EB -๐Ÿ‡ต๐Ÿ‡ฌ flag: Papua New Guinea; U+1F1F5 U+1F1EC -๐Ÿ‡ต๐Ÿ‡ญ flag: Philippines; U+1F1F5 U+1F1ED -๐Ÿ‡ต๐Ÿ‡ฐ flag: Pakistan; U+1F1F5 U+1F1F0 -๐Ÿ‡ต๐Ÿ‡ฑ flag: Poland; U+1F1F5 U+1F1F1 -๐Ÿ‡ต๐Ÿ‡ฒ flag: St. Pierre & Miquelon; U+1F1F5 U+1F1F2 -๐Ÿ‡ต๐Ÿ‡ณ flag: Pitcairn Islands; U+1F1F5 U+1F1F3 -๐Ÿ‡ต๐Ÿ‡ท flag: Puerto Rico; U+1F1F5 U+1F1F7 -๐Ÿ‡ต๐Ÿ‡ธ flag: Palestinian Territories; U+1F1F5 U+1F1F8 -๐Ÿ‡ต๐Ÿ‡น flag: Portugal; U+1F1F5 U+1F1F9 -๐Ÿ‡ต๐Ÿ‡ผ flag: Palau; U+1F1F5 U+1F1FC -๐Ÿ‡ต๐Ÿ‡พ flag: Paraguay; U+1F1F5 U+1F1FE -๐Ÿ‡ถ๐Ÿ‡ฆ flag: Qatar; U+1F1F6 U+1F1E6 -๐Ÿ‡ท๐Ÿ‡ช flag: Rรฉunion; U+1F1F7 U+1F1EA -๐Ÿ‡ท๐Ÿ‡ด flag: Romania; U+1F1F7 U+1F1F4 -๐Ÿ‡ท๐Ÿ‡ธ flag: Serbia; U+1F1F7 U+1F1F8 -๐Ÿ‡ท๐Ÿ‡บ flag: Russia; U+1F1F7 U+1F1FA -๐Ÿ‡ท๐Ÿ‡ผ flag: Rwanda; U+1F1F7 U+1F1FC -๐Ÿ‡ธ๐Ÿ‡ฆ flag: Saudi Arabia; U+1F1F8 U+1F1E6 -๐Ÿ‡ธ๐Ÿ‡ง flag: Solomon Islands; U+1F1F8 U+1F1E7 -๐Ÿ‡ธ๐Ÿ‡จ flag: Seychelles; U+1F1F8 U+1F1E8 -๐Ÿ‡ธ๐Ÿ‡ฉ flag: Sudan; U+1F1F8 U+1F1E9 -๐Ÿ‡ธ๐Ÿ‡ช flag: Sweden; U+1F1F8 U+1F1EA -๐Ÿ‡ธ๐Ÿ‡ฌ flag: Singapore; U+1F1F8 U+1F1EC -๐Ÿ‡ธ๐Ÿ‡ญ flag: St. Helena; U+1F1F8 U+1F1ED -๐Ÿ‡ธ๐Ÿ‡ฎ flag: Slovenia; U+1F1F8 U+1F1EE -๐Ÿ‡ธ๐Ÿ‡ฏ flag: Svalbard & Jan Mayen; U+1F1F8 U+1F1EF -๐Ÿ‡ธ๐Ÿ‡ฐ flag: Slovakia; U+1F1F8 U+1F1F0 -๐Ÿ‡ธ๐Ÿ‡ฑ flag: Sierra Leone; U+1F1F8 U+1F1F1 -๐Ÿ‡ธ๐Ÿ‡ฒ flag: San Marino; U+1F1F8 U+1F1F2 -๐Ÿ‡ธ๐Ÿ‡ณ flag: Senegal; U+1F1F8 U+1F1F3 -๐Ÿ‡ธ๐Ÿ‡ด flag: Somalia; U+1F1F8 U+1F1F4 -๐Ÿ‡ธ๐Ÿ‡ท flag: Suriname; U+1F1F8 U+1F1F7 -๐Ÿ‡ธ๐Ÿ‡ธ flag: South Sudan; U+1F1F8 U+1F1F8 -๐Ÿ‡ธ๐Ÿ‡น flag: Sรฃo Tomรฉ & Prรญncipe; U+1F1F8 U+1F1F9 -๐Ÿ‡ธ๐Ÿ‡ป flag: El Salvador; U+1F1F8 U+1F1FB -๐Ÿ‡ธ๐Ÿ‡ฝ flag: Sint Maarten; U+1F1F8 U+1F1FD -๐Ÿ‡ธ๐Ÿ‡พ flag: Syria; U+1F1F8 U+1F1FE -๐Ÿ‡ธ๐Ÿ‡ฟ flag: Swaziland; U+1F1F8 U+1F1FF -๐Ÿ‡น๐Ÿ‡ฆ flag: Tristan da Cunha; U+1F1F9 U+1F1E6 -๐Ÿ‡น๐Ÿ‡จ flag: Turks & Caicos Islands; U+1F1F9 U+1F1E8 -๐Ÿ‡น๐Ÿ‡ฉ flag: Chad; U+1F1F9 U+1F1E9 -๐Ÿ‡น๐Ÿ‡ซ flag: French Southern Territories; U+1F1F9 U+1F1EB -๐Ÿ‡น๐Ÿ‡ฌ flag: Togo; U+1F1F9 U+1F1EC -๐Ÿ‡น๐Ÿ‡ญ flag: Thailand; U+1F1F9 U+1F1ED -๐Ÿ‡น๐Ÿ‡ฏ flag: Tajikistan; U+1F1F9 U+1F1EF -๐Ÿ‡น๐Ÿ‡ฐ flag: Tokelau; U+1F1F9 U+1F1F0 -๐Ÿ‡น๐Ÿ‡ฑ flag: Timor-Leste; U+1F1F9 U+1F1F1 -๐Ÿ‡น๐Ÿ‡ฒ flag: Turkmenistan; U+1F1F9 U+1F1F2 -๐Ÿ‡น๐Ÿ‡ณ flag: Tunisia; U+1F1F9 U+1F1F3 -๐Ÿ‡น๐Ÿ‡ด flag: Tonga; U+1F1F9 U+1F1F4 -๐Ÿ‡น๐Ÿ‡ท flag: Turkey; U+1F1F9 U+1F1F7 -๐Ÿ‡น๐Ÿ‡น flag: Trinidad & Tobago; U+1F1F9 U+1F1F9 -๐Ÿ‡น๐Ÿ‡ป flag: Tuvalu; U+1F1F9 U+1F1FB -๐Ÿ‡น๐Ÿ‡ผ flag: Taiwan; U+1F1F9 U+1F1FC -๐Ÿ‡น๐Ÿ‡ฟ flag: Tanzania; U+1F1F9 U+1F1FF -๐Ÿ‡บ๐Ÿ‡ฆ flag: Ukraine; U+1F1FA U+1F1E6 -๐Ÿ‡บ๐Ÿ‡ฌ flag: Uganda; U+1F1FA U+1F1EC -๐Ÿ‡บ๐Ÿ‡ฒ flag: U.S. Outlying Islands; U+1F1FA U+1F1F2 -๐Ÿ‡บ๐Ÿ‡ณ flag: United Nations; U+1F1FA U+1F1F3 -๐Ÿ‡บ๐Ÿ‡ธ flag: United States; U+1F1FA U+1F1F8 -๐Ÿ‡บ๐Ÿ‡พ flag: Uruguay; U+1F1FA U+1F1FE -๐Ÿ‡บ๐Ÿ‡ฟ flag: Uzbekistan; U+1F1FA U+1F1FF -๐Ÿ‡ป๐Ÿ‡ฆ flag: Vatican City; U+1F1FB U+1F1E6 -๐Ÿ‡ป๐Ÿ‡จ flag: St. Vincent & Grenadines; U+1F1FB U+1F1E8 -๐Ÿ‡ป๐Ÿ‡ช flag: Venezuela; U+1F1FB U+1F1EA -๐Ÿ‡ป๐Ÿ‡ฌ flag: British Virgin Islands; U+1F1FB U+1F1EC -๐Ÿ‡ป๐Ÿ‡ฎ flag: U.S. Virgin Islands; U+1F1FB U+1F1EE -๐Ÿ‡ป๐Ÿ‡ณ flag: Vietnam; U+1F1FB U+1F1F3 -๐Ÿ‡ป๐Ÿ‡บ flag: Vanuatu; U+1F1FB U+1F1FA -๐Ÿ‡ผ๐Ÿ‡ซ flag: Wallis & Futuna; U+1F1FC U+1F1EB -๐Ÿ‡ผ๐Ÿ‡ธ flag: Samoa; U+1F1FC U+1F1F8 -๐Ÿ‡ฝ๐Ÿ‡ฐ flag: Kosovo; U+1F1FD U+1F1F0 -๐Ÿ‡พ๐Ÿ‡ช flag: Yemen; U+1F1FE U+1F1EA -๐Ÿ‡พ๐Ÿ‡น flag: Mayotte; U+1F1FE U+1F1F9 -๐Ÿ‡ฟ๐Ÿ‡ฆ flag: South Africa; U+1F1FF U+1F1E6 -๐Ÿ‡ฟ๐Ÿ‡ฒ flag: Zambia; U+1F1FF U+1F1F2 -๐Ÿ‡ฟ๐Ÿ‡ผ flag: Zimbabwe; U+1F1FF U+1F1FC -๐Ÿด๓ ง๓ ข๓ ฅ๓ ฎ๓ ง๓ ฟ flag: England; U+1F3F4 U+E0067 U+E0062 U+E0065 U+E006E U+E0067 U+E007F -๐Ÿด๓ ง๓ ข๓ ณ๓ ฃ๓ ด๓ ฟ flag: Scotland; U+1F3F4 U+E0067 U+E0062 U+E0073 U+E0063 U+E0074 U+E007F -๐Ÿด๓ ง๓ ข๓ ท๓ ฌ๓ ณ๓ ฟ flag: Wales; U+1F3F4 U+E0067 U+E0062 U+E0077 U+E006C U+E0073 U+E007F diff --git a/.config/files b/.config/files deleted file mode 100644 index 6e07499..0000000 --- a/.config/files +++ /dev/null @@ -1,15 +0,0 @@ -bf ${XDG_CONFIG_HOME:-$HOME/.config}/files -bd ${XDG_CONFIG_HOME:-$HOME/.config}/directories -bw ${XDG_CONFIG_HOME:-$HOME/.config}/bookmarks -cfa ${XDG_CONFIG_HOME:-$HOME/.config}/aliasrc -cfz $ZDOTDIR/.zshrc -cfv ${XDG_CONFIG_HOME:-$HOME/.config}/nvim/init.vim -cfm ${XDG_CONFIG_HOME:-$HOME/.config}/mutt/muttrc -cfx ${XDG_CONFIG_HOME:-$HOME/.config}/Xresources -cfu ${XDG_CONFIG_HOME:-$HOME/.config}/newsboat/urls -cfn ${XDG_CONFIG_HOME:-$HOME/.config}/newsboat/config -cfmb ${XDG_CONFIG_HOME:-$HOME/.config}/ncmpcpp/bindings -cfmc ${XDG_CONFIG_HOME:-$HOME/.config}/ncmpcpp/config -cfk ${XDG_CONFIG_HOME:-$HOME/.config}/sxhkd/sxhkdrc -cfi ${XDG_CONFIG_HOME:-$HOME/.config}/i3/config -cfb ${XDG_CONFIG_HOME:-$HOME/.config}/i3blocks/config diff --git a/.config/fontconfig/fonts.conf b/.config/fontconfig/fonts.conf index 3427ece..761ae00 100755 --- a/.config/fontconfig/fonts.conf +++ b/.config/fontconfig/fonts.conf @@ -1,28 +1,40 @@ - - - serif - Linux Libertine - - - sans-serif - Cantarell - - - sans - Cantarell - - - monospace - Inconsolata - - - - - monospace - Symbola - - + + serif + + Libertinus Serif + Joy Pixels + Noto Color Emoji + FontAwesome + + + + sans-serif + + Libertinus Sans + Joy Pixels + Noto Color Emoji + FontAwesome + + + + sans + + Libertinus Sans + Joy Pixels + Noto Color Emoji + FontAwesome + + + + monospace + + Noto Sans Mono + Libertinus Mono + FontAwesome + Braille + + diff --git a/.config/gtk-2.0/gtkrc-2.0 b/.config/gtk-2.0/gtkrc-2.0 index 53337d1..da4d02e 100644 --- a/.config/gtk-2.0/gtkrc-2.0 +++ b/.config/gtk-2.0/gtkrc-2.0 @@ -1,11 +1,11 @@ # DO NOT EDIT! This file will be overwritten by LXAppearance. # Any customization should be done in ~/.gtkrc-2.0.mine instead. -include "/home/alex/.gtkrc-2.0.mine" -gtk-theme-name="Kripton" +include "~/.gtkrc-2.0.mine" +gtk-theme-name="Arc-Gruvbox" gtk-icon-theme-name="Adwaita" gtk-font-name="Sans 10" -gtk-cursor-theme-name="Kripton" +gtk-cursor-theme-name="Adwaita" gtk-cursor-theme-size=0 gtk-toolbar-style=GTK_TOOLBAR_TEXT gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR diff --git a/.config/gtk-3.0/bookmarks b/.config/gtk-3.0/bookmarks deleted file mode 100644 index 76e0ff6..0000000 --- a/.config/gtk-3.0/bookmarks +++ /dev/null @@ -1,2 +0,0 @@ -file:///home/alex/.config/openvpn/cfgs -file:///home/alex/Drive diff --git a/.config/gtk-3.0/settings.ini b/.config/gtk-3.0/settings.ini index a20595c..371c307 100644 --- a/.config/gtk-3.0/settings.ini +++ b/.config/gtk-3.0/settings.ini @@ -1,6 +1,5 @@ [Settings] -#gtk-theme-name=Arc-Gruvbox -gtk-theme-name=Kripton +gtk-theme-name=Arc-Gruvbox gtk-icon-theme-name=Adwaita gtk-font-name=Sans 10 gtk-cursor-theme-size=0 diff --git a/.config/homepage/bookmarks b/.config/homepage/bookmarks deleted file mode 100644 index 81cbd56..0000000 --- a/.config/homepage/bookmarks +++ /dev/null @@ -1,15 +0,0 @@ -aur.archlinux.org/ -file:///home/dt/.surf/html/homepage.html -distrowatch.com/ -https://gitlab.com/dwt1 -https://www.youtube.com/c/DistroTube/ -https://www.patreon.com/distrotube -https://socialblade.com/youtube/c/distrotube -https://mastodon.technology/web/accounts/85897 -https://diasp.org/stream -https://www.reddit.com/r/linux/ -https://forum.members.fsf.org/ -google.com/?gws_rd=ssl -suckless.org/ -https://distrowatch.com/ -https://www.omgubuntu.co.uk/ diff --git a/.config/homepage/html/empty.html b/.config/homepage/html/empty.html deleted file mode 100644 index 020dbe3..0000000 --- a/.config/homepage/html/empty.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - vimb - - - - - - diff --git a/.config/homepage/html/homepage.html b/.config/homepage/html/homepage.html deleted file mode 100644 index 977d27a..0000000 --- a/.config/homepage/html/homepage.html +++ /dev/null @@ -1,151 +0,0 @@ - - - - - - - - Home - - - - - -
-
-
-
-
-
-
-
-
-
- -
- - - - diff --git a/.config/homepage/script.js b/.config/homepage/script.js deleted file mode 100644 index e69de29..0000000 diff --git a/.config/homepage/styles/archlinux.css b/.config/homepage/styles/archlinux.css deleted file mode 100644 index 85b71a2..0000000 --- a/.config/homepage/styles/archlinux.css +++ /dev/null @@ -1,186 +0,0 @@ -body { - font-size: 13px !important; - background: #282a36 !important; - color: #d0d0d0 !important; -} -a { - color: #9cc4ff !important; -} -#archnavbar { - min-height: 40px !important; - padding: 10px 15px !important; - background: #282a36 !important; - border-bottom: 0px !important; -} -.article-content p, h4 a { - font-size: 1.3em !important; -} -h4, h4 a, li a { - font-size: 1.3em !important; -} -h4 a, li a, #content h1, #content h2, #content h3 { - color: #82aaff !important; -} -#news h3 a { - font-size: 1.3em !important; - background: #82aaff !important; - color: #282a36 !important; -} -h3 span.arrow { - display: none !important; -} -#pkgsearch { - background: #9cc4ff !important; -} -label { - color: #282a36 !important; -} -.box { - font-size: 1.3em; - background: #000000 !important; - color: #d0d0d0 !important; - border: 1px solid #555 !important; -} -pre { - background: #9cc4ff !important; - margin: 1em 0px !important; - border: 1px solid #666666 !important; -} -code { - color: #282a36 !important; - background: #9cc4ff !important; -} -p code { - color: #000 !important; - font-size: 12px !important; - background: #ff8b92 !important; -} - - -dl dt{ - color: #ff8b92 !important; - font-size: 1.2em; -} -dd a{ - color: #82aaff !important; - font-size: 1.2em; -} - - -/* ARCH WIKI */ - -#mw-panel .portal .body li { - font-size: 0.9em !important; -} -#mw-panel .portal h3 { - color: #ff8b92 !important; - font-size: 0.9em !important; -} -#content { - background: #282a36 !important; - border: none !important; -} -#toc, .toc, .mw-warning, .toccolours { - background-color: #000000 !important; - border: 1px solid #666666 !important; - color: #d0d0d0 !important; -} -.tocnumber, .toctogglelabel { - color: #d0d0d0 !important; -} -.mw-body-content p { - color: #d0d0d0 !important; -} -div#mw-head { - top: 38px !important; -} -div.vectorTabs li.selected { - border: 1px solid #666666 !important; - border-bottom-color: #666666 !important; - background-color: #000000 !important; - padding-bottom: 20px !important; -} -.vectorTabs span { - background: none !important; -} -.catlinks { - border: 1px solid #666666 !important; - background-color: #000000 !important; -} -.mw-body, .parsoid-body { - color: #d0d0d0 !important; - font-size: 1.2em !important; -} - - -/* AUR */ -.results th { - background-color: #282a36 !important; -} -.results tr:nth-child(2n+1), #article-list tr:nth-child(2n+1) { - background: #282a36 !important; -} -.results tr:nth-child(2n), #article-list tr:nth-child(2n) { - background: #1f212a !important; -} - - - -/* ARCH FORUMS */ -#brdmenu, #brdmenu a { - background: #000000 !important; - border-color: #444444 !important; -} -#brdmenu.inbox { - margin-left: 30px !important; -} -.pun, .punwrap { - background: #282a36 !important; - border: none !important; -} -.pun .blocktable th { - background: #000000 !important; - border-color: #000 !important; - color: #ff8b92 !important; -} -#punindex .blocktable h2 { - font-size: 1.2em !important; - color: #ff8b92 !important; -} -tr.rowodd { - background: #282a36 !important; -} -tr.roweven { - background: #282a36 !important; -} -.pun .blocktable td { - border-color: #444444 !important; -} -.pun .blockpost { - background: #282a36 !important; - border-color: #444444 !important; -} -.pun .blockpost h2 { - background: #000000 !important; - border: none !important; - color: #82aaff !important; -} -.pun .blockpost .postbody, .pun .blockpost .postfoot { - background: #282a36 !important; - border-color: #444444 !important; -} -#punviewtopic .blockpost dt, #punmoderate .blockpost dt { - top: -1.8em !important; - color: #ff8b92 !important; -} -.pun .postmsg, #punhelp code, #punhelp samp { - color: #d0d0d0 !important; -} -.pun .codebox { - border-color: #444444 !important; - background: #9cc4ff !important; - color: #000000 !important; -} -.pun .codebox pre { - border: none !important; -} diff --git a/.config/homepage/styles/arcolinux-info.css b/.config/homepage/styles/arcolinux-info.css deleted file mode 100644 index 9b0b8d4..0000000 --- a/.config/homepage/styles/arcolinux-info.css +++ /dev/null @@ -1,27 +0,0 @@ -body { - font-size: 13px; - background-color: #282a36 !important; - color: #d0d0d0 !important; -} -#main-header { - background-color: #282a36 !important; - margin: 0; -} - -#et-navigation > ul > li > a { - color: #c3e88d !important; -} - -.widget_text .textwidget { - background-color: #434758 !important; - -} - -h4.widgettitle { - color: #d0d0d0 !important; - background-color: #434758 !important; -} - -.textwidget p { - color: #d0d0d0 !important; -} \ No newline at end of file diff --git a/.config/homepage/styles/arcolinuxforum.css b/.config/homepage/styles/arcolinuxforum.css deleted file mode 100644 index 58174a5..0000000 --- a/.config/homepage/styles/arcolinuxforum.css +++ /dev/null @@ -1,48 +0,0 @@ -body { - font-size: 13px; - background-color: #282a36 !important; - background-image: none !important; - color: #d0d0d0 !important; -} -h1 { - color: #e1acff !important; -} -.above { - border: 0px !important; - background: #282a36 !important; -} -.backhead { - background: #282a36 !important; - border: 0px !important; - box-shadow: inset 0px -1px 0 #282a36 !important; -} -.headerbar { - background: #282a36 !important; -} -.site-description p { - color: #c3e88d !important; -} -div#content { - background: #282a36 !important; -} -div.forabg { - background: #22232e !important; -} -dl.row-item { - color: #d0d0d0; - text-shadow: none; -} -ul.topiclist { - background: # !important; -} -li.row { - - background-color: #282a36 !important; - padding: 4px; - text-shadow: none; - -} -a.forumtitle { - color: #e1acff !important; - text-shadow: none; -} \ No newline at end of file diff --git a/.config/homepage/styles/empty.css b/.config/homepage/styles/empty.css deleted file mode 100644 index c7324a2..0000000 --- a/.config/homepage/styles/empty.css +++ /dev/null @@ -1,186 +0,0 @@ -body { - font-size: 13px !important; - background: #000000!important; - color: #d0d0d0 !important; -} -a { - color: #9cc4ff !important; -} -#archnavbar { - min-height: 40px !important; - padding: 10px 15px !important; - background: #282a36 !important; - border-bottom: 0px !important; -} -.article-content p, h4 a { - font-size: 1.3em !important; -} -h4, h4 a, li a { - font-size: 1.3em !important; -} -h4 a, li a, #content h1, #content h2, #content h3 { - color: #82aaff !important; -} -#news h3 a { - font-size: 1.3em !important; - background: #82aaff !important; - color: #282a36 !important; -} -h3 span.arrow { - display: none !important; -} -#pkgsearch { - background: #9cc4ff !important; -} -label { - color: #282a36 !important; -} -.box { - font-size: 1.3em; - background: #000000 !important; - color: #d0d0d0 !important; - border: 1px solid #555 !important; -} -pre { - background: #9cc4ff !important; - margin: 1em 0px !important; - border: 1px solid #666666 !important; -} -code { - color: #282a36 !important; - background: #9cc4ff !important; -} -p code { - color: #000 !important; - font-size: 12px !important; - background: #ff8b92 !important; -} - - -dl dt{ - color: #ff8b92 !important; - font-size: 1.2em; -} -dd a{ - color: #82aaff !important; - font-size: 1.2em; -} - - -/* ARCH WIKI */ - -#mw-panel .portal .body li { - font-size: 0.9em !important; -} -#mw-panel .portal h3 { - color: #ff8b92 !important; - font-size: 0.9em !important; -} -#content { - background: #282a36 !important; - border: none !important; -} -#toc, .toc, .mw-warning, .toccolours { - background-color: #000000 !important; - border: 1px solid #666666 !important; - color: #d0d0d0 !important; -} -.tocnumber, .toctogglelabel { - color: #d0d0d0 !important; -} -.mw-body-content p { - color: #d0d0d0 !important; -} -div#mw-head { - top: 38px !important; -} -div.vectorTabs li.selected { - border: 1px solid #666666 !important; - border-bottom-color: #666666 !important; - background-color: #000000 !important; - padding-bottom: 20px !important; -} -.vectorTabs span { - background: none !important; -} -.catlinks { - border: 1px solid #666666 !important; - background-color: #000000 !important; -} -.mw-body, .parsoid-body { - color: #d0d0d0 !important; - font-size: 1.2em !important; -} - - -/* AUR */ -.results th { - background-color: #282a36 !important; -} -.results tr:nth-child(2n+1), #article-list tr:nth-child(2n+1) { - background: #282a36 !important; -} -.results tr:nth-child(2n), #article-list tr:nth-child(2n) { - background: #1f212a !important; -} - - - -/* ARCH FORUMS */ -#brdmenu, #brdmenu a { - background: #000000 !important; - border-color: #444444 !important; -} -#brdmenu.inbox { - margin-left: 30px !important; -} -.pun, .punwrap { - background: #282a36 !important; - border: none !important; -} -.pun .blocktable th { - background: #000000 !important; - border-color: #000 !important; - color: #ff8b92 !important; -} -#punindex .blocktable h2 { - font-size: 1.2em !important; - color: #ff8b92 !important; -} -tr.rowodd { - background: #282a36 !important; -} -tr.roweven { - background: #282a36 !important; -} -.pun .blocktable td { - border-color: #444444 !important; -} -.pun .blockpost { - background: #282a36 !important; - border-color: #444444 !important; -} -.pun .blockpost h2 { - background: #000000 !important; - border: none !important; - color: #82aaff !important; -} -.pun .blockpost .postbody, .pun .blockpost .postfoot { - background: #282a36 !important; - border-color: #444444 !important; -} -#punviewtopic .blockpost dt, #punmoderate .blockpost dt { - top: -1.8em !important; - color: #ff8b92 !important; -} -.pun .postmsg, #punhelp code, #punhelp samp { - color: #d0d0d0 !important; -} -.pun .codebox { - border-color: #444444 !important; - background: #9cc4ff !important; - color: #000000 !important; -} -.pun .codebox pre { - border: none !important; -} diff --git a/.config/homepage/styles/homepage.css b/.config/homepage/styles/homepage.css deleted file mode 100644 index 6f94d49..0000000 --- a/.config/homepage/styles/homepage.css +++ /dev/null @@ -1,125 +0,0 @@ -@import url('https://fonts.googleapis.com/css?family=Roboto+Mono'); -@import url('https://fonts.googleapis.com/css?family=Roboto'); -@import url('https://fonts.googleapis.com/css?family=Anton'); - -body { - background-color: #282a36; - margin: 0px; -} - -.container { - width: 100%; - height: 100vh; - display: flex; - align-items: center; - justify-content: center; - flex-direction: column; -} - -#clock { - font-family: sans-serif; - font-size: 4.0rem; - font-weight: 600; - font-family: "Anton"; - color: #fff; - margin-bottom: .25em; -} - -#search { - width: 100%; - height: 100vh; - background-color: #000000; - display: none; - position: absolute; - box-sizing: border-box; - flex-direction: column; - align-items: center; - justify-content: center; -} - -#search-field { - width: 90%; - padding: .75em 1em; - box-sizing: border-box; - background-color: #000000; - border: solid 0px #000000; - font-family: "Roboto Mono"; - font-size: 4rem; - color: #f2f2f2; - outline: none; - border-radius: 3px; - margin-bottom: 1em; - text-align: center; -} - -.weather-container { - width: 30%; - background-color: #000000; - padding: 1em; - border-radius: 3px; - font-family: "Roboto Mono"; - font-size: 1.2rem; - color: #fff; - text-align: center; -} -.inline { - display: inline-block; -} - -.bookmark-container { - display: flex; - flex-direction: row; - justify-content: center; - width: 60%; - margin: 1em 0em; -} - -@media only screen and (max-width: 960px) { - .container { - height: auto; - } - #clock { - margin-top: 1em; - } - .container > .bookmark-container { - flex-direction: column; - width: 60%; - } - .bookmark-container > .bookmark-set { - width: auto; - margin: 1em 0em; - } -} - -.bookmark-set{ - padding: 1em; - background-color: #000000; - border-radius: 3px; - font-family: "Roboto Mono"; - font-size: .85rem; - width: 25%; - height: 16em; - margin: 0em .5em; -} -.bookmark-inner-container { - overflow-y: scroll; - height: 80%; - vertical-align: top; -} -.bookmark-title { - font-family: "Roboto"; - font-size: 1.2rem; - font-weight: 600; - color: #ededed; - margin: 0em 0em .35em 0em; -} -.bookmark { - text-decoration: none; - color: #8c8c8b; - display:block; - margin: .4em 0em; -} -.bookmark:hover { - color: #fff; -} - diff --git a/.config/homepage/styles/suckless.css b/.config/homepage/styles/suckless.css deleted file mode 100644 index 4b41535..0000000 --- a/.config/homepage/styles/suckless.css +++ /dev/null @@ -1,41 +0,0 @@ -body { - font-size: 13px; - background-color: #282a36 !important; - color: #d0d0d0 !important; -} - -#header { - background-color: #282a36 !important; - clear: both; - color: #c3e88d !important; -} - -a { - color: #82aaff !important; -} - -#header a { - color: #e1acff !important; -} - -#menu { - clear: both; - color: #c792ea; - font-weight: bold; - overflow: hidden; - padding: 0.7ex; - border: 0px !important; -} - -#menu a { - color: #d0d0d0 !important; -} - -#nav li a:hover { - background-color: #282a36 !important; -} - -h1, h2 { - color: #f07178 !important; -} - diff --git a/.config/homepage/styles/wikipedia.css b/.config/homepage/styles/wikipedia.css deleted file mode 100644 index b2127c8..0000000 --- a/.config/homepage/styles/wikipedia.css +++ /dev/null @@ -1,4 +0,0 @@ -* { - background-color: #282A36; - color: #eee; -} diff --git a/.config/lf/lfrc b/.config/lf/lfrc deleted file mode 100644 index 18176b9..0000000 --- a/.config/lf/lfrc +++ /dev/null @@ -1,70 +0,0 @@ -# Luke's lf settings - -# Basic vars -set shell sh -set previewer ~/.config/lf/scope -set shellopts '-eu' -set ifs "\n" -set scrolloff 10 -set color256 -set icons # Enable icons. Requires nerd fonts and LF_ICONS variable. - -# cmds/functions -cmd open ${{ - case $(file --mime-type $f -b) in - text/troff) man ./ $f;; - text/*) $EDITOR $fx;; - image/x-xcf|image/svg+xml) setsid gimp $f >/dev/null 2>&1 & ;; - image/*) rotdir $f | setsid sxiv -aio 2>&1 | lf-select & ;; - audio/*) mpv --input-ipc-server=/tmp/mpvsoc$(date +%%s) $f ;; - video/*) setsid mpv --input-ipc-server=/tmp/mpvsoc$(date +%%s) $f -quiet >/dev/null 2>&1 & ;; - application/pdf) setsid zathura $fx >/dev/null 2>&1 & ;; - *) for f in $fx; do setsid $OPENER $f >/dev/null 2>&1 & done;; - esac -}} - -cmd rename %[ -e $1 ] && printf "file exists" || mv $f $1 - -cmd delete ${{ - set -f - printf "%s\n\t" "$fx" - printf "delete?[y/N]" - read ans - [ $ans = "y" ] && rm -rf $fx -}} - -cmd moveto ${{ - set -f - clear; echo "Move to where?" - dest="$(cut -d' ' -f2- ~/.config/directories | fzf)" && - eval mv -iv $fx $dest && - notify-send "๐Ÿšš File(s) moved." "File(s) moved to $dest." -}} - -cmd copyto ${{ - set -f - clear; echo "Copy to where?" - dest="$(cut -d' ' -f2- ~/.config/directories | fzf)" && - eval cp -ivr $fx $dest && - notify-send "๐Ÿ“‹ File(s) copied." "File(s) copies to $dest." -}} - -# Bindings -map c $lf -remote "send $id cd $(cut -d' ' -f2 ~/.config/directories | fzf)" -map $lf -remote "send $id select '$(fzf)'" -map J $lf -remote "send $id cd $(cut -d' ' -f2 ~/.config/directories | fzf)" -map gh -map g top -map D delete -map C copyto -map M moveto -map a push %mkdir -map r push :rename -map R $lf -remote "send $id push :rename$f" -map reload -map shell -map x $$f -map X !$f -map o &mimeopen $f -map O $mimeopen --ask $f -map - $/home/alex/.config/lf/draw_img.sh $f diff --git a/.config/lf/scope b/.config/lf/scope deleted file mode 100755 index 94822ef..0000000 --- a/.config/lf/scope +++ /dev/null @@ -1,59 +0,0 @@ -#!/bin/bash - -set -C -f -u -#IFS=$'\n' -IFS="$(printf '%b_' '\n')"; IFS="${IFS%_}" - -# ANSI color codes are supported. -# STDIN is disabled, so interactive scripts won't work properly - -# This script is considered a configuration file and must be updated manually. - -# Meanings of exit codes: -# code | meaning | action of ranger -# -----+------------+------------------------------------------- -# 0 | success | Display stdout as preview -# 1 | no preview | Display no preview at all -# 2 | plain text | Display the plain content of the file - -# Script arguments -FILE_PATH="${1}" # Full path of the highlighted file -HEIGHT="${2}" - -#FILE_EXTENSION="${FILE_PATH##*.}" -#FILE_EXTENSION_LOWER=$(echo ${FILE_EXTENSION} | tr '[:upper:]' '[:lower:]') - -# Settings -HIGHLIGHT_SIZE_MAX=262143 # 256KiB -HIGHLIGHT_TABWIDTH=8 -HIGHLIGHT_STYLE='pablo' - - -handle_mime() { - local mimetype="${1}" - case "${mimetype}" in - text/html) w3m -dump "${FILE_PATH}" ;; - text/troff) man ./ "${FILE_PATH}" | col -b ;; - text/* | */xml) - if [ "$( stat --printf='%s' -- "${FILE_PATH}" )" -gt "${HIGHLIGHT_SIZE_MAX}" ]; then - exit 2 - fi - if [ "$( tput colors )" -ge 256 ]; then - local highlight_format='xterm256' - else - local highlight_format='ansi' - fi - highlight --replace-tabs="${HIGHLIGHT_TABWIDTH}" --out-format="${highlight_format}" \ - --style="${HIGHLIGHT_STYLE}" --force -- "${FILE_PATH}" ;; - application/zip) atool --list -- "${FILE_PATH}" ;; - image/*) chafa --fill=block --symbols=block -c 256 -s 80x"${HEIGHT}" "${FILE_PATH}" || exit 1;; - audio/*|application/octet-stream) mediainfo "${FILE_PATH}" || exit 1;; - video/*) ffmpegthumbnailer -s 0 -i "${FILE_PATH}" -m -o "$HOME/.cache/thumb.jpg" && chafa --fill=all --symbols=all -c 256 -s 80x80 "$HOME/.cache/thumb.jpg" || exit 1;; - */pdf) pdftotext -l 10 -nopgbrk -q -- "${FILE_PATH}" - ;; - *opendocument*) odt2txt "${FILE_PATH}" ;; - esac -} - -MIMETYPE="$( file --dereference --brief --mime-type -- "${FILE_PATH}" )" -handle_mime "${MIMETYPE}" -exit 1 diff --git a/.config/mbsync/mailsync.patch b/.config/mbsync/mailsync.patch new file mode 100644 index 0000000..43eb4d9 --- /dev/null +++ b/.config/mbsync/mailsync.patch @@ -0,0 +1,4 @@ +41c41 +< *systemd*|*openrc*) export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$(id -u)/bus ;; +--- +> *systemd*|*openrc*) export DBUS_SESSION_BUS_ADDRESS=$(cat /tmp/dbus_session_bus_address);; diff --git a/.config/mbsync/patch_mailsync.sh b/.config/mbsync/patch_mailsync.sh new file mode 100644 index 0000000..22cb9a0 --- /dev/null +++ b/.config/mbsync/patch_mailsync.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +cd bin +patch -p1 < mailsync.patch diff --git a/.config/mimeapps.list b/.config/mimeapps.list new file mode 100644 index 0000000..9124fce --- /dev/null +++ b/.config/mimeapps.list @@ -0,0 +1,20 @@ +[Default Applications] + +# xdg-open will use these settings to determine how to open filetypes. +# These .desktop entries can also be seen and changed in ~/.local/share/applications/ + +text/x-shellscript=text.desktop; +x-scheme-handler/magnet=torrent.desktop; +application/x-bittorrent=torrent.desktop; +x-scheme-handler/mailto=mail.desktop; +text/plain=text.desktop; +application/postscript=pdf.desktop; +application/pdf=pdf.desktop; +image/png=img.desktop; +image/jpeg=img.desktop; +image/gif=img.desktop; +application/rss+xml=rss.desktop +video/x-matroska=video.desktop +video/mp4=video.desktop +x-scheme-handler/lbry=lbry.desktop +inode/directory=file.desktop diff --git a/.config/mpd/mpd.conf b/.config/mpd/mpd.conf index 7724068..fce25b4 100644 --- a/.config/mpd/mpd.conf +++ b/.config/mpd/mpd.conf @@ -1,27 +1,21 @@ -db_file "~/.config/mpd/database" -log_file "~/.config/mpd/log" -music_directory "~/msc" -playlist_directory "~/.config/mpd/playlists" -pid_file "~/.config/mpd/pid" -state_file "~/.config/mpd/state" -sticker_file "~/.config/mpd/sticker.sql" +music_directory "~/msc" +playlist_directory "~/.config/mpd/playlists" auto_update "yes" - bind_to_address "127.0.0.1" restore_paused "yes" max_output_buffer_size "16384" -max_playlist_length "300000" audio_output { - type "pulse" - name "pulse audio" - mixer_type "software" + type "pulse" + name "pulse" + #type "alsa" + #name "ALSA" } audio_output { -type "fifo" -name "toggle_visualizer" -path "/tmp/mpd.fifo" -format "44100:16:2" + type "fifo" + name "Visualizer feed" + path "/tmp/mpd.fifo" + format "44100:16:2" } diff --git a/.config/mpd/playlists/lofi.m3u b/.config/mpd/playlists/lofi.m3u deleted file mode 100644 index 9c96d37..0000000 --- a/.config/mpd/playlists/lofi.m3u +++ /dev/null @@ -1,5 +0,0 @@ -lofi/20190127-ใ€๏ผก๏ผณ๏ผซใ€€๏ผญ๏ผฅใ€€๏ผฏ๏ผต๏ผดใ€€๏ผฏ๏ผฎใ€€๏ผกใ€€๏ผค๏ผก๏ผด๏ผฅใ€‘_ Japanese Lofi _ Japanese_Anime Lofi Hip Hop Mix.m4a -lofi/20170505-close your eyes (lo-fi_chill mix).mkv -lofi/20191208-1 A.M Study Session ๐Ÿ“š - [lofi hip hop_chill beats].opus -lofi/20190915-i found my home in your arms - lofi hip hop mix.opus -lofi/20200316-Just take care of yourself โ— lofi hip hop mix โ— Nostalgia.opus diff --git a/.config/mpv/input.conf b/.config/mpv/input.conf index 5c957f1..2ef914e 100644 --- a/.config/mpv/input.conf +++ b/.config/mpv/input.conf @@ -61,8 +61,8 @@ j no-osd seek -5 exact # seek exactly 5 seconds backward #Alt+right add video-pan-x -0.1 # move the video left #Alt+up add video-pan-y 0.1 # move the video down #Alt+down add video-pan-y -0.1 # move the video up -#Alt++ add video-zoom 0.1 # zoom in -#Alt+- add video-zoom -0.1 # zoom out +Alt++ add video-zoom 0.1 # zoom in +Alt+- add video-zoom -0.1 # zoom out #Alt+BS set video-zoom 0 ; set video-pan-x 0 ; set video-pan-y 0 # reset zoom and pan settings #PGUP add chapter 1 # seek to the next chapter #PGDWN add chapter -1 # seek to the previous chapter @@ -157,7 +157,8 @@ j no-osd seek -5 exact # seek exactly 5 seconds backward #ctrl+w quit #E cycle edition # switch edition #l ab-loop # set/clear A-B loop points -#L cycle-values loop-file "inf" "no" # toggle infinite looping +ctrl+l cycle-values loop-playlist yes no ; show-text "${?=loop-playlist==inf:Playlist looping enabled}${?=loop-playlist==no:Playlist looping disabled}" +L cycle-values loop-file "inf" "no" # toggle infinite looping #ctrl+c quit 4 #DEL script-binding osc/visibility # cycle OSC visibility between never, auto (mouse-move) and always #ctrl+h cycle-values hwdec "auto" "no" # toggle hardware decoding diff --git a/.config/mpv/script-opts/youtube-upnext.conf b/.config/mpv/script-opts/youtube-upnext.conf index 3c56ce0..55f6486 100644 --- a/.config/mpv/script-opts/youtube-upnext.conf +++ b/.config/mpv/script-opts/youtube-upnext.conf @@ -17,7 +17,7 @@ cursor_selected=โ— - cursor_unselected=โ—‹ - # font size scales by window, if false requires larger font and padding sizes -scale_playlist_by_window=no +scale_playlist_by_window=yes # playlist ass style overrides inside curly brackets, \keyvalue is one field, extra \ for escape in lua # example {\\fnUbuntu\\fs10\\b0\\bord1} equals: font=Ubuntu, size=10, bold=no, border=1 @@ -54,4 +54,4 @@ check_certificate=yes # If you don't set this, the script may create a cookie file for you # For example "C:\\Users\\Username\\cookies.txt" # Or "C:/Users/Username/cookies.txt" -#cookies=cookies.txt \ No newline at end of file +#cookies=cookies.txt diff --git a/.config/mpv/scripts/modules.lua b/.config/mpv/scripts/modules.lua new file mode 100644 index 0000000..703f372 --- /dev/null +++ b/.config/mpv/scripts/modules.lua @@ -0,0 +1,3 @@ +local mpv_config_dir_path = require("mp").command_native({"expand-path", "~~/"}) +function load(relative_path) dofile(mpv_config_dir_path .. "/script_modules/" .. relative_path) end +load("mpvSockets/mpvSockets.lua") diff --git a/.config/mpv/scripts/sponsorblock-minimal.lua b/.config/mpv/scripts/sponsorblock-minimal.lua new file mode 120000 index 0000000..cb3390f --- /dev/null +++ b/.config/mpv/scripts/sponsorblock-minimal.lua @@ -0,0 +1 @@ +/usr/lib/mpv/sponsorblock-minimal.lua \ No newline at end of file diff --git a/.config/mpv/scripts/youtube-upnext.lua b/.config/mpv/scripts/youtube-upnext.lua index 15e7f8c..9c6873d 100644 --- a/.config/mpv/scripts/youtube-upnext.lua +++ b/.config/mpv/scripts/youtube-upnext.lua @@ -33,7 +33,7 @@ local opts = { cursor_unselected = "โ—‹ ", --font size scales by window, if false requires larger font and padding sizes - scale_playlist_by_window=false, + scale_playlist_by_window=true, --playlist ass style overrides inside curly brackets, \keyvalue is one field, extra \ for escape in lua --example {\\fnUbuntu\\fs10\\b0\\bord1} equals: font=Ubuntu, size=10, bold=no, border=1 @@ -225,6 +225,7 @@ local function get_invidious(url) label=v.title .. " - " .. v.author, file=string.format(opts.youtube_url, v.videoId) }) + msg.verbose(v.author) end mp.osd_message("upnext fetch from Invidious succeeded", 10) return res diff --git a/.config/mutt/accounts/1-abocken@ethz.ch.muttrc b/.config/mutt/accounts/1-abocken@ethz.ch.muttrc new file mode 100644 index 0000000..3c92608 --- /dev/null +++ b/.config/mutt/accounts/1-abocken@ethz.ch.muttrc @@ -0,0 +1,47 @@ +# vim: filetype=neomuttrc +# muttrc file for account abocken@ethz.ch +set realname = "Alexander Bocken" +set from = "abocken@ethz.ch" +set sendmail = "msmtp -a abocken@ethz.ch" +alias me Alexander Bocken +set folder = "/home/alex/.local/share/mail/abocken@ethz.ch" +set header_cache = /home/alex/.cache/mutt-wizard/abocken@ethz.ch/headers +set message_cachedir = /home/alex/.cache/mutt-wizard/abocken@ethz.ch/bodies +set mbox_type = Maildir + + +bind index,pager gg noop +bind index,pager g noop +bind index,pager M noop +bind index,pager C noop +bind index gg first-entry +unmailboxes * +unalternates * +unset signature +unmacro index o +macro index o "mailsync abocken@ethz.ch" "run mbsync to sync abocken@ethz.ch" + +mailboxes "=Calendar" "=Deleted Items" "=Drafts" "=INBOX" "=Journal" "=Junk E-Mail" "=Notes" "=Outbox" "=Sent" "=Sent Items" "=Tasks" "=Trash" +set postponed = "+Drafts" +macro index,pager gd "=Drafts" "go to drafts" +macro index,pager Md ";=Drafts" "move mail to drafts" +macro index,pager Cd ";=Drafts" "copy mail to drafts" +macro index,pager gi "=INBOX" "go to inbox" +macro index,pager Mi ";=INBOX" "move mail to inbox" +macro index,pager Ci ";=INBOX" "copy mail to inbox" +set spoolfile = "+INBOX" +macro index,pager gj "=Junk" "go to junk" +macro index,pager Mj ";=Junk" "move mail to junk" +macro index,pager Cj ";=Junk" "copy mail to junk" +set record = "+Sent" +macro index,pager gs "=Sent" "go to sent" +macro index,pager Ms ";=Sent" "move mail to sent" +macro index,pager Cs ";=Sent" "copy mail to sent" +set record = "+Sent" +macro index,pager gs "=Sent" "go to sent" +macro index,pager Ms ";=Sent" "move mail to sent" +macro index,pager Cs ";=Sent" "copy mail to sent" +macro index,pager gt "=Trash" "go to trash" +macro index,pager Mt ";=Trash" "move mail to trash" +macro index,pager Ct ";=Trash" "copy mail to trash" +set trash = "+Trash" diff --git a/.config/mutt/accounts/alexander@aaathats3as.com.muttrc b/.config/mutt/accounts/alexander@aaathats3as.com.muttrc new file mode 100644 index 0000000..c9ba7ac --- /dev/null +++ b/.config/mutt/accounts/alexander@aaathats3as.com.muttrc @@ -0,0 +1,22 @@ +# vim: filetype=neomuttrc +# muttrc file for account alexander@aaathats3as.com +set realname = "Alexander" +set from = "alexander@aaathats3as.com" +set sendmail = "msmtp -a alexander@aaathats3as.com" +alias me Alexander +set folder = "/home/alex/.local/share/mail/alexander@aaathats3as.com" +set header_cache = /home/alex/.cache/mutt-wizard/alexander@aaathats3as.com/headers +set message_cachedir = /home/alex/.cache/mutt-wizard/alexander@aaathats3as.com/bodies +set mbox_type = Maildir +set hostname = "aaathats3as.com" +source /usr/share/mutt-wizard/switch.muttrc +set spoolfile = +INBOX +set postponed = +Drafts +set trash = +Trash +set record = +Sent + +macro index o "mailsync alexander@aaathats3as.com" "run mbsync to sync alexander@aaathats3as.com" +macro index \eg "unset wait_keygpg --list-secret-keys; printf 'Enter email ID of user to publish: '; read eID; printf 'Enter fingerprint of GPG key to publish: '; read eFGPT; /usr/libexec/gpg-wks-client --create \$eFGPT \$eID | msmtp --read-envelope-from --read-recipients -a alexander@aaathats3as.com" "publish GPG key to WKS provider" +macro index \eh "/usr/libexec/gpg-wks-client --receive | msmtp --read-envelope-from --read-recipients -a alexander@aaathats3as.com" "confirm GPG publication" + +mailboxes "=Junk" "=Trash" "=INBOX" diff --git a/.config/mutt/accounts/alexander@bocken.org.muttrc b/.config/mutt/accounts/alexander@bocken.org.muttrc new file mode 100644 index 0000000..aa047db --- /dev/null +++ b/.config/mutt/accounts/alexander@bocken.org.muttrc @@ -0,0 +1,22 @@ +# vim: filetype=neomuttrc +# muttrc file for account alexander@bocken.org +set realname = "Alexander Bocken" +set from = "alexander@bocken.org" +set sendmail = "msmtp -a alexander@bocken.org" +alias me Alexander Bocken +set folder = "/home/alex/.local/share/mail/alexander@bocken.org" +set header_cache = /home/alex/.cache/mutt-wizard/alexander@bocken.org/headers +set message_cachedir = /home/alex/.cache/mutt-wizard/alexander@bocken.org/bodies +set mbox_type = Maildir +set hostname = "bocken.org" +#source /usr/share/mutt-wizard/switch.muttrc +set spoolfile = +INBOX +set postponed = +Drafts +set trash = +Trash +set record = +Sent + +macro index o "mailsync alexander@bocken.org" "run mbsync to sync alexander@bocken.org" +macro index \eg "unset wait_keygpg --list-secret-keys; printf 'Enter email ID of user to publish: '; read eID; printf 'Enter fingerprint of GPG key to publish: '; read eFGPT; /usr/lib/gnupg/gpg-wks-client --create \$eFGPT \$eID | msmtp --read-envelope-from --read-recipients -a alexander@bocken.org" "publish GPG key to WKS provider" +macro index \eh "/usr/lib/gnupg/gpg-wks-client --receive | msmtp --read-envelope-from --read-recipients -a alexander@bocken.org" "confirm GPG publication" + +mailboxes "=Archive/Archive" "=Trash/Trash" "=Sent" "=Junk" "=Drafts" "=INBOX" diff --git a/.config/mutt/mailcap b/.config/mutt/mailcap deleted file mode 100644 index 8db666f..0000000 --- a/.config/mutt/mailcap +++ /dev/null @@ -1,25 +0,0 @@ -text/plain; $EDITOR %s ; -text/html; openfile %s ; nametemplate=%s.html -text/html; lynx -assume_charset=%{charset} -display_charset=utf-8 -dump %s; nametemplate=%s.html; copiousoutput; -image/*; openfile %s ; -video/*; setsid mpv --quiet %s &; copiousoutput -application/pdf; openfile %s ; -application/pgp-encrypted; gpg -d '%s'; copiousoutput; -application/pgp-keys; gpg --import '%s'; copiousoutput; - -## PDF -#application;zathura %s -#image/pdf;zathura %s -## Images -#image/bmp;sxiv %s -#image/gif;sxiv %s -#image/libm;sxiv %s -#image/jpg;sxiv %s -#image/jpeg;sxiv %s -#image/png;sxiv %s -#image/tiff;sxiv %s -#image/x-png;sxiv %s - -#Text -#text/html; qutebrowser %s -text/calendar; calendaradd %s diff --git a/.config/mutt/muttrc b/.config/mutt/muttrc index 556a192..1f04bc6 100644 --- a/.config/mutt/muttrc +++ b/.config/mutt/muttrc @@ -1,81 +1,19 @@ # vim: filetype=neomuttrc -source /usr/local/share/mutt-wizard/mutt-wizard.muttrc # mw-autogenerated -set mailcap_path = /home/alex/.config/mutt/mailcap #overwrite default mailcap location +source /usr/share/mutt-wizard/mutt-wizard.muttrc +source /home/alex/.config/mutt/accounts/alexander@bocken.org.muttrc +macro index,pager i1 'source /home/alex/.config/mutt/accounts/alexander@bocken.org.muttrc!;' "switch to alexander@bocken.org" +macro index,pager i2 'source /home/alex/.config/mutt/accounts/1-abocken@ethz.ch.muttrc!;' "switch to abocken@ethz.ch" +set forward_attachments = ask-yes +macro compose m \ +"set pipe_decode\ +pandoc -f gfm -t plain -o /tmp/msg.txt\ +pandoc -s --self-contained -o /tmp/msg.html --resource-path ~/.config/mutt/templates/ --template email\ +unset pipe_decode\ +/tmp/msg.txt\ +/tmp/msg.html\ +" \ +"Convert markdown to HTML5 and plaintext alternative content types" -macro index,pager i2 'source /home/alex/.config/mutt/accounts/2-ethz.muttrc!;' "switch to abocken@ethz.ch" # mw-autogenerated -source /home/alex/.config/mutt/accounts/1-bocken.muttrc # mw-autogenerated -macro index,pager i1 'source /home/alex/.config/mutt/accounts/1-bocken.muttrc!;' "switch to alexander@bocken.org" # mw-autogenerated -macro index,pager i3 'source /home/alex/.config/mutt/accounts/3-moodle.muttrc!;' "switch to moodle@bocken.org" # mw-autogenerated -macro index,pager i4 'source /home/alex/.config/mutt/accounts/5-bockenspam.muttrc!;' "switch to spam@bocken.org" # mw-autogenerated - -# Default index colors: -color index default default '.*' -color index_author cyan default '.*' -color index_number black default -color index_subject blue default '.*' - -# New mail is boldened: -color index brightwhite black "~N" -color index_author brightwhite black "~N" -color index_subject brightwhite black "~N" - -# Tagged mail is highlighted: -color index brightdefault blue "~T" -color index_author brightcyan blue "~T" -color index_subject brightblue blue "~T" - -# Other colors and aesthetic settings: -mono bold bold -mono underline underline -mono indicator reverse -mono error bold -color normal default default -color indicator brightblack blue -color sidebar_highlight red default -color sidebar_divider brightblack black -color sidebar_flagged red black -color sidebar_new green black -color normal brightblue default -color error red default -color tilde black default -color message cyan default -color markers red white -color attachment white default -color search brightmagenta default -color status white black -color hdrdefault brightgreen default -color quoted green default -color quoted1 blue default -color quoted2 cyan default -color quoted3 yellow default -color quoted4 red default -color quoted5 brightred default -color signature brightgreen default -color bold black default -color underline black default -color normal default default - -# Regex highlighting: -color header blue default ".*" -color header brightmagenta default "^(From)" -color header brightcyan default "^(Subject)" -color header brightwhite default "^(CC|BCC)" -color body brightred default "[\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+" # Email addresses -color body brightblue default "(https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+" # URL -color body green default "\`[^\`]*\`" # Green text between ` and ` -color body brightblue default "^# \.*" # Headings as bold blue -color body brightcyan default "^## \.*" # Subheadings as bold cyan -color body brightblack default "^### \.*" # Subsubheadings as bold green -color body blue default "^(\t| )*(-|\\*) \.*" # List items as blue -color body brightcyan default "[;:][-o][)/(|]" # emoticons -color body brightcyan default "[;:][)(|]" # emoticons -color body brightcyan default "[ ][*][^*]*[*][ ]?" # more emoticon? -color body brightcyan default "[ ]?[*][^*]*[*][ ]" # more emoticon? -color body red default "(BAD signature)" -color body cyan default "(Good signature)" -color body brightblack default "^gpg: Good signature .*" -color body brightyellow default "^gpg: " -color body brightyellow red "^gpg: BAD signature from.*" -mono body bold "^gpg: Good signature" -mono body bold "^gpg: BAD signature from.*" -color body cyan default "([a-z][a-z0-9+-]*://(((([a-z0-9_.!~*'();:&=+$,-]|%[0-9a-f][0-9a-f])*@)?((([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?|[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+)(:[0-9]+)?)|([a-z0-9_.!~*'()$,;:@&=+-]|%[0-9a-f][0-9a-f])+)(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?(#([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?|(www|ftp)\\.(([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?(:[0-9]+)?(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?(#([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?)[^].,:;!)? \t\r\n<>\"]" +set query_command = "abook --config $XDG_CONFIG_HOME/abook/abookrc --datafile $XDG_DATA_HOME/abook/addressbook --mutt-query '%s'" +macro index,pager a "set my_pipe_decode=\$pipe_decode pipe_decodeabook --config $XDG_CONFIG_HOME/abook/abookrc --datafile $XDG_DATA_HOME/abook/addressbook --add-emailset pipe_decode=\$my_pipe_decode; unset my_pipe_decode" "add the sender address to abook" +macro index,pager i3 'source /home/alex/.config/mutt/accounts/alexander@aaathats3as.com.muttrc!;' "switch to alexander@aaathats3as.com" diff --git a/.config/mutt/templates/email.html b/.config/mutt/templates/email.html new file mode 100644 index 0000000..90015f0 --- /dev/null +++ b/.config/mutt/templates/email.html @@ -0,0 +1,29 @@ + + + + + + + + +$for(css)$ + +$endfor$ + +$for(header-includes)$ + $header-includes$ +$endfor$ + + + $body$ + $for(include-after)$ + $include-after$ + $endfor$ + + diff --git a/.config/ncmpcpp/config b/.config/ncmpcpp/config index 44f8ae7..00f499a 100644 --- a/.config/ncmpcpp/config +++ b/.config/ncmpcpp/config @@ -352,7 +352,7 @@ media_library_albums_split_by_date = no # #lines_scrolled = 2 # -lyrics_fetchers = genius, azlyrics, sing365, metrolyrics, justsomelyrics, jahlyrics, plyrics, tekstowo, internet +lyrics_fetchers = azlyrics, sing365, metrolyrics, justsomelyrics, jahlyrics, plyrics, tekstowo, internet, genius # #follow_now_playing_lyrics = no # diff --git a/.config/ncmpcpp/config_ b/.config/ncmpcpp/config_ deleted file mode 100644 index 7c6452e..0000000 --- a/.config/ncmpcpp/config_ +++ /dev/null @@ -1,545 +0,0 @@ -############################################################################## -## This is the example configuration file. Copy it to $HOME/.ncmpcpp/config ## -## or $XDG_CONFIG_HOME/ncmpcpp/config and set up your preferences. ## -############################################################################## -# -##### directories ###### -## -## Directory for storing ncmpcpp related files. Changing it is useful if you -## want to store everything somewhere else and provide command line setting for -## alternative location to config file which defines that while launching -## ncmpcpp. -## -# -ncmpcpp_directory = ~/.config/ncmpcpp -# -## -## Directory for storing downloaded lyrics. It defaults to ~/.lyrics since other -## MPD clients (eg. ncmpc) also use that location. -## -# -lyrics_directory = ~/.config/lyrics -# -##### connection settings ##### -# -#mpd_host = 127.0.0.1 -# -#mpd_port = 6600 -# -#mpd_connection_timeout = 5 -# -## Needed for tag editor and file operations to work. -## -mpd_music_dir = "~/drv/Music" -# -#mpd_crossfade_time = 5 -# -##### music visualizer ##### -## -## Note: In order to make music visualizer work you'll need to use mpd fifo -## output, whose format parameter has to be set to 44100:16:1 for mono -## visualization or 44100:16:2 for stereo visualization. Example configuration -## (it has to be put into mpd.conf): -## -## audio_output { -## type "fifo" -## name "Visualizer feed" -## path "/tmp/mpd.fifo" -## format "44100:16:2" -## } -## -# -#visualizer_fifo_path = /tmp/mpd.fifo -# -## -## Note: Below parameter is needed for ncmpcpp to determine which output -## provides data for visualizer and thus allow syncing between visualization and -## sound as currently there are some problems with it. -## -# -#visualizer_output_name = Visualizer feed -# -## -## If you set format to 44100:16:2, make it 'yes'. -## -#visualizer_in_stereo = yes -# -## -## Note: Below parameter defines how often ncmpcpp has to "synchronize" -## visualizer and audio outputs. 30 seconds is optimal value, but if you -## experience synchronization problems, set it to lower value. Keep in mind -## that sane values start with >=10. -## -# -#visualizer_sync_interval = 30 -# -## -## Note: To enable spectrum frequency visualization you need to compile ncmpcpp -## with fftw3 support. -## -# -## Available values: spectrum, wave, wave_filled, ellipse. -## -visualizer_type = spectrum -# -#visualizer_look = โ—ๅ -#visualizer_look = ๅ -# -#visualizer_color = blue, cyan, green, yellow, magenta, red -# -## Alternative subset of 256 colors for terminals that support it. -## -#visualizer_color = 41, 83, 119, 155, 185, 215, 209, 203, 197, 161 -# -##### system encoding ##### -## -## ncmpcpp should detect your charset encoding but if it failed to do so, you -## can specify charset encoding you are using here. -## -## Note: You can see whether your ncmpcpp build supports charset detection by -## checking output of `ncmpcpp --version`. -## -## Note: Since MPD uses UTF-8 by default, setting this option makes sense only -## if your encoding is different. -## -# -#system_encoding = "" -# -##### delays ##### -# -## Time of inactivity (in seconds) after playlist highlighting will be disabled -## (0 = always on). -## -#playlist_disable_highlight_delay = 5 -# -## Defines how long messages are supposed to be visible. -## -message_delay_time = 1 -# -##### song format ##### -## -## For a song format you can use: -## -## %l - length -## %f - filename -## %D - directory -## %a - artist -## %A - album artist -## %t - title -## %b - album -## %y - date -## %n - track number (01/12 -> 01) -## %N - full track info (01/12 -> 01/12) -## %g - genre -## %c - composer -## %p - performer -## %d - disc -## %C - comment -## %P - priority -## $R - begin right alignment -## -## If you want to make sure that a part of the format is displayed only when -## certain tags are present, you can archieve it by grouping them with brackets, -## e.g. '{%a - %t}' will be evaluated to 'ARTIST - TITLE' if both tags are -## present or '' otherwise. It is also possible to define a list of -## alternatives by providing several groups and separating them with '|', -## e.g. '{%t}|{%f}' will be evaluated to 'TITLE' or 'FILENAME' if the former is -## not present. -## -## Note: If you want to set limit on maximal length of a tag, just put the -## appropriate number between % and character that defines tag type, e.g. to -## make album take max. 20 terminal cells, use '%20b'. -## -## In addition, formats support markers used for text attributes. They are -## followed by character '$'. After that you can put: -## -## - 0 - default window color (discards all other colors) -## - 1 - black -## - 2 - red -## - 3 - green -## - 4 - yellow -## - 5 - blue -## - 6 - magenta -## - 7 - cyan -## - 8 - white -## - 9 - end of current color -## - b - bold text -## - u - underline text -## - r - reverse colors -## - a - use alternative character set -## -## If you don't want to use a non-color attribute anymore, just put it again, -## but this time insert character '/' between '$' and attribute character, -## e.g. {$b%t$/b}|{$r%f$/r} will display bolded title tag or filename with -## reversed colors. -## -## If you want to use 256 colors and/or background colors in formats (the naming -## scheme is described below in section about color definitions), it can be done -## with the syntax $(COLOR), e.g. to set the artist tag to one of the -## non-standard colors and make it have yellow background, you need to write -## $(197_yellow)%a$(end). Note that for standard colors this is interchangable -## with attributes listed above. -## -## Note: colors can be nested. -## -# -song_list_format = {$4%a - }{%t}|{$8%f$9}$R{$3(%l)$9} -# -song_status_format = $b{{$8"%t"}} $3by {$4%a{ $3in $7%b{ (%y)}} $3}|{$8%f} -# -song_library_format = {%n - }{%t}|{%f} -# -alternative_header_first_line_format = $b$1$aqqu$/a$9 {%t}|{%f} $1$atqq$/a$9$/b -# -alternative_header_second_line_format = {{$4$b%a$/b$9}{ - $7%b$9}{ ($4%y$9)}}|{%D} -# -current_item_prefix = $(cyan)$r$b -# -current_item_suffix = $/r$(end)$/b -# -current_item_inactive_column_prefix = $(magenta)$r -# -current_item_inactive_column_suffix = $/r$(end) -# -#now_playing_prefix = $b -# -#now_playing_suffix = $/b -# -#browser_playlist_prefix = "$2playlist$9 " -# -#selected_item_prefix = $6 -# -#selected_item_suffix = $9 -# -#modified_item_prefix = $3> $9 -# -## -## Note: attributes are not supported for the following variables. -## -#song_window_title_format = {%a - }{%t}|{%f} -## -## Note: Below variables are used for sorting songs in browser. The sort mode -## determines how songs are sorted, and can be used in combination with a sort -## format to specify a custom sorting format. Available values for -## browser_sort_mode are "name", "mtime", "format" and "noop". -## -# -#browser_sort_mode = name -# -#browser_sort_format = {%a - }{%t}|{%f} {(%l)} -# -##### columns settings ##### -## -## syntax of song columns list format is "column column etc." -## -## - syntax for each column is: -## -## (width of the column)[color of the column]{displayed tag} -## -## Note: Width is by default in %, if you want a column to have fixed size, add -## 'f' after the value, e.g. (10)[white]{a} will be the column that take 10% of -## screen (so the real width will depend on actual screen size), whereas -## (10f)[white]{a} will take 10 terminal cells, no matter how wide the screen -## is. -## -## - color is optional (if you want the default one, leave the field empty). -## -## Note: You can give a column additional attributes by putting appropriate -## character after displayed tag character. Available attributes are: -## -## - r - column will be right aligned -## - E - if tag is empty, empty tag marker won't be displayed -## -## You can also: -## -## - give a column custom name by putting it after attributes, separated with -## character ':', e.g. {lr:Length} gives you right aligned column of lengths -## named "Length". -## -## - define sequence of tags, that have to be displayed in case predecessor is -## empty in a way similar to the one in classic song format, i.e. using '|' -## character, e.g. {a|c|p:Owner} creates column named "Owner" that tries to -## display artist tag and then composer and performer if previous ones are not -## available. -## -# -#song_columns_list_format = (20)[]{a} (6f)[green]{NE} (50)[white]{t|f:Title} (20)[cyan]{b} (7f)[magenta]{l} -# -##### various settings ##### -# -## -## Note: Custom command that will be executed each time song changes. Useful for -## notifications etc. -## -execute_on_song_change = "pkill -RTMIN+11 dwmblocks" -# -## -## Note: Custom command that will be executed each time player state -## changes. The environment variable MPD_PLAYER_STATE is set to the current -## state (either unknown, play, pause, or stop) for its duration. -## -# -execute_on_player_state_change = "pkill -RTMIN+11 dwmblocks" -# -#playlist_show_mpd_host = no -# -#playlist_show_remaining_time = no -# -#playlist_shorten_total_times = no -# -#playlist_separate_albums = no -# -## -## Note: Possible display modes: classic, columns. -## -playlist_display_mode = columns -# -browser_display_mode = columns -# -search_engine_display_mode = classic -# -#playlist_editor_display_mode = classic -# -#discard_colors_if_item_is_selected = yes -# -#show_duplicate_tags = true -# -#incremental_seeking = yes -# -#seek_time = 1 -# -#volume_change_step = 2 -# -#autocenter_mode = no -# -#centered_cursor = no -# -## -## Note: You can specify third character which will be used to build 'empty' -## part of progressbar. -## -progressbar_look = -> -# -## Available values: database, playlist. -## -#default_place_to_search_in = database -# -## Available values: classic, alternative. -## -user_interface = alternative -# -#data_fetching_delay = yes -# -## Available values: artist, album_artist, date, genre, composer, performer. -## -media_library_primary_tag = artist -# -media_library_albums_split_by_date = no -# -## Available values: wrapped, normal. -## -#default_find_mode = wrapped -# -#default_tag_editor_pattern = %n - %t -# -#header_visibility = yes -# -#statusbar_visibility = yes -# -#titles_visibility = yes -# -#header_text_scrolling = yes -# -#cyclic_scrolling = no -# -#lines_scrolled = 2 -# -#lyrics_fetchers = lyricwiki, azlyrics, genius, sing365, lyricsmania, metrolyrics, justsomelyrics, jahlyrics, plyrics, tekstowo, internet -# -#follow_now_playing_lyrics = no -# -#fetch_lyrics_for_current_song_in_background = no -# -#store_lyrics_in_song_dir = no -# -#generate_win32_compatible_filenames = yes -# -#allow_for_physical_item_deletion = no -# -## -## Note: If you set this variable, ncmpcpp will try to get info from last.fm in -## language you set and if it fails, it will fall back to english. Otherwise it -## will use english the first time. -## -## Note: Language has to be expressed as an ISO 639 alpha-2 code. -## -#lastfm_preferred_language = en -# -#space_add_mode = add_remove -# -#show_hidden_files_in_local_browser = no -# -## -## How shall screen switcher work? -## -## - "previous" - switch between the current and previous screen. -## - "screen1,...,screenN" - switch between given sequence of screens. -## -## Screens available for use: help, playlist, browser, search_engine, -## media_library, playlist_editor, tag_editor, outputs, visualizer, clock, -## lyrics, last_fm. -## -#screen_switcher_mode = playlist, browser -# -## -## Note: You can define startup screen by choosing screen from the list above. -## -startup_screen = browser -# -## -## Note: You can define startup slave screen by choosing screen from the list -## above or an empty value for no slave screen. -## -#startup_slave_screen = "" -# -#startup_slave_screen_focus = no -# -## -## Default width of locked screen (in %). Acceptable values are from 20 to 80. -## -# -#locked_screen_width_part = 50 -# -#ask_for_locked_screen_width_part = yes -# -#jump_to_now_playing_song_at_start = yes -# -#ask_before_clearing_playlists = yes -# -#clock_display_seconds = no -# -display_volume_level = yes -# -#display_bitrate = no -# -#display_remaining_time = no -# -## Available values: none, basic, extended, perl. -## -#regular_expressions = perl -# -## -## Note: if below is enabled, ncmpcpp will ignore leading "The" word while -## sorting items in browser, tags in media library, etc. -## -ignore_leading_the = yes -# -## -## Note: if below is enabled, ncmpcpp will ignore diacritics while searching and -## filtering lists. This takes an effect only if boost was compiled with ICU -## support. -## -#ignore_diacritics = no -# -#block_search_constraints_change_if_items_found = yes -# -#mouse_support = yes -# -#mouse_list_scroll_whole_page = yes -# -#empty_tag_marker = -# -#tags_separator = " | " -# -#tag_editor_extended_numeration = no -# -#media_library_sort_by_mtime = no -# -enable_window_title = yes -# -## -## Note: You can choose default search mode for search engine. Available modes -## are: -## -## - 1 - use mpd built-in searching (no regexes, pattern matching) -## -## - 2 - use ncmpcpp searching (pattern matching with support for regexes, but -## if your mpd is on a remote machine, downloading big database to process -## it can take a while -## -## - 3 - match only exact values (this mode uses mpd function for searching in -## database and local one for searching in current playlist) -## -# -#search_engine_default_search_mode = 1 -# -external_editor = vim -# -## Note: set to yes if external editor is a console application. -## -use_console_editor = yes -# -##### colors definitions ##### -## -## It is possible to set a background color by setting a color value -## "_", e.g. red_black will set foregound color to red -## and background color to black. -## -## In addition, for terminals that support 256 colors it is possible to set one -## of them by using a number in range [1, 256] instead of color name, -## e.g. numerical value corresponding to red_black is 2_1. To find out if the -## terminal supports 256 colors, run ncmpcpp and check out the bottom of the -## help screen for list of available colors and their numerical values. -## -## What is more, there are two special values for the background color: -## "transparent" and "current". The first one explicitly sets the background to -## be transparent, while the second one allows you to preserve current -## background color and change only the foreground one. It's used implicitly -## when background color is not specified. -## -## Moreover, it is possible to attach format information to selected color -## variables by appending to their end a colon followed by one or more format -## flags, e.g. black:b or red:ur. The following variables support this syntax: -## visualizer_color, color1, color2, empty_tag_color, volume_color, -## state_line_color, state_flags_color, progressbar_color, -## progressbar_elapsed_color, player_state_color, statusbar_time_color, -## alternative_ui_separator_color. -## -## Note: due to technical limitations of older ncurses version, if 256 colors -## are used there is a possibility that you'll be able to use only colors with -## transparent background. -# -#colors_enabled = yes -# -empty_tag_color = magenta -# -#header_window_color = magenta -# -#volume_color = default -# -#state_line_color = default -# -#state_flags_color = default:b -# -main_window_color = white -# -#color1 = white -# -#color2 = green -# -progressbar_color = black:b -# -progressbar_elapsed_color = blue:b -# -statusbar_color = red -# -statusbar_time_color = cyan:b -# -#player_state_color = default:b -# -#alternative_ui_separator_color = black:b -# -#window_border_color = green -# -#active_window_border = red -# diff --git a/.config/ncmpcpp/error.log b/.config/ncmpcpp/error.log deleted file mode 100644 index e7c3a1c..0000000 --- a/.config/ncmpcpp/error.log +++ /dev/null @@ -1,27 +0,0 @@ -writeCommonTags: couldn't write 'track' tag to 'School Shooter - Negative XP/soundcloud/20190602-NXP.m4a' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'School Shooter - Negative XP/soundcloud/20190602-NXP.m4a' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/20190127-ใ€๏ผก๏ผณ๏ผซใ€€๏ผญ๏ผฅใ€€๏ผฏ๏ผต๏ผดใ€€๏ผฏ๏ผฎใ€€๏ผกใ€€๏ผค๏ผก๏ผด๏ผฅใ€‘_ Japanese Lofi _ Japanese_Anime Lofi Hip Hop Mix.m4a' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/20191208-1 A.M Study Session ๐Ÿ“š - [lofi hip hop_chill beats].opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20171021-kudasai - the girl i haven't met.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20171105-kudasai - a night together.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20171208-kudasai - memories with her.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20171223-kudasai - attached.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20180207-kudasai - oh darling.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20180304-kudasai - a light of mine.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20180325-kudasai - when i see you.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20180420-kudasai - flowers next to me.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20180501-kudasai - vibrancy.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20180520-luv.ly & kudasai - beingwithu.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20180618-kudasai - technicolor.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20180727-kudasai - dream of her.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20180804-luv.ly & kudasai - solicitude.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20180922-kudasai - she said, i wonder.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20181001-kudasai - midnight.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20181014-marc - kid in the sky w_ kudasai.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20181022-kudasai - you make colors out of grey.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20181108-kudasai - serenade.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20181206-kudasai - sapphire.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20181229-kudasai - separate ways.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20190217-kudasai - love lasts.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20190224-kudasai & slippery salazar - metrolink.opus' as it's not a positive integer -writeCommonTags: couldn't write 'track' tag to 'lofi/kudasai/20190828-kudasai - Platinum.opus' as it's not a positive integer diff --git a/.config/newsboat/config b/.config/newsboat/config index 6e946bd..884967c 100644 --- a/.config/newsboat/config +++ b/.config/newsboat/config @@ -18,21 +18,21 @@ bind-key h quit bind-key a toggle-article-read bind-key n next-unread bind-key N prev-unread +bind-key D pb-download bind-key U show-urls bind-key x pb-delete -bind-key D delete-article color listnormal cyan default -color listfocus white black bold +color listfocus black yellow standout bold color listnormal_unread blue default -color listfocus_unread white black bold +color listfocus_unread yellow default bold color info red black bold color article white default bold browser linkhandler macro , open-in-browser macro t set browser "qndl" ; open-in-browser ; set browser linkhandler -macro a set browser "tsp youtube-dl --add-metadata -xic -f bestaudio/best" ; open-in-browser ; set browser linkhandler +macro a set browser "tsp yt-dlp --embed-metadata -xic -f bestaudio/best" ; open-in-browser ; set browser linkhandler macro v set browser "setsid -f mpv" ; open-in-browser ; set browser linkhandler macro w set browser "lynx" ; open-in-browser ; set browser linkhandler macro d set browser "dmenuhandler" ; open-in-browser ; set browser linkhandler @@ -42,6 +42,7 @@ macro p set browser "peertubetorrent %u 480" ; open-in-browser ; set browser lin macro P set browser "peertubetorrent %u 1080" ; open-in-browser ; set browser linkhandler notify-program "newsboatnotifs" +highlight all "---.*---" yellow highlight all ".*---.*---.*" red default bold highlight feedlist ".*(0/0))" black highlight article "(^Feed:.*|^Title:.*|^Author:.*)" cyan default bold diff --git a/.config/sxiv/exec/key-handler b/.config/nsxiv/exec/key-handler similarity index 62% rename from .config/sxiv/exec/key-handler rename to .config/nsxiv/exec/key-handler index 96901db..f3dd7dc 100755 --- a/.config/sxiv/exec/key-handler +++ b/.config/nsxiv/exec/key-handler @@ -1,17 +1,15 @@ -#!/usr/bin/env sh -while read file +#!/bin/sh +while read -r file do case "$1" in "w") setbg "$file" & ;; "c") - [ -z "$destdir" ] && destdir="$(sed "s/\s.*#.*$//;/^\s*$/d" ${XDG_CONFIG_HOME:-$HOME/.config}/directories | awk '{print $2}' | dmenu -l 20 -i -p "Copy file(s) to where?" | sed "s|~|$HOME|g")" - [ -z "$destdir" ] && exit + [ -z "$destdir" ] && destdir="$(sed "s/\s.*#.*$//;/^\s*$/d" ${XDG_CONFIG_HOME:-$HOME/.config}/shell/bm-dirs | awk '{print $2}' | dmenu -l 20 -i -p "Copy file(s) to where?" | sed "s|~|$HOME|g")" [ ! -d "$destdir" ] && notify-send "$destdir is not a directory, cancelled." && exit - cp "$file" "$destdir" && notify-send -i "$(readlink -f "$file")" "sxiv" "$file copied to $destdir." & + cp "$file" "$destdir" && notify-send -i "$(readlink -f "$file")" "$file copied to $destdir." & ;; "m") - [ -z "$destdir" ] && destdir="$(sed "s/\s.*#.*$//;/^\s*$/d" ${XDG_CONFIG_HOME:-$HOME/.config}/directories | awk '{print $2}' | dmenu -l 20 -i -p "Move file(s) to where?" | sed "s|~|$HOME|g")" - [ -z "$destdir" ] && exit + [ -z "$destdir" ] && destdir="$(sed "s/\s.*#.*$//;/^\s*$/d" ${XDG_CONFIG_HOME:-$HOME/.config}/shell/bm-dirs | awk '{print $2}' | dmenu -l 20 -i -p "Move file(s) to where?" | sed "s|~|$HOME|g")" [ ! -d "$destdir" ] && notify-send "$destdir is not a directory, cancelled." && exit mv "$file" "$destdir" && notify-send -i "$(readlink -f "$file")" "$file moved to $destdir." & ;; @@ -22,13 +20,14 @@ do "f") convert -flop "$file" "$file" ;; "y") - echo -n "$file" | xclip -selection clipboard && + printf "%s" "$file" | tr -d '\n' | xclip -selection clipboard && notify-send "$file copied to clipboard" & ;; "Y") - readlink -f "$file" | xclip -selection clipboard && + readlink -f "$file" | tr -d '\n' | xclip -selection clipboard && notify-send "$(readlink -f "$file") copied to clipboard" & ;; "d") [ "$(printf "No\\nYes" | dmenu -i -p "Really delete $file?")" = "Yes" ] && rm "$file" && notify-send "$file deleted." ;; - "g") ifinstalled gimp && gimp "$file" & ;; + "g") ifinstalled gimp && setsid -f gimp "$file" ;; + "i") notify-send "File information" "$(mediainfo "$file")" ;; esac done diff --git a/.config/nvim/init.vim b/.config/nvim/init.vim deleted file mode 100644 index 18164dc..0000000 --- a/.config/nvim/init.vim +++ /dev/null @@ -1,511 +0,0 @@ -let mapleader ="," - -if ! filereadable(system('echo -n "${XDG_CONFIG_HOME:-$HOME/.config}/nvim/autoload/plug.vim"')) - echo "Downloading junegunn/vim-plug to manage plugins..." - silent !mkdir -p ${XDG_CONFIG_HOME:-$HOME/.config}/nvim/autoload/ - silent !curl "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim" > ${XDG_CONFIG_HOME:-$HOME/.config}/nvim/autoload/plug.vim - autocmd VimEnter * PlugInstall -endif - -call plug#begin(system('echo -n "${XDG_CONFIG_HOME:-$HOME/.config}/nvim/plugged"')) -Plug 'tpope/vim-surround' -Plug 'preservim/nerdtree' -Plug 'junegunn/goyo.vim' -Plug 'jreybert/vimagit' -Plug 'lukesmithxyz/vimling' -Plug 'vimwiki/vimwiki' -Plug 'vim-airline/vim-airline' -Plug 'tpope/vim-commentary' -Plug 'neoclide/coc.nvim', {'branch': 'master', 'do': 'yarn install --frozen-lockfile'} -Plug 'ap/vim-css-color' -Plug 'lervag/vimtex' -Plug 'arcticicestudio/nord-vim' -Plug 'rhysd/vim-grammarous' -Plug 'jalvesaq/Nvim-R', {'branch': 'stable'} -Plug 'da-h/AirLatex.vim', {'do': ':UpdateRemotePlugins'} -call plug#end() - -set title -set bg=light -set go=a -set mouse=a -set nohlsearch -set clipboard+=unnamedplus -set noshowmode -set noruler -set laststatus=0 -set noshowcmd -set undofile -colorscheme nord - -" Some basics: - nnoremap c "_c - set nocompatible - filetype plugin on - syntax on - set encoding=utf-8 - set number relativenumber - -" Enable autocompletion: - set wildmode=longest,list,full -" Disables automatic commenting on newline: - autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o -" Perform dot commands over visual blocks: - vnoremap . :normal . -" Goyo plugin makes text more readable when writing prose: - map f :Goyo \| set bg=light \| set linebreak -" Spell-check set to o, 'o' for 'orthography': - map o :setlocal spell! spelllang=en_us -" Splits open at the bottom and right, which is non-retarded, unlike vim defaults. - set splitbelow splitright - -" Nerd tree - map n :NERDTreeToggle - autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif - if has('nvim') - let NERDTreeBookmarksFile = stdpath('data') . '/NERDTreeBookmarks' - else - let NERDTreeBookmarksFile = '~/.vim' . '/NERDTreeBookmarks' - endif - -" Nvim-R Defintions for R IDE -let g:R_assign = 3 " do (not) map _ to <- for assignment -vmap RDSendSelection -nmap RDSendLine -let R_nvimpager = 'tab' " display R docs in new tab -let R_start_libs = 'base,stats,graphics,grDevices,utils,methods' -let R_hl_term = 0 -" let Rout_more_colors = 1 - -" AirLatex -" your login-name -let g:AirLatexUsername="cookies:overleaf_session2=s%3A0TKey254b9595rC63gLQZsvRwg9b9564.CwNUf292zMuPmgNPAZ4z%2FOgLBTDk2ynd%2BgmPXJXmuYE" - -"This allows for change paste motion cp{motion} -nmap cp :set opfunc=ChangePasteg@ -function! ChangePaste(type, ...) - silent exe "normal! `[v`]\"_c" - silent exe "normal! p" -endfunction - -" optional: set server name -let g:AirLatexDomain="www.overleaf.com" - -let g:AirLatexAllowInsecure=0 - -" vimtex: -let g:vimtex_view_method = 'zathura' -let g:vimtex_compiler_latexmk = { 'build_dir' : '', - \ 'callback' : 1, - \ 'continuous' : 1, - \ 'executable' : 'latexmk', - \ 'hooks' : [], - \ 'options' : [ - \ '-pdflatex="pdflatex --shell-escape %O %S"', - \ '-verbose', - \ '-file-line-error', - \ '-synctex=1', - \ '-interaction=nonstopmode', - \ ], - \} - - -" vimling: - "nm d :call ToggleDeadKeys() - "imap d :call ToggleDeadKeys()a - "nm i :call ToggleIPA() - "imap i :call ToggleIPA()a - "nm q :call ToggleProse() - -" Shortcutting split navigation, saving a keypress: - map h - map j - map k - map l - -" Replace ex mode with gq - map Q gq - -" Check file in shellcheck: - map s :!clear && shellcheck -x % - -" Open my bibliography file in split - map b :!( st nvim $BIB & ) > /dev/null 2>&1 - map r :vsp$REFER - -" Replace all is aliased to S. - nnoremap S :%s//g - -" Compile document, be it groff/LaTeX/markdown/etc. - map c :w! \| !compiler "%" - -" Open corresponding .pdf/.html or preview - map p :!opout % - -" start browser-sync for easier refresh with web-dev - nnoremap bs :!browser-sync start --server --files . > /dev/null 2>&1 & -" Runs a script that cleans out tex build files whenever I close out of a .tex file. - autocmd VimLeave *.tex !texclear % - -" Ensure files are read as what I want: - let g:vimwiki_ext2syntax = {'.md': 'markdown', '.markdown': 'markdown', '.mdown': 'markdown'} - map v :VimwikiIndex - let g:vimwiki_list = [{'path': '~/vimwiki', 'syntax': 'markdown', 'ext': '.md'}] - autocmd BufRead,BufNewFile /tmp/calcurse*,~/.calcurse/notes/* set filetype=markdown - autocmd BufRead,BufNewFile *.ms,*.me,*.mom,*.man set filetype=groff - autocmd BufRead,BufNewFile *.tex set filetype=tex - -" Save file as sudo on files that require root permission - cnoremap w!! execute 'silent! write !sudo tee % >/dev/null' edit! - -" Enable Goyo by default for mutt writing - autocmd BufRead,BufNewFile /tmp/neomutt* let g:goyo_width=80 - autocmd BufRead,BufNewFile /tmp/neomutt* :Goyo | set bg=light - autocmd BufRead,BufNewFile /tmp/neomutt* map ZZ :Goyo\|x! - autocmd BufRead,BufNewFile /tmp/neomutt* map ZQ :Goyo\|q! - -" Automatically deletes all trailing whitespace and newlines at end of file on save. & reset cursor position - autocmd BufWritePre * let currPos = getpos(".") - autocmd BufWritePre * %s/\s\+$//e - autocmd BufWritePre * %s/\n\+\%$//e - autocmd BufWritePre *.[ch] %s/\%$/\r/e - autocmd BufWritePre * cal cursor(currPos[1], currPos[2]) - -" When shortcut files are updated, renew bash and ranger configs with new material: - autocmd BufWritePost bm-files,bm-dirs !shortcuts -" Run xrdb whenever Xdefaults or Xresources are updated. - autocmd BufRead,BufNewFile Xresources,Xdefaults,xresources,xdefaults set filetype=xdefaults - autocmd BufWritePost Xresources,Xdefaults,xresources,xdefaults !xrdb % -" Recompile dwmblocks on config edit. - autocmd BufWritePost ~/.local/src/dwmblocks/config.h !cd ~/.local/src/dwmblocks/; sudo make install && { killall -q dwmblocks;setsid -f dwmblocks } - -" Navigating with guides - inoremap /<++>"_c4l - vnoremap /<++>"_c4l - map /<++>"_c4l - - -" Turns off highlighting on the bits of code that are changed, so the line that is changed is highlighted but the actual text that has changed stands out on the line and is readable. -if &diff - highlight! link DiffText MatchParen -endif - -" Function for toggling the bottom statusbar: -let s:hidden_all = 1 -function! ToggleHiddenAll() - if s:hidden_all == 0 - let s:hidden_all = 1 - set noshowmode - set noruler - set laststatus=0 - set noshowcmd - else - let s:hidden_all = 0 - set showmode - set ruler - set laststatus=2 - set showcmd - endif -endfunction -nnoremap h :call ToggleHiddenAll() -"""LATEX - " Word count: - autocmd FileType tex map w :w !detex \| wc -w - " Code snippets - """autocmd FileType tex inoremap ,fr \begin{frame}\frametitle{}<++>\end{frame}<++>6kf}i - autocmd FileType tex inoremap ,fi \begin{fitch}\end{fitch}<++>3kA - autocmd FileType tex inoremap ,exe \begin{exe}\ex\end{exe}<++>3kA - autocmd FileType tex inoremap ,bf \textbf{}<++>T{i - autocmd FileType tex vnoremap , ``>2la}?\\{a - autocmd FileType tex inoremap ,it \textit{}<++>T{i - autocmd FileType tex inoremap ,ct \textcite{}<++>T{i - autocmd FileType tex inoremap ,cp \parencite{}<++>T{i - autocmd FileType tex inoremap ,glos {\gll<++>\\<++>\\\trans{``<++>''}}2k2bcw - autocmd FileType tex inoremap ,x \begin{xlist}\ex\end{xlist}kA - autocmd FileType tex inoremap ,ol \begin{enumerate}\end{enumerate}<++>3kA\item - autocmd FileType tex inoremap ,ul \begin{itemize}\end{itemize}<++>3kA\item - autocmd FileType tex inoremap ,li \item[] - autocmd FileType tex inoremap ,ref \ref{}<++>T{i - autocmd FileType tex inoremap ,tab \begin{tabular}<++>\end{tabular}<++>4kA{}i - autocmd FileType tex inoremap ,ot \begin{tableau}\inp{<++>}\const{<++>}<++><++>\end{tableau}<++>5kA{}i - autocmd FileType tex inoremap ,can \cand{}<++>T{i - autocmd FileType tex inoremap ,con \const{}<++>T{i - autocmd FileType tex inoremap ,v \vio{}<++>T{i - autocmd FileType tex inoremap ,a \href{}{<++>}<++>2T{i - autocmd FileType tex inoremap ,sc \textsc{}<++>T{i - autocmd FileType tex inoremap ,chap \chapter{}<++>2kf}i - autocmd FileType tex inoremap ,sec \section{}<++>2kf}i - autocmd FileType tex inoremap ,ssec \subsection{}<++>2kf}i - autocmd FileType tex inoremap ,sssec \subsubsection{}<++>2kf}i - autocmd FileType tex inoremap ,st F{i*f}i - autocmd FileType tex inoremap ,beg \begin{DELRN}<++>\end{DELRN}<++>4k0fR:MultipleCursorsFindDELRNc - autocmd FileType tex inoremap ,up /usepackageo\usepackage{}i - autocmd FileType tex nnoremap ,up /usepackageo\usepackage{}i - autocmd FileType tex inoremap ,tt \texttt{}<++>T{i - autocmd FileType tex inoremap ,bt {\blindtext} - autocmd FileType tex inoremap ,nu $\varnothing$ - autocmd FileType tex inoremap ,col \begin{columns}[T]\begin{column}{.5\textwidth}\end{column}\begin{column}{.5\textwidth}<++>\end{column}\end{columns}5kA - autocmd FileType tex inoremap ,rn (\ref{})<++>F}i - autocmd FileType tex inoremap ,fr \dfrac{}{<++>} <++> T{2hi - autocmd FileType tex inoremap ,sqrt \sqrt{}<++> T{i - autocmd FileType tex inoremap ,b( \left(\right)<++>T(i - autocmd FileType tex inoremap ,bb \mathbb{}<++>T{i - autocmd FileType tex inoremap ,b{ \left\{\right\}<++>T{i - autocmd FileType tex inoremap ,b[ \left[\right]<++>T[i - autocmd FileType tex inoremap ,rm \mathrm{}<++>T{i - autocmd FileType tex inoremap ,abs \left\|\right\|<++>3ba - autocmd FileType tex inoremap ,em \emph{}<++>T{i - autocmd FileType tex inoremap ,tabb \begin{tabbing}\hspace*{3cm}\=\hspace*{3cm}\= \kill\end{tabbing}<++>3kA - autocmd FileType tex inoremap ,txt \text{}<++>T{i - autocmd FileType tex inoremap ,sfr \sfrac{}{<++>}<++>2T{i - - - - -"""HTML - autocmd FileType html inoremap ,b <++>FbT>i - autocmd FileType html inoremap ,it <++>FeT>i - autocmd FileType html inoremap ,1

<++>2kf<++>2kf<++>2kf

<++>02kf>a - autocmd FileType html inoremap ,a href=""><++><++>14hi - autocmd FileType html inoremap ,e target="_blank"href=""><++><++>14hi - autocmd FileType html inoremap ,ul
<++>03kfo
  • F>a - autocmd FileType html inoremap ,ol
    <++>03kf<++>Fcf"a - autocmd FileType html inoremap ,td <++>Fdcit - autocmd FileType html inoremap ,tr <++>kf<++>Fhcit - autocmd FileType html inoremap ,tab
    O - autocmd FileType html inoremap ,gr F>a - autocmd FileType html inoremap ,rd F>a - autocmd FileType html inoremap ,yl F>a - autocmd FileType html inoremap ,dt
    <++>
    <++>2kcit - autocmd FileType html inoremap ,dl
    <++>3kcc - "autocmd FileType html inoremap & & - autocmd FileType html inoremap ,fr <++><++>2T/2hi - autocmd FileType html inoremap ,o โšฌ - autocmd FileType html inoremap ,cr โ™ฑ - autocmd FileType html inoremap ,pl

    Taa - autocmd FileType html inoremap ,pd

    Tea - autocmd FileType html inoremap ,dg ยฐC - "autocmd FileType html inoremap รก á - "autocmd FileType html inoremap รฉ é - "autocmd FileType html inoremap รญ í - "autocmd FileType html inoremap รณ ó - "autocmd FileType html inoremap รบ ú - "autocmd FileType html inoremap รค ä - "autocmd FileType html inoremap รซ ë - "autocmd FileType html inoremap รฏ ï - "autocmd FileType html inoremap รถ ö - "autocmd FileType html inoremap รผ ü - "autocmd FileType html inoremap รฃ ã - "autocmd FileType html inoremap แบฝ &etilde; - "autocmd FileType html inoremap ฤฉ ĩ - "autocmd FileType html inoremap รต õ - "autocmd FileType html inoremap ลฉ ũ - "autocmd FileType html inoremap รฑ ñ - "autocmd FileType html inoremap ร  à - "autocmd FileType html inoremap รจ è - "autocmd FileType html inoremap รฌ ì - "autocmd FileType html inoremap รฒ ò - "autocmd FileType html inoremap รน ù - - -""".bib - autocmd FileType bib inoremap ,a @article{author={<++>},year={<++>},title={<++>},journal={<++>},volume={<++>},pages={<++>},}<++>8kA,i - autocmd FileType bib inoremap ,b @book{author={<++>},year={<++>},title={<++>},publisher={<++>},}<++>6kA,i - autocmd FileType bib inoremap ,c @incollection{author={<++>},title={<++>},booktitle={<++>},editor={<++>},year={<++>},publisher={<++>},}<++>8kA,i - -"MARKDOWN - autocmd Filetype markdown,rmd map w yiWi[Ea](pa) - autocmd Filetype markdown,rmd inoremap ,n --- - autocmd Filetype markdown,rmd inoremap ,b ****<++>F*hi - autocmd Filetype markdown,rmd inoremap ,s ~~~~<++>F~hi - autocmd Filetype markdown,rmd inoremap ,e **<++>F*i - autocmd Filetype markdown,rmd inoremap ,h ====<++>F=hi - autocmd Filetype markdown,rmd inoremap ,i ![](<++>)<++>F[a - autocmd Filetype markdown,rmd inoremap ,a [](<++>)<++>F[a - autocmd Filetype markdown,rmd inoremap ,1 #<++>kA - autocmd Filetype markdown,rmd inoremap ,2 ##<++>kA - autocmd Filetype markdown,rmd inoremap ,3 ###<++>kA - autocmd Filetype markdown,rmd inoremap ,l -------- - autocmd Filetype markdown,rmd inoremap ,r ```{r}```2kO - autocmd Filetype markdown,rmd inoremap ,p ```{python}```2kO - autocmd Filetype mardown,rmd inoremap ,c ``````2kO - -""".xml - autocmd FileType xml inoremap ,e <++>isPermaLink="false"><++>:put=strftime('%a, %d %b %Y %H:%M:%S %z')kJA<++>]]>?<enter>cit - autocmd FileType xml inoremap ,a <a href="<++>"><++></a><++><Esc>F"ci" - - -"""I like COC -" Set internal encoding of vim, not needed on neovim, since coc.nvim using some -" unicode characters in the file autoload/float.vim -set encoding=utf-8 - -" TextEdit might fail if hidden is not set. -set hidden - -" Some servers have issues with backup files, see #649. -set nobackup -set nowritebackup - -" Give more space for displaying messages. -set cmdheight=2 - -" Having longer updatetime (default is 4000 ms = 4 s) leads to noticeable -" delays and poor user experience. -set updatetime=300 - -" Don't pass messages to |ins-completion-menu|. -set shortmess+=c - -" Always show the signcolumn, otherwise it would shift the text each time -" diagnostics appear/become resolved. -if has("nvim-0.5.0") || has("patch-8.1.1564") - " Recently vim can merge signcolumn and number column into one - set signcolumn=number -else - set signcolumn=yes -endif - -" Use tab for trigger completion with characters ahead and navigate. -" NOTE: Use command ':verbose imap <tab>' to make sure tab is not mapped by -" other plugin before putting this into your config. -inoremap <silent><expr> <TAB> - \ pumvisible() ? "\<C-n>" : - \ "\<tab>" -inoremap <expr><S-tab> pumvisible() ? "\<C-p>" : "\<C-h>" - -" Use <c-space> to trigger completion. -if has('nvim') - inoremap <silent><expr> <c-space> pumvisible() ? coc#_select_confirm() - \: "\<C-g>u\<CR>\<c-r>=coc#on_enter()\<CR>" -else - inoremap <silent><expr> <c-@> coc#refresh() -endif - -" Make <CR> auto-select the first completion item and notify coc.nvim to -" format on enter, <cr> could be remapped by other vim plugin -inoremap <silent><expr> <cr> pumvisible() ? coc#_select_confirm() - \: "\<C-g>u\<CR>\<c-r>=coc#on_enter()\<CR>" - -" Use `[g` and `]g` to navigate diagnostics -" Use `:CocDiagnostics` to get all diagnostics of current buffer in location list. -nmap <silent> [g <Plug>(coc-diagnostic-prev) -nmap <silent> ]g <Plug>(coc-diagnostic-next) - -" GoTo code navigation. -nmap <silent> gd <Plug>(coc-definition) -nmap <silent> gy <Plug>(coc-type-definition) -nmap <silent> gi <Plug>(coc-implementation) -nmap <silent> gr <Plug>(coc-references) - -" Use K to show documentation in preview window. -nnoremap <silent> K :call <SID>show_documentation()<CR> - -function! s:show_documentation() - if (index(['vim','help'], &filetype) >= 0) - execute 'h '.expand('<cword>') - elseif (coc#rpc#ready()) - call CocActionAsync('doHover') - else - execute '!' . &keywordprg . " " . expand('<cword>') - endif -endfunction - -" Highlight the symbol and its references when holding the cursor. -autocmd CursorHold * silent call CocActionAsync('highlight') - -" Symbol renaming. -nmap <leader>rn <Plug>(coc-rename) - -" Formatting selected code. -xmap <leader>f <Plug>(coc-format-selected) -nmap <leader>f <Plug>(coc-format-selected) - -augroup mygroup - autocmd! - " Setup formatexpr specified filetype(s). - autocmd FileType typescript,json setl formatexpr=CocAction('formatSelected') - " Update signature help on jump placeholder. - autocmd User CocJumpPlaceholder call CocActionAsync('showSignatureHelp') -augroup end - -" Applying codeAction to the selected region. -" Example: `<leader>aap` for current paragraph -xmap <leader>a <Plug>(coc-codeaction-selected) -nmap <leader>a <Plug>(coc-codeaction-selected) - -" Remap keys for applying codeAction to the current buffer. -nmap <leader>ac <Plug>(coc-codeaction) -" Apply AutoFix to problem on the current line. -nmap <leader>qf <Plug>(coc-fix-current) - -" Run the Code Lens action on the current line. -nmap <leader>cl <Plug>(coc-codelens-action) - -" Map function and class text objects -" NOTE: Requires 'textDocument.documentSymbol' support from the language server. -xmap if <Plug>(coc-funcobj-i) -omap if <Plug>(coc-funcobj-i) -xmap af <Plug>(coc-funcobj-a) -omap af <Plug>(coc-funcobj-a) -xmap ic <Plug>(coc-classobj-i) -omap ic <Plug>(coc-classobj-i) -xmap ac <Plug>(coc-classobj-a) -omap ac <Plug>(coc-classobj-a) - -" Remap <C-f> and <C-b> for scroll float windows/popups. -if has('nvim-0.4.0') || has('patch-8.2.0750') - nnoremap <silent><nowait><expr> <C-f> coc#float#has_scroll() ? coc#float#scroll(1) : "\<C-f>" - nnoremap <silent><nowait><expr> <C-b> coc#float#has_scroll() ? coc#float#scroll(0) : "\<C-b>" - inoremap <silent><nowait><expr> <C-f> coc#float#has_scroll() ? "\<c-r>=coc#float#scroll(1)\<cr>" : "\<Right>" - inoremap <silent><nowait><expr> <C-b> coc#float#has_scroll() ? "\<c-r>=coc#float#scroll(0)\<cr>" : "\<Left>" - vnoremap <silent><nowait><expr> <C-f> coc#float#has_scroll() ? coc#float#scroll(1) : "\<C-f>" - vnoremap <silent><nowait><expr> <C-b> coc#float#has_scroll() ? coc#float#scroll(0) : "\<C-b>" -endif - -" Use CTRL-S for selections ranges. -" Requires 'textDocument/selectionRange' support of language server. -nmap <silent> <C-s> <Plug>(coc-range-select) -xmap <silent> <C-s> <Plug>(coc-range-select) - -" Add `:Format` command to format current buffer. -command! -nargs=0 Format :call CocActionAsync('format') - -" Add `:Fold` command to fold current buffer. -command! -nargs=? Fold :call CocAction('fold', <f-args>) - -" Add `:OR` command for organize imports of the current buffer. -command! -nargs=0 OR :call CocActionAsync('runCommand', 'editor.action.organizeImport') - -" Add (Neo)Vim's native statusline support. -" NOTE: Please see `:h coc-status` for integrations with external plugins that -" provide custom statusline: lightline.vim, vim-airline. -set statusline^=%{coc#status()}%{get(b:,'coc_current_function','')} - -" Mappings for CoCList -" Show all diagnostics. -nnoremap <silent><nowait> <space>a :<C-u>CocList diagnostics<cr> -" Manage extensions. -nnoremap <silent><nowait> <space>e :<C-u>CocList extensions<cr> -" Show commands. -nnoremap <silent><nowait> <space>c :<C-u>CocList commands<cr> -" Find symbol of current document. -nnoremap <silent><nowait> <space>o :<C-u>CocList outline<cr> -" Search workspace symbols. -nnoremap <silent><nowait> <space>s :<C-u>CocList -I symbols<cr> -" Do default action for next item. -nnoremap <silent><nowait> <space>j :<C-u>CocNext<CR> -" Do default action for previous item. -nnoremap <silent><nowait> <space>k :<C-u>CocPrev<CR> -" Resume latest coc list. -nnoremap <silent><nowait> <space>p :<C-u>CocListResume<CR> - -inoremap <expr> <cr> pumvisible() ? "\<C-y>" : "\<C-g>u\<CR>" - -inoremap <silent><expr> <NUL> coc#refresh() diff --git a/.config/openvpn/cfgs/Argentina.ovpn b/.config/openvpn/cfgs/Argentina.ovpn deleted file mode 100644 index 968ae07..0000000 --- a/.config/openvpn/cfgs/Argentina.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote ar1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Australia.ovpn b/.config/openvpn/cfgs/Australia.ovpn deleted file mode 100644 index 93525d1..0000000 --- a/.config/openvpn/cfgs/Australia.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote au1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Austria.ovpn b/.config/openvpn/cfgs/Austria.ovpn deleted file mode 100644 index 969d3f4..0000000 --- a/.config/openvpn/cfgs/Austria.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote at1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Belgium.ovpn b/.config/openvpn/cfgs/Belgium.ovpn deleted file mode 100644 index 71ce1a5..0000000 --- a/.config/openvpn/cfgs/Belgium.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote be1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Brazil.ovpn b/.config/openvpn/cfgs/Brazil.ovpn deleted file mode 100644 index 338541a..0000000 --- a/.config/openvpn/cfgs/Brazil.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote br1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Canada.ovpn b/.config/openvpn/cfgs/Canada.ovpn deleted file mode 100644 index 456ff0a..0000000 --- a/.config/openvpn/cfgs/Canada.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote ca1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Cyprus.ovpn b/.config/openvpn/cfgs/Cyprus.ovpn deleted file mode 100644 index c7ebde2..0000000 --- a/.config/openvpn/cfgs/Cyprus.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote cy1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Denmark.ovpn b/.config/openvpn/cfgs/Denmark.ovpn deleted file mode 100644 index 918db44..0000000 --- a/.config/openvpn/cfgs/Denmark.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote dk1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Finland.ovpn b/.config/openvpn/cfgs/Finland.ovpn deleted file mode 100644 index d13cec8..0000000 --- a/.config/openvpn/cfgs/Finland.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote fl1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/France.ovpn b/.config/openvpn/cfgs/France.ovpn deleted file mode 100644 index 00c686c..0000000 --- a/.config/openvpn/cfgs/France.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote fr1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Germany.ovpn b/.config/openvpn/cfgs/Germany.ovpn deleted file mode 100644 index 4a7e9e4..0000000 --- a/.config/openvpn/cfgs/Germany.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote de1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Hong Kong.ovpn b/.config/openvpn/cfgs/Hong Kong.ovpn deleted file mode 100644 index e6ba533..0000000 --- a/.config/openvpn/cfgs/Hong Kong.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote hk1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Hungary.ovpn b/.config/openvpn/cfgs/Hungary.ovpn deleted file mode 100644 index 1c46cce..0000000 --- a/.config/openvpn/cfgs/Hungary.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote hu1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/India.ovpn b/.config/openvpn/cfgs/India.ovpn deleted file mode 100644 index 62eb6f0..0000000 --- a/.config/openvpn/cfgs/India.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote in1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Ireland.ovpn b/.config/openvpn/cfgs/Ireland.ovpn deleted file mode 100644 index 195c49e..0000000 --- a/.config/openvpn/cfgs/Ireland.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote ie1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Israel.ovpn b/.config/openvpn/cfgs/Israel.ovpn deleted file mode 100644 index c977d8e..0000000 --- a/.config/openvpn/cfgs/Israel.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote il1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Italy.ovpn b/.config/openvpn/cfgs/Italy.ovpn deleted file mode 100644 index d1db794..0000000 --- a/.config/openvpn/cfgs/Italy.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote it1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Japan.ovpn b/.config/openvpn/cfgs/Japan.ovpn deleted file mode 100644 index 4e76f19..0000000 --- a/.config/openvpn/cfgs/Japan.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote jp1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Mexico.ovpn b/.config/openvpn/cfgs/Mexico.ovpn deleted file mode 100644 index 912a480..0000000 --- a/.config/openvpn/cfgs/Mexico.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote mx1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/NewZealand.ovpn b/.config/openvpn/cfgs/NewZealand.ovpn deleted file mode 100644 index bab65b2..0000000 --- a/.config/openvpn/cfgs/NewZealand.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote nz1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Norway.ovpn b/.config/openvpn/cfgs/Norway.ovpn deleted file mode 100644 index 1ec1719..0000000 --- a/.config/openvpn/cfgs/Norway.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote no1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Poland.ovpn b/.config/openvpn/cfgs/Poland.ovpn deleted file mode 100644 index b81e452..0000000 --- a/.config/openvpn/cfgs/Poland.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote pl1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Portugal.ovpn b/.config/openvpn/cfgs/Portugal.ovpn deleted file mode 100644 index 0b834ab..0000000 --- a/.config/openvpn/cfgs/Portugal.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote pt1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Romania.ovpn b/.config/openvpn/cfgs/Romania.ovpn deleted file mode 100644 index f22f026..0000000 --- a/.config/openvpn/cfgs/Romania.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote ro1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Singapore.ovpn b/.config/openvpn/cfgs/Singapore.ovpn deleted file mode 100644 index ff4b152..0000000 --- a/.config/openvpn/cfgs/Singapore.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote sg1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/South Africa.ovpn b/.config/openvpn/cfgs/South Africa.ovpn deleted file mode 100644 index 15c63a3..0000000 --- a/.config/openvpn/cfgs/South Africa.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote za1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Spain.ovpn b/.config/openvpn/cfgs/Spain.ovpn deleted file mode 100644 index 27c2724..0000000 --- a/.config/openvpn/cfgs/Spain.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote es1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Sweden.ovpn b/.config/openvpn/cfgs/Sweden.ovpn deleted file mode 100644 index 5067d5b..0000000 --- a/.config/openvpn/cfgs/Sweden.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote se1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/Switzerland.ovpn b/.config/openvpn/cfgs/Switzerland.ovpn deleted file mode 100644 index 0cc8fab..0000000 --- a/.config/openvpn/cfgs/Switzerland.ovpn +++ /dev/null @@ -1,47 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote ch1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -keepalive 10 120 -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -auth-user-pass -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/The Netherlands.ovpn b/.config/openvpn/cfgs/The Netherlands.ovpn deleted file mode 100644 index 493067f..0000000 --- a/.config/openvpn/cfgs/The Netherlands.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote nl1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/UK.ovpn b/.config/openvpn/cfgs/UK.ovpn deleted file mode 100644 index d17d63a..0000000 --- a/.config/openvpn/cfgs/UK.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote uk1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/US East.ovpn b/.config/openvpn/cfgs/US East.ovpn deleted file mode 100644 index 4db8c15..0000000 --- a/.config/openvpn/cfgs/US East.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote us1.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/openvpn/cfgs/US West.ovpn b/.config/openvpn/cfgs/US West.ovpn deleted file mode 100644 index caa85ff..0000000 --- a/.config/openvpn/cfgs/US West.ovpn +++ /dev/null @@ -1,45 +0,0 @@ -client -dev tun -proto udp -cipher AES-256-CBC -remote-cert-tls server -remote us2.safervpn.net 1194 # - Your server IP and OpenVPN Port -resolv-retry infinite -nobind -tun-mtu 1500 -tun-mtu-extra 32 -mssfix 1450 -persist-key -persist-tun -comp-lzo no -verb 3 -<ca> ------BEGIN CERTIFICATE----- -MIIE1jCCA76gAwIBAgIJAOnRq4FWsZgYMA0GCSqGSIb3DQEBCwUAMIGiMQswCQYD -VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzERMA8G -A1UEChMIU2FmZXJWUE4xETAPBgNVBAsTCFNhZmVyVlBOMREwDwYDVQQDEwhTYWZl -clZQTjERMA8GA1UEKRMIU2FmZXJWUE4xIzAhBgkqhkiG9w0BCQEWFHN1cHBvcnRA -c2FmZXJ2cG4uY29tMB4XDTE3MDgzMTA5NDEyM1oXDTI3MDgyOTA5NDEyM1owgaIx -CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMMU2FuRnJhbmNpc2Nv -MREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJWUE4xETAPBgNVBAMT -CFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqGSIb3DQEJARYUc3Vw -cG9ydEBzYWZlcnZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCqNV7oJZrUqD/mBSWlKi/sGRE2y3Yphs5m/vmmS4GPrc8lyaI1idhv44MGZ0i1 -XCkJFZmaVQk7NUz5npz9hcnxN3MiZd/5Kv8Vo4aQkL0xQ7euto71LIgTqbJvTJjW -kowsVVgartGK2ewfCd+KV6k5oBImlDdSnLW1pq82Kg+YcnXxdaFc8RpNWdBbdxBe -tb4k6JcoZHuk9Zq5gi5Nnhtjc6lheCRzTGZ2hslDfJ58yMpR0jTMC3Rd+G+sM0q3 -/gEEEW34ckUgCb5j6Kq35LUlnuonnViBnEzFR/MTizMARFj7VYkzOpxSsxJ6Epan -JP8Zgbz81z4A822hosakl7kTAgMBAAGjggELMIIBBzAdBgNVHQ4EFgQUKSnUrJLQ -omrGvdncxKkKT7Rxrj8wgdcGA1UdIwSBzzCBzIAUKSnUrJLQomrGvdncxKkKT7Rx -rj+hgaikgaUwgaIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM -U2FuRnJhbmNpc2NvMREwDwYDVQQKEwhTYWZlclZQTjERMA8GA1UECxMIU2FmZXJW -UE4xETAPBgNVBAMTCFNhZmVyVlBOMREwDwYDVQQpEwhTYWZlclZQTjEjMCEGCSqG -SIb3DQEJARYUc3VwcG9ydEBzYWZlcnZwbi5jb22CCQDp0auBVrGYGDAMBgNVHRME -BTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB704c0nixfDuJ7OiFBUmkhmDUFEIhl -D35wxlthKYRs8tBzetZEipFGdyUOwuWiuwG/BuOwuP7fPS9uP4u4EPKjA5kL/Z/V -E743q50PS4L/kT3ZFyUrcisUKajAr5Gu+o6rzA6F4+QYu26iBbKewNrrb+riF1wR -GKthc6W++Awt+oVyKtVNyS2QokuBFcSu5IiVsfGqJ8TmffvFBqKUUjWopmP+qiYR -8+0qwHing/S/C9S72ZxhM9DF3et1dXFuHf/69YL8/u36tyKMqy/JVhByAlc87cRI -tcRGaviUttBeSw4j1Y6XrycVkhn4LzizWrqrmfCikhx26MrIeWK5JxYL ------END CERTIFICATE----- -</ca> diff --git a/.config/pass-git-helper/git-pass-mapping.ini b/.config/pass-git-helper/git-pass-mapping.ini index 3c4e784..89b03de 100644 --- a/.config/pass-git-helper/git-pass-mapping.ini +++ b/.config/pass-git-helper/git-pass-mapping.ini @@ -1,3 +1,11 @@ +[DEFAULT] +username_extractor=regex_search +regex_username=^user: (.*)$ + [github.com] -Username=AlexBocken +username=AlexBocken target=dev/Github_Token + +[bocken.org] +username=Alexander +target=dev/personal_gitea diff --git a/.config/picom/picom.conf b/.config/picom/picom.conf index c528cb4..7d6a56c 100644 --- a/.config/picom/picom.conf +++ b/.config/picom/picom.conf @@ -9,6 +9,7 @@ # shadow = false #shadow = true; +opacity-rule = ["10:class_g = 'Dunst'"]; # The blur radius for shadows, in pixels. (defaults to 12) # shadow-radius = 12 @@ -140,7 +141,7 @@ focus-exclude = [ "class_g = 'Cairo-clock'" ]; # Parameters for background blurring, see the *BLUR* section for more information. blur-method = "dual_kawase" -blur-size = 10 +blur-size = 1 # # blur-deviation = false # @@ -150,7 +151,7 @@ blur-strength = 7 # Bad in performance, with driver-dependent behavior. # The name of the switch may change without prior notifications. # -blur-background =false +blur-background = false # Blur background of windows when the window frame is not opaque. # Implies: @@ -166,7 +167,7 @@ blur-background-fixed = false # Specify the blur convolution kernel, with the following format: # example: -blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1"; +#blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1"; # #blur-kern = "" #blur-kern = "5x5box"; diff --git a/.config/pinentry/preexec b/.config/pinentry/preexec new file mode 100755 index 0000000..93603c7 --- /dev/null +++ b/.config/pinentry/preexec @@ -0,0 +1,5 @@ +#!/hint/sh + +# Define additional functionality for pinentry. For example +test -e /usr/lib/libgcr-base-3.so.1 && exec /usr/bin/pinentry-gnome3 "$@" +#test -e /usr/lib/libQt5Widgets.so.5 && exec /usr/bin/pinentry-qt "$@" diff --git a/.config/pipewire/pipewire.conf b/.config/pipewire/pipewire.conf new file mode 100644 index 0000000..b8a3672 --- /dev/null +++ b/.config/pipewire/pipewire.conf @@ -0,0 +1,247 @@ +# Daemon config file for PipeWire version "0.3.40" # +# +# Copy and edit this file in /etc/pipewire for system-wide changes +# or in ~/.config/pipewire for local changes. + +context.properties = { + ## Configure properties in the system. + #library.name.system = support/libspa-support + #context.data-loop.library.name.system = support/libspa-support + #support.dbus = true + #link.max-buffers = 64 + link.max-buffers = 16 # version < 3 clients can't handle more + #mem.warn-mlock = false + #mem.allow-mlock = true + #mem.mlock-all = false + #clock.power-of-two-quantum = true + #log.level = 2 + #cpu.zero.denormals = true + + core.daemon = true # listening for socket connections + core.name = pipewire-0 # core name and socket name + + ## Properties for the DSP configuration. + #default.clock.rate = 48000 + #default.clock.allowed-rates = [ 48000 ] + #default.clock.quantum = 1024 + #default.clock.min-quantum = 32 + #default.clock.max-quantum = 8192 + #default.video.width = 640 + #default.video.height = 480 + #default.video.rate.num = 25 + #default.video.rate.denom = 1 + # + # These overrides are only applied when running in a vm. + vm.overrides = { + default.clock.min-quantum = 1024 + } +} + +context.spa-libs = { + #<factory-name regex> = <library-name> + # + # Used to find spa factory names. It maps an spa factory name + # regular expression to a library name that should contain + # that factory. + # + audio.convert.* = audioconvert/libspa-audioconvert + api.alsa.* = alsa/libspa-alsa + api.v4l2.* = v4l2/libspa-v4l2 + api.libcamera.* = libcamera/libspa-libcamera + api.bluez5.* = bluez5/libspa-bluez5 + api.vulkan.* = vulkan/libspa-vulkan + api.jack.* = jack/libspa-jack + support.* = support/libspa-support + #videotestsrc = videotestsrc/libspa-videotestsrc + #audiotestsrc = audiotestsrc/libspa-audiotestsrc +} + +context.modules = [ + #{ name = <module-name> + # [ args = { <key> = <value> ... } ] + # [ flags = [ [ ifexists ] [ nofail ] ] + #} + # + # Loads a module with the given parameters. + # If ifexists is given, the module is ignored when it is not found. + # If nofail is given, module initialization failures are ignored. + # + + # Uses RTKit to boost the data thread priority. + { name = libpipewire-module-rtkit + args = { + #nice.level = -11 + #rt.prio = 88 + #rt.time.soft = 2000000 + #rt.time.hard = 2000000 + } + flags = [ ifexists nofail ] + } + + # Set thread priorities without using RTKit. + #{ name = libpipewire-module-rt + # args = { + # nice.level = -11 + # rt.prio = 88 + # rt.time.soft = 2000000 + # rt.time.hard = 2000000 + # } + # flags = [ ifexists nofail ] + #} + + # The native communication protocol. + { name = libpipewire-module-protocol-native } + + # The profile module. Allows application to access profiler + # and performance data. It provides an interface that is used + # by pw-top and pw-profiler. + { name = libpipewire-module-profiler } + + # Allows applications to create metadata objects. It creates + # a factory for Metadata objects. + { name = libpipewire-module-metadata } + + # Creates a factory for making devices that run in the + # context of the PipeWire server. + { name = libpipewire-module-spa-device-factory } + + # Creates a factory for making nodes that run in the + # context of the PipeWire server. + { name = libpipewire-module-spa-node-factory } + + # Allows creating nodes that run in the context of the + # client. Is used by all clients that want to provide + # data to PipeWire. + { name = libpipewire-module-client-node } + + # Allows creating devices that run in the context of the + # client. Is used by the session manager. + { name = libpipewire-module-client-device } + + # The portal module monitors the PID of the portal process + # and tags connections with the same PID as portal + # connections. + { name = libpipewire-module-portal + flags = [ ifexists nofail ] + } + + # The access module can perform access checks and block + # new clients. + { name = libpipewire-module-access + args = { + # access.allowed to list an array of paths of allowed + # apps. + #access.allowed = [ + # /usr/bin/pipewire-media-session + #] + + # An array of rejected paths. + #access.rejected = [ ] + + # An array of paths with restricted access. + #access.restricted = [ ] + + # Anything not in the above lists gets assigned the + # access.force permission. + #access.force = flatpak + } + } + + # Makes a factory for wrapping nodes in an adapter with a + # converter and resampler. + { name = libpipewire-module-adapter } + + # Makes a factory for creating links between ports. + { name = libpipewire-module-link-factory } + + # Provides factories to make session manager objects. + { name = libpipewire-module-session-manager } +] + +context.objects = [ + #{ factory = <factory-name> + # [ args = { <key> = <value> ... } ] + # [ flags = [ [ nofail ] ] + #} + # + # Creates an object from a PipeWire factory with the given parameters. + # If nofail is given, errors are ignored (and no object is created). + # + #{ factory = spa-node-factory args = { factory.name = videotestsrc node.name = videotestsrc Spa:Pod:Object:Param:Props:patternType = 1 } } + #{ factory = spa-device-factory args = { factory.name = api.jack.device foo=bar } flags = [ nofail ] } + #{ factory = spa-device-factory args = { factory.name = api.alsa.enum.udev } } + #{ factory = spa-node-factory args = { factory.name = api.alsa.seq.bridge node.name = Internal-MIDI-Bridge } } + #{ factory = adapter args = { factory.name = audiotestsrc node.name = my-test } } + #{ factory = spa-node-factory args = { factory.name = api.vulkan.compute.source node.name = my-compute-source } } + + # A default dummy driver. This handles nodes marked with the "node.always-driver" + # property when no other driver is currently active. JACK clients need this. + { factory = spa-node-factory + args = { + factory.name = support.node.driver + node.name = Dummy-Driver + node.group = pipewire.dummy + priority.driver = 20000 + } + } + { factory = spa-node-factory + args = { + factory.name = support.node.driver + node.name = Freewheel-Driver + priority.driver = 19000 + node.group = pipewire.freewheel + node.freewheel = true + } + } + # This creates a new Source node. It will have input ports + # that you can link, to provide audio for this source. + #{ factory = adapter + # args = { + # factory.name = support.null-audio-sink + # node.name = "my-mic" + # node.description = "Microphone" + # media.class = "Audio/Source/Virtual" + # audio.position = "FL,FR" + # } + #} + + # This creates a single PCM source device for the given + # alsa device path hw:0. You can change source to sink + # to make a sink in the same way. + #{ factory = adapter + # args = { + # factory.name = api.alsa.pcm.source + # node.name = "alsa-source" + # node.description = "PCM Source" + # media.class = "Audio/Source" + # api.alsa.path = "hw:0" + # api.alsa.period-size = 1024 + # api.alsa.headroom = 0 + # api.alsa.disable-mmap = false + # api.alsa.disable-batch = false + # audio.format = "S16LE" + # audio.rate = 48000 + # audio.channels = 2 + # audio.position = "FL,FR" + # } + #} +] + +context.exec = [ + #{ path = <program-name> [ args = "<arguments>" ] } + # + # Execute the given program with arguments. + # + # You can optionally start the session manager here, + # but it is better to start it as a systemd service. + # Run the session manager with -h for options. + # + { path = "/usr/bin/wireplumber" args = "" } + # + # You can optionally start the pulseaudio-server here as well + # but it is better to start it as a systemd service. + # It can be interesting to start another daemon here that listens + # on another address with the -a option (eg. -a tcp:4713). + # + { path = "/usr/bin/pipewire" args = "-c pipewire-pulse.conf" } +] diff --git a/.config/qutebrowser/autoconfig.yml b/.config/qutebrowser/autoconfig.yml new file mode 100644 index 0000000..c66a0d4 --- /dev/null +++ b/.config/qutebrowser/autoconfig.yml @@ -0,0 +1,10 @@ +# If a config.py file exists, this file is ignored unless it's explicitly loaded +# via config.load_autoconfig(). For more information, see: +# https://github.com/qutebrowser/qutebrowser/blob/main/doc/help/configuring.asciidoc#loading-autoconfigyml +# DO NOT edit this file by hand, qutebrowser will overwrite it. +# Instead, create a config.py - see :help for details. + +config_version: 2 +settings: + content.notifications.enabled: + https://stream.bocken.org: true diff --git a/.config/qutebrowser/bookmarks/urls b/.config/qutebrowser/bookmarks/urls deleted file mode 100644 index b8d9dcc..0000000 --- a/.config/qutebrowser/bookmarks/urls +++ /dev/null @@ -1,8 +0,0 @@ -https://ostechnix.com/setup-japanese-language-environment-arch-linux/ How To Setup Japanese Language Environment In Arch Linux -https://fsspx.today/chapel/zaitzkofen/ Zaitzkofen - Chapel app -https://www.derbackprofi.at/rezept/rezeptsammlung/detail/handkaisersemmel-2017.html Der BACKPROFI -ย Rezeptsammlung -https://www.wagners-kulinarium.at/die-wiener-kaisersemmel/ Die Wiener Kaisersemmel - Familienrezept - Wagners Kulinarium -https://www.vatican.va/content/john-paul-ii/de/apost_letters/2002/documents/hf_jp-ii_apl_20021016_rosarium-virginis-mariae.html Rosarium Virginis Mariae รผber den Rosenkranz (16. Oktober 2002) | Johannes Paul II. -https://traditionalcatholicprayers.com/2019/11/12/how-to-pray-the-rosary-in-latin/ How to Pray the Rosary in Latin | Traditional Catholic Prayers -https://www.einfachbacken.de/rezepte/krapfen-klassiker-selber-machen?portions=12 Krapfen - Klassiker selber machen | Einfach Backen -https://www.backyardchickens.com/articles/how-to-process-your-quail-including-gory-pictures.75834/ How to Process your Quail (Including Gory Pictures) | BackYard Chickens - Learn How to Raise Chickens diff --git a/.config/qutebrowser/config.py b/.config/qutebrowser/config.py index c1e6ff4..a90853c 100644 --- a/.config/qutebrowser/config.py +++ b/.config/qutebrowser/config.py @@ -61,18 +61,14 @@ c.statusbar.show = "always" c.tabs.show = "never" c.tabs.tabs_are_windows = True -from os import environ -from os.path import join -if not(config_home:= environ["XDG_CONFIG_HOME"]): - config_home = expanduser("~/.config") -local_startpage : str = join(config_home, "qutebrowser/startpage.html") +local_startpage : str = "https://bocken.org" c.url.start_pages = local_startpage c.url.default_page = local_startpage c.url.open_base_url = True -c.url.searchengines = { - "DEFAULT": "https://duckduckgo.com/?q={}", +searchengines = { + "brave": "https://search.brave.com/search?q={}&source=web", "cactus": "https://latin.cactus2000.de/index.php?q={}", "ddg": "https://duckduckgo.com/?q={}", "dw": "https://www.dwds.de/wb/{}", @@ -83,7 +79,9 @@ c.url.searchengines = { "oz": "http://www.ozdic.com/collocation-dictionary/{}", "re": "https://bocken.org/rezepte/?q={}", "yt": "https://www.youtube.com/results?search_query={}" - } + } +searchengines["DEFAULT"] = searchengines["brave"] +c.url.searchengines = searchengines c.zoom.default = "160%" diff --git a/.config/qutebrowser/dracula/.gitignore b/.config/qutebrowser/dracula/.gitignore deleted file mode 100644 index 4949fe8..0000000 --- a/.config/qutebrowser/dracula/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -/bookmarks/ -quickmarks diff --git a/.config/qutebrowser/dracula/INSTALL.md b/.config/qutebrowser/dracula/INSTALL.md deleted file mode 100644 index 7c61e78..0000000 --- a/.config/qutebrowser/dracula/INSTALL.md +++ /dev/null @@ -1,31 +0,0 @@ -### [qutebrowser](https://www.qutebrowser.org/) - -#### Install using Git - -If you are a git user, you can install the theme and keep up to date by cloning the repo: - - $ git clone https://github.com/dracula/qutebrowser-dracula-theme.git dracula - -#### Install manually - -Download using the [GitHub .zip download](https://github.com/dracula/qutebrowser.git) option and unzip. - -#### Activating theme - -- Find your *[qutebrowser configuration directory](https://www.qutebrowser.org/doc/help/configuring.html#configpy)* (see e.g. `:version` in qutebrowser). This folder should be located at the "config" location listed on qute://version, which is typically ~/.config/qutebrowser/ on Linux, ~/.qutebrowser/ on macOS, and %APPDATA%/qutebrowser/config/ on Windows. -- Move the repository folder to `dracula` inside the configuration directory. -- In your [qutebrowser config.py file](https://www.qutebrowser.org/doc/help/configuring.html#configpy), include the following: - -```python -import dracula.draw - -# Load existing settings made via :set -config.load_autoconfig() - -dracula.draw.blood(c, { - 'spacing': { - 'vertical': 6, - 'horizontal': 8 - } -}) -``` diff --git a/.config/qutebrowser/dracula/__init__.py b/.config/qutebrowser/dracula/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/.config/qutebrowser/dracula/__pycache__/__init__.cpython-38.pyc b/.config/qutebrowser/dracula/__pycache__/__init__.cpython-38.pyc deleted file mode 100644 index 35d495a0384fbcd6203e965e480fc97450ee2784..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 141 zcmWIL<>g`kf}5va$ARd_AOaaM0yz#qT+9L_QW%06G#UL?G8BP?5yUSe{fzwFRQ<%9 z)CzsQ<ovv}%yj+2(vsAqqWtpW)FS<qqQvCVoJ9Tj_{_Y_lK6PNg34PQHo5sJr8%i~ KAhSLLF#`Z)q#-K+ diff --git a/.config/qutebrowser/dracula/__pycache__/draw.cpython-311.pyc b/.config/qutebrowser/dracula/__pycache__/draw.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e60c0b14618647687488f8bdd6aac25f8ab662cf GIT binary patch literal 7932 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 LT@#-kRd4?Tb4g|8 literal 0 HcmV?d00001 diff --git a/.config/qutebrowser/dracula/__pycache__/draw.cpython-38.pyc b/.config/qutebrowser/dracula/__pycache__/draw.cpython-38.pyc deleted file mode 100644 index 9c26f68cb7308fd3a58ccb924ca5789fbb5e6d42..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2721 zcmZuzNpIUm6y_>XvMtN99LH7`J8>3Sjkmat3=~Dv00G(pIke~{hYA#DD3PW(>X5Qy zBf0fw<j@}bEBY^bm}7fNue}99+xJGKNGj!kk8k<rt)xcZFD+FSxc>V0!w<i;73EJ9 z@|O<67jQ>)AfDo?L?P-=>Pv-a-zja~(LkMECNK@SpTQk{3ldR@Ms#8j6IO|oiA5@; zN*2f>St2#EOzLFi?aCYNwfeI{8e|n#^R4!a_C}YQwbweiwxIxBmvqLH>u(J}8Lu_6 z0T#tqea+W<C~s!6Z}v(bY098!Wtg5-@KKRIZp`deDbMf{eRF1A@E4`Mph=?6>xyx4 zCq}+C^R+aWNv#;!uNCaeeqGwr>X-c$Dc?@~p`5R5*>Cg=vL!pU?5`H~Hl?(k>}>Wd zatAVl9;{<$n>`bxyQ$SL=DAkbyC!3%m9P2N3OTGNIi}r38GWZYqnyuq-M=oqXZY(9 zzmw#G_9A{`4!<$yf1`lkgpTAZRsBtgznA#ml<2gY&1BYT$6Njl87-Y4%K2<S_HWK3 zKvTrrl8E&EYWcV3?fz|vNc#^6(4dd|NtP{tOClcR<YJ8Nxft7XG44ovR>vJ_PrKgw zD1&MItPgkP{&b2he<zt^R@IL5nD!MB_oU|GEax5nzW?BVbPuJjox`<3W59da>g_@o z(&==P?;(??Uvip5$FE3FX_g)TlimvKPpd}x5y)vqC^wSt1^LxNtm3ai$FEA?X-7K# zB1FUAqAWUU@>4;~ycg6=YwPrO$u880k@pgAzjr_s_{HtKxGLX0kQXqA@<OJ2czSdI z%u)BqetZJV@$vDKPi<h_F03P9=m9R&$P1X0qbEo9F)-aeJ#`5%Pai)!?mm;4e)q(Y z%#%|G9rnrTWA_x8FQ1<ro;*d<p=)=Y_KK+XZRc#j*(4<IYZ?E@4&wLCyd1|gj6D{L zQlD```PHH`;T&|20xzVZ648J<5>Ry+r>V<~pSsM;GnZwDjYi-~7|x{~3Uk0Ig+Pqk z;eft0#$I?PO5+J12UO^s5>dLOLBK9VIU3uJ7Y^RxIo8&MbxwKgId&kbL&m);7RJDr z$2K8=;&{UGRfHNskJ(t5+#3vIEGdrJNEiWiW3D2~KvF`2$0Wz|kuM^t0TD*XLdutb zy{aCLUu{J!@W>V~BcOr=PiBq>Ft?B_AXx_T4xP6Tg+8DV)?oqTk*GrXP?~I><=8PD zFn%et{$QHLI&NMAA~bg(40;Z|(HSAa@M1a=*0l4`6?0_A&Jaf7a25o8n~Mrz7h%9` z5(yn;lXA|uFd{6z6kSH>z#MvE9EtK7y+jW56W8@#32Q{7$R5xL0);LU<qMmK(8ibL zF^7a<OC^f!coIp^j?HN-`y}Kz?T|p@xpxlrh>{mZFd0z_86Uw!7RGiI#Y1@Q218+i zJD7L`IZk*0=`ffgjCSHUs5FLg43k0%0_MP**bF1K`;dYc5*T<4Rhf_t#4s;B5`$OQ zKKC3JMxcimg0@YeI-<<R*k-793_5rLIsQ444u4hnSHQpD+aIzK-3Rll{XKBtdV~ER zCo%1Fb^%4~6K*?`z{cmr-uP0O{eUrobB%rnqG*~bS1ox?r9Azkv|U2^AImJM$@*Yf zb-e+rE>{h>CahGRYU`Cnqo&sq#Ppe1l6`fsHWEbUFY}v6qwh3|Wz@3;QBZ13mu{(5 gm45@3y=YILvQIhkHQ0pp*@%%zKtIP${0+DAAG`#e*8l(j diff --git a/.config/qutebrowser/dracula/readme.md b/.config/qutebrowser/dracula/readme.md deleted file mode 100644 index 1e914ea..0000000 --- a/.config/qutebrowser/dracula/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Dracula for [qutebrowser](https://www.qutebrowser.org/) - -> A dark theme for [qutebrowser](https://www.qutebrowser.org/). - -![Screenshot](./screenshot.png) - -## Install - -All instructions can be found at [draculatheme.com/qutebrowser](https://draculatheme.com/qutebrowser). - -## Team - -This theme is maintained by the following person(s) and a bunch of [awesome contributors](https://github.com/dracula/qutebrowser/graphs/contributors). - -[![Evan Nagle](https://avatars2.githubusercontent.com/u/556537?s=88&v=4&s=70)](https://github.com/evannagle) | ---- | -[Evan Nagle](https://github.com/evannagle) | - -## License - -[MIT License](./LICENSE) diff --git a/.config/qutebrowser/dracula/screenshot.png b/.config/qutebrowser/dracula/screenshot.png deleted file mode 100644 index 5dbcba45f3c8f972ee9f99985582a805b7611534..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 619955 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%0Dfb1bytY}gLt-02G1 zT(0%2MHjg0I?hiZJWR$GP}Aj|nf!=fNH#m-8FF2|dZ)|A$rr2w-j1cj5STnitdhnO zd>s7fke@=Q38JOR<m=#qC$q;M<LTE`2qJDF8pQVKE{KAVHb+B9XHt*%XxF}5@TvGU zh0Y$&hi{HPbG*_D8*sP4@<e><J#XrAc}Ji6Y)xIJDVoan68qaruuspD!D}VZfq{S8 zVcyF$qhLWU!^Na?_$0)N4>BPVtGgwsAR3dH7>AvNdX<A%$WF)0!S+r0Gt%|$T)#_- z50TWnMRCZ4E+1Fu521X^z3*3h+-uaRlEAux&QkBs1!5)uN5BcF-`j+-O5`&Zu#D_C z+HJHpn9!6ZD^#P23;8m4!aZ>OhBjI)Tp?PlL~0dHmsX%?h~np*^We(1t%aA&KgA&( zpnBC6y#XWY{&F&>dx;iwP)!N}J>5R$JQnDNRpZ$QZ87@CChuOPs7>V%qouuq)mpNP z#w?Yk$~X#`9fNF&ueQvVNpFF|I<($I$<DWrl8@z9f~|stRQVV9H_jn=es6-kuQB(^ zGhnAA9xH42d0kJ5T+YR6m9`TN0Sn*#ZK;)dS)@w9O|6cv)MEh)rw^Mq;#ZRz%!zq# z_@a=PWWZ8k>|USwGDSGo3eKohA;nsG)zO5l9X9F#u=AuPtCVg#>V7eFuhMnCJGZS- zb_m9uRE%P=TISXNOk0SSUm;yh$bh!bQ<Ef_87eqgW0CQhb~F~q2sQG65LCs)hgm=H zX<jQ(!yaguFtKypDZtmp1NXQIHZF)gwFeu}e9d`iF@4l^)bG8rF$pp?u;P!WcuHo9 zLjyeS<#Spk4wa8RiOF3vHr6SWpNyq0*k$<6@Pf9c*iq4;C~6!T*0YH?IPrR8QXscP z@Oy(SR_yz81^ImM$ihGHCoKYp%9WV*epcRv0r8yg-5f$wd~M@QJq=CEiBm@H;U#Us zCB>0r?Kx#TVC)A+zHml)(>FsR6kP97o({5yr`Uwcjq}+?gl;-t#%S$lQfoYo!$J8y z6!3?_G`Fq?JbErIh4l+9YmElvKjJ=r+ju(UD>z}_2Xa9yD~LE2p_t*Bx0CU$ZdDRl z09}La2O+F}k;gvvPDUFSzKPa@MXyF=h1)GF;vs4&s{-T8gAg@??6PWeS%i8370Egm z0U59vBiuEZZ4h;jwBTI+cmn?vU&-n9GMl-J_dOy7zy>o4`L%VS?BZxOLMqUl5;#9w zny75_o})3(Q<Kz>jV+TiSwJ&9uQjQse#KjgwOROh3*+u?cMUEOm@WA1nMT+EpHbbj zq_JiR+T-f@jPas_a{lqN@=YPb^^B5@*($ejZ=@@c-5X}ED=DFIg9J>Dk&U@F&IdRX z=J(cl^H}-*;g>F`Y-@9EGh=#Q;d3a;b+DQ?L3Ir|s;P5Pu<#lc;<mS67d(uPQ!~E? zHy0Pc_*!XB=VqL3g|ES5jmRLvV`m3HEKk7+qYFK-aFDI~MEx}eLYVLz=a%D<C8($T zVHTwF+pWUrg^Qd1(~@7EacuSA)9Wb#ygi0|=ga0?z+LgM9*J+5%+xu==&xjnf}f+B z+(lw=7u36lFcPDdod2Lm*=iVj8_}tQ_!7G?fgCG3R2oP5(<ilXWd;C}3Kbrv8k+%v zILbHg!RwSp=rpHynfZx4cksP=PtwH7rsIKRu4Zj-i=xXycV9cdI*$5*<j6RURlh+E zL#m=afvJzp3FTPJlfJHQ^$M%YPYzPMvdi5UFvWbAJ)U-rA`#TU5R4MGwS;D?OkJ%? z3ieEz<zB0Hv+Y+ykf_eZaiuJA^YSF#D2A$1PQbKg7yZI(_p;XzsLGi}(g$O|U2ZH= z;_f?a8%B^R3emKYOs(=a@b3Cf-E}wfK%R|qK&JC_Cgtbi3tsiSR58--%hfuaGn>8i zEZWfkf~!vD-YM$7jCQar_uuNQI+D?z{Xyou5DOd%jFw0oItuC;oT)0?zL5Gxo@@HC z1pqCL>ltXk54g0B;ya?yJ^!=%Aiz1`nWV?8!;?-<1JUa@!!?#rR4tf-(#p##Mp<*F z_D4wAL)_$;ly)%>FmWkl-V$qS;SHSo`5JWb<=~6+psVy#E<ZaZ#v9MM#9VyMV_Y^< zQ(}Iu@FBl{i+41o*<U#NWTwkY621#h;mZ6x{A1mTJgO(H((aoX0qUg!3}NwVqznnr zSbX35u`kmOfD)=IWmbIX=ki2#eN86cP*#nkzNS^-0d_-)XAw5G?jiM-U%1KFt?THr zubv5VzIHpBW|TFoxUH8LzFfM5r7pW~k;-Yw>wOD8&@*J7`EmBD!$~8^3E<MPyhw!4 z^*<`k{F_yjHYl=pSA`S2_12t{I1)yWlX~<Rtw!%*R9DraB?%LGifo1acs?9gq+Etf zvjiNd3_r!jJlLy7sdm?nt((sh2Gjw4K8s8?MQ&N|lDyI#bC0;<lP`b~ub<a!;K}BB z^ZF`%bvk!F@j2e5sagAxyKTNE^VdBZ|K{^T81}EFSlO!d#<GGW{njM^qhwmsz}uS6 zgltG%>9NFpVp*3`9u?a+vdfD1j7q!{6yW}7JXRO0G9TS(3y3i32!pE7eu?hHOhzI! zz}uF9ppm%t5fW6N*RtC6wUt$)M$vLf;tE%;2OwYbN>gs$vzi6;MkT%usg7St4;-g_ zmjn>S$K3odv^q-97@dI`VyUXn5-Q?{($J*hra!SQTCBy(%n@9dL9=|-fZN^ECTt(t zoPPpoF@$PR4(mv;%{>SwR9^}_CyiOJS`w)LGYdf0@65(^2csuBtQr?>WV>MwnYBsi z(ay@%7v~^y$P|mRz>|bt7Lccb8yxK;etNUSp=C;u90!#fhob%rtW~{44nyC1bIF*q zu*>SlBDxqsr(1g8_WiMxZUVc;TS85(chXm&FrC>g?!kQl7IjyI^e%}?OaH!B&b{9L zbm^$TV|SUSZ3^t9v$nIjT`|#)g<n|I*D6Ik4xzx@svRCu3H_~O0;Whvvd^izX0{T1 zV&b{~T=?^Xd_7-ISV&ZEb=VHGGsz)>JB3m>G^>N9O5(`emli}gk*rwt@ti9p)6OnV z=n{nqUxSk}66<Wj@~!T<dJ+voUQy;^;gmtJcVPP}#AHIMs~9WSu}%f~Xg8gKh`};z z`9qKwuK#6ggJC$BeY4;HL8$Y{Dq=IXX&opyZBgUBVx6^X)t*F1KvnVA5Fzui#@VK2 zc}M+6#?iA9?4u$X)#l=xkD<@TF&oOAF&LVJ14na}mV5h&hVonymN13jl6_42v{~UR zB^kKqd?XCJX{WZ@dWJYd#TT8ad5Ra7>^r~VO*wKOlf({m%FV##%4Ie7z_76%7s^tx z-IleV9sD1QTmJnDk->Yvc89RTqOo#1Mspi}EUx7;md_NPX}wb41=}2Rjnp;7Dx7)q zF|tR@X<Agzs5NPbl2+6`u~)n%Wr^-oRqFR9!tmQZnZ_<%a2M$~E}OK?U~=2C*WJd| zo;9EP!e7QKTJ9mvj5WsmnL}sMtw@z|uEbGycEw)h!{{Z%V-0D=#frAx4sY@3o8HAY z6V4y0>+b_zovWO_`|yR<HI9yhRr*PiR93z+Qz~wfIG--ZF3{TXh;BtC^tkt7kdfX# zyET#p_0A82YL3osEqrdTRdp@C@`6IrnYZ<IYh8LrUXp}^vNxx&pi3TgK8D&8r|cQ9 zc?XLc)>=ovvzX2*);95u0h8ouY}vtTjd@4g*B^P!DPUMln~x<|gtP9-u5guFf4^g% z*{qh-GNlVX%`h?GgXL`F+$Nu@<X~5C9>@KW4~XW4dT$qZh*I9TxJIXrmwWDD%wJp{ z?sNR$Jkuq87PF~S0(|US>8vQR!soX@<>Gt#tvvhVXSc1_ctJ8NiT<QgS7YwBMC6G? zq>0gT>dj+J{E_rW4z)i@<8~)%P}HA*ETfe;9vW)D+bs$|0h_2Tk{%8UK{|8~Vb=Ff zm$K5CC7UB2OufYPm6=!WFD;I>XP4!EmiXEn-Sz7UYzt%8=Y`~83~-_n-5IUCImLJE zi*V<&Lv1b!m`t8`t*>U!xz72$x@v{T!(cSDbXz2b3<?^x7*9`wY5|o^@X2!!wcs~5 z0+{S&oLQga<tgW(J0PFn!j>{jtkHhJJ!o;50u|dU_YOcQQ^j;4o9Bn=PI0oc`!Qee zm0pnDqDIcu{jt^AnVl=+2g#~vELDtSLaAB962jQ(0(+yos{4UEUe()=sDdaICi{q@ zpnL2ZBIn5^TXUP{1h-oj({d*FYaw~qe91fdeIKk_2(z#v1;*ahnm+!~5>GKipV<x7 z#}j|!`b^~`<cMCRD{;kN;<y`m*la$xm7~%_v>GnRkJ<6WB-HV=zvb3*PmlI%Lo}TO zVrub=y0S_JWA|XA?PjHk?Ir|=xW#$f^<=GYR7h0xDe7ga?E;mk1i-mjSy_Zdx;*Vy z<51JR!ilU+6(*|+#@+(+E_ftyWi=csj@r8w`DWc!-&hJy_(%SdwA6ILl)iUQs>wyu z#OhF!y*5*gJ}xTly@;hfO@*N<S5q|`dU1%r6|t1H2mQ@SrOw@>^d|~8zmLAyRLtjL zK)J;1?Myo&K50rEH<QtE+)RgJ)^?r2y8Q4kvoXwBp8bPeVP;~|@<<&S9()txr-qjg z?L3D*SZp}aIldO(`yTs1cun*IjcJA(;}r_bvCxaVWLe(+>gr6qE5Px=MM0n8<3*hc z^7%lm{;UkJYpcGd44Q1PBEL#jY}2BfL_yUg_vJ%9>Slt5igo)$D_?#3?~{(+9LWnA z9=pTM%NX9_A!^NI4S2^aB!Q$X6Z};w0B-g)Dp9rpUOih$qidV5O-7K6DR;c@sQ`5m zJ5Askd7BDz8A}!!L+JY3p0>cthav3sCH<(xo65f54gDR!rVpYF3@L_H&EAH7vUEzb z%1c#WQPu*#V1Y=pJNPum*9p;#Hx@!mJTtuv1KPKur|cC!wpV<yW|RGhJWjZ8@iE(! zmWtRHmoE0}*Jb#noqQ0NKZXfqH!6ttw1a48{ZgcX{^D6uu3_XA{=(`3uvGkv?3mKG zY!(R&cPW=q2cYbm#_(VyW%tUQ(>4!3!#Kr#g*49IX#EjX(zhGGm|3C$iYL~PyJ%X_ z8?PYoy^7K$rn$D2irhc8Ugw&2W;W^8+pr>kEy3zuXLz4TJ>Pzt2nDbb9h7{vMP}R| z*TwKI*28Yt?jm#BW#!W1s0N|AHtS(Fu0KJA*-_m?xpRHWjq7$I>+67EBBlE~d2>xc ztL-dtoz}ylc9fxjr>IZIM5&xxUw+H)@wc0hOtlG)=X2gqxL_&6HAUV=Z9~&^9+tcF z1=as;Ltxj#1~tJNnDLPnKsUd4aV*`)xbT`Xv;nP~0doLN^m(Vpl&x>Yc9k7*SKBvT z2VmVgi8BsrGirv3ko{hK>vg{bEAj-+(i(x+UHRV6wOV{Kr!oT7c%abWK#fi%toJL| z4=<;;JH&&w2F^EBqum)g)mN?A96H1@)2z*;U<vS_DiaYVgtQc^2QD$CMx&H3gUAUr z`v&LA@V`$BUNXPBIrD(~axE}-Y^+sCE)VX#Yr8=mW`8lNWnA6QXr9xDW_rd=TK3DS z50oO|8bgXlu#-VMOe`hyRBFMQDT5seX{&!Paf5Hv!95qsW~bvZi;GEkX9jQ0WT{R0 z-A4)}iBn%gO!b~jqHfp@hQa0K!G52}>9fUa%B;wiyZwzD+)OA63WY3{a=Ci62&rzZ zeEpi|!d<VWgyVTKBf1iW&K_<X!tP!@dCGm0^$^gLT_RKuPNSOA-lbkz^!9r#Tx7<N zOY`8x66%0=@J}bA!Bx`5M-XYR{Z4*E(F|3>vUF%$jzSaDq=65EfWsJ-c>cZNaSG{^ zw_m{hZ5an8k2oB#4n8>%b<MJo2!w~|9JQ7u<OFuSO9sYFd=NCh=6jQ6oUKy9I@TNS z3otcn{j@hLLl%(Zc1eLt7VG)Rgs2OI?`J^Wr?+1^qz8|EEnpL;vz<Q8nHI-a%@dHC zS}o%AzBratCg-^!ck$jH0xgb8i#-y7U}2N$PM`UZ5z3<`Uy0Kg>VA(kdNhcOBOAnB z*t(h3Kjp*ajQC3ZQ?wGvYt)${KZ}`Jff4RG_YaM#;s>R|?U>z0lr&OVldE!1>K8y0 zhCQH(b&ye^iQKY)<8;wz>Gy-`FJ@rj8jIfJNylp!CKP{>z+EFh+&5>Ow3DdggV(pr z3<eE<Z6q^2@}rRt2FET`qVtI8C(W4;bjubviC7erME_V#v*`u(X$L!QH}Tic<s4MP z_s^>{HgGf|7C&g-4{7gqltwtLXsn=Tu|6qzApI`w$N`S~vXeHmB2M%ourGf-J*7hr zE|PQd&^?9cVLV$<s(S5u<{{<Kd!{Uc(VZk**<0^+F|@UgTSh#4n(py33m5?m#_kWi zRY3Vvmi5A>tYY_#_{H*f5P9>YR?o)}q>?8T^{(r%d|B<di9(#@yg9Yb?XmPBoYE^` z49PI+8-Xk_T$dHsW>wrCZ3()vl&i?Fxua~1PRf%uKr_&K-l8oVo@9{d7~y;^7F9nM z8Kz$34e?KUo7J=1Amd@QTE0FbOl_54%=^waLyaP{lcr{=jC+X{_4*|qxE~XBAjJ1G z<t2rWg6rzt2LFYpFF0Pj9gccUl{jNv;pS+5;xcvStz{XV@5){tIWrn}6T}kY-o<>- z++?J@Xa7<nPduw$h<bfp^HY}ky>I(hx(?9%_0BwSUrif~1MbQwmmd$b8Fw;y5o=X1 zXBnLfptXlGIt{a2u;H9T7qC6kY>RDzss@N=y7aM-q}~n8wYRN>yhT=yo5b3gd5^sI zLJE!r#^qat3Jo4@K_VmluZ-!sWW+%wA?vy*%LNS0lH{2v5fHsMDfW>O(q^^2s!rRd zgEfH0S3S@%nFjx_gqG9znpL)xZ9&)VOP=r&&^Owy*|BG{O6sQF0kM|eXPq_j9YS5D za+Im)k>b2uop@aHa`Kr$eU+KINY^~~2qip45ESoO2w`2Sh95^R6)aQenjEuSSS>U@ z$5gCivN0sqn`B8q&R5=#yN4O~Av3zYihM3?iHcM`!}J<pnC&_px9C`JJQK{$0YZ7` zqeiniWg=M{MaN<f6hB{Z1vomm^F;vkLKI)wsws3mvJ%Ha!S&k4Xgcf3xlch6Hv0wk zpx4d!JvYf{rm#spjnj{>(kn~}?w|43Pqoqql}7s9^&E=pW!CC81+shq!mVF=l;!oo z<E6Tzka+-`_d?wB?#+iu-M&r;wlDZ4Pw|lqnk|SST_9SMD{jm)mPcZR`<GZ%Gna!o zweFv7*<qhSKnIuR5ZqZc%?xo-QB$9*YRcIsxLK9Nf{(1tPf$<@%uG|>uAVyzM!m)b zJ-U1p&nkO{UPsT69KFw{Tk+)q!DfLfXU+#ZWas}_aQy7wZdzUlzY{3<<N#l&^Kop4 zw?|R?fRd(pwf14@Nd7EvYSa3&t0y4k0P3V+LR?=mXjh%*vlA%THPgg~f@-JKdTfiG z4Z0LjS`JqrGg_)+2yLV%O+WEHDm^1DIYoft?RJJ5rWDg-QCOJqiVi03s%GPQ=1Bya zb*i!zvsGkNdVUcHs-WgExc8tB4NoNd4To~dd%G}rIm*5N;J^DERH0#<8#~!(N2O>1 z`Vh8;GK~~9Tv-b?XY#$<KAN2A<c(Q;-5K)fFp5uZ@7%!lB@{j?r4*E^{De@Bt2VMo z+-|MYX&}}qe8!|>TCk)}g~43V4a4rrxa@(`M<<!;K36O!aKEHtNyH)&^QM<+BM9u_ z+$q)*88T)X-z}Sj>K0)H%~cr6^R+BB-mBXbqif<sK1|Enu82ZPB@#pB&Bhz<tYhrE zv6G(yu%bFQiNqU>)+4L&BHBBaqLM$YE)aN_nJZB*(1ip&>b&@xwnRe-^yDc1;8#%E z%~wg3@MErqZsZDANcl9^$E7+VG_0*f<)bhsvgZ#+%^w~Or=aX%#Yd|hMOikF4204G z7n6!U5ovluFfwt^4xxj&ZWm&<99K$Yo&fXf24oiNd3l)M`Ul;okBh-;O(YJ$M@0_7 z?Ac|+T^HtEh~A~GCiPXC$o)HjCft<L$@B0>t5tllHsp_S)j#5Zdwl>;NN7B?;W`+0 zwmL13`SPR8(HF<X9tM@_kMb{VY+1jp*@pIqODkO;_X%5)yw}n%#b&ir>ey={k!Uzb zxB0}zho2{<9(``f?o`gIsqHyNrFGfi=8`f-R^%#*b8Lf!lx;crLHaXEIRfW+8HAcC ziH|rdi3211%Hs1CaUSRkI_qU7w@(>hpbas$_)%z=T6w;*&c(AMi{VM~tRE1~@hvd% zxd4lr?tN0dGw-7^xN#+!eLuCFYg$CJ^dX}@$S0O<rxXc4?iG%%gg<g;I?$_z5nh+M zw52={kij<#ha`Lx8o8GE=vFn*NCjMg*F|@lmb1JPFMRd))P&1sl9~n7;=kLoEHgLP zz6=-r?wdWF=W5A`eF(e5aAMzyDALTs@Ir|#M(OmNZ@u80^eLlp$Za78!5aXroX$7| z9FgsKq!W~qQQU7=zGnJGy*8tKd_sEbK#_YDvRc@|>t>iXXQz60`c7~$VUnSiz^<k& z`T_41o}sTR0&A1^i$gE5oUxD8F4ovOcTdKnmpvRyO1GR5`E{tNByhXcch9xnaedc1 zTBCgVbQod-dY!(B#?1xaSagk_(9>3j9VfNldM@zI+3+ah+Rq+WTVAaaQA}bou#mK8 z-GQAYs#AisWLigT;bjqM7IT)*DsnvI)t_zT0p-ChNo1O1kkN79b6vMV(a0n2nmgmC zn|s2Ab2gZM;zETLW}m}`J0PQJ_Qs>dr(G5*>J$8`P#>$gr$9VE<VMaIhp9l&^W(fb z^VfU$y~6HwyqG)|2Jhqu3E=+lY>l0_kvW&J$<|vo=w;FalJ0rdND8wNF)coNl7P2m z8!au#Dd?Yj5-;JSe>1)czM1$@8##3;qKRd<?j8Q1B3b$p`STUW1Yf{4%-T6{Dud$9 z_v&=tN8Z+|1JxekUKWzrP18{K!Z|{8MpxQtYLL2E7$kqwYMap;^^4;mW?FIwh<54R z_KmZBZu*yMDPhi$lIHx`prQkwQ`APrqT3o*Wx!23q9vP%r35&<#dUL1t^|X>@O-o$ zJwJI~UbLlRH5JZVM#V&jmDdNw*OsRicnfx|=d`M}hn}1F6t5h<sgKc&V{Ua_&Tw+K z_>=VBV35zA2H+Cl#~=x^!n1HTs=k}_*anwf0)bjN_ul3~HOgS)*3o#W)1RyT7fa;H z|9sE8eDg|bKVJ#?7O&*_&{ObaQXszgx#D#5(%zL2uZz}+mTgi<e+74I0i#@~!{rX6 z;16-0=6jT(!TD|`@=$?NPDv#Cx4FhwKu!mhL+&Vrx>erbn1-vwa;~mGCfYv_^ZThj z&<=TGRfz}@f8~F3(3r7snEgy=g2j@E*up=e&6sL$rD<I*k?JniR{;dqvzdF~c~|JX z7U%7N6!^|xq#IZ;?k6nReG4QdU6eFZ$gM3~E-HfrYd10B-Z%d~=R}Wg)yJ<eBKaw! zgf}pm(#J3#Gz78h1G=9ad<KX5N1P%@#!edekkR74=v0*|2^x?2%ewW{zI*&=?R|32 z!`u`w3Pg3}z5YgbldCn;VWj?O_#@H>)Lp=Z6~gc9T9|rUV>HP7`^ETwy;$q*UQ9%& zN`k?zM^^H1t!S9IdvBL<O9l2N<Keol0D_D(&<ew+kxandQ;Tkrl3+@+GDg=o{GiC2 zt}LI##Q-jIe~Cpf5jM27EunLv!zWABYNTg(fF+EfAK9P71rvC0bNiQIo+%u-{q=wT z-RH-6H?I>#K^qL+`=3<}E|*I?l?~~)J+FU*9&bkf4x;81P*j&TybQJ+4oBmrY=8I^ zRxm)Ft6+q$^yk0lTr{S};dk#Al+V~QC{ZX03dK+S^^$M3{P{0J@khsnZk$Tr&#KHE z@D`W{{Yo%=FtE;TRsJ8k|6f0RwfLR+x$wa=zua@r|2cdV3>4fy(lU_yCt3J+_xcx+ z`A>g#EdLwhWXXkNoGv0It~F;Hz1!T@!Wuep=X`L<t6+h=RJ}47lnpb5j!*4y$K^%= z(n<TQZ<*Hqn+uozl#Zg@BSsN9y!w%iCVdxti<I}tK?i&)GV^Wi&c6|dG0xwjUYGjQ zBwgN0bJIP%m`ZL9qy1~q2=JnPMu8D1D4C$z_R*s*V}gJ7!o|!jg^P@_sP{6ps7X>M z!M%*$pVfk<tMq(x+byM6wFg@%a<%e5-QNG^SGZ-MTgi;-UU&NGe4w{;K1&;=4e|d! zlsxITlItt}RC2#tD7hgcg;HOk$|-QRAX;l5<HCGe^|TGFYoEl01`WH!BvjvRD<q(4 zDuMddQ?KA&;7)-QIwH)VrdM^Q^Q>P0{~;-<LHBqS%bSm=XW1=i>niTM2{JE#A0Sqm zMq&52du%zSy5?bOEz&K(L$^o&@1*v>7I!}_!ne=|iIQelGr+Bf(8MjQ2fU^$1N6Ta z>dcQ20F9b(<&gDlI`;Va5^5hCwBIQzygrDbuUT#7fFz8>{>Ql!k_VtfvPk&3G2TN6 zklw<^dO4|a$#t^hK_bCP)|SIcCBcP7oI4f$*(5p)z)5)F!GV%}*iBh9HQ`aaPXDp) z=&r!sH6RAUF?32q#N&Ye?<w)8;v0SK{;985Yq!wXO6&u9uLq%kFNos;>^U=OlN*Oc zxl+acO2rx5=U$L%xz1(Xkf<rNNqs@2?1%I#`-2hb{}Ad&(a&~O8KYAiOXWr}G99$g z(`R$t7kLK;SM>;#LRx%N9?W7R&=GiJuWgr!01m+dcMr=A>-px-1|xw=f6q1^EBrQt z!avR6(QVA&wZ=R6=4+XaC^R+FpOJOvsD+6hqrlhDD8O6Mbo^8;`9DwKQ2hAA1J8U= zyFO(ii*+=0q#LH!EDUuv&YAh8*1P;NfaBaLR=3m|??A|!9_9gcXp3+3gV_RQL7T^G z0uO2nl?IQ_BwmZAA8z>`zWQ4?MkxH-#(9<gv~k&u|8q4~SeQa-96fBK>9I(oI~u<~ zD@t%~WTwlwDV+|qG>42j8?->S978Lq!lkGtmj%0%ZkQV!GfIh=9ds=~=zoHqu2)Hx zeQ4kAnpW~`wBt^%p>DvNrJ`h5K)g1h18_3qlk4a`AJu)*^s8k<Ha7{(vJ`lw92Y<Q zA9oHW4)_q2E1PBI5*d;DwHE<-g4}sQEZ)L?eYt}Ai0F*dWn-2!q1rA&JXNwYsQ#Pr zD-`ZdW-Uj|1DD-^S!-QnzIbNCfDu+^>F9S9v0YivNY$5UsHs<Lsy2Rg59F$JB)0SL zh4TI%dv6(5Rk!wUD~gnKw=7bmrCVA+Lb|1-OFEZGcPZUScQ=df5a~{7SadDoT`Jz* z&)(0oxBET*ANRM(WF7~TImWog73cLE`P~J1`<<-<W*Lg}Oz-f%MiMM#aA>zqYmJ)~ zp1qTSE4F$}Brt{1=D|j^n~*4C(xc#XZ7bMsJbI2bugY*1YFaO^^JtF-?*l_2<^eLp zz2MT52A?V;yQX5-ms(B58$3n^nt>Yi+QA0SlU7aq0m6RyC8l#RU-|{DE#7L(x}1ng zJicO#54<g^7U<aF00rbRWg3wl%b0yQyyXfs-?TM(1!@UZI${EDgLKEieoJ}E2u?-= z88l7~visbio2|F>nO4Z4r^LB2K->YwXcG4d7()#m;o)+&^%qlKa8FjgiZNZjxlno# zE^tWT23|&5jc=r>1*4ni9ax6cQ|KPg)oxsXV|s}89?nl)5skAoVFw-6k8*G2neq(% zH5z|-aU%S4^(1F~Up?G^;6#MUc9Wy35Z{ZZ5CNSYj@erG6`TxrLJOV(vZ!HIu=B#& z6FoE`RRF$Qbh^P!n(>TD9UHRg>d>Z^rLTZlJ4j$ozGZhx&~0yoj}c1O-ttpCr5ug2 zb?f^BzhC*wJp`Ik6cKB_3W(xPC2!k<d>yd`2L$*X;QcsZQf4WFL(alB8go_V`(#`p z7ZPcTcU7f>;QPehynNKUZ4FCl5M^`W`H+zTW(&Xjs;5r;Uqz%X1swV~ofQodXW<w@ ze8?6Zxj)OB<AW$G2bY1vEi{suwq0akwItPf4>&Xa2YvI&eysT~qqO;}a1kBiVCf+; zoxLAk<V;=B79_ZG>>&gx_CIs`ymjTCTgBSZHqsQvZy_qGw89y18?WUn5D@#+j$#=V zwC8<W^EI4Zl(b8LKUn^VUq~YQ!R$dl!Kz)}CN3W};+vCT4Qp_ne$#bGy{wbn)5CHN zQ4Wg4pQV`cW46!f1{&zxJ$AW=i)5@Oj$9ugR3b(EKk6=6l*WCnE5-dnSr(z#wV%~R z-p{3rzK>v``p-7P_YVgN?tEFX@4l?Q%fI(!-DZVIR(!w<Wkf+bJfZVk84+^~6(trc z*TU9kwA)2X__56EMm4L)CYqC_gk>`v4_J9R2v0I)f9xuRFS#fXhoWQl4{sC2iX*&+ zpVllEAa>}(={Bib$FkvD(c@uhR^a4J1{eiS+)sjA9B(2{qY%V8^fo>O{_@W}Z4(4V zy1mF%wQCSl9{Ihs7|zg<HK?fPJm0SuWo4n2Wc~WS%LE|g(uWqLLew0(%OiK%qMImb z>Zg6}+EX*^be_RtNn{#I=nlGx7fO!i6Ww58q_E4K2a#m>4VJ=ZxxAUGijzP>5eiGU zJCSl~yrL+3gd%uW5zg60+Z*7|PRqUmEekFpNkJ~LvGg4l`iQ&waa8<1quYODw`-Ei z<DA11xKNX=_~g%PNXU_XWfss$uEG}S#6x)FnucGQ*>SI-fmwitL1+<vJiz+fgNl|# z^y^`U9JC8fZ!&W8Ry4nv?SA{4rr-n*IMiDPOm}r}g8j{=q5Z2F7RK6hAv-B69|jA| z{n-Z45~{A&D80VNdo?Yg!x-5!;?5%;P>bWpwBA054Ow}A3=Z<e;)TQs=7rl!gW=`d zd0&zi8gbtlD4k^u%do>iGH1xI_>>S;laUbh{Di}_PCwV*N5s7nRPcCaVai8VfZwOD z%w=h9FSq4FMrkUl#?mcdiPmpQz-y|PPxWS2EK#PGr1}_fz$dRa+W%IeMQ;UU^7=N1 zb)_6#aH?*-M14)M?cEJI?+`|L8__^bG~90o?_W6kzkk&{b!V&Qjs0IP^ZkL_&u>XK z)M9UIee@XHof;oWTg}^i3Zt>^3Rd&^GP*^IaolrUU{A~j7fL;!h7a#B(ks`+j%uUy zq)}7sH4&Wdp7ipDJx4JI;h`o7Ivt*&$Z5bSD#1DF@ApphdI(qn_!;rkTzbs%ZnOEl zPF)Hai5xCohgGdt>yVZYiw^GMpcl&W{!|)DsFZtF{`4cwGolYRaF%V`N0)FJtBRkB zTbj{PH#;~0$2G+>7Ebf;GKP<0-k6@T1Grs;MR?A9i-O?4=F3HLz}r^kA@xH@G^xSn zzDGO?Dm5uST{ug_1(M#JUPL~e*L&_T<#5_hm8M{M9_%kyxk(686U}qNalBGk0iM;5 z(-m%?QGSgkdFo{Irf;$Ewn`Vbvj{?!hu`R`iD-WNm{6quA%*V1Z0N?5^7KH*v$T5r zEV%06O*$A-;r=7!y+$+K=$BAu*8z83vSNrYVuMRkGYW8&_=#mGcba}VP9x=T*Q$bs z@)^=Afyuxm9RjW+i8u;-S;T>~Lkc|^lalTo>KqqTNBflES4&a=A*MK6(JP*?u6)@r z6fup!WFx~g1F8GmJ=#bzwyfop($LJ#@4^3r>qO+c=*aI+;Rh%<>=xRpO}_uxFhWg) zS6_?i?KVDonhYJ8>>Jd*t$0GU;J1p;^}i83wpy4hd-5DRXr4~U*F3#Z2PX?9R6TZD z9EV5-iGefN>VEd_{a@fNG&|>6{_#Bq0p2kCDR|xsQ;Y|bp&6UFNTmGD$JnUJ*XL%d zxHCSCX>g|9D;3AdeEVKiX*t5wwE4pp%Z$TP>4MP#8+wWU45p5;LIGZeJT~%TE^-g$ z<*SGqyBI5!OfDaxSayQfL7`HuyDv`U6KjqiNhjD9iYRe?sBIL}e`)<V$-7l0S=<r5 zRpkx{$}0!6nlo;Y4^xH(?!V2+*zX*_7gJ!GKwp-*8_1LFe4i_QO-=~Q>|jGYM$Z%) zqo5RZg*;dnL5MBz&>pcrYI<J}ye6M@$h13U6ljyZITDVbs3q#LD7EOtu94tp3|emt znOdUZYk9_C?n8g(C}<W3E@r&o@o2mT(zg-?m@28_1W@ETaUnT3T!>dz2-98~+O<-) zym>Lk8DUp>oRVyefz2%5sG`rnD!e9yPKo#BNTz`@{dqpnrAdT;Afh|l^Fi$V341~1 z>=)WAd~%_*q-YkZ|H!3=Zis{Yca?g{?|YozpX_mNLdiLz25Bk_uW^W*^ys(?aL{F{ zjnPB5h>~&rO}A8n6kh3u);blg0bZ5&AFC8D#{G`@2Kiu23%v7)@uuBrPsK=>@t-F@ zZQqvx*bVz<e$o&o%0~VRX>Rdy!8mf019Z=7Zo{*zIejfar_o`4P~BhUPxZkEz_b8> zu_ez7*tWr-)Q9K~7KJM~G>Js?N6<u$fnTnE>}ipBc31F&-_h~vPeZL8Un`X3^GgU9 zzu3sYi$mA#cW|k9tWcS2VtjMB%23lN3~0Js6t>gYS34fCs14R$==$n$7{_Ukg$ac4 z&->F_1!p6%Sf9W)GX(5B*91UvhGOD1a)yGSEJzzoLz5m11_fY<O&;C(Scs$^xPO`i zdDBvW&~3Ruo5vO*y@<9~{}gTr&gab<Pd+p5){|jJWr<_rzC_7NT%3eF4rnn0<3L=5 zA0>gFMj-h=9!HeBaTNJJjw*jPjwEvcMzx01JUVSNhI&8TFyg?ACD_36P;@oHta@l? zOYd&b`aRo&Y27KGOR8;#(P);+$-!xqtluxUs7apMDcPxa#T$?(Z|dIslky`wP&P<p z-$=yE7VQi<O!UkncQRThQFL=h%$7~*{1nHLs<8b~(N7dx8EbxIO?9LuEANmZp3Tbq za|y2%8e)0{Z<f{A4e|N*yd=eVjXXK4sbT=`o-2F;K%Sm5aCHVl^tGGRI?9Xra;*~6 z8R?3cRF+Jim2eevWK4w&p|D3|?CXwJ!TF!ia(!t;_Aqn{(LJ5az193Q<v74dPXCBQ zCqxgcc=I-jcH1t~i1j;>8p_XCq8|q1k_{P?3MCr@w`axRm#i=9Cr={K6*gF9IJVx; z&nZw!Dtv-(dF12sW~<S(UByy}gs4?Zpf@1Ujlda%Vp~DO+W#NfYUsmm+jr*L`+G9W z?@wxhH9owju<1|9jr6~b7L`@mP<PsaFnQSc0OJ7W>UWi#V_0jdI7AHn9W_3#bdGjv zlW!07BLB7=v7yWHb4VUKx+V{j$ZV(XBl7BZ_TWpxY|16i%Dykv7BIAZ(JPk+NEzB0 zrm__3l8U(#!Cc9_4Vh>ha|e!elNIn&1K(T%Qf*^IzD!}|_OdY0LpSq|E&ydIMqZ)s zhVgN4e#yJ6;A|}bbw^(D+gcYC4l*dHJHhX{*J=wAAtEpj;{2F=i-xoA4XB!2zsCm7 zE+6fJu#g`T3GAcS@w=%`g!|K1YQQycN&^<IjyMmqn}U!dFvy4TC@~_kgNprmhg*qG zw8xBu+&uv9uiM#`mt^lKdB8YVU}QsDtUh*NWw@~bA@!uU(^lgp)}cgu5i>?<AGb;n zcEq}GL|Zr&L6w5>!^A7R{1kU&9gzb)-`^kUkHUsj{=0P2!uNDi)1Rb&4-lM#le!H# zHejSilRRKMV&~4@4GBTlq+n(9tLl4WO?ZQol`bt=>5F>3Kanq=DLBK@nf$WJ0ac@1 zoS`_Mzj*}Bwc>&ypDNO~3VNK(TAr}ByevrmN_u8lba6FqGdU$7(-#iUauh!Nm?o;5 zZ6zHraqKTr8Q@Q4%3lN*1ogob(hmk#4z@-zy!87w>O|p>dI5G;^uoI6tD2763M5;o z^~VjEGwUbfLW?vgz_EuG8XRIi@O~}}2S#A~8kf9v&ZiOHmoor_INZD&OwI<9xa+l8 z*vR-QJ7lqd$c#ESt|EMN`uM<icKy)dh4Dz9fOXWOEDe_-Zfjp?^5Y<yA%`uT)|)wg zW*yPLsiS_(AzkSUJxaYZbSCQC(V;Bw*~Y?wU*r4bj5VCCBMj#ScHK~&TYptaZ+2l( zWAf@?q6lYYMG^WFZMGxgS0c$D6KhrD7DTtMh<qBMie?guG;dn<p?ucU;eZNs=hyOO zh44ufl8XD#qFX~zR0g?+PmmMff0hydxw`QWcXCMYj4tbUqdV~j#SXVbAriIqN+9wj zsyj^up{<{;lZ^?(bPr5%;A=G}r+SYiT`4ueQ(XP~ac@22hdoC>aLxf(AbOl_poK=+ zH>b_dC{MTokHp@1IIVA)3>CEJ$duu|LaCf&h+P8y&K6jQV#w)JlB-K6iv&GI<~PD9 zgP?RIDcn9V83_4w?q|Ia_HMty_eC2)b{xRh_=O|JTizoqU%xI-^a!6dXZ?hJSJkel zDMx`1uo>Ks7#W{M=Y;#D<%B<t5}{%4L6dw~(s-^dO;_Qo__8(pN+(SxAt{!#jbBEF zo&5TtSz)9<omV<}S-WLHkRLw%#$uh&tmev1n$$?<bx_+bqZTK=^OA84)M&lw8BGS5 z-tU#lT8xJ4)7<-}Xi!#Ae@1yGQ!D+DbN7SAwdq0^-hOu%i<F$Wet)tX>?z~*Js=_h z;fhH>oo%Ja90Jh~wlnBU6y-0pv(5nhVeU}O7Lw^a#-_dvqI3U^?L*Nvu?%CKoVmMf z#fyVj>2x`|gs1(emRWCDlq_D$B8G&+p?S{CJRjChgxWj_to)M6f^~xiZbnUzSNQq? zy=XVqu;#vXKoh~~;vct=+}V!Q&^znU@tFB#gWn&NNV@1(nYCR~57Fki<U&3MD|(MR z5Wh&H<8@_e*nce1`9Nx&41%#(v16R%Bu~i7p?tp=rVDzWeChoFT#98<*_%ff9j<Oj z&hPolRxVj9Q1{TZd=AU5C9W(9ru$^pwsJ~KUSaS5mDLr5Sx381$!hKT*=u{vKV08^ zGE+BfMEXTFeE&0)#cNra)K`+?6-pl-IQRN@w;~7X$31;t8b)m-;T^w(k=BV8g&RWb znVwn#KtL^U!*QSS>r5NN_A3EL(Na{@JXFyffAq?rfgs$UJucp#eQG4A<c+Fn4kdQN z!3ZIeke+i_)y1>e{Tva^9+ZID2V+V(c{kY=>)+u?Ov`%t6#U(<-AW(9?bJ0`_$C&? z=1l5A46hY(m`-o)Z<~ZH@OYY@@4d7l=uPAfI73x>@QQGyx9XM1;t^1l7i<-KZIi>9 zF`=Y7ElWk)X_H65gOVsR)5q9p2-sr|)k<*GJr7!VII?w=dD$9=bExXW9^S16=NPl% z)S9{R`5aDz48Vwf*pGnZj1$n@=`Wc%jb+DtGlJ-Bfawi0^)Rit6yZa|V4LgyO@xS> zz)ElG{!@e50Oq;9_Q5w|*G3*FiS8d6|MMi|i=RnIj~_`$u0KdZ7Jmw-76oh-JQf?} zdcT{Z>EB<WyyjZW@4bwF5evGAHHm`tl;`2pkSusvdEQ?DgzL0RA*l41rcZwMEE&L) zqTv7o=6&3Eqr>o(E{Ofv8OU#?P+_=84W<{TS7vjGxTEmQApZBJI7kVDNum*WCEYhE z&8N9YL5s528E=H6cLP1TJyuR$m^7PGcUm8biS{`iD}sQP=oCSN3pY}mkLb5kYMX0D zNi2jEqowkffCyH<x4ctuee;RFtiq`tPR~6ii=SvZ{-W@*I02d%IhRCMMNaS+@)0hr zKJ;QsV<DIy<W(G`Mib;K16?qSq+BICg1h!w1_Y#W?#s&EXVf0wVAx83%v*DKwlT&} zaVbBZ=QYFRdSzE|{aVe`wrKmzuxj%+3%62A)b*^XIT-F#&#S}1q8KH1M%Im<U4O)r zgZ-oaa$TN3+g(d4En*bLp<?t)QbI;|I=bYS;l>;jFDnQ^H=QBsr%B$F&;5j1#n;d| zKa35Ti&rP!7+b)1`36|i)tG#E+VI*UP;>RkDswM&|5G84;u2#zrxy90d3T~DZY`4F zc+(Uwd>F<PF8I3V09mvLw@^OiAGVu+^`oa%)X!q%we0s|WYC`#Bg3vKvkgv~*@z9& zbWYG48cetG=eTA)7|+}=Eb-j<7@|b2bao*;<Ce%)<-1T3%-@dx`-fYJg2Z7X+(x<* zE`*wLS|RR+R%v!AN{ZU+sO#2V2FHX~`kDa!kzZKZNT$}EoBDbJy?>XDKx!GIpOdx6 zkBg-<#%%C>vTlBU!to0aIYNxqIk932;^H-GSlW&)HGDt~*AYPTYc~z*;s8fj3$3$l zU7qF6q4TCIGD8$o7BwyEVx_&Ikw+*c_)Ue|TRC^ETc=&NovUbw#+<dmAEQ}6u>$Ko zjGyIC$7kQmpL2gu{v7g$LIg2`{|FJVP%QT}yje}jvu4F*A^VR8^X_5lJMRLSQrc#V zT6^aY##ELpEGGFS>HnBHIS*j|PEIX8dzUEkQX6_mi#i;K{-@tg!~e}y{KGTrkMF>m z^6!<n(m$xgB@6vCZQ#iX|9M^DLkAae8(U)g=`w_=G@Le>GyL%N|9Ja<HR*qSR8B_t zpX|l(C#dr+1O9_r?*GPKv<s(-vXm8@QnI;yXO#9udF>DWe=sqgN4`IoVv^SPrFi~F z!}eeJ=U0XKkEh{3%*y}5KmUb){vA90o$&jA0RNQg_l5q_0{HF{ZT-g}(Em>RB{n`( zKW_E{Ug0zFx^qu<wu`)hlmkVE*Yu6761E!*U&dO4vFxN|M9_i+FY2x+XRjB{>^+R; z|C!?X*LN2C(SL4o9Qb;XPN;w2T?(`bCI17FRBrF7iIK&}O&CY-Dfnd60uw{#&B<}D zY8m6ar5jbT6%Fsu>hqL<I)YvZALdXm_gyIT<dG)|{zlC3qa6N#;-*=zuZ5&tHK}RX zDO$iYjkh7Kz%}iV_CVmGr-`gCxH|M`XITNv$sN|EAsZ%!*%xvaBi*tH*GCt9L?0Iz zSsnDH=WufDo0Ro{e>Pq8G?gd?#Ze0h3#psYlv}@=3UGmg-nG}r%6y~zjPPQ|U4BM9 zXJz}lt9DB=(ZP-0!2#wE3n(9-I7qry9;(gJ(L1L8wW<8C8xN-j!afJM{A8d+>o4<j zaEDvse#b5OdjG^@C<zzG@o9V-)M}8aSxXmQ|E)ml3H9zQ)vk1j!$cGf{tT(DgPO&H zLtWbbRTbA1ctLKyxN)vO>SxWTIgTRS6D~Q<w<$@aU7s&cKz#G7U${!mn5jkc=H+F5 ziudq^e#H2WS%c;=mLzDDT<RyC)eE@(iD#Wyo){N0@_Uf>5Xx4o8{PHJl<mCK6lf9w zPwVn(YcUfH<e#Nlcfz<$envnsp9^e60n6&VY%8hiCwM=b@S37-kg6Xzu9fpK@{<pk zqp*{5?ug0$4Q-wSV~c%t9ki%1cDp;EGuSkg+_WGvZSu4T=VqdP(aNScd$szEVSDqw zGvUA7=fCfwz$1PuZ8p-6cVWk%@K1-x&J~(&SttLKu0kWt?xXW)fC2jh2VB{f9HBE< zg9E#0r(%mKE^HHAm=yQ9`)9Wxla0}zh4vdYs#Oyj-W7LJqsvR*1COC&g>wG8*M!G3 z9)|1Fj`yvw#*5tQCC@3a{IF)hh$2RX@R3n`&EIGJana>Peepx)`{=-hRhk=_lw&j; zS;-i9iJ!EXGmcylDfFX{63TX|ms2gBz_txPrY?1n1kTn^wJ0Ds=dHTi3GmGO2}`Z8 zKlAiY8FCCfp7``trx70dHB$nu%x>PXdz>CKvLS4$?RpjqbSXX9YXSS&AGho1sA#E! z8XeVQWIO8q?xg>7?s8BZ=4t@q=C<wj_U<3!)VcGXCXoLyIgw&RHUvOFG+@0)7B;0e zX0W@1b;!z_Of^+bZqE){DEC6sfKuDgjoi8jU81#MtdFTA3EgF%qKYmt^vXw4lU`nK zFUbeJ=eBtOWF6Kt%#=I&ZQ<GgorVshr7jrXFW}rYB{^J4I-FW4*-8KqR+(hq)8#_S zXkx{iWLme9iyKZJ724c#(oMwK)q~6#=FN*PA1XpqH~3U2BIM&%v9>qw{FaJ)!3~Fl z+|WDrfDQ8+GXtfB#{FU&n<T>5Ew#o;!fVL?{B8bzXUhjV{fcn=8xVfgT$`(feg@^C zKk#CqKQNnNQcx9WvwM5^5X=h8`1e+{^KB!*E2PdM8X*VUY#$B$nv6H_brmx095wft zisGu#GIf0GUj-=!lgwk|5<~F%zGtIrj<X2GP=wXLK5Zzy8Y&xc_SHNC8(&TFIK3P5 z2p$9>PuMrXyuy4y1GIoe46Lpj{fv{~jDFZ|3>?*p{9?5_^d-~QRdc?M3&Vy0n{=<$ zH<NO5wPb%pU?_*srT;U)@e<8I+aBNg@*yq%%|lXiSA5x`8U6Zsafn8H*Mf#?@EWCV z_vg}$>lG~L>aSN;{2goAK_v#;%o;O=Y69R17vhmSTlhr~!QfS=2GS!~a_|mA1bhH0 zEqd6@(LT5dGifoloZ0%yK<Y7M%(}wr9Y!Xl?9$25edY}Lm3=4Z<WWL8l85#i)ys;C z-6U=7nrNyg*n}$NC+%o=iSl0xuPW!pKGE;DTw;D}C<=?R>p~c0q3;6XB_GqkB!;F0 zurZ$~pqSSJ;SW`6gJInfomp5IItsNI#mX9H|IVzr2Nn&O2Wb>H!3TKWiYgo|oSbII zUaxVCM?V_bbcZZ%vA^11iWZnzyPu24a_Co+dig|KyONFNtcQg69)1kF(9|I|4aoG~ zp}4jeSj+9c4C!1@B!r}eip`P56ddk@(5UcUUrC~uz&~+MCH-=d(8+vrA=8T;@rLJO zn4K<{c^s8Z;Y3B8EC76|MEal?C$z1G<A%7LN*g?TBlq0&0OXGW9uyq{f*uF3WIG!j z*{V*QE7J{vm+_FFx$Zj!@65cslFcwtSWG$@(j6>cOLzt5xi_Ib{Ft=y0Aqab-L?YR zT3~+hnW5{~*em**(rGK3PoHmxtgrh;Gc<aLeof~8gC1z7YF=p2f1dsqiPC&=$JF2a z&<(-)1IDCjTqv3FaD5r{&LHh$TWP&2PAE=1QU-L_4gLh{^#N%woiVqyuGVoS*+^6Z z5Ok;=BkDY0aCW|2dd&<}sW76L5V~Uby^?IVnnMnIV<RK}lt1tq8#mqEOdrnWh*MMD zJHb*%mmvMMX=z-2c$Wf1sqv7AaFt6v-wm4j`sxFEp>1GvC6}g?EU)C!Z?N9q{NRF* z4J^p2)S6SRw_1L^c~Q9nuI1}Ivd4RG7`9G6pjv9e<4~OJC0{;1Q$V}DdrfQgs{ost zh8ep*`Fho;Dzb~ydsCpdWm*-r9Ry+UW+~a(b(XL_U<!;5+x7XdU!z3dFMhH<32dmX zwlOK};$kLH&X{bg={5o~Sw^rp5#S8$kn5kvi~rEsQpUdS5g3YRgUKM(3e27Q+VyO{ z`3oVqLpv#|%o*qKFLI7v`!90N>Dk}Nxp#k&b03~Y#1PL{y=;FSm;5oPWDh65r09sE z;pEtw72!v1qis0hwLIV^sU7r_m2;N+Xf*!~KF~KrOx{WV{c(Lt^Rm23d`I2r&A0QV zFFth`IX7Drs|PxuE&W56Q_@z^-MN`!3q@&t91@@*4vU3tQ@0_MfEG*F-3`WzWL}AL z#+&as*AC{->z&Y__2+8gXI(1AU9B(2PluRSfFcw;JP#?mi4IhBz<t^pbT?!`tKG0s zt)L-m_kL0GUHuQg(~5t$z<*sgU@ThAYrh;0`}N!+?_JBmnF_S!fFJP>B5WNVvM|H! zGr<lSUWEpf4c>dzr@Qc!X#p6A6?pGsIMy->hk0PcOZMW}&hJ?;If(!(%=GXCVqi_k z4PL0T;Fzmp1#gtQ>oQO=u*NjwYi}8Iy~DX-IZ;oQ#4)i4VaER0>QQl}u#)K+m%iO{ zg=mw*WhhvC#w19H)3e(i9L(NWW3~nz%GuoGsR9d5!TH(H<`TP{fGKyGajuB5)4s|n z<gCVI!z``LzT1C%W%zdJ3-*{_$-%|RBv}yp2)9-UN#oaHX`FMzJXjC@nPQw&AKJ6d z1r^sX5BjPGMAS=ciA6WJV)k7wUK$`1z27rQgLVEvZcc@<iSRb)3@EYQ;X{JLlu(@~ z$<?=-!CT)IoxD8`JVwh8z#dqk8^P!&E8j6a-=yq>Wom)#fGTK>)qF+lBanXBsl7I$ zJ#Kb?0f}7x^;KBVGXA<qHM_&$k12jHQvMuTF~o&+O+CEFUT}@%;O>UlW3nLb5SCoC z^W03}c&NPdxmxG986?9dxq=i%5$Ggcy+9$k(W1JnfY&<tiSS`Wd|O5urf<Zqt9aFH zdvxO~;O!S*9ei>Btv!N_9+dNIbMjc{IJZ>ScznZwa0KX5A>9$KhLt?Yh&2O5o6fww zgnO1h>-BBOqJ8t@wvANr7tQ=UbA%#7QVel?dBsCG36bPt*_GD(vf*bL$iWv=@e?BR zAC3JZF%C{VCz!g(gmSlvWrRp>PatN%eSG&D4vS5KV9DoeiuXSjx}xNZig3`a3$z~b zGyARkOLjju7{s`0Qb}0ULWwEtLMq;EGgP^K{Ggl>b(*#scj;26Ku~hfyr3UUI{^;o zT2l-{quIc@8QK8LN&saA)od6#v0=ijo_^Q>3W*1w85Z_PbS+z*J6V912zjqOe7AKO z^5Q%HU1Q=o0BW<{m(u@wuKD8S9l~t&hgjfu-Lgu-QB{gh)I#xJ_Y;2MeVqZ?IpaT+ z3sOrJDlm2)YOR9qJK1RPPX`FD?00h2m`uA&Epb)^HLwXu_o3vTTaFBs*v8Q1MCnVs zVD?xzdzS-iWP1Oje3gbn9SQc-W*wZin=92czJrGMlQs^!oQ}7HLL>sasAF-#9(;_= z(*vhIK0QvF-jZ<`N}barAYP@u#*_ir=$uK<2EuHyd9{*I9KLW@eagUOCG?M1l?wtu z;O?f1T=3Lklf3)AGy8hvAq^6@<15P8X)T<!p3ohEPsCH8l8-)-r3+ReQpR^t9aO{S z3A9$_0j*WBg$76I2_W9?b-guk>gKcz3SNm<3b^MkM*#@DRtK%5pLcSd)_3)~;^SUy zqsr-F1>~5B^d^$0BW@3u31c)(;u5rJ>}orU={yi|stu&4Q^`G@YA41){d_9X67)dh z(JSCg36lPVyFR@bm?Q>fMxgBxy4C%cs?V#*xx4A|mgn3zEPXdy==HgSn!C`B+`L@D z(>{hR>R3k`2fz}E8TJuUCGb+wUR3GR4RdFQ0M00CbfZxsI?doaF`*n<*Vo?sl)XDH z%GXK*`Ll_QV>*!2`Z=E0<IcR=?k;vrt;WX<j7XFkh+lfpMnyzdH$9cg$OK*Etkl<I z#N36~x)aM{$kw>LArvlCM`ig7`4~!-wf$;Ht|84)It1D;CBSY^o2DwMi7s-(`gO8< zt|}!jAx}2J2YgoMH~iC9tQ=0~kjE3(nu?V{M*lLbyN|Ii^&aF5p%nX#EFXpa%$GK5 zL-VB<5C24Rg5H}qSM~TUI*S43)^$F(Yf-IOZN650601>eH`GX5Fti}=D?J+F^~P)I z0ZSifs8D0GNW_}Liu;V(9^G*0?Nx=&{U(3992Ot;a^<3y=F<@JbmGc;h@N~k`DT^| zr3u3&_{%)A`ys;JE7{i$WG`KYNX}o(1bGF^C@N>nwCkj+K;AA9CnBeX$tKg6G3~1G zS(C}YZQETH%LAIGZ+O>=BVD^cR8JVTXgr^)bm_aUeggbt$(-4gHMz^-7<t+cwcPz3 zHlAJy2at>6l}IL8MbeG{DXZp+mlNp-p>HgUhgC5&t&QAq>>H<m1)0*nV*gsvC&Ha3 zM;}&L=W3pfmmh+g2+6GU5rHeOm9pD$a>qEk3LEQK>;<e=0F2l7qv5$A6WF@T!Po@4 z_E#1NV{ZZp(nX2tF5B1(RjH<L_jGRItF@j=hW%m~ZEF5v7(2&)FpT5x!*Q!3OC8`U zq8H%CW3Grn^EaT^5qczi0*Lc3ptBQryM@m(F>T78wVvc;rVV7ZL8HuVT3;^*uM=1` zRa${AQU`O7-2&R<$s<%Bz%ey$Td11Zg!nfU2qkwn2qRe0;a1@JA`{wvbB8UFUz2bw zu45(A>Pme6%E_Ga@Hu7c)OTT0<$w>L=U<$-0<z-i^zzP=Ij9tLc8j^Xg0AsTxo|5N z_5X%7{pC6Q{bDQXdq5{U-GKYc2No0t{Onu=vb9qjko<`k@r-N;+T&%w@lLg!W@{_~ zDNcGRcrfeA6N_?IJ}7PUL)HFr!5K9lMJtI~0j0Qc3yB;6Ns;GH7x#(T%qR>ExzHE9 z0JMsc0uoa{-EzL@);F&!hfH2%&`!`bMQxi^2xwl1Z<a@#l@}S)f1sYTkprO3(V_bn z1VMTOZJCR{pq=Fi+gc$I)<ZRU!!vzL!>;=d+R~8dg_1MMysqTBh*t}-U95og=i)e@ zolU~%7@}^Xb$5z(T{av&IWD*xbtWX$B<_;!$iadbB%1Y)8>gv^VMk?9+dvQ*g8~OO z23t~vbHbQTp25<pA*tz^=jWTKom!u)`A0uQ<#0OTr4UW~eGM5(>qh%zhH7O|svXbQ z2#@5O8R(yp<+QMc`$^drX@K{|#jE65*lI^K^eZ^h^qCJsAJtq3@3eET6~vjL+QTa$ zG{v1xbx$6s=-k_h?B;Ltif|vbHC@A)u8O;1TYIDqEWe)zPNEkg0qt_6v~y)9%X5IG z<d4LlooUO(A$kU7%C@3xj=VK{P}*EymJ>0if|^&QW9}=QcxL(!=7{WwE+{;keJFo= z{diEZ7TqxCEml_iuF7fy(072_v|{1VJTNRT<=<JY97br`q`pbwi2tv=AM&T4X3JgW zdzq)}52g=kO!#`q4u*S_eT?z09;vOT-ay9-Zgl@03XrHnq!pD=Qt9=<Ce{=z7dh5& zR-LAU&<*AOrC0!izFM=9)*@@xOdReZ4Ou|-sYdckZI9F~`1z??IBcDi*3FS@8^bl^ zjZyBF*|DkCe#{{pzWqf~xU||GqFomXs?_De%o?L5<q9I+2gUt60T0#QJH+e|HTIkc zfp)9UHE;%UHF7$v$2)Xxru7*Z@~1%$fO8rFB1+Dyv%fTOTdBlW1LSmndh3f<6sb3- z@kj%6Tq2$F%Q&vH@Az-$RP-^zgh*sp07}$y^){i9`a-q5z4fcd9uVOTlHAynNwBs4 z+BXbJ=1b0+Qn~hRU?}?|+tL{fcX=_@{^B4+f?fPiL1Z4xZlpJJV;dvOI{P;|j{0Bn z@^boi<AR$2tDE$;QJCV)dYurOpm$%8oJTcVxk*s8vn&#pmzB=-*##SUsO9}PO|q^u zR|cRiK8MD)#Mc)0P?m~FzljW(0Su#uv?)G>DR(QC7xseG*+pvB*1HVnxn88l6Zn}E zFck=d4!GT~Eo*DO!N#CBsY0jEeM|hpaYbMkst5fDGjBi!EL|y1t@*C5I&Y-r#SYl6 z{5p9peR#kq^jC25f27{GK7Kbp3Jt&I7#4}hewrT@<?oHtm4845O-OcU;ADKF{|L{5 zR9J7GfaKZlW7<Qb36&=88{A*}KwX|7f<vw5fZwzdhZ{bU8z*x0v~^Rr_FT8)Z2{LX z@`I7njQs%p?vzn%&uhjfwj1OvfdEX7zI1wfxXRcu^DtU@qp`PYUpS%NnqUP7`_q{l z3f?C?OJ|?f3+XgMx4Q^=*b@9q!)jIg0Cv#s^@2XzJSh5Hr}x1hn22i;Z+~F{x`l1r zA0t6ZX(hu`aqBnF%T_En+s?({{uO<Ak%dDhq0vX+mnTGX)`ez$7mf?qvWjVj(#*=8 z!S(5g<oLjquTEWD5i>5*s>v^S_D&W^cQ|B*dRxZ?c6~G~w*snOz<Mh@6qC}>bjrIV z*A#8GNrC4~R)H-YBx%Q@1q>ZLAWhqD^V2eu-W|Wsh++o&3mcW650M9;JJ&&7porS` zXF*>YE6MtMI%v#}2a+9^3!SfrDI^WjYvj5yeb^HNj=l1TF#_yO6)BXppg>_ndC9x2 z%0u^@pk)J(8-T57fX8K>h=2vv32u>upoa_rdvt@Znb=7S^|L_h8u6lrz9?0`Oo6>Q zb5^LPbYG1+pX^<ekZvHiTQ#YNKpWKqD_d8oBW?p-Au!f3XOd7xXS29fLD#gF$GU0s zWh}+NEJi%>q=7j(PjDP{kNeFRc=|%yYe^8DgGutg_b+PyL6#DV4jHv%0Sq|cXeEQb zKu)pOc&x}ipifn*1{$PIW2xofOlPPEsKEG5ke4qIjp)1{i7sl%spu@(BS>*SBUfe0 zBhP!r52s$;n*CGGI`mW2Yk7J3knuu8+|{32t{?1kVdZi%!^IJzB-cZQ=gUdOD~Gzz z%|L-P4?kjuVlD+#Hj$`ST2M_>cNcBf$1K)qq(n|DEX5dwJnCc-@qRAo+=DfH_~v+i zX*dRA0jj+>@EoYK%Zw`!-=D6rll&Yvo2yahY+Ft8udVI9|AVR^PC;KnKp@U=r4pyy ziu}1F=n;mvmwE}KJo(XOMl*b88rM~b)C%#sF~Oo~AREKs0%@WZ$790zK~XdG$QXY) zBN^nSD30W`%P7N!1{%&=&L8A+TG0N=7YtOP<U2jr{;r==`b)@uc^}r4p-mu{&?XR% z2Tmr#3ru6&1u{P{R!Z7ofrHr$U>E7BFYRkv1PCWD<hJ~beP3Sj?B;eIm~amuw)#R) zL<-}nfF!|zn9vs_A@V~xXI~*fcnK+Ele}+B%C9RoU?GUsnVJm`^I-t@ozZe6)dkT4 z0a)L%MDpYV{85cd9{HnDG@jii&G9`qGBR>Bav*zj-M>v~J9y@{-XC|CILAlrA+RpZ z7|A6|`=RSgpwzxwuZqG)BYF4YEH})$kV8f%v`zV77W<F{o2tVQP2kRM*tl{AFQp?1 z`>JEaC<0wCiBERL94B?4Kl1__^OmiUZk18v&KhlfTr}2khdbr87EAVWC8gIl_stZO z%A*l3MP+w5`h=#iryK)ajN0@<+3}b;mS2UoxC7O+z`i;Z_zOq0SvfASZ7u@-f-$88 z_`;Cu`Wfx3T4VJay@LK-<EpWF&;ZQ8>)?Ds1*3fnQX+2G={P28@c(U*85r(*$78=s z!B}gEQwU_U)V~@Mm&$*~Xf!t=!Sk&RdV)g2j}sJ<zDrbeJz2efDR54)hEk_ZvimSv z7T?FmQ?N5`$Xrl{8X-AS829k=t7N}VQ6ca1)pxYGu@zwI&p!t<G((%mD4cq!n3%ot zg5&cjRo^kKDawRv8FrqF2#N7g!je;>^?{a)@$Y5AS>VU?ropTqpPoyNf|TF9QQD+> zoKS+7lAqo@r2#2?Q}iZH0Ru5v%@_SXze`D?N^;d&ZSUYmt<ZM{G2|;rh0kJrxhSKX zY3LoPvK(EIR*VQ<M9j~SA_32KBi{3E3J}6vuQwmUF`Gn?a3y%BU4R5{mHn7<o1f-9 zzl7MshRfW!GS)q460KJP0)FOG_uKKrKlLYsLX<UlXiii3aRp3te8~hj9Ds}9Cdh<o zz?;xdbgfCDD=1QU=oD1&v+X9D1Ph#9?%UVN!=0k@kO%Q6?c^YtwyN}w$uzKeu0uk= zlT~@WO9|c(hwR|wXZ3k@pA>VP+HN(`Z$bbb2U>Ao#h|FKn{6axsGGNEkU%6)ZU)(! zOd|@m*?bGBTc@v+y2D(pn!{W!-vw9apa-f4y)3{3xPba4J5##Y{KJ!zdHG6G$CKo5 z3!+(Sqy_G}RNQ!&X{lVnCn!Q|jPl7Hvzv+zEAbO&mIYr$7`9AyjMzda)~OswKRK#E zr?$#jfLpW=`h2(#dV4PP<#s$w>4Kk#7w0-Tx4gO4WPUs}-FqEtE&g6$8mh0<6)`7M z6`AXdq);c@p$&Xh_QktDfgA6L>M5-bb$U+bTH@D|F_M`;o=4b^)`Fqov1HNlt{ZSc zTV-D%F5_aoy3_s2PYG0is&Rws%8+*%YHA_@RD$Kbi|+o9tbDkj^uw(^t9fR&Fx<Os z6#Aqf-!K1x^?UeYx$VEYuK2ck^THS^Pyej|LST~Z#+h*FX!}E{G3vW?T&y>*AnBCa z+bk<1d~(5xh6<Q~2|GbZGzL62Clu~2P(lq}?mZMf$5SD16n+M(eyH(k)1w%l7uG;; z_l9fZ4IQNpy&+#P%d>s7b2QYsk3s8KDhbbC!ojs%ASo?sTD!vFP8V|=R<6q_K!{l- z&xu4cI#auG!#4`AqnX4%fM~;(cf*F#m7p;3X_wc<9sv>E`X{5*C2g6Wwu7rn-U=j5 z1+@bP{%Fop<%w$H?JQ*ZXD>|gF+RT~(w?z;WCII3aAAcN4e~p^SEjY+JGL<~zW_3& z6=;tL%a8c7L#sKF^{L^RvxPe3+Og_}ZN?~;XrcI9AJ$#O=SB{X2P!vPbzH!c>XEm< zqG{rsfv5lGSRMcmcf9cGW)Fg2d*QgOU$!D1ty7_`p%Aha5A5Y!WsSb2!xi-;HtM(W z+qRK+TOs1u9e3|P#TWCliI})~KNw}RxQX6GoSJ7Ce0qS(Cb*0(VY$$2B%Ha!`p&OS zhWwo?2XBbY;uXDF#2oj1CAj2P3jwx=#w4LM%eYD-H3&&II_mns(|lVeh_G{LC$f$E zwisalLZCo%U!@;;V{xS1syY5f1=h{XdVhnfqUlt!0^KIe=Ho71oB#UI`SZhKN|8wE z69h%KD@t{T8f^y$1R|D&TB$W2KQ}cgCL9)Ez$x8yQOw~xd94#lQ%r)T<20q35$ah5 zj*7uNfrmq{3Jz00=3lND1HTNk8eI-Wh*DnS2T68oZlBjXK}JN}7_VJY(E6;fl3A*c zk67F7P2~|*KFG?epW>_AOFv(K>u1>YmB^y&>wJ0OeoC8RHU-xxPl*EzOsEy3$U>Zk z`!`>_*9c!fTBY9eKW%ag9l!NvEn{O_4-fx>Mt!61-Q<~M)mXJ~WHfm+JAdn)2R^sO zdG=}jZ=HjG59R;5UZ#{&0Um``C;eTtt4ZdLn-uuomBCn7NFJG@5I2{#o&l9qj49tU z`<!&R1Qj11_#r+l^ZmRWeXPT71$&av%G)HrX1$K4Gi{{<9GPlq(RwNb8m)N01J5MK zt0VyN5eM)4ozt5|anLKhsnFf7S%mVEjw(Gn&jN2=A=+YYIg0zP+wOb9NGeO7JIXnH z4EayaRPvulS!)*UOhz*D+$fTMd{Tq|_Di%)1V-dXh7{j}psQ`eeAjIwef!He^7?d> zCyUse0pC`9b#<T6VD5jtq3CyWLwLsmBb3=3LMx@y-nago8IU1r{3P8d*=1WR%dq2E z6xc0}I>QtGt-bUtPDq;BvF>2}CibG<GVH+ZW%skhpxK>J<#6rAQZvdYhhryUfCY0P zP1pvQ<CsAG?o%#CQlXtXRuRCl^98=Nb%Z4e13~r{Y-tfmK&X!MlgbZyO~0tp>vy)S z#WGj@SOI6dXRcx-xX#<C;Yo&pDz_L(tS>;OvPvBubn(ncLz_G&IYJ9u+_J|B0S|01 z{b^`oZROY^SR|#%>WlgbAn>69%Ihm-VL}dzta&x%IxKtJb1*9S&nb2}wJx|2Nt{t< zSZC;`dSWMZ+}IMxlAR4TxTroU!l{Kw&+GR^#Ml=a7GGl}r0~Aqi-JqdeAQiUAdX%Z z50lwv$Y0q#{i-j7iNfNzF%}Y)Y&=pCpd&%)Xos=MDr*^JW=*i`JJ>Os7#hm2tY4^j zd|3#Kre^}O&+g6*@Dc4EIt{Y8N~X3s-#4+_q6j8l^Hz&8T8ZeXe(2z+WUrzRJ`}Iu zl54iyqq2t)Z4<x1bueZ}8?qXT5k)sGy<UolZIa(jw7s9K(v%-V*C(#bW0tI`M4MiT z5N$l505P0b#I+rM;u(>O<h+3R{NFVOpgs4jyGU^CA6W7EEAK!dhk6HWApZb1X1D<t zTu^a27k+j1Pp(|sO=8neNuf!pxgX+k+Xm2cN%$Se!oU{PX=mXxU&NFhZkM~aC(9U1 zr0u<v!y~6K=OV9PNLm&L$Y~|vI-3I5r60dC^XW4+wf=m}w!@bW)6~i~!!u;fCR)Z3 z<8Z<{?L**Za|K_uGYa$Y1c|R&2Q=wEZSU%)R3&;#b{m-gc_^unJHT<C-(Oh1w$2KP z?~X`WOb}~6Puex}4;sP;K~nS<249P#KRB<~LDhEWBUpFZMID$1Z2OuGuMyzuvqzSK z$?zf3qJ$7Jaemjf6s8<^7*m6@4olBD@(i6!XS?M0e6nGs4xoticj)I~kDu+|;?5=~ zd$Y&fBAGVjb<BWMgf<Zhn^Fw`d;K*qDr`)_l};yP3h>YKPPH=E(2er>JBlLR2UFTo zFBz4^93rN4yzMeYqh>~lw0$h~W3&ngwG&-3!$Mz1fve)9&S#3WI1M!L0LNM5>wT&f zOO<2w``S4Qd{s{7poyUp`1cKiyW7lk>><D1&cE!`?~BC*k@vu(8>+@v{7Ap@kj=2a z6x3dSPXxsL$$-j0<pPTn{z)!S5D(`2PWn9R%Oj;pRVGAR2dITHklFL1Uc1J7xjqDG zz`!)KSqu<o%BHx4c^Hw`SkY&2QrEQx$ajWuQ^dfu*|JJtHaR6_-0jla{?{bY?|<rN z%41PO>}TZ3@EsMf16JFM9NN;B&m6l|Kt&JVjYH-46!;TgUDW?LFK40$Djog*Q2WpR ze`^2z_mBVgv;TL({dcMT*U0>nw5l8sfpt6J0t7*45CG0kKq>RZ=B<S^<MrIjnYEz# zG74!oYXay|SKg>l%Dn6fRyqZ=oxTvq@xKDm|Keti^_`r-s~_q!7Q_)(iBL6GK2rL^ z-o`|G9rE3es74AmmOs>3?aQDVxIj-I-k048M`i|EQT|?Lq@Asimjq8@yyL<KM8#}V ztHu|gl=-0EQ31ZHJq469Co2X`@-ix3#~=<NU0ACAD(tyIA#F#2uL)MkabCCG_4omw zfNkW@W0o2v2JK&;(gSsps23}<yHX=M>(ZSFeES*4=oYFBXag5$gs68*&3aYRW^xSU zDaSwidmHdiDy(@~6>0gmMuzDXb|2Xfxb_%XB|_77;KM1%tSz#=?TaIir~{pq`VCC^ z#0!XREUT;89BcE57Q?6}^RaKEZML4s85V^Q)k*+D4tLF?5!_uQ`ztZE*#q-rE~2xL zdIaRWUZ(ogbC}~5idh9Gfx3!^DE#!mj0@!;JdiwbAgb_PO7ph|_<!`s+-bSkJ^ao` z>n~M>N_faXl~|L*qLsgC57re&IQ06JKLv99P-5l&u73+^79v4FbXEG$O7Xf#6J}Lx zeC8gP$-0M$(T91hp){x2dsxw%RmD8+rOw(pm)n6x7@ezO!hTdb%d(<<C1<2MXON}q zJ2xS<30<Nik~k=0jP*r(Z>59;(<7eBoZL$yxN56*tF<D~y%#MD;|uPNE8!Ja9jb9N z@+Bajr&`&1;E8$Btu1$FcR5EWMW7E{d5_(R^;Z0i|sJ)?<L1SjWfJk~;I+#tm0 z#cQz;Yr6&hhBIU$arPl1|AwZgW%Yw7behC!P!>Hd0L)g@qQsZ=rZZJhkyP79qe~3u zuqOXjXn-+M$B4r08nVMxJ#L<@tVw=VFS=A*J0X9#+|UQj>j}wZQ?(4qm7;K<Xb_k~ zI={^xutK_EA;>Q~5HAQ{xisDq4sh)G9C`ku-}8SId?Zq3es!gNmxPd6|C8ZZ6iTLc zz$Fu2euu)C;+rTM@t}KolkPx!roon$TNB0Y)R2Yb1{}9B`kA1w3%Rq^g=)37hF8HR zZL63tnHH^5SwzKsJ8pw^o}}lO_qHg67XDrfKPYoX@AE)>zG(k`IWI5vy3_j1MLpP( zD3bj`z92F2(I`~DWDeXxhIum)lap}v?c`$i;IW3;n!%153(PBPl!R>LW-p#LCt5Pu z%7!qKlNEPw6O-Aul=pJzb^L<m_e9X2e%0ZS0NRtU+Nj+6B<MK7z9toL9UKbxuIN8) zj-j@0YliGM?}rwh^Gw(?7ve5yIV98Z7=(lqmkloMp9(B@G^X5Bfzi3Twl|+rajfUi zk~Ur1cIX<}>ayyw>K;YfCtTiZTACTa_&0#bZ<FMC`3qh(`3^$Oj-&Ss<@Q^S91TOy zGU-!0WBV#|VGTW8VeQA^3e?|^A;Q({&iEj{4dqI=3TR6*JrJE47-XMKp0zd>2lbQ} z!iOpQ%Sq3VS)*$am(Bwe{#ufc?w|0`rEe|6toASXt@Xs!@L0i!z0Gc|#@7wm!6I*I z!F`*JXAcTu4$ZTIhSt;iu)3regJ;@L266Kob^6b~Rfg<2`R1P_8zzK53#^>h*N9-w zVM-+2r^h&qO(&X4+Zeaz!J3lDz1b4$UMcbz>)P_rg*%};c`0JlMjWYR;m{_qx*TL# zvu`Up<|pTlCa}Z20<(kWI83J5OjxrX7deZQ!%ffQmsEG}?DmpB3ODtj;NO9lzi0Xr z#5;j$e~c`VO$PL!xj*=pHVDq~Mkwv>D>umWgw%`D-!z;q9T|0JF98N@$hbA1LS5G$ zi^fC;aC-IKTZxC2Dm^3h^cbeY))%wuz|Q7xtsAQcJUTrl;UglBY-)YBeM6H!n$>5& zAl^1K->yLTjEU;ja(4QHn^mSj^rGk_w%kp}J2V?cWA<UHm<jL;6n+ODhy8%xXUd*p z*pPez$LP+)>+Qgk3myzU-|&@xKEEy7`lV;Z8Uo6Kms-4vlPx*g1Qbl;K27aLl65?R z%-ahu9@nnn-2|Z<FKiH<;xM))W4@0aPSs5%&G9gZv{nIa4nDk#<1`N+j)F^=ar&a> z&==TJaxOMtuAIdfQ)092Oh`HzD|@eGO0O*QAhr17wfUf?>pfSCFvNZim@&VXsV*)z zjWu&)HKW9&M?Re&tszYfVfx7EQ|)TP!`Hs-EXKS+dA*Wus;7^Xr#p|eow@nnzC+R0 z7C>kD*1YHE2LS4Om*$F-$+}#Q;mw>#R(yJ~7RNZW)V4A<sd|XYx%=EjO3W;{@dA-z z{DzSr2slNU@@6mJNGLvWycpHeats~}zR9p42@g!muxdAC>)Ou_f%MnPj)!|nfa>l` zP85n?AU}u@s3UB0{btAsJmkX?sKDbnW-f+5p_)&INz4;_z4m1Fw1$MOOS@&oOgqN& z-Gc?-I{##t66NVoJt!^@<cl5YRHSploNBk}6b$?ZiRIg@+TTS@`!*i#%{+4SWgB7< zPIJ9GkTjJ3c}W$@Oky~26cmtQGS%r&9|(kXhIn#R^9Qw#jVHX?=0K~~oOnpua0pZN zQFKee14_JSLy7l>oGZ3l<J}2O%FXNNJMKkzZe1m{Z#`@4j)!sLgd;{))NQV@wsH7^ zWEa61O1I@mLsJf`FE`oHsvV6#4Bcd__D=UgNW8R(gTXPFG`BM(ytSh@XD}SLCslay zGnlWwmD^qQCNNhRAr1nsRIaj8@iwEtqB7N36v=K#M_@IgGa1f#r@Jf&0X~+Qb(I(f zoA`ldz?gvWMIB@i8RLA~@zvfergL@0v66+`LM$)_p%I_{FEjFQFHS!Ggif>+zC$Nj zf0Xq1;cYxxUlOpTl%ws}U0BL=2IWpN8I>?DGMq=6e*97Gk+P0^_-!{LwSkJ$@7v0w zH@eUxJmbu$JZ7#vI+j(wx-u)TIec7(9{1Qlw5xGBp1?5|2BsHUNGawxYC*s@$Kkp+ zrUX&yI3$``<+>tc?#&sjoUA`yU^X<dmJ3x$&SS4O8akmyZJ(w-9B%OsuORm0zy%nc zDkmrz&K-DfUyhWXhQMy5=AqhZb1)Fv9^Wk2-7sN){UuNmLjg6fI}~}AL83ryPZAcv zT)xxv9lgVx6L02Q=#mm85!b2%LFT*2XqiaasO4<xa_enO`mYLAHW<DwyLT{!zQSk0 ze6|OM0{CAt*7j-b2<z$O7L$yOLz-i|#@~o3BdK96Vn425dC{=G`q{k5hd1N^61O0n zGM=uD$~CwoupYgP3ILpu2AuCQ@+@^t5Jny@t{jVZMU*c-P%Xos^3eyPe>HS@t<8%} zzHVj<EeRY<kC1=KQFiFr%5&(E6fHe>#JJ7VCry{HH(LtY<*+(>8t5DLLjH~J`-)9j zJ;TA1x4HW1dc>AQRimX6Cll5}B;b>LeyZZ^Wns->{&x^!LhP~F0O}iFLi{SO6lb*o zvRTS{U1Anw3;F$inBWZx_f7}J7^{wRd7mbJ)`S0#y|)aDa^2&F1rceaq(Mqbx*JKQ zyE{ZcN;-!Uq(P)%KtO4b?h@&i&XI109vB#S$7QU&*V*AZ*ZJ^%*dMsA$7e={xt}}! z@ry&np5f<#Uqx*j#Vh*CYJ3PdWni6Smlad@qgp{A!^^=2^K%SuAag2T1n@~e+nahX z8w=S`QLkYxHtJe+$#D&`&v&(5QB#t(%`~T+T~AXgYd@@$jr2f;r?h$;R@wLXzU))d zfm8CTb^xo54>nPtMkq`Hmtcbx!5uE*6TVcV_;R~;lpD|^CWv_-dFA#D*30(cf&WH8 z`BO8^|A(i6R|xJ0eh99+)^C(_d|pTZ2MRpwdQFT~bnVutge#knHihq*U%H-@9N9PR zXFZ5}cKa}I@8Y=~{<vQ_E^43W-4b?-@mp2L(jPKn{i{@QV<+#+yA>boZ90o<g=gYd zs5Pk~jQE_qXyRVEpQRUA<u#A4;D^slpLc;y)p)S$hX8<P9`{g)AZ7R<7{vw3YnsR- zQBLh)b5q@W5Zsr;@A37497rI#?9D8dw|GreH_AOhMv3>Pi7LI!!)<m3nZi>bJX;7T z21`_A{ORt(72?_3Ov&}EfX&f%%3HPWiyjKPusBIPgM;8CXw*avSZ1St%{9{@5^$-? zR+UKZDOc+tdy!N@8dH@OunVr*YfZE%iuW!6E#W->A!ijJpXd)IuZikJ9FDJjfp_#p z+Fq6BQ^39)|Gi=GhX&(dr*S%1BiNTL8}S&{vk)o2vIMTqY49*M>MkEaGSieTx9gW@ zxZGr}+B*=jINg24n^_`Rt12h8oMF|2XR~s2JHn#n<NTX};ByjWZ3!Tt9Sn#M5FNbY z@p-w*B@7AK?RmMjwh5d>G}NR2I&%lm>2O;T6z2}RRoQsH#*;}V5WRtw(auAzXWnxY zZ)dc6zMMg`*&<cohwmIZoNGS!2w-ff2{v1(oO2Rg<Bc3R8?G*t*It@L^>cb#z9V}r zJ`=ame_VGJ^2j2uHjqQi+bO9h4Hr{Yjk-m+0sWP!8-pf{Cq1^?8@4zL_Lhmc88A4e zekn-gT&VXpQ8;3ddYuw@xzg68JP;s|jeCT_V({v2h5p6<%O)3Q-aWxUUcMWYpo+*0 zQz>@WER<T9i-_9G4KqnU?fUDi0S>F@5)U%<zf$J3iZKTEAieD?wOS!WP~K&Qqx!F8 z-$LF`S>)y%^7+iyfDTT{jl?>D8{ykBtiu_XStcit(YDQ;414JsWffQ4Mn3Ro!Y^W@ z4{(ghJh0IDkO7IuiFUD|BIdy~4N9Tl*4=nNUstpWuiPary2!B>JnEa0$AxN{0#CJG z7{4;av_IW5vz*U8I?yU!1mTMf?lA#2_yeSmAYpl*c5`jdLq*J%Q=$VuQ7$pfuxuYi zFT_n43BE0%)Q21&W!M^6`aYZhJx_(ak=D9@PN-W@Fdfd(ab?E4L-7wXbN{YG{qw#7 z(~qRT=y#KT%J|rBjKa9DZy2d_XGlGcb;k(JpGKE+DLH28-Q3OmJpZ^$ZdC5$igO$Q zdHDi%@ti&|Ze<RA)O}q`cgZ8FICvg0p(0{vFTl_xl|FAdwJUQ;B?W1`m&0Y~rSJ$? zFW;Yw;FjfE@<e|ine+P{pvQI8<>=5yHo{A4yE`vBX591J5)Tmajb_1Rl`K$51BSjE z@?Dz8h~$~~-l>J`zRaoZW*!#rFwAV41ObL#4iL2D3xtO@fTA|4graoo2-68ierf@r zad|y?kY4P6EvbtDb1oUkbZO^WhrR;YFHPm@1sewqCiLtnzAl5E%_je#nFq*+!Ph1h zg>61PdpEb9KiqveZQBp0OV!zoTzkA0o-FSj3bIDUw0c$A508S9IE+p?qpJ~DhTEqZ zD^;WjprgV9sF{?9F-xwE4hFks282GCCP(26H6x{J0hfB2Q*yp=jWtFOKNV+VXxUsJ zd+Dk|Z2z7}88Vhnh#fWc-8TozP0>#hbv4#NF<GJ2ir6xX6S_#EA;}vU6jz$WlTaJg z0dmp!XuHZQRoH#M33Dd5^X*Zfp<8+iwa`$$fKC?Cp!3Gk`zzLbR$sYb(at`y!(wPr zs<!k?w{P%@7#D}i;$x(ys}mv+Ygzkoivm6v7^D=E_3*hY5ID_%j$f5@@j<kedz(~` z!MX1RTvwTjqJfccxL1jnt-rKT5fewY<~9GdsRtcZ$?*ig`kB4SMxH1qAcOIE%4Q23 z^uDzl(lmPE{k(P50JOBnwd-1%zmMCmdrBqwh)3bGTAbS$=Nug$QxdtUEb<=8+<oib zJf|lu`U4;yLVzuMYnjx5SJG=;Y#!2RySZZv?bLXNK8lcRfDY*R8nOdp9CT~E(hq}S zJ<Q4SEA}h^W6pF=FSwUZ$jTF9cAn?Bn-2#fw2+S%_8WiBQjHND*s8wdc>22q8(NjJ zAHr~tzbV%YZU07%Am(vTd^kbbeJaEI?@Fhy*h2;u-#0rGOyiT~yA5-}vqx1;B?L2b z3jH8rT^1GZ7tH%a8m~XZZ<uzhvS#njgi)Sl1`QATGck+1oFSv~TZ2aM_wsKsjJHG> zyAE;%EkuS8yauCm@L|EFgwEz(u~;{IE#EDHF{5Ud6h4ML6_czf{<ve@K64N1u{!ez zj|(u0m$cH<wLoQE`T`>c+>drrAX0;e{b)X@2yst#@M(H;1K%^H7HKWUYy9JiZj%JI zHpSM~hD9%9uYwlpj}U0igx&npiyo2%j%u;G>TmXC--3X)_tI@pau<@z+$UK#$fzf^ zhzl$?(|&vtr=SoJ?D_CEm~pY|ec@08Np1e+D{tfWW)UdA)>ZWaJCj^Edx1%Ff0m<z z-C^wjE)P-!f8ZSXTlL3aoM7QGfG6I5i_u$(n{$ktGfHp-*@I7`H9Tj^jab?}_Uz1r zO#$^#<b<SJcwQARjeh``*1Hn)^ZW{UPkox+eoO-*C!2eAq5Xn2wtiByh@*MG(-zks z#4u2q-?G8IQNe_&<XPX9;jp`hZJ*-I%3|zhHkgp1V;f_pHPu)y?aU=@)No58Sj=1M zoQ7-E|3Id(4c}?p?6QM~!*^vOV8PX9O(a_Cx=X#H=QFad#j@P@Zlon4?J3rP;o!3O zV!nb%wU`DwAw0uzVl7;Xpeq1QK{3&cBN$&7%*L2DTfHKHd88JF`mB#%s>5hB-B4KH zkOwaK%7)a4`T<pmJ+Fr}hf&CwMS_{XjQL2^^?h-z^9`J3VL5sF{7)F^e+Hf+;MQ^f zC~m3$b`Sa?)i7RTgoQT#b2I$Y?UDyL%pT)#541nH6YVNYbr0{QpPsGCN>9_Y>%Ba` zedfQcO_-&g<E+DHd29X2i!|ch<$L2F5dDkKbRcJW8ke8$?Bu@;{VG)OAQu*}9Xga6 z!6>#Jo=ENSQZTv~OUk_uOUlbJlWt#Cn}5FX*n-T%3yF4|9jf}R!spF+FLwRfw<H#l zW?%e_{Ls+|VcH9LAZ%V{e2Ai5J8FUo3@?J=P^SKDyQ>VN=7Z!moFeL-0|cIhL)_ID z*ybIag->OR<~#@v$HAwX4c0MJPS%Dspy7V8XlzK!mBM_CIqX`FA3U5PxmLb%e%?Vd z-3Zggx2poHY(c_BpK16_3fOAlBw{EN;K=5CfQ~BOkI#SFJ+67#tCTT&M@(7iGa<Ms zW?x<u-F4*A)(og4^_u$2%{J{r7}TyQI{^Xn@Fd-3-iKJ_q0nXI!QO5TG^)euOSxSl zpl7~q6lCL{iZ?+>6*G0FuZ%1D9*Bbl=8_&H<)Mn%VyhW3jC?d{Q<}dX-7QDam2n4* z>~=fh3~9YEnbnt_o`7d<XT<I;Rp7_%*K3}dm!F!sH0@E0=c|n4oNtJuNBs6?@F_I` z#a1xS{Wpg1v83~#G)MFZDd_IG+nDzlh^%tume#i5!Q&SRBf*abZU%bK=S&|-INz2o z6s>gzkB}^|ADv~`RzGdkzknh}rWc{!IhFVaVd;NYRQ-9MmH3Aih}Jid&&uzBd{%Ie z$dWX(FSm=Ngpe<F5W=b26%o5JG&q9Fzev9>7Z0YT9w+9zm8lS~89N3OnjL@JFV`b> z`|L%MW<vEX(Ml|q=kl&n1h-c4r&l1V0W4Yv(G6M&%%-m!&uoWj3C6Vm;e6Q55q)f} zpDvC!oP1>*Tx?QIO16tRoI5LZl?QGXOmwAddFxWn49pOjjP-*q6aDPbJPjtws`DC_ zA6y?95#a8*<{*%8=YRSTO3@k3@3wkq1gLVi<kq;jwYY=rsY3FjBKH-S#sr2X80C9~ z(3d@_iMU+{;G2MbiphC<YyJ}avZ^6UJI7~x+1+@7dA<_b7+&jCP*}-2TXu|ggYoRL z6TVYU-VAhkC&SJi9A&$zD{RdVoL*c~<CNWSOmFrVSYd+_zeaqyZRVF}_&7);=p|La z<>U7)17LtN7nJ+*=HSd2%lx2gTjlQHn?>bd;oAQB)!nC&Odh1~^>q2EVp8RUeIAm} zeW<G=xYof`0kftvd_JmDGb(l3Aoad1(R!s^z<Y~wS(|SSdGE7LqP4Sx^Ib~k(t;`S zS*<l=8gy!x%U<ggccr%rK9Q35Ifz7W<?ZuHQ7EcVQNN}V#gTeWzD^DY_UUfR=ktbo zTNR2ZeWHV1DueY4l~#~P#X7Vu7X}G}=D<8wHHzM{OWP{P=Z-I~raZ6oC3}QahaG&e z4H>AEi-i|Bj*c>lfTPOA4cla?+;$8pHo8QXA015JI)eS({zjQu`8)8zsPG%)Ugvib zRRswOf=I0fZtRt$?V=a@kEylTRrMdu9?^PLDUBcki|x&j>8*<}K*s|QSKVx=g|6|J zt`3Cfb?WihfP2x8$(cTG_Nw<}&J$D<q{VW)C@;%?($30stH&nB)d3(^tsCeb(qGsp zySrvIml-TuQ!Fj!xmXC_>Fol`)hb={&vX!;>K()}1GNnI)r@wguD%5`YkBhvT_@pP zTtH}bLq};WnKEo$lKs1qi#TEu1H!5P)&oTUNbBn+L=inXM@V@|ow*8?C?P_KK<NtD z@2z|3v>pOTiO>U19qR`b+=+WJ%f%n<-5hN$2~J2%2}=VcN5%PizpGY8aKe@D2z|$3 z5m{1Aw_7(<2wG)Aj1HA*J51Na7a+i`quefaTNUs<x$Odj9e$f<vm(U9*bWF+$J|F& zSLAb5oRU52kA#j~P-o-1q4VTMz|eH*+4+L0W)HjeTij^4DGaPwnM(}A*+ja>ky%{= z&zcNYhWO6Tgm_1uY1oOMKAxX2ml=s>RT4VNjRZzva@ohRiR2lk7Y}C&Xun-hhV<;` zDdt{F@8HE|&LPZ2xWCg^qV#EMLFx8h?{(i4cmd?Sg}u*BLI^r8+(50}iQG8r*s+>6 z`)Y6R;7vtQx$PN69%2CQarPjvCvSW-kRd!YAt@@k4buhf9KuD3LE}UlXGTQCD%pUI zLMx<buu*Ueq$!$CNb5mSfx)BfMPt`Y657{XkLj(<miHL5O)t?fr69-c%=+c;2X;Wn z1GCA0Hah<6Y5n9!R;Kq&S)R}NcL4CTtGX3AJ%s0~^|dIqH$Kg$LuqSYEp@A>U!!sa zy`wGp%v{}FOPvFFx5ieGVrwL&6dIDxn4}padm+vCM-HbXJFWq|rB~BNzmsPQ-4JUJ z=`F}FE`HpfSb=u59?D^H#%gRB7ic)%e0qk&BaUveAmkwYq4=7iPUmGImiwNz5E{b! zh^~lxGG%4-y!)+`dw3QweXa+Lnuyj-hZxo-QbAMD5);XyC>#e9=BmK<bk8pJRy2t> z3#lJ4P%6C~g-_=wUg`c=#&xSG`Jle9<;jOcgQ56ehar$a49O}dy{6VQ&<BujC+`=2 zskxL<D!7s<V~LY>(^a$E$a8T24nOY~Sg83NspoUXMp66-mAsDw`#aHjH-$CNzSfJ~ zTd)qL^o9laJo)OE4^sZ%(q3jCE5gt!`08n^A9`7EgHGc8l5)VLYn{Y3^1-L@R<n>6 zI%PS1vMW#hnS{+ukF)Zr!#T)RQUS#1kJ6z&p@rf%W=0{>*iJTbr}RxavOVRR?s$6s z2cP(XqAPR?9ZYwn0^9k>%LIp2sJTO{GkQ=7WBu_*s@4c1WfRpi2I2R6Sb~R6Grc^L zZt`C|(JDoDEcvu&2CH(j*!G!6xBJt>rxGy|A@2bnCWe$ZRCG_tt6o4wKg@Gewt7^f zWY{QWH9SQx*kO3)+DxkNquB{*3TG@dYX7*1O+8{+EYmgOce7t}YRPIN5+28ysSS{A zXMLvRYoC3pxVB+aN^wN21_pmZ^<2)F+ll<((n{#9NIi<X)Z#qBC6}qPoIQkha5QG_ z1E@uX8vy~nRhGFOY;LYO(f`JTKG*w^HzE9X_=!w~J#y1d&*46Ddi0$BqfZ~hqxlWM zDOcu<f4UN`FkL7?)^nuYfsVdjnKn(9GuDi7#sEVfH5o#aiAW<{;X6ooLXsbA$|z1y z&k{unB;dZFeykJnq$fWw*CZFo>_R(uBFJ!;`LeK$qFJPcX#h~%)>imMk%-r{ycoW5 zc-XcQFyK9Mk&|fW>Sw2Jlf_Ox?Bl9)9d$O^QI3ODQysKmJp$Z|zkkQ*BUtMxQR)r) ziGwRjJX(4nL(Xwzvmf*MiB2!|{FVpc!5K8CGWVxK&$t8PB>!i!OWHgd@P4L=T5Gf@ z4z`Wuo$Jy`w5vmyy<eIiWFbnjDO!GI1zgQ1<87>U<0KR<T?zD9owA<R`qsuVbRW0p zg6Bpy8{tn@1XobiWrh<BH5=rZG@5V{#Gia^=^$XVlky)M;-kM<?vW*`JEy6S7bG#; zAKy_aUnjq6w|en9&vGgw4gND5pJ~3k3;CL~PP+_&z;5~K^_}!RL{U4&(b(%YY__^^ zkF%b<YipbwhSep-@MPSi`SvkaaVqYb?m&hTJWVnJHI~ca)#o$qT1^<A)`u;~t}RSZ zdS6cXQfFG42J=~%A~_W@8PYXoBD>ja@er`F5$$F&hb-yp*Hhx{qZ}lW_pLklk<IK` z6yeMyScLD&Wh3EnO}%*Y>S5}6>bv`C?4Wl#CFFw`NpKE1oi^01rPZN~`J8bbX}z{3 z?ee;O+kMKfAGBvRy<;$HlLmRa?a=PKSWnR@tOq*b*2ccTU^F6>>sf(0(4FNuu$omT zVU(xtqVXuWWuW1>|B+k~UGb4rdxSgPsLimvXll_<o*r-~cy7`IQEeN-`w9B|Sup#v z;Qg07ZBz0;h<tyTd;L!HngjKl;CtnO0%(XcWaPtN=p7=(hNgd|cibuCO$)2O+{g+l zxA3Wcd&;hrU5$txfPFZkSnn|es3x$$#jjdp(?Ae!-$ONc-n!T`1(a0Wb01+?a>kD$ z38FR@&xW&++f{H0wLI}106zCi)C9Au#V7{cr@s2rmI>d+boV{d1K?83d?bO*UV^L? z*FyP^oOp0k4PWidR^jpnK6O*+L)p!;aF9_MiJ=*u-pM>qF0RU0BaE1s)W~UA&-?-$ z)48rRz)xXr?lx+L>Hb+ei}0u8b$a1GsEWVf%@^(x#kzdCaK#JTZzK*)7B-0aHsjBM zG(>}E#G+U$+`}u=--#NcaXQtJ#A4Uk$WNLOd-wD&UYRFUjP;OX2}SknEgS@&3}5I^ zQa8FH7Gep%n)A~mTiPNEmq3J&`+VlMm#~^onw&O1pAcw*y%UyQ38`ywrNKGBqSRtN zXI@9<omCiaL9m4y6C9MZx94n(KxdgpWj>2^sn%3t&;Z3&hI?8Q?>*(5pjSCOOnN@E z<TW!x=h)-3!I}alJF+YpcI>&Lo2{hn-_PHHHRkm7OS?`a<tsi99t+i48p;%MR)<k} z*k_YG6KX6Ji$0sPCuE%iL_cC09oEs1Sl8<Yb<SlzT=w3Yx(wFw%W3I|Ysn9GYR_X} zxx^?D{E*^Y*-@dc7G0yR2G*56A6}|Ze?zuSt|Nqi&|OQI4IU_Ic`4bGgJj*ur*ccm z+gMaq-on(v)@F!`>K&ERRW*w5Z6T1J1VIOt*QE#`L}Yl+7c*vyasq@wrF?KDRwc+2 z6SK%CGBB~0aqjk<vo(_dV7u|L365z<!g`dH@%eu0asSBKt6Gl?@7hip+xrjXThxa7 z?Tx~;t0dGVztU$e74|We_iArjhMmu;-$Y-nff0eN&K;0Z#2IqW;N9pKuW2K?qQ0z; z;U5t>`2XAk|Lq$3xuguxe#Ad{-{PN4*WZbM7*^x*wuQ-TZ-lS|I>UXz&4tS>>Gmn% zZi=`n4H{amn7d6YVEnD*)+GdsT1W)@6>pfOPz|Ls{lKUDbK#?RDsYcb3YxaX<B)bs zAobYan+osF&b8)8TSw*vx-p91Xxf6|Kd{G+*FyQXvc9a1StQJ;xz5Ep-)uQ^I9q6Q z^L&<US;<8LV~hp5H&uzDa#0!wrbqg#FshhaZbf)p_&k)cs6xS%IvL<nDVU4jfX2sa z^Apz3ke6iDwKdz&-8%e6_YixY2mBf$wLxqPD`4=r5}o%n*T*@?PqHk@dQnY12`wQ> z{?#gq@kgQqGf0F0&?PG`c#h@_&yvKJ;{umQCSbls-;NV+KS)lDq!~QI?*{pdvf{;o zlDeIWcOR)YL6bIfQK6b#g-mDWqmjBEN}vK+0_f1FXEsQIEO|^;>ao&Fb5>tE*Izjx z1D?TtqZzO_PR8K-b$!WH*4<lu!>R{8-qRmu?0c2Eny#0NW+K}zwQCa0)t<V>PV}sb z)R1}VPU)S^DwkjM-rf}TyrnlAEG)mul}?wr6l=&iUWs&}uSrr+H3~7?SN6(Q9DC?T zl`x$id~Yy*ZkZ%qrtzIK2VY)Jj<Vz6wZRFLMOFIIo_j-Hyq%dT&QT@Ij1+M3luXoz zBtsC@JXFARa&^YT;)o?+!B8`5V!H7PN1=S!dSD?}YM$NTGp5Xq-5(SXSs~BvIZBGK zEmD|J2MJvBd@-qvuA-ywjpap;jn!a$k(_iDZ#%BBr%mf?(Ds4>xBomoon~)Sv-?4l zVKag2khjn6BhFHc3_j-2tjhlS2Hcz!Unx{ii+wSJ_3NWj7(nb?iA;jRIytYt)<$yV z_A3j8cgY)I16zZ8P(G3w;@ye1A(L+R<*sYzfy-1dlL_jDa2inIzpjs8Z}7?Zu}}ct z7K*XU?<^G7)x+j3+7pVGq_aKY<;G;5<oaiK5(}b7(A7A-v-K;)p7ieV;1m`eQ!DR* z)5G3bmpJMwVn)Ah32BzqXw$BH=Dk5&`q0Yz(P`~>{>UnM<}dz8X2-?;(4>5`-$q_` z!VhKzt0H0&6nxZaf79t#bea!?_bLA*j$HmDab!c_7jcBI$KKQ}C{jn>Y9?T1i(_)1 zZ`ptq@g~mn&h<^;+*tg``Vrvqpmw##B}|<`1ZN*Btd461&0wO9p{%p03>dhZgmb2H z{JK&z(@eWpRF*?^I)d$a!0t$SE6SD}9-Hgb57x*?qrpjEZcKDs{e2syWrs$$rC2-D z*CUtunQUKajr5zDBR_JS^g&Gzr~S$@O>u5{X3R}tvuZJqTMc~lfdOpmdW6}&xR*-D zGyZ=4K|bI+C<LbQ4HQ!OJD?E$SHg!)_D1r5?Npee&|-HV4=YHJYM7e0GYrfScfr$< zdTd}a#GE!m416r7P}~_nPtl(KW)uCMRN>hd)_8J#inNI0b<_jZrwX47TJ5@WX8=uA zlo2KWSxfn^>1%)k@ehz$(>GrM*zZ8h{*{dXugUzkF2*^2eE4@2_1_7%{`cX3YlQ#h zoBucL4gZ^P{~eb5zoqssSI^(N`TuIEi4Pz_mD$=xu##4;JafXOvbG=isjEZ|o0lG@ zIhx`=6y?WUn0pAVr+v8Ge?-XcdtK`AspF9NPcZS%9?pNh!+P(>hWzGtH9L$=sFZP! z)~`r(r)ZbI&W4tMT-9juU8Xk7{F6ZfhzJg@oEEl4)*`QeQX5$?EC0$$0lPcm*Wbd* z8L*zgHF_Mv?CW0OwZXH?P*i4K8G#{D)Z+OJ>zW4qj8^L!GiJab1X5K|M(<e=DbI$L z;SKb}sm~y>Nob8=<XbZ>dv<X~r>=S>gCl5-ZKU3UwjjeY_Ne?1dxB~pr?I#5o&<iP z55BE5u*`N*UetT#Dzh1oG;HKcV9NvMBfjBji4ax&oYE>5`n0mv%Wplxv;F<2V>3>Z zh5w2W{qqe6cJzM;Om$g_!{dSr;kw^o!n47x2?B?V60#~~#61tWBh!sZlmT_Gr{shn z@<Mng`stE~bqEZP#_WvUp=wJPuFlIp=^y?`fvB(fR}ZCodh2+540Ib%J@M{O-9D64 zsbp1oh-!Y+{Z2BT?JzIfa{3Z`!)EM=(A?5q7WE4NuBD+=ayKvzD#+^EJ(f}d`U?X@ zcB;veG&aeP4&K;Tse=)*3LR6q?G_0+g_-BDzA5)y7hgS9j9YMZGg;d1InI4Mpx{&H zgju@Hafb`}eKz!fX<m@GBDUKQW(>N@zV<y!H?EpdDyfq>caQjF>|7R~J2T{UY^X&a zGnn?b*3<JJp)!_Sa<(hx@YCOD`&`{2JQ6N%L?Kr6@958?vQk~W#WO6jifA<QANU;_ z9!7229fiMU=rS$)af)Kk7VT|L0l4;sG##sKV`6|$X9N-Z?x<HIsmyLnDH2CD_0T@4 zR(i&FddEW(xCGihWLagGugOGva@eUr2xv-Wq0|MWqZvWk_~<!%OSo=q25v%t#WoyY z-_bav1iDv*Yc!r%CfSw$z7)tL4c$TBDzgt3-rrX4oZ@NCkI59-NcxxLj>F<4tl@}m zf1dxMYVtEX|2FDvwHe=I*h~aT1zhlNahKp^83O9nr>#iA!dh0E?JrK%dz`lpt9m%4 ze@3+`5TsNHbDO-g*M+^0L6@a3SQjjhopDS{vFYB-*8Ck^sW^9<TY`eG^*YO-%cVm) z-S=}!GsTstbg-~@#zM<OTVIl-h81G0aglyrD(#1Ns=I5b%~eeK`E(?J&}J0z>AMFi zCgCqFLbLTdc2z9OluotzBq-eB*j+6MI$OR~fiktAkb}2T^$aH9vYJq+Y}SqOuxVOB zN9?ytfpBZ!xgT(gjo+?!vr;J^4+PXX%(uR?TtP}N@IhC;*{6%tHx4fTu!Pw0#c4SG z-R2ig94kj+6N5?<#<Odh5!clBW&^KF>z2o5b!xq|KPN1E$52FLJvClRa0R?g7#~|} z0Ou@OIV=}M5fH@#`0V$5$VuoYvwfz#26S84BtRPNFW^%|b(Yd4iS~pNM&q(IPcc>V zB3vq6cJ0z~y5<9s&?lrsuMJ`sNkZbJJ!Pft&vUJ8a|C<c>W!@31J;tGOR2Q9K(PSB zqNJ6Aj3q=sJiE&g|NM0s<0lG!z&hTpPXkKPSq7TDex=8vwxi}xxX>+BB)sJFbL3Sk z15}OvXfBZxa;sUh-e`grCp{GvDBX1<m=uo}Nh#Adda0Et;4Es$)ZvhGR{-HPF(wIe zS46<!2jVLu-+LWi1L8lp7^7?a^yjV~1NG!dUX)gd1<Cxj3=N<W8DwiKRZZP6?Eb|z zxw+&yX65d?3PbJvJM<DCkfvb=Dyt4vQFp2%novDS%(i2-HfOcgac+t`^XP3<jQkJ* z3?g|G&*>a`pGTGR83%lxy^%KG!mxDk39K&zmXjeCRQdTjIv2@!03eihD<>Kl<i0el zMFJsWcJo$4iWMOkQqT!Zl?Ho}J_n-LSECCD3(RaC7xCbC=kMT(OY6Kcu-+8TQY8c> zO&Uh$doR5WVp7e^z8><F$=|j6dI_Gtds$xi*^`fY!Z=8@5{maPC>c}WHO7pelne_j zr~3~3KKJP`yUi^9l0G(?T4JX7kHQ4QZalf|F`DX6b@5AU+&uo7lkp0y9$vq^z2!Rt z<X{2}is@bQXmf+-@o1nQs7_~XM^5BY7=gu7TP=nRdgS(t+ZlO&Vt)ht0pAK+Qhw~d zGv5joZ0^5PsCcxxl_7?GlfoRJV;bGjAEZ5Dzv#fkJ3zdPzKPzFOG0=2VWnjPx9Q<y zfH&=C8S0SfMIC~U&i!5M_0%wsTdQ&TdBTZNWI{dp`*T_*CN|m2MAQ#Oar`aXS~)lM z03K)-qOr`KN@+OZ(5AJ}0BD{jEGwUYEjVQc{sQQJ`(8^WRdqMPN+p4n(`Ys`vCIRp zx>{U<U5U)-hW+LGK3a?Ik$AB$H6?lEYsEPy4`-^E&m4G4v|!~;Y?UN`YM)7<<U2)e zdXTxn;1iw%=b{P)Ew|P$iLDa^b1C*UM-U8lMByzaO^Ol-aC(n6AUlYvk#4_jKfh_3 zj^|@lCUAO99Vu^4Wc2|fC5!+9iQ{nFRE2k`8=?&FGaL+YRmqqPnA@_`$U}A4n2FrF zgFJ?N8BLs-SL@$zxN|s+Ow{$gEA4Bgd>kY8`enZ`?%|xV+ozZ^zFdR$?yZ<;8msoZ zA1$~Fbjpq0@DmR0{|F+=qDF<3yKI$X#B*kA+28Msx9uwyFx<aUS~hmwmE^W@XCb+> zu&j=cNg0&w?<i&mjn_$80iiPYC=P2BcSLn0Zr|rBf!e~MB@no4M*NieAyw&f%6ix{ zNntw9!_S#kG#$M3Tt)dfaqo6RTzj~yq}#dB*|XzMi04!dTL@O*bx7#Q=Wf1Uh&CP) zM0f7a8%@9JwW3&#Z8qRyQghAoE7<k^Y}q!DAv4Bj<#@?)oB|YMe3EH7$2h>O92#!@ zx16ERWqx=_nv;IB*ZPgP;2(GkBYOYDTL}K*g9NA1VSdi6*~qCLm9!C)?&V@zCa?Mw zt9pB6i15Nq0&!91X<J&g+Eu`N&*Z9cwDK__?c>qP!!MEg0}1OKf6zPcJH{D$xV8F= z!G=98VkiQYT5eUKw8vHmUce!Fv7>NF)Sa`tsrOKzl547D!jAXegUPzJpYFwqJkXyt zN5Ti<zx%>2pTC-rht;7tYksNOmRi{00}(8qaV3EPIFX4<qRytwj;mTc9P^Gg;SD9Q z>|Id5SXgtKaU1Z+xrdDVo`~Ri(D>O9X$)f#Oy~k>3ViBY;C=Ly;6r;)PCUvs-CdR& z5LCV3rJ$cxA;04ents1*@6uur@@j*01>`r5UScT={IWNvdi{R4i)MIS{48Mp%vgTV zP%SWXYLNf)96$X@hDUimgwWJr+ciC`M(1RMV3P{%c(yQSx@L{;t?voJtlK$7h1Z!x z+VJGNIR-jvI1_MntIBC3K$;V1ye|yYo~p+=s_Hpsy?*0dee<Sl$Yh5(bIElk_Wg>h z_EHV2_Hy`2cdXWVSRpPA7>e-B{jlFwRNy7qFu7omtzcDG><#@~Q_o?iknD(W816O0 zI#y=NDr!aL2od*$C|lQ%%yqrwSGRwrGranf&am?AuXF~0*B^8SOLX~}+T;G5MiruG zcU32hJ5W8FrobhzfV>lz)cSSlRhNTdVmWzW=Q^i}$9~N1W6lDm*YxaFjsz4v_G^vZ zhhIvjt9DRk=dWlm`Why!iUd`H=lmKd80($OsalH+04i>zY41=2PS%NGu%}yKxb77& z^f2P<mhTo1@z(PzOv>6lKA)%+ilunw?T+v-YGfXj7@0jA<%-XE_jlvA(~Re&lZ`x~ z;7@?RB^%R%`C}vB_#1=)**o*Zk9E|&=50%f(s_J25?6_YR*>#~It3g&9U!+TmMTFK z5+%H_dH@7v#<)@65@>0@=WAu3K=2mE+^OBiDp-5hZPXf=9&Sql2$8hJEvN4u5$Hb@ zZ?%1gIIH2Gpz5Zh^<{`d`^$dV2B?m552Mj8^g+iIAm60s03rS#sRFaN3Fnr>$eClQ z8YegR4*S%r=l5o8FI|BIX_Q^DGmVI~a&S((bkCbJZAzn1{cdQG=;g3(bp4U2iZed8 zYb)unH704LBf+zi*fwF^I9O-}_2q`zhbb`3*E)gg7m(b9CN`R&k??_GjnQZ~NnbA% zvqq{jQ4z79Z42Z}Y_*r@l=!+bA_SY)T}pMhbO?IfKpg5pzL9_V*)3X>^%aV9QzX~B z&kPkS@5|#Y-@Rr!$?<%ND=M~3X};sOB5Ln}Y<xSpi8`F6xM-Yzx}X)>j9b3i&RVx8 z*PC&L82_v_NV~W{pg*3Sr}=(_u?XJBhfAHF<Z+KG$u5;dXu#W#5Gf@GoRP7w3o&ec zwZF}I;!f5l9%dIgP?oF0ZjD`(`57O#8K-CAyZn`WCfa%H^~VQleuUi%6>no;-}nNM z>HgEE#&38QxHIzB5VfC|-e=|Idsi2IQiuBjn-(w7394w6m0!HQgD~6gqmp?;e2UHT zR=~K1YW?E75}^fOVUp$4*ayx$gSR4R%CL?DISIXuBBu|#3vENnz7~E0>g!1pUqE-| z0Wo0DoMXs{UrznYT#IMfheDT*JyU+IgI1Zs*rX5L4-YvmW2}H$zJG)F0?%Q5j(=cM z`hPn{N2XF{(rVHRcF|oG<ewh%fH65T@!#7ATER1o?3#4MkuKpHWUdOmtg~sYd5-*h ziki2^4l~Y8Zv@WgF{Uemc`NyvUO(O=O>H-2YD23AFKZhf510t%NZ(l&`t*l+!FyPU zinQ1luhY-idZcloZ8L==E}17>7PStzI#jd&jNvaE`gp_r<TK%2V8^E@@F&|#Mc}zc z;A$6A;OdooU#bzUS&0TJySF?dex96vHUXKo_X~Ooow~c)cYuUE^iF5ni^&2P_jL`S z>I3l&T2I?jbpZ-s=3TtXUj-lWz!u1pd(Ak^VD7Wt)a%@<XwqeyizrIg)<fAU(3<?U zyK&UhVvZd3&;wp9Ro6ayUe;~_C5VfIIwax>qp)RjMd5JVt*3y2@l$T#si<jnA<fl{ zzW&vzPIib1j_i4(6v0uIT@-Arw1a?i!>|6_RYBmOb%`0?a=g)lizy<nL-~SFjGaBv zcm4Q@S>BhHs7<l?x)yA>oDWFh9BI5@z1MyzS|suf)sK#xr5bzC&7|c!Y^`MBc_;51 zfN;vosO%TAUk;A!SNnzRAA6<b9yYQStNP5(ig78*?Q!MObd8AeqBcv7m@w`bpAq@A zVV>6F%9B+GVY&$M7vg?h3Hbs|XbW9^tWUPd`3E%3JpTaqgB~WwcQQfq+&^iy4CdH4 z@@_p#;X6g!76W?Poc}jT=zm56p0EG#rcC<7&3f@SG+5wttc|b*>55qaZjNxTJuQ=D z0^w~7_3H}ia@_rV6J`Q-LX>MS@1vXw&T^!n-X&}lq;O+He<gTAweS`pnWo&CsjY9C zYLj(_s)rE&ex3CAS8?^%xU42$%r9?4$OUa#KV0QA>p>AK5oPvV6x<#(sJlJj3>F4@ zxB(+?E64ah(j$lE>x7bqHd{<OG~?}jxp%FGAC|Y}P;sB?&B<N!wVR&MYBZl*XijTc zkGm=3k1X1!5w&h1uA2lR1vPA`@`Fqy_j&Q=wcOkCl<cNj{634EAsGAJDc3^Grj26m zSP9+HD=XMBCg3wGRoZNajSfTo6WhvXVPC!LP+G`8&o*QNu`ElI<Yw{L)4R=`vCR%q z_3K&EfH0BbEjDUsnUdL;G7#2c^W9%4{F)LB8o5YApK)g|!lSpW!yV_+Bw{=<9NoR` zQR=>M&pFSg8nJWhbmwj2jCD&!8>76v9&@PBz8OB$UIQSYb;Q2^$b;{r?b|9k_9Q8j z(SXz=*G=BOX_4_ln#2vwJ#+}%!Jxc9wmu>{tgFF&M7Y?Q@==Nij_#g*GVpPj-b_G# z*{*mloB!95ymSxbi4KgvQDTT~;{$##!DJYGYa<@~P8+c<Sh(AgV7mp%G_IHRmY~?; zj(7-?GAbF@c`t^N8bbarM1A5<M1B7si28)}>RXTDh<XMEIHG>nvRXDFzY^^u8sW)S zHEfovm&K+?tTQciQF<-Oc<JimxK1>OPq13yqgK>pa{cm5G5z|DJ$q_j-#AXpXC#f5 z8e|9yY#x8MZl$am6hQx7e7ZUzn?Nk<C$L_UWbzg!iH7NzWQ<uTMeMo?-~>XTCV=^? zTKW)S$Nl2tYmApJaRKMa0igA|owSq2GN8zO@(_0KT%GE~mS4JgOL#Kww%<}_`-|3b zO5gMXlDP1hm>Xnw3j^jxT4c)Z8a7;~3(BCV7K4)-B;&Uf_vVE5W{GzTHnO8&dKNx} zLe8Z!pS1I0Z+2=wDz;8jW&D88Fa3beKNf}iA<@ZUr?By(IpY)7exfWw*j{*r_euw- z)z{Cn?*l&|CkhW3Cy>8NUTuGv&&p66<g~*w+2_ykrPr+vt<k)g>IuBF;P+B*{S}_C zP%J{l^R@#7e%G6atG#Hq33e=NbL+e8pT2WVJ{4*)t{hKNvBQGTD)01Q`5{QnEKQ~f z8QYCepD6pd^@dZ+V@`W;91}XPP9t8yW#bz0yx01#GUV@Ev~2wd?pD5K>44wL(rH&! z+wI@W!)Mj|S*G#m05!Yv=l$`Uqk@mo^D7#{h_7f73~dNjyn!>p^Gb>q-I>(sl)z9@ zX7}aJ$_0*m$vgK&7$5t@H)hwE;c<qroM~Dh^IJbQ-NqUXyj^mO88w+qln6a0pLqfv zro|uhBvx<I59@0-VAU$JYX#O|O;9isDd3^iFI!Knv949a;%<9M>e}uZbK|chWroid zj|dja<7dW-%k{td)u9jgh*S((+lC7k?F27B7!HdmdF+?Ci})_8ks8Jtny7o4G}#F9 zC3rw-gk;`^;`<O?b(8<|<*{CM=bJCUcBgN-3h``6)qukMRmTgs!y|f$uMiVZYV^RA z0gd>!tsODF`D(>TgG)rOCK4HTnE#4EGrNS~+xo%!&Iu3KNq47&*A&2SryIb6xz<v> zk$&Z3=}Y&GC&>lZwLRW7w^aFV&lufvSqft28_zplRouY>yodT_-iNb+2&w)Hbt%gd zR56&%Y_?}X+d&oT+mY~TrAYOT*GisPgp~BzJnl0>`kiB|AxsPRFCrB})_4VgQ7F>t zhFja&vf*ap*j>spwoivZ&m-1h)8i@x4@WDXKl~12#vlc%`_-@?fNR|Hp{MxD#32%r zwz<*I1Q1N$oRWXo$4(N~)NFBn`4BE7LQRraHj+hk@CVBM5!8SsAM4rg%(Gwb+2;A) zG!o4J1|iV>9S8v&G?}=|Afct6_0j>y{^r7KCqw>Vw7-I>0{`iQd2Zc1i>=5tXd^`; zEd<0cbQZwV!9UpJ+)|45#f8FsY+k*oEkyD!1+zb>Y0=xyAZ8Y4hHPctAdx=I%dV(E zX3_6s>i?b#__(GZDCwyrH-t6RE>dW&i|Hend2d8@znyqD8t{*Z_m9$lBHlG29Yu~i z)0SU?H9X)8@Oo3gVXqc(GB<%Cv29R-#nJis(o5l3-x9W4=kNl*oFkCn>bZ#eDsLyG zg?egG?FWeDyarFD_3~W+=qa_1#}K_vzG#zD7uB^>(nX_B@6A4Qz^mPDemKo;6X8fN zk3Dm0qHgq(U$#*bqxboWTG`6L6GftEJBQVG?>oF9#%s}epxTm1EA8|3yWQ^as;_st z+qsi{#CDl!_x6X_yB^+F#K>ZRu6k-qyHS!$E5lG`i|Ffr4}K>s;C)M|+|hF}c}I5) zu2%Y{Fv=Sf&`IafvQos@hs9P1o_Oo<#&g*0W-#ZfsMLvTNUJ4oC#D&un!3%b)SD5C zd0|NFix^QMyTmvXrB04VnUtXg4{>Q>mGlE=#YqcV()pTdBZQCy1_yzn3~|d^@*S=c zH$TD9zCv)8<rsux?Zd@+XOZ-##_>(1JMULbd@ImRt1_N=I|>p~<R;vY0h=yLhZczi zC8{U%2y-pXUs&<E^*CD9n?h;Q-8*X5;n?l6bb&~#q+)G|1n;ON7`gA@<ly3H(B>l` zB0bH7G(*z4tRTB7&O`QCCWtr9tQjfZ`xzOqz4TqUYZ_c0A{<#Uw?r~|@=&z+n44e$ z#`J*!6!Lh1GRUDPIm2ZJa3lLjDw*p^u+rq2*9L)^44bZ1uS3NMJ<xe@Y?oN=<+_>b zGt$;h(H0oNz~5?Ojq82q(P0?D+b(-cRZ)(94T6n>deLvSPwmx;%HpOHBxl~X#%qK* z?Y0QQ6|(v!?j7A~ru3%Zf-cb3x{<xY3pI^qQ+c^9&&-isf@IZeirFRKoBB#xS4Lc$ zpk_ETIIP9c=S|3l+2LDzT!p(xNcS&-Y9bSvXdR2hj{3TmSWu5R;noO3JI<kUSxJzH zPuI7YZB>%Hu~h;*C$G;7eZq)6bc~vigSrMgwF9t@=$`Sx_<}kSUnx2D_*x@`oS*9i z9nK$Bxw4s!8s3yhP`oof5`<!U&-T+gAuZ}~Pz<hxPd*r=U8?*7@o^^*4MDw_?3v-m z7`UMG;+u;=tzXO<+5~EUo_l}$N3>)xinM%Jq1%`;j+}Ls!B7nE_DepGqvpK9&dBz~ ztbN0anPipC1<lbLqx)sEuth#;_Ry(~6(dj+T}BD&Pc48B=i|hi3-HuZ)99XX_saqs z3z|Xsg<-DII%eRNA{y`gfzGtaKY;h9aNs@RkfU%^ngWTaq?_gzL%qqN3@u9B#&%oP zr9<atniMKqV04o4d<=*n6T+7^dn$7U?Lv#x$;GE}EmwitBkVEha-^T5<$M5OlyTGF z2Y8)_ZjNdsih+QigF$3%yvEFh*bJbs(S<xuIQ)M8cE3?t_+*y^ok?->@Pp^RI8S@x zkE>9a)pE^4*^4%Ob&4ByThqQql9WwWOMXn6S|$t&wrhpLuw56#8-40bYJKX&BiA}3 zEZx;sI_|u5Neixh27#2WNgNb2&4oF+U!M1OBLej<A93pSX>lgpwb+<^I=yfAR1~RP zMigmjMyc<H1LcMbKeMod)X}{)rG>}P1(Nob(Ojros3vLS8pE^YG_Q>LP4b@5R_g_1 zRelE5HWxr&d~Ou~k#o4an|c*t{)pTALsxVKQk1r4`%i=TU&p|Iy2zURUY#{RATfLM z96Qf0_;_q$#%}UuZd0Lqyq<4VQz=>BhpUWSxkz)!1Y9IhvotaG?k1H`zryM6BXblx zxo~+LZ(rLg8>RrQ78-Vyo_W`<d{*X}h+!vkHGRHgFM0MUshI`oJ663LN#!rBDD+4V zy$IB%I`g@1lLpXuTumwz9|2h;NKwQ4-(=PKXR$lHN83i*jR8wtUdYsMlQ9*wgnDrp zzcWcjD}6ZyP*0{YWD*L-78Q$l_S9}<p44Hz-o}I-s1Iz37E+o&1r3i)`B~P_cf31( zBBz+hW<c7Vl$^lv1=oitlwO<lahcZQhOw?2(p|AKafKC`x^ihQQ$`)j?)O+N<Vjb1 z+Q*(34V}S1RjbA2A7G8GHO~)2j7s^vP%<+eUQe<#o9z_lq#ceedR}KdxB^=m>sMbi zi(M1X9MUYfXC@Hj=U>$hNGiQM*hpbG*kj*pHSRvX=YCAKN8@CA0vYC)<zjOc8Ge!U z$`C!YjjJS4V0HtffmlBEpj?wH2GbG_zF$bqkXb!a@<4R*uvy@=;Es8GQA+5zF&u6% zU!v)f$<pZQ)oJ+{liND5RYCr9R7-e8PM)I_@4B_$!o>5@uip94U3Rr+fF&^&o|R{h z_7-~duWN9<u`(o&NlT^CaUew9qBApAuPv=8)nC&l5Ok|TFRZ!keB&J!ZKu!7s)}XL zNa!ORB~jA@Ckf$9n0u;M`qbgtln?V6#G(q5z4)u$Ird?%fN3Py0k(IQWdm<E@?i{6 zN+0Qx_wGQSlXppnqjz=D$zdpzKEx5=yv5ZEkDw_AVG$v3FS*2+heY%~VavYVBgKm0 zfW0bXH#rj18ODOkD#R-%$BGS$Q;dNO+tr}kY0t7ZG|K!r3OCm30~yCT!V?lU?%}Bu zcHbEJ16wkz2jRa7D-P;_=8R!Fy9A@-CvYa8Ep#p4NDXMrZdlv0mblLAie_TgDjfKG zYvSyCoxmI)UMJwDnYAWex^i)KORFYhEZbhl)iS0jV-Brg1ke}Yu1x#7!YvaLiWpbp z8g2N9`mcpZTVklZf!>~52<bMdk%^dQD#Bu<=DtE;kGs-LK)nkFPCd^c=4Rfo2%#oC zt}ew6!8yVL=Qa6$$=t&u!#lY5>OQTAI<A`ur;cK1%C0f@H&19Mt}%a2si0Aa-aS_@ zmkr$ga2~kZq^%+WT>ccw&I`H}v3Iqzo%KG#P#~Yh!Hi;%9d<%|WsVF#iZ<~a$8Pu) zeBCHyTn<nZd{`0*TBB=+@=TwEK5P$&F7<?xxTf=iTg5iz5l7Des@QfV!^KA^Xp{pd z;7=AtqF6IrRu8yxqKI=hii+R(_qb~bN0EV)L<pBXQ>H9`*}OeS7DxQh%1sKJ<webB zVw>?d#!4e**KTN9yzK4qJu{v6mJdYn7|$)0Scg+sog20XCDVtU5&g9*@A(;RzXUQ0 z_2aYDQ`)fvdQX%beaYy_<isp0hPx)nDU+nodntC7Hc?Qcp{<gQC?p4_79|yXAmSy# zErFddys^F97clrs{K(c})Tr*fF_`QtppEjqL2M3FUul2XS)|m!_5zZqKulRF+8l2p z(gjJv%rHK+5Dd98s*tVx?80y}ed4a7odnR+;r;`|asJL%6^rHJG1RD@xu<WJu+6#v zuF?@9m`xH)<y%sMhheCnmhttl(gTQTW}o{G45ilh?4=>zY@dLd)XwM6Q||Qi9)#O9 z0qH*iZWycVm?L>?Yfg%{JUDmUGJBp@8wTvXQZ_Sdv(Hr904Z+Q?b>h+G!`kYw0O9x zW9jt`m81cQ!h4G*h~UbU%#C`3`msSSnM7YU4L!?WPj;m&GxNb>zzMH9V=x{&o7d92 z60Pjf5j&)CE?QVI-}qi^FC1|zq2D8VDzNE!Ir~iFC-&ptXypD%_`hAKcz-Y1a(KZ@ zwpF2Hyq_+%ws(1L1=Nft8lRT5$QWs3S*l+vsnK<nUv9&Fp_sIddsaMWoi;_kDpkck z$aTQFzP;n-bKePr_Pwigo>W<K_m%(-X>%}EDHOztd0Rad&S;S%d*nwr=lVDd!PkA5 z>#NJ%JM=Kf-4nUkg$Fn?kAb>{!j(l*)5l%g<mXJguDB!KZ80NHx<1bw;hi4@i9k&T zKH7c!<!%a>b7fz=G`y)S$SXL4)S4$eEA4``kbdEL4qR~q&hR5_@qzsBPxa4N0S6Qz zee*7vxI%TN_cn!m*GMZa)iIbXA)QJs3xu~tJ|$6jSYvX|>D81J3;KtV!+is{F@#&6 zO5Ap7Er>?xz99tpINvX80kDoxW#LD73mF8-xMG+SEP8IxO6*>&2*?k{4<`b`SaxUz zJ#VwR1fW;g4h<pZGO?sq8Px+g1f%pE1InD^(&9M;)g~qKg#!R~Gl9)D*nCLF3s=4f z^auNISgtcV0)1_>I~8v%7p98hQ5v>;Q@3IxYnM@MAJrRA3ENWBoQ3^7n|{@i|HH*s zi66(iFe7{`Gw=V6tt<!sNb0!G(_WG8EB0o|d_-6VB?j>mUG>Xhzh7=k{Pb;*7H6%K zDx4=|k=n+o{`VQWx93fJ=3W%JtB{>fKZ?9w;^7A@Iwmf-wakWv0ytU|QTfT{^O*@} zT(?q)pTxuj5XwJNy0&F`r~v5HWOjM@&!yVGqT&CKSL>R7%+*hDsi4%+{oe@H;opnP zjBU&rhR{sl&C$>wH0_<TNbeBwb3AW-_0G)s4`cc7U$UY6o@dLH!1Z9c0yAoGhLp9f zYIXbLjtUnQZBBWP8eTHMy{FzVaYQe`UzpQKkpMoI*|qetmzy+r)Ms;BgS>4sI-X&* zULlj~*I$Hz=mT~p`&$Xjk2j0&(R{}`=4*a>`&{PZZ!Bf?9=yTV%`b+dB<1v&zq&A< z?F)I%EYdkd{v4jR2W=41ZiK&6L;VS98|VF=Rz>RmZdwI@RzfzOqW?D^_LuQ8kob|( z@xi50o^1-)(WGaV4%t^G(yVDVr;TshuDY(Nz*UcFHO<Hx%ZA_z`JAtWM<aEB{|6c5 zpZ3b%*-zmr5y{_c$dXE^>e<A8N^>Y1c}10T#cNMIHNg+7p(LJ$0&f*Bgq|i4b??Jp zuq#xcQs#zNx8M96y1#szzwysDy6-+JU9sx$IS`WhyK`Wz{{P~O{`J2&hW%Kct8lgN z)TNEzU7nt-|1Tc7*^fsq@a>VG|L>9ihZFpdW&i)HM=m}{Hv+E;Ks!Y80oP4=G3DiL zrE~!C_Vsw4+F`<GD<`6xY01s>d+6Br170?)@+kP(^h>vLvi;tQ{Bxo@E`0})a-?GX zX0-DSQBPKJ>=$&hV_t4GgO^;{@&UQ0({!7QYlMm-zwiiaE;+eUN5~HCK4qjEk#Wzl zE&4FJ=kSYPM~pv`4O_r@70$WuncZuaOG03J!!1g{My;CudNU!aMx&F5`_hx~N^WDl zlY7X*nlH)?tY<9n_gKaC`|Y$7AIapIqCZO9ekM&zyVG7;LE+;tLpES=qw7lg($~m` z?_w|N@cPV;rM0=tpw`h^=`}n~6pOKQFnql{a9PA|3JsATL+IA7_plw^Pl;#Gb;dQL zia4AmdJEPK@4XNrgY3S1*)+dMd}tkXc#y2Gn&(6LVdMV9G-zp!JH&(S&!PK|L#@sG z{V?=HfOk0t%i4b<<oE+-|7kHUi#_ZubKI@^cRak}O3-?BD6u(t>4pmT2kdA2m9s57 zK6XnNhR(~UzaTYDNVx1^wqcrP>&Vv$FdNIyPg<7Kh7W2r(GL%<Sb{ZK5S@rpxR6Uo z)4NFTpnrtf`qD58IF~b2Mj>rcwtbF{|7ZwyLoMNPUEGPZ;#aAcpE7x}gUrC@hu|K~ z{H5_>bca5(Ot$HoY|n5;sPgti$2)SN1E<#;c@DX5IxAyP>PD+KyQRku*B_y>X~@aR zcR<QYrE*yDINlp`GM%w?k>`9u_e`(8Stv2KS#(eqv%i8>X=tO}DB+yz&$FqXEerP- zu$8pG{{Pr}%djZJweMF#5GACfTcklmx=Tc)1SF(8r6h(LP^43(q($lO?v9~5hDLH= zh+&ACJ=R)Jyw6%b$Nse6V}Ij-FM8kCeVz6Ho&Rb)bV%kK;nx(8B}ZQFDuEE)@SY9} zD5%yGwiaPkL?_Vr-x8qzDMNBn{Iw^6!7N1ai+IYvPetHw?*P)~_5AUP5-M5_86tWK z=%nuL`-g5`oxAs08_)^4ix8?_!89u!)B@UhuX%HVZ~(S<hON_X4m1DxSJkRvemMFv z*!9AJcWi2k<Jr`5l!<H6gH0MjwYQ1vgg_WB8$zYei!!|Yg@1n&`666;&u!wY%Pl|Y z*w9K$_JiU;`}}cG1{%m@U)J|<X7g^^vtA8`;Vh*gPg({q$|~KPBieDC3c)5IIYPxp zhT8p}Zj9^BQ+|({3r>}kulBd;Y^h(2>7nIBuWdFHtc|ugP#;a#{Pb1OtseM5Qy$cd zue((W9Ov-#y(DX`Y88YaQI(2*{bDlr1O5sJE8v>#YHj3Zs>#wY8US0R-X9`mC8mt{ zr=I%X1m4y->0ggM_Vxebv1=Y$E0aMJ-)Y@sokRux{WY5p|17DOUl6MuQ;x=l80SPY z%-B!|?`n82BiPnPG64pv!POGHcZCa74R=73&|T&bsTFy`!hsa$(vTK{9mgJA)1~lG z#&!6C$9mbBMr8EohY+{!@i}ihM8HkE7`Ct~RI70$6a3sx%NTK+2zo9rTrN9Glj+WS z`zr>&Vd^c^nJwv_`GzcgSD*0t{+EgseD-_^(G|KkP<g?`_K`bP)!JsaNWBj~a%&t; z%C`hVpy;SGo5yP$F+Z@88v7~n#;5cTsl(jsVjUF25NPP}++SWE_YV#3X2b-`(3&m$ zELcYV;`YcQf_CPdc6FHfMPzIDEI*$`<GkuH;<c1V8>0%kz3{9H1AsBwY{Lm!W^Wa; zI`gqd&I#I6qK1euQMH@vRyxh*N;9o#2OZd1ZVNRt)mNnOe!Kh>7{-M78Lgp?L0GIX zY$eKFaCK*f{gb_JKw~?NN%yzg0<J_O<e5k`?NC|B3M|97;bm>6jcn(tSii(<aHLZB zp=C&`DohN6o4hP$qKN0fcJW3JLN`!Ll<1)g^ywSBMRXw`H8awSYIwMYFS?_(khgYM zL9zYC0>~#|=+2!|&tQIf7BmdLhA%6j(atAx^AAhyh(JJu$CW_Mtvp=<Q@Nb`ooPb; zIkbrdaLN*lG~4GX1+CRGYr69UkkgU^j?-=(HM738&9BI_Go9b%RlwYHsUf?J*_BLe z!$omYu8p()>dm!cY{Rm}+>fx$IM@<wP*@)MW=CHP3+Zx8Z&EaPU;fVFnR9E5{AAv4 za`eR}JtD&%N0aV;z)qep!78`H@e7tKhv-2!^~mU_$A++D9eRqj96Y(L<jA@W-A@T| zE4|H&I_Ama4I6n)U7duUc3qymA20~zZMffy<>gJAX!h8}(i6Z2w_Sx?D$xt3fq07& zSttjBDD@hHcQg6OuF2IFM;KY+5hy8xJLhC4VE*%D2g@s?vLcKRyiVs_wfWG8OFB&* zEoX{!BV>8glhQ{}Qr5aU9+x1Gc4X5TdrAV_eRR$BDBG<$IWg$SgBgv5<8HzfL6X61 znT-_(Pxoy}bN{KME02TmRGmfyYOyT^7QdnFZAJZ>l5TP}F(7C6>r1q3)mpwc$f_n6 z(}<5%&jsqQGj5t%G&a@1EecCSZ-=|g1ux)n__hk+LMC5c4X^DK1i%CuBa)N`S(3*J zcwV=Zp-C*BQBLhw6nofTAMvW|8;J9~(jbJtx?(y7ud?gHT2{iV?>X$fDi|Pl_#kkX zseXa}`jTki*r=QAFlrPEd>wmgvm7OMFkOs46(6!mbML8;X5T(oh#w2rS!3VV>V5{y zpDt5f{M|EV(937p(7P{-1c63vjod4uOy{eW|K|SsN4e2zA^YnhYby+78^yK%n}I-e zOpZ5*^NLpk{hJK+S;<*9>~mlo;94BbBOpi9_`0yq(=!w^K~ZgKp6Ju`jV(2yY=X_b zJ0~Xzl;Pk9B}TF5MGy(H@JI7cPjNoQPbw5-^ZIEsxxVp6^Fo-)`wwyE8dn^mMMhne zP{v)(u);<)<1oh9?bDHV&r|5gCsyOFq(0)`A!s}ic{D#IZ?R45GnXr_M>QH9Zw53G zc(Q)^_KN7zbk<c^S|aEYQN_n=dVvK=+AlvmXlFR=+|!wp*$~c1BV5`M&wpm55G<`) zz({>;FGlX@(0>+@ykF66y85B@2G2=<m*jE1Vgo5_OvxG<YwV|S#HDxVA5D=yKITN@ z6P9(w)<!|2lUv0cO7U6arSMHWQC~+xXUMfC=e#&ok@AbV1t>2?@A1&9Yw6jz9(Aw$ z%nCrB24b$Dfj9q%&~oWjB*1>mKhN_hmiAFFfdo5@=ShzG9UsyI09MVd2p>zf?5~1^ z@^b>X^_RRpg|06IdSucHj&kzA3elS=a|RL6N;F^CktE|1l(y`A@!H{NJbAFLIA8d5 zRy`u|n(g^)#GY+=#f`jjF*Y`@Te9ipg=iCyyqy~l+*8))o7gDiSHUl@1_<b+o8kp$ zHfN3cQ#`%`LCKHc08UEhkM)fbTn16Euyp+(_jphr2@YTZ^^qisrHwJwW^0`zUe&KM zCI@XH9?{U)+erX1$}9S;XYmHEZb+fK7=4apaIhGhi3<CGM=olgZG{^NbjNcMc`UV@ zSd~gIzoD&FPEHeaJv4b-UUM(BWg4uDymruD6ZGMo{=z1Fv;3v%nTKlfXoR|;opz6% z(rI#q2V?u(<N<B{9>Ot&5+k<=f{PL4be(gREY(VQ=)skNm2i<t=;;>!uLfZMv8%HT zW&G7P2@&YLKT7)-<+{E&gX-M<M$wWMmfXU8dmck}eV#TdU*3FeDpnk2|Ck(SqsB5e z?4d})7pKfq;Th|)k30NLd`HHzZU}Ru*>v2eAHsdO$S+AnyqV14G}T5b=_7&=*>De4 zi=!{%CP3F!HB)~XHZ1SHGJ8R}biM^J$EEYHPP<X^uq_OFdbm}6FGKd-Ly4$M$nIMn zsaqDorB>6lBtTCRaCep5lXTqeXw-v{34HeMdFF>#X)npSp|f{hGK!w+At^|MVXKa! z_fL-M?|=1BY~uwwnP_v)!*A(%({AF}8(mT^aSI2d@T<{pRf0D_Jo)Nvv17K|*<CX) zw(y4&S|h_h?SuW9MX6S;l4vXnsTG>V*2r)(BbCxL5{lby%_=@6GZsS3#t}JraOLBN ztL3H>-LCuIGOAAdI~8!6y^G3kk{*zv(&V*I{_VBWNzwafpq{AyC^7MCQE08_j}OP! zY&!aKq`3J|49M^2qbm3~fd&vJ=pfT)GaIRpI~D8uKo9|F1}2aI)vB$Y3nwMiFGFnj zJ|pvfd`!FUv>c-P>&OlHH-tC6wcrf)`Y`Ri%e`0kD-jZ74eqkxW-mt*z0;&U?2;4? z`V&rNGX0vCB~>GJ!S!t<9_QlskLk|G9Yr$~%u4pd-}RK*)}Y)Q9DLuX*t|U(GCPFs zwXAtah{H!lB|A^f3@I+ju%k^Um-tXiuv~G^RcANlqZ}o~LO{o#b`*H0_jL02leZx@ zg;z|RsI}W5mc`IailwUf(;A1pFCWIWe{A@qJ#|!3cw);(zFRR}(@QNmb(gto^(2!k zk-{|i1;3%&vHjY`!Mw*ba9F(l3Ow<xWMHmUM?)*q^LjvsgR#CXN%FMlveVvs3d4%K zJBwmSOj}s55zVfeS}uJ4K)U6GN~{_+W2!y2;)wYqjKSe5(hv7Gj}-1=#Dvzu5mphf zEsMsU3>}HL4+ZF&tG<?qv>%sOo3AsW92-*3P>v1MuYnz8-duCV*e=1y8*UN2b7%PG zo|sxJrEdF{K1^%GZl*^=#af9KB8N45p8K}&<huwkWnk3BkmA(Q+@#Xv3UUz{sbSXY z9iVp(I(#EWTE_>GW}4m4_e%ynb!0AAnTL#EdWM22Hs2>P{V6a0r&{Ot?*j%t{A#md z%-{Ve=PmT_TYN56fntaZN*quktIX&9W|njb0QY9(L-%eRT+Q9<nd8LK;qw=jM0=k4 z>p<V59T0UTNn7uzGT*4{4i>!q=mnwWW9g*5FRlrWWU1$!=K8=>-n~T@G&dLAL5|L> zrq_peL<`$^F6AR0wIjdn7JItEn5@~hFmHuNJh=+KEpUfs<a;)9$&z@aVO~q8M))B) z4$=4X6d#<HcYA?m`_Zq`5XB9H=Os*AalOSNvXjLkY3@WZA3Se+6Qs#O8f6CWHs^{3 z_K1Rmwc>XpQYy$b>QPP$K4{l0(3>YEnh!NM(BRP1`+IRTZv^`BMU>?WHDh>h-832y zcZ~DCm#I0Lh)84$aDNSWfR~U_&qkyf{BsVk1RRrd`m{wzO&We^SEzcvk&le`HjDq= z0JfDx<3|Z#Jh!pLgyff2m3On$O<5xPAKwJ+q}nf(6u>q~QR<Ja$7l^V=CC5?0eKvV zYP&ifR8;d?vK!Q195fqhJ$HRHy}OpQt9wbBP99uh?nmJxv}PkYJj_uz)9w;aS;6qG zKVZFB(X+~^aqDY~<3cd+?ywH!je{L8n$lfzfiTZIAsxFFbM)#j)h!@&a%8T_w74{j zD!(lnE+-{8k1M|<VuO(4T64`wh+H9mBe$eLL2=L&IKQyXyoaI+>sX6P!u1~F^SGg$ z4^K!)$<w5cY}>{lBB+k4`;_15rDM~}ULRB^#%|^5@axoo-R8$64nwl9%wFaC(*WvC zt9&vt;tB<ec9pWO1NbbIlT1PYK6bdXeVbgfT2+}xXm4@hH`=Cyw5ear83glPN<jCo zCS<2dG%T+3rvye99nBHk7mjbHU28A#E~i8Ar_XlSClx2jA9cQXC&x+p8npzpWnIQ( zx|kbL)P{uhcg<Caz_!JEW`Cr55w7Sxl?d>oD<DQ{;bZ|A08X;?LG66TH0(r1VE6^! zqdWCbbvJ1yf#43rCH<p3|LgDP)sHsy`rpJoJO<TAhCVqr@}Pt}V^ylgttVXZR>kPa z=ophf=V;9N&&cQnph@2nKP<_)YtH&NTn@=~6zb|EO&Wd@Pd@s%1YjglN7J%A>^+Gq z$ucUaM@W$Y50xer&b4~%fu+f#W%@@nrswy<T3K3V#<b%isZ&<7kw$rzzBbQliqB14 zA>2Y%1017(_Tg9tquf)!A07;~>$5_58o*i7Q|Bdj=2z;+7G}VQns61|9SJVE<xi^& z;97}Bif9mkD$?g#VFM?nsaQ1Ia*<nf&nHxuf~l-F6LY*M##jXC^i>3m`#KqBiK-z# z4-bp0^7#*4Y@D8>mGg}=mGgbP-F!^1HtjJ3RP|4bqzV5W($ws55+Tz2T$;3PbCO8f zXfAbAv+;C@FBfmPdfB6`$MMgAQ;Ut7Re-!rt{txxi1gy~bwHt~o_hzYfssE>9fxr` zLBScihKKJ_njHuS17iu}6+UZThBH#1KVwQG(Fa*n3wfaK<>QMhiMVEAT)X9Z|8Wl} z_;n|LIo05o*#_Q@8l~v1hzsS?(@;6WN~EMc>jm}!__W3JC5)n00(x$DX?c-QJQP<o zg<rw9NZZ*^ahYKl;;n9`TC@3x3TLoRxF^Z+^pb9d&zFr^0p-^4DOINc-$bwHvJ|vx zd7IjN`X!+Vz}<*wWq6+PDmE?`nT3wfxT2#+Eoo;7GKKE!`ZVln_PJ7rrA)GHFcB{; zN^<;6Vaq#`ys#KClUV6^XI=xEU#BOGMu$8%IF;0SNCp?&bK%+v)^3WZ2TPU3HFH_n zX}3<!J^C(~(_KJG*H>C%aN6W*%0JKji9l~KmO$@2z9g{%GCp&zFbRUYhPZ+eKkIc> z1XGBtR{mo|`ELrI)(!bzbq=A!Up8#&^kmXd`BpDJM`?)qM3x|i(({!F5X!OPKJ$Y5 z566aXvXoQlsd2`=SYs~XMl^4!QPGOg>Lp>$^cidb(flUCy;01nyc_ftlABdc!jmm( zXp#Ab#6B!|n5W?Bt5zGnhev5q*6eRt7M*oaAc(d*eK{5^X_eM3Xmf7Aywq;x?$cb8 z^{k(5LNFvpClL9p2Gh0gSed`slIHBtR~q)*nj!kOPQPI()@+`CO<^6&fSb(GU_5>O z9{%)~a&tTpyyRWsH8dMR4G}%va((+934=39IjOjBN`t=#PEuTq#?4mDgJh%|IqIYu z1b9>vr%ST4DiO`zp9NbN&79#&jbFf*VGg;%S!87mfIKCH`tYli#dpVmLReay)6y%E z;PMWIBY5n)ndWT^lERl?cpZ!2Kr3I~>wpuRn~8!#x<T%xp5Ps_7;U>dLn6{}<<Aqe zEl(r51nK<Vf{vruDg=~=&L!f{?!_W%SRSqj(iy+<*EZlBRO)ijM!Ph(N@qw*^_}pw zog(^i!%N#?6t&Ev@t@g-#q>BJheUBwHDI@fj-S8SeG=~93gM|<Hi&pWWm}Xxr4&3Z z8Q|?I3Ek&pzdkC`;??b54ly6N=&;WcffZbk?Ih)S$)2x%MTVsugPjr)ujHPEMccO2 z=bidpnHJoQ%(Ei2+0REf$V~TSR9TETK3!~qdx$&jQ+{!c8f<geRXOGxjj-uzZLIkW z2bC@*ApJO7WbK+_TQniKmu|X$JK+u(i2aq#tm*x@jo1F-Hl~h?*~;}{uFpB;7@aew z<D0q9TC2Exjv;;(z>&vzKZ#3*h;S!j`yCJMhZ6c6FOSMR&R8A>B(<maM<1<OqSh@( zSz=Bi>MK*aFR|$M3uj;#RhPW{FrK5OrD!$xi&rU<Kw3e!?@`stX3NO@3RGs67TK_x zCwZbEivz;*?(ELkTm0tf*$gLj>|)f+NURa>!pLP^eAnWuA2pM4XHq&<WJBlpeB6_7 zFiI>lQ0y7&y1m#r_YwzL1GGNWzpsXPWO|cqwq}?zJXC37YsBCzT@;EbZt&aS!Ilqg zz`OMP<^peVuPfhC(*qNWG+tl~%=^f+Yyd=**0DMaYmQdTl`DIM(d?FXu=y=tIrz9Z zcMEmNW<uJ)z`DBLV;y;Vit+Sou7d-ocYAZ>p43a9cverf(IeAdtT$t(ecB;D-gUo; zcY@1$^X38egx780#lFM$(R1YTyOw<g<Robu{yimI9zy5>v)#uEmWP}$49o*q9vL*Z zu7n~2Vy8AQ*wvMH*t3`7<-W3Yk=+vO>Kerd-hoM$T3vkDc~{1?Rq}cWcP4bw$V!*^ z!sGC$guiGX3#J9v?#Ct+xt?az^@vLNVeueg`mmNjMZy%7XrMhqx$r3RMYz3mqN4R! z1I}&jmYkYvrpt=+P12=0u}xHIC3oLsL<S8ZMD@b4+`(>rV8H>t+mj*VRRtHm!g{Z; z#EIRIo8V5!^WH3zFXV|pQB9y7NVEfSl_I{TbOb7eMOggpYQ<Wy-$UK<ADRpGztLPw zqMFO^EH<so_I!4=tA|>NP-hbjzMH0yu*n<m&*GYR{_f*_CwX6s^MC~NoVaQ{6v2X? zLYETxs$XF3v?6u1#ElJ_E*Y9q7?sOz@DBf7qi99ooqIU=e!M07LwOQPhoEIdqU(qu zq#Eh$>9Y9f<ijNwk71N(PhP5NBkF5SY}31!8N-xzh7jh#HhSez{7n*$!CQU!71UQ* zhacoJpkeR~)3BUaBVR7~-f)5+%_SZJ{#0RzY}Vk+h=2HxZjk#9x~(CTbn~TrDc>_3 zcXPpyeXbTPp#m-mo5ev-=xc$7JutsO!i<^EXyAI{g&`#a=(NE|+>i^w9H3+#V1L-9 zF*fEjulnd=rIp}g7%RO>hVdai3Fc54moEjA>*1{iJa}E0|C%$QQ{nCA$|a)5+Ia37 zqR<qP6E+dVwsq;dt`7^sgeCZ|(XTE^T(TRZBjZIfxWmj9($3ICp}h+*9-c2s8nTHW zBMIU0RT?$eM+bWnxn%T@)b&}{ain%R&U>W0Xd@0Db(J?HmTBZWvS^3XGuoWLDNJ!` zupBaeY>hx%*=f&SpE%53R|Zt3w=iM}Cl!_DS>F+f{2nl@O|on~Z4ZdwDm}}T@U*X} ziHs3#7b5rG@srsXS*u4nT~Y~9kQl93<w`3pmXvkGtkD4MA&;_Xj-BeNalIbwz$_64 zCEGHz+7NqUO@7yV5_29;oGM<Yl{uevd0CM=c+g3Z7g@-*JE|*WOQf6Zf8aXr&t3jw zxAAYs2ML6~rj9`sKO{Jne<8v75zl`r{v@^ytDA0kT${d!4^l<9zJgAguGv8l#;koD zXo{1gc;837v$uKb@|28vZiN=-a>ka>5*&vaYG&A2%sOY-5c`y^GCW7@w3I&Lps=ur zv!2sze%pA4gPYjgHU6^Jm=Gn+1fq)=<1F7^nC&`w;UKizGN=9&lLc-je=Ey9jCYRD zBbN7_-N%*qoLN2(VK=(XDz~lVwxE@3pRJcn<j+n!C{!z=nYK8)KXDJ47dA#|4=)8U zlxt}G(gZg);CYH0oPq7rg#Va3;NHs3m^Wr1Fb1g)0uly(R%Y7vMKZa|3~R3qcRm0Q zH}v%eGkmWbr>U7hn`JB9lH^n#R#|N9YWHPQlcZ&6ti+nMpT@wU;c2HmqebxVaR1lA z>34l`C@b3hko;xher^?e((rx7=jTIc_IKQQxs*SfZB<e^M_y62+VLQ0Gzwoq?=u?@ z^AMS9e*vy-SRn$yzI)=zL%vF3wCy7~gT!MjWFfWO6agq(2WBVn4I8%hrra`Z-SQ_> zT1y19i8Rw&6T&K+*ZqP%my?i|=HP&-uY;)SVcamHCpMiImq*7vj}lq9w>~HBu2dc- z7dSi5VgAF{;f?QWRk6mUF~eVNIWeAHN4@>4H~1DCVA=7YbmP?`)s+MYNruCQv*u%K zMhBYq$|#sgYEItw18rV;xB%`Bg4{>8d(WKz0<ySRy;&q5nG6M&oKhrtP{nApBtJFN zfd9BxuY)Fz8xmz`ch7Iv%BwO^6T3NXwpdJ5dOSJ5RHw7WIUCdEUKj1KmZXpu-SD7V zYj`<{_IytWXWlI#JMxdF>OVFg|4%>L{$9fxRD#<2cjh$rL`c#gb<vVbp})XOFmH0Y zceg*&z8|cZ-zns7l)Cs@W5f0qz<()PJeuPA^@mrYQSG4}53Pb>qpH3(%ug!gmf3^{ zjft6zt?u2kpg_~snvnn!J-Bc`Qlv}^@6xDOJS4e$cV?3y|B+sPD>U>vR$BnyQSoj( z1JR>7-E>iuM!m72tM-oH(PLwHItBS}4h8SxSwRD$z?i;agblxrhpY829i5#Ns@)h5 zYUt0GqTj7@!@J*itheoL*l?S!BhUwoaVFGbVhrLLZJ0HD-Wx~XZ;L5gw`Q|#(pvj) zFJMgyP`}e668eW_*1v~22nadwE$JLXz~dTM4VnZ?zQdZ?-U>HL(7`B=>4#R_4R^v? zHoXp>$8I)lp5u`01*i3Van=@tCzIH7CWZ?ZH5}wFTDIQ;On``1JSkxbk9~sn@)<>W zZ9Az5A(GaEwxFlB4CpEGY5aYH*pjl~y7a!d33W2Q2a6$N-{@9>V%_yRtPKYX4;l_M zQ~x_!qAegD^Z8wt56cse^vy;2Y-a*aZwGcgsymrC)Zf8z3wPO69T^wGfjQ&(vWb(& z5}ef``V)&Y8mNvQkms$BYg+f0L6W*7r+w`f<k{}_0MsOKF*+koGoFkmeo@u8A<FGH zR6;8I52%C*O|{7P9tD?0L)0^zLx?@rxvD|^6N$&8t*!uOuM<hxvX?YVKg#ZtB8sdA z@Ym-Q^TJDIO=2*s-s2+2A#cHXk160dc-!&(1?r4@zgXjP8cg=E8)Dmx?anUvncyDP z3(3&30N2`i)o}}fcWkFbJ1#mK;hu!^*OPbW`-)$_GoLP`cb;SRwDR=+l2%j_jV79Y z6PA4MZ!?PAqF+QTc>`+Q$y~=@40{Wh*U`L;PeFOs8}NFYoBx46QETp?v^Vv^)7lp? z(@col>)NWt&nrp>G%?SxAKDe!=v4C&pceBmFPoYsU~dfMSuQg;VMc>LhiWZVbYNj_ zzcup7ffEA{BTVvsqHvjpgW9a*0z@~{{N+4Qj8*1+?!vvh66aT(pP8$qT^+>|x9S7X z6kh`_8V=aAbTAEHP0LZI>DOU4=>gKMEM^I*uNu*LBdJ!p?+pb;8h@bqBtkCAs`&8J z7RNNgUzqfvnV+w?cN?X74*Gj2|Cw-FNm;|1&Dn?uR_6{KRd%r8))(ZN#-FkwKu@`q zB>6iSwn?pYGZ%w<DOvm68+gT6zNS#GU1_ML8xYnH9BBMbavPWyiVlwALjb-3Uz_8z z@{`?3VQE-)6wumFX#qaD^BGXG3$SnC+|v`nOtWbiq>w~r6NNNkg%*7V*t332eR43h z_n0xkqkWt_UA5>{P{bzh=TveU<6E~ErqlT>^+m-}T&ilI^RDO1Aqzc|Zq6FVUW|uu zpw8n<NaD)8HQ#UIWb0L^crYjvjyL_~eTa928F<r|9J)i{D2;Hu9s5<ynfhCL`jhb~ z!9EaoGZTI5!WABN6!B5y8=lZ|(Vg3ngIuVSy1E~w7VoK(EyQ%;^3E=P{7!pzsSFa< zesa7{T}3C4bV#_PwU^357x&%5M^k1>PeHOB+o*f>GEWc?sAITh7;$iwq5Y5<O9Qp+ z>ySANMk8Axz=o)r^_yk03AD)hdN6+bu&1prEqj9Rp$9s8)a%coX&Qo_JCSb1M0Tu3 zM)K=hs3>8_0@3}?<cZ_r8Tiz3=5%fe7+lPUXpxlOMJ{JgfCqZb#=GXq^&q9o&B9ee za4IVcQ<|D?ev)^sWm*+W6fwXYfXlZ1*MaoT<8mt9J^rDQk-Mz@;0$QFOIaVsO1{q3 z?t3GqoI|GNFD-l#c2vRe`4bX;h<S7>@~@lWdMdvKKtBh#R(~_V&5ltx$X_((yoA`F zOT63z9Bh2UcFMPTq$dy}eRO3Xak}5QMnjV4X}gitYrTQzcQSWBe*aKqkX#UN*WM@s z6vx9r5ZgWALAne|FFLFxNU0-_wtOr*sSdyG;&@7GjuZ8<q`COS_tdS@=hUslR{sU* z)eHUeyWN{)uWZpPnplQgCo*Y9M?z#ys9EGZAN8_`@#4O|pbO3$26cqsOJshik^b}_ zxs{Ng+)AvuWCPJGO)*|`b#<hW`EW|WV1$6BTFP+AGxWP)-J{1Y5vg99Qt3X<(*uS# zvv6A4+EoM9maGoN!()1^d+}5&-Yr@P=1O|GzbnTcO_Eqj=|Ie@nkD^dc=Mz2Wz_jh z-+2^#8-Ga<{EbD89%5U9aw+jX4g*41m|(NP&JZpf#%1-7Ph45B&Aw|o8t%j(Z&D_& zY&CIjm6caKAN_DSI>q>1dy$i8G4zUUytKbwBRc=&Yb@Z)wB}y_F2k1$DG=IFAP4JF z_+I@Zhl!6uoO-FlFyDKX7&)VzO-)2cPOt~o=7lkwJ$dCNF_-H-GuCB`X|W-?O<mKb zeCX3P4xDX)r=(~vvtq8FGn9`zKHS$bGTlFJ7!fWY_>8iF*ul7kB3jb=6Iwmoa=md5 zwd0l^Tb#d3JTfvE{bGVq67y_Ogh9^76ur2It&&;@gYQWt3TLn0tMol~RCBv1X~+f% z_*tU4JZdzha=gab0|Re6%-=Rc)_02WiQ9>!4c0H#G!&F;8+)&OOe8P8%$<OHd=%jZ zG6e&WPXrFaQND&5-^A9GRdKu4Czn!9is%Y+&#wFNnUC+S(>HyqQ{m=`Zvn3jwt$N- zcvfpZ*WTmLy_8qnD0knZt$nSnD*x?Zsu+Jde$p>E&#+FJ2^m>%4Z*EK5Da(oJgJ|7 z-~t7|8adv}c;}&H1#h57mxN12oPxuyivJq@mE!uXls@GD+p(`NL-dwSPv)h+=%`F{ z?Zr?V(0CCaY?a>;5%{&T`1_~tcrRSMR1!D20dWP08l{fbPnNa$<wV%w;I6ZG?8_XQ zHH*i%lVk5ISboYjV#U@fHdqc<u)RwKSAB(A>N(Ot$yJ_)3y4?Tot%F_Tr5oP1MiQJ z>!-5otI+5-r~Y0w$1~kHPg~$vm9>VO&8OxE4ceQ{myAQc7{$3<&yC<%7kvU5oA@vE zYDT)<%e~jzV>eMw54w!#$V>*5(?dYRi?xw22w(<up55oLPmzR<VA6;4VBZOka*}ta z;1DFrViLQEnfkRGISb_}v$)1DN@V^1HQY2NmEHXwy_U`BI!cm3mNlMxlWfD5tVo?A zi^-zseLwN}bUfFL-Q`2ML$@I?nG-sMd-iSgyHwlKE(_!$B1rzmy1RqXxN#mhakOOa z+!5~p@Y!tDv~Y3}*3(5nww=221^dn4PcPp7p8o0n=$B3WO~34049n-9A=iKCNPi0i z=rIF2+dNOd;aCT_6oP1i8iyFJ+LMUAm+N#T<rm<`v?Vh$?0a4Zit9zuS7>jYhNccg zX3I8y@hrj5?Ee5Q-`v6XyjA}<=#><@Hu>)Y7G?J!$9MG?1?*3Tg!7*w%zrcG`4_{~ z0Hx=@V@A#o(U0U`#Efjz6C@n?Z%^?5RK)xn^~EyLZ`!i=hvKhe_%D(`w)IfUPN@Fh zW|{xu!PIvCPC#9Lh?Ngr|9ypJaU1Z3qD(B|Z%ep;@xSN(Q{ACF4^XfCFSNS<pMB-9 z#j&|Ry8!<4ll%W)f6)K^umAtbS6)nl{&Nbl@a|%3*!w_8;NDEtIsxm95A+#BM%}Pb z1aObxjY`OS>~JYz11RMK$tw9ZrN4JP{3*%Q7y3=kJ@{L4j!dVQIC!rSOn-f$v!{!4 zFfT00Lo;wrycooN6M~(e-`F95!WE`elHYb=XVG+%L9gc8k7btl=Ks0WH{i1@y@Ug% zU%D@q=>XzAOAdEy4}XpwBJIs^N+3h($GdluX1cpGe1=~<2Z2{gYAjdBvDQ|2Yrd$! zC7us+wQEnImUE>i1}*IQSuaj-REEe?7+wuMZ-k$|uQefbet!8aL}<r&I&4-?TFIw` z^9o?^z1xmqwPf@jXIxM}1V7N8sW~}fk$0)=(vG5mY+bj8D%gW8N=|%0ODUYT-9IOc zE1rWZIpWLWO>4Wl{r(SK-yhotbiG(CjNs8V@`yV<^&Z$X-n<yjpI74t6>!<97w;Dw zIRS3}HCxtdA@eIBX8tUq?EWGkHn+;q;+T3VyiL4cULc2FA2c=N&%M2+vTYUNR+}a} znkbQ2H*9-Zd|dTDXO$#4R@iK$zRjjlz4XRB&r_$bw#k3mT`^MT=s1b6gss@6$4@%@ z{i+_B-ZwfLvO1s7fA8sui0>T|g68f+e66lk`;x-tlN{s%oo^6}s<gW+*mI|jPb5qk z%gtj2ka7MHY7P-p!k_VP`K269F9lMW)hK#;y8~x#nZOfq*9~F-Ep^4Wst`wfH75-& zEw{v<7~IMX{-*wF3TTjHHa)z9c^jLcoq7=)pQvZ0h?Hrx6w0)|1?pfq-B}rlqB%c* zlmhF?IhA)GzCUZQr97xhWSINuQ+yD_$RPBI!2{E0E#{iN$4yM_$8J*yk2=~b?h*&8 zL6h)J$B{Q{b4%uJ)PMg%HhyO)M}Ir6|0mYMR`VNcIVAZPSj*O1%oF)>zTLXMTrRPu zrkB#1T8v>kx*c-rFN+6%TQ{_BJfo-J>DT9+EY>SscrD*Yxxi~*j5>Js4nT<LF7VmZ zxX!0Ibj^dV?;rwGM>l7Kh~qhnz5`ZSbB|B1GcDVsjm_70mi3mCVaNbC(GyXRM3}48 zfz_CYrzGfHAzT?Jm3;u;c=7|@`CiKCDo$gA`M}LNgT6i=aeOwLBLDFoXIF6W(f4J6 zs6g7$r3QFmYNSC|e*THu8}gG%1oQ_q<KUiW(t_<9UErW4lbiox<NL$sJP{RwY4?FV zFZ;oFSY&9e_C+a-&J6W)p&kGS4_Iqelc?dz-%h8|h-!WQaC3jVCBVoDB}<?!LJfah zOY?7h`^>hUXCOu_=XvtwR$btRF`@i+^QyyJtA8w$SbqDHd`bO3kuSrfHNVK0CxFvA z#1g87SwL?3<rctpEK2OzWB)MmbHxO<^ZpfL<!8@t^sDx9vyVoh1(QwG3$K-kPnL~d ziIZ#*bk4MgziEjij+s!4p}pc<<x^Yh3mxe=atLzLoOZb{V<(93$V1I0N~UGvd!Q!P zD1lkP@w7L~&xo{(XF1AQo`DtnGpQ@f@U-sbCVBJ8uAK(C*LDd_?<7F+XmxH$n9u9) z`P~W2-#5I`4_K8`^e@DVnlfqUsO93GgVCcWJLD;`CHg#nfEVT%WxBnOVc1ZtFTUeC zDQ#N*&Y(T`45G?$=CMk5F9VJ9P~UK=e)9(!6qj;&*k(-w<ErKY$~WInW8b>I;TGK# zO!hLt)Ewkno3$8OD^h)%`PEDM5+{X3=j{hGEHX%pVxr)s4v6%ndyx}ro)Xdp_~cto zK$UQBW#}$C+5a2fMZwrOeM|SL{$ZZ$5&6{sgS8ffx|)oub-o9UNxxRb0POl=cy?OD z>N=J;me~xQbVdN|In@^I!8y^EGjG^Y?;GHI=PdjE?^J`^3N^6B7>c?pez<dxXU$e) zRLxK4A$}N!*BN)T<RR*)9sm#0v5X0^c;QOhX%MxU1oE7tm034612@9VZ+`xY*BQbs z*eh&g3P22;qq~_ywXipk3yiMfyHR2|-^G^|tTl(Nn~AJAm^A>m3Z{aW#K&jFhUON{ zBhm%#raB62##^Zyz6@fzbT^B2P=Um^oZePB-p06KJgpZIa(hJEK}-EMp7+tFN0Ic( zW>zl8$8iy%(8%{x=<e&Gj?<*FUfJ~Upxx0!y`;KyR@tK{E>@i{MhcxdZt}x&vxuir z6>)L3&thm7%FyOz2amPDlb$Y&CsGZxy)>>YdV+CoA8*-903nW^J9*kNg|VyVuhS!6 zOIio$tRR;*6Uv$oSULM`Al8C;dsf<v4eu6)M~BW8A&qyZV_w&iK)+@i2CLJQ$iH=x zbiJUCqAqIPIW>|MguaH1P-nevz$(*1h8J`J!3R7K*HZazr%EbsPh!;Y7X+(TH=DlF zW;R<seC4FIVbWOU6^x{v@MJY?MrRg;$%776&ReDpnTOBKNW>+`9QCGILv6@`+C=m% zCAF1)y?ZXi>;#S-6-vkzxC2E?iEH{n=jtgP{L*Yl&ZoI}UJ#j0HcS^@Ht*-ZO?-g6 z2(+`(-&`z_XDW=WtM-69GIP_BFaFo6{$JFjQopXUBUv>RBJW4?7p((*2L@GGitf2t zHfGR!p*_@>_+txKiKN_`nJ9ay-;}vnqukp}B8BCB(zOkxk>9XOMP0tB+0p#^DF;!@ z>EhOp^>lgS0b}JC){~lFPC0u<_iuiOhm+n5=P!7h)efwhR!3@8xX@8;NPNzBk<xp= ze+-NaJ;vymUV!3SkD06lBp51K&e!L1F1}Nxs#36<@0c-4L{0viGb%fqb<XrvVxpb% zuI;Q$J5TVM3$jgT4`!`tG6@EH%;|^E#8OXL2pyk}IJ?@keErUV>&qUKO!)l#?DpF3 zO6!@f8Lx9Fzcs&1j*jy04n_hEO8GmA13<C1LuBG_cl%LM<*|J;0H!_Y4Zd!azqy$O z6?&%1|3+Z=&EU8Xriv>H*LVa`#)lZzQ`g{@i-FyB&$rqc0=7_VE>O^|%)!HT`?Sqe z!3TJWVPtgMD@oBe4dou+|J6y7sPIOdoiQdX8kt@3DaC$VlAC`sIhuNI0kM%zq1CC! zNvg&vbuYHH(~8V_Dw7rqxS2Snbeu9kuzb|^v9zCELYgw|a^TII(xQN?gyMzp(emU^ zDt94AHe%#df)?IW+=N@>QSZgH*HkrHqG^ZBt`{HjZ5{Sdbe+=?UVBIDTpb{)&$pGk zS#F?5Yoyb3h0Lb6e;VrL<`umY!#>bNzw`(Mj&nBTF}7#PdU`b<286FL<xWGfJWuQq z13sZ|+nCgsiH*NK_oEGevant<X}Q<J6Rz=fYquHIQ1#N?Ce$Bi_d#+QILEm)+;giG z*qoDC=PO0NQhciL^52LS|3PV?evrcaz2txp6*nI0x4-<G$Z;AdX7lmzpb?QqpPOIa z<eBFrK2pr{<kS`;G!{yY*2Wfjxf-b~Ov{Uv-`wd%_{k^4lKf#Ifu0v*UX;>}$%i-@ zk1(El3=MY&!YzB_OLSF<{>iIkRQ}Jrihs2eBMm7vX?Kq^(%0bdCd!!P?%CelyH$ed z)%n`^-tQk7u6fZXR6^8jV%RiY2F5)oY821V;bZRkuz{8Cx?ik{1Xi(<j8_5)_3<5x zded2u!pPk5LsjF;x#>gqKH;yYyW!kLP0~@8G3iIAkRQ-Ur3b?H>OAeWHMb~~#Bnb0 z!+1B@a3m6Byq3O&?YFPDr*gSQP|W#}ClE|?{{C<Y@IG;L7YnI#iz0({dhL()B;lv< zUEA!)bb(g|hc!Yp0Y38@;<J~FS|dB&!ZaLrvg9H8Bc3dkt(m872U+ny`C6tla7dQ{ z+CI(&qX3CY{!Po@goL-$7ZuLt*{a*FFJEnq=Jlom2q;q%T<6|A@#2V;y4)Pi+*DE7 zvXMfEBB6}+A#a=VukH#IUvixJo^cWB0qM348Zx_h3#<plk+yf+TT>Kki_{CPUVB-g zRzSyNY%tH49vN+5(IzFwuf=WOxmr!Zjt`qLkQ4sa)iravB;mtw?HC&$;N5WFdrB0Q z&Gb6vv1V{=qqYHD#oIYwyz%`C+xZUHk#4<UX`ScHJt9%*9ltEw;>}9ee*VI+p4iUN zmn=@%FHl<65w>urzuIJEF&gec@|pdbZgft^O!F6rvI_qRqP***UeP5$;R(_1HV<Ol zP1RsF2=^hwS1wV3V#ol=>uL<I$7gA<t~N8Bs#oqqjnxt&Igh0;H+ek)XW*lT;l@*0 z1?1iFdG8H=BWkfQE$`vwi>V>rWyz8=A)n(F={IRPnv$E~TKc6QO3<|Ke#v%dg5ZkJ zSStDF6@vyn<V(tivGtQU8bAbidT6`%sRNc-)8)lIUA`{LFJE<1Br0$6$?ly~Zo}&x z!3M}CIRgZEUvJ`QF44|g0r_$j>O7kIpF0=-B9!=J7XEG}68tY_*+<xCifS`*gk$zF zarjA}E3ac<8DG@i+>7&=y@S<7@h;pa8gFU9I7Dg}KPZ$>%k^15w&G3Tks}Lz2peRH zKlO2oc%T5+P}S$%r`mKKOTI)m9`v*}%80SA;*s9SLC=n;zh-<wu>!98#$mX4eM^th zT?vRQd92o^p7~zv^##O15Ur`f;JsUN5!$CG%IIkyc~(4PQk@E~od?GE8X8iNA})HN zd-;45Ed^1dD(EkWR81gl9}mOL*a=pSKroZIjYmw(BaUH&-&xQCC1Y>2mvFkJUCy(^ zrZZ#$b+50Ds_~u5NK($Q5zFPbNtE}ZlSDO{c4pCjsc~y^Z)g7j!rl`-1V_ewqdHtB z0iZM+(N98CAF_{=2$4m`!tyXLse0lrml6O;?*QTR0LxQ=S9)+Vvd0R9vMrnoS2H8P za!VpI^k1=?0jdNV=ur=kfAW-ZpLp!vuetVYQNhQQy7>d#;&3GbcnEmSxkD*+bX7(! z3eKS}<BvrZtp$<`0Zm5OFYj9nwfA$ba1=i1j}ovQBK~e+*dfwFaKfu(E0*ULp_}C* zZhrk}vciw;=PJ}m?!*^7qFap&qFdymTCd|$SzRMiS?41=UfogfdM}5zoADbTneQ(h zo@+EL+XD%|+y~{=o2gD7<1^tuJNO)^ec9y=y1MN4C9gm{m*VhnYr>y#!=;ixA?RE= z)pdwrEf_0@5qt@+Qzi(Cdd>37T_pP2mM$Kk$BXQ~c{Fu4bfVCOc9lPHzj529=b}ax z=`-ml&$15XC;TMm*SyIFnk(@`4spC6h68u?=drKn0~7Rz^yh<t`GtQwXF*kdFMd~k zQ-53eY0LJ0j35KEN#*-Iu6wgjO#aX}e4|c@entgHjMyZKzjP-cVTxYkOYa*rJEnBq zFt%-FH8)R;g9AZgJgwFR^;zF<HG9n;gwP#}$a&gqvPUd0`lm-rv<zCT6>dJy++n)P zH>;Ku8u+eLe2&lSlXVwbyA8}Jz4>%|id546VDaXbJ%Cw6^<4PTI>&d*j1;A`$nl4# z2?pwPTU-nLx<k`5*V1|>E!7TK;aW6H5ei$4kx!ZtSx`)n;WUj##p{HUkHDW`h!Fj< zda9iShw|{%1FLJ^g|&4hNP(D<7tco;%!3!Aw@yBX834r1$#RJqsVPa+h1Odh^8Gp1 zvqWl;)w_Z^08BgNmA6>6Txg^+k^|CIav*-y*tIC8QN`w+Rhy>p-qX@#5Yhae)D}}< z`GmUX`0>C2^|#$S4;eh(D}Sf)^sV@+^M1?mLYpP0n6Op=XZC}SScZq~tH)4#e2vfw z=bFC88mgW5ghe+FiZjo5r{tfsXf~BKpb!O?qs>q|-)ppps?O9|SeDX2y;_6qxAk7o z*Q9bjn@NV}yPkAYy01Ybaeds`jB;c9%@YRhNO)G+rRoM6A&2s9hL`1!^GOGEc9=!s zh*!>F<#PI~3v$1!OVy0CF`N@<91%+XCo8y0SqGM{@GuL~veRn8sg{Th$%aC>sKO8d zmmb$8DI`HP)sES~?KyqjhKrV4H{N*Pg@6u-q40bw!X4f1gPtK_kWT>^Xn=g{z&-tC z%s;t`cls<AS#<wAY2<&i$q@8gr>yt4n|-vEdXE>T&}ZG`o9$^%CN23!dPzXv?KjnU zTi)#7q18asX*RATC{K&$F;Q~*Oue+|?*GNZGRvXKRY#(X0DAwP(oJb;V)LB0cZU#( z(`TESNST|2`Ch&^jMb37Lj)-T7{rk6knA)msY`wfY>L@{?}oDhy_6A~Ayz+?IC7mF z_)%jUwH6~jEm@|7h=MVqLFQq>$#XA{8Clq*TNgXYKr2@2X^*#xSJd9wC$<K0-M6?E z=?0-c$c|tApEt&9oWJRpR#HW&rtrw*5*c~8jb_(`YzLNG)8l@3)04$<PPA)nsJBts zZAnLG!QqIYoJ+J_$h<rWG%#Jz>#{KLcxg=d6OBaJa5Q!2nKDn7aTQVIEM%Ahc&U5P zze9NeXlyBR7k}t@;rX@3c2)4Ed4AOLQCgA?DZQ~aEq=+0tM)MGCn34Xf+^W=zh}cH z)6$BzG^8#*UrlB~VwLgl<@>_)aZ^nQ>jLXb^$KjJ40b*#ew<q)3oSd}>`)y6Eb&@Q zW#>_Vd&ZWaqwgG5joTe1TB~oA)axWBgv}SDpY?$xWW_`;16PVrL@izA)YwHbjoL8d zM8zZVp_F9T6!^;)q-9C_Mtfxmsd5sc{?u(`PKS4M&X88d(|sk4X!l=C<^JoR=t+JJ zX1jxkvI8kuRQCR&O8f<6OxEU{7Ie=olkjEmvU)yS&b{$KBk&`;%!gUV`-GXGM2Yj& z%(z~~(*tV_T}CuJN$jPi$3%FX4UqHs5zIWcvJmc(UQt#pDdk*xm743Cg^&6f`KwBe zH87@6sfc@9!|6TBH1$~y<K(%^qIOczf1r#6ny~!FMS@c#YO_;Q0|~*fAO@5q9M$Uy z!&XzT#|B>3QkO|j=e`qh>o40p$~m%>lFAYhL>;i8lv9ONrUvo-_{FrZwZ2nQ&-KS> z3p^y=z9jOj6$f%YxThxxE&`c6`&}1mQ=*-6$HP32?$ny;$6`zQlql*XSq;+RUYeHi z90rt~8=?4ZH^|Bs*TH5|{?N`~)<X28lkc6$&*QEOL*pNKuV=xl2l#@$#gPF$E6Q+2 zLm>0WcQ&?{D{woNHzqHpZ?UZN`r;nVkA8raK{U(=l8%LpSO`7b6z`$=-VEzL=^6B` zS4!RrHgrtfVnbwZuI1B~udNp=H>kf(+ZmqB)4&Edw%|wiiGfcf-x@7`rYPmhYf-6q z@`zF?ol^!*$oOe`Z*#3BQ9LV<0=0MizY-s3_t5+En&f(26ADj3X|1IT1Zvc31t{Vp z8XprCbGZhOM}M5VD;aT)@$tdm=$zvjyFSPsJgTQTbr~i(eMV;NKzA@&`j6)3zf2*2 zojvN`D{vB7O~T$W5RY~J#Yh~bi#)=H3=VhCz^6*=lLMqIjkVCB)8f(GLuP91MqaeW zmt(HaK&bvSo9Mw)|JhDdgSz2{_wqOXUi*0|_bawmc-w64H+w!q$$5%vy#z)i{9|w5 z4r@bcVXT49rWe-7+ixGuk#jlhRpIiI23nu>yx8u`mr%O9@;~qwNusOdTm^_kG?RE^ zRt2&BYga@3=IR4|B_I^r)P6-VRpVCj`)`<{piwN*&p9Hys--OqZz=1bmW4iFvoLA> z0*%}T@o(up9yb2-=!zes?-+2(5CM#q7)0H3JLoD2T(xCo)%Mb-4NwQIi@h<Xb5V?s zGHpjuSheGnOOr!o*jZFnV_Hd3sl!3CuXQACab%&QV-1G{mp1TihHy0>B7bq`+YTiv z5kA6jIZ9Bd57pVi410jz{#*lt;4v)&-Cgo%EXH*<T;ZBXA3QrSDX?IKJHxOjlKpI% z#UOi`!|vOIlDT*1(f5G6BCJ<YVw*bR?4s|_PWDLh>--l<q_0eC3upi;G#4Z^$Tt&9 zGE%~Iu8f8>3z+9Hw)N)#Iw}m?-7inw*KO!ZnTC;85TDkpe9#qg(Ey#5Jk~#hkn4Un zH?wkCEcqL_8PogRtKjz;cke1$+puq_auk+-$AaOMk8yIhY2h-W-6W}e%lKA}FjMpM zTN0)Z><AnzeyJGxZG;~rHOUo{Dr#kUkQ%^xn7YLPOMx}Q7F;E_7Lr^&L9pg>0dF@P zuS))l${PUY>MCnUpQrbdgEj5_M`0t9>Id>=Zhi?^{G+i)E>WW3nR$q{USc6XKD&OA zd{Z&1@mABS@Lj1RPvc(q;%D@f3oK>kkR^qA0pmqO9y{mVXa5V|IDMhtHPk*zjxpT( z(;>$oY20#HL8-unN1>r4c50&oWx$Y}MYJY_+Ps~kykSNJ<y_DVvj=?h9y)uma1pNc zGJU|ZM$o(>`Ka2X!Rd(urhV>`|KNh@fYFO_?Z$}4O3U05{ZJ}}b9o-yEF08@d%Ok* zDxYfG+u4531TR&e$}202&s95w=2sDzjO=kW*H1ji)p;*wi?MrFM>J~zur?=i+}9?2 z?|(a#gzo|Ci|49*VG&gfoTP>TEVPptb(o34E06LjVeazu1N|!DzGi8it*x3myXbwN z*_0Y3fh~R;p|G8j&so0nmbtTfZ(l(sn>H5RX+Qo+7~AfuwRC05(6)Zg(m5`^1NSg0 z3lnoZ5*UsM&Vfl&<~gj`R-|Xioro9>A6Lda3tFx6xIH3Z|Cq|-N;d!0Ty6T6Ve(AD zLnC&2nM4N0KzQrR#8;X@!q>$_O6CmFdP+0XlGV0vKRiIrIgq;y6lUyFL@6>^t)1Ek zDzd*Ip)ctFbXBKgFr$U5p!R_eJ=|gRQI9xxtTG?-T;!$&_7otPSI~+ieil?=JN@-b zh*1RJLDCFqOY=)pFF#k@HDCkX{Nu^QY=QkU*Y3$$IfUv4ObHQUa~31U);Dt<ZXOCf z@esS5Nk4=HfYi+@%6)DJNt&j{h*xPc;(il35Nsz8apB1?+2NS(6`4e$<5Vn~5baP4 z?y_!B)gfl)>9RxdD_~W*tHV{-Ne1&dWZW@iDNh3nTYH3?<5Cs=7owoj-@+p?a+EQx z<PU?d91hpHJ-D@v*1?7~jDM`&M+mjG*HzP$I;RA5P?_h0D?>}~G4(N#Z<(^LiitH@ z2>lqtu{aGeXuIwfKV%9mb2L{<e@LdpLQXYES?W7_|2eMQks^gK@j&)z{E)8H$dkB2 z)ChJ(Dt&RLv)W}<iexgPi>lxW9A)_-zH5cw<GXw9n5&hX@g{j<;t7+tcf^@)x;fz( z=Mm0FTaGE?-kF;Wj?HINes&dFr6X*FeCdGO9q2xL$qkLr%DDrsZ#pw2MFkA<7j|wL zE$(qc?dL?71%1T4wTB744mH?oRw6eaPf?{36!EmtFl@AGyUx?@au$?a3Cu3DnlXJJ z+K%Vb_;U);h)OpZ>cQU3@d8`gP-5T;;-De9#xvEb8#I3D6gg4tRK*;6xaKB%o=I3d zGwdv`YPU#CfE1u9iQ{g4;5|V@O2b@8-$euTPHxO8+G1GHYuzd7AQHCzL?O(Y2fkm( zO-ZifEk^{szZP1g6vH+e%ziI41gQR932kp*r7xYSohp=_Z8tZL4;b{N)vFs?Hn*VG zL_7{j2~ZY@Req5mQS11O2PHAUiidlKCoZR6j;gcg7U?_~mBLW3^-^u8I!50oAcX3? ztyn${n+z+>V_hW!1K6}fZsfdk<bqAMsg3~KSX^p$#&KOA7)0iiLe_x3-IktuUk(=N z)jcSq`~pO+fHztmv!Jy!K!U%Izl<-ymyV%K&Rq;`c%8HoEi+M1kal_f<}1aWfsD&4 z&!C6^R+wp6Bc(*=LbFE$k!YUP3)pqRt=z1iR-W}Lm08nOxiwW~`l)u_Mr47PEku)& zwtKlgy`EY(#r}R|7~>!LOYzvzcK2iFrSlKB?|*+w-tfI&KKSO1z3CeO4Le7EjFSbW z$g@C_Q=BDF)28id){?x1cdE|9kH+TUixw4Hhg5A9hYKLauN0@#in`H#Gx!Z5Yi44e zz7lD$bUfE_rIBndVCLL+(uK6vP|$ItPY2tC;1%&_K{)z1rU^?4lrNKjY@bB=XM&@p z9F|e;4Ux(OJii^{#<~FxRju$ERGIVtu=kchaj(m}b`l7Z;1FDblK{cp5<I~jf(3UE zGC0BAg1fuB6Wm>byE}u!4DVzumhAVOeHQ!F{%}70KTOpWHC0eU|DNur@9XY%Hd80? zcW^kjKHJ+q8or4SwK^W>WHxfaDQ-?rDn%7X`|ySd<wLJVdu{jn;L?mMgOY#?!S3$; zJ8-wm1<?8XVU^Rf!#SO#7#@MeN*?*eN;79;)-_5#+83xA*DtUCK=j@TK8t4Ozjv}2 zEGx|A#yUJ|P5=a60`&K}n?jVG=Dux>UBpM690ve;ni1G(!zIw(8Tl&u{QTf`QpHlG z4TbjZQ>!NCJ&d;=>;Ss@@OZs=YjKY64>q$Hj<p=kNipx3RJm?DUOZ#6(*Y>~(qU{Y z>-Hs6X>s^H09*@ZsTY0g8~j-%|22tsA_i5GC+ckMoFONS-^To>p(tI>$Uf)B-x78z zb%UzCZknz(+*Mq|KT6NhYWZjtm+*O0NW`!75Q&Ylq3kdljeKo%c1vj$L(G(jQea;k zfi5c9cfTkKx&}b?iChX<eKAi`C8JZ>HfYrSuv@_Eeu+f6e2X&;J;WB|WT|x7tFIaX zGuW|rc^UmJgG2*YJ0K<qnBfXJ!6&XWy6t|r>|otiEG4!%5%t&B*5VW!Eve0(-<N(} zBx0aU1@!gQVNzS`x#Ol-?3UfO%Ne>&X4Ud{@N^j*Z8l+Fj7@`s?j&&DXy+RFV1MGZ z6_GyQfv=QkfZ3E4n+mn>y|D@%CWf5sc63Q(v-@w|DpfoI>Id-5%tj$=PSGnNn%{4Y z?IE)SGQqdgD-ho<`|MGz+EwB2&kGfxwmS66jU1dTqa$)IcXdRw@q_fy?8p=NCm5&F zJv!X5zji8z&T*1l@AM_II`Mw~9Oc9@>k?e~jtJ5uS-^)3;od2z;4*tll<~_D(J#$? z$@g58$zHryHMQVk&0$XdtKp2`qNw_7i_B_PsAo71y5~?mJKIa!*)U=YX-Tn6b}&;j zi_B)<2i3}8+A~jQ)w8zGD-?Jye{}XAznA1<mbYk?vI&%UDiYAB;%vJ-xN3hMt8XsL zBq^JKLfx1BMcn@$G}PRO?`EAd^y6%0VWjV;_x3Hm(9AY*tVMuSV<jKzIFY7b<AA&L z8)+Sh&VGlrub4i1)#10FX)g8Vo@~Y$q{<@ue(P4scnusIF)`T_75s35zrLkrVD=2* zilxV=u11k3pe<FDCqF`d!1<1M{v<;e^_VL5rY6?OL@E_LRi0*^;U=)qeEO!xiOe}A zAM-@?;kt)~^wh-DwnvTh$qJ@_;gx1{Pr!x59oFuV>lr}I6gZ#^aKy{g*A1FoK#L=D zKr)@gpusQO|M6xk+iDuf?C&Mpe5bT+ihfoQZ&F~Ft~-msZ4o+=@xrBh`_6No$6$St zEsCTf3YE6Ij<xKq*e=`C{zD>|(OBgapLXTjfp=erTM*62lf`#NP_vgi>sA&yd!w!W z3{1)01sOhH$rG1zDetAvzEHsnswzS(Ka~bAQz1^nOvoR!wqFjs2$*0huEp@?cv{wQ zq%Bfrv1Il2&^e0kCZb9hEp29YYotT~y%sG2nnjKA)17P!5z`@LUyxt{aA#3!z&36H z6ylm>xkPJb8CSMi=@K&S>=B3T=00s&onXzWWnO$WYwF{mKW7q!-O~K7$5{6TA+^AV z>iL8lY|we;*);SHoo|>yT9AjS4#M|dY^t&%smUhj>w*`c?z8YnhOOk}+H?i67J7*R zPV<jR5mw|O8STp)v61#kQ<Sy(HRq~JJ7txc_7X*dz|Rx?zvKx|!1_J4M`NO(5W~f# zw5Xd2SBUVVD<6-SNx$chVRy)0Kp=N*5ott9@qkgqRz{XWT};NpwCLXH3dC1BDC2LH z2-$Nso_$*O65z~}<fjUA-u9||=b*sTt*xHGWBRQK_VYI?JXSiC_t`8pTY|a8qk-I2 zEn=83IW_G<=jZIoC#=;(+?ZKSivZ!gV+0IJQu~omtGKh1-q{R?`=*7T=;ypct$OY9 zT1_6e^qZSOZH&H8Xa<a!ACRjj@U<kZOD;;WYFsWg4)x}CG$BQi;VuUXwX2`vZdqgM zjtJv!4})1RgE#mM_VD9;FB@c_@dovVZi%Z4OGX0ZhNdRlCryfZba_q`4nFMvbbjsJ zpnJgZX^JqHFQCPA<{M8v!1`$CCre4FpRA<TM#r3VCFy)r`_G1;&IGB@^7JJ?)vQK( zEr*|26nCWNgQ6X;Xu+uGOU%nnEd&Cc;q<noPwjOzzV*lBZXi1B73q}rn)6G_no3R) zMuTTjlf`=C3?TEWZ0w>*1e)64=a($iAh0c7PsBBks1y(1ewIJ?7^N>hNLpA+%Bg_a z{14!T*SHUjDL)84jz<^X_iMkSl+tG93~+QTf4+b8&?M9L+7hzcU^BOaT@vCCHj=w$ z_vQ|-kJKZx%!b$PQJvhnUd-1}Dnnok<(X#fPBJ1a41G|%h76wFE%2o{#avz-pkTAL zAn+Y65^5?myQ?0ltv8`2-7Ndp-3N4x=eTT9kTHLmMn}#tbUDM~bZGfmXYC`X<6??b z9vR;%LQed&8(faLX3*kLJpW|w&mHdn#~I>()Sw{`+e^0JYJK8v|M_cS^H)8|1Rf&V zqP`~lgJ$8+F~|mTVDpeqL2GA|GfAvbIboE^5MKhG_xrxoome+1n0H2#NT(5BuM_#} z8b37t+{5d@%c^RG`y+e2=Z3y&AVTK(zghQSnfB1ADg3ohdhNG;(vSZ099N#v47R+p zERy@FaPhh;M!IvH>KK6f@DLm7LcV<q-Q~u|Ba(l@0j(SlBfvchyxyE3XxG>Zo{mRx zm|ZwmR=&NouDr!HQs+&SxNhKptRop$GO(YOPv%c{5T+S6!+-Yc;WERkn}U}=WOt{- z-O6wLlbUU<`QYAiy98sa5&0jeq7UuVW&DSYBw>(^Bo00$kI2GO#8TY<omCj`N&jXs z;cg#(d>s7;kK?~<?4^ePZ52lH%2suVsB1lA&R}wAwBm+Fh@B>BQNM4+8#gu)@-C~J z-F?Y~KFCsrVZZ;%QihS9zxi8+k8K`tRe+dl4E{Uj8b}cTR(K)&+QVURRriQAgK^ry zr2Su60>aGr;HQGPD>|6&=KuL@1iS#O{+FCRxN*NH*k5~JR&iV((OTe!v>^XWOJ{=r zX68CU;CuYz|9B<%-#V&1g#Wg5#=$4$|MkcGKH8hxpNi^+w!B2V^>B-@?e4t0a*gth z3DqH<3s3yiVds9_#ufjb(3*XydjlABSd~EgV3hCxdcK#9p*d^3kX;&_XufA<J(wJ> z8VYUTSvqW6;0^$;1B;g0m!xEmxbM2R@xr8mSa<q2a#~Y@{@845G26-W7!8Vp0z3Lx z!_GN012ov~mDTX<F1Vua5u@*_u@jmRmZB|61P`UALV5H+SBEx0nMQD=Mai2+M)<^W z=y_0A;&@F@*PnILKd@u1&)@%UY0xVEl@$Pw2n(<(=4od7U6Jfpb0qm_sUOE8Zz11J zljYOsO-)$l{q7EP$o`ByJ#2J_d`srB&&jRSSyEcJ_SQg^pIs@w&kt`dxf`t((H>H* zb3Zg11Ly>8T~FiHL`Zx93l(<56C!ApxNCDXOSaH@%gx@zt%f}l95yaJmr1hIn?8JC z6XgnIncC<W^A$R^$X2RhNxMUI#YYv8%m~|a%C~G<U~5o4ishwR;zoA)O)T6oP6+&* z3YY)zn2JDuz+=zuRMdw9dLFW?C^_vh2ejKBe==otG>M#D$N_c2w?;IOPth5CsP>N6 z*Hl-&!(Co@r?wErDyyQW8yUChwc%_j-eyzJRl{Deft-G<t_1(#Cr}}w2gR}U?Cmeb zYiimkubNc8_pSDDp6stR`!%i$keCHiHj52cn;@dj4%8h27Bw%DnxywaV(73d7&mOU zA-!3jFIltsX-XpFr;ycy4OLwA;~cL~h*8wx9NOW=>1*2uV0=oZ+ak1Orn{n5<U010 zEEF>4e~6X8l@g*4LGxQFq4lVs!8)ZuC6*G#AP!~7mE|Ods_H)Z5z|c)RHlm>LW8O$ zP0;6q)N$vDs-`jl2Q9l&?S_}e&<OnyC2A<p5jT(~g;0~r<!4%8Ve@72X%;LNk3Z~< z`kI(U3KtA|jGOg`V|IIsF%b7|TP&qb@{wc@DQUAUqwMG2v7Kc~8EB^|VQ@gi4{SM1 zqa@plluQf&pxqb%5K!;bp69OS9(Z2FD&mML7#nE>R)jys0V|&Ps?CEe#C!4{{mndq zcQ$ySVXz@IOe4`Fz8YRhVkr_BDePcXx5RIO=<eg1Za#xjG1@aoAd1q=LU66cSxf3c zr^Inp<N5W@y)!|EQWS|QYrMC4$0y;#RHC)=&92h??q0`_6K;N6)4sw7b$aX4nJiEt zDWBR#G?4_lH*-px?%p&4pi!9OS#M$H6r25cG;wV^Z;gCDdd{Y)o(i=t;aOgZ^1P)E zU3Q~(E-A5-cV);9F%8{Q1wl0nqt8g#BS<w};Z!G;HjwLBx=K}Y-aO5xYkKPGl)ZeG z<JQqKNF&na)!Wm+@El&`axL5m3wp8sU{X_^8nuqpLS*_KftA9XqG+qp#GM(PhN?`6 zgyavoJ%k|K3n=E>J9Qe@v=<pKj=Bcbi=%nX-)}@KP`#Z?dyB~FxVMxl7f1YuNts;$ zx{Ie7*E=renJrpXhA)q?2qUKX=hX!J$pclNgd^uZw@yhMZ2LWA_hEbOlW5FXUOoD; zVsXK?9nzoWjR=8kzUX(giLhPlCC5H%`@=SkRoxIslv28^1|Y995Xod|G5Y1JS;A|e za@-}Z%_ShPlxM)1Gt1s>K7I-<<-QJo_(-%XH!ov^>)?gTYy1xznu{Hgfz^VjQQPp{ zOvA&3%$TINw$WwIxLBG9jSVX*7<9<$V%sH!HQ8r}kjW7EQEt2erg5q{>US)5E%eAh z`#UCmK6;GlYNK!Vnyv^!{m5SO%SAl?ZKY3|+$_B-@5vSy?r5gi8qmdFHuS|)F_TEi zDoULlkPSCEOHNI%k*IJI{DS?HfX;7*2`7kfV%R!QbUtD;0I)fG7_;=Jale}t3p1&3 zvve{vDpvo%3a4z+besQbD~5k>NEuy(+(h}cFXAW^gPG?XUNO3Jq}u~%Rfy!T0u{Ej zhC4wt>(i}t_Yu=t!sTA_x%wR1sXPs?Cj$hupILKSaf;FK8ZS?N>t^|s)f*>cdkmII z<dXlhD$cNBYt9k)X(;!pw)ooEa^Y>}Wxv4Ufx1;zP)$kb)bg6=?TNO3p@7-Y4(Mjt z$8PYXrihMnN-GbW`&6Vh7mT6-(DKbt&%=&dLX2r0#yM@2Ah66h;$&eV(jGtEP_AKf zKs*G+eZ5ZFIN{<+Hu&i?s25>kTRf?b^s4^Rvt9vzbMu`bm^|iDwIi0w0XrP}^Jn_Q zbzjfaRAU1w*r4Mq-XsRz_r(MoXz>#BC%;2K-pcWP?!@+cF68Nn_t;vD^R0ZXYN)@l zjgN7FSmjhUKLK=#<yy8@%jU@2EP)+ea}(mgxT@?G?F!V1U};9Y0_EE?92B`9iyQ*Y z>ZDRMJ|>ys?`1XC5euBU;pS@yZ-$9HEdh7!B%L15=35!!<x*dbxE}<%din<zN(AqC zzbs|G=d|Jq$dAX|{;6npIm0_Sw{ZY&Ic{0djN`d1;SB#%6!TybZJk{&4m4&sJb6WO zYJ^S(UFv$NXW|4kLUv_9bgRhY)ySdxZEjnO&~Wm|RRh(zjH*sJc1zIcgJBsgZ&z>f zmW%-)IdQ@QO%V%GaGSXWX>Uui(*-xYuW7h3=x%6GTC)m|NPUV$H@LK<5TYjI5{pvt zB#=)5Tp9IwnULE#`<3mTci*yo8Sv9i5$%*&e_L=kzN1DrENKIrF>0NSYiBTNLQ`}w zlfq1Puw`W=u(1Tj;}Q=yQL~aPmA%fVN%^)Cs%+zYf4vxs^iIPE)_S%##?zbt27|i_ z=DD!L<ZqfL&9K^d4zGU}04%Dt3F1IkpgzeU4t%D#$5ouYtD`n{^0u3Em;RG)2!EbH zD|3D>#`sMZr%ANkQMac6<;u0?YRU*xn=<2Z&n|4(_$XcW3p>tl5ox5QKc^}Dzm?08 zjP)tQ?+{fDjh89v<+c|eO!f@e%?Fx`I{+wnoDBfCl9#ND-|7JURz-(fomKTURst4} z?ar}JKU5<=k4`JX#8Oh+H9*(QYt{mS&Woy+?gU65ge8^FG4q;j!0fl23A?zQ%mNQ_ zwQbMoPD)q64u3Dg`tZqZe&&diR5JJoon-w3j6UX4NdG$GEN$^#$bLxq2b%T4)2_U( zx%?yH7))8`8|}OPgQigpl2dupdB0Eo&ZI|H(QcY+RreYg;Ddo?OhNEC1<>hAU~$7W z$D+B*$1G({s+{epzJN}kq&Q|ZVpl+v4m_aA-dZF1$1H%wbQV^g?=Jwbb%F<Z-A8N+ z8M4|?hzEe@#jLnqat@}F&oQy<QzUgxy7Fb3gCi91Vzk7@6I?9PSsRTn%vw*AijJ88 zx7Ie$tnNQDTFSI&N>5&%R&Ope*k!DOjGZHYKIN#{NVQQFp!tfSm*M-x_5JpD-W3^| zq%d>l54>pJ275;*eJN6;2J5d+*c=Nb?_lG>etB*#Q9$HBIz+8F<X_CJk&{%PZdx>& zN$Sl$JII}{N29LB7dhm~2%A}qrSzlH`lLB9TZp@BMu@G}5(x0F51Lz>N#3e8^WE7B zmNEtAR<KK%FA$ZO(g-@Ox#A+}H2FPU6yZX^wZh}P`o1M1NX0-RNF{STVT}4!nZ&1F z!0FhRfapm~&g%vdPTuK&PvVAJXk~*yi4*^c&+28rHac{?Vw(?nI-_)5EZ0zg(d3Fr z^9gy}9i;-0g7&6zzr{X1hYmM)#SVH8tB5~vzHECm4aZpMYLWW2^W|*v4z-4GGOD?J za#O(huy)bFsPE>z$rr+R`g1@NwV5m3EvdF1BJ}`t%FnMGG})GB`7a5+Tp_(n^ul{5 zc3hO?h`5ia<EW`xhgbs2!jvHIGnSiJ?VORi)=VC8q|%sEUUnjGo$`grIDSqp$!NUm zkEJW|Q)Z|HC2b0On4h-QPf+0}-*a|ilV+2O@W@f5F2|D%T1GpxOa?TOvkqTXX;We7 zs^+yI%+!k~io6Y|IdYC#4k2!4DoVtt-CZywA^u{Ag_H~i?wU06s#OqIf+OC!nQIVn zyT$1Om$9JNncNWx+0wa-8`?=v{Z{yzlVK1;4UP$`C_-{I<Au{=P*4bMsrA>TRx$Fz z3*WQQ&sfGc)6M#4nl(tb)y>}aEuY@cBA18=`wsJKIB11Tz87fci(G83XmrWxzCchl zUC63c-1@w*Aex5tN0|IsGyj`6iEa;_n8`=0P?2GjHMs~jH@(8_Gp!e2E*nl7i?&1t zHGPbD){6$qiFYX>ua|F_*id`3GyQoe5>Rc+AzuA9Zqn12DCOb32Iu!5`%(g@Uy{d% zZc4PXvVElZO=_Phmt@68LYVo2y}w5u<L+HipB_`jcCxL6&3Ef!T9L9yf*Q$)Te@6S z;xfhM1A5XqlTK6q($1N@=wx?ZUX6BwZ%*A`HF^p%K=lSxTX0LZ&%oACAY?Rz^4-;F zL9WivAfN>a4lsXn+riP>bKrtHWoFm>Tzz+uta06T&klSssB)`2u9tjGag^+^1JUh2 z9CjWOS=`@@9RKa9dmZLMuDbODE==pbNb!|w%Sp7~boo;S6QZ`%8P#WpdCIkU7&DAg zxpOsWY)d<#ek-<wh9ygbjr>)Upp*R}oB5jdqn#+JMqn-zk5siFvg8j*x5ml}6av9Y znWi#qmmFA;CFUamdihUZhgLp}azutN?yz6rR|dXsjHue|2;aJnuFVwgV6K@>7e#va zE^?dECwA+X0PZ@1+ht}l;gSz0utpe3r8HxfO7bPEr(UnBP<8jhKXzSGKzy}~M_sr0 zzEX3Y=&n&W&DjK%v%i7>Ad$(w(*pJFX#BKDnHfe0^SMSF%Dz_|2@NhqTl!63RIQa) zK#&eP%&NdZE!e!!CUJ|UpsQRvk8cUBE!CXQbwLM>^*Mf#fz(vu!eo3!XrX5I?G&BD zULb>Ew%L4N{oX6oH#j#5MW<*1{O4#dK;G@2<xaOmQ|y6JM{g6posj>K2{Z2<hSH!x zZj^5`cI&aPR3(-IJ>_<A`XG&w_PtPk;*fn=)v3TIzsz`@lqV9C&EDkpXUq7c!`kPC ztNRyAv&km5ENTF<KMM7K+X?#P1AY(F%mun1%_^XrDkp^EBAInT0hc=T4xlWSiunQ} zW0t<{pqod)G5(Gpxx@vKTSSovEG`o?a!g>qD=#z7F)fTh^dQEIGtKCor@>I@$(Y^r z!`3NySyVv}is2c3mUA#QQrQ@CQ=mSq1Aa;3`q4ZzNv^ny{Isw|223eFf9{qBX6>KQ zR1a+^G5WSf<mzSKQcxZBB;%;J)#ZL(e34l_coEsni<B6zy3py^;!q~R5b841i+eL6 zKH~~DeLq(?^YYN22<B!_*Nmq=^q#|-Y&IN3J4<oo19fFv^UTI3QKoxfvOK&*he_3~ zbEzfY>@V)4<Kuh5Cltv~ll5>)l1Tx10&gmnYjsc<-71d>~)TsK(!)IF@e5-UKQ zkrV6WQ}BYi)zi5nL)9q&_;$RoVnME)JTlhMQs;`Eh)daWF!NU8JsHjz0CS-Ob?X+K zQdB&hWdfD?F#>;3p%#gwkA7-TL%iB?*KRUQwWIWzXM{qN+CXr_n1cg4uLW!}eOaO+ zG7NYVYth=}>!V{V{T0W4P+=AB-1!YSK*=wxTgPeaB{`#hvtXAgij{cH7poxh+MlF! zPht`LuhXxoByWz~m(l01DS{J&r*js_a`MlUTB2u6G=Dr%>6twIOoJNI=UEU!yrr90 z(q?QkIU7g9J+D=Fo*Y!OwcxY4$=Q1WA{`B8jph!L5TWbTYwnSCFT>nbIHuNw&e|;^ z-*!3*R8%LF-HrQju75{XL$zH8SJY+Pf-8_M)l)x0Q>Foaovlu;L*Fb;S6`l_)g(^3 z%4AfvweOZwU?K$YIbd6%7_6%Q=x<_+{v7>5ar#G9%JRp9=2QAh^MP7=gp?5av8O_} z0L~_eARU!2XPvg9Ce5K_w$$@=ncuy90gWzcWRZDQ9`)&5PB6N>3o0wDZJfKh6tbtG zZ@OE);;M+ideQjiX6m?u>5w@MJKD~KzC%3~6q_3KzKa>1Ptm2wj*LO(rdnW(H62tl zhtEmNLZ}%eK>3f-mh)JsdY<%=kqqC#@e^v+!P$SigW^yA!L<2h^<ZIywbV+YN`wHp zH(~M!u2E%S-E0mz=Poe;i*~c@vLrv@uWN$?d~I-#&R`S?=rBh-Y?}m~>}@&+CCZ9_ z4j|Qxv`NL+HZ%?RqF_L5cYn~Pv9j&>yia8CRy#!`4rDLv#jWV{)yBq#JGSjzVCZgt z&!{|&+tHgzR+IhR-BMs_dO4Mpf-hcpASdNj?xEa?%(NUo;n%+Qgo3U#f5G)S8Isdn zYaN2MY@Y0vO~A*v<6Q1gl2iYm(;A1PMHVo9OYy!#<srG>4U^h~4U?=>EP7n3Bj7Sk za^`(h5<EFNBjhg4%O@1It7gC?&r(c!>iaH08Abh!Q?NJv<+W0I3@ef&x>cIN#K2GS z7rx&=q~{?Le7h!T3%Zaw2)Gk>1PzrlOa{r=4u&}aSriwX)(zNaUA({B6q%F2Z<NG# zgYk3}hyLha{c~rn)&7rdRdT<?fy_sU1J2@*cB3woK{gy<H{WgznP`H9ICDB7-Dv!C zA>dfXG{TR&ujTV%{QNX{N>|PS9l(?{JMjuI9zP0aTLhQj`T4Sg^qxbSHHpQmlCvjl z1e(R7q}3(RE>&XlvXtY<ni=&(BF)c2<E8ai{rEIBFK%_Ao{HP57wbiQuhzrDfi8tT zQE<YPq1qh-m(r-^TGVHR-@G^&-~i&TV-Y^}?GE<CPbU(uU~;5Vx>(|BQf=laN-Z>) zKr9K+q-IC~Rc@Y77z7?D5;7Fnr!1lLn~KkSsKa}{RfoQTE;VZnIco_0os3lVdRgFV z4}3qDZJ`8wp{k=!F?bPp4>`|jO}%zDqe3@`_PF~R-4Hb^RGPi&6}<rE5`GvY5n-GI zCNo{3^*-^W!kAiAN6I1Qvvg+isAkM&l~XUmrwPM9=N!txzrsKVHtU(+Z|2KH|2o0s zU0S=Z&d;wugfk45`?(ac*VTz!HhTs_aGfEA_k*l=>p2x+40|8%rl0s9zG9daBa2AW z+Xah9r@hnmAK47EjWQbuc%nbuWiMTjS79`seYIP%M=v(zQszvka{0n~mhHnvejGM0 z<!6FuOJPWe#s3O1;xV9!<1LzTVf_Z+qGeoRsjkI$nQLsTR<Wiwm$#-XS{te322W>l z2;;HUWmv2IA6r9Ye??Ws<D!c2oZ{lQMyVamrxewMsJED}z6_Au`pBB-_*c!4RdQD4 z?FGRB_zObKjchm;<4<_hC{|M_x0*afc>TYAdWH#}3mqvq=UZMTx>%{k+WnTubmJek zrHFd!Y$H!{+Bgk|3P3wKuHPDwVvU(pEEFs$L(}THkV$aa$7>`xQ3NagN`lp!^nYRj zC|FPT>{YP5wdQrGrDGSmuto)hVExY;h(7C29+?vw&WV<w5_t_#H!j{m?pF?Gp-Q~0 z_eUMv9602A$%4pnY>NI=T44g;zXa%J(oJ5;c*$$dZhg<+AHbiiCoYG3t+#Gkm~0oB zTaUCnz3}3j7yX6b$0@Zb)jdc(2b^TmUaS%5S*zm7=bbp{Qs>Fm3M~R;qeua1RLld$ z<6fP<_ZN5OkI37Wmkl5+BI6IGJ_(qt7ky)UL?KpW<8>=%R_R|mz(CFIM#9}PGKG^O z6YSq}pg0|7us=z@J*r4rz0ZSVG2Adnktn~_BeO84f^zDhI@b+MD!zGl%4FJLV*jyt zQbN+0CjW@?);@XbK5*x|w^dE{lbq%c<NB??QT2<4_m?`X-tdp@D7^L%epqWME%!@% zPkMwXN8}mSJ?p$~ULpGy)BLSawdq;@j7ET}TUj42X%X<atIG<FfbvwBsVc7@<&>Qb z@pBZ;n<|cN3`NOCM4?d)KYVBFtHe4EI0p-$27>d>-f^=mqmiuAUAo*e+~z{z8#iZ+ zbuOL0P%EWVzBF*8z&7U*lZjk(-HP~vXVs54&3@cC%H_6%jAY+rg?h13HD(k<c~07f zZb!@f1(jwY1kKX*_mU#JMSI&6{7Mh$8V;&OFyga6x3Px3SA(9gu+2qzEyEhdcQp52 zqsAiZ?(nv=Y4fPr6orn62c^@gs6Ro5U3|rT8t{cXp}EM;ODgFAAbCZ-C)Rj+eK;67 zd1dsQabPudF0px4Z#|1ez-8mpJUdA}JNNc_Et7EwzFsmB%2*}FQ}9iki`A0joVSA4 z8^OGGy8x!VtK8tz-D`%eF^@gA@VfKhuK8IVC)v|2ZCfp+x_#8|>p`unbVZm!PR=YZ zm^QqhYyu6VRNjc;XU`f&amWQ2tyjfznq2J0Fr?}*O(+rx11}Cn@E^$g*<5EGj<?b0 zQ6{?1v~Y4lUaZt*fpx{tA_RY)*AwrLIk$M%xf@hW(%tG6al+4KOr&;6>s@0YxMjAT z4JCgL@CM}FfE6z7y1cnHS}InrC6!#TZh;1E<&?FGY(}|ddOWvf_g$G-?^?(1_6F*c z)+TAbe0wzWv8+n|`xezF@{n+Y$#`72!HUMc#v7pc4V*79#q5gt`HIOOTkT40y?V~` zgh}%(*mqt<N_)uNgv<q64_)MoYpcr*Q$hH&3TsAh_pIq^KMd$&1fp399^UM_M4tfU zMFbr+%QV$hC9o%EDYATH7pgqY<Z8=vSTBr0SAKFdLw<XF^eSgCpV3hxcu7s&w=oN> zZi>S(tu1t@CkwtWHCxc6cU^mvVqtuFq_r{9uQ#3`fs)Cp7l$`A0h7Z-zAkgl;VthU zdp#hBjk#=L&ilPOPvUF6#J98rPj`pgX;@#kKh1<ga2}Z-%B?`II%}NLRn6F*`sT-3 zHU>1UiD_Vox`t0L=$i+K$VcxMuuAGb&E)c}%D7DgNCF)6CfO^ooX)4v&YGtAN`Rcm z%zM**$X|gkG<DSPIc|aY(-QFPjvMGl+`Hn#k&sJu3p4%jQnMi%1x&h8c2J_f-nirK zW?4PrLO$Jr&8L!mlG}!)EmfWLG=0i0@K@pY-;;wxrg%dVk<dP;FD5PXPZQdv7$2l} z)c}^Bu7tc<XV7GRO--qEfSLy4BB_iCoK~cXG>msm<N1xShq=*kPff^BHIwK<SB-f+ zj&eeWhI&uZ;J0*onnR<w>zYV-;rt1VkBVc<Bymmx*U0c1jyc$hY+#!Mkx1Kosi7Ut zi=>i6S6z>}>(nB5(SOH&sFfn&m?}?<Xr3(#%Z`s3svoKA=T#v*#5O^{R3W2U1|!h* zu2cy8v2#C%V!7QnTgxidmBmN80o{H94LhaicDZgzN+iBadcs*Lxyg@var(k|U~e|> zP=YUcp0|DR*2Bb>kBQ)3*-dA_73r&QvsBaNtKomV$Nu>N_KJr_j?911$bl8@XfKG# zNNEh8xtf@E4)RQyO8dCiZ+ZUe)J}i2fw?E4o@tQH_A<POZrmkYGpL4GNl~77rH}cm z=^o!wE~$f#C?lZ;1M*C|H%D*_=}Ls1p`NKR+KRN9MA1)ouRyfpn9i0DT3^ufWsIG> zcqlCLhb{s=ad-EmmG140hONGXxQVi=*#>T#c<#)`VM>O!y$YamCgh2_yU}8EKpR+V z0nztfF#e^H=7K*@T;f;!VVNu=O;ee8SyJ#jyA6Gcdz%xUG;;);w74M81+}&6w?uFH z&{oY1I8rw=kqjpk2>+;RnXjk<bZ-~@Mf@XI4jcN^T}zK`W)oCM`1syu%;7^j9B3-w zh5mWrGDv<;qTkOw=$EMFyqnM0k&~lJTqN+tRlW)5K3-M#MaJL~=)J(MiC*#XiczL+ zW*eV^rSQTrE96PA=P7|>?$}s?=zD6c9bbW6-M8Gkro)j%a7bOWlk$f@a%%B$j1KPX zsX)1bVR@T=7aUps>j>oYLqJ-F2(?-;{o4!I5WDHD1e+xnG<fo1O!!VQAfytg3dDu% zEAWK_1l3iciPV`$nTIz*r=^^rK^wWAKW(&Uf4VeW+eL|Sf_K?U$TE(i5+&J4$iAaW zo@S<6g~=IE5^`$>f9`bB|Fq&8i5V_Q47sY9OE}jg=xP`Fmh$CrlfpVyg5U6O9a3){ zttK8UKZj#PRAk)I&%w5u|H{R~<_C`G7lnzWpCZJE#2g)=FWbNHeOqAJm<In@bLQ!R zD$Y_QB3f{vg*0<{Yo{8K@E~1#C85$aXfHJNlt%@NLL;Pr3pYIQ+nyB8n{T;BPd~^n zpvt>AJ~JCHhId~2^lI}Zp=pfL<tA}?7;eGl&q@WX#IuW}tgc3TV&v&v;f{vXDv-TH zk@<zqm(tqX5I91WfyXLuPv8?>9>&`-{$jv79>ah!yZ{85Oa95NzkPY;>S-$KXfl~W zRVlK&!-z2ql6pF3x*9&44`N?reMRt@HJnWts|POwWZ_fO!oeY(b&<Lx9uW{1y5!5{ z`km$(A?de}ld|-=D<A{dEZon#Mf5|-1^ka!cOd3!Ge@Ge>FJq$tTp@bmQY@#r8O4K z<+KRo<1v5tg4t4vQJ=#ILjk9O8et-#nGxbxIt%j)i?$oe@4<wA*P5`bwRPt)gCB%7 zCET2ePZ^=`=%HeY^Biz25{KGK2Uv3#s<4|}H<w<=kf4Ss!jincp2J}OfMhJ7EHr}= z^d_(L1^0Q0E$$zttM|_gJl`|w^D!Yqan``+H&$CixpJhl8#1-jsVG4s-}0J-3=x1x zo-FyF6J?lMH{(c*<`00l>9Yaew!~O@5T&lxP^dJ}iMJWZJ(%%*o9ilINX;3zj=)`h z^K|`Z_cyiF!x6~=94@FmQ&fow+n0oz!QTeNJU4$;$OH?+zzWKNu6A_u7k>QmFLz6u z_O-+-OJwB3`!ni?0~l2rzT?wBKdySk7(+;Hv*W&;?k_lAry?{SUf)!0pl0>vg^jFP z5odtQZAgZV0cv3E-V?X7YlOK*fe2jUB#XhSJdC*XM0kxr??f})u8(|JpZL1bCwmIT zBSncgaBL2D{HZ@zdDTVCQPLbC2vS5;jqw}VRF7`HCyJe<Dhrf^i;VI;g%wGwI1oYu z197G0s-TdUn5d~_LsfEo1<hAX{jW%MBw4sEi%;gc>EDw)o!NcsP>Aq+=IKhPmIZrI zmDC~sC45a<Q85V8i*7T6I0>i_1ux4Ka3bV&CYy&|S}`IXLh7MgN&9<*1PPmj<<Fp? z;z>_vzcE<i;e<KYG@{4f$5j3(f_~N9FbR(-f_%e7Y;75>VL{k2A4}sRt3*z~P7P&S zUuxNyC|9FDG+BCIx!N8}Dc7u_EA(>Mnnuo})u@fjLyO=0mNawv$ABH*n%>IEp^Y{r zxv@<v`G&4#AqUlHyNRW|Q^8JLM8cY!Ui;EH_mi+XMcZuYdbFi%k!Sc}uZYJHuE+Pn z<n8NWGnc`9(4HN4Nt{z0$rDsq1XLM@^~4~_m_FwfdWc*P+wA8cr?KgQN*&O0TsUl_ zZIq71yVL~u&fsePz3hwg&|qCdClPx<O^gKtsZ8fs!b!?n84qK&NbfwsxyVTjt!k+V zX=*@=god%GaBqRwh(NP!eob`hQ4^gb$2HfANr;gOvWtQf3KuJp-zmXX)yyeA1nTz^ z9ki0YIRL%bsi9BDn~aXE@-5SIsXY2za^N?)gqtxseNm>dwx8Tx<;dQ=)U*_9Nt^Zf z=}oOXztf_^foR#aL>y_!kGMbI;h>y)*^$xynaLn;wqTyh^^l@+QP`yf9c&3#%zQ$F zT)!y7G}y7kfDL^L!_t-G!sdK*B7by4{;}cs+XuGr9#H?vUodO)BS8QE6=of>dX^oQ zV~%{d%YfrFbaJZ&gaC3wWFEQ$uGw%ZMRXr-FTmU4=TX#FYkooorzC}ekFNNCN1tEA zJm9`~kfUA;E-vRWz7mYn*!IxBU1e*J;WDL^-Lue(p>QwOip?Xb*6WUao*czOlc0zS zT@OK6#8vyel0|=<I;PS$Z8$W4jjjGearm=R``^AX#D7Rg%)b)S#A6cD{{kf^0-@2u zlP6KxWxRQuLX&{@?Rb#i1t|<=>oZqRF=?f{kNlWkMpr#PP5x>dzE6B8EcqW>SV9Q- z#*FB#$0DHrMw$HWcauIiEovc47`O%ghmik2jU4zNLjKQd?f><g{~_eVerv}4KTpU* z)T_wvQNH(7wNK$$+<vr=r?kPIoYh~<3yQm$A~8m~`@pmaL{d<e*>y3~aOLuN{EH8f z(nB(@cH_3!P(w3RfXFq72bRyuae04ukN+J&7}1~wv~|%qF|@_TXmP(9G-jYjww(N4 z)<Q)f<f4R_19QQ~#B?~bFbx96o*RB{z^X8a26APTak)=Fb{pESoPhjrtiJmcyQ;PA zRa^fE9|{9JVC*H<7bCE3dihMK{{n@Ulc-Xc$wLOxF4@B96It?EZL-4~|9ko;hW>mh z*n2N77+T5tLkKZPTKyVRe@R7mXlV%C_^uY-fYbhB&dq#SY?wDi*@+o7<An%m(FS~@ z><vb>8;%JN_mLX$@d82M7R(O_4@|Y4@C`jGf!+<^9Vpy=5mc6<mYVhQ(IqGZQ5JbX zlrbO+o0GM69$`J|rdW?Vrizvnh26beE<TJbqfFL7wlSBDk<YAp!pk=bj|>|A`qf;; zw|o?eA%#DgzQgcuqvJi_6E&9FaB{*xkDgbFNUI`OnvTQJx>SF$`szqJus5XN!Yq6{ zya6!MIrcAdi+Z2`q2tEo%~UAjDu?Zqy**7b9(Gh~cA7OgqX>=l==RTKhJuuf{?Be> zDk^&ohTQ7^(Q%{pw=qhA#OPC<kI`yXdzfUrxD9woLS2F~SN)5!dNRYhk-UxmYPOG{ zVY9eB&pxLoIl=Gj^L6!1$3lvAo$;jjV*P>5G~Sx+6V$4q$@m3fA_$N)^PMT$aQ-62 z2`I~zQbFDtTErBo7t+$f*G=?R8{}Cw*;X+`@N8+J%)y*q9CdWV7!W7?JEcA^l%eC+ z^%p;{rsn(Z@1gdO@0TziYR2SWH6zj^YR2m;FK*ighRkkeT@1;tBK6{~PI$!J`SKS+ zdR%Qmo`ML;^td%(b|GhvKgsnFQ9Lg-)7bs*9#%Er_idN^9jmmo^e%m0GS%b!yv9XJ z^#C}S7GN@Qr@w`X2hjgLBSan}`z4P-bboASuKC1)dIKAqrY(Rv%pomqP_Y^MG0VGW z#usZl5HuUq|9+uJj=@-&P0e~Ay-=<Bxu$Xq!p8+hYpOA{mLJtoblRbud>vvIeodgQ z(?;fhhoU2W2ud1O=fPZ|tT^P4Il=+1>-+?_tx>5HnJ43CxhdF-@*yAIld63^Ly2xe z;a-$=y!<e162E5Au-Ka21io%ADM@(REk&-iP3N1Y1C;xz0mfM5e&&ZGk<iJCByTgp zkS8XEu$K@rQBW*cAm%+XiYveW^V`_Q4>Ngi86gwnyY8fgcS7aN;63!5V=G$%4dr|C zx6H2=zt0fbFIvK*;ewH|0`C{?dD|0fnvqVKV;AD5ekaLy)+z&Ax(=~6wZI{6UHh;; ztFx>U$A|r)X@+&0sap^Lf8b@x{s&OF6+lkDP|dr~<Tk@{J@{%d3k!Z68DfTiW;(`O z;g8Ky^&4&;R2Au953EpL+LxrE-FNItuh&P$4Gafyih**hPC8o~@REg2tO)>X#T&O& zn$4lFmqheb-4{U&wynXnvO@)V*C+|mblvr>*a|_7gyXk}LW@!rmK#}&m?2ZEz+t}5 z5G*#)CavVMcP{icU+FTdqK>4Pm&fhz-9-oi3|9^1a?yo0a_%~|q64_@cZAca;1O2t z=2fZFR_1dM*ZHU<jj9DatBzAwL^#)WcWq&v)$}>L3Z4HA^2wbe;_wvC=>qs)4F&JO zbg$nO@EziT=nS2#(D9>|0$J|s;E43kegq$Qcyh6RX;^FMr*^yf531!>?+5#fm4)BO zRnTMZGbiwX-O$us2kNh;b7Z+k1vN40M|6tMXGZe)lAY2~jEcSu3Y#y@YOfD2qI_Pi z5X3rtkXf7;5fR@<E^mHW%J&UpGZ2ftG5YIZ^#FRme;X}I)*cl7{(MUNtch*@uCHEG zZhJ*bBjyhnyR!Iq7~7{ORgQ2`jRlF;>V;m0Mf=@*=+}FF9`Yt9bK95HSS_oTuEdl# zh-H=ciODf9rl-A3RB1zDOf}E&#MN}on%S=X+?oa=6Sy{eqZpBi4r6^Ac9&Yu2LTT4 zuHyTwZ>VIq{$RaTc%QcuG0cAdje2J`o1<Op8|9!nWk)Kk@URLkdaq@N*U&4@CV$jH zXJY_eHBNK(y%xJA0qk;Sl#<G^hXFQ`d=6IX_z0GI1_mi5os>*t%VsSPpGf70vmKFA z;rM7{?r-cjz!WBN;8#o$c`CVOXjnMQ$~0GCB<amh5Z+)9a;ZH}nQAv(*7}Y_;63&l zRrmoLHxUGWzv1zt<CK5k&V4Ve)Hh&)aAbmz2Lhj?sZ%T;<oJG^+bcD3VqvV1^W<4I zmV>m|LD)C8-{}^^q>`NPKX$z7b|6%c4=@7Zo6!#yEri1QO11%?TFKu`P?j+t#fN?N zM0h~Uv$0bcR)7X8=x3wc<HB{<17Z_35Fo!85|s^>?=Uy*5%U*O=z9AW3@VyQ@!t*n z2h)C@zzdQ+2x<%+WGAkVu(JL-$(spdsJK<#LY2VIxE!RgX%!aj(KhX}52X0T4*vh2 z6#w!&DZaO;xX<6i^gARS($ZH%U8db{wZ6#oBJLm<(WZRH>=)~7T2KGSeDq&!4{{F( zUPihKuOm=5P}di;yp)Jah;MI(<%n&QoeQj=0-f}A@r$B7x8e&rCz)~}I-ob~Fxy_9 zTX7R)y$B5p2K6e}8o`$f9aNaeJnf>BmGxeRA^RO1gP!Q!1QS9Eky>`+A)8yPkYO<> zh!}|x{;!aC5BGfRCE=@;RunmQlmXb>2*9aq9OY6x--{W7yS9j6WW=rstY@f<>X#)g zCIdGtASDQFjiIX+;G!oNrlbvN^;6N>XNbMrIUL7Y(=<N{zCa7l(OwglPYyHWULBQR z<!ZWE3TzVuoM<x5E;%Xrxr<KlE4+I3^ZZc5`J$JtmV_GC{!H}TUwZc~=Gtc2#%R93 zG&uBXp+zrU%A}>=0G6*Ccm&rXrkd*Hi1#(hPkDIgmK4lWT8ZO2jm*$cpb0*m`C-i6 zvSp$cH$~_PR%!duvsD0@`+UpavMa*Cl%Dn-bSZguCPd5F81e;_u3#9>g~^k-WW3P{ z-?ZKduK@~<Z#<DPVOSHto*-=PGhkc&`iTx<xNeBDJ-0xaf;;6jrhjRtjgM}y1*Smx zo@Oe*PtOqC0yE{mnu<fc+4~O7GcabwBhij`csBr1xnkpWaqWs7LQiv_LBRsKscZGy z+U(y+eAW{!f(tX3mq)Hq?v+Fup+QI~-f*MesNqt?a5+Sp+w1)Wpz^CN+6pWVV+>AT zd<9#vo%M;g*^sQ4y~MCF;PK~xf=s5L%}-JWj?Lv-0Cf;>T+yAycH+&jPsdew86r?S zvrAh9*Ey_kX^RJiC55?|C-#5zs|x0S|Kit!X1Ur<OT|jM+I178_eKBYpjJE`ud23~ zs~k~AHrACf1we#`)q<lEd3@34(QHui!Rym7=qQjqdJ6d(YRrW-19y+BP3g`3KciZI zYnaqNJc81Xegtd1xo_7I=K#%Yrg#fW=yXjse4L_v%{UKCch}pQu-}>P72K<!_!fk5 z#~xvtnbI?K$jkdJeW)=oRt{g6v$Z)c*Z4pHo7qV$m0p20Ec%8uZ0bPOKjBE;;%)Vi zUcg^nx*^JEA3@n`lj*!3?66%)EUDGmxI|!EB32r@&T@jMKZKXF4}erkKu#O<dbE8i zN6^XG5dT+{6}xj`e;8&Ls4mEqKN-fkRAE8b8klqz3foVeQCMyvJWikkY&CfwSlwjh z8mW#a_Mf$%D40}cY+dx94;=uE7_FT&y=)Vb+H!TdiQDqTQ6*=#R_u6vr?A#S;@*CW zge%f`l@{f7kyoPTi6=sHoK`IeGkQDC{-aP6eN@n2eE;A?z2j13wn1Tbu3XYf6N&&; zou))t_Kk{4?G=dNC%T_;`mSgkJyrpws62|%UdLgiPDo$mEYov3MA1`)+wSQL?X#Pb zNpk0IRVR&iyH&#{@qUpACu99KB?6Qxwv%_~uN{@O9O>_h-;o?MbZ~3xOqE=&a(q-7 zcp-TAwKXU?qeJA)wKcN0`ruY)LCYwKh4aK`amm8DP|eF&F9~7t)3PZC)?{@-dSIm{ zJ^GzXg!gHY(6JE$i%zFzMnVhE$+yPW=^4($KU<W7m|(H`?LUSPZ(d^~YoriWZhEQr z$hkd1Uex#^+{7>>(fdj0AOtGDDpv;gI^!m_**c3`B;;IwPms(7Fra8bq(UckSrk*S z4#3yt4YdxQ5)dL&Sw{b89u=d8!Kq;#PUdo7KYCg0ZCJ*mv&-3KlOC9;%L^P^U*?^< z*K}Xi2}<#2bghQ9%*N{LXFmnet&O;e2yPC^{&j)*-?l~n^@qQkez#g5i)^o<pEBdO zmNdMIO{fccN^f)Ck3CfuX9ks4bzQJBqR&l#FQGOCmc3Wb`wQf*IU($tPn1#K{AmfB z3tWH$AY};dDw`INIvKyg+|26p;hABdSeRvBw|H{@SGH`u7J02VLN<`%%*9!G<}H9w z|0BOBkYQVc8rQ$>&D><8WI6zv1ibCVmO-fMVKielVrdBF%9)B?^xZPuk;yee)r*dE z<D-0#722!z`02suy0s@dhuCCD$i~(kK{XczfUKT`Ay0sj<5BXJ))x(z@@m3`?t6R= zw2v9-g->(@p|zdGdC^9*$PB!6k{jP|_D(;CS8Y5iA#P>cn>M{s!n-<8I8)G6*7-5L z%ycaxs8ffNWEDq;Ey*KEvG{r~WYLh2V$5$&ObRr4UVDoRsBXT)zdt2%LoY|=?S+iY z?1PNVgtirfAa)!VPcms|zw8MljVOZov;?kGjtkW94bV@oGO*t??*d-Zty^soO~@)a z%kzEo%BX@+MDSdNZylw&=78oeSB(OgAcF{l%<XlOHVDY>M&Sibi&r8^FdXH)_-Qw| zGUriux=`90DfnZn+Z@*f+KZ^<gw0rqhl?W^ur>9M{ElO6<g|t1^10k2jK<4;5=U1~ zr`?RBD4Wv&uoFTwaIsU|PY^EOUPaNZ%KpZuTngRhZB}G=@k^(%X50+TG3i&!0LAfQ z82Z&g`kC6js#!f@2J~0nc)}9VRATo8T35$^LZOe5K~VgEAF8n?053-p9A&8Y2#v<s znV)cwqILw)sT^QXV7h38Q*<lUt6w-L-8j92<pLE^7biMS2ppV?XWWX4rTkMu_;p2f zJmS6jc!9Wm(>`?d;WHQ0C#ftyeIHnox5DuvJDavrJ&o_=Hf`&Jr#BnL;BzN8uUoUh zmlWJ@QDvT?Vmr4Hq}~+)w&(ADXX03c-RE47XTd-%4NiwHeDTI6yxAM*w`rM39|beH z$Vehi{5!gX7RgXQxh^cAY!v`%`oUGxB{OG4oUYCiFYaWfPbnBnr%_lJvXC){2z~cM z%+B5+qLpQp2%47p-=Bv#?qz;dKM9nCzuE=0q}{d+pG!V95gxiMBT>@OJ|2__x<7FG ziMhUjAcdv3>=WqTgf?RkD|lhWC<ihKU=u{R%=TM}7lkgsBmWkq<hHcIb0P!sdhHQg zLU`^xH>Hx_R5~+3o0Gex$)xyQsxm{RWdapfq1V`?=MplRG$h@08)bkG``{B{pU_C9 z7_`JERuxSr=oFV59A1a}P-Vsjd?!<dxPzLRue~?#?`Qib>Nb^2v5dz9d}|EE)hUey z2_=ZQx--sYkp{2)PhB#a$Z;P#zu`Ca>Dxo6>osJCgQ2Cvz$5Q!%n79=W{Y_Rv%!4M z(t%!K9-|l%2~*mGo}t=uJwEl2u^lAltbOrbHCRXpj&fgnHjMr{C_R8l@Ar}&w69%y zOsVGvP3*OMXqk>Z=4~<o-_130AZTeW-HRlZn7SWa0?-RU!4X=10#s8sRy_#tcNdPc zM=j)cY_mKVjHWJtKJ#G`=fF?{_$)3a{*w9&?k>{W0uQXT%_?3ZuM6(9?&7zhu@*a2 z_nndzC?@_0KRn^UTCEcDR{QA|jqcDUwv6GEgT=$~e2ujr7<nb|D<?ii?ajolo$Mq_ zlTdk7HN*6}+LkA-mlkZPQhRQ#PHsPaJ?JKcxS29i-~i@P3~r}X!UN98uRbi6!2!rf z2J>YIy|{mX?X<kPcrk}dSFwSBnqXMxAWh8_B8)ngRb_-#G+rIyyE66hQ@c?`Rc89V z#w)oUQc9g69**sid=*PQ679sfOLL~(!ru4LLJh3Vp0i&pG>iX0q)lW>%Vm;olTc3$ zo8`W?;H-3}s5l%Zk!1F&`v%b>V#WVQtv>z-&+J>sfB&mjZOvo;`@tmZ3~bKP2wkz| zI)@@&!*XUl5p3|t1i3Cw<+Br+P9~O_jG>5WTz~ajAyZc#n!@y(;&0=HGV5fwv-fqs z7doNw{OV*uKyT*mveCw4nLJIB!=Jk?myp>WNAt4jfbXkkBhT(~^_etyX9%Fi@}*DL z889TbeSGp+dhp9%Q&ca`TA=4AMgqqKxf>5T&d|YCuc${&_S0YM=eO+RfexJIQwkzw zg@=CZ8ZCSgk~&#zNwdwJ^@uCb>?#czY%?9J89Wi`$LAw^o1+jKBR`fJ=Wq^QB$?s} zIQ18hHYG|gB99;JvNFWUi4_o9=K!yWY+p3&`VER5EW*<vM)kaR;|pmsa_cntusA6F z4i!-E7|?@GGa%zq?1hrwGRW{c+;G2*=m?T&j5;vi_61AGXB3ClFVq%vSEd>=8<3Dl z_4Uj!>RX^8MhJ%Q>I;UKyA^J!p3sXasIKihRWw`rLv#T0HIW_yMmUb7x$8z_ds^X= zl&IUWXcQwhR}$xDIHl08;-B#@1t;*VdCgp6r~tJWfPwp$RMf4p5m40>`4>iA(JPa0 zUapx-Je73u%uWxzF`R=boZCCUM>CDliTJAy{>RW65_nLmO@3*>ehrTh1cG0$ha-BF zy!#MZT`pp|#5nJ~B}drpS4C`cJI@eXdlwl7oXn=Ed)B8%`lZZ_ba{D|kvq&L%0ggA zeSs3zjN)aUAIx7R7<(wZGJi6NWIfL7z`A6UyKgev^gTQ*Za&*<rW$s?sk2vfq;y3% zyVOdnU8s<Ouon~0m1FG*c1_6Mewt&wf{fM_2dxqoCWi&Y$2(S<&7nQmBERigC!9=y zZCo_+N${V(BG(aoZIOa?+3}L=NJIp_RyV~a!C5!CQFgOes2X5xE`zgq7WvCSu~Oxh z290(;6?=NA4wF2`fowFEj3VPb{K0HB#!v#?LLgk-a;+N3;%b-Hfr9!8TPA0syK#xV z6aP|tKR{D6;feFZ;O~j&U%USt{5`z<uY<ptyO&P(b==xo#B^S{b&8*-%;X?xg($iG z7FIVh=S^mJnd`%yyKTk%t8kyJg};>1&hFNBlanZA3sR0bPj8PHnR(n=ycvz28r~1Q zotkTuCsQ=+`fhBJ=wi|Ed15`cTk*?hyM)v&hL2vNC3yT~gY_(*y^U!ml#0WTrk{__ zXQ`bh`G|N`Oxo^$6K`l}ny+iN`~TQ`%b+;7ZfkVo5E2sHAvBuc5ZoOC1b1m%gS$5F z8VC?Pkl^m_8a%i)?oQ)+J3IS5+2^bCekc3>y0_~6(N*viML+%YTx-oa<``o}NxbZE zu}(yBh3x19ipC@8%RjZM`G%|gX?V2%Jf>Mi<{v?Zf0^&a{x)O?4J{Z&s=lBSl%Ajx z#QoPPfhUv~Y3_d~KTkw_Hlkaof}bsZX+r|^Co{yo16_a-Tf%mSA0PMGVX&S)hY=!I zl$6m)c+)LzFuIYCPL|gfhZ-s<sM+yW>D6<c{@39+Gq}%bWl!YFo(NIM!-&ym3JT>B zK&J&Dz7h`r<h5raqS(jI-`}@79PzO_Yz;TNP~jS6W~_(}b1gyASWUqWCiYaNkWV&! ziQ(tnq7^PWlT=ShuD>khN;Bwc36KzX={7gw!I9KhE^WrV`9*zbGk%+?*R2`RRDjVf z_dvjS$ee{sVX~QZHoZ2cfQLi@`Ii?!05(aekAv1r*eL$!3Jq=21{y8Q2fDU`wx$x# zStA+E&FHci-U8&p+)Hc)*cVmHnn3MR7;NT#3iP;%h)%*i$jfn_*(!wV%K<;n>{9;9 zPEzYzklTp#WQS*FP7}Nfe-*#rD;Tkn(zcKis9;DI*Gp1&i`;EwOcw8r%urnL+GI6C z%Za>_E}hl&R)0xpDMQg87xc7k0d1~$+_~`4&t%3LFjf1q0Zv3qiV+^~m*6}b8*lWr zm*Qyf(}O>dKP+M*z3U0$x<u$nZA7LdBbID=2hU0DWq3b8PPzuBBn^KrW+lt)avI6m zZ~=GMWBNX9i(+@U7{jU8<HmuP=~m?GEAq+JB>9rWqw^`Z2?o5z5tq~bnI*w8F*T`V zoh*OM^3)O^so~%&yI5`|oi1aH(?0+-9%}H$tIAsCnpxrq{HvobEMRr4WgAG**nC7X z^UYfEY`C4v&{NMmG89yxH^D41rK5C6o(w^AfN*-MIctoY1+K}*<Rv>wz~o#cUhM0W z3_pGo{aw(x?x3q4m2*<pyU@j(wb*>Gvd7R*>cn`BPeK_wPDwibV4fRPn+t4UrV@~L z**Zj1hT-j9CgVwGz1HZq)x5QknM0{4S{vIc1+@29ws_7muDb*|BYo*Rzxnv+F7?Xj z{io<`Hb6>RbZd~nKgjf!NfZC90?e|3m~mYVTvkx)TAj2>69$QaLU)e*S+#-rk3S|v z#3_f`6}31!7s`Gl6zzkf&;tjt;mv5^sP=E>bNP~IOpukxS}wTic)W>2_^Nwt?;*ZC zaKKMJ{@klP#srcc+<QwryX6ocamF}|T7Ziycfi~P+K2rxuH*^4LU?B&<ecu`{VvC! zMfw+!E0N4MIAbZ`uEdv1ZShs8y916{Y)BNwbx&(r?|@h~6Ya~?u`LDm@Vx^ZV@uSs z#6y~s(4y)Ki-OlDC?#U<79JqT_hE`qzdW(q6Pr&MpNyjzS;BFyjTIS-hhJF0Q6FE? zU%M*QH_9wtKAxs0ZVtNRI3T&4Dx6OArC!E4m}Pjfa_0@uvYD*-3{$sFYI(pO5kugI z;=;v_E3|Q+)it+Z*olZ<Hs2M{O%MqLHC%~0vOCc%z}}t6Nd+X(wO;k@<%^_k9kKKZ z_<w)wlL&ofAJa&tk1X{vRwIhEsN++e<(NvO9MJHy0`DR*93E>4A&FGuT<bi?*2x3P zb6Y1R$K6pGc>c%dg*f-<4sbAW-z#l8=2E9%fX^>Td7{xcs=Ay2hhsHxJkRyI3W2w$ zQy%Yh1n!f2Xx5ogtx`{zyIzt_D});Q1@H<E6X9pW!5LQFFo6Z|qmRD2oT6lSQkz4H zPG*T8n7T|V{I@7xqj?5haOCb>wh4tUe6WmM$hy&tmgF33I4=_g3?xb#9Z#)Xomiwc zzO-qb2C3bUGuBsVWPhVV`{XMdeewJ_hFQ}I%e2YP%)v{-(d;W<V>5=av!Hyu22kWQ zHjHDP9Q*Ab8fqRm;5rjdrFw!(Ugb@P@&{YzXi9zXoLJunGIyaYk#68PN%0%8oU`nj z9M$)NcPb}W1E;{uva>Qvvgjk1p1o5Z5x|*+mQFFvf@YQ2AJHQ?EHzyPJuM?b-ZR&E z-2a+>_&XKwarE0ik(sLU(tuax3rO$gL)J~zOshW)jGY#MWi2iyPn|b@82(bI7!Vbf zrY%}1ZMdVjeb}IFCWHm<5HDJ~FVprtNSESdsKmePo-sJEY_yOTY`?4T8)=zU@50VI z{RSAXofZiF;Sg>i07_=HVlY`)f-An;``qP9@YOI#znt!L9QV3UxWqq$U1WOr0l~M0 zkB?fO8@j#u3&apDa7zE`Oxp&&=u1`)(0By1mc8V?`tqh65{^pJc}EWu=&L+!qnj8N zNJt`5<2FobHA%b_UcY8yP)Vs65GJG0SPJjuT>+lX{|r%EE8o93R<-HY;ev<&7!WUc zJ@dWqTT{2bq9mQ1DXyEq2Pnb3VZ%;2?g^BM=raqS^BM@O1nIZ7Z{b~deJ8@tw|bT| z$6KHGBHTqYo2<UErH?3B4V1POewa<baY=pFEa>(%b9+a^cI5d7(Y9==Yi99**c|9y z-nA<sA^3)^XOk~9F=Ht>{n~%@-Rf5SQ__5iJ?7MfjYIqygy=KN@Tob%kLEl|5U#LI zuMjJ$`GZ-VvX>H`vh1=nCsQ@AWo8s}wNTT+K7J7ic{KDfF0Vx1C}@#QJEm%n`@E!l zm$kS+HfFtWV~J$n+xx;fpMNJ!Wfd<xMxu~ZpcOuF_EkgS#i8@@GQQ)1yFcUi@N?qt z>)SLbY<BFMvQ2z1Efg9jJ~ug%P|Y?g6}0Gnu`G?s`zm5e-yR`!8dVrnR&bUsevLZ7 zWWJ(m%&Zt1qk7>=(oh2lXNY{lXc2YT-b6YAbw|(M9T%5vUm(5gaVpjnBz}kM_9{1X zqMy%16y?d>q@uhq!P=(^(y2YX2OF3j0FFC6-1*js8__}qF>b}7a6{8_Va-tRQ;hdg zVtrSvJgjoRw#8rJ@NYu=G4oG?js)RNauUVVkU3%O-TrP7y91Y|?qs9XP>UwGgb3=- zpZ4W#gyDI0rIuBJHY1tbdt7c5E)nmLsfw~g?E`bq;|FhLl5z$TM;CY~;95)CDXJbY z2$nqhj-eJ>wpE>YG2x+~*Qh(1@~ciDK=);MwSC#lU`F{FyTlJEgT(DQ&jlWAdidD5 z(I<yRDhCFu+ta>`vTHysi1`MuK61cSca9!YWPEPGbK0LA`zUi^#Z$A@1Z}gwp)`As zmQJFd2uNu8@kp=NcV_c4wlpPf4*rbLH3gX@xu2((89LY1E)<ONfbWt+z1*<*_;iFr zx9PFARGth*V!zgPA<piZCdZgXv+M0asqGB79H!`5n?#RUdW3@OyEVo}=g;2($Km%B zk+*7?Pns)DaQP#e$J}dU7U+r7xNBV4HqSg{4%ZkhqxD9HI}^=Pr*5kl4x_9-#L$ri zT10!&ZG8&(2z3;7XJxDruoK8>KC=>FWjM^QVEa{={6aVW3kv)1KbRr^SvqA$vO-HI z<H6rKe_IjA<mg1Yyn#A>Yx!MY(v{?`kHl$zmDSKbjJ6_dYND=U)B99-$z>Lb81^y& z&HdRh`?#cmkU9qp)Cx%1oU#jkI-pVJ9|YFYlRp_SV~9T(Ff7PvHR$~#CBqi1iP;+} z%_$T6g&POoe%Rbg6?Ac`0(lxIbH1r1#N?J>WP8X88PjFQ-2TFyfADkpP_~6hhNbtU zVj7|8t+qKliEbmxb^emj`B*2X!aY|^l3#>!=oE#Pl^e<pZ`H$F9^>@?GPL<yFX`Vk zp57q;b-&3!?sq%&ckVYN#uP<Wwh8~3q+^>T4$4g3U|4VY`;t4SieZn1e0T3$i-KNO zqwqbED;C#J0M;3%X5vb?JmO%I=)%Na*!~kn9Y!9~&pQo@#K@U2MBZuS{Ea-U6q)RK zj8E0zaNBHl9`Er-{>-HR@_YOdcfLWCZEohBr<-HY0-gaC)=F`dkrky_vs#4KGqAO# z1$zUijl*Y3{SUIm%(0)eW-D6@gAeK)xmKd5m4%gagBxaUDo0dow-#=V_CH2EeSkWl zPfia*Z8%P`0qdbo+jgLTuqOW9qN(Hk2}-gnLg{x23VT(NlHSfvswwqE^rgFtUrd1X zHfm^4`}%i^ls)A)bF;<lDmgLK3Fre}|KKD3TibEppO_f?IusL2SlRl|oB!vr|0m%7 zzp~UypmQo<SksfkBShQw&Vi?Obq=m>n~p{N7y~bs|J(lkV=uQoL7})9>SpX+2)jyd zUB+cqU512%kWJ~G`$ZMn^}f`E_XeU0@>-Og3Tzqn;to6KPJa}A3A1MUfW;S=thaO{ zMl*Xo`O(py7x$lRYrfJyo#d;?a-ikL)8E-X?fC+EU(w8K`IXph4tS9m8zSmIz*N#t zdBUDP>3vz<t<j`f0lT5SfI};P_+L4q?N`ig7Brip5fNGiEu^z4AyXn;+~B#e$!%6^ zv6%Z)Mq9A!HLz3K1JOKCy6p9%$u&khnG96Mw2^pWdr^Fu7QunL7>tuJ=VVyH+<Qv$ zG0Bbb2_nVX`$;r9T_ycl|Lz{~Oz-Id*V2;LDPgy`r`#Mhd*2@Z-7)+>To*L_X=^`s z1+_F#?<p8(2VBoiYFKUBS2Y#5#3g%GH|cOeM{4j$L1#$qTAJ3*Dc7e%X9bpPJyA@7 z%Sb!$qkd?`-=51t`)YXDX)pj=rH%-niNo$DM)77D5FTK#hkyAuwx76^U;wX8SWNG0 zET+pz2U|94kL9<Rr?z0TmY%_249S!$3RPJdINpzViw;j-i|8=a8}~p6W9O?8c-exF zSCfmcu9}?t#$8Q^7(C6m8Zb!Q3a7{n*IA_L!y_XF?@QF4q|fU3J$2I~rArH2FnHod zFz;mi%d6mj#m^-(nSTz{u=0csW}!2j{GFWLhAi6d^W<u_G}*e;hd^0cWBs@)K5bE9 ziHK~LzsuqDL<Ggw+ue#%ZZHR9omTpb>Ab5+*E(q#zLRZ5CKL{41-8{Pt}7hL3W}Y` zN6_DY``)>1P=OrH9&(&lV!(BXr-q~5ub53Pf3!DA)qfdL!gtEdZ{uj%jrI$Z{GDXX z<gY|m?nk0q#Qhry4xxNsoKLEPOSVVtaNTDe+O9QNiwEaF=BE<$gT*q(Z6<8Lup<no z%5@!QL<w%0Y$@p0z}lq4c12Lhwzg~S=?WS5!A`(GP2)s#d0@g<>xIK@dBEbypl#pf zy9i(Za0?FSQPNtj6i8g@=9B76NeFJqpYD&!l|N79IN7hz(U!p;ARhXaI}oJ%Fs$1F zDiZ3I9v16VH&scSt4UIdW3e00daiilM%V9Ny{BEY2*q2q25%t6`uTkliM5MkU*Zl< zjuvP~@&I<8(g#0#XQjw=1}0rD81F5=`N|ihW8d#}o9&Woay8$=QMTp-@}8E5^khbf z(sO29id((T5>b*N`A)+3p#=8fu)AN0L|G-R!{)W8zAl}IZlrlO_i}>jV?Zf7(u8*) zcByAr?Qrtq2P57y@xpP^tcHzZyg43xT>fkFhr+z4JD9mIFKdjtGWY`mpEII}R@&{A zMs4`Xr8q*F&1!G%_xb2RJ2a<HNV|v^t>f!ka8(+o4Bwd_<0(k|fnj6~^l5o?Ctfu! zYOaOU&U`<EDSEx{4RsTvaNdhVhx;C5-+68}sR(}mZaULogdx5N<v?yK#v|6-3N!Wk zH9C22grGz_u+oP7t&3`Qe$&F6cD0`SNlK-|dZXn+ZVDqbaqrT1$3!4hxzhW%CS<mg zdx6I>-6HlS*4;0S=MrN{{E}AGYcRT=r(n`D+Z9@Uu&H89;u75SvSAVJB0`_XSXF!N z%1z-{8@Apu!yy7Ul9^VK{7y0HaYQtUL!D1`EtJRSJDQ#sv(z(?Z>r{(hVwd=K@pvK zzB(K3I&G8Rqc3Y7a3It05_x0kFfKXlB9l-jTWK)8Qt1Q1El@L{+v5SDl9VtiWv*wX zSyoPem|&b$jCcr}v|1^?Dt(%kxsn6X5uK?b4dQC6!n)j-UQAQlgxl-bV*k9(jU&oF zr|8$7^xvz%|1sk=3;3&!Px#$Bet`+<p<O>y<IOua8})+mTjD)zTtdE>=8o&iqL^g$ zIa|bDkC9=NTe*3n$4Likpk%eTovt(2)v4$DFxX<BsE_aNj%wY->dDC1{Z*dRWsKMJ z1e}+(GbZTjlG1;(@)sm0%S3g1CoS5kuK*yR(gSbeGMD+EHJ4z-xyuUGdlQJCy_h)c z-u7mNTYYAi*V{x(+lmZ%a@%225R`n1v2Z==z7#wDBvDW0VJJ(4Ge8RJwR!`WSFfcq ztGv)EpTfhw(4^3dLBD1JCM+&LKCiueV8D6Wf>UgzZSmj^-|S8P<f?6ooe!lnLbl@M zeAQ)dsq?HBt|P-5^JLh8{AIG=@(}s?&>OC15QJngAVOab*80ABQRj557w+AfnXH4O zHT7$}aaDRlQ$f9byiFNi$jy5rb<cBmIZE-%RD%f9<_-;$J0(knq{*qNS*>PVfuT?4 z1ht1fW^+}h<*#ewtmYd|wz=>0W>}i@j88Y?^={hYU#67Gdmu+Y&xpV+CKVhl)giw4 zs76jcP+=nz@qx*vQweXTUd#-nN6jQ7JO&A8%Ce*xZzw3n<FRjH04R_AVcAJi`c%Qo z%=N^6>^`Zw`vstW(~wUv$=<7Uy3?|jeCf2ql6N}7fAZ3E4-&y1_3a<cvTED-Y1&>@ zUI0x#BD8*^cC+t9c7sLjehG8|x7rB2=FjWlKp~FhqaoCpHxGw3{=9>yVYZ98X$Bne zezBN5;Qk#|ZEflBFdXd%)A!a{xgWQ4gJ<IO(enN6Im`Yi?w9i(R1Z?I0-KX5^Z3>~ zo+b?^l286eVx`KDer2Z!hRo)&$I}_8P}Enb;ZeG8uC16yH&kH%`b8Z(zDD!+<4-M; z%7q)^zYvQ=7#Ju9BGx_7Dt4V%(YCl?^-0F-EEwwEAy045v8mvMU1--^hs}TFmph&H zQY1wpt<7)WvnWa*{E_nuax18+v=uiUbLL@HbsslP%3@k;jECnLy=YPl`U|QrvYr@) zR5{lHV%cKq%I3R`$&JKxX|D||W&6f$A>v9L08^bI4{{Fdk{YWXmy_TH%lpYC&&XmM zuONZ`ji&3KsqOJ*%94EksH*FXo4u6U_9$va+cediMx@qxg~->Tc3e%DPIU??>TA5| z$y&aY$%hi8JZ)nKh2@3)#4RCA$!bIG#p;!{*xmpI?c^1#u;Az}`#<|~o~v{c51Liz ziJoUCnNGr4gUSaF#JaZ-1fysIz!Cb~x_~ksi{Sy)y2T1#cdNmG%}GU*;nR`FOP|)7 zaAY?+L+PTZ+TgEVvH^BgS+KWY9v?Y@2gGS(leKi+S1lgJB?k2i62|TxBB<1BQ&T4` zE-Cz%=YdlPa|N|!2aMHb00q&MOq|j|-4)D73KMX6hX*BKWER!TTM4IPe7;jlDO9#` zotRQLm9k`K*07Oj2`iMwbgD9mXNK`1pRWOz5a@-JUL(*|c58D<jLK%CKciFW$Q)5> zm}7ZxWJZj3=uLR!g&#d}wB&adl@WxzbA}oAL5heCw>1MS($vJM*#cME>Lv-kFA<q0 zy%5ZZ5N%@G<R83jzPu(R;0Cdg3|Jr0DyzNk?$MF3T`YDnw4Hj!uXWIZadzGB4%Fp? zTjmP-4m=XG0iLNA?_$-^X+>{xt&J8MDoup770L-Nt1$AnWQ#p2WbA#dPW~u>pY1)0 zVLHMtG1W%W;?d_?g5O&_at+(Vs^c-@d}IBd=p)xZDgy=rf41BVRernWCf?^yv3}P4 zBn1k&&r_^?BBqTc%P^_cs)L_B`n0IHl!Zpwc_b2Ab2VZz@JT7G9?tl4BHgxo)0V&M z*m_*8D_hRxhd})bp92Z#%Rwovh3V~k6^!bwhs-=aDak#1#E%ja0JZU`zv(Ch4Jlt# z2ntkXONbTmcHxdu$xpjH0c*VJqZXb~<Hf-oeuM|5dp9b(m*0opG9OSH@~?Y?KL)H$ zt7RqPB$t~AP%W}8Vik+Nw{p*3F42rHI*~A)2qa`j7n)c&m`~zBl;o1!<vDU1ts0>u zkv4UbAe9aGzLAzmx`zR?9L@2<#EmzrpI%J!@9~j8U_&ZJ$!u`;uPo-4&k<hLDS#3A z7lDD^g%;1qqPJp1i#|nsWA7}t^6(X%<c<8WuTOK`k(82XZV*ulCrpz2z<(0N!++x% z!%rG-mr@u#4|Y9Ylo(T}-0NU?<rv4$w}p#~aBG_N{*uUX(ywa<N?PCse_&;`J4f=6 z&kvu!YowCX_IZZccsrLtfe!j6qN#l66J~74?5uGtfmn1HdX0K~+i_U-#NY4!1~nL; zA5Efmur~&vgr!*TUD|&>4r_go5KVxUEMTGM{mvC_?W7UaFYAKBG$+$}WF^xjcX=&{ zG5>Z#sT!>|@@W)N06U80-72k8WAn)e&zR4ZAt{5g^;J{B!;ILz(NvpUzP&d6m(6SW zH7e`M*u+xIZ*fcr-<TkY#b5bQy)B|9Erw&@Fr6Nl%VVbU>#=Jay1#}!%ov;EFaIZS zFNJOWPsOKI(T}QRZR$6wk_ACw5<~Sb=LeBTF2@q>TxxqlBPfr)`@{6|3YtFU-KwAE z!jRqGdJ3m2YS3**&lpy1jJzV%uyFUJCega1(nOjI-g+~vGyj~G3e142B=>E49U=pa zLz?KIfhH7X-mLzuidKA22Yw;4wp=fm=toQWyzw&9P!AoU{X)*F3uaye-3dkp@rfs; zeJ-o(r1H(pcyK071{Rql5C(MBrdJ(dINx`z(GjqdMTK&L&Wjip%Fwm)>Qff|Tm;YQ z-w20;>kikv!Ddw}yj#}by|TqGXfr(L;@ad#nKtqFC~+6}z%Jt4`+XeVnOA70QC<Ng ztp#YO#E>;d-cv?d%2jE$o8epJ+=-bn@+mwSuZ}dhSLzMf@EXOi5g%iE^IKm%37<lz zhVI|Xd=VL!G;L_(_*hmm0qAKdh)|{U6Ur>57EwniD`1f1xj|+B(hE*WQ4;jIq-?%V z3#q1!UtUr-(`w!d>$=%8tf;yjZHJq1Ketp0%N6r9azc%ttS8KhmzUUB!(7B3>5Lku zhr5TVaw+CV5P*o~<%8)jPdjrwG;}P@zf*&0Bk5j0;j?!QC(+M6WD3h2X|w0MNgU$8 zfqX`LU^Y1&3p5JK9KCrezg3E-5y)ErW+PSNNHv)(R|cjY;JV4w@d4MkW|&4eO}8W& z|IsceE%sOM_3Mv(g!Omw5q}i7pyAYTDVIw@o+aVhQGI*QTh9g7&NBq_jBw2vEH|Oe zx9GQDEP>Neb!my+`u<EyRX+0c5sE<Ds5&0nUnuah{mV?oQ8fkSRF?*`1MvvSbGZWE z-dcmv<?Eb2d`+HLwtPq5ad)LbLDI^JOz1c&jFSegjd`yu4spU`dYv9sdbPitr(AOL zLMy_0pWMyE-VaK#7nWgLn_t$Z3Vq<_(e%1-K=CBi5^pbLUD<Nkj)&Bejx&Of69{-3 zUQjwR=$09fKlu)m(Z}x>BN2M+e+LJ#<@j-&UrL>WUu>lGicmbRhswR}B0|5O3F(SZ zC0=hh@BKcz7CTvA++3*!=zAK2%#skoXA&D&KXMTnGAeb``1XcS3NOpEqx$ncNvOO- z3Zt-WTUJT6sMhO`xAu1Nw~EzkG#`<Hw-g<TREQJoatE(GZ~Akuj{OA;HufuC!h8gS z>Zv{}L`+<<2FOjB`pf}MCn#}kN=T#Y+O7-SL2@0BPggL(Z0{qv6TpdO>6>Ar4sWI# z_?F!HvWK8*mS3H~{~hsIuK4MpI_CqOU#gB+`a1}aPynxmLL571lN0rc?uPzE>OCSZ zgSKF9g!lFw1KLG+?nFmUpD+n%f+X{B+xu>%Q?n~LqJzrp`xhKSQV<4@4C*d)A8`pU z7ADB`{dKbh&tbfLTVw;mX_^PMnh3@{sxRFpRp}%$?2HrmCKd*-n`rGM(RD#pjH|rC z$B^_me?Wmc!6o*&TXy7(@X+GE*oy+2L=&*tv>Hze7?khGaa3(dKQYC=);ROYgML-i zQ;B9Z#p*Kym9$cPXiRP+vfG7Cq2OTxB!~MY->rvw3VAHcNLo){)}_Mdo+yT76k`I4 z!TjKuUV75Sr4`rFdplTxR!RZ0rX44CD+J$Ab$OXL)Qkm%4`Fbm<`xC0b)#QU5BEO; zU=wUF)5}Zm@zD6oc5S}6U~j;oukX)4Fj)Af9DhuHWA4ZJ*nnS|aKLOaS)I`GdhDYD zz6XQV1lHia9Xof81;Ij+=vz&uWg)(|1tdaJqz)#R^19GC;0C3|rcS5qLEZ=OGF&G$ zt}u~)$CbDZOwV@XsNJ%}39t9!U?)v<`$x-v!2f3wM6QCOWPo4&JJgGC+I4*IjG^gN zOePx$D&7nkS~d2bk<fNUCUX`J^-g%HpT%THjwI?}1Y@Tf*7NR}@1=g4A<7}1`;s0N zQGffwU-`N-jLHpXgg*=9^Ltm2<@mY>M=k07d6J7%Km-ScusCh7pYOWD_voGP&r<^L z#R%E;MYnRwaD}wz+_F)G1K!g?z{o?%g>$;$wWi*<#bTnT`&lmK$A%7H*+`?mKAyv! znM33_PlNsO&J=ZGL~aDpPZwSZr`teF=JZR#mw;#w{<lQ>xMC7R8$)YCm!<R3W6e28 zVxW3FbT>!+WMtECRL?p+<Jb|cC<q2GPR!7qiwc=7M3Yb&UMBc)<KA9Uv{sS@%tn*; zUwd1dlfN%d9|<ix2rS(G;OD&~AUIq`)^|wo0_6}hc3JKY(7vuvx#8Wa^F|@~1VVx! z)Isaui0>3xJk1*rtJ0@LqY!yY`6Mm^NzJn(O%C2e5(u~=P>Jmgn1`^jI^0@EFnq!T znX=eE5WYdbpOmn%>fVGKUMh}sF!<Xu{ohx7=I6h<cT+zaXm-ETKx?59PXE{_9Rr4? z0W#slO{uG4<``}qinZK?t(F6-n5Qp$q@e}n7N>@mlP%k!t6re-U0$H<R=M@}mxIiV z@#B1P@^?3H&n$3Do-Hy{WaEg>lJaz={f#(mb_c&(DG2OhpBH^kKK@GChOuYd6ltxz zJ?)F5W|q^_&Q-YGsy*hT?}5C6e}WUEbWarzk`*UGq06jNfUEdDl^s|8Bfyt$O$zk8 z(}kX&q<L(f@~hS<LPNyXN^`#<2FVq)1+#FuJB<^(yt>}Mcp{(Z>e`woKF28Vq#%{+ zJQy$SjM$Z*Kk6`?9|6llNAznFLDtO-;IwWly9@nYAaDOQs%XrV&M*WktWv_D{uRO2 zRW3&+lSqIxvnZ74Wf~M}yD5S>mdf=tiRT!x9Ir`c@`DO*XXJ{WjniRzL1dlP`iJFj zg0B<;m|CX;nCu5Dm@oBPyi4aA2*sU>J1-_}o7L-^a;FU3Rp*y4`FDbGgmMFs$7`^j zwUKMdNDQP#xFmpsO_;z4lea1Eh&19ix7wM_oNl#EvS9kXq27sSxf+v+lGC(R^ddz0 z!~Oef7oNWEyxDL_GPK%&tlX6IP9AsNJ@DZF&<ObVz_BOcU+9<1+a!zuJjXe43V}xM z!XfRb1hsQ(#mdrzTG}6Do~iRO*3`WY_El3}1L4W!FcJ>cLyJ^nLU;(7-!EVcBxXh; zSh8(U)<Hg>`!av<$=XuW6IIiYp-ySJdM&>v7ZE7iTZ^@po~7nzp+e@CMK_a@M?V8G z0PfJq(6G~bV=z@6=k}QcLs1g$Cp&0v4GX6}{bDh+8H=`634#_Un3KpGK8dCrf*u0H zs$%@UmL|TGRyvv3?=EXJ3F9P#L8Z(xs1a430IbREvWekNOqhb%)~+M_4qg}7psN+p zCWmopJ=J&7e0VCe=Z<V>3cu-g)8VbRQ~@ia?mRPn``O{`@k|>Q5NzGv$c54UHHqT} zjp$qg8f1BqduXg6XH;>Q50>Px!Am8)A&(_>nbTh{ThLqU%F*fz@17)_?WdHn=T=WV z3N%$;GbWYYH;r(7-Et|nzN!X%U_$Ymn5j1sCb{&C=j?drnZ0@1z9z(vbzI^}BRE`G zV^A#$_so+f^T?>Fe49V?DW%p^Xp(=IA=-b;8&5Pw5byDR+30-|rkOwyXAkG&GXL#- z*~5gG2-r{^dX^Nihkkep%$BwJ7XkJTqw&0#T<KQt5tFr?dsJ<yWmhx!pwJG!w*GJY z*?ym_YC>j!$|^R3S6ll8$n7B_ZcFa#k&l%6)#-TOA<bufnJoT2HnlYo8`k4Hd0~=D z*KgRQwbb+v!zGE;D-^ty9+WKWC+g)g{O;w0uIv`+ha<R5J$a2ThTV$iqy2a)Ei%6n z!hhHG|J(Hz;=dXgys|PFdz-(}|8Ic~3DKx}b0SrgoV3~c0EQg9w)&gcWn>$D0oiE{ z7nwpgFclY#U=@d_M<9E&gE$*;Br85sy>VRNE0LGPkMW*dJOhjuC+@rQTi1<MUWi{G zW1}(d!^csQYW1HXIwu6`R=8QbTkfNF3b7m~;Lx4cy%Sr7){yw*i3pnK)E4^6b%sb> zm4D-jCBi{-9q)kQuo!(sxmHfoCeePHcpCiVz8s?~Nu4Ag_RH1kgTU>VY)*iXIuR6r z==z#Fc+!|tR|n`5<;yTh#1|naDlyTb1SNP*PO!+ug<t?Mjy9CELu$6Km?yfavntJ3 z@vMEXzov4CXW}bk4>WP)eU=QYu{yaKWT<0aR#Ngpq^4k!3$`rnaiWI;IifRC<AD9E znjF{76UPOTB$sJVPXg*uti`xDDADhiQhNd(JxOiMuYHiS0vQ|?0I1}1;cS3t#^f+1 z(5J@6jqFy_?cP!D-K7a_FgJ<)W?y5kAbnPR6Rt98&n@-ZN%Pq|{;>~B>Y-yS5BGlP z8QtB_MQFaD<o}C-%U0c-|I9zJpGISi9ASzd=@#K_j+yEl66&tSNC)BcQ`6UKYw5w? z&U7$>2itNaZjpxNZj}F`xi&vOe7~S4WPQo08U2uoJgwI3HvK7h+FIDVpefO9&-Tuh zZ8&t8Zsq3aTVn<lKWgM^G8L(@I@AKjU)lX#)@qxn8OR~|p~O`l;I@GXaMLKQCm@CH zt|2iJqN?XBYkT<vq-dpTr+I*QnFa)YrVxon=Utu4H!Zx`p{J|pM_fJ`Xz79TYEZz` zU7GL7r#J}q9JJ22SDvilwv;eb=3@OvBgn5*|2m<Mf1J=l+rJayG{PhYSz9tG;rN%A zg0zn}bmghyJ4yQL`<U|-dOhRPu_^kx%T%bWwCpR9sGsm+$8f4|6S7C-A`r|qQy%CM z#N-70JiKEl{D>x9)2h6HnN}N#K7Q8@u^C>K<&uo@8^t_<|02+y2Cn5A>nn>7Aor?T z{q3Xq4g~nL2nq;;;Lz3h@f8D>1m@I;DD68d`rXe6t4&YyX0Hy;=06X$eZ!6D{=)WJ zGvL+@ckWF5#OBFZVI^p+fg7<YSK;B#Q-)<^oTYbV61ep_JNYKG(haPxz>RGfPB|gp z=e)BSNf!LXGQ=26STi;nwuz#CBhPZ<81lU2_7<V3dJPWBOEs+kMgoVfNN%(|M<zU@ zsKW%h3Qgfk-iFB6l0r#vxSzu@PWzg?>jw8Iv%-OrC&Z81cYE4R<=(uST<4{|9zyml zqF}mx1`C!+>b0u)yiRN0hzy`#$39l423Qu2gx9}B$EM6`U>%Pwh0_+GD!>g(468}A zga(dty}tI^{v?2WP?W{lEVfdg4UZ2{EQ~QzGK3q;IkQNSnag{Xbh`$wD^WpR^2)2< z&cdz)nJ|1K84;Owet1rZr=mMSwCL|9kdBR&FM(;*T+S~Cz|w&C?1?%bewJ1Z&x+X3 z^J(YdoGoW@kCCqPOQ4p>+;B1{A%qHi7@hQGdJ0OK)g7%AYHn4Df6}_z*>LrxMi@-l z+uvxk+_dV~75qI@i{G7e!8lc$u~4t)0vTpy?!fm_WqOO&fTZ@QN67E>PCR#x)uY+( z4?~0Y&CIa=$`e9<w@c<Z7Qh?D;9V>8RMs-Oke7rg-xX;?VqIw;*GpP>IEFN<ny!dP z&4Ylnsg?9&;yNd8^V<8EU)2KxE9~KxPACiMe(?~}N_*m@M48*x3ey&yRrCk0v@0*o zYcyw~y1~uJXDmkub5zxWt?y(-`yN17rvnbI=cQYn$MLRA{V3bB;L?(-({=o&o6k7+ zYg%&ze$hnaay<mRxhIJ_jq=ys-MrI3$*%AJMRxTaVKjl9zo+G@<gnfY7;w2Q-Bes4 zU-aFdTb<L^YjJZsy+87cJ>ebWe{wRMtaDYCPSkNQm2?%bx7J-vD06M?Y1jYH*r`wd zdbq(qlCY%TNy0dapp?6@_FrxD|GhH!+addZ{PCYQJ#$u>P=sg!<2On~<0ozg_~i?U zzrL;i;~)P1uLMay>r;_;Kk8HO|GfGCMHKO$$Nryy`}d3Ze_eC`S!(}(-(;5O$wqTH za2`e$&AeCqj;>Bl+FIBi{Xe7uy?E};DI{bEiK2k~NhsUe!v>JY!S-+o0x6`~Xa5K= z4F8M2;QIx78a#dd8~p;7K;H5Q^~1kO3L}#Q4Qgf1TJpb^23M0d`4b~Ol;hTNtV&Pn z>5SuC39xM9yvgVDnH4j>YHE+tZiS;X*<4LTs0FlaGA3~tBJdXhSr_)+QjS^?f!!FM z56Nt~RK0&4L|4S5@o-XM9!RPFF~flS1VTf|iVS(4By&EfdwBV!{;@U2^sONXaSFm> z$MM@A+86ZVXT|x<=?7(QhUYgZb5Oy8ahE;t*L#@7!(%Y5?HH_^EWDU#Ob&~r!K)20 z2zmKB78OCxMo>sxdg4$kieKOrsy)f$geI0rHG&1y{z->bA(Vp7>t4gCI^2JH@BFr> zo9x}G6VN+Cpy`T;M5Bf_@0nwNcg^|Q7+S6Zw+S8&Fd*=v9SND?D>g$c!UG2!SR`q} zkOexCl&~z`r>TQk(#j5}^kb3WHSR^QHSc}(5oz%X$`AH{A51@|RyADs^n{4|I8<$` z?MSL=cG+WF&#|A??}#7FF}3yi;}%m`c*3g9Q1Z%5I^Px3pzD*R`5xd}lqtr|vnH6W z7PIJAayWo$jWk~1Vfd-1`TNT+l@E2z_MSO)l;XdyJ@D=Mi=lgxA1Y<A_&bUbsF^*t zMZLf;`OO;^Sl0BVkcAR@&*syKRMBV2*@lgR*V|N22`(tIUvM^=Akd2T#ep%Lkkr<q zkW}FhzV0snspApFiu3yccOFU*uNOXXQX#bK?V~I}4tcR6iw>yri3_~wu|6OA`jeOf zlP&^ft5$?Ww-nPO7<)*MvJKP53L^$YVi}y(D&FvHXzd@>cJG|>m0-xY{-mo;Q)i_c z>bjX2_puH*D+#A_<C8X*?4KwIq`z_%PnW`{Pvr#?%=7IO3Dm3s{9;Gqk!{t*ez9$S z^<4i3DEzu;JBywf6D&+(HTt7l3^(%|-C`N2kcm9uZ>k_ca`G6?GUV2b@#*P83yn6u z<(2c6yHT!@)pFl7&+9)qLPNcgMO%@TJa3CIW&74}Kjn!*vf|L&hhNH;jZ?u)=U(=X z<V1^z2j{fJE!=m>W3`-pd<^*b;<Il6@0?IvBLz&gDTRep=JSX2H^(Cs=y*kEs855W zzr1KPqy0_}$?|AbFYs;b@0?5#tO)604>2qHlLU)PH1ygcdr@@xB9+P(Vjw+s?`kBS zR9<kH0r~?v@!7S&^aCcDoM9t%+Bx;EdIe`v#w#o&&E+!5{}<2iceOS45yI(?yu79~ z4YlFD({)esxB|9t=tZt^6F!ep60b#(Jk$G^7r@b-+Hz&HdP^afi41Yr#2)4g&<d7w z@vH9Bv=y8WRC?Q8%yp39{yJ`wy5sZQnQLtn)uVE{b&I&DCiKU!oQ&q+4Mt)y-4*}3 z?D@!w=%2*U9TMqa^<TxBFKt}gpU8AJlsHnxha&A#B&tfA&mxgn57;zE>BD#8XmHt! zAe^ff=4Hs-v_UGfvch)`Ko8+;zJbo|f@i)UE)vl7azW&N+hXFveCT<F4Z@9ovGU=G z+lLs|^<c9_8J;glTf84mh&scyUf+2!JvMbgcD=KM$W_i{OoyoruH+;#9V#I-j9R`N zaxlq*`BLLH$5Rbz^7yV9qqvLH2fbyw<FUG&2rk@dTP}OiS<GHBbML@PqAyPSJwR<8 zfu-6LX3FMp4zV6CF4`bAC|#5wmD3)%6ifP1R%RUWqPO@UWyPiuSRT=f^_2J=PJ4qZ zYFc;Ba7XRQ>8ZyufoFu%*G8X~OM|)PdC%Vbe6Ap3%PBnw41_0E3$&9d!mlB6D0WjV zD_?HSS76<M8<=g~>7u0@h?*-PI=d!a)_He0O{oOF{oq@=8xzBYciqh0?r=xX+k7Es z@0)V<knw27sA|LY9)OihAG4+IdqGqP4kg_fEH7ieF1)2)cQZX@HXa`@?S|vi1V|yy zPn(Xci9&6W=S~scAHpxBkHI`&aDTSi{1{x={n*x+VQ@GPOwojxF6u4?ZQ$$ljb~mO zAveqW&p%vg**@^J-O1oDTH<@Zv3%3urFJ{trA7nVF^_+ba#<TX+VWlaw_{rnc8UF` z!mTHhiYnB};WyCyX|29EPFoiC!TRSFI1?3<`U8IEu11mNoV3NZD5@Jv`w)n`Z(ZH8 z4q6Eaw%)-7fv|BQ95?-ysKqvn?eWHSUs|)uCC8jVWH#H-SiR0MOu@j0<=OM=R`JrK zUxO{7x<fnoi7YGhy&2JVyvH+5^y?~YbO}mj3RpuDO2yy-yYwka-1(_!37&b&9kJ^Q zpx$?uM&p|ro&Y??^qAfkif#o{D>bnLcfE?j0n)G5ci7QE-qxbW^={Ag6{GuUp4W8X zJx?^yO^d<>>jWqdFc)|KkX3B?EEO;|T&8x6u@)1JKp=loNU<!(F+#UrkdX4@GbVRa zf7V5#+flDuVK#EXDVOSVe$w3u?f=M$Cis2ykd9#}rB*RkvU?OBSC8L2jnYmuah?{Q z?5~?q(~XRv8>mk@)L&ZBx#8K0^JCcosqKIcPB6`;P7tro^lrF*g7@(74(8+O-38j9 zb;iZ+WUdA@0X!VM$0_dO1ryF1E5_r+afR&Q{9EdRm@SJti=NBTR)0@ofDuphW15!l zQb^KZYxi0!XbSrgEESi4U}MT(B7T?^t=F{E(A@HDNa_9^GHz_{%3;6Whn2U7w{VHA zaA&4rj_u^FkmUXub{mz`+MrumkR{VJ^M8p~{>QWBzh8`u{EI)Q_`CeMJ?eFH2S(j_ z-4L`n?9247ge{I0xT@ZmSpU(n+KRn+x@`h;y6xmYWgz3d5|f8c>WzC(?Y&cjBhcnx zUoq;YbN^B4{5lZ~?e%3#p3@g_MV=;tf;kF@$sLZHw?DoPmosK%++|_x8JjDZyXR@T z*h1|iVT0H4%1XCIO`JGM`diQFqo5%D93oo6J2C5WsW&fkb4NbOgoB;5md_X)-82Q; z{s>j904;edd&)=JU~mIG<ZA}us@*ot<D>9{x?%J~<_ooL$mF^$7MQIAcWhapf&l?g zNkRxO9Kjoa9Cz5}QsfjaL+14mACxN+DBDE^QuFWa>`qsserYr3zdfam23oPWn_u)A z69Swnzh8<fsKkhrXc!e;^|XfabostXd)>sb?r97X@8iZzkSvBrmbSpj&666;+}Czq zTF66if)?3ONs~*W8sEd>SbL+-wj`3F5Ga*n64t(bn(o}+x9f%Uorj~hff)|g;0yAl z5e0f!!8ng<uz%xHj|Z@a{QS1|W%F8YyD%N@!{HU){iV~_3#O@iXC4NM%l7+O4iOKX zLe|LhE}767hf=6(Ev?}}4xLeMZE$T4Mv61afvc=2W^`q*v%YsgNWKVeX^&y^T)4d% zW6*gD{xx?#gq?5P(a3!><D~HMo8Tk6cW15ye`om7+c((>L(t_$-{2C`X@h%@{z#16 zW&gN+Wa#YDs=YH#KIvM1YN?$u2P5(z*1^z!v4JEp>X5H^j|Ziz)z^5j-g!mp*r)Hh zu7HCHH`CA33bRRn2DM+tt2Tw}`L5T{SK75(-|jZ9jTOj%Ca2jb%5@_T;`k4SD)}N( z|3tkq$Ga%Xt$zb|`e8{C(G6_(BVN{RYN&ldY%HdBesPV*)Je+L+oZm^Js_vox3A+{ z{=x4n&)XPE1(#j4l1}31SFMAothrbYNZ^+leSAT^9{eG=vgEXKIL@-uIL`gBO{CD* z$k*Y82chflP9+at_x@r{dJ5yHews5%_yu~DJcZp+ulGRzE|#m$aml<X6I9n-*6+7D zV4t24klLcA4|zu}9`vY5^^>^@k>SC4SL)&w$eW(6#cbR#XfV$vvByxm;_E4*r^^oI z@~U+Js%IV*#n+kB-Wxo?-nEo@$SYGRIl&DVZrtoA?2Tu=<Nw1p;{oOm2Vhl`n<sb5 z)@9=L<I|<P$L)k`JVhhXlL<g`6IHD4oBN?d1Ve>7s?3Elk~eR;xIhf-SQp1`2bk>( z@ZowTKyQZQw;F;GUjne$*W`6Pczy(H)GAj*?-2uX7$83NliwU)u-B1rOBCmY%Ruk8 zz%JU#Rx_1h@R5(t$*^ju6kl$DsEeZE5CgY*CQ3@zHc-qQrUyss$Z~*Tx9I>6QCrEK zdTp{jwB<W#Epb~CJrIe_-t@@Q*DFImC8Xa6{=KFxYeS!w{SYuZGZ8%p=`#9|3YJuM z5W;41fA@#(akarQireta#n7=0-jC>mT9L;g-_<E!e!0f8J{`V+tGgxE^UfhkH0|QM zVHM8Gfg00jV1S2|sui+w=<UWeZhmb(|GwY;S989t_FrXo?(bGW=NPBFcX#4Y-3Zw# z;q~_`xJ|}LI5)ZC?z5trW0Iw?M#Pa?WUF^soIKA5TA700PE}#h4avq%vIHB!%ou6> zk%L1h^*(Kl=VWG;W2`|$`VlRCoYTchU@*y*CwYYeM^dZsE4>$U)FqQQI9m{?opYdE zrH?7@XiYE<`!2ioZ^JVM$*F!+=AI1Cv)0PfZjEF;R5x`rzhHcddzQ#Gi$2c#wo+#k zQdQN`d~)B`bfR61#7BLHR6%(YK`tbiG@uD2i?(t|$8^1(ZtW^!qq6hU++TtcTD`#g z`CVq{KuMxcnX;v=>ktdJt!O$X+j-JOV3wmbV|p-gu2xpHK;4rn=CRym(``xx4!<k_ z0(yw9{E;wp2ro24WA1uW(^vqhs;8c;uEqSE$8GKaJW-dSi3D)lZy%*ck3D8H;`Srq zU*MU}{z<b&9@@WQ)ZJBgK8g@0Z?E^pklg`Qo4vhh)VKALluC0+;x~I3_jX1l*{1*| zU#+s<%`-kCVoOthp&yEwfbqx$hgcfj6=|L^Y$lg;*n}_2ISTPy-;PXG2&|aiKFB#U zUDaWqzJZs^2E`t+3ZObM#ClCSiIKaBU)>%)?yS4`fI;{u-LvHMpcHjLE4fX=i7Ded zR?_f)!tyfv=k0@Ok-lu4s~I}+xH#GLx<3f1EP&Ul9YlucxbJb)cOKkz!aSu~x-KcN z`}}u!zx6yl^%~L!Mr7CO@8{zHp+F3acG55B1z*|#pYagh9^nH?NZx>PI=kbhwoF4K z(i{Rj;Z(SrHb4xF8G>bA9ImSBAjQM%SHOznMF=s9{gPdBLDytAG+H30^r-(65ApA2 zeH$`56TqA3savd$Z#Z_SDN2wL*6NmCdOOc%QsK7l4_~XnFR51$m88;JyjV-*<*kS_ zHvK|zrimxt(x#K301boB@`{NLXH2JS=yR(F|1LL~@{8Ok^J&md5qH93vmuD#6Ewjf z`VzL8W8sB<m|=<WZ1(7nG$rVF-6)&BK>XY(v^SCT?ipXAH%<v<2H#KeAZhH?<{PTJ zty@>xzQ$MSDREI+rLbs{Mj7ZWef)@|5YDp$lY!pj=jeEIH-yBtBTDmX#Ehq2n*w31 zz{%&0E*?%c0cA|@I>m-HKvjr~cW5CKk6pg3$2X}DA#pV70!R3FzAtczbN{==$p4+p z^9JuP>y4Bj)*Hva1EfH=5t`4keXHbL8jXR>4MT?mOP}IShQHs+0PR&#oqZazZ%=}s zTcVS)6eMR##c96xyp!5zl2|V{e_Umtda{H3>=za>8iI@m$@Bk;&_~ZM<{hg`CFiLK zKW)y^|G|u|`EE>|;nFP`4B`^7S(Iv0bHigZZEX)k#T|W>P1;Zs-r4=aY9<tYf_I!Y zR^#wg%!K)BT7|Bcc<l}l-Q^osu0QN$M(I^l7!#7PCWB5txq9D2wO$Y16}n$nv<bGh zpxtKQhW}x*bm5|4>EOa{{v96p;KXV|@9+|<d=|8_IUTb|HvD;}>q=56q)tf3WBfjk z^xY&EF)rHuB1B=j|LY5>ccR1thv2c1@%a8^oRFYZzMxNhBwZ#-Ix|JwHatPTY2N3+ z+AL5CsN)vI8FH&zfI1(q8p|&q!0Qqgv$bFzLFY~i^`5;DCONm>-@joek^@aoo&c6i ztvx55CgCHd@^p7U;dKB)vd8@@TlVf_P15erM(?d|q8aL44ewpuRKtC&BapYzI1gy= z|5yC}*B?M};GfA$A9NU-y7=ecVfB&-r&D0rc;hr1oy;j*E1td>Nc=GVB%`aqQ{&}p zR70xsR6l!|7v|+MW@+U!#aXU2Jqg~}PBMWt`up~FxS03{e^)z4M*A>Fv!F^T3-k(9 z;{<A0m1eqW!fsl5!@wEqYHF3EdG*jM<?c#P@{Z=myfoVqBvT}GPh*%<Kphb)BS!}w zGKqPPi9O+rc8WvPkNO@%L*}Q{9;8F9GXoe(sWt&j7DDb-adzhE8fy2V9~cyCNd<P< zh%*}X)+SVlr`;nDE)!jHp$Zr^9$92V^y%|7KNp;5EMB8+6Mpk{E2BT$24#Y^U7QA) z00e9asdg;sI+GYemOkUinhH0W=ql)L!$h~peBLTneniQ#JF^I-Xo;rlOCy=KH^6fG zzOS#oQ2^vFGedZ-OKn6>l!?`P8x;e24?#$IcIFQrfmt7UEg0Bkj?gKbRh+gzgr2xi z!ELn)VWL!AjA?0=UkjeKs%+n~{u7(<M4z9<R_EIveNcnn%14pi{-|~x(rU)W=Ysf` zTt`%=#H7q&r58BWS$zR9e{E40$Dv7xtbY!X1=bLAw_-&bFD+}y?>=Ugmg9Y!%_<Gj zw#9QSp!>DO2xgOKZkoR!>oh}WQQqZ~c_Gvu&Mzdi*zN>ismItf|CxMh{ej(WDE7xg zxp$4AO;gpSf@2ga_GD6OmI+i-DC$epX06NZ-HnKqQ~PEzUku{h`{u?XomvD1y#;|R z8e=hqY#ZVn+<^~iIXn&fC^lnc-em>CkQnMY%3We84rp;vPcCt>yBoJ(WTmhO--_|9 z)2le@M2IC&x-|O94GlT@z*Y<|?Vu!cB$T7N5QQ52aCn`!r~DYg3*}*+>eh8R+JBy1 zzeAXjpV4{!!}X9vReC~2B8B^i$pBCsNh-G+m9a#@tlN711oHv%0vtABI}a6}K%l}C z(AxFlHvxkNyLyT*8W<M>@c|}RJl?kx8OKYcH-z>sUW7rpc451&)&ab@m+5bAR@rlJ zNb&`G942>;{<!}H7zuGYtqtYMX_Z|ceAT_+ds>T<auTmvC(5sGU+Il8b*oXT7xXKm z|Fx$7O=FKB=C8Pr{Sg=LzZDlyX$uuYTS4fYFfCM^EZg(NIM{2N&rKO!Rqlv3Jmn8a z2aaKRL{Vt|TtGW{#u<pX@n2S`t?n+&h`e`Ut;FUak<5Fqua!)n)x9dT3*WVkc4Po@ zy(p=$uJ6w;7_a?AfR|VPzdi^7y>Ay8z{ph@ljV;;MOj(JEuO=Jlu0}bt;lXbI~c0? zn=P9g-nUH*t!~Mh+s`KA6PJgBr*4N;QW$agT4Bi>!e)ed7^NLked4kyY)&j>jwW?I z<qQ`m?2;;3U-*(a5b0_qZ>983eJj7cg4)RU9wvz^lV}L?OX0*=Drr-Sjs{T2_2@ky z31-QT@IS7uih4_8wRat{wFe+K2ZfH(W{QnQ=S2rg^Ov#%%Kr31g@w2`llw;8KHyEa zLDk2sBuSyfR0@&?wGXaF7Nq+i11eS0a*`o^E(ZWugS+E$SV^lKy|ag&S?ocoeIFas zZa;KKox}`?!YAK|n|(WU7QQ!k){EMj;;Ven-5*r#rX3$PqgO8VUT<D{oHK0yC?R^~ zh#L?cHnGbWgaAhp@p71%fBl6g>3q6*nL=7^<gu`e%un~#>Ak<)SJ&coXR#cpmqM~F z1=?&pdvaXgWgRZOR&Z&`73hVl6bJwgU`7M^PQA`-s7pt1gkl=^=3nrh$Hhf(r?Zlc zd|RaC*I(~$rXISti*q@Rkl)(6bMbkQi7j!BvhK*#-?hQ)JlUOtb;LR`m31q><3D*U z7CN74$}mB#Cyggp`qkq4AI0;3zi1}-S09bzM;~qbcRbeiDA&hu;OQ3?{EAc`26U8E zLgj4fzbjRXMOE}0yn*1h6o>2bR`(u1l%q<%lk@cy)M4LCOoZwZItiZcFHETI{hy|& z-E6v{S8@80SB90y@92wGg$YUDKK$2B)~%vY=+z8nBO*aX%agsw{eh~I2iv&Su7xhE zOAedcuu%hE=?Q;=G7J4KDtv4#y?5(GbJR-_Xb)03Bi7UfcKlCo)+Sv{GY$2E=XNnU z$xpbsosS_Co8{dYLPqs+bOv<1wE`wox-&dT`7DW(*{9I9($Kk^FPGhwt_mG(+l-GZ ze^a84EXHQBPC(IA8$u`r21wSU>U$SCps%zzADi$6NQL*I;trPv%P#T%VehNMqTIK( zrKAL;kq#;85Tr{&rKGz{x;vz#84&3P>5}g5?(S}e9-42Az1?TO=e(Qq{{8*ob&bPZ z*F4Ys*0bVX_qrD^A+DAN&mDDuX#^%tbQ0&7(;fZE4GYyR!1W8X56#)O)JoX1sZ%45 zWJ{=5fK_=>s}4Lrwn>NAehM?!zKUr+$Z&yZxu{m9>vZ&(p3$!lhS&zF<?8QqwmJ*j zLlW23+eh4wv#X~V>-`oh4=_UAt+DoHxSmbUN&2KgzmOzDtUh$;?8F%*0m|;g*xybL zDDci4esV2qzVF!*R^L~4T#Z{6UpJmRk&aFFyAj8idA`!x@R=**^Kz^7iij3w0g7jO z@UuxIz*qHs1~(f*VDjN3MRwsV<o-41TRw2vB-)1refoB=0p7%B?bC3D1^1N49yjOQ z5ZYuwmFO(;9`{GoBKLiUE-8me(8$Rc*G4Z@Y7jaJie=70_YyA$1IIRCb`j!=g?tFf zVjsTFp%4AEGGJx-SiCY=XxE(t<b5)lM)|vG_&e17hYDSd^_LA(Jd}M5mP8V*9s7kJ zD+J-(MmHW@X!H@VqsL2VHcVjGJ4&uBW%Un@*8w)6-)61p7M}|rr_e#boNSWvU2imz za;J~bATBLv+&@Qv3U~gz-n#-8J;frT)5I!bRZI2Z#>|jqs+hXx(U*N$`aAWugh3N) z+1td{ww$aG*i=w0$K)g6;4><;y&N3<-iglW>W72tfihH+Erz#H>uU24uE_pTEa||( zdZoOgw#5rA5ndfCPt?>av_G04>|g=(@pltq(se$q_2V+&LnXW|l5)g&O4medFHPr{ zd4_$Q?R%4I7Ds3N-nn%kPgeT$l&oqK_6_M0s$GNyA{PEwEnjRkl?yk+THFWHq_}h! zMqp>D7wK7y@~i$$jDaYBzRL8-9cL}keYdURW;FP&G3jR645}^!I1koZ&~puUdm?8^ zd>?yzK^$`F@F^zpR#6e`%BnMmKCl5|W{^_QoQobGC&qDRs^3FxCb1bKY}{3`7n+Pi zBFKL0lHgrBJVwN!(w6qx_k5g2o{N$s6m!|cjgMV0KncssCM?E`TV<$)%{@{?r($B! zl({e7zeyDbBB_Wqtu%CK_QF4UIbBwK@>BQ}TW=g;pa__;ky8`(am{=(?R@w7P0i_h zTQgKwP3oedQ?!MMR9G9WfCVBt$oTk0hz^$ZU#hK{ixD%66oClEO2Qf}XG8vP_t-zp zp-^ZV{1+_v|HBMVs6f|h<5+iWy_G6<W6WkRnMcb8kEhhLcoDA#{xWkuZ~%N<B2}|z z6A9;{;qn2nFG!;cdcOALl0>C9x^-|osRI@W6kSIxR~k9|mw_W<Fk4+}_m*MbwPU6+ zYPFrlDQV)TmgvpM4=vFfv_9;Jb)0SXZl*Y=!w>5&QzTvx<{|MP?+Qs*S9)j2rb<sN zzc`>&Zbp1`hq6FVean(?(pCGmo!&{Y*h1)RU2Xr(-VEA4L03aakeR$&3;8N~MyH#h z)?(Tn=`qKT5<#-7lOSzxQG!&32OEDl_bu;|rN<P?s~eUBaj7P|{`+T17IlvI7MiIm zU@CswYErPtP)&dWuzl9T112JvT92~5gh_3&tOZOQ@hHs!Y?334r^KX5$KskKOgrBp zOHU$&-mwk8l1i-qj}WrweR6%NCm{C~=pMNE?h!=mJN_a6sOOmrU%pG%e}hSdfY5Zz zs)G|LlgMVp^ep3#OvA1t(s&_L2c3t*57`rMgei<5hzXs;ij;v9i2;H1_@&qv=nBwX za%pYp=3e*oJV&jV@6GuM6U#}T%|_p4l5)ay?BbKZJ1<tXA0A4#%pDwM*W*)EMPBh` zao6_8g<>dPnhWL?p*p<vE1~vCln$`kYml_BmB`S=I^L=~{1}#1@np4DqK!T=XzQ<~ z$zeIV7T>;!XdfQfJ^BzcnhP+wFBCxWGAw>vaG-@>#_UKKgOwV%g<ly=I^%3_clrkE z7G*S%ZN-`<KkaJ;QrZfqKZ=%B;?hS@`1CZ^m!yyOzsMShJuMi2fEY}1Szr)jM9!`k zZgcaCVWskD_{xh#38S-@E0WvNZ0kknV71Hn$!_z?oYPCp<FPN=;-CPkpp3{vmA`zQ zr;P|P@tQW@egc!ez;Ac?ubr*`?fpZ$pBiE5A=F@g#lA#ku%)}ClYRV40_wu!c^?H$ zvV$+k`m%SNsc5THZi##L@o$qUNd`&tyK1ox@!Mhw(W$^{rm8I_zn}Ldd^E8^UA}$% z6}|WW+gJami?r1EIWRCh^nGAJB<lf3J{S}R>o4l8K)KY5@MZs=G>Yx77xWQ&fEwa_ zbbwkC>n}1d55Kfc&mTnzPJbVG)7sTA9a%!MY|^}eglJ%%D|_nrq(4`N5LnD!GP~`S zy(VSteCEjJn=W*d(WSG8f5-pw$;UtKWyTXN6X(c?uSVbJ#HOcoHh){pDiTOhc7<z| zWlI%*JP8k0wL93=tDKdK6HGEvr78LiSw27)>d&n4UtV~6K>f1T#P8M${Qzra1@q&| zlr;XrkNaQl?SKE%X6(-&UgA4j`h)w!?p#TQw&=eaQ2Cb|{_~geJo!o53Z}>cGXq)q z=9ybAIo7AmCTzb}^*ErbxP?^7a(<Dx-1PwqUW4pPX3btmfQd(RQIr2gU*tceWnoQD zKa~tcBEBPDamnV-mTwY{_t;E0Wz^Pd;R_l>=BNpJGH>hz!J4$!oYVVkk>53Gv3mdV z82*O}`yWeiu_f+bE}{FoOX!z+fJ>0=LVp*uUjDzI=7aufne<Z-cld`O?#4qNelR;R zqy6}=Uh&UE{4Za;8vHSs&}n219!z+5GWvig9Zb|4(Q%^t*RaLkN<NecyKxIDFmgZ7 zj}}nF|K>36k#01LjT8;P!erj@-1c3tH+B&JWyuX7hTFmg%AiH`_gcG$T(zf-)DNMH zU<G~uH#)alQK$oh)Pv@wnPlzq4e>)eCT)o$sir-elyW-wwM7y0=Ca#}f?W||FEM00 zHT*ipubFI|;dw*KGmf19C7cK@=>W6H^+H-a)-?fDxsA)=Em=p+9H||G^th0Tz!ueB z(e#{k&lhhgw1?_sf-+KtWu=cLQAcP2>Z%QB?7@yRIst4iNK=&?MF2D_hoDU?t$|G4 zVXRY&8hXM@nS0Zmd)}OTFT}#TdkWLKzx{6i<8gQ`L`)5J%Q6F1Zg+803Mw`MT_!2| zi!QI0hQ~f~<Zgg98rx!JlZ^L@^h<L}Q7XF39H*SvT>kBM|9jtg<@FT2?3=bFaLz<u z&gSWAtz=W7k*ZSt?g~?l7Ojk`Yk*>4Qb*z74#&`60vI-y=hxc9tC?XV^2W#49w;K| zA|Y#?+LxYJT@d-IW&Dze91eUknpL-~_3lfPAXjXK(we6x@nLpc$JZ3S9~f1Owd65c z;*!u0J8nFUJR_(GIiV2~DCEXK1?O(G2@N>+rZX6R4!{mr?B%K!q`|d(TGuRPIu!>Z z05z11w2c<IyQ8Qh2|(kL6m5o@l;pi+WRRBe#UxeC2w0cMqT@2JaW-x^`8R;|Z`}Yr zA>=d1wOGN^cj%~qGg%kNS_QtqBSZ()0<_6^_A>Ra;a{9Qd6<iayTHS>pNlKC2Hf-L z&K-+B2w%((VOR)=R`fNS`Nk6<gjDcqViWnj7<v5%nQJNTrz;N;ftOWdC+>xLfHS{p zd3wCY6Nu@wT_V&X5WLL>p&uoJt}2Hl&CM*f<1zsIrg%I=@%P#%ehlc>N{64|oK$?O z%gXdP4-yRTJvsYev`a=9rrhH+_=a2?n792Tx&3a37^P$FB;lw~qq1C)m_=!=)D4zd z26g3B5FKA=2yTRlCKf3QCgFY{nrApTM@1Ucy98+`2Cv%sa67MOEp-zJcYX0#LdKA4 z$@YB@SC+7-$CIbwwxf>KY<agsluFw750Z?YK@t4%yp9I|U$IDu=3ptaGb_1CHsL&E zI_;Q*&5+X#q<WZ|n}{I}n4Er3sRr?u)_Yn1GOU+Wgj`P%2XewF2~RZC0SWeZJ@UZj zFpbeePa*a6yur!N&eXu)OPzjgLl%j6-+~d{PuZpZ08g&@RFE(|@;N0r<am~z!!Cmt zu7qj8Yh}0!aV)QH;t$zRJ}1~uhweYFi~DU$0}K%4wERdD;<!P|B?CMV(WE9y^av-; zX_1v|qDRt_^b^VHvO@HIKaSwV+A{{hBpV0jwM#QBq$6_()HmBQH;0924se`7#OBo` z{wG?ar^_)l)NMGg-4<~_hEd`s?Odmmtqs%M-@t31?yMFnLu?k^nVbA01-t4HzD;+d zW0Nr@-3nTgz@9etlNY(MEF*`!L5Fy-*bScf_4H_k==gWrUSrPLfNOY6A~ix)*I=LE zK{%DI5MpY?!`Sj^!hFYu_oAxpjl&<V((}>JtO(Z|EfX471OxQ}*#SXf7$r5-s<Ve; z1>%%<#%z4L<%rf-4OBo?Ddjged8R0Hu8oVU2$zM>g&exWZq0Y!+#N_oqzFTja-yNE z)h`zpnq=Qqtd2HC25j+d!5Zz)lcZv0={rD=5q4Zj7=OgHgr3pUI{gMr>!$SR96`dw zQMY6VFRyvQ8g!E4dacs;0(rrzVX`Y#%nULi_g&MF<`bc;OuH%hW7dUN5dP0X;uD(V zO*HtYIaKD1bEwmQhwH;LH0c(|OV5dhc-fY&>5I`Xh1U0+rU|x)2Bs`|BhptN%&$G) z`hSdb!x?cyU`C)wbBJ-ze8WoUebSKzLiwB_^<sX$h_|C+U0A7_%ZIqFZb+CG=5q8g z*$HkspBt`xCvS_3i$?Q^1TbE|>`n91Y$M>EBw=$8QnTC2T9Vt)>Q3gx=E7vLorh)p zTsbW2eC^IA-uUR+YDqHSEA6wa=TMqs#JnbttZOwxX2>j70>(YUL)~?O9(F_r&2MSQ zA{2<D?%O!m3@e~tR4#Yk8Y*{CL11fw%?q5YK6@6u99l>hPURh1)R5mg+=FX6b@~in z<W&_@DbzvLolKk49d>`4$2}L3?)gBGDdwY*>$B#w{dJxLM+jAKHi|H?XJ2sJN3A0T zYJ`-Qz|MyT_u{78_N#o+wBbS!S@>vCSqE(><^J)rAC`8W-4hHlsk2*n>NP9%hB!IM zx6yL}T#GmK1`9T_TUV3mn9WNyybZ@_oS>#}4clVX#|UM{&nRj0q-$Kb0u^99HuD9O z>Jd+lx{ipJqboC0^-D!wT@F?rP4%I5&L5GE#ZCV{xW5Fb-)|1_!*{vLHY=$qRNxEG z>J`$MKrX0o54ju<cz%9^^K$UR<Br$s_6ySL+wK~DRWkinW67=Z>yP~cVk(c|*VNn* z+E+z<c$z8ewNMq-G!UiMdF$NRkfsUZQ*`!ipTwCZXMI~Bv35&aU#$%ixmC~S6Ys(e zydg?#-f?2Eq;J2%efCGD^Ruhlfh_>e?k{B?lEP$zwVEDj)tLfdjr2_Qv@Y?Lt{Fx8 z7tD(<(m*^XXx5`~DHS?Iyr%OoISq8nQ0}mSCrrkv9?ROB+&6ZY-}sZ*S2+BS)G5bi z;pg)Q-^j_m6wR`4#>}0Q_h|qXo<&D`ZZ5<E#+E+sW=sV4H|N_p2Y;wn{cE7#O!|n1 z^$N~uNW@-uW@R=cN6o#C(EReKM*DPh4g?kX6r!9`+A3Gx$364jj$%G^Gl@2Pa`L4$ zifMxPdlvT2n}t%FtkrNxyA~NsEBO)7{yy;f@l`kStr2)jyIC`p#QKM`+4-y5CG>1Q z+p9}b<5=)&;@}!i9Dg49;>U|bC2i&}N6kL1l+#@rQAVlT0NXC)2jVdt8Kf60{RNW@ z9P<ykwnhcy)X#YBF6Q@SZUopc58YM{XEigIDHZWlpFn#^66CdIUlO%^G0xDMP9oLo zI?P&d`EoR-%A913dwL)%O?vlXMbmAKD$c%cgez8mVf|I$r%;h_&8HYN-z}GX%}VpT z<>tN!T^W&F-nHP3*64F{`)CCy5)rUh?Zk6@0b0Vo%~I|tGPngx#j}>zuf~CnhMI0{ z>{a4)GyZ83+Y>Q?UvQI`3de)X-SxKINIRD78OZ0xAo;_Mfd|HDVQ+h{cJk<LUFwU0 zeeO6Q=S$HPnze9_6ar@0G1B90&e6$wAMM1r6zkE}n9Fq~T0-Y?e`mJUjXN7iy!xD) zc<rxOuLnhWEWTdFpL`6TB+A6b2vDLH4lES7Tu4;99eX?dn!67_=`tnwmlS!E@UL83 z#QdST_LdK~6F^5;!+FUq8mQzwJ}Z@aFC|J=>RpV}O;%e6LYi5hw;b?Lv9A~iODwoe zjw92*I5|N1*!wwro`)bAnvSZ!>6D`~?QFW#$lZ)x&%v0)?T9&en-^6-_mM|7mjC5v zYlOj2zLm(vB;kQB0kM-n=X`Hsju&>v^ILOjfn2js_-e{2IlBV5GgK>5Zr*W(h$4Il zE;^h6MneNd%xWnketU$&kmo5rFvnyD^<<+iSUSKPUZdx3<pd~;AznxufOw?z<c$WR zt-|CFW&VVY=7UgTk#C^<FZ3om_*O!WIrWgL2<Bzof^NwIg@WI;x}rUn=u9Tu+CItV z38dR)*G=~4ml-V-1ti#(JxzU^shN$I-6+JTQhx%~UP3nAvP94=my|1V;a(f>-oVA{ zdF4WbmXnO~T(29RrLs4GTeAmeCC+qBugoti_X&epG?QooNm@W_v|pue=zg2zS%Szb z$L6=(Q}y*!>gQTwMIV+O&SVzZVH*r$7h7~2yI&`>@%DE5@it#M=qXl#sk(IabTzg{ zK8Bl(A&Xayp{<>+C@i&(0P^-uzZb;~do*g{GZ5Z)rLmPC2N$_~%!49#L?uf6#rp0D z33d&xToCiziA<8_y-K^;wH*h_k1f1|!`~{d_&M<G_lHJiIeUP67ze!$;C-n=RTrxb zyrj;mbn)_C^r)B_8B^Dw+lz~-XKG22-m^7Xj>0l8Gv4_c1~g(-Tm@NX>23F3tOOE~ zI2d6kXTKPsmZnegEBt*-|JIvZ9z6{kbvQog@Q2_Dn-Q1@gW-KS#SGFAj|!O{yHPN^ z#GPX#?aMS@Fqt33%T>+2&bIyP#F`8?xNn8pvgEIPYwp|*SGat)s7@MHGePZZgA_eE zuPeI}TH$H?o_S^@b3~d=kwy~n5G@jrMKa)>Rx5eLFlIm9CESAAO<FFO_bcAd2ywI~ zk=lkoi~8`>wHx95s-w3*fp>)g9)MniDtE~iA89{{tDe6<kp1Rpf?AR>sb-^v1TJe1 zQ@S|AsH5k*{9yM*lKfA<%2IJX51KJe_L-}`kQKmAQSjlOZ$WhO0*LIBct^tOeOvkV zt=|Rkn!8%}8M8jfD=ifYic4zNeDL}2GF|Nz^w^5q>TAO7McTvUd~JO821j#VnfgYP z$@}Gs<+IV#E6)j{FuSYRTSH7;`$n3KMQ0ooyIQ<mIy%ELxYwCDkm0%PN2~FMKGP7r z*6-_$NU<7fp3H}=>g1kl-}KAUX1VznNT94Os)eM<^J+_`-2L$JyYT#9aUu=pG_n>8 zcY#q-DR(j`1a~5C<DwxXUcMMF*yXY*xIW5o(49)!sTff?oVg*At-aX}55|Ul?)c8} zy8ITWb~`U+#2HleWa=7TBSHe^qhlQ_NacAqRlyFC-_SgFCTwe`EtV&MWaAQn<zNx8 zS(lOh=BeLNsP4SD#~6Ow?L4JcUL}5$E4w}pgKnX^do4oRa?XM#6$#+QEZkWSpy6)9 zWxMTc2kN<@e(JPK?fY|O%bac}n_~Jw_D?UJRCa*j9%MCf_ae_X2RdrJ3T4C+O#`jo z)k`pWy)z8_T^Ib@8WZ=i=UP5*)#gF-#V|;=E(>^(G~=Bc=&@9eo!lwgK6`6pe&ndP z`r;HkIx~^qovH6|!A3Wl{*~P#yJsX3TlTI&x*v55!D&TbV%B*vt^!|q)F9qZTAvc| z<<gg$xsmt;c~oy<Szm9tI<YkDg-b^yeRy>tIgmzCbt{wi;Nrp@qx#O6u={XQ-DApR zO&#YYG3=t08E`&jz@dm!Zf`!cJWoMqoy~^qohIS^FD$RA{SUO|!4Uw*m%CHAo{v+k zKAEQ)E=aWdeN;KDKE#wy3XGPgXYjzmMAQVvRuva5KkFRiWfI8BWAdg+hm}l<fM}<T zpXvAjQUw0ycLTQx<~2XvLi7t4V-xA!aIy4PWk$vcaa-4N=F0vJz6{x4*-ah6-~v(B z{27aUY|C928+X+bQrW>0Ur5RMb4kq!L|-TN9%Q9XCdI2E8ljsd!c(2SfB}c)koEN8 z7MI)+OAh&*2Dk<1H@^%u@v8fU)UF(Eb!rlrRO)$Ed$1X=3(X$!vfhB(cM+*-#)?*V z9oIh(sER`}xTdM$S6dWSYR-EN&39Gg(Q{|0%^N`Q&2U7%N^SudcnQ?1uq#Y;QssC< z1HZop^6Mw}Xl4N26=CQx7l3{^Rz=eUdOYSmHkwgcd!u*;t}<UotTXz#LtC4WB#YBC zb|N{3Ohux1%5SK*lEXhuEVO<xw&J{VzH9)M9kK3emgm9M1JzBaiJ{23HpwIki$L^r z8o~bn#qtXghYg+3)83s)f30BId}Wdc&>4*CSCW_WQa{_6X8tDbZa5gWI6dE|f1#AS z2t0eu=6s@aUWu_xSfad0cJD?rlgJZPYQ3#IeY0P)XHswDg_!|N8EKSKQ&Ypwy(__z zjlS4$lv6jRN$Nxr!g8{3USt_0V=sVdNfyUQ<rNs8JPb*@Gp2vc?66~Sn_6iMUgJT3 zPgzwU%5GayhAMTY%?&zy-8YTpj{I`#DCQSZ4Nj1L;o?f)aq)o%Kq;JTB!E`ZqNagX zWGCapC38hn8&r)pbf=cNQ75J^9sFcbSp9#&j+b1~rGr2O2VlZUXrf6ne{;+JnKhmU zpF|N6&IN>WUUICLK38DaGS68yp-xaLGP$lrbHXiFggGnm8V5DyTjT)8G`*C&_Xtk5 z*Za=<ojl3>x8)bGLUNNkQWIUs`Yw8Y%)@hEiV{PYOX*0Xm(u#bTs3fvNpVQT48edX z+Lup2cLC->eD4i98Ob)el;$<tGz}$Jk~ABG*uCrGv@Y|XsCmGD)08}aw!t$kTCNLw z<OlX{_s*2a99Qv}mV=}Co!fO#^~dQ&jhD}znd+~^loPMDj{2;+4#p;`wFcjFkFjI# z)}seTT}{ryFc7lnXEi~T$fnp|+cc0B{8P+rMi*nCY6(=E7Mr=|2na#BM_^&|;Z*Oi z4D76nP8O2%6WNsLO6LM>xIBI-`c#m1j043b8l^OWd9}9Z$f6zB)uRioyXUh+i@_y3 zd~avAFE1~AwarnM7k!khbHdvI>Ex7mtgh+Vjd4Mqt=y_rXMO_m5wEQqxiR{2DdLwe zdDqD!7+p1T=0iUGLL{n;e!=EdNK9|?i5>z+#D{fi3lNu3EETjvnQ@_9$BAfpCijww zLlHP+UB4M#J|5=*BkO0o-MfFb_UPdtjhT3N)?oKFbuL}_OE>ySHha_eq_-0N<dWYQ zHrGcARk_D3W7BKSpDd0_jb1cQ+uh2?mW(R4^WI!~8@DNIJFSKcS6RJG^4NNBT2Lvg z#Ix!A$wy%HXa|aCSWL39PE)dRPGyj6>M5PanYrz(_jl(rJh7OPQaJARX|FqIO>fwQ zOxzgy#20KZ;*3;-o$fX~S7nzTj-WwUMoXa(X0A`qZeMqes`_weN$IqmI-qj5FVU{O zUnzE8B<rk+1@aFr=4YxVbwrvM4xfZH+-*c`wa-n6;v&E3z4yE&!ZoDtHg^h%7^-y% z6t5chx3oyntisN`vmURaoJb`uC7+YH+2%p1|F^;I_nS+Cq+vrAkP5tvPYKq12+nfA z3X1!9noY;#@kgG_DuORHG4Gz^_QH5(U)}QhbWtpA24!Dw4G3Ho23i8xo>3*(vZ%Nu z4zBdYDr_+=iIjcjScFooSgL0ru?cR7?HmL(26E)-VdWT-oDTq3G4IC|lKJiS8(k}n zXAlTfE+v^~m_U*k`J5Z2u(u)7M3oKi$29xfUzzU_fc;F7@zGW?JC?&KFrX}yxiXU% zysqMvE}DU<wX?x`+aIb_^z^@4??&L(dxqWa16m9=^lR|oWk=@3y7Z51_NoxI5?v-# zvp39g%pa2%vzq<2DYzN%QKgO{s540a=mN4|RulJ!cllmrB)yWYv1B};MW#y#ta<r7 zq-EEnvm0>k3}km&GtG}5k^dsBk2C5<+C$5p)NnxlWOoc&@>Z{MUtkbSgm$>0L!o?c zSFrFrP`R>)&St36(#BFdRb~gwJyKLplU(DlyAZN<%a@5IX#HaT#?dM}Vehy|mMZ2L zr4DOt9GcvkR4O_J-3hJua9n?jUNxA2ip@dgL}LQXiH!3IGV_K3k8w&JGSMuBW&t_b zC$}y|G(Aq<oa%6%!NcuZqLHuqX@#CW&0<SG?1-{5LOoSSlJ$rImMnaDBeSkS=0_^O zF*lIHB<=77PtmM1%NZc}Px|InTJU-xJm2DUi{`Tr`*d03W6NUO8m5lsFj3~rQrq3p zNTtX6t+bBFx+;^kM<wU7dEh{`v3R=CzQ<lUr<>ge4py79qXCZAoy>X_*#hqe_%S$4 zpZ-xb-L|CIo-JflZ5xscuxYkPxY0JuoD7EV7H#MxOhA3=c?aaca0uP=!(%Rr;=nmO zO3AHz!oYL=1j`g|Ay}|E`424s3MnVXUsL;@LBIO8`>NmL)9%CKlhn{bOM@bxqa+hy zUp1O!;@;L{<_$1itnX-^LMOT)(s!p0&wM9I5)lL9<xqBO+)<@gl-+XVKB4&UDBlDl zzz>h;g#{2TtlnYS4j}A1&cFSJn3tS6iBiV9h_mgd;>#EqJ3YvXy;8ewgckA?5zHzt z&|Q{y2}5`7=!NGs;NyfE+y`SoBFJ9IIbP0e^P58_4uhQp_geNlGc(7VR;~WR&9N17 z)(2|&G+U$-t1<B`xHJS5LZ;Cdp93wx$&gg1L-Xxq7xD+gh9;gyUVnB1#ACc!`=+E1 zipw&WA<KZ?g$|5eH6d%#^Z9uH%nR%!w;P6w0*^e7_Jsw)5=!iDcp>Tvt5{<YGLWaG zv}!qr@V$EaXy_M<3lOH;t$d=bP~z2BZ0<nJ>TS|5vwkG=S<w4;lO7682A~KltD(kr zgWFx;<0&Y-bMB9l3&5`uU&vP{KJy5RMQ{T<$rd*YCxE4k1OL<?rdI&(c4egZc=C8% zFIAW3%)6S~bl=L<wQ9%#GRV}rLXnMw#X6C#A0b5K*1f3GUA(`4tIs0_#L6ByOP;kB z?7&UldCE3f=8J~?Cb1HWq!d$Hz2>oO&_WA&ziTIU;$1G5vMyqHJRNEBQ<MGR<LG@V z!B5%Rq?4TlM2oW7CW7OOC4|ztx67g(@Dj2X!hTpAwV*Nl&RGv<_+Af9FZCK57lpRq zU+teJ;hz(R!I}Br+w~?7iGb;0qEY0LjXn@$glGGYX%P`M!wFirx`Y%Dl>8e&^-sqL z)9|_;!Gl*<OLeqx`oYL_AdQjcS+0=ScxIHp-AGyM%Ji)=bGCFVNc!V4z#Yu*Hb~cj zqQXsBy@6Ep-STW_2gL`_1;mm_;EuE`j-Jew4&`D1I+wgOQ#`Jj=g@^3OAli=nO^iy z>Fz*Jh$s6fN2M>1+8{D<>=Pf*o`Os=c<PGn%N#^=>)#z)4Wca;>UkStE;qYVFML`a zld_*Bw7s1_w(4D+8G#~2oVGJFU#xBQw-NVzKVC?B+Tc)79&>2*qmUFhUMFqZrh>#@ zIuYu$yiU_S-Wbb*H;}4Az|320C93P7P@>N|P-DnCaFlcp<T7x7lpIBg43M}byef-W zj+c1)bt>H%rQ<Yi13kWc+k5j)$zN_YlUYDFaA@r78w^20a+QECS)O<f$<f%Z5f{zj z$;JFg4e=~q0~g-VwAA$XYl}P#0u&Jw{kT+=hR=w0p(B+&S{t^Pi(_h<9jqs-VA`p+ z%;7vFwX_G|Xp!P9OEe5Il<$4$Rwe&Z3;mBa@%J+6doI6VLFLYQrC=*jJHmCZV{VTH za4ISkmE`jFx<Tf1V9qQ&?hknubr)f{nw5C2J5+y;ZVYa<g)j#L;^K#6?+?|rZzS4Q z3VOr#F&DT2Bo1`P1?4ORrc61blBhGR1p)yHUMz-<bhS2w3rf7=8;^LVjt?!x&j;C| z>zuIyvvUCcaXa6vM(ARS>B3e4RXG4I-Uhta*^RGYHXz6eKiq0N3xt~%8uXbtOFJzQ za5o++W0;j3_;1$I{84D~3qAia>LgOD2qu0sKt05D8jt{vT1@g#R_9v{!xO?+_$o%6 zC{1oX#YqX3d5ES9JWESfZRaxfhkI&2e1sjBAJ>6ep$}+XjJiXBX$Qs=T&D;di}d$3 zM~p%WlX=Xo?n;Nzb>{YT%Bp(D&3L4KNSCF$bD|I2^Cm9BzW+-_${quT!n**Yp?o`^ zvYmzYvbIm5p!kSQKrE|AT{ZGslQ{v=wr1n+@vpKUhs>09$VXR3yJwzq^iC4nw0(YR zA=sM0iosCWFDlw-BHw;}Ay)Qizv#dpxgc(;2Rl4a9KjYujUa8e#%R2PHk9K{0)6b3 zaMgXa->mqlp^=OC;4&}k^N_W3_))sM#98zqt8t*LK8;npz89F9V0*LenPlDk237Y7 zygw5yxo>DLP!(FceX5pI*Vvgwlf!W5@L*UaMHyXfJ~c<2@s>!T&jYU%a9P4)UD&*H z$NZF;*U-2aXi31SHjNe?RMmO0w^%{cs&Ug39oE=QW~e*=rLe)aA70M&lzb*bW1lEG zfFs*{<Mq3G5aG5mtJC8b6sTu+WfUc4J%H4^iNNi)@*T3Qtvc{O$KJfwaH#cH<6F#M zGkTC6JOO8mI;D3FrU11Ql!S&dbQ!Lzh6wqRYjxoD#N)zqVbe*D8yCIWk8l2HKmG@T zh|wcxnJ~UpO8-UKU=HI|E?q*i^1k#-6mxL$89XS(F3c61WkO;yDA+%`-G}!g<?2Ld z2SGD?L!ypaiolrXp2Ws4InBtYS~<qa*J597kf!0a)xrGPMv-&BBSIsdWqB1*yU^si zPQ6nqUzG3Wd7ogeW%e91tQ#Wx<cXy$5xc7^JA$T1E9KVRXXMH|#?(#qm^dif_<PnK zFE*i*`4Ep^l|%~3FNV=A9(dvRLl|w}>sNd!=cUz5vE4QF7Dqh({r4DBeeICD8>@Fw z;Xj*uuYcw-=krMU{hbx7-(L2jDFzLGUT;gXyF+*BuuWc>^;MZa`A}^r@{WVq4(&i~ z>uZ}-^C@NKN(GRzXQ_)XFv7Q}y(GRF62XbK?Af0zvMOS@?Dh-Nx8U~s>sr21#_JE^ z*Pg>?EUV#shHTb0g=Ytl24?Jps49DE*Hj2zk~_uDMjf-KO)Y#FDYfN9=4v|}0qTQ& z&5kCQ$_~rzivVPCB^-1442I>iQe~W|>51ax{6)gxk=NWs^MmYlXP2)#7pwe$5xmx< z2KQyK^cLfS_V_1mUc%(0v@;j@SKX$P-{yh%)Zm`ajCYKEC)q1fl|;Zfk<FaIeuev+ zn3+5}6+AM=-c7mjteCqlSjT>yS|&<(o9m#Wb_4(L1=j+6kZCS_32wkmXHa;uS;EH3 zy<@2Es;tW}9T2Om6y6ETg6{a>TtOv)VU^4Vn={)G{#X&_s-=tD%^m(tKow-xkkz4S zAE8|V+icf*R+qWm@Fd^G2huFkNl{6_ezadC$`fy+l0HE5{j=p{nwxc>#I#hh8+22H zTfmp7)NO~+Vab=`)mL5gLVD+A%96wstGZ4H;*G=%N(q>jIzIn^A&NB-KeZ+-c<hqw zfdT4UIB23iu1l@yny-tg>A}X$g2Y4y1}b=7LO9se<d((mYP39>R{B=4;xxyo7tRdp z3vLy1TaW6I73Z=ut!+HJAf}p(9x4Lx68X)(ih~p+jNU~dKuiz+brHCK@O2wWC<4yX zAHYV{ML!<fYki73K%585{8?oMZCk0aM7wgerCbRQw&;)U=Z}Zk6ETRN^a|w)LZuh- zesrAjXrcC6+FmSlfWt4@XFz!?e1R}J1uI#Ru%&mFwk0^_T1;K!t$G`9wWRW!-F<a| z=ukl!x+Y(;zx=kcfBng|e^(Z=Nynm>GIBhs4_*3+x})x;(a9;E6@4@k^d~NJVy!Qy zbf*LUo$LLLzB4R@b=QLo($1t~1S^)R8yQCPQ(Yjf%>jm|JNvkV-OLoV0v&o;c>vw( zOpnbNaY?|mtWR(g^q0L9do6PFs@69tI%79F7j5Z^jd-saC*&@Ou<kPAbahs_4%IK& z({fxHH19vTGBA7sH5>kWmgR3xHXZzKWBAIT0(K|ZscdzsUIGMi8Q~&=2A@YEA2(5z z6UxsYEa<0#E>8cC+G6J+0g{bG%IsN(L%hFwah=^?YtWxK&;4V_RV<9v&3VqHlVhYU zw@x(BOR*hq%FR3IBf~-GqL82yEnoydYa&zkptr`T@F)K)aR^T1g_YICiUpq4U>`Pp z9Oat#@8I}vQ<NWXwtXjTFJHAz@gE!iyrajzuw@1?!ME+$cjy7E!(w<R;~vJ$>(^h} zk0<`lKK#$${rBtR_a=V&^w{!N+uL!`RqW^06aju>iv{n#*KQvk^83F1J0Cn_{N(>i z$21~_9yzJH`{r3^%uDg3UDGuA2NC!Cesfm#hh+AVf1`st4EzP${HMa_H;D7&lekYH z3i(VKi{en;{vfj*mZSYpBuw{w_R!$<mP9JQC~opMQ|;kL^gllNTIeV5(>~pYdbo_l zF605-wahTla^6q>fNK8R_Tt~(w1oJ%yDvTVyBec}!UG6p|DPKC_owcE9O*xPAi?k_ z635E%9f`Z#{%0ia16Z>BLvh_-#FYMK)eryg0L!llfQ0W805`V(Jg@TqCjkEYBmTP$ z{9h*kf*jWduU?iE`L{M~5_Wh=Xtv4WGW=$vdfL1triQ6+i15!WFMnlyLDhpyz?Icr z%7{knxds3H6yNtA*M(;#_wJJ>CU1xoK~P|4)rUs@%C?TFT6^BW3ah$h{{WF6k>Ypg z{)hh>ef-4+IR7s9ugL#Ury-2+)*g$bfLdCE8NPKhvg2<zBA6n9LVJ^Zw3Rf&R`p7X z;6<;4&IUp0H=0+XGDkS-j958z4Q({SQo56dXZQo9%kc`yCpQ<U7NWeUsBWzUBZyeq z!UyFaH;FqO5|<7WSqb?&@LcrjhW%GVEG~BS&K~}ReE;N9-LH~n`1{ZVlJrAwGSb&h z>VQhn0C9=`=y|Y;7>ShlD<`HucnVD%#6z%n=NM@bv^VU$<>Qpn>WF1VvsiR>6`Ws! z>tSrpuaEm1-!d+R-!vd!W^P^vxQ*`ExF@OH)32ou?!<4$CV{9F)-rmd%bw`gNW6~K zeaW$4*(ON##}_=*P^s2Z!#Xc;slfN93IBiy{9_ab%**HnYZ429?+N2C_f$>B=-g~9 zzHOe+W`kxzc!z0V=Ex`Qc%H&7-UkdUh&T{=&qE@W2KOa8fWP{2yAZ5Sb83_ReP$PX z0q;G<6B3Jeyd=YF#Lt`s37ult0>sQ=<cK&wNil>O>c0H5RrSErYjFS7<6!>oS=%4r zS+`?+xVw2QM1f;i7i&f2N{w8o>68GG!LeS?QcCH&O7_FC&-)ea21hsv>{#_4VZjDg zE9c{#Qx$b^G!7o9ne(j8J_7s0FOSfcGzszf-Ul5YqhAPpNNj!C&*-EFt2ViFzf98= zbuzBGw2jT%5wFQv71(Wdi(X>hIabUkSZfe+C_gShdk^H(-kTxS>ussol3IJywlqg* zWOocDS5Zgk?ectePt;<See_*eI6G>(xtPdYw|9)gBIzvs{LvQQv4ZXP9K2$MiSMff z;c-6DYWX<%6t4ZU8NzWElE}u(4j0alTwS8&dY&S!Z3>(4qO|oWlrYb010<1Xd#e`B zh3ICZJG8wk@yM<}T18?@yX0a1P7Hj$3CJPR#a5h;`{xLb?CV94g^kgd<kTTQ-Ra<P zzAR`h{G4^v0nguOG`IF-LG1*x$Lr4Hpn)iDw#dJb7nNwVxmmqYxbhB}eS|ebE8%pw z=JMKTTweZF%{@WB66RcTXcA!KghF3S4G4rx-fJG&?|=X51EWllzi7fKu(Iey$B0=c zYcgeByi3w>Fxgj!IICv|TQg_@BQcFvCCH*QCf~G24J|oEPdfULt5&bxp>AGkvZCML z0$qcrxf&6Uh^cWBXECE!a3(M;VD;2kotluU(qe5r^N@9SbLAbK8tsD78FVvTPj3#^ zTaH=p8upb<jjdr7Fl?>3!zoGfV6Q03PZzFj&FJVqAmGo`KdZ&Rx}5el7wymwd0%5d z*HctY07GWcRH>@rRm$8z<z$3f@z~8_d==;H(swMYU~Cid3()mhX&^x7u#2b*XNPgZ z!kYAJVF*5j?SZGZ+i1A;I;PRMjK~YhUyNYkJ9cWd?QWjyu8UIYo_lAsX=bdqX6Kma zW-$PmTJSbBBK$y;8Mc;1O=tX41sH%?T7i^v<9i%C6KtT%?c1c~tyFJE?bI6=rJ~Q~ zvru6?TlB$u(G)j>X|ZMTjbH^O8-@0cdW~|Ue<<KQgFN};X)*3<_+;XHou9{cI<DuC zPt6aoM;{*@OzJ0ov6I};an$04`t5qQe!0wYoQEdT6eNRggLOW0Wfa*3Q+_C_4g$Gw zD*4G!?Uy*^Lyi6~w(Yq=dICH|t@lkG95^p+O3!30ZaN4TJLVvwQ|;>Um5D(Bp{+Yu zW$m5&vVO5PL<b7a3+Kbma*xh0iD$li<~xgdTJ-MGG>H3xu4!1uwgauIy?z1{8!#Tm z84VI4>!l5VtQB%SWT&xcF<jrtiBKV~$Y&VN-%PrT7~S983TsVQj~<B$NKI)(fOc}# zg}2;*Gbx|v4&Q9CL+lzL*;3U$j^B{%kek)1Nx@?h_+vW8G88T*3r67}#=8MD4%CEM zq=Fi(XCcaI?r_d|scXadE^!H6pYL^%=J1@G+s-&!2}zuLkjAZdJ5;#I%83}EoWDNG zsVDxi5>VFVdu6`*p^+yLM6Oulv~cPrtQ7820CFcp84@cyni%vfN6{VI+gFg4vr^<v z#}R$hf2g$VFqGxJM<@-H^;_(x_vQEkmNNB-{gkX`c3wYDo)sz&uJcje1N$Fe9lo5Z z%|nZwrrtr*R8sxKG*58_L!|6@JRaL+YUrI)2zPw;45(TUQ(eJe;MD#6NwOhuH7i9= z3U%b`)()BIaM@~Pg;l#11`<I?8ZktejoX?Xo+`<sByXHWJ4pM>+?6X}Ri|P)@$4(i z{JT!sYS_jtKDwO}`P$-WHJV5Z+@{^;j_p<^-3W^j`kE^}t%Vxc@X>C{OoWC-cv^f; z$ae+e>g9f~#XSsoKV^&?%E>l7a|n&`M)9)f!uV}@f6umlgh5s%NcdZd9_O#Brn}+B z((<#A`+CKZCpT}r+uLFPL~VX&GY{rAzUhj%KLt-8#013~hkjWetks_$*6;2*ND7sL z4C;4Ys^&o<9<Qz1d2VlZL$*LwBsB4Hc9>_p^5cieIW8vm$m&*y**=Ta!F2kQ@*EaT z?UVTAC595L-I+X<)l7Ois}Jj_Uk5Lzq8ICsDtHqhIdnxN_jB5bDizYy&cldiR;|^> zrx+)et(5aCyT)#DM2sf+escb6sRm@_KN$wHLnK;s65JM^(b-3ofX)8-yzk^>=sEH$ znu`3k^A5h(=AgX#vpmjk&+^X8S_bthftlZEaZVU8y!X!QEr7gV8WaOqjtIhS-XV|7 zJVSgcmFBqjlvWziy!|ty5$D}0zm!GwA8g=5F^O729_x|eG@TGQ->8e@TaWU~vTA}N zQ)+(LRn9>xQ#8*>7bAcGnYn;yk>IuuEit~fDnE`b4aJ`^eE`+-I>|}HXX4ZI*H>!f zy@&Bm3{#R~WeZ)eB3I3A&5_3v%svs#&!7{my-pgTQ<bKt#KoP@?yw$MFlp4(N!mdb z=4-1;*Jw;@adXQDq@x2$7Sj|xYP$rp1Ot>Vc9?CkeJe!mpStX?^J(7~vxte`BA2+F zwyh`UHzSeB5zz&L){mV=PYBxs>rVOGdmZwdclNV}?z7Uvr<=D71I2V?H2bEoECXJo z4UXQvg1o>Yyq2K2Dm#+jUlmH$y5(XHGn&SqADK-HN>Do6yQw@<y&uxOhyiLFU?=C_ ztqMgdX`W*iitT?CxTo&?+O>HCLQb94ndNU8@dM3gJchO3Yg^<42<?Chg+w|5P&zR! z;|$tgto9<m(afLHvb`m8Gdhs^x_F?NH0HmRRf~3e@wRs$@niU+MF2yiY3QE2dc7{p z=8*_O(%gF=@l_fN*WAU<IK#>%(_;yoq*c7Uu`h*fC_ot<#wL|yC{;GC{RS2sMguD5 zI-p{YWj3JFw4V>ueS%B+HE={`@Alf=m3IH~I3Is*f~TD;DVJLP#ToT5E!`B|khw8R z`US{ksMRGfX4wWZJ}O`M<jx`0rIR8%N&><B*g|Hhf%nL|WZIcyy3YaFGh*iGUYgK6 zD%nxR<L)0U*<Wm6swq2XR8?(+;=P&Q=FPER@2ePP-f=REvV6R2(f)CdroLjQUIvt0 zaMp3@_YcT1E-S<?cXYnpOxYFS)dD9X*<)LHQ_~G@kCBv|qvb!dN8F!6lT2}S55;^3 zW5cr4B*&i-+U81<jzmbNiia}n^X1``UU#=VSGGKpuB<Iy7?BZSPzs=)*C&x3kH0wT zXSqR?SpDWGf<32a<Rj@G>SEB~$4)ny;>1m%=lIQNQ&D5rthFJCW4Z*gJV`4HNh2}d zD{qaOZ$U9sgC@5i13V^xq<G)t#iTsOrhzrRe;oap#|ae+aJ;WXc-ACMca_USRckNB zuN<H1X!folp~41Dm_tbVR5^`yK$Rls#8{fyo_NEtog-jt@dT}|ZvQrA6Qa!_@1iH1 ztNDxx+ds{isAG|v{P4*F<jg7mUH>?h3TE8}>*3rAMyS;NGb!!!M?$W8*n4xK*dUCQ z^!)evbEH|27$TgQP3NzE^D?R^!iI{T77gs6KgGja@!ZLMi+|S%VX7hT6Itt)B{#+} zwPyp42sk1icPofiY9q`WTk@mL-TG*3b%xJX=O#6?*jCc7yhZ?Y&s>5Uiwrg5!!Q6+ z8GP#Z>7AYXCn~<&n0Q1TDY3J+m6FXX1;SlX?gssyFE5q}-m1wp8gOE%CmnR6^1lV> z)x9EaRt>4toCOreyXrocFIwQyEB#oXyz~+^58}x2!$G;&=OeG%w!vjx&Y-5wrzfty z&p^OVo7_iaPwLnMCK~{L=KY;lgW`T``51CQccNr_tl>NBWTX3!rq+xvEYl>h-rDzh zDcWpWk^+=JI}e`U)gOO@b23I=xjR7rHlD0s62TOlfV@V~>XR?^IBGuz@I>e-Mg{Lq zLuxB{sF&5ng1v{9`w4KZu39O2vR&0Zg*P?Gs_*^2Na9Vd<m~&Elr^<#Q331^>7*LR z$$IM*yxrBM8Nr1M*Fd@?9~Z30fN<yaP)H3bruL9eS>`VMD5haZ^qk!nUGAhiOC0T_ zhfHnUqDMn^)dIQ(7Wx<e_`u+JYK#UR)}~S)k98I^8nQ-RZ4%};uEQ1qjI};qfJaRK z$YF?oR{0mC56$MT=HQ%iLElF<!b%<Sc{f&=2gA)AEt~O-=9@hNrS{(>G~{C=oS1(} zL<`j|d{U!;>s{D}JjJs8LhZ$3!Q{I;uOpZH$yBvb*30P0<%2xD<*{Xy;j`kmEJ8ZE z9&w&I_tVgX%1tvT;V8n!I__hFjIXorOA>{<!X#?Eu~~4}Pf=6frYdHm;owws3obJ_ zr*I6!v0Dee3~k+XnbZ~72DnllL)$kf)P1oOrHjiCm$iTVII%<*BYvS2wqbMAsip>N z{@{|snzNk$gB35hn}~hY<yFtF2ceCq+*P}}yi7H<RE7gqt~tASWW4FI>%}2Iv(>4n z`_^97G1Ro9A8Nyg1C?LB`OhkfSOK!zn?kF(O?9}~_r49~ohK$&l+KWwWR`Y}+tVyw zzYKqVxjdp3(8RtXG=kstRm|k4P~lk%E6w{MJGh?Wz2^$WIdC9x&Ae&Nk=506CvX{l z=;Qw$thXafsuSIfhMEGvhNwZSgyjJk2m-R4MZ(j!L&?_ej7>id@-_qRc9R8e@14gH zgSohsnC=Ps*ihhL;wmE>Y(B&7-J`_oiyyz+jcFsDo2osOoRc-JAF6xj?3rNsg@zK} z=@<VjR)2brUvdpKH6-D3<&fzabO)Y*hJkx~$2Mu*jM>I{f`8@4qF1J;)u&*Bma(j8 z{}T^G{}Ww|W9S!QU%c*~eK6YR*~`YtS}lsU(i}{=f_8mLmOD>{m0O={<sT77DP3mZ zHs<g+a`tfbuJp745VsHEX%&mR3u6om&1QS36%;&8VG=q`OV0QcuK&|M|Hlh#OwXIF zWYLB_!ORVaKEGc6?tx3O2oAWHhFTj;e-Vm73i{a*q0{)@5xIRpN8~C2&S?y}Yk+}I z*xmt)B)GWNW(uH>eca?#Q|jn?&P!X8Yq1kK4Bcy}zjXEP<88_6Ipb{TEH%gEQu|$j zCyVA%k|xm;&S_CP=pea!%8a{MnR{ZZ;7Y=cmg=UaZ#IPI^h5^JFpV0%5<=hE#67WL zf`sM%6YPw_VPS@cWz#qwCW>Vz^ua7aa>ZoUkOO8r&<Wr$!Le?bop5X;=H!bqe+<v~ z4a4N1j^Nr$>Rs_~ro7QpG2k>T-#`PQdPDRlU}go%sZ`IpUf8l{gn*ntuI4H&p@N3U zRxZ&>qjZs`c72e$TfU+%AdflGV+>{TyD1*NEZ&gR1fhMhGhSgIPu&qC=jC*UtF7P; zN<%tF#~F{@QEsVcSWmyNdy4}RbRjg))YM5Lb-DEkyxko~R1Ahfe9Oxv;x+620^hLN z5v6wCm+%vU`~!ygCkY(Xy1owH9SHm}RwDdWR%q=bjT%qWJP49D)2#(V{9RiR3|kt7 zI6TB8flrte-rJSc6<MCaulW{8DJ3-Y4Y+-C+;|0^rQ6-x3r9D+>Iq<}KzB(<^e)Jq z&$jZ*wb6oP_<*sX#DyFJ&KvP=D36=;-NtxwLG<ksd^Tu2k0-n1W%AeM<O|M;gLjkP z>NUJOb47MY3;3s`0}kSH-Zih!v&=eaQwGoGi2dyG2>wOPpT3ji7kT>?Snx<sXt?Vk zEx=8YE;7Un_iU`U<1WJ+USHz^-7ZdG$Nlp*M{z>%6jv|(2-_8uhsN1XW~bP8m|4+| zBs~2sH1akrUa|@Vz&X|UhZ!!KWZ;zN48#RAt<;TDGU;5^QkAde3afbfYDRIh7*90H z*jFEz%&*UsSkf~xnvO!9+_?~|bZ@h3^I3&RpG_ExyV3QRhl$cDvGjbW<}LOvh>k}a zTAuGIt0hh&e%QxNohWgn1JiNpuK1-`KhKW>qvuB}KNZBp=Jblfm+v4Z>P-T<r+w#? zQjC=OjTSta{=kwwPek~ysH6(x0>!r}UnPrVUvV${kVM^AzH7I;BH6h-y~6AP4=e5H z){|P#VSK9EudFKaSeuC<q>j04v#_+;h_rsIf4JEd<x4u?PBOJ6v3+QDU+38n9}z?L zqxfOWM3*1)-a3*Sq*8y=Z{_p;PPeg|&~4_1ukLyi3a2VnWPXIHZ;MheX@PXj3WsJ3 z-pRI+LDcFV964_fzvV-fzx?joJh{oxC^Q4!(cT_fg8GuqF|bfV&R!Fi@*Xol|00yv zGAFc8cf8q}=MjeXMa~+A=8@g<F=h|+bxvw>luWt|DNm;pBm|wsf{tmrwuj)>O|o<^ zOnc!)Q}bY`CXP*wSsqh@ngYb49CWT??c@gy|HV7~X+(d0ffVwQV{rYnw%TnVC3SfD z<Tpe1Bk50mnW}UP#yEW%`~w7?PMuJXp?wGuVOIxM7)UEaDx$SF%Pi8%Y44nk@3>+d zXy?eSly2gIs}#!l4q{ll^E#^e*h&eT-+C)>$6&DBITkwbaiZwEI}_jK*QO<Vw<{PA zD{3)CzZg}6#&RW<;wE&u<T#CJ*B{R?u^d%@=ViQqAzs3Awp+qtmj{Q~>xJ;yM_1XN z^104(uT*O7Se77GEm8@cJtD1w&7570hBoV;<-BVM^e<e00i9nk`LXu7z>Xq$pu2zL z(|UK`v(U5a*AsJFE5jggQps0?n`x-Od_}aW<+zx%wZt>bJQfhh={m<(geLMT5e=Pw zaDQ~?sO+@Wt`k)T)sA#9r<EveS2t2SFKUDio&h;BLif%N0Y>&tdzQaxjxlASJ2@AH zDAj{NOQ94+w?;}JHiNC3)R8Zm@^~!1O~&p?Fw1LyMPkxxHN$YXltM{T`girM!ccf{ zUEQodXyfv*qau>M)6B?pq>PA)4aV#{%JPX&s~k=Sd0~`sSJ^JmJx>%#BD0i49V^zt zS&GejLei|9i9inhC}{T2(r90rD-31@vbX%8nIj)?dUx>8GnuND6C|q;;QR?-{CgbF zGbr$5pG`e@f^oLl>ZD*hPqT&ba(Ql>{VWIpis&yA&ZNIOzyaW1fX@aRo9Y8P9m%jH z0FG}X8c#5v9zOz_&jLId+%YSbv)i4M2495VX%aoYl#D-x3Vw5gGDgVdMSsGF+%u~B zHPWlyTF#^be_Z9)bXOEf(6B~yyU}ON+wav40`0fFMk*Git_Tvux(zZREc+<>I$59h z3X!rXrc)=6IJ-rz1@fT;37^eHiMJd&P1pqVbryG?Uc`72Nv#{`ohPHqiKjkE5bbWN zu5d*%$3dm#M6lNL`oo<snNVsWI3erQC5%+kY=!2c$oRcnwP>c@g}nKwiE;b%zP#o( zu&Dr&GQ=kjuw8&BduBOn@qQBKtk~89H*!(B?p%_0CV(+TZ;!uk+JfQrrdu^Ii(1>~ zlw$Y)vG<)pO=xSo+p-l!MMXiRi3L;yq<5myR3Io-KtOskL`vu(RuCyc5vifK&>~$* zh)Nei=%GhCBorZpKtjlkyLi5H?>>8bznMF8e|-NkOqjK@*4y9bdDoclw`5zDc&}_z zHo2UU#xr+cp?zNW{N?~#BVkJQ?8_Ko;0X@vuL6o=WbC6@myun8IhHSU9CVp24q&@i z6-mj-FQHW7FPCmHKbOIozhW344Wfw++Q;3eJDX~rihEA{&foQ<<<TMnZTSyM&B&y^ z|D5n`@<^4)+Ie`g*o`;E1}|tU)Ox2BZTG}OQlAI3`^Ob!UfiHx)p)LBV*eZO72pCm z7Oxn$SeEaTDLi8ocsNL627T{^N_SsNkOYtk49P<{23`d&OA_%n<O&C6&=NWBrEhbA zbx(US{+BMY@Io>?bN&DUq=hLRGx4tU)DKMEe-gvTj}y7S8L7ZKgu<`rzr8@pbo9q- zBNg}P2>+LfBwcBLj0pT1%Nh~bjQR;s7VcT}{+pdKzdrPD-Yv(m!G-&%%3dU@J|+3# zEB8F1{t#6cCe#(2!&p;_s2;wDGzxW!<NpZO!R=d<3b_Bm+S2&hUC|)X38~-Up+y&% z%x|;pum)8NVqN{EvHD0^b%~fJ-_ECJWWTas**-Wbq|gIvHjG#O>MEIXZFTe5y|1X? z32D;R%X(adHWA{Jbo2FWvFW?va!a2x{B&WnE{DkYmL1&}rB}gkORnmt*kIRh#aFbQ z_$7Oe%hq%F`ly-nntaNwIQ^PB!pR+Kty|mP2x_YNTNO_w6X3$a%!<}E`_Ux9AMSIW zZ5n_+eNOyR!)I+6oKlO8Im%h8mA*-x>bhHFTCrwFJ$xPD!%LO=b&s~3SR?3NaDrLP zJWZ&XQo}e%Lia74NGI6^keV~TJ64Qi<na2(a~NQYn`ZcXO7skCP}S<dwndhpvGt<~ za*w~Y=kD<K;Kbuvr>J?CU<dYSsSuSZ>dz-otq0)zjaJomLbP%2QSf^IEhb7F=iGek zX8rxW3jAnj7mkC!VJST77RNnk;)9Ln1$Rnls@tF39zLBZlX}FsAZ4Jqb!j<%YgdqY zih_z9C2+nM7@`AwdZs@Ve)0CPbcXWT^0*PxxZ=0HGN~KJS#x{q)L?18>W{yDPWYYw zoy}`qqoJ{_)1g*}Izv`A1FK{ZPn~i)W%}|IIQQYfGkebK&j@U1FlA6_5~{w!J9i#s z#+hx>HkVHmQCsy<na=ahC$>hsZ(t7GlW%9%9ZPs|d2HKPL$$ya^`r!@QfA!BX$&o0 z`!+CXW5v~<jk9aD48I~m$a*l_>#wl=?ZlOeVC$2lmpI3I3H^S7Q3zQEb4L6aSx)Uq za+K#ZuqftnYh9;~$UGuswu$f0>-!JA^$*bp^8A0XTN=y>)wU(>BaF^{HPdJD0GgGG zPYt+Pwm!J`V?xoc<M014)QUfykJqvJKlW28bw5diym@hJ4Oyi0N?ou&?QYV*2jbd> z^JVtis-CtwIh4kCm7rB(`T6@Z=o=cMvAK_oj?6ARGLybPJ_-2xn$xFekI16Trx*^0 zuUhK4XH)a-L_ALDbzSI={?<Czacd}&J{C~xK@vZ+m(~hA@?spp7r~#^t|NNXSM#z` z1z8pD!Cn#H@v@e-$(>Zewir~z<&qFC_e_6!m#)q0Pit4l8S^s3BG%zYcIM=l1@Cp_ zT#oqzM-HpWpM(aTpBmXP{XP?1k4WYQK-FfEnp&&IGY*?<aYE-R&@1k152qaP8(%G% zP_ykHV=5oH9~h-}=y>LbU~tA>yN!*lcZ(hGDnSr0_SsCWzm6|yJF%5_IwJ5skgaVa z?5%2rY#x#kx84g(-<+$yxR%PsY0RpVrx8$hDt37je^VV&m4+d#=rp9WVSJ|HK`Y)Z z3%=bwS8;7L`zEn(+)ced>69lqA}vPGs5&5MR28KtG+C<ys#urhNY(VzdX;?EHYm!@ zz0<j{Jo(BL*_&#b>U3g?4f*9y5PNoK-^5tv=ZfD!>})bS9HO(B$f01pi0Vs^Kcpg? z>Kh>Qj~sOFi%$wnm01JX_#FX4eP>4>sY$l^7OhrcbcL}S`ojGt^>AN!%Y-tIDP2Q4 zMEwEZgY)*Bdyh46M`DgBfF9Z(4fR>-^Ibcy2AC;p>R)b=*w=CN*vm`v`SJp+6e~=v z$IHo1^NGi0c#w*09*xhFgR=5$@ZpXXU<r`(s4d<|*)xqV_q1h*jI8*#cXm-;<>3@% zmOn``uE2jBYyniddjEzdJ*uZ^n%d3&N;13FBOp4+RX=Te4DN6<kf->~ii6=$a)$jw z!dJu66K*`BTCN;9A38766>d{uPdD&6`<p%YPw(x&O99@IC6u9n4lgN2SHOzf|8?%~ z|B?T*0%n5q?$YZ+M~2cmlq2tkzCvejo}Ex`ou5upmdr1nJyhQf|McaLAuy~K(MSBv z-?4YI+24_fvOj@?;7^L43xl-c9)=OoIv%~a+h^<OEQC%%<Y=-RR?}@qRHd}ldu~|! z?on?8xV;>_Wil|v!!Y#2*HR{g3+xW%VBxe&29qXAKCh&~u~ZhG+s|)ezu(<~_rriK zR=3jsVhTMqD9e1{gRv=JBhu&6{9wlG#b|_tvONZj(VQ+{bl<62bRW-m6#R~Vw~U}p zN1Yvl(9gdLJ@RSy(85sFgC)Qn6`wO)e%#&7ncu>iPQ@;8f7x6yFs2>10wle#NdO@T zVT+sf-#C7qcjxH}kf0<t7CX&8sEfpis+HDK>mVFwTTFbguT|rrc$qrBDO+6YnS~#n z%?C$YJCmY#01LAxiNj&1G9oBmf{lFbZ9$*ZF2(OO8jWr+G>&~c)pLBx&~D+`sRfn` zTBe<BhDN}F(4ds%otl*@4O3X8Ig4%d#u%fKsClNiIKO!C*$cxQ8#HB_BX;31WNZF= z$bM?~vps_Hnu!%))4&r=oL+l!4fh#0Ieg~FU2HyPkUB!UVB?CabOuHET@kbky2^OX z@h!2*#}0UWc7xkGT+c|{k6ht765p_L^r(Asbc~bMUSP_Bn$b6><a616RlLO2ev41x z(LooNvs?!v_5=+*@qMsb%zgMJOgG)cr6fX|%e?tqe$<iAd{Y{o1V$al@D^sa!q~yj z1I!mfsWoZ502KM$S8)BN`VEXqVbFt98qyBIDlH|e3F!HEf$YO=TQ`+DI>NE>-=qGM z1w;cL`1pmXyG&{MH@)!Sc>v?$Fl}8TKJ2ryyM`!5KOJ+rd2{yDuHN_kg(hF?i)2#8 zl)=IRZ84=q4y~Aq+E;=|d0}#Ot0RYnLqwkVBfs41n*VAy|CK7Rw1Jy_mz_9hiE*=R z`@srQ=_O|1epm-k?BaCwy>aQ(AFrRBas300D8RzZ)Cg5yJU5E|hvBqQta->|?LZCY zb-*<@vq4A=?fiJ4ui%#>{e)xV<~}2hT=Ni!-LYR75^BtC8LMq=gsk$#ls9~E_a$gS zks2WQphWP4MRRDe+UmUQyzqT-2y?s3`rDd2Q*L}N->+)MyYutc^^Ff%m0Y2>37?DE z_>5N%cv^ByDfLZ~zo`59Cpmmd^?W6z+ev)F`zA=)I_TUf%`LvVh(AJoalhTHxe^q_ z`Eu9(K00$7&cWcfz&Q{ud<kxq4<pIv6MBS?4dL&HwWFfd%ncVtVs8=LVVi2D7VngB z1<#L#e6WA{vO@@3duU<A^6cjnQ@O?FTz7B)kTC{7_ZXb+tED0i-Vy6dS^YW&3x3kW znSS|X=!lerCaGDge!sGB@Dne*&bzZS%F^bvuX(Cr7!V<<6#TeLRq@iXJhc}bYV_T0 zta(zFR!S<`tVve8yljK;Qtm|GJ>qdN7%=?tBYIBHsdjcsr}t9#K#M1$u8Mkl2L0m1 zz`}s$R>BgGLRggv$XCT*$6xwiFKhp0knto$Hw~YbeiMC2fie+z?-KdQREkyT(};H` z)?}u&J~{nJBftHDf)@G>6UP1%wvYin${Lod;rG7{ef@~nWFg{Tb6Wp~(6`1%-do1N zuO%Hi)VX`0{e0Y(r2YnSxa25$CGb;+?VlI+qZRyreyF$EyQbM1qc4P$Uo3jB^rI}o zJn{$BOZhw0>oD=Z38EE0yL*?Az8(+DoW3j#pC8)17`z)ne($?=HEmYm3t*E?1h^Y% zS^Je)MiqZxaME|2No9(&T|WEt;;Xn{g$vuI5@f?8qW3mxp7m4z)%5zVu-cCy2<H>W z9U>*gKXA0(ep!F0x!rG<(KXFXKcUMSnryFi&*bGDeWrCH@>!Hpt33gRSVpS#=j!{W zN~@|$x8|nq&nKE<3@s^&{i=`}qD4P8S?Mw~Z!1&0525EnJk%%j%PzKSzwAEx_?NwB z{^H}cUe0T+z3aM{j{WhKC(xK*ZU{VAvBFh+etRRpqfg3n>&48kAa^C}(b<**mevvi z?>ZgJcJAH~Z9YH?8G0s{q}6J86Fy`9UzZ7b!S)tdqe%rSUC)Q<#jU5Zo{$su1{>-v zDBji|2bhfwXI%-q30)egS*a0~S*h0Vk-mBTKkxGU-k+FgeO;pq;Ge54l|xozYrf_X zO-z*Y_x$*IiSXYy4let?ajXC4#<SVHja>XW7Rr`}%XzN1m=Xu}oi;SLDz<~G8I2uT z%1fjYy3|DzrVpMud*H{?e|fT^7rL^+318qK6h8{pn*%B;e`Cb{<054C?0T-k=3nPN z8+Pj;R8#C+ob^4cuGt)N6DT;ji$a;SS$HT%61-4uo16xYS9LCPd9Lze!@M~3ukZ0E z|0;9t_f?l2UtD_Ojm~qJUSn@(A0G9t|A2*a*3?_6TtQ$R8JW*bA~@F%m+c41MMmdF z3$$1KC;9nf-3+c<h(Bim{KGXm3O|l!RfO;}g;%qqm$@q<?g!iWUr$Qv<gVKCxPixq zhh~=z6~f+jz4CZkZ?lnx%{jJqqQ|b9>&MakjX3|uW9aJGdvxv0^lDA=$($2CjEr}$ z+a<0@ID7SOP09g)^R$4~_ug_z6!>v-Nnn?Jhd}v|%#D;A0ax%h{{H9utqA<GH!<ON znT-1`lQq`=J(>K!{=L_vSxWsZx`pIv5^r#m8g8y7j(J~~hSi%3AK6w&Cy|;OdWIej z0B$=sDO@L94eWC4W%EC{P;#IBAAZhX$@#yI+}UwAoBz=@Kg-U8h6fjd@3yzjaKGa& zuU-i9ND>tBhNAuMDJ5ZP+6RhGiOlmlatuE_Eu=4``p)eiY}CJ2_)8;()%`_?<AwmL z-OT2;(3pfPPxbcawWo6O2nl!c)bnB#H;0Z>nHlq9`pK!i(1yk9NqXm|FJ-lOiv6WQ z{D;MU=s{Y-fiu&rcW5ArqPmx|=s&5z>-UOZ{QC+=W3SD9s#(C``aT6xg^Qg>Oorc2 zV~n>(Megcs9;89~8cD@{AD2O~A8pfuDk*U_#GHQXPnA9A|EszEdkN|C{$2J1Vnl>5 zt)Kh}jk7>T=Vs;*lyn$1Hz|}h_x>C#x48#aMr_!`S>EjnN!fL+L(t`8H>hIu6R!+- zW~c5K)TL?zu0Kz-DDIc3^83^rovl+0{B%s84}JwQwO+e!BJQ-d0oV<d=x?V+7zgIg zjBr~cy}<cCSLhby8sXMRBf;Duhz0k;H2aF@mB`4`ucQ5~cps+VcfNg9!CGy(+p)W* zlSb#T{<HpG)&($jn<>yg2+uX$-5uoSy_LA?6%sjw&iCkYUFxx~%H<AVh2Pv9NBMVe zVfPc7>7IQ<pe)`EZPwA>yaWs^_Z#I&L=RO|c#rmxFBs~V9S0YfJ@)++jQ$0cz4Ge{ z#~-@%xX+S3rAB>EO{Jvm{M*y!Al<r+DPIaHbh*2q-ISZn6~><n=^K3IK^&WqRyFgF z8`!zPXXnzydQ$%L0j<cL#GLii{E7+pdlo`Z#Alq`))vqmE?04`<8QRs+(LBw*}b&$ zpZOHH_H89{SMIuw)1hpamJp4oIkUKXX@E*FstRA!Yhgw+6m2|FecQut<FW*vz;Be> zuureM-0QYct;6ejh=;q7e)(F`iocjS^z4+|qlfjhmLi^=AJYC8M)1jicA7>NzycYJ zsEf?xoxR<Ac}NR19F+IvE_Z%UQp<v3bH|9Tk;oM9x_fU<q^sO0(r^dlVSb=U`WQ%{ z3^IV0thfvev>>a1J!aESH`MzVUjhau_=X2iUwy*hpDUVMd1M&X-i<qyn4{+syNanT z;06wCz5wUUZ~^W{th_xg=C{Fhc)m}o-#AB)+&f~V<Px=vu=ndbC6K$%|3q!mu@N`C zoC53|8WTyO1g@_}iJ1qts~D@zfi;E#FzVsG<F<tC4>RY!t1*Q~U)Nw>^e2o*m4Ohv zFB=>dAb17(%}jsn8!Wd#Kh)efk{9V;q}%F6KTZB+@cOU;B)ho--1ro810Z|<Pg!75 z^!MKOuHs30n^1DA(sXG+d%cJq-1d&YtsWNDTlg3`{<2*kcUfEl;a#@%DcdN2Bui(X z)v?W8mycT|o4<U_ut5fs3@EjaY!=ORF)PO+7kaN#Mg&bUWbhHp_|BlQ8?7Y`<->G7 zgtM9@myHGmXR!Ha#Das@K{<03&XfZyTth`zQ|2P%%>KV~r|(fmTLGr7Ca>uvTt^+2 z-EmLlL&Ji*v!dqv6P(HMMVZBVcf%*kt7LIxE+>KfOUs%bUoQTBc~!4I0jP8B%w_ik z*$+*dz_ziRQI(8wWHU|kAvgu|dc4+DA|-uQzDUO?%VFegxTeQ&5{cj9EXQv)obcU- zL$ChKHJA&*39lE=eDRN7leSQJN9S;7H;t<LGdy~LIrpGNPfOc&ud<WhQ$!~}#Czx} z6gHeq#1~mUZB69uG;C@}mD$Bl52iOL6xANvI||x6np2b+@j+#={G@sx!^8H~v9(8M z^*O!E950`}a28o_NT`vSU3P_HHE^oq8v1CH&JWj2Q5|br!|>-SkrOTez+K^H)@frh zUtv~nl+zlQI#_4@LAF8g@6Ni5#-@NNNNQ@bTMjZtEAhXv!Y1ld2CPrddMwuIjk(c2 zB^VlyA!|Eq)R3mwN?*#|%l(Pxx@RRVyx1rEixieB$VTHKkwu`CDh2YL)jauJUyor@ z5a7K{VCRV0p`GP9Q7`qrclGjrUWVs*ig0VhpcP%dhwVX}l_F3Y%d_9o`{fsH{jT*} z>Zf<C>N8W1Aksp2dJ^$pPUNEX9-T`pXZtN$J>u{^ZY=(ZxY05?Iu{>Z1~FebLi_3) zPU)&yJ{{P9@9+ZjZ8=pP#9*-3*i8^W?$Ogm$h#y1>A6-)c|{)dZB<oY{cNtH_R=n~ z?xaP*ii_+T?cQ4*WN%x1CGGzH+qG7`s$Sf#MO*5xw}^SixDiNB`bL+er82T;!xb+m zPfDP3lZLLaOQY@fpaiHOh-zM>8uiQ0inYsV>20sQR;%104g-Shf4ZupY{%bE375t7 zz0;%(H2EqXX;>c=?S&MUESgJO=UVRM#ms5)<o^2j{F_`WncL{dorPXiOBo_St3aEs zYF@i3j{cTD-Ij60nVM~NpOz;l8zFB9_z-_C9Vf4SBhL7KdM{1DskxpqToaJsXmY{# zTw4&T`5W%ag{o|g7?h$uqkc9LkLfD*Wfsa00FcV2N-YY$;@$pE%*-RBX!URbAj%CT z)F89Dxj~x>nWHSuuCE4;&OQCG<3XEy?1eKKI<`MAU_lDR7#_<1FmKOTO5g9gvRqZZ znOik)Mjc9XsuoTe(4l3S@VDc-pI>h&aBm5(S=u2a@&;X-B%}a}@Mq)hvQ4*DiQ%V% zLvJgm_5$GXJbwE;#oq&bG*w>b7A~?`jxz5+<Pl3`+{QctQ4!!bV|~Ks$h<rq(%U4$ zpHWF+7Ceh!&YF(*7RIUhj;rv9@vG^I@VhKeC2H@%sm_jD+b=`Mj;OjUqY?40z?2Pg z%od}+D`Jq^&IA@(DOgQeZ|}E+4P6?dtM4mP2^pl^dWX+mc@U|FHoDNlR|E`A6zLwT zHA1^rT#n0v&7Q~X@XqQFM6SRr2!Jy95m{VjEpwBXu}EtQ5Y<1~7V_^g*1zYyL68IS zTNST7lx%xd^Mg8*YS&<<1Or(!yIEzg2R27-J4U=O31+tub_}S5b?1UDklM0J4m?eR z6PrBoF+{N;(Xw{EbJo;*<;_PWj8-QvZKb!o#I_3GX?STv1>9RHZESvSHho{R@|TX7 zL_;Yq@fh*MtniSx^Iesoa#AFB#e;#;h<aY%@vFvFwi>Tkk73f&FOowd9St%{IBC58 zjkV_H73NYT50uiJJwG(s3|~S5sn*(urLc8i<!MEpmiO#;khr*GUn;nS^gS?!+dEu7 zU+%aIRJ$8Zky#triS*Vlb@QW(b7Ol@ITU%Ms=3DuPtCHTc5CnLdiC%ztBO+0>)%3k zLH(a~d)()ztGDZ0WYhJP`$2>}0KZR0K<&u!_>f%H6BHE-j&ZBk6H|~xF;Pdi4vKzY zcXS*h^PNR&ufwL1SgN8F$mzMgO@+DQ++|C2qrU=4Q44n^DX&;)MYt?{WB3K2@9m3) z_9<Xdd?qvDk?s7+6v;&ncM~V69~sBByKI9VhVjw4wOlHJzBeA<uYw?f^^el6_cXhx zg_qw;5D0Q84#*vn;?!w5+~0w{Rm*(V9y+|^B0`xT7G8Raa1({ls2v=+%LU!rV>dio z_Up!{^NKDOUtFlK)kOf^@?unlEhs3L+f1a3$ibl!=0KAv@o7>|%NIF`9<L|<^m{uc zn}c?*vlIDO@)#v8c~EmNg6T|NN&ds5%W+na&}DwFphRsgTe<;bYO8bZ!hDzi+Y~cd z#np!;KAnDgW^3+U4f-R3wQDR?K@Tp6i3ov6*9zL#ZOp?QjY-^Ey6=K2`t|Dx+Dy+n z5iuPYl(r0vOrVQw>ED>u=%&P8mL8LuQrkde#jWrZZMabD{r!h=`mFI5+w>Wj$nx+` z)RBePwScVN_S9F_f-aLq)B@X&6X`GTEB8^%Qy!7zYBC8`qiR6^s9Fp)WWAuOSkiFU z`N^rj4WO;B@3y2JF>HEUM!|_7(vG-z3GA#8!(PzXy*h^c?ms2VA(ZpO6^mNjeP%O6 zi}L!=oVO#8CKmE_S@e~A_HyV>!+MKrF)dR#y8z>P$g=ksbm=OD4XKY9y0~WVl-b(c z$s2NFY;TUE^Ga3{WF^Z0Dc-CC<}ANracp%iecNBPAFl)InL`?v-NHxI+|bXGQ;kpt z#~0=3*@2@r#_Mwo7`k&3&2=`Jmj)Hh$z!E9OF#<mS13*ab!Q?xhM>`HORge+lp;^h zanzhWbGb|;M`rHys4Xn_0}L+gwtWNEJYMU779K5}IXO<%i+_&{b9XhDjC4jZczMoF z-<^{T2<~reGzZl#pMk(FntYw5%c~~2q{S6JU6F@ZRSGXv%Gm7wEqGD(w|#TN`X|!f znlr4S$+aDwy$+6Z3n8XUQF=6rQklrNV`!NNcaUl~#nyNW_v5V##=}-8+>0z%b<po2 z@Gm$;i)R5M+>#E~>yFI4nWJmoY8Lv%`FG?|0+bcE>|>|U>E|HJFP!EF8^54AuuswK zhU^=CSAThPR}4J*{%${bu`iAv-rpr1lCN(H_ULmrj#RcLpXRd956ZW)x++z|_C6Rd zJZ4&9Kn$!D7YKg37|kuDuP$=t&#XJ`*8_tdF<S?!hm%{qkb!66JQC<Pd=g7CB5TPh zO0Ppb%r|%kx|0>QEGepk-$nzY>!GtpA<`miMkw>_qSS<5zm6CC<Gs$LZf$+;yCi`W z6gmDP(a>*T+dzNE9Tj5bUCiSYaIWQReC5%dA-CmOZ$;mbV8~K*7IK-tC}7?NBy%=; z9186Dnx0L3@cc64^z+L|S}2>|;vnGRs2h2a?g$gV8K6Ohx3@44ogYWe>WM)g#BOXT zX>uRZiy9llh4@Z7HVw^cq~JD)Ur~p<x=PQ@L{bH<K`Ac7m9m=U{Z3%iz+$1urCW1Y z7QBH&spn$o0BPG0bzpnmIZWpHMoaP0`uaI$H*TjaH3R}QA0OFxA`sBDc-D9R)9HHw zAApMkS{xmW$l#u<^4^~=SmP-o!ZWv5KqJUdIcRZapl@$A3|#3Vg@O|XbDppl5?khC zJOtHAvviSzqEh-J%+dq?lLV9>MZa9K8MaEY(|AZt!d{I~dK3t$klVH?8xN%F@EfZc zIUT-yO9eb&LU5_C<(BU|dk1!I)GTO@lQumMcKe*i8FRKGDEC^EGe_~?r*JwSlk24y zYHPkFe<F@yW7GRw`;%7|@*B0>SX!<uuTmr;zcR3E{JB*_K~WfU)l{e48Q~iM_aCZ0 z##vNQU`pR;Gk#D}JKmQWEAO(=u=ANDuJudVDBFWk)nZadP1&4)b^6F$RpTYq)j7%R z<wR!R*lBy8`eKy71x{sE6eLGJF&4-~>^mfok*Ri*aHywq#E*SNLXv$&{zBRXW|<e1 zhpZQ+->a2Wf)0D7oiGO)=Gvzd4&a!fGBwN`t-!0Qj#dkP(kO4Brxh}oKILe&IU7>7 z#*kjlWITL6N`Ii5ba^a!sUpY|drscCcI};=SuUSjg#%WH*3bg#r;`YGhDuf(9)3*l z1bx0)vXxt}Pb75rD5nfKEo~n@MB3mhlx~LW7Lu{^;d+D3>lv>Yh)GzzPcc*jzP%$2 z!!@f0dVj-*x~xC8OT63K`*I_P=2*l9=S2?rh*j+OZ1o1kD|Zwkit&lO^#!j&3C2VL zk!w}!EHhFmKOI=Q#nig}yC+utSx+pV5bac;Xgv3{+z?VzP(GJCT)xB^8E=+t)_?}6 zfJwP~Fa@E>DN+Mhf|6#%f<`DAJ6p>57mKbBn0dc)tI}RXd{{n$RcaZzrF>?vdnn)` z^hJ~`&P>@9JFw8ZganMq+O|Fkm{epw5j9J^OHD)&=?S^wzIPsA?xFX`T$=r44{EUB z_(0?mJ7s4SJ3B*@x99v(fO_I6%*wkQ2P+sZmXg?rni_$^hJcj9aFNX$$EiX|9_D=( z_P$S$vb$Gb*I!e4R8601<T~dn7^76}_+B7z#+=`6d(6YmW_u4<AaNZQjW3Q&Ttm1Z zOCEkklOO2q03$EQo!1|{)eo?r<5m{-A%O`!v;GVBald*nrpT*+J^4^Qz$qDHoLn8! z`W;U%$9l_pCD2m1qZ@S@D05c9^rnqh*^7n_C?e$ps^8dA1hMsLF8m{erP<MfUWHC= zU#$Wblf}cP!6`$99-@FMv#@XFpR{lCs&z?g=?X*oro4c6^vOn5q<+xpX~Eu1cJT$b zy=p1(b6%FzXV`$N9u+u|DYcLREERktrIP8uxpqFW>zj2sy?>KdyK?e^K#`iGZ}yre z|9Z0$h^7;OL<?iP*KW=3y+<A*({l}(0pu%V1lYS}S(|r5*_Rj}*4B^T`rFRP26Q+2 zOXx!BN=h!6X?JUK9bq3%#D<+l5ffSjy7`R@5EYJ{D@3!z`mqiI!fkGaW|hyq%)=X? z6zRJ);2=N$)U2TQwh|>nM|L(joz^n0og)W(x8Y0=={K*mf6b+eKc2g;k<_yOLMN~z zV^O+?+abxsXJP2BU;-p~!(k5e85r^2>lsT=HzqSeG~H3iz_<S68FG?${L1|=<}#D~ zv)wxCdN>cyWX+~`<iv#M#{arSsyjpgu+FKIci&~>M*ETxRybVtQcsWbME<fKW4)s- zpfy2z(by^@5du~scxe{tWqh;!rVmY>Mh0tHcT5pvhFIzBD!^KibgESRTrMoez8Qov zs{#$Qc8t6WB8$&tmOtpUrvRN@0e#!)+(cln(^%kW4J-N`9ghwiJPtc|?0Y*vEj=YZ ztIPCfs(-9nb>~<v18|$7oYD)QL#H*=$R<x3R#{l{dF1El({hINHlbJ^C6n;vCpSyg zhe&1Y{^G0}jUMYkCL8wp=J5bb&S8c7tp6VH?My&O=3U~Kx@Qf}!*R<(PWugE+??S@ z*0?7V?9N-~8zl@)2hd;fdM{H75W((T%SH0+)QCHI4*QM)jbHw&B{A1hdFRxu%)65S zri5ix<Ez7q3hj$EjS6BX62Rq!rSMy-gg!VY1x(z}5XsdzZ#5n<19$U=`*eQjem8V) z#|r6hg*?Cp7J19w0lc^aU$HUGAqtXP_R-ZfvJ721c(uvkLxRl2B~i!tlE6vRd3(dq z`{{9WDd`(#8ZwnjHn<Zug(@RRNA)MnRk;&+(k&M_k`u+>9IU<g89r_bW%AONS7&!k zNeIr5Fe%z)#@C}vsqW^m84sn#MQ^W_QB#?A1h3NOBQIQFe!&)ca-j*+PnF+BU22_+ zS=~NvE>FNH`ZZVY?+)U%X7cr^mu2*~RF^x2X}zU%+k`c|C9Z3>#B_MAMqgvDlQ3?e zY#@DHD)+IJSg=bmEuJL3oIRy^;_r$t?<J1UOHCVyZFXOzEEAK5?~tPgPyyyTm$}_Q z%`_=gEXxg6C=>cpcMMVo*5&qBb{9~`(nuX`yTVLyWe~c){y@l#=(;VXVA$wf<SA7% z(;(mY8sQ^zLq+)>b8abt2cL+Qc!dcAceoL<erW*;kab{<|F;lP8G7}omuF>s&H+%Z z7tSu9JQUz*{Guj7eyqOKAP#%)T}f1D5gb8xhTcdyTP5G4g3`&~^azyj#MzmPJMQ@? zONI>3z?Dvl%9C$P?;+o=hc(|foUcnay#G40$sIiEkIRt5m&$=lZFc-DO=f_bTognZ zm(`)2N?jhwp^YNt3i+k65#oGGi%4T44^$G1x_5wX=KN*ljzx}3i6VLlC%E5yv?M9O zFSq?gVf#fBQHCdIY^@x>kVJu0NbSep0uAS@2QpXII*rNLiGyt`iG8Z>5JI}9JGfP~ zoMe+&2KcS83T;-Eyp@jniHgzK`5P&twI;km9jDJdzjg7d7v%M$3Jfzkc8MdDk#X4i z<6DEb`?>H4U+fh<#WGBdFc;8az%5kq6N?ypKrMKy{zD6m?vLHdb|WB;{<!ok&TlQk zTBkFH6LCg_9JCU|*)Mv$!YVFk?(|kmiZoDXE>6^8$dNZj7^TNhIChq+E$E)aTUaqo zZaVup>#6x$H|CsFZ?(RAn-A*{<b62e3E&>|U45Za&ERcl85dFfyd6TV0LZ);<;68r zs!}<=2J>cls(uL02}lY{E^2p-=O5zhjwa1Ellwk-A(SW@P?VDebh}wl_R**P%l$m7 zrRlI-x^}$Y@%quC_TcpzD_yd4ZlL44g{(c<*jfA3?ywkWkQxt8A{|0zNT<BG!C)M0 zoa0#$&=AF}Qm7Wk#kh*patiAk%D>XWPIpax`}P#;u?A3u-e>??02$ngoT*&q$8vmK zv@J2VVV#PVmg_s*J5l%kHtj2ly5^#py^Ofia|bnM?$N*z`AZ7}p;Gu|d4)KIT_Hx^ zKT7a@qlk3!p3F+Q=yeSpqHi$M(e3C}G3{2MNSWImNYuY4n>6Y;f(R7o4Ya6TeNcKZ zu-vT$$k;-F%xj6ejQ4F0SHs`GnDueLYFCeJ8{sl}@Op$-DsHfJDN-rau{z$rC&K>% z0Ecn1soXd2Kf9}8`L^NkLqfYMn1lzo2TpYc$~lZkeJL$;c>c^$jgS)XW&$4(V*9Pi zfdwz@6qL~eXIJEAx?7W@X$h33V5Y9uMbFP0**V)sDjWh*TRJe>8-1DYSMX=$S>s+v z?{d+|`UJB~+Ax*UQ#xWK34>hj#k3@Ox21_DLvHQRqD`PM-jVTmH#dWii3(4D>tScB z{H$!Vy2)bU>qX%!Up$#h+?cy@?u0yRjB#cqPs;xJ$9r7YTlK*MWjxBlgQPOX#5e9u zheM?u^yiExH-~iVsoFCfN#lLRxca_vbRZ-MW7yyFu;7l<u(xN1-UcHZ;b^+jJ7$SC zg!P%b9(}#*_?|zjn{?S-u+hnb=W7n7=FdoL=f~I>T7a5Cal;--Q#b`NeOyUlY2>Y# zxZLK1*8&5egh+moIb><uvgh(4RmjrO3dxKO!FW!)6s*^+IvV}OkRZy78Gjm&kqp{) zlM3Ej3aER&y}8`qQK{<6yYD_EoGU`{lggbeLA{kKsq^o0kBpxL&~Y&`g=A(f9){LD zCs=&=QlotAVfh;=y%EuK;bS$Ano0Q^Wx7}Hx7x{@y=>0i@(VDAdvRoJ$<^<;Ts(Jv za-fCNVtJI7FUMR^H>6oDsix%ud5tpU9J%vZZ&AAX*!p7lDDtLyb)f3YG=A55{E7^L z6n?JnIQQRmNI%wJ|CmI$@4a*r;w9%?JhYW)g7Pz>UI|iq&o)|liMm1@5QPm|l2dCe zo<&HB(ChAMN5;zlx#6cW)LIg&Pt)_6cSMV84e&(|vtG8o;}k7l>Qsd%Tq)JS6E;$5 zK#bjVnx6gART0tT{zs)xo!)y1+OT7nMjtc>8LsKQ+Gg$ySTU{aSKtDk?H7Xhry}Tr z-Sgx8eCf|Iv#ctQR($W3S-naq3ON#3I~1X2bfxFbQpE~rmaU+J&u0F>gQn;F20oIT zBU0#<m`i(5UBl&6?3i!w{qQ&MR|IDSG#D%)4}l3-3dEff*m11Wba{|=$D&GQNsoe6 z)zYOy$H*bxU7z+Rox@bR^;UKm&Use2q;4jaz^k~w*D_X~xxcvdgacY=|1+Txmk`|Y ziis*yB@*>z`#5e)CmFz(+3~=^qH9D&Mb#s8AH*$l$x&p{Ymc%`oXO}zALomDeClz0 zd%gQ2^;PmFnlU*6NMN<Mjro%ecnIL=`u?Ksz7dzE*MC+Xe%Xz^`7tU<3T6ZhJ5sK# zlbf8L5Z0ic>~UnOT!q?Jie=bo)d`9moJr07V&#Klm28GI&P{%?1X~!O!W~_<%6D@1 zI4r-h^_~B+DTKeDtQb;xAtbbW`@0FxjTUTN<d6^okzHL@5KO+KR@AJ1)Ckb)&D=s* zjEdKm{PYa+*_?y^^w#<k0LjGp%w8$Cf1s}__l5O%2wvY<a>-aVW_Ao1jtx^0$w9PE z>8pT{iG`A61cDUuN4Vq?lo;+*I_a@|U53z%2OM^IuJM+Z^&H};UDRaQiGN5vn%il& z{y9I)(HB51OU&F^TX7f+;Ubz9hvib<Yy=_qbfiCo1+2QLmMAWl`8^Mr+WmJ>jf-cW z>}qIn9vzhSHb^~(b-cGxp{<-RKR>a5r5_=RsE$&(u`dwv_8V;mPD&P7N{&p6F^xUK zlfBA)7~jT-(oY_YDIajd59kGKKcUO4Oss?O8Fi);YCdY85O%HBt}g!7K-ye-&DV7y zq9gEgbOI(%M&zlHTp`wNvCd}4SG+Hi)tB;8Ez<vR0wU1sc_2YVHuZ3AaBnJ!GMAWv z<>d+>WLSe&G?)EHJ}hA;1Z|GU2Q1kI3{!zg=OWCsIBU6|VZ@{t$+7y+2O6>LmpV5h zf3w>mPyq(cTLB(@Sq|AYAf_K^w}HJ+9W3Tp#lRBFulpYqWp$KC2seLgR&hK%nKQk0 zXSyTmCjc;5RyMF7TD{+Nh!z5fzOU?5mvg0UwB%!OH-06^oT1eL6m_OC;BLBL@`H-+ zrROfrrMC%B7VgI;?2jgH%?{RFuB!VK;K!&S+N5l6*SvH7R2F;sLFIcwMWsP56r5mP zZ}yN<XZCPr$(<ktv)|4?`s_!SVwr<)=U%htYRk2q4=+6uvtt0|9Ms~Ym&y5l0N{x) z0G8vwa!CmO2kuQJX8%UZDX*uv6JAf@7*1e<z<q!z8mpkls)DslB{0M@wGODuFq^-X zP%mYrRDxV?oWulgjQ4|}jVkh^lTObY1N7oEXHJSFCR1gd=I@DpQ81R7K8t&sdnBbD z15~^V*fh6TXxH~1f?M^5r$~;FzOjOKEGuZ=7G7<yg=M-dFD><3@?!8~i#Z#ns*gxu zN=yj3O^p5kcIuIFwxUhm`I22vF(iHRw{mP5^~`NRX?^vI=@bb}Iw2cjklH8ADWu&D z|E**Jmjuu4JRsr;%<)RuwNy)KVbchm-_Q?F6(#d0PSz0yfNXy!>w_X}-s0VjZE^FX z=`%`|F%k=R$LO<Jj~5P$eBESKLa<Jn;JK@+8(+Nn-NXk=*7hM}?JACo?6rjE9IM-0 zv9zYw2a^k0AUGT==I^XNTeh)?OkK!os5@QW8;U{pEiBW@=1;ayx_l31q}!XCRc_<z zq|7X_d`-4qXImGshf{p4L}%;L<(<$HmH1A|bFsoIvfBhBe{hMy&Co`07mSqN6tND9 z^J-_PEp>_x`TRQf`t#gj#w6<+viD!EPp2s%p-FHV=I4?cX*(|;0>HgvJUj=4Vk9@F zYKyxDF3nv5MO~FI$rxy<gM2so4QkfQN^$SDB8KX_-xAU*JEC`HuXZ+P8V7|oFD6wl zmoSQ5Sc#NlprISUyzLKl!0?&GPd4$=U;UgmybjQlVjmOsXCEV0q!X1a<p^T|A2K@& zHaQ{{JY&R@R-JDW7Tll9_=-H2k?n`iZ|i`&wRfQm40q6nXHb?3#)e$Nz83S4?n7dU za_2ox<N>~}GjHawdnvg#Lw#MmQ>Q(0mnTb(;m6X==J>$l6m?_0>O17q`2a@!%<0~* zf;-y6ckaIVQNK*f+q>-%rTnf0ypa0E&<!}llb{eA`dwKh)|+OOO%m;9)LV*n;N~`f z56>A2cTX{cSVQOZSsA#rBc-yNc1OqQJ~BZRDipZze4!>E=XM%^w&8ORPWH1I8f-jb z%gY5Ea5y|gBs-cATN)x;8|pqcqbor+3~`UUUom+*t6Q6?Pa*<_1+7>`+QnNb6tG+8 z0s$-3x%#Wt0*>>ER>%c%pOD8bRA$64bAyf29W5i{{X<oCZp+EgirzwGiwm6rp65Pb zr#xl{98+vdt}(>W&shdBEN;8{4-=hCVU`Uwi7n{IXIe{5u>qEzMA<gG8fA{&XPD&T z@g*!heySr$qm?ru7nH=@3hRLzWW*;^3sxDQP{!r=-qJQ1ThOx1vBAD5pYdtJTEaO_ zUJZNBHNTBm`H0?r4iWwS1O?RXlh0HpaG{BS^&4Y6@n>`ycZTmUB5>;EjuXHBosv02 z_TCPK_h6z_4H<O47>M4z9YRyBTXRudyKV&1vrP#mW<KXRwjN#}TOKN3WrB*87Vqj8 z1xWHb8z&wvud6N%SQ=e>C1AGx__Aq@a^cM9X`FO`)!o_ap0V!|=HgP_1Pl@TNzH<> z#Dp&v>xH5<r#xR+r38l9BwU(y>8MMux=2XbDV3;@m#umuXZkJ+G>898H!c}*o9#M_ zt=%Hqj@R|P;+cy0SY%_xg1zUTdX(j&OA~%kY1ut{n2{1^8+-LvTI9;W{5=*pg5352 z?mzn|eAtRUF8N$Vvj|@8*7P+s->Y>_^c8C`0v*`aO;Bl$ahD?@boO|WH_jO@uAIPZ zC&Q#|S^fr8N|5DAMQg+`Xnt*6bY7k^bV_utEF)6mJLr<Web43<H+b=9utf6V(b~j3 z-Z+WwM_$u;)cg@jR3)R@1f(RGGZn?^K9phYq7)@_ttT6kpX&_6kP`klbBs2G0*krh zWqMlHcTGW`*~f=#QZ8P{Dcx{Dqj%-`C+zz8_K9hh&k5=aMJvnk0TOKIhW3V1`b2!! z^o0f3(U63gfE*DZadlsfML|`;Qa8Fk)2&o>{Nx18{*A*b;Lp_IsI$QCojvZfd(HKM z)r!Urj*~_wncn-GUEZ<UuB>NrupG&^x_zORMXsbB*XFF$d?G<4uhhmVzwd+W^!~hW ztZ-~971bHGoszjeSlSk5*-*D$yaXoVX5~lD!2u>?N)_x84UspSUe53L*9HdEE03Fi zM#PET*rdXn^}p%f1f$bxA+(z@wZ^LK@=(eFb@s>BS{2c)Nzai*Te=j`FsWBB+<Sn^ zm3x^mGs;8juTa+ws5)ksoO;|Yi_cSYtv`KY*duPEzdw8b1w-rQZqiEpQsEKT+^O0M z`Iw7LeQGBo(ouH4<V#4f9u<D`;e?}xGGusjLja;YdxzhlQFYvn?3E--E5XGaAj60+ zop1*9^h)NIG-L@HbfYfz(d{Y2pp-D`!%bXp@L5XcO=`hoTJ6d3<8UKEuUDO-vwH_M z`~%DF+D)Ltvuu<ST+xAA<)H~Y!0bhU7q);l87)ABK3tQoc8gS$-B@$rkuARh(rTXj z<aqR7RldK-V>ZloUq}oZ!{klTE@OcY?c)L`yaS}$%l#PlDXT{YCEdDR)pm>^Fi=55 zE&pZQG}<+vd*Q84Om3n#k0-KN;PRL%RUCBiVR7twCk10IffFT{zrBywY7du!BkN<z zCsMk@Hu@7Q0%1FY9e@f|4b?!tgoor}Zpe;rajylk>fvZzdhJDmsH?RL*wy{QnhNSy z<83-GNI)7b&?5kn_qrRX%&Po`RF5OvW=ZSqymEdr{cw4(^9aeExI8pkEk?*qyO-r( z^<jxJHzqZUUF(>jB~ebMqc_lYkFK~v>x8+Uz>0Bkbi`{9@Nxc2467Ah!X?)Go-T$) z0#;;;LbN2^u~=@1B2+}%X?}?6tJ%>y`yI&#wf6hjHtba)9H?EknvkA9^e7j&B@gqk z@Y9~pYb$ed`P{{MyjJLg8pUzfkWRb1iRSPv)#6Z@$$YcK;Onrh+{|T@{tskXoWLAX zYOH*_#ZmkD^yKY8$Wjy~5wai~aCS*3pM{{Uyk<v}WrLnh_B93+&r#pGd1D%+NBVr< z3T$Iy`bVrA@)DO&3%$h`lm_^c%t1a^1PSl$s-fT;KkmG%Zf}r>SLNyuayIJ|^H#FV z{Hvp<ay4u9FC==5^ed4BYk7CU83!-}5x2B+nzPWt@i7-gJ8r$L;DxlMxwQ2HPamuT z0F6v7k*nk}{+feRg2-jZ(4s9&URT=3dqaFv85LCQzzJVIt6-!6ed`{-TaxqmM}85f z0qaCQQuUc)7@yjXQ(DcJ2;7{AK2i57E9cKTVBE71Yvuid_0-%0{(hvo>l<N9BirYi zq5^%7_K1w7SOEv#7Clq6+DZ%u_Z`XX-y+ZYGAzfF*>R`G4NX%6J{%#Z3?}1qYt?!p zcnLkyQA<hcfv%lwQ=~x^$)0fB!+r-*x86c4+qEL&M3s-q*z5^oX1&R1$@M)Vi1cEY zpjTMwtsTn%AAC2>s3k>Sr>r^oXaZ=5ZhVg+mXc?)L%V4iqTiF@rrqvbx*gZTRBM1e zod5#|k$e!F=8%)DTnNbkyv;8lSC5tqa3)+3Im-C_Mv~b#Y_Bv$K3ex!=7$yhR|@(g z5_ym+@>OEvND}Tg*vfazj~R4$1ySF5Wx=q3c+%H(n^ON(h%p?G>~tcv8J{E$JQ^C_ zijmF!lF;zV?EZ(q9e-VjKu(iRJxZ;!xxcb7afu`g8<q`dRYkV6KWwZ^-{{_ub5Frv zb$z#y_=4#_C&}2sc(uFHlEy{$&c-h5j?{IH)91+{8wXt$>ogPP@@&Q&umK1dQ8wzA z4yx$+f%PTOcAd@L5w|&b?<|{FjHoO0^mq+&D|c4BcQym0%&6y8${o6rT9UJKL>3fK zX~5{%mu~}O1r%}7kPBEc;&?i%7RGZw7qns#Fj#|8PpU_U4OC_Pff<7K95n0!AXW{2 z4(Xs@H{yn_b!)6<W;Jwt&X#cXAw}ZlU3)91C8Gv1qu-luJwS{~Z$(p9D+$Cf$YBfP z(38Ve_vc~-kb6kP@*<i;5!M18r9>Gu^nQyB94~Dc=ivQuJ<k1mPvurDE?p9bp+J@$ zo4)VmcZ?Bg<JEflDsiAUANyv`N;}F2uYdx~aPICks{vCy+^PEGHHQ<54||33yv7NL zAv{AIi`xS=Yt*g1>ef{47`<TKWs`G@HD~k&XROv>-sWc7{E%<VyJK;b00ulYkESk9 zh^*>2V;t$W+3!~wfL`wr`QqcN%0VAp*TmAz(Vmuh@vUUho%Tho@_GY@sB77$Y7d^o z@OzAZQZYRO7-DN4PI8*8I?N=#+(zR*0^*$(HfFuHf<(9OH@nE!{}8mlLS36^rFr=t z-W--xTAWws#9&}|oo4j}+=u;R{(yVw%Z(-nka4qpNpSPy>gq{wrQr^qN_n^0j{9GS zlf9m-&K{;RHkxY{i*nIXr)($u%7m(i6jUec4C?&Vy$&`R`nui0pU;)`YA&$76-7x{ zeboHTJt)wwF3bZYwp3B!E=F+?-*Jp=P-F7Du2`18@2`+Iui#}>r>d$T+keDBN6l?+ zX9A)nzqC@U{(;?Nag9YE<DU38`WUO7ET;ZovhFg2{?VQ0M`}=7vL%yzM@?}yHPB9$ z*BeKNiH=kj;X_8ieI2o4t5ZIsU%1-|$?pP4R}RnjXdSo=8X?9IP+bms744QK`FhoV zcc`q$_ss4mB~{}nmpw=H{fet6RE$+dPs??M-&xhF=^B4mgQ<US8$NXNk?ug`US5B@ zB?pA|LV|HjY}e{yKqp(TV`cPJ5X=qSaCnfgndC@D^cWB>ZKzw1M$<=RsJ~a#Vq96! z*&x@<|Ch`oDYi}9Jxekfp~u871hnSedwr<9Y6fVrHpFe%+Uxe2PYk6X*$p${u^BcN z6V@Fe3@2^3E`zr(FxANX=2@sEF0ps?5hIxNZ&WF@FD&*@Ym3rPfU*DEgqkzYuPsE| z&;qJ9hAWrv7L9RDemg1M%{uV(3pMoY+p!gKuP(7LSjQ1mgqqU(Wsq3FhnnouZsWeJ z!`?$=L}Faz2$#e*CEY@*W_RQc+y7SgNwH_0^m_hJw48p9-1Zl0$dVWq8p?aYEMwd< zn_~cttTKNufTax3EdrCm-TJ6cU`7U;*V8utAl@W=C!J0G59#cGNN4|lkk0-c5d8zZ z^PegJGSa`ZM#Y`JqyI7gj}_}rbz?z^{)Z|0e@DA6Kf|JkWqMOSfaf14Vrzn%ZJ~Wn zArnOw+)u>So98jjh^)%mV3Z&b6JFn4<IYj><VOkmAN=DlyMO(IQ>yWuQyTg+MMO4# zTgqV6X$wgpS~)03M0BNR7}HpD%IQaLbH{%7SjAVQvP_yAZ$BO{LMYJVt&m(Dh7<Zx zf;HNv689~qmCB7)>2nH2<&#`v$`gB$JF<EU0An|cgMgJ0B3qZd`IuPxjep$yk1wR% z`h&K4@n_+7=cdE@-E_+RpxLx?B!1E(*KK3=9{1FtAIkDdH%-GAg)}k?T?8A}QjS4M zpDjw27t0jCZ`->ETjOhhG@>So^C%c6Z4A-1o01YA6XfL*>OFpiW+HbP3j7FW|037; zQyG3=&DrJ;hHck(hHcbO1mG;xQlY?zWfiL0f}zxx@7i}0JHkb>P5#mSzxMjT+xU{( z**pcOEJKeiCQlsjQS$BUc4$~<xWwgKSNVidt-Tuj^Zhns&f>GH!wIk!7j%G6oU2;D z1#ByStao-<-MWaX-b(JTNiE;^19$O{MrH5s7eP57s(WAquCVYER^_KSMXu1d1ACN+ zb+@LxhXItH>!8Syxs`?Lz{?fRmJhmZa8i0IOM+P(1EkLW{cg0_IV824zklFuZNRPA z<)G!Uas!4&;~FQoci+qK&b}~c;Cy^BqR%9-f&@>ZbTGmx53i+p5j8XWMhXKN-um2; zG<Y|$I~YD7Uaun&bkV=vhT~5v5TgloK=OyMcWv(t64GD#gJxuWDyPLNq1Z0c0iU>~ zw6vy;P?0$8!B=4&)tdq5-E-%hNbTFyqJkEvg(Zh;<`|3hbdHI>1LoZ|&^DF@BBcxr zm#@0`Mk-KKz3&C0HkF`voz6nQr1aSSg%y0YhMhJQFBIrXv5n;^$eBwt@<qtoypM8r zT9a-rJw{iblOhW+(|iQCuluUiS=x!#7l0|Moe>mL1%x7nEi{i?Esm5g@9pz~8!?yn z--Z?8>4F0;qyY{}I8ilSGq}uJ-ZH31$kl?0QEELjERR`BaYV2CCxTf_r4F9DW0HT) z0wC)Kf*51&hp*!Hp*d*xc?DAn{7E}jc&6XmdLKVt#>A?HtXEr77-^C=B2Vh^eXo^j zmH);r$|P4E8`H9EnQv8P9;+j@bx48wFqYrraekb5?*Ix>^eP-UKoAH>tDY4T+gT6` zkXuj4%=G6<DimTqdh72<y8-iC-c|I_w`93Up?m!>aJq#0<X@Pef0WIjShnBD-4v(q z<ZiI`KTl^^c=}u=jzIk&yzY`)v&2iuZ2%gr02iuYI{o&M390wjb5fj0pGHKbg6de$ zYQz^w;sJ=755F6==NhcR3$DGwv9T{7n)y6y?l4EVN8GIsi0YPZ7tVJJIB*ylP-MBO zu4m@VedFE2C)3${-#irfzLI;Mqx(j0<G(mEWX{$L(+kDF;>L@1Io6r{Ns&RHn#yCi zCv&-t&Yz3q<h>)Q%`SZEljd;yp{KEYd%>1L+2SACqVyuGSI#q*Q@UNoSu;BfY5M)< z_+b`>#ah;E{3vuOc{Q>0{Fx9zHFZpqV&n8ceowNTnM>1+NFqmV1r+~@*ewhFTJOce z;4#Ogs!SqZ!Mwf^TssxD=if&c_@Zm{o(0>S*g%?EFsA9yb%~b1H}rLU?#gmsd^OCV zf%DZOS+^!`E8^7llA#_F|B8ouz9u%cafA8=;YVVy>iK@(#Evh}5G0D=xnhrHi!d$} z%1DqrE~`9#mu?5Ydjl0)LxXyu{ugUs9Tj!gwkrrqh%_i2D$*d*DJdu=U4w*zbi+_1 zUDDktLwBb%(nxoA4mC7q)JNrf=Y2o*S!XT(_&JLOzuEha>%R82@4NLBN~6U%vL&sN z?+ka8`2u4vO$OsH(wyeQ?;-YL3_BF(^iR?pA~NvNOsRTk=UvGu=s0og!G^V|xY)s$ z_s>3_l9jHS6_BWda_y<`nzn|=aq9<B)u0*YamB0|widFn)fENbGsL^B$y~#T^~<3| zgXa1Gg?f`|SDxai?T!KKDa+x9fRpL@w#eF+!0PGYRy0C|i&iP8F^Do6uTI9P)nUiX zH?bi=Flu4T<l^h)3p(@vbo=516z){L_uNq{Vye)X82MKUC`9HEOfayd=>53u!vkZj zlxTGC+VxApK3L1d2G0AZ9#xyG=9ueHZkwLS*Veq&70i*<+>aqSZ%I8(gPKWlfS*2` z9fjR^#%$vjBnf}ly2)ZaI$g_k?CwI)m+E#uBSuc?mPWAodd~q&<^nspe!Gk;Df-%C z!b0JITmF!nM5*4=#3aL!{GuVQv3NPse$Uo{^&rKvyJDR1d?d#Fu-((#n({d6#oZlf z`RQR4We7g#q%y%7a`R%CXcgFK?zI+%jXp%qZJS|r<dE6OSh2WKb=jPDzEo?>eb|@Y zYi+e-!Uf$ympFDjZ)HPM55l=jOVI1`5mn&V%x~}+VCOAIFSVF^Ld-M&3XQ8Q-rxh- z8V==i-;JGctCNej`!|beKOL<b7#}yit%Yt!a%DMY^bp90RJ4^2*~av)YxfS-ocEeh zsO+al@D)fnIK-!*dL{$~*$my{n;4Kh(WzMw>SlR$*m1k0k*DcH%q}C^xj*NNndf1> zpr6R(|IYOP5el5qeaGQF8-Lg{X6+I7o)If}U41q#i_%)@U9WWMy9p`+=3<FrPg0$- zGG{e@;$sco#e=ZIeY|($NtFH>%OV&1Fp6L7QLhGBl~W5E7xZ)pO(`rYevuZN`}2s2 zN|vcc+@v_4$q8Ue^bV(tG>;y1z6^IgZ=zf3@S>}1DH`<=FKK9f>!K~vrm6`emHSVK zNiXpUA8ybXq^k6iB{eVa_C`Sh)y6zBj9MwgRP2&MifG}W-?=c@tY9{6K=uk_N*j*L zU}@)<1(!4;O;A1X*qU4TqI>dP%-{8nPen>&%^EgmCUJO%qdqm!S;v*-E+f0(Su}F8 z(_!Ohf_f%Sh5+t7o3<^r53ojU>x)SZ_M72`);Yix^+V}0ijgbh(%C9(Yu|F)Puqdk zV~3`zA|n^G0WqqI`D%dEnuc-Nz+TR0yxnqAyJ-pkL+IbvOb2oZ$>8N}^EI@;U)PDI zN$U<X7lkY(VC7wVop`p3mKP`afY6s?p&?L{j!(1%QcDp2rYBDGx6`G0Cd_<5rfk$p zGtgJOpx)8u%ol6touzi&FAtds@{OFDuH%N^*J>_K!QZ>g)E_oK@TmI(n!yUz@5SKT z&8A>ZKdQwgM$zmUNSrgz4kGbz?i@~H)zs;{w;Zd}7xr$G!5zb%zCu-9yowW4_?Zz$ zo$3LV1Gd>L3Hp0-+IVTvEde)cTLK`RwzMi-x&?L9GKq`^>rZ!!KqE56*+A=Xl|Bys z#|MQw3dcS3CdA%CKkVEko&0qhjfzCJgBY#zrDm0h5AnkB<%fYHCd)2JtACG&O6qqG zD7s1KOUuSIqT68sXMd3w=isAAj7O{{J+Q{?onuU(B8F^<=`)5EK)$BNndClS-Y4+; zOPQ;5=RS~ygw=fM>(;$C)+({;xI^f<MO~Hcz$tCu0QqwC*$GT+9)@-mJD@>*Wk1CY z#qG8qG3P%v%dJcXSH%=1u)T4b30p$73;~m<Bq&ydYP4f_&j4*Rf6C8Y|B;{fVU$X9 zGq=^>o>1yyA|%M!_xpZ$EgA!o*j2bH%UiqB;GJ{err@<y4aGz;w%EHS;s1#b|LZ<) zp8dlj6@F!rQvZNJv<gK6ZUzj^vCq)SsO#W8wy%D+;<(j6Z?5;i#;Y84HLNUy9%yc` zvMvue->VJjseT)g9yg|`fsMNMgtkm)$S9umVoktPL)j~c>W1foAN5JD>wDsCyYNgU z<8Hky(*Zy{SILWElM#E3y?Dbo#0yB9?AZcGuK7aiW8%ho&1eb>{(L4_>u>AjvZa{G z9T}MZNSI2~?nR1r<jkS>qbNB0so{^U5j;z;M9F5t7LJmhKSBw<lNiRNmv0hZDqHRt zH5dH$G2y9g707+;>1^jz)uvcJIB`1Frb_Q^v=o=j_<7e`f4~V4KpqIgN~kcb)Eyzh zbuwSAeMUtyVjG30&M$k@o+v?aL_THOJ5!1s{O}<g<L-`wXyWQSsTq~GQZwSbw>b&P zIM~!o^2OO>u|Zv#QYs>V;n2UpiUO}SAAIL2Omkr!t@w!kpuY~RWtt9NnNug75i01! zuiv2DbTEG=OLpQ;+fA!aaIE%=VD=3asBl7oh~ARi;ht-7kJKPynCZGKOssTSuqL^6 zy7^*js#>WH%B|p3RVJ&^q+NTEH4YVQ5AE^5`MF<iu>E?T*H_iKo2klYnZ^|@F{~JC zKJn3Ja`~7=3bodQdM@O%KfB2tdWP2rCwjit9fz~DEJG9O!O<)Dp;?-v6=PLsiOFaz zUKx_>2rsWn5=$*x4Lh(LjQlkd)9;nDdjzfQI)k!TT8Wa`G@Vm?No&*fjAD!2-!%CL ztvsb%Jkc&^h=WvR4V)8DE>;dA0b5&Pc<jt!K4YRg{niCmEWx1R%CJ)DiF5+NyZj@P zJ~=QN4KwuPu#rCOK5DYdMxyzQB{Hz<vjqQft9uD{FvX$&Q@#g30q@V$^53)Q(GNT~ z^tEKJ{)3XaO2wVWMsH{RWaXXX5Ebz3d7g+~H1M)#uD@d^gD}xfrm4DAR`T#wyhY}e z3y%tY^=tu~e4H-+Jo(~h2W;~nnL7y)X|&K6a}%NU$<4ef5!BYW*X#dCS2t?bTZqLt zsouLIiPhOJlnA!^%bL_T)f*JG_JRf~+v_9myWVZ14Xq4~_KjHEj$F>_iW63;?fcNi ze;n*=YYa+#X)njW%0Gq);y8TgYF<sOw2}qN@*Sh_B2A9WJ5eKkD-~6xvrSv|*&v|k zIP%VBW}9eqsOjZtCQW)R0mfy?08F~p>r*JTD2~63Frj+_<}(#FT0j9+#c>NsYi#&r z*cd{>_F1_hm4+FPdY0q8Sw65Uw>%1>?JTCndcEIv1=g!H<k>*nKv^1WQc|2f>;?^+ zm$eg2sXEeFty-vC%Gc3|%ksk(|N930+)RND%I|(e`_+#~2>!&6p0y8r*JxM0Wq8~@ ztg`9KVd+uKZT;n}W=!D}(x;O)INx8f6zlQ9uuD+1nAYa-93rZ`n0M>ImP(qw^+k4? zhVlx-dr3<&xSxEEY7oqA-2JQ1nPp%Bit9vBx{Jt`XbA~;<Yyk!OLtkpEWzI1P`~q_ z)~r{ba?jftrkr$9(l?GMC+0Q{PDkT<Wvxa!qNC~fBDM3bLboTkbw@qDO<ub!X<Mg% zdh1qZVPzsAPVF%#vo=iAd2kBTm+TexT53AlvFFw=a}aAM^n-v<)2H3MAz&q2<8y#* z>4@gxr`-A>>FE$x>yj;TUQ`5kPV<Wwv?jx_>-OEZEmC{f1qt^fGDp0l6=GN?c}8%^ z7S~v{0wR>+^gE7a_PqcZ+}&&GN34*trL0vwDJqmo_Jr5^kW-1ncLT6i*k5~0#gtx+ zKKWG?{DEt!qJM{@)B0b}Te|*$z?r%uNMg#aU;N1^r2JD3fG{g>;LZM2ZU*;yjqg>T zHzoU8(fz<jr-2#*D-R92wVNy%YB(#otzd#~i!otqmZR@llF&;?2Nb_zTU9M{pst(_ zlJH8byJCmIe_IEyI$Fs90uVBJvTI8{Q)p4wV~}AQgNpn!$@Xc(M1)eK%B}q2;NiFq zmM7*k(lzE`w2Nb;ur?CC#|y3c@ky|%obq5-N+N6Idt-`(y)<F=+~a6Z62pKO%=zk6 z<5tXq0h&O;0F314^V(;c--@C%%)(Kne|iGF<fkw0zaST;!@{W@wGAKy?8BsgAq%`M zpGkPlpm-N)_NH0hMGb9hUTs4LUA2l0U!<T>a<)=Wz}tg6m(TGvuOfI-Ua4JduIC#n zEA1ceFHwC>erqB+Xv6({UTJ*%h$ukEgq>`QL1hJ#7xJPowZjlh@;5{sY;^9!6EfyK z8*Vt%6ecHE+aAYeue65-YZSI`N!Wp2$-e!W|1*uz6RK17V4D=_BC^XLEt7r#v!9Oe z(=&hBf`0CIEOMIur>*2-McNm9bWPOjgqs{5;8PB7*^5nFs%NvsqYs#i5oaE~)d19v z-LKQs);m5xOaXwivVm&(^|ea19THg8Aus*`pCcPBbf9KyTm50qHmXy@DF(Tt#QMJA zS}7TJ)6RWQ*rq42K6S@7W#v{wf9~tFzG0xC233-~l2$m}!IrP&oPCM)lbL)<3#VyC z#1}z5;<lleRes;$1iZ&2)oJaAa-V&fW~7(4-xW;5`Y8^uR%>9$7sf@DclRg_N9P6p zp4Esyw0G!zQ(En^ZgiO!QKl5KwN$Nv&CtEr;2fe+#rpbvudEFF0otOuAz0J5TD6-Y z9hm!~u}@o&*q=!6zS9LEVfrD6JSlrr*wlnRA~$j{XpV-zJ${lo&3t>`ihG`ncxcWP zM!DS$?{Q*OFdFO2U%SM-6$Cvkk|La$PBm#G%7QhhYI87VqdNOw!ZAjr+?I~FS0P9! z?fp|@w&tW;^u*_CO78hZui2>+dw{6?!Pky(y4&%zRri?(cqZ<c+Leu+qys?pxtDpH zcA6!)7N$Jpy;FuX*x;~7Ss3dJ^1+Y)CU9r}6S%3r2JX9m61Y*Z_a@8KL(hn_V$f{Y z!$4|rE7P`vi(|!4VV7GjQ;Ixk*A4jxzX`9J#CdJt;@77~BB0~h(t&AakLCc-fULZz zB;a;3pU;QYC5Oh8wQ~BtDCcc>u6Ig@3-->Ym7-8?9<f-7rwe7-*2DZZ?C>PjjbElj zxY2JF{o+0Pk?zU17mMO(HxrDt>VXNK?O#1W=&tTYCSPHX!@zPPD!uX_fLVoTZT}n5 zILlH`C|}K-EAM!bMflO(<A4sXQe-6Hxtyy-cmg>*bI)ZhJ6J6*CU*eLAOF#N^&&Zv z6H_19<RbuUVHaVO;)nbBy9_IIWnLH9biVAyZO{O<Ukfua9&oy<Qexyg^JGv{iG6#u z+?No;GH=G(4kXxHKb&V#8*rpz=joMKl4P@Xlq&;`$j7e4zUbbUbhAtM=iFLWTP}&M zxSS@mz0W7^mq(mya%ukjExsGHbiNLafMf2C^^n(cv7J_vUjNmd39gR>5ip-zl8)2J z^i6(9t@N(E%;-ek>69pxBbVCF6pLyvYRA_(pr8}?HYXzH|7chFU#pa_oa(VJww-b3 zX{RK1c?>8q8U$j!x=cKQ)}tkV>%qBHG*PtYu}m*VLA*g&Qu&V1^yMlbl$NAx|I2h| zwq}`99uG7o!+D!EvjR6g?T){<@SpLn{uOP@A=?Dz+x%-x#X(zsF;n&nhyJjx2%#k@ zoA6viCW9w$pCxtN&dym$=ITRoNN}`^=abmK`)DsRu`0#1vWJ%UOPCtic!<%^IEjRs zpW-K2d0kHy1R^S(2^fgcnH;UGwg*z=81KYDOl+qvzD&^=YUV4jt0!fXNRcwKOWStM zkj8*XE~|;AYu%)HFK-kxf4W*<2(0hZ$=`;suxJ}wE7l8Hjluy$YXSCa*p+%XZz}MI z`eea(`BlWC7eecp!2WpvmH3tDbj)yOC#xJ_ne3Fwh4Z0-u|zyz+`Fg(;b##0Erl)c zx}N-f5S8SI1z&^7iV;#*SUcef+s1R_1VYh6%Y5;cT&9O_^o1Y%fx4p{_Ip6R&*?F8 zC(^#%H9L=-{RNlE`tHCaSggE@U*?(ywWbDCH;@=5sJi=WL#3XY9@Q=1A<h<&0t}42 z$NK4bzw*fsu>2o#kIO~)4Z(z`E&;Sz<_iEQQhM>2krK*&Ind<ZP;c!c-15e-uw=~O zKS3Q;9z3PrE^?M+V#fQtxR%#q5(FgLn>cb|eIJ~!7GnC&OiL`!V(s<7oDM}Vd`=J9 zsIsG!y2mBr_iEor9szI={<q}#AHK||hhO&~>DwN7(M7=;XWKRXt1Wm%-b?@X_8xZH z>4=s1RVEUU0HQUI^%K{~+=2fX3fl$N5ub8~S1s?;%-R^M0TUxUNu3P!FGR<iel?!{ zz2$t}3|PA@vPE(1)ru4X_U%G+*y3+G{kz4d@!)wS79If&;+x2mjOBkPtaR<YZ@A23 zypB`E$%}tsWdO9bULRD5KkxxKt-s5?cp*FOBlveV1BaA$?X@8&u-B%WU;@Ric*<T( z8oo0B(=%UKk5B1j4WEs_{p<f@ZQDg|kW0r1wBZg_n4@bk!8&W3d!0=1uzy%z0fhRh zX-RbSc|ZSy3znj=zA^zF4}XTG|KKgZwM!SL_+RccZG88uJ4GV>8+U?<rZ9=auY1uo zhx*gUGcH)|@D83>Nq(WVc7o`oUhx<M=CbMjBvV$RgCq^?_9?XxCB+|9>#zfEN-mnn z|FQD_!4?0vMLV*F9r}Dh;L6Kr^>--e{OYF~6kRjRm0I%r&=~ni6uDQPqQZYbtirB& zi(1Ju{Ka|Gf7sN`4H(EyL$*?v^(TaySbnveYT>B*Zp)^>OpdUY@&2nB>i_Fi(ciAr z=m_kf{zoL3T7C^{;ceq{&8KKzir*)|^!bBJWw4;tFI)LHIqd)4vx0n>3?=kYpScLD z$z*kR1FUKL7M9i}TQ6GbY2`@Tykb<ylcy9|f507J?mbOOwLtz0ocsT#t=F1Vzv8=X ztlQTd`|w}oSjxqB!eUFm0{Z`ov;NDTeX5iC6>oOfZV!wZmA!EPcL8Vrs@RrcRsnbA z6x90;9_gt?{XIDHVEf0gQ8+$iUN;aC<QLaTU9}5J+$sHExyvOR1iP-l<veW>(#Lgu zE>mgu?3ssalD7<v<TGE{WMBQKkCBCu3V2ue4R?4Adt<uB9dd~U$ad^WSY{meyK_|P zSwGRS?7Sqp8Lq&9125hleMoCnOMzLP80&Mg5vcK)Scm`TtPg|7F0J=fj*WY)pVM7% zlSEe`kUFgpg)kjL##SfqAt4CHi$CY^!3Rq=?A@FJu8g|)MF}hbv~vQH{SU9ObS|>} zj#U_1^Fps$j)zC}elv9K`k=xJCfKCj1&q~<6oR2LKth7;{%3q+-^e!x>#S0_Iuoy= zw7KV*YRWL_d*sv41|8|tBF@Bzlsnm$rW~J4zo2R1u+RCNf2NxtNTPX@6*<+iEy?M^ zbl2b#%jjxc>CLS~YxvB^j@+cg>o;0FLd_>?Qi`2#vpxT3!a6>_i!PnxmbjI144E)t znZZru#yk%Dd!~6n6e#1kg*k7?%5=g8FsA%yzyklZ$`Pv|YcVNy)yrm^-V1&u7wx(d zxvog8!6WHpvo6V~Vx_})(+R@f{i$rf6K8*xTjXF6N*(pI`w4B&Ma^*|;RgQx#Qu!! z9<=uZ>(7<{lZP(YAb4}w3=LU-1GU|QnpkO9wwBH(tcL{P;X>mVFJDb{8WQ%;zkE|A z-Q8C7rZQ39ztl)>x|?dDHtp4i)V7%OD(PkFMF^|Gl3@FL<@3=iZov6!_Cln-8BM}y zOkmHUixXmKaJcO@J{=&1>_qwdgqO%WF7kA^S8VBiAi}9U-+BB#r$zYkdB0Im-pae_ zacRP<dlCN9H))`=0VbgZEAV9F6*@HIBRA{L(}~|+_R3pjXu7yEyD?vJ<L=ol0O4k< z^{dD{h+XExS9vV@Id`BQ9K*dQLYe~XWLK!GZwhFC4wm`-gIO?kQcxRtpR5RLmT~PH z-ks%8%0?W<&cQ*$IMueYk4!B#&02QGl&W!=FQJ(y%4KxW(5%7;<BsYR-I_>wU-JXy zP)+D(9uJ<nTLwiK0d%;Hn1#pY70Ty!pT3(-a7zcyUYvD>(f3*MvndZSFe?>N8hRun zUV~+^@}BQ_Ii!COS-~rHlP<MhmRaNjZKgO1LZuSF8O%`2A+~$aN;QA5*uzI{Z62_j z@U3!Nyj!aXuiU+jN-=^JaOg#$g&zHGy@Hus!;Con<0^JJe(A`2_4)u@?%z#XzrI5F zJa8yLB6wm2`PA`YhrxXlzLOqFNYP8l+SW{KBQ+E`BQYY+5w?_;=nkvIn7}uk7W|n6 zhGXe4J8E?h|9DR<koCkmu}kSid*~NKjMK9GK*lRYZ&vOQ=F__V)uFnFX3I#vSC@DR z>LrMpoVNtAJOfDG>iDIeO$lS#%v%~c(~x%B>Z6KJd|b$@<Hwos+-aVtKV-7rlPRgE zK=w(QqNhbEu-n%X%MSj~cI1W|!elnsy*gM(pJz0F!-vD|3uwE=QxByOmJbg|Sc$e; zszw&T1UkozqDjW_a-)C>1XE(ToTY+NgT&Uda7L}(k>G@8)1lU8^6vhJCr@T4Zq#wS z@|mBfJeKRH77DdCpUJ?hC~K&nMZkJrq@%p|Wo7ippCIN#@>sOK%q6A-L;YPL7CE!! z;`-T<0n}hVXRM+;>1Wy}&Rx~E&+OXl>LGi8X<&*hmuTQIxdG^e1dkttk!lI@-6mG^ zW5yJKL?}cl6bP}cKPS|?(|DnCc~f%Z(X8;AGtc1+s5MIAWOe*K)gFfc^Y>YKGH%Gv zlW)lsnsQdn)Cp_#qr+M$`6@QbRk5Nw?Kp{37rzYL&mdrv-seUy!5>lDY%L&>3rgTd zcH-@_<k=sYj;YTfA}w_1;aj%0x&6v~q$GLOru2~B4C~FukH=O!)yid!C%m(f;3-EQ z(KhEOzI3W_cHDgfgxxU*Q`imONTL}kf0k3N=D?WQgTf|dy3;JphRa7ojgWbI<vfs^ zoxY|iqp<*9k;%3@?K(VF2V&~YGsvri;{X}>fm^Uq&D|TbiE5f(>R!BJwi*mHQ&}Rf zIXw^Pvn=Vvn31IZREYB6&7|)piLne&pYZayOS8pGB6k)9<{R@_+TfSp#$a<g<QI3` zSV|f}SMxP33bixcFILt(v!UzUvQm^zl#n*{oTye0(1iqB&&SFgm!!e>=3fz{Te6$3 zPQsUKLY*Gmy2Q5@IiI%WZ`&-F=15@qsKgJcRlVH;q7_quY>m`yBX2ri%682_Ors#P zX6jQ9;C5>FINs(WK_G;Tro$CFk3<ioh1SEBk{XugJ73jIq!6nG)u*i6N{*1b1x@GR z`6}iKLWbOexYzB~txw*h^oTunw1Z>2Ur*hO4m#m^DgOS)0OLP+Fu=R!j!AtmcjSEk z@~1maV1>#<_r^s_IOL+Y<@O7WRJN%Ubm%9-V2RI;F%xHDweV5>cIb%#GH~1J6j#?a z!@t9=8Y12#rO$|fyIz`4c3TBFC!(`;Yp#;YBD+}`at4TV%ekLFq3}<RYH%dG@c_x+ z*M3Wl6<ejaJcHqr*qMH$2U_;Fpqw7+ocfIk{0sa?bRnHBUm%m!fho1jZ1d`z>F95_ z{1+DrP1<WvEKQ9)Jv}=<UU9r90bz9{?+!iSz0WumZRCwMyQHwA)iI$pC*20ITgk-C zprq|6c@;KNsQWyb)@&Eoisb0tEc<lUwjUJ+uzra{Sry$lmP^y@^O560y@Nu9UUHi4 zw)#1P8Xb;Rr5!~e>b<J(t7~u%j(U&@85mM%Ht;3sMp=>F!#vW;$BnIRJT!Yd6+xov zd;3qX_65}1<$wsc1KD?<_Ci<#{cB1&=s5Xc6B!(PHgcrW?nL{3L_ZL65(=d8NZPbl zlUYs#CyPtx^%w6kzY#DP8ZEl8vpW{fLH2t{fF2#d&)-LT58O*N(AwKl1W7(wIjSLg z`4|Z_;;o;*CB_vL0L&&8PArQQQ!led05*wfo13w~na?lwIHvinnVZk)PO?cmhkC!} zlt$ldb7#PI1M_~If<B0NQ(CC@gy6Q)yjW8h{|-gF<`v6svmr~LN^J22G;7jrJ+WO5 zzdrHw=7Ax(jYEb-eB;hreDXc&Fz=bk0l2Gt$wf6$MNa1m1eHK%_>=TSXck@MyN}1! z*#Q^GSfBg`Oq+x@0vk+ghNd+F`Q0Y-By|S@p2`$q*Wcri<cy}p^_ah~!GJPwA5gEC zRJ}TrI)guH5~G|cENniR-C1R0xt>0L`^@^`h6m4GmjIe9Sz|-_RUmsJ(X(_rmGpGL z!XQ_fv5$C`1Ms(**0I!`hx3IZB^7Vcz1;aelA6i|$|Mz(s-x#kkw^2zFL}!M;Y!dM zB52xRvm;y8TEIc(8)OIiq^bucPTTQO1r%0a0%~tO;Ysl=&ueB;3(%SE6-~87HEf7b zHe#*hCmE;nimN|bqTmQ~{xDT-le+4L6(?oj!N-31%qv~-Z0YemmOJ}yjYNjfg~Svc z-a@jYmm247-L-v!aqV&?=9IoIpV_q&4IwkgM#oJQkyD{>NK?U*T$#W5bPQi-27 zChD3sTb_xGl$dxY#51%(U)&`(?paCRv-dA}_m)OgwbGOpvX_p9<5%qBsaGa!m@UNN z(bl3}ju^2Go>HzUG<ZtqKh)sgS@=;AIx97$D8E)WQmCzW^PH#JPgwvDAb^wz8Kx-S zO%XKZ@d(m8*U^^MjTu5T_mQ(JtNWmIWpm3(6b<t{_gM-(LwA(7E#BR`3>K(i+YJMV z8!f!I=Z@e;lvgki8J*_djCQ;K6R^H{6~<Kzo)0##l|eQEgaL43$ESA(3&*t&%<u)b z&G2-b>{MV7s(<<BT~ws#`$WeJ`89nUFFE;2DkH{2dV$12A8JM-QoLl^Z+GyudRoJ} zdpCiDCogZW#*CrT*UO9OTmrK+_6^V-SH-*PN+p?UHfN=33XX{7*-n@}r)+Mz%5{G+ zzGt%_grP~_K#P^{c=NGqdWipgZ|7h;vSP3udFyUpo%Q&a8f(M8w$mo6ypWV`yE$v~ zTheln?yxc9HRBDfrKrm}Nw`JsCvhCqD~Gs(90NM9c5z5InmZ<+%?l@(_9RUYY4lUo za^{@u(W*5MJXB4I5_a5&;C0DL)f`M*W%ky%(rwtiVm4(|y`lr)%sg)@zS6XtW|))! z2{Qz2XhP03ZAI%vld}>@kFgA=aY+RuM}*2t9<2^i!1eN-;-5b{$n>7rKDO;z#TieZ z-M{%zxp)O3Pk#np=u(o%@<CoIDUm?AM=~15=FU(@pzN+!eEXe*JOdHphEtJj8Pi$i z1APU;H`<gg3EGr!^$^7uP!zr~?GZ0G5s}fuX@Da`E2#4WU&Ti;gWa=_Df)%S)fIgx zxJru`w~F78YA+QNnm_tTWwL>NTGoHH%?CYq<DEnQi%N^kh2Z6TK@u+kG2EeyGFHK_ zbwt1;xf(h-xqNd2;)$~62Sc^Lue2_6kb%A}nOx=6;B{rc(=X%1Z3#Eqn9LO6-lA7v zVW4J^Y#+(x$clEXo^&#Q6thgG8S_l^Mzq%Sd14K>*nqF6-Tr}ojv!N;>g0S@Y7h5J zG39J4IsW5CndzbN>-^3Flj6y26`RNRrM=_VxlxDwRPIr9l>6?T;%b8z8^)zR7x~+L z5vFs@z_wS7$=FN1$G&jWNG>)r(%okbj?V5(xX+=}n^ap$DVgpSB6mZGsGYG1jjCVy z>B+YC0YDKCb5DL7pZkq;bAo77p_WbnhkpjqiIXS!)kZrDZovHyoK%glxo41Pg`xZj z>t|C`%>b1nsfB3ev+bMu4--U|Oc^t<{Sc_UMf@h*dQq%uP2up~dPtePT4-u{`A;pE zbPLOy4lAGMnCp=wW^rEnVPC=2VFfQYMHJd)Ea^ErQ5+aZ@-UcFt^}Ag0}QwV=B(T$ zgkL)LrdWh<OGnIOF*DK=Sz<4{w}saL7i`3jB^=RV5@AS=Dq{pVF-lqrt%nLdFVT&B zfD-I1*yW~)yZ`!ybg_aFMG)b%@FxTF)^#N_Lp5?m>Ir|XTD|#%kzw~{@rSYI3!hXP zOvC!(FUk``cnPyDs}ZtyXrext13Rd>8z;EAQSCCBYN+2kiuIhB6%^@iQN+EA<HZN{ zY&{Tm%rbj0xX~`1c(L=i4lM!27-crDTrbINgU+fTKr3t6hbJ?dTG_#H;WhqMkrrcX z4!YBRJ0G+gCzg2g6pOI=5lY14_3+A(r1<0MerdYet$+Z*Ssfps)NHcmc8g_W$PDIQ znljKnKsSscDz_}kCp5LnFEsVMRgG8TbGyJ4y3Om}5k&@zkKWkvifU9`$b8sUpG~9M z&qP|B&x_iGjZl<)&NY&n6K`JzlMGP&$4RXJ<-?53Yvpy5P;d3gqRf-OuCIFog1|;# z<z2S!>7j8>3<|$+crUhvh7;3dEx%oAzVIcEu^jgFfcj^fisy*SNB8}gwBh7+;TG}R zvFlnoQZn+OOQ;ahEM<&RO*-$G$HK&y6G~^1!?f5}B-_28izKWFp^2*lWqiIU7G`=0 z3<tqb-=gC}*<0zC6xfGmqP3C=)ru4W+p2CSy?zc4%0Kmd&V@KZ^v?Vn>$My6u5t<T z?Y65|RL@H!;R8VD$W`Zc!qjlB=XAu-D>dUnY+Gb|-aX_1d6iv!pl2TifI0w$KNM$g z6cs_I+0c)*cDH24bXMrR=tV%SUAKMEnl|PVQla+~iZ1b%FXj8e3~W<2zEwH;g&5{w z<qYb8C7)(BXTU$uLPid`9aOH7P`@WvbL=%UpNwk}fbElyx&IWOZhA6AAq<$L-@e1M z;*)zK_<*5@3&J6NG^|wq*tD0-&>?yxIhbSZoz7|+*llB<+2oW)<bXo$$;Zo6ZG(oz z;uF6C9kyj&SIMQwRISxrJY~y^1WqV|^lS43i8rNbaUXDyZXgd=1}6IMgl^74eQK0= zwr0)_P}|FJ7zJ?-u)Q8XFUv{~@zZivdjrTH_WQs~EnyzvY2kd97(pxbr3;Vh-7UV> z5(fSju8*<`b{1Y3S>7z3^Hq!GXmyuZSC9#iZ?Q#+`jM^NjZP9L{Ng6?0fOP6p=&P7 zgby0(C3?P}X_iAXyMk~OB^x>hJk7~@NN{yfn_5jOc<U82Q>~C)jl#U{7wdWMa{Tqt z83jeF#S0Qg^QzGTZLu^TK<I8yDm&+V@9nGSxAlL`O^1z6|J}bqdDw7X4g{{O4AIiu zx#X28M~lbN^KYVK?EU37M$2&0M*}$S<Qoh7v4pSjv66O1EIGeo9WIiD!MhL85DDf0 z62rX>zG!}0L6XYU!jpJZa!=)?D3h&WqC?-!d3t>1hQd{9`LXG-QHK4Qx}h(9?~0k{ zmKpR30Ha{rt-e;yiZ@wBZnjJU3^l$*?~51gHth`%az28X^WA76sao^$<POiq@AL3E zu;U49)G886cT2QcN5VO@1PoD@5NFGssr#4SB!mYCYE9-J>8OPxf)o<T^**Dvi{D0R z_Tkx2MFP4m305q4qoV@PcRw6CAGX-6YnNxu)11(GdIT`fvHYmj7)0QML4++G4)S46 zZUTbDPcs;$2nzGQ#8)h|zUy#xxZ2OqzY5UY-7mrL-~dUK$u7I3Ea^MG+$XBvU*zB> z&0F5Of8Mo`<M|PT+bUG<F|WL9FCXvwEy6^Rx`(Rlfaz219D<g2`+-<GxC*}5%6a%y z1sn|IX?8D=s09=0!3E~ak0+ru`%jbY#v^xXjYhN&&Vk7b5eh8-nB7he{n;ZCnw~E* zQms)P@`;N&Z4)zq;EXUxpbxg5dpkIWYVT#-D6(xib}W(OuC$ff@teh4w`gm7(RaH9 z3aOjdEFii2b^ADS@)uGen;%y-`2xE$H1MWXt?{uM7aB|*3;c-BwB|lk_mvuB3k7=6 z?oyL%C;GECbW>C8ly{W-&s}s}#?<@u-UV5L*B<_tIC-76{rQ|Bel2(k34RTpyUf3W zC-uuhV)J`|32!_-ngJ&Rz6koxi!_6rH?eyreD`-AhHDe?4lj;4JptLc^Jve>**cNO z@!o*NPMW*ht+Axx<oyhxqV$7V3ZD2R&Ua!5v4JoB8lOCxkN0p3kN3^)ud8rMnn$fE zUl9s(wj|K&iF+2?Q`?{X&J}2$SnFmHh8XAngn6g_cB+dq58<K2OMx}+-q}kL?!L5r zh0(a7JII2Lp|s8Hgei(S{(|I-YY$-Eso8PJ4KJw0N@^>%bU8((K%^oHc<$nWU_CP= z%Xth~MC=lluGuYFK-*E$<N>1qC7SbwE`~I+x1d_etE)+kcmDCsK^*wK8K3~JDmw`i zX11QnK6WSLvawF2yUSw;t5$+yt`?b!$g)iO@_hV?T|8Cn_SzKw+5OE+KhfH*4H%Eu z@`3-7fZe9<Rb0_p&0XUz?D^x!xSrPxHkx<BwW}yD7~AsvcT&1!QWbMmIZgwu?Vfiv z5i6z6&08fCl^}6-dbB&;TiyUmqd+>Iyr_ZS+3Hn;(wvq&7l34~RT!7qNQ>Rhc`2+; z)k0<SJRDf7f%SB;c!B~~uaL6U@aj$M@S1Ra4cmlyNV>+`r~yKgt@YE3{CuH$(JNQz z%%oRCuTn*;3gX&L_aJaS#$LNAv6vN)U_zl_JIlCNP}}`{=WK6&=Eu~Rw~w5)w>r#j z=^2y?&5&ejyLq9wO9_^8(YDpjowe*b8@H|m)!!ul%aSzYT1jg3tt1uuRg%(sP?u5O zZTdYY-V19LxBV0l#*Sl)$6;H_=8x^r5TYfkJXF-K&2G9yH5Y8%tMy*_rIKO^7VJ_A zwt3hK6!9+9*~P}}RaB1f<(g>8n7OTYO3BH}=ZA}_JKEE8`a@WSyCeL9(uJd2@0B-g zLd!<G0h5nxGxLhba@JYorP~)0^@eQk0Rf-+i_Bz!^?nv+D-_mBwqK)`S@5HG{{(pf zGzyH9a@oYr?+8<aQaP@%1DRb*QARrHoVydK`oWxHOf>O!D{n8PonMqn2Zy$oNj<LF zP5>RspFg1XytDn2HUFC1#3@wJZ?>OpshyPX&WXbI$AcCw+*jCLt6TQn;3bq~$uf*_ z`OQ{o`<D$$09uOssG4fNd6MBMDgMYQ{#(AZ2}eukidQU|PqU*ww_{(dlAjiSqo6t_ zmE!Il1aL5C1k70xWy5hErA)P%!t4gGmm9&4S3<h?$cLwm{}MsNSu<raIV*ZRmw5Ot zKGlq)15u^iWwP;mjImvT1a+FRPE*tq9yUryt~@ch^aA++Wc+5WyE2%_1KU$8AZx(j zfz;WUT_nex_yxC6fI}1XMfgrxJGZ|dsQS+25WC2EIEbLMIoT-D$bop{sPz&rUm~95 zH)YXr0P^k?5Y)!_zMSeuu**Qc9>|`34P*uXCXm6#ya%`FAGv1Ua}#1Hz@ps^oAMJ1 z_w1qm<mQxzU=$oUb2LzBwUPQ99~ISaZyTqPLV-2ZXT_H9eHrq6Pph2gVk50JoY4m_ z$SWgM;Cm?hPRnd5RmyM-M<MpMNu>9uk%!OEwx|L|--UucaEH`;bu@YPt@Zc1(4aOh zvIygaDSS0C@P+dh%*YU&3gb%+4;v*<R%rq-9#16%*4gI!BKWnKn|imH53j*nm;=&+ z@P0%r;ja;EK>g94sm&XRggXBhES9r)F>2IK!w#Nq644Oj17K1;FaUIEV>|zZqA_>N za;MoHcb#X{fa!_od2i_9U9>h&Tg$#dCMm(-X}k5@)(&<O)|;RN3pb?fQ)0~A?eBDz zAQ^=eUo^KCn&%Zc`+=lPTEc6@=7CEMkh=e5&pb|a$3;}1af;AA-SyBobbNfNR^xr& z&7iLcnHi9^N34sFh{kzD<EM!Ms>A0%ZQ`uIkp7(DH&hufyhYi*!Gh)2vX;5$%QHeU z*>4;ov`DE_lg1z0hg@I7g^2+U4ZsG6n)oSZilc7E4HL}ZUr8@6eFQaxA(4<hykET| zg$EXN^3x-|qIKTKBva`yMf}`;Ih>syB!(-BhAl{C{^E>)Bl|}2ZSNgLW;|4*!Wbf` z=T0QejPZPMRs%o1EnLJKwfXM8kAYNcdcQlz!RLaz<ljNPKr00O<l!RWuMx=E!(Rzx zy1yro_sJG9QG;6j5MM9kBEE*(q_IO<*c;6C4P}BgPr5hih~6p*qUP{igr}vIlRZZ< zAwE&oXWz0>v9li1&?i5CsJ7pCH7!$9e?;jAj%y5h@DgN?ENX?}x0!QRg#=t&6Z9Hh znTs$3x#4D==#2A@%m=UuK6_yE8Dz7@cb>lbVM^Qnt>L-S28u2{YHr+%9ZS}P`=c^p zSEOaRXWXsEJh&euw`_0~@0vcs%cpit`f9!VV&ANna$>-PZJTEcx*^_v^Uilp$=@!E z@^KUs)_zly-uggxFs`#E%ycmjK>y%i0sn^>C$?ixBYomJ<j7%tY>9ZnVceDk?%rS= zP*tBpM3||6*~NK<)A>ZnRNqfdkIhF;&mE;IXBF`dVYL8v;iD(cJiVcWZ{~wFKWYhG z!W+Gko(cxHRiGHuKn|{Ig7uKXHk$`0z*?aceD5X;Nw*Uxv8(l@n)b{<az%Qmg%Xjo zxn(O$uLT>tyyHqJny(N;&Gi!GKOCEq-d}+9G-5Vz+AC~lMiuJv@Fj2}`ZZky&tr#e zH51o@JrJJwpUzcAf>UZ)``Npab9*LILO!)cO<aMM^LT7`=Un;Ek2H;}cJoG81qSJ{ zHPeT?fAj)KNl$<wikNj)Oj8~%j>j3c8`6sj%sF8Zg6{`t+E-Rxn(md%7DOF(X0yGO zHu87tb$ri{7+(q*%&}6pjXo}-yFw}NJw{4q5A~jzx!PGBk$0S?aV7iw%9*yEKk;ZL za0q8l`10JDTq=RUIFV<_?vrp%0`9UL8aX-!Kj<VUBu$rW|99sjv)bgJu2!51Yp9Px ze;lODYCjSn4-`sD^)-;6uy3)4omP9fQ3E0}Ge<Z|1B}(QL)HO*02=}BJOWrGDz)%8 z$A|9*1b2LqHlHm<dGOT0dzd~pHJ~pap}A)_-i^D78{b<Mm!^}i^^7#}nS?z}^E0mb zQ+Ug>4~lr;6GMKAJDA3izGeK}KFic2Ng^4LS>nwWjRy6_HjO|(;?io*W<Hk=6nS}P z+EWk_;#IW&d2KMqjAG~`J7ZPulDkTD^qc|GEe$;MF+(Dqr!ztVaRs4o;|s8B3>JL6 z2F!&j>OXpQwoK2J_EV3kj#1?eENQcEK!vJRyzs$8<@o2HTO5KlI;_ci)v`sKENkrE z*7Izk8&yjuo2c=_3Y+8*=lQg>%m$7AT;g0mzq=F=-y{8rr%w}d?lHVX4W5_&mhfC+ zq{t`&n0ntl*`4fB(Pvx+1j_->yHhtoZA}@5%{=tyIe=vsHqzdGBG7p@cjMNj3L2tR z@{?U&=Ew__6G|Zpg!+9hE22ORY5(^R#qu#M&wB$D;eBSrs>{0F_`*z@3J6Ip;^Zk3 z8&IY1Z%`TY=+XdyNt!bEw0#!QaY>sY0`LSH{V4PV%KL5aISz~Ymz6DT3uQmuDwGwF z(~8(q{gA-VSYpa*e`)b@tzUhyQ<g*P-m-hkV%<1;Ih(z+i+(3pyoh?Zn9O-y)Cd); zkYPh+z&NRF+!F~TzjSwZkqi!3w?rqm^sNc^dN*MK4-Po6*Bk;7gwE7kuTUzxB%v^6 zlMn%GefBtEsbXon-STAX>XV9~Jb#j8!B9sCI^+`H=lGd@ER*IO+lRx~1%aeGtv1aU z@2rJbr4k#@5`E3(%h|?DGAOtALCQy~noQh|@8xynZeluDVO8_<dEhAl0wM$_bu=7W zkinFVRB`JwcoydqAbv%;_EZ#OR~=(b<^ZavLS9G16~Ri2)ty|%@+Nm=m(D~Eme3%? z!vYSl!{x|c8VA`W=c4!2zp3KYXAzFCY8ZF%o40?K{_0rQV9Ji_SC~@4^!N3aCNFs} zsS+i4e@OwaHhRVh%VN1p)F#o8!mqB;1+GwFYfB-JoZazN;02uG3F46x;5PBNr#nl- zZiloi6ZHgN_(KcEoh`M-luVGicTUebJgs@k%YItBg_pNPtxT|%qF*sz1VR@gNFVx% z1P+IYZ1~2RV0W~g6a%pErsG``=&|C_935^=usOXq-=M_-X`DN+qxVVs@d8e9-!413 zm(I8gExFeDPH8vH;1s5o<Lrf{zCLE^!siBg;Z-=HBkJ7Jx%AnE7l1LfkP!X^>altE z^hqiB*iE^`!bNTFm7bN9nguf+C_kruzISfN-R(9=dZxYtKb*){z@36liPrxQN$5f# zPNoo75kkskE`t5=IZ<tkxNSXZf|U}3RM0&<zGsbRJXx(h1Fko8dT%botaw*ujsS}s z1Bb+KPqP!snQpk=vY?@Lr$N+du3-uQ5;u!8d(dt_yDjpX{!G!vjA}3aWmC+qILjAO zah?4S&8H<#ie!#=^@Zx;AM;k+3_RaVo)zcaAFlP~qet+5!pyj3+#Nnddmp%wAdH@^ zj{g8?q-kvYdi##KU>_O^ROVeva=hKHqPay7R@}ZFoJEzV2Y&?rE+W9u0>8??9$At# z+3OYByVOToN4-z_i=JHs1xetHr{J>o>0Rx_ga%IXWlEqfjh63la9LqEJ?&Zx7wBE4 zzd1g4IW5`OcPgmBuyOYGl#*1-ZN3^dmbi=fu{LhvL%?`h@+j;m2Ky2~PlGXo0wfi@ zyiiblAgre2Q9(_YAdUe>v&ILbo%olV%-DUhqXWH0a9@6Gp|Z2_4pLXta)z~nx`a-8 z|FW8G&$eVURO7QqyH0pp6Tf7fZ#A7Ajmhd=g>Ai=s9V4Dh|zBzu?cOO{^bz_*F1tz z?W;$8`ZpdyPcBWgqbx7p`iY!hRH(3TO;?4J&kn?XM8vVIFTqeygy(^VJ&&!cOHn(u zRPhqY0pR3(yUs#*BYJdef|cv-YkgJAev^lHacbSRRQWe6_Klv3=LJq18z46fT+Ofc zhbo^1%H{DsmlPK)Urttt607G3C?$<I_vc+fT#3`evPWO@iO}98;@wrsnZTTmIE&-I zXDaZIQjOI^U=t`WnFx-b2*!xLs;sU5QZ)nANY%BfJ(Vb_5$wv{@UA>0VJ@HEh+Ck| zO=M>gaTHT$tfM4bJ`?M_`?_rzUB~go@kY$mQH!I^r$a$~x!Y8<E#)%(co2HsI<V21 z?il`P5#KO-P^G^z0EjN_*c^3_zAm2Z^a4tsGNajMz?-lK5}7%8P?7`9&)^~cbaut# znL=r@^<X}tXGW|^RS|f@wBG5?Oni<eFn|8(82yG{&pHPx76;?`l=6V|KVRf0%KhIS z%&4!ayU^gis=Jz6{$Aa6ZcDc4!~0|tF(urADS6_7QJ{tg=Jmh3;&Nl<-3r_j(`SG4 zc0cxH#pf3Zv0?m`gmAR{7bFCu5xH~=tWwdzI%;N)Qug?PkYM!X>?U@B2TvS0-l@VU z_}b?`n9bj62YXnql@e<GU!`HU{)IG5Gf6N3QJL+MfUJPj)++ir%u_)B*PHerx|Bd* z?}?gc^b_Iz@k_$KMIGujvRWw>Mpo~!#{4~5T~Fo#gM(k5jKj|mH7C@z&EJ#A5xlmw zW+q5x2{tAbMGC(m2!7I=*B>~pt_K>?uYu;p(_g9g4|SM~GUU?MURWEUza#K}%kaZ~ zK$!9uh!)I%EgM$(FAV)c%XiDWY4^8UBOnTJ{$9rawNO7y{JOLJ$umCpHG4DsR=Pg; zRl5GM6j81nyG`H??!Vcj>l+4pt{A;8FE0KnFDBReH}c{Hj$1U@f3hXN`I%2GQoj!2 z4`U8thwyiie;vX{G~!HPdd-#k>zk)PnF25Cj1^5vXSJ%9QNv;&1n`QwwO>cld5UTu zXRn!AM&)|2_#1z_9yl0muKC_b&ewyY=TU#}d*C3d0GAG$Ke3YE{ES)Qwdh~__G|PP z`ghu1^E>j2<Ua_$|6v(_@n09e_-m1#b>pi73hQ4)dg?_Vound^-(Z~I7|^${p}u)7 z6y>XY4Mjo!0`o}20y*q<z;$c*m(R1>RKFsTefPI=-u?emD8grVd9c`ZidzK;_MYnP zZazP3>)Bg~+c@gAupJ}%>(v~Txn}SE-ws9}{ELIp|Ht0Vw6LDHHjX3+kEA0bA;2dy zJbFO(Y!p`veW9CGdhSw0jiD>ASZO6%fCgozN6d>$;G29ff0b_LO1&HuQQf)x*K42T ziS<hb?|=833jXsioJ7woZq4}nBVKS2xGFW`@R!JS)|EWS_oLc=Fkq%u2)BhX>8u@b z8;&lM9N`tj{T^+6i}IKf(|r}7o@TqH$wWSRzE7a|wJiHzk_T(NK=sQm2Rpi|@_H<5 zEI}staIxLUNPL~f%@IQ`Vm|&~I~j-jYm4ZIzZ%nw-~SI|!hhuA&5`;F$;PAzf!jaC zOvIjllI0B@S9u2U=FxDpQ1ID#A?iNnX!gD^8O14=k{}5+4LAE%BGt<pv|n%cUmf(5 zttgrCpcP%*7t~~@JJQJ|X*e^(@808~2__V!EUj|de6}6tpN{$k<QT4f&)kvRuc24} zUxeQLh#;zuBV-50nxvYSxfq5v4|EQkQv0)=Ud(o3;#^(O^Hl1i))n0nOqIVwd_bwL z=#12vI5T&TfV%dSyjYU>+;W6)w1mATspLOu-cwDqZ?vc>YAL!DqlvjOvwXf66Yq0t zi8Og}Z-eP63!)z18LBgHEymgc75T;~&Vz`Zwi*Zg*MX_I5AG0Ivv64(`O(I*2~hMT z9V9vw&P59vam^wPKFMs4X2XfkFRO?XUYqOPZRk-dw7c+9C7O)}Yp@VQdkB1`B(crm zBjG-tK?YO(3N8$}-~X%+1^g*6U`nn{wSet%M%jcq(&0L8++26Cl_AOL^x3P7P1hLk z=j~SRosdHv@a2kz_&qM?JExZ%A~3y5$#(O~=(#*!#E$nP?<{{Gp_tScMNwcU!cX{O zG_vZB2p}4+H><BTCfTzP^Ne>HwE<LRShU=p4;h^TjA!l%dUTpzU043Qv+AAi@auGC zIa(Rd+E4`6uN=<Qom9q6+pTN~ECfW~>*q(yR06o%iu8+i08;zf7(Ki6U7f*vce5zS z+LB6L7N3KB-O>IvKcK@w{EVT%KH9f`Ok>xHsI|kD{{1mS)z0vS+o8k@{?>F{+5#!( z33t-0jiADNtVuVqdgGpH^j|vU^ZRkq_8f^nmvZg;Ss4F!J8h9jf&{JEZMgu3O?%Ar z&m<-tpcIZc&QW3Hp}UJW*^}YmmH98&ChPgecQzRm;WycTS$`b=FW=0?Px%Vfm#&4+ zhmSJ1mwpdlhOqV~&kktYw`B;!Z`&?}ddBww=n&-doe(+OJI*lPRiYNqoqa7gzTLKZ z_`FP3o#TFaH!8hu@q%oC+sDJcvUkVogJ!iMTPLd^D9uM)(zpKz(o>Z(aZqVC+-)+; zec^9wK3mZW^hg<hqt%pE-6x-q-F3UbsUM`(n3CnUTlH4Djk2<~SxjdrTb@TqbL;*C zKV_cWVFL6h@1f#bgyVUiPAj2vm$(WZf(j1L(0{DLr;j3JF+o)KQQ7IyP}phwl;%%^ z{agc0daD`SfiXj=94i{mGpUI{{Bg8KOX)?$=nYlqBy^rgx7)6^W6Si1!d^kbJ!qZu zcHe@u*k;J1wa<2IJ-R|hHyHEn(dDM|XwD%6SJRc2km^mTqYJCl4j)dw#1Y#w``eRy zkgf?4HCx`xI~LV!%w+_R$9y#J#4R6_AS0&hOt0VW2X8HT+KUCTJ3he6o_DG?#T_lJ zMToCX=h{%%ZXlj|<bf#gIqLEt^<ICnK_ZQ>W?MYv%4ofn1zY1E<WrckD0s#Jubu<D zynFN&qVU3I<*}s+mHhV$O$r@r*P+$!HMol?4+AO>9DkwRKa`x-sR|~<J<JXcB~jT_ zG}lL;o+Llw(~oe?<NdPxMma8&?UI>}F!7eWH=;4`qH9^7S+H>iD$>^RYi|w@y^T)0 zLsPvzy+I5sBwu?P8K$>P%RBx$?WKf%?27((QC{CQQ4gRmt)i?Ji+wHh@eI)B8;`bY zSy*jD{22A95%rMFW@Nh7klmN>al=}g;;N+_X+P<Ub2)}nmacwMLnUv1KMitMr6ura z#j^D#-UjQ0ZN=Sar!O*Bvl8SuDD+8ah;ShuUDXib)Ms|qIt;4HE-s7(0HiEF0n0o0 zf!L~uxDsMPjCh30*?wqmQh%MLFlfOCUnOgh2L$hIbBF@ENT<=dNhM&?r;8@4z0v(V zR4rJ4=xB~*4M>el?>>X>d}Ta(l9LRKq26Mw`%vyHO};SvY_*^7LDwiBRO+R&`RKN2 zXphodch1}7^EGTcr-{hp>`{cxm|?X3;(?`O=g;J6-6uTqfP750?w2AjXraar0n_rX z+JmjTT@m^kofZj=3&nl~WGQEbanmdQ_pxEeS`E)I9g?ij6Bv{k@1Zwt-ONMY2D~l( z*wZuz1v-_RPW3O~_SR@Tb=qOkE_ONk)R024X>ZEN$L~l$&vH5&L6Z6Gt^z1J)E&4n zoFr{#ffj~i+=`m-SIimfYZ}wF{oGUyown_ujqY$lXiaVP9ZiAh#)RFDKE?ReS?P1r z!^&EhhCa?t$m_)AhJuik5lCaiO?}{0cSY$&_%qG1JV%()DlQhs-J~b+H$?{ww3vxw zKL4EHKUAsF%xJ>4Ky_1Zjuv7?E!3(5=($m1pnTh<18dW9pGBQppm`I!9>3P<^TWe) z$9uoZRF0YJuw3LTET{c@hM+el2&}v*>Kv=XzNed3${oOaJD>qTwmuro^;CV4Lc$s@ znV3=V2$@+%@i>jdP-|}7mQ;YYQ<Ll*s36^dTuQJ6R<}~B)Z7f=#dIKmoyhxh&X>en zEJE*lp67=`nukBGs@KDN2+}>Js(8(K|E7b6r*-V1oQZJG=vZAbheg|1qV8gC84hm_ zrK5zcPNTnET(vWMhj5Son|95)&3av}Lq39D7j#~qvGOuZ*{aui7{l9LBD95lCAtel z2Z^fIwszUZKg6E`@R2kw-a+8K*^Q{DZ~QSR2Zfq!Mi!1Xy~((qv^99JN~6}{)$ivW zPk&qij^x01k&q$ahm$VMnecm%8EB@iFt&w}2qww?ANJldD9&~10!@(M?(Xiv-64X8 z;O+!>_ux)Qa0!w?(BL+>y9S5B-QBrEcCy2FY)hTGRk!Z>k*c>c{D5creR}ok)vId| z1gj6y=b4bbe~7=;&VGo$OU<A&wNNQPLw%j!K@;9%AoC33*4%<o$J%CVHnUS0QtKTP z1ZsxO^>mLa;fti297$Yp`^%a6B9HdOu++{~K7uQ44Nh2mwN?yneBq|mumfeaej=%H z<aqEhIShXEMhEKDeFq@leO|4?uazuCUjLjjXvCHr?g~qo)IILJ9Xs1Y|G2*&OpCUa zvYdaCa|`nW(c(gq-B$@3*{)~elMzU5@tv(lBG6+>y#ps`+=2Zx$Y4Y-dyi-c>p7-b zD)Nn7{y1j~NmE3XE<+Yq+k0%Qy?<*HDu7O!y5X#3o`XN*#$*la<2QBs*#QInaCB6+ zd5!XC(aRP3AR=4u*@k+8U-$2yW*dwpI~6L>T3lt{a)ov{Pd4K>h@>_Ko*TyDo4-;^ zslUVsGg0R)ng9B`969)Dd^xI({Wxwf(`DpfFyCq6k!@2R`firq!e<an(h)eJDp01p ztrK5I&xkSnu+Fh7IFxPSfsU~}-w*gYn7yO|I2kn=m3*XbJQpyt)`q!F$mm950H1m$ za06DtI~uqlYJa>mpz~s!5*pu?fOC$A3h;5Xr4Q$Ky3ZO0IqC>EP7);>qW(A0F^bJ0 zcS?4(eM{c-2%yJIUoE-PMcL1Ie$a@I>yCj9egIrvH6o_ZRe$pwua$;LTgNhONW~I{ z`<=SZ+Va?W{kf4_=6+H9*DbGdUf$BPSvv;LDayw`G){}u_(!GoGj~?yDAWwXMUnz2 zsJopj<##VZwO$QZ@xgp3D~myU>@)CnDu{W7w_y80Q5}0npPRL>x_9d0U(utj0SLYe zg27uqn=j_Jc4cj~UTymGIJ%|FbXJ$wWUBY>cGU+rYPvY-X$UWiQA%oF)e3o<QGYrO z0DEkX4un5*xi*qh`}ij+u{dHMgI@JB^2@Ruv8Mf|crRkr{1r9YG27tq@Jc3$yIQ!% z#ai@MT{r7P-2l%`RKI4)UxIocyB7}#EX4aMl6t0JA@wIy`fWb63vCEy=9S7p^s;SR zozQD_17mh3EQTpKMBa#w!fc6&TKXz`l4XG^RKY~sDaB3&Vww2_CYgDdoy|v`07aMe zvdMUBJ1jN?Mu>dZIMGFjWc6hju2Wxro9+Q?&_AEt1IkGEigi9RIC_gGFZ82R+Rs8$ z+Nq{^!|6!aelK<zRl%ZN!2CW|ff~ofc#0r#ur}{;>nC2Dj_{GMk}kJ)JhBSAOC87T zdxs-mQMVlC%I))zn@5#tar+b&$vcunsJN#@QdyndPc7-?zHusUj<qY44%^HcHqIfq zvFLfMzbC|romw-^CzwFy@_=9REC<?@M2_DIl3W5+kAWmSNOQzbl}PPgkn|p$0HQen z<xFY4`m}9NPdR-6+G5sLiIti9g7nEYSTz+EdiC-`$=)N{$=+xJ!jdKQ)8*LwUc0x_ zOD0mM(#e~upk~jJ=IYgE8q*2-M>+LFm*i|x?%kH3iqwBw5Ilkz<pNviTW+;tf7_rP zz4f&<U=R)TZ<-=9EZEt2K?edfsY%}a{#WI?_&~j}n0H?UX#S1DRghOC6`M$G6Rd)_ zM%tF1@B`c$DID};?StP{yZN}kt9B6x+~HidZ-ek4XzLr@+yulnIJ0e5dvVG(X7C6S zDL=kquDU&?Xkui;?5M6cB3M(aCTc*}!#xp8H}QB+FGaN@wkeLOqNK_E<!dPxpM>e~ z?=f993M1zCIG4HVz&lulzbBFDF@|`L|07;D<6@HukP4iN$~Ell<;-qm&br~;N~H(R zp2Hl4KQjiXaOsQej-tl<I--`Nm<P|qca6;fqx%emvUKf~SjnLeqzjRO=3kejBrMQj zNo1)=mM81dp;fnJxqXMPt{)A+qf-f|(sy)j>}5WqIhnqDhn1aq7e?>`F1i>sAyCqN zE|n8?ufSvFR7;8`ws@`l&~wO-?`eCD@FR-0yT&<LdiHNP$zQ%9dbnkUAUsOWUIM+< zxf4SSkK6J-FI7y^W>TlT_dv7wvglPOp|-295}QJKJHOLJz@H2h7RoA$cKTS^$oI3T z`S<;ZQ8uszU^;maut;UAw{_2OPK_P+<mC^96f6qua!cvQH#Dx=rSthA${K?H<?MmH z2_j8f|Aw*0Edbi(l|*0rCXHqo+{EW1Pe`(<v49%qKCMO<M$DjYai>!~o@#H#66k^I zQYVlU=nVf!P@9LLINgxlHfhHo2V;hL97U^$Q*c{JGzY;4ji>Duxvi9BviL;PqQ`3= zRm{1>)XhzpFwwVjcP}+RvGDxP!ZFf-*=mt})=V6%+46w<%DjbpP?r7GwpltJV~kEi z?uf0GWiRCD#wE##25b|MUR64;vR%vmCZIA~(?38&?C^&mSn)SO@Bm0S4Q{pDB0ZqY z<vRieO(LsJvdpc?D6{MWbSI5GO(j5pP7mVK%{Gxo+|@Wve}#`j7wuAoy0_u-!C7{P zuJTOpGPM%C;-gmbdxd-1OioR*gsQXIl4ed3$QUjhvY@5JN=;o29dugAKw(a3>7l^$ zPZK2lH2abJp@6r~;OZn1B;9P{$KH&hdYL0FwPC1}HpGYc{nSDHgbWX>w;#_wFT=dg z3A(2*o^^N@pS~fj2nF^)`14(YR+&mS7fM>eTGr3-11=6Jp7=)oW_s|Q16&J#K%0Af zZ;(3u4cZ)}(uT54PvT0aJohm~im(Tb3d@(tHbT;ajF#buiNsw!K2q<=6niUZh9~?c zq|LaCXe+6Rf}&<j4x3*6a+N)eq}{e(6C~FT`9e!_&BqRZN6KRr!yp*L>q8rz&CRpy z^-h$|->=C=if6>6{UA#hUs>FQ5w2AjtYJRs>pf@SQ6U#FBUx5)C5wX^Vzh`sJo59D zhAhI6g?cAApuvUdNfCd#B-bGtm1Fbl4l2rd4aA#<n^t)ai^E78$-^@_mvdwu{>$pj zUiCYLVrvC~nvl%+7nN(7d$W0@7SQrNcp{^EDZ}U}(dQl@7%FMG*Y!?+r1X(?GP7Zt zcPU;ANTe;<9sZ=BwsHHhGHj%Rxz{*I#8X*{ETwp%Bu~5bc{^z=me9xp3eu~X+)r~W z`>f+;>jQN0%Nbt1xGJ8+Dn|6^kmi(&b>ezfUu7Y8Ne7gM99ZLo|Bx7deAM{qrI7jU zS;mBYwIT&<JAC_f-J+99QtRG!D^tab3Z{<r+PL{Vi3Df8wwv`Cwx(*MtzrLWDze{$ z>JMPUpGKl<(w%5(jZd~wYaJrt_MQmXD+v(dN8#erMnn4PJ)S%7_-gK+s3L_WK&pr% zWjmCCTZG=hv68_%00%|}r<Vdp9K(FGL4iFaOn-?MR}XE!Il@Go_ZC#FLo3Oog{f|l zfqg97{!&%c;yJ^8@<~VYLR27WE*3O>KXqR1D@zrPpmUWG9FM%3@YIwiR(68|6Z{el zxyv!(-OuY2)S4kZ!W?lYwWXEy=lWo5z5bd|-NgEF??@}mQ(5yqNn;lOL)N{JwE~wE zr%ypH<D2^cGvy{x?6_>ggLi)E)eVh}t8UDet_E71JE>+il6WtDY+wf%X9I!gDaEz% zsgt;O-)g{Ad+HG{he1P9#!ooVPw#Z6YZ~-t+7*PoOe^!g+B%oc1NzCK52x;amT4A* z!cBhB@kG0~quI)#)utwddHs1e0!6^nw@7OzfqO2z$QyT9pdkU=3n&pzGd>+sr2$-g zbjA%4LW3|Y-$WGQF+*`Corwv^?k>&;GFA&n_4gj36wC7M_8;x3+UK|s+<Xzp_2)vp z#L|=&I|(wqsSk}wur0l6{Za!3e}`SaU$X!BF#n43zRp<=(u@m*rCjO<kg^dz#VFz* zL`vr$1X~<hu{2Q}H`naeI5+>5Ype?&q?-Nv{+zqw-??ZaqoATwQ1Wf$UDx$rlXFN+ zW5y0r*nfe89w?8ZqNXho7qN}jfP`&hM6^2vOOF)xb8>h@3WwgtQ#%}aaBEC8#J7S= zJzE4?nO?h~QcDX}&^(~*x-aVP2yZg?8AFXNC)}HhCA-v7FJc@r0T~W#Wp`8Q=u?~9 zK29P@oyXDOY-_3XI!7?CW8fs~kG`c(qNor)E0Z7d*mGY>5~L^+8PQ}6J_Ht9+5t#5 zSu`fvLKkIxrim-S%kA@WSI8%27`|{eim{#{;Ax7)>GGmwmXr7nt$Wb9y<3TFO=crg z=?+!epC~#GzHr57i<j1zsNT6j2cbC*Z=*T>(5gDCX}DJ5r)6;PP^b@^+km_ds<i7O zEz*;3M%?bMg3-vcpU6g)LD08}Lq$7_yOmksx)SCII}jp%zqO_#k*A|bS&5Dug_7eh z3b|NVCoXC5r<B8%VEP7y`(xhTb^^2=K_hTrQX9G{V`PQhWYnH_c0L(6YLys!DnV;- z9mhzXRDNKsvf`a&4J6x7`+|b@#f4X}sHd(d618KDyk2gjQ8^naayPLa8gox1_X(LL ztNtQk{zd-!ehXDWz<@%Dz{~Sv-1*6vB}j1d!aB389lTv{fyq*0>&apz=Z8<uPWmXD zw^gj0yIz>8-Jjj!h!F))e<7q~y9ea=*~fd_oANivZ?wZ}8+KbB?T8Z1(4nI>{~?fX zkV^hdi%D6Cd64&ThVp)U0({u|OzWI*lPNic`nG#2olLU4K)b;b=t`Th5x(Tl-YMB{ z2Qk`>mg=xB-SW)t*sGx_6{2V7sSL}-m~1jPOCkmih;W9@oC;S~2E-9IeOC&Mu4M>2 zj+SREauGYS15FSe5xa}^p3bBMM@oW00&3G3fsT5o6K_<orj}>xDG+`hsZXL1G3hCL zzchsJ+@fDB5K`8J28${d9xg@2HobSmw}`smC2nAR%WCd}Uov-T^z2&V{1=AJ0x%58 z{nOlzsJy-{IVKpmJsIHv%wSWl{T&?h>Ep-k1x0e#4hL6X1cd|{PMtTD;}gzM#ym6q z0;IKX_PFo|Ze$UsB-xIsd8>#zl0IiB-aw!Sqp|M6r|n~#&aE9?S~hGRVe{McP5Xep zL;VYIvO&^(f7l9wb1)`>I=I;qD-i`79{Jn-=+ig+hjZX|#yXojoF9D->-0XT9&JHc zr36Sn9eiOy5?Rf_K3Y;6k>(@W9$G;Fi7}zI|LlX6uUyc%#3Z>)_B#wv@$(k{j|bG^ zcznov-7F9;*)Z_%_tYZl1+{Iz2r{Qd{wka56&}QoQ`UX_cs$TK{rTp}xz|D$HrHl{ zNze=T`ZWUcDY}T9>iEJ49PGp~{5VCWMWG?y3C~9LJG@ZW1SS518OfK3I<u=t15*mw z1_q0ljwI=WL*QO*H3WeJYSZRHKYzuKlqgk=t8Z-jYx{Tb(82<Os`HV9lIiI>p!W9K zQ?ZYlD7#LEYNZ)S9$jkV^Sh#&-Pv@Phkl`XzCOm6Maq5IW|M!j9%hz*=SzM}IE=<1 z4y+r%x#6?o+qv?B-D4N?dZG~-t0!3jvRBdXxg>R8`BL(#=oMfogJF@tEq9%Sx*3hS zgO{#io(!oR`*$wq-*l8g34r~bP`fjr*jfzqDu;+p@7F#@((O~ds*?^U?+*N(1tWf} z{OjBqJntLIs!4xc;vzU8lFB6k`8Q=iqx4`n`o*WkLnag)d8LIV?;;N-$Ej>q!%nop zHYo{PMq-GXYl=iyt{*Zu$V9&cRhSz04SuHox1}&#;}Gv`_L8qy0Bh_yX&-@f-XHWY z^~bbk2OgG=-b4>hIP3m|5B|mp|C6ZV-+%MJvj5MYS&I~U(P7V)2c@A@iMTn6(sBGc zR<~o7)ZO8>rjhp-#o9>m`~ictdryi+p#5U7{xlT*p9G8SkL?xzC&Bv9gYW;}kYN4u z%l2pf=YML@U&!%am)QSPgZ{j{|7|?|H`Sn{?KmwqckyQOdFD(;QcSJNHf8BbZ<3?^ zfvXyUt-}pV(O+KfN2@(c`U!`=YijH5{>ePqgNmPL`pB9X#wmEM8-3tp&hCiC_-0{m zxtf%-ZtxOqL)AUjIrUA0Q021PMER!tvem6+yR^H9F~d(#{W~%8A0KjX9<=Y?ejiG2 z{2N2*-!B>V?~}>e;1H+!B5}bJyHgUV5^E8{SC_!~Z`TwPx8>Y}Zf>iW>>XR-#(fJ- zR6lJ%QiPsj)}NBsa7YUgBST~SqpI=vMQ@BZ)IYc^lOj3vdj_Ss*e!(#cW$KlT7_`x z-ojSirZ%kA3|`uu0wcbNH#ucvbHV_3s#s3K1X3O~l-rZ`{smFIkTl6J#VIc0cg1PM zFOlG%93Z_vnM@9gYkd_C0fd~HNKhZ5m2jM6xw-riEJ$~dT({cz%*{>AEheMPxKP^; zFy}mmPw4*Y$G12Llcl#Y=AJb^eiQ93egL;FU@P1z916jQ@~jO_&)fl1-%Pv7z+j~s zMxT!z(@D-?4&RIr@!62<M`sG2NR4INful1GEHy6;?_|TXizT;MUM=vXrAj3P_YHT0 zzYr<V4`iUl!$+3&#L98^292K`za8d)tbW80Lgd%~Sd;|<G}!Mg+h}&)`IIc3uW#vF zk~F8$WAZU#z!B2PF}pLb5-|r#V3O}PL69ul2rhJJG^{$;9prQKooD@ce?OuH(I*z6 z`=%t(H_2p@Yedf>ok`(@_A{75(V3@kqgM||Cbg{ZJe37QiJowxSuUP?Tj^32gtmC~ zO~hSWz6^V|1G5Iu+?keOck|<9Je)EOve=N*WS|h2@=Ad`>U?Gp=LHU9awQ~x;fSg_ zA5cVdx%YzrC^~<A5a3>l^j_=jV5NtL`$eTl{$zC6&{?=d(J6xuD`;x<ta5)jgCV_5 zEgWQ)I|wq%y&$3Y@(k2B$vWN)?B#ISAJDYY8JXMn9hTU@=3flVxmj^jxxN+->%XC? zaWW6D34V-jrRuK=+0TKGAkh=#8Adn+2^4h1rc?I2T15rAjarw<@`PK^X*Z`96?`;+ z$3N6(%h#X$z@<tP)*V@F<ne8`^Q}W0&*Z;yP%bSu&D#l?ZC-&9#HeM-??BI5lMw-y z9srb-^EAp?Y@XTKKd*;B=kR8Vc%4yo4t@LDKKBK=9M)O5sgD`nHJl8waDM$y9i&P6 z+WF1p%9oRfpWI81Fa&9aUx-J~(9J1Dcj;Nnlv8%bhyC}KeWE}&ZP*VfOI{rx5YL%o z{*C{0mpJxLrVYih`9SD97B*fqgl<8Ru9b0J6C>Du_fxEES67nZ4q1`06PjoAz(|)f zM(DK0bxtkES*SFwwQnH5^@Rui`ZSNxmp$1@-?gr%XGP-%3*#|{L+5mUYk=^{afbdN z!5~66`l@W+MTqvZGqe&#kQgnNI3$1=76Um%5B62qi;$0EZ&8Vbyk}GI^6Sp>`OS7z z-HOU%biADeBl|gl?yP2GRz_5%od7dJ+!NNa`mcl$aeM7YcSnd440J*P$Of(C&fKC~ z*5p}Bg?OkwWFJi4dD7WF<;^e!O7PV!ixwjn?cMDy$Eg=P_pJ%Xr|(G}Tn}N_9dyKV ze5PVFbA2omYD4d8z&Li121)J~xsk9f8z&I|G?(g~dZ>ed`}t)|!{R}QcERAvUDHo5 z0FnbKw1fP!m&cbjbgd}@zVD>-+E^z&;R!v<oh6{XC`}XQz&+3sFLhILa+@I+hu#dt zR(_p4y^-GFd^D~(g)RAVO#h%(+rP;oVGgRL(9}OOmIW@L8UPFv29KKhED#dMDB86G z9>sY*m58UU9;u)(4RU^$Mqwhnj3D9-zA^mZ?9z7z?WG4%_|hzpx3C)8rrv8w1f}69 z6Fk0nqpCpsAb+9=sqhV5Y8)rP^y-2twKy=;cstj_S(HydiIgT1=pta|Pm=xi|D@l4 zWQhOooJ&71sP0tx&E_oJMR$PrVi|w<ekjWUFMEu|f<}skfCbxfItV?Rt`xLCfK5Ht z4YWU?Wo#t{v_C)^v_IffB?b7yZ`n&1!<L6rNO8l_eG)+TuB~0*q%@BiYw{wEjKYc$ zb43H>U$E0&Wx2#a)!)hSB7}0jq61t#xz`zA;*ATLy(xnjd3UzC-Q&x-TB(C7Hnft1 z+mhNrY$|!KP0HTM4Y?x!Aa%STI#e6h@G3_AgM*`%d<?cT@T|p8kw#>bxHz%uJhX5l zZ^t?P`4pk#UCUJaW{Y-m$4{!@OD!$lu5vU)Gu(9$8r-T<hx?`}eK~M;um@0%1&+sg z_y#A5G!xkY*!Xe<>*rj$-E@8$kE{{-L{XDybfQJNY++vdV=Gd;wAtA?x^Xr=J9CC7 zBOWue3O!LXvrr`B7`S6^?;E!W9aplpAM37pmX9Tfyd~bSt6pdOL4}i@ZF$BgvdA7| zIDl_KTiZ2+GuLfdKcXnm!C?=edaf@su4B~_6Ys}oY(T&$hJ+*#Dn3cj!du|_B5pC4 z#ODIZuby?~)0K^U_Dl1nGX&Ux2q7P7?+gyCE&+ub9G1FAXjc^ePM`ER32}G`>2k>= zM0iqN>~M$82Mh#k*zXh)cX4#O)Rrd*gGSf*Cx=jE89G|wNzT7a1f`v&;-Y3kfD@|M zVctvypHT%Vd?-|uQMC1HcuqZ~=G~u>iE(wBsT-I`pzT7`4u_nYY!7)^77AA_wMBl* zm5H4$S-^FDTi<`~MIb7OX0Sd~)E&it_3~Ll0*fG4$ZdAWZQwzSpq2S`oyXcmKE)*K zPiXWf@{i9^0;ma!`I~#Pe#pd;i~x6v{k<LdEXbW-3N#WYB?%ue%|Y6>(Y+1w;p>ZC z(E|DKeRXi5N(*y}0r~LpE3H*t8QdqH8OWaKBwXi_5|+6SSB~>V>h+JN$VtgqA%RcY zxIfE%vW1c`5<qqbchL#x<QPTpF#-sRB{!EYH~<a~-WVVd`Ssr-7<>>30{Kt}p_!;1 z-3>k&vpBM2G4eDCeUCe1d(H-6J>ansHT6<pF<k94@w{Zi)tn^2Nx_}&HiT=R&fSxU zlgKzf_CKEl87IqtjFSP53@=)rb1d@DFE%VWU&$WzRl1GO-E<2)E*NHP(Jq~az|W3Y zDhLNIirPFH{t(9@IZ!BVBR?sS)ys!WZ8ZwEMJO%eMs`+23#c!Ir&y#<Pv@UndbRY# z4|$WO7{|g=?o9s_*xVBY{ynar6!zZzfQXG3&xpxi<j`YM9nMq>`7l4Sa(@q1Ohsr2 z@&c}JLURFyca^P6rIEEAPxqPLRmBeVZ9aT<qP@_Vw5lF~iMhKV{g{uao(fa|kDS?7 zh9B?2TnP$u+0G|3EPaogtsAOlY-L8^38vP}6#QMvh%~e~BB|H<jx!?R5&}!Gq`>Mq zZVGaCnV6<>c4P<C(UZ$I`ualx=XC4vs?|p`LwnucCZc5-h0`~EHJ88yl|b<J=OQlP zAoXrXYvRozyuqgme;cB_u~6gpT%rajf%<Oa`k!5zjn{dX8p1;cijSGhY<P;PEPG&Q z?9QFKz9C$_?HBX9l=Z-5wcNp8_uNnd98N*ym^!cr%s3KUN6M_=u`IWLL59$~lu|2! zo$P9N8VJ-h({3->$+q6=On+v9g`Q!O`uM4ByZ*VNw9U2(nZfba>Ya?qS~xe5R-Qa{ z@0v+2st$dz=*%ytD4}XM5ys<Su+|66>P)?M32%MKYq1OXIbAkXXty!ds(6v?;N!P4 zl$z`^k#Wb9{kTc5mc6%7h_f7rRPkf%#Am!;v*GC+@jKeOc9_>27>_xv*Gu`=1!U`W zNJj6NJrCEy!y791_|nS3GTVQCr9V5U|GHHE?bF5!X%Kf8`kRL_%kyo}TaqkSbB}c` zL1yHiErOosUfE1bWN~RGfTkxiLDQ2jbK7w%826TA4lF^_lf@mI*N$nu<MC111}joC z96Jn#h^=H43)GI=++cRB@*j}f?awHeCn;KmCYxehy$PLnG6RQ%H7Lx<Vr*BQt!m0L z32Uj*y$@CJu!K(C9C=CtgQb1W;JA&BSJ-O2e=Krc2&91aim7YBX0S6_NZ~t(we7os zAYHy&I_M4Xe`cmZGq=n?cpyDTNhDwJd5?22hO0Me3WFb^@7sbXHtP<n`Fl;aVF_tw zfp3A;NfB3dmGD<AMn=#S@1(zimo+ApzO()k&kj`)_wg(P)(bG{g%D{1+W&jD6_MSb za82}sa7d1W5J{@fdjV_)M^k=OfS2ylTwX;+MINNY*_&1kT(X2BC%kdf^!~Ot1v#!q zKrDm)0*y97W!%SyaCEWenPq;_6vG%`sW`Ju4p7IToXlvC4XG+Bx9?%XutfBBNth&Z z+WGEH#N2uO5}oB-U(L(HS$N?qE|NwdK7K_Q)S8}F1()uKNw!@6z)@XVh`rJHg2*VE zMyYbhh(@8Zj2+C}D`prEW4UU)hHm^who*P8BXBIDd}!Eaw>FD75+z^9oYL}AZjVt0 zBx9}zBtMxM=?$W<xJdOjaJF8vwz}aNg-gtZ3R47MF~Xt5#b*vcwZ0j<hzaq>Ga^$2 zOcNinMkgQ198nTpSTTxy=JGWICQ91$ygxD8bCqRmBnk{s2%xPDjT4q?Mf3_Dzbd#n zklu_A8n?9A*qa5;%>~PwfepMql(1YU(fa&#M;*YRwfTsxDOXjQRG3e8QdX?a!T^h8 zpQV+rgXKh-_uyTFkKA2Lz0={EGz3YcLvIHE%bwzp>+Q`w%sa_Ho{am&eOSw&fCl<V ze_Lx4R?QCz+apn|`?WR}ptUw-2%v#J!9M|J5<#O;=50}PF$BOvb4%i5+T(qX2yKTR zcFqwTH1qC5MeMOJ!Y1Ilq4rXjhDdD98=Xf*p7@9s>OSLBVQq)SB7O>|jGl8|JoT)= zV|<<!<HV}=f_8R#(hRwy=v^vwLlxU4#T*MW7h>ZIWw<lmHN#>Uj(UO$nJRRw;533g z438k2>Dz*>fDO0(`n1K}h!bo3y}0#LgM<yvF!{5r#q>K<;yH7z0If(5nmMY-34b-q z-Emt7Cq4$n_@9mMqY&?F%?;}j#jD~&S+B-XEKyP%JAzkuTWo=rRSwz5n?7k}aLKpM z85yv%9oJy0i?3T3n>E7vk!IgcpI+OPS2My+t1xwlrgFRkjTgX14bfL|ycZ#~BlCRk z+z>@&Uug-7-YwJF4}Shhuu-&#a5S11)K8?<iE6O@y!G;s!$$2;4XD!*jTR?Vjjag? z)iQa4kHBZ&_lCQrlJ2^^%sHzgY=kPc5)rj?7ZER3v86XH5iF5jDoZZEh}4~3_-sPR zwGG+s^x1gVqjP(((H1r?u0DI2-$$IACgY+merCrqUy1e%lj`x!5Esm|qf#<-%tbs( zF_<R_J1VI(N%IGs+9I)BuX4<Hq>fY2k*Qr8fP*JyX6`GcX!UoPf>$kqHv^LCSCy)( z14KlaeYeo8uPqcal_vI0e35T&h~`iS%+D^;CPi+LmatBbD6JV{qVx6uQ-Ur9odboY z2vfhp?hi>gA+WV4phgt^Z%c;Sb*ArO49hPVGmQ+|YO+)j{>-N4X{~IZWT|0w-0N_5 zbIrLfs-;=b5-R=3Zx=fP2}LL*vdfhkfgD2{94=jzo_TmNy?v62(ssHBn(cbiM=ivs z=n{AD8QT=mWEbiT7Yl})`b^RyJVeZ?(UV46sfcGDhj8>stOZaN+s{bH7jCb_U@>1| z*^DHj>{znCpVYFL*^9aeiCSYzO)Ms`LpTXv%6^=hmKtKl_{cGY^953AojecCmMvhc zf!lf$y8YUy^3H&$^bVI$cZs6Vti85c`=#LQLD_5FfFCtTKONYi(<hq|f!9j-Z;P}< z+015$h0@*WB<8rdolC?U4R5syPk>84Th$kL^IfdWyQ`Ka1nA@wTia-OS5`2V+m&(R zeMxv5X1bc_6~$T+k|z4@yS~a%NwDY<xIx?~etfsKBs0aWQ2u;czr`cP6<oLq?d#8l z)0u}#;N)qnC5T7`+_SL8%@BGe4Y-b*7S-h|Dx(Ho21!Gga^+?$g?0MEWnaJAmU<w7 zmr8-+Xf!I+MZaD}*yR?L>Tw;D445fAi7y@}GV9v`gH?7>tU<N(D+JAkigu^#^TH}l zVF24=saM7oz^eQvx_>mE?rT;9GF2)Med;HH^3->*vvw*uce+5{z>7Cehr<$fC#6pN zc1q2tQ-AtK{-=cfds1(#7I~1lXHEezARl|p`|SgjpzQ-Apsw2p%G-rM5kfd5krUXC z9)97vt45@KluWZmq_PJLuJZ?XI6+2wrKYX28vO6QzCs}N6*V^_ltxdfn4{x4pdm`B zL;yw`ljibXv_7fSezaGFk<`v+#T>gMxtSIQlLflbOpZR6^F@V@YGD%%oYg|!L)h9$ z3pv>!t3$u@RSQijDQ$3c7!p}!kdF7(k)>ojne8Qf%Z$6@BC}=MAx((?fWn=A5N9FY zdDRk4=1)mj<AtQqZ6U<#bcY_#rDFG*Vy&mwdb5seU}${_SNxV*Pcw8+CB-gi8=9zi z1tc$u6}UVu*?2ymNEq9QNSefWwtg=2FR%ISG9xR)EQ7YwLq2p~(QmI+3+%ZKX`yS| zVDtDk@<z(Xb(`ui=)*FOMquDrj-@}Vr9bLa@JcgHM+W5;*)#;A{`6F&T>6IO&E<*B zI#C{rL;WfOWTNvo!-}E=L7bShHb6Q-o(Cz?AVg$=JIqb1jjSQw;n3Nw@{o4&DQgSY zPPRK)zzo+nzKd_$ky}>?eH&A_Kq@acgv+vXB=^g4P3&{qPa#abGCNd$e4IhXvMZ{z z=vi2Y^fSaVU8eaLbN)8~m@)%U5UEa-8m=!kzsna9ETV7g{Zj$-Gm?@^L7aH;Z`<(j zmaOh8evP5OQSq~qE<eW?0Pmr4MB|lo(lJ;CkF9K!Rjr3@;bHf#DW*N`liW3$y<r0Q zCijQ8CAGs@yP7Z-(t2U#$=G)kbbaddQVP;+cYIrPjFE+qkY~aC>MkE+#v&kORBO3U zX)KR>Rjs_~b5~q?H8L+h?-d!}?FaoV>Yx??P|H76k9CT$7-xra+KA2WDB%!ugO#&> z*IA;5H}*%Ly0Kas6gB8Qj7ft$OHI}BaUP$lJXS{GqIvBaI%cD=@Gg}@5pH%i(=(iD zT<2(HFkcJUY8o_fQjpiECT(SW4L`Bv6Tw@`qgp=b@0jLceGY8_mf^E_QH{-iXXl>{ zzzY8;6dYodTJ3P|Lb}}L1{P}Dx{>i=`rxQH_?&U-ku$w4%QTW#L?~OONSqC))vLqR zkSk=tv{n!JE_d{^0(Bp$bUu0v-xA@FkMyHNm1lShm%6}lxuQCiL$TCMw+69Fsvc4$ z>CIH{@qh}jTL*L(v^!n5CXsc2*z_3rrRcj=5rYbjdZ+5ne&za@pQ&`3)iKK^T2S<x z@t#~DMc&{*o?Jrvi)S60oa7<eG}&_6_?M?E?Ui3$*HEO1HUClubGSG0_*sZ!?|>=? zeA~Zq{|J(a5OzwxQmkbuymB_@ppvB3n&QFhI?2Za(+9d6aNrL`;i=|zBY_pDFEp0G zIPcfGeRVfS?e57NtZ~pUezPrK{KmYlf}q@MsYdYQOeDXCWk88#e7WS8opAJ>9XT*k ztBO}(WC^PQit{5*PI~iZ9c1F7mJ&xE+5ztc-QNVK@GY2zh25d#)=vc%mLfrP_fMSH zEWO!a{;5#1)<TJDplk8xOCOPIeT@5^@DYyg#ku0&H3Au8F$me*nuIaF{?@_2e>fI6 z^gJKWOrlc(Zi}>Qcm@QR$jVsiT}24@+yMowG0aw)kDvN^XSmxvwybheH5pVhSgI>` zx{!4k4t*q&9-YrxiHHQ_lKVmn<w%oh5Gh4O&x7y)C^`X(<<fP-@0f@oP_~5^tq2XP zNNgy_C%&51RS+N+FCr*?_3AxjUl&ulnP00e%9?cOV`qH}!l~e`{Nx5g{`NWY)hS(c zcmiKv{`4^bu;?0bZ0>xHwUEx!!3CdKMv#C^MsOB;)3WMYE(m$ngOI1!h>OPpka>t} z?zJcCQt{24Gh1uJeq6Rd>s|vidgofxy9}7BodY@lFeo@bE>@atF>>w!`z6xp;Yfc2 zjEhM{$8mIRNP^SbF0TJG$nb|@=8*Ovw1~flmi@2L;s7nyxv8=sdzD<+3tIU$1X}q< zp{S3b9_Mt}<;)3M`8J{N;8`oXIuIYVc4J63sM0t=Ik(GCdG5H^Gy=C@>#27XeV&sP ztOs;owxYef8}3+o>jK_JNwcI7{AuZlp6f-5v+S|_wmLcy(U?><0#d<HgM5`?KRqC3 zT=6yg95z2n6Ti}J;@F)(N8yfoOr-i}fGGpws_Bhqn*$~AOd)KW+Oa;Qa{tb7f$_Tj zylgUVlrU~_JWh$!ZRpHX+jMM2Ww@dG>m3rF@*RQxSnBarOpSKHC(-HiYE=kfy_ls0 z9Bn7QKD^AIHfn1GkE>DCnH-}@VeM{8#UJtLgYGPNiJUtnlILhrF1n8c94t4jveZNf zheQerLYw`F4n0j@bdpV%!dWC=IBOc8rd`q-%}mM5@dP#7RO&~tNVXae!}UZHEEg3{ zgMT8t^=cnm5a}e7jXBt9%ddCRx6%1xwq+jlX2QciJi8#b!+htMYSc@6Qc0>t|LGXb z*<{H}B0jcsstQ3KoKOtmu&YA2gNe_R&oGc=B(55^1t;%N-@Z?Nb8a{1;IsB6NF>#n zuT+<0xb>~hfjdcmQc=iJeqDT-0Y*to+Yn<@q!m#8S*^q8-X{u0XLun+<p<K{Ob}cI z*Yt=x7qH-~o)q=`ha-<z+qFZ6Dbf}OJdMHm1o<(>HHe)FZxNlOuD~9@k-<-OU#D6h zQR7RUh7f+`{x+lld(zEz{u2_z<@~2{Dw0X(kL3qvmnm`l>|z#&VujBJ3ZKpaWCl^% zm7hHQ3k>9A)SRP-8PnuGW5#dY%in51t3cvG{lWMMZ1_qGv5=7ulb{_9i3~k;pdAgm zTZb~B9SxMA9Sv^z{Z?mP*9j<x#Do`Hn53*9-w9vT*X4wn1<UNfzmc8Kw7h2Fgq-A{ zz=^gci@_x_Zx(&WC<B(bD+mL<7{0OeG+e=9u??>i>k=r0xZOb}*w+MG+UCqxVZia! zuVSUlS=4q$++wJ=2<$LD10ZtlT?Mzef41fs4rm_eQwy*eSLlh3Lz%GO%*z!s{MIn| zbxt1rmJ|xIiPLEO_9i5v%+#NgifVpXXRo^_LazZNZPrYJ8>&BuoJXVD&gw*S9DFpu z_bz11w?*Oho33!y<C=D;ELkoG6@bO1!ivR+v8DU$KKvXh+7CvT3kk-LLvO2%F`Zp* z{dFqqncGaCx1S%mo|o%|miy%iOqnzQwY#L)mFf^XC8xk48eKfWOofINIwe+5FuH>& zz!8sWEJEwTS=;y&g^Eb}FwNZny8cDTOB5%Yr#$6|F!cSg4qT|MG$K7<+0Zy5H{Bun z``^rhGI=qVV%<W0M_7(iU}}qSF%L(TywngA{S=YTVCu8x$xlDLU(6{YRMVJwypxEt zw2GE}avXk9mij&!N9FxELt~F}@S*6UoPv$-mkSozkFd_DfwIC)RcT;U*Rsz^l?31j z+S4;1YioRyxjr2G5*zajt<52}XDjG)b32){u+^EHQM=P<isrstx4#czDo?QNnet;S z4xtW5gtn^d`yvz12!dTIJ&rPHUqNxA{)~J|a~OTczpCSW8=Wc#Q9(uyAti(ymJTW7 zcuU_TWoGE^9lRGLp4T4G#f$Ft&c$WyX%SjJXy-!u*w0M|KXKiE27#lB5BfX{rE4kf zwmA-egGP51NzINU<1C<|t>6z#y<^~P;SO`ZOmW_kB^zwwLZ>{ZVbbzHlgZXsQKLi0 zl4)GOZoCRYYYXP=c}q1HhE6rN9fcuA>(6Hjc(py1T(XP-|I(8FQj7SqzE|67zqjpN zQ%U`xVx!Vp|1ROY-(1?VnT<eAw84c2Mj_P`x>5s!34-r%Rn*Fm6PE|=Y-`UtlQQ1P ziqy3twDj~&JG<Cs))>3=^Q!~xASx<NAAyRA%oX6m&^6Qk6br>D^T5Qp#M+xJoYEgD z$(j)58EW$~SOfFq8;>#d<f=o-yI{INd1iZP*f0g2{)s&sPSGKVnAFt3?Xrqk9f#R< zd#hO3p{M1=jPIIJY)tia5a`CE0_CYy22k?B%_fP`tw)7=xe3t|tHRGh8|w~&-=s_$ zQfplTHG)2sTzsLP4bLoy8BDj~w<&p1$fepwtHlYfiEV62zz8y3zkOshGXlPo#2!$M z3M|JS2Nn}gj0`$`u9BNkuD8`@XIMs2&M&{sGR|C&Mp@5?E(GIT7j@ad<Z~Q&-SeEE zF`x_e-8)touWNClGDMMlTA<H(MVqcl1D*e(C1<+>(VpO!jvNClXBFIcI0^tt0*NVb zCJR?C>+Y}vJ%9QGJ;)V%5_Z(Wy|do%J%$_9eYrg)6H7i_I-;eEH{JT$^A>GRno3|s zCs@TH1IQW{?zOF_Qkc-49=XWXIB|X%9zdOy(&<5uZD|t=w8Pfp6i#)=yZjGN9WgP( zcTC6NuWsWh*#2`n@*h6k<axlFFi+jHCd+@Ftp;soUh-&M8uB{-rq}Wc19AKO(Uv3O z!5oCy>m;GP^Y-=G;(BM^;|81cK^VYkWK4twB?X7@S%nXQTVOqR$ap>TT*l7v!Z}ZL zdfE?KV^hF~=hO}GlIKZwSsSFH;)KHWV~)KqDGvHO1)-)ct!62*Xvc)3Xgh5_VS%Ua zLEqGUJAy|KEs8HTQJzWd`Iw=#!f-9R+2!aVRRFH44{d!n%PmG_q=KMmBNjvVB8hFb z(NqLDAnQFADWEHJnS^t09cC)zrq8x2h|;U>S`ofT57rNPWo*7jO1nLR4nYcdQJ{ox z`MegoZwpV0h{J*hOkBbU0fXD6h>Etp>5^UD)Lx^7Q3C3Z6m<`8lSUWu2b2TV_hy0M zuj2=;iTO<Sq{RX+dePp{5wscGsK=HGv>AJ%2E<LY*Mc@<cM#?sO@o#b1^Dx^^uqoN zE5UPJ=(1;R^Y%JziH#dyd}RD&YG{B_k$AgaCxIJyML(Oce+VFd{D7RruS*W0|DGa= z2xh$Z#GeLv;=cj;d2R$XS^sf&17x4sBKFVrnOscJ_Bf#y14!Vs4Z>Ym+Dr4g#MSD` zWoX&#kD;Okj~)3c*8s##N#y@glJ<||H9mItyLf)qRonOAH<{{h95P6W1&{X6UWD@i z;wWZxEBY?+TGz4K6UE&&I0d4{WT!|KxcFbwg@5ih=E?(Ufb>z;b24zhakP)7g7Ejj z_+MuZKz^xu@&Cdvbq&qu{jt4$RTa$?yM=Fvl|V}fd)wN`&XLw1kG(w<HOwbdfRt_G zzpX~V_HqMpsB0nry)gL4FYr&C9oIC-MfK;w1x(%_98G#?oT2F^hfIO~)T?+s9zEun z3KSX{Wuvn%7bX?-XYX>00}6V0FAM-luS0CMi+LJ;Gc9G7|F4*q_TQV9{*-;_R@}pZ z7wdl=((-{`Y^nc_M`-CodLjP%Yk>OSdkr4O$De$jH@~;!{24|@_hFRn_rEauKiZ=I zh0z}d)Blgcs2>&#=J~pZI3KQ(qAqamW}<j4uQX$NO^wQJEv)0~Zg9|Bq@cXOke!$N zI=7fR78O!NA%PM%=qGfJdQ<O7-Lu0p&`f-1HX4N6+iWIohcn|#SE1AYb6xY}Q*VFo zxP}o`+NTfg6L21Y$NaDNcifYW|H2*T!z2As9BKJ(kIR6vvcz%33DuAyiFqetW5S$4 zw=fo3%5?$5z{%3wqRyVC5cer?6K)m6{_4s1fAF>fp>Vtbo8ebalR?s|*WUdIKEH8l zdL5lpv?d7xkE%V;Z1N2VRskwU<3&5CW}$G?f6P_*)Ce_h0XH^9(k7vPX{yfCAEfJm zj{B^WKKkEC*A8()L;!#TD$h5#<FC1k#I(8I?FDM-#Xu)i@l4C+-V}#3#Qua-2b@r( zRHA?Yu3(UmrY*M*%KLL;y4O7xKF%il6y^aI+Wz?whzBmYa^B`L))_qxCtpZFfP99A z`$f|qEh<I(NF>pOKQ@C-yX#ffY$2ABxEa|i7mG@wjVby+hAuv(i9+yR*}QpsaVftq zsU!9=y_b6b5D3V9&wFCO+OU6GO_mDs-JyKwXD*~k!K~MhD%Hy-v&bFxDe@L~MEiDT z+qC^-u`_Wc-k5Y19who<yoPDdGxUt)l>q8&TVBspZWLfOKu%ADPtFEi+uf_xF#L#x z9tO@ois}Rk{jl?(fZh{v9H{zw>8;%K&bV{nB=H}^_fZtE!##SfI~irkngPpSFHa-R z!*qsqpUyhuen}%fF}K;b>ih|oHIHWbd9!8=ROZ#nj?V~{oV-@V4X<Ex2G+P42Q7#2 z-2!K(S)5E&mIG_+0$cZ8HJTL@O>+%@xA~iBKa`f5g^ZXF6DsGqs|?Er*vTW{7Pvu& zpE9o9J~1Zh>`%y7Eo_QuU{lrDUq71jsDBh%X^ockBADanpWRsff|xL}$P-f))VZ-= zL5EMQXj=(SrQ0fdf-RWCP}8RU=(;D+3Q;LNYnk{~!~Ipuf(RcMfWUKVThJPRF()I0 zOl5!bu{oa+oJBP4*k?hBw^o8pc1&@4Vso=q^*x{T3N}Q$E)C<gO!VoOB41}HUg{Va zYmwq!KY4is@}J2;V#|pPi5%DWUlB`nJ|?nfPvm4P1VyW2bIw#KhFP*~!W+;_j1+!} zqo%Eb6xidm^x-ZcvhItAwFR%vy<S*VQ~S!QtEXmGyQ$?)qn{{KysLv@K!<7cil1@! z?BdP^Dl-;?I8(JRr88#Oin_!~s-tajG;1l4ZhxmzTfZmIO7}!&<v7dFe#SwRl(@a} z`DH<8*LF~@2j0Q)JER+Zv#`A`rb@ko#3=9nD*sqbR~;1~I=QATOCmdltVm#wJiw42 zR;#Qp4SV`be{&d0LE=Qr){NzDp=CVn8Y5EhHg~nUm#FXV*SzP$lJMa(Xfagd3b1+^ zn9g^TvP&=AX!*N|N0bo5y$AhIA&&385QpsZ-$1-9a4x7&(#_3*S3&>?-fe{+?fTBN zsPM|TS^qJTNWF`%F1JN2mY&v`dZFpgRu+t{seI<C?6^x>uQ~d0$}gpxI!4@JGEpH# zp)!OlUrAwm$E9|OmdFpCPL|tJmSoo%9zA{eOJuZ$>oZ70VTfmxv3J8bCb-tgvr|JD zr#n_)F{r_swQ@J{wpWmd?WNkM_N8w_2Z<^~TH2>Dl$NkCUOz7Rj9uOLv792=V<N|y z?%f<%ANT5dq-0-c`2@*6JyOg3o)ZLLj~dboczUW(TdCB~Vvk$!aj4hbYDmn{_x5a< z(j5f5f3%_yN3)(@B0-7DcBn1*mZQpaB+0h=A=~C=Zqf4&+p!@%b%!?Dd;5CuCg8=4 z+JUqAg~Iyy^D_g5;AVMn7Aj|7#qPHQdh(7Poe0zIXNB3Z#7r$*6m-{1bkiZ)r)lO9 zcJw=V1rhOD-oZC)M}<Fx!}Lso(0fq)e_V0PVZk_G@G47rW#@%*_6ht7mqsL^2du%< z?^SrlFWig=+Dzy9Cu$uQ&{mD_O-@+Dh$20vIjtK+M^6XXgDz#_Oi8A)J4c$ry4f1; z18{viy$daKU<E;2+J}YLF^HWtG;k^EoXA0lp$N93y$H53u>jxg<@OwO-;Z00!cjqh zt&Nq=mu9fQdc|k8C&BZ{TRw3W0$~Psb8RgXfI|m>wk_&LC8Cg#t<FfY5;}T*pWiRg z+m8Wu*02w2%Y)|&QA|mz76g>wjTQ}h)_>}tmRHuZKfcZ3L&E2PZ)I_fNfZK(Qv@jE zc6GD}3GF^5F<kW#a>>M0IWs|>!mIXDTsUzsq!tE;-x(r|3jw$Dj&U}XU|D_QAV{O1 z)|gRDBjIx%q~Oc}h~N|u2+v=5+sZSh;;!aT$Sfm{bE`ip=!hH6qaB&w->!Dd%#rVo z71)~aK8Gk!bXrNLzh^U;;Y<9}BO^9JhD{BS2sz+m)^GY|PaeZdXLn{R;;<Gscaf}v z;WX{G=w;8&YWB80G)onK2Ey?j32-d|!nH`_)XkgNy+$~HGjB$4Ysm(>w<Q!;H?AA* z#1$+1IL^j;oY4pA_D4K`i(AWs{9(eBqTPVhHw*{wkPmy|VO_#vd=8%kp}B+|)bW9< zez90UyHP8@g(H>;E5cs-uGqDGHFEP(iG&J=nt`#sLe_E7+u71IE!AKBY0S00lIk^n zVMA#rNd7yuCwQXTTUDOf;3@tO(p`nJ@1hEfjKJ$($?oAb_3*h-RjhFdSgm)-JFDvV zR`VCK@=+syQ0zUv&yJEW|3-GyM>`~+2|kMrN6ubN2DNLGdc!Sjd(|n~nw;EPcb^}j zMc&piHf}n7LkN}7<x5qqM1He~PT<g@n=v6(In$6}DM)zn22m+~Ckw8r-@ZX7+u4&* zVgRXZ+{=~3=(rXFlw~AqfCa6gl?nr@VZjL&{y`>Wo{St{J&Y^FAIyF9^Mf&5NjE2r zT*Z?@i6(=xbU@wRgny+Led8j-CT?HVU8zS3W}u5gZHBRe4P79TZg1JZS9yZ5e^Sn} zp;jpVuAEgNAezwfoeKqdYv=A8#Bps<PV;SihSIuP*R@BM-{cw7ra5nj<u2WqN#)`O zL7V^s8GDK>=B?Kt)z6tViR`ZLN~bgir#g+yb{BlgM9e!X2ube8P0^nOQ^$8U395?g z`iP47M9*qPXZFBXyV!A%`r82JOIhT`x0bF}t(|7CKTK#z=%81a_{IW>h6F@Ai(mP3 zNnl)2vG5aMc~(I3nrAPPN2K_#=(k-X>+{QmmERmwIPILF99h5fB8)9e2o_d&uTa(c zJliTLMrJw~(E^z&Wpz@Pr`+ki%P;8s?>L^Emk_xJPK*~$m`tF1?`36w{jZp7Ot|-S z{K*$!-iJ`&-vL;l5Guna=I~#+;Pn4cNYfZk(^Hl-ZEr{XNg3%nE2Ve@l}ldUe^=kr zhyGyfU{Qpmw<}I0jnG*&`RmAYz_Po#Cu2MMlWPVj=@wojZ7S1TurzYM()34f7TZ?p zJ@yuz?B*nobgpuE!q6;S^@k_6TBi#en)35eRLrM^*7l$uDsI=1eOiT=Sk`=!hSH1g zsziEHK3F;<zTHJizSX5cPAIia!2}|zQ)z^Rwz3Ypi4*C~RCrBW^}O@?2ifW;^HKgU z&g%`hL1;?dgImQ+y7=Atu(IxHOUkph#WG)53@>Qmw?-S~JN3sLkXNXs6O5L5o~u-S zdGuwGD|Proq~2iJi4i|>nP&yGOK!2HGOm+hO@iR+P4yzqhNr)`VIK0=AR5bRZDs!Q zCkUz4*bP0X&3D}c(SkOpsc>kus!N74bD_KF@;Lg>(cTRTma`_}b<m{4QYC7Tr7F0l zr?+gpw491#3DB{!xYbv2s(SPFrm<9MVCE`nGW~Hk2gr)>rbw;kPdS0U0sD5&8+XBp zjsyyk5&8-4UtyJF_<(hj|6Y-{{;EFytOztxx|7WEg{1~O{N?ladvq=1S7$m$Qw<;I z4QV=Iq=TDcjCE%EW(TJlY#5f~#_G#iZF;f>@v`jFFs<-p%|deDDO>OC*xl%!F*!qW ze+l=O^-!;vm<LJDnh91i1^KC8P+<O=BW_fE2?{)-YrZ91`<v&+*Id;FE-z$*xl~s< zjtp?-^R==QL{dkbP1_xN*+)4e(w;bby3!U_Kbp8Wm4R1B<N72SKxL>IF@DJjB}32@ z58OUY+t$A&YmfkKZL_sOeHZV*f9*qTn-b+cOY6(IOZ?hsFLK<Wc6ov0<f&Khm0cUF zy{y*mxJ5%>l@^lD^mbD3o}^-%F#h@Fqx$o0D;2H+Xx?6-Jd!<%+^FoAM7>FlSfB=R z2?w#Az`;A;`bG3t({NBTWlZ`83NmlL6}DBKMnKB69sl|RAEt+g&q68W$Xmeb-iCDN zb6(99h(?(Q5C@0!!K;q&JzL29oos=5h@AwP&3~gl6Ym(zwbOn%S;?UtWGiCj&OsC* z7GHFT=U%d8_nwH?e<WKrQ(w)>-cl1uH>n2%YAZJCS_61o-pQ;pEF~F-w^v~`z-qCT zH5HZE^WI*HLoVjeqEuhzXg7cr@f|{pO>%Vl`w#yVn1JBj8mSK^|9)>M5{Yzvtz0pN zsH<!{)}p|`4;*9Zh&PJ1n8Zg?@4~w{!7dbyd}xm$lDcDsMdsG`{H49=7>3HQb~3)p z5ACL+K%&?39f?1mV=-b>M4Uikgu&3-{?oH9M>u3GoT8(SFsC-wvVJCYZb*-83wc*` zTDS&nir!BNPp=>MR#CwbB(i@U+y5>`F_S%ce}<~siME+-V=ANCCHVE|rKp7?ZuS<{ zd_XVx0YD)*1B7txvQLKZ-`Pf8bM-3}+I;DAyOXW)j&!g5_R$Mk!9OK$lUsvsJ#}I{ zvZ79Gc>b+g-5~H+1M(vx@`DoQ{e20Onfo_Nm~Y63eiB?1`~>6Id~lT~JN}NhF*b;q zI_t>j+bnvC^Tpqo(zR<{bEvgKQl0vd6wza69^uqK1`UmK_DST*!C(v!g$)63pAZSo zNN;;x;Wuo?hB_G0rK7oo9Eoczpp^RkzSRX3zd}JmFXlApyQ@)=?{xSJufQkV8S_Ve zS5iLbyH`>&md~Y6E9G<bUhOEZPc906T`Q`!9_jh;0w-!p7TU!UStL~<uq~J`O-*)r z=$foSqk{+Lx!wi1@G?(#O(io{=Fv9=W>H_1>|1P3JeOI^rUlX^j})Sf+h!NqGhXeP zJ@>t{twqXw5)d7j;)-#JgyWarZ*gOYF`X(paK~8E9-It_+h2>9GwBgl*k5gF?}0(g zG?_u}eO=DR0Gj%osvT5;c7gSeGM1qiNd-`~I`Kf}%tWLa%d|SBzmzO@MIs6@NLS~f z&~o*T(bioF-Qxci>H7G|uVno2O@8<+gn+t#c%Q)Wm-aHq+JNFtqdI~U=s)>|M=;6v zhVMVsv7+DAv21@w9gB-{=-2K_J$FluRls2N0n;}bK_rR{LZIy;(|=H6RuhNEP_pu| zWovR<eEcM)B1PUlNVvyBUry7^Iow8e*XQ49&Tv`;+W5S+r-HnR_<wvaVuYS`ma0R$ zw8N1MaDSCy_2+BM-rH?$9FIsk%VTYi+zW9-Tb#eDho|v6A4YxZ()<k@=Z@^PM>&$F zG0}dU_@(5n^+NC`ZiV%Q6(oqw6EHox@;>OTInYe)?NN&#wU`rW<WxYJ!<HlHmOl~j z8oesL8zKj-SY7>p*n7*kDAcZdSVaV+q>&VnknZjjDQS=r5NQUa8>AZq1W5s<8)4|~ z?iyf#p?m1&Kb&(^-n-7Z&+q>BKHpI1gIu$(eeJdO+H2?23Q4ej`9sW@Wgv2YKlxE( zz|&qNvDBh<b@Jrb9|9le6QwXO)+)!;d@uu~<kl(&J^lXpsSiinbM?L9->X=$x8%r9 zPs_l63`}|uRw=nHmNgAO!?vIoGO`wmy@p^3VpTmB#5(!&?Q>pLa!<}~SP1Kyi==`A zF#GwfiJ`I^r>Y;*Zuf7XC|c|<DEgNh!tIocCWCO{mz3}Tyq;E`>ulb}!R^C40 w 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 H{``Ld5~uGO diff --git a/.config/qutebrowser/quickmarks b/.config/qutebrowser/quickmarks deleted file mode 100644 index a44c039..0000000 --- a/.config/qutebrowser/quickmarks +++ /dev/null @@ -1,8 +0,0 @@ -ys https://www.youtube.com/feed/subscriptions -moo https://moodle-app2.let.ethz.ch/my/ -fit https://boards.4channel.org/fit/ -wsg https://boards.4channel.org/wsg/ -bant https://boards.4chan.org/bant/ -mystudies https://www.lehrbetrieb.ethz.ch/myStudies/studWillkommen.view -out https://boards.4channel.org/out/ -g https://boards.4channel.org/g/ diff --git a/.config/qutebrowser/startpage.html b/.config/qutebrowser/startpage.html deleted file mode 100644 index 20d3cd8..0000000 --- a/.config/qutebrowser/startpage.html +++ /dev/null @@ -1,9 +0,0 @@ -<!DOCTYPE html> - -<html dir="ltr" lang="en"> -<head> - <title>Startpage - - - - diff --git a/.config/ranger/colorschemes/__pycache__/__init__.cpython-310.opt-1.pyc b/.config/ranger/colorschemes/__pycache__/__init__.cpython-310.opt-1.pyc new file mode 100644 index 0000000000000000000000000000000000000000..364cc8334a82461b8498e4753a8c7f535dcbf850 GIT binary patch literal 143 zcmd1j<>g`k0`{QJBoO@=L?8o3AjbiSi&=m~3PUi1CZpdg`k0`{QJBoO@=L?8o3AjbiSi&=m~3PUi1CZpd&|$LokCTqu)w~A|@dJGf486k$y&gZmND_ zPHKg|UUGh3T4uU_QDRFoN|bS5Pt&7g$v@A8xkrZf$#|li4zh6LHK>uGrMb;QB{49-}k7m zy1(jbWu@cc*S!1V@lUoq?-4WSe-W4)82S)X?&W^zNk8#rkOVSJLZ4+p8OcV{aCBJ4 zvY9kxD{0Ag(w3d1BfCjg_L81lNmk@)vMT#YUk;LiTuavEda^DrBp2jHvLQEXRh{rW4fe#@>dz@v;q>x|Pr{|ms} zz|a>l2`}+;F9}4LM7f^_54@z2huCgpo44zr85=Br4G=tTVdxieGRFIEcoLk1C(*J0 zrcWK?-Sa>N^e4uIeY~kLEJ+c^g)reCSgf>!;{%n1}RN)5eZaEwu@LjsDKnR(;T) zrvG4mivA64sAABUU>mWgWn5K3`WZ+Mv3?fo(`pogbL_qOIrqFh2X5@1A4KhY-@wxZ`_Drv z-FcsvJ`d^Pa(AcL7a)BAn=iN()#bdwzX<;4Sg&IJsf&Q~0sS-NwZw2PjA8k^E~h|+ zr@4I*(nqycKjPh-#{3dAzv7yy??L|(xL><^ejD7E!Tpx^tX>0m4cz;VdllSQ!2Qmh z<;&o%gZqQyUIO=3aDV1^PdyLr#>0U44GJFydh4;+u+sm4=4Igj<*YA(y9s>Y;%tDs z1+ML$lNE5c!3|uteBRgCbA2Yq;c+zK_7dD7A1!3~HQK;p8zi(awo|Cln5qLU$hNd7 zMP@`!Yd}!UQ{Q2Q+%reEA&4rXE{o!EMLGCYr`kS%v;uDEMyY z1;KYkM>Jr4lcx&|>WD*;%}qKk(N$A*WTQzjscfvPY*!d+GbYZ(evzSnmxV$vpH@{) zEoW@f=}4xui&T0n2;s`cS+!SS8|y6TN@T#Dc`lWW9Tt6joaTi>n3Y1MxHT^c-Tguw*oI5c zp(h23)^#4#q%1OHdtm0u5biug?yzc>s_BBBt6fzcD9b^y3l?)C`bcFCTTF4=LCAU% zvO+GbR~1Ubvay&IDz`0==}e#|92TNv19X}2tjM&HQ zM?tS%LGwRa$Xk#Ci2>?^;Dc5efr^>KsBKzKvI>qRY}@kJ7l>BKNO;6rTk-7tBYN<| z7UB$8@BU8WBDUaTX;H^vp5yV#|C*|Oy6oy4d3Lru1H*LfD;NZftKo_}I=(cbVP9 z#P7c5F46KLzZW>!o#7MgcrrJ0f@9(@847vgZ%VsWpY-;0Uf}HA#}c15@du6_{I9ZZ zL9SKs+wOXS>nyGZxfj0fHk^rTRdsW5?TcT2*I``0bIG0CgxeGE#I~;0Rk+UGQFEM) Luov9+H=6$ism%2g literal 0 HcmV?d00001 diff --git a/.config/ranger/colorschemes/__pycache__/default.cpython-310.pyc b/.config/ranger/colorschemes/__pycache__/default.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ff7c6ae8ee4a95c1eb0b130b2b30a386376741f2 GIT binary patch literal 2855 zcmZWr%a0sK8SmHhJa=byy}NO6obWJ@0kTU-h#?r`*hUEloM0o6I-pTccg;*^yQ-J3 zYW5L!B_x{zLP9>FoN|bS5Pt&7g$v@A8xkrZf$#|li4zh6LHK>uGrMb;QB{49-}k7m zy1(jbWu@cc*S!1V@lUoq?-4WSe-W4)82S)X?&W^zNk8#rkOVSJLZ4+p8OcV{aCBJ4 zvY9kxD{0Ag(w3d1BfCjg_L81lNmk@)vMT#YUk;LiTuavEda^DrBp2jHvLQEXRh{rW4fe#@>dz@v;q>x|Pr{|ms} zz|a>l2`}+;F9}4LM7f^_54@z2huCgpo44zr85=Br4G=tTVdxieGRFIEcoLk1C(*J0 zrcWK?-Sa>N^e4uIeY~kLEJ+c^g)reCSgf>!;{%n1}RN)5eZaEwu@LjsDKnR(;T) zrvG4mivA64sAABUU>mWgWn5K3`WZ+Mv3?fo(`pogbL_qOIrqFh2X5@1A4KhY-@wxZ`_Drv z-FcsvJ`d^Pa(AcL7a)BAn=iN()#bdwzX<;4Sg&IJsf&Q~0sS-NwZw2PjA8k^E~h|+ zr@4I*(nqycKjPh-#{3dAzv7yy??L|(xL><^ejD7E!Tpx^tX>0m4cz;VdllSQ!2Qmh z<;&o%gZqQyUIO=3aDV1^PdyLr#>0U44GJFydh4;+u+sm4=4Igj<*YA(y9s>Y;%tDs z1+ML$lNE5c!3|uteBRgCbA2Yq;c+zK_7dD7A1!3~HQK;p8zi(awo|Cln5qLU$hNd7 zMP@`!Yd}!UQ{Q2Q+%reEA&4rXE{o!EMLGCYr`kS%v;uDEMyY z1;KYkM>Jr4lcx&|>WD*;%}qKk(N$A*WTQzjscfvPY*!d+GbYZ(evzSnmxV$vpH@{) zEoW@f=}4xui&T0n2;s`cS+!SS8|y6TN@T#Dc`lWW9Tt6joaTi>n3Y1MxHT^c-Tguw*oI5c zp(h23)^#4#q%1OHdtm0u5biug?yzc>s_BBBt6fzcD9b^y3l?)C`bcFCTTF4=LCAU% zvO+GbR~1Ubvay&IDz`0==}e#|92TNv19X}2tjM&HQ zM?tS%LGwRa$Xk#Ci2>?^;Dc5efr^>KsBKzKvI>qRY}@kJ7l>BKNO;6rTk-7tBYN<| z7UB$8@BU8WBDUaTX;H^vp5yV#|C*|Oy6oy4d3Lru1H*LfD;NZftKo_}I=(cbVP9 z#P7c5F46KLzZW>!o#7MgcrrJ0f@9(@847vgZ%VsWpY-;0Uf}HA#}c15@du6_{I9ZZ zL9SKs+wOXS>nyGZxfj0fHk^rTRdsW5?TcT2*I``0bIG0CgxeGE#I~;0Rk+UGQFEM) Luov9+H=6$ism%2g literal 0 HcmV?d00001 diff --git a/.config/ranger/colorschemes/__pycache__/default.cpython-311.opt-1.pyc b/.config/ranger/colorschemes/__pycache__/default.cpython-311.opt-1.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2b7f5fe1433a9e6abb26a0684a4ab81a92bb0ab5 GIT binary patch literal 5802 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 NJm;8ij=*yd{s%%f>rnsz literal 0 HcmV?d00001 diff --git a/.config/ranger/colorschemes/__pycache__/default.cpython-311.pyc b/.config/ranger/colorschemes/__pycache__/default.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c1079fccc82faa16505c2189cae5ad2ef7a3b58b GIT binary patch literal 5802 zcmdTIO>Z05aliN_ilQiyk||5FWZ71fI#O)6QDQquE6YfOqy}0$J#38dYheaaW~^ zTuVu-H*e<6_sq`Y?^CHB0Y3lu>$LHkA^4Ag|B190FMbV+2ZAo>Vnwh-RkS2kvSd{j zaZjo!Rz!`kwOol>F*Rnz)wq>V6IPGfV@_{S(0%nWnWR*Qr!JqhMOA z4)JJQH`h$pbZpwUN=(};l&W^o19(QH$tzC9A=it`hGop8X=JIQ6<4UTRH+(NDQ;*s zjg*OD*feHoWyAI~DicGek@aQMGiY?fs8pPF8qjL07znVnO1I)cl(q6p7 za7*!6cC>c3WIN{d2C;B5=EH6bAbu8P4)_?*Nd_F}1USev|Fb0lj&mhL0Hu5!iF>2| z8Z86)<3Si``+fM3MC6*`xY13;JLN-ya3>4g6z@!D2egp9S32+=&;jJV4_tEoE?Mwi z^Vb4;k!u~)1J=Vn6|6DB>{C*nLPWmcQE`uV)#i(Nq-S=>f^ zspMqX<3QQLWxHv7gpS8K#~kqBQG_U6^f7{9NB=9HTz7I2&hfl-FB~B|kYzz$C2387 z?0Kgni)BxM`bh6~WL^agCVURePm?}G=DX<=s+O+N3+9+EuCO{J8Q`_(bLQC@(j7FJ z@+rtn&@-f`n<3fD{@*`9a_60cEsp@#Rg6&g)eU)=c1H^3vor0WXyAQCP z91Ue9WJZ^60al1`<~yAKOMuRDXe=Zx9?WvcJd_r+@v!fBbjVa#b|?TZV3GG-BdxOrX>RlEnQ)(Sb?Xw1Ia*Hwo}|$OggoOfYu|6o5c`jN3-B>S;?A zn2$AkgDNGnuFxqMT+FAK`hh7JB3T5CF0y+Hw43V!4WiCaWow+2?MLdfy;yI z7T`>4+NZI#qRSLWz@q3_mg%uQU4!d{;u*I+npif=%N6+ZT54(T%9?4c(+E?LQI||` zT9R?FOBJ)|(Ov+mwnyOh0+M?WwXE6Y_PT1X*v`65Q7Bk}+o*`UVHX*#S%!NHY$Bc* zmIJyV-gdw>xVL01o3>8lu+)|f@CnL>Ta`h8)l7sckU=FH!?2?TQmIU(r7~4C&m%5g z7ANrY^4#3AV;OT=#kf5;3&bU}JV#JVGS|Kf;Wf;iYhRFNS2w6!b&Wg8_HAbt0L&uy zx4`ogVSo7a-QI0!d!eQrBnLiwyD7M0Vtjvaa<6ytAeF7BPCOS@VW*KEs;5sh1tm4U zKRjMj_H!dOsV03jJXTWx_t{oc5L5Zbu_r0E*v}oSNx1(pf@Ax+(H00~N@}t(IC2jp z$(hOh{E6B^ZQ-l@L~VhImjoOVb*Wnbpbh0T#Q)ADj>#ts9D{g6HFtC6k@3f z@KE+R<17YE@~xcURRbk%nG;O?ZxA!uk zIo^dTn5aP)joiD$qz0UbF%9Mmh!s<>HFEiS?kvj_^sfY!*UJ9vZuVhhC&dbnRR}{d zt%9f{4q=&t-BMzLMVuAf1SU&tC(W8bJvrVKl8JMuG%M>?&{zr)rl3gdI5cJ=O$wilTm5R_EAQLrf2Gp9id z+yO_ncOccF8L-~c*@=aBfDbl?6SdLz;;JUX^_(fH#v@oq90B1w;5j_4Nke}lE20ri`686Ap!o^#~ zC;SJ3v!@I-m9i9pV(I>Du|h7_W`^=Yh literal 0 HcmV?d00001 diff --git a/.config/ranger/rc.conf b/.config/ranger/rc.conf index dc1d7de..e104a0c 100644 --- a/.config/ranger/rc.conf +++ b/.config/ranger/rc.conf @@ -281,16 +281,12 @@ set save_tabs_on_exit false # Enable scroll wrapping - moving down while on the last item will wrap around to # the top and vice versa. set wrap_scroll false -map gNe cd ~/eth/negotiation -map gMe cd ~/eth/mech2 -map gWu cd ~/eth/wuf2 -map gIn cd ~/eth/inno -map gDa cd ~/eth/data -map gRt cd ~/eth/rt2 -map gCh cd ~/eth/chemie +map grm cd ~/eth/hrm +map gpm cd ~/eth/pm +map gre cd ~/eth/recht +map grt cd ~/eth/rt2 map gvl cd vl map gus cd รผs -map gco cd coll map gz cd zsf @@ -741,4 +737,4 @@ tmap eval -q fm.ui.taskview.task_remove() tmap redraw_window tmap taskview_close copytmap q Q w -map shell st ranger '%d' & disown +map shell st ranger '%d' & disown > /dev/null 2>&1 diff --git a/.config/ranger/rifle.conf b/.config/ranger/rifle.conf index 6aa6e9a..7375f67 100644 --- a/.config/ranger/rifle.conf +++ b/.config/ranger/rifle.conf @@ -54,38 +54,42 @@ # Rarely installed browsers get higher priority; It is assumed that if you # install a rare browser, you probably use it. Firefox/konqueror/w3m on the # other hand are often only installed as fallback browsers. -ext x?html?, has surf, X, flag f = surf -- file://"$1" -ext x?html?, has vimprobable, X, flag f = vimprobable -- "$@" -ext x?html?, has vimprobable2, X, flag f = vimprobable2 -- "$@" -ext x?html?, has qutebrowser, X, flag f = qutebrowser -- "$@" -ext x?html?, has dwb, X, flag f = dwb -- "$@" -ext x?html?, has jumanji, X, flag f = jumanji -- "$@" -ext x?html?, has luakit, X, flag f = luakit -- "$@" -ext x?html?, has uzbl, X, flag f = uzbl -- "$@" -ext x?html?, has uzbl-tabbed, X, flag f = uzbl-tabbed -- "$@" -ext x?html?, has uzbl-browser, X, flag f = uzbl-browser -- "$@" -ext x?html?, has uzbl-core, X, flag f = uzbl-core -- "$@" -ext x?html?, has midori, X, flag f = midori -- "$@" -ext x?html?, has chromium-browser, X, flag f = chromium-browser -- "$@" -ext x?html?, has chromium, X, flag f = chromium -- "$@" -ext x?html?, has google-chrome, X, flag f = google-chrome -- "$@" -ext x?html?, has opera, X, flag f = opera -- "$@" -ext x?html?, has firefox, X, flag f = firefox -- "$@" -ext x?html?, has seamonkey, X, flag f = seamonkey -- "$@" -ext x?html?, has iceweasel, X, flag f = iceweasel -- "$@" -ext x?html?, has epiphany, X, flag f = epiphany -- "$@" -ext x?html?, has konqueror, X, flag f = konqueror -- "$@" -ext x?html?, has elinks, terminal = elinks "$@" -ext x?html?, has links2, terminal = links2 "$@" -ext x?html?, has links, terminal = links "$@" -ext x?html?, has lynx, terminal = lynx -- "$@" -ext x?html?, has w3m, terminal = w3m "$@" +# Commented out since i want to open htmls in EDITOR +#ext x?html?, has surf, X, flag f = surf -- file://"$1" +#ext x?html?, has vimprobable, X, flag f = vimprobable -- "$@" +#ext x?html?, has vimprobable2, X, flag f = vimprobable2 -- "$@" +#ext x?html?, has qutebrowser, X, flag f = qutebrowser -- "$@" +#ext x?html?, has dwb, X, flag f = dwb -- "$@" +#ext x?html?, has jumanji, X, flag f = jumanji -- "$@" +#ext x?html?, has luakit, X, flag f = luakit -- "$@" +#ext x?html?, has uzbl, X, flag f = uzbl -- "$@" +#ext x?html?, has uzbl-tabbed, X, flag f = uzbl-tabbed -- "$@" +#ext x?html?, has uzbl-browser, X, flag f = uzbl-browser -- "$@" +#ext x?html?, has uzbl-core, X, flag f = uzbl-core -- "$@" +#ext x?html?, has midori, X, flag f = midori -- "$@" +#ext x?html?, has chromium-browser, X, flag f = chromium-browser -- "$@" +#ext x?html?, has chromium, X, flag f = chromium -- "$@" +#ext x?html?, has google-chrome, X, flag f = google-chrome -- "$@" +#ext x?html?, has opera, X, flag f = opera -- "$@" +#ext x?html?, has firefox, X, flag f = firefox -- "$@" +#ext x?html?, has seamonkey, X, flag f = seamonkey -- "$@" +#ext x?html?, has iceweasel, X, flag f = iceweasel -- "$@" +#ext x?html?, has epiphany, X, flag f = epiphany -- "$@" +#ext x?html?, has konqueror, X, flag f = konqueror -- "$@" +#ext x?html?, has elinks, terminal = elinks "$@" +#ext x?html?, has links2, terminal = links2 "$@" +#ext x?html?, has links, terminal = links "$@" +#ext x?html?, has lynx, terminal = lynx -- "$@" +#ext x?html?, has w3m, terminal = w3m "$@" #------------------------------------------- # Misc #------------------------------------------- #Import calendar files into calcurse +ext sc, has sc-im, X, flag t = sc-im -- "$@" mime text/calendar, has calcurse, flag f = calendaradd "$@" +name ^.*\.bands\.agr$, has xmgrace, X, flag f = xmgrace -- "$@" + # Define the "editor" for text files as first action mime ^text, label editor = ${VISUAL:-$EDITOR} -- "$@" @@ -93,6 +97,8 @@ mime ^text, label pager = "$PAGER" -- "$@" !mime ^text, label editor, ext xml|json|csv|tex|py|pl|rb|js|sh|php = ${VISUAL:-$EDITOR} -- "$@" !mime ^text, label pager, ext xml|json|csv|tex|py|pl|rb|js|sh|php = "$PAGER" -- "$@" +ext rs = $EDITOR -- "$1" + ext 1 = man "$1" ext s[wmf]c, has zsnes, X = zsnes "$1" ext s[wmf]c, has snes9x-gtk,X = snes9x-gtk "$1" @@ -155,6 +161,7 @@ ext pdf, has okular, X, flag f = okular -- "$@" ext pdf, has epdfview, X, flag f = epdfview -- "$@" ext pdf, has qpdfview, X, flag f = qpdfview "$@" ext pdf, has open, X, flag f = open "$@" +mime application/pdf, has zathura, X, flag f = zathura -- "$@" ext docx?, has catdoc, terminal = catdoc -- "$@" | "$PAGER" @@ -172,14 +179,18 @@ ext djvu, has djview, X, flag f = djview -- "$@" ext epub|mobi|cbz, has zathura, X, flag f = zathura -- "$@" ext mobi, has ebook-viewer, X, flag f = ebook-viewer -- "$@" +mime application/x-bittorrent, has tremc, flag f = tremc -- "$@" #------------------------------------------- # Image Viewing: #------------------------------------------- mime ^image/svg, has inkscape, X, flag f = inkscape -- "$@" mime ^image/svg, has display, X, flag f = display -- "$@" +mime ^image/x-xcf, has gimp, X, flag f = gimp -- "$@" mime ^image, has pqiv, X, flag f = pqiv -- "$@" -mime ^image, has sxiv, X, flag f = sxiv -s f -- "$@" +mime ^image, has nsxiv, nsxiv-rifle, X, flag f = nsxiv-rifle -- "$@" +mime ^image, has nsxiv, X, flag f = nsxiv-rifle -- "$@" +mime ^image, has sxiv, X, flag f = sxiv -- "$@" mime ^image, has feh, X, flag f = feh -- "$@" mime ^image, has mirage, X, flag f = mirage -- "$@" mime ^image, has ristretto, X, flag f = ristretto "$@" @@ -189,7 +200,6 @@ mime ^image, has nomacs, X, flag f = nomacs -- "$@" mime ^image, has geeqie, X, flag f = geeqie -- "$@" mime ^image, has gwenview, X, flag f = gwenview -- "$@" mime ^image, has gimp, X, flag f = gimp -- "$@" -ext xcf, X, flag f = gimp -- "$@" #------------------------------------------- # Archives diff --git a/.config/ranger/scope.sh b/.config/ranger/scope.sh index 9c4420a..95ffdb9 100755 --- a/.config/ranger/scope.sh +++ b/.config/ranger/scope.sh @@ -128,9 +128,9 @@ handle_image() { local mimetype="${1}" case "${mimetype}" in ## SVG - # image/svg+xml|image/svg) - # convert -- "${FILE_PATH}" "${IMAGE_CACHE_PATH}" && exit 6 - # exit 1;; + image/svg+xml|image/svg) + convert -- "${FILE_PATH}" "${IMAGE_CACHE_PATH}" && exit 6 + exit 1;; ## DjVu image/vnd.djvu) diff --git a/.config/shell/aliasrc b/.config/shell/aliasrc new file mode 100644 index 0000000..c7221ce --- /dev/null +++ b/.config/shell/aliasrc @@ -0,0 +1,62 @@ +#!/bin/sh + +# Use neovim for vim if present. +[ -x "$(command -v nvim)" ] && alias vim="nvim" vimdiff="nvim -d" + +# Use $XINITRC variable if file exists. +[ -f "$XINITRC" ] && alias startx="startx $XINITRC" + +# Use $MBSYNCRC variable if file exists. +[ -f "$MBSYNCRC" ] && alias mbsync="mbsync -c $MBSYNCRC" + +# sudo not required for some system commands +for command in mount umount sv pacman updatedb su shutdown poweroff reboot ; do + alias $command="sudo $command" +done; unset command + +# Verbosity and settings that you pretty much just always are going to want. +alias \ + cp="cp -iv" \ + mv="mv -iv" \ + rm="rm -vI" \ + bc="bc -ql" \ + mkd="mkdir -pv" \ + yt="yt-dlp --embed-metadata -i" \ + yta="yt -x -f bestaudio/best" \ + ffmpeg="ffmpeg -hide_banner" + +# Colorize commands when possible. +alias \ + ls="ls -hN --color=auto --group-directories-first" \ + grep="grep --color=auto" \ + diff="diff --color=auto" \ + ccat="highlight --out-format=ansi" \ + ip="ip -color=auto" + +# These common commands are just too long! Abbreviate them. +alias \ + ka="killall" \ + g="git" \ + trem="transmission-remote" \ + YT="youtube-viewer" \ + sdn="shutdown -h now" \ + e="$EDITOR" \ + v="$EDITOR" \ + p="pacman" \ + xi="sudo xbps-install" \ + xr="sudo xbps-remove -R" \ + xq="xbps-query" \ + z="zathura" + +alias \ + lf="lfub" \ + magit="nvim -c MagitOnly" \ + ref="shortcuts >/dev/null; source ${XDG_CONFIG_HOME:-$HOME/.config}/shell/shortcutrc ; source ${XDG_CONFIG_HOME:-$HOME/.config}/shell/zshnameddirrc" \ + weath="less -S ${XDG_DATA_HOME:-$HOME/.local/share}/weatherreport"\ + glog="git log --all --graph --decorate"\ + clog="config log --all --graph --decorate" + +# force config location +alias \ + config="/usr/bin/git --git-dir=/home/alex/.local/share/git_dotfiles --work-tree=$HOME"\ + abook="abook --config $XDG_CONFIG_HOME/abook/abookrc --datafile $XDG_DATA_HOME/abook/addressbook" diff --git a/.config/shell/bm-dirs b/.config/shell/bm-dirs new file mode 100644 index 0000000..9d212ec --- /dev/null +++ b/.config/shell/bm-dirs @@ -0,0 +1,14 @@ +# You can add comments to these files with # +cac ${XDG_CACHE_HOME:-$HOME/.cache} +cf ${XDG_CONFIG_HOME:-$HOME/.config} +D ${XDG_DOWNLOAD_DIR:-$HOME/Downloads} +d ${XDG_DOCUMENTS_DIR:-$HOME/Documents} +dt ${XDG_DATA_HOME:-$HOME/.local/share} +rr $HOME/.local/src +h $HOME +m ${XDG_MUSIC_DIR:-$HOME/Music} +mn /mnt +pp ${XDG_PICTURES_DIR:-$HOME/Pictures} +sc $HOME/.local/bin +src $HOME/.local/src +vv ${XDG_VIDEOS_DIR:-$HOME/Videos} diff --git a/.config/shell/bm-files b/.config/shell/bm-files new file mode 100644 index 0000000..2e8864b --- /dev/null +++ b/.config/shell/bm-files @@ -0,0 +1,23 @@ +# These files automatically update when edited/saved in vim: + +# keys filename description +bf ${XDG_CONFIG_HOME:-$HOME/.config}/shell/bm-files # This file, a list of bookmarked files +bd ${XDG_CONFIG_HOME:-$HOME/.config}/shell/bm-dirs # A list of bookmarked directories similar to this file +cfx ${XDG_CONFIG_HOME:-$HOME/.config}/x11/xresources # Colors, themes and variables for X11 +cfb ~/.local/src/dwmblocks/config.h # dwmblocks: the status bar for dwm + + +# These do not update automatically, but on the next new instance of a program: + +cfv ${XDG_CONFIG_HOME:-$HOME/.config}/nvim/init.vim # vim/neovim config +cfz $ZDOTDIR/.zshrc # zsh (shell) config +cfa ${XDG_CONFIG_HOME:-$HOME/.config}/shell/aliasrc # aliases used by zsh (and potentially other shells) +cfp ${XDG_CONFIG_HOME:-$HOME/.config}/shell/profile # profile file for login settings for zsh +cfm ${XDG_CONFIG_HOME:-$HOME/.config}/mutt/muttrc # mutt (email client) config +cfn ${XDG_CONFIG_HOME:-$HOME/.config}/newsboat/config # newsboat (RSS reader) +cfu ${XDG_CONFIG_HOME:-$HOME/.config}/newsboat/urls # RSS urls for newsboat +cfmb ${XDG_CONFIG_HOME:-$HOME/.config}/ncmpcpp/bindings # ncmpcpp (music player) keybinds file +cfmc ${XDG_CONFIG_HOME:-$HOME/.config}/ncmpcpp/config # ncmpcpp (music player) config +cfl ${XDG_CONFIG_HOME:-$HOME/.config}/lf/lfrc # lf (file browser) config +cfL ${XDG_CONFIG_HOME:-$HOME/.config}/lf/scope # lf's scope/preview file +cfX ${XDG_CONFIG_HOME:-$HOME/.config}/nsxiv/exec/key-handler # nsxiv (image viewer) key/script handler diff --git a/.config/inputrc b/.config/shell/inputrc similarity index 100% rename from .config/inputrc rename to .config/shell/inputrc diff --git a/.config/shell/profile b/.config/shell/profile new file mode 100644 index 0000000..3cd17e2 --- /dev/null +++ b/.config/shell/profile @@ -0,0 +1,117 @@ +#!/bin/zsh + +# zsh profile file. Runs on login. Environmental variables are set here. + +# If you don't plan on reverting to bash, you can remove the link in ~/.profile +# to clean up. + +# Adds `~/.local/bin` to $PATH +export PATH="$PATH:$(du "$HOME/.local/bin" | cut -f2 | tr '\n' ':' | sed 's/:*$//')" + +# Default programs: +export EDITOR="nvim" +export PAGER="less" +export TERMINAL="st" +export BROWSER="qutebrowser" +export READER="zathura" +export FILE="ranger" +export PIC="sxiv" +export SHELL="zsh" + +# ~/ Clean-up: +export XDG_CONFIG_HOME="$HOME/.config" +export XDG_DATA_HOME="$HOME/.local/share" +export XDG_CACHE_HOME="$HOME/.cache" +export XINITRC="$XDG_CONFIG_HOME/x11/xinitrc" + +# XDG USER DIRECOTRIES +export XDG_DESKTOP_DIR="$HOME" +export XDG_DOCUMENTS_DIR="$HOME/dox" +export XDG_DOWNLOAD_DIR="$HOME/dls" +export XDG_MUSIC_DIR="$HOME/msc" +export XDG_PICTURES_DIR="$HOME/pics" +export XDG_VIDEOS_DIR="$HOME/vids" + + +#Various stuff +export BIB="$XDG_DOCUMENTS_DIR/bib.bib" + +#export XDG_RUNTIME_DIR="$HOME/.cache/xdg_run" # Messes up Audio for some reason, might be useful to figure out in the future how to fix +#export XAUTHORITY="$HOME/.cache/xdg_run/Xauthority" # This line will break some DMs. +export CHROOT="${HOME}/.local/src/chroot" +export NOTMUCH_CONFIG="${XDG_CONFIG_HOME:-$HOME/.config}/notmuch-config" +export GTK2_RC_FILES="${XDG_CONFIG_HOME:-$HOME/.config}/gtk-2.0/gtkrc-2.0" +export LESSHISTFILE="-" +export WGETRC="${XDG_CONFIG_HOME:-$HOME/.config}/wget/wgetrc" +export INPUTRC="${XDG_CONFIG_HOME:-$HOME/.config}/inputrc" +export ZDOTDIR="${XDG_CONFIG_HOME:-$HOME/.config}/zsh" +export ALSA_CONFIG_PATH="$XDG_CONFIG_HOME/alsa/asoundrc" +export GNUPGHOME="$XDG_DATA_HOME/gnupg" +#export GNUPGHOME="$HOME/.gnupg" +export WINEPREFIX="${XDG_DATA_HOME:-$HOME/.local/share}/wineprefixes/default" +export KODI_DATA="${XDG_DATA_HOME:-$HOME/.local/share}/kodi" +export PASSWORD_STORE_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/password-store" +export PASSWORD_STORE_GPG_OPTS='--homedir=/home/alex/.local/share/gnupg' +export TMUX_TMPDIR="$XDG_RUNTIME_DIR" +export ANDROID_SDK_HOME="${XDG_CONFIG_HOME:-$HOME/.config}/android" +export CARGO_HOME="${XDG_DATA_HOME:-$HOME/.local/share}/cargo" +export GOPATH="${XDG_DATA_HOME:-$HOME/.local/share}/go" +export GOMODCACHE="$XDG_CACHE_HOME/go/mod" +export ANSIBLE_CONFIG="${XDG_CONFIG_HOME:-$HOME/.config}/ansible/ansible.cfg" +export UNISON="$XDG_DATA_HOME/unison" +export HISTFILE="$XDG_DATA_HOME/history" +export MBSYNCRC="$XDG_CONFIG_HOME/mbsync/config" +export ELECTRUMDIR="$XDG_DATA_HOME/electrum" +export PYTHONSTARTUP="$XDG_CONFIG_HOME/python/pythonrc" +export SQLITE_HISTORY="$XDG_DATA_HOME/sqlite_history" +export MAILCAPS="${XDG_CONFIG_HOME:-$HOME/.config}/mutt/mailcap" +export CABAL_CONFIG="$XDG_CONFIG_HOME"/cabal/config +export CABAL_DIR="$XDG_CACHE_HOME"/cabal +export GRADLE_USER_HOME="$XDG_DATA_HOME"/gradle +export IPYTHONDIR="$XDG_CONFIG_HOME"/jupyter +export JUPYTER_CONFIG_DIR="$XDG_CONFIG_HOME"/jupyter +export _JAVA_OPTIONS=-Djava.util.prefs.userRoot="$XDG_CONFIG_HOME"/java +export JULIA_DEPOT_PATH="$XDG_DATA_HOME/julia:$JULIA_DEPOT_PATH" +export NUGET_PACKAGES="$XDG_CACHE_HOME"/NuGetPackages +export MAXIMA_USERDIR="$XDG_CONFIG_HOME"/maxima +export WEECHAT_HOME="$XDG_CONFIG_HOME"/weechat +export TEXMFHOME=$XDG_DATA_HOME/texmf +export TEXMFVAR=$XDG_CACHE_HOME/texlive/texmf-var +export TEXMFCONFIG=$XDG_CONFIG_HOME/texlive/texmf-config +export R_ENVIRON_USER=$XDG_CONFIG_HOME/R/rEnviron + + +# Other program settings: +export DICS="/usr/share/stardict/dic/" +export SUDO_ASKPASS="$HOME/.local/bin/dmenupass" +export FZF_DEFAULT_OPTS="--layout=reverse --height 40%" +export LESS=-R +export LESS_TERMCAP_mb="$(printf '%b' '')" +export LESS_TERMCAP_md="$(printf '%b' '')" +export LESS_TERMCAP_me="$(printf '%b' '')" +export LESS_TERMCAP_so="$(printf '%b' '')" +export LESS_TERMCAP_se="$(printf '%b' '')" +export LESS_TERMCAP_us="$(printf '%b' '')" +export LESS_TERMCAP_ue="$(printf '%b' '')" +export LESSOPEN="| /usr/bin/highlight -O ansi %s 2>/dev/null" +export QT_QPA_PLATFORMTHEME="gtk2" # Have QT use gtk2 theme. +export MOZ_USE_XINPUT2="1" # Mozilla smooth scrolling/touchpads. +export _JAVA_AWT_WM_NONREPARENTING=1 # Java doesn't understand tiling windows +export AWT_TOOLKIT="MToolkit wmname LG3D" #May have to install wmname + +# Settings for Japanese input +#export GTK_IM_MODULE='ibus' +#export QT_IM_MODULE='ibus' +#export XMODIFIERS=@im='ibus' +#GTK_IM_MODULE=fcitx +#QT_IM_MODULE=fcitx +#XMODIFIERS=@im=fcitx +#ibus-daemon -drx #Toolbar for anthy + +[ ! -f ${XDG_CONFIG_HOME:-$HOME/.config}/shell/shortcutrc ] && setsid shortcuts >/dev/null 2>&1 + +# Start graphical server on tty1 if not already running. +[ "$(tty)" = "/dev/tty1" ] && ! ps -e | grep -qw Xorg && exec startx $XINITRC + +# Switch escape and caps if tty and no passwd required: +sudo -n loadkeys ${XDG_DATA_HOME:-$HOME/.local/share}/larbs/ttymaps.kmap 2>/dev/null diff --git a/.config/shell/shortcutrc b/.config/shell/shortcutrc new file mode 100644 index 0000000..b7dd579 --- /dev/null +++ b/.config/shell/shortcutrc @@ -0,0 +1,30 @@ +# vim: filetype=sh +alias cac="cd /home/alex/.cache && ls -A" \ +cf="cd /home/alex/.config && ls -A" \ +D="cd /home/alex/Downloads && ls -A" \ +d="cd /home/alex/Documents && ls -A" \ +dt="cd /home/alex/.local/share && ls -A" \ +rr="cd /home/alex/.local/src && ls -A" \ +h="cd /home/alex && ls -A" \ +m="cd /home/alex/Music && ls -A" \ +mn="cd /mnt && ls -A" \ +pp="cd /home/alex/Pictures && ls -A" \ +sc="cd /home/alex/.local/bin && ls -A" \ +src="cd /home/alex/.local/src && ls -A" \ +vv="cd /home/alex/Videos && ls -A" \ +bf="$EDITOR /home/alex/.config/shell/bm-files" \ +bd="$EDITOR /home/alex/.config/shell/bm-dirs" \ +cfx="$EDITOR /home/alex/.config/x11/xresources" \ +cfb="$EDITOR ~/.local/src/dwmblocks/config.h" \ +cfv="$EDITOR /home/alex/.config/nvim/init.vim" \ +cfz="$EDITOR /home/alex/.config/zsh/.zshrc" \ +cfa="$EDITOR /home/alex/.config/shell/aliasrc" \ +cfp="$EDITOR /home/alex/.config/shell/profile" \ +cfm="$EDITOR /home/alex/.config/mutt/muttrc" \ +cfn="$EDITOR /home/alex/.config/newsboat/config" \ +cfu="$EDITOR /home/alex/.config/newsboat/urls" \ +cfmb="$EDITOR /home/alex/.config/ncmpcpp/bindings" \ +cfmc="$EDITOR /home/alex/.config/ncmpcpp/config" \ +cfl="$EDITOR /home/alex/.config/lf/lfrc" \ +cfL="$EDITOR /home/alex/.config/lf/scope" \ +cfX="$EDITOR /home/alex/.config/nsxiv/exec/key-handler" \ diff --git a/.config/shell/zshnameddirrc b/.config/shell/zshnameddirrc new file mode 100644 index 0000000..504b1e7 --- /dev/null +++ b/.config/shell/zshnameddirrc @@ -0,0 +1,29 @@ +hash -d cac=/home/alex/.cache +hash -d cf=/home/alex/.config +hash -d D=/home/alex/Downloads +hash -d d=/home/alex/Documents +hash -d dt=/home/alex/.local/share +hash -d rr=/home/alex/.local/src +hash -d h=/home/alex +hash -d m=/home/alex/Music +hash -d mn=/mnt +hash -d pp=/home/alex/Pictures +hash -d sc=/home/alex/.local/bin +hash -d src=/home/alex/.local/src +hash -d vv=/home/alex/Videos +hash -d bf=/home/alex/.config/shell/bm-files +hash -d bd=/home/alex/.config/shell/bm-dirs +hash -d cfx=/home/alex/.config/x11/xresources +hash -d cfb=~/.local/src/dwmblocks/config.h +hash -d cfv=/home/alex/.config/nvim/init.vim +hash -d cfz=/home/alex/.config/zsh/.zshrc +hash -d cfa=/home/alex/.config/shell/aliasrc +hash -d cfp=/home/alex/.config/shell/profile +hash -d cfm=/home/alex/.config/mutt/muttrc +hash -d cfn=/home/alex/.config/newsboat/config +hash -d cfu=/home/alex/.config/newsboat/urls +hash -d cfmb=/home/alex/.config/ncmpcpp/bindings +hash -d cfmc=/home/alex/.config/ncmpcpp/config +hash -d cfl=/home/alex/.config/lf/lfrc +hash -d cfL=/home/alex/.config/lf/scope +hash -d cfX=/home/alex/.config/nsxiv/exec/key-handler diff --git a/.config/shortcutrc b/.config/shortcutrc deleted file mode 100644 index 3081b9d..0000000 --- a/.config/shortcutrc +++ /dev/null @@ -1,2 +0,0 @@ -# vim: filetype=sh -#alias diff --git a/.config/sxhkd/sxhkdrc b/.config/sxhkd/sxhkdrc deleted file mode 100644 index 31a1cf5..0000000 --- a/.config/sxhkd/sxhkdrc +++ /dev/null @@ -1,3 +0,0 @@ -# Basic binds -~ctrl + space - dunstctl close diff --git a/.config/transmission-daemon/settings.json b/.config/transmission-daemon/settings.json deleted file mode 100644 index 515fe9b..0000000 --- a/.config/transmission-daemon/settings.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "alt-speed-down": 50, - "alt-speed-enabled": false, - "alt-speed-time-begin": 540, - "alt-speed-time-day": 127, - "alt-speed-time-enabled": false, - "alt-speed-time-end": 1020, - "alt-speed-up": 50, - "bind-address-ipv4": "0.0.0.0", - "bind-address-ipv6": "::", - "blocklist-enabled": false, - "blocklist-url": "http://www.example.com/blocklist", - "cache-size-mb": 4, - "dht-enabled": true, - "download-dir": "/home/alex/dls", - "download-queue-enabled": true, - "download-queue-size": 15, - "encryption": 2, - "idle-seeding-limit": 30, - "idle-seeding-limit-enabled": false, - "incomplete-dir": "/home/alex/dls", - "incomplete-dir-enabled": false, - "lpd-enabled": false, - "message-level": 2, - "peer-congestion-algorithm": "", - "peer-id-ttl-hours": 6, - "peer-limit-global": 200, - "peer-limit-per-torrent": 50, - "peer-port": 51413, - "peer-port-random-high": 65535, - "peer-port-random-low": 49152, - "peer-port-random-on-start": false, - "peer-socket-tos": "default", - "pex-enabled": true, - "port-forwarding-enabled": true, - "preallocation": 1, - "prefetch-enabled": true, - "queue-stalled-enabled": true, - "queue-stalled-minutes": 30, - "ratio-limit": 2, - "ratio-limit-enabled": false, - "rename-partial-files": true, - "rpc-authentication-required": false, - "rpc-bind-address": "0.0.0.0", - "rpc-enabled": true, - "rpc-host-whitelist": "", - "rpc-host-whitelist-enabled": true, - "rpc-password": "{3d07ccc105cd3fb50502a091e4636a21569d1b0ekXDsxTuV", - "rpc-port": 9091, - "rpc-url": "/transmission/", - "rpc-username": "", - "rpc-whitelist": "127.0.0.1,::1", - "rpc-whitelist-enabled": true, - "scrape-paused-torrents-enabled": true, - "script-torrent-done-enabled": false, - "script-torrent-done-filename": "", - "seed-queue-enabled": false, - "seed-queue-size": 10, - "speed-limit-down": 100, - "speed-limit-down-enabled": false, - "speed-limit-up": 0, - "speed-limit-up-enabled": true, - "start-added-torrents": true, - "trash-original-torrent-files": false, - "umask": 18, - "upload-slots-per-torrent": 14, - "utp-enabled": true -} diff --git a/.config/transmission/dht.dat b/.config/transmission/dht.dat deleted file mode 100644 index 7037be623b0069ee0de9f6e9649bf2ab82c9a37c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1091 zcmV-J1ibrXGCFBwGB7$EcoOHn&3DHgVL-W_o!zA3^!dRxI&N=dWpgnwH848g=>S77 znOP>akUJ_Rzs8gr;RU8Okmkmxvuyes04iesr!$m%V1G99GLyh-h*tA?q;c*Y!D>lK z0nGqH(Hq8QBucS38`h))~IAK%-*g;6f4Kgh)z;e4O&6Ufz2nDSWuN4BVbi(tmx zk?Rv0;dz&Cr%b3VPcU)F)kuw?yolZ|>tniDxJ~Za|NCiQTJB&~Np6q`erF_ku`+#e zmOH!6Jz0WVkfSKSv!`;+vH1sbBX7nU={}U5OBH}f$&p+d>0EzpY8v5L{YW0Yre7;g z$&>f3xAN6zvsJFlL>B-}Zh_HE0NFS4)oS5EU?59rn7VwR0vh38FAk60=4E2e(jzBd zUW}C!vyl$O*&5+_rN1Q_;oWvEZOGN#mL+?m+B3s|@cdqOXjqk9CRw|_h{)A#pFb<# zx&jy@7}atcBS2iA_&Wzr7H@&C#i>&o;d!sBgJ5=c-cp>O19`7H>l)#9C#X%JDWA(4 z92((M_bB(s)mwROTgcV9EyJyC+BPOHVURy1FkOND;JM2<3D?=fn!SF=)tBKlp2U%) z2tkY*>BE|};e`@bMFPJpIczem{2Jla>e)?8M%A0snBkB%MjW&n;TZe#dm7<9dj1Bh z1uqV|EE?gwsF?2k-(rrB>>CJeT0~OElud4euB-w+#Y=n0)x3rgQySqVhW771JzKDF zI4VAO!ircQB@(}XPiPfRtP3(X?71z&t8I;H%nf?5uGwqZD<0jYy}Mc)CI!8_TFBPCyU0VC0K=O6cHpk98$1@2@?<75 zio^}~c6MY3BpTtl71*B6!%3buP{05MiOLDTX_w)s)EeQusPOc^X$~fU6jUdaM;Q87 zy54CX51=M+cV0tLnG)LZ0~+DfffKxX9>bcfshU~Cnyjg`EW?_!0-vP7gDiI50=p-g~-(>dCLf%(cPzGQOMN}Bn_7u;j~8vtK(&D$%TeaCSc(0fZ8;GYT!s` zs0B|$2eQ-!4I$QW)qYNzr6!81QOX5Ct59EF#Wv_(KzTyM3)SXLh0pA)U1dth)vXZ1 z#Ke)^o5D)(j@*VK&>G>?Y}|*))vEm>nHuR{6{z( diff --git a/.config/transmission/settings.json b/.config/transmission/settings.json deleted file mode 100644 index eadf725..0000000 --- a/.config/transmission/settings.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "alt-speed-down": 50, - "alt-speed-enabled": false, - "alt-speed-time-begin": 540, - "alt-speed-time-day": 127, - "alt-speed-time-enabled": false, - "alt-speed-time-end": 1020, - "alt-speed-up": 50, - "bind-address-ipv4": "0.0.0.0", - "bind-address-ipv6": "::", - "blocklist-enabled": false, - "blocklist-updates-enabled": true, - "blocklist-url": "http://www.example.com/blocklist", - "cache-size-mb": 4, - "compact-view": false, - "details-window-height": 755, - "details-window-width": 898, - "dht-enabled": true, - "download-dir": "/home/alex/dls", - "download-queue-enabled": true, - "download-queue-size": 1, - "encryption": 1, - "idle-seeding-limit": 30, - "idle-seeding-limit-enabled": false, - "incomplete-dir": "/home/alex/dls", - "incomplete-dir-enabled": false, - "inhibit-desktop-hibernation": false, - "lpd-enabled": false, - "main-window-height": 1569, - "main-window-is-maximized": 0, - "main-window-width": 1580, - "main-window-x": 3848, - "main-window-y": 47, - "message-level": 2, - "open-dialog-dir": "/home/alex", - "peer-congestion-algorithm": "", - "peer-id-ttl-hours": 6, - "peer-limit-global": 200, - "peer-limit-per-torrent": 50, - "peer-port": 51413, - "peer-port-random-high": 65535, - "peer-port-random-low": 49152, - "peer-port-random-on-start": false, - "peer-socket-tos": "default", - "pex-enabled": true, - "port-forwarding-enabled": true, - "preallocation": 1, - "prefetch-enabled": true, - "queue-stalled-enabled": true, - "queue-stalled-minutes": 30, - "ratio-limit": 2, - "ratio-limit-enabled": false, - "recent-download-dir-1": "/home/alex", - "rename-partial-files": true, - "rpc-authentication-required": false, - "rpc-bind-address": "0.0.0.0", - "rpc-enabled": false, - "rpc-host-whitelist": "", - "rpc-host-whitelist-enabled": true, - "rpc-password": "{aba01cb2975d64d146c5dfb84f2458b01063cc55NiUxAaqs", - "rpc-port": 9091, - "rpc-url": "/transmission/", - "rpc-username": "", - "rpc-whitelist": "127.0.0.1", - "rpc-whitelist-enabled": true, - "scrape-paused-torrents-enabled": true, - "script-torrent-done-enabled": false, - "script-torrent-done-filename": "", - "seed-queue-enabled": false, - "seed-queue-size": 10, - "show-backup-trackers": false, - "show-extra-peer-details": true, - "show-filterbar": true, - "show-notification-area-icon": false, - "show-options-window": true, - "show-statusbar": true, - "show-toolbar": true, - "show-tracker-scrapes": true, - "sort-mode": "sort-by-name", - "sort-reversed": false, - "speed-limit-down": 100, - "speed-limit-down-enabled": false, - "speed-limit-up": 100, - "speed-limit-up-enabled": false, - "start-added-torrents": true, - "statusbar-stats": "session-transfer", - "torrent-added-notification-enabled": true, - "torrent-complete-notification-enabled": true, - "torrent-complete-sound-command": "canberra-gtk-play -i complete-download -d 'transmission torrent downloaded'", - "torrent-complete-sound-enabled": true, - "trash-can-enabled": true, - "trash-original-torrent-files": false, - "umask": 18, - "upload-slots-per-torrent": 14, - "user-has-given-informed-consent": true, - "utp-enabled": true, - "watch-dir": "/home/alex", - "watch-dir-enabled": false -} diff --git a/.config/transmission/stats.json b/.config/transmission/stats.json deleted file mode 100644 index 43bc925..0000000 --- a/.config/transmission/stats.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "downloaded-bytes": 8816381636, - "files-added": 51, - "seconds-active": 9627, - "session-count": 7, - "uploaded-bytes": 482195634 -} diff --git a/.config/tremc/settings.cfg b/.config/tremc/settings.cfg deleted file mode 100644 index cd7ba41..0000000 --- a/.config/tremc/settings.cfg +++ /dev/null @@ -1,108 +0,0 @@ -[Connection] -password = -username = alex -port = 443 -host = new.bocken.org -path = /transmission/rpc -ssl = True - -[Sorting] -# Set startup torrent list sort order. Possible sort keys are: -# name, addedDate, percentDone, seeders, leechers, sizeWhenDone, status, -# uploadedEver, rateUpload, rateDownload, uploadRatio, peersConnected, -# downloadDir, mainTrackerDomain. -# Prepend ':' for reversed sort. -# Examples: -# -# order = :name -# Sorts by torrent name in reversed alphabetical order. -# -# order = sizeWhenDone -# Sorts by torrent size, small to large. -order = name - -[Filtering] -# Set startup torrent list filter. Possible filter keys are: -# uploading, downloading, active, paused, seeding, incomplete, verifying, -# private, isolated, selected, honors. -# Use 'invert=True' to shoe only torrents not matching filter. -filter = -invert = False - -[Misc] -lines_per_torrent = 3 -torrentname_is_progressbar = True -file_viewer = dl_torrent_and_view.sh %%s -file_open_in_terminal = True -view_selected = False -rdns = True -geoip_database = /xyz -torrent_numbers = True - -[Colors] -# Set colors of various interface elements. -# Each element has background and foreground color. -# Each color is default or one of the eight curses colors: -# Black, White, Red, Green, Blue, Cyan, Yellow, Magenta. -# Default is the default background or foreground color. -header = bg:white,fg:black -footer = bg:white,fg:black -title_seed = bg:green,fg:black -title_incomplete = bg:black,fg:white -title_download = bg:blue,fg:black -title_idle = bg:cyan,fg:black -title_verify = bg:magenta,fg:black -title_paused = bg:yellow,fg:black -title_error = bg:red,fg:default -download_rate = bg:default,fg:blue -upload_rate = bg:default,fg:red -eta+ratio = bg:default,fg:default -filter_status = bg:black,fg:red -multi_filter_status = bg:default,fg:blue -selection = bg:white,fg:black -window = bg:black,fg:white -dialog = bg:black,fg:white -dialog_important = bg:black,fg:red -file_prio_high = bg:black,fg:red -file_prio_normal = bg:black,fg:default -file_prio_low = bg:black,fg:yellow -file_prio_off = bg:black,fg:blue - -[Profiles] -# Define filter/sort profiles. See README.md for details. -# Examples: -# -# profile1 = regex#=ubuntu#=:uploadRatio -# A profile named '1' shows only torrents whose name contains ubuntu (case -# insensitive match), sorted by upload ratio from large to small. -# This profile can be selected from the profile menu or by pressing '1'. -# -# profile2 = incomplete#=#=percentDone -# A profile named '2' shows incomplete torrents sorted by progress. -# -# profileABC = regex#=ubuntu#=:incomplete#= #& # location#=/torrents#=peersConnected -# A profile named 'ABC' shows only torrents that satisfy one of the -# conditions: -# 1. Name contains ubuntu and complete; -# 2. Download location is /torrents. -# The torrent list is sorted by number of peers connected. -# This profile can be selected from the profile menu. - -# Show all torrents, sort by name: -profile0 = - - -[ListKeys] -# Configure keys in torrent list only. -backslash = select_search_torrent_fulltext -gt = select_search_torrent_regex_fulltext -y = toggle_torrent_numbers - -[DetailsKeys] -# Configure keys in torrent details only. -y = view_file - -[CommonKeys] -# Configure keys globally. -Y = verify_torrent -v = move_torrent diff --git a/.config/X11/Xres_casting b/.config/x11/Xres_casting similarity index 100% rename from .config/X11/Xres_casting rename to .config/x11/Xres_casting diff --git a/.config/x11/xinitrc b/.config/x11/xinitrc new file mode 100755 index 0000000..879e130 --- /dev/null +++ b/.config/x11/xinitrc @@ -0,0 +1,20 @@ +#!/bin/sh + +# xinitrc runs automatically when you run startx. + +# There are some small but important commands that need to be run when we start +# the graphical environment. There is a link to this file in ~/.xprofile +# because that file is run automatically if someone uses a display manager +# (login screen) and so they are needed there. To prevent doubling up commands, +# I source them here with the line below. + +if [ -f "${XDG_CONFIG_HOME:-$HOME/.config}/x11/xprofile" ]; then + . "${XDG_CONFIG_HOME:-$HOME/.config}/x11/xprofile" +else + . "$HOME/.xprofile" +fi + +rm -f /tmp/killdwm +until [ -f /tmp/killdwm ]; do + dwm +done diff --git a/.config/x11/xprofile b/.config/x11/xprofile new file mode 100755 index 0000000..8954009 --- /dev/null +++ b/.config/x11/xprofile @@ -0,0 +1,24 @@ +#!/bin/sh + +# This file runs when a DM logs you into a graphical session. +# If you use startx/xinit like a Chad, this file will also be sourced. + +dbus-update-activation-environment --systemd DBUS_SESSION_BUS_ADDRESS DISPLAY XAUTHORITY +xrdb -merge ~/.config/x11/Xresources +#mpv --no-video "$XDG_CONFIG_HOME/windows_xp_startup.ogg" +setbg & # set the background with the `setbg` script + +xrdb ${XDG_CONFIG_HOME:-$HOME/.config}/x11/xresources & xrdbpid=$! # Uncomment to use Xresources colors/settings on startup +autostart="picom mpd dunst unclutter dwmblocks update_musicbar pipewire remapd" + +for program in $autostart; do + pidof -s "$program" || setsid -f "$program" +done >/dev/null 2>&1 +xrandr --auto +xrandr --dpi 180 # Set DPI. User may want to use a larger number for larger screens. +xrandr --listactivemonitors | grep -qE '1920.*x1080.*HDMI-1-3$' && ( xrandr --output HDMI-1-3 --scale 1.666666666666 && setbg ) # set scale for 2nd monitor if connected + +echo "$DBUS_SESSION_BUS_ADDRESS" > /tmp/dbus_session_bus_address + +# Ensure that xrdb has finished running before moving on to start the WM/DE. +[ -n "$xrdbpid" ] && wait "$xrdbpid" diff --git a/.config/X11/Xresources b/.config/x11/xresources similarity index 95% rename from .config/X11/Xresources rename to .config/x11/xresources index 0514e7f..3b79510 100644 --- a/.config/X11/Xresources +++ b/.config/x11/xresources @@ -1,6 +1,7 @@ !! Transparency (0-1): *.alpha: 0.8 st.alpha: 0.1 +Nsxiv.window.alpha: 0.1 *.dpi: 180 @@ -31,7 +32,7 @@ st.alpha: 0.1 Sxiv.font: monospace-10 Sxiv.txtcolor: nord6 -Sxiv.background: bblack +Sxiv.background: nord0 Sxiv.foreground: nord6 xterm*saveLines: 2000 diff --git a/.config/xinitrc b/.config/xinitrc deleted file mode 100755 index 13fe486..0000000 --- a/.config/xinitrc +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -# xinitrc runs automatically when you run startx. - -# There are some small but important commands that need to be run when we start -# the graphical environment. I keep those commands in ~/config/xprofile because -# that file is run automatically if someone uses a display manager (login -# screen) and so they are needed there. To prevent doubling up commands, I -# source them here with the line below. - -# export STATUSBAR="i3blocks" # Uncomment this line when using i3. - -[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/xprofile" ] && . "${XDG_CONFIG_HOME:-$HOME/.config}/xprofile" 2>&1 /dev/null - -# Your default LARBS WM is determined in your `~/.profile` on login. Here we -# run the proper command to run when the graphical environment starts. - -# Comment/uncomment these lines depending on what wm you want to use. Also -# check the i3blocks line above. -rm -f /tmp/killdwm -while ! [ -f /tmp/killdwm ]; do - dwm -done -#ssh-agent dwm -# ssh-agent i3 diff --git a/.config/xprofile b/.config/xprofile deleted file mode 100755 index dd15698..0000000 --- a/.config/xprofile +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/sh - -# This file runs when a DM logs you into a graphical session. -# If you use startx/xinit like a Chad, this file will also be sourced. - -# This file's true location is in ~/.config/xprofile and a link exists to it in -# ~/.xprofile. If you do not use a DM, you may remove the link to it to have a -# cleaner home. - -# Fix Gnome Apps Slow Start due to failing services -# Add this when you include flatpak in your system -dbus-update-activation-environment --systemd DBUS_SESSION_BUS_ADDRESS DISPLAY XAUTHORITY -xrdb -merge ${XDG_CONFIG_HOME:-$HOME/.config}/X11/Xresources # Uncomment to use Xresources colors/settings on startup -mpd & # music player daemon-you might prefer it as a service though -remaps & # run the remaps script, switching caps/esc and more; check it for more info -setbg & # set the background with the `setbg` script -#wal -i ${XDG_CONFIG_HOME:-$HOME/.config}/wall.png -b '#000000' -#xcompmgr & # xcompmgr for transparency (and apparently to reduce tearing) -picom --experimental-backends & #ME NEED BLUR -dunst & # dunst for notifications -dwmblocks 2> /dev/null & -xset r rate 300 50 & # Speed xrate up -xbanish -t 2 & -element-desktop --hidden & -transmission-daemon & -ibus-daemon -drx & -#echo "$HOME/.config/mpd/state" | entr -nps pkill -RTMIN+11 dwmblocks & -xrandr --listactivemonitors | grep -q '1920.*x1080.*HDMI-1$' && ( xrandr --output HDMI-1 --scale 1.5 && setbg ) # set scale for 2nd monitor if connected -redshift & # Bluefilter based on time -keynav & # emulate mouse clicks with vim-bindings and starting with Ctrl+; -update_musicbar & # update music statusbar the instant state changes diff --git a/.config/zsh/.zcompdump b/.config/zsh/.zcompdump new file mode 100644 index 0000000..c676519 --- /dev/null +++ b/.config/zsh/.zcompdump @@ -0,0 +1,1849 @@ +#files: 827 version: 5.9 + +_comps=( +'-' '_precommand' +'.' '_source' +'5g' '_go' +'5l' '_go' +'6g' '_go' +'6l' '_go' +'8g' '_go' +'8l' '_go' +'a2ps' '_a2ps' +'aaaa' '_hosts' +'aap' '_aap' +'abcde' '_abcde' +'ack' '_ack' +'ack2' '_ack' +'ack-grep' '_ack' +'ack-standalone' '_ack' +'acpi' '_acpi' +'acpitool' '_acpitool' +'acroread' '_acroread' +'adb' '_adb' +'add-zle-hook-widget' '_add-zle-hook-widget' +'add-zsh-hook' '_add-zsh-hook' +'admin' '_sccs' +'ali' '_mh' +'alias' '_alias' +'amaya' '_webbrowser' +'analyseplugin' '_analyseplugin' +'animate' '_imagemagick' +'anno' '_mh' +'ansible' '_ansible' +'ansible-config' '_ansible' +'ansible-console' '_ansible' +'ansible-doc' '_ansible' +'ansible-galaxy' '_ansible' +'ansible-inventory' '_ansible' +'ansible-playbook' '_ansible' +'ansible-pull' '_ansible' +'ansible-vault' '_ansible' +'ant' '_ant' +'antiword' '_antiword' +'aodh' '_openstack' +'aoss' '_precommand' +'apache2ctl' '_apachectl' +'apachectl' '_apachectl' +'aplay' '_alsa-utils' +'apm' '_apm' +'appletviewer' '_java' +'apropos' '_man' +'apvlv' '_pdf' +'arduino-ctags' '_ctags' +'arecord' '_alsa-utils' +'arena' '_webbrowser' +'_arguments' '__arguments' +'arp' '_arp' +'arping' '_arping' +'-array-value-' '_value' +'asciidoctor' '_asciidoctor' +'asciinema' '_asciinema' +'ash' '_sh' +'-assign-parameter-' '_assign' +'at' '_at' +'atq' '_at' +'atrm' '_at' +'attr' '_attr' +'augtool' '_augeas' +'autoload' '_typeset' +'avahi-browse' '_avahi' +'avahi-browse-domains' '_avahi' +'avahi-resolve' '_avahi' +'avahi-resolve-address' '_avahi' +'avahi-resolve-host-name' '_avahi' +'awk' '_awk' +'b2sum' '_md5sum' +'barbican' '_openstack' +'base32' '_base64' +'base64' '_base64' +'basename' '_basename' +'basenc' '_basenc' +'bash' '_bash' +'bat' '_bat' +'batch' '_at' +'baz' '_baz' +'beep' '_beep' +'bg' '_jobs_bg' +'bibtex' '_bibtex' +'bindkey' '_bindkey' +'bison' '_bison' +'bluetoothctl' '_bluetoothctl' +'bmake' '_make' +'bogofilter' '_bogofilter' +'bogotune' '_bogofilter' +'bogoutil' '_bogofilter' +'bootctl' '_bootctl' +'bpython' '_bpython' +'bpython2' '_bpython' +'bpython2-gtk' '_bpython' +'bpython2-urwid' '_bpython' +'bpython3' '_bpython' +'bpython3-gtk' '_bpython' +'bpython3-urwid' '_bpython' +'bpython-gtk' '_bpython' +'bpython-urwid' '_bpython' +'-brace-parameter-' '_brace_parameter' +'brctl' '_brctl' +'bsdgrep' '_grep' +'bsdtar' '_tar' +'btdownloadcurses' '_bittorrent' +'btdownloadgui' '_bittorrent' +'btdownloadheadless' '_bittorrent' +'btlaunchmany' '_bittorrent' +'btlaunchmanycurses' '_bittorrent' +'btmakemetafile' '_bittorrent' +'btreannounce' '_bittorrent' +'btrename' '_bittorrent' +'btrfs' '_btrfs' +'btshowmetainfo' '_bittorrent' +'bttrack' '_bittorrent' +'buildhash' '_ispell' +'builtin' '_builtin' +'bun' '_bun' +'bunzip2' '_bzip2' +'burst' '_mh' +'busctl' '_busctl' +'bzcat' '_bzip2' +'bzegrep' '_grep' +'bzfgrep' '_grep' +'bzgrep' '_grep' +'bzip2' '_bzip2' +'bzip2recover' '_bzip2' +'bzr' '_bzr' +'c++' '_gcc' +'cabal' '_cabal' +'cal' '_cal' +'calendar' '_calendar' +'cargo' '_cargo' +'cat' '_cat' +'catchsegv' '_precommand' +'cc' '_gcc' +'ccal' '_ccal' +'cd' '_cd' +'cdc' '_sccs' +'cdcd' '_cdcd' +'cdr' '_cdr' +'cdrdao' '_cdrdao' +'cdrecord' '_cdrecord' +'ceilometer' '_openstack' +'certtool' '_gnutls' +'cftp' '_twisted' +'chage' '_users' +'chattr' '_chattr' +'chcon' '_chcon' +'chdir' '_cd' +'checkupdates' '_checkupdates' +'chfn' '_users' +'chgrp' '_chown' +'chimera' '_webbrowser' +'chkconfig' '_chkconfig' +'chkstow' '_stow' +'chmod' '_chmod' +'choom' '_choom' +'chown' '_chown' +'chpass' '_chsh' +'chroot' '_chroot' +'chrt' '_chrt' +'chsh' '_chsh' +'ci' '_rcs' +'cifsiostat' '_sysstat' +'cinder' '_openstack' +'ckeygen' '_twisted' +'cksum' '_cksum' +'clang' '_gcc' +'clang++' '_gcc' +'clay' '_clay' +'clear' '_nothing' +'cloudkitty' '_openstack' +'clusterdb' '_postgresql' +'cmp' '_cmp' +'co' '_rcs' +'code' '_code' +'column' '_column' +'comb' '_sccs' +'combine' '_imagemagick' +'combinediff' '_patchutils' +'comm' '_comm' +'-command-' '_autocd' +'command' '_command' +'-command-line-' '_normal' +'comp' '_mh' +'compadd' '_compadd' +'compdef' '_compdef' +'composer' '_composer' +'composer.phar' '_composer' +'composite' '_imagemagick' +'compress' '_compress' +'conch' '_twisted' +'-condition-' '_condition' +'config.status' '_configure' +'configure' '_configure' +'convert' '_imagemagick' +'coredumpctl' '_coredumpctl' +'cowsay' '_cowsay' +'cowthink' '_cowsay' +'cp' '_cp' +'cpio' '_cpio' +'cplay' '_cplay' +'cpupower' '_cpupower' +'createdb' '_postgresql' +'createuser' '_postgresql' +'crontab' '_crontab' +'crsh' '_cssh' +'cryptsetup' '_cryptsetup' +'cscope' '_cscope' +'csh' '_sh' +'csplit' '_csplit' +'cssh' '_cssh' +'ctags' '_ctags' +'ctags-exuberant' '_ctags' +'ctags-universal' '_ctags' +'curl' '_curl' +'cut' '_cut' +'cvs' '_cvs' +'darcs' '_darcs' +'dash' '_sh' +'date' '_date' +'dbus-launch' '_dbus' +'dbus-monitor' '_dbus' +'dbus-send' '_dbus' +'dconf' '_dconf' +'dcop' '_dcop' +'dcopclient' '_dcop' +'dcopfind' '_dcop' +'dcopobject' '_dcop' +'dcopref' '_dcop' +'dcopstart' '_dcop' +'dd' '_dd' +'declare' '_typeset' +'-default-' '_default' +'delta' '_sccs' +'designate' '_openstack' +'devtodo' '_devtodo' +'df' '_df' +'dhclient' '_dhclient' +'dhclient3' '_dhclient' +'dict' '_dict' +'diff' '_diff' +'diff3' '_diff3' +'diffstat' '_diffstat' +'dig' '_dig' +'dillo' '_webbrowser' +'dircmp' '_directories' +'dirs' '_dirs' +'disable' '_disable' +'disown' '_jobs_fg' +'display' '_imagemagick' +'dist' '_mh' +'django-admin' '_django' +'django-admin.py' '_django' +'dkms' '_dkms' +'dmake' '_make' +'dmesg' '_dmesg' +'dmidecode' '_dmidecode' +'doas' '_doas' +'domainname' '_yp' +'dos2unix' '_dos2unix' +'drill' '_drill' +'dropbox' '_dropbox' +'dropdb' '_postgresql' +'dropuser' '_postgresql' +'dsh' '_dsh' +'dtruss' '_dtruss' +'du' '_du' +'dvibook' '_dvi' +'dviconcat' '_dvi' +'dvicopy' '_dvi' +'dvidvi' '_dvi' +'dvipdf' '_dvi' +'dvips' '_dvi' +'dviselect' '_dvi' +'dvitodvi' '_dvi' +'dvitype' '_dvi' +'dwb' '_webbrowser' +'e2label' '_e2label' +'eatmydata' '_precommand' +'ecasound' '_ecasound' +'echotc' '_echotc' +'echoti' '_echoti' +'ed' '_ed' +'egrep' '_grep' +'elfdump' '_elfdump' +'elinks' '_elinks' +'emulate' '_emulate' +'enable' '_enable' +'enscript' '_enscript' +'entr' '_entr' +'env' '_env' +'eog' '_eog' +'epdfview' '_pdf' +'epsffit' '_psutils' +'-equal-' '_equal' +'erb' '_ruby' +'espeak' '_espeak' +'etags' '_etags' +'ethtool' '_ethtool' +'eu-nm' '_nm' +'eu-objdump' '_objdump' +'eu-readelf' '_readelf' +'eu-strings' '_strings' +'eval' '_precommand' +'eview' '_vim' +'evim' '_vim' +'evince' '_evince' +'ex' '_vi' +'exec' '_exec' +'expand' '_unexpand' +'export' '_typeset' +'express' '_webbrowser' +'extcheck' '_java' +'extractres' '_psutils' +'fakeroot' '_fakeroot' +'false' '_nothing' +'fc' '_fc' +'fc-list' '_xft_fonts' +'fc-match' '_xft_fonts' +'feh' '_feh' +'fetchmail' '_fetchmail' +'ffmpeg' '_ffmpeg' +'fg' '_jobs_fg' +'fgrep' '_grep' +'figlet' '_figlet' +'filterdiff' '_patchutils' +'find' '_find' +'findaffix' '_ispell' +'findmnt' '_findmnt' +'finger' '_finger' +'firefox' '_mozilla' +'-first-' '_first' +'fixdlsrps' '_psutils' +'fixfmps' '_psutils' +'fixmacps' '_psutils' +'fixpsditps' '_psutils' +'fixpspps' '_psutils' +'fixscribeps' '_psutils' +'fixtpps' '_psutils' +'fixwfwps' '_psutils' +'fixwpps' '_psutils' +'fixwwps' '_psutils' +'flac' '_flac' +'flex' '_flex' +'flex++' '_flex' +'flipdiff' '_patchutils' +'flist' '_mh' +'flists' '_mh' +'float' '_typeset' +'fmt' '_fmt' +'fmttest' '_mh' +'fned' '_zed' +'fnext' '_mh' +'fold' '_fold' +'folder' '_mh' +'folders' '_mh' +'fortune' '_fortune' +'forw' '_mh' +'fprev' '_mh' +'free' '_free' +'freebsd-make' '_make' +'freezer' '_openstack' +'fsh' '_fsh' +'ftp' '_hosts' +'functions' '_typeset' +'fuser' '_fuser' +'fusermount' '_fusermount' +'fwhois' '_whois' +'g++' '_gcc' +'galeon' '_webbrowser' +'gawk' '_awk' +'gb2sum' '_md5sum' +'gbase32' '_base64' +'gbase64' '_base64' +'gbasename' '_basename' +'gcat' '_cat' +'gcc' '_gcc' +'gccgo' '_go' +'gchgrp' '_chown' +'gchmod' '_chmod' +'gchown' '_chown' +'gchroot' '_chroot' +'gcksum' '_cksum' +'gcmp' '_cmp' +'gcomm' '_comm' +'gcore' '_gcore' +'gcp' '_cp' +'gcut' '_cut' +'gdate' '_date' +'gdb' '_gdb' +'gdd' '_dd' +'gdf' '_df' +'gdiff' '_diff' +'gdu' '_du' +'geany' '_geany' +'gegrep' '_grep' +'gem' '_gem' +'genisoimage' '_genisoimage' +'genv' '_env' +'get' '_sccs' +'getafm' '_psutils' +'getconf' '_getconf' +'getent' '_getent' +'getfacl' '_getfacl' +'getfacl.exe' '_getfacl' +'getfattr' '_attr' +'getmail' '_getmail' +'getopt' '_getopt' +'getopts' '_vars' +'gex' '_vim' +'gexpand' '_unexpand' +'gfgrep' '_grep' +'gfind' '_find' +'gfmt' '_fmt' +'gfold' '_fold' +'ggetopt' '_getopt' +'ggrep' '_grep' +'ggv' '_gnome-gv' +'ghead' '_head' +'ghostscript' '_ghostscript' +'ghostview' '_pspdf' +'gid' '_id' +'ginstall' '_install' +'git' '_git' +'git-cvsserver' '_git' +'gitk' '_git' +'git-receive-pack' '_git' +'git-shell' '_git' +'git-upload-archive' '_git' +'git-upload-pack' '_git' +'gjoin' '_join' +'glance' '_openstack' +'gln' '_ln' +'global' '_global' +'glocate' '_locate' +'gls' '_ls' +'gm' '_graphicsmagick' +'gmake' '_make' +'gmd5sum' '_md5sum' +'gmkdir' '_mkdir' +'gmkfifo' '_mkfifo' +'gmknod' '_mknod' +'gmktemp' '_mktemp' +'gmplayer' '_mplayer' +'gmv' '_mv' +'gnl' '_nl' +'gnocchi' '_openstack' +'gnome-gv' '_gnome-gv' +'gnumfmt' '_numfmt' +'gnupod_addsong' '_gnupod' +'gnupod_addsong.pl' '_gnupod' +'gnupod_check' '_gnupod' +'gnupod_check.pl' '_gnupod' +'gnupod_INIT' '_gnupod' +'gnupod_INIT.pl' '_gnupod' +'gnupod_search' '_gnupod' +'gnupod_search.pl' '_gnupod' +'gnutls-cli' '_gnutls' +'gnutls-cli-debug' '_gnutls' +'gnutls-serv' '_gnutls' +'god' '_od' +'gofmt' '_go' +'gpasswd' '_gpasswd' +'gpaste' '_paste' +'gpatch' '_patch' +'gpg' '_gpg' +'gpg2' '_gpg' +'gpgv' '_gpg' +'gpg-zip' '_gpg' +'gphoto2' '_gphoto2' +'gprintenv' '_printenv' +'gprof' '_gprof' +'gqview' '_gqview' +'gradle' '_gradle' +'gradlew' '_gradle' +'grail' '_webbrowser' +'greadlink' '_readlink' +'grep' '_grep' +'grepdiff' '_patchutils' +'grm' '_rm' +'grmdir' '_rmdir' +'groff' '_groff' +'groupadd' '_user_admin' +'groupdel' '_groups' +'groupmod' '_user_admin' +'groups' '_users' +'growisofs' '_growisofs' +'gs' '_ghostscript' +'gsbj' '_pspdf' +'gsdj' '_pspdf' +'gsdj500' '_pspdf' +'gsed' '_sed' +'gseq' '_seq' +'gsettings' '_gsettings' +'gsha1sum' '_md5sum' +'gsha224sum' '_md5sum' +'gsha256sum' '_md5sum' +'gsha384sum' '_md5sum' +'gsha512sum' '_md5sum' +'gshred' '_shred' +'gshuf' '_shuf' +'gslj' '_pspdf' +'gslp' '_pspdf' +'gsnd' '_pspdf' +'gsort' '_sort' +'gsplit' '_split' +'gstat' '_stat' +'gstdbuf' '_stdbuf' +'gstrings' '_strings' +'gstty' '_stty' +'gsum' '_cksum' +'gtac' '_tac' +'gtail' '_tail' +'gtar' '_tar' +'gtee' '_tee' +'gtimeout' '_timeout' +'gtouch' '_touch' +'gtr' '_tr' +'gtty' '_tty' +'guilt' '_guilt' +'guilt-add' '_guilt' +'guilt-applied' '_guilt' +'guilt-delete' '_guilt' +'guilt-files' '_guilt' +'guilt-fold' '_guilt' +'guilt-fork' '_guilt' +'guilt-header' '_guilt' +'guilt-help' '_guilt' +'guilt-import' '_guilt' +'guilt-import-commit' '_guilt' +'guilt-init' '_guilt' +'guilt-new' '_guilt' +'guilt-next' '_guilt' +'guilt-patchbomb' '_guilt' +'guilt-pop' '_guilt' +'guilt-prev' '_guilt' +'guilt-push' '_guilt' +'guilt-rebase' '_guilt' +'guilt-refresh' '_guilt' +'guilt-rm' '_guilt' +'guilt-series' '_guilt' +'guilt-status' '_guilt' +'guilt-top' '_guilt' +'guilt-unapplied' '_guilt' +'guname' '_uname' +'gunexpand' '_unexpand' +'guniq' '_uniq' +'gunzip' '_gzip' +'guptime' '_uptime' +'gv' '_gv' +'gview' '_vim' +'gvim' '_vim' +'gvimdiff' '_vim' +'gwc' '_wc' +'gwho' '_who' +'gxargs' '_xargs' +'gzcat' '_gzip' +'gzegrep' '_grep' +'gzfgrep' '_grep' +'gzgrep' '_grep' +'gzilla' '_webbrowser' +'gzip' '_gzip' +'hash' '_hash' +'hd' '_hexdump' +'head' '_head' +'heat' '_openstack' +'help' '_sccs' +'hexdump' '_hexdump' +'hilite' '_precommand' +'histed' '_zed' +'history' '_fc' +'host' '_host' +'hostname' '_hostname' +'hostnamectl' '_hostnamectl' +'hotjava' '_webbrowser' +'htop' '_htop' +'iceweasel' '_mozilla' +'icombine' '_ispell' +'iconv' '_iconv' +'iconvconfig' '_iconvconfig' +'id' '_id' +'identify' '_imagemagick' +'ifconfig' '_ifconfig' +'ifdown' '_net_interfaces' +'iftop' '_iftop' +'ifup' '_net_interfaces' +'ijoin' '_ispell' +'img2sixel' '_img2sixel' +'import' '_imagemagick' +'inc' '_mh' +'includeres' '_psutils' +'info' '_texinfo' +'infocmp' '_terminals' +'initctl' '_initctl' +'initdb' '_postgresql' +'insmod' '_modutils' +'install' '_install' +'install-info' '_texinfo' +'integer' '_typeset' +'interdiff' '_patchutils' +'ionice' '_ionice' +'iostat' '_iostat' +'ip' '_ip' +'ip6tables' '_iptables' +'ip6tables-restore' '_iptables' +'ip6tables-save' '_iptables' +'ipkg' '_opkg' +'ipsec' '_ipsec' +'ipset' '_ipset' +'iptables' '_iptables' +'iptables-restore' '_iptables' +'iptables-save' '_iptables' +'irb' '_ruby' +'ironic' '_openstack' +'irssi' '_irssi' +'isag' '_sysstat' +'ispell' '_ispell' +'iwconfig' '_iwconfig' +'jadetex' '_tex' +'jar' '_java' +'jarsigner' '_java' +'java' '_java' +'javac' '_java' +'javadoc' '_java' +'javah' '_java' +'javap' '_java' +'jdb' '_java' +'jobs' '_jobs_builtin' +'joe' '_joe' +'join' '_join' +'journalctl' '_journalctl' +'jq' '_jq' +'jupyter' '_jupyter' +'kdeconnect-cli' '_kdeconnect' +'kernel-install' '_kernel-install' +'keystone' '_openstack' +'keytool' '_java' +'kfmclient' '_kfmclient' +'kill' '_kill' +'killall' '_killall' +'killall5' '_killall' +'kioclient' '_kfmclient' +'knock' '_knock' +'konqueror' '_webbrowser' +'kpartx' '_kpartx' +'kpdf' '_pdf' +'ksh' '_sh' +'ksh88' '_sh' +'ksh93' '_sh' +'kvno' '_kvno' +'last' '_last' +'lastb' '_last' +'latex' '_tex' +'latexmk' '_tex' +'ldconfig' '_ldconfig' +'ldconfig.real' '_ldconfig' +'ldd' '_ldd' +'less' '_less' +'let' '_math' +'lftp' '_ncftp' +'lha' '_lha' +'libinput' '_libinput' +'light' '_webbrowser' +'limit' '_limit' +'links' '_links' +'links2' '_links' +'linux' '_uml' +'lldb' '_lldb' +'llvm-g++' '_gcc' +'llvm-gcc' '_gcc' +'llvm-objdump' '_objdump' +'ln' '_ln' +'loadkeys' '_loadkeys' +'local' '_typeset' +'locale' '_locale' +'localectl' '_localectl' +'localedef' '_localedef' +'locate' '_locate' +'log' '_nothing' +'logger' '_logger' +'loginctl' '_loginctl' +'logname' '_nothing' +'look' '_look' +'losetup' '_losetup' +'lp' '_lp' +'lpadmin' '_lp' +'lpinfo' '_lp' +'lpoptions' '_lp' +'lpq' '_lp' +'lpr' '_lp' +'lprm' '_lp' +'lpstat' '_lp' +'ls' '_ls' +'lsattr' '_lsattr' +'lsblk' '_lsblk' +'lsdiff' '_patchutils' +'lsinitcpio' '_mkinitcpio' +'lsmod' '_modutils' +'lsns' '_lsns' +'lsof' '_lsof' +'lsusb' '_lsusb' +'ltrace' '_ltrace' +'lua' '_lua' +'luarocks' '_luarocks' +'lynx' '_lynx' +'lz4' '_lz4' +'lz4c' '_lz4' +'lz4c32' '_lz4' +'lz4cat' '_lz4' +'lzcat' '_xz' +'lzma' '_xz' +'lzop' '_lzop' +'mac2unix' '_dos2unix' +'machinectl' '_machinectl' +'magnum' '_openstack' +'mail' '_mail' +'Mail' '_mail' +'mailx' '_mail' +'make' '_make' +'makeinfo' '_texinfo' +'makepkg' '_pacman' +'man' '_man' +'manage.py' '_django' +'manila' '_openstack' +'mark' '_mh' +'mat' '_mat' +'mat2' '_mat2' +'-math-' '_math' +'matlab' '_matlab' +'mattrib' '_mtools' +'mcd' '_mtools' +'mcopy' '_mtools' +'md2' '_cksum' +'md4' '_cksum' +'md5' '_cksum' +'md5sum' '_md5sum' +'mdadm' '_mdadm' +'mdel' '_mtools' +'mdeltree' '_mtools' +'mdir' '_mtools' +'mdu' '_mtools' +'mencal' '_mencal' +'mere' '_mere' +'merge' '_rcs' +'metaflac' '_flac' +'mformat' '_mtools' +'mgv' '_pspdf' +'mhfixmsg' '_mh' +'mhlist' '_mh' +'mhmail' '_mh' +'mhn' '_mh' +'mhparam' '_mh' +'mhpath' '_mh' +'mhshow' '_mh' +'mhstore' '_mh' +'mii-tool' '_mii-tool' +'mistral' '_openstack' +'mkdir' '_mkdir' +'mkfifo' '_mkfifo' +'mkinitcpio' '_mkinitcpio' +'mkisofs' '_growisofs' +'mknod' '_mknod' +'mksh' '_sh' +'mktemp' '_mktemp' +'mktunes' '_gnupod' +'mktunes.pl' '_gnupod' +'mlabel' '_mtools' +'mlocate' '_locate' +'mmd' '_mtools' +'mmm' '_webbrowser' +'mmount' '_mtools' +'mmove' '_mtools' +'modinfo' '_modutils' +'modprobe' '_modutils' +'module' '_module' +'mogrify' '_imagemagick' +'monasca' '_openstack' +'mondoarchive' '_mondo' +'montage' '_imagemagick' +'moosic' '_moosic' +'Mosaic' '_webbrowser' +'mosh' '_mosh' +'mount' '_mount' +'mozilla' '_mozilla' +'mozilla-firefox' '_mozilla' +'mozilla-xremote-client' '_mozilla' +'mpc' '_mpc' +'mplayer' '_mplayer' +'mpstat' '_sysstat' +'mpv' '_mpv' +'mr' '_myrepos' +'mrd' '_mtools' +'mread' '_mtools' +'mren' '_mtools' +'msgchk' '_mh' +'mt' '_mt' +'mtn' '_monotone' +'mtoolstest' '_mtools' +'mtr' '_mtr' +'mtype' '_mtools' +'munchlist' '_ispell' +'mupdf' '_mupdf' +'murano' '_openstack' +'mush' '_mail' +'mutt' '_mutt' +'mv' '_mv' +'mvim' '_vim' +'mw' '_mutt-wizard.zsh' +'mx' '_hosts' +'mysql' '_mysql_utils' +'mysqladmin' '_mysql_utils' +'mysqldiff' '_mysqldiff' +'mysqldump' '_mysql_utils' +'mysqlimport' '_mysql_utils' +'mysqlshow' '_mysql_utils' +'nail' '_mail' +'native2ascii' '_java' +'nautilus' '_nautilus' +'nawk' '_awk' +'nc' '_netcat' +'ncal' '_cal' +'ncftp' '_ncftp' +'ncl' '_nedit' +'nedit' '_nedit' +'nedit-nc' '_nedit' +'netcat' '_netcat' +'netrik' '_webbrowser' +'netscape' '_netscape' +'netstat' '_netstat' +'networkctl' '_networkctl' +'neutron' '_openstack' +'new' '_mh' +'newgrp' '_groups' +'next' '_mh' +'nginx' '_nginx' +'ngrep' '_ngrep' +'nice' '_nice' +'ninja' '_ninja' +'nkf' '_nkf' +'nl' '_nl' +'nm' '_nm' +'nmap' '_nmap' +'nmblookup' '_samba' +'nmcli' '_networkmanager' +'nocorrect' '_precommand' +'noglob' '_precommand' +'nohup' '_precommand' +'notmuch' '_notmuch' +'nova' '_openstack' +'npm' '_npm' +'ns' '_hosts' +'nsenter' '_nsenter' +'nslookup' '_nslookup' +'ntalk' '_other_accounts' +'numfmt' '_numfmt' +'nvim' '_vim' +'objdump' '_objdump' +'od' '_od' +'ogg123' '_vorbis' +'oggdec' '_vorbis' +'oggenc' '_vorbis' +'ogginfo' '_vorbis' +'oksh' '_sh' +'okular' '_okular' +'oomctl' '_oomctl' +'openstack' '_openstack' +'opera' '_webbrowser' +'opera-next' '_webbrowser' +'opkg' '_opkg' +'opusdec' '_opustools' +'opusenc' '_opustools' +'opusinfo' '_opustools' +'p4' '_perforce' +'p4d' '_perforce' +'pacat' '_pulseaudio' +'paccache' '_paccache' +'pacdiff' '_pacdiff' +'pack' '_pack' +'packf' '_mh' +'paclist' '_paclist' +'paclog-pkglist' '_paclog-pkglist' +'pacman' '_pacman' +'pacman-conf' '_pacman' +'pacman-key' '_pacman' +'pacman.static' '_pacman' +'pacmd' '_pulseaudio' +'pacscripts' '_pacscripts' +'pacsearch' '_pacsearch' +'pacsort' '_pacsort' +'pactl' '_pulseaudio' +'pactree' '_pactree' +'padsp' '_pulseaudio' +'pandoc' '_pandoc' +'paplay' '_pulseaudio' +'-parameter-' '_parameter' +'parec' '_pulseaudio' +'parecord' '_pulseaudio' +'paru' '_paru' +'pass' '_pass' +'passwd' '_users' +'paste' '_paste' +'pasuspender' '_pulseaudio' +'patch' '_patch' +'pax' '_pax' +'pcat' '_pack' +'pcp-htop' '_htop' +'pcred' '_pids' +'pdf2dsc' '_pdf' +'pdf2ps' '_pdf' +'pdffonts' '_pdf' +'pdfimages' '_pdf' +'pdfinfo' '_pdf' +'pdfjadetex' '_tex' +'pdflatex' '_tex' +'pdfopt' '_pdf' +'pdftex' '_tex' +'pdftexi2dvi' '_texinfo' +'pdftk' '_pdftk' +'pdftopbm' '_pdf' +'pdftops' '_pdf' +'pdftotext' '_pdf' +'pdksh' '_sh' +'perf' '_perf' +'perl' '_perl' +'perldoc' '_perldoc' +'pfiles' '_pids' +'pflags' '_pids' +'pg_config' '_postgresql' +'pg_ctl' '_postgresql' +'pg_dump' '_postgresql' +'pg_dumpall' '_postgresql' +'pg_isready' '_postgresql' +'pgrep' '_pgrep' +'pg_restore' '_postgresql' +'pg_upgrade' '_postgresql' +'php' '_php' +'pick' '_mh' +'picocom' '_picocom' +'pidof' '_pidof' +'pidstat' '_sysstat' +'pigz' '_gzip' +'pine' '_pine' +'pinef' '_pine' +'pinfo' '_texinfo' +'ping' '_ping' +'ping6' '_ping' +'pkgadd' '_pkgadd' +'pkg-config' '_pkg-config' +'pkginfo' '_pkginfo' +'pkgrm' '_pkgrm' +'pkill' '_pgrep' +'pldd' '_pids' +'pmake' '_make' +'pman' '_perl_modules' +'pmap' '_pmap' +'pmcat' '_perl_modules' +'pmdesc' '_perl_modules' +'pmeth' '_perl_modules' +'pmexp' '_perl_modules' +'pmfunc' '_perl_modules' +'pmload' '_perl_modules' +'pmls' '_perl_modules' +'pmpath' '_perl_modules' +'pmvers' '_perl_modules' +'podgrep' '_perl_modules' +'podpath' '_perl_modules' +'podtoc' '_perl_modules' +'poff' '_pon' +'policytool' '_java' +'pon' '_pon' +'popd' '_directory_stack' +'postconf' '_postfix' +'postgres' '_postgresql' +'postmaster' '_postgresql' +'postqueue' '_postfix' +'postsuper' '_postfix' +'pr' '_pr' +'prev' '_mh' +'print' '_print' +'printenv' '_printenv' +'printf' '_print' +'prompt' '_prompt' +'prove' '_prove' +'prs' '_sccs' +'prt' '_sccs' +'prun' '_pids' +'ps' '_ps' +'ps2ascii' '_pspdf' +'ps2epsi' '_postscript' +'ps2pdf' '_postscript' +'ps2pdf12' '_postscript' +'ps2pdf13' '_postscript' +'ps2pdf14' '_postscript' +'ps2pdfwr' '_postscript' +'ps2ps' '_postscript' +'psbook' '_psutils' +'psed' '_sed' +'psig' '_pids' +'psmerge' '_psutils' +'psmulti' '_postscript' +'psnup' '_psutils' +'psql' '_postgresql' +'psresize' '_psutils' +'psselect' '_psutils' +'pstack' '_pids' +'pstoedit' '_pspdf' +'pstop' '_pids' +'pstops' '_psutils' +'pstotgif' '_pspdf' +'pswrap' '_postscript' +'ptx' '_ptx' +'pulseaudio' '_pulseaudio' +'pump' '_pump' +'pushd' '_cd' +'pv' '_pv' +'pwait' '_pids' +'pwdx' '_pids' +'pwgen' '_pwgen' +'pyhtmlizer' '_twisted' +'qdbus' '_qdbus' +'qiv' '_qiv' +'_qrcp' '_qrcp' +'qrcp' '_qrcp' +'quilt' '_quilt' +'r' '_fc' +'rake' '_rake' +'rankmirrors' '_rankmirrors' +'ranlib' '_ranlib' +'rar' '_rar' +'rc' '_sh' +'rclone' '_rclone' +'rcp' '_rlogin' +'rcs' '_rcs' +'rcsdiff' '_rcs' +'rdesktop' '_rdesktop' +'read' '_read' +'readelf' '_readelf' +'readlink' '_readlink' +'readonly' '_typeset' +'-redirect-' '_redirect' +'-redirect-,<,bunzip2' '_bzip2' +'-redirect-,<,bzip2' '_bzip2' +'-redirect-,>,bzip2' '_bzip2' +'-redirect-,<,compress' '_compress' +'-redirect-,>,compress' '_compress' +'-redirect-,-default-,-default-' '_files' +'-redirect-,<,gunzip' '_gzip' +'-redirect-,<,gzip' '_gzip' +'-redirect-,>,gzip' '_gzip' +'-redirect-,<,uncompress' '_compress' +'-redirect-,<,unxz' '_xz' +'-redirect-,<,xz' '_xz' +'-redirect-,>,xz' '_xz' +'refile' '_mh' +'rehash' '_hash' +'reindexdb' '_postgresql' +'reload' '_initctl' +'remsh' '_rlogin' +'renice' '_renice' +'repl' '_mh' +'resolvectl' '_resolvectl' +'restart' '_initctl' +'retawq' '_webbrowser' +'rgrep' '_grep' +'rgview' '_vim' +'rgvim' '_vim' +'ri' '_ri' +'rlogin' '_rlogin' +'rm' '_rm' +'rmd160' '_cksum' +'rmdel' '_sccs' +'rmdir' '_rmdir' +'rmf' '_mh' +'rmic' '_java' +'rmid' '_java' +'rmiregistry' '_java' +'rmm' '_mh' +'rmmod' '_modutils' +'route' '_route' +'rrdtool' '_rrdtool' +'rsh' '_rlogin' +'rsync' '_rsync' +'rtin' '_tin' +'rubber' '_rubber' +'rubber-info' '_rubber' +'rubber-pipe' '_rubber' +'ruby' '_ruby' +'ruby-mri' '_ruby' +'run-help' '_run-help' +'rup' '_hosts' +'rusage' '_precommand' +'rview' '_vim' +'rvim' '_vim' +'rwho' '_hosts' +'rxvt' '_urxvt' +'s2p' '_sed' +'sact' '_sccs' +'sadf' '_sysstat' +'sahara' '_openstack' +'sar' '_sysstat' +'scan' '_mh' +'sccs' '_sccs' +'sccsdiff' '_sccs' +'sched' '_sched' +'schedtool' '_schedtool' +'scons' '_scons' +'scp' '_ssh' +'screen' '_screen' +'script' '_script' +'scriptreplay' '_script' +'seaf-cli' '_seafile' +'sed' '_sed' +'senlin' '_openstack' +'seq' '_seq' +'serialver' '_java' +'service' '_service' +'set' '_set' +'setfacl' '_setfacl' +'setfacl.exe' '_setfacl' +'setfattr' '_attr' +'setopt' '_setopt' +'setpriv' '_setpriv' +'setsid' '_setsid' +'setxkbmap' '_setxkbmap' +'sftp' '_ssh' +'sh' '_sh' +'sha1' '_cksum' +'sha1sum' '_md5sum' +'sha224sum' '_md5sum' +'sha256' '_cksum' +'sha256sum' '_md5sum' +'sha384' '_cksum' +'sha384sum' '_md5sum' +'sha512' '_cksum' +'sha512sum' '_md5sum' +'sha512t256' '_cksum' +'shasum' '_shasum' +'shift' '_arrays' +'show' '_mh' +'showchar' '_psutils' +'showmount' '_showmount' +'shred' '_shred' +'shuf' '_shuf' +'shutdown' '_shutdown' +'sisu' '_sisu' +'skein1024' '_cksum' +'skein256' '_cksum' +'skein512' '_cksum' +'skipstone' '_webbrowser' +'slabtop' '_slabtop' +'slitex' '_tex' +'slocate' '_locate' +'slogin' '_ssh' +'slrn' '_slrn' +'smartctl' '_smartmontools' +'smbclient' '_samba' +'smbcontrol' '_samba' +'smbstatus' '_samba' +'soa' '_hosts' +'socket' '_socket' +'sort' '_sort' +'sortm' '_mh' +'source' '_source' +'spamassassin' '_spamassassin' +'split' '_split' +'splitdiff' '_patchutils' +'sqlite' '_sqlite' +'sqlite3' '_sqlite' +'sqsh' '_sqsh' +'sr' '_surfraw' +'srptool' '_gnutls' +'ss' '_ss' +'ssh' '_ssh' +'ssh-add' '_ssh' +'ssh-agent' '_ssh' +'ssh-copy-id' '_ssh' +'sshfs' '_sshfs' +'ssh-keygen' '_ssh' +'ssh-keyscan' '_ssh' +'star' '_tar' +'start' '_initctl' +'stat' '_stat' +'status' '_initctl' +'stdbuf' '_stdbuf' +'stg' '_stgit' +'stop' '_initctl' +'stow' '_stow' +'strace' '_strace' +'strace64' '_strace' +'strftime' '_strftime' +'strings' '_strings' +'strip' '_strip' +'strongswan' '_ipsec' +'stty' '_stty' +'su' '_su' +'subl' '_sublimetext' +'-subscript-' '_subscript' +'sudo' '_sudo' +'sudoedit' '_sudo' +'sum' '_cksum' +'surfraw' '_surfraw' +'sv' '_runit' +'svn' '_subversion' +'svnadmin' '_subversion' +'svnadmin-static' '_subversion' +'svnlite' '_subversion' +'svnliteadmin' '_subversion' +'swaks' '_swaks' +'swanctl' '_swanctl' +'swift' '_swift' +'swiftc' '_swift' +'sync' '_nothing' +'sysctl' '_sysctl' +'systemctl' '_systemctl' +'systemd-analyze' '_systemd-analyze' +'systemd-ask-password' '_systemd' +'systemd-cat' '_systemd' +'systemd-cgls' '_systemd' +'systemd-cgtop' '_systemd' +'systemd-delta' '_systemd-delta' +'systemd-detect-virt' '_systemd' +'systemd-inhibit' '_systemd-inhibit' +'systemd-machine-id-setup' '_systemd' +'systemd-notify' '_systemd' +'systemd-nspawn' '_systemd-nspawn' +'systemd-path' '_systemd-path' +'systemd-resolve' '_resolvectl' +'systemd-run' '_systemd-run' +'systemd-tmpfiles' '_systemd-tmpfiles' +'systemd-tty-ask-password-agent' '_systemd' +'tac' '_tac' +'tacker' '_openstack' +'tail' '_tail' +'talk' '_other_accounts' +'tar' '_tar' +'tardy' '_tardy' +'tcpdump' '_tcpdump' +'tcp_open' '_tcpsys' +'tcptraceroute' '_tcptraceroute' +'tcsh' '_sh' +'tda' '_devtodo' +'tdd' '_devtodo' +'tde' '_devtodo' +'tdr' '_devtodo' +'tee' '_tee' +'telnet' '_telnet' +'tex' '_tex' +'texi2any' '_texinfo' +'texi2dvi' '_texinfo' +'texi2pdf' '_texinfo' +'texindex' '_texinfo' +'tg' '_topgit' +'tidy' '_tidy' +'tig' '_git' +'-tilde-' '_tilde' +'time' '_precommand' +'timedatectl' '_timedatectl' +'timeout' '_timeout' +'times' '_nothing' +'tin' '_tin' +'tkconch' '_twisted' +'tkinfo' '_texinfo' +'tla' '_tla' +'tload' '_tload' +'tmux' '_tmux' +'todo' '_devtodo' +'todo.sh' '_todo.sh' +'toilet' '_toilet' +'top' '_top' +'totdconfig' '_totd' +'touch' '_touch' +'tpb' '_tpb' +'tput' '_tput' +'tr' '_tr' +'tracepath' '_tracepath' +'tracepath6' '_tracepath' +'traceroute' '_hosts' +'transmission-remote' '_transmission' +'trap' '_trap' +'tree' '_tree' +'tremc' '_tremc' +'trial' '_twisted' +'trove' '_openstack' +'true' '_nothing' +'truncate' '_truncate' +'truss' '_truss' +'tryaffix' '_ispell' +'tty' '_tty' +'ttyctl' '_ttyctl' +'tunctl' '_uml' +'tune2fs' '_tune2fs' +'tunes2pod' '_gnupod' +'tunes2pod.pl' '_gnupod' +'twidge' '_twidge' +'twist' '_twisted' +'twistd' '_twisted' +'txt' '_hosts' +'type' '_which' +'typeset' '_typeset' +'udevadm' '_udevadm' +'ulimit' '_ulimit' +'uml_mconsole' '_uml' +'uml_moo' '_uml' +'uml_switch' '_uml' +'umount' '_mount' +'unace' '_unace' +'unalias' '_aliases' +'uname' '_uname' +'uncompress' '_compress' +'unexpand' '_unexpand' +'unfunction' '_functions' +'unget' '_sccs' +'unhash' '_unhash' +'uniq' '_uniq' +'unison' '_unison' +'units' '_units' +'unix2dos' '_dos2unix' +'unix2mac' '_dos2unix' +'unlimit' '_limits' +'unlz4' '_lz4' +'unlzma' '_xz' +'unpack' '_pack' +'unpigz' '_gzip' +'unrar' '_rar' +'unset' '_vars' +'unsetopt' '_setopt' +'unshare' '_unshare' +'unwrapdiff' '_patchutils' +'unxz' '_xz' +'unzip' '_zip' +'updpkgsums' '_updpkgsums' +'uptime' '_uptime' +'urxvt' '_urxvt' +'urxvt256c' '_urxvt' +'urxvt256cc' '_urxvt' +'urxvt256c-ml' '_urxvt' +'urxvt256c-mlc' '_urxvt' +'urxvtc' '_urxvt' +'useradd' '_user_admin' +'userdel' '_users' +'usermod' '_user_admin' +'vacuumdb' '_postgresql' +'val' '_sccs' +'valgrind' '_valgrind' +'-value-' '_value' +'-value-,ADB_TRACE,-default-' '_adb' +'-value-,ANDROID_LOG_TAGS,-default-' '_adb' +'-value-,ANDROID_SERIAL,-default-' '_adb' +'-value-,ANSIBLE_INVENTORY_ENABLED,-default-' '_ansible' +'-value-,ANSIBLE_STDOUT_CALLBACK,-default-' '_ansible' +'-value-,ANT_ARGS,-default-' '_ant' +'-value-,CFLAGS,-default-' '_gcc' +'-value-,CPPFLAGS,-default-' '_gcc' +'-value-,CXXFLAGS,-default-' '_gcc' +'-value-,-default-,-command-' '_zargs' +'-value-,-default-,-default-' '_value' +'-value-,DISPLAY,-default-' '_x_display' +'-value-,GREP_OPTIONS,-default-' '_grep' +'-value-,GZIP,-default-' '_gzip' +'-value-,LANG,-default-' '_locales' +'-value-,LANGUAGE,-default-' '_locales' +'-value-,LD_DEBUG,-default-' '_ld_debug' +'-value-,LDFLAGS,-default-' '_gcc' +'-value-,LESSCHARSET,-default-' '_less' +'-value-,LESS,-default-' '_less' +'-value-,LOOPDEV_DEBUG,-default-' '_losetup' +'-value-,LPDEST,-default-' '_printers' +'-value-,MPD_HOST,-default' '_mpc' +'-value-,P4CLIENT,-default-' '_perforce' +'-value-,P4MERGE,-default-' '_perforce' +'-value-,P4PORT,-default-' '_perforce' +'-value-,P4USER,-default-' '_perforce' +'-value-,PERLDOC,-default-' '_perldoc' +'-value-,PRINTER,-default-' '_printers' +'-value-,PROMPT2,-default-' '_ps1234' +'-value-,PROMPT3,-default-' '_ps1234' +'-value-,PROMPT4,-default-' '_ps1234' +'-value-,PROMPT,-default-' '_ps1234' +'-value-,PS1,-default-' '_ps1234' +'-value-,PS2,-default-' '_ps1234' +'-value-,PS3,-default-' '_ps1234' +'-value-,PS4,-default-' '_ps1234' +'-value-,RPROMPT2,-default-' '_ps1234' +'-value-,RPROMPT,-default-' '_ps1234' +'-value-,RPS1,-default-' '_ps1234' +'-value-,RPS2,-default-' '_ps1234' +'-value-,SPROMPT,-default-' '_ps1234' +'-value-,TERM,-default-' '_terminals' +'-value-,TERMINFO_DIRS,-default-' '_dir_list' +'-value-,TZ,-default-' '_time_zone' +'-value-,VALGRIND_OPTS,-default-' '_valgrind' +'-value-,WWW_HOME,-default-' '_urls' +'-value-,XML_CATALOG_FILES,-default-' '_xmlsoft' +'-value-,XZ_DEFAULTS,-default-' '_xz' +'-value-,XZ_OPT,-default-' '_xz' +'-vared-' '_in_vared' +'vared' '_vared' +'vcs_info_hookadd' '_vcs_info' +'vcs_info_hookdel' '_vcs_info' +'vi' '_vi' +'view' '_vi' +'vim' '_vim' +'vimdiff' '_vim' +'virsh' '_libvirt' +'virt-admin' '_libvirt' +'virt-host-validate' '_libvirt' +'virt-pki-validate' '_libvirt' +'virt-xml-validate' '_libvirt' +'visudo' '_visudo' +'vitrage' '_openstack' +'vmstat' '_vmstat' +'vncserver' '_vnc' +'vncviewer' '_vnc' +'vorbiscomment' '_vorbis' +'vpnc' '_vpnc' +'vpnc-connect' '_vpnc' +'vserver' '_vserver' +'w' '_w' +'w3m' '_w3m' +'wait' '_wait' +'watch' '_watch' +'watcher' '_openstack' +'wc' '_wc' +'wget' '_wget' +'what' '_sccs' +'whatis' '_man' +'whence' '_which' +'where' '_which' +'whereis' '_whereis' +'which' '_which' +'who' '_who' +'whoami' '_nothing' +'whois' '_whois' +'whom' '_mh' +'wiggle' '_wiggle' +'wipefs' '_wipefs' +'wodim' '_cdrecord' +'wpa_cli' '_wpa_cli' +'write' '_users_on' +'www' '_webbrowser' +'xargs' '_xargs' +'xattr' '_attr' +'xauth' '_xauth' +'xautolock' '_xautolock' +'xclip' '_xclip' +'xdpyinfo' '_x_utils' +'xdvi' '_xdvi' +'xelatex' '_tex' +'xetex' '_tex' +'xev' '_x_utils' +'xfd' '_x_utils' +'xfig' '_xfig' +'xfontsel' '_x_utils' +'xfreerdp' '_rdesktop' +'xhost' '_x_utils' +'xinput' '_xinput' +'xkill' '_x_utils' +'xli' '_xloadimage' +'xloadimage' '_xloadimage' +'xlsatoms' '_x_utils' +'xlsclients' '_x_utils' +'xml' '_xmlstarlet' +'xmllint' '_xmlsoft' +'xmlstarlet' '_xmlstarlet' +'xmms2' '_xmms2' +'xmodmap' '_xmodmap' +'xmosaic' '_webbrowser' +'xon' '_x_utils' +'xournal' '_xournal' +'xpdf' '_xpdf' +'xping' '_hosts' +'xprop' '_x_utils' +'xrandr' '_xrandr' +'xrdb' '_x_utils' +'xscreensaver-command' '_xscreensaver' +'xset' '_xset' +'xsetbg' '_xloadimage' +'xsetroot' '_x_utils' +'xsltproc' '_xmlsoft' +'xterm' '_xterm' +'xtightvncviewer' '_vnc' +'xtp' '_imagemagick' +'xv' '_xv' +'xview' '_xloadimage' +'xvnc4viewer' '_vnc' +'xvncviewer' '_vnc' +'xwallpaper' '_xwallpaper' +'xwd' '_x_utils' +'xwininfo' '_x_utils' +'xwit' '_xwit' +'xwud' '_x_utils' +'xxd' '_xxd' +'xz' '_xz' +'xzcat' '_xz' +'yafc' '_yafc' +'yash' '_sh' +'yay' '_yay' +'ypbind' '_yp' +'ypcat' '_yp' +'ypmatch' '_yp' +'yppasswd' '_yp' +'yppoll' '_yp' +'yppush' '_yp' +'ypserv' '_yp' +'ypset' '_yp' +'ypwhich' '_yp' +'ypxfr' '_yp' +'ytalk' '_other_accounts' +'yt-dlp' '_yt-dlp' +'zargs' '_zargs' +'zathura' '_zathura' +'zcalc' '_zcalc' +'-zcalc-line-' '_zcalc_line' +'zcat' '_zcat' +'zcompile' '_zcompile' +'zcp' '_zmv' +'zdb' '_zfs' +'zdelattr' '_zattr' +'zdump' '_zdump' +'zeal' '_zeal' +'zed' '_zed' +'zegrep' '_grep' +'zen' '_webbrowser' +'zf_chgrp' '_chown' +'zf_chmod' '_chmod' +'zf_chown' '_chown' +'zfgrep' '_grep' +'zf_ln' '_ln' +'zf_mkdir' '_mkdir' +'zf_mv' '_mv' +'zf_rm' '_rm' +'zf_rmdir' '_rmdir' +'zfs' '_zfs' +'zgetattr' '_zattr' +'zgrep' '_grep' +'zip' '_zip' +'zipinfo' '_zip' +'zle' '_zle' +'zlistattr' '_zattr' +'zln' '_zmv' +'zmail' '_mail' +'zmodload' '_zmodload' +'zmv' '_zmv' +'zone' '_hosts' +'zparseopts' '_zparseopts' +'zpool' '_zfs' +'zpty' '_zpty' +'zsetattr' '_zattr' +'zsh' '_zsh' +'zsh-mime-handler' '_zsh-mime-handler' +'zsocket' '_zsocket' +'zstat' '_stat' +'zstyle' '_zstyle' +'ztodo' '_ztodo' +'zun' '_openstack' +'zxpdf' '_xpdf' +) + +_services=( +'bzcat' 'bunzip2' +'gchgrp' 'chgrp' +'gchown' 'chown' +'gnupod_addsong.pl' 'gnupod_addsong' +'gnupod_check.pl' 'gnupod_check' +'gnupod_INIT.pl' 'gnupod_INIT' +'gnupod_search.pl' 'gnupod_search' +'gpg2' 'gpg' +'gzcat' 'gunzip' +'iceweasel' 'firefox' +'lzcat' 'unxz' +'lzma' 'xz' +'Mail' 'mail' +'mailx' 'mail' +'mktunes.pl' 'mktunes' +'nail' 'mail' +'ncl' 'nc' +'nedit-nc' 'nc' +'pacman.static' 'pacman' +'pcat' 'unpack' +'-redirect-,<,bunzip2' 'bunzip2' +'-redirect-,<,bzip2' 'bzip2' +'-redirect-,>,bzip2' 'bunzip2' +'-redirect-,<,compress' 'compress' +'-redirect-,>,compress' 'uncompress' +'-redirect-,<,gunzip' 'gunzip' +'-redirect-,<,gzip' 'gzip' +'-redirect-,>,gzip' 'gunzip' +'-redirect-,<,uncompress' 'uncompress' +'-redirect-,<,unxz' 'unxz' +'-redirect-,<,xz' 'xz' +'-redirect-,>,xz' 'unxz' +'remsh' 'rsh' +'slogin' 'ssh' +'svnadmin-static' 'svnadmin' +'svnlite' 'svn' +'svnliteadmin' 'svnadmin' +'tunes2pod.pl' 'tunes2pod' +'unlzma' 'unxz' +'xelatex' 'latex' +'xetex' 'tex' +'xzcat' 'unxz' +'zf_chgrp' 'chgrp' +'zf_chown' 'chown' +) + +_patcomps=( +'*/(init|rc[0-9S]#).d/*' '_init_d' +'notmuch-*' '_notmuch' +) + +_postpatcomps=( +'_*' '_compadd' +'c++-*' '_gcc' +'g++-*' '_gcc' +'gcc-*' '_gcc' +'gem[0-9.]#' '_gem' +'lua[0-9.-]##' '_lua' +'(p[bgpn]m*|*top[bgpn]m)' '_pbm' +'php[0-9.-]' '_php' +'pip[0-9.]#' '_pip' +'pydoc[0-9.]#' '_pydoc' +'python[0-9.]#' '_python' +'qemu(|-system-*)' '_qemu' +'(ruby|[ei]rb)[0-9.]#' '_ruby' +'shasum(|5).*' '_shasum' +'(texi(2*|ndex))' '_texi' +'(tiff*|*2tiff|pal2rgb)' '_tiff' +'-value-,(ftp|http(|s))_proxy,-default-' '_urls' +'-value-,LC_*,-default-' '_locales' +'-value-,*path,-default-' '_directories' +'-value-,*PATH,-default-' '_dir_list' +'-value-,RUBY(LIB|OPT|PATH),-default-' '_ruby' +'*/X11(|R<4->)/*' '_x_arguments' +'yodl(|2*)' '_yodl' +'zf*' '_zftp' +) + +_compautos=( +'_call_program' '+X' +) + +zle -C _bash_complete-word .complete-word _bash_completions +zle -C _bash_list-choices .list-choices _bash_completions +zle -C _complete_debug .complete-word _complete_debug +zle -C _complete_help .complete-word _complete_help +zle -C _complete_tag .complete-word _complete_tag +zle -C _correct_filename .complete-word _correct_filename +zle -C _correct_word .complete-word _correct_word +zle -C _expand_alias .complete-word _expand_alias +zle -C _expand_word .complete-word _expand_word +zle -C _history-complete-newer .complete-word _history_complete_word +zle -C _history-complete-older .complete-word _history_complete_word +zle -C _list_expansions .list-choices _expand_word +zle -C _most_recent_file .complete-word _most_recent_file +zle -C _next_tags .list-choices _next_tags +zle -C _read_comp .complete-word _read_comp +bindkey '^X^R' _read_comp +bindkey '^X?' _complete_debug +bindkey '^XC' _correct_filename +bindkey '^Xa' _expand_alias +bindkey '^Xc' _correct_word +bindkey '^Xd' _list_expansions +bindkey '^Xe' _expand_word +bindkey '^Xh' _complete_help +bindkey '^Xm' _most_recent_file +bindkey '^Xn' _next_tags +bindkey '^Xt' _complete_tag +bindkey '^X~' _bash_list-choices +bindkey '^[,' _history-complete-newer +bindkey '^[/' _history-complete-older +bindkey '^[~' _bash_complete-word + +autoload -Uz _bat _bluetoothctl _bootctl _bun _busctl \ + _cargo _checkupdates _coredumpctl _curl _email-notmuch \ + _hostnamectl _img2sixel _journalctl _jupyter _kernel-install \ + _libinput _localectl _loginctl _machinectl _mkinitcpio \ + _mpv _mutt-wizard.zsh _networkctl _ninja _notmuch \ + _oomctl _paccache _pacdiff _paclist _paclog-pkglist \ + _pacman _pacscripts _pacsearch _pacsort _pactree \ + _paru _pass _pulseaudio _qrcp _rankmirrors \ + _rclone _resolvectl _sd_hosts_or_user_at_host _sd_machines _sd_outputmodes \ + _sd_unit_files _systemctl _systemd _systemd-analyze _systemd-delta \ + _systemd-inhibit _systemd-nspawn _systemd-path _systemd-run _systemd-tmpfiles \ + _timedatectl _tremc _udevadm _updpkgsums _xwallpaper \ + _yay _yt-dlp _zathura _cdr _all_labels \ + _all_matches _alternative _approximate _arg_compile _arguments \ + _bash_completions _cache_invalid _call_function _combination _complete \ + _complete_debug _complete_help _complete_help_generic _complete_tag _comp_locale \ + _correct _correct_filename _correct_word _describe _description \ + _dispatch _expand _expand_alias _expand_word _extensions \ + _external_pwds _generic _guard _history _history_complete_word \ + _ignored _list _main_complete _match _menu \ + _message _most_recent_file _multi_parts _next_label _next_tags \ + _normal _nothing _numbers _oldlist _pick_variant \ + _prefix _read_comp _regex_arguments _regex_words _requested \ + _retrieve_cache _sep_parts _sequence _set_command _setup \ + _store_cache _sub_commands _tags _user_expand _values \ + _wanted _acpi _acpitool _alsa-utils _analyseplugin \ + _basenc _brctl _btrfs _capabilities _chattr \ + _chcon _choom _chrt _cpupower _cryptsetup \ + _dkms _e2label _ethtool _findmnt _free \ + _fuse_arguments _fusermount _fuse_values _gpasswd _htop \ + _iconvconfig _ionice _ipset _iptables _iwconfig \ + _kpartx _losetup _lsattr _lsblk _lsns \ + _lsusb _ltrace _mat _mat2 _mdadm \ + _mii-tool _modutils _mondo _networkmanager _nsenter \ + _opkg _perf _pidof _pmap _qdbus \ + _schedtool _selinux_contexts _selinux_roles _selinux_types _selinux_users \ + _setpriv _setsid _slabtop _ss _sshfs \ + _strace _sysstat _tload _tpb _tracepath \ + _tune2fs _uml _unshare _valgrind _vserver \ + _wakeup_capable_devices _wipefs _wpa_cli _a2ps _aap \ + _abcde _absolute_command_paths _ack _adb _ansible \ + _ant _antiword _apachectl _apm _arch_archives \ + _arch_namespace _arp _arping _asciidoctor _asciinema \ + _at _attr _augeas _avahi _awk \ + _base64 _basename _bash _baudrates _baz \ + _beep _bibtex _bind_addresses _bison _bittorrent \ + _bogofilter _bpf_filters _bpython _bzip2 _bzr \ + _cabal _cal _calendar _canonical_paths _cat \ + _ccal _cdcd _cdrdao _cdrecord _chkconfig \ + _chmod _chown _chroot _chsh _cksum \ + _clay _cmdambivalent _cmdstring _cmp _column \ + _comm _composer _compress _configure _cowsay \ + _cp _cpio _cplay _crontab _cscope \ + _csplit _cssh _ctags _ctags_tags _curl \ + _cut _cvs _darcs _date _date_formats \ + _dates _dbus _dconf _dd _devtodo \ + _df _dhclient _dict _dict_words _diff \ + _diff3 _diff_options _diffstat _dig _directories \ + _dir_list _django _dmesg _dmidecode _dns_types \ + _doas _domains _dos2unix _drill _dropbox \ + _dsh _dtruss _du _dvi _ecasound \ + _ed _elfdump _elinks _email_addresses _enscript \ + _entr _env _espeak _etags _fakeroot \ + _feh _fetchmail _ffmpeg _figlet _file_modes \ + _files _file_systems _find _find_net_interfaces _finger \ + _flac _flex _fmt _fold _fortune \ + _fsh _fuser _gcc _gcore _gdb \ + _gem _genisoimage _getconf _getent _getfacl \ + _getmail _getopt _ghostscript _git _global \ + _global_tags _gnu_generic _gnupod _gnutls _go \ + _gpg _gphoto2 _gprof _gradle _graphicsmagick \ + _grep _groff _groups _growisofs _gsettings \ + _guilt _gzip _have_glob_qual _head _hexdump \ + _host _hostname _hosts _iconv _id \ + _ifconfig _iftop _imagemagick _initctl _init_d \ + _install _iostat _ip _ipsec _irssi \ + _ispell _java _java_class _joe _join \ + _jq _killall _knock _kvno _last \ + _ldconfig _ldd _ld_debug _less _lha \ + _libvirt _links _list_files _lldb _ln \ + _loadkeys _locale _localedef _locales _locate \ + _logger _look _lp _ls _lsof \ + _lua _luarocks _lynx _lz4 _lzop \ + _mail _mailboxes _make _man _md5sum \ + _mencal _mh _mime_types _mkdir _mkfifo \ + _mknod _mktemp _module _monotone _moosic \ + _mosh _mount _mpc _mt _mtools \ + _mtr _mutt _mv _my_accounts _myrepos \ + _mysqldiff _mysql_utils _ncftp _netcat _net_interfaces \ + _netstat _newsgroups _nginx _ngrep _nice \ + _nkf _nl _nm _nmap _npm \ + _nslookup _numfmt _objdump _object_files _od \ + _openstack _opustools _other_accounts _pack _pandoc \ + _paste _patch _patchutils _path_commands _path_files \ + _pax _pbm _pdf _perforce _perl \ + _perl_basepods _perldoc _perl_modules _pgids _pgrep \ + _php _picocom _pids _pine _ping \ + _pip _pkgadd _pkg-config _pkginfo _pkg_instance \ + _pkgrm _pon _ports _postfix _postgresql \ + _postscript _pr _printenv _printers _process_names \ + _prove _ps _pspdf _psutils _ptx \ + _pump _pv _pwgen _pydoc _python \ + _python_modules _qemu _quilt _rake _ranlib \ + _rar _rclone _rcs _readelf _readlink \ + _remote_files _renice _ri _rlogin _rm \ + _rmdir _route _rrdtool _rsync _rubber \ + _ruby _runit _samba _sccs _scons \ + _screen _script _seafile _sed _seq \ + _service _services _setfacl _sh _shasum \ + _showmount _shred _shuf _shutdown _signals \ + _sisu _slrn _smartmontools _socket _sort \ + _spamassassin _split _sqlite _sqsh _ssh \ + _ssh_hosts _stat _stdbuf _stgit _stow \ + _strings _strip _stty _su _subversion \ + _sudo _surfraw _swaks _swanctl _swift \ + _sys_calls _sysctl _tac _tail _tar \ + _tar_archive _tardy _tcpdump _tcptraceroute _tee \ + _telnet _terminals _tex _texi _texinfo \ + _tidy _tiff _tilde_files _timeout _time_zone \ + _tin _tla _tmux _todo.sh _toilet \ + _top _topgit _totd _touch _tput \ + _tr _transmission _tree _truncate _truss \ + _tty _ttys _twidge _twisted _umountable \ + _unace _uname _unexpand _uniq _unison \ + _units _uptime _urls _user_admin _user_at_host \ + _users _users_on _vi _vim _visudo \ + _vmstat _vorbis _vpnc _w _w3m \ + _watch _wc _webbrowser _wget _whereis \ + _who _whois _wiggle _xargs _xmlsoft \ + _xmlstarlet _xmms2 _xxd _xz _yafc \ + _yodl _yp _zcat _zdump _zfs \ + _zfs_dataset _zfs_pool _zip _zsh _acroread \ + _code _dcop _eog _evince _geany \ + _gnome-gv _gqview _gv _kdeconnect _kfmclient \ + _matlab _mozilla _mplayer _mupdf _nautilus \ + _nedit _netscape _okular _pdftk _qiv \ + _rdesktop _setxkbmap _sublimetext _urxvt _vnc \ + _x_arguments _xauth _xautolock _x_borderwidth _xclip \ + _x_color _x_colormapid _x_cursor _x_display _xdvi \ + _x_extension _xfig _x_font _xft_fonts _x_geometry \ + _xinput _x_keysym _xloadimage _x_locale _x_modifier \ + _xmodmap _x_name _xournal _xpdf _xrandr \ + _x_resource _xscreensaver _x_selection_timeout _xset _xt_arguments \ + _xterm _x_title _xt_session_id _x_utils _xv \ + _x_visual _x_window _xwit _zeal _add-zle-hook-widget \ + _add-zsh-hook _alias _aliases __arguments _arrays \ + _assign _autocd _bindkey _brace_parameter _builtin \ + _cd _command _command_names _compadd _compdef \ + _completers _condition _default _delimiters _directory_stack \ + _dirs _disable _dynamic_directory_name _echotc _echoti \ + _emulate _enable _equal _exec _fc \ + _file_descriptors _first _functions _globflags _globqual_delims \ + _globquals _hash _history_modifiers _in_vared _jobs \ + _jobs_bg _jobs_builtin _jobs_fg _kill _limit \ + _limits _math _math_params _mere _module_math_func \ + _options _options_set _options_unset _parameter _parameters \ + _precommand _print _prompt _ps1234 _read \ + _redirect _run-help _sched _set _setopt \ + _source _strftime _subscript _suffix_alias_files _tcpsys \ + _tilde _trap _ttyctl _typeset _ulimit \ + _unhash _user_math_func _value _vared _vars \ + _vcs_info _vcs_info_hooks _wait _which _widgets \ + _zargs _zattr _zcalc _zcalc_line _zcompile \ + _zed _zftp _zle _zmodload _zmv \ + _zparseopts _zpty _zsh-mime-handler _zsocket _zstyle \ + _ztodo +autoload -Uz +X _call_program + +typeset -gUa _comp_assocs +_comp_assocs=( '' ) diff --git a/.config/zsh/.zshrc b/.config/zsh/.zshrc index 3b0e9e9..0270382 100644 --- a/.config/zsh/.zshrc +++ b/.config/zsh/.zshrc @@ -17,9 +17,9 @@ SAVEHIST=10000 HISTFILE=~/.cache/zsh/history # Load aliases and shortcuts if existent. -[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/shortcutrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/shortcutrc" -[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/aliasrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/aliasrc" -[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/zshnameddirrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/zshnameddirrc" +[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/shell/shortcutrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/shell/shortcutrc" +[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/shell/aliasrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/shell/aliasrc" +[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/shell/zshnameddirrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/shell/zshnameddirrc" # Basic auto/tab complete: autoload -U compinit @@ -101,8 +101,9 @@ bindkey '^e' edit-command-line #Fuzzy finder integration -source $HOME/.local/src/fzf/shell/key-bindings.zsh +source /usr/share/fzf/key-bindings.zsh +#source /usr/share/zsh/plugins/*/*.zsh #AUTOSUGGEST CONFIG bindkey '^ ' autosuggest-accept bindkey '^' autosuggest-accept @@ -113,8 +114,9 @@ ZSH_AUTOSUGGEST_BUFFER_MAX_SIZE=20 #Might be useful for large buffers, but async ZSH_AUTOSUGGEST_STRATEGY=(match_prev_cmd completion) # completion strategy, possible values: history, completion, match_prev_cmd or a combination of those ZLE_PROMPT_INDENT=0 -source $HOME/.local/src/zsh-autosuggestions/zsh-autosuggestions.zsh +source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh # increment/decriment via Ctrl+a, Ctrl+x source $HOME/.local/src/vi-increment/vi-increment.zsh # Load syntax highlighting; should be last. -source $HOME/.local/src/fast-syntax-highlighting/fast-syntax-highlighting.plugin.zsh 2>/dev/null +source /usr/share/zsh/plugins/fast-syntax-highlighting/fast-syntax-highlighting.plugin.zsh 2>/dev/null +LS_COLORS='rs=0:di=41;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:'; diff --git a/.gtkrc-2.0 b/.gtkrc-2.0 new file mode 120000 index 0000000..20593d7 --- /dev/null +++ b/.gtkrc-2.0 @@ -0,0 +1 @@ +.config/gtk-2.0/gtkrc-2.0 \ No newline at end of file diff --git a/.local/bin/SCRIPTS.md b/.local/bin/SCRIPTS.md deleted file mode 100644 index 08bca91..0000000 --- a/.local/bin/SCRIPTS.md +++ /dev/null @@ -1,87 +0,0 @@ -# Directory of Scripts - -I keep all my user-created scripts here in `~/.local/bin/`. Scripts are sorted -into sub-directories for easy management, and all are seamlessly added to -`$PATH` with the command below in `~/.profile`: - -``` -export PATH="$(du $HOME/.local/bin/ | cut -f2 | tr '\n' ':')$PATH" -``` - -## `statusbar/` - -For modules used in i3blocks. - -- `battery` -- i3blocks module. Shows available power remaining with icon indicating battery status. Colors indicate different levels of charge. -- `clock` -- Shows time and date. If clicked, brings up calender or coming calcuse events. -- `cpu` -- Shows CPU temperature. If clicked, shows most processor-intensive processes. -- `help` -- Module which appears as a question mark. Brings up readme if clicked. -- `internet` -- Shows whether machine is connected to wifi and ethernet. If clicked, brings up `nmtui`. -- `mailbox` -- i3blocks module for use with mutt-wizard. Shows unread mail and if `mailsync.sh` is running. -- `mem` -- Shows memory usage. If clicked, shows most memory-intensive processes. -- `music` -- i3blocks module. Shows current song; if paused, name will be grayed and italic. -- `mpdupdate` -- A daemon running by default that will update the i3mpd block on mpd change. -- `news` -- Shows unread newsboat articles. Brings up newsboat or refreshes RSS feeds. -- `pacpackages` -- i3blocks module. Detects new installable upgrades. Only works if you use cronjobs to automatically sync repositories. -- `popupgrade` -- Called by clicking on the update icon if there are new packages. Spawns a `yay` upgrade of the main Arch repos and AUR packages, updates the i3blocks module once complete. -- `torrent` -- i3blocks module. Shows torrents idle (โŒ›๏ธ), downloading (โฌ‡๏ธ) or finished (๐ŸŒฑ). -- `volume` -- i3blocks module. Shows volume percentage or mute notification. -- `weather` -- i3blocks module. Gets weather forcast from wttr.in and returns today's precipitation chance (โ˜”), daily low (โ„๏ธ) and daily high (โ˜€๏ธ). - -## `cron/` - -For scripts meant to be cronjobs. None are active by default on LARBS. - -- `checkup` -- If connected to internet, syncs package repositories and downloads (but does not install) any potential updates. Gives `notify-send` notifications of when it is active since other `pacman` install commands cannot be run simultaneously. You may need to grant your user the ability to run `pacman -Syyuw --noconfirm` without a password (done in `/etc/sudoers`). -- `cronbat` -- Gives a dunst notification if the battery is less than 25%. -- `crontog` -- Not actually a cronjob, but just turns off/on all user cronjobs. -- `getforecast` -- Updates the weather forecast. This is automatically run by `weather` if there hasn't been a new forecast today. -- `newsup` -- Updates newsboat RSS feeds if connected to internet. Will also display a newspaper update icon on i3blocks if it has not be user disabled. - -## `tools/` - -Scripts intended to be run either manually by the user or linked to a shortcut -in vim or another program. - -- `compiler` -- Compiles a markdown, R markdown or LaTeX document with the approriate command. Will also run `make && sudo make install` if in a `config.h` file. Otherwise it will create a sent presentation. This can be thought of a general output handler. I have it bound to `c` in vim. -- `dmenuhandler` -- Give this script a url and it will offer dmenu options for opening it. Used by `newsboat` and some other programs as a link handler. -- `extract` -- Will detect file type of archive and run appropriate extraction command. -- `getbib` -- Use crossref.org to automatically detect bibtex entry of a .pdf. Attempts to search for the .pdf's DOI. Returns nothing if none detected. -- `getkeys` -- Get the LARBS documentation on what bindings exist for main programs. -- `linkhandler` -- The automatic link handler used by `newsboat` and other programs. Urls of video sites or of video files are opened in `mpv`, images are downloaded/opened in `feh`, music files are downloaded with `wget` and all other urls are opened in the default browser. -- `lmc` -- A music controller that simplifies music/audio management and improves the interface with i3blocks. Check inside to see what it does. This is what i3 audio/music commands run by default. If you use a difference music system or ALSA, you can change this script rather than changing all the shortcuts in different places. -- `note` -- Give this script some text/a message as an argument. It will print it to the terminal, and if `dunst` is running, display a notification. -- `opout` -- "Open output", opens the corresponding `.pdf` file if run on a `.md`, `.tex` or `.rmd` file, or if given an `.html` file, will open it in the browser. Bound to `p` in my vim config to reveal typical output. -- `pauseallmpv` -- Pauses all mpv instances by sending the `,` key to each. Used by several scripts, but can be used alone as well. It will not pause an audio only mpv instance. If you know how to add a hack to do this, feel free to PR it or email me an addition. -- `remaps` -- Remaps capslock to escape when pressed and super/mod when held. Maps the menu key to super as well. Runs the US international keyboard setup. If you want another keyboard setup, edit this fine. -- `shortcuts` -- For updating bash and ranger shortcuts. Reads `~/.config/bmdirs` and `~/.config/bmfiles` for pairs of keypresses and directories and files, then autoproduces bash aliases and ranger shortcuts for them which output to `~/.config/shortcutrc` and `~/.config/ranger/shortcuts.conf` respectively. These are read automatically by my bash and ranger configs. You don't have to run this script manually though, as it's run by vim whenever you edit one of the `~/.bm*` files. -- `speedvid` -- Speed up a given video file (`$1`) by a given ammount (`$2`). -- `tpb` -- Search Pirate Bay for the certain search terms given as arguments. -- `texclear` -- Remove all `.tex` related build files. This is run by my vim when I stop editing any `.tex` file. -- `transadd` -- The mimeapp default script for handling torrent magnet links. Starts `transmission-daemon` if not running and adds the link. - -## `i3cmds` - -These are scripts linked to bindings in i3. They typically perform -user-interface actions or involve dmenu. - -- `bottomleft` and `bottomright` -- Makes the currently selected window float in one of the bottom corners of the screen. `bottomleft` is bound to `mod+B` by default. -- `camtoggle` -- Starts/kills /dev/video0 webcam. Placed in bottom right by default. -- `ddspawn` -- This is the script called to create, show and hide the dropdown tmux terminal mapped to `mod+u`, but also the dropdown calculator mapped to `mod+a`. Give the script an argument that is a script the window will run. If a window does not already exist, `ddspawn` creates it, if it does, `ddspawn` will toggle its visibility. The the script itself for usage. -- `displayselect` -- Select which displays to use. Bound to `mod+F3`. -- `dmenumount` -- Gives a dmenu prompt for mounting USB drives or Android devices. Bound to `mod+F9`. Will do nothing if none are available. -- `dmenurecord` -- Gives a list of recording commands: `audio`, `video` and `screencast` (both) in dmenu for selection. Bound to `mod+PrintScreen` by default. Should be killed by `killrecording`. -- `dmenuumount` -- Unmount a mounted non-essential partition. Bound to `mod+F10`. Will do nothing if none are mounted. It will not try to unmount essential system partitions. -- `dmenuunicode` -- Shows a searchable dmenu prompt of emoji characters. The selected emoji is copied to the system clipboard, while its character code is copied to primary selection (middle mouse button). -- `dropdowncalc` -- The dropdown calculator script called by `ddspawn` and bound to `mod+a` by default. Will run an R calculator if installed, otherwise python. -- `ducksearch` -- Show a dmenu prompt and search for the inputed text in DuckDuckGo. Can take bangtags as expected, i.e. typing in `!aw Arch Linux` will search the Arch Wiki for "Arch Linux" or `!yt Luke Smith` will search YouTube for "Luke Smith", etc. -- `i3resize` -- A script that allows intuitive resizing of windows. Mapped to `mod+Y/U/I/O`. -- `killrecording` -- End a recording started by `dmenurecord` the proper way without file trucation or lingering background processes, mapped to `mod+Delete` by default. -- `lockscreen` -- The screen locker. Gives a confirm prompt and if user says yes, all audio will be paused and the screen will be distorted and locked and screen will soon time out. User must insert password to unlock. Mapped to `mod+x` by default. -- `newspod` -- A silly line that has a script all to itself due to i3's idiosyncracies. Starts `newsboat`, if `newsboat` cannot open because of another instance being open, opens `podboat`. -- `prompt` -- Gives a Yes/No prompt to a question given as an argument. Used by numerous bindings like `mod+shift+x`, `mod+shift+backspace` and `mod+shift+escape`. -- `samedir` -- Opens a terminal window in the same directory as the window currently selection. Bound to `mod+shift+enter`. -- `td-toggle` -- Gives a dmenu prompt to start `transmission-daemon` if not running, or the kill it if it is. Obviously you need `transmission-cli` installed for this to work. Mapped to `mod+F7` by default. -- `tmuxdd` -- The startup script for the dropdown terminal (toggleable with `mod+u`). Either attaches to an existing tmux session or begins a new one. -- `toggletouchpad` -- As the name suggests, turns off TouchPad if on, and turns it on if off. Requires `xf86-input-synaptics`. If your laptop has a special button for this, it will be mapped by default. -- `tutorialvids` -- A dmenu prompt that gives some options of tutorial videos to watch. Bound to `mod+shift+e`. diff --git a/.local/bin/booksplit b/.local/bin/booksplit deleted file mode 100755 index 2e0b9a3..0000000 --- a/.local/bin/booksplit +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/sh - -# Requires ffmpeg (audio splitting) and my `tag` wrapper script. - -[ ! -f "$2" ] && printf "The first file should be the audio, the second should be the timecodes.\\n" && exit - -echo "Enter the album/book title:"; read -r booktitle - -#echo "Enter the artist/author:"; read -r author - -echo "Enter the publication year:"; read -r year - -inputaudio="$1" - -# Get a safe file name from the book. -#iconv -cf UTF-8 -t ASCII//TRANSLIT -escbook="$(echo "$booktitle" | tr -d '[:punct:]' | tr '[:upper:]' '[:lower:]' | tr ' ' '-' | sed "s/-\+/-/g;s/\(^-\|-\$\)//g")" - -! mkdir -p "$escbook" && echo "Do you have write access in this directory?" && exit 1 - -# As long as the extension is in the tag script, it'll work. -ext="opus" -#ext="${1#*.}" - -# Get the total number of tracks from the number of lines. -total="$(wc -l < "$2")" - -while read -r x; -do - end="$(echo "$x" | cut -f1)" - - [ -n "$start" ] && - echo "From $start to $end; $track $title" - file="$escbook/$(printf "%.2d" "$track")-$esctitle.$ext" - [ -n "$start" ] && echo "Splitting \"$title\"..." && - ffmpeg -nostdin -y -i "$inputaudio" -ss "$start" -to "$end" -vn -c copy "$file" && - echo "Tagging \"$title\"..." && tag -a "$author" -A "$booktitle" -t "$title" -n "$track" -N "$total" -d "$year" "$file" - title="$(echo "$x" | cut -f 2)" - author="$(echo "$x" | cut -f 3)" - #| iconv -cf UTF-8 -t ASCII//TRANSLIT - esctitle="$(echo "$title" | tr -d '[:punct:]' | tr '[:upper:]' '[:lower:]' | tr ' ' '_' | sed "s/-\+/-/g;s/\(^-\|-\$\)//g")" - track="$((track+1))" - start="$end" -done < "$2" -# The last track must be done outside the loop. -echo "From $start to the end: $title" -file="$escbook/$(printf "%.2d" "$track")-$esctitle.$ext" -echo "Splitting \"$title\"..." && ffmpeg -nostdin -y -loglevel -8 -i "$inputaudio" -ss "$start" -vn -c copy "$file" && - echo "Tagging \"$title\"..." && tag -a "$author" -A "$booktitle" -t "$title" -n "$track" -N "$total" -d "$year" "$file" diff --git a/.local/bin/bt b/.local/bin/bt deleted file mode 100755 index d4b294e..0000000 --- a/.local/bin/bt +++ /dev/null @@ -1,247 +0,0 @@ -#!/bin/sh -SCAN_PERIOD=5 -AUTOTRUST=false #trust every newly paired device -AUTOSCAN=false #immediately start scanning when started to speed up pairing process -#If you want to update symbols in your status bar add your details below: -bar="dwmblocks" -barsignal="4" - -#locations of blacklist and hard coded list of paired devices (watch out, need to modify Makefile as well if you want to change these values and still use make install) -BLACKLIST=${XDG_DATA_HOME:-$HOME/.local/share}/bt/blacklist -PAIRLIST=${XDG_DATA_HOME:-$HOME/.local/share}/bt/paired - -actions="pair -unpair" - -[ "$AUTOTRUST" = false ] && actions="${actions} -trust" - -#Checks for necessary programs to be present. Very unlikely not to be present but let's just err on the safer side. -for prog in dmenu bluetoothctl awk cat date nl; do - if ! hash "$prog" 2>/dev/null; then - printf 'bthandler: %s: command not found\n' "$prog" >&2 - exit 127 - fi -done - -power(){ - powerstatus="$( bluetoothctl show | grep Powered | awk '{print $2}' )" - if [ "$powerstatus" = "no" ]; then - [ "$1" = on ] && bluetoothctl power on - elif [ "$powerstatus" = "yes" ]; then - [ "$1" = off ] && bluetoothctl power off - fi -} - -scan(){ - scanstatus="$( bluetoothctl show | grep Discovering | awk '{print $2}' )" - if [ "$1" = on ]; then - #sets variable in case scanning was no already on before the start of bt - [ -f /tmp/bt_start_scan$$ ] || start_scan="$( date +'%s' )" - if [ "$scanstatus" = "no" ]; then - bluetoothctl scan on & - start_scan="$( date +'%s' )" - fi - echo "$start_scan" > /tmp/bt_start_scan$$ - elif [ "$1" = off ]; then - if [ "$scanstatus" = "yes" ]; then - bluetoothctl scan off - fi - fi -} - -#Check bluetoothctl paired-devices for new devices to be hardcoded into pair list -update_pair_list(){ - btctl_paired_devices="$(bluetoothctl paired-devices)" - if [ -n "$btctl_paired_devices" ] - then - btctl_not_in_list="$( echo "$btctl_paired_devices" | grep -vf "$PAIRLIST")" - [ -n "$btctl_not_in_list" ] && echo "$btctl_not_in_list" >> "$PAIRLIST" - fi -} - - -#start scanning as early as possible to speed up pairing process -startup(){ - #remove old tmp files - for f in /tmp/* - do - case $f in - /tmp/bt_start_scan*) rm "$f";; - *) true;; - esac - done - if $AUTOSCAN - then - power on - scan on - fi -} - - -if [ "$1" = "edit" ]; then - case $2 in - "pairlist")${EDITOR:-vim} "$PAIRLIST" && exit;; - "blacklist")${EDITOR:-vim} "$BLACKLIST" && exit;; - *)true;; - esac -fi -#Sadly needs to be run without '&' for now, since it otherwise breaks start_scan variable -startup & -update_pair_list & - -# include head command here to speed up launch if too many devices are listed (long uptime and long scanning will lead to this depending on your surroundings) -# shellcheck disable=SC1091 -if bluetoothctl devices | head | awk '{print "bluetoothctl info "$2}' | . /dev/stdin | grep -q "Connected: yes" -then - actions="$(printf "disconnect\n%s" "$actions")" -fi - - -#Compile list of all Bluetooth IDS of paired devices (from bluetoothctl and from hardcoded list) -bt_IDS="$( ( bluetoothctl paired-devices && cat "$PAIRLIST" ) | sort -u | awk '{print $2}' )" - -#Compile list of all device Names of paired devices (from bluetoothctl and from hardcoded list) -paired_devices="$( ( bluetoothctl paired-devices && cat "$PAIRLIST" ) | sort -u | awk '{for (i=3; i /dev/null - pkill -RTMIN+$barsignal $bar - exit 0 -} - -pair(){ - #since this function can get called indefinitely, make sure to always be scanning and controller has power in the case that it got deactived by some other process. - power on - scan on - #check whether $SCAN_PERIOD seconds has already passed since starting scanning, if not, wait for the rest of that time. - start_scan="$(cat /tmp/bt_start_scan$$)" - if [ $(( $(date +'%s') - $start_scan )) -lt $SCAN_PERIOD ]; then - sleep_period="$(( $SCAN_PERIOD - $( date +'%s') + $start_scan ))" - [ "$sleep_period" -gt 1 ] && plural="s" - notify-send "Bluetooth" "Searching for devices, please wait $sleep_period second$plural" - sleep "$sleep_period" - fi - all_devices="$( bluetoothctl devices )" - if [ "$paired_devices" = "" ]; then - new_devices="$( echo "$all_devices" | awk '{for (i=3; i /tmp/paired_devices$$ - filtered_devices="$( echo "$all_devices" | grep -v "$paired_devices")" - bt_IDS="$( echo "$filtered_devices" | awk '{print $2}' )" - new_devices="$( echo "$filtered_devices" | awk '{for (i=3; i /tmp/bt_start_scan$$ - pair - else - dev_no=$( echo "$new_devices" | nl | grep "$choice" | awk '{print $1}') - dev_id=$( echo "$bt_IDS" | nl | grep -P "^.*$dev_no\t" | awk '{print $2}' ) - #only attempt to connect if pairing succeeds - bluetoothctl pair "$dev_id" && ( pair_succesful=true && bluetoothctl connect "$dev_id" ) || pair_succesful=false - if $AUTOTRUST; then - bluetoothctl trust "$dev_id" - fi - #if device is not already hard coded as paired, add to paired devices list - if $pair_succesful && [ "$( grep "$dev_id" "$PAIRLIST")" = "" ] || [ "$(wc -l "$PAIRLIST")" -eq 0 ] - then - echo to be added to "$PAIRLIST": - echo Device "$dev_id" "$choice" - echo Device "$dev_id" "$choice" >> "$PAIRLIST" - fi - fi - fi -} - -case $choice in - "power on") bluetoothctl power on;; - "power off") bluetoothctl power off;; - "scan on") bluetoothctl power on && echo power on && sleep 2 - ([ -n "$TERMINAL" ] && $TERMINAL -e bluetoothctl scan on ) || st bluetoothctl scan on;; - "pair") pair;; - "unpair") choice=$( echo "$paired_devices" | dmenu -l 10 -i -p 'remove which paired device?') - if [ -n "$choice" ]; then - dev_no=$( echo "$paired_devices" | nl | grep -P "[0-9]+\t$choice$" | awk '{print $1}') - dev_id=$( echo "$bt_IDS" | nl | grep -P "^.*$dev_no\t" | awk '{print $2}' ) - bluetoothctl remove "$dev_id" - #remove device to unpair from hard coded paired devices list - new_paired_list="$( grep -v "$dev_id" "$PAIRLIST" )" - if [ "$new_paired_list" != "" ] - then - echo "$new_paired_list" > "$PAIRLIST" - else - rm -rf "$PAIRLIST" - touch "$PAIRLIST" - fi - fi;; - - "trust") - #search through all devices which are connected and only list those as options - # shellcheck disable=SC1091 - untrusted_devices="$( awk '{print "bluetoothctl info "$2}' "$PAIRLIST" | . /dev/stdin | grep -E '(Alias:|Trusted:)' | sed -e 'N;s/\n/;/;s/^.?*Alias: //' | grep "Trusted: no" | awk -F ';' '{print $1}' )" - if [ "$( echo "$untrusted_devices" | wc -l )" -gt 0 ] - then - choice=$( echo "$untrusted_devices" | dmenu -l 10 -i -p 'remove which paired device?') - else - notify-send "Bluetooth" "No paired devices that are not trusted" - fi - if [ -n "$choice" ]; then - dev_no=$( echo "$paired_devices" | nl | grep -P "[0-9]+\t$choice$" | awk '{print $1}') - dev_id=$( echo "$bt_IDS" | nl | grep -P "^.*$dev_no\t" | awk '{print $2}' ) - bluetoothctl trust "$dev_id" - fi;; - "disconnect") - #search through all devices which are connected and only list those as options - # shellcheck disable=SC1091 - connected_devices="$( bluetoothctl devices | awk '{print "bluetoothctl info "$2}' | . /dev/stdin | grep -E '(Alias:|Connected:)' | sed -e 'N;s/\n/;/;s/^.?*Alias: //' | grep "Connected: yes" | awk -F ';' '{print $1}' )" - echo "$connected_devices" - #only open dmenu prompt if there is more than one connected device - if [ "$( echo "$connected_devices" | wc -l )" -gt 1 ] - then - choice=$( echo "$connected_devices" | dmenu -l 10 -i -p 'remove which paired device?') - else - choice="$connected_devices" - fi - #only there was a choice (instead of canceling the dmenu) - if [ -n "$choice" ]; then - dev_no=$( echo "$paired_devices" | nl | grep -P "[0-9]+\t$choice$" | awk '{print $1}') - dev_id=$( echo "$bt_IDS" | nl | grep -P "^.*$dev_no\t" | awk '{print $2}' ) - bluetoothctl disconnect "$dev_id" - fi;; - "blacklist") - choice=$( echo "$paired_devices" | dmenu -l 10 -i -p 'blacklist which paired device from selection?') - if [ -n "$choice" ]; then - echo "$choice" >> "$BLACKLIST" - fi;; - *) - dev_no=$( echo "$paired_devices" | nl | grep -P "[0-9]+\t$choice$" | awk '{print $1}') - [ "$dev_no" != "" ] && dev_id=$( echo "$bt_IDS" | nl | grep -P "^.*$dev_no\t" | awk '{print $2}') - if [ -n "$dev_id" ]; then - power on - if bluetoothctl info "$dev_id" | grep -q "Connected: yes" - then - bluetoothctl disconnect "$dev_id" - else - bluetoothctl devices | grep -q "$dev_id" || bluetoothctl pair "$dev_id" - bluetoothctl connect "$dev_id" - fi - fi;; -esac - -cleanup diff --git a/.local/bin/cabl b/.local/bin/cabl deleted file mode 100755 index 8bc59c5..0000000 --- a/.local/bin/cabl +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/bash -# Dependencies are xclip and xorg-xprop. -# qrencode required for qrcode generation. -# groff/zathura required for man pages. -prim="$(xclip -o -selection 'clipboard')"; [ -z "$prim" ] && exit - -PID=$(xprop -id "$(xprop -root | awk '/_NET_ACTIVE_WINDOW\(WINDOW\)/{print $NF}')" | grep -m 1 PID | cut -d " " -f 3) -PID=$(echo "$(pstree -lpA "$PID" | tail -n 1)" | awk -F'---' '{print $NF}' | sed -re 's/[^0-9]//g') -cd "$(readlink /proc/"$PID"/cwd)" -[ -f "$prim" ] && xdg-open "$prim" && exit -[ -d "$prim" ] && "$TERMINAL" "$prim" && exit - -websearch() { "$BROWSER" "https://duckduckgo.com/?q=$@" ;} -wikipedia() { "$BROWSER" "https://en.wikipedia.org/wiki/$@" ;} -wiktionary() { "$BROWSER" "https://en.wiktionary.org/wiki/$@" ;} -maps() { "$BROWSER" "https://www.openstreetmap.org/search?query=$@" ;} -ebay() { "$BROWSER" "https://www.ebay.com/sch/$@" ;} - -echo "$prim" | grep "^.*\.[A-Za-z]\+.*" >/dev/null && gotourl() { "$BROWSER" "$@" ;} -echo "$prim" | grep "^.*@.*\.[A-Za-z]\+$" >/dev/null && email() { xdg-email "$@" ;} -command -v qrencode >/dev/null && qrcode() { qrencode "$@" -s 10 -o /tmp/qr.png && xdg-open /tmp/qr.png ;} -man -k "^$prim$" >/dev/null && manual() { man -Tpdf "$prim" | zathura - ;} - -func="$(declare -F | awk '{print $3}' | dmenu -p "Plumb \"$(echo "$prim" | cut -c -30)\" to?" -i -l 15)" - -[ -z "$func" ] || "$func" "$prim" diff --git a/.local/bin/castscreen b/.local/bin/castscreen deleted file mode 100755 index 21bfd4e..0000000 --- a/.local/bin/castscreen +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash -xrandr --output eDP-1 --mode 1920x1080 --auto -xrdb -merge ~/.config/X11/Xres_casting -setbg -#wal -q -i ~/.config/wall.png -b '000000' -pkill dwm -pgrep dwmblocks && dwmblocks & st mkchromecast --video --control --screencast -s -xrandr --output eDP-1 --mode 3200x1800 --auto -xrdb -merge ~/.config/X11/Xresources -setbg -#wal -q -i ~/.config/wall.png -b '000000' -pkill dwm -pgrep dwmblocks && dwmblocks & disown diff --git a/.local/bin/compiler b/.local/bin/compiler deleted file mode 100755 index d191407..0000000 --- a/.local/bin/compiler +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/sh - -# This script will compile or run another finishing operation on a document. I -# have this script run via vim. -# -# Compiles .tex. groff (.mom, .ms), .rmd, .md. Opens .sent files as sent -# presentations. Runs scripts based on extention or shebang - -file=$(readlink -f "$1") -dir=$(dirname "$file") -base="${file%.*}" - -cd "$dir" || exit - -textype() { \ - command="pdflatex" - ( sed 5q "$file" | grep -i -q 'xelatex' ) && command="xelatex" - $command --output-directory="$dir" "$base" && - grep -i addbibresource "$file" >/dev/null && - biber --input-directory "$dir" "$base" && - $command --output-directory="$dir" "$base" && - $command --output-directory="$dir" "$base" - } - -case "$file" in - *\.ms) refer -PS -e "$file" | groff -me -ms -kept -T pdf > "$base".pdf ;; - *\.mom) refer -PS -e "$file" | groff -mom -kept -T pdf > "$base".pdf ;; - *\.[0-9]) refer -PS -e "$file" | groff -mandoc -T pdf > "$base".pdf ;; - *\.[rR]md) Rscript -e "rmarkdown::render('$file', quiet=TRUE)" ;; - *\.tex) textype "$file" ;; - *\.md) pandoc "$file" -V geometry:margin=1in --pdf-engine=xelatex -o "$base".pdf ;; - *config.h) sudo make install ;; - *\.c) cc "$file" -o "$base" && "$base" ;; - *\.py) python "$file" ;; - *\.m) octave "$file" ;; - *\.scad) openscad -o "$base".stl "$file" ;; - *\.go) go run "$file" ;; - *\.sent) setsid sent "$file" 2>/dev/null & ;; - *) sed 1q "$file" | grep "^#!/" | sed "s/^#!//" | xargs -r -I % "$file" ;; -esac diff --git a/.local/bin/cookies2nsformat b/.local/bin/cookies2nsformat new file mode 100755 index 0000000..13d9329 --- /dev/null +++ b/.local/bin/cookies2nsformat @@ -0,0 +1,33 @@ +#!/bin/node +/** + * @file Convert cookies copy/pasted from Chrome's Application -> Storage -> Cookies -> [domain] table, + * into the Netscape cookies format used by tools like `curl` or `youtube-dl`. + */ +const fs = require('fs'); + +const filename = process.argv[2]; +if (!filename) { + console.error(`Usage: node convert-cookies.js > netscape-cookies.txt`); + console.error(); + console.error(`Make sure to replace with the name of the\nfile in which you copy/pasted the cookies from Chrome's Application -> Storage -> Cookies.`); + console.error(`\nThen, pass the 'netscape-cookies.txt' file to 'curl' or 'youtube-dl' or any other tool\nthat reads cookies in the Netscape cookies format.`); + process.exit(1); +} + +const content = fs.readFileSync(filename, 'utf8'); +const cookies = content.split('\n'); + +console.log('# Netscape HTTP Cookie File'); + +for (const cookie of cookies) { + let [name, value, domain, path, expiration, /* size */, httpOnly] = cookie.split('\t'); + if (!name) + continue; + if (domain.charAt(0) !== '.') + domain = '.' + domain; + httpOnly = httpOnly === 'โœ“' ? 'TRUE' : 'FALSE' + if (expiration === 'Session') + expiration = new Date(Date.now() + 86400 * 1000); + expiration = Math.trunc(new Date(expiration).getTime() / 1000); + console.log([domain, 'TRUE', path, httpOnly, expiration, name, value].join('\t')); +} diff --git a/.local/bin/cron/IMPORTANT_NOTE.md b/.local/bin/cron/README.md similarity index 73% rename from .local/bin/cron/IMPORTANT_NOTE.md rename to .local/bin/cron/README.md index f5a130b..fa0c354 100644 --- a/.local/bin/cron/IMPORTANT_NOTE.md +++ b/.local/bin/cron/README.md @@ -5,7 +5,7 @@ These cronjobs have components that require information about your current displ When you add them as cronjobs, I recommend you precede the command with commands as those below: ``` -export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus; export DISPLAY=:0; . $HOME/.zprofile; then_command_goes_here +export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$(id -u $USER)/bus; export DISPLAY=:0; . $HOME/.zprofile; then_command_goes_here ``` This ensures that notifications will display, xdotool commands will function and environmental variables will work as well. diff --git a/.local/bin/cron/checkup b/.local/bin/cron/checkup index 34ed61e..bd3c634 100755 --- a/.local/bin/cron/checkup +++ b/.local/bin/cron/checkup @@ -2,8 +2,6 @@ # Syncs repositories and downloads updates, meant to be run as a cronjob. -ping -q -c 1 1.1.1.1 > /dev/null || exit - notify-send "๐Ÿ“ฆ Repository Sync" "Checking for package updates..." sudo pacman -Syyuw --noconfirm || notify-send "Error downloading updates. diff --git a/.local/bin/cron/cronbat b/.local/bin/cron/cronbat deleted file mode 100755 index 2dc0950..0000000 --- a/.local/bin/cron/cronbat +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh - -# Notify me with notify-send if my battery is below 25%. -# You can set this to run via cron. - -[ "$(cat /sys/class/power_supply/BAT0/status)" = "Charging" ] && exit -[ "$(cat /sys/class/power_supply/BAT0/capacity)" -lt 25 ] && -export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1001/bus && -notify-send -u critical "Battery critically low." diff --git a/.local/bin/cron/crontog b/.local/bin/cron/crontog index 8168012..c9a640f 100755 --- a/.local/bin/cron/crontog +++ b/.local/bin/cron/crontog @@ -1,6 +1,6 @@ #!/bin/sh # Toggles all cronjobs off/on. -# Stores disabled crontabs in ~/.consaved until restored. +# Stores disabled crontabs in ~/.config/cronsaved until restored. -([ -f ${XDG_CONFIG_HOME:-$HOME/.config}/cronsaved ] && crontab - < ${XDG_CONFIG_HOME:-$HOME/.config}/cronsaved && rm ${XDG_CONFIG_HOME:-$HOME/.config}/cronsaved && notify-send "๐Ÿ•“ Cronjobs re-enabled.") || ( crontab -l > ${XDG_CONFIG_HOME:-$HOME/.config}/cronsaved && crontab -r && notify-send "๐Ÿ•“ Cronjobs saved and disabled.") +([ -f "${XDG_CONFIG_HOME:-$HOME/.config}"/cronsaved ] && crontab - < "${XDG_CONFIG_HOME:-$HOME/.config}"/cronsaved && rm "${XDG_CONFIG_HOME:-$HOME/.config}"/cronsaved && notify-send "๐Ÿ•“ Cronjobs re-enabled.") || ( crontab -l > "${XDG_CONFIG_HOME:-$HOME/.config}"/cronsaved && crontab -r && notify-send "๐Ÿ•“ Cronjobs saved and disabled.") diff --git a/.local/bin/cron/newsup b/.local/bin/cron/newsup index bf8898e..ed266d7 100755 --- a/.local/bin/cron/newsup +++ b/.local/bin/cron/newsup @@ -3,11 +3,9 @@ # Set as a cron job to check for new RSS entries for newsboat. # If newsboat is open, sends it an "R" key to refresh. -ping -q -c 1 1.1.1.1 > /dev/null || exit - /usr/bin/notify-send "๐Ÿ“ฐ Updating RSS feeds..." -ps ax | grep -q newsboat$ && /usr/bin/xdotool key --window "$(/usr/bin/xdotool search --name newsboat)" R && exit +pgrep -f newsboat$ && /usr/bin/xdotool key --window "$(/usr/bin/xdotool search --name "^newsboat$")" R && exit echo ๐Ÿ”ƒ > /tmp/newsupdate pkill -RTMIN+6 "${STATUSBAR:-dwmblocks}" diff --git a/.local/bin/cv b/.local/bin/cv deleted file mode 100755 index e41c6bc..0000000 --- a/.local/bin/cv +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh -source $HOME/.config/aliasrc -alldata="/tmp/allfiles" -videos="/tmp/videos" -du -a ~/vids/* --time | sort -u | awk '!($1="")' | sort -bg | awk '!($1="")' | awk '!($1="")' | sed 's/^ //' | tac > $alldata -touch $videos -while read line; do - [ -f "$line" ] && echo $line >> $videos -done <$alldata -choice=$( cat $videos | dmenu -i -l 50 -p "Choose a video to watch:" ) -[ -n "$choice" ] && st mkchromecast --video --control -i "$choice" -rm -f "$alldata" -rm -f "$videos" diff --git a/.local/bin/ddspawn b/.local/bin/ddspawn deleted file mode 100755 index d4a4034..0000000 --- a/.local/bin/ddspawn +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh - -# Toggle floating dropdown terminal in i3, or start if non-existing. -# $1 is the script run in the terminal. -# All other args are terminal settings. -# Terminal names are in dropdown_* to allow easily setting i3 settings. - -[ -z "$1" ] && exit - -script=$1 -shift -if xwininfo -tree -root | grep "(\"dropdown_$script\" "; -then - echo "Window detected." - i3 "[instance=\"dropdown_$script\"] scratchpad show; [instance=\"dropdown_$script\"] move position center" -else - echo "Window not detected... spawning." - i3 "exec --no-startup-id $TERMINAL -n dropdown_$script $@ -e $script" -fi diff --git a/.local/bin/displayselect b/.local/bin/displayselect index e73e2f4..3ca344e 100755 --- a/.local/bin/displayselect +++ b/.local/bin/displayselect @@ -5,7 +5,12 @@ # selection" which opens arandr. #automatically scale HD screens to better work with hidpi -scale_factor_HD=${1:-1.6} +scale_factor_HD=${1:-1.6666} +scale_outputs="HDMI-3 +DP-2 +HDMI-1-3 +DP1-2" + #fixes issue that script gets called twice for some reason [ "$(pgrep -c displayselect)" -gt 1 ] && exit @@ -40,9 +45,9 @@ twoscreen() { # If multi-monitor is selected and there are two screens. primary=$(echo "$screens" | dmenu -i -p "Select primary display:") secondary=$(echo "$screens" | grep -v "$primary") direction=$(printf "left\\nright" | dmenu -i -p "What side of $primary should $secondary be on?") - if [ "$primary" = "HDMI-1" ]; then + if $(echo "$scale_outputs" | grep -q "$primary"); then xrandr --output "$primary" --auto --scale $scale_factor_HD --output "$secondary" --"$direction"-of "$primary" --auto --scale 1.0x1.0 - elif [ "$secondary" = "HDMI-1" ]; then + elif $(echo "$scale_outputs" | grep -q "$seconday"); then xrandr --output "$primary" --auto --scale 1.0x1.0 --output "$secondary" --"$direction"-of "$primary" --auto --scale $scale_factor_HD else xrandr --output "$primary" --auto --scale 1.0x1.0 --output "$secondary" --"$direction"-of "$primary" --auto --scale 1.0x1.0 @@ -65,7 +70,7 @@ multimon() { # Multi-monitor handler. esac ;} onescreen() { # If only one output available or chosen. - xrandr --output "$1" --auto --scale 1.0x1.0 $(echo "$allposs" | grep -v "$1" | awk '{print "--output", $1, "--off"}' | tr '\n' ' ') + xrandr --output "$1" --auto --scale 1 $(echo "$allposs" | grep -v "$1" | awk '{print "--output", $1, "--off"}' | tr '\n' ' ') } postrun() { # Stuff to run to clean up. diff --git a/.local/bin/dmenuhandler b/.local/bin/dmenuhandler new file mode 100755 index 0000000..e50178a --- /dev/null +++ b/.local/bin/dmenuhandler @@ -0,0 +1,21 @@ +#!/bin/sh + +# Feed this script a link and it will give dmenu +# some choice programs to use to open it. +feed="${1:-$(true | dmenu -p 'Paste URL or file path')}" + +case "$(printf "copy url\\nnsxiv\\nsetbg\\nPDF\\nbrowser\\nlynx\\nvim\\nmpv\\nmpv loop\\nmpv float\\nqueue download\\nqueue yt-dlp\\nqueue yt-dlp audio" | dmenu -i -p "Open it with?")" in + "copy url") echo "$feed" | xclip -selection clipboard ;; + mpv) setsid -f mpv -quiet "$feed" >/dev/null 2>&1 ;; + "mpv loop") setsid -f mpv -quiet --loop "$feed" >/dev/null 2>&1 ;; + "mpv float") setsid -f "$TERMINAL" -e mpv --geometry=+0-0 --autofit=30% --title="mpvfloat" "$feed" >/dev/null 2>&1 ;; + "queue yt-dlp") qndl "$feed" >/dev/null 2>&1 ;; + "queue yt-dlp audio") qndl "$feed" 'yt-dlp -o "%(title)s.%(ext)s" -f bestaudio --embed-metadata --restrict-filenames' ;; + "queue download") qndl "$feed" 'curl -LO' >/dev/null 2>&1 ;; + PDF) curl -sL "$feed" > "/tmp/$(echo "$feed" | sed "s|.*/||;s/%20/ /g")" && zathura "/tmp/$(echo "$feed" | sed "s|.*/||;s/%20/ /g")" >/dev/null 2>&1 ;; + nsxiv) curl -sL "$feed" > "/tmp/$(echo "$feed" | sed "s|.*/||;s/%20/ /g")" && nsxiv -a "/tmp/$(echo "$feed" | sed "s|.*/||;s/%20/ /g")" >/dev/null 2>&1 ;; + vim) curl -sL "$feed" > "/tmp/$(echo "$feed" | sed "s|.*/||;s/%20/ /g")" && setsid -f "$TERMINAL" -e "$EDITOR" "/tmp/$(echo "$feed" | sed "s|.*/||;s/%20/ /g")" >/dev/null 2>&1 ;; + setbg) curl -L "$feed" > $XDG_CACHE_HOME/pic ; xwallpaper --zoom $XDG_CACHE_HOME/pic >/dev/null 2>&1 ;; + browser) setsid -f "$BROWSER" "$feed" >/dev/null 2>&1 ;; + lynx) lynx "$feed" >/dev/null 2>&1 ;; +esac diff --git a/.local/bin/dmenumountcifs b/.local/bin/dmenumountcifs new file mode 100755 index 0000000..46c2b57 --- /dev/null +++ b/.local/bin/dmenumountcifs @@ -0,0 +1,19 @@ +#!/bin/sh +# Gives a dmenu prompt to mount unmounted local NAS shares for read/write. +# Requirements - "%wheel ALL=(ALL) NOPASSWD: ALL" +# +# Browse for mDNS/DNS-SD services using the Avahi daemon... +srvname=$(avahi-browse _smb._tcp -t | awk '{print $4}' | dmenu -i -p "Which NAS?") || exit 1 +notify-send "Searching for network shares..." "Please wait..." +# Choose share disk... +share=$(smbclient -L "$srvname" -N | grep Disk | awk '{print $1}' | dmenu -i -p "Mount which share?") || exit 1 +# Format URL... +share2mnt=//"$srvname".local/"$share" + +sharemount() { + mounted=$(mount -v | grep "$share2mnt") || ([ ! -d /mnt/"$share" ] && sudo mkdir /mnt/"$share") + [ -z "$mounted" ] && sudo mount -t cifs "$share2mnt" -o user=nobody,password="",noperm /mnt/"$share" && notify-send "Netshare $share mounted" && exit 0 + notify-send "Netshare $share already mounted"; exit 1 +} + +sharemount diff --git a/.local/bin/dmenurecord b/.local/bin/dmenurecord index bb8233a..990b7b3 100755 --- a/.local/bin/dmenurecord +++ b/.local/bin/dmenurecord @@ -9,6 +9,8 @@ # # If there is already a running instance, user will be prompted to end it. +getdim() { xrandr | sed -n "s/\s*\([0-9]\+x[0-9]\+\).*\*.*/\1/p" ;} + updateicon() { \ echo "$1" > /tmp/recordingicon pkill -RTMIN+9 "${STATUSBAR:-dwmblocks}" @@ -16,49 +18,32 @@ updateicon() { \ killrecording() { recpid="$(cat /tmp/recordingpid)" - # kill with SIGTERM, allowing finishing touches. kill -15 "$recpid" rm -f /tmp/recordingpid updateicon "" pkill -RTMIN+9 "${STATUSBAR:-dwmblocks}" - # even after SIGTERM, ffmpeg may still run, so SIGKILL it. - sleep 3 - kill -9 "$recpid" - exit } screencast() { \ ffmpeg -y \ -f x11grab \ - -framerate 60 \ - -s "$(xdpyinfo | grep dimensions | awk '{print $2;}')" \ + -framerate 30 \ + -s "$(getdim)" \ -i "$DISPLAY" \ - -r 30 \ - -c:v h264 -crf 0 -preset ultrafast -c:a aac \ + -r 24 \ + -use_wallclock_as_timestamps 1 \ + -f alsa -thread_queue_size 1024 -i default \ + -c:v h264 \ + -crf 0 -preset ultrafast -c:a aac \ "$HOME/screencast-$(date '+%y%m%d-%H%M-%S').mp4" & echo $! > /tmp/recordingpid updateicon "โบ๏ธ๐ŸŽ™๏ธ" } -screencast_old() { \ - ffmpeg -y \ - -f x11grab \ - -framerate 60 \ - -s "$(xdpyinfo | grep dimensions | awk '{print $2;}')" \ - -i "$DISPLAY" \ - -f alsa -i default \ - -r 30 \ - -c:v h264 -crf 0 -preset ultrafast -c:a aac \ - "$HOME/screencast-$(date '+%y%m%d-%H%M-%S').mp4" & - echo $! > /tmp/recordingpid - updateicon "โบ๏ธ๐ŸŽ™๏ธ" - } - - - video() { ffmpeg \ -f x11grab \ - -s "$(xdpyinfo | grep dimensions | awk '{print $2;}')" \ + -framerate 30 \ + -s "$(getdim)" \ -i "$DISPLAY" \ -c:v libx264 -qp 0 -r 30 \ "$HOME/video-$(date '+%y%m%d-%H%M-%S').mkv" & @@ -95,11 +80,12 @@ audio() { \ } askrecording() { \ - choice=$(printf "screencast\\nvideo\\naudio\\nwebcam\\nwebcam (hi-def)" | dmenu -i -p "Select recording style:") + choice=$(printf "screencast\\nvideo\\nvideo selected\\naudio\\nwebcam\\nwebcam (hi-def)" | dmenu -i -p "Select recording style:") case "$choice" in screencast) screencast;; audio) audio;; video) video;; + *selected) videoselected;; webcam) webcam;; "webcam (hi-def)") webcamhidef;; esac @@ -110,11 +96,28 @@ asktoend() { \ [ "$response" = "Yes" ] && killrecording } +videoselected() +{ + slop -f "%x %y %w %h" > /tmp/slop + read -r X Y W H < /tmp/slop + rm /tmp/slop + + ffmpeg \ + -f x11grab \ + -framerate 30 \ + -video_size "$W"x"$H" \ + -i :0.0+"$X,$Y" \ + -c:v libx264 -qp 0 -r 30 \ + "$HOME/box-$(date '+%y%m%d-%H%M-%S').mkv" & + echo $! > /tmp/recordingpid + updateicon "โบ๏ธ" +} case "$1" in screencast) screencast;; audio) audio;; video) video;; + *selected) videoselected;; kill) killrecording;; *) ([ -f /tmp/recordingpid ] && asktoend && exit) || askrecording;; esac diff --git a/.local/bin/dmenuunicode b/.local/bin/dmenuunicode deleted file mode 100755 index 15799a3..0000000 --- a/.local/bin/dmenuunicode +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/sh - -# The famous "get a menu of emojis to copy" script. - -# Must have xclip installed to even show menu. -xclip -h 2>/dev/null || exit 1 - -chosen=$(cut -d ';' -f1 ${XDG_DATA_HOME:-$HOME/.local/share}/larbs/emoji | dmenu -i -l 20 | sed "s/ .*//") - -[ "$chosen" != "" ] || exit - -# If you run this command with an argument, it will automatically insert the character. -if [ -n "$1" ]; then - xdotool key Shift+Insert -else - echo "$chosen" | tr -d '\n' | xclip -selection clipboard - notify-send "'$chosen' copied to clipboard." & -fi diff --git a/.local/bin/dmenuvpn b/.local/bin/dmenuvpn index 292a0f9..bf1f586 100755 --- a/.local/bin/dmenuvpn +++ b/.local/bin/dmenuvpn @@ -8,12 +8,16 @@ choice="$(ls "${XDG_CONFIG_HOME}/openvpn/cfgs" | sed 's/\.ovpn//' | awk 'BEGIN { [ -z "$choice" ] && exit if [ "$choice" = "ETH" ]; then if [ $(pgrep -c openconnect) -eq 0 ]; then + transmission-remote -u 0 + transmission-remote -d 0 pass "$ETH_password_path" | sudo openconnect -g student-net -u "$ETH_user" --passwd-on-stdin sslvpn.ethz.ch & - if ping -c 3 -W 3 -q webprint.ethz.ch ;then - notify-send "ETH VPN" "ETH VPN connected" - fi -elif ping -c 1 -W 2 -q webprint.ethz.ch ;then + if ping -c 3 -W 3 -q webprint.ethz.ch ;then + notify-send "ETH VPN" "ETH VPN connected" + fi + elif ping -c 1 -W 2 -q webprint.ethz.ch ;then sudo pkill openconnect && notify-send "ETH VPN" "ETH VPN disconnected" + transmission-remote -U + transmission-remote -D fi else printf '%s\n%s\n' "$USER" "$(pass $PASS_DIR)" > /tmp/tmp_pass diff --git a/.local/bin/emoji b/.local/bin/emoji deleted file mode 120000 index 9d1a3c4..0000000 --- a/.local/bin/emoji +++ /dev/null @@ -1 +0,0 @@ -/home/alex/.local/bin/dmenuunicode \ No newline at end of file diff --git a/.local/bin/emoji b/.local/bin/emoji new file mode 100755 index 0000000..dd12bc3 --- /dev/null +++ b/.local/bin/emoji @@ -0,0 +1,18 @@ +#!/bin/sh + +# The famous "get a menu of emojis to copy" script. + +# Get user selection via dmenu from emoji file. +chosen=$(cut -d ';' -f1 ~/.local/share/larbs/chars/* | dmenu -i -l 30 | sed "s/ .*//") + +# Exit if none chosen. +[ -z "$chosen" ] && exit + +# If you run this command with an argument, it will automatically insert the +# character. Otherwise, show a message that the emoji has been copied. +if [ -n "$1" ]; then + xdotool type "$chosen" +else + printf "%s" "$chosen" | xclip -selection clipboard + notify-send "'$chosen' copied to clipboard." & +fi diff --git a/.local/bin/ethupdate b/.local/bin/ethupdate new file mode 100755 index 0000000..ce1f4fd --- /dev/null +++ b/.local/bin/ethupdate @@ -0,0 +1,14 @@ +#!/bin/sh +rclone_out="$(rclone copy --verbose OLAT: ~/eth/.olat 2>&1)" +echo "$rclone_out" | tee -i $HOME/rclone.log +rclone_out="$(echo "$rclone_out" | grep INFO | grep "Copied (new)" | cut -d':' -f2 | cut -d'/' -f1,3,4,5 --complement)" +[ -n "$rclone_out" ] && + /usr/bin/env DISPLAY=:0 /usr/bin/notify-send 'new files (olat):' "$rclone_out" + +cd $HOME/eth/.moodle +pgrep moodle-dl || [ -f running.lock ] && rm running.lock + +log="$(moodle-dl | sed -r "s/\x1B\[([0-9]{1,3}(;[0-9]{1,2})?)?[mGK]//g")" +notifs="$(echo "$log" | grep -E '^\+' | sed 's/^+\s*/+/g')" +[ $(printf %s "$notifs" | wc -l) -gt 0 ] && + /usr/bin/env DISPLAY=:0 /usr/bin/notify-send 'new files (moodle):' "$notifs" diff --git a/.local/bin/f2py b/.local/bin/f2py deleted file mode 100755 index 40ce6f8..0000000 --- a/.local/bin/f2py +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -import re -import sys -from numpy.f2py.f2py2e import main -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) - sys.exit(main()) diff --git a/.local/bin/f2py3 b/.local/bin/f2py3 deleted file mode 100755 index 40ce6f8..0000000 --- a/.local/bin/f2py3 +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -import re -import sys -from numpy.f2py.f2py2e import main -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) - sys.exit(main()) diff --git a/.local/bin/f2py3.8 b/.local/bin/f2py3.8 deleted file mode 100755 index 40ce6f8..0000000 --- a/.local/bin/f2py3.8 +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -import re -import sys -from numpy.f2py.f2py2e import main -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) - sys.exit(main()) diff --git a/.local/bin/getbib b/.local/bin/getbib new file mode 100755 index 0000000..121dd6e --- /dev/null +++ b/.local/bin/getbib @@ -0,0 +1,14 @@ +#!/bin/sh +[ -z "$1" ] && echo "Give either a pdf file or a DOI as an argument." && exit + +if [ -f "$1" ]; then + # Try to get DOI from pdfinfo or pdftotext output. + doi=$(pdfinfo "$1" | grep -io "doi:.*") || + doi=$(pdftotext "$1" 2>/dev/null - | sed -n '/[dD][oO][iI]:/{s/.*[dD][oO][iI]:\s*\(\S\+[[:alnum:]]\).*/\1/p;q}') || + exit 1 +else + doi="$1" +fi + +# Check crossref.org for the bib citation. +curl -s "https://api.crossref.org/works/$doi/transform/application/x-bibtex" -w "\\n" diff --git a/.local/bin/getbib_ b/.local/bin/getbib_ new file mode 100755 index 0000000..8675aae --- /dev/null +++ b/.local/bin/getbib_ @@ -0,0 +1,14 @@ +#!/bin/sh +[ -z "$1" ] && echo "Give either a pdf file or a DOI as an argument." && exit + +if [ -f "$1" ]; then + # Try to get DOI from pdfinfo or pdftotext output. + doi=$(pdfinfo "$1" | grep -io "doi:.*") || + doi=$(pdftotext "$1" 2>/dev/null - | grep -io "doi:.*" -m 1) || + exit 1 +else + doi="$1" +fi + +# Check crossref.org for the bib citation. +curl -s "https://api.crossref.org/works/$doi/transform/application/x-bibtex" -w "\\n" diff --git a/.local/bin/getcomproot b/.local/bin/getcomproot new file mode 100755 index 0000000..d34a2e4 --- /dev/null +++ b/.local/bin/getcomproot @@ -0,0 +1,12 @@ +#!/bin/bash + +# A helper script for LaTeX/groff files used by `compiler` and `opout`. +# The user can add the root file of a larger project as a comment as below: +# % root = mainfile.tex +# And the compiler script will run on that instead of the opened file. + +texroot="$(grep -i "^.\+\s*root\s*=\s*\S\+" "$1")" +texroot="${texroot##*=}" +texroot="${texroot//[\"\' ]}" + +[ -f "$texroot" ] && readlink -f "$texroot" || exit 1 diff --git a/.local/bin/getkeys b/.local/bin/getkeys index 0a0e86e..266f29a 100755 --- a/.local/bin/getkeys +++ b/.local/bin/getkeys @@ -1,5 +1,5 @@ #!/bin/sh -cat ${XDG_DATA_HOME:-$HOME/.local/share}/larbs/getkeys/"$1" 2>/dev/null && exit +cat "${XDG_DATA_HOME:-$HOME/.local/share}"/larbs/getkeys/"$1" 2>/dev/null && exit echo "Run command with one of the following arguments for info about that program:" -ls ${XDG_DATA_HOME:-$HOME/.local/share}/larbs/getkeys +ls "${XDG_DATA_HOME:-$HOME/.local/share}"/larbs/getkeys diff --git a/.local/bin/ifinstalled b/.local/bin/ifinstalled deleted file mode 100755 index 04c0eef..0000000 --- a/.local/bin/ifinstalled +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh - -# Some optional functions in LARBS require programs not installed by default. I -# use this little script to check to see if a command exists and if it doesn't -# it informs the user that they need that command to continue. This is used in -# various other scripts for clarity's sake. - -pacman -Qq "$1" >/dev/null || { notify-send "๐Ÿ“ฆ $1" "must be installed for this function." && exit 1 ;} diff --git a/.local/bin/launch_polybar b/.local/bin/launch_polybar deleted file mode 100755 index 8786be6..0000000 --- a/.local/bin/launch_polybar +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh - -# Terminate already running bar instances -killall -q polybar - -# Wait until the processes have been shut down -while pidof polybar >/dev/null; do sleep 1; done - -for i in $(polybar -m | awk -F: '{print $1}'); do MONITOR=$i polybar default & done diff --git a/.local/bin/lf-select b/.local/bin/lf-select deleted file mode 100755 index 3b2a17a..0000000 --- a/.local/bin/lf-select +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh - -# Reads file names from stdin and selects them in lf. - -while read -r file; do - [ -z "$file" ] && continue - lf -remote "send select \"$file\"" - lf -remote "send toggle" -done diff --git a/.local/bin/linkhandler b/.local/bin/linkhandler new file mode 100755 index 0000000..fa74caf --- /dev/null +++ b/.local/bin/linkhandler @@ -0,0 +1,23 @@ +#!/bin/sh + +# Feed script a url or file location. +# If an image, it will view in sxiv, +# if a video or gif, it will view in mpv +# if a music file or pdf, it will download, +# otherwise it opens link in browser. + +# If no url given. Opens browser. For using script as $BROWSER. +[ -z "$1" ] && { "$BROWSER"; exit; } + +case "$1" in + *mkv|*webm|*mp4|*youtube.com/watch*|*youtube.com/playlist*|*youtu.be*|*hooktube.com*|*bitchute.com*|*videos.lukesmith.xyz*|*odysee.com*) + setsid -f mpv -quiet "$1" >/dev/null 2>&1 ;; + *png|*jpg|*jpe|*jpeg|*gif) + curl -sL "$1" > "/tmp/$(echo "$1" | sed "s/.*\///;s/%20/ /g")" && sxiv -a "/tmp/$(echo "$1" | sed "s/.*\///;s/%20/ /g")" >/dev/null 2>&1 & ;; + *pdf|*cbz|*cbr) + curl -sL "$1" > "/tmp/$(echo "$1" | sed "s/.*\///;s/%20/ /g")" && zathura "/tmp/$(echo "$1" | sed "s/.*\///;s/%20/ /g")" >/dev/null 2>&1 & ;; + *mp3|*flac|*opus|*mp3?source*) + qndl "$1" 'curl -LO' >/dev/null 2>&1 ;; + *) + [ -f "$1" ] && setsid -f "$TERMINAL" -e "$EDITOR" "$1" >/dev/null 2>&1 || setsid -f "$BROWSER" "$1" >/dev/null 2>&1 +esac diff --git a/.local/bin/lmc b/.local/bin/lmc deleted file mode 100755 index d431495..0000000 --- a/.local/bin/lmc +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/sh - -NUM="${2:-5}" - -# Uncomment the following line to use Pulseaudio. -# PULSE=true - -if [ "$PULSE" ]; then - toggle() { pulsemixer --toggle-mute ;} - mute() { pulsemixer --mute ;} - up() { pulsemixer --change-volume +"$NUM" ;} - down() { pulsemixer --change-volume -"$NUM" ;} - control() { pulsemixer ;} -else - toggle() { amixer sset Master toggle ;} - mute() { amixer sset Master mute ;} - up() { amixer sset Master "$NUM"%+ ;} - down() { amixer sset Master "$NUM"%- ;} - control() { alsamixer ;} -fi - -case "$1" in - toggle) toggle ;; - mute) mute ;; - up) up ;; - down) down ;; - control) control ;; -esac diff --git a/.local/bin/maimpick b/.local/bin/maimpick index 3619dbb..5de26c1 100755 --- a/.local/bin/maimpick +++ b/.local/bin/maimpick @@ -4,11 +4,15 @@ # choose the kind of screenshot to take, including copying the image or even # highlighting an area to copy. scrotcucks on suicidewatch right now. +# variables +output="$(date '+%y%m%d-%H%M-%S').png" +xclip_cmd="xclip -sel clip -t image/png" + case "$(printf "a selected area\\ncurrent window\\nfull screen\\na selected area (copy)\\ncurrent window (copy)\\nfull screen (copy)" | dmenu -l 6 -i -p "Screenshot which area?")" in - "a selected area") maim -s -u pic-selected-"$(date '+%y%m%d-%H%M-%S').png" ;; - "current window") maim -i "$(xdotool getactivewindow)" -u pic-window-"$(date '+%y%m%d-%H%M-%S').png" ;; - "full screen") maim -u pic-full-"$(date '+%y%m%d-%H%M-%S').png" ;; - "a selected area (copy)") maim -s -u | xclip -selection clipboard -t image/png ;; - "current window (copy)") maim -u -i "$(xdotool getactivewindow)" | xclip -selection clipboard -t image/png ;; - "full screen (copy)") maim -u | xclip -selection clipboard -t image/png ;; + "a selected area") maim -u -s pic-selected-"${output}" ;; + "current window") maim -q -d 0.2 -i "$(xdotool getactivewindow)" pic-window-"${output}" ;; + "full screen") maim -q -d 0.2 pic-full-"${output}" ;; + "a selected area (copy)") maim -u -s | ${xclip_cmd} ;; + "current window (copy)") maim -q -d 0.2 -i "$(xdotool getactivewindow)" | ${xclip_cmd} ;; + "full screen (copy)") maim -q -d 0.2 | ${xclip_cmd} ;; esac diff --git a/.local/bin/manga-py b/.local/bin/manga-py deleted file mode 100755 index 64af40b..0000000 --- a/.local/bin/manga-py +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/python -# EASY-INSTALL-ENTRY-SCRIPT: 'manga-py==1.19.7','console_scripts','manga-py' -__requires__ = 'manga-py==1.19.7' -import re -import sys -from pkg_resources import load_entry_point - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit( - load_entry_point('manga-py==1.19.7', 'console_scripts', 'manga-py')() - ) diff --git a/.local/bin/markdown_py b/.local/bin/markdown_py deleted file mode 100755 index ca0b785..0000000 --- a/.local/bin/markdown_py +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -import re -import sys -from markdown.__main__ import run -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) - sys.exit(run()) diff --git a/.local/bin/mounter b/.local/bin/mounter new file mode 100755 index 0000000..b532e08 --- /dev/null +++ b/.local/bin/mounter @@ -0,0 +1,114 @@ +#!/bin/bash + +# Mounts Android Phones and USB drives (encrypted or not). This script will +# replace the older `dmenumount` which had extra steps and couldn't handle +# encrypted drives. +# TODO: Try decrypt for drives in crtypttab +# TODO: Add some support for connecting iPhones (although they are annoying). + +IFS=' +' +# Function for escaping cell-phone names. +escape(){ echo "$@" | iconv -cf UTF-8 -t ASCII//TRANSLIT | tr -d '[:punct:]' | tr '[:upper:]' '[:lower:]' | tr ' ' '-' | sed "s/-\+/-/g;s/\(^-\|-\$\)//g" ;} + +# Check for phones. +phones="$(simple-mtpfs -l 2>/dev/null | sed "s/^/๐Ÿ“ฑ/")" +mountedphones="$(grep "simple-mtpfs" /etc/mtab)" +# If there are already mounted phones, remove them from the list of mountables. +[ -n "$mountedphones" ] && phones="$(for phone in $phones; do + for mounted in $mountedphones; do + escphone="$(escape "$phone")" + [[ "$mounted" =~ "$escphone" ]] && break 1 + done && continue 1 + echo "$phone" +done)" + +# Check for drives. +lsblkoutput="$(lsblk -rpo "uuid,name,type,size,label,mountpoint,fstype")" +# Get all LUKS drives +allluks="$(echo "$lsblkoutput" | grep crypto_LUKS)" +# Get a list of the LUKS drive UUIDs already decrypted. +decrypted="$(find /dev/disk/by-id/dm-uuid-CRYPT-LUKS2-* | sed "s|.*LUKS2-||;s|-.*||")" +# Functioning for formatting drives correctly for dmenu: +filter() { sed "s/ /:/g" | awk -F':' '$7==""{printf "%s%s (%s) %s\n",$1,$3,$5,$6}' ; } + +# Get only LUKS drives that are not decrypted. +unopenedluks="$(for drive in $allluks; do + uuid="${drive%% *}" + uuid="${uuid//-}" # This is a bashism. + for open in $decrypted; do + [ "$uuid" = "$open" ] && break 1 + done && continue 1 + echo "๐Ÿ”’ $drive" +done | filter)" + +# Get all normal, non-encrypted or decrypted partitions that are not mounted. +normalparts="$(echo "$lsblkoutput"| grep -v crypto_LUKS | grep 'part\|rom\|crypt' | sed "s/^/๐Ÿ’พ /" | filter )" + +# Add all to one variable. If no mountable drives found, exit. +alldrives="$(echo "$phones +$unopenedluks +$normalparts" | sed "/^$/d;s/ *$//")" + +# Quit the script if a sequential command fails. +set -e + +test -n "$alldrives" + +# Feed all found drives to dmenu and get user choice. +chosen="$(echo "$alldrives" | dmenu -p "Mount which drive?" -i)" + +# Function for prompting user for a mountpoint. +getmount(){ + mp="$(find /mnt /media /mount /home -maxdepth 1 -type d 2>/dev/null | dmenu -i -p "Mount this drive where?")" + test -n "$mp" + if [ ! -d "$mp" ]; then + mkdiryn=$(printf "No\\nYes" | dmenu -i -p "$mp does not exist. Create it?") + [ "$mkdiryn" = "Yes" ] && (mkdir -p "$mp" || sudo -A mkdir -p "$mp") + fi +} + +attemptmount(){ + # Attempt to mount without a mountpoint, to see if drive is in fstab. + sudo -A mount "$chosen" || return 1 + notify-send "๐Ÿ’พDrive Mounted." "$chosen mounted." + exit +} + +case "$chosen" in + ๐Ÿ’พ*) + chosen="${chosen%% *}" + chosen="${chosen:1}" # This is a bashism. + attemptmount || getmount + sudo -A mount "$chosen" "$mp" -o uid="$(id -u)",gid="$(id -g)" + notify-send "๐Ÿ’พDrive Mounted." "$chosen mounted to $mp." + ;; + + ๐Ÿ”’*) + chosen="${chosen%% *}" + chosen="${chosen:1}" # This is a bashism. + # Number the drive. + while true; do + [ -f "/dev/mapper/usb$num" ] || break + num="$(printf "%02d" "$((num +1))")" + done + + # Decrypt in a terminal window + ${TERMINAL:-st} -n floatterm -g 60x1 -e sudo cryptsetup open "$chosen" "usb$num" + # Check if now decrypted. + test -b "/dev/mapper/usb$num" + + attemptmount || getmount + sudo -A mount "/dev/mapper/usb$num" "$mp" -o uid="$(id -u)",gid="$(id -g)" + notify-send "๐Ÿ”“Decrypted drive Mounted." "$chosen decrypted and mounted to $mp." + ;; + + ๐Ÿ“ฑ*) + notify-send "โ—Note" "Remember to allow file access on your phone now." + getmount + number="${chosen%%:*}" + number="${chosen:1}" # This is a bashism. + sudo -A simple-mtpfs -o allow_other -o fsname="simple-mtpfs-$(escape "$chosen")" --device "$number" "$mp" + notify-send "๐Ÿค– Android Mounted." "Android device mounted to $mp." + ;; +esac diff --git a/.local/bin/muccadoro b/.local/bin/muccadoro deleted file mode 100755 index 63cbd90..0000000 --- a/.local/bin/muccadoro +++ /dev/null @@ -1,304 +0,0 @@ -#!/usr/bin/env bash -set -o nounset -o pipefail -# Before doing anything, check if the required programs are installed. See -# . Some of these can probably be reasonably assumed -# to be present, but err on the side of caution. -for prog in awk cowsay figlet notify-send stty tput; do - if ! hash "$prog" 2>/dev/null; then - printf 'muccadoro: %s: command not found\n' "$prog" >&2 - exit 127 - fi -done - - -temp_loc=/tmp/pomptemptimes -temp_timeloc=/tmp/mucc_time -statusbar="dwmblocks" -update_signal="3" - -freetime=${2:-w} -if [ "$freetime" = "f" ]; then - temp_loc=/tmp/pomptemptimesft -fi - -declare -i silly=1 - -# http://mywiki.wooledge.org/BashFAQ/035#getopts -# http://wiki.bash-hackers.org/howto/getopts_tutorial -while getopts ':s' opt; do - case $opt in - s) (( ++silly ));; - esac -done -shift "$((OPTIND-1))" # Shift off the options and optional --. - -# One pomodoro lasts "$1" minutes. The default duration is 25 minutes. -declare -i duration=$((${1:-25}*60)) num_pomodoros=4 - -(( silly %= 5 )) -if (( silly )); then - declare -i silliness=$((2**(4-silly))) - # `apps` stands for appearances, of course. - declare -a apps=('' '-b' '-d' '-g' '-p' '-s' '-t' '-w' '-e oO' '-e Oo' '-e ><' '-e -o' - '-e o-' '-e >o' '-e o<') - num_apps=${#apps[@]} - cowtell() { - app_num=$((RANDOM % (silliness * num_apps))) - (( app_num >= num_apps )) && app_num=0 - cowsay -n ${apps[app_num]} - } -else - cowtell() { - cowsay -n - } -fi - -summary= - -# Standard output must be a terminal. See . Save -# the original stdout to file descriptor 3 (see ). -exec 3>&1 &>/dev/tty - -# Save the current terminal settings. -initial_tty_settings=$(stty -g) - -# Revert all changed terminal settings (FIXME: restore everything from saved settings) and -# print a summary. -cleanup() { - tput rmcup - tput cnorm - stty "$initial_tty_settings" - [[ $summary ]] && echo -ne "$summary" >&3 - rm -f $temp_loc - rm -f $temp_timeloc - pkill -RTMIN+$update_signal $statusbar -} - -trap cleanup EXIT - -# Switch to the alternate screen. See , xterm(1), -# terminfo(5), and . -tput smcup - -# TODO: explain. See -# . -tput civis - -# Don't echo characters typed on the tty. See . -stty -echo - -# Output empty lines before the message so the message is displayed at the bottom of the -# terminal. See . Also, instead of `clear`ing -# (which causes flickering), pad all lines of the message with spaces all the way to the -# right edge of the terminal, thereby overwriting any currently displayed characters. See -# . TODO: probably just use Bash and not -# awk. -pad() { - awk -v lines="$(tput lines)" -v cols="$(tput cols)" ' - NR!=1 && FNR==1 { n=lines-NR; for(; n>0; n--) printf "%-"cols"s\n", "" } - NR==FNR { next } - { printf "%-"cols"s\n", $0 }' <(echo "$1"){,} -} - -pp() { - tput cup 0 0 # TODO: explain. - pad "$1" -} - -ppp() { - tput cup 0 0 - # FIXME: probably just check once if we have lolcat. - pad "$1" | { lolcat 2>/dev/null || cat; } -} - -declare -a lyrics -declare -i line_index=0 -lyrics=( - "Can't stop, addicted to the shindig;" - "Chop Top, he says I'm gonna win big;" - "Choose not a life of imitation;" - "Distant cousin to the reservation;" - "Defunct the pistol that you pay for;" - "This punk, the feeling that you stay for;" - "In time I want to be your best friend;" - "East side lovers living on the west end;" - "Knocked out but boy you better come to;" - "Don't die, you know the truth as some do;" - "Go write your message on the pavement;" - "Burn so bright I wonder what the wave meant;" -) - -declare -i state=0 - -cant-stop() { - (( state == 2 )) && return - state=2 - tty_settings=$(stty -g) - trap '' INT - stty susp undef - pp "$(cowsay -e '><' -W $(($(tput cols)-3)) ${lyrics[line_index]})" - - ((++line_index)); ((line_index%=${#lyrics[@]})) - sleep 2 & wait $! - stty "$tty_settings" - count-state -} - -# SIGTSTP handler. -on-tstp() { - # Signal all processes in the process group $$ (the group leader) to continue. See - # kill(1), and . Pomodoros are not - # interruptible. - kill -CONT -- -$$ - if (( state == 1 )); then - cant-stop - fi -} -trap on-tstp TSTP - -count-state() { - # 130 is the exit status for termination by Ctrl-C. See - # . - trap 'trap on-int INT; on-int; return 130' INT - state=1 -} - -dead-state() { - trap on-int INT - state=0 -} - -pause-state() { - trap on-int INT - state=0 -} - -on-int() { - if (( state==0 )); then - # We are supposed to kill ourselves with SIGINT instead of using `exit`. See - # . - trap - INT - kill -INT $$ - elif (( state==1 )); then - dead-state - elif (( state==2 )); then - count-state - fi -} - -# XXX: beware of bugs due to SIGINT (Ctrl-C) being received during the short timeframe in -# which another function invoked by this one is executing. The `return 1` statement of -# the SIGINT trap will be ran in the context of the inner function. -pomodoro() { - count-state - while :; do - # Handle signals immediately, not after `sleep` exits. See - # . - sleep 1 & - # See . - planned_end_time=$(( $start_time_secs + $duration )) - seconds=$(( $planned_end_time - $( date +'%s') )) - the_time=$((seconds/60)):$(printf '%02d' $((seconds%60))) - # Keep in mind that almost everything causes new values to be assigned to `$?`: - # $ false - # $ (( $? )) && echo $? - # 0 - # $ false || { (( $? != 148 )) && echo $?; } - # 0 - # In both cases, when `echo $?` is executed, `$?` is no longer 1. - fail=$? - if (( fail && fail != 148 )); then - return $fail - fi - text=$(figlet -f small "$the_time" ) #remove | cowtell - fail=$? - if (( ! fail )); then - pp "$text" - fail=$? - echo "$the_time" > $temp_timeloc - pkill -RTMIN+$update_signal $statusbar - (( fail && fail != 148 )) && return $fail - elif (( fail != 148 )); then - return $fail - fi - wait - ((--seconds <= 0)) && return 0 - done - return 1 -} - -flush-stdin() { - # See . - read -r -d '' -t 0.1 -n 1000 -} - -# FIXME: why `dummy` (http://wiki.bash-hackers.org/commands/builtin/read#press_any_key). -pause() { - # See . - read -r -n 1${1:+ -t $1} -} - -for (( n=1; n<=num_pomodoros; ++n )); do - declare -i seconds=$duration - declare -i start_time_secs=$(date +'%s') - start_time=$(date --date "@$start_time_secs" +'%H:%M') - pomodoro - fail=$? - if (( fail == 130 )); then - end_time=$(date +'%H:%M') - end_time_secs=$(date -d $end_time +'%s') - day=$(date '+%Y%b%d') - summary+="Abandoned: $start_time to $end_time ($((($end_time_secs - $start_time_secs)/ 60))) $day\n" - #summary+="Abandoned: $start_time to $(date +'%H:%M')\n" - # Pomodoros are atomic. - pp "$(cowsay -d -W $(($(tput cols)-3)) 'You abandoned pomodoro '$n'. Press any' \ - 'key to restart it.')" - rm -f $temp_timeloc - pkill -RTMIN+$update_signal $statusbar - pause - (( --n )) - continue - elif (( fail )); then - exit $fail - fi - pause-state - tty_settings=$(stty -g) - stty susp undef - end_time_secs=$(date +'%s') - end_time=$(date --date "@$end_time_secs" +'%H:%M') - #end_time_secs=$(date -d $end_time +'%s') - #start_time_secs=$(date -d $start_time +'%s') - day=$(date '+%Y%b%d') - summary+="Pomodoro $n: $start_time to $end_time ($(( ($end_time_secs - $start_time_secs )/60))) $day\n" - #summary+="Pomodoro $n: $start_time to $(date +'%H:%M') \n" - if (( n!=num_pomodoros )); then - start_time=$(date +'%s') - notify-send "You completed pomodoro $n. Take a short break (3-5 minutes)." - # - # - echo "($n*$duration)/60" | bc > $temp_loc - pkill -RTMIN+$update_signal $statusbar - # TODO: it may be nice to create this message asynchronously with `lolcat -f` since - # lolcat is a bit slow. That's not a priority, though. - ppp "$(cowsay -e '^^' -W $(($(tput cols)-3)) 'You completed pomodoro '$n'. Take' \ - 'a short break (3-5 minutes), then press any key to continue.')" - rm -f $temp_timeloc - pkill -RTMIN+$update_signal $statusbar - flush-stdin - if ! pause 180; then - pp "$(cowsay -w -W $(($(tput cols)-3)) 'Press any key to continue.')" - pause 120 || { - notify-send -u critical 'Time to start the next pomodoro.'; pause; - } - fi - break_duration=$((($(date +'%s')-start_time+30)/60)) - summary+="Break: about $break_duration minute" - (( break_duration != 1 )) && summary+=s # plural - summary+='\n' - fi - stty "$tty_settings" -done - -notify-send "You completed all $num_pomodoros pomodoros!" - -# vim: tw=90 sts=-1 sw=3 et diff --git a/.local/bin/noisereduce b/.local/bin/noisereduce new file mode 100755 index 0000000..c344760 --- /dev/null +++ b/.local/bin/noisereduce @@ -0,0 +1,81 @@ +#!/usr/bin/sh + +usage () +{ + printf "Usage : noisereduce \n" + exit +} + +# Tests for requirements +ifinstalled ffmpeg || { echo >&2 "We require 'ffmpeg' but it's not installed."; exit 1; } +ifinstalled sox || { echo >&2 "We require 'ffmpeg' but it's not installed."; exit 1; } + +if [ "$#" -ne 2 ] +then + usage +fi + +if [ ! -e "$1" ] +then + printf "File not found: %s\n" "$1" + exit +fi + +if [ -e "$2" ] +then + printf "File %s already exists, overwrite? [y/N]\n: " "$2" + read -r yn + case $yn in + [Yy]* ) ;; + * ) exit;; + esac +fi + +inBasename=$(basename "$1") +inExt="${inBasename##*.}" + +isVideoStr=$(ffprobe -v warning -show_streams "$1" | grep codec_type=video) +if [ -n "$isVideoStr" ] +then + isVideo=1 + printf "Detected %s as a video file\n" "$inBasename" +else + isVideo=0 + printf "Detected %s as an audio file\n" "$inBasename" +fi + +printf "Sample noise start time [00:00:00]: " +read -r sampleStart +if [ -z "$sampleStart" ] ; then sampleStart="00:00:00"; fi +printf "Sample noise end time [00:00:00.900]: " +read -r sampleEnd +if [ -z "$sampleEnd" ] ; then sampleEnd="00:00:00.900"; fi +printf "Noise reduction amount [0.21]: " +read -r sensitivity +if [ -z "$sensitivity" ] ; then sensitivity="0.21"; fi + + +tmpVidFile="/tmp/noiseclean_tmpvid.$inExt" +tmpAudFile="/tmp/noiseclean_tmpaud.wav" +noiseAudFile="/tmp/noiseclean_noiseaud.wav" +noiseProfFile="/tmp/noiseclean_noise.prof" +tmpAudCleanFile="/tmp/noiseclean_tmpaud-clean.wav" + +printf "Cleaning noise on %s...\n" "$1" + +if [ $isVideo -eq "1" ]; then + ffmpeg -v warning -y -i "$1" -qscale:v 0 -vcodec copy -an "$tmpVidFile" + ffmpeg -v warning -y -i "$1" -qscale:a 0 "$tmpAudFile" +else + cp "$1" "$tmpAudFile" +fi +ffmpeg -v warning -y -i "$1" -vn -ss "$sampleStart" -t "$sampleEnd" "$noiseAudFile" +sox "$noiseAudFile" -n noiseprof "$noiseProfFile" +sox "$tmpAudFile" "$tmpAudCleanFile" noisered "$noiseProfFile" "$sensitivity" +if [ $isVideo -eq "1" ]; then + ffmpeg -v warning -y -i "$tmpAudCleanFile" -i "$tmpVidFile" -vcodec copy -qscale:v 0 -qscale:a 0 "$2" +else + cp "$tmpAudCleanFile" "$2" +fi + +printf "Done" diff --git a/.local/bin/opout b/.local/bin/opout deleted file mode 100755 index 28af763..0000000 --- a/.local/bin/opout +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh - -# opout: "open output": A general handler for opening a file's intended output, -# usually the pdf of a compiled document. I find this useful especially -# running from vim. - -basename="$(echo "$1" | sed 's/\.[^\/.]*$//')" - -case "$1" in - *.tex|*.m[dse]|*.[rR]md|*.mom|*.[0-9]) setsid xdg-open "$basename".pdf >/dev/null 2>&1 & ;; - *.html) setsid "$BROWSER" "$basename".html >/dev/null 2>&1 & ;; - *.sent) setsid sent "$1" >/dev/null 2>&1 & ;; -esac diff --git a/.local/bin/pauseallmpv b/.local/bin/pauseallmpv index 15b9f59..d69a414 100755 --- a/.local/bin/pauseallmpv +++ b/.local/bin/pauseallmpv @@ -6,5 +6,5 @@ # (with other things) by default and is used in some other places. for i in $(ls /tmp/mpvSockets/*); do - echo '{ "command": ["set_property", "pause", true] }' | socat - $i; + echo '{ "command": ["set_property", "pause", true] }' | socat - "$i"; done diff --git a/.local/bin/podentr b/.local/bin/podentr deleted file mode 100755 index 9a8313a..0000000 --- a/.local/bin/podentr +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -# entr command to run `queueandnotify` when newsboat queue is changed - -[ "$(pgrep -x $(basename $0) | wc -l)" -gt 2 ] && exit - -echo ${XDG_DATA_HOME:-$HOME/.local/share}/newsboat/queue | entr -p queueandnotify 2>/dev/null diff --git a/.local/bin/pom b/.local/bin/pom deleted file mode 100755 index 2852042..0000000 --- a/.local/bin/pom +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh -SAVE_DIR=~/eth/pomodoros -case $1 in - add) start=$2 - start_secs=$(date -d $start +'%s') - end=$3 - end_secs=$(date -d $end +'%s') - duration="$(( ($end_secs - $start_secs)/60 ))" - echo "Pomodoro 1: $start to $end ($duration) $(date '+%Y%b%d')" | tee -ai $SAVE_DIR;; - *) xdotool key super+shift+9 - muccadoro $1 | tee -ai "$SAVE_DIR";; -esac -pkill -RTMIN+3 dwmblocks diff --git a/.local/bin/pomft b/.local/bin/pomft deleted file mode 100755 index aeef88d..0000000 --- a/.local/bin/pomft +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh -SAVE_DIR=~/bks/pomodoros_freetime -case $1 in - add) start=$2 - start_secs=$(date -d $start +'%s') - end=$3 - end_secs=$(date -d $end +'%s') - duration="$(( ($end_secs - $start_secs)/60 ))" - echo "Pomodoro 1: $start to $end ($duration) $(date '+%Y%b%d')" | tee -ai $SAVE_DIR;; - *) muccadoro ${1:-25} 'f' | tee -ai "$SAVE_DIR";; -esac -pkill -RTMIN+3 dwmblocks diff --git a/.local/bin/print_slides b/.local/bin/print_slides index 0ee7d4f..2c0f37d 100755 --- a/.local/bin/print_slides +++ b/.local/bin/print_slides @@ -5,26 +5,27 @@ VIRTUAL_PRINTER_DIR="/var/spool/cups-pdf/$USER" # Printer to print magazine layout on PRINTER="Canon-MF220" -for file in $@; do - lpr -P Virtual_PDF_Printer -o number-up=2 -o orientation-requested=4 -o fit-to-page -o media=a4 "$file" - str="." - until lpc status | grep -A 4 'Virtual_PDF_Printer:' | tail -n1 | grep 'no entries'; do - printf "\033[s\033[uPrinting to file for two slides per a5 page" - printf "%s" $str - printf "\033[u" - str=$str. - sleep 1 - done - echo "virtual printing done." - last_job_id="$(ls "$VIRTUAL_PRINTER_DIR" | grep -o '[0-9]*\.pdf$' | grep '[0-9]' | cut -d'.' -f1 | sort -n | tail -n1)" - #echo "last_job_id:$last_job_id" - file_two_page="$(ls $VIRTUAL_PRINTER_DIR/*${last_job_id}.pdf)" - #echo "file_two_page:$file_two_page" - printf "Invoking a5ona4..." - a5ona4 "$file_two_page" > /dev/null - echo "Done." - rm "$file_two_page" - only_filename_two_page="$( echo "$file_two_page"| awk -F/ '{print $NS}' )" - echo "Magazine layout of $file being sent to printer..." - lpr -P $PRINTER -o media=A4 -o Duplex=DuplexTumble -o sides=two-sided-short-edge -o BindEdge=Bottom -o media=a4 -r a5ona4_$file* +PRINTER=Virtual_PDF_Printer +file="$@" +lpr -P Virtual_PDF_Printer -o number-up=2 -o orientation-requested=4 -o fit-to-page -o media=a4 "$file" +str="." +until lpc status | grep -A 4 'Virtual_PDF_Printer:' | tail -n1 | grep 'no entries'; do + printf "\033[s\033[uPrinting to file for two slides per a5 page" + printf "%s" $str + printf "\033[u" + str=$str. + sleep 1 done +echo "virtual printing done." +last_job_id="$(ls "$VIRTUAL_PRINTER_DIR" | grep -o '[0-9]*\.pdf$' | grep '[0-9]' | cut -d'.' -f1 | sort -n | tail -n1)" +#echo "last_job_id:$last_job_id" +file_two_page="$(ls $VIRTUAL_PRINTER_DIR/*${last_job_id}.pdf)" +#echo "file_two_page:$file_two_page" +printf "Invoking a5ona4..." +a5ona4 "$file_two_page" > /dev/null +echo "Done." +rm "$file_two_page" +only_filename_two_page="$( echo "$file_two_page"| awk -F/ '{print $NS}' )" +echo "Magazine layout of $file being sent to printer..." +file_without_suffix="$(echo "$file" | sed 's/[ \(\)]/_/g; s/\.pdf$//')" +lpr -P $PRINTER -o media=A4 -o Duplex=DuplexTumble -o sides=two-sided-short-edge -o BindEdge=Bottom -o media=a4 -r a5ona4_${file_without_suffix}* diff --git a/.local/bin/prompt b/.local/bin/prompt index cda9a4a..34caacf 100755 --- a/.local/bin/prompt +++ b/.local/bin/prompt @@ -5,4 +5,4 @@ # For example: # `./prompt "Do you want to shutdown?" "shutdown -h now"` -[ "$(printf "No\\nYes" | dmenu -i -n -p "$1" -nb darkred -sb red -sf white -nf gray )" = "Yes" ] && $2 +[ "$(printf "No\\nYes" | dmenu -i -p "$1" -nb darkred -sb red -sf white -nf gray -n)" = "Yes" ] && $2 diff --git a/.local/bin/pyls b/.local/bin/pyls deleted file mode 100755 index 681e269..0000000 --- a/.local/bin/pyls +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -import re -import sys -from pyls.__main__ import main -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) - sys.exit(main()) diff --git a/.local/bin/qndl b/.local/bin/qndl deleted file mode 100755 index f5bd14f..0000000 --- a/.local/bin/qndl +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -# $1 is a url; $2 is a command -[ -z "$1" ] && exit -base="$(basename "$1")" -notify-send "โณ Queuing $base..." -cmd="$2" -[ -z "$cmd" ] && cmd="youtube-dl --add-metadata" -idnum="$(tsp $cmd "$1")" -realname="$(echo "$base" | sed "s/?\(source\|dest\).*//;s/%20/ /g")" -tsp -D "$idnum" mv "$base" "$realname" -tsp -D "$idnum" notify-send "๐Ÿ‘ $realname done." diff --git a/.local/bin/queueandnotify b/.local/bin/queueandnotify deleted file mode 100755 index a54b13e..0000000 --- a/.local/bin/queueandnotify +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/sh - -# Podboat sucks. This script replaces it. -# It reads the newsboat queue, queuing downloads with taskspooler. -# It also removes the junk from extentions. -queuefile="${XDG_DATA_HOME:-$HOME/.local/share}/newsboat/queue" - -while read -r line; do - [ -z "$line" ] && continue - url="$(echo "$line" | awk '{print $1}')" - qndl "$url" "curl -LO" -done < "$queuefile" - -echo > "$queuefile" diff --git a/.local/bin/refbar b/.local/bin/refbar deleted file mode 100755 index 78b5018..0000000 --- a/.local/bin/refbar +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh - -# Refresh the dwmbar. -# Send SIGTRAP signal to dwmbar script, which will handle it with a trap. -pkill -SIGTRAP dwmbar diff --git a/.local/bin/remapd b/.local/bin/remapd new file mode 100755 index 0000000..ee4cf39 --- /dev/null +++ b/.local/bin/remapd @@ -0,0 +1,8 @@ +#!/bin/bash + +# Rerun the remaps script whenever a new input device is added. + +while :; do + remaps + grep -qP -m1 '[^un]bind.+\/[^:]+\(usb\)' <(udevadm monitor -u -t seat -s input -s usb) +done diff --git a/.local/bin/remaps b/.local/bin/remaps index 13f3776..343cd13 100755 --- a/.local/bin/remaps +++ b/.local/bin/remaps @@ -9,3 +9,5 @@ setxkbmap -option caps:super -variant intl killall xcape 2>/dev/null ; xcape -e 'Super_L=Escape' # Map the menu button to right super as well. xmodmap -e 'keycode 135 = Super_R' +# Turn off the caps lock if on since there is no longer a key for it. +xset -q | grep "Caps Lock:\s*on" && xdotool key Caps_Lock diff --git a/.local/bin/ripper b/.local/bin/ripper deleted file mode 100755 index 7483e44..0000000 --- a/.local/bin/ripper +++ /dev/null @@ -1,117 +0,0 @@ -#!/bin/sh -#A script that checks multiple youtube and bitchute channels for new videos to download via youtube-dl -#This script works considerably faster than just giving youtube-dl a channel URI. -#The YouTube implementation now uses a YoutubeData API v3 key to work more reliably. -#This can be quite quota taxing, as each channel search is 1% of the allotted qutoa for the day. -#-> checking n YT channels => n% of daily quota required to run this script -#Keep this in mind when running it as a cronjob -#Either insert this key in plain text below at the variable "APIKEY" or do it via ENV vars or a password manager -#Since bitchute still doesn't have an API I'm using lynx to emulate a user. -#This can limit the number of recent videos available. For a whole download of bitchute channels consider other methods first. -#For youtube the videos per channel are limited to the last 500 uploaded videos. For the rest you can just use youtube-dl itself - -#needed if run as cronjob -XDG_VIDEOS_DIR=$HOME/vids #TODO ADJUST FOR PERSONAL USE HERE! -export XDG_VIDEOS_DIR -DLARCHIVE="${XDG_VIDEOS_DIR:-$HOME/Videos}/.downloaded" -DLLOC="${XDG_VIDEOS_DIR:-$HOME/Videos}" -#FORMAT OF CHANNELSFILE: -#Youtube: include the channel URI: https://www.youtube.com/channel/ -#Bitchute: normal channel URI: https://www.bitchute.com/channel/ -#Lines starting with '#' will be ignored in this file -CHANNELSFILE="${XDG_VIDEOS_DIR:-$HOME/Videos}/.channels" -BLACKLIST="${XDG_VIDEOS_DIR:-$HOME/Videos}/.blacklist" - -# Required to display notifications if run as a cronjob: -DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$(id -u)/bus -export DBUS_SESSION_BUS_ADDRESS -export DISPLAY=:0.0 -export XDG_DATA_HOME=/home/alex/.local/share -# Required to have pass work if run as cronjob -export PASSWORD_STORE_GPG_OPTS="--homedir=$XDG_DATA_HOME/gnupg" -export GTK2_RC_FILES="${XDG_CONFIG_HOME:-$HOME/.config}/gtk-2.0/gtkrc-2.0" -[ -d "$HOME/.local/share/password-store" ] && export PASSWORD_STORE_DIR="$HOME/.local/share/password-store" - -APIKEY="$(pass show API/Youtube\ Data\ API\ v3 | head -n1 )" -LEGACYMODE=$1 #set to anything nonzero to ignore YT API - -[ -n "$LEGACYMODE" ] && printf "Using YT Legacy fallback mode...\nThis is less reliable than the API requests.\nOnly expect to find the last 5 videos or so per channel\n" -if [ "$(pgrep -c ripper)" -gt 1 ]; then - echo "Ripper already running, exiting new instance..." - exit -fi - -echo "Scanning for new Videos to download" - - -##YOUTUBE -echo "Scanning on Youtube..." -IDs="$( grep 'youtube' "$CHANNELSFILE" | grep -v '^#' | grep 'channel' | sed 's/https:\/\/www\.youtube\.com\/channel\///')" -not_correctly_formatted="$(grep 'youtube' "$CHANNELSFILE" | grep -v '^#' | grep -v 'https:\/\/www\.youtube\.com\/channel\/')" -if [ -n "$not_correctly_formatted" ]; then - echo Please fix the following channel urls to be scannable: - echo "$not_correctly_formatted" | while read -r line; do - printf 'Given URI:\t%s\n' "$line" - printf 'Potentially correct channel URI:\n\thttps://www.youtube.com/channel/%s\n' "$(curl "$line" -s | grep -Eo 'externalId":"[^"]*"' | sed 's|^externalId":"||; s|"||g')" - done - echo "They need to be in the 'https://www.youtube.com/channel/...' format" -fi -for channel_id in $IDs; do - echo "YT-ID: $channel_id" - if [ -z "$LEGACYMODE" ]; then - json="$(curl -s "https://www.googleapis.com/youtube/v3/search?key=$APIKEY&channelId=$channel_id&part=snippet,id&order=date&maxResults=500")" - #Fallback to legacy mode if API quota is exceeded - if [ "$(echo "$json" | jq '."error"."errors"[]."reason"' 2> /dev/null )" = '"quotaExceeded"' ];then - echo "YT API Quota exceeded, using fallback" - LEGACYMODE=1 - fi - fi - if [ -n "$LEGACYMODE" ];then - curl -s "https://www.youtube.com/feeds/videos.xml?channel_id=$channel_id" > /tmp/"${channel_id}.xml" - python -c "from lxml import etree -file=\"/tmp/${channel_id}.xml\" -root = etree.parse(file) -for el in root.iter(): - if(el.tag in '{http://www.youtube.com/xml/schemas/2015}videoId'): - print(el.text)" | - sed 's/^/https:\/\/www\.youtube\.com\/watch\?v=/' | grep -vf "$BLACKLIST" >> /tmp/todownload$$ - rm -f "/tmp/${channel_id}.xml" - else - #Only try to download videos, not sheduled livestreams - echo "$json" | jq '.items[] | select(.snippet.liveBroadcastContent != "upcoming") | .id.videoId' | - tr -d '"' | grep -v '^null$'| - sed 's/^/https:\/\/www\.youtube\.com\/watch\?v=/' | - grep -vf "$BLACKLIST" >> /tmp/todownload$$ - fi -done -grep 'youtube' "$DLARCHIVE" | sed 's/youtube /https:\/\/www\.youtube\.com\/watch?v=/' > /tmp/alreadydownloaded$$ - -##BITCHUTE -#This section is quite generic and could probably be easily adapted for other video hosting websites -echo "Scanning on Bitchute..." -BC_CHANNELS="$(grep 'bitchute' "$CHANNELSFILE" | grep -v '^#')" -for channel in $BC_CHANNELS; do - printf 'BC channel: %s\n' "$( echo "$channel" | sed 's|https://www.bitchute.com/channel/||; s|/||')" - lynx --read_timeout=5 --dump --nonumbers -listonly "$channel"| grep 'bitchute\.com\/video' | sort -u | grep -vf "$BLACKLIST" >> /tmp/todownload$$ -done -grep 'bitchute' "$DLARCHIVE" | sed 's/bitchute /https:\/\/www\.bitchute\.com\/video\//' >> /tmp/alreadydownloaded$$ - -##DOWNLOAD VIDEOS FROM ACCUMULATED LINKS -grep -vf /tmp/alreadydownloaded$$ /tmp/todownload$$ | sort -u > /tmp/new_videos$$ -rm -f /tmp/alreadydownloaded$$ /tmp/todownload$$ -number=$(wc -l /tmp/new_videos$$ | cut -d ' ' -f 1 ) -if [ "$number" -gt 0 ]; then - [ "$number" -gt 1 ] && plural="s" - notify-send "Channel Ripper" "$number new video$plural available for download, downloading now." - echo "$number new video$plural for download available, downloading now." - if [ "$number" -lt 10 ];then - youtube-dl --get-filename -o "'%(uploader)s' '%(title)s'" -a /tmp/new_videos$$ | xargs -L1 notify-send - fi - youtube-dl --hls-prefer-native -i --download-archive "$DLARCHIVE" -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best' --add-metadata -o "$DLLOC/%(uploader)s/%(upload_date)s-%(title)s.%(ext)s" -a /tmp/new_videos$$ - rm -f /tmp/new_videos$$ - notify-send "Channel Ripper" "Finished downloading" -fi - -if [ "$number" -eq 0 ]; then - echo "No new videos" -fi diff --git a/.local/bin/rotdir b/.local/bin/rotdir new file mode 100755 index 0000000..d171f29 --- /dev/null +++ b/.local/bin/rotdir @@ -0,0 +1,12 @@ +#!/bin/sh + +# When I open an image from the file manager in nsxiv (the image viewer), I want +# to be able to press the next/previous keys to key through the rest of the +# images in the same directory. This script "rotates" the content of a +# directory based on the first chosen file, so that if I open the 15th image, +# if I press next, it will go to the 16th etc. Autistic, I know, but this is +# one of the reasons that nsxiv is great for being able to read standard input. + +[ -z "$1" ] && echo "usage: rotdir regex 2>&1" && exit 1 +base="$(basename "$1")" +ls "$PWD" | awk -v BASE="$base" 'BEGIN { lines = ""; m = 0; } { if ($0 == BASE) { m = 1; } } { if (!m) { if (lines) { lines = lines"\n"; } lines = lines""$0; } else { print $0; } } END { print lines; }' diff --git a/.local/bin/samedir b/.local/bin/samedir index 73facfd..0a19707 100755 --- a/.local/bin/samedir +++ b/.local/bin/samedir @@ -2,7 +2,9 @@ # Open a terminal window in the same directory as the currently active window. -PID=$(xprop -id "$(xprop -root | awk '/_NET_ACTIVE_WINDOW\(WINDOW\)/{print $NF}')" | grep -m 1 PID | cut -d " " -f 3) -PID="$(pstree -lpA "$PID" | tail -n 1 | awk -F'---' '{print $NF}' | sed -re 's/[^0-9]//g')" +PID=$(xprop -id "$(xprop -root | xprop -root | sed -n "/_NET_ACTIVE_WINDOW/ s/^.*# // p")" | sed -n "/PID/ s/^.*= // p") +PID="$(pstree -lpA "$PID")" +PID="${PID##*(}" +PID="${PID%)}" cd "$(readlink /proc/"$PID"/cwd)" || return 1 "$TERMINAL" diff --git a/.local/bin/setbg b/.local/bin/setbg new file mode 100755 index 0000000..b0938fd --- /dev/null +++ b/.local/bin/setbg @@ -0,0 +1,33 @@ +#!/bin/sh + +# This script does the following: +# Run by itself, set the wallpaper (at X start). +# If given a file, set that as the new wallpaper. +# If given a directory, choose random file in it. +# If wal is installed, also generates a colorscheme. + +# Location of link to wallpaper link. +bgloc="${XDG_DATA_HOME:-$HOME/.local/share/}/bg" + +# Configuration files of applications that have their themes changed by pywal. +dunstconf="${XDG_CONFIG_HOME:-$HOME/.config}/dunst/dunstrc" +zathuraconf="${XDG_CONFIG_HOME:-$HOME/.config}/zathura/zathurarc" + +trueloc="$(readlink -f "$1")" && +case "$(file --mime-type -b "$trueloc")" in + image/* ) ln -sf "$(readlink -f "$1")" "$bgloc" && notify-send -i "$bgloc" "Changing wallpaper..." ;; + inode/directory ) ln -sf "$(find "$trueloc" -iregex '.*.\(jpg\|jpeg\|png\|gif\)' -type f | shuf -n 1)" "$bgloc" && notify-send -i "$bgloc" "Random Wallpaper chosen." ;; + *) notify-send "Error" "Not a valid image." ; exit 1;; +esac + +# If pywal is installed, use it. +if command -v wal >/dev/null 2>&1 ; then + wal -i "$(readlink -f $bgloc)" -o "${XDG_CONFIG_HOME:-$HOME/.config}/wal/postrun" >/dev/null 2>&1 && + pidof dwm >/dev/null && xdotool key super+F12 +# If pywal is removed, return config files to normal. +else + [ -f "$dunstconf.bak" ] && unlink "$dunstconf" && mv "$dunstconf.bak" "$dunstconf" + [ -f "$zathuraconf.bak" ] && unlink "$zathuraconf" && mv "$zathuraconf.bak" "$zathuraconf" +fi + +xwallpaper --zoom "$bgloc" diff --git a/.local/bin/shortcuts b/.local/bin/shortcuts deleted file mode 100755 index 19d3ffd..0000000 --- a/.local/bin/shortcuts +++ /dev/null @@ -1,29 +0,0 @@ -#!/usr/bin/env bash - -# Output locations. Unactivated progs should go to /dev/null. -shell_shortcuts="${XDG_CONFIG_HOME:-$HOME/.config}/shortcutrc" -zsh_named_dirs="${XDG_CONFIG_HOME:-$HOME/.config}/zshnameddirrc" -ranger_shortcuts="${XDG_CONFIG_HOME:-$HOME/.config}/ranger/shortcuts.conf" -qute_shortcuts="/dev/null" -fish_shortcuts="/dev/null" -vifm_shortcuts="${XDG_CONFIG_HOME:-$HOME/.config}/vifm/vifmshortcuts" - -# Remove, prepare files -rm -f "$ranger_shortcuts" "$qute_shortcuts" "$zsh_named_dirs" 2>/dev/null -printf "# vim: filetype=sh\\n" > "$fish_shortcuts" -printf "# vim: filetype=sh\\nalias " > "$shell_shortcuts" -printf "\" vim: filetype=vim\\n" > "$vifm_shortcuts" - -# Format the `directories` file in the correct syntax and sent it to all three configs. -sed "s/\s*#.*$//;/^\s*$/d" "${XDG_CONFIG_HOME:-$HOME/.config}/directories" | tee >(awk '{print $1"=\"cd "$2" && ls -a\" \\"}' >> "$shell_shortcuts") \ - >(awk '{print "hash -d "$1"="$2}' >> "$zsh_named_dirs") \ - >(awk '{print "abbr", $1, "\"cd " $2 "; and ls -a\""}' >> "$fish_shortcuts") \ - >(awk '{print "map g" $1, ":cd", $2 "\nmap t" $1, ":cd", $2 "\nmap M" $1, ":cd", $2 ":mo\nmap Y" $1, ":cd", $2 ":co" }' >> "$vifm_shortcuts") \ - >(awk '{print "config.bind(\";"$1"\", \"set downloads.location.directory "$2" ;; hint links download\")"}' >> "$qute_shortcuts") \ - | awk '{print "map g"$1" cd "$2"\nmap t"$1" tab_new "$2"\nmap m"$1" shell mv -v %s "$2"\nmap Y"$1" shell cp -rv %s "$2}' >> "$ranger_shortcuts" - -# Format the `files` file in the correct syntax and sent it to both configs. -sed "s/\s*#.*$//;/^\s*$/d" "${XDG_CONFIG_HOME:-$HOME/.config}/files" | tee >(awk '{print $1"=\"$EDITOR "$2"\" \\"}' >> "$shell_shortcuts") \ - >(awk '{print "abbr", $1, "\"$EDITOR "$2"\""}' >> "$fish_shortcuts") \ - >(awk '{print "map", $1, ":e", $2 "" }' >> "$vifm_shortcuts") \ - | awk '{print "map "$1" shell $EDITOR "$2}' >> "$ranger_shortcuts" diff --git a/.local/bin/statusbar/corona b/.local/bin/statusbar/corona deleted file mode 100755 index 8858bfe..0000000 --- a/.local/bin/statusbar/corona +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash -( [ "$(stat -c %y ~/.cache/corona | cut -d' ' -f1)" != "$(date '+%Y-%m-%d')" ] || [ "$1" = "up" ] )&& - curl -s https://corona-stats.online/Switzerland | sed -r "s/[[:cntrl:]]\[[0-9]{1,3}m//g" > ~/.cache/corona && notify-send "Corona" "Stats updated"; sleep 5; pkill -RTMIN+15 dwmblocks - -increase=$( grep "Switzerland" ~/.cache/corona | - sed "s/\s*//g; s/โ•‘//g; s/โ”‚/;/g" | awk -F';' '{print $4}' ) -[ "$increase" != "" ] && ( grep "Switzerland" ~/.cache/corona | - sed "s/\s*//g; s/โ•‘//g; s/โ”‚/;/g" | - awk -F';' '{print "๐Ÿ˜ท"$3 " ("$4") ๐Ÿ’€"$5 }' ) || ( grep "Switzerland" ~/.cache/corona | - sed "s/\s*//g; s/โ•‘//g; s/โ”‚/;/g" | - awk -F';' '{print "๐Ÿ˜ท"$3 " ๐Ÿ’€"$5 }' ) diff --git a/.local/bin/statusbar/crypto b/.local/bin/statusbar/crypto deleted file mode 100755 index 31e88b3..0000000 --- a/.local/bin/statusbar/crypto +++ /dev/null @@ -1,53 +0,0 @@ -#!/bin/sh - -# Shows the price for desired cryptocurrencies. Module updates automatically -# every calendar day, but can also be updated with a middle click. - -# Currencies should be ;-separated: -# human-readable name;urlname;icon -coins="Bitcoin;btc;๐Ÿ’ฐ -Etherium;eth;๐Ÿธ -Basic Attention Token;bat;๐Ÿฆ -LBC;lbc;๐Ÿ“š" - -# Directory where currency info is stored. -dir="${XDG_DATA_HOME:-$HOME/.local/share}/crypto-prices" - -getprices() { # The command to get the desired prices - printf "๐Ÿ”ƒ "; printprices - { rm -rf "${dir:?}/*" - echo "$coins" | while IFS=';' read -r human web icon; do - val="$(curl -s "rate.sx/1$web")" && - echo "$icon;$val;$human" > "$dir/$web" - done; [ -d "$dir" ] && touch "$dir" - pkill -RTMIN+13 "${STATUSBAR:-dwmblocks}" ;} & - exit - } - -printprices() { # Print/format all prices - for x in "$dir"/*; do - [ -f "$x" ] || break - info="$(cut -d';' -f-2 --output-delimiter=' ' "$x")" - printf "%s $%0.2f " $info - done | sed 's/ $//' - } - -[ ! -d "$dir" ] && mkdir -p "$dir" && { getprices; exit ;} - -# If currencies haven't been updated today, try to update them. -[ "$(stat -c %x "$HOME/.local/share/crypto-prices" | cut -d' ' -f1)" != "$(date '+%Y-%m-%d')" ] && - { ping -q -c 1 1.1.1.1 >/dev/null 2>&1 && getprices || exit ;} - -case $BLOCK_BUTTON in - 1) uptime="$(date -d "$(stat -c %x "$dir")" '+%D at %T' | sed "s|$(date '+%D')|Today|")" - notify-send "Exact prices in USD" "$(awk -F';' '{print $1, $3 ":\n\t$" $2}' "$dir"/*) -Last updated: - $uptime" ;; - 2) getprices ;; - 3) notify-send "๐Ÿ’ธ Crypto-currency module" "\- Left click for exact prices. -- Middle click to update. -- Shows ๐Ÿ”ƒ if updating prices. -- Manually add/remove currencies to list in the script." ;; -esac - -printprices diff --git a/.local/bin/statusbar/getpomminutes b/.local/bin/statusbar/getpomminutes deleted file mode 100755 index d883376..0000000 --- a/.local/bin/statusbar/getpomminutes +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -day=$(date '+%Y%b%d') -logged=$(grep -v Break ~/eth/pomodoros | grep $(date '+%Y%b%d') | grep -Eo "\(.*\)" | paste -sd+ | bc) -temp=$(cat /tmp/pomptemptimes 2>/dev/null) -min=$([ "$logged" != "" ] && ([ "$temp" != "" ] && echo "$logged + $temp" | bc || echo $logged ) || ([ "$temp" != "" ] && echo $temp)) -[ -n "$min" ] && printf '๐Ÿ…%s' "$min" -printf '\n' diff --git a/.local/bin/statusbar/getpomminutesft b/.local/bin/statusbar/getpomminutesft deleted file mode 100755 index 03e5938..0000000 --- a/.local/bin/statusbar/getpomminutesft +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -day=$(date '+%Y%b%d') -logged=$(grep -v Break ~/bks/pomodoros_freetime | grep $(date '+%Y%b%d') | grep -Eo "\(.*\)" | paste -sd+ | bc) -temp=$(cat /tmp/pomptemptimesft 2>/dev/null) -min=$([ "$logged" != "" ] && ([ "$temp" != "" ] && echo "$logged + $temp" | bc || echo $logged ) || ([ "$temp" != "" ] && echo $temp)) -[ -n "$min" ] && printf '๐Ÿ“š%s'"$min" -printf '\n' diff --git a/.local/bin/statusbar/headset_connected b/.local/bin/statusbar/headset_connected deleted file mode 100755 index 6b0efc7..0000000 --- a/.local/bin/statusbar/headset_connected +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh -if pactl list sinks | grep -qE 'device.icon_name = \"audio-(headset|headphones)-bluetooth\"'; then - printf '๐ŸŽง' -fi -printf '\n' diff --git a/.local/bin/statusbar/help b/.local/bin/statusbar/help deleted file mode 100755 index 4916d5c..0000000 --- a/.local/bin/statusbar/help +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh -case $BLOCK_BUTTON in - 1) groff -mom ~/.local/share/larbs/readme.mom -Tpdf | zathura - ;; - 2) i3 restart ;; - 3) pgrep -x dunst >/dev/null && notify-send "โ“ Help module" "\- Left click to open LARBS guide. -- Middle click to refresh i3.";; -esac; echo "โ“" diff --git a/.local/bin/statusbar/help-icon b/.local/bin/statusbar/help-icon deleted file mode 100755 index 4d8e3c2..0000000 --- a/.local/bin/statusbar/help-icon +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh - -# The clickable help menu. Middle click to restart wm. - -# If dwm is running, use dwm's readme and restart. -ps ax | grep -q "\sdwm$" && - READMEFILE=/usr/local/share/dwm/larbs.mom - restartwm() { pkill -HUP dwm ;} || - restartwm() { i3 restart ;} - -case $BLOCK_BUTTON in - 1) groff -mom "${READMEFILE:-${XDG_DATA_HOME:-$HOME/.local/share}/larbs/readme.mom}" -Tpdf | zathura - ;; - 2) restartwm ;; - 3) notify-send "โ“ Help module" "\- Left click to open LARBS guide. -- Middle click to refresh window manager.";; -esac; echo "โ“" diff --git a/.local/bin/statusbar/iplocate b/.local/bin/statusbar/iplocate deleted file mode 100755 index 4ca4f10..0000000 --- a/.local/bin/statusbar/iplocate +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh - -# Gets your public ip address checks which country you are in and -# displays that information in the statusbar -# -# https://www.maketecheasier.com/ip-address-geolocation-lookups-linux/ -ifinstalled "geoiplookup" || exit -addr="$(curl ifconfig.me 2>/dev/null)" || exit -grep "flag: " ~/.config/emoji | grep "$(geoiplookup $addr | sed 's/.*, //')" | sed "s/flag: //;s/;.*//" diff --git a/.local/bin/statusbar/moonphase b/.local/bin/statusbar/moonphase deleted file mode 100755 index 12ed90b..0000000 --- a/.local/bin/statusbar/moonphase +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -# Shows the current moon phase. Requires `pom-perl`. - -mnphs=$(pom $1 | grep -o 'New\|Waxing Crescent\|First Quarter\|Waxing Gibbous\|Full\|Waning Gibbous\|Last Quarter\|Waning Crescent' | grep -m1 '.') -prcnt=$(pom $1 | grep -o '[[:digit:]]*%' | grep -o '[[:digit:]]*' ) -case "$mnphs" in - "New") icon="๐ŸŒ‘" prcnt="0" ;; - "Waxing Crescent") icon="๐ŸŒ’" ;; - "First Quarter") icon="๐ŸŒ“" prcnt="50" ;; - "Waxing Gibbous") icon="๐ŸŒ”" ;; - "Full") icon="๐ŸŒ•" prcnt="100" ;; - "Waning Gibbous") icon="๐ŸŒ–" ;; - "Last Quarter") icon="๐ŸŒ—" prcnt="50" ;; - "Waning Crescent") icon="๐ŸŒ˜" ;; - *) echo errorrrr ;; -esac - -case $BLOCK_BUTTON in - 1) $mnphs ;; - 2) $mnphs ;; - 3) notify-send " ๐ŸŒœ$(pom)" ;; -esac - -echo "$icon" "$prcnt"% diff --git a/.local/bin/statusbar/mpdupdate b/.local/bin/statusbar/mpdupdate deleted file mode 100755 index cd45481..0000000 --- a/.local/bin/statusbar/mpdupdate +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh -# Whenever the mpd state changes, update the mpd i3 module. -#kill -0 "$(cat /tmp/mpdupdate)" 2>/dev/null && exit || echo $$ > /tmp/mpdupdate - -#sleep 5 && while : ; do - #pkill -RTMIN+11 dwmblocks - #mpc idle >/dev/null || exit -#done -pkill -RTMIN+11 dwmblocks diff --git a/.local/bin/statusbar/music b/.local/bin/statusbar/music deleted file mode 100755 index c435fb1..0000000 --- a/.local/bin/statusbar/music +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh -if [ "$( mpc status | grep -c '\[playing\]')" -eq 1 ]; then - full_length="$(mpc status | sed "/^volume:/d" | tac | sed -e "s/\\[paused\\].*//g;s/\\[playing\\].*//g" | tr -d '\n' | sed -e "s/$/ /g")" - #remove full directory structure if no title present and too long - if [ ${#full_length} -gt 40 ]; then - echo "${full_length##*/}" - else - echo "$full_length" - fi -else - printf '\n' -fi diff --git a/.local/bin/statusbar/music_old b/.local/bin/statusbar/music_old deleted file mode 100755 index 93c2c9c..0000000 --- a/.local/bin/statusbar/music_old +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/sh - -filter() { - sed "/^volume:/d" | tac | sed -e "s/\\&/&/g;s/\\[paused\\].*//g;s/\\[playing\\].*//g" | tr -d '\n' | sed -e "s/$/<\\/span>/g" - } - -case $BLOCK_BUTTON in - 1) mpc status | filter && setsid "$TERMINAL" -e ncmpcpp & ;; # right click, pause/unpause - 2) mpc toggle | filter ;; # right click, pause/unpause - 3) mpc status | filter && pgrep -x dunst >/dev/null && notify-send "๐ŸŽต Music module" "\- Shows mpd song playing. -- Italic when paused. -- Left click opens ncmpcpp. -- Middle click pauses. -- Scroll changes track.";; # right click, pause/unpause - 4) mpc prev | filter ;; # scroll up, previous - 5) mpc next | filter ;; # scroll down, next - *) mpc status | filter ;; -esac; exit diff --git a/.local/bin/statusbar/appointments b/.local/bin/statusbar/sb-appointments similarity index 72% rename from .local/bin/statusbar/appointments rename to .local/bin/statusbar/sb-appointments index e87be50..982b97e 100755 --- a/.local/bin/statusbar/appointments +++ b/.local/bin/statusbar/sb-appointments @@ -1,6 +1,16 @@ #!/bin/sh #Print the next appointment for the day for statusbar #or generate notification for upcoming appointment +notify_mins_before=10 + + +calcurse -a | perl -pe 's/([0-9]{2}:[0-9]{2})\n/\1/' | tail -n+2 | perl -pe 's/^\s*-\s*([0-9]{2}:[0-9]{2})\s*->\s*([0-9]{2}:[0-9]{2})\s*(.*?)$/\1\t\2\t\3/' | + while read -r appointment; do + start=$(echo "$appointment" | cut -d'\t' -f1) + end=$(echo "$appointment" | cut -d'\t' -f2) + description=$(echo "$appointment" | cut -d'\t' -f3) + done + diff=$(calcurse --next | sed -n 's/^\s*//; s/\[//;s/\]//p' | cut -f1 -d ' ' | perl -pe 's/0([0-9])/\1/g' ) if [ -n "$diff" ]; then secs=$(( $(echo "$diff" | cut -f1 -d ':') * 3600 + $(echo "$diff" | cut -f2 -d ':') *60 )) @@ -12,8 +22,11 @@ if [ -n "$diff" ]; then fi if [ "$1" = "notif" ]; then msg="$(printf '%s\n%s' "$(date --date "@$time_appointment" +'%H:%M')" "$appointment")" + check_for_notif "$msg" notify-send "Appointment coming up" "$msg" + printf "%s\n%s\n" $(date -I) $msg >> /tmp/apts_notif else + #Fix this ugly thing lmao midnight=$(( $(date --date "$(date | sed 's/..:..:../23:59:59/; s/ PM//; s/ AM//')" +%s) + 1 )) if [ $midnight -gt "$time_appointment" ]; then #only print appointment if dunst-notifications are also shown -> "privacy screen" diff --git a/.local/bin/statusbar/battery b/.local/bin/statusbar/sb-battery similarity index 100% rename from .local/bin/statusbar/battery rename to .local/bin/statusbar/sb-battery diff --git a/.local/bin/statusbar/btstatus b/.local/bin/statusbar/sb-btstatus similarity index 100% rename from .local/bin/statusbar/btstatus rename to .local/bin/statusbar/sb-btstatus diff --git a/.local/bin/statusbar/clock b/.local/bin/statusbar/sb-clock similarity index 100% rename from .local/bin/statusbar/clock rename to .local/bin/statusbar/sb-clock diff --git a/.local/bin/statusbar/cpu b/.local/bin/statusbar/sb-cpu similarity index 100% rename from .local/bin/statusbar/cpu rename to .local/bin/statusbar/sb-cpu diff --git a/.local/bin/statusbar/current_day b/.local/bin/statusbar/sb-current_day similarity index 100% rename from .local/bin/statusbar/current_day rename to .local/bin/statusbar/sb-current_day diff --git a/.local/bin/statusbar/disk b/.local/bin/statusbar/sb-disk similarity index 100% rename from .local/bin/statusbar/disk rename to .local/bin/statusbar/sb-disk diff --git a/.local/bin/statusbar/dunststatus b/.local/bin/statusbar/sb-dunststatus similarity index 100% rename from .local/bin/statusbar/dunststatus rename to .local/bin/statusbar/sb-dunststatus diff --git a/.local/bin/statusbar/getbright b/.local/bin/statusbar/sb-getbright similarity index 100% rename from .local/bin/statusbar/getbright rename to .local/bin/statusbar/sb-getbright diff --git a/.local/bin/statusbar/getmail b/.local/bin/statusbar/sb-getmail similarity index 100% rename from .local/bin/statusbar/getmail rename to .local/bin/statusbar/sb-getmail diff --git a/.local/bin/statusbar/internet b/.local/bin/statusbar/sb-internet similarity index 61% rename from .local/bin/statusbar/internet rename to .local/bin/statusbar/sb-internet index b7f8dc9..11d5f93 100755 --- a/.local/bin/statusbar/internet +++ b/.local/bin/statusbar/sb-internet @@ -12,8 +12,13 @@ esac [ "$(cat /sys/class/net/w*/operstate)" = 'down' ] && wifiicon="๐Ÿ“ก" -[ -z "${wifiicon+var}" ] && wifiicon="๐Ÿ“ถ" #[ ! -n "${wifiicon+var}" ] && wifiicon=$(grep "^\s*w" /proc/net/wireless | awk '{ print "๐Ÿ“ถ", int($3 * 100 / 70) "%" }') -printf "%s%s\n" "$wifiicon" "$(cat /sys/class/net/w*/operstate | sed "s/down/โŽ/;s/up//")" +if [ -d /sys/class/net/e* ]; then + wifiicon=๐ŸŒ + printf "%s%s\n" "$wifiicon" "$(cat /sys/class/net/e*/operstate | sed "s/down/โŽ/;s/up//")" +else + [ -z "${wifiicon+var}" ] && wifiicon="๐Ÿ“ถ" + printf "%s%s\n" "$wifiicon" "$(cat /sys/class/net/w*/operstate | sed "s/down/โŽ/;s/up//")" +fi diff --git a/.local/bin/statusbar/mailbox b/.local/bin/statusbar/sb-mailbox similarity index 100% rename from .local/bin/statusbar/mailbox rename to .local/bin/statusbar/sb-mailbox diff --git a/.local/bin/statusbar/memory b/.local/bin/statusbar/sb-memory similarity index 100% rename from .local/bin/statusbar/memory rename to .local/bin/statusbar/sb-memory diff --git a/.local/bin/statusbar/sb-music b/.local/bin/statusbar/sb-music new file mode 100755 index 0000000..ac172f7 --- /dev/null +++ b/.local/bin/statusbar/sb-music @@ -0,0 +1,16 @@ +#!/bin/sh +if [ "$( mpc status | grep -c '\[playing\]')" -eq 1 ]; then + if [ ! -f /tmp/nodunst ]; then + full_length="$(mpc status | sed "/^volume:/d" | tac | sed -e "s/\\[paused\\].*//g;s/\\[playing\\].*//g" | tr -d '\n' | sed -e "s/$/ /g")" + #remove full directory structure if no title present and too long + if [ ${#full_length} -gt 40 ]; then + echo "${full_length##*/}" + else + echo "$full_length" + fi + else + printf '\n' + fi +else + printf '\n' +fi diff --git a/.local/bin/statusbar/nettraf b/.local/bin/statusbar/sb-nettraf similarity index 100% rename from .local/bin/statusbar/nettraf rename to .local/bin/statusbar/sb-nettraf diff --git a/.local/bin/statusbar/news b/.local/bin/statusbar/sb-news similarity index 100% rename from .local/bin/statusbar/news rename to .local/bin/statusbar/sb-news diff --git a/.local/bin/statusbar/pacpackages b/.local/bin/statusbar/sb-pacpackages similarity index 100% rename from .local/bin/statusbar/pacpackages rename to .local/bin/statusbar/sb-pacpackages diff --git a/.local/bin/statusbar/torrent b/.local/bin/statusbar/sb-torrent similarity index 100% rename from .local/bin/statusbar/torrent rename to .local/bin/statusbar/sb-torrent diff --git a/.local/bin/statusbar/sb-volume b/.local/bin/statusbar/sb-volume new file mode 100755 index 0000000..2137c15 --- /dev/null +++ b/.local/bin/statusbar/sb-volume @@ -0,0 +1,52 @@ +#!/bin/sh + +# Prints the current volume or ๐Ÿ”‡ if muted. Uses PulseAudio by default, +# uncomment the ALSA lines if you remove PulseAudio. + +case $BLOCK_BUTTON in + # 1) setsid "$TERMINAL" -e alsamixer & ;; + # 2) amixer sset Master toggle ;; + # 4) amixer sset Master 5%+ >/dev/null 2>/dev/null ;; + # 5) amixer sset Master 5%- >/dev/null 2>/dev/null ;; + 1) setsid "$TERMINAL" -e pulsemixer & ;; + 2) pamixer -t ;; + 4) pamixer --allow-boost -i 1 ;; + 5) pamixer --allow-boost -d 1 ;; + 3) notify-send "๐Ÿ“ข Volume module" "\- Shows volume ๐Ÿ”Š, ๐Ÿ”‡ if muted. +- Middle click to mute. +- Scroll to change." +esac + +#volstat="$(pactl list sinks)" +## volstat="$(amixer get Master)" # ALSA only equivalent. +# +## Uses active sink if one is running, otherwise just go for the default one (First one listed in pactl list sinks) +#if [ -z "$(echo "$volstat" | grep -A10 'State: RUNNING' )" ]; then +# echo "$volstat" | grep -q "Mute: yes" && printf "๐Ÿ”‡\\n" && exit +#else +# echo "$volstat" | grep -A10 "State: RUNNING" | grep -q "Mute: yes" && printf "๐Ÿ”‡\\n" && exit +#fi +## echo "$volstat" | grep "\[off\]" >/dev/null && printf "๐Ÿ”‡\\n" && exit # ALSA +# +## Uses active sink if one is running, otherwise just go for the default one (First one listed in pactl list sinks) +#if [ -z "$(echo "$volstat" | grep -A10 'State: RUNNING' )" ]; then +# vol="$(echo "$volstat" | grep '[0-9]\+%' | sed "s,.* \([0-9]\+\)%.*,\1,;1q")" +#else +# vol="$(echo "$volstat" | grep -A10 "State: RUNNING" | grep '[0-9]\+%' | sed "s,.* \([0-9]\+\)%.*,\1,;1q")" +#fi + +# vol=$(echo "$volstat" | grep -o "\[[0-9]\+%\]" | sed "s/[^0-9]*//g;1q") # ALSA +vol="$(pamixer --get-volume-human | tr -d '%')" +if echo "$vol" | grep -q muted; then + printf '๐Ÿ”‡\n' + +else + if [ "$vol" -gt "70" ]; then + icon="๐Ÿ”Š" + elif [ "$vol" -lt "30" ]; then + icon="๐Ÿ”ˆ" + else + icon="๐Ÿ”‰" + fi + printf "%s%s%%\\n" "$icon" "$vol" +fi diff --git a/.local/bin/statusbar/statusbarinfo b/.local/bin/statusbar/statusbarinfo deleted file mode 100755 index 2b3e58c..0000000 --- a/.local/bin/statusbar/statusbarinfo +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/sh - -echo " - ____ _ _ _ -/ ___|| |_ __ _| |_ _ _ ___| |__ __ _ _ __ -\___ \| __/ _\` | __| | | / __| '_ \ / _\` | '__| - ___) | || (_| | |_| |_| \__ \ |_) | (_| | | -|____/ \__\__,_|\__|\__,_|___/_.__/ \__,_|_| - -This is a list of the statusbar modules. - -๐Ÿ“ฆ5 \033[31mpacpackages\033[0m: updatable packages (must have pacman -Sy run in root cronjob to check). -๐Ÿ“ฐ 41 \033[32mnews\033[0m: unread RSS entries in newsboat. -โ˜” 83% โ„๏ธ 69ยฐ ๐ŸŒž 80ยฐ \033[33mweather\033[0m: โ˜” for precipitation, ๐ŸŒž and โ„ for daily high and low. -๐Ÿ“ฌ 20 \033[34mmailbox\033[0m: number of unread mail if mutt-wizard is active. -๐Ÿ”‰ 62% \033[35mvolume\033[0m: master sink volume. -๐Ÿ”Œ83% \033[36mbattery\033[0m: ๐Ÿ”Œ for charging, ๐Ÿ”‹ for discharging, โšก for full. -๐Ÿ“ถ 80% โŽ \033[37minternet\033[0m: ๐Ÿ“ถ for wifi with % (๐Ÿ“ก if none), ๐ŸŒ for ethernet. (โŽ if none). - -Obviously the time and date are displayed as well. - -Optional script modules: - -Edit \033[32m~/.local/src/dwmblocks/config.h\033[0m to add these or your own if you'd like (and recompile and restart dwmblocks). - -'memory' ๐Ÿง  559Mi/3.7Gi Current used memory/total memory. -'cpu' ๐ŸŒก +46.0ยฐC CPU temperature. -'disk' ๐Ÿ–ฅ : 28G/30G Remaining disk space... -'disk ~' ๐Ÿ : 641G/850G ...can be given directory argument. -'moonphase' ๐ŸŒ• 39% Phase of the moon (requires \033[32m\`pom-perl\`\033[0m). -'iplocate' ๐Ÿ‡บ๐Ÿ‡ธ United States Your own or VPN location (requires \033[32m\`geoiplookup\`\033[0m). -" | less diff --git a/.local/bin/statusbar/sync_status b/.local/bin/statusbar/sync_status deleted file mode 100755 index fc4d7f3..0000000 --- a/.local/bin/statusbar/sync_status +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh -string="$(insync get_status)" - -case "$string" in - SYNCED) echo '๐Ÿ”—' ;; - OFFLINE) echo '๐Ÿ”—' ;; - SYNCING) echo '๐Ÿ”„' ;; -esac diff --git a/.local/bin/statusbar/volume b/.local/bin/statusbar/volume deleted file mode 100755 index 0442eca..0000000 --- a/.local/bin/statusbar/volume +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/sh - -# Prints the current volume or ๐Ÿ”‡ if muted. Uses PulseAudio by default, -# uncomment the ALSA lines if you remove PulseAudio. - -case $BLOCK_BUTTON in - # 1) setsid "$TERMINAL" -e alsamixer & ;; - # 2) amixer sset Master toggle ;; - # 4) amixer sset Master 5%+ >/dev/null 2>/dev/null ;; - # 5) amixer sset Master 5%- >/dev/null 2>/dev/null ;; - 1) setsid "$TERMINAL" -e pulsemixer & ;; - 2) pamixer -t ;; - 4) pamixer --allow-boost -i 1 ;; - 5) pamixer --allow-boost -d 1 ;; - 3) notify-send "๐Ÿ“ข Volume module" "\- Shows volume ๐Ÿ”Š, ๐Ÿ”‡ if muted. -- Middle click to mute. -- Scroll to change." -esac - -volstat="$(pactl list sinks)" -# volstat="$(amixer get Master)" # ALSA only equivalent. - -# Uses active sink if one is running, otherwise just go for the default one (First one listed in pactl list sinks) -if [ -z "$(echo "$volstat" | grep -A10 'State: RUNNING' )" ]; then - echo "$volstat" | grep -q "Mute: yes" && printf "๐Ÿ”‡\\n" && exit -else - echo "$volstat" | grep -A10 "State: RUNNING" | grep -q "Mute: yes" && printf "๐Ÿ”‡\\n" && exit -fi -# echo "$volstat" | grep "\[off\]" >/dev/null && printf "๐Ÿ”‡\\n" && exit # ALSA - -# Uses active sink if one is running, otherwise just go for the default one (First one listed in pactl list sinks) -if [ -z "$(echo "$volstat" | grep -A10 'State: RUNNING' )" ]; then - vol="$(echo "$volstat" | grep '[0-9]\+%' | sed "s,.* \([0-9]\+\)%.*,\1,;1q")" -else - vol="$(echo "$volstat" | grep -A10 "State: RUNNING" | grep '[0-9]\+%' | sed "s,.* \([0-9]\+\)%.*,\1,;1q")" -fi - -# vol=$(echo "$volstat" | grep -o "\[[0-9]\+%\]" | sed "s/[^0-9]*//g;1q") # ALSA - -if [ "$vol" -gt "70" ]; then - icon="๐Ÿ”Š" -elif [ "$vol" -lt "30" ]; then - icon="๐Ÿ”ˆ" -else - icon="๐Ÿ”‰" -fi - -printf "%s%s%%\\n" "$icon" "$vol" diff --git a/.local/bin/statusbar/volume_ b/.local/bin/statusbar/volume_ deleted file mode 100755 index 3bbb32b..0000000 --- a/.local/bin/statusbar/volume_ +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -case $BLOCK_BUTTON in - 1) setsid "$TERMINAL" -e pulsemixer & ;; - 2) pulsemixer --toggle-mute ;; - 4) pulsemixer --change-volume +5 ;; - 5) pulsemixer --change-volume -5 ;; - 3) pgrep -x dunst >/dev/null && notify-send "๐Ÿ“ข Volume module" "\- Shows volume ๐Ÿ”Š, ๐Ÿ”‡ if muted. -- Middle click to mute. -- Scroll to change." -esac - -[ "$(pulsemixer --get-mute)" = "1" ] && printf "๐Ÿ”‡\\n" && exit - -vol=$(pulsemixer --get-volume | awk '{print $1}') - -if [ "$vol" -gt "70" ]; then - icon="๐Ÿ”Š" -elif [ "$vol" -lt "30" ]; then - icon="๐Ÿ”ˆ" -else - icon="๐Ÿ”‰" -fi - -printf "%s %s%%\\n" "$icon" "$vol" diff --git a/.local/bin/statusbar/weather b/.local/bin/statusbar/weather deleted file mode 100755 index 944b603..0000000 --- a/.local/bin/statusbar/weather +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh -meteobluelink="https://www.meteoblue.com/en/weather/forecast/multimodel/zurich_switzerland_2657896" -multimodel_path="$XDG_DATA_HOME/$(date -I)_multimodel.png" - -last_downloaded_path="$(for file in "$XDG_DATA_HOME"/*_multimodel.png; do - echo "$file" -done | head -n1)" -last_downloaded="$(echo "${last_downloaded_path%_multimodel.png}" | awk 'BEGIN{FS="/"} {print $NF}')" -if [ "$last_downloaded" = "*" ]; then - FLAG_download=true -else - if [ "$(date -I)" != "$last_downloaded" ]; then - echo "Last report is from another day, downloading for today..." - rm "$XDG_DATA_HOME"/*_multimodel.png - FLAG_download=true - else - FLAG_download=false - fi -fi -if [ $FLAG_download = 'true' ]; then - mb_imagelink="$(lynx --dump --listonly --nonumbers "$meteobluelink" | grep meteogram_multiSimple_hd)" - curl -L "$mb_imagelink" -o "$multimodel_path" -else - echo "currently downloaded multimodel is from today, showing cached version" -fi -sxiv "$XDG_DATA_HOME"/*_multimodel.png diff --git a/.local/bin/sysact b/.local/bin/sysact deleted file mode 100755 index aaef469..0000000 --- a/.local/bin/sysact +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/sh - -# A dmenu wrapper script for system functions. - -cmds="\ -lock screen slock -leave dwm kill -TERM $(pidof -s dwm) -refresh dwm kill -HUP $(pidof -s dwm) -reboot sudo -A reboot -shutdown sudo -A shutdown -h now" - -choice="$(echo "$cmds" | cut -d' ' -f 1 | dmenu)" || exit 1 - -`echo "$cmds" | grep "^$choice " | cut -d ' ' -f2-` diff --git a/.local/bin/td-toggle b/.local/bin/td-toggle deleted file mode 100755 index d2ba76a..0000000 --- a/.local/bin/td-toggle +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -# If transmission-daemon is running, will ask to kill, else will ask to start. - -if pidof transmission-daemon >/dev/null ; -then - [ "$(printf "No\\nYes" | dmenu -i -p "Turn off transmission-daemon?")" = "Yes" ] && killall transmission-da && notify-send "transmission-daemon disabled." -else - ifinstalled transmission-cli || exit - [ "$(printf "No\\nYes" | dmenu -i -p "Turn on transmission daemon?")" = "Yes" ] && transmission-daemon && notify-send "tranmission-daemon enabled." -fi -sleep 3 && pkill -RTMIN+7 "${STATUSBAR:-dwmblocks}" diff --git a/.local/bin/test2 b/.local/bin/test2 deleted file mode 100755 index 14b2eb6..0000000 --- a/.local/bin/test2 +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash -echo $1 -echo $2 diff --git a/.local/bin/testscript b/.local/bin/testscript deleted file mode 100755 index b0be37b..0000000 --- a/.local/bin/testscript +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/bash -[ -n "$1" ] && echo "$1" > "/home/alex/test" diff --git a/.local/bin/texclear b/.local/bin/texclear new file mode 100755 index 0000000..4cdb02e --- /dev/null +++ b/.local/bin/texclear @@ -0,0 +1,16 @@ +#!/bin/sh + +# Clears the build files of a LaTeX/XeLaTeX build. +# I have vim run this file whenever I exit a .tex file. + +case "$1" in + *.tex) + file=$(readlink -f "$1") + dir=$(dirname "$file") + base="${file%.*}" + find "$dir" -maxdepth 1 -type f -regextype gnu-awk -regex "^$base\\.(4tc|xref|tmp|pyc|pyg|pyo|fls|vrb|fdb_latexmk|bak|swp|aux|log|synctex\\(busy\\)|lof|lot|maf|idx|mtc|mtc0|nav|out|snm|toc|bcf|run\\.xml|synctex\\.gz|blg|bbl)" -delete + rm -rdf "$dir/_minted-$(basename -- "$base")" + ;; + *) printf "Give .tex file as argument.\\n" ;; +esac + diff --git a/.local/bin/tldextract b/.local/bin/tldextract deleted file mode 100755 index 613634a..0000000 --- a/.local/bin/tldextract +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -import re -import sys -from tldextract.cli import main -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) - sys.exit(main()) diff --git a/.local/bin/tools/arkenfox-auto-update b/.local/bin/tools/arkenfox-auto-update new file mode 100755 index 0000000..7664a4f --- /dev/null +++ b/.local/bin/tools/arkenfox-auto-update @@ -0,0 +1,23 @@ +#!/bin/sh + +# A wrapper for the arkenfox-updater that runs it on all pre-existing Arkenfox +# user.js files on the machine. + +# On installation of LARBS, this file is copied to /usr/local/lib/ where it is +# run by a pacman hook set up. The user should not have to run this manually. + +# Search for all Firefox and Librewolf profiles using Arkenfox. +profiles="$(grep -sH "arkenfox user.js" \ + /home/*/.librewolf/*.default-release/user.js \ + /home/*/.mozilla/firefox/*.default-release/user.js)" + +IFS=' +' + +# Update each found profile. +for profile in $profiles; do + userjs=${profile%%/user.js*} + user=$(stat -c '%U' "$userjs") || continue + + su -l "$user" -c "arkenfox-updater -c -p $userjs -s" +done diff --git a/.local/bin/tools/booksplit b/.local/bin/tools/booksplit new file mode 100755 index 0000000..079d85f --- /dev/null +++ b/.local/bin/tools/booksplit @@ -0,0 +1,43 @@ +#!/bin/sh + +# Requires ffmpeg + +[ ! -f "$2" ] && printf "The first file should be the audio, the second should be the timecodes.\\n" && exit + +echo "Enter the album/book title:"; read -r booktitle +echo "Enter the artist/author:"; read -r author +echo "Enter the publication year:"; read -r year + +inputaudio="$1" +ext="${1##*.}" + +# Get a safe file name from the book. +escbook="$(echo "$booktitle" | iconv -c -f UTF-8 -t ASCII//TRANSLIT | tr -d '[:punct:]' | tr '[:upper:]' '[:lower:]' | tr ' ' '-' | sed "s/-\+/-/g;s/\(^-\|-\$\)//g")" + +! mkdir -p "$escbook" && + echo "Do you have write access in this directory?" && + exit 1 + +# Get the total number of tracks from the number of lines. +total="$(wc -l < "$2")" + +cmd="ffmpeg -i \"$inputaudio\" -nostdin -y" + +while read -r x; +do + end="$(echo "$x" | cut -d' ' -f1)" + file="$escbook/$(printf "%.2d" "$track")-$esctitle.$ext" + if [ -n "$start" ]; then + cmd="$cmd -metadata artist=\"$author\" -metadata title=\"$title\" -metadata album=\"$booktitle\" -metadata year=\"$year\" -metadata track=\"$track\" -metadata total=\"$total\" -ss \"$start\" -to \"$end\" -vn -c:a copy \"$file\" " + fi + title="$(echo "$x" | cut -d' ' -f2-)" + esctitle="$(echo "$title" | iconv -c -f UTF-8 -t ASCII//TRANSLIT | tr -d '[:punct:]' | tr '[:upper:]' '[:lower:]' | tr ' ' '-' | sed "s/-\+/-/g;s/\(^-\|-\$\)//g")" + track="$((track+1))" + start="$end" +done < "$2" + +# Last track must be added out of the loop. +file="$escbook/$(printf "%.2d" "$track")-$esctitle.$ext" +cmd="$cmd -metadata artist=\"$author\" -metadata title=\"$title\" -metadata album=\"$booktitle\" -metadata year=\"$year\" -metadata track=\"$track\" -ss \"$start\" -vn -c copy \"$file\"" + +eval "$cmd" diff --git a/.local/bin/tools/bt_blacklist b/.local/bin/tools/bt_blacklist deleted file mode 100644 index 96e7896..0000000 --- a/.local/bin/tools/bt_blacklist +++ /dev/null @@ -1 +0,0 @@ -MX Master diff --git a/.local/bin/tools/bthandler_ b/.local/bin/tools/bthandler_ deleted file mode 100755 index cdc7e52..0000000 --- a/.local/bin/tools/bthandler_ +++ /dev/null @@ -1,77 +0,0 @@ -#!/bin/bash -#wait time to discover new devices in seconds -SCAN_PERIOD=5 -BLACKLIST=$HOME/.local/bin/tools/bt_blacklist -actions="turn off\nturn on\npair\nunpair" - -#Checks for necessary programs to be present. Very unlikely not to be present but let's just err on the safer side. -for prog in dmenu bluetoothctl awk cat; do - if ! hash "$prog" 2>/dev/null; then - printf 'bthandler: %s: command not found\n' "$prog" >&2 - exit 127 - fi -done - - -bluetoothctl paired-devices | awk '{print $2}' > /tmp/bt_IDS -bluetoothctl paired-devices | awk '{for (i=3; i /tmp/paired_devices -grep -vf "$BLACKLIST" /tmp/paired_devices > /tmp/disp_devices - -#Don't print empty device list, removes unnecessary empty choice in dmenu -len=$(cat /tmp/disp_devices | wc -l) -[ $len -gt 0 ] && choice=$( printf "$(< /tmp/disp_devices)\n$actions" | dmenu -i -p 'What BT action would you like to perform:' ) -[ $len -eq 0 ] && choice=$( printf "$actions" | dmenu -i -p 'What BT action would you like to perform:' ) - -cleanup(){ - rm -f /tmp/bt_devices - rm -f /tmp/bt_IDS - rm -f /tmp/paired_devices - rm -f /tmp/new_devices - rm -f /tmp/disp_devices - bluetoothctl scan off > /dev/null - exit -} - - -case $choice in - "turn on") bluetoothctl power on - cleanup;; - "turn off") bluetoothctl power off - cleanup;; - "scan on") bluetoothctl power on && echo power on && sleep 2 - [ -n $TERMINAL ] && ($TERMINAL -e bluetoothctl scan on ) || st bluetoothctl scan on - cleanup;; - "pair") bluetoothctl power on - bluetoothctl scan on & disown - notify-send "Bluetooth" "Searching for devices, please wait a bit" - sleep $SCAN_PERIOD - bluetoothctl devices | awk '{for (i=3; i /tmp/bt_devices - grep -vf /tmp/paired_devices /tmp/bt_devices > /tmp/new_devices - choice=$( cat /tmp/new_devices | dmenu -l 10 -i -p 'pair with which device?' ) - if [ -n "$choice" ]; then - bluetoothctl devices | awk '{print $2}' > /tmp/bt_IDS - dev_no=$(cat -n /tmp/bt_devices | grep "$choice" | awk '{print $1}') - dev_id=$(cat -n /tmp/bt_IDS | grep -E $dev_no"[[:space:]]" | awk '{print $2}' ) - - bluetoothctl pair $dev_id && sleep 2 - bluetoothctl connect $dev_id - fi - cleanup;; - "unpair") choice=$( cat /tmp/paired_devices | dmenu -l 10 -i -p 'remove which paired device?') - if [ -n "choice" ]; then - dev_no=$(cat -n /tmp/paired_devices | grep "$choice" | awk '{print $1}') - dev_id=$(cat -n /tmp/bt_IDS | grep -E $dev_no"[[:space:]]" | awk '{print $2}' ) - bluetoo - bluetoothctl remove $dev_id - fi - cleanup;; -esac - -if [ -n "$choice" ]; then - dev_no=$(cat -n /tmp/paired_devices | grep "$choice" | awk '{print $1}') - dev_id=$(cat -n /tmp/bt_IDS | grep $dev_no | awk '{print $2}') - bluetoothctl power on - bluetoothctl connect $dev_id -fi - -cleanup diff --git a/.local/bin/tools/casttest b/.local/bin/tools/casttest deleted file mode 100755 index 807a57c..0000000 --- a/.local/bin/tools/casttest +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash -video=$1 -speed=${2:-1} -echo "speed: $speed" -slowness="$( echo $speed | bc -l )" -echo "slowness: $slowness" -rate=$( ffmpeg -i $video | sed -n "s/.*, \(.*\) tbr.*/\1/p" ) -echo "oldrate: $rate" -newrate=$( echo "scale=0; $speed * $rate" | bc -l ) -echo "newrate: $newrate" -command=ffmpeg -re -i "$video" -r $newrate filter:v "setpts=$slowness*PTS" pipe:1 -mkchromecast --video --control --command "$command" diff --git a/.local/bin/tools/castyt b/.local/bin/tools/castyt index c15c550..66eebcd 100755 --- a/.local/bin/tools/castyt +++ b/.local/bin/tools/castyt @@ -1,2 +1,2 @@ #!/bin/sh -mkchromecast --notifications --video --control -y $1 2>/dev/null || true +mkchromecast --video --control -y $1 2>/dev/null || true diff --git a/.local/bin/tools/clip b/.local/bin/tools/clip deleted file mode 100755 index 770cd5f..0000000 --- a/.local/bin/tools/clip +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -xclip -o -selection "clipboard" diff --git a/.local/bin/tools/dl_torrent_and_view.sh b/.local/bin/tools/dl_torrent_and_view.sh deleted file mode 100755 index 9922d5a..0000000 --- a/.local/bin/tools/dl_torrent_and_view.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh -filepath_remote="$(echo "$1" | sed 's/\[/\\[/g; s/\\]/\\]/g')" -filename="${1##*/}" -remote=rezepte.bocken.org -notify-send "Downloading $filename" -download_path="$HOME/dls" -download_file="$download_path/$filename" -rsync -rvPu "root@$remote:$filepath_remote" "$download_file" -clear -rifle "$download_file" || ranger $download_path diff --git a/.local/bin/tools/dmenuhandler b/.local/bin/tools/dmenuhandler index ecdc267..c3393ae 100755 --- a/.local/bin/tools/dmenuhandler +++ b/.local/bin/tools/dmenuhandler @@ -11,14 +11,14 @@ makepathabsolute(){ echo "$dl_location" } -choices="$(printf 'mpv\\ncopy url\\nqueue download\\nrifle file\\nqueue youtube-dl\\nbrowser\\nrip media\\ncast')" +choices="$(printf 'mpv\ncopy url\nqueue download\nrifle file\nqueue youtube-dl\nbrowser\nrip media\ncast')" if echo "$1" | grep -q "4chan"; then - choices="$(printf '%s\\nwatch thread' "$choices")" + choices="$(printf '%s\nwatch thread' "$choices")" fi choice="$(echo "$choices" | dmenu -i -p "Open link with what program?")" case "$choice" in "copy url") echo "$1" | xclip -selection clipboard ;; - mpv) setsid mpv --quiet --ytdl-format='bestvideo[height<=1080]+bestaudio/best[height<=1080]' "$1" & ;; + mpv) setsid mpv --quiet --ytdl-format='bestvideo[height<=1080]+bestaudio/best[height<=1080]' --force-window=yes "$1" & ;; "mpv (loop)") setsid mpv --input-ipc-server=/tmp/mpvsoc$(date +%s) -quiet --loop "$1" >/dev/null 2>&1 & ;; "queue download") name="$( dmenuinput 'Name for file:' )" [ -z "$name" ] && tsp curl -C - -LO "$1" >/dev/null 2>&1 @@ -32,7 +32,7 @@ case "$choice" in #"mpv (float)") setsid mpv --input-ipc-server=/tmp/mpvsoc$(date +%s) --geometry=+0-0 --autofit=30% --title="mpvfloat" "$1" >/dev/null 2>&1 & ;; "rifle file") curl -L "$1" -o "/tmp/riflefile" rifle /tmp/riflefile;; - "watch thread") dest="$(dmenuinput 'name of folder:')" + "watch thread") dest="$(find $HOME -maxdepth 5 -type d -not -path "$HOME/.*" | dmenu -i -p 'name of folder:')" [ -z "$dest" ] && exit echo "dmenuhandler:$dest" mkdir -p "$(makepathabsolute "$dest")" diff --git a/.local/bin/tools/email_handler b/.local/bin/tools/email_handler deleted file mode 100755 index 850a07a..0000000 --- a/.local/bin/tools/email_handler +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh -input=$1 -while read -r str -do - [[ $(grep -c "$str" "$input") == 1 ]] && echo $str -done < "$input" diff --git a/.local/bin/tools/epdf b/.local/bin/tools/epdf deleted file mode 100755 index 7add619..0000000 --- a/.local/bin/tools/epdf +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh -pdf="$(du -a --time ETH/ | awk '!($1="")' | sort -r | grep '\.pdf' | awk '!($1="")' | awk '!($1="")' | sed 's/^ //' | dmenu -l 20 )" -[ -z $pdf ] || $READER "$pdf" diff --git a/.local/bin/tools/ext b/.local/bin/tools/ext deleted file mode 120000 index 14970c2..0000000 --- a/.local/bin/tools/ext +++ /dev/null @@ -1 +0,0 @@ -/home/alex/.local/bin/tools/extract \ No newline at end of file diff --git a/.local/bin/tools/fix_devices b/.local/bin/tools/fix_devices deleted file mode 100644 index 8f76e31..0000000 --- a/.local/bin/tools/fix_devices +++ /dev/null @@ -1,3 +0,0 @@ - -Device 00:00:00:00:3F:F3 TOZO-T10-R -Device 00:00:00:00:3F:F3 TOZO-T10-R diff --git a/.local/bin/tools/getkeys b/.local/bin/tools/getkeys deleted file mode 100755 index 444f4c0..0000000 --- a/.local/bin/tools/getkeys +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh -cat ~/.config/getkeys/"$1" 2>/dev/null && exit -echo "Run command with one of the following arguments for info about that program:" -ls ~/.config/getkeys diff --git a/.local/bin/tools/gomuks_profile b/.local/bin/tools/gomuks_profile new file mode 100755 index 0000000..aea1e92 --- /dev/null +++ b/.local/bin/tools/gomuks_profile @@ -0,0 +1,2 @@ +#!/bin/sh +name=$1 GOMUKS_CACHE_HOME="$XDG_CACHE_HOME/gomuks_$name" GOMUKS_CONFIG_HOME="$XDG_CONFIG_HOME/gomuks_$name" GOMUKS_DATA_HOME="$XDG_DATA_HOME/gomuks_$name" DEBUG_DIR="/tmp/gomuks_$name" GOMUKS_DOWNLOAD_HOME="$HOME" gomuks diff --git a/.local/bin/tools/hover b/.local/bin/tools/hover index 4354328..0d83f79 100755 --- a/.local/bin/tools/hover +++ b/.local/bin/tools/hover @@ -26,7 +26,7 @@ screenheight="$( echo "$dim" | grep -Eo 'x[0-9]{1,5}+' | tr -d 'x+')" newheight=$(( 2 * screenheight / 5 )) newwidth=$(( 2 * screenwidth / 5 )) # fit your borderwidth setup of your WM or windows could bleed over to other display -borderwidth=2 +borderwidth=1 # see https://specifications.freedesktop.org/wm-spec/wm-spec-1.3.html for gravity specs # I do not believe that gravity is being respected in dwm. diff --git a/.local/bin/tools/importvocabs b/.local/bin/tools/importvocabs deleted file mode 100755 index fe5e69a..0000000 --- a/.local/bin/tools/importvocabs +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash -#arg 1: xlsx file -current_dir="$pwd" -cd $HOME/src/GRE/ -find *.xlsx | xargs git rm -find *.csv | xargs git rm -cd "$current_dir" -xlsx2csv -d 'tab' $1 | tail -n +3 > "$HOME/src/GRE/${1%xlsx}csv" -mv $1 $HOME/src/GRE -cd $HOME/src/GRE/ -git add "$1" -git add "${1%xlsx}csv" -cd "$current_dir" diff --git a/.local/bin/tools/mand b/.local/bin/tools/mand deleted file mode 100755 index 3056d80..0000000 --- a/.local/bin/tools/mand +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh -# macho - an interactive man page finder using fzf -# from: https://hiphish.github.io/blog/2020/05/31/macho-man-command-on-steroids/ - -while getopts ":s:" opt; do - case $opt in - s ) SECTION=$OPTARG; shift; shift;; - \?) echo "Invalid option: -$OPTARG" >&2; exit 1;; - : ) echo "Option -$OPTARG requires an argument" >&2; exit 1;; - esac -done - -manual=$(apropos -s ${SECTION:-''} ${@:-.} | \ - grep -v -E '^.+ \(0\)' |\ - awk '{print $2 " " $1}' | \ - sort | \ - dmenu -i -l 20 -p "Manual: " | \ - sed -E 's/^\((.+)\)/\1/') - -echo $manual -[ -z "$manual" ] && exit 0; - -man -T"${FORMAT:-pdf}" $manual | ${READER:-zathura} - diff --git a/.local/bin/tools/nsxiv-rifle b/.local/bin/tools/nsxiv-rifle new file mode 100755 index 0000000..e3fcb29 --- /dev/null +++ b/.local/bin/tools/nsxiv-rifle @@ -0,0 +1,51 @@ +#!/bin/sh + +TMPDIR="${TMPDIR:-/tmp}" +tmp="$TMPDIR/nsxiv_rifle_$$" + +is_img_extension() { + grep -iE '\.(jpe?g|png|gif|svg|webp|tiff|heif|avif|ico|bmp)$' +} + +listfiles() { + find -L "$1" -maxdepth 1 -type f -print | + is_img_extension | sort | tee "$tmp" +} + +open_img() { + file="$1"; shift; + # only go through listfiles() if the file has a valid img extension + if echo "$file" | is_img_extension >/dev/null 2>&1; then + trap 'rm -f $tmp' EXIT + count="$(listfiles "///${file%/*}" | grep -nF "$file")" + fi + if [ -n "$count" ]; then + nsxiv -i -n "${count%%:*}" "$@" -- < "$tmp" + else + # fallback incase file didn't have a valid extension, or we couldn't + # find it inside the list + nsxiv "$@" -- "$file" + fi +} + +uri2path() { + python3 - "$@" <<'___HEREDOC' +from urllib.parse import unquote, urlparse +from sys import argv +for arg in argv[1:]: + print(unquote(urlparse(arg).path)) +___HEREDOC +} + +[ "$1" = '--' ] && shift +case "$1" in + "") echo "Usage: ${0##*/} PICTURES" >&2; exit 1 ;; + /*) open_img "$1" ;; + "~"/*) open_img "$HOME/${1#"~"/}" ;; + file:///*) open_img "$(uri2path "$1")" ;; + trash:///*) + trash_dir="${XDG_DATA_HOME:-$HOME/.local/share}/Trash/files" + open_img "${trash_dir}$(uri2path "$1")" -N "nsxiv_trash" + ;; + *) open_img "$PWD/$1" ;; +esac diff --git a/.local/bin/tools/opout b/.local/bin/tools/opout deleted file mode 100755 index c742aa9..0000000 --- a/.local/bin/tools/opout +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh -# opout: "open output": A general handler for opening a file's intended output. -# I find this useful especially running from vim. - -basename="$(echo "$1" | sed 's/\.[^\/.]*$//')" - -case "$1" in - *.tex|*.md|*.rmd|*.ms|*.me|*.mom) setsid "$READER" "$basename".pdf >/dev/null 2>&1 & ;; - *.html) setsid "$BROWSER" --new-window "$basename".html >/dev/null 2>&1 & ;; - *.sent) setsid sent "$1" >/dev/null 2>&1 & ;; -esac diff --git a/.local/bin/tools/passmenu2 b/.local/bin/tools/passmenu2 index cfcda87..0bffce5 100755 --- a/.local/bin/tools/passmenu2 +++ b/.local/bin/tools/passmenu2 @@ -15,6 +15,7 @@ DONE=0 LEVEL=0 PREVSELECTION="" SELECTION="" +DEFAULT_USER="alexander@bocken.org" while [ "$DONE" -eq 0 ] ; do password_files=( "$STARTDIR"/* ) @@ -48,7 +49,15 @@ while [ "$DONE" -eq 0 ] ; do pass otp show -c "$SELECTION" > $HOME/.cache/passstring else pass show -c "$SELECTION" > $HOME/.cache/passstring - pass show "$SELECTION" | awk 'NR == 2 {print $NF}' | xclip -r -i -selection primary + if [ $? -eq 0 ]; then + var=$(pass show "$SELECTION" | awk 'NR == 2 {print $NF}') + if [ -z $var ]; then + var=$DEFAULT_USER + fi + echo $var | xclip -r -i -selection primary + else + exit 1 + fi fi sed -e "s/^/\"/" -e "s/$/\"/" $HOME/.cache/passstring | xargs -r notify-send "Password" -t 4000 sleep 45 diff --git a/.local/bin/tools/patch_mailsync b/.local/bin/tools/patch_mailsync deleted file mode 100755 index a89aee5..0000000 --- a/.local/bin/tools/patch_mailsync +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -sudo sed -i '/case "$(readlink -f \/sbin\/init)" in/,+2d' $(which mailsync) diff --git a/.local/bin/tools/pauseallmpv b/.local/bin/tools/pauseallmpv deleted file mode 100755 index c5da220..0000000 --- a/.local/bin/tools/pauseallmpv +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh -for i in $(ls /tmp/mpvsoc*); do - echo '{ "command": ["set_property", "pause", true] }' | socat - $i; -done diff --git a/.local/bin/tools/plot b/.local/bin/tools/plot deleted file mode 100755 index ee76a2d..0000000 --- a/.local/bin/tools/plot +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/sh - -if [ $# -eq 1 ]; then - A=0 - B=1 - F="$( echo "$1" | sed -E 's/\"//g' )" -elif [ $# -eq 2 ]; then - A=0 - B="$1" - F="$( echo "$2" | sed -E 's/\"//g' )" - -elif [ $# -eq 3 ]; then - A="$1" - B="$2" - F="$( echo "$3" | sed -E 's/\"//g' )" -else - echo "Please use 1,2 or 3 arguments for plotting" - exit -fi - -python -c "from numpy import * -import matplotlib.pyplot as plt - -def plot(a, b, f): - x = linspace(a, b, 1000) - y = eval(f) - plt.plot(x, y) - plt.show() - -plot($A,$B,\"$F\")" diff --git a/.local/bin/tools/polybox_sync b/.local/bin/tools/polybox_sync deleted file mode 100755 index 67bf948..0000000 --- a/.local/bin/tools/polybox_sync +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -# Required if run as a cronjob: -export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$(id -u)/bus -export PASSWORD_STORE_GPG_OPTS="--homedir=$HOME/.local/share/gnupg" -export PASSWORD_STORE_DIR="$HOME/.local/share/password-store" - -ping 1.1.1.1 -c 1 && owncloudcmd -s -u abocken -p "$(pass ETH/nETHz\ -\ abocken@ethz.ch)" $HOME/eth/polybox https://polybox.ethz.ch diff --git a/.local/bin/tools/print_zine b/.local/bin/tools/print_zine new file mode 100755 index 0000000..86be13d --- /dev/null +++ b/.local/bin/tools/print_zine @@ -0,0 +1,5 @@ +#!/bin/sh +PRINTER="Canon-MF220" +#PRINTER=Virtual_PDF_Printer +a5ona4 "$1" +lpr -P $PRINTER -o media=A4 -o Duplex=DuplexTumble -o sides=two-sided-short-edge -o BindEdge=Bottom -o media=a4 -r "a5ona4_$1" diff --git a/.local/bin/tools/pw b/.local/bin/tools/pw deleted file mode 100755 index b6597dc..0000000 --- a/.local/bin/tools/pw +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/bash -passmenu2 -#group=$(pass list | sed 's/\x1B\[[0-9;]\+[A-Za-z]//g' | grep -Ev "Password|mutt-wizard" | grep -v ' .โ”€โ”€' | sed -E 's/โ”œโ”€โ”€|โ””โ”€โ”€| //' | sed 's/ //' | dmenu -l 20 -p 'choose group:') -# -#if [ -n "$group" ] -#then -# account=$(pass list "$group" | sed 1d | sed -E 's/โ”œโ”€โ”€|โ””โ”€โ”€| //'| sed 's/ //' | dmenu -l 20 -p "choose account from $group:") -# -# if [ -n "$account" ] -# then -# temp="$group/$account" -# echo "$temp" -# pass -c "$temp" > $HOME/.cache/passstring -# sed -e "s/^/\"/" -e "s/$/\"/" $HOME/.cache/passstring | xargs notify-send "Password" -# rm $HOME/.cache/passstring -# sleep 45 -# notify-send "Password" "password cleared from clipboard" -# fi -#fi diff --git a/.local/bin/tools/qndl b/.local/bin/tools/qndl deleted file mode 100755 index a99d37e..0000000 --- a/.local/bin/tools/qndl +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh -# $1 is a url; $2 is a command -[ -z "$1" ] && exit -base="$(basename "$1")" -notify-send "โณ Queuing $base..." -cmd="$2" -[ -z "$cmd" ] && cmd="youtube-dl --add-metadata" -idnum="$(tsp $cmd "$1")" -realname="$(echo "$base" | sed "s/?\(source\|dest\).*//;s/%20/ /g")" -tsp -D "$idnum" mv "$base" "$realname" -tsp -D "$idnum" notify-send "๐Ÿ‘ $realname done." diff --git a/.local/bin/tools/queueandnotify b/.local/bin/tools/queueandnotify deleted file mode 100755 index a1417ec..0000000 --- a/.local/bin/tools/queueandnotify +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh -# Podboat sucks. This script replaces it. -# It reads the newsboat queue, queuing downloads with taskspooler. -# It also removes the junk from extentions. -queuefile="$HOME/.local/share/newsboat/queue" - -while read -r line; do - [ -z "$line" ] && continue - url="$(echo "$line" | awk '{print $1}')" - qndl "$url" "curl -LO" -done < "$queuefile" - -echo > "$queuefile" diff --git a/.local/bin/tools/refbar b/.local/bin/tools/refbar deleted file mode 100755 index b346cf0..0000000 --- a/.local/bin/tools/refbar +++ /dev/null @@ -1,5 +0,0 @@ -#!/usr/bin/env sh - -# Refresh the dwmbar. -# Send SIGTRAP signal to dwmbar script, which will handle it with a trap. -pkill -SIGTRAP dwmbar diff --git a/.local/bin/tools/restart b/.local/bin/tools/restart deleted file mode 100755 index bdcad40..0000000 --- a/.local/bin/tools/restart +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh -pkill $1 -setsid $1 diff --git a/.local/bin/tools/rotdir b/.local/bin/tools/rotdir deleted file mode 100755 index e7103db..0000000 --- a/.local/bin/tools/rotdir +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh -[ -z "$1" ] && echo "usage: rotdir regex 2>&1" && exit 1 -base="$(basename $1)" - ls "$PWD" | awk "BEGIN { lines = \"\"; m = 0; } /^$base$/ { m = 1; } { if (!m) { if (lines) { lines = lines\"\n\"; } lines = lines\"\"\$0; } else { print \$0; } } END { print lines; }" diff --git a/.local/bin/tools/score b/.local/bin/tools/score deleted file mode 100755 index 94c13d5..0000000 --- a/.local/bin/tools/score +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh -categories=$(( $(cat $1 | grep -oE '[0-9]*$' | wc -l ) - 1 )) -grep -oE '[0-9]*$' $1 | head -n $categories | paste -sd+ | bc diff --git a/.local/bin/tools/search b/.local/bin/tools/search deleted file mode 100755 index f0def24..0000000 --- a/.local/bin/tools/search +++ /dev/null @@ -1 +0,0 @@ -find -iname "*$1*" diff --git a/.local/bin/tools/searx b/.local/bin/tools/searx index f624f56..95de16e 100755 --- a/.local/bin/tools/searx +++ b/.local/bin/tools/searx @@ -1,12 +1,10 @@ #!/bin/sh -# Gives a dmenu prompt to search DuckDuckGo. -# Without input, will open DuckDuckGo.com. +# Gives a dmenu prompt to searx +# Without input, will open mainpage. # URLs will be directly handed to the browser. -# Anything else, it search it. -mainpage="https://duckduckgo.com" -searchpage="https://duckduckgo.com/?q=%s" +mainpage="https://bocken.org/searx" +searchpage="https://bocken.org/searx/search?q=%s" browser=${BROWSER:-firefox} - if [ -z "$(xclip -o -selection clipboard)" ]; then choice=$(printf "๐Ÿ”\n" | dmenu -i -p "Searx:") || exit 1 else diff --git a/.local/bin/tools/select_emailrecipient b/.local/bin/tools/select_emailrecipient new file mode 100755 index 0000000..55de420 --- /dev/null +++ b/.local/bin/tools/select_emailrecipient @@ -0,0 +1,3 @@ +#!/bin/sh +abook --config /home/alex/.config/abook/abookrc --datafile /home/alex/.local/share/abook/addressbook --mutt-query "" | + dmenu -l 10 | perl -pe 's/([^\t]*)\t([^\t]*)/\1 <\2>/' diff --git a/.local/bin/tools/shortcuts b/.local/bin/tools/shortcuts deleted file mode 100755 index 1c4f278..0000000 --- a/.local/bin/tools/shortcuts +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/bash -# Output locations. Unactivated progs should go to /dev/null. -shell_shortcuts="$HOME/.config/shortcutrc" -ranger_shortcuts="/dev/null" -qute_shortcuts="/dev/null" -fish_shortcuts="/dev/null" -vifm_shortcuts="$HOME/.config/vifm/vifmshortcuts" - -# Remove, prepare files -rm -f "$ranger_shortcuts" "$qute_shortcuts" 2>/dev/null -printf "# vim: filetype=sh\\n" > "$fish_shortcuts" -printf "# vim: filetype=sh\\nalias " > "$shell_shortcuts" -printf "\" vim: filetype=vim\\n" > "$vifm_shortcuts" - -# Format the `bmdirs` file in the correct syntax and sent it to all three configs. -sed "s/\s*#.*$//;/^\s*$/d" "$HOME/.config/bmdirs" | tee >(awk '{print $1"=\"cd "$2" && ls -a\" \\"}' >> "$shell_shortcuts") \ - >(awk '{print "abbr", $1, "\"cd " $2 "; and ls -a\""}' >> "$fish_shortcuts") \ - >(awk '{print "map g" $1, ":cd", $2 "\nmap t" $1, ":cd", $2 "\nmap M" $1, ":cd", $2 ":mo\nmap Y" $1, ":cd", $2 ":co" }' >> "$vifm_shortcuts") \ - >(awk '{print "config.bind(\";"$1"\", \"set downloads.location.directory "$2" ;; hint links download\")"}' >> "$qute_shortcuts") \ - | awk '{print "map g"$1" cd "$2"\nmap t"$1" tab_new "$2"\nmap m"$1" shell mv -v %s "$2"\nmap Y"$1" shell cp -rv %s "$2}' >> "$ranger_shortcuts" - -# Format the `configs` file in the correct syntax and sent it to both configs. -sed "s/\s*#.*$//;/^\s*$/d" "$HOME/.config/bmfiles" | tee >(awk '{print $1"=\"$EDITOR "$2"\" \\"}' >> "$shell_shortcuts") \ - >(awk '{print "abbr", $1, "\"$EDITOR "$2"\""}' >> "$fish_shortcuts") \ - >(awk '{print "map", $1, ":e", $2 "" }' >> "$vifm_shortcuts") \ - | awk '{print "map "$1" shell $EDITOR "$2}' >> "$ranger_shortcuts" diff --git a/.local/bin/tools/startmpv b/.local/bin/tools/startmpv index e09a155..83632cf 100755 --- a/.local/bin/tools/startmpv +++ b/.local/bin/tools/startmpv @@ -5,7 +5,7 @@ if echo "$1" | grep -qE 'youtube.*list'; then js_playlist_index_loc="$HOME/src/youtube-playlist-video-ids" # The above mentioned script needs Youtube API access, (see the repo for more info on that) # I've saved my API key in my password manager, I reccomend you to do something similar. - API_key="$(pass show 'Misc/Youtube Data API v3' | head -n1 )" + API_key="$(pass show 'dev/Youtube Data API v3' | head -n1 )" index="$(echo "$1" | perl -pe "s|&index=([0-9]+)|\1|")" playlist_id="$( echo "$1" | perl -pe "s|^.*?(\?\|&)list=(.*?)|\2|; s|&index=[0-9]+||" )" notify-send "startmpv" "Searching for all videos in playlist..." diff --git a/.local/bin/tools/startzoom b/.local/bin/tools/startzoom deleted file mode 100755 index 513ee8c..0000000 --- a/.local/bin/tools/startzoom +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -sh /opt/zoom/zoom.sh diff --git a/.local/bin/tools/temp_bt b/.local/bin/tools/temp_bt deleted file mode 100755 index a8e7e20..0000000 --- a/.local/bin/tools/temp_bt +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash -bluetoothctl power on -bluetoothctl scan on diff --git a/.local/bin/tools/toprim b/.local/bin/tools/toprim deleted file mode 100755 index 4bfad47..0000000 --- a/.local/bin/tools/toprim +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -xclip -o -selection "primary" | xclip -i -selection 'clipboard' diff --git a/.local/bin/tools/transadd b/.local/bin/tools/transadd index 762773f..8944844 100755 --- a/.local/bin/tools/transadd +++ b/.local/bin/tools/transadd @@ -6,6 +6,6 @@ host=https://new.bocken.org:443/transmission user=alex -password=$(pass show server/transmission) +password=$(pass show server/seenas/transmission) transmission-remote $host -n $user:$password -a "$@" && notify-send "๐Ÿ”ฝ Torrent added." pkill -RTMIN+12 dwmblocks diff --git a/.local/bin/tools/vifmimg b/.local/bin/tools/vifmimg deleted file mode 100755 index 1569962..0000000 --- a/.local/bin/tools/vifmimg +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/env bash -[ -z "$FIFO_UEBERZUG" ] && exit - -readonly ID_PREVIEW="preview" - -if [ "$1" = "draw" ]; then - declare -p -A cmd=([action]=add [identifier]="$ID_PREVIEW" [x]="$2" [y]="$3" [max_width]="$4" [max_height]="$5" [path]="${PWD}/$6") > "$FIFO_UEBERZUG" -elif [ "$1" = "videopreview" ]; then - [ ! -f "/tmp/$6.png" ] && ffmpegthumbnailer -i "${PWD}/$6" -o "/tmp/$6.png" -s 0 -q 10 && - declare -p -A cmd=([action]=add [identifier]="$ID_PREVIEW" [x]="$2" [y]="$3" [max_width]="$4" [max_height]="$5" [path]="/tmp/$6.png") > "$FIFO_UEBERZUG" -else - declare -p -A cmd=([action]=remove [identifier]="$ID_PREVIEW") > "$FIFO_UEBERZUG" -fi diff --git a/.local/bin/tools/vpnstatus b/.local/bin/tools/vpnstatus index a803e96..8b069f6 100755 --- a/.local/bin/tools/vpnstatus +++ b/.local/bin/tools/vpnstatus @@ -1,5 +1,5 @@ #!/bin/bash -pgrep openconnect > /dev/null && if ping -c 1 -W 1 -q webprint.ethz.ch > /dev/null +pgrep openconnect > /dev/null || if ping -c 1 -W 1 -q webprint.ethz.ch > /dev/null then printf '๐Ÿ”ฌ' fi diff --git a/.local/bin/tools/vu b/.local/bin/tools/vu deleted file mode 100755 index 778835a..0000000 --- a/.local/bin/tools/vu +++ /dev/null @@ -1,15 +0,0 @@ -#!/usr/bin/env sh -export FIFO_UEBERZUG="/tmp/vifm-ueberzug-${PPID}" - -cleanup() { - rm "$FIFO_UEBERZUG" 2>/dev/null - pkill -P $$ 2>/dev/null -} - -rm "$FIFO_UEBERZUG" 2>/dev/null -mkfifo "$FIFO_UEBERZUG" -trap cleanup EXIT -tail --follow "$FIFO_UEBERZUG" | ueberzug layer --silent --parser bash & - -vifm -cleanup diff --git a/.local/bin/tools/watchit b/.local/bin/tools/watchit deleted file mode 100755 index 8a1d895..0000000 --- a/.local/bin/tools/watchit +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/bash -HOME=$(tput cup 0 0) -ED=$(tput ed) -EL=$(tput el) -printf '%s%s' "$HOME" "$ED" - -cleanup(){ - tput cnorm - exit -} -trap cleanup INT - - -tput civis -while true -do - ROWS=$(tput lines) - COLS=$(tput cols) - CMD="$*" - ${SHELL:=sh} -c "$CMD" | head -n $ROWS | while IFS= read LINE; do - printf '%-*.*s%s\n' $COLS $COLS "$LINE" "$EL" - done - printf '%s%s' "$ED" "$HOME" - sleep 0.2 -done -tput cnorm diff --git a/.local/bin/tools/wv b/.local/bin/tools/wv deleted file mode 100755 index e28da97..0000000 --- a/.local/bin/tools/wv +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh -videos="/tmp/videos$$" -du -a ~/vids/* ~/dls/* --time | awk '!($1="")' | sort -bgr -k1 | awk '!($1="")' | awk '!($1="")' | sed 's/^ //' | grep -v "$(find ~/vids/* ~/dls/* -type d | sed 's/$/\$/; s/\[/\\[/g; s/\]/\\]/g')" | sed "s|$HOME|\~|" > $videos -path="$(dmenu -i -l 30 -p "Choose a video to watch:" <"$videos" | sed "s|\~|$HOME|")" -rm "$videos" -if [ -n "$path" ];then - echo "$path" | - while read -r pathfile; do - rifle "$pathfile" & - done -fi diff --git a/.local/bin/torwrap b/.local/bin/torwrap deleted file mode 100755 index 4f94053..0000000 --- a/.local/bin/torwrap +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -ifinstalled tremc-git transmission-cli || exit - -! pidof transmission-daemon >/dev/null && transmission-daemon && notify-send "Starting torrent daemon..." - -$TERMINAL -e tremc; pkill -RTMIN+7 "${STATUSBAR:-dwmblocks}" diff --git a/.local/bin/tutorialvids b/.local/bin/tutorialvids deleted file mode 100755 index 5ca5c50..0000000 --- a/.local/bin/tutorialvids +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh - -vidlist=" -status bar https://www.youtube.com/watch?v=gKumet6b-WY -sxiv (image viewer) https://www.youtube.com/watch?v=GYW9i_u5PYs -st (terminal) https://www.youtube.com/watch?v=9H75enWM22k -i3 (window manager) https://www.youtube.com/watch?v=GKviflL9XeI -pacman (installing/managing programs) https://www.youtube.com/watch?v=-dEuXTMzRKs -mutt (email) https://www.youtube.com/watch?v=2U3vRbF7v5A -ncmpcpp (music player) https://www.youtube.com/watch?v=sZIEdI9TS2U -newsboat (RSS reader) https://www.youtube.com/watch?v=dUFCRqs822w -ranger (file manager) https://www.youtube.com/watch?v=L6Vu7WPkoJo -zathura (pdf viewer) https://www.youtube.com/watch?v=V_Iz4zdyRM4 -gpg keys https://www.youtube.com/watch?v=DMGIlj7u7Eo -calcurse (calendar) https://www.youtube.com/watch?v=hvc-pHjbhdE -urlview https://www.youtube.com/watch?v=IgzpAjFgbCw -colorschemes with pywal https://www.youtube.com/watch?v=Es79N_9BblE -vi mode in shell https://www.youtube.com/watch?v=GqoJQft5R2E -" -echo "$vidlist" | grep -P "^$(echo "$vidlist" | grep "https:" | sed 's/\t.*//g' | dmenu -i -p "Learn about what? (ESC to cancel)" -l 20 | awk '{print $1}')\s" | sed 's/.*\t//' | xargs -r mpv diff --git a/.local/bin/ueberzug b/.local/bin/ueberzug deleted file mode 100755 index 35c201c..0000000 --- a/.local/bin/ueberzug +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/python -# EASY-INSTALL-ENTRY-SCRIPT: 'ueberzug==18.1.5','console_scripts','ueberzug' -__requires__ = 'ueberzug==18.1.5' -import re -import sys -from pkg_resources import load_entry_point - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit( - load_entry_point('ueberzug==18.1.5', 'console_scripts', 'ueberzug')() - ) diff --git a/.local/bin/ueberzug_ b/.local/bin/ueberzug_ deleted file mode 100755 index 35c201c..0000000 --- a/.local/bin/ueberzug_ +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/python -# EASY-INSTALL-ENTRY-SCRIPT: 'ueberzug==18.1.5','console_scripts','ueberzug' -__requires__ = 'ueberzug==18.1.5' -import re -import sys -from pkg_resources import load_entry_point - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit( - load_entry_point('ueberzug==18.1.5', 'console_scripts', 'ueberzug')() - ) diff --git a/.local/bin/unix b/.local/bin/unix deleted file mode 100755 index a9fb96e..0000000 --- a/.local/bin/unix +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh - -#original artwork by http://www.sanderfocus.nl/#/portfolio/tech-heroes -#converted to shell by #nixers @ irc.unix.chat - -cat << 'eof' - ,_ ,_==โ–„โ–‚ - , โ–‚โ–ƒโ–„โ–„โ–…โ–…โ–…โ–‚โ–…ยพ. / / - โ–„โ–†<ยด "ยปโ–“โ–“โ–“%\ / / / / - ,โ–…7" ยด>โ–“โ–“โ–“% / / > / >/% - โ–ยถโ–“ ,ยปโ–“โ–“ยพยด /> %/%// / / - โ–“โ–ƒโ–…โ–…โ–…โ–ƒ,,โ–„โ–…โ–…โ–…ร†\// ///>// />/ / - Vโ•‘ยซยผ.;โ†’ โ•‘<ยซ.,`=// />//%/% / / - //โ• <ยด -ยฒ,)(โ–“~"-โ•/ยพ/ %/>/ /> - / / / โ–% -./โ–„โ–ƒโ–„โ–…โ–, /7//;//% / / - / ////`โ–Œโ– %zWv xXโ–“โ–‡โ–Œ//&;% / / - / / / %//%/ยพยฝยดโ–Œโ–ƒโ–„โ–„โ–„โ–„โ–ƒโ–ƒโ–ยถ\/& / - </ /)VY>7; \_ UNIX IS VERY SIMPLE IT JUST NEEDS A - / /</ //<///<_/%\โ–“ V%W%ยฃ)XY _/%โ€พ\_, GENIUS TO UNDERSTAND ITS SIMPLICITY - / / //%/_,=--^/%/%%\ยพ%ยถ%%} /%%%%%%;\, - %/< /_/ %%%%%;X%%\%%;, _/%%%;, \ - / / %%%%%%;, \%%l%%;// _/%;, dmr - / %%%;, <;\-=-/ / - ;, l -eof diff --git a/.local/bin/unix_ b/.local/bin/unix_ deleted file mode 100755 index 14d7ef0..0000000 --- a/.local/bin/unix_ +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh -#original artwork by http://www.sanderfocus.nl/#/portfolio/tech-heroes -#converted to shell by #nixers @ irc.unix.chat - -cat << 'eof' - ,_ ,_==โ–„โ–‚ - , โ–‚โ–ƒโ–„โ–„โ–…โ–…โ–…โ–‚โ–…ยพ. / / - โ–„โ–†<ยด "ยปโ–“โ–“โ–“%\ / / / / - ,โ–…7" ยด>โ–“โ–“โ–“% / / > / >/% - โ–ยถโ–“ ,ยปโ–“โ–“ยพยด /> %/%// / / - โ–“โ–ƒโ–…โ–…โ–…โ–ƒ,,โ–„โ–…โ–…โ–…ร†\// ///>// />/ / - Vโ•‘ยซยผ.;โ†’ โ•‘<ยซ.,`=// />//%/% / / - //โ• <ยด -ยฒ,)(โ–“~"-โ•/ยพ/ %/>/ /> - / / / โ–% -./โ–„โ–ƒโ–„โ–…โ–, /7//;//% / / - / ////`โ–Œโ– %zWv xXโ–“โ–‡โ–Œ//&;% / / - / / / %//%/ยพยฝยดโ–Œโ–ƒโ–„โ–„โ–„โ–„โ–ƒโ–ƒโ–ยถ\/& / - </ /)VY>7; \_ UNIX IS VERY SIMPLE IT JUST NEEDS A - / /</ //<///<_/%\โ–“ V%W%ยฃ)XY _/%โ€พ\_, GENIUS TO UNDERSTAND ITS SIMPLICITY - / / //%/_,=--^/%/%%\ยพ%ยถ%%} /%%%%%%;\, - %/< /_/ %%%%%;X%%\%%;, _/%%%;, \ - / / %%%%%%;, \%%l%%;// _/%;, dmr - / %%%;, <;\-=-/ / - ;, l -eof \ No newline at end of file diff --git a/.local/bin/unmounter b/.local/bin/unmounter new file mode 100755 index 0000000..7f1dbf5 --- /dev/null +++ b/.local/bin/unmounter @@ -0,0 +1,28 @@ +#!/bin/sh + +# Unmount USB drives or Android phones. Replaces the older `dmenuumount`. Fewer +# prompt and also de-decrypts LUKS drives that are unmounted. + +set -e + +mounteddroids="$(grep simple-mtpfs /etc/mtab | awk '{print "๐Ÿ“ฑ" $2}')" +lsblkoutput="$(lsblk -nrpo "name,type,size,mountpoint")" +mounteddrives="$(echo "$lsblkoutput" | awk '($2=="part"||$2="crypt")&&$4!~/\/boot|\/home$|SWAP/&&length($4)>1{printf "๐Ÿ’พ%s (%s)\n",$4,$3}')" + +allunmountable="$(echo "$mounteddroids +$mounteddrives" | sed "/^$/d;s/ *$//")" +test -n "$allunmountable" + +chosen="$(echo "$allunmountable" | dmenu -i -p "Unmount which drive?")" +chosen="${chosen%% *}" +test -n "$chosen" + +sudo -A umount -l "/${chosen#*/}" +notify-send "Device unmounted." "$chosen has been unmounted." + +# Close the chosen drive if decrypted. +cryptid="$(echo "$lsblkoutput" | grep "/${chosen#*/}$")" +cryptid="${cryptid%% *}" +test -b /dev/mapper/"${cryptid##*/}" +sudo -A cryptsetup close "$cryptid" +notify-send "๐Ÿ”’Device dencryption closed." "Drive is now securely locked again." diff --git a/.local/bin/update_musicbar b/.local/bin/update_musicbar index 6cc0719..82de12e 100755 --- a/.local/bin/update_musicbar +++ b/.local/bin/update_musicbar @@ -1,5 +1,5 @@ #!/bin/sh while true; do mpc idle player > /dev/null - pkill -RTMIN+11 dwmblocks + pkill -RTMIN+8 dwmblocks done diff --git a/.local/bin/vifmimg b/.local/bin/vifmimg deleted file mode 100755 index 8fb8eed..0000000 --- a/.local/bin/vifmimg +++ /dev/null @@ -1,14 +0,0 @@ -#!/usr/bin/env bash - -[ -z "$FIFO_UEBERZUG" ] && exit - -readonly ID_PREVIEW="preview" - -if [ "$1" = "draw" ]; then - declare -p -A cmd=([action]=add [identifier]="$ID_PREVIEW" [x]="$2" [y]="$3" [max_width]="$4" [max_height]="$5" [path]="${PWD}/$6") > "$FIFO_UEBERZUG" -elif [ "$1" = "videopreview" ]; then - [ ! -f "/tmp/$6.png" ] && ffmpegthumbnailer -i "${PWD}/$6" -o "/tmp/$6.png" -s 0 -q 10 && - declare -p -A cmd=([action]=add [identifier]="$ID_PREVIEW" [x]="$2" [y]="$3" [max_width]="$4" [max_height]="$5" [path]="/tmp/$6.png") > "$FIFO_UEBERZUG" -else - declare -p -A cmd=([action]=remove [identifier]="$ID_PREVIEW") > "$FIFO_UEBERZUG" -fi diff --git a/.local/bin/vnc b/.local/bin/vnc deleted file mode 100755 index 84e0af9..0000000 --- a/.local/bin/vnc +++ /dev/null @@ -1,69 +0,0 @@ -#!/bin/bash -# ---------------------------------------------------------------------------- -# "THE BEER-WARE LICENSE" (Revision 42): -# wrote this file. As long as you retain this notice you -# can do whatever you want with this stuff. If we meet some day, and you think -# this stuff is worth it, you can buy me a beer in return. - Bumsik Kim -# ---------------------------------------------------------------------------- - -# Configuration -WIDTH=1920 # 1368 for iPad Pro -HEIGHT=1080 # 1024 for iPad Pro -MODE_NAME="mode_ipad" # Set whatever name you like, you may need to change - # this when you change resolution, or just reboot. -DIS_NAME="VIRTUAL1" # Don't change it unless you know what it is -RANDR_POS="--right-of" # Default position setting for xrandr command - -# Parse arguments -while [ "$#" -gt 0 ]; do - case $1 in - -l|--left) RANDR_POS="--left-of" ;; - -r|--right) RANDR_POS="--right-of" ;; - -a|--above) RANDR_POS="--above" ;; - -b|--below) RANDR_POS="--below" ;; - -p|--portrait) TMP=$WIDTH; WIDTH=$HEIGHT; HEIGHT=$TMP - MODE_NAME="$MODE_NAME""_port" ;; - -h|--hidpi) WIDTH=$(($WIDTH * 2)); HEIGHT=$(($HEIGHT * 2)) - MODE_NAME="$MODE_NAME""_hidpi" ;; - *) echo "'$1' cannot be a monitor position"; exit 1 ;; - esac - shift -done - -# Detect primary display -PRIMARY_DISPLAY=$(xrandr | perl -ne 'print "$1" if /(\w*)\s*connected\s*primary/') - -# Add display mode -RANDR_MODE=$(cvt "$WIDTH" "$HEIGHT" 60 | sed '2s/^.*Modeline\s*\".*\"//;2q;d') -xrandr --addmode $DIS_NAME $MODE_NAME 2>/dev/null -# If the mode doesn't exist then make mode and retry -if ! [ $? -eq 0 ]; then - xrandr --newmode $MODE_NAME $RANDR_MODE - xrandr --addmode $DIS_NAME $MODE_NAME -fi - -# Show display first -xrandr --output $DIS_NAME --mode $MODE_NAME -# Then move display -sleep 5 # A short delay is needed. Otherwise sometimes the below command is ignored. -xrandr --output $DIS_NAME $RANDR_POS $PRIMARY_DISPLAY - -# Cleanup before exit -function finish { - xrandr --output $DIS_NAME --off - xrandr --delmode $DIS_NAME $MODE_NAME - echo "Second monitor disabled." -} - -trap finish EXIT - -# Get the display's position -CLIP_POS=$(xrandr | perl -ne 'print "$1" if /'$DIS_NAME'\s*connected\s*(\d*x\d*\+\d*\+\d*)/') -echo $CLIP_POS -# Share screen -x11vnc -multiptr -repeat -clip $CLIP_POS -# Possible alternative is x0vncserver but it does not show the mouse cursor. -# x0vncserver -display :0 -geometry $DIS_NAME -overlaymode -passwordfile ~/.vnc/passwd -if ! [ $? -eq 0 ]; then - echo x11vnc failed, did you \'apt-get install x11vnc\'? -fi diff --git a/.local/bin/wal b/.local/bin/wal deleted file mode 100755 index 7cd22a8..0000000 --- a/.local/bin/wal +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/python -# EASY-INSTALL-ENTRY-SCRIPT: 'pywal==3.3.0','console_scripts','wal' -__requires__ = 'pywal==3.3.0' -import re -import sys -from pkg_resources import load_entry_point - -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) - sys.exit( - load_entry_point('pywal==3.3.0', 'console_scripts', 'wal')() - ) diff --git a/.local/bin/wheel b/.local/bin/wheel deleted file mode 100755 index 8149efb..0000000 --- a/.local/bin/wheel +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -import re -import sys -from wheel.cli import main -if __name__ == '__main__': - sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) - sys.exit(main()) diff --git a/.local/bin/xlsx2csv b/.local/bin/xlsx2csv deleted file mode 100755 index 4ab987f..0000000 --- a/.local/bin/xlsx2csv +++ /dev/null @@ -1,1137 +0,0 @@ -#!/usr/bin/python -# -# Copyright information -# -# Copyright (C) 2010-2018 Dilshod Temirkhodjaev -# -# License -# -# 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, see . -from __future__ import print_function - -__author__ = "Dilshod Temirkhodjaev " -__license__ = "GPL-2+" -__version__ = "0.7.6" - -import csv, datetime, zipfile, string, sys, os, re, signal -import xml.parsers.expat -from xml.dom import minidom - -try: - # python2.4 - from cStringIO import StringIO -except: - pass -try: - from argparse import ArgumentParser -except: - # python2.4 - from optparse import OptionParser - -# see also ruby-roo lib at: http://github.com/hmcgowan/roo -FORMATS = { - 'general': 'float', - '0': 'float', - '0.00': 'float', - '#,##0': 'float', - '#,##0.00': 'float', - '0%': 'percentage', - '0.00%': 'percentage', - '0.00e+00': 'float', - 'mm-dd-yy': 'date', - 'd-mmm-yy': 'date', - 'd-mmm': 'date', - 'mmm-yy': 'date', - 'h:mm am/pm': 'date', - 'h:mm:ss am/pm': 'date', - 'h:mm': 'time', - 'h:mm:ss': 'time', - 'm/d/yy h:mm': 'date', - '#,##0 ;(#,##0)': 'float', - '#,##0 ;[red](#,##0)': 'float', - '#,##0.00;(#,##0.00)': 'float', - '#,##0.00;[red](#,##0.00)': 'float', - 'mm:ss': 'time', - '[h]:mm:ss': 'time', - 'mmss.0': 'time', - '##0.0e+0': 'float', - '@': 'float', - 'yyyy\\-mm\\-dd': 'date', - 'dd/mm/yy': 'date', - 'hh:mm:ss': 'time', - "dd/mm/yy\\ hh:mm": 'date', - 'dd/mm/yyyy hh:mm:ss': 'date', - 'yy-mm-dd': 'date', - 'd-mmm-yyyy': 'date', - 'm/d/yy': 'date', - 'm/d/yyyy': 'date', - 'dd-mmm-yyyy': 'date', - 'dd/mm/yyyy': 'date', - 'mm/dd/yy h:mm am/pm': 'date', - 'mm/dd/yy hh:mm': 'date', - 'mm/dd/yyyy h:mm am/pm': 'date', - 'mm/dd/yyyy hh:mm:ss': 'date', - 'yyyy-mm-dd hh:mm:ss': 'date', - '#,##0;(#,##0)': 'float', - '_(* #,##0_);_(* (#,##0);_(* "-"??_);_(@_)': 'float', - '_(* #,##0.00_);_(* (#,##0.00);_(* "-"??_);_(@_)': 'float' -} -STANDARD_FORMATS = { - 0: 'general', - 1: '0', - 2: '0.00', - 3: '#,##0', - 4: '#,##0.00', - 9: '0%', - 10: '0.00%', - 11: '0.00e+00', - 12: '# ?/?', - 13: '# ??/??', - 14: 'mm-dd-yy', - 15: 'd-mmm-yy', - 16: 'd-mmm', - 17: 'mmm-yy', - 18: 'h:mm am/pm', - 19: 'h:mm:ss am/pm', - 20: 'h:mm', - 21: 'h:mm:ss', - 22: 'm/d/yy h:mm', - 37: '#,##0 ;(#,##0)', - 38: '#,##0 ;[red](#,##0)', - 39: '#,##0.00;(#,##0.00)', - 40: '#,##0.00;[red](#,##0.00)', - 45: 'mm:ss', - 46: '[h]:mm:ss', - 47: 'mmss.0', - 48: '##0.0e+0', - 49: '@', -} -CONTENT_TYPES = { - 'shared_strings', - 'styles', - 'workbook', - 'worksheet', - 'relationships', -} - -DEFAULT_APP_PATH = "/xl" -DEFAULT_WORKBOOK_PATH = DEFAULT_APP_PATH + "/workbook.xml" - - -class XlsxException(Exception): - pass - - -class InvalidXlsxFileException(XlsxException): - pass - - -class SheetNotFoundException(XlsxException): - pass - - -class OutFileAlreadyExistsException(XlsxException): - pass - - -class Xlsx2csv: - """ - Usage: Xlsx2csv("test.xslx", **params).convert("test.csv", sheetid=1) - Input: - xlsxfile - path to file or filehandle - options: - sheetid - sheet no to convert (0 for all sheets) - dateformat - override date/time format - timeformat - override time format - floatformat - override float format - quoting - if and how to quote - delimiter - csv columns delimiter symbol - sheetdelimiter - sheets delimiter used when processing all sheets - skip_empty_lines - skip empty lines - skip_trailing_columns - skip trailing columns - hyperlinks - include hyperlinks - include_sheet_pattern - only include sheets named matching given pattern - exclude_sheet_pattern - exclude sheets named matching given pattern - """ - - def __init__(self, xlsxfile, **options): - options.setdefault("delimiter", ",") - options.setdefault("quoting", csv.QUOTE_MINIMAL) - options.setdefault("sheetdelimiter", "--------") - options.setdefault("dateformat", None) - options.setdefault("timeformat", None) - options.setdefault("floatformat", None) - options.setdefault("scifloat", False) - options.setdefault("skip_empty_lines", False) - options.setdefault("skip_trailing_columns", False) - options.setdefault("escape_strings", False) - options.setdefault("hyperlinks", False) - options.setdefault("include_sheet_pattern", ["^.*$"]) - options.setdefault("exclude_sheet_pattern", []) - options.setdefault("merge_cells", False) - options.setdefault("ignore_formats", ['']) - options.setdefault("lineterminator", "\n") - - self.options = options - try: - self.ziphandle = zipfile.ZipFile(xlsxfile) - except (zipfile.BadZipfile, IOError): - raise InvalidXlsxFileException("Invalid xlsx file: " + str(xlsxfile)) - - self.py3 = sys.version_info[0] == 3 - - self.content_types = self._parse(ContentTypes, "/[Content_Types].xml") - self.shared_strings = self._parse(SharedStrings, self.content_types.types["shared_strings"]) - self.styles = self._parse(Styles, self.content_types.types["styles"]) - self.workbook = self._parse(Workbook, self.content_types.types["workbook"]) - workbook_relationships = list(filter(lambda r: "book" in r, self.content_types.types["relationships"]))[0] - self.workbook.relationships = self._parse(Relationships, workbook_relationships) - if self.options['escape_strings']: - self.shared_strings.escape_strings() - - def __del__(self): - # make sure to close zip file, ziphandler does have a close() method - self.ziphandle.close() - - def getSheetIdByName(self, name): - for s in self.workbook.sheets: - if s['name'] == name: - return s['index'] - return None - - def convert(self, outfile, sheetid=1): - """outfile - path to file or filehandle""" - if sheetid > 0: - self._convert(sheetid, outfile) - else: - if isinstance(outfile, str): - if not os.path.exists(outfile): - os.makedirs(outfile) - elif os.path.isfile(outfile): - raise OutFileAlreadyExistsException("File " + str(outfile) + " already exists!") - for s in self.workbook.sheets: - sheetname = s['name'] - - # filter sheets by include pattern - include_sheet_pattern = self.options['include_sheet_pattern'] - if type(include_sheet_pattern) == type(""): # optparser lib fix - include_sheet_pattern = [include_sheet_pattern] - if len(include_sheet_pattern) > 0: - include = False - for pattern in include_sheet_pattern: - include = pattern and len(pattern) > 0 and re.match(pattern, sheetname) - if include: - break - if not include: - continue - - # filter sheets by exclude pattern - exclude_sheet_pattern = self.options['exclude_sheet_pattern'] - if type(exclude_sheet_pattern) == type(""): # optparser lib fix - exclude_sheet_pattern = [exclude_sheet_pattern] - exclude = False - for pattern in exclude_sheet_pattern: - exclude = pattern and len(pattern) > 0 and re.match(pattern, sheetname) - if exclude: - break - if exclude: - continue - - if not self.py3: - sheetname = sheetname.encode('utf-8') - of = outfile - if isinstance(outfile, str): - of = os.path.join(outfile, sheetname + '.csv') - elif self.options['sheetdelimiter'] and len(self.options['sheetdelimiter']): - of.write(self.options['sheetdelimiter'] + " " + str(s['index']) + " - " + sheetname + self.options['lineterminator']) - self._convert(s['index'], of) - - def _convert(self, sheet_index, outfile): - closefile = False - if isinstance(outfile, str): - if sys.version_info[0] == 2: - outfile = open(outfile, 'wb+') - elif sys.version_info[0] == 3: - outfile = open(outfile, 'w+', encoding=self.options['outputencoding'], newline="") - else: - sys.stderr.write("error: version of your python is not supported: " + str(sys.version_info) + "\n") - sys.exit(1) - closefile = True - try: - writer = csv.writer(outfile, quoting=self.options['quoting'], delimiter=self.options['delimiter'], - lineterminator=self.options['lineterminator']) - - sheets_filtered = list(filter(lambda s: s['index'] == sheet_index, self.workbook.sheets)) - if len(sheets_filtered) == 0: - eprint("Sheet with index %i not found or can't be handled" % sheet_index) - return 1 - - sheet_path = None - # using sheet relation information - if 'relation_id' in sheets_filtered[0] and sheets_filtered[0]['relation_id'] is not None: - - relation_id = sheets_filtered[0]['relation_id'] - if relation_id in self.workbook.relationships.relationships and \ - 'target' in self.workbook.relationships.relationships[relation_id]: - relationship = self.workbook.relationships.relationships[relation_id] - sheet_path = "/xl/" + relationship['target'] - - if sheet_path is None: - sheet_path = "/xl/worksheets/sheet%i.xml" % sheet_index - if sheet_path is None: - sheet_path = "/xl/worksheets/worksheet%i.xml" % sheet_index - if sheet_path is None and sheet_index == 1: - sheet_path = self.content_types.types["worksheet"] - if sheet_path is None: - raise SheetNotFoundException("Sheet %i not found" % sheet_index) - sheet_file = self._filehandle(sheet_path) - sheet = Sheet(self.workbook, self.shared_strings, self.styles, sheet_file) - try: - relationships_path = os.path.join(os.path.dirname(sheet_path), - "_rels", - os.path.basename(sheet_path) + ".rels") - sheet.relationships = self._parse(Relationships, relationships_path) - sheet.set_dateformat(self.options['dateformat']) - sheet.set_timeformat(self.options['timeformat']) - sheet.set_floatformat(self.options['floatformat']) - sheet.set_skip_empty_lines(self.options['skip_empty_lines']) - sheet.set_skip_trailing_columns(self.options['skip_trailing_columns']) - sheet.set_include_hyperlinks(self.options['hyperlinks']) - sheet.set_merge_cells(self.options['merge_cells']) - sheet.set_scifloat(self.options['scifloat']) - sheet.set_ignore_formats(self.options['ignore_formats']) - if self.options['escape_strings'] and sheet.filedata: - sheet.filedata = re.sub(r"([^<>]+) ([^<>]+)", r"\1\\n\2", - re.sub(r"([^<>]+) ([^<>]+)", r"\1\\t\2", - re.sub(r"([^<>]+) ([^<>]+)", r"\1\\r\2", sheet.filedata))) - sheet.to_csv(writer) - finally: - sheet_file.close() - sheet.close() - finally: - if closefile: - outfile.close() - - def _filehandle(self, filename): - for name in filter(lambda f: filename and f.lower() == filename.lower()[1:], self.ziphandle.namelist()): - # python2.4 fix - if not hasattr(self.ziphandle, "open"): - return StringIO(self.ziphandle.read(name)) - return self.ziphandle.open(name, "r") - return None - - def _parse(self, klass, filename): - instance = klass() - filehandle = self._filehandle(filename) - if filehandle: - instance.parse(filehandle) - filehandle.close() - return instance - - -class Workbook: - def __init__(self): - self.sheets = list() - self.date1904 = False - - def parse(self, filehandle): - workbookDoc = minidom.parseString(filehandle.read()) - if workbookDoc.firstChild.namespaceURI: - fileVersion = workbookDoc.firstChild.getElementsByTagNameNS(workbookDoc.firstChild.namespaceURI, - "fileVersion") - else: - fileVersion = workbookDoc.firstChild.getElementsByTagName("fileVersion") - if len(fileVersion) == 0: - self.appName = DEFAULT_APP_PATH - else: - try: - if workbookDoc.firstChild.namespaceURI: - self.appName = \ - workbookDoc.firstChild.getElementsByTagNameNS( - workbookDoc.firstChild.namespaceURI, "fileVersion")[0]._attrs['appName'].value - else: - self.appName = workbookDoc.firstChild.getElementsByTagName("fileVersion")[0]._attrs['appName'].value - except KeyError: - # no app name - self.appName = DEFAULT_APP_PATH - try: - if workbookDoc.firstChild.namespaceURI: - self.date1904 = \ - workbookDoc.firstChild.getElementsByTagNameNS( - workbookDoc.firstChild.namespaceURI, "workbookPr")[0]._attrs['date1904'].value.lower().strip() \ - != "false" - else: - self.date1904 = \ - workbookDoc.firstChild.getElementsByTagName("workbookPr")[0] \ - ._attrs['date1904'].value.lower().strip() \ - != "false" - except: - pass - - if workbookDoc.firstChild.namespaceURI: - sheets = workbookDoc.firstChild.getElementsByTagNameNS(workbookDoc.firstChild.namespaceURI, "sheets")[0] - else: - sheets = workbookDoc.firstChild.getElementsByTagName("sheets")[0] - if workbookDoc.firstChild.namespaceURI: - sheetNodes = sheets.getElementsByTagNameNS(workbookDoc.firstChild.namespaceURI, "sheet") - else: - sheetNodes = sheets.getElementsByTagName("sheet") - for i, sheetNode in enumerate(sheetNodes): - attrs = sheetNode._attrs - name = attrs["name"].value - relation_id = None - if 'r:id' in attrs: - relation_id = attrs['r:id'].value - self.sheets.append({'name': name, 'relation_id': relation_id, 'index': i + 1, 'id': i + 1}) # remove id starting 0.8.0 version - - -class ContentTypes: - def __init__(self): - self.types = {} - for type in CONTENT_TYPES: - self.types[type] = None - - def parse(self, filehandle): - types = minidom.parseString(filehandle.read()).firstChild - if not types: - return - if types.namespaceURI: - overrideNodes = types.getElementsByTagNameNS(types.namespaceURI, "Override") - else: - overrideNodes = types.getElementsByTagName("Override") - for override in overrideNodes: - attrs = override._attrs - type = attrs.get('ContentType').value - name = attrs.get('PartName').value - if type == "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml": - self.types["workbook"] = name - elif type == "application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml": - self.types["styles"] = name - elif type == "application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml": - # BUG preserved only last sheet - self.types["worksheet"] = name - elif type == "application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml": - self.types["shared_strings"] = name - elif type == "application/vnd.openxmlformats-package.relationships+xml": - if self.types["relationships"] is None: - self.types["relationships"] = list() - self.types["relationships"].append(name) - - if self.types["workbook"] is None: - self.types["workbook"] = DEFAULT_WORKBOOK_PATH - if self.types["relationships"] is None: - self.types["relationships"] = [os.path.dirname(self.types["workbook"]) + "/_rels/" + \ - os.path.basename(self.types["workbook"]) + ".rels"] - - -class Relationships: - def __init__(self): - self.relationships = {} - - def parse(self, filehandle): - doc = minidom.parseString(filehandle.read()) - if doc.namespaceURI: - relationships = doc.getElementsByTagNameNS(doc.namespaceURI, "Relationships") - else: - relationships = doc.getElementsByTagName("Relationships") - if not relationships: - return - if doc.namespaceURI: - relationshipNodes = relationships[0].getElementsByTagNameNS(doc.namespaceURI, "Relationship") - else: - relationshipNodes = relationships[0].getElementsByTagName("Relationship") - for rel in relationshipNodes: - attrs = rel._attrs - rId = attrs.get('Id') - if rId: - vtype = attrs.get('Type') - target = attrs.get('Target') - self.relationships[str(rId.value)] = { - "type": vtype and str(vtype.value) or None, - "target": target and str(target.value) or None - } - - -class Styles: - def __init__(self): - self.numFmts = {} - self.cellXfs = [] - - def parse(self, filehandle): - styles = minidom.parseString(filehandle.read()).firstChild - # numFmts - if styles.namespaceURI: - numFmtsElement = styles.getElementsByTagNameNS(styles.namespaceURI, "numFmts") - else: - numFmtsElement = styles.getElementsByTagName("numFmts") - if len(numFmtsElement) == 1: - for numFmt in numFmtsElement[0].childNodes: - if numFmt.nodeType == minidom.Node.ELEMENT_NODE: - numFmtId = int(numFmt._attrs['numFmtId'].value) - formatCode = numFmt._attrs['formatCode'].value.lower().replace('\\', '') - self.numFmts[numFmtId] = formatCode - - if styles.namespaceURI: - cellXfsElement = styles.getElementsByTagNameNS(styles.namespaceURI, "cellXfs") - else: - cellXfsElement = styles.getElementsByTagName("cellXfs") - if len(cellXfsElement) == 1: - for cellXfs in cellXfsElement[0].childNodes: - if cellXfs.nodeType != minidom.Node.ELEMENT_NODE or not ( - cellXfs.nodeName == "xf" or cellXfs.nodeName.endswith(":xf")): - continue - if cellXfs._attrs and 'numFmtId' in cellXfs._attrs: - numFmtId = int(cellXfs._attrs['numFmtId'].value) - if self.chk_exists(numFmtId) == None: - numFmtId = int(cellXfs._attrs['applyNumberFormat'].value) - self.cellXfs.append(numFmtId) - else: - self.cellXfs.append(None) - - # When Unknown Numformat ID assign applyNumberFormat - def chk_exists(self, numFmtId): - xfs_numfmt = numFmtId - format_str = None - if xfs_numfmt in self.numFmts: - format_str = self.numFmts[xfs_numfmt] - elif xfs_numfmt in STANDARD_FORMATS: - format_str = STANDARD_FORMATS[xfs_numfmt] - return format_str - - -class SharedStrings: - def __init__(self): - self.parser = None - self.strings = [] - self.si = False - self.t = False - self.rPh = False - self.value = "" - - def parse(self, filehandle): - self.parser = xml.parsers.expat.ParserCreate() - self.parser.CharacterDataHandler = self.handleCharData - self.parser.StartElementHandler = self.handleStartElement - self.parser.EndElementHandler = self.handleEndElement - self.parser.ParseFile(filehandle) - - def escape_strings(self): - for i in range(0, len(self.strings)): - self.strings[i] = self.strings[i].replace("\r", "\\r").replace("\n", "\\n").replace("\t", "\\t") - - def handleCharData(self, data): - if self.t: - self.value += data - - def handleStartElement(self, name, attrs): - # ignore namespace - i = name.find(":") - if i >= 0: - name = name[i + 1:] - - if name == 'si': - self.si = True - self.value = "" - elif name == 't' and self.rPh: - self.t = False - elif name == 't' and self.si: - self.t = True - elif name == 'rPh': - self.rPh = True - - def handleEndElement(self, name): - # ignore namespace - i = name.find(":") - if i >= 0: - name = name[i + 1:] - - if name == 'si': - self.si = False - self.strings.append(self.value) - elif name == 't': - self.t = False - elif name == 'rPh': - self.rPh = False - - -class Sheet: - def __init__(self, workbook, sharedString, styles, filehandle): - self.py3 = sys.version_info[0] == 3 - self.parser = None - self.writer = None - self.sharedString = None - self.styles = None - self.relationships = None - self.columns_count = -1 - - self.in_sheet = False - self.in_row = False - self.in_cell = False - self.in_cell_value = False - - self.columns = {} - self.lastRowNum = 0 - self.rowNum = None - self.colType = None - self.cellId = None - self.s_attr = None - self.data = None - self.max_columns = -1 - - self.dateformat = None - self.timeformat = "%H:%M" # default time format - self.floatformat = None - self.skip_empty_lines = False - self.skip_trailing_columns = False - - self.filedata = None - self.filehandle = filehandle - self.workbook = workbook - self.sharedStrings = sharedString.strings - self.styles = styles - - self.hyperlinks = {} - self.mergeCells = {} - self.ignore_formats = [] - - self.colIndex = 0 - self.colNum = "" - - def close(self): - # Make sure Worksheet is closed, parsers lib does not have a close() function, so simply delete it - self.parser = None - - def set_dateformat(self, dateformat): - self.dateformat = dateformat - - def set_timeformat(self, timeformat): - if timeformat: - self.timeformat = timeformat - - def set_floatformat(self, floatformat): - self.floatformat = floatformat - - def set_skip_empty_lines(self, skip): - self.skip_empty_lines = skip - - def set_skip_trailing_columns(self, skip): - self.skip_trailing_columns = skip - - def set_ignore_formats(self, ignore_formats): - self.ignore_formats = ignore_formats - - def set_merge_cells(self, mergecells): - if not mergecells: - return - if not self.filedata: - self.filedata = self.filehandle.read() - data = str(self.filedata) # python3: convert byte buffer to string - - # find worksheet tag, we need namespaces from it - start = data.find("", start) - worksheet = data[start: end + 1] - - # find hyperlinks part - start = data.find("") - data = data[start: end + 13] - - # parse hyperlinks - doc = minidom.parseString(worksheet + data + "").firstChild - - if doc.namespaceURI: - mergeCells = doc.getElementsByTagNameNS(doc.namespaceURI, "mergeCell") - else: - mergeCells = doc.getElementsByTagName("mergeCell") - for mergeCell in mergeCells: - attrs = mergeCell._attrs - if 'ref' in attrs.keys(): - rangeStr = attrs['ref'].value - rng = rangeStr.split(":") - if len(rng) > 1: - for cell in self._range(rangeStr): - self.mergeCells[cell] = {} - self.mergeCells[cell]['copyFrom'] = rng[0] - - def set_scifloat(self, scifloat): - self.scifloat = scifloat - - def set_include_hyperlinks(self, hyperlinks): - if not hyperlinks or not self.relationships or not self.relationships.relationships: - return - # we must read file first to get hyperlinks, but we don't wont to parse whole file - if not self.filedata: - self.filedata = self.filehandle.read() - data = str(self.filedata) # python3: convert byte buffer to string - - # find worksheet tag, we need namespaces from it - start = data.find("", start) - worksheet = data[start: end + 1] - - # find hyperlinks part - start = data.find("") - if start < 0: - # hyperlinks not found - return - end = data.find("") - data = data[start: end + 13] - - # parse hyperlinks - doc = minidom.parseString(worksheet + data + "").firstChild - if doc.namespaceURI: - hiperlinkNodes = doc.getElementsByTagNameNS(doc.namespaceURI, "hyperlink") - else: - hiperlinkNodes = doc.getElementsByTagName("hyperlink") - for hlink in hiperlinkNodes: - attrs = hlink._attrs - ref = rId = None - for k in attrs.keys(): - if k == "ref": - ref = str(attrs[k].value) - if k.endswith(":id"): - rId = str(attrs[k].value) - if not ref or not rId: - continue - rel = self.relationships.relationships.get(rId) - if not rel: - continue - target = rel.get('target') - for cell in self._range(ref): - self.hyperlinks[cell] = target - - def to_csv(self, writer): - self.writer = writer - self.parser = xml.parsers.expat.ParserCreate() - self.parser.buffer_text = True - self.parser.CharacterDataHandler = self.handleCharData - self.parser.StartElementHandler = self.handleStartElement - self.parser.EndElementHandler = self.handleEndElement - if self.filedata: - self.parser.Parse(self.filedata) - else: - self.parser.ParseFile(self.filehandle) - - def handleCharData(self, data): - if self.in_cell_value: - self.collected_string += data - self.data = self.collected_string - if self.colType == "s": # shared string - self.data = self.sharedStrings[int(self.data)] - elif self.colType == "b": # boolean - self.data = (int(data) == 1 and "TRUE") or (int(data) == 0 and "FALSE") or data - elif self.colType == "str" or self.colType == "inlineStr": - self.data = data - elif self.s_attr: - s = int(self.s_attr) - - # get cell format - format_str = "general" - xfs_numfmt = self.styles.cellXfs[s] - if xfs_numfmt in self.styles.numFmts: - format_str = self.styles.numFmts[xfs_numfmt] - elif xfs_numfmt in STANDARD_FORMATS: - format_str = STANDARD_FORMATS[xfs_numfmt] - - # get format type - if not format_str: - eprint("unknown format %s at %d" % (format_str, xfs_numfmt)) - return - - format_type = None - if format_str in FORMATS: - format_type = FORMATS[format_str] - elif re.match("^\d+(\.\d+)?$", self.data) and re.match(".*[hsmdyY]", format_str) and not re.match( - '.*\[.*[dmhys].*\]', format_str): - # it must be date format - if float(self.data) < 1: - format_type = "time" - else: - format_type = "date" - elif re.match("^-?\d+(.\d+)?$", self.data) or ( - self.scifloat and re.match("^-?\d+(.\d+)?([eE]-?\d+)?$", self.data)): - format_type = "float" - if format_type == 'date' and self.dateformat == 'float': - format_type = "float" - if format_type and not format_type in self.ignore_formats: - try: - if format_type == 'date': # date/time - if self.workbook.date1904: - date = datetime.datetime(1904, 1, 1) + datetime.timedelta(float(self.data)) - else: - date = datetime.datetime(1899, 12, 30) + datetime.timedelta(float(self.data)) - if self.dateformat: - # str(dateformat) - python2.5 bug, see: http://bugs.python.org/issue2782 - self.data = date.strftime(str(self.dateformat)) - else: - # ignore ";@", don't know what does it mean right now - # ignore "[$-409], [$-f409], [$-16001]" and similar format codes - dateformat = re.sub(r"\[\$\-[A-z0-9]*\]", "", format_str, 1) \ - .replace(";@", "").replace("yyyy", "%Y").replace("yy", "%y") \ - .replace("hh:mm", "%H:%M").replace("h", "%I").replace("%H%H", "%H") \ - .replace("ss", "%S").replace("dddd", "d").replace("dd", "d").replace("d", "%d") \ - .replace("am/pm", "%p").replace("mmmm", "%B").replace("mmm", "%b") \ - .replace(":mm", ":%M").replace("m", "%m").replace("%m%m", "%m") - self.data = date.strftime(str(dateformat)).strip() - elif format_type == 'time': # time - t = int(round((float(self.data) % 1) * 24 * 60 * 60, 6)) # it should be in seconds - d = datetime.time(int((t // 3600) % 24), int((t // 60) % 60), int(t % 60)) - self.data = d.strftime(self.timeformat) - elif format_type == 'float' and ('E' in self.data or 'e' in self.data): - self.data = str(self.floatformat or '%f') % float(self.data) - # if cell is general, be aggressive about stripping any trailing 0s, decimal points, etc. - elif format_type == 'float' and format_str == 'general': - self.data = ("%f" % (float(self.data))).rstrip('0').rstrip('.') - elif format_type == 'float' and format_str[0:3] == '0.0': - if self.floatformat: - self.data = str(self.floatformat) % float(self.data) - else: - L = len(format_str.split(".")[1]) - if '%' in format_str: - L += 1 - self.data = ("%." + str(L) + "f") % float(self.data) - elif format_type == 'float': - # unsupported float formatting - self.data = ("%f" % (float(self.data))).rstrip('0').rstrip('.') - - except (ValueError, OverflowError): # this catch must be removed, it's hiding potential problems - eprint("Error: potential invalid date format.") - # invalid date format - pass - - def handleStartElement(self, name, attrs): - has_namespace = name.find(":") > 0 - if self.in_row and (name == 'c' or (has_namespace and name.endswith(':c'))): - self.colType = attrs.get("t") - self.s_attr = attrs.get("s") - self.cellId = attrs.get("r") - if self.cellId: - self.colNum = self.cellId[:len(self.cellId) - len(self.rowNum)] - self.colIndex = 0 - else: - self.colIndex += 1 - self.data = "" - self.in_cell = True - elif self.in_cell and ( - (name == 'v' or name == 'is') or (has_namespace and (name.endswith(':v') or name.endswith(':is')))): - self.in_cell_value = True - self.collected_string = "" - elif self.in_sheet and (name == 'row' or (has_namespace and name.endswith(':row'))) and ('r' in attrs): - self.rowNum = attrs['r'] - self.in_row = True - self.colIndex = 0 - self.colNum = "" - self.columns = {} - self.spans = None - if 'spans' in attrs: - self.spans = [int(i) for i in attrs['spans'].split(" ")[-1].split(":")] - elif name == 't': - # reset collected string - self.collected_string = "" - - elif name == 'sheetData' or (has_namespace and name.endswith(':sheetData')): - self.in_sheet = True - elif name == 'dimension': - rng = attrs.get("ref").split(":") - if len(rng) > 1: - start = re.match("^([A-Z]+)(\d+)$", rng[0]) - if (start): - end = re.match("^([A-Z]+)(\d+)$", rng[1]) - startCol = start.group(1) - endCol = end.group(1) - self.columns_count = 0 - for cell in self._range(startCol + "1:" + endCol + "1"): - self.columns_count += 1 - - def handleEndElement(self, name): - has_namespace = name.find(":") > 0 - if self.in_cell and ((name == 'v' or name == 'is' or name == 't') or ( - has_namespace and (name.endswith(':v') or name.endswith(':is')))): - self.in_cell_value = False - elif self.in_cell and (name == 'c' or (has_namespace and name.endswith(':c'))): - t = 0 - for i in self.colNum: t = t * 26 + ord(i) - 64 - d = self.data - if self.hyperlinks: - hyperlink = self.hyperlinks.get(self.cellId) - if hyperlink: - d = "" + d + "" - if self.colNum + self.rowNum in self.mergeCells.keys(): - if 'copyFrom' in self.mergeCells[self.colNum + self.rowNum].keys() and \ - self.mergeCells[self.colNum + self.rowNum]['copyFrom'] == self.colNum + self.rowNum: - self.mergeCells[self.colNum + self.rowNum]['value'] = d - else: - d = self.mergeCells[self.mergeCells[self.colNum + self.rowNum]['copyFrom']]['value'] - - self.columns[t - 1 + self.colIndex] = d - - if self.in_row and (name == 'row' or (has_namespace and name.endswith(':row'))): - if len(self.columns.keys()) > 0: - d = [""] * (max(self.columns.keys()) + 1) - for k in self.columns.keys(): - val = self.columns[k] - if not self.py3: - val = val.encode("utf-8") - d[k] = val - if self.spans: - l = self.spans[1] - if len(d) < l: - d += (l - len(d)) * [''] - - # write empty lines - if not self.skip_empty_lines: - for i in range(self.lastRowNum, int(self.rowNum) - 1): - self.writer.writerow([]) - self.lastRowNum = int(self.rowNum) - - # write line to csv - if not self.skip_empty_lines or d.count('') != len(d): - while len(d) < self.columns_count: - d.append("") - - if self.skip_trailing_columns: - if self.max_columns < 0: - self.max_columns = len(d) - while len(d) > 0 and d[-1] == "": - d = d[0:-1] - self.max_columns = self.max_columns - 1 - elif self.max_columns > 0: - d = d[0:self.max_columns] - self.writer.writerow(d) - - self.in_row = False - elif self.in_sheet and (name == 'sheetData' or (has_namespace and name.endswith(':sheetData'))): - self.in_sheet = False - - # rangeStr: "A3:C12" or "D5" - # example: for cell in _range("A1:Z12"): print cell - def _range(self, rangeStr): - rng = rangeStr.split(":") - if len(rng) == 1: - yield rangeStr - else: - start = re.match("^([A-Z]+)(\d+)$", rng[0]) - end = re.match("^([A-Z]+)(\d+)$", rng[1]) - if not start or not end: - return - startCol = start.group(1) - startRow = int(start.group(2)) - endCol = end.group(1) - endRow = int(end.group(2)) - col = startCol - while True: - for row in range(startRow, endRow + 1): - yield col + str(row) - if col == endCol: - break - t = 0 - for i in col: t = t * 26 + ord(i) - 64 - col = "" - while t >= 0: - col = chr(t % 26 + 65) + col - t = t // 26 - 1 - - -def convert_recursive(path, sheetid, outfile, kwargs): - for name in os.listdir(path): - fullpath = os.path.join(path, name) - if os.path.isdir(fullpath): - convert_recursive(fullpath, sheetid, outfile, kwargs) - else: - outfilepath = outfile - if len(outfilepath) == 0 and fullpath.lower().endswith(".xlsx"): - outfilepath = fullpath[:-4] + 'csv' - - print("Converting %s to %s" % (fullpath, outfilepath)) - try: - Xlsx2csv(fullpath, **kwargs).convert(outfilepath, sheetid) - except zipfile.BadZipfile: - print("File %s is not a zip file" % fullpath) - - -if __name__ == "__main__": - try: - signal.signal(signal.SIGPIPE, signal.SIG_DFL) - signal.signal(signal.SIGINT, signal.SIG_DFL) - except AttributeError: - pass - - if "ArgumentParser" in globals(): - parser = ArgumentParser(description="xlsx to csv converter") - parser.add_argument('infile', metavar='xlsxfile', help="xlsx file path") - parser.add_argument('outfile', metavar='outfile', nargs='?', help="output csv file path") - parser.add_argument('-v', '--version', action='version', version=__version__) - nargs_plus = "+" - argparser = True - else: - parser = OptionParser(usage="%prog [options] infile [outfile]", version=__version__) - parser.add_argument = parser.add_option - nargs_plus = 1 - argparser = False - - if sys.version_info[0] == 2 and sys.version_info[1] < 5: - inttype = "int" - else: - inttype = int - parser.add_argument("-a", "--all", dest="all", default=False, action="store_true", - help="export all sheets") - parser.add_argument("-c", "--outputencoding", dest="outputencoding", default="utf-8", action="store", - help="encoding of output csv ** Python 3 only ** (default: utf-8)") - parser.add_argument("-d", "--delimiter", dest="delimiter", default=",", - help="delimiter - columns delimiter in csv, 'tab' or 'x09' for a tab (default: comma ',')") - parser.add_argument("--hyperlinks", "--hyperlinks", dest="hyperlinks", action="store_true", default=False, - help="include hyperlinks") - parser.add_argument("-e", "--escape", dest='escape_strings', default=False, action="store_true", - help="Escape \\r\\n\\t characters") - parser.add_argument("-E", "--exclude_sheet_pattern", nargs=nargs_plus, dest="exclude_sheet_pattern", default="", - help="exclude sheets named matching given pattern, only effects when -a option is enabled.") - parser.add_argument("-f", "--dateformat", dest="dateformat", - help="override date/time format (ex. %%Y/%%m/%%d)") - parser.add_argument("-t", "--timeformat", dest="timeformat", - help="override time format (ex. %%H/%%M/%%S)") - parser.add_argument("--floatformat", dest="floatformat", - help="override float format (ex. %%.15f)") - parser.add_argument("--sci-float", dest="scifloat", default=False, action="store_true", - help="force scientific notation to float") - parser.add_argument("-I", "--include_sheet_pattern", nargs=nargs_plus, dest="include_sheet_pattern", default="^.*$", - help="only include sheets named matching given pattern, only effects when -a option is enabled.") - parser.add_argument("--ignore-formats", nargs=nargs_plus, type=str, dest="ignore_formats", default=[''], - help="Ignores format for specific data types.") - parser.add_argument("-l", "--lineterminator", dest="lineterminator", default="\n", - help="line terminator - lines terminator in csv, '\\n' '\\r\\n' or '\\r' (default: \\n)") - parser.add_argument("-m", "--merge-cells", dest="merge_cells", default=False, action="store_true", - help="merge cells") - parser.add_argument("-n", "--sheetname", dest="sheetname", default=None, - help="sheet name to convert") - parser.add_argument("-i", "--ignoreempty", dest="skip_empty_lines", default=False, action="store_true", - help="skip empty lines") - parser.add_argument("--skipemptycolumns", dest="skip_trailing_columns", default=False, action="store_true", - help="skip trailing empty columns") - parser.add_argument("-p", "--sheetdelimiter", dest="sheetdelimiter", default="--------", - help="sheet delimiter used to separate sheets, pass '' if you do not need delimiter, or 'x07' " - "or '\\f' for form feed (default: '--------')") - parser.add_argument("-q", "--quoting", dest="quoting", default="minimal", - help="quoting - fields quoting in csv, 'none' 'minimal' 'nonnumeric' or 'all' (default: minimal)") - parser.add_argument("-s", "--sheet", dest="sheetid", default=1, type=inttype, - help="sheet number to convert") - - if argparser: - options = parser.parse_args() - else: - (options, args) = parser.parse_args() - if len(args) < 1: - parser.print_usage() - sys.stderr.write("error: too few arguments" + os.linesep) - sys.exit(1) - options.infile = args[0] - options.outfile = len(args) > 1 and args[1] or None - - if len(options.delimiter) == 1: - pass - elif options.delimiter == 'tab' or options.delimiter == '\\t': - options.delimiter = '\t' - elif options.delimiter == 'comma': - options.delimiter = ',' - elif options.delimiter[0] == 'x': - options.delimiter = chr(int(options.delimiter[1:])) - else: - sys.stderr.write("error: invalid delimiter\n") - sys.exit(1) - - if options.quoting == 'none': - options.quoting = csv.QUOTE_NONE - elif options.quoting == 'minimal': - options.quoting = csv.QUOTE_MINIMAL - elif options.quoting == 'nonnumeric': - options.quoting = csv.QUOTE_NONNUMERIC - elif options.quoting == 'all': - options.quoting = csv.QUOTE_ALL - else: - sys.stderr.write("error: invalid quoting\n") - sys.exit(1) - - if options.lineterminator == '\n': - pass - elif options.lineterminator == '\\n': - options.lineterminator = '\n' - elif options.lineterminator == '\\r': - options.lineterminator = '\r' - elif options.lineterminator == '\\r\\n': - options.lineterminator = '\r\n' - else: - sys.stderr.write("error: invalid line terminator\n") - sys.exit(1) - - if options.sheetdelimiter == '--------': - pass - elif options.sheetdelimiter == '': - pass - elif options.sheetdelimiter == '\\f': - options.sheetdelimiter = '\f' - elif options.sheetdelimiter[0] == 'x': - options.sheetdelimiter = chr(int(options.sheetdelimiter[1:])) - else: - sys.stderr.write("error: invalid sheet delimiter\n") - sys.exit(1) - - kwargs = { - 'delimiter': options.delimiter, - 'quoting': options.quoting, - 'sheetdelimiter': options.sheetdelimiter, - 'dateformat': options.dateformat, - 'timeformat': options.timeformat, - 'floatformat': options.floatformat, - 'scifloat': options.scifloat, - 'skip_empty_lines': options.skip_empty_lines, - 'skip_trailing_columns': options.skip_trailing_columns, - 'escape_strings': options.escape_strings, - 'hyperlinks': options.hyperlinks, - 'include_sheet_pattern': options.include_sheet_pattern, - 'exclude_sheet_pattern': options.exclude_sheet_pattern, - 'merge_cells': options.merge_cells, - 'outputencoding': options.outputencoding, - 'lineterminator': options.lineterminator, - 'ignore_formats': options.ignore_formats - } - sheetid = options.sheetid - if options.all: - sheetid = 0 - - outfile = options.outfile or sys.stdout - try: - if os.path.isdir(options.infile): - convert_recursive(options.infile, sheetid, outfile, kwargs) - else: - xlsx2csv = Xlsx2csv(options.infile, **kwargs) - if options.sheetname: - sheetid = xlsx2csv.getSheetIdByName(options.sheetname) - if not sheetid: - raise XlsxException("Sheet '%s' not found" % options.sheetname) - xlsx2csv.convert(outfile, sheetid) - except XlsxException: - _, e, _ = sys.exc_info() - sys.stderr.write(str(e) + "\n") - sys.exit(1) - - -def eprint(*args, **kwargs): - print(*args, file=sys.stderr, **kwargs) diff --git a/.local/share/applications/file.desktop b/.local/share/applications/file.desktop index 369bdc0..9ac96cf 100644 --- a/.local/share/applications/file.desktop +++ b/.local/share/applications/file.desktop @@ -1,4 +1,4 @@ [Desktop Entry] Type=Application Name=File Manager -Exec=/usr/local/bin/st -e lf %u +Exec=/usr/local/bin/st -e ranger %u diff --git a/.local/share/applications/img.desktop b/.local/share/applications/img.desktop index 42aa81e..97c0d69 100644 --- a/.local/share/applications/img.desktop +++ b/.local/share/applications/img.desktop @@ -1,4 +1,4 @@ [Desktop Entry] Type=Application Name=Image viewer -Exec=/usr/bin/sxiv -a %f +Exec=/usr/local/bin/nsxiv -a %f diff --git a/.local/share/applications/mimeinfo.cache b/.local/share/applications/mimeinfo.cache index 1191348..6b2e69e 100644 --- a/.local/share/applications/mimeinfo.cache +++ b/.local/share/applications/mimeinfo.cache @@ -1,5 +1,7 @@ [MIME Cache] -application/pdf=wine-extension-pdf.desktop; +application/pdf=chromium.desktop;wine-extension-pdf.desktop; +application/rdf+xml=chromium.desktop; +application/rss+xml=chromium.desktop; application/rtf=wine-extension-rtf.desktop; application/vnd.ms-htmlhelp=wine-extension-chm.desktop; application/winhlp=wine-extension-hlp.desktop; @@ -7,14 +9,18 @@ application/x-mswinurl=wine-extension-url.desktop; application/x-mswrite=wine-extension-wri.desktop; application/x-wine-extension-ini=wine-extension-ini.desktop; application/x-wine-extension-msp=wine-extension-msp.desktop; -application/xml=wine-extension-xml.desktop; -image/gif=wine-extension-gif.desktop; -image/jpeg=wine-extension-jfif.desktop;wine-extension-jpe.desktop; -image/png=wine-extension-png.desktop; -text/html=browser.desktop;wine-extension-htm.desktop; +application/xhtml+xml=chromium.desktop; +application/xhtml_xml=chromium.desktop; +application/xml=chromium.desktop;wine-extension-xml.desktop; +image/gif=chromium.desktop;wine-extension-gif.desktop; +image/jpeg=chromium.desktop;wine-extension-jfif.desktop;wine-extension-jpe.desktop; +image/png=chromium.desktop;wine-extension-png.desktop; +image/webp=chromium.desktop; +text/html=browser.desktop;chromium.desktop;wine-extension-htm.desktop; text/plain=wine-extension-txt.desktop; text/vbscript=wine-extension-vbs.desktop; +text/xml=chromium.desktop; x-scheme-handler/about=browser.desktop; -x-scheme-handler/http=browser.desktop; -x-scheme-handler/https=browser.desktop; +x-scheme-handler/http=browser.desktop;chromium.desktop; +x-scheme-handler/https=browser.desktop;chromium.desktop; x-scheme-handler/unknown=browser.desktop; diff --git a/.local/share/applications/monero-gui.desktop b/.local/share/applications/monero-gui.desktop deleted file mode 100644 index e5e22a7..0000000 --- a/.local/share/applications/monero-gui.desktop +++ /dev/null @@ -1,16 +0,0 @@ -[Desktop Entry] -Name=Monero GUI -GenericName=Monero-GUI -X-GNOME-FullName=Monero-GUI -Comment=Monero GUI -Keywords=Monero; -Exec=/usr/bin/monero-wallet-gui %u -Terminal=false -Type=Application -Icon=monero -Categories=Network;GNOME;Qt; -MimeType=x-scheme-handler/monero;x-scheme-handler/moneroseed -StartupNotify=true -X-GNOME-Bugzilla-Bugzilla=GNOME -X-GNOME-UsesNotifications=true - diff --git a/.local/share/applications/video.desktop b/.local/share/applications/video.desktop new file mode 100644 index 0000000..a29a0b1 --- /dev/null +++ b/.local/share/applications/video.desktop @@ -0,0 +1,4 @@ +[Desktop Entry] +Type=Application +Name=Video viewer +Exec=/usr/bin/mpv -quiet %f diff --git a/.local/share/applications/wine-extension-chm.desktop b/.local/share/applications/wine-extension-chm.desktop deleted file mode 100644 index 22b8e3f..0000000 --- a/.local/share/applications/wine-extension-chm.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=hh -MimeType=application/vnd.ms-htmlhelp; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen chm.file %f -NoDisplay=true -StartupNotify=true -Icon=A35F_hh.0 diff --git a/.local/share/applications/wine-extension-gif.desktop b/.local/share/applications/wine-extension-gif.desktop deleted file mode 100644 index d743be4..0000000 --- a/.local/share/applications/wine-extension-gif.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=Wine Internet Explorer -MimeType=image/gif; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen giffile %f -NoDisplay=true -StartupNotify=true -Icon=7596_iexplore.0 diff --git a/.local/share/applications/wine-extension-hlp.desktop b/.local/share/applications/wine-extension-hlp.desktop deleted file mode 100644 index 4a2ddd0..0000000 --- a/.local/share/applications/wine-extension-hlp.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=winhlp32 -MimeType=application/winhlp; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen hlpfile %f -NoDisplay=true -StartupNotify=true -Icon=4137_winhlp32.0 diff --git a/.local/share/applications/wine-extension-htm.desktop b/.local/share/applications/wine-extension-htm.desktop deleted file mode 100644 index 2117bc9..0000000 --- a/.local/share/applications/wine-extension-htm.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=winebrowser -MimeType=text/html; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen htmlfile %f -NoDisplay=true -StartupNotify=true -Icon=7765_winebrowser.0 diff --git a/.local/share/applications/wine-extension-ini.desktop b/.local/share/applications/wine-extension-ini.desktop deleted file mode 100644 index dfd3d24..0000000 --- a/.local/share/applications/wine-extension-ini.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=notepad -MimeType=application/x-wine-extension-ini; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen inifile %f -NoDisplay=true -StartupNotify=true -Icon=1E64_notepad.0 diff --git a/.local/share/applications/wine-extension-jfif.desktop b/.local/share/applications/wine-extension-jfif.desktop deleted file mode 100644 index 87b6c14..0000000 --- a/.local/share/applications/wine-extension-jfif.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=Wine Internet Explorer -MimeType=image/jpeg; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen pjpegfile %f -NoDisplay=true -StartupNotify=true -Icon=7596_iexplore.0 diff --git a/.local/share/applications/wine-extension-jpe.desktop b/.local/share/applications/wine-extension-jpe.desktop deleted file mode 100644 index a500316..0000000 --- a/.local/share/applications/wine-extension-jpe.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=Wine Internet Explorer -MimeType=image/jpeg; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen jpegfile %f -NoDisplay=true -StartupNotify=true -Icon=7596_iexplore.0 diff --git a/.local/share/applications/wine-extension-msp.desktop b/.local/share/applications/wine-extension-msp.desktop deleted file mode 100644 index 66bfe4a..0000000 --- a/.local/share/applications/wine-extension-msp.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=Wine Installer -MimeType=application/x-wine-extension-msp; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen Msi.Patch %f -NoDisplay=true -StartupNotify=true -Icon=2402_msiexec.0 diff --git a/.local/share/applications/wine-extension-pdf.desktop b/.local/share/applications/wine-extension-pdf.desktop deleted file mode 100644 index effc2e0..0000000 --- a/.local/share/applications/wine-extension-pdf.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=winebrowser -MimeType=application/pdf; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen pdffile %f -NoDisplay=true -StartupNotify=true -Icon=7765_winebrowser.0 diff --git a/.local/share/applications/wine-extension-png.desktop b/.local/share/applications/wine-extension-png.desktop deleted file mode 100644 index 378a2ee..0000000 --- a/.local/share/applications/wine-extension-png.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=Wine Internet Explorer -MimeType=image/png; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen pngfile %f -NoDisplay=true -StartupNotify=true -Icon=7596_iexplore.0 diff --git a/.local/share/applications/wine-extension-rtf.desktop b/.local/share/applications/wine-extension-rtf.desktop deleted file mode 100644 index 2460fe6..0000000 --- a/.local/share/applications/wine-extension-rtf.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=wordpad -MimeType=application/rtf; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen rtffile %f -NoDisplay=true -StartupNotify=true -Icon=97C1_wordpad.0 diff --git a/.local/share/applications/wine-extension-txt.desktop b/.local/share/applications/wine-extension-txt.desktop deleted file mode 100644 index 6aee932..0000000 --- a/.local/share/applications/wine-extension-txt.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=notepad -MimeType=text/plain; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen txtfile %f -NoDisplay=true -StartupNotify=true -Icon=1E64_notepad.0 diff --git a/.local/share/applications/wine-extension-url.desktop b/.local/share/applications/wine-extension-url.desktop deleted file mode 100644 index ec83e02..0000000 --- a/.local/share/applications/wine-extension-url.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=rundll32 -MimeType=application/x-mswinurl; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen InternetShortcut %f -NoDisplay=true -StartupNotify=true -Icon=1CD8_rundll32.0 diff --git a/.local/share/applications/wine-extension-vbs.desktop b/.local/share/applications/wine-extension-vbs.desktop deleted file mode 100644 index 2686182..0000000 --- a/.local/share/applications/wine-extension-vbs.desktop +++ /dev/null @@ -1,7 +0,0 @@ -[Desktop Entry] -Type=Application -Name=A Wine application -MimeType=text/vbscript; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen VBSFile %f -NoDisplay=true -StartupNotify=true diff --git a/.local/share/applications/wine-extension-wri.desktop b/.local/share/applications/wine-extension-wri.desktop deleted file mode 100644 index a30ae4e..0000000 --- a/.local/share/applications/wine-extension-wri.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=wordpad -MimeType=application/x-mswrite; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen wrifile %f -NoDisplay=true -StartupNotify=true -Icon=97C1_wordpad.0 diff --git a/.local/share/applications/wine-extension-xml.desktop b/.local/share/applications/wine-extension-xml.desktop deleted file mode 100644 index bbf4b96..0000000 --- a/.local/share/applications/wine-extension-xml.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=winebrowser -MimeType=application/xml; -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine start /ProgIDOpen xmlfile %f -NoDisplay=true -StartupNotify=true -Icon=7765_winebrowser.0 diff --git a/.local/share/applications/wine/Programs/Heimat Defender Rebellion.desktop b/.local/share/applications/wine/Programs/Heimat Defender Rebellion.desktop deleted file mode 100644 index 5c31034..0000000 --- a/.local/share/applications/wine/Programs/Heimat Defender Rebellion.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Name=Heimat Defender Rebellion -Exec=env WINEPREFIX="/home/alex/.local/share/wineprefixes/default" wine C:\\\\windows\\\\command\\\\start.exe /Unix /home/alex/.local/share/wineprefixes/default/dosdevices/c:/ProgramData/Microsoft/Windows/Start\\ Menu/Programs/Heimat\\ Defender\\ Rebellion.lnk -Type=Application -StartupNotify=true -Path=/home/alex/.local/share/wineprefixes/default/dosdevices/c:/Program Files (x86)/Heimat Defender Rebellion -Icon=B3C3_HeimatDefender.0 -StartupWMClass=heimatdefender.exe diff --git a/.local/share/larbs/chars/emoji b/.local/share/larbs/chars/emoji new file mode 100644 index 0000000..6803731 --- /dev/null +++ b/.local/share/larbs/chars/emoji @@ -0,0 +1,1630 @@ +๐Ÿ˜€ grinning face +๐Ÿ˜ƒ grinning face with big eyes +๐Ÿ˜„ grinning face with smiling eyes +๐Ÿ˜ beaming face with smiling eyes +๐Ÿ˜† grinning squinting face +๐Ÿ˜… grinning face with sweat +๐Ÿคฃ rolling on the floor laughing +๐Ÿ˜‚ face with tears of joy +๐Ÿ™‚ slightly smiling face +๐Ÿ™ƒ upside-down face +๐Ÿซ  melting face +๐Ÿ˜‰ winking face +๐Ÿ˜Š smiling face with smiling eyes +๐Ÿ˜‡ smiling face with halo +๐Ÿฅฐ smiling face with hearts +๐Ÿ˜ smiling face with heart-eyes +๐Ÿคฉ star-struck +๐Ÿ˜˜ face blowing a kiss +๐Ÿ˜— kissing face +โ˜บ๏ธ smiling face +๐Ÿ˜š kissing face with closed eyes +๐Ÿ˜™ kissing face with smiling eyes +๐Ÿฅฒ smiling face with tear +๐Ÿ˜‹ face savoring food +๐Ÿ˜› face with tongue +๐Ÿ˜œ winking face with tongue +๐Ÿคช zany face +๐Ÿ˜ squinting face with tongue +๐Ÿค‘ money-mouth face +๐Ÿค— smiling face with open hands +๐Ÿคญ face with hand over mouth +๐Ÿซข face with open eyes and hand over mouth +๐Ÿซฃ face with peeking eye +๐Ÿคซ shushing face +๐Ÿค” thinking face +๐Ÿซก saluting face +๐Ÿค zipper-mouth face +๐Ÿคจ face with raised eyebrow +๐Ÿ˜ neutral face +๐Ÿ˜‘ expressionless face +๐Ÿ˜ถ face without mouth +๐Ÿซฅ dotted line face +๐Ÿ˜ smirking face +๐Ÿ˜’ unamused face +๐Ÿ™„ face with rolling eyes +๐Ÿ˜ฌ grimacing face +๐Ÿคฅ lying face +๐Ÿ˜Œ relieved face +๐Ÿ˜” pensive face +๐Ÿ˜ช sleepy face +๐Ÿคค drooling face +๐Ÿ˜ด sleeping face +๐Ÿ˜ท face with medical mask +๐Ÿค’ face with thermometer +๐Ÿค• face with head-bandage +๐Ÿคข nauseated face +๐Ÿคฎ face vomiting +๐Ÿคง sneezing face +๐Ÿฅต hot face +๐Ÿฅถ cold face +๐Ÿฅด woozy face +๐Ÿ˜ต face with crossed-out eyes +๐Ÿคฏ exploding head +๐Ÿค  cowboy hat face +๐Ÿฅณ partying face +๐Ÿฅธ disguised face +๐Ÿ˜Ž smiling face with sunglasses +๐Ÿค“ nerd face +๐Ÿง face with monocle +๐Ÿ˜• confused face +๐Ÿซค face with diagonal mouth +๐Ÿ˜Ÿ worried face +๐Ÿ™ slightly frowning face +โ˜น๏ธ frowning face +๐Ÿ˜ฎ face with open mouth +๐Ÿ˜ฏ hushed face +๐Ÿ˜ฒ astonished face +๐Ÿ˜ณ flushed face +๐Ÿฅบ pleading face +๐Ÿฅน face holding back tears +๐Ÿ˜ฆ frowning face with open mouth +๐Ÿ˜ง anguished face +๐Ÿ˜จ fearful face +๐Ÿ˜ฐ anxious face with sweat +๐Ÿ˜ฅ sad but relieved face +๐Ÿ˜ข crying face +๐Ÿ˜ญ loudly crying face +๐Ÿ˜ฑ face screaming in fear +๐Ÿ˜– confounded face +๐Ÿ˜ฃ persevering face +๐Ÿ˜ž disappointed face +๐Ÿ˜“ downcast face with sweat +๐Ÿ˜ฉ weary face +๐Ÿ˜ซ tired face +๐Ÿฅฑ yawning face +๐Ÿ˜ค face with steam from nose +๐Ÿ˜ก pouting face +๐Ÿ˜  angry face +๐Ÿคฌ face with symbols on mouth +๐Ÿ˜ˆ smiling face with horns +๐Ÿ‘ฟ angry face with horns +๐Ÿ’€ skull +โ˜ ๏ธ skull and crossbones +๐Ÿ’ฉ pile of poo +๐Ÿคก clown face +๐Ÿ‘น ogre +๐Ÿ‘บ goblin +๐Ÿ‘ป ghost +๐Ÿ‘ฝ alien +๐Ÿ‘พ alien monster +๐Ÿค– robot +๐Ÿ˜บ grinning cat +๐Ÿ˜ธ grinning cat with smiling eyes +๐Ÿ˜น cat with tears of joy +๐Ÿ˜ป smiling cat with heart-eyes +๐Ÿ˜ผ cat with wry smile +๐Ÿ˜ฝ kissing cat +๐Ÿ™€ weary cat +๐Ÿ˜ฟ crying cat +๐Ÿ˜พ pouting cat +๐Ÿ™ˆ see-no-evil monkey +๐Ÿ™‰ hear-no-evil monkey +๐Ÿ™Š speak-no-evil monkey +๐Ÿ’‹ kiss mark +๐Ÿ’Œ love letter +๐Ÿ’˜ heart with arrow +๐Ÿ’ heart with ribbon +๐Ÿ’– sparkling heart +๐Ÿ’— growing heart +๐Ÿ’“ beating heart +๐Ÿ’ž revolving hearts +๐Ÿ’• two hearts +๐Ÿ’Ÿ heart decoration +โฃ๏ธ heart exclamation +๐Ÿ’” broken heart +โค๏ธ red heart +๐Ÿงก orange heart +๐Ÿ’› yellow heart +๐Ÿ’š green heart +๐Ÿ’™ blue heart +๐Ÿ’œ purple heart +๐ŸคŽ brown heart +๐Ÿ–ค black heart +๐Ÿค white heart +๐Ÿ’ฏ hundred points +๐Ÿ’ข anger symbol +๐Ÿ’ฅ collision +๐Ÿ’ซ dizzy +๐Ÿ’ฆ sweat droplets +๐Ÿ’จ dashing away +๐Ÿ•ณ๏ธ hole +๐Ÿ’ฃ bomb +๐Ÿ’ฌ speech balloon +๐Ÿ—จ๏ธ left speech bubble +๐Ÿ—ฏ๏ธ right anger bubble +๐Ÿ’ญ thought balloon +๐Ÿ’ค zzz +๐Ÿ‘‹ waving hand +๐Ÿคš raised back of hand +๐Ÿ–๏ธ hand with fingers splayed +โœ‹ raised hand +๐Ÿ–– vulcan salute +๐Ÿซฑ rightwards hand +๐Ÿซฒ leftwards hand +๐Ÿซณ palm down hand +๐Ÿซด palm up hand +๐Ÿ‘Œ OK hand +๐ŸคŒ pinched fingers +๐Ÿค pinching hand +โœŒ๏ธ victory hand +๐Ÿคž crossed fingers +๐Ÿซฐ hand with index finger and thumb crossed +๐ŸคŸ love-you gesture +๐Ÿค˜ sign of the horns +๐Ÿค™ call me hand +๐Ÿ‘ˆ backhand index pointing left +๐Ÿ‘‰ backhand index pointing right +๐Ÿ‘† backhand index pointing up +๐Ÿ–• middle finger +๐Ÿ‘‡ backhand index pointing down +โ˜๏ธ index pointing up +๐Ÿซต index pointing at the viewer +๐Ÿ‘ thumbs up +๐Ÿ‘Ž thumbs down +โœŠ raised fist +๐Ÿ‘Š oncoming fist +๐Ÿค› left-facing fist +๐Ÿคœ right-facing fist +๐Ÿ‘ clapping hands +๐Ÿ™Œ raising hands +๐Ÿซถ heart hands +๐Ÿ‘ open hands +๐Ÿคฒ palms up together +๐Ÿค handshake +๐Ÿ™ folded hands +โœ๏ธ writing hand +๐Ÿ’… nail polish +๐Ÿคณ selfie +๐Ÿ’ช flexed biceps +๐Ÿฆพ mechanical arm +๐Ÿฆฟ mechanical leg +๐Ÿฆต leg +๐Ÿฆถ foot +๐Ÿ‘‚ ear +๐Ÿฆป ear with hearing aid +๐Ÿ‘ƒ nose +๐Ÿง  brain +๐Ÿซ€ anatomical heart +๐Ÿซ lungs +๐Ÿฆท tooth +๐Ÿฆด bone +๐Ÿ‘€ eyes +๐Ÿ‘๏ธ eye +๐Ÿ‘… tongue +๐Ÿ‘„ mouth +๐Ÿซฆ biting lip +๐Ÿ‘ถ baby +๐Ÿง’ child +๐Ÿ‘ฆ boy +๐Ÿ‘ง girl +๐Ÿง‘ person +๐Ÿ‘ฑ person: blond hair +๐Ÿ‘จ man +๐Ÿง” person: beard +๐Ÿ‘ฉ woman +๐Ÿง“ older person +๐Ÿ‘ด old man +๐Ÿ‘ต old woman +๐Ÿ™ person frowning +๐Ÿ™Ž person pouting +๐Ÿ™… person gesturing NO +๐Ÿ™† person gesturing OK +๐Ÿ’ person tipping hand +๐Ÿ™‹ person raising hand +๐Ÿง deaf person +๐Ÿ™‡ person bowing +๐Ÿคฆ person facepalming +๐Ÿคท person shrugging +๐Ÿ‘ฎ police officer +๐Ÿ•ต๏ธ detective +๐Ÿ’‚ guard +๐Ÿฅท ninja +๐Ÿ‘ท construction worker +๐Ÿซ… person with crown +๐Ÿคด prince +๐Ÿ‘ธ princess +๐Ÿ‘ณ person wearing turban +๐Ÿ‘ฒ person with skullcap +๐Ÿง• woman with headscarf +๐Ÿคต person in tuxedo +๐Ÿ‘ฐ person with veil +๐Ÿคฐ pregnant woman +๐Ÿซƒ pregnant man +๐Ÿซ„ pregnant person +๐Ÿคฑ breast-feeding +๐Ÿ‘ผ baby angel +๐ŸŽ… Santa Claus +๐Ÿคถ Mrs. Claus +๐Ÿฆธ superhero +๐Ÿฆน supervillain +๐Ÿง™ mage +๐Ÿงš fairy +๐Ÿง› vampire +๐Ÿงœ merperson +๐Ÿง elf +๐Ÿงž genie +๐ŸงŸ zombie +๐ŸงŒ troll +๐Ÿ’† person getting massage +๐Ÿ’‡ person getting haircut +๐Ÿšถ person walking +๐Ÿง person standing +๐ŸงŽ person kneeling +๐Ÿƒ person running +๐Ÿ’ƒ woman dancing +๐Ÿ•บ man dancing +๐Ÿ•ด๏ธ person in suit levitating +๐Ÿ‘ฏ people with bunny ears +๐Ÿง– person in steamy room +๐Ÿง— person climbing +๐Ÿคบ person fencing +๐Ÿ‡ horse racing +โ›ท๏ธ skier +๐Ÿ‚ snowboarder +๐ŸŒ๏ธ person golfing +๐Ÿ„ person surfing +๐Ÿšฃ person rowing boat +๐ŸŠ person swimming +โ›น๏ธ person bouncing ball +๐Ÿ‹๏ธ person lifting weights +๐Ÿšด person biking +๐Ÿšต person mountain biking +๐Ÿคธ person cartwheeling +๐Ÿคผ people wrestling +๐Ÿคฝ person playing water polo +๐Ÿคพ person playing handball +๐Ÿคน person juggling +๐Ÿง˜ person in lotus position +๐Ÿ›€ person taking bath +๐Ÿ›Œ person in bed +๐Ÿ‘ญ women holding hands +๐Ÿ‘ซ woman and man holding hands +๐Ÿ‘ฌ men holding hands +๐Ÿ’ kiss +๐Ÿ’‘ couple with heart +๐Ÿ‘ช family +๐Ÿ—ฃ๏ธ speaking head +๐Ÿ‘ค bust in silhouette +๐Ÿ‘ฅ busts in silhouette +๐Ÿซ‚ people hugging +๐Ÿ‘ฃ footprints +๐Ÿต monkey face +๐Ÿ’ monkey +๐Ÿฆ gorilla +๐Ÿฆง orangutan +๐Ÿถ dog face +๐Ÿ• dog +๐Ÿฆฎ guide dog +๐Ÿฉ poodle +๐Ÿบ wolf +๐ŸฆŠ fox +๐Ÿฆ raccoon +๐Ÿฑ cat face +๐Ÿˆ cat +๐Ÿฆ lion +๐Ÿฏ tiger face +๐Ÿ… tiger +๐Ÿ† leopard +๐Ÿด horse face +๐ŸŽ horse +๐Ÿฆ„ unicorn +๐Ÿฆ“ zebra +๐ŸฆŒ deer +๐Ÿฆฌ bison +๐Ÿฎ cow face +๐Ÿ‚ ox +๐Ÿƒ water buffalo +๐Ÿ„ cow +๐Ÿท pig face +๐Ÿ– pig +๐Ÿ— boar +๐Ÿฝ pig nose +๐Ÿ ram +๐Ÿ‘ ewe +๐Ÿ goat +๐Ÿช camel +๐Ÿซ two-hump camel +๐Ÿฆ™ llama +๐Ÿฆ’ giraffe +๐Ÿ˜ elephant +๐Ÿฆฃ mammoth +๐Ÿฆ rhinoceros +๐Ÿฆ› hippopotamus +๐Ÿญ mouse face +๐Ÿ mouse +๐Ÿ€ rat +๐Ÿน hamster +๐Ÿฐ rabbit face +๐Ÿ‡ rabbit +๐Ÿฟ๏ธ chipmunk +๐Ÿฆซ beaver +๐Ÿฆ” hedgehog +๐Ÿฆ‡ bat +๐Ÿป bear +๐Ÿจ koala +๐Ÿผ panda +๐Ÿฆฅ sloth +๐Ÿฆฆ otter +๐Ÿฆจ skunk +๐Ÿฆ˜ kangaroo +๐Ÿฆก badger +๐Ÿพ paw prints +๐Ÿฆƒ turkey +๐Ÿ” chicken +๐Ÿ“ rooster +๐Ÿฃ hatching chick +๐Ÿค baby chick +๐Ÿฅ front-facing baby chick +๐Ÿฆ bird +๐Ÿง penguin +๐Ÿ•Š๏ธ dove +๐Ÿฆ… eagle +๐Ÿฆ† duck +๐Ÿฆข swan +๐Ÿฆ‰ owl +๐Ÿฆค dodo +๐Ÿชถ feather +๐Ÿฆฉ flamingo +๐Ÿฆš peacock +๐Ÿฆœ parrot +๐Ÿธ frog +๐ŸŠ crocodile +๐Ÿข turtle +๐ŸฆŽ lizard +๐Ÿ snake +๐Ÿฒ dragon face +๐Ÿ‰ dragon +๐Ÿฆ• sauropod +๐Ÿฆ– T-Rex +๐Ÿณ spouting whale +๐Ÿ‹ whale +๐Ÿฌ dolphin +๐Ÿฆญ seal +๐ŸŸ fish +๐Ÿ  tropical fish +๐Ÿก blowfish +๐Ÿฆˆ shark +๐Ÿ™ octopus +๐Ÿš spiral shell +๐Ÿชธ coral +๐ŸŒ snail +๐Ÿฆ‹ butterfly +๐Ÿ› bug +๐Ÿœ ant +๐Ÿ honeybee +๐Ÿชฒ beetle +๐Ÿž lady beetle +๐Ÿฆ— cricket +๐Ÿชณ cockroach +๐Ÿ•ท๏ธ spider +๐Ÿ•ธ๏ธ spider web +๐Ÿฆ‚ scorpion +๐ŸฆŸ mosquito +๐Ÿชฐ fly +๐Ÿชฑ worm +๐Ÿฆ  microbe +๐Ÿ’ bouquet +๐ŸŒธ cherry blossom +๐Ÿ’ฎ white flower +๐Ÿชท lotus +๐Ÿต๏ธ rosette +๐ŸŒน rose +๐Ÿฅ€ wilted flower +๐ŸŒบ hibiscus +๐ŸŒป sunflower +๐ŸŒผ blossom +๐ŸŒท tulip +๐ŸŒฑ seedling +๐Ÿชด potted plant +๐ŸŒฒ evergreen tree +๐ŸŒณ deciduous tree +๐ŸŒด palm tree +๐ŸŒต cactus +๐ŸŒพ sheaf of rice +๐ŸŒฟ herb +โ˜˜๏ธ shamrock +๐Ÿ€ four leaf clover +๐Ÿ maple leaf +๐Ÿ‚ fallen leaf +๐Ÿƒ leaf fluttering in wind +๐Ÿชน empty nest +๐Ÿชบ nest with eggs +๐Ÿ‡ grapes +๐Ÿˆ melon +๐Ÿ‰ watermelon +๐ŸŠ tangerine +๐Ÿ‹ lemon +๐ŸŒ banana +๐Ÿ pineapple +๐Ÿฅญ mango +๐ŸŽ red apple +๐Ÿ green apple +๐Ÿ pear +๐Ÿ‘ peach +๐Ÿ’ cherries +๐Ÿ“ strawberry +๐Ÿซ blueberries +๐Ÿฅ kiwi fruit +๐Ÿ… tomato +๐Ÿซ’ olive +๐Ÿฅฅ coconut +๐Ÿฅ‘ avocado +๐Ÿ† eggplant +๐Ÿฅ” potato +๐Ÿฅ• carrot +๐ŸŒฝ ear of corn +๐ŸŒถ๏ธ hot pepper +๐Ÿซ‘ bell pepper +๐Ÿฅ’ cucumber +๐Ÿฅฌ leafy green +๐Ÿฅฆ broccoli +๐Ÿง„ garlic +๐Ÿง… onion +๐Ÿ„ mushroom +๐Ÿฅœ peanuts +๐Ÿซ˜ beans +๐ŸŒฐ chestnut +๐Ÿž bread +๐Ÿฅ croissant +๐Ÿฅ– baguette bread +๐Ÿซ“ flatbread +๐Ÿฅจ pretzel +๐Ÿฅฏ bagel +๐Ÿฅž pancakes +๐Ÿง‡ waffle +๐Ÿง€ cheese wedge +๐Ÿ– meat on bone +๐Ÿ— poultry leg +๐Ÿฅฉ cut of meat +๐Ÿฅ“ bacon +๐Ÿ” hamburger +๐ŸŸ french fries +๐Ÿ• pizza +๐ŸŒญ hot dog +๐Ÿฅช sandwich +๐ŸŒฎ taco +๐ŸŒฏ burrito +๐Ÿซ” tamale +๐Ÿฅ™ stuffed flatbread +๐Ÿง† falafel +๐Ÿฅš egg +๐Ÿณ cooking +๐Ÿฅ˜ shallow pan of food +๐Ÿฒ pot of food +๐Ÿซ• fondue +๐Ÿฅฃ bowl with spoon +๐Ÿฅ— green salad +๐Ÿฟ popcorn +๐Ÿงˆ butter +๐Ÿง‚ salt +๐Ÿฅซ canned food +๐Ÿฑ bento box +๐Ÿ˜ rice cracker +๐Ÿ™ rice ball +๐Ÿš cooked rice +๐Ÿ› curry rice +๐Ÿœ steaming bowl +๐Ÿ spaghetti +๐Ÿ  roasted sweet potato +๐Ÿข oden +๐Ÿฃ sushi +๐Ÿค fried shrimp +๐Ÿฅ fish cake with swirl +๐Ÿฅฎ moon cake +๐Ÿก dango +๐ŸฅŸ dumpling +๐Ÿฅ  fortune cookie +๐Ÿฅก takeout box +๐Ÿฆ€ crab +๐Ÿฆž lobster +๐Ÿฆ shrimp +๐Ÿฆ‘ squid +๐Ÿฆช oyster +๐Ÿฆ soft ice cream +๐Ÿง shaved ice +๐Ÿจ ice cream +๐Ÿฉ doughnut +๐Ÿช cookie +๐ŸŽ‚ birthday cake +๐Ÿฐ shortcake +๐Ÿง cupcake +๐Ÿฅง pie +๐Ÿซ chocolate bar +๐Ÿฌ candy +๐Ÿญ lollipop +๐Ÿฎ custard +๐Ÿฏ honey pot +๐Ÿผ baby bottle +๐Ÿฅ› glass of milk +โ˜• hot beverage +๐Ÿซ– teapot +๐Ÿต teacup without handle +๐Ÿถ sake +๐Ÿพ bottle with popping cork +๐Ÿท wine glass +๐Ÿธ cocktail glass +๐Ÿน tropical drink +๐Ÿบ beer mug +๐Ÿป clinking beer mugs +๐Ÿฅ‚ clinking glasses +๐Ÿฅƒ tumbler glass +๐Ÿซ— pouring liquid +๐Ÿฅค cup with straw +๐Ÿง‹ bubble tea +๐Ÿงƒ beverage box +๐Ÿง‰ mate +๐ŸงŠ ice +๐Ÿฅข chopsticks +๐Ÿฝ๏ธ fork and knife with plate +๐Ÿด fork and knife +๐Ÿฅ„ spoon +๐Ÿ”ช kitchen knife +๐Ÿซ™ jar +๐Ÿบ amphora +๐ŸŒ globe showing Europe-Africa +๐ŸŒŽ globe showing Americas +๐ŸŒ globe showing Asia-Australia +๐ŸŒ globe with meridians +๐Ÿ—บ๏ธ world map +๐Ÿ—พ map of Japan +๐Ÿงญ compass +๐Ÿ”๏ธ snow-capped mountain +โ›ฐ๏ธ mountain +๐ŸŒ‹ volcano +๐Ÿ—ป mount fuji +๐Ÿ•๏ธ camping +๐Ÿ–๏ธ beach with umbrella +๐Ÿœ๏ธ desert +๐Ÿ๏ธ desert island +๐Ÿž๏ธ national park +๐ŸŸ๏ธ stadium +๐Ÿ›๏ธ classical building +๐Ÿ—๏ธ building construction +๐Ÿงฑ brick +๐Ÿชจ rock +๐Ÿชต wood +๐Ÿ›– hut +๐Ÿ˜๏ธ houses +๐Ÿš๏ธ derelict house +๐Ÿ  house +๐Ÿก house with garden +๐Ÿข office building +๐Ÿฃ Japanese post office +๐Ÿค post office +๐Ÿฅ hospital +๐Ÿฆ bank +๐Ÿจ hotel +๐Ÿฉ love hotel +๐Ÿช convenience store +๐Ÿซ school +๐Ÿฌ department store +๐Ÿญ factory +๐Ÿฏ Japanese castle +๐Ÿฐ castle +๐Ÿ’’ wedding +๐Ÿ—ผ Tokyo tower +๐Ÿ—ฝ Statue of Liberty +โ›ช church +๐Ÿ•Œ mosque +๐Ÿ›• hindu temple +๐Ÿ• synagogue +โ›ฉ๏ธ shinto shrine +๐Ÿ•‹ kaaba +โ›ฒ fountain +โ›บ tent +๐ŸŒ foggy +๐ŸŒƒ night with stars +๐Ÿ™๏ธ cityscape +๐ŸŒ„ sunrise over mountains +๐ŸŒ… sunrise +๐ŸŒ† cityscape at dusk +๐ŸŒ‡ sunset +๐ŸŒ‰ bridge at night +โ™จ๏ธ hot springs +๐ŸŽ  carousel horse +๐Ÿ› playground slide +๐ŸŽก ferris wheel +๐ŸŽข roller coaster +๐Ÿ’ˆ barber pole +๐ŸŽช circus tent +๐Ÿš‚ locomotive +๐Ÿšƒ railway car +๐Ÿš„ high-speed train +๐Ÿš… bullet train +๐Ÿš† train +๐Ÿš‡ metro +๐Ÿšˆ light rail +๐Ÿš‰ station +๐ŸšŠ tram +๐Ÿš monorail +๐Ÿšž mountain railway +๐Ÿš‹ tram car +๐ŸšŒ bus +๐Ÿš oncoming bus +๐ŸšŽ trolleybus +๐Ÿš minibus +๐Ÿš‘ ambulance +๐Ÿš’ fire engine +๐Ÿš“ police car +๐Ÿš” oncoming police car +๐Ÿš• taxi +๐Ÿš– oncoming taxi +๐Ÿš— automobile +๐Ÿš˜ oncoming automobile +๐Ÿš™ sport utility vehicle +๐Ÿ›ป pickup truck +๐Ÿšš delivery truck +๐Ÿš› articulated lorry +๐Ÿšœ tractor +๐ŸŽ๏ธ racing car +๐Ÿ๏ธ motorcycle +๐Ÿ›ต motor scooter +๐Ÿฆฝ manual wheelchair +๐Ÿฆผ motorized wheelchair +๐Ÿ›บ auto rickshaw +๐Ÿšฒ bicycle +๐Ÿ›ด kick scooter +๐Ÿ›น skateboard +๐Ÿ›ผ roller skate +๐Ÿš bus stop +๐Ÿ›ฃ๏ธ motorway +๐Ÿ›ค๏ธ railway track +๐Ÿ›ข๏ธ oil drum +โ›ฝ fuel pump +๐Ÿ›ž wheel +๐Ÿšจ police car light +๐Ÿšฅ horizontal traffic light +๐Ÿšฆ vertical traffic light +๐Ÿ›‘ stop sign +๐Ÿšง construction +โš“ anchor +๐Ÿ›Ÿ ring buoy +โ›ต sailboat +๐Ÿ›ถ canoe +๐Ÿšค speedboat +๐Ÿ›ณ๏ธ passenger ship +โ›ด๏ธ ferry +๐Ÿ›ฅ๏ธ motor boat +๐Ÿšข ship +โœˆ๏ธ airplane +๐Ÿ›ฉ๏ธ small airplane +๐Ÿ›ซ airplane departure +๐Ÿ›ฌ airplane arrival +๐Ÿช‚ parachute +๐Ÿ’บ seat +๐Ÿš helicopter +๐ŸšŸ suspension railway +๐Ÿš  mountain cableway +๐Ÿšก aerial tramway +๐Ÿ›ฐ๏ธ satellite +๐Ÿš€ rocket +๐Ÿ›ธ flying saucer +๐Ÿ›Ž๏ธ bellhop bell +๐Ÿงณ luggage +โŒ› hourglass done +โณ hourglass not done +โŒš watch +โฐ alarm clock +โฑ๏ธ stopwatch +โฒ๏ธ timer clock +๐Ÿ•ฐ๏ธ mantelpiece clock +๐Ÿ•› twelve oโ€™clock +๐Ÿ•ง twelve-thirty +๐Ÿ• one oโ€™clock +๐Ÿ•œ one-thirty +๐Ÿ•‘ two oโ€™clock +๐Ÿ• two-thirty +๐Ÿ•’ three oโ€™clock +๐Ÿ•ž three-thirty +๐Ÿ•“ four oโ€™clock +๐Ÿ•Ÿ four-thirty +๐Ÿ•” five oโ€™clock +๐Ÿ•  five-thirty +๐Ÿ•• six oโ€™clock +๐Ÿ•ก six-thirty +๐Ÿ•– seven oโ€™clock +๐Ÿ•ข seven-thirty +๐Ÿ•— eight oโ€™clock +๐Ÿ•ฃ eight-thirty +๐Ÿ•˜ nine oโ€™clock +๐Ÿ•ค nine-thirty +๐Ÿ•™ ten oโ€™clock +๐Ÿ•ฅ ten-thirty +๐Ÿ•š eleven oโ€™clock +๐Ÿ•ฆ eleven-thirty +๐ŸŒ‘ new moon +๐ŸŒ’ waxing crescent moon +๐ŸŒ“ first quarter moon +๐ŸŒ” waxing gibbous moon +๐ŸŒ• full moon +๐ŸŒ– waning gibbous moon +๐ŸŒ— last quarter moon +๐ŸŒ˜ waning crescent moon +๐ŸŒ™ crescent moon +๐ŸŒš new moon face +๐ŸŒ› first quarter moon face +๐ŸŒœ last quarter moon face +๐ŸŒก๏ธ thermometer +โ˜€๏ธ sun +๐ŸŒ full moon face +๐ŸŒž sun with face +๐Ÿช ringed planet +โญ star +๐ŸŒŸ glowing star +๐ŸŒ  shooting star +๐ŸŒŒ milky way +โ˜๏ธ cloud +โ›… sun behind cloud +โ›ˆ๏ธ cloud with lightning and rain +๐ŸŒค๏ธ sun behind small cloud +๐ŸŒฅ๏ธ sun behind large cloud +๐ŸŒฆ๏ธ sun behind rain cloud +๐ŸŒง๏ธ cloud with rain +๐ŸŒจ๏ธ cloud with snow +๐ŸŒฉ๏ธ cloud with lightning +๐ŸŒช๏ธ tornado +๐ŸŒซ๏ธ fog +๐ŸŒฌ๏ธ wind face +๐ŸŒ€ cyclone +๐ŸŒˆ rainbow +๐ŸŒ‚ closed umbrella +โ˜‚๏ธ umbrella +โ˜” umbrella with rain drops +โ›ฑ๏ธ umbrella on ground +โšก high voltage +โ„๏ธ snowflake +โ˜ƒ๏ธ snowman +โ›„ snowman without snow +โ˜„๏ธ comet +๐Ÿ”ฅ fire +๐Ÿ’ง droplet +๐ŸŒŠ water wave +๐ŸŽƒ jack-o-lantern +๐ŸŽ„ Christmas tree +๐ŸŽ† fireworks +๐ŸŽ‡ sparkler +๐Ÿงจ firecracker +โœจ sparkles +๐ŸŽˆ balloon +๐ŸŽ‰ party popper +๐ŸŽŠ confetti ball +๐ŸŽ‹ tanabata tree +๐ŸŽ pine decoration +๐ŸŽŽ Japanese dolls +๐ŸŽ carp streamer +๐ŸŽ wind chime +๐ŸŽ‘ moon viewing ceremony +๐Ÿงง red envelope +๐ŸŽ€ ribbon +๐ŸŽ wrapped gift +๐ŸŽ—๏ธ reminder ribbon +๐ŸŽŸ๏ธ admission tickets +๐ŸŽซ ticket +๐ŸŽ–๏ธ military medal +๐Ÿ† trophy +๐Ÿ… sports medal +๐Ÿฅ‡ 1st place medal +๐Ÿฅˆ 2nd place medal +๐Ÿฅ‰ 3rd place medal +โšฝ soccer ball +โšพ baseball +๐ŸฅŽ softball +๐Ÿ€ basketball +๐Ÿ volleyball +๐Ÿˆ american football +๐Ÿ‰ rugby football +๐ŸŽพ tennis +๐Ÿฅ flying disc +๐ŸŽณ bowling +๐Ÿ cricket game +๐Ÿ‘ field hockey +๐Ÿ’ ice hockey +๐Ÿฅ lacrosse +๐Ÿ“ ping pong +๐Ÿธ badminton +๐ŸฅŠ boxing glove +๐Ÿฅ‹ martial arts uniform +๐Ÿฅ… goal net +โ›ณ flag in hole +โ›ธ๏ธ ice skate +๐ŸŽฃ fishing pole +๐Ÿคฟ diving mask +๐ŸŽฝ running shirt +๐ŸŽฟ skis +๐Ÿ›ท sled +๐ŸฅŒ curling stone +๐ŸŽฏ bullseye +๐Ÿช€ yo-yo +๐Ÿช kite +๐ŸŽฑ pool 8 ball +๐Ÿ”ฎ crystal ball +๐Ÿช„ magic wand +๐Ÿงฟ nazar amulet +๐Ÿชฌ hamsa +๐ŸŽฎ video game +๐Ÿ•น๏ธ joystick +๐ŸŽฐ slot machine +๐ŸŽฒ game die +๐Ÿงฉ puzzle piece +๐Ÿงธ teddy bear +๐Ÿช… piรฑata +๐Ÿชฉ mirror ball +๐Ÿช† nesting dolls +โ™ ๏ธ spade suit +โ™ฅ๏ธ heart suit +โ™ฆ๏ธ diamond suit +โ™ฃ๏ธ club suit +โ™Ÿ๏ธ chess pawn +๐Ÿƒ joker +๐Ÿ€„ mahjong red dragon +๐ŸŽด flower playing cards +๐ŸŽญ performing arts +๐Ÿ–ผ๏ธ framed picture +๐ŸŽจ artist palette +๐Ÿงต thread +๐Ÿชก sewing needle +๐Ÿงถ yarn +๐Ÿชข knot +๐Ÿ‘“ glasses +๐Ÿ•ถ๏ธ sunglasses +๐Ÿฅฝ goggles +๐Ÿฅผ lab coat +๐Ÿฆบ safety vest +๐Ÿ‘” necktie +๐Ÿ‘• t-shirt +๐Ÿ‘– jeans +๐Ÿงฃ scarf +๐Ÿงค gloves +๐Ÿงฅ coat +๐Ÿงฆ socks +๐Ÿ‘— dress +๐Ÿ‘˜ kimono +๐Ÿฅป sari +๐Ÿฉฑ one-piece swimsuit +๐Ÿฉฒ briefs +๐Ÿฉณ shorts +๐Ÿ‘™ bikini +๐Ÿ‘š womanโ€™s clothes +๐Ÿ‘› purse +๐Ÿ‘œ handbag +๐Ÿ‘ clutch bag +๐Ÿ›๏ธ shopping bags +๐ŸŽ’ backpack +๐Ÿฉด thong sandal +๐Ÿ‘ž manโ€™s shoe +๐Ÿ‘Ÿ running shoe +๐Ÿฅพ hiking boot +๐Ÿฅฟ flat shoe +๐Ÿ‘  high-heeled shoe +๐Ÿ‘ก womanโ€™s sandal +๐Ÿฉฐ ballet shoes +๐Ÿ‘ข womanโ€™s boot +๐Ÿ‘‘ crown +๐Ÿ‘’ womanโ€™s hat +๐ŸŽฉ top hat +๐ŸŽ“ graduation cap +๐Ÿงข billed cap +๐Ÿช– military helmet +โ›‘๏ธ rescue workerโ€™s helmet +๐Ÿ“ฟ prayer beads +๐Ÿ’„ lipstick +๐Ÿ’ ring +๐Ÿ’Ž gem stone +๐Ÿ”‡ muted speaker +๐Ÿ”ˆ speaker low volume +๐Ÿ”‰ speaker medium volume +๐Ÿ”Š speaker high volume +๐Ÿ“ข loudspeaker +๐Ÿ“ฃ megaphone +๐Ÿ“ฏ postal horn +๐Ÿ”” bell +๐Ÿ”• bell with slash +๐ŸŽผ musical score +๐ŸŽต musical note +๐ŸŽถ musical notes +๐ŸŽ™๏ธ studio microphone +๐ŸŽš๏ธ level slider +๐ŸŽ›๏ธ control knobs +๐ŸŽค microphone +๐ŸŽง headphone +๐Ÿ“ป radio +๐ŸŽท saxophone +๐Ÿช— accordion +๐ŸŽธ guitar +๐ŸŽน musical keyboard +๐ŸŽบ trumpet +๐ŸŽป violin +๐Ÿช• banjo +๐Ÿฅ drum +๐Ÿช˜ long drum +๐Ÿ“ฑ mobile phone +๐Ÿ“ฒ mobile phone with arrow +โ˜Ž๏ธ telephone +๐Ÿ“ž telephone receiver +๐Ÿ“Ÿ pager +๐Ÿ“  fax machine +๐Ÿ”‹ battery +๐Ÿชซ low battery +๐Ÿ”Œ electric plug +๐Ÿ’ป laptop +๐Ÿ–ฅ๏ธ desktop computer +๐Ÿ–จ๏ธ printer +โŒจ๏ธ keyboard +๐Ÿ–ฑ๏ธ computer mouse +๐Ÿ–ฒ๏ธ trackball +๐Ÿ’ฝ computer disk +๐Ÿ’พ floppy disk +๐Ÿ’ฟ optical disk +๐Ÿ“€ dvd +๐Ÿงฎ abacus +๐ŸŽฅ movie camera +๐ŸŽž๏ธ film frames +๐Ÿ“ฝ๏ธ film projector +๐ŸŽฌ clapper board +๐Ÿ“บ television +๐Ÿ“ท camera +๐Ÿ“ธ camera with flash +๐Ÿ“น video camera +๐Ÿ“ผ videocassette +๐Ÿ” magnifying glass tilted left +๐Ÿ”Ž magnifying glass tilted right +๐Ÿ•ฏ๏ธ candle +๐Ÿ’ก light bulb +๐Ÿ”ฆ flashlight +๐Ÿฎ red paper lantern +๐Ÿช” diya lamp +๐Ÿ“” notebook with decorative cover +๐Ÿ“• closed book +๐Ÿ“– open book +๐Ÿ“— green book +๐Ÿ“˜ blue book +๐Ÿ“™ orange book +๐Ÿ“š books +๐Ÿ““ notebook +๐Ÿ“’ ledger +๐Ÿ“ƒ page with curl +๐Ÿ“œ scroll +๐Ÿ“„ page facing up +๐Ÿ“ฐ newspaper +๐Ÿ—ž๏ธ rolled-up newspaper +๐Ÿ“‘ bookmark tabs +๐Ÿ”– bookmark +๐Ÿท๏ธ label +๐Ÿ’ฐ money bag +๐Ÿช™ coin +๐Ÿ’ด yen banknote +๐Ÿ’ต dollar banknote +๐Ÿ’ถ euro banknote +๐Ÿ’ท pound banknote +๐Ÿ’ธ money with wings +๐Ÿ’ณ credit card +๐Ÿงพ receipt +๐Ÿ’น chart increasing with yen +โœ‰๏ธ envelope +๐Ÿ“ง e-mail +๐Ÿ“จ incoming envelope +๐Ÿ“ฉ envelope with arrow +๐Ÿ“ค outbox tray +๐Ÿ“ฅ inbox tray +๐Ÿ“ฆ package +๐Ÿ“ซ closed mailbox with raised flag +๐Ÿ“ช closed mailbox with lowered flag +๐Ÿ“ฌ open mailbox with raised flag +๐Ÿ“ญ open mailbox with lowered flag +๐Ÿ“ฎ postbox +๐Ÿ—ณ๏ธ ballot box with ballot +โœ๏ธ pencil +โœ’๏ธ black nib +๐Ÿ–‹๏ธ fountain pen +๐Ÿ–Š๏ธ pen +๐Ÿ–Œ๏ธ paintbrush +๐Ÿ–๏ธ crayon +๐Ÿ“ memo +๐Ÿ’ผ briefcase +๐Ÿ“ file folder +๐Ÿ“‚ open file folder +๐Ÿ—‚๏ธ card index dividers +๐Ÿ“… calendar +๐Ÿ“† tear-off calendar +๐Ÿ—’๏ธ spiral notepad +๐Ÿ—“๏ธ spiral calendar +๐Ÿ“‡ card index +๐Ÿ“ˆ chart increasing +๐Ÿ“‰ chart decreasing +๐Ÿ“Š bar chart +๐Ÿ“‹ clipboard +๐Ÿ“Œ pushpin +๐Ÿ“ round pushpin +๐Ÿ“Ž paperclip +๐Ÿ–‡๏ธ linked paperclips +๐Ÿ“ straight ruler +๐Ÿ“ triangular ruler +โœ‚๏ธ scissors +๐Ÿ—ƒ๏ธ card file box +๐Ÿ—„๏ธ file cabinet +๐Ÿ—‘๏ธ wastebasket +๐Ÿ”’ locked +๐Ÿ”“ unlocked +๐Ÿ” locked with pen +๐Ÿ” locked with key +๐Ÿ”‘ key +๐Ÿ—๏ธ old key +๐Ÿ”จ hammer +๐Ÿช“ axe +โ›๏ธ pick +โš’๏ธ hammer and pick +๐Ÿ› ๏ธ hammer and wrench +๐Ÿ—ก๏ธ dagger +โš”๏ธ crossed swords +๐Ÿ”ซ water pistol +๐Ÿชƒ boomerang +๐Ÿน bow and arrow +๐Ÿ›ก๏ธ shield +๐Ÿชš carpentry saw +๐Ÿ”ง wrench +๐Ÿช› screwdriver +๐Ÿ”ฉ nut and bolt +โš™๏ธ gear +๐Ÿ—œ๏ธ clamp +โš–๏ธ balance scale +๐Ÿฆฏ white cane +๐Ÿ”— link +โ›“๏ธ chains +๐Ÿช hook +๐Ÿงฐ toolbox +๐Ÿงฒ magnet +๐Ÿชœ ladder +โš—๏ธ alembic +๐Ÿงช test tube +๐Ÿงซ petri dish +๐Ÿงฌ dna +๐Ÿ”ฌ microscope +๐Ÿ”ญ telescope +๐Ÿ“ก satellite antenna +๐Ÿ’‰ syringe +๐Ÿฉธ drop of blood +๐Ÿ’Š pill +๐Ÿฉน adhesive bandage +๐Ÿฉผ crutch +๐Ÿฉบ stethoscope +๐Ÿฉป x-ray +๐Ÿšช door +๐Ÿ›— elevator +๐Ÿชž mirror +๐ŸชŸ window +๐Ÿ›๏ธ bed +๐Ÿ›‹๏ธ couch and lamp +๐Ÿช‘ chair +๐Ÿšฝ toilet +๐Ÿช  plunger +๐Ÿšฟ shower +๐Ÿ› bathtub +๐Ÿชค mouse trap +๐Ÿช’ razor +๐Ÿงด lotion bottle +๐Ÿงท safety pin +๐Ÿงน broom +๐Ÿงบ basket +๐Ÿงป roll of paper +๐Ÿชฃ bucket +๐Ÿงผ soap +๐Ÿซง bubbles +๐Ÿชฅ toothbrush +๐Ÿงฝ sponge +๐Ÿงฏ fire extinguisher +๐Ÿ›’ shopping cart +๐Ÿšฌ cigarette +โšฐ๏ธ coffin +๐Ÿชฆ headstone +โšฑ๏ธ funeral urn +๐Ÿ—ฟ moai +๐Ÿชง placard +๐Ÿชช identification card +๐Ÿง ATM sign +๐Ÿšฎ litter in bin sign +๐Ÿšฐ potable water +โ™ฟ wheelchair symbol +๐Ÿšน menโ€™s room +๐Ÿšบ womenโ€™s room +๐Ÿšป restroom +๐Ÿšผ baby symbol +๐Ÿšพ water closet +๐Ÿ›‚ passport control +๐Ÿ›ƒ customs +๐Ÿ›„ baggage claim +๐Ÿ›… left luggage +โš ๏ธ warning +๐Ÿšธ children crossing +โ›” no entry +๐Ÿšซ prohibited +๐Ÿšณ no bicycles +๐Ÿšญ no smoking +๐Ÿšฏ no littering +๐Ÿšฑ non-potable water +๐Ÿšท no pedestrians +๐Ÿ“ต no mobile phones +๐Ÿ”ž no one under eighteen +โ˜ข๏ธ radioactive +โ˜ฃ๏ธ biohazard +โฌ†๏ธ up arrow +โ†—๏ธ up-right arrow +โžก๏ธ right arrow +โ†˜๏ธ down-right arrow +โฌ‡๏ธ down arrow +โ†™๏ธ down-left arrow +โฌ…๏ธ left arrow +โ†–๏ธ up-left arrow +โ†•๏ธ up-down arrow +โ†”๏ธ left-right arrow +โ†ฉ๏ธ right arrow curving left +โ†ช๏ธ left arrow curving right +โคด๏ธ right arrow curving up +โคต๏ธ right arrow curving down +๐Ÿ”ƒ clockwise vertical arrows +๐Ÿ”„ counterclockwise arrows button +๐Ÿ”™ BACK arrow +๐Ÿ”š END arrow +๐Ÿ”› ON! arrow +๐Ÿ”œ SOON arrow +๐Ÿ” TOP arrow +๐Ÿ› place of worship +โš›๏ธ atom symbol +๐Ÿ•‰๏ธ om +โœก๏ธ star of David +โ˜ธ๏ธ wheel of dharma +โ˜ฏ๏ธ yin yang +โœ๏ธ latin cross +โ˜ฆ๏ธ orthodox cross +โ˜ช๏ธ star and crescent +โ˜ฎ๏ธ peace symbol +๐Ÿ•Ž menorah +๐Ÿ”ฏ dotted six-pointed star +โ™ˆ Aries +โ™‰ Taurus +โ™Š Gemini +โ™‹ Cancer +โ™Œ Leo +โ™ Virgo +โ™Ž Libra +โ™ Scorpio +โ™ Sagittarius +โ™‘ Capricorn +โ™’ Aquarius +โ™“ Pisces +โ›Ž Ophiuchus +๐Ÿ”€ shuffle tracks button +๐Ÿ” repeat button +๐Ÿ”‚ repeat single button +โ–ถ๏ธ play button +โฉ fast-forward button +โญ๏ธ next track button +โฏ๏ธ play or pause button +โ—€๏ธ reverse button +โช fast reverse button +โฎ๏ธ last track button +๐Ÿ”ผ upwards button +โซ fast up button +๐Ÿ”ฝ downwards button +โฌ fast down button +โธ๏ธ pause button +โน๏ธ stop button +โบ๏ธ record button +โ๏ธ eject button +๐ŸŽฆ cinema +๐Ÿ”… dim button +๐Ÿ”† bright button +๐Ÿ“ถ antenna bars +๐Ÿ“ณ vibration mode +๐Ÿ“ด mobile phone off +โ™€๏ธ female sign +โ™‚๏ธ male sign +โšง๏ธ transgender symbol +โœ–๏ธ multiply +โž• plus +โž– minus +โž— divide +๐ŸŸฐ heavy equals sign +โ™พ๏ธ infinity +โ€ผ๏ธ double exclamation mark +โ‰๏ธ exclamation question mark +โ“ red question mark +โ” white question mark +โ• white exclamation mark +โ— red exclamation mark +ใ€ฐ๏ธ wavy dash +๐Ÿ’ฑ currency exchange +๐Ÿ’ฒ heavy dollar sign +โš•๏ธ medical symbol +โ™ป๏ธ recycling symbol +โšœ๏ธ fleur-de-lis +๐Ÿ”ฑ trident emblem +๐Ÿ“› name badge +๐Ÿ”ฐ Japanese symbol for beginner +โญ• hollow red circle +โœ… check mark button +โ˜‘๏ธ check box with check +โœ”๏ธ check mark +โŒ cross mark +โŽ cross mark button +โžฐ curly loop +โžฟ double curly loop +ใ€ฝ๏ธ part alternation mark +โœณ๏ธ eight-spoked asterisk +โœด๏ธ eight-pointed star +โ‡๏ธ sparkle +ยฉ๏ธ copyright +ยฎ๏ธ registered +โ„ข๏ธ trade mark +#๏ธโƒฃ keycap: # +*๏ธโƒฃ keycap: * +0๏ธโƒฃ keycap: 0 +1๏ธโƒฃ keycap: 1 +2๏ธโƒฃ keycap: 2 +3๏ธโƒฃ keycap: 3 +4๏ธโƒฃ keycap: 4 +5๏ธโƒฃ keycap: 5 +6๏ธโƒฃ keycap: 6 +7๏ธโƒฃ keycap: 7 +8๏ธโƒฃ keycap: 8 +9๏ธโƒฃ keycap: 9 +๐Ÿ”Ÿ keycap: 10 +๐Ÿ”  input latin uppercase +๐Ÿ”ก input latin lowercase +๐Ÿ”ข input numbers +๐Ÿ”ฃ input symbols +๐Ÿ”ค input latin letters +๐Ÿ…ฐ๏ธ A button (blood type) +๐Ÿ†Ž AB button (blood type) +๐Ÿ…ฑ๏ธ B button (blood type) +๐Ÿ†‘ CL button +๐Ÿ†’ COOL button +๐Ÿ†“ FREE button +โ„น๏ธ information +๐Ÿ†” ID button +โ“‚๏ธ circled M +๐Ÿ†• NEW button +๐Ÿ†– NG button +๐Ÿ…พ๏ธ O button (blood type) +๐Ÿ†— OK button +๐Ÿ…ฟ๏ธ P button +๐Ÿ†˜ SOS button +๐Ÿ†™ UP! button +๐Ÿ†š VS button +๐Ÿˆ Japanese โ€œhereโ€ button +๐Ÿˆ‚๏ธ Japanese โ€œservice chargeโ€ button +๐Ÿˆท๏ธ Japanese โ€œmonthly amountโ€ button +๐Ÿˆถ Japanese โ€œnot free of chargeโ€ button +๐Ÿˆฏ Japanese โ€œreservedโ€ button +๐Ÿ‰ Japanese โ€œbargainโ€ button +๐Ÿˆน Japanese โ€œdiscountโ€ button +๐Ÿˆš Japanese โ€œfree of chargeโ€ button +๐Ÿˆฒ Japanese โ€œprohibitedโ€ button +๐Ÿ‰‘ Japanese โ€œacceptableโ€ button +๐Ÿˆธ Japanese โ€œapplicationโ€ button +๐Ÿˆด Japanese โ€œpassing gradeโ€ button +๐Ÿˆณ Japanese โ€œvacancyโ€ button +ใŠ—๏ธ Japanese โ€œcongratulationsโ€ button +ใŠ™๏ธ Japanese โ€œsecretโ€ button +๐Ÿˆบ Japanese โ€œopen for businessโ€ button +๐Ÿˆต Japanese โ€œno vacancyโ€ button +๐Ÿ”ด red circle +๐ŸŸ  orange circle +๐ŸŸก yellow circle +๐ŸŸข green circle +๐Ÿ”ต blue circle +๐ŸŸฃ purple circle +๐ŸŸค brown circle +โšซ black circle +โšช white circle +๐ŸŸฅ red square +๐ŸŸง orange square +๐ŸŸจ yellow square +๐ŸŸฉ green square +๐ŸŸฆ blue square +๐ŸŸช purple square +๐ŸŸซ brown square +โฌ› black large square +โฌœ white large square +โ—ผ๏ธ black medium square +โ—ป๏ธ white medium square +โ—พ black medium-small square +โ—ฝ white medium-small square +โ–ช๏ธ black small square +โ–ซ๏ธ white small square +๐Ÿ”ถ large orange diamond +๐Ÿ”ท large blue diamond +๐Ÿ”ธ small orange diamond +๐Ÿ”น small blue diamond +๐Ÿ”บ red triangle pointed up +๐Ÿ”ป red triangle pointed down +๐Ÿ’  diamond with a dot +๐Ÿ”˜ radio button +๐Ÿ”ณ white square button +๐Ÿ”ฒ black square button +๐Ÿ chequered flag +๐Ÿšฉ triangular flag +๐ŸŽŒ crossed flags +๐Ÿด black flag +๐Ÿณ๏ธ white flag +๐Ÿ‡ฆ๐Ÿ‡จ flag: Ascension Island +๐Ÿ‡ฆ๐Ÿ‡ฉ flag: Andorra +๐Ÿ‡ฆ๐Ÿ‡ช flag: United Arab Emirates +๐Ÿ‡ฆ๐Ÿ‡ซ flag: Afghanistan +๐Ÿ‡ฆ๐Ÿ‡ฌ flag: Antigua & Barbuda +๐Ÿ‡ฆ๐Ÿ‡ฎ flag: Anguilla +๐Ÿ‡ฆ๐Ÿ‡ฑ flag: Albania +๐Ÿ‡ฆ๐Ÿ‡ฒ flag: Armenia +๐Ÿ‡ฆ๐Ÿ‡ด flag: Angola +๐Ÿ‡ฆ๐Ÿ‡ถ flag: Antarctica +๐Ÿ‡ฆ๐Ÿ‡ท flag: Argentina +๐Ÿ‡ฆ๐Ÿ‡ธ flag: American Samoa +๐Ÿ‡ฆ๐Ÿ‡น flag: Austria +๐Ÿ‡ฆ๐Ÿ‡บ flag: Australia +๐Ÿ‡ฆ๐Ÿ‡ผ flag: Aruba +๐Ÿ‡ฆ๐Ÿ‡ฝ flag: ร…land Islands +๐Ÿ‡ฆ๐Ÿ‡ฟ flag: Azerbaijan +๐Ÿ‡ง๐Ÿ‡ฆ flag: Bosnia & Herzegovina +๐Ÿ‡ง๐Ÿ‡ง flag: Barbados +๐Ÿ‡ง๐Ÿ‡ฉ flag: Bangladesh +๐Ÿ‡ง๐Ÿ‡ช flag: Belgium +๐Ÿ‡ง๐Ÿ‡ซ flag: Burkina Faso +๐Ÿ‡ง๐Ÿ‡ฌ flag: Bulgaria +๐Ÿ‡ง๐Ÿ‡ญ flag: Bahrain +๐Ÿ‡ง๐Ÿ‡ฎ flag: Burundi +๐Ÿ‡ง๐Ÿ‡ฏ flag: Benin +๐Ÿ‡ง๐Ÿ‡ฑ flag: St. Barthรฉlemy +๐Ÿ‡ง๐Ÿ‡ฒ flag: Bermuda +๐Ÿ‡ง๐Ÿ‡ณ flag: Brunei +๐Ÿ‡ง๐Ÿ‡ด flag: Bolivia +๐Ÿ‡ง๐Ÿ‡ถ flag: Caribbean Netherlands +๐Ÿ‡ง๐Ÿ‡ท flag: Brazil +๐Ÿ‡ง๐Ÿ‡ธ flag: Bahamas +๐Ÿ‡ง๐Ÿ‡น flag: Bhutan +๐Ÿ‡ง๐Ÿ‡ป flag: Bouvet Island +๐Ÿ‡ง๐Ÿ‡ผ flag: Botswana +๐Ÿ‡ง๐Ÿ‡พ flag: Belarus +๐Ÿ‡ง๐Ÿ‡ฟ flag: Belize +๐Ÿ‡จ๐Ÿ‡ฆ flag: Canada +๐Ÿ‡จ๐Ÿ‡จ flag: Cocos (Keeling) Islands +๐Ÿ‡จ๐Ÿ‡ฉ flag: Congo - Kinshasa +๐Ÿ‡จ๐Ÿ‡ซ flag: Central African Republic +๐Ÿ‡จ๐Ÿ‡ฌ flag: Congo - Brazzaville +๐Ÿ‡จ๐Ÿ‡ญ flag: Switzerland +๐Ÿ‡จ๐Ÿ‡ฎ flag: Cรดte dโ€™Ivoire +๐Ÿ‡จ๐Ÿ‡ฐ flag: Cook Islands +๐Ÿ‡จ๐Ÿ‡ฑ flag: Chile +๐Ÿ‡จ๐Ÿ‡ฒ flag: Cameroon +๐Ÿ‡จ๐Ÿ‡ณ flag: China +๐Ÿ‡จ๐Ÿ‡ด flag: Colombia +๐Ÿ‡จ๐Ÿ‡ต flag: Clipperton Island +๐Ÿ‡จ๐Ÿ‡ท flag: Costa Rica +๐Ÿ‡จ๐Ÿ‡บ flag: Cuba +๐Ÿ‡จ๐Ÿ‡ป flag: Cape Verde +๐Ÿ‡จ๐Ÿ‡ผ flag: Curaรงao +๐Ÿ‡จ๐Ÿ‡ฝ flag: Christmas Island +๐Ÿ‡จ๐Ÿ‡พ flag: Cyprus +๐Ÿ‡จ๐Ÿ‡ฟ flag: Czechia +๐Ÿ‡ฉ๐Ÿ‡ช flag: Germany +๐Ÿ‡ฉ๐Ÿ‡ฌ flag: Diego Garcia +๐Ÿ‡ฉ๐Ÿ‡ฏ flag: Djibouti +๐Ÿ‡ฉ๐Ÿ‡ฐ flag: Denmark +๐Ÿ‡ฉ๐Ÿ‡ฒ flag: Dominica +๐Ÿ‡ฉ๐Ÿ‡ด flag: Dominican Republic +๐Ÿ‡ฉ๐Ÿ‡ฟ flag: Algeria +๐Ÿ‡ช๐Ÿ‡ฆ flag: Ceuta & Melilla +๐Ÿ‡ช๐Ÿ‡จ flag: Ecuador +๐Ÿ‡ช๐Ÿ‡ช flag: Estonia +๐Ÿ‡ช๐Ÿ‡ฌ flag: Egypt +๐Ÿ‡ช๐Ÿ‡ญ flag: Western Sahara +๐Ÿ‡ช๐Ÿ‡ท flag: Eritrea +๐Ÿ‡ช๐Ÿ‡ธ flag: Spain +๐Ÿ‡ช๐Ÿ‡น flag: Ethiopia +๐Ÿ‡ช๐Ÿ‡บ flag: European Union +๐Ÿ‡ซ๐Ÿ‡ฎ flag: Finland +๐Ÿ‡ซ๐Ÿ‡ฏ flag: Fiji +๐Ÿ‡ซ๐Ÿ‡ฐ flag: Falkland Islands +๐Ÿ‡ซ๐Ÿ‡ฒ flag: Micronesia +๐Ÿ‡ซ๐Ÿ‡ด flag: Faroe Islands +๐Ÿ‡ซ๐Ÿ‡ท flag: France +๐Ÿ‡ฌ๐Ÿ‡ฆ flag: Gabon +๐Ÿ‡ฌ๐Ÿ‡ง flag: United Kingdom +๐Ÿ‡ฌ๐Ÿ‡ฉ flag: Grenada +๐Ÿ‡ฌ๐Ÿ‡ช flag: Georgia +๐Ÿ‡ฌ๐Ÿ‡ซ flag: French Guiana +๐Ÿ‡ฌ๐Ÿ‡ฌ flag: Guernsey +๐Ÿ‡ฌ๐Ÿ‡ญ flag: Ghana +๐Ÿ‡ฌ๐Ÿ‡ฎ flag: Gibraltar +๐Ÿ‡ฌ๐Ÿ‡ฑ flag: Greenland +๐Ÿ‡ฌ๐Ÿ‡ฒ flag: Gambia +๐Ÿ‡ฌ๐Ÿ‡ณ flag: Guinea +๐Ÿ‡ฌ๐Ÿ‡ต flag: Guadeloupe +๐Ÿ‡ฌ๐Ÿ‡ถ flag: Equatorial Guinea +๐Ÿ‡ฌ๐Ÿ‡ท flag: Greece +๐Ÿ‡ฌ๐Ÿ‡ธ flag: South Georgia & South Sandwich Islands +๐Ÿ‡ฌ๐Ÿ‡น flag: Guatemala +๐Ÿ‡ฌ๐Ÿ‡บ flag: Guam +๐Ÿ‡ฌ๐Ÿ‡ผ flag: Guinea-Bissau +๐Ÿ‡ฌ๐Ÿ‡พ flag: Guyana +๐Ÿ‡ญ๐Ÿ‡ฐ flag: Hong Kong SAR China +๐Ÿ‡ญ๐Ÿ‡ฒ flag: Heard & McDonald Islands +๐Ÿ‡ญ๐Ÿ‡ณ flag: Honduras +๐Ÿ‡ญ๐Ÿ‡ท flag: Croatia +๐Ÿ‡ญ๐Ÿ‡น flag: Haiti +๐Ÿ‡ญ๐Ÿ‡บ flag: Hungary +๐Ÿ‡ฎ๐Ÿ‡จ flag: Canary Islands +๐Ÿ‡ฎ๐Ÿ‡ฉ flag: Indonesia +๐Ÿ‡ฎ๐Ÿ‡ช flag: Ireland +๐Ÿ‡ฎ๐Ÿ‡ฑ flag: Israel +๐Ÿ‡ฎ๐Ÿ‡ฒ flag: Isle of Man +๐Ÿ‡ฎ๐Ÿ‡ณ flag: India +๐Ÿ‡ฎ๐Ÿ‡ด flag: British Indian Ocean Territory +๐Ÿ‡ฎ๐Ÿ‡ถ flag: Iraq +๐Ÿ‡ฎ๐Ÿ‡ท flag: Iran +๐Ÿ‡ฎ๐Ÿ‡ธ flag: Iceland +๐Ÿ‡ฎ๐Ÿ‡น flag: Italy +๐Ÿ‡ฏ๐Ÿ‡ช flag: Jersey +๐Ÿ‡ฏ๐Ÿ‡ฒ flag: Jamaica +๐Ÿ‡ฏ๐Ÿ‡ด flag: Jordan +๐Ÿ‡ฏ๐Ÿ‡ต flag: Japan +๐Ÿ‡ฐ๐Ÿ‡ช flag: Kenya +๐Ÿ‡ฐ๐Ÿ‡ฌ flag: Kyrgyzstan +๐Ÿ‡ฐ๐Ÿ‡ญ flag: Cambodia +๐Ÿ‡ฐ๐Ÿ‡ฎ flag: Kiribati +๐Ÿ‡ฐ๐Ÿ‡ฒ flag: Comoros +๐Ÿ‡ฐ๐Ÿ‡ณ flag: St. Kitts & Nevis +๐Ÿ‡ฐ๐Ÿ‡ต flag: North Korea +๐Ÿ‡ฐ๐Ÿ‡ท flag: South Korea +๐Ÿ‡ฐ๐Ÿ‡ผ flag: Kuwait +๐Ÿ‡ฐ๐Ÿ‡พ flag: Cayman Islands +๐Ÿ‡ฐ๐Ÿ‡ฟ flag: Kazakhstan +๐Ÿ‡ฑ๐Ÿ‡ฆ flag: Laos +๐Ÿ‡ฑ๐Ÿ‡ง flag: Lebanon +๐Ÿ‡ฑ๐Ÿ‡จ flag: St. Lucia +๐Ÿ‡ฑ๐Ÿ‡ฎ flag: Liechtenstein +๐Ÿ‡ฑ๐Ÿ‡ฐ flag: Sri Lanka +๐Ÿ‡ฑ๐Ÿ‡ท flag: Liberia +๐Ÿ‡ฑ๐Ÿ‡ธ flag: Lesotho +๐Ÿ‡ฑ๐Ÿ‡น flag: Lithuania +๐Ÿ‡ฑ๐Ÿ‡บ flag: Luxembourg +๐Ÿ‡ฑ๐Ÿ‡ป flag: Latvia +๐Ÿ‡ฑ๐Ÿ‡พ flag: Libya +๐Ÿ‡ฒ๐Ÿ‡ฆ flag: Morocco +๐Ÿ‡ฒ๐Ÿ‡จ flag: Monaco +๐Ÿ‡ฒ๐Ÿ‡ฉ flag: Moldova +๐Ÿ‡ฒ๐Ÿ‡ช flag: Montenegro +๐Ÿ‡ฒ๐Ÿ‡ซ flag: St. Martin +๐Ÿ‡ฒ๐Ÿ‡ฌ flag: Madagascar +๐Ÿ‡ฒ๐Ÿ‡ญ flag: Marshall Islands +๐Ÿ‡ฒ๐Ÿ‡ฐ flag: North Macedonia +๐Ÿ‡ฒ๐Ÿ‡ฑ flag: Mali +๐Ÿ‡ฒ๐Ÿ‡ฒ flag: Myanmar (Burma) +๐Ÿ‡ฒ๐Ÿ‡ณ flag: Mongolia +๐Ÿ‡ฒ๐Ÿ‡ด flag: Macao SAR China +๐Ÿ‡ฒ๐Ÿ‡ต flag: Northern Mariana Islands +๐Ÿ‡ฒ๐Ÿ‡ถ flag: Martinique +๐Ÿ‡ฒ๐Ÿ‡ท flag: Mauritania +๐Ÿ‡ฒ๐Ÿ‡ธ flag: Montserrat +๐Ÿ‡ฒ๐Ÿ‡น flag: Malta +๐Ÿ‡ฒ๐Ÿ‡บ flag: Mauritius +๐Ÿ‡ฒ๐Ÿ‡ป flag: Maldives +๐Ÿ‡ฒ๐Ÿ‡ผ flag: Malawi +๐Ÿ‡ฒ๐Ÿ‡ฝ flag: Mexico +๐Ÿ‡ฒ๐Ÿ‡พ flag: Malaysia +๐Ÿ‡ฒ๐Ÿ‡ฟ flag: Mozambique +๐Ÿ‡ณ๐Ÿ‡ฆ flag: Namibia +๐Ÿ‡ณ๐Ÿ‡จ flag: New Caledonia +๐Ÿ‡ณ๐Ÿ‡ช flag: Niger +๐Ÿ‡ณ๐Ÿ‡ซ flag: Norfolk Island +๐Ÿ‡ณ๐Ÿ‡ฌ flag: Nigeria +๐Ÿ‡ณ๐Ÿ‡ฎ flag: Nicaragua +๐Ÿ‡ณ๐Ÿ‡ฑ flag: Netherlands +๐Ÿ‡ณ๐Ÿ‡ด flag: Norway +๐Ÿ‡ณ๐Ÿ‡ต flag: Nepal +๐Ÿ‡ณ๐Ÿ‡ท flag: Nauru +๐Ÿ‡ณ๐Ÿ‡บ flag: Niue +๐Ÿ‡ณ๐Ÿ‡ฟ flag: New Zealand +๐Ÿ‡ด๐Ÿ‡ฒ flag: Oman +๐Ÿ‡ต๐Ÿ‡ฆ flag: Panama +๐Ÿ‡ต๐Ÿ‡ช flag: Peru +๐Ÿ‡ต๐Ÿ‡ซ flag: French Polynesia +๐Ÿ‡ต๐Ÿ‡ฌ flag: Papua New Guinea +๐Ÿ‡ต๐Ÿ‡ญ flag: Philippines +๐Ÿ‡ต๐Ÿ‡ฐ flag: Pakistan +๐Ÿ‡ต๐Ÿ‡ฑ flag: Poland +๐Ÿ‡ต๐Ÿ‡ฒ flag: St. Pierre & Miquelon +๐Ÿ‡ต๐Ÿ‡ณ flag: Pitcairn Islands +๐Ÿ‡ต๐Ÿ‡ท flag: Puerto Rico +๐Ÿ‡ต๐Ÿ‡ธ flag: Palestinian Territories +๐Ÿ‡ต๐Ÿ‡น flag: Portugal +๐Ÿ‡ต๐Ÿ‡ผ flag: Palau +๐Ÿ‡ต๐Ÿ‡พ flag: Paraguay +๐Ÿ‡ถ๐Ÿ‡ฆ flag: Qatar +๐Ÿ‡ท๐Ÿ‡ช flag: Rรฉunion +๐Ÿ‡ท๐Ÿ‡ด flag: Romania +๐Ÿ‡ท๐Ÿ‡ธ flag: Serbia +๐Ÿ‡ท๐Ÿ‡บ flag: Russia +๐Ÿ‡ท๐Ÿ‡ผ flag: Rwanda +๐Ÿ‡ธ๐Ÿ‡ฆ flag: Saudi Arabia +๐Ÿ‡ธ๐Ÿ‡ง flag: Solomon Islands +๐Ÿ‡ธ๐Ÿ‡จ flag: Seychelles +๐Ÿ‡ธ๐Ÿ‡ฉ flag: Sudan +๐Ÿ‡ธ๐Ÿ‡ช flag: Sweden +๐Ÿ‡ธ๐Ÿ‡ฌ flag: Singapore +๐Ÿ‡ธ๐Ÿ‡ญ flag: St. Helena +๐Ÿ‡ธ๐Ÿ‡ฎ flag: Slovenia +๐Ÿ‡ธ๐Ÿ‡ฏ flag: Svalbard & Jan Mayen +๐Ÿ‡ธ๐Ÿ‡ฐ flag: Slovakia +๐Ÿ‡ธ๐Ÿ‡ฑ flag: Sierra Leone +๐Ÿ‡ธ๐Ÿ‡ฒ flag: San Marino +๐Ÿ‡ธ๐Ÿ‡ณ flag: Senegal +๐Ÿ‡ธ๐Ÿ‡ด flag: Somalia +๐Ÿ‡ธ๐Ÿ‡ท flag: Suriname +๐Ÿ‡ธ๐Ÿ‡ธ flag: South Sudan +๐Ÿ‡ธ๐Ÿ‡น flag: Sรฃo Tomรฉ & Prรญncipe +๐Ÿ‡ธ๐Ÿ‡ป flag: El Salvador +๐Ÿ‡ธ๐Ÿ‡ฝ flag: Sint Maarten +๐Ÿ‡ธ๐Ÿ‡พ flag: Syria +๐Ÿ‡ธ๐Ÿ‡ฟ flag: Eswatini +๐Ÿ‡น๐Ÿ‡ฆ flag: Tristan da Cunha +๐Ÿ‡น๐Ÿ‡จ flag: Turks & Caicos Islands +๐Ÿ‡น๐Ÿ‡ฉ flag: Chad +๐Ÿ‡น๐Ÿ‡ซ flag: French Southern Territories +๐Ÿ‡น๐Ÿ‡ฌ flag: Togo +๐Ÿ‡น๐Ÿ‡ญ flag: Thailand +๐Ÿ‡น๐Ÿ‡ฏ flag: Tajikistan +๐Ÿ‡น๐Ÿ‡ฐ flag: Tokelau +๐Ÿ‡น๐Ÿ‡ฑ flag: Timor-Leste +๐Ÿ‡น๐Ÿ‡ฒ flag: Turkmenistan +๐Ÿ‡น๐Ÿ‡ณ flag: Tunisia +๐Ÿ‡น๐Ÿ‡ด flag: Tonga +๐Ÿ‡น๐Ÿ‡ท flag: Turkey +๐Ÿ‡น๐Ÿ‡น flag: Trinidad & Tobago +๐Ÿ‡น๐Ÿ‡ป flag: Tuvalu +๐Ÿ‡น๐Ÿ‡ผ flag: Taiwan +๐Ÿ‡น๐Ÿ‡ฟ flag: Tanzania +๐Ÿ‡บ๐Ÿ‡ฆ flag: Ukraine +๐Ÿ‡บ๐Ÿ‡ฌ flag: Uganda +๐Ÿ‡บ๐Ÿ‡ฒ flag: U.S. Outlying Islands +๐Ÿ‡บ๐Ÿ‡ณ flag: United Nations +๐Ÿ‡บ๐Ÿ‡ธ flag: United States +๐Ÿ‡บ๐Ÿ‡พ flag: Uruguay +๐Ÿ‡บ๐Ÿ‡ฟ flag: Uzbekistan +๐Ÿ‡ป๐Ÿ‡ฆ flag: Vatican City +๐Ÿ‡ป๐Ÿ‡จ flag: St. Vincent & Grenadines +๐Ÿ‡ป๐Ÿ‡ช flag: Venezuela +๐Ÿ‡ป๐Ÿ‡ฌ flag: British Virgin Islands +๐Ÿ‡ป๐Ÿ‡ฎ flag: U.S. Virgin Islands +๐Ÿ‡ป๐Ÿ‡ณ flag: Vietnam +๐Ÿ‡ป๐Ÿ‡บ flag: Vanuatu +๐Ÿ‡ผ๐Ÿ‡ซ flag: Wallis & Futuna +๐Ÿ‡ผ๐Ÿ‡ธ flag: Samoa +๐Ÿ‡ฝ๐Ÿ‡ฐ flag: Kosovo +๐Ÿ‡พ๐Ÿ‡ช flag: Yemen +๐Ÿ‡พ๐Ÿ‡น flag: Mayotte +๐Ÿ‡ฟ๐Ÿ‡ฆ flag: South Africa +๐Ÿ‡ฟ๐Ÿ‡ฒ flag: Zambia +๐Ÿ‡ฟ๐Ÿ‡ผ flag: Zimbabwe +๐Ÿด๓ ง๓ ข๓ ฅ๓ ฎ๓ ง๓ ฟ flag: England +๐Ÿด๓ ง๓ ข๓ ณ๓ ฃ๓ ด๓ ฟ flag: Scotland +๐Ÿด๓ ง๓ ข๓ ท๓ ฌ๓ ณ๓ ฟ flag: Wales diff --git a/.local/share/larbs/chars/font-awesome b/.local/share/larbs/chars/font-awesome new file mode 100644 index 0000000..3283be3 --- /dev/null +++ b/.local/share/larbs/chars/font-awesome @@ -0,0 +1,1456 @@ +๏‰ฎ 500px; f26e +๏จ accessible-icon; f368 +๏ฉ accusoft; f369 +๏šฏ acquisitions-incorporated; f6af +๏™ ad; f641 +๏Šน address-book; f2b9 +๏Šป address-card; f2bb +๏‚ adjust; f042 +๏…ฐ adn; f170 +๏ช adversal; f36a +๏ซ affiliatetheme; f36b +๏— air-freshener; f5d0 +๏ ด airbnb; f834 +๏ฌ algolia; f36c +๏€ท align-center; f037 +๏€น align-justify; f039 +๏€ถ align-left; f036 +๏€ธ align-right; f038 +๏™‚ alipay; f642 +๏‘ก allergies; f461 +๏‰ฐ amazon; f270 +๏ฌ amazon-pay; f42c +๏ƒน ambulance; f0f9 +๏Šฃ american-sign-language-interpreting; f2a3 +๏ญ amilia; f36d +๏„ฝ anchor; f13d +๏…ป android; f17b +๏ˆ‰ angellist; f209 +๏„ƒ angle-double-down; f103 +๏„€ angle-double-left; f100 +๏„ angle-double-right; f101 +๏„‚ angle-double-up; f102 +๏„‡ angle-down; f107 +๏„„ angle-left; f104 +๏„… angle-right; f105 +๏„† angle-up; f106 +๏•– angry; f556 +๏ฎ angrycreative; f36e +๏  angular; f420 +๏™„ ankh; f644 +๏ฏ app-store; f36f +๏ฐ app-store-ios; f370 +๏ฑ apper; f371 +๏…น apple; f179 +๏—‘ apple-alt; f5d1 +๏• apple-pay; f415 +๏†‡ archive; f187 +๏•— archway; f557 +๏˜ arrow-alt-circle-down; f358 +๏™ arrow-alt-circle-left; f359 +๏š arrow-alt-circle-right; f35a +๏› arrow-alt-circle-up; f35b +๏‚ซ arrow-circle-down; f0ab +๏‚จ arrow-circle-left; f0a8 +๏‚ฉ arrow-circle-right; f0a9 +๏‚ช arrow-circle-up; f0aa +๏ฃ arrow-down; f063 +๏  arrow-left; f060 +๏ก arrow-right; f061 +๏ข arrow-up; f062 +๏‚ฒ arrows-alt; f0b2 +๏Œท arrows-alt-h; f337 +๏Œธ arrows-alt-v; f338 +๏บ artstation; f77a +๏Šข assistive-listening-systems; f2a2 +๏ฉ asterisk; f069 +๏ฒ asymmetrik; f372 +๏‡บ at; f1fa +๏•˜ atlas; f558 +๏ป atlassian; f77b +๏—’ atom; f5d2 +๏ณ audible; f373 +๏Šž audio-description; f29e +๏œ autoprefixer; f41c +๏ด avianex; f374 +๏ก aviato; f421 +๏•™ award; f559 +๏ต aws; f375 +๏ผ baby; f77c +๏ฝ baby-carriage; f77d +๏•š backspace; f55a +๏Š backward; f04a +๏Ÿฅ bacon; f7e5 +๎™ bacteria e059 +๎š bacterium e05a +๏™ฆ bahai; f666 +๏‰Ž balance-scale; f24e +๏”• balance-scale-left; f515 +๏”– balance-scale-right; f516 +๏ž ban; f05e +๏‘ข band-aid; f462 +๏‹• bandcamp; f2d5 +๏€ช barcode; f02a +๏ƒ‰ bars; f0c9 +๏ณ baseball-ball; f433 +๏ด basketball-ball; f434 +๏‹ bath; f2cd +๏‰„ battery-empty; f244 +๏‰€ battery-full; f240 +๏‰‚ battery-half; f242 +๏‰ƒ battery-quarter; f243 +๏‰ battery-three-quarters; f241 +๏ ต battle-net; f835 +๏ˆถ bed; f236 +๏ƒผ beer; f0fc +๏†ด behance; f1b4 +๏†ต behance-square; f1b5 +๏ƒณ bell; f0f3 +๏‡ถ bell-slash; f1f6 +๏•› bezier-curve; f55b +๏™‡ bible; f647 +๏ˆ† bicycle; f206 +๏กŠ biking; f84a +๏ธ bimobject; f378 +๏‡ฅ binoculars; f1e5 +๏ž€ biohazard; f780 +๏‡ฝ birthday-cake; f1fd +๏…ฑ bitbucket; f171 +๏น bitcoin; f379 +๏บ bity; f37a +๏‰พ black-tie; f27e +๏ป blackberry; f37b +๏”— blender; f517 +๏šถ blender-phone; f6b6 +๏Š blind; f29d +๏ž blog; f781 +๏ผ blogger; f37c +๏ฝ blogger-b; f37d +๏Š“ bluetooth; f293 +๏Š” bluetooth-b; f294 +๏€ฒ bold; f032 +๏ƒง bolt; f0e7 +๏‡ข bomb; f1e2 +๏—— bone; f5d7 +๏•œ bong; f55c +๏€ญ book; f02d +๏šท book-dead; f6b7 +๏Ÿฆ book-medical; f7e6 +๏”˜ book-open; f518 +๏—š book-reader; f5da +๏€ฎ bookmark; f02e +๏ ถ bootstrap; f836 +๏กŒ border-all; f84c +๏ก border-none; f850 +๏ก“ border-style; f853 +๏ถ bowling-ball; f436 +๏‘ฆ box; f466 +๏’ž box-open; f49e +๎› box-tissue e05b +๏‘จ boxes; f468 +๏Šก braille; f2a1 +๏—œ brain; f5dc +๏Ÿฌ bread-slice; f7ec +๏‚ฑ briefcase; f0b1 +๏‘ฉ briefcase-medical; f469 +๏”™ broadcast-tower; f519 +๏”š broom; f51a +๏• brush; f55d +๏…š btc; f15a +๏ ท buffer; f837 +๏†ˆ bug; f188 +๏†ญ building; f1ad +๏‚ก bullhorn; f0a1 +๏…€ bullseye; f140 +๏‘ช burn; f46a +๏ฟ buromobelexperte; f37f +๏ˆ‡ bus; f207 +๏•ž bus-alt; f55e +๏™Š business-time; f64a +๏ขฆ buy-n-large; f8a6 +๏‡ฌ calculator; f1ec +๏„ณ calendar; f133 +๏ณ calendar-alt; f073 +๏‰ด calendar-check; f274 +๏žƒ calendar-day; f783 +๏‰ฒ calendar-minus; f272 +๏‰ฑ calendar-plus; f271 +๏‰ณ calendar-times; f273 +๏ž„ calendar-week; f784 +๏€ฐ camera; f030 +๏‚ƒ camera-retro; f083 +๏šป campground; f6bb +๏ž… canadian-maple-leaf; f785 +๏ž† candy-cane; f786 +๏•Ÿ cannabis; f55f +๏‘ซ capsules; f46b +๏†น car; f1b9 +๏—ž car-alt; f5de +๏—Ÿ car-battery; f5df +๏—ก car-crash; f5e1 +๏—ค car-side; f5e4 +๏ฃฟ caravan; f8ff +๏ƒ— caret-down; f0d7 +๏ƒ™ caret-left; f0d9 +๏ƒš caret-right; f0da +๏… caret-square-down; f150 +๏†‘ caret-square-left; f191 +๏…’ caret-square-right; f152 +๏…‘ caret-square-up; f151 +๏ƒ˜ caret-up; f0d8 +๏ž‡ carrot; f787 +๏ˆ˜ cart-arrow-down; f218 +๏ˆ— cart-plus; f217 +๏žˆ cash-register; f788 +๏šพ cat; f6be +๏ญ cc-amazon-pay; f42d +๏‡ณ cc-amex; f1f3 +๏– cc-apple-pay; f416 +๏‰Œ cc-diners-club; f24c +๏‡ฒ cc-discover; f1f2 +๏‰‹ cc-jcb; f24b +๏‡ฑ cc-mastercard; f1f1 +๏‡ด cc-paypal; f1f4 +๏‡ต cc-stripe; f1f5 +๏‡ฐ cc-visa; f1f0 +๏Ž€ centercode; f380 +๏ž‰ centos; f789 +๏‚ฃ certificate; f0a3 +๏›€ chair; f6c0 +๏”› chalkboard; f51b +๏”œ chalkboard-teacher; f51c +๏—ง charging-station; f5e7 +๏‡พ chart-area; f1fe +๏‚€ chart-bar; f080 +๏ˆ chart-line; f201 +๏ˆ€ chart-pie; f200 +๏€Œ check; f00c +๏˜ check-circle; f058 +๏•  check-double; f560 +๏…Š check-square; f14a +๏Ÿฏ cheese; f7ef +๏น chess; f439 +๏บ chess-bishop; f43a +๏ผ chess-board; f43c +๏ฟ chess-king; f43f +๏‘ chess-knight; f441 +๏‘ƒ chess-pawn; f443 +๏‘… chess-queen; f445 +๏‘‡ chess-rook; f447 +๏„บ chevron-circle-down; f13a +๏„ท chevron-circle-left; f137 +๏„ธ chevron-circle-right; f138 +๏„น chevron-circle-up; f139 +๏ธ chevron-down; f078 +๏“ chevron-left; f053 +๏” chevron-right; f054 +๏ท chevron-up; f077 +๏†ฎ child; f1ae +๏‰จ chrome; f268 +๏ ธ chromecast; f838 +๏” church; f51d +๏„‘ circle; f111 +๏‡Ž circle-notch; f1ce +๏™ city; f64f +๏Ÿฒ clinic-medical; f7f2 +๏Œจ clipboard; f328 +๏‘ฌ clipboard-check; f46c +๏‘ญ clipboard-list; f46d +๏€— clock; f017 +๏‰ clone; f24d +๏ˆŠ closed-captioning; f20a +๏ƒ‚ cloud; f0c2 +๏Ž cloud-download-alt; f381 +๏œป cloud-meatball; f73b +๏›ƒ cloud-moon; f6c3 +๏œผ cloud-moon-rain; f73c +๏œฝ cloud-rain; f73d +๏€ cloud-showers-heavy; f740 +๏›„ cloud-sun; f6c4 +๏ƒ cloud-sun-rain; f743 +๏Ž‚ cloud-upload-alt; f382 +๎ฝ cloudflare e07d +๏Žƒ cloudscale; f383 +๏Ž„ cloudsmith; f384 +๏Ž… cloudversify; f385 +๏•ก cocktail; f561 +๏„ก code; f121 +๏„ฆ code-branch; f126 +๏‡‹ codepen; f1cb +๏Š„ codiepie; f284 +๏ƒด coffee; f0f4 +๏€“ cog; f013 +๏‚… cogs; f085 +๏”ž coins; f51e +๏ƒ› columns; f0db +๏ต comment; f075 +๏‰บ comment-alt; f27a +๏™‘ comment-dollar; f651 +๏’ญ comment-dots; f4ad +๏Ÿต comment-medical; f7f5 +๏’ณ comment-slash; f4b3 +๏‚† comments; f086 +๏™“ comments-dollar; f653 +๏”Ÿ compact-disc; f51f +๏…Ž compass; f14e +๏ฆ compress; f066 +๏ข compress-alt; f422 +๏žŒ compress-arrows-alt; f78c +๏•ข concierge-bell; f562 +๏ž confluence; f78d +๏ˆŽ connectdevelop; f20e +๏‰ญ contao; f26d +๏•ฃ cookie; f563 +๏•ค cookie-bite; f564 +๏ƒ… copy; f0c5 +๏‡น copyright; f1f9 +๏ขž cotton-bureau; f89e +๏’ธ couch; f4b8 +๏Žˆ cpanel; f388 +๏‰ž creative-commons; f25e +๏“ง creative-commons-by; f4e7 +๏“จ creative-commons-nc; f4e8 +๏“ฉ creative-commons-nc-eu; f4e9 +๏“ช creative-commons-nc-jp; f4ea +๏“ซ creative-commons-nd; f4eb +๏“ฌ creative-commons-pd; f4ec +๏“ญ creative-commons-pd-alt; f4ed +๏“ฎ creative-commons-remix; f4ee +๏“ฏ creative-commons-sa; f4ef +๏“ฐ creative-commons-sampling; f4f0 +๏“ฑ creative-commons-sampling-plus; f4f1 +๏“ฒ creative-commons-share; f4f2 +๏“ณ creative-commons-zero; f4f3 +๏‚ credit-card; f09d +๏›‰ critical-role; f6c9 +๏„ฅ crop; f125 +๏•ฅ crop-alt; f565 +๏™” cross; f654 +๏› crosshairs; f05b +๏”  crow; f520 +๏”ก crown; f521 +๏Ÿท crutch; f7f7 +๏„ผ css3; f13c +๏Ž‹ css3-alt; f38b +๏†ฒ cube; f1b2 +๏†ณ cubes; f1b3 +๏ƒ„ cut; f0c4 +๏ŽŒ cuttlefish; f38c +๏Ž d-and-d; f38d +๏›Š d-and-d-beyond; f6ca +๎’ dailymotion e052 +๏ˆ dashcube; f210 +๏‡€ database; f1c0 +๏Šค deaf; f2a4 +๎ท deezer e077 +๏†ฅ delicious; f1a5 +๏‡ democrat; f747 +๏ŽŽ deploydog; f38e +๏Ž deskpro; f38f +๏„ˆ desktop; f108 +๏›Œ dev; f6cc +๏†ฝ deviantart; f1bd +๏™• dharmachakra; f655 +๏ž dhl; f790 +๏‘ฐ diagnoses; f470 +๏ž‘ diaspora; f791 +๏”ข dice; f522 +๏› dice-d20; f6cf +๏›‘ dice-d6; f6d1 +๏”ฃ dice-five; f523 +๏”ค dice-four; f524 +๏”ฅ dice-one; f525 +๏”ฆ dice-six; f526 +๏”ง dice-three; f527 +๏”จ dice-two; f528 +๏†ฆ digg; f1a6 +๏Ž‘ digital-ocean; f391 +๏•ฆ digital-tachograph; f566 +๏—ซ directions; f5eb +๏Ž’ discord; f392 +๏Ž“ discourse; f393 +๏Ÿบ disease; f7fa +๏”ฉ divide; f529 +๏•ง dizzy; f567 +๏‘ฑ dna; f471 +๏Ž” dochub; f394 +๏Ž• docker; f395 +๏›“ dog; f6d3 +๏…• dollar-sign; f155 +๏‘ฒ dolly; f472 +๏‘ด dolly-flatbed; f474 +๏’น donate; f4b9 +๏”ช door-closed; f52a +๏”ซ door-open; f52b +๏†’ dot-circle; f192 +๏’บ dove; f4ba +๏€™ download; f019 +๏Ž– draft2digital; f396 +๏•จ drafting-compass; f568 +๏›• dragon; f6d5 +๏—ฎ draw-polygon; f5ee +๏…ฝ dribbble; f17d +๏Ž— dribbble-square; f397 +๏…ซ dropbox; f16b +๏•ฉ drum; f569 +๏•ช drum-steelpan; f56a +๏›— drumstick-bite; f6d7 +๏†ฉ drupal; f1a9 +๏‘‹ dumbbell; f44b +๏ž“ dumpster; f793 +๏ž” dumpster-fire; f794 +๏›™ dungeon; f6d9 +๏Ž™ dyalog; f399 +๏Žš earlybirds; f39a +๏“ด ebay; f4f4 +๏Š‚ edge; f282 +๎ธ edge-legacy e078 +๏„ edit; f044 +๏Ÿป egg; f7fb +๏’ eject; f052 +๏ฐ elementor; f430 +๏… ellipsis-h; f141 +๏…‚ ellipsis-v; f142 +๏—ฑ ello; f5f1 +๏ฃ ember; f423 +๏‡‘ empire; f1d1 +๏ƒ  envelope; f0e0 +๏Šถ envelope-open; f2b6 +๏™˜ envelope-open-text; f658 +๏†™ envelope-square; f199 +๏Š™ envira; f299 +๏”ฌ equals; f52c +๏„ญ eraser; f12d +๏Ž erlang; f39d +๏ฎ ethereum; f42e +๏ž– ethernet; f796 +๏‹— etsy; f2d7 +๏…“ euro-sign; f153 +๏ น evernote; f839 +๏ข exchange-alt; f362 +๏„ช exclamation; f12a +๏ช exclamation-circle; f06a +๏ฑ exclamation-triangle; f071 +๏ฅ expand; f065 +๏ค expand-alt; f424 +๏Œž expand-arrows-alt; f31e +๏ˆพ expeditedssl; f23e +๏ external-link-alt; f35d +๏  external-link-square-alt; f360 +๏ฎ eye; f06e +๏‡ป eye-dropper; f1fb +๏ฐ eye-slash; f070 +๏‚š ; facebook; f09a +๏Žž ; facebook-f; f39e +๏ŽŸ ; facebook-messenger; f39f +๏‚‚ ; facebook-square; f082 +๏กฃ ; fan; f863 +๏›œ ; fantasy-flight-games; f6dc +๏‰ ; fast-backward; f049 +๏ ; fast-forward; f050 +๎€… ; faucet e005 +๏†ฌ ; fax; f1ac +๏”ญ ; feather; f52d +๏•ซ ; feather-alt; f56b +๏ž— ; fedex; f797 +๏ž˜ ; fedora; f798 +๏†‚ ; female; f182 +๏ƒป ; fighter-jet; f0fb +๏ž™ ; figma; f799 +๏…› ; file; f15b +๏…œ ; file-alt; f15c +๏‡† ; file-archive; f1c6 +๏‡‡ ; file-audio; f1c7 +๏‡‰ ; file-code; f1c9 +๏•ฌ ; file-contract; f56c +๏› ; file-csv; f6dd +๏•ญ ; file-download; f56d +๏‡ƒ ; file-excel; f1c3 +๏•ฎ ; file-export; f56e +๏‡… ; file-image; f1c5 +๏•ฏ ; file-import; f56f +๏•ฐ ; file-invoice; f570 +๏•ฑ ; file-invoice-dollar; f571 +๏‘ท ; file-medical; f477 +๏‘ธ ; file-medical-alt; f478 +๏‡ ; file-pdf; f1c1 +๏‡„ ; file-powerpoint; f1c4 +๏•ฒ ; file-prescription; f572 +๏•ณ ; file-signature; f573 +๏•ด ; file-upload; f574 +๏‡ˆ ; file-video; f1c8 +๏‡‚ ; file-word; f1c2 +๏•ต ; fill; f575 +๏•ถ ; fill-drip; f576 +๏€ˆ ; film; f008 +๏‚ฐ ; filter; f0b0 +๏•ท ; fingerprint; f577 +๏ญ ; fire; f06d +๏Ÿค ; fire-alt; f7e4 +๏„ด ; fire-extinguisher; f134 +๏‰ฉ ; firefox; f269 +๎€‡ ; firefox-browser e007 +๏‘น ; first-aid; f479 +๏Šฐ ; first-order; f2b0 +๏”Š ; first-order-alt; f50a +๏Žก ; firstdraft; f3a1 +๏•ธ ; fish; f578 +๏›ž ; fist-raised; f6de +๏€ค ; flag; f024 +๏„ž ; flag-checkered; f11e +๏ ; flag-usa; f74d +๏ƒƒ ; flask; f0c3 +๏…ฎ ; flickr; f16e +๏‘ ; flipboard; f44d +๏•น ; flushed; f579 +๏— ; fly; f417 +๏ป ; folder; f07b +๏™ ; folder-minus; f65d +๏ผ ; folder-open; f07c +๏™ž ; folder-plus; f65e +๏€ฑ ; font; f031 +๏Šด ; font-awesome; f2b4 +๏œ ; font-awesome-alt; f35c +๏ฅ ; font-awesome-flag; f425 +๏Š€ ; fonticons; f280 +๏Žข ; fonticons-fi; f3a2 +๏‘Ž ; football-ball; f44e +๏Š† ; fort-awesome; f286 +๏Žฃ ; fort-awesome-alt; f3a3 +๏ˆ‘ ; forumbee; f211 +๏Ž ; forward; f04e +๏†€ ; foursquare; f180 +๏‹… ; free-code-camp; f2c5 +๏Žค ; freebsd; f3a4 +๏”ฎ ; frog; f52e +๏„™ ; frown; f119 +๏•บ ; frown-open; f57a +๏”‹ ; fulcrum; f50b +๏™ข ; funnel-dollar; f662 +๏‡ฃ ; futbol; f1e3 +๏”Œ galactic-republic; f50c +๏” galactic-senate; f50d +๏„› gamepad; f11b +๏”ฏ gas-pump; f52f +๏ƒฃ gavel; f0e3 +๏Žฅ gem; f3a5 +๏ˆญ genderless; f22d +๏‰ฅ get-pocket; f265 +๏‰  gg; f260 +๏‰ก gg-circle; f261 +๏›ข ghost; f6e2 +๏ซ gift; f06b +๏žœ gifts; f79c +๏‡“ git; f1d3 +๏ก git-alt; f841 +๏‡’ git-square; f1d2 +๏‚› github; f09b +๏„“ github-alt; f113 +๏‚’ github-square; f092 +๏Žฆ gitkraken; f3a6 +๏Š– gitlab; f296 +๏ฆ gitter; f426 +๏žŸ glass-cheers; f79f +๏€€ glass-martini; f000 +๏•ป glass-martini-alt; f57b +๏ž  glass-whiskey; f7a0 +๏”ฐ glasses; f530 +๏Šฅ glide; f2a5 +๏Šฆ glide-g; f2a6 +๏‚ฌ globe; f0ac +๏•ผ globe-africa; f57c +๏•ฝ globe-americas; f57d +๏•พ globe-asia; f57e +๏žข globe-europe; f7a2 +๏Žง gofore; f3a7 +๏‘ golf-ball; f450 +๏Žจ goodreads; f3a8 +๏Žฉ goodreads-g; f3a9 +๏†  google; f1a0 +๏Žช google-drive; f3aa +๎น google-pay e079 +๏Žซ google-play; f3ab +๏Šณ google-plus; f2b3 +๏ƒ• google-plus-g; f0d5 +๏ƒ” google-plus-square; f0d4 +๏‡ฎ google-wallet; f1ee +๏™ค gopuram; f664 +๏† graduation-cap; f19d +๏†„ gratipay; f184 +๏‹– grav; f2d6 +๏”ฑ greater-than; f531 +๏”ฒ greater-than-equal; f532 +๏•ฟ grimace; f57f +๏–€ grin; f580 +๏– grin-alt; f581 +๏–‚ grin-beam; f582 +๏–ƒ grin-beam-sweat; f583 +๏–„ grin-hearts; f584 +๏–… grin-squint; f585 +๏–† grin-squint-tears; f586 +๏–‡ grin-stars; f587 +๏–ˆ grin-tears; f588 +๏–‰ grin-tongue; f589 +๏–Š grin-tongue-squint; f58a +๏–‹ grin-tongue-wink; f58b +๏–Œ grin-wink; f58c +๏– grip-horizontal; f58d +๏žค grip-lines; f7a4 +๏žฅ grip-lines-vertical; f7a5 +๏–Ž grip-vertical; f58e +๏Žฌ gripfire; f3ac +๏Žญ grunt; f3ad +๎พ guilded e07e +๏žฆ guitar; f7a6 +๏Žฎ gulp; f3ae +๏ƒฝ h-square; f0fd +๏‡” hacker-news; f1d4 +๏Žฏ hacker-news-square; f3af +๏—ท hackerrank; f5f7 +๏ … hamburger; f805 +๏›ฃ hammer; f6e3 +๏™ฅ hamsa; f665 +๏’ฝ hand-holding; f4bd +๏’พ hand-holding-heart; f4be +๎œ hand-holding-medical e05c +๏“€ hand-holding-usd; f4c0 +๏“ hand-holding-water; f4c1 +๏‰˜ hand-lizard; f258 +๏ † hand-middle-finger; f806 +๏‰– hand-paper; f256 +๏‰› hand-peace; f25b +๏‚ง hand-point-down; f0a7 +๏‚ฅ hand-point-left; f0a5 +๏‚ค hand-point-right; f0a4 +๏‚ฆ hand-point-up; f0a6 +๏‰š hand-pointer; f25a +๏‰• hand-rock; f255 +๏‰— hand-scissors; f257 +๎ hand-sparkles e05d +๏‰™ hand-spock; f259 +๏“‚ hands; f4c2 +๏“„ hands-helping; f4c4 +๎ž hands-wash e05e +๏Šต handshake; f2b5 +๎Ÿ handshake-alt-slash e05f +๎  handshake-slash e060 +๏›ฆ hanukiah; f6e6 +๏ ‡ hard-hat; f807 +๏Š’ hashtag; f292 +๏ฃ€ hat-cowboy; f8c0 +๏ฃ hat-cowboy-side; f8c1 +๏›จ hat-wizard; f6e8 +๏‚  hdd; f0a0 +๎ก head-side-cough e061 +๎ข head-side-cough-slash e062 +๎ฃ head-side-mask e063 +๎ค head-side-virus e064 +๏‡œ heading; f1dc +๏€ฅ headphones; f025 +๏– headphones-alt; f58f +๏– headset; f590 +๏€„ heart; f004 +๏žฉ heart-broken; f7a9 +๏ˆž heartbeat; f21e +๏”ณ helicopter; f533 +๏–‘ highlighter; f591 +๏›ฌ hiking; f6ec +๏›ญ hippo; f6ed +๏‘’ hips; f452 +๏Žฐ hire-a-helper; f3b0 +๏‡š history; f1da +๎ฟ hive e07f +๏‘“ hockey-puck; f453 +๏žช holly-berry; f7aa +๏€• home; f015 +๏ง hooli; f427 +๏–’ hornbill; f592 +๏›ฐ horse; f6f0 +๏žซ horse-head; f7ab +๏ƒธ hospital; f0f8 +๏‘ฝ hospital-alt; f47d +๏‘พ hospital-symbol; f47e +๏  hospital-user; f80d +๏–“ hot-tub; f593 +๏  hotdog; f80f +๏–” hotel; f594 +๏Žฑ hotjar; f3b1 +๏‰” hourglass; f254 +๏‰“ hourglass-end; f253 +๏‰’ hourglass-half; f252 +๏‰‘ hourglass-start; f251 +๏›ฑ house-damage; f6f1 +๎ฅ house-user e065 +๏‰ผ houzz; f27c +๏›ฒ hryvnia; f6f2 +๏„ป html5; f13b +๏Žฒ hubspot; f3b2 +๏‰† i-cursor; f246 +๏  ice-cream; f810 +๏žญ icicles; f7ad +๏กญ icons; f86d +๏‹ id-badge; f2c1 +๏‹‚ id-card; f2c2 +๏‘ฟ id-card-alt; f47f +๎€“ ideal e013 +๏žฎ igloo; f7ae +๏€พ image; f03e +๏Œ‚ images; f302 +๏‹˜ imdb; f2d8 +๏€œ inbox; f01c +๏€ผ indent; f03c +๏‰ต industry; f275 +๏”ด infinity; f534 +๏„ฉ info; f129 +๏š info-circle; f05a +๎‚€ innosoft e080 +๏…ญ instagram; f16d +๎• instagram-square e055 +๎‚ instalod e081 +๏žฏ intercom; f7af +๏‰ซ internet-explorer; f26b +๏žฐ invision; f7b0 +๏ˆˆ ioxhost; f208 +๏€ณ italic; f033 +๏ บ itch-io; f83a +๏Žด itunes; f3b4 +๏Žต itunes-note; f3b5 +๏“ค java; f4e4 +๏™ฉ jedi; f669 +๏”Ž jedi-order; f50e +๏Žถ jenkins; f3b6 +๏žฑ jira; f7b1 +๏Žท joget; f3b7 +๏–• joint; f595 +๏†ช joomla; f1aa +๏™ช journal-whills; f66a +๏Žธ js; f3b8 +๏Žน js-square; f3b9 +๏‡Œ jsfiddle; f1cc +๏™ซ kaaba; f66b +๏—บ kaggle; f5fa +๏‚„ key; f084 +๏“ต keybase; f4f5 +๏„œ keyboard; f11c +๏Žบ keycdn; f3ba +๏™ญ khanda; f66d +๏Žป kickstarter; f3bb +๏Žผ kickstarter-k; f3bc +๏–– kiss; f596 +๏–— kiss-beam; f597 +๏–˜ kiss-wink-heart; f598 +๏”ต kiwi-bird; f535 +๏ฏ korvue; f42f +๏™ฏ landmark; f66f +๏†ซ language; f1ab +๏„‰ laptop; f109 +๏—ผ laptop-code; f5fc +๎ฆ laptop-house e066 +๏ ’ laptop-medical; f812 +๏Žฝ laravel; f3bd +๏ˆ‚ lastfm; f202 +๏ˆƒ lastfm-square; f203 +๏–™ laugh; f599 +๏–š laugh-beam; f59a +๏–› laugh-squint; f59b +๏–œ laugh-wink; f59c +๏—ฝ layer-group; f5fd +๏ฌ leaf; f06c +๏ˆ’ leanpub; f212 +๏‚” lemon; f094 +๏ less; f41d +๏”ถ less-than; f536 +๏”ท less-than-equal; f537 +๏Žพ level-down-alt; f3be +๏Žฟ level-up-alt; f3bf +๏‡ life-ring; f1cd +๏ƒซ lightbulb; f0eb +๏€ line; f3c0 +๏ƒ link; f0c1 +๏‚Œ linkedin; f08c +๏ƒก linkedin-in; f0e1 +๏Šธ linode; f2b8 +๏…ผ linux; f17c +๏†• lira-sign; f195 +๏€บ list; f03a +๏€ข list-alt; f022 +๏ƒ‹ list-ol; f0cb +๏ƒŠ list-ul; f0ca +๏„ค location-arrow; f124 +๏€ฃ lock; f023 +๏ lock-open; f3c1 +๏Œ‰ long-arrow-alt-down; f309 +๏ŒŠ long-arrow-alt-left; f30a +๏Œ‹ long-arrow-alt-right; f30b +๏ŒŒ long-arrow-alt-up; f30c +๏Šจ low-vision; f2a8 +๏– luggage-cart; f59d +๏˜„ lungs; f604 +๎ง lungs-virus e067 +๏ƒ lyft; f3c3 +๏„ magento; f3c4 +๏ƒ magic; f0d0 +๏ถ magnet; f076 +๏™ด mail-bulk; f674 +๏–ž mailchimp; f59e +๏†ƒ male; f183 +๏” mandalorian; f50f +๏‰น map; f279 +๏–Ÿ map-marked; f59f +๏–  map-marked-alt; f5a0 +๏ map-marker; f041 +๏… map-marker-alt; f3c5 +๏‰ถ map-pin; f276 +๏‰ท map-signs; f277 +๏˜ markdown; f60f +๏–ก marker; f5a1 +๏ˆข mars; f222 +๏ˆง mars-double; f227 +๏ˆฉ mars-stroke; f229 +๏ˆซ mars-stroke-h; f22b +๏ˆช mars-stroke-v; f22a +๏›บ mask; f6fa +๏“ถ mastodon; f4f6 +๏„ถ maxcdn; f136 +๏ฃŠ mdb; f8ca +๏–ข medal; f5a2 +๏† medapps; f3c6 +๏ˆบ medium; f23a +๏‡ medium-m; f3c7 +๏ƒบ medkit; f0fa +๏ˆ medrt; f3c8 +๏‹  meetup; f2e0 +๏–ฃ megaport; f5a3 +๏„š meh; f11a +๏–ค meh-blank; f5a4 +๏–ฅ meh-rolling-eyes; f5a5 +๏”ธ memory; f538 +๏žณ mendeley; f7b3 +๏™ถ menorah; f676 +๏ˆฃ mercury; f223 +๏“ meteor; f753 +๎€š microblog e01a +๏‹› microchip; f2db +๏„ฐ microphone; f130 +๏‰ microphone-alt; f3c9 +๏”น microphone-alt-slash; f539 +๏„ฑ microphone-slash; f131 +๏˜ microscope; f610 +๏Š microsoft; f3ca +๏จ minus; f068 +๏– minus-circle; f056 +๏…† minus-square; f146 +๏žต mitten; f7b5 +๏‹ mix; f3cb +๏Š‰ mixcloud; f289 +๎– mixer e056 +๏Œ mizuni; f3cc +๏„‹ mobile; f10b +๏ mobile-alt; f3cd +๏Š… modx; f285 +๏ monero; f3d0 +๏ƒ– money-bill; f0d6 +๏‘ money-bill-alt; f3d1 +๏”บ money-bill-wave; f53a +๏”ป money-bill-wave-alt; f53b +๏”ผ money-check; f53c +๏”ฝ money-check-alt; f53d +๏–ฆ monument; f5a6 +๏†† moon; f186 +๏–ง mortar-pestle; f5a7 +๏™ธ mosque; f678 +๏ˆœ motorcycle; f21c +๏›ผ mountain; f6fc +๏ฃŒ mouse; f8cc +๏‰… mouse-pointer; f245 +๏žถ mug-hot; f7b6 +๏€ music; f001 +๏’ napster; f3d2 +๏˜’ neos; f612 +๏›ฟ network-wired; f6ff +๏ˆฌ neuter; f22c +๏‡ช newspaper; f1ea +๏–จ nimblr; f5a8 +๏™ node; f419 +๏“ node-js; f3d3 +๏”พ not-equal; f53e +๏’ notes-medical; f481 +๏” npm; f3d4 +๏• ns8; f3d5 +๏– nutritionix; f3d6 +๏‰‡ object-group; f247 +๏‰ˆ object-ungroup; f248 +๎‚‚ octopus-deploy e082 +๏‰ฃ odnoklassniki; f263 +๏‰ค odnoklassniki-square; f264 +๏˜“ oil-can; f613 +๏” old-republic; f510 +๏™น om; f679 +๏ˆฝ opencart; f23d +๏†› openid; f19b +๏‰ช opera; f26a +๏ˆผ optin-monster; f23c +๏ฃ’ orcid; f8d2 +๏š osi; f41a +๏œ€ otter; f700 +๏€ป outdent; f03b +๏— page4; f3d7 +๏†Œ pagelines; f18c +๏ • pager; f815 +๏‡ผ paint-brush; f1fc +๏–ช paint-roller; f5aa +๏”ฟ palette; f53f +๏˜ palfed; f3d8 +๏’‚ pallet; f482 +๏‡˜ paper-plane; f1d8 +๏ƒ† paperclip; f0c6 +๏“ parachute-box; f4cd +๏‡ paragraph; f1dd +๏•€ parking; f540 +๏–ซ passport; f5ab +๏™ป pastafarianism; f67b +๏ƒช paste; f0ea +๏™ patreon; f3d9 +๏Œ pause; f04c +๏Š‹ pause-circle; f28b +๏†ฐ paw; f1b0 +๏‡ญ paypal; f1ed +๏™ผ peace; f67c +๏Œ„ pen; f304 +๏Œ… pen-alt; f305 +๏–ฌ pen-fancy; f5ac +๏–ญ pen-nib; f5ad +๏…‹ pen-square; f14b +๏Œƒ pencil-alt; f303 +๏–ฎ pencil-ruler; f5ae +๏œ„ penny-arcade; f704 +๎จ people-arrows e068 +๏“Ž people-carry; f4ce +๏ – pepper-hot; f816 +๎‚ƒ perbyte e083 +๏Š• percent; f295 +๏• percentage; f541 +๏š periscope; f3da +๏– person-booth; f756 +๏› phabricator; f3db +๏œ phoenix-framework; f3dc +๏”‘ phoenix-squadron; f511 +๏‚• phone; f095 +๏กน phone-alt; f879 +๏ phone-slash; f3dd +๏‚˜ phone-square; f098 +๏กป phone-square-alt; f87b +๏Š  phone-volume; f2a0 +๏กผ photo-video; f87c +๏‘— php; f457 +๏Šฎ pied-piper; f2ae +๏†จ pied-piper-alt; f1a8 +๏“ฅ pied-piper-hat; f4e5 +๏†ง pied-piper-pp; f1a7 +๎€ž pied-piper-square e01e +๏““ piggy-bank; f4d3 +๏’„ pills; f484 +๏ƒ’ pinterest; f0d2 +๏ˆฑ pinterest-p; f231 +๏ƒ“ pinterest-square; f0d3 +๏ ˜ pizza-slice; f818 +๏™ฟ place-of-worship; f67f +๏ฒ plane; f072 +๏–ฏ plane-arrival; f5af +๏–ฐ plane-departure; f5b0 +๎ฉ plane-slash e069 +๏‹ play; f04b +๏…„ play-circle; f144 +๏Ÿ playstation; f3df +๏‡ฆ plug; f1e6 +๏ง plus; f067 +๏• plus-circle; f055 +๏ƒพ plus-square; f0fe +๏‹Ž podcast; f2ce +๏š poll; f681 +๏š‚ poll-h; f682 +๏‹พ poo; f2fe +๏š poo-storm; f75a +๏˜™ poop; f619 +๏  portrait; f3e0 +๏…” pound-sign; f154 +๏€‘ power-off; f011 +๏šƒ pray; f683 +๏š„ praying-hands; f684 +๏–ฑ prescription; f5b1 +๏’… prescription-bottle; f485 +๏’† prescription-bottle-alt; f486 +๏€ฏ print; f02f +๏’‡ procedures; f487 +๏Šˆ product-hunt; f288 +๏•‚ project-diagram; f542 +๎ช pump-medical e06a +๎ซ pump-soap e06b +๏ก pushed; f3e1 +๏„ฎ puzzle-piece; f12e +๏ข python; f3e2 +๏‡– qq; f1d6 +๏€ฉ qrcode; f029 +๏„จ question; f128 +๏™ question-circle; f059 +๏‘˜ quidditch; f458 +๏‘™ quinscape; f459 +๏‹„ quora; f2c4 +๏„ quote-left; f10d +๏„Ž quote-right; f10e +๏š‡ quran; f687 +๏“ท r-project; f4f7 +๏žน radiation; f7b9 +๏žบ radiation-alt; f7ba +๏› rainbow; f75b +๏ด random; f074 +๏žป raspberry-pi; f7bb +๏‹™ ravelry; f2d9 +๏› react; f41b +๏ reacteurope; f75d +๏“• readme; f4d5 +๏‡ rebel; f1d0 +๏•ƒ receipt; f543 +๏ฃ™ record-vinyl; f8d9 +๏†ธ recycle; f1b8 +๏ฃ red-river; f3e3 +๏†ก reddit; f1a1 +๏Š reddit-alien; f281 +๏†ข reddit-square; f1a2 +๏žผ redhat; f7bc +๏€ž redo; f01e +๏‹น redo-alt; f2f9 +๏‰ registered; f25d +๏กฝ remove-format; f87d +๏†‹ renren; f18b +๏ฅ reply; f3e5 +๏„ข reply-all; f122 +๏ฆ replyd; f3e6 +๏ž republican; f75e +๏“ธ researchgate; f4f8 +๏ง resolving; f3e7 +๏žฝ restroom; f7bd +๏น retweet; f079 +๏–ฒ rev; f5b2 +๏“– ribbon; f4d6 +๏œ‹ ring; f70b +๏€˜ road; f018 +๏•„ robot; f544 +๏„ต rocket; f135 +๏จ rocketchat; f3e8 +๏ฉ rockrms; f3e9 +๏“— route; f4d7 +๏‚ž rss; f09e +๏…ƒ rss-square; f143 +๏…˜ ruble-sign; f158 +๏•… ruler; f545 +๏•† ruler-combined; f546 +๏•‡ ruler-horizontal; f547 +๏•ˆ ruler-vertical; f548 +๏œŒ running; f70c +๏…– rupee-sign; f156 +๎บ rust e07a +๏–ณ sad-cry; f5b3 +๏–ด sad-tear; f5b4 +๏‰ง safari; f267 +๏ ป salesforce; f83b +๏ž sass; f41e +๏žฟ satellite; f7bf +๏Ÿ€ satellite-dish; f7c0 +๏ƒ‡ save; f0c7 +๏ช schlix; f3ea +๏•‰ school; f549 +๏•Š screwdriver; f54a +๏ŠŠ scribd; f28a +๏œŽ scroll; f70e +๏Ÿ‚ sd-card; f7c2 +๏€‚ search; f002 +๏šˆ search-dollar; f688 +๏š‰ search-location; f689 +๏€ search-minus; f010 +๏€Ž search-plus; f00e +๏ซ searchengin; f3eb +๏“˜ seedling; f4d8 +๏‹š sellcast; f2da +๏ˆ“ sellsy; f213 +๏ˆณ server; f233 +๏ฌ servicestack; f3ec +๏˜Ÿ shapes; f61f +๏ค share; f064 +๏‡  share-alt; f1e0 +๏‡ก share-alt-square; f1e1 +๏… share-square; f14d +๏ˆ‹ shekel-sign; f20b +๏ญ shield-alt; f3ed +๎ฌ shield-virus e06c +๏ˆš ship; f21a +๏’‹ shipping-fast; f48b +๏ˆ” shirtsinbulk; f214 +๏•‹ shoe-prints; f54b +๎— shopify e057 +๏Š shopping-bag; f290 +๏Š‘ shopping-basket; f291 +๏บ shopping-cart; f07a +๏–ต shopware; f5b5 +๏‹Œ shower; f2cc +๏–ถ shuttle-van; f5b6 +๏“™ sign; f4d9 +๏‹ถ sign-in-alt; f2f6 +๏Šง sign-language; f2a7 +๏‹ต sign-out-alt; f2f5 +๏€’ signal; f012 +๏–ท signature; f5b7 +๏Ÿ„ sim-card; f7c4 +๏ˆ• simplybuilt; f215 +๎ญ sink e06d +๏ฎ sistrix; f3ee +๏ƒจ sitemap; f0e8 +๏”’ sith; f512 +๏Ÿ… skating; f7c5 +๏Ÿ† sketch; f7c6 +๏Ÿ‰ skiing; f7c9 +๏ŸŠ skiing-nordic; f7ca +๏•Œ skull; f54c +๏œ” skull-crossbones; f714 +๏ˆ– skyatlas; f216 +๏…พ skype; f17e +๏†˜ slack; f198 +๏ฏ slack-hash; f3ef +๏œ• slash; f715 +๏ŸŒ sleigh; f7cc +๏‡ž sliders-h; f1de +๏‡ง slideshare; f1e7 +๏„˜ smile; f118 +๏–ธ smile-beam; f5b8 +๏“š smile-wink; f4da +๏Ÿ smog; f75f +๏’ smoking; f48d +๏• smoking-ban; f54d +๏Ÿ sms; f7cd +๏Šซ snapchat; f2ab +๏Šฌ snapchat-ghost; f2ac +๏Šญ snapchat-square; f2ad +๏ŸŽ snowboarding; f7ce +๏‹œ snowflake; f2dc +๏Ÿ snowman; f7d0 +๏Ÿ’ snowplow; f7d2 +๎ฎ soap e06e +๏š– socks; f696 +๏–บ solar-panel; f5ba +๏ƒœ sort; f0dc +๏… sort-alpha-down; f15d +๏ข sort-alpha-down-alt; f881 +๏…ž sort-alpha-up; f15e +๏ข‚ sort-alpha-up-alt; f882 +๏…  sort-amount-down; f160 +๏ข„ sort-amount-down-alt; f884 +๏…ก sort-amount-up; f161 +๏ข… sort-amount-up-alt; f885 +๏ƒ sort-down; f0dd +๏…ข sort-numeric-down; f162 +๏ข† sort-numeric-down-alt; f886 +๏…ฃ sort-numeric-up; f163 +๏ข‡ sort-numeric-up-alt; f887 +๏ƒž sort-up; f0de +๏†พ soundcloud; f1be +๏Ÿ“ sourcetree; f7d3 +๏–ป spa; f5bb +๏†— space-shuttle; f197 +๏ณ speakap; f3f3 +๏ ผ speaker-deck; f83c +๏ข‘ spell-check; f891 +๏œ— spider; f717 +๏„ spinner; f110 +๏–ผ splotch; f5bc +๏†ผ spotify; f1bc +๏–ฝ spray-can; f5bd +๏ƒˆ square; f0c8 +๏‘œ square-full; f45c +๏š˜ square-root-alt; f698 +๏–พ squarespace; f5be +๏† stack-exchange; f18d +๏…ฌ stack-overflow; f16c +๏ก‚ stackpath; f842 +๏–ฟ stamp; f5bf +๏€… star; f005 +๏š™ star-and-crescent; f699 +๏‚‰ star-half; f089 +๏—€ star-half-alt; f5c0 +๏šš star-of-david; f69a +๏˜ก star-of-life; f621 +๏ต staylinked; f3f5 +๏†ถ steam; f1b6 +๏†ท steam-square; f1b7 +๏ถ steam-symbol; f3f6 +๏ˆ step-backward; f048 +๏‘ step-forward; f051 +๏ƒฑ stethoscope; f0f1 +๏ท sticker-mule; f3f7 +๏‰‰ sticky-note; f249 +๏ stop; f04d +๏Š stop-circle; f28d +๏‹ฒ stopwatch; f2f2 +๎ฏ stopwatch-20 e06f +๏•Ž store; f54e +๏• store-alt; f54f +๎ฐ store-alt-slash e070 +๎ฑ store-slash e071 +๏จ strava; f428 +๏• stream; f550 +๏ˆ street-view; f21d +๏ƒŒ strikethrough; f0cc +๏ฉ stripe; f429 +๏ช stripe-s; f42a +๏•‘ stroopwafel; f551 +๏ธ studiovinari; f3f8 +๏†ค stumbleupon; f1a4 +๏†ฃ stumbleupon-circle; f1a3 +๏„ฌ subscript; f12c +๏ˆน subway; f239 +๏ƒฒ suitcase; f0f2 +๏— suitcase-rolling; f5c1 +๏†… sun; f185 +๏‹ superpowers; f2dd +๏„ซ superscript; f12b +๏น supple; f3f9 +๏—‚ surprise; f5c2 +๏Ÿ– suse; f7d6 +๏—ƒ swatchbook; f5c3 +๏ฃก swift; f8e1 +๏—„ swimmer; f5c4 +๏—… swimming-pool; f5c5 +๏ ฝ symfony; f83d +๏š› synagogue; f69b +๏€ก sync; f021 +๏‹ฑ sync-alt; f2f1 +๏’Ž syringe; f48e +๏ƒŽ table; f0ce +๏‘ table-tennis; f45d +๏„Š tablet; f10a +๏บ tablet-alt; f3fa +๏’ tablets; f490 +๏ฝ tachometer-alt; f3fd +๏€ซ tag; f02b +๏€ฌ tags; f02c +๏“› tape; f4db +๏‚ฎ tasks; f0ae +๏†บ taxi; f1ba +๏“น teamspeak; f4f9 +๏˜ฎ teeth; f62e +๏˜ฏ teeth-open; f62f +๏‹† telegram; f2c6 +๏พ telegram-plane; f3fe +๏ฉ temperature-high; f769 +๏ซ temperature-low; f76b +๏‡• tencent-weibo; f1d5 +๏Ÿ— tenge; f7d7 +๏„  terminal; f120 +๏€ด text-height; f034 +๏€ต text-width; f035 +๏€Š th; f00a +๏€‰ th-large; f009 +๏€‹ th-list; f00b +๏š the-red-yeti; f69d +๏˜ฐ theater-masks; f630 +๏—† themeco; f5c6 +๏Šฒ themeisle; f2b2 +๏’‘ thermometer; f491 +๏‹‹ thermometer-empty; f2cb +๏‹‡ thermometer-full; f2c7 +๏‹‰ thermometer-half; f2c9 +๏‹Š thermometer-quarter; f2ca +๏‹ˆ thermometer-three-quarters; f2c8 +๏œฑ think-peaks; f731 +๏…ฅ thumbs-down; f165 +๏…ค thumbs-up; f164 +๏‚ thumbtack; f08d +๏ฟ ticket-alt; f3ff +๎ป tiktok e07b +๏€ times; f00d +๏— times-circle; f057 +๏ƒ tint; f043 +๏—‡ tint-slash; f5c7 +๏—ˆ tired; f5c8 +๏ˆ„ toggle-off; f204 +๏ˆ… toggle-on; f205 +๏Ÿ˜ toilet; f7d8 +๏œž toilet-paper; f71e +๎ฒ toilet-paper-slash e072 +๏•’ toolbox; f552 +๏Ÿ™ tools; f7d9 +๏—‰ tooth; f5c9 +๏š  torah; f6a0 +๏šก torii-gate; f6a1 +๏œข tractor; f722 +๏”“ trade-federation; f513 +๏‰œ trademark; f25c +๏˜ท traffic-light; f637 +๎ trailer e041 +๏ˆธ train; f238 +๏Ÿš tram; f7da +๏ˆค transgender; f224 +๏ˆฅ transgender-alt; f225 +๏‡ธ trash; f1f8 +๏‹ญ trash-alt; f2ed +๏ ฉ trash-restore; f829 +๏ ช trash-restore-alt; f82a +๏†ป tree; f1bb +๏† trello; f181 +๏‚‘ trophy; f091 +๏ƒ‘ truck; f0d1 +๏“ž truck-loading; f4de +๏˜ป truck-monster; f63b +๏“Ÿ truck-moving; f4df +๏˜ผ truck-pickup; f63c +๏•“ tshirt; f553 +๏‡ค tty; f1e4 +๏…ณ tumblr; f173 +๏…ด tumblr-square; f174 +๏‰ฌ tv; f26c +๏‡จ twitch; f1e8 +๏‚™ twitter; f099 +๏‚ twitter-square; f081 +๏ซ typo3; f42b +๏‚ uber; f402 +๏ŸŸ ubuntu; f7df +๏ƒ uikit; f403 +๏ฃจ umbraco; f8e8 +๏ƒฉ umbrella; f0e9 +๏—Š umbrella-beach; f5ca +๎‚„ uncharted e084 +๏ƒ underline; f0cd +๏ƒข undo; f0e2 +๏‹ช undo-alt; f2ea +๏„ uniregistry; f404 +๎‰ unity e049 +๏Šš universal-access; f29a +๏†œ university; f19c +๏„ง unlink; f127 +๏‚œ unlock; f09c +๏„พ unlock-alt; f13e +๎ผ unsplash e07c +๏… untappd; f405 +๏‚“ upload; f093 +๏Ÿ  ups; f7e0 +๏Š‡ usb; f287 +๏€‡ user; f007 +๏† user-alt; f406 +๏“บ user-alt-slash; f4fa +๏“ป user-astronaut; f4fb +๏“ผ user-check; f4fc +๏Šฝ user-circle; f2bd +๏“ฝ user-clock; f4fd +๏“พ user-cog; f4fe +๏“ฟ user-edit; f4ff +๏”€ user-friends; f500 +๏” user-graduate; f501 +๏œจ user-injured; f728 +๏”‚ user-lock; f502 +๏ƒฐ user-md; f0f0 +๏”ƒ user-minus; f503 +๏”„ user-ninja; f504 +๏ ฏ user-nurse; f82f +๏ˆด user-plus; f234 +๏ˆ› user-secret; f21b +๏”… user-shield; f505 +๏”† user-slash; f506 +๏”‡ user-tag; f507 +๏”ˆ user-tie; f508 +๏ˆต user-times; f235 +๏ƒ€ users; f0c0 +๏”‰ users-cog; f509 +๎ณ users-slash e073 +๏Ÿก usps; f7e1 +๏‡ ussunnah; f407 +๏‹ฅ utensil-spoon; f2e5 +๏‹ง utensils; f2e7 +๏ˆ vaadin; f408 +๏—‹ vector-square; f5cb +๏ˆก venus; f221 +๏ˆฆ venus-double; f226 +๏ˆจ venus-mars; f228 +๎‚… vest e085 +๎‚† vest-patches e086 +๏ˆท viacoin; f237 +๏Šฉ viadeo; f2a9 +๏Šช viadeo-square; f2aa +๏’’ vial; f492 +๏’“ vials; f493 +๏‰ viber; f409 +๏€ฝ video; f03d +๏“ข video-slash; f4e2 +๏šง vihara; f6a7 +๏Š vimeo; f40a +๏†” vimeo-square; f194 +๏‰ฝ vimeo-v; f27d +๏‡Š vine; f1ca +๎ด virus e074 +๎ต virus-slash e075 +๎ถ viruses e076 +๏†‰ vk; f189 +๏‹ vnv; f40b +๏ข— voicemail; f897 +๏‘Ÿ volleyball-ball; f45f +๏€ง volume-down; f027 +๏šฉ volume-mute; f6a9 +๏€ฆ volume-off; f026 +๏€จ volume-up; f028 +๏ฒ vote-yea; f772 +๏œฉ vr-cardboard; f729 +๏Ÿ vuejs; f41f +๏•” walking; f554 +๏•• wallet; f555 +๏’” warehouse; f494 +๎‚‡ watchman-monitoring e087 +๏ณ water; f773 +๏ พ wave-square; f83e +๏ ฟ waze; f83f +๏—Œ weebly; f5cc +๏†Š weibo; f18a +๏’– weight; f496 +๏— weight-hanging; f5cd +๏‡— weixin; f1d7 +๏ˆฒ whatsapp; f232 +๏Œ whatsapp-square; f40c +๏†“ wheelchair; f193 +๏ whmcs; f40d +๏‡ซ wifi; f1eb +๏‰ฆ wikipedia-w; f266 +๏œฎ wind; f72e +๏ window-close; f410 +๏‹ window-maximize; f2d0 +๏‹‘ window-minimize; f2d1 +๏‹’ window-restore; f2d2 +๏…บ windows; f17a +๏œฏ wine-bottle; f72f +๏“ฃ wine-glass; f4e3 +๏—Ž wine-glass-alt; f5ce +๏— wix; f5cf +๏œฐ wizards-of-the-coast; f730 +๎‚ˆ wodu e088 +๏”” wolf-pack-battalion; f514 +๏…™ won-sign; f159 +๏†š wordpress; f19a +๏‘ wordpress-simple; f411 +๏Š— wpbeginner; f297 +๏‹ž wpexplorer; f2de +๏Š˜ wpforms; f298 +๏ค wpressr; f3e4 +๏‚ญ wrench; f0ad +๏’— x-ray; f497 +๏’ xbox; f412 +๏…จ xing; f168 +๏…ฉ xing-square; f169 +๏ˆป y-combinator; f23b +๏†ž yahoo; f19e +๏ก€ yammer; f840 +๏“ yandex; f413 +๏” yandex-international; f414 +๏Ÿฃ yarn; f7e3 +๏‡ฉ yelp; f1e9 +๏…— yen-sign; f157 +๏šญ yin-yang; f6ad +๏Šฑ yoast; f2b1 +๏…ง youtube; f167 +๏ฑ youtube-square; f431 +๏˜ฟ zhihu; f63f diff --git a/.local/share/larbs/ttymaps.kmap b/.local/share/larbs/ttymaps.kmap new file mode 100644 index 0000000..51a7042 --- /dev/null +++ b/.local/share/larbs/ttymaps.kmap @@ -0,0 +1,2 @@ +keycode 1 = Caps_Lock +keycode 58 = Escape diff --git a/.profile b/.profile deleted file mode 120000 index c1abe3f..0000000 --- a/.profile +++ /dev/null @@ -1 +0,0 @@ -.zprofile \ No newline at end of file diff --git a/.xprofile b/.xprofile index c000896..61f87a7 120000 --- a/.xprofile +++ b/.xprofile @@ -1 +1 @@ -.config/xprofile \ No newline at end of file +.config/x11/xprofile \ No newline at end of file diff --git a/.zprofile b/.zprofile deleted file mode 100644 index 61e5128..0000000 --- a/.zprofile +++ /dev/null @@ -1,168 +0,0 @@ -#!/bin/zsh - -# zsh profile file. Runs on login. Environmental variables are set here. - -# If you don't plan on reverting to bash, you can remove the link in ~/.profile -# to clean up. - -# Adds `~/.local/bin` to $PATH -export PATH="$PATH:$(du "$HOME/.local/bin" | cut -f2 | tr '\n' ':' | sed 's/:*$//')" -# Adds cargo bin path to $PATH -export PATH="$PATH:$(du "$HOME/.local/share/cargo/bin" | cut -f2 | tr '\n' ':' | sed 's/:*$//')" -# Adds MATLAB -#export PATH="$PATH:$(du "/usr/local/MATLAB" | cut -f2 | tr '\n' ':' | sed 's/:*$//')" - -# Default programs: -export EDITOR="nvim" -export PAGER="less" -export TERMINAL="st" -export BROWSER="qutebrowser" -export READER="zathura" -export FILE="ranger" -export PIC="sxiv" -export SHELL="zsh" - -# ~/ Clean-up: -export XDG_CONFIG_HOME="$HOME/.config" -export XDG_DATA_HOME="$HOME/.local/share" -export XDG_CACHE_HOME="$HOME/.cache" -#export XDG_RUNTIME_DIR="$HOME/.cache/xdg_run" # Messes up Audio for some reason, might be useful to figure out in the future how to fix -#export XAUTHORITY="$HOME/.cache/xdg_run/Xauthority" # This line will break some DMs. -export NOTMUCH_CONFIG="${XDG_CONFIG_HOME:-$HOME/.config}/notmuch-config" -export GTK2_RC_FILES="${XDG_CONFIG_HOME:-$HOME/.config}/gtk-2.0/gtkrc-2.0" -export LESSHISTFILE="-" -export WGETRC="${XDG_CONFIG_HOME:-$HOME/.config}/wget/wgetrc" -export INPUTRC="${XDG_CONFIG_HOME:-$HOME/.config}/inputrc" -export ZDOTDIR="${XDG_CONFIG_HOME:-$HOME/.config}/zsh" -export ALSA_CONFIG_PATH="$XDG_CONFIG_HOME/alsa/asoundrc" -export GNUPGHOME="$XDG_DATA_HOME/gnupg" -#export GNUPGHOME="$HOME/.gnupg" -export WINEPREFIX="${XDG_DATA_HOME:-$HOME/.local/share}/wineprefixes/default" -export KODI_DATA="${XDG_DATA_HOME:-$HOME/.local/share}/kodi" -export PASSWORD_STORE_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/password-store" -export TMUX_TMPDIR="$XDG_RUNTIME_DIR" -export ANDROID_SDK_HOME="${XDG_CONFIG_HOME:-$HOME/.config}/android" -export CARGO_HOME="${XDG_DATA_HOME:-$HOME/.local/share}/cargo" -export GOPATH="${XDG_DATA_HOME:-$HOME/.local/share}/go" -export ANSIBLE_CONFIG="${XDG_CONFIG_HOME:-$HOME/.config}/ansible/ansible.cfg" -export SSB_HOME="$XDG_DATA_HOME/zoom" -export PASSWORD_STORE_GPG_OPTS='--homedir=/home/alex/.local/share/gnupg' -export MAILCAPS="${XDG_CONFIG_HOME:-$HOME/.config}/mutt/mailcap" -export CABAL_CONFIG="$XDG_CONFIG_HOME"/cabal/config -export CABAL_DIR="$XDG_CACHE_HOME"/cabal -export GRADLE_USER_HOME="$XDG_DATA_HOME"/gradle -export IPYTHONDIR="$XDG_CONFIG_HOME"/jupyter -export JUPYTER_CONFIG_DIR="$XDG_CONFIG_HOME"/jupyter -export _JAVA_OPTIONS=-Djava.util.prefs.userRoot="$XDG_CONFIG_HOME"/java -export JULIA_DEPOT_PATH="$XDG_DATA_HOME/julia:$JULIA_DEPOT_PATH" -export NUGET_PACKAGES="$XDG_CACHE_HOME"/NuGetPackages -export MAXIMA_USERDIR="$XDG_CONFIG_HOME"/maxima -export WEECHAT_HOME="$XDG_CONFIG_HOME"/weechat -export TEXMFHOME=$XDG_DATA_HOME/texmf -export TEXMFVAR=$XDG_CACHE_HOME/texlive/texmf-var -export TEXMFCONFIG=$XDG_CONFIG_HOME/texlive/texmf-config - -# XDG USER DIRECOTRIES -export XDG_DESKTOP_DIR="$HOME" -export XDG_DOCUMENTS_DIR="$HOME/dox" -export XDG_DOWNLOAD_DIR="$HOME/dls" -export XDG_MUSIC_DIR="$HOME/msc" -export XDG_PICTURES_DIR="$HOME/pics" -export XDG_VIDEOS_DIR="$HOME/vids" - -# Other program settings: -export DICS="/usr/share/stardict/dic/" -export SUDO_ASKPASS="$HOME/.local/bin/dmenupass" -export FZF_DEFAULT_OPTS="--layout=reverse --height 40%" -export LESS=-R -export LESS_TERMCAP_mb="$(printf '%b' '')" -export LESS_TERMCAP_md="$(printf '%b' '')" -export LESS_TERMCAP_me="$(printf '%b' '')" -export LESS_TERMCAP_so="$(printf '%b' '')" -export LESS_TERMCAP_se="$(printf '%b' '')" -export LESS_TERMCAP_us="$(printf '%b' '')" -export LESS_TERMCAP_ue="$(printf '%b' '')" -export LESSOPEN="| /usr/bin/highlight -O ansi %s 2>/dev/null" -export QT_QPA_PLATFORMTHEME="gtk2" # Have QT use gtk2 theme. -export MOZ_USE_XINPUT2="1" # Mozilla smooth scrolling/touchpads. -export _JAVA_AWT_WM_NONREPARENTING=1 # Java doesn't understand tiling windows -export AWT_TOOLKIT="MToolkit wmname LG3D" #May have to install wmname - -# Settings for Japanese input -export GTK_IM_MODULE='ibus' -export QT_IM_MODULE='ibus' -export XMODIFIERS=@im='ibus' - -ibus-daemon -drx #Toolbar for anthy - -# This is the list for lf icons: -export LF_ICONS="di=๐Ÿ“:\ -fi=๐Ÿ“ƒ:\ -tw=๐Ÿค:\ -ow=๐Ÿ“‚:\ -ln=โ›“:\ -or=โŒ:\ -ex=๐ŸŽฏ:\ -*.txt=โœ:\ -*.mom=โœ:\ -*.me=โœ:\ -*.ms=โœ:\ -*.png=๐Ÿ–ผ:\ -*.ico=๐Ÿ–ผ:\ -*.jpg=๐Ÿ“ธ:\ -*.jpeg=๐Ÿ“ธ:\ -*.gif=๐Ÿ–ผ:\ -*.svg=๐Ÿ—บ:\ -*.xcf=๐Ÿ–Œ:\ -*.html=๐ŸŒŽ:\ -*.xml=๐Ÿ“ฐ:\ -*.gpg=๐Ÿ”’:\ -*.css=๐ŸŽจ:\ -*.pdf=๐Ÿ“š:\ -*.djvu=๐Ÿ“š:\ -*.epub=๐Ÿ“š:\ -*.csv=๐Ÿ““:\ -*.xlsx=๐Ÿ““:\ -*.tex=๐Ÿ“œ:\ -*.md=๐Ÿ“˜:\ -*.r=๐Ÿ“Š:\ -*.R=๐Ÿ“Š:\ -*.rmd=๐Ÿ“Š:\ -*.Rmd=๐Ÿ“Š:\ -*.mp3=๐ŸŽต:\ -*.opus=๐ŸŽต:\ -*.ogg=๐ŸŽต:\ -*.m4a=๐ŸŽต:\ -*.flac=๐ŸŽผ:\ -*.mkv=๐ŸŽฅ:\ -*.mp4=๐ŸŽฅ:\ -*.webm=๐ŸŽฅ:\ -*.mpeg=๐ŸŽฅ:\ -*.avi=๐ŸŽฅ:\ -*.zip=๐Ÿ“ฆ:\ -*.rar=๐Ÿ“ฆ:\ -*.7z=๐Ÿ“ฆ:\ -*.tar.gz=๐Ÿ“ฆ:\ -*.z64=๐ŸŽฎ:\ -*.v64=๐ŸŽฎ:\ -*.n64=๐ŸŽฎ:\ -*.1=โ„น:\ -*.nfo=โ„น:\ -*.info=โ„น:\ -*.log=๐Ÿ“™:\ -*.iso=๐Ÿ“€:\ -*.img=๐Ÿ“€:\ -*.bib=๐ŸŽ“:\ -*.ged=๐Ÿ‘ช:\ -*.part=๐Ÿ’”:\ -*.torrent=๐Ÿ”ฝ:\ -" - -[ ! -f ${XDG_CONFIG_HOME:-$HOME/.config}/shortcutrc ] && shortcuts >/dev/null 2>&1 & - -# Start graphical server on tty1 if not already running. -[ "$(tty)" = "/dev/tty1" ] && ! ps -e | grep -qw Xorg && exec startx - -# Switch escape and caps if tty and no passwd required: -sudo -n loadkeys ${XDG_DATA_HOME:-$HOME/.local/share}/larbs/ttymaps.kmap 2>/dev/null -source "/home/alex/.local/share/cargo/env" diff --git a/.zprofile b/.zprofile new file mode 120000 index 0000000..8486fca --- /dev/null +++ b/.zprofile @@ -0,0 +1 @@ +.config/shell/profile \ No newline at end of file