AnsweredAssumed Answered

Checksum generation

Question asked by VRFuser on Dec 4, 1997
Item Subject: VRF:Checksum generation
Subject: Re: VRF:Checksum generation
Author:  CONOR BUESCHER at HP-Corvallis,om2
Date:    12/4/97 5:46 PM


     Hal,
    
     Sorry about the first message, I forgot to make my user function a
     user object, so all you got was a function call.
    
     Here's the real-meal-deal.
    
     Conor Buescher
    
    
    
______________________________ Reply Separator _________________________________
Subject: VRF:Checksum generation
Author:  Non-HP-hal-cornelius-MTI (hal_cornelius-MTI@echo.chinalake.navy.mil) at
HP-Corvallis,mimegw1
Date:    12/4/97 4:29 PM
    
    
Has anyone generated a function that will calculate checksums?  I have a
need to generate an binary Or checksum for an antenna controller.  The
input is text format.  The checksum is a two character ASCII string that
represents, in HEX, the lowest 8 bits of the arithmetic sum of all
characters in the message string (summation without carry).  The message
will be of varying lengths.
    
Any help would be appreciated.
    
Hal Cornelius
Echo Range
China Lake, CA.

.......................................................................

Item Subject: checksum.vee "checksum.vee 12/4/97 5:46P"
Could not convert BINARY FILE item to text.
Will attempt to 'shar' item as file '0al5j7r' at end of msg.

.......................................................................

TO: hal_cornelius-MTI@echo.chinalake.navy.mil
CC: hpvxd_xc@hpislsup.lvld.hp.com


# This is a shell archive.  Remove anything before this line,
# then unpack it by saving it in a file and typing "sh file".
#
# Wrapped by HP OpenMail System <openmail@hp-pcd> on Thu Dec  4 18:22:16 1997
#
# This archive contains:
#     0al5j7r     
#
# Error checking via wc(1) will be performed.

LANG=""; export LANG
PATH=/bin:/usr/bin:$PATH; export PATH


rm -f /tmp/uud$$
(echo "begin 666 /tmp/uud$$
#;VL*n#6%@x

end" | uudecode) >/dev/null 2>&1
if [ X"`cat /tmp/uud$$ 2>&1`" = Xok ]
then
     unpacker=uudecode
else
     echo Compiling unpacker for non-ascii files
     pwd=`pwd`; cd /tmp
     cat >unpack$$.c <<'EOF'
#include <stdio.h>
#define C (*p++ - ' ' & 077)
main()
{
     int n;
     char buf[128], *p, a,b;

     scanf("begin %o ", &n);
     gets(buf);

     if (freopen(buf, "w", stdout) == NULL) {
          perror(buf);
          exit(1);
     }

     while (gets(p=buf) && (n=C)) {
          while (n>0) {
               a = C;
               if (n-- > 0) putchar(a << 2 | (b=C) >> 4);
               if (n-- > 0) putchar(b << 4 | (a=C) >> 2);
               if (n-- > 0) putchar(a << 6 | C);
          }
     }
     exit(0);
}
EOF
     cc -o unpack$$ unpack$$.c
     rm unpack$$.c
     cd $pwd
     unpacker=/tmp/unpack$$
fi
rm -f /tmp/uud$$

echo x - 0al5j7r '[non-ascii]'
$unpacker <<'@eof'
begin 660 0al5j7r
M*'-A=F5&;W)M870@(C(N,R(I#0HH9&%T92 B5&AU(# T+T1E8RQ.3DW(#$WX
M.C0V.C4S("(I#0HH=F5E<F5V("(T+C Q(BD-"BAP;&%T9F]R;2 B4$,B*0T*X
M*&5X96--;V1E(&9A<W0I#0HH9FEL=&5R3D%.(# I#0HH=V]R:W-P86-E4W1AX
M8VMI;F=/<F1E<B!-*0T**%-A=F5#1B!N;RD-"BAD979I8V4@,"!23T]40T].X
M5$585 T**'!R;W!E<G1I97,-"BAT<FEG36]D92!D96<I#0HH;F5X=$E$(#(IX
M#0HH<&]P=7!4:71L951E>'0@(E5N=&ET;&5D(BD-"BAP;W!U<$UO=F5A8FQEX
M(#$I#0HH9&5L971E1VQO8F%L<R P*2D-"BAD979I8V5,:7-T#0HH9&5V:6-EX
M(# @0T].5$585 T**'!R;W!E<G1I97,-"BAN86UE(")S96YD(BD-"BAT<FEGX
M36]D92!D96<I#0HH;F5X=$E$(#$U*0T**'!O<'5P5&ET;&5497AT(")5<V5RX
M3V)J96-T(BD-"BAP;W!U<$UO=F5A8FQE(#$I*0T**&EN=&5R9F%C90T**&ENX
M<'5T(#$-"BAN86UE(")!(BD-"BAR97%U:7)E<PT**&1A=&%T>7!E($EN=#,RX
M*0T**'-H87!E(")!<G)A>2 Q1"(I*0T**&]P=&EO;F%L('EE<RDI*0T**&1EX
M=FEC94QI<W0-"BAD979I8V4@,"!&3U)-54Q!#0HH<')O<&5R=&EE<PT**&YAX
M;64@(G1O=%-I>F4H>"DB*0T**&5X<'(@,2 B=&]T4VEZ92AX*2(I*0T**&ENX
M=&5R9F%C90T**&EN<'5T(#$-"BAN86UE(")8(BD-"BAO<'1I;VYA;"!Y97,IX
M*0T**&]U='!U=" Q#0HH;F%M92 B4F5S=6QT(BD-"BAT86<@(E)E<W5L="(IX
M#0HH;&]C:R!N86UE(&-O;G-T<F%I;G1S*0T**&]P=&EO;F%L('EE<RDI*2D-X
M"BAD979I8V4@,2!&3U)#3U5.5 T**'!R;W!E<G1I97,-"BAC;W5N=" Q-"DIX
M#0HH:6YT97)F86-E#0HH:6YP=70@,0T**&YA;64@(D-O=6YT(BD-"BAT86<@X
M(D-O=6YT(BD-"BAR97%U:7)E<PT**&1A=&%T>7!E($EN=#,R*0T**'-H87!EX
M(")38V%L87(B*2D-"BAL;V-K(&-O;G-T<F%I;G1S*0T**&]P=&EO;F%L('EEX
M<RD-"BAB=69F97(@6453*2D-"BAO=71P=70@,0T**&YA;64@(D-O=6YT(BD-X
M"BAL;V-K(&YA;64@8V]N<W1R86EN=',I*2DI#0HH9&5V:6-E(#(@24]$159)X
M0T4-"BAP<F]P97)T:65S#0HH;F%M92 B0V]M,2 H($ @,2DB*0T**'1R86YSX
M86-T:6]N<R Q(")214%$($))3D%262!X($)95$4B*2D-"BAI;G1E<F9A8V4-X
M"BAO=71P=70@,0T**&YA;64@(E@B*0T**&]P=&EO;F%L('EE<RDI#0HH;W5TX
M<'5T(#(-"BAT>7!E(&5X8V5P=&EO;BD-"BAN86UE(")%<G)O<B(I#0HH;&]CX
M:R!N86UE(&-O;G-T<F%I;G1S*0T**&]P=&EO;F%L('EE<RDI*0T**&EM<&QEX
M;65N=&%T:6]N#0HH:6]P871H(")#;VTQ(BDI*0T**&1E=FEC92 S($9/4DU5X
M3$$-"BAP<F]P97)T:65S#0HH;F%M92 B05M"72(I#0HH97AP<B Q(")!6T)=X
M(BDI#0HH:6YT97)F86-E#0HH:6YP=70@,0T**&YA;64@(D$B*0T**')E<75IX
M<F5S#0HH9&%T871Y<&4@26YT,S(I#0HH<VAA<&4@(D%R<F%Y(#%$(BDI#0HHX
M;W!T:6]N86P@>65S*2D-"BAI;G!U=" R#0HH;F%M92 B0B(I#0HH;W!T:6]NX
M86P@>65S*2D-"BAO=71P=70@,0T**&YA;64@(E)E<W5L="(I#0HH=&%G(")2X
M97-U;'0B*0T**&QO8VL@;F%M92!C;VYS=')A:6YT<RD-"BAO<'1I;VYA;"!YX
M97,I*2DI#0HH9&5V:6-E(#0@2E5.0U1)3TX-"BAP<F]P97)T:65S#0HH;F%MX
M92 B2D-4(BDI#0HH:6YT97)F86-E#0HH:6YP=70@,0T**&YA;64@(D$B*0T*X
M*&QO8VL@;F%M92!C;VYS=')A:6YT<RDI#0HH:6YP=70@,@T**&YA;64@(D(BX
M*0T**&QO8VL@;F%M92!C;VYS=')A:6YT<RDI#0HH;W5T<'5T(#$-"BAN86UEX
M(")$871A(BD-"BAL;V-K(&YA;64@8V]N<W1R86EN=',I*2DI#0HH9&5V:6-EX
M(#4@24942$5.14Q310T**'!R;W!E<G1I97,-"BAN86UE(")E<G)O<CB*0T*X
M*&-A<V5S(#$@(B@H03T],C$I*EPB3D%+7"(I*R@H03T].#$Q*2I<(E1)345/X
M550@,EPB*2(I*0T**&EN=&5R9F%C90T**&EN<'5T(#$-"BAN86UE(")!(BD-X
M"BAO<'1I;VYA;"!Y97,I*0T**&]U='!U=" Q#0HH;F%M92 B5&AE;B(I#0HHX
M;&]C:R!N86UE(&-O;G-T<F%I;G1S*2D-"BAO=71P=70@,@T**&YA;64@(D5LX
M<V4B*0T**&QO8VL@;F%M92!C;VYS=')A:6YT<RDI*2D-"BAD979I8V4@-B!)X
M3T1%5DE#10T**'!R;W!E<G1I97,-"BAN86UE(")#;VTQ("@@0" Q*2(I#0HHX
M=')A;G-A8W1I;VYS(#$@(E=2251%($))3D%262!A($)95$4B*2D-"BAI;G1EX
M<F9A8V4-"BAI;G!U=" Q#0HH;F%M92 B02(I#0HH;W!T:6]N86P@>65S*2DIX
M#0HH:6UP;&5M96YT871I;VX-"BAI;W!A=&@@(D-O;3$B*2DI#0HH9&5V:6-EX
M(#D@2E5.0U1)3TX-"BAP<F]P97)T:65S#0HH;F%M92 B2D-4(BDI#0HH:6YTX
M97)F86-E#0HH:6YP=70@,0T**&YA;64@(D$B*0T**&QO8VL@;F%M92!C;VYSX
M=')A:6YT<RDI#0HH:6YP=70@,@T**&YA;64@(D(B*0T**&QO8VL@;F%M92!CX
M;VYS=')A:6YT<RDI#0HH;W5T<'5T(#$-"BAN86UE(")$871A(BD-"BAL;V-KX
M(&YA;64@8V]N<W1R86EN=',I*2DI#0HH9&5V:6-E(#$P($E&5$A%3D5,4T4-X
M"BAP<F]P97)T:65S#0HH;F%M92 B97)R;W(_(BD-"BAC87-E<R Q("(H*"A!X
M(3TT*2HH02$].#$Q*2DJ7")#3TTQ($524D]27"(I*R@H03T].#$Q*2I<(D1!X
M5$$@3$E.2R!424U%3U547"(I(BDI#0HH:6YT97)F86-E#0HH:6YP=70@,0T*X
M*&YA;64@(D$B*0T**&]P=&EO;F%L('EE<RDI#0HH;W5T<'5T(#$-"BAN86UEX
M(")4:&5N(BD-"BAL;V-K(&YA;64@8V]N<W1R86EN=',I*0T**&]U='!U=" RX
M#0HH;F%M92 B16QS92(I#0HH;&]C:R!N86UE(&-O;G-T<F%I;G1S*2DI*0T*X
M*&1E=FEC92 Q,2!*54Y#5$E/3@T**'!R;W!E<G1I97,-"BAN86UE(")*0U0BX
M*2D-"BAI;G1E<F9A8V4-"BAI;G!U=" Q#0HH;F%M92 B02(I#0HH;&]C:R!NX
M86UE(&-O;G-T<F%I;G1S*2D-"BAI;G!U=" R#0HH;F%M92 B0B(I#0HH;&]CX
M:R!N86UE(&-O;G-T<F%I;G1S*2D-"BAO=71P=70@,0T**&YA;64@(D1A=&$BX
M*0T**&QO8VL@;F%M92!C;VYS=')A:6YT<RDI*2D-"BAD979I8V4@,3(@24]$X
M159)0T4-"BAP<F]P97)T:65S#0HH;F%M92 B0V]M,2 H($ @,2DB*0T**'1RX
M86YS86-T:6]N<R R(")74DE412!"24Y!4ED@-2!"651%(B B4D5!1"!"24Y!X
M4ED@>"!"651%(BDI#0HH:6YT97)F86-E#0HH;W5T<'5T(#$-"BAN86UE(")8X
M(BD-"BAO<'1I;VYA;"!Y97,I*0T**&]U='!U=" R#0HH='EP92!E>&-E<'1IX
M;VXI#0HH;F%M92 B17)R;W(B*0T**&QO8VL@;F%M92!C;VYS=')A:6YT<RD-X
M"BAO<'1I;VYA;"!Y97,I*2D-"BAI;7!L96UE;G1A=&EO;@T**&EO<&%T:" BX
M0V]M,2(I*2D-"BAD979I8V4@,3,@0T%,3 T**'!R;W!E<G1I97,-"BAN86UEX
M(")#86QL(&1I<W!L87DB*0T**&-A;&Q&=6YC(")D:7-P;&%Y(BD-"BAP87)MX
M36]D92!R978S,"DI#0HH:6YT97)F86-E#0HH:6YP=70@,0T**&YA;64@(DQAX
M8F5L(BD-"BAR97%U:7)E<PT**&1A=&%T>7!E(%1E>'0I#0HH<VAA<&4@(E-CX
M86QA<B(I*0T**&]P=&EO;F%L('EE<RDI*2D-"BAD979I8V4@,30@0T].5$58X
M5 T**'!R;W!E<G1I97,-"BAN86UE(")C:&5C:W-U;2(I#0HH=')I9TUO9&4@X
M9&5G*0T**&YE>'1)1" U*0T**'!O<'5P5&ET;&5497AT(")5<V5R3V)J96-TX
M(BD-"BAP;W!U<$UO=F5A8FQE(#$I*0T**&EN=&5R9F%C90T**&EN<'5T(#$-X
M"BAN86UE(")X(BD-"BAR97%U:7)E<PT**&1A=&%T>7!E($EN=#,R*0T**'-HX
M87!E(")!<G)A>2 Q1"(I*0T**&]P=&EO;F%L('EE<RDI#0HH;W5T<'5T(#$-X
M"BAT>7!E(&1A=&$I#0HH;F%M92 B07)R87DB*0T**&QO8VL@8V]N<W1R86ENX
M=',I#0HH;W!T:6]N86P@>65S*2DI#0HH9&5V:6-E3&ES= T**&1E=FEC92 PX
M($9/4DU53$$-"BAP<F]P97)T:65S#0HH;F%M92 B8VAE8VMS=6U;,%TB*0T*X
M*&5X<'(@,2 B8FET<VAI9G0H8FET86YD*'-U;2AX6S Z=&]T<VEZ92AX*2TQX
M72DL("-(1D8P,"DL("TX*2(I*0T**&EN=&5R9F%C90T**&EN<'5T(#$-"BANX
M86UE(")X(BD-"BAR97%U:7)E<PT**&1A=&%T>7!E($EN=#,R*0T**'-H87!EX
M(")!<G)A>2 Q1"(I*0T**&]P=&EO;F%L('EE<RDI#0HH;W5T<'5T(#$-"BANX
M86UE(")297-U;'0B*0T**'1A9R B4F5S=6QT(BD-"BAL;V-K(&YA;64@8V]NX
M<W1R86EN=',I#0HH;W!T:6]N86P@>65S*2DI*0T**&1E=FEC92 Q($9/4DU5X
M3$$-"BAP<F]P97)T:65S#0HH;F%M92 B8VAE8VMS=6U;,5TB*0T**&5X<'(@X
M,2 B*&)I=&%N9"AS=6TH>%LP.G1O='-I>F4H>"DM,5TI+" C2$9&*2DB*2D-X
M"BAI;G1E<F9A8V4-"BAI;G!U=" Q#0HH;F%M92 B>"(I#0HH<F5Q=6ER97,-X
M"BAD871A='EP92!);G0S,BD-"BAS:&%P92 B07)R87D@,40B*2D-"BAO<'1IX
M;VYA;"!Y97,I*0T**&]U='!U=" Q#0HH;F%M92 B4F5S=6QT(BD-"BAT86<@X
M(E)E<W5L="(I#0HH;&]C:R!N86UE(&-O;G-T<F%I;G1S*0T**&]P=&EO;F%LX
M('EE<RDI*2D-"BAD979I8V4@,B!614-43U)#3TY#051%3D%43U(-"BAI;G1EX
M<F9A8V4-"BAI;G!U=" Q#0HH;F%M92 B02(I*0T**&EN<'5T(#(-"BAN86UEX
M(")"(BD-"BAR97%U:7)E<PT**&1A=&%T>7!E($EN=#,R*0T**'-H87!E(")3X
M8V%L87(B*2D-"BAO<'1I;VYA;"!Y97,I*0T**&EN<'5T(#,-"BAN86UE(")#X
M(BD-"BAR97%U:7)E<PT**&1A=&%T>7!E($EN=#,R*0T**'-H87!E(")38V%LX
M87(B*2D-"BAO<'1I;VYA;"!Y97,I*0T**&EN<'5T(#0-"BAN86UE(")$(BD-X
M"BAR97%U:7)E<PT**&1A=&%T>7!E($EN=#,R*0T**'-H87!E(")38V%L87(BX
M*2D-"BAO<'1I;VYA;"!Y97,I*0T**&]U='!U=" Q#0HH;F%M92 B07)R87DBX
M*0T**'1A9R B07)R87DB*2DI*0T**&1E=FEC92 S($9/4DU53$$-"BAP<F]PX
M97)T:65S#0HH;F%M92 B=&]T4VEZ92AX*2TR(BD-"BAE>'!R(#$@(G1O=%-IX
M>F4H>"DM,B(I*0T**&EN=&5R9F%C90T**&EN<'5T(#$-"BAN86UE(")X(BD-X
M"BAR97%U:7)E<PT**&1A=&%T>7!E($EN=#,R*0T**'-H87!E(")!<G)A>2 QX
M1"(I*0T**&]P=&EO;F%L('EE<RDI#0HH;W5T<'5T(#$-"BAN86UE(")297-UX
M;'0B*0T**'1A9R B4F5S=6QT(BD-"BAL;V-K(&YA;64@8V]N<W1R86EN=',IX
M#0HH;W!T:6]N86P@>65S*2DI*0T**&-O;F9I9W5R871I;VX-"BAC;VYN96-TX
M($DQ.C$@1# Z,2D-"BAC;VYN96-T($DQ.C$@1#$Z,2D-"BAC;VYN96-T($DQX
M.C$@1#(Z,2D-"BAC;VYN96-T($0S.C$@1#(Z,BD-"BAC;VYN96-T($0P.C$@X
M1#(Z,RD-"BAC;VYN96-T($0Q.C$@1#(Z-"D-"BAC;VYN96-T($DQ.C$@1#,ZX
M,2D-"BAC;VYN96-T($0R.C$@3S$Z,2DI*0T**&-O;G1E>'1#87)R:65R#0HHX
M86-T:79E(&1E=&%I;"D-"BAD971A:6P-"BAE>'1E;G0@,S8X(#(Q,RD-"BAAX
M;F-H;W)0=" Q,2 M,S,I#0HH8V]N9FEG=7)A=&EO;@T**&1E=D-A<G)I97)&X
M;W(@, T**&%C=&EV92!I8V]N*0T**&EC;VX-"BAE>'1E;G0@.34@,34I*0T*X
M*&]P96X-"BAE>'1E;G0@,SDT(#,Q*2D-"BAT97)M:6YA;',@;VXI#0HH<&ENX
M0V5N=&5R(#$P," Q-3 I*0T**&1E=D-A<G)I97)&;W(@,0T**&%C=&EV92!IX
M8V]N*0T**&EC;VX-"BAE>'1E;G0@.34@,34I*0T**&]P96X-"BAE>'1E;G0@X
M,S8X(#,Q*2D-"BAT97)M:6YA;',@;VXI#0HH<&EN0V5N=&5R(#$P," Q.# IX
M*0T**&1E=D-A<G)I97)&;W(@,@T**&%C=&EV92!I8V]N*0T**&EC;VX-"BAEX
M>'1E;G0@,3$T(#$R-"DI#0HH;W!E;@T**&5X=&5N=" V-" X,BDI#0HH=&5RX
M;6EN86QS(&]N*0T**'!I;D-E;G1E<B R-# @,30P*2D-"BAD979#87)R:65RX
M1F]R(#,-"BAA8W1I=F4@:6-O;BD-"BAI8V]N#0HH97AT96YT(#DV(#$U*2D-X
M"BAO<&5N#0HH97AT96YT(#$R-" S,2DI#0HH=&5R;6EN86QS(&]N*0T**'!IX
M;D-E;G1E<B Q,# @,3(P*2D-"BAC;VYN96-T($DQ.C$@1# Z,0T**'!O:6YTX
M<R T("TQ,2 Q,SD@,C @,3,Y(#(P(#$U," U," Q-3 I*0T**&-O;FYE8W0@X
M23$Z,2!$,3HQ#0HH<&]I;G1S(#0@+3$Q(#$S.2 R," Q,SD@,C @,3@P(#4PX
M(#$X,"DI#0HH8V]N;F5C="!),3HQ($0R.C$-"BAP;VEN=',@-" M,3$@,3,YX
M(#(P(#$S.2 R," Y," Q.# @.3 I*0T**&-O;FYE8W0@1#,Z,2!$,CHR#0HHX
M<&]I;G1S(#(@,34P(#$R," Q.# @,3(P*2D-"BAC;VYN96-T($0P.C$@1#(ZX
M,PT**'!O:6YT<R R(#$U," Q-3 @,3@P(#$U,"DI#0HH8V]N;F5C="!$,3HQX
M($0R.C0-"BAP;VEN=',@,B Q-3 @,3@P(#$X," Q.# I*0T**&-O;FYE8W0@X
M23$Z,2!$,SHQ#0HH<&]I;G1S(#0@+3$Q(#$S.2 R," Q,SD@,C @,3(P(#0YX
M(#$R,"DI#0HH8V]N;F5C="!$,CHQ($Q.C$-"BAP;VEN=',@-" R.3D@,30PX
M(#8R," Q-# @-C(P(#$S.2 S-38@,3,Y*2DI#0HH<W1A8VMI;F=/<F1E<B RX
M(#,@," Q*2DI*0T**&-O;F9I9W5R871I;VX-"BAC;VYN96-T($0Q,CHQ($0PX
M.C$I#0HH8V]N;F5C="!$,3 Z,"!$,3HP*0T**&-O;FYE8W0@1# Z,2!$,3HQX
M*0T**&-O;FYE8W0@1#$Z,"!$,CHP*0T**&-O;FYE8W0@1#$R.C$@1#,Z,2D-X
M"BAC;VYN96-T($0Q.C$@1#,Z,BD-"BAC;VYN96-T($0R.C$@1#0Z,2D-"BACX
M;VYN96-T($0R.C(@1#0Z,BD-"BAC;VYN96-T($0T.C$@1#4Z,2D-"BAC;VYNX
M96-T($0S.C$@1#8Z,2D-"BAC;VYN96-T($0X.C$@1#<Z,2D-"BAC;VYN96-TX
M($0U.C$@1#<Z,BD-"BAC;VYN96-T($0Y.C$@1#@Z,2D-"BAC;VYN96-T($0QX
M,#HQ($0Y.C$I#0HH8V]N;F5C="!$,3 Z,B!$.3HR*0T**&-O;FYE8W0@1#<ZX
M,2!$,3$Z,2D-"BAC;VYN96-T($DQ.C$@1#$R.C$I*2D-"BAC;VYT97AT0V%RX
M<FEE<@T**&%C=&EV92!D971A:6PI#0HH9&5T86EL#0HH97AT96YT(#8Y.2 SX
M.30I#0HH86YC:&]R4'0@,C(V(#DW*0T**&-O;F9I9W5R871I;VX-"BAD979#X
M87)R:65R1F]R(# -"BAA8W1I=F4@:6-O;BD-"BAI8V]N#0HH97AT96YT(#<WX
M(#$T*2D-"BAO<&5N#0HH97AT96YT(#$P-B V,"DI#0HH=&5R;6EN86QS(&]NX
M*0T**'!I;D-E;G1E<B Q,# @.# I*0T**&1E=D-A<G)I97)&;W(@,0T**&%CX
M=&EV92!I8V]N*0T**&EC;VX-"BAE>'1E;G0@-S @,38I*0T**&]P96X-"BAEX
M>'1E;G0@,3,Y(#,R*2D-"BAP:6Y#96YT97(@,3DP(#@P*2D-"BAD979#87)RX
M:65R1F]R(#(-"BAA8W1I=F4@:6-O;BD-"BAI8V]N#0HH97AT96YT(#@W(#(UX
M*2D-"BAO<&5N#0HH97AT96YT(#,W,B Q,#4I*0T**'1E<FUI;F%L<R!O;BD-X
M"BAP:6Y#96YT97(@,3DP(#$R,"DI#0HH9&5V0V%R<FEE<D9O<B S#0HH86-TX
M:79E(&EC;VXI#0HH:6-O;@T**&5X=&5N=" T," R-2DI#0HH;W!E;@T**&5XX
M=&5N=" X-" Q,#0I*0T**'1E<FUI;F%L<R!O;BD-"BAP:6Y#96YT97(@,C<PX
M(#<P*2D-"BAD979#87)R:65R1F]R(#0-"BAA8W1I=F4@:6-O;BD-"BAI8V]NX
M#0HH97AT96YT(#(T(#(U*2D-"BAO<&5N#0HH97AT96YT(#$R(#4P*2D-"BATX
M97)M:6YA;',@;VXI#0HH<&EN0V5N=&5R(#(W," Q,C I*0T**&1E=D-A<G)IX
M97)&;W(@-0T**&%C=&EV92!I8V]N*0T**&EC;VX-"BAE>'1E;G0@-#@@,C4IX
M*0T**&]P96X-"BAE>'1E;G0@-38U(#$P-"DI#0HH=&5R;6EN86QS(&]N*0T*X
M*'!I;D-E;G1E<B S,C @,3(P*2D-"BAD979#87)R:65R1F]R(#8-"BAA8W1IX
M=F4@:6-O;BD-"BAI8V]N#0HH97AT96YT(#@Y(#$U*2D-"BAO<&5N#0HH97ATX
M96YT(#,W,B Q,#4I*0T**'1E<FUI;F%L<R!O;BD-"BAP:6Y#96YT97(@,S4PX
M(#<P*2D-"BAD979#87)R:65R1F]R(#D-"BAA8W1I=F4@:6-O;BD-"BAI8V]NX
M#0HH97AT96YT(#(T(#(U*2D-"BAO<&5N#0HH97AT96YT(#$P(#$U-"DI#0HHX
M=&5R;6EN86QS(&]N*0T**'!I;D-E;G1E<B T-S @-S I*0T**&1E=D-A<G)IX
M97)&;W(@,3 -"BAA8W1I=F4@:6-O;BD-"BAI8V]N#0HH97AT96YT(#4S(#(UX
M*2D-"BAO<&5N#0HH97AT96YT(#8T-2 Q,#0I*0T**'1E<FUI;F%L<R!O;BD-X
M"BAP:6Y#96YT97(@,S$P(#,P*2D-"BAD979#87)R:65R1F]R(#$Q#0HH86-TX
M:79E(&EC;VXI#0HH:6-O;@T**&5X=&5N=" R-" R-2DI#0HH;W!E;BD-"BATX
M97)M:6YA;',@;VXI#0HH<&EN0V5N=&5R(#(V," S,"DI#0HH9&5V0V%R<FEEX
M<D9O<B Q,@T**&%C=&EV92!I8V]N*0T**&EC;VX-"BAE>'1E;G0@.#D@,C4IX
M*0T**&]P96X-"BAE>'1E;G0@,S<R(#$P-2DI#0HH=&5R;6EN86QS(&]N*0T*X
M*'!I;D-E;G1E<B Q.3 @,S I*0T**&1E=D-A<G)I97)&;W(@,3,-"BAA8W1IX
M=F4@:6-O;BD-"BAI8V]N#0HH97AT96YT(#<Y(#$V*2D-"BAO<&5N#0HH97ATX
M96YT(#$Y-B U,RDI#0HH=&5R;6EN86QS(&]N*0T**'!I;D-E;G1E<B U-# @X
M-S I*0T**&1E=D-A<G)I97)&;W(@,30-"BAA8W1I=F4@:6-O;BD-"BAI8V]NX
M#0HH97AT96YT(#8Y(#$V*2D-"BAP:6Y#96YT97(@+3(P(#@P*2D-"BAC;VYNX
M96-T($0Q,CHQ($0P.C$-"BAP;VEN=',@,B Q-R X," U.2 X,"DI#0HH8V]NX
M;F5C="!$,3 Z,"!$,3HP#0HH<&]I;G1S(#(@,3DP(#0U(#$Y," V.2DI#0HHX
M8V]N;F5C="!$,#HQ($0Q.C$-"BAP;VEN=',@,B Q-#$@.# @,34R(#@P*2D-X
M"BAC;VYN96-T($0Q.C @1#(Z, T**'!O:6YT<R R(#$Y," Y," Q.3 @,3 UX
M*2D-"BAC;VYN96-T($0Q,CHQ($0S.C$-"BAP;VEN=',@-B Q-R X," T," XX
M," T," U," Q,C @-3 @,3(P(#8P(#(T-R V,"DI#0HH8V]N;F5C="!$,3HQX
M($0S.C(-"BAP;VEN=',@,B R,C<@.# @,C0W(#@P*2D-"BAC;VYN96-T($0RX
M.C$@1#0Z,0T**'!O:6YT<R R(#(S-B Q,3 @,C4U(#$Q,"DI#0HH8V]N;F5CX
M="!$,CHR($0T.C(-"BAP;VEN=',@,B R,S8@,3,P(#(U-2 Q,S I*0T**&-OX
M;FYE8W0@1#0Z,2!$-3HQ#0HH<&]I;G1S(#(@,C@T(#$R," R.3,@,3(P*2D-X
M"BAC;VYN96-T($0S.C$@1#8Z,0T**'!O:6YT<R R(#(Y,B W," S,#,@-S IX
M*0T**&-O;FYE8W0@1#@Z,2!$-SHQ#0HH<&]I;G1S(#0@,S,Y(#(P(#0R," RX
M," T,C @-C @-#4U(#8P*2D-"BAC;VYN96-T($0U.C$@1#<Z,@T**'!O:6YTX
M<R T(#,T-B Q,3 @-#(P(#$Q," T,C @.# @-#4U(#@P*2D-"BAC;VYN96-TX
M($0Y.C$@1#@Z,0T**'!O:6YT<R R(#(W-" S," R.#$@,S I*0T**&-O;FYEX
M8W0@1#$P.C$@1#DZ,0T**'!O:6YT<R R(#(S-R R," R-#4@,C I*0T**&-OX
M;FYE8W0@1#$P.C(@1#DZ,@T**'!O:6YT<R R(#(S-R T," R-#4@-# I*0T*X
M*&-O;FYE8W0@1#<Z,2!$,3$Z,0T**'!O:6YT<R R(#0X-" W," T.3@@-S IX
M*0T**&-O;FYE8W0@23$Z,2!$,3(Z,0T**'!O:6YT<R T("TR,C8@.3D@+3(VX
M," Y.2 M,C8P(#@P("TU-R X,"DI*0T**'-T86-K:6YG3W)D97(@,2 P(#D@X
M-" W(#$Q(#8@,R Q," X(#(@-2 Q,BDI*2D-"BAD979I8V4@,2!#3TY35$%.X
M5 T**'!R;W!E<G1I97,-"BAN86UE(")3,48Q(BDI#0HH:6YT97)F86-E#0HHX
M;W5T<'5T(#$-"BAN86UE("));G0S,B(I#0HH;&]C:R!N86UE(&-O;G-T<F%IX
M;G1S*2DI#0HH:6UP;&5M96YT871I;VX-"BAV86QU92!);G0S,@T**&YU;41IX
M;7,@,2D-"BAS:7IE(#$Q*0T**&1A=&$@(%L@,3 @,2 Q(#$R.2 Q(#$R." QX
M(# @," P(# @72DI#0HH:6YI=%9A;'5E($EN=#,R#0HH9&%T82 @,"DI*2D-X
M"BAC;VYF:6=U<F%T:6]N#0HH8V]N;F5C="!$,3HQ($0P.C$I*2D-"BAC;VYTX
M97AT0V%R<FEE<@T**'=N9$]R:6=I;B R(#(I#0HH=VYD4W1A=&4@<F5S*0T*X
M*&%C=&EV92!D971A:6PI#0HH9&5T86EL#0HH97AT96YT(#8P," S-3 I#0HHX
M86YC:&]R4'0@,S<T(#(R,2D-"BAC;VYF:6=U<F%T:6]N#0HH9&5V0V%R<FEEX
M<D9O<B P#0HH86-T:79E(&EC;VXI#0HH:6-O;@T**&5X=&5N=" S-2 Q-BDIX
M#0HH<&EN0V5N=&5R("TU," M-3 I*0T**&1E=D-A<G)I97)&;W(@,0T**&%CX
M=&EV92!I8V]N*0T**&EC;VX-"BAE>'1E;G0@-C @,38I*0T**&]P96X-"BAEX
M>'1E;G0@,34Y(#(S,RD-"BAS:&]W1F]R;6%T(&EN="D-"BAF;W)M871T97(-X
M"BAR96%L1F]R;6%T('-T86YD87)D*0T**')E86Q3:6=$:6=I=',@-"D-"BARX
M96%L4F%D:7A3<&5C(#0I#0HH:6YT96=E<D)A<V4@:&5X861E8VEM86PI*2D-X
M"BAP:6Y#96YT97(@+3$R," M-3 I*0T**&-O;FYE8W0@1#$Z,2!$,#HQ#0HHX
M<&]I;G1S(#(@+3@X("TU," M-S @+34P*2DI#0HH<W1A8VMI;F=/<F1E<B QX
M(# I*0T**&YU;6)E<D9O<FUA=',-"BAR96%L1F]R;6%T('-T86YD87)D*0T*X
M*')E86Q3:6=$:6=I=',@-"D-"BAR96%L4F%D:7A3<&5C(#0I#0HH:6YT96=EX
3<D)A<V4@9&5C:6UA;"DI*2D-"BAR                                X
                                                             X
end
@eof
set `wc -lwc <0al5j7r`
if test $1$2$3 != 563139610054
then
     echo ERROR: wc results of 0al5j7r are $* should be 563 1396 10054
fi

chmod 660 0al5j7r

rm -f /tmp/unpack$$
exit 0

Outcomes