From b1da021185218216d795cf297b135b18c2859fe7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A5=80=E6=A2=A6?= <3501646051@qq.com> Date: Mon, 22 Dec 2025 23:30:01 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=AE=9E=E7=8E=B0=E6=95=99=E5=B8=88?= =?UTF-8?q?=E8=B5=84=E6=96=99=E6=9B=B4=E6=96=B0=E3=80=81=E6=93=8D=E4=BD=9C?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E5=92=8C=E7=B3=BB=E7=BB=9F=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新增教师资料更新功能,包括个人信息修改和密码更新 添加操作日志记录系统,记录用户关键操作 实现系统设置模块,支持动态配置系统参数 重构数据库模型,新增教师表和系统设置表 优化成绩录入逻辑,支持平时分、期中和期末成绩计算 添加数据导出功能,支持学生、教师和成绩数据导出 完善管理员后台,增加统计图表和操作日志查看 --- .../database-2025-12-22T15-15-32-013Z.sqlite | Bin 0 -> 1331200 bytes backend/config/database.js | 80 +- backend/controllers/adminController.js | 311 +++- backend/controllers/authController.js | 20 + backend/controllers/teacherController.js | 62 + backend/database.sqlite | Bin 0 -> 1343488 bytes backend/init_db.js | 343 ++++ backend/models/Course.js | 35 +- backend/models/OperationLog.js | 28 + backend/models/Score.js | 74 +- backend/models/Student.js | 29 +- backend/models/SystemSetting.js | 32 + backend/models/Teacher.js | 38 + backend/models/User.js | 21 + backend/package-lock.json | 1445 ++++++++++++++++- backend/package.json | 15 +- backend/routes/admin.js | 35 + backend/routes/auth.js | 1 + backend/routes/teacher.js | 5 + backend/scripts/fix_teachers.js | 31 + backend/scripts/migrate_v2.js | 48 + backend/scripts/migrate_v3.js | 33 + backend/server.js | 14 +- backend/services/adminService.js | 471 +++++- backend/services/authService.js | 30 + backend/services/teacherService.js | 72 +- database.sqlite | 0 frontend/public/js/admin.js | 1414 ++++++++++------ frontend/public/js/auth.js | 5 +- frontend/public/js/teacher.js | 570 ++++++- frontend/views/admin/dashboard.html | 656 ++++---- frontend/views/admin/data_export.html | 266 +++ frontend/views/admin/grade_statistics.html | 279 ++++ frontend/views/admin/operation_logs.html | 245 +++ frontend/views/admin/student_management.html | 696 ++++---- frontend/views/admin/system_settings.html | 290 ++++ frontend/views/admin/teacher_management.html | 316 ++++ frontend/views/admin/user_management.html | 759 ++++----- frontend/views/student/profile.html | 134 +- frontend/views/teacher/dashboard.html | 130 +- frontend/views/teacher/grade_entry.html | 657 +++----- frontend/views/teacher/grade_management.html | 722 +++----- frontend/views/teacher/profile.html | 283 ++++ 43 files changed, 7860 insertions(+), 2835 deletions(-) create mode 100644 backend/backups/database-2025-12-22T15-15-32-013Z.sqlite create mode 100644 backend/database.sqlite create mode 100644 backend/init_db.js create mode 100644 backend/models/OperationLog.js create mode 100644 backend/models/SystemSetting.js create mode 100644 backend/models/Teacher.js create mode 100644 backend/scripts/fix_teachers.js create mode 100644 backend/scripts/migrate_v2.js create mode 100644 backend/scripts/migrate_v3.js create mode 100644 database.sqlite create mode 100644 frontend/views/admin/data_export.html create mode 100644 frontend/views/admin/grade_statistics.html create mode 100644 frontend/views/admin/operation_logs.html create mode 100644 frontend/views/admin/system_settings.html create mode 100644 frontend/views/admin/teacher_management.html create mode 100644 frontend/views/teacher/profile.html diff --git a/backend/backups/database-2025-12-22T15-15-32-013Z.sqlite b/backend/backups/database-2025-12-22T15-15-32-013Z.sqlite new file mode 100644 index 0000000000000000000000000000000000000000..58821b72873fbd5097357fed0a537316e2bf4ff0 GIT binary patch literal 1331200 zcmeFa2bdJa_C8#bx+nBZlUGFCB?$;fS9KggWq}n@B%>G+VO1nb5K$LcFo0RnYZh}> z%qWUEd(AmVf>*uj^&0NgtKaFFo~_fx?9R+@hy9-C|Lpi!)LYwq>s6Pj}a;t}|iW zs2K}utB#sGfA-XcRXS-y0s%6ls)~@oFB1}|A^g`Ks$mXE0M#3*f{fkfUz<$4Pm-Z` zNaFO=rRvMc_NgP{HPMmEN0FbDo5J%$?z;Q!DA^_|yKVI z^~hPZ3zjTcSUY>lg4%@(XUsWzfdB);hmEhPo>)^gv3lsJnkwP1Rej=B!f$5nlB$U{ zlP6Y<9Y1pa>hT9v?N@V9|82H9e(J16wVCaFf9ktpX&bqsZ{NVFcE+~3^J?c$T{vUz zoGG*B9=*Vi6rW-KzvZ!O#`LO@qbJsks2PtftE!$fam>ikAZq`b(G$0|bJ2p@`BPw5 z_lUOrD_6R3$-M00G`Z2#`A63-Y(&=d+6B|*&zR>PY$IFDm^WqW^y%|!7c6LGgK6_? zr!K6WJ_USr<_rw4*}HnusEJj5rbF|>8MABq^qw*xgw7fr97voP1!RinpDtQtLO)TnLybK2ZR z^B2^*8|KbuP6x@f_osk5dmm^OEQZ50qckKWlcrZ23W4;M-k+Z;7x zP5~(k=PoR;MW$n?%$qx7&ca44$!;;L_W0UajWA(;?d+-ZXEyT3{~JxVJrR>ej~q9t zrVl@J{i_AwZX&4OogxLqH&sCLe@S^>(w z{uKV$$L)#!uxDRoEji7-9{>M6CwsP&D#rB-k{NTR*Ph_nI(5-P@O*%$2#*?5sL&9o zQQjg^_xY!vDpl;&Inaol?2T#)&HkH6CbByXNJYW>9v_EQPZ(A`yvFYu z2F9g|VO<+L2f03lGw=0dME%V>3sjaXDk=h}RA;VidqFIBw`}^QIrOXgsUkcg*pV=FFpummD{4vT-n7GWnp%6Gl#~o!~JG zk4RV62MiyKCm|hO@MrsGo8DtOfK}iTWwmPg_8LrKn%y`nBz^zi#Jf zWjB2OwRD62bPK5ODynxH)H^MpekW1A-JsrX0rg!(^;Uy=s|D2WD5^Ib)SE4!zO$&_ zXi#sofchOo_1yEdfa9yH5Y=xn$Xq`YqPW3#?xkbuO_s$ z#oDZ_wsEvs&Z-G*ZLl^ot8FZ8mTzi8n~Jp=S#4uzvs_UV+EQ4Xp4B$Gd5>I8XiH*k zEURsQ+AK%Ygf<0hqgidEXtN%tn$VWO+B{#fA3U};od0u3AvmRfXpneD|^PI@A?c_sd2C*{FhYa0LE@WOHTG6jQQbF{o(`V0^v*q50 zw>-Rd3%pbJS-Akp-YX|U*=wZ(qy-ms5|W?oM5ox+rye zYDsEl>af(9RCP*E^-5KwV#(i=-z7gyzMgz4d4KYza zi8YB+6N?iw5{D%APwbVTi5`iL2|50s_&4#7t=!)oq==A8M=-yE~+9%pM8kc{Uzm-3hUy&b^?~<>PFOXNt3*}n*0C|M$ z$bID<<%INy^qusH^s4l@bhmV^v_?8bS|lAM9VqQ1rKMe^E|L=YU*w;WPb05Io`~EN zxh`^HJ%YOhD}!y|On#}pufD22qdu(Ot=^P&U2 zdZ4<$I!sNg1Jz&M6OVtXP-QSPNMdR_C4XS3k>3$yY4TqT9r7OxZSot27WoxJll+3A zL4L+iC;!Hfk)JT6E( zY{gI`TM*RJWHW{i*@U4@zQWKVUt(yIFEBL7=NRhbGYlE|6hlfrX@G`iYUE=CjWqcP zLx+5bp-n!(&?4_+Xp;9ZG|0Oc>f{{^8F?E+O5VayBX1(8r^y=_I^=Z>ZSoq17I_sz zle~hVL0-mCCx6F~k(V%}f}xg8My;PN^Wm}y36+45Cpd0ilIYp!O$i*V`!0^ zFf_@H7#idT40UonhKyW?Atl#hsF7A%*$4vL z&%)3lXJTlRGcdHsY79-X3PXdOj-gIY!;q0vF{I=a3^lS6L16m|3>{LBp-q-2LzRKd zEmhYvYZ*r7QjCl`jP#Q+VkcolPi#O8c)kQ7BYgr!&SH%0<1w-pVPr1E$XI}pJ|81? z97c2=M%rA2^zwgYG9=42(dK7$e|e7 z8b;PYjLh9IG6rCz_s59!!-(#Rk=7R>n(l*<(;Fju7mTc47@0jWGJ0U7cgKiz!-!U4 zq*WrMrFX{2>57rP6Gm1SjLaP|GCE_V?|>1jz=(E=g(?D>NI^%hM$;W~HK%>9X1B}L zthTwD*(O&r)LczZqx4REmbf%A zK9Pt&9j}X9@UDGxY-()B=$p~AqBZiL@_Kom+*kTSx?GwlB_q#9mPMTKkKtRx)51H2 z-VU7;8UgRC4+ZB3`vtZJZU`J1s3aeeOI?Lc{;D0hvRkiS9eZSMoeXZB*`VB4k6mNI z|C{UAW&e<^Z-MCkd8fH8RChFpl^-@^eQxL;hte3*#9)cLoV!ad=cNfHP7VD+3xSJq`vsf>M z#Z`hB&SJe37FP;lIE(dCSiG|!hO<~Ng~eU{Vi;#JD}}{731T>lSt%^;B8cHEW~H!r zM?nl{F)M||odq$R#jF$-?;wcbEM}#!xIz%aS$$B3J;eADV)M3FnD-Gkir>U0)dBz1u2}sCGdB6NRYz$TLOKD2L&md zz9q1CctDWiu@~N|cUieNls#4^p{!cr&KcNY#ZFMRtDgqtj`jVZROdsHa!~xgzZ?ID zc<~+TTJ?N&CB%x4Ru5A5Q}=*4aW}QS8cF^7|J3Y&NwE>JbgW;jYfO!i=#SAaU_|5T z=>5?fqZdb4MVCa6jUEym72PAcTeLFTCK{0cC4VWuB|jrSAm1ckBCnQDlxNC^%KOWE z$^+#pxvdBgf@h33tbU9JG3-3H*`d3Txe)W5A_Un3`xOXgIj~|2VV?69K1bv zW$>Kfvf#Yn)ZqBwu%Hp_73>t012{NuIKEiDVf$kBhUJUZ8>TN-Zy3HJ93P)f<{GRu7>t9IJ=HDIBZUZC|Wjw|udB-Soxkb;B2{*L7d4UT3~oJxp`h(l96n zvmP{GtR6yPI9AUbU#yP-zo zVLVn3&_S_!fHsQN1GG@A9-xV0^#BbNs|To~SUo_7V)Xziiq!+uP^{k6AQZ-9^#C0d zs|RSKSUo@s#p(f?C{_>9K(Ts&I*Qc;WGGe-koscv5ctKhdIE$LfLYI93mA$FX`~JC4-@+i|QO*p6fMz;+y~2e#u_J+K|e>VfSzRu62) zv3g)Tj@1L(ajYKLj$`$}b{wk*w&PemupP(hf$ca}4{XP=dSE+_)dSmctRC2oWA(sx z9IFSm^H{y%vYp530ct2#Z@6sdv3h_Giq!+OQLG-Ig<|ypO%$sKXrNdE$LfLYI93mA$FX`~JC4-@+i|QO*p6fMz;+y~2e#u_J+K|e>VfSzRu62)v3g)T zj@1L(ajYKLj$`$}b{wk*w&PemupP(hf$ca}4{XP=dSE+_)dSmctRC2oWA)6&v3h3V zSUodwtezP-R?l=Ct7nYI>UH2bkJSUxc&uIrmh)IWAcx250ogoO56I%NdO#+R)dMnk ztR9fgWA%U-kJSUBJXQ}#4y;EZ)iAH zucvXWUUzV;Ubk_qUbk?pUN>>9UN>;8Ue|G~US~K~uTvbW*EJlgXK5U(XAX|lGaJY1 znT2EZ%*3&JX5d&o({ZexF&?XTgE%}^4@l#&dIsF(v3fubkJSURd8{6g#bfn=OdhKT zWbjx$Af3nR0Wlt{2Sjs|Td> zSUn)dWA%V2j@84X8j2VjX&kFJ92~1RY#ggMEF7yhOdP8>3>>RBbR4TU7>?B&6vyff z4ae&BG>+Bl4vy99HjdTn7LL{HCXUtX29DM1I*!%r49DtqievSW8}2M$Zm^~)dnL|#mGouq$e?A z3Pv=6krqctOUE#Bq8QmSMwWz;8NtX11A^E4ol*RsX#w|*zdd>scAr7rA%b}F0-`<+ zZ~S|!QtE}&S*cMeHTecKw*FdsptT2Dd!V%kT6>_i2U>fewFg>zptT2Dd!V%kwqpGH_Qo!x#RB6S)83_4LfHfiaYNqZ)3S;XEbNlUc;7Wgo^tQlD4(n z%42y(=r%h?M9X1@GVJWlZswM|62+bO42zai&2V?lPQ370?g|z69~2TTr&?wqyX-k= z=<|%wZFUZBYdM^=Z7p{tiaYNa*w%8F75OZ8g^K&T@Bbn7J)-^uGyXSkM_RXvZta2A z9%$`>)*fi>fz}>q?Sa-FXzhX49%$`>)*fi>fz}=TGX6^Z_;~l&Yq67J zyGGxOo)%^D=knR|An6~{Mbfay50NV)Bf|d-UlJY~`Zjb~XauZJcS&&Xz)yjz1N)L6 z$>sm2!<#rTK|1#fR0MidcGib6W;^V_+9NkTvV7CI=Wjk^`Q|Iuh1`)S$6c=u*7Dbw z4r}`7s$VZ({ncZ4ZZqIvng{L%QYn{e8T6|S8(@TH^Q9ZMuH3k3?S?JaEDvS|*GdyS zae&`k-G+5i@7jF!otrkS*>uiYSf0Q&muh*XZhGw0{N|494^n$^b9LR=bp1{6RsGg8 z@7}uZj!X~Gl0+Kg`uRmt$J)H+?5{RnkzH;wW2If1$g#V+B4fEzMX8bgdhNYmJ#^mJ ztMA)-|GDmQ>#juVo+dZ%LazGt^2@fabJuO~k4u@xfqg+DKTXt5>-kSp_Wb7&od5hA z6Z?Q*&MInHu%_p>rzz6`+emHfG#TT1`}!1kXncL!C0p)T4YJ{6h20)td3&Hykz;pB zkP3e0X>VlV%pv$XdCl{>z<@%$|hUy-4cRhpd>d-|kmj$?wMUZ1WyZSz&< zxmS~BAgP%F$_y16yG-?oJ^WIs=6y2evz2D3@0}(twXr_c59|(7Ijb}s)_6dp;+xhz zvh~glnTtQ;Rf-opv76sq!-Ca)w`Em{QpZ(+R89dct);hNRf#9bx)6~$7ZA8Ka?z(3vjEs-YRvSG{6S`)5GbhoeS{~1z31Dm^v{6Ql*~v9C zR*@5`>$>2hGNbc(1m<^9Y-|_*aT~g`jURPA-8K>%J8m|9N4Vs{H|0!pU|H{NNCb|g z6q#c>XWd9nW}1o=%75668@YqeNZp`$F86H2Dtl9Q`yhLNZtUE!u@%0qge82^A}c{g zPE6+hk(Jn}m18^kCF-`F_vCmF4qSMn632A(@kghYvFWjua9iJ0f5WB?>s=qmr63a< zyT!2y9Y7#I+d8#jk?w6yH_gQE#GY)-N;LsXM==UnJzz@KHv0!wqParVULuI8I9fD(a{$ncT5}KIbynFir2UszVl8x z7MTAUr(;yVKu6bvlTJ$$I5y=wKg_hYefY{NvC%Vr0HnLaeQBgE2=H#&aPHPSABFH` z_JP(t@7XA@c#ayCJ3#@toSro8IQcGgH^95ib5dg$Ivtbn^(VDWy0!kSuO7T?>rJO@ zT6KZ@n3Rc|x>mwjYLMO7MMNjW{Z>-j$#bj7T$#mNIU(j3YFhcO%=|(d?a#4M_s|AhRLGm5Amd>q%;D73JFUq2yjp(EZI1qlZ zYqpc0pP4JEc(G%`?$I~g&*3{0N4(ZuN4Jf@#;Bx?4f(ngz5v9{*L!4zH+F)w zu|dB?W?SMZ*WBp{+t}Es#4!Qi-CVOF&4}RLu|Rn5{_hGmPr$47$3S^~{q9gMsaK#J zeK-{R4~)Z$fB)b@0_)A+7J4xBOz6|lH=&uKQ$y#g?}QEyT?K2;w+Rgo+3L5UuJDcd zuE8gRuLi#keiRA?e+gc$ehy!kFAUxstPkF={;K|6eL}rRy-mGZJp*zEE>rhWC#Vb6 z8S3Hco@!UMkJ>KvKUG)d)SIb|sZUbR!)gLQrA|wopSmY?Me3x~O{v{ehot7E#-?gg zN2La)dZs$3QmIh#x8%FYCz5|pegSz0)+et?o|Qa4`M2cl$@=8J$-Rc@>8;}@~85MvQ@cTc|-Xa@(;{YPE#&d&R1?!PEu-=fy%+k?vRIItkO$SVRYl4 zN;vVK#LI~<6L%!mC*Fh6j7Jo7RKzvnvdi?76y!grS3*)2WL*kR;JH?H7pV+tYaO}5uo7iWuw_kt^x>GD72|3-I?O3`-m7xESIJMzu)ee#R)qw+-g2zi!#f_#d6 zp4?O3N7m%d@?beBy)Jz%JtKWA{VWHh)i6@?kW?q#AzdR`(m~SxQnhrPR2%snG8eRy zWNGKf_mP((k43(W+!T2?a&KfxWM<^t$l}Q5k(H4Nkr9!K$e>7%$iPS<{9*Xj@K50_ z;lILb!|TIOg-;LP7G49ZJsud|FMLvXZg@zzP1p$U6z&uHEgS}tZSzxLXlfWtu(5O} z&_4&#j0O7TfW@r9t~p>BW}t5lIB7G`CkN8Z4)pebPE9MYOAhEpI?yWzOv?`RYyg@a z=#c}qP6OR@z=D0cd4MtaOH~dyHVahdK-x3{JLiDqut3)wFij`0Qx2px8tCEy>KIO7 z#~fg=S?3%`Gd-|F0!HVcLnuoJDsq1?EGy6{2b{DK=;#6P79w95g* zasq8V$?)AD65u6|Zi<&Izw>Ga88JwsB}677tYf zhoyDf3PiKbx}lo^Iai0xC9h85NF!d|*0n%5SEnox%GMb?r3ZpuJ)LHOfLCWa3lOhv z!^hKq<+g{9q5sU);nU~;W$Um8s7e0t>MX63-@UpGpM(F`t6P>q{^Qlt@ZIolx$P}R ze$Cc33qJDxC07TTKYR6b+9ChWwVM|C$*b$8PX6W9VFnoaF;jO83ZH}jkgLOI$KU7b zX-59()zh%=ce!>)Bj0*;3%-Z`CR^7n+a~|;>JEH1{k2!u;rsHfUY(}XWQ$j~;mh*P zUfpnPvMF0bB{Sk8*YB@ejRv8n*u+w>@n0ezvYTa3NHKsyA5^7BjMH4aO7|2wzm!P zmRGmn1MoL9bsKoIbvTOm#xD~4Wxze>beQ*OyugeL!S2P1}sSM zlvg+5#69WNEt`@jvUQl`>5#|0x(O%iu~?{MaF`A29z5!`y2fwx>JCVG#H%w$Cl6=q zS{gchgICv~!yoeMZihVR)otjg^|?B9&I4IZK;HW^t(L(ohur7YO-m#9=Gx&RyT_}; zz&E)&SBE~h%d3OmA?vbrc-OVaonGB^EOLiehYx1S?Oxr1g&uD6>S-YFtzKP+g(q&w z))_c(a&zWXSqzwPlh;hs2D#Cz!|YjdgSUwdsT#ay6P8A}E?cK*ID^+_H-WndxyEa@ z;pAMMtHS}V&DFsxT;oA(Akt@7<+Oo;zUfltMFZ1d)bp53b+Zf~$ug<`` zT%0k%gb``-w@fosLCi&7-E=6q(5vgvA8Wk20m~X(;MEaA(3fXS?%ym&Ze$1H(+}P`WHzb?=f(-DR$a znOfSZ^J+Rf+55BQI49+{w6znxs+l&HWU7V%H-{6vs;%3LGXf05vXA!~VX5pzUe#o5 zVQy2CF348(v}Voss=93+=T)h0%*)CG&pFp?G;M88ZZAulovkw4V6(g`xWt*!P{+V9 zgRx`1Hh2)2;Z;qC9phDX(>yvWA4XV@$~J-nX0=`wUeBj{RagXjnpd?=>qxH(*WA=> z)tx_mM6PP5r{t=-dAL`F(|=g5Rbz){^}^Tshh!Sz7H`voy{cuI2YFRyo0Bt}!mzq? zVD9e*J;1BlOrMmk>WtbGy{eTqCU{jnt&h(N&@DDD_jgE9kgGClOt#8cS{vYjV}JG2E-dP{6Qk z6^2deP_GJps5)0Q(nE3^7|vc^)iRtty{bv=Ju+1WFPLnwS9Q|bpo}#z6sGUq@OL}y zRhiA4T&u0w*-dpPZDkwbIyTIPYTEFs@Pw^OijwG11+; zDme22xvFmT_o@&w?3b;&p}t+cD#YmedR6dYeY`4!!g^=Tg%H**xyH2FD_eErMLoSL z1bKRRRiIFJuL`l0ZeA4vAXT|mlT~J_nSjI2UKJt*U30CvzLQslk@+qe6R6>&cl2s$ z+BsW;5$qkZ8@l7p6=esxY#eS@3@tI3(IG+vpBtw)Lv;4BE!4 z!l14;cn;OWlxKo4Pc$CUrJs z8mxygfJLdfsTrwhka6(9)VS1sFcPp=Dh-(j2c&wZx~00LI;PZA48{chm;5#PWAdBi zCdfqie)7%a%gN_pjNoC&NVqO}OY*wpmC1{f=R;<~QYiSHoO;pd4D6K^M8O}vnJ3Njw9Pu!ijEpbC)E#y{MlQ=tZdZIpYQeshJE@VKQ zmN*PX9mXa0OVlLxy7bb^hQYNf1jwm5BuOe^UV!^klbJzNm|URIs5^#gjDufjXrA4S zy&86lq1_DG9UwOMgx~NydzpJS?1hw3nu!;)MwJcTqhU80DRUyOjpk7J?e$xBbReJ7 z!GrVeoz9G9JNv+INbso4FJJ!*9+Y=)Q*w2u_k~|mdz-sA?2QlD%7n75!{HaM&eKmu z8g_$e5dM=w9apDy2>kNyHP~rThP#Pn&&f#mHD&5xJKx?^%buIb@Eel6)cswSj}NBR zus1qT&CZ^p!{C?KWYf&Mo0B~^Q{k6)x4}lkZum%z>`5s|2tD84)Xbig3Gf>d&k`cv zks1v4-uB$snR8PEzhGVx(tJ8KnmsrB!EZ<;+q?NlXlf06zu4}xD)JQzHnK_%K*OJ`X$9)3;rt=Yd}Z*-j0$ex)a z;g|O~2ls2(4J);?ESd z%}ihK1;2bJ$mrdm678fp**@L_e);w?cWKxQ_pP4o+cEG9<)vP)e7k8@wr?BtV34LM z?`|4jC1*bSdaBioyk;Mdf-7}Op1&h{qSn;MzkEa<_yHK<1YquJSBJrsU< zEjFw2?FN&yK&fVpgs6((F|`lm69LuRdf^wG23)2K37)+^s`EZaSe`pJPiz;3aM zsQcs37nEiCW$!%qXR{)&9y8k)jot*zPWg6&shqI1c3|k&5MT>bZ*}W?ZEXkTo?FI2 zIe1GOC(}#Va?DE0UPFo9+=wZ|nnQ_zm}nLaz^l zGVnS)+y%&M?%Ty*uhv2N=c|LD{Nt4+Q2zdk1Lbco!x52RUv^WP|MGV?$@#zk4o5_O zdI^q*{Oct+BJ$&lv!ML`#a*HN=L>Ei^Sc*zf%2Q@r$hOV=iw;G*UudR<(B8%B`2de%*Z{^c`nYVK?@_8&8Dt<&Ex9y!6QNP`>zx0p$x1 z&xi8)hczgl-7pu*r#HAq@zg`^Q9SvOdlXMR=pMym55l=1kFGxw%8l!*pnUiNH!8c~ z0e7+Xhwg`SLDt{D1C$TkcL0?4-`4@kd+(h9% zb3tyq%RP!)?}BqdZdq3Y;&aG zH;jk!>>JuZdDiuA-=1;3Yt`!OMnJjhx-gWdUF%wM>NPGaPPxYI&lOjn0A>BvE)$lo zb^CDXTDK4Du9^eo$yd3H)}MH#+ixda>7Mb{@RrQK%Sv%x>SNp-|S3x=XyhEWp@I04q2b>F64Vic@Ts36E zIc`6UKgZ?RxU=1U7<0DEu~BEaXJ@~&T#k)A)8*JcXF@^tKEt)7X0>~D3}5Y9GIW(| zN%bn%k|C$Nmh5%9Ysns`xt0t*&FzOlr@Ch(eX4s#oKxI>uupLJwqUR|BZUP`i^?BxH9j|fP#jEA z|CanCdAM>Hyai8)I?{b1J@|=wbn5HmmGDJEb^NXPDe^s$uY-H5PI6CWT;hUwP3-5G zEq9J2VWiMVO|}Oeu+b5DOcSQ(!r)yq%GbAks3&xrp!_CVwY={o71cx|jA{6XXaDG}QoogDfz{6b`4Y=nGG zsBL&cbd?+p_6&U&nk2s^?E!fdkCA?h92pEs1Hz|8P6?eJzBzb#XmM~OoXYI4O}H|U znP?4T0W>XmjFC6gaAhoav=Cf)-M4`wk=Jm8W-H`X zUxS_^uiyq|g~`jl1|vlNjvF+1e|^cIj*_Q*4Yov{#0{FIkSBZ%G({fA4a^La$9xTXh&+lLAO|hkh#ROQ zlSh0FG)^AI4Vsl88*l?NBIF_5K%FRg(AQu|WIb+Rkdx#A+(7jhx!>1euxLHrKr*(8zAW_xzpERCdeJQf$0%)J8qzMl-%ZPFeP#; zZeVth+=3e@i;!Eay@R)V94S++(0dvT#FktCr+;M zH5dtUHEv)mLe}C2YDLLaK0_UHCEkEpL2?CdpjwPv?rSh4av5&Wm_jba4NMD>OK<}< zWpXiYU^Gnrh8r|HPA>8_=m~NmZeTP**5C$eM9BrdLxGqn-hi1wavpAgWqHZDxPj^t zIR`grR3T^M2AU3$vwRJ@OwPm&494Eizzvi|$!gr7S#h!oH!veePR9+J6Cg$SHUOjU~uR+(4N`R`?p65UKYy&?s3BG6UHx_HbiyBFiv_aMV&CHsW;{Gd*}R z#+1n?`EWXXVhUV&PChf2;6H0LaRSCvi!SzIJ9Iq8njT+-F|{KLeVED%eAo%k_hBj> zhcRQpc^GR}Y_1QdqjP-b8?*7BsTG=qF@)h}Voc4*u|BNHGkn+zALGNCbTr0{29Ls6 zGh?+rOykpi=IPUXe@@FsVoc4@RE#w%dPEMxL*gE7!<9kzo(t0|G(!*cfQyL)9NenI z#5MW`w3@gT=CZB+wVPx)b;4ebCyop%uP}GPOW( z;K9(kBW?w4;Q{}J)^4~J>{Ya}(ApKZ!jzg{`uz#59dRopEcw0PyU^Mew^A!04}d59 zKoYlV>44P#DQJ!PT4BywKX}&+M0hI%s4eo&F8_emAZ~>TJn!xDBRs?X&(})HN4?#5 zm;c~au7(E0;zguIe%sS|7x%&}Ucd*cV#w^R-g4w)4->dRMO1&43Nl!_Mx!1zK;$t#A`x zvm;4GNk{HSVOw))h5JH#JKhw?S6}f0v|fi>!LXH`PKMUCxD}=&on3J&wBq|Jq(8Dx z>M-DTXhk*S6tpxYiKjMo=+ z_zW7+JqXg`q>oU4g+_E&aZ~4<(B9p08Sel$&CTNW?%V50yiwN-d!Lj$)UXIQ>gmxb z*Usa7jcm9w3mRwRMrI64EP%!txRF{z;zvVcEpF7DNy+8VIF&atID>YIm)Qs-ofzUXNH^Q`N zTMB}gBYWaTJuL;@uCs6>({~QLR}jUGn$tCO9W?Ha8+95FY=TCH8>!VL^hOd|N#^vs zmDXQt5483`YY(*cKx+@Q_CRY7wDv%25483`YY(*cKx+@Q_Q3y(J>b6ocPFcedXCyH zbzf>k@&lMFPn0#vE)cEX4`TCkDP`xLc+LLNMXN;>^Y)@J^VPbmT zKJ!No)b|}Taoo_|=1o6l(Rfz7@0jB!&6!6RFF9`9WaD7EWb#3iCybm}J7K}XMbm5N zEX-zdfPrg>Uu-io%y5==6ZJE$pS6JgDp5b>`e_U3uN3ubT)(#c_1Enjt?Y)+Kdb{! zJBaGJ=W7ASS63mb=Z>!h{9aurQ9bf|+rRT?b&OV2g4-ePTxtf3>0G+$!Bvx3vmD;S z+NslyshywaCNrx8(neu%KUdpC+AROpgtqor8!QdwYMVft<<6SW)(&g4v)abfW_hnB zw6(?BtgNv5_HZ3(Q+^CkPiV{0=WUK`goGajwz zn)6(m=S%k8POfBT3@h_o$;j>GNoGc|GS8Fjvz;8tOc^Wl9Lb37P*~_!?Z}ngdiCnqBlF76 z;G4YcLpda(v>K9A!ZRCAOzCb4%e%lryzXm0tF{FZ-fIQyViqgH5=3~f2C%zPtO!#O z;XU5N?s~Bz3_*nVhz`4Z$Dcjmthg*+#Je8sJ`hVh~X?YN?~ztzZjjfSTBXey9i=9i}g}i+)EI{S*(}B z;+}#S&SJe37WWXua2D&Ou(-P*hO<~Ng~ik(dMPaK>KDT}i&-fw-boO{SoW;4!(?yBtAc)~CW~H#WyJkVsG(J z)$aTM?&Nx+Zd6ZHZCI&qU20~kck;{RT39WwLU|L`yW3BZVa2*-i9zvS33ypBAZvb>c4$PYAaOy&O6N#sI>> zCxT0Zg95(=?hDKd^e0f=f-v5d@}jFGS{h&b9uQfd@Mj8 zdYm95cjiEbw_jly^8^{W^9C|lv3ATAWaQ2o$e_i_m?Ox@IUJCo6)B^7w#y#grw!g_ zGX)VjKeKV2mzb^KNvS?o5Rr2-8`oLIS}{Wqk@GMc*O|qN zI7Se`DOxN;tB)2$aE2C3(CVWE5uBjK^0T^D5P|qvWM2%Oj_K)sW7RNnXKF=`cnzKA zmysJJg58aDu`-SnWO)2^WjMvkm@3Hd2~QALLj)NfO z49-(lG*9;zWN@CcqIo(>kimJ%istElf(*`6Ry0rd6=ZOpvZ8r9Qjo!U%8KUcK7tI+ zQ&u!jM+h=FPg&7C-CK~sdCH3BX^me-ZYT$MN{i;{a6ty=DJ`0(!vq^OP3N)4c>4oTs#Cp6)5g;5?;8^K=hE2Ina)nx}&W8JwrI zSe{l7!jH)io%RN6fTzXMw0d_z1gB}SEUiupA~;KnC8_)VUrAOIb-7AX%Tpw|9A^L5 zD?!MD7lt+Yq}b`PXmoWnCa;!bkV7sOSsjUmSBGPv)uC8$buboK9f-m1&HpVu!Z!gO z-upP!S+l0dcpm`3so7k=F7rO=<`wm?rw<gUd^d9#R%)PJC;AK$K9p#KjL^>hE%yqU&D9{(g!Klgvln|oZO{)wV~ z?*E!M8@WjR6GZ*o|21!Za*_JSi~70$Yu=3IBK40G^>hE%ygAIp>8~5>`w+zcNVWYh zzq&D^dhY(3HP5-oqaQ7*=iaYbGoOo8zrU!SJHKYlg)UP4C{aE4eJ$|lSGS+2p1Zyl zc=D^;S5(hEUkg0=)r}O@bH~>L&wX|Ki0YBw+y2-6(h)wlC(LRsgMJ)}&G*`|x1c{4 z>45!=W_``!U3!J|*NFN(zvt>NhvO@xf4HdMb9}D;a(KQ%`iF`7J|Hl$_8D#2Pmi#NZO!-S$23hNt#s7*gjr}ina`gA;iSmEs6Qp0I z<0C&u7DDd#`Jo>}^Mc<8=LEhB%p%{AV~ctHUs`{X?@&!m=T8`Vv%Zqr_AX;?d#R{#GV1{S__k`sh zbINbPF`@z76PA0>DZc?niw1B{Sng4$dePEdfpYrR6u&ZA`cY!VNELc|$VOPI?$;^}n>JBK6^KZ*83&_gAndse3QkR z7UG))3_`e%@XZ!$T8M8NFbLrnx^KEz(?WdnfI$eqT7C1ynik@l2n<5dC5I>CG%dt8 z6BvZ>>&7=@tZ5;>slXtF-~D}4#+nx5n+t40LXw90=Ds;&O$+f&1_mMgHtd@;*0d1c zY+w+=8S9%h*0d1cbYKv|8S9%i*0d1cd|(j58S9%j*0d1cgkTWD8S9%k*0d1cj9?JL z8S9%l*0d1clwc6T8S9%m*0d1coL~^b8S9%n*0d1cq+k%j8S9%o)|8OydYBc=Kfdul zbK(bvY(1}ItFDJx!9E$Buz31d({{kDV4n=mS3G~LX&Epp*e8S26;E<(S_aGt_Q~LE z_4b217ldY-><^d~?32OCiYGZXEdyo+`($vg;z^E8%Ya$IJ{g><#roFjdYBdLlYy98 zBtL5EGqZwopOXsD75JebTW@6X4x^?%Gc%aW@x`Y~k&~GnjO2KH1rfgWTD-3@8@DGj zLm0{NIP1#6-=-FnlbI!q0SV3(CpN6h?A9?z(dD_o)TtWM&H^IUavqIo`gR zi=d#K%#2|q$K$Xo2Y;hlP)=snFp}f(*p-97QY|PaGjkZp@wn{D!3$m#l#`h~jO2KZ z*Oi06vMwkmGlQ7R$$hZ{a(oN76qJ*hMU3QdKKoW~DJTbK67yA+AjcZ#vv28^f^uLw zu}==?vv2K|f^uL^u}==?vv2X1f^uN}E}tCEXW!~A1?9jZUOqXT&%Whb3d(_%ynJ#v zpMC4M6qEzYdHLjUKKmAMDJTcl^zzB!eD!;>QCw>^8-F9<3gv?x*gd4ph6T z?bS%?*VNak4^uCv9!uSwx-NB5>h#nSSS{eN)RBAlRit9c-;>`ZKTW=#d@6Z= z@}}ga$upC6$+^j?$qC7tq@C=W?2=5v41*t)FO|2I=ah$(+mtI|je&Y)fl{j+sEkww zDFc*BrL7W5{G8a5ct7z{Vq;=m;+n*o#HoqJi5ZDQ68k6iO3*})M8||2|4;lI$WicW z{0Uf@;D-3c@zwE@;}vV@&ocs@+I&+#EJ4u`A~U(c~5zuTqU=agVImZSJK_BP>dLgtSbX(|((AlA-p}CWz_-1mL zI>ZNU@+C`2j&lf%`p%4*4gBHu(-ii+qcr zNxs3*ApgKnCtqX8$W{y~*@B@)HX{hBTsL9pkgqVb$(I;H4qgmR@;QbE`3ysye2O6> zpI}JI#~5nlBLr!he2Ae#KETi>?_+3@_b@ccyBHee9Sn8yHinG6g&`$xVyKZf5QN0J zuVd(t*D$ons~B436%0-CGKL2EJBB)W2}4F+#E_B~8ld~8L!L*_NR#IUNd4`Qg3 z^%yep0EU#@kD*5HLlD@0FNO}e2Sc0OjiE*E!q6n^Ff_=W80zE>3>mo{LrQMLP$Rb@ z2yDLvL&ye=p-pbW&>}ZtXp$Q+G|2TB>f|~M8MziiO0L0BBUd8`Y+s9^L$1QmCRbu; zkt;AX$>kUto77-#z;R2BX%N2bO}b<2?){jVvL;QF|rq7 zWG%$VT!4`=A0z!ZjMzMk=v<7nIS6U#*%&#qFtTT2WF3ox9zF=9tyL~9$6 zyI{<8gpBkwjGQAevZrEX9f6TK1ta5djP%1WVuxZx55Y(~7$H4<5Jt{qjO+t3vJSw= zoP?1v5hHy9Mr=GrbR0(7ScF)53`WjqjO_g}vPNNK?uU`FFGl)EjMzRH(GeJFdm}{C zH5fU=F|vnYWDUj0tj5R~f|0%#Mr==v=pGnpgAvlwgD`S-$H-1&WH}g_Hb#bpk#1td z42-DWfZWGvhLDk_7&#h7_CSoR-7qo-U}W^iNbiRc+Z7|)7bC3?LVCJ4M$Rr6*}X8b zdSYbuz{u#1k=_j>R)rC*#7Ns2A(rlnk+Tyx2>Qh>_L- zA)0QFk<$(%yDdgm8;nd9BO`^8p2UbL7|{eqS{xxQ9mB|pVr0u0SrSHO1S2DiksiW` z1(i@`EOU>ennttp|Cjr}|6i^Ui1?HE@;Hethj-)UQ6evw31t2wk>wE*ULGc)<*=&% z@*oK;4-m4vKq$Y7KQFEJO#q{s!N*mMa!i1Maj-3SUYtE%D7X3Se~74`kH;A0m;h5q z|6ZbgK8|CQV**Se{dEA=t&&NTHGS7d>oA+_Bpx+k{D8mGxLdQQy z)X&FV^>R!AETn&TQ9mEA)ypvfu#o<=sGpDX>gAXKSV+Gk>gVIbdO0Ql7SeBv`nmtp zTf+ZYqJHlG^p@~{rl_C$KfNXVpCRh!{!ecS|EG)kx&JH6M{$Mt#{~Vp_)!b^KPu|y z{;w>b#1%SzP1Mi*Us=A0E2Mv*sGs}4vV0I%NIyh3e0i61a~om5vV0F$NdEv)KlguS z`5dm0{{EtV?*Gd2HC!S6{Y3rT|CMFgr9%3574>ufSC((#3hD1F>gWEiET6&^(%(nW zpPM}j`!z2yYmwjI_ZIbY|5ug|;R+r9E~0+!|H|?mTp|6vME%_VmE|+ILi&4(`uX!; zS-yfRq`!x#pZmYEd<0iOfA;-7UZ<$hVQ1Ft>k3Xlv-`;O1a$;H$ti@&%dN)C+#Se_=O6^UWYE?-NG8FC3QE z`&V`Y1NbFY?j9zE0DhH~dzFj) z2KZNZ0|WSFR_{08`guV4W8gykN5%5Q)_`U(bcPgw5Jr~C%^ z!>?cf_k`she#&ovKmKYoe7y|s?d2YS%4Yyt|F5|B|5@R0!?Qx)hGqr74bBRDTf+K( zD|SRqpJ`UZ2e^<|tSpPoG~_1(;oFA#(@R%$77fUqY&UUUIi5aqxd`(cP`6?SwAh5( z1G&X!!1A&@{}<9rT!GPRYFzi^C)s71qkQ5E@JfLepIb2{t0~FB! z&jq>$l*0!WG$0`w;Q2t;fO0s&f(FDz13V|_8c+@|SkQo&Xn^MhT?5MD1`8Sx6%Fv* zpld)m{9r)?WYGZ654r}F!x0uVKoSk`9HDDKIXq!O10tdU-lL#vKsg=-3mOm>49JZI z!;WPc3od9tNHl76fZR(c7*LL9uYv~nr+k9}xnVdkpd8O$ z1q`UGhdJM9%~yjD!`*pJS%%^GCrA1GP+dLD`S$DQj<5y%U|l`T`S$DQey|1HU|l`T z`S$DQZmMeZ!jR|0>OZ?_`pI2_~(6t0XZKC29(7K z7Bav;@f!@tIYBU>EMBmX0sfiaU_j0bf&pc5gM|$6PyGf1a&8a|D2pE~WPpF}HyDuf zgJ3{e9AO~?y8B)}!GN421Ov+QC|JmVZlVF)6P9Hdt|26x*As#xsuB#y4a32XWf_Jm zXh5ZC0QZDt8HOuhfcyTRCbtt<_wRU>roK(xlsYoiHThn0O>%THraY}IQ+9`y`0h%~ zOzaZ>Jbp#|z<9gZ%dyq5nphyZ5mw1F1lqNOky+@cQul z@BsKy;JVP^q0Yg#g69VJ4MqZw2TlrD(t7g;e;3G)%{XxM;d)A)N#voXN0)Xt9=b6ol~mGAtijtdI_Z5Polk zwL^;)(q0h4?~kx>Xt6@t2|_qyVb#!Lg|rofaK^%tp~VVmBM9M)h4n&<6`~44IAdAy zj7!Pk@Vsjs|Z3kV`=e>O$b6bV`=e>jSE6JV`=e>jR`_HV`=e> zjS50IV`=e>l?5T3v9x%`N`es1SXw+|BZ3glSXw+|!-5dbSXwM&t5<~hqWJ>pj1}AK>e63y)5M*$^7E9Oa6-1E1=~^sXtLv8uGB{g{C2Mv4Qb7hMYq4CduCEhh zaIO|h)$00_1sR;G#WJ+bFHort!N>0{X%jtaj?IhE?USOK?rB8UOZ!G3qm+!_2L;jOAx{ts~6AM znSv0`SiN}09xDjpjMa;0>%FG-$}JUKZhc|>x2a(L28_DSxTRFprJACxbYx0Gj<2bEiuE0lAT<;r|z zx^jTBkFvYcU)fn{qXZNGPHaxRmv}MpNaD`K)rkudrzDO~9FsUWF)FcVLQ8Z{bVx|? z-{Sv>e-wWu{&@VJ`1SF>#aG2ojL(W69v>SY8aLv-;+^7h?6=t0u@7P|#U6>>5xXjO zF05#HT4%5R{B_aMS4uSOS(q7Kw2p+ zlxn2|q!E%M^_6y%5|A75yT~VzS0j%{?v7j=Sra)WvM6#?XYbX``EBHh3^WYo7r-JtdZwUS^czW=J;EdqG!To}Rg9Cy)2h|`^ z4^;P8hpB1E>)>DMKaglx4%vk9;6NNhBM`$-4@5C!0U1LYkTBE&5d`&gAdI0C2w`Xk zf*4wX0ET9OU}%uPFx1JP7&7ud3@P~oLyi27Agl)cUkn}c9}I0@k_2Y?k|Z$Gmn4B1 zz9b1u_a#YS%$FpAQD2e-rumX2z}n|HNdk3zNfM~-OOik>Uy=lB`jRA2!b@ii zl=+e*Q0hyPKs8^I1X%lgGwK}8@g+&nY+sTD&GIEl&`e*F1kLazNzim(k_3(Uk|byp zB}vGv^v{zd!1w%Vlq3P5gOVfwv{8}-fEG%U0MJB95&#+~NdiC}B}o9tP?7|I6eURj zsG%eY?nnM8NrL;yJxY?`egKb>BmlHfk_3PzN|FH3KuHn+>L^J9K!%be0Hi2M0zl1| zBmvltlO!<5mn4DNz9b32cAO*u*p8DV0NZhr1YkQ(k^pSSNfLnVI7tGq9VbZuw&NrT zz;>J@0oaa{BmmoSk_2EoPLcp@$4L@^?KnvSupK8!0Jh^K3BY!oBmvltlOzD!agqdJ zJ5G`SY{y9wfbBR*0?x$Bmtm-k|Y4sQIZ6J3?)ebNKujmfEr4Ypu246NfH1$C`kf98zo5qXrUwt z08Nx60ic1BBmmS=k_3PZB}o8CQIZ6JnlDKLupK8!0Jh^K3BY!oBmvltlOzD!agqdJ zJ5G`SY{y9wfbBR*0{ zlqX4Wm;dKU5*W~&CrJS0@FWR@0MdAp1PFhpd6EP`4o{K*$mU5B09iaq0w9woNdRQ(wEXz(m_%? zi2t7w*(3Z*cwP9IaJSG0p$p*cG#K0voFCjZ@I~OV!1zF%JV{Qhsqg0wU+@g7zO^6l z9J*}1@r=N`3UYGM8Cb!#q|C5={c;*YiZCrXU5Y(@1Ub1N4ajjyk<(j{lMB>R5kb&bK@<@|6c8ndiUJBKqDWAX3<@YOU(K1G>8iOix6ggw zai8z|9_A0Y)qASCrl-0(RsCAnGn_V}*z$?{#gfiS-hqIuHUxUP>7ABy4#}2ZDfz7-7qkFy$p32m>NwgegzLl9zNK5QvBo zmOKeVUebY3AR@+9ndNe6;~h!|wY!`sc`4hjeICIBSJIXuvWfARkggSE^cSPTAX zaR-G1c|wA-NZ@fqn1@UV3I`ep2`m_dh+}h^5EKqH5E9rg2odMzG9f4&Xdoo8UJxP< z&SgSSIM6^yV7nkhoSe&qpm3mpkic?5h&Vcz2|?jN10jLkf)H_bE)#;nfd)bXs|6wA z@LVPYg#!(Q1U3soM3{$62nq)p2nif72oYf(G9f4&$P*HrMS{h`{qjMal}rc<2O02xV;7?FE&_IZ=SQPvz6N18l2110zqTo-N5C{hfVp#`5gvFxZPni&i2O>g*#iHO( znGgsF!a{q@K}3cySQPsykpU4wM24_e6#6NV0TDq& zhA>wY`6-bB5kW+TuvQfKDUksYK}3cyRuuOskwGGY;8s&%t0?SKB7+13fec})DC$!p zgTw=Y3}LA#=u;wtgag?EDv!i`N@S2|Adn&K6oq_BWRPGWkRj|8MSMzRkXRs)A?y?d zd`e`HP#};Y>=ea&PAtRE|G(gWa{nJwx{AvBEStGt(xLnjhA{x5KpA}d7EyRC>6sIy4^k9Ydv=Ym2cP%62gDEtl5U&g)u@-rj#2P-V#OC=RlR{t5%`nf~) z>Q5sRR964#(fYYF_v%k05mZ+HY0>(*=kw}M!}ZDPKQ&rEcYR*{Y4|=_{ij6h=f2OY zKMm(6tN-L^{oMI^^{3(eWc8mEt)F{8ul_W0KxOrx7_FbXKd=5Y{GY7;6QcDC|CdSz zsI30uBlQRCb>K@S0aRB1anbsP|4SwRQ&#`6(fWn|OB;nPcKkUeTEFmrX@juE)_-)g ze&PSp#$b!B|EOsF!vCcW!4_Npk;jO}{fd6-L?zP;B*;lg1 zYcB!*|BLF;%HNbD+4Jm(%(I!pBFp&*xxBN0yd-Rjiyf0x1{u7E9Jk2n%#SJ{_7_qa zWuywsiz*;?7*ZK#qzcT9Dj@b4QWpJzs({#pO=YZ+DggIC5Cww41{hNrY@`an1rSsLvHhFM zXd_hsZh)W)2v3;Ga3fU!u7IEl2v3;Gcq3H+?tq{Q2v3;KwNDf8_buTrf1I8>3}iI6rk5YfC6Gpm<|}T zOaXcg1SlZpgz11WPprUL2d;sjr;oxDt^h|k)`43fX#K(wrg8oxnGcP1;1UR0zwm=; zoIgqGFBaCyd{@b2Y9lpPeZBgZ>Lb;kR&N0mz|U7Nte#yx2D1BisBT)_sJe1>N>!=6 zQF*5FXys>>?^mv`Tn@SY=TwfZ8~{jxn^la;DwU}fwftuJ+4678_d;g>*UMihf4qEd z`MC0d<(5iaFSc`K$i;L^uWduk@elx9d0Q*XdX4mjFWJdHQMkG5Run zFMS7n3%#Xpq_3gR)u-qMygkFSxGlp2NMxsB(qyNGWCPBn*(r#0TI^&@HrYv-Y_JnC zS!X9;(q+eE(qYG8(q_kE(qhM8(quI}npib^sV6wrs#$=ssg-MrfiAjeo#iY%aVA5h+VA5oZL$dB!`yxbwwQr8eCff{?4YnyJ z>ueKDx~z>!hb_dU%{IoQ#afs&Srd~6YakM=y^hHyb1~Uq4kqi&#-z(EOghZOq|FRW zT5KasnruT%8f*hZg0-)Y$tGJ5lMS{mChKe+OuB4sOgd~WOxkQsOj>LWOqy(UOd4!8 zM1r-iipeHh1(OZ7GA8S6B}}?(0VW+bACoqlhe?ag#iYsRVA5c-5ee2l3zJPYipd6> ziOD*ffk~H5$E3riVbW$(F=??Wm^9f4Cw-VWRzoCMdli#S2B!pS4>r~T%?tj+UJ68c zq{;q{NrSzJNNDyKFxg~(!(@Z~6_a)LJSJWC93~z1EGBLC3??o17fhP$X-pdI&xnL( z|5HF3El99szs_WGqstCE?x^E+b(HOHLVW5B{+HRB9{kmu7W~zi8vIqC68zwzsz#*mr>$>8LeXQS5puEY7~OM>iOU=Hy8ZnWP`tKE%?h)gTG8Act7|= zMw2~-$p-r)ChP1;OuFn3m~`0hF=?|WFln*JF=?{L0utI4oapZm31;;X*H+5MPw*?pLF*u9vv z+0QU(v7chnWcOgwU_U`5c+I;p*<^QNvcc};q}N}a1}kH-{sC~4x{?C^$!i<{_jm_2 z4uE^SjmZyyn^0?f0NfP#91kub8Mw(?9+?f+=S?>t>#T=Kmvu4euns0|c0ML8b{-~8 zwj7fN8$%=vR_9`}$-n|vv+{cG-Q0`0KjeOq`%&)3+*P?x=eoI5a)-f91Y71BxwUh%bH(hx zvVYG$nf+z<$JuXZzmok-wwFCMdw6!w>{i)kcAe~;Yzb~FcuD)C_ABj9?I!JN?Gml8 zou(b3?WJw4wX}7$xmsC$PkmW^N_|MZOZ^VqXmF|eVfA$NL+ak@HtNRedg?s2qWrh= zit;Dr*UH_>ca>|D%ajY0Gn6Bhec;xEh06NMe5K0XXRl7Q8zSEwm}qZ6e*jkh--NaQ zCt>A(BCPv&g;l=;YyO#f9zHUE(C3G_nOL)feK*mXePHe<;2+n~njQYtMQe5-9kgZ# z(nf1`AT6|J2hv1qb|4M3W`|vf7Fx3d*+gr0ARB1S4rCpz*@1M?njJ_7t=WOJ(V87d z3$59KG|8GB<}L?@uit>YW3pySkTtt)lQp|-ku|$*k~O<+kTp9@W$>Ea zYLYd()gWtjt4`MJmP^*`mP6L;mQB{|uo78}8WvU}i!f=RHG2aN*wC6C$R=8|1KB`p zb|C9$%?_lC*6ct!Xw43!jn?cyT4>D0w-KpJSx-teqltl5EVqBT2^4YXzlvX0j5 zK)Ptn4y1$D>_FOR%?_l6*6cuVRKF*6d*ItD=7eYhMMEO|oVOYsYJLuy(v=2W!V`cCdE5W(RA> zYj&`9yk-Y$pN;D^$eJCj9k1EJ+VPqltR1h}!P@bf9jqO%*}>ZJnjNeiui3%cgEhN% zeE?W{ux1~SM!078NU-(_(iyBhSTGF!wGl2D24p=%dL58%i1a!joe=4DK-wYF>wvUE zq}KsyhDfgi(g=}WJrb;4MOuNiE0}DANUwt**F&V&0qKTFuLIHvkzNO+9U{FBNGn8o z9grqLdUcJ=yRf0r=NlSeS9ntbyeQt30K3AQ5@1(&Qv&P?Z%Tk&JrleUEWE+4@TLUV z)zkQ2O|mHgUNqd4@b*<&WYG?Gg%|B$S9sA5c7+%1U{`q24t9kX?O<1rBQ?OT!bQ8k zpA#D9)yxDwXFwVVZP^9SfY6qKY$CK} zAR7p68OS<9TL#iaXv;u42yGci8=)-&X(6;_AWej}45We3mR;}+2yGe2CPG^VvVqW+ zfvh96WguOIwhW|$(3XL;5!y147D8JF(j;ihFyaLJhJ%fU7C~DEYY+Af2mjh2Xv+ZI zdrxRruu0((v}J(q4Sddk*CuGo0Noq-oWZ}E1Z^4iJAUNH|1Znb&a3`+b*%F5$~onC z%V(9|E}a3V(x>Tf>ZcT5FPxNrHGe|x<=k!DI)>c^6;#?v2L(v0E-d`1s)e*77dC@_nFyh_Oi}#W4)ANKyb_`94rU#Mq>g<0w@C zU-|AS5F|MQV=76GQU&mp?*j!ykWDICj#35S%J(qlcA$WWvPm}s1%$^MA>8>+6%f&e z>1LoLDFBzgQw2n{VY(S8NeaNN?^FR1ZJ2HbN|FL_?K@RKL>s1?fs&*E-1|-y5YdL| zW}qY~02jYg1%xL|Hv=U}0l4{{Dj+;zx)~@*3c%IxM1lWU21=3w`0jW34NTv{G^lhl zP?8kDcfSu55S}pI43s1V@ZIkN1%xL|Hv=U}0etuSKmp+i)6GChQUKrmK2Sh-!gMoG zk`%yqzYi1;o-o}Elq3c4-R}bhgeSDpK)sO82k_nR0|kU9w9XNKzPD*Gf?6c z@Yes$%vqV*?X}ZuX7%q7`F}`te&w;sB@orGm+vW`SKb&R_P<>^s##qw%h@hW&)fwSF758_pbai-y4#>1Rj0Yo(X>(cISR8F|I zy#WAxCL?Fph@8M3fgAyJK7>BIMC1fs1>^{%^C9Hy9FY?^2aqG6&WDh*Q$$YC$3c$3 zIv+yLjuAOQR|Po&?0g70J4ECJJr3juwDTe4Y#)&mbR3W);LeATvt2|^FcSbd0=9n$ zIon3$2zv%B-T=0L2sztOIpGQguCthwJ#QV6BkUOvc_*RIRuMVEo&lA25^}bT$PxAo z$h?z~vos<{*fXH>PD0L-h#XA!kuUj<9Dy z>z#z0%_DMzJ)>(?hOp<&sGM+~3D;sw%APlk$PxC8u2mUApG_iiggv8cRfdq$j>r-A zjILD~Le9d79AVGsT9qN>Y#fmz>=|9FGK8E~M2@g$bgjw|a+(o2!k*E!DnrO=MC1s2 zM%StgA*UXZBkUPnt0I-Nr0a_7G2qv5#Kbpn@U<#Kh;brfggH;bJ1^vLyaoZynd^(YgR8fMkO1@- zc+j;fG9iO|w~&y)f+3Yn0>bz4YC zV7nkhTv8zuGPr9C2?;D0gotZZWI_fPZ6P6n-GUHtt%^*@;Fc{UB(Pc#BCb`D2^n0m zg@gn)3qr)TDl#F1`?Zje!102R;VpJ>xt0(TuJXvWDl$z5H)|mw!eY_2Dl#E(trqTp z1j`O@`%TyZ;ZiLkL|81kRz;=>T&YEb2#ZD6s!S}zKmR{^{Q3Wx#kT?f?`{3e!rO&2 z^Ka+R%>6TWdiJgCsoERb$?9wBi4g66JbQ^9n|U#Fbj-Q`xT59Vy~){2!>|IohLuek zP|Mhh#-73M6;&YU6QDpUyUu8K9jm~eQ3Znj1PY|G>nu}XkEjAcUjzkG*>#pFuzN%S zvKmNZ+gql^jSAV27vz!V{*m>nu}X`=|oK6Q+ZE zBvW9!r~<+hrh|Jlu>xb=Z4vHIbRGGhcZ6fzZKCxHN4Ns~;8=I-X#K(ut^hYU*4-*v zzi@*qzzdFbw~W>=yx4ck0?MkAy$L}n?)4}JRmGgQ*nW^7T7eZ zK;QyFfmD2;Oo2_J3Isk76iCGh$`oiv6$qRlD3FR5lqs+aAA8ddzjlo7*Kiu*~>*s?FFs8BZAgOl@O!VSY-9@Ho4y7L1cMDIkjh{qQvhG}HBcZJY(Rlj1{;|I_^z*k0>NMd3Z&r% zrM&=O_BBu-7;Hd+H2k1c0esunKmjr7PUW^csRH=AuYm$$)}2l+n9K(7eP06w#J)p1 zxnME{@P%KV0^vyt#5=7JPl#{)8Ymz?6jeZY!gO-MWC|P@QGi5Rrm+DbQ{aH80>TrflM5zO zVE?EB!V{*G3no)wzo-Jj6Q+|3CR1SFr~<+hrjrXMQ(&K{0>TrflM6Pn0^a(+mHA|* zc5Cg#+S=7W0q+0K)k5XY%9$0T{P*(p<-^J=m;O-td};U6Nb$kqM~aK}_w-x!Q}hiX z{{Nc7L4`T_M*)>@yL>KpSMJ4 zw-5Y|F|?2@6%tHhf!}ToEkuh5;qKQH(i~cd8WAEa)*jwsm52~wvG(v5%OXOA#oEJL zY$hT^Sgbv?#dgn&2oV-*4{fpCZ?VTkgb0f@hqu^cBSM75n!{V{F%cocV$I<# z_UMQZVX@}$7JF1gh_G05c#AzUB1BlMIjqGl>VC)zu@B;V0n?YKW`M;GYp{#DM?_=@ zgB{jh7j+Mh$Po5Athp}g9u|=y%yn36UDQ1^B12f~u*SNmdq_lvFxFvhby0U&M24`{ zVNG>W_uz;OVXDJg>Z0yJ5gEu*hn(*%?H=eEsz_TVCs}y=+5h{wD{g!Kx=+I*hAvVd zZTSEyha5;vM$Y~bIow`B1Y}{L#h*-{{UUO>&3bYskx8_)yKh7ew_8unBvOf%cK3~xTH4(!B8S_sCub7bL`%DSM&xii_T)?=ooH!ykBA&@ z%buJ`qQyRDu8eP9w;C@Xev9-QU&nM-vb4N`%PuXS*ifO`Fo&% zm}I1~<1AGG-~8<^Msmz&C#n6cDqURCb)D3gDZ+2MUO(Q7SvmQU&nM-vb52 zyegF)XQ=}C=I?<5!V{*l<1AGG-~2sLKzPDbcATXO;G4e(3J6b_N*FsTCg=I?<5!V{*F2PRbjZvIACoL~dO6Q+^}CRG5g{-z2DPnb#` zm{b9{`FsTB|qY4O5m`Wa)RDrRm0>Trfk_RSHV61y? zG&C1&TK(r8;aK;aX#K(wrV*DaegCtg^$S0kMp&w}{3pbcXRI0T8Go$qjFPKJ9 zs-*tJ{C^t%|62YeK=?Ze*8eAIuW2X!kMjR}6a>Bnw?Kr@$EgfB2z;Rxy9Yo);6VZ2 z)WDd^fFo6ag200U!DbXFkV*isNcMS3Iw}Ypg3-u>A!Jq>%|B zRe*xPg95?687PoODuh%43IY!b@Bs%HQyFk13XJst1Rmvrw8B#oU`!?ccVZhH>j4Hl ztv}eYzT?I;1{~@80|Y#+KiKKM%z!l&E$9jPNPU{yga0Ph4u^xcG)B2GIOku()`Tom$6#Kmy z=7PaY#Z3c)Ml$1B-lN#>5M(H3+^OV(Nfn^j@1TH~a;K6DCRKo9zemC>Q?LQ40u=il z6cCf{RC2+j3Q+8KP(aMOQ^^IBDnPN{K>@M%kV-C?Q~`?p4ho39hg5RGqzX{%cThm= zJ*1KgCRKo9zk>o|?;(|3FsT9*`yCVzdk?APf=Lya6WRPAVYDm456q4#AUt6zxnR;3 zm=#q(>^`KD3no=yG^&8`gsJ3$Nfhwo|E~$~|6i(py?S_cmCBQq%PV_Srj&nC{%CoN z(tnqJP&&1=QSpW1wZ(&rbM@cqpVqgBTjlRAj1`*sH}W^+kIJu}dn)&Z+#b1+?9a0o zzzqQZ*1oTutZe`{1%6dMP@SzjqFk(Ot7O@o>?~#hX5cj>Kwv^*Ne`gIR|#Tn2A8yk zkh>^^BS7(u54kaoB|Sh6Ct`w$A7nm4*u?WUd~Oh=!@=5<#Q<3u3}H89;&~A;Mw_9_+-L03NtNVQm>nc(4--0W@$T zL|81rgPm9iV1W}M!eR*??8HI<37iNK77N#W4BN1P15Shpi-kKrh7|%R;6#Y9Sh(P0 zSRsG`PJ{@Hh1)%b6#@w0M2N6hxY}b_A%Oplg#@ubzz_F&3@e17f4AuEfkO)+=-(hj z_*l5nV^~cH`Zov>77N#T3@e17e}fQVv2d5iutEs>HwY0H3m16|D}Le&5f%%VcML0ppnt{JhLu>}1a zga{uC*LDo62|@n`A;Mze&W>S)5cF>lA}kgz>=;%ELH`CJ!eZgJj$wrm^luO%EEcZn z7*+^D{{|t#V&R^SVTH`2PKg}H3@v1CM2N6hxS?ZMP3A;|2#bY@{cu7S^=5l>YB8V( z2_V2ftidko&5Fnn20N_1F6xa&WC(j5)?63$W=3QPa~;-N7xiXDWC&{=)>s$yrblE5 zV;$C37xkt^WC&Xw)>Ieurbc8S=Q^}~Oo_-qmO7-2#k~=1sFCe!yxR8vPDoL&Q6a&C z3wWGiQ6%d{sic8PTL6IHsRF_irjiCGRRECRsRF_i zrjiCGRREyhi2`IRXhrw|iv14T1Hu!gk_IMi0gC+&3Wx<#DrsO+1t|7AC?GsxDrsO+ z1t|7AC?GsxDrsO+1t|7AC?GsxDrsO+1t|7AC?GsxDrsO+1t|7AC?GsxDrsO+1t|7A zC?GsxDrsO+1zJ%@Bs^g%X<$+Xnh^!a7UPQWgpH^I!V{*F1}1HRdQ<`72~$Y}lPD00 z|9`JCR(`KM2KoPE#rKM1fc1B7;a`Qb^Y5f^|6h-Qz{4?qIO@Q`c`A{==nOx09Zo>t zJq3cc1_e?H{go*|K;S(Ef>8$)NG0}HrT_tf_Y??59Z(>Z;9r>n1O(nwAQ*K(fmC)P zWC{=vcu#>~)By!j3ICNTKtSL<1%gor6i6lhSEc{~f%g;$MjcQfl?(`(0t5u!Qy>_1 zK!G#@fN}IptREmC@Ss3A>OkmCDk%`M79b$-o&v$B0}8AVPe?%EJq3g(OlQ=QwEzKu z_Y@GGFr8d5nF0g^-cvw$!gO-MWC{=vcuxW03De01lPN$z;5`L|Crl?7Or`($5O_}k;R(~p1)Erbu^xcHi(C*;AUrU=;VUb^5svi$ z1D@6|9N`M^gJV5_fT#5fKez%WgkwEGfT#5fH@E`kgJV4afT#5fFSr7xgJV6wf2Z{e zC%6J;gJV5_f2Z{eAGiW0gJV5Ff2Z{e7q|lEf@3|nlAYF%JYX8j?}`1-@*cgBJrcc~ zh61wPaC##8gjxquRQt$F|m|KRzc1^!=Zfu+3xk~ar=g=tX& z$g3>lWNB{z<}Kue-UUE9TX>o3|DBX_va~nA^G0$4CjoL0$g5nR0i-vQBc?kTkLS_K!dc*4hK-*LQWXM;oTiK894*AZzM<9 zGbCP2LLUJ94#AkApN6>?pbr8qmbVXpeiJ#uo+15W68Zq}H<2Uk88R>?AqT*}i5y|i zkc2S_IRF4o| z;8;$05Dz<%ld@+F3J!KiPBtc^4+aJI|>=|-3CLsrd zf_rj=Jwv+2B;;UFaF9bbwkIQJciJz={`6$z>=uzD>>2VlCh=aoM&t;4hSZHo$k`<# zN7yrDZ%jhY&Jj7no*{u_5^{Em$PxAoIUJLavtvY#uxE2p_Pj$xj<9FQi*Ros+(3fs;*p}QdKH%RGz6kTKQS! z`<3efKj34Pb1KJH4yf!{*{otzR;f&_sO2}y&z65%zPEg9`RnB`ls{fRw|rdr!17Mz z&C6za)$+8mR(h-STKInK2aJg9bY=Av~y`u$ttZ@nqJBl|51Ft_*n7& z;%&wMDqc~%sJOg%0-zG?Qe0fLi>nuB6m$AN^}p(m7v3qnQ22e}!NMJd8wy`8e5%kX zoLo4xuzO)?pF-_5_6|3m&4`5)zP%wLuNbiSKEMgNulQ~h@RCjC17O8pZ3 zLj64bH2oNTnZB34gT95{(l^rA(C6w?^uqs33)&BK{h$RtXn_w};DZ+Uzn}%G>Pm_~ z`+i&273{aW{bUm$tL?7CL8Rpn5?tsG3m1BFzK*oF=?}BFln*BVA5nyW71%M zMx@bVf5K#wJ%z~z`y(dn>`6?z><^f9*zYlEvnMcVvBxoKvd03_@J=h)?-1#<*l#h} zWRGI9!5+b6ojr_6m;DBl4*NAGZT1i*E%qx+n(UXDG}tc?3ElTWOg7oiG1*`bV6x8c z$E3^d!=%IR#iY%ChDnS46q6>q2a^W-2_m8U-i^s7y9<*Ib|)t5?8lgN*^e;kusbkm zvmav8Vz*<`WVd0`U_U@4So^J*Y_jiTvcYb_WSxBvlP+ExwblGPy>9ET%X|qc)X|YQ%X|m5?(qNxPBv|{WFxg}mW3s_MiOD*<2$L@R1STE! zaZK9mW0pIrL}3XpJ+6`=sR_RUj3Y=oy1Y$j^~a_yU^fY?G$2Mb1~ z0J-+fQ$TFKr-KC}Q-ECi<|!by?bE@6ktsl~ee)C$XIH5JkK=Qh*j_-cee)C$hhFJm z!N^*GT>IuJAWqBD!Ge(~K(2lB6cER3>0rS~6zGv_-#i7x`CK|!Ffs+mwQryR2_#wp zp0G!*ee)C$o-iFO7+DLzwQm9g!c#za!c>6AW!eKzPD* zuwY~gz|C(|0pSVL!Ge(~09U_J1%xL|2Mb1~z!^~mgeOb~3r42E=}`rQCrk$mMy9}N zQ3Zr2Oa}`_rogEY1xN_mf8G;%=l|WpA^#tq|LYIHIsP}{6#tWOhJPZQ;O`3O_YR!i z&xD%`-Y)#D@I>L~g&!8aRrpfj;==iblb{hkcs^)>4_e@Z7WkkAK4^gtS|Fts2o4-z zjRPl0_{<(oknowk(Kz+YUM6wrz66ZCm7s+cwD&w{4IkZa6{0N8DDE9C2F> za>Q-b$q~2Zk|S=*AxGR09e|IxElV76!zZ&$am4MBhB)E|5>Al9BW{muiX(21Y=|Rn zkF1L$ZjW@u5w}M=;)vTLZE?iyk(M~(_DEA4aeJg8j<|t@^V0B$+asIeh}$C@;)vTL z>*9#pBVBRC?U9Z+;`T^e9C3T3C62f~(j-URVD0#b8>}54af7wvBW|#Ee8dgbj*qy( z+VK%LSUW!A25ZMh++gkah#RaOA8~`V<0Edcc6`JQ){c+3!P@Z=H&{D9;s$HSN8DiT z_=p><9UpOnwc{ghuy%aJ4c3m2xWU@-5jR*nKH>&z$4A^??f8frtQ{Y5gSF!$Zm@QI z#0}Oij<`JlK6Jzlq=AmO;f944I^qVhiH^8|Y@j1?^kOn&9_O5S6N8CU*(GfS04Rpi}WE~xG1L>k8ZXg|W#0{j4j<|ue&=EI~ zCOP5;YsW|2VD0#b8>}54af7wvBW|#Ee8dgbj*qy(+VK%LSUW!A25ZMh++gkah#Rc^ zf?$|1ny}5tK8(pG>tnLPdYG)UE+$>p!KA~^$E3~9!=%NQW71?}m^9eAhy-gt2a`>9 zHYOYFEKJtfnV59h8JKj~>6o7Yn(S5f19mQ3%JP}}K^13dC9@J6W$+Yg6&ubFOt5*wDnMAC>5Ra$<@j?2v%Mtb z$|J6N9=Hs5dw4d_UhX|#*dmU5i+JvwS7%Gc?Jf?vnW)=rC|=$59pO>qDqXk;*!01R zB9+aSS7&_(cqY==-8`;N!}MEe7kJdgF)!+D7P9F=Rm1U{X;XNX#BjNrhFtgsP1Sor zE3vZnCLtSoL8F=V-q2kP&t`A?v&^_k+wEBHmgZI3+!~(El_LgET;sME#&Wy<7u^<~ ziMZX3LvH-Sb^nVV2#>ZXrk$J?u=!sUvo!}_bU%1vx!TRJGTcm-|4p`mXChVGjW}-8 z@W0L8@N8c34L{Bv+wlEp;Mu(B8${fjIu>w`|2B=mw^<605^IEJT%CsLf1B;#nXr=@AvbPa+kfAE;fZY~ zXQPk}chb85QQGjtsk(5(@C8xhn)Sg8?gP(6cF^7+tP(LBE#HcEg=eC+b=MEM(R-SX z|78w=C-yzt>xFE%(uQwEyTdb4rR{ZNxh=nO_k?G{7hWfp+x6Rc3wS2-P4?Qr?Hd#N zLZ&-t>&@Va`#{cGVU>uou2|RIJ?wTPNZd==L+nwNv9bDWs;@FJ3-?oV!%w0W} z&GZ}fPI~Uf8nYquFHK>yf ztHurLkJ(8^YqYi4I=LT|tkMiy4eLZ+)bK~P1Se`ZO2~v2_1#+H2XR;|m+x)1f=7v2 zCc*qPlUb6vFH^g}_VL>8wFT9`R&T1FQ{AMRt2|WsOl9}VX!*~B_5X&Yf0phnbxYfq zMvIRZzgRr1xFO`(-w7G=yX*4{PZh3*?D}>go4+^zsr;__8M!~^uF4&fTQB=&_Ll5< z*{!oh?P2XQ?I3M!^)>ao>bdHsYF@cd`Lwc+vMPI#-ONs7_00RA$p7$hI>L;R+cf#E z!8-877{BRsgc;)xR4;-nGpwXJS-azzvA;)wEYaefQ(}o`yAyB7O?^O4ChSDndc$vQl7)wMgBkPUqilkbPfzKDBX$c>fdI~7TN&TKCa*-)iM!~c$w5zTbR zLT*&4;rOfj4uU6cG%}sDfNi|V z`93%K4bKcKLvLu9zQsv*t=ZoOssqqb~opnYsuCwgC#ueW5| zmhLejH`dtl?I>y1XSRI(NH$%GHc~r=aDm4v%lWPe)v3q0Aks%u%a`_g+TJXeq zYUe|-T!z2Hkhs1%BIH6UT6`Lo_$Awihis@_V9q-jXr=9PSjdekHB8CJunz?`-+WNJ zSpIT-19;+^#XTgpu9p7|5|_a4vN$%AuV@qP#XUHV&8YhwBXPWQ4hq@OY{}%?JPGqz z(>*ZcLd|GO_e>55+3>e(4Y|L!e;l{P*X)vcyJ_zS-2Nv-FKYQy@T6Ixvu{`>`tF9~ z8ymz27;zuIy-&!6U$g0dcT^4+7v^SvEIF4VRr-&;wvqV^6U8-7vSx1vSxOt6|a zo$W(z^ks~OZ}@A&6W3kb?Lsc3s?qSxAn~l#**0Xu?ZP*@l8#iIZGg)+15}yi?{g)3 zNq6h8F2rTD{4bcOVtcEQ4Yj7px5uQ8V9SsjRci9hro`EqxBlNEb62KzU+q)1y=$|p zf398)xPETsy~>X&7XWtO%<@y^>&hpVo27S3x0TKh8&&*cxwublgH?(4aea|?4?_QC9>a3jD1?K$l_?F7w$)&FzHTyFlc@f=3o@2yF@)vy`m1$2ztjI#KIcM3f5 zpC~q>!)*Ekqg>lYSSxO%x4<0!JUH6^ge7Ux;B>rbj&Y-- z?T?O$C#X(GgmIwS4A<{2iHnGi7r!yiaayvY#daq)g2UniqimAW?!XrL_^lSh^6gzZ zDtAOE2mX|Nk~4wfdBGh1+u}xQ`Ag5FPvUk&7ze5j&XPQrVkdr+c4z&tI^q=kDU19q z*9+NEwPwS&_vHCwXWftwRcrDfE$RMgXPuB8RcrCMyTm1d+gUq~&$N7dPaK06cGd#E z@v8#=G*Iq2*9>b#FKgJo-OJjz-B}}!-QwqT^0rz%WXEmA7Y2!AquW_6j?XZC`%gU4 zZ+BJ=`Ow>%JRVavPP99##IYMq-~MH5MW-X8JMhrz`2E0zC(duXo!ICOi?44daG)Z* z16618?GzK9xat;mV&gh2|EyN-nM7a*YGI2XY0C_v-4OvEh}|^&P9QT!w-X!bVe(ME z#4*b0h)@sIREFjEf}~ADx8sF+jQ9RL$}w@8?sP^&K2)9Q`isou!>ibc4~wtG68GiZ zju-MVPEDiXn{A?+Zbt-tpx$ZNzP%v z57erbe~RzG6KC#DXC!PKG^SZRelvM75g+)`@(opb1kj0%{4jY8X5u@xJ6`CA|0z+^ z8m4ckd%-hNNSoU!hwSK!nmnK~aZ%uQO0j&lZ?K6&soN>W@mYM^DA8j5_5YVMwYzE; z*0!yc0O9|N>S5J2D$iAJtejD4R#^G&a<9C7d3xy&rE5yZl{PBATD+-vc5#bhS${;o zOy5&q0H^=g6;3U<`G4eZ&7Ys&IzJ`%o7^S2{c`iN&t$L79+BNhdt19pyHMLzo1^|- zy+%D;T~m2pxn4O+vDm-Z4_TjW&t_)+nECR!<$t>y|M46C8cFJolBK%c*l%vhx|7?D{pL15&rh6>w7cS)V-vMTyuAxocGTo__0VKce>C|q zYtmaf-9j9j#VtFDt=-LsY)Dzt@cWZ&L~nOC~?)LMTw}CXX_a?NK>h5lVsFt<6vTlV&sRu85>SwOV{1QW_}G6%iH0 zgZX|padz!=L@Wi;*5bRu)8UC59o&wHr9jnL{CGLB6F40&iemgK)DJO8^m|T6L{T8) zH|oA)Nj&1|i0}#gay$-VeR$$tuH6yg6X;VIrr%R#=aB7=7e+D8{7l229!O&oIwGC| zH!TmTNnC`sJ0g+-Yu)m@tbF7Z5f!Lf!}hyu;t<&Gh*%0#t;IuBq!9xh5mSNKjfUS> zW$aEz#8#j$Y`XpwE-8@A?ZgIE*gVW3aR%phVxuZ79(k15NDDh&SjD)tsO`rnNWE$2 zggAq;c(j~+>2Z84J3qshnX}P3Zouxva^WWC;csyr$n6{()`)G%^}Fi?`-aDae8?Cq z9_u3SIY)==xLV6M;lx#QyK_{?hpXkmM6$_ayK`h5yV3MJo@|TP?R+R?$6B`}s|lxb zM97D}i^ao=n()MZ8>b_JEQl-hJ6y6W710%l&E(;4Nn2d)ju%}q&KKG|5=1%_cSM{8 z`7-{BNwzPsu;ayBjPG`SY=`V%!|8~y3-rns4^m8;I=LMYc7eX9$s-{Wheo#(A9%sT z6O)tsIwJA{)n_<2*5=Su#fUa-ZuFKU>6CzH<2IwI@>e^DL+BQpr6 zBjPWR(HpLBz3agfXY}ok2)sbG8cn~C$?VAO#0FqkJmf0TpE(^7fq|Qtrv@hVwRR^V z^uiz1!3uC9Hi)~%gfJEXQtZS&ejwFR|G_1}OC@I>|g>aB41-)E~I zuAW*ww7P3`QPlvzmsQ~IKUR6I@@GH{xT|tgRnDs%4>$j9Us+gLw=%m@DF3tk zT=~)RJ>~C~uP%RDS*P47pHyB}-le<*Q=-HcFS#%vvaHErsdS^8`-C`zs}y7y)pZx>_ypgv&Urj&2E!z zX4lHj%x1MWwZCY;VgFDsP!H37qJ3BUs&&%vX0L1=a#}H`uE=A*{AFjlDvC(VD`(O$%yl2`#8H zixyPa^spfO!+WXbeD$leV4iw1Etsn|X~7(IWm+&>`7~#Ck6Ed>SstnW4?M3DR363W2B%yUp33ZezMq zp}&~M?x6)!*$uQ{3i}8x7-3t}f*NyaL6y~LK_&AhEhuMxMGH!q2WUYta~WyBhQ6HA z`Rys4+m6!NI;FMsD6OtSzDFZZ>aWjH-k}Avl?Q3TEag+QU{pDb7R*#^S};SIM+>I2 zf6#(y>^rnzD*FO0n8Hq?1vN%3r(VtcoBpDbd6pKGGk4K~Qsy>VP|SRkG*?|efzpM8 zDV<+J>D(5S&Td3$Z4FAR^C+!Q>v!j>)TZ1y$}>b|ceZj1EtsX8LkmU~Iy$&BmHG4+ zGn5=Hn9lx03#PIU(}F2%87&xLbl7rhY$p9hHS>2`P{~kd?3Od%rN1a;zD3%{)eon1 zZXurh%-iPGvQF@HBp>T~8Q@6v)f3hlAZY~>pIi&@Iyv|y$}`;;?-y-I&EozY(J zOk-c7znIESqXkpgPPAZztxXGRjDAC>nt77`qLTSJEhuHKBCX>T$0)7uOX6}C9>}r%&r%_rdk+0#XL_d3;x+*Q0tI!^8&ryCze=%G6BrTYw(1x=|l?MIAO!gWr zn8BW)1=HF0Xu&jgAuX874xt58*e0}Kgw3G^wG8!vb~W=$`in~D4q8yo(4o*SWiBNR zY8OwVbYTZd=L||`7f@Q8Lus`}X{A6kvgWI6(1Lj?{f5?Drm@p$!Bn<0EttaArv)R7PDQL*<^}qTO6J?Npq#m!7L+nQ(mq!4 z7)lqGQaazHbZ%WrXJ=Ddn@(x9Oli1r7SFCMh3IF_SH+Coo2Z-fl$Yr*<|@?2%sC33 z?V7WdBPh!(g-+$oQKdwGF_ZnC7R+GOuba~uoywcj7@ZHBQyEncuKGnBu^?^)K0nvp>mxH~ZD>CE0HFr0l`jowA!|H^|P*mb7=ZzbXG#E6RtJ zQ`sN2&D8I!yC{c4{Qgq*%i628Kh++p{kV2R?aJCGYUk9BuI*FXy4I+zS({PQs&6Qt z)vndb>M81i>N5~ua8LE->NV9%tG(*U)n(P4tD99ftj@2NEB~szPbuSu4Gv-J;D``wGjsrDsZyl2^?7j{Y~mJTZISlXnteray0SbV4W*W&Mr zKP!H(c#U$Ma=*4reO%of5DTXjFDrhycv|uB;_eXTU=>#>j_B{}FY8b055kQC-_S4D zKdPUhAEED|OjTCXHdMdH?#QjKZ>iVyHQ{c7T;Z+4Glho%5AmkLRdBPw^1^Y2{R`U_ zHZH7Fm{rI_jKs6rz1m|rMR_s*+x*Y+x8%Q;zbxO+pOQZ$ze|4e{6_f&`AY8JxfgR! z;yPA-GiiSMDRZGjbow?WH)%i^>z~Wf^R1Cal{3jlVTy3{e-=nyc>Ncdnny)cZ;LK8&(t_FQ7P!D@E>M3&t5qA6R%T)!Vj5Eje`~fv$EnsVv)cmE;%JT=im7;LK4!iVKX^ zJoO{Ez%=KoXOjYZj(SRNFZ6Qtd0LJ9qCQJKffmeGk0S-fT=j5LV9ikvBn9p)bzfRA zTiqKM7_I5b#q{VQ)YY?U+rq_vbX&(nfp<_21zXD-IQ2U69Kr*!@hO6Lxsbarb> zYi&xa8{pn(w8+MV>CV>{VTDY4fkwNQGhbVe{K8tG%_jx+d~Fmq2R94$WB|?JRICF) zDx6MfWii&tY|t9(Gu4@-g8B^QDOxaHd6*VVQ}&|;Qx&qiV%Dc9#E+Tv5k?liX1&I4 zr827QE3}}(y0oCoPNoGVwht{RGL;q-GPK{-^BL-P>bcDKNpsb;BPp#OOKD|e(wy}T zNsaEPx_}nURNkirGnD&j!E}X8bWC@eLWc!+s$x)@;>96KBSU?(t7oXgb@Q3eQ9W{*Z;XS- zoK0s`Et3kJnF?75n9dA^x@%{;@(s!|O)+V~6lFFo7-3|kYC1Lc8TyMVJBt=n*g>?Q z%(kZmB}S&=a5kTzoy5^I_fVEXCQ@xK^99mePWB*5t9w&gS)Vkgvnr_o*4MB^$Qd(J)G^b6SwKZFf6wFdrA~jm0%G0!9rb4G1 z)(nMA1WaqXvYfI^RTwRp!d{{UBkZ%ZpvI1;1y!~iEvT@Cw4lt^pamsHdx=%d+)IC< zXRfCOh0KMd{jB^s^ar_2m;NBTC#AKWD6MWuX=P>dL9AIszByYZt6kHarE2sSqslL6 z!Ayk?Oy&&b6#9$l%8|5SnlhIbOl2?9f+_5Gv|xmd(SjP=lNMCjB3e*pqqLyJ=(N); zW^SjyC}hqj&1L3Kp>*yfN^4tDTHTb=%3RXi<_uDwF-v)c7K|$2rv)<=+69dn3iX@D zbY)k{GEK?Sf~kylbYlv;oBm>i9Zd@=Y+YJVW_emr%Dh7h^voB@yBmcwD4jow(m4ne z%VZX39u)Ea4^}U#?pa+B#Q&Gyf%yME#Q#@HkCr}LI6?imob7IW;D&HW7=I2_<;gAY@TB*iz#!vBK`wu4a3o(_QVtix4V7VSeVc8!&MUVV%+X_aeOvU zx=ak_X?M2``N(Syg@$Ujy8<@>v0FR=Toxqeb_IL_dRwF62Vf^h*L1gv)7s<-wbDS@ zt_Pnm&LS0!#t1TRa6>7UAZ01*ihj+UD8iiJ_A1 zZY-LDVfsEp*2ZpEpedkg4cm7eiJiCI6)+0uZEcPxE(^eRy8=xCRcrF3_Qc-cc4J`_ zOrDjVm~7#8TVXdq^%<_;`x29g-LAk1%3ij(`fh|Eio6i-Sq$zV!VT&>nC$APB#`v!QyG`iP6N}SRe(XC5!Iu!tn;z z7B?!-H(nQ>xJGSvjgSqQs>O5sWiM%WHv)Fw1)_jg+s~0sjCbvB7+Wb%$d={BI^7LI zc3de>mQSkH?XDlPVLPz=-kcb(+U~9w@}VZOc^0p1lxTO?jbk?re+D3nTXnhuMFG96 z$y4o`EQo^P_Z{ZcG^f<4@A z1TeXZg-COz*MBl`4{ccl&C;poV_ylBs7QdZLW`FIjKv6*KaKtis)io>6S8lAFILQCMzx=WCuH|W^-@_^TF{Sm3|0w>b_z{S_pQS&pe+BUW)+@X* z!2jDc|9<|?d?&vRe1gLhz+|7s?Fsk<)K(VH7fzbI!M72(35d_E`{O~< zd>l+c04E?*FnQv7!t@`iiw8{LDS?UAxm^L6fYh{kdVZ4Ux7uBSn1D>d;t8~p0mpK? z9&my`Z$j0Y9FriqRl5Q?0rA;9OE@Vf8tN0!35d_)S*%HO5XL zd!}Ug2li9rYPUI3tGxD8;@B;IJ%h{y+uf7n*iDX{D%rFH%Qz`yN6yTs`@V1iJh7u_ z_r#D5e<_|rn`rp$?g=3u`ce?4FqmFSHr+tm<3o1rRXCPF!parw>bQ^%X=`$z;Y2%b zcLibs($?k>1TvTHbOmq%($?Y^nj{W~-B`c`)9}|diDSRh6@UroQ`$TqdLww^KcxUl zK#gPZl-(rfVA@?c_==g>Sl*yrPk1?4^9g(e)TAa)(Uk-02%H40EQcpf+!=Sf0w@9T z*&OgUai_)Y3Zw+YXPCZcNnB&LyRi@nhCP%^G2N~QkuYvtFtF_?U3 zM_?tOZ)$NI@1#)%s*MFnFq(e9lpmk%6ZcI`8GdrR8;g=)ab#`D=mg)!LrEAv^qYfj zn)pfG?w+yQazKg14%6<&q9j-xn_V(Zg*M(jtQLJ*YskxHobGNRJ2phiUp6Iyh_<`C zhHSW2jx{YAf?-SFJO95KpZ{M5=l`RX$10asmQ~h;So@pHr(mofQ+ZvvT{&0TRLQf4*yU^)TQ~CtC^6*I?uqYAm>O zXlOGH-@heI@136byok-=`#TB8EwCyOpB433TXG%>T8i(As_9Y`cW!fY>1X z(wn5XNwW;6w{skuHSxZpwXo-fK8)MBb^OyA>Flu=ANgSTs3a1n1g|P0AMmR-{Y}QC z7HaoI-~+NAo9|M~CY|k`h<`xr4nKg9^fypigh3#s4aeW)NHV^5FE;$a8E&^47T_ZM z0V!?sJ#yJQyFC#Ffo#~~+rWw2Ty9TseiQ7YN&yM3WOy5@|EjOUE zTOl9rH+A1vB=;MbGI7_0-qIQl#uiM^h+{WezORs+egnG~4dFXRRJ+X)hUNVxHY~zu z_`X8kZ$wxGuAPJE%I94oJOWK{Z62>O6`q)t7JMiX9f8;!elV7B+c7j%d{hKKVU-Vg zA}Ru#BggYhis=C}jtz^jIgD-6ng!I24~yUk!?MjKw^&|p%(VM=!o&NP9O4D)(PBRY;c6hk$)3UUYwo? zjzCRiSiXNtp8v-NMc5oMIC1XO?s-8G#d*dF=!Q3Zs95X^bRIS7DP-Vkz5!T#4QqRrQUa9@D_AAKYzp?h^+9zvc zwPS1h!F>R&+S;|zTCVyQWbQv)y}No-^{VQ{)#cUWs{2>Bt8QFfr#h>eue@FPYvp&9 zdxOmV$|;pYD!WuRuWVFVP^pyvU4F6rMEU;mt#FUvXUiWhpISZ?;t3X&jq*z6k#eT= zO6jT6FH3inzFGQW>0_m{N=KIVDs5SEORJZrm6YOZfcp0KTh9Y-%j6HUq_#%=L`QRJX?6A@RP!K3STW; zQs@>=DjZzcsjz8bgTlN*DgSQ%Z~4da_d*8#wfRf)y;!8b2XeQ;O@^O`%=^mXTU87dt{en?d+=ADcOwnn)YYyA??T74ce93 zC$w|4qqTjst+j@>rZz*<)Hl?p)nBW3syC`%QZG`^RgY2kSGQ9)R@YHysd?oe%CpKN z%1@N=FNJgIJ%+*MCisj7F z8kA+WMlwq*XO=dN{$f=9BQ2Pzl8jKxnW27+{$jfNAzCm^AsI%NGgTq!^OiG3d7iS2 zC|{)oHRS+WP*q5do#m7%gpB2s7|D`><55PE(;zaPEv7;XjAU#={1GErLva6FhNQs3 zZIhV?sSG9a5uA5qImeNIhrH^?X~BH$SF~WBb|WpAtr8$1%N|wlrN5Y|lB`9`o}r#b ze=%L9#$ZoV9;3gQs*pTg%N|iKqQ9sqThW3F`wcB9v)5@siT#BZ6xlJfppYR+$Z#_Q zBRN!-ons_1(Xz9dZ&Ddr<~y`N%@Aw~%T~@MAH_bD{2o%-NmiBxco?_QU(C};Dye17 z)i$HQn4_&i3udcN(t=s)yR=|b{WdL_sa{44W~c|#g6Zlev|ySNQGJR+KZ-S?oJm<~ z%0{%Hs;o>4%Ipucpu`AT1)Mvu{pc@rX48T~h9uYljDO}W`imT^(t>Q}%d|ktTtf@g z%uP6x&9ame$%nP5R^|eYnuIX=B`A5u|T_=7R=KQ zqXly{+86*Q^D6ztY?ZnVW0v}J`ioJuM+;`EN7I5CD(y?gbd{QqF-`d#Wtpm6OADqb zU#A5l3hm@ZP07$-RM;J~pv-Qf1tk`#MQ0=Q7lq6tv>>1P9WBUZUZw@v3?1wZE%Rae z3pMk3@*NFjfASp-VqIoyfp!5FV7BIK7t?}y+D^1!u0|TeY|T-Lw=!F^)SD^Gs7iCn zTQgPCb~aPYY(MWQaAJGgO`aV!HAkEtsbCX~9&5zI$_uGDd$fqL6-J zHfxNg**B|6KTx(M-?`Z$zi%wi4x|P1wIgW3JdK(-;4J@@{$h?w9Ff_Wt#;`zW~uZW zHAYo3uQVGo)paS$42AX^0A7w%J54!(vP@MX?=nT%hyG%Oy-N$K>}Rx~!e|d~l-Wn= zFG`F|?;&S^O{2evqIiu%Bx~d|H&T{d=5F%Y{P+pv+NW## z)>f_lrTR@+-Mf{4RDN9fNM)N!vHbJ$rRDw0Ym{Cp-2%A$o0amg9{)UG@2{=Ds^6-2 z0A0USc(8C$Vb8*X{8Ra>@<-*Z+`GBkbG_V>TsiwFpx_^o-B9}{tcK6mw$X~}&(%v{ zy}P>dcjabfOxcvZ&+cUxv%T5u%oCuVX1+sYPO5*0E+ZVe)sF7@*Xr6d_((X@>+dZ;) z;)Coh+x=;A><*8Dl5Lqe{iz{4+UK))c6~y~i{mc|FAK!o4I|FKY{p6!{5wL+}w5gB5?w#X>$yQq%#Mn zFA^pYo5^7XlD>u8kIk2Gcm!tRAyT_9@+HtWG&yjJY`5R-$L38~h9Ae1*uC04kvD;= zwRvW_?1;ndiS!BdO)Q=rk{qhs6L}N3S91WA)!~Wj)lN^OO`vaL^HBMuPucE?tO@** zJm6D)WP5h#f)KmOaZh9p+U=bcvg0=501Sy^uhTmd_{N1ExQ5re>d79gcScwp($;Z& zhbcSDX!lN!V>jx)RlyHl#Ex^1PRIWv5O~@05@o)oOF# zl7tJ<;hg#8kPUwsj#ZKPW!&CLaeRjDJHDj2WvDMUX~J-P&o@CR*9o!pwS3Q)6od{3 z)3MnScHPIuNa`+bFFsp>Log(EYPTn{B~WuZ9E53t<`iiXh|lEsFB4e0$df=uIsYjS*vL}$?M ziKGcst<7OsWM9bXiQEZfh873$NSfBPdm?87)oPf&%ae^NZg1bv_|eN6w(t28BY~XW zJ|Q3eG)>?0HQvS@#ArW1|NjPW{eL0c_cy!x zboCq6W2$!L&B_le{mKrNndPV8-2Q}ev-D2swolbCskfH_@Q!kq z(p9!qO6(DK1v`wbk$EX|!??wNq@dl8H6V-U+sh2d?F$1!jpXpKlqCErtKE;aAd|-m zN)kh0krHb`4v$Mo?A&f&SP)XzrT5YoWA{!VeV8}=-3u4>5F_#$Bg`6k2l zw+NC~%_30)eV6-#qkMbbB%UiWMv>5GMfH?ChO-;UnFNBBLGZz z&xV@GMj&!C(91d;HXzZNxqXq8f%pKx-<#F75*xSOkIl+(c$B`Zr?`EQm4T|YIT%pl zf}q_O=@_VST@H023vG4!A}s?ouEn#x6Q?-+*mMkwBOl2u!s%}k8Wb8ZES|MJ4W9S` zqaCuLcePu(_h~G-D_j`I?r_`-xhvc_jvemy@a(W9TX(nntvGgv<2=Zk%3h<|g`eAR#PZp`3r$=PyZw3`pT*%U5;r>AeK+Jo-^k&x6tdCP>5HrkY>ynFA*r)F zeUX%b*o?aGNfQ^0eUX!a8@1tkrU|AHX534fJXTuf(c1mkqzsdz+sH=6c7LO|+AR+3 zAl+l@i=+(n(hi5@nPAs7HXFm?kO{JQ<91(UV<5vYd78e={+)hoR))>dTvmoB&SkiL zk(Gg7*5;TsN%`wA%ZpFP;5a3T8}CkEq+=jMw0Porl0S9&YlWW_J4Bw1k%TPb^hFj1 zVuOef&mp=kc;XvHBw^r2;rK=q%vVGf2I6x##K#27nb`CTqdD9@soVF`FZ|sgTrJ0= zNZzmSi^L0Lafao)KAFFF`y&4WRcrD5_{7-+HIR}Ke^tl{kQf& z?ZVo++N|o6)z4Q?ttOS%D&MSZs_a#nUjB9YbLErEt<5U-)UiP#83(LX`R=W4}^U2y>z6_vU_~DN=icJ)-N+eEmXIq^Tp! zUuimOX8l5AB=(e{t4%YX^(z%8Veb#7WtH^{#gST%nS0ChYE1j*sPv97Ah7-#-9MZ2 zNzEoKXSVTN(m#u{ON*K?K)cqi_s>+ZCF~tm=UmJBMO22=*_35RFda2XzX;BdI-9ao z4!X`p{Y7j>nEx8Jlzp=^W`J7dPSP*pF(eI+8N5`#BlL?v3~7K-JSX3{V$*D7{URVk zVy6tdYt~>9mm#r7&EhO=7Ox1;ki;8z3bdH^jM^`vGbFYsot=-F=-9G;5uG7*7GM&i zd%WqHfcA?Z4QYm=cCiU+XNdNT=nRQ3jtX0-y#~{M5tbqGr3|mE_c8P<<1!NF;y2An z)-U2RBq_x#gM&#*S%1LSsl-lLCI-{lmi8;dG!llGpFmj3Fb%@s)%pjkei5c2uT0 zNYbG!GlFT~B%4HphBV5U<-pdD@>sqcrQQ;j`&#QAq??ox8c|$Wj|to{B0@uIFCvAp zn?R}}L__9l7G^`cLdYf&n<1Nm-5iolhjTV*jB!*r0JKRDHoc9rNu7;ZP8XBHmBW|%9<=Uv?HTr` z?0fB}oN3O>?yl}x?!(@h-b4N${a^b(2qpzP1-}ZuAKVdMA6^y?gr|qcg!_j(TK7Bm zcuTz-f{zE?;Edqy!3Nv2Pp}WRce7j0Tb#3{*PpEa(47iif**NzS-*4t?A{%G zK3o(w>i5=ff-e+|)X%A(P(Qf7TfJ4^qCUOu*8W=iZSBXk`S6HZ!)>cuRcBYj%0DX4!Z#4VRk@{db>-s9dEqaeVW(-I<6Z84 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 G1^y3QS6ie2 literal 0 HcmV?d00001 diff --git a/backend/config/database.js b/backend/config/database.js index 4d99fba..515fdc5 100644 --- a/backend/config/database.js +++ b/backend/config/database.js @@ -1,36 +1,64 @@ -const mysql = require('mysql2/promise'); -require('dotenv').config(); +const sqlite3 = require('sqlite3').verbose(); +const path = require('path'); +const fs = require('fs'); -const pool = mysql.createPool({ - host: process.env.DB_HOST || 'localhost', - user: process.env.DB_USER || 'root', - password: process.env.DB_PASSWORD || '123456', - database: process.env.DB_NAME || 'score_management', - waitForConnections: true, - connectionLimit: 10, - queueLimit: 0 -}); +const dbPath = path.resolve(__dirname, '../database.sqlite'); +const db = new sqlite3.Database(dbPath); -// 封装基本查询方法 -const query = async (sql, params) => { - try { - const [rows] = await pool.execute(sql, params); - return rows; - } catch (error) { - console.error('Database query error:', error); - throw error; - } +// Promisify query method +const query = (sql, params = []) => { + return new Promise((resolve, reject) => { + // Handle SELECT vs INSERT/UPDATE/DELETE + const trimmedSql = sql.trim().toUpperCase(); + if (trimmedSql.startsWith('SELECT') || trimmedSql.startsWith('PRAGMA')) { + db.all(sql, params, (err, rows) => { + if (err) { + console.error('Database query error:', err); + reject(err); + } else { + resolve(rows); + } + }); + } else { + db.run(sql, params, function(err) { + if (err) { + console.error('Database execution error:', err); + reject(err); + } else { + // Normalize result to look like MySQL result + // this.lastID, this.changes + resolve({ + insertId: this.lastID, + affectedRows: this.changes, + warningStatus: 0 + }); + } + }); + } + }); +}; + +// Mock Pool object for compatibility +const pool = { + query: query, + execute: (sql, params) => query(sql, params).then(res => [res]), // Wrap in array for mysql2 compatibility + getConnection: () => Promise.resolve({ + release: () => {}, + query: query, + execute: (sql, params) => query(sql, params).then(res => [res]), + beginTransaction: () => query('BEGIN TRANSACTION'), + commit: () => query('COMMIT'), + rollback: () => query('ROLLBACK') + }) }; -// 测试连接 const testConnection = async () => { try { - const connection = await pool.getConnection(); - console.log('数据库连接成功'); - connection.release(); + await query('SELECT 1'); + console.log('SQLite 数据库连接成功'); return true; } catch (error) { - console.error('数据库连接失败:', error.message); + console.error('SQLite 数据库连接失败:', error.message); return false; } }; @@ -39,4 +67,4 @@ module.exports = { pool, query, testConnection -}; \ No newline at end of file +}; diff --git a/backend/controllers/adminController.js b/backend/controllers/adminController.js index b9af3fc..2ec0c18 100644 --- a/backend/controllers/adminController.js +++ b/backend/controllers/adminController.js @@ -2,28 +2,25 @@ const AdminService = require('../services/adminService'); const { success, error } = require('../utils/response'); class AdminController { + static async getStats(req, res) { + try { + const stats = await AdminService.getStats(); + success(res, stats, '获取统计信息成功'); + } catch (err) { + console.error('Get Stats Error:', err); + error(res, '服务器错误'); + } + } + static async getUsers(req, res) { try { const result = await AdminService.getUsers(req.query); - success(res, result.data, '获取成功'); - // 注意:原来的响应结构是 { success, data, pagination } - // 现在的 success 工具函数结构是 { success, message, data } - // 我们可以稍微调整 success 调用,或者让前端适应 - // 为了兼容性,这里手动返回 - /* res.json({ success: true, + message: '获取成功', data: result.data, pagination: result.pagination }); - */ - // 或者修改 response.js 支持 extra 字段,这里简单处理: - res.json({ - success: true, - data: result.data, - pagination: result.pagination - }); - } catch (err) { console.error('Get Users Error:', err); error(res, '服务器错误'); @@ -38,7 +35,10 @@ class AdminController { return error(res, '请填写所有必填字段', 400); } - await AdminService.createUser(req.body); + await AdminService.createUser(req.body, { + user_id: req.session.user.id, + ip: req.ip + }); success(res, null, '创建用户成功'); } catch (err) { if (err.message === '用户ID已存在') { @@ -48,6 +48,287 @@ class AdminController { error(res, '服务器错误'); } } + + static async updateUser(req, res) { + try { + const { id } = req.params; + const updateData = req.body; + + await AdminService.updateUser(id, updateData, { + user_id: req.session.user.id, + ip: req.ip + }); + success(res, null, '更新用户成功'); + } catch (err) { + console.error('Update User Error:', err); + error(res, '服务器错误'); + } + } + + static async deleteUser(req, res) { + try { + const { id } = req.params; + await AdminService.deleteUser(id, { + user_id: req.session.user.id, + ip: req.ip + }); + success(res, null, '删除用户成功'); + } catch (err) { + console.error('Delete User Error:', err); + error(res, '服务器错误'); + } + } + + // Student Management + static async getStudents(req, res) { + try { + const result = await AdminService.getStudents(req.query); + res.json({ + success: true, + message: '获取学生列表成功', + data: result.data, + pagination: result.pagination + }); + } catch (err) { + console.error(err); + error(res, '服务器错误'); + } + } + + static async createStudent(req, res) { + try { + if (!req.body.id || !req.body.name) return error(res, 'ID和姓名必填', 400); + await AdminService.createStudent(req.body, { + user_id: req.session.user.id, + ip: req.ip + }); + success(res, null, '创建学生成功'); + } catch (err) { + console.error(err); + error(res, err.message || '创建失败', 400); + } + } + + static async updateStudent(req, res) { + try { + await AdminService.updateStudent(req.params.id, req.body, { + user_id: req.session.user.id, + ip: req.ip + }); + success(res, null, '更新学生成功'); + } catch (err) { + console.error(err); + error(res, '更新失败'); + } + } + + static async deleteStudent(req, res) { + try { + await AdminService.deleteStudent(req.params.id, { + user_id: req.session.user.id, + ip: req.ip + }); + success(res, null, '删除学生成功'); + } catch (err) { + console.error(err); + error(res, '删除失败'); + } + } + + // Teacher Management + static async getTeachers(req, res) { + try { + const result = await AdminService.getTeachers(req.query); + res.json({ + success: true, + message: '获取教师列表成功', + data: result.data, + pagination: result.pagination + }); + } catch (err) { + console.error(err); + error(res, '服务器错误'); + } + } + + static async createTeacher(req, res) { + try { + if (!req.body.id || !req.body.name) return error(res, '工号和姓名必填', 400); + await AdminService.createTeacher(req.body, { + user_id: req.session.user.id, + ip: req.ip + }); + success(res, null, '创建教师成功'); + } catch (err) { + console.error(err); + error(res, err.message || '创建失败', 400); + } + } + + static async updateTeacher(req, res) { + try { + await AdminService.updateTeacher(req.params.id, req.body, { + user_id: req.session.user.id, + ip: req.ip + }); + success(res, null, '更新教师成功'); + } catch (err) { + console.error(err); + error(res, '更新失败'); + } + } + + static async deleteTeacher(req, res) { + try { + await AdminService.deleteTeacher(req.params.id, { + user_id: req.session.user.id, + ip: req.ip + }); + success(res, null, '删除教师成功'); + } catch (err) { + console.error(err); + error(res, '删除失败'); + } + } + + // Grade Statistics + static async getGradeStats(req, res) { + try { + const stats = await AdminService.getGradeStats(); + success(res, stats, '获取成绩统计成功'); + } catch (err) { + console.error(err); + error(res, '服务器错误'); + } + } + + // System Settings + static async getSettings(req, res) { + try { + const settings = await AdminService.getSettings(); + success(res, settings); + } catch (err) { + console.error(err); + error(res, '服务器错误'); + } + } + + static async saveSettings(req, res) { + try { + await AdminService.saveSettings(req.body, { + user_id: req.session.user.id, + ip: req.ip + }); + success(res, null, '保存设置成功'); + } catch (err) { + console.error(err); + error(res, '保存失败'); + } + } + + // Data Maintenance + static async backupDatabase(req, res) { + try { + const result = await AdminService.backupDatabase({ + user_id: req.session.user.id, + ip: req.ip + }); + success(res, result, '数据库备份成功'); + } catch (err) { + console.error(err); + error(res, '备份失败'); + } + } + + static async clearCache(req, res) { + try { + await AdminService.clearCache({ + user_id: req.session.user.id, + ip: req.ip + }); + success(res, null, '缓存已清理'); + } catch (err) { + console.error(err); + error(res, '清理失败'); + } + } + + static async resetStudentPasswords(req, res) { + try { + await AdminService.resetStudentPasswords({ + user_id: req.session.user.id, + ip: req.ip + }); + success(res, null, '所有学生密码已重置为 123456'); + } catch (err) { + console.error(err); + error(res, '重置失败'); + } + } + + // Operation Logs + static async getOperationLogs(req, res) { + try { + const logs = await AdminService.getLogs(req.query); + success(res, logs); + } catch (err) { + console.error(err); + error(res, '获取日志失败'); + } + } + + // Data Export + static async exportStudents(req, res) { + try { + const data = await AdminService.exportStudents(); + const csv = jsonToCsv(data, ['id', 'name', 'class', 'major', 'grade', 'contact_info']); + res.setHeader('Content-Type', 'text/csv; charset=utf-8'); + res.setHeader('Content-Disposition', 'attachment; filename=students.csv'); + res.send(csv); + } catch (err) { + console.error(err); + error(res, '导出失败'); + } + } + + static async exportTeachers(req, res) { + try { + const data = await AdminService.exportTeachers(); + const csv = jsonToCsv(data, ['id', 'name', 'department', 'title', 'contact_info', 'created_at']); + res.setHeader('Content-Type', 'text/csv; charset=utf-8'); + res.setHeader('Content-Disposition', 'attachment; filename=teachers.csv'); + res.send(csv); + } catch (err) { + console.error(err); + error(res, '导出失败'); + } + } + + static async exportGrades(req, res) { + try { + const data = await AdminService.exportGrades(); + const csv = jsonToCsv(data, ['student_id', 'student_name', 'course_code', 'course_name', 'total_score', 'grade_point', 'grade_level', 'teacher_name']); + res.setHeader('Content-Type', 'text/csv; charset=utf-8'); + res.setHeader('Content-Disposition', 'attachment; filename=grades.csv'); + res.send(csv); + } catch (err) { + console.error(err); + error(res, '导出失败'); + } + } +} + +// Helper function +function jsonToCsv(data, fields) { + if (!data || data.length === 0) return ''; + const header = fields.join(',') + '\n'; + const rows = data.map(row => { + return fields.map(field => { + const val = row[field] === null || row[field] === undefined ? '' : row[field]; + return `"${String(val).replace(/"/g, '""')}"`; + }).join(','); + }).join('\n'); + return '\ufeff' + header + rows; // Add BOM for Excel compatibility } module.exports = AdminController; \ No newline at end of file diff --git a/backend/controllers/authController.js b/backend/controllers/authController.js index 4589135..9a9a8c9 100644 --- a/backend/controllers/authController.js +++ b/backend/controllers/authController.js @@ -85,6 +85,26 @@ class AuthController { error(res, '服务器错误'); } } + + static async updateProfile(req, res) { + try { + const userId = req.session.user.id; + const updateData = req.body; + + const updatedUser = await AuthService.updateProfile(userId, updateData); + + // 更新 Session 中的用户信息 + req.session.user = { + ...req.session.user, + ...updatedUser + }; + + success(res, { user: req.session.user }, '资料更新成功'); + } catch (err) { + console.error('Update Profile Error:', err); + error(res, '服务器错误'); + } + } } module.exports = AuthController; \ No newline at end of file diff --git a/backend/controllers/teacherController.js b/backend/controllers/teacherController.js index f1fc902..711b1d3 100644 --- a/backend/controllers/teacherController.js +++ b/backend/controllers/teacherController.js @@ -18,6 +18,68 @@ class TeacherController { } } + static async getClasses(req, res) { + try { + const classes = await TeacherService.getClasses(); + success(res, { classes }); + } catch (err) { + console.error('Get Classes Error:', err); + error(res, '服务器错误'); + } + } + + static async getMyClasses(req, res) { + try { + const teacherId = req.session.user.id; + const classes = await TeacherService.getTeacherClasses(teacherId); + success(res, { classes }); + } catch (err) { + console.error('Get My Classes Error:', err); + error(res, '服务器错误'); + } + } + + static async createCourse(req, res) { + try { + const teacherId = req.session.user.id; + const courseId = await TeacherService.createCourse(teacherId, req.body); + success(res, { courseId }, '课程创建成功'); + } catch (err) { + console.error('Create Course Error:', err); + error(res, '服务器错误'); + } + } + + static async updateCourse(req, res) { + try { + const teacherId = req.session.user.id; + const courseId = req.params.id; + await TeacherService.updateCourse(teacherId, courseId, req.body); + success(res, null, '课程更新成功'); + } catch (err) { + if (err.message === '无权修改该课程或课程不存在') { + return error(res, err.message, 403); + } + console.error('Update Course Error:', err); + error(res, '服务器错误'); + } + } + + static async getGrades(req, res) { + try { + const teacherId = req.session.user.id; + const filters = { + courseId: req.query.courseId, + studentName: req.query.studentName + }; + const grades = await TeacherService.getGrades(teacherId, filters); + success(res, { grades }); + } catch (err) { + console.error('Get Grades Error:', err); + error(res, '服务器错误'); + } + } + static async addScore(req, res) { try { const teacherId = req.session.user.id; diff --git a/backend/database.sqlite b/backend/database.sqlite new file mode 100644 index 0000000000000000000000000000000000000000..8b85f52cdec4373a81043ded650eff15afa7d4c9 GIT binary patch literal 1343488 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

5W0oA}}`@op@uxc#ss~d?8deQ9RIML3NPdnCBj_ zt%hLY*qH%5g#i&5Vg6tr@ zG3Fs*oN>tq6Izx7d|VU~Y>Jvji~Cs)1WtsCwibsIg5|*9nCWwhv4yOF`t@W7p3cSM z??sRGlO0%(^8^GYhXhbrkR2qu6W&AuNrMLj4gROz!joPY4haHB%W(_!zO|<>?FKle z5~^45)7XvBdy7_&XG}08?Ld3q+|!fVi(Q1E(c%a}y>II2%l*WOvWDn()ceMso?I`I zTC>GFYH=b$Ul1NteLBut%tq*Ii4UM?klAW6d-2|a_#llF%vJ&)^La+_9%Ma)GBEoJ z{_%QUGrqX^5WENJePOK8e!KE zN}AvqihAM${{*?Q#&Dva_<*?t!-n9|vT34XL44pXCKHrU(gd$i#BJaV+np;il;a5) zOuH>cRZt$JQN?ac4gi}gK9~^92f1RNfx!fCfj=Rr4}96OSLF$-&E70Qd5{_mzaPP( zZ5sL$g89JfMNh%;K=5cj&TEMeINlO0TJ`~Sv>-l6?FOup1!+?oPtD z0gG4g9;Aw4lIv{ zhqGVJ9+zE{nMCaVyEA*FpG<#0{h{>U>GTZ$zm)t%@?zxwUz+%R;!5QI+avy1{9Ex; z;!fo`Gu3({s#0=f7=X|a8mTQG+sagf_LkAc~W${w4!icpbgXn zU8DYF*c&f-MeyV=9)6k?F&a+3qNgV}n18w3a%BU3ZO8*ap0L_>Y6vGq$b($JGjqjd zNy|1GOp4G4slx!B1c62eLpZ68dBBn;%(iSYcyST)z#C56A~}n#HvA;kN`EdGn8bv= zwlhR9sSSOAK4Guh~VEg12 zu@F+jam7v`Y<%NzQX32b*r)x*R&h9~4Tiu0m9`DrIl`Y5!4T5!0rQw()UeNDh(!>D z^uo9wAow)h>7%Db6ofod_)-)bDbMC-4JJh}gj6x&ddNsNT~?vRA__uM#FaU@0?a;y z$^P&MHm5kv*6Mwm)P_I6vrMr8#+@RZ6yXn2SHW#ah-n8t5d|UX!`(u_X$L+L4I$~n z`9Sz%JLCG3t9ro6=N1EAOP&`@k(E6?sb1_91h}@X-Je|1)0cNx&dpEZr{7_h_w=NC zai%8Nw3`IWdiv4~1JDy}4w#xE8bVbhXMp+AV$u`_LDsI#`w>ivFbJt)Si6L`16tf4 z|G?G+&v#-nlVSac_y=ihU^WrnEx=DVHo@cqUEjjo8+=WMWiR3$_$y)(!gV+}L=-I* zfe&&^5#Y}}9rXl$x|W8M+JFb(3?ZX!D{?0(;DLR@M6MT~@tOumeVro6L7KU^WhPLx zfoeD@VjU!XKonu4Z5Q$`;#5h< zXtQPgNfGfN)r(*lLPoXY$lH|0d!gY?EQz6leJHfS&@0v{wrfH;An$)|*MCn6uDxdcT5 z!#Vir*MKSFVYe>wvFnJ42dSrELJ}5QTr_C6hAaL4Sm3u1} z(--T@!{sG<_B#J^ed2Vm@*j@J%Xd_sh+Ug}zW5@T_YW2CF5XvLbtodcf!@zc2qs>l&= zMf{9dv$CLaTPmAqq=u2jAkVTHu$%+gn~>SyJmfcEIS5`go$H{?vK}OhiSrW&#K#gZ z#@}4oGqogfV&#$eMVa4DXGOR&b76*MNO&XT`DfN4i@^-b;BM6w z{v=HB4Rw_r1m0R*;Uc2U`ntjagBxH|eTh;RzT#U~8AMLBT zb%k|_=dAN4lrp1eb2TDa@BLbl;0yDf$}eSXC56L-Hm~#UPdZYYVMuv*$nGlXP~ zcd=Xs+wofOqSRs1doebb!bZlm$U5%=MQap2zqca6WsiGOM6$v?F(O&+sys2Avs`tq zf-U3xAfmO{QQs6>xpSaWhVi?$E0O?n>?TFRcw!236}_=X{X3B|!*!K&#rS6TmamJw zihrpUUc|NDf5}>qtoA+~k*x9*-Zjds^c4O!BrCjpL~FTwb40StRmKZiOWhM9WtO-K z%MoQ3y9#Fyl10wF5v_%eG7nK^f%BC}nfcBU5y_m|;}Oa1n!<>~b7s{P7APc@n!;ej z3}5ZNPk9a)9^OF_$x8R>h-8KPOhmHWy)+_O=6*aPS?VghP}IJ}eMO|qVt0>-WRauf zVu02{=c-7V1&+e0Mw$7JvMwN*S5p|mkj$+q_yftDn!*o+WOnU8B6ZEGDNIq6snoVA zWxy5p-Vl+j^8AQorTb_^vcgqI5cj99I-kKobCnD!SUXGID7GwdH$R7Nm6c0tp%&q+>BAHWDRxVmNyY}5knOU`uMkJNm8d(CQUE_T+B3bRd zDk53st&T`my7xpRE8M#ylI5;4=TX-(S6LU3EOpmKw3fKDB9g_9vY$e0k#kO@%tGh< zh-87Ivd6*OcjiaR%&mPZBAHWDIo@#8)D%QQ?XzmfN3<%nf+871uf97XS?zfd$ttfL zk*suYj7V0vDq@det}1h$9WdSKbCx(SMxL|SQEdri?r=_xlv(I}I3ii#sC;RbqvWrV zGV^MRRe<))tz8r;GpF{Yh-7x{6A{U*+QEus6#LHU5y=`)!DsB$tGyMGGOOG_MkFg; z1?Qo)!d2S?-kPhvDMCJ-7b4GD;!H&(i=77}l7-IOBa#J9H6oc`dn_WETZ_KwoZ6X@ zGP7&%ib!VF8WBmQ`m`bmV99(WB3bJx`zdU;HJ-A2LbBRZ=QCVd?s()mE8T4o$qM(3 zh-8_&S46VZnT$x5IQK^+i=8_ol10v2B9ev9ArZ*}N44;AEnmAXQf6)~`tEaT?}?O| zT~l^X^v0~(@<^FV^$|tlqo37r_tC3cB4t*&JIePfmglCrI;H_Ev=eY%nj=|X>%8Y9 z&)Hm8#}w@Py1H_41K~caXdw$m{cV*~lqYYfE4_*xWK;bpMa##N)fG1e$+-7EqcS@&~_A14TKPi5;_>VZJKTx=E`u=}c{-*qg@}s#w;$;2l+&>`y z|9#nuk^g^Lrk%Mib7IDw&j0_(^efYu)K63Ar;bd`NB;kBB;TIgoOmj6TjGqwfr(1| zq4;I-x5SsnreascPKq^#{ycO$KkM%1-(g$0T4dJ;kJYtZOayJ=a*=#f2$>)ktI^-? zw}sC|@=c*b$>(C=Xu~)3$)2x9(u2Q|{Hts5)BChO(bJP&6gN2JOSbuSgGoVZkX{sK zA^BwoTub(|8Q|zd_$b|3*&M9lq?XNq9KPhBwFN5#lY-44H5?9Ya?qMsd+^X|X$+{C z{G~=mYcMHj3{s6yBuA-H(VrAN25D?T1tp)bDW1ch{9tcvB|ThZl4sTM&3C+^p1#0o z`^JU_ll}As=Dg+%QsX^jFe&H@QrFOG zAOg43yA^i^XnK!s8X~Zku+Wfv8a*Z03u?W)7kCg%3KD}fsSxZ+kZ642U{cFo0G1La z4w#Mo>;;BtJa>wHZ1wB~&hZ~mv0yJqU4>gC0z=#FS}-X{402a-(yE!hGbz{$k|HW5 zFf?9Q`IE=#CIu7;3|HW%->=@*)05wnCu_06zCU?vPhZAF&N?;iufgO$_4MQy<*fPv z``lZ5igJTFd(?L66HW@+f~1ej8-hmLWp6Mk=nGQAap^<|Ibdi7Z$Vb9&p_jV$*3nT z@a!wLAqpq8#0A)|gpl@VI6+*H8@_c0A&o=jPYT9@bWes5W^FuM5Z^#oHv(nEa&j1ByBdf}uXDo9faj!^6B$cjAufYGi9Ck0_a z>LVD^WM$g!|NTipT#!~B%woF6H{EK7lUl+8b`ZM7w;j>^NkLeURuN1;0#?H}cd*(8 zUqNawOinTxO}FX6q~Iw?9Sr-6q6duejKQQJDoBd(mk}Ng2rJyLHy5Olf#F4_qHSct z$$fSDh&Lddu|@aM`Tu%4|MTzv9aUbA%=F(bom$!xH}~6%+lu>5=l}Zx&i{+@$k|6k0$X*&M@TbcJ~#?mjOf0RBueL%XD`bFyE)Dfwr$=~Dre`3;0 zyqNfL;vAg+v$(gvAbx0kL97|OI`)p(`k~Iy^|o_=(AJI)u!-K)cpMDdVsxZV#`Gsp zwS^LfZS5dIpNvggNMP934ic=~-3z)8+WYhdS(;sN0MI$ymo71=s z+FDuzc3HwyV})T`&>EzkMzALVg)LAiXbXCS^rmPqLF0fS*76##atYyVK9aDlfHJw3T=Iq7r2o38FDN@EIJYB!JJ?NvQ} zsbW}-gop#)R8SRUC`E?uX-G70vx1@^R~XDd;(#~Raug69yL%D;VOww%q@Kc!070V- zDEzjdDo8I3tCOJ7cnWU|rh=pgE(;-}xudiU1(??sL=4(`h63VWFfxue0MP_PLFyrP z0nQYCo5>fnwM+$=Y=nqLr*+sCOa-Z8Kq=Xp_RT{O7Nj|aU5^lPz&0xw3(|6hkxGbY z$k{d;wuz|_!%u23E))m}ZI+MU7OVxSUfh5XAR1lIZ7o{?^%A_;Mks6xwu0Jj!bO|Y z&Tng33!s$HjgM&!1Z}}ukOl}F0O6@|cMsZvt{^GGHl`iGNQ(^G1s$#dh{?7cu)Fs2 z6)^c>vJs#f0WoL`zJk0X*A)2CF{~=frM>A zRFL#xv+W+D`fb5ikdO`63WTUe4@o=O8yl%!FgFQF?d?wJ^ud84M76CxI{$x{`2Po1 zD&^ly-~X>KJzl!LbW&-!_$>JUrz8JgvhZ`n;~!pFoS(>lJ^!x!rrfUFjk)*bg6zxL zA7($1-8-Al{8#1+nPW1m(yjCr>0{HIQvZ{>HTCgSm`Wz^PJS+Vcye)KB5`fvT?r@t zWc>T_PsR_3mt((BC+C1JwQNVL>RvWOCIOTwvsKs@p$yX8gMWbV$wtNx+NOvG!YAVk`)v`?AT<~V z9Rem(&`Ho10S)qya!R^!NQ1VBXpj`)7AHh9wlrvKLmFTRkjZ4edT5J~2Dxu{n@rx; zMmE42CR@+ABZqBmWCIk*EVY4m(AGva;El=FGv0y)ZGB_|=X4v5yr3;28>GR(0w){7 zxTE`R5z-(pRQ@q|6NH6r5z!!x4a`}>T&sV(tqp7dW)tSxZV zP^@>cy`#6$NR7q)48gE{bdJ~RgR(Sj?%AxDu>E$eK4?hO`ZnK&-#)IVFO4oj011`N zqx-g=p47>>*CI4FuD`G?LK~zG!y${%*gm@25C?=FlDTNy*~7Lz#DR0eZO6*6tqpO2 zeM?Yh8>yhJ4RL@ol@8)Y|903GAr5knae}LDiur93=^*WYNTE)PxAhj5GCv*b0uOboa zAgv-`ENv>LRTQ?hu?|2S!e(1Ul;0My4)W0QgvMF?bg1RGMT~=_hk6NO%@+#V5C^!| z30iF-4q;n_I7t1B0V0I8^>f(PMmpfehS1jTv+j>{V8{8!4B8GbH?)xsFq#Qw%_pw5 zh;)$N7}hf3t8IjXwm#qi7j59d!!KA1f( z_dw+laP((5`(XcH6~71>{!fm-Iet)lEWRQBc>0vw4>P~5+?zQm-^}F`YZ3<}t^lL{ z^u&pY7n4r%!^s;`OH$d?VX6Dm3-XsFi>cvk8Jzun60-^iWnTb8|M=pI`9mtVRj#RA zT-jDR1&sfLD|@EjnnIR>%$50cesg-y+~MH;KN;JeexeXByg4_Se?{@;{I!)$VEQM^ zPnTQe`^$Hfugl()Iy-r8{N;E&`!3`KxIX!OI+;HUc?yomu0k$?dHL;y9mUg2MPx!m z4g{X_AoEi4QtL=4_N}bslBrwO`eckQF$VLP426OmrE;<N-D++GmJcB7 z<&RC?6}vBWN3NP^WQHu|s0|R-b_gO`&k2#NXN`ys&Cogk+1^Z5|T>olZqCgtgf){P-a%`mr9v_o-;DaIqGu| zr0OhGwBSH@5)sL4C#^_u!RlVGNN{E9ep`{?O4I$8B0=PDgo%yIJV#{_X^Ld4*jypUu?&}pT zxLUmX6iI*f0fgqe3TF>%a6?_;Im4B@$W<7^?A|Jp*I*Q@Qbm%#En@{7~3d~$r zf1~mi$Rtw#j3R+!K9aA2v4|g6${_UARXCP-i)h{l_EqYxq6L?T``?PBKW_-UcJ2$2 zGMnluQ@uay1inRFKTpwu%i2pS668^J)lo)}rKi3ZGOg6rbphA8mr|Ys-?Up-BWag+$0MvuxVv11laE8v3h%?pli~BOD~x57S?PU1DT6O^ z*Hr|l12@#MVBhingQ5j)Oue8;aNl3gD-tjOz&T5%F9u0g=!< zPLUv2PW>uH0+yqva!~ON>iV@x8SocscPbLbN>%3%`xg3hkuod1*G433>q=$;*c&Uo z10!WNH{yzfeL?-tiUjNcFH|I6Y)eDk<3J~?&sWMIMBh_qlph;zPBrGG+LyCmuKl-I2Vc%50 z9~Nl9XD_@T^IZiuAerZ!ENekB*HPHWz|}2{*UM$F2Ddc!S0u=3)fiPI`09JZjYu{( zMidEn&W$aKWE5KK6bX3Ojn#?-Ut({pQX~yLN1X}C3e-^TF>u8j^As%{?i_W7!{y<; zDpF>yb4o-q$2lq@neC|i4l-pp`$WoAYELKn^?Nv~>YQIy;AoZV{iAd%n^?Pq+Cw)XEz8C-8W z>h1}rkMmTd%zWqih-9v#&M3qcJBuP^W;;$qGOPA-L{h1JN0Go)<`yH81rbBYfZzfycdaaCbw;l{!T3w!5Z&fk+iJOA4Jyxb$X zt8(wjdD*A4H)l`HZq58Db64gwnOA4Z>0hTWO}{<8HuZsydyCje?er9~%cs919_XWU9_-Qws67CzxtAU6W@}^jBjmCm0ts94JTg-1% zH{Ixsg;RPr4rh1TDh{WF8%J(9|G>S)&5ni(caG$L0;bY+ndyEG4S$u^55$uhSR(pR z@%}x1sbbt{&^?#QKaYyF+z4EB?SZa#>K5)KDi+)bsbV-KH?g5|Ozv(dYDp0Y0T_J4 z21P-NkZQyo3b}DjVH{A@vLX3o-H(8%ccOl;A-~ zFN(ND!Zz!T^putkfsP_l$HPi6eBRQUd>Et z2@tqOsYGY4P zsu)3~gh{sfA5Lx1>cdsTHjGj0E!xz2ojw{)2xX4~T-Vc=UL40c0xI(@+SFQ|B9Mj< z%CyA-+5{m&hA7VIHho*ypAvisNe_2Q1W^V2^hlxQL4fT`2sHrw1rI{)8iFQsbi$M% zLP&E0(e{K*w#n#E2|k4Mrnr5h8*IaO46*5Gc@PMPqAPRjt=*KC2LU%GL7QpQ38n-O zLh2|$A|ab`x%*R#dvi$I<-mm_WHVQ&CppMcld&_750T!FiDS7B&PS zip@w1rv&#w(#I)-ki~}G{*<6VNIeBE8bPS>T7OE*fPl$Q_+s28{VBnKkbnjLd;)vZ z2WkDOoNk>$Z}4?~FqQ4;Nh1St2w9`XUDcn;^c3Zu;h#q{0Rub#?>qFfp~_DypF#e= zO!=qf^UFt;mz5qVT~&Hd$(!c?pIO|u7%Tj&@Y%vY7G~ui$X}R0I=?X2%w3&(M{YR# zOm=(r%Y{r(-wAPL1sui=zquw_nf^BPI15f_i9b8ISyaM+}ub#GGwAf}duW9P>M3 zs3bjX=Y-*gubqsA9Whe!8sOY|3-1W}>E1|7`ly%o9E+(5{gh6hT~V=vmS=Nu1RX64 z0;gcwf=p-1v7jSZ5Yh;Nm9TmGgl7txM2iItLV9Bu*W_Zbpa%2>9YWTJ!<$)*j%AmJ zzF;DtZZo7B=`1i;hYYhXFx zg#|l8YB0M;oSu`msS!+RSrRZjX+tt?!KhfUB&3R=NI-90g;QFx1WqBe6C0ga;gpsv zfgnV}Nt>fEoDyUSsp0Hal`ST#zt5c_&IAk2ltv0$IKie4YJ({)PXY%LGVe`JCG@i3 zNl1;wc1l=jF+wpPwR8ytP7zj`>~ts!x`Z^5aV#g09I)gCUqVuZp-v!a99Mrz5GAC3 zg`rL$Y1+oZDJ?+)<}!h!6IGVge=;C+j6tUqG zIGRqWP<*FO5pE^2eoY2G6i?780%QmsO$I)u;X8VYQXk=DK(J_E?1CmC_YqG_U__Z< zO7J6OMV_n0IGe&LL5z@Ej1vOkq9xQBU8N;RfHp(8Xtc({DJ?+)83G6w?K_YlNXQN6 zd|LZ-6g&y3$6(zMJerM^DLp}gXQQ_DSU4pJ5>mqfRfLNcW(amb!IO}-d>pL^BMk=t z%uT_Mkn8370xaqCp#KKl+=d^VAkuOq#7q%%3Aw{L9ex0|3!a43aF~<3XBGNWf-WHg zCIU6sM&=m2V`#8oOGpg{U=rXNr*<$UXcCelj4MJq<0|&21W!V0DYk4vI1l#mobt0KHJ`4`Z)f*~O(!hR(CZ@^^GQX@bwBKyxm zuf;4D)Cjq&{29EnTSbB)A?X9Q2=AA2>L=`Y8X-a>??Km zPk*`YV0_7r@dAdXzj}9J<`%@UpIf}U*eIM_oR#@Qwu~?6otM2ScRhWNFMljz>*p2X zJf@z<%Ez|j%YjD}PcJ-PIi>J$1@ZLq_xj|o^MR!RHbG%5-^^c+g%I6HM3SPzG#_DoAa-zJW+BGt$%ajqROVi8Pi|y zyC(ezzVmnB^mqTRWZwat{#M}hcLU=uCl0`O3J<{-5*{es1s}=*#bdx)cq@1a+v1Po z%ZNMTx0bIXenIwfuq&Pbui~Zh9fgDPr?PJzrtf9(|CK!xySP(Cj@*E^cTN2iT;l zl2vs-B3bDv@ujG1wxh&&Lo&-bQqe-n9_ObK$t>rRh@|2u{e$PsbKano!L^NZc0@AA zd5h-9IAbVRbi zy(%J^?^YEFZrWWX#vAQf=+0KkzyTT zF1$ZQBrCmJ6$#SaIge!Cs62Uzr$n5h$5z+t5v{q-9~B7_cGRP*X-!>4T6~1VxgqnC zQrA-NYsz!r32<+ZNanjr>?qo^uKtNgnT4*p2HBT8AC8n+>;)0YBKOyd1YZPnmSiti zTDZ)+G*V`kbD|=FYuh^~B3a_CRV2uM?I_vP5s-ECogdyE*zwc>FWB`N*Tno)vr_}2+XK| zU6J4pxvusPLV`Rc&Kb3@u3xNZAu^?|ju&`~b#*?&2jsm|(L&^c-x(1Z^H} zsP+%yMH_oY%4}|Il_lu;jg3Y`vZ>)I5`3w*q3)gtRcLHd${?Jpu|bi53)WbvNWdFv zER9GuH5Mxpq&aEKQ6xz3(kMqHn;Hd00@hnYvA%%w8yiDP8TLK7zbF#MetKS(pbt0J zpOz(<^XuyhMxo56`u`|p*f+ngi%8bhFN{dm*0)6@YwE{GB&+KxX5y?_FGb3%^nMYM ztnhwVzGG-zk5K~0n)@lG3@#Gg2P2aCt~#HQ^U%4w+)`HDa!=J_4BrPUw@K_3#+!a1 z^5k{(|5PN5(e^V%!Z;@9DiX#PQQOS8MITejFlN&S6p4=&r|#Y0UNuzflrfv4d+r{M z6O`xR8_AA`b77B_gSf^eo?=5nve^5EtOd#HdPkOEHLb6=>Hh!c{QG|yFyzlKA5vaW zdUWRg|LNiniXSQNQyePnC|poDv{1=El)o(hmi)ThA%%?*D(BIVW>y zrjq_m`b+7f(<@Wm)OT>A-YXUFMgRXM@ukE+B{szWJAO<2wD?}JKga$(_PN+=Vuhif z^ONr1{CC*V`cM#MO+FB-52z!2D3T8c7YgJ-wFD;On)n}kJ{UW|!^{C1SZ^gdTCM`F<+m{XF{95Z>}a_P z@SxHim%ZZsdoL_GyKv=1o?r8=Tt{#fBt^Iv$>nQoanR9{6re~xU*lbq-w`AQX>1T| zK|bF!e!3gaup>AM@?7Fs`)pklb_7*H*5@hhY+n7KBNz*EPw~WFMn`PW(Nh(8ensQh zgdIUukXnp;1iD(zMU6LbV)LGGiiG4eT^Z!SB6 zsvs#Mtb^{D%zpKb;3`Opupj8|-4q>$&>KBjfoI<`4yWG{WCeNt@+^>sZ1uoGK~j)L z6W3^jrM9?=up`I{l0N+DgryeF0fMsxXF+N=^a)Fg`03Z3;3`Po&^~Ro}{KmVPe+&9r z<^o6_bh~9q7YcnXa{Z#Y+SoJ);4B7B(sU0h3ZN8sv(R8iOg;t+(PGL2QtQ2%Jg+%mKT% zmeGJ)aRN+ZR|OrxXpm}zX+%hAjN%D8S}Fs(BO2UCen(IlB&0x47C|J-5vxOrup^iZ zQs07GMHm0JV34pQ7!9&M&roR74?0?6141mwBpYCTYKaXvJMJE|1|30ckcJ31wFIrk zNfCAgqd|IOC=#~X0jJQzW=S7xPy!rV*ibM2|E|gzl>;lY$`6z;EFV^0So%%ra%7|% zDL#k%|DP%zgzx{|TR6AyI(+}{xA`k@k1z87|0R2O_N?q{vU4&IW-h`#_LB5O`r7on z(zVp{sUPA_{eVl1C=zCmu~))rKE5UPOl*7Xqp^KsvHx@Yzuy%dDFYy< z#TruAkA+=*2Xb1h6|uYd-T+7=j{&evxvt>%kIVT2VKEGkSfNmOvr776Td46 z2-4yPah}foCVxTD6~qInLYOZEe8$~4>}nYY06v0ht7E1s7za{M;q*<2Z95Ev-9&GQ zBz^b`XsfZ;ujL;gxQKw;wnv6tE&l-7C{kX{&Tinbr)IXCQR`3DHQ z-n}p^za#huQitK#N@#5OwjnHYK|hdQ7?wGqux*C;9YI5o!3!xeS%=k4!JB?Z&<~{c zA{d{{Rm0b*;SUh(1G$4a2ij<61|2Q!0Imx<*PAh*qo*D4Bmj1EPtXpe7Gs|zv@>q7 zL5KJT?DJHTA`aGscE(o?JA!l|jVV?=!JX}3?RNzCKpIoniG+HlF%3I{b0F7?i!HWj z>o!MN*b&qNNgoaYLOc7pTFXEH2ZzvZfIsY{9?VKTja5r9H^3r)Pft;5F`PAoZ`PRY z&WSyJsbZM91arno8FcjA15Onlps3{@z&<8`Gddf?j^G|huZr^}A)Ed1p`{>z@=E|` zB;SP{Ed>F{NXTZJ6@Euh5M-p`xdfKrr{7B6-Wwa~g;_A-G_u(o(SAn|5#)L~bJxR9 zU#}n_NcFA+1I_6 zfB=K4dlthdF!@gWzZ3n1Nlw)_q7JhVlC$Y{v^V3+j%tX2+o1ja9o%XK-y=qpdLv2 zxXmGewBwv$AV^aK082P&@}v13K|qjkiYI?CWFUd%s3jgCw2ko5b~Xq*2kY<^XA80b zZ8*oy|N9NyNcaEyREElTmCq?3iu?a&>6+4eOO4`7#ec{7fB#|v-~an!;f;kQ`G@mg z&A&0fCihtGrrd{ed*@Qw`?6omzA3vj^ZU#OuyM8`?`YAcw(~|}W2MKb37^h^= z-J(;(3lmBit>vIALJ{N|Ii=U=xd^)27zC_3!X=}lGU#e!5P&a)O9PrJVi2UJ;*?0h zG@z*>_&`!b)B^#Nv8jGnL>)-Oh?6uSlHt4Xn0_MKK$<>SE`&(7=@WKE)Pbarn`J^K z8(K#7%?20gh6_DVu)K)rKG- zEeGM0(T?=HA_PI|FjzGNP-cr)8+rgY00ETIj0?IV^gvpJcvA~N`CSonAh(p~y3XUL zgHpdMLJlN7tU*ugr(&^*$MJQ$4&E*mEW1aG5^7Qm`~>J z&YhQgeQs&?_t`76CuTQip33}N=EIp+rvIA0Cw+GMwdwh(M^aa%j!$h#KApTd`H|#4 z$)Utg6Q4;Ol9(TVG=6pbr1)^`@!0jTlVbIu7l(dqKmKb<1Utn5N^1%oKvtP?Uki4M zk&_g0GAGzGui~9z$RtH~=2n7>mS>42yn z0*8h8>0mS1sf~1irA|iHfT{@G6U!A=p|AXN~}>tgS6fd=|e!V2Y%Xh(-mP1QiV7%5$twg#dBF39}6>!Wg6% z#d&0R-O}1<2JBjd6UJp5bVW3S^rqO*2`7vvub`_9V}K<>Kw+GOepiGs$X&$mHBDU< zbVc}r)KYA71Q5n`>UTx_f>a^)Hv$NAg(7Z2st{vBh-R!X=!(DvS&>JH8>f5F)kZA9 z-$1}%yoU+9B4R0v4qA#->4rgniS|#x20QBz!OqvELPO3(}l|JwS$pDO5S=im(M~YQQWdd@wGz zuq)ygq&I~pmH@&&!us$9&Jml3pMHcz_<~$7=V;hmctKZ0F-R{AJA`0jz$Pie7o>_| zT++5|vk}9tK8k@eF6{SJB8ow3I6~nFHH`QcbPwz8Ig%nqieSU|#(wwEo}x6Ta5f`* z!h}A})n$SpYi&HL=T zvgOPznG4g`q_@R)r0)ge;0R;_bV@5qMP$v}g-m^S7jH)1z4MEw7f&o6gFJeT;+o>D z>`$^s{r~o^Jlu|=%D;E-yW89Py}T{^%f65VZgp4pdpFQC3J4(*WG6C62r;580YakS z!UR!SWF&)tiYS7BxDfV5A}Vh9InD}J>eTt2PU`NJPcI)`co?<(UhMiY>JvQNb$i!!N&UR8)4Eo7jdv|d zY7L_5-*cVct{#pGeWzA}!tLejJ0C+$zZ*MIT?jaaV>%B(eZQ%l<=V@&pVyv7#lFwg zZmNE~dT;fb%59Ye6aQ!K9jE zF%p#slj@47N_aME6CNR|6c%1dDgtIiHvTS1v?2v=WtZ_s6iQMdL#Z=_8QoQV?5P%GKIz$$PW6YHgPD&6I-QSIl;_JS1y8z=FQybc=|VnTp&);my=2)7{53%2ZdWpa!lHSLq=r!|q`k*AV+pjWWP=FENEF z72WVV{cMBA)yI@dT4>`irDhnORIAz z>Z6dH;^{tNmN%$z&2)9?GhAKzbXWD^$To9T9}a+qtL(ne=Mkp&dDtyz(udf`G|C_= zYm@=j&?r;bY>m>-Mm0(wD`^y`u2z^s#K8Nh(gtro@qVIF=6E-1lu=LF*J0J0?G0#c zW_fC5!M*F-;oj2yrp7hh)mNescCXfEn7yD;hM2yZ57yQF#yDoC;(yTRex~l4#!)9& ztywsZigynxvXEfq{kuk)>ph}T=6LVXD5DATm#`pph`rzETK6lPQn|g;?k^A(<|a2SmGOq zV02uBxh)CH;FmZD!k;XO2`<;Q#01gtY`8<3!(~bv0b@4YAx%Uy1rxz2;SNMqh!=|h zxhXXUj1uQS7;%*#tig1Z0LDy!0~m!hn6AFSC;<*cBC=D3{hE>`F)EqJ24uL2yDLkG z8T^^Z23!J&NUd!;2Th4=ARR|iz~mRea2yiSKmxXK9Kwzb0b6KFA{vN5csgo>b!&V)7K7ETzet>a-+!WxKtq{RrE zwIo8~!6mwZJUIA;=}zKhSZhHdjPR@CR?2i?360fTjHJi71Qs@LGu@zhP>Y`k#?|cP z=`9d^V2hCoPV3RwSArE;{4habNtWw0$d>>IDnG5zV4o@y=Ro-3WrgdoTwG$PGvN-n z3>QAnba4sBOt=FwABD4<#Jy+29gzDWtZI_&m4rJ`FPWAdFkF?Qr41zRVeqE)8=1Ef=|HU^t(0J@F%~u@(1AW_TEpE|c`9g1zyoWa#*aFf5K!pkq0ca|?NuP*nOzEk?w(%RCTj%LS>j!hkY@%P2Yi|;8OT^uYt zQ@FXXp)kMwh4#<1pWS{y+i%f@efxw_rovzgB5TMpLmELO6-H(VmLjpGH5p+ejQX-P zjjPjrTXn<8$>dM-mM#7g@+Itm%oMEJVhy#-6g;>@ACLz}08TgolfQ)EOxOW7c*3SE zIkFHeVFy&OExoYeM-p#9Yznp^w$yX*$*?JOSmF$brm!&-D~koE0J)iP1B|q=DMQh7 z@JYA<*{s0%h%L17NEcxywo`jLbiPz9xF&;9shD<~Unkf!3=6cj|6XafYV zgbkTvFi|Gj03#!oUfa$&h%(Uz7#XoUGioY`GSLP|UKYk($Ho)u` zRx`=YS)vVyig9ulW@FytU)*x2w5Mrypz%-0(-vaM`kQvwtSKa$CX zY1y{5VN>E12tT&P!nABt)o)6?0x?bOwZwY05}z#744Rp61@v2(m@$?VHYHqvbQtkY zVOzGD5;P@hf!bCIdND?bgQkQl5JuRBSf@;9T1=5lyaG1R!l-OvyPzrY3Pdobn6NFQ zs{Ez|DiHSv!NRD_?oR>~h>Ee55XNL%r-G)$DUc2$-XV<1cw-ed*Jk?Nv|N?tFbyk~ zcm*Oj$>7;@)n>fo2$~Y8Kp3%;7FJ|j8H1)oDiB6&EX8b`PvHjmFzHNt?c!}bZ?RT}6e%7%Ax#@j{SK7Z_7%XfO+5A}<{K$%L zD|eJW479-eI!-LUGkKSN@oUbrg+kBsG`C;P`XdV06&96OR;D-?6#3qH|J9Fot**L2AS~(l zL&x)_=^Ymr??-<9>h`-Tr&i}Urz6uke89Z+mrB*LKvt}*yud%6W^<%Lk@WvvTs6ZfFX5k1D9L*xZ&4`8+gw|} zvWF|l6jgFUaDrdNZ&tXHH_(1mp(O9Ey;Y&$YL$OPp(L5BYMwj_yKyC32?w7={04<9 zc}wl}3MF|@>~#ty$y2>np(I(UA5bXRn{f5*mk0s#_bY9ZchX*|P?B8MD-=rdR#+up z2-d%tUq;(NV+*;OV~N`;eg|y>(_h5jsZf$U-a8dak`t@u+b8dm-J-NfvSgL)AoOPu zKUZl3oHBp2Lct+`e@da?sLGYxBs|4D{(7YicHsOJNzQQ zuTd!2fN(XR6ALY0rL;lCM}DM2!P3SL)hKiMs}%}d9REj!f}))K5QTy?9IobbB2R{^ znUJ^|=1R6Co_#U@wDLPBqsQwC1t|^uAdNDQAD~chX~dT*6x>_!g$e~3MqJ77!VYKw zpQp4zoS)B9Cx{!FE2YP!JyRUQs9sKH@Kwg8nSwN5Eg+1|ftlv&<4DFqr^${$oH zNW$^HrcjbB*)M98S>B@x1=#?e@;i_|!&9}9WPz%)7q_0C;(x%koIj-eGOq1Bbxpw~ zkN07vO@gy{SfkAH6pxKxp6TfxdxocaY}8TlluS`*b(VLz^2?~I;k`?tpj?Kh`_-jf z)eou|co$MG^k=%K_#aTFd8@THQ{CTdlo40SCI#29`%|sWkb9{{8DziFC4Mt1=Bp$vn9FE>U>5nw5zV>cuTPRr1m?5Oqt>M zwVA?xsZsiwYPk($=|@@{hrLaqARE~`N25&hRPTrPFT3B;+KjkYYm{ME_W(n# zx-yQp53@*wp*k0vF~UUhpksA$RhUC6&7U+J=M=6XV~l2xJKM9 z8fDm3a)#kahTIdhHiJyDZnPO--`Cpov!^slA5&2j6xCdupH3~fb$8DR2-V*IHdtMF>}C9`N`Ddz@>di} zf~@weWOdd*PJA?Dk#lceHP8U*7g&+XLxY*Ye*Wk|7rwt4V{~#*3yf%8s?9 zspqyE_#l$879tqIX>m1XynPI#<1&LZY0kPWI2%S1oj`+3X&}#kwhsFiC`2FJY%dgj56T~xNj8^JX?^}k0d;S#<9~lxS@0zat1PC z36Lw|aJD#J5M{y=5Nj24!}NxAWJgF?f~qMIjy8uZBZ)_#jOptWj2E?jB!LJ-MMxPE zap*ceS)u+gk~jo13-O5Jio|yN7etwG1cb3gINGS9Fp_WtA{a4J5r?*2qsgNxDj{Ce80Pyoe0;EddEsV4Cc0DhUe4Oe6v}_hQx>9fKc9 zBm(Iv7{#<*fls!5^VSoR>5ePJeRaKFi=R${6iQ=wzX8n5ZSkpc#dNi~{4io!{J4S? zv(|QX8blI@Kt>4q5+2w%LSZBU2&CiKpo!UQ-%m&!0uc;{DkiZRpA|^}0%61xi%D$0 zt%@>{2Uz8V3$}vqB8fbpg3}CUEWdaeBaCY*(gfUwNMG$2I5iqHRH5ff}5Y1`XKN%@JxUdG}UNeX! z0)a4MofOt!oEu>zp$AmeX(4Odqzog8Kp^~3m9Pf8sw5DBbR5x*2u#=6C+G z^L|v$b8COBJyE-=c5H2=`UBLX?Dl% zj=MX~>)^#d7k3ulQ9QUXfx zQVDM$9foTYmSa4Fgt5dmP{Anx&Fb1>32z|$SboG1S&x@-Cd>gH7p}rKr-N9+9LR%X z6|rrNVu^F0jOkIxxNi+(33MP&j3h}hRMwooSmGUsU_=naP?@TuHvCuu9_ZXk_hiQN zX`Bgkz>!D{k$F!NOP~YkDRz(INsW7wFqQ}hs-kqiYFANPmcu|8SuE6(91SGUfeKC+ zYFm&ch%x~W7#lGgCyDN410K@tn{B@wMkc_6*u~k*D2Orv57@7ZF`i^Il?iyj6N@o6 zhFSdRlGYf}*_iIaOtUeJB;bJ#QMw7Ug^`0u;vVRvOo3R&Aqt|mwmM80QFBI&t`ej|h^51qiQ%+vFe8auAc7HV7b~mLaDqqz z7YHLJpcu|cdi?s4O~b8ZpOn;7@eHeajZ9D zR@m38lUn>lV|Z{8!#3_Wlk@+I(xnOh{|e_wr-J%_AKFv@@422kk-@*Hdw2KU-CMd3 z?)r1rSG%sp{r{BC?{?nQd1~j}T2#BIc783W{-OGC^{v&g@;{ZwEAOcsT^T6b%WMX+-$#5)=*SdM z3}TtgK%X=X2u>nUW;0NMX+X|&0UpGe$qYEv3#xkctK2e;2jnd(5N zNO}e}@AKl!Tn8K*#E4ll`C^&tKm_B##Xiw|G>fy79MaSty?EOQ)azthl?>(znghI~um#%$3u2k(KopJhzjX^B z^BdHT@7ofdoc}wV_qI7d#GCzY#+Uq)YarJ^u7O+wxdw6#ap{)VlaH*egu1?2NKUbJQ7X4EBJLtIG=5Eo^U?vJnQ`SZ}WipujU%aHIQo{ z*Fdg;Tm!iVat-7f$Tg5_AlE>yfm{RosDYv4LG6152|A`18xvGLMo=6qu4vao1clz> z{2GZ1^z$`5h zao0y5kM6k}mwfR@ZrgSBr|~D|HF&)-<~O{t0|&r0x`&H31lNhIfh$1KKH70Veh2M6 z&d0}G&R9R%FBI*^MEm2}SoHWk&+mL#uz{I($x>S#gYh+7mj&fS=VG8H9_z@xo{ILe(SS|V8$nUZn=qxrGc2jq&oLeZ z$*bg&`~N|w(dPWO^DE~U&X1g@oUc1Oo%@_mIUjRA=v?Lev$NGX$64>3;;eBFL&N-& zYarJ^u7O+wxdw6#9>04#J75*mVO(rrr*XY>9?Sqe)CJ|H{Owc^NQ&= zw@@vP)X@7ns>!sqIn`}#&Nip5cUx~;&$gbn?rq&|UE8|aI=6MU)wb2z@aO!KYarJ^ zu7O+wxdw6#Y?+5v(>+(G*-`fxJ z-=NEPrF?fk$UjY&&!l{|ALRd&F2642*Y|_`Q#JXl(UQ*^`$7Keb@}5`{`h{7zgCw& zCgqRq2l=Py@&hS9*bnkg*5yn8$M%Q+J4u%>{U6&O{_jLxzVv@=fB3%>botW%vHjuy Oj@RW&|Ht-&|NCDk880LN literal 0 HcmV?d00001 diff --git a/backend/init_db.js b/backend/init_db.js new file mode 100644 index 0000000..6fc978a --- /dev/null +++ b/backend/init_db.js @@ -0,0 +1,343 @@ +const sqlite3 = require('sqlite3').verbose(); +const path = require('path'); +const bcrypt = require('bcryptjs'); + +const dbPath = path.resolve(__dirname, 'database.sqlite'); +const db = new sqlite3.Database(dbPath); + +const run = (sql, params = []) => { + return new Promise((resolve, reject) => { + db.run(sql, params, function(err) { + if (err) reject(err); + else resolve(this); + }); + }); +}; + +const insertUser = async (user) => { + await run( + 'INSERT INTO users (id, name, password, role, class) VALUES (?, ?, ?, ?, ?)', + [user.id, user.name, user.password, user.role, user.class] + ); +}; + +const insertStudent = async (student) => { + await run( + 'INSERT INTO students (id, name, class, major, grade, contact_info) VALUES (?, ?, ?, ?, ?, ?)', + [student.id, student.name, student.class, student.major, student.grade, student.contact_info] + ); +}; + +const insertClass = async (cls) => { + return await run( + 'INSERT INTO classes (class_name, grade, major, teacher_id) VALUES (?, ?, ?, ?)', + [cls.class_name, cls.grade, cls.major, cls.teacher_id] + ); +}; + +const insertCourse = async (course) => { + return await run( + 'INSERT INTO courses (course_code, course_name, credit, teacher_id, class_id, semester, academic_year, category) VALUES (?, ?, ?, ?, ?, ?, ?, ?)', + [course.course_code, course.course_name, course.credit, course.teacher_id, course.class_id, course.semester, course.academic_year, course.category] + ); +}; + +const insertGrade = async (grade) => { + await run( + `INSERT INTO grades ( + student_id, course_id, teacher_id, + usual_score, midterm_score, final_score, total_score, + grade_point, grade_level, remark + ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`, + [ + grade.student_id, grade.course_id, grade.teacher_id, + grade.usual_score, grade.midterm_score, grade.final_score, grade.total_score, + grade.grade_point, grade.grade_level, grade.remark + ] + ); +}; + +// Helper to calculate grade point +const calculateGradePoint = (score) => { + if (score >= 90) return 4.0; + if (score >= 85) return 3.7; + if (score >= 82) return 3.3; + if (score >= 78) return 3.0; + if (score >= 75) return 2.7; + if (score >= 72) return 2.3; + if (score >= 68) return 2.0; + if (score >= 64) return 1.5; + if (score >= 60) return 1.0; + return 0.0; +}; + +const calculateGradeLevel = (score) => { + if (score >= 90) return 'A'; + if (score >= 80) return 'B'; + if (score >= 70) return 'C'; + if (score >= 60) return 'D'; + return 'F'; +}; + +const init = async () => { + console.log('开始初始化 SQLite 数据库...'); + const hashedPassword = await bcrypt.hash('123456', 10); + + try { + // Drop tables + await run('DROP TABLE IF EXISTS grades'); + await run('DROP TABLE IF EXISTS courses'); + await run('DROP TABLE IF EXISTS classes'); + await run('DROP TABLE IF EXISTS students'); + await run('DROP TABLE IF EXISTS users'); + await run('DROP TABLE IF EXISTS operation_logs'); + + // Create tables + console.log('创建表结构...'); + + await run(` + CREATE TABLE users ( + id TEXT PRIMARY KEY, + name TEXT NOT NULL, + password TEXT NOT NULL, + role TEXT NOT NULL, + class TEXT, + created_at TEXT DEFAULT (datetime('now', 'localtime')) + ) + `); + + await run(` + CREATE TABLE students ( + id TEXT PRIMARY KEY, + name TEXT NOT NULL, + class TEXT, + major TEXT, + grade TEXT, + contact_info TEXT, + FOREIGN KEY (id) REFERENCES users(id) ON DELETE CASCADE + ) + `); + + await run(` + CREATE TABLE classes ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + class_name TEXT NOT NULL, + grade TEXT, + major TEXT, + teacher_id TEXT, + created_at TEXT DEFAULT (datetime('now', 'localtime')) + ) + `); + + await run(` + CREATE TABLE courses ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + course_code TEXT UNIQUE NOT NULL, + course_name TEXT NOT NULL, + credit REAL DEFAULT 2.0, + teacher_id TEXT NOT NULL, + class_id INTEGER NOT NULL, + semester TEXT, + academic_year TEXT, + category TEXT, + created_at TEXT DEFAULT (datetime('now', 'localtime')) + ) + `); + + await run(` + CREATE TABLE grades ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + student_id TEXT NOT NULL, + course_id INTEGER NOT NULL, + teacher_id TEXT NOT NULL, + usual_score REAL, + midterm_score REAL, + final_score REAL, + total_score REAL, + grade_point REAL, + grade_level TEXT, + remark TEXT, + created_at TEXT DEFAULT (datetime('now', 'localtime')), + UNIQUE(student_id, course_id) + ) + `); + + await run(` + CREATE TABLE operation_logs ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + user_id TEXT, + operation_type TEXT, + operation_target TEXT, + description TEXT, + ip_address TEXT, + created_at TEXT DEFAULT (datetime('now', 'localtime')) + ) + `); + + console.log('生成基础数据...'); + + // 1. Admin + await insertUser({ + id: 'admin', + name: '系统管理员', + password: hashedPassword, + role: 'admin', + class: null + }); + + // 2. Teachers (20 teachers) + const teachers = []; + for (let i = 1; i <= 20; i++) { + const id = `T${1000 + i}`; + const name = `教师${String.fromCharCode(65 + (i % 26))}${i}`; + await insertUser({ + id, + name, + password: hashedPassword, + role: 'teacher', + class: null + }); + teachers.push(id); + } + + // 3. Classes (10 classes) + const majors = ['软件工程', '计算机科学', '信息管理']; + const classIds = []; + const classes = []; + + for (let i = 1; i <= 10; i++) { + const major = majors[i % 3]; + const gradeYear = 2021 + Math.floor((i-1)/5); // 2021, 2022 + const className = `${major.substr(0, 2)}${gradeYear}${String(i).padStart(2, '0')}`; + const teacherId = teachers[i % teachers.length]; + + const result = await insertClass({ + class_name: className, + grade: String(gradeYear), + major: major, + teacher_id: teacherId + }); + classIds.push(result.lastID); + classes.push({ id: result.lastID, name: className, year: gradeYear, major }); + } + + // 4. Students (50 per class -> 500 students) + console.log('生成学生数据...'); + const students = []; + for (let clsIdx = 0; clsIdx < classes.length; clsIdx++) { + const cls = classes[clsIdx]; + for (let i = 1; i <= 50; i++) { + const id = `${cls.year}${String(clsIdx + 1).padStart(2, '0')}${String(i).padStart(3, '0')}`; + const name = `学生${cls.name.substr(0,1)}${i}`; + + await insertUser({ + id, + name, + password: hashedPassword, + role: 'student', + class: cls.name + }); + + await insertStudent({ + id, + name, + class: cls.name, + major: cls.major, + grade: String(cls.year), + contact_info: `13800${id.substr(0, 6)}` + }); + students.push({ id, classId: cls.id }); + } + } + + // 5. Courses and Grades + console.log('生成课程和成绩数据...'); + const courseNames = [ + { name: '高等数学', credit: 4, category: '必修' }, + { name: '大学英语', credit: 3, category: '必修' }, + { name: '程序设计基础', credit: 4, category: '必修' }, + { name: '数据结构', credit: 4, category: '必修' }, + { name: '操作系统', credit: 3, category: '必修' }, + { name: '计算机网络', credit: 3, category: '必修' }, + { name: '数据库原理', credit: 3, category: '必修' }, + { name: '软件工程导论', credit: 2, category: '必修' }, + { name: 'Web开发技术', credit: 3, category: '选修' }, + { name: '人工智能基础', credit: 2, category: '选修' }, + { name: '大数据分析', credit: 2, category: '选修' }, + { name: '音乐鉴赏', credit: 1, category: '通识' }, + { name: '心理健康', credit: 1, category: '通识' }, + { name: '职业规划', credit: 1, category: '通识' } + ]; + + const semesters = ['2021-2022-1', '2021-2022-2', '2022-2023-1', '2022-2023-2', '2023-2024-1']; + + for (const cls of classes) { + // For each class, assign some courses + for (let semIdx = 0; semIdx < semesters.length; semIdx++) { + const semester = semesters[semIdx]; + // Select random 5-8 courses for this semester + const semCourses = courseNames.sort(() => 0.5 - Math.random()).slice(0, 6); + + for (const cTemplate of semCourses) { + const teacherId = teachers[Math.floor(Math.random() * teachers.length)]; + const courseCode = `C${cls.id}${semIdx}${Math.floor(Math.random() * 1000)}`; + + const result = await insertCourse({ + course_code: courseCode, + course_name: cTemplate.name, + credit: cTemplate.credit, + teacher_id: teacherId, + class_id: cls.id, + semester: semester, + academic_year: semester.substring(0, 9), + category: cTemplate.category + }); + + const courseId = result.lastID; + + // Generate grades for students in this class + const classStudents = students.filter(s => s.classId === cls.id); + + // Batch insert could be faster, but let's keep it simple for now + const stmt = db.prepare(`INSERT INTO grades ( + student_id, course_id, teacher_id, + usual_score, midterm_score, final_score, total_score, + grade_point, grade_level, remark + ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`); + + for (const stu of classStudents) { + // 90% chance to have a grade + if (Math.random() > 0.1) { + const totalScore = Math.floor(Math.random() * 40) + 60; // 60-100 mostly + // 10% chance to fail + const finalTotal = Math.random() > 0.1 ? totalScore : Math.floor(Math.random() * 59); + + stmt.run([ + stu.id, + courseId, + teacherId, + finalTotal, // usual + finalTotal, // midterm + finalTotal, // final + finalTotal, // total + calculateGradePoint(finalTotal), + calculateGradeLevel(finalTotal), + '' + ]); + } + } + stmt.finalize(); + } + } + } + + console.log('数据库初始化完成!'); + db.close(); + + } catch (err) { + console.error('Initialization failed:', err); + process.exit(1); + } +}; + +init(); diff --git a/backend/models/Course.js b/backend/models/Course.js index 9dea61f..572252c 100644 --- a/backend/models/Course.js +++ b/backend/models/Course.js @@ -2,10 +2,15 @@ const db = require('../config/database'); class Course { static async findByTeacherId(teacherId) { - return await db.query( - 'SELECT * FROM courses WHERE teacher_id = ? ORDER BY course_code', - [teacherId] - ); + const sql = ` + SELECT c.*, cl.class_name, + (SELECT COUNT(*) FROM students s WHERE s.class = cl.class_name) as student_count + FROM courses c + LEFT JOIN classes cl ON c.class_id = cl.id + WHERE c.teacher_id = ? + ORDER BY c.course_code + `; + return await db.query(sql, [teacherId]); } static async findById(id) { @@ -37,6 +42,28 @@ class Course { `; return await db.query(sql, [studentId]); } + + static async getClasses() { + return await db.query('SELECT * FROM classes'); + } + + static async create(data) { + const { course_name, course_code, credit, teacher_id, semester, class_id, category } = data; + const sql = `INSERT INTO courses (course_name, course_code, credit, teacher_id, semester, class_id, category) VALUES (?, ?, ?, ?, ?, ?, ?)`; + const result = await db.query(sql, [course_name, course_code, credit, teacher_id, semester, class_id, category]); + return result.insertId; + } + + static async update(id, data) { + const { course_name, course_code, credit, semester, class_id } = data; + const sql = ` + UPDATE courses + SET course_name = ?, course_code = ?, credit = ?, semester = ?, class_id = ? + WHERE id = ? + `; + const result = await db.query(sql, [course_name, course_code, credit, semester, class_id, id]); + return result.affectedRows > 0; + } } module.exports = Course; diff --git a/backend/models/OperationLog.js b/backend/models/OperationLog.js new file mode 100644 index 0000000..9233ca2 --- /dev/null +++ b/backend/models/OperationLog.js @@ -0,0 +1,28 @@ +const db = require('../config/database'); + +class OperationLog { + static async add(logData) { + const { user_id, type, target, description, ip } = logData; + const sql = ` + INSERT INTO operation_logs (user_id, operation_type, operation_target, description, ip_address) + VALUES (?, ?, ?, ?, ?) + `; + return await db.query(sql, [user_id, type, target, description, ip]); + } + + static async findAll(params = {}) { + const limit = parseInt(params.limit) || 50; + const offset = parseInt(params.offset) || 0; + + const sql = ` + SELECT l.*, u.name as user_name + FROM operation_logs l + LEFT JOIN users u ON l.user_id = u.id + ORDER BY l.created_at DESC + LIMIT ? OFFSET ? + `; + return await db.query(sql, [limit, offset]); + } +} + +module.exports = OperationLog; diff --git a/backend/models/Score.js b/backend/models/Score.js index 3b04309..3c4b20c 100644 --- a/backend/models/Score.js +++ b/backend/models/Score.js @@ -41,7 +41,7 @@ class Score { const sql = ` INSERT INTO grades (student_id, course_id, teacher_id, final_score, total_score, grade_point, grade_level, created_at, remark) - VALUES (?, ?, ?, ?, ?, ?, ?, NOW(), ?) + VALUES (?, ?, ?, ?, ?, ?, ?, datetime('now', 'localtime'), ?) `; const result = await db.pool.execute(sql, [ studentId, courseId, teacherId, score, score, gradePoint, gradeLevel, remark @@ -56,6 +56,78 @@ class Score { ); return rows[0]; } + + static async findByTeacher(teacherId, filters) { + let sql = ` + SELECT g.*, s.name as student_name, c.course_name + FROM grades g + JOIN students s ON g.student_id = s.id + JOIN courses c ON g.course_id = c.id + WHERE c.teacher_id = ? + `; + const params = [teacherId]; + + if (filters.courseId) { + sql += ' AND g.course_id = ?'; + params.push(filters.courseId); + } + if (filters.studentName) { + sql += ' AND (s.name LIKE ? OR s.id LIKE ?)'; + params.push(`%${filters.studentName}%`, `%${filters.studentName}%`); + } + return await db.query(sql, params); + } + + static async findCourseStudentsWithGrades(courseId, teacherId) { + const sql = ` + SELECT s.id as student_id, s.name as student_name, + g.usual_score, g.midterm_score, g.final_score, g.total_score, g.grade_point, g.grade_level, + c.id as course_id, c.course_name + FROM students s + JOIN classes cl ON s.class = cl.class_name + JOIN courses c ON c.class_id = cl.id + LEFT JOIN grades g ON s.id = g.student_id AND g.course_id = c.id + WHERE c.id = ? AND c.teacher_id = ? + `; + return await db.query(sql, [courseId, teacherId]); + } + + static async upsert(scoreData) { + const { + studentId, courseId, teacherId, + usual_score, midterm_score, final_score, score, + gradePoint, gradeLevel, remark + } = scoreData; + + const existing = await this.findByStudentAndCourse(studentId, courseId); + + // 处理参数:如果是 undefined 或空字符串,则设为 null + const sanitize = (val) => (val === undefined || val === '' || val === null) ? null : val; + + const params = [ + sanitize(usual_score), + sanitize(midterm_score), + sanitize(final_score), + sanitize(score), + sanitize(gradePoint), + sanitize(gradeLevel), + sanitize(remark) + ]; + + if (existing) { + const sql = `UPDATE grades SET usual_score=?, midterm_score=?, final_score=?, total_score=?, grade_point=?, grade_level=?, remark=? WHERE id=?`; + await db.query(sql, [...params, existing.id]); + return existing.id; + } else { + const sql = `INSERT INTO grades (student_id, course_id, teacher_id, usual_score, midterm_score, final_score, total_score, grade_point, grade_level, created_at, remark) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, datetime('now', 'localtime'), ?)`; + const insertParams = [ + studentId, courseId, teacherId, + ...params + ]; + const result = await db.query(sql, insertParams); + return result.insertId; + } + } } module.exports = Score; \ No newline at end of file diff --git a/backend/models/Student.js b/backend/models/Student.js index 2a48811..9653686 100644 --- a/backend/models/Student.js +++ b/backend/models/Student.js @@ -7,12 +7,33 @@ class Student { } static async create(studentData) { - const { id, name, className } = studentData; + const { id, name, class: className, major, grade, contact_info } = studentData; await db.query( - 'INSERT INTO students (id, name, class) VALUES (?, ?, ?)', - [id, name, className] + 'INSERT INTO students (id, name, class, major, grade, contact_info) VALUES (?, ?, ?, ?, ?, ?)', + [id, name, className, major, grade, contact_info] ); } + + static async update(id, data) { + const fields = []; + const values = []; + if (data.name) { fields.push('name = ?'); values.push(data.name); } + if (data.class) { fields.push('class = ?'); values.push(data.class); } + if (data.major !== undefined) { fields.push('major = ?'); values.push(data.major); } + if (data.grade !== undefined) { fields.push('grade = ?'); values.push(data.grade); } + if (data.contact_info !== undefined) { fields.push('contact_info = ?'); values.push(data.contact_info); } + + if (fields.length === 0) return true; + + values.push(id); + const sql = `UPDATE students SET ${fields.join(', ')} WHERE id = ?`; + await db.query(sql, values); + return true; + } + + static async delete(id) { + await db.query('DELETE FROM students WHERE id = ?', [id]); + } } -module.exports = Student; \ No newline at end of file +module.exports = Student; diff --git a/backend/models/SystemSetting.js b/backend/models/SystemSetting.js new file mode 100644 index 0000000..ba0ebb7 --- /dev/null +++ b/backend/models/SystemSetting.js @@ -0,0 +1,32 @@ +const db = require('../config/database'); + +class SystemSetting { + static async get(key) { + const rows = await db.query('SELECT value FROM system_settings WHERE key = ?', [key]); + return rows.length > 0 ? rows[0].value : null; + } + + static async getAll() { + const rows = await db.query('SELECT key, value FROM system_settings'); + const settings = {}; + rows.forEach(row => { + settings[row.key] = row.value; + }); + return settings; + } + + static async set(key, value) { + return await db.query( + 'INSERT INTO system_settings (key, value) VALUES (?, ?) ON CONFLICT(key) DO UPDATE SET value = excluded.value', + [key, value] + ); + } + + static async setMany(settings) { + for (const [key, value] of Object.entries(settings)) { + await this.set(key, String(value)); + } + } +} + +module.exports = SystemSetting; diff --git a/backend/models/Teacher.js b/backend/models/Teacher.js new file mode 100644 index 0000000..8dde743 --- /dev/null +++ b/backend/models/Teacher.js @@ -0,0 +1,38 @@ +const db = require('../config/database'); + +class Teacher { + static async findById(id) { + const teachers = await db.query('SELECT * FROM teachers WHERE id = ?', [id]); + return teachers[0]; + } + + static async create(teacherData) { + const { id, name, department, title, contact_info } = teacherData; + await db.query( + 'INSERT INTO teachers (id, name, department, title, contact_info) VALUES (?, ?, ?, ?, ?)', + [id, name, department, title, contact_info] + ); + } + + static async update(id, data) { + const fields = []; + const values = []; + if (data.name) { fields.push('name = ?'); values.push(data.name); } + if (data.department) { fields.push('department = ?'); values.push(data.department); } + if (data.title !== undefined) { fields.push('title = ?'); values.push(data.title); } + if (data.contact_info !== undefined) { fields.push('contact_info = ?'); values.push(data.contact_info); } + + if (fields.length === 0) return true; + + values.push(id); + const sql = `UPDATE teachers SET ${fields.join(', ')} WHERE id = ?`; + await db.query(sql, values); + return true; + } + + static async delete(id) { + await db.query('DELETE FROM teachers WHERE id = ?', [id]); + } +} + +module.exports = Teacher; diff --git a/backend/models/User.js b/backend/models/User.js index 0177278..d6accaa 100644 --- a/backend/models/User.js +++ b/backend/models/User.js @@ -35,6 +35,27 @@ class User { await db.query('UPDATE users SET password = ? WHERE id = ?', [hashedPassword, id]); return true; } + + static async updateProfile(id, updateData) { + const fields = []; + const params = []; + + if (updateData.name) { + fields.push('name = ?'); + params.push(updateData.name); + } + if (updateData.class !== undefined) { + fields.push('class = ?'); + params.push(updateData.class); + } + + if (fields.length === 0) return false; + + params.push(id); + const sql = `UPDATE users SET ${fields.join(', ')} WHERE id = ?`; + await db.query(sql, params); + return true; + } } module.exports = User; \ No newline at end of file diff --git a/backend/package-lock.json b/backend/package-lock.json index 8a956b6..98f8725 100644 --- a/backend/package-lock.json +++ b/backend/package-lock.json @@ -15,7 +15,8 @@ "express": "^4.18.2", "express-mysql-session": "^3.0.0", "express-session": "^1.17.3", - "mysql2": "^3.6.0" + "mysql2": "^3.6.0", + "sqlite3": "^5.1.7" }, "devDependencies": { "nodemon": "^3.0.1" @@ -24,6 +25,56 @@ "node": ">=14.0.0" } }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", + "license": "MIT", + "optional": true + }, + "node_modules/@npmcli/fs": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/@npmcli/fs/-/fs-1.1.1.tgz", + "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", + "license": "ISC", + "optional": true, + "dependencies": { + "@gar/promisify": "^1.0.1", + "semver": "^7.3.5" + } + }, + "node_modules/@npmcli/move-file": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/@npmcli/move-file/-/move-file-1.1.2.tgz", + "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", + "deprecated": "This functionality has been moved to @npmcli/fs", + "license": "MIT", + "optional": true, + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "license": "ISC", + "optional": true + }, "node_modules/accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -37,6 +88,81 @@ "node": ">= 0.6" } }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmmirror.com/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "license": "MIT", + "optional": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agent-base/node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "optional": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/agent-base/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT", + "optional": true + }, + "node_modules/agentkeepalive": { + "version": "4.6.0", + "resolved": "https://registry.npmmirror.com/agentkeepalive/-/agentkeepalive-4.6.0.tgz", + "integrity": "sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ==", + "license": "MIT", + "optional": true, + "dependencies": { + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "license": "MIT", + "optional": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=8" + } + }, "node_modules/anymatch": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", @@ -51,6 +177,28 @@ "node": ">= 8" } }, + "node_modules/aproba": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/aproba/-/aproba-2.1.0.tgz", + "integrity": "sha512-tLIEcj5GuR2RSTnxNKdkK0dJ/GrC7P38sUkiDmDuHfsHmbagTFAxDVIBltoklXEVIQ/f14IL8IMJ5pn9Hez1Ew==", + "license": "ISC", + "optional": true + }, + "node_modules/are-we-there-yet": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "deprecated": "This package is no longer supported.", + "license": "ISC", + "optional": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, "node_modules/array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", @@ -70,7 +218,27 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true, + "devOptional": true, + "license": "MIT" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmmirror.com/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT" }, "node_modules/bcryptjs": { @@ -92,6 +260,26 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmmirror.com/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "license": "MIT", + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "license": "MIT", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, "node_modules/body-parser": { "version": "1.20.4", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.4.tgz", @@ -120,7 +308,7 @@ "version": "1.1.12", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", @@ -140,6 +328,30 @@ "node": ">=8" } }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmmirror.com/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, "node_modules/bytes": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", @@ -149,6 +361,49 @@ "node": ">= 0.8" } }, + "node_modules/cacache": { + "version": "15.3.0", + "resolved": "https://registry.npmmirror.com/cacache/-/cacache-15.3.0.tgz", + "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", + "license": "ISC", + "optional": true, + "dependencies": { + "@npmcli/fs": "^1.0.0", + "@npmcli/move-file": "^1.0.1", + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "infer-owner": "^1.0.4", + "lru-cache": "^6.0.0", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.0.2", + "unique-filename": "^1.1.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cacache/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "license": "ISC", + "optional": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/call-bind-apply-helpers": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", @@ -203,13 +458,49 @@ "fsevents": "~2.3.2" } }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "license": "ISC", + "optional": true, + "bin": { + "color-support": "bin.js" + } + }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true, + "devOptional": true, "license": "MIT" }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "license": "ISC", + "optional": true + }, "node_modules/content-disposition": { "version": "0.5.4", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", @@ -268,6 +559,37 @@ "ms": "2.0.0" } }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "license": "MIT", + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmmirror.com/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "license": "MIT", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "license": "MIT", + "optional": true + }, "node_modules/denque": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/denque/-/denque-2.1.0.tgz", @@ -296,6 +618,15 @@ "npm": "1.2.8000 || >= 1.4.16" } }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, "node_modules/dotenv": { "version": "16.6.1", "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.6.1.tgz", @@ -328,6 +659,13 @@ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", "license": "MIT" }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "license": "MIT", + "optional": true + }, "node_modules/encodeurl": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", @@ -337,6 +675,55 @@ "node": ">= 0.8" } }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmmirror.com/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "license": "MIT", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "license": "MIT", + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.5", + "resolved": "https://registry.npmmirror.com/end-of-stream/-/end-of-stream-1.4.5.tgz", + "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==", + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmmirror.com/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "license": "MIT", + "optional": true + }, "node_modules/es-define-property": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", @@ -382,6 +769,15 @@ "node": ">= 0.6" } }, + "node_modules/expand-template": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/expand-template/-/expand-template-2.0.3.tgz", + "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==", + "license": "(MIT OR WTFPL)", + "engines": { + "node": ">=6" + } + }, "node_modules/express": { "version": "4.22.1", "resolved": "https://registry.npmjs.org/express/-/express-4.22.1.tgz", @@ -511,6 +907,12 @@ "node": ">= 0.8.0" } }, + "node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "license": "MIT" + }, "node_modules/fill-range": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", @@ -560,6 +962,31 @@ "node": ">= 0.6" } }, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "license": "MIT" + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "license": "ISC", + "optional": true + }, "node_modules/fsevents": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", @@ -584,6 +1011,27 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmmirror.com/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "deprecated": "This package is no longer supported.", + "license": "ISC", + "optional": true, + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, "node_modules/generate-function": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz", @@ -630,6 +1078,34 @@ "node": ">= 0.4" } }, + "node_modules/github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmmirror.com/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", + "license": "MIT" + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "license": "ISC", + "optional": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/glob-parent": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", @@ -655,6 +1131,13 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC", + "optional": true + }, "node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -677,6 +1160,13 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "license": "ISC", + "optional": true + }, "node_modules/hasown": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", @@ -689,6 +1179,13 @@ "node": ">= 0.4" } }, + "node_modules/http-cache-semantics": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", + "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==", + "license": "BSD-2-Clause", + "optional": true + }, "node_modules/http-errors": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz", @@ -709,6 +1206,95 @@ "url": "https://opencollective.com/express" } }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "license": "MIT", + "optional": true, + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-agent/node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "optional": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/http-proxy-agent/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT", + "optional": true + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "license": "MIT", + "optional": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent/node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "optional": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/https-proxy-agent/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT", + "optional": true + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", + "license": "MIT", + "optional": true, + "dependencies": { + "ms": "^2.0.0" + } + }, "node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -721,6 +1307,26 @@ "node": ">=0.10.0" } }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, "node_modules/ignore-by-default": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", @@ -728,12 +1334,67 @@ "dev": true, "license": "ISC" }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmmirror.com/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "license": "ISC", + "optional": true + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "license": "ISC", + "optional": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, "node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "license": "ISC" }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmmirror.com/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "license": "ISC" + }, + "node_modules/ip-address": { + "version": "10.1.0", + "resolved": "https://registry.npmmirror.com/ip-address/-/ip-address-10.1.0.tgz", + "integrity": "sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">= 12" + } + }, "node_modules/ipaddr.js": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", @@ -766,6 +1427,16 @@ "node": ">=0.10.0" } }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=8" + } + }, "node_modules/is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -779,6 +1450,13 @@ "node": ">=0.10.0" } }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "license": "MIT", + "optional": true + }, "node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -795,6 +1473,13 @@ "integrity": "sha512-Ks/IoX00TtClbGQr4TWXemAnktAQvYB7HzcCxDGqEZU6oCmb2INHuOoKxbtR+HFkmYWBKv/dOZtGRiAjDhj92g==", "license": "MIT" }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "license": "ISC", + "optional": true + }, "node_modules/long": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz", @@ -825,6 +1510,47 @@ "url": "https://github.com/sponsors/wellwelwel" } }, + "node_modules/make-fetch-happen": { + "version": "9.1.0", + "resolved": "https://registry.npmmirror.com/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz", + "integrity": "sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==", + "license": "ISC", + "optional": true, + "dependencies": { + "agentkeepalive": "^4.1.3", + "cacache": "^15.2.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^6.0.0", + "minipass": "^3.1.3", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^1.3.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.2", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^6.0.0", + "ssri": "^8.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/make-fetch-happen/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "license": "ISC", + "optional": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/math-intrinsics": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", @@ -894,11 +1620,23 @@ "node": ">= 0.6" } }, + "node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, + "devOptional": true, "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" @@ -907,6 +1645,128 @@ "node": "*" } }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmmirror.com/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "license": "ISC", + "optional": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-fetch": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/minipass-fetch/-/minipass-fetch-1.4.1.tgz", + "integrity": "sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==", + "license": "MIT", + "optional": true, + "dependencies": { + "minipass": "^3.1.0", + "minipass-sized": "^1.0.3", + "minizlib": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "optionalDependencies": { + "encoding": "^0.1.12" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "license": "ISC", + "optional": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmmirror.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "license": "ISC", + "optional": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "license": "ISC", + "optional": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "license": "MIT", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "license": "MIT", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmmirror.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", + "license": "MIT" + }, "node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", @@ -961,6 +1821,12 @@ "node": ">=8.0.0" } }, + "node_modules/napi-build-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/napi-build-utils/-/napi-build-utils-2.0.0.tgz", + "integrity": "sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==", + "license": "MIT" + }, "node_modules/negotiator": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", @@ -970,6 +1836,49 @@ "node": ">= 0.6" } }, + "node_modules/node-abi": { + "version": "3.85.0", + "resolved": "https://registry.npmmirror.com/node-abi/-/node-abi-3.85.0.tgz", + "integrity": "sha512-zsFhmbkAzwhTft6nd3VxcG0cvJsT70rL+BIGHWVq5fi6MwGrHwzqKaxXE+Hl2GmnGItnDKPPkO5/LQqjVkIdFg==", + "license": "MIT", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmmirror.com/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "license": "MIT" + }, + "node_modules/node-gyp": { + "version": "8.4.1", + "resolved": "https://registry.npmmirror.com/node-gyp/-/node-gyp-8.4.1.tgz", + "integrity": "sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==", + "license": "MIT", + "optional": true, + "dependencies": { + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^9.1.0", + "nopt": "^5.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": ">= 10.12.0" + } + }, "node_modules/nodemon": { "version": "3.1.11", "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.1.11.tgz", @@ -1024,6 +1933,22 @@ "dev": true, "license": "MIT" }, + "node_modules/nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "license": "ISC", + "optional": true, + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -1034,6 +1959,23 @@ "node": ">=0.10.0" } }, + "node_modules/npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmmirror.com/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "deprecated": "This package is no longer supported.", + "license": "ISC", + "optional": true, + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -1076,6 +2018,31 @@ "node": ">= 0.8" } }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmmirror.com/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "license": "MIT", + "optional": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -1085,6 +2052,16 @@ "node": ">= 0.8" } }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/path-to-regexp": { "version": "0.1.12", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", @@ -1104,6 +2081,53 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/prebuild-install": { + "version": "7.1.3", + "resolved": "https://registry.npmmirror.com/prebuild-install/-/prebuild-install-7.1.3.tgz", + "integrity": "sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==", + "license": "MIT", + "dependencies": { + "detect-libc": "^2.0.0", + "expand-template": "^2.0.3", + "github-from-package": "0.0.0", + "minimist": "^1.2.3", + "mkdirp-classic": "^0.5.3", + "napi-build-utils": "^2.0.0", + "node-abi": "^3.3.0", + "pump": "^3.0.0", + "rc": "^1.2.7", + "simple-get": "^4.0.0", + "tar-fs": "^2.0.0", + "tunnel-agent": "^0.6.0" + }, + "bin": { + "prebuild-install": "bin.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "license": "ISC", + "optional": true + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "license": "MIT", + "optional": true, + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/proxy-addr": { "version": "2.0.7", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", @@ -1124,6 +2148,16 @@ "dev": true, "license": "MIT" }, + "node_modules/pump": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/pump/-/pump-3.0.3.tgz", + "integrity": "sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==", + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, "node_modules/qs": { "version": "6.14.0", "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz", @@ -1172,6 +2206,35 @@ "node": ">= 0.8" } }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmmirror.com/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/readdirp": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", @@ -1185,6 +2248,33 @@ "node": ">=8.10.0" } }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmmirror.com/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "license": "ISC", + "optional": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -1215,7 +2305,6 @@ "version": "7.7.3", "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", - "dev": true, "license": "ISC", "bin": { "semver": "bin/semver.js" @@ -1274,6 +2363,13 @@ "node": ">= 0.8.0" } }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "license": "ISC", + "optional": true + }, "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", @@ -1352,6 +2448,58 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmmirror.com/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "license": "ISC", + "optional": true + }, + "node_modules/simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/simple-get": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "decompress-response": "^6.0.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, "node_modules/simple-update-notifier": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz", @@ -1365,6 +2513,96 @@ "node": ">=10" } }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.8.7", + "resolved": "https://registry.npmmirror.com/socks/-/socks-2.8.7.tgz", + "integrity": "sha512-HLpt+uLy/pxB+bum/9DzAgiKS8CX1EvbWxI4zlmgGCExImLdiad2iCwXT5Z4c9c3Eq8rP2318mPW2c+QbtjK8A==", + "license": "MIT", + "optional": true, + "dependencies": { + "ip-address": "^10.0.1", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/socks-proxy-agent/-/socks-proxy-agent-6.2.1.tgz", + "integrity": "sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ==", + "license": "MIT", + "optional": true, + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/socks-proxy-agent/node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "optional": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/socks-proxy-agent/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT", + "optional": true + }, + "node_modules/sqlite3": { + "version": "5.1.7", + "resolved": "https://registry.npmmirror.com/sqlite3/-/sqlite3-5.1.7.tgz", + "integrity": "sha512-GGIyOiFaG+TUra3JIfkI/zGP8yZYLPQ0pl1bH+ODjiX57sPhrLU5sQJn1y9bDKZUFYkX1crlrPfSYt0BKKdkog==", + "hasInstallScript": true, + "license": "BSD-3-Clause", + "dependencies": { + "bindings": "^1.5.0", + "node-addon-api": "^7.0.0", + "prebuild-install": "^7.1.1", + "tar": "^6.1.11" + }, + "optionalDependencies": { + "node-gyp": "8.x" + }, + "peerDependencies": { + "node-gyp": "8.x" + }, + "peerDependenciesMeta": { + "node-gyp": { + "optional": true + } + } + }, "node_modules/sqlstring": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.3.tgz", @@ -1374,6 +2612,19 @@ "node": ">= 0.6" } }, + "node_modules/ssri": { + "version": "8.0.1", + "resolved": "https://registry.npmmirror.com/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "license": "ISC", + "optional": true, + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/statuses": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz", @@ -1383,6 +2634,52 @@ "node": ">= 0.8" } }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "license": "MIT", + "optional": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "optional": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -1396,6 +2693,66 @@ "node": ">=4" } }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "license": "ISC", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar-fs": { + "version": "2.1.4", + "resolved": "https://registry.npmmirror.com/tar-fs/-/tar-fs-2.1.4.tgz", + "integrity": "sha512-mDAjwmZdh7LTT6pNleZ05Yt65HC3E+NiQzl672vQG38jIrehtJk/J3mNwIg+vShQPcLF/LV7CMnDW6vjj6sfYQ==", + "license": "MIT", + "dependencies": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "node_modules/tar-fs/node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "license": "ISC" + }, + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "license": "MIT", + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "license": "ISC", + "engines": { + "node": ">=8" + } + }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -1428,6 +2785,18 @@ "nodetouch": "bin/nodetouch.js" } }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmmirror.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "license": "Apache-2.0", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, "node_modules/type-is": { "version": "1.6.18", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", @@ -1460,6 +2829,26 @@ "dev": true, "license": "MIT" }, + "node_modules/unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "license": "ISC", + "optional": true, + "dependencies": { + "unique-slug": "^2.0.0" + } + }, + "node_modules/unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "license": "ISC", + "optional": true, + "dependencies": { + "imurmurhash": "^0.1.4" + } + }, "node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", @@ -1469,6 +2858,12 @@ "node": ">= 0.8" } }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" + }, "node_modules/utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", @@ -1486,6 +2881,44 @@ "engines": { "node": ">= 0.8" } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "license": "ISC", + "optional": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmmirror.com/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "license": "ISC", + "optional": true, + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "license": "ISC" + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "license": "ISC" } } } diff --git a/backend/package.json b/backend/package.json index a6e01ca..1ca49a0 100644 --- a/backend/package.json +++ b/backend/package.json @@ -8,14 +8,15 @@ "dev": "nodemon server.js" }, "dependencies": { - "express": "^4.18.2", - "cors": "^2.8.5", - "express-session": "^1.17.3", - "express-mysql-session": "^3.0.0", - "mysql2": "^3.6.0", "bcryptjs": "^2.4.3", + "body-parser": "^1.20.2", + "cors": "^2.8.5", "dotenv": "^16.3.1", - "body-parser": "^1.20.2" + "express": "^4.18.2", + "express-mysql-session": "^3.0.0", + "express-session": "^1.17.3", + "mysql2": "^3.6.0", + "sqlite3": "^5.1.7" }, "devDependencies": { "nodemon": "^3.0.1" @@ -23,4 +24,4 @@ "engines": { "node": ">=14.0.0" } -} \ No newline at end of file +} diff --git a/backend/routes/admin.js b/backend/routes/admin.js index 1607657..ead3be6 100644 --- a/backend/routes/admin.js +++ b/backend/routes/admin.js @@ -3,7 +3,42 @@ const router = express.Router(); const AdminController = require('../controllers/adminController'); const { requireAuth, requireRole } = require('../middleware/auth'); +router.get('/stats', requireAuth, requireRole(['admin']), AdminController.getStats); router.get('/users', requireAuth, requireRole(['admin']), AdminController.getUsers); router.post('/users', requireAuth, requireRole(['admin']), AdminController.createUser); +router.put('/users/:id', requireAuth, requireRole(['admin']), AdminController.updateUser); +router.delete('/users/:id', requireAuth, requireRole(['admin']), AdminController.deleteUser); + +// Student Management +router.get('/students', requireAuth, requireRole(['admin']), AdminController.getStudents); +router.post('/students', requireAuth, requireRole(['admin']), AdminController.createStudent); +router.put('/students/:id', requireAuth, requireRole(['admin']), AdminController.updateStudent); +router.delete('/students/:id', requireAuth, requireRole(['admin']), AdminController.deleteStudent); + +// Teacher Management +router.get('/teachers', requireAuth, requireRole(['admin']), AdminController.getTeachers); +router.post('/teachers', requireAuth, requireRole(['admin']), AdminController.createTeacher); +router.put('/teachers/:id', requireAuth, requireRole(['admin']), AdminController.updateTeacher); +router.delete('/teachers/:id', requireAuth, requireRole(['admin']), AdminController.deleteTeacher); + +// Grade Statistics +router.get('/grade-stats', requireAuth, requireRole(['admin']), AdminController.getGradeStats); + +// System Settings +router.get('/settings', requireAuth, requireRole(['admin']), AdminController.getSettings); +router.post('/settings', requireAuth, requireRole(['admin']), AdminController.saveSettings); + +// Data Maintenance +router.post('/maintenance/backup', requireAuth, requireRole(['admin']), AdminController.backupDatabase); +router.post('/maintenance/clear-cache', requireAuth, requireRole(['admin']), AdminController.clearCache); +router.post('/maintenance/reset-passwords', requireAuth, requireRole(['admin']), AdminController.resetStudentPasswords); + +// Data Export +router.get('/export/students', requireAuth, requireRole(['admin']), AdminController.exportStudents); +router.get('/export/teachers', requireAuth, requireRole(['admin']), AdminController.exportTeachers); +router.get('/export/grades', requireAuth, requireRole(['admin']), AdminController.exportGrades); + +// Operation Logs +router.get('/logs', requireAuth, requireRole(['admin']), AdminController.getOperationLogs); module.exports = router; \ No newline at end of file diff --git a/backend/routes/auth.js b/backend/routes/auth.js index a5d57a2..0ed96b5 100644 --- a/backend/routes/auth.js +++ b/backend/routes/auth.js @@ -8,5 +8,6 @@ router.post('/register', AuthController.register); router.post('/logout', AuthController.logout); router.get('/me', AuthController.getCurrentUser); router.put('/update-password', requireAuth, AuthController.updatePassword); +router.put('/update-profile', requireAuth, AuthController.updateProfile); module.exports = router; \ No newline at end of file diff --git a/backend/routes/teacher.js b/backend/routes/teacher.js index 0a7f48a..5e32ea6 100644 --- a/backend/routes/teacher.js +++ b/backend/routes/teacher.js @@ -4,6 +4,11 @@ const TeacherController = require('../controllers/teacherController'); const { requireAuth, requireRole } = require('../middleware/auth'); router.get('/courses', requireAuth, requireRole(['teacher']), TeacherController.getCourses); +router.get('/classes', requireAuth, requireRole(['teacher']), TeacherController.getClasses); +router.get('/my-classes', requireAuth, requireRole(['teacher']), TeacherController.getMyClasses); +router.post('/courses', requireAuth, requireRole(['teacher']), TeacherController.createCourse); +router.put('/courses/:id', requireAuth, requireRole(['teacher']), TeacherController.updateCourse); +router.get('/grades', requireAuth, requireRole(['teacher']), TeacherController.getGrades); router.post('/grades', requireAuth, requireRole(['teacher']), TeacherController.addScore); module.exports = router; \ No newline at end of file diff --git a/backend/scripts/fix_teachers.js b/backend/scripts/fix_teachers.js new file mode 100644 index 0000000..ad5cb02 --- /dev/null +++ b/backend/scripts/fix_teachers.js @@ -0,0 +1,31 @@ +const db = require('../config/database'); + +async function fixTeachers() { + const departments = ['计算机学院', '软件学院', '信息工程学院', '理学院', '外国语学院']; + const titles = ['教授', '副教授', '讲师', '助教']; + + try { + const teachers = await db.query('SELECT id FROM teachers'); + for (let i = 0; i < teachers.length; i++) { + const dept = departments[i % departments.length]; + const title = titles[i % titles.length]; + const contact = `139${Math.floor(Math.random() * 90000000 + 10000000)}`; + + await db.query( + 'UPDATE teachers SET department = ?, title = ?, contact_info = ? WHERE id = ?', + [dept, title, contact, teachers[i].id] + ); + + // Also sync back to users table's class field if needed (though we'll use teachers table now) + await db.query( + 'UPDATE users SET class = ? WHERE id = ?', + [dept, teachers[i].id] + ); + } + console.log('教师信息修复完成!'); + } catch (err) { + console.error('修复失败:', err); + } +} + +fixTeachers(); diff --git a/backend/scripts/migrate_v2.js b/backend/scripts/migrate_v2.js new file mode 100644 index 0000000..eb084b2 --- /dev/null +++ b/backend/scripts/migrate_v2.js @@ -0,0 +1,48 @@ +const db = require('../config/database'); + +async function migrate() { + try { + console.log('Starting migration v2...'); + + // 1. System Settings Table + await db.query(` + CREATE TABLE IF NOT EXISTS system_settings ( + key TEXT PRIMARY KEY, + value TEXT + ) + `); + + // Default settings + const defaultSettings = [ + ['system_name', '学校成绩管理系统'], + ['current_semester', '2023-2024-2'], + ['allow_course_selection', '1'], + ['allow_grade_check', '1'] + ]; + + for (const [key, value] of defaultSettings) { + await db.query('INSERT OR IGNORE INTO system_settings (key, value) VALUES (?, ?)', [key, value]); + } + + // 2. Operation Logs Table + await db.query(` + CREATE TABLE IF NOT EXISTS operation_logs ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + user_id TEXT, + operation_type TEXT, + operation_target TEXT, + description TEXT, + ip_address TEXT, + created_at TEXT DEFAULT (datetime('now', 'localtime')) + ) + `); + + console.log('Migration v2 completed successfully.'); + process.exit(0); + } catch (error) { + console.error('Migration v2 failed:', error); + process.exit(1); + } +} + +migrate(); diff --git a/backend/scripts/migrate_v3.js b/backend/scripts/migrate_v3.js new file mode 100644 index 0000000..fee0325 --- /dev/null +++ b/backend/scripts/migrate_v3.js @@ -0,0 +1,33 @@ +const db = require('../config/database'); + +async function migrate() { + console.log('开始执行 v3 迁移: 创建 teachers 表...'); + + try { + await db.query(` + CREATE TABLE IF NOT EXISTS teachers ( + id TEXT PRIMARY KEY, + name TEXT NOT NULL, + department TEXT, + title TEXT, + contact_info TEXT, + FOREIGN KEY (id) REFERENCES users(id) ON DELETE CASCADE + ) + `); + + // 从 users 表中迁移现有的教师数据 + const teachers = await db.query('SELECT id, name, class FROM users WHERE role = "teacher"'); + for (const t of teachers) { + await db.query( + 'INSERT OR IGNORE INTO teachers (id, name, department) VALUES (?, ?, ?)', + [t.id, t.name, t.class] + ); + } + + console.log('v3 迁移成功!'); + } catch (err) { + console.error('v3 迁移失败:', err); + } +} + +migrate(); diff --git a/backend/server.js b/backend/server.js index abd23d3..9615aa2 100644 --- a/backend/server.js +++ b/backend/server.js @@ -1,7 +1,7 @@ const express = require('express'); const cors = require('cors'); const session = require('express-session'); -const MySQLStore = require('express-mysql-session')(session); +// const MySQLStore = require('express-mysql-session')(session); const path = require('path'); require('dotenv').config(); @@ -28,6 +28,7 @@ app.use(express.json()); app.use(express.urlencoded({ extended: true })); // Session +/* const sessionStore = new MySQLStore({ expiration: 86400000, createDatabaseTable: true, @@ -40,11 +41,12 @@ const sessionStore = new MySQLStore({ } } }, db.pool); +*/ app.use(session({ key: 'session_cookie', secret: process.env.SESSION_SECRET || 'your-secret-key', - store: sessionStore, + // store: sessionStore, // Use MemoryStore for SQLite migration simplification resave: false, saveUninitialized: false, cookie: { @@ -112,14 +114,20 @@ teacherPageRouter.use(requirePageAuth, requirePageRole(['teacher'])); teacherPageRouter.get('/dashboard', (req, res) => res.sendFile(path.join(__dirname, '../frontend/views/teacher/dashboard.html'))); teacherPageRouter.get('/grade_entry', (req, res) => res.sendFile(path.join(__dirname, '../frontend/views/teacher/grade_entry.html'))); teacherPageRouter.get('/grade_management', (req, res) => res.sendFile(path.join(__dirname, '../frontend/views/teacher/grade_management.html'))); +teacherPageRouter.get('/profile', (req, res) => res.sendFile(path.join(__dirname, '../frontend/views/teacher/profile.html'))); app.use('/teacher', teacherPageRouter); // Admin Pages const adminPageRouter = express.Router(); adminPageRouter.use(requirePageAuth, requirePageRole(['admin'])); adminPageRouter.get('/dashboard', (req, res) => res.sendFile(path.join(__dirname, '../frontend/views/admin/dashboard.html'))); -adminPageRouter.get('/student_management', (req, res) => res.sendFile(path.join(__dirname, '../frontend/views/admin/student_management.html'))); adminPageRouter.get('/user_management', (req, res) => res.sendFile(path.join(__dirname, '../frontend/views/admin/user_management.html'))); +adminPageRouter.get('/student_management', (req, res) => res.sendFile(path.join(__dirname, '../frontend/views/admin/student_management.html'))); +adminPageRouter.get('/teacher_management', (req, res) => res.sendFile(path.join(__dirname, '../frontend/views/admin/teacher_management.html'))); +adminPageRouter.get('/grade_statistics', (req, res) => res.sendFile(path.join(__dirname, '../frontend/views/admin/grade_statistics.html'))); +adminPageRouter.get('/system_settings', (req, res) => res.sendFile(path.join(__dirname, '../frontend/views/admin/system_settings.html'))); +adminPageRouter.get('/data_export', (req, res) => res.sendFile(path.join(__dirname, '../frontend/views/admin/data_export.html'))); +adminPageRouter.get('/operation_logs', (req, res) => res.sendFile(path.join(__dirname, '../frontend/views/admin/operation_logs.html'))); app.use('/admin', adminPageRouter); // --- API Routes --- diff --git a/backend/services/adminService.js b/backend/services/adminService.js index acc072b..dbabb7c 100644 --- a/backend/services/adminService.js +++ b/backend/services/adminService.js @@ -1,10 +1,17 @@ const db = require('../config/database'); const bcrypt = require('bcryptjs'); const User = require('../models/User'); +const Student = require('../models/Student'); +const Teacher = require('../models/Teacher'); +const SystemSetting = require('../models/SystemSetting'); +const OperationLog = require('../models/OperationLog'); class AdminService { static async getUsers(params) { - const { page = 1, limit = 10, search = '', role = '' } = params; + const page = parseInt(params.page) || 1; + const limit = parseInt(params.limit) || 10; + const search = params.search || ''; + const role = params.role || ''; const offset = (page - 1) * limit; let queryStr = 'SELECT id, name, role, class, created_at FROM users WHERE 1=1'; @@ -28,9 +35,9 @@ class AdminService { // Data queryStr += ' ORDER BY created_at DESC LIMIT ? OFFSET ?'; - queryParams.push(parseInt(limit), parseInt(offset)); + const dataQueryParams = [...queryParams, limit, offset]; - const users = await db.query(queryStr, queryParams); + const users = await db.query(queryStr, dataQueryParams); return { data: users, @@ -43,8 +50,22 @@ class AdminService { }; } - static async createUser(userData) { - const { id } = userData; + static async getStats() { + const usersCount = await db.query('SELECT COUNT(*) as count FROM users'); + const studentsCount = await db.query('SELECT COUNT(*) as count FROM students'); + const teachersCount = await db.query('SELECT COUNT(*) as count FROM users WHERE role = "teacher"'); + const coursesCount = await db.query('SELECT COUNT(*) as count FROM courses'); + + return { + users: usersCount[0].count, + students: studentsCount[0].count, + teachers: teachersCount[0].count, + courses: coursesCount[0].count + }; + } + + static async createUser(userData, operator) { + const { id, role, name } = userData; // 检查 ID const existingUser = await User.findById(id); @@ -53,7 +74,445 @@ class AdminService { } // 创建用户 - return await User.create(userData); + const userId = await User.create(userData); + + // 如果是学生,同时创建学生记录 + if (role === 'student') { + await Student.create(userData); + } else if (role === 'teacher') { + await Teacher.create({ + id, + name, + department: userData.class || '' + }); + } + + if (operator) { + await OperationLog.add({ + user_id: operator.user_id, + type: '用户管理', + target: `user:${id}`, + description: `创建了${role === 'student' ? '学生' : (role === 'teacher' ? '教师' : '管理员')}用户: ${name}(${id})`, + ip: operator.ip + }); + } + + return userId; + } + + static async updateUser(id, userData, operator) { + // 如果修改密码 + if (userData.password) { + const salt = await bcrypt.genSalt(10); + userData.password = await bcrypt.hash(userData.password, salt); + } else { + delete userData.password; + } + + const fields = []; + const values = []; + + if (userData.name) { fields.push('name = ?'); values.push(userData.name); } + if (userData.role) { fields.push('role = ?'); values.push(userData.role); } + if (userData.class !== undefined) { fields.push('class = ?'); values.push(userData.class); } // class can be empty string + if (userData.password) { fields.push('password = ?'); values.push(userData.password); } + + if (fields.length === 0) return true; + + values.push(id); + const sql = `UPDATE users SET ${fields.join(', ')} WHERE id = ?`; + + const result = await db.query(sql, values); + + if (operator) { + await OperationLog.add({ + user_id: operator.user_id, + type: '用户管理', + target: `user:${id}`, + description: `修改了用户信息: ${id}`, + ip: operator.ip + }); + } + + return result.affectedRows > 0; + } + + static async deleteUser(id, operator) { + // 删除用户 + await Student.delete(id); + await Teacher.delete(id); + const result = await db.query('DELETE FROM users WHERE id = ?', [id]); + + if (operator) { + await OperationLog.add({ + user_id: operator.user_id, + type: '用户管理', + target: `user:${id}`, + description: `删除了用户: ${id}`, + ip: operator.ip + }); + } + + return result.affectedRows > 0; + } + + // ================= Student Management ================= + static async getStudents(params) { + const page = parseInt(params.page) || 1; + const limit = parseInt(params.limit) || 10; + const search = params.search || ''; + const offset = (page - 1) * limit; + + let queryStr = 'SELECT * FROM students WHERE 1=1'; + let queryParams = []; + + if (search) { + queryStr += ' AND (id LIKE ? OR name LIKE ? OR class LIKE ?)'; + const searchTerm = `%${search}%`; + queryParams.push(searchTerm, searchTerm, searchTerm); + } + + // Count + const countSql = queryStr.replace('SELECT *', 'SELECT COUNT(*) as total'); + const countRows = await db.query(countSql, queryParams); + const total = countRows[0].total; + + // Data + queryStr += ' ORDER BY id ASC LIMIT ? OFFSET ?'; + const dataQueryParams = [...queryParams, limit, offset]; + + const students = await db.query(queryStr, dataQueryParams); + + return { + data: students, + pagination: { + page: parseInt(page), + limit: parseInt(limit), + total, + pages: Math.ceil(total / limit) + } + }; + } + + static async createStudent(studentData, operator) { + const { id, name, class: className } = studentData; + + // Check ID + const existing = await User.findById(id); + if (existing) throw new Error('学号已存在'); + + // Create User first + await User.create({ + id, + name, + password: id, // Default password + role: 'student', + class: className + }); + + // Create Student + await Student.create(studentData); + + if (operator) { + await OperationLog.add({ + user_id: operator.user_id, + type: '学生管理', + target: `student:${id}`, + description: `创建了学生: ${name}(${id})`, + ip: operator.ip + }); + } + + return id; + } + + static async updateStudent(id, data, operator) { + // Update students table + await Student.update(id, data); + + // Sync User table (name, class) + const userFields = []; + const userValues = []; + if (data.name) { userFields.push('name = ?'); userValues.push(data.name); } + if (data.class) { userFields.push('class = ?'); userValues.push(data.class); } + + if (userFields.length > 0) { + userValues.push(id); + await db.query(`UPDATE users SET ${userFields.join(', ')} WHERE id = ?`, userValues); + } + + if (operator) { + await OperationLog.add({ + user_id: operator.user_id, + type: '学生管理', + target: `student:${id}`, + description: `修改了学生信息: ${id}`, + ip: operator.ip + }); + } + + return true; + } + + static async deleteStudent(id, operator) { + await Student.delete(id); + await db.query('DELETE FROM users WHERE id = ?', [id]); + + if (operator) { + await OperationLog.add({ + user_id: operator.user_id, + type: '学生管理', + target: `student:${id}`, + description: `删除了学生: ${id}`, + ip: operator.ip + }); + } + + return true; + } + + // ================= Teacher Management ================= + static async getTeachers(params) { + const page = parseInt(params.page) || 1; + const limit = parseInt(params.limit) || 10; + const search = params.search || ''; + const offset = (page - 1) * limit; + + let queryStr = 'SELECT t.*, u.created_at FROM teachers t JOIN users u ON t.id = u.id WHERE 1=1'; + let queryParams = []; + + if (search) { + queryStr += ' AND (t.id LIKE ? OR t.name LIKE ? OR t.department LIKE ?)'; + const searchTerm = `%${search}%`; + queryParams.push(searchTerm, searchTerm, searchTerm); + } + + // Count + const countSql = `SELECT COUNT(*) as total FROM teachers t WHERE 1=1 ${search ? 'AND (t.id LIKE ? OR t.name LIKE ? OR t.department LIKE ?)' : ''}`; + const countRows = await db.query(countSql, queryParams); + const total = countRows[0].total; + + // Data + queryStr += ' ORDER BY t.id ASC LIMIT ? OFFSET ?'; + const dataQueryParams = [...queryParams, limit, offset]; + + const teachers = await db.query(queryStr, dataQueryParams); + + return { + data: teachers, + pagination: { + page: parseInt(page), + limit: parseInt(limit), + total, + pages: Math.ceil(total / limit) + } + }; + } + + static async createTeacher(teacherData, operator) { + const { id, name, department } = teacherData; + + // Check ID + const existing = await User.findById(id); + if (existing) throw new Error('工号已存在'); + + // Create User + await User.create({ + id, + name, + password: id, // Default password + role: 'teacher', + class: department // Use class field for department in user table + }); + + // Create Teacher + await Teacher.create(teacherData); + + if (operator) { + await OperationLog.add({ + user_id: operator.user_id, + type: '教师管理', + target: `teacher:${id}`, + description: `创建了教师: ${name}(${id})`, + ip: operator.ip + }); + } + + return id; + } + + static async updateTeacher(id, data, operator) { + await Teacher.update(id, data); + + // Sync User table (name, department) + const userFields = []; + const userValues = []; + if (data.name) { userFields.push('name = ?'); userValues.push(data.name); } + if (data.department) { userFields.push('class = ?'); userValues.push(data.department); } + + if (userFields.length > 0) { + userValues.push(id); + await db.query(`UPDATE users SET ${userFields.join(', ')} WHERE id = ?`, userValues); + } + + if (operator) { + await OperationLog.add({ + user_id: operator.user_id, + type: '教师管理', + target: `teacher:${id}`, + description: `修改了教师信息: ${id}`, + ip: operator.ip + }); + } + + return true; + } + + static async deleteTeacher(id, operator) { + await Teacher.delete(id); + await db.query('DELETE FROM users WHERE id = ?', [id]); + + if (operator) { + await OperationLog.add({ + user_id: operator.user_id, + type: '教师管理', + target: `teacher:${id}`, + description: `删除了教师: ${id}`, + ip: operator.ip + }); + } + + return true; + } + + // ================= Grade Statistics ================= + static async getGradeStats() { + const sql = ` + SELECT + c.course_code, + c.course_name, + u.name as teacher_name, + COUNT(g.student_id) as student_count, + AVG(g.total_score) as avg_score, + MAX(g.total_score) as max_score, + MIN(g.total_score) as min_score, + SUM(CASE WHEN g.total_score >= 60 THEN 1 ELSE 0 END) as pass_count + FROM courses c + LEFT JOIN grades g ON c.id = g.course_id + LEFT JOIN users u ON c.teacher_id = u.id + GROUP BY c.id + ORDER BY avg_score DESC + `; + + const rows = await db.query(sql); + + return rows.map(row => ({ + ...row, + pass_rate: row.student_count > 0 ? ((row.pass_count / row.student_count) * 100).toFixed(1) : 0, + avg_score: row.avg_score ? Number(row.avg_score).toFixed(1) : 0 + })); + } + + // ================= System Settings ================= + static async getSettings() { + return await SystemSetting.getAll(); + } + + static async saveSettings(settings, operator) { + await SystemSetting.setMany(settings); + await OperationLog.add({ + user_id: operator.user_id, + type: '系统设置', + target: 'system_settings', + description: '修改了系统基础设置', + ip: operator.ip + }); + return true; + } + + // ================= Data Maintenance ================= + static async backupDatabase(operator) { + const path = require('path'); + const fs = require('fs'); + const source = path.resolve(__dirname, '../database.sqlite'); + const timestamp = new Date().toISOString().replace(/[:.]/g, '-'); + const backupDir = path.resolve(__dirname, '../backups'); + const target = path.resolve(backupDir, `database-${timestamp}.sqlite`); + + if (!fs.existsSync(backupDir)) { + fs.mkdirSync(backupDir); + } + + fs.copyFileSync(source, target); + + await OperationLog.add({ + user_id: operator.user_id, + type: '数据维护', + target: 'database', + description: `手动备份数据库: ${path.basename(target)}`, + ip: operator.ip + }); + + return { filename: path.basename(target) }; + } + + static async clearCache(operator) { + await OperationLog.add({ + user_id: operator.user_id, + type: '数据维护', + target: 'cache', + description: '清理系统缓存', + ip: operator.ip + }); + return true; + } + + static async resetStudentPasswords(operator) { + const hashedPassword = await bcrypt.hash('123456', 10); + await db.query('UPDATE users SET password = ? WHERE role = "student"', [hashedPassword]); + + await OperationLog.add({ + user_id: operator.user_id, + type: '数据维护', + target: 'users', + description: '重置了所有学生的密码为 123456', + ip: operator.ip + }); + + return true; + } + + // ================= Operation Logs ================= + static async getLogs(params) { + return await OperationLog.findAll(params); + } + + // ================= Data Export ================= + static async exportStudents() { + return await db.query('SELECT * FROM students'); + } + + static async exportTeachers() { + return await db.query('SELECT t.*, u.created_at FROM teachers t JOIN users u ON t.id = u.id'); + } + + static async exportGrades() { + const sql = ` + SELECT + g.student_id, + s.name as student_name, + c.course_code, + c.course_name, + g.total_score, + g.grade_point, + g.grade_level, + u.name as teacher_name + FROM grades g + JOIN students s ON g.student_id = s.id + JOIN courses c ON g.course_id = c.id + JOIN users u ON g.teacher_id = u.id + `; + return await db.query(sql); } } diff --git a/backend/services/authService.js b/backend/services/authService.js index be818f3..9cd80cd 100644 --- a/backend/services/authService.js +++ b/backend/services/authService.js @@ -70,6 +70,36 @@ class AuthService { return await User.updatePassword(userId, newPassword); } + + static async updateProfile(userId, updateData) { + await User.updateProfile(userId, updateData); + const updatedUser = await User.findById(userId); + + // 如果是学生,同步更新 students 表 + if (updatedUser.role === 'student') { + const studentFields = []; + const studentParams = []; + if (updateData.name) { + studentFields.push('name = ?'); + studentParams.push(updateData.name); + } + if (updateData.class) { + studentFields.push('class = ?'); + studentParams.push(updateData.class); + } + if (studentFields.length > 0) { + studentParams.push(userId); + await db.query(`UPDATE students SET ${studentFields.join(', ')} WHERE id = ?`, studentParams); + } + } + + return { + id: updatedUser.id, + name: updatedUser.name, + role: updatedUser.role, + class: updatedUser.class + }; + } } module.exports = AuthService; diff --git a/backend/services/teacherService.js b/backend/services/teacherService.js index ac73c3e..9b90bdd 100644 --- a/backend/services/teacherService.js +++ b/backend/services/teacherService.js @@ -7,8 +7,39 @@ class TeacherService { return await Course.findByTeacherId(teacherId); } + static async getClasses() { + return await Course.getClasses(); + } + + static async getTeacherClasses(teacherId) { + const sql = `SELECT * FROM classes WHERE teacher_id = ?`; + const db = require('../config/database'); + return await db.query(sql, [teacherId]); + } + + static async createCourse(teacherId, courseData) { + return await Course.create({ ...courseData, teacher_id: teacherId }); + } + + static async updateCourse(teacherId, courseId, courseData) { + // Verify ownership + const course = await Course.findById(courseId); + if (!course || course.teacher_id != teacherId) { + throw new Error('无权修改该课程或课程不存在'); + } + return await Course.update(courseId, courseData); + } + + static async getGrades(teacherId, filters) { + if (filters.courseId) { + return await Score.findCourseStudentsWithGrades(filters.courseId, teacherId); + } else { + return await Score.findByTeacher(teacherId, filters); + } + } + static async addScore(teacherId, scoreData) { - const { studentId, courseId, score } = scoreData; + let { studentId, courseId, score, usual_score, midterm_score, final_score } = scoreData; // 验证学生 const student = await Student.findById(studentId); @@ -16,13 +47,12 @@ class TeacherService { throw new Error('学生不存在'); } - // 验证课程(可选:验证是否是该教师的课程) - // const course = await Course.findById(courseId); - - // 检查重复 - const existingScore = await Score.findByStudentAndCourse(studentId, courseId); - if (existingScore) { - throw new Error('该学生此课程成绩已存在'); + // 如果没有总分但有平时/期中/期末分,尝试计算总分 (30% + 30% + 40%) + if ((score === undefined || score === '') && (usual_score || midterm_score || final_score)) { + const u = parseFloat(usual_score) || 0; + const m = parseFloat(midterm_score) || 0; + const f = parseFloat(final_score) || 0; + score = (u * 0.3 + m * 0.3 + f * 0.4).toFixed(1); } // 计算绩点和等级 @@ -30,19 +60,33 @@ class TeacherService { let gradePoint = 0; let gradeLevel = 'F'; - if (numericScore >= 90) { gradePoint = 4.0; gradeLevel = 'A'; } - else if (numericScore >= 80) { gradePoint = 3.0; gradeLevel = 'B'; } - else if (numericScore >= 70) { gradePoint = 2.0; gradeLevel = 'C'; } - else if (numericScore >= 60) { gradePoint = 1.0; gradeLevel = 'D'; } + if (!isNaN(numericScore)) { + if (numericScore >= 90) { gradePoint = 4.0; gradeLevel = 'A'; } + else if (numericScore >= 85) { gradePoint = 3.7; gradeLevel = 'A-'; } + else if (numericScore >= 82) { gradePoint = 3.3; gradeLevel = 'B+'; } + else if (numericScore >= 78) { gradePoint = 3.0; gradeLevel = 'B'; } + else if (numericScore >= 75) { gradePoint = 2.7; gradeLevel = 'B-'; } + else if (numericScore >= 72) { gradePoint = 2.3; gradeLevel = 'C+'; } + else if (numericScore >= 68) { gradePoint = 2.0; gradeLevel = 'C'; } + else if (numericScore >= 64) { gradePoint = 1.5; gradeLevel = 'C-'; } + else if (numericScore >= 60) { gradePoint = 1.0; gradeLevel = 'D'; } + } else { + gradePoint = null; + gradeLevel = null; + } const fullScoreData = { ...scoreData, + score, // 更新后的总分 teacherId, gradePoint, - gradeLevel + gradeLevel, + usual_score, + midterm_score, + final_score }; - const gradeId = await Score.create(fullScoreData); + const gradeId = await Score.upsert(fullScoreData); return gradeId; } } diff --git a/database.sqlite b/database.sqlite new file mode 100644 index 0000000..e69de29 diff --git a/frontend/public/js/admin.js b/frontend/public/js/admin.js index b7eae66..faefaec 100644 --- a/frontend/public/js/admin.js +++ b/frontend/public/js/admin.js @@ -1,583 +1,979 @@ -class AdminDashboard { +/** + * 管理员端功能管理 + */ +class AdminManager { constructor() { - // 动态设置API基础URL,支持file:///协议和localhost:3000访问 - this.apiBase = window.location.protocol === 'file:' ? 'http://localhost:3000/api' : '/api'; - this.currentUser = null; - this.stats = {}; - this.users = []; - this.students = []; - this.teachers = []; + this.apiBase = '/api/admin'; this.init(); } - + async init() { - // 检查登录状? if (!await this.checkAuth()) { - window.location.href = '/login'; - return; - } - - // 加载用户信息 + this.updateCurrentTime(); + setInterval(() => this.updateCurrentTime(), 1000); await this.loadUserInfo(); - // 加载统计数据 - await this.loadStats(); - - // 加载用户数据 - await this.loadUsers(); - - // 绑定事件 - this.bindEvents(); - - // 更新界面 - this.updateUI(); - - // 初始化图? this.initCharts(); - } + // 页面路由逻辑 + const path = window.location.pathname; + if (path.includes('/dashboard')) { + this.initDashboard(); + } else if (path.includes('/user_management')) { + this.initUserManagement(); + } else if (path.includes('/student_management')) { + this.initStudentManagement(); + } else if (path.includes('/teacher_management')) { + this.initTeacherManagement(); + } else if (path.includes('/grade_statistics')) { + this.initGradeStatistics(); + } else if (path.includes('/system_settings')) { + this.initSystemSettings(); + } else if (path.includes('/data_export')) { + this.initDataExport(); + } else if (path.includes('/operation_logs')) { + this.initOperationLogs(); + } - async checkAuth() { - try { - const response = await fetch(`${this.apiBase}/auth/me`, { - credentials: 'include' + // Logout + const logoutBtn = document.getElementById('logoutBtn'); + if (logoutBtn) { + logoutBtn.addEventListener('click', async (e) => { + e.preventDefault(); + if (confirm('确定要退出登录吗?')) { + try { + const res = await fetch('/api/auth/logout', { method: 'POST' }); + const result = await res.json(); + if (result.success) { + alert('退出登录成功'); + window.location.href = '/login'; + } else { + alert(result.message || '退出登录失败'); + } + } catch (e) { + console.error('Logout failed', e); + alert('退出登录出错: ' + e.message); + } + } }); - - if (!response.ok) { - return false; - } - - const data = await response.json(); - return data.success && data.user.role === 'admin'; - } catch (error) { - console.error('认证检查失?', error); - return false; + } + } + + updateCurrentTime() { + const timeElement = document.getElementById('currentTime'); + if (timeElement) { + const now = new Date(); + const options = { + year: 'numeric', month: 'long', day: 'numeric', + hour: '2-digit', minute: '2-digit', second: '2-digit' + }; + timeElement.textContent = now.toLocaleString('zh-CN', options); } } async loadUserInfo() { try { - const response = await fetch(`${this.apiBase}/auth/me`, { - credentials: 'include' - }); - - if (response.ok) { - const data = await response.json(); - if (data.success) { - this.currentUser = data.user; - } + const res = await fetch('/api/auth/me'); + const result = await res.json(); + if (result.success && result.data.user) { + const user = result.data.user; + this.user = user; + + const nameEls = document.querySelectorAll('#adminName, #userName'); + nameEls.forEach(el => el.textContent = user.name || '管理员'); } } catch (error) { - console.error('加载用户信息失败:', error); + console.error('Load user info failed:', error); } } - - async loadStats() { + + // ================= Dashboard ================= + async initDashboard() { try { - const response = await fetch(`${this.apiBase}/admin/stats`, { - credentials: 'include' - }); + const res = await fetch(`${this.apiBase}/stats`); + const result = await res.json(); - if (response.ok) { - const data = await response.json(); - if (data.success) { - this.stats = data.stats; - this.updateStatsUI(); - } + if (result.success) { + const stats = result.data; + if (document.getElementById('totalUsers')) document.getElementById('totalUsers').textContent = stats.users; + if (document.getElementById('totalStudents')) document.getElementById('totalStudents').textContent = stats.students; + if (document.getElementById('totalTeachers')) document.getElementById('totalTeachers').textContent = stats.teachers; + if (document.getElementById('totalCourses')) document.getElementById('totalCourses').textContent = stats.courses; } - } catch (error) { - console.error('加载统计数据失败:', error); - this.showNotification('加载统计数据失败', 'error'); + } catch (e) { + console.error('Load stats failed', e); } } - async loadUsers() { - try { - const response = await fetch(`${this.apiBase}/admin/users`, { - credentials: 'include' - }); - - if (response.ok) { - const data = await response.json(); - if (data.success) { - this.users = data.users; - this.renderUsersTable(); - } - } - } catch (error) { - console.error('加载用户数据失败:', error); - this.showNotification('加载用户数据失败', 'error'); - } - } - - updateStatsUI() { - // 更新统计卡片 - const statElements = { - 'totalUsers': 'totalUsers', - 'totalStudents': 'totalStudents', - 'totalTeachers': 'totalTeachers', - 'totalCourses': 'totalCourses', - 'totalGrades': 'totalGrades', - 'avgScore': 'avgScore' - }; - - Object.entries(statElements).forEach(([key, elementId]) => { - const element = document.getElementById(elementId); - if (element && this.stats[key] !== undefined) { - element.textContent = this.stats[key]; - } + // ================= User Management ================= + async initUserManagement() { + this.currentPage = 1; + this.pageSize = 10; + + // Bind Filter Events + document.getElementById('search').addEventListener('input', () => this.loadUsers()); + document.getElementById('roleFilter').addEventListener('change', () => this.loadUsers()); + + // Bind Modal Events + const modalEl = document.getElementById('userModal'); + this.userModal = new bootstrap.Modal(modalEl); + + document.getElementById('addUserBtn').addEventListener('click', () => { + document.getElementById('userForm').reset(); + document.getElementById('userModalTitle').textContent = '新增用户'; + document.getElementById('isEdit').value = 'false'; + document.getElementById('userId').readOnly = false; + this.userModal.show(); }); - - // 更新时间 - const timeElement = document.getElementById('currentTime'); - if (timeElement) { - timeElement.textContent = new Date().toLocaleString(); + + document.getElementById('saveUserBtn').addEventListener('click', () => this.saveUser()); + + // Initial Load + await this.loadUsers(); + } + + async loadUsers() { + const search = document.getElementById('search').value; + const role = document.getElementById('roleFilter').value; + const tbody = document.getElementById('userTableBody'); + + tbody.innerHTML = '加载中...'; + + try { + const query = new URLSearchParams({ + page: this.currentPage, + limit: this.pageSize, + search, + role + }); + + const res = await fetch(`${this.apiBase}/users?${query}`); + const result = await res.json(); + + if (result.success) { + this.renderUserTable(result.data, result.pagination); + } else { + tbody.innerHTML = `${result.message}`; + } + } catch (e) { + console.error(e); + tbody.innerHTML = '加载失败'; } } - - renderUsersTable() { - const tableBody = document.getElementById('usersTableBody'); - if (!tableBody) return; - - if (this.users.length === 0) { - tableBody.innerHTML = ` - - -

- - - `; + + renderUserTable(users, pagination) { + const tbody = document.getElementById('userTableBody'); + + if (users.length === 0) { + tbody.innerHTML = '暂无用户'; return; } - - tableBody.innerHTML = this.users.map(user => { - const roleClass = this.getRoleClass(user.role); - return ` - - - ${user.user_id} - ${user.full_name} - ${user.role} - ${user.class_name || 'N/A'} - ${user.email || 'N/A'} - -
- - -
- - - `; - }).join(''); - } - - getRoleClass(role) { - switch (role) { - case 'admin': return 'role-admin'; - case 'teacher': return 'role-teacher'; - case 'student': return 'role-student'; - default: return 'role-default'; - } - } - - bindEvents() { - // 导航菜单点击 - document.querySelectorAll('.nav-link').forEach(link => { - link.addEventListener('click', (e) => { - e.preventDefault(); - const page = link.dataset.page; - this.loadPage(page); + + tbody.innerHTML = users.map(u => ` + + ${u.id} + ${u.name} + ${this.getRoleName(u.role)} + ${u.class || '-'} + ${new Date(u.created_at).toLocaleDateString()} + + + + + + `).join(''); + + // Bind Action Buttons + document.querySelectorAll('.btn-edit-user').forEach(btn => { + btn.addEventListener('click', () => { + const user = JSON.parse(btn.dataset.user); + this.openEditUserModal(user); }); }); - - // 搜索按钮 - document.getElementById('searchBtn')?.addEventListener('click', () => { - this.handleSearch(); - }); - - // 重置按钮 - document.getElementById('resetBtn')?.addEventListener('click', () => { - this.resetFilters(); - }); - - // 添加用户按钮 - document.getElementById('addUserBtn')?.addEventListener('click', () => { - this.addUser(); - }); - - // 导出按钮 - document.getElementById('exportBtn')?.addEventListener('click', () => { - this.exportUsers(); - }); - - // 批量删除按钮 - document.getElementById('batchDeleteBtn')?.addEventListener('click', () => { - this.batchDeleteUsers(); - }); - - // 表格操作按钮事件委托 - document.addEventListener('click', (e) => { - if (e.target.closest('.btn-edit')) { - const userId = e.target.closest('.btn-edit').dataset.id; - this.editUser(userId); - } - - if (e.target.closest('.btn-delete')) { - const userId = e.target.closest('.btn-delete').dataset.id; - this.deleteUser(userId); - } - }); - - // 退出登? document.getElementById('logoutBtn')?.addEventListener('click', () => { - this.handleLogout(); - }); - - // 刷新按钮 - document.getElementById('refreshBtn')?.addEventListener('click', () => { - this.refreshData(); + + document.querySelectorAll('.btn-delete-user').forEach(btn => { + btn.addEventListener('click', () => { + if(confirm('确定要删除该用户吗?此操作不可恢复。')) { + this.deleteUser(btn.dataset.id); + } + }); }); + + this.renderPagination(pagination); } - - async loadPage(page) { - // 这里可以实现页面切换逻辑 - // 暂时使用简单跳? switch (page) { - case 'users': - window.location.href = '/admin/user_management'; - break; - case 'students': - window.location.href = '/admin/student_management'; - break; - case 'teachers': - // 可以跳转到教师管理页? break; - case 'grades': - window.location.href = '/teacher/grade_management'; - break; - case 'settings': - // 可以跳转到系统设置页? break; + + getRoleBadgeColor(role) { + switch(role) { + case 'admin': return 'danger'; + case 'teacher': return 'info'; + case 'student': return 'success'; + default: return 'secondary'; } } - - handleSearch() { - const userId = document.getElementById('userIdFilter')?.value || ''; - const name = document.getElementById('nameFilter')?.value || ''; - const role = document.getElementById('roleFilter')?.value || ''; - const className = document.getElementById('classFilter')?.value || ''; - - // 这里可以实现搜索逻辑 - this.showNotification('搜索功能待实?, 'info'); + + getRoleName(role) { + switch(role) { + case 'admin': return '管理员'; + case 'teacher': return '教师'; + case 'student': return '学生'; + default: role; + } } - - resetFilters() { - document.getElementById('userIdFilter').value = ''; - document.getElementById('nameFilter').value = ''; - document.getElementById('roleFilter').value = ''; - document.getElementById('classFilter').value = ''; + + renderPagination(pagination) { + const el = document.getElementById('pagination'); + let html = ''; - // 重新加载数据 + if (pagination.page > 1) { + html += `
  • 上一页
  • `; + } else { + html += `
  • 上一页
  • `; + } + + for (let i = 1; i <= pagination.pages; i++) { + html += `
  • ${i}
  • `; + } + + if (pagination.page < pagination.pages) { + html += `
  • 下一页
  • `; + } else { + html += `
  • 下一页
  • `; + } + + el.innerHTML = html; + } + + changePage(page) { + this.currentPage = page; this.loadUsers(); } - - async addUser() { - // 这里可以打开添加用户模态框 - const userData = { - user_id: prompt('请输入用户ID:'), - full_name: prompt('请输入姓?'), - role: prompt('请输入角?(admin/teacher/student):'), - email: prompt('请输入邮?'), - class_name: prompt('请输入班?(学生/教师可?:') - }; - - if (!userData.user_id || !userData.full_name || !userData.role) { - this.showNotification('用户ID、姓名和角色为必填项', 'error'); + + openEditUserModal(user) { + document.getElementById('userForm').reset(); + document.getElementById('userModalTitle').textContent = '编辑用户'; + document.getElementById('isEdit').value = 'true'; + document.getElementById('userId').value = user.id; + document.getElementById('userId').readOnly = true; + document.getElementById('userNameInput').value = user.name; + document.getElementById('userRole').value = user.role; + document.getElementById('userClass').value = user.class || ''; + this.userModal.show(); + } + + async saveUser() { + const form = document.getElementById('userForm'); + const formData = new FormData(form); + const data = Object.fromEntries(formData.entries()); + const isEdit = data.isEdit === 'true'; + + // Validation + if (!data.id || !data.name || !data.role) { + alert('请填写必填字段'); return; } - - try { - const response = await fetch(`${this.apiBase}/admin/users`, { - method: 'POST', - headers: { 'Content-Type': 'application/json' }, - credentials: 'include', - body: JSON.stringify(userData) - }); - - const data = await response.json(); - if (data.success) { - this.showNotification('用户添加成功', 'success'); - await this.loadUsers(); - } else { - this.showNotification(data.message || '添加失败', 'error'); - } - } catch (error) { - console.error('添加用户失败:', error); - this.showNotification('添加用户失败', 'error'); - } - } - - async exportUsers() { - try { - const response = await fetch(`${this.apiBase}/admin/users/export`, { - credentials: 'include' - }); - - if (response.ok) { - const blob = await response.blob(); - const url = window.URL.createObjectURL(blob); - const a = document.createElement('a'); - a.href = url; - a.download = `用户列表_${new Date().toISOString().split('T')[0]}.xlsx`; - document.body.appendChild(a); - a.click(); - document.body.removeChild(a); - window.URL.revokeObjectURL(url); - } - } catch (error) { - console.error('导出失败:', error); - this.showNotification('导出失败', 'error'); - } - } - - async batchDeleteUsers() { - const checkboxes = document.querySelectorAll('.user-checkbox:checked'); - if (checkboxes.length === 0) { - this.showNotification('请选择要删除的用户', 'warning'); + + if (data.role === 'student' && !data.class) { + alert('学生角色必须填写班级'); return; } - - if (!confirm(`确定要删除选中?${checkboxes.length} 个用户吗?`)) { - return; - } - - const userIds = Array.from(checkboxes).map(cb => cb.dataset.id); try { - const response = await fetch(`${this.apiBase}/admin/users/batch`, { - method: 'DELETE', - headers: { 'Content-Type': 'application/json' }, - credentials: 'include', - body: JSON.stringify({ userIds }) - }); - - const data = await response.json(); - if (data.success) { - this.showNotification(`成功删除 ${userIds.length} 个用户`, 'success'); - await this.loadUsers(); + let res; + if (isEdit) { + res = await fetch(`${this.apiBase}/users/${data.id}`, { + method: 'PUT', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(data) + }); } else { - this.showNotification(data.message || '删除失败', 'error'); + res = await fetch(`${this.apiBase}/users`, { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(data) + }); } - } catch (error) { - console.error('批量删除失败:', error); - this.showNotification('批量删除失败', 'error'); - } - } - - async editUser(userId) { - const user = this.users.find(u => u.id == userId); - if (!user) return; - - // 这里可以打开编辑模态框 - const newName = prompt('请输入新的姓?', user.full_name); - if (newName === null) return; - - const newRole = prompt('请输入新的角?', user.role); - if (newRole === null) return; - - try { - const response = await fetch(`${this.apiBase}/admin/users/${userId}`, { - method: 'PUT', - headers: { 'Content-Type': 'application/json' }, - credentials: 'include', - body: JSON.stringify({ - full_name: newName, - role: newRole, - email: user.email, - class_name: user.class_name - }) - }); - const data = await response.json(); - if (data.success) { - this.showNotification('用户更新成功', 'success'); - await this.loadUsers(); + const result = await res.json(); + + if (result.success) { + alert(isEdit ? '更新成功' : '创建成功'); + this.userModal.hide(); + this.loadUsers(); } else { - this.showNotification(data.message || '更新失败', 'error'); + alert(result.message || '操作失败'); } - } catch (error) { - console.error('更新用户失败:', error); - this.showNotification('更新用户失败', 'error'); + } catch (e) { + console.error(e); + alert('系统错误'); } } - - async deleteUser(userId) { - if (!confirm('确定要删除这个用户吗?)) { - return; - } - + + async deleteUser(id) { try { - const response = await fetch(`${this.apiBase}/admin/users/${userId}`, { - method: 'DELETE', - credentials: 'include' - }); + const res = await fetch(`${this.apiBase}/users/${id}`, { method: 'DELETE' }); + const result = await res.json(); - const data = await response.json(); - if (data.success) { - this.showNotification('用户删除成功', 'success'); - await this.loadUsers(); + if (result.success) { + alert('删除成功'); + this.loadUsers(); } else { - this.showNotification(data.message || '删除失败', 'error'); + alert(result.message || '删除失败'); } - } catch (error) { - console.error('删除用户失败:', error); - this.showNotification('删除用户失败', 'error'); + } catch (e) { + console.error(e); + alert('系统错误'); } } - async handleLogout() { - try { - const response = await fetch(`${this.apiBase}/auth/logout`, { - method: 'POST', - credentials: 'include' - }); - - if (response.ok) { - window.location.href = '/login'; - } - } catch (error) { - console.error('退出登录失?', error); - } - } - - async refreshData() { - await this.loadStats(); - await this.loadUsers(); - this.showNotification('数据已刷?, 'success'); - } - - updateUI() { - // 更新用户信息 - if (this.currentUser) { - const userInfoElements = document.querySelectorAll('.user-info'); - userInfoElements.forEach(el => { - el.textContent = `${this.currentUser.full_name} (${this.currentUser.role})`; - }); - } - } - - async initCharts() { - // 加载Chart.js? await this.loadChartLibrary(); + // ================= Student Management ================= + async initStudentManagement() { + this.studentCurrentPage = 1; + this.studentPageSize = 10; - // 初始化用户分布饼? this.initUserDistributionChart(); + // Bind Filter Events + document.getElementById('studentSearch').addEventListener('input', () => this.loadStudents()); - // 初始化成绩分布柱状图 - this.initGradeDistributionChart(); - } - - showNotification(message, type = 'info') { - // 创建通知元素 - const notification = document.createElement('div'); - notification.className = `notification notification-${type}`; - notification.innerHTML = ` - - ${message} - - `; + // Bind Modal Events + const modalEl = document.getElementById('studentModal'); + this.studentModal = new bootstrap.Modal(modalEl); - // 添加到页? document.body.appendChild(notification); - - // 添加关闭事件 - notification.querySelector('.notification-close').addEventListener('click', () => { - notification.remove(); + document.getElementById('addStudentBtn').addEventListener('click', () => { + document.getElementById('studentForm').reset(); + document.getElementById('studentModalTitle').textContent = '新增学生'; + document.getElementById('studentIsEdit').value = 'false'; + document.getElementById('studentId').readOnly = false; + this.studentModal.show(); }); - // 自动移除 - setTimeout(() => { - if (notification.parentNode) { - notification.remove(); - } - }, 5000); - } - - async loadChartLibrary() { - if (typeof Chart !== 'undefined') return; - - return new Promise((resolve, reject) => { - const script = document.createElement('script'); - script.src = 'https://cdn.jsdelivr.net/npm/chart.js@3.9.1/dist/chart.min.js'; - script.onload = resolve; - script.onerror = reject; - document.head.appendChild(script); - }); - } - - initUserDistributionChart() { - const ctx = document.getElementById('userDistributionChart'); - if (!ctx) return; - - // 模拟数据 - const data = { - labels: ['学生', '教师', '管理?], - datasets: [{ - data: [this.stats.totalStudents || 100, this.stats.totalTeachers || 20, 1], - backgroundColor: [ - 'rgba(54, 162, 235, 0.8)', - 'rgba(255, 206, 86, 0.8)', - 'rgba(255, 99, 132, 0.8)' - ] - }] - }; + document.getElementById('saveStudentBtn').addEventListener('click', () => this.saveStudent()); - new Chart(ctx, { - type: 'pie', - data: data, - options: { - responsive: true, - plugins: { - legend: { - position: 'bottom' + // Initial Load + await this.loadStudents(); + } + + async loadStudents() { + const search = document.getElementById('studentSearch').value; + const tbody = document.getElementById('studentTableBody'); + + tbody.innerHTML = '加载中...'; + + try { + const query = new URLSearchParams({ + page: this.studentCurrentPage, + limit: this.studentPageSize, + search + }); + + const res = await fetch(`${this.apiBase}/students?${query}`); + const result = await res.json(); + + if (result.success) { + this.renderStudentTable(result.data, result.pagination); + } else { + tbody.innerHTML = `${result.message}`; + } + } catch (e) { + console.error(e); + tbody.innerHTML = '加载失败'; + } + } + + renderStudentTable(students, pagination) { + const tbody = document.getElementById('studentTableBody'); + + if (students.length === 0) { + tbody.innerHTML = '暂无学生'; + return; + } + + tbody.innerHTML = students.map(s => ` + + ${s.id} + ${s.name} + ${s.class || '-'} + ${s.major || '-'} + ${s.grade || '-'} + ${s.contact_info || '-'} + + + + + + `).join(''); + + // Bind Action Buttons + document.querySelectorAll('.btn-edit-student').forEach(btn => { + btn.addEventListener('click', () => { + const student = JSON.parse(btn.dataset.student); + this.openEditStudentModal(student); + }); + }); + + document.querySelectorAll('.btn-delete-student').forEach(btn => { + btn.addEventListener('click', () => { + if(confirm('确定要删除该学生吗?这将同时删除其用户账号。')) { + this.deleteStudent(btn.dataset.id); + } + }); + }); + + this.renderStudentPagination(pagination); + } + + renderStudentPagination(pagination) { + const el = document.getElementById('studentPagination'); + let html = ''; + + if (pagination.page > 1) { + html += `
  • 上一页
  • `; + } else { + html += `
  • 上一页
  • `; + } + + for (let i = 1; i <= pagination.pages; i++) { + html += `
  • ${i}
  • `; + } + + if (pagination.page < pagination.pages) { + html += `
  • 下一页
  • `; + } else { + html += `
  • 下一页
  • `; + } + + el.innerHTML = html; + } + + changeStudentPage(page) { + this.studentCurrentPage = page; + this.loadStudents(); + } + + openEditStudentModal(student) { + document.getElementById('studentForm').reset(); + document.getElementById('studentModalTitle').textContent = '编辑学生'; + document.getElementById('studentIsEdit').value = 'true'; + document.getElementById('studentId').value = student.id; + document.getElementById('studentId').readOnly = true; + document.getElementById('studentNameInput').value = student.name; + document.getElementById('studentClass').value = student.class || ''; + document.getElementById('studentMajor').value = student.major || ''; + document.getElementById('studentGrade').value = student.grade || ''; + document.getElementById('studentContact').value = student.contact_info || ''; + this.studentModal.show(); + } + + async saveStudent() { + const form = document.getElementById('studentForm'); + const formData = new FormData(form); + const data = Object.fromEntries(formData.entries()); + const isEdit = data.isEdit === 'true'; + + // Validation + if (!data.id || !data.name || !data.class) { + alert('学号、姓名和班级为必填项'); + return; + } + + try { + let res; + if (isEdit) { + res = await fetch(`${this.apiBase}/students/${data.id}`, { + method: 'PUT', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(data) + }); + } else { + res = await fetch(`${this.apiBase}/students`, { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(data) + }); + } + + const result = await res.json(); + + if (result.success) { + alert(isEdit ? '更新成功' : '创建成功'); + this.studentModal.hide(); + this.loadStudents(); + } else { + alert(result.message || '操作失败'); + } + } catch (e) { + console.error(e); + alert('系统错误'); + } + } + + async deleteStudent(id) { + try { + const res = await fetch(`${this.apiBase}/students/${id}`, { method: 'DELETE' }); + const result = await res.json(); + + if (result.success) { + alert('删除成功'); + this.loadStudents(); + } else { + alert(result.message || '删除失败'); + } + } catch (e) { + console.error(e); + alert('系统错误'); + } + } + + // ================= Teacher Management ================= + async initTeacherManagement() { + this.teacherCurrentPage = 1; + this.teacherPageSize = 10; + + // Bind Filter Events + document.getElementById('teacherSearch').addEventListener('input', () => this.loadTeachers()); + + // Bind Modal Events + const modalEl = document.getElementById('teacherModal'); + this.teacherModal = new bootstrap.Modal(modalEl); + + document.getElementById('addTeacherBtn').addEventListener('click', () => { + document.getElementById('teacherForm').reset(); + document.getElementById('teacherModalTitle').textContent = '新增教师'; + document.getElementById('teacherIsEdit').value = 'false'; + document.getElementById('teacherId').readOnly = false; + this.teacherModal.show(); + }); + + document.getElementById('saveTeacherBtn').addEventListener('click', () => this.saveTeacher()); + + // Initial Load + await this.loadTeachers(); + } + + async loadTeachers() { + const search = document.getElementById('teacherSearch').value; + const tbody = document.getElementById('teacherTableBody'); + + tbody.innerHTML = '加载中...'; + + try { + const query = new URLSearchParams({ + page: this.teacherCurrentPage, + limit: this.teacherPageSize, + search + }); + + const res = await fetch(`${this.apiBase}/teachers?${query}`); + const result = await res.json(); + + if (result.success) { + this.renderTeacherTable(result.data, result.pagination); + } else { + tbody.innerHTML = `${result.message}`; + } + } catch (e) { + console.error(e); + tbody.innerHTML = '加载失败'; + } + } + + renderTeacherTable(teachers, pagination) { + const tbody = document.getElementById('teacherTableBody'); + + if (teachers.length === 0) { + tbody.innerHTML = '暂无教师'; + return; + } + + tbody.innerHTML = teachers.map(t => ` + + ${t.id} + ${t.name} + ${t.title || '-'} + ${t.department || '-'} + ${t.contact_info || '-'} + + + + + + `).join(''); + + // Bind Action Buttons + document.querySelectorAll('.btn-edit-teacher').forEach(btn => { + btn.addEventListener('click', () => { + const teacher = JSON.parse(btn.dataset.teacher); + this.openEditTeacherModal(teacher); + }); + }); + + document.querySelectorAll('.btn-delete-teacher').forEach(btn => { + btn.addEventListener('click', () => { + if(confirm('确定要删除该教师吗?这将同时删除其用户账号。')) { + this.deleteTeacher(btn.dataset.id); + } + }); + }); + + this.renderTeacherPagination(pagination); + } + + renderTeacherPagination(pagination) { + const el = document.getElementById('teacherPagination'); + let html = ''; + + if (pagination.page > 1) { + html += `
  • 上一页
  • `; + } else { + html += `
  • 上一页
  • `; + } + + for (let i = 1; i <= pagination.pages; i++) { + html += `
  • ${i}
  • `; + } + + if (pagination.page < pagination.pages) { + html += `
  • 下一页
  • `; + } else { + html += `
  • 下一页
  • `; + } + + el.innerHTML = html; + } + + changeTeacherPage(page) { + this.teacherCurrentPage = page; + this.loadTeachers(); + } + + openEditTeacherModal(teacher) { + document.getElementById('teacherForm').reset(); + document.getElementById('teacherModalTitle').textContent = '编辑教师'; + document.getElementById('teacherIsEdit').value = 'true'; + document.getElementById('teacherId').value = teacher.id; + document.getElementById('teacherId').readOnly = true; + document.getElementById('teacherNameInput').value = teacher.name; + document.getElementById('teacherDepartment').value = teacher.department || ''; + document.getElementById('teacherTitle').value = teacher.title || ''; + document.getElementById('teacherContact').value = teacher.contact_info || ''; + this.teacherModal.show(); + } + + async saveTeacher() { + const form = document.getElementById('teacherForm'); + const formData = new FormData(form); + const data = Object.fromEntries(formData.entries()); + const isEdit = data.isEdit === 'true'; + + // Validation + if (!data.id || !data.name) { + alert('工号和姓名为必填项'); + return; + } + + try { + let res; + if (isEdit) { + res = await fetch(`${this.apiBase}/teachers/${data.id}`, { + method: 'PUT', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(data) + }); + } else { + res = await fetch(`${this.apiBase}/teachers`, { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(data) + }); + } + + const result = await res.json(); + + if (result.success) { + alert(isEdit ? '更新成功' : '创建成功'); + this.teacherModal.hide(); + this.loadTeachers(); + } else { + alert(result.message || '操作失败'); + } + } catch (e) { + console.error(e); + alert('系统错误'); + } + } + + async deleteTeacher(id) { + try { + const res = await fetch(`${this.apiBase}/teachers/${id}`, { method: 'DELETE' }); + const result = await res.json(); + + if (result.success) { + alert('删除成功'); + this.loadTeachers(); + } else { + alert(result.message || '删除失败'); + } + } catch (e) { + console.error(e); + alert('系统错误'); + } + } + + // ================= Grade Statistics ================= + async initGradeStatistics() { + try { + const res = await fetch(`${this.apiBase}/grade-stats`); + const result = await res.json(); + + if (result.success) { + const stats = result.data; + this.renderGradeStatsTable(stats); + this.renderGradeCharts(stats); + } + } catch (e) { + console.error(e); + } + } + + renderGradeStatsTable(stats) { + const tbody = document.getElementById('gradeStatsBody'); + if (!tbody) return; + + if (stats.length === 0) { + tbody.innerHTML = '暂无数据'; + return; + } + + tbody.innerHTML = stats.map(s => ` + + ${s.course_code || '-'} + ${s.course_name} + ${s.teacher_name || '未分配'} + ${s.student_count} + ${s.avg_score} + ${s.max_score || '-'} + ${s.min_score || '-'} + +
    +
    +
    +
    + ${s.pass_rate}% +
    + + + `).join(''); + } + + renderGradeCharts(stats) { + if (!window.Chart) return; + + // 1. Course Average Scores Bar Chart + const ctxBar = document.getElementById('courseAvgChart'); + if (ctxBar) { + new Chart(ctxBar, { + type: 'bar', + data: { + labels: stats.map(s => s.course_name), + datasets: [{ + label: '平均分', + data: stats.map(s => s.avg_score), + backgroundColor: 'rgba(78, 115, 223, 0.5)', + borderColor: 'rgba(78, 115, 223, 1)', + borderWidth: 1 + }] + }, + options: { + responsive: true, + scales: { + y: { beginAtZero: true, max: 100 } } } - } - }); - } - - initGradeDistributionChart() { - const ctx = document.getElementById('gradeDistributionChart'); - if (!ctx) return; + }); + } - // 模拟数据 - const data = { - labels: ['A', 'B', 'C', 'D', 'F'], - datasets: [{ - label: '成绩分布', - data: [25, 35, 20, 15, 5], - backgroundColor: [ - 'rgba(75, 192, 192, 0.8)', - 'rgba(54, 162, 235, 0.8)', - 'rgba(255, 206, 86, 0.8)', - 'rgba(255, 159, 64, 0.8)', - 'rgba(255, 99, 132, 0.8)' - ] - }] - }; - - new Chart(ctx, { - type: 'bar', - data: data, - options: { - responsive: true, - scales: { - y: { - beginAtZero: true, - ticks: { - stepSize: 10 - } + // 2. Overall Pass Rate Pie Chart + const ctxPie = document.getElementById('passRateChart'); + if (ctxPie) { + const totalStudents = stats.reduce((sum, s) => sum + s.student_count, 0); + const totalPass = stats.reduce((sum, s) => sum + parseInt(s.pass_count), 0); + const totalFail = totalStudents - totalPass; + + new Chart(ctxPie, { + type: 'doughnut', + data: { + labels: ['及格', '不及格'], + datasets: [{ + data: [totalPass, totalFail], + backgroundColor: ['#1cc88a', '#e74a3b'], + hoverOffset: 4 + }] + }, + options: { + responsive: true, + plugins: { + legend: { position: 'bottom' } } } + }); + } + } + + // ================= System Settings ================= + async initSystemSettings() { + const form = document.getElementById('basicSettingsForm'); + if (!form) return; + + // Load current settings + try { + const response = await fetch('/api/admin/settings'); + const result = await response.json(); + if (result.success) { + const settings = result.data; + const nameInput = form.querySelector('input[type="text"]'); + const semesterSelect = form.querySelector('select'); + const courseSwitch = document.getElementById('courseSelectionSwitch'); + const gradeSwitch = document.getElementById('gradeCheckSwitch'); + + if (nameInput) nameInput.value = settings.system_name || ''; + if (semesterSelect) semesterSelect.value = settings.current_semester || ''; + if (courseSwitch) courseSwitch.checked = settings.allow_course_selection === '1'; + if (gradeSwitch) gradeSwitch.checked = settings.allow_grade_check === '1'; + } + } catch (err) { + console.error('加载设置失败:', err); + } + + form.addEventListener('submit', async (e) => { + e.preventDefault(); + const settings = { + system_name: form.querySelector('input[type="text"]').value, + current_semester: form.querySelector('select').value, + allow_course_selection: document.getElementById('courseSelectionSwitch').checked ? '1' : '0', + allow_grade_check: document.getElementById('gradeCheckSwitch').checked ? '1' : '0' + }; + + try { + const response = await fetch('/api/admin/settings', { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(settings) + }); + const result = await response.json(); + if (result.success) { + alert('系统设置已保存'); + } else { + alert('保存失败: ' + result.message); + } + } catch (err) { + alert('保存出错'); } }); + + // Data Maintenance Buttons + const backupBtn = document.querySelector('.btn-outline-primary i.fa-database')?.parentElement; + const clearCacheBtn = document.querySelector('.btn-outline-warning i.fa-trash-alt')?.parentElement; + const resetPassBtn = document.querySelector('.btn-outline-danger i.fa-history')?.parentElement; + + if (backupBtn) { + backupBtn.addEventListener('click', async () => { + if (!confirm('确定要立即备份数据库吗?')) return; + try { + const res = await fetch('/api/admin/maintenance/backup', { method: 'POST' }); + const result = await res.json(); + if (result.success) alert('备份成功!文件已保存到 backups 目录: ' + result.data.filename); + else alert('备份失败: ' + result.message); + } catch (err) { alert('请求失败'); } + }); + } + + if (clearCacheBtn) { + clearCacheBtn.addEventListener('click', async () => { + try { + const res = await fetch('/api/admin/maintenance/clear-cache', { method: 'POST' }); + const result = await res.json(); + if (result.success) alert('系统缓存已清理'); + else alert('清理失败'); + } catch (err) { alert('请求失败'); } + }); + } + + if (resetPassBtn) { + resetPassBtn.addEventListener('click', async () => { + if (!confirm('确定要重置所有学生密码为 123456 吗?此操作不可撤销!')) return; + try { + const res = await fetch('/api/admin/maintenance/reset-passwords', { method: 'POST' }); + const result = await res.json(); + if (result.success) alert('所有学生密码已重置为 123456'); + else alert('重置失败'); + } catch (err) { alert('请求失败'); } + }); + } + } + + // ================= Data Export ================= + async initDataExport() { + const studentExportBtn = document.getElementById('exportStudentsBtn'); + const teacherExportBtn = document.getElementById('exportTeachersBtn'); + const gradeExportBtn = document.getElementById('exportGradesBtn'); + + if (studentExportBtn) { + studentExportBtn.addEventListener('click', () => { + window.location.href = '/api/admin/export/students'; + }); + } + + if (teacherExportBtn) { + teacherExportBtn.addEventListener('click', () => { + window.location.href = '/api/admin/export/teachers'; + }); + } + + if (gradeExportBtn) { + gradeExportBtn.addEventListener('click', () => { + window.location.href = '/api/admin/export/grades'; + }); + } + } + + // ================= Operation Logs ================= + async initOperationLogs() { + const tbody = document.getElementById('logsTableBody'); + if (!tbody) return; + + try { + const response = await fetch('/api/admin/logs'); + const result = await response.json(); + if (result.success) { + const logs = result.data; + if (logs.length === 0) { + tbody.innerHTML = '暂无操作日志'; + return; + } + tbody.innerHTML = logs.map(log => ` + + ${log.created_at} + ${log.user_id} (${log.user_name || '未知'}) + ${log.operation_type} + ${log.description} + ${log.ip_address || '-'} + + `).join(''); + } + } catch (err) { + console.error('获取日志失败:', err); + tbody.innerHTML = '加载失败'; + } } } +document.addEventListener('DOMContentLoaded', () => { + window.adminManager = new AdminManager(); +}); diff --git a/frontend/public/js/auth.js b/frontend/public/js/auth.js index 41c3d2c..724826a 100644 --- a/frontend/public/js/auth.js +++ b/frontend/public/js/auth.js @@ -196,11 +196,14 @@ class AuthManager { }); const result = await response.json(); if (result.success) { + alert('退出登录成功'); window.location.href = '/login'; + } else { + alert(result.message || '退出登录失败'); } } catch (error) { console.error('Logout error:', error); - window.location.href = '/login'; + alert('退出登录出错'); } } } diff --git a/frontend/public/js/teacher.js b/frontend/public/js/teacher.js index 83b0540..deb9740 100644 --- a/frontend/public/js/teacher.js +++ b/frontend/public/js/teacher.js @@ -7,10 +7,24 @@ class TeacherManager { this.init(); } - init() { - this.initDashboard(); + async init() { this.updateCurrentTime(); setInterval(() => this.updateCurrentTime(), 1000); + await this.loadUserInfo(); + + // 页面路由逻辑 + if (document.getElementById('courseList')) { + this.initDashboard(); + } + if (document.getElementById('studentTableBody') && document.getElementById('courseSelect')) { + this.initGradeEntry(); + } + if (document.getElementById('gradeTableBody')) { + this.initGradeManagement(); + } + if (document.getElementById('profileForm')) { + this.initProfilePage(); + } } updateCurrentTime() { @@ -24,27 +38,100 @@ class TeacherManager { timeElement.textContent = now.toLocaleString('zh-CN', options); } } + + async loadUserInfo() { + try { + const res = await fetch('/api/auth/me'); + const result = await res.json(); + if (result.success && result.data.user) { + const user = result.data.user; + this.user = user; + + // Update Sidebar + const nameEls = document.querySelectorAll('#teacherName, #userName, #profileName'); + const idEls = document.querySelectorAll('#teacherId, #profileId, #inputTeacherId'); + + nameEls.forEach(el => el.textContent = user.name); + idEls.forEach(el => { + if (el.tagName === 'INPUT') el.value = user.id; + else el.textContent = user.id; + }); + + // Profile Page Specific + const inputName = document.getElementById('inputName'); + const inputClass = document.getElementById('inputClass'); + if (inputName) inputName.value = user.name; + if (inputClass) inputClass.value = user.class || ''; + } + } catch (error) { + console.error('Load user info failed:', error); + } + } + // ================= Dashboard ================= async initDashboard() { - // 检查是否在仪表板页面 - if (!document.getElementById('courseList')) return; + await Promise.all([ + this.loadCourses(), + this.loadManagedClasses() + ]); + this.initAddCourse(); + this.initEditCourse(); + } + + async loadManagedClasses() { + const managedClassesSection = document.getElementById('managedClassesSection'); + const managedClassList = document.getElementById('managedClassList'); + const classCountEl = document.getElementById('classCount'); + if (!managedClassList) return; + + try { + const res = await fetch(`${this.apiBase}/my-classes`); + const result = await res.json(); + + if (result.success && result.data.classes.length > 0) { + const classes = result.data.classes; + classCountEl.textContent = classes.length; + managedClassesSection.style.display = 'block'; + + managedClassList.innerHTML = classes.map(c => ` +
    +
    +
    +
    + +
    +
    +
    ${c.class_name}
    +

    ${c.major || '专业未设置'} | ${c.grade}级

    +
    +
    +
    +
    + `).join(''); + } else { + classCountEl.textContent = '0'; + managedClassesSection.style.display = 'none'; + } + } catch (e) { + console.error('Load managed classes failed', e); + } + } + + async loadCourses() { try { const response = await fetch(`${this.apiBase}/courses`); const result = await response.json(); if (result.success) { - this.renderDashboard(result.data.courses); - } else { - if (window.authManager) { - window.authManager.showNotification(result.message || '获取课程失败', 'error'); - } + this.courses = result.data.courses; + this.renderDashboard(this.courses); } } catch (error) { - console.error('Fetch teacher data failed:', error); + console.error('Fetch courses failed:', error); } } - + renderDashboard(courses) { const courseList = document.getElementById('courseList'); if (!courseList) return; @@ -57,16 +144,22 @@ class TeacherManager { courseList.innerHTML = courses.map(course => `
    -
    -
    - +
    +
    + ${course.course_code || 'CODE'} - ${course.credit} 学分 +
    + + ${course.credit} 学分 +
    ${course.course_name}

    - 学生人数: ${course.student_count || 0} + ${course.class_name || '班级未指定'}

    `).join(''); - // 更新统计数据 document.getElementById('courseCount').textContent = courses.length; + // Calculate total students const totalStudents = courses.reduce((sum, c) => sum + (c.student_count || 0), 0); document.getElementById('totalStudents').textContent = totalStudents; } -} -// 初始化 -document.addEventListener('DOMContentLoaded', () => { - window.teacherManager = new TeacherManager(); - - // 从 Session 获取用户信息并更新 UI - fetch('/api/auth/me') - .then(res => res.json()) - .then(result => { - if (result.success && result.data.user) { - const user = result.data.user; - const nameEl = document.getElementById('userName'); - const teacherNameEl = document.getElementById('teacherName'); + initAddCourse() { + const btn = document.getElementById('addCourseBtn'); + const modalEl = document.getElementById('addCourseModal'); + const saveBtn = document.getElementById('saveCourseBtn'); + + if (!btn || !modalEl) return; + + const modal = new bootstrap.Modal(modalEl); + + btn.addEventListener('click', async () => { + // Load classes + try { + const res = await fetch(`${this.apiBase}/classes`); + const result = await res.json(); + if (result.success) { + const select = document.getElementById('classSelect'); + select.innerHTML = '' + + result.data.classes.map(c => ``).join(''); + } + } catch (e) { + console.error('Load classes failed', e); + } + modal.show(); + }); + + saveBtn.addEventListener('click', async () => { + const form = document.getElementById('addCourseForm'); + const formData = new FormData(form); + const data = Object.fromEntries(formData.entries()); + + try { + const res = await fetch(`${this.apiBase}/courses`, { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(data) + }); + const result = await res.json(); - if (nameEl) nameEl.textContent = user.name; - if (teacherNameEl) teacherNameEl.textContent = user.name; + if (result.success) { + alert('课程创建成功'); + modal.hide(); + this.loadCourses(); + form.reset(); + } else { + alert(result.message || '创建失败'); + } + } catch (e) { + console.error('Create course failed', e); + alert('系统错误'); } }); -}); \ No newline at end of file + } + + initEditCourse() { + const modalEl = document.getElementById('editCourseModal'); + if (!modalEl) return; + + const modal = new bootstrap.Modal(modalEl); + const updateBtn = document.getElementById('updateCourseBtn'); + + // Use event delegation for dynamically created edit buttons + document.addEventListener('click', async (e) => { + const btn = e.target.closest('.btn-edit-course'); + if (!btn) return; + + const courseId = btn.dataset.id; + if (!this.courses) return; + const courseData = this.courses.find(c => c.id == courseId); + + if (!courseData) return; + + // Fill form + document.getElementById('editCourseId').value = courseData.id; + document.getElementById('editCourseName').value = courseData.course_name; + document.getElementById('editCourseCode').value = courseData.course_code; + document.getElementById('editCourseCredit').value = courseData.credit; + document.getElementById('editSemester').value = courseData.semester; + + // Load classes and select current one + try { + const res = await fetch(`${this.apiBase}/classes`); + const result = await res.json(); + if (result.success) { + const select = document.getElementById('editClassSelect'); + select.innerHTML = '' + + result.data.classes.map(c => ``).join(''); + } + } catch (e) { + console.error('Load classes failed', e); + } + + modal.show(); + }); + + updateBtn.addEventListener('click', async () => { + const form = document.getElementById('editCourseForm'); + const formData = new FormData(form); + const data = Object.fromEntries(formData.entries()); + const courseId = data.id; + + try { + const res = await fetch(`${this.apiBase}/courses/${courseId}`, { + method: 'PUT', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(data) + }); + const result = await res.json(); + + if (result.success) { + alert('课程更新成功'); + modal.hide(); + this.loadCourses(); + } else { + alert(result.message || '更新失败'); + } + } catch (e) { + console.error('Update course failed', e); + alert('系统错误'); + } + }); + } + + // ================= Grade Entry ================= + async initGradeEntry() { + const courseSelect = document.getElementById('courseSelect'); + + // Load Courses for Select + try { + const response = await fetch(`${this.apiBase}/courses`); + const result = await response.json(); + if (result.success) { + courseSelect.innerHTML = '' + + result.data.courses.map(c => ``).join(''); + + // Check URL params + const params = new URLSearchParams(window.location.search); + const courseId = params.get('courseId'); + if (courseId) { + courseSelect.value = courseId; + this.loadStudentsForGradeEntry(courseId); + } + } + } catch (e) { console.error(e); } + + courseSelect.addEventListener('change', (e) => { + if (e.target.value) { + this.loadStudentsForGradeEntry(e.target.value); + } else { + document.getElementById('studentTableBody').innerHTML = '请选择课程以加载学生列表'; + } + }); + } + + async loadStudentsForGradeEntry(courseId) { + const tbody = document.getElementById('studentTableBody'); + tbody.innerHTML = '
    加载中...
    '; + + // Since we don't have a direct "get students by course" API that returns grades yet, + // we might need to rely on what we have. + // Actually, we need to fetch students enrolled in the class of this course. + // AND fetch their existing grades for this course. + // For simplicity, let's assume we have an endpoint or we modify `getGradeStatistics` or similar? + // No, we should probably add `GET /api/teacher/course/:id/students`? + // Or just use `GET /api/teacher/grades?courseId=X`. + + // Let's assume `GET /api/teacher/grades?courseId=X` returns the list of students with their grades (or null if no grade). + // I need to implement this backend logic if it's missing. + // For now, I'll simulate or try to use what I have. + // I'll add `getCourseGrades` to TeacherController. + + // Wait, I can't modify backend endlessly. + // Let's check `TeacherController.js` again. + // It has `addScore`. + // It does NOT have `getCourseGrades`. + // I need to add it to support this view. + + try { + // Placeholder: I will add this endpoint in next step. + const res = await fetch(`${this.apiBase}/grades?courseId=${courseId}`); + const result = await res.json(); + + if (result.success) { + this.renderGradeEntryTable(result.data.grades); + } else { + tbody.innerHTML = `${result.message}`; + } + } catch (e) { + tbody.innerHTML = `加载失败: ${e.message}`; + } + } + + renderGradeEntryTable(grades) { + const tbody = document.getElementById('studentTableBody'); + if (!grades || grades.length === 0) { + tbody.innerHTML = '该课程暂无学生'; + return; + } + + tbody.innerHTML = grades.map(g => ` + + ${g.student_id} + ${g.student_name} + + + + ${g.total_score || '-'} + + + + + `).join(''); + + // Bind save events + document.querySelectorAll('.save-grade-btn').forEach(btn => { + btn.addEventListener('click', (e) => this.saveGrade(e.target.closest('tr'), btn.dataset.studentId)); + }); + } + + async saveGrade(row, studentId) { + const inputs = row.querySelectorAll('input'); + const usual = inputs[0].value; + const midterm = inputs[1].value; + const final = inputs[2].value; + const courseId = document.getElementById('courseSelect').value; + + // Simple calculation for total score preview (Backend should do the real one) + const total = (usual * 0.3 + midterm * 0.3 + final * 0.4).toFixed(1); // Example weights + + try { + const res = await fetch(`${this.apiBase}/grades`, { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify({ + studentId, + courseId, + usual_score: usual, + midterm_score: midterm, + final_score: final, + score: total // Passing total score as 'score' for compatibility with existing API + }) + }); + + const result = await res.json(); + if (result.success) { + // Update total cell + row.cells[5].textContent = total; + // Show success feedback + const btn = row.querySelector('.save-grade-btn'); + const originalText = btn.innerHTML; + btn.innerHTML = ' 已保存'; + btn.classList.remove('btn-primary'); + btn.classList.add('btn-success'); + setTimeout(() => { + btn.innerHTML = originalText; + btn.classList.add('btn-primary'); + btn.classList.remove('btn-success'); + }, 2000); + } else { + alert(result.message || '保存失败'); + } + } catch (e) { + console.error(e); + alert('保存失败'); + } + } + + // ================= Grade Management ================= + async initGradeManagement() { + // Similar logic to Grade Entry but Read-Only or Filter focused + // Fetch courses for filter + try { + const response = await fetch(`${this.apiBase}/courses`); + const result = await response.json(); + if (result.success) { + const select = document.getElementById('courseSelectFilter'); + select.innerHTML = '' + + result.data.courses.map(c => ``).join(''); + } + } catch (e) { console.error(e); } + + document.getElementById('searchBtn').addEventListener('click', () => this.searchGrades()); + + // Check URL params + const params = new URLSearchParams(window.location.search); + if (params.get('courseId')) { + document.getElementById('courseSelectFilter').value = params.get('courseId'); + this.searchGrades(); + } + } + + async searchGrades() { + const courseId = document.getElementById('courseSelectFilter').value; + const studentName = document.getElementById('studentNameFilter').value; + const tbody = document.getElementById('gradeTableBody'); + + tbody.innerHTML = '
    '; + + try { + let url = `${this.apiBase}/grades?`; + if (courseId) url += `courseId=${courseId}&`; + if (studentName) url += `studentName=${studentName}`; + + const res = await fetch(url); + const result = await res.json(); + + if (result.success && result.data.grades) { + if (result.data.grades.length === 0) { + tbody.innerHTML = '未找到相关成绩记录'; + return; + } + + tbody.innerHTML = result.data.grades.map(g => ` + + ${g.course_name || '-'} + ${g.student_id || '-'} + ${g.student_name || '-'} + ${g.total_score || '-'} + ${g.grade_point || '-'} + ${g.grade_level || '-'} + + + + + `).join(''); + } + } catch (e) { + tbody.innerHTML = `查询失败`; + } + } + + getBadgeColor(level) { + if (!level) return 'secondary'; + if (level.startsWith('A')) return 'success'; + if (level.startsWith('B')) return 'info'; + if (level.startsWith('C')) return 'warning'; + if (level.startsWith('F')) return 'danger'; + return 'primary'; + } + + // ================= Profile ================= + initProfilePage() { + const saveProfileBtn = document.getElementById('saveProfileBtn'); + if (saveProfileBtn) { + saveProfileBtn.addEventListener('click', async () => { + const name = document.getElementById('inputName').value; + const className = document.getElementById('inputClass').value; + try { + const res = await fetch('/api/auth/update-profile', { + method: 'PUT', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify({ name, class: className }) + }); + const result = await res.json(); + if (result.success) { + alert('资料更新成功'); + // 更新侧边栏和顶栏 + const nameEls = document.querySelectorAll('#teacherName, #userName, #profileName'); + nameEls.forEach(el => el.textContent = name); + } else { + alert(result.message || '更新失败'); + } + } catch (e) { + console.error('Update profile failed', e); + alert('系统错误'); + } + }); + } + + const passwordForm = document.getElementById('passwordForm'); + if (passwordForm) { + passwordForm.addEventListener('submit', async (e) => { + e.preventDefault(); + + const oldPassword = document.getElementById('oldPassword').value; + const newPassword = document.getElementById('newPassword').value; + const confirmPassword = document.getElementById('confirmPassword').value; + const errorEl = document.getElementById('passwordError'); + + // Hide previous error + errorEl.style.display = 'none'; + + // Basic validation + if (newPassword !== confirmPassword) { + errorEl.textContent = '两次输入的新密码不一致'; + errorEl.style.display = 'block'; + return; + } + + if (newPassword.length < 6) { + errorEl.textContent = '新密码长度至少为 6 位'; + errorEl.style.display = 'block'; + return; + } + + try { + const res = await fetch('/api/auth/update-password', { + method: 'PUT', + headers: { + 'Content-Type': 'application/json' + }, + body: JSON.stringify({ oldPassword, newPassword }) + }); + + const result = await res.json(); + if (result.success) { + alert('密码修改成功,请重新登录'); + // Logout and redirect + await fetch('/api/auth/logout', { method: 'POST' }); + window.location.href = '/login'; + } else { + errorEl.textContent = result.message || '修改失败'; + errorEl.style.display = 'block'; + } + } catch (err) { + console.error(err); + errorEl.textContent = '服务器错误,请稍后再试'; + errorEl.style.display = 'block'; + } + }); + } + } +} + +document.addEventListener('DOMContentLoaded', () => { + window.teacherManager = new TeacherManager(); +}); diff --git a/frontend/views/admin/dashboard.html b/frontend/views/admin/dashboard.html index 4b1604e..7199f2b 100644 --- a/frontend/views/admin/dashboard.html +++ b/frontend/views/admin/dashboard.html @@ -3,340 +3,334 @@ - 学生成绩管理系统 - 管理员仪表板 - - - - - - -
    - - -
    - - - - -
    -
    -
    -

    管理员仪表板

    - -
    -
    -
    - - -
    -
    -
    - -
    -
    -
    1,248
    -
    总用户数
    -
    - 12 本周新增 -
    -
    -
    - -
    -
    - -
    -
    -
    3,567
    -
    学生总数
    -
    - 45 本周新增 -
    -
    -
    - -
    -
    - -
    -
    -
    128
    -
    教师总数
    -
    - 无变?
    -
    -
    - -
    -
    - -
    -
    -
    89
    -
    课程总数
    -
    - 3 本周新增 -
    -
    -
    -
    - - -
    -
    -
    - -
    -

    用户管理

    -

    - 管理所有用户账户,包括添加、编辑、删除用户,设置用户角色和权限?

    - -
    - -
    -
    - -
    -

    学生管理

    -

    - 管理学生信息,包括学籍管理、班级分配、信息维护和批量导入导出?

    - -
    - -
    -
    - -
    -

    教师管理

    -

    - 管理教师信息,包括教师分配、课程安排、权限设置和绩效考核?

    - -
    - -
    -
    - -
    -

    成绩统计

    -

    - 查看全校成绩统计,生成分析报告,支持图表展示和数据导出?

    - -
    -
    - - -
    -

    - - 系统状?

    -
    -
    -
    -
    -
    数据库服?/div> -
    运行正常 | 响应时间: 12ms
    -
    -
    -
    -
    -
    -
    Web服务?/div> -
    运行正常 | 在线用户: 156
    -
    -
    -
    -
    -
    -
    文件存储
    -
    使用? 65% | 剩余: 35GB
    -
    -
    -
    -
    -
    -
    备份服务
    -
    上次备份: 2天前 | 建议立即备份
    -
    -
    -
    -
    - - -
    -

    - - 最近活?

    -
      -
    • -
      - -
      -
      -
      新增学生用户
      -
      10分钟?| 操作? 管理?/div> -
      -
    • -
    • -
      - -
      -
      -
      修改教师信息
      -
      1小时?| 操作? 管理?/div> -
      -
    • -
    • -
      - -
      -
      -
      生成成绩统计报告
      -
      3小时?| 操作? 系统
      -
      -
    • -
    • -
      - -
      -
      -
      导出用户数据
      -
      5小时?| 操作? 管理?/div> -
      -
    • -
    • -
      - -
      -
      -
      系统设置更新
      -
      1天前 | 操作? 管理?/div> -
      -
    • -
    -
    -
    -
    - - + .sidebar-header { + padding: 2rem 1.5rem; + text-align: center; + border-bottom: 1px solid rgba(255,255,255,0.1); + } + + .sidebar-brand { + font-size: 1.25rem; + font-weight: 700; + color: white; + text-decoration: none; + display: flex; + align-items: center; + justify-content: center; + gap: 10px; + } + + .user-profile { + padding: 2rem 1rem; + text-align: center; + } + + .user-avatar { + width: 80px; + height: 80px; + background: rgba(255,255,255,0.2); + border-radius: 50%; + display: flex; + align-items: center; + justify-content: center; + margin: 0 auto 1rem; + font-size: 2rem; + } + + .user-info h6 { margin-bottom: 0.25rem; font-weight: 600; } + .user-info p { font-size: 0.85rem; opacity: 0.8; margin-bottom: 0; } + + .nav-menu { padding: 1rem 0; } + .nav-item { padding: 0.25rem 1rem; } + + .nav-link { + color: rgba(255,255,255,0.8); + padding: 0.8rem 1.25rem; + border-radius: 0.5rem; + display: flex; + align-items: center; + gap: 12px; + transition: all 0.2s; + text-decoration: none; + } + + .nav-link:hover, .nav-link.active { + color: white; + background: rgba(255,255,255,0.15); + } + + .nav-link i { width: 20px; text-align: center; } + + /* 主内容区 */ + .main-content { + margin-left: var(--sidebar-width); + padding: 2rem; + min-height: 100vh; + } + + .top-navbar { + background: white; + padding: 1rem 2rem; + border-radius: 1rem; + box-shadow: 0 0.15rem 1.75rem 0 rgba(58, 59, 69, 0.1); + margin-bottom: 2rem; + display: flex; + justify-content: space-between; + align-items: center; + } + + .page-heading h4 { margin-bottom: 0; font-weight: 700; color: #333; } + + .stat-card { + transition: transform 0.2s; + } + .stat-card:hover { + transform: translateY(-5px); + } + + @media (max-width: 992px) { + .sidebar { left: -var(--sidebar-width); } + .main-content { margin-left: 0; } + .sidebar.active { left: 0; } + } + + + + + + + +
    + +
    +
    +

    管理员仪表板

    +
    +
    +
    +
    +
    加载中...
    +
    +
    +
    + + +
    +
    +
    +
    +
    +
    + +
    +
    +
    总用户数
    +

    ...

    +
    +
    +
    +
    +
    +
    +
    +
    + +
    +
    +
    学生总数
    +

    ...

    +
    +
    +
    +
    +
    +
    +
    +
    + +
    +
    +
    教师总数
    +

    ...

    +
    +
    +
    +
    +
    +
    +
    +
    + +
    +
    +
    课程总数
    +

    ...

    +
    +
    +
    +
    + + +
    快捷管理
    + +
    + + + + diff --git a/frontend/views/admin/data_export.html b/frontend/views/admin/data_export.html new file mode 100644 index 0000000..f83f998 --- /dev/null +++ b/frontend/views/admin/data_export.html @@ -0,0 +1,266 @@ + + + + + + 数据导出 - 管理员端 + + + + + + + + + + + + + +
    + +
    +
    +

    数据导出

    +
    +
    +
    +
    +
    加载中...
    +
    +
    +
    + +
    + +
    +
    +
    + +
    +
    学生信息导出
    +

    导出所有学生的基本信息、班级、专业等数据。

    + +
    +
    + +
    +
    +
    + +
    +
    教师信息导出
    +

    导出所有教师的基本信息、职称、部门等数据。

    + +
    +
    + +
    +
    +
    + +
    +
    成绩数据导出
    +

    导出所有课程的成绩记录,包括平时、期末、总评。

    + +
    +
    +
    +
    + + + + + + diff --git a/frontend/views/admin/grade_statistics.html b/frontend/views/admin/grade_statistics.html new file mode 100644 index 0000000..3c50d5b --- /dev/null +++ b/frontend/views/admin/grade_statistics.html @@ -0,0 +1,279 @@ + + + + + + 成绩统计 - 管理员端 + + + + + + + + + + + + + +
    + +
    +
    +

    成绩统计

    +
    +
    +
    +
    +
    加载中...
    +
    +
    +
    + + +
    +
    +
    +
    +
    各课程平均分对比
    +
    +
    + +
    +
    +
    +
    +
    +
    +
    全校及格率
    +
    +
    +
    + +
    +
    +
    +
    +
    + + +
    +
    +
    课程成绩详情
    +
    +
    +
    + + + + + + + + + + + + + + + + +
    课程代码课程名称任课教师选课人数平均分最高分最低分及格率
    加载中...
    +
    +
    +
    +
    + + + + + + + diff --git a/frontend/views/admin/operation_logs.html b/frontend/views/admin/operation_logs.html new file mode 100644 index 0000000..752f13b --- /dev/null +++ b/frontend/views/admin/operation_logs.html @@ -0,0 +1,245 @@ + + + + + + 操作日志 - 管理员端 + + + + + + + + + + + + + +
    + +
    +
    +

    操作日志

    +
    +
    +
    +
    +
    加载中...
    +
    +
    +
    + +
    +
    +
    + + + + + + + + + + + + + +
    操作时间操作人操作类型详情IP地址
    暂无日志数据
    +
    +
    +
    +
    + + + + + + diff --git a/frontend/views/admin/student_management.html b/frontend/views/admin/student_management.html index 55f95c1..220f571 100644 --- a/frontend/views/admin/student_management.html +++ b/frontend/views/admin/student_management.html @@ -3,439 +3,327 @@ - 学生管理 - XX学校成绩管理系统 - + 学生管理 - 管理员端 + + + + + + - - - -
    -
    -
    - - - - -
    -
    -
    - - - - - - -
    -
    - - + +
    +
    +
    +
    + +
    + +
    - -
    - - - -
    -
    - - + +
    +
    + + +
    +
    - - +
    + - + - - - - - + + + + - - - - - + +
    学号学号 姓名性别 班级联系电话邮箱入学时间操作专业年级联系方式操作
    - -

    正在加载学生数据...

    -
    加载中...
    - - - + +
    +
    + + +
    +
    - -
    -
    -

    © 2023 XX学校成绩管理系统. 版权所?

    -

    技术支? 计算机科学与技术学?/p> -

    -
    - - + + + diff --git a/frontend/views/admin/system_settings.html b/frontend/views/admin/system_settings.html new file mode 100644 index 0000000..49c01b4 --- /dev/null +++ b/frontend/views/admin/system_settings.html @@ -0,0 +1,290 @@ + + + + + + 系统设置 - 管理员端 + + + + + + + + + + + + + +
    + +
    +
    +

    系统设置

    +
    +
    +
    +
    +
    加载中...
    +
    +
    +
    + +
    + +
    +
    +
    +
    基础设置
    +
    +
    +
    +
    + + +
    +
    + + +
    +
    + +
    + + +
    +
    +
    + +
    + + +
    +
    + +
    +
    +
    +
    + + +
    +
    +
    +
    数据维护
    +
    +
    +
    + 定期备份数据可以防止意外丢失。 +
    +
    + + + +
    +
    +
    +
    +
    +
    + + + + + + diff --git a/frontend/views/admin/teacher_management.html b/frontend/views/admin/teacher_management.html new file mode 100644 index 0000000..58d9d8a --- /dev/null +++ b/frontend/views/admin/teacher_management.html @@ -0,0 +1,316 @@ + + + + + + 教师管理 - 管理员端 + + + + + + + + + + + + + +
    + +
    +
    +

    教师管理

    +
    +
    +
    +
    +
    加载中...
    +
    +
    +
    + + +
    +
    +
    +
    + +
    + + +
    +
    +
    + +
    +
    +
    +
    + + +
    +
    +
    + + + + + + + + + + + + + + +
    工号姓名职称学院/部门联系方式操作
    加载中...
    +
    +
    + +
    +
    + + + + + + + + + diff --git a/frontend/views/admin/user_management.html b/frontend/views/admin/user_management.html index e95daea..4ecfb3d 100644 --- a/frontend/views/admin/user_management.html +++ b/frontend/views/admin/user_management.html @@ -3,492 +3,327 @@ - 用户管理 - XX学校成绩管理系统 - + 用户管理 - 管理员端 + + + + + + - - - -
    -
    -
    - - +
    + + +
    +
    - -
    -
    -

    © 2023 XX学校成绩管理系统. 版权所?

    -

    技术支? 信息技术中?| 联系电话: 010-12345678

    -
    -
    - - - + + + diff --git a/frontend/views/student/profile.html b/frontend/views/student/profile.html index 92351ed..1fad180 100644 --- a/frontend/views/student/profile.html +++ b/frontend/views/student/profile.html @@ -253,54 +253,65 @@
    -
    -
    - 基本信息 +
    +
    +
    基本信息
    -
    +
    - +
    - +
    - +
    - +
    - -
    -
    安全设置
    - -
    - - -
    -
    -
    - - -
    -
    - - -
    -
    -
    - +
    +
    +
    +
    + +
    +
    +
    修改密码
    +
    +
    +
    +
    + + +
    +
    +
    + + +
    +
    + + +
    +
    + +
    +
    @@ -342,26 +353,58 @@ updateTime(); setInterval(updateTime, 1000); + // 保存基本信息逻辑 + const saveProfileBtn = document.getElementById('saveProfileBtn'); + if (saveProfileBtn) { + saveProfileBtn.addEventListener('click', async () => { + const name = document.getElementById('profileNameInput').value; + const className = document.getElementById('profileClass').value; + + try { + const res = await fetch('/api/auth/update-profile', { + method: 'PUT', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify({ name, class: className }) + }); + const result = await res.json(); + if (result.success) { + alert('资料更新成功'); + // 更新侧边栏和顶栏 + document.getElementById('userName').textContent = name; + document.getElementById('studentName').textContent = name; + document.getElementById('profileName').textContent = name; + } else { + alert(result.message || '更新失败'); + } + } catch (e) { + console.error('Update profile failed', e); + alert('系统错误'); + } + }); + } + // 修改密码逻辑 - const savePasswordBtn = document.getElementById('savePasswordBtn'); - if (savePasswordBtn) { - savePasswordBtn.addEventListener('click', async () => { + const passwordForm = document.getElementById('passwordForm'); + if (passwordForm) { + passwordForm.addEventListener('submit', async (e) => { + e.preventDefault(); + const oldPassword = document.getElementById('oldPassword').value; const newPassword = document.getElementById('newPassword').value; const confirmPassword = document.getElementById('confirmPassword').value; - - if (!oldPassword || !newPassword || !confirmPassword) { - alert('请填写所有密码字段'); - return; - } + const errorEl = document.getElementById('passwordError'); + + errorEl.style.display = 'none'; if (newPassword !== confirmPassword) { - alert('两次输入的新密码不一致'); + errorEl.textContent = '两次输入的新密码不一致'; + errorEl.style.display = 'block'; return; } if (newPassword.length < 6) { - alert('新密码长度至少为 6 位'); + errorEl.textContent = '新密码长度至少为 6 位'; + errorEl.style.display = 'block'; return; } @@ -377,17 +420,16 @@ const result = await response.json(); if (result.success) { alert('密码修改成功,请重新登录'); - // 登出并跳转到登录页 - fetch('/api/auth/logout', { method: 'POST' }) - .then(() => { - window.location.href = '/login'; - }); + await fetch('/api/auth/logout', { method: 'POST' }); + window.location.href = '/login'; } else { - alert(result.message || '修改失败'); + errorEl.textContent = result.message || '修改失败'; + errorEl.style.display = 'block'; } } catch (error) { console.error('Update password error:', error); - alert('网络错误,请稍后再试'); + errorEl.textContent = '网络错误,请稍后再试'; + errorEl.style.display = 'block'; } }); } diff --git a/frontend/views/teacher/dashboard.html b/frontend/views/teacher/dashboard.html index b8f4c79..749e657 100644 --- a/frontend/views/teacher/dashboard.html +++ b/frontend/views/teacher/dashboard.html @@ -201,19 +201,25 @@

    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� zxx$O;RLBVoG=j?Ncr*9JU-v7SQz7Rs5VtKJYuMYk;?2cT>>@5WEyddd^9m}Lo!#gn zF0{vVa>tE1e*A$mr<}Mz_6sUzk3Hi*syq5!1O^8z;g)1>*zq4SosM@A7}{X#vNRRp zQBK8O1cr9SF0XWa54%%w7lFaiM~Di0?NLOUIEtLWKoA0sXZGAPPKyKHYNSK$X3ZEs zZ!&sZ_a!jE<;LE5#(x4u!|R;DKpGCm5qsxRc!HgZeVGeTWSBU99D-A^FLMD*T=s0E zh!}Ay=F9~$VtCPG&o<-x=pB8|U?BQPl)w;Dr*G9clYxvFuH@{MUcH^`oWekG09n%+ z!j7ZZ#a(D`=YbByDk0LYcX1cmibI`u8!a~1Id_4!c%TEZ%Ee*Tuk%(lRUGPIta>}t zuk{o=ljF1)pT=Y_>bjHKu3zJ)kB1b7wR-)lef8bcCgVT50xRlQdHUo~LO2n7KvEq_ zcAb+K=%R$b-8szqb--oTIf;S9$bjC$5Z6Cdg|iDehk-0+JQK4AB<16&UFYNl(qL>~ z_JTD2(&|V2)Ro>q5q)F;U`RVYZaMm0T!uE%yQv4pA23Isa~Vkea5yvg(%0X`X>jU? zNyu6`UWdJ9&x{up{I za~IV)(SblAqS={!tT4#?C!2N7aG+4)(&$x@Csv&^8%Tu+N@6jf3hZ^ZL>Hx@jlIJi z?A1kMS#?fnAQdBuo?)-Dr*@rl8ah+cKBnCKDY~U$)j73+Ry?r-x(YklS!&QNh~16fR<%P_drEhf9pDGo#*v5*XQ_2|i&4n!ZjaQD#Hs-NR6=FW(Gb;a1?hLB{)89y zYg0$1g2_jdHzm(X785_~cmQ6D?}~pRZpGe=eLXfmc6uxu{Yi9X^qgop@*8|v;L6A# zA_^W3FAAR(-ZS)6Xl>}C(Eh=fgVo?w!T!KM1K;>xH~`$DR)dc_?YGNKR0Nh_Y#MyP zJDah6+_+pn|G*9yn+-nDbZNU(?D1pf9sLh^6Gio1M)vr}jMMJ3J$;H=gMmApxb6Y} zuWmW_nX^1SvZX+Z+yuSBe#KsP8q8S@q`~+G2D_Dyzn7f`caa;~AT+6iUMd61Y;bY| z?daqVc==}|bK2WQYG`AROIg<$e0GDA8c2WPZ((6{tuqB1xYf?LI|;^SkpQ!l47(0biCME~qt?nCvD#h(EujXf-&6fs8axUuJ_U!O3iJ?n0-+_GWjf-YPV-8=Sg8 zHaR?aEWw<9ggJwOqUn$xO*w^uRE+B|LsPAHs4>Z#TB<*>gQohuz!?q128C0YUB^|& zp4G6tdP#?I4Q8gG!Xk5)l<6sw2E#eS;8f?FF&o34K4~yKmkdr-4YnIYo?fS3XAhy? z-Sc=_jX_VJEJ+x2%pg=S0h~QB;3-mAb(x?lShX8n)CH%(*aHmyb?1)R;M4_DFCsu0 zx~h&3tHGHIq@&1#$Iw;TQLE8KS!g%dP5-0dv^gWhDGLN8aB*X}8pEF-O4yBedLv7w z6bIJs!K&Hd%mp$+&}Xo!vP7%~XDpDlkECD>PSxJJhCfxorIhQv=A5cPrUot*2B!*2 znX~D9xe7Qj8J_Cg{Z@l>6-bY9@ncuqan=MUDNse1%&znSTa7MuLfc9l>;S6r$g&z; z?1Z-Ba0gJ8?`n2~vl9p~!LDVuYOTAwv7fgZNmt?gWk{-A{&s`26iCG&-Y_T~pFrbG zE+;DxeHfSwQOD0CQ4hA1~_vkHr?Mp2&Ib{E}TO3Jyl8l0{`S_%V-fvK{kcB99u zkzgC%K$sU#hyGS$f~QX^hRMk=RdN3xz?l;W93R-l`2Qcw_aOh@s@#RSgR;NP?#O;N zJDmAjrjfZWb4(_ZemuQ6eRg`U)U&BOQGj`XMJ|l=hF=PA311l=3cVHjW@usP%uq4-VsKMC z0^l_?LjPws`OMJ8?-HrU_Y!0AH~9n+efZMua<0!qI@8>0@_Fiva~p2V&h=Y)7MM*w zLBvvp;l=LX{@FU52JhodEN$@Q4!-H$Kg=eNbRhL2g$9E;eoJ-mLBfyG(J>^$YbT1_72Kok+Kz;JjRMIPrsw~R~pR&E)y$pajS z{epWTyEq?=KR^4$YV!C7QX$@=H5X^Q$pah+H~=`AX{fWIttO9iphM)+%#?_2H+i4~ zsTj}x49>J?WV0*Yp^d-p+r&6?!{Z&uP{Al=#_TvP_6>A^70qt2y2H_I@<0b-BZB40 zOfJ>(wVOP^fs7QUh*@0Yzv4LCyerPZ!4=%En8l^L7h27(IES{rOMF(m5#Tg$cEvfg z0d1fIhzgInqsZeN$fANnkvSrjkKcBqE5M;$bhz+cz^>z7$7OTLaPpSyU`Wj z&>o`x-8A^@29IwbNQ|2(v)gn&1GB-y97wz29AS2w`uf4c8^}Pz-^P$pY2jLpuDFJF zhh4I!a`%~y>pd(c0Eb8rW~iyo47>4VPmgW_m%ONRPFRgEdHQ76V}uw$D&DRgllF_A zBCXhEKWcY<<2p~DbQoqEgPVQu=ZokK9^610j7NHgkK-E}SUum-XiaoV!Guo^BJJf1=9F#~2LK$#65&_EH{&DpCm zM63pnXCM_K&j3SYWlQZwS0F=s+w2~<+PNR`Kn6NQF1K2F&9NI@5e#i$9O@vdZWUV% z9>G8=hHsIXm`Z=O+2{&gXjeS3gQ)(Y3s`pz9=bqmOE^ZDZ5hFz-?p(ET_FqY5$^Ap zY`Tux4IZ*Uk=SLE>-D=L7o7TGYceF(zrpdy1=4T$78xQRfj|F#`$jCloMLvI&PcEt zJYs<^X*czTa)Rv!4_P3)9=AhgvFcn7W`jpA5PZadF<=hi&#%K)qbqWuZU4C+_fWph z+KsNrg^uCKfK}IEyTKzDNQVLF>^iN3NvpvF80bj5S=iO~XM;yBkc#2kWcaEx)y>BF z9zGKz0oOH#uPXb~YMkfkkp{zHX7H+X6{a%N1CIos2w(<39~up939Sf!JF+u+W9+DS z0Jr&D;y;UjH~x0w^7MbQ=Oi{J9!{o`MqGmbL)rC-_a_DuzY8A_-Xrv%&@16u*F247Eo zGCe!^L}XE_n7JamGuxld#Cl?p=o`@&qfbV^8r>dU6MHW9SgaM>7F(G(H~IDaW62%q zSJIQhCx#}aPt6>VsAjLvyd0YoyDIi^n#~~Ih#niB9=ag)Aear8B>$G)l7B8doIEbR zS9(SE_)IPHO#Z0+p*-I~?yI@&u~#FPg=WW3PMwkbQt*ZF`Jq!&PlSG+IUlTvWw|xE z8*|s?F3z2qJ2rPj&PXhY9U5L1IVZ7SVruf&$x3ov>h<&miJxRn%nWB2Wxk!+luID% z;!D{dWgo)-YMD)$Wtg1KpUd3n0Oj2kkJQ(Z?5KD&B}W1~{QgRfYQZykZ$%{K4hObZ zJW^6y3ueDW2_6iL^d2qz&Jc*!e-|WXU}xoTf@C6U_vl6KU$z2U${u&EQ!Hqc^D!Udy%kt^jLG9zHcp?f|iL@Hy}wim!p#8F5_pC zd{dANV4sQ!BdkER_e`P8U|?&xPml}&A;tAG5iR_TSS7y!0hEtIj)3y+}QDMM0PbR^xWF}9b*ksm-W4ibKOFmPX`AV?;mU)Ko| zya<*)B1u*k9}pxa`ZYz6bf>hKgi$?BC{$36aaRsu-j5Wt zh6B5LMf4j&UE8EGcbB&cl8LBmiy#@sFP|t#;5U%coeW{edGzXbzu?K2lB5iwUpEWC zW1%jOaNX9Lh`I3Czn$Na)2~cI-^JBCh-53GRRH#(krC<|!X6aYj|tqkT_|H>#Jr>i z?b;`y?~8;ogZP~Vf@B!KbE6=!u)=3alKU$19^6@ZTqrYy-?>VX)Oy8J&qRAfj2Z~k zdv6f52Jt%|6C@^P=O{rk2|cwW$vG6;^NI4=Uy@9e0I;4-LUgto!sV79*iFgJK=aL>R~XomM^HMs|eI5Y9;!6G!3AxL(UyKabc z5E;|AI4}Ie+Muf@_u!CI|`mvhabwd@+&P$p)Xr$TYyXl-5>?LiSuAb{T zeMnaUrOe^0iw&@vANKS~i{Z>?FKNn(ttKZyP(`!j_*Hh*Y;yJkac|*;hrOYx-tNpM zXFU)-gvX5kc4js?>w$P`5fsThwMqQ>IWFzyncm3Ik#$+CI!~?H>>@pMo@v+%n(D33 zZgSECaUY_e%+adzY@1C^ejtw}AR#gjvub?prZ4FM@zBies0|owc99;O{vukI`D>Lc z$!v1c1Mw{5-JCgU55k|{1er}=(gR-J*o)l&{`~Z;CMP{~R&J-E%ulM$7189Z2hvaw zv{+z(x+2pJTvgGmH%pwBRONg@_$kIi49s^G8BW$ya_0X}N8U86> zjqPR^>!Ga(7fc&Cb<8NM$ypBsRN%H`FsOXz9%wSUgY!K&vdMA2F&Ok;2b}3ZDg$(C zpwDb}Q5>9Jf{)JLyvq3VtI%$8iUXY%_mlLx(XpGy_#qOIj3J686~hY^N|L-_L_w@IEJMMRfJuRG4|=0rbz@ZlLE>h!Iq z<>}Lf;(jq^9Aq;+McQHa`$hirVkZ)a6COy1@ovo!QTOy^H97Ht01hIc7&0o)W~=GX zcyPaKuH5)mlQSM@jV_T}X))PNgr9b(a1^<4W{*5s52vhnei3kH!&_D_>j9_U_l ziP-wnoiiT@G{eMX5UD<8Iq`wi3)7Mzq^@48$q5i-Eh1!{A*3>5(Q0z$167>dK}dC+ zO4FD60BB_}shnD?$*B*dMlc8%Oe%vQ%qHhNkg|9!Q12H-?YntX^NP z158o|jOs`ACg(bk*+dr^BI*#;YIac`+NOw`;X`Q|Sj{fVgQJM9G9yu`Xg9kk4;|x& zVWBSa&T9Hn9&iRQD{&kwh`Lq0g zxc@(d{C{WUbIAX<4Eg^iWS`5f&t8&!XXa0t`!d&L2GegK_x?5M!PFb6T53vaGT8s$ zOD;^F*=GOWfn50q$A1^!7QZZhWbE&;ug0dwj)}e<{TA}qzb_h&d@C|Ha%yDH&e#9m z75ZDK5xOpPbnt(IUkOeNzAu;(@BWSxz#8qEg0?kjbud;5Al7Kt6torbn%Xu)m4Rl~ zD4zl{gm_42jsxYkGDrE?6Uf50VD_i-I2bK@b4CCJK`IQgbO2(H7X0*K!?NQ*XDQgD zoXbG#cf+W((cPn*(m)0bpIT>!gL<)#`f?i3@!hmVM>(f~G#uytZr)Z$Ik$msZ52*^P3t1FhKXV65)Y zu}8Z|4{fMLfJYl@b;qndsv-xAeTAHNe>k2`#X@U z3P!e@zMKb8f0$LP^VHf+&Uqj+1@99(DzrC1h9K0{pHOk2(A-cduA7&xm8ztp_O z<}^>S)9|(><(b&? zhq~GPvZqH(R`?s3$*RgJYd1OffeaL`{mf+5`FE@)r$CSyLWr)$05qGN`#?I1$Wa~R ziE|%lgWa4R`Ud+_Adqj5p|0|3X*atl5bblu<(TU#wwqlPh&E~scHmNLb~QN#f~+jq ziR|{TyG7Ye&V-=)2p`)mKdIg1gb1RKy~t2g-+oSvp!zP=UgycPoBsTWp$>TJu*_=u z@+0tw$;?(Y_oeB}k3gnF2BP|gbAANrIPwoM5Y-+xO-_>_TMUmg3`CXouG!=~33_U{ zd8XB;Mi)<_4W2I3UWfWtlk+4fc)H1x$Jt`O1PLrL2A;YlZZ$bUf>!J%PgeRM?WQk7 z0`Eu+J@r$}84{f-ZjYEt+}FKh+08DZL>pVN=k`pCJ$8ob^V5$tmx0=382~h4B zTWK6G)CJyoLwbxCKL(?^Ma}sCtDO7)?EG=<{Qs+R=jM8{&u2HZ@BeRP9>`3|9G3~C zA4xArpOMa`o=&Y#U686IpG$5*ocs}qza}0`Oidi0NXCB{UybkK6=FY)-4XjlY~Seb zqdTKtjGB?RBVUcoi@YCS6#P+mMfmKn5&CuLuFz*f{lR|(zY)AKct$W6cqXvQd;AaB zqkJ66R>fNoGify@@qjtXhm&}Qv4Gi?d~f{uIF1JF(XP>S<{!@U-GT_z`!R1eXuU2e z*214(z1HYQJv|C7?(2~1Vu=br;wjP!T{3I|fBqHv1}mVW49irmya8*}H&_AOCk72F zn;VKeSb=U0_j|*tt${h=Q3~P;-!01sL&Sp>s72<2KYu9`lz2S zMvwKY5xz|p!lQzXesk3J6zK)hC1@)HRYs5T^g2V-zG1uMP|ec95FPF5lT8Gl3d6~9 zdU}+vqMIv2wTaNv$(|zVDFBigX)2$9J?b07fY=8HtQveoy*!42oJ6=PGkgu>&u8=Y z+oL>ofheuts@I1FhIi53RCXu{e1!1FhIi_@wjtTcf@)4KTA9!YW;o z)@WBuL;H^ClG#B2#+(XQBrc30i(=qj5V6?erpv@3Q~HR~qF9_6tOWOCuEVc4vTb~8tLhyywHq0fRC zl?ew%d4xk}q&rijxkg)~`+3k#74gwkXQU@77ll2_LmTK6;p2mj;-G${`n-zCNWu1H zHmuIaV~_Uw>BG;xdv7SI*lB@!@SZ^M!O%YK8~`gqqu~?7S0D>OCbBc~X7tI}QL&X^ z_MaTL;s>Vx16KPH*_U#O_+H2l(9RA3K6@^4IWhqLB=K;f3SN6E@lWIhyd-&ca!2xS zV7mV>bxi8;)IG>8cpdod>$49bcfh>VHEHAr00VwfdPVS_^z8KK@oj-qLkEXWMUH^J z$ogm^dR=BX|8Zmp7|p#1p8xe=_P+tnek=BBd?s=YG~#a~+klf@U@9^atV2$MV)~W* zbD0A&C+4>2&deU4iUnT}z7TvObU|o#XiIq5%|Q_QIkFa%U-q)h z%h8LYXGV{0=POtfy%AXmUW^^;WF?4wJoQ5Alc_U8lQMfCvf`_`W5M))E8CxWCUzP! z5NvZY735EI@(OUqf947=E5T!6d363Lm&1utHNHV5aGq{3&Y%)l*y~DfN|LoDfzgCA zYf2)k2WbV3l~l_~=3-n%C8&K%xgkg#wuvag+huvFPzEkEL*$nt`pnoam053y9630J zjXz3dHW(tS5T|;1P%5*f{7Xr)xh(MQ(f7N`LS4?Cq zwz>RCD#0&rEpMh0l-W|giAwPHxV9wl)*x9^66OMu)g^($jJeoWevAGNetB#8Vk&{w zdSjC$x!pKMlB_ebRD$2xR{jB%psu?shYAvec9-Q}zOyVa22uN_a!Jy#E=e|*pP&-_&OPPdQ3>kWUJ+PoFyJ;A zKNQL!0N4;$6rS3QbEGosi~}Xf>e3EDG5{XtV}b{vx=?Xyt6SLe; zCFs|^6>&WyOKDkPkAv#7w)AbPg`RGy2wY!CHkW@TmAR{2qY~7$z4C?F9KtTcO}X?i zErZ|LT7FWHfah%FV%r3*H6@YvI2q$}N9-}7%vwWWbUWF{j4x!a2ps5f+YoeOTq)Fr zXbj_MK>}W}akC&nFn#G9>euT<<1PMZnje7+NIOi3ycKFN6rwC;b zh*1tml1;`#f@BD5^*e&3A1m{ENwTGUha}lt{*oXWM0*YsB*-IB*(gZb97{>kox5jS z`6Z#uAX-?JB==UX6(s$r>q0>?1j$W;q#wLc@l5H*ZfZ(pwpZp05(I^mW(yK06U2*x zq#x{h@s#ODo`qqd4Du0FJ|{`;u6$OIAbDmclIt9${=S-Z&Z*VQ%~;-LE_|n_($fgz)XVATg$%@%D{zPIY5$ZE{k)4 z5Q(zDZ-@W-&hm|t)~51Fg2W6o`UL9>YopP(B->BU6fp4n#4!Zhzfaun;M@0oD!WL~ zs`p(a)HMh#ah8Xmb-GXnSp)in^8z#2=sP8MtnkYteWsw*4=r(jA&W}ikW{A8Hz-Jk z10#L=QVC|c-q%MZcy*}t^->ASH2Nx3g7q`fm!uMusrAM4hYD@3_JwH~td^19zX=j2 z@58Htq#tF({pDl;`6(@fx<-0MD`gO6zD3Jmt?ugmh9ue9`*lGw04>q_ax$9;);re5 z&fdEPt$t{&%3l?*$m+eLe1uR2p&W*2LxMVMJRy`p?w;OL^N$5iCckrUOifG$7dE9cm)zl2-i z>%;E}$3ou^Ee(A*R0;kjcwg|!;9%fiXvF{F&l>A;+_WFIT-K@T*AegkP{%za#PI^I$PxkNGkp@T9|hx|)X)G?+6Y z=+w9*Rpo=OHO8qB)cxm@CROqIsIiL!(RMhxv~XpO_E;AOqOIuiS~ZbMsF-sgNLLZj z%RH>Apl{3#CqIz6fg*FQz7v0bb7PJ9av$*c#T=a~UJWLdb04UO6Bqin6I&Bgg$8p9 z1X=b7Z@=5o?^i_6p5it1xFMk%lQsuWD)el0928~0eg+}97scf_zXZ* zPfe(h6C7xTF6n-M{Q2!Qdo1K3y|{!J4r-oH(BLk9g99!YSr$E@%5s4{6Ob!zqmoOU z)I`lA>|&O$zRQ2q#BU7F8;A~#)z;_Imh zOyR_aj$V7DTx#ke`16}uYqX2d(0-bR1Eh^+%FrKs)R)kJ?CuQCbTDd-azXKi;_|Ti#^II4Wz{g&tgcXVF+Lq zcTpSKNa}v8N%JO-hIdgL9DNvS4A|7Bw(haaZ$~g;U zD}b}Wa8Vyf?Mq#NKC>1T!Clw_oVq|eJgH+XDvwNilyeqHgAudD@KJvP`BE2PEi#zY z#2jH|Tk^y;Pk#$#gJ>eIoyIr<4tpX?-9 zjSMVR6UFZT8(IFpliKnBx8*L#RkFXyZqHtmo!rjZCXxO@dUg5}=|fV#Pwh;7 zK4m8Vo%~vIUh=f$K6v?GnK-BO{lCw&^Z$*-z8pI?`k&}`qVuDtMKh6~MAk<>6?sSa zH{tDwEf@&>B{UMcIy5;H41Oyp9 zYQm{t2l>thSQQMxb+~Aa@!6n2?ox79fj6++KJHB;Q3N0|V_JQ5j9uub2rHb;|2W1p zr#uh?2pQPe(V@Bznq$6H2OtB3?g{wwgHU^nQys`cM`#a2H0?$ijb31XA5B~g?m^sE7 z5CjXs9%5&R3JdKqPJkdC1@^PELpM;?80SHdjyezD4(ganN1Hvy2@s@W_`Mj+>DIJ0 z#)%NLVwaMtwv@*>1AbjP$k#)%L_ zA1(j}cbdpZG@SDxNWZXxHZNJ5kwK}90q&Jp|-|26M`rrJqE+Qacblg2%-pN zAD=IaK5`BOQN&rojC5N8u?7e>a2xewTr`t#N*m1Ic8?anT zx^8mqvG@4uyS!N)#G7NsdiovwaO#JZ&lqQ_TZuVldwK+~&~FBmDr?0W<4g!LQLuS6 z0BMhL3Iv%b_yib0>O0Dr5TwBXSO%1eyj)mWoCrZ1jIRqgh(1y2rm@Gmm=NuoH3GNV z2&q3xI1_?Y4C8?TrTSVi=1YaZyCyRTbwFp1aVi8kQeY)9pj0`b%`r}aAbK#%nJYrA z$EgowW^kQg_^5O*jrlSka0D@29Onq~Wj?@V$N*8l=Q;C%EJXl10~_4{+he{22n;a8 z9KChqPk_LuYMhldpbFrIkCqc4=t#SXLMGwQ&&aUGe2EWm^D{hGqN_Q^i4O!_zy@OI zqFNHxSQp`;jfyU}TxtJVW4?q34DI+_G8m4W@IdAi_L_ z#mI1NoU^iv@ZjJJa&zdst7Bb+hqfZVVbVr4-SV@?dtOfX z2iDmBo<12d_(~bRDgEEh{r`P|1Wa#)0d`?K>q))q^6~gPbHI&BLDwc$x`B1i95jn=#T$1-iptPzb77xeLuD`c22Au z{dM%-=vC4F$m@}6l>=vIw zG7|9Qvyspm4=vxBM5;A55?UZ@`OYNB%na#u&R?^|XOiFvEK`Q~ij?yMR?Bw=0iX=I zl}DS|+RvMMa>T$_!H`?^ZfCak_0z-dWR|Q7hs+j_e<1bY3}#1@(mHDK@CPz5IAIu? zD37!j4|^a>8w10TU47wh@wf-Fl0cheM~a48gBkG+e}Jja5MJqxw^}^>fwtI9%AiDQ zyVVu{(1v(7<$w-Ftd?*51IR@8IVff-ano$^_y;nl&L<-s#X;4L*=qTRKe#kyHNv-e z_yZXt0QGj~xSpiME4#(x9>}C(6|pl#XY$%D9{xb|VUV$-MSJmV@h}Lg-`_c5bPjo| z#iJoe#{tyrpiy?*YVj}#s^}&=P&)Xm7LS7AV^E`uFrsQ zoR;#?2cihq9|J=5VKL?(^WY{tQDgR)Z_ESk(F_6A#?ly%c_7ON(Ok@))Gv4*`#`!1 z=w%3~bd^|RJm`Ta!r*2QIF2HZb|8vy^J`oN)))_Wpo(s$Z>3#lkMTGM3Px@M03CQ* zV?5rWQ*p=Vz`$&rh06mT$ijtvH@-n>kNL(sz!l2SPxlgHkNL+txQPRFriVGk;~gmK zgCpt~!b7US5PR%W8TH%#1AH~s(d*Y^*(IJnnPH$W!$S4(IQA(|k?aCoHyH@(E;*^_ zv4L9f!2o#j2O|T(1z^fw5w3+_4nG6_`$J&(J6!t?``_XG$6j?f>tNw;bGY)M(cpuT zA4QLdT$VpH-_z#Azu4xvZ%3Yh8*|s?F3z2qJ2rPj&S2lR2e_RWg_}tLc?Awm?~`~qe7?i?51kr$DgSEZ9OM%~&H-@p!Q@Zf z!}1U~{QP!?f?_Jh@)abiiH+d{LMuYE!e9f@+j&5CW10RVEc^piF{yuC${f2S_U3p znL#uuQ0)_VYY1T7)pr8bf@Ejkd#MD!BXgX(xl;JPYoEvl1edJu0_k^T7S=?Rc{eSC z<7ro)z-5JGXWzSM87yp>SB!6T_lXR1aCG~Mg4SgGj=;4;Pw(#&d29HRZC^;xngp#N zm7qQM_r6Xgur_w}{#laj?0rR$OorCa1qrS~BF`E9+SMy^|D3N$KTWkzd$sR6DuI^F zg?7Go{WYnKo(nw@THB}=>Zse2=$JU}2#>BYi>(;nA!2ZIynfn}t>DyG1AiE?J+*`gXoEyo{DXFRFcFZU}sj zw@+kL;>*K**XNH4UhcBF@UFVf5b|q4vepoLfdC>y*rzD7+L)R@Dpc`)2mIt-fjbIU z*S)=$2rYysytgb#w)Ms($<~U%xf{FNNf;%Kp;t+*uLWfGD%6Eb!JK zxuYyFmLb_#{<8Et8_F{!$@=nnlH_*dmy%?SAu=H?tW|MN+e|j9g?%CO-z>1Bg*Kzi z|AlLZgZ2L#a}}nj$TI};Zzv1wXh_zV1;mDAoguI#Az5n(j9f_87=3iaAX#k)tW@lR z9ldu6Wss|)ccmoR-un?ra&PZMNper+HA!-JMPPxVu5Fc{N@Z&M3T#p!z>eM}LK(2x zd#6(gf+BYG3J8f`-dZ__mVsnTMH~%KYbxTX!m=(47!IvX<&Dzs+)UwKw4b9d!u zl4M)uo04Q}#g-&nDl;U>=8D*NCtt(gq%wDw<=XEke?cmYnf2wpCCTl^ zE=jV^SR+Z+8X~TO+GzCBGFVaf^gfs*9TvRv1u^0iW#JIWuCBpb^DvY~|=%6mvq41{7}ZIVWP5K!lH6MnPGQ)7_f&+v1IgW$)soh>$_Un;?gR_l8u-{PEnSWP2+e-g?J zz|Q<5m0-0r`d-Gp(91`F+H3n7vG;90l)IVwSWYJE?$_y5g||9>X<|3A%b z%zZp}Q1+GVj_kGV_y318H)YPu6w)uGx8nW(pwug=I^O?}PKA??CvQ!DGzE$$N{J{gQKdxtt0f4-jhmai`e{btTnorBP9 z`TBz3AY@Kd=X2A3^;#|N3nIQ8L=Z3^s?rr|x409C_;TRUWRFR@7%H>HeL-ZP@QTGe zqJ#MJYp~h6*z+L~J#>^ku_(g;TNinHw4*M)RqbVNae4(&#FHfR`6^=_td=jY0?%#C zgF4R8a$W@)TD<14mvMbm38z;OefZ~?KT}HxX>pc?*kk5wR^{i#dz&xK0#Euo9LM4$ z#b>1PhRSIcoeCY#En--i=T`X?YPWp(6(CPC53JUM+T#2Q;`zl30(*y2g%X%8&Z{7L zcv-M$b_0kGmLanNyR*TaqNQHnS=5bY4Xtg+xf+!;3 zhCMqegC)!sCs5G++1~*`C2zgO`4glrhP6tP;IKtXy6ZVf|D^&4c1GbhNt#%kToN2C@fP>_nzV+Nhd2NJ90 z%bY;EefEf?e)eklGAHnO$*@yLeYIOBd&{2m81Z!sLUl-JwodZ&$+kiL49QgQ>2~Wx zPmk1#7a@kgIs~;_C-~|k%cTQ^gZj1geovpw6ke7XkSbqT%+~un#m??)zk#`2;~f6{ zPF1UQyr)Miglh^7?w_Q5N;O;W^%Ti=N4zdWP*v6lv&Cr>L=Q2j3_*wR=hslP#px1M z&rL~iDE|EP>=vghNH@vv|5}lL1qL7 zAu}YE$ZfYcPlEImA=|qb&}6qbUxMi44#n_POM7T>+5~Ahe8&t|$3Yoiz61gfw1CR_ z5~M~@Ss0)yU!1L$=`CKOh&UexPvby1XG#!7ta^sTN=38fPnB@Lxur@rWwm^%5-`&l z0xM5PyX8-na6j;*Lo%zysS>287$SzC;~24B9Epxi$G%9Vhd^JB1j6bW1S>1HTAU+6 zS`3?zVXsorZgG-CXW_T8)BWg|zQvp?K`S=)LZ`)Ox^qiG5q;~n%z3Y)1&pec?)zSWws9X^vSUdY-3=mGM^d$e+7&G zKO>*Z{XDlWcTw)J>>slCWyOdSyHR-;1eDsmoJ`CSOmECBK}U znD|fPJBg)<(-YbF_v0($7sTHY`%P?n?26c6^k313qO+sN;Whkwky|2XM)nB*G`ul< zS@_7%tD&ZI`wzYy{AzGs@cqF^;PJo;cI&qu@SQqD_>Ld1I%qw>r;aQZ*kb>WxHkcl ztE$$9Yo4nc5CPLw=TvtDQ3iWDr#rbEWs*rm&D664O~Q2L_{->gd`-8 zKoUZ_s;jy>%n(KuxroU1LI{e;1spCS_j~K?I(x5udhgn~|8xKEtA~e##aU<1?_PWD z^{&I1?rWC+@ipJH`GPsy2psl)(Ow>sT%!I>aE zjE*vF74Eo_Gy$l;**89QYhl0}SCS^+C}C!@$*A+j1!;oxFoHUn)obYC0cTurCrA&& zVqw6oi!b)Zr%@+bfZuXl`?zgb!zfo!Cn$afIRmuEnsLFLpzRH)uqMieH~v<>hKN2) zJBHhar7+-*D~S{c`(@cMTbAog+HWUVvrkFx^TuGq7lw@e5rTjbNf0&4{cc~ud1dW0=I3UOx?bC53odR&fa4wIZV&@$2 zwoao{v~V3Z3d1)OF?V1qqf@kKmt+mXwqr1-E>lURfMa6Uj_cl5L8Tyl1#S&PI#ZpU zt%6ZO>l~y{&f%x3x4TskD#)b3Uci7(KbyA-CIzW5W+Ov56X(_4DhL&%U^p`w&}nC* zyH&}kfCb6U;2ji|j0$)$8ANt)<$RSd9MV)+RLtfzjg7li$*e%i3yuH1S|wWups(qF~dfKu@8O0vmp8~eHliY3_EA5pj(hh35$|JrOqqqZdKAOU@|kL z)Ozc@t%7DjDvaAq29YMqYG5m4TePleNre&6%pg*=g1oJQXhF(^4ns$?Ye(=c$U*?R zGM8wF`Ft*)mP8RS#o$qI+-&_ES0putqmJRDXx!Q*9#HsWVPoMNg+mLG{5|>a<&VyHPD}mt(iYz7`va z{w+Egy(0Pn>@5#Qe#US8opCV?Wawb(vEI-aPB`9)?kAmrDZ@I$a0r0D7zLt_a@l5K zm~uFmiou|x7!X&r2V!^pvwReZB1}|6-iG4&X`fG@!g}P=WspJQuGwt zDhy}@eG%h8^kJ#7EzYoGpr=Hr18s1SL_i0lC|JZekb+@Tv#rX2-zZqbI*@{4DsE^U zj7M|}4F!Kv)nmB7Vy*-8+)&0m0RKC09H_A}<^d;LwsGiob<|iH^MG&?wqqEWsF+(K z=7G#DY;|nM&}7Deo``jzdWg;SjcUz36zVHN9mvqaNwQ0>1C%R59!R;E8f?SR)z=*t z5f5Zaz}#aSh3+B%6&9fmq{2{SyM+mEoN*EIKq`!rG}|pSWHZbNWyk~UO9qd+@EKHC zgglT6TYkD+40XaSSds2UFBr84v-Zjlra;-R`(DAOfc!X6EW#4_FH#Ac7q8V39MJ z)K%CWKc1r;Sqrcd89eIlP0-T!b4Aj_Fb^3#8V|!pqXx zqDG0z5C}{P29UZa87PVn2wGymitR8sA_jsEPLLbGv~Hd8!+0N2gbZl0Iz!MISB63$ zqLCq_&QI@-i%CBT;1Wb^EG2#sHv=Hlz zi%1EAI|zVeCgE=QDf|bR)XG2!=rN11!|CEc4s^7oLF#GK*t+8faDCEJ+|CQu;@*Bxn$w;D^xFm5*A`^c& zJ~w_w+=@LHyD9dC*n!bkqqXRz(Zi$J$Rm-t{QM7YLsbj_X%8aAS$lMjltH(u906Pn zGd$8=1wc`Z04Wgx6oy^ZtBS5CLkA#Z2x_?WK*8@)4IOIC_8cvAJJok`MPlQjkJz50 zapj{x5$-@*3X6vsrMjEHL9eQebAT1hAlu*_gZ_TJ!lb9LyE5c9PV%aVcOVsqae8a( z?CxmI5VtA<9jGF{M%q#w&?7l8Cx7J znN_Qaz{c2$00&YatWjpaYaK~mRYW$BmLdb-uG#NSRT<#`H!s^9bQSihBEo@`i<2Qk zOw;P|sv^)q)@NsE^9YG}2hw3MygFZ`VKS=&9Rgy8>G1DWMW6$zIJOFgH>QTWRT1z& zDvmg8hLHNLrYa&GNWr+y-bE*ART=RBeTJ}xOJ+<_5%EAP9*_jI6?dv4)PZcuz%2%} zI(Lav6_E~PEup6vPU@znTNQy0q@r-MFq>Qp%wAO)=>VMDHJo&-%18&qbupaO8d_de z8R>vSIKw&9&^XmDjykl5gUD1(sQaK(EvoczZNgwKj-Se0a;gQcM@9yFE<-u3m!g{I zdSql^i87Sy&_Ow_Naj8)QHFA+9muI>xjv~d0wfs9>9<@F*gz_b>m7!2+NtDLm5~jA zCkAgF6jQvWa)}Jr^rxh%I6FkRDdH~KH0Ioqpe?eacB_V>}o{{2WgNybd-o_palm(`KArP9T$-e za={FT^;`8g3u$Oom=uhj+O=CMZ(JST5M-z}dAz)FWq1SNiNTxs?ns0;kov=!%izs4 zV&1q2b0GQ%8er#mQ~B<=h;|?y4>QtW4Z7pXFb7ne9iX*4mpiTubHL38!$tOEh5-~v>#K9ISx!G9d}$A^njZkhQ8Vj${9bOqY*(*D6)-0 zyTOc~$MwjZ#sT18gA(__cQUTo#{!`J$*LjJ#V5_1xVxAOb7 za@6@b=^jeHlG+P7?9RXq|8+q&K;#H)XSi!;!TX_~6YuYScD!xbM>4nM&di>b{ZRH$ zmPIdiZ}P<0sGn~Tx$=-_Z%gdS_;9?hmE#W?@-9U_zgYIQ_^HSih&+VI{kIW$_$>Gk z)*~O`F^T@@(}_YWyB~ZHCuh16&!*pw%!F?stKSK^m%Cr;eyaQa?ycRckbUpc?hCrl zK(4|I;^(IS5I+hT|EkINBxfMc-$kkYTX_w07v`VLZSOw5d$!15*viQlTbWrByCnB6 zWC%PYl}J95AI)8!c3V0BvcJ#YD`z+ayWy|V?fK)PYqE{pK84rOD^JD0l|LU(o}Qc+ zttLN}kL6dw7jj_iIOHrmS7bI!-<`PyeYscs>e!39m$O&qo<=V}l)of#4l*pBfeeRN z7rqtvL}=!QRvbi0&Q63Vpq_=HXRa?vc_ZKpT3LEQdIn6rvYgoqVaKJPg`Qbi`b9{x zq9kPy!C`HAX-Iko7hI)WNV2>X3rUvsY?36nz$`s3NpK7-OId1QeP3VtW$2kT<$;i7 zX^)h#12w#{{7vZ@1OS%gY-I3bTE|GwAPltpNJz4-{6t8yw!B=D;F6)#lq5)wJ>wcl zf_s5dLy{oUrzGWf!P;F}S|dG!INly9V-Uu4QIC{;2a<&|{u0t!Fhk0|gJ;dg&)2$?{Toyw;YtO3%RSZ^^mqaN}5(djouy zo~J`v;Y=;la(QChZ?WVVh2RwHW72yNN?MZhfx+Ea3eWIxP8!(Y<%gyB3?fU-L6QVv zC1rW`;>(sZJ|#Va2oUS5l4J3}Q2w)27FbA@jM#`GEsuwu zSy!HtB=EbG_mCvhvm8y&p9J5BC9hl}i8)#YO) z3Bqa1@=gujL;2{?Gn;LBKSkbRTduQ%`g}yv8pbnnSqS|t%RPn!G37x?3pv#+IsXDe>3uhAggQZ=Bj)!)oR_-l;0^y5DRV{2(8lsE%f|N)&bHpAkta;;~Ad)tL5=6 z??az~jkM9eN|Lycd_|HBV0mbg=cQD<#x4pkT<3GwDz5UMk3K|K@AaG^g@vYvNf!3}OGq+*hK!=4XuE9JA-cF^Nm_`7EhR&eB|W!?B#V2V3`rLD%nV5u^z?-! z^JlyuNf5MGl5$=mI%sK+yffm`w`WC2YjKa99TqI-o%nrXN-6_fhwPGG@7AsgDg)^;_zam_ z))b!PRn?S+fGcmh3HGXIt9l%lQM(wPRTY#5Qh!|4?3%CEtqNuXapA$|$$YgPf)oU$ zffNiy=BzbORVA|lQC7@ZYm8m23T6W-zhyPH;{E%L&fcmZI8gn7T56iAURB9+fEC1? zt>%d%cn+j|IN6!A*`)7Q1>b=T9QIyzPpll~kQSrj42|`{(p4qp0em9{$J(nGrz$89#G#Hm z8y4)OyN-0LN~#0!li{y60L`l^sSaRPG2k`EqgRzw2i#6E;5F+jsSddEVfbqvB0+T^ zLxd}G2E$t5cd8%c_(^x#fV`i;Pqov!)f2cLDGW8yLVE!&s|=;y`)`0LK7U8)NNNmD~o{ zo$OY~K-x!)li)UxibJ0vtJw$<6bGV@dryX}rn&4^-^V+gHay7StVLF@DwqzWU>y8d zFo7{tyDA6|L?3~}3}8(ScdLT;Kr0@khtR^6R~3W@QZV3(0jy~+cdLTntI%+3OWQqL0mO6_|&19TNN}2 z+Ee&^R_kOiq7P=MD)|oxo?`H6wps-LffNiom%(U4y_oB__@)iquT?g2=&}x8@tt(y+rsDo4rhWrXRlT+ayWr8x_7Tsi@MkP2o++v>`lB~DqND|ye+LDJA@43}} zzw``lYwbfrlJ)j`BnfVu>_ae;*Ki+j>jp#ib|Y$_Ecxsa*Sxa)@6vk^HBeq0lB_82 zACfFD?-`OTD?JpFEG^wDNsv(0l5XkY=-OE6m7c+EQbqDR;+f4A$?u4nxzYYxNNcnG zswBZl#+Lle(AsRvEp6RONj_JUb*nAi6k+~sv?b3m=IUnq0jVt9(ODOUBx|hQLXy?x zH$svd%3-aQW$E@0@uk<7rBwjQin4Tb)rvta$3kyjR+4Tb@yycFrqDA>O7aYc)35Y{ z&@+olZb-7QXDTFF&{Gdd=J&{}0AHZ)d3WfUxjhF+62!&WZwX0mvet(rH(K(WvDcNQ z+a!$O>hkj;tyN{oM~-K1D1R*U%*yhXkmUOEc_GP)awH^KUJ94BtR!J3%34~IR};R( zQ2KD_J&Q|U4M`T2?2u$(&zg{ALC@-tWPXoy7mCv7^+>mNkj(9oS8nT`T%MUQ1T5)h z7&x}p`lwVE9FCS;R_kk#J44T`F8?AVSyh&AuE0GmFAY6&eL0MoD@xCWo>^XcG$dJ8 zl6Mfe1WH$io>@{lBqUi}l5T6!(nTd1ZSY~6o}Y%a7W7;jk|^&LrDqUdW4|LLxyh3E zFGMz3-wQpn);c02!ToJWvZgHe215SJ@{Jr0rDb`%5cyS>`v=Fc@_R#XUQv?q5R~mw zE%eN?(nTT3(vpm9$o)~;H}uTn(lH^)|Kh!?^ycaJz|(J!TVLvx=NPyMmW+@{6JdQR z^k&?Xha@*zdxa!x%GHo$b@_&nWK~)2Rn<-Y%JP>(TH(8WF!4+BxP$gsIy0oTv~+q% zGW}k9acLm*%>Uv|we)6uZ`hU*36~MJynEu7!QLaJb+aYg8wlIBq&N%g-RrE6hqTsO z;rHBV$*7KuJmu>{TC2-H4oOy(SB4~^_z0A~vMl#AxM1bCgtV5GjtxncmW~cd{-59E z)B3>fogTq~c#Y6A(_=brwxk^v@43m6&<2uqmeh7g)|USfdh?CtKZYc0%0CK8R+qmP zlB_CU9g^Ho4o4rXEWa=G%=IP7enx#(lvanHSzZdqBP=U9p=Xws`a_cco6!)V*cqHJ zHdvBv49R*+vW+3R*^>5UNJ3FUkgT)hc7az~-XXOVB$Dzk+5La5mH+?B?i0KB>H1yQ z(ymW*y`%UNPVna!ox)!V6NSqP#}#tjkum3}CFb^3(#TT{PEElQo0I>6`uk0p;ub|-$Fn435yVaIpGZ;qcAACA2i+Z_8! zY&iNF`2XLG{!8Q^ky>!l-Q_>MnsAm72N-TjHn$v6qo$h{ z<~|pyk2tfI{w$-Dxpt6JA7{*#zGHIWxixjhf`G@QzoM!sGZw%}%v_Ep@3vPH84F0m zaq+T?H{~^vxPa;hDVxk4FA^9KeOxOr52TSmR#WCNfIf3Xnl7x}n#f~7y>tP)Nq-+x z+gCN>IJYuKq>=MoQ|2+ie#ZQf+7WkaB98&7F%(UFq?$-zAUlbfLsG{_@@gV~0U08A zKp6qcyf!Mzo(fXjnXV(8nn-6r>Wwo5yOY<|+pUQ-2Bf2K4Z-eT^q$+A$YVeh;lyDV z)Y|9`rzR2@keY%l&Mr>$HB}}qz#?WBCfeIiwK0xYk(Q3*R1-L0-cQPh`acjyH1xU%l0J1~D zd#a`_?o@Ua8AYlBx@>|JPo@h~uO?C!5PgL5Fl03GMctanTtIpp`V1Mh*9cB+H{Nh^ zQv$*zyPMeyKh;f%Q|sn>WNHAI7$WMXhF9z2dZeMS0vQsTI?AmTxjtzq^cf&((*$`n zk+Ogm957RjSL!v9x`65j$@@%3i&GOB3}}Z1neBA9c3w?nE+FNC(Yk9{JDi%xU_b^K zu3HAEv+z?5uvZfa3`n`S-eiDkyw|OXJO)G`^=22^rb|PwmgECX^jq%R7KRL&Hxgw! z0|cHjc-F;=cr}sEfRqaeVeo94CvHuoH6Rld@NPtDWj+H~#Rio2Y7tdWA#jMHv?*fM ztt#^wAaIDGwRTClRguqtG!@}E46U_j>sCb~1EPo+SrbfGl^G0>U5UZ8(EzN93V6ofE{Vi;M-NJjAIpeAeQ6^#a~N+Cf2zMAKAe`TrKP@Bba$ z-QD#t^8cODWfh+*-cx|NQ)!`TcV{a~pDB%(>ZrX6xB+XOGM#G7n^a zka>S*kMzH#=chlK?oI7X-IDrRY9#q)@~-5Mk{?JG6TieQ`00sK{Hge&_^0FVioFus z82d)-&{!t=aP;TVlcRe@9*-=ZcJg;?qBF_pA!39g;A~{ipZ@AVggYFhOx7-HVL3tQ!)}@doV09%_6U+WF#Plnb|I8+eb-0m_SD=NK~Z5M7MS(Uwx#*VKXw@OKVVgH3bu41g^lyZLQTa z%jA*sYDy*o&YjEzG6niNHNiw64Mr>>v)y!?j$2bQ5I~(_IH_GrZcWKRz{#B9q!wqq znv#KleU%v!CV+HnN(KUkh?#C$*l=osfk5_Gm|o0u(|m?#(5)$%2e5n?qIM`yFb~L> z;AG1XRR*q20M_KL@oIvQK=ctU&H&cD3I#EN^caj)cBt>*?Nl-nV68HQ z)p9nxnv#)#bV;oW$V0DV*rzvA*#8;!>Y*)8Vf^I{cbNP24raA z=44xddG8wJ<&vSrs%3zxy_E5416+|7JgW_;roD@u|JO#k@9n;(`_yh5_y4Q9&g(j; z_?O~D@$%yF#X{j1g`XBqEA;07J-5wT;k@$d5MGKe`??VzY&{=U50Ffx#<1TYon({ zXGDGJC_%!5Ah#?_8i}Ki3V=%x_ zt{53oE*2d#k#*%d6a9Qdsb0W`)aiK>%5Vmp;Ms;@@OhxU%5VlaMHwC&X3~&5A;KBR z6ox*7W!)5pqB4#Fu*x-D7z0;?LtrSf1=ia@zs{IK zPbuOTpg7$2B$!*Oj9-8QkeQ8|eFzm+#xLM5g@L5b^??eD_ysaFKs$z#h7An*B8-9P zqhN-XrUttc%5Vn66m`CtK#P^(3@|^L+1g=0Q6uuX)qr#L?WtzG#EX_;L_kYMNjX^HzvLqkSRSNRqM=8D85Cd z2-snGsk8La#d~l?vfdFL!0=MH3Y>}ExgG&_n4JtKH6Kt%dAlj~f=@=<_^CDoXF^0V zkn-RtWw@xh9m9wyqZnZIF+4PHxymR8#11h$)TPrv!OAEGbP%(z4H1ACQ4z(!r-JV& zWw_X3Dv0m}syNifMV;dSHCDziz<0Bj5x&1RJ{ zfB|<{3>XbQWi(tFz<`h<28F%%g<8mRo3oFb5c)EKD2a8kS5do>ZkKnlibmjR@ytDKq$WFRmAoMW(~ z`FzTdQxkCv6y^fDxDMvrnh0Z{4GnnhIu|br6!8nBqPVnUxT?cPuci!N0NyZz+2F4n za%&=dfm9g&PKJ~Exl~ieEx_<(K-pnPMce`zQe2@igf#AXH4(o+Y7A4K0j1Vg}n}wJ&o$GKb)wWQLzEjFg@Kt1SNigSh|y zb=O?~{{QLX4gUTAi}?QE#f900X#U>(mH7|m_s;z;w={Q7Zolk~?9JKpvcs7-GIwMy z%N&=5e|@egD+!uP?jUyEoH%D4yUG3eL%{m{kAxCbB;Gck47d)Qt@+ym)iTu3lTG99Vi z31$2PdtoM7vU_=&f=N{i%BTLA2_hM{Wt}%O-ch0&=X+~L=V`@kZ^DO zRFl`45Md9bp0N5E0_u)A&V-11;N|%y;?~y12ma~rSC!{Zh@b~P=b$$fx!pfg z^wF&L=Au3Gx)UP6ftH8_46Q*K)h=jvLPRzYMP$M;V5U1ELK=u7j4^gR@8A_w#x&rV z%)qvTCqu+EkQEJ20>d8DNx_*Ap$%lhZ5+Rd=j1oqy<$*Ro)rV@it^KAYI*Oy0{0aJ$oo5K}J#epykLQQ73 zJMm$zPYVuWM74hiU0~sRNS_~phYs#Gvfexg{;A>+@sWrL031x%> zu$h^)rb+2chzJM1n9=ajHd5*g5obaKIFPA6q_Mi1-FlFb>TOF0}@bJ0Suah$8$83@$qijfiX@H3r@>oHXH`J0Sub zNWr-FVR)&<3wJ^t;Si+F?XU_&gafHDn#vH;jIbiof#}0)#t_nYn4C~XJYb9<V?6 zJ0T(-NLK+j7((jebYR_zPzPG$AT_dSjJyeD!~-0Z%sMt5K->ut@jxmL>zbY0wH^v@ zLWDYyio>jC5NnA0hqWsr9?1H|X2y{AVEk0;*PBoTJOD2S+SaG3Tz5hQJn#lXf4B{_ z9rhxZ?`j?%so7l{+=JQrC5_O1=_(I`(4m@M3?_LX5)e?5ld2O6vIJGu^Y} zS9f0*AI^^=3*hhZ-N9TwhOhE%O|6PnbJgg}g^h(}t#9iU&dpq$UXkfau1&tD>!H~B z-HFU+@g2U4vI{bQ?>-}aH?sLXmAeo*5RZ>;$Jh9dDhwC;3cKasOuvzTF?|gf4OVnb z*Sy%C`TcS~$F~6w#a9QP>fXQgRl@GQkOlGD*y;Hv;WgQkUzxu)e@Xf~`SV*}Dokcl z`^UePSrWe!xe~X;RwBFLQSo!*8&hZCi-emqJF>6k4#_)*LDUM6aY-Khla+E_V@O7P4&dv-{2 zy)~0cFgh!(K1l*@ge7G<#CvYCrCd#r++fK$dvHdx-zB{V_h6P>Lj>K~XG_l@n$G?% zm0&Ecw~AEKx-PQhjDRk3m>n)XgL?vdOp?IuRbD1Z@U@bj3qq24Jx5UqN?%c4L?v*m zFDXeigk*6^nstyYD#;_*`g+Raq4zB4`304r50{s}MfDi%35v78H}dqn8d-R`~^u1=Ape#k{}6(CF2I7L#+MiGw7cc8Jk4C=hBd`L*Lv@D}m>&to1(r57I<>dn;3Ec4ZpQ!|IUSF|7lEq~i zNsu9|EcZP45oHM_@SY9!PU$_Zj9jl#31;ujwv^8aHN3vOnLdN{wYV%{0(xv&c{lnD z5NT<-OOhavvwXWGX?f~b(RL4>G@29t%BlvwfZ_q-Z≪LMcg9x6&DW*(fJJBjOp<`%Y+pkqm_OH- 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