%PDF-1.3 % ReportLab Generated PDF document http://www.reportlab.com 1 0 obj << /F1 2 0 R /F2+0 7 0 R >> endobj 2 0 obj << /BaseFont /Helvetica /Encoding /WinAnsiEncoding /Name /F1 /Subtype /Type1 /Type /Font >> endobj 3 0 obj << /Contents 13 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 12 0 R /Resources << /Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] >> /Rotate 0 /Trans << >> /Type /Page >> endobj 4 0 obj << /Filter [ /FlateDecode ] /Length 1136 >> stream xmjF{?/[J4?{@hd Eh Jjh8yjN@Š<3f4ڞty}=<.|.oò<Λ>l?=/myr~zoZ?|]?? ~ys\OrgyYηmyxu/}l;\esu1>ljٶ[ܯs?#5;f \B }9˚ӜG䊾mÚGY3}s33{H'dkϻoW7ޫ0;s9קߺؐfd{?M#ӈy3 XhzeCP: sHXq`ʆʘK(XP+9 gi)&eaQ?G#Q?G#Q?G,(?Ͻ'I?O'I?O'? $?ɟO' $?ɟg,?˟g,?"˟g,?=w9˟gM~7M~7M~7M~7M~7M~7M~7M~7]~.;.;.?;.򳆻5VX?~33q Kb͜09uca-zޱ/i|c$֡0 ľVX*z> {_: i3&^?t=3g_mFaq sG*x^eΗyv?ts~q\bm֐m }s'ַa,O?ֿuz޸qg֖Cmh͹ܫ9b j|.MqLg66ҶcnXFso4g;kR鏬z䄳NOlu=ȃhdyy~mGendstream endobj 5 0 obj << /Filter [ /FlateDecode ] /Length 29122 /Length1 44344 >> stream xw]Օ/InNuC[u%!LNג 6cv@v v eܖQ¢EGLϹ%0fSoFi.Ģɵ grU7|dC0,߸yɞ@9?:VA~>qGxI8B\;G+ppLͷE\8 w'6\+G<зτ{Gnbzr#7\.{aԆ7G*Bw5>)ڃpY8ގ0 oE<2ۻw7`~+K/CM}=:]8Oހ*𗢽YD$$#ѐ xl yG Q%Q QeQQQ TFTE5ԉP7AQ?@h 4hC "43w Z3rVUh5ZFsZ4>C Ѕ"t1].C+P }CGЕ*t5}} ]CGףO'46MF݄nF[mvt3N_OϠϢϡt<%+Etڊ} }ݏ@ko7#Q?oo m$z }hztDnEϢ}9]=}BA=  ~>^.KpgeO-x࣋cC^; -_+C ?^Ix"m] z֜w3S¥1سG~@ƐW PFNU+6zDiZQR^p͕kmÞP "Ca$T'Dvz*טA"{}y0L} Q;1K$K508,Ij&Yc geOO$)ѺDٯ]M[K ҢFd PA#RliR)k#EZ~J3D.l Ly:oyV麂Lwd"/<+cIWJ)癐;tkaulbJp"8RK Дi #=:{FAQ)0F4w:An猘X ٔa?d5&]UbTE4\u%(5l-\dQNS+h(*#RŎQp68c~G_0B!:x9?X ]\ Ns"pCbKGUW;Er!QmJ( \ aAcQX  4bj[552#@׀cL4.tPOJ+ Y=bȫ[M۫'UµLj!.SlDqןQfjg\@aAz y1)W54R8;];-zYȘ*)l8 bFP'̓j?4SiĐBĖ驤b+he :x˙py-s-ƙ#D:lԕZd6Bhe*%Om׶p*ܨs$<(<W3">Ǚadaeځ)zh'.e_.Hq!y[dz:𛜭>,ÙnT^JbmHYqcmu&2jĽJӬ#@ s6wDX91BT +1$8&5 G@N$T*Xo$iQof,9+DU{(BJnjCvY@e5ch"'8BRr/cTL-QuzMÒ& j).Hh҃UY.Y"=DO\&ƚsƗY5pJw$.g-aiE94ȹ@kʼ/2*׸Gsy`8bKOơFcAL&+ ~.dKvsA<9L& aזjy.ymTSJLU.ؚOdق]_͌ 5E6%cL@\6w!n 7ħ剱o=d5> (IJ_f-A}R2_X'8"{VqFk_Xj%(^cnj.G?)R2k tzc76 |;];3p;,i ?/)[=Cd3,,/I2YAXPpP\OcݏB/DYp*7;-Ou/>q!Mhd7%-!ˋ|D<ߥ5=4;^T5GTmjh@8͊ Է&:Y ə !'m6L4```k8h &QGR|^MM%$JhD`L(q%l!~8 .vuV5%-%J@+"W#*J% s00VHtSXM^hcuz.yii"*&m vEE0xCv =Cc<p=ݩ!`a$\3m !jO^O[GuNߐ/ܳdcY:^?B֯Р]K#ç'Q`aD #8:e,(DkD1FϐQiJ>2@XٽxjHGG^?&ƏNBy x0=m~q"pم'9.,7g9Ͱݒ{U|5NVDͽ84gsVsiR =7QXVe=eyaJ:4ymi^w2$ 䛉d\=px^och"{l o3xɧ,ZH3K g|" y]}|__O3 G,cף[ZLW͉V[,C_y_xy2x|?O<<| ]ax/w$ 9Ȃ#,(40+$h/cϫ:pGvd/VDھ{Zpqϔr(\mXЁ֌y$Z6 M8xp8-;k nyF>c7ѩRtL9AzT~0"%+ jC2<" ɖDyE Z$DlmGDN8e45[vŢ!3( vz;ة ey[o5_%Ӈ !w|uɡ}C/ d,+W]_:QpDX"㐎y ]8Y<Cx16A @Yڅ cX2 hH#ab8~5C3pQI57#]j;_%FV%V!j b|J5ŤgYO~°}ۭکĵ Dɏwީ?rAK9Xi^|uQOxakÇG~5jmg̞39諭)ƾZy͖-mܽ7%"zgu -dLȽ7Ii4%%MKHA.Éb@b;@;YܗїooZ.)02?XңK[:_ >((m%UJꎣK?qf&!V}|c|f|KV0Km֦@`ΨBFB[/)';*Ɯ!Ã50Kx^Ȋ]$7IL:FB}vmL''./h%G?*!{@\_ ,}Fg&Ȩ~o'Pm"JɲCNԈkiom^sH vG!ܲbut@ Z!>es> ln4cX2 E+<<<,<<+ %~9*>:=csFk:D?cXGs}futl58!EUEgiV4[L_h{ Nc %-0#sfLІ=8 ~hh 簁]~Biq*a9!W ;)rT1:IL@#$-74Lt2B@0OK(rfh8 x1:3@-BFd0U"*"YJNQ7 /줜FfAf듛&/L~-KwZ؋]\>KɦOĞ(p1 !ܣ9&g쥢@Z i@,HC&4-K򔸁TőNHi'8ib?]ΦL{ ,d ݄ˍpNo6'!d|N DҦi4~-ggb.d7%wfK$}Fɣ6J/i(X=yߛGZo‡)xN5`90LKU\enѸ oeg]_ n6Y08x5 fSuay=a`26އ2.MzY#L'[hp(b ttٷKBZx,X븋Ez[ͩ=K0o3ć$xE[Wlⳙ|k707Wlf>.TTE,'E5LK!0+t]^ѓz ~tjԀ)Uxw[7z^eJv<L1 2Qv=dnۓ6KSh)ʌ``HխS}2z?)GXaj/k $ickh,LZV(O߱TOպ*' 6*Mm~COp{jj/Ct;ۂ[;JBWohמ(W3WW9ݩimtH0XXL@!]6KADݪNo,iҎYHQ 4XԇԣmCPݠT5" 2d&l7MGA B ߴ-30.d4c0Ygxv?Ha&&JWC9K1U3G8Т]GX-M{oxGIXnD{na~flʸi1Yeh\5nn{u{ m}.Ms|๧Y.&7Zw [GvRX/L ,i.j[ϼOFƥAɲ7R~,ڀvљMć 3I)j ͥGBF@b^*pE2nƴE0_ 8_4mqǁȎ̯lDxÆ4浅Y :r-Lڢ7+L^VwJ~[|PyBQ{ @&v /B] WK;7^z+e;LJ>v~uאj4\)mGy2KJuC `He,˱BϜl;GvMLձeHx9#lYn׬F2͎(4HtdCe==WN8T Y63YFs8 ;*M'vpL˧eҲK/J̰^ox˘p.ًRg'ؾZѣYZo]ӇRf0z#ufm6UZV MňVV jE-bu rj"`id] *@w.4Fw5%4(E?`D5eؙ5I+HxYWV!p] p4!,ǥZ[&b%[Q3'Tg xhGT_bl1^Ⱦ6Kjjhf^IMigqhCz4 ڈdL }/F;X9Ш,70YM7L.zQY:&6`|Eٿا-nӺNZ-Jepըݜ29uYZ}B>w~L (Pxneb( nBmŴ k<6~?|{Zf16 J)gƩ7m@mb"Mըyp/'g @u3I6!Ins3DFLo_31]AJ6!P-j WǤ]ҏ_HoJ gO *[MCLr:b",U%K?41}N}ӅR<3 @ޕbz+<0W,w"l۶,^PC1VT_w@2;p~Qg}B5Kٱsx:s'rl3m_ǝSp\@:"~v-7W(up3-a͡[_f ҷov3K3ϗ{VVޮ;uߒ"Z>LL&DwD-9+~u@-UlZ-l-vINA{ӝt'ڹ NtrY؁ QͽulJP9cSK'<6SJm% % O AMZE[6S?aӨ=w7u!CBpd-5ĦD`9"vYz{X*$do%m䤄~(Pkh2 ~*/sF49)BNUWeBG߯λ<,w/<Q;ivXKB1raZow@"*0%Ju#>\q19`QQPY dybp|ER" ]ABB0V`Ouv%@ɗGe<ƶ }o4ʆ S),qhhxUݤ3P+iWV`G,;ﷱMwknޣM'x918` }O M:nh旇>8 mh =<-jovjQ{kͬZo7fP3,qG!tmgUߔd;S[O"bc]ko8pР`2=|X=\iK֮O=#x4#Mԭ< !SV{C6֑v~`mx%G>Ur|3LB-۸_*t cn^v4ѱk `^V_yaIY5]Uz6W>.^^xoŧ/U]Q*Fz//[xo BsD PD&PXcXbP!̑ZVќm̓Ŧj]3Imלtu sOxMR,Z|MV|sBDz 1ҨfO6sC$bwtsE焾(0|#\7|%HVce$\!LcSϚZE!KoK|FU@/21Z֠\Y'"~fEF4} +2H _e:̳sgʲv`wXYFݭ]vSoFP{#mW'UvzT8K-+0Sm3MqE "XHTNyH 8լ(r.sjcV2ewXNƯzO㾐z C=O}!x]ݞ Kzp_ 6ۛ:߬M;"AF,iK#D13zɗKZPYU;C\r]L7I&ɖ:\:Ò3iE]|.-B֐Qe \)򁥘ӂ> )76ݒc8 D([ YNH´,"vaN3gUL3}oV %'7~;[>K>*\Jno o|-]|^*V:G+B'TȘ2ZY!\(\(_\Z|+EUj z{*\\\_*Sx}{{g<AD8;E$IRCT;y^UiHn1JD&TUY/0$yR@gey5S܊ESl 僛U*I&zry@pHutz41Xņp6{1'hoODdy^f(sqJ0O! THY5CV48|_aŒQ2vkss]Dc9׺dͪ[]Nɪǭa-@u~p[|75Qt>R:wndOwU^ƝѵG`g;U R46ݣiKbX,"u~*y6|. 2HXc`fZ0!0iCAcG9K2쌩@~䋠& YFkX-t,>GHs@=`b Rr }&Mg5ɴtx'ץ3y#[Eld-xU;z|]Gсx+Ѭ% :*ST}\+\o(-7ޟ8MѰLC1L;9rS>,tޑI's}o8}(>>G|^<,ittt6/&Tbф;5Xih'qh4m~zkSl雎G  ZmcK7l 'd2^ 'CaH|T7:ѥKYIT#~!Q=Uf}Z\?xp|@V Yjs$$FWυ@_XP*;w>n@ۑ* C.7!D?ѫw2=t0~%/>Lϛ']9mo0+ssA5'Qff(1`艔EA:آ$`<^M=P9Oyݿ*:p^ǻHdtYBkٗG"=%q=h@yݯѷ]yjmh3TE;j)рZAݯ㻣INJGݕ*x=cxӁۏl&<}O1S[s<3Yy:d&V"& qkQ<7 fƷʹ6)G) 7tڨ ˳gܶP6 t1x@dԩ*; (J?rх6n?7ͽY=q\y>}%PbzJ9,GbO9Ң#HܥrѤi{l#f  D0qޘ2>m|OvCVY)@{4L ] )xOg'h+>G޺{:A8J>|L1n/m ;goٺm;]v}g}ݏt?nb?Zv_welsmexrV-Y zu6/c%=Zg6:֢;()JcE ) /?yoη:j \/-عy`ΒuK #. *D偤ݎ|O8qS[m"#R-8yvhGHS0t>UyqiSJTĒ]ȘYC]Ðl7s|T&%RscH @Ufuu/w+Oʽ{;/_])ޞ9efUT 2 = ;DSsޠ=1Z;a#7[c{9&7CB PL&C'7U6@ND²Dvkqe uƟHCr PWTHдNr=;0q}E7oK[0IB]h6^l;EƉD Z˅i_6-Ftt7nEKp]6E%1V-}y{3}?I9o%sӘf: D|#A rrC5I=k۶% Np ZeӾ5Κgswi T$m-kYRGNPukY*['yr!*+2]M!Lc}9JASPr(:F%,P7|[!c*ND[`;rAą4w&/ht%ϤoϬL8oh.9G<Pr/je."\#vv>"eO^ϋ#c|6DYov^;~#w&hCO'[hwh}^KjLCۜ:'/"Q)L!hjAt__ jz?ZwέgD< =@ SWC$H#mU&rA/0@նbBU,,h9d/&vwtG"Krk i5 S/־֡}>`Q9< 2;kWC}5Uc*j;CINM-KEPMzM&#t퇃hP4r^;i 8UF`:ֺ~jni]BLZf踙24Q$Izjs݇4/Z%PѕXхDdgP@jӯ}I6ɑВDr-MXy_\ijz-M*W=zEŕ><3){rzzM_ѿ+?_W>|ByZ7Mh *%mņh SvϦ-NJm[zABb94.x3Gzo.٭ )&fbaH-[o߶͕z|#b=&9TK+WM~d,S)P (lf  -4"-I{vb!'MgTC}3 Ip?y. =%ۆ xbLu(u,Fu|u ls%sIz~k#{vɮS M3:]Yz!dl4X}eŖmA?eCT/h!s;&|R6-m$n1^鴲8IZjس۩žA"\W+\9q")7fn {\ .KcqAۢvj░ >})DQOg=+ں@O8 3Q 1؉FIs< 7iqCP5-7h U!#AAu">WY>gV.wI31AB.y9*ľ\Q@ 2gjt 3\Tq*D |:AX%eىK[ʧWl:*F*/ā4V/2 UĬ%'d<)'7JOႯjaj%;YH11h)7{=(U/&Ό68VKpQ5Z w}T+#Dea:UHc3a=_>ˇBnp,316;.io{7p+vWD/LJj0H{ȕ! @f:ZJf^hy<h^a{ * CLjrUs̵jea `eJH"[#jG56\fa[URfi2Y5\\]ҹt6<fh|9t0t_cĭ-X'l/[q(ﵾ$,EH[VAqee5 Z)*  'B^|VK8x! uaǡ:V1`M}")tذ;"o┘OqT!H% <&RNVF"t4w=LBhƼ1LʘB~ZyCC-Z6Pm*/Civ^Ӷ0zzdV-6z2bRKkiD85V\8n3nyr2+*dZh,ɂ/( V:|pUN~IuNhgi|yj 1Ѧ"u^Sst|NGUKcc;#w &OT$u=ژ'q~))XpODBCB-б<1t]q3չ'e>|xCVk kIE{&KN{vC[=7 b7ݔ'R`( e\:I1;G.'c =q:vŸTXjN\ݳ;m&*6SnD=sō<@8%׭\ E-A y$ &fSS<娨GC3`ߠxޔ=6+`ǻ%_g<O$ =Y>Pjkkzړ,ʞ9,$ 6H:+D\)De2WD+V  /dUʖ)horef ڡhz懂r (>rz3( jP럸T,?s(21I,= ^չ7,"@[.Iw:Cz<#gC;Ȩ?B-è|G [ Kא EAkiyf.0( a40) v&$TR]Ю|Y|-;B Դel: kN3` CYtƒ}AθEtB(sLfZ-?6RfShisVPf5z#`(K V޺ U5éUF.yD(VfVbaa>'Q`k,?S蕝뛠74ŸãEBݐ:͑HA X`^^=C9nry;rW~oN/YQ^z$ k@"q7$o޵w`~!yܨʩ!qo{ 8oGMhxK^/A|gP4-\d;m'H\GLSq }vr~Q&+;=ۢ&#}(CD|${bBv3|g#lWv0K ol'QJdIbxj!d ̎Pk`{Q=7KTPfQ4l$1 *cMP#YFovQC ѵ-ŵZ. -/^"qb>Jqb xa?( TՠT&VVi ⻖"Wc5 3̽rtZD m4zW9f%sӥi#+JJupګ: ]ȟuVx=zZ,WV0Ď ovcg u1^ԁz |06 M8z\a*nͱB6 smDvҀtvs:1=ZSOl-|%p4͔fb0;p P|Ͷux@(Xvs\ =-V:r5+8je5F c wzAOVO:ahb* ,Y'dRXl.M}A$b׺Xϡ'h~܅?љ'/OqnkxƸky:շ['řf3lklgI >Rē2ʢ՚i$R8 j\VzyCOƻ&<3CFJx``)pp/}cO 6 1i~=,(B>f:P1j;wSE^b%dW=#(ەqlT֬pa%\ aBMCJic^ԟ j~Lj<|5af1𣏕G(ǣ[ļ.~6 %{>5;*}E%-?/dbe@[~*6~^7c3Qۮsnl݊2髅 T񻙿P/fpyi6eW7%$>K3@&4 >gR 6d-*Q hcUQ/&zhA!k5۴7ZC^F4ZAZhhMl'KsQ36L:M|yiLoC8W*Rq{=Hu\xgU>ۥu#D ֜fZ ;#YtL%ь ɉպ`_ۗ[tČ .8ԵQyw \~g_^ Qv4Y?e>F456MG/1CNż?"SS&5+/MA%{ˉ+Cc늷(pb![JB-;Ugu;lhp [lFhUBы[4Qe8zkvwoMvalAj0wXGza6WZBZ8C_UB@H暋vX Ư 7;E1E7 9&֞U(>MJ ?^ڟ]Z;KbKGxQ- 5u7jجvO`l^YԔDũ͹8,8kf@-ElqgyADGO=؏'sK礿d O<,V&5[rjBt,%Zղ4͎vgfőegئ|dz|+K=ԸF=`htcff,f< 2l6l] ? τOƷƿ}0o-'TQ)W9PYu_۵ԧy1{9JkuuSí϶kܾΙ{N`hz27rh0='2ͩ[14om/Α? .˅‡/2.Z裋[ߵޥ{~m/6q͗o[~u`woweٱwww.]]]z~5?.]:x|ϱ=|&;A7 }.+H98VR9Z'}'5 }s$K5ʚ `:K54KHT[4?eOfi&_YVa~'K5tHS%Y,k5梨Twm>}]gNp;\֛3o9u-\M?u_eu7M\~ݙ7:}Kmbxt'k%_0Xtݩן#] W6K[3)t;]!y)XlPSN?9 1LsCͰcng.3t $0H N՛nk?`R)"p/L@ m,w@v aPQ, vv<j[g/z Hw;=O!$[BH)"& %NSYbq*S,N8ET endstream endobj 6 0 obj << /Ascent 859.375 /CapHeight 859.375 /Descent -140.625 /Flags 4 /FontBBox [ 0 -140.625 996.0938 855.4688 ] /FontFile2 5 0 R /FontName /AAAAAA+SimSun-0 /ItalicAngle 0 /MissingWidth 1000 /StemV 87 /Type /FontDescriptor >> endobj 7 0 obj << /BaseFont /AAAAAA+SimSun-0 /FirstChar 0 /FontDescriptor 6 0 R /LastChar 195 /Name /F2+0 /Subtype /TrueType /ToUnicode 4 0 R /Type /Font /Widths [ 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 ] >> endobj 8 0 obj << /Outlines 10 0 R /PageMode /UseNone /Pages 12 0 R /Type /Catalog >> endobj 9 0 obj << /Author (anonymous) /CreationDate (D:20250201222746+08'00') /Creator (ReportLab PDF Library - www.reportlab.com) /Keywords () /ModDate (D:20250201222746+08'00') /Producer (ReportLab PDF Library - www.reportlab.com) /Subject (unspecified) /Title (untitled) /Trapped /False >> endobj 10 0 obj << /Count 1 /First 11 0 R /Last 11 0 R /Type /Outlines >> endobj 11 0 obj << /Dest [ 3 0 R /Fit ] /Parent 10 0 R /Title (my book) >> endobj 12 0 obj << /Count 1 /Kids [ 3 0 R ] /Type /Pages >> endobj 13 0 obj << /Filter [ /ASCII85Decode /FlateDecode ] /Length 602 >> stream Gat=(bAJ7R%(taRFEAF/Q_Z$Lh.)$0eDhVEP,&DSLZ&4j@.`nLP_?tLinZFF`Xdor)%G]h5^79o^YX_7D%-@R%P2&$%BQ+TnRqV\Sme0oWC6,oZm"(j]4"eP@GISK0!I?\RrF_-D)Dn[+@$&D83dCG4H0#Cr:5`7M1XhJ[/[W:/JA,!"uV%%6-Z(b4@?0mZo4%s=rOe.@f$WAJV:hPfQ$;;UjQ9"3f:"hZD4s_cm!7Yi<\JkF-/aaPN?5@%&],rV@[SW,(Su1gE>DlLk#Oa,pG!<`Q6u%d=s$f-u,D]5/V0E8PLELPI?`g/KesbIC](gQYl+(0Y;sYt,'YLI=/=I"'Rd8)GWgi'h,]"imVq;d8W3(S,\`h6P8rL/Z'%A\%q+-6Bp.pKUM!$Us2Z*I%n#q.h3#oO,]?B$Jc(FEM\*^AB]8-C;c2R;%Z!V-?UeKTV^O;Wtd0O(s`("n5`\e/,\]#H$b?+]81BH"pCl$'Z2#D4S1VOY)1rl"QbW-lu0Fcei*ZW2N;8qXh=!`Bgendstream endobj xref 0 14 0000000000 65535 f 0000000073 00000 n 0000000116 00000 n 0000000223 00000 n 0000000428 00000 n 0000001640 00000 n 0000030854 00000 n 0000031093 00000 n 0000032206 00000 n 0000032292 00000 n 0000032588 00000 n 0000032662 00000 n 0000032737 00000 n 0000032797 00000 n trailer << /ID [<4bfc061f7c9dd5cfabae00059014e75f><4bfc061f7c9dd5cfabae00059014e75f>] % ReportLab generated PDF document -- digest (http://www.reportlab.com) /Info 9 0 R /Root 8 0 R /Size 14 >> startxref 33490 %%EOF