PK!70GGjrpyoop/__init__.py__version__ = '0.1.2' from . import datasets from . import vignettes PK!jrpyoop/datasets/__init__.pyPK!~t]] jrpyoop/vignettes/practical1.pdf%PDF-1.5 % 14 0 obj <> stream xZ+5 }ĹKUH  /pqfsiogƎq|?'qO,~I(&=F>_8גsïw9\A~<_Wz) ?>~IlZ|U{ǿOOoyC>~\A]Is/*18BJ$lR ,biXDfzG}2DW-.AtMnӔIPSL8)42;K ,# W dd AD Y8E+̿J\gVPu 'ײLK#cfPϔ$aUm5p|Ի|0 G $VoJUHѕWL2COוn Apu=<\Dfd|~T|O5sA4j\ Uiyv+mn׳.w.]YFwM zڏW=ETvW𧍐_VP zK˅;>0o)Vv6Xؽ_֦!rƓrg@Ǽ3jY0`|/*[9f (6tdZe咗efTUBR&鷟ϯCWLƋ̣V <ad4u/yPL sFZQF8n&qz3="K>]_JGZWB&l0'uLi3S@&Lg /6hedCf>&)92Ѯn((Y9'X(RUYe둰0F^È21,w`D ;9m:Ɣ`!GZkWJ +r7,-a 불DN.z=^ LH+&%f$W#a-6uȝXS&*}+- Ft1rbJ-qʜD5ȣ cgJirQ$a*5(`Z) aIxpzܪDpo2 ^y?cTdzu=ry#\ʕt6/oPIܙqsoV`J+7CJ-!GT= 5'%۰6'd#$pv4Rmjf,6Xx2RMgnY)5;I+LіrH,mQ9j,VO+'gTX׌֬}4J;[c˥1bux(s,([tś fg)1S^X6[,(.cY|' MN&k0r#Lfw]; +l)P0U@> stream xڭVˮ! +Bf,**eWud]Mc ȣ7Jfc{;A?3xz0Ɂj܈a8?ZVk6@|k|@-zv{4YoŢ=_@S-iq\> yw/}Do;ĕ9EVRl)&;7Hw s`gkr=F7BvߒּKx9ٮ[]ޚBJ(mB5Y_pŏiOx]9L`ݨyON窍7 OP l[pq5x2%A+ `+§ r\ y/JfH䃵6@'_  "ǒ+f31A28ò%LOfaKۚڴrH mBFQ *E*:[fFkf1{Q|2WxA<;/srUƫ`[l3{|XEg GVD9@#AWΛ?N/}w.G/T'KľZ!b큰(ߗ-yHة FzP;mۥ@/f(8ef:- /F[`%B-9ĭ^~hFq?i}a,bXFVҺ VǶ:x^Y/Tn'AV*]Q0{6s}x_{Q˛X#a-Pq/y&7f4"ބ?*-lUSYy{:|0V5+T&\ૉ眣;kÒ^5[؜#2`oO+aJwuzRM~Bk6b?PK1-1wX[Q?>8+y endstream endobj 23 0 obj <> stream x]n0 y\n2©tB`A}C*IBb(Dǎ8!ᗖCI j$(&č'SAXw꣛t]4]~: > stream x]j0}\nhm@N'bx5 1Kr N<_Nt$Zt(`a֋@zHd9p+UL$it-w騕65K^'Z=q1*g'=lGqߓ/#Ǧ5)˄۷1;{#Abv+Յ<.FŘ+L ’ehDfX.VO-6<]V7H9+E*"mr-ҪG* Rt@Z Ri"-R3/ C?TD˫`>>^X0^8pRmBUb endstream endobj 25 0 obj <> stream x]ݎ0y _nR{W"FE}ClˀԼ}gFI̙9t8a3͢lhrKhI\:$Wڙ)c㓬H"K)ӟ&P:߱O{g)u|r62 t]nM28Ztԣǚ'pO3';%Bdks=: o4m\IZ䛖Bc^g;/9ҷ[xKYHu$ RH^YT :⬌T(PҨAgLϑ |q3 VxTJ@~AAϒ'> stream x]݊0BU.C6i a=N $d#6|̙adz<;_ȳq҃Ŭ'vۤdDϝÏfb9_Ǘ?#^Gv-X{`e[r%\Vk4Ldm 7-uF.x-۝f+؇cn! !v9R zA@ȫc:RUP5/zeDJtPµ*AAz.IDг`7F§JYc0!=%O *#M6"-\xUo6iM-+~1 endstream endobj 27 0 obj <> stream x]j0}\vh[@ͮ>hra}B%>>J:[pJXl9REIJnp5Q\}t,~Z ^+7Qm@jnߣVzp ēv#c^$#zt{*\`UIQD'l^ayTWTMxifc}Ee%X&rBTXI_eJ=<9cYR.!mH@i#ev 3Rt@z@yyy .߇B֌ggk}cdC˗HmU8 endstream endobj 28 0 obj <> stream x]j0~ SjZ]+$C$f?iO_F Xˬ(S:˛w?lWxTY4HwӀϜYmQm LL͋r3!_/bSESwD+G*C(Z37zTOi0\Nhumhg^ "Y]rEꆩ d@jT3?!e#ф:PhiS&:&:$j"moH{iG6Q,L1c?Jxy:E endstream endobj 30 0 obj <> stream xڝV{Te&-4tyUbJf3:[&i)`669;=F&|o%;GZ7`RAn$7HLɺMY&y~i_:/ys^]j!^sc𤽿yW !Ù6qg J|zf7>JHsZ,W E]5+A3P~'fud[spt&`Қ $|YB2.ґ+C]6! lyNx񓏯"a0]s8ff7s\ 4kPt,FCQ@M^j67 z4Ym Ri&Ҡfs3@Sg0ՙ zǂ4Fu:;3 XݴZw./dJk9d.`gOk|brX0+J+2QM&b5 힅aՖJ vf5TuԺ[:^;19|-3 Rn/'NԨz5n_F\f 1"ï8@jd;xpriUz.<~^&~=鐾iY?|us[p`g@Zl&f36Z ~mI *XV$SJ WeuN`'a Lӵc[N~rÂ[W({;C\#a81IlEr=*s ;}x_-1ft)&{.q- xc?& eU2L١mw${^[pi. |RAQ$vLc>+`*4`j{92y:ң?Q~6+?3f)+8rG6ǐx>: o!::S <_~[Xz6g.>txΣxl^INW Z` o{LSV&zWO ?1^j Xf_ֹ/M,tÈy.=?;wq6Y#ʪD36,(7]3=tq3"5z ؁h KpťJId~lMz ?=5$r\ǔ#7nFwnr2>LVX,Q%Vɴ0A''. /.{5X{Sp G/ҥ?@l|߾㚡#S __aY,6thZlȓ endstream endobj 32 0 obj <> stream xk```P0b* endstream endobj 34 0 obj <> stream xڭ PSWo ")Zv\{Q @B yax$Py(ҺV׺U]uvۭ{.=Nwowgϝ{Ι}wp0oodԾ52DʵA;ut3,c^!10CsHn^h;$~z /};{8% `; Vy;`>^{{ #psϷ$dNT‚CCoW4T ]羙LG UV!EJ LGѪLP)dLBRxAZjtFWkx\Kg4 }jRV*JTCdR:b_\2;̥Vk z+4ا:M(u1RH%$ qjw %B V .U#Ow1Vx;W2Xs窻Dϧ<ԜZ({]iZe naoÒg2,}|X )VQ _QH5r>4u:{# r1+"M ‹qѫE䍎_]&:l4Z[ ۈl`ϢN;πY2lّK3nOM9Y 1 #`\Y|:w޿PՁaiZ'B m"P/X'HePFq^4q*wU-17 svoEbkEXPZ\&**1`k7=|6qU)ˎQYLb*On9f&L}t V̬s9IwbyK{^{R92ܙnf7G\1 0a1.-J"nd؞Dh'B'?x?%~Q RO^2ǡb?$U7+ج>'W)bx#IN}?3HLC77ܜ>(^|:!?k-D!On.6GPA :k$@K}Ȍ5lhr E3uᙹDR"K0h❩}䥣n#+w411 ˑ r@L7a#|J ,a^0YK@&]BYf,ֽt4Uq}~8뎁j Ku lZD 񬥥9&aB.͆!CSρEz&k?WEyl<. 4j[Cyi,Yƫ endstream endobj 36 0 obj <> stream xk``T endstream endobj 38 0 obj <> stream xڍX TW֮.THI2Um4cHԨDAemfD_w"{C#P ƸGe8:DǘhƹEj&3gTz}~+ JH$L_z]B\H3ש"0Nx KD`\T'Kd%dr /Ot^t!$'GĠ7ּBU+Uh]\ٳ翝)Ξ=oH\Vć+Wz)W{)$WS╡u2!BڨkU2RONRDEk) XQU!ZUR(uQ* :0UV9SԪT(.YtHMqv ,s3}\eky eJz=[M\? 1@L#3Y\Ub!xxXJrb%xXK#DLQD4Cj"H$4H&҉sR1g1pW"EBJLA.RZj&2jHndžE 9|៏<"}{wGQ3F}܇]G\yC@6a/lI <ϧ~%d|SIfKpS7Xo&i&f)XC )X 8ȪI[קh/N<ꯏ=ۯBTrGqJOb Hn'|Sffo-[,\srqqUhA4ex;ͅCױOXL]_p 2v;w |CD7z:,ԂZX$805OI< S~ ~ >6{͢0oeɪ 5[˥7 [- dWzN61TM\sm](1fS6LHW 2xBr0k=p>ɝxR=nE]L55pE֠CAa7y˺"6`?8 ^s` ,qt| |#EY2f LWfü;9 5eI)-5m|MɅ?I1SR M䲜&⃛3xSS=nI-k*2T渭`fkd^-k@o(}s@F0+f:ka0j"^0R\-Q ^0bu|j@*M02dT_@aFȑ*[ffhh]u֪&1F} ܛ~6ᅛ%$m)'y>(PcX=&6EEI5w30ӻƢ\F #7),g("lKIC c+@NB9i>J]%V[q![]G-\u5|!l6"i tf335페-Dr@9!}N\ HO68-7|n0Z$yj#@gAM+QFaqh#;sPcf' 1RETa&=<%(/4#$Ħg|} \ƎԘ(Z]SXa?:~3eZ#K.[̷ӅM51^|;[*e ̬ ߐIo̬.+id;P$cwh]B3}߸^਋Ɩ}m4Yǁw6M{ġlY-pE D9!BnE .AuLh j3sOBI_, L@N}k֭yI \=h`ʩׯcq<CZOq׮%E*uH{~) їE= %X4zig0gd&z1@xحkGbcR۞ǓJr.q_{B8uPqwefk~.rp`qIc|J`"W[-霚32̜\2AGR \E!y>TzmMj6rC e@Ouӯ%˿?TOSZ Oy-Be-6x< Ss90x ev(~p(@q \s0ZV/c,3dVC??Hc6VDFmw;T70./CM깟ܴuIH>'2˕ n0Y\m %ċɝdZQϟe T,4hIj֣ǙòJ{,X 'ڦx6>Iz vGgCt =A $MQEݗkfɋJ06k;~t5X%?<&V&]WereH\P $Y݇;H^zU,uoKw%kcӃf$qCwWR?bGep] ^.P=4{`ǐ99*DŽFRg__Qش8`5p`@&--rGy݁Ewҁ'p#a&r{<xֱ=PnF*F٢8uiճ4:9l@KX,=_UK*pHׁ+J6HS\_yi+/K X|չSoޮb> _aX-Vjwwwڊ6}) endstream endobj 40 0 obj <> stream xk``0UhˋV0@#kw endstream endobj 42 0 obj <> stream xڅW XT^Da9nMh-2( w;"8\ܔfV*ԡ|j0zv];Mk9߲} v΂g["D1vE/I<M cEܣqX'cFYbouqxXh~6(Q<>. ] .K(%ܨQ?|]pf2,^OX9MJTOg!~),]J".-^SDj$2MbRNPhʝ RS$j5u)UI:EFZZS+2Z^TlVj-Ii:W) ^p>#OMOՓt:ЭѾ[m+4ZERM8RMSSZF=N-|(_ʟ VPPk *DSO6*S;]>j?T*:H(=I%! ?CVٝmǡKHVKr$o;npt͜9MNNN89\tsv-D[U+Yl_ڧq5GK%7cN[CRy=uCFthl;N,PIZ.cBahX%/>+i,Y/g dn^\*Cu]eyejemp">n}B%atrYI umack V{x3N`Dkq7o/3F>V7'-q+s ⪬2TP;X/.sU[ NssKEO;gkf]1A`7Gt(;EUv#rW}:a=ZЧ({kC 9WTds~x$rY@lqn W!L'Bi:WH ݛie?_W^>ۃDlx M]j~ڻ[of;Q›;sy.2 ̈)ȃ^4hs+zwd!q^c!7H]h=xJI+=nQ:vqt0?GJu73pa0"3]̏ '{isϊ-oaυqoHyk۳m_*End't~:ϋntc7Otz(b%wq:T?ԃ\Iu~W۬ɚ~OWWyH;c^81NT}uw}YFDdT&m]!bd+Oyu)t I)e˱eFn]充H*ǼÙU|ًIΆT"Z :ኋVPX._0l^w7G{U&/c7;d@o ]|C.q ~۷@!,FXVӀGAv, 5nhKO##yrp )i;Gsիh|{\[U__VS*"j$+eKK("_VZ ꦓxGw'i1/xE[^S2#.ċ.ĪA^axd>_+['L9K _^ssΖhtF|8 v3%dt4h=⯮}s؜%ook:5E-bbM#SjqZƆsfJM?rGrZ%t eUdDr4å-.KHHUTOpf$kꚌC (qxG]߂U\W.Tr:4 d3<аC2s3vzzpxa'ܥ-جJ>"o+˟ïwP$3yx' 6gWdH%[_k+FgWEh*/B hfՅ)ħt::zU7~!N1qV(5B"39'v݁]\%ؖL&"rමgV1>$⤆6lv,_~%l.SAB bD lYQOǠĠk҈'ρ IJ4 igЌy*G9/aG{>6z[Fxpڼ4Y+ehө(9b^nNIK48ed>Y)>@3]0gҙB%Ě)1-<ٖHp{7"@(bd:TPSsEk`"qXJd$D@ pZ/%‰ڵzd)rsro˝Z-|?^Tϭ4rrָ.'٦ZpմU׺ T3Oq\}Kߊq endstream endobj 44 0 obj <> stream xk```)`Kށf9*b endstream endobj 46 0 obj <> stream x]UyPW@TKۭU^cԎxS@6]&MBudPB$ (vDSۙcXd͜dwG$"b';RNT$uu"11D5PӕK$$K<s&WpDN~{TxWtlns._w[Y WG@IgP{r/􇍑a@=_>W7Hw0h/o P MZsz^8]9F .ߣ~U4I{{L/ϝ2cǕIUt~DY@ >y6 !G9KD4*WU"\-^3!QBZ:20TM3@ DdG4Ƞbuzsy~w+ m٢F(ֱ@55eZ'pg` ~Fӑ>-MȂͅN0Ka#/^~ϽaT/kDPypyY/m :/_gۙ;(E*VK/`+ VH>& Flfe yBC>G0އa)$ĨAzd҅v_g(a0ڛq4B@i2t˝NGy^1vد yJz2>"&cBc".''+YcŨ4yC\^Pa3pjz u}Em؎;AIRmjx&\;=<B?§c2^Ώ%?Q+xC^ڴ Ql<u6D&>-6>e$I* B"\1;q"~2^GeAN.2N) >n ӣ+xg~K 1M:"6wmMf* h3{5^yv[eM7]s]E&C@1rK9W9Ldpn ]&_ -5 ttʗ ?!;2V>9z}{1Fqb`jKb)3*)׀U-s\q6U9{HVC5?{'u{̑S*;TFz'O֧gX>)g4+O5ç5`XЏ !Im 7%[ǎHGΔ? ~ endstream endobj 48 0 obj <> stream xk```TdPha`X C endstream endobj 50 0 obj <> stream xmTmLSW>~ܡnԒa4ql "NL)lS^ڋV"N{-T~!?dD3DzLl,Y ;gc1眼<oR@E-vVYesn.s*\M'wقJRH#KX@809Ԥ1:ԱB÷@%ffM/i9mz9/eSzjs |}{qkBSxxՊl|ͮBX냮n-vX-[\&`=uk0$=ja' Zy?x7 ܼ^nM-(k xzG0 ѨH?E#h"gUEeuM=x0Ϩ}.?V!`jifi+fmӃV3 R7sѭƗ\'ajj[G+t͑VN-'mqjHӡ]E:0 JƇ{ zPr1CO/Z x!VgeήANݍ߳[?L($P7#Wqoh[tNv XĎ{3𥳐\G2cNi-κw2FզZ u2o~3OB i$n8RB "}7=;.ͤych2Ei*D[m%*dFoLM_?0n̨g_ܜE7"qfr աpNܷ$;󇼴 Mz%l]?LC-6kD\2S™&  5CӋ 1k^;Ҭ:(%Ac cڦX(_+w5jRxq$%_f8m0~0g~Ϳ),=,!OP_kQr n_|NgwJPjʿKeZ9Ά5g#ǙSpOZݱ 5]7d__GiLj<!%!NӸ. ڂ s[2=:fBFZp4=+fݽv 0K#P׺ 1M`9ZzYsv=ORm,R-r4yZLygD"LOnLJ,;&˦ ' endstream endobj 52 0 obj <> stream xk`````Ph`hp ! endstream endobj 16 0 obj <> stream xڵmSFSܻt: 3aB! H5~؇X-;ȀfݽVgagR0SLẍ́cR+b&:4sg2g &t2b[rA XŸ0UM:pl nkӢV1m -%bjtΔ͙cZrr8GcTr,q,IMB0z/فmP!>MiS ; ?? {I&qw00CVې}Mä2@q\י#KH;PgEqBqGAt;؛~]M7gS>pnz3;+qغ WWι[µupivsW_WӹCvF_ LcBSûAn\ )tu҂Ml_6Lvu/|Nq9Ac.9q5B*=Óȣ@TBbęC۹Ke[|p 9 n % d^BFǽe{:=Ml? qoG_D!/}z?䪊؍Y=VQ0Lhp~ ގ !ȱ)}7Po u/xvA'n`ـbeYȫ=BK0Q_|fX( SXصXh0td΁oźD6+X%@{hc{ZFk>R Fg%!a"K3|<981df84848f3e3107497ebd5ffc9f17f>]/Size 54/W[1 2 2]/Filter/FlateDecode/Length 164>> stream x-ͽ p{ @c,P93hiv`s6O~\Dm- Oz"6Y,ɘHH$&/4VUg ]oCT Zw-Wk#iy(vZ7Ek9BuКzh%,7 endstream endobj startxref 23659 %%EOF PK!1չ jrpyoop/vignettes/solutions1.pdf%PDF-1.5 % 14 0 obj <> stream xZ+5 }ĹKUH  /pqfsiogb8?'qO,~I(&ߟgq¹k(g9pM0u)R+quIo,78SGN(^Yc^<3)译/܂aGaeя:2HS-Z\Y.>6ӴIX*od!3\R%2;K ,# O j()& . ,\!h! gxy"x=M _q {.3+:c1v3gV0kp8#dXH$ͳ6o_V(d tNɼ)IF@vhiˠtKap I9Tq=i5,sqAn\u ~5.D_|n2zmy٥: m_ܤ' U SD%ow Z)LfK2_JXW2?.q\Ht+ChºXY`a6~eiK OvR)*Fappfp䴼ƥ#q38)*ߋVʳ9VYF",&Y!;#0Lo?_JО,̣V ad4u/yPLL .7UdͬeCf_gO>ӃLbUpdzdu%, e99cJp2a=Nw!F/+&K`dU9%G&eS%k? YJ*{=rA=kQ&#"F(a'Ǿ_eU irBډAڕ#E?}?3܍sK5"g%832ٓ'3 48^40kV}Jow$ Lr5cYޒmsYG݉AQ"88-.F[l3nBy48G1349Y(oM0vߪNIK|(qGJ&CIaB >oe qƪW?aԁ< &pMs5Yh*՝uXt+^/%!%ƪzE` _Wm怱 .kkۡ1v*hΌrzݎhSs)BLޙƣ)tT `JQʤTLzA.\ų?hrSn9FJ0qYH$[x˃t&xLkյR]M᠉ɔLL()"TjfZ9 L8aa]V;W*jżZmOXG3Rk^7Z̦EU$LACEZ}ӒufIt: G0[(dh Tu׺)}rw.'h R܌3 az`N3U53 Vݣ,9w-EZŭ3̄a(нfm0uťI/P7_;%ԲF>_Q&D2/.&Lہqj5c q.<+7禍[QDmf&CKh96ari?p5 H']f*B[:66VWd=e˥^]爇":gҷ4m7 ~+||G3Oy #e4ѥWt=zyQuIXPslHnD` \,or݇NΆA9QfGJ00ju)0Y3A>mR;NvAi_/J◒r-II>ԡr25,: +x -sN*D%7*V419s蝵'K?Ro. _AYJ;g.p ZzU%T2 pM7(ӷT> stream x[Ko6 W*Qo ȡ@[=4MO=PJeQXgw<3|33I?5yrOn":pdäA0$) "NkxhxYꆥGk̏/8s߿fL %=эzf'7]aaFsI^2+kjjsW4K: h1۴,mA۴ lӒ5:$qIY%`E{,t N8dцbT}kf+ecK>k3F8܂\6'q7 l̝=*1v& §LxF(㧋Bיp%@itȂtt'/gQ>K~9./^_2R2m<Ǎ cU|ޖ5:ܱC7+y\Ȁ9ѠJܜdl FF^1p>AYNҀp>nw#BcԝKpi;G9}vDB/aYE[))S~xAtB'N)ѵKOħ_{ͪY*sx<zZI я51K;91& . A {u j-p{lTqt*m#p vr&mtuҺoqw&F%K/ro"S9‘yf\Ȗ^2.bE ƽnyؒ\c) ,:9Q>ʽݻLOcő·@UY!Qd ,ܚQ0z8Q FcQ+bSET͎\#M.aW+NV 㠄}isvɘTsX*v8.(Srn,S y6ָ<:LDn6uok +* G `\5}Fdv%č.1CG9z}P}xh ɰZINŴ&T. ,{AtF$S`⠧LVR4 CE9i:Mɼݵ; '$uyZ˾f\>Xɺ"5W%Մ;+ ?.r \x*?#c՞9"lcOc87>$FIɇ7,LHyI6!]8uS(a@ft G.~ b>XR#gIrZ/7=M[pW6`Vk SW"`N5/Wk {҄ ?`N( %u(@{[aڛ9M|<ЗL>(;ۗ|'\2 ane-xC*7xjՊnz``0+cEpJtJj5}X=W4~Qld;#ֲ<4 qt:id 0׉3B#cbVt^@tj{@XW[njtD/;{S˹G KǠd#f]̊jy"nh{xyw[ӉXM9;=M~ڧkw[kr⚫SrU^-.j' ]aRVrds$yz)cQ.crh̽ڈ#=N+aǦjSpg\++[Qwָ;UdN\ޫsAB8e~TeQ>dNlj אd{utdusٺ;ͽS ieؾvjsoڣg3oom"ȑ?)@~k(Uǰ(g2TRqP$#<c`bwkTq[,\q³'i6Kr֩W ?GL endstream endobj 25 0 obj <> stream xڵ[nd +00 Yf5_zPuU2(R:<$E,I˗XWc~Qq|ƹ|g~SF_ Ru"c8Hc btJ3FgzK9N?&Q"O֔[ȗ řjl$1Ę3a}wI[Mv =Z4ŲJ~Ȍl3ľ30A.=kJ&hwͯp`!/7P0Bmŭ- LAɄ;knOr2J~~+09e^> _ͮE/~Bre:u:&Ā+܋&Cg3Ĺ~6ʥfD c 4,2FߤCm^IGČO'Uu?LӐ-d$M&ǝr|>TtPt`htQjY^,:sӽhWSS+Rީ|l[=ZD!zbm9w"&ln5j3#T Pyg:EխDLFd'W࠶nBv03b{0ښ FH9\Oilѐ8kiȕYHb-!Gk}II6>KKSAҊ=adOf05PºXYTƽஙABڲ!p`F\,jf|B)rDyHF[QB4IOMK'X.&I7G>_3FRz3+ݰY"fS\Y)$'R1ce =E:y&o5i .yKdgqFiP3w%cD2JEd՞DH[XT%S3(̂ ).6rgzpP,@I܄]hG*09\-7ATt~O}1!d+IXR$ Q0 0r{j{,= ZhwXXTQ[ >!8y )CH 0ئf^ٓ4X;ԔG݊st;Zwا n6W>?5ש{ȣ}0݃uTz9T3 1; b8xzl ŕSgl*MekoAg ;́c8ج˽"Ize{n޽RѨ sJJEwK <ޫ1e/EU~V.ʨhcf5ь)[c;.;ofi?kLn[-H_0F)qWd3zhHO>M$AݚTY:SXɈMEu$ubZUђf61էzSeu %cX^JN naNY<鵶-VT yG=HXͩu Q)iwH:{#Β+! ۰IJhprpmcP ǯ h*h?x /1kW ,$JB评9=ݤ-%c* 7@@BvQpɄ8Xdܐd` 8n#ao㠍z{񨍈=6"&ϡNt y? -H&oӹ^MKfzkt$ު =Vo750]V<\^.V;X!·듁~vkSxX\lz`*pLbk 1VB 4;ZU7M\~ #c+$Et+o8\ƫvv9r@GW%p׵ ]ɜ-i caet`$Jׯ+q H޶g qd.o'_> stream x[͎4y6v_Z 8;38Nb7hGq\_ggRj釗EtগHäA0IJRZ% _ӳ>ߴ> IX/tǗI dHȈ?L~y=S)"tKOtŞ= M;$hNR]J%pєq?ĵySǗy=@NET}rI$9%MւDI)ᾼCv1 ")EЁK %LLi#|'{)V>>f eآ#_{lÕHf2x_:e;A-|\p[ۗA[I>`:/J. >(e0$~HR$k;SNU:w O P-gHܑD=%RK洡wY.=QZ v2֔d+w#GHG 1#jₑ#=sV}$,CG0#B7gNn!KZ Y4/i_I!'~%O,FOsPN8.kn`m13/v='KjڽW?R; `ʌэThdAnWr8 4BAu@U@scW4NZG`f%%aWLYzS]!sU/9) Bv缡k g׋Jjش&%Sxz6q8?F(YH"D5izJW?y9,|6g|[,mζjk0 Orڣ4gL9R; u}fI0oʏ&GH_utH}^E_X&-AgM)n+"X9YzU&9Dˍ .Ar3ǧʞ@]+'sF;?/ǽC;@]6f[~TX:\)9U qWz]3Ԁ^U}SK%Fe'JZBR͘1*>L^4],mϸK .++Lj292@O3PTq&\r]%n՞qm ,_3{tAx۲vs[y/^ c.<JHdy?oCq0\\"Yp.Ɩ"7fr'"OF*1QK9{X+b)ᆦi> * $w,6e_i6>eFa _KoXcۤwN%ܺ4$~%NX;mf]cHxY[phzQx_XdHy euvUU>7u1cJؠ0`4(vc(.d5?)+9&eB#L)ГH9ɔx2`ſF洦F 6xJEE}v \ejzC@𘅨M5&bNEcRX PO[FK0uGM,34LHxFCNj۱  ޙ` by;)(gȹ4~/H7rQ endstream endobj 31 0 obj <> stream x][k0y`ҺNafb> stream x]j0}\nhm@N'bx5 1Kr N<_Nt$Zt(`a֋@zHd9p+UL$it-w騕65K^'Z=q1*g'=lGqߓ/#Ǧ5)˄۷1;{#Abv+Յ<.FŘ+L ’ehDfX.VO-6<]V7H9+E*"mr-ҪG* Rt@Z Ri"-R3/ C?TD˫`>>^X0^8pRmBUb endstream endobj 33 0 obj <> stream x]ݎ0y _nR{W"FE}ClˀԼ}gFI̙9t8a3͢lhrKhI\:$Wڙ)c㓬H"K)ӟ&P:߱O{g)u|r62 t]nM28Ztԣǚ'pO3';%Bdks=: o4m\IZ䛖Bc^g;/9ҷ[xKYHu$ RH^YT :⬌T(PҨAgLϑ |q3 VxTJ@~AAϒ'> stream x]݊0B]?v!rpqj%!м}ma/朑fdzf ,v&ĕnMBtC;3vl|7G3e wyJ';?<~އ6wt2 t[M2x?Zt#M14mn^mLsx}e{3t{OK|rYӸ2.G!hMK7JvYi v۵my.HHTIPX"HG2 :c/ A] {1R '"L Ę଄B /Zg@ zϑ* /Y ՙpV]9 3A]C]AA@P(q+ ܊Rp ('_zv VCV4N^#akȩpN3%׆+bBE 5,&267w$rK8 >mWF R endstream endobj 35 0 obj <> stream x]j0}\vh[@ͮ>hra}B%>>J:[pJXl9REIJnp5Q\}t,~Z ^+7Qm@jnߣVzp ēv#c^$#zt{*\`UIQD'l^ayTWTMxifc}Ee%X&rBTXI_eJ=<9cYR.!mH@i#ev 3Rt@z@yyy .߇B֌ggk}cdC˗HmU8 endstream endobj 36 0 obj <> stream x]j ^n6f !P.0:Ix@ t߾FN^MGլg0 kw;dyNr<;=ZyoI0<0T1j\Aq}~x&\!\st7AjШ,3y{CW{xZ>-+ԈV׺'l2HA$XHn e`!+RF)XDo!tLT'jEΉRަOt$:%&JUll6m? 4,Yq{ endstream endobj 37 0 obj <> stream x]j0}\nĶڂ0x5 19ҋ~;r^FE?y endstream endobj 39 0 obj <> stream xڝV{P[U!ܴ)*5WZQ[> V[ BRȳ<IHxy@@(ʫ@nRj;:̹x^ڎs=F8;Sswxb{NE4yjap,~~ @hCQ4ť&>-?IsobB3~X@Fu>e?q,B8}*@V#EN_) [ER\]!!)EYR. IIOqq39&,,RhUErJX*%P TBʩR@,K(*Tb*eu TL ežbP%Q"R˻-R5]^(.U)J%S2lcbBPJ%**q[vdd߾5奌ԕjJPR"Z(/V%8C,#yٌ iH:Dב)@H ReYc8$nhvGCT17utj$*=_R˜e1:8KCPB{ Gtc#b7pu{uW!5s)^O[@1A''j ad00=H?\C 3W56 ##R&Yx2S3n7YĬBu6:WNx!?nTkE≚1D41c.|JAvN{2{@S> '=9#!\-nrCyN\ gPA'%`֚ ^h!OߍxԕgX Xf!Ei`@ۦ-)Uu#D, 4_np_xJc NnЁ*t0XlFd*ATg=ŽM p`Ư/ϊ$\F<)XM> i.샏 Zli&~jXz0wۛI(=:Z&許:^=n![fjH(<'KMX‘tsxs=g 󿠺,9 5ýCgSϥIekx<)9m-RR0cs8-Ĺ6TZ*,uffk4:!71ӛ{Z{?z3> stream xk`)\ endstream endobj 43 0 obj <> stream xڭ PSWo ")Zv\{Q H !ļ@0hqZNUiD+ehpR)ض °-6., ۃbqX&ض[aUqs {rrGxW>KM.&q V]1g4GAWC5h>I݂`Tʋd%Vr o §Μo9w#2Pw Qވ'wCߖs gDZTVL#ɬ50>2pkXDI+فl)Z-dW`5Y B4ڊ -# R<0Y"x.c }kU-@oꂤ:m|nȧہuPbľW.R!?Ů9zMB}.# ^evKB3VXiO=ruQ#c,J(I@=K߅"@\rFb?*@v dn=(SuOx9z39aUP\ XKˊ9$*2߆%di}|X VQ _QH5rz>4u:y# r1+9;^)?+~J5\y\ hfն*'&xY2; endstream endobj 45 0 obj <> stream xk``T endstream endobj 47 0 obj <> stream xڍX Xg֞AEi댝zﵶ Th\5D=ɗ\"xZUZUZgZuЏ VfL|HwwB"ްoƩ+VąϚ9}*ҠѺn c'+IMPJxt?Ff^"IˑOxׅ=_!H7BBx/1xD H͚o&T,\֧9sۚmtd^9{9\J?XM.6Z\\\IF+'i╡uR PmTt*Nt}Q:eF**D WUZ>J|w&^\שӧ+:J'>cFΈf p=7+dպ%>mzeF WC:g+^ƅ cqb*1A&^% 7ńO,%+5Z"HD(ED1D,&BK$"8',~S\w'%,pV"Fi{l,]#\G1ؐ!7Z8axC^CGP#ЈpȓkPrhB3" s< .ԔN'$77U7Q'mYz'XBUqQXY-Ԭ ͵Xׁ| #b6xu]m%G9IU&XMv7gЗ'cMŃ{ڜ2Z d6ngq[ Ȧ:.tk9{?f:zwl干ȜB?N\=9$7!d̹fv|,l ksqGP_' mr_==fOS hΔ䢯{ NJwC7v9.f CFU1'#7YZNYP7s:9>NCXn/}sBV>?3f*;v[a<0ŹUE aW% }{[ #]a,Ʌ*ՈU rladI?C#(OI-ub.Mfp7&lr 74'9'y>(P [&6FEIyֵ10⳻EB 3Y&/e(7"lKq} mGND٩>J]6{Q[UG-)%\U-|VBp]Do퉳9jbn)cګ۝1iQ9[8y\߁rCL d "ba(l&PQjUo@L s]Ier{G=L=ςv|W`L X{`CUog$F4 )$EuF[xrPnhKac{HP9)1QB'o/ k*F9\lAF:Vce|jWjYXP/Q1[Xc~1^QUZ[w0HвzM3аV䨋}m4Qρ0w6Mġ]Y-pGD9!Bn/E nAu\h-jpxu'[S:29oY$evpwFt+.^([i#[ jgpRdPxr}Y_ R:.v x6]ahQ~$4$kvXq>D2)SG )xWf+JK {mV4ŧ# fMdԘN'edx, zHH,ɋ'eWKmOe--s 7~`}T|J_Ke+ŹA@ԳAk;_>]Ԏk߱+<ş>FV&W\erePRP$YՋ;H^zT,uZ>&w=$Oɹ#Ik4SEh&L;uv Ii0 iRP/Ȭ虹5uYhqod_%dMݨW/1¬8Q\(UWp0,ȖWT, pmgC>h$DkJ=geHs9/wN[lnT'g?UeN/ s⊷y/N:Y^9<+68rSl9B{薭hW!:]2c%C˚c|EKT|N̔;Kj1[m1Qkk':6ԜIckZaޓJ M_P7t =0CThT.\|K˯_t:z1xNx yW j/+r١!s?0f٬6^d+E"0 endstream endobj 49 0 obj <> stream xk``0UhˋV0@#kw endstream endobj 51 0 obj <> stream xڅX XW c,fL n\PQ JH%MdeSVںF]o[{=>0ə}މD":_KgUGYPFi,}+)³Ȟ8JEk%ȭl"lot#6?Qn?KQώ`BMm?r4JbE(GjQԯ"߷ VR VDBuq_\ Ut f[ȗ}vڰPyPdM&SPLu|B"WZF+Wj{ϻTZ^ O"\Uˣ#NX VGkBw+" 9rVtsꢕnjrn>0H;2oZ9kV-]M5`.(4\6t`?&"("/B=G1N͠fRSj.5OHLyPר7(OʋZByS+)j5KIjAvQ**"R:*⬉k*_QxR7ַm6klw59[+XJۻcƘ:}nݷ[8.nqw${`O&xM8S ^$<?Zk!Mz0@rWYS;OVdWEԂLBZ?-X/FiƘ)h Jrq'*lY҄纫wŵōZyhZ6OD.Q9Of3y<䯷HNw⽌,P_61U~E[X,iA7r[x➨r\# %+N8m2-DJ<-ބVo,FZd%GQJYcc,?q%kHLH fMU0Ւ#k0[{A'bH'jPDx#ax* 3 {B-(3!5W%enb_Zz- -ƫ5Fkix E sFЄEut7s_YYLMRS[uaV}}\ﶄlԜ,,"ѻ` $GD;A3ym$̎BnPLx>ݺgWNf  _'pq}te%e)c޸k?  &'IϘO߅{TB1zB4<#مHp %3H3!wtZE>C'F@5 !b ^ij(pWaɉ+..='6>Mzz*t] zx5.tM2p{wz5SKxxu/8I;CTèèdzm:dN'!}]ı."}rU»ҫQ׷m!?Q9/wi  pCew6Tp)&X`S&QId@%A $oٶx ůwT_Z</DM1Y)\jwEbkJtF@« mหu齫ՈNc̰u9ef% ҆)[BsX4AUU{*byFD$EGT嚒dɘH-&z/yWܹM}IAtzO3Qy2ϸ#Ya~y.[~=ٖՕ54-n8V5VXKn\t\+t;ض ci3 q!ǘ&&b qJFRzLW\YR`,)6_#㣡*@"W&m DM'_]#46P #-X@[B򁰜~xrZ v2jN(Fi* no*N oe %ZXGl%%WS>\bfL\aQĸr8; ]ziKtZVG׷peG a)B4~6x;GYF'hs/bm>#԰eTpI-/n;,;M6X& .ڑxM"j,`@t΋_\)i j1( :mBX]ن4~%ޑĽGYeŶd`3u{jŠp) n|8vQRP_wPQa^\Q,_/(.Fі5Τ 8[ KR+)XIȷCgnQ6:tǽe ` s >6HbPɟÐ+97Ƙ;P?H6Iiq M`XtlmfbG0'uo]> &pЋ PE[:6399S1%66!/&W-TgU/>=p  5&k!~W28f+L9-] biD9ªҊ¸2O&a7 ,WX!۟Uwbg\ޞ׹[rFv?!DF W6x^ԲL}zbiFQ/IҴT8eυwM~hM\$d !{K$RL~j(9o$yl#Bď փթsyRu&`dDO-M W^Qdwq=#e[' z 8"ٟX#fzy$wp"KYfmZ8f[Uz/TiU*Fk5۰Z1#hEe3Rhġei@Kym.?^ [B0<8K8-٤=f|^Gg7'|RJd\6=SP,?4q  JL|]cyA.؅ƗU2 m*8$CF"25A5A'I4~:L k)!5@=Ɠq8f<&ŴH LLi1GWb[.5lؼ4 ct _=:{Mqsuha,'44| R迂xz,gOJ%_l5C6.8pMn֌Kti`5M0*N395f6xfFw]CB22‰ɪI˨q v0qa*A2y9IC"y䠌l&7O :ip.-au)&aIt oDe)Mge="V`dyJL<|`,̄7?gp߂'g)R*,-J KinM~ 35uW-b{κ}w'O|" endstream endobj 53 0 obj <> stream xk``ihKޡ95 endstream endobj 55 0 obj <> stream x]UyPW@TKۭZ^cO:'u dsHl$-TH %DiGVǣum;CzNo}q}yB%4wnYa yY+Y]Uf*zBa4 JVk2}^{'o?]ffdo  ~L1̚}$,sﲻ|YYKV >js}6Ȯ7 Κx3n0s6 κE)V.ӌl.Y⿓sp&3n9Ycn)`ͳpȱ,+rksʗgfVfZ1`X1 #o[V]^ks(^"XD,#VbQL؉DBN$&&$>it yy*0g!y G䋣T~0K>2Ф+{][879Ϡϳ5D|yB U; @սb7K١{:÷1 VzMCp& 3WpPW"uVtӑ~"f-B )8mA-6n_}yshņNw} d> stream xk```TdPha`X C endstream endobj 59 0 obj <> stream xmToLW{y"+6qai"Ť6DT[+wZ88DP1+U+Dі֤A#mӴ1Ѵ/&V4ݫ~iyɼ̼20EQeE[˲J n}+7lb¡HP2UXpWef0ۡNdxhKDg^Ko$ B1.GrJWYss)zV澽2EhmOmp"ǎX6+*5- "Zu m.P @9Nk`i @>S (uב5L8''ʰ02T !5~,X`M0XȊhFop )nR.;tp#o 慌CUH6 r&X -W VMхʴOaVܺ+9\%q Wҍ>,gq7;'%\U(jc׺dN|G^62=[ll^8><)A5Z(m25H< }d:j,2WM!˴3,6o ]Vu充RM'wZ-c- |A8\p9) /8`>9| Oܹ5qAy Nq'XnwAz}cٺ/ZGb@$zEƮOzHMna;"80ñad`[;IW]Gk͛V|6{IWN5%ƏU۷s})t{4P89: A >Y&)<_~Dz/?D>!;4n'~8fk"zf*5&}ۤ$&@z1ű8t}NDOT6~dL%8gdbYX`O8"h4{I6&^zɒ8N' B*HnOSPu#Ѫ#Iw1̑a8>$_˜i+ %4ف荛C`N9rsp8 &fw@4Fs5 endstream endobj 61 0 obj <> stream xk` f endstream endobj 63 0 obj <> stream xڭV{TWfD ւVmӪA(Z;@$$@@^$$!$$#!% VVjDnϪmO==N;ӝdlsw}8P|x@n _(*+HTJA * b~EQU).#s:)_"%%/2 T%${ER~)Y'*KHYܾoo.M,/ J")LO'I)OVd5OY#+KהsknOK߶+;7Ŭ-[n͐)edXBeE*i]Œ*=A?VCh-z vB*P5$Bܥ8pr982]͝9:k /4!7 C`Sa\倄9.=VqZ+M LowXؓxx`ke@?Z)*1Z<|0SN'?v}9ʬ+ŷuL®\W"\|7NaB}ff W /⇧ckp_^\k3hC-Da,FG+yjvf2e} !LM5\r{Hl&Q06QGl ~֍w8gc>mwM 9[`Auŭxv[xGgY_p9oBٰJ` M9 ;#{ \bZ٢#vKG:DZQ' ;q)cgǾ:OX Cv8f ɨAe C >GSlRƤQ:LpwSWH5*ཉ~xhlb~#I407)ؤL«v<::6fg ѨVyWrϓ&֚ %՘Ju?. I? QҾ#{ofY.]Ryr{ehWpć{P#^Ԍ NǙ"YWmPKW o7uW0M.!::^T*Z^Z GB#SWO1,s [t˝ tp1q ,$pseb'E,du{y@(uZ Z@W4;.u_݃qlb08!\x_XkҨx`e9VuwlbAe%4-[pBB[.8`^I@2[Bu=8<&_"7=07t"c! pDR~z:V(w%7uY6aFEąTES=a5w;lo6 au&>@Y-_9p endstream endobj 65 0 obj <> stream xk``UfThu`Xb endstream endobj 16 0 obj <> stream xXYS#7~ϯ[R}( ĵTN̓Td$_ I GRwu%F0' w5D(aH%D1M!8"(ђN$NQ"J$0&$0A!҂@֎@Yp,^t1-%X\04@'kSE4֝:?,h!r;~(NgY8q) }e3k`&{{IU:O:8y|𴿟E^Q'̿VCwFrqCmFg<9Qqa㬉s:qN7W&>瞀 2OH I ,9Ezc;ݪ|^Ϣ'a( A@(x3+^Y@Fwnso"}u|gNek`Eݍ<}GgnJ:E'ϋ}i1)::mIH[_Q!%`C|GfNXt==DtTN=:(ٟc!H)17ǦGL}&"&=ltd!l晥Ѿ)̊T9J#Lo>^_OC B~,VXH[f"~SXlsR,BaaRԼP *2S,̤º (G &L5Yj2'Zx>"򒆢fP}HbDNƒz6b$Nd2&jSK~/m<9lnk" U ~RێTWG*IDDJT:&tn^ f O4xfqumi32"k4 3Z Vāȹ-X]waW@ltl_ɬF*W<!pRʷVUFR. 9aϳ0KŖQoFyn+n`Vv縜Q:^—@,N?_]`A9AJnE-LZ1wS㽍 9\sث؛YE4FWSJXhӋί !<6y^^^ۭ niwRpSӋy^JǶ4s)>v͙o\ME1{K^tk76ԃ>;'lq1zʭՆ#/^G8\t[ J?䲼Ή` Rfo`ĶcS+[S#]B6bs#jl_3 4_*MYn` ljkF:_p endstream endobj 66 0 obj <<63be12de293679d2f08ef19d09ab3ce9>]/Size 67/W[1 2 2]/Filter/FlateDecode/Length 195>> stream x-9Qg~<PNB$&QmD԰ѳ ~9'r&/q)0(4C",$9Ҁg{ .R$MXQ=7]ډy047>:t/z9TˏI+[+L+M¤?n VYlZ%lZfy endstream endobj startxref 34081 %%EOF PK!R55jrpyoop/vignettes.pyimport webbrowser from pkg_resources import resource_listdir from pkg_resources import resource_filename def browse(): """ list all of the vignettes available for this package """ outs = _get_vignette_titles() if len(outs) > 0: stri = "\nAvailable documents: \n" print(stri) for i in outs: print(i) print("\nTo open use e.g load_vignette('" + str(outs[0]) + "')\n") else: print("No documents available") def load_vignette(name): """ grab a particular vignette from the package """ outs = _get_vignette_titles() if any(n == name for n in outs): path = resource_filename("jrpyoop",'vignettes/') webbrowser.open_new(path + name) else: print("Does not match any vignettes") browse() def _get_vignette_titles(): x = resource_listdir("jrpyoop",'vignettes/') # grab only those which are pdfs or html pdfs = [s for s in x if ".pdf" in s] htmls = [s for s in x if ".html" in s] outs = pdfs + htmls return outs PK!H=BTTjrpyoop-0.1.2.dist-info/WHEEL A н#Z;/"d&F[xzw@Zpy3Fv]n0H*J>mlcAPK!H'D jrpyoop-0.1.2.dist-info/METADATAA1a I 'kv[{]m7͛ p:OhȀQ˻k+[uUO5ZeL*(9kh<7\ؒW%@yf3֨ܲ#ChI_ ;E ӕ09[8`iSԑcׯ'FPK!H jjrpyoop-0.1.2.dist-info/RECORDur@{ٛ ^(dns^&stE49`H[k"7tǽrFƝetUt$+3*;RRM+tQ꒲ڨ:=8bv€ 55Y()*3yM]-|8hCbol^4M>hYod2g+"?pAțg(edbb}⭡#J?ta[v'-ʃ~<@7,F%z T9,6"u-kR 68&Ub~,IQrg+A\G4BJ?/v}|){)ke}<0ǍtxOEbDg7 ?4PK!70GGjrpyoop/__init__.pyPK!xjrpyoop/datasets/__init__.pyPK!~t]] 큲jrpyoop/vignettes/practical1.pdfPK!1չ ^jrpyoop/vignettes/solutions1.pdfPK!R55jrpyoop/vignettes.pyPK!H=BTT2jrpyoop-0.1.2.dist-info/WHEELPK!H'D jrpyoop-0.1.2.dist-info/METADATAPK!H jjrpyoop-0.1.2.dist-info/RECORDPKN