Article 1088 of comp.sources.amiga:
Submitted-by: GLYPH <y82s1@unb.ca
Posting-number: Volume 97, Issue 02
Archive-name: AIFF/part01

[ Executable included.           ...zim ]

Attached is AIFF, a utility which will analyse and print information
about an IFF file.

usage:

You type "AIFF [filename]" at a CLI and it gives you the following info:

filesize
image width
image height
color depth (bitplanes)
masking value
compression mode (none / ILBM / Matthias Meixner's better compression)
transparent color
x aspect
y aspect
page width
page height
# of colors in palette
display mode (ECS modes only)
embedded comment string
whether or not a BODY chunk is found

#!/bin/sh
# This is AIFF, a shell archive (produced by shar 3.49)
# To extract the files from this archive, save it to a file, remove
# everything above the "!/bin/sh" line above, and type "sh file_name".
#
# made 06/11/1997 15:43 UTC by zim@ibx.com
#
# existing files will NOT be overwritten unless -c is specified
#
# This shar contains:
# length  mode       name
# ------ ---------- ------------------------------------------
#   3198 -rw------- aiff.c
#  13756 -rw------- aiff
#
if test -r _shar_seq_.tmp; then
	echo 'Must unpack archives in sequence!'
	echo Please unpack part `cat _shar_seq_.tmp` next
	exit 1
fi
# ============= aiff.c ==============
if test -f 'aiff.c' -a X"$1" != X"-c"; then
	echo 'x - skipping aiff.c (File already exists)'
	rm -f _shar_wnt_.tmp
else
> _shar_wnt_.tmp
echo 'x - extracting aiff.c (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'aiff.c' &&
X
/* Analyse IFF */
/* a simple CLI utility that displays information about an IFF image */
/* recognizes BMHD chunk, CMAP chunk, ANNO chunk, CAMG chunk (ECS modes) */
X
/* ugage: AIFF filename */
X
/* by GLYPH <y82s1@unb.ca> */
/* May 1997 */
X
#include <stdio.h>
X
int getword();
long getlong();
void skipbytes();
long parsechunk();
X
char *inname;
FILE *fin;
X
X
main(argc, argv)
int argc;
char *argv[];
{
X long chid;
X long cbyte;
X long totalsize = (long)12;
X
X if(argc != 2){
X    printf("Syntax: AIFF filename\n\n");
X    exit(1);
X }
X inname = argv[1];
X
X if((fin = fopen(inname,"r")) == NULL){
X    printf("Can't open file for input.\n\n");
X    exit(1);
X }
X
X chid = getlong();
X if(chid != 1179603533)
X {
X    printf("\nNot an IFF file!\n\n");
X    exit(2);
X }
X
X printf("\nFilesize = %.0f\n",(float)(getlong() + (long)8));
X
X chid = getlong();
X if(chid != 1229734477){
X    printf("\nNot an ILBM file!\n\n");
X    exit(2);
X }
X
X while(feof(fin) == 0)
X {
X  totalsize += parsechunk() + (long)8;
X  cbyte = ftell(fin);
X  skipbytes(totalsize-cbyte);
X }
X printf("\n");
X fclose(fin);
X exit(0);
}
X
X
int getword()
{
X return(getc(fin)*256 | (uchar)getc(fin));
}
X
X
long getlong()
{
X long vlu = 0;
X unsigned char tch;
X int t;
X for(t = 0;t < 4;t++)
X {
X  tch = getc(fin);
X  vlu = vlu*256 | tch;
X }
X return(vlu);
}
X
X
void skipbytes(bytes)
long bytes;
{
X int t;
X while((bytes > 0)&&(feof(fin) == 0))
X {
X  getc(fin);
X  bytes--;
X }
}
X
X
long parsechunk()
{
X  int tval;
X  long t;
X  long chid;
X  long chunksize;
X
X  chid = getlong();
X  chunksize = getlong();
X
X  /* BMHD */
X  if(chid == 1112361028)
X  {
X    printf("Image Width %.0f\n",(float)getword());
X    printf("Image Height %.0f\n",(float)getword());
X    skipbytes((long)4);
X    /*
X     printf("X offset %.0f\n",(float)getword());
X     printf("Y offset %.0f\n",(float)getword());
X    */
X    printf("Color Depth (bitplanes) %.0f\n",(float)getc(fin));
X    printf("Masking: %.0f\n",(float)(uchar)getc(fin));
X    tval = getc(fin);
X    printf("Compression mode: ");
X    if (tval == 0) printf("None\n");
X    else if (tval == 1) printf("ILBM\n");
X    else if (tval == 2) printf("Matthias Meixner's better compression\n");
X    else printf("Unknown\n");
X    skipbytes((long)1);
X    printf("Tansparent Color = %.0f\n",(float)getword());
X    printf("X Aspect: %.0f\n",(float)getc(fin));
X    printf("Y Aspect: %.0f\n",(float)getc(fin));
X    printf("Page Width %.0f\n",(float)getword());
X    printf("Page Height %.0f\n",(float)getword());
X  }
X
X  /* CAMG */
X  else if(chid == 1128353095)
X  {
X    skipbytes((long)2);
X    tval = getword();
X    printf("Display Mode: ");
X    if((tval & 32768) == 0) printf("LoRes");
X    else printf("HiRes");
X    if((tval & 128) == 128) printf(" EHB");
X    if((tval & 2048) == 2048) printf(" HAM");
X    if((tval & 4) == 4) printf(" Laced");
X    else printf(" NoLace");
X    printf("\n");
X  }
X
X  /* ANNO */
X  else if(chid == 1095650895)
X  {
X    printf("Comment:\n");
X    for(t = 0;t < chunksize;t++){
X      printf("%c",getc(fin));
X    }
X    printf("\n");
X  }
X
X  /* CMAP */
X  else if(chid == 1129136464) printf("%.0f color palette\n",(float)chunksize/3.0);
X
X  else if(chid == 1112491097)
X  {
X    printf("BODY located.\n\n");
X    exit(0);
X  }
X
X  return(chunksize);
}
X
SHAR_EOF
chmod 0600 aiff.c ||
echo 'restore of aiff.c failed'
Wc_c="`wc -c < 'aiff.c'`"
test 3198 -eq "$Wc_c" ||
	echo 'aiff.c: original size 3198, current size' "$Wc_c"
rm -f _shar_wnt_.tmp
fi
# ============= aiff ==============
if test -f 'aiff' -a X"$1" != X"-c"; then
	echo 'x - skipping aiff (File already exists)'
	rm -f _shar_wnt_.tmp
else
> _shar_wnt_.tmp
echo 'x - extracting aiff (Binary)'
sed 's/^X//' << 'SHAR_EOF' > _shar_tmp_.tmp &&
begin 600 aiff
M```#\P`````````@`````````!\```!T`````P````L````"````=P```3L`
M```@```!FP```'4````&````%````)@````@`````0```$,````*`````0``
M`%T````!````.P````$````!````70````D```$R````30```"\````/```"
MH0````4````+````$````^D```!T(\\````"(\`````.(\@````2(GP`````
M0D`O#BQX``1.KOW8+%\CP`````1*@&<``7Y.N0````!*@&<``7).N0```10B
M?``````O#BQX``1.KO[:+%\CP````"(D0$JJ`*QG/B/\`````````!XO#BQY
M````!$ZN_\HL7R/`````%F<``2HO#BQY````!$ZN_\0L7R/`````&F<``1)@
M``"((_S_____````'D'J`%PO#BQX``1.KOZ`+%]!Z@!<+PXL>``$3J[^C"Q?
M(\`````F)$`@*@`D9P``%"!`(A`O#BQY````!$ZN_X(L7R(Y`````"0\```#
M[B\.+'D````$3J[_XBQ?(\`````6(\`````:9P``F.6(($`D>0```"(E:``(
M`*1A``">('P`````+PA.N0```!Q*N0```!YG```:(CD````:9P``$"\.+'D`
M```$3J[_W"Q?2KD````F9QXO#BQX``1.KO]\+%\B>0```"8O#BQX``1.KOZ&
M+%\D?````"Q9BB)2L_P`````9P``#B\.+'@`!$ZN_F(L7[7\`````&;>(!].
M=2!\````9&``_WP@;P`$+GD````"8`#_;DYQ3OD```````,```/L`````0``
M``$````4````$0````(````"````"`````X```!8````:@```'X```"6````
MJ````,X```$*```!$````1X```$\```!1@```5X```%R```!O@````$````+
M```!R@````$````/````\`````,````6```!-@```$`````T````"````!X`
M``&D```!A````"@```!R````B@```.0```#^```!4@````````/R```#Z@``
M``-D;W,N;&EB<F%R>0````/R```#ZP````L```/R```#ZP````(```/R```#
MZ@```'="3T19(&QO8V%T960N"@H`)2XP9B!C;VQO<B!P86QE='1E"@`*`"5C
M`$-O;6UE;G0Z"@`*`"!.;TQA8V4`($QA8V5D`"!(04T`($5(0@!(:5)E<P!,
M;U)E<P!$:7-P;&%Y($UO9&4Z(`!086=E($AE:6=H="`E+C!F"@!086=E(%=I
M9'1H("4N,&8*`%D@07-P96-T.B`E+C!F"@!8($%S<&5C=#H@)2XP9@H`5&%N
M<W!A<F5N="!#;VQO<B`]("4N,&8*`%5N:VYO=VX*`$UA='1H:6%S($UE:7AN
M97(G<R!B971T97(@8V]M<')E<W-I;VX*`$E,0DT*`$YO;F4*`$-O;7!R97-S
M:6]N(&UO9&4Z(`!-87-K:6YG.B`E+C!F"@!#;VQO<B!$97!T:"`H8FET<&QA
M;F5S*2`E+C!F"@!);6%G92!(96EG:'0@)2XP9@H`26UA9V4@5VED=&@@)2XP
M9@H`"@`*3F]T(&%N($E,0DT@9FEL92$*"@`*1FEL97-I>F4@/2`E+C!F"@`*
M3F]T(&%N($E&1B!F:6QE(0H*`$-A;B=T(&]P96X@9FEL92!F;W(@:6YP=70N
M"@H`<@!3>6YT87@Z($%)1D8@9FEL96YA;64*"@!.<0```_(```/I```!.V``
M`!P@;@`*(!!2D"!`$*X`"1`02(!@```"3EY.=4Y6``!@X&```#PF;@`(2&X`
M$"\N``PO/`````!(;@`(3KD```"TWOP`$#8`2,,@"]"#($!"$#`#8````DS?
M"`A.7DYU3E8``$CG$!!@O&```#PF;@`(+RX`$"\N``PO/`````!(;@`(3KD`
M``"TWOP`$#8`2,,@"]"#($!"$#`#8````DS?"`A.7DYU3E8``$CG$!!@O&``
M`SHF;@`0*&X`%$)$2A-G``,<#!,`)68``OI"14(N__@=?``@__D]?/____I"
M;O_\/7S____^'7P`"O_W2^[_MT)&0D-2BT*`$!,&@``````@0$)`$!`"0``"
M9P``1D)`$!,$0``P,CP`"L/#TD`V`4IN__QG```*/4/__F```")*0V8``!@,
M+@`@__EF```.'7P`,/_Y8*I@```&/4/_^F"B0D`0$V```913BV```F0Z/``!
M8(P=4__X8(8@#%2,($`V$$IN__QG```*/4/__F````8]0__Z8`#_:#U\``'_
M_&``_UX\/``!8`#_5C\\``HO#4I&9P``""`48```!C`42,`O`$ZY```$4M[\
M``I*1F<```P@#%B`*$!@```((`Q4@"A`8```V!U\``+_]V```"@=?``(__=@
M```>/#P``1U\`##_^3U\``;_^CU\``C__AU\`!#_]Q`N__=(@#\`+PU*1F<`
M``@@%&````P@#%2,($!"@#`0+P!.N0```[#>_``*2D9G```((`Q8@"A`#!,`
M>&8```XO#2\-3KD`````4$]@``!8+53_LB`,6(`H0"\-/R[__A`32(`_`"\N
M_[).N0```J#>_``,/7S____^8```*B`,5(P@0!JH``$@#5*`($!"$&````HJ
M5"`,6(`H0$(N__@=?``@__D_+O_^/R[_^A`N__E(@#\`$"[_^$B`/P`_!2\-
M+RX`#"\N``A.N0```.#>_``6V$!@``#<8```W&```-0,0``\;```-`Q```!G
M`/Y@#$``(&<`_F0,0``J9P#^8@Q``"MG`/Y4#$``+6<`_D8,0``N9P#^:F"^
M#$``7FP``!P,0`!%9P#_)@Q``$=G`/\>#$``6&<`_L!@G`Q``&)ME@Q``'AN
MD`1``&)(P.6`('L(!$[0```!X````HX```&D```"8````F````)@```"Z@``
M`:0```+J```"Z@```9P```+J```"Z@```>H```'T```"Z@```NH```*D```"
MZ@```A````+J```"Z@```@I@```6(&X`#"\N``@0$TB`/P!.D%Q/4D12BV``
M_.(P!&````),WSAX3EY.=4Y6_[)(YQX<8`#\OF```"@F;@`(2A-G```8+RX`
M#!`32(`_`$ZY````8%Q/4HM@Y"9?3EY.=4Y6```O"V#23G%@```F2&X`$"\N
M``PO/````&`O+@`(3KD```"TWOP`$&````).7DYU3E8``&#68```)B\N`!`O
M+@`,+SP```!@+RX`"$ZY````M-[\`!!@```"3EY.=4Y6``!@UF```"A(;@`,
M+RX`""\\````8"\Y````!$ZY````M-[\`!!@```"3EY.=4Y6``!@U&```"@O
M+@`,+RX`""\\````8"\Y````!$ZY````M-[\`!!@```"3EY.=4Y6``!@U```
M`^P````?````!0``!$@```1V```$I@``!-8```-H```#;````W````-T```#
M>````WP```.````#A````X@```.,```#D````Y0```.8```#G````Z````.D
M```#J````ZP```.P```#M````[@```.\```#P````$````"(````-@```'X`
M```!````!@```0(````"````"````MP```)6`````@````H```2@```$T```
M``(````8```"-````;X````&````'```!#X```1L```$F@``!,H```06```"
M?`````````/R```#Z@```"`!`0$!`0$!`0$1$1$1$0$!`0$!`0$!`0$!`0$!
M`0$!`1`@("`@("`@("`@("`@("!"0D)"0D)"0D)"("`@("`@($1$1$1$1`0$
M!`0$!`0$!`0$!`0$!`0$!`0$("`@("`@2$A(2$A("`@("`@("`@("`@("`@(
M"`@("`@@("`@`0```_(```/I```!FV```6PM?`````S_]`QN``(`"&<``!PO
M/````<).N0``!(Q83S\\``%.N0````!43R`N``I8@"!`(]``````+SP```'`
M+SD`````3KD```+Z4$\CP`````1*N0````1F```<+SP```&C3KD```2,6$\_
M/``!3KD`````5$].N0```;`M0/_\#*Y&3U)-__QG```<+SP```&/3KD```2,
M6$\_/``"3KD`````5$].N0```;!0@"\`3KD```"P6$\O`"\\```!?4ZY```$
MC%!/3KD```&P+4#__`RN24Q"3?_\9P``'"\\```!:$ZY```$C%A//SP``DZY
M`````%1/('D````$,"@`"`)`$`!*0&8``#1.N0```D!0@-&N__0O.0````1.
MN0````!83RU`__@@+O_TD*[_^"\`3KD```("6$]@NB\\```!9DZY```$C%A/
M+SD````$3KD`````6$]"9TZY`````%1/3EY.=4Y6__1@`/Z08```,B\Y````
M!$ZY```!A%A/X4`_`"\Y````!$ZY```!A%A/0D$2`()?,`%@```"3EY.=4Y6
M``!@RF```$I"KO_\0F[_^`QN``3_^&P``"PO.0````1.N0```8183QU`__L@
M+O_\X8!"@1(N__N`@2U`__Q2;O_X8,P@+O_\8````DY>3G5.5O_X8+)@```V
M2JX`"&\``"H@>0````0P*``(`D`0`$I`9@``%B\Y````!$ZY```!A%A/4ZX`
M"&#03EY.=4Y6__Y@QF```ZI.NO]J+4#_]DZZ_V(M0/_R#*Y"34A$__9F``'H
M3KK_%$C`+P!.N0```+!83R\`+SP```%43KD```2,4$].NO[T2,`O`$ZY````
ML%A/+P`O/````4%.N0``!(Q03R\\````!$ZZ_UI83R\Y````!$ZY```!A%A/
M2,`O`$ZY````L%A/+P`O/````2-.N0``!(Q03R\Y````!$ZY```!A%A/0H$2
M`"\!3KD```"P6$\O`"\\```!%$ZY```$C%!/+SD````$3KD```&$6$\]0/_^
M+SP```$!3KD```2,6$]*;O_^9@``%"\\````^TZY```$C%A/8```2`QN``'_
M_F8``!0O/````/5.N0``!(Q83V```"P,;@`"__YF```4+SP```#.3KD```2,
M6$]@```0+SP```#%3KD```2,6$\O/`````%.NOYX6$].NOWF2,`O`$ZY````
ML%A/+P`O/````*Q.N0``!(Q03R\Y````!$ZY```!A%A/2,`O`$ZY````L%A/
M+P`O/````)Q.N0``!(Q03R\Y````!$ZY```!A%A/2,`O`$ZY````L%A/+P`O
M/````(Q.N0``!(Q03TZZ_7)(P"\`3KD```"P6$\O`"\\````>TZY```$C%!/
M3KK]4DC`+P!.N0```+!83R\`+SP```!I3KD```2,4$]@``&<#*Y#04U'__9F
M``#0+SP````"3KK]J%A/3KK]%CU`__XO/````%I.N0``!(Q83S`N__X"0(``
M2D!F```4+SP```!43KD```2,6$]@```0+SP```!.3KD```2,6$\P+O_^`D``
M@`Q``(!F```0+SP```!)3KD```2,6$\P+O_^`D`(``Q`"`!F```0+SP```!$
M3KD```2,6$\P+O_^`D``!`Q```1F```4+SP````]3KD```2,6$]@```0+SP`
M```U3KD```2,6$\O/````#-.N0``!(Q83V```,(,KD%.3D__]F8``%8O/```
M`"E.N0``!(Q83T*N__H@+O_ZL*[_\FP``"8O.0````1.N0```8183S\`+SP`
M```F3KD```2,7$]2KO_Z8-`O/````"1.N0``!(Q83V```&(,KD--05#_]F8`
M`#(O/,```$(O+O_R3KD```"P6$\O`$ZY````<%!/+P`O/````!!.N0``!(Q0
M3V```"8,KD)/1%G_]F8``!HO/`````!.N0``!(Q83T)G3KD`````5$\@+O_R
M8````DY>3G5.5O_R8`#\4F```#0P+@`(2,`&@``````@0$)`$!`"0``(9P``
M#C`N``@*0``@8```!C`N``A@```"3EY.=4Y6``!@R&```#0P+@`(2,`&@```
M```@0$)`$!`"0``$9P``#C`N``@*0``@8```!C`N``A@```"3EY.=4Y6``!@
MR````^P````2`````P```#H```!&````5````%H```$````!(````50```%\
M```!C@```<@```(0```")````JX```+8```#!````[````/:```%3````"(`
M```$````&````$````!D````E````,(```#F```!1@```G0```*4```"R@``
M`O8```,6```#+````T@```-D```#=@```Z(```/,```#]@``!!8```0V```$
M:```!(0```26```$M```!-(```3P```%`@``!1````4N```%7```!7````6L
M```%R@```"$````%````'@```&H```":````R````.P```%,```">@```IH`
M``+0```"_````QP```,R```#3@```VH```-\```#J````](```/\```$'```
M!#P```1N```$B@``!)P```2Z```$V```!/8```4(```%%@``!30```5B```%
M=@``!;(```70`````@````8```8````&/`````4````'````?@```*X```#0
M```!%````3P````&````#@```"H```!V````I@```/@```%D```%V@````(`
M```8```!6@```$P````,````&0``!:(```"X```":@```HH```+````"[```
M`Y@```/"```#[```!`P```0L```%F`````H````<```!@@```90```'.```"
M*@```K0```+>```#"@```[8```/@```%4@````$````?```!)@````````/R
M```#Z0```'5@```^)FX`""A+2A-G```D$!-(@$C`!H``````($!"0!`0`D``
M!&<```8*$P`@4HM@V"`,8````DS?&`!.7DYU3E8``$CG`!A@NDYQ8```)B9N
M``A"0R`+4HL@0$H09P``!E)#8/`P`V````),WP@(3EY.=4Y6``!(YQ`08-).
M<6```#XF;@`(*&X`##8N`!`J2S`#4T-*0&<``!@@#%*,($`@"U*+(D`2D$H1
M9P``!&#@(`U@```"3-\X"$Y>3G5.5@``2.<0'&"Z3G$B;P`$(&\`"$*`$MAF
M_"`O``1.=6```.0F;@`(*&X`#"IN`!`6+@`7."X`&D)%+PU.N0```$Q83SP`
M#!4`+68```X@#5*-($`6$&````I*`V<```121@QN__\`'&<```Z\;@`<;P``
M!CPN`!RX1FP```0X!CH$F$9*1&8```A*1F<``&I*;@`49@``+$I$9P``)DI&
M9P``%DH#9P``$`PN`#``&68```9@```8'BX`&5-$8```*DI&9P``'DH#9P``
M"AX#0@-@```*(`U2C2!`'A!31F````@>+@`94T0O"Q`'2(`_`$Z47$]@C#`%
M8````DS?./A.7DYU3E8``$CG'QQ@`/\43G$```/L`````0````8````8````
M`0````@```#^`````````_(```/J````!@``````````````````````````
M`````````^P````!````"0```!`````````#\@```^L````4```#\@```^D`
M``"88``"4#\\``,_/``23KD```"*6$\F0+?\`````&8```X_/`/J3KD`````
M5$\G>0```!8`"C=\!`$`""`+U_P````2(\``````)WD````:``HW?`0"``@@
M"]?\````$B/`````!"=Y````&@`*-WP$`@`((\L````(#+D````!````#F\`
M``Q*N0```!)F```8+SP````0/SP``4ZY`````%Q/8``!G"`Y````#E*`/P!.
MN0```'Y43RU`__@_.0```!`O.0```!(O+O_X3KD```"`WOP`"B`N__C0N0``
M``X@0$(0-CP``3H\``%"1$C$N+D````.;```L$C$("[_^-"$($`>$`P'`")F
M``!,2,0@+O_XT(0@0$(04D1(Q"`N__C0A"!`#!``(F<``!9(Q"`N__C0A"!`
M2A!G```&4D1@VDC$("[_^-"$($!"$%)#.CP``6```$P,!P`@9P``(`P'``EG
M```82@=G```2#`<`"F<```H,!P`-9@``'$I%9@``!CH\``%(Q"`N__C0A"!`
M0A!@```,2D5G```&0D520U)$8`#_2#\\``0P`U)`/P!.N0```(I83RU`__PZ
M/``!/#P``2!N__P@O`````!"1$C$N+D````.;```2$C$("[_^-"$($!*$&8`
M`!!*168```8Z/``!8```)DI%9P``($)%2,0@+O_XT(0@0#`&4D;E0$C`T*[_
M_")`1=`BBE)$8*XP!N5`2,#0KO_\($!"D"\N__P_`TZY`````%Q/0F=.N0``
M``!43TS?"/A.7DYU3E;_]DCG'Q!@`/VH3G$```/L````"P````(```"(````
MQ````'X```"H````O@```-P```#R```!U@```$H```!F````+@````(````'
M````G````CH````!````"````,X````"````"0```)(```',`````P````H`
M``!$````8````'0````!````#@```D0````#````%@```+(````.```!M```
M``$````<````)@````````/R```#ZP```"````/R```#Z@````$``$YQ```#
M\@```^D```!#8```N#`Y`````%-`-@!*0VT``!@P`^5`2,`&@``````@0"!0
M3I!30V#D-CP``PQ#`!1L``!*,`/E0$C`!H``````($!*D&<``#(P`^5`2,`&
M@``````@0"!02J@`"F<``!HP`^5`2,`&@``````@0"\03KD`````6$]20V"P
M('D````((GD````$("@`"K"I``IG```0+SD````(3KD`````6$\P+@`(2,`O
M`$ZY```!N%A/)A].7DYU3E8``"\#8`#_0F```$`,>0`@`````&P``"HP.0``
M``#E0$C`!H``````($`@K@`(4GD`````,#S__V````Q@```(0D!@```"3EY.
M=4Y6``!@O````^P````!`````````*X````&````"@```#X```!2````:@``
M`(````"&````F`````(````,````'````.`````$````#0````8```#,````
MU@```.P````"````&````'0```">`````````_(```/J````"@````1N97=C
M;VXZ,C`O,C`O-#`P+S$P,"].;W)T:$,@4')O9W)A;0````/L`````0````\`
M`````````````_(```/K`````0```_(```/I````72`O``1J```$1(`B+P`(
M:@``"D2!"B\`@``$80``IDHO``1J```$1(!.=2`O``1J```$1(`B+P`(:@``
M"D2!"B\`@``$80``8$HO``1J```$1(!.=2`O``1J```$1(`B+P`(:@``!$2!
M80``6"`!2B\`!&H```1$@$YU("\`!"(O``AA```^3G4@+P`$(B\`"&$``!1.
M=2`O``0B+P`(80``(B`!3G4D0S0!Q,`F`4A#QL!(0,#!T(-(0$)`T((F"DYU
M2H%F```0@/P``"`\@````"(`3G4D0["!8@``%F<```HB`$*`)@I.=7`!0H$F
M"DYU#($````!9@``"$*!)@I.=0R```#__V(``!*`P4A`0H$R`$)`2$`F"DYU
M#($``/__8@``)"0`0D)(0H3!0H,V`DA#-`"$P2("0D%(04*`,`+0@R8*3G5T
M`4*#LH!G```,8@``"-2"TH%J\+*`8@``!H:"D('BB>**9O`B`"`#)@I.=0``
M`_(```/K`````0```_(```/I````.V```.(@;@`(2J@`!&<``%@@;@`(,"@`
M"`)``(!G``!((&X`"#`02,`O`"!N``@O*``$(&X`""\H``I.N0```)#>_``,
M(&X`"`)H_W\`""!N``A":``"(&X`"")N``@RJ``"8```?"!N``A*J``$9P``
M<"!N``@B;@`(,!"P:0`"9P``7B!N``@P*``(`D"``&<```H@;@`(4V@``B!N
M``@":'__``A"IR!N``@B;@`(,"@``I!12,`O`"!N``@O*``*3KD````4WOP`
M#"!N``A":``"(&X`"")N``@RJ``"3EY.=4Y6``!@`/\:```#[`````(````:
M````Q````#P````````#\@```^L````!```#\@```^L````!```#\@```^D`
M``!=<`@B/``!``$O#BQX``1.KO\Z+%\CP`````!.=2\((GD`````(]$`````
M("D`!%"`+PXL>``$3J[_+BQ?2KD`````9MH@7TYU+P)T`<2`T((O`%"`+PXL
M>``$3J[_.BQ?)!]*@&<``!0@0")Y`````""1(H`A0@`$4(`D'TYU,"\`!$C`
M<@%AP$YU,"\`!$C`,B\`!DC!+P`O`4ZY````*E!/(CP``0`!89Y.=3`O``1(
MP'("89).=3`O``1(P#(O``9(P2(\``$``F$`_WQ.=2`O``11@"!Y`````$J0
M9P``#B(0LH!G```2(%!@[B\\````!4ZY`````")`()$@*0`$4(`O#BQX``1.
MKO\N+%].=4YQ(GP`````0H`CP````"@O#BQX``1.KOW8+%\CP````"1*@&<`
M``1.=2\\```#[4ZY`````$YU2KD````H9@``(")\````$$)`+PXL>``$3J[]
MV"Q?(\`````H2H!GRDYU```#[`````$````.````]@````$````1````G```
M``8````5````%@```"`````F````/@```&P```#8`````@```!<```$6```!
M5@````$````<```!1`````0````>```!,````1X```%,```!:@````````/R
M```#Z@````EM871H9F9P+FQI8G)A<GD`;6%T:'1R86YS+FQI8G)A<GD`3G$`
M``/R```#Z0```3)@``#:(&X`"$I09P``#B\N``A.N0````!83T)N__X,;@`4
M__YL```B,"[__N5`2,`&@``````@0"`0L*X`"&<```A2;O_^8-8,;@`4__YF
M```2/SP``TZY`````%1/8```>#`N__[E0$C`!H``````($`@4"\H``I.N0``
M``!83R!N``A*J``$9P``(B!N``@P*``(`D`(`&8``!(@;@`(+R@`!$ZY````
MT%A/,"[__N5`2,`&@``````@0"\03KD```#06$\P+O_^Y4!(P`:``````"!`
M0I!.7DYU3E;__F``_R)@``((-BX`""9N``X,$P!W9P``"@P3`%=F```0.#P"
M`BH\```#[F```%0,$P!R9P``"@P3`%)F```0.#P!`2H\```#[6```#8,$P!A
M9P``"@P3`$%F```0.#P"0BH\```#[6```!@_/``!3KD`````5$\X/`0!*CP`
M``/M4HL,$P`K9P``$@P3`&)G```*#!,`0F8``!(,$P`K9@``!@!$``-2BV#8
M,`0"0`0`2D!F``!</SP!`$ZY````?E1/,@/E04C!!H$`````($$@4"%```0P
M`^5`2,`&@``````@0"!02J@`!&8```X_/`/J3KD`````5$\P`^5`2,`&@```
M```@0"!0,7P!```.,`/E0$C`!H``````($`@4#%$``@O!2\N``I.N0```&Q0
M3S(#Y4%(P0:!`````"!!(%`A0``*,`/E0$C`!H``````($`@4$JH``IF```R
M,`0"0`!`9P``*"\\```#[B\N``I.N0```&Q03S(#Y4%(P0:!`````"!!(%`A
M0``*,`/E0$C`!H``````($`@4$JH``IF``!B,`/E0$C`!H``````($`@4$JH
M``1G```>,`/E0$C`!H``````($`@4"\H``1.N0```-!83S`#Y4!(P`:`````
M`"!`+Q!.N0```-!83S`#Y4!(P`:``````"!`0I!@```"3-\(.$Y>3G5.5@``
M2.<<$&``_?!@``"H)FX`#$)##$,`%&P``!HP`^5`2,`&@``````@0$J09P``
M!E)#8.`,0P`4;0``#C\\`^E.N0````!43S\\``$_/``23KD```"*6$\R`^5!
M2,$&@0`````@02"`,`/E0$C`!H``````($!*D&8```X_/`/J3KD`````5$\O
M"R\N``@_`TZZ_6+>_``*,`/E0$C`!H``````($`@$&````),WP@(3EY.=4Y6
M``!(YQ`08`#_4&```)0F+@`()FX`##@N`!`H2T)%2,0O!"\#3KD```"64$\\
M``Q&``EO```>,`8&0`!!!$``"C(%4D5(P4'N_][1P1"`8```%C`&!D``,#(%
M4D5(P4'N_][1P1"`2,0O!"\#3KD```!Z4$\F`$J#8J1![O_>4T5(Q='%(`Q2
MC")`$I!*16[J0A0@"V````),WQAX3EY.=4Y6_]Y(YQX88`#_9&```$`F+@`(
M)FX`#"A+2H-L```2(`Q2C"!`$+P`+2`#1(`F`#\N`!`O#"\#3KK_,-[\``H@
M"V````),WQ@(3EY.=4Y6``!(YQ`88+A@```B/RX`#B\N``HP+@`(2,`O`$ZZ
M_Y[>_``*8````DY>3G5.5@``8-H```/L````%`````H```&J```!O@```>(`
M``'X```"&@```BX```)B```"=@```HX```*F```"P@```MH```,4```#4```
M`V````.0````,@```&P```"V````T`````(````1```$%````\P````!````
M$P```!0````&````%@```T(```*T```"S````9P```"F````P`````,````:
M```"#````E0```!Z````!0```!P```%0```!U````S(```-R````6```````
M``/R```#Z0```$T@+P`$+PXL>0```"1.KO_*+%].=2(O``0@+P`(+PXL>0``
M`"1.KO^^+%].=2`O``0O#BQY````)$ZN_Z`L7TYU(B\`!"`O``@O#BQY````
M)$ZN_]8L7TYU(B\`!"`O``@O#BQY````)$ZN_ZPL7TYU("\`!"(O``@O#BQY
M````)$ZN_ZPL7TYU("\`!"\.+'D````D3J[_XBQ?3G4@+P`$+PXL>0```"1.
MKO^F+%].=2`O``0O#BQY````)$ZN_]PL7TYU(B\`!"`O``@O#BQY````)$ZN
M_[(L7TYU("\`!"\.+'D````D3J[_Q"Q?3G4B+P`$("\`""\.+'D````D3J[_
MN"Q?3G4@+P`$(B\`""\.+'D````D3J[_N"Q?3G4@+P`$+PXL>0```"1.KO_0
M+%].=0```^P````.````'@````@````@````-````$P```!D````?````)``
M``"D````N````-````#D````_````10```$H`````````_(```/I````+R(O
M``0O#BQY````!$ZN_]PL7TYU3E8``$CG,``B+@`()"X`#"8N`!`O#BQY````
M!$ZN_[XL7TS?``Q.7DYU3G%.5@``2.<P`"(N``@D+@`,)BX`$"\.+'D````$
M3J[_UBQ?3-\`#$Y>3G5.<4Y6```O`B(N``@D+@`,+PXL>0````1.KO_B+%\D
M'TY>3G5.<4Y6``!(YS``(BX`""0N``PF+@`0+PXL>0````1.KO_0+%],WP`,
M3EY.=4YQ```#[`````4````>````J````'X```!8````+`````@````````#
M\@```^L````/```#\@```^D```*A8```5B\Y````""\\`````$ZY```#_%!/
M/SP`"DAN__<_+@`(3KD```2>4$\O.0````A(;O_W3KD```/\4$\,;@/H``AM
M```./SP`%$ZY`````%1/3EY.=4Y6__9@IDYQ8``!&B!N``HP*``(`D``P`Q`
M`$!F```<+SP````!0J<@;@`*+R@`"DZY````%-[\``P@;@`*`&@`@``((&X`
M"C`H``@"0`0`9P``+!/N``D`````+SP````!+SP`````(&X`"B\H``I.N0``
M`)#>_``,8```I"!N``HP*``(`D`#`&<``)0@;@`*(FX`"C`12,#0J``$($`0
MK@`)(&X`"E)0(&X`"B)N``HP$+!I``YG```F(&X`"C`H``@"0`(`9P``5@PN
M``H`"6<```P,+@`-``EF``!"(&X`"C`02,`O`"!N``HO*``$(&X`"B\H``I.
MN0```)#>_``,/4#__@QN_____F8```HS_``&`````"!N``I"4$Y>3G5.5O_^
M8`#^XF```-@F;@`(,"L`"`)`@`!G```*%BL`$&```*8P*P`(`D`$`&<``#PO
M/`````$O/``````O*P`*3KD```!`WOP`##@`2D1F```0`&L0```(%CS__V``
M``@6.0````!@``!@,"L``K!3;```&#`K``)2:P`"2,#0JP`$($`6$&```$`P
M*P`.2,`O`"\K``0O*P`*3KD```!`WOP`##@`2D1F```0`&L0```(%CS__V``
M`!`W?``!``(@:P`$%A`VA`)K?_\`"!=#`!!(@S`#8````DS?"!A.7DYU3E8`
M`$CG&!!@`/\@8```+"!N``HP*``(`D"``&<```X_/``"3KD`````5$\@;@`*
M`&B````(3EY.=4Y6``!@T$YQ8```D"/N`!``````0GD````$,"X`#&```%(S
M_``!````!#\N``XO+@`(3KD```,Z7$]@``!:/RX`#B\N``A.N0``!$A<3V``
M`$8S_``!````!#\N``XO+@`(3KD```6@7$]@```J8```)@Q``$5GJ@Q``$9G
MP`Q``$=GS@Q``&5GH`Q``&9GK@Q``&=GQ$Y>3G5.5@``8`#_;&```0)*;@`,
M;```##U\``?__F````PP+@`,4D`]0/_^0F<_+O_^+RX`"$ZY```&+E!/)GD`
M````2GD````X9P``#"`+4HL@0!"\`"T@"U*+($`0N0````8@"U*+($`0O``N
M#&X``?_^;P``$B\\````!R\+3KD```#,4$\O"TZY````3%A/2,#7P$IY````
M!&<```H0/`!%8```!A`\`&4B"U*+($$0@%-Y````.DIY````.FP``!H@"U*+
M($`0O``M,#D````Z1$`SP````#H,>0`*````.FP```P@"U*+($`0O``P/SD`
M```Z+SP````0+PM.N0```"3>_``*)E].7DYU3E;__B\+8`#^^&```4Q*;@`,
M;```##U\``;__F````@];@`,__Y"9S`N__Y$0#\`+RX`"$ZY```&+E!/)GD`
M````2GD````X9P``#"`+4HL@0!"\`"T,>0`!````.FP``!`@"U*+($`0O``P
M8```)#\Y````.B\\````!B\+3KD```"`WOP`"C`Y````.DC`U\!*;@`,9@``
M"DIN__YG```,(`M2BR!`$+P`+DIN__YF```(0A-@``":2GD````Z;```=#`Y
M````.D1`/4#__#`N__RP;O_^;P``"#UN__[__$)N__HP+O_ZL&[__&P``!(@
M"U*+($`0O``P4F[_^F#D,"[__)%N__Y*;O_^;P``(#\N__XO/`````8O"TZY
M````@-[\``HP+O_^2,#7P$(38```'C`Y````.DC`!H`````&($!(4"\+3KD`
M``#,4$\F7TY>3G5.5O_Z+PM@`/ZN8```A$IN``QL```(/7P`!@`,#&X``0`,
M;```"#U\``$`##\\``$_/``!+RX`"$ZY```&+E!/#'G__0```#IM```0,#D`
M```ZL&X`#&\``!@P+@`,4T`_`"\N``A.NOT\7$]@```>,"X`#)!Y````.CU`
M__X_+O_^+RX`"$ZZ_BI<3TY>3G5.5O_^8`#_>&```@XO/``````O+@`(3KD`
M``!`4$\,0```7<$"00`!9P``'#U\``'__B\N``A.N0```-Q83RU```A@```&
M0F[__DAN__9(;O_P2&[_^"\N``A.N0``",C>_``0+R[_^"\\````#"\\````
M!DZY````)-[\``PO/`````9.N0```$Q83SU`__PP+O_\T&[_]CU`__9*;@`,
M;@``%#`N``Q$0#U```PP+O_VT6X`#`QN``$`#&P```P]?``!``Q@```2#&X`
M*``,;P``"#U\`"@`##`N``Q20#(N__RR0&P``0P,;@`H__QL``$"+SP`````
M+R[_\$ZY````0%!/#$```%?!`D$``6<``#XP+@`,4D`R+O_\LD!L```:,"[_
M_%)N__Q(P`:`````!B!`$+P`,&#8,"[__$C`!H`````&($!"$&```*8M;O_P
M``A(;O_T2&[_\$AN__@O+@`(3KD```C(WOP`$"\N__@O/`````A(;O_<3KD`
M```DWOP`#$AN_]Q.N0```$Q83]!N__0]0/_T,"[_]%)N__1*0&<``!HP+O_\
M4F[__$C`!H`````&($`0O``P8-I(;O_<,"[__$C`!H`````&($!(4$ZY````
MS%!/+SP````&3KD```!,6$\]0/_\8`#^Z#\N``X_+@`,3KD```A&6$\S[O_^
M````.#/N__8````Z3EY.=4Y6_]Q@`/WN8```>C`N``A(P`:`````!B!`0]`M
M2?_\(&[__`P0`#5M``!&2FX`"F8``#Y3KO_\#*X````&__QE```F(&[__%(0
M(&[__`P0`#EL```&8```&"!N__P0O``P4Z[__&#0$_P`,0````8P+@`(2,`&
M@`````8@0$(03EY.=4Y6__Q@@F```-(O+@`(3KD```FD6$\]0/_^0F[__`QN
M`!___F\``"XO/(,2;C<O+@`(3KD```#$4$\M0``(5F[__"\N``A.N0``":18
M3SU`__Y@R@QN``K__FP``$PO//H``$HO+@`(3KD```#$4$\M0``(5V[__`QN
M_^C__&P``!9"KO_X0F[__"U\`````/_T8```*B\N``A.N0``":183SU`__Y@
MK$AN__1(;O_X+RX`"$ZY```)W-[\``P@;@`,(*[_^"!N`!`@KO_T(&X`%#"N
M__Q.7DYU3E;_]&``_RI@```P0>X`""U(__P@+O_\5H`@0!`02(`"0`!_/4#_
M^@1N`$#_^C`N__I@```"3EY.=4Y6__I@S&```)Y![@`(+5#__"`N__P"@```
M`(`]0/_T`J[___\`__PO+@`(3KK_H%A//4#_]@QN``'_]FP``!!"KO_\+6X`
M"/_X8```1C`\`""0;O_V2,`B+O_\X*DM0?_\2F[_]&<```P@+O_\1(`M0/_\
M+R[__$ZY````L%A/+P`O+@`(3KD```$(4$\M0/_X(&X`#""N__P@;@`0(*[_
M^$Y>3G5.5O_T8`#_7@```^P````%````!0``!#````:<```'I@```!(````X
M````"0````@```2^```%7@```[H```:L```'M```"`P```.P```%B@``!_X`
M```"````"@````8````N`````0````X```!.`````0```!````%N`````@``
M`!(```"P````O`````(````4```!M````=X````!````&````"8````'````
M&0``"EX```I0```(]@``"2P```9>```&/@``!R8````%````&@```;X```(8
M````R@```50```"*````*@```!L```*H```"K@```KX```+N```#;@```W0`
M``..```#J````\8```/D```#Z@```_X```0&```$#@``!"(```1\```$@@``
M!)@```2P```$M@``!,@```3Z```%!```!58```5V```%?@``!=H```7D```&
M#```!I8```:F```'5@``!VH```?<```']```"`8```@N```(-@``"%(```AX
M```(J@``"+8````.````'````LP```+@```"_````V8```1T```%T```!H(`
M``>.```()```"-(```D*```)7@``"7@```*$````!````!T```0H```&D```
M!YP````,`````````_(```/J````!45R<F]R.B``)6QD`"5L9``E9``````#
M\@```^L````+```#\@```^D````08```-B\N``A.N0````!83T*G0J<@;@`(
M+R@`"DZY````%-[\``Q(P"U`__P@+O_\8````DY>3G5.5O_\8,9.<0```^P`
?```!````$P````H````!````&@```!X````````#\G5.
`
end
SHAR_EOF
echo 'uudecoding file aiff' &&
uudecode < _shar_tmp_.tmp && rm -f _shar_tmp_.tmp &&
chmod 0600 aiff ||
echo 'restore of aiff failed'
Wc_c="`wc -c < 'aiff'`"
test 13756 -eq "$Wc_c" ||
	echo 'aiff: original size 13756, current size' "$Wc_c"
rm -f _shar_wnt_.tmp
fi
exit 0
-- 
Bill Zimmer - zim@ibx.com


