- From: Yaron Goland <yarong@microsoft.com>
- Date: Mon, 6 Oct 1997 13:29:46 -0700
- To: "'Arthur van Hoff'" <avh@marimba.com>, Push Workshop <www-push@w3.org>, DRP Mailing List <drp@marimba.com>
I would propose an alternative mechanism for handling delta. The enclosed draft is completely stolen from: J. Mogul, F. Douglis, A. Feldmann, B. Krishnamurthy, 'Potential benefits of delta encoding and data compression for HTTP', Digital WRL Research Report 97/4, July 1997, <URL: http://www.research.digital.com/wrl/techreports/abstracts/97.4.html> I have submitted it for review to the authors of 97/4 but Jeff is on vacation until later this week. Once he is back the 97/4 authors have said they will look it over and let me know what they think. Once I have their feedback I will submit the draft as an ID. As such, the document is not appropriate for wide spread distribution and I have removed all authoring and other identifying information from it. However I thought that it would be useful to present to this mailing list. Yaron > -----Original Message----- > From: Arthur van Hoff [SMTP:avh@marimba.com] > Sent: Monday, October 06, 1997 12:52 PM > To: Push Workshop; DRP Mailing List > Subject: DRP and content identifiers. > > Hi, > > In previous mail we have discussed the use of globally unique > content identifiers in the DRP proposal. As a result of these > discussion I would like to make some minor changes to the DRP > proposal. The changes include some suggestions for modifications > to the HTTP/1.1 specification. > > * Globally Unique Content Identifiers > > As suggested by Larry Masinter we should start using content > identifiers > as defined in RFC 2111 > (http://www.ics.uci.edu/pub/ietf/uri/rfc2111.txt). > > As a result the notation for an MD5 and SHA checksum content > identifiers > will be as follows: > > FNG4c6MJLdDEY1rcoGb4pQ==@md5.w3.org > thvDyvhfIqlvFe+A9MYgxAfm1q5=@sha.w3.org > > The first part of a checksum based content identifier will be > the base-64 notation of the checksum, the address part identifies > the type of checksum. Unlike the base64 specification I suggest > that the trailing '=' signs are optional. > > For MD5 we shall use the "md5.w3.org" address, for SHA checksums we > shall use "sha.w3.org". This way anyone can create new checksum types > by appending the appropriate domain name to the content identifier. > > * Globally Unique Entity Tags > > We would like to suggest the following change to the definition of > entity-tag in section 3.11 of the HTTP/1.1 specification: > > entity-tag = [ weak | global ] opaque-tag > weak = "W/" > global = "G/" > opaque-tag = quoted-string | quoted-content-id > quoted-content-id = <"> content-id <"> > > This will allow for the use of globally unique entity tags. To avoid > conflicts a globally unique entity-tag should consist of a quoted > content identifier as described above. > > The presents of a global entity tag identifies the content of the > entity. A proxy can assume that two entities with identical global > entity tags refer to the same content, regardless of their origin. > > * Differential Range Specifier > > To do differential update requests as described in the DRP proposal > we can use the Range header. In this case the differential reply is > viewed as a "range" of the new document given an older version. This > requires a small change to the definition of ranges-specifier in > section 14.36.1 of the HTTP/1.1 specification: > > ranges-specifier = byte-ranges-specifier | > diff-range-specifier > diff-ranges-specifier = "diff" "=" quoted-content-id > > To get a differential update a client must specify the content > identifier > of the current version of the resource. The server can reply with a > 206 > reply (partial content) or a 200 reply (OK). > > Please send me your comments. I will update the DRP specification > accordingly and circulate the updated document. > > Have fun, > > Arthur van Hoff << File: Card for Arthur van Hoff >> begin 600 delta.txt M#0H-"@T*#0H-"B`@("`@("`@("`@("`@("`@("!$96QT82!B87-E9"!#;VYT M96YT($5N8V]D:6YG(&EN($A45%`-"@T*#0HQ+B`@(%-T871U<R!O9B!4:&ES M($1O8W5M96YT#0H-"B`@($%L;"!C;VYT96YT(&EN('1H:7,@9&]C=6UE;G0L M('=I=&@@;6EN;W(@;6]D:69I8V%T:6]N<RP@:7,@=&%K96X-"B`@(&1I<F5C M=&QY(&9R;VT@6TUO9W5L72X@2&]W979E<B!T:&4@875T:&]R<R!O9B!;36]G M=6Q=(&AA=F4@:&%D(&YO#0H@("!H86YD(&EN('1H92!C<F5A=&EO;B!O9B!T M:&ES(&1O8W5M96YT(&%N9"!H879E(&YO="!R979I97=E9"!T:&ES#0H@("!D M;V-U;65N="X@5&AI<R!D<F%F="!I<R!R96QE87-E9"!O;FQY('1O(&EN9F]R M;2!T:&4@1%)0(&%N9"!0=7-H#0H@("!W;W)K:6YG(&=R;W5P(&QI<W1S(&]F M(&$@<&]S<VEB;&4@86QT97)N871I=F4@=&\@=&AE(&-U<G)E;G0@1%)0#0H@ M("!P<F]P;W-A;"!F;W(@9&5L=&$@96YC;V1I;F<N(%1H:7,@9')A9G0@:7,@ M;F]T(&EN=&5N9&5D(&9O<@T*("`@9&ES=')I8G5T:6]N+@T*#0H@("!)="!I M<R!E>'!E8W1E9"!T:&%T('1H:7,@9&]C=6UE;G0@=VEL;"!B92!S=6)M:71T M960@87,@86X@26YT97)N970-"B`@($1R869T+"!W:71H('!R;W!E<B!A=71H M;W)I;F<@:6YF;W)M871I;VXL(&EN('1H92!I;6UE9&EA=&4@9G5T=7)E+`T* M("`@;VYC92!*969F($UO9W5L(')E='5R;G,@9G)O;2!V86-A=&EO;B!A;F0@ M=&AE(&%U=&AO<G,@;V8@6TUO9W5L72!G970-"B`@(&$@8VAA;F-E('1O(')E M=FEE=R!I="X-"@T*,BX@("!!8G-T<F%C=`T*#0H@("!4:&ES('-P96-I9FEC M871I;VX@9&5F:6YE<R!H;W<@=&\@;&5V97)A9V4@8V]N=&5N="!E;F-O9&EN M9R!T;PT*("`@<')O=FED92!D96QT82!R97-P;VYS97,N($$@9&5L=&$@<F5S M<&]N<V4@:7,@82!R97-P;VYS92!W:&]S92!V86QU90T*("`@:7,@97AP<F5S M<V5D(&%S('1H92!D:69F97)E;F-E(&)E='=E96X@:71S(&-U<G)E;G0@<W1A M=&4@86YD('-O;64-"B`@('!R979I;W5S('-T871E(&ED96YT:69I960@8GD@ M86X@92UT86<N#0H-"C,N("`@26YT<F]D=6-T:6]N#0H-"B`@(%1H:7,@<W!E M8VEF:6-A=&EO;B!D969I;F5S(&AO=R!T;R!L979E<F%G92!C;VYT96YT(&5N M8V]D:6YG('1O#0H@("!P<F]V:61E(&1E;'1A(')E<W!O;G-E<RX@02!D96QT M82!R97-P;VYS92!I<R!A(')E<W!O;G-E('=H;W-E('9A;'5E#0H@("!I<R!E M>'!R97-S960@87,@=&AE(&1I9F9E<F5N8V4@8F5T=V5E;B!I=',@8W5R<F5N M="!S=&%T92!A;F0@<V]M90T*("`@<')E=FEO=7,@<W1A=&4@:61E;G1I9FEE M9"!B>2!A;B!E+71A9RX-"@T*("`@5&AE(&5F9FEC86-Y(&]F('5S:6YG(&1E M;'1A(&5N8V]D:6YG<R!I<R!F=6QL>2!E>'!L;W)E9"!I;B!;36]G=6Q=+@T* M#0HT+B`@(%)E<75E<W1I;F<@1&5L=&$@0F%S960@0V]N=&5N="!%;F-O9&EN M9PT*#0H@("!!(&1E;'1A(&5N8V]D960@<F5S<&]N<V4@:7,@82!R97-P;VYS M92!W:&]S92!V86QU92!I<R!E>'!R97-S960@87,-"B`@('1H92!D:69F97)E M;F-E(&)E='=E96X@:71S(&-U<G)E;G0@<W1A=&4@86YD('-O;64@<')E=FEO M=7,@<W1A=&4-"B`@(&ED96YT:69I960@8GD@86X@92UT86<N#0H-"B`@(%1O M(')E<75E<W0@=&AE('5S92!O9B!A(&1E;'1A(&5N8V]D:6YG('1H92!C;&EE M;G0@35535"!S96YD(&$@9&5L=&$-"B`@(&5N8V]D:6YG('1Y<&4@:6X@=&AE M($%C8V5P="U%;F-O9&EN9R!H96%D97(N(%1H92!C;&EE;G0@8V%N(&9R965L M>0T*("`@:6YT97)M:7@@9&5L=&$L(&-O;7!R97-S:6]N+"!O<B!O=&AE<B!E M;F-O9&EN9R!T>7!E<RX@270@:7,@=7`@=&\-"B`@('1H92!S97)V97(@=&\@ M9&5C:61E('=H:6-H(&]F('1H92!L:7-T960@96YC;V1I;F=S('1O('5S92!A M;F0@:6X-"B`@('=H870@;W)D97(N#0H-"B`@(%!L96%S92!S964@<V5C=&EO M;B`Q-"XS(&]F(%M21D,R,#8X72!F;W(@;6]R92!I;F9O<FUA=&EO;B!O;B!T M:&4-"B`@($%C8V5P="U%;F-O9&EN9R!R97%U97-T(&AE861E<BX-"@T*#0H- M"@T*#0H@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@ M("`@("`@("`@("`@("`@("`@("`@(%M086=E(#%=#0H,#0H-"@T*#0H-"@T* M("`@5&AI<R!S<&5C:69I8V%T:6]N(&1E9FEN97,@86X@92UT86<@8F%S960@ M9F]R;6%T(&9O<B!D96QT82!B87-E9`T*("`@8V]N=&5N="!E;F-O9&EN9RX@ M3W1H97(@;65C:&%N:7-M<R!A<F4@<&]S<VEB;&4@8G5T(&%R92!N;W0@97AP M;&]R960-"B`@(&AE<F4N#0H-"B`@(%=H96X@=7-I;F<@86X@92UT86<@8F%S M960@9&5L=&$@8V]N=&5N="!E;F-O9&EN9R!T:&4@8VQI96YT($U54U0-"B`@ M(&EN8VQU9&4@86X@:68M;F]N92UM871C:"!H96%D97(@=VET:"!T:&4@<F5Q M=65S="!T;R!I;F1I8V%T92!W:&%T#0H@("!I;G-T86YC92!O9B!T:&4@96YT M:71Y(&ET('=I<VAE<R!T:&4@9&5L=&$@=&\@8F4@<&5R9F]R;65D(&%G86EN M<W0N#0H-"B`@($EF(&$@<VEN9VQE(&4M=&%G('9A;'5E(&ES(&EN8VQU9&5D M(&EN('1H92!I9BUN;VYE+6UA=&-H(&AE861E<B!T:&5N#0H@("!T:&4@87-S M;V-I871E9"!I;G-T86YC92!O9B!T:&4@96YT:71Y(&ES('1H92!B87-E(&9R M;VT@=VAI8V@@=&AE#0H@("!D96QT82!I<R!T;R!B92!P97)F;W)M960N($EF M(&UU;'1I<&QE(&4M=&%G<R!A<F4@<W!E8VEF:65D('1H96X@=&AE#0H@("!S M97)V97(@;6%Y('!E<F9O<FT@=&AE(&1E;'1A('=I=&@@86YY(&]F('1H92!I M;G-T86YC97,@87-S;V-I871E9`T*("`@=VET:"!T:&4@;&ES=&5D(&4M=&%G M<RX-"@T*-2X@("!297-P;VYD:6YG('=I=&@@82!$96QT82!"87-E9"!#;VYT M96YT($5N8V]D:6YG#0H-"B`@($EF(&$@<V5R=F5R(&-H;V]S97,@=&\@=7-E M(&$@9&5L=&$@96YC;V1I;F<@=&AE;B!I="!-55-4(&EN8VQU9&4@80T*("`@ M=&]K96X@<F5P<F5S96YT:6YG('1H92!T>7!E(&]F(&1E;'1A(&5N8V]D:6YG M('5S960@:6X@=&AE($-O;G1E;G0M#0H@("!%;F-O9&EN9R!R97-P;VYS92!H M96%D97(N(%!L96%S92!S964@<V5C=&EO;B`Q-"XQ,B!O9B!;4D9#,C`V.%T@ M9F]R#0H@("!D971A:6QS(&]F('1H92!#;VYT96YT+45N8V]D:6YG(&AE861E M<BX-"@T*("`@26X@8V%S97,@=VAE<F4@=&AE(&-L:65N="!S96YT(&UU;'1I M<&QE(&4M=&%G<R!I;B!T:&4@:68M;F]N92UM871C:`T*("`@:&5A9&5R('1H M92!S97)V97(@;F5E9',@=&\@8F4@86)L92!T;R!T96QL('1H92!C;&EE;G0@ M=VAI8V@@:6YS=&%N8V4-"B`@('=A<R!U<V5D(&EN('1H92!D96QT82X-"@T* M("`@5&AE($1E;'1A+6)A<V4@:&5A9&5R(&ES(&EN=')O9'5C960@9F]R('1H M:7,@<'5R<&]S92X@5&AE($1E;'1A+6)A<V4-"B`@(&AE861E<B!S<&5C:69I M97,@=VAI8V@@:6YS=&%N8V4@=V%S('5S960@=&\@<&5R9F]R;2!T:&4@9&5L M=&$@8GD-"B`@(')E9F5R96YC:6YG(&ET<R!E+71A9RX-"@T*("`@1&5L=&$M M0F%S92`](")$96QT82U"87-E(B`B.B(@96YT:71Y+71A9R`[('-E92!S96-T M:6]N(#,N,3$@;V8-"B`@(%M21D,R,#8X72X-"@T*-BX@("!#86-H:6YG(&%N M9"!$96QT82!"87-E9"!#;VYT96YT($5N8V]D:6YG#0H-"B`@(%1H97)E(&ES M(&-O;F-E<FX@=&AA="!A($A45%`O,2XP('!R;WAY+"!W:&EC:"!D;V5S(&YO M="!U;F1E<G-T86YD#0H@("!T:&4@0V]N=&5N="U%;F-O9&EN9R!H96%D97(L M('=I;&P@<F5C;W)D('1H92!E;F-O9&5D(')E<W!O;G-E(&%N9`T*("`@:6UP M<F]P97)L>2!R971U<FX@:70@=&\@8VQI96YT<RX-"@T*("`@270@:7,@9V5N M97)A;&QY('5N<V%F92!T;R!S96YD($-O;G1E;G0M16YC;V1I;F<@=&AR;W5G M:"!C;VYN96-T:6]N<PT*("`@=&AA="!M87D@8V]N=&%I;B!(5%10+S$N,"!P M<F]X:65S+B!);B!O<F1E<B!T;R!S869E;'D@<V5N9"!#;VYT96YT+0T*("`@ M16YC;V1I;F<@=&AE($5X<&ER97,@:&5A9&5R(&YE961S('1O(&)E('-E="!I M;B!T:&4@<&%S="!I;B!O<F1E<B!T;PT*("`@96YS=7)E('1H870@2%144"\Q M+C`@8V%C:&5S('=I;&P@;F]T(&-A8VAE('1H92!R97-P;VYS92X@26X@861D M:71I;VX-"B`@(&$@8V%C:&4M8V]N=')O;#H@;6%X+6%G92!D:7)E8W1I=F4@ M4TA/54Q$(&)E(&EN8VQU9&5D('-O('1H870-"B`@($A45%`O,2XQ('!R;WAI M97,@=VEL;"!C;W)R96-T;'D@8V%C:&4@=&AE(')E<W!O;G-E+@T*#0HW+B`@ M(%)E=&%I;B!#86-H92U#;VYT<F]L($1I<F5C=&EV90T*#0H-"@T*#0H-"B`@ M("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@ M("`@("`@("`@("`@("`@6U!A9V4@,ET-"@P-"@T*#0H-"@T*#0H@("!)="!W M;W5L9"!B92!U<V5F=6P@:68@82!C;&EE;G0@8V]U;&0@9&5T97)M:6YE(&EF M('1H92!S97)V97(@:6YT96YD<PT*("`@=&\@:V5E<"!A(&-O<'D@;V8@=&AE M(&-U<G)E;G0@:6YS=&%N8V4@;V8@86X@96YT:71Y(&9O<B!U<V4@=VET:`T* M("`@9&5L=&$@96YC;V1I;F<N(%1H92!C;&EE;G0@8V%N(&QE=F5R86=E('1H M:7,@:VYO=VQE9&=E('1O(&1E=&5R;6EN90T*("`@=VAE;B!T;R!D:7-C87)D M(&]L9&5R('9E<G-I;VYS(&]F(&$@<F5S;W5R8V4N#0H-"B`@($9O<B!E>&%M M<&QE+"!T:&4@<V5R=F5R(&UA>2!H879E(&1E8VED960@=&AA="!S:6YC92!T M:&4@;&%T97-T#0H@("!C:&%N9V4@=&\@82!R97-O=7)C92!I<R!M:6YO<B!A M;F0@8F5C875S92!S;R!M86YY(&-L:65N=',@:&%V92!T:&4-"B`@('!R979I M;W5S(&EN<W1A;F-E+"!I="!W:6QL(&YO="!R96-O<F0@=&AE(&-U<G)E;G0@ M:6YS=&%N8V4@9F]R(&1E;'1A#0H@("!U<V%G92X@07,@<W5C:"!T:&4@8VQI M96YT('=O=6QD(&)E(&%D=FES960@=&\@:V5E<"!B;W1H('1H92!N97<-"B`@ M('9E<G-I;VX@86YD('1H92!P<F5V:6]U<R!V97)S:6]N(&%R;W5N9"X@5&AE M(&YE=R!V97)S:6]N(&-O;G1A:6YS#0H@("!T:&4@=7`@=&\@9&%T92!I;F9O M<FUA=&EO;B!A;F0@=&AE(&]L9&5R('9E<G-I;VX@8V%N(&)E('5S960@:6X@ M80T*("`@9G5T=7)E(&1E;'1A(')E<75E<W0N#0H-"B`@($$@<V5R=F5R(&UA M>2!I;F1I8V%T92!I=',@:6YT96YT:6]N('1O(&UA:6YT86EN(&$@8V]P>2!O M9B!A;@T*("`@:6YS=&%N8V4@9F]R('5S92!W:71H(&1E;'1A(&5N8V]D:6YG M<R!B>2!R971U<FYI;F<@=&AE(")R971A:6XB#0H@("!T;VME;B!W:71H('1H M92!#86-H92UC;VYT<F]L(&AE861E<BX@5&AE(")R971A:6XB('1O:V5N($U! M62!B92!U<V5D#0H@("!W:71H(&%N>2!'150@;W(@24Y$15@@<F5S<&]N<V4L M(')E9V%R9&QE<W,@;V8@=&AE(&5N8V]D:6YG('5S960@=VET:`T*("`@=&AE M(')E<W!O;G-E+@T*#0HX+B`@($4M=&%G($)A<V5D($1E;'1A($-O;G1E;G0@ M16YC;V1I;F=S#0H-"B`@(%1H92`B1T1)1D8B(&-O;G1E;G0@96YC;V1I;F<@ M=&]K96X@:7,@9&5F:6YE9"!F;W(@=7-E('=I=&@@=&AE#0H@("!;1T1)1D9= M(&1E;'1A(&9O<FUA="X-"@T*("`@6TYE960@<F5F97)E;F-E<R!F;W(@54Y) M6"!$249&(&%N9"!61$E&1ET-"@T*.2X@("!"87-E+4U$-2!297-P;VYS92!( M96%D97(-"@T*("`@57!O;B!R96-E:79I;F<@82!D96QT82!E;F-O9&5D(&UE M<W-A9V4@=&AE(&-L:65N="!M87D@=V%N="!T;PT*("`@8V]N9FER;2!T:&4@ M:6YT96=R:71Y(&]F('1H92!F:6YA;"P@=6YE;F-O9&5D+"!R97-U;'0N(%1H M92!U<V4@;V8@86X-"B`@($U$-2!H87-H(&ES(&%N(&]B=FEO=7,@8VAO:6-E M(&)U="!(5%10(&]N;'D@9&5F:6YE<R!T:&4@8V]N=&5N="UM9#4-"B`@(&AE M861E<B!T:&%T('-P96-I9FEE<R!T:&4@340U(&AA<V@@;V8@=&AE(&-O;G1E M;G0M96YC;V1E9"!B;V1Y(&YO=`T*("`@=&AE(&9I;F%L+"!U;F5N8V]D960L M(')E<W5L="X@07,@<W5C:"!T:&4@0F%S92U-1#4@<F5S<&]N<V4@:&5A9&5R M#0H@("!I<R!I;G1R;V1U8V5D+B!4:&ES(&AE861E<B!S<&5C:69I97,@=&AE M($U$-2!H87-H(&]F('1H92!F=6QL>0T*("`@=6YE;F-O9&5D(')E<W!O;G-E M(&)O9'DN#0H-"B`@($)A<V4M340U(#T@(D)A<V4M340U(B`B.B(@;60U+61I M9V5S="`[(%-E92!S96-T:6]N(#$T+C$V(&]F#0H@("!;4D9#,C`V.%T@9F]R M('1H92!D969I;FET:6]N(&]F($U$-2U$:6=E<W0-"@T*,3`N("!396-U<FET M>2!#;VYS:61E<F%T:6]N<PT*#0H@("!4:&ES('-P96-I9FEC871I;VX@9&]E M<R!N;W0@:6YT<F]D=6-E(&%N>2!S96-U<FET>2!C;VYC97)N<R!T:&%T(&%R M90T*("`@;F]T(&%L<F5A9'D@<')E<V5N="!I;B!T:&4@2%144"!P<F]T;V-O M;"X@4&QE87-E(')E9F5R('1O('1H90T*("`@<V5C=7)I='D@8V]N<VED97)A M=&EO;G,@<V5C=&EO;B!O9B!T:&4@6U)&0S(P-CA=(&9O<B!D971A:6QS+@T* M#0HQ,2X@(%)E9F5R96YC97,-"@T*#0H-"@T*#0H@("`@("`@("`@("`@("`@ M("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@ M(%M086=E(#-=#0H,#0H-"@T*#0H-"@T*("`@6U)&0S(P-CA=(%(N($9I96QD M:6YG+"!*+B!'971T>7,L($HN($UO9W5L+"!(+B!&<GES='EK+"!4+B!"97)N M97)S+0T*("`@3&5E+"`G2'EP97)T97AT(%1R86YS9F5R(%!R;W1O8V]L("TM M($A45%`O,2XQ)RP@4D9#(#(P-C@L($IA;G5A<GD-"B`@(#$Y.3<L(#Q54DPZ M9G1P.B\O9',N:6YT97)N:6,N;F5T+W)F8R]R9F,R,#8X+G1X=#X-"@T*("`@ M6T=$249&72!!+B!686X@2&]F9BP@2BX@4&%Y;F4L("='96YE<FEC($1)1D8@ M1F]R;6%T(%-P96-I9FEC871I;VXG+`T*("`@5S-#($YO=&4L($%U9W5S="`Q M.3DW+`T*("`@/%523#IH='1P.B\O=W=W+G<S+F]R9R]3=6)M:7-S:6]N+S$Y M.3<O,3$O3W9E<G9I97<N:'1M;#X-"@T*("`@6TUO9W5L72!*+B!-;V=U;"P@ M1BX@1&]U9VQI<RP@02X@1F5L9&UA;FXL($(N($MR:7-H;F%M=7)T:'DL#0H@ M("`G4&]T96YT:6%L(&)E;F5F:71S(&]F(&1E;'1A(&5N8V]D:6YG(&%N9"!D M871A(&-O;7!R97-S:6]N(&9O<@T*("`@2%144"<L($1I9VET86P@5U),(%)E M<V5A<F-H(%)E<&]R="`Y-R\T+"!*=6QY(#$Y.3<L(#Q54DPZ#0H@("!H='1P M.B\O=W=W+G)E<V5A<F-H+F1I9VET86PN8V]M+W=R;"]T96-H<F5P;W)T<R]A M8G-T<F%C=',O.3<N-"YH=&UL/@T*#0H-"@T*#0H-"@T*#0H-"@T*#0H-"@T* M#0H-"@T*#0H-"@T*#0H-"@T*#0H-"@T*#0H-"@T*#0H-"@T*#0H-"@T*#0H- M"@T*#0H-"@T*("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@ E("`@("`@("`@("`@("`@("`@("`@("`@("!;4&%G92`T70T*#`== ` end
Received on Monday, 6 October 1997 16:33:45 UTC