From owner-freebsd-bugs@FreeBSD.ORG Sun Nov 23 00:22:04 2003 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A616816A4CE for ; Sun, 23 Nov 2003 00:22:04 -0800 (PST) Received: from faeton1.ru (relay.faeton1.ru [217.18.136.228]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7A1A943FD7 for ; Sun, 23 Nov 2003 00:22:02 -0800 (PST) (envelope-from lists@avtf.org) Received: from faeton1.ru (localhost.faeton1.ru [127.0.0.1]) hAN8MqXg014197 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Sun, 23 Nov 2003 14:22:53 +0600 (OMST) Received: (from root@localhost) by relay.faeton1.ru (8.12.9-20030924/8.12.9/Submit) id hAN8MqqM014196 for freebsd-bugs@freebsd.org.KAV; Sun, 23 Nov 2003 14:22:52 +0600 (OMST) Received: from vpn-client-250.faeton1.ru (vpn-client-250.faeton1.ru [192.168.136.250]) (authenticated bits=0)hAN8MoXg014188 (version=TLSv1/SSLv3 cipher=DES-CBC3-SHA bits=168 verify=NO); Sun, 23 Nov 2003 14:22:52 +0600 (OMST) Date: Sun, 23 Nov 2003 14:23:09 +0600 From: Sergey Sysoev X-Mailer: The Bat! (v1.62r) X-Priority: 3 (Normal) Message-ID: <1707643449.20031123142309@avtf.org> To: "Ivo R . Tonev" In-Reply-To: <200311230759.hAN7xaqH064513@freefall.freebsd.org> References: <200311230759.hAN7xaqH064513@freefall.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit cc: freebsd-bugs@freebsd.org Subject: Re[2]: i386/59593: SSHD uses 8-char user password for authentication X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Sergey Sysoev List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 23 Nov 2003 08:22:04 -0000 Hello Ivo, ML> http://www.freebsd.org/cgi/query-pr.cgi?pr=59593 To my mind that's not sshd bug - that's DES limits. You'd use md5 passwords instead. I've checked with MD5 - all fine. sshd version OpenSSH_3.5p1 FreeBSD-20030924 freebsd 4.9-release -- Best regards, Sergey From owner-freebsd-bugs@FreeBSD.ORG Sun Nov 23 09:16:32 2003 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BFAA716A4CE; Sun, 23 Nov 2003 09:16:32 -0800 (PST) Received: from shellma.zin.lublin.pl (shellma.zin.lublin.pl [212.182.126.68]) by mx1.FreeBSD.org (Postfix) with ESMTP id 01CCF43FEA; Sun, 23 Nov 2003 09:16:30 -0800 (PST) (envelope-from pawmal-posting@freebsd.lublin.pl) Received: by shellma.zin.lublin.pl (Postfix, from userid 1018) id 2D22F5F103; Sun, 23 Nov 2003 18:22:59 +0100 (CET) Date: Sun, 23 Nov 2003 18:22:59 +0100 From: Pawel Malachowski To: freebsd-stable@freebsd.org Message-ID: <20031123172259.GB74783@shellma.zin.lublin.pl> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-2 Content-Disposition: inline Content-Transfer-Encoding: 8bit User-Agent: Mutt/1.4.1i cc: freebsd-bugs@freebsd.org Subject: Panic on 4.9-PRE (mbuf/m_copydata/ippr_ftp_process related) X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: freebsd-bugs@freebsd.org List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 23 Nov 2003 17:16:32 -0000 Hello, My router caught kernel panic after 11 days of working. System is 4.9-PRERELEASE and runs without problems since 28 Sep 2003. There are two outgoing interfaces and about 10 internal interfaces (mostly vlans); ipfw2 fwd is used to help with routing a bit (2 ISPs, no BGP); dummynet shaping happens at external and some of internal devices: % ipfw pipe show | wc -l 1134 I will update to recent 4.9-STABLE, however I'm posting backtrace here cause it may be hard for me to reproduce this panic (this is the first time I'm seeing it). Any ideas what should I look for? Here comes backtrace: Fatal trap 12: page fault while in kernel mode fault virtual address = 0xc fault code = supervisor read, page not present instruction pointer = 0x8:0xc0255b50 stack pointer = 0x10:0xce4a2cbc frame pointer = 0x10:0xce4a2cc8 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, def32 1, gran 1 processor eflags = interrupt enabled, resume, IOPL = 0 current process = 76908 (trafd) interrupt mask = net tty trap number = 12 panic: page fault syncing disks... done Uptime: 11d4h46m8s dumping to dev #ad/0x30001, offset 1573024 dump ata0: resetting devices .. done [...] --- #0 dumpsys () at ../../kern/kern_shutdown.c:487 487 if (dumping++) { (kgdb) bt #0 dumpsys () at ../../kern/kern_shutdown.c:487 #1 0xc0238d33 in boot (howto=256) at ../../kern/kern_shutdown.c:316 #2 0xc0239158 in poweroff_wait (junk=0xc043516c, howto=-1069331345) at ../../kern/kern_shutdown.c:595 #3 0xc03b0d8a in trap_fatal (frame=0xce4a2c7c, eva=12) at ../../i386/i386/trap.c:974 #4 0xc03b0a5d in trap_pfault (frame=0xce4a2c7c, usermode=0, eva=12) at ../../i386/i386/trap.c:867 #5 0xc03b061b in trap (frame={tf_fs = 2097168, tf_es = 16, tf_ds = -834011120, tf_edi = 2, tf_esi = 0, tf_ebp = -833999672, tf_isp = -833999704, tf_ebx = 2, tf_edx = -1032830968, tf_ecx = 120, tf_eax = 0, tf_trapno = 12, tf_err = 0, tf_eip = -1071293616, tf_cs = 8, tf_eflags = 66050, tf_esp = 2, tf_ss = -1032830860}) at ../../i386/i386/trap.c:466 #6 0xc0255b50 in m_copydata (m=0xc1178700, off=120, len=2, cp=0xc2704078 "") at ../../kern/uipc_mbuf.c:985 #7 0xc0157b10 in ippr_ftp_process (fin=0xce4a2df0, ip=0xc11b9810, nat=0xc1d1dc00, ftp=0xc2704000, rv=0) at ../../contrib/ipfilter/netinet/ip_ftp_pxy.c:1052 #8 0xc0157cd6 in ippr_ftp_out (fin=0xce4a2df0, ip=0xc11b9810, aps=0xc1aa7a80, nat=0xc1d1dc00) at ../../contrib/ipfilter/netinet/ip_ftp_pxy.c:1165 #9 0xc01591e1 in appr_check (ip=0xc11b9810, fin=0xce4a2df0, nat=0xc1d1dc00) at ../../contrib/ipfilter/netinet/ip_proxy.c:341 #10 0xc0156426 in ip_natout (ip=0xc11b9810, fin=0xce4a2df0) at ../../contrib/ipfilter/netinet/ip_nat.c:2555 #11 0xc014f4ea in fr_check (ip=0xc11b9810, hlen=20, ifp=0xc15c6800, out=1, mp=0xce4a2ea0) at ../../contrib/ipfilter/netinet/fil.c:1154 #12 0xc0295bb9 in ip_output (m0=0xc2541c80, opt=0x0, ro=0xc2541cac, flags=1, imo=0x0, inp=0x0) at ../../netinet/ip_output.c:964 #13 0xc17edb18 in ?? () #14 0xc17eddce in ?? () #15 0xc17ee267 in ?? () #16 0xc023edb1 in softclock () at ../../kern/kern_timeout.c:131 #17 0xc03a3543 in doreti_swi () #18 0x8049c91 in ?? () #19 0x8049edf in ?? () #20 0x804a5e6 in ?? () #21 0x804b530 in ?? () #22 0x28079e89 in ?? () #23 0x280799db in ?? () #24 0x80498b6 in ?? () #25 0x804926d in ?? () (kgdb) up 6 #6 0xc0255b50 in m_copydata (m=0xc1178700, off=120, len=2, cp=0xc2704078 "") at ../../kern/uipc_mbuf.c:985 985 while (len > 0) { (kgdb) list 980 if (off < m->m_len) 981 break; 982 off -= m->m_len; 983 m = m->m_next; 984 } 985 while (len > 0) { 986 KASSERT(m != NULL, ("m_copydata, length > size of mbuf chain")); 987 count = min(m->m_len - off, len); 988 bcopy(mtod(m, caddr_t) + off, cp, count); 989 len -= count; (kgdb) p m $1 = (struct mbuf *) 0x0 (kgdb) up #7 0xc0157b10 in ippr_ftp_process (fin=0xce4a2df0, ip=0xc11b9810, nat=0xc1d1dc00, ftp=0xc2704000, rv=0) at ../../contrib/ipfilter/netinet/ip_ftp_pxy.c:1052 1052 m_copydata(m, off, len, wptr); (kgdb) list 1047 bcopy((char *)m + off, wptr, len); 1048 #else 1049 # if SOLARIS 1050 copyout_mblk(m, off, len, wptr); 1051 # else 1052 m_copydata(m, off, len, wptr); 1053 # endif 1054 #endif 1055 mlen -= len; 1056 off += len; (kgdb) p m $2 = (mb_t *) 0xc1178700 % netstat -m -M vmcore.26 -N /kernel.debug 156/2816/10048 mbufs in use (current/peak/max): 156 mbufs allocated to data 130/1656/2512 mbuf clusters in use (current/peak/max) 4016 Kbytes allocated to network (53% of mb_map in use) 0 requests for memory denied 0 requests for memory delayed 0 calls to protocol drain routines ipnat rules are like this: map rl0 172.27.192.0/20 -> x/32 proxy port ftp ftp/tcp map rl0 172.27.192.0/20 -> x/32 portmap tcp/udp auto map rl0 172.27.192.0/20 -> x/32 map rl0 10.0.0.0/8 -> y/32 proxy port ftp ftp/tcp map rl0 10.0.0.0/8 -> y/32 portmap tcp/udp auto map rl0 10.0.0.0/8 -> y/32 map fxp0 172.27.192.0/20 -> z/32 proxy port ftp ftp/tcp map fxp0 172.27.192.0/20 -> z/32 portmap tcp/udp auto map fxp0 172.27.192.0/20 -> z/32 map fxp0 10.0.0.0/8 -> z/32 proxy port ftp ftp/tcp map fxp0 10.0.0.0/8 -> z/32 portmap tcp/udp auto map fxp0 10.0.0.0/8 -> z/32 map rl0 127.0.0.1/32 -> x/32 proxy port ftp ftp/tcp map rl0 127.0.0.1/32 -> x/32 portmap tcp/udp auto map rl0 127.0.0.1/32 -> x/32 map fxp0 127.0.0.1/32 -> z/32 proxy port ftp ftp/tcp map fxp0 127.0.0.1/32 -> z/32 portmap tcp/udp auto map fxp0 127.0.0.1/32 -> z/32 rdr fxp0 from SBD1/32 to z/32 port = XXX -> 10.1.X.X port XXX tcp rdr rl0 from SBD2/32 to x/32 port = XXX -> 10.1.X.X port XXX tcp rdr fxp0 from any to z/32 port = X -> 10.1.X.X port X tcp . . . (similar rdrs) . . rdr xl0 from X/24 to any port = 80 -> 172.27.X.X port 81 tcp TIA, -- Paweł Małachowski From owner-freebsd-bugs@FreeBSD.ORG Sun Nov 23 12:40:19 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8C9B116A4D1 for ; Sun, 23 Nov 2003 12:40:19 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8EAEF43FE0 for ; Sun, 23 Nov 2003 12:40:15 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hANKeDFY075313 for ; Sun, 23 Nov 2003 12:40:13 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hANKeDh7075312; Sun, 23 Nov 2003 12:40:13 -0800 (PST) (envelope-from gnats) Date: Sun, 23 Nov 2003 12:40:13 -0800 (PST) Message-Id: <200311232040.hANKeDh7075312@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Per Hedeland Subject: Re: kern/58803: kern.argmax isn't changeable even at boot [PATCH] X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Per Hedeland List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 23 Nov 2003 20:40:19 -0000 The following reply was made to PR kern/58803; it has been noted by GNATS. From: Per Hedeland To: bde@zeta.org.au, freebsd-gnats-submit@freebsd.org Cc: Subject: Re: kern/58803: kern.argmax isn't changeable even at boot [PATCH] Date: Sun, 23 Nov 2003 21:32:33 +0100 (CET) Bruce Evans wrote: > >On Sun, 2 Nov 2003, Per Hedeland wrote: > >> Bruce Evans wrote: > >> > ... >> >Traditionally hardwired constants cannot usefully be replaced by >> >tunables without removing the hardwired constants. Otherwise all the >> >users of the hardwired constants get wrong values if the tunables are >> >actually used. >> >> Yes, though from a pragmatic point of view I would still think that as >> long as this doesn't cause malfunction, it would be preferable to >> breaking existing code that would still function with a constant but >> incorrect definition. >> ... >> So, would the patch be acceptable if it also >> >> a) Fixed the usage of ARG_MAX in the source tree >> b) Made the constant definition be equal to _POSIX_ARG_MAX >> c) Prevented setting the tunable lower than _POSIX_ARG_MAX >> >> ? Removing the definition altogether would of course be just as simple >> as b), > >That would be enough for me, except don't do (b) (leave ARG_MAX with its >current value which is larger than _POSIX_ARG_MAX until most or all ports >are fixed). Fixing all ports is too much to expect from anyone. OK, I finally got around to looking at this again - an "interesting" exercise... An updated patch is enclosed. >Many things in the tree already use only sysconf(_SC_ARG_MAX). The >most interesting exceptions are glob(3) (libc/gen/glob.c) and sh(1). >glob() just uses ARG_MAX, and sh(1) doesn't use any of glob(), ARG_MAX >or sysconf(). The glob(3) usage seems quite broken to me - it uses ARG_MAX as the default limit on the *number* of matches when GLOB_LIMIT is set, which is hardly meaningful. Apparently this behaviour was introduced in an attempt make glob(3) more compatible with the NetBSD/OpenBSD implementations, but the result is something that isn't compatible with either the previous FreeBSD implementation or the others (which use ARG_MAX to limit the *total size* of the matches). Fixing that is beyond the scope for this patch I think - but since the usage is totally unrelated to the value returned by sysconf(), I saw no reason to put in a call to that, but simply fall back to _POSIX_ARG_MAX if ARG_MAX isn't #defined. I applied similar reasoning to libc/{alpha,i386}/gen/makecontext.c. >> I just feel that it would cause unnecessary breakage. And, what >> about NCARGS? > >NCARGS should have gone away when ARG_MAX became standard, so it should >be easier to remove now. NCARGS is used mainly in tcsh. tcsh has ifdefs >to use sysconf() if neither NCARGS nor ARG_MAX exists, but they are poorly >implemented and just define NCARGS in terms of sysconf() so all the >references to NCARGS in tcsh become slow. Fixed that, and rshd/rexecd used NCARGS too. The remaining "unprotected" usage of NCARGS/ARG_MAX was in libc/posix1e/mac.c, where it was used to size an unused array... (already fixed in CVS). --Per Hedeland per@hedeland.org ================================================================= --- /usr/src/sys/alpha/osf1/osf1_sysvec.c.ORIG Sun Sep 1 23:41:22 2002 +++ /usr/src/sys/alpha/osf1/osf1_sysvec.c Thu Oct 30 01:25:25 2003 @@ -121,7 +121,7 @@ sz = *(imgp->proc->p_sysent->sv_szsigcode); destp = (caddr_t)arginfo - szsigcode - SPARE_USRSPACE - - roundup((ARG_MAX - imgp->stringspace), sizeof(char *)); + roundup((argmax - imgp->stringspace), sizeof(char *)); destp -= imgp->stringspace; --- /usr/src/sys/ia64/ia32/ia32_sysvec.c.ORIG Sun Sep 1 23:41:23 2002 +++ /usr/src/sys/ia64/ia32/ia32_sysvec.c Thu Oct 30 01:25:25 2003 @@ -146,7 +146,7 @@ arginfo = (struct ia32_ps_strings *)IA32_PS_STRINGS; szsigcode = *(imgp->proc->p_sysent->sv_szsigcode); destp = (caddr_t)arginfo - szsigcode - SPARE_USRSPACE - - roundup((ARG_MAX - imgp->stringspace), sizeof(char *)); + roundup((argmax - imgp->stringspace), sizeof(char *)); /* * install sigcode @@ -194,7 +194,7 @@ /* * Copy out strings - arguments and environment. */ - copyout(stringp, destp, ARG_MAX - imgp->stringspace); + copyout(stringp, destp, argmax - imgp->stringspace); /* * Fill in "ps_strings" struct for ps, w, etc. --- /usr/src/sys/kern/kern_exec.c.ORIG Thu Dec 19 10:40:10 2002 +++ /usr/src/sys/kern/kern_exec.c Thu Oct 30 01:27:26 2003 @@ -235,7 +235,7 @@ * Allocate temporary demand zeroed space for argument and * environment strings */ - imgp->stringbase = (char *)kmem_alloc_wait(exec_map, ARG_MAX + + imgp->stringbase = (char *)kmem_alloc_wait(exec_map, argmax + PAGE_SIZE); if (imgp->stringbase == NULL) { error = ENOMEM; @@ -243,8 +243,8 @@ goto exec_fail; } imgp->stringp = imgp->stringbase; - imgp->stringspace = ARG_MAX; - imgp->image_header = imgp->stringbase + ARG_MAX; + imgp->stringspace = argmax; + imgp->image_header = imgp->stringbase + argmax; /* * Translate the file name. namei() returns a vnode pointer @@ -260,7 +260,7 @@ error = namei(ndp); if (error) { kmem_free_wakeup(exec_map, (vm_offset_t)imgp->stringbase, - ARG_MAX + PAGE_SIZE); + argmax + PAGE_SIZE); goto exec_fail; } @@ -633,7 +633,7 @@ if (imgp->stringbase != NULL) kmem_free_wakeup(exec_map, (vm_offset_t)imgp->stringbase, - ARG_MAX + PAGE_SIZE); + argmax + PAGE_SIZE); if (imgp->object) vm_object_deallocate(imgp->object); @@ -987,7 +987,7 @@ if (p->p_sysent->sv_szsigcode != NULL) szsigcode = *(p->p_sysent->sv_szsigcode); destp = (caddr_t)arginfo - szsigcode - SPARE_USRSPACE - - roundup((ARG_MAX - imgp->stringspace), sizeof(char *)); + roundup((argmax - imgp->stringspace), sizeof(char *)); /* * install sigcode @@ -1035,7 +1035,7 @@ /* * Copy out strings - arguments and environment. */ - copyout(stringp, destp, ARG_MAX - imgp->stringspace); + copyout(stringp, destp, argmax - imgp->stringspace); /* * Fill in "ps_strings" struct for ps, w, etc. --- /usr/src/sys/kern/kern_mib.c.ORIG Fri Nov 8 00:57:17 2002 +++ /usr/src/sys/kern/kern_mib.c Thu Oct 30 01:27:27 2003 @@ -111,7 +111,7 @@ &maxusers, 0, "Hint for kernel tuning"); SYSCTL_INT(_kern, KERN_ARGMAX, argmax, CTLFLAG_RD, - 0, ARG_MAX, "Maximum bytes of argument to execve(2)"); + &argmax, 0, "Maximum bytes of argument to execve(2)"); SYSCTL_INT(_kern, KERN_POSIX1, posix1version, CTLFLAG_RD, 0, _POSIX_VERSION, "Version of POSIX attempting to comply to"); --- /usr/src/sys/kern/subr_param.c.ORIG Fri Aug 30 06:04:35 2002 +++ /usr/src/sys/kern/subr_param.c Sun Nov 23 19:42:30 2003 @@ -62,6 +62,12 @@ #ifndef MAXFILES #define MAXFILES (maxproc * 2) #endif +#ifndef ARG_MAX +#define ARG_MAX 65536 +#endif +#ifndef _POSIX_ARG_MAX +#define _POSIX_ARG_MAX 4096 +#endif int hz; int tick; @@ -75,6 +81,7 @@ int nswbuf; int maxswzone; /* max swmeta KVA storage */ int maxbcache; /* max buffer cache KVA storage */ +int argmax; /* max bytes of argument to exec */ u_quad_t maxtsiz; /* max text size */ u_quad_t dfldsiz; /* initial data size limit */ u_quad_t maxdsiz; /* max data size */ @@ -166,4 +173,9 @@ ncallout = 16 + maxproc + maxfiles; TUNABLE_INT_FETCH("kern.ncallout", &ncallout); + + argmax = ARG_MAX; + TUNABLE_INT_FETCH("kern.argmax", &argmax); + if (argmax < _POSIX_ARG_MAX) + argmax = _POSIX_ARG_MAX; } --- /usr/src/sys/sys/proc.h.ORIG Tue Dec 10 03:33:45 2002 +++ /usr/src/sys/sys/proc.h Thu Oct 30 01:27:29 2003 @@ -827,6 +827,7 @@ extern int hogticks; /* Limit on kernel cpu hogs. */ extern int nprocs, maxproc; /* Current and max number of procs. */ extern int maxprocperuid; /* Max procs per uid. */ +extern int argmax; /* Max bytes of argument to exec. */ extern u_long ps_arg_cache_limit; extern int ps_argsopen; extern int ps_showallprocs; --- /usr/src/sys/vm/vm_init.c.ORIG Fri Nov 8 00:57:17 2002 +++ /usr/src/sys/vm/vm_init.c Thu Oct 30 01:25:25 2003 @@ -193,7 +193,7 @@ (nswbuf*MAXPHYS) + pager_map_size); pager_map->system_map = 1; exec_map = kmem_suballoc(kernel_map, &minaddr, &maxaddr, - (16*(ARG_MAX+(PAGE_SIZE*3)))); + (16*(argmax+(PAGE_SIZE*3)))); /* * XXX: Mbuf system machine-specific initializations should --- /usr/src/contrib/tcsh/ed.chared.c.ORIG Wed Jul 24 18:22:56 2002 +++ /usr/src/contrib/tcsh/ed.chared.c Sun Nov 23 14:31:58 2003 @@ -514,7 +514,7 @@ } if (*p == '$') { if (*++p != '-') { - *num = NCARGS; /* Handle $ */ + *num = ArgMax; /* Handle $ */ return(--p); } sign = -1; /* Handle $- */ @@ -562,13 +562,13 @@ break; case '*': - bend = expand_lex(buf, INBUFSIZE, &h->Hlex, 1, NCARGS); + bend = expand_lex(buf, INBUFSIZE, &h->Hlex, 1, ArgMax); break; default: if (been_once) { /* unknown argument */ /* assume it's a modifier, e.g. !foo:h, and get whole cmd */ - bend = expand_lex(buf, INBUFSIZE, &h->Hlex, 0, NCARGS); + bend = expand_lex(buf, INBUFSIZE, &h->Hlex, 0, ArgMax); q -= 2; break; } @@ -661,7 +661,7 @@ } else if (q[1] == '*') { ++q; - to = NCARGS; + to = ArgMax; } else { to = from; @@ -671,7 +671,7 @@ bend = expand_lex(buf, INBUFSIZE, &h->Hlex, from, to); } else { /* get whole cmd */ - bend = expand_lex(buf, INBUFSIZE, &h->Hlex, 0, NCARGS); + bend = expand_lex(buf, INBUFSIZE, &h->Hlex, 0, ArgMax); } break; } @@ -2255,7 +2255,7 @@ hp = hp->Hnext; if (hp == NULL) /* "can't happen" */ return(CC_ERROR); - cp = expand_lex(hbuf, INBUFSIZE, &hp->Hlex, 0, NCARGS); + cp = expand_lex(hbuf, INBUFSIZE, &hp->Hlex, 0, ArgMax); *cp = '\0'; bp = hbuf; hp = hp->Hnext; @@ -2277,7 +2277,7 @@ word = 0; if (hp == NULL) return(CC_ERROR); - cp = expand_lex(hbuf, INBUFSIZE, &hp->Hlex, 0, NCARGS); + cp = expand_lex(hbuf, INBUFSIZE, &hp->Hlex, 0, ArgMax); *cp = '\0'; bp = hbuf; hp = hp->Hnext; --- /usr/src/contrib/tcsh/sh.h.ORIG Wed Jul 24 18:23:01 2002 +++ /usr/src/contrib/tcsh/sh.h Sun Nov 23 15:03:33 2003 @@ -650,6 +650,7 @@ */ EXTERN Char *doldol; /* Character pid for $$ */ EXTERN int backpid; /* pid of the last background job */ +EXTERN int ArgMax; /* Max bytes for an exec function */ /* * Ideally these should be uid_t, gid_t, pid_t. I cannot do that right now --- /usr/src/contrib/tcsh/tc.func.c.ORIG Wed Jul 24 18:23:04 2002 +++ /usr/src/contrib/tcsh/tc.func.c Sun Nov 23 15:33:34 2003 @@ -134,7 +134,7 @@ if (sp == (sp0 = sp0->prev)) return (buf); /* nada */ - for (i = 0; i < NCARGS; i++) { + for (i = 0; i < ArgMax; i++) { if ((i >= from) && (i <= to)) { /* if in range */ for (s = sp->word; *s && d < e; s++) { /* @@ -174,7 +174,7 @@ { Char *cp; - cp = expand_lex(buf, bufsiz, sp0, 0, NCARGS); + cp = expand_lex(buf, bufsiz, sp0, 0, ArgMax); *cp = '\0'; return (buf); } --- /usr/src/contrib/tcsh/tc.os.c.ORIG Wed Jul 24 18:23:04 2002 +++ /usr/src/contrib/tcsh/tc.os.c Sun Nov 23 15:05:10 2003 @@ -979,6 +979,24 @@ */ syscall(151, getpid(), getpid()); #endif /* _SX */ + +#ifndef NCARGS +# ifdef _SC_ARG_MAX +# define NCARGS sysconf(_SC_ARG_MAX) +# else /* !_SC_ARG_MAX */ +# ifdef ARG_MAX +# define NCARGS ARG_MAX +# else /* !ARG_MAX */ +# ifdef _MINIX +# define NCARGS 80 +# else /* !_MINIX */ +# define NCARGS 1024 +# endif /* _MINIX */ +# endif /* ARG_MAX */ +# endif /* _SC_ARG_MAX */ +#endif /* NCARGS */ + ArgMax = NCARGS; + } #ifdef strerror --- /usr/src/contrib/tcsh/tc.os.h.ORIG Wed Jul 24 18:23:04 2002 +++ /usr/src/contrib/tcsh/tc.os.h Sun Nov 23 15:03:49 2003 @@ -105,22 +105,6 @@ # endif /* POSIX */ #endif /* OREO */ -#ifndef NCARGS -# ifdef _SC_ARG_MAX -# define NCARGS sysconf(_SC_ARG_MAX) -# else /* !_SC_ARG_MAX */ -# ifdef ARG_MAX -# define NCARGS ARG_MAX -# else /* !ARG_MAX */ -# ifdef _MINIX -# define NCARGS 80 -# else /* !_MINIX */ -# define NCARGS 1024 -# endif /* _MINIX */ -# endif /* ARG_MAX */ -# endif /* _SC_ARG_MAX */ -#endif /* NCARGS */ - #ifdef convex # include #endif /* convex */ --- /usr/src/lib/libc/alpha/gen/makecontext.c.ORIG Sat Nov 16 07:39:10 2002 +++ /usr/src/lib/libc/alpha/gen/makecontext.c Sun Nov 23 21:25:31 2003 @@ -30,11 +30,19 @@ #include #include +#include #include #include #include #include +/* + * The usage of ARG_MAX (or NCARGS) as limit on argc seems arbitrary at best + * - thus there is little point in finding the actual value via sysconf(3). + */ +#ifndef ARG_MAX +#define ARG_MAX _POSIX_ARG_MAX +#endif /* Prototypes */ extern void _ctx_start(int argc, ...); @@ -83,7 +91,7 @@ ucp->uc_mcontext.mc_format = 0; } /* XXX - Do we want to sanity check argc? */ - else if ((argc < 0) || (argc > NCARGS)) { + else if ((argc < 0) || (argc > ARG_MAX)) { ucp->uc_mcontext.mc_format = 0; } /* --- /usr/src/lib/libc/gen/glob.c.ORIG Wed Jul 17 06:58:09 2002 +++ /usr/src/lib/libc/gen/glob.c Sun Nov 23 21:14:43 2003 @@ -68,6 +68,7 @@ #include #include +#include #include #include #include @@ -77,6 +78,15 @@ #include #include #include + +/* + * The usage of ARG_MAX as default limit on the *number* of matches seems + * arbitrary at best - it should rather limit their total size. Given this, + * there is little point in finding the actual value via sysconf(3). + */ +#ifndef ARG_MAX +#define ARG_MAX _POSIX_ARG_MAX +#endif #include "collate.h" --- /usr/src/lib/libc/i386/gen/makecontext.c.ORIG Mon Sep 16 21:24:31 2002 +++ /usr/src/lib/libc/i386/gen/makecontext.c Sun Nov 23 21:25:41 2003 @@ -31,11 +31,20 @@ #include #include +#include #include #include #include #include +/* + * The usage of ARG_MAX (or NCARGS) as limit on argc seems arbitrary at best + * - thus there is little point in finding the actual value via sysconf(3). + */ +#ifndef ARG_MAX +#define ARG_MAX _POSIX_ARG_MAX +#endif + /* Prototypes */ extern void _ctx_start(ucontext_t *, int argc, ...); @@ -83,7 +92,7 @@ ucp->uc_mcontext.mc_len = 0; } /* XXX - Do we want to sanity check argc? */ - else if ((argc < 0) || (argc > NCARGS)) { + else if ((argc < 0) || (argc > ARG_MAX)) { ucp->uc_mcontext.mc_len = 0; } /* Make sure the context is valid. */ --- /usr/src/lib/libc/posix1e/mac.c.ORIG Tue Nov 5 02:42:35 2002 +++ /usr/src/lib/libc/posix1e/mac.c Sun Nov 23 15:16:18 2003 @@ -97,7 +97,6 @@ return (0); while (fgets(line, LINE_MAX, file)) { - char *argv[ARG_MAX]; char *arg, *parse, *statement, *policyname, *modulename; int argc; --- /usr/src/libexec/rexecd/rexecd.c.ORIG Fri May 3 15:12:06 2002 +++ /usr/src/libexec/rexecd/rexecd.c Sun Nov 23 14:24:24 2003 @@ -129,7 +129,8 @@ static void doit(struct sockaddr *fromp) { - char cmdbuf[NCARGS+1], *cp; + char *cmdbuf, *cp; + int argmax; const char *namep; char user[16], pass[16]; struct passwd *pwd; @@ -178,9 +179,14 @@ if (connect(sd, fromp, fromp->sa_len) < 0) exit(1); } + if ((argmax = sysconf(_SC_ARG_MAX)) == -1 || + (cmdbuf = malloc(argmax + 1)) == NULL) { + error("%s.", strerror(errno)); + exit(1); + } getstr(user, sizeof(user), "username"); getstr(pass, sizeof(pass), "password"); - getstr(cmdbuf, sizeof(cmdbuf), "command"); + getstr(cmdbuf, argmax + 1, "command"); (void) alarm(0); if ((pwd = getpwnam(user)) == NULL || (pwd->pw_uid = 0 && no_uid_0) || @@ -207,6 +213,7 @@ } if (pid) { /* parent */ + free(cmdbuf); (void) pam_end(pamh, pam_err); (void) close(STDIN_FILENO); (void) close(STDOUT_FILENO); --- /usr/src/libexec/rshd/rshd.c.ORIG Wed Jun 26 19:09:08 2002 +++ /usr/src/libexec/rshd/rshd.c Sun Nov 23 14:26:34 2003 @@ -194,7 +194,9 @@ int one = 1; const char *cp, *errorstr; char sig, buf[BUFSIZ]; - char cmdbuf[NCARGS+1], luser[16], ruser[16]; + char *cmdbuf; + int argmax; + char luser[16], ruser[16]; char rhost[2 * MAXHOSTNAMELEN + 1]; char numericname[INET6_ADDRSTRLEN]; int af, srcport; @@ -297,10 +299,14 @@ rhost[sizeof(rhost) - 1] = '\0'; /* XXX truncation! */ + if ((argmax = sysconf(_SC_ARG_MAX)) == -1 || + (cmdbuf = malloc(argmax + 1)) == NULL) { + rshd_errx(1, "%s.", strerror(errno)); + } (void) alarm(60); getstr(ruser, sizeof(ruser), "ruser"); getstr(luser, sizeof(luser), "luser"); - getstr(cmdbuf, sizeof(cmdbuf), "command"); + getstr(cmdbuf, argmax + 1, "command"); (void) alarm(0); pam_err = pam_start("rsh", luser, &pamc, &pamh); @@ -403,6 +409,7 @@ if (pid == -1) rshd_errx(1, "Can't fork; try again."); if (pid) { + free(cmdbuf); (void) close(0); (void) close(1); (void) close(2); @@ -459,6 +466,7 @@ rshd_errx(1, "Can't fork; try again."); if (pid) { /* Parent. */ + free(cmdbuf); while (wait(NULL) > 0 || errno == EINTR) /* nothing */ ; PAM_END; From owner-freebsd-bugs@FreeBSD.ORG Sun Nov 23 13:50:25 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B680D16A4CE for ; Sun, 23 Nov 2003 13:50:25 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8542543FAF for ; Sun, 23 Nov 2003 13:50:20 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hANLoKFY080405 for ; Sun, 23 Nov 2003 13:50:20 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hANLoKRE080404; Sun, 23 Nov 2003 13:50:20 -0800 (PST) (envelope-from gnats) Resent-Date: Sun, 23 Nov 2003 13:50:20 -0800 (PST) Resent-Message-Id: <200311232150.hANLoKRE080404@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Oliver Fromme Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DA28216A4CF for ; Sun, 23 Nov 2003 13:41:38 -0800 (PST) Received: from lurza.secnetix.de (lurza.secnetix.de [195.143.231.20]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7BB3143FBF for ; Sun, 23 Nov 2003 13:41:37 -0800 (PST) (envelope-from olli@lurza.secnetix.de) Received: from lurza.secnetix.de (jsbapq@localhost [127.0.0.1]) by lurza.secnetix.de (8.12.9p2/8.12.9) with ESMTP id hANLfZb0083429; Sun, 23 Nov 2003 22:41:35 +0100 (CET) (envelope-from oliver.fromme@secnetix.de) Received: (from olli@localhost) by lurza.secnetix.de (8.12.9p2/8.12.9/Submit) id hANLfZtC083428; Sun, 23 Nov 2003 22:41:35 +0100 (CET) (envelope-from olli) Message-Id: <200311232141.hANLfZtC083428@lurza.secnetix.de> Date: Sun, 23 Nov 2003 22:41:35 +0100 (CET) From: Oliver Fromme To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 cc: Oliver Fromme Subject: kern/59624: [PATCH] HightPoint HPT371 support for FreeBSD 4.9 X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Oliver Fromme List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 23 Nov 2003 21:50:25 -0000 >Number: 59624 >Category: kern >Synopsis: [PATCH] HightPoint HPT371 support for FreeBSD 4.9 >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Sun Nov 23 13:50:19 PST 2003 >Closed-Date: >Last-Modified: >Originator: Oliver Fromme >Release: FreeBSD 4.9-RELEASE i386 >Organization: secnetix GmbH & Co. KG, Munich, Germany, www.secnetix.de >Environment: System: FreeBSD dorifer.fromme.com 4.9-RELEASE FreeBSD 4.9-RELEASE #2: Sun Nov 23 19:54:31 CET 2003 olli@dorifer.fromme.com:/usr/src/sys/compile/DORIFER i386 >Description: Support for the HighPoint HPT371 EIDE controller has been committed to 5-current on 2003-06-19, but so far it has not been MFCed to -stable (because of a very different driver structure, I guess). However, since the HPT371 is sufficiently similar to the HPT372, adding support is not very difficult (see the patch below). >How-To-Repeat: Boot a FreeBSD 4.9 machine with a HighPoint HPT371 EIDE controller: pci0: (vendor=0x1103, dev=0x0007) at 11.0 irq 10 And with the below patch: atapci0: port 0xb000-0xb0ff,0xac00-0xac03,0xa800-0xa807,0xa400-0xa403,0xa000-0xa007 irq 10 at device 11.0 on pci0 >Fix: --- src/sys/dev/ata/ata-dma.c.orig Sun Oct 26 20:27:16 2003 +++ src/sys/dev/ata/ata-dma.c Sun Nov 23 19:53:32 2003 @@ -1187,10 +1187,12 @@ case 0x00041103: /* HighPoint HPT366/368/370/372 controllers */ case 0x00051103: /* HighPoint HPT372 controllers */ + case 0x00071103: /* HighPoint HPT371 controllers */ case 0x00081103: /* HighPoint HPT374 controllers */ if (!ATAPI_DEVICE(atadev) && udmamode >= 6 && hpt_cable80(atadev) && ((chiptype == 0x00041103 && chiprev >= 0x05) || (chiptype == 0x00051103 && chiprev >= 0x01) || + (chiptype == 0x00071103 && chiprev >= 0x01) || (chiptype == 0x00081103 && chiprev >= 0x07))) { error = ata_command(atadev, ATA_C_SETFEATURES, 0, ATA_UDMA6, ATA_C_F_SETXFER, ATA_WAIT_READY); @@ -1206,6 +1208,7 @@ if (!ATAPI_DEVICE(atadev) && udmamode >= 5 && hpt_cable80(atadev) && ((chiptype == 0x00041103 && chiprev >= 0x03) || (chiptype == 0x00051103 && chiprev >= 0x01) || + (chiptype == 0x00071103 && chiprev >= 0x01) || (chiptype == 0x00081103 && chiprev >= 0x07))) { error = ata_command(atadev, ATA_C_SETFEATURES, 0, ATA_UDMA5, ATA_C_F_SETXFER, ATA_WAIT_READY); @@ -1532,8 +1535,9 @@ } } else if ((chiptype == 0x00041103 && chiprev >= 0x05) || - (chiptype == 0x00051103 && chiprev >= 0x01)) { - switch (mode) { /* HPT372 */ + (chiptype == 0x00051103 && chiprev >= 0x01) || + (chiptype == 0x00071103 && chiprev >= 0x01)) { + switch (mode) { /* HPT372, HPT371 */ case ATA_PIO0: timing = 0x0d029d5e; break; case ATA_PIO1: timing = 0x0d029d26; break; case ATA_PIO2: timing = 0x0c829ca6; break; --- src/sys/dev/ata/ata-pci.c.orig Wed Oct 22 16:43:52 2003 +++ src/sys/dev/ata/ata-pci.c Sun Nov 23 19:51:04 2003 @@ -315,6 +315,13 @@ } return NULL; + case 0x00071103: + switch (pci_get_revid(dev)) { + case 0x01: + return "HighPoint HPT371 ATA133 controller"; + } + return NULL; + case 0x00081103: switch (pci_get_revid(dev)) { case 0x07: @@ -447,6 +454,7 @@ /* FALLTHROUGH */ case 0x00051103: /* HighPoint HPT372 */ + case 0x00071103: /* HighPoint HPT371 */ case 0x00081103: /* HighPoint HPT374 */ /* turn off interrupt prediction */ pci_write_config(dev, 0x51, (pci_read_config(dev, 0x51, 1) & ~0x03), 1); @@ -567,6 +575,7 @@ switch (ch->chiptype) { case 0x00041103: /* HighPoint HPT366/368/370/372 */ case 0x00051103: /* HighPoint HPT372 */ + case 0x00071103: /* HighPoint HPT371 */ case 0x00081103: /* HighPoint HPT374 */ if (((dmastat = ata_dmastatus(ch)) & (ATA_BMSTAT_ACTIVE | ATA_BMSTAT_INTERRUPT)) != ATA_BMSTAT_INTERRUPT) --- src/share/man/man4/ata.4.orig Wed Oct 16 15:40:51 2002 +++ src/share/man/man4/ata.4 Sun Nov 23 22:22:16 2003 @@ -101,6 +101,8 @@ Ultra DMA 66 (UDMA4), 66 MB/sec .It HighPoint HPT370 Ultra DMA 100 (UDMA5), 100 MB/sec +.It HighPoint HPT371 +Ultra DMA 133 (UDMA6), 133 MB/sec .It HighPoint HPT372 Ultra DMA 133 (UDMA6), 133 MB/sec .It HighPoint HPT374 >Release-Note: >Audit-Trail: >Unformatted: From owner-freebsd-bugs@FreeBSD.ORG Sun Nov 23 15:23:56 2003 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 80B4F16A4CE; Sun, 23 Nov 2003 15:23:56 -0800 (PST) Received: from salmon.maths.tcd.ie (salmon.maths.tcd.ie [134.226.81.11]) by mx1.FreeBSD.org (Postfix) with SMTP id 92C5E43F3F; Sun, 23 Nov 2003 15:23:52 -0800 (PST) (envelope-from dwmalone@maths.tcd.ie) Received: from walton.maths.tcd.ie by salmon.maths.tcd.ie with SMTP id ; 23 Nov 2003 23:23:51 +0000 (GMT) Date: Sun, 23 Nov 2003 23:23:50 +0000 From: David Malone To: freebsd-bugs@freebsd.org Message-ID: <20031123232350.GA50013@walton.maths.tcd.ie> References: <20031123172259.GB74783@shellma.zin.lublin.pl> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20031123172259.GB74783@shellma.zin.lublin.pl> User-Agent: Mutt/1.5.3i Sender: dwmalone@maths.tcd.ie cc: freebsd-stable@freebsd.org Subject: Re: Panic on 4.9-PRE (mbuf/m_copydata/ippr_ftp_process related) X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 23 Nov 2003 23:23:56 -0000 On Sun, Nov 23, 2003 at 06:22:59PM +0100, Pawel Malachowski wrote: > My router caught kernel panic after 11 days of working. System > is 4.9-PRERELEASE and runs without problems since 28 Sep 2003. Is 28 Sep the date of your 4.9-PRERELEASE? There was an important memory corruption bug in ipfw2 fixed before the 4.9 RELEASE (on 17/10/2003). The bug was triggered by dynamic rules, so if you're using dynamic rules then it is definitely worth trying to upgrade to 4.9-RELEASE. David. From owner-freebsd-bugs@FreeBSD.ORG Sun Nov 23 16:18:24 2003 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DF95B16A4CF; Sun, 23 Nov 2003 16:18:23 -0800 (PST) Received: from shellma.zin.lublin.pl (shellma.zin.lublin.pl [212.182.126.68]) by mx1.FreeBSD.org (Postfix) with ESMTP id 04EDE43FD7; Sun, 23 Nov 2003 16:18:22 -0800 (PST) (envelope-from pawmal-posting@freebsd.lublin.pl) Received: by shellma.zin.lublin.pl (Postfix, from userid 1018) id D12A15F103; Mon, 24 Nov 2003 01:24:52 +0100 (CET) Date: Mon, 24 Nov 2003 01:24:52 +0100 From: Pawel Malachowski To: freebsd-bugs@freebsd.org Message-ID: <20031124002452.GC74783@shellma.zin.lublin.pl> References: <20031123172259.GB74783@shellma.zin.lublin.pl> <20031123232350.GA50013@walton.maths.tcd.ie> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-2 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20031123232350.GA50013@walton.maths.tcd.ie> User-Agent: Mutt/1.4.1i cc: freebsd-stable@freebsd.org Subject: Re: Panic on 4.9-PRE (mbuf/m_copydata/ippr_ftp_process related) X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 Nov 2003 00:18:24 -0000 On Sun, Nov 23, 2003 at 11:23:50PM +0000, David Malone wrote: > > My router caught kernel panic after 11 days of working. System > > is 4.9-PRERELEASE and runs without problems since 28 Sep 2003. > > Is 28 Sep the date of your 4.9-PRERELEASE? There was an important > memory corruption bug in ipfw2 fixed before the 4.9 RELEASE (on > 17/10/2003). The bug was triggered by dynamic rules, so if you're Sure, but I'm not using dynamic rules (limit), only dummynet dynamic pipes, it worked great for months with 4.8-stable/4.9-pre. > using dynamic rules then it is definitely worth trying to upgrade > to 4.9-RELEASE. Right now I'm running fresh 4.9-STABLE. I worry I won't be able to trigger (it just happened) or I will have to wait long time for next panic (if it was not fixed later, of course). -- Paweł Małachowski From owner-freebsd-bugs@FreeBSD.ORG Sun Nov 23 17:24:31 2003 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7E8CD16A4CE for ; Sun, 23 Nov 2003 17:24:31 -0800 (PST) Received: from tinkertoys.net (tinkertoys.net [161.58.152.111]) by mx1.FreeBSD.org (Postfix) with ESMTP id 909FF43FE1 for ; Sun, 23 Nov 2003 17:24:26 -0800 (PST) (envelope-from kbrogers@tinkertoys.net) Received: from internalprocess (eep.burdell.org [216.27.160.200] (may be forged)) by tinkertoys.net (8.12.10/8.11.6) with SMTP id hAO1OLOb045145 for ; Sun, 23 Nov 2003 18:24:21 -0700 (MST) Message-ID: <005701c3b229$e567bc50$0400a8c0@internalprocess> From: "Kerry B. Rogers" To: Date: Sun, 23 Nov 2003 20:25:24 -0500 X-Priority: 1 X-MSMail-Priority: High X-Mailer: Microsoft Outlook Express 6.00.2800.1158 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 X-Mailman-Approved-At: Sun, 23 Nov 2003 17:29:36 -0800 Subject: hosts.allow not always working... misses some IPs X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 Nov 2003 01:24:31 -0000 Dear Whomever, I received an e-mail with the following header fragment: ====== cut here ======= Received: from priv-edtnes11-hme0.telusplanet.net (outbound03.telus.net [199.185.220.222]) by tinkertoys.net (8.12.10/8.11.6) with ESMTP id hANMNpKS021237; Sun, 23 Nov 2003 15:23:51 -0700 (MST) ====== cut here ======= In my hosts.allow file (which usually rejects domains just fine) I have: ====== cut here ======= smtp : 199.185.220.0/255.255.251.0 : deny ====== cut here ======= The above listed e-mail should have been rejected but it wasn't. Is this a bug? Is a 975K host.allow file creating this problem? Please help... Thanks, Kerry B. Rogers kbrogers@tinkertoys.net P.S. I've attached 3 relevant files. begin 666 hosts-allow-prob.zip M4$L#!!0``@`(`*:>=R^C:N)FI0(``+,$```-````:6YC;VUI;F_,^0SEWW<= MIY2VJGBII=/=V3NS.[,K3U 72MCC0$<^='6STVRWV7Y?8U+DCD#=,XT)+C%^ MP-"'E9(I9"I^L#'4`G/.[2A%YFRCLR2@^!(#=5GHA2Q$R#SGF0EN>*?C\';+ M<5U&R[W=,XTWBR?0L=B@TO*I"JNW'>XZG#5HY\[^'CS&.H+3Z6@VACB$Z/AR M=)E]GC*7N][!(5%,"_$>7 \NY0.XC'G 6[[K^2T.-CM@#.JCZ6SO+QGK6&4R M@?J-RPZT#EO*[/-.#YJ9\+C6H4Q D\C(B',8>U'.92)=QV.6_9 MG'5H>799&N>LM1-4ZGE)1-*Z58CKD3E>DSG7\[-OY)7;=EZOJ5_IZ1V^Y/R' M,TU6.6,:9Y.KD0^6!=U,YEK)A=3]E4),2<^N^[,K"KA$_2C5!G8>*@*HW;%? MQN:HZ+A#3.>#3Z;#:1MH@,\SQ8HWU.S?P?IIG&,-!4 MPZM^7=OS\^&%#YT[ZVUM'#9KM?'L@U6[J=U:-=,P#=NN:OQ3G,;ONA'I-'GQ M004B7Z&R3\52AK%8^W!?2(VA374+'2P2+!F['V>CBUZYGQX/>]W&=J/KX&KX MM=SCE0I2A%PMC[RAM8Q#/T[O%W>;M041QNM(TVM&$Q?JJ#P10X78@((:V\!;7],6 ("TSD(RQED80@I*8[A)B4K<<*)*'$K61"<:0# M@C!41(*Y7V:H\OQ<<_$+6PX.$+H[Z*ELLTC%8_;;\'4;@Q+=V$HEY941IO$# M4$L#!!0``@`(`'&@=R_DP 5>,AH``*(W```-````26YC;VUI;F`L3+&QL;0BHD@5[HB;B[__VR M!#:V&W?W],S%;L2=HMT8J92/+[_,K$I/<1!Z]ITH!_H]>@C*]7*M1K._!=@, M_8*-@\=L9HH5;$18O4=;S[&0ZQG1'58#&_MEMI N=$T9EI+EZ$<5;YTP*+P( M0'\KUNN%8JU28!BZP)3IO_^4S?S;)D&!8>^Q%SC)>=F/M4*1*11I"CZ+!?8G M%!N!CEJSH20B0T4Z-QH.)ZL)S13I2ND7$#$+[9\14T(C)T(,39=0L7+/,/=, M%=W159I&/PYGTD^?68\#G(1;]./?&+I:8 N54H']^T\(S/FB6]D,>KE^%.P` M>T/9,%$T!!$T7: K!9H!(XIW3+%8N2O2=?@IW1&KBF#NQ1?BRFM!X-7#>0E3 M8LA%%Y:S)5\MT:7"%ZWY[>S$XR^OI7T$!WV&(YMI3\?#>Y0;&HKG^,XV0+SC MN8XG!X9C(]%S-$^VT PKH6<$"?F%/,BAAT3Q]D?SX(58_BUT53G S\20QB"/ M=VP_M+ '*Y7+K_^(;5\QCY[R;OULWNBU>.D>#'O&@T5!D$\W3 MY=G,T+#PW0)[/EAPCXH%L![4!-@.[J3$Q??("LW <&4OH"SCB-5?T,8);57V MDE]SIJXYEFO@T,Z!(.S[LH;O! C_'\,ZFVF":?=?AWEU-Q>:@WNTJ__CAQ\V MQ;_^Y8>']=]S/\CS3[D?LIELYN[N:N'';GG8!'5O'/-VNN;*YO%@^.8AU'(D M!P)X[=?<]379!&K:$-((Y\[*WKWUL<97K[[6>M#CDZ,JMJY=!%YOO)<5X&- M`7+&:[\\V?:WV+MKV8JC&K9VCPZA`Y[=`>IV(&],3,2^)N690^1NH!L^@G^! MCI%YIDQT)@5RMLA_INJ99#^39=E,#@*#K0WVTNC\C/@07$R]0E#C%#UW68YB MW5!TY&'?,2/L9S.R::*][<3V57 4FC;VY(UA`C^QC^3MEF2%#9X/9R@M`Z1R MM8ZNZ7C8^QG!W7$8F(ZS1[*MOOX*:T 54>.C&(,JF;CE88QL')L)4@U?`<,] MK+[76LAF!-L/B'E@'0H MH=NQ>F92N4 7TV@1AGG/+USB=EU6@SK_X;+G\'XL->U#C@6NJ&G!O0=B^H$# M1/>1KY,8`'+G*!/@4C (8'*0?L>R1UP*D.-"R0Y"&_ $I+IG0ES>O$=3")4< M!#(`J:*M8>("XG7'`4:L`0\P"V@&"9K 4]6034>#1#]>Y4#$[]':"9'JV)\" M8":L@]NJ`YXDD(RV!BD`[CPK)#?..0K12@/W.I.AI:@AT'06IC9#1_$B0R%I M!+#T@4(&(S\?\J5<**;J?-XEENC#?( M!PO `#T(W'N*\L]/"M;S6P6 GB+6M1WO);WO+C46O-DZGG7N@S)4ON"5.O?L M!$3637E*#(P,4/?.K)>^R:GP&+0\6_5B5!S'[PQZ-B2U3-)E>T\R"QSW(!($ MV\_-2$$6SY9 6&PG@"1Q(8T@3&DDK'/#(T4#D($BXT/RG'<^`&MH6PY0QR%E M!M]99 LCJRIA;AJ4F 0"PZHTT<%3DOW8=QT[Y0&0(-5F7++T[G==Q$6H=K*% MT^I#X).5((1 DDHBV\:%&<^N(I+V$!(P%2S1H30:=FH>>3/P9!5;LK=_EF5X MJ:6D/$.EARH.B54@;VA*PT'C^2SQ37) MIQ\D@&S:M4O-3ZE@Q?<_/19L.2+?_E-QH#S=_V6;7K^06WHT>''@_$4I.>6.M OAZ362B)?&Z:L['/DG08W:[7' M(PG-A*<6><3DT%96B$DYJ%^J;,L_RQ[4AW2UQ#4&+;04FE*7+&!I.H>Z+:'3 M3:66X=LKG7\IEJNU5N/\XA1!7 #[5 5]OM=$W$#HC,@M$V^#'%J\?)?&8NZJ MITST3,?+F]\5W8]3RDQKATC*2^/2>'R@P 2*V)K>D"YA>@U!2LW7& R%9G/0>@/I.6YH-%Y..?'Q MV?N4)RGB9ZKDH-B<2 2+5YAN>0Y;CBVY\:'GBAR0QD!]2O/_G9<) MHV=5__5[--ZNS3>U70K\]RJ"GJGHWZ0G7?F=:CY'\-.5'$3^XZN>2)ZC3FBH M^*J-<.,M2>!C>N'*]/%KC&F,)6D\_(P?S]FQN.0SXM*$?LZ0XM>3XTL.2MRT MTTKS'Z4(OF[[)$FNWIW_)^GPH9_P04I,ZO%EN3#LH-F4)PH40[U73Z:[W-EMI5D Y>6A,TY_;->J1@ ?0/3Z\*W6/MTX;5UG_?^;X/WGFN' S9>8- M7G[&M2L3BSG$MP8#Z%.\,.J\NB-RS>;E3BGWCISG]OBV]UU2_9+(;VE;)'1_ M?)\7L1; Y@.R&KQ\$25O?,M051._2Y=S:MTX6;U)SN?4_((A7SB'O1/RJH[] M,WR]?2;\W-U7ECR7SU>V?)1WMT]Z9Y)\_0#Y?MW73Y!?ZA+_#'3?GF?/&YYO MI= ?/_O^:S'M[3G\]V%QX\P.BK_AV/XO"0$4\-_G_LUQ`PG^-TP<;B)P+=OG M'/LCVX/O&6'<'F# 3NO=H>/V1CB%_+J]>G>X^'SZ079:UPD(>?E/'G%\;OC' M@XP<>F_Y:S#?CTC>F/YSVJF];U*GP"&?5Z"Y7[BU_=R+SQD8R^Y M&VY=W^YXE"?Y^5_;U"47E2Q.*FY7R M1129([R4L!>,KK+:Z95[5TV_=^A 9I\?4?MC7I]I_2TGUZ\:8&)--F^7H %Y M]'VJ_(NNP(.NCPN.IU$1;,[)MHQBZAE^")-YS,)HSO$PQ%A3SB_(*,> MPL?TR?.XY=((&E_='UTF+']"I $)Q7&37[XP641D8)(>V7W";N@>6"VDD,VD M]=G!R\#O+/^7W#>QA%1S2KE,-@MZ8'W.#PE[5IJII[=OIT-DSGV-_Q9U;"@Z%.:L?WBR'@#;8,M7Y<(S7OTT-UTXFB1;#2F:.':YMV M\5A3YN5DX'KC))LY"1W.,Y^6(5,)CZ5B_;AT#[8].KFNO$S*[#CJ]XW3TT&. M!C)3K+)YIE8:5?QMMU0.!Y;;GSFC:%-5JN/2@*EG,\EAO/,":5Y6O'X1GE2P M=ZB/J2@_KH;UNB@Q_J9SPN*.C09)O;Y;E\2H2D4;)K^U*_D\%=7Z!X]VEMUP MM%EE,Y7*;.'XIQ%3BX:,VYE[U5DQ.AR"J,)LO;%HUOA))!_"$S/>N577LDOC M4U@KC<6394ELNT@='7;AZ'67X2NG;*;46O*EHC4KTT]'KQS&[& UJAE/^W!E MV97*H5X5NPRU-KRBMQE4C(6DE\8[1HE6%3&J4WDJKDW:-99F=999[D&:G5?# MC;VNRYL&HU1MJE;2ZZ.=P<:XG^<[O?+"L-AETG?[2]_7VDG"R0N*[ENU3G)D MN\M*M=T[&DI39/)2D,W4Q5V-BLHHPPI$[+B**M,K62NI2PZMLK8=JA?U*KV.'7")R@J;%54Z-=G.2:1*NP7% MA,ZQ>]@WRF-C]./ MM%)PG$!I_(*?'H5LQN\W&UJL27WS)/C];E,_BUMLCTD+B-V M!T?G*%G.;N9*K7VBF0VOLU;F>6R6;$"HU9RU^X";=5),;CN0IC$U%!=E;2?- MGGQ+G\ZGBAZNXCD$>#M;"YUPTS(.R8$[%+7&:" :4Y/7Q%.Q7@U:Y:&SF_IQ MV,QF>MU596[(VD08**-AT#<9]A26COMK MG;4W87MC+=R%Z6[ZFZ0\3.1:I0:M8.F9WH(VJ6V+7S8;>ES61<-R>O.X/IHL M9'JML?L]JXI6LWX,J)518?9:OU/N\--!X$J[IY'U)$TJR3X8K*1L9M(>-;G\ MH8>9>+_7]IYG+;UC.8CH%3NDM*CMV2>=#>5Q/N;[8_WD5Z73,IEC/VDZ5O54 MIZ@6!_*P("Q.@5=J%=M&>S&S M)[W!2BGO_6,8[A(C86UWU&FO&\13..:?^D^&RVE[M\:!X\V52:%=<5 MYHL1WVXW!T5GUJY-(KMD)T8MWQ<.PVY-GL3QD6+9UG"B.(O)L0.V"52_T0+_ M^9E##P5QT)OU8HY=MR/?:ICM_5ISW+ETC+5);;7J-!J-Z9RC)_,5[KGLP6 \ MQNL/!@HW+S,'.)DOA:D^99G2VE6;HV$YGM#"6+ US8NW[9'#-YLF0\>.^ /YU!#8C^.1#Z9):5F.'![G;:Q M+J\==<5.O;ENCX5VLQF)(WS8[U?;_HE/?#^JY?TH'E;"M2B.QJ/0YY[\4PNN M;*;C.,[$WT[4Z50])CU!J)4$VHGILCW9[?92P#325QVLAFYTO<%UG(;WO'AJE*)*K9ZG M2XVC"LZW$R=(>%5JRVY5*/:K3^6UO[<4(9Y)?+[>'W8[LR8[RV9H3NAU]]-C M(\'[O=#K1Z6!N-ILAWBLJMK$\H-\F66/#B?,P97YB9N,&DV:Z=+T_']JMY:F M!74DNK]5]Y>X$!5$%[/HA `!(H:GL/-#">(#5)3'KY]\=V:J9JIF.;/H"E@D MA*;[]#E->?WVCRB*E/?V=$K4?$]DA"PJ>_Z,XL=M-,;@LM:VR&',NQ#QDD > M]A'4[%SNJ;-VW;W]*-NV/'NX6Q?8,(U['6V [77FC'W/4T6NMMCH4#1:\XZS MT=IU-9X5A=E7TP>[ZUCQ35FC>-5M3&"D86 \2G&>,?WPZMOCQAXK*A/:L7!O M6+]?_LMOYC7G11],8;TMM%5DOX\+-[!VX;K)^) KZ^11.V,&- B8JQ8=&<;AV;JX(N@EF^#N-%LRTY9YT>4]S&].A(+-K]_X+2@HC3BR M]^?=J\*DZ'FUYW>V(>"1*_0/9$0(JC2S%O;G&N&$&6HCIQL(Q&L'Q'_D&9E_ MFWLEWVG-K[KFIJ.]LUY9ZBMN'"VZFY\^@AC')\XK_]A0+B&>N.\$"P))".*\ MV03T4YYO;!A>_'C3+^3JR7AK\%?[F'Y9?OT]40XR56LA1EVET.2KF&Z.&2%. M7"WPM1%BH'Y,?_"/&>=C,8'!5'?QHNOMRTX&".H__[B.AMD%;2LIW;$/-BV8 M/%R_U^0;?I[*D.>[4%55<XDA MO7GIJRX==GG\SH8$I=EAG4$6*;@7=F\$2+DH^YW5B"IZXX8W1T(S7F$\Z;E7 MX:RA<#)F.1GY$V2$8'5 Y$?9'E?H=>\T#Q$E2+,+H/F]61(4-LZW/%D:WZ^^ M5'':J?/%VPLVXX9+C5''[C)>]H0>9;RF,GJ!CRNG$#1^AN96_UGUGVU2X0/O MRS&+"O38LW'A?`B9F_4'8^D#%57% WD#K_"AK_0N1JK.\ MU6L_^LQ/L4TO_G4H\10I3;&\];;NK$^SFQMYD$AH.L%G4^$8>G[#E#)TN8*# MR3FC["[EG(#A?J5"H-7#]J?CY!0_,TX/^?K'IG2?WR/%9%F]#,:XUQ1"\H " MA))-G)NBDXSL+.>.S[F,[-M1U@6RY ?([)L)NV%Q&:F7&863^>ESOSVIB>E= MULN](/QJP6UQIUJKJG:1L:'A-'SBY:*A63$8\:?I_5YJ&0K,CPQB6 `/%&@" M@A&()J>V;.PHDVSL0]"0]AQ1OSFW=W_Q#DYS65=3\6!6LSWJVF8@^%[X2.H% M+J=^->W&GL?3SRZJ;J>L/LPKY4F2\9M0XV*VQ*?A1OM92;4H5WGYAO#4LL%Y MDR9O:UGDT&FEIT>-)ZOS"$EZA@'4I4SY6L"5-P&V[Z^LLH0!>/;65*A_`+CZ M5BWC;-K^YUNNYH!ZQI&XQ+:K>NNE$CG[I51MCIZ&I+(6[.X$+O7>SF0,J!RJ MTDN]&5,@LL#9 M]D?RZV[YSKXKKNV)S^_?0T3FNG'#G\W5DQ))=,YTAEV_FO;'X$?[]#Z]-HDB MLF6X>V-AS63-,DRG=\PJ93]7P]6?=E 8ZB"K'AI8P\$B=A:VZ:14^UL%.WL0 M(NW&##T8AXRZ7]3CO)YM+6P_(2YDUIOLY)LJ\2?)] X-+)W#ZK2=X*Y_M&88 MIE1=K-53<[P`4UY]'RL4[$FM+"!&";6MJ_N(/U1+(>VO^LBW]F&;*:L>B%M0 MF9Z-`1DOYIA?"T)1LP=F38V!V-+M2^NH<& ''WE"&S=HGK^RO7'VF^6E_S:9 \/]& 6SO VN$T&]9H MIK/3QLW03FGRZW2A4CL3%<"-I-CI$-_D%%:[`KDO8"Q LZ D,,GRHAR!37/ M7@^[\56P4:[H'@!)@:0JB4O,/>J#+I.95=1@5W<@L285TR3,3)Z_[/R.D\HW M]M7XA3/JKLZTBS/ZEGO;>8)IR1DE6VQ(Q4EH#HAB,'Z^%\E4301=\,Q@PL A M`>R'!P31\Z-V0)L*81\)25AX-:WV1%O"=0\EG_YQ\,2\>,`<"WH@S? M\6'7R7C).'S4YFJ_1IBDI@UVHN:9XPP[* -3OJ\CAW')ZT R^11QE"SYL7_) M)Q6M9Y=V(MM'ER2KFY&& M,9+O3?]_=_?^^67U/[I[!@"#7?R/[MY<`IJT[6S^_35]J]^W&SW5I6GO0ZJ] M#J:^7FZU9[K5M7&A:V'W:Q+OVO V->--"JN;)D=Y7 P'/UX]?#:D/M/N/EO= M?;*X/4GKX;&]TT1FHQ2W-.8$1AXC]%0@?AM@VAX;7"Y-THM MAXR@EGLI=QN.`1*W(0+QM^N0RXEO\!ADG[L!BR1Z[A#GV>%@\J9\[]$:*+B2 M))UW*/*:RR29!!H*$]="ZM'0P;Q(L1 4C/??_FM<_:N9_.]_"/K/\]\K_@Y0 M2P,$% `"``@`0)MV+Y(%TU+_&@$`X#P/``L```!H;W-TN][OI,?QV$_*RJHNSJE+I-]L-E_6(N_X&R/KYQ5/<_XK;/W"9#R/L(?/MT[XV#OG: M0*F,]A.W\P$W82%<_^^_CBU)Y_*8=[X>QI;'(K[RIIUYU .N7:OU?P'[PQ!C MD/!.W,\//G";2?*[5H=HEW MQPWX^+M#%;%W4\3>?_'%F[C_56DO:?Q!'?\FF=[^BEA_0XSX*^*OOS+^^BOS MG[_RP/,+$X#YZ][]PO2_K^ +]7>#<,%^TOJONO>-FP=\;_Q]]5ZHFXH\?&W2 MU\CJOG"+!+=^"NX)5G\W%1?J[RO[@AD+)9;LPEU_^2MNDWRW6-I3P0\2\ LV M97 O' GOA>&,W1?0:(M&O+U@*!@S*=&1N/L.\/A!LQ8Q M=!YF+V+J]Y9]K\3Z;Y.Q+K:4+2=ISTF:92:J\0FBD=I/$>TSQY*;V^Q;ZY/?: MUM-E1?0"L?TS&_$(^F?&[5&V4[:;N0&T#A+"4@=KA7TO]'L)XE@38J95`"K1 M[.KR)5&;LGBDA.Z_9[%.4!-0%]"@H6_P(N!?[XZ=$?@7G@%T]OU("IP*; KL"A0!5X MJL!3!=Y4X$T%WB090%- MSJWS& ?)!A,_C3,_#5,_;?$7"[]8Z Q=2,NSM8V_O?FWM_XVQ8O1.Z'$C?]Y MW/R,DN#BYR'RH_[]O9SB0E&><&"B\(6S]//@_/VD8ZP9-L"I^?$9/$ Y'XO9 M"47,3F*60O*@F#P6:2^%QK%HCHOFN&B.B^98!R;6^6BG@GZ7=MIJA"*+1=%[ M%-KGXJ6\28NV)/Q^%+]\0$D6+(-2S+$();M!INP_F9U0):B6A)*\53;1GVRR MZI)VXNP+3R$3\IX)E1$)E1'YE8!I<+QRHB!+?\)@]SIATW),XY$(BG]$R4F-+\F*-P"3!%19425$55&5*$H MMJSAOV\XYP$R">,%(VF\<"2.%X[D$8D"H0*,?"_ >/QAM0[1* %^`<6*Y]?? M*YM/T!#0-'(GDCN1W(GD3B575C7X'BDU&GFOT7@:508./VV-):ZQ3-L'4]=. M-A&*;6^)^UOB!I>XPV'%1]XK/AZ%-U#(NGGE%/4L86*;>FX<69,UT<0C;*;H M#16]X6;2<#-INB":+(C6@= F/DL3\]9$-9KX!?TP1_5 3_5 5_5 7_5 EKJ9 MZ1Z40?T&FJ,OD4\7'>H8,VC0H%&#A@U=1:(H*M5[6)5NSG\'3W^CBY_ M1Y^_ETJY5,IB!H:8_2%F?\AZ&+(>AKB^0US?,2WT5!=TB(T>XH+.@QR0>9@# M,M5FN@535'B:29]HTF=',:O_.X>- M;^#XT$^>0]5@J!H,50,S!5--P113,&W/F;CG3-QS)NXYLY2.4CH*\R"S, \R MMXEPHP@W:NI6T6P5S49-7;(E+]F2[ST`GGX0(ZR%$=9*E-U*E-U*5*N5J%;+ MSB06'DHL/)58FGEC"QQ*M:YIDO]N7<;&0BX5<+.5B*1=+N;!] M8>&^L'!?6+@O+#V 6!)BE+FZA1F$P@S"6XW")R#16P=:H1?0K%")%2\)K$J\ MTC*OM- K+4PT%"8:2@\H2T\HJRMC71DSQ[G0<2YTG$L=YU+'N=1Q+C'AM6C? MJ(6&IJX6$*+);18'8L4C!D)SB3I$..;9(123(B.0E%KEVB:Y?JVJ6Z=JFN7;)KE^S:);MV MR:Y=HFN7ZMJENG;)KEVR:Y?LVE$Q;U UKW1!R+J)-+_,X;=W9O.[DUG]Z:C>]/5O>GJWG1V M;SJ[-YW=&RI:#ZI:O[]N\CBZH=FHH=FHH=FHP=FHP=FHP=FHP=DH*NZ/81=; M*>P:9)>H:E^Z`.5;%Z"G&[>DH),4=-(N1U7I,;OYH5Q''EA('EI)'EI*'EQ+ M'EQ,'EQ-+EV*DKH4Y5N7HN??+!4-[U];"0.;22.;24.;B6.;B8.;B:.58G&6)R?VER?VER?VER M?W%R?W%R?W%R?W%R'ZNT0\NT0^NT@PNU@RNU@TNU8\EUOGOGM,??+7>Y9BHWE39YND:=+5;A1UB(% M_8U2?Z/T[O*%1-+(T:8JUZ RU_N+DX^*MS42W!H);HT$-T>"FR/!S9'@YD@0 MJX%#RX%#ZX&#"X*#*X*#2X)CDU.R:2UC:6YH;6YH<6YP=6YP>6YP?6YLZ^!$ M+9RP5C2U5C2U5C2Y5C2Y5C2Y5C2/)!EB,Z=#NSD=VL[IT'Y.1VAJ.T55FNF5FNF5FLF5VLF5VLF M5VLF56MF4,M6K,!,K& M+-FU(TMB\6)J\6)J\6)R\6)R\6)R\6)2\6(.?'U@\/,#U)\WJ88OJ88OH8:O MO=V-^/>B]':[I= ?OI;=3F?;Q0/L:=W>X.E?MBK[EX7))T[>OW[9P"'5_R_< M6Z77`S"'`B>=^KZ ;^5H#U]L]*;%"V?+LK]WFW_XX=/%6 1,I'E,Y'E8;N<% M7-]7Y_\ZQK&1EWNUW*,J)@ZQ4!>AF*%KK[!^-3(P4N3>>+\NZI)EN-_0N2Z1 M_"N.%_.R*LO^5G#TM.@7>'+]7PY G]8\GE;V?SFM?$3"ZWW]BMUH+9] _.&N MQOC<9FFIG$ ;Y9##UV_"O$\1_`>Z_O_LXWMJA/,WULC:P/\XO\9A?N\1=LQZ^%K;PYKG1 M`[OSB_RN%VR*0E\X64OSJUF$,+\@?)E?;^OMX5='(&OG@&";G;K-3GOJ87ZW MNH/??>&(D%NCNVOV_Z8N1XKI_P::IAYO_L(CDK*0WT Q1?-M&3\ON[=,U?&$ MW+KRWCHR/,T;NP/,VTW^_K (PO;&>5WD%%=\7M>A<(A34L[?.-.?^4;V(W*H M6KQUEW[Z)#12GE?1;AWTN6G6^/34;(![HI+=#,!\^.&M=DSKSTYDPR63AW)] MEAJ)>S.O$V\^P!:MK'UF4L!( MO'"T]>^OM"K[C<[=?G\4[Q&X15GV^>S8%$D/"R+W_66NQ^\MI'BJ+LQF,[;= M[X5;^+V%ZG][3F;/?T>%J> &9_8[-?'Y!?H7I@#SS]*P1U#^M>K^!$T!_=4Z M_;F_]=1N(G=3*9E*R51*IE*RC)*%HEXHZH4B7"K"I2)<*N.#2 M0/ $+OWIC7-&65O$N# 2?.%Z&6[B\(P3C0271H)+(\&ED>"R2'!A)+@P$EP8 M"2Z-!)=&@DL#O*4!WK(`;V& ]\*9MF(@N# 0/(OD`@>(G&C$> *7CG'C&)D\ M*"(\@1:#+HQ!%\:@"V/0I3'HTAAT:0RZ- 8MBT'_'% (CD1=&*L6QJKG^ )_ MV#@I#6I+@]K2H+8LJ"T,:@N#V@HSF-$O3&BWAHH;PV4M\:_6^/?;?'O MU07<<$8)QK\;X]^M\>_6^'=K6+LUK-T6UFX,:S>&JQO#U:WAZM9P=6NXNC5< MW1:N;@Q7-X:K&\/0K6'HUNAR:W2Y-6C<%@MNC 4WQH(;8\&-L>#6/6 MH'%KT+@U:-Q2F;^E,C^.@U!)J$ZH22@:?=#H@T8?-/J@T0>-_D>_UWQ$T;CH MELF/%][S$35I7+,3ZJ]M""_4%M0Z"!6$2D(U0@U"$4.+-*>(H;\_`W2A:/1_ M[YQSH1:A2">*=&*33FS2B;^WZ[A0Q"-9WR3KFV1]?SZJD8\HN6B69#&3+&:2 MQ4RRF$D6$QH77ZA!J$FH12AHS/('!S>Y+Z2L$6B%?*&"4&ESL,;!%[+A%QM_ ML>,7.W]QX!<'?W'B%R=_<>$7%W\1];6QOM[[-7W F1-^(2D5F$US@1>23AXN M)+GV)])\^[=FRQ]P%'&]-UO^`*18ZFJ,'/K;2&37/.._M&7^@%2A!PH]5.BA M0@\5>K H@T49+,I@42:*$E.$)Q!EGBISO)QR`K>.43'C^ M@G K*SA[Y"H.&<=2G1.(JM&4\<:,-^:Q,3N-V>DH\ZXR[RK*KJ+L+,K.HNPL MRLZB'"C*H:(4GF*_OYC(8GJ* MZ2D6^D:A;Q7Z5J%O%3K'PIUCXA@>O0>'1P M/#HXRAP<90Z.,@='F0-CQZ&QX]"0<&A(^ +B]C@X>#R178>I1'*8.3C,'!AF M#@TSAX:90\/,LS=LZ&\K/1R0CLZKAT/7P:'KP-!U:.@Z-'0=&KH.#5T'AZ[_ M>1K%D%,EI.P,#1*&A]V^U_5[P[XW]'N2<;Y@X"E=N-D-!^[/A1/OYQLX<2;BT5Q 9BL\S!9 MYX&RS@-EG0?*.NF1^Q,8)L) $0:*,%"$H2(,%6&H" /5-=-$F"C"1!&F6>M, M%'6JJ%-%G2KJ5%$W$W5#43<4=4,1-A5A4Q$V%6&C!-8W4&6-5KA_(W# (;1B$ M-@Q"6^!>VS1:;1JM-HU6FT:K/QZF/+[^'01O3H:\.1GRYF3(FY,A;T[&%S0Z M"'A>^#S^2@%-`-7?K_3&O7'U`TA$`)T$X@L:"<07]!&(+V@C$-9A,+##8&"' MP< .@Z&-`T/[`8;V`PSM!QC6#S"P'V!@/\# ?H 7SFQDJ8]0ZB.4^@BU7=86 M9FQS)C8Z$QN=B8W.Q%9G8JLSL=69P'Z 8?T``_L!7CB*QS?Z"!M]A*U;_PGL M^,O(B?H(6WV$;1GMC1GMC1GMC9GJK9GJK9GJK9GJLR'@@3^-LK:4]L:4]L:4 M]FZ6J=B8^MZ:^MY-]5]SY%MSY%M3W]LRVALSVALSVALSVELSVELSVELSVELS MVMLRVALSVALSVALSVELSVELSVELSVELSVO]L7O48J?UHF/>,@F9R<6LF]XQ* M0G5"34)9C6',XKJQC5_D2L.%I8:+:PT7%ALNKC9<6&ZXN-YP8<'AXHK#A26' MBVL.%Q8=+JXZ7*2U2U(?/]L#/J-HS5'H'Q3[!P7_0=&_-!$,:B(8U$0PJ(E@ MW)H(/J,:H4CVFV2_2?:;9+])]EMD_[,%XJ?B(RZXXHHK+KGRFBLONO*J*XUZ M\\"ZJT,+KPZMO#JT].K@VJN#BZ\.KKXZN/SJ$-LH+3?CUG+S>0P\^FI(_2CHF_._EWQ29F%*'()N9!J"!4$JH1JD-< M\+.!X2-/G=8.'!KE/V]%/L0A*4=4^?.(Z@D$QT$IQT$IQT$IQT'Y!0Y?RDE/ M_CSI>01-`8D(MMR1NV!P#RUO+>B??C0.&5K<+E+]^X'T-^[G=OH$_.>R?E3F MH"[!WS@Q8"=RXQ>W?K$=]L5V\!<#OQC\Q<0O)G^QX1<;?['C%SM_<> 7!W_1 MENB)LS7:["KK'R3<%SV1"P>Y=)"+![EXD(6#+!UD\2"+![EQD%L'N7F06P?9 M#QMD/W"0_=!!]H,'&3C(T$$&#S)XD(F#3!UD\B"3!]EPD$T'V7B0C0?9S5UX M:[3Z`3@[`G]&WQ^ M^C[$W+J=&[1]P>DE/B=R(&B'"K*H:(<*LK!HAPLRL&B M'"S*B:*<*LJIHIPJRLFBG"S*R:*<+,J%HEPJRJ6B7"K*Q:)<+,K%HEPLRD)1 MEHJR5)2EHBP69;$HBT59+,J-HMPJRJVBW"K*S:+<+,K-HMPJRGM?T@\X$^5; M7](/0!/E>U_23\BITT%1CH-%&2C*4%&&BC)4E,&B#!9EL"B#12EINQB=4)*X M^UFR,1Y10:@D5"-4)]0@U"34(A2E$RG;^[,,X/$7%XUK%:&VH(ITHD@GBG3B MGYGHYVSIQB3MUB3M6V'I!Z 9FO?2TD_(J=-!0_->-/J(;"C*IJ)L*LJFHFPL MRL:B;"S*QJ+$7,#67,#67,#67,#F7,#F7,#F7,#F7,#&7,#67,#67,#67,#F M7,#F7,#F7,#F7,#&7,#67,#67,#67,#F7,#F7,#F7,#F7,#&7,#67,#67,#6 M7,#F7,#F7,#F7,#F7,#&7,#67,#67,#67,#F7,#F7,#F7,#F7,"V7,"]YN[I MZ.^]\.T9&?C%X"\F?C'YBPV_V/B+';_8^8L#OSCXBW;H>.+H[.1?RM0^(>GL MY*V@[0,.![EYD'KH^%8C]P%G@PP]=+R0.,C 088.,GB0P8-,'&3J(),'F3S( MAH-L.LC&@VP\R(Z#[#K(SH/L/,B!@QPZR,&#'#Q(2;Q(+6A2+6C^K*;\][K% MUNXYY@+0U&"I*V"K+CUXB%^\-X_PK;7Y-0PNC^VO2M MW0DU";4$14OO]/'L:TG"N)UNYOACV DE!@O%^HO@2U-PU> MUGO<+J4\PR(,9C\J1N:$X=B&P:;!;M7ZI[K_*S"-AV:ZUDQRS237_GH^?<%, MX>X5<8\P$P@NOF$"&:8CPW1DV!2F36':%*9Q.FVFTV8Z;35,$\@R@2P3R#*! M+!/(,H$L$\BR);-LR93)KDA\^48M0W3XFKDJ:JY(6EZ;Y(/\]T(UO[1N.CX=TB7!&G_2@&M_QI([(&B MTB9(,Y1%WK^2YI@T>EGA_:O1'&7A=LIR=\IR]Z]!16-JQJA2/:;?G&3WF\:UR;]VB3535+=I#ERU'_!TF#-8-U@PV#38&9>#[.O MAXDW3+PQ_JLPFVG8%,S,WOLK/<&Z*5(W1>K]OPHS\7;3-]L&Z.S)8@WC7[3Z.,(@]E:.\I@I&-4$KPL*;,L*;-^MJG_!+.Q M91K,!-+L:V;,R#%95LFRS#%9YI@L\SB69326.2;+/(YE!2_+/(YE-:;+/(Y% MEPJOCNVFO6:/P@P258LLJ\A85I&QK-1B62R]+*Q=%M8N*V=85J>PK$YA62R] M+$A>%B0O>6#G&V9R2UH+=$*^[*K.LH/T$P8SK2\"=0%-`2T!R4E)45WFV?A$ M4$G?$A4[+QD3:A [)(E&O]A(]G)V0[T)&O4F.%$T^D[C&O2+TU#$]J0%-&UQ MD%07C7[1N!9IX2+-6;32BN98-,'-:0/8PF&W!M@#3%F#: MRDI;6>3BEV4RRS*990=<99& =6^Y8#;3P)DN@Y6Y7_'WF[YEJ5WK4].L3\T% M,[EU^YKY1'0.9EUO+IBQT&TY#UO.YK%157!9S+.EEG=++>_^HI\;`IH"6@(J M$L$_G\#5-&]K];/M#'-;U=2V%@#;3D2WW>VWSI$7S*9@O@=596]K`;"MCGI; M-FI;_FC;6=RVL[A-UW=?3CS(XX4J^A:DGT]4(]02%'A0_1 /ZGP6^R!1B"]P MP<)@:;!FL&ZP83"36RR#E<&,A306TEA(8R&-A306TEA(8R&-A306TE@P&R/G M#A?,6&C&0C,6FK'0C(5F+#1CH1ML&%G36)@VA6EC*V-AV]@V42]G(B?,M%>R MHR_7&=)F+Y3$S!?,OB:F-\STAIG>,--K[4I/V+2Q+8*);W3!:*9R[/"*AD) M*2#ZN2Z@(: IH"6@$M F81Z$(G&&T4<"#9)HD$B#9!HDU""I)DDU39-)]DFR M3Y)]DNR39)\D^R39)\F^D>P;R;Z9&2'9-Y)](]DWDGTCV3>2?2/9=Y)])]EW MDKUM&9UD_^.<^G@T]33Z0:,?-/IA6Q!ISB#-&:0Y@S1GD.9,TIQ)LI\D^TFR MGR3[:?L_R7Z2["?)?I+L%\E^D>P7R7Z1[!?)?I'LESE?)-4?V;E'.U'TBV7^ MGHV+V-[$]B8>-_&XB<=-/&Z2ZB:I;G.CT8\V1_H(@YG#?9C'?9C+?9@W?9@[ M?9@_?9AX,4[Y9Z#2C^=PQL9FKF28+QD-@RCCU-S),'\RS*$,\RBCH7B->G,J MP[S*,+S:@V[,!%\Q8*&.AC 4+):(PSVDL6#01%D[0 M@5/:@5/2S9]NSRU<,,S\8NK7(NCW>T.WQAFZ/-W1[ MO*';XPW='F_H]GA#M\<;NCW>T.WQAFZ/-W1[O*';XPW='F_H]GA#M\<;NCW> M<,%,O'C*@<<<>,Z!!QUVTI$6GZ;%I]GPH,F4W +/M, S+?!,"SS3`L^TP#,M M\$P+//$,/"WP3 L\TP+/M, S+?!,"SS3`L^T4%%>VG@Q8"CQD!KE6QOE6QME M4AOE2)NE^YJE^YJE^YK5O#2KU6N6QVN6W6H67#<+ZYH%8LV\\6;>>#.OLIG/ MT,P9:+9]-S/.S:Q'L_4N[^%T>0_G!>H"FC0F0HGK1._A='H/YT211),$(>Y0 MI_**3N4"G0H!.A4"]"_3K6'?&H0BG1@DU4FCGS2N2>-:Q..R;VU!%?UB$4-% M4MTDKTW?HN,]>YRFVY,MW5Y/.6%F>,)L2IBY"+,7="#7[4"NVX%)7[.9+N/43!:EO^TADPMF+)2Q4+86 MM@ED&UE[FXMC/LYA+L;;3DM234M234M23:M)F^9W M3[MR/.WV[[0K:-.NH$V+":9Y\=/\[FD.]32'>IJG/,UIG59%-JWNRYX+ZO; MSPF;-C:S\53K,BW;:<\%=7LNZ(*9W)91;]L&N>?3W/-I]233TK_3RB=.F/WH M-A:V*=(VLO8T)^PP6!BL&0S'9GYDVA3,WTRSO70`/>T`>MK)LCU/=<'28#;3 M;E/H1M8P#9'H9TG^?\GEW47WEQND5KA/US\'WQQG2N"19LRBYO.@.$[T] MU>TAI1-FTJ<$HCVZT^W1G1,V[6LF$$K!+,N&++/*R\JIEI5"E'G$9>G(,B>K M;'NWWN/=NH5?L#18,]@_35H^P^KO5VKJYS;U`?9/-_RA.7:_-WGNCS!)QFRZ MP;4M>MF6P-\6(6Q;S=N\\$V+_B6R$% *J FH_Y7*%X@&O@14`MHDIX-0),X@ M>08)%)+))VH0:@H[04(-DFJ25-.4E*2:)-4DJ29)-4F=D_0Y2?9)LO_AUC^R MW6SMDU0;2;615!M)M9%46XDD.NEJ)UWM)-5N)I6DVDFJG:3:2:J==+63K@Z2 M_2#9#Y+](-D/DOT@V0^2_2#9#Y+](-E/DOTDV4^2_2393Y+])-E/VODF2762 M5!=)=9%4?^1;\Q$U!54TKJ)Q%;%=Q'81VT5L%ZVT,@^3=*)()S;)?I/L-\E^ MD^PW>>V;I+I)JML<=_3WK2AL+XJ),(L8S'"&6K(-:C7 MUHE:A"I!%T:U)%K4$>N M8:VVAK7:&M9J:UBKK0LV##8-M@Q6!C/QQF$P8R&,A3#QAHDW3"#-?K29W+HI M4C=.N_WH,+*&L3!H"G)U_O6E$-"@+QEJ$6H+2G+9=+?W1#5"=4*1Y#=)0FQR MLXC+;A,/NTU\P8@E,E7-3%4S4]5%8SN=,'7RX#OEXSOEXX>_T44R6O2'.?^[Z$D;F%4,UTENJ50X(*EP6QL M9@$B#F7%"ZQ3#8#@%,]7-IF"F@!*AD[K=7S#2 M#\J7+DE=+BFD7I)P69)P69)WDGM*+] 24 EHDS!-Y"3S(*$'23U([$$B#9)I MD%"#I)HDU21))$DB20.3Y)4DKX2*CT45AHLJ#.E^VZ#[;2>*YCA))R;IQ"*= M6+32%JVT1;)?)/M%LE]FXDCVBV2_2/9%LB^2?9'LBV1?)/LBV1?)OFSKH#EN M&OVF<6W2B8U[FFUJA^UJAVUKA^UKAVULQS"8;8"'[8"';8&'L:"NA;& S@5Z M%^A>A+& ;@CZ(>B(F"<2YHJ$>1G2^OF"V=B:R:W9CW:;:;>9#J-^&*>C_JLP M$^^TE35M99DG%Q,==Y.;.6!A'EB82IB+$N:CA#D#\HS0!3.! M;!.(;?5IFWC:MINVGZ9M1HD1DEG+-#-(!QW6O^&"65C9\4UX4QMR9B_*>](7S#CM&/H8"QT8Z$;"]U8L"!=,OY7^&,L#&,!TFVO`() M34!=0$- ): MH*#I29P>%($'1>!!47-0U!P4-0?%L$$Q;$C_TE,?@E#$4#<- M),49-$=;/8/&-6QI$$.3QC7I%R=ICL3\03%_4)P>%*>'' &<*)+$(DDLDL0B M+5S$=M$QN%;J6M+#,.E/P(.D<]8;9.T]9IF@]*H6U8)!<6HH5%2RDQ M3I)32.TL7RC9M),V;6OI-ZVEW[1^>"VG.;'!]\ 4J`B\X7>E[I?IB%IXDT3;Y*#GPU]0YM",_&:(T.G?9U. M43KY=)W\L$X^2I<^#B_4`N^V4RC<*4??I5_"B2I!%3%4-*ZB7]S$T*8Y;OI% MJKCK=+'_@MF/AGTM2+14AW;"\&LVA1^+Z7B$#?O1:2S,,)B)=S:#F7@GZ2YY M?S_;>[K'<>!K,II&T_:5.P!4C%J,.*48<5HPXK1AU6C#KL;')2E=:D M*JU)T1'UGGVAH&_*I ZU)XK&19O5M'L_TRIDK"WN"0L;6X3!;&RR]4UJ;'7" MTJ:0-@5Q$:D/ZJ1^HY-Z<9 ;3,UVVX%;*N[V98\W%0"LZAWU**^2HLZ$[U0$$6\ M4)-&#R>&BSH`O2";YB@V]X(M@H'[>L(6P9#RGWT$_MT2O8*;<65#_N=CUP/6G]ZEP*U4)R/7 M#Q+[?$9N)>=JZH1(5:&K:H,4>=.>K,46>..G/4F:/. M''7FJ#-'G3GJS)';I<$<#>9H,$>#.5HLI<52*I92\8R*9U2L=<5:5ZQUQ?(L MEN=F>6[6NLV2WRSYS9+?+/G-DM\L^:V2OVY[(3(8F8P49C9&>^\^]Y?2$GI"+V5P\HY_G M-FT^[RYL0Y)M2+(-25[OR>L]>;TGK_?D]9Z\WI/7>_)Z3U[OR>L]>;TGK_?D M]9Z\WC'.2X[SDN.\Y#@O.7I+CMZ2H[?DF"PY)GM):"+.W(#V_82 `?6G3=]> M0"/\A;(XM 66-YSB.1AY,X;]`[+XFS_I/IZ1DPF?BY$\SJEJ>;WJC$AE'0]A M3N3FN?],L9]!UY,6AXX3S?NUUOB;%H*W[Y:Q!AP*G AL"K2SIQ-8"MP(W"H> M"ZM/H#)C\?<)[ I4"KS\C&0[6NL&2'[S>!W,TF*/!'$WF:#)'DSF:S-%DCJ:[/2X> MYV)=6JQ+B^=>//?BN1?KTG8D:QT[:L&>6K"K%NRK!3MKP=Y:LK>6[*TE>VO) MWEJRMY;LK25[:\G>6K*WENRM)7MKR=X:YIF M.>O6-&?=FN:L+V3*S9%;8Z#G+PZ[H/3")>(:XCKB!N(FXA;B"G%;Y M68,Z+\7!:W'P8AR\&@2;^Q>R,E('2<>4#:^WMN& M%CFVH46.;6B18QM:Y-B&EBZVH:6+;6CI8AM\JP+'58ECHL2QV6I0[+4H=EJ<.RU&%9ZK L=5C. M/G,*Y+6BS*0RD\I,*C.IS*0RD\I,*C--F6G*3&,SILPT9:8I,TV9:<1PA.) 1G$H)3"<&YA.!D0G V(3B=$)Q/B.6'/(3G/D)QG2,XS).<9DO,,R7F&Y#Q#AA]N M,T><9TC.,R3G&9+S#,EYAN0\0W*>(;W^P L0?E&!P!QY#8(7(7@5@I!V" M%R)PGB$YSY"<9\CF92+,$><9DO,,R7F&Y#Q#RT/ M<\1YAN0\0W*>(3G/D)QG2,XS).<9DO,,R7F&'%YP91S5+?]Y_=N_(5^ZB66_,\]KO=GY.*Y M_\QNG;[&$W+SZKCE+CY]4Z6$\?N%;(Q4-I-WA S_IO*.<4?'M^E>N(&XB;B; MBWH\_W#J")L"N\[E)X7M&:@_/?FG6=Z%P-*?+OWI4JY+E='RIUW?XSO5^S@8 MF8QL9/R3';-DQRS9,9S)X\S)2#9K-^?D`T>=YS[46.)A MS87T;[)^%L^(C4*P50@V"\%V`0]K+B1;!C8V>%C3^:7.SB]U=GZI\T(R1YLY MVLS19H[8>B=;;W7V4@]K+F1C9&>D2A[3DB>R\Z_WP4C^=?2[WCJ#/5U0/Y%V MT'\BT2XUMDN-;0AWG>K<=:ISUZG.7:K<*>A$9F?D9"3+,UF>R3-J/",[+GG9N4!<(JXAKB-N(&XB;B&N M$,=R/A2HC(12$LI)*"FAK(32$LI+*#&AS*0RD[Q6E)E49E*9264FE9E49E*9 M266F*3--F6ELQI29ILPT9:8I,TV9:G*3%=F.N\PRDQ79KHRTY69 MKLQT968H,T.9&I>):*9ZEXEHIGL=_*XE'%7:JXI8I;RDPI,Z7,E#)3RDQQI* "+Q7X M9H^T.Y*=5]Z)L[O[ROXK;\;)NW'R=IR\'R=OR,D[,M:Z]9\]_:(_PNYB?SH3 M+G6@"_L4O(!:%%9Z7?Y$8A!=>H7T0@Y$:CZIM/CW0O(WNTI>\\?[9S?K7(\X M#-CV+6"+? 3B1KI_;J3K`7Z_!GW(VT1#VGUTR^660RL"7GA M$G$-<1UQ`W$3<0MQA;BM/@ZVS3^-<_8/.PWO3- M>#F29^227[QS+]ZZ%^_=Q=_<_,W-V\XOMF7>EWUC;K[7LT,R^-F U],!JZ('5T .KH0=60P^LAAY8#3VP&GI@-?3 :NB! MU= #JZ$'5D,/K(8>6 T]L!IZ8#7TP&KH.=30@XU M]!QJZ#G4T'.HH>=00\^AAIY##3V'.H'*S%1FEC*SE)FES"QE9BDS2YE9RLQ2 M9I8RLY294F;P)O:%'/+D]HD,)0>OLES(R)SLT@5[8,&>5;#'%.P)!;M"P;Y0L#,4[ T%NT/!_E"P0Q3L$06[1,$^4;!3 MA%TX+R1SQ Y4L <5[$(%^U#!3E2P%Q7L1@7[4<&.5+ G%>Q*!?M2PQ6!?M5P8Y5N&=5S%$Q1\4<%7-4S%$Q M1\4<%7-4S-%FCC9SM)FCS1QMYF@S1YLYVLS19HZV%9(XXWDR.-Y/CS>1X,SG>3(XWL0_FX-K+ MP165@RLJ!]=)#JY4O) VSH$5O"=P(Q#-[,#F)V9_&O;Y82>A:#/0M^"7[P2_"#WW>_D"KY9 U1RSW8=@XM MI3W_QAJ"O60'OQD_^,WX43\K%)\:,;QP6+]56K]56K^E-=XG,!78%*ABQ(QG MW8YIC_5,S)*V12^@YH]+WWNZD)V1@Y%3D9M_':U6L1=9[)V5=M4^D>;+3+V, M/+748+Z=SO='('9(NY#!R&1D4V2J,#$M.M^3G?E,$,YHX+G_">0O-@5V!0X% M3@4N!98"-P(MM7T"E9FIS$QE9BHS4YF9RLQ49J8R,Y69IK5[(8&0R4MG!,\L+.1C)4F+S%VS_\!3A1);^.N9W+J1*'B./"QF, MY!EE8V1GY&#D9"1+/M5TX;7$.?0>[&F&_WZ7[V6#C<=E=^5>N(ZXC3@+L,\! MZA<[3V4H<"$0N5OJ@RWUF);Z-TLWQX4%9R=0F2E5GM)9ES*S]:_ M!S_Y/?C)[\%/?@]^\GOPD]]=GOS"Z.071B>_&SKYW=#)KRU.?FUQ\FN+\^VU MQ5Z/R-L)YD>DRE-]#7[1;?([;9/?:9O\^MKD%\@FOT V^06RR2^037XU:O*K M4><:HM1"X4Y>=NO]A9N(6X@KQ*E<[%CH!(8"4X%-@4I**"NAM(3R$DI,*#.I MXOFY5MM\UEFE\&>,UY]7R\]M[-'LEKI-A77Z)U %OE3@I4NA5(ZE2Z&4Z]*E M4+H42IDI-E'*3"DS6YG9RLQ69K8RLY69K/\X> ,Y> LY> \Y>!,Y>!!NY[K^O-XU^5Q:VG@A>49VCKR.6V/'?,3AZV87 M_*AZ1R?8SV2KB M[GXBF\X(+QFLD(/8];,9Z4/B:C5+MKYPYLJ=P(U R]>?P%"@CA'9:]A1\@5L M^L7&7YP*7 HL!2J%72GL2F%7"G'#;=B]Z06G*3%=FNC+3E9FAS QE9B@S0YD9O/DK,T.9&PR*S-+F5G*3"DSI//@@//@B//@D/-@CGZ1#F"./"'@&0%/"7A.P),"GA7P MM #G!8(3`Y&>LV&..#<0G!P(S@X$IP=^%A==A23_BAR8:1R8:1R8:1R8:1R8 M:1R8:1R8:1R8:1R8:1R::1R::1R::1R::1R::1R::1R::1R::1R::1R::1R: M:1R::1R::1R::1R::1R::1R::1R::1R::1R::1R::1R::1R::1R::1R::1R: M:1R::1R::1R::1R::1R::1R::1R::1R::1R::1R::1R::1R::1R::1R::1R: M:=0.,$L[P"SM`+.T`\S2#C!+.\ L[0"SM /,T@XP2SO +.T`L[0#S-(.,$L[ MP"SM`+.T`\S2#C!+.\ L[0"SM /,"51FEC*SE)FES"QE9K'+K,PL968I,Z7, MW#*-[1G8Y<+K"=3)E$YFZV2VJME6-=NJ9EO5;*N:;56SK6JV.3;SX(RCLX/# MLUMRKG] VR/#W>]8#7(UX/>3WF]:#7HUX.>X/C MWDA/23!''/H&Q[[!P6]P]!L<_@;'O\$!<' $'!P"1_.\$7/$47!PT!H!0-CB6#0YF@Z/9X' V.)Z-Z2EMYHA#VN"8-CBH#8YJ@\/:X+@V M.+ -CFR#0]M8?N[ ''%T&QS>!L>W^%#7XJ:A%Y(Y*N:HF*-BCCC"#HZ<[T\[ MM0](/J0Y.D9\^/C$&OJXTH7D\Q>.XS+\;(S/O#@ZNW4+Z,>')_O)V?P4 MCV?$?G+R<5'R>5&R[YWL>R?[WGGSO3^PR9YJLJ>:[*DF>ZK)GFJRIYKLJ29[ MJMHI8?XLHCB9?0S\C!4OII.Y]:0Y[(-=G4!2.3D6YH.R,'(WWNBY&ZXNX[X9.' MOK!4;VEEW=)BM*4%(=H3_@3J9-!+T2[S)U#%@\ML:4'(TH(0;7!_`I69HXU#@5.!28"EP M([ KUZP]79GI*I[ABFO33BTS.9'F`)U(7 ZIP?B%]%\O1K*4+'"^D#QW7+FI MINU"^C>;(@?_^O!O,IN#V9PJ>6PX>R+S8"3_>BI'R5J'8>:%M+DWNSOUPFW$ M68:_M-W<"Y@ZQ)M%:(_ GPOMJ+#.\4(F M(W4^6.]V(5DIDV>4/*-D36T&3V0+1K*4&DO)LEZ%[01+>^:5ML(K[:-6VO6LM)E9 M:3.STH9"I8UP2AOAE#;"*>UO4]K?IK2_36E_F]+^-J7];4K[VY3VMRGM;U/: MWZ:T;4UIVYK2;C2EW6A*N]&4=J,I[493VHVFM!M-:3>:TFXTI=UH2KO1%'>C M*>Y&4]R-IK@;37$WFN)N-,7=:(J[T11WHRGN1G,B>6_2/$CG/$CG/$CG/$CG M/$C7JP<7DC6DN9O!&M*8H\8<->:H,T>=.>K,46>..G/4F:/.'+$;BM<9+B1S M-)BCP1P-YFBXQ\P<#>9H,$>3D>R2QO)OLH:PLQGL;0:[F\'^9K##&>QQ!KN< M6 1^(9DC=D^CF"/V9(-=V6!?-MB9#?9F@]W98'\VV*$-]FB#7=I@GS;9ITWV M:9-]VF2?-MFG3?94DSU5+-2_D"SY9,DG2SYY[NPG)_O)R7YRLI]\3['U9R1[ M:\G>6K(/ENR#)?M@G@K$LO;7OA&*8V JL"NP$&CUYR=P(1"W-JY]+ZY]+ZY] M+ZYH+ZX^OY"L0HV9;#RCIJ3C/=8+R1Q-YFCRC.9F-39Y+GD%[>7&V MCF2E9!W2_&)QUK#82!='?L516G%,4^RM%Q^,EEZ:+'YBN?B)Y>(GEB\D6QDT M_)L,/Z%><3;F/R]D*-)R01=R*](,W(6;H%U:>.1K*D7I@C2(.??%WZ[.[6Y]BW?I&YM8W,K>^:+G?"E#;,U#' M.'6,=H:_WU[D>KH^NOFUI\WO+>VW2H=/OVY)WPNY%;EX1JLS\L=J;/&LZA@+ M=FU1=B%U[AHU\LGGYO/,S>>9F\\S-Y]GGLC6&,F&"[V9KOFN"\EL=I8\&TYL MHK+YC'3SR>>9981]I01UENS2E$]@*M"R"=>FA!_\-=;D.E^L/U_>Z)O[OT% #&5]=@:7 X-^.JU%;D/1KK6A:NR:Q/;O- ,T/<*^1G,?5KQDZ6*'=&_ MH=.A6\KZ+JAK/Q8'?T.=@LTZD&KU4XUN?DT%+@66`C=/AF<3/,H?*^]B]G$^ MC6?.]!3/774N\3+D-?<^'>H2[>50YWX<#G4]&>G0YE!?G\/9&L[6<+:&LS6< MK>EL36=K.EO3V9K.UG2VIK,UG:WI;$UG:SE;ZQ^?H"BLILFVIFY-^PK_[8.1C9$\SI]\]OZ, M[#S.GD91^U+/HMTBQ/SP32Q/^(:F0YUZS0PUSPPU=ZVT==?Q;?L+R1P-'N?@7Q_,T6".!L](O8C.6?O. MN?C.V;/N"=[NV9;^.^/0'8GF*!@AH(I"N8HF:/T]<,<)7.4S%$R1\D<)7.4S%$R1XTY:LQ1PS/T^359 M\M.M%TM^LN0G2WZRY!=+?K'D%Z^.Q:MC,4>+.5J^Q3!'BSE:S%$Q1\4<%7-4 MS%$Q1\4<%7-4[@9H,T>;.=K,T6:.-G.TF:/-'&UWUG[AK;F[=KB_ M=KC#=KC'=KC+=KC/=KC3=KC7=KC;=CA;OW&NG:U?N->_\*]_X6#_PL/^A8O] M"Q_[%TZV>]GA;G;D+V(A9\L][7!7.]S7#G>VP[WMV\7%Y_JAZ?6=T[/XT[/X MT[/XT]-__+;L-]35I?\B>'8)=)? < D,E\!P"0R7P/A%_L 7S'!]':ZOP]D: MSM9TMJ:S-9VMZ6QY/!OS%^D>9\M#VO"8-CRH#8]JP\/:\+@V/+ -CVS#0]M8 MO\C..5L>W8:'M^'Q;7B &Q[AAH>XX3%N>) ;'N5&_2*9ZFQYH!L>Z8:'NN&Q M;GBP&Q[MAH>[L7^1I?Y%FMKSU!ZGZ<%I>G":'IRF!Z?IP6EZ<)H>G&;\ MXE3!V?+@-#TX30].TX/3]. T/3A-#T[S%T= OS@#^LTAD+/UBV.@7YP#_>(@ MZ!B2?_1='K,Y6=[:ZL]6=+<\ZI&<=TK,.Z5F']*Q#>M8AQR].Q)&MI34R M2VMDEI:^K"\>X^;)'(P,:7QSC9(E-%A$2OH+Z=)D<6J>:7%%YN**S!>2V9S, MYF2.)G,TF:/)'$WF:#)'DSF:S-%DCA9SM)BCQ1PMYF@Q1XLY6LS18HX6<[28 MHV*.BCDJYJB8HV*.BCDJYJB8HV*.BCG:S-%FCC9SM)FCS1QMW]Z9H\T<;>9H M_\*[NY =H=\'TGW%#>^FY;MIO97I]0_08$9YWZNW>K;X`$V70+H$B"HE/],B7Z MT=2+CB>2?QV#E!.Y%3EYG(OGOOR;/'=,G9_(SDB6)Z;.3^1B9#&2V=S\S/$YF,;(SD&:4C!R,G(QOIY]^Y#$_J$IS36VN@*TTW3R1SU)FCSAQUYJ@S1YTYZLQ19XX& M9H,$>#.1K,T6".!G,TF*/)'$WFJ/B;Q7/'#,N9* 03K[#0D.&% MQ%/:$SD8.1FY&%F,W(IL//?%WRQ&;OYU+(H\D-FCYLU%)S+XV?0#J1@Y$\SL:_C@[P MB>1Q=OYU=#!.)/_Z9(XV__K^A8:P>FJ(WCSI>$&[0X=#ET/+H2Z!<3C4A>7& M1(/IE]%3*\%OE)S(H4BL7VN-W9C&]J1ID'XBIR([_[IJ:?MR-@=S-)BCP9*? M_.N3Y3F7:_(OE+X:H,4>-.6K,46..&G/4F*/.W^S,YF#)#Y;\8,E/1_+<)\]]^1[#4?$Z MVKR.-K.Y>4:;9[1Y'6U>1YMYW\SF=I?A%SZ#.PV'>PV'NPV'^PV'.PZ'>PZ' MNPZ'^PZ'.P^^,T7[A9/U"Z@+RVVY/L1V05U8W84U7+5].PG?3\(W%"VIN:#. MUG"VAK,UG*WA;$UG:SI;T]GR35W;*U_07X0PSM9TMMROT.;"5VCT"Z@[\\8MCR/+X\CR.+(\CBP_S2D_S2D_S2F^[M"\$4GS1B2M MW)@47Z*XH,Y6.%OA;*6SE##2N6&9!PL]6.JZ\6X^J-]\4+\Y;M]\J+[Y4'US+F#SH?KF M0_7-A^J;,Q&;#]4WYRPVYRPVYRSX(EKCBVB-+Z(UOHC6^"):XXMH[>TB6GXP MG2RE[N:8I=192IVE]/-DJ<>'W8!G-'V'X1E-GM%DWB>OS9H,T>;.=K,T7;7^Q>^MSO?AWO?A[O?A_O?ASO@AWO@A[O@A_O@1SG4 MV?I-J.1L_2)8^D6T](MPZ1?QTB\"IE]$3.%L>73%B)S%MUVW7V'=?DJW_91N^RG="75B/3@)CTZXFFU[-=OV M:K;MU6S;J]FV5[-M/RC=GEC?]\3Z8]?!$^H>8[C+&.XSACN-X5YCN-L8[C>& M.X[WU[0_64)W"&/_(M/G%+A/F.X3ION$Z3YAND^8[A.F.WKICEZZHY?'+Q*S M3H$[>NF.7KJCE^[HI3MZZ8Y>NJ.7[NCE+]+H[NCE;U+NSM8ODNZ_R+K_(NW^ MB[S[+Q+OO\B\NT^8[A.F)]^S_>*$Q-GR_'MZ`CX]`Y^>@D]WH+G%Q.8ND!?4 MV7)?._LO#K2<+?>UTWUM;H>Q_4A\>SN,[1?(]V\.VM/=\G2W7*NP7PKXOT9Z M?#TZVGURRN&"ED,W0W$CN*#=H<.ADZ%H,2^H3ZOYM)I/J_UB6JX#S76@N0Z@ MQ>Q>0WQ"AW]U.+'#Y3I7Z=.:OYB6J\MT=5E.[')BEU.PG(+E M%"RG8#D%RRE83D$Y!>4KMIRM<@K**2B7:[FP-FN6)C(N*$L@?>=.W[DU++J@ M/H#T`?AVG+X=IV_'Z1MG^L:9OG%J4'!"1SCT%U]%N2ZMLGLAE8"E=5DOI IJ M:3W)B5R,+$9N1>IIY0E5IVGQV<<)5?]J\8'&!4V'-H<.UM,X')H.]842OQCK M=.AR:#F4]97W@,6)H1/:70+=)>#ZRA:07S?O_+IY+ZUA/9&3D8N1Q9H,4>+ M.5K,43%'Q1P5"$:'%EUP5-AS:'=H<.ATZ'+H>60YVM<+;"V0IG*YRM<+;"V0IG*YRM=+FF MRS5=6.G"2A=6NK#R%\)RU4Y7;:S!ZMH3X04<"IP*7 H,_FW-\&UMC=_Y)GOG M^^F=[Z=WOI_>^7YZY_OIG6^==[YUWOE9T[I9UO37:_"]G]@F/W.WO=[^QUO]S6_7);]\MMW2^W=;_< MUOW&V@7E!:WWBKK7Z''-R]BK9[%>TXU*B9H,4>+.5K,T6*.%G-4S%$Q1\4<%7-4 MS%$Q1\4<%R*7(I-_/?F;6(-Y(GE&W7^]&,D4J8ZF M5D&>2)[[Y&].EKPFGI(3.LD)G>3 /CFT3JU+>B&W(WGN'*\F9](O:#J4I:]= MVBZHVYSNT^J_^*J;1U][>K7WA$X?JV9>DTN^+JAKUO*QUB^@/BU?KN'KE<.: M]%@EN=;DA+IJIZMV^DZE5T\N* Z@X=,/+V!3X%3@5F#P((-'J1%2TXJ(%[+X MF\7?W#RCGPNDSP\S.AP:3&?$+P@]'+H8.IQ]O !R05U3I@MK^K2F#T"/OAKW M/[B@+JSE$E@N@?4+";@2EBMAN5S+C97;BW"#P:G"YOF_YGMJXZ+,"^I?=9.A M-9$7-!WJTTK??G,X=#KT%W)E)>342[^]&O2\P0Q\H^K\HP*;`KL"AP*1(&\M M-;Q;TO!N2<-?7!W^XNH%[0X=ELF<7!TUO G4!75A#1?6<&$-%Y:Z*]ZP:GC# MJ@M:#G6VILMUN@2F3VOS6/E,9_J9SN0;%!>T.=3'FCZ ' [U`32GH+M'!C^+-_A9O,%7@@8_^#;XP;?!3ZZ-]VM&^0DZ_*MN< ZW(X=/*]PV M_L(X_L(Z_L(\NBW3@]QYX'71>:@;>2('(R2A806_T2R/)-GU/C7 M&_]Z9XX&\S[YFY/'N9C-S;^^7>L.)BE^L3Z")Q6N>7J%X8(60WLZU,5?W2XL-UE: M:'[M:MVAO_CJ=*COUK4[NN?+:E!F8"FP*[ HHRQ57 MR 5=#G6VFK/5G:U?+)/N;'5GJSM;W=GJSE9WMKJSU9VMX6P-9VLX6\/9&L[6 M<+:&LS6%L#6=K.EO3V9K.UG2VIK,UG:WI;$UG:SI;T]E:SM9RMI:SM9RM MY6PM9VLY6\O96L[6G?O!?0Q_BSP7Q^0NOR; M9Q":9Q":9Q":9Q":9Q":9Q":9Q"Z9FA/I']S,G(QLA3)FM)=4[IK2G=-Z:XI MW36ENZ;TWV@*YYJZYYJZYYJZYYJZYYJZYYJZYYJZYYKZ+==T_=N_0X?F[4]D M8V1GY&#D9.1B9#%R*U*U9'#>?FC'FA/)''7FJ#-'G3G25*2=4A67V!>7V)_( M8N16)-8,G\A@9#*R,;(STM3C%9EC;=*)#$6BPA<_DUG\3&;Q,YG%SV06/Y-9 M_$QF\3.9Q<]D%C^36?Q,9O$SF<7/9!8_DUG\3&;Q,YG%SV06/Y-9_*1E\9.6 MQ4]:%C\`6?RL8_&SCL7/.A8_ZUC\K&/QLX[%SSH6/^M8_*QC\;..Q<\Z%C_K M6&_/.K8/2)9GL3PWRW.S/#?+4O MQEH.95W56/V".@7NP(3O]^';8_C^>#^YS4_07WS5*5CNE?K6IP>G%[0YM#O4 M=:!^`74E+%<7-^YZO'5!?5J_L-J;IW4_!XH/T,Z:=3_:.#Y!<<%L3.R_@/S% MS3]],))'B9?XB^_;%M^W+;YO6US@6ESD^4(.1_+1+\XV'?KSJ_W3\G3#Y.HI1#>5KI&T_ZSI._V";2Q]I\K,W'VGZQ^?FT<,6^ MXG2^U_3FL[:]175 ?Z_:Q;AYK M'N'0=&AWZ'!H.907C.Z %]2%%2ZL<+;"Y1HNU^8#:#Z ]HL!L''72LD+ZA3T MY5!70CR:W'9)=O?_*DQ;^VYM[?L"E@)US0WM;G@B&R.[(ILCMR([S[WSW#O/ MO?.,,'^^N>)E<\7+B61=ZBSYP9(?O#8&9H,$>#.5H\]_T+R^ + M_A@.Y>G'+VS3+XS3[>RP?;)C/^CO\0'JVJ?YBQ-:;DFK.]0IV$[L9FW5ES1/ M:&L.G0[%LD4I%.03D$Z!Y.8Y;W+WG@KIFN8,>[J&'N]/A_G2X M0QWN48>[U#%_(0&WA.Y5A[O5X7YUN&,=[EF'N];AOG6X"L]WDJ/M^Z5>>T3U)>A1T9<;+ \8;\\8;^X+]0% M=;EZO)4>;Z7'6^GQEO:%NJ!.07<*/.!+#_CNW:8^F3>/XNZ-J1Z_6C]K*OI3 M7_1]?S#N.?-W[U+^A,SC7I_YC&S8;^1"%B.W(LUOOI AAZLG\M9L[P,23Y>_ MH.P;ZA(H MIV#[`#9/"WWQ;V@YE%4;:RZ_H4PL^F$7U'+)WU!F"W?+"SI0`M/J!$]@EB)U M!4QL-G$AMR)UMYC8;.)"3D5N%OSN3-&1#F6)XE':!;V9ZN,#=/A8?Z&DPX4U MAD.G0UU8KE;I%&#$>D$S'=H9S]8"2/LR4:;9Q31'+H9FH=#65(K"ZFYV M;@>]\0E*9< 7=+H$?/G%K5 ^POBP'%,<-.)^ )5>NSF."H'3:"?RAI$^MBT^D M9>E/I!5%7E>R,;(SLC! MR,G(Q4CF:#-'<1P.#8>F0YM#NT.'0Z=#ET/+H/#)W^8U>O?_A7ZLI-6]W&:27187D@T:2^D=04[D9CY/9%+D8N15@-] M(5E*Q7/?U 3WX@B=Y0O::7F;H<_0CDVI3R36<[V0FY%X;^H:J(]48\ +.APZ';H<6@[=#&TN MU^X24%V]]59YUK_"4X+.KEJG%F[GI-%*=>V.=B&[(I.1&,YW[;AV(0X+.7GN/S?H1W_NA=P\SLWRO&6?/_V\GOE?VE0,Q6CS@C+YZG>=T.4# M*%]/Y6/=/H#-2JTEM"?T9_3Q20+G.?)S MU-_UML,(F*18MXT2)>I+J+5'?1(EY#PK(+AU);MC.1 M.JT2!2YBH(B!(@:*&"ABH,B,%DFU;,,GJ6Z2ZOXIU8=@_<))5'\!I87#!?P9 M,GT`F@EY`BD3]NJ"3YX0+\;N;*LZJF^2' MP:;!EL'*8*:Q5CN25CR2EBA.2Q2GU8^D%9!D& MA+$29SW4"5>U/**K]"=UT M#G)"[TW'\A.T2WW9-W0X=,KYRC>T>%JWJV^?II4'#R#3H69.`I-PVOVJ_4OW MJT](M-#!2;@+NGFD*J?$LL43B')*+5T\D1AP99HUM-.7M-.7M-.7M-.7O)V^ M?!#+9 %.5I\3:EYAWLY_/@)Q1>32%9&+C?<)1>.=BQ?/"\J+Q_R"5%N4&T_: M3V0_&%F*_-G7]!-2%73S"K=SPKR=$S[_=-/3W>_."CA(LR^WX\7_>L0 M$!W2GC"R85UNEW2Y7=*_0%'[%_E;)TR0EGJ7 MZS+]JTQ^A?(KE%^I_$KE5RJ_4OEM$XWY22<.5U#8N@U")2[OM"#C&VF"CE1) M!]D#R5MUNO?4OZ0*\H4J^M9&&6^6\689;Y5Q'C+C3$)UFW%V7>;9=9UG5]ED M9]F0SDAE9?]*,KM)FF5!Y85KB4 S5LG6ZA;2?<*A+ER-$@]%FBZ\D*@+C>SJ MCQ@Q'U&D,8TTIN%.W72K;KI7-]ZL&^_6K]KI[FF_WSU]G$-/ MRN1<0$GD? /A=L,%-))[(LD]E>2>2G)G5Z&SJ] M="!7H9/9[[2(.RWB3F:_ MD\H/4OD19C9&X,XP.!*\W5Q^_F+J3R?_-&F)I1LNG&VOH^.R'!V7Y5M2XEDX M[!<-]HLLS3!H@0Q:((,6R* %,LGCG92PF,V\G-E412>9J%N=\7-28*"*OH"V MV.;@F1#_<^%,EL[D?C#UM*N^@"L16(=LOW-IFFBQ$$GQ)P8$4P."N34QMG7* M;\6P_7DRMZ[0GY!3)ZYI-(Z<%VVTBWS+1=9FT?:UR((LLN&+UO B&[Y(E1>J M\E)57JK*2U5Y;?6)%ROH8@5=K*!%"EJDH$4*6J2@A?Y5J7]5'3>OZFIWBY9' MT?(HR[@72J54*IRL[0%_F!^S"![P,%O@]-^1^JACMPC*%C MU'AN]U;O M>[]YW\ MZ/:<2#,8)Q(MQ@6=/"<]SCT&GYD?4T4Z6:2313I9I--%.EVDTT4Z7:3+E+E4 M\L62+U["Y4O8C';@">X)5"KCL JY/U"ID/L#M3.OY](Y'T M2/2A3F3Q.'%A1CJ;?.07;^5!'RBR'0;+?K#N)[!@\ 3BB@SVPB/0#3^!YA2> MR X/W'PCT;K'8B5:KD3+E>CM)L>GZ=^OMGV"XD80:N&#+7RPA0^W\%QZ]HO: MLU\4GWGU&74`[&\=`!]A:3"S,&D6YE8E]JQH.72O2/9V4\_MKE_')9GNPZ;[ ML.D^;*H/F^S#)ONPR3[LVQ6\YR#TA+;)4#O_NJ"3):4;L)4JAM4J1IJWVM8KLUBJRWUI%?JQ7UA.+$XGKMO&9Q?7NKTQG&LS4H)D:6+W>O:/DLP"[ M9N5/)*[\%Q)7?O>0IW/9Z@7=/"DUICU4I,$BU5.$$ZG:VVW-=CQ(B-Z>H.4?F:G1-EW5V(#H[$'TXE69AK#CRWGOUPUS8Z^[L=7?WNOO6<6X>YV;; MM=EV;5\7V]>%AP?=PX.AV\'@[6"8!S$T'S\XKS.T.OM$(IG#LS7#LS7#LS6C MJ9P:RZGIXAR-P]?A=GNXW=92X>!:X>!BX>!JX1C=M:2[EG07:7>1FA-KU<5A MY<7W'LW/$=$';T:CF/%BQLL9+V>\G/%RQBTTF!8A3K/O4^W[9/L^V;Y/ MMN_33V:G!;-33=9DDS4YF)T>S&J)>W"->TP^&IY\-#P]K38]K38]K38]K685 M^=1VO+^U'?_PLVP))[OET]WR:>9EJ:NYV-5<7$^RO)[$"LK#*LK#2LK#:LK# MBLIC:7IW<7IW<7IW<7IW>8G"\D3L\A*%Y24*2T\0UV*1\KG@XG/!Y>>":UF? MI?] BZ%85;"6$^5'B'8+XM[V_X,Y\/XA=A\@[$) E+80J=2;/Q>TT^6M"SJ2 MH;@XR[N8U-O=Y$\#R,9CS6ZA2&GD71QY5],E7TV7?'D:MCP-6Q[.EX?S9=M< MJ6M:[)H6NZ;%KFEYPM8NLH3=9+F_Y/$(,\=LF]G:9K;LMD+H=87W!P\^0$V[ M['9!Z/6"X/L%P1<,PF\8T,L`_>UE@ ^#Y&B"Z]W#"][#*M[I:8)N3Q-T>YJ@ MOSU-\ C##, )Q/Y!AR8M3Z29KQ.I7:(.;Q-U>)^HPQM%'=8IZK!64<>R8L03 MB'V;#KYQGEK&G%S&G%S&G%[&?']RX2-0OVD]]M*JB.E]AO[V/L.S&$,=N1.) MZS'4D3N1NAZ#';D+NGE2NAZM.#BM.)C>LNCVED5_>\OB$68;C150IA50WGOH M/PLX-2M^(G'M)^>ZTRHXTRHX$_O\8:,_[/27:F:3S6RRF4TWLU:_EU:_EU:_ MEU:_EU:_E\W4P,KGTLKGTLKGTLKG[EW6GYEMW,JQ^;9H;?32^NBE-M++SD:& M&]^E-[1+[VB7WM(NO:==6E.[M.*QM+9V:;5;V9>2N)C$Q21JPOE$,MW+Z5Y. M]W*ZS118&\"T/H!IY5 YS"!;@[T.%L@%G#@36APGD);&N+T+\+"EG3#9^DX<4M=%_X;Q.Y#? M@?P.Y':&<%\IYJ9R7RGFIG)?*N4R$A2(L%&&A M"$M%6"K"4A&6BG"+JMZOSC\9HCA0@G&@"/4N_C?2A!B'2C$.%:-DT,;]F8KG MK^GF&;I[AFZ?P?MG\ 8:O(,&;Z&69+QP*$K=;8.WV^@XQJYC[$IW5[H[T]V9 M[LYT=Z:;7.>8*/"I`I\J\*D"GRSPR0*?+/#)`E\D<-R!0[=@;!]P`745;@R M-D= !X9 A\9 NF^F[IO)^V;ROIF\;R;OFTG[9FK,R4$G1YT<=GKNU)TK>>=*WKF2=Z[DG2MIYTKNY)TK>>=*VKD2=Z[4G2LU>DP-'Y/CQ^0`,CF"3 XA[?FNH<]W#7V^:_#S M7>-+CO,&/8HUOEJ:0]&21]?PBW@_]!LI-UY?2#3U34U]4U/?U-0W-O6-37UC M4]_8U-\.7)]%/C2Q.YCOP7Q/'.3404Y6<[+,#2US4\O5)1-1=E8E(U%R5MGI_.T3@% QP"@:P#0-0#H&@!T#@`Z!P"= M`X#.`<"ME./93BRUCWVQ2A21C1:\LW\[,"4U-"4U#MS^!V>:!F>:!F>:!F>: M!NT*4A\N#GUW<>B[BT/?71Q?@SWKP9[U8,]ZL&=ME3.#SMT'>:$# MO="A7NA0+W2H%SK8"QWLA0[.#PS.#PPZ8YYHP:9:L*DNZ%07=+*IFVSJYJ%; MRR0#-C%5/C55/M7_G>K_3O9_)_N_D_W?R?[O)"L_T#R=O!Y.U@TG8PT:6>ZE)/=:FGNM237>K)+O5DEWJR2SUIS[QU MT'ET5M^;W3S:/$Z*S&WA_-3<\F3?>^'.M73G6KIS+=VY%N]NQ4[Z8B=] MT1ZW<(];NL.6[G&+][C%>]SB/6[Q'K=HCUNXQRW=XY9&,DNWKL5;U^*M M:_'6M7CK6K1U+:L@)JN\,))9&LDLC6261C*+(YG%D#XOV@>#\HV@\*]X/2_:!T/RC=#XKW@^+]H'@_*-X/"G/^ MI3G_TK+:XK+:PMVH=#?"][8'O[<][N]M?\*I7O!]EN*SX*)MIFB;* 7O,)A=1#O2 M8,U@W6!VB>>8!K,;*D<9S%@(]$Q.(-YX\4N3?FOR%]Q?W,_^Q05M-R]VU8R>)1YOSQ(_PDQC[9)0Z"VAX&M"P?>$@B\*A=\4 M"K\J%'Y7*/RR4.AMH>#K0L'WA<(O#-T?\/W0-X ]O:8UE2=2"6WNOS7WWYK[ M;W9IZOZ$\8?OL8%MR?),Y]VLEEZ;"KXWI6\HCW]Y0_GC1UD]W-7Q.U'W1YP_ M")ZS3>&WG>AQZ/'V./2'42X7_7+1+Y^0;DE\/RKX@E3P#:GP*U+A=Z2B^9;4 M?$MJYG!V[,P7?E4I[*X2O24]WMZ2_M!WA;OB=&Z+TW_1%X<;XWAG'&^-X[UQ M?M$7^CN_SRAH>54[U(?RN2?AED_#; M)O=WAS]\,[B96JB:S'"):ES)-UZ"K[P$WWD)O_02?NLE_-I+^+V7^\O+'V3O M+M\TBV@W.T*O=@3?[8@Y63E_T<+O%SW\?M'$SYV3J7'MY"*!"_ISI/UXAE[O M+R$T.T/[85#=["9O=I,WN^D]"J>%H'K5)/BN2?!ED^#;)N'73<+OFX1?. F_ M<7)_?_HC4$7*^]SR?6Z9@[HT!; X!; X!;!\/UBV']AUB?L+W!]^UFWW)0IJ:O36P(;EE& MNP<2>A$D^"9(\%60X+L@X9=!PF^#A%\'";\/0N^*#WM7?+R]*_X(,V]OVY+9 ME@_=IK';--;*M.\/97]HD>[-X;T[O+>'_T5_^%\TB/]%AWAO$6\E[?='Q3]\ MC[O$']PF_N ^\8U']$=8M89"AE689?%$QWRKE/T#-:.AS/LGO^20_Z)/\HD_ZDS[I M;_JD/^J3_JK/_4WWYR=N@@L+4A\!2GX%*(,?4PA^3<%?#+J_5?_AF_RD06R> MT>89;5>\[8K')1AI5S!2'_GA5W[\F1]_Y\.KG%V_]^&,_^-I/ MZL:1O'$DM\K(',K[8-X'CW/X.'4[\D=Z_)4>?Z;G%^_T_.*AGE^\U/.+IWKP MK9XT'S;-A]6;'V_+64].=2TM]+R8YO*_+CBOZZ MHC^OZ.\KOIVU]0\SNNYT('3R])DD?XZQXR-=)U!UE&^N75#2K M&LE7-=*O:J1?U4B_JI%^52.[[9Q==\[..V?GG;/SSME]Y^R^0';_*#-_GAF_SP37[X MF9A=ZTE]T2?Y29\<'&_X6SWIC_6DO]:3_EQ/#DWI#$[IC,'K>/ ZQN3/:S-Z M_>OGM[*PU1_B*0]XGZR._(15RB4 MC5(Y$(<:L#KB?I)[/-*!OUL_52\><;=2K MJV.C`4.!J<"FP*[ GZST9^#2+Y8"5>!QX!A#Y1@JQU Y_K2:G\:HXDF==?(7 M5>#M,)-]=OIFG_(+Y]P^[#?W8&XM/%MY&TC;S_=D&?UPZVV??<_-N!28"EP M(]"VVO:VU>8S4.5XNR3\#&QI*_GJC$*S[BJ><2@P%)@*; I4?1Q#@1.YGBJ> MJ>*9*IZIXK%MJGU?G2)]W&G[&259YMOGPYB?\3=O+GC$3?M>[> M.1YQ9._Z]=P9X0IQVW!U("X0EXAKB.N(&XA#/GXF$IX211UWW(X[;L? OV/@ MWS'P[QCX]WO@?SPND-LV\;R2[@:S/P-1M^YVL#T#IWYQ*; 4N'&,2V?]T]GM MCR;NNI](7]Q(8?Y4BOY(84:B6;_Y-_L9N'&,'6>=`_4Q;V[+`X50'C6_IH"6 M@$I 6T!Q$"H(=8OO'S/J&I*'QN1A!W5_?OJ@3S:::=2^L?\SUW'-"XQ&'2:&[!GX`FJ#?B^\_#=(2F*+\>*+\>*K_.9R4GTO(M MM^KFQW7?&^(ZRK'CWHBUO1>0"G:_D2C'KJO^O03W$7GWYYYPDW'(];VKR;,) MN[?Q> ;2LBD\1ZM[K/"P09<:E7_ (N.6&\< MQO2%PE/[RH4 =HZ2= MOH5S,#(@"_,'J1.G>H!O9%<913DR&)F(S-2Y7U?6:.[)<\].,WI)O?[N?EPX M6V7G+5]1CC/&ZC3"%W H<"&P,[!P,B/PBU.!NRE0Y;A5CF8S3J#*D6K OI%5 MB$RF.\?!2*-GW>+,^'?<#\_YP2>NTR>^^51/GRO;9?M;F6M_!-HO=_WE_45$ MOW!-<2D&Z@6LA5^\G^[W9V1V_69"H+J1^,^-@I,W=4L,O(.1,7JA.J$&W%E[ JT11W[IU !UJI]T?M%LQ8FTP.Y";D6:+;_>4)F,I+WQ;*X?"FP*[ H< M"IP*Y%EO!-K^=0)5CCT5J +O*O"N`N\J\*X"[Z5 968H,T.9&D?W0N;/)"K99P4:+*J[_(%GR@R4_6/)C M,;(8R>MH,D>3.9K,T62.)G,TF:/)'$WF:#)'DSE:S-%BCA9SM)BCQ1PMYF@Q M1XLY6LS18HZ*.2KFJ)@C=KR"/:]@URO8]PIVOH*]KV#W*]C_"G; Z!3^0N:A M,\I#9X3IGPL9C$STZU(N3?]!\HS8KTOVZY*#VNS^S61D8V1GY&#D9.1B)&LR M1[?)OF*RKYCL*Z9Y@"]+`TU8KD9A-,;OR^.$:XB;B%N(*\1MQ)G!^E.<;T Z M)SB!.I?0R:1.)ED=E&<[M_M3I6Q 59U4W4D5>*,4_+Z?(G_ZHLJQJ1R;RK&I M')O*L;$<57'[@6OFY^[Q='A^VAW5\*D43C9Y72H!3ILWQ;$YC=ZAP([ 36!_,^6.<'Z_Q@C@9S--2 W*NXZP.RU#(4SZAX1L5:5ZQUQ5I7K'6; MM6ZSUNU$CNYWA.<'/\\]0G8)K9CK0K)3&.SL!7M[[%^G.]CN8;OGG!U7'.8- M+B2SV9.1'@LP[[P?W?(&CSJ_\*QR+[OV^8U$/W]IJFQO3:)?R(9(5?G-*K]9 MY;5M+CE9B#2L7.D]*;*[^>D441S(F\GT:U#U"< M>VO?51 (M9*C\_P7SV].*&K4>59L1STGDEJ7_8'&=*A_=3(4][#3K4=7-'J2 MHI[]]9'3"VI$G76?9O=B!M[TFO'%7VP*[ H<"IP*7 HLNF]TRO%@B;/(PUED MH0=+/5CLP7(/%CS>ASN1FU68.4I?%LQ1,D?)'"5SE,Q1,D>WO&Q^L EV\73& MU^2Y3S<+//?)-^F [AOJNX=O'_=4=7Z"^C;K-CSS?*7J5?4+ZIY6N03*=[.^KK9"N;A[MGA_MGA#MKA'MKA+MK!BQOKM;ZA/E9W^=.M=O[" MZ?^%U_\;MY]W=\UN75#7UW8X]!._H,.M_6!2\>IC>".*\$X4WSO3H9O# M+2+[)-=,5L',X5#?1IO[8BW]J]._NAQ:#F5B[XV.ZQ.T+#^9[@PW=8:;.L-- MG>'VQ6,<"IP*7 JT4C<\H&Y]1-CZC;'Q&V?B,LO$9 M9>,SRL9GE WOCEQ(YJ@Q1XTYLF8(UVJ#9\'^K"(>Y^)Q+HSX&]Z2N!;QPEN' S/O9U(19PL:-WU#?BVXE(1_'6CP`-WGA-B_/$?E'?T' H;ZXC$. M!4X%+@7B9E!\)E9\)E9?6F!Q?]/LXSAY1LDS2E<6:A;9J%_8+.SY+LOX*[ZJ:G.[\;=LLW4[>SN$W)/7D>'+^/#U_&1#FT. M=2/OJY[/DGKVX7UG9A;1?6'@YES;K?Y=Z?H&Y3]'"H_'"HW@Z' MVB.I7;^5/G[ZJU4?E(4BY`W5[J/,3,!28"FP*Q#/4K0[4UJ*BK45% M^^;L] ^#3)Y.\GS4E.TOS0_LV^:<\X/868GDY<<_\CP.%>@M^_N5AO^5=Q)MO;!OJ##)3""IW7ST?8'Z'*YKNY0 ME^N:NEQCN1(N5\)R"FYU5I]TH%P"Y1+0JUUO3S]_AOYB`$[!9@KR.!SJN_3! M$KA?`/E [+V1SZ>O!CL*>:NNC4_0\J\Z!@<(=Y>\#Y20-. MX#!@OY=!/+W<>BQ\=>^$2<0UQ/T[CQGP>GU0; M?R-#YQ*1C&R,G(Q//@/\KR]]+B?D0T*_+^1MZL`_1FYX#3F&_ES M^^P??OUGQN[#C&[[P8<9W>ZF?1CG/:T4S\C>D"-JO? 'J;IT;[SP8&5>YOK' M>FOUC"/E? &39G,"]8O2<^0;"*'E!30YGD =X] Q#D@G? ,G`F7/_0:&`E.! M<(YX`??$+^ZE0*5P*X547_,'V1@)5QR^D:&*@7O/A2Q&;M1?N@SS!\GR3):G M=#7Z@RPT!G0-Y1O)B_<>D;W]QU:K(:1 Z!L9!R.5][O'_.F;@[_) M^T\4LIFLR?=W'#[\>O*,?$=-9I/WU'MOK@]2:FJ7Z-+\'R2['7)E_@^2I31T M:Z5:_3](UJ71&$F1X@J+%%=8I+C"(L457V2U5WP5?F_K?$G-5]"]E.\9*]#V MBA,X17'76Y/JYR].%>-4.:Y#@:IATGWU6R4.U1U=!#44.!6X%*C,E#*SE9FM MS&Q=_+OCXMJJX?=B] _K]:! _$2&&BE,-%[(P,,H/WS.!-$T/N]=X;^X,3WM7U M24MAK-#PXT)2*'N6Y,D77[C$[W7$33DRN*H+A9H7L-'J.8%TGG5.1673*5HX M@5.E6/C%D3B9FV%]%L_464]5"4LTOX _7 MIJP"_QNX580'_G0R*4.!.NO46=^J.-HC\/:0P?,7;Z\H/X]QJ\"I'\R_R"A8\>?U9.\SAHC>49[()O)&D)7.[^1 MM\+A_& 1>*7?]I,/,QH\H\$SPOT$[\Q?R(R#D?Y-K.YM>/IV(4N_:9[FA>R, MI+5Y(>'@P=D&SB7F\>B3_K9_GOIJ(AM6SGA%K*# 5V!4X%#@5N!1( MOLTE'G)2+_D<+$F7.0O=CC=/9$N=43-E/Y'%O\Z*^2.NO5;^(T?[T(&B%_8- MM'"2M>L M]+&FJ\NMX]C'K_JTFD^K^;2:3ZOY*G [F&X(\>CU&^K3ZCZMX6MK^-H:OK8L M@CN;:(4"4X%-@3S&H<"IP*5 VZ?66_>2XP.2 M$[FGRG/_0O(\^;"LSC?4E] Q'#I]`.5?W0P-RE9=4*OK^X923<4%;4&QV\+F M)/^!+H>Z9OFR"E]7MV/Y_DD"PZTLQ+^ MK$SKGW;(@VYA7U#IH?H?*%N7N^_9/D'99- ;-_^!ANK _6K2QZ]V_^IT:/D` M7%C=B>UT;?Z\76^V10]XH]3W*O6]WLZ"/_QT*=#N_US(U%%B?'HBN_ZZ';?& M^WGK!V3CN^>>[WMM6?%@8F/"YHD'&\H,P]7A&)?SGV M_3A6%Y:U$_F&-H=.'\!RJ*]]7P#1TJ%.;'-BFQ/;G-B?.TG6!^CT`4P?P#)_ MJH:UV/X/U,>Z?*SE=KU`?$8U5^E!5N78?K&EKZS972'#H=.51?U M?LN]WQIZU?X;RH;H_A;CIP$TIZ!UUH&V_*ONB;@ATG1JC;='6SY^U8GM3FQW M8@>[#IK/]2J;\#*;;Z@)Z_3&_GD(^+AI['J[C-D_0'\>+=9\AB;F02^HT7I! M2^>O!T G]*<9R@1>B$'(Z?(]$2NU&\NZBUW(NO07R]*/US( MK>.TZWX7,AC)4MITC>Y"4@WBB;SGJ_LG:#J4;A%>T.#YX_W[;VCGL08U][N@ ME@/^ABY5O[ M[1OJT^H^UK[\JYNA@Y<`WGKZAC8?P)#4]@5=%.1?T#IDI[J@ MVQ?,=F*W$VL]\+ZAY5"VEWD<#@V'LERQ"N<;.G03PCM#WU Z8+V@/]WPIVZH MYX^;J%Y $]0+2"O(X&Y7,O)(]S,)MV M=_A"\GJ_71_[8&V*?[U8GL7CM&8I%Y+EN7EU[%#>-Z^./57R\8MM)GB3P].1 M;RA;6[Q ]PWU/3&I)]H%;:PI>.+P#75A-1>6W8S^AC;_:G?H8 FXY0TWO;>H MZ".QUM#W@OX,2EI\\"."IW6K2?XT5LQA?T/=-W/53O<[TAV/^XLI\Y,?R6;X MGA=^9*O14R O>8;UU;R@N 5=4%M7;<@EJ*O7@< &D]GQKM3UH RQT^]WI=HS M<.E/E_ZTE:-<2'HYXYIWUV\F"SV7RJCQC!H39._>7,C!R,F_SFQB+'(B@[_9 M^)O,>V?>.ZM\9RD-UI!![=YP MNAU(MP-86?4-'0YE_P>?1?E^PY%]NOR%F_H+/]4=U=L5A/9I6@,I6%8JH<79CL&-)T]H_MVX_7G=_F_+^AM6!OO[5O6-^_O3;=^XCK_[]]?3OG%_ MST#_P>$\YD)<(6X;[N\/=/S!!>(2<0UQ'7&HI0OY6,C'0CX6\E'(1R$?A7P4 M\E'(1R$?A7P4\E'(1R$?&]?Y1CEOE/-&^6VT5U#Y]1\@S@3:1OT'V/6GIWYQ M*; 4B/H`MW[^`PP%)HHGNGYQ*'#J3Q<"4\63*IY4\:2*)U4\J>+Y>T_X/\"F MBZOIXFJZN)HNKJ9+H:M)Z3KKKK/N.NNNL^YJ4KHNA:'B&2J>H>(9NA2&+H6A M:@^S@-7X53Q3!7/5$NA_GNH`W^_*O?\TTL-J?J6T,K]/T 5N+J- MH7YCJ.-X?S#H67NVSGJKD=JJ/1MM#U3B_@>(A_P`+@4N9 M6YW_,RZ)OD0K_U;Q^_B[*PU7!^)H%Y>JW#^X M0%SB[W;$3<05CF\;#JH._@-$AF\YF _ 3;K5[#2D?9$F-/1O&FI^0_^F067V MG_$%V<$FA0W_`0X%TL;3WHH/ZAE8.&O+0C0I`_X#'*E G?7469MU:&_%OX_B MR7X8A=G)L'=;5/V+S$W_V@:SA.\+%X@C.7=H`O8'1VNTXTFIO/_YC3.GM'^9 M3_K"=<0-Q$V3WT!UL>Q2_YJHS):WZ>A]]+OW\EGWP'L<\`W^8 MF']]U.D$#EOGP];YL'4^7<4K6PK"RM6%E:L+*U<75JXN MK%Q=6+FZL')U8>7JPLK5A96K"]?EPLK5A96K"RM7%U:N+JQ%'?L+ M?Y1R`=L.2C::@HUIX(TF8Z/)V&@R-IJ,C29CH\G8:#(VFHR-IF"C*=AH"C:: M@HVF8*,IV&@*-IJ"C:9@8]'YQJ+SC47G&XO.-Q:=;RPZWUATOK'H?&/1^8:6 M/7]P*.>-H`N\J\*X"[RKPK@+O*O"N`N^Z%+HNA:[, M=&5F*#-#F1G*S%!FAEI<.ZW=>A=@ZUV K7IJNPX3:<7<7353Q6B+O?GO-ZGHSZX:E^>*H?GD/%H^YUJGN=>"WHP%M^ MAYU_Q/%5B#,K>@)U)G;YY 5,G8L5VH;V) IM2O0"XKW%`XM X^ [? =?XCND MM]__(%,5P^S9A5R,Y+DWGKOE/RYD,#(9V1C)"\B2(,'-&(*[,<2A5RN"VRP$ M]UD(;K00W$ AN(-"< N%X!X*ESEDK9LLS\GRG&ZV6>LF2WZRY"=KW6(I+9;2 MZFH_%\]]\=PMW7(BB^U\L92*I52L2\6Z5"S/8GD6K^+B5;QYE]F\WC?[7ILE MOUGRFR6_6?);)8^9F@L9C$Q&-D8N1OK<5>LP:W(A64JA'B"F.2XDSSUX[JDA M$72T_1_DY%]GWE-WKFRLGXWULW5&,IOLI2=[Z>K*7GNRE)WOIR5YZLI<. M3Y[_#U(]@1PLS\'R',F_SE+"=B=A5Q1#&QB%IB%"TQ"!]W B\$+,"33#%5\8 MB\<7AN+Q9;G%%[#3I=7@%D_%3%0>[)\2VD EM(-*: N5^ZN)CW=# MKX?K3!^3$TG)[:"2^T&EUN]EIF_D"RESE+J+"5, M#R6GAY+30\E)G^3N63T4&JQS/N#@I^D-'GND^<^>>Z3YSY9YQ?;$"N: MN9 LI<526M;C,+68(K!)433PCV!78%#@5.!2X&V'AM>Q3V! MA0*?'8&8LFMX/>L$JO9LU9Y[MZX/2(QVF[RI^A^DM0"+QCU3L;%1=%R(VA,H M^I<5()Q 6S9=ETW'RV@*;`BWHN.MK!/8<=:E MXMDJGJWBV:H]6[5GJ\"W"MSJ`,_E:@T-+V1G9.%\\$F+"YG\S<[(Q;^N@L?6 M1L$MJ6*BB9YHHJ>:Z*FAN#:6".TL$=H*(K071&@SB%.,!_YTZ:Q+9XUG?!.O MA[Z 6[G6]M^3DTWK;T]K7ZCZ!ZH_H?*0;V40*@G5"(7^4V)GR,36D*E^5FKS MQ>R8ELR..I7)Q]EJ MBX;UBLS-[8X/##";5AZV0^?3#IU/.W2[;_I21--SA!;:2SEX MXL$3?^_M_H1,4^"F)P0ME?#D>=.FT#JA!LY7VVJVP>VC)PV0K%.C_;L?9A'[ MH0YT/]1"]$/M>W\[?7]$\I%;3YPY*V%/77R=4[>=V\MW6@*=ED ?A,+=M$^6 MX&0)3I;@5$,G3S#_P>E:6,P>^1+]YDOT9QQV]E9?HF_E.L-Z46]T2BA.KML;D/2)0EVLBA\=90&SG41@ZV MD8-MY-@J](DNWV27;[))F?QHX RC<6I8-@/=]LQ@"25+/9GQ9A'- MU$> 9N-!\MGHY%=DYC_WDGRREK-L+WGA+$_Q`MIS&B^@V8$7$(^M9[' BP7. M)O5$6O@U,=DUU?A.-;Y3C>_<+'0VTW-K%FE1OGRA\5N!?O[2(M@5N!J6)J]> M0)3W"O5O%B>O7DCT,%;H2*[3EOI&2ST\0NA MXX:W*');E-U96U!UV+HN/7\I/E8I3C(41P3%2> *6PFEYR^E6UCQQE2\,54B MC7J=HCA/79RG+LY3%P2'2_BHUSL7&NB19C*CT3W>B:NFJG.E4U62OQ'*.6GI55H2 +G9 J ME0]F\TI//%Y I'#K4M3(LSB>K,VVBM-^Q4Y#S=H^?B%U-&L;':&M&<_-V MCV;8G"9+=*IINZ!X\^A87PS$ZUXO))8F'UP'<=T[L&\6MTHLGE'QC,I)XH/3 M"XKWPXYMKEL$[M'QUM?QN?T!YP'BUNOBF?=('2:W%_#^`L$Q:;S=>_T`Q$L: M;S=:GY%=?US3H!'=N>2X^'Q51W^?H\X+JBQ-71U+];/TBWBP%8FGZ_&/ZO$_ M__P.NY;9_W@`QQ,H?E2B/YR(YM7D"[<0-Q$W$)<(6X; M3KH'7+A '-RPNW =<2B_A?);*+^%\BN47Z'\Y%KZA6N(0WTNU.>:QENAG OE MO%'.&^6\4P%2!IPH\5>"I`L^NDU$YILI1G.L+ MV*$WP#=0UTS7-3.4PJ$4#J5P*(5#U\S0-2/O,GP[V>J-+_VB^D/WSMK/BENJ M/=+UXP+*$=8K;I?'1$X8T1=?PV#DAU'_SA-F851@&&55#2=NX^]2YXYOX#0V M;E;[@V@D.?$MPP.!.W&,&R=SZ^_]/!DZ"KJ M_3S\Q<;,D.]D[^!0X$JGD[V M*VTEYUYTZFY^X)/KZ5P[$D0WN]R;[C[AVV.^V0%R:F"?2 M87MLUSVVJVKA+8I+U%+0\:T+M%-T>[_B6VL.52_B;YC#,,QA&.8P#',8QE>@;HZ5%>'IF>&%1=>P(US1GMY*VX>CS#:[J:E4J:E4N;7--@R M&$5]$[5OHO:]=<]\QDW$T6J;Z(9.=$,GNJ$3W=");NA$-W2B&SKQ8'CBP?#$ M@^&)!\-O?42N4<^GR*/O=C?+;*+^-\MLHOXWZO%&?-^K?1OV[']#V9V#J M%YL"IP*7`DN!*IXX%!@*1$N(AY]3#S^G)KWGVU'E!V!78-D^1I=IOS?&`X$+ MMU"JV3N!&"9.]>7GVT-\^0SL"L2-.2V_N\PU6U]IL&X_2E[20B]IW7/CC]\S M.M97[SA;LG3KJR_$E8U/N;7<_<+<_<)X?.&YWE+SL=1\+ WYCS.%]+ M:I5Z=Z7>7:EW5VK'M^7V-_HF&S,X&_?6C7LKM@Z[@)9HW+JW;N5D*R?W*V2/ MI1X'5ED=6&9U8)W58?OP=6\-/Q@ZD]"I8)&77I;!ZWI_9EWX2:VB.M2!BX.U M#)H(Y]O[QX\"OTH#"9>(:XBC/>7^/O.'[VV=+X62D7A$<[T:JC^M.^<]54QUNZERHS'1NK!(O -W`I7KI;->.NNE:WKIHK8#E!,X M%#C53AP*5 TOU?!2#2_5\*U<;^5Z*]=;N=XJQZURW"K'S9N"[PJ\7Q[!2#6Z M]TM@GY"3D;S;'"PEWSQ]]XS)O\[C3&8SF4W>0B,[?W,PDJ7$^RTU&_GCC^C^ MB(<.EZ/!ODLWV]7(,^X8I77T4#M>7^D:VFCAV?OSSA^ ICT=K_B_O]K\#$3? MH>-M^_=7FS]\42=C"3-\WOD;& I,_>FN7U1F[%K[^<;R@6/<.IFMD['*!'Q9 M.O7!Z/RW!Z,_(8.1RU@-<.%9'D&RS-8GL'R#)9GL#R# MY9FZD>'%Z@O),TJ>4?*,VL'(9*2:&KQU<"%92HVEU%A*G:74>75T7AV=Y=E9 MGGWRC(J_R79^L%T:;)<&2WZPY =+?K#D!VOR8$T>K,F3-7GR>I\LI9R;+<-FR[!9\GBQOO/- M^GXO'OPPSCQ4ZY+]NF2_+D-YS^C\S<'(R;_.\@R69[(\D^69R>,:;!Y[QYH%GO'G@ M&6]JM]#4=J&I_4)3&X;F@6>\J:U 4WN!IC8#3>T&FH?>-LM#3VZ3VW2.F\DM-Y-[;N:AR=?D9IK)W33SO9WF)R1K7;+DDR6?+/ED MR2=K\3+2;VA R\=)-OMNQP=OK4(57;?_(4S/ZSL M5D06=FTM7*6EWDWI4BE=*L4NW49A;[O=_\*9$#<*42_1I=ZBRZU"W"K$=L@: M:2D)QT8KJ=&CN!<.;69;ND.>2+L7<"(M#74A@Y'6UW3=CR7[!REA'URT3:UL MN32T.0UM3E.;TPJ;13>U.:VTUNA$MH.1R4AK<%KE^LR7;C[4)V-=VX"6UQ$3I>B.^'M9MYX4C3.UYT[WK1O>M% M]ZX7W;L>PG8]A.T'[I+]T%WR1-HN>2%9E(UEV5B8MDM>R,5(EI(E'B]D,#(9 MV1C)DN\L>=MY^_N+6!^0@^4Y6)Z#]7/X6F_ZF/E'!+ZIU/!OK>#;6];6T M?C^@>ISU"]@4:"SF%WK,WYE>`Q;^=%=Y]T(YXA,LVHND:R^2_M:+Y/FG[^5G M^0'95=&L,*0G&]9DPYIL6),-:W(1R7%D$_D9V_:<=&YYX;G7MN=.ZYT;N>;E](EE)G*766 M4F=P?F6H>( Y] MMW5@!>X)U#&BT=!W*5] ='+T9M?93[9J78K!1;6[Q 'M;&AH M6=S@.\@C\&7YT,GHE>&A!^GC_2#]>9#H/8Q0[V&$>@^#+T4.OA0Y@E^&Y\/D M$VDIOI%V/6.D*H<>;HY4Y>!;C".9'KY'.%)?L!W<37ZD;HV#;S$.OL4X&MH# M3?D/3?F/AA'*:$PYI_Q'8\J;5LP-;,X_L#G_P$3ZT$3ZT.;\H^N^TWG?N:6X M'G]:DRECJ/H,+3080\^6!J==QF#3/]CT#U;)B2JI^8YGTB4.]Y#F7HG8VK"8FK"8G+E_^3*_\F5_Y,K_R>G2R:G2R:G2R97 MU$_N##6Q^GUJ-Z6I"8N9:(=GZJLX,_55G/G^3-\G9.&$T(6:^:UBH'#-@K[9 MT#.:6B8X.6VT_(+F<8#\'ZP2']Y/#^SEX#Q^\AP_>PP?OS$,[RL_!6DY-F2:&XG-A]GEJY#R7 M*MMB9>/.49.CW+E8A1:K$!_A3C["G8N5;;$;6+B5:#0^-1I_`>VFZ-2P?1;K M1K$AXK!]EN;&YL8%N75!;CSXG!H.3PV'Y]94R>1P^$0N_O6M(M*5R^'PY'!X MRD$A=C!@&+[P$OO02^-)"@)6XVRX. M6%>JW[3X?'_QJ?WB$_:%)^RKJ=";"EVCY=5TOI@U13Z2]OG@A MZ0[$XDJ U5@Y&EL#OJBW^*+>PCJ$=7\1_G&0;\^R/W]QZQ!1,SN;`[[!L_@& MS^JL&UUCX86YG*6YES74'&CN96GN97%&90TVUIPG68-7Q+1VSXN+%M;D^4P> M)>8_%E;Y+ZSR7UJRL+1D8>EU@*4E"^LMG?)I-E8[OY;VK%A?72YM6KU&)HZF-QZF-QZF-QZF-Q)<#2@_NEF8JU542A>2#5\G0U?9\/762^&W<$-J@H;5!1D]<$MUXH3LH4)F5*DRBE2907T.H.2I,HQ34IQ:^9U6*G MCJM7BJM"JI =?">L\)VPTE1+::JEM!RE2M=-O<6J'V:3*DJI8 MU\ZK*3JC/#HC2W\]E4R\C518BU.:N*JM"J>)J]I,.:>XBM-1&]]KVIIFVIIF MVIH]VGPU9'.=R8E<_.M;)Z1"Q_S-UI3'ULL96VM--G>3V)S)V)R?V)R?V*%E M>1LS!%N+,[;VJM]Z.V)K.X?-Y1Z;VSEL[HR\N3!D<[G'QH3"UBJ.K0F %Q"3 MTYL3`)M;(V].%6Q.%>QN189;(_;=58&U0&%SV<'F.'QW]0HV%A-LO!BRA_F_ M6V/PK34'6WMC;H[!-]_BV'R+8W.TOCE:WUS'L&]U#/L9-^DHX@50$T2Y>/<6KAU-)>Z,7H:5->ZO&;=8X[EZR.>NT-VO<9HWC$JR]6>,V:QQ? M%MN;-6ZSQFW5N.OQ./GD"2P%FLD^D;9'GTASFT^D^8$3^!DS]I(?B)1(_R M@N[4KZ*-NJ M&:I6*BW== +5I&C%THGDY9>^_-*7']^GNZ"Z4-(72OI"25>5 M=%5)5Y6F&UK3#:WQAM98^QJO_<:;3_/-I_GFT]RB-+P:TPG$\LE$F(O3G?0.+\)__Q_[Q_3C% MO\+R(*5(O-1]`E%S4YN6G4AL:7=!+<+BL8P.S.EA;4GLOC7E:FN5W-W>_GL>RGY\LTLDV="3I5D1QNR6#L7 M:^=B[5R^+_"%\6\Y\?1Y"UF^A2S?0I9O(6\="#\I7QZ;H>'+SE4U[3G:"ZKN M3JD'JRT+3Z3ZI<5:7>Z7EIOG6[XU;I;]9^IMMRF;'Y'YT]JRD^_L8 M1:&6]LCM[&]G?[MGM)W]S>PW[$YX`M$S:MJ?\$1.'B9FW!N7CE_0R;-7SZCY MT43#HO 3V!6H+.E-^!.IL@^7/9=[7U 5:%+RK365.Z=,6F-Q-C5YC5,FK;'# MU;@OW075]=%\?31GOCGS72GM;',X#_)"ZM[0/ _2N/O:!=T\`!;_4)D.-4^: MVFA:-GTBT2MI@YD?;/&&WIFYH/:H]3?4`M<+.APZ6?QJ)(8;B<%)[:8)F\8) MFS:9?D[#-$_#-$_#-$_#M*5+=.D27;I$[VF+3Y],'B6>0K;%;'+:HBUG<[D9 M7[]A$^\W1"M=(,66E*/K5NSL%%M2#YF;A\RM7/CE&Z-'UTVCZ\;1==,WZT^D M'MXV#QF[AHR=0\;.(6/GD+%SR-@]9.Q\W?B$LD3QY;83& HT5Z-K9-FQ6?XU M1C,X71^B.Y&H\MU#T,[/K%WB/'CZB?OB"<6-L7L,W/'2\PE4\2$!4N=PO7/=0N<@O'NTVKN:T,X<=5XBW9>(1ZO=0]#>75 :@G8-0;N&H)T# MRSY8](,WY.X'X=T/POO4I31U`YGVW/<)5'ERI-8GFQN/U+I':MTCM>X'YGUJ M=[EOJ.4?^M3GZKZAR.K"ZOK.`5OG@*WSS+_C M\]#.$5OWB*V72[]\G6ALU3?/WH_N^G;N^?;9!=6U__Y8V8>QYL 0XX2&0RU= M,;#GU GL"K1]?' 4.CBV'!XQ#H\8AT>,0T\.QSW&>F1S\/6GX3'6\)KPH7'+ M2%615!71_LLG4I5)6T6=2!5\NN"]UGQP;Z<3RAJJ9ZR#@[:AKW2=2!:4'W(. M/^0<'@N.CIG-!T(@=R)+YXZYZ<$5\:.SXGEL M/3RV'GX2/+C;]0E53VMPGZT8`R/,\X\*1'NOH?W@T^7!28#!I\N#3Y>'E]@/ M+[$?P[7)DQ #.VZ=0!441_>#.U]?4/5(-+8='-L.CFV'Q[;#SRW'\MW.8]O! MCZA?4-T82SV(4@-1:B#XT'3PH>G@$'QP"#Z*Z[Z&GX2.C3>57L!2H,J3CT$' M'X..[5+:7/@RMB^ES39G:O^7J?'OY/XODR/ER9'RU);/USC1BDV/J>?!.]CT M\'L&9IXF'W%.KL=](=%OG5RY.X-O,5_0S=!FWN %M5S2!;4ZMA/:6:JL4]K] M9'*V8'*V8";K"=]AG\F^QLS?B$EWG.D-3::G(*;>C)_<)V3RN?'D9,7T9,7T M2^S3DQ73*[*GYS4F7V*?'%Y/#Z]GY^UY^GGTY"O7D^/!.=@]F5Z7.X?S[^?' M<^J2XM/>.=6/FWZ&.Z=/:6'^;?(]W;EX\HLG[W=JI]^IG1X/3H\')]>'3@YU MII\V3C]MG/6;26FZ;!8?XEU0.\"?Q0?X%]0.\.=6]=]L^C8[,WQ1=&Y6%#_" MG9LI75KTNCB(6AQ$+0^-EH=&R^\T+@^-5J ^+;ZJN#@T6OK6S8GDR?.+M+'T M#'-Q9+ X,EA<>[G\''&Y$[_[YLO/$9>[YDNO-2[V MMA[T$M+.I>>^RP]]UE\[K/XW&>QG[_XW&=Y1+ \(EA^4V_YN<_R MX&'-MVL.+_ SM*5C9_^!?8W^&?N2[4]PUA/X7@CU$?J+[Z9_-]^^^Z+X"=S\ MN^U7XU6*E[I)2ULQ+@]\E@<^RP.?Y8'/\H.PI46>BT^8%H==J_B\='G3F>77 MXI:6;B[WYI?W4EE>NUGJ^!>[\\4WT\H=_W+'O]R;+SWH*#[H**XS+*\S++_+ M5=YGO?S65:GG7UJ]6%J]6%R]6%QI6!XA5'(07-_QA.)]Q_*^NM5_:><*D)>N) M2RCUOW #<= *^<+!GMN^#KJI=.$:XKJ-[W9=X?E["W%EO]L/^UX/Q"7^;C<^ MY."A?1VT*9RX.NQW"\=797HO6U'[.FPCNH"]VR_'0)6^[DL9$)7ZJL@7*5)3 M[6\@KN-8J<")`I>(_3(UB46 +IQ(DK=N+VM-^]M8!^GD@"@0_^;Y MP"]VE&.:^3R!38&TFE-N_IRP2;J=MT=0G\;WPC7$X306V:2DBO(3MZ?A< 6D MM4^]@ U%&*TI$(5(Y>87L'>3L+J!M?*FK-'7W:;8"[MG/\8RC7:5]+7** M7[A 7 IW#5= PUVEZ:[2=%=INJ::[BK-LFCMJ\MC@2>,LM87<)+OT*_B; 32 MOM?5Y^SV<.L)S ,GDT=78-D8Z7BJ?8VOPV"--&S<(\-ZP@W*$+QP)8OYA=N& MFX?][DS\7D-<-[F841IHE 9&N$,7*%XFOX#F88SODW0#HA#O3SP]?W&C&L9& M/:3'G;Z!96.\/\'T_-/1%-AMUA@)#/4QAD8"0R.!88=Q+R?#=JJI"V&JIS8U M0IL:H4WE92HO4WF9UECL`@YRUZ8U%?L&$M/+F'XK'GN:RK*KJM] '&%81FA] M]]0V(#&]5&V7>CEO[]D]$7@"0X%I`D>_::G?M-1OJB]:+[<#]J<9U]*O,/%7F/@K/&>HN]?TS!K25LC;1MXV\F:A9KV%FL\$'U,U M$$43K*N1.!G5KLBN0 J'2[?PTBV\K#3J`B;*,;,9,VCBMH6&^\O.2S8>NNXO MVQOWE[DL&P\K-X9H^\O.L/8]P_HX7POE-B[ZK?FEK6OY!&X$VJ+?FK':ZHYO MC4NWIGFVYL#B^"+_YX4+Q-&""FJ(>^'LX.?0\[A##^0.7%,OH"VJ$SA1B&LI ML%#[#"=P(- ?B!*KN[*X_/10X43SHE5Q(93N.QP:N@$%GYQZV2V3L8\_^#: M!2]>\.J%X!41ZJQ?R(Y2CYPHS?.1>446*C!F6"*T;NI"EB(7SWWQW)?J.Z;H M+V37&:%[E1:'1-*]T0MH2;43:)OD"S@42$%!W'L[?!BC945/X$3Q8!F5UGS$ M6]''AT$&UJR=R,7(0J'?K-8'&6%U2J0FA8.K22*US#3R7F?Z"3EY[FBU4F.M M2"YC2ZYCR[<<2_^ 5 U)]+7^W#,P)!LN+:1+/:)"P(M`7<"4[_8%&C+_'XG]8.\[4;#"5P*+!0/ZF[#A%UHA5F\E9@] M`ZW\(K0H+!H68$1C3[2Q)]KTL"^:EA-&XZK?QN7L_4MQ,1%HY4IQ?SSD47O[ M%UK)%S 4F/K378'F/]B#H-\"M_1K=,V_1M?"H!-9*O2H8*2*74,9+@B,KF?E M%S(8F8QLC.S($9ZL1V?7J;^Y3L\<96-Y-I9G8S;1P&&590Q-K-_K"1]G\P(. M!9J'-70SU5K&T&+&&)K\&IS\&F_)K^=Y1QPHRHA@9.+4]4+0X*W\K6QO?$). MG%%BZFUP@#1X10Y>D=/J=UXX"R>F5?"\<'9">@+-I9_J%$W-CTWUU*=ZZE,= MCLE>\&0O>')F8[Y=9/W CMU&N9#!2*8V+I\\4K'A>PXSCPF__IB9*'D];KGU,*A6%\FH_5E3LSZ&H@SS5AHU!<: M]:5&?7U9+?\); KL^M-&\_I*_6*JN'&C7^K^+LW\K+NS^D%UE.NE7"_E>BG7 M2YG!"'MI2/+*U3F>LBTV!EZ*___ M].M=F=2CH\4.UN*CH\5'1XOCG:4]0$XD)M1/Y$+U3,R4+XYBZDMQJ)REAQVE MAQVEAQUZ*2!*D[N%EU%?P#%QC&,IL!!H]YVC]%1>+P<$WPX(OAYP(1N M29+W-T\_S+WQC!K/"!=XO5WK^H34=1:],;*SV3A0Z=0(%QOA8B-WGQZEM+$(_-Z;]!F'( MQ]@GSKHO!1;.>NH8IXYQZABG:L]29C#RV-C++^[W8SYI^'$PDE7W4)GK#KEY MA]QY:FZ_=6?\,/?!O _F?10;3&9SZC+2 MP&MSS=[F;.36>Y$G$D.5$ZGZB7R>P$&B7"O*MH?$'8"'07(X\\/ LCR^6M_5K?0&MN=$)M(YY![8W2KWHEX?V M.SRTX>&A'0_UZF#JU<'4JX-Y:!?%^R6Z#S^]_W^5W6UR([T*!> =I1KT@;3_ MC=UT.W/KC3WM>?QS)J?<$D*(`Q+H&+>.\=DM>H=,1G8<9AR#D6Q7#MW=6I7R MX+*4AU[\OY 3=X_6D3RXD.2A#W$R+*WWC;,-&5^FZV'OES.0/Z86%,Y RG4" M=2Y&N4[@0FD;YN=SP>AQ_^5EGN WL"G0!)F8S?X&VJVD3 P^?0,Q^'0AS:?FYY7Y^KRR MOT$NE'K82ZI,?11^(3LC%VHZOE#(UV>+;R3/*A>+Y;E8GEOWFMJM?+%;_0U2 M-S"^.\A\L87OD(.1DV>D=B'M!LF%Y!D%S\@>25_(8N32&?$NQE1?IJ;Z,C75 MEUS//IO=!<_V91)J7_90(-N7O1/(AI?!L^%%C]17K:FO6E-?M::^:DU]U9KZ MJC7U56OJJ]9\?M7Z#JAR["I'"^WF\X/:=[^X$3ATUD.7T-XN9M-(8\.28B=0 MM:=4>TJU!REY4TK>GBGY_1B73@:YNS; 2.Z D4U?9UVFU(TN6UTWNS'Y-XN1 M//?4$PPO2)U(MJG!1O7Y@M0[I%HBK)"=_&P^&S.%IF^93^1B_5RLG_:6^4*J MU<2'.!=RZM_%,74+,$7?-$7=-IG1-IG1- MIG1-IO1GI_%^C-7QTS44J&N]U$Z@0];9(>N<^.B<4N4B(]GUOE-V?N9C+1$$I8X2>TDE]I*+H>&#H8>0$,/H*$'D!9-22V:DEHT)8=V M9AV^OE8,HWM"A5#BU*=2+QV@,7MLF7PC;O?A,#S2>R,;+SUR?_9C%2 MC2>V!;^0/'=L##[Q7K06[,FI1^7$8M'?0)3/-[ I4*5C'5]/X-)/;P3:&]N< M6%;B!"Z57 XKN1Q62[-9/OUDR^6\/%N++0+2D-Q9>& MXDM#\:6A^-)0?*GK5.HZE;I.I:Y3J>M4&N HO:2K=9]2ZS[E2]VG^UEO%<]6 M\6" @^L^)==]RN+,?W'FOSCS7QR(*0[$% =B2ALR74B>N]6YS>+SK%[.LS=? MWSQ.S&D7Y[2+3]/BT[3X]FOQ&5E:,C*YXE:^5MQZ,\ZFFJRY]Y>*6V^1G9$F M3^PEG@OS^4OS^4OS^2\-Q=]\NNLO#@5._?327]P(3)5CJAQ3Y8C[1HNAI19# MRZ5W#I8^-U]ZE6#I50(MAI9+?0-N0YZO?O9JGIU$C0>HD$O9G18ANR6).W6D7L;',A^;0\^+@\5)8E#QVGWO7;?->/J]\E5[]+KFF77-,N M-X=+N/Y<>5">R M=-GQAN6)7#RCQ>N^5>'QAN6%'(R<.",D<1?P*9 MG8JE2D[@TD]O!!H).H$=Y8UJ'E^6Y/L&=EUJ]$1#G;)0IRS4*0N,,;3 &$,+ MK,Q[`E5Q2Q6W= GMT4L+O(O90@ET"WU\>"%Y?TW=8!BOOI"ZR[!>RL[TT8Y16G?<;9X=$?NEW[3G#-]"J[K94 MDY7X6OL$FE>=^%K[!$X4]])UL4OS)Y!7<"$0=^(W,!28"FP*5/%L%<]6\6@H M@&MVMN100&K%\1/9=#]$TPT1;3!R,K(8R6O458>C!R-9GAC==>>5UJ6VEG.M:?R] M8?WK4WL.U>\X=+7C:(S4]<8$<./J>ZTQU^0*=*UI.8(+68Q(VL MX6#CBGZM:>NW"\E:QZ=!\G&@H?KV$JI_\_71=4;#&$;'"$>W_D/?N(G?+<39 MWNT:,7DN*/CFR]97\P2J;%#)N_H[7?V=CI6R3Z#.NNNLNZI$5YWHJA1#!6[/ M+II6<&Q:P;%U?%_:GDL4OMLRB9/!`'3']W='8:.]_OZ'R_H_/]CM]U M*>_F_=_:77F'ZO^Y>=K7+6K);XW_INOZ+:K+Z,>P.RS??R-[]OW_&W%V!?H$ M$J4_@>0:CX'QN.^_F7]Z`D.!J<"FP([BL3WW_3?C:2>P(W#J6D\5SU3QV ES M`H<"ITY&!5ZJX1:O.X&EP(6366PG]!>W;JZMFVNK'"WB?!DIME)',K(SHU35Q(OQ)[+I)L=WY1>2C\;.6M=YC>P%^HD8PR]ZC^&EM2_D+R:EN<80V_*74B6$IO98#N+6?LQ-"=Q_BUT MC3#3<-$:E7RF6K#,P4B>4:I-3G9=D8P-+I$\N$3RX!+)@TLDCVEW&[YQ-L;Y MU1#7$3<0-W$>MBH3'PV<0)6TI0=/8"EPZ>(=..O4R:1.)G4RN12X5155M^T: M[-!JU&,J29G87&),O&<_)CZH/[4'0P!3>Y1?2%U%[%%^[<0#9825"L?40-V8 M?(9-/L,FGV&3S["IC] NY&1KX':C,Y)G-/0LT=,.*^^.Y\J[MRI7:C!+#6:I MP:PO5(W"=ULG<.)DD',5/O :A???AA;4'<\%==],QLHYG<"FP(X"7[J$]EIY M:(G>4?@<:Y3F!D^DY08OI&H:EK$_D2,9R5]'VES/M/F=/*V UW@M/OO&N!RJ MPWDT1JH6*QWE,K6C-#\VBBE9\=%33,F*#ZGB0VI9-96QU&U]JLUY[Q8]%ZB\ M_O57Y)8LV#PDHS;3BK5]X\@&?N-(;R<^IYOZG&[J<[J9N" S-;8Z7]_ZO/E- MBX/.U])7& M7$KC&<7]@8K9?Y7=;_[&=<31ZE;AD5/:5:648%7A`Z-2!E&ECVRJ> E+DR55 MNJ&K]$%@+52+9<'K;QP=(+50?9:JC]:J+RWO7EK>O19KQ6*M6*P5VP)!I55P M:ZN M.!I;7V/7EOCGK79\FW=#.NPS; .%.72$H/K0 NT#GVPO[C2W7JN('83%M&$Q;5BOM.$=7$CC;5Q.NK^+BZ/O]A77>RK M;O15M[J@^\ [SYN+5V\N7KVY>/4^6$*!$E*'<7,YQ\T^VPX-J.W0G,\.?4A_ M(2F4>2$I`K"Q5.!63W"K)[BY[-EFGW%S`:K-19@V>E@;BROM9B^OOG$;:?=-.]T(BWO="+MW=>%#$:F2MWJP>VFWLMN&@+86"=C M=U1>K&NQM:[%[FI7.KJ+NVO,Y43:!:4+.77BN-Q=O:;=E=_NSO:OZ]V)$VE/ M=TYD'HRT9ZA?N >/)W?6:K;:PY[ZH6(7<)&-[*#;UQ'W$*< MW68_@4V!1,>VYB*V7F?9FHO8RK'VTCMN>[%=67R,,!O;VZ($>^-3[*WM[O96 ML[]9E)M%R8W2]F83O=4UOVB;3/T$HH-\0G'-XPCUQ2ZHG8\7U*1_0GFL5$+A MHK?V:75+3J3M]1.)A.>"ZH)VW>X7U ZT$\JB'Q:*/8&VE4\D3W_X0*<.="); M.9%H="ZHZOWT)9W*!*X'Y0I$#^F"ZN>7^"EQ;+5YFW?H]OELWR$<^[NJ>RG0 M/)$3::\13J2]WSJ1NNN".SI=4$M%7+7-Q.4]@7HRA9],X2=3!._0X"3S=3C8 M;R:O?O+JIUKG2->3_&3RO)^:RJGQ?M*LYXGDV7.8YJJWH4 =J/L0X:=]#)7] M8-D/UN;!VLR^1@Q7T:&W0"ZH2G0:-3^!78%H'"=2Y!.IJ\G.4W",(Z)4ZXK' M63Q.]X>BV'^(<@U9:AP6[Z3%.TEC&2=2^4TL%^FV1SHG,!28"L0-MRT:=CTG MIR5/]@3S4#W.@_=;AHXS>)S!X^3$[06=/%+=FIFXWU*3HB<2SZ-,WAJI?E#J MY:\3J3-J:A>R?3(C-8J)F:T3J*+G:L07%+E".T(?]T@D#-QO.5X:+M_;W.91M.99HZ8!M^8A+^^! M&-X(,)JZ>HU#7MS0+5KC%>4+_/'

?^-SO/J.L1_M)WXBV4IS30XG\#NP+- M,#]R MGDA4C,Z6HWNPO#OUZVHZ>E?>V[6=T8E4!?$`?/.V/E)TP6UB^T/J+EA MW6UGU[Q"UPX`%W(P MJF_=)YOWR>9]LEE+_$)6WQSI'0>&N8?GP8;>2!KAOZG9I<%49'AX8CAK&*YM>B^CQ;MN^9ZGJJ4Q#PQG3"UI="+1&9V')G3GP7H\ M#]:XZ9'PB6_%3^#DG\1EGQY??BXP>ZMT6A$VN"1L<$W8X**P\9>JL&\^K_[M M:Q75=T-5J_14I_(M4*?_OU'4J M)O[E=T#+7\V4W@$M3N^5)^W*DW;E2;O22P3%SV9J*+,K3^27!PB>2[/?NL)G M?70%6CJ_-&-4FC$JSAAQI?D3B:Y(>6"D_)+L<[7Y^\EK(H;KR,=K(?DWO]EQ M:WPC.R.7CE.W6V%O]0O)\D07M,H/N$67;'[5V;Z_LK/8QBX/PRXWG,MOQ*^! M92 67ZM:?*UJ\;6JQ8\8E]OM-5RBGL)?&@->;.JX@&XL?TBHY6Z#Z]W&XH<# MBWM'G%!]:KJX8UDL98=>^S66<[[E&=?E&=?E&=>7HK+]'JBVC,L.75!\#/): M6/8M5(6Z7:B;A:JE;4]@XY]$\6^N;K$]:7%".W]?UW0?O/O/JKG6LB]>RN:^ M`;94)!90O* Z_= *61=4)>5T?NME_ZUM%$XD>H]>PO:"3AXI"XK;BX67QHVM MD0(N`!O;KPQ[P=38GHW86HJ#2Y?&YAIAVUWC[3<4MI;HXBJ:)U*GY+[I]OL) M7IPSO#IG/)7GO#]*][,;>V]VIMX8_D;BC>&S.BA>2=Q>H6Q[A;+M=TRWWS'= MGN6QJJ>QU>'E&J"Q%ULR+W*Q/1NRZ2I)/M6.O(7AF\(3B"/,`R^XG4 3Y8E$ M45Y-IH4*_O\ALT"[_F;WWQPJ);7)>:A-SF.X/*2B>^ J//!. M2-ST7C PGZH`WJ[E4)WCHX/KY9U(G@Z[\R?T.8IU.WLLH9\Q?:2E$M6P<$:Q M[(ME7V["RDW8,JW3`R$VSWSSS#?[`FF>;^+3CDRN4I'I3G*JX4Z]"G(B43=3 MZ\>>R,7CQ+5,-]S)L; +:K&P?*Z;]@[8^"CK'K9P(IW?I&2W M0,*@2APYU)X-MF>#[=G@0,++2[E[^3P]?[L=)>C#&14PZG-V>GK^HNE0)UU'@I,71<53W8%#@6J M'%/EF"K'IMK35#Q-M:?IK)O.NNFLNVI/5^WI*AZY#/<`_G8-YBVPU$+51J!< MF7L`?YO1=T;J8'.6C-2->/7%0>3DK_/!<*C<(PY&!B.3D7Q !$L^6/+!D@^6 M?+(\D^7)!TKPB1+))VZRE)*EU%A*C:74>!/:6-+"&L L4[ /%.G1&BZWWXKDO9TQ+Q[D3;4BR%Y1/OLT;)'LL M&:I+R00TGQCHNW&JAB1[%\G>13I=99\AV6=(]ADR64KL721[%\G>13(;3?89 MDFEFLB>0W:,/`WV&I_OE9XSQ;\CD,ZY#-N<;%82B&D#]:] WQ\N-VKLYG(6" MVA3[,K?^9K&W?2&W(BTV9'%ON1M34T?B%Y[L5S+]:ZXMU1O)HK&IS%?F2Q'UFO/M^; MN3_%B=Z,L_-J/IUQ[WZS\6^R/)].P^,>.4A#UO%HA/#O<:Z0E.IJXJ6=;VYM MO4_D9&0I,BT/L%X9\)T_?I"S^]Q-^C8QW;^0S9_=Z0[+)%V]W(BPO'1]>P_% M)-K9@&E:-..;6/W:9BOYN35] TW>34GKV;Q&A6O4?$: M%:]167#H1%+(X$1B[OQ$+K4VFZ6T64J;I;19/S?KYRZ5?!P\4$WS7]#I`UC^ MJ[Q%--5_0<.AZ5"7:[A<8SKTMPZ\.>N?<^['.^C2_:=9X@O*>Q6C80^HKU;W MU>K=H8/E.GQ:PZ=E=.4!=0XGOH6Z!)8?<=O5Q3V< MI^ACO*$*Z2PMG:9I2O&"3O]5Y[-.P-(96/JQ\9R"? ME)7PNA_4..@Z'ID-- M`M^"0HOQVOCO'?0J`(%03+^?3RQ,6\\6/XA\J2UYYV.=E7;)7'X#[=MG[6 % MVA)]`[<"X]!O1^J\T;6^ZAO;DY7GO@SOOM[XZZC&)Y(%WUCRG26/+O6);*R; M/'I//N\;_2R>>_'<*U7RU?DW!SG\U9^" M/K?AR\N&'&YNPJ'IT,;0\%^-#WZU.]2M8_#!H.\'+J@?#FGW1:N_7/=_"X77 M[OUO1>W[F[&FZ\!SNKV_@T[=+T_)\;=C35;"3)]6=H<.-:N9;/_U6N0%#8?Z MM/SLUZN1%Y3WUG.-D3MU.3.\OX#S#=!\I&5U[A_(?C#2YGXBMR*1Z9Q(._U/ MY."O3_Y-GM'D&O\]PQVG8BBY%+9U3\]>*O%^MG\6JN@Y'!2%[WQ>N^ M>-T72WZQY!>O^^;=@:F^$]D8.72_;YZ1/OV]H#PG=6,O:'?H<.BDM\\G]+?# M>5Y8OH4FZY0^\/1;5Q>T^6HU7ZWFJ]5\M9JO5IL.]25HO@3-EZ ?#@W=L)H6 MO*##?Y7>F%S07V['E<[[^\,5NE)W%;"449Y FOD)' J<"BP%+@5N!5JX\E$) ME'^SJ09]8-W4--Q=I9\ MYQGUI;HTDI&\A0?OX=^7"=H;>9HS?"%3I;18\HLEOWA&>$OI`75[$\VAW:'# MH2PKC"L^H&[%W3QB$9,'-/UP<+FFRS6G0\NAO@3I2]!\"9HO0?O@U/5=T'RU M_/!!]_D!]=5JOEK-5ZO[:G5?K>X;QDI\/: N@>X2&"Z!X1(8KJ_#]76XO@[7 M5S_=PX]WO"SX@/IJ3??3IROA[ YU84T7UG1A31=6N;#*];5<7\OUM5Q?R[V, M8O<^EML!=TCQ8N,#ZG)U[Q7?23^@Q7QUNV9);>L_W):NHS_(+3WRO*#)2_"4 M$[U[4??@S*Q9Z2=,^@F#=_4>4-N&L>3YZIGB#F-T_D MDV_Y9CJ-AXEQA6^D7=>ZD,G(SLC)R*5S1^?K&SEX[H/GCLI^(@9"\MPG/6:Y=F;P'DY)\ER;F,>Y>(T6:_)B&[+Y-S?OCLV[`Y.!#VCZ MKS:'=H<.ATZ'ED.7[A(-J5U0%U:XL,*%%2ZL<&'%D M8:H+ZGMKN&8-EZN[8.$^V'.8ZMV&&;X$PY=@^A),7X+I2S!]"9X\P7?Z.GW' M3C]CR\=:KB[EZE)NL\HE4*XNR]5EN;HL5Y?E2["8,&I Z8*Z7!>S(7S^^H"Z ML'[?^[NM_YKCT:+:^ -6P'M PZ&IVS"#C6:Z3YCN$Z;[A.D^H<;T+FAS:'?H M<*@O0?(NP"<1#ZC+U3U-? 3^@':?UO1?+8>Z:G??W/V#7_4-XXY>NJ.7[NBE M.WH:6,Y)MQ2_]52WX 6ERI4/Z.)?Q7UU0<.AZ=!RZ ?3V@SM+H$1O 2H51?4 M;&M[CMS?1AP;-AP\@:E N[?0GB^KMC=CM!AWTUZ"%W(Q8IMQ!LD]>P\D<@43V3IW"=+OGCNOPGE MW+.&_&8GN=Y9!E90C:PVO]?8_+)BXZYK#ZA;IV3SI)'5 MQIW7'M#N4)= \].A^\+V=&AS:'>HJTOWLZR70Y?:@,!K\,UORC6_*=?\IES; M6E;OX2*XODZ?EI\!S\'"=ZI=KMKEJEVNVN6J7:[:Y7:@7 ?*+>'R8V/Y$BR7 MZ^^XXKM#&]M?/*"^!-M5>Y?J:QY\PN21[E8WAW8?P/1?+8Z=9'W"K[$HP$F^X75#7@>8ZT%P'NNN >T3I'E&Z1Y3N$:5[ M1%@&\@%==(VK^270WO\=JWODF./?"9,'$*Y;_?PB;*D?Y"\MS;A'2N#S!]D8 MV1DY&,ES%\_R![D8N14I2? ?9/R[D,,#^3L(\'5^.OBS_P@64,6:\B" MZ. /DG?'9@W9K"%2F>1GQQTL>JK%]P>:#FT.[3XM>$CP`PT?JSSH_X&FRS5= MKA+:^0/M_JO#H=,'\$L)\QU4GG_]@;H$IDM@N@2F2V N_]6MMI*(X@]4^G?_ M@?K>6GZ>KW*H"VO[WMJ^M^1%TP-*O1)_H'$XE/4U8SAT.K1\K*R$S]SGW:_* MG> _4)= N@1^/[-O;[9A]N*Q/N7^;]W:_85[^]L&T2V!<46@J(#J>5F+\JD/ M8%?@("FMYWSJNS$F(R?MZ/52K::_06X6T<%(%WLRLC&RZ]S[Y-\L1B[]^F!Y M#I;GX'4?KO&#D5,U>?+<)\]]LBY-UJ7)NC19ER;K$OI;)Y)W<;'D*]34%4NI M6$K%4JK%)IEU:;$N+=:EQ3MN\8Y;4R6_6)<6Z](^].N;[=+NNIJ;-63SW#5\ M<$'#H>G0YE#>=M0:\0_T`V&QIE!KQ#]0EVN40S_PQWRUTE[T.$^=+@3'>Y%4\6K/U 75G=AN7\< M[B#'<&$-%Y9[T^'N= Q7[>&J/7RUAJ^6>_3A+OU3=#3?64)W!^(#?V"S!.BV MQ1]H^J\VAW:'#H=.AY9#F2:GNP[IK@/=MO@#=;G&H#3-";3DI=1?Z"+5PL-_,ES_@_,NVL)EZGX]^V%:Y<*;!KL MJ>E.:_= 1]AM.4!#8>F0YM#NT.'0Z=#RZ'+H;Y:21[+`\J[+_QPPG#/ M`^H+VWQAFR]L\X5MOK#-%[;YPG;?AMV7H/L26"KT`9T.70P=+H'A^CI<6,.% M-5Q?)]T$O:!UL+#<50GW5<*=E7!O)3O\/9W\&:E>X\I3M/&&]Z0+M#IT-=6+$E M-'5!/P@4?! I^" `D)37NZ#NYJ2[.>EN3KJ;D^[F/#^%>J<#[KND^R[9?1>X MFY/NYM#[IC]07P+WB+(C)5^_`G61MZX^WER\RN;;*/&*XVO'Q#>_N/07MP+M MAN-IHH,&^0TT-?H&=@4.!4X%E@+I%=+/G!DA\L^<&2'RSYR9*?+/G)NV/R[GA*++VQ(<4S*IY1 M\8R*9U2L=<5:AVF8$\FZ5*Q+BT_#Q7/_G03J;Y"_TQMOO8N#/Q_'<*@[+8=[ M+<=BG])]C'#7(=QW"'<>PKT'O"3Z@(9#^7B@HF1_H"Y7]W4TOG]!7:[N&(5[ M1N&N4;AO%.XY1N'\4[B"%^SWACD^XYQ/N^H3[/M1$X@]TZ;G^_( \ MWT%]":9O&/)YB,N/R#'R=/2*.P) M]6-#0ZL7U*?5IFZ8=%.<;HK337&Z*4XWQ>FF.-T4IY/5' ?KP* G]&;)5=FI169+B3+ M<[$B+=:DY:JT=&-L7O?=&3GI0FN$\L(^W&P\C MO>&^=[CO'?I Z['U?0F&FY[1'3IY8:?;T^D&=:9#FT-=`M,UJUP"Y1(HET"Y M!,K/G_(#2&-[876._T!]PVAX[Z5\U?UIV9]YPJTI;@T]I&]@*K IT(ZU3-W36-< MT'+H8A,:+%-]J'%!NT/=B']@Q<.%%4OU#PN;/J#A4%^"]"5(7X+T)< XWP5= MO O\D-#' M&L<;:/FTRJ=5/JWR:2W7K.6:M5RSEFO69[FFF>YKIGN9SUYXW!Z>^%+F@/JWNT^H^K<['1@X? MP/ !J$LV-5@W-5@W-5@W-5@WG]*9\68R_.UP`0U&3D86(Q._/@/H>(V* MUZA8DXO7:+&4%DMIL916T_-]L2XMUJ7-<]\\]\USWTU/KLWKOGG=-\MSLSSC M.!P:#DV'NA=XL ^*!%> M)V>1IF>1)M^RNZ"^!.ZDQ@Y8AWO6X:YUN&_]?,VOO8,R^PMWK\/]:\ZC3<^C3<^C3<^C32XB=D%= M"=UU#_?=^:+CY+)4%W0XU"-D'X3(W'=)]UW2?9=TWR7==TGW7=+C=.F!NO1( MW7,)K7>!U\Y><;KO\O3.ZSYN4IH6*$T+E*8%Z@MC>O4U%8BW0^M+4V=G\3I& MLH221:1VAZOA-ZZ&W[@:?N-J^.VE&GZ\0?[2X=CWR"=OXGB#Y!DM*Z+<7@H\ MOMMLSRG;> <=KGB^]HF6J=SBEUO\UZ*)^0[JTVJNTYH<>:U9^!;JF[\WU@%- M+Y>GE\O3R\7IY6']1\ZY_@MVI97_[9?-Z_7IOW^L#T*5H :]";YPX+%?N(Z_ M-Q W$0=U_Q[SA;?MCPFG2J8I4&63*IQ4Z<@)^0`N!6X$-M6PI@)O+$=I7S2O MVE?_WBO?G/7Y9'@"4X%-@9!F> "76(AK,@,<4W]S%",7([D5/]!]H<"AW! M_T!=6-V%U5U8PX4EA6U^,L9PBF;#4S2;.;LGL.LO#@5.!2X%;@7&P4B6))K2 M$]D8R5(/%GNPW*,8R4L4O$9YJ&HF2SY9\LGR3)9GLCP;:UU+.NOS^?G]K>?6 M#C0>C4K5/X!+@5N!P8/$?7DB&R.[(O-@),\H>9SIXQR,G(QD_4A6D&0-D3KY M/TB>4>,9-9Y1XQEUUJ7.NM1Y=W36NLY:UUGK.J]1YS7JO$:=UVCP&@U>H\%K M-'B-!J_1X#4:O$:#UVCP&@U>H\EK-%E*D^<^>>Z33^QB#2G6D.*Y%VM(L92* MI52L(<4:(L6Y?I LI<5S7SSWS9J\V=ILUJ7]@;_DCIU;T' 3&FY#PXUHN!4- M-Z//UR';.ZC+]>DY3KR!^H8.W]'A6SI\3X=O:KKA]P?JFK5X9T[\J_D!'_N D&4ZU,G;!^SM`_KV`7_[@, Y M+\MF@9UVV!7#/]"F1C.=[Z43OG3&ET[YTCE?.NE+9WTIKW?_0*;)!=R,'+^^\KNCW8NUN.M MR,&2'RSYP9(?+/G!DA\L>8RTG,A%Q^(W5$_SB_GV)]?[<_P;. M3E_>H>NW0V_F?",#+X3MTC#(27VH_<6\J(]-ZD0^^:CWT,0[3"='VF5SPK+% M/U!C5!?4#O8'=!JT/YWL]_,?+Z_8[U:JPXZ['N'\&Y1-4-^.!*C;A4O$-<1U MQ/W>.G_W2QX#A,8*CR_#;=@+^$O!;\S+SQB7(G^9P'ODD-7KPR[R76Z+G#8/ MO^'?'UZ$VM,.KGJ4&OGW#UY%U0'V]"#A_K,QR(C7HP@#?/DLE$1*MY%DA^.E,NQOE]28/CJNP4RUHVYSW@&T- M3R0JQA45)>!KN/=6.BU>RECG/92*MSZ>]IFYOZ*G(,^GQUOW4W\YDMY _VO: M^NVG!S@RZ[JA\^^OKD@J3.OW5:)/OOWTQ.K^ M]\I>=SV0PK\O))FO?97\^[>\]Z$[8-O1>P'])W%I-G9<^T8.W3![ZR:\2NC) M,,\">B:D.(;.*(["G?WB7-]^/8:Y__O1?@>4&=?[D%RK3&0Y-\W8?4#1@9U$MU)0R M':TB2KD?]T=HC*NQZ!>KT^8MLB?;L/V!KX-FY 3:0%,MZ-4(A(#?MJZ1_3R1 M9AS.QAJHG"B5D,)NQ4=5OX&\K\/>H[05;!H/W]!<. MMO6%@ZWR^"XN!LQF'7W'Z0:/0;#K+I(-EP13?%B2Z.P .(1U/7PQ-;L#^0XM.=2+2; MWSC;,3%TW@,-Q"MOOUWNP0(:+*")&[88AT??B43%*-YA"T>Y>)2+9;Y8YAM' MR6:70MD/''I8ASH2)[)W1=J")_O12:=#)J&>`@3]'F=>8#8T`=E4'=-:\?X@ M37&SJ>)F)SD.0LU_IJ/B\;;]_ZB\0[4DU!14_\]6>J3,_HI"0_,21;RG#$L] M\H[FHV_^]M8]?")M#_>M>WB@\1K*_X<&``9[H8/LS$A;F<$$=B"#'>P)CHZ_ MV/D7!Z[?0+OY_3:3(P>%8RQT MJ4>A4S)*/>51'%=!0SX6;XI>J=2]4LR1JYEV M54/M*B73Q2:TD$Q7US%V'2,;Y2(GK-#>U-293)V)!^2*9D+ALZ>W$[=6H;9: M[(6YBW6@!->!%GL=>$JN0U*D#^#3RXEW2+,1BTG?8M*W`F4>*O- K5VA)] * MGDT*$5I$O1;M^H4QGS5YME-]H87>PU+O`6]D/9#25^ '.9*0RWQ?NRCP`)I+ MNSB$M19O00YV+0YV+4Q9?.-PXELGO@_961M3!UM3!YO9W6Z4\^DT#=S4FP_> MC2'?S6[YYD#N1K=\+_[VXF^3`W\U`198:$:,SY8+B@'QIWL_]S'I0Y/T<7 . M[4C/&S854W,Q<0CTA&KP_J#M&(D3TM3.4;ZPR@.'&G[.S$_35Y>6(0]+,0>%F/_=<_W/N0=_XV?OX'U_TSA$4S_>][Q M()@RU"@-B9W(OA2)EJZFISVGYSTGV_GB_*QOXEJD/DJ!@SEP+,U3QCK8>KY6 M1'CW?;6>R_;_2H,U@W6\2;+XFL;J>E]A<1 JUM!Q#D_(Z\&ZIH]3=\_RW;,H M*AM*/\X_X (Y`8F-.>\3:'<]+Z1^W4Z[;:?=IG,]#S17)Q"OK1Z:F3R1>"7@ MX!#;!9T\)[U9<83>*0F^5,(4)U\HSIMK)?%U/C55*%YU..S.B/*6=-Z21_-% M(C*2AUVV.)8N^6*%7ZSPRP6T7$!;I\2W)5(ON>;3W=4WOVC*%ET_S$=T!A[1 M&4.W.;Y$O*#3)EX&6RH?US6_`)A^`U#J*L1/P5T:9?()E'P")=^.2;V&1R0X MTXP:WB"S*V1I=\C2+I%EI^#!57568":WKN:ANWGH>('Z!**WU-G7OZ!XW;'C M0Y5?=3#NPACQ=0B(?DG"3?'[!N\]BE;XPM$"!UW6C*\DX5XX.2,NH ZP:( + M!8.&_X$4'R.^J$[-`X?"V3S(K8-LAXBQ):$:H<"*Q^]+N6\6KDV52<,@^86D M\SJNUE4PXR4S[K02_='9 MSH4=O[\RO.]&..W7;,DZ;9_X[PGWCI,1W0JSJC%M;&8QPTSF[[3K_2JL-)@9 M@4WBS8/L^7.*X19&4Z!8>#S%PM]\U'CG04N?9CPI'!H6#HVG<.B]0##TD";> MG 8SN35;^M:1@C?+AS^0$B=](#66T2S:8B=%=CJ>TBQG#A/UT!#4Z!S%&)UC M+0,DF%\4-D\L*)584"JUH%1J0:G\PBLK)Y H=G[1VXD3UM)PXL2=.!1-J&A" M11,JFC31)(HF4;L2M2M5A*DB3!5AJ@B;B;"A"!N*L*$(FXJPJ0B;BK"I"+N) ML*,(.XJPHPB[BK"K"+N*L*L(AXEPH @'VKBAHADJFJ&B&2J:::*9*)J)VC51 MNY#IYU?9/ KG43B/PGF4JD*I*I2J0JDJ+!/A0A$NW"5+1;-4-$M%LU0TVT2S M430;M6NC=FT5X581;A7A9C_S0$?S4$_S4%?S4",283PA`A)@QSC8,PYVC0-]XU#G.-0[#G6/`^^H/I!;1ZD" M0L\WU/4-]7U#G=]@[S?8_0WV?X,=X$ /.-0%QK*7J64O\[7LY5ODU.FH*-EA M#O280UWF4)\YU&G&NO4_R*G345%.%B4Z[:%>NU7A?P!50NR0!WODP2YYH$\> MZI3'4F5;JFSLOP<[\,$>?+ +'^C#ASKQH5Y\J!L?[,<'._+!GGRP*Y_HRJ>Z M\JF!]]3(>W+H/3GVGAQ\3XZ^)X;?4^/OJ=0DE9HD4Y-D:I),3=*C]1JNYW@] M!^PY8N\A>X_9>]">J4DB-4FE)JG4))6:)(?NDV/WR20FF<0DDIA4$I-*8E)) M3#*)228QR20FF<0DDIA4$I-*8E))3#*)228QR20FF<0DDIA4$H,//?+UH<>[ MGU0),3=)YB:)W"25FZ2F%%)S"LDD)IG$)).89!*32&)224PJB4DE,^^14:;.O.-G?G&SGQC9[ZQ,]_0F6_JS#=UYILZ M\XV=^<;.?&-GOK$SW]"9;^K,-\U(-,U(Z&O=Y->ZR:]U\_FU[CL<"DA]^::^ M?&-?OK$OW]B7;^S+-_3EF_KR37WYIKY\8U^^L2_?V)=O[,LW].6;^O)-$Q)- M$Q*-G?[&3G]CI[^QT]_1Z>_J]'=U^KLZ_9T3$IT3$IWI06=ZT)$>=*4'75\$ M=/;Z.WO]G;W^SEY_QSQ#USQ#USQ#USQ#YSQ#YSQ#9VK2F9ITI"9=J4E7:M*5 MFG2F)IVI26=JTOV50+>KBYWO__,#`'\!X$\`_ T`,XZ.C*,KX^C*.+HRCLZ, MHS/CZ,PX.C..CHRC*^/HRCBZ,H[.>8;.>8:.Y;>_D<@XNC*.KHRC*^/HS#@Z M,X[.C*,SX^C(.+HRCJZ,HROCZ,PX.C..SHRC,^/HR#BZ,HZNC*,KX^C,.#HS MCLZ,HS/C&,@XAC*.H8QC*.,8S#@&,X[!C&,PXQC(.(8RCJ&,8S#C&,PX!C.. MP8QC(.,8RCA&JH282 PF$H.)Q& B,9!(#"420XG$4"(QF$@,)A*CJ4,R,',Q M-',QE$<,Y1&#><1@'C&81PQ_3*ROB?DYL?*(H3QB# VW#W]1S.Q@(#L8R@Z& M7BX:[/0/=OH')R0&)R0&TH.A]& H/1A*#[2W=OZEM_:;WU0!H=,_U.D?ZO0/ M=?H'._V#G?[!3O]@IW^@TS_4Z1_J] ]U^L=F76-7?K K/]&5G^K*3W7EI[KR MDUWYR:[\/-1WF.B@3W70ISKH,_3E]D07>:J+/#4H/S4H/_D6T&0/>;*'/-%# MGNHA3_60IWK(DSWDR1[RY%#[Y%#[[';M:[)#.]FAG>S03G9H)SJT4QW:J0[M M5(=VCI<4(Z$U/]::G>M-3O>G)WO1D;WJR-SW9FY[H34_UIJ=Z MTU.]Z4HIAS%E*,P?%\:OB\-WY>&[XO93C';*68[Q6RGD.V4LIU2ME/* M=HK93C';*68[Q6RGD.V4LIU2ME/*=HK93C';*68[Q6RGM'XI%S#E"J9Q@(3M8R@Z6LH.E[& Q.UC,#A:S@\7L8"$[6,H.EK*# MI>Q@,3M8S Y6UPSF0I]_J<^_U.=?ZO,O]OD7^_R+??[%/O]"GW^IS[_4YU_J M\R_V^1?[_(M]_L4^_T*??ZG/O]3G7^KS+_;Y%_O\BWW^Y:T+M'+R<%&]D'[ M/KC[\,&=V0YNS78$=\$ZO.7:X3W7#FVZ=G#7M8/;KAW<=^WPQFN'=UX[O/7: MX;W7#FV^=G#WM8/;KQW!.WP+FB'MT$[G!-P3V-O:AS,"8(Y03@G".<$ MX9P@G!.$3EV#R\D%SYP^Z.W_0WOF#_L[[XWN]K%.;B-LCFT9W-PT^;@KLW!;9O#^S:'-VZ.;&[VE&=P1^;@ELS! M/9G#FS*'=V4.;\LN^D\=:6]A:7!FETIBI?&HV^@W3X]##8-5@8SG7GJ M.'<'Z[9D3YW"[B77^7EM//76NM?JKA7LXZ47UINO-YNX:4(W37CJI?-F(I.G M/'W*I8OH%JR;-G:U8'WSQ-TN#5/R879).S0$MV@([M$0@U]+A/=>"&^^$,/V MS<"ZJ?'2"> -U#;9,',[S-P^52=_,SH/F[T6">]O/L^+Z&&SL752V]7-HU'3 M]N/40\=+1\?40V?REIP>.)@>.'BI"_UF`.H!3?> IIU[6DXXN)YP3+XS]U(H M^,UT].#E&KS!17AC^D6T.7W5S7Y-.Z"G'M"3#^CI!W2902@[H,N(0]E)5K83 MR@ZGLL.I;'%+#Z>7(E1OH'HVE*_O4^6DMT#^35.&IRH^;W[/S;@7TXGE9ORI M2,Y;(&Y!+VH37M4FE@=@EVV>99MGV>99RG.6\YRE.^VE],,;X?A]SJ6;=MIK<_H8K,ZY$'J MD$<8+ V&B:SDISEYJ'7,H[EPNHZS\S@[C[.K2MFG*?:> M:9J3JCGIFI.J.>F:DZ8YB4\',]E 9O=!8L B.7V=.7B%DQ+"V8;.DC6G.::8]G&M&QC6K8QFQZLS0]6 M2TUFQQM[)Q!W=-=BPNGISNRZ'3R)F9;$3$MBIB4QLYN"=5.PKFY>=S>O;U6) MS2JQ6258+6)VB!@E8H:(GL-=&%$^MQ`<5X7$!=A[*%57+SC21] M"E2H8(U*TJAG$G0GP0P4=6*AGP=2PG?G\T>:2C,19F,1DO(G*7^2@4I4OV3U M2U(_82C?)OVPT;5#=: =J@.-3%^SHPDUI;&F--*4-O"[@[\[;?LVM92-+66C MP[21^C6T?HVM7R?K9]C;;/9M-ODVNYOZ M[X[JOSL/D"SZKZM*MZ?AMJ >G;^_JUCW>U@:C!R(WQ4:[V$8^\/@7W2:0DS[ MM3+8HH_^BF_="\1B.&%!G-^OC]^,;6&D,Y>&.G/AV7LB[? ]D70M[P4YT M5^H!I;M2[>6M[EN@BG2S2#>+=+M(MXMTNT@WB[0=*-)VJ$B;>H@G$D7:#A9I M.UBD[6"1ML-%&BK28)$&BS18I.$B#1=IN$C#19HJTF21)HLT6:3I(DT7:;I( MTT7:5*2-1=I8I(U%VERDS47:7*3-1=I5I)U%VEFDG47:7:3=1=I=I-U%.E2D M@T4Z6*2#13IVK.GIJSIZ;LJ3%[:LR>&K.G MYNRI.7MJSIZ:LZ>N[*DS>^K,GCJSI^[LJ3M[ZLZ>NK.GKNRI,WOJS)XZLZ?N M[*D[>^K.GKJSIZ[LJ3-[ZLR>.K.G[NRI.WOJSIZZLZ>N[*DS>^K,GCJSI^[L MJ3M[ZLZ>NK.GKNRI,WOJS)XZLZ?N[*D[>^K.GKJSIZ[LJ3-[ZLR>.K.G[NRI M.WOJSIZZLZ>N[*DS>^K,GCJSI^[LJ3M[ZLZ>NK.GKNRI,WOJS)XZLZ?N[*D[ M>^K.GKJSIZ[LJ3-[ZLR>.K.G[NRI.WOJSIZZLZ>N[*DS>^K,GCJSI^[LJ3M[ MZLZ>NK.GH>QI,'L:S)X&LZ?A[&DX>QK.GH:SIZ'L:3![&LR>!K.GX>QI.'L: MSIZ&LZ>A[&DP>QK,G@:SI^'L:3A[&LZ>AK.GH>QI,'L:S)X&LZ?A[&DX>QI- MG[L\%WI]\YM,B093HL&4:#@E&DZ)AE.BX91H*"4:3(D&4Z+!E&@X)1I.B893 MHN&4:"@E&DR)!E.BP91H."4:3HF&4Z+AE&@H)1I,B093HL&4:#@E&DZ)AE.B MX91H*"4:3(D&4Z+!E&@X)1I.B893HN&4:"@E&DR)!E.BP91H."4:3HF&4Z+A ME&@J)9I,B293HLF4:#HEFDZ)IE.BZ91H*B6:3(DF4Z+)E&@Z)9I.B:93HNF4 M:"HEFDR))E.BR91H.B6:3HFF4Z+IE&@J)9I,B293HLF4:#HEFDZ)IB>4IB>4 MIK*GR>QI,GN:S)ZFLZ?I[&DZ>YK.GJ:RI\GL:3)[FLR>IK.GZ>QI.GN:SIXF M%\3QBCC,GB:SI^GL:3I[FLZ>IK.GJ>QI,GN:S)XFLZ?I[&DZ>YK.GJ:SIZGL M:3)[FLR>)K.GZ>QI8I^@'VA-AFZ>/TM?B=9DHC69:$TF6M.)UG2B-9UH32=: MI42KF&@5$ZUBHE5.M,J)5CG1*B=:I42KF&@5$ZUBHE5.M,J)5CG1*B=:I42K MF&@5$ZUBHE5.M,J)5CG1*B=:6NTDN-Q)%!.M8J)53K3*B58YT2HG6J5$JYAH M%1.M8J)53K3*B58YT2HG6J5$JYAH%1.M8J)53K3*B58YT2HG6J5$JYAH%=<> M+:=/Y?2IG#Z5TZ=2^E1,GXKI4S%]*J=/Y?2IG#Z5TZ=2^E1,GXKI4S%]*J=/ MYEK*GQ>QI,7M:S)Z6LZ?E[&DY>UK.GI:RI\7L:3%[6LR>EK.GY>QI M.7M:SIZ6LJ?%[&DQ>UK,GI:SI^7L:3E[6LZ>MK*GS>QI,WO:S)ZVLZ?M[&D[ M>]K.GK:RI\WL:3-[VLR>MK.G[>QI.WO:SIZ>:PC?1BQW:FSSM=SP6RB^?=G* M239SDMUX2LVGY,]YM(YR<"'EV-T'VGV@0P*##!SI\H%,'RI'Z/7V@TP=: M.M#B@;H'M]V#V^5S4K=LLUNV%\]^^3(MGY*Z19O=HKUY2MNGM+EMVH%NR0FT M*9U([ -WR%<0)UH,T' MVGR@767?6?:=I]1]2MVG-'1*@Z>D$; 3R5,:/J6I4YH\IT?4[N%X3Z!<%^0;!? M$.X7A/L%$3JEX"EYR]L/>MZZ`Q%(UT^@#M3=@G"W(-0M"'8+@M-]_W\ZBU"= MDWH0P1Y$: [O1%KXZ43R@KJO$4,7=/""N@<1[D%H1_'DEN+)/<4SID_)W8(H MG5+QE-B!"'<@PAV(4 _3EMZG+9N3 M=6V^EMQ\+1N[$,TI>',*WM3;:$S!FU/PYHZ!MA1+;BF6C1V#YA2\^6G?]+1O M?-HW)];-CW!ME)7<*"L;'_9M^93\!&_*EAN?R\W/Y>;GVW/FT]59-Z:V: MLOMIVS6YWOT,[7Z&=CU#.Y^AW<_0[F>H=@!*[@"4G4_;[AGS[D>H=N!)[L"3 MG8_0[D=H]R-4.^ D=\#)SH?M2U^;-YM)3U!N*Y.=3]#N)VCW$U3;NB2W="SUAM[I#?V MR.%G[5!F.YC9#C^5AY_*V@,CN0=&#CZ_AY_?P\_OH1QX\*D\_%3V)A"I32"2 MFT#DX%/96SNDMW;(X0?X4 X\^%CVW@KIO15R(%W^/I7%P3YA3\\__EYT<'[A MF[OYA0?(_-I??\QNY3-K/B=?[3^^O17/6=.(W MLC'2GLQ>0%0*#9]\(\G[F5\OO8[O)&1.[X5#^7RKK2U.Q^J?\^NE9\L;X)/( MCQM=&ZB3KWT#[K[]4IWWJG;U5V.!%NW;6H2MCA6/^,:I[KX\%[DU/TOMU,8U MC*/C(..8_)N_EWO>_6(<^NWGRW:W1BV:FH'X-I27PL*$GI+ZMQ/*ID=B))J" M2"LO\$"B.)\RAM?^N .J.-NAXVR'_VBIU0H-M\Z_-.J]_='7QG%OH7B6/SFX MM^J$?;;F7YI)W/L1J2;V+TT*[J%+5>^L%]WM^R^U<-\A=5):$W->)XI9VZO6 M()H2/3RX]L_DHB[SM;#&_1YY>HE^ZQL^7^\];MW-Q3[?$>IQ'H$[^?=[COYU MZ\(>9AGSY>RZ]XK#SJ[G&Z.W:W/>&FQD/\^[>(XT'7J]W_<&VE#=\@-&@'>M MIE_DF"\W&>[6$E/I#R2ZG<]9[WM-:M/*\L_71.']UY]2>O<_^9)2>PM%>_R< M?7LSSO#?[,KP.+,RKQ@S#V"K3#=Z_B?2#J,<;)F&$_:7L-B-9;Q2(']@C^S! MWT!+Y'/"8AI.I'CB1(8G3AR/$[=P'AOG\;0>;X"]JP15U*5CW"AL\HDN8.)D M*/I67_L+8:9>&]5KHWIM5*^-ZK51O;[G&S@1U,.M>KA5#[?JX58]W*J'6_5P MJQ[&\:4XT\0X4!6_@::+ST]8WP&73F;K9% ?7U[/OD7VSC+GU2F>T=89H5;& MH6IY(E$OXTMQJ)>A>AFJEZ%Z&:J7H7H9K)?!>AFLE\%Z&:QMP=H6K&W!VI9? MBD,E2E6B5"5*5:)4)4I6HF0E2E:B9"5*-F[)ZI:L;LGJEJQN[4MQ:-R:ZF53 MO6RJETWULJE>-M;+QGK96"\;ZV5CO6RLEXWULK%>-M;+_J4XU,NN>ME5+[OJ M95>][*J7G?6RLUYVULO.>ME9+SOK96>][*R7`[5MJ+8-U;:AVC94VX9JVU!M M&ZQM@[5ML+8-UK;!VC98VP9KV_A V]0*SB_%H5Y.UCE5+Z?JY52]G*R7 MD_5RLEY.ULO)>CE9+R?KY62]G*R7]:4XU,M2O2S5RU*]+-7+4KTLULMBO2S6 MRV*]+-;+8KTLULMBO2S62TR5A.9*0I,EH=F2T'1):+XD-&%RSCIT-JJ7G%P) MSJX$IU>"\RO!"9;@#$MPBB4PQQ*:9 G-LH2F64+S+*&)EM!,2W"J)3C7$IQL M"62FG))3;FDIEQ24RZI*9?4E$MRRB4YY9*< M62 MG'))3KF3D3&)R)C4YDYJ<24W.I"9G4I,SJ2DS/)R9D3B7J):9S4-$YJ&B.DIG&2TSC) M:9SD-$YR&B3L3')V)CD[DYR=2<[.)&9G4K,SJ=F9U.Q,:G8F-3N3FIU)SLXD M9V>2LS/)V9GD[$QR=B8Y.Y.ARGO4 M%-0\_ETCXQN5A,* ZM2 ZM2 ZM2 ZM2 ZM2 ZM2 ZN2 ZN2 ZN2 ZN2 ZN2 MZN2 ZN2 ZN2 ZN2 ZL2 ZM2 ZM2 ZM2 ZM2 ZM2 ZM2 ZN2 ZN2 ZN2 ZN2 MZN0PZ>0PZ>0PZ>0PZ<0PZ=0PZ;3B-Q<0E4BCGU.CGY.CGY.CGY.CGY.CGY.C MGY.CGY.CGY.CGY.CGQ.CGU.CGU.CGU.CGU,OL4^]Q#XU3#HY3#HY3#HY3#HY M3#HY3#HY3#HY3#HY3#HQ^#DU^#DU^#DU^#DU^#DU^#DU^#DY^#DY^#DY^#DY M^#DY^#DY^#DY^#G7!]JF5A"#GU.#GU.#GU.#GU.#GU.#GU.#GY.#GY.#GY.# MGY.#GY.#GY.#GY.#GY.#GY.#GX7!S]+@9VGPLS3X61K\+ U^E@8_BX.?Q<'/ MXN!G.&\],)YZ87STGODI??(2^^1%]\C+[Y'7GR/ MO/@>>?$]\N)[Y,7WR(OOD1??(R^\1UY:#:CTPGGIA?/2"^>E%\Y++YP77S@O MOG!>?.&\^,)Y\87SX@OGQ1?.BR^<%U\X+\R/E.9'2O,CI?F1TOQ(:7ZD-#]2 MG!\ISH\4YT>*\R/%^9'B_$AQ?J0X/U*<'RG,CY3F1TKS(Z7YD=+\2&E^I#0_ M4IP?*#%VK\;NY=B]'OL'!=D_J,C^0:'U#^JG?U 6G:N=>[ES MKW?N=[5PKP+^ M07'O#VIV?U"*^X,*VUQBVTMG>^UL+Y[M1;$_J'7]0;'K#ZI=?U#$^H/:U%QR MVFM.>]%IKSKM9:>][K07GOZ@\O0'I:<_J#W]0?'I#VI*?U J^H-:T5PLVHM M>Q5H+P/MY9T_J-K\03'F#VHL?U ZF2LB>Z5C+W7LM8Z]V+%7._Z@B/$'M8D_ M*#G\025A+A#LA7^]H*\7ZOV@_NX'974_J);[01'<- +Z5,OL%C8,9CSUJ1+& M+6P3[.F=^"TL#)8&:P8S?M^F_5H9S,3;3+Q=^U)V;DS9#WR8="*M_LV)_+V+ MWR&?VA/_OK,F;,'ESI0]Z)GW0"NF##DU9U7=>55G7E59U[5F2UUYD#=.5!W#M2= M`W7G0-TY4'<.U)78="8VG>E*9[K2G:YTIRO=Z4IWNM*5KG2F*YU)2&=JT9U: M=*<6W?N>=&XX-[AP_N"3ZXU_?P M%M[#.W,/?K9S0;T^,?4A7LI`G)MAUOHK[WR!FIKK#4,@HL8!%&OW<,?L8>^30]^Y'^]CO\27?X2^W0!]C!#ZN#7U:'/V\. M?[4<_FPY7M\MW[K;_APY_#URZ(/DX(?&P0^(@Q\&A[_W#7_P&Z\O?N^E[S?F M_'UNZ+/;X.>TP<]D@]_)!C^4#7__&OZL-?RU:OASU?#WJJ'/4(.?EP8_&PU^ M#AK^RC/\F6?X.\_PYYOAKS+#GV7&?]]E/D+=?^\KW0FV+>NZ=1=OWL6;=_'F MO;GY%?L%U3;0_([]@DZ6%/=W]FV\=1MOWL:;M_'6Y]\G4I?4-_SV7;Q]%^_Q MB?"YF;NFRMV>RMV>G]V>G]V>G]U^1W5K*G=S*G=S M@G9[@G9[@G9[@G9[@G9K"'!S8&]SN&YSN&Y[N&Y[N&Y[N&Y[N&YKN&YSN&YS MN&YSN&YSN&YSN&Y[N&Y[N&Y[N&Y[N&Y[*GE[9&][WR![49F_7E2^@2WQ,3/H M0FL&/;S,I$Q-9A@L+6F2+^W&WT";??H_0LZ;^5XB^==*K"]($'T;R'^/:GV5 M@):,*5)^*AJA:((Q95RB/]^H$+VX<*06IRF7.62G.2SYK780BM:I-9-'ZXQ# MN;5!XZ.U_^\U[#N#M7[W`;J5VR#I2K>@1=V"%G4+6E\S;05FZ@I,VJ/3C!!9 MH:=<\OW(BN= :UHDX?_&\^^U2"HA+*J$L)XJ(?R([@X8"OSE78Q^#^SZBT.! M4S^]%!@N'Q;0;[?R+;(9\NE4^?MEB@?PEZ/\!DG)I0=0//\'4EZ6/) ^3-RI M<3054N.O-_]ZMPVYR&\Y-L'B,%@8C,Z<,'?IUQNX>VOWZSG:O;G[]7SG#6R2 MVQL3_<)IL$4SE0#\^AV ?[-8:]A1%VLZD*YW_4#E>M<)+?T\G\FQEO[F\M^T M';?II/^='GGS:\9BMJG$'@9#NG,8C+92'M-@RTA6&JP9K!N,]N\O>OX&UHS6 M-1.OT9CLMJ;=/MIM3;NMZ5#F/-*!RK&':_9F/K-K9NJ] [3:'_6RT?2O0//R./7W[& M_4]!!#./WQ',>]2_LT'?J)V$FH+Z%:.Y'YC$02Z8?31)&L]E>?YNH'^ 8,I_ MD&+*+^B_?8@3!COP@ID`VR3)]$YCZ\-@DZ8`I.6$/7.1V[48*;5T+F3I3XK3 M?P$W`O][H.>];,#UNV#=8+2-?H4C[I7E]TE]W,(@79K'DU4?][!NL&DP5(!\ M+MCQ%BGQN@M*9CGAV?(%ZZ9ZSY3Y+9",6GR!K8HOF$9\20[[@N'(NGQTV$=9 M'%,^^G05\>]&ZH1!HN?"B=$[<3B))6L*69$3%2;@" J+_R WR242OYW\;4E^ M/7"V),':#)=L,GY=LKDSS/'K4DG>_M;L@MKTQ8@T;6D&,V&([QA/=23?K6H> MNJS `R]8MP$N':!YK6&N:)@K&B\5)=_LBV:F3\I%7K RF%DT"-Q?L$XJ/\&7 MBI>2"[$NV+1?,_$^7]&^54R[>/V#U&,% MKQ.?GM1!.BH)PPM6MG%_IPSO/VMF7I)\&93D.V&-E%E"41>,%";;-N?B!.(1 M_XL(W1F6_ *SDE\PB?R"2.J)6H+*@U IXX(KVB>JTQ=!<9,\HJ3P7?Y.Q-W^ M5DT9UR*I+I+J(H)UX4AAOY%=OBL>8O[V$.^%&Z9G88H6;[3C?U!+`0(4`!0` M`@`(`*:>=R^C:N)FI0(``+,$```-``````````$`( " @0````!I;F-O;6EN M9S$N='AT4$L!`A0`% `"``@`<:!W+^3 !5XR&@``HC<```T``````````0`@ M`("!T (``$EN8V]M:6YG,BYT>'102P$"% `4``(`" ! FW8OD@734O\:`0#@ M/ \`"P`````````!`" `@($M'0``:&]S=',N86QL;W=02P4&``````,``P"O )````53@!```` ` end From owner-freebsd-bugs@FreeBSD.ORG Sun Nov 23 19:10:20 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0A54116A4CE for ; Sun, 23 Nov 2003 19:10:20 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5F7D143FCB for ; Sun, 23 Nov 2003 19:10:19 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAO3AJFY030866 for ; Sun, 23 Nov 2003 19:10:19 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAO3AJR3030865; Sun, 23 Nov 2003 19:10:19 -0800 (PST) (envelope-from gnats) Date: Sun, 23 Nov 2003 19:10:19 -0800 (PST) Message-Id: <200311240310.hAO3AJR3030865@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Dan Roberts Subject: Re: kern/54549: panic on install on Dell 600sc X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Dan Roberts List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 Nov 2003 03:10:20 -0000 The following reply was made to PR kern/54549; it has been noted by GNATS. From: Dan Roberts To: freebsd-gnats-submit@FreeBSD.org, kyle@stdio.com Cc: Subject: Re: kern/54549: panic on install on Dell 600sc Date: Sun, 23 Nov 2003 22:05:59 -0500 (EST) You're assuming that the OS boots to the point where you can obtain a crashdump, but this is not the case.. the panic occurs during device probe, well in advance of any drives being mounted. Is there anything else that can be done? Dan From owner-freebsd-bugs@FreeBSD.ORG Sun Nov 23 19:40:22 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 851BE16A4CE for ; Sun, 23 Nov 2003 19:40:22 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id AB5B743FCB for ; Sun, 23 Nov 2003 19:40:21 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAO3eLFY031867 for ; Sun, 23 Nov 2003 19:40:21 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAO3eLjE031866; Sun, 23 Nov 2003 19:40:21 -0800 (PST) (envelope-from gnats) Date: Sun, 23 Nov 2003 19:40:21 -0800 (PST) Message-Id: <200311240340.hAO3eLjE031866@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Dan Roberts Subject: Re: kern/54549: panic on install on Dell 600sc (fwd) X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Dan Roberts List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 Nov 2003 03:40:22 -0000 The following reply was made to PR kern/54549; it has been noted by GNATS. From: Dan Roberts To: freebsd-gnats-submit@FreeBSD.org, kyle@stdio.com, Kris Kennaway Cc: Subject: Re: kern/54549: panic on install on Dell 600sc (fwd) Date: Sun, 23 Nov 2003 22:31:27 -0500 (EST) Sorry for misspeaking.. didn't read far enough. I just now stumbled upon the remote GDB feature. It'll take a while before I get that done, but in the meantime, here is the full output of the the device probe and subsequent error: Copyright (c) 1992-2003 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 5.1-RELEASE #0: Thu Jun 5 02:55:42 GMT 2003 root@wv1u.btc.adaptec.com:/usr/obj/usr/src/sys/GENERIC Preloaded elf kernel "/boot/kernel/kernel" at 0xc0b0c000. Preloaded mfs_root "/boot/mfsroot" at 0xc0b0c204. Preloaded elf module "/boot/kernel/acpi.ko" at 0xc0b0c248. Timecounter "i8254" frequency 1193182 Hz Timecounter "TSC" frequency 2399335008 Hz CPU: Intel(R) Pentium(R) 4 CPU 2.40GHz (2399.34-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0xf27 Stepping = 7 Features=0xbfebfbff real memory = 134152192 (127 MB) avail memory = 118632448 (113 MB) Pentium Pro MTRR support enabled md0: Preloaded image 4423680 bytes at 0xc06877a4 npx0: on motherboard npx0: INT 16 interface acpi0: on motherboard acpi0: power button is handled as a fixed feature programming model. Timecounter "ACPI-safe" frequency 3579545 Hz pcibios: BIOS version 2.10 Using $PIR table, 7 entries at 0xc00fc320 acpi_timer0: <32-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0 acpi_cpu0: on acpi0 acpi_cpu1: on acpi0 pcib0: on acpi0 pci0: on pcib0 em0: port 0xecc0-0xecf0 em0: Speed:N/A Duplex:N/A twe0: <3ware Storage Controller> port 0xecb0-0xecbf mem 0xfe000000-0xfe7fffff,00 twe0: 2 ports, Firmware FE7X 1.05.00.050, BIOS BE7X 1.08.00.046 sis0: port 0xe800-0xe8ff mem 0xfe922000-0xfe922f0 sis0: Ethernet address: 00:a0:cc:79:73:c9 miibus0: on sis0 ukphy0: on miibus0 ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto pci0: at device 8.0 (no driver attached) atapci0: port 0x900-0x90f,0x36c-0x36f,0x160 ata2: at 0x1e8 on atapci0 ata3: simplex device, DMA on primary only ata3: at 0x168 on atapci0 atapci1: port 0x8b0-0x8bf,0x374-0x377,0x10 ata0: at 0x1f0 irq 14 on atapci1 ata1: at 0x170 irq 15 on atapci1 ohci0: mem 0xfe920000-0xfe920fff irq 3 at devic0 usb0: OHCI version 1.0, legacy support usb0: SMM does not respond, resetting usb0: on ohci0 usb0: USB revision 1.0 uhub0: (0x1166) OHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered isab0: at device 15.3 on pci0 isa0: on isab0 fdc0: port 0x3f7,0x3f0-0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 atkbdc0: port 0x64,0x60 irq 1 on acpi0 atkbd0: flags 0x1 irq 1 on atkbdc0kbd0 at atkbd0 psm0: irq 12 on atkbdc0 psm0: model IntelliMouse, device ID 3 sio0 port 0x3f8-0x3ff irq 4 on acpi0 sio0: type 16550A, console ppc0 port 0x778-0x77f,0x378-0x37f irq 7 drq 1 on acpi0 ppc0: Generic chipset (ECP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/8 bytes threshold ppbus0: on ppc0 plip0: on ppbus0 lpt0: on ppbus0 lpt0: Interrupt-driven port ppi0: on ppbus0 orm0:

LA93P2Q3WU%W]H&DNQQJZ>T5#>)QH54>'0.Q43B4MP)4%3VVNIH$`2(J>D MEO+;@L3N4+GI@1[_2E\)`8V/[Y!GNHXK?WB3>J6UHSQ'>8;N_]B[]N;$D23_ M=_,I%/@VVMXQF+=MYKAI&;"M,:_AT79/=!PKA&QKS4.+H-W>X[[[Y2^S2I2P MNW?C(F8V[F+H-DA56>^LK*RJ?)RP>:TXS,P37"CAVW?;``Z250O%OKLX;3F0 ME,CO!(0C?J7!8@^C$L!'ZI85(Q[?]N\/CN7/-R+NGE)C@HJ+F-[)#$ED5%0D M%Z*;\*]>7/\/?&A3L7[YC5G`[_-_^1+[?#L]+5;R^6*^<@K_OZ4_Y']^G\]; M_G\U3HCGW[QXQEJ+\5U&>_Q^"`2QK^AUA:?H?Y5;)N&2M=-JZ=Q]I(&IYM" M/XEDTJ9^[KL+VBW[1%<">&A;63@]M:#=.WLYEEM)')-*;G,N!5)R6$K4$ MQ&JW9<\$#LL96X7," M]E?'9RO4'=*O6`VE$M[DF#I'))R?N/%$\(.5W+XLJ#GH[]7Z/51#46'R$$Z>^,KZFIB@VJP6TJ&05SBL>I,/5<^GOZ++`4 M,&6`ZT?=U93/7R*8:GH?KWG4_,F+'D!I=<]=P<9W/*BP=D"H(5FQ(25/V;SG M\Q)<$D*Q)5I/W^M.!\_+E]V,X"%G2,,C"!5`),5G(_(4CB&B!E35'3:$F?TC MFM#P:^M&%BW90"IN`>4`^X`+.6O:&'T`R"#25^E^6.5?:78,O'*?E45K+SJS M,B&Z;7)D'6X6?"JV>N93#G]]A';%5^KRN8>%[[@=>[7@B2.1R/O4DJRYB.44 M9V"2V5+5RVB;_Q42A!9!O96!2L\]P&5F]ZIEM)!K:.2CS-[J%.XWR\X0]T$3 MRW":)P'?+-0-60!]%4Q!XD+&`C_44`M54#YK35F.PN@Z<7DA(PE4,*,>W-5D M9DADQ)\=YF.Z8W;O,/\0A`VJPK#((^2-"WV=BSZ9C,?0P8DCIC:,5-/<>Z%I MN,;-=XQN(J*]?)T7&Y99[N&$`ZJ/_'@!`%IX[!5:4`XN/=]HFY3`TO0$3UB) MOISY:^6H=#7E4TT1'A5C)5+4$%KEGL<16G)$<_.ZG+F29B!N3 M@G`"NYU0X88QKQB%-0ZY(7NR5UZB8;#_"58$B7+,B%@>Q\3V?3!_STO%X_*9 MDA^*V`I[KH:ALN62B96(Q5\KG]9"#\0^`S_W??;CBN>A&O_8,ZO5H#6OJB[[ M8&MUD8D_4$J)L/N4/'$0!/?05=8'90I7_9QZ1]2?B#_1_NK,JRYF'!3,:__9 M^KSZO-!U^IP[+5A_>D20KIH$1=:)]:TO@$Z!`%#PL9#7%DB,K-Z_. M;)%!JD%5R$S1QX`HV&)ZD*]Z^-IXU2@\H/AJ:B+@Q=*6_K+E-Q,4JO?W M]+3&*](52]7'-1`JE9?492JL_'9A!4EVK].6G5 MJJ8\SK28RVWI[QLMH*PHLIJ:,FR%8"O?@ZT`]EXJ2]SS%E\)Z+A^!4!6&+)0 M(DA\)2`)"&'5U"D#P7+"%E_[0`BKI@H,=(X*GN_7D(#.N6(/4K%SKMGY?M50 MJW.N%G?+&6K%W_M0'"A0Y5.4R-_[4!PH4/E\F8ODGU=E=4; M'*KF;I-9*,4FL8;!UW`6>(%VC0BB#)%<\+6P.LJKWC*"K2KA3]@=M#*`7Y4]1N9OE]=L$;P7S#=!+#4V?T^HROWLK5)<%,XY7M!CZ-%>J!@9TKAH4S#A>BV+H MLG=?G26@9P4S#M#Q%.5^;;"LW\):+=>XRV:J3!R!K%2RR@3$G7P)7.L]LTGO M*5EN.P4I0]I,435P\;4V94K#!#*F94R:&)`C8TBBF4GZA"`%6#;@B)[/YA^J M:Z\64^,40A5H?@>*\@@LIJ]JX84.W)1@-^%N(W9L@=R=H.`3@M>-9X=H8A/3 M#_APE!V+'*0:3#:G_(T,,UPXDTQ5>H,;0<7O:&NJN.50(X79!0U5WQW93I6W M"#3@C;[E*KQNWYI&"`)>ATQ.4=>U$%:5;*V3&30XM39KOGZCYFNSHBK#9%43 M90.=N&C&*[-D%\EVBT1*!9I%NV^5O0/A+%^7;76GTP0_LAMLBO:I_K8;O/1-'S[:WI'+3 M#X3J'ZJKY[U1B=/P<+^9@>1P3ZF3N9B-#+9\C39UUZX6I>54PN=@^LZV,\AJ M/F)/K%NO9SA/OM3=]NXY6$R7S]L[2Q[4@?=;Y>_HPNN-`NITK(10`C;$1C2A MP'S>PD_UMCV/_B>JZZP;] M;8M`(VW1+`AI],S>M66UY4`C43S3XU3?FG%W]+%Z8O!7-A\4'&T;@]LMAPY4 MJ.06[9A*3FWC!HIW"[*T*"=P,>-CM0,8$Z.RL5`/-%*8.PLEN22J2SQ]"34A M#`W9WMCHBM[%Z&T6>!][&Q?/M7,G<>WN:>TLZ4IB1R/[\TS21P]V[2RC$[$2 M-#;3,>Q6<0J2\ZP&`/2?9I*1MZ782)RAH;'%S#,;*!!)^1B%A'VA>2!L"XY" M((CDKBCA"KH'X.)$/02'I?H((8()!SYVI8TA[)N:D9L%1:,3BBC28-OY/=Y9 M>+OY+X`F4_X&J&+,!=9DS=^`5>RYP"89]#>@-9,NX$DV_0UPS:K_JR\Y_OA\ M\_-*N>DW*.,?Z?^7\A71_RN52OG3,L$7\\7B'_=_O\C/G,MI8N MEW-FU-3-JD/2,:12:&&DM`1A`JQ\6FNI#S8+T6])*7ZMEOX23&-MK92A,\4, M:T8\JX@*RG*ZU&J7./W>1'R`[L)SZ0"-(&XU^^R)`@\@B(G#`I\P=8:%Z=&? MA19U.;%ZXI]5I5VS6E=>^BU:3+-S]RLZ]PN.J"/6M%$1H3?/95\'QR-8C(,@ MW,:*25P(#=T.*,_N?V,[4)&X:G-Z8'6A4%V5#GRD>@90*/M:/\U?Y,X+94DG M/MJI8^#=G9OGA2=!J.2FO]"F4W1'L:2S*\U)#.U/5=Y!Z*&1RF9++7TF!"N] MBXT(M;Y"&EDBN>@("N41KA#9\3%U`]L.SU>R)3!"]RO?GT13OI"@7GXRRHH> MYY1=+5TYS>?.SBJE="**T)2ZKG!:.>-B%K`Q^L+2RNMGVOQ3ARR(FPCX*\RN MUP2=+YRF$Z'1&.,;?`X'T#QNH?!43;2;T%+&<-J\C,H`Q M"/5^=G7OY6D=2*9%Q#R*IOML@\7] M#-XKQS)U]VJTF>XG?L,\SO_[#[S!\.K_&Y;Q_?6_6#K-G_+Z7RX6BL47?5@GLE"LH+WC[K24K6E'19'8?-6)+%)HU;IEO0TWGL&U\2K15YUNN[F+WGMMWFG@7>S'RX$!/VCO7JZ;_7;3B(1A MU-W;S[WFU>ZM93<&/=MX=R[LVNUD0)OR328<7,.#7"+$ M:?1:]J==&'5JYY>14[^!O[E=<*]S933W%R,3NUXTO?(9$6:M/SH-YTYRD(#! MQROXS]Y!#*[UJ[QKC](<&S6: MPV8=2IW&X#^*A#+OO-YO!3S\2PD6,D:-_%+RB8 M<"+Q/A@8*1L?&XE!I7?TW7Y8Q_YHC$Y_:-2OWJ"^L3M=Q]Y+9-3(S-#>&[N& MT=7-07?4,6`_=OL7CE'6G=UQC+E!-6T!!FM$-VYB>]6M[^*O3:AF5@>GR M[L"L\=7PQL#VNTMC@M3M5K/3L/MF%6$>V>B#G^V/]J#>=]C=X\7HZDIE+;$W M#1K,!G`T3L!!;:>3#.D/;[O]FT38QV:KVTN$-!NCQ/N5G2!-"(&';*>>#&S3 M?'#VQH2".\W],KN7ETZ]F0#JF>--[X-&LI+#[J=D8:.ATS)"?AG9G:%1;IN( MB0&??+US.F;I0[MU8Z#*3-MX[JFE3/[F%] M_+59F[%HE8H?#2_/3#HZO!Q??"):M7-VVC!7+N>2YL\MHS0MD@--T/8I&K(8 MW*IYH7"M%CZ'&OUY?)F+H;2#3]EW!RRT*Z):OO=T3*\B?/:PC'W"/1"S MMTPEDLZ7?P]F,S?#2K29A_53(1$_[K5&5X[N+$+0\?7HJ@D?XO4;\;6(F(N1 MTVK0VD8KCU'_47U0,!)BS07-B?F=0D[WA3U(-.NR.:!USVZI=DTV#[@->X&& MZYS-#(8*L'O%4P)65=FQ5TH3OK:)MD6,BU^#VDHBX MZ@R1(O0\57,L.(/Z=;-.J*-8*?2K=#NXG%V88BO&@U&O1TAI(M"(*'V_K5$\ MM2__'CW2#O;$_^K"\67$XO#Q%DG)PY_%`O&%DI4K5?/G56*''RAE&*R66BH^ MI7UO09L+O+`(2D*\"NHS`8M);L*I.%L4!Y30>H$!*PEG8468#-'E'Y:/X-\# M5H1"]\$_AF'?A0_?T"Z$R9\?`V@KLTE:YN&#!4XCXD914OR5=PW*ED7Z9*^9 MR!>N;?S%^E@N=E@6TF7U)("Q3TYUE^Z.=W#N$\#:^I.O5(P6:_=K+*>OM`^@JH?*X?I'G.JA&1!`@#@+ M&PU+]ABNQ3X1"`N]0!0U8!5V")@K56]=HK)+O?38JQ2K-5G+>VTU:-=4KI(2 MK2$V%#PDNRWCH[_83:^,^,X_N)*SGT"O`C9J1*6-LMGMZ]@OG"6=$^<3YY") MK:NQ;D3P=U4*N?@[]#8KR)^S@"Q]=4-_0;SXD1:9QN]\.55266@= M'[FQ#),EC#-Z"E5PM3I\"/U^:N/:3Q1OB8/U0/J6Z$%6=4Q\LJNEO(R\Y^X+ M*QH(XDW]A;*B(U.*-I#4JXJ!WW7LQ">D1>[UN'%),W24R()FM`A@PGSSPP)V M9D705MQ3?3VK4*SW&.`2=;,3RK>L0_A^HRRBHW?N^G&V7&3FH:6>OL9/)?VP MG@1PO,POUE,E0YOL=^_>T4.!WJRG\BY?*5AR#DM66+3"@A54J")!^:QR,I]_ MY0%;AI/8L?'1/[+M>LKJ6_Z5RBB\K]-QRA9[DB_Y*_&6T-7`KI;W4 MP=I=!)LY8^_A3S5-"+1!P>?E:B:*EJZAQ*!0G.6[#M3+3S6T(*7>:F$A=9`8 MMMJ[-664:RO:^E#4?1A=1:)8V3:.6E<,K&'`5@3[^/4[!#'RG2MPTRW<&QE ML]DC1D"P-T!":&-.?8@S+E>&!LL]RR#KXE`QZ7W%#2G#CADKE`4*]J96K"7% MI\L+;0W_&Y6B?DEGNFE]TAYM)EC44!*,+:Y\;:!."2@K*R70O=$MYJ5.-+.4 MM1/U!0>BSH3A9ANB$9>]+LWS0ZZGQA>+:+/"`UW%6NJT1PD5&$* MNBX3!J$O(W9W][\?LQ]^>&/4XARA*";6IXET0!]`-9YIWXXZ88ED]ZNTYD6/ MTD?`.Z":SHJ3'%OI'VKI>`'C&A$=9]D6*)^E:VG*:\24C9XA)@&_?[)HBR,B M49Z[7U,SE)8SFLTN#7?4DH_H=-&\]NB7'ZCS[N>4$Y&Y#'QG;\*(0N`T/:." MIZ+59]\07WQ-C&&R7Z-'7S1\IK'-'ZB)""-QF#]2H^JQI!039^"S\L\>A&OT M*,/R\LE+%]9ZSE;(<(SPQQ1Z;#WA2X1[O>@Q[I[H40RRL&(AO*:*6(8[_1)$ M+)PJ8)3:^C,M'G\64SJLKL4Z7[R5V+@KEQK!DO)Q$D^R=B?19J6E7+7"G]RH MX3R4JD+]M.NEGVH8>15S`>S#:T,C0.F<]NZL%USV><\"VBQ5F0/,+ M%!ZAJQ+?-RF.>2-LAYIP2*_-#+%E'0+E6K->B1)K>='^%7B<)B``H;)EG*XK M//BW_XIK^M]I%+#'`UE6YI8>8,<(=$(\R$,D67F7%.W.Z<:7=5_--FQNCBT_ M^Y`]MN9/M-(?'KUGSL$?$UE8/3"?Q!@9EUY[E[FELJ`SEZ$^"&AJ^U,:%N(# M,K<3=YJYWRQ8,A9J?VO4"D*;Q/@]+*S/6$-5R-_`2-,S\:\9HEX:W3*WP8)] MX2I8&,.CCL@0DJZ7LOAG;A?6T@%Z"6SMFRJ)XP0TK/C)Q M-933%,(=QEL&MB080G2>&:'8+*XLVMK:U5$VYI,I#8WTBS4CFB\)'L#'T;P6 M/NLQ>`"52BP=,V"DTF.=+L45-*T`0#W/!=9"BVSFSYF!WRW/2>H]U):)#>/8 M.]IM6B!6(ONHR5OU$*TT5S1$(:5&&'Q5KV/I^2&QYM!XP$*X"E`Y*=3%RJ7< M":.;`^CFP)2YLG9%-"3RO[$\":&0E2%6P.&^!?4635L^S4!/1GNL@23#;,W* MCO>RVZ\W]4F.C<.M<:-[V[GJVXUF3?2NZ["9`*\Z^FJ<=TLIIS,8XB!&O5N9 MNB4$G?=4HA;)###U]AQ^5*-4>]AO-JG(5JM["]=L[9;3N<%`M?Z'O2=M3B-9 M\K/\*VH]&VLT"Z@OH"%&$\LEF[4$+"!;CMD)O08:B3'7HT&6YM=O'E5]0",: M&7GV18QCI@5-5U9V56567I4IHG.T6"S4D>3E%-56C*;S/%;\L.YCL]6];M18 ME%--555PQH?XGW>/.P5!HFEW5VM0XS#`&0\@4X#`&[9ZW2*\VV[WP_GS(&?N MM[OE8B_4+`7#LEX:?28M0:@\G,Q/*839>R?NEG/8*+,1I)KUS^\[[0A>SL,< MH>%8(5*J,#6FL_$/OI,C388&H^>K^DE*K&CUF?/99QIL^(&%VYL;7S:./@#" M"]+>:#D&>=&CARN-9BW^:?R%'D&S7J?<&9AE`16V'/N7(*FBA_&@PQ*@83;?*QW*O5.JQO? MAD_4\[K_Z"[[[G+NB9Q(?>Q]$!_<\73H3$X1S\MV)Q[/R6(9>7W@8'=+9\IO MCSX'Y:*,ZWW%R10GWY;`>MUERCX55[UR$,*+(%JUZ\OZC@F7$5;!"F:>37VW M*O]=C7_G5O\/J4U7@RIK.&(Q;;8#MJH[IAK'Q\I:*`9-W#MG\(16 M&&[9J^YZ[?#Z..N/9V M8#JD]M7.EW9O%PH@G%$)*UD*K=EB9TX\.=+IT!3].4.=#"0JZJ'1O&AM-B&K MV]ROIR,P"RQ9S&A8+AN5ZNT.6@,J']PNL;AD!D.Y0<(12NX#KH6_4J=7R#5B M`83,F![Z^#OLZ5;+O$Q\,5"[8*(1KPWV0C.^B>#=G"UTK'NP?H"C$-V8L#Z/ M3SZHXOD\.%"34VA^Q+0C(/G@:Y'((BV"IV\D9;*3XW.KPGL2JK[UJ=ZI].`/?Z$HW/>.B*UD0>^4ENH%!S%?U_#?CTF.8V+56 M+_N'!'!)\"*6FIFT)9*1`$2AML,JJ4."R<-\\N!B&3M\`U)^<3RY4#DE9<5< M$P`%?Y:GP.#./%K5(QPP9(W8#8$7[T;.F/2C=ZC@+.>@^J$HPO;? MGW_^&0W7`/]+Z[HC.O5NN]7L-BJ-RT;O"V?3Y\,`+MK'E458(?5OV)X''M\; MDY!2GZ3VTH!?=\M\/@4INK[&5*8H^&+()YT]0*EQOKZ[7_EY5EH?E?*H\M-0 M6A8T]RQ)[,>X'>%GKE3#E:-7,&T:M8S%%>=%;Y*F&SE&08D4@S')/53)6QYDA,IZW115@%B!\H! M&4A\0:>\1O&T.V?W>LOT&R+Z`"*:EU%*0HH@-P$+F#ANI+"D`6V9I8QC/$ND M4ERURSV=8R[XBZ&%O^CA+T;HBQEN8]TH8L`SFE+1YS'B"B6LE$2,_%CQ;(%" M%RH#A/""B]%F.7+*#[Y]ZWB#\?@M`\(]U%5/>F3J032]^@IYT6)TDG470)#2?CN_624R]0N/8;O\H'B0IXL$FZH\B1M@QO M"7&(23PVW@^S^B-X6,$ZXDV>M4@M$.[NY_'H9UD)Z&X>1/.1HAQ&2X)0;64U M'_0IH`#N>(%?,BOSBV#/)2KF95[8:?QJ\%=#?C7EKW7^:LE?Z[::2(Q>J`)+ M;H%"15[=$X*UE61KX[WX3!NL##Q!16D`5BICALQX(2;H+5OZ'BJD&)G'ABC/ M87$9UO8"RX1GXQ#JMNMU4*3X@-3FX&-W[Q:/5.CKG:PG)##D?^P^R*0"<@?& ML]S-BR[7+:1:8\IZPW)O(!*Q[U66&J1E1LN6#2GC%5<6XQXBN@%UT;OHM=7. M(1TT$CUL1V6-'$5T^*9M(E'*\"01?<)RO\);89^4O%*JQTM8^N\\\>[L':@` M6:"'L+F:`$>>8VB<*>RR5:[5.[>(F^^X%[!]2<86TL^\M4A]S7GKT\W-8Q[0 M*_PLUH#>&-.>D,/9#4XX4'*"5;"=$-&M,JB\9QJUJ-K^,=>]#C%\A49NNV\E M1U\U>L%C3"^8V(PSMLV#X:`II&!YS&87QC&EN!E'`\@L<2NTI'O>O-.US!9J/G4KN]@/&+7%B7>Y"HE_]U%TO5'P!Y6&`=5`'!B-@R%$&CSAX MENX(=5%V-%/RFB$E->JO*2'G3Z0MI+Q3&H8UF[K8:S]><91`.$;`CZH8/(`F M=(8A&E=UHC9,IT>F8MY&28^825S]:L*LFF!\08_&)(UBREM28OA]V"HMZ8*6 M%+S3[76[5N[5S\E3*J<1;I^'DS<%H\1*'J)'3TD#)/_+W*&!RZ`?/K2Z/1\$ M/9]=?\U*.WMVOKSCYJC31#J)'0CE:,O`%WQ'V-QA[7=#`':W)0$Z:(CZ;[C? MW0U!/`F:D0N*K&&4J,1!O\*]3`.D@J?H<#YE'Y*F2V_\I^N?UL<&N`VR&V&U MEMF$8#(';)N8K:=]/MW/AV3)4"8A<4<$C\W6+/\Z*/I,_:91\6/U#=.[P$Y# MS!L_;/0"Q"0#%SCE+.:LVG3/R,G"D\LX,1IG@Y<-%3(@&G!W99*,. M!C'Y$(:&.SJ(.X>0_.8\@#T2DU\\+-WK"FP]FZ,C.Y"C([* MXEV]N*TU.N>A[8-9K2*+L\&(%'\>07?V,%[. M9Z1_%-,P&(2XP;2]O4VF!4;&^Q91?"1D1Y3EAYZ<25,CK MYWA^)D/Z%9L_Z'#O)#1=]$Z91FC"5.HOS_$FNLC4L%FXS65--KH,-9J,^]%G M8`&?9R8(8QL'(RD.LO=SXWOZYP("R(E+O@EPZ4JG;/5IN?9X8`D_ED6EWY)DI>"6R.J`!"H(`P=\CY!JE:3IA:3?U M#R3'6JO9NZU@U++O!'B7_L=[=*%U0-/%188XURH7T/S=Z08)RG6Z-6*16SA` MH1NU-M\(+>Z`B]9[L"6#(M*H,0OW>3\I+G(5@YR(::F0[T>5!TI"HGX.FV_I M(?(+XE/>=.HM?"A868J=OK+J'W4F.U91HK&;QIN@WGU3 MOOQ<_M*]I4#U6S3$*N41GO]<[C2[_.#G>J?3ZIQC+,D\`YL7X`8/X3/\@[*W MRX/ZN`=3GJS)>G8'-,1G,[XTRU>-:@<_IVBEP3@@%T2`5SA?BO^> M/?]K&%H^;ZKZ?SD3/^N&I?V=_^.'_&O.'X21$[I>,HHE^+!R!_>+@69Q+N22 MP+4E+EOO&TV1PB$Z%:TF)EQ\T-Y$FIJ%H"E7M"_)ORQF4&JFG2V\)P_Z&Y90 M0.9`[IG`B!@02/5+!H9/.Q!'$]%T;67\S\HN__!T`K%-%QMC:XF7?-TM>E*OQ9UNAIT MI6>*UOZ>$+^.>Z?".LG?-*.:@IA@#R.^4'>8+V=C)RO*&!R*:*$01J:X88*7 M4:^?RQJ92KU7QM+#H@>:2M!2-TM63E2[/3X3OAS\Z\39SA?93'3 MAPO?LFNO1$+/O/^';^F4B6-Z^X&W0!5NQC MAHD$0Q$%S5Y3$4U[<^8LIMFO\S!LP[*2K!F'W%TF\)REM,0O+/M3L;/(4@L8()RT7;#S., M9:];9;0(3?];25B6K>6LO)Y/A&:U?5U2E4-%HW$6?!0W[GQV5G4G+J@4(@5@ MLUHNJV.2J.1K][6TS`BZ:MN)]TN MU]-7U7JZ>F.GN_5V^JK7@9OO\68Y7;UJ?8(G>MC"S*>OKF[2%S?=SJ_[$5BZ MP"4Q%!L$24#9T@P0G.QB7J1,VQ17E03#TKY_\M`CI<`,[ME_4V#=+94 MRP?^!YDLS%SD!=F%H.ETWNC!'(^K"U*U< MP?#[*.1?UL?`R&_VH1>*FL-]V$9>+^8MOY>B:>EFXGZH^+8:YG.`IILP5X!S M"@2?9)/5'\\]TX"%1Z5/T*=J&B#:+RG==8V.2B'P>Y>\3)+]:*-A892`KA5P MSJN-)#$:VIH.^Q>"@$^G6$3@`7\1XM)%4M+W0UT,Q@BX1`5IR0LL2Y\@V.4@`:K9@4/SZ[5F;`5(NUN!EW5R"E_5AJ;"T M2(TF-$AH82/+"!%,0$&8-FG:OQVZ#R5V#0X3M%E/X/H+_I&I5]/B3Y=.5N*7 M)%P#=#2LVO0+S@2F6N7#APE:PN*%9G()_X=HG+42-%+,'"LF(M_S#3LR.?A^ M")_JW7(IXB$BM_K^AKF\`*$D9PI+%T#6(,SA55=7_D#_&09>$S`+:FEQLYS0 MH%DA@*@[P6?#Q&M2B`%&.@'5"5FX6G3-T36?$")C9-.U2%?&JT_7`5U=NHZ2 M0>0),$TR+:!00@L\:;L',PMBKZ45\U\E^TNSJ;,$^V::S17D!BHA!=NNW@>9 M)*6SAIB`*W(O32JL?=C3(*4O82GRFNJ,'QS1:_9$]7Z\(!Y02<#?,'$=",._ M8(U0#'6H]=J?N\U/OW)I+>0.%**1B%'>SA?N+*6?EDYH3'1*=\=.Y!1L2(.1 M?8K:C?;(R>CRF\K!LU`="59G@47FL],0LOJ<8*P1WF!T-\`\"Z4366A!$[^1 M)':NX>ZI_2Y^NQ\NS_'#V.,:7B(U'IX7]*)F:W8^63?,GHFSJOA2(ZLG8,E\ M,NO?VXV.+!`7678QFO`KC%L\\BPS=!X'Q&V[E_*1QEO;S)? M,3S&V]".MT[B81]GG<3#/LXZB8=]G'5"L(T`MFX?>2ZW8%>.-R9;L*NO.":U MXZU!,P0['QKO8XS)%NS*\<9D"W;U%<>D=KPUF&?8NL\,C\A/MF"_@)\4XJ6Q MV_[:N^7HGI+TR*WYM/1L+FXKE68:SURNIR@E;,H`,2#+`++EU5PL2MX>C!O# M$L'34-^"*QXX3@+F1V-F_'_';-.^M@,SD*W;=$JWLEZMT`0XPI)]FR)D'`[5 M=H-B=K`*Y_RK)RIEH(TIF0!1ZW`>\4.^4"@8NH&YCH:K^^#.IN3_T@[R`>0$ MRS<1R%P`NX[.]!BUG-^/\B(^P'A9SQGY(9=$&:N4,Q9N;`+`A7_A%R+L$7M MV[`R=':;L`/E/V)*+)?$;:4&6@$T9M^V"V-J7?\=$"FE*K9#&*#B*;-.R MVP;4O=T:LEOMN[I-P+R/_[;&X6]K<;?P^/=TFX##';];\_"W-66WWS6W^;]F ME/7\7[.HH-\$F6I:FK"'V6=XIT+02?Z;ZN^=?]G2U=RG,Y<.'E$@CA:OA+)TGE0#E_H!:O MJ733*N.'^&]/W]_S]\/F3]=-(RD-.B/4D!).88(Y9*!+4(E4YM^].L*_F(*0 M^UM!^%M!^%M!B%,0[!]"0]L*PH_I=UM!V-OO*RD(>_M])05A;[^OI"#\D'YC M%(0?LJYB%(0?LJYB%(0?LJYB%(28?A>#L6_`)-OEVB,#*%DVDS9?J`AC:'V> MH-746?RF:[^7*-N^,-."RK$*TTAS/DQWP-%*:PK>M0PPQX.B-TN31Q+_HUTKRABI8*J-I M&7R/^^$2WQ4[14/[B-!)`&8Z7+IWV$JWX"7P[`1_-PP=X%!]V,G,^_-<$RD\ MOSWI@0$C"H\#08 M+YD&?2?6/@:3T[3<*\SMJS"Y9+/K;V'H"4X\N]*K2-EU\!0: MG5]`8QVJ>HUFKR92LIC0AM20`&\)6T9R$;"Q)Z@>-*630+EC*S3B!2O0^/X5 MF(`IR14XR&CF<;;9UUF!)C)YM$@==0F.9ZO%>'8^3..DG2>9-%RTQ7V+UM5> MA269W[_=)!`6_.W&/I+Q31!;3C,%(3&6GY2(S4%`3L^(Q4-XQBB&XV+>=[Z,8\6$PS MCJ>O:(4HW10C=&/OHIOB2Z1E#<#%",NFC6Q7WM_?C^2GS@Y^&M-B@6&+6*4% MHUSEF3=/U#11TT7-$#50W&4A/;BY'UR4A'>0F1VP9WL7*>R";3U'9FXR]A`W M#+O)3,\_1V=F@ED)TYF>WT5H"49WB]"*FF8I0K/U@ATBM`3@(FII?@>EQ;0+ MA.;DE!8'9C>EV3^>TL*W#R:T@RDC9O6:48/13L%E+V7$;)Q:%/;.S>TPRC"T MYRA#/Y`R8*+B*6,S^C8)8>C:T%6$H6G&("",+=_M'L(P=IG,=A.&>33"T(P- MPN@G$]V>)PP\S:\;VA9AY/!V;HLP="",W(OH(L',[=Y_#MQYG+L%G7"ELI^V M85EFY093<6BBW7[A+/'2/B6Z(!//653+JT.&=`&DZ88H'/<,O$*"I'X*F M!`O#38GQ,;\;GGN@P(9#6J_[L/3&,\S3S.T/:=TX:P'R5'U#_H.5!G-P"/[R MB'\(C/8XLOSI'!5X.@^`N,!`"F9T$BJM"G^!D+DK(40Y%?(/Y+-R9<.R64RX*G,*F@T!7DB,2]+HS=8F(1%$?[H](>U:_M/ MH>?E4\I13LMQG^G0(L9T?R0(F2E'[4`YRMERE+ARU%"._19?DJJ450F3I!E+ M4L^49#8"7Y*\Y]>/NT.`I:BF7*N7[3JYH,/!);D;UOF#`;,])O(D7C][,B8H M_#&!2T$T*D0``%.B19&Q/,[7-&C)WB%'/D_66)!1='<+M@V]A`O?EMBT3"IE MMB6+>%(97THL/(PLC*ZPE&LL_K/"<+E\5Z<+%[AR;4O+FZ;OZ.']BG MW;?L%W>]6HBR;;2<;$QL@3GPT:,'Y<;N$GXC"EXVN)NN0I<,&\,6:`-^OQT& M<9T>-=Z:;#7>W^JVOZ/;TJX'8!11;D93'%8]CLO?L3NM'F;,%BR-,?A9A'R[ M/^AUWKQY,\9LZ:+%J8`QDC.89RR[/`9KQTR!,*R5MC\;5OPSYLYDOXI6X7^+ M,0X%8#$I_25FTRA>NKGX.L?(C91)[%([C!I]EIP88^)JFD6#^8=KCV59&,XTGQ-\X7@&1;-TJ7T;18N8."9EH4F"E7.3P&,!8U' M=PX_DEJ)*6MK_,Z$KF.4%5V%;^I1/FSLU&5YKGBH5\!UY8X]470/HAGY&'=M M,ZIB8LAYB>!Z.:Z5"#0<<3")JP=J!Z/,]SA]'9K6%VA3OI)R("F3,1WY[#EH MD8?VP72Q7'[?L?W(!0S]D@DJU;5-13)T3&3I36$8N=R,A^K$+.&KM>8M*52!*K=_4(+'I<3`4Z'5@XT"`\D7/UH8Z1)/[. M]);->E`'^RAB):[GG^?0W:OQL`<"&Y.+9.(58.ZQY9=+;V/?X$`YQ_!S:,Q1 MOM.%3%$0N]\GPWY?[/&-7$T,;J&:;"XS"\B257H3FZ[>8["D2@E4E+NM>KUM M7V*"*9:4MP4?J5DC`AM;,GTWQ.R/<4K3S4(R/"P.TK)M6U8L+1GFZ"HNB>F+ M_[EO-/2*Y7>$L8`*+XSJ]/1/_9DM`*DQ>@3 M-UIM;Y>+%9-SB%(H44I,E%J0*+DX4='2=^']9DXT,OLAIW!1`VT'8HITQBF> M2.@#%7CP0Z$QLM(F/:^U1<:IW&I5T6KGRV^X+7!=&SKII>3,I]_.,"@61HC>UA(MO/E*;/3;E,84H%#_>.;2+0;L M)$>5KA0OC7TQJ5N@6^P57\2[\NCW:%?X:K+]>-P2*6%JNH&:- M>-#64="*@BL_BC+90.-6>8)=B"5[NI`^+590FNY1I4='Z4+%=4^A#31[RZ^G M#<8YM"&=4.%5GD_E.3F;/%7I!/($,6ZE*5A.YA(E*VPG;CM06H7:&WGX_Y%3 M']@3;"'K'ES\Z1C<@FJ\,8$(.X[O85#+V(N>+^97A<"6,Q9:-#[;(B"AR-O9 MNP-O(%I,V0F;C=,D%47[WYL:VK+D2Q"NUBS2)Z)&L8=!KXY)Z2W^++`)GF]E MCLL*T[?B"H!/_?8%GH$`-R;Z'GDTHVO\L\!`\65UN`?QY8&>(DJ6>/`T4;)L MG/@/'NTV8S#5%VR7Q(TW!4=T?T28FQ/<#<7Z2OA:HB?YJLC="_URZZZ9>`11 M$`PIK.Y0"`Y@N/*HSZ?1\W_5F%AJT`AY@107@[K2I:PJGE+'%"CLDUK:>,WQ MKX*`7X/Y>/&5)M:11ICGA7;VJJI\)@\P$N`;]"PFU>T/^X?H*[_U?K97YI<,UD"S>V-LF7XKQ,"C%,HD^(-L%G+(7H.K'2Z8EXB*,) MD2<(`26E,*"TLAF+.M+);5 M>8SW'(K)0BXN"Z6`+.C?7%GP$(^3!0?Q2%EP$.V;6CDEC]6"C##Y.NZ)9(J$ M`_4JDM.(Y#E[(-L6X``M/7K8J3'4%/4;WA+8G:.VCMNN1[!U0T?4_-7I7I94 MDC/FK,Q:H_D8!N?[R%]A3G6YXM$CU7C2^1]0^=BL2";-5_D^_NU0W/$>KK7! M'0OA;M:+WC9C&^`]F;C!E%TVHH(0;_P6K.$,VOM`6_XS*U963''P.!?7TYB( M$YAYH\>]9,B\\F":XEK3)-J<$MK;RN?QO7B1)]'SG6%C-V[^;G[=3>1\2T10 M.Z@P2`7>9^)_\N5_(\$$#U:%-/_H!T",_.39X_ M/9=52CZHE')0*;5HJ>9=I_//KNTD63?`50)O%Y=6U+WE59XMLIQ\57;+EL@8 M3T*MM@=5PO74O\+#BM1<_.J&=+UF\_.8'>/#*=#U/'^Y*H&X'A[PF?5\&LR" ME4@SVL%\_8W8[6M0#=\CC^Y\C#NO>#X-=\,%$%I]D.2\X:@74L\M@ZP)=*.*7W'OQO-G607:2WZ&\G[\_;J"BJ=!QY9>.`M8S<) M?5!W$D!+H1/\%I_3F(U_([C1C/WLM\62'*G#(U_',Y=&X"-K]DY3V,G$=YJT#-+G+O-@DZ#L_5:/;I_NGC7',S$' MPL47K@X#Q"WPZUJK?3>PR149VLZU77/@PY!>1UE'[W3Y[<"N-?]9:@X;)7LP MZ`W>XS681?A.>UNK]P:.W4PO6G'JN;%[G2KQ0MP_Q"7!SU@S&2^!I9XZ&GNF M(6#K4&(Q->]5TW%J5RJFH)+*CFFV:J9:>T]J\*46HZ]V>24(73$TN5/'6`BF M9IB*A/=^5XL0[R#*%;TBD08>I"2W)6*H9%@B,,:3NB`VE`.TJ!S@25D9%WUA M:@#K;^V78@'F`UU0:@UXG/+#(MEXD;$:ZBJUFHN,9/=%V2/M3+$;E(WJ&B*]:'.BXA3ORP M1*D7Q<0-[ZB*])7PY1.^-FLPC$!ELQ(,Y6".I/<0,L$^A3`%1FFC*//QVGH< M+$"B]+BRHNODRV*ZGH%]A4?:THL"F2@=^!HFG&@&ZOPOZ/I4&U\`\^K8]D-JK*AD^BB<3N\K$IEJ2P3GWV0)44M:UH9IOFH*I%I-;$(!/!EQ)<8 MOK2++B7H[`,#%D%43HZHGAJ1S<6->`W.Q\DX8K$4<5D/AN'Y`Y@[,O6P%,G0 M)+KSO?FLIL\8_<>K(8=A[FGYQ:G!.WL-D7S^5D3RB=MQ0>?66CQ"#GS/A[ET M3#XUG0%8ZA/J'[/E:H&>\!3,<<,'F)Y;U*=>Q:!%08;0(M1Q2I``">R:V8I5 M+#U4CM1# MY2`]U([40TYY;JN$])`#EB,ECA[F@A34PV?PU,)ZF`LFHH>Y(,_J89[$5!$] M%&?*3Z*'ZHGT,$-*Q?10/;$>:J?40^T4>J@=KX?:D7JH_91ZJ)U(#S.D5$P/ MM5/I(;7YE60)YEF70;1XGLOP3+/TS&9M!9\^^)@+QU4DN5($D*-(Q0">:!(X MYCLJY((N2V^DSNW_;0#?89@-\68:I^6:\7-RS3@5UZC.JHG.)D[`L\YV)HR6 MP"A'P>@)C'H4C)'`:(?"Y/;#8@+\^3IB?I\Y!N]G:B''P4X'8,LM_9QA(@#& M]6MEXSFS0#_$%]T.<^G;(+EP.5:&`!Y'8(7*IYB4&N04SB!7H)$<[S8MM]S2 M190@KWW*L4J0[0@>I`1"KO=+*X%R8B7@N)8%E"#?52ZJ!.JQ2I#MA1VD!$)^ M[TLK@7IB)>#X=064(-]/+:H$VK%*D.T"':0$0D[G2RN!=B(EV#^BY&V/*+F6 MOA^/5!!$WH",->,PD+&[/2PUT3W]0)`-)2/?L@X%4;8@%>U0$'4+XDJ'@F@[ M/#FX.?H6Q!!J#AZ$9'%F0`OI&0PI446)3-?[\6:S,*KD[3]KG=IMC30&GS3% MD/#0_K_?0_^*(_F21O,*#_O@88\K)8E+)8RNOE$EJ8,'?`J,'%A6YK=.+M(Z MF9W4(\W&[5#2[HAB*N9[Z/C?H-SD1]N M#HT:EERIZ*9`=X]A-`DO2CSE$N8WHM_N#")6B8W"ER7BN`\/T(J/>'@/AU6; M>PHVHTJ%SUNE"&^5T_#6R$3/XJTB28:2/JB8#7,VWF94J?)YJW)YFX5Q5MZJ MV;R5K+IAFL(P+\U;C<];K0AOM;/R5GN&MUJMWDPOU6;#O#1O=3YO]2*\U3%< M@5V[J3DV&3HR9JWJDHHF::=CL)YFL"15P)X155HH+G,9*^\Q5M;3MS`R,`T^ MYXPBG#/.SSECGW.6JAE:>IK*+GYRSIF;P\,"%DP6!@:CO$FLE,U!9<(.*O/- M&*D8Y\PJ#9.=8\=P"E^`W5WHK)@0!MOU2=^<$BJ:M^/#`4'7X3@I(15GE1&M MX#`)T:*UUE%J'^O?9JCC-9,DV^Q>\)5TNTYA-U!B<]1[\8=%Y*%]'3W MK;@JH)]PW%`#".<=:&@%APXSM/!)!YD84=+Q1HTBZ159D^B-&1H0-+Y94R6& M=DM495AVZ+,-(>`,6T1XO@2$7`"1,H?4D[8918CG%%8SRTT\)SA+)"7%99Z+F%EK-?R5S3Y"&<4EE1P M-3,+Y&6%)9U'6/O6.M_I$BJ:YW1Q0+QQH<5]/L)IEO:SL/,7]K-*'N]ND2MZ M(Q93OD0B>O)7B_.U_K^\_F+K,$(81=I0\F)A_W MKB:*5;!_^?&T^.-3XK]JW8MHG7QNK>-A)OHMI1<9F5@<")#EZ\ATH.34).';D:>W4L[=!YK7AM+9P="9KF#O[GWMZ/KO(-7Z\H5..]GR1 MG[)K1_*Y!X\3UQ@2U<+%9D$BYF9#V)JN6Q_Z7,XDSE8U!J[C&><97$ MRW7E:!3,R_C5?_[:RR_EQ5=>RHL7JN@(^TX,__#^+H1_A%,DAG^XHHH)^LST M_Z**BL'N86@,O'#A8?ZAZ<(=8TC:8+ZZ'_M3]SL]Y25AEB*/D-$:P\'?S]QO MU;U=2PYX:XY)4U;^-ADRX"^6)4RD.W1J#EZCVT0_W-T4&C;JF+E%QIW!8.:/ MR6*='ETYU;W?^T.:Z]F2-##Q]W"%%[3J_D,PC\C;])]\<'8_$/'H'LT6\NMC M,(46`E]*N,D[M#_6FLT!DI_>8^>@4IRO;D26[GI_[Y-3H-9HW'7H]4.I1(:M M;M/^G7Y2X&-S^]&#C[7!S;W"'LW'O6UT'?8L,K_O#!AJ?D'<;1ZV;EI_8(/_ MK%X,[7;K1\WIMBX)C>P.WX.OB$_5[X9M]BD?M5T;.OW;VM!&6$#MWT/IZX%M M7[(*[8_X@PN_V-W:G=.#"OL_-F][\':`A%P*5#6LMS\T'*1,8>1_:C7C:@8U MQX[IMS^R9V0)'L+/B4`;W^\OV[7;H9_H%2@<+=WWVC6[X=VU_G1[3GW M4%O7:5VW["94BKU"PFIT>++9J35[7?O'D+U">[HW/:$Z$4:.6T39V+B]B=&5 MN$'X7HW?M[`QDJALV.,([VI4`,BJ/@C[!WL[&#KXSFX[\"#4^OOU`'B'\!:V MOWG=ZXHTHGD-*CE`GF,MS=;`;C@M+-J\1MKOD*'&&*71NN[9G?Z/YK5S.["' MMS]N*;_PZX^?FNR71JUQ:SNW0LQS:HT/5=H30`Y&!5\K]#6]NL[M#75"4R=! M]]D+[^UDE(1Q`7I0JXF=Q03==CZUNO>-VVZ[?DE_;=]UA;LI M/.[4;O[`U`,BS\LI>NA@U6P-&W:W_L.!R<1V@+B8C@V5NBE*RX;THH0I.8QR M3\8HHM.WN?:_9_-%&E*(T6[\@S95?D&8Y;[[X*8E.3RJ_ M!-%Y$\Y?3;0F<8A.3TO'$,VKX"Q$IZ>L7X+H]'3V*Q#=C\,U3:G9*]#(]-2H M[_R77Y^V9W<\+R0ABM(S M3A&"U',0E#8UBA"DG(.@M,(5(4@^!T&YW?RIVW%@%QXH7[9*N-Z0_VRI5>= M*U#H?]G"O_X06-Q86MSOR`=^ZXRG+[ZUT3.W.99OUR"E[W%6O-#UCF_-DZ^U M;([WSU?O*978#/;-%%'+QF+G:I;'XK!W5DV;WCX#7<_F:)\[63V;_CYW_'HV M7-G+=ZR03?D1RU^0K'R3\CD.-/C&I5Q9W_+#8VWQ/@B4N;=J6=VN.!=?B^^R M>N42SWYG9)VQ[`CQ+\C_U:;[S,&O=.&ZG$BHB2^-:&0S7=2 MR20[*.+9DO11_[I50FQ45ED M*QX=;U-LL!6Q"ZTG-!Y]O/-CGH/>BP^DXN:=,;].7<02K=H;K45WM.;[AZ<3 MJ;/\<[*1T+K7[M8(60NAWF8>K0HU]&@1#\0ZVLRC5:&&'OV(]M"OXI%50VBM M1\\++0)'6,>;>;0JU,RCI7FFL'[NL8?*.HTK:#D^1\/JJ1/FXWF9WG*8CV;> MK,@T\^9H.5I(,V]69)IYLP!PLZZU(M/,FT4(E,%&WJS(-/-F$==ELTZ^(M/, MF[-%9^ANY,ZJ3FU_*LNL2D]$JL?HZ1Z@2IM(E^CA(WUZFQ*7Z&2ZF]* MOZZ0Y3%*RJVW"4&E&"75"[0Q!$UBE+PX!$UBE*PK9'F,DG+K;4)0*49)]0)M M#$&3&"4O#D&3&"7K"ED>HZ3<>IL05(I14KU`&T/0)$;)QA#T2BNI`01`=)/8 M<^5Z-2.S(<%:D=E*JZU)$,AUQ6P2T*Y<[Q]7;4VB0,)BHHM5N&U19>N2G8O6 M57:%@:_4NL[`5]ZGJPQ\E0M4;:"J7L+&>O_,@:_!]6\]HI=#^?X*I"LLZ$JM MMXETM05=Y0)MC'2C!=U+(]UH0?*S+-6[=;JFKBK<)&NPEE%%#F./*'TG`Y,7N)+,]>E4Z]64M6.L7_8T4MCSTT-O"K MF3+64GRB\6&_B??K![3C)QJ\N\RY.)39\%`-.\&AGNEA1II_OGJM"H+4M;K=0;__JINGI<]>M]NW7G5/3HZ/3OK' MEC7@XP?][BO1?6G'.$UXRPTA7G$EKSMN>B=E]"L<^K7IS>LWXC=^AOB#]XG` M54.#-?WKA$>G@T/&X^"!X[YU:678/3JTNH<]?FGZO-\_[YX*'8Z2>W_JB\^/ M8_';ZS>M?[U[L\]&K>..)=Y]D.I>1G*V+_J'ULGAZ=EK/M_57:AY92^%'LMA M2`.!%@\^370T5H3Q3:)&/@_[_`39A!;N4HW"V(\TC2PBNY/6#5'XD@O"&UOD<=8!6#+?*'^F.,)V:[(M7R@6=A+5(8W[B81)- M1C$[,(PF@3PWGL;^2`KR5^8_)3?&@;E'Q<#6,8?28CJ;F4.+L_+TG6_GHB9Q MS`-+X?_`3K%P-*^1//TE_@SC()D*;U[= M]*=L-I:FC+SI"X<>652%^4M>JW2*<:+,8[GT^YVO@FE(`_Y<>6$2A;'4![G! M-(PB*DZ<^6%12:S']3T_FENY,]=@X8=091/?6.DDRI4D_:9,6!5C3\+9HH;Y MN-[Q`OUNOFYIXFZ%]=41?S\[XV8)1-33_F^-@E-+_YU&(54@=,P MNQ,)5_]<)>=14WGNI?"2B(#2//5]N?Q^^#6,)X\+MW]JM0<_FDC]H[%D9GS@ M.IS_7&RB0'V!X9^KC+63(-(3.FWH2W\?) M=*%BL/B)9E-E0S_F6>J:,29,\C^:FB?#XF'H/VC,Y".H$'1&6I=24U_UK26D'N"7\\EKZ:LT)Z/T2H M:9.ISC=\,U-G9]%Q6^;4+4I*M$S-WR;<2-SSZ#.2 M;<);F3;KO"Y.U.+NRVX5#==J44U3*(81&WJ;(9G4W,T@&K-K#&O7V7VEA\, MGBU&+U^,;T=F#&-)UKZ7:+5811>RT,UZ0'_\IAIQ%US-"5CTA-NG5-SFJ;]*O;W)HATG@2]I/-UK/7*S+/<2MCQ;WY7X$+_\D.OR0X;EAP3EAY3T M?#[DIGQP*&*#_4#UC9FXW^9SQ5OJO#,SR(8!C87Y&HS_1,.`F9>Y?YM1X8!6 M:OQ63"!X46@Z;8"[CLZ"#HHLP[E!FBS+]1YCW*C%#F"&7&*#-!F6.4F:),A3(URLQ0Y@1E/H#, M%/&9(CY3Q&>*^$P1GRGB,T5\IHC/%/&9(CY3Q&>*^$P1GRGB,T5\IHC/%/&9 M(CY3Q&>*^$P1GRGB,T5\IHC/%/&9(CY3Q&>*^$P1GRGB,T5\IHA/A?A4B$^% M^%2(3X7X5(A/A?A4B$^%^%2(3X7X5(A/A?A4B$^%^%2(3X7X5(A/A?A4B$^% M^%2(3X7X5(A/A?A4B$^%^%2(3X7X5(A/A?A4B$^-^-2(3XWXU(A/C?C4B$^- M^-2(3XWXU(A/C?C4B$^-^-2(3XWXU(A/C?C4B$^-^-2(3XWXU(A/C?C4B$^- M^-2(3XWXU(A/C?C4B$^-^-2(3QOQ:2,^;<2GC?BT$9\VXM-&?-J(3QOQ:2,^ M;<2GC?BT$9\VXM-&?-J(3QOQ:2,^;<2GC?BT$9\VXM-&?-J(3QOQ:2,^;<2G MC?BT$9\VXM-&?-J(3P?QZ2`^'<2G@_AT$)\.XM-!?#J(3P?QZ2`^'<2G@_AT M$)\.XM-!?#J(3P?QZ2`^'<2G@_AT$)\.XM-!?#J(3P?QZ2`^'<2G@_AT$)\. MXM-!?#J(3Q?QZ2(^7<2GB_AT$9\NXM-%?+J(3Q?QZ2(^7<2GB_AT$9\NXM-% M?+J(3Q?QZ2(^7<2GB_AT$9\NXM-%?+J(3Q?QZ2(^7<2GB_AT$9\NXM-%?+J( M3P_QZ2$^/<2GA_CT$)\>XM-#?'J(3P_QZ2$^/<2GA_CT$)\>XM-#?'J(3P_Q MZ2$^/<2GA_CT$)\>XM-#?'J(3P_QZ2$^/<2GA_CT$)\>XM-#?'HK?/ZO'U#8 EI5W:I5W:I5W:I5W:I5W:I5W:I5W:I5W:I8W2?P$_R(7]`#`"```` ` end >Release-Note: >Audit-Trail: >Unformatted: From owner-freebsd-bugs@FreeBSD.ORG Tue Nov 25 14:56:57 2003 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6345B16A4CE; Tue, 25 Nov 2003 14:56:57 -0800 (PST) Received: from shellma.zin.lublin.pl (shellma.zin.lublin.pl [212.182.126.68]) by mx1.FreeBSD.org (Postfix) with ESMTP id 76EE943FB1; Tue, 25 Nov 2003 14:56:56 -0800 (PST) (envelope-from pawmal-posting@freebsd.lublin.pl) Received: by shellma.zin.lublin.pl (Postfix, from userid 1018) id 65FBC5F103; Wed, 26 Nov 2003 00:03:38 +0100 (CET) Date: Wed, 26 Nov 2003 00:03:38 +0100 From: Pawel Malachowski To: Warner Losh Message-ID: <20031125230338.GA51850@shellma.zin.lublin.pl> References: <200304050729.h357TdcT011807@freefall.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-2 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <200304050729.h357TdcT011807@freefall.freebsd.org> User-Agent: Mutt/1.4.1i cc: freebsd-bugs@FreeBSD.org cc: slavoff@bnc.bg cc: david@madole.net Subject: Re: i386/15845: Driver for RealTek 8029 X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 Nov 2003 22:56:57 -0000 On Sat, Apr 05, 2003 at 12:29:39AM -0700, Warner Losh wrote: > Responsible-Changed-From-To: freebsd-bugs->imp > Responsible-Changed-By: imp > Responsible-Changed-When: Sat Apr 5 00:27:46 MST 2003 > Responsible-Changed-Why: > I'll try to integrate the patch and see if I can test it on the > 8029pci that I think I still have. Any progress? I was installing 4.9-RELEASE (quite accidentally, huh) on machine with RealTek 8029 PCI card, it worked with ed0 but rather poorly (2-10KB/s in, 300KB/s out); expecting some problems with autonegotiation with my 10/100 NWay switch, I tried to check media status and realized, it is not possible to check or change media type on ed0, no such option. -- Paweł Małachowski From owner-freebsd-bugs@FreeBSD.ORG Tue Nov 25 15:20:17 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B142216A4CE for ; Tue, 25 Nov 2003 15:20:17 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id DF9AB43FAF for ; Tue, 25 Nov 2003 15:20:15 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAPNKFFY055780 for ; Tue, 25 Nov 2003 15:20:15 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAPNKFkP055779; Tue, 25 Nov 2003 15:20:15 -0800 (PST) (envelope-from gnats) Resent-Date: Tue, 25 Nov 2003 15:20:15 -0800 (PST) Resent-Message-Id: <200311252320.hAPNKFkP055779@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Adam Smith Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7E9AD16A4CE for ; Tue, 25 Nov 2003 15:17:47 -0800 (PST) Received: from gremlin.internode.com.au (gremlin.internode.com.au [192.83.231.88]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3726643F93 for ; Tue, 25 Nov 2003 15:17:46 -0800 (PST) (envelope-from adam@gremlin.internode.com.au) Received: from gremlin.internode.com.au (localhost [127.0.0.1]) hAPNHuJ0008373 for ; Wed, 26 Nov 2003 09:47:56 +1030 (CST) (envelope-from adam@gremlin.internode.com.au) Received: (from adam@localhost) by gremlin.internode.com.au (8.12.9/8.12.9/Submit) id hAPNHuQA008372; Wed, 26 Nov 2003 09:47:56 +1030 (CST) Message-Id: <200311252317.hAPNHuQA008372@gremlin.internode.com.au> Date: Wed, 26 Nov 2003 09:47:56 +1030 (CST) From: Adam Smith To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Subject: bin/59693: df & du output values double when redirected from cron X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Adam Smith List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 Nov 2003 23:20:17 -0000 >Number: 59693 >Category: bin >Synopsis: df & du output values double when redirected from cron >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Nov 25 15:20:15 PST 2003 >Closed-Date: >Last-Modified: >Originator: Adam Smith >Release: FreeBSD 5.1-RELEASE i386 >Organization: Internode >Environment: System: FreeBSD gremlin 5.1-RELEASE FreeBSD 5.1-RELEASE #0: Tue Oct 7 13:44:38 CST 2003 adam@panther:/usr/obj/usr/src/sys/PANTHER i386 >Description: When using df or du in a scripted cron job, for any redirected output to a text file, the usage integer values are doubled. >How-To-Repeat: Create the following script and add it to cron as root or a regular user: $ crontab -l */1 * * * * /home/adam/test.sh > /home/adam/output.txt $ cat test.sh #!/bin/sh df Now let's look at the output: $ df | grep ad0s2f /dev/ad0s2f 49028074 26711856 18393974 59% /usr $ cat output.txt /dev/ad0s2f 98056148 53423708 36787952 59% /usr Both du and df produced the same results, while ls worked properly, and other programs with "digit" values such as iostat worked fine aswell. >Fix: No fix known. >Release-Note: >Audit-Trail: >Unformatted: From owner-freebsd-bugs@FreeBSD.ORG Tue Nov 25 15:25:07 2003 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9CD6A16A4CE; Tue, 25 Nov 2003 15:25:07 -0800 (PST) Received: from shellma.zin.lublin.pl (shellma.zin.lublin.pl [212.182.126.68]) by mx1.FreeBSD.org (Postfix) with ESMTP id 160F943F93; Tue, 25 Nov 2003 15:25:06 -0800 (PST) (envelope-from pawmal-posting@freebsd.lublin.pl) Received: by shellma.zin.lublin.pl (Postfix, from userid 1018) id EC3855F103; Wed, 26 Nov 2003 00:31:48 +0100 (CET) Date: Wed, 26 Nov 2003 00:31:48 +0100 From: Pawel Malachowski To: Doug Barton Message-ID: <20031125233148.GB51850@shellma.zin.lublin.pl> References: <200303150816.h2F8Ghr2039611@freefall.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-2 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <200303150816.h2F8Ghr2039611@freefall.freebsd.org> User-Agent: Mutt/1.4.1i cc: soralx@cydem.zp.ua cc: freebsd-bugs@FreeBSD.org Subject: Re: conf/41772: can't disable keybell X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 Nov 2003 23:25:07 -0000 On Sat, Mar 15, 2003 at 12:16:43AM -0800, Doug Barton wrote: > Synopsis: can't disable keybell > > State-Changed-From-To: open->patched > State-Changed-By: dougb > State-Changed-When: Sat Mar 15 00:11:18 PST 2003 > State-Changed-Why: > > keramida's patch to rc.conf(5) will help. I also just committed > an update to /etc/defaults/rc.conf that should help as well. > > > Responsible-Changed-From-To: freebsd-bugs->dougb > Responsible-Changed-By: dougb > Responsible-Changed-When: Sat Mar 15 00:11:18 PST 2003 > Responsible-Changed-Why: > > I'll MFC this after the freeze. I guess, we are after freeze now, so it can be MFC-ed. -- Paweł Małachowski From owner-freebsd-bugs@FreeBSD.ORG Tue Nov 25 15:41:13 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D370516A4D0 for ; Tue, 25 Nov 2003 15:41:12 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id DA15F4400F for ; Tue, 25 Nov 2003 15:40:14 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAPNeEFY056474 for ; Tue, 25 Nov 2003 15:40:14 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAPNeEQ0056473; Tue, 25 Nov 2003 15:40:14 -0800 (PST) (envelope-from gnats) Date: Tue, 25 Nov 2003 15:40:14 -0800 (PST) Message-Id: <200311252340.hAPNeEQ0056473@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Pawel Malachowski Subject: Re: bin/59693: df & du output values double when redirected from cron X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Pawel Malachowski List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 Nov 2003 23:41:13 -0000 The following reply was made to PR bin/59693; it has been noted by GNATS. From: Pawel Malachowski To: Adam Smith Cc: FreeBSD-gnats-submit@freebsd.org Subject: Re: bin/59693: df & du output values double when redirected from cron Date: Wed, 26 Nov 2003 00:37:31 +0100 On Wed, Nov 26, 2003 at 09:47:56AM +1030, Adam Smith wrote: > Now let's look at the output: > > $ df | grep ad0s2f > /dev/ad0s2f 49028074 26711856 18393974 59% /usr > > $ cat output.txt > /dev/ad0s2f 98056148 53423708 36787952 59% /usr > > Both du and df produced the same results, while ls worked properly, > and other programs with "digit" values such as iostat worked fine aswell. How about BLOCKSIZE in Yours and crons environment? -- Paweł Małachowski From owner-freebsd-bugs@FreeBSD.ORG Tue Nov 25 15:53:16 2003 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0BC0816A4D9 for ; Tue, 25 Nov 2003 15:53:16 -0800 (PST) Received: from gremlin.internode.com.au (gremlin.internode.com.au [192.83.231.88]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4E12843FBD for ; Tue, 25 Nov 2003 15:53:14 -0800 (PST) (envelope-from adam@internode.com.au) Received: from gremlin.internode.com.au (localhost [127.0.0.1]) hAPNqOJ0008778; Wed, 26 Nov 2003 10:22:24 +1030 (CST) (envelope-from adam@internode.com.au) Received: (from adam@localhost) by gremlin.internode.com.au (8.12.9/8.12.9/Submit) id hAPNqNNL008777; Wed, 26 Nov 2003 10:22:23 +1030 (CST) X-Authentication-Warning: gremlin.internode.com.au: adam set sender to adam@internode.com.au using -f Date: Wed, 26 Nov 2003 10:22:23 +1030 From: Adam Smith To: Pawel Malachowski Message-ID: <20031125235222.GC8392@internode.com.au> References: <200311252340.hAPNeEQ0056473@freefall.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=unknown-8bit Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <200311252340.hAPNeEQ0056473@freefall.freebsd.org> User-Agent: Mutt/1.4.1i X-Face: $vsV$1FNbZN\JVpjV#&+/!oVW`Kw$j?w_,te\SS}(tKD21c+l$t%\RCS(r$G; XXk]6,(!N:&(N3EV0bY`3):UrgG7'*qsj3l.75IaHV1<`i*{[L\:F*l6fH##C:-p2]xW/R-Z:!bo; 5g3GP-{I{}7O>tN}`Xm/=-:8NG?f-r'$Qc3y[aW-7'W_S<`KYU!_; `7K=kuC$-.7J2*kk=~`c@ADp+xhsv(!a@eW-R_5wtx+tC)(]%W+ cc: freebsd-bugs@freebsd.org Subject: Re: bin/59693: df & du output values double when redirected from cron X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 Nov 2003 23:53:16 -0000 On Tue, Nov 25, 2003 at 03:40:14PM -0800, Pawel Malachowski said: > The following reply was made to PR bin/59693; it has been noted by GNATS. > > From: Pawel Malachowski > To: Adam Smith > Cc: FreeBSD-gnats-submit@freebsd.org > Subject: Re: bin/59693: df & du output values double when redirected from cron > Date: Wed, 26 Nov 2003 00:37:31 +0100 > > On Wed, Nov 26, 2003 at 09:47:56AM +1030, Adam Smith wrote: > > > Now let's look at the output: > > > > $ df | grep ad0s2f > > /dev/ad0s2f 49028074 26711856 18393974 59% /usr > > > > $ cat output.txt > > /dev/ad0s2f 98056148 53423708 36787952 59% /usr > > > > Both du and df produced the same results, while ls worked properly, > > and other programs with "digit" values such as iostat worked fine aswell. > > How about BLOCKSIZE in Yours and crons environment? Well done! "Bug" resolved :) "df -k" now works fine. -- Adam Smith : adam@internode.com.au Corporate Support & Provisioning Internode : http://www.internode.on.net Phone : (08) 8228 2999 ÔżÔ¬ From owner-freebsd-bugs@FreeBSD.ORG Tue Nov 25 15:56:54 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 186EA16A4CE; Tue, 25 Nov 2003 15:56:54 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7ACD843F3F; Tue, 25 Nov 2003 15:56:53 -0800 (PST) (envelope-from bms@FreeBSD.org) Received: from freefall.freebsd.org (bms@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAPNurFY056858; Tue, 25 Nov 2003 15:56:53 -0800 (PST) (envelope-from bms@freefall.freebsd.org) Received: (from bms@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAPNurwI056854; Tue, 25 Nov 2003 15:56:53 -0800 (PST) (envelope-from bms) Date: Tue, 25 Nov 2003 15:56:53 -0800 (PST) From: Bruce M Simpson Message-Id: <200311252356.hAPNurwI056854@freefall.freebsd.org> To: bms@FreeBSD.org, freebsd-bugs@FreeBSD.org, bms@FreeBSD.org Subject: Re: kern/57100: disable hardware checksums when using bridge(4). X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 Nov 2003 23:56:54 -0000 Synopsis: disable hardware checksums when using bridge(4). Responsible-Changed-From-To: freebsd-bugs->bms Responsible-Changed-By: bms Responsible-Changed-When: Tue 25 Nov 2003 15:56:35 PST Responsible-Changed-Why: Another one for the evil network junta. http://www.freebsd.org/cgi/query-pr.cgi?pr=57100 From owner-freebsd-bugs@FreeBSD.ORG Tue Nov 25 15:59:19 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 864D316A4CE; Tue, 25 Nov 2003 15:59:19 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id B1A5A43F93; Tue, 25 Nov 2003 15:59:18 -0800 (PST) (envelope-from bms@FreeBSD.org) Received: from freefall.freebsd.org (bms@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAPNxIFY056942; Tue, 25 Nov 2003 15:59:18 -0800 (PST) (envelope-from bms@freefall.freebsd.org) Received: (from bms@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAPNxIuu056938; Tue, 25 Nov 2003 15:59:18 -0800 (PST) (envelope-from bms) Date: Tue, 25 Nov 2003 15:59:18 -0800 (PST) From: Bruce M Simpson Message-Id: <200311252359.hAPNxIuu056938@freefall.freebsd.org> To: bms@FreeBSD.org, freebsd-bugs@FreeBSD.org, imp@FreeBSD.org Subject: Re: kern/50644: [PATCH] Update xe driver: multicast, hardware setup, etc. X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 Nov 2003 23:59:19 -0000 Synopsis: [PATCH] Update xe driver: multicast, hardware setup, etc. Responsible-Changed-From-To: freebsd-bugs->imp Responsible-Changed-By: bms Responsible-Changed-When: Tue 25 Nov 2003 15:58:50 PST Responsible-Changed-Why: Maybe imp has seen this already? http://www.freebsd.org/cgi/query-pr.cgi?pr=50644 From owner-freebsd-bugs@FreeBSD.ORG Tue Nov 25 16:02:09 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EB6F316A4CE; Tue, 25 Nov 2003 16:02:09 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id D562443F75; Tue, 25 Nov 2003 16:02:08 -0800 (PST) (envelope-from simon@FreeBSD.org) Received: from freefall.freebsd.org (simon@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAQ028FY057154; Tue, 25 Nov 2003 16:02:08 -0800 (PST) (envelope-from simon@freefall.freebsd.org) Received: (from simon@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAQ028TW057150; Tue, 25 Nov 2003 16:02:08 -0800 (PST) (envelope-from simon) Date: Tue, 25 Nov 2003 16:02:08 -0800 (PST) From: "Simon L. Nielsen" Message-Id: <200311260002.hAQ028TW057150@freefall.freebsd.org> To: adam@internode.com.au, simon@FreeBSD.org, freebsd-bugs@FreeBSD.org Subject: Re: bin/59693: df & du output values double when redirected from cron X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Nov 2003 00:02:10 -0000 Synopsis: df & du output values double when redirected from cron State-Changed-From-To: open->closed State-Changed-By: simon State-Changed-When: Tue Nov 25 16:00:50 PST 2003 State-Changed-Why: Submitter has confirmed that this was not a bug, but caused by different values of the BLOCKSIZE environment variable. http://www.freebsd.org/cgi/query-pr.cgi?pr=59693 From owner-freebsd-bugs@FreeBSD.ORG Tue Nov 25 16:02:22 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5B00616A4D0; Tue, 25 Nov 2003 16:02:22 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6A66F43F3F; Tue, 25 Nov 2003 16:02:21 -0800 (PST) (envelope-from bms@FreeBSD.org) Received: from freefall.freebsd.org (bms@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAQ02LFY057177; Tue, 25 Nov 2003 16:02:21 -0800 (PST) (envelope-from bms@freefall.freebsd.org) Received: (from bms@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAQ02KE1057173; Tue, 25 Nov 2003 16:02:20 -0800 (PST) (envelope-from bms) Date: Tue, 25 Nov 2003 16:02:20 -0800 (PST) From: Bruce M Simpson Message-Id: <200311260002.hAQ02KE1057173@freefall.freebsd.org> To: eugen@grosbein.pp.ru, bms@FreeBSD.org, freebsd-bugs@FreeBSD.org, bms@FreeBSD.org Subject: Re: bin/51927: routed(8) fails to use multicast with IFF_POINTOPOINT interfaces X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Nov 2003 00:02:22 -0000 Synopsis: routed(8) fails to use multicast with IFF_POINTOPOINT interfaces State-Changed-From-To: open->feedback State-Changed-By: bms State-Changed-When: Tue 25 Nov 2003 16:00:54 PST State-Changed-Why: I'll take this (network junta macrophage) Responsible-Changed-From-To: freebsd-bugs->bms Responsible-Changed-By: bms Responsible-Changed-When: Tue 25 Nov 2003 16:00:54 PST Responsible-Changed-Why: Oop, meant to switch these log messages round. Eugene can you supply the patch you used to do this? I think this is a reasonable fix -- routed should ask for membership explicitly on the interface concerned. Have you raised this with the rhyolite.com guys? http://www.freebsd.org/cgi/query-pr.cgi?pr=51927 From owner-freebsd-bugs@FreeBSD.ORG Tue Nov 25 16:03:47 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6E43E16A4CE; Tue, 25 Nov 2003 16:03:47 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id CE61543FD7; Tue, 25 Nov 2003 16:03:46 -0800 (PST) (envelope-from bms@FreeBSD.org) Received: from freefall.freebsd.org (bms@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAQ03kFY057256; Tue, 25 Nov 2003 16:03:46 -0800 (PST) (envelope-from bms@freefall.freebsd.org) Received: (from bms@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAQ03kYO057252; Tue, 25 Nov 2003 16:03:46 -0800 (PST) (envelope-from bms) Date: Tue, 25 Nov 2003 16:03:46 -0800 (PST) From: Bruce M Simpson Message-Id: <200311260003.hAQ03kYO057252@freefall.freebsd.org> To: bms@FreeBSD.org, freebsd-bugs@FreeBSD.org, wpaul@FreeBSD.org Subject: Re: kern/35511: sis(4) multicast filtering doesn't pass some Appletalk packets X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Nov 2003 00:03:47 -0000 Synopsis: sis(4) multicast filtering doesn't pass some Appletalk packets Responsible-Changed-From-To: freebsd-bugs->wpaul Responsible-Changed-By: bms Responsible-Changed-When: Tue 25 Nov 2003 16:03:11 PST Responsible-Changed-Why: Maybe wpaul can help on this one. http://www.freebsd.org/cgi/query-pr.cgi?pr=35511 From owner-freebsd-bugs@FreeBSD.ORG Tue Nov 25 17:24:25 2003 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2E5FB16A4CE; Tue, 25 Nov 2003 17:24:25 -0800 (PST) Received: from hotmail.com (bay9-f15.bay9.hotmail.com [64.4.47.15]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6050543F75; Tue, 25 Nov 2003 17:24:24 -0800 (PST) (envelope-from amin_abdul@hotmail.com) Received: from mail pickup service by hotmail.com with Microsoft SMTPSVC; Tue, 25 Nov 2003 17:24:24 -0800 Received: from 198.168.30.2 by by9fd.bay9.hotmail.msn.com with HTTP; Wed, 26 Nov 2003 01:24:24 GMT X-Originating-IP: [198.168.30.2] X-Originating-Email: [amin_abdul@hotmail.com] From: "Amin Abdul" To: freebsd-questions@freebsd.org Date: Wed, 26 Nov 2003 01:24:24 +0000 Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 26 Nov 2003 01:24:24.0362 (UTC) FILETIME=[06AB50A0:01C3B3BC] cc: freebsd-bugs@freebsd.org Subject: VPN(touch-ID)/gif0/Dynamic Routing Issue [freeBSD 4.8 Release] X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Nov 2003 01:24:25 -0000 Hello, I have few questions regarding the Dynamic Rouitng (i.e. routed) and gif0 interface. Questions: 1. There is any in-compatibility or known bug, if we use routed and gif0 interface together (I am using freeBSD 4.8 Release). 2. If there is no known bug then any one tested the above mention combination (routed and gif0 interface) 3. Is there any freeBSD document which describe how to configure gif0 and routed together. Details: I go through the following documents: http://www.freebsd.org/handbook/ipsec.html http://asherah.dyndns.org/~josh/ipsec-howto.txt and follow the following steps: 1. I am using the www.freebsd.org/handbook/ipsec.html diagram as my reference network 2. Configure the gif0 interface , it work fine (tested by ping and tcpdump) 3. Configure IPSec in Transport mode (since I am interested in forwarding dynamic routing information over point-2-point VPN) using draft-touch-ipsec- vpn approach, i.e: IPSec policy On Network 1: spdadd A.B.C.D W.X.Y.Z any -P out ipsec esp/transport//use; spdadd W.X.Y.Z A.B.C.D any -P in ipsec esp/transport//use; On Network 2: spdadd W.X.Y.Z A.B.C.D any -P out ipsec esp/transport//use; spdadd A.B.C.D W.X.Y.Z any -P in ipsec esp/transport//use; It works fine (ping and tcpdump). 3. Now I start "routed" with "-s" options, It never saw any routing information flow through the VPN (tcpdump). But I saw some ERROR message (IP_ADD_MEMBERSHIP RIP) during system REBOOT 4. So, I disabled the IPSec and try again but I still saw no routing information over VPN (tcpdump). But I saw some ERROR message (IP_ADD_MEMBERSHIP RIP) during system REBOOT 5. So, I disabled the gif0 interface as well, I saw the RIP packets exchanges between two freeBSD machine. Summary: 1. routed works fine without gif0 interface. 2. VPN works fine without routed. Thanks, Amin _________________________________________________________________ Help STOP SPAM with the new MSN 8 and get 2 months FREE* http://join.msn.com/?page=dept/bcomm&pgmarket=en-ca&RU=http%3a%2f%2fjoin.msn.com%2f%3fpage%3dmisc%2fspecialoffers%26pgmarket%3den-ca From owner-freebsd-bugs@FreeBSD.ORG Tue Nov 25 19:20:15 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 666CF16A4CE for ; Tue, 25 Nov 2003 19:20:15 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id BC45243FE0 for ; Tue, 25 Nov 2003 19:20:14 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAQ3KEFY064339 for ; Tue, 25 Nov 2003 19:20:14 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAQ3KEos064338; Tue, 25 Nov 2003 19:20:14 -0800 (PST) (envelope-from gnats) Date: Tue, 25 Nov 2003 19:20:14 -0800 (PST) Message-Id: <200311260320.hAQ3KEos064338@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: John Gillis Subject: Re: kern/58947: Random Kernel Crash X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: John Gillis List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Nov 2003 03:20:15 -0000 The following reply was made to PR kern/58947; it has been noted by GNATS. From: John Gillis To: freebsd-gnats-submit@FreeBSD.org Cc: Subject: Re: kern/58947: Random Kernel Crash Date: Tue, 25 Nov 2003 22:14:29 -0500 (EST) Sorry for the delay, forgot to fix the address and didn't see the email. I haven't gotten the problem again, so I'm guessing it was a freak occurance. Also, 2 days later, I recompiled the kernel, so maybe it was an error between the 2nd->9th. Feel free to close the PR. Thanks, John From owner-freebsd-bugs@FreeBSD.ORG Wed Nov 26 00:00:54 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 15CD816A4CE for ; Wed, 26 Nov 2003 00:00:54 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3C89343FEC for ; Wed, 26 Nov 2003 00:00:44 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAQ80iFY019245 for ; Wed, 26 Nov 2003 00:00:44 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAQ80iUC019244; Wed, 26 Nov 2003 00:00:44 -0800 (PST) (envelope-from gnats) Resent-Date: Wed, 26 Nov 2003 00:00:44 -0800 (PST) Resent-Message-Id: <200311260800.hAQ80iUC019244@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, hesford@uiuc.edu Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 485CD16A4CE for ; Tue, 25 Nov 2003 23:53:41 -0800 (PST) Received: from smtp807.mail.sc5.yahoo.com (smtp807.mail.sc5.yahoo.com [66.163.168.186]) by mx1.FreeBSD.org (Postfix) with SMTP id BE3C543FA3 for ; Tue, 25 Nov 2003 23:53:39 -0800 (PST) (envelope-from jester@core.usrlib.org) Received: from adsl-64-108-1-50.dsl.chmpil.ameritech.net (HELO core.usrlib.org) (hesford@sbcglobal.net@64.108.1.50 with login) by smtp-sbc-v1.mail.vip.sc5.yahoo.com with SMTP; 26 Nov 2003 07:53:38 -0000 Received: by core.usrlib.org (Postfix, from userid 1001) id 2C4B314C23; Wed, 26 Nov 2003 01:53:38 -0600 (CST) Message-Id: <20031126075338.2C4B314C23@core.usrlib.org> Date: Wed, 26 Nov 2003 01:53:38 -0600 (CST) From: Andrew Hesford To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 cc: hesford@uiuc.edu Subject: kern/59698: Rework of ukbd HID to AT code translation X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: hesford@uiuc.edu List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Nov 2003 08:00:54 -0000 >Number: 59698 >Category: kern >Synopsis: Rework of ukbd HID to AT code translation >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: update >Submitter-Id: current-users >Arrival-Date: Wed Nov 26 00:00:44 PST 2003 >Closed-Date: >Last-Modified: >Originator: Andrew Hesford >Release: FreeBSD CURRENT (20031126) >Organization: >Environment: System: FreeBSD core.usrlib.org 4.9-STABLE FreeBSD 4.9-STABLE #35: Wed Oct 29 19:19:47 CST 2003 jester@core.usrlib.org:/usr/obj/usr/src/sys/CORE i386 >Description: The existing USB keyboard implementation contains a haphazard mechanism for translating USB HID codes to AT scancodes. In ukbd.c there is a table mapping a subset of the HID codes to keycodes, and a function converts these keycodes to AT scancodes for feeding into the keyboard driver. Because it relies on keycodes, scancodes that don't map to an existing keycode can not be created by the ukbd driver. My new implementation removes this dependence on keycodes, and instead relies on a table (pulled from a Microsoft URL in the NetBSD ukbd.c) mapping USB HID codes directly to AT scancodes. As a result, things such as the Macintosh keypad equal key now produces a valid scancode, whereas before it generated no code at all. This table may be found at http://www.microsoft.com/HWDEV/TECH/input/Scancode.asp Furthermore, this new implementation removes the keycode2scancode function, which was responsible for back-converting keycodes to AT scancodes. This saves a function call and some computation per keypress. The implementation is not complete, but is meant to be a step towards a fully-mapped USB keyboard. At present I only map the HID Usage IDs from Usage Page 07. While this includes all they keys on a 104-key keyboard and then some, certain useful keys (like multimedia keys) are unmapped. When I have access to a USB keyboard with such keys, I can look into supporting them. I think this code is commit-ready even though it is not a full implementation. The driver has greater functionality than before (for example, the keypad equal key generates a scancode now) and increased efficiency. From my testing, there are no new bugs, and maybe fewer old ones. Note: some keys that now generate valid scancodes still don't behave as expected. This is a limitation of the AT keyboard driver, not the USB driver. The keypad equal key I keep mentioning is supposed to generate an AT scancode 0x59, and it does, but the AT keyboard driver maps the keypad enter scan code (0xE0 0x1C) to the keycode 0x59. Hence, pressing keypad equal is the same as pressing keypad enter as far as the console is concerned. To correct this, the AT keyboard driver (and perhaps syscons) will need to be updated. >How-To-Repeat: There is nothing to repeat. >Fix: --- /usr/src/sys/dev/usb/ukbd.c.orig Tue Nov 25 14:12:35 2003 +++ /usr/src/sys/dev/usb/ukbd.c Tue Nov 25 14:10:57 2003 @@ -275,54 +275,56 @@ { MOD_WIN_R, 0xe7 }, }; -#define NN 0 /* no translation */ + +#define NN 0x0000 /* no translation */ /* * Translate USB keycodes to AT keyboard scancodes. */ -/* - * FIXME: Mac USB keyboard generates: - * 0x53: keypad NumLock/Clear - * 0x66: Power - * 0x67: keypad = - * 0x68: F13 - * 0x69: F14 - * 0x6a: F15 - */ -Static u_int8_t ukbd_trtab[256] = { - 0, 0, 0, 0, 30, 48, 46, 32, /* 00 - 07 */ - 18, 33, 34, 35, 23, 36, 37, 38, /* 08 - 0F */ - 50, 49, 24, 25, 16, 19, 31, 20, /* 10 - 17 */ - 22, 47, 17, 45, 21, 44, 2, 3, /* 18 - 1F */ - 4, 5, 6, 7, 8, 9, 10, 11, /* 20 - 27 */ - 28, 1, 14, 15, 57, 12, 13, 26, /* 28 - 2F */ - 27, 43, 43, 39, 40, 41, 51, 52, /* 30 - 37 */ - 53, 58, 59, 60, 61, 62, 63, 64, /* 38 - 3F */ - 65, 66, 67, 68, 87, 88, 92, 70, /* 40 - 47 */ - 104, 102, 94, 96, 103, 99, 101, 98, /* 48 - 4F */ - 97, 100, 95, 69, 91, 55, 74, 78, /* 50 - 57 */ - 89, 79, 80, 81, 75, 76, 77, 71, /* 58 - 5F */ - 72, 73, 82, 83, 86, 107, NN, NN, /* 60 - 67 */ - NN, NN, NN, NN, NN, NN, NN, NN, /* 68 - 6F */ - NN, NN, NN, NN, NN, NN, NN, NN, /* 70 - 77 */ - NN, NN, NN, NN, NN, NN, NN, NN, /* 78 - 7F */ - NN, NN, NN, NN, NN, NN, NN, 115, /* 80 - 87 */ - 112, 125, 121, 123, NN, NN, NN, NN, /* 88 - 8F */ - NN, NN, NN, NN, NN, NN, NN, NN, /* 90 - 97 */ - NN, NN, NN, NN, NN, NN, NN, NN, /* 98 - 9F */ - NN, NN, NN, NN, NN, NN, NN, NN, /* A0 - A7 */ - NN, NN, NN, NN, NN, NN, NN, NN, /* A8 - AF */ - NN, NN, NN, NN, NN, NN, NN, NN, /* B0 - B7 */ - NN, NN, NN, NN, NN, NN, NN, NN, /* B8 - BF */ - NN, NN, NN, NN, NN, NN, NN, NN, /* C0 - C7 */ - NN, NN, NN, NN, NN, NN, NN, NN, /* C8 - CF */ - NN, NN, NN, NN, NN, NN, NN, NN, /* D0 - D7 */ - NN, NN, NN, NN, NN, NN, NN, NN, /* D8 - DF */ - 29, 42, 56, 105, 90, 54, 93, 106, /* E0 - E7 */ - NN, NN, NN, NN, NN, NN, NN, NN, /* E8 - EF */ - NN, NN, NN, NN, NN, NN, NN, NN, /* F0 - F7 */ - NN, NN, NN, NN, NN, NN, NN, NN, /* F8 - FF */ +Static u_int16_t ukbd_trtab[256] = { + NN, NN, NN, NN, 0x01E, 0x030, 0x02E, 0x020, /* 00-07 */ + 0x012, 0x021, 0x022, 0x023, 0x017, 0x024, 0x025, 0x026, /* 08-0F */ + 0x032, 0x031, 0x018, 0x019, 0x010, 0x013, 0x01F, 0x014, /* 10-17 */ + 0x016, 0x02F, 0x011, 0x02D, 0x015, 0x02C, 0x002, 0x003, /* 18-1F */ + 0x004, 0x005, 0x006, 0x007, 0x008, 0x009, 0x00A, 0x00B, /* 20-27 */ + 0x01C, 0x001, 0x00E, 0x00F, 0x039, 0x00C, 0x00D, 0x01A, /* 28-2F */ + 0x01B, 0x02B, 0x02B, 0x027, 0x028, 0x029, 0x033, 0x034, /* 30-37 */ + 0x035, 0x03A, 0x03B, 0x03C, 0x03D, 0x03E, 0x03F, 0x040, /* 38-3F */ + 0x041, 0x042, 0x043, 0x044, 0x057, 0x058, 0x137, 0x046, /* 40-47 */ + /* FIX BREAK, PAUSE (48): 0x0FF for handling later. */ + 0x0FF, 0x152, 0x147, 0x149, 0x153, 0x14F, 0x151, 0x14D, /* 48-4F */ + 0x14B, 0x150, 0x148, 0x045, 0x135, 0x037, 0x04A, 0x04E, /* 50-57 */ + 0x11C, 0x04F, 0x050, 0x051, 0x04B, 0x04C, 0x04D, 0x047, /* 58-5F */ + 0x048, 0x049, 0x052, 0x053, 0x056, 0x15D, NN, 0x059, /* 60-67 */ + 0x05D, 0x05E, 0x05F, NN, NN, NN, NN, NN, /* 68-6F */ + NN, NN, NN, NN, NN, NN, NN, NN, /* 70-77 */ + NN, NN, NN, NN, NN, NN, NN, NN, /* 78-7F */ + NN, NN, NN, NN, NN, 0x07E, NN, 0x073, /* 80-87 */ + 0x070, 0x07D, 0x079, 0x07B, 0x05C, NN, NN, NN, /* 88-8F */ + /* FIX 90, 91: scancodes 0x0F? lost in translation to keycode. + * Hence we just make them no-ops. + */ + NN, NN, 0x078, 0x077, 0x076, NN, NN, NN, /* 90-97 */ + NN, NN, NN, NN, NN, NN, NN, NN, /* 98-9F */ + NN, NN, NN, NN, NN, NN, NN, NN, /* A0-A7 */ + NN, NN, NN, NN, NN, NN, NN, NN, /* A8-AF */ + NN, NN, NN, NN, NN, NN, NN, NN, /* B0-B7 */ + NN, NN, NN, NN, NN, NN, NN, NN, /* B8-BF */ + NN, NN, NN, NN, NN, NN, NN, NN, /* C0-C7 */ + NN, NN, NN, NN, NN, NN, NN, NN, /* C8-CF */ + NN, NN, NN, NN, NN, NN, NN, NN, /* D0-D7 */ + NN, NN, NN, NN, NN, NN, NN, NN, /* D8-DF */ + 0x01D, 0x02A, 0x038, 0x15B, 0x11D, 0x036, 0x138, 0x15C, /* E0-E7 */ + NN, NN, NN, NN, NN, NN, NN, NN, /* E8-EF */ + NN, NN, NN, NN, NN, NN, NN, NN, /* F0-F7 */ + NN, NN, NN, NN, NN, NN, NN, NN /* F8-FF */ }; +#define PAUSEFIX(c,d) if (((c) == 0x0FF) && !((d) & (MOD_CONTROL_L | MOD_CONTROL_R))) { \ + (c) = 0x045 | SCAN_PREFIX_E1 | SCAN_PREFIX_CTL; } +#define SHIFTFIX(c,d) if ((d) & (MOD_SHIFT_L | MOD_SHIFT_R)) { \ + (c) &= ~SCAN_PREFIX_SHIFT; } +#define KEYUP(c,d) (c) |= ((d) ? SCAN_RELEASE : SCAN_PRESS) + typedef struct ukbd_state { usbd_interface_handle ks_iface; /* interface */ usbd_pipe_handle ks_intrpipe; /* interrupt pipe */ @@ -413,9 +415,6 @@ int flags); Static void set_leds(ukbd_state_t *state, int leds); Static int set_typematic(keyboard_t *kbd, int code); -#ifdef UKBD_EMULATE_ATSCANCODE -Static int keycode2scancode(int keycode, int shift, int up); -#endif /* local variables */ @@ -881,7 +880,6 @@ ukbd_state_t *state; int usbcode; #ifdef UKBD_EMULATE_ATSCANCODE - int keycode; int scancode; #endif @@ -906,12 +904,14 @@ return -1; ++kbd->kb_count; #ifdef UKBD_EMULATE_ATSCANCODE - keycode = ukbd_trtab[KEY_INDEX(usbcode)]; - if (keycode == NN) + scancode = ukbd_trtab[KEY_INDEX(usbcode)]; + if (scancode == NN) return -1; - scancode = keycode2scancode(keycode, state->ks_ndata.modifiers, - usbcode & KEY_RELEASE); + PAUSEFIX(scancode,state->ks_ndata.modifiers); + SHIFTFIX(scancode,state->ks_ndata.modifiers); + KEYUP(scancode,usbcode & KEY_RELEASE); + if (scancode & SCAN_PREFIX) { if (scancode & SCAN_PREFIX_CTL) { state->ks_buffered_char[0] = @@ -956,10 +956,7 @@ ukbd_state_t *state; u_int action; int usbcode; - int keycode; -#ifdef UKBD_EMULATE_ATSCANCODE int scancode; -#endif state = (ukbd_state_t *)kbd->kb_data; next_code: @@ -1000,14 +997,15 @@ #ifdef UKBD_EMULATE_ATSCANCODE /* USB key index -> key code -> AT scan code */ - keycode = ukbd_trtab[KEY_INDEX(usbcode)]; - if (keycode == NN) + scancode = ukbd_trtab[KEY_INDEX(usbcode)]; + if (scancode == NN) return NOKEY; /* return an AT scan code for the K_RAW mode */ if (state->ks_mode == K_RAW) { - scancode = keycode2scancode(keycode, state->ks_ndata.modifiers, - usbcode & KEY_RELEASE); + PAUSEFIX(scancode,state->ks_ndata.modifiers); + SHIFTFIX(scancode,state->ks_ndata.modifiers); + KEYUP(scancode,usbcode & KEY_RELEASE); if (scancode & SCAN_PREFIX) { if (scancode & SCAN_PREFIX_CTL) { state->ks_buffered_char[0] = @@ -1034,12 +1032,12 @@ return usbcode; /* USB key index -> key code */ - keycode = ukbd_trtab[KEY_INDEX(usbcode)]; - if (keycode == NN) + scancode = ukbd_trtab[KEY_INDEX(usbcode)]; + if (scancode == NN) return NOKEY; #endif /* UKBD_EMULATE_ATSCANCODE */ - switch (keycode) { + switch (scancode) { case 0x38: /* left alt (compose key) */ if (usbcode & KEY_RELEASE) { if (state->ks_flags & COMPOSE) { @@ -1055,41 +1053,41 @@ } break; /* XXX: I don't like these... */ - case 0x5c: /* print screen */ + case 0x137: /* print screen */ if (state->ks_flags & ALTS) - keycode = 0x54; /* sysrq */ + scancode = 0x54; /* sysrq */ break; - case 0x68: /* pause/break */ + case 0xFF: /* pause/break */ if (state->ks_flags & CTLS) - keycode = 0x6c; /* break */ + scancode = 0x6c; /* break */ break; } /* return the key code in the K_CODE mode */ if (usbcode & KEY_RELEASE) - keycode |= SCAN_RELEASE; + scancode |= SCAN_RELEASE; if (state->ks_mode == K_CODE) - return keycode; + return scancode; /* compose a character code */ if (state->ks_flags & COMPOSE) { - switch (keycode) { + switch (scancode) { /* key pressed, process it */ case 0x47: case 0x48: case 0x49: /* keypad 7,8,9 */ state->ks_composed_char *= 10; - state->ks_composed_char += keycode - 0x40; + state->ks_composed_char += scancode - 0x40; if (state->ks_composed_char > UCHAR_MAX) return ERRKEY; goto next_code; case 0x4B: case 0x4C: case 0x4D: /* keypad 4,5,6 */ state->ks_composed_char *= 10; - state->ks_composed_char += keycode - 0x47; + state->ks_composed_char += scancode - 0x47; if (state->ks_composed_char > UCHAR_MAX) return ERRKEY; goto next_code; case 0x4F: case 0x50: case 0x51: /* keypad 1,2,3 */ state->ks_composed_char *= 10; - state->ks_composed_char += keycode - 0x4E; + state->ks_composed_char += scancode - 0x4E; if (state->ks_composed_char > UCHAR_MAX) return ERRKEY; goto next_code; @@ -1126,8 +1124,8 @@ } /* keycode to key action */ - action = genkbd_keyaction(kbd, SCAN_CHAR(keycode), - keycode & SCAN_RELEASE, &state->ks_state, + action = genkbd_keyaction(kbd, SCAN_CHAR(scancode), + scancode & SCAN_RELEASE, &state->ks_state, &state->ks_accents); if (action == NOKEY) goto next_code; @@ -1437,32 +1435,6 @@ kbd->kb_delay2 = rates[code & 0x1f]; return 0; } - -#ifdef UKBD_EMULATE_ATSCANCODE -Static int -keycode2scancode(int keycode, int shift, int up) -{ - static int scan[] = { - 0x1c, 0x1d, 0x35, - 0x37 | SCAN_PREFIX_SHIFT, /* PrintScreen */ - 0x38, 0x47, 0x48, 0x49, 0x4b, 0x4d, 0x4f, - 0x50, 0x51, 0x52, 0x53, - 0x46, /* XXX Pause/Break */ - 0x5b, 0x5c, 0x5d, - }; - int scancode; - - scancode = keycode; - if ((keycode >= 89) && (keycode < 89 + sizeof(scan)/sizeof(scan[0]))) - scancode = scan[keycode - 89] | SCAN_PREFIX_E0; - /* Pause/Break */ - if ((keycode == 104) && !(shift & (MOD_CONTROL_L | MOD_CONTROL_R))) - scancode = 0x45 | SCAN_PREFIX_E1 | SCAN_PREFIX_CTL; - if (shift & (MOD_SHIFT_L | MOD_SHIFT_R)) - scancode &= ~SCAN_PREFIX_SHIFT; - return (scancode | (up ? SCAN_RELEASE : SCAN_PRESS)); -} -#endif /* UKBD_EMULATE_ATSCANCODE */ Static int ukbd_driver_load(module_t mod, int what, void *arg) >Release-Note: >Audit-Trail: >Unformatted: From owner-freebsd-bugs@FreeBSD.ORG Wed Nov 26 03:00:38 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0437C16A4CE for ; Wed, 26 Nov 2003 03:00:38 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6614E43FCB for ; Wed, 26 Nov 2003 03:00:37 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAQB0bFY039766 for ; Wed, 26 Nov 2003 03:00:37 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAQB0bCI039765; Wed, 26 Nov 2003 03:00:37 -0800 (PST) (envelope-from gnats) Date: Wed, 26 Nov 2003 03:00:37 -0800 (PST) Message-Id: <200311261100.hAQB0bCI039765@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Jarek Woznica Subject: Re: kern/56095: Apacer Pen Drive fails to work X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Jarek Woznica List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Nov 2003 11:00:38 -0000 The following reply was made to PR kern/56095; it has been noted by GNATS. From: Jarek Woznica To: freebsd-gnats-submit@FreeBSD.org, hburch@lumeta.com Cc: Subject: Re: kern/56095: Apacer Pen Drive fails to work Date: Wed, 26 Nov 2003 10:53:06 +0000 Hello, I am not sure this is the right format of the follow up message... I am using FreebSD 4.9 release and recently purchased pen drive: USB 2.0 Flash Drive by Integral, 256 MB. After some research on the Internet one of my friends sent me link to this PR (kern/56095). I followed instructions described in it and my pen drive started working. Regards, Jarek -- Jarek Woznica HEAnet Ltd Brooklawn House, Crampton Ave, Shelbourne Rd, Ballsbridge, Dublin 4 Phone: +353 (01) 6609040 FAX: +353 (01) 6603666 e-mail: jarek.woznica@heanet.ie From owner-freebsd-bugs@FreeBSD.ORG Wed Nov 26 04:00:38 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3DE4116A4CE for ; Wed, 26 Nov 2003 04:00:38 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2611C43F93 for ; Wed, 26 Nov 2003 04:00:36 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAQC0aFY045592 for ; Wed, 26 Nov 2003 04:00:36 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAQC0ZNX045584; Wed, 26 Nov 2003 04:00:35 -0800 (PST) (envelope-from gnats) Resent-Date: Wed, 26 Nov 2003 04:00:35 -0800 (PST) Resent-Message-Id: <200311261200.hAQC0ZNX045584@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Matthias Andree Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 752C216A4CE for ; Wed, 26 Nov 2003 03:58:11 -0800 (PST) Received: from nx5.hrz.uni-dortmund.de (nx5.HRZ.Uni-Dortmund.DE [129.217.131.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1D9EF43F93 for ; Wed, 26 Nov 2003 03:58:10 -0800 (PST) (envelope-from matthias.andree@web.de) Received: from unimail.uni-dortmund.de (mx1.HRZ.Uni-Dortmund.DE [129.217.128.51]) by nx5.hrz.uni-dortmund.de (Postfix) with ESMTP id BE4374AB39B; Wed, 26 Nov 2003 12:58:08 +0100 (MET) Received: from m2a2.myip.org (bdvbrius7cutrsed@pD951FE76.dip.t-dialin.net [217.81.254.118]) (authenticated (0 bits))hAQBvef7025653; Wed, 26 Nov 2003 12:57:41 +0100 (MET) Received: by merlin.emma.line.org (Postfix, from userid 1001) id 312381B929; Wed, 26 Nov 2003 12:55:20 +0100 (CET) Message-Id: <20031126115520.312381B929@merlin.emma.line.org> Date: Wed, 26 Nov 2003 12:55:20 +0100 (CET) From: Matthias Andree To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Subject: kern/59707: IPFW2 verrevpath not working right for TCP v4? X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Matthias Andree List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Nov 2003 12:00:38 -0000 >Number: 59707 >Category: kern >Synopsis: IPFW2 verrevpath not working right for TCP v4? >Confidential: no >Severity: serious >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed Nov 26 04:00:35 PST 2003 >Closed-Date: >Last-Modified: >Originator: Matthias Andree >Release: FreeBSD 5.2-BETA i386 >Organization: >Environment: System: FreeBSD merlin.emma.line.org 5.2-BETA FreeBSD 5.2-BETA #1: Tue Nov 25 22:59:05 CET 2003 toor@merlin.emma.line.org:/usr/src/sys/i386/compile/MA5 i386 >Description: ipfw * verrevpath seems not to work. ipfw -c show (some parts masked with XXXX): 00100 174 18412 allow via lo0 00200 0 0 deny ip from any to 127.0.0.0/8 00300 0 0 deny ip from 127.0.0.0/8 to any 00400 208 45868 deny log not verrevpath in 00500 0 0 deny ip from 192.168.0.0/24 to any in via tun0 00600 0 0 deny ip from any to 10.0.0.0/8 via tun0 00700 0 0 deny ip from any to 172.16.0.0/12 via tun0 00800 0 0 deny ip from any to 192.168.0.0/16 via tun0 00900 0 0 deny ip from any to 0.0.0.0/8 via tun0 01000 0 0 deny ip from any to 169.254.0.0/16 via tun0 01100 0 0 deny ip from any to 192.0.2.0/24 via tun0 01200 0 0 deny ip from any to 224.0.0.0/4 via tun0 01300 0 0 deny ip from any to 240.0.0.0/4 via tun0 01400 0 0 deny ip from 10.0.0.0/8 to any via tun0 01500 0 0 deny ip from 172.16.0.0/12 to any via tun0 01600 0 0 deny ip from 192.168.0.0/16 to any via tun0 01700 0 0 deny ip from 0.0.0.0/8 to any via tun0 01800 0 0 deny ip from 169.254.0.0/16 to any via tun0 01900 0 0 deny ip from 192.0.2.0/24 to any via tun0 02000 0 0 deny ip from 224.0.0.0/4 to any via tun0 02100 0 0 deny ip from 240.0.0.0/4 to any via tun0 02200 0 0 check-state 02300 41 2108 deny tcp from any to any established 02400 0 0 allow tcp from any to any dst-port 22 in via tun0 setup keep-state 02500 0 0 allow tcp from any to any dst-port 113 in via tun0 setup keep-state 02600 0 0 allow udp from any to me dst-port XXXXXXXXXXXX 02700 2 100 deny log tcp from any to any in via tun0 setup 02800 85 13368 allow tcp from any to any setup keep-state 02900 216 29987 allow udp from any to any dst-port 53 out via tun0 keep-state 03000 55 4180 allow udp from any to any dst-port 123 out via tun0 keep-state 03100 2 156 deny log udp from any to any in via tun0 03200 29 2890 allow udp from any to any 03300 1 92 allow icmp from me to any keep-state 03400 1 92 allow icmp from any to any 03500 0 0 deny log ip from any to any 03600 0 0 pipe 1 out xmit tun0 65535 0 0 allow ip from any to any Now, when I try to connect from my machine to a remote one with "ssh user@1.2.3.4" I'm getting loads of | kernel: ipfw: 400 Deny TCP 1.2.3.4:22 217.225.230.222:49228 in via tun0 | kernel: ipfw: 400 Deny TCP 1.2.3.4:22 217.225.230.222:49228 in via tun0 in syslog and the counter of the 00400 rule increases, and I don't get a connection (times out). Leaving out the 00400 rule makes my outbound TCP connections work. (Apparently the 00400 rule swallows the SYN|ACK packets.) Note I replaced the destination address by 1.2.3.4 and the gateway address by 217.5.*.*. 217.225.230.222 is my IP and 1.2.3.4 is the remote IP. tun0 is a PPPoE interface, with ppp(8). I have a default route via 217.5.*.* gateway on tun0 (both the default route and the host route for this 217.5.*.* gateway use device tun0). "route get 1.2.3.4" prints that 1.2.3.4 is routed via some 217.5.*.* host which is on tun0, so this looks fine: route to: 1.2.3.4 destination: default mask: default gateway: 217.5.*.* interface: tun0 flags: recvpipe sendpipe ssthresh rtt,msec rttvar hopcount mtu expire 0 0 0 0 0 0 1492 0 I'd expect that the "in via tun0" matched the outbound route as returned by "route get". To add to the confusion, NTP (that uses UDP) is fine, the machine will synchronize to an outside server (my ISP's DCF receiver) via the same gateway just fine. Sean Chittenden asked: > Are you on a multi-homed system? -sc Sort of. I do have three xl(4) NICs in my system. xl0 and xl1 are bridged via ng_bridge, IP 192.168.0.1 on xl0, no IP on xl1; xl2 is the transport for tun0 (which is PPPoE in my case) and doesn't have an IP either, so "multi-homed" might read "tun0 has an address, xl0 has another and lo0 has a third one". I don't think this makes a difference though. verrevpath is documented as using the interface. >How-To-Repeat: Set up ipfw2 as above (I'm using /etc/rc.firewall's simple section, modified) then try to ssh to the outside as shown above. >Fix: >Release-Note: >Audit-Trail: >Unformatted: From owner-freebsd-bugs@FreeBSD.ORG Wed Nov 26 04:20:23 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 070D116A4CE for ; Wed, 26 Nov 2003 04:20:23 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3DA4743FDF for ; Wed, 26 Nov 2003 04:20:20 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAQCKKFY052779 for ; Wed, 26 Nov 2003 04:20:20 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAQCKK6F052778; Wed, 26 Nov 2003 04:20:20 -0800 (PST) (envelope-from gnats) Resent-Date: Wed, 26 Nov 2003 04:20:20 -0800 (PST) Resent-Message-Id: <200311261220.hAQCKK6F052778@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Clement Laforet Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 088F316A4CE for ; Wed, 26 Nov 2003 04:10:23 -0800 (PST) Received: from cultdeadsheep.org (charon.cultdeadsheep.org [80.65.226.72]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7FB3043FE0 for ; Wed, 26 Nov 2003 04:10:21 -0800 (PST) (envelope-from sheepkiller@cultdeadsheep.org) Received: (qmail 48872 invoked by uid 85); 26 Nov 2003 13:10:20 +0100 Received: from sheepkiller@cultdeadsheep.org by goofy.cultdeadsheep.org by uid 82 with qmail-scanner-1.20rc2 ( Clear:RC:1:. Processed in 0.045742 secs); 26 Nov 2003 12:10:20 -0000 Received: from unknown (HELO lucifer.cultdeadsheep.org) (192.168.0.2) by goofy.cultdeadsheep.org with SMTP; 26 Nov 2003 13:10:19 +0100 Received: by lucifer.cultdeadsheep.org (sSMTP sendmail emulation); Wed, 26 Nov 2003 13:10:41 +0100 Message-Id: <20031126121021.7FB3043FE0@mx1.FreeBSD.org> Date: Wed, 26 Nov 2003 13:10:41 +0100 From: "Clement Laforet" To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 cc: Clement Laforet Subject: bin/59708: [patch] add sSMTP support for Mail selection in sysinstall X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Clement Laforet List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Nov 2003 12:20:23 -0000 >Number: 59708 >Category: bin >Synopsis: [patch] add sSMTP support for Mail selection in sysinstall >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Wed Nov 26 04:20:19 PST 2003 >Closed-Date: >Last-Modified: >Originator: Clement Laforet >Release: FreeBSD 5.2-BETA i386 >Organization: cotds.org >Environment: System: FreeBSD lucifer.cultdeadsheep.org 5.2-BETA FreeBSD 5.2-BETA #0: Sat Nov 22 21:09:27 CET 2003 clement@lucifer.cultdeadsheep.org:/usr/obj/usr/src/sys/LUCIFER i386 >Description: MTA proposed by sysinstall are full features ones, and are not appropriate for satellite systems. sSMTP is a small MTA/sendmail emulator which only forwards mails to a mailhub. package is small (17kb) and can be added to disc1. http://lists.freebsd.org/pipermail/freebsd-qa/2003-September/000127.html >How-To-Repeat: N/A. >Fix: --- sysintall-ssmtp.diff begins here --- Index: src/usr.sbin/sysinstall/config.c =================================================================== RCS file: /WORK/REPO/FreeBSD/src/usr.sbin/sysinstall/config.c,v retrieving revision 1.216 diff -u -r1.216 config.c --- src/usr.sbin/sysinstall/config.c 28 Sep 2003 05:21:23 -0000 1.216 +++ src/usr.sbin/sysinstall/config.c 26 Nov 2003 11:52:51 -0000 @@ -1263,3 +1263,66 @@ return DITEM_SUCCESS; } + +int +configMTASsmtp(dialogMenuItem *self) +{ + int ret; + FILE *perconf, *mailerconf; + + ret = package_add("ssmtp"); + + if(DITEM_STATUS(ret) == DITEM_FAILURE) { + msgConfirm("An error occurred while adding the ssmtp package\n" + "Please change installation media and try again."); + return ret; + } + + variable_set2(VAR_SENDMAIL_ENABLE, "NONE", 1); + + /* Update periodic.conf */ + perconf = fopen("/etc/periodic.conf", "a"); + if (perconf == NULL) { + /* Not really a serious problem, so we do not abort */ + msgConfirm("Unable to open /etc/periodic.conf.\n" + "The daily cleanup scripts might generate errors when\n" + "trying to run some sendmail only cleanup scripts.\n"); + } else { + fprintf(perconf, "# --- Generated by sysinstall ---\n"); + fprintf(perconf, "daily_clean_hoststat_enable=\"NO\"\n"); + fprintf(perconf, "daily_status_include_submit_mailq=\"NO\"\n"); + fprintf(perconf, "daily_status_mail_rejects_enable=\"NO\"\n"); + fprintf(perconf, "daily_submit_queuerun=\"NO\"\n"); + fclose(perconf); + } + + /* Update mailer.conf */ + vsystem("mv -f /etc/mail/mailer.conf /etc/mail/mailer.conf.old"); + mailerconf = fopen("/etc/mail/mailer.conf", "w"); + if (mailerconf == NULL) { + /* Not really a serious problem, so we do not abort */ + msgConfirm("Unable to open /etc/mailer.conf.\n" + "Some programs which use the sendmail wrappers may not work.\n" + "Please consult the documentation for the sSMTP port on how\n" + "to correct this."); + } else { + fprintf(mailerconf, "# --- Generated by sysinstall ---\n"); + fprintf(mailerconf, "# Execute sSMTP instead of sendmail\n"); + fprintf(mailerconf, "#\n"); + fprintf(mailerconf, "sendmail /usr/local/sbin/ssmtp\n"); + fprintf(mailerconf, "send-mail /usr/local/sbin/ssmtp\n"); + fprintf(mailerconf, "mailq /usr/local/sbin/ssmtp\n"); + fprintf(mailerconf, "newaliases /usr/local/sbin/ssmtp\n"); + fprintf(mailerconf, "hoststat /usr/bin/true\n"); + fprintf(mailerconf, "purgestat /usr/bin/true\n"); + fclose(mailerconf); + } + + msgConfirm("sSMTP is now installed and enabled as the default MTA.\n" + "Please check that the configuration works as expected.\n" + "See the ssmtp (8) man page for more information.\n" + "Don't forget to configure /usr/local/etc/ssmtp/ssmtp.conf.\n"); + + return DITEM_SUCCESS; +} + Index: src/usr.sbin/sysinstall/menus.c =================================================================== RCS file: /WORK/REPO/FreeBSD/src/usr.sbin/sysinstall/menus.c,v retrieving revision 1.382 diff -u -r1.382 menus.c --- src/usr.sbin/sysinstall/menus.c 24 Nov 2003 15:27:20 -0000 1.382 +++ src/usr.sbin/sysinstall/menus.c 26 Nov 2003 11:52:51 -0000 @@ -1483,8 +1483,9 @@ "Selecting Sendmail local disables sendmail's network socket for\n" "incoming mail, but still enables sendmail for local and outbound mail.\n" "The Postfix option will install the Postfix MTA from the ports\n" - "collection. The Exim option will install the Exim MTA from the ports\n" - "collection. To return to the previous menu, select Exit.", + "collection. The Exim option will install the Exim MTA from the ports\n" + "collection. The Ssmtp option will install the sSMTP MTA from the ports\n" + "collection. To return to the previous menu, select Exit.", NULL, NULL, { @@ -1496,6 +1497,8 @@ NULL, configMTAPostfix, NULL, NULL }, { "Exim", "Use the Exim MTA", NULL, configMTAExim, NULL, NULL }, + { "Ssmtp", "Use the sSMTP MTA (forwards mails to a mailhub)", + NULL, configMTASsmtp, NULL, NULL }, { "None", "Do not install an MTA", dmenuVarCheck, dmenuSetVariable, NULL, "sendmail_enable=NONE" }, { "X Exit", "Exit this menu (returning to previous)", Index: src/usr.sbin/sysinstall/sysinstall.h =================================================================== RCS file: /WORK/REPO/FreeBSD/src/usr.sbin/sysinstall/sysinstall.h,v retrieving revision 1.252 diff -u -r1.252 sysinstall.h --- src/usr.sbin/sysinstall/sysinstall.h 2 Nov 2003 08:58:57 -0000 1.252 +++ src/usr.sbin/sysinstall/sysinstall.h 26 Nov 2003 11:52:51 -0000 @@ -530,6 +530,7 @@ extern int configNFSServer(dialogMenuItem *self); extern int configMTAPostfix(dialogMenuItem *self); extern int configMTAExim(dialogMenuItem *self); +extern int configMTASsmtp(dialogMenuItem *self); extern int configRpcBind(dialogMenuItem *self); extern int configWriteRC_conf(dialogMenuItem *self); extern int configSecurityProfile(dialogMenuItem *self); --- sysintall-ssmtp.diff ends here --- >Release-Note: >Audit-Trail: >Unformatted: From owner-freebsd-bugs@FreeBSD.ORG Tue Nov 25 10:48:56 2003 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A640D16A4CF for ; Tue, 25 Nov 2003 10:48:56 -0800 (PST) Received: from tinkertoys.net (tinkertoys.net [161.58.152.111]) by mx1.FreeBSD.org (Postfix) with ESMTP id BCCB543FDF for ; Tue, 25 Nov 2003 10:48:55 -0800 (PST) (envelope-from kbrogers@tinkertoys.net) Received: from internalprocess (eep.burdell.org [216.27.160.200] (may be forged)) by tinkertoys.net (8.12.10/8.11.6) with SMTP id hAPIms8E051778 for ; Tue, 25 Nov 2003 11:48:54 -0700 (MST) Message-ID: <005a01c3b384$fcfcb260$0400a8c0@internalprocess> From: "Kerry B. Rogers" To: Date: Tue, 25 Nov 2003 13:50:19 -0500 X-Priority: 1 X-MSMail-Priority: High X-Mailer: Microsoft Outlook Express 6.00.2800.1158 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 X-Mailman-Approved-At: Wed, 26 Nov 2003 04:57:21 -0800 Subject: hosts.allow not always working... misses some IPs X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 Nov 2003 18:48:56 -0000 Dear Whomever, I received an e-mail with the following header fragment: ===V=== cut here ===V==== Received: from priv-edtnes11-hme0.telusplanet.net (outbound03.telus.net [199.185.220.222]) by tinkertoys.net (8.12.10/8.11.6) with ESMTP id hANMNpKS021237; Sun, 23 Nov 2003 15:23:51 -0700 (MST) ===^=== cut here ===^==== In my hosts.allow file (which usually rejects domains just fine) I have: ===V=== cut here ===V==== smtp : 199.185.220.0/255.255.251.0 : deny ===^=== cut here ===^==== The above listed e-mail should have been rejected but it wasn't. Is this a bug? Is a 975K host.allow file creating this problem? Please help... Thanks, Kerry B. Rogers kbrogers@tinkertoys.net From owner-freebsd-bugs@FreeBSD.ORG Wed Nov 26 05:40:10 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A388A16A4CE for ; Wed, 26 Nov 2003 05:40:10 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 84FF643FDF for ; Wed, 26 Nov 2003 05:40:09 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAQDe9FY065494 for ; Wed, 26 Nov 2003 05:40:09 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAQDe9hZ065493; Wed, 26 Nov 2003 05:40:09 -0800 (PST) (envelope-from gnats) Date: Wed, 26 Nov 2003 05:40:09 -0800 (PST) Message-Id: <200311261340.hAQDe9hZ065493@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Yar Tikhiy Subject: Re: bin/47560: tar 'z' option gzip'd output has extra garbage X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Yar Tikhiy List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Nov 2003 13:40:10 -0000 The following reply was made to PR bin/47560; it has been noted by GNATS. From: Yar Tikhiy To: freebsd-gnats-submit@FreeBSD.org, archie@packetdesign.com Cc: Subject: Re: bin/47560: tar 'z' option gzip'd output has extra garbage Date: Wed, 26 Nov 2003 16:35:52 +0300 This seems to be an undocumented feature (i.e., a bug) of GNU tar itself. If writing a compressed archive to anything but a plain file, GNU tar will zero pad it to the next block boundary (10K by default.) I think documenting this feature in the FreeBSD tar(1) manpage will be sufficient to close this PR. -- Yar From owner-freebsd-bugs@FreeBSD.ORG Wed Nov 26 07:50:29 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A9BC916A4E0 for ; Wed, 26 Nov 2003 07:50:29 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id DD89F43FE0 for ; Wed, 26 Nov 2003 07:50:26 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id hAQFoQFY082832 for ; Wed, 26 Nov 2003 07:50:26 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id hAQFoQNv082831; Wed, 26 Nov 2003 07:50:26 -0800 (PST) (envelope-from gnats) Date: Wed, 26 Nov 2003 07:50:26 -0800 (PST) Message-Id: <200311261550.hAQFoQNv082831@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Daniel Lang Subject: Re: kern/59260: Panic by integer divide fault in Thinkpad A31p / IRQ Problem? X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Daniel Lang List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Nov 2003 15:50:29 -0000 The following reply was made to PR kern/59260; it has been noted by GNATS. From: Daniel Lang To: freebsd-gnats-submit@FreeBSD.org, dl@leo.org Cc: imp@freebsd.org, jhb@freebsd.org Subject: Re: kern/59260: Panic by integer divide fault in Thinkpad A31p / IRQ Problem? Date: Wed, 26 Nov 2003 16:49:07 +0100 Dear Warner, Dear John. I have tried to live-debug the kernel. Alas with no further results for me. Possibly you can get more out of it. Script follows: ====== Following is a script, that documents my live-kernel debugging in case of such a panic: Script started on Wed Nov 19 07:50:29 2003 spot:~/tmp/thinkpad-debug#gdb -k kernel.debug GNU gdb 5.2.1 (FreeBSD) Copyright 2002 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-undermydesk-freebsd"... (kgdb) target remote /dev/cuaa0 Remote debugging using /dev/cuaa0 cbb_intr (arg=0xc1d13800) at /usr/src/sys/dev/pccbb/pccbb.c:1126 1126 if (sockevent != 0) { warning: Unable to find dynamic linker breakpoint function. GDB will be unable to debug shared library initializers and track explicitly loaded dynamic code. warning: shared library handler failed to enable breakpoint (kgdb) x 0xc0524182 0xc0524182 : 0xc085c689 (kgdb) l *0xc0524182 0xc0524182 is in cbb_intr (/usr/src/sys/dev/pccbb/pccbb.c:289). 284 bus_space_write_4(sc->bst, sc->bsh, reg, val); 285 } 286 287 static __inline uint32_t 288 cbb_get(struct cbb_softc *sc, uint32_t reg) 289 { 290 return (bus_space_read_4(sc->bst, sc->bsh, reg)); 291 } 292 293 static __inline void (kgdb) up #1 0xc05a1642 in ithread_loop (arg=0xc1d15880) at /usr/src/sys/kern/kern_intr.c:544 544 ih->ih_handler(ih->ih_argument); (kgdb) up #2 0xc05a0634 in fork_exit (callout=0xc05a14b0 , arg=0xd0201000, frame=0xd0201000) at /usr/src/sys/kern/kern_fork.c:793 793 callout(arg, frame); (kgdb) up Initial frame selected; you cannot go up. (kgdb) down #1 0xc05a1642 in ithread_loop (arg=0xc1d15880) at /usr/src/sys/kern/kern_intr.c:544 544 ih->ih_handler(ih->ih_argument); (kgdb) p *arg Attempt to dereference a generic pointer. (kgdb) bt #0 cbb_intr (arg=0xc1d13800) at /usr/src/sys/dev/pccbb/pccbb.c:1126 #1 0xc05a1642 in ithread_loop (arg=0xc1d15880) at /usr/src/sys/kern/kern_intr.c:544 #2 0xc05a0634 in fork_exit (callout=0xc05a14b0 , arg=0xd0201000, frame=0xd0201000) at /usr/src/sys/kern/kern_fork.c:793 (kgdb) down #0 cbb_intr (arg=0xc1d13800) at /usr/src/sys/dev/pccbb/pccbb.c:1126 1126 if (sockevent != 0) { (kgdb) l 1121 1122 /* 1123 * This ISR needs work XXX 1124 */ 1125 sockevent = cbb_get(sc, CBB_SOCKET_EVENT); 1126 if (sockevent != 0) { 1127 DPRINTF(("CBB EVENT 0x%x\n", sockevent)); 1128 /* ack the interrupt */ 1129 cbb_setb(sc, CBB_SOCKET_EVENT, sockevent); 1130 (kgdb) p sc $1 = (struct cbb_softc *) 0xc1d13800 (kgdb) p *sc $2 = {dev = 0xc4792600, exca = {dev = 0xc4792600, memalloc = 0, mem = {{memt = 0, memh = 0, addr = 0, size = 0, realsize = 0, cardaddr = 0, kind = 0}, { memt = 0, memh = 0, addr = 0, size = 0, realsize = 0, cardaddr = 0, kind = 0}, {memt = 0, memh = 0, addr = 0, size = 0, realsize = 0, cardaddr = 0, kind = 0}, {memt = 0, memh = 0, addr = 0, size = 0, realsize = 0, cardaddr = 0, kind = 0}, {memt = 0, memh = 0, addr = 0, size = 0, realsize = 0, cardaddr = 0, kind = 0}}, ioalloc = 0, io = {{ iot = 0, ioh = 0, addr = 0, size = 0, flags = 0, width = 0}, {iot = 0, ioh = 0, addr = 0, size = 0, flags = 0, width = 0}}, bst = 1, bsh = 3701633024, flags = 2, offset = 2048, chipset = 0, getb = 0xc04e8bd0 , putb = 0xc04e8c00 , event_thread = 0x0, mtx = {mtx_object = {lo_class = 0x0, lo_name = 0x0, lo_type = 0x0, lo_flags = 0, lo_list = {tqe_next = 0x0, tqe_prev = 0x0}, lo_witness = 0x0}, mtx_lock = 0, mtx_recurse = 0}, cv = {cv_waitq = { tqh_first = 0x0, tqh_last = 0x0}, cv_mtx = 0x0, cv_description = 0x0}, pccarddev = 0xc4792100}, base_res = 0xc47932c0, irq_res = 0xc4793280, intrhand = 0xc4793240, bst = 1, bsh = 3701633024, secbus = 1 '\001', subbus = 1 '\001', mtx = {mtx_object = {lo_class = 0xc07aa63c, lo_name = 0xc4753450 "cbb1", lo_type = 0xc07549e4 "cbb", lo_flags = 196608, lo_list = {tqe_next = 0xc4789aa8, tqe_prev = 0xc4767b44}, lo_witness = 0xc07f2a10}, mtx_lock = 4, mtx_recurse = 0}, cv = {cv_waitq = { tqh_first = 0xc4783b40, tqh_last = 0xc4783b58}, cv_mtx = 0xc1d1393c, cv_description = 0xc075fce5 "cbb cv"}, flags = 1342177280, chipset = 4, rl = { slh_first = 0x0}, intr_handlers = {stqh_first = 0x0, stqh_last = 0xc1d1397c}, cbdev = 0xc4792180, event_thread = 0xc4782a98} (kgdb) p sc->bst $3 = 1 (kgdb) p sc->bsh $4 = 3701633024 * * REMARK: * * re is CBB_SOCKET_EVENT = 0x00 * * in this case, looked that up from the source * * now from my previous examinations, I know that * the following is sufficient to call the bus_space_read_4() * functions (kgdb) p (void*)sc->bsh $5 = (void *) 0xdca27000 (kgdb) p *0xdca27000 $6 = 0 * Now this is the address, that is to be read * This kind of address was not accessible in a * post-mortem crash-dump as described in the PR * but here on the live kernel, I can examine it * however, the value the pointer points to is 0 * even if I call the exact line from * bus_space_read_4() which is the following, * I still get '0' as result. * * I don't know if bus_space_read_4() should return 0 * or if this should never happen, since somewehere else * in the code this value is divided by? * causing the "integer division fault" ??? * (kgdb) p (*(volatile u_int32_t *)(0xdca27000)) $7 = 0 * * well, I was curious and wanted the kernel to * continue, which briefly worked ... * (kgdb) cont Continuing. * * The following happened a few minutes after I 'continued' * the paniced kernel * Program received signal SIGEMT, Emulation trap. 0xc05bb89d in critical_exit () at machine/cpufunc.h:358 358 machine/cpufunc.h: No such file or directory. in machine/cpufunc.h (kgdb) bt #0 0xc05bb89d in critical_exit () at machine/cpufunc.h:358 #1 0xc05ab8bd in _mtx_unlock_spin_flags (m=0xc07f1760, opts=0, file=0x1

, line=-1043227520) at /usr/src/sys/kern/kern_mutex.c:333 #2 0xc05dc58e in witness_lock (lock=0xc4a58208, flags=8, file=0xc4b856c5 "/usr/src/sys/dev/fxp/if_fxp.c", line=1556) at /usr/src/sys/kern/subr_witness.c:830 #3 0xc05ab61a in _mtx_lock_flags (m=0xc07f1760, opts=0, file=0xc07aa63c "\206ţwŔ\t", line=-995786232) at /usr/src/sys/kern/kern_mutex.c:221 #4 0xc4b83404 in ?? () #5 0xc05a1642 in ithread_loop (arg=0xc1d15880) at /usr/src/sys/kern/kern_intr.c:544 #6 0xc05a0634 in fork_exit (callout=0xc05a14b0 , arg=0x246, frame=0x246) at /usr/src/sys/kern/kern_fork.c:793 (kgdb) #0 0xc05bb89d in critical_exit () at machine/cpufunc.h:358 #1 0xc05ab8bd in _mtx_unlock_spin_flags (m=0xc07f1760, opts=0, file=0x1
, line=-1043227520) at /usr/src/sys/kern/kern_mutex.c:333 #2 0xc05dc58e in witness_lock (lock=0xc4a58208, flags=8, file=0xc4b856c5 "/usr/src/sys/dev/fxp/if_fxp.c", line=1556) at /usr/src/sys/kern/subr_witness.c:830 #3 0xc05ab61a in _mtx_lock_flags (m=0xc07f1760, opts=0, file=0xc07aa63c "\206ţwŔ\t", line=-995786232) at /usr/src/sys/kern/kern_mutex.c:221 #4 0xc4b83404 in ?? () #5 0xc05a1642 in ithread_loop (arg=0xc1d15880) at /usr/src/sys/kern/kern_intr.c:544 #6 0xc05a0634 in fork_exit (callout=0xc05a14b0 , arg=0x246, frame=0x246) at /usr/src/sys/kern/kern_fork.c:793 (kgdb) call cpu_reset() * * Ok I guessed here, its not of use to continue here * so I wanted to reset (cpu_reset()) * Program received signal SIGSEGV, Segmentation fault. 0x00000000 in ?? () The program being debugged was signaled while in a function called from GDB. GDB remains in the frame where the signal was received. To change this behavior use "set unwindonsignal on" Evaluation of the expression containing the function (cpu_reset) will be abandoned. (kgdb) call cpu_reset() Program received signal SIGSEGV, Segmentation fault. 0x00000000 in ?? () The program being debugged was signaled while in a function called from GDB. GDB remains in the frame where the signal was received. To change this behavior use "set unwindonsignal on" Evaluation of the expression containing the function (cpu_reset) will be abandoned. (kgdb) quit The program is running. Exit anyway? (y or n) y Script done on Wed Nov 19 10:26:49 2003 I just switched off the Thinkpad manually now. So the question, that possibly someone is able to answer: Is "bus_space_read_4()" (or any of these functions) allowed/expected to return 0, or is this a case that should never happen? It appears strange to me, because in THIS case (which is a bit different from the original PR, it seems the panic can occur in slightly different places), it just seems that the call in cbb_intr(): ... sockevent = cbb_get(sc, CBB_SOCKET_EVENT); ... returned 0, thus setting 'sockevent = 0;' I don't see any reason why this should cause an "Integer Divide Fault" -- IRCnet: Mr-Spock - All your .sigs are belong to us - Daniel Lang * dl@leo.org * +49 89 289 18532 * http://www.leo.org/~dl/ From owner-freebsd-bugs@FreeBSD.ORG Wed Nov 26 11:56:25 2003 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 79FC616A4CE for ; Wed, 26 Nov 2003 11:56:25 -0800 (PST) Received: from transport.cksoft.de (transport.cksoft.de [62.111.66.27]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2189D43FDF for ; Wed, 26 Nov 2003 11:56:24 -0800 (PST) (envelope-from bzeeb-lists@lists.zabbadoz.net) Received: from localhost (localhost [127.0.0.1]) by transport.cksoft.de (Postfix) with ESMTP id 87F531FF905; Wed, 26 Nov 2003 20:56:22 +0100 (CET) Received: by transport.cksoft.de (Postfix, from userid 66) id E0D561FF8FA; Wed, 26 Nov 2003 20:56:20 +0100 (CET) Received: by mail.int.zabbadoz.net (Postfix, from userid 1060) id 6DAA5153FA; Wed, 26 Nov 2003 19:56:00 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mail.int.zabbadoz.net (Postfix) with ESMTP id 636331538C; Wed, 26 Nov 2003 19:56:01 +0000 (UTC) Date: Wed, 26 Nov 2003 19:56:01 +0000 (UTC) From: "Bjoern A. Zeeb" X-X-Sender: bz@e0-0.zab2.int.zabbadoz.net To: "Kerry B. Rogers" In-Reply-To: <005a01c3b384$fcfcb260$0400a8c0@internalprocess> Message-ID: References: <005a01c3b384$fcfcb260$0400a8c0@internalprocess> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Virus-Scanned: by AMaViS snapshot-20020300 cc: freebsd-bugs@FreeBSD.ORG Subject: Re: hosts.allow not always working... misses some IPs X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Nov 2003 19:56:25 -0000 On Tue, 25 Nov 2003, Kerry B. Rogers wrote: > Dear Whomever, Dear Mr. Rogers, did you read the response you got last time ? http://lists.freebsd.org/pipermail/freebsd-bugs/2003-November/004169.html > ===V=== cut here ===V==== > smtp : 199.185.220.0/255.255.251.0 : deny > ===^=== cut here ===^==== ^^^^^^^^^^^^^^^^^^ 251 IS WHAT ??? -- Bjoern A. Zeeb bzeeb at Zabbadoz dot NeT 56 69 73 69 74 http://www.zabbadoz.net/ From owner-freebsd-bugs@FreeBSD.ORG Wed Nov 26 12:40:23 2003 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1A78816A4CF for ; Wed, 26 Nov 2003 12:40:23 -0800 (PST) Received: from smtp999.apm-internet.net (smtp999.apm-internet.net [62.3.197.131]) by mx1.FreeBSD.org (Postfix) with SMTP id E50F143F93 for ; Wed, 26 Nov 2003 12:40:18 -0800 (PST) (envelope-from jonathan@fluent.ltd.uk) Received: (qmail 54955 invoked from network); 26 Nov 2003 21:48:20 -0000 Received: from unknown (HELO clarity) (62.3.196.98) by smtp999.apm-internet.net with SMTP; 26 Nov 2003 21:48:20 -0000 Message-ID: <00a001c3b45d$7f3231a0$62c4033e@clarity> From: "Jonathan Gilpin" To: Date: Wed, 26 Nov 2003 20:40:15 -0000 MIME-Version: 1.0 X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1158 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.1 cc: freebsd-stable@freebsd.org Subject: 4.9 Stable Crashes on SuperMicro with SMP X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Nov 2003 20:40:23 -0000 Hi there, I am running: FreeBSD sproggit.fluent.ltd.uk 4.9-STABLE FreeBSD 4.9-STABLE #8: Wed Nov = 26 19:48:53 GMT 2003 = root@sproggit.fluent.ltd.uk:/usr/src/sys/compile/SPROGGIT i386 and it is a supermicro. I have a Dual Xeon System with 2GB of RAM: The machine crashes within 30 minutes with errors as follows: panic: vm_page_remove(): page not found in hash mp_lock =3D 01000001; cpuid =3D 1; lapic.id =3D 01000000 boot() called on cpu#1 syncing disks... I am willing to provide any further infomation needed and if this is not = the right place to request help please redirect me.=20 Many Thanks, Jonathan The DMESG is: sproggit# dmesg=20 Copyright (c) 1992-2003 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights = reserved. FreeBSD 4.9-STABLE #8: Wed Nov 26 19:48:53 GMT 2003 root@sproggit.fluent.ltd.uk:/usr/src/sys/compile/SPROGGIT Timecounter "i8254" frequency 1193182 Hz CPU: Intel(R) Xeon(TM) CPU 2.40GHz (2400.11-MHz 686-class CPU) Origin =3D "GenuineIntel" Id =3D 0xf27 Stepping =3D 7 = Features=3D0xbfebfbff real memory =3D 2147418112 (2097088K bytes) avail memory =3D 2088071168 (2039132K bytes) Programming 16 pins in IOAPIC #0 IOAPIC #0 intpin 2 -> irq 0 Programming 16 pins in IOAPIC #1 Programming 16 pins in IOAPIC #2 Programming 16 pins in IOAPIC #3 FreeBSD/SMP: Multiprocessor motherboard: 2 CPUs cpu0 (BSP): apic id: 0, version: 0x00050014, at 0xfee00000 cpu1 (AP): apic id: 1, version: 0x00050014, at 0xfee00000 io0 (APIC): apic id: 8, version: 0x000f0011, at 0xfec00000 io1 (APIC): apic id: 9, version: 0x000f0011, at 0xfec01000 io2 (APIC): apic id: 10, version: 0x000f0011, at 0xfec02000 io3 (APIC): apic id: 11, version: 0x000f0011, at 0xfec03000 Preloaded elf kernel "kernel" at 0xc0388000. Warning: Pentium 4 CPU: PSE disabled Pentium Pro MTRR support enabled Using $PIR table, 11 entries at 0xc00f4fd0 npx0: on motherboard npx0: INT 16 interface pcib0: on motherboard IOAPIC #1 intpin 12 -> irq 2 IOAPIC #1 intpin 10 -> irq 9 IOAPIC #1 intpin 13 -> irq 10 IOAPIC #1 intpin 1 -> irq 11 pci0: on pcib0 em0: port = 0xe000-0xe03f mem 0xfeb60000-0xfeb7ffff irq 2 at device 8.0 on pci0 em0: Speed:N/A Duplex:N/A em1: port = 0xe400-0xe43f mem 0xfeba0000-0xfebbffff irq 9 at device 9.0 on pci0 em1: Speed:N/A Duplex:N/A pci0: at 11.0 irq 10 atapci0: port = 0xffa0-0xffaf,0x374-0x377,0x170-0x177,0x3f4-0x3f7,0x1f0-0x1f7 at device = 15.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 ohci0: mem 0xfebfe000-0xfebfefff irq 11 = at device 15.2 on pci0 usb0: OHCI version 1.0, legacy support usb0: SMM does not respond, resetting usb0: on ohci0 usb0: USB revision 1.0 uhub0: (0x1166) OHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 4 ports with 4 removable, self powered isab0: at device 15.3 = on pci0 isa0: on isab0 pcib255: on = motherboard pci255: on pcib255 pcib1: on motherboard pci1: on pcib1 orm0: