ࡱ> F>ʺ _[uJFIFddDuckydAdobedg      !1AQaq"2BRb#Ե67w8r3CTUvS$%5u&Vcs4DEeF'W dtfG !1AQaqғu67Bt82RsT5UCԕ"3S4V#cd'b%(EF ?wߗ}|;-CZ-x=i4zM7h86KgOلaB"0?/kl=݋b"z٫ټ,6mem؋m؈{w{93tm[Vܚݫ[[eQLu33333333WC־+ƞ&ۼ̿ ?3>q|;㽦|_\o]|%WYnGWG{v3nh;>%He >ѕ!/pV)r"9IZXQmIyV>gBHG+I^gO,){ȥvsrSֻߖv)^ߪ^u{nWЊWdko8jVzQc߲o疿c[}A-Vfehʟju5 }A=^֣?L_1k/S[W, gev./֟ݟQ{![U֙6u*ݛggɏ|^:;n[]۲&>2k?|:;vOߗw&OZ q.#Jbv߷SDza6LwlZ'xw_Zo\SG_Qbv5}w˻lbWȷDxc2随_.[#aؿE q~,>!OMy_/[m6:o\cSڹ_ۻ ~8zݟM}jϺuټ*G3jo~[Y7[G7Wi;Dư5lZ'v-ܻMY˴ݤT-Sk<)o9x|gط'{/_j퓏q~ZN"møEy_,^`#J绉x6/#p/ܶO#UՆYCľZn~$ |vxpy_>vaڎ ?V~u~* vǵϪ˷o>cqό?o/kvx[+;`>Uovuo6xӌo?kvxSg~gբ687V7|-O᛿ ÷ixիxߍ?Oke%¿7>";v8kզxoO?{ڟ\ _?s\o_;{Gn/{ڟ^}|>Zn86#vS)'PڌpWj8Ʒ8xCV6V=zE}Ql˨h%އym?o om>q eyIp4b=ݧ7O욏6s^vW.v维^kw|iu}Qէ޷z!'hȮ{F Ƿv:oO}MGT{=2vwi>_n|۫?V=w}$_nڼtp%?dڥ{w]'%wi}WmZ?cڤeavwiS η[ t}gj;l;w0\TFC>ߵy;?9M=ͪO>Cz?i.{P.o߷^uogsfj)ޯy=(5v~u8'?|#nQj.iSxm~y?EųyIw3~SUsk;VF#$_lλ>Eųy;0oL{گ;S?v<賳oliZ}s\ڤFM;go~rfJ;azgrjї۳pn_iT],@gekEqGymy;4ܟa|ҥ w1ü\v}h/-7};/U߯}˼.m;kar2#|evo9e߿~[0폵،8?>of= +O|/kwl|I{0_`|ҥ(pfW-q/f *OwmF\Yޛwt[ofTsq}dN~]Al{KYfOY Z{[ _ǵCn#٘֯[D}[_qU{߼ˢ/nY"t]Yn˳mً&e.UsݛtfvNgJfJ^b%n)byd W<ޕǬtX<:W-:-Ny%J]s.vmʗ|u{mr\%KW΋aW&6v)Oͬtۓлe^k{mkSmwGo^&JNmkZp;Wռx3_D?1o_?sß=s>[/D'!RLɒ9cаVFhVͱlZl$2jܑKsPslS-s3WM̭^xt7nh'nh'b:[mW+LvrA,O%c%y|.웭Юp+mZmevjsåkN's\ ~=Ͷ.rT>~nPO{mO?vkEĮmfNrWҹ9̹j{nէJ6TneҴݛr\´Z.o5KuEås\njW1+]6dw|ۡVytkmJyt{ͬ W|ޕslf2&gйb\Z\W$-Х,O9\̛aJҸ'J'E"b\eҹ.͹RιomNXvK6s>Jb: f)йrzulOu◶{]͖XS[)`Nrj`Nm}مsjݵim\lZgKminH%d]ld/Ҵ]usUm{#5yҴ]u sW= M/TyBvNsC<=ΛUJs}g繾iyMٷZe[C, 潲ncZ')sC,1\ ˥i&U.y5ߙbZ'Ku+˧̹nNxtw7[k$ݒ繶9cйnJçҹj ҹm5IsVxͬnJzW<ڧ<_D}_V-}ſ%~n/x|;שwl˾ rǡHg0Z&HBC;X1ZeZg6RݱkܐrrE,[-C,ͲO0p^X{725yҴߓm 3u^Lm^X3m>얋mVnB{4ݵj8m4{df<:Vn4snjǡiܕeꞏ(ZnnhgjZ.oB\7ڭo2s}˧̴}e\׶[z=+Dv9Ҵnhe+!Zyt7j::,V= Dn%{t-YsU8us|dy\6ڧ,z<-RxtW=-A<:W=<ٮ{:-^~oJT2Mͺ3V]+QJvmʅs åh.y֋+su\Ǥitْ9knYҹɶ)ҹtZW67D)]zW5ͱ\dj<ˎRB'Måqk3tZs1\BuvmЫ_yg{}i!ֵ}}[Η95yaڴJ~Mx.yy{-3ybm$Z.ɶ2WZ.ɺ nKvժKW=푚Z.ͺOsmrUz!J]+ە.dnJ3+)àMflR= X'w]]){l׳G{8>۫=ޏtM;O>ִQw/v>yg~bߒu7k~翇>{kym}Ce~_e NB9cФ3-s$rǡaw2Э3b)cصnHe9Ke" T- Tj ݘZ8f,=V[ZoɶO?O/vŦtگ,VXvKE6J]+E7[\W=њ aڵ_6ۚ `y署3W+Eٷ[ m5yдnJOG-7d43sZY7ۡVy.{V'̴ݛu˥h6U7hYZe2k-V=;bZnn42~m5:mR|s;tɬ͝Sǡsk6.x/myhox[u}籝"iҸӛZ֜.No:^ [Worÿ_mz/}OlIG,zqrdX,43QslE,}- Z)l$Rj2j-A?T \ 击js+sW+M6ۚ 7[ شΖU?ܐKh&^_ h&t+ 繺3A,=VsA,1\Fjåh6sA<=Ͷt*%s}ynVytfj-7ګ<|LچX{eǣҴOlS+MXbͲJ~M\k3iдNrWOrݥZn5S\7H'%smrǡsˢܕ'Osߛåsnjݚj+YܕymNy.ytڬp+ۣ5iҹ;t7fܨW=<:VRhb\7[zJM)]:6U]+mR]+Esk3tB7s\OvM\ϣ̸ɾ+.{tث<:W7EW?.t)KW.&R=cIҹonjw|ȸtة,W%+tKnT[lS'ݒ'M*\ϟҸtXs5Jx.mcܞw/w^?_sm_Kn3z?^}4?WsoZӀ}EܾKZ!~JMݮ^wyS← }| )9B2`Lv8b3Bmbse!+T-X-SZX-Se'vakᚼmZnenjåi&sA<e.UsݛtfvNgJfJ^b%n)byd W<ޕǬtX<:W-:-Ny%J]s.vmʗ|u{mr\%KW΋aW&6v)Oͬtۓлe^k{mkSmwGo^&JNmkZp;Wռx3_D?1o_?sß=s>[/D'!"%L1;=^16vxV?EjdeXݪyF'>yjE:%Xݳk'kҎZ;s^)gN9XKC|O{ ص>FժTgҬ?5٩_yf{?XC/OW2:?Z*wf?cno{(S~kumSM xj#֜HM xwr㝏%Ew&g?8ޛ4hޏ; /,'qmWe=$_S|+gd=e릫/֩1ߟ7/B{)OxgxΝWʟo݋YGˆGi~԰SFcFޏ I4jZM:u_*|Vq;&ޏ?V:u_*|V=5|(؞2E%St~Twth|Kl[E<iZ7[#lhqAk 3~T[4k~Lx,~B< NO]Fnjw}_sux}ΝGʟ8tƍwɏ |;ߩ֩:u.|V=5&E:3k3~"we\O3^.h?GȷC.;`\oF?O|#dvvo]vsckTISO)wm|t2Cg KTCyKdvÑvo}Lx'Q-m|uiwr?TD8~6.mڏ GھE:'nI?M_Vcl~R6p_"v5P-7v+/)wgoj1jv%}waajĸ~>om G: |;|^zwag3Ͷk+kvR^?:U݆q}k)kv]vzoi8~>oM ǂSnVyw+j-Wwsrwykg_y+<|{#~+jŭSô_[#n y+< ;8j;+R={Cex"3nVy2GW}ZgWho̶Go|oVyy|;&[>ĭ3ݛoݾZ2oo oVyiؖcqOv>/-?SoVy2pvGg[!ii3vy}ge>&wp??[!i띥F{vvZov{vmwE5]_`1s[;i?!,5}_igm?fqzy _W?w_/_ܯFs}[;vczy _W=IW\w&ܿigl5ޞCWOo^]܋Y[~ӭݗz5~}ÿL}jlkw'uٛe^>up{E]ZͶ3o!۟,5gxZ/+\ofV3oMow'ëMĻlZ벨{}Wݳ_}16/KO%r,/a;Gep `Yⶍ;O?l{zkvͳ[gS~::ٞջUMu)mf"f)?.=o]߫vm^in߰맥t6}g5= Uu"f"k;wE/_PO>ֵO}EܾKZ!~JMݮ^wyS← }| mޏtM~vO>ֵ}EܾKZ!~JMݮ^wyS← }| mޏtM~vO>ֵ}EܾKZ!~JMݮ^wyS← }| mޏtM~vO>ֵ}EܾKZ!~JMݮ^wyS← }| mޏtM~vO>ֵ}EܾKZ!~JMݮ^wyS← }| mޏtM~vO>ֵ}EܾKZ!~JMݮ^wyS← }| mޏtM~vO>ֵ}EܾKZ!~JMݮ^wyS← }| mޏtM~vO>ֵ}EܾKZ!~JMݮ^wyS← }| mޏtM~vO>ֵ}EܾKZ!~JMݮ^wyS← }| mޏtM~vO>ֵ}EܾKZ!~JMݮ^wyS← }| mޏtM~vO>ֵ}EܾKZ!~JMݮ^wyS← }| mޏtM~vO>ֵ}EܾKZ!~JMݮ^wyS← }| mޏtM~vO>ֵ}EܾKZ!~JMݮ^wyS← }| mޏtM~vO>ֵ}EܾKZ!~JMݮ^wyS← }| mޏtM~vO>ֵ}EܾKZ!~JMݮ^wyS← }| "]{mKki\CͿk^8]蝏t寢oχ~9_nP_w"$ 2Ý+QD-"iҸӛZֽp;Wռx3_D?1o_?sß=s>[/DIbgMi%XF8hjd*MT{B"H`]I7 HI?/i~IHcӖPZ!cyZBY+ɍeL9q$0ÙzR L4)HN*ݾ"7I[/D<. HD+YϠ8:Jѯq{P6zrcʬEN>-)DH#;Z1W3*Wݍy1U:R ]ع/,Z1|yK .Ur>@[_ǡ" +\@ȵȍ>j'0Z2ܚ?%&tK(aVJCٹA(E VJD :83/3:t: z9Pyt&Ay@ѣY p(1ۑ#'g  XpXajcXJx^2A'1ZGJ'J\ uRDt+(巽z?^}5?WsoZ׺r'c/yk-+[7cv{{s߯綽Nw۾6WIHF$u]DK_S1 (5rClV(eޗX$5L9R-hř)E0z,C`5ZLN+p$lRkV)`Bbt+UØ FUpraj c*D@0&ynZ  GDrV:N>_}pƎ)HJtSE>]Ðq-tl/Юkm$$_cm>]nDdCN¥Dt6o } uۺ+֫9|%k 'dI 7I!gw))?R{I{҅ 7%tBф2atG?(Ă|]J,U fh JL{mk-ףҥ,}**sT]YHpxYщǪ>Mq:JW (n6CE6<ӝ)Ȫu#1gɎޅb=Ⲓ33Ӝ)1D6-j2U`5?,H$a\pNuƵ|3,s%DQo{}k!ֵu.No:^ Q;qf_2Pؽ<\wyS=}o wt Wوρ%+B[3l V\3=}ʄA$sRs_hﲝ/xs9<~trxzB@AT}= 3$ uʇt o4zZO:;TpZn j ձ5H#ݍ!$wUрp #2bzQ-<3ȀHcIhQ(nc 8F io[!88XϥEshf>*bqp[q%-0V^TS~d<*Maba-pR/ APEwA<1"U,3.)Vi(R$NnEgCW8DԺBGW:z FQv!)E9V9|SqgDPş*RJ#1'Q:NAQbj@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ak/mxv+}9kg}}[Η֊Sbχ~7b"{mu ZS/7$8>:2ʬi-]fa4.5_'.+RpbKRq#be%+̻ Z11/LAr bŋ??ej2Otd}PȎT䁁z <Ö* YhlRV7;bTKm| 0њGĸ|J0-#R[b֫fX=*sW^Ï*D AoLKj*JNmD7/>|g ̲h'8j2wCc TiT\p"o2-e^LHk!AGj%L3v;QV:}dvf̈& )WiJ౦O3yd _LƲ$q1e3T[xVϕbY]*2Q巽z?^}5?WsoZ׺r'c/ykEt݈"0X~)^{Sp^{;nS+hJH]1 ^}ÝGIdq h# ̭9EjYعO:%CВp]{.[z̷WaETïj״옐^R.\$"EHJNOx{iHoL T0й@Be1`"ĥY%WnpE(R\JK8{JdO h q<\URhbeh]`I Zx6f4Bles\hVh/]/JRg/v!'شq=1:یˬ)o]Ciib"-d2Xە9+ZXF{W`zgXl݌>JQ(/P.6s%%ҍAJoUnݘULpf bHWeҚ9ȸ84VzVYHC y]&UjpY;f3t,Kf= 61 8)d"`)c5GTuk+*7`81LecېȆgX*&LċYUVm IHu%`0QĹE|Go^&;]JNmkZY>_D}_V-{~eo?vڮE/ˇ~3gvP_q҉w_fD2Xe\{xM!0̒ΠO;FYj`M]]:f풔e:57c|j u_gn'tV5 te ~U  ;oi\1N/['ޮдQ*›_ă=4wnVƸE)H'&b@ 3LggtG~f >*91.cohn #t Y*e4б;k,5@ȼK'93$s \ܷo#]t%RV$)p\,؁ʲG/RȬ(nEQLe䑱ꎖ oU`ؤƙt o"Tb\mUqtVqYDicD}W܊bAN'g\O#9~[DQWߌF[ cJ-p_zWXTGEH2b(sR%g'94ds]Evͼ<"i1Ƨ)| # e0fJ%*!ǻF &#o#3Q]{mKki\CͿk^8]蝏tW̻hc}ڥ/ˇ~3gvP_ه =xOL:51l>/Jts9ebw5䊽lB"%;W,Ԛın47 lʠ`| 8䖟Yl+rHך(bl!#g H̢Q# hIqV&KvU4e&"Rri `BaKn\E9,re``%4C )Z!/4<(a+rg\6VVCtfcLI#"9ԢQ"(巽z?^}5?WsoZ׺r'c/yk4(|{-bν<\wyS}#=|Xي>)ŏ(RiJwOƍy0IBlU\QK E:BkwHvř +L0`ƻk&h7Mv%Yc: LRtVջW-aY fkX 3rV# ?G2FT:ɀc r'Nb2M !:ӫ;M]HD沲 RyѿМ 'Z%+5wP턓IJRhDw憳3扅]S~D끪hѿyۜzρIpu,r7EKf ji0ؽr24?#"'-1&$Xz-4e+۴I&Zmg_ NQmjCqSBES@^LXRD0jب2ݐ;=02N#i#f'* aNKq@wܞrΕ։CrD'p"%| S$|, ͛).%ol\ٙZ"X6/](DˢQ巽z?^}5?WsoZ׺r'c/yk7v{yr߯綽Nw۾6Wa@Κ'd|ФíGg~EI ы1ʻRs>=s{Hi6=eXYhBљ8J7m}mL&42h8gi!8[=F^@N)8''R=l"FP>LngXFE`MFj)d&!G"5̼ `*>YswX$eƸ.ycI1ЮDO D2N b1L'Tl F)=<~zA 1  @C Dމ=RAٮ&leB6cѕb:{+:yPS7*Úh\1NފТQwX ic&/Dіk .ܘ5#v Gx7$K%%WB㼀 αeQ=ަĬ&x4(L`&Ns!7b3s |E P1ɕÍP´ Eʌ<"]{mKki\CͿk^8]蝏to_yڅ+ˇ~9cnP_Dž}|DlL'vƢ^{Ԛ5ųRbWCMjﲌ;^#\9'Qҋ\Y>I m99VQa8"^毑d2 AdL)<=;X9=h0F/E/;p.e9,-III5͌aj D7i*7,iUsJ]"t88$S*QLkR[[LmwVY^RYFp2 8=*b68gɩr(Dϋ.Ñ440dYzfAF H.u|~Zf8K `"F98X ~P(ub \為=lv@8l*dRVR |.cXP8cffsKoTc(=aW)xJkN釗cPb:/ÝZ.):(]{mKki\CͿk^8]蝏t{wA`W"y=&?˗_5bvlAX GaW8ߎ*A4؃4\E|g`RT{J%NY)s:oҹ# C%V9{+\`€sfjb.[r`el2,GW+B XW\EZe,`bi5zɓ(z& 2-M(ю`DVs-AvURygуgf4] luaGdQ*K_CTɱX`2> e ~لd74bĞK!?䲌~mz3UHg2MbQmDEb})"Ƈ._}I,Mm1 6U_c0< T i&R H@S'jfSZ[óU$ǓIe x]l8򫢥!=Td)Å:PC>[{wE/_q6{Qw/v>yg_2 Gw+$_5 w{l_ ^{~wyS]k7oP_u<wP$ C3joXd(+vXҋXAgpt,qweD\[z% ˷n a%FԤ%˸;Ž ɍ" e(V6wڤa8J`꺭 8"qH-$ՈRY楨m1kb"UIXҘaY[ 62mEC|MbAq:R03yݨKbiԚb-2jCʥH&clL Y#(["pS^t\h܄ɷZ/VOykJV(FD"H]BQ6ʙȍ= XNKDXۤMFj1qSBc>9EH1y:{}AjLFMw_vG Xd9{m\sm?7t*ݴk&^?Uf[Qwf٭jlto#}u?6`@ݏhć ^{Wp^O7o \r2FT$DPWwKYXPlmu_VbwD@qZLm>޶, Mqd1+ϖ{C8矓%t8,|TZǚƵf$~iGŒ Չ"j6'NQ16jdj(Y LwR W(íL]%.4701˖ڥp&'Cktf @y;Ubt5ڭ9v&(a1Eb=:o]P(p-tXV]+m ;ZTTc7pfapM>9=+\7GwNDR9ڬKKaא5 CxaNcD})70mPr=__+X$%;ƚc!`IBebF13A,/*A<#"=\YV^+ Xm-6נ嚚%m\⏼‘g&١Y[ `J Rˬd)@)+6(AC ΢uԒyRøstH$ll#'F].V@pk 1$TAȑJY, 'jr$$UEQʷo;m'םj[{Wwެnߠl5cy!(ab ׼.Osb{p?=kvݾ6W곩Ay_3H#Us#&YY'Mv$F&Eή3$iFn6mR$ 6=z0up۹XH F;ӕ(֨/Y܄F\`0Lm:Ur:2l+()9|CpVKwe;iJΒ&&i }lYWz>=仕B܄# 3ueuth5౛XWnFjnd<"1ĘZmjUyÓr0ZGDžkF/GAEfp^TN`XIukб-iQgV>D읟X2GM3R9zUܳj1$Ɯd3I'êC 9o 3AL,gCjNEJw*SB_ Cו`H< (h6pۘa@2j)1LUvFP9emZ 2io1Ks:iW%4^SO7 nmXIf F{ƕWVYV0bUH vY#(ĸ1T^PIDRIfEdQʷo;m'םj[{Wwެnߠl5cy: ?ͳv"!ø{Uǵ7$e-EcvWvjΣhݿmn}ۦgzk{hߗ_5j#ܷe[DD?JRbMX{_bs|%Sxա7+ 7A/NdhκP=/6Q( XZ>X:ījt"4ʕJyFw'tr ߱ P!JĵӉBA.0QD@*`@8IⱙQ[RFz*xYű&a""yyq\Db^ wBɄbAc?F ֎2 p9Rs]]Sy–-4$ƭڜĎO"EQRdB޵[!e]/G dwHƐ,46Nx\L28R2.(܌nzdW,45ƅ*Ɏ]6Alݨe]pؚ읫b=+sItQ k%yI֡ 9XTsX ]FŤ,g"8̳ CrfWQ~Vnj9zk6N% NHe[ -o Q)"%d JA?ZOct-pı>$-,d\ޤ * AQbhzC?+Yi=yyլ#"&*-޵LRj`,\!Z9DQ[owvε~q-={oV7o6W;n}׆xbu/ }_ٷ][R9<~ X?ybhY2H3/E%]GF&Qr%ZKEe\@8VLI꬝mJfMZ@!ۡr|[5E}7[v1D_+pߘ`>J 8kXCz62ljhB];wg5F2w581 S =LCfLbL)GUDL0%vz2c D^5+QX l$cD3tV1|c] mգ̭Cx3AγE.;6i[7 Hsz*%aܺ= O;dUCY9uKО^d$d @!;'刨5ĄȘouz:˝cK[t#J *^%`h 3Tаzf=#n}*QCJ,r sҞTSwzU)\14w9fGQKGcu\\Z rs g( "J&S1W>5mP"2gجp[Sb˸o`*0ʮg[r\A|[r;Uп[1 чӒZC[''&r!ŋ |LbA>.*JJKrDsRybt4vV#pgtHFTRsXk HZW&:U [T_1,Pst,fa!#㕝!qOd81wgeiUC1)2RYFM۾voJyQ2wU4WyՀp#2Z.O@YK f'$N f.rԘS#(]&(W Uբt$g:|(H. 1Wh? Q(\zȥHD˥:Rҋr֢([owvε~q-={oV7o6W|.ۏۻ'A\u? }]?6j_ct(T+]cSA@\3\"MJBpLrZJ11D!E2&)(w@v2Lf!syBU$вMvXÚa6QPQfPpڱN @ݍY˚zVIx`a۱$1?q!#°=SWZrǏ]hgOxL]cY"g0?]c-&Ei4 @mF j掳U!m"R,Aw%ҁYixs VұZMuK\| M+֤%^GXYѫFھTbi5qĚ{ޚSAp8^dC*)ZG;ke"d7JWQ L_ F+ߢAA .PAxנ8|0!iIq./<:YOMxV#di ]׋DJxS( ^},|1$WM kJX x%1! LH 1:[12yԌr]]wTRP0s;22&Eԃ˞4B,) UUgc)3೉ЉLd=2/f"^,6ib4*U*3($ KLkOq8E/*% y(%1y\R0^6vjQ))bhҋr,*ݿ|󻴟^uƾooI_?{ z~ՎetGݤI,8Nō<+u,;'Q~~j_!~$*cT1: b= 30RŇ@*)^8//@s"}\zO+Ђ!9XaX#pn#"m˪"w|1JYķZ"JsxԊe]cFhPS.\W_V3(Zġ(PtLiwL,OOt!5iHq"O ڮPL3, A ( ᬿ"ɋUKaѡ;"@s}fLb[. v/8>-%su:anr0,(~weԼclVv&Q}Y`8)զ fAgHi%2ia VY 1x\wnFM(XD"\3Ǝŵ1~Q13)ecu\n@<'YQqLbX @.3 JʞCjUۋN)\cKa%z"n؞@ so#gK#nd5avb:Oi)b08WUyQX DQVlf*Aዤ䓒ݳ-D֤MX7zq ԐHI͜WA; 0Ji%~1tM$r7 کOEYM+FېZN\G QIĀf *C Hہ盓Ҕ2Xj\jM*2-OZ7$j$vT¸L*#bs"tFp&l[7ؤ̒űjsVYrldQ~[|CЕ7= YuifE@#=ѽ MV\NOW=) )!-o9vm3 TA.eru&([owvε~q-={oV7o6W8Iݻ{9sCW6Q}=o?umKGD \BB_ak A|>22!Ģ+_2Q:R|BV5)VX0μ@Jލ]I1XV Jq$aK@s |̽ &^_PoH N'ı5C-KHZc ^uWnܝ-\]D$&nL?>t`fCsgRi]~3$a'4}g"d3YKw4^&[Uݔex؄Dd,)ORuWnlV3 ikp'KL3 [21:86-9jXJ;Dܜ#j7&7b97gC` <he<]#UzZQbvS26&fM"bGaXYDhL\a r2Ϛ`X!*\sQ)6ѐ' +m8H\1$cjQ̑5qzjEiBEnɒS2kƤ ȔLwꚚ,R3U۹ō:d8[XeqY["թC|oqYJNKй6،M<8,qR#F~wRkFXt6dyU.(f+ F6+ѵohz?Ϳc?Uյ/37a 90-.O"qRfQ86S gajDT),'j2DW$I+[K|YL4G;r4;ps"Ȃf :(V4ly]^#h@p\aVya9FɆ$WВfsd+L)J[Z 3mIɔpBtޱC:⽯WK1qJU&2ufۄg nF}IumNP4dj@`1,›$ZJ_|4XTJFÀp_m4Hvλ0>c05h\]+Utܜ\`UI %cKt*oX>s,'K ]0z8Y|1H|]Ia%d~(8qnU)[и/ W8FFdͧ$BfShq!wwA;4bcr$X)i.Hq9IrrY0•&Ŷs"Vb)w(VyeȐwp塪.Sp1_cyJ8=kj~IoEwL^4fsCr=}ܸ Wr诅D%&nI%$к г!j{ pYGg Ȃ8)аǙFW3=a w$Ԁrze\BW6Q4 g$Ć5(vbU21ch/oi]6ydE'CJbD 7[tfVavƄvldIY-qf*фCpTg(

),i.~Qg Bn)0kB) F@һ yKͨ.rF9]2cVez/ғ96nJ"k!fyWar1`b'E<,?r ,ݮJsh i!> 1q!Q!XV{D0,}&3eewJ.GzӔ %' $dFb\;Vl9[lŠĬJMDH8Ar3AHXLQ\DU9Th* ز,V'ẹ4v3ڲFbp? XW&h$âX] ĥ'QU[FBnvO:_\Xݿ@jQ^2Mr7c7G 5}W_.Q?m}WVԿD$ LiLj¾+8Ows H.CfhbTY;Z5\33J8V Xse@Ʀɟټp*NHp^Vnz"_aXBe\,b(ED< N oIn͝O:NM|e MG"JQV[&8;TP?!SUmūVRBgzڤ;a F09cUJ;a(CD-Fg:AHZ1t_0<Oujz[  9`[-x10;QNc&|Zʧ4Ldjmݟ\0'TZLw{TJLC ؐ&_5+Ąʕح ETB$"KM:&1T TYBbSNe ?O#Bd3;-0&ב+) 1#,@p/$M\>Uowi>W}rޓھ~cvgExWG{>ew{Coxl~ݐȃ_a_ LHvR}5v oJ1"nɝ&+ 8b1-+s,5T ~RiE[ңUe͡;J]s+%7f-i"b}f#tmN*U.$ATS95CQI |^VT+ W %pKQWQcMW!oٍ.qgE-ڟ`tJ3 f͡#'9TV!/NR2 hs5B)=5p;O2b5t,J0 3cJ! F`SG%rS)J>3Nba_نq9$Y:J:{_wR%;ZQ 24j_L2\]JdJ7.jIs*B[WnJ! 8g3s`ꔄ#9Jgj떐6Y`xZ lޘ}2- Lk)1].סִx\@BIq ԕ0VJBqbZ]z;f2l@V+ёyMTu&tA˘\"dΓnmԚA}h3lΓgj]Is> :۫4hvN %Y:5Iv.b!4rvҹ)+80x֐:ё.]ԦL~3iD `œSFoƔ HlrV9dgbyA)j'*v<_"ֵ@5!H.c%Si#=fsӃ)95#`J$Lԉ\3Ʃ1,SERiR@4hXJ=ԣM3C8ӡ)b3G7%YUqcAָ1 ZGfϕҲs 1w#S"{Ui [vaRj1c*pT3q {!8l%^v[0@Qo>RiH͒nvO:_\Xݿ@jQ^2W8Du*W.Q].~~j_όWW½9=όP]Ĥ@ nIߡ?+(]ǃI6\ݶDLAq|+8eoDp2q]` c8J(o(Vy$WćaS)I#-޴ymYUcM= pYJMN!0"DumIVnŶCxbͱ2vuzx!!"v0UOįW&$; 2DP ArBxSʬ۾G6&XD(Zˈ?VeQZDeug);c͹TRfP"[v]QEj̧F͛%~?## > ?2RkוK& ])LɎLsWd-98ң q^ oc]n1h06BQGVeLQТL[ dǝ+"]$zEͺsS9Bp>w&OS"W&X^b14q7[ǵz#9`;"0VpFZy35 qr_ Wj]-XWrTyfA8x;zyN)Z.?AIĉ5jq~b2~.ys(ϥ Z{f`oհÞ1.4c`!8G>JN iIbJKbq$ܘrQ(ђGvbTε5SXhFCp^eȟƍdF> )+aEv) p$#,uSa12EZԡf!` b 1X _ AĴwj!"w 9L}_ 22fڎNt5a>9q`"Wm8n 섷NpƌYf,-pd f lp"H1?ՌsunZepH#:ȤG2;`% b͘g j2 y,yZĖ`? f[W.DJ8)̢fx,mIyr>gZ3^="B[$""# :d&V@)d=cjFldLߊq5 ^7PYrIIͱ,& 6,>8 $zj[ +c j PIF(rnebD6,>M?Xܫ0~"ђ# b&’bK/vԖQ:(@@@@@@@@@@@@@@@@@@@@@A;IZ8k?X+_v>kݴwI:4gYbfNer2Ɏt|UX܄!AپGavn˪1'ek4joNxے1S@@%anQw;2cc7mp)[W` 8$Caӓ%mG_yZ,\uEq LS<3i^~"(CW "n-FȺ."m'͹zZْ sA{V4ڜfMO8y' 7@ }QG)YB+E gt,ʥyS {yډ7TH1~q_ M#Cħ 3&6ǂ&i6]Hɷ3\#4G]U1(6>mg$dWL&kFvեX3Ɲ.lN ^좘đ-8oUSGv#HIZ޿I^%&򄔚 prsĢa  0ғ]&oo0б:C'I>U"7HkQ+] YRY vru&bQ1Z'q:̤&KZ!lI܁70ƞ uDY,讗n<8[.%}#jIGO.1Mu'(t9NZFD ,\'te&sȱ[3$Kf!dؘ"av2pY+ ^lͲLq&ȀwA}X VF'Ee%tP1#XaYG*{,+Ab8$CE ;mo Q)B"`\GU/)ECI C6i$ǴgpڭaoXGԟV-1$\B#=\5Ҟavג${hQF@v:1n$f8yU\"EK?O%]Y%'=YcI%/)$JH܄IʰƁv *֫K|0 DC((%E|v}y֯?彽'|w|-V:ߚ~]ewtpuohzO~umKpL@3-Ɋ G(c9}O$18fhZ;JJLF"LeJ%$ΚDdNƣGj$]c!9׵j'tȇ|LLkmFcujNiNU)1f eVXC:N 2) @f~u0XݔG!jTs/JrΦ;׷#ƊDSΕna~`4 ⮖4ٝ;,w&,qA]aj\dɖhtdopM9ޜA1Pq 8ؤՔP#k=N<7l R&2f|X: Bj|Nj!bffoiwZ3&L\aY)bK[|wlg..ĭ&\&@8eҸ_B[!B_!ypgZDLDg==QcN$<&eAmޗ#+xq|noZ!r!e,YuL{vSVfJnWJr19,vWJL*=&DG f(;%*ٌyTvhO*%d8($?y1֍3 )D褄͟?" V~ӓ'IY KmȬMFjK>ARl; Tξ/2&IݖRv(dxs꞊IPJ[%&aFQQʷo;m'םj[{Wwެnߠl5cy'@ͻ#98J'uohz~Uյ/3)?}(! 9>tp-XHJVJ˟b>1%Rwcf׶'5L]K8x2DV3ti\v\?' #vT8clUUyZ"c^\!WD Dp=̙SXUz܅.o8^}S-M A V1-+b$ȐؖNI1hu6qV&lF0̠m$\Bs=;q $.K NNN)su^;cgօ+Pw ZKN3񌉠|>:Pt:r?RA;r;Ҿ&ls&5bYb|('vaM,,= Cpp U)XHg]n)5H'z C)q֝ 9aM&zb!zkg(?(5͔~w"+G-BO:VsJE\jFd8Ŏ~$9&4 E*Nҥy FPw=E}c.-fnjgL+E;vɄŲŋ8bU+uoop\6\2sMnw#LI3'i(vQbuL42DOn|ֹUEei8GvcR1nI"[<YK^n h'u'c?йG;vDHZ;ɦ0L!ݣUB=]P3Eچ2Lk̙PAxt hK4c4@&@-n(`. 2Ċ$;"lU# G8~GIKQPZ1oYj[>ARm`2QddzXI-TsJʌ*ݿ|󻴟^uƾooI_?{ z~Վeݮuw#K63+u/ }]ٷ][Ry|?] c;u&D _a&]lѻovQ#2F&1̀X>DD͋x)Jc-? ,2c@̻)t4w%!$ȹ#|Wsۅî*dĻ8L).#sWqG+6!r9+D.[ R_"ᶱŊGp@FEa;@۔-hz[SKz3#_Wv]Cju7h'~R;.#)Ķi8VjZ.)kj YnEĚV,t=ٻ7!]}S&ZnΛt9 =QR}lG;rvN=f+;ۢ;Ѷ`4sXnٙ2sl8,cӏoݎrZoRV17\gQzFHKs.%jATg JrkrIIveҡ-SSƤU=eVpSXn#w!L :"aAWU0NSr糜"O3g"嫷ccr&'.mcY9^"vʅf߾C{{gd+<.yȟ*VQ:ĞrJ8e8a(1b!zPM ?BK>JB[W'ľNy:$/*lP[N=XGAV["+voUMvQe:AYrdFrK1$0ؓsRiBQ[owvε~q-={oV7o6W|mN⻹p[-^vJQbv},Z܈^ȷf62 4%J>G A5!RG[w0wZ+8[1F[44>ESS1>))ӵȜI`k} Qb!*HHS*&(3ߎV&98Ndzo92aIe|oeTr,$HyBT.C8cG2؃4G iڂ`Kl('I{&ʕ%&X%bLFH?%JBI-܄`,CvESc`QSK4a_}l,[Dc 3L3 f%mr!ʷo;m'םj[{Wwެnߠl5cy\+'Y8e{}#>WVԿ@*}|/R0nFFbOs+^:\ӿ[ h;0#P;&"nUȖݡ51 *r;8I+ v菑gnBI;wVQ=iF90$xG:"a2$hީYxEO%(K΢-V\n`5aeH{/U1rQi.~)MќEwqx‹LSN <3cUW:|8lYI",$] h45hD|ɗޱI1k 9R2Y\` [cѳزyrY8/o̱]f1[ٶ[DنǥdIWlߘه瞁LXEfg1!CRm#Ejr.\3K5M x㋾= KH$Y3 5ӐhLhb)U' ׌ZZV$nAd[:9E7X6ĒI=\h4ϵiWkPɊNF1ز 5gs42'i$fh@|r<<"r[ cnlf Vmݤ_~5{zOj[Ս u/?6x78SִK%{󆾍{CWxl{Ѹg|ZT>*!st69- .N!Gl8 rܵ) 0U-V`n'tW5xj&@["QֽBE3IV#rQKkwLps;$Duiڔ+5bM@K1\Wt=J2Vm!$fLy h.ćr0.cL配G,[hA OwĦ33SE]N\>c\(3:]AǴ$c(DXPl) OgGpܜd tvz1$v‘ZQ1477`.k@Է^xU~įB!xS #Kp ?\8.H2k8!90obicU;hf*#yRU2G&͉P; p eRH-eJLI5lr0BN~w-JqCaRyYDuNLBѝn[Tuy5g]߀N(d1MUowi>W}rޓھ~cvgEx_Ͳq ӄD{Ԧxk=EͿoڗ B3:/ͅI[<+TA"beLj(Sxp2#.kYYs)+7I~-Yy Z{ګ =Yή}cS9'CcjycCi̵"#C>њKk*jN '蕲A%ف\%"rA.Ir BTpʘ! a12.scL3)SͰ/=BbR ̧e1!fG!12|G3 Yˬ }ޱ/܋$k8mՐbsJv/I$c,@Q'vF؂ݒ V3V#@-dDk1K[bY! H A4XKibF 8\Wи݋loP6+TwQ;r]2|"2)s*-(&KPSbQk3Bv㨃 &% {-91x Ę c>@GtV[]fJ1e1X,&RJJ ݣ4N[vC0QMyVz<`t|a놐ʍhi)o7Z[*K/Rd$qTs л{+Ro4Xi9,Du8V#LH Z,gVV#!]bs ]L XJFid Vmݤ_~5{zOj[Ս u/?6owqxN8|u:u/Gm}WVԿD-DHZpg`j`W't[vԖi)-4kdHYd"3r$AV ː¸ Qټ &nl84)!`-R#y-5mN3J@aFϜiUzz%zl!J'x +X'ҋx01",ؚs ݿILC hcCO&y˰V?oS8F{z64I{\+Y C!hvuMLnY'NfLSKZ6LTiȧ:e @v7JSJPUrSR\w2CD܃e,e!rnO*6zS<7Ieo;"dj9T$-IcXΤM$b)140 u$3uHW5irv~")(ĪS7 (XTưl\ڹ d:")\mKy=)ц,L0zZ@bv+jbe;yn%acY mBVFpn%V&Er1 ?, ΣQ(]õLa&(~[|CЕL0fPX@; ܨR* a k)?%epI30^U)w>-VX2Zw{+FZDx|14f1ʷo;m'םj[{Wwެnߠl5cyp6.57{+\p8}K\=EwͿ~ڗz+Z6dĎBu VQczZw˝p!6m dd{ 4=NMD5Ԑxŋft"sJcD3ҸUQrDqX mܐrv癅fssjq15+Nxbb !&YDP7% LeulTl4;Y#k;2!h SA?b758ܩ$6$> f%ƛE3j0r } K+dO{aH`e_hF&QcQuZ7%j"3&Uowi>W}rޓھ~cvgExϠ/4>nĐ?,bY!JQR;pS]6P90$D_+RY:]; AڑU܆Di~bj$ҵta"[L8f4zRJL82Ve$V"2b9qjOv'gؑ+<=M~Q90ҥb9=k&C(s#bQA<""Ļ|) '^z w&JMk|d0,H"yU,LeA ekE_ȃ;Jڕk 4!&wm!C`? #ZbзK~ctȍx =]o{Ip" Z~nܣx )2,1&bXĚLDicf3. t3J66M'FiW2  -͉|CP5yT۴JmKmϡcFΔVSA_cYO\8;~o}=hl_$A!(z9$r0 T $\i\7,e%Vs܈ V BWeV vrc )I`;nFʱHj3|v}y֯?彽'|w|-V:?iݭA#uM"`$JO\=EwvϿoڗ[}+;H2cWl%poe")6tSqϴ^N$o8a@8й`rc<ǵZl՛{ bbtr1pZ*V RBg)܉bc7#ɩ7`ۦ-- 7CX귭g2 8*8 E!rr@ hB)\T~AdK\% Pȵ/ V-"qfyD Z#o) Nk=nfF34~&Y'Ffi9C3lD\b+JF#Db{ļ7ݴJӝJ++6fAPlFȚ&tXVpb@ڕgG'肵vaJxRc0 d\TJ3`'-REKz ȵlu_oՌhgoO제ħ" 82%>U,f Vmݤ_~5{zOj[Ս u/?6?K իV u? }]][Rˎ-t,vXۅ9^cQLUc;f8g#``%mX9\+]kX H i9@,S:kt01Ѩw}.[ VQTAf'Ƒ`swe)\e*xD8j&3)!NʶRkaZSܲ7XeH26kg1le~2Ebiȗ2 \30JLV\ @{R)X+ [0^E*;s"ks=m乙C bܪSt\d ̏"ޢTu_Q(JlDbݍ}dƘ*S|j"͚ 8u}:y UO(Oj>Qbmܠ}7Id˝vAn"rT1D:.kfZԁgsWpTIn;Aw6#~2ܔļ0ViZ˺鋲G8bpI¦tB>p1c3aDb#CLv[H_<.Z6"2vfE.HIZb =r)*i.Dt "j;8cU#Bc\*D$A-}CM8Ԓ؞G3_W v#k1UIZ.32aN qNr} (v)9W"^#, ?!>Suݜ)]u*F7U[ fѹaJ;Z>DKyjVe4A!sp 6 ]zbC sQzGVD\}RFsEt]epF JV4^LVˑX@RZhoj=_mf=tF{|2.)A + eF$Wa8b&f.B2-PdeQMϻr7; V%tRab*v\3c>-;-2Ҝ2jI&Q*w^30L!q]XXc-L=ⅰlTsLj(if9+UJmV"\sXF1V@ΐ 4W1 zU"P8 !wLD#Hy3>8¢\eA ?Hb*YMpjWoN.#t %c)9B@;(lFyj̉ƞUٲ[jyo#,lyK8b0(nvO:_\Xݿ@jQ^2Aq$w%O'S1󆾋{CGx~Uյ/l$H8+5!eZZ[2X Jrfg8BP$$+}b]۱]h.O!jhF@FMY0IFQWpmL5ط!v@!݃ q}N'owzW&[Z9Hp 8f"hqΏY.DLۦG;3'"LMs W1z=H5Q,]w~.~IFD (WO y*ݩ1z:ycJZ8Xlz$28E E|v}y֯?彽'|w|-V:KN^8k=CϿoڗ/υD\  X(]grGwٶ!ؾOHY{dxzI]Xn0ݩJA.3[)ԡnwc H3H)&4e~R]8/w.\_R7|wYr8,&yHVjmڙ o/Ȧk8o<,Ħ4BQyF]^Г<e^ \H3H܆S -g_I`5܎;RC}JrI޸̷1,؂$ʅ%\ݐ`WxLF$X9% L#9w-S8[ Ap*⩡߸v0x$#-v5K''fU<{GUČl܋1y=]$ en;@4*@;^*JNK*1dPթWXeV@v's1|tk5VoZGQ"4rm֐*x ;M CB$ݐĽbU0bxM[b9cJ*dQ0w=j09KVtmmsBQ~Qyb<2 K,N~5zE葒FLmJeUkTZlc OhqͶ%Rx41v*aq? v$9t,f%2L8(1rvu.S* s*I?HyIKo֟:HJ!ʷo;m'םj[{Wwެnߠl5cy}仾4>󆾋{C?xl{b TAȹj3rX,rzwaA-bAŁJQb./ -iF&r3P 7jiHScphj>ebpaNFܿoPKBNV'ԗwc,HLY>QRDȍd93ϳ1 NvSC)WxJsw- -48a)8rNJʼ'1-h奱 z@&9. #7 C֡X&Nd%p۔.<# (ILj1@,vS&S8Zw^dnW9R3+Hy'u*(ƼL33UT@@@A%#"^ARRS^EYQ$ϴ7XXŐaί3,dz3qA5F8y Aq [bcunTt_Ԃw%< ,VDF);T0lt5ؑ)V^n&'B_iiHSBƎCz$ĭ}$x&%e'LDAbFyL,[؞yJU4=h<+xTFM нot mXJeGrI&4/liO{V+G(nvO:_\Xݿ@jQ^2Yq{m_cUuېwSs饼-.<Fu9w.Q},l][RSq'mg /J_ tꛎ?k>NN;pp\^8o"i:mxut#sSCp9ZxWysw}e ib oc`|^S:OO+Zڹ32e*CȧKuSU) .7nc7$!*(&lxOvWZܞNT/G1دKJ5~˃]167n;1*V9΄xYRB(W1 Ouhw ]b%+FHY;bo\cꏑh:3Ga56hg(X[+!#j}ܾuM_jEf蓡<L+Iܝ/F:X /F]Ucn դNVVn躟k[pQԌ!NR6M.Ɂp8=PE"b%:3(Gu\kGjث: q<8ddCFqpttvwFƿY;]tz3YJD:Xѣ)XZKE:"7bR&w&} W]WjAnVѧJx.%+:2V<_oSWtdx.$Xݼ;]OI_ ѓxw캟'cvu?Q%|'FONj߲~JNՏÿeDp;/c\?JN{{] {l􂎯JkhĈj lJCc,P\C8gK:Pj}jNS0;۰2G!:P[wyĵ&ֳElC):4ʓo";뺜^g\qoݜ;]Oԉ҃'qſvpu?R'JÿeH(:2W[gS"t8dd5:OijƝ(:.c]!N|-^Ϥ V%{Ŀud*TI^/z/J:yRt'{Ch.|"œVC ?-so^N!${"z3禎+d;Wue^f{ ĉF˥NBAHGݝL}Q`\(:QZ}:Iѻ,x6%L?ԩO~5ߴiV.&#'N&1lTteb{cyhJtCpLC;Jf!ʷo;m'םj[{Wwެnߠl5cyq04񏺎:wS>uohz ~Uյ/#qʷo;m'םj[{Wwެnߠl5cyq04񏺎:wS>uohz ~Uյ/#qm]Cچ{Q Z;m܍FQګw$ӷ8p/DYxyonf./]|]ed]mZ]m[5{v7N Eۻ͋Qlͻy]lUlVۭ٦ۭDLcGYKߎj_7o;or?o_EĻ-wøo>'َ?Np-Y/cq-u ۲MbW{&ýnͮYk5>'[m;ӳ]]uuZV:dGJ6]lnӱԷk.ksQ5QVQ3J]19L?L/?٠FSCǪ(aUuJFIFddDuckydAdobed     ! 1"A#8Qa24uv7wB3T%qc$W !1AQ"a27q#uBb3tRSs4r%U ?L0 4 0L0 4 0L0 4 0L1.MY*H ,E4 ClD6RjTo4@$8HKo^c+ӍLF{]q}$K8l5{5%6vMC1nBW*?y?6Ս>Fu*I1Q6&Yq{uRY_Geyq+I'[#*igT` p:Mt#AgT؅0 n`nhdQOfOEqo\4 0\d[f6rbJcҜ $SlL[}&1$9t;* p)*Я۟slBn|_LtUMrV)CM@$F $|G\zmp<<[)#r.Vesjbaiaaiaaiaai?l6;p1nuS*̒B`:@B,&jI:u49V6Q+J*z W̫4cݻg ‹ tW0dV6YY>_SO?,Un:Gs(suDzb~My NMp/ڌZGُYwƠ6Ot* FIC&1"1RSN  p̷ەڂKR%cAҴA֝1X򲊝"J~*0nw g{v̷k$ԮȹL[L`9pڷTy =ARkF.y"˺NJhKRH l:NuqյW_O_k{ێoG?ޟ{~r͎4 0L0 4 0L0 4 0L0 G୒e b%*t#3oG]U)9X]~WBQĤ1DFK9!#n-bG$ML @] b(hFts.OGұf5MJ{23?ZL]&fR3z( SSCJPĞx9LM.K:ڢ5DV@KP 埓\HN(HQ5ӹqBuh%w,-Ij6ֳpk$- æ\ɱs ]E g"bR ng_7>EgiwKpr8%eV+`BLMooݢ^ܒĬ8PU`I`4 Zdi'H;[b7ISY4Hʀ(8Rq>%$3{*qqMZE(+I u2Yʓk8+{zjʼnLOJc6QtTR 8MQT $E@ؘ[ m`~x|_}vprR$ ҟter:#~mlQ2NRP`(DK㰆eZjYPɁľMc4M]-#Q`Uea$kH*m:^8W4{oJ7]G.[QQN05v~0dwc#3G řJ5'x8=ͣmI5uUOq]4YB(t(kqkGq]~V]r-[yߌn7E_6gj6t2Q9AA.GXi}ȢL UUwҧ^¢RMkkEwsZ vh"ja@eSCCNSRk2Fi))k Xuf]n1fxL(Bb(rG/pg6n"kC?f]=YU@ uQEvY<%|~?}'ot~,bڷcOM=}Go?S^xXiaaiaaiaak)Bx&BdZʈ="͓U%J3N vĪ9?R, y+yH I 6Tt fV SU~OrxݦxIo6*ń,Z)8#qR|4\^99A: ץVfk4J^QSc/2^k[g7ډ}Hm7EL>'fbrg/lKτCrG{|(xEс*$)pPɶDIBӖQ|kFB/*"mt[6"D9mFn i̷mKlI#m1|S["8FQYė^B|7hiygj*c^E#?4%)`d#_W<]?Zg'y <+ǨZ5V$b=O0DXʦ&)@:7?mo;\[K-,l4M5P *+^>n6v[.)c:i&@$Zb4h2NBYloBMHa'XFvA,-")C|o\DSGPQ[жsBU <}\xy(+1$c3K2#ֺFNCJ`ޤ5I[/&z%^*;."OmDT1EB`=@v0xw=[0kN+G@W*A#v[?)_JvH+M.FAΑ*:pc;~:D~Frr "ch#%$7n*߬#[Sɀ(n7x/lY˜}&q2Hį!ՌN+Yxה{yf]|Kmky振2Ml2[Ĉ!FQ'dDAsiMݶCR]SJup/8۹vm+h^쳐*HY>!b$dI Jg9NIq X;kޠJ̑ȟMwkzA] ʪHaē=&GLE O{tgP1&)JC)vH-5oM[nVg{tmPCU |g$p;xV;xy45 $I89j~r/v8WGE'm- V\)\jC Sl :țmlsn!bi$Arm6;?ض-KŔ(%KE5qȡ%3ƥke,vaL9q';$Q9VP P QV\=prKI4#y41z;>Dz6K{= 1h)WNg5) )'p4ݝ^aʯߴi,98$:r %BRm7٭!<_=<1GJ`X,V K]T  V}YqYo,dR,Jv`ȴS)SSiR$֙b ,t&$|,Vz}e#پ`I*EnAx2enמHqI>c$xLqm(" ,E)v"i{~? Ñ:}D-u wLX"Sp8ū fi;^L8j&qL`F,rlD۝T"-Z [*n)q}ɾIpnIf_;DD ePƢkv5mbIjF(jWLA07n%|-[lR4u] HXnZЏGd=˹E B 9GVX+* -J[m}MdL?umQK:Rz3ג0ds+ Le)UP{GI2 Xu(ygRs9hI/Wcc(7->۞maܠ# 1 D$Q]94|=KY+/mw=ΐo^}2N'E6D2zNM%VM *?qdž ;"pxix-Xx$YhY!"3*֢Z|ewvMHLpD@CYr6ݚ]vl5I,Ƌ;3 zm^_ŵm6\s>ITPYDLb?"pvJri9&òH.D(4r- $`:|uז|m7kzB $HIEm%Kh fh3dz'Oۿk]k+LjIeQ .B,f}d |qbyoyDZ͸P?B!ܰ2i9Ruב7kmt2٪] S+S1민-\ײtBґ[PzPzH6[ntD]ʑvTtEddIB LQYVguYH*"3dq[yZ ՒtbXFDhA"cDu9SM2(sB9a(n">̨܀Tu$1U %ɠ2I>lRh 1 2 2%1J& A" k/-y5|;}9\e6wnsv=}z~=kFĂ)r1NC S@1L0nQ5A )HT`CֵƘia\)TgI uF9KS^Ԣߐ{Xe|(UGMǃe=ʑ7HyW.hbn|q)kl躑 Yzj& eWY>HKD.IMH便݉]‹|OU˷nV?D9dK-vfgf,HzjOI'4+=C )@#tQUTJ.)IxqKGBoV#tK.LAܽ(P{7J_qQӗJ!11~I T=(e3W K;e#;2DL5c0 inyz4P@\(R ^y7{RJ[afFaH!HFOOjޤ&xN'OeTGJYm)N?yp*v'%7IgMBIdb!a)J"_uqe?sj쓦eB:s#9H F>m|o]"^[A E AkBOR k1n%(?e4CIGV$TUS1yq}r68Y\DAS@3f=EYPIsl['xvbUw4'%Q՘UAf q&1'NJF;;Pb#)_(@3& LUJ'g[mj+lWɮO靲% 0ǐE2=xs ]7s4E zf( ̻PLG㚳}\iBhw8aUM] S*(`. /"'S{HKLJE8ٔJ#4t+9ϖw})wH-n]K,3vaY$UbʱՑ=NZtO6($MizEYQ|[b@g Qq0<6ȶhAW"H^˻FUJ5Tyq]Ѷ n}E頮8X y_3m]ggK8Uja*9"M4c 5,SO3u]s'n^]3YJŭZՀS^̆֨ݟ(x[[mx7dyD7([RXSRB>˸c/T<ՔtΓE0j%$,i#+TEH"#q^<-~C*$22e*Ue&|%}dunh8挜89F+D~O:x%MT86 ʤ=*:y7y٢lT{@3Y[kx|4D͹ܳ3f}HUU`X'=Fd(&nR zMX{$7GC&0S>(yG,xE-H7arD@"&UK![ɞV%kS0Hˤlf 'RT\ٗI[)C&vCckvyyf:({@nmϑo{v$q/UI>oEyl4(Eo%ŵ &x_ȴ'B:B%V/#$,fcE;M5۬Aב{;褆6*"ua2 zǮKcE OBA#|\ML;{/,d"8QfuiwidN$߮?*})Lc&&z<Ӌ7' ܮؔVU4& Exf osٹuGͶw%E"uIo-da-VIU!\6%C_47d'"V$ŕ!滆n&C%MmSRD] "0Vp?6#PEj" aeX>E>s^..kk =Ř]D$e%{bAU!zA~LX87q?Dua^yUv)nSuI)_+5>{%zR:W-omו(g죎:kPKFZd`zQD:1%̼Z>!yHʿn]jR#6/fLc09l# +2;U E1e^Ec4|k-$fү RQ d3PêZSR]ƷB˷ZkpU8,s&0ڇSl{c7m6pq"=N1;,ı'g=yow\|ד4]lހi*(Q@U1+⫔VlBỄAtUT$ %1LF-C)b"M#"DcGͰȳCJ PAA0F`sO;wvii/=v,$I`A2xQ"L";謹Nngpc'K`cdIsX4$qg>W ۠?ȭw%:J 5J=( S-t~IXF81nc)7fYv ߳*# ԛxh{W+I؛7\讍ِJȯo_ѭ:C}vٶ틖"xhY{уDdF#ǩW.bxS c+:74rF;w#/<܇:g]}6X#RUV$lb*c@bX0+q(R{?3$M5Xm,aϯh R)[s8dһnBjH$X(=;D.DFFWdƪ NZ.’(UQP p1 $P;:&d6 jydG,NhbJ y9N̟a~t>9xZˏYƩkCxg\Ÿmly+?w/o$޳.0acM<#͖[vEu_rqJTn o5޶vmh=̰=CD&͹El.HVTWuȆ<\("r2p&BR*CȰ]BL(ܿpY>E [eu]ÿjHٔ픋WAO\W~1}'1̖r0z Ӹ]?}1q4X3'=?zBb;y& lQ\Gԣ>JTcB㡦-hK$t%L=jRM", `U('Wۯ+ cow s(LPHȔB+YaHb5YR6h$fU4<ׇ:0\,ՌbHq}rhvnO8x?-oM'q!lxU鄬ғoV`Q+b:t0C{s{'I H[ WQҽq߲ M[Oc1˅LM>3q i%΋6rSSff=, dUpqS(e9PCa'l^n$D$T(,u1bH)/=r2%dsWpyًJ&oS/]?7xS b~:/ƍJ[_;/Yq}~,Z)1OV/8'VèIh?Vg(OU='fOܰkk_s? &i:mՏvTn -i1L EW(ɬ:+&c1D@a[߸Զ{ŻjXeBPt`Qԕ`T8ʶEmpdAUlUC#Cq;c _㛂@ˌԙ>vߡ~Lֿ72g̼67/RR/ N=9~l"2Rs0#4TG$PAHvAH9 ܿwy$kyvbkzI:chh;h)Eć38zK%8J_Ƚb] Xe-u.㌹iY qb֑_,ܧ~y9mowϧzI$)J&&h +Ae L>c8ԃz ͛tX04R/Jiy=Էw=舢ED 2bp~+^Yu'ugr2N6W;2cT2*R E#. UQi7Gzg&2RD flSmfdS:6l6Sv%[c#e}Y?v#Pi)ܕ&'  LZ{Mr#Qrɧ,$#J$zU<~(?_'߳h?xqp,h߹nd9?UGnbLrel:v#i6} 0bWmοvd 3l\Dߪύ^5KXmC? kc]^9p<1&q 48r7F1z^Gs5-(.1RTǓe\$NmQ1c$s/G-a M,2cPh-!T& loN Z2N,1F5"T,a 1sUrᬍ_JQSֵGs4YQhH8lΊ*czpokx]Bü5`5,E\Lݽy'&dS5yr !+PLm(du WV8^~I)1X"ip3wETvE&Cb|;M7u-V[Yuf t}ƧowomfhZ%s =jH?t*NB%MTB5V##fЬ$M_I(I$ٯ37 Pl pG_{[Ƿ'AvqpBp4WQI'Fپn/ȹ%[3<<}'&G%NI59W#ӻw"04T\d$;(XfKv0[DF.N~߼vu,wۆUb?bTxa?"ܮ*5'rhA,ˍy\GlŌ14R[1'ۢ k˒@d n/tBs)GX^c l"K{eFzRdko6y rnڞpevmcv b,'節34N(WH:*S`wd(l݉;ϱD;&K_gej6UcyKMb9=JrΑK W:P[#,hoI jf(NHsv%4T8"ձݞQW[G sZK$YX]Tj%M 6Ӧp)vBڇ5{Snd2VKtU,JՁ#ߐ=O[IZѳ ZY]HWvi3h0ɁԚg|l9#fW)S-уMA!癳]uT흴w ЮLʁ\TJz hl^aV6;q 2E2#1$ J驕>1s-n/2\)(X]DVYeXjmT^$p1-h- @ׅU˧/$$ hI(p8 ^{a&wWpLKF8W#[ՙeA*0ۏ-lI6NJ$f@t%U*̪jlCRCOuGȠ}#w4wjUSOq>ͷfgRu|uutҾ<HƴERa.*A%H]_ 0L1M~ylFH`!)UmzdYf[biR%jd:*%oy+[im6{msj]r*͠UL&`+X7/)mk4V{y"\"&YT¥dd-猬m+^" 2Ui ;& lr<58)<7xsYn}#444VDj Q7FR1Iq멙I|%ՉKOZXiu5B|9+\i4`~4LLMhP/ƇeS^"*w)"uX+.XFNqR]ȐBJ CӮ8Jb'X\mwU [e#-,je :):TyDM%Lq֦7$)z8**Z*Y\,k^T * 'WofTVtVL?|8t@d8xϕ (HLp,:nKo-B"H&VBMH²ݖmn* ֭H5:&4 =8am31ʘ]O[࢒KðFW%!N8dT8Sm5xkM gc$P1/ߒyfWZS$BS3^.1+sRȇ^Y1saޡsȬ]᜕ J+%GPt3sa8~Ź FU:6?ZWZ )i|%㏙;%j4%MYc{?1|³dҏLZ?0"љu7JJLhzC{Cj ][ڨY+Ԗr:4+O?c,M5=odjJ3DNlEJ Cu=Oqδct}ۋHƞ%԰u6c[hM,X_ H*zWLN:j VjֿQLL0gǬ|7]rh*R9!2iDXxf5;A# 8)VPUE8֞aLa!]o }Lr~F%TQB7/_~Wp06|@|{K#EQډP}gǨؚL+<\̭k2&겘-9ZWRFYˑĉtf`dHEH\Jj= s?Lu1s/sۘei9tOQ;Z;&ujhbV':z.Q"A9Ȓ& E4T~ZGƅMj>87lw?7<^Ht 5p'r{ckE~Ks{"4ɴ` Ѩi:OJZ3S/ۖ[&Q1ޜ!M#+'+cI[d+qQN6F%"m w6$M`Yb ; \(ƚI doxxȾDag5 Fų}:?`#+#q,^pЙ㵊h`)JgJRsɍErf|7\#;f"`**3;+dˊNPnϕ56*v uҩs?\%jq_Z^1PƘQms|͎V>Jֳ5(䇴k3J[<>B` mU<#)UE$k%EϖRn֬Q s_cm֘)uWx DNkq4D{DbXJ) Hg&3f≘1DԛOp5]"q&Ǎiaaiaai<:X-Q 4G/q=<]rYn^a)5$Ǩ֘cUSA5YB"$:ʚi&DQC@! "" ۙoAQW|XX*,"Y*2)cgVg9HK LPS+VUvBOL(( C?Lq`rJf,Om0X%Qo34ōE0QtJi[JǪ.,~4Rdu j=1dG=_1mKX\l̘ NcjR>v'i{9\ +cf%-F PHf4kJe90Fg%lhS*R u0%?].mHHn԰Zo#0&cQ$mHzyF:gWj3Ԥح 'YEV;t5iC\7_£ds[sچԯn͐7RvJj Tέqs?lpT j(}2£Χn_+MUjlU6sKI˴rVL7I1Gcm j9: 4 0L0 4 0L0 4 0L1?Q(%Kd:\*F91`7':ehy%PvENç[!dVoƍ:oo)ݮ.>k (-XvR+1nr*n:$bL[*.FhŰY%X(mvYo>z Me5,۝[[rRRW/xOb֢?Z U!l x!'+?׍i\*ՏZreZzd{;+ИatRuWG=XQ @ 2 MWBe_Z=OqKCdJr1(Ԇ07xo|oU^nQ*?f7_-#,w$Tpw>bE^ ijI?_2_yqϼ/b'LDcXvv=g_ۻF8(hLڳuEݱ3lF0;*zG̜1ԉe K%3q~X~+Z0~b}:ekWc\@͓t ԒgAeWPLmG[Χ߯/aNk>sl00Z%<Ƕnȇ(E#tWQM s#S!֘bdLƝ}I#kO1"պCUm֫ggyVlVF7${Eo$guWSArtcB=vY!glɷh Rk|rQ3)8?תqt[37`k7 ggYTU '5L=qzza 4 0L0 4 0L0 4 0L0 4 0L0 4 0L0 4 0L1٠F+O8$$+BJFIFddDuckydAdobed'*y  !312b"R4T5aq#cdU6V7!1Aa ?_VetG$Zc(qeL"G5Rh=T/qEEIU}~EIcD9P,lX[pYNNr6$~B᛺BDh =^y5 6VU7,fxHbNѣO6j)9!aGx.Lx9$+;+=\z'vk8rq -Z@D/FsoOU%Nj̃swr Wa(;Z(1rvqjZ q]n iQ󄼁MlZRj~ 4'S(8<}\XUp'ңenЕ2Jx{$j='EbN\#iFs5% G:\L z^dL1EDsQWIM~3gs_E /;P<C#3Wy{a6 nhC7CWD^IҴlwA5;Dt.x/)3dTtqo&VtːvHT3R {1f\#^jڊ D_̓_#QsCQ&๺sE1!idjw2r" zq/ iu؛Y2uT,| :ɗ`VX @kGTE o#g>tmκ5GLkDe?OVy~ʯDzʺ _[uR$CǪ(aUuTR$+O8$$+BG 0AA`3f@p!Mʚ;lv3ʚ;g45d5d`/M,v2 0ppp@ <4ddddXv 0 H <4BdBdXv8 0<4!d!dXv8 080___PPT10 l;$Agenda(5 minutes): AM API Status Review (5 minutes): Review change already approved for API Version 2 Change Set A: RSpecs are XML following standard schemas (GENI v3) (25 minutes): Review two new changes for Version 2 Change Set B: New options argument; Richer return Structures Change Set C: UpdateSliver (5 Minutes): Review a gap we don t need to address right now Change Set D: Slivers and Sliver groups (45 minutes): Invited Talks and Discussion Change Set E: Tickets What are tickets and why do we want them? Perspectives and Implementations: Rob Ricci and ProtoGENI Andy Bavier and PlanetLab Ilia Baldine and Orca DiscussionbPBP3PXP=P(P+PcPHP PbB3X=(+  cH p   (AM API Status ReviewPre-GEC7: Multiple aggregate implementations did not interoperate, experimenter clients were specific to particular implementations. GENI was just stovepipe systems. AM API V1 Published at GEC7, and implemented by GEC8. By GEC9, AM API enabled cross-technology experiments. But multiple areas for improvement were identified. By GEC11, we discussed and implemented changes to specify RSpec schemas.Z F.AM API: Making Changes\AM API V1 was an initial stake in the ground The AM API must be dynamic as resource types and requirements evolve. AM API changes are discussed on the dev@geni.net mailing list, and published on the GENI wiki (http://groups.geni.net/geni/wiki/GAPI_AM_API_DRAFT) 5 Change sets are on the wiki Pick and choose those we agree on The next  batch of changes will be AM API Version 2  subsequent changes will be for AM API Version 3+<%"h%"h% 0( 0?'Summary: 5 Proposed ChangesChange Set A: RSpecs are XML documents with specific Schemas Discussed and agreed at GEC11. Implemented Widely. Change Set B: Discussed on dev@geni.net in October Part 1: New Options argument to all methods for per-AM or experimental options Part 2: Richer return structure for richer error messages, etc Change Set C: UpdateSliver Discussed on dev@geni.net in October Some details TBD=Z4Z3ZZZ6Z=436 Lx  3 05 0ZfG/#Summary: 5 Proposed Changes (cont.)Change Set D: Slivers and Sliver Groups Not discussed lately No changes proposed for now Change Set E: Tickets Large change Discussion Today& L(1(1)Change Set A: RSpecsAggregate Managers must advertise what RSpec formats they support AM API must specify that the RSpec arguments and returns are in GENI standard format (GENI v3) Was ProtoGENI v2 Same schemas, now on geni.net with a new namepace SFA, emulab-devel, Flack, and Omni support in place Jon Duerig of ProtoGENI proposed AM API revisions to support this and we discussed it on dev@geni.net Published to GENI wiki and dev@geni.net http://groups.geni.net/geni/wiki/GAPI_AM_API_DRAFT Revisions will be in AM API v2tZwZZ4ZZw4'3A   ' B  2! 0 0J2 Change Set B Part 1: New OptionsNote: This set of 2 distinct changes is currently under discussion and has gotten no official or unofficial agreement. Part 1: Additional options argument Motivation: Support innovation Support aggregate/resource specific configuration options Examples: Tree or chain mode in stitching; whether user keys in CreateSliver add or replace existing keys on the slice Proposal Add an XMLRPC struct (name-value pairs) called options No required options, but argument is required (except in GetVersion)PP P|Pv2 /E>7 B\ K4Change Set B Part 1: SemanticsAggregates are compliant with this API change by accepting this argument Clients are required to supply this argument In GetVersion, this argument remains optional. V1 clients will get errors calling other methods V2 AMs will include the geni_api argument as a top-level entry in the return struct, specifying 2 to indicate to clients that this AM speaks version 2 of the AM API. This allows experimenters to understand that they need to upgrade their client, or might instruct a clever client tool to automatically switch to version 2 syntax. Aggregates should not require any new options to any method Use defaults for any options Clients must always be able to work with any aggregate using the AM APIP|P<PePI+ePz W-L3Change Set B Part 1 continued2Aggregates are encouraged to document any new options to bootstrap coordination with clients, and provide documentation for human experimenters. One way to provide partial documentation, is to implement XML-RPC introspection. Through the use of method help, aggregates can provide human readable text describing options. Alternatively or additionally, aggregates may provide a capability descriptor as part of their return from GetVersion. We have not specified the format for advertising this capability descriptor and those extra options in GetVersion. 7ZZ`ZxZtZZ`xt < j , 0M5Change Set B Part 1: Sample Ad/A possible option advertisement in GetVersion: # N6'Change Set B Part 1: Discussion To DatePoints from email discussion Not ioctl; use the server to determine you have a valid method signature Don t add new methods for each new option  that isn t an API Could have just allowed arbitrary optional arguments - equivalent AMs should advertise new options XMLRPC introspection, but that gives us only the help string GetVersion (not standardized) Could specify syntax during coding sprint Nothing specific required No significant objections on the mailing list AMs must not require any new options  provide defaults General agreement on details Does anyone have new concerns, comments or objections that they want to raise now?PP[P*PPP[*  P![ O7&Change Set B Part 2: Return StructuresChange Set B Part 2: Methods return rich structures Motivation AM API v1 method failures are inconsistent, confusing XMLRPC faults wrapping messages from the server Sometimes returns  False with no feedback Proposal Expand and formalize returns to give better feedback on both failure and success AMs will Return more information Support richer client-server communication. Give clients hints on how to use successful returns, Innovate within the bounds of the AM API. ?Z6Z[Z ZQZ ZZ?6[   Q    "9(*P8Change Set B Part 2: Proposal4The proposal changes the return values of all methods Return an XMLRPC struct (aka property list) On any application layer success, failure, and even on an error or for most exceptions. Note that a malformed XMLRPC request should still raise an XMLRPC Fault, and other Faults dictated by the XMLRPC specification should still be raised. This struct will contain the return value from the previous revision of the AM API as an entry. This struct will have 3 defined entries, and aggregates are free to include other entries to give more information to clients. bcZZZ* -V{>G ZvT<"Change Set B Part 2: Sample Return3For example, SliverStatus could return on success:  U=Change Set B Part 2 continuedBOn failure, DeleteSliver might return: (That code and output are merely examples.) An exception: At the top level, GetVersion adds a required entry: 'geni_api'=2. This allows v1 clients to determine that they are indeed talking to a GENI AM, but since the version is 2, that is why other function calls will fail. <ZZZ> a Q9"Change Set B Part 2: SpecificationThe three required entries in the return structure are code, value, and output: code: An integer, non-zero on error. 0 = Success <0 = XMLRPC required error codes 1-1000 = GENI negotiated return codes (none so far) 1001-2000 = ProtoGENI specific return codes 2001-3000 = PlanetLab specific return codes 3001-4000 = Orca specific return codes 4001-5000 = OpenFlow specific return codes others as needed rwZ$Z7"$> $ L*R:#Change Set B Part 2 Spec. continuedTvalue: On success, this is required. Optional on failure or error. Object representing the successful return value. The value is not defined on error, though aggregates are free to use it. For GetVersion, the value is an XMLRPC struct For ListResources, the value is an RSpec For CreateSliver, the value is an RSpec For RenewSliver, the value is a boolean For DeleteSliver, the value is a boolean For SliverStatus, the value is an XMLRPC struct For Shutdown, the value is a boolean output: On failure or error, this is required. Optional on success. This is a String with a human readable message explaining the result. Specifically, this might include an error string, a stacktrace, or other useful messages to help the Experimenter resolve or report the failure or error. It is not defined on success, though aggregates are free to use it. Z,ZZZZRI,V       S;Change Set B Part 2 continuedAMs should use code values and output messages that help experimenters distinguish among bad input, temporary server errors, or server bugs. AMs may use returns to suggest solutions to failed requests A failed RenewSliver call might return a new date string in the value field that would be allowed. A failed CreateSliver call might return a modified request RSpec in the value field. Avoid raising an error (XMLRPC Fault) for application layer errors or any other cases where the XMLRPC specification does not require a Fault For comparison, Orca functions return property lists internally. The ProtoGENI CMv2 API returns a struct with exactly these 3 values. ProtoGENI however uses a different range of return codes, and largely does not define the value slot on errors. \PPPPC Y &  hA)Change Set B Part 2: Agreed?No significant objections on the mailing list Details seem fairly worked out To do: GENI standard error codes Start with ProtoGENI codes as starting point? Discuss at the coding sprint? Compatibility AMs will likely switch to AM API v2, not support both versions AMs can support both if they choose Note that ListResources arguments have not changed, so the AM may not know which API version is desired without a further hint, like the server URL Clients will need to support both v1 and v2 clients if they want to talk to all aggregates during the transition Future API changes will have similar transitions Does anyone have new concerns, comments or objects that they want to raise now?nZLZZcZZZPZnLc  PPy F<+ oC+Change Set C: UpdateSliver ~Change Set C: Add UpdateSliver Motivation Coffee girl:  make my slice bigger In current API, you must delete your slice and recreate it  possibly losing state and even resources Approaches to UpdateSliver in the community Orca: can modify resources, depending on the resource. Working on add/remove resources PG: UpdateSliver in CMv2 API. Takes request RSpec, returns a ticket Experimenter separately redeems the ticket and restarts the sliver Aggregate computes the difference from the existing state PL: SFA has UpdateSlice, which is a synonym for CreateSliver in AM API.*ZZ,ZZ}ZHZ* "}Ht  m    V?Change Set C: ProposalProposal struct UpdateSliver(string slice_urn, string credentials[], string rspec, struct users[], struct options) Success Return: { code=0 value= output = } 4 ZZ C  )BW@Change Set C: SemanticsProposed Semantics: RSpec argument is a complete request RSpec Question: Can we support a request from an edited manifest easily? Should we instead support 2 modes: complete and diff? Atomic operations: all changes succeed or all fail, with an explanation of why it failed and how to modify the request to succeed if possible AM automatically starts/restarts resources Do not wait for tickets or adding Start and Restart calls to the API. But perhaps support that variation later AM API requires no guarantees about whether unchanged resources in the reservation will be moved or restarted A per aggregate/resource decision For example, aggregates may load balance VMs Aggregates should document any guarantees or behavior in this respect P+PyPPoPnPPPy o     Q  > [HX>Change Set C: Discussion PointsDifferences and options Take full desired state or a delta? Who calculates the delta? Who synchronizes requests among multiple experimenters within a slice? Ilia and Nick argued we should support BOTH deltas AND full RSpecs PG argues that new resource requests to link to existing reserved resources are hard to express, and merging RSpecs is hard Should the AM partially fulfill requests? (Give you 3 out of 5 new nodes, while deleting the ones you asked to drop) But giving you nodes without a link to connect them is silly Does the AM restart nodes immediately? Or does the experimenter pick which nodes to restart and when? Leigh and Rob argued the AM should not restart nodes RSpec: request? Or a manifest, to allow mods to what you got? PG specifies a request but accepts manifests.ZZZuZ=ZfZ5Z>Z.Zu=f  5  >.b8nV#@H0Change Set C: Discuss Any new concerns? New comments or suggestions? Approaches to address Ilia, Leigh, and Rob s comments? Agree to include in AM API v2?F=B*'Change Set D: Slivers and sliver groupsProblem: Current API methods take a Slice URN Create, delete, renew everything in the slice at an Aggregate. No way to add to a slice at an aggregate, delete part of a slice at an aggregate, etc. Definitions Sliver: Some of the resources at one aggregate in one slice NOT ALL the resources at the aggregate in the slice Typically the smallest set of resources that the AM will independently reserve or allocate 1 Slice may have multiple slivers at a single aggregate 1 Sliver may contain multiple components ProtoGENI definitions for comparison: AggregateSliver: all resources in the slice at an aggregate This is what CreateSliver creates ComponentSliver: things with a sliver_id, roughly 1 resource in each /PP P<PP&P<P"PEPP( <  &<"Eb :   YA#Change Set D: Function implicationsThis change would make methods operate on individual slivers or on other groups of slivers  specifically CreateSliver, DeleteSliver, RenewSliver, and new methods not yet in the API UpdateSliver gives us the ability to add/remove slivers within an aggregate Start, Stop, Restart and similar functions don t exist in the AM API  yet RenewSliver is not addressed (yet)(bj   %  `DChange Set D: Proposing NothingrProposal: Given we add UpdateSliver, do nothing else (for now) CreateSliver gives a bunch of slivers, DeleteSliver deletes all slivers at the AM, and we only support Renewing all slivers at an AM Anyone have serious concerns with not changing the AM API to address this now? We can discuss this on the GENI dev mailing list and include changes in a future API revisionX?ZZZ >   D,Change Set E: TicketsWhat are tickets? A promise to deliver (like a reservation) Proof of purchase (like a receipt that can be turned in for your goods) A way to reference and trade resources without physically moving boxes A feature which, in name, appears in Orca, SFA, PlanetLab, and ProtoGENI Benefits and features of tickets Support brokers to allocate, consolidate resources on behalf of others Allow transferring, lending resources Support scheduled reservations Negotiated reservations, or coordinated reservations across aggregates 2 phase commit\PP!PP!,  ZBChange Set E: ImplementationsImplementations in the community Concept defined in SFA as a signed RSpec that promises to allocate resources. ProtoGENI CM interface constructs them similarly, using them for 2 phase commit Orca uses leases and tickets extensively for brokering, lending resources and for negotiated reservations / 2 phase commit. But they are structured differently. Parts of a proposal Structure Semantics Additional ticket related methods or changes to existing methodsT!?U!?U,D& QI1Change Set E: Ticket ViewpointsARob Ricci, ProtoGENI Andy Bavier, PlanetLab Ilia Baldine, Orca b  [C Discussion E- Status ReviewA: RSpec change will be included in AM API v2 B: Options and Return Structures Change C: UpdateSliver added D: No action on slivers and sliver groups E: Tickets: good discussion, much to do AM API v2 definition,Q o1! Future WorkCome to the Coding Sprint Friday 1pm to start working out details Error codes Update Sliver Specific Proposal on Tickets Finalize AM API v2 change sets Implement AM API v2 by GEC13? AMs and Clients New proposals for AM API v3 `BZBZ*/\]^_   0` 33` Sf3f` 33g` f` www3PP` ZXdbmo` \ғ3y`Ӣ` 3f3ff` 3f3FKf` hk]wwwfܹ` ff>>\`Y{ff` R>&- {p_/̴>?" dd@,|?" dd@   " @ ` n?" dd@   @@``PR    @ ` ` p>> f(    6ZM  `} M T Click to edit Master title style! !  0\M  ` M RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  0 dM ^ ` M >*  0pkM ^  M @*  0PmM ^ ` M @*H  0޽h ? 3380___PPT10. H Default Design8  0` 33` Sf3f` 33g` f` www3PP` ZXdbmo` \ғ3y`Ӣ` 3f3ff` 3f3FKf` hk]wwwfܹ` ff>>\`Y{ff` R>&- {p_/̴>?" dd@ 333|?" dd@  " @ ` n?" dd@   @@``PR    @ ` ` p>> 330 3(     ^A??PPPicture 13PP"  A ?? GENI-logo-finalPicture 3GENI-logo-final"0Pg   fT??Rectangle 4#"PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!ۄ~ drs/shapexml.xmlVn6;%[$c]q=4Ej(RhNKyh^6yBd;Ţ<oے Su!E3#& q3/ƨDdKRc5~7a]!,aհө銕>KU S)V3JSBs0%6R~\*Td %y( (9} _d܁{/@ !'+8w+F:S O:hy+Yk .6W婨h0EA]؀#CՈzǽ>DF7 èo; FRɓA!c( b%y '#qB OeũfP.,wyNSͷLY\ӵ*Rk'x^L2o4`DdrfUeLCYP%k3*VAY)ok*K"3 $[lYN)ԲHlV@*xAya$cq2$j^^'nߦ/FeB(SJtlhRp'1aѬGa/q#$f>DMTpeBECY~M{ M(5RM%Fha0g/ׂFEE}j |cֵ5grQn; |.0Z:sbGK*nP\X [ nF0 \Ŋڝ\xq~rYTRF)hǛenj茬;z.f24;һ*$]U3Yv3#G:Ϗ??|z៧O|6}W L"#C+f0Fm-_PK!"bdrs/downrev.xmlDOK1G!f[Qm"BuCes[E-jj~w;s0eЩZ q{3>/%yf:?U-sX6{S3PK-!2<>[Content_Types].xmlPK-!]  ,_rels/.relsPK-!ۄ~ (drs/shapexml.xmlPK-!"bdrs/downrev.xmlPK17[  x,Sponsored by the National Science Foundation--f    fA ?? nsf2Picture 15nsf2"-ZW   n, T??Rectangle 17"=7PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!f drs/shapexml.xmlVێ6}/ ͈6e+( 8A Z-RECRڵEY)sfcH ; +Q|;_nA^&8͝ ?=0sQ{P5#Ã)Q0{t\u }?:rMIDm;8f⤃S? 0EAx: O}SKr78$P PQ4p]H)N %ù8aUc.=Tbt\g'npDӯp'Nvbs'Nԇ,^rPȜ`& ,Se5' A>Pq77 Y3iP}eؽ Gʸn$a+ rzm:]av_,AfX,x޴uMu/tm% vj+ꍆd[p`mӐi$:*uJ ;VAee&.?u [qW-)IogN`(l:B̻VQXہ|5dk#EZf"ѿE nD3Ϩ.ӲpEzY,wm4\ z n'e@g.)u ?K,;ab#Y*%$֪f]-}d2^d݇d!VI βtT"3zcC*c4^nX1]lKC7-}.8 $)UeiTdd?MO:RM>2',IN Pmغ>KQ_t"Ķ߷wz⛾K5ُCĊص&6z6A1lZC 2ĎHPm;_7䅸Z%\o,_:(weֿ?V e(PK-!2<>[Content_Types].xmlPK-!]  ,_rels/.relsPK-!f (drs/shapexml.xmlPK-!N('drs/downrev.xmlPK,p T \(Click to edit Master title style- line 1) )   hP??Rectangle 18"kePK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!l drs/shapexml.xmlV]8}_;$NLP4[UM>pZc$鎪Ѥ</S]-Eû#& Ybo_s/ƨTKR|dpk,IJv]QvweR5Tíbj8 ~Ck-ʬO eIm/ Pcd^Av'0%`JE *!* cSbc8׷{,m+Y1?͝ wU!Kxn Vͭ^#8"#@!$a 4*`?&`Ah|cڪNdfT8JZti#syX\ Š^ @>Aݪ:$A1`HP4ψ7h4γlkIU%ԅ\B6>$W]0T>Pa1ԡuiH+Ҽ(] ]YHlV@*`6H|GYDAa2KIh0i3z 5:ijuAQIiB y%(0h4Ȑ,3oqe]؜}ꎯÆ/s#nY{[BG锵)a$Q)D?|s #%ZWˊ89j3p-u$3SY8P/=t:Cx84[fS2 (ydҬ19rZJ򒩜)jE_Gv $DzO'[ Wl3vч3v`a_J1+ kKÈ.`&0H 1Y]mI|T5ź_fl chY464P$mT`N/nVhja--߁CewF-]s~pqzZG38M*{mrBi9J- :/m$ID^e3Yͥo*PK!,Qdrs/downrev.xmlDN0DHQ'QTA[U\[ʡ%Qc;n=+pr=A\(;<Awi#7^-vt٧N0 J~$]1tR2Ȳ;~08ҫ?[>7sv[dn,J=̦ DSBWjD~ aL˲(PK-!2<>[Content_Types].xmlPK-!]  ,_rels/.relsPK-!l (drs/shapexml.xmlPK-!,QVdrs/downrev.xmlPKZ  T RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S   hT??Rectangle 10#" PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!h8Xdrs/shapexml.xmlVMo8/]dKdT)l-84EZS@Q}(vJ ߼7w5GL|}?^Q(ek&mcN on&AK&lRhxTF M4TǃT_+nVʬLJBU0 Ré{PAo>!c)P"| 9!l|2R@9m`a ^Pm%KU_eN(0z8J I :2a{(DQh) 0#1j&/ +Ȋ <,[m89a28"9r@ԕ%/uHpeqAJ;Ues꧋d^8// oCoqt3o/& A8VE9A*R_QY* @%(K0 $m6 =UN)%[P ?^>Nb/,Kc? c?LÛeTJCzp #[ Oԕf 9)t(lhRq>c 6[Content_Types].xmlPK-!]  ,_rels/.relsPK-!h8X(drs/shapexml.xmlPK-!vPdrs/downrev.xmlPK1  \*f     h\T??Rectangle 20#"PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!2a{ drs/shapexml.xmlVn6;%[$c]q=Dl(R(NKyh^6yBbQA!73MњILjLLܤ̋159RoiߟͻjXWzXxu5tlEKRɊ +*WuөDA%t}) Eu(T)` %zE3p)ڹ%pev[`+r:RJޭ(k Ĝֱvtk@w?FK 7*OEeE6)EQmؠ#C(ߏBcE7 èo;$ƲRʓQ!QzJZRGㄜ1Oũ9\Xn1mK񯉟Lizaw0B?ϽlzY/zEBW,ϩ8&=?eJֲg,;\,".WPZlg КpH,zv² HW^wo6#/,¾D~A2N~^͙ +t۴{zȰd*Y7?WF."I n|ĄAe&F؋~ {l&`MǓU|6gv2lHv`^d-VZF]Ao$%g{$EDD L+?1ZHB;MO8$W+2) J>,Y{<#f[6.nPt)Xf,qr ׮w]jZ?cBo]xͧ]= iP%Qs3BLl@|ax͜d BXvXݚ )Ȧ#-^Ӱij/=*sfvY xl1k[[u&[0;*GvXb~?piky dƕLN{MJ 5xS}\ 3atLgbGbP*B.[E G \Z*+RqvOr]*) ;p p%ZRy7ul_$ՠ夙tvl3mE b7+jj.ǿO?=/Eߕr1gxkF UX8PK!G|drs/downrev.xmlDN0DHuQ'K4!_T#ܖXz Zn0& ^͢?PK-!2<>[Content_Types].xmlPK-!]  ,_rels/.relsPK-!2a{ (drs/shapexml.xmlPK-!G|drs/downrev.xmlPK1H X ^November 2, 2011f  H  0޽h ? 33D<___PPT10..Ql  2_Default Design8  0` 33` Sf3f` 33g` f` www3PP` ZXdbmo` \ғ3y`Ӣ` 3f3ff` 3f3FKf` hk]wwwfܹ` ff>>\`Y{ff` R>&- {p_/̴>?" dd@ 333|?" dd@  " @ ` n?" dd@   @@``PR    @ ` ` p>> 33 $3(  $ $ ^A??PPPicture 21PP" $ A ?? GENI-logo-finalPicture 8GENI-logo-final"0Pg  $ fxU??Rectangle 9#"PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!Qr} drs/shapexml.xmlVn6;%[%c]q=4El(R(NKyh^6yBd;Ţ<oۂ U"³CT1qz~Jca.M~U%ֺ͢u:YWgr UtJE+*4pP; t ̄wfY^*#KXzQ=$p^Qn8Ei 0V _d ߁/` !k8wk 0u,|tGV\k N6Wũh |$8hRoЏdGtP?(}1T C (QYTpr8'q~*G.N5sraspПj`ₘ֊ޯIYQw0 |y8_.Ӌ70YQqLz}V#JV2gD-Fh)0h*Krs-m: m0,' K$6+ E_yv`M Qd~&dDIt1Ղ ^KݾMۯ_p BJtlh̸0xQ/~Ϗz4'|ꏧ`0M٫lɰ!i [;⵺Єi)3ߋ$1/ 0A'5.d3i麖5v4Ķ2h$d8Pm8 V ݠᓙQnDf; [ia,UZ56 Kau!6!{T3 &*F@!&m@|Atd_%XQiSuk#ʥc+\QqYkfœ<˒8%.}1A5&4kkJIvy׬jh_[K^9WFV6؇g2 x V_Y==&Rm>EBFFVhapaz [Content_Types].xmlPK-!]  ,_rels/.relsPK-!Qr} (drs/shapexml.xmlPK-! ӊdrs/downrev.xmlPK19  x,Sponsored by the National Science Foundation--f    $ hd`??Rectangle 10#" PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!h8Xdrs/shapexml.xmlVMo8/]dKdT)l-84EZS@Q}(vJ ߼7w5GL|}?^Q(ek&mcN on&AK&lRhxTF M4TǃT_+nVʬLJBU0 Ré{PAo>!c)P"| 9!l|2R@9m`a ^Pm%KU_eN(0z8J I :2a{(DQh) 0#1j&/ +Ȋ <,[m89a28"9r@ԕ%/uHpeqAJ;Ues꧋d^8// oCoqt3o/& A8VE9A*R_QY* @%(K0 $m6 =UN)%[P ?^>Nb/,Kc? c?LÛeTJCzp #[ Oԕf 9)t(lhRq>c 6[Content_Types].xmlPK-!]  ,_rels/.relsPK-!h8X(drs/shapexml.xmlPK-!vPdrs/downrev.xmlPK1  \*f  W  $ nk??Rectangle 17"=7PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!f drs/shapexml.xmlVێ6}/ ͈6e+( 8A Z-RECRڵEY)sfcH ; +Q|;_nA^&8͝ ?=0sQ{P5#Ã)Q0{t\u }?:rMIDm;8f⤃S? 0EAx: O}SKr78$P PQ4p]H)N %ù8aUc.=Tbt\g'npDӯp'Nvbs'Nԇ,^rPȜ`& ,Se5' A>Pq77 Y3iP}eؽ Gʸn$a+ rzm:]av_,AfX,x޴uMu/tm% vj+ꍆd[p`mӐi$:*uJ ;VAee&.?u [qW-)IogN`(l:B̻VQXہ|5dk#EZf"ѿE nD3Ϩ.ӲpEzY,wm4\ z n'e@g.)u ?K,;ab#Y*%$֪f]-}d2^d݇d!VI βtT"3zcC*c4^nX1]lKC7-}.8 $)UeiTdd?MO:RM>2',IN Pmغ>KQ_t"Ķ߷wz⛾K5ُCĊص&6z6A1lZC 2ĎHPm;_7䅸Z%\o,_:(weֿ?V e(PK-!2<>[Content_Types].xmlPK-!]  ,_rels/.relsPK-!f (drs/shapexml.xmlPK-!N('drs/downrev.xmlPK,p  \(Click to edit Master title style- line 1) )  $ h(m??Rectangle 18"kePK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!l drs/shapexml.xmlV]8}_;$NLP4[UM>pZc$鎪Ѥ</S]-Eû#& Ybo_s/ƨTKR|dpk,IJv]QvweR5Tíbj8 ~Ck-ʬO eIm/ Pcd^Av'0%`JE *!* cSbc8׷{,m+Y1?͝ wU!Kxn Vͭ^#8"#@!$a 4*`?&`Ah|cڪNdfT8JZti#syX\ Š^ @>Aݪ:$A1`HP4ψ7h4γlkIU%ԅ\B6>$W]0T>Pa1ԡuiH+Ҽ(] ]YHlV@*`6H|GYDAa2KIh0i3z 5:ijuAQIiB y%(0h4Ȑ,3oqe]؜}ꎯÆ/s#nY{[BG锵)a$Q)D?|s #%ZWˊ89j3p-u$3SY8P/=t:Cx84[fS2 (ydҬ19rZJ򒩜)jE_Gv $DzO'[ Wl3vч3v`a_J1+ kKÈ.`&0H 1Y]mI|T5ź_fl chY464P$mT`N/nVhja--߁CewF-]s~pqzZG38M*{mrBi9J- :/m$ID^e3Yͥo*PK!,Qdrs/downrev.xmlDN0DHQ'QTA[U\[ʡ%Qc;n=+pr=A\(;<Awi#7^-vt٧N0 J~$]1tR2Ȳ;~08ҫ?[>7sv[dn,J=̦ DSBWjD~ aL˲(PK-!2<>[Content_Types].xmlPK-!]  ,_rels/.relsPK-!l (drs/shapexml.xmlPK-!,QVdrs/downrev.xmlPKZ   RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  $ h4q??Rectangle 20#"PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!2a{ drs/shapexml.xmlVn6;%[$c]q=Dl(R(NKyh^6yBbQA!73MњILjLLܤ̋159RoiߟͻjXWzXxu5tlEKRɊ +*WuөDA%t}) Eu(T)` %zE3p)ڹ%pev[`+r:RJޭ(k Ĝֱvtk@w?FK 7*OEeE6)EQmؠ#C(ߏBcE7 èo;$ƲRʓQ!QzJZRGㄜ1Oũ9\Xn1mK񯉟Lizaw0B?ϽlzY/zEBW,ϩ8&=?eJֲg,;\,".WPZlg КpH,zv² HW^wo6#/,¾D~A2N~^͙ +t۴{zȰd*Y7?WF."I n|ĄAe&F؋~ {l&`MǓU|6gv2lHv`^d-VZF]Ao$%g{$EDD L+?1ZHB;MO8$W+2) J>,Y{<#f[6.nPt)Xf,qr ׮w]jZ?cBo]xͧ]= iP%Qs3BLl@|ax͜d BXvXݚ )Ȧ#-^Ӱij/=*sfvY xl1k[[u&[0;*GvXb~?piky dƕLN{MJ 5xS}\ 3atLgbGbP*B.[E G \Z*+RqvOr]*) ;p p%ZRy7ul_$ՠ夙tvl3mE b7+jj.ǿO?=/Eߕr1gxkF UX8PK!G|drs/downrev.xmlDN0DHuQ'K4!_T#ܖXz Zn0& ^͢?PK-!2<>[Content_Types].xmlPK-!]  ,_rels/.relsPK-!2a{ (drs/shapexml.xmlPK-!G|drs/downrev.xmlPK1H X ^November 2, 2011f    $ fA ?? nsf2Picture 22nsf2"-ZH $ 0޽h ? 33D<___PPT10..Ql  1_Default Design8  0` 33` Sf3f` 33g` f` www3PP` ZXdbmo` \ғ3y`Ӣ` 3f3ff` 3f3FKf` hk]wwwfܹ` ff>>\`Y{ff` R>&- {p_/̴>?" dd@ 333|?" dd@  " @ ` n?" dd@   @@``PR    @ ` ` p>> 33  3(    ^A??PPPicture 13PP"  A ?? GENI-logo-finalPicture 3GENI-logo-final"0Pg   f??Rectangle 4#"PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!ۄ~ drs/shapexml.xmlVn6;%[$c]q=4Ej(RhNKyh^6yBd;Ţ<oے Su!E3#& q3/ƨDdKRc5~7a]!,aհө銕>KU S)V3JSBs0%6R~\*Td %y( (9} _d܁{/@ !'+8w+F:S O:hy+Yk .6W婨h0EA]؀#CՈzǽ>DF7 èo; FRɓA!c( b%y '#qB OeũfP.,wyNSͷLY\ӵ*Rk'x^L2o4`DdrfUeLCYP%k3*VAY)ok*K"3 $[lYN)ԲHlV@*xAya$cq2$j^^'nߦ/FeB(SJtlhRp'1aѬGa/q#$f>DMTpeBECY~M{ M(5RM%Fha0g/ׂFEE}j |cֵ5grQn; |.0Z:sbGK*nP\X [ nF0 \Ŋڝ\xq~rYTRF)hǛenj茬;z.f24;һ*$]U3Yv3#G:Ϗ??|z៧O|6}W L"#C+f0Fm-_PK!"bdrs/downrev.xmlDOK1G!f[Qm"BuCes[E-jj~w;s0eЩZ q{3>/%yf:?U-sX6{S3PK-!2<>[Content_Types].xmlPK-!]  ,_rels/.relsPK-!ۄ~ (drs/shapexml.xmlPK-!"bdrs/downrev.xmlPK17[  x,Sponsored by the National Science Foundation--f    fA ?? nsf2Picture 15nsf2"-ZW   nX??Rectangle 17"=7PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!f drs/shapexml.xmlVێ6}/ ͈6e+( 8A Z-RECRڵEY)sfcH ; +Q|;_nA^&8͝ ?=0sQ{P5#Ã)Q0{t\u }?:rMIDm;8f⤃S? 0EAx: O}SKr78$P PQ4p]H)N %ù8aUc.=Tbt\g'npDӯp'Nvbs'Nԇ,^rPȜ`& ,Se5' A>Pq77 Y3iP}eؽ Gʸn$a+ rzm:]av_,AfX,x޴uMu/tm% vj+ꍆd[p`mӐi$:*uJ ;VAee&.?u [qW-)IogN`(l:B̻VQXہ|5dk#EZf"ѿE nD3Ϩ.ӲpEzY,wm4\ z n'e@g.)u ?K,;ab#Y*%$֪f]-}d2^d݇d!VI βtT"3zcC*c4^nX1]lKC7-}.8 $)UeiTdd?MO:RM>2',IN Pmغ>KQ_t"Ķ߷wz⛾K5ُCĊص&6z6A1lZC 2ĎHPm;_7䅸Z%\o,_:(weֿ?V e(PK-!2<>[Content_Types].xmlPK-!]  ,_rels/.relsPK-!f (drs/shapexml.xmlPK-!N('drs/downrev.xmlPK,p  \(Click to edit Master title style- line 1) )   h??Rectangle 18"kePK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!l drs/shapexml.xmlV]8}_;$NLP4[UM>pZc$鎪Ѥ</S]-Eû#& Ybo_s/ƨTKR|dpk,IJv]QvweR5Tíbj8 ~Ck-ʬO eIm/ Pcd^Av'0%`JE *!* cSbc8׷{,m+Y1?͝ wU!Kxn Vͭ^#8"#@!$a 4*`?&`Ah|cڪNdfT8JZti#syX\ Š^ @>Aݪ:$A1`HP4ψ7h4γlkIU%ԅ\B6>$W]0T>Pa1ԡuiH+Ҽ(] ]YHlV@*`6H|GYDAa2KIh0i3z 5:ijuAQIiB y%(0h4Ȑ,3oqe]؜}ꎯÆ/s#nY{[BG锵)a$Q)D?|s #%ZWˊ89j3p-u$3SY8P/=t:Cx84[fS2 (ydҬ19rZJ򒩜)jE_Gv $DzO'[ Wl3vч3v`a_J1+ kKÈ.`&0H 1Y]mI|T5ź_fl chY464P$mT`N/nVhja--߁CewF-]s~pqzZG38M*{mrBi9J- :/m$ID^e3Yͥo*PK!,Qdrs/downrev.xmlDN0DHQ'QTA[U\[ʡ%Qc;n=+pr=A\(;<Awi#7^-vt٧N0 J~$]1tR2Ȳ;~08ҫ?[>7sv[dn,J=̦ DSBWjD~ aL˲(PK-!2<>[Content_Types].xmlPK-!]  ,_rels/.relsPK-!l (drs/shapexml.xmlPK-!,QVdrs/downrev.xmlPKZ   RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S   h??Rectangle 20#"PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!2a{ drs/shapexml.xmlVn6;%[$c]q=Dl(R(NKyh^6yBbQA!73MњILjLLܤ̋159RoiߟͻjXWzXxu5tlEKRɊ +*WuөDA%t}) Eu(T)` %zE3p)ڹ%pev[`+r:RJޭ(k Ĝֱvtk@w?FK 7*OEeE6)EQmؠ#C(ߏBcE7 èo;$ƲRʓQ!QzJZRGㄜ1Oũ9\Xn1mK񯉟Lizaw0B?ϽlzY/zEBW,ϩ8&=?eJֲg,;\,".WPZlg КpH,zv² HW^wo6#/,¾D~A2N~^͙ +t۴{zȰd*Y7?WF."I n|ĄAe&F؋~ {l&`MǓU|6gv2lHv`^d-VZF]Ao$%g{$EDD L+?1ZHB;MO8$W+2) J>,Y{<#f[6.nPt)Xf,qr ׮w]jZ?cBo]xͧ]= iP%Qs3BLl@|ax͜d BXvXݚ )Ȧ#-^Ӱij/=*sfvY xl1k[[u&[0;*GvXb~?piky dƕLN{MJ 5xS}\ 3atLgbGbP*B.[E G \Z*+RqvOr]*) ;p p%ZRy7ul_$ՠ夙tvl3mE b7+jj.ǿO?=/Eߕr1gxkF UX8PK!G|drs/downrev.xmlDN0DHuQ'K4!_T#ܖXz Zn0& ^͢?PK-!2<>[Content_Types].xmlPK-!]  ,_rels/.relsPK-!2a{ (drs/shapexml.xmlPK-!G|drs/downrev.xmlPK1H X ^November 2, 2011f     h<??Rectangle 10#" PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!h8Xdrs/shapexml.xmlVMo8/]dKdT)l-84EZS@Q}(vJ ߼7w5GL|}?^Q(ek&mcN on&AK&lRhxTF M4TǃT_+nVʬLJBU0 Ré{PAo>!c)P"| 9!l|2R@9m`a ^Pm%KU_eN(0z8J I :2a{(DQh) 0#1j&/ +Ȋ <,[m89a28"9r@ԕ%/uHpeqAJ;Ues꧋d^8// oCoqt3o/& A8VE9A*R_QY* @%(K0 $m6 =UN)%[P ?^>Nb/,Kc? c?LÛeTJCzp #[ Oԕf 9)t(lhRq>c 6[Content_Types].xmlPK-!]  ,_rels/.relsPK-!h8X(drs/shapexml.xmlPK-!vPdrs/downrev.xmlPK1  \*f  H  0޽h ? 33D<___PPT10..Ql  3_Default Design 0 zrP (    0pT P%  T P*    0T  % T R*  d  c $ ?(K  T  0 T  0) T RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  6ȝT P  T P*    6T   T R*  H  0޽h ? 3380___PPT10.n2b 8(    0 P%   >*   0'  %  @*   6* P   >*   6/    @* H  0޽h ? 3380___PPT10.**^ 0 um@(  7    ~t(T0e0e ?Rectangle 2"PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!P_ drs/shapexml.xmlVn7;'e-,ChvV\rKRz_e9Ө7Hɀ7VBta=굱0;.GZH85Y\ֈOuYizWMem"S1o;zJڌe$" I ;ԆPIf҆q EP0$yY&ͧ5mչYrsYZU1Z8>2,=I؆NMvq.}n=ջH6:_Oo P .QkJԲ$~պ,Js)E.wS I"/6lE+\g)VJOJ7@?[~:vV[aP{=d/ )cR,22,bjEF-|jE졛sL=3뱪[sj;A9xf HkIƊPiaA>>~wPj?:jjn5߿EAFɾᢈ^kilFRPho†&|Ψ MFg;m_c'<_ϔ}*CE PK!drs/downrev.xmlDQK0߅pK".e(S]sה5IIbp[Fӱ|h0N߽ρVa,IPrr\-ibĆ%Pk2f'c9M3!֦=5էHv#wEJ)oc,I_zW24π7oU!m2PK-!2<>[Content_Types].xmlPK-!]  ,_rels/.relsPK-!P_ (drs/shapexml.xmlPK-!drs/downrev.xmlPK@'  T j&Aggregate Manager API Proposed Updates(' &""    ~3T0e0e ?Rectangle 3"PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!'&drs/shapexml.xmlXQo9~?S @P*ᔻP=F]/lC K y8UkQi{yƆZ2:ﺜIҋߟ]sЅPF˔Gr ]0XaͰqR½3Е£iJ' ժtZT0̚%)L-'gZXQpb$.cbk_La3"4z {5z] c֔{΢8hQnY!Xۿmll) f<~hD9?;lo$pϧ6~ja'!lAP*] (o9+d9ŝZmi C2)dnBu#Š&\Os6XX ?koKv6[ozIG(iċ,r-@qj[)0j]W"K}a YЊ&k,AV+mfAl%-Ї}Nۿ͉.MeSU/$UE7֘2Ee=c%ES8B+EmݏQyREir<=t,!OǬbTR_ϕ#bGu ^N:N3zejvWd@|DaakFPK!z drs/downrev.xmlDN1E&CLI 1Dðc)NI[`m\ޜ3[ cgA;+q$Ҷ+W`!U9K`1atƆ% 9JhcsCݒ0r=7S W/ n: jZ齥k{2:wQ~PORm ,uUW/SId 찾VH^BKPK-!2<>[Content_Types].xmlPK-!]  ,_rels/.relsPK-!'&(drs/shapexml.xmlPK-!z drs/downrev.xmlPK @ T /Aaron Helsinger November 2, 2011 www.geni.net @0( "MMM MMM)))"  H  0޽h ? 33___PPT10i.X n+D=' = @B +$  0 @$(  r  S T p  T r  S T   T H  0޽h ? 3380___PPT10.hֱh$  0 $(  r  S < p   r  S     H  0޽h ? 3380___PPT10.0?$  0 @$(  @r @ S T( p   r @ S  )    H @ 0޽h ? 3380___PPT10.n`x$  0 $$(  $r $ S < p   r $ S =    H $ 0޽h ? 3380___PPT10.lΌ  0 nfD(  Dr D S PJ p   r D S K     D 6(MjJC"?p@   LDiscussion focus for today 2H D 0޽h ? 3380___PPT10.p%$  0 $(  r  S DO p   r  S M    H  0޽h ? 3380___PPT10.0?l,$  0 0P$(  Pr P S  [ p   r P S [    H P 0޽h ? 3380___PPT10.w0-$  0 PX$(  Xr X S { p   r X S |    H X 0޽h ? 3380___PPT10.w঄$  0 @T$(  Tr T S , p   r T S (    H T 0޽h ? 3380___PPT10.w +0  0 ,$`\(  \r \ S X p   r \ S 8     \ 0\ 0methodOptions: { GetVersion: { verbose: { type=boolean, description= True means supply gory detail on AM internals and versions." }, myOtherNewOption:..... }, ListResources.... }  j+  j  +Z  $f  H \ 0޽h ? 3380___PPT10.x*$  0 p`$(  `r ` S  p   r ` S     H ` 0޽h ? 3380___PPT10.xdTi$  0 d$(  dr d S  p   r d S     H d 0޽h ? 3380___PPT10.x $  0 h$(  hr h S  p   r h S 4O    H h 0޽h ? 3380___PPT10.x  0 RJx(  xr x S  p   r x S   0   x 0O0 V{ code: 0 value: { geni_urn: geni_status: ready geni_resources: [ { geni_urn: geni_status: ready geni_error: ''}, { geni_urn: geni_status: ready geni_error: ''} ] } output: }           "H x 0޽h ? 3380___PPT10.y H:  0 |:(  |r | S  p   r | S      | 0|  = @{ code: 1 value: False output: 'No such slice here' } R;;H | 0޽h ? 3380___PPT10.y)$  0 l$(  lr l S   p   r l S pO   O H l 0޽h ? 3380___PPT10.x0$  0 p$(  pr p S 87 p   r p S 8    H p 0޽h ? 3380___PPT10.y Q$  0 t$(  tr t S P p   r t S Q    H t 0޽h ? 3380___PPT10.y~"$  0 ,$(  ,r , S Tj p   r , S  k    H , 0޽h ? 3380___PPT10.lᔢ$  0 4$(  4r 4 S { p   r 4 S |    H 4 0޽h ? 3380___PPT10.l0S  0 (  r  S  p   r  S l      0Bap ,Note: rspec is in the GENI v3 request schema&- 2""H  0޽h ? 3380___PPT10.}yx$  0 $(  r  S h p   r  S H    H  0޽h ? 3380___PPT10.~*"  0 D<(  r  S < p   r  S       0DBP  HWe must discuss!(2H  0޽h ? 3380___PPT10.}P$  0 H$(  Hr H S  p   r H S     H H 0޽h ? 3380___PPT10.qM&$  0 0$(  0r 0 S dP p   r 0 S eP   P H 0 0޽h ? 3380___PPT10.l0"$  0  $(  r  S  p   r  S     H  0޽h ? 3380___PPT10.($  0 $(  r  S | p   r  S     H  0޽h ? 3380___PPT10.ٗ $$  0 8$(  8r 8 S 4 p   r 8 S     H 8 0޽h ? 3380___PPT10.lњ$  0 0$(  r  S d  p   r  S D     H  0޽h ? 3380___PPT10._>$  0  L$(  Lr L S  p   r L S     H L 0޽h ? 3380___PPT10.rp  0 @(  r  S P p   H  0޽h ? 3380___PPT10.[h$  0 <$(  <r < S HP p   r < S P   P H < 0޽h ? 3380___PPT10.l0;  0  (  x  0C"?` @r  S t" p   r  S T#    H  0޽h ? 3380___PPT10.:? 0 um`(    # TT_T_??Rectangle 7" PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!4Cdrs/shapexml.xmlVn6;J+JZDOim`xXPUM*Ek$S@ :Cik(R@/A&Coۊ[L51q9b"y)b4Cb5r)XLXC^}zlͤFz24نUy&k&`lP+0*>:xPR#8J\cű<&3ά z4v&f%DR%y%Kpo^6UJ^n b^4/Q怟ZBUOŇʢo/{QI:p!::a[mehxCw8"VN Z֪/|2* HOŪH NȤ|+zԎV1y92\Kwܞ&s'n0Zx|C\)Cw\3Ued# ,VflЫ2uv8d҈͹.(edN';H {^Cߙ #;Ȏ'7EcǏEr׫U)؎{e]$G>Tfev7&RF0fbB;F{̱ga2sw<ly/ˢIǓaBbDz_Z)o  NZyNDdt[Aδ"M7 8X}Iφ]2zC;%~} !OG=L1$#Yʆv8=#wPfj4csNzҗPE]]&u^dRJ7CŒ-[G~H?뮓=m@ m&֥A_ZG>W? 0Q+ḣ.DE$ fJJMJl nPUY믤I'u5h@Bx )1{"~ϛ|p7e*agM_}kj ij裟P3< ȏE_%t?ム~7PK!tdSdrs/downrev.xmlDMK1E!<؅c"Zq#uf:y8M./r.gnh=+U [- 1!k<3EX-//XkMMEpQIi!qGu>8L%^ꀧwW՝th<im=6NA3-Ozq{D9lwx\WD=;VL%PK-!2<>[Content_Types].xmlPK-!]  ,_rels/.relsPK-!4C(drs/shapexml.xmlPK-!tdSdrs/downrev.xmlPK  b*b 77Rm   `?Rectangle 2"PK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!drs/shapexml.xmlJ@atLKFfZݝ)(^gtۢ5OGcH[.C9 L,;\<8F&M."5uhȷ^CDH+BCkJ%oUhB44CIBq1R8| J p0c/=IIqꋫAoj(b.C:nװHQPՕ;1>!\ u-5Tb/-GZe:YOf d^jzfe}~5)XU/I0JođZͦHEkKa[PA2'g$6PK!љjdrs/downrev.xmlDJ@ﰌEKݖ"U8ٝ&ݰMӷwǙoV{5RL]y\_%;'WJYެrw4sSڜJd[bL01D,clx8,f|hqזifK^l[GMPk8e$k;Ô)/PK-!2<>[Content_Types].xmlPK-!]  ,_rels/.relsPK-!(drs/shapexml.xmlPK-!љjdrs/downrev.xmlPK(K   T`   ~TT_T_?Rectangle 3"rlPK!2<>[Content_Types].xmlAN0EH%,BM #{X$ccB{{&m TҞy?٫vՌ}Z_VH68O}6ōV;dnV]DVBz9v I&]Hd9DУkce\%C7;Dp{KU!["jK8 p&î8By/ O4;Tϐ#La\bDR7q[,į W pov+ fCPK!]  _rels/.relsj1 @h_B֐BWaLΖ5yB/dˠA 0xM e`J FG2p%}iRdITD10Z)4(I9`mtB{ƁmtπnTg 險,ܗr>j1W*@ŀӚZ7O#KOiPK!df6drs/shapexml.xmlTn0 ;OPHtAbgZ/Ir>ϰK&W%;]5>?R<=[,1v(ᒩ^O/Rb ?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Root EntrydO)PicturesNCurrent UserSummaryInformation(PowerPoint Document(EDocumentSummaryInformation8