PK:Nbmarkingpy/__init__.pySn@}WCHL/OMJDi"{lZk[ܘ^d9sΙ#S/< Xfd T' `H&Imj4W< G7/a1aRCQ1BXsib;rHB$ܲ,JQ*B!U-+P2F'*[cS.Pu$-wXߵ)xb.dN{1Z_L#B7f+Ph5&- 2. Vj]炼:ۂU>2ͽQi/wwt:[L|ER,bfwo @RV< ._o5/-Pb=: @{}~sqv}^b'+vYص@K p6 gD=GOEhrPb5xQ"0<_jfL?4F_|zzWeWe ɗ? bnXQVnnWy)7"mFe]뢀;dz@"kMW6SS 3 5od 95,kЏruN=W(wш _*KRw@N-\*D7v3v:GST薀&4nk-, z$^I=X|iؘ gb߮*OGٱBnq iw#X۱^z% J!I!Bd ~N85h7ߥy9؝$▸?!Lf޿F5r 0yIhK0)?MSikxF#0:ܾ/k!J,E-J5J .%34G$-g9-1cj*: 2/Eـ_ G m#fKDOKo}(i=gVtUlw7*k@9GZud= bǯxE[We|SW^M?yLQPqZ ,O0!, GFz%@˼I+Gb9wGRal@DdA0z垃7\zSc3pa oopWױ \Mٷ?CsԢiRAHR$w~0ǵL%(L6ځң01R7ޠ.TJ>S%1Ō[C0d#r8Ɵt:u^ej,O ðeX'u&FӑKTFdF;:WӐs$tm[3Ɋ&d= @U|2uiq mI~ B:LhT,ОjӍ=%=.Gsnvf4h 5Bѷ\T9b Sdgu %YyهX?%է4" a>qH0,J*| B4PŁufZCQӡPI܂Ŗ !O orifTBA*~V(@JںQ :E= w3fU23ǏZ?ᤣ7XQn5AKLw}~w75ccȆHoG4]vNmX/+I #5AZlM @bv,]%Ew~jY@O-PyaFD7XTfT1*Xf;e:N35C΍Irqϰǯy^LhQghZjk•ީE*0-te**l#⍜9FTIckTyъhڳ)XithBFʘHYgT@WqNC|U׸gȃW~O2;:gb˘|>l,+dk?:Ga#Ggަ"StSq3jli2qawU Qy I qp{3#(2P8Cf\A%?DkFj"OŤI2l߂HDG*.'ĺaٽ.UveD]@RĽqJ3'T;w?S^3`͈=Ǧ3 r>gů|MU j.uQps@"ΖFFf<}fu^b3nAn A>jc{ΔU&>bE{ʜk: )vB_0oxhڮ 1:C *vjw j:ʒ wb Р(r<-7*V`K2p쳦8@">jIa6POc+~q-H8ͳ0i[t f=4) V. eՓ(aozɅ5į&}kbֳz&lB; 4,(ON)5ut=*Ħzaa0u 6=q˰\w"d?exP&h9 Y0vz49@o*J!F|CAk۟2(`j(h'뛺!q|zq%6 PwSPt!|AoCzY8MCɞ>]I54Db-˨4v{M Z-i.7yIz}6K|NJShu#y.,xf> BrU2_&=YG^Z;dwԾ \fUGnroSS)<͡ R'DZIGU" RHW@'!W&\@.`y:@\lR#X2b˰[cMB< P" Yuĭ%ۨ^G**qJ*MU:)Z XM_Y4݈fB:hj0.zm"W h˕u:w2#ŧ#%NW#Uj"STZ\x#)O#16tf/Cxc9(;hȺ-|ލ$H4c}b8WFg2$^Um! z(wwE=fznbpF['Pث Cـ aY 6<7fz7"U*oZF]bp.rp{unil$I3cMqVeh0 9Eu֝y|jHa92)lQBܛ .?8pa,ᆌ |R4{>m ⱷNAش Iy!RmѦ2-v/g zT /MɆ{ g".;.(`}@ [/'Xeiti|[y`Wp }W*䲛 AIԵ%cG a8 PvL],MGܸI"|+H\Mz]fC mjz qX+1Mv7BPLlxFN u>rIpRbv:vs'kZ b:mQހgY%F&*q _fr {^"G]ز#4!,g ?zѬqW]bBwm9ovJ^eD~.pPKB:NOl markingpy/cli.pyY[o~ׯ0XBezw(Pjuhl Cr(&9в9s!)ZeK̙s|sfTղ(^R'd)h kDq^ 2ۨHS^oD\)ɏW2%`GXԂ̒`H5lxCZ\*Ǎb$WV!(.yg' ֛*e#Rw;V1A 2k'PP+rR m[[?&/-ɟ+tBp Axc0}C :p4:SWZŊ (HH#Y'ȯWro]vˌVj8)'O9;_\k2x=ǜ'"BdSh^^>A%ZdEo?a-IiuhPk`b vgjB$R<:<\jB.$ywyq MKfF#*H"c($T,k*:eSJpQ+鈀C05U" >2%&7#C`LVlnRb?C9Zwk4%|8?.aFv*eMU_ݦl#)-  A0#bL&"*Q~Bo15Cchuٔ1(Ksz  3+EK/c+TnCmF\nLd{_oC5q5MYK4ΎRںxmA:ZИbπjz@%4k k` 7: h]sqzfL!ΫbcsszAAG d#Ԏ8?v --6K `4&5)1UwSB2On28M4p*txJibV]a g6pϣwb ּI-5g wWTaxQ)w>_gyUuu(ů=WD|KEm3t;J,mϔ[ 1wq _JIw.`瀙%=Y{nXa@.^¾B|YfqU͍wG0b VhJeޅ1xnB ` |8zŸs7Nz34vzׁӉD.&dG_K8 N {C; S^ !6n_34CXWf5 (A@$kķ#`4n-hI Z"~3]= [7L3),OFBu H;JrЂy bn1*J8 ]M{|/L˾mb]socհ|Ga~C0!tvT %V8ս"g*Rq(jwh<|H0D(*Z(.ߪ{?Nud:%^a@s'Fw_PKA:Namarkingpy/compiler.pyXo8_A8ZEi6@E ZmmeQGRIu DR$ g~RϘ}+M! âц!Ai֔NlirZtr/hӱr(/~Ex>SVnrdɖےQCf N32CmQkHQrU+*uq w(םۺ -AGt^ 5aBw'nʜԜ %Z$ו؂(i R:CτqxGzQfEXH/UX8p4*kbKpn RݗЊu[%V 0?|]sXod V3]S \dxb|\\|7 ]]/o/՗by}f@w_w_/S4X!D~-eŽ8<@9Zh ?'3ȚipEPb v^QME8~+Dg///nS6O?HæI Tj;(#; 7[^@EcV+YєN֌ȄQ&*v]y>^~]Zʪ"6nk#h j jD;P-֗l^wI2t/m8A B5i}~ut^Ft\5ɸLH6FB>ZDK eL)2mIN| LI^aεDA :Ւ˪Fi ֲ.EET9Ha>y5f6n˟dN/^F@%ǐhu }iJ;I%<XZ@GfEAѲE,S2xY tEjN U_ܑw5LU*?S (^P>AFU ϰg C6*gL5G'L$x]5 @ޟ39(_ԛ -9YpQd;6Cgxd fE,umD %&g_6K5RP OjU!0)n-b;Ѳs^S &%H0c\+LYOSe֣e¶mta^"mqe!"Sq|1a#dgΩF:Fx*0* hy}sጁKL#%U(dEO{#6* :Wԟ9k7;0wI&Ie;4u0 px p$gX(RQ I0P@xT+ kPX=\U:m}볚rS/`8twfO.ksAY:Jjy4$`Q#]K%f*F{.Ar%Qerj)qo**6dړc. w El潜~DRW1\Æ*^3NFy?q-vIN2ǯjTNu%`V6~dDbOBCG<Ş0eE-[$# 4k07:usi%)6@|- /μ4~OgpmJn.ժѽӺPR^ٵ[j0x"G@n αTOåx+Z2u{xTMk+}%^{sA#Oy=OۢC06%-! !(@A#g vyBC妦*Ku3T [$x{gJG!{p%# !N h;ۮxXTv2r2Gk+tO`p+NqleJz0|pZDྋS&܍տ,h~D`Ns؏_C3wp/|I|HȻPK:NH}markingpy/config.pyTێ8}W$6>mHihi@vZ(2Xؑ〢TnCxuO*_L XiT ?CYD10J MeR%"tpJ$5LGˇ-MiЧR^@qf@c͕i|Jpf4F0J 0MLE?,]_G#8ફ浖mȩ%ǀp t JD3uT^׎Hz[nܚT\J '㞆 r[jwH4)B-rZL:Yfʼ'/wv ul`}/>ج3`)m@$XTɘ'9͵MlڬkR.MH:TSnhYaȄCxz5_.{>_/"g&/։h +kMU&`YuJYv2zϳbb\j-WuZI @w8j:[,ˊ00[ӧ;OZ ۶MysM5ٳC3`FPB8ؘvCCg76g8m 羷 -p"~?Ȭ!l2貕xPzq^DMIhJ-|{%>EE\F3|D X{A"x 0J,&-Z8.ۚ ,~%'56tߛ<5nF:TbD9gpYHUFRB%G.rq.& =l@Sl U6B˸0ux"*"H+RCDѐeŏ1hPj 8זx.cN߿Rk3sww<DɝߎazHœ-\1<LaO\X+ꪂڼdTkLs |Q&j=i"LhŢy3E;.mWh@캕GҠۂ~tLZCPEHȡ{wtz*uŜa "Zs_,htn8~P۽s̙J%b bwVv|cPKn;N Nmarkingpy/exercises.py*VV~Q%z+uxrSZvc-׍Y^-OVwYy٬a3%o$Inޤl4vF*9DnB>>SvӉ, ($г,x">_O~>=ywvd0 $sL2bMOz ]ܟ0iL `/íM0s&IJ Ǘ?]#&iI 1נdOȈ@rl49L¿CН5as``~񢮞ieuU )-d?+(C}y3?O0$gWȯ iH~9ToG($l78D>ӜO W%ej)|Ԩb95eAF!9ڦM.;5D9q` +*71yF5#7}r@x q  7Bى̲9f /W \BfKhV!p}ۻV.uMC(;5[(-MŁSD$W;|l]"QgArZy(eOrI GO0!]S`1D 4lVsu& ת`)cH Ѫ:e}Lɞ/+шƕQD/i-]YJ \MwS˔y@8L7vЬY]f|9xF`І$c;x%Syv/b)m+\J,VyC1< Y4FE"Nam ,`N  c_ :cKRNoW&3I~q\؀+!=pJLSLpTDjb@D# X2~I,M0/JKܪjZ"pXdh@xE]K5 U=gU#ht_ > QF-`Ƨq0&1]d^zd~H`76ƭ`MċqDMIdI@R3>l|Yxzyfa4N,KOmN,\V\d4_};{ޣ^w:"?ęNdܛDrr%ɚ F_= 9g*Ťd p4`@]h"> 1685fqNLy G՜g$8#L^t/=aK3꣯}t.1xH}={oPxI8;}}W6~ cT6^4뺓g]$iɯ寥9-}ɋ (:;"Y$|es].\9;ܺo`QQƣg}f)flk?,SxH{sT9t^m0'r:h0ȐQ$3#ދ lׄ!AS`3%LS6lQ[~-pWnIɹNdzD* $K/j 9^oCSU9D wDŔRֲ3|af52v 3xKlWJ]%"0%HtFA$Rr]Tm*:7ZfA6{jFΨP- xœ/1:^V;}&Wd H&^~`=vQ/wk9L^5f!x≕gt&o1ԋ]>GJ%,S2/0 $b:0OJ: P}FdCcv%zMWlY@8HBJy՞0RQgCF=_VaScD8ˣcwRcuɶA`PaQI  S3WՍ'6p)\T+ܔLqw>co"/qC['蘢0 9q v|o_Bz{Sz=Tfl`{J7-Ho;׶*`DGs0H%%d InonQI@go#z>HzZ ?3NK͕$~6DZ<@ #TPVbEFi90kZb$RY pil1wzdg+[noMo7\kC`_td06+”J΢ADo.T03S;Z%?Wk$B^A;qd/*quգX6L{mI ]I@X312\ߧb$ o5,w-S{ʫ" ǭ~U`͓wxF`/b7M['y>vYu)~ #BfOUp12.]2:2o>+LtwDNt+WcxKRmI3xlqAZ}h-1Ɣp_v$aY=MzC  QȮ5Lww?pwGo1wb??MSJUk~ǭnX ] 2Mu*{"in$\uQr+]TG^ǬQiEyP ^b;MՉ'`dXƇPuo" ʑtnY9lrU{h|7}ԃ^\"; =klMV| tϨ6 ~ VI.XYԷ/+RW59њV!qYPyYLۼE=:sZzx#kZ /6W7w^f4, fgP{ӛF&ڻeBlk.% ;VX )06K[ BEtcQpF?JKmXuޮ$F40BaCT+zQ*7 r UiK}_b_2yV)GlDP4^զ]oZ[=GK*  (Wdiy/hP‰e b;sxﳒaN(cD #/iŽqE5)5+-8ڴsj!56@mjL%M7C4Nos6Nѵw*w-}rhodr(3$`\4C*QQR>uU"&Ħx?CZۅC`QW:3Q AG| #P_RΦ!hIf< dv[UM/7fu",*npQ|lI8ܴ `5.ZH RLE%$NTҼ[Np+;%B᭼_[x zxKgE/@_F!^r|⹌KWzwyuA[W`wѠ%tF}` +/]6Og[3S#] Pxш"u~Go]zMrW轠Asit]4B>o͜rȻAߧ< -sLʬ |W?*`pe3i`XtԠR#:豋8ӫ|Kf^#i`+J%l՝(.,XUsPv_`<d~ ^ V>ѝ,$à,/ˉ6Jz|gm6jG{PKA:NܜME markingpy/finders.pyVn6}W Zm.Nր㸾`@[M,-$D(Rw;MPzEr.̜r#Ki$H4^@ !f>v"sQ8EK?h=姟?ÂNHNs2[T y|%D}E;SZm)0 $.1QD,ΫX%4G" niB%0˶IL؎&fGh:1X%\# pU) d#ڰ RC9p߫ѐ%6AHQ2EUt>ï耝SHprё$ΑIn4~Cx2^> '/n0`Wf~1 U7*be# UlB<yeV(T"q >(AT//}B/yI]~5\uȔx  nsRlwBj\}\cN)=r#g^.)ζ ŁS3e*ʛ"҇{++}$y"Ԁ' a_`^Eo,Xys4\m:MGenM|78Q wӮOe"Þ ؉ QᰗiѶTg2A5+a "^LeYB8e6!KÒiV%cU6AnL<ޫXl Qf"#b!y6d>cITA]Bz9ŵÚs:}!ާFFkKp@2Ew֝MxsAE PR>JsSEB4IAj 7N;{Meۚu TWDA4(}JYٱ}7C.vf6_l$%Q>iD(oVF0_C۾{>zu&;Q;\-JQXdwvw&یxnGub<߻&m F/ l־%Hfɫnw5]@$l%HCrf׏W:m (X#.:bw1E]i=]ih;Բ8|rs0z5é茩)&o:(_PKB:NQXXR markingpy/grader.pyVn8 }WӇ:f/@v$)la6mkG Ink|ݴ'"sx(*GeV* fy f *% Uֵ͕X%xGm*kͳ܂:_wزX{G.J(gjD0*LjUA$hLGELNB%<\ddl`QT,.o%j&`]EH\A`t\.avX\QrӾԆ[NtJ|f t3^`v_=lUIrJt!TJ4_V7;X^fAxQ NىfĤru9Laˏ8jw}^nvַ,آ}T>m&hfT;P@䏑?LFMV/k EXSsTv[[c*P:;m&suߗmߧ\ w.GUڂPYFRçŢtZ#TJfs#״l7l]:݇]]|Ek Mܸ<nll~JV`μ0dB!y}=v%@}|ODcְ\]_-$3^pc# 礰UDG)!܆oPVZ8ݠ6Y h ISN tpGh5u7S7WpϦIvsݡ4u8T v~ufC|!A02YHx7Եl/G;Ȱ)lw4Tr7Xr/?&^+BQE8km^1E2jP[oY֭fX 5Ͼ4`wf9MQ9 7bb9#?,b4;RYt8 >[=t=M**DIr+?jŒjku= y(MF&qufd@atSKͥ 3ݻNxh<~'Seτ0Xh#Fn" e^AGܠoz4QwoOqN.ҭ%u. }EرQklrPKoԙJ?PKB:NLK markingpy/linters.pyU[oF~W̊8SiesADhY} 38Ԋ{/`0>ܾ9*{^ư"!xc¬!6 qlC0_`!XE1[nSΤ~',09BD:o*҃ޚDEE\'ho<ڭ/7AV(+EEC%n Xu͹,\8oP ZGS(`2S(wPtR!6&6JRB40&%m4_Ɂ&EZ| Nn3% JB*iP^Ƿ6}r7Y>RMp=YN fr2~a0/Brz؀i9@l^HZ}x;JT%/HQPH?H(CD[s6~m}gg.\<4v}*$wv1/F U8p_ 5b([;cC" C2J :@I͌y2}ox1Yڔf pj+]EԚ-do\(0Jዌ״/gWjdz3/2LwkC:\ɆYܕXdQ|~,CYS*}8CXSwÿA۴=rGV>*{Tw<K} xc4~kbe$nQoXQxQK 1yبdm(N/u5~2"+e*_Ӳ[#{*Q*okUoa Rx9>84ߋmx非n#] Ԗ+Ʒ+SÏ^$۫u.GQ' 8#I߈+kqoKkFY=E%̗QxsX[1)^YvPK:Ne umarkingpy/magic.pyVn8}W Jtw6Yu8 lA-Q6QH*w,)RT49gfx9.X+ʙ15KV RveJB+ǁ*VZOFJg|;nM@b怯Ji~ +UB$hcdrst` `,׹;km9Pĕ4'Yfk, . \(GJkx7ĩAP%TA>R_AlF+:!]*PQQRd8e40鷛)?V G3D^dQfҮPI2:[j8}@Mp1^O&pq3>?ۻ<p| Me"3<<` Xg叹xF X]e TC[9LA*A/-r d9a[^UTb`2^jV^ p핳yQ$YΣzqƌ/ZVi~$9CS"mЇ_CƐlK۾2cS?, g$ $c^ZԵ^Yց(JDה 2a)XfLu4<7 O#= . 6wC(RPWPǺ?xԃzj"kl:Q}򔕙7_-t5>sG VwfGh^z~P~No{ӑbm,Lr~pSӫN ު#}끭}\>@[mR UC 6X93JY<̅绣 :CڪDŽF_:R[-Z5YPңurhJ/ؿށU~MA]8TS9X({owU'~_֎.ڔxrl)M{$:}GY^7]W4_ ѩۦRtkn롪pzUTc{[/轮{s"Q4_h^WQ:!Ԓ˕@%!ԗǦ0ã0.dtsOOD:~<Ĝl-{ gʙۆLbJKoMQufD׶iϨȻsLvBayn햗n-t7n.1GS%7PK:NؠG Kmarkingpy/markscheme.py;x7I9\x&ŧ㳋ӓħg>8@68.-o- Z&,lj@iY"0<]|㺹~Y2_1St٢슪7i{S++ʉiڭ:Zpk3b#n+MWSdZPDIOI2џ"3UO{Goy<4c$VZ6i^ˆG*Capom}۴qWQhtҒQOE֩~[wpIZJ'~xM+<< yτ'3Xa.P~&.2 jS vؗ&+@bua%'?QfZ5릩FeD5f0>WӃҕ'm+ee6GŧRSe+1sp66ivS1Mޞ#޸K)_U%9n(#}bXҍL$I$QTٴFn7x[M ۧOh_tړؘẵmU븚$~9> |+9Lr>h&9Wkp7)8+>Dr:U'!Y#N͕]T.|Old^q!#.w}[ L[d@F_2ɖ@3!}?DT@) 888`Dy0+"5F&sO81S LB\0^Dz"gx/[5qݗ4eXWW.tv{P hc`'%UY. V .J?|CK]Ze$57R_ zh\[q`&tEg$B ,v>ٯCQ3 KL~rvknяOe0TkwLm4ubL%:熑WB߬z=*ꓔxl2]LC u(cD- lpu & SX\mq^K66O X!M]VX*wJ pcJ"Hmi* MDv̢s\Dw"9@@H[-=ڡ.m +\r8;- :GDW_3?| "zg2C'%9 2*BCo0&cj=uqq'^YD6i-ub||"88k6ao-p<*83= =qWR'x OssYOOȀE[RQ[!XpŌ 43W)X5c21Qv^X;W9]lJs9wFWҊwK0G9{SCȟet)jR<IRTE$Q+5TsGਘ%Doi}5י3!,M(܂ 4-.4D: D;Fm21Fܐ} P$XPhz>[ IbG9*fak}֣ cbB@1tspeJw&/q,vCiA?aq-eԸw;梡XOvYȪuiG NrV3x2z{MZ[LȀFOXt]!8Xbُ$,ba\s χu6Tn $x*s2dDkfV ˵sTe v38Nt$88pvwzϲGF؝Ǯ@SgfCCSD:(|N޴0-QSǭ=*+xʰy,!-=<r.oFJYbS  =eS*D`E`c9yi[EC+۳ s7\VL'H=|| !F}I?BЏ N#G`}Gt!u؅.rDK⑫FEk]k(Ġa`Ef eXuXT}Kb6r$)IWkz<Y9Z&B'3Ox;x)7XO N};n=9˹<brWjTݞ͝0h5+(j;jT!?k`u.x=br?Llcv,7 T*, fYQ4jEչ+#WG\/W_mKpXzIic=# U^&;6Ձ9  `wnp(篬U~PV ^b_hOOlý;~DZu[BBtFA5Fl`E=#sYE-fٷH =a3aO &-SZfJWl, ;G S2hN0T`B!NŻҖ-ySmqґFz1Nhe7iFF#FmX'4i`@Xyfϒ|ɬ⦐u%WCխ @ od#šk`.foY> 3 ƅׇݭ2vI#4C9:k P'su@mG~O529ơ9 }!~Vߎ(4z/ 6h|I0$AܢSmY}]Q2MNfo.7RA7[~9[FK%`H96 0AO0QTs0\h["dN(:/Lhw C:ɍn9:r $RbM_UTgO-{) CH*, Y:qn/Ŧv=9$Mθ8/6v:PK4PR GYqQh$KX'j26~+wN.V;c  Tmӕpk+/&'~A KlWsVȦQ\*H x( ~8Pr_b; Z(D--YOg-dV]yFg40"(j=pd~PH쓠xa0$jM,0AQR1Y2apK4𷞎'*<=!3ׄ<ٍ͇!^x;Bվa,+ 9& k]ȓ#Fynh(Lx3eC;\A+Ay[Un.1̱g B)|@`NrO9uЇMkɎ&?Š`15 &g >ȶŻDT}MMetΐݪN3M^m5oxQ $yk;yE1JC2[-l͎eZ2#ZZLI=D*(KnhSq9OQp>ot5R\oڽ{_ݧ lEQaTӾK,wM.r?wW;2V urB^VoF3_AtXy" O s 9ɉ?v. o?cnon5"AAb+@loҞ` o8@M6SJi4Nы1s51s.c&сM)Rk5è+ˆ[͑ utWy"}?+M >8Ppԛ\=rGt`[_R.zppgmF * "U^+:g)$tR;q%fK@GYm'BFt3VD賃 RJ\A= Nڗ<$H~>:#s <MPK:N! markingpy/storage.pyVmo6_qpQ@e[?-]VxpCV &"IbI =CT-O끺 daH`<\iHF") n}`|CdrƐNj\Mk7J ŋe.D+t3 N O43Xd1̝;gD:Ͽ<=!BvJ@ʛ{- stty >Qѻ~Т:O:F}8MPGa4=/y{%o"5*m(!!*[K&k*xTY> KS &%|3V*]]2l:1ylzVm]j/ĄTk; =%qŪ08uf8VCg]ީ~k'GGjij{YR*Uqٴ0#6ս1==ūת64 G{lQ/D $<[E4fk0̬#1M:3ƭ~2ڡXpڂg9d>pf߻MLX2glg?8YGtHMPKB:NqjL markingpy/submission.pyVmo6_qP>< b$'AtPARq}Gʲ"I _Ly=B]0bU+ʙ ,4KIV)pUڥ{A8TRBgw?3Å࠾6_r+3ZfiC H)7V"p Ld8W)LQ]"XԹNQf{AAA`dISb9l (r:~l@t aEAnD m{/R(%Rk.#BtkRO4N@S| + BLڒ"Q.F 7l'S`:S^]F=:y'M2.n(),#R&"[obBQIg !XZ2z[ȢXTHsxRڂ2Jł ȴ)!0q59,+[\lN7Wxx63va Y[\2nfsTD+.~s\X aOJ@z ^։c|Gxh2kpxK0K(aMx] 5[he-VEvq T]19DŽu{8+sn\3Af 4~H188Y #C2QAB٤Nn*:ϩvݾeÖNԾR٣ &[Ǎ/vSw4Qr8 4 Y޳N~8IqM& X?~úN0ܮ73$lL}zܷTiWFQ ,nSsEs!N|0m{2<~>ieOËJZJ+w!j;k8VTr=D/*15fj?lKP|҉TKo{){4kNDC-o\h -Ry[\O6_4mjW{o;4k(F76$w{sрJgؿ^ozj՝GfCkv>)Ps2{MlO Kܶ M!pL'뷰W.tmr`+ay։t[ax m"|EcclII&Jÿ+K3!ܒ$;wN8YUKvl3i}.?PKB:N2 markingpy/utils.pyXmo8_A,wJ{|bI:a;@K͋, (z;\PppW]s$M~`,/d6G"g6KYEイ/f[0b?ؒuq轪V[Y2`JxJ!+YSD$u,it,L#XjYPޭ}/?q® 'wy"+*ܤB,.>t6]Nr,vl>^wgl)H=Qc@X6nnP4ؖ AܭO2*BiҬ2 }EG&-LmߓbgggB&BIy7bQ3 E560V*VJ H䚹]GreRY\=\E#a6BH9..wsmBDu(Xmx=8=PftW*ҡMTBY,Dꭗ|b8-(W\RtTCJP*\In ˴YS4ӟ\ޗq]bϓSmXF "v%1 #Y7%|)(2Իb%\x}m )-pfQ( X>4a#vLG C>t7یĉͷ1K[·r`+(P4EUPMQuY78.HUj`5i<Z ]ڶM1v~Mrd;Od!>$Y_[i$H^-׺LJ7~ll ;A[u%rT7!FFr7>W5޷:m`j[E^ӡy f-\[ӌ=ъ8JڴjՏwWfW$Z4GqEAcaGP5c!?v0M$LqJ :̿͒k"q$"o)'˱oiծu;g8xrihYALJT|ʻ0(qci1u`]?cQ+ :xAٍ͛`p&f ND9n_q';p_,y5R· STvFkz߿X.yta^]I:A@;%:CG\lc7'zFn OW%aHw78eBq'!F? $ WpU4 6 gI\hE#uÖGtŽaUtD~ +,x%󀟝Ӻ\Սz DJuK35-hn|؀;Y4XrǎK+T"w E4!4yk}1$^Zx nH<xϿ6AcK;i/M{$0/))oKەDms[\Ye-J{0M0~{*^ *-=KGk/WgBe0O8_֮i@ۄ9nv 叟vH5vnuHɞDJ8Q>{< [[}.4lAgX / K=Qc3g2mm%aV0߀3,úy5fʟ5^ܪ*gmTNpkI .,wwCȚ"o'ξiR G`@7] .Ŭ\o1R,ʢe(R)/֠@"X$9\p"|FZmw%mD'mV1SW0Fa=.ko`aĸUA VB>QuFj+WF$Noi`+P%3#r @"l%[mĽabLO:z`T(:F^0vD#iޜِX׈r >pN"B I<OJHnJ^4AZ;J(ֱkNU/"9ِsJwoqIx6%{&z ].d%ԄM[]/f bՠFZ#$- Xg2 R;0 譬Sd0.uұ;AA1-#Xr.@SGncxșɲ765QI,e Й0hCjUowĜ%EZ$+ _$DO"l'RҚ+C+TQ4,j700d3uޯ:1z"{R9aR0!!!ZG? ]Ǫ]yى(=AR, Hj9ך˃J;,d@-JP,-AS04{N +b[-Txf-Xjvq;B˺k+7#.FsxQu0н2 FBd3QJy gȽB^eoj&DE ȏE S:~5D33w}AĆM+>MݪkV0:5"$F9=@b1Ī_]#J7B'r]/RK K##.Tҷmbz XDz-cyR'L8RNJ-czqz}aqs} u.*ّߟ<$:f")߯eVN޺N베+(gbRFCʰg3UB$D eFWۑLjNXWSohyF#9]y*NHN詉 _$5ljHeKrVE|MD%" {l ʳ~eMbDaBG"S0aRu,ʐ D%=/Y?0ph, (_ kd b)FNV5EwE+`*쩗,ϫ9 { Y+d৺'6O2tG@Dz`jTTk܆c(iO;"f 1t[< I8x񔉅;sH=) G@ai9=M 9xJSV f.*^ [jE+E˂>}Xٕe ѓ;$Yӹk2CO ""W:N,cCmh &7%y INUNő ?or[–)A),˱`{/ =Lլ#- RQr#&.VaSdJf`t ^L=*WXaV;$fU_f!ڶJJ3{1ƲmME͒Uŋ_"=7DP&PvTѠ>T[)1uϲs۹GBECrA[(BS_KWuYT&mq9i [K`u & _GExVuR{P(%1< bc&#(&J6`6RR%1c /o䥺"I +!4^pV䒱Y2؟C#Epv*v /Jx@爋" {XlB/F|9A3'pM&*ERYQ`,q(7Zge1}΀at3>*$Ycp.v]^09֌ٕ:v2#\@ >iQo.1: D@&G +M|yȖ(zMP!4.Jz m5bh3drRc6lT7eQ!ˀoo3 #4inj:E6r +$:fm_y']!5b K2ɜPIaHhv^ *!CMy6@$@PýeX:{!x<]֒d 3 5YD8mѷ>`XtZo ]!:$vǷ!I?d+nj@Ѓ}Uk c^z}꜒B =\4Z xHږ<]ߩ-vU?sdƧӂxJmDr? 9AfC@zJ2("(ug0Qws 3SEs5G!w4 en'a: mY(ʾ X+$GWXQB>H:qeZxhN28zvj TC:,1mHoC%rtiF*)0A,t\OW !)32MBI{+,|I~O.') \))vMˀ7 vY ~zf^_2Ȉc+ezpyPD"Kiua13]jSeeBeï$(Dlo}Iڼd?*wp{ƫ/ۛDptӚ9s?|oKz?xʴ$xRq ֓'U s$q3APVJ.9"pXYҥGAĿ,H0dUxd6 FED2BMJdp.Te"[5P}f_(69UDH񝚸lL%׾Rd6.&.g]J@-@z.0ϯځI#0J@&9p c!])n@z3{1|snC;T0p!b!84`T{7OB&W=[ƛ*~I !ْ<וٱ1 #3oI=Uh8.R{ Z eњ^ H}Bv5^x ք0O퓷2=M.jmc.RK֋go(V\N4|m~ ]vƫDW}dlK%`l %#,\v(8:0^I Aa>\[rTgH}XG̍-2+'!:?g駺췢H !6HGzS I1Wf=>-<E|MQ+ƇP4c%+UYpfH$%y}uzőAbqϟ(4W&, 9Z1mON&cEt(90P% "Lz[bL(bw4"6ll=U.*V>J lCچm5Nm-Zŋt=eUJ"%?Zl7?˂Hr[`m,$HA^T_ϜPkWbN-K}H~AenGDs&'oLD[5Rb-IL ,IP# wP'kqUjiL&%chr(DjG >NӃa3lR Q#bD~ORiNC f1SJcY/Q?LWXHs"]ezuZё\!=jFpYR֌͋A% ׫Uֲe&(R` Q+%'ryb ğ.:KƘ8=Siٸf_\LK`R'ⅫG% @6t)3*뾑P(`'c0h+t74II/'0CQ$) I埰wrJL"C"X1?5Xxk+B$_q"uq~n.)یWRkt ObPx7p32CnH/>U>)FP$Qj#nAɒmnd\NrMqs~P1x$d‡A,:K'v CIվF"roNDx]c $)ҰG8Kc|')w0r 2$ANDCs`oG*L^Q>5] ;VZ0JTIf[ҸSmj;ݹO^QqHyr.smm )NX$]qz*H I`2 CeNM^nݗ\/Ƭ]M]> Selyd& Q=qVRbgj'D M߱XKW(#""]Y&-QX0!A2n7G zaUI(*WC!OgeNX[c>~#婨KnqgBuZqVMݶBZ/T8y\<<ҙ/ز~ah~ĎjO qIH^A?`Bi3BZPjzZ/,eNހƵ^ @Z#ySn8s(5 ɉt$ fDb1LA-FzPƚ.; ȷROkhCV=s 1d@{-#XJaH9(A( '8Y#c18Fsr|vi|NKEź] 'NgV88CNPjX"1 sRú;NQ=ZwӺȝ(㼃 Epc!Hnp(tbXɏZޤ/@~ 9/n)bRjE}wo~6OB܅vSv[b O~[({Ԩ+Ldݽ;[<ȶ"q9YA`ydl]~u5oD)`Ǣ mY?vܞQ#ġK0m{m= a$ Qsl<4$Qx0UHzg]7|tpȝd"bU5xRǨJkxBŹTK})!Ὥeu$ek< q]Vޜ ʬ->\m'Gڧϩ攒fc2j`p1~8 RnT66awk ͛P ή`uXs:=^Rj/^OXYRLEopfAV=+ 4 dA,_Q֖AMtj%bD97F9FJyԎtUUYacOf2F`ktqf5g)Ft̠Km+c4 ٪Ywz܏H5c}Єh$&g:8OR69L Eʖb̚|`7 X 7YR 󂳥Ci2$pQNleN~t$9Œi=$4N UX|/ㆴk>}D3Q4~SsjUhW/=/31Fi$⬷"^x϶T_yAlŶ',k4’%ؐ錱Ye'yXiF(diՔWH.1c1Snepkl](bv] Fڪ]D 4Y!+NŇT87<h@r-l߿≌9wQJEA\=Es+ eKqWq2Q! `Θ߹ &֖zYmH#.T3ofr||{?eHFCSh#bnSR3euRB'[1f+c8efBfP,̉)3'}R#T٣wMbQ`1 2DbEfDZg?ruFҡp'>iWɛ7֏#*:ތLFTrO7~ti1q'1o}gF_`7P{dd]To_R<.Oq$di,Z*eiR#nTL}۩i&cZazL.iM25ʨA3rԓ q %Zz-m+(sE$|>sFwfIȮGB TK{g:12kzؔ9jZf \D ¸02҂pR\.,ǾTL]~0$?Q-Bzuѧ"$zitJE'7/Cq@T\Z-'Nعʯ|` bL9c t乌=O rqXa@\Z=8'=V42_1FRlTR;Y ~HİS&J1}$Y_۞_Ӑl2jyJ $1`PEp4)} b'Jg@ӑuXd8BGEU$BluDa{ ~ ;LSdD:,#iSnSb+&kL,~pah&% 2Feu JRlb4b&z+M>aMK= sn4IQ sqXBe\,P" dLǬ`L*k9,#=--:컡=uuClU`B7 OK=o:B% hG!l!e `8W^n!9SF:#`HSJ=w'y:GK2|&cEl62Ψ<)X/iXz :]c H bIA暖 4;rC%'w~uNuL(:WuH^ UflGQ"I|;|umI)>O'= NH EZs&sCxIF< 8QJ<ցE#mڭ=HlctPb̈́!N=Ocn MEM~S5};갃HTilv !isŵ0d[0QVN{Vo~p#ؾ/soyuN=!y231{n y e~c)oGž!6t݋h~g-}e;1Rw0k#R|"||Q 3~2yr/}w| .y86B fxHloFڥX`@GW `)hX7`b5jtћ/PL|b~B`PGTT"aDA~k'>g5^j;h&刳^ 8hodNŧE \Zu xVd𺂋%E *];G7Lpo/#@өoJe kt52i?/2!y!x· m?vESn^Z Q/vn%%CG>g[M t'y&O^U˄r`(!]#\&EDz: ȥ TRs.:ܾCh91bt@7&aa\OvicM~?1=b/p3X&'̓~ZV)òaR5)-Hb^ JxuS5rͭp`Qc&id\'CU=x#1F>R–HNWQE( R">vqoops?ۻfa~`owW3Z\] q~mo?~[<,/on-~`>\E{;{X&;eC|E-O| }{7'h'xN\\_^}~OL;Z^-d`7}֯`hOˏjAg>,i L |53noVPHtE~Ƨ{%g6tM8z*}~ jn?/ϧxiE^/ W{?}qxwV2BCW-ĸ}|& *C*&̗ a0 !W"E {bIvyG,X½}6O({/JPu}Og/t;; NGx R`އDinAafbws<}7&D1./? A&\\m⋻3ݘ K2&7!OܟO ..>V쀕ڏt fG݇\(NtQ >(I%U^@腎oxFE+9k6ލ9-: i?:z6]Az77.=]L?5ho }kgVv5 / {' Vx) q(#Rʺ \dYĥD|p۵|c_w_ ju6o{(|,$ۡtj]juF[^d@HeR+ہ124؋5ڳO׿̊(w7WW_SW-_ާD?".7f;XHdr߼svW) |6⍜/3>!?W:'žxZ{fK$d[-_FYx>/csNb"XLBᤂŦ]1vGIg'\sE]ppIr8H2̓K4&1cJLJT2|9hՁmR\*dMH[:.DzA2;lL&dP"d:^d/wvI"H A([:㎚,4_}DKW#+W+5{rY~$_:sanB͟f|ܕn[?PK Q_k3腯ݗqToVYPm7YYQE!Z;^Tq_ZsD] _|2ȴB u妆+UdbȘJUy4#\.]AA _EQp I A"d U7,1#^CZ!:|4x`͎Ck#ښbi4͚7;Qh,Q fnN!)0^VRrgVچ&pbh͘d]N1gi(3;Dqg_Vϕ"ZWN 00~1.1.Nۏ|~2e#3'99G2[d2F\La,f>6g*Tsgt݋e(fE+&%ź7}ρL1t'Sކu g>2C;C, jmf=zw )m~ʶ37;ڄ0+?&u5iCy%תDI5W=(ePvgwЯB0/8jjKq!ijlAt'"1Xhdj< tM(r>te0>cPg\Ym5WHLfIs@66P[k&P󧎱\Fi,ކ@#qI_HBz g;(I I*jG NeZIrNswq$Ք}(d{`hb8 dkVwғX8C/T *n)>շ[Nb)6d 1ṗV(YY,I<5Q/QΑ_kJ% Խx-yNŀMQ0Vx=zx]vp7f&}1s`uL(KH^#/H :'/Rq6bTQ.as0~cMP{"IziXMEG\_ 5t~8vUL@nv}Eu:FUj dd*XcpyquGQ >v2 SՈ#ȏΖ~嵚LOaا(j1 \zKd*Mge>H2ZyK9Lh)#n;vŒgޫQF;;s)_Pw~,1*6K+Inw"_7A:ܨ_GnC5 S}eգg~)]eݪ=!/$ޫwsu*0,#68!HǨ{L⤆wS1@hxF gǾ]]b\&y[4&_JLM2/zZ~=fC{0^9,ӜHf~z"Uq{Kp;g3e܎рlt ڍ:ſ6#Ȃ#|($>v6Qي3T}:I8F[} -ꭒ[YY1Bkl(cJ0A~of5Lއnj7v{GN3ħ1]f3F?\0ԍWDϨXԽu9OZpSFn_p+?zqV8#G~ PK:Nbmarkingpy/__init__.pyPKe;NR#Fmarkingpy/cases.pyPKB:NOl Fmarkingpy/cli.pyPKA:Na markingpy/compiler.pyPK:NH})markingpy/config.pyPKB:N6 ,markingpy/execution.pyPKn;N N0markingpy/exercises.pyPKA:NܜME _Fmarkingpy/finders.pyPKB:NQXXR OKmarkingpy/grader.pyPKB:NLK Omarkingpy/linters.pyPK:Ne uUTmarkingpy/magic.pyPK:NؠG KYmarkingpy/markscheme.pyPK:N! womarkingpy/storage.pyPKB:NqjL tmarkingpy/submission.pyPKB:N2 ymarkingpy/utils.pyPK9Nxmarkingpy/data/markingpy.confPK9NSt&x΃markingpy/data/scheme.pyPK Q