home *** CD-ROM | disk | FTP | other *** search
-
- [Date of last change 04/16/91 Release 1.7]
-
- [Note: 1.6 was never released...]
-
- UseNet CBIP Starter's Kit
-
- This kit contains what you will need to begin downloading files from
- comp.binaries.ibm.pc. This kit contains:
-
- 1) Instructions
- 2) BASIC source to create UUDECODE.COM
- 3) DEBUG script to create UUDECODE.COM
- 4) C source for UUDECODE
- 5) Documentation for UUDECODE
- 6) LOOZ 2.12, ZOO extractor, in uuencoded form
-
- You will need:
-
- 1) GW-BASIC or DEBUG (from MS-DOS)
- 2) File editor
-
- What to do:
-
- You will need to split this file into 5 parts. Each part is separated by a
- line stating "---CUT HERE---" and a short description. Using a text editor,
- separate the parts for the BASIC and DEBUG sources and the LOOZ extractor.
- If you have a GW-BASIC interpreter, run the UUDECODE.BAS program, which will
- create UUDECODE.COM. If you have the MS-DOS DEBUG program, create
- UUDECODE.COM by saving the DEBUG script below as UUDECODE.DBG and feeding it
- to DEBUG by giving the command
-
- DEBUG < UUDECODE.DBG
-
- This will create UUDECODE.COM. You can alternately compile UUDECODE.C.
-
- Then use the UUDECODE program to decode LOOZ into executable form by saving
- the LOOZ.UUE file and saying
-
- UUDECODE LOOZ.UUE
-
- This will create LOOZ212.EXE, which can be used to extract ZOO archives by
- specifying
-
- LOOZ212 X FILENAME
-
- NOTE: This file is for the purpose of ease of use on any system. Although
- other formats (such as shar files) are easier to handle, they present a
- problem on the portability between systems.
-
- ---CUT HERE--- Save as UUDECODE.BAS and run under GW-BASIC
- 100 REM - BASIC PROGRAM TO CREATE UUDECODE.COM v2.0 (a fast uudecoder)
- 105 REM UUDECODE.BAS created by w8sdz@WSMR-SIMTEL20.ARMY.MIL (Keith Petersen)
- 110 CLS:PRINT "Creating UUDECODE.COM. See UUDECODE.DOC for instructions."
- 115 OPEN "UUDECODE.COM" AS #1 LEN = 1
- 120 FIELD #1, 1 AS A$: CHECKSUM#=0
- 130 FOR I = 1 TO 73
- 140 LINESUM#=0: LOCATE 2,3: PRINT "Countdown: " 73 - I ;
- 150 FOR J = 1 TO 16: READ BYTE$: CHECKSUM#=CHECKSUM#+VAL("&H"+BYTE$)
- 160 LINESUM#=LINESUM#+VAL("&H"+BYTE$)
- 170 IF (BYTE < 256) THEN LSET A$=CHR$(VAL("&H"+BYTE$)): PUT #1
- 180 NEXT J
- 190 READ LINETOT$: LINECHECK# = VAL("&H"+LINETOT$)
- 200 IF LINECHECK# = LINESUM# THEN GOTO 220
- 210 LOCATE 4,2: PRINT "Error in line #" ; 260 + 10 * I: GOTO 260
- 220 NEXT I
- 230 CLOSE: READ FILETOT$ : FILECHECK# = VAL(FILETOT$)
- 240 IF CHECKSUM# <> FILECHECK# THEN GOTO 260
- 250 PRINT: PRINT "UUDECODE.COM created successfully": SYSTEM
- 260 PRINT: PRINT "UUDECODE.COM is not valid!": END
- 270 DATA EB,5F,90,49,6E,70,75,74,20,66,69,6C,65,20,65,72, 6A1
- 280 DATA 72,6F,72,2E,4F,75,74,70,75,74,20,66,69,6C,65,20, 5F2
- 290 DATA 65,72,72,6F,72,2E,73,74,61,72,74,20,6E,6F,74,20, 617
- 300 DATA 66,6F,75,6E,64,2E,45,6E,64,20,6E,6F,74,20,66,6F, 5C7
- 310 DATA 75,6E,64,2E,20,65,78,69,73,74,73,2E,20,41,62,6F, 595
- 320 DATA 72,74,69,6E,67,21, 0, 0, 0, 0,AC, 3,AC, 3,5C, 3, 402
- 330 DATA 0,E8,FA, 1,E8,54, 1,BF,5C, 3,E8,D1, 0,AD,3D,62, 743
- 340 DATA 65,75,F4,AD,3D,67,69,75,EE,AD,3D,6E,20,75,E8,BF, 87F
- 350 DATA 5C, 3,B4,20,AC,3A,C4,76,FB,AC,3A,C4,75,FB,AC,3A, 84E
- 360 DATA C4,76,FB,3A,C4,74, 4,AA,AC,EB,F8,BA,5C, 3,33,C9, 8F9
- 370 DATA 88, D,80,3E,60, 1,FF,74,1E,B4,4E,CD,21,3C, 2,74, 5E7
- 380 DATA 16,3C,12,74,12,8B,CF,2B,CA,E8,2F, 1,BA,44, 1,B9, 609
- 390 DATA 12, 0,B0, 5,E9,16, 1,B4,3C,CD,21,73, 3,E9,E3, 0, 5E7
- 400 DATA A3,58, 1,BF,5C, 3,E8,65, 0,AC, A,C0,74,48,BB,20, 674
- 410 DATA 20,2A,C3, A,C0,74,3F,32,E4,8B,E8,B9, 4, 6,AC,8A, 70C
- 420 DATA E0,AC,8A,D0,2B,C3,D0,E4,D0,E4,D2,E8, A,C4,AA,4D, ABB
- 430 DATA 74,D4,8A,E2,AC,8A,D0,2B,C3,D2,E4,D0,E8,D0,E8, A, AD8
- 440 DATA C4,AA,4D,74,C1,8A,E2,AC,2B,C3,8A,CD,D2,E4, A,C4, 9D1
- 450 DATA AA,4D,75,C7,EB,B0,E8,15, 0,AD,3D,65,6E,75, 5,AC, 7AE
- 460 DATA 3C,64,74, 3,E8,AE, 0,E8,61, 0,B4,4C,CD,21,8B,36, 6A5
- 470 DATA 5A, 1,89,3E,5E, 1,BD,50, 0,BF, C, 3,33,C0,AB,B9, 5B3
- 480 DATA 27, 0,B8,20,20,F3,AB,BF, C, 3,3B,36,5C, 1,72, 6, 4D1
- 490 DATA E8,38, 0,E8,55, 0,AC,3C,60,75, 4,B0,20,EB, 8,3C, 61D
- 500 DATA D,74,1B,3C, A,74,18,AA,4D,75,DF,3B,36,5C, 1,72, 4F9
- 510 DATA 3,E8,37, 0,AC,3C, A,75,F2,BF,5C, 3,EB,B4,46,89, 707
- 520 DATA 36,5A, 1,8B,3E,5E, 1,BE, C, 3,C3,BA,5C, 3,8B,CA, 5B7
- 530 DATA 87, E,5E, 1,2B,CA,76, A,8B,1E,58, 1,B4,40,CD,21, 54D
- 540 DATA 72, 1,C3,BA,14, 1,B9,12, 0,EB,22,BA,AC, 3,B9,54, 653
- 550 DATA FA,8B,1E,56, 1,B4,3F,CD,21,72, C, B,C0,74, 8,8B, 62B
- 560 DATA F2, 3,C6,A3,5C, 1,C3,BA, 3, 1,B9,11, 0,50,E8, A, 648
- 570 DATA 0,58,E9,55,FF,BA,36, 1,B9, E, 0,52,51,BA,3E, 3, 5EB
- 580 DATA B9, 2, 0,90,E8, C, 0,59,5A,E8, 7, 0,BA,3E, 3,B9, 595
- 590 DATA 2, 0,90,BB, 2, 0,B4,40,CD,21,C3,90, D, A,54,68, 557
- 600 DATA 69,73,20,50,72,6F,67,72,61,6D,20,52,65,71,75,69, 5FA
- 610 DATA 72,65,73,20,44,4F,53,20,56,65,72,73,69,6F,6E,20, 576
- 620 DATA 32,2E,30,20,6F,72,20,68,69,67,68,65,72,2E, D, A, 46D
- 630 DATA 24, D, A,49,6E,70,75,74,20,70,61,74,68,2F,66,69, 516
- 640 DATA 6C,65,3A,20,20,4E,6F,20,61,63,74,69,6F,6E,B4,30, 58A
- 650 DATA CD,21,3C, 2,73, C,BA, C, 3,B4, 9,CD,21,B8, 1,4C, 524
- 660 DATA CD,21,E8,46, 0,73,33,BA,68, 4,B9,1B, 1,90,E8,6A, 69F
- 670 DATA FF,BA,41, 3,B9,14, 0,BB, 2, 0,B4,40,CD,21,BF,7F, 6A7
- 680 DATA 0,C6, 5,50,8B,D7,B4, A,CD,21,E8,1E, 0,73, B,BA, 667
- 690 DATA 55, 3,B9, 9, 0,B0, 1,E9,33,FF,BA, 4, 4,B8, 0,3D, 59D
- 700 DATA CD,21,72, 4,A3,56, 1,C3,E9,1C,FF,BE,80, 0,BF, 4, 726
- 710 DATA 4,FC,AC, A,C0,74,2F,B4,20,AC,3A,C4,76,FB,3A,C4, 806
- 720 DATA 76,26,3C,2F,74, 4,3C,2D,75,18,8B,D0,8B, 4,3C,3F, 4DA
- 730 DATA 74,1B,24,5F,3D,4F,20,8B,C2,75, 7,F6,16,60, 1,46, 53A
- 740 DATA 46,AC,AA,AC,EB,D8,F9,C3,C6, 5, 0,F8,C3,BA,68, 4, 973
- 750 DATA E9,66,FF,90,55,55,44,45,43,4F,44,45,20,76,32,2E, 622
- 760 DATA 30, 0,4F,72,69,67,69,6E,61,6C,6C,79,20,62,79,20, 565
- 770 DATA 54,68,65,6F,64,6F,72,65,20,41,2E,20,4B,61,6C,64, 565
- 780 DATA 69,73, 0,54,68,6F,72,6F,75,67,68,6C,79,20,72,65, 608
- 790 DATA 68,61,63,6B,65,64,20,62,79,20,44,61,76,69,64,20, 583
- 800 DATA 50,20,4B,69,72,73,63,68,62,61,75,6D,2C,20,54,6F, 588
- 810 DATA 61,64,20,48,61,6C,6C, 0,55,55,44,45,43,4F,44,45, 4B4
- 820 DATA 20,5B,2D,3F,5D,5B,2D,6F,5D,20,5B,64,3A,5D,5B,5C, 4C5
- 830 DATA 70,61,74,68,5C,5D,62,69,6E,61,72,79,2E,55,55,45, 608
- 840 DATA 20,3C,52,45,54,55,52,4E,3E, D, A,55,73,69,6E,67, 497
- 850 DATA 20,74,68,65,20,66,69,6C,65,6E,61,6D,65,2E,74,79, 5DD
- 860 DATA 70,20,69,6E,20,74,68,65,20,22,62,65,67,69,6E,22, 531
- 870 DATA 20,6C,69,6E,65,2C, D, A,70,72,6F,64,75,63,65,73, 570
- 880 DATA 20,75,75,64,65,63,6F,64,65,64,20,66,69,6C,65,6E, 600
- 890 DATA 61,6D,65,2E,74,79,70,20,6F,6E,20,63,75,72,72,65, 5FC
- 900 DATA 6E,74,20,64,72,69,76,65,5C,70,61,74,68, D, A,28, 564
- 910 DATA 70,72,6F,76,69,64,69,6E,67,20,66,69,6C,65,6E,61, 661
- 920 DATA 6D,65,2E,74,79,70,20,64,6F,65,73,6E,27,74,20,61, 5B2
- 930 DATA 6C,72,65,61,64,79,20,65,78,69,73,74,29,2E, D, A, 53C
- 940 DATA 2D,6F,20,73,77,69,74,63,68,20,66,6F,72,63,65,73, 5F0
- 950 DATA 20,6F,76,65,72,77,72,69,74,65,20,6F,66,20,65,78, 5F9
- 960 DATA 69,73,74,69,6E,67,20,66,69,6C,65,6E,61,6D,65,2E, 61D
- 970 DATA 74,79,70, D, A,2D,3F,20,70,72,6F,64,75,63,65,73, 565
- 980 DATA 20,74,68,69,73,20,68,65,6C,70,20,6D,65,73,73,61, 5DA
- 990 DATA 67,65,2E, D, A,24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 135
- 1000 DATA 114365
- ---CUT HERE--- Save as UUDECODE.DBG and feed to DEBUG
- e 0100
- EB 5F 90 49 6E 70 75 74 20 66 69 6C 65 20 65 72
- e 0110
- 72 6F 72 2E 4F 75 74 70 75 74 20 66 69 6C 65 20
- e 0120
- 65 72 72 6F 72 2E 73 74 61 72 74 20 6E 6F 74 20
- e 0130
- 66 6F 75 6E 64 2E 45 6E 64 20 6E 6F 74 20 66 6F
- e 0140
- 75 6E 64 2E 20 65 78 69 73 74 73 2E 20 41 62 6F
- e 0150
- 72 74 69 6E 67 21 00 00 00 00 AC 03 AC 03 5C 03
- e 0160
- 00 E8 FA 01 E8 54 01 BF 5C 03 E8 D1 00 AD 3D 62
- e 0170
- 65 75 F4 AD 3D 67 69 75 EE AD 3D 6E 20 75 E8 BF
- e 0180
- 5C 03 B4 20 AC 3A C4 76 FB AC 3A C4 75 FB AC 3A
- e 0190
- C4 76 FB 3A C4 74 04 AA AC EB F8 BA 5C 03 33 C9
- e 01A0
- 88 0D 80 3E 60 01 FF 74 1E B4 4E CD 21 3C 02 74
- e 01B0
- 16 3C 12 74 12 8B CF 2B CA E8 2F 01 BA 44 01 B9
- e 01C0
- 12 00 B0 05 E9 16 01 B4 3C CD 21 73 03 E9 E3 00
- e 01D0
- A3 58 01 BF 5C 03 E8 65 00 AC 0A C0 74 48 BB 20
- e 01E0
- 20 2A C3 0A C0 74 3F 32 E4 8B E8 B9 04 06 AC 8A
- e 01F0
- E0 AC 8A D0 2B C3 D0 E4 D0 E4 D2 E8 0A C4 AA 4D
- e 0200
- 74 D4 8A E2 AC 8A D0 2B C3 D2 E4 D0 E8 D0 E8 0A
- e 0210
- C4 AA 4D 74 C1 8A E2 AC 2B C3 8A CD D2 E4 0A C4
- e 0220
- AA 4D 75 C7 EB B0 E8 15 00 AD 3D 65 6E 75 05 AC
- e 0230
- 3C 64 74 03 E8 AE 00 E8 61 00 B4 4C CD 21 8B 36
- e 0240
- 5A 01 89 3E 5E 01 BD 50 00 BF 0C 03 33 C0 AB B9
- e 0250
- 27 00 B8 20 20 F3 AB BF 0C 03 3B 36 5C 01 72 06
- e 0260
- E8 38 00 E8 55 00 AC 3C 60 75 04 B0 20 EB 08 3C
- e 0270
- 0D 74 1B 3C 0A 74 18 AA 4D 75 DF 3B 36 5C 01 72
- e 0280
- 03 E8 37 00 AC 3C 0A 75 F2 BF 5C 03 EB B4 46 89
- e 0290
- 36 5A 01 8B 3E 5E 01 BE 0C 03 C3 BA 5C 03 8B CA
- e 02A0
- 87 0E 5E 01 2B CA 76 0A 8B 1E 58 01 B4 40 CD 21
- e 02B0
- 72 01 C3 BA 14 01 B9 12 00 EB 22 BA AC 03 B9 54
- e 02C0
- FA 8B 1E 56 01 B4 3F CD 21 72 0C 0B C0 74 08 8B
- e 02D0
- F2 03 C6 A3 5C 01 C3 BA 03 01 B9 11 00 50 E8 0A
- e 02E0
- 00 58 E9 55 FF BA 36 01 B9 0E 00 52 51 BA 3E 03
- e 02F0
- B9 02 00 90 E8 0C 00 59 5A E8 07 00 BA 3E 03 B9
- e 0300
- 02 00 90 BB 02 00 B4 40 CD 21 C3 90 0D 0A 54 68
- e 0310
- 69 73 20 50 72 6F 67 72 61 6D 20 52 65 71 75 69
- e 0320
- 72 65 73 20 44 4F 53 20 56 65 72 73 69 6F 6E 20
- e 0330
- 32 2E 30 20 6F 72 20 68 69 67 68 65 72 2E 0D 0A
- e 0340
- 24 0D 0A 49 6E 70 75 74 20 70 61 74 68 2F 66 69
- e 0350
- 6C 65 3A 20 20 4E 6F 20 61 63 74 69 6F 6E B4 30
- e 0360
- CD 21 3C 02 73 0C BA 0C 03 B4 09 CD 21 B8 01 4C
- e 0370
- CD 21 E8 46 00 73 33 BA 68 04 B9 1B 01 90 E8 6A
- e 0380
- FF BA 41 03 B9 14 00 BB 02 00 B4 40 CD 21 BF 7F
- e 0390
- 00 C6 05 50 8B D7 B4 0A CD 21 E8 1E 00 73 0B BA
- e 03A0
- 55 03 B9 09 00 B0 01 E9 33 FF BA 04 04 B8 00 3D
- e 03B0
- CD 21 72 04 A3 56 01 C3 E9 1C FF BE 80 00 BF 04
- e 03C0
- 04 FC AC 0A C0 74 2F B4 20 AC 3A C4 76 FB 3A C4
- e 03D0
- 76 26 3C 2F 74 04 3C 2D 75 18 8B D0 8B 04 3C 3F
- e 03E0
- 74 1B 24 5F 3D 4F 20 8B C2 75 07 F6 16 60 01 46
- e 03F0
- 46 AC AA AC EB D8 F9 C3 C6 05 00 F8 C3 BA 68 04
- e 0400
- E9 66 FF 90 55 55 44 45 43 4F 44 45 20 76 32 2E
- e 0410
- 30 00 4F 72 69 67 69 6E 61 6C 6C 79 20 62 79 20
- e 0420
- 54 68 65 6F 64 6F 72 65 20 41 2E 20 4B 61 6C 64
- e 0430
- 69 73 00 54 68 6F 72 6F 75 67 68 6C 79 20 72 65
- e 0440
- 68 61 63 6B 65 64 20 62 79 20 44 61 76 69 64 20
- e 0450
- 50 20 4B 69 72 73 63 68 62 61 75 6D 2C 20 54 6F
- e 0460
- 61 64 20 48 61 6C 6C 00 55 55 44 45 43 4F 44 45
- e 0470
- 20 5B 2D 3F 5D 5B 2D 6F 5D 20 5B 64 3A 5D 5B 5C
- e 0480
- 70 61 74 68 5C 5D 62 69 6E 61 72 79 2E 55 55 45
- e 0490
- 20 3C 52 45 54 55 52 4E 3E 0D 0A 55 73 69 6E 67
- e 04A0
- 20 74 68 65 20 66 69 6C 65 6E 61 6D 65 2E 74 79
- e 04B0
- 70 20 69 6E 20 74 68 65 20 22 62 65 67 69 6E 22
- e 04C0
- 20 6C 69 6E 65 2C 0D 0A 70 72 6F 64 75 63 65 73
- e 04D0
- 20 75 75 64 65 63 6F 64 65 64 20 66 69 6C 65 6E
- e 04E0
- 61 6D 65 2E 74 79 70 20 6F 6E 20 63 75 72 72 65
- e 04F0
- 6E 74 20 64 72 69 76 65 5C 70 61 74 68 0D 0A 28
- e 0500
- 70 72 6F 76 69 64 69 6E 67 20 66 69 6C 65 6E 61
- e 0510
- 6D 65 2E 74 79 70 20 64 6F 65 73 6E 27 74 20 61
- e 0520
- 6C 72 65 61 64 79 20 65 78 69 73 74 29 2E 0D 0A
- e 0530
- 2D 6F 20 73 77 69 74 63 68 20 66 6F 72 63 65 73
- e 0540
- 20 6F 76 65 72 77 72 69 74 65 20 6F 66 20 65 78
- e 0550
- 69 73 74 69 6E 67 20 66 69 6C 65 6E 61 6D 65 2E
- e 0560
- 74 79 70 0D 0A 2D 3F 20 70 72 6F 64 75 63 65 73
- e 0570
- 20 74 68 69 73 20 68 65 6C 70 20 6D 65 73 73 61
- e 0580
- 67 65 2E 0D 0A 24
-
- r cx
- 0486
- n uudecode.com
- w
- q
- ---CUT HERE--- Save as UUDECODE.C and compile
- /*
- * Copyright (c) 1983 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
- /*
- * Modified 12 April 1990 by Mark Adler for use on MSDOS systems with
- * Microsoft C and Turbo C.
- *
- * Modifed 13 February 1991 by Greg Roelofs for use on VMS systems. As
- * with the MS-DOS version, the setting of the file mode has been disabled.
- * Compile and link normally (but note that the shared-image link option
- * produces a binary only 6 blocks long, as opposed to the 137-block one
- * produced by an ordinary link). To set up the VMS symbol to run the
- * program ("run uudecode filename" won't work), do:
- * uudecode :== "$disk:[directory]uudecode.exe"
- * and don't forget the leading "$" or it still won't work. The binaries
- * produced by this program are in VMS "stream-LF" format; this makes no
- * difference to VMS when running decoded executables, nor to VMS unzip,
- * but other programs such as zoo or arc may or may not require the file
- * to be "BILFed" (or "unBILFed" or whatever). Also, unlike the other
- * flavors, VMS files don't get overwritten (a higher version is created).
- */
-
- #ifndef lint
- static char sccsid[] = "@(#)uudecode.c 5.5 (Berkeley) 7/6/88";
- #endif /* not lint */
-
- #ifdef __MSDOS__ /* For Turbo C */
- #define MSDOS 1
- #endif
-
- /*
- * uudecode [input]
- *
- * create the specified file, decoding as you go.
- * used with uuencode.
- */
- #include <stdio.h>
-
- #ifdef VMS
- # include <types.h>
- # include <stat.h>
- #else
- # ifndef MSDOS /* i.e., UNIX */
- # include <pwd.h>
- # endif
- # include <sys/types.h> /* MSDOS or UNIX */
- # include <sys/stat.h>
- #endif
-
- /* single-character decode */
- #define DEC(c) (((c) - ' ') & 077)
-
- main(argc, argv)
- char **argv;
- {
- FILE *in, *out;
- int mode;
- char dest[128];
- char buf[80];
-
- /* optional input arg */
- if (argc > 1) {
- if ((in = fopen(argv[1], "r")) == NULL) {
- perror(argv[1]);
- exit(1);
- }
- argv++; argc--;
- } else
- in = stdin;
-
- if (argc != 1) {
- printf("Usage: uudecode [infile]\n");
- exit(2);
- }
-
- /* search for header line */
- for (;;) {
- if (fgets(buf, sizeof buf, in) == NULL) {
- fprintf(stderr, "No begin line\n");
- exit(3);
- }
- if (strncmp(buf, "begin ", 6) == 0)
- break;
- }
- (void)sscanf(buf, "begin %o %s", &mode, dest);
-
- #if !defined(MSDOS) && !defined(VMS) /* i.e., UNIX */
- /* handle ~user/file format */
- if (dest[0] == '~') {
- char *sl;
- struct passwd *getpwnam();
- struct passwd *user;
- char dnbuf[100], *index(), *strcat(), *strcpy();
-
- sl = index(dest, '/');
- if (sl == NULL) {
- fprintf(stderr, "Illegal ~user\n");
- exit(3);
- }
- *sl++ = 0;
- user = getpwnam(dest+1);
- if (user == NULL) {
- fprintf(stderr, "No such user as %s\n", dest);
- exit(4);
- }
- strcpy(dnbuf, user->pw_dir);
- strcat(dnbuf, "/");
- strcat(dnbuf, sl);
- strcpy(dest, dnbuf);
- }
- #endif /* !defined(MSDOS) && !defined(VMS) */
-
- /* create output file */
- #ifdef MSDOS
- out = fopen(dest, "wb"); /* Binary file */
- #else
- out = fopen(dest, "w");
- #endif
- if (out == NULL) {
- perror(dest);
- exit(4);
- }
- #if !defined(MSDOS) && !defined(VMS) /* i.e., UNIX */
- chmod(dest, mode);
- #endif
-
- decode(in, out);
-
- if (fgets(buf, sizeof buf, in) == NULL || strcmp(buf, "end\n")) {
- fprintf(stderr, "No end line\n");
- exit(5);
- }
- exit(0);
- }
-
- /*
- * copy from in to out, decoding as you go along.
- */
- decode(in, out)
- FILE *in;
- FILE *out;
- {
- char buf[80];
- char *bp;
- int n;
-
- for (;;) {
- /* for each input line */
- if (fgets(buf, sizeof buf, in) == NULL) {
- printf("Short file\n");
- exit(10);
- }
- n = DEC(buf[0]);
- if (n <= 0)
- break;
-
- bp = &buf[1];
- while (n > 0) {
- outdec(bp, out, n);
- bp += 4;
- n -= 3;
- }
- }
- }
-
- /*
- * output a group of 3 bytes (4 input characters).
- * the input chars are pointed to by p, they are to
- * be output to file f. n is used to tell us not to
- * output all of them at the end of the file.
- */
- outdec(p, f, n)
- char *p;
- FILE *f;
- {
- int c1, c2, c3;
-
- c1 = DEC(*p) << 2 | DEC(p[1]) >> 4;
- c2 = DEC(p[1]) << 4 | DEC(p[2]) >> 2;
- c3 = DEC(p[2]) << 6 | DEC(p[3]);
- if (n >= 1)
- putc(c1, f);
- if (n >= 2)
- putc(c2, f);
- if (n >= 3)
- putc(c3, f);
- }
-
- /*
- * Return the ptr in sp at which the character c appears;
- * NULL if not found
- */
-
- #define NULL 0
-
- char *
- index(sp, c)
- register char *sp, c;
- {
- do {
- if (*sp == c)
- return(sp);
- } while (*sp++);
- return(NULL);
- }
-
- ---CUT HERE--- Save as UUDECODE.DOC and read
-
- UUDECODE.DOC
- by David Kirschbaum <kirsch%maxemail@peo-mis-emh1.army.mil>
-
- UUDECODE uudecodes uuencoded files to original binary form. It is
- compatible with the Unix (and other) uuencode/uudecode utilities.
-
- Usage:
-
- UUDECODE<RETURN>
- Displays usage message, prompts for input file name.
-
- UUDECODE [-o ][d:][\path\]filename.uue
- Produces a uudecoded file, with the filename taken from
- within the uuencoded file (which might include a path),
- (provided the filename doesn't exist. Use the "-o"
- (or "/o") switch to force overwriting of any existing
- output file.)
-
- UUDECODE /? (or -?)
- Writes a brief help screen to STDOUT and terminates.
-
- Notes:
-
- UUDECODE checks for existing files with the same name as the newly
- created output file. It will produce an error message and abort if it
- finds one! (Use the "-o" switch to force overwriting existing files.)
-
- UUDECODE will accept an input path\filename up to 80 chars long, and will
- prompt if none is specified.
-
- A uudecoded filename is taken from the uuencoded source file and is
- written to the current directory (or to the path included in the file
- header).
-
- Input files may be any length.
-
- Uuencoded file headers (mailing headers, etc.) need not be removed.
- However, any spurious lines between the "begin" and "end" lines MUST
- be removed.
-
- Anything beyond the "end" line is ignored. If no "end" is found, the
- output file is saved, but an error message is displayed.
-
- Certain uuencoders append a "checksum" character to the end of each
- uuencoded line. UUDECODE ignores these.
-
- Uuencoded files generated or moved through a Unix system may have LF
- (ASCII 10) line endings instead of the DOS-convention CR/LF (ASCII
- 13/10) endings. UUDECODE will handle those LF ends of line as well.
- you MAY get a "end not found" message, but the uudecoded file will be
- intact.
-
- Certain systems and mailers will strip off trailing spaces on lines.
- UUDECODE attempts to replace them.
-
- ---CUT HERE--- Save as LOOZ.UUE and use UUDECODE
- begin 644 looz212.exe
- M35K&`1,`#0`@`$H$__]^!H``````````(@````$`^Q!R:@$```"5"```>`@`
- M`"((```5"```#@@``-<'``##!P``8A(``+8/``#=&0``YAL``.T;````````
- M````````````````````````````````````````````````````````````
- M````````````````````````````````````````````````````````````
- M````````````````````````````````````````````````````````````
- M````````````````````````````````````````````````````````````
- M````````````````````````````````````````````````````````````
- M````````````````````````````````````````````````````````````
- M````````````````````````````````````````````````````````````
- M````````````````````````````````````````````````````````````
- M````````````````````````````````````````````````````````````
- M``````````````````````"Z\P$NB1:Z`+0PS2&++@(`BQXL`([:HS``C`8N
- M`(D>*@")+D(`QP8T`/__BSYX`+L``3O[=P*+^XO?C-J!P[!(<A"_`!"Q!-/K
- M0ROJA]\[[W<#ZU60B]\#VHD>.@")'CX`T^>.THOGZ%@`,\`NC@:Z`+^6!+FP
- M2"O/\ZK_-B8`_S8D`/\V(@#HJ`10Z*D;+HX>N@"+[(I&`K1,S2&T0+L"`"Z.
- M'KH`S2'#N1X`D+H``.CI_[@#`%#HU/\``````````"Z/!KP`+HP>O@#\C@8N
- M`+Z``#/`B]B+T(O()JR+_I,FB`%#A]GH%0!W!W(_Z`X`=_D\('0$/`EU[#+`
- MZ^@+P'0'0JH*P'4!0X;@,L#YXQ@FK$DL(G01!"(\7'4))H`\(G4#)JQ)"_;#
- MZ7S_C,6+-B@`@\8"N0$`0XD>(@!#B\$#P@/;!0$`)?[_`]B+_"OX*^.'W8OL
- MB28D`(S0CL")?@"#Q0*.'BH`2?.D,L"JCMN'RKZ!`.,.B7X`@\4"K`K`JN#Z
- M=/`SP(E&`"Z.'KX`+O\FO`!5B^Q75K0+S2&AJB:+?@2+3@;C&BK_BM@R'='C
- MBY>J)"K_BMPSVHO#1^+IHZHF7E^+Y5W#M#_K!I"T0.L!D%6+[%=6BUX$BU8&
- MBTX(S2%S`[C__UY?B^5=P[0\N0``ZP>0N``]ZP&058OL5U:+5@2+VLTAZ]FT
- M/NONN`%7Z\"X`$+KN[1!Z^"T`NO<M`'KV+0:Z]15B^Q75HM6!+D``,TAN```
- MZZFT3NOJM$_KYHOLBT8"M$S-(5&+S^@8`EG'!FL```##58OL5U8>B2Y%`(S;
- MCL.+1@2C20"+1@:C2P#H"P"++D4`'UY?B^5=PXDF1P#'!ED`"0#'!EL```+'
- M!E4``@''!E<```#'!FD```#'!FL```"+'DD`BQ9V`+D`(+0_S2%S`^L:D.@4
- M`3T!`74A@SYK``!T!XL.:P#HE@$SP,.X`@"+)D<`P[@!`(LF1P##/0`!=2_H
- M5P'HXP"C3P"C40"B7@"B70"@7@"+/FL`@?\`('(%Z#[_*_\#/G0`JO\&:P#K
- MHZ-/`*-3`(X&30`[!E4`<A&A40"C3P"@70!0_P97`*%/`#W_`'89B]B+Z]'C
- M`]TFBD<"4/\&5P`FBP>C3P#KXHS8CL"A3P"B70"B7@!0BPY7`$&)#E<`XQ]8
- MBSYK`('_`"!R!>C+_BO_`SYT`*K_!FL`XN6)#E<`BQY5`(OKT>,#W0:.!DT`
- MH%X`)HA'`J%1`":)!P?_!E4`H5,`HU$`BQY5`#L>6P!R#X,^60`-=`C_!ED`
- MT29;`.GI_J%I`(O0`P99`*-I`(O"T>C1Z-'H@>('`#W]'W(P4@,660")%FD`
- MN0`@B^@KR`,&=@"+\(L^=@#SI(L>20"+UXO-M#_-(7,#Z;C^,\!:`P9V`(OP
- MK8O8K(O*XP;0Z-';XOJ+PXL>60"#ZPG1XR.'7P##QP99``D`QP9;```"QP95
- M``(!PU!345)04N@T_8/$!%I96UC#4%-14E97!E%1_S9T`/\V2P#H<`2#Q`99
- M.\%T`^E._HL6=`#HR?_'!FL````'7UY:65M8PU6+[$Q,N`$`4(U&_E#_=@3H
- M&?V#Q`:*1OZ8B^5=PU9758OL@^P$BW8(OP$`@WPD`'1<_W0B_W0@_W8*Z#C]
- M@\0&QT;\``#K,O]V"NBR_UF(1O\+_W0(N&X`4.BP`%G_=O_H&_U9@'[_"G4*
- ML`U0Z`[]64?K`C/__T;\BT0D.T;\=\8+_W4(N'$`4.B``%F+Y5U?7L/#5E=5
- MB^Q,3(M^"HMV"(/^`WQ0BT4"B4;^B]B`/VQT#HO8@#]X=`>+V(`_='4UBU[^
- M@#]X=0N`?P%X=06#_@1\(NCW`XO'!08`4(O&!?W_4/]V_O]U!.A`!8/$"#/`
- M4.BO_%FX>@!0Z`\`6;@!`%#HG_Q9B^5=7U[#5E6+[(MV!@OV=!!6Z`H965!6
- MN`$`4.@+_(OE75[#58OL@'X$974*N(L!4.C2_UGK#H!^!&9U"+B4`5#HPO]9
- M_W8&Z+O_6?]V".BT_UG_=@KHK?]9@'X$9G4(N`$`4.@W_%E=PU95B^R#?@P`
- M?0/I=0!_!H-^"@!V;8-^#`!\#G\'@7X*`"!V!;X`(.L#BW8*BU8,BT8*4E"+
- MQIE;62O8&\J)3@R)7@I6N*PF4/]V!NAM^XOE.\9T!;@#`.LK5KBL)E#H)ON+
- MY8-^"/YTFU:XK"90_W8(Z&L"B^4[QG4#Z8?_N`(`ZP(SP%U>PU9758OL@^P$
- MBWX,QT;\`0#'1OX``#/VZT*+WM'CBQF`/UYT!\=&_```ZQB+WM'CBP%`4/]V
- M".@S`%E9"\!T!#/`ZR.+WM'C_S'_=@CH'0!960O`=`7'1OX!`$8[=@I\N8M&
- M_@M&_(OE75]>PU9758OL@^P&BWX*BW8(B7;^ZQ&+7O[_-^BS`5F+7OZ(!_]&
- M_HM>_H`_`'7GB7[^ZQ&+7O[_-^B5`5F+7OZ(!_]&_HM>_H`_`'7G,\")1OR)
- M1OKK#(`\`'4%N`$`ZS]'1HH%.@1T[H`\`'0)@#T_=01'1NOL@#TJ=0E'B7[Z
- MB7;\Z]Z#?OP`=!.+7OR`/P!T"_]&_(MV_(M^^NO%,\"+Y5U?7L-658OL@WX(
- M`'PS?P>!?@80)W8JBU8(BT8&N00`FL4=``")5@B)1@:+5@R+1@JY!`":Q1T`
- M`(E6#(E&"NO'BT8&"T8(=00S]NLY,]*X"@!24/]V"/]V!HM6"(M&!BM&"AM6
- M##/)N^@#FNL=``!24)HW'0``!04`@](`4E":-QT``(OPB\9=7L-65U6+[$Q,
- MBWX0,_;K"8I&"(M>#H@`1COW?/.+1@X#QTB)1OZ+V,8'`/]._HOW3H-^#`!\
- M3G4&@WX*`')&,]*X"@!24/]V#/]V"IHO'0``@,`PBU[^B`?_3OXSTK@*`%)0
- M_W8,_W8*FC<=``")5@R)1@I."\)T!`OV=;2+1@H+1@QT/VZP>+7@[&`"I&
- M._=\]8O?`UX.QD?_`(MHOE75]>PU6+[(!^!$%\#X!^!%I_"8I&!)@%(`#K
- M!(I&!)A=PU9758OLBWX,@WX(_G0?@WX(_74=,_;K$8M>"HH`Q![`1B:(!_\&
- MP$9&._=\ZXO'ZPQ7_W8*_W8(Z*;XB^5=7U[#5E=5B^Q,3(M^"#/VT>?'1OX(
- M`.L;T>^+QS/&J0$`=`N+QM'H-0&@B_#K`M'N_T[^@W[^`'_?B\:+Y5U?7L-6
- M,_;K#E;HN?]9B][1XXF'JB1&@?X``7+L7L-65U6+[$Q,BW8,BWX*@WX(`'4=
- M5XO&NE``]^(%RD=0Z/8465F+WM'CQX<F1P$`ZV6+QKHP`/?B!<9&4.A?^%F+
- MWM'C@[\F1P!T%(O&NE``]^(%RD=0Z%OX68E&_NL&Z%;XB4;^@W[^_W4OB][1
- MXX._)D<`=!:+WM'CQX<F1P``B\:Z4`#WX@7*1^M)B][1X\>')D<``#/`ZSN+
- MWM'CQX<F1P``B\:Z4`#WX@4J1U"+QKI0`/?B!<I'4(O&NC``]^(%QD90Z!,`
- M@\0&B\:Z4`#WX@4J1XOE75]>PU9758OL@^P$BWX,_W8*5^@L%%E95^A*%%F)
- M1OR+\$X+]GP8B]Z`.2]T$8O>@#E<=`J+WH`Y.G0#3NODB\9`B4;^,_;K$(M>
- M"`/>BD<>BU[^`]Z(`4:#_@U\ZXM>_@/?QD<-`(OE75]>PU9758OL@>R^`8MV
- M"L>&%O\``,>&&/\``,9&W0#'1OP``,=&_@``@#QX=5*`?`%P=07'1OP!`(!\
- M`7AU0;@!`(E&_HE&_(M>#O\WC89<_U#H@Q-968M>#O\WC4:<4.AU$UE9N)P"
- M4(V&7/]0Z$(365FXH0)0C4:<4.@U$UE9_W8(C88<_U#H31-968V&'/]0Z&<3
- M68OXC88<_P/XC88<_SO'=!*`/2YT#8`]+W0(@#U<=`-/Z^:`/2YT#KBF`E"-
- MAAS_4.CJ$EE9C88<_XE&",=&\```QT;N```STHO"B5;LB4;JB4;ZB4;XBQXN
- M`([#B]@FBT<"HVQ(H2X`HVI(C-"C:DB+_(O'!0\`N00`T^@%*``!!FI(BQ9J
- M2(O#B1;"1J/`1J%L2"O"HVY(B\-0_W8(4.B(_8/$!C/`4%"X`0!0Z'K]@\0&
- MB88:_PO`=0/I!`G'AK3^``#'1MX``(U&"%"X`0!0_[8:_^A@^H/$!@O`=0;_
- M1M[IP`C'1N`!`,=&Z```QT;F```STHO"B5;DB4;BB4;V_[8:_^B1]5F)AK;^
- M/?__=1BXNP)0_[8:_[BL`E"P95#H1_F#Q`CIH@#_1OB#?OX`=16XR0)0_[8:
- M_[B^`E"P;5#H)OF#Q`BX(@!0C8:^_E#_MK;^Z!3U@\0&@;[2_MRG=0B!OM3^
- MQ/UT$S/`4%"XS0)0L&50Z/+X@\0(ZT;_MMC^_[;6_O^VMO[H*?6#Q`:X,P!0
- MC8;B_E#_MK;^Z,ST@\0&@;[B_MRG=0B!ON3^Q/UT(#/`4%"XWP)0L&50Z*KX
- M@\0(_[:V_NCB]%G_AAC_Z6D'BX;H_@N&ZOYU`^E4!XN6ZOZ+ANC^B9:\_HF&
- MNOZ#?OX`=#*`O@#_`'0#Z1\'C89<_U"-A@C_4.B7^5E9"\!U+8U&G%"-A@C_
- M4.B%^5E9"\!U&^GW!O]V#O]V#(V&"/]0Z`+Y@\0&"\!U`^G?!O]&WH`\;'0#
- MZ7`#@'P!9G4%N`$`ZP(SP(A&W8!^W0!T9,:&9/X`BX:T_O^&M/Z[!0"9]_L+
- MTG44@W[@`'4.N+L"4(V&9/Y0Z+@065F-A@C_4(V&9/Y0Z(0065F-A@C_4.C#
- M$%FZ#0`KT%*X]@)0C89D_E#HS1"#Q`:-AF3^4.B,]UGI[@*+5NR+1NH#AO;^
- M$Y;X_HE6[(E&ZHM6\(M&[@.&^OX3EOS^B5;PB4;N_T;Z_T;VBU;DBT;B`X;V
- M_A.6^/Z)5N2)1N*+5NB+1N8#AOK^$Y;\_HE6Z(E&YHN&\/ZY"0#3Z"5_`(F&
- M6/Z+AO#^N04`T^@E#P")AEK^BX;P_B4?`(F&7/Z+AO+^N0L`T^@E'P")AE[^
- MBX;R_KD%`-/H)3\`B89@_HN&\OXE'P#1X(F&8OZ#?N``=!"XS@%0Z,WV6;CW
- M`5#HQ?99_[;\_O^V^O[_MOC^_[;V_N@Y!X/$"+@``U"-AF3^4.B7#UE9N`,`
- M4(V&1/Y0BX9<_IE24+@@`%#H"OF#Q`I0C89D_E#H30]96;BY`E"-AF3^4.@_
- M#UE9C89D_E#H?@]9B_B-AF3^`_B+AEK^N@,`]^(#!LP!B89"_HO8B@>(!4?_
- MAD+^BYY"_HH'B`5'_X9"_HN>0OZ*!X@%1_^&0O[&!2!'Q@4`@[Y<_@!T/X.^
- M6OX`=#BX`P!0C89$_E`STKAD`%)0BX98_@50`)E24)HO'0``4E"X(`!0Z&KX
- M@\0*4(V&9/Y0Z*T.65GK(K@#`%"-AD3^4#/`4%"X(`!0Z$;X@\0*4(V&9/Y0
- MZ(D.65FXN0)0C89D_E#H>PY96;@#`%"-AD3^4(N&7OZ94E"X,`!0Z!/X@\0*
- M4(V&9/Y0Z%8.65FX`P-0C89D_E#H2`Y96;@#`%"-AD3^4(N&8/Z94E"X,`!0
- MZ.#W@\0*4(V&9/Y0Z",.65FX`P-0C89D_E#H%0Y96;@#`%"-AD3^4(N&8OZ9
- M4E"X,`!0Z*WW@\0*4(V&9/Y0Z/`-65F#O@;_`'00N`4#4(V&9/Y0Z-L-65GK
- M#KBY`E"-AF3^4.C+#5E9@+X`_P!T$+@'`U"-AF3^4.BV#5E9ZPZX``-0C89D
- M_E#HI@U968V&"/]0C89D_E#HEPU96;B[`E"-AF3^4.B)#5E9C89D_E#HK_19
- M@'P!8W4._[:V_HV&XOY0Z*WS65G'1N```.ED`X"^_OX!?PZ`OO[^`74@@+[_
- M_@!^&;B[`E"-A@C_4+B>`5"P95#HB/2#Q`CI-@.-A@C_4.B'!%F`/'1U`^FE
- M`(.^%O\`=`/IFP"#?OP`=`/ID@"-A@C_4.B$\%F)AKC^/?__=0/I?0!0Z(?P
- M6;@5`U"-A@C_4+@*`U"P;5#H,?2#Q`CH@_"(AK/^B(:R_H"^L_X-=`GH<?"(
- MAK/^Z_"P"E#H8?!9@+ZR_GET#H"^LOYN=`>`OK+^876S@+ZR_F%U!/^&%O^`
- MOK+^;G49N+L"4(V&"/]0N"4#4+!M4.C2\X/$".F``H`\='4)QX:X_O[_Z:0`
- M@W[\`'4#Z8X`@W[^`'4#Z7T`H6Y(,]*)5O2)1O*`ON?^`74.!>SY@]+_B5;T
- MB4;RZQ*+5O2+1O(%!O^#TO^)5O2)1O*+EOC^BX;V_@4/`(/2`+D$`)K%'0``
- M.U;T?Q=U!3M&\G<0@[[X_@%R&G<'@[[V_@!V$3/`4%"X+P-0L&90Z#KS@\0(
- MQX:X_OW_ZQ7'AKC^`0#K#8V&"/]0Z$7O68F&N/Z#OKC^_W49N$4#4(V&"/]0
- MN*P"4+!E4.@`\X/$".F;`?^V[O[_MNS^_[:V_N@V[X/$!L<&JB8``(-^_@!U
- M/(V&"/]0Z+;R68-^_`!T"KC)`E#HJ/)9ZR.-A@C_4.BV"UF+^.L)N+D"4.B1
- M\EE'@_\-?/*X5`-0Z(/R68"^Y_X`=1S_MOS^_[;Z_O^VN/[_MK;^Z,SR@\0(
- MB8;@_NM)@+[G_@%U+($^;D@4!G,(QX;@_@$`ZS*A;$@%[/FC30#_MKC^_[:V
- M_NCC[EE9B8;@_NL6N+L"4(V&"/]0N)X!4+!E4.@W\H/$"(.^X/X`=$R#?OP`
- M=0F-A@C_4.AO[EF#ON#^`744,\!04+A8`U"P9E#H"?*#Q`CII`"#?OP`=`/I
- MFP"XNP)0C88(_U"X:`-0L&50Z.?Q@\0(Z8(`BX;T_CL&JB9T#KAX`U#HLO%9
- M_X88_^MJ@#QT=0JXC@-0Z)_Q6>M;@W[\`'4<_[;R_O^V\/[_MKC^Z.OM@\0&
- MN),#4.A]\5GK.8-^_@!T,_^VMO[HS>U9_[;V_HM@4"`%"+1@Q(4/\V:DCH
- M=P*#Q`@SP%!0N)\#4+!F4.AB\8/$"(`\='0.@W[\`'4(_[:X_NB/[5G_MKS^
- M_[:Z_O^VMO[HB.V#Q`;I7/C_MK;^Z'+M68`\;'50BT;B"T;D=$BX]P%0Z/WP
- M6?]VZ/]VYO]VY/]VXNAU`8/$"+BR`U#HX_!9N`8`4(V&H/Y0BT;VF5)0N"``
- M4.A-\X/$"E#HQ?!9N+L#4.B]\%F`?MT`=`Z#?MX`=`BXNP)0Z*GP68-^_@!T
- M`^GW]H-^W@!T`^GN]KC&`U#HC_!9Z>/V@#QL=`/I>@"`?MT`=72#?O@!?FZX
- MU@-0Z'#P6?]V\/]V[O]V[/]VZNCH`(/$"+BR`U#H5O!9N`4`4(V&HOY0BT;X
- MF5)0N"``4.C`\H/$"E#H./!9N.<#4.@P\%FX!@!0C8:B_E"+1OJ94E"X(`!0
- MZ)KR@\0*4.@2\%FXNP-0Z`KP68-^_@!T$3/`4%"XQ@-0L&90Z!/P@\0(@[X8
- M_P!T"+CS`U#HY.]9_[88_^AT[%F+Y5U?7L-65U6+[$Q,,_^+=@CK1(`D?X`\
- M+G4*"_]T!<8$7^L!1\=&_B0"ZP/_1OZ+7OZ`/P!T!HH'.@1U[XM>_H`_`'41
- MB@28NQH`F??[B]J*AR0"B`1&@#P`=;>+Y5U?7L-658OL@^P\_W8,_W8*_W8(
- M_W8&Z%SQ@\0(B_"X"0!0C4;L4/]V"/]V!K@@`%#HR?Q`I0C4;$4.@R"%E9
- MN`4`4(U&[%"+QIE24+@@`%#HJ/Q`I0C4;$4.CL!UE9N!0$4(U&Q%#HWP=9
- M6;@)`%"-1NQ0_W8,_W8*N"``4.AY\8/$"E"-1L10Z+T'65F-1L10Z.3N68OE
- M75[#5E=5B^R#["J+%BX`,\")5O")1NZ+7@B.PXO8)H$_35IU(\=&_@$`_W8.
- MC4;\4(U&^E"-1OA0C4;V4/]V".A8`8/$#.L9QT;^``"A+@")1OJ)1O:+1O*)
- M1OC'1OP``3/V.78*=06_`0#K2;\!`.LR@WX*`'0]BUX,BQ^`.`!T%(M>#(L?
- MB@#$7NX#WR:(AX``1NL9,_:#1@P"_TX*.78*=`O$7NX#WR;&AX``($>#_W]\
- MO4_$7NX#WR;&AX``#8O'@,#_BU[N)HB'@``S]NL5L`#$7NX#WB:(1VR+7NX#
- MWB:(1UQ&@_X4?.;&1M<IQD;6`8M6\(M&[@6``(E6[(M&[@6!`(E&WHM&[@5<
- M`(E&X(M&[@5<`(E6YHU&YE"-1M90C4;64.B5!(/$!L9&URG&1M8!BU;PBT;N
- M!6P`B4;@C4;F4(U&UE"-1M90Z&\$@\0&@3YN2``0=@?'1O(``.L+H6Y(N00`
- MT^")1O*A;$@%!O^)1O3_=O[_=OS_=OK_=OC_=O90_W8._W8(_W;RZ#,!@\02
- MB^5=7U[#5E=5B^R#[!B+=@B+WH[#NPH`)HL'B4;^H6Q(*P8N`#M&_G,1,\!0
- M4+@8!%"P9E#H,NV#Q`BA+@`%$`")1OJ+WH[#NPX`)HL'`T;ZBUX*B0>+WH[#
- MNQ``)HL'BUX,B0>+WH[#NQ8`)HL'`T;ZBUX.B0>+WH[#NQ0`)HL'BUX0B0>+
- MWH[#NP8`)HL'B4;LBUX.BP>)1NZ+WH[#NQ@`)HL'B4;\B]Z.P[L(`":+![D$
- M`-/@B4;P,__K-8O>CL.+7OR+Q]'@T>`#V";$'XQ&ZHE>Z(M6Z@/6B\,#1O")
- M5NJ)1NC$7N@FBP<#1A0FB0='.W[L<L:+UHM&\(E6](E&\HO6,\")5OB)1O:+
- M?O#K$\1>\B:*!\1>]B:(!_]&]O]&\D<[?A)RZ(OE75]>PXOLZPN0````````
- M`````(M&"BZCDQF+1@PNHY49BT8.+J.7&8M&$"ZCF1F+1A(NHYL9H2X`'H[8
- MNH``M!K-(1^YO@&.1@B,PS/_OAT:'K@``([8_/.D'XX&+@".7@0S]K\``8M.
- M!KJT`8M&`H[3B^*+T%,SP%`NH9,9+HL6E1DNBSZ7&2Z+-ID9+HL>FQG+5U:_
- M``$S]OSSI%Y?CM"+XHS`CM@+VW4#,\!05U;+L/^T3,TA````````````````
- M````````````````````````````````````````````````````````````
- M````````````````````````````````````````````````````````````
- M````````````````````````````````````````````````````````````
- M````````````````````````````````````````````````````````````
- M````````````````````````````````````````````````````````````
- M````````````````````````````````````````````````````````````
- M````````````````````````````````````````````````````````````
- M````````````````````````````````````````````````````````````
- M``````````````````````````````````````````````````!5B^RT)HM6
- M!)KS&P``S2&:_QL``(OE7<-;68/I$('#``%14\M;68/!$('K``%14\M5B^R#
- M/BX$('4%N`$`ZQ.+1@2+'BX$T>.)AW!(_P8N!#/`7</'!C0```#+PU6+[*$N
- M!/\.+@0+P'0,BQXN!-'C_Y=P2.OI_Q8P!/\6,@3_%C0$_W8$Z"OD65W#58OL
- M@^P(C4;X4.CR`5F-1OA0_W8&_W8$Z`<`@\0&B^5=PU9758OL'HMV#/\T_W0&
- MBW8(BP2+7`*+3`2+5`:+?`J+=`@?!U7-(5V<G%8>!HY>_HMV#(\$CT0&BW8*
- MCT0(CT0.CT0,@60,`0")?`J)5`:)3`2)7`*)!!]T!E!0Z`4`6%U?7L-65U6+
- M[(MV"`OV?!_EAW(XDV-@2*A#@$F);K#??>@_XB=Q#'!C8$__^+QJ,R`+C_
- M_^L%OE<`Z]A=7U["`@"Q`^L*L0+K!K$!ZP(SR5565XOLBT8*BU8,BUX.BVX0
- M,_;VP0%U&@O2>0GWVO?8&]:`R00+[7D)]]WWVQON@/$$B_T+^G4&]_.'\NL@
- M4;D@`(O^T>#1TM'6T=<[_7(+=P0[\W(%*_,;_4#BYUGVP0)T`Y:+U_;!!'0'
- M]]KWV(/:`%]>7<H(`(/Y('8%,\`STLM)?`;1X-'2Z_?+@_D@=@.Y(`!)?`;1
- M^M'8Z_?+@_D@=@4SP#/2RTE\!M'JT=CK]\M6EI*%P'0"]^.1A<!T!/?F`\B6
- M]^,#T5[+5E=5B^R+1@@[1@IS!OVX`0#K`_PSP(MV"(M^"HS9CL&+3@P+P'0&
- M`_%.`_E/]\<!`'0$XQ&D22OP*_C1Z?.E<P4#\`/XI/Q=7U[#58OL_W8(_W8$
- M_W8&Z*;_B^6+1@1=PU95B^R+=@:,!(Q,`HQ4!(Q<!EU>PU95B^R+=@;_=@CH
- M/`!90%!6Z#4`60/&4/]V".AL_XOEB\9=7L-65U6+[/R+?@J,V([`B_<RP+G_
- M__*N]]&+?@CSI(M&"%U?7L-65U6+[(M^"(S8CL"P`+G___SRKHO!]]!(75]>
- MPU9758OL3$R+?@A7Z-7_68E&_O]V"NC+_UF+\#MV#'8#BW8,5HO'`T;^4/]V
- M"NCT_H/$!HM>_@/>Q@$`B\>+Y5U?7L,`````````````````06)N;W)M86P@
- M<')O9W)A;2!T97)M:6YA=&EO;@T*````````````````````````````````
- ML$@```````````````````````````````````````(!```)```"``#_`?\#
- M_P?_#_\?```````@?``-"@"V)J`$0!]0=6)L:6,@9&]M86EN($QO;WH@97AT
- M<F%C=&]R(&)Y(%)A:'5L($1H97-I#0I697)S:6]N(#(N,6$@("AE=CDP,#4Q
- M-RD-"E5S86=E.B!L;V]Z('ML>'1]6V-P>%T@87)C:&EV95LN>F]O72!;9FEL
- M92!\(%YF:6QE72XN+@T*:6X@>WTZ(&P@/2!L:7-T+"!X(#T@97AT<F%C="P@
- M="`]('1E<W0-"FEN(%M=.B!C(#T@<VAO=R!C;VUM96YT<RP@<"`]('!I<&4@
- M=&\@<W1A;F1A<F0@;W5T<'5T+"!X(#T@97AE8W5T92`-"B`@("`@("!F(#T@
- M9F%S="!L:7-T:6YG(&EN(&-O;'5M;G,-"@!%4E)/4CH@(`!&051!3#H@(```
- M02!H:6=H97(@=F5R<VEO;B!O9B!/;WH@:7,@;F5E9&5D('1O(&5X=')A8W0@
- M`'0"3&5N9W1H("`@($-&("!3:7IE($YO=R`@1&%T92`@("`@(%1I;64-"@`M
- M+2TM+2TM+2`@+2TM("TM+2TM+2TM("`M+2TM+2TM+2T@+2TM+2TM+2T-"@!A
- M8F-D969G:&EJ:VQM;F]P<7)S='5V=WAY>C`Q,C,T-38W.#E!0D-$149'2$E*
- M2TQ-3D]045)35%565UA96D!>8'M]?B$C)"4F)R@I+2Y?`#`P,$IA;D9E8DUA
- M<D%P<DUA>4IU;DIU;$%U9U-E<$]C=$YO=D1E8P`N8V]M`"YE>&4`*BYZ;V\`
- M0V]U;&1N)W0@;W!E;B``#0H`#0I!<F-H:79E(``Z#0H`26YV86QI9"!A<F-H
- M:79E#0H`0F%D(&5N=')Y(&EN(&%R8VAI=F4-"@`@("`@("`@("`@("``.@!#
- M`$0@`$]V97)W<FET92``("A997,O3F\O06QL*3\@`%-K:7!P:6YG(`!&:6QE
- M('1O;R!B:6<@=&\@;&]A9`T`(&9O<B!O=71P=70N#0H`+2T@`$]U="!O9B!M
- M96UO<GD-"@!#86XG="!W<FET92!T;R``!U=!4DY)3D<Z("!"860@0U)#+@T*
- M`$]K#0H`97AT<F%C=&5D#0H`17AE8W5T:6]N(&9A:6QE9`T*`"!B>71E<RP@
- M`"!F:6QE*',I#0H`3F\@9FEL92!F;W5N9`T*``T*1U)!3D0@5$]404PZ#0H`
- M(&%R8VAI=F5S+"``5T%23DE.1SH@($5R<F]R<R!W97)E(&1E=&5C=&5D#0H`
- M)2```$9I;&4@=&]O(&)I9R!T;R!L;V%D#0```#8<-APV'````!,"`@0%!@@(
- M"!05!1/_%@46`O________________\%!?____________________\/__\"
- H_P______$___`@(%#P+___\3____________________$_\`+QPO'/\/
- `
- end
-
-
-