
phk at phk
Apr 19, 2006, 2:48 AM
Post #1 of 2
(108 views)
Permalink
|
|
Something to think about in the plane
|
|
At this point it looks like the most nasty stuff is actually interpretatio and generation of http headers. Here are some questions you guys can think about in the plane on the way down here: * Which "Host:" do we put in the request to the backend ? The one we got from the client ? The ip/dns-name of the backend ? Configurable in VCL backend declaration ? (test with www.ing.dk) * Construction of headers for queries to backend ? How much do we take from client headers, how much do we make up ? Some sites discriminate contents based on User-Agent header. (test with www.krak.dk/www.rs-components.dk) Cookies * Mapping of headers from backend reply to the reply to client Which fields come from the backend ? Which fields are made up on the spot ? (expiry time ?) (Static header fields can be prepended to contents in storage) * 3xx replies from the backend Does varnish follow a redirection or do we pass it to the client ? Do we cache 3xx replies ? And here is a new version of the VCL flow-chart. There are now two versions of it a "user" version and a "real" version. The "real" version goes into deeper detail about object handling, something the user will not need to know about normally. begin 664 vcl_flow.pdf M)5!$1BTQ+C(*)<?LCZ(*-B`P(&]B:@H\/"],96YG=&@@-R`P(%(O1FEL=&5R M("]&;&%T941E8V]D93X^"G-T<F5A;0IXG)U9RVY<QQ'=SU>TM;&\4*>KWPW# M"QM6(@,*$,DTLC$04,-+D_:0E/C*(LZ_YU3=?MP[5A+<D2"17=//ZE.G3O5\ M4D:3,ORW_MS?[#[M_O3>JU\>=N_P*]MN\'\JUJC#S@>W_IU_N=K]7=WNHHXY MJG_N2/T5_ZYWSE#1):L48M0^8A:;;-`PQ.)TP#A++FGOAH&R=]J&/F31Q;O" M/P]]DFZXVOVX^Z1(#M%^[&_4=V<X1E%%NVB\.KO<S><C98W1`3,&IYUQZNQF M]_+]M)^NGR?UYNSL;^I^^O0T/3Q^=?;K[O69>K<C$Y..2<50C'88GVS2N:B0 M,^;.Z/\_-D#TF1T0D?8^J62B#H9D"Y=/MWOUO#_\XW[:/ZM_\>ID="PIJK.W MNY=*J>M+]?-+;$[CG_KB&_7B+Z_/7JC??U=+VYO7WW[_XN>O,,&7, at A_/IX_ M/'Q=F__FG_R?G,QZ1SI:]J75R?,--8M+1=NH1INL]J-I?=#!JSU.CE_9#]VV MF(12!B;XSCQ.'$:?P^[RQ'%\V3;%H(M5D:S5M at BPF [at] 5WD*RD:*V7D7KK8YC MWZV]WUGKHRYE]#`E:;>8H;?G-3"B64P`_JSJ,QA#NBS6J&V,:+MH/=HNVPQ' MY]AO!3)E;1)AOJPS0H]A]/;N[K>GC^JG]V\[?OO&*GZ'HZ,O4:>Q<X>FIT7; M%(3E\I*K:3%%]=^XJ]IE><5;1FV.9LP4X+SHL!1_Q+%T?7O]<#4".$2`%_ZW MN$&&2S=X7`S&DJ>@$Z,]!]`@6>?E?N;F'H$(KD#$5T,Q25N3^_#>GN??[[J! MBL>A^G"2B![SUS86:!MH/=H&ZP3K`VS%"8'P"N,/SD\EB(M^>'AXFOE.F`94 M6$!(KSKE7.Q>3O?W=_?#B3X#I`L0$3:M+8,H@,6*RAX?^(R[S84WV]L=W<>6 MUG8V&H[W9_1(VCCLM"`A(')*\MK@$YN02HA/DDGC<#;@ML/L";B,<"DV@")L MEHV1UYYA#1KQEM.*B>P!]$'JL%:P>=*PK>#,3D?GE(].DYMY?NU5EUR`ZP<T MNZ%BRX7H%]!T+GC>;H>F(V3,3,V`:;#4@&9O-^1TPXRL/KP"K\_?H=DWT'JT M#=8)U@?8"DW'D<)Y9@'--^>W%X=IF8:1K\GSQRM\GC](:GN\NK][^F5$.XX$ M$"V1ZG at 5QIV/$"11.8_X"\QOP&%.H]V1>FQI[8'4;JDBQWFLD8">%"QG*N<R MVHPO4&"<2;3WJ3;>&>/9X;H*GQ\(<X[%1NQ]&*JGC=N*59P(Y!]78&7_#@9( M#NDL*9\Y^+(B5P01!<QMX=83=%!BSDXJ8$EOCW308<YD_U4)?7'WX5=]>?=T M>[&6.Y?3X_YJI7=6(_;G^ZOS#X=IJT9J27PDL5`\B"+T=`D]F.?8;&T02G*K M_-ELBUD2X`H0CE38^BPSZ+9Q(I(J:7EK757?S<)08:)SH+Y(ROOLV6[),MOV M-M)2,0#SZ$$)X5#Z!*U95T#_:C`0CW!,&PY98246Z@*M#3:J6^@]VA;K#,>' MV*R0L`$#@'E;=*I"^\^,#P;5*ZBS%)&I5JPB)<#5='XQW0OT"0 at E<Y0:+^_O M;M2'\_UOT^W%T%DS!;;P@,.1MC0%Y9/WNB16C)[U%2*,&9DD8'T(".4\H\2B MV$DX;D!')\*6,.?BC@[#$D)B7A:4G#1NL]+"7:2\SF:7S9DS0Q1P",AON*`5 M=#XQ:H$8J+7"'`/(PDR1[QU3>E!)%T(0`)YP8Y"TY"`R,O"`9@#BD.8T at 8]9 M\CIF5:)(''0.DH!S-6$)YC^;;=2&M1;"EO/3 at H=!ZC2CJ_$I>F4MBJ[Q*1$8 M%JE[R<.GC=OJ9CYY`C`<#I)3_(QHL!G%&%_W0%KF`@Y^2B5SG-B,+,17E9@^ MH)=RLJQ`?4+)8)F2()6C>-X!.N3@/^>8WAR+10#&(8UJ2NO\Y9#SK%OE(93" MP2_SD(4L(,E[Q#<M^>ND<9OS%P<H9]Z%WU;Y"ZFY\#8HX-**E"/-$H/`$MG= M"<P2A`(KP9E8:Y.+1B1[+-$^-U%T?1_>VG4!KAFKQ4%$L0)O$U0<]Q5JFVO& MNH76HVVQS7!TB,V,",<3F!PW`>>+D[Z?#M?/D\#K%?C)(II69'=QMW^ZF6Y% MB;UB69ZAKOY(ATBNTWZ\FMC()7M:@K2*>!]QQ8ZE$K\Q`)3>&89B;W>R/[:T M=F7:Y]ZA918;2^&?5"!5LKP#9*ZT*'%E6TM9KA1S9O'A4#Y+8LRB89O``5D& MQ!$4%V7#7#>3[$GC-I-L2B*F6)HF&SY;SCHF/_BOH&PS4JY*R,;"U.E/T6'8 M/V46QLBZL:QUF%#\_Y%AS^>'ZR,9)I3U!QEV^S#=/WZ]%E at F&09*TP#PJT&* M`@7E%)@<K,'Y/!-BE,L$HZ.-'("/+<UWVKI$=`DLDZ at 4+B5[ICBPA<O-/D[N M]*1Q?*<44Y1Z:[X#?E-`?>PY8`$*)/M:+[<P("[(6`,$),(R[YJ`:U'Q@=KJ M#MDLQV4-RDJ_C#I5\M!)XS;G(5P"L?OE>OSG\I!G75,63K`1O"(LA7S#:2A' M>45$':4)+C0QRHU6VI>D8M`G<TEO4,"R3G6$U,UTZL$3D</*<2'.-2[T5!7& M)PW;'HSP'3MQX8*C8&P>[P5\-W at _7X!#<HA#@#0=-A*K-?*$U2U4J'IIGJ&W M6XG=#53?E=H$AG.Y'TO4-NOLNHG6HVVRS;`^Q7:9#6+G9QF9??;3#Q+JDC/` M[IE".4H:(U\@ZQA`XBCM7-\JKM6FX6H#4DW+F(.\=U(85_D#XN"G at IXD&[78 MB)B,67S-_,J(C+!PCRRRIY$[3F+$7A.'D$M]^;`1`CC(NLW2Q<I8:4:ZD,M) MX[9_F\'?NZ051J^[[V?'%21>+)MQV9"-'*;SZ4O&U<BSNN5H!WL-"XHW+LK; MH-$EV?F+GD.?9EBV;SYH#_T,JH3"KU_%R+./VM_=?#Q,C]/%(N]QO2UO4XGS MWPV_26:15W6OK;R@``UMY)L>00S4`?$-+`09^%O(HGZ]1*;X.0",EQ=APY*U M?L&!NHU3`1`N8<6%'==0&=Y*_-(IQ97AEWPRK)IS+<I.&,8.=)8OP?<7-Z:V M+"*=,OJ;T!^=*-",XHRV7QZSJ<1VS%@LNZP?,SI.3JM3MD15]\+R!J0`[XWM M5I"V$\VJZ(1A\CXQI"_5Z&B65D+U=GN8K6T3X-CZK,*O_LTRIAAK.V2:T#K, M+RH;A\AF<4S9 at N'G4AEFL[S_ at 6JCY'445/(H5J%H'6X_XM`9VBK,+Q<6ZDRG M;L(D#GMA!3?7$[QVG25S^5MQ=,(HWO,[_/T/4L,7(V5N9'-T<F5A;0IE;F1O M8FH*-R`P(&]B:@HR-#@S"F5N9&]B:@HQ-2`P(&]B:@H\/"],96YG=&@@,38@ M,"!2+T9I;'1E<B`O1FQA=&5$96-O9&4^/@IS=')E86T*>)RM6MN.'+<1?9^O MZ/@E\H,ZS3L)(P\.[,0!'"!V-O"+ at 6`U&GG7GMF5]R(AB//O.:?(8G>/;<$] MB(3=V>*PR&+QL&[DC\,TFF'B__:Y/^U^W'V%'Q(G_$[%3L-QYR>S_IM_W.R^ M&>YV?@PY#N]W9O@;?FYWUDQE#'%(<<JC21C%E"F-*:&EA-$9<)HP^=&:98N; M[.AMYUKT"=:,DV>+CM-;;G;_V/TXB#B3?NQ/PY^N=G_XN at P1`Z+;U9M=79P9 MC#>C"QPAC\'BJ]/NQ=>'_>'VW6'XXNKJ[\/#X<?GP^/3QU??[SZ_&K[:I32- MWL<A%I?':`>3$Z8N at Y\<UIC1_P,2&/,+(N1IM,'G(5E^9T6$-\]W^^'=_OBO MA\/^W?`?SIY&YU(<KK[<O1B&X?;-\.T+R#;B9_C='X>/_O+YU4?#3S\-R[8O M/O_TLX^^_1C\OQ<F_'M[_?CX22/_RT_^DH69-(6Q%&C"0([`7=(6G\J(J6?: MN;',I,N9RM]CX299#SE[VV(0Y^UH,C<M%CO:N<]Q]^9"/FZV*2Z,%EL;31JC M8$L;HAL-Q,S.CM$-,4W`M.]B*[T'KK`^%^8>/L4Q+D;HM$P!!FT(R8X30*0# M!$P]A7F*1H-#A=`>*J2.L%[%?BN*@QM=YG!E]#$)A+Z\O__A^>WPSZ^_[-CM M<C7LSEJ..?G1FUGRC$^BNRO+Q]4&2\."OZENWB7IL-S:W\JQ^03C0)K(W2MC M!&[E^-S>W3[>S.MV,5+[!M@>LT!;6[*U-"#&@IYXFGD:`77:A6(ZC1V<L#-Y M;BD at 3<E]A$ZW.?:[W@)EC at 5SZ0C1.IB0>8Y&8PZ50GNHE#K"V3JVPJ1D'&/A MC[!51E3UU\?'YVKJJ*Z"HY9"&%ZJM7F]>W%X>+A_F'4Y374[.X9R!J0++&*. MTXB-R+#;M&<Q!3$;G59LGS4H:2U..N9^USNHX\@96YNAEY+-:,)0('\VV*5< M//5%/11(43*TW5S"B9+FL7!/H^CYN"LXSU/@GF4_YFIY+N/;"E+LGW<I#QY* M\[9J?JU79WD"NQ).O<$98"$-#D9F=`DT\`YMN\FX3NQW-L=,:&B+)41BYU:R MC8[^K<'`>Y%-V0%*GLHZ>B/VNSZY?MUD:]QGLF^%I<6N%O!9"YOCJG*^N+Y[. M?3PLO>\$"^N,76/S^E$\VM/-P_WS=_.!M_#$,`H+D-H,*U020(IU`UIN\A,< M?C4ZG5"$GC4H:5-V8P)`>P,-;N9H#F$$-!#@PX7&)T2$0 at S-*C72>5H;=GB" MZ3"RI8%Z.^ZJVEL'HO,"IJW0Q!0X0VGP1`!\"+5/G<XGWN-D at -,66(TL!R3X M$6".!N"J)KQV"<7BQ)-..#HXF'./S58="HS at C,9VJ;ZYOGT:WM_<'@^4[26! M7;);X>'^U?>'_=-P^SB\>G[\][R$"--D9O>+-4231T2IT>.\X$B;@#,.$Q,= MW(C!X0^&+K6O6GQ?L(FKB3:G46(47R:&2M$&!*VBAU*(MX@](?[$_UW`M5E; MD:<#TKHR6N!/?.#]\]WK^428B+"\]!TYS2T61A8KQ0<<F5,Y+>W\E)6$<RHF MP(AI@\D>`6_J[)UN$S#F:2T3`DILH0X0>"ASZC,H#:/41.@]5,0VPODB-H=) M!7:\$+A1U"7^[^[Q\"`&QHS6!WB;)9X412\-`(_9?P%LB^BJ>N4%R!(F!)@Z MR%0CCG;$=/^%C0]CJH93_1`,X40_RX`6XA;B!:OW<KQ:#*+@%)A=Q+<9:-G" MNY05T.[NGX8UV(R/EO$*SI#A?A:$ISD32PYA<[P at 1\(1&<.$$2,6Z=,Z1SK6 M2/?7LJ3?89]&$7"="KTY/.UO5KG0BF-_O;^Y?G4\_.;\J5F,4!`D)-F``#N) M@*B911Q2AC%#8)PD<1_V)=D!R8,E2F3W8\K<JY!A"I`/G'IT'!"6\?0P7@[B MXD/B9K3\Z2*^FC\A`$J^GSGBID99(9?$TV:*A(N@@^PF:/CKW.?:+T>9YR_8 M*E>6\Q?DV,AOM4]%[25\E-NB(W,P'*U"PWV:6S+B-_C>"6+"S'H@;T1.I,=! MZ3V]E%WU@/$?K?(KU<9']]8`Z\/TLW,'-S&RZ.,WFN:L2=!:NH!MA/,E;#9G MR!UA19B,TH'S3+`F\/9XO3\,LW&"]V&<LC)=[V^?;H:[P_OF2(NU9XZ4AJ^- M\>W'"R\"VX]PQ)M)3,II;K&3&Q&<V2E*>N`QX. at 8LL.!N]AIT?K$#>X]FEK; M`$JV&6:U3\Q(676H[*XP6C1]`J6I]BJ"MG01VPCGB]BL=IQO`UODZ<Y*#5?_ M3%M2'06VO.2N;2O:E$K2S>'Z]>'AL<:RN5B/Q2]5_N;A_C2\NM[_<%B:THXJ M!$0N+\RZ]U%BS*YAA^-:<=AHY^@0ZO$$`E-ODD%T6U+-<>"+B'KM4 at _G=JZ; M>3:U_J?>,.%H!QH0K`4&+TQ3PTBE?7&E&T+^#9>A;1P$$2ZX?893M5$,0Q.G M]6DR7\"WV0T6Y#V%LR!3#,T=*036+I#.MRK!0D>13M$3-RP'(!C`$,SI?2=G M<[-N:.2<)&N#<;8.YRO:I<K`\9+$'JI<4>J4)3UI^W&:&UI@<&1L7Z@;U9KH M]!*VS2J=R(A3RW*?";^0(5O/*!"PL4',*8Q/1&B-1$21AB1/Z at 6^!$OY.MV5 M>MZB=,_L>@.=96)NBB5.^*1W9YY%H\+0U!MQKU2K)8[B,DFSQ4NE6K/Q(UH, MUX4^"--B$+U>QK=5L9;>'EFU2\`%,IZ?Y7>6<0BR8'@)\?NGN<5A5P%B)"J) M`8SW$X65^IT04"A$IE.NWS7+VOF4;B/ON[LP!L>#!05EGR`E/OOHC09'FUL[ MJ&@ZP)GPFVL/.#TE462RUSSSL\/Q]MWAH?G&R;DY[J_F_/7]_OETN!/O^A)B M`3WQYZ;\+#W0'9S-HE8+`H\L$B'+G!38S$DB>"5G\*X;&JEIQSO]'G%>&`.+ M$3BE<*@!2)Z at J0`#`<3",LD6"'(#0BO9S&JM9IF,QZ=ED&@#Y/6I5\$%N1?Q M;48NMM0CL'$37-^O5'9;+NWL)-:/"5;&])P39^F23",PJ/*#BQRXK#,-L?$? M3C3>71]OSQ(-,6,_2S0D[_QDG4+,L0P"1+?PN(ZU2+^(=I at S1+N@+0N+2V>O M38M!(LY0B+/;UBX+9[^)2^+P"7;%=PMZFALR^#R]!C4)N)8HGLL at CV9ZK#0C M/)81R]RCY4U]!*7K%/N>6-F(4(R56AT@(J++BRD:S>)%$Z*U="';"&>KV!Z) M0W>T3N#VS7E]>CS>[Z^?#K6T$*=@5B;B\>G^X?J[6LE",.5 at YM8FY/YA6-J9 M"I"<`C,5A3MV*4<><L>[!.(CLU`++SJEBH_LI1#J6--NA4BM:VO;J5=J=`.X MU8X57>TB`+F$;7M]`>;?K8_\;:_0-#N*(V\7>&MT)B;H3+'W%L94':>#1S&= MI,?B[:6=.R`OG[F%4!`T"OT2KR<:'\TK][H-W,C]KL^L'530QK^2>[.?L at A> M'0%:1I:LJ9CG.RU/T4[F8#]4G4)6Q'EGY%@#;P$_Y%A,D^):RKS$=/1&,'P6 MH:;$(BU*$7^!P$0RV0)8,1FQEC4!*G-J-05KC5AD2WOB6Z!S"=MF;V&P at PB$ M/^@M<"K,#!VEV^8;!_MF2D>&P2F2V*]CQUCD?-G-/=H57A]!Z6ZI>D,%01^@ M8:1/T5'4A=`>*G,;8+6$S7;*5H]Z,8JTJK0P0+!L$,CQJL[1?>+H)^X"<KO, M:,.%:OUKW"P&R'LIXZH6N1',!"7:+NVRGS%QC,1#Z(\$+N*[I)8>BUOAZ"P1 M2<DSR<E&0,QX>9(\B/X12!`X5X`O6IJ':4QS%UZ/\[W,L0\SMVP_`YF!9&(E MK[2W+'*!-NSO3V^/AZ?#HK)@LY3?3?21D33KE;;ZWX8Q6G&6Q7CIQ]N]&.B- M>4!+B,T>)''$3%M2O57 at JQV3AC+)#;8L,W*+]#:\VH,+V&[D#JVB2B^&F3$E MZ:=7LVI1#/,S6`/+YP9)TN'$?(Y1-!)C2;@MKY8&32+U4KF%S<1/\!HF%W&[ M#,M2%GF#+[S+G^7E0P[,HTNJ4?(%;!)3]2RH"GU:M+C(JJC2!3XE at +_3&+\E MI3PLSK>6>81YZI;!U at XB[U86D=5EJ6+/%]>]Q?%ME2-PDBBZI;G66"G[S)>C MIB3647J+AAHZ0J?[!7-O at 7V1]QLZ0O5R?8I*TNDW&=KW*F)C/U_$9N\\01K& M!I:*6;PA:QFBL^O@;Y5`PDX!'>4WU0(E(D=>)-=&IU[MLKR]#*F7YFW`EHDZ MZA6;]0'?U_!/"T1HRWRXQHC=5B?4MI<5,N!*MJ at B0M!Q$9_4`V.D6F:$:(-N M;T#.1:^DVU]ODQ?XL%S>?,D-@\0CVOD;.:.C-2 at XE+UNO [at] ZOV^;<,J\ M%GZSQX6US%-<(..SV\?]]</KAHR8F#?\'[#A$'P:`AP&I5[C6-YJ\![$RCM* M0XL:6**K%RQ:C]1ZLGAFZ^MW\V,8QF5IT,3CR(;""58%PDO8JJ$#?E-8/,SJ M+>U9%6)>"9BTU*BN8WZ8!9\G3UQZC^8;^@A*]T=3O:4]J^HCM&=7?8[^,*M+ MH3U42AWA;!V;[8=AS&=6#[.V1?<M>&\8ELNPFMWHJ67`EN-L(;@?<5T>E at S' M+>J\O:'7>>=AYMV_B*VZ#A/D65O3*EV'Y%0FY/;&Q==W<"PEB4<)O`HR/LMH M(G.KE&HAZ+1H\7R2W,?PV3`[$XFW,]TL7*J-171(?QXD--*J`ERX>"6R3<Q) MD0X;&JHLST]$8";--)&N2-K%ITE\'4!S&"1G/_;'2I;O_5R]C+F,3\RO@^TI MOF<4?/W(BP]F'37 at -!R!16TMV;5WAI:E0MN"=JZ!ST1:&T?!X<Z+ET=]&%8% M8WN6<`D;I?X*__\''^9_UF5N9'-T<F5A;0IE;F1O8FH*,38@,"!O8FH*,S8W M,PIE;F1O8FH*-2`P(&]B:@H\/"]4>7!E+U!A9V4O365D:6%";W@@6S`@,"`V M,3(@-SDR70HO4F]T871E(#`O4&%R96YT(#,@,"!2"B]297-O=7)C97,\/"]0 M<F]C4V5T6R]01$8 at +U1E>'1="B]%>'1'4W1A=&4@,3(@,"!2"B]&;VYT(#$S M(#`@4 at H^/@HO0V]N=&5N=', at -B`P(%(*/CX*96YD;V)J"C$T(#`@;V)J"CP\ M+U1Y<&4O4&%G92]-961I84)O>"!;,"`P(#8Q,B`W.3)="B]2;W1A=&4@,"]0 M87)E;G0@,R`P(%(*+U)E<V]U<F-E<SP\+U!R;V-3971;+U!$1B`O5&5X=%T* M+T9O;G0@,3<@,"!2"CX^"B]#;VYT96YT<R`Q-2`P(%(*/CX*96YD;V)J"C,@ M,"!O8FH*/#P at +U1Y<&4 at +U!A9V5S("]+:61S(%L*-2`P(%(*,30@,"!2"ET@ M+T-O=6YT(#(*/CX*96YD;V)J"C$@,"!O8FH*/#PO5'EP92`O0V%T86QO9R`O M4&%G97,@,R`P(%(*/CX*96YD;V)J"C0@,"!O8FH*/#PO5'EP92]%>'1'4W1A M=&4O3F%M92]2-"]44B])9&5N=&ET>3X^"F5N9&]B:@HQ,B`P(&]B:@H\/"]2 M-`HT(#`@4CX^"F5N9&]B:@HQ,R`P(&]B:@H\/"]2.0HY(#`@4B]2,3$*,3$@ M,"!2/CX*96YD;V)J"C$W(#`@;V)J"CP\+U(Y"CD@,"!2+U(Q,0HQ,2`P(%(^ M/@IE;F1O8FH*.2`P(&]B:@H\/"]3=6)T>7!E+U1Y<&4Q+T)A<V5&;VYT+U1I M;65S+5)O;6%N+U1Y<&4O1F]N="].86UE+U(Y/CX*96YD;V)J"C@@,"!O8FH* M/#PO5'EP92]&;VYT1&5S8W)I<'1O<B]&;VYT3F%M92]4:6UE<RU2;VUA;CX^ M"F5N9&]B:@HQ,2`P(&]B:@H\/"]3=6)T>7!E+U1Y<&4Q+T)A<V5&;VYT+T-O M=7)I97(O5'EP92]&;VYT+TYA;64O4C$Q/CX*96YD;V)J"C$P(#`@;V)J"CP\ M+U1Y<&4O1F]N=$1E<V-R:7!T;W(O1F]N=$YA;64O0V]U<FEE<CX^"F5N9&]B M:@HR(#`@;V)J"CP\+U!R;V1U8V5R*$=.52!':&]S='-C<FEP="`W+C`W*3X^ M96YD;V)J"GAR968*,"`Q.`HP,#`P,#`P,#`P(#8U-3,U(&8@"C`P,#`P,#8W M,C0@,#`P,#`@;B`*,#`P,#`P-S(P,B`P,#`P,"!N(`HP,#`P,#`V-C4X(#`P M,#`P(&X@"C`P,#`P,#8W-S(@,#`P,#`@;B`*,#`P,#`P-C,U-"`P,#`P,"!N M(`HP,#`P,#`P,#$U(#`P,#`P(&X@"C`P,#`P,#(U-C@@,#`P,#`@;B`*,#`P M,#`P-S`Q,B`P,#`P,"!N(`HP,#`P,#`V.3,Y(#`P,#`P(&X@"C`P,#`P,#<Q M-#0@,#`P,#`@;B`*,#`P,#`P-S`W,R`P,#`P,"!N(`HP,#`P,#`V.#(W(#`P M,#`P(&X@"C`P,#`P,#8X-3<@,#`P,#`@;B`*,#`P,#`P-C4Q-"`P,#`P,"!N M(`HP,#`P,#`R-3 at X(#`P,#`P(&X@"C`P,#`P,#8S,S,@,#`P,#`@;B`*,#`P M,#`P-C at Y."`P,#`P,"!N(`IT<F%I;&5R"CP\("]3:7IE(#$X("]2;V]T(#$@ H,"!2("]);F9O(#(@,"!2"CX^"G-T87)T>')E9 at HW,C4R"B4E14]&"@`` ` end -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 phk at FreeBSD.ORG | TCP/IP since RFC 956 FreeBSD committer | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence.
|