xmlgraphics-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From spepp...@apache.org
Subject svn commit: r966110 [28/29] - in /xmlgraphics/site/deploy/fop: 0.95/ 1.0/ 1.0/images/
Date Wed, 21 Jul 2010 07:08:43 GMT
Added: xmlgraphics/site/deploy/fop/1.0/running.pdf
URL: http://svn.apache.org/viewvc/xmlgraphics/site/deploy/fop/1.0/running.pdf?rev=966110&view=auto
==============================================================================
--- xmlgraphics/site/deploy/fop/1.0/running.pdf (added)
+++ xmlgraphics/site/deploy/fop/1.0/running.pdf Wed Jul 21 07:08:39 2010
@@ -0,0 +1,1026 @@
+%PDF-1.3
+%ª«¬­
+4 0 obj
+<< /Type /Info
+/Producer (FOP 0.20.5) >>
+endobj
+5 0 obj
+<< /Length 955 /Filter [ /ASCII85Decode /FlateDecode ]
+ >>
+stream
+Gb!$F92jS!&BF8='KRqsE'U[7IW0qJRA&)).>2DJ3^!c/,c6$!/'r\@8p5#fTS%Z,JoZ[CXB4)IGQ3iOkK\1h&EVP5o7c4nYK1_2dNQ]^++em?k<.Y>bR;c[6U)r"lT@u6jY8fiI\;1\S<Yj5`HFB@H?kHuU%p)'Rik%%hn'ATO%I,kLIYG9@o=[CIVO:a*qouGj.kJ+NsPc@7hPUM@p\J@/oT5$%g`osUfc8u<9,OS<SdNcLq((r!omY_%#9;tN^2W;iIpiknb&b[EFp$"MBCD@'kcp.bnN?HCPZG3)FkH%83mOJDZcbe'S,^B?7VG@;X)eZpo%Q,nJFSK(<jgn_gl)e#N?(AG3fZpC)n0'DrCSHVAYK2D'=jH5XN\@#-T>jQ3"5)X9r6pg"VDA1rDS:?c0Yu;\(LsA/c4%X9W-\X^n9:WnHZ(UQXFuet?rnqPjBfVF;!5m&Vbe,hc1*l"'rT$;Zj14J9@tZ4V3\m;M814DG%/?504Ve5;Kq$E/;_qmTHl/+?eQ[XnD=S4P*UVN[;\2MfQ:]jS,X,mE\N=35>DD2L1N;*<qnM&iVk%$kamBr0d@=Lct`VbXs7/AN;H:>4?m&d8p-?9ZMUT[lm+-%o;?@(Xk1Dah0-RUJ66k]N/!5"l46CX%FXhedD%Be;omnL0ZF>tW13T:#Hqm!l>rX&@O98Rb5N\Xr1&p,*JB*(/b!@e2sa'%DghD#aG`Nd_)Rld$rbYBG;UQg=TMQ<mX;/KHkR%gtr^Y@7bJ2#\,#7CBBthUHSV=!8T!AmaP'RWsH)o^TTC9lH*q0Rg@k(=ULniF04KFE)`!3tKR>Y.5;C"T/$Djr+RZV?0aP=ubE0F*$fF4Y7HTeE6m<q^A5Z>hF,ajbK8;N^Zr!<IAF,DDu(nK=uJ$YSWZ9%I6E"golql:T)Z+=h:\F\OrS7bJk&FWo[2%!2_Zi^R@UpCB~>
+endstream
+endobj
+6 0 obj
+<< /Type /Page
+/Parent 1 0 R
+/MediaBox [ 0 0 612 792 ]
+/Resources 3 0 R
+/Contents 5 0 R
+/Annots 7 0 R
+>>
+endobj
+7 0 obj
+[
+8 0 R
+10 0 R
+12 0 R
+14 0 R
+16 0 R
+18 0 R
+20 0 R
+22 0 R
+24 0 R
+26 0 R
+28 0 R
+30 0 R
+32 0 R
+33 0 R
+]
+endobj
+8 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 84.0 582.166 197.0 570.166 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 9 0 R
+/H /I
+>>
+endobj
+10 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 84.0 563.966 146.0 551.966 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 11 0 R
+/H /I
+>>
+endobj
+12 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 90.0 545.766 162.164 533.766 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 13 0 R
+/H /I
+>>
+endobj
+14 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 90.0 527.566 150.836 515.566 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 15 0 R
+/H /I
+>>
+endobj
+16 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 84.0 509.366 292.328 497.366 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 17 0 R
+/H /I
+>>
+endobj
+18 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 90.0 491.166 261.476 479.166 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 19 0 R
+/H /I
+>>
+endobj
+20 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 90.0 472.966 221.156 460.966 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 21 0 R
+/H /I
+>>
+endobj
+22 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 90.0 454.766 254.324 442.766 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 23 0 R
+/H /I
+>>
+endobj
+24 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 90.0 436.566 296.648 424.566 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 25 0 R
+/H /I
+>>
+endobj
+26 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 84.0 418.366 271.652 406.366 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 27 0 R
+/H /I
+>>
+endobj
+28 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 84.0 400.166 166.316 388.166 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 29 0 R
+/H /I
+>>
+endobj
+30 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 84.0 381.966 137.336 369.966 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 31 0 R
+/H /I
+>>
+endobj
+32 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 232.25 719.0 361.75 709.0 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/fop/)
+/S /URI >>
+/H /I
+>>
+endobj
+33 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 221.685 707.75 372.315 697.75 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/fop/)
+/S /URI >>
+/H /I
+>>
+endobj
+34 0 obj
+<< /Length 3322 /Filter [ /ASCII85Decode /FlateDecode ]
+ >>
+stream
+Gatm>D/\2h%fW&,iG[<LWQ11Z$etdM>nSF8h<(/6;;?=Z-tCS^Yo_ZcQb;tB+(\RjjfoiPUf_"DEMSAc6rG;lchD(Q9A^kPBc6Z71X"FB&]95#LuD:*H%'E>gGA9l`ZOZ*q;1m3>molbmTunShQ-1uq!TOYj*dHJeU-=Pj8S3-ir8<51Wp14nN@!Ror.>p^EF%,@Mn4XR/ZXAQ#YCFkJ):sCN0YF&-DkbA)lP7^Ls2-"UEJuI+?Jc6Tguq`:VE.eYR$m.Wj56F?J%BKpqbJ=R!68dklPHZE5<Nq5/UM-(;2ZW`kB'cn@skeLXGTk[V(NX%P2k!=d8g'bYnleEuE@8fV%%r6V71`&I%F.A"J"b\&fW9D*MOl50uF2HcU;Ogl4\@oDG,5=Mml5\E\Oe+0c*E$SoWY:P#t5W<%'.Q.(S5=$VR>j#87Opm277Tca]:Z$';(@I*f[4>9*H%o/1^O+Z\lQ(T1e8[Cak+UI/hqoY'^97Ken=$A.UI%SW_%mS4i-Sj/1[+O?S*(BH1lB[8e@GFfN/Nq&d72_Llo\'8^!kX-.Pt]CRSRdTq3k0kJSig[N/GsU3o)t7ClLU:o#iW=]%0HWRp0bA;".lHH*lsci)$O''*od?!N->SGI"nJ/RmG`ObAr(!7s0$N'$!qPA!'loV^*3.[`TB`DR.ui)2SA;D!HA#*9CV4>3(TPe*fI8s^s*l8!Wupd'*riUBN(g-Mbc8[_B`-q6*(#*$8[Gplg`i8<i@6e:pn2qTPKg+88Z$/9@';;6M,<O13"B.Tde&E'*cr&.YLdmg38+Zipbm*](9DDLR<RHAC%nAck/5*U>!s1*_%;=k.^YB?D&0@RR(G-K`m$"!T'nSqNRfC*3/EmFn1eOCb7D56VBY&DAQS3R]^oVW0tM'O=];PA1]\6/a3=A'e8!Mg6d6Kf\*Y=u]-WUoN/?]GCp)B[8WT4PY<daoWk[7nnQTM*$rl#Ke0!\V6&H*l%gEUNN
 OpEbpp!#"^i&8&VQOBSRsqKK[2\$u6CT^,J*luNk\OIK<58B[a$]=qZs6tsYR#W.$>TP/T'NHd#,\Fg&eFkYUOH)r.$a^^H(Vg>EWbF]O8#`n?rI5l&0:-p"H/5iB-T`^KTQtl&B8_j8nF^Pa?-Ylq7>'J-269=OK-S#I@3a!`VW@+abnn5p&iadDWcniS$:-p"l/5eu^pBAc`?CZ:#bBsV,W'aGf6DX@e3cZ6=kEgS.D/7)-kgb6YalfG`;@3uF#\"=+rirlPrZq$;A@sO9M;K\3V\h)W7)%BEN?GmUG`bOp)QsdsT,$Ytj6\"d5tsTc(b\eMAE-\6_cc+l(pAUg:sZNmnMPakKhA!'04Tak"0.1kQ92`jolBbPo``muFcn(/,gbR`$tYOl"uE](Sfo44(5+W70bW_M1KIu\ZXOq``Y+HgO;rPpO9]BVe@Bg11H<"D>^^p/BjYC'8GmS,>RG[UMC"AP!&>fH%:3+0/Q@U5Q>@X-jlKV0TQ&HZo8*UT/Jq;CBp3A&P3ER(#AIZTTmpb%D>V<Bh*,C5^8mWo.Pi_;>F$I1UUZ,d8Ai5p5qS-siT5FZC(JaD'\b^D?0&L]T7<htjIfUEp%27S`?juYSSPe06.6=[LpA";<)XKV=\kQU<djH.9(/=e3elC'%nXHI"eNT>nQ9=B^mF0]%K,q$ef'[F$)!j.m;H&sa.(fkP_X"M`msaYes*h*Q\QD+$es+VEGUcTfJYr[:D-E\HjWk&%>XRq\QHEW+;W:TB#IjQW?VCR@(0_+'P+C@^JHA#FS.b(`jpH&gm:9P3i#,+I$W4goaB138<Z/lG7G&mc;J_N-jG/oX&iNIN_POK-1gpfDn,blV.(9Slggkho_=G$H4oeo-SVc8l2so)E[9V^gKoIEge;$lncL%[Itc*=[A:Q(#*<41(-ftK8C_(0$O92+<#;)9BC*ku?39@#+<_9'VftXr:NE"(je=],&UUu=.WEr93HNeH*&9
 ^G'3sRpFqc6mh>+uH1No5uSjuH@H*df/MY-#\>M0LgUL".AT&N9u2N,0D\;f?ERO6bUN;NTCRBPWXBlj#1^@=$tq?(Gb:b)*]1B*B>("&JH3/6@8b#<nJ96kR7mVU^jF<.<<Jt?pb&EuL2!?;hB`:<Y0f/^0Se#%.Jkp"rXYtStJ5h-]k`nh]q-%MQskZdFQh.s%_l]a0^72,1fqh[5(J5u4(ml'j8KC30.CH<4G#S]K7UDKo%pf.FBNsKZS0DqidL=?4LLV(^<o^<\`1ODeO^;=lcAn7Q=frVeUoq/*#%=.P0Pd7lt40'8'o6&T*%tL!oY<dTh_8)@R@e%n1^`DdR11\L(U7G^gL-hY-W\tbg;SGGL9iADS99,M.7oC$F1eLs-G6:m4iIRX[Ug2CVFBQlUO.#c[o?U]Y>@4[-dTC#%YZsaW'W<,<0??;%+%Jo/5M)65@i$?^+RPG'1`7gq]B$6O!Zj"O#:YjIWX*0@2/02hTjsQZiLVB8X(a-/R[#\@6[<p,(p0p&];+#ff*E9NIFpdUXu>j_'29@L]*PRfa'^lfEL)F,1(ZSjYjDd:6kN"AW=s4!QrV%m;sZ^CW@uf_jpIU#h:JuQI4n'8&bF;$\@;]6V''4ejm/fDEWiL4./upI2;lR_gq*>ugngBlh-f%!0\#<T69K@dVH"53P7@M5!,!<u>GFgU=GuTW0p#R8NJ9j@5TJ["bPWNCpHLJ5nHQ$i]qt7[KFfEYoVM)="?]KdQ1"5:'/&.?Fnp5`CGkm-pIu*c.P<5/gp'AV/:Id2!i')2n#%1gqc:]j3ZMY\gI+O^qFsqZKI(fZ]=Q[3OrC%TBJ,@HC=osa%P<?YE/'!1e@L&nGeeukT80,9e4IOXW.*\[OI8/sIOAB+;2/SX&(>dHeh9'Yg`^>^6]<4G'>egPo-1JZi9FRFb&?,JBucqM3CgO)F\J^f6CW@)mhgO\C5&u;Yk!aEe[t7Z4%bt.gD;4t^5F(Yqb
 @`V0&8cp>;qYpedX]VlUDG:o0#L$W3s'ofS/0lOddi?(o*dh3099Gpp,ftl,*[%7Q5Kjn_SO.H5]>$;1Z3b&0IKnD!%lP-nF,iH6*Z.(;60)&d%<[f4Cg;Y'!!]HFcp_\B<<%AJ+D(UO)ABNq5Ig%)Vs<_l4>oF\*%@[B[:Q"@CiE[GbjG1_^jXD6g6A&i-3.LRg]f-2+.nB7CJ#>9SC2di0H^`Of1o_+%$^L(_!M*HEelJ/Y9E:]'aWTTM2Ucl#f+nXG,)3Of`Qi'cmUn\PE&XGg:6^.T&kLDTVB;CC[h;6sZecLE#WZ?buiiU?'CppaKjn'eF#Y"[CJR<c>s`26Y9%J`5_S1`C~>
+endstream
+endobj
+35 0 obj
+<< /Type /Page
+/Parent 1 0 R
+/MediaBox [ 0 0 612 792 ]
+/Resources 3 0 R
+/Contents 34 0 R
+/Annots 36 0 R
+>>
+endobj
+36 0 obj
+[
+37 0 R
+38 0 R
+39 0 R
+40 0 R
+41 0 R
+42 0 R
+43 0 R
+44 0 R
+45 0 R
+46 0 R
+47 0 R
+48 0 R
+]
+endobj
+37 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 179.316 591.866 259.668 579.866 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (../download.html)
+/S /URI >>
+/H /I
+>>
+endobj
+38 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 108.0 565.466 272.976 553.466 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/commons/)
+/S /URI >>
+/H /I
+>>
+endobj
+39 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 108.0 552.266 173.652 540.266 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/batik/)
+/S /URI >>
+/H /I
+>>
+endobj
+40 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 108.0 539.066 240.66 527.066 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://commons.apache.org/logging/)
+/S /URI >>
+/H /I
+>>
+endobj
+41 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 108.0 525.866 212.652 513.866 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://commons.apache.org/io/)
+/S /URI >>
+/H /I
+>>
+endobj
+42 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 108.0 512.666 291.288 500.666 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://excalibur.apache.org/framework/)
+/S /URI >>
+/H /I
+>>
+endobj
+43 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 312.312 453.066 426.312 441.066 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (graphics.html)
+/S /URI >>
+/H /I
+>>
+endobj
+44 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 192.66 439.866 299.34 427.866 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (pdfencryption.html)
+/S /URI >>
+/H /I
+>>
+endobj
+45 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 524.64 399.466 549.984 387.466 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (graphics.html#batik)
+/S /URI >>
+/H /I
+>>
+endobj
+46 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 90.0 386.266 170.316 374.266 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (graphics.html#batik)
+/S /URI >>
+/H /I
+>>
+endobj
+47 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 232.25 719.0 361.75 709.0 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/fop/)
+/S /URI >>
+/H /I
+>>
+endobj
+48 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 221.685 707.75 372.315 697.75 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/fop/)
+/S /URI >>
+/H /I
+>>
+endobj
+49 0 obj
+<< /Length 3220 /Filter [ /ASCII85Decode /FlateDecode ]
+ >>
+stream
+Gb!"sCQHt)o)&?BI+pr]h0D3r6CPRiQ5)+?1)rgn3i*L6O*+#6*+u/3`/hZjP;qZGHK\XP:Ub#,Y-M>Of>GkZ=(fj_cG#l1edh\/Go!s/[N`?\$u@"L=!7R+j&pt;S$V"tI_IjI^PFG]K=.cIRB=cfnAhf`fe?#hijdQ>Bmi2>LdN4d.lX\@jnqK`Wndg#)`e"(?;EhM$!,4Uk$n2$8S*'tcERGLI'Ki'mId\Tlo7jU_;Cq*q=&Uf-GEtm@V6]gr;EI72G!:u`/dCD!tl`i%h08.+n<tR0Hs8*==UNp\$qT9V#]iu35(T[PTd\GTse[a@KP".T)_/5?C%t@.72T0bp:IDM64)8!&QGGZFB^]H#`Wim1m:(+GhE/GT#iU<hX*UTQ;(ZfiCTKNiqs`>\Dd191V2!#3(6M3B6,Uh;\8'q+"KIr3!SZ1a/.$_tTba!&QXA-kJ?Bec>GAV^[+ofREdf<UKe^&XaEM57O.sBdSM+?X"j*('.'E#Xk^t-?o\hP`*,b+ULZpDc=L#9qa*T8&U&[I-^^^Mgo"0o9[WZcV=%D[]Q7O7.`[3i7%nq<8PhQS5j([*%*Oe(t#I$_/#-;c37!^B09<#d9.0_A@s[!k3tNP`D"&D7adGN)A/-r58s&dRXlBi;9D0S$Y"8Vo)0pL_5aSMF5!#6e-&8V-B-nZj5c.s%G/tFnEimN3BND17LHS<47a#)kp)a='/P=&7;cQmpEg<'q2S&#L5KTj^pZtmdD07r_b,kT![3<N_HXMV\'=7FX6)6=^-S,;4ZG5)]7,k^Ug5p8+QLJ=lu:W:+r0k<cEZ\BGY'cH_o1r]h;+Su+Sn?FGT[;8>$^a8hpP_tasR_hnU7?/M0\CH9\$"WC760q4dD(&<&uhh79qPoh&q`TJg>"q_7D*9P6=K](g6#:]eeU:/nbC!$KfI(LeP%`4ObSb\+NLlq2G34Ai*buMNr&SYXCif<Y@QEOIWuD#(4J&ZE[f7aI?o
 XPf$]P+[^H4b7,+rA2"^a#$d0/MoM^^2M$jF4,d"HXW[o>SaqWJO3W%n#k6K#[`0?A*%qYm4&PC)kP-<_A'i"k'rJ?#08,=f`Y;]c'L^NCotKm$Nmd6>.37K<0!\1>M,P^iajE\G5QX/&fI8Wd$:$@c*[I`8)%Rp.3d7-pMohjVl]VmJrQj[_,6:3-OOt(h:2?Vc,'?lE5?4<nViGs&C$CEF0e&?QDgN"XeCoidOYWqMSZ'bk:WF=+pE+J%S-0Drm"^G_4KjeiI9p1V2X#c@/)TqhjG)gJ^<N:U!NQ3!Nm6(,=6UK;1UGQ-RjmQ1R1DW2C.@/OZ_HbTM.pn4KH5T#0HruWNM7jj**q(S<Y.N-RcYt>VP:krT:h;#$hI<T"XHd9?F17304$hL<58r.b@0!1ea%EZ(#&0']^G.9HpO^]Q@E-+b6$Y<UhWGgp?\8X!kZE)Mi=3W,gjF&o.%G;hc=m6rO+0nHjC$#P&90aY'0;s(%BTND@cVD2`:.V=\6BDU4=:#an:n-Z=ElMc9,-KHUo8U#NhBAY$PDJI6SN(mL8M2OElIekNWho]fpUib:m,*$;&\_l2`S^:Qt&DcomlE2a'[pTtJckX6r5.SB0rlh+\#ET$R:uScC%3@!(XJNsW0>EcB%7Fh:\5f3pq^<7Hmao5O.i__<0m:0W-8UnN^>nc[WtOMmpQ<uDW_]-@kh>q6]F_j$4V.a<%cM4#.:Q/<!?9m8l=59u)//L"GqC8)(@Y]#3A>+=pk7eQ$)K$8Z6R9"u\Br4#"+INJ*V@EWXbRA?$\u5A8TM:&D"uB)1XFH]T/>&?lqY]c9$>e-F>BR+P$So4(EHMuW24IA/pNpuaA1DcTon#*7BMIUtIF#GlU=Z8F<#;JZ#-R4t@mJ6Pcsl4:Q;P!QCXn`?Nl-Ht%a<$UPT+.C_f%4d,'$RX,f$<:Y9.8fm],BIfG$IFQUqf]bH%d+?4bJD8>*0//ImC+LhS$kCcDp@rYe
 N9buu9`doYB#(d"h#1&T'*g0nlSoEA67&07o&jHK:.R"5W9U;IBWm;ngVboIVr(H$4,aEN,`EU9Foj+oTR>+nqCmV>C8]NLsolO+_bmj]<BUEGKSLJU`f'XdrWigZq060X"=)R`N>MBh$YfB%^,4:AIoh/(49-#8qo$.8?SiWYO=)6`L+LAoBW*;SfM,:U>Hh\"S#M4[I.dp2R2J%<oNT0F^1)jAX<KMF%beQ"%q/[GC@Q$m+jZM70'*V:b/MNT<g\lsli7$^+NAK+Z(M4D5TWGDapG^Y%+mWM]K6[^F?K$+/MVJUmKi7mX]e7ZfIdC0X4hcb!JQ5p#La8H%>mjKHfoRZXCZo?g));?pZ>>&O@i$;U&GEW.V^HmS>oB5ubM@$_^;+iuC:CJbV036@&R7`jIT2se^d+qp7T*r!.VaD3Y*:hs'Vb8^3l18ZbBje#s[,g4qgc:EG?Eic;HX2Y-Ckp')O.J5"I,8D46J0PErYUYUCJYi:C41B#emQuM+ebZjqNad3XL:sBq[N]#Q:21*%>t^e'=_0bEV`$c%U0p">sBL[k]\^-K80!T1a`MHWG0P0EShfXp%d.mG9<t'B._`CM)/=.c]ulhr@h89flF0,NAH?8+0K6bSX*C8k(k01\sLI-!].8D3Q5\(Ip2em,i\")1%#Ba<n$*_oY3DHildil7kOi/n9&;Ap)2>5B(#[2$QcTm&t9$8NqGcn>X-KM>Wna@&nT`SBG%-n0Q)nf[[RH(RD8UmL'=hlRm];#^hp7jjRu?Z![jEcZ:V,j%j]PXpd+cZFUY9UrtF<)4!f@130eRK&6fq`<l0*maP7X[CUN3`MZe$7FDCA9n90"3Mb\AN3$Qq\Fj1(hTB59Z!f&`rHB!]T7c$KY\Y3cF*$p@\Ed>h0D9jB>p4&Wj']#_18-gn&[g7A]i+L6bp@sHI=AXi!okDJ0))h0[rBsrfo]*Fk#pPph"Ka*_Pb1^tmoYUE.3?(.&k<pR46
 iYcW4Am$$U2MKTll=U%\]HuDR"b)g!U-o(p@p0Lf2*fpTLdEJ=V/?F=l^f%j"(_-s2M!oQ'ug<n6]cCqAje$Jk,O5;30s:hoVkn$pqdpnp=de@sm)[ep$.H]6d@O0QtSH^M/!B]/;%;9+Gra;f*Y#O"2&p"YQabWXn\ra=X_\Z2HsB99@oVJ\Ythl_b'8/VS,RV;7':LP6Yr!J#boP^P,T<-Y+_KR3+DckSP<"U<Zm+,BIY:"Dh#6tOWNr~>
+endstream
+endobj
+50 0 obj
+<< /Type /Page
+/Parent 1 0 R
+/MediaBox [ 0 0 612 792 ]
+/Resources 3 0 R
+/Contents 49 0 R
+/Annots 51 0 R
+>>
+endobj
+51 0 obj
+[
+52 0 R
+53 0 R
+54 0 R
+]
+endobj
+52 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 316.792 582.047 431.44 570.047 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://developer.apple.com/java/faq)
+/S /URI >>
+/H /I
+>>
+endobj
+53 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 232.25 719.0 361.75 709.0 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/fop/)
+/S /URI >>
+/H /I
+>>
+endobj
+54 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 221.685 707.75 372.315 697.75 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/fop/)
+/S /URI >>
+/H /I
+>>
+endobj
+55 0 obj
+<< /Length 2703 /Filter [ /ASCII85Decode /FlateDecode ]
+ >>
+stream
+GauGc?$"aYo%h'4itjd5'hj\h6"Y!qj!Jq%SYkqrl<S>f4O=]dTqt;GUhoAShi\,a"U-rDlgnX2Bp[ae^HV_u1dAR=+8p=MSMg=pG9f<13l8!`\]`oP(:\sL/8ts\g`HF[kbkVu^k.YmCqSUN!>@)0>U$+"]_Yh4`c6mD1]?gl43+d^mfQ3rLU51FTe8HrYE%Cm0c0gd7tcC#+pMSKq:>@hqYB/io;gd2?X>a"SGCM0]!*M#^h:aCFkNp$WC4H%nH66II&bVB=4M6thQ%n>TNaGS/nDPXKj5+T\/]s)]tGBcPucQ<om7UYdARgC&<'"SbM1;+Y!i/XbYA@MPnb'd*<P\qX'?Q9%Irr1Z<G-*Ro`X]"e8E(j_L/8=16BPs.]d:%YZIp?RO#'DE0)9(q>RiXc6a-4u^Alk;0d$,2;7:MUQ;cQ-JfW'1P($gP,S,fdbiN3u>q9k0]"]EF*0&Z=EiX6D$Fh>Y!!h^9>K^flu_!WQI>[pK2]DM?I)s;Pr$i4\c&!'!n<Y$.o&2J%FrC:;T1k(<Hr'HhHNf-ZeTo'(pfRg6cI.o.lf#eb,Y5H1b..Gn^f^4(hg[0;.:qbH!"3)[=7H6Dm^3]DK1cb3o3+jcfY0Mh(S.[,pQK-2dMhG>I?Z#RKmnXa6pPJ6PQR$K\B^5!7YbGsHs6qI2kTo2]_i(IK#>4P!BR$X(WZMCXBZBSLmb/nBp.K\U=/k4]B^aW56?i[c4G%`C,h$an\5B(DD$(ob$2l.[,=3(^E&oOrm64.k9b_$4.Tl('B*g4D5krI@9s+u+e:1>%9jCQ!%m`0DmT<qHN7]80=bkHs5(>O8d2[h%-aTW=<r<\>,+2U1u\Kag>:esfT(4<7+Vg)UA$?bEW!hd?@g]<b$>:7ol#//0An14*?+`_=6U/^9sbY1/XZTJV#s$Xr8!@HN)SXT]l(d,%scXO%lg`*??4!BTX;e;0)Xnme_,!^WP5-YHNh#G,>'j_lF.?)_e
 B1:4;eG7m?hL\DlCd)pcS+2f"OO]"<uO4WpL+YFgFkk4%QX>**;3/:@=d00?7d@n='I<,K@#p@:be>t?kZhr-XY4CgO&lhuQ,=a.0oMVm#Vk%jpk?/`odon9h23%DTn[k_Jmp;`<Lllh`s,D>]1/U]$(7HTJc>(D4O>%\7(D"&-<1TG:bTZ"]=5Zs!TY+2,AgUh:eMpR3Z@#\>`8>/;jH$en<X$)Y&REkiapdkP!dWZYSn2WA[k%CNCK*-j,#6<B/]o@WYk*hd]!rGW[-'q&M6mcqn_*$E.C1FuUGBQQb_9ahp(&AO?nu,kSp_Pr@74AW`RdUI.Ig]FP5*U9&4O`*gYjE2D?$h7-9.V\Pitsc(GO$bq@3V-3S!\G7$tFWB:WU+la`>-+qeQ0K-t*:b/c%gi?e_2B_W/Ogd5L/-@fOraIstG7+sD[;e]qA,\'g&jIOG:k]*=pC!T)Z(QgDW$"4[Ik0lS_L1q]=`.XA`rF(E[r;2PL]sE<E!U::I^<47XM5&=tHbqT=>J+m_<?j@ZLdR&+j:Z(r`<2";WDNQ#6!,Oi0&\_/3-=Amfs-VM/eL"r*ft'\aVk4nQe\9WVO=X3Nn`TQLk)n_g@J&D1EiMZ&3-RC>nm0@:Bq0_Uc&AA1la7LCZ-(2-@GXZb!b%*,LZ5c-=l<$BNa(-IKQX^PN_Z^%eRP':0_CGU</^bRc?"g2rm!ZQ*G![j3VStg*[o%;8TqH%Gj7.4.lW%kZn/-g?h^MBsC$Y.d.Md!5@,$:ogU,s20B9k3H@++L45H\ZiEeGA*B;7P=Z[&Sa_cf.nrh_tqBlUJqBcm12-/SGL//XT0!@ZA$CA-G_+o0aTBA\T$u-lh2B3P$3:Udi1nX7Cmpu/'qS$)8eBm_j4sr_2dR1!f0_e#d7P$'+_)&56\Dq9h1ig:oau"om:LmI3=Bs'l(S%^_7-j,;3N5]>^4`f\^.`Y"o1Z&,I?*'E74')MRV#)jZEY'46&[U^p
 X9A9CD9&BlLroS/U?U$o<K.][#sU@PB+iXi-'8jWfc."l<"Kb1B'7bamSgq#7-/<[LoH]po(6MY$d:kY]N=g9;n*\TDadVDSnM'=%1'=^OFKRf(s7#%)1bf@AuAL`VL(I-+Z<.L0TF<IVLY?%\+aSYYXY#\p@[UStRA>3qqrq35$F2>(1?U(P*#c#0kg%YZ4;!l"SC.ZVfh#_X:N;^ed?d>jYYKl>2r6Zu2bdd#?H>X'.A5r[&iaU^`8<lD'U4;&&s)gJgHl&2nH4E"7,=G>\6nbjQD!+cNCh?ZM=(>^W=U*`V0`j\?Zl><#M_(<+]ZtWZ46(XeiSZq\4pTR.I;(g$9sEE[d=`:jAp5T0etWGZ'bJckJBt`-R`IB6M1PSC1S>0G2VoDB]dbu'<ga!>?+7KH7V42toAR%)gQ48'&sWp@\+-)hn<NA\h3Tm%?e^uA")DU75oF"+GH/_^I=A2YH',p"L^Ph[fLi8S^ZAOt%<Xg#C"--%+'"e+]/2CFNUDoc</9cGP'dJ_4fUr^qp;s%%`F@S,=RRd/hd;.*qf1)BLa4:,ToIESi?1TTUHo4eMSa:mGD'nHHp:6Na!k=W&Lc[hU!t^*0u5Z+eZa@n;nfBq`i1F+k/l>b.7ff!5r"GN)SNpHHgDU\gV+E*].TLm=+hi`+e-qQCb_o3AKTT*rof>rhc^df4S_Ml)]e&hl&usjY]SKB9:ln#)2scB;JX'~>
+endstream
+endobj
+56 0 obj
+<< /Type /Page
+/Parent 1 0 R
+/MediaBox [ 0 0 612 792 ]
+/Resources 3 0 R
+/Contents 55 0 R
+/Annots 57 0 R
+>>
+endobj
+57 0 obj
+[
+58 0 R
+59 0 R
+60 0 R
+]
+endobj
+58 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 513.3 249.76 547.296 237.76 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (pdfencryption.html)
+/S /URI >>
+/H /I
+>>
+endobj
+59 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 232.25 719.0 361.75 709.0 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/fop/)
+/S /URI >>
+/H /I
+>>
+endobj
+60 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 221.685 707.75 372.315 697.75 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/fop/)
+/S /URI >>
+/H /I
+>>
+endobj
+61 0 obj
+<< /Length 4016 /Filter [ /ASCII85Decode /FlateDecode ]
+ >>
+stream
+Gatm>l]9gZ%fa7mL!_PJJ6B#3O5b+Dg0TXND:<:oJ0$?;5r5:hET==%IdD7WqkII5l*7qVoF`F]r)j^_MPNer?f0c=j8S38S%sB$J)B'm+nNCkQiAF^%0,3S@ER"Dnlk!hDuP%R[:/Q-*X#X2_9Xs^@ea)Z73$PYqqs%jr8g"Y7RY+Vl1@B9Zq+VY)'";59@<7@[ttpB;>5hb?ZGo22t/Y:*jNMA^&+#fT3#sBf,uRs=HKDZpPRReXEr:F]It?1_>AtM8,Ba]H.u8.f9YTkb.9D3Tm%1/m/Zd.^&.8,3Q8KJ]9F_()2obtq2IUZR%fDd'Ue^\p,Ch@i6;)Y?/OFSLU,Xk*L\c_,ErmWUpON`SbI'8I2G_Rm^p5p)C8H'"\HKrb.%K2@@ja@X@Q<WZ@8HS;cEP[qk#=1N/_MIqdbN:!!MX<hK<kD'L"A@7&-HYY;Ei=@"50OWSI$D\kH/S$"5Ao!l.V&49XOONNYiT)J@dEPJCfKCdOTQ/-?9N]Hd]9+rQM8#"Oi%:Yl?Da,BQ2J?j?Bo-2@r7FaL<eSkXNO_?GDMgBT?ZuXY6(J.N$[@1Rge.*`X]D(T83?Nq`S#5%%<;X9N:.*Vpl9+\hXr`=!ikTVRV%i")F"S=6!K/C>=Z`n2D,qkIMRb4GCXUXQWoq*4`NF.5$_+P3"Bj"[rO4[\!Li+IACH+)H.=bT=O.LDP-ZDAW=4t5db)iR&qg@'Jf%DgHM4X$&B!04#72-XTpiSU0ObJsmJ>BZI`.,<TJF6D0n9),$Mm3Y[,&Ql,0L2VBeLSJ!#EDCf[E$9BUrH@E8l"c&B]V;H71;[.!0qi4,Q-XmAC7i*[n,m"TdrJ&c"H1UQhp=VY5:R%9]:cP`=:A.N3=K"gh3%<]sU4Tl!O\(0k*1S0okJA#d[tXN@7C,lhKoUMYE@q.qVYKf_genBM@e1`XLNdog]<[JdL4BZ'`oM(qUX('Pl3rIq4*NZh+kH"h<[rO`<:NL.`
 (_G9YsR6-@0R)!.dW&*(h45O[a0slcg6]LmFF#8#@l:<^%F'+s*3D2_LG2pr(.Vn:NMiX@$T02Sf@TOW/keEQ&'A]p=_MdR2k#'@V.?!^6ekV5L90iGXms2N8LoqiQ\=o<,6o15_JZ:DZ>u^qM(*e<_WohJ7D5aRN*(5Z2"2V#7G1apudmE4N<Vf:OZ5i.s(Y8FS'X5Xf%ha05c<'nm)?I?Z&fA+-DW?@#;rJT\B5%7UWnbSM!Dd9VCkgdIh#2P:S$QcK4kah,-:b.c>7)WKe[9SOr>tR';1!9uoj6-0_M]mAk"r]Y)]3m(Q`_.&=cW]LB%B@r62bAsX9]H)`<G@eLX!(aM7)IgK;p%(.3Ee9cc]L=AHoZ&"&6TU1"dNX_9q^]G1t<BC.+MjhGAjM6Z/tsG*Da+]O`t0]G'nlf*7:oJ0iK[dX>RHU*5\"O5>.PGCm<9,9tifOPN*c8tn\\6B9n3D$ubr@']FOAXC=(8s(1NlJuQj1UBnXPs9`C1fqiDfJ1QP1cc6PJrJDp[tTDG$?O@$)TcQ_Kspf7$(^(NK.0F]SNXHmZ2XCjFO4(T+Cr(8o1-U[;D1"XA+7+GlDNH#%V"2+M*Ko,dsgCDQ$X'j.-jn)JH_4,$@9G'$mV_!PCg*>&d)pT=rE'olp<Kh`H1pR$=]qC#u`d!M0h5l<*#E%KE:D:%O(WPiOYPp^j\MQ]K-U)G/DpbmVs5WUMN&+eF?k@lG<gO57H:Ar'#Yo<>YMM,X2MN`@rJdrT0"=>K0K%'0Vr?r]C=]aXN/8(6Dp0F?8-oJHJk!J,p9WLp;5;U*[G-J$-_De.h`HN"`&3f97Ui3F3(o8=SQeeiTQ*9"niY1@]N4]/dP';qVB:\u%na8`h156A%'th4R9t%k-HsIng$->t&n':Oga-,db]eVldQ5Cak%BQde/YCcXE+7$pZ!]&hibHff4eLUtUR.6jh^el4P-&42i-.QJfs#1Aq*$0,dI-W'0+d$G
 EBf7Q8D"-s-i44u-9Pk=%g>8]_?N@1juXM>>KeQ$%](dU,o$)tOL8+62PRNI*P4P$AN8Wk/boRd]*4=:.=_S06Z@LPt<$tgD[gk4h*J+LhoWj>thAs0JW$RmH14fPh,j\(0Pac9j)l!)S)/E`/tZ92\Of.Iq.f]<O9JoER6"64#(Eg[>t>ue0P3LXP,33i\b@PSDWFlU#4-6\<=8<:c]m_:f(\Z!VWH,]<e#.e.:7bS'+r:%Vkg\6_W=1e?rs$tfohq<ZK2"n0TBk+@D?3h9.5(kgR$sqBW7W==Ii,Z=ON!"3b+M,j'AJi@=RA'97Pp(&F3)tto`Jo;qTgtq;PTq?lE\psd=GHFo/2HL([`#<jA:s1ZR4m<lW_=(9oRB4!m3/.FHIpIi([*8FCD<0$;7+I[?Rb\J[;P^jYG!C,=U?#FouA-cV(4J$8@cqK5LrEWP&`J;pN/`#@Zia;,lIT->=<meV-?DVE]@NNH!q;mgXh>oMb#-;*MGj(c(=\J92k_&%.sJmRSiiS-1=&>NYL"rK`JG8*C\67+$u2:+<$JG%Yl/dN-F3UU>&o^SS29:h..,Z6ih7\C="=.6;Kq^J=maOE6d;PLUhdELHVRg+fFVJ"kn:[pHolI#d>+n,65];1A;N!.sM:?aXI#"f&aP3D!a%\*AisYZ"5kVWaA@C`70DamB-^bB\0U);.b<nTdOThS'8l$$(5@6L*N<BT4Q@3>:[lgilmbDOt#)=8l]d>F0BO'"q0)q5^-LolmR-?2f6lV3_2d"8FAo"A7?)QI6*\+,=-FSF0c\o8'"Ub?'KO-2&1=_kbbCcBGJE1Elm3@9\mnQZ-!XS<lP[t',_/1f-"6+9@Sli2Ajh8E`&;p#3cV)ilSh3!`e5WLjhpC<IWA94$TJsOh_@<-]aT,A*gg+@4rZjeXTG3mREKgZ0BC75>f@@3XF-h%K_YqI5Z\=<clU5m\ZNN-5\Ipl:_e8%8@FD/qfQs2sB%R5j
 kp;Sl@hMYKNOoL'oe]U;2nmheGK[4-nQckSi9l(_V#V0N>E\>5;tYa>+N^ZrEmY'5Udf_BKt^chhCmcAL3B@IgSalJ%.LL2&Z>E4L#eq5&`^1e3"N()+Y!5sB3ADI0-kf1kk9]6i$#jfT5;bAjg"(IK.<HYL*e8%aU0;-9X4gTTMEc>npm'q39W$4AG>C(S#;pVbTdhRp'5V=e/ME(Y#'#7@D>)3:sM4k+F)^a^KHkZ:+=d6[8NBIE@E-&iJ*,TP6ihhQ6p#k]@^:p8N-&G$e\9:0[e(Kj9Qc<rFToE0<Gb,!%5o7D>.E&Pn3WVWS5Rql,PZi!kA$h@-%-uk]VQ:<bu=.]ZA:HQI4)PY.@bckOn%XoMsO^`rT8kXU6Zg=aE\Q.,CgWms\N7M,ioSI9EIqj<"(!Qa*oRVkdc`oREJt3L5-J!u-b?npMD2';:bUb$e]J$b2k:pbc%I`*7akeje='o>Nnu[%rL+J,fD8:LG%lb>]qU,o1-1^>X?P!Z:kuiHRYf5L6i8,OGb%%tP&##5Q(J(_Gg\kEa?^M5<N31lBW6bkqn74c$h`sGYF_-H,G5A5fP56ZS&@TTbZt[<-BtdUb+*RFQC8Ek61ck8A2)3)l-g2+-c"g24air'h>'!rI2Q%LrZQkWVSY,!A\*pqeM_Fai7B&:Ilj>>k@fd/u[@!X/bAe[0dIi>BNqeaD$:FGK*dZh<`$/hsb76i)9AX/\)oWB^q\#p^AoUS0i!h!92qi:6T[,?kq0\!+CHb\0BsT)WV$I.:\32[nd!n>YIB?3ugZotQe_CfE<oo"IQU/"TE01FT%IT[N[_G)Sa&d]4lV:elJ?g8(e)t!ic5R,DceI6<g9MMNU.qSAOM^"X8C*q=$pp/lIW8^+6V1Ek.5\JOeEnW7>Y/G2l@\op4cn'a0DKq*a#J\UZf3-FkF%I(+B@fS"\3O!`<e/%ASOiM3!Zk9mAdm#$F<t`^)"j/<T4j'HZ?fq`T/?^:
 0]F\U&<+J:O^fWRJDnlJ,\a$%eA4=bKo*+S\5\Sg'@Frl('WNrr@?B4Oa~>
+endstream
+endobj
+62 0 obj
+<< /Type /Page
+/Parent 1 0 R
+/MediaBox [ 0 0 612 792 ]
+/Resources 3 0 R
+/Contents 61 0 R
+/Annots 63 0 R
+>>
+endobj
+63 0 obj
+[
+64 0 R
+65 0 R
+66 0 R
+67 0 R
+68 0 R
+]
+endobj
+64 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 517.137 678.1 546.465 666.1 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 25 0 R
+/H /I
+>>
+endobj
+65 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 183.264 235.613 251.256 223.613 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (../resources.html#specs)
+/S /URI >>
+/H /I
+>>
+endobj
+66 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 280.548 235.613 352.548 223.613 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (../resources.html#articles)
+/S /URI >>
+/H /I
+>>
+endobj
+67 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 232.25 719.0 361.75 709.0 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/fop/)
+/S /URI >>
+/H /I
+>>
+endobj
+68 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 221.685 707.75 372.315 697.75 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/fop/)
+/S /URI >>
+/H /I
+>>
+endobj
+69 0 obj
+<< /Length 3452 /Filter [ /ASCII85Decode /FlateDecode ]
+ >>
+stream
+Gatm>gN)%.&q0LUYi[CfMJ8442/eo:nPlA4EAg[;;RP?d8:j6GGYnanZM3[o_.tttdWB5f8o-aXUUu(@IF-?ES#bF)=$Ni-lNmN>^C"7nAVDZ5^VB?ts(fYrCtGpaDJcTVEV8Y[lK6[,*'I\N\6@G3<q+_GlD[&`ftkh;2OX6A=!a25WoRs]g@\P:i@@n:^U)nNK1NO92"+e"i>`;#-(:\Do[,U`Z@$?RMC`95r]1cS)RSU?EP?r$gA8:dq4k21'Xk[ir.1J+rR36Wel_\0hlWq]M[>!fN[ui>C7hTo#eOVBkf%?Crk[+%o2DDd:\>qoNpBi.dk87?Y4"mPPAb>+b?6^Wkb)d/onCY,GO]1:pfl`@48'XA[(;l)lb1L0_0_._Xo$n]*A$hhj+=[OY8\usYF2uW"$\ZP;7`/V[VIo.U<=+(f6Wl%gS#QCcMK-No`5M1D:aQ\/AI,@LjKV#M44fI:Uj\ll0[a(R^[L5E&1uJ25I-:.f#st]pmcLe%4#\og1_G*3+,++*cJbnLs#-0F,U\3D:m19CUBe55[u'chHML0BCRd)7l,)dn6X'.6_7SOKrV/U[*2lT%T=G4_6M651!_jgJW%NqtjIHLSC`3#*2>C,hMG;=2ltF5j5jJ:of/dG,&4`qsrqCm2\X6Td=a+N9q3FhAn<8<Mebp0]3DTbGmr^PqY'!V=PTr]O"b3S\j^/)9-HD7u2:Sg#t88\V'#RJ>,#@&SH_2CURVa(FLL9"T%;Ur%9@UOt8sP3#j?ITK*(!o;S[mlmgg9b?:8P.q)C^q,-2SNjsUg!W62XJJU3e\.3pH/Y3]Y+Cr:3bjlmg\l%@I_YD1_Xg@\s6't5`)P0"AojY3#g8)5T1ID\T=?*A6&s8k21(7nq0Ia?7VjiOfTh2r+$:A\a)p`fa+1HLm\G9!s8Nlo7lp6gIJH,InPt.=7!6_nNW'+iZb#I&db$rDf*/7b6s#;hVZa>^YmaDBsg6V9^h:E*
 >Y#<NboC:d,'(TOsO_97aa!)aZ=_%XR[L1(M?5sG/2[;EaCo]ATq*]V<q57LJ8"h]UbiAa.5SC^aA(TZ>SN_Y=%m2@7'Z=?)3uUC%[HB7O!227dEIj*k"D-R[I;#+(h:N58TVoM@d`4J(&7saUnG"kW;D^h-WJ)k[mL8HF\7;`$O/HD52`ch$<mB2)SNeTtN%RSh>G5_#EM2^#G39gu$+\qq?6r$_9[(3t,n)pC1HMu"'EiSEg8b3BTBHM(4-dbeD_g+p]t%7`CnFh/ZnRYlCCbbHr82g&j>n]0m1!tSfq&i[5ta4W]0=oH"0u)7[&-E+W;k@W!U=Jr59A@TLAQ.qP2$n`29(/";P&HJXNbg2IStu-*C../?(I6W8"I[R'eW*=lDY=iD<n0,<GG%#.)q.Di6PO$SKm2efE;-&#Z]5[$[*\,3=D)pK]&\9!j._C8B%S6$`^M9=_jf'ql/XNTFZid:,iRA'SgDAcO#?@8eNQa]81\`L0h.JN,TPki#/C@qDp<@1M7\%4J8/!D=-2&rL%1o?Yo@ZYB+'b.m]SkSV-8W;RXQD6;:b,s7ka^"P<<(IORWf\TZm6QFDl311o+kWOY:Kr^hRg#t5'5Lpdm95UUb5Vpb]u6i[Mb,23QZ8Vt,(m6"q"osa:-\KQ&8=P.h0(LA5I8cY!9"#p6on+=&1'9P!iWP>*Mlc<jpU;?5V\NR(Ul65^&ZpC'RS^Uj3p"u&CTT6`[iOOE.cY(E`VPoWF@jN1;>$]hNJH&#Ff5u/USCUXsk2so(G!%b3;;;m6=K+TK'R(P?XQ+C7ATeSjCR(<gmYk>aL?WSk`Fs7'h"V[]X0q;+]sO<i!EJ_7#TC'<30!CFQ0_XJgQA+^S3Tbf!P(%jReWAL`JuC]?\Z=_]0@$tPEV+[/#mt@"eLl).H%KnoR),^!Tc>1]*-7?pkF1W3A7@=C'K@>U,_;p!,L\_1p6QO3Y(M\o=dnV1In^"iaj.uE+Q;HbE;
 *%!+`c*8*]W,hi*'Z:^H,P=S'a/e5>f)ie3KPmI[>+N\W?imkj,;.3&Z\$_X!L]86m^qdNW@C2&j2`aVZB>)RlWA=A84)G.Y9X$+K2*`4GkZ7T*i-Q;uAcUK+%M.,e]Tj%*\`'XP+ELo/@h7DgW.a;6Ep!&<cSnED!=)u@sGR<if<7u*2O2>Fno=i7bKVNV4T1#j;-#bN)Ul?007.aH4_XZDuf8(O"OI]T?&58aD,,T5]SXDjkrN!mo`J*XmGTJ9,LB4;l4l:E*?*t\;`rZLFK5&)j/h.*IH;QQ,?I>i\9127(83bJQYUPDr_7lBt)"VaX+_21uBKWcf&qMbPW#rVK"_MlJk\479#$hCu"cT'XG(E16Tt,ZS_?H7t'*hGoGFNf+r\?rUH_J@8qq!LG)Fb>c<G>TQ-3$i)#W-!l6g[G&4-?tX<XHM`^^YBM*qq!Y!Bq[NqY5a^fSU[/-lsmsoRZHC;@4@-&C2pr@?f=[`\g*6nYYk4lCO9mo)['[5_:=\+DUr)D'TpGl@9tA.'[79V[4jfPMboZ&$BY@5&1_\ETE"k7Bt#V^3#,L4$?^p*e9#39#d8.WK@86787(3'RQ#>ao3#QMQKF'_DS7ohBS/>S5GhC7#'LscH-"FOtP5]NkY874ZT@?4tIr(#c!tQi19`:pKJoE.),#1)+gRq],oC\>\kJt;1=Ns"?,`%Zj^r?</3h%`>MG;6ms'u%QgV/#2oc8O)68;0RBX3N123YXq)oF"U*ZSh&`a.JtB7\K7M$"rh7f_jb`F/]pK)j3ILiNFZd/LiGI6ak8YMTpQJKq5.-m7$h8.o%XQDL(m"HA*VDtBnj5PH+_+9F'Wt[4$+2fc"ZK=)q+qj*FaNk>@N3=kr5nFbB'QrCK0=.MN94]hGgXM"\h?MN*\h,9?#aT&ba?KAAkp4>'`X^("#A*-K>*$iajU>I$@GN27G8-*3D$D?pQ1X5.f!;c`A(6aYOQ43((![!)ta?Pa)
 H1C:(Z$?34/Q,`CS_1p#TgRdu!$O]c]/&3:7C:.k*(9mld2ha`Q>m(ZQQrh\`2ACG'WSUt!(t9kn\4AQ['GdqJZ$dc>ng1JSYV)"grS-BXV]</%Mg,A*(2.!!4ZfA!3=rKA3J>V0@\^!KW2=##=>06&BH?HkJFh5%">2)/u!2]$@*E"QeWSsUJ_$(oq5.aoYaeDs[ca>hgG0brfrmBl!\!%_gBZqs48@5t*Y0(@mBUKVR2r9LiP#'Sde]E7/I:]1s\s6[YW!R`&Nmc"IiB,0Fr*Z9EJlWQQ,YX)U^g$9@ik/Fdh`f3]bLUXcI[,WiZJ[*b_\0,("i8a9B*ntV23d0_r)QYd@i&\#NC>d^)`Kh#?(:NN6r=6>cTc@;?*qI]Yc!@qb\@ujm:,B0:F(&%?%Y3`N.,/i#8Z2A)R1o697a?eT!o8Fs=MohTCum$:S_i5Y4D*i_A>_i^AG8f_U-.9PMUTi.OT,@6^^U_~>
+endstream
+endobj
+70 0 obj
+<< /Type /Page
+/Parent 1 0 R
+/MediaBox [ 0 0 612 792 ]
+/Resources 3 0 R
+/Contents 69 0 R
+/Annots 71 0 R
+>>
+endobj
+71 0 obj
+[
+72 0 R
+73 0 R
+74 0 R
+75 0 R
+76 0 R
+]
+endobj
+72 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 375.624 619.19 476.604 607.19 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xml.apache.org/xalan-j/commandline.html)
+/S /URI >>
+/H /I
+>>
+endobj
+73 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 302.616 448.656 381.948 436.656 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://java.sun.com/j2se/1.4/docs/tooldocs/solaris/java.html)
+/S /URI >>
+/H /I
+>>
+endobj
+74 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 210.648 339.446 317.076 327.446 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (../faq.html#pagenum)
+/S /URI >>
+/H /I
+>>
+endobj
+75 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 232.25 719.0 361.75 709.0 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/fop/)
+/S /URI >>
+/H /I
+>>
+endobj
+76 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 221.685 707.75 372.315 697.75 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/fop/)
+/S /URI >>
+/H /I
+>>
+endobj
+77 0 obj
+<< /Length 616 /Filter [ /ASCII85Decode /FlateDecode ]
+ >>
+stream
+GatU09lldX&A@ZcG&hV8>(M@Fb.TZr3,($?;JqmBYU`(QYT]Ajc+i_i&1#`C@A^s3TgekP]j5kqBlK1=Nrb$+cH?1kMZ=uK<KX*CB>L!d`kX@>$-psA>U\P(Fh/'WI8WH<LOEX+2+o,"km$Qfhq"]iXWiYK?E,B^.'haMXm2ceQ=dIEOlgAiIG![7YkW5:a\+$V[dsKB``oeR/aae\hT;LZdTSoS"Qu0!4iTl6_!NEN0paF'RTLeu`-MNj'ML#36qU(u$K2kOG3[u(CN:7qiGcJJS6T(?e!Z2?=D$hXZRMP^%&t$%>/(S/-lPuH7;Xnfc_upWXcJg?!ij;6pqc_04[Z6I-TCF7628cVnG``HirMaK$duJE"lUC&\h[iF10N&8QE?1fX%rc80rUHqN$lijV0\<i/:[W5IIhHOhHncO$l8t%PLcrJbR3I%EA?o?h`B(LA91EIbeDZ]W\=Z$Eh\2@&r-sT1K;%t;BqD`bk8#Fni+b@-`F;RNZM1Ap#aE(5cHl2+r1qtd^L`OQ[!qmf^mSCqc8]u>4]o@Q7q[Z';KnMm>DJDjRe:0&19lIa"Q/TrXss82J(`UFn)]iZ"srhW[88.<?8Yoquoc[<"/~>
+endstream
+endobj
+78 0 obj
+<< /Type /Page
+/Parent 1 0 R
+/MediaBox [ 0 0 612 792 ]
+/Resources 3 0 R
+/Contents 77 0 R
+/Annots 79 0 R
+>>
+endobj
+79 0 obj
+[
+80 0 R
+81 0 R
+82 0 R
+]
+endobj
+80 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 314.628 696.8 429.732 684.8 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (../gethelp.html)
+/S /URI >>
+/H /I
+>>
+endobj
+81 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 232.25 719.0 361.75 709.0 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/fop/)
+/S /URI >>
+/H /I
+>>
+endobj
+82 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 221.685 707.75 372.315 697.75 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://xmlgraphics.apache.org/fop/)
+/S /URI >>
+/H /I
+>>
+endobj
+84 0 obj
+<<
+ /Title (\376\377\0\61\0\40\0\123\0\171\0\163\0\164\0\145\0\155\0\40\0\122\0\145\0\161\0\165\0\151\0\162\0\145\0\155\0\145\0\156\0\164\0\163)
+ /Parent 83 0 R
+ /Next 85 0 R
+ /A 9 0 R
+>> endobj
+85 0 obj
+<<
+ /Title (\376\377\0\62\0\40\0\111\0\156\0\163\0\164\0\141\0\154\0\154\0\141\0\164\0\151\0\157\0\156)
+ /Parent 83 0 R
+ /First 86 0 R
+ /Last 87 0 R
+ /Prev 84 0 R
+ /Next 88 0 R
+ /Count -2
+ /A 11 0 R
+>> endobj
+86 0 obj
+<<
+ /Title (\376\377\0\62\0\56\0\61\0\40\0\111\0\156\0\163\0\164\0\162\0\165\0\143\0\164\0\151\0\157\0\156\0\163)
+ /Parent 85 0 R
+ /Next 87 0 R
+ /A 13 0 R
+>> endobj
+87 0 obj
+<<
+ /Title (\376\377\0\62\0\56\0\62\0\40\0\120\0\162\0\157\0\142\0\154\0\145\0\155\0\163)
+ /Parent 85 0 R
+ /Prev 86 0 R
+ /A 15 0 R
+>> endobj
+88 0 obj
+<<
+ /Title (\376\377\0\63\0\40\0\123\0\164\0\141\0\162\0\164\0\151\0\156\0\147\0\40\0\106\0\117\0\120\0\40\0\141\0\163\0\40\0\141\0\40\0\123\0\164\0\141\0\156\0\144\0\141\0\154\0\157\0\156\0\145\0\40\0\101\0\160\0\160\0\154\0\151\0\143\0\141\0\164\0\151\0\157\0\156)
+ /Parent 83 0 R
+ /First 89 0 R
+ /Last 92 0 R
+ /Prev 85 0 R
+ /Next 93 0 R
+ /Count -4
+ /A 17 0 R
+>> endobj
+89 0 obj
+<<
+ /Title (\376\377\0\63\0\56\0\61\0\40\0\125\0\163\0\151\0\156\0\147\0\40\0\164\0\150\0\145\0\40\0\146\0\157\0\160\0\40\0\163\0\143\0\162\0\151\0\160\0\164\0\40\0\157\0\162\0\40\0\142\0\141\0\164\0\143\0\150\0\40\0\146\0\151\0\154\0\145)
+ /Parent 88 0 R
+ /Next 90 0 R
+ /A 19 0 R
+>> endobj
+90 0 obj
+<<
+ /Title (\376\377\0\63\0\56\0\62\0\40\0\127\0\162\0\151\0\164\0\151\0\156\0\147\0\40\0\171\0\157\0\165\0\162\0\40\0\157\0\167\0\156\0\40\0\163\0\143\0\162\0\151\0\160\0\164)
+ /Parent 88 0 R
+ /Prev 89 0 R
+ /Next 91 0 R
+ /A 21 0 R
+>> endobj
+91 0 obj
+<<
+ /Title (\376\377\0\63\0\56\0\63\0\40\0\122\0\165\0\156\0\156\0\151\0\156\0\147\0\40\0\167\0\151\0\164\0\150\0\40\0\152\0\141\0\166\0\141\0\47\0\163\0\40\0\55\0\152\0\141\0\162\0\40\0\157\0\160\0\164\0\151\0\157\0\156)
+ /Parent 88 0 R
+ /Prev 90 0 R
+ /Next 92 0 R
+ /A 23 0 R
+>> endobj
+92 0 obj
+<<
+ /Title (\376\377\0\63\0\56\0\64\0\40\0\106\0\117\0\120\0\47\0\163\0\40\0\144\0\171\0\156\0\141\0\155\0\151\0\143\0\141\0\154\0\40\0\143\0\154\0\141\0\163\0\163\0\160\0\141\0\164\0\150\0\40\0\143\0\157\0\156\0\163\0\164\0\162\0\165\0\143\0\164\0\151\0\157\0\156)
+ /Parent 88 0 R
+ /Prev 91 0 R
+ /A 25 0 R
+>> endobj
+93 0 obj
+<<
+ /Title (\376\377\0\64\0\40\0\125\0\163\0\151\0\156\0\147\0\40\0\130\0\141\0\154\0\141\0\156\0\40\0\164\0\157\0\40\0\103\0\150\0\145\0\143\0\153\0\40\0\130\0\123\0\114\0\55\0\106\0\117\0\40\0\111\0\156\0\160\0\165\0\164)
+ /Parent 83 0 R
+ /Prev 88 0 R
+ /Next 94 0 R
+ /A 27 0 R
+>> endobj
+94 0 obj
+<<
+ /Title (\376\377\0\65\0\40\0\115\0\145\0\155\0\157\0\162\0\171\0\40\0\125\0\163\0\141\0\147\0\145)
+ /Parent 83 0 R
+ /Prev 93 0 R
+ /Next 95 0 R
+ /A 29 0 R
+>> endobj
+95 0 obj
+<<
+ /Title (\376\377\0\66\0\40\0\120\0\162\0\157\0\142\0\154\0\145\0\155\0\163)
+ /Parent 83 0 R
+ /Prev 94 0 R
+ /A 31 0 R
+>> endobj
+96 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F1
+/BaseFont /Helvetica
+/Encoding /WinAnsiEncoding >>
+endobj
+97 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F5
+/BaseFont /Times-Roman
+/Encoding /WinAnsiEncoding >>
+endobj
+98 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F3
+/BaseFont /Helvetica-Bold
+/Encoding /WinAnsiEncoding >>
+endobj
+99 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F2
+/BaseFont /Helvetica-Oblique
+/Encoding /WinAnsiEncoding >>
+endobj
+100 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F9
+/BaseFont /Courier
+/Encoding /WinAnsiEncoding >>
+endobj
+101 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F6
+/BaseFont /Times-Italic
+/Encoding /WinAnsiEncoding >>
+endobj
+102 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F7
+/BaseFont /Times-Bold
+/Encoding /WinAnsiEncoding >>
+endobj
+1 0 obj
+<< /Type /Pages
+/Count 7
+/Kids [6 0 R 35 0 R 50 0 R 56 0 R 62 0 R 70 0 R 78 0 R ] >>
+endobj
+2 0 obj
+<< /Type /Catalog
+/Pages 1 0 R
+ /Outlines 83 0 R
+ /PageMode /UseOutlines
+ >>
+endobj
+3 0 obj
+<< 
+/Font << /F1 96 0 R /F5 97 0 R /F3 98 0 R /F2 99 0 R /F9 100 0 R /F6 101 0 R /F7 102 0 R >> 
+/ProcSet [ /PDF /ImageC /Text ] >> 
+endobj
+9 0 obj
+<<
+/S /GoTo
+/D [35 0 R /XYZ 67.0 695.0 null]
+>>
+endobj
+11 0 obj
+<<
+/S /GoTo
+/D [35 0 R /XYZ 67.0 361.266 null]
+>>
+endobj
+13 0 obj
+<<
+/S /GoTo
+/D [35 0 R /XYZ 67.0 319.132 null]
+>>
+endobj
+15 0 obj
+<<
+/S /GoTo
+/D [35 0 R /XYZ 67.0 222.779 null]
+>>
+endobj
+17 0 obj
+<<
+/S /GoTo
+/D [35 0 R /XYZ 67.0 126.426 null]
+>>
+endobj
+19 0 obj
+<<
+/S /GoTo
+/D [50 0 R /XYZ 67.0 695.0 null]
+>>
+endobj
+21 0 obj
+<<
+/S /GoTo
+/D [56 0 R /XYZ 67.0 226.76 null]
+>>
+endobj
+23 0 obj
+<<
+/S /GoTo
+/D [56 0 R /XYZ 67.0 117.207 null]
+>>
+endobj
+25 0 obj
+<<
+/S /GoTo
+/D [62 0 R /XYZ 67.0 559.9 null]
+>>
+endobj
+27 0 obj
+<<
+/S /GoTo
+/D [62 0 R /XYZ 67.0 368.347 null]
+>>
+endobj
+29 0 obj
+<<
+/S /GoTo
+/D [70 0 R /XYZ 67.0 553.79 null]
+>>
+endobj
+31 0 obj
+<<
+/S /GoTo
+/D [70 0 R /XYZ 67.0 142.846 null]
+>>
+endobj
+83 0 obj
+<<
+ /First 84 0 R
+ /Last 95 0 R
+>> endobj
+xref
+0 103
+0000000000 65535 f 
+0000031588 00000 n 
+0000031688 00000 n 
+0000031780 00000 n 
+0000000015 00000 n 
+0000000071 00000 n 
+0000001117 00000 n 
+0000001237 00000 n 
+0000001353 00000 n 
+0000031928 00000 n 
+0000001485 00000 n 
+0000031991 00000 n 
+0000001619 00000 n 
+0000032057 00000 n 
+0000001755 00000 n 
+0000032123 00000 n 
+0000001891 00000 n 
+0000032189 00000 n 
+0000002027 00000 n 
+0000032255 00000 n 
+0000002163 00000 n 
+0000032319 00000 n 
+0000002299 00000 n 
+0000032384 00000 n 
+0000002435 00000 n 
+0000032450 00000 n 
+0000002571 00000 n 
+0000032514 00000 n 
+0000002707 00000 n 
+0000032580 00000 n 
+0000002843 00000 n 
+0000032645 00000 n 
+0000002979 00000 n 
+0000003161 00000 n 
+0000003347 00000 n 
+0000006762 00000 n 
+0000006885 00000 n 
+0000006989 00000 n 
+0000007159 00000 n 
+0000007349 00000 n 
+0000007537 00000 n 
+0000007722 00000 n 
+0000007903 00000 n 
+0000008093 00000 n 
+0000008260 00000 n 
+0000008430 00000 n 
+0000008602 00000 n 
+0000008772 00000 n 
+0000008954 00000 n 
+0000009140 00000 n 
+0000012453 00000 n 
+0000012576 00000 n 
+0000012617 00000 n 
+0000012805 00000 n 
+0000012987 00000 n 
+0000013173 00000 n 
+0000015969 00000 n 
+0000016092 00000 n 
+0000016133 00000 n 
+0000016301 00000 n 
+0000016483 00000 n 
+0000016669 00000 n 
+0000020778 00000 n 
+0000020901 00000 n 
+0000020956 00000 n 
+0000021091 00000 n 
+0000021268 00000 n 
+0000021448 00000 n 
+0000021630 00000 n 
+0000021816 00000 n 
+0000025361 00000 n 
+0000025484 00000 n 
+0000025539 00000 n 
+0000025737 00000 n 
+0000025951 00000 n 
+0000026124 00000 n 
+0000026306 00000 n 
+0000026492 00000 n 
+0000027200 00000 n 
+0000027323 00000 n 
+0000027364 00000 n 
+0000027529 00000 n 
+0000027711 00000 n 
+0000032711 00000 n 
+0000027897 00000 n 
+0000028101 00000 n 
+0000028319 00000 n 
+0000028493 00000 n 
+0000028643 00000 n 
+0000029024 00000 n 
+0000029324 00000 n 
+0000029575 00000 n 
+0000029871 00000 n 
+0000030197 00000 n 
+0000030495 00000 n 
+0000030672 00000 n 
+0000030812 00000 n 
+0000030920 00000 n 
+0000031030 00000 n 
+0000031143 00000 n 
+0000031259 00000 n 
+0000031366 00000 n 
+0000031478 00000 n 
+trailer
+<<
+/Size 103
+/Root 2 0 R
+/Info 4 0 R
+>>
+startxref
+32762
+%%EOF

Added: xmlgraphics/site/deploy/fop/1.0/running.xml
URL: http://svn.apache.org/viewvc/xmlgraphics/site/deploy/fop/1.0/running.xml?rev=966110&view=auto
==============================================================================
--- xmlgraphics/site/deploy/fop/1.0/running.xml (added)
+++ xmlgraphics/site/deploy/fop/1.0/running.xml Wed Jul 21 07:08:39 2010
@@ -0,0 +1,358 @@
+<?xml version="1.0" encoding="ISO-8859-1"?><!--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+--><!-- $Id$ --><!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "document-v13.dtd">
+<document>
+  <header>
+    <title>Running Apache FOP</title>
+    <version>$Revision: 964711 $</version>
+  </header>
+
+  <body>
+    <section id="require">
+      <title>System Requirements</title>
+      <p>The following software must be installed:</p>
+      <ul>
+        <li>
+          Java 1.4.x or later Runtime Environment.
+          <ul>
+            <li>
+              Many JREs &gt;=1.4 contain older JAXP implementations (which often contain bugs). It's
+              usually a good idea to replace them with a current implementation.
+            </li>
+          </ul>
+        </li>
+        <li>
+          Apache FOP. The <link href="../download.html">FOP distribution</link> includes all libraries that you will
+          need to run a basic FOP installation. These can be found in the [fop-root]/lib directory. These
+          libraries include the following:
+          <ul>
+            <li><link class="fork" href="ext:xmlgraphics.apache.org/commons">Apache XML Graphics Commons</link>, an shared library for Batik and FOP.</li>
+            <li><link class="fork" href="ext:batik">Apache Batik</link>, an SVG library.</li>
+            <li><link class="fork" href="ext:commons-logging">Apache Commons Logging</link>, a logger abstraction kit.</li>
+            <li><link class="fork" href="ext:commons-io">Apache Commons IO</link>, a library with I/O utilities.</li>
+            <li><link class="fork" href="ext:excalibur/framework">Apache Excalibur/Avalon Framework</link>, for XML configuration handling.</li>
+          </ul>
+        </li>
+      </ul>
+      <p>The following software is optional, depending on your needs:</p>
+      <ul>
+        <li>
+          Graphics libraries. Generally, FOP contains direct support for the most important
+          bitmap image formats (including PNG, JPEG and GIF). See
+          <link href="graphics.html">FOP: Graphics Formats</link> for details.
+        </li>
+        <li>
+          PDF encryption. See <link href="pdfencryption.html">FOP: PDF Encryption</link> for details.
+        </li>
+      </ul>
+      <p>In addition, the following system requirements apply:</p>
+      <ul>
+        <li>
+          If you will be using FOP to process SVG, you must do so in a graphical environment.
+          See <link href="graphics.html#batik">FOP: Graphics (Batik)</link> for details.
+        </li>
+      </ul>
+    </section>
+    <section id="install">
+      <title>Installation</title>
+      <section id="install-instruct">
+        <title>Instructions</title>
+        <p>
+          Basic FOP installation consists of first unzipping the <code>.gz</code> file that is the
+          distribution medium, then unarchiving the resulting <code>.tar</code> file in a
+          directory/folder that is convenient on your system. Please consult your operating system
+          documentation or Zip application software documentation for instructions specific to your
+          site.
+        </p>
+      </section>
+      <section id="install-problems">
+        <title>Problems</title>
+        <p>
+          Some Mac OSX users have experienced filename truncation problems using Stuffit to unzip
+          and unarchive their distribution media. This is a legacy of older Mac operating systems,
+          which had a 31-character pathname limit. Several Mac OSX users have recommended that
+          Mac OSX users use the shell command <code>tar -xzf</code> instead.
+        </p>
+      </section>
+    </section>
+    <section id="standalone-start">
+      <title>Starting FOP as a Standalone Application</title>
+      <section id="fop-script">
+        <title>Using the fop script or batch file</title>
+      <p>
+        The usual and recommended practice for starting FOP from the command line is to run the
+        batch file fop.bat (Windows) or the shell script fop (Unix/Linux).
+        These scripts require that the environment variable JAVA_HOME be
+        set to a path pointing to the appropriate Java installation on your system. Macintosh OSX
+        includes a Java environment as part of its distribution. We are told by Mac OSX users that
+        the path to use in this case is <code>/Library/Java/Home</code>. <strong>Caveat:</strong>
+        We suspect that, as Apple releases new Java environments and as FOP upgrades the minimum
+        Java requirements, the two will inevitably not match on some systems. Please see
+        <link href="http://developer.apple.com/java/faq">Java on Mac OSX FAQ</link> for information as
+        it becomes available.
+      </p>
+      <source xml:space="preserve"><![CDATA[
+USAGE
+Fop [options] [-fo|-xml] infile [-xsl file] [-awt|-pdf|-mif|-rtf|-tiff|-png|-pcl|-ps|-txt|-at [mime]|-print] <outfile>
+ [OPTIONS]
+  -version          print FOP version and exit
+  -d                debug mode
+  -x                dump configuration settings
+  -q                quiet mode
+  -c cfg.xml        use additional configuration file cfg.xml
+  -l lang           the language to use for user information
+  -r                relaxed/less strict validation (where available)
+  -dpi xxx          target resolution in dots per inch (dpi) where xxx is a number
+  -s                for area tree XML, down to block areas only
+  -v                run in verbose mode (currently simply print FOP version and continue)
+
+  -o [password]     PDF file will be encrypted with option owner password
+  -u [password]     PDF file will be encrypted with option user password
+  -noprint          PDF file will be encrypted without printing permission
+  -nocopy           PDF file will be encrypted without copy content permission
+  -noedit           PDF file will be encrypted without edit content permission
+  -noannotations    PDF file will be encrypted without edit annotation permission
+  -a                enables accessibility features (Tagged PDF etc., default off)
+  -pdfprofile prof  PDF file will be generated with the specified profile
+                    (Examples for prof: PDF/A-1b or PDF/X-3:2003)
+
+  -conserve         Enable memory-conservation policy (trades memory-consumption for disk I/O)
+                    (Note: currently only influences whether the area tree is serialized.)
+
+ [INPUT]
+  infile            xsl:fo input file (the same as the next)
+                    (use '-' for infile to pipe input from stdin)
+  -fo  infile       xsl:fo input file
+  -xml infile       xml input file, must be used together with -xsl
+  -atin infile      area tree input file
+  -ifin infile      intermediate format input file
+  -imagein infile   image input file (piping through stdin not supported)
+  -xsl stylesheet   xslt stylesheet
+
+  -param name value <value> to use for parameter <name> in xslt stylesheet
+                    (repeat '-param name value' for each parameter)
+
+  -catalog          use catalog resolver for input XML and XSLT files
+ [OUTPUT]
+  outfile           input will be rendered as PDF into outfile
+                    (use '-' for outfile to pipe output to stdout)
+  -pdf outfile      input will be rendered as PDF (outfile req'd)
+  -pdfa1b outfile   input will be rendered as PDF/A-1b compliant PDF
+                    (outfile req'd, same as "-pdf outfile -pdfprofile PDF/A-1b")
+  -awt              input will be displayed on screen
+  -rtf outfile      input will be rendered as RTF (outfile req'd)
+  -pcl outfile      input will be rendered as PCL (outfile req'd)
+  -ps outfile       input will be rendered as PostScript (outfile req'd)
+  -afp outfile      input will be rendered as AFP (outfile req'd)
+  -tiff outfile     input will be rendered as TIFF (outfile req'd)
+  -png outfile      input will be rendered as PNG (outfile req'd)
+  -txt outfile      input will be rendered as plain text (outfile req'd)
+  -at [mime] out    representation of area tree as XML (outfile req'd)
+                    specify optional mime output to allow the AT to be converted
+                    to final format later
+  -if [mime] out    representation of document in intermediate format XML (outfile req'd)
+                    specify optional mime output to allow the IF to be converted
+                    to final format later
+  -print            input file will be rendered and sent to the printer
+                    see options with "-print help"
+  -out mime outfile input will be rendered using the given MIME type
+                    (outfile req'd) Example: "-out application/pdf D:\out.pdf"
+                    (Tip: "-out list" prints the list of supported MIME types)
+  -svg outfile      input will be rendered as an SVG slides file (outfile req'd)
+                    Experimental feature - requires additional fop-sandbox.jar.
+
+  -foout outfile    input will only be XSL transformed. The intermediate
+                    XSL-FO file is saved and no rendering is performed.
+                    (Only available if you use -xml and -xsl parameters)
+
+
+ [Examples]
+  fop foo.fo foo.pdf
+  fop -fo foo.fo -pdf foo.pdf (does the same as the previous line)
+  fop -xml foo.xml -xsl foo.xsl -pdf foo.pdf
+  fop -xml foo.xml -xsl foo.xsl -foout foo.fo
+  fop -xml - -xsl foo.xsl -pdf -
+  fop foo.fo -mif foo.mif
+  fop foo.fo -rtf foo.rtf
+  fop foo.fo -print
+  fop foo.fo -awt]]></source>
+      <p>
+        PDF encryption is only available if FOP was compiled with encryption support
+        <strong>and</strong> if compatible encryption support is available at run time.
+        Currently, only the JCE is supported. Check the <link href="pdfencryption.html">Details</link>.
+      </p>
+      </section>
+      <section id="your-own-script">
+        <title>Writing your own script</title>
+        <p>FOP's entry point for your own scripts is the class
+<code>org.apache.fop.cli.Main</code>. The general pattern for the
+        command line is: <code>java -classpath &lt;CLASSPATH&gt;
+        org.apache.fop.cli.Main &lt;arguments&gt;</code>. The arguments
+        consist of the options and infile and outfile specifications
+        as shown above for the standard scripts. You may wish to review
+        the standard scripts to make sure that
+        you get your environment properly configured.
+        </p>
+      </section>
+      <section id="jar-option">
+        <title>Running with java's <code>-jar</code> option</title>
+      <p>
+        As an alternative to the start scripts you can run <code>java
+        -jar path/to/build/fop.jar &lt;arguments&gt;</code>, relying on
+        FOP to build the classpath for running FOP dynamically, see <link href="#dynamical-classpath">below</link>. If you use hyphenation,
+        you must put <code>fop-hyph.jar</code> in the <code>lib</code>
+        directory.
+      </p>
+
+      <p>You can also run <code>java -jar path/to/fop.jar
+      &lt;arguments&gt;</code>, relying on the <code>Class-Path</code>
+      entry in the manifest file. This works if you put
+      <code>fop.jar</code> and all jar files from the <code>lib</code>
+      directory in a single directory. If you use hyphenation, you
+      must also put <code>fop-hyph.jar</code> in that directory.</p>
+
+    <p>In both cases the arguments consist of the options and
+        infile and outfile specifications as shown above for the
+        standard scripts.</p>
+      </section>
+      <section id="dynamical-classpath">
+        <title>FOP's dynamical classpath construction</title>
+
+        <p>If FOP is started without a proper classpath, it tries to
+          add its dependencies dynamically. If the system property
+          <code>fop.home</code> contains the name of a directory, then
+          FOP uses that directory as the base directory for its
+          search. Otherwise the current working directory is the base
+          directory. If the base directory is called <code>build</code>,
+          then its parent directory becomes the base directory.</p>
+
+        <p>FOP expects to find <code>fop.jar</code> in the
+          <code>build</code> subdirectory of the base directory, and
+          adds it to the classpath. Subsequently FOP adds all
+          <code>jar</code> files in the lib directory to the
+          classpath. The lib directory is either the <code>lib</code>
+          subdirectory of the base directory, or, if that does not
+          exist, the base directory itself.</p>
+
+        <p>If the system property <code>fop.optional.lib</code>
+          contains the name of a directory, then all <code>jar</code>
+          files in that directory are also added to the classpath. See
+          the methods <code>getJARList</code> and
+          <code>checkDependencies</code> in
+          <code>org.apache.fop.cli.Main</code>.</p>
+
+      </section>
+    </section>
+    <section id="check-input">
+      <title>Using Xalan to Check XSL-FO Input</title>
+      <p>
+        FOP sessions that use -xml and -xsl input instead of -fo input are actually
+        controlling two distinct conversions: Tranforming XML to XSL-FO, then formatting
+        the XSL-FO to PDF (or another FOP output format).
+        Although FOP controls both of these processes, the first is included merely as
+        a convenience and for performance reasons.
+        Only the second is part of FOP's core processing.
+        If a user has a problem running FOP, it is important to determine which of these
+        two processes is causing the problem.
+        If the problem is in the first process, the user's stylesheet is likely the cause.
+        The FOP development team does not have resources to help with stylesheet issues,
+        although we have included links to some useful
+        <link href="../resources.html#specs">Specifications</link> and
+        <link href="../resources.html#articles">Books/Articles</link>.
+        If the problem is in the second process, FOP may have a bug or an unimplemented
+        feature that does require attention from the FOP development team.
+      </p>
+      <note>The user is always responsible to provide correct XSL-FO code to FOP.</note>
+      <p>
+        In the case of using -xml and -xsl input, although the user is responsible for
+        the XSL-FO code that is FOP's input, it is not visible to the user. To make the
+        intermediate FO file visible, the FOP distribution includes the "-foout" option
+        which causes FOP to run only the first (transformation) step, and write the
+        results to a file. (See also the Xalan command-line below)
+      </p>
+      <note>
+        When asking for help on the FOP mailing lists, <em>never</em> attach XML and
+        XSL to illustrate the issue. Always run the XSLT step (-foout) and send the
+        resulting XSL-FO file instead. Of course, be sure that the XSL-FO file is
+        correct before sending it.
+      </note>
+      <p>
+        The -foout option works the same way as if you would call the
+        <link href="http://xml.apache.org/xalan-j/commandline.html">Xalan command-line</link>:
+      </p>
+      <p>
+        <code>java org.apache.xalan.xslt.Process -IN xmlfile -XSL file -OUT outfile</code>
+      </p>
+      <p>
+        Note that there are some subtle differences between the FOP and Xalan command-lines.
+      </p>
+    </section>
+    <section id="memory">
+      <title>Memory Usage</title>
+      <p>
+        FOP can consume quite a bit of memory, even though this has been continually improved.
+        This is partly inherent to the formatting process and partly caused by implementation choices.
+        All FO processors currently on the market have memory problems with certain layouts.
+      </p>
+      <p>
+        If you are running out of memory when using FOP, here are some ideas that may help:
+      </p>
+      <ul>
+        <li>
+          Increase memory available to the JVM. See
+          <link href="http://java.sun.com/j2se/1.4/docs/tooldocs/solaris/java.html">the -Xmx option</link>
+          for more information.
+          <warning>
+            It is usually unwise to increase the memory allocated to the JVM beyond the amount of
+            physical RAM, as this will generally cause significantly slower performance.
+          </warning>
+        </li>
+        <li>
+          Avoid forward references.
+          Forward references are references to some later part of a document.
+          Examples include page number citations which refer to pages which follow the citation,
+          tables of contents at the beginning of a document, and page numbering schemes that
+          include the total number of pages in the document
+          (<link href="../faq.html#pagenum">"page N of TOTAL"</link>).
+          Forward references cause all subsequent pages to be held in memory until the reference
+          can be resolved, i.e. until the page with the referenced element is encountered.
+          Forward references may be required by the task, but if you are getting a memory
+          overflow, at least consider the possibility of eliminating them.
+          A table of contents could be replaced by PDF bookmarks instead or moved to the end of
+          the document (reshuffle the paper could after printing).
+        </li>
+        <li>
+          Avoid large images, especially if they are scaled down.
+          If they need to be scaled, scale them in another application upstream from FOP.
+          For many image formats, memory consumption is driven mainly by the size of the image
+          file itself, not its dimensions (width*height), so increasing the compression rate
+          may help.
+        </li>
+        <li>
+          Use multiple page sequences.
+          FOP starts rendering after the end of a page sequence is encountered.
+          While the actual rendering is done page-by-page, some additional memory is
+          freed after the page sequence has been rendered.
+          This can be substantial if the page sequence contains lots of FO elements.
+        </li>
+      </ul>
+    </section>
+    <section id="problems">
+      <title>Problems</title>
+      <p>If you have problems running FOP, please see the <link href="../gethelp.html">"How to get Help" page</link>.</p>
+    </section>
+  </body>
+</document>

Propchange: xmlgraphics/site/deploy/fop/1.0/running.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: xmlgraphics/site/deploy/fop/1.0/running.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Added: xmlgraphics/site/deploy/fop/1.0/servlets.html
URL: http://svn.apache.org/viewvc/xmlgraphics/site/deploy/fop/1.0/servlets.html?rev=966110&view=auto
==============================================================================
--- xmlgraphics/site/deploy/fop/1.0/servlets.html (added)
+++ xmlgraphics/site/deploy/fop/1.0/servlets.html Wed Jul 21 07:08:39 2010
@@ -0,0 +1,617 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta content="Apache Forrest" name="Generator">
+<meta name="Forrest-version" content="0.8">
+<meta name="Forrest-skin-name" content="pelt">
+<title>Servlets</title>
+<link type="text/css" href="../skin/basic.css" rel="stylesheet">
+<link media="screen" type="text/css" href="../skin/screen.css" rel="stylesheet">
+<link media="print" type="text/css" href="../skin/print.css" rel="stylesheet">
+<link type="text/css" href="../skin/profile.css" rel="stylesheet">
+<script src="../skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="../skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="../skin/fontsize.js" language="javascript" type="text/javascript"></script>
+<link rel="shortcut icon" href="../">
+</head>
+<body onload="init()">
+<script type="text/javascript">ndeSetTextSize();</script>
+<div id="top">
+<!--+
+    |header
+    +-->
+<div class="header">
+<!--+
+    |start group logo
+    +-->
+<div class="grouplogo">
+<a href="http://xmlgraphics.apache.org/"><img class="logoImage" alt="Apache XML Graphics" src="../images/group-logo.gif" title="Apache XML Graphics is responsible for the creation and maintenance of software for managing the conversion of XML formats to graphical output, and the creation and maintenance of related software components, based on software licensed to the Foundation"></a>
+</div>
+<!--+
+    |end group logo
+    +-->
+<!--+
+    |start Project Logo
+    +-->
+<div class="projectlogo">
+<a href="http://xmlgraphics.apache.org/fop/"><img class="logoImage" alt="Apache FOP" src="../images/logo.jpg" title="Apache FOP (Formatting Objects Processor) is the world's first output independent formatter. Output formats currently supported include PDF, PCL, PS, SVG, XML (area tree representation), Print, AWT, MIF and TXT. The primary output target is PDF."></a>
+</div>
+<!--+
+    |end Project Logo
+    +-->
+<!--+
+    |start Search
+    +-->
+<div class="searchbox">
+<form action="http://www.google.com/search" method="get" class="roundtopsmall">
+<input value="xmlgraphics.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank (this, 'Search the site with google');" size="25" name="q" id="query" type="text" value="Search the site with google">&nbsp; 
+                    <input name="Search" value="Search" type="submit">
+</form>
+</div>
+<!--+
+    |end search
+    +-->
+<!--+
+    |start Tabs
+    +-->
+<ul id="tabs">
+<li>
+<a class="unselected" href="../index.html">Home</a>
+</li>
+<li>
+<a class="unselected" href="../0.95/index.html">Version 0.95</a>
+</li>
+<li class="current">
+<a class="selected" href="../1.0/index.html">Version 1.0</a>
+</li>
+<li>
+<a class="unselected" href="../trunk/index.html">FOP Trunk</a>
+</li>
+<li>
+<a class="unselected" href="../dev/index.html">Development</a>
+</li>
+</ul>
+<!--+
+    |end Tabs
+    +-->
+</div>
+</div>
+<div id="main">
+<div id="publishedStrip">
+<!--+
+    |start Subtabs
+    +-->
+<div id="level2tabs"></div>
+<!--+
+    |end Endtabs
+    +-->
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+//  --></script>
+</div>
+<!--+
+    |breadtrail
+    +-->
+<div class="breadtrail">
+<a href="http://www.apache.org/">apache.org</a> &gt; <a href="http://xml.apache.org/">XML Federation</a> &gt; <a href="http://xmlgraphics.apache.org/">xmlgraphics.apache.org</a><script src="../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
+</div>
+<!--+
+    |start Menu, mainarea
+    +-->
+<!--+
+    |start Menu
+    +-->
+<div id="menu">
+<div onclick="SwitchMenu('menu_selected_1.1', '../skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('../skin/images/chapter_open.gif');">FOP 1.0</div>
+<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../1.0/index.html">About</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/releaseNotes_1.0.html">Release Notes</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/changes_1.0.html">Changes (1.0)</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/knownissues_overview.html">Known Issues</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/upgrading.html">Upgrading</a>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.6', '../skin/')" id="menu_selected_1.1.6Title" class="menutitle" style="background-image: url('../skin/images/chapter_open.gif');">Using FOP</div>
+<div id="menu_selected_1.1.6" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../1.0/compiling.html">Build</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/configuration.html">Configure</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/running.html">Run</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/embedding.html">Embed</a>
+</div>
+<div class="menupage">
+<div class="menupagetitle">Servlets</div>
+</div>
+<div class="menuitem">
+<a href="../1.0/anttask.html">Ant Task</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.7', '../skin/')" id="menu_1.1.7Title" class="menutitle">Features</div>
+<div id="menu_1.1.7" class="menuitemgroup">
+<div class="menuitem">
+<a href="../1.0/output.html">Output Targets</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/intermediate.html">Intermediate Format</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/pdfencryption.html">PDF Encryption</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/pdfa.html">PDF/A</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/pdfx.html">PDF/X</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/graphics.html">Graphics</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/fonts.html">Fonts</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/hyphenation.html">Hyphenation</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/extensions.html">Extensions</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/events.html">Events</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/metadata.html">Metadata</a>
+</div>
+<div class="menuitem">
+<a href="../1.0/accessibility.html">Accessibility</a>
+</div>
+</div>
+</div>
+<div id="credit"></div>
+<div id="roundbottom">
+<img style="display: none" class="corner" height="15" width="15" alt="" src="../skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
+<!--+
+  |alternative credits
+  +-->
+<div id="credit2"></div>
+</div>
+<!--+
+    |end Menu
+    +-->
+<!--+
+    |start content
+    +-->
+<div id="content">
+<div title="raw XML" class="xmllink">
+<a class="dida" href="servlets.xml"><img alt="XML - icon" src="../skin/images/xmldoc.gif" class="skin"><br>
+        XML</a>
+</div>
+<div title="Portable Document Format" class="pdflink">
+<a class="dida" href="servlets.pdf"><img alt="PDF -icon" src="../skin/images/pdfdoc.gif" class="skin"><br>
+        PDF</a>
+</div>
+<div class="trail">Font size: 
+	          &nbsp;<input value="Reset" class="resetfont" title="Reset text" onclick="ndeSetTextSize('reset'); return false;" type="button">      
+	          &nbsp;<input value="-a" class="smallerfont" title="Shrink text" onclick="ndeSetTextSize('decr'); return false;" type="button">
+	          &nbsp;<input value="+a" class="biggerfont" title="Enlarge text" onclick="ndeSetTextSize('incr'); return false;" type="button">
+</div>
+<h1>Servlets</h1>
+<h3>How to use Apache FOP in a Servlet</h3>
+<div id="minitoc-area">
+<ul class="minitoc">
+<li>
+<a href="#overview">Overview</a>
+</li>
+<li>
+<a href="#example-servlets">Example Servlets in the FOP distribution</a>
+</li>
+<li>
+<a href="#servlet">Create your own Servlet</a>
+<ul class="minitoc">
+<li>
+<a href="#minimal-servlet">A minimal Servlet</a>
+</li>
+<li>
+<a href="#xslt">Adding XSL tranformation (XSLT)</a>
+</li>
+<li>
+<a href="#cfg">Custom configuration</a>
+</li>
+<li>
+<a href="#performance">Improving performance</a>
+</li>
+<li>
+<a href="#uriresolver">Accessing resources in your web application</a>
+</li>
+</ul>
+</li>
+<li>
+<a href="#ie">Notes on Microsoft Internet Explorer</a>
+</li>
+<li>
+<a href="#servlet-engine">Servlet Engines</a>
+<ul class="minitoc">
+<li>
+<a href="#tomcat">Tomcat</a>
+</li>
+<li>
+<a href="#websphere">WebSphere 3.5</a>
+</li>
+</ul>
+</li>
+<li>
+<a href="#complex-usecases">Handling complex use cases</a>
+</li>
+</ul>
+</div>
+    
+<a name="N10014"></a><a name="overview"></a>
+<h2 class="underlined_10">Overview</h2>
+<div class="section">
+<p>
+        This page discusses topic all around using Apache FOP in a servlet environment.
+      </p>
+</div>
+    
+<a name="N1001E"></a><a name="example-servlets"></a>
+<h2 class="underlined_10">Example Servlets in the FOP distribution</h2>
+<div class="section">
+<p>
+        In the directory {fop-dir}/src/java/org/apache/fop/servlet, you'll find a working example
+        of a FOP-enabled servlet.
+      </p>
+<p>
+        The servlet is automatically built when you build Apache FOP using the supplied Ant script. After building 
+        the servlet, drop fop.war into the webapps directory of Apache Tomcat (or any other web container). Then, you can use 
+        URLs like the following to generate PDF files:
+      </p>
+<ul>
+        
+<li>http://localhost:8080/fop/fop?fo=/home/path/to/fofile.fo</li>
+        
+<li>http://localhost:8080/fop/fop?xml=/home/path/to/xmlfile.xml&amp;xsl=/home/path/to/xslfile.xsl</li>
+      
+</ul>
+<p></p>
+<p>The source code for the servlet can be found under {fop-dir}/src/java/org/apache/fop/servlet/FopServlet.java.</p>
+<div class="note">
+<div class="label">Note</div>
+<div class="content">
+        This example servlet should not be used on a public web server connected to the Internet as it does not contain
+        any measures to prevent Denial-of-Service-Attacks. It is provided as an example and as a starting point for
+        your own servlet.
+      </div>
+</div>
+</div>
+    
+<a name="N1003C"></a><a name="servlet"></a>
+<h2 class="underlined_10">Create your own Servlet</h2>
+<div class="section">
+<div class="note">
+<div class="label">Note</div>
+<div class="content">
+        This section assumes you are familiar with <a href="embedding.html">embedding FOP</a>.
+      </div>
+</div>
+<a name="N10049"></a><a name="minimal-servlet"></a>
+<h3 class="underlined_5">A minimal Servlet</h3>
+<p>
+          Here is a minimal code snippet to demonstrate the basics:
+        </p>
+<pre class="code">private FopFactory fopFactory = FopFactory.newInstance();
+private TransformerFactory tFactory = TransformerFactory.newInstance();
+        
+public void doGet(HttpServletRequest request,
+                   HttpServletResponse response) throws ServletException {
+    try {
+        response.setContentType("application/pdf");
+        Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, response.getOutputStream());
+        Transformer transformer = tFactory.newTransformer();
+        Source src = new StreamSource("foo.fo");
+        Result res = new SAXResult(fop.getDefaultHandler());
+        transformer.transform(src, res);
+    } catch (Exception ex) {
+        throw new ServletException(ex);
+    }
+}</pre>
+<div class="note">
+<div class="label">Note</div>
+<div class="content">
+          There are numerous problems with the code snippet above.
+          Its purpose is only to demonstrate the basic concepts.
+          See below for details.
+        </div>
+</div>
+<a name="N1005A"></a><a name="xslt"></a>
+<h3 class="underlined_5">Adding XSL tranformation (XSLT)</h3>
+<p>
+          A common requirement is to transform an XML source to
+          XSL-FO using an XSL transformation. It is recommended to use
+          JAXP for this task. The following snippet shows the basic
+          code:
+        </p>
+<pre class="code">private FopFactory fopFactory = FopFactory.newInstance();
+private TransformerFactory tFactory = TransformerFactory.newInstance();
+
+public void init() throws ServletException {
+    //Optionally customize the FopFactory and TransformerFactory here
+}
+
+[..]
+
+    //Setup a buffer to obtain the content length
+    ByteArrayOutputStream out = new ByteArrayOutputStream();
+
+    //Setup FOP
+    Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, out);
+
+    //Setup Transformer
+    Source xsltSrc = new StreamSource(new File("foo-xml2fo.xsl"));
+    Transformer transformer = tFactory.newTransformer(xsltSrc);
+
+    //Make sure the XSL transformation's result is piped through to FOP
+    Result res = new SAXResult(fop.getDefaultHandler());
+
+    //Setup input
+    Source src = new StreamSource(new File("foo.xml"));
+
+    //Start the transformation and rendering process
+    transformer.transform(src, res);
+
+    //Prepare response
+    response.setContentType("application/pdf");
+    response.setContentLength(out.size());
+    
+    //Send content to Browser
+    response.getOutputStream().write(out.toByteArray());
+    response.getOutputStream().flush();</pre>
+<div class="note">
+<div class="label">Note</div>
+<div class="content">
+          Buffering the generated PDF in a ByteArrayOutputStream is done to avoid potential 
+          problems with the Acrobat Reader Plug-in in Microsoft Internet Explorer.
+        </div>
+</div>
+<p>
+          The <span class="codefrag">Source</span> instance used above is simply an
+          example.  If you have to read the XML from a string, supply
+          a <span class="codefrag">new StreamSource(new
+          StringReader(xmlstring))</span>. Constructing and reparsing
+          an XML string is generally less desirable than using a
+          SAXSource if you generate your XML.  You can alternatively
+          supply a DOMSource as well.  You may also use dynamically
+          generated XSL if you like.
+        </p>
+<p>
+          Because you have an explicit <span class="codefrag">Transformer</span> object, you can also use it to 
+          explicitely set parameters for the transformation run.
+        </p>
+<a name="N1007A"></a><a name="cfg"></a>
+<h3 class="underlined_5">Custom configuration</h3>
+<p>
+          You can easily set up your own FOUserAgent as demonstrated on the <a href="embedding.html">Embedding page</a>.
+        </p>
+<a name="N10088"></a><a name="performance"></a>
+<h3 class="underlined_5">Improving performance</h3>
+<p>
+          There are several options to consider:
+        </p>
+<ul>
+          
+<li>
+            Instead of java.io.ByteArrayOutputStream consider using the ByteArrayOutputStream
+            implementation from the <a class="external" href="http://commons.apache.org/io/">Jakarta Commons IO project</a> which allocates less memory.
+            The full class name is: <span class="codefrag">org.apache.commons.io.output.ByteArrayOutputStream</span>
+          
+</li>
+          
+<li>
+            In certain cases it can help to write the generated PDF to a temporary file so
+            you can quickly reuse the file. This is especially useful, if Internet Explorer
+            calls the servlet multiple times with the same request or if you often generate
+            equal PDFs.
+          </li>
+        
+</ul>
+<p>
+          Of course, the 
+          <a href="embedding.html#performance">performance hints from the Embedding page</a>
+          apply here, too.
+        </p>
+<a name="N100A9"></a><a name="uriresolver"></a>
+<h3 class="underlined_5">Accessing resources in your web application</h3>
+<p>
+          Often, you will want to use resources (stylesheets, images etc.) which are bundled with
+          your web application. FOP provides a URIResolver implementation that lets you access
+          files via the Servlet's ServletContext. The class is called 
+          <span class="codefrag">org.apache.fop.servlet.ServletContextURIResolver</span>.
+        </p>
+<p>
+          Here's how to set it up in your servlet. Instantiate a new instance in the servlet's 
+          init() method:
+        </p>
+<pre class="code">
+    /** URIResolver for use by this servlet */
+    protected URIResolver uriResolver; 
+
+    public void init() throws ServletException {
+        this.uriResolver = new ServletContextURIResolver(getServletContext());
+        [..]
+    }</pre>
+<p>
+          The ServletContextURIResolver reacts on URIs beginning with "servlet-context:". If you
+          want to access an image in a subdirectory of your web application, you could, for
+          example, use: "servlet-context:/images/myimage.png". Don't forget the leading slash
+          after the colon!
+        </p>
+<p>
+          Further down, you can use the URIResolver for various things:
+        </p>
+<ul>
+          
+<li>
+            With the Transformer (JAXP/XSLT) so things like document() functions can resolver 
+            "servlet-context:" URIs.
+          </li>
+          
+<li>
+            With the FopFactory so every resource FOP loads can be loaded using a "servlet-context:"
+            URI.
+          </li>
+          
+<li>
+            You can the ServletContextURIResolver yourself in your servlet code to access
+            stylesheets or XML files bundled with your web application.
+          </li>
+        
+</ul>
+<p>
+          Here are some example snippets:
+        </p>
+<pre class="code">
+//Setting up the JAXP TransformerFactory
+this.transFactory = TransformerFactory.newInstance();
+this.transFactory.setURIResolver(this.uriResolver);
+
+[..]
+
+//Setting up the FOP factory
+this.fopFactory = FopFactory.newInstance();
+this.fopFactory.setURIResolver(this.uriResolver);
+
+[..]
+
+//The stylesheet for the JAXP Transfomer
+Source xsltSrc = this.uriResolver.resolve(
+    "servlet-context:/xslt/mystylesheet.xsl", null);
+Transformer transformer = this.transFactory.newTransformer(xsltSrc);
+transformer.setURIResolver(this.uriResolver);</pre>
+</div>
+    
+<a name="N100D7"></a><a name="ie"></a>
+<h2 class="underlined_10">Notes on Microsoft Internet Explorer</h2>
+<div class="section">
+<p>
+        Some versions of Internet Explorer will not automatically show the PDF or call the servlet multiple times.
+        These are well-known limitations of Internet Explorer and are not a problem of the servlet.
+        However, Internet Explorer can still be used to download the PDF so that it can be viewed later. 
+        Here are some suggestions in this context:
+      </p>
+<ul>
+        
+<li>
+          Use an URL ending in <span class="codefrag">.pdf</span>, like
+          <span class="codefrag">http://myserver/servlet/stuff.pdf</span>. Yes, the servlet can
+          be configured to handle this. If the URL has to contain parameters,
+          try to have <strong>both</strong> the base URL as well as the last parameter end in
+          <span class="codefrag">.pdf</span>, if necessary append a dummy parameter, like
+          <span class="codefrag">http://myserver/servlet/stuff.pdf?par1=a&amp;par2=b&amp;d=.pdf</span>. The
+          effect may depend on IEx version.
+        </li>
+        
+<li>
+          Give IEx the opportunity to cache. In particular, ensure the
+          server does not set any headers causing IEx not to cache the
+          content. This may be a real problem if the document is sent
+          over HTTPS, because most IEx installations will by default
+          <em>not</em> cache any content retrieved over HTTPS.
+          Setting the <span class="codefrag">Expires</span> header entry may help in
+          this case:<br> 
+<span class="codefrag">response.setDateHeader("Expires",
+          System.currentTimeMillis() + cacheExpiringDuration *
+          1000);</span>
+<br> Consult your server manual and the
+          relevant RFCs for further details on HTTP headers and
+          caching.
+        </li>
+        
+<li>
+          Cache in the server. It may help to include a parameter in
+          the URL which has a timestamp as the value min order to
+          decide whether a request is repeated. IEx is reported to
+          retrieve a document up to three times, but never more often.
+        </li>
+      
+</ul>
+</div>
+    
+<a name="N10108"></a><a name="servlet-engine"></a>
+<h2 class="underlined_10">Servlet Engines</h2>
+<div class="section">
+<p>
+        When using a servlet engine, there are potential CLASSPATH issues, and potential conflicts 
+        with existing XML/XSLT libraries. Servlet containers also often use their own classloaders 
+        for loading webapps, which can cause bugs and security problems.
+      </p>
+<a name="N10111"></a><a name="tomcat"></a>
+<h3 class="underlined_5">Tomcat</h3>
+<p>
+          Check Tomcat's documentation for detailed instructions about installing FOP and Cocoon.
+          There are known bugs that must be addressed, particularly for Tomcat 4.0.3.
+        </p>
+<a name="N1011B"></a><a name="websphere"></a>
+<h3 class="underlined_5">WebSphere 3.5</h3>
+<p>
+          Put a copy of a working parser in some directory where WebSphere can access it.
+          For example, if /usr/webapps/yourapp/servlets is the CLASSPATH for your servlets, 
+          copy the Xerces jar into it (any other directory would also be fine).
+          Do not add the jar to the servlet CLASSPATH, but add it to the CLASSPATH of the 
+          application server which contains your web application.
+          In the WebSphere administration console, click on the "environment" button in the 
+          "general" tab. In the "variable name" box, enter "CLASSPATH".
+          In the "value" box, enter the correct path to the parser jar file 
+          (/usr/webapps/yourapp/servlets/Xerces.jar in our example here).
+          Press "OK", then apply the change and restart the application server.
+        </p>
+</div>
+    
+<a name="N10126"></a><a name="complex-usecases"></a>
+<h2 class="underlined_10">Handling complex use cases</h2>
+<div class="section">
+<p>
+        Sometimes the requirements for a servlet get quite sophisticated: SQL data sources, 
+        multiple XSL transformations, merging of several datasources etc. In such a case 
+        consider using <a class="external" href="http://cocoon.apache.org/">Apache Cocoon</a> instead 
+        of a custom servlet to accomplish your goal.
+      </p>
+</div>
+  
+<span class="version">
+          version 964711</span>
+</div>
+<!--+
+    |end content
+    +-->
+<div class="clearboth">&nbsp;</div>
+</div>
+<div id="footer">
+<!--+
+    |start bottomstrip
+    +-->
+<div class="lastmodified">
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+//  --></script>
+</div>
+<div class="copyright">
+        Copyright &copy;
+         1999-2009 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a>
+</div>
+<!--+
+    |end bottomstrip
+    +-->
+</div>
+</body>
+</html>

Propchange: xmlgraphics/site/deploy/fop/1.0/servlets.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: xmlgraphics/site/deploy/fop/1.0/servlets.html
------------------------------------------------------------------------------
    svn:keywords = Id



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xmlgraphics.apache.org
For additional commands, e-mail: commits-help@xmlgraphics.apache.org


Mime
View raw message