ࡱ> F;{@fg%JFIF,,&Photoshop 3.08BIM Print InfoxHH(FG(HH(d'`8BIM Resolution,,8BIM FX Global Lighting Angle8BIMFX Global Altitude8BIM Print Flags 8BIM Copyright Flag8BIM'Japanese Print Flags 8BIMColor Halftone SettingsH/fflff/ff2Z5-8BIMColor Transfer Settingsp8BIMGuides@@8BIM URL overrides8BIMSlicesw% text_banner %8BIMLayer ID Generator Base8BIM New Windows Thumbnailp P JFIFHHAdobed             p"?   3!1AQa"q2B#$Rb34rC%Scs5&DTdE£t6UeuF'Vfv7GWgw5!1AQaq"2B#R3$brCScs4%&5DTdEU6teuFVfv'7GWgw ?籆39my\6~V沟qt/5̷ׇ+2h,wz{vd7Jrg,Yߣ_N.:x?ûu.T&ã ,3?1Vё_ջYq"ڤovz_) }xσ$I%)$IJI$RBdS8BIM!Version compatibility infoUAdobe PhotoshopAdobe Photoshop 6.08BIM JPEG Quality XICC_PROFILE HLinomntrRGB XYZ  1acspMSFTIEC sRGB-HP cprtP3desclwtptbkptrXYZgXYZ,bXYZ@dmndTpdmddvuedLview$lumimeas $tech0 rTRC< gTRC< bTRC< textCopyright (c) 1998 Hewlett-Packard CompanydescsRGB IEC61966-2.1sRGB IEC61966-2.1XYZ QXYZ XYZ o8XYZ bXYZ $descIEC http://www.iec.chIEC http://www.iec.chdesc.IEC 61966-2.1 Default RGB colour space - sRGB.IEC 61966-2.1 Default RGB colour space - sRGBdesc,Reference Viewing Condition in IEC61966-2.1,Reference Viewing Condition in IEC61966-2.1view_. \XYZ L VPWmeassig CRT curv #(-27;@EJOTY^chmrw| %+28>ELRY`gnu| &/8AKT]gqz !-8COZfr~ -;HUcq~ +:IXgw'7HYj{+=Oat 2FZn  % : O d y  ' = T j " 9 Q i  * C \ u & @ Z t .Id %A^z &Ca~1Om&Ed#Cc'Ij4Vx&IlAe@e Ek*Qw;c*R{Gp@j>i  A l !!H!u!!!"'"U"""# #8#f###$$M$|$$% %8%h%%%&'&W&&&''I'z''( (?(q(())8)k))**5*h**++6+i++,,9,n,,- -A-v--..L.../$/Z///050l0011J1112*2c223 3F3334+4e4455M555676r667$7`7788P8899B999:6:t::;-;k;;<' >`>>?!?a??@#@d@@A)AjAAB0BrBBC:C}CDDGDDEEUEEF"FgFFG5G{GHHKHHIIcIIJ7J}JK KSKKL*LrLMMJMMN%NnNOOIOOP'PqPQQPQQR1R|RSS_SSTBTTU(UuUVV\VVWDWWX/X}XYYiYZZVZZ[E[[\5\\]']x]^^l^__a_``W``aOaabIbbcCccd@dde=eef=ffg=ggh?hhiCiijHjjkOkklWlmm`mnnknooxop+ppq:qqrKrss]sttptu(uuv>vvwVwxxnxy*yyzFz{{c{|!||}A}~~b~#G k͂0WGrׇ;iΉ3dʋ0cʍ1fΏ6n֑?zM _ɖ4 uL$h՛BdҞ@iءG&vVǥ8nRĩ7u\ЭD-u`ֲK³8%yhYѹJº;.! zpg_XQKFAǿ=ȼ:ɹ8ʷ6˶5̵5͵6ζ7ϸ9к<Ѿ?DINU\dlvۀ܊ݖޢ)߯6DScs 2F[p(@Xr4Pm8Ww)KmAdobed        ""   %   s!1AQa"q2B#R3b$r%C4Scs5D'6Tdt& EFVU(eufv7GWgw8HXhx)9IYiy*:JZjzm!1AQa"q2#BRbr3$4CS%cs5DT &6E'dtU7()󄔤euFVfvGWgw8HXhx9IYiy*:JZjz ?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]/#POBQ!;+&cKy(*UثWbS_,yj̷ɥy*G#@LY1[qb9[O.vM/PPӕ AOqCAqeqen]v*UC{{)M ??"d6B$SthأlA0[]eߖwx |BMo1uYicCdYE5@G$qr  YR1)6\UثWb]\\)x"yzRi2!y)IFhhSVږ 2 PxlD#d1(,W?%朏x2 s^0c$&"a\b]m˫2A UI"d6B$RX2mxE8zb]v*1VW=cʖjh nDs|&ũSQf]Xe8]v*U@늯60X\iRkR6PiA$sQ…A$Ƒ)r;('`&td4pTC )܇+NtٟVH\D1|&b>1_W'}'҈)o?/=ՙO,͛v*Uث)eON?s:s=F,W]#x[&ٹyrx&oWb]v*.,dZJ:21SFQزw Dl(F!\ -#SB\s~=Wм~K#,m7mĬMD'Uei ?,iQhio] Q#c:柔;,.'Hn n.lG%3&:lKUzyG[䜟Fd]d)X U'#`:,F/]ӵs~  Ɣ%cɌ>҉+׿.<Q3UzGŲj'E&-k67+R?l6_~ vqG0ASB(GPsnQZvwJ'H%6*r2vQ?/>V;4*\9 :W`~̉kV}5~>} Nwq]<ȖSnk hфՍIQ>l4YȘ^] ,w:Gv*UثV_O-V(֓X?fUÁ?zL^$˷vh+2b|I9.O`&gZ]v*U䇐lޡo7dY1U? J97L-8>R/'ٚNŨμհճӐ_˒_ջL5p?_7ձw#,j':<;,(UA5r/FBAJ i#:п::yjٸ@[G).^?_m ϰM>nFȌo~%6feqXf-XR9˾_73t~LGbfr(4^m*2;89 wz)b8f(GΗ&rPC5ԏ,;?{fh HrCWbE֮VN~IU)34xn|''_B"Bi%oÇ,fvg{@Y)_bZ?AsH/RfqdϾeǃmVO[^FT_W3#ٲC.ӏ@R9HMfY5*y}ޑ930MB{jE:pFgٲt;N'1zW?SJp:|keqO4Cs+C|C;DjWZ|{)dAѣb\%e0iԎ!ReS7W KhN<}gKjtdRUfZhKIw'7,iOY۟I4^,ͷt~O9U6ȱD0P?vt2N1_Z@ls1v*Uت󥭪4QT{ ",Lԟ?V>ZE֡0BPO5czHA'V8#D sOW, 3y>h`_>w]hU= r-$1J_ΓͬOaDsWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*һ{ƹ_6 yۼ+Wb]v*UثWb]v*UثWb]Nk4@Z2(e91nÐ혥YQdCU`> =6Ͽ/ʗҠl|26ǰǏ75ϭʵ=4'Oc;r2k;<ޓq^#.9'S/K|^MثWb|gm^5ol>O&M1x})kC v`3& I|.u59MOgM-ÓÐN|~$L_M *lFvƑ[,‡b]v*Uث/ŹԢ>bA拴;K^Wv_RKb tݏsj>'N#T-Ռj۹&Z+Ԣ^Ġ2'.'4ܿ/3<E~_Ec"yxGNgK=>}Kcһv* {G^եć/88rz|9y8k- -fTdaÉh6!Eɣ\iyo#F؞5s#d=96]} 8F]|S3JRO#|ŪuB<ƿSa͓đzQv*U󌓔.Ι!v}gsz72aa a3}كcy;sijr]v*<8_`($ƿQ0,0$y Mut/\gSgX0Gyĭ$?dJtIU_6K)u:7K$c$$ԓsr:2mnv*U;_ƭoCSƣ2'ҙNl~$L[e8$3;'=ͳgBC)5xEt.UثW+%Q3!zN>g>?bl ~(3vG[aYv*mm-ԫ dBUEI'MnR&OHuʻ)ubz?=>I ?_RF>eW+bq]tVbo?/MVV{kMYsDE͔&MWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*U0wrlyۼ+Wb]v*UثWb]v*UثWb]v*oi3 Ql52]njY}wIk0r#Ëf$MT/u*M"Nџ~&e;8KY!HAd;v*ο% xQ>ak2@Khx}Ozb?5ݢ0zxpFs 5x9s-v*Uث,k M8'.rs>??"zS'/u'M'0|ll?z/|Fb2b8^U82:ǐv*U>`#ܿ+4w{h/~PAH OiPh99uN]AH9H@I>M0GvR7'fH˽#ܜeM ϩ& O-ؿ5gɹΓX5o]Wb^8V^~??N+ͳKYh3/4~YFi=zCǀ??=.9 {|]ثWb^8yǍē5;7_O6Ϝ(~^ݏߤ{>xn3Wb#Jq;E'5[!9 ,3A/|lJhIM'1+?v0/lWCn7wLC_<`'N#Wb& 1WTP=24 gdYŽ ʺx1r^78zV2:Ǒv*UT,VOݟU.r82#9'yGIytޠ2 ?7 v~Nghc1t0Uث kIu ofv/+e;g~~67V"I?ۄfE&?;mv r#SU)Y03 s! ˩=JnFBMH''!&1|O,Mr.6R(v*U_凖~_aIz9rx%48|`rS/yAS sz^mZUثWbSp`u|~xN_dqv*UتWDcb׋WҸJxPUثW??G_q:3AP=f}'ӻ/:>u_ǹ5Kij)GzwFe(Ys[134TZ~VXLV]Av ?i"#߷_˜֧TsO^MEk׾+orH??c[ &SJuz3sr]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v**vWiDr嘺|p!d ?_!.YJoO6}uW8|#̻G4e,cڧvbWbl9:o|I: ,kTp?ٿN9_/]9 0rjW]s/ߝyθDUtx#vK~cO1t`|2/ l~^O"JlcsK6P|71OB]ˏ&=.m䶕q6* a7őFث޽(Lfr1s䷙5$R@?>ܱ?岵5Զ:v*UثٿBՠ⯲y'39<#fqtLy[rݿ5< ğ*\xo 5pJܮ,Oܷg1;9x_hRdhV;ӞE*ǖZ֔{|q7DIsbe]v*UثΩ٣?;73H_~kSC~ny _)v*U_꺔z<'(<|V/W5Z@x/.A2csHr7ϱʞZnIztO/˓3}+z/?:Ssr]p$銾5RZXI~||!d)GYa?sѷɇ  |;Ie8;FOe,ھ簨x>?&7,/侽՚+!Ჳ#0<ў\0'0݊v*UثWb]v*qqԵNh{Oz^ߚgt2OS̺uJ9i^;UAyWwh];L1Q{+k˔c&)_4˝1wPy\]IAZv"1ğ9٥F!q}7K- fX??]ΗF1tiٲun]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*HlqWBƿU]~ ?ճϏd= pL5&=cOӦK3Rrs=C$9ճIaRiK 8_-c_J2ߎ>2?ԋNfrsVLLv^aS˛\qs[{O/(It/}eMRb |2 4}wݙ3H*~yc71Ho<8_hb?\غNsiI0s75f!pû0oqΟ?"=+'#$.iz_Bm%j[߯|9[ 5\p;.:7Y̽C&|;o0»&#Pe.n7/8GxՓ3z]v*UثW-}So3Gw{of޼ ߐ:λ۬WPŪj&o0}.>S#t?uhVxi)CM?ɓgc8riAw'&ɕ˴@=K2ǗtY=KzJ@O6|/C~uO-&I @?e#\Œ% d1xOy\2k4#fOҺmGhLv,jIܒ{:2m*UثWџ`Ɲu&Aç>h;KHKCٙ.&?{Ni?/~,),o':re>':oCKwٰuϓ|ctb; o()͓Ésv ~$_X~by?(yv{(bvfTScOŘzFO $RzkdzO4ϻ*UثW<<{7!wzw _3(%&t3_ٺbOUD1uRO@.J#F>rl5e@SԌ OCK ͔8W4(Y 9742H~܍+S9٥zL8#Pc>AnN七_fWkdhR6BXhR) "aWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]WMyۼ+Wb]v*UثWb]v*UثWb]v*Ug/>]h~+i?ɓ ic 93%iC|gd U|498^S]!{'i.k= ӓscrZ,ՋiPZOW.u c"x2HȞeo-kVz>?&-|ğj*ʋ$g0Od robZ`ި~l4x'_uݡ<1v+ M3OY\? >/o԰U9>?=.'Iܜ9ثWIZX3¡J~滱՗nAⴡ_ʲFQm?ӳ1̙Ѽӱ:+"Gʴܴ̩߰]U0;8e:#Ĉ<t*oqP|o Y<9 w2ˏĉ{k9lJ28=O~vذr&I]v*U_gT_w<]]Ӭ[1T +t4p/=[8L?"BBCWϳF;Fv/}5"CUaPGpszF5վ$]e:fFb3.6P }OI33X~θ f;v*UثW~E?"ݾmUS05N ^ֹ˽[ǿ% X'ǛnR1wQX"_|ם =qʕ7>az_) y,?'{٘V(o5}jA ee>@}Ȁ;}W7o\u_J_i?/9-V/d=/Y&ũZep9E:4l=q9pD$(|Eh[џ~'fd>,L:^HH0Df4ĜX}/kM-E 1~)#6qx2{L88R7Wwk nO:}.?Y\{IX;Bz>?\ p|K;v*UثWb]v*Uj_C4]/~f>0VqySw+#PCDKF9 /*3gJG#|?˜LptzM.fγ yOב)prOGru?R4 :'kv*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*U0wrlyۼ+Wb]v*UثWb]v*UثWb]v*U_>`x#cH@6ŌG482z_Y.O=k Ma'?Dǽv;s%|"ED lu|8z]f1S??|iR+L>}.9=N_KLYثWj;Tr/a3 X{y(RaŇݘ Ѱb_5yTҥme^$.͏Ñs<[] agr,Dw}?2h1}?79ôۢv*Uث?(<iuw|G!a?<嵙|IGz,>eϳ=׻v*UثU[[-eKM$SpbFpzƟo."I!Z}d#qώ 9 = uLnʾNQ@<3㉏x|Q-I ^ ;h[٧ٞ\!bz7'99/c# +uuBSFr<? _:p39~XU^i>+~}H~'M棴q\D{7-HϣzV;,O>?v[^wT?%s֨6ID|3'Yc?}#_Tb_?osl~$z-VO5ε݊v*UثW;W`.kCv}^S|mcI'gws漯6nث0^jmKm2hY\޹~i؛,j0(}]ti:YV@|]To>3ι݊v*UثWb]v* qpj?/fG<һ_JZ_Oꇍ}g.е۽ =GOq X~7.NpZ8͇?u0;'2~rڍ9kOW QeOw:@Gj}2t<>v;v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*һ{ƹ_6 yۼ+Wb]v*UثWb]v*UثWb]v*UZK9㺄H]OSr$XѰCcլ`!ېO8DŽПG>wU&d]?y2eyLD8Cws-'DkU}?̾>8~yט^6 诇?3|6z\N/f;v*4 #kuv}u=;ɏ*mi-?~([rO ˱,;꽓>__.VzoF _v 59x%ߘc>׮?U:>?ծ䷡Saمv#ᴥ**9χ3j39'Sm參ŷ#< ?9?[CE~???ry|r;JY|I?Y?G_֢VԺx#_˳[q[d;Jw >UXd`#|z m~sOGy\~/|34y|9z\=f/>Ȳv;4}?w_{ioJu/o3v=!؞e8kmr6guHfAS?s-f}QEg/5g*3g,{(9J=^_ё8!#:Ǒ"]v*Uث=􇗍e+%?ާϜhc9;'+Tcx7-bݻ}m| KB\7y5Η+Ǧl}龟YgF詥DԚ}e|_o0{i2KG0>ժ vw}=c$ͫv*ew%Bi$NO%XQ A"l ԭcdg6p0$ibqĊK^ATJ#ȃFّbTEƝ0'vprCDb]v*UثWb_C.@0=ܾ1Nfԇ~vU_Kc2\dʾizeMQ;˕e2݋)x#yz&>'FS>T6<s1Q ?৉OދW6_]Gq:? DUثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*U0wrlyۼ+Wb]v*UثWb]v*UثWb]v*Uث_}e#GſyIs]wP@sZ?5p[EUU#V"@<9q\I挳O_;HJKHYI5cƓ{‡bUm..`Ur.>9sF'|uc;v*U㯔?ENkD'r ;C/Gz^#X'䇛Hjh5a^RSfv.r^)pt:b]}UӚչ")g]woS sdzlv*Uثuk粒EG5}kٹ8g_}=Ҭ[xFT M_y6E>G2鵸Ҏ>e睹+3ثW/7ge %iZ}Npޞ٥o'33e^}w֩,'E:8'3$/hv*UثWb^8?fok;Gfykޙot֭;CٿI?:wb^8hmG^R[Xx4]ߠlһ?Kk;n9"dMA٬pyG7f;v*UثVaQNSd~bg@}Ss4xa-v*Uث?FߞX_h;OϤךwru8yQOY{CWC2Gbv~c'?F|FXr0g8av*UثW_fō΅+?}9Ƕٰϰٹ5yw/?'<\ZhqS<ݾyfqek<:GbS'r_2jL5(>)rsdd݇!ھi]"K[YCQ8 .rp*"ӐSfԮy#Ag##e bUثWbG0D-)0uHysxs/zHO\Z+Yl74f۳ˇGib_5B]v*ť>ݫ٣?;;/=4:7x}O2Gbs]RVsgC?[)͈e o}kvZsC)j lgE!11:[ѭ)Qϸ)~&`ltYLQ>M&wRu3 ! .ثWbS?,-jvu~19 ,8cۊ|} 2,H0#;H?>ysD E˗`LE>ɲ5᰿9xn3Wbwh9`e!Edbl>ѵI ǩĿؼcoO iuC0++]z]2y:ax22sr@Lp>/-a5m?\gEz9h$3%v*UثjU'`|U_n)u%esg7C xOeثWb㦕z7 }ȹ?]{3P~rYE.uz??,/37bYo%璯5Bf__?aia_2rړ_\:g$UHU+8/W e ;r :'h]9e$[IW5>T~/ ͫv*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]WMyۼ+Wb]v*UثWb]v*UثWb]v*Uتq m-^S_DkI$fL{۰ςB]ϷE ^淙?>bCJ/#fܟu\~y ^_d,qv*URy=;Kn0ތdj~~$9kB@=ro\':ZU?Opu?e2?ҽ/2-WMTrth{0s216:9'4Y;ːDHɿp=|Y㘘^/&3 z%c[Wb`z*Oт [O'F}A SH# 0Ec?en9 /MN8Y'پ6RC:/cSUثԿ#3rOH?fO?fM!3/__Qޙ~g^AM4ۚ%Uh%=+g2ڃW?jt4k&i2Y^!*AFBBJ&&$ثWb_`~Mk|g+ 3C!L9XCiwE _37_a?f;v*Uتx]et!n- &y<ãxqȿd ~l~{O"]siFvLPyt tݧqHUثWb]ninu:M RF" O7uS YC&7#{i]$|{Ei%t PhF>/getݥʤ?$3~]DڕΙpR43j$(Mп֗^eA8ovyi@KiO󞩪i:oGug(ޠ::otde,fǦNPAGyqi0.Nje?> ?755)X\%;,C$?YxKzyØ)P!oj=ΓsYN!E~9L2oۭ: [_?0uO>Ǩgo嚭FHǯ;}7g)tbEsROIc9K5ثU.U @O"u/WfP@D;7Ʒ(==N |ޅ<~vuZ/k?3\'b]ʿ%^qlzxQL3 'FRİJס9yDzHXV)T20!PFi$[O'ͪj[J?Qu]W}kY~/,͛v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbSW+&yۼ+Wb]v*UثWb]v*UثWb]v*UثM;Lڼa-LA859zC- K'㮈_8_=ԝ7΁ثWb]銾eB闵poJp~hFC%z kqN#lr1r>Q?e9+o)>>/:?n&g(UG~,c.S\E*Zv*UثV]o [i,:oN̲`e!>9x5Rðe9- wԏf7t;)O?TZOKWҬnjZGB!Qc-ɂ:{ٵ*dO_PFC83O!Jr֔InwsN$Ug@sLHtm"5ޣf|T':12_?2?؎?&@vt?Or+$y/~6?9<k3WjW3߈ ~I#`UثW~E~nkZ>۳ݼ<4z'}{i8)t4Uv%Qožj#GruOX>ZFu1*„XgJ ` <(v*Uث?"3*2qH$D#6 SǚnYH1vTq$3֞i׮5( krBCPG'#ff>/2G/bv*UثWHmiZf5Z5YyB3l_58g}nY%֋Wqߘ^ednH1H| 8G6|~]n/3&;;Wb]DImѥ~0RqFWєH?[]IѬ$/+5SҙR:'o9/`_e?w?2rkOMIY?aj Sw?sVNYL؅FCJa_>%1زO񰿵$1*UتZnZUԐjRCO?r# ^NBjq1Cޢ}];L3?.c.b˳9p.=ψ&k"+O*N6P?^VV7_d8c{lOhQJ d=/ԸA03AkݼQѸU,XqaχAN^МmylcTHoRٮvOTƿ+? .W1#@sLH} 8hM-Ϳ6`EJRsc#S&Dvt?O衛r/'[7d(`eט/ʛ8BUx1Iq-jv*UثVe}k𽮞ܽ9A`J2YK˙WO:w#х9FBB&&$ثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثT5_yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*i늽 yEx%VϚMV%5?O}GWPAR*sFXg/fHyL=u vGꥄGK_|$j~R6|k$]#ƿmsÚ9E3`#RHrb]v*UثWb]v*UثWbY仭Bݵ;,?̵ ȅ>ħR?LDK CaԖ3zZz2OŸƟc, k&UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb+kgyۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*Uثѿ-:5(֙'01mNezftbcl|j/tX:2>6s1K=&,.%ZճYjP?Uq_+F066e8 ;Ͽv%< Ɂ1ٗiuFEw6\#G*2 6tR‡b]v*UثWb]v*UyO\K[z'fkylcrig~Q uJ2ً0F\psqc}_ǛyΚm()kma q nllHrb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*һ{ƹ_6 yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثTC&x'_S+/u%-189ix̉iz n/tS4<"[O'_A HCeLbhxHXI=1mG d_d_qg?ePx/ -6pQ e~zy bi^򆯠7 RX;reO/g џm,P.iv*UثWb]v*XZp|Q a6W`fs9ٿ?.xJ/~a>`uNNjȷɧ>acC'"$eRv NAĵO,jŌjgIq̨jCq'>c tYln-σq~o|̏iLsrD5{8zPY/DdC{,)=g#?A֙hIlǏ5i ??썯㿚X9GC?<~b[Xߩ2a&CgqveLLLt òRt} ˋ ʬ.ҙrcٰɓ1)Q".?jA+1'.ĕymWON(F?ҏ1瓐NMD1s?漋͟rOFo1ٳ\]?"vλ}n)cNkOe\B)O!@݊v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbSW+&yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]p45F*tȌ0[Ef\Ǟ LȖkJyڂ{ġ<3 ]ô9ԙU /t1`.= Bi9剿'lAD{Gr<~~@ۏ/S~G'w |-"exG'w.W?屿LOb O,aqT4O1bG99_\L%&]͗RyvG!&'MtH-b?-s*̒ϴy=r{}/R3 \?:hCprjObsSKUثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثT5_yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]_?JySue}yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb.\;>CwKdG؟nvXi]*WmlUbkl*PUثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]٠F57>bNd8GJFIF,,Photoshop 3.08BIM Print InfoxHH(FG(HH(d'`8BIM Resolution,,8BIM FX Global Lighting Angle8BIMFX Global Altitude8BIM Print Flags 8BIM Copyright Flag8BIM'Japanese Print Flags 8BIMColor Halftone SettingsH/fflff/ff2Z5-8BIMColor Transfer Settingsp8BIMGuides@@@8BIM URL overrides8BIMSlicesyg intro_banner g8BIMLayer ID Generator Base8BIM New Windows ThumbnailpP$JFIFHHAdobed            p"?   3!1AQa"q2B#$Rb34rC%Scs5&DTdE£t6UeuF'Vfv7GWgw5!1AQaq"2B#R3$brCScs4%&5DTdEU6teuFVfv'7GWgw ?vow}%@IoY^{Bfw_nNﹿܫBfw_nNﹿJ[_kk,ޣ7UZ_P21%#,X7;vow}'n RYkKC}66Moo#ۍWֽ(|ufwin/}.??,~ݛs }7; }J]skgxW_\m[~ȟbVnNﹿݛs #gG?v?nNﹿvlӻoA8%gW?v?RI%)$IJ Ay-u6 v%͵6>qzG園d?J1{n=^-~[-hȯѧW~%Vbz5u *UCCrn5otPݽ?1jٍMz5^/S=QGGDuv .8i?ͩ֝:}Zcz_deg 9ELRY`gnu| &/8AKT]gqz !-8COZfr~ -;HUcq~ +:IXgw'7HYj{+=Oat 2FZn  % : O d y F57 X0"DgJFIF,,Photoshop 3.08BIM Print InfoxHH(FG(HH(d'`8BIM Resolution,,8BIM FX Global Lighting Angle8BIMFX Global Altitude8BIM Print Flags 8BIM Copyright Flag8BIM'Japanese Print Flags 8BIMColor Halftone SettingsH/fflff/ff2Z5-8BIMColor Transfer Settingsp8BIMGuides@@@8BIM URL overrides8BIMSlicesyg intro_banner g8BIMLayer ID Generator Base8BIM New Windows ThumbnailpP$JFIFHHAdobed            p"?   3!1AQa"q2B#$Rb34rC%Scs5&DTdE£t6UeuF'Vfv7GWgw5!1AQaq"2B#R3$brCScs4%&5DTdEU6teuFVfv'7GWgw ?vow}%@IoY^{Bfw_nNﹿܫBfw_nNﹿJ[_kk,ޣ7UZ_P21%#,X7;vow}'n RYkKC}66Moo#ۍWֽ(|ufwin/}.??,~ݛs }7; }J]skgxW_\m[~ȟbVnNﹿݛs #gG?v?nNﹿvlӻoA8%gW?v?RI%)$IJ Ay-u6 v%͵6>qzG園d?J1{n=^-~[-hȯѧW~%Vbz5u *UCCrn5otPݽ?1jٍMz5^/S=QGGDuv .8i?ͩ֝:}Zcz_deg 9ELRY`gnu| &/8AKT]gqz !-8COZfr~ -;HUcq~ +:IXgw'7HYj{+=Oat 2FZn  % : O d y  ' = T j " 9 Q i  * C \ u & @ Z t .Id %A^z &Ca~1Om&Ed#Cc'Ij4Vx&IlAe@e Ek*Qw;c*R{Gp@j>i  A l !!H!u!!!"'"U"""# #8#f###$$M$|$$% %8%h%%%&'&W&&&''I'z''( (?(q(())8)k))**5*h**++6+i++,,9,n,,- -A-v--..L.../$/Z///050l0011J1112*2c223 3F3334+4e4455M555676r667$7`7788P8899B999:6:t::;-;k;;<' >`>>?!?a??@#@d@@A)AjAAB0BrBBC:C}CDDGDDEEUEEF"FgFFG5G{GHHKHHIIcIIJ7J}JK KSKKL*LrLMMJMMN%NnNOOIOOP'PqPQQPQQR1R|RSS_SSTBTTU(UuUVV\VVWDWWX/X}XYYiYZZVZZ[E[[\5\\]']x]^^l^__a_``W``aOaabIbbcCccd@dde=eef=ffg=ggh?hhiCiijHjjkOkklWlmm`mnnknooxop+ppq:qqrKrss]sttptu(uuv>vvwVwxxnxy*yyzFz{{c{|!||}A}~~b~#G k͂0WGrׇ;iΉ3dʋ0cʍ1fΏ6n֑?zM _ɖ4 uL$h՛BdҞ@iءG&vVǥ8nRĩ7u\ЭD-u`ֲK³8%yhYѹJº;.! zpg_XQKFAǿ=ȼ:ɹ8ʷ6˶5̵5͵6ζ7ϸ9к<Ѿ?DINU\dlvۀ܊ݖޢ)߯6DScs 2F[p(@Xr4Pm8Ww)KmAdobed        ""   g   s!1AQa"q2B#R3b$r%C4Scs5D'6Tdt& EFVU(eufv7GWgw8HXhx)9IYiy*:JZjzm!1AQa"q2#BRbr3$4CS%cs5DT &6E'dtU7()󄔤euFVfvGWgw8HXhx9IYiy*:JZjz ?.B|ثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]zƹ_7.B|ثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]zƹ_7.B|ثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]zƹ_7.B|ثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]zƹ_7.B|ثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]zƹ_7Ԏ-|[>Y߱τ>p?<S }\YW`ЯU7fݨrU,OʙLH GB17Ŕf= a#<^-noRY޴uE zыgb+ ?ξCR=ZI(A P\~ȋ/|(?g/XֻEiq[Mw wmE"OGȐ6/{?%GNc ½*ldF-[çŒ 203-iWrOvF=:!яJHz\BnO'9WRC(AA6ȥUتy?H1kOem-QE⡻rGq1i>[ԬW1ix wʅ8kcvx/65#_BH2Gb6g9}cg8fSU>vܼ~`{(UZ!UҔGq$}g^7zN%@%QAZɮ3R;\z y\Io*|kRE8s`NB0rz?kVM&,f/䚌pEs,veWaBg$1GhvwCJm$+!2@&pW/n-n/RYT^GV4uτV|.^6Ri)lɖ&O/_^eZUFеId_k8D!`ח#B4q8! Yzg"a{jC)("E~NL.k말bhq)SUWa䀚:B $^[Q`ViU4qx1.д>IKϊqN\/(&Ưʳ?L+ ?V~G1_/=CϿ~tֽ xcÐd/3 3q<6تg]>8܉ͫα<~ w~+28ٌD|2@ZN$qb+qa5(ӷǡǐ\ehm_kZ=5Bupw(k2LX@ѕ!h<¿/caz1?luH̚fFG?Tx[?q<הHmJMh$'×7.u1+ͦ/3̗ثTf]kQXFeU{E @YgN1y-Obʭ""O3Xv1y%T7>5WqZ7/\Q~?d[%Ʃ+j?s3S4 ^q[ɳ#?0iowHElY7/a+~UrǏ٧8JtO\[7T{v$T^5O٬p5(Ӵgb+H5_%7gȗȱ 7_Sb~֌lP4e Bv>ٴu+p3Fӎ{HY g;ѬEcEuR־*OLs7Mƍ: C̷7򭎛}~kW-gh*b >VYJ"8ۊ1qH.u)eE zsN{F@ыfBĞm/yt}/Q{@W)Òǖl4gyFc2 3ݦw}:kf*b?!&b$ԏ ^*˿MZAPzw߯rsSp1qz}rhtMŢIJ76$w&ثWb]DXiigM<*I ",LhEo4^ǧYAbFW\@Pn@;I_ï&U&sfǧLWj@oO zB&qe=9)Q̓ױUR@'eS3!jc:mڟH,yg;~FzV_YÊ?.ϟ yծ%oݻ.ƙbtP!ثOk?1g7?ޛ;>x'['rn?@yY-jv*U?ؼosQ_HϨU.OE{坝}+͛v*U,xj6;4}?wݗ_y8y~:w,3\YW11YH%9I4n_c|p! xIc"Mo,Ex2`H+̸t- rb;v*UثWbo]r/ub4ݧ;~ {r+Rֻv*O$HY j3wS//Kn݊Nm+:W1ɧ?u>ѯqɻN5k̵2ɲų4=7ſ<;GzNS1M|ǩ\6ޟCy/;;V]Koh_P ]Qe =̭l^b ̈k}8p/Q?:wv*"J}4hZHW>_k}5yc32v2 b ^QGVUثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UتaJ/yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]/J15ݟs>O*b sUٿQ;nG9g@]v*qQ?.OYO&ٿꇟKJ2֧b^85;RIG-j?-͓v*U?gT_矞_q~k?`?y KuoǍg7,ŽZo|CSUثWb]{wߨG4ݧ;DR/r\~c'ZUثZC59)%㙶u]NՇA\7[pc٧7RVaͿ"?6=pYzgs׮?9 ]%gK:$ͯi)+~t|e-W]./ΏKMlݏWۭ:0̱݊ѴUȮҊNeq$?6|֕(ۛ9s-y2¥x5ˢڳ䘻*Ş_ʲ]MǙ/㫁?ܰѯ4|Rp=9TuUU'Mn^{'zq_M/r>]_s `LOG*$gP5MDV?52pW?-s?#q<41y3V'7 VΔܩCWb]v*ǟ.9Gcs[8a_v}wro/-q!Nj1((vn:_K"?O*b sUٿQ;nG9g@]v*qQ?.OYLG]/g.e֤wF_e>ң#w>Y??6.'޿K?5>w>X?򲵟><]ZvF~/W$v8HKgGN??u干u]qg;>޻/*~b7sukz>"ŰiexFR2 +/˿pX5U9r_KDt/_95E-=mf1Rxm;Wb]v*U~cv />?9)KQ?qGπylkWbcWK]k3 >of;*;;M߱fY?|6)#͋};Clڰָ󱫃:-ʯ?y./ΏKMlݏWۭ:0̱݊*q̫ tݟ'?ܾzߖz֖A{|q\`@Ig!{C0?:wSẾMeoѧ>LCs⟪Oæv*Uث="P{'lz*7b̑>?zW@}hͿ31_'jOwj&# ) qR@g I^_f6IF8"i0⌮'O|;/I}yKƷb^8U>޻/+~cHjdnu[[h⛅F`Ê*|\Q[p"Ief@!eEgƋҏtfHei[(KySKۃW|pd2˗ѥň\_z_}j?#k{bLGJp5\e2z} ⟨5_8axm3Wbq$LUԂЃPi@ReAAC?gJ[O3ӵ)c]Nz- ٛ*l2Ӛ;)ǨQxO~e{Sܺ:?->᛭>96>:=FX6.ثWb?b!s'f}ߩߘ_7Mw#P?KŎCUثWb# O'e_[7zCElmg:pfv*UثW~I-.ZG-N؟os[č.EG0?(|իjU3K~$e_ݷVf≏Gs OWqyW1ڟgXۗ?Zntx<8Kt,#,p]v*UثWb{ZH$=_cfww>0ٌnS/M6?ܼ3{WbYLlА\?v\CM/~ ù;G7ت#.I7ߙKa}t0!3=80`>6~/d0'ʓL_7%%~Ϗ!Wе$’2T*?۱|ۅO*b sUٿQ;nG9g@]v*qQ?.OYO&ٿꇟKJ2֧b^85;RIG-j?-͓v*U?gT_矞_q~k?` {N|Soj#V~ wN~4rp繞;v*UثWb^8?7ic?`ֻv*?%ֿ?PNov?xmCWba1P*?X~i9 )T/՘}Ĺ<6.Wewnb ADHQem/[APE…uVč-7\\rN/Q,uPwS/>y"c))f:fa6w>T~ .1fsO:b]\y/RfRט!51Ƕ-~>9r73Ҕc7)XֽK%ixTQXJM~5_mYHEk Ss`݊}78(U;3?ORm?G_,w2wb]}k(e;.rOC/fm9Ӈ+0Wb]}y{"I+f*&12;ytUuyrLyJ2C\vGOΝ垛={-Ya6cV'~2-v铲Qyl]kWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbSW+&yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]/J15ݟs>O*b sUٿQ;nG9g@]v*qQ?.OYO&ٿꇟKJ2֧b^85;RIG-j?-͓v*U?gT_矞_q~k?`de%חNHPqyB1$b?ˀ㈑653Wb]v*ƽUmu0?CjF7 iv:ɭ Hu;]YA'$%r=;>Rͻv*U,~Xz7 žb? NL~?Iܑi?1xn3Wba1P*?X~i9 )T/՘}Ĺ<6.تq?4y_PTڒFhTu?j7%ﵕe2GqK>?7$1 ѿo9-,,upz$/hWz<æcRv? Te?;$Cnj HUثW6?Lv1w_~t[m3c~:oфcUثUJ:*Aut8[#eE VΟ?3SF/˿+b>ƫ>a͞#ܳ꺽(q!3%ͻk*Uث,ɬOϰCI|;<ۏ10i6 -Z Ʀe1mŌ䐈 []d{w1%x>T8qό 9!#c[W,g援R_n<v?\ wkʁmI6k/Mc{r3%" ru5)cp߽UG!/x&~fԻv*M/(UثWűՊ*?/}Ê?ÿsyb]o[EX `H Iοf9vo\1OMC_>n' ~w@G9Yb;V?e1rQ+Msx>/Q?:wv*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb+kgyۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbWL {ҁofZZ+b]XU wFY @Kawyd0aZx%^@!,Wc,= 4y7S*QZ?[:Yx\2ŴLثTOԼ;Z1zҢa-kW+ݲ\aSQ}K;ۿ)hbP.$eSP^_sZ,rz}y?+\ӯodY'B3s|6?MNq&_<6Nت#Nnb^s-iVcEOFRz2L",+] b O͘_ v9z X2BwTd#4xdDn*[['Gxe]IqG3ip8 8e](cp9ݏ%Y9➚\C➖y7%akmd'I+kcX7h^[f>RC']UZw2?YqcF/w˴/M;u;BE1(n9=dqg+8YH9߫B->3ևHޟg.R-^ƖL~WbOol5wc".(@yn?˚F?ż]G9/L[[IgEe5R3G8'\Qw= U7ۢ"S‡bzk%xc[1uq5_i g.ky.Qq$ۆVWKYg9< 2{ދQ1iKMQiL stv*qym&$QfuP 9~ѯL˨/æ]V,I˷/O,|_qK|/G|Bo(cM\|.4(c'd͞T~P.m]x2[$f!c_0uZEhg'w/ۚFlyF<"~R61L4 ^M;NORZZZmW+L349|mvs]4tE`*E~̙kG&O,@ ׵z}[Kg!uVUce*e5pe8z3(ot([49tE)"Ђ7V nX\C{]EU=+CQ?OD/tci D(7yXM uir ⤈jʽ3}2t>ʳڛ7Uݎ,9ë(߲/ق&g(Ο;$UְŰ]¦M:>T1?6#԰6ܸdzՁz=ѿ($따E܁ҷO\->k4^9ձոpբƕ?f-s39d8ų<[άN\}F\7,HkkwRM\K3JUMB[Ü0+KqBM#+jRA>,T?g65NQfH b:WbYG-u4@n=XUeр l;26]L1rqi\Co,/VUݥ*<52L=F̿^c>tЬʮbI?goa:/;Ek}Wb]*~Vizd*gUry~.]L1rig\Cyms6VھZ22Ax?>Ug厹HE֫HaՁbO/6-L2+N+Wb]v*UثԿ*?:3S >M*Wճ_ձg֜^o,̳^w緡'>c7<x=9ߏnM,3^k~GL̿̈́uC=$<|~aSR/\2U$=+n[$ a\?3]U<ޜcC!L?_o4izPh4d/?k21/ˉ֜O*͛v*Uy[' xlAYYlJ'ۋ~ag94D}/4|qK*.'#@J296QbEXX~kjwX/'ΓMD]4 c9;v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UتaJ/yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb[V*j6#Gu/jF7Օq Iw:O#jÏp_] u}qxC\( jd@Ȟj$;v*k{=b(J1SO9yHH-S>{/]dcgFثH'̞`Utr4L$u5Gppj #:O#jxq Iwu/jF7Տ$1w%I;rlUO$%:e4#F- $oRcY=.-SėywRcXq KCT1|8%Pwܹwif$ɉ7O v*UثWb!ЎO0i(G e soqeFO扇Ԯ3FOZWCR1cdF"yܭ+Ap׮d'1Gvpv^kW-}=;u4Ws36w(,b]mu;0Vi"RjB9PO1!"9-S>{|Iwu/jF7Տ$˿:O#jÏp_]׵Rs1R(A 8|8%P6U-$q,ѸH#i#?:O#jxq Iwu/jF7Տ$^Mw9cb1{i&"$Ș"DrD>:kB B>/`UH55ܳƶ٭9ٰB~825$ʍ֫wvJ֎|h$" 2y.IWb]v*UثUH.%q$.)  &Gik@-J惠i YtHUwkV]J懯 ɾ861*uYI]KrYݤs՘~̀+I<԰ثWb}bP\K}  Ȫu/jF7ՃÏpO.u]ݨKA?HDH2'Cdv*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UتaJ/yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثTCi+ N!ωrduk}{l:b]v*Ur#HhI_R7-&- 9skσLF^'8A_7,IV#b3yvWb]v*U>w7]5dD21s@/Q4q ~j,qry-7cI*d򝸺X-^Cwr; f =ajLX B/旞~Μv̀Ev*􉵛4qYn$Xڦ =す2vZ#x [=x#O=P[;X]ǁSųLM>IWb]v*Uت;L[n:M=%V71 _FqlG.[4#]jj?f=̓z -.9w%Ǽ."#R`˄>1_q](Qd?dô`y\il*+jzm%v_?eb?pykSWbz)]֞ ckZ|na+㓇$dTs1?3C8* m5 ycaUj0{3HbNgd#aO=$;J`{2}|8u4Wa$?2;'~o4K;h]qxˈXuCWb]v*SGL}q5۴e@ G/<=HNk:h\0||]R8&?s@Ij1s1cv*UثWb7ORyM;hu_gl͏J,˻߶ٸpNR?KwⱰG5ճ1GqY-Ǵf9qٰ]/ǎiQ\qNA7._'4BHU1 F"BmV+*׺ֱI;,S㈗{#-jv*UثWbO?n$"Oݏ^/KǐG9W|d7RMdqyz^KYa;v*UثWb? M^QIo^wrKIٸa/LoO^CnT;| p3"#ɐB&G?6yVI½f4%b;.S\E'Zv*U~SQOGvZwfnsDr+ߢ9Q(/dv~^(p1{G ٺb]v*UثWbYw45,O[<Ô1d+JM q:;O_a%I<{~DrɑF/0ڡҞͧ!x6lhX]:Fa [#S̏8ʃkhkTL=b*6 Ը$V?sYهd;PuoZ,1\6' >G/n=n93kNj-mwM 2:SVFF&DHQxgo$o]H+V{Rk_'M3s :MOg?/e(Jsx]fߙO@$i4`&ؑ_z0?3M'KhhC)"*E=h7 |9^d{aؔ/?yh2qBynÒyl]sWb]GhzLt\HG~ =dOhb58q_~YCVS+$'N vnNp9.S5tn]v*UثK[}RUV Q=Q?So^p=v.)3@=3zW_yThmڱHTtb6iΣGgG*D~{UثUK{mKr/FRAHEH5_:j69oIZMXv}OoY#e(}\B2,htⓥꥌg:֥)i'i7gC)nwB䘻v*UثW~\Eje }[/XQ[ {G/.MM'Xf>@~~&\nEqa!Q k_Û˵ ,/3tSɿ8ٵǷ/輟[.]:m O氪7ݙ=æv*Uت?i=6KR+x5(_8ˈz _ɏ6K.kS|03qٸV.BUثWb!TT@*;ʣE& S#|O?\u|I:l^~l1_&1+O~e/\s;Ec^]{|K;v*UثWb]v*Uϑf3h:|Ե&8^)o|9)KQΛ>Yu]zO-ߖOҘZ*}?ZVdӳk3R_Q*L$d20 #9)遵r'=:tNK/g~? Y⹸t]}eyf5͍|I2zAyG9#߯hje'ȓo)f׳pχΧCyb]v*,dդ>IT_O\vN=vn.)1sH2|#n^#OØ.6M\9ثWb]}o!>[!~?᜶/}/WKԻg˾]n7_ro1e1Ru|8z_#gTn]v*U7| fU0uʳ mjcqjUrCNty^??f׻v*UثjT} Ek84V6OjO?k^0LM z)7WQY#5,ƀԓp 4 /?4%?no?6t] Źo1 u^UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbSW+&yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]}58ۯ{CMsW'ƿszNo5n_-gAYlg!IC%;}Osygb]EiZl66²v(֪̚i{ b_0aE3$d.]v*Oȯ)~ sJס`r3U05x!]gv>$=մJ޸ʥ>aԸ=<", e ;0λuH|s qxs1cYv*UثWb]v*OQ3a .r_/e?Ջ"w!O/"G:n^_fֻv*Uث2>k1%jzq9~>z ?znkU֡n¤@/яU@|]T8uUثW2WԮ? bDFw3QX"_wcsz$̺4zޛsJ>>ُطŖc&?|Ҽ2XӁ(4]*߳|R"᜶//¡ϳv*{?1[2ܳ$5u<31v*UثT^[>d4=JvEV3d߃1ڨAEQ@`3{7̿h%&V+SgOMೣ\0{v^)3shꝊv*Uت3Epz P p=s{wb?>&:cOg]*?ʵ'x#?4G{h_/Ž>ޖƒ?k,yоq56!#O˜?E%Ԭ.#!KcB;Dvvsn݊v*UOiߡ_YwGsQ]G03+I|qk;v*URKTB$U5H})=._ JQ"w׿Sɿlz^__mKް҆,*糦9%.ώYuűՊ*ũ3c;;?wg\&zf/5OK)ثWzhJo_&͔<9>Q9ǽW] i]p6JQnjG|O>ثWb>Zo2vX%;"r.Q'&>/b/$x".HZ*3^ːK;2iuz VV028Zd"$:Skſ&<>\|vH_$ܔLOK~]v*O,UWa?D$ 4?w{~ţXϩ\uoH}+4 f@]I#/MF]N[iݤcǑ1:UתE_>굲.ڲŹܲ?v.?3ě(c/9L<Gr {^)[7XUثWbʇ嶚Ea-cO?leKG7_c_^Au9 c* _)=_ƫq$-Oq\1c":[;h]ǃ)BB&&$ثWb]v*Uث?ˏF j>XV,1܇?`?y~eZUثWbMP\L0i)\|= ??^њr¿9|zOA}̟34p<_\-d1?OgռWb].Y]'(vk쳒c_nj[[&<2WUd'W6cOx"_|:v*Uث|Ess7_,^P9f.s43Ͽ5~DԞ+ìL3kBbi^__4I6̾渝?w#JѡGi:\f6Jl$%՗>#gq6(*xŇ",(v*URƃrqW^[\Э4)"Of㜆'2^MÀGԴtX^?'lW./="?|ٝ ;v*UثWb/Χ9rLySPqOrUר}ʫf:$s-v*Uثȯ( J{?ܧv_]u?WKs<r{_!lT;W>庋fq2v*UثWűՊ*UثWŰ8ԓ᰿&~.4ʳʰ#Q37WȹI iZ]!˹ uZPֵkwO\HjU_UΖbs36P96]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb+kgyۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*nk-4 _?&ʿsczNfy?YJ Qvm;;' ΫCybYG姕ϙ]=a_Ɵ}Y'MĘb瘄$,ǰU?pHM=y""2yUfg\qc#x2giZ_|9zf/wg=6sON}gZ9E*20 865ڱ9w/4z@?w3!B/)rsl8?Sk2 pv*UثUGV=P3U8o|i'?4jG^}u_xW̧ثT׵{M3𜲜snqGێ5B T9F˱Wߟ]V#} HhcXǛy=׻v*UثWb]v*UثWbp]z^j)iO~sB;n>ˆî?>rُE7S(.Mذ)Uj=K#s?1)g1.z>8Eÿ6;:,uX湿)əz]_OW1ܾlVvY ff5$@`laCWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثT5_yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*m֐ṌHz9Gic5vfJGg>Iɘִ6q$-ž,$%ּ㉏۽A∣UWҕ~e̿z19>˻׸;ҜC4ƶ߷R;cdzܾΑUԻ嵕.!Qs^uثWbS/.hskmā?َrcLm" "*otdl{8@Pl>in/>?6_?Oyxp3j'+̧ثƿ5sNB%z%*󞋳rL{6jF+qn=xjis3GØZ^$|}Osy'b]v*UثWb.??!bZoX,r;w]ךmay)P {EO?sـʣW[24-٩Oq_t_:c!z}Տ㧙ל˴1yf: (C7A8rk##3_t-SI`7f?U,oqNYBd>ݔ ,|>Qܰ+$gc7ӳ氨Az9tűՊ*U~l)d?_̲Ѱ>3ܳx5u2wfW~טRQ,+ʰ.Aϳ;O&OfvRYܖbzw';) UONr(djYAփ ظ'oShrye9^kgoTx? 6:  fywb_F3k}Ʒ _Ҍk O7id5{3DC/oATUB,y >?`; N_0$S9׼sXWb]v*U_a~C8!v/˓u3*Q1\?KōfCUثԿu_GũFFghJKh}Gӻ|aq3jOu*:0qj̗ثWb]v*UثWb]{ocv!w]sнͿ!/&\h?]ݟ#yP賰ZF2|[ YϞ8YϬ?6BNN2H~܍+W9|٥z8#PW~ysiEJ;^gi#B2C'4 DO :Eޑw-;V)[+~u𘘱G &ثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثT5_yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*y^:g֋ F%lF||p1oØpA{ٻ|g*).UdΧE2zg8(3ORrwX{22єbdhu}-N-P7o83'|15mqxǎt<^|O/LG9v* q^7>噷*ڃlv-wc`<һnVx֋ǒ|Tfe2sWā>;α]?˿.1붚i '?c2xp%&"Hg O9̗2!6Q Kͳ䵹|L>Wb]q>u?C_;W|^P֓;şx=#s{X#?sEğ}N~79_&gP]5uk4қ13Sā'+KØ?eثo*u4^6V ?ir3jxs# qv*UثWb_i\7$CQdY05phW:feW%t޹I<8Yu.ZVTa/&!Z1W8w^\~eJ@,1N@I {>򖂚k?U$wj~?&;,eqxߙIkD(Ġx@\n>s5v^P99tn]v*UثWb m'g.oqJO?1$2g_#P%i1q݊{ X_ƹ3w]7/B_yK_[?Qx\/#˚]v*UثWb]v*UثW0Ra&3O_H_Ff^g9(x^l{?ρu LxeKrs@m52\rQ19;]ޗy8S&2kGW9jC/ xvv.)q33|n4d?~ixjrp'ВƧrsxWbZݮZG'mIsQāI:ȡXTɼU槕^`E7(g[@bGɉfS?-]}->̼vN9v>5뿘>:H"?U11۷'Ƶ*UҰɒ/,ɴm\ph2NO9wv*0L"^6_r?Ora:_q?35v*UثWb]}#8iWK'|G{Ԅ3%ɚp5Ӿ[,~?eirpLWKl^A?_̺ͮ+!~)O3d߃1]O`*!~b1:=|1a͓đzK4UT6v SR |å[jR vo"2#ÓĈzo6xymD_3?yfr1<i'xn]+#8_j7iwgy|Bf߻|_nm˩!u+1:1qxHcY;v*UثWb]v*UثWbj_Bu; QiOsQ>мr Ϋ'fdz[?Cl]ߒ_Ht5BcHec?OO8qNEK辏ϽWo~Ss}bjz @uIWgj#Gr뵚AX>WWCVV FtذhaCWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UتaJ/yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*U:REs|w/ic/]fdGx1_E3#O`ڜ|p!vuʟ/[ȼn&@Ϋksp靊v*7_ Jո?W(Ⱦ?-z^<0ſ% }v!7' ?n;;-:nqk<߼-/yzȊJׇYz'gP]v*UثWbF3E Ex|E_Yc_Sd_a@"pqWyЎi+Pq6\0OO|8ON+0̻IiX|ۂl^P.߳1lfQ9_k8߷4dsb C2)sǾi4^Am9rou/e?>嫗Ckj̳><>+[&uO&UثWb]v*U_a~C8!v1PfԀ*_uoWy/1.3WbWnŷՍͻ*VOjF7 iv*_΋ثϝ8驴P: yM|k!yg]v*UثWb]v*UثH更{쿨Dfq9+9$?1 C|;;{wOzl1FM<4'wgK{hW~rPm[JPk(OZߵxz r?qGvXhRR(AAуo2E,®]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثT5_yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*U~N'cHoAR|6a#3G ?};|[0%ѝ-7m4kϜqI=Ea"8yi?cRNi9LjzIHDY:Ժޡqyq#9W9〄DG^I]5v*Uh:V7Z_ƟYv|?}E%cb42q%|  o,> k8|'K hbb%O9ÌwzyLxWzdyO(qpOݥ?ul~xVOdlqv*+늾ofZo~?x9=V_dz& u?98.wO;!S -Hdd(&N&XqHqͿl?I)dD!N~6?9XV,1܇?`?y~eZUv6rԶ YG櫴0Gsk%yO^ثΟ"+k,Ke"`g+dΧGĎTy=}/?ثWb]v*dI!uOKxQ Hԣ,࿄;E0lH=7Ο~U;T,!"'o?/^G^O/.J#~M\oR[FՂz o1?tZ\o_uOS`띊v*/<|Zuhd ?O/QāI`MAɼU[A,!Mt_ei2O%^򖆺k{Ī}ڟ?쟖sYg#.<r[̿[ ѣ5KD7'n;D·܄ۺb]v*UثUKoSao쏖q/r*axR9y/{̧ثTZ fT;,j!dlNhqŻOb]϶cdPC+A9=x'YA nؿno;6|sL|kv݊v*UثWb]v*UثW.Dq~/iw|}'~ϘJ#%3?t~{UثWѿ?8OhCv*ί)~ƣ?iGr5>?\~>le*JsyƱWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*U0wrlyۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UtR4L$CFR#nK[]wI9j~ؿ!vXpHǹpώ"]6ʛR} Bm]*4'aLDz s9њq5&~'1'zi|_uݣ?r:Gv*UثU{ln#8L+4i7%/'̹!G#{˷e)Gΰݭ?կ?84ĝV5ε݊*U~CGס⃭ΰ;ĵƳ}2ձbʣ9,z̸մڭg4W;8<^l$T-jv*UثWb Ԋ?%*"cs\L5bXyC@>/?l$jqx1|`ѱGe4 #:[v*UثWb.??!bZoX,r+DR/s%Gπyl]kU*C)FZO,&Y s;z;Umk?sYQ?ܽ.W}ޭjU]yCOVoh_otZK:]nq:/s|]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UتaJ/yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*Uث$c|k%=\{GOIٹ.?zjW~h;93X,«W:.zS]!ٞ;v*UثWѿg֟qzw9Rsf[^њrUc%A{3?yٸCy9Cѻv*UثO(Ve5zt?s:s4x!}gADVT-IۉQRWOqK#ܾa΍杊v*UثVKsmV+px ?oe}F/.F/1'ȡЂ*AA_'~zOd%mz=tNDgs}/+~{v*UثWb_i\7$CQdY>W_MK,غbY1?Qs__Gajxe>EC n=zث?!.7J46o;?QE:o;v*UثWb^8կ}SYKsD?ˏm&j{GKf䩘;\瞑ث?&kD}yGD?76aǹ!s޺b]v*3֟I|#,O_.(q1n^?ث>|SE׌ _j38W81[;:v*UثWb]v*޸"~"<ثH?6N^iN~:~> WbYqV-Nެ?O'y`qK>5]n-FĖ/%a> e99zLݹh)߽_':-?ͷǴ4}2ںbűՊ*Uiqݴܯ)uiE#?<8<7F΢BIϻs.g&IH;taGtl׻byBaQlh/etn]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*U0wrlyۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثcG{GOW_y |P>Ò9<uX#%kde˰$"ӟ'.ұfbI'';)ɵUثWb]//3kpބ9@&_ ?MM78o11kך5+^Ypu9YuűՊ8/_1/5j\!._&}/+yثWbYOǒL]2cY#Tb+UjG}U6ͪ_i )?aK`hD&&,/}RK̥]dbl&Q_+~h~P>f >nR72}[ΛMElou]v*UK%%(+O.iG5s6xr{8>QٿQHuثWb_@-D_Jlv?}ci^WxĿ6?fVq5:אv*UثTVw1YHb#Pr2216Z~Vf[yʭH@m:cG^K+_:~v~N5yO |^}_/xϻv*UثWb_2 MAe1t?Yqs!t|H/o/R~<ڑ.pqjxp%uUثWb?<}笟msG< aϗ6s8!vGIĘz }1|[;v*UثWb]7Ϳ0W$徉>][q; o~S]L28* Aoγs0<"rc'7,d"$xs1H2b]O5Gcc2Qiݺt3f8NSA[DGFW6m쀡J_r'R~7gw//?|̳b]v*c}5ڹh:2nFQS?+1 &$%4[cEWS8e_/[ ѿ&ebK)NK:"rR 9 /\UثWb]׿MndXO?\yKU LxzZ'˷wi3'|O.?`.'_Z]v*UثWӿ^e#!2P49>//geq:[Jx)f' [ >sV}~bvX>99,݊v*UثWb] gkx"ack IH3?`k3@ⓟg0/zb#<{Iuh[Y"ToeY8l~ayh<\cxn3Wb]dHgSE/#q]['HH bG0"`NE'WTd/DYTކ!C)ٕن/±~>켭ϵYԀi+:#ܿ:玱*UثW=󥀻sWtoo捿alQ/Y ѱʳi]J8HpA_4~t~O/֌k$j?'d?˝W?uYu.]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]L?]=\?yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWdMSVvO$g-ÐKz,X}/8w̷s!0#[ Nm&> `58k ثWb]v*_3}oCef̼ߙUŞ Toq _7_igfѻv*-f"Jv?Qr$rݔ@<=>p?:wn}=x rcv8aJgt4קeO1?*6ћR}۫q*ɢU͆L0VuZ`ٚ;v*UثWb]PSFثݴ㻰2Je&~<>Yf=Cqrڿ3TPzǖ_ub(hrC lZo#߯He%N<'_s?_O?GaQ$RĨ:0Wl2)K  &gpF?3#Wi&W2G!lih4z;k?3 p>\d9)X Қ8{:R"/#^؃ڟTri2`*1e@8+rz7YK̇ثWbS'yʚzgC]Oڍ+|YNlC,xKv(Z|zGٔanS.#\%c~f~\ZzG{LSGk 2ڃ ¿d#YѮ[4B3FVΦRp04ylv*UثOO0e`='YO"懴%k̛(HXPg3?W#V# ӣv*UثWb]̿5 S W/yc7tx2W/o*i>Yz4(.y?wZܼ8/syGb]v*UثTFs$I_ \2<1eS2GP/8A!o%tQ#y<9QyÔe//1/4 (_ySV?T4֯{*c٦0xOfK_O9EjEMa?{b% holg"][/.>R858rs5ݦAFhb+G3 ??NbexHrb]p4bʿbX6긫</ˣN?sqkg4ɭ2խe~/hYd>1O8YΙ}DGP )RCΎ?YӯG uaCoSu1qLF^Eg0?E#BG(9"9_kybƾ#mɮy|t%дKW?9#PEOtݸE<ɏgL󨸓(W'fsKkUŪۤ@yb@eEic uzi*^m\UtjMh> DO&^cHwoY᏿CW/@ѿ;hjcz,>9׳/5=3ڃ(߆՘<`wP7J9si:cGG!Ǖ8e>lIcI!K'c8gx,nU:3CTثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UتaJ/yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثVÑБv*UثWb] 6\I;VWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbY_{i(':, .N3 <Z}A+/<+/0Gi l{H.dq/Y 8emGζ1KN/o/+f' Ҍ}uEPq)ceŇ MWb]b$**UثWb]v*bzb]v*UثWb]v*UثWb]v*UثWb]ͺTb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]WMyۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثV[w}^&2$/.N3 ?WNc(򿚬;}?q5:h_'~l[aQ o_gM,re,F.]v*UثWb]v*UثWb]v*UثWb]Eo$jX &CWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb+kgyۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbF^@h$ċKf~n/ճoN`c)-qlsS0۟Y^bIGj b;єiq EgҼ 7~)jl?qdC?kz"y~'ٍ/:Z2d~>.iv*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*U0wrlyۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbQZ^u\%팭 fhGde!Efbl>xi[[EYzG!|Wg?ИoT=^'2bk隧nӢp BB1W`=Y|VԘOL|'JfO1~t|oP x% doRH\Mԅ%c[Wb]v*UثWb]v*UثWb\vqW7C^!YdVR`A#+")EáOGLQ)~RhS׀Cj|+ >&/ K9w; >X>>wؽM2`e 2/;Ӓg?O,Gz:o2LrPփc[MNei+8d07Ms&*CqiǖBs LaEfް?>`=VKv "ųo,r}&>2Ǵ%쳧WűՊ*UثWűՊ*U0O$<,S#~Vl/x˭Lq%$?1ObSNG.HLS>.''++Sk%&sC,]pbӋ?OKL=CZiX_)l?Y-'f$5$'6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbSW+&yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*kw5qlj H$nGNo'`zE|b_F/5Y>2>.;<Р*Sx6\e-D2%;ui fY"n0?5l A^y?/-{xcȧ3?qɠ>^]h-Im.+?)vO8:ܝ!/,W_XN?iWs:KӇ0X䑴lQVA9{ v*UثWbUloN7Kr&@sH<^AV#CSR1V\ƞy*7<x"\cb),m+Z݊v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثT5_yۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*Uتh: A`[ycz^@6q{K6`B]ռ9%ހRI݇ ?y$Y>SPz>'ڱm3ײ8-_K926ʛՊﴰ缷q"+ƴ< @K9{Ekʙ4TTes j<@\赞̇|30|7 ?KJ]c.z-w򔻢wWwr dOh,f~AyNޅR?WJ2zAtS/-X[wd'922[Q!x@I<܀,j]UI`K *k< |*_O'3YW3L_\- m_z٠}G2~]oZ75;.$]Sm!0꧒S7#ėen]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb+kgyۼ+Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbW#l VVK~fIm/:+5<З0jrC,LIor?B3]Ǵ|2dQt=Y.?c,$5}X=r[X>$/(ղ{QŴw+Lr}._<-DT^??w'q3,#_%ϯ(/K~Pc9{دwJ$<}J:rvCυ]r,sQ Xid*+ij"=\yvpX9kꭻCh?R3*Pa!z`aQ_ B?." 2A>&o΅ʯc eM.+KRsA`pghB a `!`>~fӣi`v 0excdd``Ncd``baV d,FYzP1n:lB@?b ؀깡jx|K2B* RvfJ KX+ssʝyߐRdPy$7۬@eyoWB]j mĵ:Hkt%!pYHH2D@2ׅ dD,܆ PsA sC2sSRs\cw'\F]YA&U| ~h%' dy8 okEIQ" %GmFQC+"bE>aw.p uv0o85121)W2|" 11{`!%w8V(K|`%`\xڕUMhA~3;1MIctK4?U) <jI(J"Th\i,{Lg=Zk/Dă?of7K65fov!2l~y0|1X3B&V.`ɴ²m PF\FqU#ɜ619o FpQGg7F)vZNNp+fN.,]CoGϸWaϣ}_s{\]tĚ^_g9oJ1?8cj1wNsw>hFG7n,|+(CF&㙣M}ΚrR#5Wh6N c6ibF'Ÿ{,Uv`*;sZ=wBekI{^.d2s Ƚ-s_Fd2s8t6c ZZc^ ߒJ;'g3A9:F}%%0cf .r,WVqDzPcY2(On跡蠇[x3k8)CKžk鉨̭qr-qןn1.|A0@CVW/ȲFlmlo_l^֍!KjG,ps~?`o~ʊAeEI0zXVAΫtFzԂH_R`7nϗcyZD}`7zm1ⱴ:'19ԞڎBar7(4   T*Equation Equation.30,Microsoft Equation 3.0#Equation Equation.30,Microsoft Equation 3.0$Equation Equation.30,Microsoft Equation 3.0B&Equation Equation.30,Microsoft Equation 3.0'Equation Equation.30,Microsoft Equation 3.0 (Equation Equation.30,Microsoft Equation 3.0L)Equation Equation.30,Microsoft Equation 3.0@3Equation Equation.30,Microsoft Equation 3.0/ 00DArial Newmanx}ׯ0DTimes New Romanx}ׯ0 DCourier Newmanx}ׯ010DSymbol Newmanx}ׯ0 D .  @n?" d  @@`` XP8F+       !"#-.14v5:;=R$;{@fg%R$ X0"Dg=72$ݓhJ$j_z V'2$~le3NH?7m)2$`>~fӣi+2$%w8V(K&-2$qz+'= 02$WύK{_#Nw22$3:ggʋb42$fppp@ <4vS0T}g4;d;d ׯ0(pT plʚ;B/ʚ;<4ddddS0Z0___PPT10 pp___PPT9/ 0        ,    8   0         $   0         ?  %O  =!ADependency Problems for Future Database Systems: Ingres Project D*B1( (GAdrian Hudnott 91 Postgraduate Colloquium in Computer Science 20080 9 9+Research ProblemsThe Third Manifesto is the subtitle of a book written by Chris Date and Hugh Darwen that defines what a relational database programming language should and should not do The Third Manifesto and related publications do not include any implementation techniques There is no scalable implementation of any part of The Manifesto currently in existence There are concerns that some of the demands of The Manifesto cannot be met using extensions of techniques in use by SQL DBMS When these were catalogued all of the difficult ones had a common theme: constraints All the problems involve the DBMS efficiently deducing a fact using known properties about the data source Little or no access to the actual datahZz G   ,Research ProblemsConstraint Enforcement Semantic Query Optimization Multiple Simultaneous Assignment Updates to Views Interface with SQL Databases Determination of Type (compile- and run-time)rDatabase RepresentationUse Datalog (like Prolog) E.g. supplier(s1, smith, 20, london). supplier(s2, jones, 10, paris). supplier(s3, blake, 30, paris). supplier(s4, clarke, 20, london). supplier(s5, adams, 30, athens).0 _ViewsMExpressed using Prolog rules E.g. supplier_city(C) :- supplier(SN, N, ST, C).R" _0 _"NotationExtensional Database: EDB Intensional Database: IDB Statistics: Stat Constraints (invariant): Inv Assignments: Ri := Ui Queries: Qi(t) Boolean expressions: Bi(t) Cost function: c(exp)zE s p      Constraint Enforcement Updates with ViewsExample insertion: supplier(s6, carter, 30, oxford). R is  supplier U is <previous definition> OR <tuple is the one above> supplier_city(C) :- supplier(SN, N, ST, C); (SN=s6, N=carter, ST=30, C=oxford).0d"0 dH0dP0" d "#P #  Materialized Views,Materialized View: contents of a view cached to avoid re-calculation. Can be modelled using constraints CREATE TABLE supplier (City PRIMARY KEY REFERENCES supplier_city,... CREATE TABLE supplier_city (City PRIMARY KEY REFERENCES supplier); And vice versa: A constraint is a view that is always empty.Fhhh=hh=,  f Multiple AssignmentVAR Customers RELATION{Customer#,... VAR Accounts RELATION{Account#, Customer#,... CONSTRAINT Customers{Customer#} = Accounts{Customer#} INSERT Customers RELATION{TUPLE{Customer# 10,...}} , INSERT Accounts RELATION{TUPLE{Customer# 10,...}} ;^ +  $  $ ^+""     )Multiple Assignment: Naive Implementation**(TExample: X := Y, Y := X; Internal representation: atomic { Z := X; X := Y; Y := Z; }\2 2  Multiple Assignment  Multiple Assignment Idea Semantically optimize RHS expressions Place RHS expressions into canonical form and find subexpressions equal to other RHS expressions Build a dependency graph Depth first search to find cycles Break cycles by creating simulated copies Schedule and execute assignments "  Transaction RepairTransaction repair is modifying an update request so that it conforms with the constraints Compensating actions E.g. ON DELETE CASCADE Research on more advanced repairs Generates more than one repairLp"p" 6View Update = Transaction Repair + Disambiguation77 DELETE FROM supplier_city WHERE City =  London ; Transaction repair needed: DELETE FROM supplier WHERE city= London ; For more complex cases, disambiguation is needed Default values, rules, etc. 1rr*r1rrr1*1    Semantic OptimizationNULLs are flawed for many reasons Simple example: B OR NOT B is NULL if B is NULL Can consider missing data as free variables Problem is to efficiently determine if a formula is true for all possible values of the free variable<"0"0Missing Information-Current ProgressCatalogued all known issues requiring investigation Outlined solutions or literature for the lesser problems E.g. comparison of large values Devised formal semantics for type checking Tutorial D programs Elaborated on the problems requiring original research in the context of dependency Resolved perceived ambiguities in The Manifesto Detailed ideas for future development into a solution to the multiple assignment problem Completed a literature review on constraint checking techniques|mZ Z\Zm +  Z@.Project D Roadmap/Summing up Project D(Essentially about relieving the industry of the burdens that have been imposed by SQL implementations in the past 30 years We think that the relational model can be properly implemented without SQL s restrictions and ad hoc additions & but requires innovative research Project D is still in very early development However, some small successes already nr#rTr #K/    ! "012PE 0` ̙33` ` ff3333f` 333MMM` f` f` 3^?" d|,?" d| %  %" @% ` v?" dd   " @ `@n?" d  @@``Pb )  )@ )` ) `4pt1" d1 d0" d0 d0dt1" d1 d0" d0 d0d 7/(  ^  6A ?  H_ж_ж   W#Click to edit the title text format$ $  B|k_ж_ж `   Click to edit the outline text format Second Outline Level Third Outline Level Fourth Outline Level Fifth Outline Level Sixth Outline Level Seventh Outline Level Eighth Outline Level Ninth Outline Level&g ,  B$o_ж_ж  ` k *dZ5Pk ( C ^y.  Bk_ж_ж  /  k *dZ5Pk ( C ^y.  B8"k_ж_ж  @ k *dZ5Pk ( C ^yB  s *޽h ? ̙33 Default Design0` ̙33` ` ff3333f` 333MMM` f` f` 3^?" d|,?" d| %  %" @% ` v?" dd   " @ `@n?" d  @@``Pb )  )@ )` ) `4pt1" d1 d0" d0 d0dt1" d1 d0" d0 d0d  -(  ^  6A ?J   Hhn_ж_ж 4o n W#Click to edit the title text format$ $  Bjn  _ n Click to edit the outline text format Second Outline Level Third Outline Level Fourth Outline Level Fifth Outline Level Sixth Outline Level Seventh Outline Level Eighth Outline Level Ninth Outline Level&g B  s *޽h ? ̙33 Default DesignV0 0 r(   ^"  6G$ ?R"  s *G ?  Hn [" n ,   BXn  & n , <  c $Bh ? ̙3380___PPT10. 8(    0X%Z M<  Z >*   0t,Z  < Z @*   6+Z kM  Z >*   6Z k  Z @* H  0Bh ? 3380___PPT10. ~Z 0N0  |t@(     Z{n ?m  n J6 @ @ @   Zxn ?\0  n J6 ` `  `<  c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++f 0N0   $(  $  # l ?u  n p\@5Pk ( C ^y  # ly ?  n <  c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++< 0 <(  ~  s *;_   _  ~  s *;_ `  _  H  0޽h ? ̙3380___PPT10.Ӕ V 0N0  xpP(     Z|Gk ?  _  J6 @ @ @   ZpU_  ?`  k F2 >~> ~ ><  c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++V 0N0  xp`(     Z\k ?  _  J6 @ @ @   ZP_  ?`t  k F2 >~> ~ ><  c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++V 0N0  xpp(     ZT_  ?  _  J6 @ @ @   Zا_  ?` _  F2 >~> ~ ><  c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++  0N0    (      Z_  ?  _  J6 @ @ @`   c $A ??NG?g \  <m_ _ȯ_ȯ ? B:2___PPT9  Or, alternatively:|Z5Pk ( C ^y`   c $A ???  ^  Bؽ_ _ȯ_ȯ ?CB:2___PPT9  (Prove Safety)|Z5Pk ( C ^y_  BX_ _ȯ_ȯ ? C B:2___PPT9  (Prove Failure)|Z5Pk ( C ^y|  B<_ _ȯ_ȯ ?J `B:2___PPT9  *N.B. Minimize access to the database (EDB)+|+Z5Pk ( C ^y<  c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++ 0N0  4,$(  $ $  Z_  ?0  _  J6 @ @ @ $  Z0`k_ж_ж ?Y  _  F2 >~> ~ >` $ c $A ?? L $ c $ ?< $ c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++V 0N0  xp((  ( (  Zz ?  z J6 @ @ @ (  Z#z ?` z F2 >~> ~ >< ( c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++X 0N0  zr,(  , ,  ZЪk ?  z J6 @ @ @ ,  Zh3z ?`H  k H4 g'g 'g< , c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++V 0N0  xp0(  0 0  Zpk ?8  z J6 @ @ @ 0  Z$Wz ?/? k F2 >~> ~ >< 0 c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++.   0N0  PH 4(  4 4 Zk ?O  z J6 @ @ @n 4 c $A @??"`mE @t 4 s *A B??"` *> B 4 Bjz_ȯ_ȯ ? B:2___PPT9  >IIF U is the first assignment:, |Z5Pk ( C ^y 4 <kz3B:2___PPT9  * 4 Hqz"`tNf^V___PPT980 H.... R := U , R1 := U1, & , Rn := Un;T%g g d  4 <ZG9j< 4 c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++`  0N0  z8(  8 8 Zxz ?8  z J6 @ @ @ 8 Zz ?`H  z P< >~> ~ >< 8 c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++V  0N0  xp<(  < <  Zz ?8  z J6 @ @ @ <  Zz ?`Z z F2 >~> ~ >< < c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++V  0N0  xp@(  @ @  Zܴz ?8  z J6 @ @ @ @  ZLz ?/  z F2 >~> ~ >< @ c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++  0N0  D(  D D  Z,Zz ?  z J6 @ @ @` D c $A ?? g D Bz_ȯ_ȯ ?0 8 B:2___PPT9  No access to the data|Z5Pk ( C ^yT D Bk_ȯ_ȯ ?WM B:2___PPT9  and:| Z5Pk ( C ^y` D c $A  ?? =   ] D BTz_ȯ_ȯ ?QB:2___PPT9   (Equivalence)|Z5Pk ( C ^y\ D B_ȯ_ȯ ?  B:2___PPT9   (Lower Cost) | Z5Pk ( C ^y< D c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++ 0N0   H|(  H H  Z ?M   F2 >~> ~ > H  Z ?   J6 @ @ @` H c $A L??c >  L< H c $޽h ? ̙33ZR___PPT102.]0G+D' u= @B D' = @BA?%,( < +O%,( < ++6 0 6(  ~  s *"   x  c $$v  H  0޽h ? ̙3380___PPT10.֔YOL 0 og@!u(  ~  s *|0   A `_  u #"."(121212`    <>?C8 _ B:2___PPT9  T Early 2012   @`  <`I?8 C_ B:2___PPT9  XProduct released @`"  <Q?C 8 B:2___PPT9  dMid Late 2011 @`  <|\? C8 B:2___PPT9  \First complete build @`$  <(_?C B:2___PPT9  fApr  Sep 2010 @`  <o?C B:2___PPT9  WThesis write-up @`.   <pz?CB:2___PPT9  p&Aug 2009  Mar 2010 @`   <?CB:2___PPT9  [Development Phase 2 @`$   <?CB:2___PPT9  fFeb  Aug 2009 @`   <<?CB:2___PPT9  [Development Phase 1 @`.   <L?CuB:2___PPT9  p&Oct 2008  Jan 2009 @`)  <?uCB:2___PPT9  k#Address multiple assignment problem$$ @`  <$?C`uB:2___PPT9  U Summer 2008   @`6  <?`CuB:2___PPT9  x0Further literature review & code familiarization11 @`ZB  s *o ?``ZB  s *o ?_ _ `B  0o ?`u`B  0o ?`u`B e 0o ?u`B f 0o ?u`B g 0o ?`B h 0o ?`B i 0o ?`B j 0o ?`B k 0o ? `B l 0o ? `B m 0o ? 8 `B n 0o ? 8 `B o 0o ?8 _ `B p 0o ?8 _ H  0޽h ? ̙3380___PPT10.۔  0 6(  ~  s *   x  c $ z   H  0޽h ? ̙33___PPT10i.ޔ{+D=' u= @B +0 |t0L(  LR L s *$?D   L <6___PPT9  Project D Covers: What the problems are Formal specifications Doesn t cover: Previous work My ideas for solutions ,0 -re|%reZ5Pk ( C ^yB L s *Bh ? ̙33 50 @P+(  PR P s *$?D   P <X ? )V  x>6___PPT9 'For formal specification purposes only.*(0 " re|(%reZ5Pk ( C ^yB P s *Bh ? ̙33 5"0 PTd(  TR T s *$? T s *x ? 'R  x:2___PPT9   B T s *Bh ? ̙33 50 `X`(  XR X s *$? X <x ? )V  x>6___PPT9 \Assignment is assignment to a table. Use vector notation to indicate a list. or no subscript*]0 " re|]%reZ5Pk ( C ^yB X s *Bh ? ̙33 5E0 p\(  \R \ s *$? \ s *n ? 'R  x:2___PPT9  A-Example of IDB substitution on the next slideB \ s *Bh ? ̙33 5"0 `d(  `R ` s *$? ` s *Px ? 'R  x:2___PPT9   B ` s *Bh ? ̙33 5u0 !d(  dR d 3 ?["  x% d s *3x ? 'R  x:2___PPT9  qNote cyclic dependency. Or in Tutorial D: VAR supplier RELATION{... VAR supplier_city RELATION{City CHAR} KEY{City}; CONSTRAINT supplier{City} = supplier_city; J+v v bI    B d s *Bh ? ̙33 50 h)(  hR h 3 ?["  x h <P`x ? 'R  x:2___PPT9  =No deferred checking INSERT is shorthand cyclic dependencies >0t>Z5Pk ( C ^yB h s *Bh ? ̙33 50 l((  lR l 3 ?["  x l <~x ? 'R  x:2___PPT9  <Want to prove when assignments can be executed sequentially.=0t=Z5Pk ( C ^yB l s *Bh ? ̙33 5" 0 pd(  pR p 3 ?["  x p s * x ? 'R  x:2___PPT9   B p s *Bh ? ̙33 5" 0 td(  tR t 3 ?["  x t s *4n ? 'R  x:2___PPT9   B t s *Bh ? ̙33 5" 0 xd(  xR x 3 ?["  x x s *Dx ? 'R  x:2___PPT9   B x s *Bh ? ̙33 5" 0 |d(  |R | 3 ?["  x | s *x ? 'R  x:2___PPT9   B | s *Bh ? ̙33 5 0 1(  R  s *$?  <ȸx ? )V  x>6___PPT9 -Maybe some access to the data, but negligible*.0 " re|.%reZ5Pk ( C ^yB  s *Bh ? ̙33 5"0 d(  R  s *$?  s *x ? 'R  x:2___PPT9   B  s *Bh ? ̙33 5&0 0|(  R  s *$?  B0 ?  'R  :2___PPT9   B  s *Bh ? ̙33f0 v(  d  c $ Tլ*!    s *  &R  :2___PPT9   H  0Bh ? ̙3380___PPT10.Քf0 Pv(  d  c $ Tլ*!  x  s * x  &R  x:2___PPT9   H  0Bh ? ̙3380___PPT10.ݔB\@xYMlEfqBz0CERZq)ƦSʼnj;q1*z@z^8p(7 E)E҂8AU qR Vyofv٘]i5yof{~fn~ǟmx !}4 tZ^3ɢVo](AiYF1n 9ǂ<'}Q?럻뛉'~/"<vcED)~!_ qo4-w!ӔK=d<]C?`d ꂥ'gn=Lf׌ɭւ Ձ( :s>32J4WrC9gT؎(  N9tr6tNl3?5ѿt :la K !!!dʯk_7O9Ђ 'z=wuZZ' ߁{ߩ6 Om ZuÝ w{r}n(OcɡnUķ'̚~ކܦ\۶g ڢ I&Tohҝý($X'v>1xN#9 _'}]z7%ddItg\d۳w]EɡcѩG>%a^:Ql~yfE~Bߓf|I7S|$;d}{×wlgh+"u9IT's;Jj/s rZbJ:(u2׬s: R^w_Tң#iܡkxMC̞d-F]WEGxt,ů5e,Mk|"%|I,.xrzbOKm6}VU:lupa7>i4k/my:3P wjzx]hUܛi%m:g}6}жX6c.hHZ|(æ6J[c@m2YADº=LC;At0' |Pt,{5ۗnحs=s~yһ']*x\Pxm1 GʕJHJ(HB!9|NC: [9 k;<1/͘z & SL;|=부)q&QxfJ N֐TGg`93{N֐.j_2(OANe'vZ_ȭ;TlGOj اlT:ln`V&FKWg31#:6pwGq(hCD:ޅ):h stU6 |~Q3i1^/?r_ģ"ŒbAp>+^J>ׇ$ li?v^:va4ʚ횭o ^ rZL\)8iaPج[9C_Py+i?yas'BohTn5c -@@w|j{mzp^\z`@>ɮϊt/՚߆#!ѧ_ٴ.-q4ܰ9/l< =8xX'Cx~8I #{_~'#C0U̎'Oc68t),cȿ2!4iPFF;kc"n~]7zy==%_j\^mg]߹2(D%L8)l:vCh ^uӊܬ,a,(hNHE9\-%A\1E;ģZb^4ФVacb9vW<+eW,ΜiF_[s߈5f¿\c}UUq:0S#c }O[.X%)rD`B )ΊN _IՆ@$tTP>zm+Gwghdذ%mqy.YsIl"+d|)C0uvs @v.]xKLSApv_BRM ЪPI=Ƌɋыě/&ƃ79Ńx1%=A˧l̾ݙξo}% 6~@=~W(eaX~_ \({& S Z9]?>{gayKbcx"}LBДL=@|Ey 1#01WLw} ! gq{F^ 0oGYL(7[l.׬[^{OlU. [U?d,ryӁT8uuu@ {ZjFKw/čZL̮p^<܏FxU aJ%*~9k!Xٚvpzs1+(/k.s3/7P%/>B!N0; jЩ&|/yƧ>T`B喯[XZ P v2}V řf+'+!n3nZ~vB9]-_U?/q%TXi}T4ou0숵΃g=ֲ,TXSK\.yPD&bU痜췎2Qcc̟=]MGݾzbL@^;._0"(x>/İڅG26巡=R*ڍ-T%'`|ɧbjHH5Hk"CZ} kIŝ,z =t,ya"cA% |/zylb} yﲡʠ<?=;g4ߨ{ձG~bbf`{y :Ճ-'Oh$cvJC>^LfOOZ'p:yg)[g%'qagCsS5oŦi*S ŀfa.8p0:RبOղl7#|keWl O7`;h_A.;6\'H@ҩ-N ipz o*ֺoV'jm;ZBG#ket9{>}JyftX]̻dqoclkȧv-I?f1 5/+dBk\Wbu'rབ([P%IDպƓ\Pk9Y#^w>xex7[|=$&.ve ޛixsJ=`R|CYf=`[Fx7$w@{t(IÛEHng_``G?EȚt &_ϻ.nF߷1H䱎p*y|nmKOǿ/ŝoPڼA=-Uú~[Ӿb;W,3quTɞ*P%{SaWEbSW)^Wj|V?!?KWyG{-,:_yG/gѬ YsnW_;=G\!vGkJӐS{qvNG1;xX]hU>g'IӨ1 C4iAc6Vwl$;ɺJ$%_|QH*VPE*>Bi =Ιdۤ3!4Y~{3s|xa @N;Tr].S%_ۊ!? &8d¢trNcA~'U}n~Ԏ{F?\]01_6dT5{^ E?oul!/PUSHAw林g(Vu/*dn˖R39ʮ|cGH y\WM0FGfcxߍ=Tr vMDx B56u uP#ÅyA{N~o 7?bz/{u.U0. M, ghN,,D3g7i>jT v`p5nƲ7;--U3U ^ JZiMX[c0Qx4iW.C҇ ~c}z yF:PK+5^:z$W[i??},ԀglNu'Н~ Xҙa5~'tu:Vb:Hz%njcS?NOo.2'$@q-몤ӯZFHkL4}%O}'jȌv0bwEVTO>p&1P8A}ֽP:ٙn4g)?[͸\^ 6gnn\.O{A'[nw1?mg/QX&s*.]P^%D, d"jBo^R;ke rT~H%Om1lE-]uPmNZ<\QTZ B)ÙK,A{pD=@?8ܜBmibf`|q7㳌1>ƽ_d|1ed8cf|c !ɘdecgL1ZiW32:So"^gCxY]lTEfno[- M1kӘi+ѶhK[ 1- 5le,l)b|苾">G4~&0jbŸ9sg6+ l3gs̜sⅺ'> xJy Tl.*",+D~IDЋ )4aJ{ζ K՟q?ofYQH~@4L/ؐJm4&I=x-z-߀1Nc-hH`ՐW1V,}'?Eu0]Rrm%77vV\Ju6[AbٮgރD|,靚M'"֣> PEA6ΓSu(SCP p˗4>WNFKP-l7!$DnU+P%-T.ܐrMLUT b  4vש[B*?~c̙oko(½ K~}BPw-|oo=&p^;|W7?'m5TVPz̆@J=g|̄~%Eȳ#:ۨWJ7oja)ڜ۶X 3X)n ISP6ZUICW-#q"<jO%Cnp=im4ؙp>kJz) 9=H_~W❎Tf3ճr׷U1>,z-b5vc+7'Ծ뇵%=_HO\[5AqUEh*2N}//ʙEc$tuRƻj?I1Q6:B V6,lrh -.F~GX7rg^߲y84摀{v12)ou )g$D1rw/F_KO9{~{>Ou^ٹAwkCgh GuNc?< ׉4P=L8xG]%7F7c_lk&x[L\Up屗. WIS)[!]b+ .B4"1&?~XSӤmSbLYg}p-*=g̙99r~{ LX`%nT] Xxq_HX.QؒG>W_mxԉOR9GȿSLU!Irb5ΘRcUZ s)m-Gyj6C'Y}xC|b!;G:Ɔ:,ll1j v!,v@ևlWIl4W3QaԵbl#}K'\scbݖuz%R{zV"־7=A>8eL{R%TbIu.V_V׵o׳oouq&v}Rb~)ƥڍs }&T:FV$K§Q(ëѭF #?f͢?jY[-:{F/ȿMt{Ȧ2(Bj˕4Z_U[LKWk9*%LYM︞Y▶DiqF&wR\~NNeGG#WEd"Ѿ p쟇u~w9,66xHJ7w=#H?i>!:*ɧd5_c4OכY }T u cI2>|*>tL7!zڇ(_.E[AS'+DJl\(G9P‚蝈d[,K?  J tу15ezĶ0bP_0N1YǕg='xW{j}W4/? /,MgK^ju~Mrߙ_N=CxOhMH{A`{"GPD%z wj3*; ,(xY]L\E>3{eY(@ 5bcRjڂZc,UزnCSⓉƪM%Qm Mc߲s[v;w]+r:s99?wzܚ^|b,sBi_(cXLЪN_CzRd{Qqu|J{||KCB~:ZL.{d4 pqGl_ӹwveG6#ЍGBW`d֯C&9j(8fju*5_N'H/|,ܭ5| ۅӐ+Kk!v~>ؙ+X$)DC ȍ`c|b:%qpB[τoL[D~A?QLwbAX.=JU J}J=zS^+cy{n>ʩbBP%1~4h]ݡ{":Q]qb*y?zuj9p.//w\qD9,.YD˯1F=}0逳 (9Z WS5=W ®!r.}KjYmz}黫 $Է96q~A6D9K}EPeAl'Qe/Cï?)ߎ]4hz݋IT6\W/⭶wK*dDxkûxE5zŻ7}/׫|T,m*H"o_"V޾^R3ޣ (?3o ;݃7odomxri_c'S3NV~G{JfT?U;v=;xe?}^x'srxe?}}:?@޾!o_xOW>#7?6vٹXȧܱܵ>ꤑ6ȭY+mٱӐV15侱ϝ> 2"@<:*ͬ{SWdnTa!?X._{ Y;CgMvr|S9rj?)ߟ$ToS«S:(c?Nr@7CL T4_cgNlAv[{wsўE8^RA/YJ&< +X\i&P "4 7(4   \*Equation Equation.30,Microsoft Equation 3.0Oh+'0HP` x Slide 1Adrian Hudnott21@ Z@;JKGhk  ,T%&" WMFC <8~fӣi+2$%w8V(K&-2$qz+'= 02$WύK{_#Nw22$3:ggʋb42$f OR <tuple is the one above> supplier_city(C) :- supplier(SN, N, ST, C); (SN=s6, N=carter, ST=30, C=oxford).0d"0 dH0d  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-.0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Root EntrydO);JKPictures9Current UserJSummaryInformation(/DPowerPoint Document(/DocumentSummaryInformation8@#Equation Equation.30,Microsoft Equation 3.0$Equation Equation.30,Microsoft Equation 3.0B&Equation Equation.30,Microsoft Equation 3.0'Equation Equation.30,Microsoft Equation 3.0 (Equation Equation.30,Microsoft Equation 3.0L)Equation Equation.30,Microsoft Equation 3.0@3Equation Equation.30,Microsoft Equation 3.0/ 00DArial Newmanx}ׯ0DTimes New Romanx}ׯ0 DCourier Newmanx}ׯ010DSymbol Newmanx}ׯ0 D .  @n?" d  @@`` XP8F*       !"#-.14v5:;=R$;{@fg%R$ X0"Dg=72$ݓhJ$j_z V'2$~le3NH?7m)2$`>~fӣi+2$%w8V(K&-2$qz+'= 02$WύK{_#Nw22$3:ggʋb42$f OR <tuple is the one above> supplier_city(C) :- supplier(SN, N, ST, C); (SN=s6, N=carter, ST=30, C=oxford).0d"0 dH0dP0" d "#P #  Materialized Views,Materialized View: contents of a view cached to avoid re-calculation. Can be modelled using constraints CREATE TABLE supplier (City PRIMARY KEY REFERENCES supplier_city,... CREATE TABLE supplier_city (City PRIMARY KEY REFERENCES supplier); And vice versa: A constraint is a view that is always empty.Fhhh=hh=,  f Multiple AssignmentVAR Customers RELATION{Customer#,... VAR Accounts RELATION{Account#, Customer#,... CONSTRAINT Customers{Customer#} = Accounts{Customer#} INSERT Customers RELATION{TUPLE{Customer# 10,...}} , INSERT Accounts RELATION{TUPLE{Customer# 10,...}} ;^ +  $  $ ^+""     )Multiple Assignment: Naive Implementation**(TExample: X := Y, Y := X; Internal representation: atomic { Z := X; X := Y; Y := Z; }\2 2  Multiple Assignment  Multiple Assignment Idea Semantically optimize RHS expressions Place RHS expressions into canonical form and find subexpressions equal to other RHS expressions Build a dependency graph Depth first search to find cycles Break cycles by creating simulated copies Schedule and execute assignments "  Transaction RepairTransaction repair is modifying an update request so that it conforms with the constraints Compensating actions E.g. ON DELETE CASCADE Research on more advanced repairs Generates more than one repairLp"p" 6View Update = Transaction Repair + Disambiguation77 DELETE FROM supplier_city WHERE City =  London ; Transaction repair needed: DELETE FROM supplier WHERE city= London ; For more complex cases, disambiguation is needed Default values, rules, etc. 1rr*r1rrr1*1    Semantic OptimizationNULLs are flawed for many reasons Simple example: B OR NOT B is NULL if B is NULL Can consider missing data as free variables Problem is to efficiently determine if a formula is true for all possible values of the free variable<"0"0Missing Information-Current ProgressCatalogued all known issues requiring investigation Outlined solutions or literature for the lesser problems E.g. comparison of large values Devised formal semantics for type checking Tutorial D programs Elaborated on the problems requiring original research in the context of dependency Resolved perceived ambiguities in The Manifesto Detailed ideas for future development into a solution to the multiple assignment problem Completed a literature review on constraint checking techniques|mZ Z\Zm +  Z@.Project D Roadmap/Summing up Project D(Essentially about relieving the industry of the burdens that have been imposed by SQL implementations in the past 30 years We think that the relational model can be properly implemented without SQL s restrictions and ad hoc additions & but requires innovative research Project D is still in very early development However, some small successes already nr#rTr #K/    ! "012Pf 0N0   $(  $  # l ?u   p\@5Pk ( C ^y  # ly ?    <  c $޽h ? ̙33ZR___PPT102.]0G+D' = @B D' = @BA?%,( < +O%,( < ++V 0N0  xp`(     Zz ?   J6 @ @ @   Z ?`t   F2 >~> ~ ><  c $޽h ? ̙33ZR___PPT102.]0G+D' = @B D' = @BA?%,( < +O%,( < ++ 0N0  4,$(  $ $  Z( ?0   J6 @ @ @ $  Z4 _ж_ж ?Y   F2 >~> ~ >` $ c $A ?? L $ c $ ?< $ c $޽h ? ̙33ZR___PPT102.]0G+D' = @B D' = @BA?%,( < +O%,( < ++r  #__ c+Z"h4 7(4   \*Equation Equation.30,Microsoft Equat ՜.+,0   On-screen Show/' ArialTimes New Roman Courier NewSymbolDefault DesignDefault DesignMicrosoft Equation 3.0BDependency Problems for Future Database Systems: Ingres Project DResearch ProblemsResearch ProblemsDatabase RepresentationViews NotationConstraint Enforcement!Updates in the Presence of ViewsMaterialized ViewsMultiple Assignment*Multiple Assignment: Naive ImplementationMultiple AssignmentMultiple Assignment IdeaTransaction Repair7View Update = Transaction Repair + DisambiguationSemantic OptimizationNULLs are flawed for many reasons Simple example: B OR NOT B is NULL if B is NULL Can consider missing data as free variables Problem is to efficiently determine if a formula is true for all possible values of the free variableCurrent ProgressProject D RoadmapSumming up Project D  Fonts UsedDesign TemplateEmbedded OLE Servers Slide Titles&_.Adrian HudnottAdrian HudnottP0" d "#P #  Materialized Views,Materialized View: contents of a view cached to avoid re-calculation. Can be modelled using constraints CREATE TABLE supplier (City PRIMARY KEY REFERENCES supplier_city,... CREATE TABLE supplier_city (City PRIMARY KEY REFERENCES supplier); And vice versa: A constraint is a view that is always empty.Fhhh=hh=,  f Multiple AssignmentVAR Customers RELATION{Customer#,... VAR Accounts RELATION{Account#, Customer#,... CONSTRAINT Customers{Customer#} = Accounts{Customer#} INSERT Customers RELATION{TUPLE{Customer# 10,...}} , INSERT Accounts RELATION{TUPLE{Customer# 10,...}} ;^ +  $  $ ^+""     )Multiple Assignment: Naive Implementation**(TExample: X := Y, Y := X; Internal representation: atomic { Z := X; X := Y; Y := Z; }\2 2  Multiple Assignment  Multiple Assignment Idea Semantically optimize RHS expressions Place RHS expressions into canonical form and find subexpressions equal to other RHS expressions Build a dependency graph Depth first search to find cycles Break cycles by creating simulated copies Schedule and execute assignments "  Transaction RepairTransaction repair is modifying an update request so that it conforms with the constraints Compensating actions E.g. ON DELETE CASCADE Research on more advanced repairs Generates more than one repairLp"p" 6View Update = Transaction Repair + Disambiguation77 DELETE FROM supplier_city WHERE City =  London ; Transaction repair needed: DELETE FROM supplier WHERE city= London ; For more complex cases, disambiguation is needed Default values, rules, etc. 1rr*r1rrr1*1    Semantic OptimizationNULLs are flawed for many reasons Simple example: B OR NOT B is NULL if B is NULL Can consider missing data as free variables Problem is to efficiently determine if a formula is true for all possible values of the free variable<"0"0Missing Information-Current ProgressCatalogued all known issues requiring investigation Outlined solutions or literature for the lesser problems E.g. comparison of large values Devised formal semantics for type checking Tutorial D programs Elaborated on the problems requiring original research in the context of dependency Resolved perceived ambiguities in The Manifesto Detailed ideas for future development into a solution to the multiple assignment problem Completed a literature review on constraint checking techniques|mZ Z\Zm +  Z@.Project D Roadmap/Summing up Project D(Essentially about relieving the industry of the burdens that have been imposed by SQL implementations in the past 30 years We think that the relational model can be properly implemented without SQL s restrictions and ad hoc additions & but requires innovative research Project D is still in very early development However, some small successes already nr#rTr #K/    ! "012Pr#ih 4 7(4   \*Equation Equation.30,Microsoft Equation 3.0#Equation Equation.30,Microsoft Equation 3.0$Equation Equation.30,Microsoft Equation 3.0B&Equation Equation.30,Microsoft Equation 3.0'Equation Equation.30,Microsoft Equation 3.0 (Equation Equation.30,Microsoft Equation 3.0L)Equation Equation.30,Microsoft Equation 3.0@3Equation Equation.30,Microsoft Equation 3.0/ 00DArial Newmanx}ׯ0DTimes New Romanx}ׯ0 DCourier Newmanx}ׯ010DSymbol Newmanx}ׯ0 D .  @n?" d  @@`` XP8F*       !"#-.14v5:;=R$;{@fg%R$ X0"Dg=72$ݓhJ$j_z V'2$~le3NH?7m)2$`>~fӣi+2$%w8V(K&-2$qz+'= 02$WύK{_#Nw22$3:ggʋb42$f OR <tuple is the one above> supplier_city(C) :- supplier(SN, N, ST, C); (SN=s6, N=carter, ST=30, C=oxford).0d"0 dH0dP0" d "#P #  Materialized Views,Materialized View: contents of a view cached to avoid re-calculation. Can be modelled using constraints CREATE TABLE supplier (City PRIMARY KEY REFERENCES supplier_city,... CREATE TABLE supplier_city (City PRIMARY KEY REFERENCES supplier); And vice versa: A constraint is a view that is always empty.Fhhh=hh=,  f Multiple AssignmentVAR Customers RELATION{Customer#,... VAR Accounts RELATION{Account#, Customer#,... CONSTRAINT Customers{Customer#} = Accounts{Customer#} INSERT Customers RELATION{TUPLE{Customer# 10,...}} , INSERT Accounts RELATION{TUPLE{Customer# 10,...}} ;^ +  $  $ ^+""     )Multiple Assignment: Naive Implementation**(TExample: X := Y, Y := X; Internal representation: atomic { Z := X; X := Y; Y := Z; }\2 2  Multiple Assignment  Multiple Assignment Idea Semantically optimize RHS expressions Place RHS expressions into canonical form and find subexpressions equal to other RHS expressions Build a dependency graph Depth first search to find cycles Break cycles by creating simulated copies Schedule and execute assignments "  Transaction RepairTransaction repair is modifying an update request so that it conforms with the constraints Compensating actions E.g. ON DELETE CASCADE Research on more advanced repairs Generates more than one repairLp"p" 6View Update = Transaction Repair + Disambiguation77 DELETE FROM supplier_city WHERE City =  London ; Transaction repair needed: DELETE FROM supplier WHERE city= London ; For more complex cases, disambiguation is needed Default values, rules, etc. 1rr*r1rrr1*1    Semantic OptimizationNULLs are flawed for many reasons Simple example: B OR NOT B is NULL if B is NULL Can consider missing data as free variables Problem is to efficiently determine if a formula is true for all possible values of the free variable<"0"0Missing Information-Current ProgressCatalogued all known issues requiring investigation Outlined solutions or literature for the lesser problems E.g. comparison of large values Devised formal semantics for type checking Tutorial D programs Elaborated on the problems requiring original research in the context of dependency Resolved perceived ambiguities in The Manifesto Detailed ideas for future development into a solution to the multiple assignment problem Completed a literature review on constraint checking techniques|mZ Z\Zm +  Z@.Project D Roadmap/Summing up Project D(Essentially about relieving the industry of the burdens that have been imposed by SQL implementations in the past 30 years We think that the relational model can be properly implemented without SQL s restrictions and ad hoc additions & but requires innovative research Project D is still in very early development However, some small successes already nr#rTr #K/    ! "012PV 0N0  xpp(     ZD ?   J6 @ @ @   ZP ?`  F2 >~> ~ ><  c $޽h ? ̙33ZR___PPT102.]0G+D' = @B D' = @BA?%,( < +O%,( < ++r>;4 7(4   \*Equation Equation.30,Microsoft Equation 3.0#Equation Equation.30,Microsoft Equation 3.0$Equation Equation.30,Microsoft Equation 3.0B&Equation Equation.30,Microsoft Equation 3.0'Equation Equation.30,Microsoft Equation 3.0 (Equation Equation.30,Microsoft Equation 3.0L)Equation Equation.30,Microsoft Equation 3.0@3Equation Equation.30,Microsoft Equation 3.0/ 00DArial Newmanx}ׯ0DTimes New Romanx}ׯ0 DCourier Newmanx}ׯ010DSymbol Newmanx}ׯ0 D .  @n?" d  @@`` XP8F*       !"#-.14v5:;=R$;{@fg%R$ X0"Dg=72$ݓhJ$j_z V'2$~le3NH?7m)2$`>~fӣi+2$%w8V(K&-2$qz+'= 02$WύK{_#Nw22$3:ggʋb42$f OR <tuple is the one above> suppli     er_city(C) :- supplier(SN, N, ST, C); (SN=s6, N=carter, ST=30, C=oxford).0d"0 dH0dP0" d "#P #  Materialized Views,Materialized View: contents of a view cached to avoid re-calculation. Can be modelled using constraints CREATE TABLE supplier (City PRIMARY KEY REFERENCES supplier_city,... CREATE TABLE supplier_city (City PRIMARY KEY REFERENCES supplier); And vice versa: A constraint is a view that is always empty.Fhhh=hh=,  f Multiple AssignmentVAR Customers RELATION{Customer#,... VAR Accounts RELATION{Account#, Customer#,... CONSTRAINT Customers{Customer#} = Accounts{Customer#} INSERT Customers RELATION{TUPLE{Customer# 10,...}} , INSERT Accounts RELATION{TUPLE{Customer# 10,...}} ;^ +  $  $ ^+""     )Multiple Assignment: Naive Implementation**(TExample: X := Y, Y := X; Internal representation: atomic { Z := X; X := Y; Y := Z; }\2 2  Multiple Assignment  Multiple Assignment Idea Semantically optimize RHS expressions Place RHS expressions into canonical form and find subexpressions equal to other RHS expressions Build a dependency graph Depth first search to find cycles Break cycles by creating simulated copies Schedule and execute assignments "  Transaction RepairTransaction repair is modifying an update request so that it conforms with the constraints Compensating actions E.g. ON DELETE CASCADE Research on more advanced repairs Generates more than one repairLp"p" 6View Update = Transaction Repair + Disambiguation77 DELETE FROM supplier_city WHERE City =  London ; Transaction repair needed: DELETE FROM supplier WHERE city= London ; For more complex cases, disambiguation is needed Default values, rules, etc. 1rr*r1rrr1*1    Semantic OptimizationNULLs are flawed for many reasons Simple example: B OR NOT B is NULL if B is NULL Can consider missing data as free variables Problem is to efficiently determine if a formula is true for all possible values of the free variable<"0"0Missing Information-Current ProgressCatalogued all known issues requiring investigation Outlined solutions or literature for the lesser problems E.g. comparison of large values Devised formal semantics for type checking Tutorial D programs Elaborated on the problems requiring original research in the context of dependency Resolved perceived ambiguities in The Manifesto Detailed ideas for future development into a solution to the multiple assignment problem Completed a literature review on constraint checking techniques|mZ Z\Zm +  Z@.Project D Roadmap/Summing up Project D(Essentially about relieving the industry of the burdens that have been imposed by SQL implementations in the past 30 years We think that the relational model can be properly implemented without SQL s restrictions and ad hoc additions & but requires innovative research Project D is still in very early development However, some small successes already nr#rTr #K/    ! "012P 0 sk@!u(  ~  s *4   E `_  u #"."(121212`    <HC?C8 _ B:2___PPT9  T Early 2012   @`  <M?8 C_ B:2___PPT9  XProduct released @`&  <8V?C 8 B:2___PPT9  hMid  Late 2011 @`  <_? C8 B:2___PPT9  \First complete build @`$  <i?C B:2___PPT9  fApr  Sep 2010 @`  <r?C B:2___PPT9  WThesis write-up @`.   <h|?CB:2___PPT9  p&Aug 2009  Mar 2010 @`   <?CB:2___PPT9  [Development Phase 2 @`$   <p?CB:2___PPT9  fFeb  Aug 2009 @`   <?CB:2___PPT9  [Development Phase 1 @`.   <?CuB:2___PPT9  p&Oct 2008  Jan 2009 @`)  <,?uCB:2___PPT9  k#Address multiple assignment problem$$ @`  <?C`uB:2___PPT9  U Summer 2008   @`6  <p?`CuB:2___PPT9  x0Further literature review & code familiarization11 @`ZB  s *o ?``ZB  s *o ?_ _ `B  0o ?`u`B  0o ?`u`B e 0o ?u`B f 0o ?u`B g 0o ?`B h 0o ?`B i 0o ?`B j 0o ?`B k 0o ? `B l 0o ? `B m 0o ? 8 `B n 0o ? 8 `B o 0o ?8 _ `B p 0o ?8 _ H  0޽h ? ̙3380___PPT10.۔ r..4 Root EntrydO)P0IPictures9Current UserJSummaryInformation(/D      <H_AdHocReviewCycleID_NewReviewCycle_EmailSubject _AuthorEmail_AuthorEmailDisplayName i`Slides and Photos for WPCCS08A.C.Hudnott@warwick.ac.ukHudnott, AdrianPowerPoint Document(/DocumentSummaryInformation8D՜.+,D՜.+,T   On-screen Show/' ArialTimes New Roman Courier NewSymbolDefault DesignDefault DesignMicrosoft Equation 3.0BDependency Problems for Future Database Systems: Ingres Project DResearch ProblemsResearch ProblemsDatabase RepresentationViews NotationConstraint Enforcement!Updates in the Presence of ViewsMaterialized ViewsMultiple Assignment*Multiple Assignment: Naive ImplementationMultiple AssignmentMultiple Assignment IdeaTransaction Repair7View Update = Transaction Repair + DisambiguationSemantic OptimizationNULLs are flawed for many reasons Simple example: B OR NOT B is NULL if B is NULL Can consider missing data as free variables Problem is to efficiently determine if a formula is true for all possible values of the free variableCurrent ProgressProject D RoadmapSumming up Project D  Fonts UsedDesign TemplateEmbedded OLE Servers Sli&_.Adrian HudnottAdrian Hudnottde TitlesH$,4