From 4494306bb3f337a921ef3acaeb1b8074ee380d61 Mon Sep 17 00:00:00 2001 From: Boyana Date: Tue, 30 May 2023 17:19:45 +0200 Subject: [PATCH] upload image and replace --- week5/__pycache__/app.cpython-310.pyc | Bin 509 -> 1348 bytes week5/app.py | 30 +++++++++++++++++++++++++- week5/static/img/output00.png | Bin 495429 -> 495895 bytes week5/static/img/output01.png | Bin 494897 -> 495363 bytes week5/static/img/output02.png | Bin 500880 -> 501346 bytes week5/static/img/output03.png | Bin 480177 -> 480643 bytes week5/static/img/output04.png | Bin 683147 -> 683613 bytes week5/static/img/output05.png | Bin 509594 -> 510060 bytes week5/static/img/output06.png | Bin 438037 -> 438503 bytes week5/static/img/output07.png | Bin 580370 -> 580836 bytes week5/static/img/output08.png | Bin 703944 -> 704410 bytes week5/static/img/output09.png | Bin 503764 -> 504230 bytes week5/static/img/output10.png | Bin 381790 -> 382256 bytes week5/static/img/output11.png | Bin 435937 -> 436403 bytes week5/static/img/output12.png | Bin 738149 -> 738615 bytes week5/static/img/output13.png | Bin 440003 -> 440469 bytes week5/static/img/output14.png | Bin 411363 -> 411829 bytes week5/static/img/output15.png | Bin 349234 -> 349700 bytes week5/templates/mosaic.html | 10 ++++++++- 19 files changed, 38 insertions(+), 2 deletions(-) diff --git a/week5/__pycache__/app.cpython-310.pyc b/week5/__pycache__/app.cpython-310.pyc index 24d9df1281b127ba055b895994c095d441d77466..bf737818b42003efe9c8af7c5703136b7de1939c 100644 GIT binary patch literal 1348 zcmZ8g&2QT_6z8KTS(ZPOZo#q*TMk75?_i+?b}NdtO$rnU>|k!NLKj0dX-AG^X(Zz; zhI4WcyYxPwC}3l!{!6^>)IVUCUbaVh80u2s)B7MF-}~{$ywL~O&%G>jn=tz-zqznqaJn`y1Oc0Hf0eZ}Qdzc>4|IdwjoK)8cGE zI(I%`b)*BveU`@RvO`TpieImU(#Ds9CsK?wMq5(MxR66FvLcPO=q(!EQ0Z7FqcF)P z;Uf>TM9w4`N6xgEL{7oS#?ilN)Mk^2O$#v@fj#QKVRehpQ=IAu1&1Y>lf1PgYt%X2 zP)-lY8a71JIl)Suo`LQMyRYLIPpTqKv~kn?T1d11`1G{@%gOQZOoj)982T)@6em zxFs4}ULhegwz?$Tc|);H)?4iFK>I@%5nR-=T*b+#d!e)RJw#rT#S@_r2{uXdSH>-5 zGSd=yNaVg1w%@I2qGl@jT*x#oY^-b`pgz>8{1WXBNC$t5N_bVIdCUzv>knQaew9q< zi=3;Se(X|uq-9vIqbpIw$PF$4lJ+Us z%e2|HdA_pAKD))*_JT?(euHsk`weISP3l1aU*kN0Hu#kNE$`ZlZLH5eYe{W3dv)bW zTb|sp=C@W@aHQq-meBriXkX26D8IM9BNWD!`IQzWU&_>RyvJ;a}piHoyP? delta 374 zcmYk2%}T^D6or%YFH<|?Rv)1Z2oC5%R76EkP=qodB~Z%biZJ~%X%!dZLSH~!xznZZ z;ZtPm%2yB+Z@QWbIr(nj9?s2Y`0I@8;V>jvr+=M%rG$LhX0aS>_VDPF=ke-{5=o>} zkkUz=p54MtU7+AS($ok4Es)+jmA(v~2)=OXCM4$H)-a~VJ1TNLM+g*Lcc5FuWd)T4 zm9N{bFv9M-e0gsRmdX`#7-N?e>z_r)#1 ze6lH$r@8zOI-wdT$Q^$n;ZZ|ttx`i6|th^ZyScwoFs8%#0mlwCMgeSiSb@GPtH r60*!VXl6WBcP;dTeX<3y=7w*Vwd@Mm#m^*qgc7lcMwC;|I2+M_h%i`D diff --git a/week5/app.py b/week5/app.py index ec3f222..ed93707 100644 --- a/week5/app.py +++ b/week5/app.py @@ -1,11 +1,19 @@ # This is a flask application that overlaps uploaded images and text on top of images laid out in a grid on the browser. from flask import Flask -from flask import request +from flask import request, redirect from flask import render_template import glob +import os + +UPLOAD_FOLDER = './static/img/' +ALLOWED_EXTENSIONS = {'txt', 'pdf', 'png', 'jpg', 'jpeg', 'gif'} +def allowed_file(filename): + return '.' in filename and \ + filename.rsplit('.', 1)[1].lower() in ALLOWED_EXTENSIONS app = Flask(__name__) +app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER @app.route("/") def overlap(): @@ -13,3 +21,23 @@ def overlap(): print(images) return render_template("mosaic.html", images=images) + +from flask import request + +@app.route('/upload', methods=['POST']) +def upload_file(): + if request.method == 'POST': + file = request.files['tile'] + # print(request.files["zine test.png"]) + if file and allowed_file(file.filename): + filename = file.filename + print("zine test.png",filename) + file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename)) + overwrite = request.form["overwrite"] + os.system(f"cp ./static/img/{ filename } ./static/img/{ overwrite }") + os.system(f"rm ./static/img/{ filename }") + + return redirect("/") + # f = request.files['the_file'] + # f.save('/var/www/uploads/uploaded_file.txt') + diff --git a/week5/static/img/output00.png b/week5/static/img/output00.png index 2201ef98f8e89e3d5959eee462fc8845bb2e3ebe..35b56b9b361b179d3a5bcc456c77e562921ada08 100644 GIT binary patch delta 589 zcmX>)Pj31mxeYfN+4=c2w)EIVjs^!;sXjThG&_Rf1VX{*wnpnXF|y$Tm_4-9d2Kf{J^NT zyy)nH{M)voYb^_Zyi9Bs?kt?VWqwUidV=q@Gpn-rPbKRd>DKO3(LS=v+OqDB%;p_$ zOP=eoM?N|bE97=M<8{LWt-ddZ){C!G6gXV+o=I$iN>P1M^fxE5DLsdp47-kROC!(A;b(5rF2$i43Y6I5(dCVbGao>TIpYq$L4%;)yH`>#p` zHD1)PJj~4$AbVZF$)h5xXU4{zDvL!uBLz*jIjVGoUHmWA%0BsU@b=^b9H*0*HO?Kr zJE==kaNEyMEB<-S365J~|9s25!0ktSuRrBkmVer6ugabG=C781-}3t9uWv^#yyyRQ z`Vr@>1z6B8{sq(T|J$_n2E z-p$P3(9CaYYGr7yZD3$!VDQZ8q|$V$c6KFX!Rhja^QL>ZvnvY%6`EL?7(mo++PwVK K_WE}AW9$ISa1Q1G delta 121 zcmbQfNbcx7xeYfN*?Cp@b|^S}-TZ)YEn{;$YkNE^BM>tIF*6Xe05M36ZF@W`dtEcX zk)@TXg|>l#m4U%>cPE?aZ#vkOkOi+v{c4yl+sUphXl!L{Ze?f$QCnA(I%9iaC;KsW E00RRglK=n! diff --git a/week5/static/img/output01.png b/week5/static/img/output01.png index 51e80afbf95d58efe645ecc498469acb4bdcc6d0..56bab5565ec5e01cc9bcbeb648895871eb562ecf 100644 GIT binary patch delta 589 zcmdluORjmI+=iQs?EHM18TanY-28xXEn_|7v8s@WlAy$Lg@U5|w9K4Tg_6pGRE3J% z0tSYN*0(df^9~#ExO}&9?O!lKL{t8F-;&ryz3M-FYySu@aNVu7Kw_F~?LD63pN@U` z`Oh)`M`4(nrPudIC;8O2MV38H$+>w)EIVjs^!;sXjThG&_Rf1VX{*wnpnXF|y$Tm_4-9d2Kf{J^NT zyy)nH{M)voYb^_Zyi9Bs?kt?VWqwUidV=q@Gpn-rPbKRd>DKO3(LS=v+OqDB%;p_$ zOP=eoM?N|bE97=M<8{LWt-ddZ){C!G6gXV+o=I$iN>P1M^fxE5DLsdp47-kROC!(A;b(5rF2$i43Y6I5(dCVbGao>TIpYq$L4%;)yH`>#p` zHD1)PJj~4$AbVZF$)h5xXU4{zDvL!uBLz*jIjVGoUHmWA%0BsU@b=^b9H*0*HO?Kr zJE==kaNEyMEB<-S365J~|9s25!0ktSuRrBkmVer6ugabG=C781-}3t9uWv^#yyyRQ z`Vr@>1z6B8{sq(T|J$_n2E z-p$OO)5vdXYGr7yZD3$!VDQZ8q|$V@R(2(1!Rhja^QN1(vMUP$6`EL?7(mo++PwVK K_Uu;nW9$GEP!A^n delta 121 zcmZpkC%18y+=iQs?7XUcI}{wgZhpYHma#dWwLPAd5r~<9m>Gy!fEXmkwmqJeJ*$!5 z$kNKxLfgQ=%D`Z`yOYiI8*S`L$b#3Tel<+zY-d*%G`2D}w=y(>sI4nXow41vo&6X) E0N=PI3jhEB diff --git a/week5/static/img/output02.png b/week5/static/img/output02.png index 490349bc61588f8adcd37207420339375098c8e6..1c57151ab28a61f9212dedccabd39ce08b3855f3 100644 GIT binary patch delta 589 zcmbPmQtr_ixeYfN+4=c2Gw$7)x%mO(TE=?DV^tv$B|(Yh3I#>^X_+~x3MG{VsR|Xj z1q=)kt#4;|=N&fSartiJ+P`3eh^GAUz9q4ZdewjU*8UM*;JRCDfy6Y~+Iu|5KOOt> z^Pgk>kHRoDORw*bPV%X3i!6JZl5_KpSa#6N==!(pIlauRK|cyLFcw z4L^RUUT0s{>8u@08cnWeE-fvbv{*cHuY_0>uc388*Z;CD&xDdixC$0uJKVk|`GHYw zdC}1Y`L}IF*IE|-c$wHN+*vqz%lw+4^aS5)XI5qLpGwv_(yiU6qJ3nSwPoEMnaw-i zmOR&Ek9>3>R>pjYF3k$c|*CaBn^O!%N-J*VVH*KYa8na}NY_g|F? zYP_gnd6=6iK=!(TlSf5X&y0;bRThhSMhcp4b5!XFyZB$Km3{Kz;O)r=I8G-qYn(fL zcT$(8;I^NiR{Zmt6CAg~{`r=9f!mMvUVqB7EdR9CUX?rV&0j73zUB4HU*C>gc+daq z^drt$3$UPH{0pYv|F>!D$D4<0Yql-c@6!KwbS;C7S#vjYdp9#95HkTWh|L1TtU%1R zy_=c+^bCGeQ!7JrZ36=<1A}KyCzYnB&S6(V7Mw0$IB)v2Iqb@UK!qk&CI%3-n>H^$ Lwf)o__G9b-y225f delta 121 zcmaEKMsC7MxeYfN*?Cp@&#MGy!fEXmkwmqJe{p1XO zBTFk&3vB}fD+7b&?oKw-&F8TzAq!rU`qeN!V;;M*ps|&)xs{<2L~UJB>WuAk=CL1R F2LK_5B|HEC diff --git a/week5/static/img/output03.png b/week5/static/img/output03.png index 3e0f8fa72f0e3fa0a49a73de05fef934763bb699..5de5c46512d62485d15d4376ce71c23a8e267ca8 100644 GIT binary patch delta 589 zcmdnET()_&?1r0+?EHM18TanY-28xXEn_|7v8s@WlAy$Lg@U5|w9K4Tg_6pGRE3J% z0tSYN*0(df^9~#ExO}&9?O!lKL{t8F-;&ryz3M-FYySu@aNVu7Kw_F~?LD63pN@U` z`Oh)`M`4(nrPudIC;8O2MV38H$+>w)EIVjs^!;sXjThG&_Rf1VX{*wnpnXF|y$Tm_4-9d2Kf{J^NT zyy)nH{M)voYb^_Zyi9Bs?kt?VWqwUidV=q@Gpn-rPbKRd>DKO3(LS=v+OqDB%;p_$ zOP=eoM?N|bE97=M<8{LWt-ddZ){C!G6gXV+o=I$iN>P1M^fxE5DLsdp47-kROC!(A;b(5rF2$i43Y6I5(dCVbGao>TIpYq$L4%;)yH`>#p` zHD1)PJj~4$AbVZF$)h5xXU4{zDvL!uBLz*jIjVGoUHmWA%0BsU@b=^b9H*0*HO?Kr zJE==kaNEyMEB<-S365J~|9s25!0ktSuRrBkmVer6ugabG=C781-}3t9uWv^#yyyRQ z`Vr@>1z6B8{sq(T|J$_n2E z-p$PZ#+~2P)XLCY+rYrez~GtFNu}v+-t0=qg45*-=S|=4&8{p6RA^#lVgOOQY4h?^ L+h2RLA7cjqbUF}M delta 121 zcmZo(ExU2K?1r0+?7XT1PWrXeHa}oo%h(*x+8)o!2*gZ4%nZaVKnxON+aAx#{>q)- z$kNKxLfgQ=%D`Z`yOYiI2w!$3WWj4vzZ#}@`m!qv8e18gTNxTb)YcWH&e*=!m;D$! E0IQTEwEzGB diff --git a/week5/static/img/output04.png b/week5/static/img/output04.png index 2ab82594c7ff4c5604de3485e29c8c0551ed3411..a9a69be5b1c0cfbf3ac06db3af2818a91778cec1 100644 GIT binary patch delta 601 zcmeCasd@K~=7yV$?EHLMAFuZ+Z+^hIma(4kSXD?wNl;?BLP1e}T4qkFLP=#oszOC> z0Ruxs>)RRLd4~;nT)x}5_Ai(qqA7p8Z%J&UUiBZowSR;cxbD_kATdq0_8!miPshIe z{O6eeqcBX(((C)9lYDC1BFmnpd*{8GwAJg)wU&iHUM4mRcNR|GGQTD$J;C?dnN?Z*r;>G!bZhsiXdl^SZCQ6mX7i4> zCC~NPBOe`z6>>YB@w(xGR^OLH>&4e83LGwZ&m=ZMrKmnB`kRy3lpe|Fg)IjrINyAj zHO2PNr4FrE^=5lkZ_RGn;jR`I=+!u1O z?eVN!M-uprEUio}v<(cb3=EdLJK0P(O5;*O7Q80)t6_R_8ke%5v6Zp8m7x(tZCz37 MjP29YxQ?*{0F&4!6#xJL diff --git a/week5/static/img/output05.png b/week5/static/img/output05.png index ad57967d5eee34554156fa815cd9655dd9b53e9d..6f5e17a3a6b63dee4e8eaf22fed3e352f6bff435 100644 GIT binary patch delta 589 zcmbQ$EB|JK{Dzy1?EHLMAFuZ+Z+^hIma(4kSXD?wNl;?BLP1e}T4qkFLP=#oszOC> z0Ruxs>)RRLd4~;nT)x}5_Ai(qqA7p8Z%J&UUiBZowSR;cxbD_kATdq0_8!miPshIe z{O6eeqcBX(((C)9lYDC1BFmnpd*{8GwAJg)wU&iHUM4mRcNR|GGQTD$J;C?dnN?Z*r;>G!bZhsiXdl^SZCQ6mX7i4> zCC~NPBOe`z6>>YB@w(xGR^OLH>&4e83LGwZ&m=ZMrKmnB`kRy3lpe|Fg)IjrINyAj zHO2PNr4FrE^=5lkZ_RGn;jR`I=+!u14?hXl!L{Ze?f$QCnA(I%E5?1MJ7x E0hXa8Z2$lO diff --git a/week5/static/img/output06.png b/week5/static/img/output06.png index 2e960fd89cefe78b5f0218ac9912c4730188679b..3545d00e218c66ca5775e149e5be26e2d1f68b70 100644 GIT binary patch delta 585 zcmbPwPwM$YsSP(7+4=dj+b-X)TE=?DV^tv$B|(Yh3I#>^X_+~x3MG{VsR|Xj z1q=)kt#4;|=N&fSartiJ+P`3eh^GAUz9q4ZdewjU*8UM*;JRCDfy6Y~+Iu|5KOOt> z^Pgk>kHRoDORw*bPV%X3i!6JZl5_KpSa#6N==!(pIlauRK|cyLFcw z4L^RUUT0s{>8u@08cnWeE-fvbv{*cHuY_0>uc388*Z;CD&xDdixC$0uJKVk|`GHYw zdC}1Y`L}IF*IE|-c$wHN+*vqz%lw+4^aS5)XI5qLpGwv_(yiU6qJ3nSwPoEMnaw-i zmOR&Ek9>3>R>pjYF3k$c|*CaBn^O!%N-J*VVH*KYa8na}NY_g|F? zYP_gnd6=6iK=!(TlSf5X&y0;bRThhSMhcp4b5!XFyZB$Km3{Kz;O)r=I8G-qYn(fL zcT$(8;I^NiR{Zmt6CAg~{`r=9f!mMvUVqB7EdR9CUX?rV&0j73zUB4HU*C>gc+daq z^drt$3$UPH{0pYv|F>!D$D4<0Yql-c@6!KwbS;C7S#vjYdp9#95HkTWh|L1TtlPVp z*#Z{xo0?h~nrj;vSQ!{Rb2_Os{nauyC1k+Z9)`9b*Ro DOK&5T diff --git a/week5/static/img/output07.png b/week5/static/img/output07.png index 31da81b44a427f4a50f443074b2bdc32509a18e4..a5cadefbf18b23f4b596e9bca78f94aa120e2ce2 100644 GIT binary patch delta 593 zcmbQVP5H@AX)TE=?DV^tv$B|(Yh3I#>^X_+~x3MG{VsR|Xj z1q=)kt#4;|=N&fSartiJ+P`3eh^GAUz9q4ZdewjU*8UM*;JRCDfy6Y~+Iu|5KOOt> z^Pgk>kHRoDORw*bPV%X3i!6JZl5_KpSa#6N==!(pIlauRK|cyLFcw z4L^RUUT0s{>8u@08cnWeE-fvbv{*cHuY_0>uc388*Z;CD&xDdixC$0uJKVk|`GHYw zdC}1Y`L}IF*IE|-c$wHN+*vqz%lw+4^aS5)XI5qLpGwv_(yiU6qJ3nSwPoEMnaw-i zmOR&Ek9>3>R>pjYF3k$c|*CaBn^O!%N-J*VVH*KYa8na}NY_g|F? zYP_gnd6=6iK=!(TlSf5X&y0;bRThhSMhcp4b5!XFyZB$Km3{Kz;O)r=I8G-qYn(fL zcT$(8;I^NiR{Zmt6CAg~{`r=9f!mMvUVqB7EdR9CUX?rV&0j73zUB4HU*C>gc+daq z^drt$3$UPH{0pYv|F>!D$D4<0Yql-c@6!KwbS;C7S#vjYdp9#95HkTWh|L1TtU$~L z#O&LGFm1rb}GrP!%0tIF*6Xe05M364T#yd$Fp*H zpXWESv@*5OHZZUX)TE=?DV^tv$B|(Yh3I#>^X_+~x3MG{VsR|Xj z1q=)kt#4;|=N&fSartiJ+P`3eh^GAUz9q4ZdewjU*8UM*;JRCDfy6Y~+Iu|5KOOt> z^Pgk>kHRoDORw*bPV%X3i!6JZl5_KpSa#6N==!(pIlauRK|cyLFcw z4L^RUUT0s{>8u@08cnWeE-fvbv{*cHuY_0>uc388*Z;CD&xDdixC$0uJKVk|`GHYw zdC}1Y`L}IF*IE|-c$wHN+*vqz%lw+4^aS5)XI5qLpGwv_(yiU6qJ3nSwPoEMnaw-i zmOR&Ek9>3>R>pjYF3k$c|*CaBn^O!%N-J*VVH*KYa8na}NY_g|F? zYP_gnd6=6iK=!(TlSf5X&y0;bRThhSMhcp4b5!XFyZB$Km3{Kz;O)r=I8G-qYn(fL zcT$(8;I^NiR{Zmt6CAg~{`r=9f!mMvUVqB7EdR9CUX?rV&0j73zUB4HU*C>gc+daq z^drt$3$UPH{0pYv|F>!D$D4<0Yql-c@6!KwbS;C7S#vjYdp9#95HkTWh|L1TtU$~L z#Oy%K0mPi!yP3I|H}RXAS{a&a8yHv_7(8=2sWg4=RxTxE!Rhja^QNEM%B3s_RA^#l TVgOOQY4h?^+nKg;9b*Roi!v0y delta 133 zcmbRBU+ctgtqnIB*?CokZ>#C(Y<|GFma#dWwLPAd5r~<9m>Gy!fEXmk2E^<@%mKul z+v8ce7&q}7Sz4J|Xd4(<85k^gce0tDznx17S@4?FuZHOhwsR>98e18gTNxTb)YcWH M&e(osJJ&IG0I`!OX8-^I diff --git a/week5/static/img/output09.png b/week5/static/img/output09.png index 8009b2292646110ce8af5e9ba016886756fe1c93..0aa4a8803d6841310b56abba6899ba5e24dd5c41 100644 GIT binary patch delta 589 zcmca|UvAlBxeYfN+4=c&B(`XXZGOPGma(4kSXD?wNl;?BLP1e}T4qkFLP=#oszOC> z0Ruxs>)RRLd4~;nT)x}5_Ai(qqA7p8Z%J&UUiBZowSR;cxbD_kATdq0_8!miPshIe z{O6eeqcBX(((C)9lYDC1BFmnpd*{8GwAJg)wU&iHUM4mRcNR|GGQTD$J;C?dnN?Z*r;>G!bZhsiXdl^SZCQ6mX7i4> zCC~NPBOe`z6>>YB@w(xGR^OLH>&4e83LGwZ&m=ZMrKmnB`kRy3lpe|Fg)IjrINyAj zHO2PNr4FrE^=5lkZ_RGn;jR`I=+!u1#C(Y<|GFma#dWwLPAd5r~<9m>Gy!fEXmkwmqJeop%Yp zk)@TXg|>l#m4U%>cPE?a)hpSRkOi+v{c4!LW+l6_ps|&)xs{<2L~UJB>Wu9VR z0Ruxs>)RRLd4~;nT)x}5_Ai(qqA7p8Z%J&UUiBZowSR;cxbD_kATdq0_8!miPshIe z{O6eeqcBX(((C)9lYDC1BFmnpd*{8GwAJg)wU&iHUM4mRcNR|GGQTD$J;C?dnN?Z*r;>G!bZhsiXdl^SZCQ6mX7i4> zCC~NPBOe`z6>>YB@w(xGR^OLH>&4e83LGwZ&m=ZMrKmnB`kRy3lpe|Fg)IjrINyAj zHO2PNr4FrE^=5lkZ_RGn;jR`I=+!u1Gy!w#T!wPCw3XWNBq; zp>1GbWni$}-N|M;>seMMWWj4vzZ#~Son=)PG`2D}w=y(>sI4nXov}UZEbB3L00|u< A8vp z0Ruxs>)RRLd4~;nT)x}5_Ai(qqA7p8Z%J&UUiBZowSR;cxbD_kATdq0_8!miPshIe z{O6eeqcBX(((C)9lYDC1BFmnpd*{8GwAJg)wU&iHUM4mRcNR|GGQTD$J;C?dnN?Z*r;>G!bZhsiXdl^SZCQ6mX7i4> zCC~NPBOe`z6>>YB@w(xGR^OLH>&4e83LGwZ&m=ZMrKmnB`kRy3lpe|Fg)IjrINyAj zHO2PNr4FrE^=5lkZ_RGn;jR`I=+!u1-KJD zHksM{rlwYg=Gq1ZRt5&ooK7lD-!_j;30ZKueBr$5&*!lz3j!6ISeY0=)Nb0m{M2^o I`E1A70fvDN?*IS* delta 117 zcmdmdQR?AYsSP(7*?Cn(ja)k=H$Pxp%h(*x+8)o!2*gZ4%nZaVK+L*5o|R2%HouXj zm8pfcfq|8Q!E$#eo9P`3*p!e3uSxxCn7(rXo3fy>m9e>%p%FxFT~X?c?Qa*b9b*Ro DR+1zQ diff --git a/week5/static/img/output12.png b/week5/static/img/output12.png index 8dd6ea8b65a4e8ba2d4067b342292b31f6b8db9a..8b1fe8e00a1662def5a89a567e7d05d0be1ebd02 100644 GIT binary patch delta 605 zcmaFbrn|jMcf(Cac78tH{LK;#n;$T)WvpjBRuvLa5|mi3P*9YgmYI{PP*Pcts!)+z zz`zjE`gVqQ-eChCm+v;N{R<|DXv!b&TN2x-SN(@??H}O)3Gl< z|2gLWC=64x^!onjB%j*0$g-y?IXCZ!We3fSzQ1j)@#1>J-g$2(ZS}hJ%9FLYTX)IP z@Z*Q-b@pYQ&f3AG(d2sO($d07i^U`NN{B`A8d?{0{V&_{Oek4|t6=f9!|iL59~jk^ z7ad)Yf7@1ct!3elmx;~7orROP%&!SbPw>5VW>psdsbrla-P(OB+DCR-Th`r?*}UUz z$#XsS$VUfah1^bOyl!}))%WGldhvCN0*6c9Gl@-5DXLG3{^le$rAP94VatID&Nm-s zO|kuRsYB~kz1g1CTeF*XxT}Q)dNs}$x%WL_f{Ja*gby0lb4q@6?UsL>`P^Q2|5d4= z#)}%3hq;*oWUmW2c~oTe%-Fb7WwEGdq@d|GN0pASi~prs*(VpKqBLxczAF^`|_`@=sgsRk`!t{MFL$TVB8X_3g-o_x!(3 zKjNIV01NuXzhL_Pf19>`ym_d$X4_)@F8zN;*D}bMHFq<&cQZ2rF%uAj*epQI3dC$c z%nrmHK+FlmT-&>uxfhu8o0?h~nrj;vSQ!{Rb2_Os-O8F<30ZKueBr$5+1A|3f9)4q%7VsL#^zRrMi8}i OMX58k7us?kV+R0`p(X z0Ruxs>)RRLd4~;nT)x}5_Ai(qqA7p8Z%J&UUiBZowSR;cxbD_kATdq0_8!miPshIe z{O6eeqcBX(((C)9lYDC1BFmnpd*{8GwAJg)wU&iHUM4mRcNR|GGQTD$J;C?dnN?Z*r;>G!bZhsiXdl^SZCQ6mX7i4> zCC~NPBOe`z6>>YB@w(xGR^OLH>&4e83LGwZ&m=ZMrKmnB`kRy3lpe|Fg)IjrINyAj zHO2PNr4FrE^=5lkZ_RGn;jR`I=+!u1-KJD zwtuVmO--!~&9w~-tPBjEIh|CRK4Tr560+cQ`NDbAPp)HA76d9Zu`)4$sNJ-A`Kj%H J*RdUA2LR8c5V-&V delta 117 zcmbRGQR?tpsSP(7*?CpPR{Pvoy!ip+TE^yh*7kT-Mj&PaVrC#_0bpvYDQ>flUcn@S4=GhUv36uqg`~TN#^M85%*<))l4B*nWNk+c9 z0Ruxs>)RRLd4~;nT)x}5_Ai(qqA7p8Z%J&UUiBZowSR;cxbD_kATdq0_8!miPshIe z{O6eeqcBX(((C)9lYDC1BFmnpd*{8GwAJg)wU&iHUM4mRcNR|GGQTD$J;C?dnN?Z*r;>G!bZhsiXdl^SZCQ6mX7i4> zCC~NPBOe`z6>>YB@w(xGR^OLH>&4e83LGwZ&m=ZMrKmnB`kRy3lpe|Fg)IjrINyAj zHO2PNr4FrE^=5lkZ_RGn;jR`I=+!u1-KJD zHaTm4Q&THLb8Q0yD+7aPPA8S7@33Q2LKd7ZUpR02OFK4YL7+ktD-#2V+D)66pV}^K I&vuL*07F6za{vGU delta 117 zcmdlwQSx!GGy!fS7fAJS&@wHNTOi zm8pfcfq|8Q!E$#eo9SH+Y)Z(2*Q9 z0Ruxs>)RRLd4~;nT)x}5_Ai(qqA7p8Z%J&UUiBZowSR;cxbD_kATdq0_8!miPshIe z{O6eeqcBX(((C)9lYDC1BFmnpd*{8GwAJg)wU&iHUM4mRcNR|GGQTD$J;C?dnN?Z*r;>G!bZhsiXdl^SZCQ6mX7i4> zCC~NPBOe`z6>>YB@w(xGR^OLH>&4e83LGwZ&m=ZMrKmnB`kRy3lpe|Fg)IjrINyAj zHO2PNr4FrE^=5lkZ_RGn;jR`I=+!u1tIF*6XeY>#JU&Gz6ova~X_ z&^9ozGB8-~?qoClrZ1}!vfwqTUk%f_{8*I*jjfE$tqhGIYU_$pXKc6gV?D+W02z8B ABme*a diff --git a/week5/templates/mosaic.html b/week5/templates/mosaic.html index 530a09f..ee41253 100644 --- a/week5/templates/mosaic.html +++ b/week5/templates/mosaic.html @@ -6,7 +6,7 @@ margin: 0; } img{ - width: 20vw; + width: 25vw; margin: 0; padding: 0; } @@ -17,5 +17,13 @@ {% for image in images %}{% endfor %} + +
+ + + + +
\ No newline at end of file