[comp.sources.amiga] v91i086: BackDrop 1.2 - force Workbench 1.3 to run in a normal window, Part01/02

amiga-request@ab20.larc.nasa.gov (Amiga Sources/Binaries Moderator) (04/17/91)

Submitted-by: "John Davis, chem dept, Uni of Canty, NZ" <CHEM194@cantva.canterbury.ac.nz>
Posting-number: Volume 91, Issue 086
Archive-name: utilities/backdrop-1.2/part01

[ includes uuencoded executables  ...tad ]

BackDrop12 and Wb102

This pair of programs allow you to force Workbench 1.3 to run in
a normal window (as opposed to the backdrop window it usually uses),
and then put up a patterned backdrop window behind it (and all other
windows), similar to the 'desktop pattern' on the Mac and Windows/3.

Having patterned backdrops (as opposed to the blank screen normally 
used) not only looks nicer, but it can make it easier to deal with
lots of windows (gives them something to contrast against).

wb102 is a minimal hack in assembler to force workbench into a 
window - source for Hisoft DevPac v2 assembler is included.
 
backdrop12 allows you to setup a backdrop pattern window, features are
   - user specifiable fill pattern and colour
   - ability to change patterns on the fly
   - support for NTSC/PAL/overscan etc
modula-2 source (for TDI 3.01) is included.

#!/bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of archive 1 (of 2)."
# Contents:  backdrop.doc backdrop.mod backdrop.uu block.pattern
#   hatch.pattern startup-sequence.example wb102.doc wb102.s wb102.uu
#   wmove.uu
# Wrapped by tadguy@ab20 on Tue Apr 16 15:12:42 1991
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'backdrop.doc' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'backdrop.doc'\"
else
echo shar: Extracting \"'backdrop.doc'\" \(2817 characters\)
sed "s/^X//" >'backdrop.doc' <<'END_OF_FILE'
XBackDrop v1.2
X-------------
XBy J Davis 91/04/14
X
X
XWhat's it do?
X-------------
X
XHave  you  ever  wished  you could have patterned backdrops behind all the
Xwindows on workbench (like the Mac or Windows3)?  Well this program is the
Xanswer,  it  lets  you  create  a  backdrop window with colours and a fill
Xpattern of your own chosing.
X
XWhat do you need?
X-----------------
X
XTo be able to actually see our backdrop it's necessary to get workbench to
Xload  into  a  normal (sizable, draggable) window.  Under KS1.3, workbench
Xusually  opens  as  a Backdrop, borderless window, which would obscure our
Xbackdrop.
X 
XTo  get  around this you use WB (a separate utility by myself, included in
Xthis  archive).   You  may  also  wish to use the provided WMove and WSize
Xutilities  in conjunction in your startup-sequence to automatically shrink
Xdown the workbench window (see included example startup-sequence)
X
XUsage
X-----
Xsyntax:
X   backdrop [fg bg] [patternfile]
X            
XIf  you  run  backdrop  with  no  parameters, it will install the backdrop
Xwindow using colours 0 and 2, and the default 'checkerboard' pattern
X 
XYou  may  optionally  supply either the two colours to use ( these colours
Xare in the range 0 to 3 )
X
X     e.g. backdrop 1 3
X
Xor the name of a file containing a custom fill pattern
X
X     e.g. backdrop s:hatch.pattern
X
Xor you may combine both options
X
X     e.g. backdrop 1 0 s:block.pattern
X
Xtyping 'backdrop ?' will give you a brief summary of the command syntax.
X 
XThe format of the pattern file is 16 words, represented in binary with one
Xword per line
X
X   e.g. 1111111111111111
X        0000000010000000 
X        0000000010000000
X        0000000010000000
X        1111111111111111
X        1000000000000000
X        1000000000000000
X        1000000000000000
X        1111111111111111
X        0000000010000000
X        0000000010000000
X        0000000010000000
X        1111111111111111
X        1000000000000000
X        1000000000000000
X        1000000000000000
X(see included example pattern files)
X
XOnce you have installed backdrop, you may modify the options on the fly by
Xre-running  backdrop  (this  won't open a new backdrop window, just update
Xthe existing one).
X
XImplementation Details
X----------------------
X
Xthis program simply opens it's own backdrop/borderless window on workbench
Xto   hold  the  backdrop  pattern.   Memory  usage  is  about  21k  for  a
Xnon-interlaced  PAL  screen,  and  42k for an interlaced display (due to a
Xsmartrefresh  window being used to minimise processor overhead and refresh
Xtimes).
X
XScreen size is detected on the fly, so it should work with over-scan etc.
X
XIf you have any problems with the program , I can be contacted at the
Xfollowing addresses :
X
Xinternet  : chem194@canterbury.ac.nz
X 
Xbbs email : AmigaINFO BBS, Christchurch NZ
X            (+64) (03) 3371-531
X
END_OF_FILE
if test 2817 -ne `wc -c <'backdrop.doc'`; then
    echo shar: \"'backdrop.doc'\" unpacked with wrong size!
fi
# end of 'backdrop.doc'
fi
if test -f 'backdrop.mod' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'backdrop.mod'\"
else
echo shar: Extracting \"'backdrop.mod'\" \(11615 characters\)
sed "s/^X//" >'backdrop.mod' <<'END_OF_FILE'
XMODULE backdrop;
X
X(*
X
X   simple program to put up a patterned backdrop window on workbench, 
X   for use with wb1.02 (wb1.02 needed to get wb1.3 into own window)
X   
X   v1.0 - initial version , hard-coded for PAL screen size, quick and dirty
X   v1.1 - now picks up screen size on the fly (works with overscan,NTSC etc)
X          can change colours on the fly (finds old window and refreshes)
X   v1.2 - user definable fill patterns added
X   
X*)
X
XIMPORT IntuitionBase;
XIMPORT Intuition;
XFROM Memory           IMPORT  MemReqSet,MemPublic,AllocMem;
XFROM Windows          IMPORT  OpenWindow;          
XFROM Libraries        IMPORT  OpenLibrary,CloseLibrary;
XFROM SYSTEM           IMPORT  NULL,WORD,ADDRESS,ADR,BYTE;
XFROM InOut            IMPORT  WriteString,WriteLn,WriteCard,OpenInputFile,Done,CloseInput,ReadString;
XFROM GraphicsLibrary  IMPORT  GraphicsBase,GraphicsName,DrawingModeSet,DrawingModes;
XFROM Pens             IMPORT  RectFill,SetAPen,SetBPen,SetDrMd;
XFROM PenUtils         IMPORT  SetAfPat,SetDrPt;
XFROM CommandLine      IMPORT  CLStrings,GetCL;
XFROM Conversions      IMPORT  ConvertFromString;
XFROM Strings          IMPORT  Compare,CompareResults;
X
XCONST
X
Xscreenname  = "Workbench Screen";
Xwindowname  = "BackDrop";
X
X(* turn this on for verbose debugging info *)
Xdebug       = FALSE;
X
XTYPE
X
Xstring      = ARRAY [0..80] OF CHAR;
Xstrptr      = POINTER TO string;
X
XVAR
X
Xnw          : Intuition.NewWindow;
Xwd          : Intuition.WindowPtr;
Xpat         : ARRAY [0..15] OF WORD;
X
Xscreenptr   : Intuition.ScreenPtr;
X
Xfound       : BOOLEAN;
X
Xwidth       : CARDINAL;
Xheight      : CARDINAL;
X
Xargc        : CARDINAL;
Xargv        : ARRAY [0..2] OF CLStrings;
X
Xpatname     : CLStrings;
Xusepattern  : BOOLEAN;
X
Xibaseptr    : POINTER TO IntuitionBase.IntuitionBase;
X
Xfgcol,bgcol : CARDINAL;
Xt           : LONGCARD;
Xdone        : BOOLEAN;
X
Xtitleptr    : strptr;
X
X(* -------------------------- usage ----------------------- *)
X
XPROCEDURE usage;
XBEGIN
XWriteString("Backdrop v1.2 by J Davis 04/91");
XWriteLn;
XWriteString("Usage is : backdrop [fg bg] [pat]");
XWriteLn;
XWriteString("      fg and bg specify the colours to use for the pattern");
XWriteLn;
XWriteString("      if omitted 0 and 2 are used");
XWriteLn;
XWriteLn;
XWriteString("      pat is the name of the file containing the backdrop pattern");
XWriteLn;
XWriteString("      if omitted a single pixel checkerboard is used");
XWriteLn;
XWriteLn;
XEND usage;
X
X(* ------------------------- strcmp ---------------------- *)
X
XPROCEDURE strcmp(sp1 : strptr; s2 : ARRAY OF CHAR):BOOLEAN;
XBEGIN
XIF debug THEN
X  WriteString("checking : ");
X  WriteString(sp1^);
X  WriteString(" against : ");
X  WriteString(s2);
X  WriteString(" ");
XEND;
X  IF Compare(sp1^,s2)=Equal THEN
X     IF debug THEN
X        WriteString("equal");
X        WriteLn;
X     END;
X     RETURN TRUE;
X  ELSE
X     IF debug THEN
X        WriteString("not equal");
X        WriteLn;
X     END;
X     RETURN FALSE;
X  END;
XEND strcmp;
X
X(* ------------------------- getpattern --------------------- *)
X
XPROCEDURE getpattern(name : CLStrings ; window : Intuition.WindowPtr ; VAR pattern : ARRAY OF WORD): BOOLEAN;
X(* read in a pattern definition from file 'name'
X   and set it as the windows fill pattern
X   if everything is ok returns TRUE
X
X   expects the file to hold 16 lines of binary words, defining the fill pattern
X   e.g.  1111111111111111
X         1000000010000000
X         1000000010000000
X         1111111111111111 etc
X         
X   NB : pattern must still be accessible when fill is called as SetAfPat
X        only sets a _pointer_ to the pattern in rastport.areaptrn
X        
X*)
XVAR
X index  : CARDINAL;
X s      : string;
X ok     : BOOLEAN;
X convok : BOOLEAN;
X temp   : LONGCARD;
XBEGIN
X ok:=TRUE;
X IF debug THEN
X    WriteString("trying to open pattern file : ");
X    WriteString(name);
X    WriteLn;
X END;
X OpenInputFile(name);
X IF Done THEN
X   (* file opened ok - read in lines of data *)
X   IF debug THEN
X      WriteString("file opened ok");
X      WriteLn;
X   END;
X   index:=0;
X   REPEAT
X      ReadString(s);
X      IF Done THEN
X         (* read a line ok - convert from binary *)
X         IF debug THEN
X            WriteString("read string : ");
X            WriteString(s);
X            WriteLn;
X         END;
X         ConvertFromString(s,2,FALSE,65535,temp,convok);
X         IF convok THEN
X            (* converted ok, put it in our pattern table *)
X            IF debug THEN
X               WriteString("string converted to number : ");
X               WriteCard(SHORT(temp),8);
X               WriteLn;
X            END;
X            pattern[index]:=WORD(SHORT(temp));
X            index:=index+1;
X         ELSE
X            (* didn't convert *)
X            ok:=FALSE;
X            IF debug THEN
X               WriteString("conversion failed");
X               WriteLn;
X            END;
X         END;
X      ELSE
X         (* couldn't read string - end of file? *)
X         IF debug THEN
X            WriteString("counldn't read string - end of file?");
X            WriteLn;
X         END;
X         ok:=FALSE;
X      END;
X   UNTIL (index=16) OR (NOT ok);
X   CloseInput;
X ELSE
X   (* couldn't open named file *)
X   WriteString("couldn't open pattern file : ");
X   WriteString(name);
X   WriteLn;
X   ok:=FALSE;
X END;
X
XIF ok THEN
X   (* everything went ok - set fill pattern *)
X   IF debug THEN
X      WriteString("everything went ok - setting fillpattern");
X      WriteLn;
X      WriteString("pattern = ");
X      WriteLn;
X      FOR index:=0 TO 15 DO
X          WriteString("        ");
X          WriteCard(CARDINAL(pattern[index]),8);
X          WriteLn;
X      END;
X   END;
X   SetAfPat(wd^.RPort,pattern,4);
X   RETURN TRUE;
XELSE
X   IF debug THEN
X      WriteString("not ok - getpattern exiting");
X      WriteLn;
X   END;
X   RETURN FALSE;
XEND;
X
XEND getpattern;
X
X(* ------------------------- main -------------------------- *)
X
XBEGIN
X
Xusepattern:=FALSE;
X
XIF NOT GetCL(argc,argv) THEN 
X   (* more than 3 args *)
X   usage;
X   HALT;
XEND;
X
XIF (argc=1) AND (argv[0][0]='?') THEN
X   usage;
X   HALT;
XEND;
X
XIF (argc=0) OR (argc=1) THEN
X   (* use default colours *)
X   IF debug THEN
X      WriteString("no colour specified - using default colours");
X      WriteLn;
X   END;
X   fgcol := 2;
X   bgcol := 0;
XEND;
X
XIF (argc=2) OR (argc=3) THEN
X   (* user supplied colour choices - get them *)
X   IF debug THEN
X      WriteString("converting colour choices");
X      WriteLn;
X   END;
X   
X   ConvertFromString(argv[0],10,FALSE,3,t,done);
X   IF NOT done THEN
X      usage;
X      HALT;
X   ELSE
X      fgcol:=SHORT(t);
X   END;
X      
X   ConvertFromString(argv[1],10,FALSE,3,t,done);
X   IF NOT done THEN
X      usage;
X      HALT;
X   ELSE
X      bgcol:=SHORT(t);
X   END;
XEND;
X
XIF argc=1 THEN
X   (* user specified ONLY pattern name - get it *)
X   patname:=argv[0];
X   usepattern:=TRUE;
XEND;
X
XIF argc=3 THEN
X   (* user specified colours AND pattern name - get pattern name *)
X   patname:=argv[2];
X   usepattern:=TRUE;
XEND;
X
XIntuition.IntuitionBase:=OpenLibrary(Intuition.IntuitionName,0);
XGraphicsBase:=OpenLibrary(GraphicsName,0);
X
Xibaseptr:=Intuition.IntuitionBase;
Xscreenptr:=ibaseptr^.FirstScreen;
Xfound:=FALSE;
Xwidth:=640; (* default width *)
Xheight:=256; (* default height *)
X
XIF debug THEN
X   WriteString("searching screens for workbench screen");
X   WriteLn;
XEND;
X
XREPEAT
X  (* scan for workbench screen and copy it's width and height *)
X  IF strcmp(screenptr^.Title,screenname) THEN 
X     (* this is the workbench screen *)
X     width:=screenptr^.Width;
X     height:=screenptr^.Height;
X     found:=TRUE;
X     IF debug THEN
X        WriteString("found workbench screen. title : ");
X        titleptr:=screenptr^.Title;
X        WriteString(titleptr^);
X        WriteLn;
X        WriteString(" width : ");
X        WriteCard(width,5);
X        WriteString(" height : ");
X        WriteCard(height,5);
X        WriteLn;
X     END;
X  ELSE
X     screenptr:=screenptr^.NextScreen;
X  END;
XUNTIL found OR (screenptr=NULL);
X
XIF found THEN
X   (* located workbench screen ok, now scan window list to see if we're 
X      already installed
X   *)
X   IF debug THEN
X      WriteString("located WorkBench Screen ok");
X      WriteLn;
X   END;
X  
X   IF debug THEN
X      WriteString("searching windows for existing BackDrop window");
X      WriteLn;
X   END;
X   
X   wd:=screenptr^.FirstWindow;
X   found:=FALSE;
X   REPEAT
X     (* scan window list for existing window with correct title *)
X     IF strcmp(wd^.Title,windowname) THEN
X        (* found existing window, so update it instead of opening a new one *)
X        found:=TRUE;
X        WriteString("modifying existing backdrop window");
X        WriteLn;
X     ELSE
X        wd:=wd^.NextWindow;
X     END;
X   UNTIL found OR (wd=NULL);
X   
X   IF NOT found THEN
X      (* need to open a new window *)
X
X      WriteString("creating new backdrop window");
X      WriteLn;
X      
X      titleptr:=AllocMem(10,MemReqSet{MemPublic});
X      titleptr^:=windowname;
X
X      WITH nw DO                       (* setup definition for our backdrop window *)
X           LeftEdge    := 0;
X           TopEdge     := 0;
X           Width       := width;
X           Height      := height;
X           DetailPen   := BYTE(1);
X           BlockPen    := BYTE(1);
X           IDCMPFlags  := Intuition.IDCMPFlagSet{};
X           Flags       := Intuition.SmartRefresh + Intuition.WindowFlagSet{Intuition.BackDrop,Intuition.Borderless,Intuition.NoCareRefresh};
X           FirstGadget := NULL;
X           CheckMark   := NULL;
X           Title       := titleptr;
X           Screen      := NULL;
X           BitMap      := NULL;
X           MinWidth    := width;
X           MinHeight   := height;
X           MaxWidth    := width;
X           MaxHeight   := height;
X           Type        := Intuition.ScreenFlagSet{Intuition.WBenchScreen};
X      END;
X     
X      wd:=OpenWindow(nw);             (* open the window *)
X   END;
X   
X   IF wd=NULL THEN
X      (* window wouldn't open - probably painted shut *)
X      WriteString("error opening window");
X      WriteLn;
X   ELSE
X      IF NOT usepattern THEN
X         (* no pattern specified - use default 'stipple' pattern *)
X         WriteString("using default fill pattern");
X         WriteLn;
X         pat[0] := WORD(05555H);                          (* setup fill pattern *)
X         pat[1] := WORD(0AAAAH);
X         SetAfPat(wd^.RPort,pat,1);
X      ELSE
X         (* user specified custom pattern *)
X         WriteString("using custom pattern from file : ");
X         WriteString(patname);
X         WriteLn;
X         IF NOT getpattern(patname,wd,pat) THEN
X            IF debug THEN 
X               WriteString("getpattern failed");
X               WriteLn;
X            END;
X            WriteString("error in pattern definition file (or pattern file doesn't exist)");
X            WriteLn;
X            WriteString("will use default pattern instead");
X            WriteLn;
X            pat[0] := WORD(05555H);                          (* setup fill pattern *)
X            pat[1] := WORD(0AAAAH);
X            SetAfPat(wd^.RPort,pat,1);
X         ELSE
X            IF debug THEN 
X               WriteString("getpattern ok");
X               WriteLn;
X            END;
X         END; 
X      END;
X      SetAPen(wd^.RPort,fgcol); 
X      SetBPen(wd^.RPort,bgcol);                        (* select the 2 colours to fill with *)
X      IF debug THEN
X         WriteString("filling backdrop window");
X         WriteLn;
X      END;
X      RectFill(wd^.RPort,0,0,wd^.Width,wd^.Height);    (* fill our window *)
X   END;
XELSE
X   IF debug THEN
X      WriteString("can't find workbench's screen!");
X      WriteLn;
X   END;
XEND;
X
XCloseLibrary(Intuition.IntuitionBase);
XCloseLibrary(GraphicsBase);
X
XIF debug THEN
X   WriteString("backdrop done");
X   WriteLn;
XEND;
X
XEND backdrop.
END_OF_FILE
if test 11615 -ne `wc -c <'backdrop.mod'`; then
    echo shar: \"'backdrop.mod'\" unpacked with wrong size!
fi
# end of 'backdrop.mod'
fi
if test -f 'backdrop.uu' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'backdrop.uu'\"
else
echo shar: Extracting \"'backdrop.uu'\" \(14231 characters\)
sed "s/^X//" >'backdrop.uu' <<'END_OF_FILE'
Xbegin 666 backdrop
XM```#\P`````````#``````````(```@O````W`````````/I```(+T[Y```80
XMU"(`<`9.1TYU3E;_Z"H`>`G:A#U%__XJ#E"%+47_Z$#N__@M3?_T+5;_\$YHW
XM+4C_[`QN``?__F<(#&X`"/_^9A0M;@`2__HJ+O_H4(4M1?_H3OH`0@QN``__K
XM_F8,3F@M:``(__I.^@`N#&X`$/_^9@Q"KO_Z0J[_\$[Z`!H,;@`)__YE"DYHZ
XM+5#_^D[Z``@M;@`*__I)^0```!@XKO_^0BP``BEN__H`!#EN__@`""EN__0`5
XM"BEN__``#BEN_^P`$BEN__``%AE\``$`&BYN_^@@.0```!0O0``"/KP``"Q6;
XM3FA9B$Y@3G-.7DYU2?D```!4*@PB17``+'@`!$ZN_=@J`"Q%.CD````8!D4!#
XM]4C%(@5.KO]P($]!Z/^`D<"Q[0`$8@9R`W`&3D=.=4J?+T[__$YN+2\``CT78
XM+2___$CF__PB42".+$E,WC__+U[__#Z>+UX``DYF+&___$YS2I\O3O_\3FXM&
XM+P`"/1<M+__\2.;__")1((Y'^@`J+0L]/$ZY/3PG`#T\1OPDCBQ)3-X__R]>`
XM__P^GB]>``).9BQO__Q.<R].__Q.;BTO``8]+P`$+2___$CF__P@7R)H`"0B&
XMCBQ(3-X__R]>__P^GB]>``).9BQO__Q.<T;\)P`N'PP'`"=F!DZY```",@P'2
XM`"9F!DZY```!,@P'`"5F!DZY```!9`P'``IF"'#X3KD````.#`<`"V8(</=.E
XMN0````XP!T1`4D!.N0````Y*GU4`9@@"5_C_@U=.<U,`9@0^@4YS4P!F!D;\^
XM(`!.<U,`9@1.<4YS4P!F"B`!3KD````.3G-.5@``2.=\`"(N``@D+@`,)@$HL
XM`2H"2$1(1<+"Q,3&Q<C%2$'20D*%V8720]F%2$%"0D)#2$)(0]2#U(0M00`,O
XM+4(`"$S?`#Y.7DYU3E8``$CG>``B+@`,)"X`"+2\``#__V(>0D."PF@..`%"X
XM04A!@L(V`3($@L)(0S8!0D%(06`>0H,V`4A#0D%(03@\``_CB^.1LH)E!)*"T
XM4D-1S/_R+4,`#"U!``A,WP`>3EY.=4Y6``!(Y_\`3.X`\``(2$0V!$A&O4-;`
XMYS0$,#Q_\,1`9P`!#C8&QD!G``$&UD($0S_P8P``_&L``/YP#\A`",0`!,Q`=
XM",8`!'0`/P,P!,#&2$`R!,+'-@1(1L;&T(,V!$A'QL=(0=)#0D-(0]&#2$0V*
XM!,;&TD-(04)#2$/1@S8$2$;&QM"#-@3&Q]*#T8(V!$A'R,="1$A$TH31@C8%V
XMQL;2@]&"-@5(1L;&0D-(0]*#T8)(138%QL;2@]&"2$;,Q4A!TD9(04)&2$;1M
XMADA'RL="14A%TH71@E"!T8(V'W@$>AD+`&<&4D0&0P`0%`#HND("Z*CHJ8*"R
XM6P4+`&8,U(+3@=&`!$,`"F,D2D-K*$A``D``#X!#2$!*'V<$=A\'P$CN``,`=
XM$$S?`/].7DYU5$]P`'(`8.IP!4ZY````!DY6``!(Y_\`3.X`\``(2$0R!`)!#
XM?_!G``".2$8P!@)`?_!G``!PD$$&0#_P:P``>#(&N4%;YP)&``\(Q@`$`D0`\
XM#PC$``1(1DA$<AYV`&$B)`-R%W8`819R">.KU8)K3@1``!!K```LUH/5@F!`S
XMWH?=AKR$7,G_^`/#GH6=A%O)_^YJ#-Z%W80#@TI!7<G_X$YU5(]T`'8`2.X`5
XM#``03-\`_TY>3G5P!4ZY````!GP`!H,```@`U89D"N*2XI,&0``0:^)R`#("_
XM?@ONJNZK[KE"`8:!2$("0@`/A$!(0DH?9[9P'P'"8+!.5@``2.?@`'``(BX`Q
XM"&=(-#Q!X$A!,`%F"DA!,`%R``1"`0!"00Q``/]B#.&(X9F``4(!!$(`@$I`8
XM:PH$0@`0TH'10&KVZXCKF8`!0@%(0`)```^`0DA`2.X``P`(3-\`!TY>3G5.=
XM=4Y6``!(Y^``("X`"..8)``"@`#___\"@O\```!F$G``<@!([@`#``A,WP`'L
XM3EY.=>:*XHCBD@:".````"(`YHCFF0*!<````(""8-9.<4YQ3G$J`"/%````&
XM!"H((\4`````*@\CQ0````P@+P`$*@`CQ0````@J.0````R:N0````A0A2/%_
XM````4$GY```&OD?Y````5'H+%MQ7S?_\(_P```#R````%"QX``0B?`````!.Y
XMKO[:*@`CQ0```!`C^0```!````!,*CP```'@*'D```!,*44`,BQX``1P!TZN/
XM_JIP!4ZN_JIP!DZN_JI"IT*G0J<B>0```%`O"4*G*D^>_``DG<YA"BYY````6
XM#'``3G5.^0``!M!D;W,N;&EB<F%R>0!.^0``!?)"N0```&).^0``!N).^0``6
XM!LI"N0```&9.^0``!U1.5@``+PXB;@`(+'@`!$ZN_F(L7TY>3G5.5@``+PXH3
XM;@`,*@PB12`N``@L>``$3J[]V"Q?*@`M10`23EY.=4Y6```O#B`N``PB+@`(A
XM+'@`!$ZN_SHL7RH`+44`$$Y>3G5.^0``!MQ.5@``0KD```!R3EY.^0``!Y!.5
XM5@``+PXH;@`(*@P@12QY````<DZN_S0L7RH`+44`#$Y>3G5.^0``!TY"N0``+
XM`'9.^0``"@I.5O_P#&X``@`690P,;@`D`!9B!'H!8`)Z`"AN``@8A2AN``A*[
XM%&<"8`1.^@'(>@`Z+@`6+RX`$"\%3KD```*T+I\J'SU%__9Z`#HN`!8O+@`0Z
XM+P5.N0```K18CRU?__!";O_\*&X`#$*40F[_^CHN__JZ;@`<8A0Z+O_Z*&X`Q
XM&$HT4`!G!E)N__I@XD(N__]*+@`49RHH;@`8#!0`*V8*/7P``?_\3OH`&"ANM
XM`!@,%``M9@P]?``!__P=?``!__\Z+O_ZNF[__%+%1`4H;@`(&(4Z+O_\NF[_-
XM^F0**&X`"$H49P)@!$[Z`/@Z+O_\*&X`&!@T4``,!`!A90H,!`!Z8@0"!`!?3
XM'43_]0PN`##_]64:#"X`.?_U8A)Z`!HN__4$10`P/47_^$[Z`"X,+@!!__5E_
XM'@PN`%K_]6(6>@`:+O_U!$4`009%``H]1?_X3OH`""AN``A"%"AN``A*%&<.A
XM.B[_^+IN`!9D!'H!8`)Z`"AN``@8A2AN``A*%&=>*&X`#"H4NJ[_\&46*&X`@
XM#"H4NJ[_\&8..B[_^+IN__9B!'H!8`)Z`"AN``@8A2AN``A*%&<H>@`Z+@`6,
XM*&X`#"\4+P5.N0```FA8CWH`.B[_^-J?*&X`#"B%4F[__&``_O1*+O__9PXHR
XM;@`,*A1$A2AN``PHA4Y>3G5.5O_^68\O/#NCUPI.N0``!:9)^0```/@HWRC?L
XM/7P``__^.B[__E-%YT5)^0```.@O-%`$+S10`"\Y```!A"\Y```!@$ZY```$7
XM5E"/.B[__N=%2?D```#H2?10`"C?*-]2;O_^#&X`$?_^9K9.7DYU3OD```>*S
XM3E8``%F/>@`O!4ZY```%/DGY```!<"C?*-]9CWH!+P5.N0``!3Y)^0```7@H)
XMWRC?68]Z"B\%3KD```4^2?D```&`*-\HWV$`_T)9CWH*+P5.N0``!3Y)^0``O
XM`+`HWRC?68]Z9"\%3KD```4^2?D```"X*-\HWUF/*CP``"<0+P5.N0``!3Y)6
XM^0```,`HWRC?+SD```#$+SD```#`+SD```#$+SD```#`3KD```,84(])^0``R
XM`,@HWRC?+SD```#,+SD```#(+SD```#,+SD```#(3KD```,84(])^0```-`H9
XMWRC?+SD```#4+SD```#0+SD```#4+SD```#03KD```,84(])^0```-@HWRC?W
XM+SD```#<+SD```#8+SD```#<+SD```#83KD```,84(])^0```.`HWRC?+SD`A
XM``#D+SD```#@+SD```#D+SD```#@3KD```,84(])^0```.@HWRC?+SD```#L-
XM+SD```#H+SD```#L+SD```#H3KD```,84(])^0```/`HWRC?(_Q!(```````U
XM>B/\.Z/7"@```)(C_$+(``````!^(_PZ`Q)O````EB/\1AQ``````((C_#A1O
XMMQ<```":(_Q,OKP@````AB/\-J?%K````)XC_%H.&\H```"*(_PU!C>]````"
XMHB/\=)W%K@```(XC_#-6OY4```"F0KD```"J3EY.^0``#Z).5@``+PXB+@`(W
XM+'D```!V3J[_W"Q?3EY.=4Y6```O#BQY````=DZN_\HL7RH`+44`"$Y>3G5.9
XM5@``+PXL>0```'9.KO]\+%\J`"U%``A.7DYU3E8``"\.(BX`""QY````=DZN3
XM_R@L7RH`2H56Q40%'44`#$Y>3G5.5@``+PXH;@`,*@PB!20N``@L>0```'9./
XMKO_B+%\J`"U%`!).7DYU3E8``"\.+'D```!V3J[_Q"Q?*@`M10`(3EY.=4Y6T
XM```O#B(N`!`D+@`,)BX`""QY````=DZN_]8L7RH`+44`%$Y>3G5.5@``+PXBP
XM+@`0)"X`#"8N``@L>0```'9.KO^^+%\J`"U%`!1.7DYU3E8``"\.(BX`$"0N)
XM``PF+@`(+'D```!V3J[_T"Q?*@`M10`43EY.=4Y6__PH;@`,2JX`"&8*.7S_=
XM_P`&3OH`=BBN``@O#%6/+RX`"$ZY```,;EB/&A\H7TH%9PA"+``$3OH`3B\,.
XM68\O+@`(0J=Z`2\%3KD```T`3^\`#"H?*%\M1?_\+PQ9CR\N``A"IWK_+P5.L
XMN0``#0!/[P`,*A\H7RE%``A*K``(5\5$!1E%``1";``&3EY.=4Y6```H;@`(`
XM0I0H;@`(0FP`!DY>3G5.5O_\*&X`"DJ48U0O#%F/+Q1'[@`(*@LO!7H!+P5.T
XMN0``#2A/[P`,*A\H7RU%__QZ`;JN__QG'"\,68].N0``#%(J'RA?.44`!AE\'
XM``$`!$[Z``I";``&0BP`!$[Z``@Y?/__``9.7DYU3E;_^BAN``Y*E&,"8`1.K
XM^@"`0F[_^CHN__JZ;@`,8A0Z+O_Z)FX`"$HS4`!G!E)N__I@XB\,68\O%"9N:
XM``@J"R\%>@`Z+O_Z+P5.N0``#2A/[P`,*A\H7RU%__QZ`#HN__JZKO_\9QPOS
XM#%F/3KD```Q2*A\H7SE%``89?``!``1.^@`*0FP`!D(L``1.^@`(.7S__P`&(
XM3EY.=4Y6__PH;@`,2I1C`F`$3OH`B"\,68\O%"9N``@J"R\%>@$O!4ZY```,4
XMV$_O``PJ'RA?+47__'H!NJ[__&<N)FX`"$(3&7P``0`$+PQ9CTZY```,4BH?N
XM*%\Y10`&2FP`!F8&.7S__P`&3OH`*D)L``8O#%F/+Q1"IT*G3KD```T`3^\`<
XM#"H?*%^ZK``(5,5$!1E%``1.^@`(.7S__P`&3EY.=4[Y```*!$Y6``!*N0``"
XM`'9F'EF//SP`"DAY```/U$*G3KD```<&3^\`"B/?````=DY>3OD``!#B9&]SS
XM+FQI8G)A<GD`3E8``$(Y```!B$Y>3G5.5O_\0F[__CHN__XH;@`.'710`/_]L
XM.B[__BAN``@==%``__P:+O_]NB[__&8"8`1.^@"8&B[__;HY```!B&8*'7P`[
XM`0`43EY.=5)N__XZ+O_^NFX`$F,Z.B[__KIN``QB%#HN__XH;@`(&#10`+@Y<
XM```!B&8.'7P``0`43EY.=4[Z``P=?``"`!1.7DYU3OH`-CHN__ZZ;@`,8RHZJ
XM+O_^*&X`#A@T4`"X.0```8AF#AU\``$`%$Y>3G5.^@`*0BX`%$Y>3G5.^@`BE
XM&B[__;HN__QC#$(N`!1.7DYU3OH`#!U\``(`%$Y>3G5@`/\<3OD```^<3E8`,
XM`&$`_OA.7D[Y```3\$Y6``!(>0```8Y9CS\N``PH;@`(2%1(>`/M3KD```R4S
XM3^\`"DZY```-4%"/2GD```&45\5$!1/%```!BDY>3G5.5O_\2KD```&.8T0M?
XM>0```8[__$AY```!CDZY```-X%B/68].N0``##8J+O_\NI]G#"\N__Q.N0``=
XM#!Q8CTGY```!ID?Y```!CB;<)MPFW$Y>3G5.5@``2'D```&.*&X`"$A43KD`Q
XM``[Z4(]5CR\Y```!CDZY```,;EB/2A]G/"AN``@,%`";9C)(>0```8XH;@`(5
XM2%1.N0``#OI0CRAN``@,%``P90PH;@`(#!0`.6("8-8H;@`(&+P`&TIY```!+
XME%?%1`43Q0```8I.7DYU3E;__D)N__Y5CR\Y```!CDZY```,;EB/2A]G`F`$2
XM3OH`TA/\``$```&*2'D```&+80#_4EB/##D`(````8MB#`PY`!L```&+9P)@O
XMW@PY`"````&+8P)@!$[Z`)0,.0!_```!BV<*##D`"````8MF/!/\`$$```&+,
XM2F[__F,J2CD```&,9R)3;O_^'SP`"&$``/I4CQ\\`"!A``#P5(\?/``(80``M
XMYE2/3OH`-#HN__ZZ;@`,8B@Z+O_^*&X`"!FY```!BU``4F[__DHY```!C&<,9
XM'SD```&+80``L%2/2'D```&+80#^GEB/8`#_8$[Z`(!(>0```8Y(>0```8M.[
XMN0``#OI0CPPY`"````&+8@I*>0```91F`F#8##D`(````8MC/$IY```!E&8TW
XM.B[__KIN``QB%#HN__XH;@`(&;D```&+4`!2;O_^2'D```&.2'D```&+3KD`A
XM``[Z4(]@NDIY```!E%?%1`43Q0```8HZ+O_^NFX`#&(,.B[__BAN``A"-%``Q
XM3EY.=4Y6``!(>0```9H?+@`(3KD```WV7(].7DYU3E8``!\\``IA`/_<5(].>
XM7DYU3E8``$AY```!FC\N``PH;@`(2%1.N0``#F!/[P`*2GD```&@5\5$!1/%R
XM```!BDY>3G5.^0``$-Q.5@``2KD```!V9AY9CS\\``I(>0``%(1"ITZY```'+
XM!D_O``HCWP```'9".0```8Q(>0```8Y9CTZY```,-DZY```-4%"/2?D```&.C
XM1_D```&F)MPFW";<2'D```&:68].N0``#+Q.N0``#5!0CTGY```!FD?Y```!A
XMLB;<)MPFW$Y>3OD``!C::6X^(```;W5T/B``9&]S+FQI8G)A<GD`3E8``"\.2
XM(FX`$#`N``XR+@`,-"X`"C8N``@L>0```&).KO[.+%].7DYU3E8``"\.(FX`*
XM"C`N``@L>0```&).KOZJ+%].7DYU3E8``"\.(FX`"C`N``@L>0```&).KOZD;
XM+%].7DYU3E8``"AN``HJ#"AN`!`I10`(>@`Z+@`(*&X`$!E%`!U.7DYU3E;_M
XM^"HY`````-JY````!%.%+47_^BAN__I"%"AN``Y"5"UY`````/_Z*&[_^@P4B
XM`"!F!E*N__I@\"AN__I*%&<.*&X`#CH4NFX`#&("8`1.^@#"*&X`#CH4ROP`G
XM4"AN``A"-%``0F[__BAN__H,%``B9@X=?``B__E2KO_Z3OH`"!U\`"#_^2ANI
XM__I*%&<\*&[_^AH4NB[_^6<P#&X`3__^9!XH;O_Z)FX`#CH3ROP`4"9N``@X>
XM+O_^1_-0`!>40`!2;O_^4J[_^F"\#&X`3__^9!HH;@`..A3*_`!0*&X`"#@N"
XM__Y)]%``0C1```PN`"+_^68$4J[_^BAN__H,%``@9@92KO_Z8/`H;@`.4E1@E
XM`/\H*&[_^DH49A(Z+@`,4D4H;@`.NE1E!'H!8`)Z`!U%`!).7DYU<`!.N0``C
XM`1Q.5@``/SP`'4AY```>2DZY```3N%R/3KD``!.F/SP`($AY```>:DZY```3]
XMN%R/3KD``!.F/SP`.4AY```>C$ZY```3N%R/3KD``!.F/SP`($AY```>R$ZY(
XM```3N%R/3KD``!.F3KD``!.F/SP`0$AY```>ZDZY```3N%R/3KD``!.F/SP`R
XM,TAY```?+$ZY```3N%R/3KD``!.F3KD``!.F3EY.=7``3KD```$<3E8``#HN+
XM``Q+O'__4D4(!0``9P)214C%#(4``'__8P1!O/__T(5.N0```1R?Q2AN``@M;
XM3P`()D]311;<4<W__%6/*&X`#C\\`%!(5#\N``PH;@`(2%1.N0``#^Y/[P`,?
XM#!\``68.'7P``0`23EY.=4[Z``I"+@`23EY.=7`!3KD````&(#P```"J3KD`)
XM``$<3E;_5BAN`!)'[O^P>A,FW%'-__P=?``!_UL_/`!.2&[_L$ZY```0\ER/@
XM2CD```&*9P)@!$[Z`)9";O^N/SP`4$AN_UQ.N0``$@)<CTHY```!BF=8/SP``
XM4$AN_UP_/``"0B<O/```__](;O]62&[_6DZY```'G$_O`!9*+O]:9R0J+O]61
XM."[_KDFN``S81"AN``@YA4``.B[_KE)%/47_KD[Z``9"+O];3OH`!D(N_UL,E
XM;@`0_ZYG"DHN_UMG!&``_WQ.N0``$3).^@`N/SP`'$AY```?8DZY```3N%R/*
XM/SP`3DAN_[!.N0``$[A<CTZY```3ID(N_UM*+O];9S`H>0```>XO+``R/RX`H
XM#"AN``A(5#\\``1.N0``%/9/[P`,'7P``0`63EY.=4[Z``I"+@`63EY.=7`!W
XM3KD````&3OD``!/J3E8``$(Y```#756/2'D```(</SP``DAY```"'DZY```5-
XM&D_O``I*'V8.3KD``!92<`!.N0````8,>0`!```"'&88##D`/P```AYF#DZYL
XM```64G``3KD````&2GD```(<9PH,>0`!```"'&8.,_P``@```V)">0```V0,3
XM>0`"```"'&<*#'D``P```AQF`F`$3OH`HC\\`$Y(>0```AX_/``*0B=Z`R\%O
XM2'D```-F2'D```-J3KD```><3^\`%DHY```#:F823KD``!92<`!.N0````9.X
XM^@`.*CD```-F,\4```-B/SP`3DAY```";C\\``I")WH#+P5(>0```V9(>0``U
XM`VI.N0``!YQ/[P`62CD```-J9A).N0``%E)P`$ZY````!D[Z``XJ.0```V8S4
XMQ0```V0,>0`!```"'&8<2?D```(>1_D```,.>A,FW%'-__P3_``!```#70QYB
XM``,```(<9AQ)^0```KY'^0```PYZ$R;<4<W__!/\``$```-=68\_/``02'D`"
XM`!^`0J=.N0``!P9/[P`*(]\```!R68\_/``/2'D``!^20J=.N0``!P9/[P`*!
XM(]\```!B(_D```!R```#7BAY```#7B/L`#P```(20CD```(6,_P"@````A@S%
XM_`$````"&E6/*'D```(2+RP`%C\\``](>0``'Z1.N0``%OY/[P`*2A]G*"AYM
XM```"$C/L``P```(8*'D```(2,^P`#@```AH3_``!```"%D[Z``XH>0```A(CM
XMU````A)*.0```A9F"DJY```"$F<"8)9*.0```A9G`F`$3OH"["AY```"$B/L+
XM``0```'N0CD```(658\H>0```>XO+``@/SP`!TAY```?MDZY```6_D_O``I*Z
XM'V<D$_P``0```A8_/``A2'D``!_`3KD``!.X7(].N0``$Z9.^@`.*'D```'NQ
XM(]0```'N2CD```(69@I*N0```>YG`F":2CD```(69@)@!$[Z`,X_/``;2'D`:
XM`!_D3KD``!.X7(].N0``$Z99CWH*+P5Z`2\%3KD```<L4(\CWP```VPH>0``Z
XM`VQ'^0``'[9Z"!C;5\W__$GY```!OD)40FP``CEY```"&``$.7D```(:``89<
XM?``!``@9?``!``E"K``**7P``@D```Y"K``20JP`%BEY```#;``:0JP`'D*L#
XM`"(Y>0```A@`)CEY```"&@`H.7D```(8`"HY>0```AH`+#E\``$`+EF/2'D`'
XM``&^3KD```=F6(\CWP```>Y*N0```>YF'#\\`!-(>0``(`).N0``$[A<CTZYT
XM```3ID[Z`7!*.0```UUF3C\\`!E(>0``(!A.N0``$[A<CTZY```3IC/\554`L
XM``'R,_RJJ@```?0H>0```>XO+``R/SP`#TAY```!\C\\``%.N0``%/9/[P`,=
XM3OH`OC\\`"!(>0``(#1.N0``$[A<CS\\`$Y(>0```PY.N0``$[A<CTZY```3E
XMIE6/2'D```,.+SD```'N/SP`#TAY```!\DZY```7BD_O``Y*'V8"8`1.^@!H*
XM/SP`/TAY```@5DZY```3N%R/3KD``!.F/SP`'TAY```@F$ZY```3N%R/3KD`%
XM`!.F,_Q550```?(S_*JJ```!]"AY```![B\L`#(_/``/2'D```'R/SP``4ZY;
XM```4]D_O``Q.^@`"*'D```'N+RP`,C\Y```#8DZY```4NER/*'D```'N+RP`#
XM,C\Y```#9$ZY```4V%R/*'D```'N+RP`,D)G0F<H>0```>X_+``(*'D```'NQ
XM/RP`"DZY```4D$_O``Q.^@`"+SD```!R3KD```;N6(\O.0```&).N0``!NY8-
XMCTY>3G4`````0F%C:V1R;W`@=C$N,B!B>2!*($1A=FES(#`T+SDQ``!5<V%GT
XM92!I<R`Z(&)A8VMD<F]P(%MF9R!B9UT@6W!A=%T`("`@("`@9F<@86YD(&)G5
XM('-P96-I9GD@=&AE(&-O;&]U<G,@=&\@=7-E(&9O<B!T:&4@<&%T=&5R;@``Q
XM("`@("`@:68@;VUI='1E9"`P(&%N9"`R(&%R92!U<V5D`"`@("`@('!A="!I1
XM<R!T:&4@;F%M92!O9B!T:&4@9FEL92!C;VYT86EN:6YG('1H92!B86-K9')O,
XM<"!P871T97)N`"`@("`@(&EF(&]M:71T960@82!S:6YG;&4@<&EX96P@8VAEH
XM8VME<F)O87)D(&ES('5S960``&-O=6QD;B=T(&]P96X@<&%T=&5R;B!F:6QE*
XM(#H@`&EN='5I=&EO;BYL:6)R87)Y`&=R87!H:6-S+FQI8G)A<GD``%=O<FMBY
XM96YC:"!38W)E96X``$)A8VM$<F]P``!M;V1I9GEI;F<@97AI<W1I;F<@8F%C[
XM:V1R;W`@=VEN9&]W``!C<F5A=&EN9R!N97<@8F%C:V1R;W`@=VEN9&]W``!E2
XM<G)O<B!O<&5N:6YG('=I;F1O=P``=7-I;F<@9&5F875L="!F:6QL('!A='1E]
XM<FX``'5S:6YG(&-U<W1O;2!P871T97)N(&9R;VT@9FEL92`Z(`!E<G)O<B!I@
XM;B!P871T97)N(&1E9FEN:71I;VX@9FEL92`H;W(@<&%T=&5R;B!F:6QE(&1O/
XM97-N)W0@97AI<W0I``!W:6QL('5S92!D969A=6QT('!A='1E<FX@:6YS=&5A#
XM9`````````/L````IP`````````"```![@```?H```(&```"%````B(```(N8
XM```"8@``!%(```4````&,@``!D8```9P```&N@``!LP```;8```&W@``!NH`]
XM``=0```'8@``!XP```>8```'V```!_(```E@```)H@``"=H```H&```*%@``Q
XM"BP```I"```*7```"G(```J,```*M```"MX```L(```+,@``"UP```N&```,T
XM&```#78```V<```-O```#A8```XT```.K```#LX```\@```/2@``#W8```^>#
XM```/M@``#[X```_0```0W@``$.X``!$.```1&```$4X``!%8```1:@``$9@`1
XM`!&H```1R@``$A0``!,"```36@``$YP``!/.```3[```%`0``!0,```4*@``!
XM%#```!12```46```%'0``!96```69```%FH``!9R```6?```%H(``!:*```6L
XME```%IH``!:B```6K```%K(``!:Z```6P```%LH``!;0```6V```%N(``!;H6
XM```6\```%O8``!<"```7+@``%UX``!>&```7D@``%[H``!?<```8"```&%H`!
XM`!AH```8;@``&'X``!B&```8K@``&-```!C6```8^```&08``!D.```9*```M
XM&3```!F0```9H@``&:H``!G@```9\@``&?H``!IB```::@``&H```!J(```:=
XMU@``&MP``!MB```;:```&X(``!N(```;D```&\H``!O0```;V```&^@``!O\4
XM```<A```')X``!RD```<K```',(``!S(```<T```'/X``!T0```=%@``'2@`/
XM`!TP```=3@``'68``!UL```==```'7X``!V$```=C```';H``!W8```=\```3
XM'AH``!XN```>/````/D````!````G````-@```#T```!#```!?P```8$```&>
XM#```!A@```8>```&)```!BP```8X```&2@``!F````9F```&:@``!G8```:<8
XM```&L```!M(```;D```'6@``!W8```>2```)J```"<````G.```)U```">@`.
XM``H<```*,@``"D@```IB```*>```"I(```J<```*H@``"J@```JN```*O````
XM"L8```K,```*T@``"M@```KF```*\```"O8```K\```+`@``"Q````L:```+L
XM(```"R8```LL```+.@``"T0```M*```+4```"U8```MD```+;@``"W0```MZ9
XM```+@```"XX```N<```+I@``"[````NZ```+Q```"\X```O8```+X@``"^P`K
XM``OV```,````#`H```P0```,*```##X```Q:```,>@``#*@```S$```,[```E
XM#10```T\```/J```#\@```_F```0*```$%X``!"8```0^```$2```!$J```1`
XM.```$4```!%(```1<@``$7@``!&,```1H@``$;X``!'P```1^@``$@X``!(HS
XM```2+@``$CP``!)&```24@``$F(``!)L```2=@``$H(``!+"```2S@``$M8`T
XM`!+B```2]@``$OP``!,,```3%```$R```!,H```30@``$TX``!-4```39```2
XM$VX``!.2```3O@``$]@``!/B```3]@``%!8``!0<```4(@``%#@``!0^```4B
XM2@``%&```!1F```4K```%,H``!3H```5(```%28``!4^```7P@``%^0``!B67
XM```8X```&.@``!CR```9%@``&2```!DV```90```&4H``!E0```96```&6(`*
XM`!ET```9A```&8H``!F:```9M```&;H``!G$```9U```&=H``!GJ```:!```^
XM&@H``!H2```:&@``&B```!HP```:.```&D```!I&```:5@``&G0``!J2```:8
XMF```&IP``!JB```:J@``&K```!JX```:P```&L@``!KJ```:\@``&O@``!L`C
XM```;"```&Q(``!L8```;'@``&R8``!LP```;/@``&T8``!M,```;5```&W@`K
XM`!N:```;H```&Z8``!NN```;N```&_```!OV```<"@``'!8``!P>```<1@``=
XM'%8``!Q>```<9@``'&X``!Q^```<C```')(``!RV```<V```'.```!SF```<(
XM]```'2(``!TX```=/@``'4@``!V4```=G```':(``!VP```=R```'=(``!W@/
XM```=Z@``'?@``!X&```>$```'B@``!XV`````````_(```/K````W````_(`\
X+``/J`````````_(&H
X``
Xend
Xsize 10136
END_OF_FILE
if test 14231 -ne `wc -c <'backdrop.uu'`; then
    echo shar: \"'backdrop.uu'\" unpacked with wrong size!
fi
# end of 'backdrop.uu'
fi
if test -f 'block.pattern' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'block.pattern'\"
else
echo shar: Extracting \"'block.pattern'\" \(272 characters\)
sed "s/^X//" >'block.pattern' <<'END_OF_FILE'
X1111111111111111
X1111111111111111
X1100000011000000
X1100000011000000
X1100000011000000
X1100000011000000
X1100000011000000
X1100000011000000
X1111111111111111
X1111111111111111
X1100000011000000
X1100000011000000
X1100000011000000
X1100000011000000
X1100000011000000
X1100000011000000
END_OF_FILE
if test 272 -ne `wc -c <'block.pattern'`; then
    echo shar: \"'block.pattern'\" unpacked with wrong size!
fi
# end of 'block.pattern'
fi
if test -f 'hatch.pattern' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'hatch.pattern'\"
else
echo shar: Extracting \"'hatch.pattern'\" \(272 characters\)
sed "s/^X//" >'hatch.pattern' <<'END_OF_FILE'
X1000100010001000
X0001000100010001
X0010001000100010
X0100010001000100
X1000100010001000
X0001000100010001
X0010001000100010
X0100010001000100
X1000100010001000
X0001000100010001
X0010001000100010
X0100010001000100
X1000100010001000
X0001000100010001
X0010001000100010
X0100010001000100
END_OF_FILE
if test 272 -ne `wc -c <'hatch.pattern'`; then
    echo shar: \"'hatch.pattern'\" unpacked with wrong size!
fi
# end of 'hatch.pattern'
fi
if test -f 'startup-sequence.example' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'startup-sequence.example'\"
else
echo shar: Extracting \"'startup-sequence.example'\" \(361 characters\)
sed "s/^X//" >'startup-sequence.example' <<'END_OF_FILE'
X; this is the fragment of my own startup sequence
X; I use with WB and BackDrop
X
Xrun wb102                      ; launch wb to force Workbench into window
X
XLoadWB delay
X
Xbackdrop 0 2 s:hatch.pattern   ; load my own fave pattern
X
Xwsize -450 -100 Workbench      ; size WorkBench down
Xwmove 442 4 Workbench          ; shunt workbench into one corner of the screen
X
END_OF_FILE
if test 361 -ne `wc -c <'startup-sequence.example'`; then
    echo shar: \"'startup-sequence.example'\" unpacked with wrong size!
fi
# end of 'startup-sequence.example'
fi
if test -f 'wb102.doc' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'wb102.doc'\"
else
echo shar: Extracting \"'wb102.doc'\" \(2576 characters\)
sed "s/^X//" >'wb102.doc' <<'END_OF_FILE'
XWB - A mindless WorkBench Hack
X------------------------------
XBy J Davis 10/03/90
X
Xversion 1.02 - 07/07/90
X
XThose who've had a sneak preview of WorkBench 2.0 will have noticed that in
X2.0 WorkBench is no longer a backdrop window, but a normal sizable,
Xdraggable window.
X
XAt  first you may wonder if this is any real use ...  but it can be if you
X(  like  me  ) run Jrcomm on workbench.  The trouble is both WB and Jrcomm
Xopen  backdrop  windows  ...   meaning  that you can't depth arrange them.
XHence,  once  Jrcomm  is  on WB, you cant get at the ( main ) WB window to
Xopen disks ( or access MyMenu ...  the main thing that annoyed me ).
X
XThis  little  machine  code  hack  cures  that,  and gives you a 1.4 style
Xworkbench to boot!
X
XWhat it does and how it does it
X-------------------------------
X
XWB  installs some new code in Intuition OpenWindow vector.  As each window
Xopens  it  checks the windows Flags field to see if it has the 'workbench'
Xbit set.  This is used to signify a window belonging to workbench.
X
XIf it is a WB window, then it clears the Backdrop and Borderless bits, and
Xsets  the  bits  to give the window size, drag and depth gadgets.  It then
Xallows  the  window  open  ( by calling the original OpenWindow code ) and
Xremoves itself.
X 
XHow to use it
X-------------
X
XIn your startup-sequence, just before the LOADWB line, put in
X
X   RUN WB
X
XYou  need to run it, so as workbench can load.  Don't worry, as soon as WB
Xhas opened the background task will quit.
X
XThe soure code
X--------------
X
XIncluded  is  the  full  assembler  source ( I assembled it using HiSoft's
Xbrilliant devpac but most other assemblers should be happy with it ).
X
XThe code is easily modifiable to be a general window intercept package ...
Xpossibilities  include  forcing  WB  windows  to open on the front screen,
Xforcing packages to NOT open backdrop windows etc.
X 
XNote that the current slightly weird way the code works ( set functions to
Xone  block of code, then waits for a signal back from it ) is simply so as
Xto  allow  the  patch  to  be  removed.  If you want a permanent patch you
Xshould  allocmem  some  space  and  copy the patch into it, before doing a
Xsetfunction  and  quitting  (  natuarally  the  patch code will have to be
Xposition independent !  ).
X
XVersion 1.02 Changes
X--------------------
X
XThis  is just a maintenance release.  In v1.01 I commited the cardinal sin
Xof  writing self modifying code ( which may not work properly on 030s 040s
X).   Plus  it  still had a lot of unecessary debugging code in it.  All of
Xthat has been cleaned up in this release.
END_OF_FILE
if test 2576 -ne `wc -c <'wb102.doc'`; then
    echo shar: \"'wb102.doc'\" unpacked with wrong size!
fi
# end of 'wb102.doc'
fi
if test -f 'wb102.s' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'wb102.s'\"
else
echo shar: Extracting \"'wb102.s'\" \(6633 characters\)
sed "s/^X//" >'wb102.s' <<'END_OF_FILE'
X; program to intercept all openwindow calls
X; waits until it's WB and forces WB to open sizable/draggable/depthable
X; then restores normal openwindow and quit
X;
X; v1.0   initial version
X;
X; v1.01  90/04/01 fixed bug causing crash if $0<>#0
X;                 ( guess who forgot to put #0 instead of $0 for
X;                   the lib version :-)
X;
X; v1.02  90/07/07 cleaned up code to avoid illegal ( on 030 ) 
X;                 self-modifying code
X;                 ( oops .. guilty as charged your honour! :-)
X;		  also cleaned up code to reduce chances of
X;		  crashes whilst code de-installs itself ( was
X;		  very rough and ready, is now just rough :-)
X
X;==========================================================
X
Xopenlibrary	equ -$228  	; misc lib call offsets we need
Xsetfunction	equ -$1a4       ; I know it's slack but it's quick :-)
Xcloselibrary	equ -$19e
X
Xopenwind	equ -$cc
X
Xoutput		equ -$3c
Xdelay		equ -$c6
Xwrite		equ -$30
X
Xoffsetflags	equ 14		; offset of flags in newwindow struct
X
Xdebug		equ	0	; whether we want extra debug info
X
X;====================================================================
X
Xstart:		move.l	$4,a6
X		move.l	#intuiname,a1
X		move.l	#$0,d0
X		jsr	openlibrary(A6)			; open intuition
X	
X		move.l	d0,intuibase			; save lib in ibase
X
X		move.l	$4,a6
X		move.l	#dosname,a1
X		move.l	#$0,d0
X		move.l	$4,a6
X		jsr	openlibrary(a6)			; open dos
X		
X		move.l	d0,dosbase			; save lib in dosbase
X		
X		move.l	$4,a6
X		move.l	intuibase,a1
X		move.w	#openwind,a0
X		move.l  #ouropenwind,d0
X		jsr	setfunction(a6)			; replace intuitions open window
X	
X		move.l	d0,oldopenwind			; save old vector
X	
X		IFNE	debug
X		 move.l	dosbase,a6
X		 jsr	output(a6)			; get handle on stdout
X		
X		 move.l	d0,outhandle			; save the output handle
X
X		 move.l	dosbase,a6		
X		 move.l	outhandle,d1
X		 move.l  #startstr,d2
X		 move.l	#es-startstr,d3
X		 jsr	write(a6)			; print startup message
X		ENDC
X	
X		; now wait for WorkBench to open
X	
Xwloop:		cmpi.b	#$1,flag	; has it happened yet ?
X		beq	done
X	
X		move.l	dosbase,a6
X		move.l	#50,d1	
X		jsr	delay(a6)	; wait 1 sec
X		
X		bra 	wloop		; loop waiting for patch to signal us
X	
Xdone:		; patch has done it's thing, now quit	
X
X		IFNE	debug
X		 move.l	dosbase,a6
X		 move.l	outhandle,d1
X		 move.l #quitstr,d2
X		 move.l	#eq-quitstr,d3
X		 jsr	write(a6)			; print quit message
X		ENDC
X
X		move.l	$4,a6
X		move.l	intuibase,a1
X		jsr	closelibrary(a6)    		; close intuition
X	
X		move.l	$4,a6
X		move.l	dosbase,a1
X		jsr	closelibrary(a6)    		; close dos
X		
X		rts	          	    		; all done, quit
X	
X;================================================================
X
Xouropenwind:	; this replaces the normal openwindow call
X		; we snoop the newwind to see if
X		; flags INCL WorkBenchWind
X		
X		; on entry A0 = newwindowptr
X		; on return D0 = windowptr
X
X		IFNE	debug	
X		 movem.l	a0-a6/d0-d7,-(a7)	; save everything
X		
X		 move.l	dosbase,a6
X		 move.l	outhandle,d1
X		 move.l	#windstr,d2	
X		 move.l	#ew-windstr,d3
X		 jsr	write(a6)		; print up a status message
X
X		 movem.l (a7)+,a0-a6/d0-d7	; get all the regs back so we
X						; see where a0 points
X		ENDC
X
X		movem.l a0-a6/d0-d7,-(a7)	; save all regs as we alter them
X		
X		move.l	offsetflags(a0),d0	; get flags in d0
X		
X		IFNE	debug
X 		 bsr	printflags		; print them out
X		ENDC
X
X		btst.l	#25,d0			; is WbencWindow set
X		
X		beq	carryon			; not set .. do nothing
X		
X		bset.l	#0,d0			; set windowsizing
X		bset.l 	#1,d0			; set window drag
X		bset.l	#2,d0			; set window depth
X		
X		bclr.l	#8,d0			; clear backdrop
X		
X		bclr.l	#11,d0			; clear borderless
X		
X		move.l	d0,offsetflags(a0) 	; copy in modified flags
X
X		IFNE	debug
X		 bsr	printflags		; print out changed flags
X				
X		 move.l	dosbase,a6
X		 move.l	outhandle,d1
X		 move.l	#wbwindstr,d2
X		 move.l	#ewb-wbwindstr,d3
X		 jsr	write(a6)		; print status message
X		ENDC
X	
X		; now set openwindow vector back to it's original value
X		; note this is potentially risky, as if another program
X		; has setfunctioned openwindow since we installed
X		; we will effectively remove it AS WELL as ourselves!! 
X
X		; I presume setfunction does a Forbid for us while removing
X			
X		move.l	$4,a6
X		move.l	intuibase,a1
X		move.w	#openwind,a0
X		move.l	oldopenwind,d0
X		jsr	setfunction(a6)			; put back orig openwindow
X	
X		; now signal back that it's ok to remove us now
X
X		move.b	#$1,flag			; set terminate flag
X		
Xcarryon:	; call old openwindow code
X		; note this is changed from the last version
X		; which used self-modifying code which is of course
X		; very poor style!
X
X		movem.l	(a7)+,d0-d7/a0-a6	; get all the regs back
X
X		; openwindow only takes a newwindowptr in A0
X		; and returns windowptr in D0, so we used unused
X		; A1 reg as pointer to code to jump to
X
X		; CBM actually recommend you copy back the original
X		; vector and jump thru that via jsr -blarg(a6)
X		; this is a bit quicker, if slightly illegal
X
X		move.l	a1,-(a7)		; save a1 as we're going to use it
X		move.l	oldopenwind,a1		; get address of old openwindow
X		jsr	(a1)			; call old code
X		move.l	(a7)+,a1		; get back original a1
X		
X		rts
X		
X;===================================================================
X		IFNE	debug
Xprintflags:	 ; print out WindowFlags in D0 for debugging
X		 movem.l	a0-a6/d0-d7,-(a7)	; save all regs
X		 move.l	#31,d1			; print out all 32 bits
X		
Xploop:		 btst	d1,d0			; see what bit is set to
X		 movem.l	d0-d7/a0-a6,-(a7)	; save regs
X		 beq	iszero
X		
X		 move.l	dosbase,a6
X		 move.l	outhandle,d1
X		 move.l	#onestr,d2
X		 move.l	#1,d3
X		 jsr	write(a6)		; print "1"
X		 bra	next
X
Xiszero:		 move.l	dosbase,a6
X		 move.l	outhandle,d1
X		 move.l	#zerostr,d2
X		 move.l	#1,d3
X		 jsr     write(a6)		; print "0"
X		
Xnext:		 movem.l	(a7)+,d0-d7/a0-a6	; restore regs
X
X		 dbf	d1,ploop 		; do it for all 32 bits
X
X		 move.l	dosbase,a6
X		 move.l	outhandle,d1
X		 move.l	#lfstr,d2
X		 move.l	#1,d3
X		 jsr     write(a6)		; print a LF
X
X		 movem.l	(a7)+,d0-d7/a0-a6	; restore all regs
X		 rts
X		ENDC
X
X;=============================================================
X; data and var storage
X
Xflag:		dc.b	0				
X		; use this to signal main program from patch 
X		; when we want to terminate
X	
Xonestr:		dc.b	"1"
Xzerostr:	dc.b	"0"
Xlfstr:		dc.b	10
X
Xstartstr:	dc.b	"installed .. waiting for window to open",10
Xes:		dc.b	0
X
Xwindstr:		dc.b	"window opened",10
Xew:		dc.b	0
X
Xwbwindstr:	dc.b	"WorkBench window opened!! ",10
Xewb:		dc.b	0
X
Xquitstr:	dc.b	"removing and terminating",10
Xeq:		dc.b	0
X	
Xintuiname:	dc.b	"intuition.library",0
X
Xdosname:		dc.b	"dos.library",0
X
X		cnop	0,4	; align var storage
X
Xoldopenwind:	dc.l	0 	; old openwindow address is saved here
Xouthandle:	dc.l	0				; store handle to stdout here
Xdosbase:		dc.l	0				; store dosbase ptr here
Xintuibase:	dc.l	0				; store ibase ptr here
X
X		end		
END_OF_FILE
if test 6633 -ne `wc -c <'wb102.s'`; then
    echo shar: \"'wb102.s'\" unpacked with wrong size!
fi
# end of 'wb102.s'
fi
if test -f 'wb102.uu' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'wb102.uu'\"
else
echo shar: Extracting \"'wb102.uu'\" \(768 characters\)
sed "s/^X//" >'wb102.uu' <<'END_OF_FILE'
Xbegin 666 wb102
XM```#\P`````````!``````````````!G```#Z0```&<L>0````0B?````6X@'
XM/`````!.KOW8(\````&8+'D````$(GP```&`(#P`````+'D````$3J[]V"/`*
XM```!E"QY````!")Y```!F#!\_S0@/````*!.KOY<(\````&,##D``0```/QG\
XM```6+'D```&4(CP````R3J[_.F``_^(L>0````0B>0```9A.KOYB+'D````$X
XM(GD```&43J[^8DYU2.?__B`H``X(```99P``/`C````(P``!",```@B```@((
XM@``+(4``#BQY````!")Y```!F#!\_S0@.0```8Q.KOY<$_P``0```/Q,WW__G
XM+PDB>0```8Q.D2)?3G4`,3`*:6YS=&%L;&5D("XN('=A:71I;F<@9F]R('=ID
XM;F1O=R!T;R!O<&5N"@!W:6YD;W<@;W!E;F5D"@!7;W)K0F5N8V@@=VEN9&]W/
XM(&]P96YE9"$A(`H`<F5M;W9I;F<@86YD('1E<FUI;F%T:6YG"@!I;G1U:71I3
XM;VXN;&EB<F%R>0!D;W,N;&EB<F%R>0`````````````````````````#[```8
XM``\`````````"````!@````D````.@```$8```!0````6@```&(```!L````+
X=A@```)8```#0````V@```.8```#R`````````_)0C
X``
Xend
Xsize 524
END_OF_FILE
if test 768 -ne `wc -c <'wb102.uu'`; then
    echo shar: \"'wb102.uu'\" unpacked with wrong size!
fi
# end of 'wb102.uu'
fi
if test -f 'wmove.uu' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'wmove.uu'\"
else
echo shar: Extracting \"'wmove.uu'\" \(14508 characters\)
sed "s/^X//" >'wmove.uu' <<'END_OF_FILE'
Xbegin 666 wmove
XM```#\P`````````"``````````$```CG```!D0```^D```CG2.=^_DOO`#0D2
XM2"0`2?D`````+'@`!"E.`$`I3P!,0JP`2)/)3J[^VB9`*6L`F``X2JL`K&<`)
XM`'`@#9"M``0&@````(`I0``$80`!>B!K`*S1R-'((F@`$-/)T\D@`G(`$ADI0
XM20!4T(%2@$)G4H`"0/_^G\!5@$)W"``@`E.`U($?L@``(`!3@E'(__8?O``@(
XM(`!3@A^Q(``@`%'*__@B3R\)8```;"EK`#H`!`:L````@``$80`!#F$``/@I&
XM0`!(+P`D0"`J`"1G$BQL!!@@0"(H```I00`X3J[_@B(J`"!G&B0\```#[4ZNX
XM_^(I0`!09PKEB"!`)V@`"`"D(&P`2"\(2&P``"!H`"0I:``$`%1'^0``!"QR)
XM`"`\````AF`")L%1R/_\3KH2H'``8`0@+P`$+P`@+``L9P0@0$Z03KH'UBQXY
XM``0B;`083J[^8DJL!"!G"")L!"!.KOYB2JP$)&<((FP$)$ZN_F)*K`!89P@B?
XM;`!83J[^8DJL`$AG)"(L`#QG!$ZN_]PB+`!09P1.KO_<+'@`!$ZN_WPB;`!(*
XM3J[^AB`?+FP`3$S??WY.=7!D8(!!ZP!<3J[^@$'K`%Q.KOZ,3G5#[`!<<`!.@
XMKOW8*4`$&&?:3G4``+_L``1E`!]&2&P`:$ZZ"!983TAX``I.N@1,6$].=4Y5=
XM``"_[``$90`?)"\M``A(;`"0+RT`#$ZZ"9A/[P`,4X!G`F&\3EU.=4Y5__Q('
XMYP`"O^P`!&4`'O9*K0`(9SX@;0`(2A!G-B!L!!PK:``\__Q*K?_\9S(@;?_\*
XM2J@`%F<2+RT`""\H`!9.N@RZ4$]*@&<6(&W__"M0__Q@U")L!!P@:0`X*TC_9
XM_$JM__QF("QX``1.KO]V+RT`"$AL`)1.N@=D4$](>``*3KH#FEA/("W__$S?4
XM0`!.74YU3E7__$CG``*_[``$90`>9$JM``AG/B!M``A*$&<V(&T`#"MH``3_R
XM_$JM__QG,B!M__Q*J``@9Q(O+0`(+R@`($ZZ#"A03TJ`9Q8@;?_\*U#__&#4)
XM(FP$'"!I`#0K2/_\2JW__&8J+'@`!$ZN_W8@;0`,+R@`%B\M``A(;`"L3KH&,
XMRD_O``Q(>``*3KH"_EA/+'@`!$ZN_W8@+?_\3-]``$Y=3G5.5?_H2.<X(K_L%
XM``1E`!W`D<@K2/_X*TC__"(M``@,@0````-M"`R!````!6\$80#^4B!M``PO1
XM*``$2&W_]&$`_F!03R!M``PO*``(2&W_\&$`_DY03R(M``@,@0````-O&"!M5
XM``Q*J``,9PX@:``,$!!*`&<$*TC__`R!````!&\8(&T`#$JH`!!G#B!H`!`0F
XM$$H`9P0K2/_X0^P`U'``+'@`!$ZN_=@I0`0<2JP$'&<``4`L>``$3J[_?"\M=
XM__AA`/X(6$\O`"\M__PK0/_H80#^BE!/*T#_["QX``1.KO]V(&W_[#`H``1(P
XMP$2`)"W_]+2`;`0K0/_T,"@`!DC`1(`D+?_PM(!L!"M`__`P*``$2,`B+?_T8
XMTH`T*``(2,+2@B)M_^@V*0`,2,.R@V\(EH*6@"M#__0P*``&2,`B+?_PTH`TE
XM*``*2,+2@C8I``Y(P[*#;PB6@I:`*T/_\"1H`"XO*@`6+R@`($AL`.9.N@4V\
XM3^\`#"!M_^PP*``$2,`R*``&2,$O`2\`2&P!!$ZZ!19/[P`,2JW_]&8&2JW_@
XM\&=$(&W_[#`H``1(P"(M__30@30H``9(PB8M__#4@R\#+P$O`B\`2&P!($ZZN
XM!-I/[P`4(&W_["`M__0B+?_P+&P$'$ZN_U@B;`0<+'@`!$ZN_F),WT0<3EU.G
XM=4CG,#(L>0``!!P@;P`8(F\`'"1O`"`F;P`D("\`*"(O`"PD+P`P)B\`-$ZN'
XM_J1,WTP,3G5.5?_\2.<@`'``*4``&$JM``AK)"0M``BTK`.$;!HB`N>!0>P%8
XM!")(T\%*D6<*(@+G@='!(`A@"'`)*4`"S'``3-\`!$Y=3G4`````````````Y
XM``````````````````!*K`0<9A)#[`*X<``L>``$3J[]V"E`!!PI;`!4`FQ((
XM>``H2'@`^G``+P`O`$AL`J0O`$AL`HHO`$ZZ_S)/[P`@2'@`%$ZZ&S)83TYU*
XM````````````````3E7_]$CG`"!%[`+LM/P``&<V""H``@`;9BH(*@`!`!MGE
XM(B`J``20J@`0*T#_^$J`9Q(O`"\J`!`O*@`<3KH)BD_O``PD4F#$+RT`"$ZZ7
XM&M)83TS?!`!.74YU``!G/B!M``AP84Y5```O+0`(80983TY=3G5.5?_L2.<#^
XM("XM``A*AVX&<`!@``#$#(<````(;`)^""`'(`=6@.2`Y8`N`$'L`WPD4"M(9
XM__BT_```9TXB*@`$LH=M/K*'9A(@4B)M__@BB)^L`X`@"F```(`@*@`$D(<,L
XM@`````AM&B!*($K1QR"2(4``!")M__@BB)^L`X`@"F!6*TK_^"128*P@!R(L3
XM!"@@!]"!4X!.NAD8(BP$*$ZZ&>Q0@"P`(`8@!E:`Y(#E@"P`+P9.N@"B6$\K[
XM0/_P2H!G%"\&+P!.N@,B4$\O!V$`_S!83V`"<`!,WP3`3EU.=2!M``A*$&<V,
XM(&T`#$Y5```B+0`(#($````P;0P,@0```#EN!'`!8`)P`$Y=3G4``$Y5__8OY
XM+0`(3KK]NEA/*T#_]DJ`9@1P_V`J+RT`$"\M``P@;?_V+R@`!$ZZ&OQ/[P`,!
XM*T#_^DJL`!AG!'#_8`0@+?_Z3EU.=4Y5__@@+0`(!H`````,+T```"`O``!R5
XM`"QX``1.KO\Z*T#__$JM__QF!'``8#0@+0`(!H`````,(&W__"%```@O"$ALF
XM!"QA``$(4$]*K`-P9@8I;?_\`W`@;?_\T/P`#"`(3EU.=4Y5__PO+0`(89!83
XM3RM`__Q*@&8&,'S__R`(3EU.=4Y5__A(YP$@80``@'``*4``$"E```@I0``,%
XM*4`#?"E``X`I0`-T*4`#<"E``WA*K`-H9TP@+`0H(BP#:-*`4X$@`2(L!"A.(
XMNA>,(BP$*$ZZ&&!0@"X`(`<@!U:`Y(#E@"X`+P=A`/\66$\D0+3\``!F!'#_P
XM8`PO!R\*3KH!>%!/<`!,WP2`3EU.=4Y5__@K;`0L__Q*K?_\9R0@;?_\*U#_C
XM^")M__P@;?_\("@`""QX``1.KO\N*VW_^/_\8-:1R"E(!#`I2`0L3EU.=4Y5;
XM``!(YP`@(FT`""!I``0B;0`,(T@`!)'((H@D;0`(2I)F`B2)2JH`!&<&(&H`Y
XM!""))4D`!$S?!`!.74YU```K2/_X*TC__"(M``@,@0````-M"`R!````!6\$U
XM80!P84Y5``!2K`0X4ZP#&B`L`QI*@&L4(&P#$E*L`Q(@+0`($(!R`!(08!@@B
XM+0`(`H````#_2&P##B\`3KH&>E!/(@!.74YU3E4``$*L!#A(;0`,+RT`"$AZ5
XM_ZI.NA!43^\`#$AL`PY(>/__3KH&2E!/("P$.$Y=3G4``$Y5__@O+0`(3KK[0
XM2EA/*T#__$J`9@1P_V`J+RT`$"\M``P@;?_\+R@`!$ZZ%^Q/[P`,*T#_^$JLH
XM`!AG!'#_8`0@+?_X3EU.=0```````G!A3E7__"`M``PO`"\M``@K0/_\8090"
XM3TY=3G5.5?_H2.<A,"XM``Q*AVX&</]@``#R#(<````(;`)^""`'(`=6@.2`+
XMY8`N`"!M``@K2/_TT<??K`.`0^P#?"11*TC_\"M)__BT_```9P``HB!*("H`1
XM!"!*T<`K2/_L)"W_\+7"8Q8B;?_T(HHC1P`$)FW_^":)<`!@``",M<)F'B)2M
XM)FW_]":)("H`!"(`TH<G00`$(FW_^"*+<`!@:")M__2SR&0(GZP#@'#_8%BSF
XMR&8N2I)G#B(2M(%C")^L`X!P_V!"WZH`!$J29Q"TDF8,($(@*``$T:H`!"209
XM<`!@)BM*__@K;?_L_^@D4F``_UH@;?_X(*W_])'((FW_]"*((T<`!"`(3-\,1
XMA$Y=3G5.5?_H2.<P`"EM``@$/$'M`!!"K?_\*TC_["!M``Q*$&<``29P`!`00
XM4JT`#$'L`5W1P!(0*T#_^`@!``-FW`R`````)68``,@@;0`,#!``)68R<``@:
XM;`0\$!!2K`0\*T#_^$'L`5W1[?_X$!`(```#9N`,K0```"7_^&>>("W__&``?
XM`,H@;0`,#!``*F<,*VW_[/_H6*W_[&`*D\E2K0`,*TG_Z$*M__0O+?_H2&W_[
XM]$AZ`*(O+0`,3KH.HD_O`!`K0/_P2H!6P40!2(%(P4J!9P0K0``,)BW_]`R#:
XM_____V882H%G!%*M__Q*K?_\;P8@+?_\8%9P_V!22H-G!%.L!#Q*K?_P9C@@+
XM+?_\8#YP`"!L!#P0$"M`__12K`0\0>P!7='M__00$`@```-FX"(M__2RK?_X#
XM9P#^XB`M__Q@#%*M__Q@`/[4("W__$S?``Q.74YU3E7__'``(&P$/!`04JP$0
XM/"M`__Q*@&8"</].74YU```DB4JJ``1P84Y5__!(YR``<``K0/_\*T#_^"M`K
XM__`@;0`($A`,`0`M9@QP`2M`__@K0/_P8`P,`0`K9@9P`2M`__AP`"!M``@B)
XM+?_X$#`8`"\`3KKZ+%A/2H!G*B`M__QR"DZZ$[PB+?_X4JW_^'0`(&T`"!0P_
XM&`#0@@2`````,"M`__Q@O$JM__!G!$2M__P@;0`,(*W__"`M__A,WP`$3EU.J
XM=4Y5__)(YP`@0BW_^W`(*T#__%.M__P@+0`,(@`"@0````]![`+0T<$B+?_\"
XM&Y`8\^B`*T``#`*`#____RM```Q*K0`,9LQ![?_ST>W__")()&T`"!399OQPJ
XM")"M__Q,WP0`3EU.=4Y5```O+0`,+RT`"&&,4$].74YU``!.5?_P2.<@('`+"
XM*T#_\$(M__]3K?_P("T`#"(``H$````'!H$````P)"W_\!N!*/3F@"M```P")
XM@!____\K0``,2JT`#&;,0>W_]-'M__`B2"1M``@4V6;\<`N0K?_P3-\$!$Y=M
XM3G5.50``+RT`#"\M``AAC%!/3EU.=0``3E7_\$CG`"!P"RM`__!"+?__4ZW_.
XM\"`M``QR"DZZ$;P&@0```#`@+?_P&X$(]"`M``QR"DZZ$:0K0``,2JT`#&;0G
XM0>W_]-'M__`B2"1M``@4V6;\<`N0K?_P3-\$`$Y=3G4``"!O``0B;P`(<`!RR
XM`!`8$AD,``!A;0H,``!Z;@0$```@#`$`86T*#`$`>FX$!`$`()"!9@1*`6;46
XM3G4``$Y5__A(YP$`(&T`#$H89OQ3B)'M``PN""!M``A*&&;\4XB1[0`((`@B)
XM;0`(T\`K2?_X(BT`$+Z!8P(N`2`'(&T`#&`"$MA3@&3Z(&W_^$(P>``@+0`(E
XM3-\`@$Y=3G4``$Y5__PK;0`(__P@;?_\2A!G&'``$!`O`$ZZ`!I83R!M__P03
XM@%*M__Q@X"`M``A.74YU```@+P`$#```86T*#```>FX$!```($YU``!.5?_XM
XM+RT`"$ZZ]7983RM`__A*@&8$</]@2"!M__@(*``#``-G$DAX``)"IR\M``A.[
XMNO>*3^\`#"\M`!`O+0`,(&W_^"\H``1.NA)*3^\`#"M`__Q*K``89P1P_V`$8
XM("W__$Y=3G4``$Y5_^Q(YR`@)&T`#"`M``@B*@`8)`$"@@```#$K0/_T2H)GT
XM!G#_8``"R"`!`H```(``5L)$`DB"2,(;0O_^2JH`%&8``)((`0`"9@``BG``Y
XM)4``#`RM_____P`(9P`"DB\*3KH"E%A/2H!G#`CJ``4`&W#_8``">@CJ``$`T
XM&THM__YG#B`J`!0B`$2!)4$`#&`(("H`%"5```Q3J@`,("H`#$J`:Q0@:@`$H
XM4JH`!"`M``@0@'(`$A!@%B`M``@"@````/\O"B\`80#_-E!/(@`@`6```AP(K
XM*@`"`!MG:"(M``@,@?____]F!G``8``"`AM!__]*+?_^9R8,@0````IF'G`">
XM+P!(;`+D+RH`'"M`__!.NOZ$3^\`#"M`__A@''`!+P!(;?__+RH`'"M`__!.Z
XMNOYF3^\`#"M`__AP_RM```A@``#\".H``0`;2BW__F=6(BT`"`R!_____V=*8
XM5*H`#`R!````"F8B(&H`!%*J``00O``-2JH`#&L,+PI(>/__80#^?%!/4JH`T
XM#"!J``12J@`$("T`"!"`2JH`#&L``5!P_RM```@@*@`$D*H`$"M`__!*@&<``
XM`(((*@`&`!IG7DAX``)"IR\J`!Q.NO6&3^\`#"M`_^Q*+?_^9T)3K?_L("W_P
XM[$J`:S9"IR\`+RH`'$ZZ]6!/[P`,2'@``4AM__TO*@`<3KKWO$_O``Q*K``8%
XM9@P0+?_]#```&F?`3G$O+?_P+RH`$"\J`!Q.NOUJ3^\`#"M`__A@!G``*T#_[
XM^"(M__@,@?____]F"`CJ``4`&V`,LJW_\&<&".H`!``;2BW__F<.("H`%"(`H
XM1($E00`,8!@(*@`"`!MG"'``)4``#&`(("H`%"5```P@:@`0)4@`!"(M``@,S
XM@?____]G+%.J``P@*@`,2H!K$"!J``12J@`$$(%P`!`08!`"@0```/\O"B\!^
XM80#].%!/("H`&`*`````,$J`9P1P_V`2(BW_]`R!_____V8$<`!@`B`!3-\$V
XM!$Y=3G5.50``(&T`"$JH`!1G#`@H``,`&V8$<`!@/"\L`5A.NO,<6$\@;0`(N
XM(4``!"%``!!*@&8*<`PI0`+,</]@&"%L`5@`%`*H____\P`8<``A0``,(4``4
XM"$Y=3G4``&<``I(O"G!A3E7_\$CG`3`D;0`(#*P````@!$!L``"0$A(,`0`@O
XM9PP,`0`)9P8,`0`*9@12BF#H2A)G<B`L!$#E@%*L!$!![`1(T<`K2/_\#!(`=
XM(F8H4HH@BDH29PH,$@`B9P12BF#R2A)F#$AX``%.N@TJ6$]@G$(24HI@EB!M`
XM__P@BDH29Q@2$@P!`"!G$`P!``EG"@P!``IG!%**8.1*$F8"8`A"$E**8`#_L
XM:$JL!$!F!B!L`$A@!$'L!$@I2`1$2JP$0&8``(9![`-4(DA'[`3()MDFV2;9(
XM)MDVD29L`$@B:P`D2'@`*"\I``1(;`3(3KKZI$_O``Q![`3((@@D/````^XLE
XM;`083J[_XBE`!0@@+`4(*4`%$'($*4$%#"E`!1@I0044Y8`K0/_PD\DL>``$O
XM3J[^VBM`__0@;?_P(FW_]"-H``@`I'X`8#(L;`083J[_RBE`!0@L;`083J[_5
XMQ"E`!1!![`-F(@@D/````^TL;`083J[_XBE`!1A^!"`'(`<`@```@`&!K`4$P
XM(`<@!P"```"``H&L!0P`K```@`,%%$JL`NAG!'``8`8@/```@``N`$*L`P@@:
XM!R`'`(`````!*4`#!'`!*4`#*B`'(`<`@`````(I0`,F<`(I0`-,(`<@!P"``
XM````@"E``TA!^@Q&*4@`,"\L!$0O+`1`3KKME%!/0J=.NO!R6$],WPR`3EU.V
XM=0``2H!K$"!J``12J@`$$(%P`!`08!`"@0``3E7_Q$CG("!P`!M\`"#_^W(`$
XM*T'_]G3_*T+_\D'M_]`;0/_Q&T#__!M`__T;0/_^&T#__RM!_^0K0?_H*TC_L
XMS"!M``A*$&=4$!`"0`#_<AA=06M(L'L0"&;V3OL0!``C8```+``@8```'@`KF
XM8```$``M8````AM\``'__V`8&WP``?_^8!`;?``!__U@"!M\``'__$YQ4JT`?
XM"&"D(&T`"!(0#`$`,&8*&WP`,/_[4JT`""!M``@,$``J9A(B;0`,(%%8D2M0[
XM__92K0`(8!!(;?_V+PA.NO9>4$_1K0`((&T`"!(0#`$`+F8P4JT`""!M``@,^
XM$``J9A(B;0`,(%%8D2M0__)2K0`(8!!(;?_R+PA.NO8B4$_1K0`((&T`"!(0C
XM#`$`;&8,&WP``?_Q4JT`"&`*#`$`:&8$4JT`""!M``@0$%*M``@;0/_P`D``2
XM_W(P74%K``)NL'L0"&;T3OL0!`!C8``"1`!S8``!_`!88``!B@!X8``!A`!P]
XM8``!;`!O8``!&@!U8```\`!D8````DHM__%G#")M``P@45B1(!!@"B)M``P@F
XM45B1(!`K0/_L2H!J"G(!1*W_["M!_^A*K?_H9P1P+6`,2BW__F<$<"M@`G`@>
XM&T#_T'``$"W__B(M_^B"@'``$"W__8*`2H%G"%*M_\Q2K?_D+RW_["\M_\Q.9
XMNO;&4$\K0/_(2JW_\FH&<`$K0/_R("W_R"(M__*2@"M!_\1*@6\R(&W_S")(O
XMT\$B`"1(8`(2VE.!9/IP`!`M__LB+?_$(&W_S&`"$,!3@63Z("W_\BM`_\C18
XMK?_D0>W_T"M(_\Q*+?__9P`!7!M\`"#_^V```5)*+?_Q9PPB;0`,(%%8D2`0G
XM8`HB;0`,(%%8D2`0*T#_[&``_UY*+?_Q9PPB;0`,(%%8D2`08`HB;0`,(%%8O
XMD2`0*T#_[$HM__QG$B!M_\P0O``P4JW_S'(!*T'_Y"\`+RW_S$ZZ]7!03RM`O
XM_\A@`/\D&WP`,/_[2JW_\FH&<`@K0/_R2BW_\6<,(FT`#"!16)$@$&`*(FT`O
XM#"!16)$@$"M`_^Q*+?_\9QX@;?_,$+P`,%*M_\P@;?_,$+P`>%*M_\QR`BM!'
XM_^0O`"\M_\Q.NO2*4$\K0/_(#"T`6/_P9@#^M$AM_]!.NO9J6$]@`/ZF(FT`.
XM#"!16)$B4"M)_\RR_```9@A![`-L*TC_S"!M_\Q*&&;\4XB1[?_,*TC_Y$JM:
XM__)K+B(M__*QP6\F*T'_Y&`@<`$K0/_D(FT`#"!16)$@$!M`_]!"+?_18`9P#
XM`&```*@B+?_D)"W_]K2!;`AP`"M`__9@!).M__9*+?__9T)3K?_D("W_Y$J`-
XM:QAP`"!M_\P0$%*M_\PO`"!M`!!.D%A/8-Q3K?_V("W_]DJ`:U1P`!`M__LO8
XM`"!M`!!.D%A/8.)3K?_V("W_]DJ`:Q)P`!`M__LO`"!M`!!.D%A/8.)3K?_D_
XM("W_Y$J`:QAP`"!M_\P0$%*M_\PO`"!M`!!.D%A/8-P@+0`(3-\$!$Y=3G5.`
XM5?_V*VT`$/_V(&T`#!`04JT`#!M`__]*`&=V#```)68P(&T`#`P0`"5F!E*MW
XM``Q@("\M``A(;?_V+PAA`/M,3^\`#"M`__I*@&<&*T``#&"X2JP`-&<F""T`9
XM!___9QYP`!`M__\O`"!M``A.D%A/(&T`#!`04JT`#!M`__]P`!`M__\O`"!M"
XM``A.D%A/8`#_>DY=3G4@;0`,3I!P84Y5_^!(YR``<`!R`"!M``@2$$'L`5W1B
XMP1(0*T#_]"M`__`(`0`"9S@@+?_P<@I.N@8(<@`@;0`($A!2K0`(`H$````/5
XMT($K0/_P<``@;0`($!!![`%=T<`0$`@```)FR"!M``@2$`P!`&QF#%*M``AP=
XM`2M`__1@"@P!`&AF!%*M``@@;0`,3I`K0/_\(&T`"`P0`&-G'$'L`5W1[?_\G
XM$!`(```#9PP@;0`,3I`K0/_\8.0B+?_\#('_____9@P@;0`0((%P`&``!(P@"
XM;0`($!`"0`#_<C9=06L`!&:P>Q`(9O1.^Q`$`'-@``0.`&-@``.D`&A@``,DI
XM`%A@``&D`'A@``&>`'!@``&,`&]@``#V`&1@```.`'5@```"0JW_[&!*<``K^
XM0/_L2JW_\&<*#*T````!__!O-"0M__P,@@```"UG"`R"````*V8@#((````M^
XM9@1R_V`"(@`K0?_L(&T`#$Z04ZW_\"M`__Q![`%=("W__-'`$A`(`0`"9@P@E
XM;0`0((!P`&```\Q"K?_H("W_Z'(*3KH$HB(M__P"@0````_0@2M`_^@@;0`,(
XM3I`K0/_\4ZW_\"`M__!*@&<00>P!7='M__P0$`@```)FP$JM`!1G``-P2JW_?
XM[&H$1*W_Z$JM__1F$")M`!0@42`M_^@@@&```U`B;0`4(%$@K?_H8``#0B(MI
XM__P,@0```#!M"`R!````-V\,(&T`$""!<`!@``,R0JW_Z"`M_^CG@"(M__P"L
XM@0````?0@2M`_^@@;0`,3I`K0/_\4ZW_\"`M__!*@&<4(BW__`R!````,&T(T
XM#($````W;\!*K0`49P`"UDJM__1F$")M`!0@42`M_^@@@&```L`B;0`4(%$@;
XMK?_H8``"LDJM__!F!G`(*T#_\$'L`5T@+?_\T<`2$`@!``=F#"!M`!`@@'``!
XM8``"F"MM__S_^"!M``Q.D"M`__Q*K?_P9PH,K0````+_\&]*#*T````P__AFA
XM0`R`````>&<(#(````!89C`@;0`,3I!![`%=(DC3P!(1*T#__`@!``=F#")M&
XM`!`B@'``8``".$*M_^A3K?_P8$Q![`%=("W_^")(T\`2$0@!``)G#"(`!($`!
XM```P*T'_Z")(T\`2$0@!``!G#"(`!($````W*T'_Z-'`$A`(`0`!9PH$@```"
XM`%<K0/_H4ZW_\"`M__!*@&=N0>P!72`M__PB2-/`$A$(`0`'9UHB+?_HZ8$BY
XM2-/`%!$K0?_H"`(``F<,(@`$@0```#"#K?_H(DC3P!(1"`$``&<,(@`$@0``#
XM`#>#K?_HT<`2$`@!``%G"@2`````5X&M_^@@;0`,3I`K0/_\8(9*K0`49P`!B
XM4$JM__1F$")M`!0@42`M_^@@@&```3HB;0`4(%$@K?_H8``!+$'L`5T@+?_\;
XMT<`2$`@!``)F#"!M`!`@@'``8``!'D*M_^P@+?_L<@I.N@'T(BW__`*!````T
XM#]"!*T#_["!M``Q.D"M`__Q3K?_P("W_\$J`9Q!![`%=T>W__!`0"````F;`3
XM2JT`%&<``,(B;0`4(%$@+?_L,(!@``"R2JT`%&<.(FT`%"!14I$@+?_\$(!3D
XMK?_P("W_\$J`;R0@;0`,3I`K0/_\#(#_____9Q)*K0`49]PB;0`4(%%2D1"`H
XM8-`B+?_\#('_____9@H@;0`0((%P`&!F(&T`"%*((`A@7$JM`!1G#B)M`!0@]
XM45*1("W__!"`(&T`#$Z0*T#__%*`9QQ3K?_P("W_\$J`9Q!![`%=T>W__!`0.
XM"````V?"(FT`%"!10A!@!'``8!`@;0`0(*W__"!M``A2B"`(3-\`!$Y=3G5*!
XM@&H``!Y$@$J!:@``#$2!80``($2!3G5A```81(!$@4YU2H%J```,1(%A```&-
XM1(!.=2\"2$$T`68``")(0$A!2$(T`&<```:$P3`"2$`T`(3!,`)(0C(")!].S
XM=2\#=A`,00"`9```!N&944,,00@`9```!NF964,,02``9```!N6954-*06L`R
XM``;CF5-#-`#FJ$A"0D+FJDA#@,$V`#`"-`-(0<3!D()D```(4T/0@63^<@`R<
XM`TA#Y[A(0,-`)A\D'TYU+GD```!,3KD```7D+SP````43KD```8\($(B0R0`9
XM)@%(0DA#Q,'&P,#!U$-(0D)"T((F"20(3G5.5?_X2.<!('X`1>P%!+ZL`X1L<
XM'DJ29Q0(*@`"``-G`F`*+RH`!$ZZ`?A83U*'4(I@W"\M``PO+0`(3KK?EE!/;
XM3-\$@$Y=3G5.5?_\<``B/```,``L>``$3J[^S@*````P`"M`__Q*@&8$<`!@%
XM)$JL`#!G&B!L`#!.D$J`9@1P`&`00J=(>``43KK_=E!/("W__$Y=3G5AL$YU<
XM``!*K`0<9A)#[`0$<``L>``$3J[]V"E`!!PI;`!4`\1(>``\2'@`^G``+P`OK
XM`$AL`_!(;`/62&P#N"\`3KKC'$_O`"!3@&<$</]@`G``3G4``$Y5__Q(YP$`'
XM2JP`,&<$3KK_3$*L`!@B+0`()"T`#"8M`!`L;`083J[_UBX`#(?_____9A(LG
XM;`083J[_?"E``!AP!2E``LP@!TS?`(!.74YU3E7__$CG`0!*K``P9P1.NO[\-
XM0JP`&"(M``@D+0`,)BT`$"QL!!A.KO_0+@`,A_____]F$BQL!!A.KO]\*4``E
XM&'`%*4`"S"`'3-\`@$Y=3G5.5?_X2.<Q`DJL`#!G!$ZZ_JQ"K``8("T`$%.`Y
XM+T``$"(M``@D+0`,)B\`$"QL!!A.KO^^+@`,A_____]F$BQL!!A.KO]\*4``.
XM&'`6*4`"S"`M`!`,@`````)G'`R``````6<*2H!F(B`M``Q@'"`'(`?0K0`,_
XM8!(B+0`(=`!V`"QL!!A.KO^^3G%,WT",3EU.=0``3E4``$JL`#!G!$ZZ_APB\
XM+0`(+&P$&$ZN_]QP`$Y=3G4```/L`````@```````"$X```A+`````0````!Z
XM```A)@``!58```$2````#@````````/R```#Z@```0L`````````````````Q
XM`````````````````````````````````````````````````````````````
XM`````````````````````````````````````````````&1O<RYL:6)R87)YI
XM`%5S86=E.B`@5TU/5D4@9'@@9'D@6W=I;F1O=R!;<V-R965N75T*```E;&0`]
XM0V%N)W0@9FEN9"!S8W)E96X@)R5S)PH`0V%N)W0@9FEN9"!W:6YD;W<@)R5SC
XM)R!O;B!S8W)E96X@)R5S)PH``&EN='5I=&EO;BYL:6)R87)Y``I7:6YD;W<@\
XM)R5S)R!O;B!38W)E96X@)R5S)PH``"`@($]L9"!P;W-I=&EO;CH@("@E9"PE#
XM9"D*```@("!.97<@<&]S:71I;VXZ("`H)60L)60I"B`@($-H86YG960Z("`@M
XM("`@("@E9"PE9"D*"@```````@``("`@("`@("`@*"@H*"@@("`@("`@("`@-
XM("`@("`@("!($!`0$!`0$!`0$!`0$!`0A(2$A(2$A(2$A!`0$!`0$!"!@8&!4
XM@8$!`0$!`0$!`0$!`0$!`0$!`0$!`1`0$!`0$(*"@H*"@@("`@("`@("`@("8
XM`@("`@("`@("$!`0$"`@("`@("`@("`H*"@H*"`@("`@("`@("`@("`@("`@Z
XM($@0$!`0$!`0$!`0$!`0$!"$A(2$A(2$A(2$$!`0$!`0$(&!@8&!@0$!`0$![
XM`0$!`0$!`0$!`0$!`0$!$!`0$!`0@H*"@H*"`@("`@("`@("`@("`@("`@("?
XM`@(0$!`0(````/__````#@`.````````````````*BH@4W1A8VL@3W9E<F9LV
XM;W<@*BH``/__````!``$`````````G0```)@15A)5```__\````$``0`````X
XM```"G@````!I;G1U:71I;VXN;&EB<F%R>0`````````P,3(S-#4V-S@Y86)C9
XM9&5F``````T*`````(`````##@``````````````````````````````````7
XM`````````S``````````````````````````````````````````````````S
XM``````````````````````````````````````!C;VXZ,3`O,3`O,S(P+S@P&
XM+P`J```````````````````````````````````````````H*BH@57-E<B!!U
XM8F]R="!297%U97-T960@*BH``/__````#@`.`````````X@`````__\````$D
XM``0``````````````Z1#3TY424Y510``__\````$``0````````#S`````!!F
XM0D]25`#__P````0`!`````````/J`````&EN='5I=&EO;BYL:6)R87)Y````P
XM````````````````````````!`````/L````"0````$```/\```#X@```\@`L
X?``.P```##@```NP```*P```"F@```I8````````#\@$`.
X``
Xend
Xsize 10336
END_OF_FILE
if test 14508 -ne `wc -c <'wmove.uu'`; then
    echo shar: \"'wmove.uu'\" unpacked with wrong size!
fi
# end of 'wmove.uu'
fi
echo shar: End of archive 1 \(of 2\).
cp /dev/null ark1isdone
MISSING=""
for I in 1 2 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have unpacked both archives.
    rm -f ark[1-9]isdone
else
    echo You still need to unpack the following archives:
    echo "        " ${MISSING}
fi
##  End of shell archive.
exit 0
-- 
Mail submissions (sources or binaries) to <amiga@uunet.uu.net>.
Mail comments to the moderator at <amiga-request@uunet.uu.net>.
Post requests for sources, and general discussion to comp.sys.amiga.misc.