%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 1059 >> stream xmjHཟ[!P%b~ m%c8qy9'@3cTTRݪap>֛~:zyx:>eYm?nuuw|]?ֿ4~<^Ͽu6^t~se>~}_ؿOwe^G~^eݐWӹP?tgl-%%k*rZ#gy@%[[<n9i _r?>w[ώyDqb?r hc'S@ic {Fdc0mq]@߆>{:+'_@߰N6l3ArDN 9+gdSF(]ّ2=ؔ1>qP3n1qq2'Nʸ$?ɟO' $?ɟO' $?ɟO'$?ɟO'Y ?ßg3Y ?ßg3Y~{Y ?ßgY ?o&o&o&o&o&o&oo_/ E_/9O":V/ E_/Y]~ew~w~5w]~w]~w]~w]~w]~~nqmeh_m8WcWaoV̑ZTԁu~6[ݱ󝩣l4 _fPO[ax/= 5lM~O =i)\Kp/=ϫusij\C5q^7εǖϴq_8e|Fٶo޸:dvߟGCxNϴ;l۝yK^pY$#uendstream endobj 5 0 obj << /Filter [ /FlateDecode ] /Length 27828 /Length1 42248 >> stream xyՕ/xo܈[[UfY{*%!! %6 X%! 76flB;‹[f1Pnlab? ~oFsndTt||3-2{~(!]WW~ G{7\6__!< ﻮز9O;{qO]}êom[֏߾, ?Ѓo_seWw#k`v o.e7\qYs#].e[oo솫}>op'wS>]x+`.Z`cD2Щ%/[( tQԆ؛G !ovG9#WET8GG26r<(B D)FE9GTD%R;* @ uԋP40A14-@h!Z&~%h): -ChZVsй>>>FϢ{ї}h+;et?*z=BoooG6mwwѣ18z}=迠'vN |o8y E5̀s $Uw?3o\+ ^N?!v 1"r05 smpC_MwJ 2~M'4 hPHD -VOi8:ZhO ̋r_TLV~٥ԋzXLfK):goO("D%H8wTݷ=9\m?O!.lj,rb+13yb|UtA|lcMX?Vb$;Vȥ}\y'W AmMtyER\N"IxLQ4 &:?F 7_uYy+DMRA۹|D;wX aMn1kct9 :EԐ--Ђ/>rjI͊_+Njfe("a.1"H;ρCIcPg& 7Ė=-4zNCZM]*f /'(G̚xkL,[7\caRrlV]KSVE|HK زF#7B,+gH6ߊ8' Q@,HX. 6vm[qx!,h/ 2Z X6'4&:]+jCry0WGFFM^YZ:sCp:pe1QSկRrkJt I% 0id&Bf+8 MȂ{uf _ w̼Td0au+lOBԢma-M2w׫f]w?131q]#XJ==4d&8_@F5w#7el@ Q.ta%Tsu#xv~I z%r":fߝ>'LsԊe֩DY9[YDȁ[ hg:(spִm9y̤FPw)M)_yP%G7`clm? ]3v_PJ#-(-/UUv~'n`vZ-C7h)Dl jxulow. 29xPi5{ k<"iy )+K$EZUMTRyɔڤW%^JM{xQE[9Z5LCex5)R%ڕt".m⹆aYybh鵖RCqjIH$)DRqCѵ]#ek* ! ῁8˲^m[6:JGZ &\bʛ$r* *2-Dۄt<ʩNdPLln=RYǒPv$KtHk`x_S1/PSH=DuB]]T=bVEV()ՖUz7vq!ƛK߫se$TK?w+\$UhYY Zg eΛؐSje&zf&5ӓ&ЩPzCJac7\K4~!&k⍤=gݏ{T_X4_s:z*)Uuh4Q[W_5c$we 2d~tH@bAJ\4$^g+2^bm6NL7;:O_!4GjX^h=c KRajH65&e ,[T˖ut|9f-8NF(q  q$vŠE$Zt ZS T 쩅-h8QPa, 1'6ˆ\Za*USYYdîIFT wdH )oޘ؟~Q;ױc* /,iqf,[y4WɅ}h45 ph 7^-6A ?SS ۪n,}. ΂ݿqEVPfƱߋjֱaVrʹ \ TDրֵ/ h6v\@NЧ@C[34p6}-yĤS*…veg$k7XBe7c\o^lŜ*6tqH6 RI+KR,',猼^}]RCP$HڐY[" ,扢[kJe֮٠jq$0)pS1B̔guْh \me9wM)akl49n5njЧ^̻, ׻y t&>'5VHJj<3·Z;,9wi9>5FDѓ@s1fMb4}[v3Lf+֖/%E{DSQ^܁{i_U֞^vۙHH5uFC:R̖b?dEɸTS.$D]:8S-\I 9!~DlJK9!/X%3K GhH/O4aȗxw JoG]F |,GXbmhTby, ==ȒXK82 Asr39gE% <(IQq ;}4-=LEy6]0,'2 7,47vӎk:t,>?Dݿ$U4Sq}Բ.`~cB\7t\!ݬhI_k4hVekߞ͋IJ5O-,u Z# \G&HH*H􋦪ecu-)zTN77^^ɾ-P&k݇u3o'm#رAJ*O6tLzW"a:DMgrN)%M}RIꉤ"_&".vX` ppGp*O@; !bDswe 8'߁>Gyh>/v=x(|+=T~`kOO 牧g=?p~qakۙ'.D!=;lRIas30JP>l쾯 eGanL'}>;ޥr0|>ؘ6׶vB981K aidS^0,ƇJ%?ndU*^2h( VJhʦOEAeW5-b} 9qUY).6fs(P2qNAOo?U!ۗ ; _}3V7#+HHա[T׆? C/ciZXѿj"⡏t w(j_عq5X!xp@/-Vc` N,VwoؾVw=q4'`|8q1Ö3q٫V[57tG&6xVjYQJG T!UWg 8^fDk{$3;v~V]d_I>XyasjR92|d7oo҇{9rnipvwkws;Eo+ MΎC,~&SvuyR^/OwӲ㐇pbG*,s;N?WW<+]rf.-~%ǖa Įci+XtQ<Txg6nfahTg 6g'cp+>ax:df!@G*b_jAgTVf'fry DL@UA骠IԆ0u;Y6-CTxե"$AyUH/:YtCjk&%PѬusb ^rEÚ/ !E}0S28;uQACGnB~;ՄJlRI@$(?h]ٵGS( x!h[4֐ROԙ&l%BTF#!1ύ%w+<>=,>=- $aRϫkRc㡷wnPbqSqՂ9 R p/ɱ\~,!Dl-C6܂FR8 \P1+ ,J|mzmk :aMDnd͌Gڨ6XoDk4 ZXZ흆=Aʬa4(=*u^$DsZM0&u_.F7gQplSU~f"mXn^ۆw5yQ=-.r@3eN~"RܞiI LEjb4Yח@+GE*sR -qGx}c+]]~Txƻ}Ty]^V.񰰀.PeJJb p\ar@>ৱߜ49ЈV֙sV 5L۲l& 2']]*} q;P-͛O1$n )f0JN6q3Ч;`egv+-\JPȚxɭoܔ>S`z6;q%S8umç& dSO@_7P10UG%*/Q%tJcCʲ,-o_r);?quI%7M'Ar/u@+\.ͥd|'_"p'8M"vsqz5-}r?X`,mlZ1fl=~K67Ж 8::̍I' mEWlT-* !+xݔRyed%$_j.13p}U?ottg՟uʏǹG';)} ~@FюeЅnMsle H*`dRJH?4uhܛXu*mAg3wrwSԞ Utn>yWW#oJ[TЗVRm{N+j]/we"b f"vhNہ1[uI0 Z2c X4n)X1}JD! r(ږa&C? .`YZizH&wl͗h{K0|S+6~\{:_ηtjt~Qx^]\^q~ѥp~%Zv9U^yY,8"KVfazj2-=ub 3f`ә&4!i͙aEA@u3JyQ2J 9i-ʤI|G)<%^wT5Y9sw m푧}g v_/7n|rǫ`RpcAH8>q[T9p@g̰5nd]m `"8WЇ{e"ep^͋a묲:·`)Rc|̟8zwTOq=zx}3e)76$7 v*PP%XYw:$j YL!(1)io"T(dehccĒrf!ۍ}pcvlk/+2͇syI!ΏB tDlB,Nj<3J sxo9qFYO?jmN{0 ;r Fa3*?**J~CeM{qBnA"玥4(Sp]ϑu"[ 7É'O@|_FgF߲t ,^hR\WoyPHz}%~*6 >?>Is_=o) :J# N$s)9C_7SȕɐRQ;{smn*v+l.aͣ[]z{-Ur--Su^5O^<<\D=1 nhyVrͶTn=VcœERԒ޳:';;t'ڹ;68t?*#Cq:+Yr .Hi^(d>i~\dAXLҊ".U \vJc1f>:ѣu1cqx38<>Nu–X2u2p;f~$=>NCuXtNS2MVn@OY菱b 15Z՚(31\ R M^[YeEkʖM(Uy7_zs.ͯi`m{y];m0f{aŽv®\@ :p"M 88sj 8s3|?:'bb3D0]QBB8"rywve @9ɷrXcOзFuu̕ =Ue-.{9GBC==\ Uκ c'v9en}G˲s/%%8H?kɆ8;c'Fw h Zk ]XZ;,3+W65Wzs a`q 'DbyDž! _]dS.VO!bmwd a3O_~6ǁ> uq|@)B5Iy6f'`6[h[4;B&Δ~8ڪVδou%/Dx!eccn}y_ tbn^2Qh[ݾruU@DG1K/uWW|X|B|Z|U||U}OJ+~/SCQ.z/-|¯ /v̕ނDbWr'I0@Ipc"Ѕ|=Gz{;::uܖzyA}g%Z6o7i|o0ݸC͊M#Ԛi;ZLC]Yl1A:6޳C4fwCEKž81=S!M((ѕ.r)k=L3Ǧ_S>(ߒЋ~bN:&q$8 XfeN&61L[)Uf%f8%lLMPl8kO W73@|:b酿|jTͪ_W|{ʽ+YU7^^bZyzoƿv.h/wzJս, Z=eۖmJ՜8!׉;Qgz%_:tu7F.)XX㪼ppx"Yqڕk- E?~B!R<~;;=h_nv6GvQB&aF,I2'kD1`Gf˷2IuM?C\r]Lד'\<6Ò[3b!ƊPAt_h̖X95-9o<%B-kOD %&,vhk(;95Uו!p sTml2hu|GegYG؊1\,}?½lηO08 awUNf @VC\gc'aE|?eY%hd2+x) Bn ˾lDs1Ԩ37ԙŦ~PP♛^ o ɷ{uwVE~H~^~>,!S/GoE\ȣD0`QuE?bp&wf"S`8R7MeCc.b0bWh)&7r)vW JTCr #.lyuXn^ 8e9$(J>kMm}O+ާ(YWI{ߠ+?U݊qZE9RޭH]B^.:Gb'T:Z^,/_(^\TRZެܢn)¼޳ -<}3yXG ѕ0"ؓT])+ vTX)JD 8&4M'9a tR0_|,uaԍ)~yjMjKP>ܢaMAn:}$?BQ>o=> _R!rsJ-Q"UNRSU{1۬ڢPM择lk76 xcch:AX8j~jI7ٱ\MƟ%&ۍSbil@BR$<19*xWl'O57:fB̌ߏNҭ>g,Z<^Rt{4Nlv;q&G7mKi8ֽ#ov FGS;Nw3՞О^^I ;೴=ʇ8۩a^,°6/nDvvm KQ:H,0._HL Bog( j` 3  n7̖z8ct5Hwj茀[X^"  K3 _N"r\N+"簱$_φ<*`cb0̰Y' <<_+$DWWnB?H1gE 9U3ә0 A"9H,]9QzD0bf<oqUs2n{tBV|@xXLGxZ3n]Ht=HE10̻=MlR]-!qs6!ZYylN0ECOSpx^=^M֑ )"'=e$V`5+2Uk>9Cow'@~h Rr bͽ&MkX$N&zB=ž_w DGOR|tE](f@=óv`"T^k&ѐG:\ ^Jqǥ|;Ozc[*bcS6Н%1:F+: .ţˬj2rknЩ9QQp\lĉS삪ɎRL[uBASt Ȗi,,*&Uލm'6(zJ|IUkwg?_xƿƭ)SGxV\&@?xVAL*9om~ v6 V<8&&Yc'7YYi43@آ4 4S74Glz&PQc)翬ZD0S^d9!1t\ޝO-f$0/;m⻀kj伞eEw~/ߐ?@ s1-g b[{[f9}Z\+hl!ZrcgOFH<[g-P2Aƺź# _BQ~z#A(x}ɮ~ʏ<6tV$>IDXM' V qNAVPǶa;@N|'d|7/BSԸǓ9&D)=.Q{4@;5 alnՈ&Q6ɞ7ȷW7 X#f ' N59sPodN8?[J6jW5& ,XȮΒlġ PMDc:=ʇ6CP0+jfcsZΏqv.ډ؉ΐ?z*/-25I ɮjZM]pL%80;Ɋ/TeYt [Ue1*k}ha =0Ve]9L++)T:ة;[ےۓד%iRYOx? 8HCG7U[sx4tN >a0 "[l\_ @*$h$]&4'3=|PC pÚkc~'&rr"x4O~3UԜ?6,ɼςEx+x5(lfuNc346S6q%/$? 7tƨ2l d.bhr& ?NWy^8z+v ~z|^ 9@v X,_bÂh3R6e!lR{30œR'yѹ8qz'xJyk[zs?;L_f+a&E$xOg"&X+^Bcf`o] |=$:~bL9a/wN;]Ww}g}ݏt?r7~f5ٵt_lϵoo'K '_H> hxҕY֥Z_ڿ,=7 Fz7ol+g#qEQ4Nl4fttqEӒ*"jOPl=˲[{W{i2mtge_mGqU]]wz$$  M22LOY<'I|8 LlǓa-vk+D朹RZ/LP_C.m&<<~f* U/ 8##41&E)C~UTȘd2OߜGk;3j|:,fjstAz5;`)9o ]G%si Sn[1lʵ1V*8-Jd[Dw/Kr/)l$ݕRXBW{ A\0~rҥf ?02Pj$T!c.F@cۊm~d´KEwo˶Ep^.r*욽p#]g~7j%Pv''[›&=ʬ,WPk;kwr&B{ )Vlc{V:\Nr>+wŽϳt^`_^fR7:G;t,b?2b/[ߢh=z 95j9R ^@^,ұNXϋD~/(7Țpg?$)H̭ge< =@…C7RA>}1ںj"8fHLm,#CGdD2VoI=&=drOK xhyTKOzU;R}=}?S//qzQ(:ܤ2 M*[ʵ:a9;E^JO5~D=$Zxrms)wL<NM|QVe|4.@dʹlW^?~FA)D?{]2kɜ]+FܹX({r{O{{Z(YZEd?6j96ZEԶjheG9@P, ^PVWM3rnJݦ^X"WpIs\]%4*s[ğOxŮK{[LjZ#cFЛA+()+@q>o[}U\eBrHZCW2rM)JupQ % sfОݯLɋR|i`\ZDAw%[ b[V9w}e?cXJc:kFz 9A7`-;ݷu:STϒ"őwbC,[RNx]W\&n?]sIjBF`:eەP|kj4IWdhayFlZ I Cm<ܐ:y Q\O.\ܪ2B-ƳijCԣ[Gh@ls^`[(>}\lצON=r;m;~O\+1%n YXʱksߵ¶x<: :5sйn<\~\[~1'B'-3C1kC{gp >DNI+v/gpcvjNFt XoT F"hK)-G}Ҫejֈ(4S/Ъ696g1]x AOhy L# 8!^/:O cktgfZ# mV*:+Manz0T!FC@nJrne.0}ogBY1,e|ixfU=uG;*'6};:ıItLU wu:{H0tTc Ղ8噝W "e&3}$dD#jrj-`$M互K+'OQ:I)Ӓs^SLNۆ0OZ# lFYP6 j`5 AQY8ޔpDC_Na\^1WXXeb6Sjs0CܱeZ~cp9R0 Wʺ>I8?yH^yzSpRQ7:vPN3`zN|{=G0 c1mԸMӂ@x$t7eu<&}VẐF%8XzN|QuW,SԙΫQ͊7#W02lHi$z\ e//6Vl%({0AIyroOYP/I)l"PO[y?5kW ͮʐ#A. q-tH]kVWu ]vrw֪Vuzi8Jsȃ钣>f{> b׃؍񉦌YГ :o6; u۠ZsQhBӁlUݾXNBT4Dv Niyf (M5j Xp2ât÷dIw 3WT+ƌ=[Ma eaeZ^սɘ9%ʯ*?Pɬ%໤>ԋZ4#Rmc!m֩ I93;2rYQ|fWլ)JֿU HtW%jޙ'7oOC?c8cUuPs ʼnסfuK,i^%~66v&gyze#ɒ=2̓5ؾˍ+@{^rġ-=\ SO2XZpP!L8оe8(5" fM@LD#{ UUQI{zqg5ʂB-/faQh"7z1DdIʂjr8C{ջ`l_" Ii?3Hi?@Fi AR߶o >#2\yqEP r "N[-WNywmXpn] x6DEa3`AaN쉣u(>gu(+ʗ&ތ2bs.T6QR*(%: )*ȈQGqǵt,mڼy2:r0a=^QH33U؞,Y$.|ݚ8hɼ>Mb26îr@}^4@>`I#)ܢG([EIWe ܋᱌m 6>~$~ȹ|g%Ɠ:"T-.BNJJ{3e]X.rmMe nקDЊdS.N>ywRN(_I"ȢM~m7Mcw\,7I+? _E95s蝾h =5sA[r7H,T9HnhicVNA1EiM6,z5f (hAPu BjCR\uXXF17BY%.P3Yj3jtB[eFm4w_\?2$YVS>MgR7P_ ǎ\ͨ PF쒣z\6v [K3sU1=a4y LBNQWE:t{2a~ ?:d~s+d$rp`6]uY >,ej֯^3FNo1c{|f8g5;>C%j(6{lJFŭeW]eru?2ICd%w ~L-I!yBfۍ؆!垃Cc6CiK*15S=6 I.w@[c7;7K3@y7b՜V}Nmcye1)CZ/?'c?qٚ aB;u_<'O(g]Ӑstl6s C5fm` "[[]{H VYƓ$˸H8B3A||=4x'@2)ԅ(u5jvյ=by`B-g晍 s NK 8F!՝y3ԂoQ|bVy"ꆏٓ(uWx!oɗZs~a!fD<ι+/nI.IC(`S&cv`7%F"ܨ^d0jT:h~'KAinuXaլvPFO rGȶJ9nkO.|sg*ʹs)J>i#O{ ·w.",W$$J2lLyz>>1x@>>Jo,btMϓ=J8tH5re6׿^^c¢uX,F+g9j _%ϝ%Hv9-{^g-g"/# MHr^C&<,+3r+=$e+ðnl'*\g'@d__ p\V`9Iϵso]IMy/9AU+G%} Fh7LC'8}\46?hZ/aysE,VM#{s7}< i'щ#+{3fsWY,+.}J`U~vO_izWDZ'[mv?vdgl~kxqoM|njmWOffnۤnO-dNO.-޺/p͏ogWVRj[?d[Nl{rcwvvk֌_X{n'sjϗ/C}w{g='?F4)G_Eu}0j }k2]uO׍DIZCt_HU3/x`6}#]7OrjZ"t}kTwn8󦷞SwUsW]Tu7u[n饥Mreo9}ƛrgo9s:;15{'oU`[nJGꯪP(oRުUnQnVN)w=/Qv+W).vF8.8 X]9`A^avz :˫'@C*aI8zGrmprv8zr+,e Ng[P :t]+\_'氝Z z _QJwȧ(]2vΧ&4'k5orMUnbU&DhQ 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 180 /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 ] >> endobj 8 0 obj << /Outlines 10 0 R /PageMode /UseNone /Pages 12 0 R /Type /Catalog >> endobj 9 0 obj << /Author (anonymous) /CreationDate (D:20250129072453+08'00') /Creator (ReportLab PDF Library - www.reportlab.com) /Keywords () /ModDate (D:20250129072453+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 540 >> stream Gat=(b>,r/&A7TL5.2R[hHAT)3?l:r@ue*a;UhV%7&5^TBC$=1BU]"%-?a4ob^*n@0pY$qce6m:]?91F@K`QS1#as$W^h,;?#a-[8)]R6/P8r8,V.&0BrWb;E5TpUL-`*V_a_&A6@_nL&UnPrQ)Up9E/M'##Ua`OZATu`VFMQ>QI^j;%i-q,I2B2AXNI?(8Sb>u=JqMM69.HSN!N#J!$+ON(iesL:B[DjOfYiqHdP1,3m]q73m]q73_3N=q03BTf7:g?ionf/=SpEgcjrMTdQ5ZhkWsP\j*WCJ`VC@1kjd=:[M\36Zu%8='f_56P)b]#ld;G@?JfYlI)"QOX6"H4T"epEh)9c:mFM+)]U:B2\_,>Woep#2gJ'hC+RA#XlpC#r,I&W$-a?0;^;GAEqI_-$bMXi6j#m6"j.:W&48QHfn@WAk2$;G3g8bHQD:t0sj`oIeq!?LH;FAn/pUs%5#3#%`l2;TjWt3&Q8u_~>endstream endobj xref 0 14 0000000000 65535 f 0000000073 00000 n 0000000116 00000 n 0000000223 00000 n 0000000428 00000 n 0000001563 00000 n 0000029483 00000 n 0000029722 00000 n 0000030757 00000 n 0000030843 00000 n 0000031139 00000 n 0000031213 00000 n 0000031288 00000 n 0000031348 00000 n trailer << /ID [] % ReportLab generated PDF document -- digest (http://www.reportlab.com) /Info 9 0 R /Root 8 0 R /Size 14 >> startxref 31979 %%EOF