From 1678e933cb7b912ddfb0dcbb8b3e5099b6bae958 Mon Sep 17 00:00:00 2001
From: ~keith
Date: Sat, 4 May 2024 15:04:02 -0400
Subject: [PATCH] initial upload
---
README.md | 19 +
about_copyleft.php | 29 ++
assets/.htaccess | 4 +
assets/b_btn.gif | Bin 0 -> 128 bytes
assets/b_btnpush.gif | Bin 0 -> 129 bytes
assets/b_btnring.gif | Bin 0 -> 170 bytes
assets/b_defbtn.gif | Bin 0 -> 209 bytes
assets/b_frame.gif | Bin 0 -> 120 bytes
assets/b_gen.gif | Bin 0 -> 103 bytes
assets/b_genpush.gif | Bin 0 -> 124 bytes
assets/b_keycap.gif | Bin 0 -> 116 bytes
assets/b_keycap2.gif | Bin 0 -> 116 bytes
assets/b_text.gif | Bin 0 -> 67 bytes
assets/b_textdis.gif | Bin 0 -> 64 bytes
assets/b_winframe.gif | Bin 0 -> 118 bytes
assets/b_winframe2.gif | Bin 0 -> 111 bytes
assets/b_winframe2err.gif | Bin 0 -> 115 bytes
assets/b_winnote.gif | Bin 0 -> 151 bytes
assets/b_wintitle.gif | Bin 0 -> 104 bytes
assets/b_wintitle2err.gif | Bin 0 -> 103 bytes
assets/ball.png | Bin 0 -> 4715 bytes
assets/bull_arrow.gif | Bin 0 -> 77 bytes
assets/bull_arrow_down.gif | Bin 0 -> 75 bytes
assets/bull_arrow_down_in.gif | Bin 0 -> 75 bytes
assets/bull_arrow_in.gif | Bin 0 -> 77 bytes
assets/bull_diamond.gif | Bin 0 -> 100 bytes
assets/bull_diamond_blue.gif | Bin 0 -> 79 bytes
assets/bull_diamond_cyan.gif | Bin 0 -> 79 bytes
assets/bull_diamond_green.gif | Bin 0 -> 79 bytes
assets/bull_diamond_in.gif | Bin 0 -> 79 bytes
assets/bull_diamond_magenta.gif | Bin 0 -> 79 bytes
assets/bull_diamond_red.gif | Bin 0 -> 79 bytes
assets/bull_diamond_yellow.gif | Bin 0 -> 79 bytes
assets/canyon.mid | Bin 0 -> 33876 bytes
assets/checkbox.gif | Bin 0 -> 377 bytes
assets/coffeebean.gif | Bin 0 -> 7175 bytes
assets/coffeebean2.gif | Bin 0 -> 777 bytes
assets/coffeebean_dark.gif | Bin 0 -> 6748 bytes
assets/coffeebean_dark2.gif | Bin 0 -> 6748 bytes
assets/coffeebean_light.gif | Bin 0 -> 7148 bytes
assets/coin_bch.png | Bin 0 -> 437 bytes
assets/coin_btc.png | Bin 0 -> 395 bytes
assets/coin_eth.png | Bin 0 -> 409 bytes
assets/coin_ltc.png | Bin 0 -> 388 bytes
assets/coin_wow.png | Bin 0 -> 439 bytes
assets/coin_xmr.png | Bin 0 -> 441 bytes
assets/colarrow.png | Bin 0 -> 265 bytes
assets/entry_of_the_gladiators.mp3 | Bin 0 -> 2581701 bytes
assets/error.png | Bin 0 -> 627 bytes
assets/error_big.png | Bin 0 -> 1113 bytes
assets/error_big2.png | Bin 0 -> 1095 bytes
assets/favicon.png | Bin 0 -> 4660 bytes
assets/fonts/IBMPlexSerif-400.woff2 | Bin 0 -> 51820 bytes
assets/fonts/IBMPlexSerif-400i.woff2 | Bin 0 -> 57036 bytes
assets/fonts/IBMPlexSerif-500.woff2 | Bin 0 -> 53412 bytes
assets/fonts/IBMPlexSerif-500i.woff2 | Bin 0 -> 58792 bytes
assets/fonts/IBMPlexSerif-700.woff2 | Bin 0 -> 51592 bytes
assets/fonts/IBMPlexSerif-700i.woff2 | Bin 0 -> 56936 bytes
assets/fonts/plex-serif.css | 42 ++
assets/hicolor/.htaccess | 4 +
assets/hicolor/applix.png | Bin 0 -> 888 bytes
assets/hicolor/binary2.png | Bin 0 -> 1120 bytes
assets/hicolor/cdtrack.png | Bin 0 -> 968 bytes
assets/hicolor/clipboard.png | Bin 0 -> 664 bytes
assets/hicolor/colorscm.png | Bin 0 -> 1097 bytes
assets/hicolor/core.png | Bin 0 -> 1055 bytes
assets/hicolor/deb.png | Bin 0 -> 929 bytes
assets/hicolor/document.png | Bin 0 -> 762 bytes
assets/hicolor/document2.png | Bin 0 -> 777 bytes
assets/hicolor/dvi.png | Bin 0 -> 1023 bytes
assets/hicolor/exec.png | Bin 0 -> 857 bytes
assets/hicolor/folder.png | Bin 0 -> 870 bytes
assets/hicolor/folder_blue.png | Bin 0 -> 730 bytes
assets/hicolor/folder_blue_open.png | Bin 0 -> 796 bytes
assets/hicolor/folder_cyan.png | Bin 0 -> 726 bytes
assets/hicolor/folder_cyan_open.png | Bin 0 -> 800 bytes
assets/hicolor/folder_green.png | Bin 0 -> 726 bytes
assets/hicolor/folder_green_open.png | Bin 0 -> 796 bytes
assets/hicolor/folder_grey.png | Bin 0 -> 684 bytes
assets/hicolor/folder_grey_open.png | Bin 0 -> 777 bytes
assets/hicolor/folder_home.png | Bin 0 -> 925 bytes
assets/hicolor/folder_html.png | Bin 0 -> 978 bytes
assets/hicolor/folder_image.png | Bin 0 -> 1016 bytes
assets/hicolor/folder_locked.png | Bin 0 -> 829 bytes
assets/hicolor/folder_man.png | Bin 0 -> 946 bytes
assets/hicolor/folder_open.png | Bin 0 -> 796 bytes
assets/hicolor/folder_orange.png | Bin 0 -> 725 bytes
assets/hicolor/folder_orange_open.png | Bin 0 -> 800 bytes
assets/hicolor/folder_print2.png | Bin 0 -> 945 bytes
assets/hicolor/folder_red.png | Bin 0 -> 724 bytes
assets/hicolor/folder_red_open.png | Bin 0 -> 800 bytes
assets/hicolor/folder_sound.png | Bin 0 -> 967 bytes
assets/hicolor/folder_tar.png | Bin 0 -> 956 bytes
assets/hicolor/folder_txt.png | Bin 0 -> 944 bytes
assets/hicolor/folder_video.png | Bin 0 -> 1021 bytes
assets/hicolor/folder_violet.png | Bin 0 -> 726 bytes
assets/hicolor/folder_violet_open.png | Bin 0 -> 796 bytes
assets/hicolor/folder_wordprocessing.png | Bin 0 -> 927 bytes
assets/hicolor/folder_yellow.png | Bin 0 -> 721 bytes
assets/hicolor/folder_yellow_open.png | Bin 0 -> 800 bytes
assets/hicolor/font_bitmap.png | Bin 0 -> 943 bytes
assets/hicolor/font_truetype.png | Bin 0 -> 959 bytes
assets/hicolor/font_type1.png | Bin 0 -> 982 bytes
assets/hicolor/forward.png | Bin 0 -> 519 bytes
assets/hicolor/ftp.png | Bin 0 -> 1028 bytes
assets/hicolor/gettext.png | Bin 0 -> 710 bytes
assets/hicolor/gf.png | Bin 0 -> 667 bytes
assets/hicolor/html.png | Bin 0 -> 1165 bytes
assets/hicolor/image.png | Bin 0 -> 1062 bytes
assets/hicolor/info.png | Bin 0 -> 1064 bytes
assets/hicolor/launch.png | Bin 0 -> 814 bytes
assets/hicolor/log.png | Bin 0 -> 954 bytes
assets/hicolor/make.png | Bin 0 -> 1061 bytes
assets/hicolor/man.png | Bin 0 -> 933 bytes
assets/hicolor/message.png | Bin 0 -> 1105 bytes
assets/hicolor/midi.png | Bin 0 -> 694 bytes
assets/hicolor/mime_empty.png | Bin 0 -> 770 bytes
assets/hicolor/misc_doc.png | Bin 0 -> 978 bytes
assets/hicolor/netscape_doc.png | Bin 0 -> 1010 bytes
assets/hicolor/network.png | Bin 0 -> 765 bytes
assets/hicolor/network_local.png | Bin 0 -> 595 bytes
assets/hicolor/news.png | Bin 0 -> 540 bytes
assets/hicolor/pdf.png | Bin 0 -> 1034 bytes
assets/hicolor/pipe.png | Bin 0 -> 491 bytes
assets/hicolor/postscript.png | Bin 0 -> 941 bytes
assets/hicolor/readme.png | Bin 0 -> 1064 bytes
assets/hicolor/recycled.png | Bin 0 -> 1085 bytes
assets/hicolor/resource.png | Bin 0 -> 978 bytes
assets/hicolor/shellscript.png | Bin 0 -> 1035 bytes
assets/hicolor/shellscript2.png | Bin 0 -> 1051 bytes
assets/hicolor/socket.png | Bin 0 -> 540 bytes
assets/hicolor/sound.png | Bin 0 -> 979 bytes
assets/hicolor/source.png | Bin 0 -> 710 bytes
assets/hicolor/source_java.png | Bin 0 -> 830 bytes
assets/hicolor/tar.png | Bin 0 -> 991 bytes
assets/hicolor/tgz.png | Bin 0 -> 880 bytes
assets/hicolor/trashcan_empty.png | Bin 0 -> 519 bytes
assets/hicolor/trashcan_full.png | Bin 0 -> 552 bytes
assets/hicolor/txt.png | Bin 0 -> 994 bytes
assets/hicolor/unknown.png | Bin 0 -> 843 bytes
assets/hicolor/up.png | Bin 0 -> 10179 bytes
assets/hicolor/vcalendar.png | Bin 0 -> 547 bytes
assets/hicolor/vcard.png | Bin 0 -> 546 bytes
assets/hicolor/vectorgfx.png | Bin 0 -> 1003 bytes
assets/hicolor/video.png | Bin 0 -> 1050 bytes
assets/hicolor/widget_doc.png | Bin 0 -> 783 bytes
assets/hicolor/wordprocessing.png | Bin 0 -> 970 bytes
assets/hicolor/www.png | Bin 0 -> 1032 bytes
assets/info.png | Bin 0 -> 641 bytes
assets/info_green.png | Bin 0 -> 2508 bytes
assets/kns_logo.gif | Bin 0 -> 95326 bytes
assets/loading.gif | Bin 0 -> 2031 bytes
assets/mail_send.png | Bin 0 -> 925 bytes
assets/mario_explodes.gif | Bin 0 -> 236135 bytes
assets/mario_relaxing.gif | Bin 0 -> 87346 bytes
assets/mariopaint_hand_gold.cur | Bin 0 -> 4286 bytes
assets/mariopaint_hand_white.cur | Bin 0 -> 4286 bytes
assets/me.png | Bin 0 -> 49798 bytes
assets/menu_closed.png | Bin 0 -> 858 bytes
assets/menu_icons.gif | Bin 0 -> 1393 bytes
assets/menu_icons.png | Bin 0 -> 1580 bytes
assets/menu_open.png | Bin 0 -> 1014 bytes
assets/msg_error.gif | Bin 0 -> 140 bytes
assets/msg_error2.gif | Bin 0 -> 262 bytes
assets/msg_info.gif | Bin 0 -> 181 bytes
assets/msg_info2.gif | Bin 0 -> 315 bytes
assets/msg_succ.gif | Bin 0 -> 181 bytes
assets/msg_succ2.gif | Bin 0 -> 315 bytes
assets/msg_warn.gif | Bin 0 -> 125 bytes
assets/msg_warn2.gif | Bin 0 -> 240 bytes
assets/p_anarchy.gif | Bin 0 -> 7672 bytes
assets/p_antifa.gif | Bin 0 -> 2563 bytes
assets/p_arachnid.png | Bin 0 -> 727 bytes
assets/p_bunnyhearted.gif | Bin 0 -> 2059 bytes
assets/p_cel.png | Bin 0 -> 5490 bytes
assets/p_cocksuckingfaggot.gif | Bin 0 -> 2081 bytes
assets/p_monero.gif | Bin 0 -> 921 bytes
assets/p_pride.xcf | Bin 0 -> 18021 bytes
assets/p_pride_furry.gif | Bin 0 -> 427 bytes
assets/p_pride_furry2.gif | Bin 0 -> 292 bytes
assets/p_pride_polyam.gif | Bin 0 -> 274 bytes
assets/p_pride_punk.gif | Bin 0 -> 481 bytes
assets/p_pride_punk2.gif | Bin 0 -> 437 bytes
assets/p_pride_punk_furry.gif | Bin 0 -> 428 bytes
assets/p_pride_pup.gif | Bin 0 -> 396 bytes
assets/p_pride_trans_furry.gif | Bin 0 -> 309 bytes
assets/p_pride_transspecies.gif | Bin 0 -> 390 bytes
assets/p_pride_transspecies2.gif | Bin 0 -> 304 bytes
assets/p_pride_transspecies_anim.gif | Bin 0 -> 2109 bytes
assets/p_web_pi.png | Bin 0 -> 3802 bytes
assets/p_webb.png | Bin 0 -> 369 bytes
assets/radiobtn.gif | Bin 0 -> 452 bytes
assets/reload.png | Bin 0 -> 800 bytes
assets/right_arr_big.png | Bin 0 -> 1232 bytes
assets/scanline.png | Bin 0 -> 178 bytes
assets/site_button.gif | Bin 0 -> 7263 bytes
assets/site_button.xcf | Bin 0 -> 506700 bytes
assets/site_favicon.png | Bin 0 -> 719 bytes
assets/site_favicon.xcf | Bin 0 -> 1516 bytes
assets/site_favicon_large.png | Bin 0 -> 4741 bytes
assets/sorry_nothing.png | Bin 0 -> 2892 bytes
assets/sorry_nothing_face.png | Bin 0 -> 2164 bytes
assets/tip.png | Bin 0 -> 385 bytes
assets/treearr.gif | Bin 0 -> 86 bytes
assets/treearrd.gif | Bin 0 -> 86 bytes
assets/treearrdi.gif | Bin 0 -> 70 bytes
assets/treearri.gif | Bin 0 -> 70 bytes
assets/winclose.gif | Bin 0 -> 166 bytes
assets/winclosn.gif | Bin 0 -> 125 bytes
assets/winshade.gif | Bin 0 -> 162 bytes
assets/winshadn.gif | Bin 0 -> 127 bytes
assets/winsize.gif | Bin 0 -> 168 bytes
assets/winstripe.gif | Bin 0 -> 55 bytes
assets/winstripeerr.gif | Bin 0 -> 55 bytes
assets/www-logo.png | Bin 0 -> 18075 bytes
css/Makefile | 4 +
css/components.scss | 289 ++++++++++++++
css/main.scss | 480 +++++++++++++++++++++++
git-post-receive-hook.sh | 3 +
index.php | 268 +++++++++++++
js/nav-toggle.js | 34 ++
sys/.htaccess | 2 +
sys/default_template.php | 104 +++++
sys/footer.php | 40 ++
sys/increment.php | 76 ++++
sys/infobox.php | 88 +++++
sys/navbar.php | 67 ++++
sys/semantics.php | 15 +
sys/site.php | 121 ++++++
sys/templating.php | 200 ++++++++++
sys/widget.php | 29 ++
231 files changed, 1918 insertions(+)
create mode 100644 README.md
create mode 100644 about_copyleft.php
create mode 100644 assets/.htaccess
create mode 100644 assets/b_btn.gif
create mode 100644 assets/b_btnpush.gif
create mode 100644 assets/b_btnring.gif
create mode 100644 assets/b_defbtn.gif
create mode 100644 assets/b_frame.gif
create mode 100644 assets/b_gen.gif
create mode 100644 assets/b_genpush.gif
create mode 100644 assets/b_keycap.gif
create mode 100644 assets/b_keycap2.gif
create mode 100644 assets/b_text.gif
create mode 100644 assets/b_textdis.gif
create mode 100644 assets/b_winframe.gif
create mode 100644 assets/b_winframe2.gif
create mode 100644 assets/b_winframe2err.gif
create mode 100644 assets/b_winnote.gif
create mode 100644 assets/b_wintitle.gif
create mode 100644 assets/b_wintitle2err.gif
create mode 100644 assets/ball.png
create mode 100644 assets/bull_arrow.gif
create mode 100644 assets/bull_arrow_down.gif
create mode 100644 assets/bull_arrow_down_in.gif
create mode 100644 assets/bull_arrow_in.gif
create mode 100644 assets/bull_diamond.gif
create mode 100644 assets/bull_diamond_blue.gif
create mode 100644 assets/bull_diamond_cyan.gif
create mode 100644 assets/bull_diamond_green.gif
create mode 100644 assets/bull_diamond_in.gif
create mode 100644 assets/bull_diamond_magenta.gif
create mode 100644 assets/bull_diamond_red.gif
create mode 100644 assets/bull_diamond_yellow.gif
create mode 100644 assets/canyon.mid
create mode 100644 assets/checkbox.gif
create mode 100644 assets/coffeebean.gif
create mode 100644 assets/coffeebean2.gif
create mode 100644 assets/coffeebean_dark.gif
create mode 100644 assets/coffeebean_dark2.gif
create mode 100644 assets/coffeebean_light.gif
create mode 100644 assets/coin_bch.png
create mode 100644 assets/coin_btc.png
create mode 100644 assets/coin_eth.png
create mode 100644 assets/coin_ltc.png
create mode 100644 assets/coin_wow.png
create mode 100644 assets/coin_xmr.png
create mode 100644 assets/colarrow.png
create mode 100644 assets/entry_of_the_gladiators.mp3
create mode 100644 assets/error.png
create mode 100644 assets/error_big.png
create mode 100644 assets/error_big2.png
create mode 100644 assets/favicon.png
create mode 100644 assets/fonts/IBMPlexSerif-400.woff2
create mode 100644 assets/fonts/IBMPlexSerif-400i.woff2
create mode 100644 assets/fonts/IBMPlexSerif-500.woff2
create mode 100644 assets/fonts/IBMPlexSerif-500i.woff2
create mode 100644 assets/fonts/IBMPlexSerif-700.woff2
create mode 100644 assets/fonts/IBMPlexSerif-700i.woff2
create mode 100644 assets/fonts/plex-serif.css
create mode 100644 assets/hicolor/.htaccess
create mode 100644 assets/hicolor/applix.png
create mode 100644 assets/hicolor/binary2.png
create mode 100644 assets/hicolor/cdtrack.png
create mode 100644 assets/hicolor/clipboard.png
create mode 100644 assets/hicolor/colorscm.png
create mode 100644 assets/hicolor/core.png
create mode 100644 assets/hicolor/deb.png
create mode 100644 assets/hicolor/document.png
create mode 100644 assets/hicolor/document2.png
create mode 100644 assets/hicolor/dvi.png
create mode 100644 assets/hicolor/exec.png
create mode 100644 assets/hicolor/folder.png
create mode 100644 assets/hicolor/folder_blue.png
create mode 100644 assets/hicolor/folder_blue_open.png
create mode 100644 assets/hicolor/folder_cyan.png
create mode 100644 assets/hicolor/folder_cyan_open.png
create mode 100644 assets/hicolor/folder_green.png
create mode 100644 assets/hicolor/folder_green_open.png
create mode 100644 assets/hicolor/folder_grey.png
create mode 100644 assets/hicolor/folder_grey_open.png
create mode 100644 assets/hicolor/folder_home.png
create mode 100644 assets/hicolor/folder_html.png
create mode 100644 assets/hicolor/folder_image.png
create mode 100644 assets/hicolor/folder_locked.png
create mode 100644 assets/hicolor/folder_man.png
create mode 100644 assets/hicolor/folder_open.png
create mode 100644 assets/hicolor/folder_orange.png
create mode 100644 assets/hicolor/folder_orange_open.png
create mode 100644 assets/hicolor/folder_print2.png
create mode 100644 assets/hicolor/folder_red.png
create mode 100644 assets/hicolor/folder_red_open.png
create mode 100644 assets/hicolor/folder_sound.png
create mode 100644 assets/hicolor/folder_tar.png
create mode 100644 assets/hicolor/folder_txt.png
create mode 100644 assets/hicolor/folder_video.png
create mode 100644 assets/hicolor/folder_violet.png
create mode 100644 assets/hicolor/folder_violet_open.png
create mode 100644 assets/hicolor/folder_wordprocessing.png
create mode 100644 assets/hicolor/folder_yellow.png
create mode 100644 assets/hicolor/folder_yellow_open.png
create mode 100644 assets/hicolor/font_bitmap.png
create mode 100644 assets/hicolor/font_truetype.png
create mode 100644 assets/hicolor/font_type1.png
create mode 100644 assets/hicolor/forward.png
create mode 100644 assets/hicolor/ftp.png
create mode 100644 assets/hicolor/gettext.png
create mode 100644 assets/hicolor/gf.png
create mode 100644 assets/hicolor/html.png
create mode 100644 assets/hicolor/image.png
create mode 100644 assets/hicolor/info.png
create mode 100644 assets/hicolor/launch.png
create mode 100644 assets/hicolor/log.png
create mode 100644 assets/hicolor/make.png
create mode 100644 assets/hicolor/man.png
create mode 100644 assets/hicolor/message.png
create mode 100644 assets/hicolor/midi.png
create mode 100644 assets/hicolor/mime_empty.png
create mode 100644 assets/hicolor/misc_doc.png
create mode 100644 assets/hicolor/netscape_doc.png
create mode 100644 assets/hicolor/network.png
create mode 100644 assets/hicolor/network_local.png
create mode 100644 assets/hicolor/news.png
create mode 100644 assets/hicolor/pdf.png
create mode 100644 assets/hicolor/pipe.png
create mode 100644 assets/hicolor/postscript.png
create mode 100644 assets/hicolor/readme.png
create mode 100644 assets/hicolor/recycled.png
create mode 100644 assets/hicolor/resource.png
create mode 100644 assets/hicolor/shellscript.png
create mode 100644 assets/hicolor/shellscript2.png
create mode 100644 assets/hicolor/socket.png
create mode 100644 assets/hicolor/sound.png
create mode 100644 assets/hicolor/source.png
create mode 100644 assets/hicolor/source_java.png
create mode 100644 assets/hicolor/tar.png
create mode 100644 assets/hicolor/tgz.png
create mode 100644 assets/hicolor/trashcan_empty.png
create mode 100644 assets/hicolor/trashcan_full.png
create mode 100644 assets/hicolor/txt.png
create mode 100644 assets/hicolor/unknown.png
create mode 100644 assets/hicolor/up.png
create mode 100644 assets/hicolor/vcalendar.png
create mode 100644 assets/hicolor/vcard.png
create mode 100644 assets/hicolor/vectorgfx.png
create mode 100644 assets/hicolor/video.png
create mode 100644 assets/hicolor/widget_doc.png
create mode 100644 assets/hicolor/wordprocessing.png
create mode 100644 assets/hicolor/www.png
create mode 100644 assets/info.png
create mode 100644 assets/info_green.png
create mode 100644 assets/kns_logo.gif
create mode 100644 assets/loading.gif
create mode 100644 assets/mail_send.png
create mode 100644 assets/mario_explodes.gif
create mode 100644 assets/mario_relaxing.gif
create mode 100644 assets/mariopaint_hand_gold.cur
create mode 100644 assets/mariopaint_hand_white.cur
create mode 100644 assets/me.png
create mode 100644 assets/menu_closed.png
create mode 100644 assets/menu_icons.gif
create mode 100644 assets/menu_icons.png
create mode 100644 assets/menu_open.png
create mode 100644 assets/msg_error.gif
create mode 100644 assets/msg_error2.gif
create mode 100644 assets/msg_info.gif
create mode 100644 assets/msg_info2.gif
create mode 100644 assets/msg_succ.gif
create mode 100644 assets/msg_succ2.gif
create mode 100644 assets/msg_warn.gif
create mode 100644 assets/msg_warn2.gif
create mode 100644 assets/p_anarchy.gif
create mode 100644 assets/p_antifa.gif
create mode 100644 assets/p_arachnid.png
create mode 100644 assets/p_bunnyhearted.gif
create mode 100644 assets/p_cel.png
create mode 100644 assets/p_cocksuckingfaggot.gif
create mode 100644 assets/p_monero.gif
create mode 100644 assets/p_pride.xcf
create mode 100644 assets/p_pride_furry.gif
create mode 100644 assets/p_pride_furry2.gif
create mode 100644 assets/p_pride_polyam.gif
create mode 100644 assets/p_pride_punk.gif
create mode 100644 assets/p_pride_punk2.gif
create mode 100644 assets/p_pride_punk_furry.gif
create mode 100644 assets/p_pride_pup.gif
create mode 100644 assets/p_pride_trans_furry.gif
create mode 100644 assets/p_pride_transspecies.gif
create mode 100644 assets/p_pride_transspecies2.gif
create mode 100644 assets/p_pride_transspecies_anim.gif
create mode 100644 assets/p_web_pi.png
create mode 100644 assets/p_webb.png
create mode 100644 assets/radiobtn.gif
create mode 100644 assets/reload.png
create mode 100644 assets/right_arr_big.png
create mode 100644 assets/scanline.png
create mode 100644 assets/site_button.gif
create mode 100644 assets/site_button.xcf
create mode 100644 assets/site_favicon.png
create mode 100644 assets/site_favicon.xcf
create mode 100644 assets/site_favicon_large.png
create mode 100644 assets/sorry_nothing.png
create mode 100644 assets/sorry_nothing_face.png
create mode 100644 assets/tip.png
create mode 100644 assets/treearr.gif
create mode 100644 assets/treearrd.gif
create mode 100644 assets/treearrdi.gif
create mode 100644 assets/treearri.gif
create mode 100644 assets/winclose.gif
create mode 100644 assets/winclosn.gif
create mode 100644 assets/winshade.gif
create mode 100644 assets/winshadn.gif
create mode 100644 assets/winsize.gif
create mode 100644 assets/winstripe.gif
create mode 100644 assets/winstripeerr.gif
create mode 100644 assets/www-logo.png
create mode 100644 css/Makefile
create mode 100644 css/components.scss
create mode 100644 css/main.scss
create mode 100644 git-post-receive-hook.sh
create mode 100644 index.php
create mode 100644 js/nav-toggle.js
create mode 100644 sys/.htaccess
create mode 100644 sys/default_template.php
create mode 100644 sys/footer.php
create mode 100644 sys/increment.php
create mode 100644 sys/infobox.php
create mode 100644 sys/navbar.php
create mode 100644 sys/semantics.php
create mode 100644 sys/site.php
create mode 100644 sys/templating.php
create mode 100644 sys/widget.php
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..ab1f07d
--- /dev/null
+++ b/README.md
@@ -0,0 +1,19 @@
+# Public PHP for ~keith's Web site
+
+This repository contains the core PHP scripts that power [my Web site](https://keithhacks.cyou/).
+It's a bit of a spaghetti monster in here - I want to clean this up and turn it into a nice, shiny framework eventually.
+
+BTW, this is [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/) like the rest of my site. I'd be happy to see this help other people make their own Web sites.
+
+## What The Hell Am I Looking At?!
+
+Pretty much everything of note is in the `sys/` directory.
+
+`sys/templating.php` is a simple template system. It lets you define the layout of your site in one place, so you don't have to rewrite all the ` ...` nonsense on every single page. Check out `sys/default_template.php` and `about_copyleft.php` to see how it's used.
+
+`sys/navbar.php` is the code that renders the navigator. `sys/site.php` holds the sitemap it uses, and a couple other things.
+
+Outside of `sys/`, there's also:
+- SCSS stylesheets in `css/`. Just run `make` in that directory.
+- `git-post-receive-hook.sh`, which needs to be placed at `.git/hooks/post-receive` on your Web server if you're using the site changelog.
+- Assets which we won't worry about :-) (The icons in `assets/hicolor/` are from KDE 3, though.)
diff --git a/about_copyleft.php b/about_copyleft.php
new file mode 100644
index 0000000..e0be2fc
--- /dev/null
+++ b/about_copyleft.php
@@ -0,0 +1,29 @@
+
+
+
+ The gist
+
+ Almost everything on this Web site is CC BY-NC-SA 4.0.
+
+ Basically, you can do whatever you want with my stuff. I encourage you to repost it, edit it, anything you like! As long as you:
+
+ - Allow others to modify and redistribute your version, too.
+ - Don't sell it, monetize it, or otherwise try to make money from it.
+ - Credit me - it's as easy as saying "~keith made the original" and linking to this Web site.
+
+
+
+
+ Source code
+ However, any code I publish is licensed under the GNU AGPLv3 instead (unless I say otherwise).
+
Essentially, this means that if you publish a modified version of my software, or a program that uses my software, you have to publish your source code along with it, under the same license. You also have to disclose the source code if you run my software as an online service.
+
+
+
diff --git a/assets/.htaccess b/assets/.htaccess
new file mode 100644
index 0000000..28f26f5
--- /dev/null
+++ b/assets/.htaccess
@@ -0,0 +1,4 @@
+
+ # Cache assets for a week
+ Header set Cache-Control "max-age=604800,public,no-transform"
+
diff --git a/assets/b_btn.gif b/assets/b_btn.gif
new file mode 100644
index 0000000000000000000000000000000000000000..ba1335622792159558941cf699dafad0ce89b3fe
GIT binary patch
literal 128
zcmZ?wbhEHb6krfwIK;*P1Tr!*<>lq8R;}8-d-vVDcmIQd;!hSvE(Uf69gqr;S_Wp<
z3h@j79AzE4_ReTCRz|NopQUOxS
z!0c8be&L^^tir0jqHC;n{dYOYA)7caJ<&wvRhzcyo)xFgZOJ^nQ*QfSSp)SWg7t1u
eh8f%(POU3KvJ6}pR;?=AJ;^}s!3jl125SHq4J;7=
literal 0
HcmV?d00001
diff --git a/assets/b_btnring.gif b/assets/b_btnring.gif
new file mode 100644
index 0000000000000000000000000000000000000000..6fe7733a5460d5e09f67de4a171adc90e760ece9
GIT binary patch
literal 170
zcmZ?wbhEHb6krfwc+9~71Tr!*<>loa9UZGyt=heN_n9+i?%uuo9|utU$->CRz`>vc
z(g`wyfhAnvB*Ut;j#&k}zO!v8b;+F7Dlvg6mDR~IfL*a;7RwQH_Y_Ot17Ry4HgPaq
zEa%axc3YAsIn}P)UNeb9RjK?)!@?`O4sbMwZ7RrG-ruk#!Ee6#cJa+>Obpfl>MBex
literal 0
HcmV?d00001
diff --git a/assets/b_defbtn.gif b/assets/b_defbtn.gif
new file mode 100644
index 0000000000000000000000000000000000000000..98298239280a137013b444c9dca3a4c44bc8af67
GIT binary patch
literal 209
zcmZ?wbhEHb6k!lyc+9~71Tr!*<>loa9UZGyt=heN_n9+i?%uuo9|utU$->CRz|Wuq
z(g`wyfu-)lNrqK>O;7Ol{eO_oFvopPMweJh0++}%&gTxYEes+Lk6+rwrx@TM(SO`o
zal+~cR>$Q0u8TM=4R-ii>5wox`cNnrU(w!_Rgri8u9}-uvYto2-7jBJaQUIbhpbqc
onp;{J92gkcDh!PnO_&Y%t!t-FR1spB*gB_8TG*&hT9CmS0P!(e%>V!Z
literal 0
HcmV?d00001
diff --git a/assets/b_frame.gif b/assets/b_frame.gif
new file mode 100644
index 0000000000000000000000000000000000000000..7f1498eee5ae7aa797cdfa78e6731d9e2984929f
GIT binary patch
literal 120
zcmZ?wbhEHb6krfwIK<2V1T$yOJagvEe^j9OlZBCsfrUW_qynUtf!UU0*BvW^QyTMj
zSlmz8`uxBK)|Af1MGQuoyBJ-3TJ+Z*+Vu9`r#oeH=JCDwag#;ZL-*;)H?!1RSGlaU
KTGzwEU=0A5`ZkjQ
literal 0
HcmV?d00001
diff --git a/assets/b_gen.gif b/assets/b_gen.gif
new file mode 100644
index 0000000000000000000000000000000000000000..f3f7c12a36775e8201eabb2bdce98de056dc9dd1
GIT binary patch
literal 103
zcmZ?wbhEHb6krfwIK<2V1T$yOJagvEe^j9OlZBCsfrUW_qynUtfmw%R*BvW^QyTMj
sSlmz8`uxCy+PfW%iz=sSty=eR_r_(~xApI7IX(D)V1Dum4+aKn0B?OTO#lD@
literal 0
HcmV?d00001
diff --git a/assets/b_genpush.gif b/assets/b_genpush.gif
new file mode 100644
index 0000000000000000000000000000000000000000..a9267a941fc73d1b8c18bb3e4758a866403ab446
GIT binary patch
literal 124
zcmZ?wbhEHb6krfwIK;vL1fij!9UUF3R;{{=1Qh=XIv1rTmZYXAlxLP?D7bt21~4f8
zWMSlDU}4Y!X#*L+z^ucu>yDJcDUEqMEbb?6eeUp}_HIYxqRMGntJXc-y>XfLZT)*%
QhaUVtFhBW(2LppO0IhK|5dZ)H
literal 0
HcmV?d00001
diff --git a/assets/b_keycap.gif b/assets/b_keycap.gif
new file mode 100644
index 0000000000000000000000000000000000000000..b6962ad3f1698eb55fae7cc7c11fcdf7f3861fe5
GIT binary patch
literal 116
zcmZ?wbhEHb6krfwIK;{T1RWh6XU?3td-v|UcklkgfZ|UUMlJ?+1|5(JkXi<2OO9Q4
zyp&H_dIU`Mt9DdLkl=Fs&Y3Z5TEx5
LZ~K&q3=Gx)84)px
literal 0
HcmV?d00001
diff --git a/assets/b_keycap2.gif b/assets/b_keycap2.gif
new file mode 100644
index 0000000000000000000000000000000000000000..15afa25abb3ed752480760367d17d68d46f34381
GIT binary patch
literal 116
zcmZ?wbhEHb6krfwIK;{T0<+FCoc*8n|NpB02%z|rg^`Paok0hr0Hl_I*^*<|9WUim
zmL369{i+>R5+t}BzjJ2HnijEi-iD-5t!Yder8X9`{?%n@jp!k!8k&A(uL5BedK=KSsf<5&MvK90lnhTvI
N@8o(fjAvl51^~6G6e<7!
literal 0
HcmV?d00001
diff --git a/assets/b_winframe.gif b/assets/b_winframe.gif
new file mode 100644
index 0000000000000000000000000000000000000000..bedd8f987c5d73c1f221e82099df88122fb81abe
GIT binary patch
literal 118
zcmZ?wbhEHb6krfwIK<2V1T$yOJagvEe^j9OlZBCsfrUW_qynUtf!UfvS;%1m!?lJa
zy;Gt2SLX@aU9@PLGh@<(or`9Co%Y)EcvytCx
literal 0
HcmV?d00001
diff --git a/assets/b_winframe2.gif b/assets/b_winframe2.gif
new file mode 100644
index 0000000000000000000000000000000000000000..e6c3ad9ddd217a31980dc8e3c8a20f847f83b2e0
GIT binary patch
literal 111
zcmZ?wbhEHb6krfwIK;vL1fij!GiT1cd-v{tB%t_{g^`Paok0hr0;HCK*@R=)9V-K`
zpB;N=^aMN?kuk`KV<}TD=}Otvw^HiR$J^7&Y@U3rsa`)f!9(X9(}^WUFEfmU7_0&7
C-?c
z;tWo4wreTB)~%91w6#|uxP`$jOVM$O#zVF>$eg3BGg|P{-2!brM=2!|~zgTY33*hJ0tB1D1?iwhv
zx~$e8BhhdGHC6Kwm8=7sYMMMx6@f&+xjK0b%Ce5!5>$~&e-O%#j>}C@UNf#E+vrsD
zkcF^60UHVBC9r=3Hep|QueYHrzoM1*hfxTU4M!7ww$+x8l3E?1rHs&?AoVOkv7`~z
z(X7G5>PWc1s%6R}87Vi9%7XqqBV=UcTQf3He?W8z9)KXB6HgvC=e(P?qIYNUX-#}o
zL(|AFTiF}E_=>Xl1Nn&`#Qugo_Oq`dZ3&G_mSuOpIXryHalN~D`?jcU>FRq(d8NNV
zI=uLs7nl6BC*=S8^HpE0sv1LTJ1*NhR;yk=4x9zn#20tQ@BLjgdVtGK(&!3L{-{@<
za;e{3Q}f4$J8Q>+wTD!vOUR3>)vJ&Bih3UHp1*a~{{P=-jnUokgEIwi@jtPmCNpwX13DFX!9*LnCclZ?!#{_u!rU^y2OR
zWZ!?})%N|#`__sFUTum5A&pOcULdS2F{$PZf92ks5me%4jo
zK{Fpc{%m8~ScA9r;Joe~E!W#W8RG|h&B!m@!y9h>x6D>@_sD;;vKv;ao*uZ^TakU_
zi>I!vL_dFZW8G+u>i7f4Bcaq+#LE#GZ>4>6e4u#GW3R=f9qrt36N%b)v8euRzjNiUoU-RAkF#dC{xooT3A0LteieFeD{4tfNAfYZemShB_;;K-~gl_Wol
z<5g8v+A2yb2Hd!gVHlhsagxNK1{SRLNn8l?1(RfmFop#L`GDY;1ks1en4Ckbkjxql
zTt_GT^ZISJNqApyoCU}S9^(ACPD|ikFFxHOC}mbcka35;)goxG_5-{C1jUK~4>Bu(
zPfD5&;p8Xn{S^U^avUd*0}t>*)gateH)Bir#!Xtt6u1SiU$KH@&(M?v*A!VZe3Ms{
z<4ku1nor`+(4IKEq71ccHr68Y6|#F)i&-P@&pJh3aI%VMAPj)xXa~kS4FJ;{O#q`w
z1B2;xI?iM;8A+F(oCam}1treM0~rc}YXykI5C)p(Xda^|0zv?z19RwU27{)wi6D$F
z2SZPT$O{NCD>=_}uVg4Egwk^q&pT)*#xN!wre~ZKM(YU|<}y$&7vnPWJP#BoC(mYy
z0WSx`DR?@C3tmttaWb1alTN2+
zD4HTklGag%DW$C-5QLd1V=A>%S&_rS!oxsfIXO=ufHDuy!e#^jCy4>OD0?IiDNA>M@?K6Z68iq=J!#fp>8vMsqZQ
z=^Z8-V+fAH7>b~P!Q?O)=rFC5=t0pXRdE53?uI--{)qFeDH2HJ)w{a|;xm+hkV!&e1hT
z*Q^+rmGWG6&CxY024{Q|i}F;7e3{Wz
z3#Ax;&h{XJ{2)$ls>UxPPQ%G4$!g1t`gcUaQs#%7e?Dx2e;6cNE$Mdp%KJ^-yWUAt
z*QM^rOKd$C3E~_()6}s;yKggJEvjC6v%9P{Prb$*{p|Y0JoS>J(MyvP-zte4e8Eue
z_2A6|pZ3-CUA@=w+0C|!t1s;fh$rvA)VY9c@ysU?v1!%dvhtfTp60!FRn*`5dpn;`
zEsRK8Ui5WA^i%yCt!LJ%V)iGz7n9RG6r)~Y#^OF6x^?=w$L(zw_Pkji|L*>ulw5yX
z>RaHrVOC2I5Mn8E>duwXj=g`_aKJuTzjxH?~~)#4m9^&O1ZIU;d>Ry
z;@tzkKerQEckMcRyTWs3&)Kibg_UWo{KkIM=aJN4X*NEZ?vyFEW^S_lc74g-{{dea
BQp*4U
literal 0
HcmV?d00001
diff --git a/assets/bull_arrow.gif b/assets/bull_arrow.gif
new file mode 100644
index 0000000000000000000000000000000000000000..7f5e83e794bfed2ee0944e39253394925b3f6f7e
GIT binary patch
literal 77
zcmZ?wbhEHbcvYwRt9ST895v^
literal 0
HcmV?d00001
diff --git a/assets/bull_arrow_down.gif b/assets/bull_arrow_down.gif
new file mode 100644
index 0000000000000000000000000000000000000000..0f124d2c93e77ac59be9d5b33825ea1aaef283be
GIT binary patch
literal 75
zcmZ?wbhEHb2
cO7pqgd~rA=`d;Wkk**ZZIV+;lVi_5%0hsU@W&i*H
literal 0
HcmV?d00001
diff --git a/assets/bull_arrow_in.gif b/assets/bull_arrow_in.gif
new file mode 100644
index 0000000000000000000000000000000000000000..6af613ea92b39510a53a65633e3ff322545f1c24
GIT binary patch
literal 77
zcmZ?wbhEHb+O+{A9pJcZRk`^n!%@F_2MNTD}yxv^CTM(
literal 0
HcmV?d00001
diff --git a/assets/bull_diamond.gif b/assets/bull_diamond.gif
new file mode 100644
index 0000000000000000000000000000000000000000..e4a7009eb40ee5376b18e2aa0c437742b034178c
GIT binary patch
literal 100
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
z
z6cm8$2;`YN$4>a&34d|x3}E7n-|?DH>?GskB|gy#1NqsAaOX|#(VQJP;m^L{Ba3Kh
z=yom=DJTn=LfE)mJ|3=emx)5B9AM$2W-tPWd-Q#5C*&&A@AsNTT|hw_ad~m6fRyMy
zjTNovs}NWfU>Y}WLSYS*cu?5@HI0RKk_KL-nVrFlV-ka|Bl;d=Y$?_`U+-BTQUs$q
zesIefCm2rLcb?C9p%dtg0m@5XR#*S;EkNb})vntB1O%x;|6eMaT>9a|xBR)h{
zuDDjL9_%j1f}-Cnps%jMQv2{(>#RNNtogiDDn8O5q5CDu_L`)0tEn|i_tVBQd_@sT
zz5Ea#Dsx3mEvr2)MIT!ayv*F9F>+m$Daw)Wm?U*ly_eJGU0fI(Cd{BDK@vehMgjK0
z6c=9x2tyIVPy@w~07u8-z&|NuaX_-Xmvy)*igD(O+Rxa68d?+ry!`3a8lCuaWX+va
zl|x6`39(s9;=q3C%S&r&YE@Hw35w?+er`Sb-K8hPP<<1EA7huZTG&1QvkqxGr`_DM
zq$((+@DP%Qa=OWdlh}kmf6&FAZ`VV8&ovdJse^W|zHa}`jN2w{kqQujJ!m8Py@O76
zxjVm1+Q>e0Af2!B!EsOI6i2OFlx7L$f(ayyKk;NZfdcy5gM*{cBa9!0S@wj+_K(az}Z(+)|JAZABFwBege
zem80wdbx006f%%MKd1Z^ak-w>Z~DDnan#m@@WjVNaZvNJ;wT&d8sw+CQ3bBSaY{UF
zl{kaFcqnTKW%aNd4`mLZtU)Ro29O#}$qng6Y!ywEQbCJepH}wB&_TT^Ey!;&(-R?W~S0=dRnC}G%~^|{;8(@koDF$zkVOIWuUVnVObO*rROif%HV
zR&$2jp1Q2{VnPTrMn{!G1YyU6syj^8WzD?a?Z|IW&8TVa3ms}@Qs|CO`NNq1vODL=
zK1nV6B6L?0TzTmW9q5o?W-fF%@kNn8QK}Srbt4zFKF&joXiStvfe7d0JBs;Ks!2^J
z)Kp6=??cBCw=o2OH@T1^X{vP*)alOh3X5LPQiseE@oBT`g?3UGUL}sup>ya^z^;#|
zOs!U#QM`}zSAJOBV49lMV(XKW1ajb4E^&>qfYa<>S@WqWw3C|ia{I2^Q~DFer*Gwg
zhC`Gz$WFQ(Cu|1)3)T)XO9I#)uyKI1l|Umtg>T>glEvy&(;X_6WY>JL)oD_$VxhRfVzxWI7-
z*s=q&$>&JbvM`MZBt#@ePsdT^A!ildKLEcWIuX{{-IL<%2h(ut{b`jNQ*Y@pDH
zlp2vz>zX=+J#FcHc0~tx`}j9&e#?UYuaolbe_){Uuitg5{|ASnhzS4y
literal 0
HcmV?d00001
diff --git a/assets/checkbox.gif b/assets/checkbox.gif
new file mode 100644
index 0000000000000000000000000000000000000000..3180ba77d97519baf49b1ee95b7b8b69b2d0ec78
GIT binary patch
literal 377
zcmZ?wbhEHbRA4Y*c+AcK1THQvp`oGW<>eh69W!UnT(xS|-Me@H|NjppF@fSw7Dg@x
zeg++oPLLT4EdM^7^jy8y;x+HC|FW!o4IOhds-_4}*r)w_hkNez78~X7cX`=3*S25g
zt)91Fg1gNVpCf$-PN>*Lcl5nAUtl&j?(O-4*t*lZn-4OxIM06ZaM#;o^Y)rn#lBGa
z@xRWkwxQllMP8|0PP(VJuYbbCNfWxdb*H*9&6+(sR%y6(?RH|6MV+_Y-`RtCl`J7>l$VhrBBiFw!dMTePAZa98ob+GJ_i^mQe3%+{o)bVr1
zJ8s``I>Gwv`7^htFP^te?R-D^)8{W=zX`ScWD)t*@+aQnALAF}Mg|9UriX8|D+(0%
z8M8?8`BWU{cj`?47kMP{!=uBU>O#7CUw$k|cI&Cv3fkgyF~y;$AnaQ~#HNKlQ(1ri
QeYo8C(cbyJN(>Cv06+7+JOBUy
literal 0
HcmV?d00001
diff --git a/assets/coffeebean.gif b/assets/coffeebean.gif
new file mode 100644
index 0000000000000000000000000000000000000000..b724f00042e4798818468b6b8dc2943d92339ab2
GIT binary patch
literal 7175
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
literal 0
HcmV?d00001
diff --git a/assets/coffeebean2.gif b/assets/coffeebean2.gif
new file mode 100644
index 0000000000000000000000000000000000000000..69a0015e03c46f44b7d9b33d20828e06a95f2a6b
GIT binary patch
literal 777
zcmV+k1NQt!Nk%w1VSoUD0OJV&?(6>W?f&xb{`mL*`S}0(`TzU+|NQ*_{{H{}|NsC0
z|NsC0|NsC0|NsC0|NsC0A^s6Va%Ew3Wn>_CX>@2HM@dak03rDV0SW*Q04x9i004jh
zfB*ml{xHc&tGzhu&Ab0#D2`-lo@lDBZ0o*oEYEap-*~R?eDD9jpm0bm8jr}Na>;Bu
zpU|juO08P2*sONT?Rvl9uy{-^o6qR93IIqL)G)TZ4R6imb=KX$&adTf5&(gICV&%z
zg(v|56l?~BiX(Ir0g;lE6$F%+nVOv?oDu|}B%-CEs417KBYdqVeXt|}va=$!r?(xs
zyCRRiAi%*LcpL}8#vB8_haJqfe748Ux)+TH$hQEb#Rmb}#248I1I*px8s+2@$m9c!
zod*Em64{jr@z4q6;p}JD_}v-!tsaGY@60Ikz-Zu{eF*ru15@A*HFfhG(z_Q1Pk{^m
z`woV?a4Mr5j$IaxlfVp`wvZm?fC2Ckqr+SP1jxY|ahx`tUuaf1pi`sKqjxxF3@Qq#
z)29QzO-niTsa2Wa1|aA&M}QZV6c7mb#*ZJkZwI#C>nX8lS2+TGV6|+TDI<002v!<%tyG6wpv8lVDp*)u-&DG1Ev{SnI7V!VFSy{X<4!$Ha$(U
z;ar8T3IyP`;&I4&ip3E)2MQ<+I*Vu#Xc3=2ygGAZCcg`dfLS>JW!}Xd9aloQmf8)>
z1!XWgmgICJjR)lHHSV_A0Pu46)}XmaKm_F~VuAC_kVWzE6p4(4GYKPbH%u+i(~R
z_*EZ#aljiQUgefwdsP6I7D^VVrjl%P%;$(00Lp=(Q562ih5#CFRv%@;xF*Jj>!k?c
z67$rSfl__p6T)t%Wf56Un(bwRb3D!=BNiILMj}~)glGY3NU;Tmh4meV-x(c738G{F
zDHi2cunk#9RQ`pT&X{DDY37+|rm5zdY_{p+*pMVBR
HL<9gkoGgD5
literal 0
HcmV?d00001
diff --git a/assets/coffeebean_dark.gif b/assets/coffeebean_dark.gif
new file mode 100644
index 0000000000000000000000000000000000000000..8cb01dc82dfdd8cf655b05b4dd2ad907c43cb33d
GIT binary patch
literal 6748
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
LF2y_m!1{jyYPeb2
literal 0
HcmV?d00001
diff --git a/assets/coffeebean_dark2.gif b/assets/coffeebean_dark2.gif
new file mode 100644
index 0000000000000000000000000000000000000000..cae1e95bb81fa8e6ff2d89b271ad065664fd0a71
GIT binary patch
literal 6748
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
KF5&?IR{sm0G+8VF
literal 0
HcmV?d00001
diff --git a/assets/coffeebean_light.gif b/assets/coffeebean_light.gif
new file mode 100644
index 0000000000000000000000000000000000000000..cafb762c219b14451c8d50e3065f1cf73151fbd6
GIT binary patch
literal 7148
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