From 53cd3852aac6d5167e784efd2014b32fe5cce0ef Mon Sep 17 00:00:00 2001 From: Alfie King Date: Wed, 27 Aug 2025 21:53:25 +0100 Subject: [PATCH] update --- requirements.txt | 2 +- src/routes/snake.py | 27 +++++++++++++++--------- src/utils/database.py | 15 ++++++++----- static/content/buttons/8831.png | Bin 0 -> 1458 bytes static/content/buttons/beeps.gif | Bin 0 -> 13734 bytes static/content/buttons/blinkiescafe.gif | Bin 0 -> 6966 bytes static/content/buttons/emmixis.gif | Bin 0 -> 1588 bytes static/content/buttons/insia.gif | Bin 0 -> 11137 bytes static/content/buttons/ne0nbandit.png | Bin 0 -> 3103 bytes static/content/buttons/nekoweb.gif | Bin 0 -> 2831 bytes static/content/buttons/neocities.gif | Bin 0 -> 1899 bytes static/content/buttons/s1nez.gif | Bin 0 -> 11440 bytes static/content/buttons/thnlqd.png | Bin 0 -> 965 bytes static/content/buttons/tuxedodragon.gif | Bin 0 -> 20244 bytes templates/bases/base.html | 23 ++++++++++---------- 15 files changed, 40 insertions(+), 27 deletions(-) create mode 100644 static/content/buttons/8831.png create mode 100644 static/content/buttons/beeps.gif create mode 100644 static/content/buttons/blinkiescafe.gif create mode 100644 static/content/buttons/emmixis.gif create mode 100644 static/content/buttons/insia.gif create mode 100644 static/content/buttons/ne0nbandit.png create mode 100644 static/content/buttons/nekoweb.gif create mode 100644 static/content/buttons/neocities.gif create mode 100644 static/content/buttons/s1nez.gif create mode 100644 static/content/buttons/thnlqd.png create mode 100644 static/content/buttons/tuxedodragon.gif diff --git a/requirements.txt b/requirements.txt index bcf2451..6ca9b0b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -#psycopg2-binary +psycopg2-binary python-dotenv flask-session requests diff --git a/src/routes/snake.py b/src/routes/snake.py index beb49f6..c8a4a7b 100644 --- a/src/routes/snake.py +++ b/src/routes/snake.py @@ -20,10 +20,17 @@ log = logging.getLogger(__name__) # Create database instance -db = database.Database(db_name=env('DB_NAME', default='db.sqlite')) -db.execute('CREATE TABLE IF NOT EXISTS snake_scores (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, score INTEGER)') +db = database.Database( + host=env('DB_HOST', default='localhost'), + port=env('DB_PORT', default=5432), + user=env('DB_USER', default='user'), + password=env('DB_PASSWORD', default='password'), + db_name=env('DB_NAME', default='db_name') +) + +db.execute('CREATE TABLE IF NOT EXISTS snake_scores (id SERIAL PRIMARY KEY, name TEXT, score INTEGER)') db.execute('''CREATE TABLE IF NOT EXISTS snake_tokens ( - id INTEGER PRIMARY KEY AUTOINCREMENT, + id SERIAL PRIMARY KEY, token TEXT UNIQUE NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, ip TEXT UNIQUE NOT NULL @@ -37,7 +44,7 @@ def valid_length(value, min_length=1, max_length=100): def valid_score(score, game_token): - start_time = db.execute('SELECT created_at FROM snake_tokens WHERE token = ?', (game_token,)).fetchone() + start_time = db.execute('SELECT created_at FROM snake_tokens WHERE token = %s', (game_token,)).fetchone() if not start_time: log.error("Game token not found.") return False @@ -59,7 +66,7 @@ def valid_score(score, game_token): return False # delete the token after score validation - db.execute('DELETE FROM snake_tokens WHERE token = ?', (game_token,)) + db.execute('DELETE FROM snake_tokens WHERE token = %s', (game_token,)) log.info(f"Score {score} validated successfully for token {game_token}.") return True @@ -90,8 +97,8 @@ def submit_score(): abort(400, "Score not vilid, so either you are trying to cheat the leaderboard or something is seriously wrong.") try: - db.execute('INSERT INTO snake_scores (name, score) VALUES (?, ?)', (name, int(score))) - db.execute('DELETE FROM snake_tokens WHERE token = ?', (game_token,)) + db.execute('INSERT INTO snake_scores (name, score) VALUES (%s, %s)', (name, int(score))) + db.execute('DELETE FROM snake_tokens WHERE token = %s', (game_token,)) log.info(f"Score submitted: {name} - {score}") return redirect('/404') @@ -106,13 +113,13 @@ def generate_start_token(): token = urandom(16).hex() ip = request.headers.get('X-Forwarded-For', request.remote_addr) - ip_token = db.execute('SELECT token FROM snake_tokens WHERE ip = ?', (ip,)).fetchone() + ip_token = db.execute('SELECT token FROM snake_tokens WHERE ip = %s', (ip,)).fetchone() if ip_token: log.info(f"Token already exists for IP: {ip}, reusing token.") return ip_token[0] log.info(f"Generated start token: {token}") - db.execute('INSERT INTO snake_tokens (token, ip) VALUES (?, ?)', (token, ip)) + db.execute('INSERT INTO snake_tokens (token, ip) VALUES (%s, %s)', (token, ip)) return token @@ -134,7 +141,7 @@ def clear_old_tokens(): while True: try: one_hour_ago = datetime.datetime.now() - datetime.timedelta(hours=1) - db.execute('DELETE FROM snake_tokens WHERE created_at < ?', (one_hour_ago,)) + db.execute('DELETE FROM snake_tokens WHERE created_at < %s', (one_hour_ago,)) log.info("Old tokens cleared.") except Exception as e: log.error(f"Error clearing old tokens: {e}") diff --git a/src/utils/database.py b/src/utils/database.py index c8a36a2..8cc5d94 100644 --- a/src/utils/database.py +++ b/src/utils/database.py @@ -1,10 +1,15 @@ # Imports -import sqlite3 +import psycopg2 -# Database class class Database: - def __init__(self, db_name='db.sqlite'): - self.connection = sqlite3.connect(db_name, check_same_thread=False) + def __init__(self, host, port, user, password, db_name): + self.connection = psycopg2.connect( + host=host, + port=port, + user=user, + password=password, + database=db_name + ) self.cursor = self.connection.cursor() def execute(self, query, params=None): @@ -13,6 +18,6 @@ class Database: self.cursor.execute(query, params) self.connection.commit() return self.cursor - + def close(self): self.connection.close() \ No newline at end of file diff --git a/static/content/buttons/8831.png b/static/content/buttons/8831.png new file mode 100644 index 0000000000000000000000000000000000000000..b978df8624abb032e14562d9bcdbbd4c9695ca6d GIT binary patch literal 1458 zcmV;j1x@;iP)Px)Y)M2xRA_|qZv3B3f{2np;V9(GADjfYy-iVy-bkRqGj1OrQPgNItE1UyuDJ&eEE_ujlW zJFB}2;s?X~_j~XC=6m1#-g{#JU^qw9@Xl#FaMp27aFcOPaFcOPaFfvz)>!=UuAfhS zGt+cu&LXr5F4`A?7mvNdi^l@lDliu9Fv1v%Y}+WDrf*7ub0)A|e(e<^kZhVJ48y27 znQ5A^EGyKe(Jy$~z9~b*`nH!2;x)SC7rnyuFEKoo2AfI)fbTRvsr(|;W*CN_=U;+v z=gab#waPj_PQtfZ(1wV??rJ_$?!@p^8kS|jvMk>zT6NXRGsXm4*&(@|R}eoBU#}|j zW1X~bQNdKtL^oK@^itC_nF?e}?W(eAnt^hdE#Jo5c<;@Gl<#v|zSVlPr-;SvU>&ap z*L7jrHUOYpE^AlMbzPXIschrxbvBGKU%6p+vTsok=35kyZ#C`09^1AB1<5K=A*#Ks zK2<+JtzuPuBYji(s`D-EF;L@Yk8Rs16bgZr)~!CNM{aW*M^IVz)9;b_&PYONTzY3D&{D@=`i)ED3pKtDp~hjp#&e5T-6v4uiOCu#JaAb z^5zdM**X=UBu1u-NF;!*Eg+Eyw%0>+=)Z`l2>XO-fu3Agg5x+?=$-RP1`w+1lg7w& zRk1{_oB~y4M;*?zd%7S{Xy%$T9$+v@+(~wGU+R z+r43ordI)|Ne&AYzJjNV&#pnvIBvR0!Iob{BAHajrz*%}@MX$Z{mlaK6x+JzRMe_C5QB+KndIk(lkzK@UKKxc#u!qm6!Q7J zUzTH~5dR!6|8)0vzYg%oOQljmzf>wEyu2J5RD`SIv~Amhf1Sp6zW-im$f9p#86`=< z6e0*w6>JR6=OS&_{XHFim>}?>0|4UjxS+nUE34{y%R_Y;pj%=-pNC~xNKIeD?avkk zd)-f{csw4cll|Cl%b-$RM#2;o-9C`@H$W8<34I(khURnZ&C4>nK8}OZFz_LRV)b9S z{IM@2Q9x?6EDLVdBmKeK2{=#x6YT2o#S0NYEIEcsaal+K_@@e03RFYI%6$#NmnSof zC$}Dw`OQ$b@ihv9(k{7pHR0tSyq)k>d{hw01es)lj$|FVz+nuQ$qgf0wF#aCgb?Ba zR}Ztd7mr7-44smJ>Lr9vbzy^GT%ODXVla`*=Xs)4VFGBrikk^p#RQ$239pKugpRAc zDutpsE~2i$o(7hLYXI$CzmI?mU;o;f2=C-QOg;D0RR91 M07*qoM6N<$g7iYen*aa+ literal 0 HcmV?d00001 diff --git a/static/content/buttons/beeps.gif b/static/content/buttons/beeps.gif new file mode 100644 index 0000000000000000000000000000000000000000..0f0a2a0ec05bb3f1e255f3c71df406492b7fb471 GIT binary patch literal 13734 zcmeI2XH-*({;qdPPY9t02oS1tLlHw!cLGurG$5mN69q&?3`IpnXD5VW!=Q+upuvia zqd`%zo}GY*ietcrJvgYKI0IHJXSe~K8Rwk)zxU()a#@S-S%JNu-}An2SVSn-Ula$} z03XZ%e~;Pxz?hk{VosbsQMP{Tc-Mfl&8qtPL+bNa_SPH|{jmD*!RDN$E7s(09T^#U z@Ziw|4sU^IS$skg@X2h+yrRx)-9~gPS4Y3vtxAr+*ZYz8$CSsT`XkM)S&yG-T^@Tr zc=ve5%b6TcubG39zyC2vH#BgFbR8NQa#u{BwIsnk%frak?Ai+rgoDPHc@_LrGWB-& zq;`Ja=l+%Q0_*Yi5l^Q}3k#LM91GtUvtU7n|B=A_Rr#B1%46Qd{QJwlEfA}@B4I{x z*3#^yyZ0)}%F8O%JL@hTuynF{_wL;_&9%>;KYtqegoN|IeE#xf%w~jYoHEv=c*SVE9DUHWGJ}LI| ztRFVbwu-YW*;1l!Zp28n+9Xr>7l+3mN}r#%p#D^Ys;6~$WH@2j+>GOMQZI%L4h^2W za-Kw|I600>EJ?||yLNbZ`0Aw_4Ue0KJ`9R}7rY&LJF7l0>gHPD|Ns0y{RV7Ds57R< z&I;xUrh0pFU{LpAY(L^~6kr5!AN^pXj|o5;0Z#2xZne9((-?Zh!nLGEsY)0&)0DYH z;?|O-Rfh#{o?o|eW(TjQkrzxWBhp6;iVWsX*`mq4>}o!ulvTfuT_hDrSosNbu5C(Ujj zTk;e8Aa%Fbs%B>pS6XW7QRWb}%3)KPNqWT}9Mx0mt%kXFB|TkFY39Yt(2Q&$Tbk6o zyZ?g8&+nyp@8tP?;+{0v2=h=fw?zeWy6oeG_2Pv4MT@*EuGdu0o7YG-GRzFJ1wz6N ziS*27kEm6@<-N>)oDhDauyBKo-Ql1SMi;1D|IoS1eeI{ZMKvDV01*%(X@%w!Yu$O1GugXUDFz$c)*P;-cjmgqsaTT&_q!%XJ5b%zEM-TIzY zP*VFC!CPD$ya0po&x9?2PXG#7;QOk6t-c$*-4vi__=m~ENnQlzn@#Lcy#N_Il$K{) zVreSyTUSI!x5;^Cae%0W5D{1R1Y~yS|0-QLqal620@M~;(g$oYklx!yySvBm}8)Ynp6>yJk#$6=LYakql5N zUL!pc{n@FuC9?$@>Q+YOYfYQ!CAC&Rjz^i%>D$!S*){P8ZS-xY`BIC zNUg_ld9TS449FlzfpcIXq}k3km&5N6{kj$YWp+Su@uMp21JF2T;x<%T1Qi`tAV3iFw^Cc# zUe^6|z>OgxzpjJz?ulWSw@ata5KAvVz@&CfD)_X~E}8>cGOqPviC?$MRLdxF89+fE zCb2ny;T&Zi>%t?q;}yB6X_BpTx`J<+E{AO^L?j{;($B&mCmfG3qbitCswkRNg8(^k z7~UB(w`AJVqqQ(?EvJwvR#2j=)J80!ed|SoWK#|b-fPAAB≤_IZ}wSfP1^gc2%L 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 KF$e^K!2bo~-?85S literal 0 HcmV?d00001 diff --git a/static/content/buttons/blinkiescafe.gif b/static/content/buttons/blinkiescafe.gif new file mode 100644 index 0000000000000000000000000000000000000000..189b8d427da67d13764e0d9bbca20b16d42f92b6 GIT binary patch literal 6966 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 literal 0 HcmV?d00001 diff --git a/static/content/buttons/emmixis.gif b/static/content/buttons/emmixis.gif new file mode 100644 index 0000000000000000000000000000000000000000..5cb561fe8e43bd1c80f2934ea7b1edc75fb3c3d9 GIT binary patch literal 1588 zcmb7@X;6|07{^~i2(v5=yp~omJ7zn@a;xpY62;9*)2X#I>Cz4{E3?Z6L|%m?!_?B! z6cwjDGSkw4yi&5mG;%e=R4fG*-ixwhT3vJY!+zK=JM(<`&olqu^WmAFw~yDV)qDQ{ z9064n0N?<`c{A$bkJ1Ct^}*w750A4>ph3rA_HktI2{=3&K6DN~#Y4}CpjZ*gO+vtA zM0^DnXJEp#@0V(Uz+D2nT6ZBYxG(N#pPfbsrLr^tKz; zyhFNshI@L@cYTK5UaUuJ?9-Zh`wdz>r0s|M-y`oopdSWC1_!W#L8ERE((6#2(WKLT z((8@G5In4hMqp%Q2sWUoVHh!Dn9+bjCKF^FK}^Pp41fFxLk9FCj6x9h3Bh30gp7Pb zzK@Upuc3`wY-I)pZ1V79(w8pB;{X7ljaeMza1Nh2d~#{z!DxW?)r>#}xWM9x74YM0 zz|=7wmyZ*G35i0{#U$~i&-f8aQMa$`KZghGUeaT{(Z0@bwMa3nhcgl)> zrpz>xa6t=3ghKhKrnatLakQaHReN9~Ws1-;gadNaKs%=$i0I@fIET~`>Rzo4{TABO?W)qd-Sw`{;KLW=>_@&Gm@GjnAP9TlWw)EjvTm7+<>2{fOeO zxtqzNrTnrJ7kAe4UcuAUg#ksuPt_80x{95U$>W+6Bbaq{yL-;8CUauVfRlg>TH z`}ytnnUzCpj{9m>&+81s)8-H~UmEG4d8*5vOx8o|uq_R-$B2cLW}T3Lx z3WC&Ov|s*8e%flbD%`kInRxb|0r-rqd)e|+l_8d6EDie0#_J{fKn=q~olnej37Il$ zgvnY?dzN}Sr1ehr`54IUAa=#JugU+E#A?A%3hCVbLx}69e5&Kv!`4yh1+NX?hSunC z)$BHhP~YPMXJ5}M6<c~9r zUjM>(Nj;DB{o)lJX?WTKR=QVQqM4N^&BrB-<&P71I9^CSJ~rPz)&#m`hP{fKYw4iB z@R&Svm9<%yt*_m7!A?*xZ;-qrjdEjMv{n0#DEnzEg4f$Tu)1a`$ly)44~g~>&hqt> zHj%f-%19J;l-V0;y<{q%yDu8&Ok??>pshy`DsWB${bd0iy!?U~?{zAo>(#H}!&^1g z4ARtH*0;g|Uv_z)!`^6D0zWk4)C}O;my=s|&mbsv-`F*nkE2n5{Y2Z#$!|bAg+NQ7 zcy}XITk7G!S7lvy>-%H+_~Bw{-3kV4${1MAtY}MT9<>XcmC`&rM3ACd-|=C0ve&l| z_n_KADkXh2Bya^Jjnbhb8BCu|#pHyH&CO(>RA02MOgWnBnn1;O4rY!@yoF{8l8R^_ zqdU3Y+hKLJB)WtZ&)3FshjZ<)Q%<+sMp;ZDkI)tK=PIN>@NZwmiCyl`Xd< ziadFZ8)n)%gPB9`ekaY|*?x3>`GMN>wjf`IpU?$#V#E<0C2U(7EsfVOZBedYLpP4c z;G56Sjrz6cbTMO9k8nY9l{Rrv@|V5@w;KL0bNr%sOR6dhz7C2#tx1#mPWz!R9iRXf z0AWI3M;?b8&*5_;;v*wPNf(nMBq_oaP>=v}l0@;`>v8|?-~lJVcA~R#LizX~%JYdt zq4-k##pIMLscGp~uVrLjzmb)FGbdM?mtP<&Ou!Z3Zs!%3L#F0wFO;%okmf{0B*j%f%JmymdS4R!&KF9Pr!UnAS*E literal 0 HcmV?d00001 diff --git a/static/content/buttons/insia.gif b/static/content/buttons/insia.gif new file mode 100644 index 0000000000000000000000000000000000000000..60121fc15f93c240da1f4993ca47f0cd4f8d0d2c GIT binary patch literal 11137 zcmeI&_g547|1a?OOeVb$Ahd)s^deyBL5h>mdk{oa)PRT}h(S?NQ755=A_PSj6*UMb zDr!VjtQ(4oh;Fd5>be0N)58Qipew?4?ocDRXU(fS+PDE6= zz&|||SbdWI~0Cc_ZnF^w!(Z0qS424-Bgejws3BD$dlMyMgz z!pO+n$js2xB#P)|z-2fXnsQBy%uKk3JVGLImYuPw0S{$axZ0RH8dx}*@f;n@&@{5p z+Ja|dL&_wE*_&I~nOi&a%u!2g9%_+Kj|AZ-v_-Bi&NE!xYiLUyy`1fRS)T4e?)<>- zm@Bw`akKay&Gc1{eu5c3;f?}NA8$|dfFO~F_bhLBp+|tdf4HB|EY~3YgZk@^>1~=h zn{h@@rqQeL4C4$kw#5X@b_|d97beXK#KN(V;E+(y@OY2#WWR8cM`W6JjK5!;nIPWq zzQOLuu=uC!1AgLV!E?D$aSMayEcRHi&?hy^ePL#NQj##uELEH|d;Z*r^q|-*i;$)3 zmMmHvwk$JXdEw05wK2<5<5ya*TAZG+T)JS{^5iw>((JX~>oOuwQlhS#gZ)>m*Pt@DrTgVZjLKg7H%#HsQqqPnKY-Qa_2@_ zZoS*)vh4}m53OwUirm|}bzA%DrkNY+_pIMpShTaGs!q9d&;H!q+lzM9CaIe9_Lkb$6MGhbDfnJPb&McE#F^}^_CSU?zh^y4!pe>!>m=a!D2kDh*d?3(V*yJs(^-v9B}mp}gg z`)}*N>G5I7Ng+aUn5R3R08P(>^;ZOBg1>?5x8e9UCV(;p*7)S6;a?Lm7m64q+^*Gp1*<%y>#5_?( z(WlzEC?+*MS1a_~?TVF}&%I>`sb6+;SKQ;Sockx@7p6*gcb>d`@avr$_YU7#`lRX6_HS7*h^++j8c0E;y}tpAq)j$UW`zHM2K& z*7-&{&p9*>4%)7-b+$7VmaKN?N8BaxoJ>YY?kmN2#j^LxKBApCVqcu8L@X1`$vJ$( z!U5oj0yHQ>6`=TI7`q^_gg)bpIE1XX1ND?q=P*O#4;EL zW;mRXf?^=a<^1!yC>Ir&V-ks)$&Ku^)`I;Y=jCoUSIHr>7V&mk)pB?P)&vj?X3_*v zul5&{CS(aF$!cMSZPS|CKuP4T7*r9>K^Gognccn?= z5qR~T^-!LMiSy5bi;@+7)Vt~2} zi7V)L<}9#jyZ3;mK^8O&AK`^@gw986{!q{0<#KqLtl0T}~%<)9)SqfJ~`=J02KTBC`(b+dDq%sA$7!Iz=o09Vxg zdms);m~x7V;P%{oP_@X>#&<-U!`=4a>+!+)n=G7-@~bW2?t_P@;L(^mDLybdVexCU z;JfxhgdQ7wlC8(luJ6N-z4HJjPO6ao=Y5&aAIzuoax3>&FDmR7aGD*K84TFg`M-E_ zN&ps>vanZq3i>Lu8p@}YcXJh&e|y{MSHIl&yF<-_55Lm>lT#_)6kEnSzb9@!@zc;< zmiOAFZs!iJzDwx8Uw`y##BbF}MmHbuop&A|O@gvThH3XfzrAY$@lwhe_qA7uBX!H_ zXDzAp4!yKtD8zEvBO|VXF90Y;WuXhWk*Nm__Tx-zCwYgt1hBPv@mhF0vx5Yn_O}sJ zXk-W>`Z@5^p)e`Chl+D#Trr4bn%dA^6CKCq>MTDEkUbY)bp&dOp1lp&2dhqa`Mi#W zvP1W$N-17{Q6l4|FkooIX3Zbtx^|~EGIYXC&j~aj!1RDxu_Ud}sA3XvJ7K*oaMyrA z`6ZIqBMQ(PP?hddhFAVRLC;AmF|PeQ=4cGzL1`gOAnmpMluh%8F=m&F2w0=EgbQ-z zQ1>;T;6$6O0Z$NXJs9-Cqi&Oqz}})Hsg8~E`dw4qhqh5yq;GUt7CPT1I_1N0@h}gduknF3T2k-8wNnZS{b_M2WwEJr!aP>T3vH8_Z zRx`=5;a+ux*vUE}hZYB;kh$87S?;ghI22+vm!A^>>8hGNXHxBHM-2O^U{>HKZh7Ww zpU5bBPIqBbk$0Q5oA6dhbRTE@&obLzDE9-O4pY;Y38M(;Zaq^8(swB$xa$1XV;dW) z(lw!#O%v4U4?^yx)`boSqN)>8f7{>sXV~1hQx$0`Ud<=8FGAa7gNr@;3|bL9W1lw4 zr^yKTM{4HSDZ%E(6sxb@*U?+^Z|4pqo_z7=)C%WcoKrx9((F!ZsAxEf9+KtT>HU|J zPtK3gH+B^s8S8hYx6e-++_j?$o}e!)w0T(koM6@FWS<`gfh?&XRTVQnGqye^C)K8I zW_PaN#pvq6vu9g|y6r*mta}N6ikkKn5~J*I$V*+k>zZ5>VFS&Mep89+;nj*yRaKEY zUY=qr8`~VO@0|}WNvJOxmQ`lFt{P&Yl%KjnmoCbo?%LJ<{V#!;ykB2y=iiZ^!sMCz zg4Gb~QUXl48nNPZjH6&cWMp4+m;MGPuR4X*z7E@_3H>;zq1o9##*6f8vR4z-=Kg=d=Sj{kjh2>VT@w_dk&`7e#v11=S;SZW$#e5vT1 zQ)qqVJVOz?sL{uA41enwI7;D9{Km+_%gnq-DKq&c&^3N#_=F1f&4y3!UIbgD#zCt_ zL?A^huYLTSVAB{%o{ChLAn$OhCOMiquuZR6(`WIqBqDh5BXgC+_UVW6vfFQ0{xVxP zs)t<<`TpbtVy(eQp|fFQ_%iGjJ4&W$a5I-6qGjmbNTER=?zkvP>}4!%7a6>ld;%)_>ji)=`p96$yF`GTDUC zv>rlIV;|zKMI0m=QbaWM^mR>T3brvu>i}KP!Qh6iD5T(vrY{_s{*yeyYcyik1L3Ae z=UR9pI+Cw?G=Fid?eD{lBs){6Ncg8UE6km6f?hY-Pi_W^?5o>%u9WX+$K7X$WzjL)8*c>>ZgK`MUU=~oWlk= z7FglgxCM`S6ocnayj+=^p<=JY_ zlS7{v?j83;Os5X!(r|9CsIQBUIL zOzLnjJa@8(#7kCU6}rea=6dwa>S*`<*{f;JoLinZof=x@G3=QrjF_4_6=`T>!GLOw zozvk~07{i%+}w`(tK4K$shpSBJsQqMIXxA;ut^QcDlL?aPsge6MkueE?xuUR+HF@j zR-*Mi&{R+(iUY$Uz6M$Lr>w#_{qt@WL^su8^mqdu!9;N=5rKUh*ch_+4**zOVxxPy zigC7_SJ`uFUaDf_F{G1zPZx2RpizafDdulNxbs7MB8=lB^sksWzDlDBG-bTRA}$UkhEKHetOb$+ zZl2RA90Ygh%icvd;UB0g3?nUO|228H3RovECj6MF5|+ttlw5j8MNCBrR!F3qy$Llb zv7b97I@VvR067>vI`y^+nzw`}<2j-l=X-3PDhHuNI@|X%Iv4I1ymN{OWJCCueHftd z7a5l$ctl$>5oyGYErGRt8m%C=MRfJVecUG$0&lHYbu2^&bKm%oA%SE~etQq-(kNz))alia z$pL4lr=uI52)c1rBVXjw^mYSHV#N~y0Ov&~a(6s<6R#sUIy;HT*#tLl^|`@h%<|Xl zil9T*fUQX&HuE(H0Us*lcp}+-Jz!8ARyChhurQXu(vblH%@@UG_Y!9vDZN*g2;3wD zm{W>-mtrE8?tq*^#0lAeNUJLIo<6JD(GtsFl@URa)_6mr4y3cOh80mvV&2!H8*-WgVVVnlM#HV8pV5)6F9%^SCsF3}Kh8s4i4qG=tzz>8vW~9@Ax!mmG)W|hU z9}Q#Pc)RDo`HH|#^|h!jelwYk89xCyg!Lj;&vpUQgxsVEfFp?PyCEUES{s3KY3rqk#NrJA~)xE#$0V8oWL%`dgBPyn07zAToouuY1awHo~p;dZM8XNx~fq+beQ`i159n z+_3RurRD-o2s@<-`dm=A?z3hIS%4ea39A!8uR+&HxS&Jp$jto0Jp@8CgV0hFhU(m? zpx<(feytbyVt6MNp=}wak_zQ!kNH=bY5KLP{AVU1+BVkv4cks^nQJgKaV+7NAIquM z^AM^^n7;dBRY0hX0a^Mw=48RPCoqBN0ARW+R3nY-T`hZSxgsXuQoq@0*6vx}{gr)tMc9-1C2`r6+1EoPQojtG94 zII^@+#T)|VGiF(Di&vu;Jd1j!pnNrX!|ywYNsU7tPN_W*7ULiEy~2;p5eGGzSO-9H8*(pT2Yp29F( zy!jQfU0Dh}(Xn4|epu!OSeM6U@L9vuSu;h1a~T@PEd^NyZ&&NT{H&pgHSdC4&tD9| zWVJAMa+7`(B;zXKWEICbIn9};!)NZU)=T`E&=>SqnPG>N8N>iD{G2@at8*)@`8wb^ z0k%WK;^S|6sEq7!My6Ud-iZQJF%ZvG!G{@vN5h)rg$V(a4&m5@^mz z4Y_es-Nq4HuGkdbl9NuHG3iBZ#7ju2R}|+$0GR1iVsUQ>=EO=)&$_Ua3>TEy#>!5U z2eAFqJJ380N9-oSM3f5FZPme$vc$Z$SEi#MK&aW5%Iq}uZ~iW@{G)xAw{i-HD}F{V zkWF#h z8FyP}cugYnCJ+%Icxo#maN?PBa2B8V`)rME7P~k}L+JlvYiL7SH9;Cqgzdy|tP^a9 zLK&zTqy(`jY4|#a#4kTY(Zip!UQ95b=$JoC7(Eh(8l{g(SnqIJorbbr5H~ZGa-BtngNvIz<)(UMPG!-q_?NGuNB62Zz8V%$5E1%3j7cO&k)1j7`%8AqT-Zr z^(+fMOch(a##pb_tO-ipdo6QBQ$7MJF7cV~O__HAwMJDfpCA|D4WM3U-me#y61F0HG-f5*^%cQe>j?Ax74QgY?)_Ia(9;|APVeUnl(6 z3IBD%f1U7OC;Zn5|8>HDo$&u-CtSSWX2XKH)%Q;A;@rCQ2lZzUhwzX8aCvOkk zIbMwT69*bl-{_-5!=dDD%vCj}T91R$^gZQ%?;;b^OBDyrjW0@1mGlkMj2b;(JUG7B zcjcaq=F^2yh~6E*Dtui(N^gtYoAN)vu+TZ9g&3U;VVNkki`M(5<3i$CB(c^3{)SKalX!_0zf(Vq zlZIk|#Q_qM)0t8mte94_PLqA)2+jpino7>}uVFWWZAOR8I?%iu8m7k7z9dEyuTQ?DZ1ZdrhPn(~%6$AwNH zxHWOw+**ZYkSE6=TP?_}C$e%Ud%~F-(^Nu#hubP~{67RRjMejw8FxcK2w zXQhZ{)%C4=)zEJHR{~W(SHDpTh(8QgV4UKvX?LUyh|A5Gny4^tqPQnQKf5&%G0Ihs z5?W!wi>%WEMB7_ktZsH?!LE1+)2$TOD3zW^azKRs3zw|_I-&CxA>K*R)b~^Kn*dHF z0K9~kQwlUdl>A9fNSo*hJCoQkEb4Q^aRSe}>6nISYARmK-H?APocsB!E*wF-g^pJ9 z1yY!IFH2aag_O#BQ>35L|0!v!nXHb)Qb^jUmGe*_zGlF5<@<4&13JCgGeVW+kBfEU zP_BUT`27PEQ4**-%TZ6F(>W<@l8j1zIbOXZZaF>TVq&R5;U5?{`aY}NZ1!JiED~^Q zio>t?bTBa&!%!@Yo|}0Jv;BN2119dhI9fpn?)aF?`N?=%TcM%!K0O*P_F%c2#1kRl zdg&QAd)kg4g5+%&Ggn8r0xJQldoaK$Bf@{340S1QOTi`LHzxmSP+d zOPFaY9@L;Dy|Fm4H8&eSTquS7{89QAYzYXC3Q+ zK@tvsQdanHEWjU7S9-&mo_+3oE?Juc0k+%%@c`_=TxKpCG@V`N!8-v#kdx4GL3`=3 z^UYA}=sYu-5iTiHGNW-lZYPRwg47g!3?neuz&7O{GW5j0AATaC_-QruK!bZJUm`&w zgPbSp zp>NNx+c3~#c~#NxJU$I!dA8=X*rhyYe=Re z$&`aq7|MH-ZHC~F&9iR$D8s>xsgfneT9vPr7>6BGHGY@Z=xunu)bgVu!pEinB;`Fb zd8lym>g}l^Jh@K0QAGtn88LJB1tPT+b$-cjVa~R zEdujS_ci8iUDe98rMxZ-+5uFuHdsQzaSS+6fg?i*^i@`XD~U(CQ241xL)|})M0u1s zed)d)_(7(($>|wL=`Obi8aS&_p0sEjjo*}$P_@X%8+due`fi<@w)d>AWPsc zrI01ZElE0sFcu~Ffl~X#iOSr(`vd}xIi5|7n_)i2-3~O?t;3ZgEFt&fP9zK}01MJu zm=zKd9Y{%%ygnoDc*p#J=EYh365}&Ln9q)zkiH#Gs@$9(V0x6C(?14607<@sulT%r zoj%tzcg|zJ3{`754=LAuTGOd9e`ZjYk6d$ngl-Ed?%iXtt30VfIyXi;*13tj+7UFD zOB-SKN@?%RvrvuI-7(U}k@83*DTh#lp87Iy-9s!TWr@EsR!Xi-nK^(8zFKE^XWAE8 z>2tHd!506laK|m9w5Zf|`VSRXZI9hx#I*XG-_fjELETJoL^e{K&-VM;72L9J_`;4P zmUA;c(v8_tXM;#QIQ)3s(ng$EAt<%ijIJPyjNne$w2j*c(G?N2n5jJ3T6 zxT@Vd*hA+vO@=2x>DJl8YL|<0<5Sr0Hu%Tt-YY)CseifgGkV^vH2s5Xei^r3Yw)u8 zd5QVnN#Tl(s*{A+QBEhN54!fK+_y;v#cb*^2oy`EU~qPyPZ-a2BXF(=(OaqQBnci< z=XF245qCzk=r=7jXl5^s9Qn!mcXoDAH*C5;1td&ym*THp609cM$==bYsul}u4QeUj z{LJPmzA6j0j1yTxwxX>2F09{$tIoJZXrr_w|01*7HTg9{Z&z zb^4D6wB$bw2{4?{=m#nX32Kb6QSD2=%}0s}s;7rAZ@1gn@~rM&4&{I+|91d=%D50^ zo(jnPUuCbR>v7ROa-i;1?YjOF-p?A+t+_p$k|iQe-DH6El!P2mG&;Fh*~9pQUtuh456qg)CX}bYlic*Sj z@;aPcAT9pK59#B@{}((|hr8(P?8UGN>bwvoLTcEEZ)d88B6^TLBABWsWEZ8{Pi%1_ z>wUl@CzN{Au=f;a`bCzgwG{yaC0lXwR=%PLE1hP;sc&v5RZP3#JSj3mLQ2vEn@ULO zp2R>5c2N?1QRj?_X*~3?$EL9ownzVqhe{68k7S6k*mU6JS3QA8evno?K})W&8P@>4 z6J@>Bu-YdmHT>dI1$i02bg{TJRgH+GNT~@yfo@LXlMSU%oCYzK5Ly}y;yp=CT3UwG z#R`L8cEfjsaP~iDD31JQhFX_@%y3fi%?#I7Fh{VGX*2xoA2Sr!{MQU?h>@iUx|$zM z5h6}Gu7fNw(i+J(Gc5YA8Cw1yGeoUjl-o_zuvu#DyKKbx8ks{C*HYPR5b(bMG)mZk literal 0 HcmV?d00001 diff --git a/static/content/buttons/ne0nbandit.png b/static/content/buttons/ne0nbandit.png new file mode 100644 index 0000000000000000000000000000000000000000..ee7c6842a2058550a6403840f70fb35191f66756 GIT binary patch literal 3103 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 W0b4Q|f09Z4?=o5b&ijAIyT#9HWEK(t literal 0 HcmV?d00001 diff --git a/static/content/buttons/neocities.gif b/static/content/buttons/neocities.gif new file mode 100644 index 0000000000000000000000000000000000000000..0d0d4032cadfb68ac18052f30b503a5031877c78 GIT binary patch literal 1899 zcmeIx30G5R0><(8-rOWNgs=rdLLvbY0+CQ5WiPZB*~KC-u>}gsCbFrNL9t5V5)8zO z5=PM&WW=(mL=1=oTE&2r<&?IlFfd?ky7&^ZN+@=R6@{!Cu};F@OtZ zA#m^BJpjP__wQFOiAS|Ryo}!S>Lb6|vWljrCXGgO`SRsgMr@^0xl+B2NPvb12DMsk zMMcHRMbXLyM>?HOBqF}PzAOLsSUzuWXn-1!;P)GEs#U7Iyu9S(wjEVN<3}O$xU-+KNV_nHo{WT#6loY(Ybo zmzVW#m-Me@^^4QP!^0bY^>=i1w6wIWk2kN6HrCYC$YipjqN3H#1Dg^O5<)^kJUu<# z+}vDUUFXhin^t`Ed%5#)v2b1?=shmDdsN^oZu^afy1Ke6SFTKU zls8qE%jI&ZRQk5Jc=gBJ`CB=2H#5@H(^uP5i@%OPp1J$WFC>!a4C6@pz|9cvGcz zr;P2si(#uXSpsVdTPw3&ViOB0Er>v4lPH^`|KDZ-(T55jz5q}?AflX5O>IvJO5Ykk z=#qq&n(%g9>U7ZsKmg=jg>CBwDr`Q>MI)heC4jU2di+pZLwE&)28j3b`|Jst zlYyxKBiCTdnphA_Vi00%t?Y4yGa)w}1+uGS&8*Wf)4Ud~1YC*usZGOoGLu+!J&I-E zQ|^#?QjL?uNe&L&k;7}r&kT)Yr2H)$@Ht;g==ORUu3g-5g9l$_{dsLCh_G?w)67WG zypXd;mRG+gwochXYj~guXq47d%=oelSC1D{jM(wgcTvr076hvtN;g7!TiG{X`g>Yf4Bk%gbmV^V-AYY!S=z#pJ|lgm3*P|qKQw1tJoWnOno0hjxY z!_<+f({B=v&Ys@CM@HGMd2;Nr-_a+f%#5`DvPO4MLO)eL$Yn#!rOND0oElAP>0Tfa<@Z#p5Tyu0-&cF(jFuP<@qbinI5U92!CR-&ikYqtZm@nEm=% z6*=K4sAqUDXik9Kys!U7X?(g6U>eaCsDqG#Knx-e@19FpVoeYg2a#IX2F}*WgY1=! z!N6hPpV5$>n5}vMQTsB-8c3S@-Eq$1QshS2{e|88W|Ir$K#rm9RKk|YyvukJl|NKKxw zIsiF;8!ij7D_}L!gC{BxLyrZVX_>v#0%>;)UB`m;){)Kzh_NAP;e}JPx`{uN0ey?n zNQtonCW}%26Riy-9&6Y1nA1D$Vd~xn-NOdu7gQaAlp6Q4zLkM5byQ8C5*j!@zb*#u zNNw@StE$psL)bR?0qR+RmHbG!1V%?Xj%|Q$R_`ogcyFV%0Svu^6g#QRQ|H;WX# zj>%>tnqpH|ByooWq*h=Tc@=|QT>)YPH4pkgtLX=w3G`_cMADp<(h3g~BXo#J8`syx2 zevpsCH!Pyp&S+9ZJSLYpLv zmbsnTD@jD$6LGp0{YlZ8NaA|^jJD+vP54rSkJEb@#W}}O~5Dr12tuyGXMYp literal 0 HcmV?d00001 diff --git a/static/content/buttons/s1nez.gif b/static/content/buttons/s1nez.gif new file mode 100644 index 0000000000000000000000000000000000000000..bfa3f4d1deb67f69771aabbbd2785f608f98bfa0 GIT binary patch literal 11440 zcmZ{~XFS{OF`{_&&(v<9&SAp{tL$s*1J&Tmt+8{O3nSMMX_bO-oBl zM@L6bPtU->z{tqR#KgqR%zWX(1r`<-R#sLvHnxiwFS4_<1A#ye4h~LEPA)DkK@Pb1 zMQa6?N2<(tb*4IP`hEo6nm+9=lIDjA^|2Y%Z)@r^3>Dd(itIu~cBCRZP?1qoWHSKS z6hJlskc|OkB!H{~AgfZ7m8i*bG-OFyGL)8liH^)iPv)T~b1{%F(vuk($aIWkT1GMr zGns~kOmmS;!$GFzCesL#X@to%;$&)BGLL6`yNw^P3-ro zS<#&T%DVBD?r@L#%XjLpzi8Kf(~bY3o&N(|{SA4423tE*+W4dQ{tUHo=DBhfxOEn~ z{pZo%N#>8ARbP*qe(m*q+n@h_u)nkQbj z>QB`3KMBp`jC^u#6uIOsxyYSdVM?x&BtN}KE@viZvXWz2$zgnCuZv_mPO>ilnJVxM z%JB!p^M{e=lwRT&&6R!Ho8M@4SE-HPQW*~bEPDV}Z2-$wfMp8+RRwS=1-PaHf+GPj zzJRpb0GvM{HwaL67eI&xJWT}jBNPpCeSs6Ta6Z_QGF-KYNkjr!9* z&HDr9*+Yh*L+0+EtfZ5R)u*f_XW-mFtQmhUq@1$Ep0MBl$sGEVF6f9R_=q}Sk2-9J zDq@=|a*O)@7ERO=bNYyAMX}jHoX@0B;u^Ac@1K@K>A^p|V`reTGq$la=0P%D9~sa^ z2AqF~$bi>pfcZaw4}Sm~e=h9&zPNY7w|{c+$1%&%FTk%~fYYCVvmb!7J;2#l0C^Wc z{sJIx1IU{I@*04=0wB)=$gct9UI6(8fZPcn*8<380CGNnj02F<0pu6}ITAp=10Z{y zpB);q0xcQBPUaOP^UIPYl*vK{WFZT(gbi8Tfh^=i7IPs>xRD`# z8FG&-7(o`eN9H>}{X&!r#yXZ3S{kN03bOJvRDb_Ep{1h-Pyo_@;rNRQfRO?aVdB?o zD(#J7CL6+!F{14XoB|9r=aB(Or@c6IDR!WPvgB{%hpV9Az}mQS1qgcbEZlqk4` z?lQirsk23pz);Kv!580tn>UHhkf(0pnHn>OL&wwL`eTcl)Wz5lRxu>Qg=eY4~KI(?EnvCW-&pprk`)BE%B1BH{`z_j7aA zHTQ}cW)NwVzW8Wi>#&vR{$q@sNup5vT>SE$*_cq~-VP|Shg!Fe?*4ZSjn?4agv z%B}QJ^qkMP=O^xXHz~|AJ-rA6AK@jD2c&LNhl{Pt$E$A8d_B|jkFa-JoSh-A zZ}nYpG<6Ct%Oi*2`{d7KYr~*6#AgDJ>V!RB-el1)%i$Y_JM)!|IXbRq);?aFK_N5it2KR?wkk-OBhfs4j(VPYObDw&C0Zna1 zu8e<&Q1=XcxUI#$e97T5o+Q8g7|B3Pqk4AdISseG3SMsj&CN)NRt$ji9n1}jg6Wx* zP1I+ws0WIP&v(N!Vu%5S4|YLMp9~BIO0%oc^z*+kO;n9U@!^#`4C z4CDu%iHY&w>x|*=bw&-K23P{lFTL~YjPjL{Gv2H=hQ!fx^6N3MLY{?lE@-p@K3@Q;i9Jm3~$|s?;7umd~ zzdIMXuqi|%fxhrm~P|p+OkgW}UR*Vv^;N zXqVLO%@sDA+KwOP!bd7OQdT-h-GhZsV!rA9bHn3OK2cCJwp;77N8Kk%V5<)Jx>Jv8 zv!azA+hiEKFJs@9sZ?qze9(t!&YB*f=!dhgo{obqJUm8YEM-)`zRU>vs1zX=`tG)vyK8BK8S$H}NlbE5+`s;F-Fz0R-Yl?~P+axI^d7o}_p`qm%aFRpWhmga zbXUZPsQ=6TUInyv5&}=wNtMgkvPIi5optKUB(Pk=z^(~)6_!`jYv^Y@)`UnJ3C?92 zNMWur4kr2uQZ^*h4Lk7?72Vn>-N|?RPg@V#D^! z@w#blLzY~dztYA>#ke@-*?f_W53~N8Gn;W#RR4u9rawIK*q3mZWqC|%g;2RA3G-Zk zSYn(lia6@IydbYzre{nD#tM5F3`=6o5s<`@G(My}oLH!TrK+)@JLrG|OmMC(k$qKZ zw_xgAUm+{Cw=f+1;f17WMR^cO5;l`3!_b8zDiExzDgLJ)LjrY85b744z7{Ffwg}yI zVc2jh@|6IVU^zmgv>}>j<%)(`J*^t6$J;QcGKGFvsdB$hPW?@o>r1|{?&#j%jDD@x zF0Ydm>y=d`=|IpsQJ^y%&2e?W=#L*Xt>vaMETyF?XV=-;c~35N2Yhf#dz@8Wr)hCv zUN7tT)@xc$`0Jg7_Nn0HKQe(GsT^>MxlQw@#rTkCPUB}LTxF8`<>tIkiO})4?SAvY z5xE^NUwdPzhTOJngRLWq*0QGra2W~)qS3BsJx7a$z)KHKZm48gFrK-Zy5tJ9nMTpA zDw!glNiKkpSx5}sN9{N(qb`ar4{%wT{25 zjKbZNawnSmFRpm3`xMM3xfUnxe74N7YuKKxkSBFQ9ddZ{x2vQ{`s;D?8mF@sDz*Jk zLgh893PMcnVP>`bruI8z#0-Vw3)u1cUqqj@-y(=}& zUcho^T)k{^9qd(u9ei6-?_JXSD;&Ah>-pT_qBNWRaOGAYvZA%$>t6g5Y1a`o+sOBZ5_8XC;}hHc!zz_;dmjG*^j|;! z{}MnZ{$U9#7=kfOg2iIu12`&?o~)%s$m&%9kL@m0OibYP?r(sPLSxSFWpBmMa;w@35s@82KzZQ@>FryRyu zH-LwiXVSo7%lmBx#gCEV=wwSBZi2bY+c$qwri`5WvOtszuO>d24Blpc=P(Wy>Pw}0 zy4uGDht}8}u9HrwI|Ld& z$P>qA)39c57I4tj2^nP}5kP=eN@Wq*T(UgXhhTZb>$kXD6N3+~JPa=0HUh}p!r?a3^?6z5o zAa(eD|C7ems@kSn_svg84s@TPL5%*uFpupAE}5p69KV5R!sddYSU>w6p9+dRhoOLr z;-Gs$Y_x%&5w>psaytz$2IRN?*TtvS_;C8rXtcSj{)Cs0cTzg?B+Avy&86T`e$d;F zCxoeFuxgY>k#>Vy9bA)_6X60Yh*H@}-|G>dL}6)B77-L*Ga(JI8g6?0%40Xa*H?18 zVtBm{r6tf#JJ2jAxwvNDL6;1(JuvOt#5=|ibykvw=Wd1t#Jh6sa`spBHK@(wIm?UE ztg1IigGzm$ObtE|v72r7;_pO5u83%hXv&nyJe`Src&pIBnK{o}n(zjydpM7;D|;WR zdMA-*>3+#An3&G7CY0dJn=UU_cVqNwTG>w8&zo7?IZ%S?0T04cxewe>9aDVkRQ=xc zbyHxV1+Wr&eoF&)~G#&f?~Ok;LppAmMUF3`5wi#E-_ZSMdy&$Z9Tw$ZE@T zNu243VaO0b2`3d+A}aNf0t^eCKZOX&w1Z;9r;5j!F=-bdmGAq)({nPJuiFcZl?7qgHFSVD3!4A>;s zSBP#S&Q1irvTH(%MC`~Pq>oq~h^DDASyaMW4JUKR5q`fJ|_?W_nfPIX1UK(CxC z`NpOyM>~dJu)s|e>>?>^3Ob{?k~Z2AVlx0@{chR;Qo-B8LY@TNpoG?>Z7T=Pk_1{TsGslb9XHsDT19org}ualQ~H76_|PTmyj#Y%D8d za+eMjJY1YN>>stG!kc2MP7ZjSIfRbiaz{^X1i>7k^@^AU$)eU6{O-AGS~@YKi@vly ztITv07j9CyD*Cje2qn;j4FYGoFRDKmq@7LQ(*PvbmZ*|XfrRx<*X zLj1gMd3i+T=O1b)T?)>8uT~|~xdhH5m}WglYZG|le(s&)jqc5^BOjO;cfKqKt&L@e z4An?f7l9PLw`uv9JKwW0vAAW|KSaR;3*9>8Ua-;8{ukc9GHPW2D=djD3QNuFC9e|L zRxU>$pUX+Cn?lZFb3$2_q(v8Ul0y<%nT4g*>Fdvgj^@gv_X4!0S>+tLC_?;K2Gca+ z)!3_QL0{6e5bPFSGsFKHSIu*lpgUani(YO0xTjy#ot$rPT~Ew#$H(eXcncK5r;vq>u!9v;brhv~VuxK|Rt?NklgkiyFhGiVRQOli z#Q!?d?`L;7^r}d~nVLV15S#glBRXO+8%3@cVw679WoB+am)J6RtTD1xLjCn7j{&Q4 zhq?1NuYtu(DWd*6@FVibM5(w?ZMAjco)Wi+?`GwvbZlEvwc|zAb}?hN-d0pvS^Txy zq7W#B=TdE8@p-^({~Ivte@1+6gbUbl-sx_N^-gngrTVOHdv!^ww7d!;eJ@#4n+2{y z(sPmyxjOUtX+1sPE+nxTt;2T~^bSomh-P1v=NjbUn@DGT?ARR%U`so%3k!S<=>_h#&yeETDwyc-}*>A%KP z-dcLk5a&9}Z&13kVH!x;xaaj&ykb0H0xldo$acM|3<2SOJjZdbFwbkN4Ep0-(ijGY zzRzjvc3X_C5Tlm!rSpP4r`hUz`F&kP``72xLS%mR@lj%wQ)Ff{?+~G8<~V`=)b7~e zi2(JEfOj&WHN*Ok|2!YmayNYUOPy9pprS%uT~u+|LC(I6PiOgSvDcNJN+FGi-*LBU zPN<(tPwpT(i}@Z?DtXy;L-KH0oy&Wu;3iRf(Dd&AjSqFUe*KBnqzfDr%x&ZIZ?r=muBxwm zjmM#O{|BV#vpeRN4?2UVTxK=e)^A=RTa4l4?+VduN1l zeBC==nM;H$Lfvgtb0PPnier;-erc0iC7@oSILciiahA(jlFJh5j$+zQcWt=JZs4~h zI^mjp?dLYZA^EeU_cz;X{00#-<~!%fuJK+#m*+o*P7=?~bxEx*jOw zDO+s+(aY%Rd-CEkR|e?a#tR_h=tXmI%%1O__gK%k$CRqf*P}5yf$^#t*;(_0C(v~< zxQN~2uEM-pXi>7E&hbHW(~U-rDo2Ue#>e?Dfd`!m{m47@tqs>Y&0=R!XCThm`xc(c zR!p`mH7}&Uz<#t@z&^#VqPBQu7L9tY9pi32yz%2^sL7MrPx``QYIYMCjzP$5j_Te2 z<{X*+3`u17+A+SL!Su_sXvJRORe)&)CJg9-uOPbOBn?E7=ML*X28+H+Xnl~C8wr7v zf<>M}k!cXRJ;rs@(tn*+rXCKf6%Ueu2^`Crg9`2Z5&8YMM{#<2@@R+zsA4YfN}lp- z+rf{M<>869l*9s8MY&gE6w4(J09yggF~t;Oae)WaezsOszC0bBe;$W(SCN zv08*RxK;6fGZj{XWtK|E3)_;e;J**$D~kvTcDRg#V-Vs$EEj`HcNb|S3FY^!zf|g@ z0E(c#`g7fa|aprttvg7d>5rmp~}rEYUH`Mj0{|O zdY;&1`0XisTV%?$uLSk_$(;GT;iC|Th${5dswPrHyu_Y`)R*Yvw=%fIcHhm?4zpAL zYZe(pw+%95gqL$hq65U)O*ZAtQ_y0}mfUf_y=?5_6-L1ytgzQxKdP%SA42?P=sTAl zQ8jqjr70XJup3|N`sEm@iRfHPQ}Nd3%(UC@8%qU$HcQEMxw{{mXlURihN)$>T*KCM z_Tn-rzC_@;V}m1PTwHr6@*>M6?GRuNgoPiaLy{fd|8j)?oCr9gB;(X;snTagj}zYG zn(P^-syVYQNaBySfnk|dC980kle`G|p&rgM#8!%MypJ=N_Rh`roTYN}TX`s=5d@J* zY|0BAVpk`oHV+iBRB5_LckOjqWe|frMUA1%GrldZ%c=;C)XI~`J`MUOH8?L%&_=cb z)O~~WMaj_rM$-ah@8(9a&qwekPE8c!edrB&W*4X75{0kpMYXX1v%UMAnpd>B{{*%B z&70Wd4b08*wz*)!a3x#bUI)wPk5F^I4u8d+Wf%zi0$NLX8C(Bp5OOJI{1W0idg{(d zBV4q>M&?!f!KAGE76QmW-!1ee%PaWZ5DUqYtN$PFqHp~jE!|2+$Z208Z=Vl^S4d>1eVhve3SV7M&2{|BPg?VUi3fh8g8HV z=%4gl&e?2@j|zF}SJ%F0_x=mfYoQfS``iDc2Wf&%))u=mR?J}eGZm=?wa1T)LK*O zY3fhroPdE;)9T^FvB?}=y#K+@;5*e!CuF(qTgCfb@)fAmj!Z{s`Sq=yQm==hDfUpq z6^rXIob40B2l;U?e+or6^t#cf=l4w-uiZaIJ}={)-6?b;jj^;Ym%+1$9_TvSd zE(CI|s+a8d@mVpvRyl7qZU$eza~LOnIdp-jru?HW^ui2~`-# z5wH?`PCJbhgf09HIRD~O_VMw}wqr~z<)!DMq07j*fTReVSN&>l!Y~<@?rxP>pVn#) zcu#Prt5cck@y0nWnN~0>LO9gQ$8<_i%pvqMH29$EykT&N>P@tM6&~lF&#o*lVdx zk~eQ}K<)*(a<{p3MsXS)n|IxAZU1;J5LsX@wGO#J;+u?&MUN$RF@#uFmHZ|+eDnR( zKolBUR+adH{BZ;tgxC_S^IOSwbwSS`U@}JyWO$IXUB$K6N=lT%mK(bLLzF9ZZ~Xpq zWx`SNOO9MhCup?=R4x2;2#r*-ax8D!O_{ZJN&E56e|SX6NNQixB1FFVLd!$s9X*|& z1i4yKi`)yOuixI?mJ?Np@(=0AMBZ(D(!M}?DJo;+HfFPukj!Zj(%SPO{^}dPXw@fj z0x&(!H?~q=W+P`uc4vd{K7{-i=NQJg+*{+^E01PTF!+l}3?qqS{Dm}7 zVP|??Oynhe`s3{I&l;J*>no;3*GU_*5A|&4l1D&+bEs6$Q#uDTXRAudc>=14%gt5A zSKLG+;`m!SyqLnhrMmPpeY)-_!apr&^nEl*dC2ml(f5rU(0UGL=~FWvmF?DeJ--0j z_!Wh1q|~k4X!@`}l1+InYyaCorT7KK-p|rR=C@1tb;(97R`>u?Rn79~p>3PMU2o#g z{4j|TmDTe`?xzVi?G{1sp#nUN*PRJL&1WLfe2z-@_m5L|Q~S+zAMs$eg`EXLJLm)P zFA=G7SJQ{VDWsZ?^De;m=wrray#`YnemPMj-R3Ood=Q(U9n_p_wuE96(et;`zBgB{ zWl9|U8(JoQe6Fg_3&O`X52oh$Nmyo=(0A{3QMqI$ zw-}LUt71#UcsOf?8eAQ+sNN}le@W$&kCPkgvMDk;icgs+lQe@e8(vKhhYu=$eb$I@ z&iPW>+PIi6*h!oz_d^aGT`0&%v??4OOJvQ*MKU%X`n@5|Yz8M~ujSir&Hd2-Xcjfwl zfhBS9J}2r(%^?dp!*IN{*s3AD^Wk^teE7vBu&WSKKks{1=8?d2%UvL$ihpb`Ol{a@ zVJeAo@aEQ|sWQIo0JDZvE+r0RF3FplMXOEhTq5Ybp@zW;2I;8!rFy&B`htpp>R|q7 zAw&2c*H_p0$Fo1KrKiqf*wQkkUfG5FOrRkq!=^wH8D{KTN+Iv`&(Y-`+vrgKtlXjP z-WRT&f8HW09$JZR5lY}U4>6O%u+Y+r&{fsAgsUwpK`gh=IGIv=;eCJK zjldD8(@yR8>949LE8?WhJ{EdQ?}Iq~TyGw3cssJux;dTq%q~uk!*N>}Z!0=GBu$#x zMd_>Q#C10BMD8+O^rKLMq0jYpXJ`7)A>~D*enU1gcK#%@isdvOaS>@-F|l%2vm|`J zPsdF4!^fJj6D2et2q&IXFxk`PmYXE7g5B>FAy^)WfeDEDhn!xlU@D{cGNPl#V>I*z zy>^>bH8;kB^O?alrO$*D9FXjPa|8HI+>ZK4kfC(*P`n{~GrsabyvZ}d%L2w8v18uE zZWPtf{ytf1uRRL2nG*B~qinA+b#TqQz?&#)faK@)x!uu^NvUsv`yV+PrK`5m2W7O} zlWb~-hcwj2e|#ck`wt3q>%}9-Scv78NOe=K?`CB-;=jw}H#Pm0W0B45g z;0%4U7&on-)nU}B&D;OFB!2}DpR2?}%KxPj{5F48f>UI*OxxR1RKu1=O zuSF(FepFYHwd&Ho`d1~c0MAu|6OAvq`OtXT3~n`$BqdVRujrKtx*00GmKU8=Ig67G z?@}dBIad}s-%^OMNI^-*p!?oP#{@&?4Y3kJ!CGzxCb5$GwGN|4KH7z{J_PeGEhhDG zD%0`M(a@n`$$MtCtpnyyX2-0KVA;zYzLf&8y=@ppccjLEGoRDI>0`G~O?K!u`V^** z$O(!$-HHHLfPZn%t$3kp@)*~ivRgepg$I}W>_+Z9pn^1`%IsozUZ7T0B;S7%2YOTX zMr(3TKE#Gor0;h8316kT;#6#+Aa%E=`>x;Z`sy6PSjX$YBID#^TJ8vEBcbBxk5Et^ zYV>mglN=m={%A`Pebw2x#t#gPq0BJMp~Cz^IN<#o^Lb9^QZWSH63Ceb3(j?*MSV6} zL2%%{=kgs=$6su49_!e<%?L2`7jS(n%jERf#BYHljPP>4j4R5~L#RwXP~A+NcwmB{ z-bDVn+!|;6u+w!q=hhn>0@4BG<`J{o-*g5`bgI(x%I9-?qU( znZ`a1&Qrxcdj(?=ggMChD;CED%FToc$h)?!%SLZ|yt2B!^d#xS<_9XK35rjMiV t{whm>tJ8CS8JuTDJ!tZ{tJ$!Dj%T^Ss9|R~YuF`{hmRmmM@0)z`(ISQ+i(B? literal 0 HcmV?d00001 diff --git a/static/content/buttons/thnlqd.png b/static/content/buttons/thnlqd.png new file mode 100644 index 0000000000000000000000000000000000000000..33c8a54dd34887d30a4e32112232308e705c35cf GIT binary patch literal 965 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 literal 0 HcmV?d00001 diff --git a/templates/bases/base.html b/templates/bases/base.html index 44f434b..bc971f1 100644 --- a/templates/bases/base.html +++ b/templates/bases/base.html @@ -47,17 +47,18 @@

BUTTONS

    -
  • dimden
  • -
  • ne0nbandit
  • -
  • thinliquid
  • -
  • nekoweb
  • -
  • s1nez
  • -
  • beeps
  • -
  • itsnotstupid
  • -
  • blinkies.cafe | make your own blinkies!
  • -
  • 88x31
  • -
  • neocities
  • -
  • tuxedodragon
  • +
  • emmixis
  • +
  • dimden
  • +
  • ne0nbandit
  • +
  • thinliquid
  • +
  • nekoweb
  • +
  • s1nez
  • +
  • beeps
  • +
  • itsnotstupid
  • +
  • blinkies.cafe | make your own blinkies!
  • +
  • 88x31
  • +
  • neocities
  • +
  • tuxedodragon