Nuke fla(4). It's known to be buggy, supports very limited set of obsolete
authorHasso Tepper <hasso@dragonflybsd.org>
Mon, 27 Aug 2007 20:40:53 +0000 (20:40 +0000)
committerHasso Tepper <hasso@dragonflybsd.org>
Mon, 27 Aug 2007 20:40:53 +0000 (20:40 +0000)
devices with limited set of firmware versions, is removed from FreeBSD more
than 3 years ago and is not supported any more more than 4 years:

http://www.daemonnews.org/mailinglists/FreeBSD/freebsd-small/msg03526.html

And it's based on blob.

share/man/man4/Makefile
share/man/man4/fla.4 [deleted file]
sys/config/LINT
sys/contrib/dev/fla/COPYRIGHT [deleted file]
sys/contrib/dev/fla/README [deleted file]
sys/contrib/dev/fla/fla.c [deleted file]
sys/contrib/dev/fla/i386/msysosak.o.uu [deleted file]
sys/contrib/dev/fla/msysosak.h [deleted file]
sys/contrib/dev/fla/patch.00 [deleted file]
sys/contrib/dev/fla/prep.fla.sh [deleted file]
sys/platform/pc32/conf/files

index 946b9fa..92de16c 100644 (file)
@@ -1,6 +1,6 @@
 #      @(#)Makefile    8.1 (Berkeley) 6/18/93
 # $FreeBSD: src/share/man/man4/Makefile,v 1.83.2.66 2003/06/04 17:10:30 sam Exp $
-# $DragonFly: src/share/man/man4/Makefile,v 1.64 2007/08/27 16:15:41 hasso Exp $
+# $DragonFly: src/share/man/man4/Makefile,v 1.65 2007/08/27 20:40:52 hasso Exp $
 
 MAN=   aac.4 \
        acpi.4 \
@@ -64,7 +64,6 @@ MAN=  aac.4 \
        fd.4 \
        fdc.4 \
        firewire.4 \
-       fla.4 \
        fwe.4 \
        fwohci.4 \
        fxp.4 \
diff --git a/share/man/man4/fla.4 b/share/man/man4/fla.4
deleted file mode 100644 (file)
index 2b0f907..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-.\" Copyright (c) 2003 David E. O'Brien
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\"    notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\"    notice, this list of conditions and the following disclaimer in the
-.\"    documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
-.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
-.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
-.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-.\" POSSIBILITY OF SUCH DAMAGE.
-.\"
-.\" $FreeBSD: src/share/man/man4/fla.4,v 1.2 2004/06/17 19:51:17 ru Exp $
-.\" $DragonFly: src/share/man/man4/Attic/fla.4,v 1.1 2006/04/30 18:46:39 swildner Exp $
-.\"
-.Dd July 13, 2003
-.Dt FLA 4
-.Os
-.Sh NAME
-.Nm fla
-.Nd M-systems DiskOnChip
-.Sh SYNOPSIS
-.Cd "device fla"
-.Sh DESCRIPTION
-DiskOnChip is a family of high-performance,
-single-chip flash disks available in a wide range of capacities.
-The
-.Nm
-driver supports the following in the family of M-systems DiskOnChip:
-.Pp
-.Bl -bullet -compact
-.It
-DiskOnChip2000 (8, 12, 24, 32, 40, 72, 144 MB)
-.It
-DiskOnChipMillenium (8 MB)
-.It
-DiskOnChipMillenium TSOP (8 MB)
-.El
-.Sh SEE ALSO
-.Xr config 8
-.Pp
-.Pa http://www.m-sys.com
-.Sh HISTORY
-The
-.Nm
-driver
-appeared in
-.Fx 3.3 .
index 8e60497..0c66a05 100644 (file)
@@ -3,7 +3,7 @@
 #      as much of the source tree as it can.
 #
 # $FreeBSD: src/sys/i386/conf/LINT,v 1.749.2.144 2003/06/04 17:56:59 sam Exp $
-# $DragonFly: src/sys/config/LINT,v 1.127 2007/08/27 16:15:42 hasso Exp $
+# $DragonFly: src/sys/config/LINT,v 1.128 2007/08/27 20:40:52 hasso Exp $
 #
 # NB: You probably don't want to try running a kernel built from this
 # file.  Instead, you should start from GENERIC, and add options from
@@ -1306,9 +1306,6 @@ options   FDC_DEBUG
 device         fd0     at fdc0 drive 0
 device         fd1     at fdc0 drive 1
 
-# M-systems DiskOnchip products see src/sys/contrib/dev/fla/README
-device         fla0    at isa?
-
 #
 # Other standard PC hardware: `mse', `sio', etc.
 #
diff --git a/sys/contrib/dev/fla/COPYRIGHT b/sys/contrib/dev/fla/COPYRIGHT
deleted file mode 100644 (file)
index 9618a67..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-
-SOFTWARE LICENSE AGREEMENT
-
-IMPORTANT! READ CAREFULLY: 
-THIS SOFTWARE LICENSE AGREEMENT (the ``Agreement'') is a legal 
-agreement between you (either an individual or a single entity) and 
-M-Systems Flash Disk Pioneers Ltd. ("M-Systems").  
-This Agreement relates to the M-Systems' software accompanying this 
-Agreement, which includes computer software and may include associated
-media, printed materials, and ``online'' or electronic documentation 
-(the ``Licensed Software'').  
-By downloading, installing, copying, or otherwise using the Licensed
-Software, you agree to be bound by the terms of this Agreement.
-If you do not agree to the terms of this Agreement, do not install, 
-copy or use the Licensed Software.
-
-The Licensed Software is protected by copyright laws and international
-copyright treaties, as well as other intellectual property laws and 
-treaties.  The Licensed Software is licensed, not sold.  
-The Licensed Software is being provided solely for use with M-Systems'
-DiskOnChip® product lines.
-1.     License Grant. 
-(a)    Grant of License. Subject to the terms and conditions of this 
-        Agreement, M-Systems hereby grants you a nonexclusive, 
-        royalty-free, worldwide license (including the right to 
-        sublicense) to use, copy and distribute the Licensed Software 
-        with M-Systems DiskOnChip® products.
-(b)    Restrictions on Use.  The Licensed Software is licensed solely
-        for use with and to support M-Systems' DiskOnChip® products. 
-        Use of this Licensed Software with, or to support, any other 
-        flash disk, flash card, resident flash array or solid state 
-        disk of any kind is expressly prohibited, and constitutes an 
-        illegal infringement of M-Systems' patent, copyright and other 
-        rights in and to the Licensed Software. 
-2.     Limitations on Reverse Engineering, Decompilation, and 
-        Disassembly.  You may not reverse engineer, decompile, or 
-        disassemble the Licensed Software, except and only to the 
-        extent that such activity is expressly permitted by applicable 
-        law notwithstanding this limitation.
-3.     Termination. Without prejudice to any other rights, M-Systems 
-        may terminate this Agreement if you fail to comply with the 
-        terms and conditions of this Agreement. In such event, you must
-        destroy all copies of the Licensed Software and all of its 
-        component parts.
-4.     Intellectual Property Rights.  Title to the Licensed Software, 
-        and all rights with respect to the Software not specifically 
-        granted under this Agreement, including without limitation 
-        all rights of modification, disassembly and decompilation and 
-        all copyright, patent, trademark, trade secret and other 
-        proprietary rights and interests are reserved to M-Systems. 
-        You may not remove or alter the "README" or "COPYRIGHT" files
-       or copyright notices in the Licensed Software.
-5.     DISCLAIMER OF WARRANTIES. To the maximum extent permitted by 
-        applicable law, M-Systems and its suppliers provide the Product
-        and any (if any) support services related to the Product 
-        ("Support Services") AS IS AND WITH ALL FAULTS, and hereby 
-        disclaim all warranties and conditions, either express, 
-        implied or statutory, including, but not limited to, any 
-        (if any) implied warranties or conditions of merchantability, 
-        of fitness for a particular purpose, of lack of viruses, of 
-        accuracy or completeness of responses, of results, and of lack
-        of negligence or lack of workmanlike effort, all with regard 
-        to the Product, and the provision of or failure to provide 
-        Support Services. ALSO, THERE IS NO WARRANTY OR CONDITION OF
-        TITLE, QUIET ENJOYMENT, QUIET POSSESSION, CORRESPONDENCE TO 
-        DESCRIPTION OR NON-INFRINGEMENT, WITH REGARD TO THE PRODUCT. 
-        THE ENTIRE RISK AS TO THE QUALITY OF OR ARISING OUT OF USE OR 
-        PERFORMANCE OF THE PRODUCT AND SUPPORT SERVICES, IF ANY, 
-        REMAINS WITH YOU.
-6.     EXCLUSION OF INCIDENTAL, CONSEQUENTIAL AND CERTAIN OTHER 
-        DAMAGES. To the maximum extent permitted by applicable law, 
-        in no event shall M-Systems or its suppliers be liable for 
-        any special, incidental, indirect, or consequential damages 
-        whatsoever (including, but not limited to, damages for loss 
-        of profits or confidential or other information, for business 
-        interruption, for personal injury, for loss of privacy, for 
-        failure to meet any duty including of good faith or of 
-        reasonable care, for negligence, and for any other pecuniary 
-        or other loss whatsoever) arising out of or in any way related
-        to the use of or inability to use the Product, the provision 
-        of or failure to provide Support Services, or otherwise under 
-        or in connection with any provision of Agreement, even in the 
-        event of the fault, tort (including negligence), strict 
-        liability, breach of contract or breach of warranty of 
-        M-Systems or any supplier, and even if M-Systems or any 
-        supplier has been advised of the possibility of such damages. 
-7.     LIMITATION OF LIABILITY AND REMEDIES. Notwithstanding any 
-        damages that you might incur for any reason whatsoever 
-        (including, without limitation, all damages referenced above 
-        and all direct or general damages), the entire liability of 
-        M-Systems and any of its suppliers under any provision of this
-        Agreement and your exclusive remedy for all of the foregoing 
-        shall be limited to the greater of the amount actually paid by
-        you for the Product or U.S.$5.00. The foregoing limitations, 
-        exclusions and disclaimers shall apply to the maximum extent 
-        permitted by applicable law, even if any remedy fails its 
-        essential purpose.
-8.     Miscellaneous
-        The laws of the State of California, United States of America, 
-        exclusive of conflict-of-laws provisions, shall govern this 
-        Agreement in all respects. 
-
diff --git a/sys/contrib/dev/fla/README b/sys/contrib/dev/fla/README
deleted file mode 100644 (file)
index b20bc8b..0000000
+++ /dev/null
@@ -1,199 +0,0 @@
-                README and FAQ for the fla driver.
-               ==================================
-
-
-[0]    COPYRIGHT & LICENSE
-
-       Please read the COPYRIGHT file carefully.  If you cannot
-       agree to be bound by the terms of this license, please
-       contact M-systems and make arrangements with them.
-
-[1]    What does this driver do ?
-
-       This driver supports up to eight M-systems DiskOnChip
-       devices.
-
-       The driver has been tested with the following devices:
-
-       DiskOnChip2000 (8, 12, 24, 32, 40, 72, 144 MB)
-       DiskOnChipMillenium (8 MB)
-       DiskOnChipMillenium TSOP (8 MB)
-
-       You can find full details, specs etc on M-systems homepage:
-       http://www.m-sys.com
-
-[2]    Which firmware version ?
-
-       The driver has only been tested with version 1.21.
-
-[3]    How many devices ?
-
-       The driver supports up to 8 devices but have been tested only
-       with 5 due to hardware limitations in my test setup.
-
-[4]    Which FreeBSD versions ?
-
-       The driver is tested for 4.0-CURRENT and 3.3-RELEASE.
-
-       Porting to earlier versions of FreeBSD should be a simple
-       matter of modifying the fla.c file.  [patches are welcome]
-
-[5]    Can I install FreeBSD with sysinstall ?
-
-       Yes, it has been tested in FreeBSD-4.0-CURRENT and it works.
-       You will need to build a kernel with the fla driver since
-       the default "GENERIC" kernel doesn't contain the fla driver.
-
-[6]    How to boot from a fla device ?
-
-       FreeBSD 4.0 and forward find their root device by reading
-       the /etc/fstab, so the DiskOnChip devices will work just
-       like any other device.
-
-       Earlier FreeBSD kernels recognizes the root device using
-       various hacks.  These hacks doesn't recognize the fla device
-       so some "real" hacks are needed to boot from your fla
-       device.
-
-       In pre 4.0 versions specifying the boot device in the kernel
-       config file this way is the easiest way to do it:
-
-               config          kernel  root on major 28 minor 65538
-
-[7]    How to disklabel a fla device ?
-
-       Look at the script in prep.fla.sh, it will do the job for you.
-
-[8]    Who to contact ?
-
-       doc2k@phk.freebsd.dk will offer limited best-effort help
-       to the extent time permits.  Further support for special
-       projects or configurations available at reasonable hourly
-       rates.
-
-[9]    Getting detailed
-
-       The DiskOnChip product gets out in some odd corners of the
-       PC-architecture, and chances are that things don't do what
-       you expect.  Here are some hints and random observations
-       I've made during my work with these devices.
-
-[9a]   Choosing an address for the DOC
-
-       Each DOC needs a 8K memory window starting on an 8K boundary.
-       The lowest possible address is C000:0, the highest is DE00:0
-
-       If your hardware puts the DOC another place, you will need
-       to modify the doc2k_probe() call in fla.c.
-
-       It is important that you set the BIOS to not do "fancy things"
-       with this window, in particular no kind of cache or shadowing
-       can be enabled.
-
-       Be aware that some hardware will decode a 32k memory window 
-       for the DOC device.
-
-       If everything is OK, the DOC will print a message during
-       the BIOS startup.
-
-       For large devices it can take some time to check the flash
-       data structures, but if it takes more than 3 minutes
-       something is wrong.
-
-       If you boot a MSDOS floppy and run FDISK you should be able
-       to see the DOC device.
-
-       If it doesnt work:
-
-       If you machine never gets to the point where it will boot,
-       but just hangs it could be because you have a BIOS which
-       need the "slightly special" DOC firmware.  Obviously you
-       will need to put the DOC in another machine to load this
-       firmware.  You can download the firmware and utilities
-       from M-systems website http://www.m-sys.com
-
-       If the machine boots, but the device isn't visible it can
-       be because some other device uses the same memory window,
-       or because the BIOS prevents it from being used.  If you
-       boot MSDOS and enter DEBUG, you should be able to find a
-       BIOS extension signature at the address using the 'd'
-       command, for instance 'd d800:0'.
-
-       A special case is when the DOC prints the BIOS message
-       but disappears afterwards, this can happen because another
-       card (NCR SCSI controllers for instance) steal the memory
-       window later in the boot process.  In such a case the
-       above check with DEBUG will not show the BIOS signature.
-
-[9b]   So just who is drive 'C' here anyway ?
-
-       Using the DUPDATE program you can choose to have the DOC
-       add itself at the front or the back of the device list.
-
-       This is, unfortunately not the only thing affecting the
-       drive order, the above mentioned NCR SCSI controllers also
-       have some builtin AI, and the result can be very confusing
-       because the DOC will come before even the floppy as a result.
-
-       There is no simple solution for this case, only variuos
-       work-arounds.  But chances are good that most users will
-       not use both a DOC and a SCSI in the same system, except
-       maybe for initial programming.
-
-[9c]   MBR/fdisk
-
-       The boot firmware in the DOC and/or the FreeBSD bootblocks
-       mandate that the first MBR slice/(partition in FDISK lingo)
-       start exactly at "sector #1, head #1, cylinder #0."  You 
-       will have problems booting from the fla if you don't get this
-       right.  The prep.fla.sh script will do this for you.
-
-       DO NOT WRITE JUNK IN THE MBR!  The DOC firmware relies on
-       various fields and can get utterly confused if they don't
-       make sense.
-
-[9d]   Getting the FreeBSD kernel to use the fla as root
-
-       Please see above under item 6.
-
-[9e]   I turned the machine off while it was running and now my
-       DOC hangs during boot/panics the machine/does weird things.
-
-       If a write operation to the DOC gets interrupted by reset
-       or power-failure, it can happen that the flash data structures
-       are left in a state the sofware cannot cope with.
-
-       Your best chance is to DUPDATE, DFORMAT the device again.
-
-       If it hangs during boot, you can use this particular dirty
-       trick ENTIRELY AT YOUR OWN RISK!  DO NOT COMPLAIN IF THIS
-       DOESN'T WORK FOR YOU OR IF YOU DESTROY YOUR COMPUTER OR
-       DOC DEVICE DOING IT!
-
-       Jumper the DOC for an address which will not work, but which
-       will not interfere with the system either, C000:0 seems to
-       work pretty universally for this.
-
-       Boot MSDOS and rejumper the DOC for its real (working) address.
-
-       Run DUPDATE and use the /win:xxxx argument to point it at the
-       DOC device.
-
-[9f]   Apart from that...
-
-       ...the DOC is just like any other disk, but it is silent,
-       has better MTBF and doesn't take up a lot of space.
-
-
-[10]   History
-
-       The fla driver was written by Poul-Henning Kamp <phk@FreeBSD.org>
-       under contract for M-systems, and using their "OSAK"
-       development kit.
-
-Good Luck,
-
-Poul-Henning
-
-$FreeBSD: src/sys/contrib/dev/fla/README,v 1.5 1999/11/10 10:50:51 phk Exp $
-$DragonFly: src/sys/contrib/dev/fla/Attic/README,v 1.2 2003/06/17 04:28:20 dillon Exp $
diff --git a/sys/contrib/dev/fla/fla.c b/sys/contrib/dev/fla/fla.c
deleted file mode 100644 (file)
index 284ecf6..0000000
+++ /dev/null
@@ -1,373 +0,0 @@
-/*
- * ----------------------------------------------------------------------------
- * "THE BEER-WARE LICENSE" (Revision 42):
- * <phk@FreeBSD.ORG> wrote this file.  As long as you retain this notice you
- * can do whatever you want with this stuff. If we meet some day, and you think
- * this stuff is worth it, you can buy me a beer in return.   Poul-Henning Kamp
- * ----------------------------------------------------------------------------
- *
- * $FreeBSD: src/sys/contrib/dev/fla/fla.c,v 1.16 1999/12/08 04:45:16 ken Exp $ 
- * $DragonFly: src/sys/contrib/dev/fla/Attic/fla.c,v 1.18 2007/05/15 00:01:03 dillon Exp $ 
- *
- */
-
-#include "use_fla.h"
-
-#include <sys/param.h>
-#include <sys/systm.h>
-#include <sys/sysctl.h>
-#include <sys/kernel.h>
-#include <sys/proc.h>
-#include <sys/buf.h>
-#include <sys/malloc.h>
-#include <sys/conf.h>
-#include <sys/disk.h>
-#include <sys/devicestat.h>
-#include <sys/module.h>
-#include <machine/clock.h>
-
-#include <vm/vm.h>
-#include <vm/pmap.h>
-#include <vm/vm_param.h>
-#include <sys/buf2.h>
-#include <sys/thread2.h>
-
-#include <sys/bus.h>
-#include <bus/isa/isavar.h>
-
-#ifdef SMP
-#include <machine/smp.h>
-#define LEAVE() rel_mplock();                  
-#define ENTER() get_mplock();                  
-#else
-#define LEAVE()
-#define ENTER()
-#endif
-
-#include <contrib/dev/fla/msysosak.h>
-
-MALLOC_DEFINE(M_FLA, "fla driver", "fla driver storage");
-
-static int fla_debug = 0;
-SYSCTL_INT(_debug, OID_AUTO, fladebug, CTLFLAG_RW, &fla_debug, 0, "");
-
-#define CDEV_MAJOR     102
-#define BDEV_MAJOR     28
-
-static d_strategy_t flastrategy;
-static d_open_t flaopen;
-static d_close_t flaclose;
-static d_ioctl_t flaioctl;
-
-static struct dev_ops fla_ops = {
-       { "fla", CDEV_MAJOR, D_DISK | D_CANFREE },
-        .d_open =      flaopen,
-        .d_close =     flaclose,
-        .d_read =      physread,
-        .d_write =     physwrite,
-        .d_ioctl =     flaioctl,
-        .d_strategy =  flastrategy,
-};
-
-void *
-doc2k_malloc(int bytes) 
-{
-       return kmalloc(bytes, M_FLA, M_WAITOK);
-}
-
-void
-doc2k_free(void *ptr)
-{
-       kfree(ptr, M_FLA);
-}
-
-void
-doc2k_delay(unsigned msec)
-{
-       DELAY(1000 * msec);
-}
-
-void
-doc2k_memcpy(void *dst, const void *src, unsigned len)
-{
-       bcopy(src, dst, len);
-}
-
-int
-doc2k_memcmp(const void *dst, const void *src, unsigned len)
-{
-       return (bcmp(src, dst, len));
-}
-
-void
-doc2k_memset(void *dst, int c, unsigned len)
-{
-       u_char *p = dst;
-       while (len--)
-               *p++ = c;
-}
-
-static struct fla_s {
-       int busy;
-       int unit;
-       unsigned nsect;
-       struct doc2k_stat ds;
-       struct bio_queue_head bio_queue;
-       struct devstat stats;
-       struct disk disk;
-       cdev_t dev;
-} softc[NFLA];
-
-static int
-flaopen(struct dev_open_args *ap)
-{
-       cdev_t dev = ap->a_head.a_dev;
-       struct fla_s *sc;
-       int error;
-       struct disk_info info;
-       u_int secperunit = 0;
-       u_int secpertrack = 0;
-       u_int ncylinders = 0;
-       u_int nheads = 0;
-
-       if (fla_debug)
-               kprintf("flaopen(%s %x %x)\n",
-                       devtoname(dev), ap->a_oflags, ap->a_devtype);
-
-       sc = dev->si_drv1;
-
-       error = doc2k_open(sc->unit);
-
-       if (error) {
-               kprintf("doc2k_open(%d) -> err %d\n", sc->unit, error);
-               return (EIO);
-       }
-
-       bzero(&info, sizeof(info));
-       error = doc2k_size(sc->unit, &secperunit, &ncylinders,
-                          &nheads, &secpertrack);
-       info.d_media_blksize = DEV_BSIZE;
-       if (error == 0) {
-               info.d_media_blocks = secperunit;
-               info.d_media_size = 0;
-               info.d_nheads = nheads;
-               info.d_ncylinders = ncylinders;
-               info.d_secpertrack = secpertrack;
-               info.d_secpercyl = nheads * secpertrack; /* XXX */
-       }
-       disk_setdiskinfo(&sc->disk, &info);
-       return (0);
-}
-
-static int
-flaclose(struct dev_close_args *ap)
-{
-       cdev_t dev = ap->a_head.a_dev;
-       int error;
-       struct fla_s *sc;
-
-       if (fla_debug)
-               kprintf("flaclose(%s %x %x)\n",
-                       devtoname(dev), ap->a_fflag, ap->a_devtype);
-
-       sc = dev->si_drv1;
-
-       error = doc2k_close(sc->unit);
-       if (error) {
-               kprintf("doc2k_close(%d) -> err %d\n", sc->unit, error);
-               return (EIO);
-       }
-       return (0);
-}
-
-static int
-flaioctl(struct dev_ioctl_args *ap)
-{
-       cdev_t dev = ap->a_head.a_dev;
-
-       if (fla_debug)
-               kprintf("flaioctl(%s %lx %p %x)\n",
-                       devtoname(dev), ap->a_cmd, ap->a_data, ap->a_fflag);
-
-       return (ENOIOCTL);
-}
-
-static int
-flastrategy(struct dev_strategy_args *ap)
-{
-       cdev_t dev = ap->a_head.a_dev;
-       struct bio *bio = ap->a_bio;
-       struct buf *bp = bio->bio_buf;
-       int unit, error;
-       struct fla_s *sc;
-       enum doc2k_work what;
-
-       if (fla_debug > 1) {
-               kprintf("flastrategy(%p) %s %x, %lld, %d, %p)\n",
-                       bp, devtoname(dev), bp->b_flags, bio->bio_offset, 
-                       bp->b_bcount, bp->b_data);
-       }
-
-       sc = dev->si_drv1;
-       bio->bio_driver_info = dev;
-       crit_enter();
-       bioqdisksort(&sc->bio_queue, bio);
-       if (sc->busy) {
-               crit_exit();
-               return(0);
-       }
-       sc->busy++;
-       
-       while (1) {
-               bio = bioq_first(&sc->bio_queue);
-               if (bio == NULL) {
-                       crit_exit();
-                       break;
-               }
-               bioq_remove(&sc->bio_queue, bio);
-               bp = bio->bio_buf;
-               dev = bio->bio_driver_info;
-
-               devstat_start_transaction(&sc->stats);
-               bp->b_resid = bp->b_bcount;
-               unit = dkunit(dev);
-
-               switch(bp->b_cmd) {
-               case BUF_CMD_FREEBLKS:
-                       what = DOC2K_ERASE;
-                       break;
-               case BUF_CMD_READ:
-                       what = DOC2K_READ;
-                       break;
-               case BUF_CMD_WRITE:
-                       what = DOC2K_WRITE;
-                       break;
-               default:
-                       panic("fla: bad b_cmd %d", bp->b_cmd);
-               }
-
-               LEAVE();
-
-               error = doc2k_rwe(unit, what,
-                                 (unsigned)(bio->bio_offset >> DEV_BSHIFT),
-                                 bp->b_bcount / DEV_BSIZE, bp->b_data);
-
-               ENTER();
-
-               if (fla_debug > 1 || error) {
-                       kprintf("fla%d: %d = rwe(%p, %d, %d, %lld, %d, %p)\n",
-                           unit, error, bp, unit, what, bio->bio_offset, 
-                           bp->b_bcount, bp->b_data);
-               }
-               if (error) {
-                       bp->b_error = EIO;
-                       bp->b_flags |= B_ERROR;
-               } else {
-                       bp->b_resid = 0;
-               }
-               devstat_end_transaction_buf(&sc->stats, bp);
-               biodone(bio);
-
-               crit_enter();
-       }
-       sc->busy = 0;
-       return(0);
-}
-
-static int
-flaprobe (device_t dev)
-{
-       int unit;
-       struct fla_s *sc;
-       int i;
-
-       unit = device_get_unit(dev);
-       sc = &softc[unit];
-
-       /* This is slightly ugly */
-       i = doc2k_probe(unit, KERNBASE + 0xc0000, KERNBASE + 0xe0000);
-       if (i)
-               return (ENXIO);
-
-       i = doc2k_info(unit, &sc->ds);
-       if (i)
-               return (ENXIO);
-
-       bus_set_resource(dev, SYS_RES_MEMORY, 0, 
-               sc->ds.window - KERNBASE, 8192);
-
-       return (0);
-}
-
-static int
-flaattach (device_t dev)
-{
-       int unit;
-       int i, j, k, l, m, error;
-       struct fla_s *sc;
-
-       unit = device_get_unit(dev);
-       sc = &softc[unit];
-
-       error = doc2k_open(unit);
-       if (error) {
-               kprintf("doc2k_open(%d) -> err %d\n", unit, error);
-               return (EIO);
-       }
-
-       error = doc2k_size(unit, &sc->nsect, &i, &j, &k );
-       if (error) {
-               kprintf("doc2k_size(%d) -> err %d\n", unit, error);
-               return (EIO);
-       }
-
-       kprintf("fla%d: <%s %s>\n", unit, sc->ds.product, sc->ds.model);
-
-       error = doc2k_close(unit);
-       if (error) {
-               kprintf("doc2k_close(%d) -> err %d\n", unit, error);
-               return (EIO);
-       }
-       
-       m = 1024L * 1024L / DEV_BSIZE;
-       l = (sc->nsect * 10 + m/2) / m;
-       kprintf("fla%d: %d.%01dMB (%u sectors),"
-           " %d cyls, %d heads, %d S/T, 512 B/S\n",
-           unit, l / 10, l % 10, sc->nsect, i, j, k);
-
-       if (bootverbose)
-               kprintf("fla%d: JEDEC=0x%x unitsize=%ld mediasize=%ld"
-                      " chipsize=%ld interleave=%d window=%lx\n", 
-                   unit, sc->ds.type, sc->ds.unitSize, sc->ds.mediaSize, 
-                   sc->ds.chipSize, sc->ds.interleaving, sc->ds.window);
-
-       bioq_init(&sc->bio_queue);
-
-       devstat_add_entry(&softc[unit].stats, "fla", unit, DEV_BSIZE,
-               DEVSTAT_NO_ORDERED_TAGS, 
-               DEVSTAT_TYPE_DIRECT | DEVSTAT_TYPE_IF_OTHER,
-               DEVSTAT_PRIORITY_DISK);
-
-       sc->dev = disk_create(unit, &sc->disk, &fla_ops);
-       sc->dev->si_drv1 = sc;
-       sc->unit = unit;
-
-       return (0);
-}
-
-static device_method_t fla_methods[] = {
-       /* Device interface */
-       DEVMETHOD(device_probe,         flaprobe),
-       DEVMETHOD(device_attach,        flaattach),
-       {0, 0}
-};
-
-static driver_t fladriver = {
-       "fla",
-       fla_methods,
-       sizeof(struct fla_s),
-};
-
-static devclass_t      fla_devclass;
-
-DRIVER_MODULE(fla, isa, fladriver, fla_devclass, 0, 0);
diff --git a/sys/contrib/dev/fla/i386/msysosak.o.uu b/sys/contrib/dev/fla/i386/msysosak.o.uu
deleted file mode 100644 (file)
index cc4b76d..0000000
+++ /dev/null
@@ -1,823 +0,0 @@
-# $FreeBSD: src/sys/contrib/dev/fla/i386/msysosak.o.uu,v 1.1.4.2 2001/05/23 21:41:49 phk Exp $
-# $DragonFly: src/sys/contrib/dev/fla/i386/Attic/msysosak.o.uu,v 1.2 2003/06/17 04:28:20 dillon Exp $
-
-SOFTWARE LICENSE AGREEMENT
-
-IMPORTANT! READ CAREFULLY: 
-THIS SOFTWARE LICENSE AGREEMENT (the ``Agreement'') is a legal 
-agreement between you (either an individual or a single entity) and 
-M-Systems Flash Disk Pioneers Ltd. ("M-Systems").  
-This Agreement relates to the M-Systems' software accompanying this 
-Agreement, which includes computer software and may include associated
-media, printed materials, and ``online'' or electronic documentation 
-(the ``Licensed Software'').  
-By downloading, installing, copying, or otherwise using the Licensed
-Software, you agree to be bound by the terms of this Agreement.
-If you do not agree to the terms of this Agreement, do not install, 
-copy or use the Licensed Software.
-
-The Licensed Software is protected by copyright laws and international
-copyright treaties, as well as other intellectual property laws and 
-treaties.  The Licensed Software is licensed, not sold.  
-The Licensed Software is being provided solely for use with M-Systems'
-DiskOnChip® product lines.
-1.     License Grant. 
-(a)    Grant of License. Subject to the terms and conditions of this 
-        Agreement, M-Systems hereby grants you a nonexclusive, 
-        royalty-free, worldwide license (including the right to 
-        sublicense) to use, copy and distribute the Licensed Software 
-        with M-Systems DiskOnChip® products.
-(b)    Restrictions on Use.  The Licensed Software is licensed solely
-        for use with and to support M-Systems' DiskOnChip® products. 
-        Use of this Licensed Software with, or to support, any other 
-        flash disk, flash card, resident flash array or solid state 
-        disk of any kind is expressly prohibited, and constitutes an 
-        illegal infringement of M-Systems' patent, copyright and other 
-        rights in and to the Licensed Software. 
-2.     Limitations on Reverse Engineering, Decompilation, and 
-        Disassembly.  You may not reverse engineer, decompile, or 
-        disassemble the Licensed Software, except and only to the 
-        extent that such activity is expressly permitted by applicable 
-        law notwithstanding this limitation.
-3.     Termination. Without prejudice to any other rights, M-Systems 
-        may terminate this Agreement if you fail to comply with the 
-        terms and conditions of this Agreement. In such event, you must
-        destroy all copies of the Licensed Software and all of its 
-        component parts.
-4.     Intellectual Property Rights.  Title to the Licensed Software, 
-        and all rights with respect to the Software not specifically 
-        granted under this Agreement, including without limitation 
-        all rights of modification, disassembly and decompilation and 
-        all copyright, patent, trademark, trade secret and other 
-        proprietary rights and interests are reserved to M-Systems. 
-        You may not remove or alter the "README" or "COPYRIGHT" files
-       or copyright notices in the Licensed Software.
-5.     DISCLAIMER OF WARRANTIES. To the maximum extent permitted by 
-        applicable law, M-Systems and its suppliers provide the Product
-        and any (if any) support services related to the Product 
-        ("Support Services") AS IS AND WITH ALL FAULTS, and hereby 
-        disclaim all warranties and conditions, either express, 
-        implied or statutory, including, but not limited to, any 
-        (if any) implied warranties or conditions of merchantability, 
-        of fitness for a particular purpose, of lack of viruses, of 
-        accuracy or completeness of responses, of results, and of lack
-        of negligence or lack of workmanlike effort, all with regard 
-        to the Product, and the provision of or failure to provide 
-        Support Services. ALSO, THERE IS NO WARRANTY OR CONDITION OF
-        TITLE, QUIET ENJOYMENT, QUIET POSSESSION, CORRESPONDENCE TO 
-        DESCRIPTION OR NON-INFRINGEMENT, WITH REGARD TO THE PRODUCT. 
-        THE ENTIRE RISK AS TO THE QUALITY OF OR ARISING OUT OF USE OR 
-        PERFORMANCE OF THE PRODUCT AND SUPPORT SERVICES, IF ANY, 
-        REMAINS WITH YOU.
-6.     EXCLUSION OF INCIDENTAL, CONSEQUENTIAL AND CERTAIN OTHER 
-        DAMAGES. To the maximum extent permitted by applicable law, 
-        in no event shall M-Systems or its suppliers be liable for 
-        any special, incidental, indirect, or consequential damages 
-        whatsoever (including, but not limited to, damages for loss 
-        of profits or confidential or other information, for business 
-        interruption, for personal injury, for loss of privacy, for 
-        failure to meet any duty including of good faith or of 
-        reasonable care, for negligence, and for any other pecuniary 
-        or other loss whatsoever) arising out of or in any way related
-        to the use of or inability to use the Product, the provision 
-        of or failure to provide Support Services, or otherwise under 
-        or in connection with any provision of Agreement, even in the 
-        event of the fault, tort (including negligence), strict 
-        liability, breach of contract or breach of warranty of 
-        M-Systems or any supplier, and even if M-Systems or any 
-        supplier has been advised of the possibility of such damages. 
-7.     LIMITATION OF LIABILITY AND REMEDIES. Notwithstanding any 
-        damages that you might incur for any reason whatsoever 
-        (including, without limitation, all damages referenced above 
-        and all direct or general damages), the entire liability of 
-        M-Systems and any of its suppliers under any provision of this
-        Agreement and your exclusive remedy for all of the foregoing 
-        shall be limited to the greater of the amount actually paid by
-        you for the Product or U.S.$5.00. The foregoing limitations, 
-        exclusions and disclaimers shall apply to the maximum extent 
-        permitted by applicable law, even if any remedy fails its 
-        essential purpose.
-8.     Miscellaneous
-        The laws of the State of California, United States of America, 
-        exclusive of conflict-of-laws provisions, shall govern this 
-        Agreement in all respects. 
-
-begin 664 msysosak.o
-M?T5,1@$!`0E&<F5E0E-$``$``P`!```````````````0:````````#0`````
-M`"@`#``)`%6)Y8/L"(/$^/\U`````/\U`````.C\____@\00A<!U#.C\____
-MZ/S___\QP,G#D%6)Y8/L"(M%#(M5$*,`````B14`````_P4`````@ST`````
-M`74)Z/S___^%P'46BT4(.P4`````<P8QP.L'B?:X``$``,G#D%6)Y8/L+%=6
-M4XM="(M]#(/$_&I$:@!7Z/S___^)7>B)??2#Q/B-1>A0:@KH_/___XE%Y(M/
-M"(7)?0:!P?__#P")SL'^%(U?',='&`````"#_F-^';H?A>M1B=#W[L'Z!8G(
-MP?@?*,*(T`0PB$<<C5\=@_X)?C6_9V9F9HGP]^^)T8G(P?@"B?'!^1\IR(G!
-M]^^)T,'X`HG*P?H?*="-!(`!P"C!B,@$,(@#0[IG9F9FB=#W[HG0P?@"B?+!
-M^A\IT(T$@`'`B?(HPHC0!#"(`T/&`TU#Q@-"QD,!`(M%Y(UER%M>7\G#B?95
-MB>6#[#Q75E.+10B+70R+?12+=1B)1>B#Q/B-1>A0:@_H_/___XG!BT7XB0.+
-M11#'```$``#'!Q````"+$,'B!(E5W(L#B478,=+W==R)!HL3B=`QTO=UW(72
-M=$'_!HM5$(L"#Z\&B47<BQ.)5=B)T#'2]W7<B0>+$XG0,=+W==R%TG09_P>+
-M/P^O/HE]W(L3B=`QTO?WB<.+51")&HG(C66X6UY?R<-5B>6#["B+10B)1>B#
-MQ/B-1>A0:@3H_/___\G#58GE@^PHBT4(B47H@\3XC47H4&H!Z/S____)PU6)
-MY8/L(%93BUT(BW4,BT40BU44BTT8B5WHB47XB57\B4WT@_X!=!QR"H/^`G0E
-MZS.-=@"#Q/B-1>A0:@7H_/___^LE@\3XC47H4&H&Z/S____K%8/$^(U%Z%!J
-M".C\____ZP6X$"<``(UEV%M>R<-5B>6#[`B#Q/3_=0CH_/___\G#D%6)Y<G#
-MC78`58GEN`$```#)PXGV58GER<.-=@!5B>6+10C'```````QP,G#58GER<.0
-MD)!5B>6+10@/MU4,BT@@T^*)T,G#D%6)Y8/L'%=64XMU"(M]#(-^-``/A(,`
-M```/M]^+1C1F@3R8K=YU4F:!?)@"K=YU28/$]&H$:@B-1?A0@\3X4U;HI___
-M_X/$$(/`"%"-1EQ0BX:`````_]"+5C2-1?B+3?AF"T@$9HD,FHM6-`^W2`)F
-M"T@&9HE,F@(/M]>+1C0/MP20BTT09HD!BT8T#[=$D`*+511FB0+K3(UV`(/$
-M]&H$:@B-1?A0@\3X#[?'4%;H./___X/$$(/`"%"-1EQ0BX:`````_]"-1?B+
-M5?AF"U`$BTT09HD1#[=0`F8+4`:+311FB1&-9=A;7E_)PXUV`%6)Y8/L'%=6
-M4XM="(MU#(M]$(M%%&:)1?!F.?!U"K@?````Z:(```!FB7WXC57X9HEZ!(M-
-M\,'A$(M%^"7__P``B47X"4WXBT($)?__``")0@0)2@2#Q/1J!&H(4H/$^`^W
-MQE!3Z)+^__^#Q!"#P`A0C4-<4(N#A````/_0@\0@A<!U1H-[-`!T%@^WQHM3
-M-&;'!(*MWHM3-&;'1(("K=Z-1?90C47T4`^WQE!3Z%[^__]F.WWT=0F+1?!F
-M.T7V=`>X'0```.L",<"-9=A;7E_)PXGV58GE@^P8BTT(#[=5#(M!+(`\`@!]
-M%HU%_E"-1?Q04E'H%_[__P^W1?[K!I"X__\``,G#D%6)Y8M%"(M5#(G1P>D+
-MBT`X#[8$`<'J"(G1@^$'T_B#X`,/MH``````R<.058GE5U93BWT(BW4,BET0
-M@W\X``^$C````(GRP>H+BT<XB@P"#[;#@_A5=!1_!H7`=!;K&#W_````=`GK
-M#XUV`+("ZPJR`^L&L@#K`K(!B?#!Z`B#X`>#^`)T'7<'A<!T#^LWD(/X!'0;
-M@_@&="+K*H#A_`C1ZR.0@.'SC025`````.L4@.'/B-#`X`3K"HGV@.$_B-#`
-MX`8(P8GRP>H+BT<XB`P"6UY?R<.)]E6)Y8/L#%=64XMU"(M]#(-^.`!T&X/$
-M^%=6Z`G___^(1?Z#Q!`\$70'#[9%_NM#D(/$]&H$:@*-1?Y0C4<&4(U&7%"+
-MAH````#_T(/$((/$_(U=_HI%_@I#`27_````4%=6Z.W^__^*1?X*0P$E_P``
-M`(UEZ%M>7\G#B?95B>6#[!Q75E.+?0B+10PQTO=W&,'B"8E5_,=%^/____]F
-MQT7V```/M]"+1S`/MQQ09H/[_W1:D(/$^`^WPU!7Z%O\__^+5?R--`*#Q/A6
-M5^@O____@\0@//]T-3P1=`['1?C_____A,!T`XEU^&;_1?:#Q/@/M\-05^CY
-M_?__B<.#Q!!F@_O_=`=F@WWV)W:GBT7XC6786UY?R<-5B>6#[!13BUT(@\3T
-M:@1J!(U%_%"#Q/@/MT4,4%/HX?O__X/$$`4(!```4(U#7%"+@X````#_T(M%
-M_&8+1?XE__\``(M=Z,G#C78`58GE@^P<5U93BUT(BW40BWT4@\3T:@1J"(U%
-M^%"#Q/@/MT4,4%/HC?O__X/$$`4(`@``4(U#7%"+@X````#_T(M%_&8+1?YF
-MB0:+1?B)!XUEV%M>7\G#D%6)Y8/L'%=64XMU"(M-$(M]%(M=#(U5^&:)2@3!
-MX1"+0@0E__\``(E"!`E*!(E]^(/$]&H$:@A2@\3X#[?;4U;H&_O__X/$$`4(
-M`@``4(U&7%"+AH0```#_T(UEV%M>7\G#B?95B>6#[`Q75E.+10R[`0```(M5
-M"&;'@I0```#_`&;'@I8```#__X7`=`;V0!0"=0RX&@```.D#`0``B?:+?0B#
-MQUR)QORY#0```/.EBT4(QT`L`````,=`,`````#'0#0`````QT`X`````,=`
-M#``````[6&!]%HM5"(M"#(M28$`!VSG3?/F+30B)00R+=0B+3@R)3B"+1F@/
-MKT9DT_AFB48<#[=6'('"``(``+@!````T^`YPG8WOP$```")RP^W1AQFB47^
-MD$-FP6W^`0^W1?X%``(``(GZB=G3XCG0=^</MT7^BW4(9HE&'(E>((M5"&:!
-M>AS_+W8.@WH@#G<(_T(@9L%J'`&+30C'`0$```#'03S_____@\3T@\3T_W%X
-MZ/S___]0Z/S___^+=0B)AI````!FQT8J```QP(UEZ%M>7\G#C78`58GE@^P4
-M4XM="(/$]`^W0QQ0Z/S___^)0RR#Q/0/MT,0`<!0Z/S___^)0S"#>RP`=`2%
-MP'4*N#\```#K!8UV`#'`BUWHR<.058GE@^P05E.+=0@/MUT,BT8LQ@0#:XU%
-M_%"-1?I04U;HC_W___]U_&H`4U;HV_W__XUEZ%M>R<-5B>6#[!Q75E.+=0B+
-M?0P/M]>+1BR`/`+_="&*!`(D?SQ`=@RX'0```.D'`0``B?8/M]>+1BR`/`+_
-M=01F_TX(#[??BT8L@"0#@(M&+(`,`VJ-1?Q0C47Z4%-6Z!S]__^#Q!"#?C0`
-M=!.+1C1FQP28K=Z+1C1FQT28`JW>#[??BTX@T^,/M\=`T^`YPW,N#[?'0(E%
-M](UV`(/$_&C_````4U;HQ?K__X/$$('#``(``(M.((M%]-/@.<-RW(/$_(M&
-M#(M.("G!N`$```#3X%`/M\>)1?#3X%"-1EQ0BX:(````_]")PX/$$(7;=!.#
-MQ/B+1?!05NC._O__B=CK-XGV_X:8````_T7\=0?'1?P!````_W7\:&D\```/
-MM]]35NBP_/__A<!U#8M&+,8$`_]F_T8(,<"-9=A;7E_)PXUV`%6)Y8/L'%=6
-M4XM="(MU#(/$]/]U%&@``@``_W405HU[7%>+@X0```#_T(E%^(/$((/X'74[
-M#[=%_K0`9HE%_H!-_Q'&1?X1@\3\:A%64^C9^?__@\3T:@1J`HU%_E"-1@90
-M5XN#A````/_0ZP^-=@"#Q/QJ5593Z+#Y__^+1?B-9=A;7E_)PY!5B>6#[!Q7
-M5E.+=0B_`@```(M&>,=`'`$```"#Q/1J`F@``@``_[:0````BT4,4(U>7%.+
-MAH````#_T(/$((/X&759@\3T:@1J"(U%^%"+10Q04XN&@````/_0@\0@@\3T
-M:@1J"(U%^%"+11!04XN&A````/_0@\0@A<!U,(I%_PI%_H/$_"7_````4(M%
-M$%!6Z`[Y__^#Y_V#Q!!7_[:0````BT404%;HR_[__XUEV%M>7\G#C78`58GE
-M@^P<5U93BW4(BWT,9L=%]@``C47^4(U%_%`/M\=05NBA]O__#[==_H/$$&8[
-M7AQS30^WTXM&+(`\`O]T"8H$`B1_/$!W.(U%^E"-1?A0#[?#4%;H;?;__XM%
-M_(#,@(/$$&8Y1?AU%XG?#[==^F;_1?9F.UX<<P=F@WWV)W:S#[?'C6786UY?
-MR<-5B>6#[!Q75E.+?0B+31"+10QFB47Z9HE-^`^W5?B+1S`/MQ109HE5]HG*
-M9H-]]O]T`X#.@`^W=?J+1RS&!`8`9O]/"&C__P``#[?"4%97Z-CV__^)PX/$
-M$(7;=!.#Q/A65^A5_/__B=CI_P```(GV9H-]]O\/A.$````/MU7VBT<L@#P"
-M_W0-B@0")'\\0`^'U@```(/$^`^W1?905^C1_O__B<:-1?Y0C47\4`^WQE!7
-MZ(7U__^#Q"!F@WW^_W0'NQT```#K+`^W3?IFB4W^#[?6BT<L@`P"@`^W1?Y0
-M#[=%_%!25^A!]O__B<.#Q!"%VW0D@\3X#[=%^E!7Z/+[__\/MU7VBT<L@"0"
-M@(M'+(`,`FJ)V.M5BT7X9CE'*G9*9CEU]G1$#[==]HM/+(H$"R1_#[;0#[?&
-MB@0()'^(1?4/MD7U`<*#^D!_"(I%]0`$"^L7N!\```#K$I`/MU7XBT<P#[=-
-M^F:)#%`QP(UEV%M>7\G#C78`58GE@^P,5U93BWT(BW4,#[?6BT<L@"0"@(UV
-M`(/$^`^WQE!7Z-/]__^)PX/$^`^WPU!7Z$3[__^#Q""%P'4%9CGS==@QP(UE
-MZ%M>7\G#B?95B>6#[!!64XM="`^W@Y8```!F.T,0<U(QR0^WDY8```"+0S`/
-MMQ10ZRZ)]F;_@Y8````/MX.6````9CM#$'()9L>#E@``````#[>3E@```(M#
-M,`^W%%!!9H/Z_W469CM+$'+(9H/Z_W4*,<#IC0```(UV``^WLY8```!F_X.6
-M````#[>#E@```&8[0Q!R"6;'@Y8```````^WRHM#+(`\`?]T&(H$`21_/$!V
-M#X/$^`^WQE!3Z$X```#K0@^WTHM#+(`\`@!]$(/$^`^WQE!3Z#,```#K)Y"#
-MQ/B-1?Y04^C+`P``@\00A<!U$H/$_`^WQE`/MT7^4%/H.OW__XUEZ%M>R<.-
-M=@!5B>6#["Q75E.+?0B+10QFB47R#[?0BT<P#[<44&:)5?#_1U@/MU7PBT<L
-M@#P"_W1#B@0")'\\0'8Z@\3XC47^4%?H80,``(/$$(7`#X6Z`0``@\3\#[=%
-M\E`/MT7^4%?HR_S__X/$$(7`=#?IFP$``(UV`(M-\&:)3?XQVXUV`(/$^`^W
-M1?Y05^BB]/__@\009H/X_W0,9HE%_F9#9H/[)W;=QT7X555558/$]&H$:@2-
-M1?A0@\3X#[==\%-7Z)7R__^#Q!`%"`0``%"-1UQ0BX>$````_]"+1RR`)`.`
-MBT<L@`P#:@^W=?(/KW<8@\0@@\3X#[=%_E!7Z%GR__^)P\=%[`````#'1>@`
-M````@\00BT7L.T<8<T:)]H/$^%97Z)+U__^#Q!"#^/]T(/]%[#G8=!F#Q/Q3
-M4%?HK/K__X/$$(7`#X7!````_T=4_T7H1H'#``(``(M-Z#M/&'*\@WWL`'1*
-M:/__```/MT7R4`^W1?Y05^CA\O__@\00A<`/A88````/MTWRBU<P#[=%_F:)
-M!$H/MU7^BT<L@"0"@`^W5?Z+1RR*3>P(#`+K3Y"+1?!F.T7^=#C'1?01$1$1
-M@\3T:@1J!(U%]%"#Q/@/MT7P4%?H?_'__X/$$`4(!```4(U'7%"+AX0```#_
-MT(/$(`^W5?*+1S!FQP10__^#Q/@/MT7P4%?HG/S__XUER%M>7\G#58GE@^P,
-M5U93BUT(#[=-#(M#,`^W!$AFB47^9H/X_W14#[=5_HM#+(`D`H")S@^O<Q@Q
-M_SM[&',\C78`@\3X5E/H7O3__X/$$(/X_W0@BTL@T^B)P0^WT8M#+(`\`@!]
-M!`^W3?X/M]&+0RS^!`)'1CM[&'+'C67H6UY?R<.-=@!5B>6#[!Q75E.+?0B+
-M1QA`B47\QT7X`````&;'1?8``&;'1?0```^W1?9F.T<0#X.I````BT7T9CE'
-M*G<9@\3X#[=%]%!7Z#7___^+1?1`9HE'*H/$$`^W5?2+1S!F@SQ0_W1H#[<4
-M4(M'+(H$`HG#@^-_.5W\<E2$P'P$A=MU3(7;=#HQ]H/$^`^W1?2+5S`/MP1"
-MZPN)]D:#Q/@E__\``%!7Z/3Q__^#Q!!F@_C_=><Y7?QU!3EU^',1B77XB5W\
-MBT7T9HE%]H7;=!%F_T7TBT7T9CM'$`^"5____XM%_#M'&'<?#[=-]HM',`^W
-M%$B+10QFB1"#Q/A15^AL_/__ZP>)]K@_````C6786UY?R<.-=@!5B>6#[!Q7
-M5E.+70B+=0P/MWLH9H-["`!T;(GV9O]#*`^W0RAF.T,<<@@/MT,>9HE#*`^W
-M4RB+0RR`/`+_=4&-1?Q0C47Z4`^W0RA04^BF\___@\009H%]^FD\=!6#Q/@/
-MMT,H4%/H$?;__X/$$(7`=0X/MT,H9HD&,<#K$XUV`&8Y>RAUEH/$^%93Z%S^
-M__^-9=A;7E_)PU6)Y8/L#%=64XM="(MU#(M]$#MS/'4)BT-X@W@<`'1<.W,D
-M<T.#Q/A64^A)\O__B<*)4T2#Q!"#^O]T+(N#D````(E#0(/$]&H":``"``!0
-M4HU#7%"+@X````#_T(7`=`ZX`````.L@QT-``````(ES/(M#>,=`'`````"%
-M_W0%BT-$B0>+0T"-9>A;7E_)PU6)Y8/L'%=64XMU$(M%#&:)1?@/M]B)WXM5
-M"`-Z+(U%_E"-1?Q04U+H;^[__U:-1?I04XM-"%'HE/+__X/$(&:#??S_=`AF
-M@7WZ:3QT"L8'_^D/`0``B?:`)Q`/MT7^BW4(9CM&'',M@`^`#[=-_HM6+(`\
-M$?]T#XH$$21_/$!V!H`\$0!]#@^W5?Z+30B+02R`)`+O9H-]_``/C,4```"+
-M1?R+=0AF.T80#X.;````@\3X#[=U^%:+10A0Z,/Q__^)PP^W5?R+30B+03`/
-MMPQ0@\009H'[$1%U$8/$^%:+=0A6Z/#X___K>XGV9H/Y_W08#[?1BW4(BT8L
-M@#P"_W1#B@0")'\\0'8Z#[=5_(MU"(M&,(MU^&:)-%"`)^]F@?M5574&@">`
-M@`]J9H/Y_W0T@\3X#[?!4(M%"%#HE_C__^LBD&:!^U55=`FX%P```.L5B?:#
-MQ/@/MT7X4(M5"%+H<_C__S'`C6786UY?R<.058GE@^P<5U93BT4,BUT(,=+W
-M<QAFB47\#[?(BT,P#[<T2,'B"8E5^+\!````QT7T`````&:#_O]T-0^WUHM#
-M+(`\`O]T*8H$`B1_/$!V((/$^%%3Z&?Y__^#Q!"%P`^%BP$```^W5?R+0S`/
-MMS109HEU_F:#_O]T68/_)W=4B?:#Q/B#Q/@/MT7^4%/HA^S__P-%^%!3Z&'O
-M__^#Q"`\_W0P/!%T"SQ5#Y3`#[;0B57T@\3X#[=%_E!3Z#'N__]FB47^1X/$
-M$&:#^/]T!8/_)W:N@_\H=09FQT7^__]F@WW^_W5?@_\3=AF#Q/@/MT7\4%/H
-MR?C__X/$$(7`#X7M````@\3XC47^4%/H6?S__X/$$(7`#X75````@\3\#[=%
-M_%`/MT7^4%/HP_7__X/$$(7`#X6W````#[=5_(M#,`^W-%`/MU7^BT,L@#P"
-M_W0-B@0")'\\0`^'@````&H"_W40@\3X#[=%_E!3Z*CK__^#Q!`#1?A04^BG
-M\___A<!U;HM%_&8Y0RIV8V8Y=?YT.`^W5?Z+0RR`/`(`?"N*!`(D?SP_=S</
-MMU7^BT,L_@0"@WWT`'0W#[?&BTLL]@0(?W0;_@P(ZR:0@WWT`'4?#[?&BU,L
-MB@00)'\\/W8'N!\```#K"P^WUHM#+/X$`C'`C6786UY?R<.058GE@^P,5U93
-MBUT(OQT```"#.P!T"K@7````Z8(```"+10P[0R1R"+@;````ZW.09H.[E@``
-M`/]T*V;_@Y0```!F@;N4````_@!V&6;'@Y0``````(/$]%/H_/___X/$$(7`
-M=3W_0TPQ]H/_'74QD(M%##E#/'4'QT,\_____X/$_(M%$%"+10Q04^AX_?__
-MB<>#Q!!&@_X#?P6#_QUTT(GXC67H6UY?R<.)]E6)Y8/L'%=64XM="(M]#(,[
-M`'0,N!<```#I'0$``(GVBU40C00Z.T,D=AFX&P```.D&`0``C78`N!\```#I
-M^0```(GVQT7X`````.G=````@\3X5U/H>NW__XG&@\00@_[_#X2^````B?@Q
-MTO=S&&:)1?8/M\B+0S`/MQ1(BT,L@#P"_W0MB@0")'\\0'8D@\3X45/H@_;_
-M_X/$$(7`#X67````@\3X5U/H)NW__XG&@\00#[=%_K0`9HE%_L9%_@"#Q/QJ
-M`%93Z-_K__^#Q/1J!&H"C47^4(U&!E"-0UQ0BX.$````_]"+2R#3[HGQ#[?1
-MBT,L@\0P@#P"`'T+#[=5]HM#,`^W#%`/MU7V9CE3*G83#[?1BT,L]@0"?P^$
-M%?____X,`O]%^$?_0U"+11`Y1?@/@A?___\QP(UEV%M>7\G#D%6)Y3'`R<.0
-M58GEBT4(BT`DR<.058GE@^P44XM="(-[+`!T#H/$]/]S+.C\____@\00@WLP
-M`'0.@\3T_W,PZ/S___^#Q!#'0RP`````QT,P`````(-[-`!T#H/$]/]S-.C\
-M____@\00@WLX`'0+@\3T_W,XZ/S____'0S0`````QT,X`````(M=Z,G#58GE
-MBU4(C022P>`#*="-!(4@````R<.058GE4XM5"(M=#(M")(D##[="'HM*(-/@
-MB4,$BX*8````B4,(,<!;R<.-=@!5B>6#[#Q75E.+50B+71"-!)+!X`,IT(TT
-MA2````#'1=@`````@\3\:@YJ`(U%\%#H_/___X/$^%-6Z"7M__^#Q""%P`^%
-ML00``(M%%(U67(D0QX:8`````````&;'1@0``(U=\.L%D&;_1@0/MT8$9CM&
-M''-*@\3T:@!J#E.#Q/@/MT8$4%;HU.?__X/$$%"-1EQ0BX:`````_]"#Q""#
-MQ/QJ!F@8````4^C\____@\00A<!UL@^W1@1F.T8<<@RX&@```.DQ!```B?8/
-MMUX$0V:)7@:-7>#K!HGV9O]&!@^W1@9F.T8<<TJ#Q/1J`&H.4X/$^`^W1@90
-M5NA@Y___@\004(U&7%"+AH````#_T(/$((/$_&H&:!@```!3Z/S___^#Q!"%
-MP'6R#[=&!F8[1AQR!F;'1@;__P^W1?9FB48<BT7X9HE&'H/$](U%^E#H_/__
-M_XG"P>H)B58D#[=&'F8!1AR[`0```(M.((G8T^!(B484@\'WB=C3X(E&&(U$
-M$/\QTO=V&&:)1A"+1B33Z(G!#[?)#[=&'`^W5AXIT(/$$#G!?GEF@WX&_W1H
-M#[=%YF:)1AR+1>AFB48>@\3TC47J4.C\____B<+!Z@F)5B0/MT8>9@%&'(M.
-M((G8T^!(B484@\'WB=C3X(E&&(U$$/\QTO=V&&:)1A"+5B33ZHG1#[?)#[=&
-M'`^W5AXIT(/$$#G!?@JX%P```.G;`@``@\3T5NB#[/__@\00A<`/A<<"``#'
-M!@````"#Q/1J`@^W1AQ0_W8L@\3X#[=&!%!6Z`OF__^#Q!`%``(``%"-7EQ3
-MBX:`````_]")QX/$((7_=$UF@WX&_W0_@\3T:@(/MT8<4/]V+(/$^`^W1@90
-M5NC+Y?__@\00!0`"``!04XN&@````/_0B<>#Q""%_W00@\3T5NB+_/__B?CI
-M.P(``#';9CM>$',4#[?3BT8P9L<$4/__9D-F.UX0<NPQVV8[7AQS0F8[7AYR
-M&&8[7@1T$F8[7@9T#`^WTXM&+(`\`O]T'`^WTXM&+(`\`O]T!L8$`FOK"@^W
-MTXM&+,8$`FIF0V8[7AQROC';9CM>''-`B?8/M].+1BR*!`($ECP!=B>#Q/R-
-M1=Q04E;HB_;__XG'@\00A?\/A5;___^+1=P!1=@!AI@```!F0V8[7AQRPF;'
-M1@@```^W7AYF.UX<<S:)]@^WPP-&+(`X$'0%@#B0=12#Q/@/M\-05N@3\/__
-M@\00ZPJ)]H`X[W4#Q@#_9D-F.UX<<LQFQT8(```/MUX>9CM>'',9BU8LD`^W
-MPX`\$/]U!&;_1@AF0V8[7AQRZP^W1AYFB48HQT90`````,=&3`````#'1D@`
-M````QT98`````,=&5`````"+70R),\=#!.`3``#'0PC8%P``QT,4A!@``,=#
-M(-`9``#'0R1L&@``QT,8R!D``,=#'-P9``#'0PP`````QT,0`````(/$]`^W
-M1AS!X`)0Z/S___^)1C2#Q!"%P'0H,=MF.UX<<R")]@^WPXM6-&;'!(*MWHM6
-M-&;'1(("K=YF0V8[7AQRX@^W7AR+3B"#P?73XX/$]%/H_/___XE&.(7`=!6Q
-M53'2.=IS#8GVBT8XB`P"0CG:<O6+1=CW)2````#!Z@>)T,'@""G0BU78*<*)
-MT"7_````9HF&E`````^W5A"+1=B)TS'2]_-FB9:6````,<"-9;A;7E_)PY!5
-MB>575E.#/0`````"?@FX9@```.MIB?:A`````,'@`\>``````)@:``#'@`0`
-M````````_P4`````,=*_3````+Y0````NU0```"Y6````(T$DL'@`RG0P>`"
-MQP0X`````,<$,`````#'!!@`````QP0(`````$*#^@=VTS'`6UY?R<-5B>6X
-M`0```,G#B?95B>7)PXUV`%6)Y<G#C78`58GE,<#)PY!5B>7)PXUV`%6)Y3'`
-MR<.058GER<.-=@!5B>7)PXUV`%6)Y3'`R<.058GE,<#)PY!5B>7)PXUV`%6)
-MY8/L#%=64XM]#(,]``````=V"[AF````Z<8```"0,?:#/0`````'#X>G````
-MD(/$]/\U`````.C\____B<.A`````(D#@\3X:@)3Z/S___^#Q""#Q/Q7BT4(
-M4/\SZ/S___^)0RB#Q!"%P'1HQT-`("```,=#1"P@``#'0T@T(```QT-,/"``
-M`,=#4$0@``#'0U1,(```QT-85"```,=#7%P@``#'0V!D(```QT-D;"```,=#
-M:`````#'0VQT(```1O\%`````(,]``````</AEK___^%]G0&,<#K!XGVN#P`
-M``"-9>A;7E_)PY"0D%6)Y8M5"(M"&(M`*,:`!A````"+0AB+0"C&@`80```*
-MR<.)]E6)Y8M5"(M"&(M`*,:`!A````"+0AB+0"C&@`80```JR<.)]E6)Y8M%
-M"(M`&(M`*,:`!A````+)PXUV`%6)Y8/L$%93BW4(QD7_`(M&&/9`'`AT+#')
-MB<.+0RB*5?^*@`80````PHA5_T&#^0%^Z8M&&(M`*(J`!A```.LNC78`,<F+
-M7AB-=@"+0RB*5?^*@`<0````PHA5_T&#^0%^Z8M&&(M`*(J`!Q```"2`)?\`
-M``!;7LG#B?95B>575E.+70B+=0R+31"+?13V0Q4!=33WQP0```!T)(L1@>+_
-M`0``QP90````@_H'=PF!`0`!``#K:Y"#`?CK98UV`,<&`````.M:BT,8#[<1
-M9B-0"(G0#[?0*1'WQP0```!T!H'"``(``(M#&`^W0`HYPG,*QP8`````ZQR)
-M]HM#&`^W0`8YPG,)QP8!````ZP>0QP90````BT,8#[=`"D@AP@$16UY?R<.0
-M58GE@^P05E.+=0C&1?\`,<F+7AB+0RB*5?^*@"`0````PHA5_T&#^0-^Z8M&
-M&(M`*(J`!!```(A%_C')BUX8D(M#*(I5_XJ`(!````#"B%7_08/Y`7[IBD7^
-MP.@'-`$E_P```%M>R<-5B>6#[!!64XMU"#';C78`@\3T5NA_____@\00A<!U
-M"+@!````ZPR00X'[+W4``'[?,<"-9>A;7LG#B?95B>6#[`Q75E.+?0B+30PQ
-MV[IG9F9FB=#WZ8G0P?@"B<K!^A\IT#G#?3^Z9V9F9HG0]^G!^@*)R,'X'XG6
-M*<:0@\3T:@KH_/___X/$]%?H"?___X/$((7`=0JX`0```.L*C78`0SGS?-<Q
-MP(UEZ%M>7\G#D%6)Y8/L%%.+30B+50S&1?\`BT$8BT`HB)`$$```,=N+21B)
-M]HM!*(I5_XJ`(!````#"B%7_0X/[`7[I6\G#B?95B>6+10B+50R+0!B+0"B(
-MD`40``#)PY!5B>6+30B+01B+4"B*@@$0``"$P'4;QH("$```A8M!&(M`*,:`
-M`A```(6+01C&0!4`R<.058GE@^P44XM%"(M=#(/$^&H`_W`<Z/S___^(F`(0
-M``"(F`(0``"+7>C)PY!5B>6#[!B+50R*@@`0```\,'45BH(&$```B$7_BD7_
-MBI(&$```ZQ.0BH('$```B$7_BD7_BI('$```,-"(1?Z*1?ZH!'0&,<#K!XGV
-MN`$```#)PY!5B>6#[`B+50S&@@(0``"$QH("$```A,:"`A```(7&@@(0``"%
-MBH(`$```/"!T"HJ"`!```#PP=1>#Q/A2_W4(Z&?___^%P'4'N`$```#K`C'`
-MR<-5B>6#[!Q75E.+=0R+?1#'1?@`````A?9U"KX`@`P`OP``#P`Y-00```!S
-M.(DU!````#G^=RB)]HL=!````,:#`A```(3&@P(0``"$@04$`````"```#D]
-M!````';:B34$````.3T$````#X?E````BQT$````Z:H```"0@WWX`'5"@\3X
-M4XM%"%#HR?[__X/$$(7`=7J*@P`0``"$P'0,QH,;$```&NL*C78`QH,%$```
-M&L=%^`$```"+-00```#K3HGVBH,`$```/"!T"HJ#`!```#PP=7V#Q/A3BT4(
-M4.AS_O__@\00A<!U:8J#`!```#PP=0J*@QL0``#K"(GVBH,%$```B$7_BD7_
-M/!IU1:$$````!0`@``"C!````#GX=S*)P\:#`A```(7&@P(0``"%BH,`$```
-M/"`/A#O___^*@P`0```\,`^$+?___X-]^`%UNX-]^`!T"8GPP>@,ZP2)]C'`
-MC6786UY?R<.)]E6)Y8/L$%93BW4(BT8(#Z]&$$B+70PAP_9&%0%T#XG8P>@)
-MP>`(#[;3B<,)TX/$^&H55NCX_/__BT88BU`HBT`DB!P0BT88BT@HBU`DB=C!
-MZ`B(!`J+1AB+2"B+4"2)V,'H$(@$"H/$$/9&%01T$8M&&(M(*(M0)(G8P>@8
-MB`0*BT88]D`<"'0*BT`HQH`>$````(/$^&HQ5NB2_/__C67H6U[)PXUV`%6)
-MY8/L%%.+70R#Q/AJ$XM%"%#H</S__XM5"(M"&(M0*(M`)(@<$(M5"(M"&/9`
-M'`AT"8M`*(B8'A```(M=Z,G#C78`58GE5U93BW4(BWT,BTX8@'D4`78FBP<Q
-MTO=Q&(G#B-J(616+1AB+0"B(F`,0```/ML*+5A@/KT(8*0=;7E_)PU6)Y8/L
-M$%93BUT(BW4,@\3X:@#_<QSH_/___XG"BT,8B5`H@\3X5E/HD____X/$((/$
-M^(M+"`^O2Q"+%HG0,=+W\8G!#[;!4%/H]OO__XUEZ%M>R<.-=@!5B>6#[`Q7
-M5E.+?0B+=1#&1?\`BT<8]D`<"'0XBT`HBE7_BH`=$````,*(5?].B?.!_@`!
-M``!^!;L``0``4XM%#%"+1QC_<"17Z/S___^#Q!#K`Y`QVSG>?A>)\"G84(M%
-M#`'84(M'&/]P)%?H_/___XM'&/9`'`AT#XM`*(J`'Q```(M5#(@$%HUEZ%M>
-M7\G#C78`58GE@^P44XM="(/$_/]U$/]U#%/H_/___XM#&/9`'`AT"HM`*,:`
-M'A````"+7>C)PXUV`%6)Y8/L%%.+70B#Q/P/MD4,4/]U$%/H_/___XM#&/9`
-M'`AT"HM`*,:`'A````"+7>C)PY!5B>6#[!13BUT(QD7_`(M#&(M0*(M`),8$
-M$'"+0QCV0!P(=`J+0"C&@!X0``!P@\3X:AE3Z'?Z__^+2QB+42B*1?^*D@T0
-M````T(A%_XM1*(M!)(H$$"7_````BUWHR<-5B>6#[!!64XM="(MU$(/$^`^V
-M10Q04^BL_?__@\3X5E/H^OS__X/$((/$]%/H;OG__XUEZ%M>R<.-=@!5B>6#
-M[!!64XM="(MU#/9#%0)T0(/$^&C_````4^AJ_?__@\3T4^@Y^?__@\0@A?9T
-M-HM#&(M0*(M`)(GQB`P0BT,8]D`<"'0?BT`HB(@>$```ZQ2#Q/B)\"7_````
-M4%/H)_W__X/$$(M#&(M0*(M`),8$$("+0QCV0!P(=`J+0"C&@!X0``"`@\3X
-M_W404^A0_/__@\3T4^C'^/__C67H6U[)PU6)Y8/L%%.+70B#Q/AJ$%/HT_S_
-M_X/$]%/HHOC__X/$((/$]%/HEO[__Z@!=08QP.L'B?:X'0```(M=Z,G#B?95
-MB>6#[!Q75E.+=0B+?12+11")1?#'1?0`````@\3T_W8<Z/S___^#Q!"%P'0*
-MN!,```#I!P(``(/$^(U%#%!6Z.?\__^+11A0C44,4(U%]%!6Z!7W__^#Q"#V
-M1A4"=$"#??0!=3J+1AB+70QF(U@(#[?;@\,"@\3\#[=`"@-%#"G84&H`5NB1
-M_O__@\3\4VC_````5NBR_?__@\0@ZQ.0@\3\_W4,_W7T5NAM_O__@\00BT48
-MJ`)T#(/$]%;H\O7__X/$$/9&%0$/A:D```"+11BH!'06BT4,@^`')?__``"Z
-M"````(G3*</K#0^V50RX``$``(G#*=,Y^WX"B?LIWX/$_%.+1?!05N@)_?__
-M@\00A?]^<X7;?A2#Q/16Z)W^__^#Q!"%P`^%$0$``(M%&*@$=!F+50R!P@#_
-M__^+10R#X`<E__\``"G"B54,@\3\B=@#10Q0_W7T5NB\_?__@\3\5XM%\`'8
-M4%;HJ/S__X/$(.L4C78`@\3\5XM%\%!6Z)+\__^#Q!"+11BH`@^$C@```(/$
-M^&HA5NB1]___BT88@\00]D`<"'0=,=*-=@"+1AB+0"C&@"`0````0H/Z`G[M
-MZQ.-=@"#Q/QJ`VH`5NAW_/__@\00@\3X:C%6Z$WW__]J!HU=^%-H$!```%;H
-M_/___X/$((/$]%;HV/3__X/$_&H&4U;H#/S__X/$((/$_&H":`@```!6Z/G[
-M__^#Q!"#Q/16Z)7]__^#Q!"%P'4-@\3X:AA6Z//V__\QP(UEV%M>7\G#D%6)
-MY8/L'%=64XMU%(M]&(M%$(E%_,=%^``"``#WQP0```!T!\=%^`@````/MT4,
-MBU7X2B'0BUWX*<.#Q/2+10A0Z/KV__^#Q!"%]GY"C78`.?-^`HGS@\3T@?L`
-M`@``=`.#Y_V)^%!3BT7\4(M%#%"+10A0Z#_]__^#Q""%P'41*=X!70P!7?R+
-M7?B%]G_!,<"-9=A;7E_)PXUV`%6)Y8/L+%=64XMU",=%Y`````#'1>@`````
-MBT4,B47L@\3XC47L4%;H&_K__XM%&%"-1>Q0C47H4%;H2?3__X/$((/$_/]U
-M[/]UZ%;HJ_O__X/$$(M%&*@"=`R#Q/16Z$CS__^#Q!#V1A4!#X67````BT48
-MJ`1T&(M%[(/@!R7__P``N@@```")TRG#ZP^)]@^V5>RX``$``(G#*=,[711^
-M`XM=%(M]%"G?@\3\4XM%$%!6Z.CY__^#Q!"%_WY=BT48J`1T&8M5[('"`/__
-M_XM%[(/@!R7__P``*<*)5>R#Q/R)V`-%[%#_=>A6Z`O[__^#Q/Q7BT40`=A0
-M5NB?^?__@\0@ZQ:)]H/$_(M%%%"+11!05NB'^?__@\00BT48J`(/A)L```"#
-MQ/QJ!HU%^%!6Z&KY__^#Q/16Z,WR__^#Q""%P'1P9H-]&`!\(X/$](M%&(#,
-M@%"+1110BT404(M%#%!6Z)?^___IC````(GV:@:-7?!3:!`0``!6Z/S___^*
-M5?"*1?2(1?"(5?2*5?&*1?6(1?&(5?6#Q/QJ`5.+11!0Z/S___^#Q""%P'0'
-MQT7D&0```(/$]%;H-?+__X/$$(/$^&H85NA_]/__@\00BT48J`1T(`^W1>R+
-M5A@/MTH,C5'_(=`#110YR'4)@\3T5NBE\___BT7DC67(6UY?R<.)]E6)Y8/L
-M'%=64XMU%(M]&(M%$(E%_,=%^``"``#WQP0```!T!\=%^`@```"#Q/2+10A0
-MZ&GT__\/MT4,BU7X2B'0BUWX*<.#Q!"%]GY"C78`.?-^`HGS@\3T@?L``@``
-M=`.#Y_V)^%!3BT7\4(M%#%"+10A0Z(/]__^#Q""%P'41*=X!70P!7?R+7?B%
-M]G_!,<"-9=A;7E_)PXUV`%6)Y8/L'%=64XMU"(M]#,=%^`````")^P^O7@2)
-M7?R#Q/3_=ASH_/___X/$$(7`=`NX$P```.G%`0``D(M%$(T4.(M&&`^W0`X/
-MKT8,.<)^"[@=````Z:4!``"0@\3T5NB?\___B=B+3A@QTO=Q&(G#B-H/MMI#
-M#Z]9&(G8F?=^!(G#BU40C00Z@\00.=A^38/$_(G8*?@IPHG04%-6Z%W___^#
-MQ!"%P'0NZ5$!``"0QT7X'0```(/$^&C_````5NA?]O__@\3T5N@N\O__@\0@
-MZ1P!``")]BG[B5T0@\3XC47\4%;HOO;__\=%]`````"#Q!"+31`Y3?0/C?(`
-M``"+1A@/MT`2B?L/K]B#Q/AH_P```%;H"O;__X/$^&H15NB'\O__@\0@@\3T
-M5NC+\?__@\3X:F!6Z.CU__^#Q""#Q/AJ%5;H8O+__XM&&(M0*(M`)(@<$(M&
-M&(M(*(M0)(G8P>@(B`0*@\00]D85!'01BT88BT@HBU`DB=C!Z!"(!`J+1ACV
-M0!P(=`J+0"C&@!X0````@\3X:A%6Z`WR__^#Q/AHT````%;H=_7__X/$((/$
-M^&H>5NA]\?__@\00A<!U#(/$]%;H,?'__X/$$(/$]%;H)??__X/$$*@!#X7.
-M_O___T7T1XM%$#E%]`^,#O___X/$^&H85NBO\?__BT7XC6786UY?R<-5B>6+
-M10B-%("-%%"-!)4`!0``R<.-=@!5B>6#[!13BUT(@\3T:@#_=1"+0QC_<"#_
-M=0Q3Z"/]__^+0QS'0!P!````BT,8BT`@BUWHR<.)]E6)Y8/L%%.+30B*70R*
-M11"(1?^+41B`>A4`#X5L`@``@WT4``^%8@(``&8/ML-FB0*+41AF#[9%_V:)
-M0@*+01AFQT`2$``/ML,]F`````^$*`$``#WL````#X5-`@``#[9%_X/X=@^$
-MY````'\F@_AS#X2A````?PN#^&1T0.DI`@``D(/X=0^$IP```.D:`@``B?8]
-MY0```'0]?P\]XP```'0TZ0,"``"-=@`]Y@```'1%/>H````/A>X!``!FQP%D
-M[(M!&&;'0`0``<=!"```(`#IRP$``&;'`>7LBT$89L=`!``"QT$(``!``(!)
-M%0'IK0$``(GV9L<!YNR+01AFQT`$``+'00@``(``@$D5`>F-`0``B?9FQP%S
-M[(M!&&;'0`0``L=!"`````&`214!ZS:09L<!=>R+01AFQT`$``+'00@````"
-M@$D5`>L:D&;'`7;LBT$89L=`!``"QT$(````!(!)%06+01@/MU`2`=)FB5`2
-MZ2@!``"0#[9%_X/X=0^$NP```'\A@_AK=&!_"H/X9'0_Z1`!``"#^',/A(,`
-M``#I`@$``(GV/>4```!T/7\/@_AV#X2B````Z>D```"0/>8```!T03WJ````
-M#X76````9L<!9)B+01AFQT`$``''00@``"``Z98```!FQP'EF(!)%0&+01AF
-MQT`$``+'00@``$``ZWN09L<!YIB`214!BT$89L=`!``"QT$(``"``.M?D&;'
-M`7.8BT$89L=`!``"QT$(`````8!)%0'K-I!FQP%UF(M!&&;'0`0``L=!"```
-M``*`214!ZQJ09L<!=IB+01AFQT`$``+'00@````$@$D5!8M!&`^W4!(!TF:)
-M4!*`214"ZQ=F#[;#BU$89CL"=11F#[9%_V8[0@)U";@!````ZP2)]C'`6\G#
-MC78`58GE@^P,5U93BUT(BWT,QD7_`(/$^&B0````4^CW\?__@\3X:AU3Z'3N
-M__^+0QB+4"B+0"3&!!``BT,8@\0@]D`<"'0*BT`HQH`>$````(/$^&H94^A&
-M[O__@\3T:@KH_/___XM#&(M0*(I%_XJ2#1````#0B$7_,<F#Q""+<QB+1BB*
-M5?^*@"`0````PHA5_T&#^0%^Z8M#&(M0*(M`)(H4$(A5_H/$]&H*Z/S___^+
-M0QB+4"B*1?^*D@T0````T(A%_S')@\00BW,8BT8HBE7_BH`@$````,*(5?]!
-M@_D!?NF+0QB+4"B+0"2*!!!7)?\```!0#[9%_E!3Z$O\__^#Q!"#^`%T!S'`
-MZ84```#_0PR#Q/AJ$%/H@NW__XM#&(!X%0!U:87_=65FQT`*``&+4Q@/MT($
-M9HE"!O9#%0%T#HM#&&;'0`P0`.L,C78`BT,89L=`#`@`BT,8#[=0!DIFB5`(
-MBTL8#[=!$@^W408/K\*)0P2+0PB9]WL$9HE!#HM#&`^W4`QF`U`&9HE0$+@!
-M````C67H6UY?R<.-=@!5B>6#[!Q75E.+=0C'1?@`````QD7S`(/$]/]V'.C\
-M____B<*-!)*-!$*-!(4`!0``B488@\3T@\3T_W8<Z/S___]0Z/S___^)PHM&
-M&(E0((/$,(/$^&B%````5N@K[?__@\3X:A#_=ASH_/___X/$((/$^&IX_W8<
-MZ/S___^+1AC'0!@!````BT88QD`4!(M&&,9`%03'1@P`````QT8(```@`,=&
-M$`$```"#Q/AJ`/]V'.C\____B<*+1AB)4"B+5AB+0BB#Q""*@``0```\,'45
-M@$H<"(M&&,=`)``(``#&1@("ZP^0BT88QT`D`!@``,9&`@&#Q/B-1?A05NCY
-M[___BU88@\00]D(<"'0=BT(HBH`&$```B$7_BU(HBD7_BI(&$```ZQZ-=@"+
-M5AB+0BB*@`<0``"(1?^+4BB*1?^*D@<0```PT(A%_HI%_J@$#X2-`0``BT88
-MBT`HBH``$```OQ`````\,'4%OP(```"+1AC&0!4`BT88B<*`>!4#=T>0B="+
-M4"B*0!6(@@,0```QVSG[?2.#Q/@/ML-05NB;Z___@\3X:/\```!6Z,7N__^#
-MQ"!#.?M\W8M&&/Y`%8M6&(!Z%0-VNHM&&,9`%0"+1AB+4"B*0!6(@@,0``"#
-MQ/AJ&%;H%>O__\9%\@"#Q!")]C';.?M]=8GVBT7XB47T@\3XC47T4%;H[>[_
-M_X/$^%-6Z/S___^#Q""#^`%U)XI%\O[`B$7S@'WR`'4-BT88BU8(#Z]6$`%0
-M&(M&"`^O1A`!1?CK(H!]\@!U%HG?BU88B=@/KT8(#Z]&$(E"&.L(B?:)^\9%
-M\@1#.?M\C?Y%\H!]\@,/AGC___^+1AC&0!4`BT88BU`HBD`5B((#$```@WX,
-M`'1,QT7X`````(/$^(U%^%!6Z%#N__^+1AB*5?.(4!2#Q/16Z.KG___'1B@D
-M+0``QT8L8#```,=&),0O``#'1B"`,@``@$X4`C'`ZP>)]K@:````C6786UY?
-MR<.-=@!5B>6#/0`````$?QRA`````,'@`L>```````PW``#_!0`````QP.L%
-MN&8```#)PY!5B>6#[!13BUT(]@,(=":#Q/3_LY@```#H_/___X/$$(7`=`/&
-M`P"#Q/3_<VR+@X@```#_T,8#`#'`BUWHR<.058GE@^P05E.+70@Q]H-]#`%U
-M68/$](U#-%#H_/___X/$$(7`=0JX"0```.F%````@\3X:@'_LY@```#H_/__
-M_X/$]/^SF````.C\____@\0@]@,(=%V#Q/AJ`?]S;(N#A````/_0B<;K28GV
-M]@,(=!6#Q/AJ`/]S;(N#A````/_0B<:#Q!"#Q/3_LY@```#H_/___X/$^&H`
-M_[.8````Z/S___^#Q""#Q/2-0S10Z/S___^)\(UEZ%M>R<-5B>6#[`B+10B#
-MQ/QJ`/]U#/]P;(M`</_0R<.058GE@^P44XM="(/$]%/H_/___X/$$(7`=3V#
-MQ/QJ`8U#;%")V"T`````:<"7;_F6P?@"4.C\____A<!U&L=#$`````#'0Q@`
-M````QT,4`````(`+"#'`BUWHR<-5B>6#["Q75E.+?0C'1>``````QT7<`0``
-M`(/$]%?H@?___X/$$(7`#X5;`@``QT7H`````,=%Y`````#I]P```(UV`,=%
-MW`````"#Q/B+1>105^C\____B<.#Q!"%VP^$[P$``('[``````^$^P$``&:!
-MN_X!``!5J@^%R````,=%[`````"#?>``#X6>````@WW<``^%E````(UU^(GV
-MBU7LP>($BX0:O@$``(E%\(N$&L(!``")1?2+A!K&`0``B47XBX0:R@$``(E%
-M_(I%]#P$=!-_"3P!=`WK.8UV`#P%=!P\!G4NQT7@`0```(/$]%;H_/___XE'
-M$.L6C78`QT7<`0```(/$]%;H_/___XE%Y(/$$/]%[(-][`-W$(-]X`!U"H-]
-MW``/A''_____1>B#?>@'=Q"#?>``=0J#?=P!#X3\_O__@\3X_W<05^C\____
-MB<.#Q!"%VW4+N!L```#I(@$``)"!^P````!U#+@9````Z0\!``")]H`[Z70;
-MBP,E_P#_`#WK`)``=`VX"@```.GP````C78`@\3TC4,+4.C\____@\009CT`
-M`@^%SP````^V0PV)1P0/MD,0B4<<#[=#%HE'(`^W2PX#3Q")3Q0/MT,6`<B)
-M1Q@/MD,0#[=3%@^OP@'(B4<D@\3TC4,14.C\____)?__``#!X`5(P>@)0(E'
-M*`-')(E'+(/$](U#$U#H_/___R7__P``A<!U`XM#(`-'$"M'+#'2]W<$0(E'
-M"#WT#P``=D>+1P3!X`F)1PS'1S`"````@`\",<#K-8/$]/]W;(N'B````/_0
-MN!L```#K((UV`(/$]/]W;(N'B````/_0N!D```#K"(UV`+@+````C67(6UY?
-MR<.-=@!5B>6#[!!64XM="(MU#(/$]/]S;(N#C````/_0.T,0=@LK0Q")1A`Q
-MP.L-D,=&$`````"X'P```(UEZ%M>R<.058GE@^P,5U93BWT,BW<,BT<0BU4(
-MBUH0`<.+1Q2)1?S'1Q0`````.4<4#X.%````@\3X4XM5"%+H_/___X/$$(7`
-M="0]`````'4)N!D```#K98GV@\3\:``"``!05NC\____ZS>-=@"#Q/2+10C_
-M<&R)PHN"C````/_0@\00.=AW"K@;````ZRZ-=@"#Q/QH``(``&H`5NC\____
-M@\00_T<40X'&``(``(M%_#E'%`^">____S'`C67H6UY?R<.058GE@^P,5U93
-MBWT(@\3XBT4,4%?H_/___XG"@\00A=)T"('Z`````'4&,<#K:(GVBT4,*T<4
-MP>`(C5C^#Z]?!`-?+#'VC78`BTT0#[<$#F:#/!8`=!YFA<!U&8/$_/]W!%/_
-M=VR+AX````#_T(/$$(7`=2*#Q/B+10Q05^C\____B<*#Q!`#7P2#Q@*!_O\!
-M``!VM#'`C67H6UY?R<.)]E6)Y8/L#%=64XM%#(MP#(M`$(M5"(M:$`'#BT4,
-MBT`4B47\.UH8<TD!V#M"%'9",?\[??QS*HGVBU4(.UH4<A,[6AAS#H/$_%93
-M4NC\____@\001T.!Q@`"```[??QRV(M%#(MP#(M`$(M5"(M:$`'#BT4,QT`4
-M`````.LIC78`@\3\5E.+10C_<&R)PHM"=/_0@\00A<!U%XM%#/]`%$.!Q@`"
-M``"+5?PY4!1RTC'`C67H6UY?R<-5B>6#[!13BT4(BUT,@\3\C57\4O]S$/]P
-M;(M`</_0A<!T'3T`````=0JX&0```.L4C78`BT7\B4,4,<#K!XGVN!L```"+
-M7>C)PXGV58GE@^P(BU4(BTT,BT$0`T(0@\3\_W$44/]R;(N"@````/_0R<.)
-M]E6)Y8/L$%=6BU4(BT4,BW`,@\3X_W(04NC\____A<!U![@;````ZQT]````
-M`'01B?>)QORY"0```/.E,<#K!I"X&0```(UEZ%Y?R<-5B>6#[!!64XM="(/$
-M^(US.%;_LY@```#H_/___X/$$(7`=0Z#Q/16BT-H_]"`"P$QP(UEZ%M>R<.-
-M=@!5B>6+10B`(/[)PY!5B>6+50B+10R+2`P/MT(X9HD!BT(\B4$$BT)`#Z]"
-M1(E!"(M"0(E!#(M"2(E!$(I".CP!=!I_"(3`=`SK'HGV/`)T%.L6B?;&00(`
-MZPZ)]L9!`@'K!HGVQD$"`C'`R<-5B>6#[!13BUT(BTT,BT$4`T$0BU-`#Z]3
-M1#G0?Q&+01"9]WL\BT,\*=`Y011^";@S````ZR")]H/$]/]Q!/]Q%/]Q#/]Q
-M$(U#.%"+0US_T(7`=0(QP(M=Z,G#D%6)Y8/L%%.+70B+30R+010#01"+4T`/
-MKU-$.=!_$8M!$)GW>SR+0SPIT#E!%'X)N#,```#K((GV@\3T_W$$_W$4_W$,
-M_W$0C4,X4(M#8/_0A<!U`C'`BUWHR<.058GE@^P,5U93BUT(BTT,BT$4B<<#
-M>1"+<T`/KW-$B?"9]WL\.<=^"+@S````ZQF0@\3\_W$4_W$0C4,X4(M#9/_0
-MA<!U`C'`C67H6UY?R<-5B>6+10B+50R+@)@```"+0"C!X`R)`C'`R<.058GE
-M@^P,5U93BWT,BW40BUT4QP<`!```QP80````BP_!X02+10@QTO?QB=&)`X7)
-M="C_`XL/#Z\+BT4(,=+W\8G1B0:%R702_P:+#@^O"XM%"#'2]_&)P8D/6UY?
-MR<.058GE@^Q,5U93BW4(BT4,BU@,QD7'`8L`B47H]@8!=1B#Q/16Z*O]__^#
-MQ!"%P`^%"0$``,9%QP"-1=2)1?2#Q/B-1>A05NC1_?__@\00A<`/A><```"+
-M1=1FB4,,BT789HE#%(M%W(E#$(I%UHA#%H/$_&H(:"0```"-0QA0Z/S___^#
-MQ/QJ!&@L````C4,B4.C\____@\0@@\3XC4,(4%;HWO[__X/$$(7`#X6,````
-M@\3XC47(4/]V;(N&D````/_0@\00A<!U<XM%R(D#BT7,B4,$C4,T4(U#,%"-
-M0RQ0_W7(Z/S___^#Q!"_0$(/`(!]U@!U!;^@A@$`BT7<F?=]V(G!#Z_/BU70
-MB=`QTO?QB<'W)3````")T,'H`XT$@`'`*<&)R/[`B$,7@'W'`'4)@\3T5NC\
-M____,<"-9:A;7E_)PXUV`%6)Y8/L#%=64XM]#(,]``````!U#>C\____A<`/
-MA1L"``"+!SL%`````'(,N!0```#I!P(``(GVBQ>-!)+!X`,IT(TTA0````"#
-MQ/AJ`5;H_/___X/$$(7`#X7>`0``@WT($'=WBT4(_R2%-````)#V!@$/A*\`
-M``"#Q/16Z/S___^#Q!#IG@```(GV]@8(=`N['P```.F5`0``D/8&`708@\3T
-M_[:8````Z/S___^)PX/$$(/[(G4.@\3T5NC*^___B<.#Q!"%VW1=@\3T5NC\
-M____@\00Z4$!``#V!@AT/(/$]/^VF````.C\____@\00A<!T#(/$]%;H_/__
-M_X/$$/8&"'06BT4(2(/X$7<(_R2%>````)#V!@)U"[LW````Z0D!``"0@WT(
-M$@^'Y@```(M%"/\DA<````"#Q/16Z)OU___IQ````(GV@\3T5NC\____Z;0`
-M``")]H/$^/]W#(/$]/\WZ/S___^#Q!!0Z/S____IE````(GV@\3X5U;H[O?_
-M_^F#````D(/$]%;H[_3__^MWD(/$^%=6Z!+X___K:H/$^%=6Z&;Y___K7H/$
-M^%=6Z!+Z___K4H/$^%=6Z%+Z___K1H/$^%=6Z&[Z___K.H/$^%=6Z/;Z___K
-M+H/$^%=6Z$K[___K(H/$^%=6Z)K[___K%H/$^%=6Z.K[___K"H/$^%=6Z*K\
-M__^)PX/$$.L(C78`NP$```"%VW4/@\3X:@!6Z/S___^)P^L+@\3X:@!6Z/S_
-M__^)V(UEZ%M>7\G#C78`58GE@^P05E.#/0``````#X61````O@`````QVX/$
-M]%/H_/___XF&F````(D8Q@8`@\000X'&G````(/[!W;=QP4``````0```.C\
-M____QP4``````````.C\____A<!U1^C\____A<!T"NL\N!\```#K-9`QV[X`
-M````.QT`````<R.0@\3TC48T4.C\____@\00A<!UU4.!QIP````['0````!R
-MWC'`C67H6U[)PY!5B>6#[`Q75E.^`````#'_.ST`````<U^#Q/AJ`5;H_/__
-M_X/$$(7`=3Z#Q/16Z/S___^#Q/16Z/S___^#Q""#Q/3_MI@```#H_/___X/$
-M](U>-%/H_/___X/$((/$]%/H_/___X/$$$>!QIP````[/0````!RH<<%````
-M``````"-9>A;7E_)PY"0D%6)Y5.+30B+70QF#[81BD$!)`/!X`@)PF:)$P^^
-M40&!XOP```#!^@**00(D#V:8P>`&"=!FB4,"#[Y1`H'B\````,'Z!(I!`R0_
-M9IC!X`0)T&:)0P0/OE$#@>+`````P?H&9@^V003!X`()T&:)0P9;R<.058GE
-M5E.+30B+70P/O\,!P`-%$(/`_C'29CG:?1F-=@")SH/F`6:),(/`_F;!^0%F
-M0F8YVGSJ6U[)PXGV58GE5U93BU4,B=$/O\&-!$7^____BUT(`<,Q_[X!````
-M9DEFA=)^&`^W`X/#_F:%P'0""?<!]HG(9DEFA<!_Z`^_QUM>7\G#58GE@^P(
-M@\3T@\3T#[]%"%#HL@$``(G"N/\#```IT)A0Z&H!``"8R<.-=@!5B>6#[!!6
-M4XM%"(M5#(G!B=9FA<!T!6:%TG4$,<#K-H/$]`^_P5#H<`$``(G#@\3T#[_&
-M4.AB`0``C008@\0@9CW_`WX%!0'\__^#Q/284.@/`0``F(UEZ%M>R<.-=@!5
-MB>6#[!13BUT(@\3X@\3T#[]%#%#H6O___YA0#[_;4^A[____F(M=Z,G#D%6)
-MY8/L'%=64V;'1?X``&;'1?C^`8UV`(M%"`^W.(/$]`^_1?A0Z*T```")PV:)
-M7?R+1?@!P(/$$&8]_@-^!04!_/__9@'`9CW^`WX%!0'\__^#Q/284.A\````
-M9HE%^KX!````@\00@\3X#[_;4P^_QHM5"`^_!$)0Z/7^__\QQX/$^%,/OT7\
-M4.CE_O__B<.#Q"!F1F:#_@-^S(/$^`^_1?I0#[_'4.@G____B<(/OT7^BTT,
-M9HD408/$$&;_1?YF_T7X9H-]_@,/CDC___^-9=A;7E_)PU6)Y8M-"#'2N`$`
-M``!F.<I](HGV9@'`9CW_`WX0J`AT!P7Y^___ZP4%"?S__V9"9CG*?."8R<.0
-M58GEBT4(B<%FA<!U"[C_____ZSB8ZS60,<"Z`0```)!F.<IT[V8!TF:!^O\#
-M?A/VP@AT"('"^?O__^L&@<()_/__9D!F/?\#?M8QP,G#B?95B>6#[!Q75E.+
-M11!FB47^9L=%_```9L=%\@``9CE%_`^-(@$``(GV#[]%_(M5#`^W%$)FB57T
-MBTT(#[\$08T$@`'`@\#ZB<=FP?\#C13]`````"G09D=F@_@'=6,/OT7RB?I"
-MBUT49HD40V;_1?*+3?3VP0%T#8M=&&;'!$.``.L+B?:+51AFQP1"``!FP7WT
-M`0^_1?*+311FB3Q!BU7TM@"+71AFB11#9O]%\@^_1?*+5?1FP>H(9HD40^MT
-MB?:Z"````"G"9HE5^K@*````*=`/OUWRBTT49HD\60^_\(M5]&8C%'44````
-M#[_2N`@```")P2GQT^*+11AFB1189O]%\@^_1?2)\=/X9HE%]`^_1?)/BUT4
-M9HD\0P^_5?J+7?1F(QQ5%````(M-&&:)'$%F_T7R9O]%_`^W1?YF.47\#XS@
-M_O__9L=%_```OO____\/MU7R9CE5_'U?C78`#[]-_(M=&&:#/$L`=$`/O]:+
-M710/MP1+9CL$4W429H7V?`V+11@/MPQ(9@D,4.L>1@^_W@^_5?R+310/MP11
-M9HD$68M-&`^W!%%FB0199O]%_`^W7?)F.5W\?*2-1@&86UY?R<.-=@!5B>6#
-M[`B#Q/0/OT4(4.C5_?__,<F#Q!")PL'J"8/B`0'`@.0#"=!F06:#^0A^Z8/$
-M])A0Z'?]__^8R<-5B>6#[#Q75E,QR3'2C78`#[_"BUT(9H,\0P!T`4%F0F:#
-M^@-^ZF:%R74),<#I2`0``(GV9H/Y`P^.U@```(/$^(M5"`^_`E`/OT("4.@>
-M_/__9HE%U(/$^(M-"`^_00)0#[]!!%#H!?S__XG&@\0@@\3XBUT(#[]#!%`/
-MOT,&4.CK^___@\009CEUU`^%@@```&8YQG5]@\3T#[_>4^@)_?__@\009CV>
-M`7]HBU4,9HD"@\3T4^@I^___B<(QVX/$$(GV@\3X#[_"4%#H/_O__XG"@\00
-M0X/["'[H@\3XBTT(#[]!`E"#Q/@/OT744`^_PE#H&/O__X/$$)A0Z`[[__^+
-M71!FB0.X`0```.EH`P``B?:#Q/B+50@/OT($4`^_`E#HZ/K__XG#@\3XBTT(
-M#[]!`E`/OT$"4.C1^O__B=XQQH/$(&:%]@^$T@(``(/$^(M="`^_0P90#[]#
-M`E#HK/K__XG#@\3XBU4(#[]"!%`/OT($4.B5^O__B=HQPH/$(&:%T@^$E@(`
-M`(/$^`^_QE`/O\)0Z-7Z__^)QX/$^(M-"`^_0010#[]!`E#H7OK__XG#@\0@
-M@\3XBU4(#[]"!E`/OP)0Z$7Z__^)VC'"@\009H72#X1&`@``@\3X#[_&4`^_
-MPE#HA?K__XG#@\3X@\3X#[_#4%#H$_K__YA0#[_'4.AH^O__B<*#Q#"#Q/R-
-M1=A0:@H/O\)0Z$'Y__^#Q!!F@WW<``^%]`$```^W1>IFB47TBTW89C--VF:)
-M3?:+1>1F,T7J9HE%^(M5X&8S5>IFB57R#[=%WC-%X#-%Y&:)1>Z+3=@QP6:)
-M3>R+1>@QR&:)1?P/MT7F,=`S1?QFB47Z#[=%XF8S1?IF,T7V,<AFB47P9L=%
-M_@``@\3X:@J-1>Q0Z//X__^)QXGZ@\H!9HE5UH/$^`^_QU`/O]M3Z$SY__^)
-MQX/$((/$^`^_1=904^@Y^?__9HE%UH/$]`^_QU#HQ?K__V:)1=*#Q""#Q/0/
-MOT764.BQ^O__9HE%T(/$$&:!?=*>`0^/$P$``&8]G@$/CPD!```/MTW6,?EF
-MB4W4@\3T#[_?4^B6_/__B<:#Q/A34^C6^/__B<*#Q""#Q/@/O\)0#[_&4.@A
-M^?__B<:#Q/@/OT744`^_QE#HKOC__XG#@\0@9H7;#X2Q````@\3X#[]%UE"+
-M50@/OP)0Z(SX__^)PHM-"&8S40*#Q!!FA=(/A(@```"#Q/@/O\-0#[_"4.C'
-M^/__BUT09HD#@\3T#[]=UE/H"/S__XG&@\0@@\3X4U/H1?C__XG"@\3X#[_"
-M4`^_QE#HD_C__XG&@\0@@\3X#[]%U%`/O\90Z!WX__^)PX/$$&:%VW0D@\3X
-M#[_'4(M5"`^_`E#H`/C__XG"BTT(9C-1`H/$$&:%TG4'N/_____K4H/$^`^_
-MPU`/O\)0Z#CX__^+71!FB4,"BT709CE%TGX<BU4,9HD"#[=-TF:)2@(/MQ,/
-MMT,"9HD#ZP^)]@^W1=*+70QFB0.+5=!FB5,"N`(```"-9;A;7E_)PXGV58GE
-M@^PL5U93BUT(BWT,@\3XC47X4%/H3/;__V8/MD,%9HE%YH/$^(U%\%"-1?A0
-MZ./W__^#Q""#Q/R-1>Q0C47H4(U%\%#H,/O__XG!@\009H7)=08QP.M[B?9F
-MA<E\;S'2#[_!B<,YPGT6C47HD+Z>`0``9BLT4&:)-%!".=I\[H/$](M%%%"+
-M71!3#[_!4(U%[%"-1>A0Z-KX__^(!S'`,=*`/P!^&@^^#XMU$&:!/%8``G\'
-MBUT49C,$4T(YRGSI9CM%YG4'N`$```#K!;@"````C67(6UY?R<.-=@!5B>6#
-M["Q75E.-1>A0C47T4(U%YU#_=0SH_/___X/X`74Z,<F`?><`?C"-1?2)1>"-
-M=>@/OEWGD(T4"8M]X`^_!#HS11`]_P$``'\)BA0RBWT(,!0X03G9?-XQP(UE
-MR%M>7\G#58GE@^Q,5U93QT7(`````(/$](M%"%#H_/___XG"OQH```"#Q/B-
-M1<Q04NC\____B<:#Q""%]G0)@_X:#X7$````BU4,QT(H`````,="#`````#'
-M0A``````,=L['0````!]1X7_=$>#/-T$`````'0LC13=`````+D`````C47(
-M4#'`A?9U`XU%S%"+10Q0BT4(4(L$"O_0B<>#Q!!#.QT`````?02%_W6]A?]U
-M58-]R`!T#X/$](M%R%"+0##_T(/$$(-]$`!T.C';ZP.)]D,['0````!]*XT$
-MW0````"#N`0`````=>=J`&H`BU4,4HM5"%*+@`````#_T(/$$(7`=<R)^(UE
-MJ%M>7\G#B?95B>4QP,G#D%6)Y8/L"(M%"(/$^/]U#/]P'.C\____R<.-=@!5
-MB>6#[!13BU4(BUT0BT44@\3\4(/$_%#_=0Q2BT(@_]"#Q!!04^C\____,<"+
-M7>C)PXGV58GEN!,```#)PXGV58GEN!,```#)PXGV58GE@^P(BT4(@\3\:@!J
-M`/]P'.C\____R<.)]E6)Y8/L'%=64XM]",9%_`"#Q/B+11!0_W<<Z/S___^)
-MP\9%^P"#Q!#&1?K_@WT,`'0$QD7Z\#'VBD7ZB`0>B`0>A?9U!8H#B$7[@WT,
-M`'084VB0````BT40`?!05XM%#/_0@\00ZP60Q@0>D(7V=0B*`XA%_.LMD(H$
-M'CI%_'4'B@,X1?MT'8I%_,'@"(H4'F8/MM()T&:)!XI%^H@$'NL/C78`BD7Z
-MB`0>1H/^#GZ(C4;_A<9T"6;'!P``ZP6)]HEW$(UEV%M>7\G#D%6)Y8/L#%=6
-M4XM]",9%__^#?0P`=`3&1?_P@\3\:@"+11!05XM'(/_0B<:#Q!"#?0P`=!16
-M:)````!J`%>+10S_T(/$$.L$D,8&D,='#`````")]H/$_&H`BT<,#Z]'"`-%
-M$%!7BT<@_]")QH/$$(-_#`!^&8H&B<+!X@B+1Q"*!#`E_P````G"9CL7='6#
-M?PP`#Y3`#[;8.U\0?5.-=@"#?0P`=!Y6:)````"+1PP/KT<(`T40`=A05XM%
-M#/_0@\00ZP3&!#.0B@0SB<+!X@B)V`-'$(H$,"7_````"<)F.Q=U'XI%_X@$
-M,T,[7Q!\L(M'$`%'#(%_#,\'```/CE'___^#Q/QJ`(M%$%!7BT<@_]")QHI%
-M_X@&,<"#?PP`=06X&@```(UEZ%M>7\G#B?95B>6#[!13BT4(@\3X:@#_<!SH
-M_/___XG!B@&(1?NS`(3`=0*S_\=%_`````"+1?R('`B+1?R*!`@/MM`/OL,Y
-MPG0%,<#K#Y"+1?R*5?N(%`BX`0```(M=Z,G#D%6)Y8/L#%=64XM%"(MU#+\:
-M````B48<@\3T4.C\____@\3T_W8<Z/S___^#Q""%P`^%GP```(/$]%;H9?__
-M_X/$$(7`#X6&````9L<&``#&1@(`QT84`````,=&(#Q4``#'1B185```QT8H
-MC%0``,=&+)A4``#'1C"D5```,=L['0````!])(7_="20@\3T5HL$G0````#_
-MT(G'@\000SL=`````'T$A?]UX87_=04QP.LBD,=&"```$`#'1@0`$```QT8,
-M`0```,=&$`$```"X&@```(UEZ%M>7\G#D)"058GEBTT(BU4,B=!FP>@(B$$!
-MB!')PXGV58GEBT4(9@^V4`'!X@AF#[8``<(/M\+)PXUV`%6)Y8/L$%93BW4(
-MBUT,@\3X#[?#4%;H_/___X/$^,'K$%.#Q@)6Z/S___^-9>A;7LG#B?95B>6#
-M[!!64XM="(/$]%/H_/___XG&@\3T@\,"4^C\____#[?6P>`0`<*)T(UEZ%M>
-MR<.058GE@^P(BT4(@\3\_W44BT`8BT`H`T4,4/]U$.C\____R<.058GE@^P(
-MBT4(@\3\_W40_W4,BU`8BT(D`T(H4.C\____R<.058GE@^P(BU4(@\3\_W4,
-M#[9%$%"+4AB+0B0#0BA0Z/S____)PY"0D%6)Y8M%"(L`R<.)]E6)Y8M%",'@
-M`RM%",'@!`5@!@``R<.)]E6)Y8M%",'@`HN`X`D``,G#C78`58GE@^P(BT4(
-M@\3T4(M`9/_0R<-5B>6#[!13BUT(@WM@`'0)@\3T4XM#8/_0QT,(`````(M=
-MZ,G#C78`58GE@^P44XM="(/$]%.+0T#_T(/$$(7`=0['0P@!````N!4```#K
-M)X-[8`!T%(/$]%.+0V#_T(7`=`?'0P@!````,<"#>P@`=`6X(@```(M=Z,G#
-M58GE@^P05E.[8`8``#'V.S4`````#X.B````D(/$^&CZ````4^C\____@\3X
-M:A!3Z/S___^#Q""#Q/AJ`E/H_/___\=#"`````"#Q/1H$`(``.C\____B02U
-MX`D``(/$((7`=0>X/P```.M3@\3T4XM#5/_0@\00A<!U0X/$]%.+0U#_T,=#
-M&`````#'0Q``````@\3T4XM#2/_0QT,4`````,=##`````"#Q"!&@\-P.S4`
-M````#X)?____,<"-9>A;7LG#B?95B>6+10B+0"S)PY!5B>6#[`Q75E.+=0B+
-M?0R!?BS_?P``=0R#Q/16BT98_]"#Q!"+1C3WV(G[(</!ZPPY7BQT%(/$^%-6
-MBT9<_]")7BS'1AP!````BT8T2"'X`T8PC67H6UY?R<.)]E6)Y8M5"(M%#(E"
-M/,="+/]_``#)PXUV`%6)Y8M5"(M%#(E".,="+/]_``#)PXUV`%6)Y8M%"(M5
-M#,'B#(E0-(M0*,'B#(E0,,=`+/]_``#)PXUV`%6)Y8/L"(M%"(-]#`!U#8/$
-M]%#H_/___^L0B?;'0"S_?P``QT`<`0```,G#58GE@^P44XM="/]##(-[%`!U
-M'8/$]%.+0T3_T(/$$(-[(`!T"X/$]/]S)(M#(/_0QT,4`@```(M=Z,G#58GE
-MBT4(@W@,`'X#_T@,R<.-=@!5B>6#[!13BUT(_T,0@WL8`'4-@\3T4XM#3/_0
-MA<!U"<=#&`(````QP(M=Z,G#B?95B>6+10B#>!``?@/_2!#)PXUV`%6)Y8M%
-M"(M5#(M-$(E0((E(),G#58GE@^P44XM="(-[8`!U'8-["`!U%X/$]%.+0T#_
-MT(/$$(7`=0?'0P@!````@WL0`'57@WL8`G4+QT,8`0```.L;B?:#>Q@!=1/'
-M0Q@`````@\3T4XM#4/_0@\00@WL,`'4G@WL4`G4+QT,4`0```.L8B?:#>Q0!
-M=1#'0Q0`````@\3T4XM#2/_0BUWHR<.058GE@^P(BT4(@WAH`'0,@\3X_W4,
-M4(M`:/_0,<#)PY!5B>6#[!13BUT(@\3X:@!3Z/S___^#Q/13Z/S___^#Q""#
-MQ/AJ`%/H_/___X/$]%.+0VS_T(/$((/$](L#P>`"_[#@"0``Z/S___^+7>C)
-MPTTM4WES=&5M<R!$:7-K3VY#:&EP`````$%.04Y$````@8"`@$9R965"4T0`
-M-"XQ`,W,S,PT10``H$4``*!%``"@10``-$4``*!%``"@10``H$4``*!%``"@
-M10``4$4``%!%``!010``4$4``.Q%``"@10``-$4``.Q%``#L10``[$4``-Q%
-M``#L10``[$4``-Q%``#L10``W$4``-Q%``#<10``W$4``-Q%``#<10``[$4`
-M`-Q%``#<10``[$4```!&```01@``Y48``-Q&``!01@``7$8``&A&``!T1@``
-M@$8``(Q&``"81@``I$8``+!&``"\1@``($8``$!&``#<1@``W$8``,A&````
-M`````````````````````````````````````!%5_P````!550``````````
-M``````$``P`'``\`'P`_`'\`_P``````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````````````````````````````````````````````````````
-M````````````6T%335]&24Q%7T5.1%U'0T,Z("AC*2`R+CDU+C,@,C`P,3`S
-M,34@*')E;&5A<V4I``!;05--7T9)3$5?14Y$74=#0SH@*&,I(#(N.34N,R`R
-M,#`Q,#,Q-2`H<F5L96%S92D``%M!4TU?1DE,15]%3D1=1T-#.B`H8RD@,BXY
-M-2XS(#(P,#$P,S$U("AR96QE87-E*0``6T%335]&24Q%7T5.1%U'0T,Z("AC
-M*2`R+CDU+C,@,C`P,3`S,34@*')E;&5A<V4I``!;05--7T9)3$5?14Y$74=#
-M0SH@*&,I(#(N.34N,R`R,#`Q,#,Q-2`H<F5L96%S92D``%M!4TU?1DE,15]%
-M3D1=1T-#.B`H8RD@,BXY-2XS(#(P,#$P,S$U("AR96QE87-E*0``6T%335]&
-M24Q%7T5.1%U'0T,Z("AC*2`R+CDU+C,@,C`P,3`S,34@*')E;&5A<V4I``!;
-M05--7T9)3$5?14Y$74=#0SH@*&,I(#(N.34N,R`R,#`Q,#,Q-2`H<F5L96%S
-M92D``%M!4TU?1DE,15]%3D1=1T-#.B`H8RD@,BXY-2XS(#(P,#$P,S$U("AR
-M96QE87-E*0``6T%335]&24Q%7T5.1%U'0T,Z("AC*2`R+CDU+C,@,C`P,3`S
-M,34@*')E;&5A<V4I``!;05--7T9)3$5?14Y$74=#0SH@*&,I(#(N.34N,R`R
-M,#`Q,#,Q-2`H<F5L96%S92D``%M!4TU?1DE,15]%3D1=1T-#.B`H8RD@,BXY
-M-2XS(#(P,#$P,S$U("AR96QE87-E*0``6T%335]&24Q%7T5.1%U'0T,Z("AC
-M*2`R+CDU+C,@,C`P,3`S,34@*')E;&5A<V4I``!;05--7T9)3$5?14Y$74=#
-M0SH@*&,I(#(N.34N,R`R,#`Q,#,Q-2`H<F5L96%S92D`"``````````!````
-M,#$N,#$````(``````````$````P,2XP,0````@``````````0```#`Q+C`Q
-M````"``````````!````,#$N,#$````(``````````$````P,2XP,0````@`
-M`````````0```#`Q+C`Q````"``````````!````,#$N,#$````(````````
-M``$````P,2XP,0````@``````````0```#`Q+C`Q````"``````````!````
-M,#$N,#$````(``````````$````P,2XP,0````@``````````0```#`Q+C`Q
-M````"``````````!````,#$N,#$````(``````````$````P,2XP,0`````N
-M<WEM=&%B`"YS=')T86(`+G-H<W1R=&%B`"YT97AT`"YR96PN=&5X=``N<F]D
-M871A`"YR96PN<F]D871A`"YD871A`"YB<W,`+F-O;6UE;G0`+FYO=&4`````
-M`````````````````````````````````````````````````````!L````!
-M````!@`````````T````)%T`````````````!``````````A````"0``````
-M````````$'0``/`'```*`````0````0````(````*P````$````"````````
-M`%A=```,`0`````````````$`````````#,````)````````````````?```
-ML`$```H````#````!`````@````_`````0````,`````````@%X``&`%````
-M`````````"``````````10````@````#`````````.!C````"@``````````
-M```@`````````$H````!``````````````#@8P``O`(``````````````0``
-M``````!3````!P``````````````G&8``!@!``````````````$`````````
-M$0````,``````````````+1G``!9```````````````!``````````$````"
-M``````````````#P:0``\`4```L```!2````!````!`````)`````P``````
-M````````X&\``"X$``````````````$`````````````````````````````
-M``````````````````,``0`````````````````#``(`````````````````
-M`P`#``````````````````,`!``````````````````#``4`````````````
-M`````P`&``````````````````,`!P`````````````````#``@`````````
-M`````````P`)``````````````````,`"@`````````````````#``L``0``
-M`+1<```?`````@`!`!@````\60``%`````(``0`I````H%H``%H````"``$`
-M+P```"P[```;`````@`!`#H```!@6```,P````(``0!'````+%@``#(````"
-M``$`4@```$0````4`````0`%`%L```#<6```)0````(``0!B````7`````0`
-M```!``4`<````"A9```1`````@`!`'L````0````!`````$`!0"$````4%L`
-M`"P````"``$`E````+A8```C`````@`!`)T````X/P``G@````(``0"N````
-M!%D```H````"``$`NP```(Q!```+`````@`!`,P````D4P``#@$```(``0#4
-M````_%H``!4````"``$`Z````,!4``#+`````@`!`/@````07```%`````(`
-M`0`-`0``S%D``,8````"``$`&P$``,P"```*`````@`!`"<!``!@````!```
-M``$`!0`O`0``G!\``(0````"``$`/@$``-1<``!0`````@`!`$L!``!4&@``
-M%P````(``0!7`0``6`````0````!``4`9@$``'Q;```\`````@`!`'`!``"X
-M6P``$0````(``0!^`0``P%(``&0````"``$`CP$``!!9```6`````@`!`)H!
-M```,1P``KP````(``0"A`0``;"4``&X!```"``$`N`$``"P````$`````0`%
-M`,,!```P.@``/P````(``0#2`0``%%L``!4````"``$`XP$``+Q'``")````
-M`@`!`.H!```D7```CP````(``0#\`0``$%@``!D````"``$`!0(``)18```C
-M`````@`!``T"```,````!`````$`!0`;`@``_%L``!$````"``$`*0(``&PU
-M``"=`0```@`!`#4"``!060``)0````(``0!(`@``?"```.T````"``$`60(`
-M`"Q;```A`````@`!`&D"``#$1```10(```(``0!P`@``Q`(```4````"``$`
-M?`(``!Q#``!?`````@`!`(P"``#X5P``%@````(``0"3`@``&%<``-T````"
-M``$`HP(``&0````8`````0`%`*L"``!P.@``O`````(``0"S`@``0`````0`
-M```!``4`PP(``(````#@!````0`%`,@"``#@40``W0````(``0#4`@``X`(`
-M`!`````"``$`X@(``/`"```%`````@`!`.\"````.@``+P````(``0`!`P``
-MS%L``"X````"``$`"P,``(Q5```N`0```@`!`!<#``!X60``5`````(``0`D
-M`P```````"\````"``$`.0,``)1:```+`````@`!`$T#``!H,@``%0````(`
-M`0!;`P``V`(```4````"``$`:0,``!@E``!4`````@`!`'@#```H````!```
-M``$`!0"!`P``F`X```4!```"``$`BP,``#14```'`````@`!`)0#````````
-M`````!````"A`P`````````````0````K`,`````````````$````+D#``!`
-M`@``<````!(``0##`P`````````````0````T`,```@"```<````$@`!`-L#
-M``!@`0``J````!(``0#F`P``L`(``!,````2``$`\@,``"0"```<````$@`!
-M`/X#`````````````!`````+!``````````````0````%P0``'@```#F````
-M$@`!`"($```P````1P```!(``0``=7!D871E4V]C:V5T4&%R86UE=&5R<P!F
-M;%=R:71E4')O=&5C=&5D`&9L36%P`&9I;F1396-T;W(`9G)O;55.04Q,3TY'
-M`'1O54Y!3$Q/3D<`;71D5&%B;&4`9&]C<V5T`&UY7VQO=V%D9')E<W,`9FQ"
-M=69F97)/9@!I;FET1&]N90!F;%-O8VME=%-E=$)U<WD`9&]C=W)I=&4`<F5P
-M;&%C949!5'-E8W1O<@!F;%-O8VME=$YO3V8`9&ES;6]U;G1,;W=,979E;`!F
-M;$UO=6YT`&9L4V5T5VEN9&]W0G5S5VED=&@`9FQ);G1E;$ED96YT:69Y`&9L
-M4V5T4&]W97)/;D-A;&QB86-K`&9L26YI=%-O8VME=',`9FQ486ME375T97@`
-M;F]/9E1,<P!F;%)E9VES=&5R3D943`!F;$5X:713;V-K970`9V5T06YA;F12
-M96,`;7E?:&EG:&%D9')E<W,`9FQ.965D5F-C`&9L1&]N=$YE96168V,`9FQ#
-M:&5C:T%N9$9I>$5$0P!F;%-O8VME=$]F`&9L26YI=`!F;$1O8U=I;F1O=T)A
-M<V5!9&1R97-S`&YO3V9$<FEV97,`9&ES;6]U;G16;VQU;64`9FQ39717:6YD
-M;W=3<&5E9`!F;$5X:70`9FQ);G1E<G9A;%)O=71I;F4`9G)O;55.04P`9&]C
-M<F5A9`!F;$US96-#;W5N=&5R`&9L1&]N=$YE9616<'``<F5A9$9L87-H240`
-M9FQ297-E=$-A<F1#:&%N9V5D`&9L4F5G:7-T97)$3T-33T,`9FQ39717:6YD
-M;W=3:7IE`&)D0V%L;`!F;$9R965-=71E>`!F;$)U:6QD1V5O;65T<GD`=&]5
-M3D%,`&9L261E;G1I9GE&;&%S:`!T;%1A8FQE`'-E=$)U<WD`9&%T845R<F]R
-M3V)J96-T`'9O;',`9FQ$96-O9&5%1$,`9FQ#<F5A=&5-=71E>`!F;%-Y<V9U
-M;DEN:70`9FQ296=I<W1E<D1/0S(P,#``9FQ.965D5G!P`&9L26YT96Q3:7IE
-M`&9L365D:6%#:&5C:P!F;%)E9VES=&5R0V]M<&]N96YT<P!F;$=E=$UA<'!I
-M;F=#;VYT97AT`&=E=$Y&1$,R,59A<G,`9FQ$96QE=&5-=71E>`!C:&5C:U=I
-M;D9O<D1/0P!N;T]F351$<P!S=V%P56YI=',`;F]&;W)M870`9&]C,FM?;65M
-M<V5T`&1O8S)K7V9R964`9&]C,FM?;65M8W!Y`&1O8S)K7W)W90!D;V,R:U]M
-M86QL;V,`9&]C,FM?;W!E;@!D;V,R:U]S:7IE`&1O8S)K7W-L965P`&1O8S)K
-M7V-L;W-E`&1O8S)K7VUE;6-M<`!D;V,R:U]D96QA>0!D;V,R:U]I;F9O`&1O
-M8S)K7W!R;V)E````"P````$F```1`````10``!8````".```(@````)&```G
-M`````B,``#T````!%```0P````$F``!)`````08``$\````!!@``5P````(K
-M``!D`````2T``)`````"4@``I`````(Z``##`````0,``((!```".@``'@(`
-M``(Z```Z`@```CH``'X"```".@``C@(```(Z``">`@```CH``+T"```"7```
-M*04```$%```>"0```AH``"0)```"%0``5PD```)6``!I"0```E8``$(4```!
-M00``,A@```)0``#S&0```E,```<:```"4P``*1H```)3```]&@```E,``&4:
-M```!!@``LAH```$&``#)&@```E(``#T;```!`P``0QL```);``"Q&P```0,`
-M`+<;```"6P``Z1L```(0``!='````A```*@>```!`0``KQX```$!``"V'@``
-M`0$``+T>```!`0``Q!X```$!``#+'@```0$``-(>```!`0``\!X```)6```W
-M'P```E8``%P?```!`P``I!\```$B``"U'P```2(``+X?```!/P``PA\```$!
-M``#('P```3\``,P?```!40``TA\```$B``#9'P```08``-X?```!!@``XQ\`
-M``$&``#H'P```08``(H@```!+0``H"````$M``"Q(````2T``+8@```"*@``
-MO2````$M``#*(````CD``-P@```"+```[2````$!``#T(````0$``/L@```!
-M`0```B$```$!```)(0```0$``!`A```!`0``%R$```$!```>(0```0$``"4A
-M```!`0``+"$```$!```Z(0```0$``$$A```!+0``1R$```$M``#>(P```ED`
-M`*XD```"#@``DB4```$%``":)0```04``*8E```!!0``NB4```$%``#$)0``
-M`04``,PE```!!0``TB4```$%``#>)0```04``"@F```!!0``?28```$%``"'
-M)@```04``!\H```"#@``JB@```(S``#-*````C,```DI```"&```/RD```(3
-M``#_*@```@T``,PL```",P``\2P```$%```]+P```C,``&0O```"*0``AC``
-M``(-``!W,@```08``,PU```"7```&#8```)<```J-P```AH``#DW```!!@``
-M2C<```(:``!0-P```A4``'8W```"'0``AC<```(O``#`-P```@X``"$Y```"
-M-@``S3D```$!``#4.0```0$``-LY```!`0``XCD```$!```%.@```4\```TZ
-M```!3P``%CH```$2```:.@```0$``"`Z```!3P``23H```))``"+.@```B$`
-M`*PZ```"%P``NCH```(G````.P```B@``!`[```"%P``'SL```([``!7.P``
-M`BX``&X[```!0@``?3L```(<``#X.P```@\```L\```!00``F#P```(0``"P
-M/````A```/0\```"#P``#CT```%!``!(/0```C(``)D]```",@``NST```(R
-M``"Q/@```@\``+T^```!00``USX```)4```0/P```E(``$T_```"#P``7#\`
-M``%!``"U/P```@\``"1````"&0``M$````%!```=00```@\``"U!```!00``
-M:4$```(^``#R0P```0,``/M#```"5```!40```$#```.1````E0``&%$```"
-M/```D40```$#``"S1````AL``-)$```!%@``VD0```(K``#J1````2T```E%
-M```!0@``%$4```)````O10```0,``$)%```"&P``;T4```))``"410```AL`
-M`*]%```"20``OT4```(N``#710```0,``/Q%```!`P``%48```(N```L1@``
-M`BH``#5&```"#```[$8```)```#[1@```D```!9'```!%@``(D<```%"```M
-M1P```BH``$U'```!%@``5D<```)%``!<1P```2(``&5'```"2@``;D<```(@
-M``"#1P```4(``(E'```!+0``F$<```)$``"L1P```2T``,9'```!0@``SD<`
-M``$M``#;1P```D```.M'```"+@``]$<```(;```%2````B0``!%(```".P``
-M'4@```)-```M2````2T``#5(```!%@``/TP```$%``!_3````04``-E2```"
-M0P``/%,```(J``!04P```CX``()3```!(@``CU,```$_``">4P```3\``,53
-M```!(@``]U,```$B```&5````3\``!M4```!/P``3U0```(.``!_5````E0`
-M`+A4```"'P``VU0```(.``#/5@```@X``#17```"-P``/U<```))``!U5P``
-M`0$``'Q7```!`0``@U<```$!``"*5P```0$``)%7```!`0``F5<```%/``"K
-M5P```1(``+E7```!3P``0U@```(]``!36````CT``'!8```",@``?E@```(R
-M``"Q6````E0``-58```"5```^U@```)2```@60```08``#-9```!!@``U5D`
-M``$&``#=60```2T``/)9```"+P``_5D```(=```+6@```CD``!]:```"5@``
-M)EH```$&``!_6@```2T``&1;```",0``Y5P```(.``#N7````B@``/Q<```"
-M%P``%ET```$&```;70```E,``#0````!`0``.`````$!```\`````0$``$``
-M```!`0``1`````$!``!(`````0$``$P````!`0``4`````$!``!4`````0$`
-M`%@````!`0``7`````$!``!@`````0$``&0````!`0``:`````$!``!L````
-M`0$``'`````!`0``=`````$!``!X`````0$``'P````!`0``@`````$!``"$
-M`````0$``(@````!`0``C`````$!``"0`````0$``)0````!`0``F`````$!
-M``"<`````0$``*`````!`0``I`````$!``"H`````0$``*P````!`0``L```
-M``$!``"T`````0$``+@````!`0``O`````$!``#``````0$``,0````!`0``
-MR`````$!``#,`````0$``-`````!`0``U`````$!``#8`````0$``-P````!
-M`0``X`````$!``#D`````0$``.@````!`0``[`````$!``#P`````0$``/0`
-M```!`0``^`````$!``#\`````0$````!```!`0``!`$```$!```(`0```0$`
-!```!
-`
-end
diff --git a/sys/contrib/dev/fla/msysosak.h b/sys/contrib/dev/fla/msysosak.h
deleted file mode 100644 (file)
index 11d4c51..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-/*-
-SOFTWARE LICENSE AGREEMENT
-
-IMPORTANT! READ CAREFULLY: 
-THIS SOFTWARE LICENSE AGREEMENT (the ``Agreement'') is a legal 
-agreement between you (either an individual or a single entity) and 
-M-Systems Flash Disk Pioneers Ltd. ("M-Systems").  
-This Agreement relates to the M-Systems' software accompanying this 
-Agreement, which includes computer software and may include associated
-media, printed materials, and ``online'' or electronic documentation 
-(the ``Licensed Software'').  
-By downloading, installing, copying, or otherwise using the Licensed
-Software, you agree to be bound by the terms of this Agreement.
-If you do not agree to the terms of this Agreement, do not install, 
-copy or use the Licensed Software.
-
-The Licensed Software is protected by copyright laws and international
-copyright treaties, as well as other intellectual property laws and 
-treaties.  The Licensed Software is licensed, not sold.  
-The Licensed Software is being provided solely for use with M-Systems'
-DiskOnChip® product lines.
-1.     License Grant. 
-(a)    Grant of License. Subject to the terms and conditions of this 
-        Agreement, M-Systems hereby grants you a nonexclusive, 
-        royalty-free, worldwide license (including the right to 
-        sublicense) to use, copy and distribute the Licensed Software 
-        with M-Systems DiskOnChip® products.
-(b)    Restrictions on Use.  The Licensed Software is licensed solely
-        for use with and to support M-Systems' DiskOnChip® products. 
-        Use of this Licensed Software with, or to support, any other 
-        flash disk, flash card, resident flash array or solid state 
-        disk of any kind is expressly prohibited, and constitutes an 
-        illegal infringement of M-Systems' patent, copyright and other 
-        rights in and to the Licensed Software. 
-2.     Limitations on Reverse Engineering, Decompilation, and 
-        Disassembly.  You may not reverse engineer, decompile, or 
-        disassemble the Licensed Software, except and only to the 
-        extent that such activity is expressly permitted by applicable 
-        law notwithstanding this limitation.
-3.     Termination. Without prejudice to any other rights, M-Systems 
-        may terminate this Agreement if you fail to comply with the 
-        terms and conditions of this Agreement. In such event, you must
-        destroy all copies of the Licensed Software and all of its 
-        component parts.
-4.     Intellectual Property Rights.  Title to the Licensed Software, 
-        and all rights with respect to the Software not specifically 
-        granted under this Agreement, including without limitation 
-        all rights of modification, disassembly and decompilation and 
-        all copyright, patent, trademark, trade secret and other 
-        proprietary rights and interests are reserved to M-Systems. 
-        You may not remove or alter the "README" or "COPYRIGHT" files
-       or copyright notices in the Licensed Software.
-5.     DISCLAIMER OF WARRANTIES. To the maximum extent permitted by 
-        applicable law, M-Systems and its suppliers provide the Product
-        and any (if any) support services related to the Product 
-        ("Support Services") AS IS AND WITH ALL FAULTS, and hereby 
-        disclaim all warranties and conditions, either express, 
-        implied or statutory, including, but not limited to, any 
-        (if any) implied warranties or conditions of merchantability, 
-        of fitness for a particular purpose, of lack of viruses, of 
-        accuracy or completeness of responses, of results, and of lack
-        of negligence or lack of workmanlike effort, all with regard 
-        to the Product, and the provision of or failure to provide 
-        Support Services. ALSO, THERE IS NO WARRANTY OR CONDITION OF
-        TITLE, QUIET ENJOYMENT, QUIET POSSESSION, CORRESPONDENCE TO 
-        DESCRIPTION OR NON-INFRINGEMENT, WITH REGARD TO THE PRODUCT. 
-        THE ENTIRE RISK AS TO THE QUALITY OF OR ARISING OUT OF USE OR 
-        PERFORMANCE OF THE PRODUCT AND SUPPORT SERVICES, IF ANY, 
-        REMAINS WITH YOU.
-6.     EXCLUSION OF INCIDENTAL, CONSEQUENTIAL AND CERTAIN OTHER 
-        DAMAGES. To the maximum extent permitted by applicable law, 
-        in no event shall M-Systems or its suppliers be liable for 
-        any special, incidental, indirect, or consequential damages 
-        whatsoever (including, but not limited to, damages for loss 
-        of profits or confidential or other information, for business 
-        interruption, for personal injury, for loss of privacy, for 
-        failure to meet any duty including of good faith or of 
-        reasonable care, for negligence, and for any other pecuniary 
-        or other loss whatsoever) arising out of or in any way related
-        to the use of or inability to use the Product, the provision 
-        of or failure to provide Support Services, or otherwise under 
-        or in connection with any provision of Agreement, even in the 
-        event of the fault, tort (including negligence), strict 
-        liability, breach of contract or breach of warranty of 
-        M-Systems or any supplier, and even if M-Systems or any 
-        supplier has been advised of the possibility of such damages. 
-7.     LIMITATION OF LIABILITY AND REMEDIES. Notwithstanding any 
-        damages that you might incur for any reason whatsoever 
-        (including, without limitation, all damages referenced above 
-        and all direct or general damages), the entire liability of 
-        M-Systems and any of its suppliers under any provision of this
-        Agreement and your exclusive remedy for all of the foregoing 
-        shall be limited to the greater of the amount actually paid by
-        you for the Product or U.S.$5.00. The foregoing limitations, 
-        exclusions and disclaimers shall apply to the maximum extent 
-        permitted by applicable law, even if any remedy fails its 
-        essential purpose.
-8.     Miscellaneous
-        The laws of the State of California, United States of America, 
-        exclusive of conflict-of-laws provisions, shall govern this 
-        Agreement in all respects. 
-*/
-
-#ifndef MSYSOSAK_H
-#define MSYSOSAK_H 1
-
-struct doc2k_stat {
-       unsigned short  type;
-       long            unitSize;
-       long            mediaSize;
-       long            chipSize;
-       int             interleaving;
-       unsigned long   window;
-
-       /* Non-OSAK members Below this point */
-       char            *product;
-       char            model[40];
-};
-
-enum doc2k_work { DOC2K_READ, DOC2K_WRITE, DOC2K_ERASE };
-
-int doc2k_probe(int drive, unsigned lowaddr, unsigned highaddr);
-int doc2k_info(int drive, struct doc2k_stat *info);
-int doc2k_size(int drive, unsigned *capacity, unsigned *ncyl, unsigned *nhead, unsigned *nsect);
-int doc2k_open(int drive);
-int doc2k_close(int drive);
-int doc2k_rwe(int drive, enum doc2k_work what, unsigned block, unsigned len, void *ptr);
-void doc2k_memcpy(void *dst, const void *src, unsigned len);
-void doc2k_memset(void *dst, int c, unsigned len);
-int doc2k_memcmp(const void *dst, const void *src, unsigned len);
-void *doc2k_malloc(int bytes);
-void doc2k_free(void *ptr);
-void doc2k_delay(unsigned usec);
-
-#endif
diff --git a/sys/contrib/dev/fla/patch.00 b/sys/contrib/dev/fla/patch.00
deleted file mode 100644 (file)
index 90841e6..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-Index: files.i386
-===================================================================
-RCS file: /home/ncvs/src/sys/i386/conf/files.i386,v
-retrieving revision 1.220.2.8
-diff -u -r1.220.2.8 files.i386
---- files.i386 1999/05/27 03:06:33     1.220.2.8
-+++ files.i386 1999/08/01 12:44:00
-@@ -34,6 +34,13 @@
-       no-obj no-implicit-rule before-depend                           \
-       clean           "ukbdmap.h"
- #
-+contrib/dev/fla/fla.c         optional        fla
-+msysosak.o                    optional        fla                     \
-+      dependency      "$S/contrib/dev/fla/i386/msysosak.o.uu"         \
-+      compile-with    "uudecode < $S/contrib/dev/fla/i386/msysosak.o.uu" \
-+      no-implicit-rule
-+
-+#
- dev/fb/fb.c                   optional        fb      device-driver
- dev/fb/fb.c                   optional        vga     device-driver
- dev/fb/splash.c                       optional        splash
-
-
diff --git a/sys/contrib/dev/fla/prep.fla.sh b/sys/contrib/dev/fla/prep.fla.sh
deleted file mode 100644 (file)
index 8d04b83..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-#!/bin/sh
-# $FreeBSD: src/sys/contrib/dev/fla/prep.fla.sh,v 1.2 1999/09/08 12:42:15 phk Exp $
-# $DragonFly: src/sys/contrib/dev/fla/Attic/prep.fla.sh,v 1.2 2003/06/17 04:28:20 dillon Exp $
-
-dev=fla0
-
-grep "$dev.*sectors" /var/run/dmesg.boot | tr -d '(:)' | awk '
-       {
-       v = $3
-       c = $5
-       h = $7
-       s = $9
-       ss = c * h * s - s
-
-       print "#",$0 > "_"
-       print "g c"c" h"h" s"s > "_"
-       print "p 1 165",s,ss > "_"
-       print "a 1" > "_"
-
-       print "#",$0  > "__"
-       print "type: ESDI" > "__"
-       print "disk:", $1 > "__"
-       print "label:" > "__"
-       print "flags:" > "__"
-       print "bytes/sector: 512" > "__"
-       print "sectors/track:", s > "__"
-       print "tracks/cylinder:", h > "__"
-       print "sectors/cylinder:", s * h > "__"
-       print "cylinders:", c > "__"
-       print "sectors/unit:", ss > "__"
-       print "rpm: 3600" > "__"
-       print "interleave: 1" > "__"
-       print "trackskew: 0" > "__"
-       print "cylinderskew: 0" > "__"
-       print "headswitch: 0           # milliseconds" > "__"
-       print "track-to-track seek: 0  # milliseconds" > "__"
-       print "drivedata: 0 " > "__"
-       print "8 partitions:" > "__"
-       print "#        size   offset    fstype   [fsize bsize bps/cpg]" > "__"
-       print "a:",ss,"0 4.2BSD 512 4096 " > "__"
-       print "c:",ss,"0 unused 0 0" > "__"
-       }
-' 
-fdisk -f _ -i -v $dev
-disklabel -BrR ${dev} __
-newfs /dev/r${dev}a
index 5721b17..86bc2fb 100644 (file)
@@ -2,7 +2,7 @@
 # files marked standard are always included.
 #
 # $FreeBSD: src/sys/conf/files.i386,v 1.307.2.38 2003/01/02 20:41:33 kan Exp $
-# $DragonFly: src/sys/platform/pc32/conf/files,v 1.14 2007/08/27 20:08:55 hasso Exp $
+# $DragonFly: src/sys/platform/pc32/conf/files,v 1.15 2007/08/27 20:40:53 hasso Exp $
 #
 # The long compile-with and dependency lines are required because of
 # limitations in config: backslash-newline doesn't work in strings, and
@@ -48,11 +48,6 @@ emulation/linux/linux_sysctl.c  optional        compat_linux
 emulation/linux/linux_uid16.c   optional        compat_linux
 emulation/linux/linux_util.c   optional        compat_linux
 #
-contrib/dev/fla/fla.c          optional        fla
-msysosak.o                     optional        fla                     \
-       dependency      "$S/contrib/dev/fla/i386/msysosak.o.uu"                 \
-       compile-with    "uudecode < $S/contrib/dev/fla/i386/msysosak.o.uu"      \
-       no-implicit-rule
 bf_enc.o                       optional        ipsec ipsec_esp         \
        dependency      "$S/crypto/blowfish/arch/i386/bf_enc.S $S/crypto/blowfish/arch/i386/bf_enc_586.S $S/crypto/blowfish/arch/i386/bf_enc_686.S"             \
        compile-with    "${CC} -c -I$S/crypto/blowfish/arch/i386 ${ASM_CFLAGS} ${WERROR} ${.IMPSRC}"    \