From a6b50e67b630e6736c42de1d541909a349ac681c Mon Sep 17 00:00:00 2001
From: hjm <63528605@qq.com>
Date: Mon, 9 Sep 2019 09:07:16 +0800
Subject: [PATCH 01/12] vnc
---
public/react/src/modules/page/MainContent.js | 32 +++++++++-
public/react/src/modules/page/VNCContainer.js | 59 ++++++++++++++++++-
public/react/src/modules/page/VNCDisplay.js | 5 +-
.../src/modules/page/component/FloatButton.js | 4 +-
.../modules/page/main/CodeEvaluateView.css | 7 +++
.../src/modules/page/main/CodeEvaluateView.js | 18 +++++-
6 files changed, 114 insertions(+), 11 deletions(-)
diff --git a/public/react/src/modules/page/MainContent.js b/public/react/src/modules/page/MainContent.js
index 21524e627..596da84af 100644
--- a/public/react/src/modules/page/MainContent.js
+++ b/public/react/src/modules/page/MainContent.js
@@ -31,8 +31,22 @@ class MainContent extends Component {
onResizeButtonClick = () => {
// console.log('onResizeButtonClick')
}
+ onRunCodeTest = () => {
+ const vncContainer = this.refs['vncContainer']
+ if (vncContainer) {
+ vncContainer.showCodeEvaluate && vncContainer.showCodeEvaluate()
+ }
+ this.props.onRunCodeTest();
+ }
+ hideCodeEvaluate = () => {
+ const vncContainer = this.refs['vncContainer']
+ if (vncContainer) {
+ vncContainer.onBottomDrawerClose && vncContainer.onBottomDrawerClose()
+ }
+ }
render() {
- const { challenge, output_sets, onRunCodeTest, latest_output, record, st, readRepoTimeout,
+ const onRunCodeTest = this.onRunCodeTest
+ const { challenge, output_sets, latest_output, record, st, readRepoTimeout,
onTestSetHeaderClick, loading, codeLoading, shixun, vnc_url} = this.props
// if (output_sets && output_sets.test_sets) {
@@ -97,11 +111,23 @@ class MainContent extends Component {
{ showIframeContent && vnc_url ?
geOIlUyNFQ#OQEE>0)j{-lR-RvugZQ{IpM; z+m7p7Sz{r|cI%=YzD$@HmEePeWv$-FV4o@CWj}U0NX@SMM7D3CJ>n9T;T;}iqNegQ zv<_S4k*jX3X~L!|+1ql{rD-yy4vDiueubywwYsueah@xc2|ILtrXRL)S|#1otf!mn zXBhNSG(u-2XK9U(>+2)?vS6SS|H9Z(VcR~n>B;Jr&K4RMZn>(vW0FPj{!W*R%fd?% zU7;xvfw+lzOL(yf`1skBg&XTE>{Q=s?{eHK`4Uv%7xWzU+Wu_G{T&{ew2VSMMBY%y zQ{nH=*}p$U|6&O^|L7rH4d08Oqd)&M(j>&o4~Sn>Qr!c^rvQNbBpAPfLRf@4c0%2u zsYRn@zPBe55 d|NAOP6!=xl>Psi9GhXcSn4!exNE3rfoz ziL@s`C?QaAI0EeeH9*&dZwD)8@SBQoua?aX2;!m*3c3es{?;el`Kp-%TwDH{Hdys- zux~f0J0p>nT5uHFQO(>I1~!sfpRyJUsK6kgn*j>P-FC1 1LkNOdz1}= z& lnoN$0=CmYkaCVF#1FIqIeT;G-GZi- zi|TGc&KV*1vw%STEL<_SciC;ZYK3y$Eyz3AU)n8zl>6EBMVOt{_o;uQ3!tfZQ4Yig z3S0u37R<~RNVNHR |I24@`|5kU={@>v)I$LP#AW#adn)VPkcaMwq7R-NCujyis zBGjwjus^T43r^t*hoO+pm&{OR& %$5LQ3PM+r4(f;e47qEJW&dnCf@`z;54 zv_L5QQh)GAy{3(o^{);4e>8x&?ZQLaK{EFZhwqV6q95M`%{fhIqx?Q7_$7PuyS^PH z)IpkPK!Bv(Ei)2&T_%+G5zgR=h#;k46d5`wzN-aTO@Lh`)LsVoEG@wnd+-d#e!+w2 zdrd-A^lptHq22&I|9}x8)IgH|y@t@|23Q6FM*zV8;XyJ5HUD7~{(sU&pas-5WSaI6 zN|1?y=Dd3lYWWGpZ_(Os8Vt< 0N}_Quwt(s*uVhY zMfwRmF+BrMgoFJi_(gXF1YszFZiI@g;0HXw;+`Ae>C{#5#D4P|SN1Rx+6Y#aFfJWb zCb M`@c` z{RTw|gWKC{!*8IJTrO*?Uio1__x`B<4S1h5(%IvJy^YlmN>P2A{N*3jAOXlN;Fe}+ zf fgcln_I~t?UByE5clx6{x2%-Hb6AKibO!P-iJaug06rI{8x)f zVGo+tf2%!UPB6v)R=*!)vGu=#6SV0JG!SqA{1D52C0u{g_rrv1qVGBg<=(ytGzH-< z2p%}x2%aESdG_r?^y!-lg4wMTV7BU?Y}P;7tbeju|75fN$!7hN&H5*s^-nhIpKR7Y z*{pxES^s3S{>f(jlg;`koApmN>z{1a|5e#6LR{w*7|8(uE${ Ejjo`IAH|*$l }hn-_+3;Jabw$S1(d&j*~7z2RsEvxB3U&Ea6&QkrF {bjsj4%}A)VpOBD|tJFacpfW-$p~0a1PlL1AuY@V#*{K7KJi0U;iK0ZD#Q zNg)a5?*|JwnzMzaq~;}s?_+@_X_oJka&vRzbra%6I$QAxNJvQV@eA?^3i5yuJTC4C zl-Ug)gbVAB9xlOMV9qv#JQy?7Bbehsqoi3tOutRR!Ev|SKcv+UKnvI|oFf=KB@Au> z N%Mz;{eC+LzI(Idk2m`Nc>LXFg4jSKI!ekp!_B~SnKqaz`@!X(+1g+C z1^faI2a{`XX%=Xs01rR-UrbwoUs4d-C~%fvT#}#v8>lKMLKa{a?%#pG?<)8W7-?Z+ z>He3X7BERmq_cw=NMIWWGb=csts~ruFr2EYq!PjfWrl#kl`cuMfK%hOv9XX8F%uCI z<+n8F5rvss@Q8>D3-Cxth>P=>^9u^_3kVAf@QaxLxc?FohK9Hg-TzGyERZm;k6p4! z3P_lVTEK+(c?8TQU_9b*VL=`VGhtyK7~D)mK->%_DsCqBqqlGQ0yFzxdxfyFfUvR< z6cP{-0u===D8wVdFD%AmCL|%iV=gKtC?F;*E@Un$!NUA=Ttd8C6=?wyT?o !Iy`B?t@Q!zJ}5VH_7=jX8$GZ*EN zFb8E-TufAmM_9rf4ue^Unu8MdpQrLKO7*`w6&Ml$C3Ajq#?j0fd|v_ucXp9xv2;c{ zFq=6#f=M$oNdEX-5f oB`GF#mr!;9tty-!mxx zN#6dKn8XJyh2IPS-@n?1Z{ 76M ;J%7LL#&)UXoA>^NN`}D39L_ z%SAJ*pC;xf903M;)km5|-U2NLT3F{_?Jl7i>g$(gXdnW;zjev?v$Nj@C4l_mt^BwP zbb+ADUEfRQhmZ8n_dgW)hXVgl;2#S7LxF!N@c$zU{EXhf5#SSq8yK7UWl#HgC z)BbJ8_}@Ac|2#-`k6-SDc5oB#HvHWS!k%^_ZX#|HB5)J<&pqv@!9DGXAev;v;J)nL zgM2R;>7IQg6yV-|a8ElxMgoq%+Xyz1kQ47E+6PeVKLijHk$}6}Ng#}f$@Za%!2Rxr zNso}7B0tIk>=ih6L6DVtpT@=GW^6( Nrms*$2i3;m(g4jl9!c~ujw0DS=-pUy4`U1 z@V)1E|ABv4ctqrrsOaRB)U@=B%ojz)B`;r FxVGJ~25pJ+rd9 zw!X2s1x_E@g};Y{bkCkWWMrfcAj*fqUHGH|WB|+23mW8tX2+cNUcAK`Os$z cG*uVt0KB2rqNeg(bg$ zw&RC?+mC-nQO{C*cT4`y{rH!!S>L$-B>iP=&(wy5lD>`mgQ$#Gb-mM@T$0KLwjTb` znWgo8Gh4rJo8QC(+v_H?Lp$B2>y_yF@`XXqJkS5jD)24;Phi>l{{)t8|4(4q{y)P~ zbB-aVtOWO|#z8uuXq|F-koG}a40VZUG5x9drq8x)=trj#t4611vTTiG-xQqMf>hwT z8n|=+YozQ%>r&jwt8PN=J(x$HOsCC4w;PtI#6{zD&P+Z?3Cv}<^(d`zA%prR$(0wv zlO24Z!sPgt(%=r$cfQ=Rr5Fxn5?(JJuMH}RJaudOk*{B0Pt48K)DWJxuesJ46%s}5 ze8V)fiYf~+KC^=cNMp>q%XlEPxK_t&!NiTqQs QMRHm#k?H%-&~QUrV`?b|6$2 zFlnG}`psZAuEZ}Hq^XjOlF1;~G6Ua#$uPw!OJ(9f?X_*d1Mf`nKuDL#K5&~jT*1gJ zm||Z(Lwv8cR*jQ`Q{{TJ4y7y&`Ecp_rII4d2tB5L%w1C_&uD=vghBRkoE*FKRWToP zu~_QUsXU`6cKS *N7ksn+j?vIdfTdGO;HA%Rkq+>wnG=lJ}~ZOo!N`4 z_#av+e8+!FtWp%}d+BQm#B`}(=(WxP`hNF$dtVt2#GG-~{k&$xfg$CLcUrA50r6Tc zJ3B5m*t^7|2sMIPMX8O0JLvW<&&LhjLAur~pB&QJA<4H@6;+6T<|^Dl%Q(^0#&n=T z^>qn-j%)wy6D|$^*N1XdPIK4KDsLHrtTODxO5qGE_xbFZ^H(iev>NMrGpnDF5*S@} z Dq6=}+B+_Ag+ ;$LXNh2O@i<$NL^6qB8%|y&Q4;gn1 zcg8Y(w^&hkg^ze!N3C_)LdIe*1=jMk?~B*u`NdKC%iF{`8Y^|&qh40Q*A(@c^JQiS z)$zc8Z(XXycm9{TovpQrz?@wOmu;dc&DaVUyVuqoP*ta>(<`0x5|)`X8<+D&yCJ2Z zEMDm3RrcIy5lmrq`-8JtvC7raa;2Vm=+!GY?f6=73;N_zdhapk)uH~>FY%9~j4b$( z!@-8#w2B(9ox`b4Y`?Z_Omos8d)sGn@uEhnSTs66Bigk%9zCB61DS3DQ4P|$1<*!# z{%Hl(si0>K>RskbFNEFCSze5`mBhMUjHc_On~{9d$K|hFuN)Q XzWQ!XgL*)EtKUQa$ucE`H&4lw9j=vj3 z^Xf;^RXI^3P*rP>uH$A0y{6qNYKEk3%GNnd*N*pm{8GM9xJ>=>VEc=8QNg@}@oy~i z+eM@iLT4Z5`qO1fmbz=-(^JQ=e7XY~%jA;(8awe_|0OOKH; Mq^H?`FCh0IMX6%d8 Ttt5&f}j|UDP-W_A4H# zIl{tMx~}m4Pnq?n?CdI*ZI0h0T176OpB<<{p(=!kx=qE4O(^w6tLH9%s`|8@dWV)o zTFhk4KA)x9j_uN-xeMaJ$`QdD0S_(f^6t`2g*8)yg`uZk4vutsC%stqq{$a0!>|^u z2eu5L1jh=m9auY^kdc+Yx)KW1v1zh*`nFx-n$oAe25zwT`}-1y@BX{|m>Tq=*)SZa zY~25OK_6={^;$i5$k;bxpJ8NXpyj(Sn8_qf;ZN+A8jAt+So? z?k?Tt#{+zrn>$CbB{)HQ(?<*k@A!uvF0mfT8Imf^+^grjrn{Y)b{E03TxvU}zDj!_ zN0aG*n1F_6Hfj+F4glvQ>o9}|rXBhR7;d%DBMU_XVWp*c`-)5W%+TSCCUL4GMWVQ` zfi|vPR%iX#ZOyC4Bghu(6CTr(F&EsKFK?;*?|H(x4}c?=0b-@oZ;0yH;s6p*ATCg; zx~;2t-Fr80T+_M}`NC6?sBpb{eAb~Ms`r(xSC`Py3RiD~mU)K~4Si(;lHm89&jYVN ztfy)ThI|XX$`N&@+6AWNqZx%5Nu1E!iS}_t)w#N}QeyU>raEn tlMQcN*7k-RPq3dY@n0wLBc)+B1wb)E3A-te%VEY9Q1JJO(qsrg$1 zYx?&*@Z2}t7t^^L&+7moN}>Qbe`o=kCBg&y?&CCH$O1UVv28q1B-*EiP2JSH{ce7) zwpUWTov&+0Ux&hCP0dK_#eLf|c4uuSucVsE5wAK|?WbDOsRUO+DX6E ?;`$a4~IYrM<%gafY4_=mpF?L)oI*IQ<31z`8lrxyT@fE~y1x4Vago z;X-yymD~}%dfI9}4mRpAJdk3Na6TARwqE~x6@HwGs=?K|Z5B?ek5l9s&<8JxpwOtL zgBs1MI#-u2oD<~Zs;|1d#RQsM6;QvrBvS9ial|EFdv=eVhpqi`zC2w}*115P!-}gM zAQ#TNE^f*%X5|@Z4`Y~1^{g89p1vl=WNn` r+WNZ7SLxi{s4`_ihk=XDO6Jxqm z*H=jAwf?d4q4rVY3qd>FbGE6Zh`q8_#_B{b!SUK8@Ib8IQmleDG9LWBrXrC!M0GX) zr^kqTia^EBAVH_M_hUz7!>dQqm5mge)gGd?YVGe2rj^(rl-eE8Xny9&t#}Z3TIr-^ zno$$nAw1xWQ$?Mgv<*p&;}&zUSMHs(1Tw4Cj-#4c58WVA0>^B OZtK=;_A~ z$HdT pW+4KJ!}BD&_KLp$~R zJm$)JW!YxUGWxg2yhp7Lss#7%n4Ygb7xA&5_Kb?6Mp%4JXqK=4#jx6{&+8^Ljg=!u z`$L^R EE5oae~%OY{SKo03>UbrHb%W(6G2KLY lrg^9sIqMPk4Zr9cP9I z8tu&5kyp-Il+uiap}fZjs&A-_6|`O#RL_0igXYPg?)O+A^|kaLiKkUEcpnC>&J~qY z0d$!xnJi~6T_Vz EOIM&1JJElva zR-=oX2R >3&WzRY%*gfQSWl2;AHFhuO;ejx zyj89EkclU)ac{y`e=Hs_Mt7;5ey?Q879LcbWOEu1*fPf~gJ@=ME#QHPJJ@$V>fO4! zZb1#W^`YloMW5e`;+n1(_c1@Nef+k#cwB*%{D46Ir@b<9;PhDCPo}Ezsjo)aKXSdA zd+|!RK3%DQpC8*mWL&Be+*}C@sl)|PjCUP0%e0L2 fQz5qQCbSxUEy=+J zrNKDpVM~E2+vhqqciOggb}Qy{&<*t96}4mc`&C|uMbPo6$7 Hlb4VVpfGtmihg^k8rxxpRXiO1_HOVFa0Omya)cN*p|C7~?coSHh$@In#lu z)GJxb7J`c&zpj#gf|E<|!5Vc=o%mMon>_@z^Cw&AGYq;u-_)G%c8{fysLa)Jq;bx; z`F5>>S>AgDLwRt r}=I+4e4?eZ%w!CHpMU zIZ(b7EO1z-t&aPM2OArxO^aV}7MKR9&&^Af3ypb7UibQzYA)z$1ZU4OwtQ&+xP7$P zHJs;SjoQn#T=|a7#$eSGxzED Hi7{P&(cx+a*uK4scaqg>h) zs}QC6m>0Fpn}zVY-lwxM*WbZl^NN!#wH|x3S-pV)K_mOP=E@OUla#7Xg-~}kU}ECJ zvGeWwjLW-Ax6G@KIo6!yuMU ;L6)4> o#9vmFxfmN8nqWQTir@MC?-Lxq3?f}P`233ZY_iM_-h zTwFk6KmQv%|I3)uU7y(5hc!;F-Pcw{haWaP{WA2XcYFU4|6DvUFXuYBxWT1+mhOeG zropG`H;;)Rya)Y~Jqn3h2gN##g^FxOQ~JGix;>@x93Q{qzQgcBbcc*03g@ps5qMWh z04NmTfYd5M4m27N7rHnn?nTpPa i^FO3%(%eTC|oJpI{L4LEAj;Em_@utwlP4FiM;}blJ zpBfb%(X6I?QUhv1`rq>be-jLE0q_Bm8PnJ -q>@wH zvTnlTtbo?q;knfitEEoLl4gVGvt)~~S(_w|E6_8p;gjuOqRd6aAaBF5R;gbW#>cua zEY{Xz-c^ewrB05Wo!rhMit8Lj)3Rmy_f-^9E*(ak^ErLd$k&kG*&7tx 0ifva+h&OBimcn)s{my^zLNogalY2U)R`mzWbWIcs17a#d6HMI8M#;>I$73wFod` zXBY#T#n~_J5C@ o@Qs^~@s zhz9 xj56BEF8CX?4uIOOBM0! z*Yq@zRplU&m-hXo==>)2KSD9Bi#R>uO^>_@iLX8fs6saivGLP+MT^I&riV8C;;P(B z`p*tyrNIH#$$uSy)OhY@+MxHT0Z)@$wzx>ARnzOAGMR(rYJ_RMQzD;5h-o?2Ppe-b zpM_?0$I>KB173hq=6(@H*QdkOqSeuGi0KP4C~VV}-z~(h3-SXoLd9PPOo~Cb=&rfy zF-+rjQPSgEY &CDlI^?LS?tXFzXvM5L0b01q%@ zp2}98Ib)N__I~xaoz#$FW+s=@Ibm_1^7q=!7gy!W56kPnnq6FZ8zeb-9AZt6)i0z( zg$%bT983wW{LhfU{VaOY <$_3yvYPPeBQ=8pm6;*NWBV 1SeN(S8Zalx|LqdGxJi=(1J zP7>6yp@m#@CqgKcgs2NojvoniH_wjJ#gUhkt{as8uws8o>)-Q)X~S5ym`#I884fIL zU|4uN5}|f?o-g9W7fJh*q6WbkOWTSGiv==r`!uxF)DshLSLQo|Ogem{K8bGcnFcBy zKX4iFft2_M(*uSZ9OhKJhN*GNuGEHmQhOQp_s3*vUS@ns`L_9UHm`i|BaxffP$VQ= zY%?>A1-Y5IR~a)CZT*-`jh2LSnkOSbu6AJloF9LgP0SJ7Jni;E_9P~{_Q}MOB%m%4^N|Z@j@ff+|7oM^6Axg#TAG tRH%p3#Y_#9~v=(s}H>qwV z tMSor4DvSBpdGA0=hhTG-88PfB=}kQR|!TwIVU ze=j;DBw|m9M|AXqrz{HojbF|KkdKlxi3c8=V%e8nkw$B^o59#RQ5}=6S*(tN7 sP*Za)9Zs2cCV5H*spF zLSjcg8`3`+rl<5vTN|iN_#DaCyZHst6TL@k(~Cg|c68@)avZ@Ss~-ME;eS^lXhnc@ z3iH ThdwPcWCOPx5~9MMjD18MpMW9lAh6 zkd6=xAGjo43yK`3@Dad*Uc91id47A$S*P(vgyGz}<|uOwl7hTLB|D5h^ !wJ(FewQHVJG{sVm zv*>z8V4F~bnlL|!4cqZb(E1lg_iWF?*DTxKAcx8ZJuzPPvF(r28s^Hoi<~?38_AHg z+NGazs>hw$wKY25j0Ggc@G}#h>ri{K`5WlPl1Xw+_?F^0x%ONxC>gmK2?-xHr|TWC zX%CZWcQWEq1>kEReM0Xr7@ura=1B=S#pT^y+ETL#n! Vi?rRlii$nwJ zv<#KnrC%AV7Q5lNh%KJLo_h|$REu6|lCp^VnyX)ZbMWdHBs6W+3Iz m*3 zFcVE#WHwuB@R-E8q56jA5-#Ea&?QsgrPwLgJ9b}$Q#lkp31xn#V*W@`rr 7==Vw_5%0t;tIl=?|uFsW5RkY Y4|zqlztv&R%< zvtcD3;8EL9(_7lY86GhgEAH%BazpySMjiy+a68B=CH=HY_b#Ksqo9&Y 8}PWDBkyQ@>6G&fYxeyWut90=d}Zqa$}` zhRNUb;PY3i64L8sg@e--PA!ci_Xc}AoE?lKiZqg}`MV}v^l5dBOm*lAcA#8(UTn}` zdy;?e={#8$%Su0K%y-@E#ysYhREZ#y8_L87F)*_w`D#JhO%GY$W8 gM7Ax+kS}2bxb5%ebOMj1KD2natwPw4(<~-&`#+yZLNMC&e zZEIV691981Nbs`InC1KiW+|-#Cyew^&NN!Tx`vqUeW(2Lt{|MhLxMBj!7BLJo^9{9 zC6*~UL27gyB#{4*^axvmi6#G-H;#G9B2C(>Ik8oc`^t8mLvD>;7a^1VaVFRx)xbzj zM_#9>p#2%^f|GMwlPi1C0JutY?Z^VMBL 9f(`~A|L zU(wK=7}=(xQDFZdcdjw>L1c1rn_-l`HbKX|dtw8+calo1OWX{QkCJ+%^w^KNs3WAq zUoO%ok?SAJ%3+M>^v%vm3=;%@?HalzjMiS1Nmfo&NXox@BEN`2Gl?l8A*HtEWAY(g zTjko++d9mBjgTtL_+eu5z_`f%#h6hmN9_AeiLZKNsauGbZ|ipYKD2*1C)(M#pt}9? zw2@CoA1aEc %@f|DE8g|Skni7PcT7Ads@Sp2>SS HJ4#s=Pgb1zz$x##KBCz7Serr#Os+W8&RX(?5FQ5PmH}cpN--RzT9sFJ5?ZA zAz_)88vgj6f0EF-hkmn)o{;2PFAl}xfkD~Ro~*L{gFC%t?~6S-T(m_LV6F>BohDYC z(me%QT18hLQOYurC9 4InU_iOF-A4dp}1Lt<275x&VJ9k4A4>+rEKRBkrs>EF& znCw*Tum3r?$M=%_o)FcWklS5ty1DE%;WxRyEV4=3U*^Wudo{1OH*C7%SvVVyqRhKl zeJ=jz6X{`6?>`Mnv>J!%nJx!+5*|m=_`aK%KYTFz_WbjgaU94y%Ob_;;sMDL)1}Xw zHLdYn#bY|!=AxG4R}?KiaX!6Ox|N0^@*Upx9&2S$IoHD#nV!sUSY@iVC(BZv6|_=C zlLoG$jq{YRdl|C2_4|05pKsIHU0;uD84#b=wB@cI9Jn^)mC990u5f)%M>v G zqW18SM~5v-+Q9`5hST9yndJMB6TZ}tC_{&8u8s@YIMvM{y%=AyZt`L9M6|>EzSx*D z+ar 8Y^M>qmrCe{m&Y5CyfM!1bMR>rY9QBi1mcHGDXTsbu@J}g>=wd#KWu%YRz&(@9 z*GW$b$WxTqqXUN;Emqzo$ce%L(V>erMpRn$OG1p$viz)lGY<347pIRAVG7)q8UtUG znAEn9tt?ufmwGNp8}}-}Swk0LpL+IaaJ9Oo1!%Lp9vu_rR|@gCnb91^*FpudTwM>; zhacgN>E?ZrdHtJD6+CIA+AY3DNgk+>Ock{ViL0d7p>|-Kn$ig$P4@+TFDTYMYrj(m z{$-5QIC!U&8|m$y9lOOci{|?u)W^7lMCi3#5cOZ4hG`#a-C1cJFA)}g+ @Ft ILBCZ{#5<+tz57eua?SG`7kKL82BT&+lhbpX5LYVX#KN=VtoXQ#Bo2hjt7^Ah zp7>lC0-1}aTVvPfO}f7DJm}mOjE*aDTa#JrmpW?O+S%0(v$0)goNv;&&L7q(LD9>S zoN(JK;v$ si@HM(r zwFy(zujHFv^G%@zLW?b4zMIBM(bGc(w1}M^?$sO+Yl+J<5Tz#&TIis NF&O)}K67 x>G$zN^F@+}=5NgWxS?(ufHTR-pJR9KAhS*@0|y`}b| z#L~@9MOEgkmwm5YM9irXnHxRqmvrx?c!L~Qbg!>JaL bRL;LeUv4ehXF^ZEPO*az7Ap}-=l8)VZTJ_r6AVW%8s5LL5}9u#lizT>`1 zN&}nEna;QQDy{Q6ZLmMcUJn(wmNp=sUEs<~7ep#7+#kyJvX3@BBBFF sHJ9!y! z^&4iw9ZA4Ol#p>{25e?xOZzuz*8|7Wa^gp;JBKuy^`rd#1opoTUwFC&*Hx~npU6mw zhyg54s})5U^yB8FAaZ|z$c^qVFYF#X+_}B}%G1yVR_tbkj_Yhh@=U%eD6CPFfAHqh z)aUG+*ggeQ?)l)2PrgXD H2jkw&) x39%iNY&==fR%8^ryj@naWiCBHmYE`W#DDZeFcJiU0% *%p`vyRETqw{(=7GMe{c%^7)01;2plh5PR=kiC%Jme zdZvK(r0
8NMfNwFpr(e88-$1)(4Iu|yX@qnyJ0M0gMKU25i zL>5U0M%Xou?)cE4hK^C#joc5nL)Zfgz0n6c3myn=)ET*-b&`y$Jl<3r5r1V8^vQg8 zK(iV?)K3Fn)9q^f68OH))5Yt{V3ne%lyp%Ef`;LxD9-#Iij#*|@o0EjW zVU1>xEJdRWK^w}lOE=~RTQy1-y_I^5Y4we@M2vmTCT%lTIyiVduoUA|DOzVBn}7Rh zI&|v!SVFR|VymJU7`Axl1!m#ye!*~I?$RgG^hmoeu6i;R@`vW=(meO 6$1l>CKf zb0() 3w>J|2t#a1k4OMJlWrXP) z?wsRareq&^I-Arb$QvNKzLb{EH-6z#BHk0?C2HrYVyafm{uD6X(2=Id2l{Z}xW##( zT@aou+~CRbt)Dk;j;eAPEW2IP33qY-GI25V=)L!&Q)V9i1A$r`rre+s3qNK(S5QAq z$IN~oipH6W4R5H|U^y+*KEE(*AE9}3u-!Od1J|bO@NsluK&t~*Fxc|A{(4?t3^B4d zrwV;H*O%+;<-jD-NS(uNN7os_*KcKirRuMt*neAs2^D{xKln`@pbo WIOzk(UTqd4$yXbxkTz`iSx5Q;xYmfZn5 znk-bC4m3NI6=3~#8CC}m6kOjJ!vpu3(ksRAKr{yIKuiW~WCXR8u!e)LvBk+YW{nIl z4bDoGaf~ZEjJP^w+;;6V#sr3NgP4=rbA5oVnbf8{fjj%;rz*eNBfe#K=iK6LKG0k= zVm86oyWc&)fo`(!m3yX{#n)@GJ{z|V+F__>t{m6tcXmCXy&RET|9`ss?x-f$rC;2- z^@s{qQ0i6$q=|wQiH5@lL`6hOr~*or7DNaL3B- ztM?fAN x~ex9}L24u$ B8g159r88kNwWDcjo#Pke?0+A$obdH5Z@yeKVGY~UctqyV|H#?QF)NPw z5x=0Wu2{r|55ro`M@aRFJiiibq}{HTZSEjmbsFj_)5kEhJ9e@wP#18QB0xs89b? z@&-_|zjoN`VH#DnD$)F-(5FQ7;Ktrr#iLAH-AV;YDBrd#Lp?SV%6glNl#4m1s!wzq zo;^9sAb-eJE@HgA9UL>Wbrjs7gg$}JO63f%XvVkdN1_U6Gt_$GABF8J4}n@j8|T`- zetLR=du49z1?}RD#1r^0)q#2UZMPb1IQKWLg6ouT*wM+ki&sCppw*8T#J|F?S@wU7 zW3g@rW@2z&h5msN(^T5?d3zl96}DkG@nWk+-(lRQe+b_@b%enjkv#(01{r32r8#!v zA+onF4;(6=AmavBqjc;pC7ypKT*Av=b&v>2esJpJ }Rshn7t ze9G_LN8=hmQi=h8=KAwkX8wPBw*OgS`Z)sopYHIV4)0G5{Lh2Nf5t8AKSiYdH$T)L z7WQ*lf9aaQ1 V$dB)6E<|7)kjIfgpFKz=;bj6$yd^t77<0pv*#{7>gcq-cB|Vq z<~_oBrrFq3-e2?JAz$enh#2e)P{)@UFf8;Cx-&@-Df)o|#!Th|B2*3-oV5 C!;x!kIQd zHjc$$V!3To*xw}rpS4zqZx_lzOGVlvpviTh9&c<87W2Qj)c`Ol7|lBbO4yatv2mrN zveHE6COk3x9+@O+#guNxlu#M4 XAo&; uT$8{BjBzG(F{Q_}GO zP6GjNRZd81A9JyMVSQ^(4j==V^M_f+Qa^nHfhhFym#%+J+UDk^A?bVDuag#C_MUx~ zfNAXNr|q G zv?}5JWhLr0gdVuGCDSdeVu!DB;%xU*+T}rd^Q}*p6{>JIcMV;96uekJRZtu1xN*R3 zu!;;^#~(K4Utjp^j;IZ1Th1mr-h!*;fpdfz^JewcnzZsNOfz>{XHGK{spRyq hEuqWSZ6=VvB!6b72vc4czdSP8?s2ez@ zZH|~wb|>rk>AKHE9Wi#N#BFa8m!N5^J^y8X;o!9bEuKRL5of+B;f+F_N)dI(Do}#w zy3o`TAkR{nl;0vX-N=Ecd7j0PY&(5CB|!8EBhyxg8f@2A_qm1(zifFd^ql{4$lUB& z=AdIxuz?ojQ%R{W2S$@m(``PgZYB@(V$0&kpcALtR($y%zM<6xvV7JT+36h%=P2c* zm|~rfnc1CPLob<5CN-fuZ >%#jv{(XjjeT*^r$wqJQ=gEoepl8Tc~`du196KaYlAYN (aED8 zALy2&6QK2y!s`R*x3-xR%o1eJ_%%nmL4G)o%=)Fe8fG^k8f_h$@5M_KRYH0iTH{Ja zNi?jwiUse%hZ}$2RcL_E1MrZN*vvt8pmoVi_VI%H1alP@ViZQ@ zKyqXJcV4 d8O6%}U+f5AKF(Wg}IN-8zS`^DvLZ?x#@OQuLwl-P&!Q0EY zP@@y6ouTJ2yeqkSd8^6Vk$EZDu8Z!U;txNe(vk8B1%;XIdoqs3ol~~oNT6|_`AT5K zBAXHip?jhgnD^{6C~-__s4l|!L*udtq?n@xF+KbiCz%BAfvZ&xXiS}8`X $ zn E+)oQ|?9YIUobQm%caSQS?D?@4UE!d9e{g#NmAt6ux|$ zboIwomC3?IXWrL7OgqwZ{;Lwk2hsE$a ^X`NlpdgMfkr-h5gV@(Fqoa;BRg#Xeb z;POil+nU*!;njBDE3{U3y#6+l4)!K*4~{roqL%)=={l}>cTToS=pzB^I00T?^sfGl zp{Buu7ttx(sm&tJb{&Yl$Vx;Ia|g)I2bTm6F0DGePfJsw0SNP!(OecYnyElS=RysG z2SZ{MaU@Om$w-;`HG-vkQ=fa#=Ixmcw*E_Dy*VVM*c4%^L CqphB_zpO zq?`w0n}y%V^7W7aH@Ip@KMkVp*8?>?{T9cw9~4#=mT$RH=hfpP{*MEtYsL4%kw8 z0Y~;*rf7_;_-ne`W`5VYP!_sb|1s!4rf6r`tLmGu*77b;2S|{^X<5g`HA$Mh<4v@I z8nqgu*JisM6;veSGG3i1Y=3iwrvRvmGD^k}$DKVt6~b_$!km(ZnDS8N |{h V^V@4}Ie7khNpvOyncw`Oax#E{ zKBJ#9AB19m$zFiftZplZUIFRNQ;7LETfBT`5pur@mq~yuwC@hJ 10WE^6}_yw5e^*I zh2k8MKKxdJr}UmTi;kv;s ULM9VJvV%mb19Nf>J5Z5?X-xn5`(EiNss)?gA1|$RM6_d-hN*DMezJbB% z%0K)(UB*A(%);yCU~?s;3cvBm4Mi^mau=jx%pJK_HMddGqdG^+pKP=?lnhN{)+km} z7=c!1-MY}q34$%STDkfUD#9cF8+gCM0Zb5jzPEE@;mmK3nX9VkbjnKEs@J+uWXe7O zoM4^&D30AzTfUNE?hFncz`e!4%ZrVTV%uzuUm<(tlZ{=q1qqg|vLk4jih_mRsC!QG zn<7An4!(*WJFi =EY-6(o>3_>1ClBj`=2yylk+)1;qSWAUJa*aK9p;L?*n7p+_Itc_h$!OI z_0l^>pTIVCFD)tEaJSn3>GtFrJ^;9&L;5S$l-9`RdCcccoXxKAvQ9se=!6-x<7-#Z zFw4U7WF~sA_Bk4ZPEtIuy(Hs-r;ZJGM63FMmbX-p`Go^gd!4*p`@q>h(1-iL3kZ~o z&OE#HZBY@XfXsu;PE5}*?HLKr6T{~Y90yb1JGurMd%a#X3|NyD_ILZmb|*D?{N8uy z*5BT!sHA<}69I$)4j6BrS_vCOA_e yY0z!em{KB;bJtg#Lr1fOkAv5>&e9<_e#}m?HwoVeexB7 zS?1`E>Dyn;ci}7Q^XA8AIItzV5fckO@n9Ch*u$t_mqJ-F$t #5^xFQSy#2#ND87EXEUHZx5x)7Pf4D9(hSxP>`N1dW8 lzm{PE6R1#|aDTx*8c78-S =mtaMoNr+g?9;{9!YDr83<)JhRvAqVr=+tiD zNRynlAAi+sZDshR)KWq3^LY@S(}BXk85s7v6(;!fOyI+q8aQqIKE&K%Ikk1I5vwWC zSItD 5pk*S~I7* z-!aqoyC{ KxvP>5ooA%`9niT3S7sF7qpv2(o0-QALsYJL zXzc4dh4Yxqe_337%HqlgUs2Fo9tXM-{b{zZ(OEj(*-Hkd=1xwa4?Nwr&7Wp$Z0F%{ zv8}F#6BXg9RP6IqHAy)9Nzs5*-qv2T$4~&TMrH;3DSQIibX`arCHh`H3)5Z?b~jF~ z%J+xM;V125_>`}-e*27wJhI9OU DFwmdKJ*k|s_g)6yBx;Nk@E;qG_c}(Q4N*ML>5?G zv{9rmVF#f~#mQXka^A1iTu;`BWFc}|>|uUNbWY;mihMj`-7<&?QkOt{-il{?l~NMA z7aOSbs8Yy;A0I!1j+SP|-q)v+eo1k#=Qv7+u!hTD(vcbky7Cq8thvYAhchW^Pm2ZO zPA*TAlrHUW-$@BHF$JA5EKqJUpNwM4Ldkz0qh!c(i1pXV_TRhPof2N_h;bSb(~HAB zpHCujqWELl$qI|_EZAq7MB>%ogdV58n-HrIwx4Qq3kn>JF1eAXmj^f*e}M_$DF_h$ zqwx62 eSLBKekcDyi{qo5#1s5FJlXZiS*a zVd2!$zJcC8E%)l;U#j*17;Ws*62Qy$uXrE`g}Eq28hLzMmGeY(cQ1Q3vZWdJPFe~K zYMA*m(r_yFHLo_-w6AqP#5I#};&!;h46(2vzuB!Yg_vs{m;N3++t|9$>3|h8m&MJp z5J+ zl|-A;!jY_2J?rhRF5vYrNL~ae-ive#9MCPcyr%D%me_?slSzy#N|UF=bc*_j)C|40 z?7Z;hYme=Po^p@dMS30jYY6(+n(*03wgYZ+oycbCw>M*> zD@wx-=QUrM{#;RVeV2+JvNBi|)LTSXE~C4T$Ma0-5%CL#6M|))$$}|CXW9#^7aD{@ ze=w(=?j+zzqG$PDvQ^94EyJbH7$;2McyvXd$3B0Pd@y6~>d7JASe?;+@+<=u-?s5e zmv@5Qs1Pbs5o-Ni+qB@v;%m|o`0IBQ1ciXj7Ij~7dGLPrB?NqYIL+_TWrFW`(DS!# zD@9!f#WSNQ6!BBsX{A?1z*~BWPR_3j-30MU7cgw57)AY+g94=uJZB6r+`rSve~!Y@ zKUa&%^X|t$BN5+4+Hz;%k9mchzI?q|N&9ClZg^2kR4iNOEzSA>&nLCKZOFpkKfCrd zRoS5<+dWpxsQ8!K-YPHo*fjuz XH2C z47;@@j(RQRK81i+4CrN@ab94P+efpDiB%+ (7vz3d(@Ts+9@{1$npPQ6j~`B_45+Eae4MFw5cF|c-3Q_ v<7J=w=bwq31=w@PYf73|S6Bc1SqjGs#V7N`Q|8w&TOE?zxD0i8 zz}2nX*_oYO4cv~b#-%PW9e6<#F)gS0xYfE3)-x9QAtP6!IPpBy^f!=}M|aIJGD{=b zv*9(qC05tRbdI&KcA9xwhWTKV zSA7HE%2&HoyeF}Upf>|rx-G?uIc}2)w7Cc%Vo|q9e^mR2(Bosg1NV4d9NSIIRl)(- z9fmaH&iwJt_uQ^e^rdQRt!hWKI@PYc+k~X@ZQsE7SNBtvu B_~k*wdhUnFF&K8X6q9pk@Z9ja(`}if!rOK*U@xC<2u5 z`?3)#f%oeIGTfL-ks?*T3D-e3y;(4=3CE$}YDtML7QF+F4r#R=X*(YZd)-Xz|4`r~ zJdhLj5{_+{IS-v>NL8=|K`xyplb72u6{OJ5UM>EOSQYP_7&Uwqa?n2^c0`xwt$d@f z37*E4hEgMjVoC~10=14`C@G%ySN+oQ*cS9ZwQb;68aU$E5*f-@$ggNZ+3;*f>P`|k zL7n!`Xsd1^F!R^58VB~I<+t_wNexfo-D@5_rO)r$#@OV0UKMPT;77c(i;h!;ozm?F zq(~U*A B!5$0~4YnggY_wemdAfGM9Z+XVbF5MMa7~hdLbJ04riFmgc4_s&^ zFwdC|JvSa`<2;3lkMJ<>%hq2^qJ*FwuUKTkCH;=G4pH%gI`6zEnpjeC)2}+FwIlU1 z i;S$X%4*{_=M^Z#POzYSOEmq)AL$ zdAG a?E1dL%OfSvzN7nrRt1e_QJaeA``7cy{s%FPG6&sDk``?;nm69 zbHx(M!0h6^P%n8WhayaCiK3MPqtJrJFBOett&@;#`S?)(`88ZWiA~XY+IU@4i{4&w zGxJ`Q7dyOzEV uD<;0ON{GyiK%4e_5*82szf;s5P7 ee)7Ey8_D4)(8XU<^#3K_`2VS}_W!*6NBa*@?*8-u literal 0 HcmV?d00001 diff --git a/public/react/public/index.html b/public/react/public/index.html index b252ccf36..de539ffba 100755 --- a/public/react/public/index.html +++ b/public/react/public/index.html @@ -22,6 +22,8 @@ --> EduCoder