Server IP : 172.67.145.202 / Your IP : 108.162.227.14 Web Server : Apache/2.2.15 (CentOS) System : Linux GA 2.6.32-431.1.2.0.1.el6.x86_64 #1 SMP Fri Dec 13 13:06:13 UTC 2013 x86_64 User : apache ( 48) PHP Version : 5.6.38 Disable Function : NONE MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /lib/modules/2.6.32-754.6.3.el6.x86_64/source/arch/x86/include/asm/ |
Upload File : |
| Current File : /lib/modules/2.6.32-754.6.3.el6.x86_64/source/arch/x86/include/asm/xor_32.h |
#ifndef _ASM_X86_XOR_32_H
#define _ASM_X86_XOR_32_H
/*
* Optimized RAID-5 checksumming functions for MMX and SSE.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* You should have received a copy of the GNU General Public License
* (for example /usr/src/linux/COPYING); if not, write to the Free
* Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
/*
* High-speed RAID5 checksumming functions utilizing MMX instructions.
* Copyright (C) 1998 Ingo Molnar.
*/
#define LD(x, y) " movq 8*("#x")(%1), %%mm"#y" ;\n"
#define ST(x, y) " movq %%mm"#y", 8*("#x")(%1) ;\n"
#define XO1(x, y) " pxor 8*("#x")(%2), %%mm"#y" ;\n"
#define XO2(x, y) " pxor 8*("#x")(%3), %%mm"#y" ;\n"
#define XO3(x, y) " pxor 8*("#x")(%4), %%mm"#y" ;\n"
#define XO4(x, y) " pxor 8*("#x")(%5), %%mm"#y" ;\n"
#include <asm/i387.h>
static void
xor_pII_mmx_2(unsigned long bytes, unsigned long *p1, unsigned long *p2)
{
unsigned long lines = bytes >> 7;
kernel_fpu_begin();
asm volatile(
#undef BLOCK
#define BLOCK(i) \
LD(i, 0) \
LD(i + 1, 1) \
LD(i + 2, 2) \
LD(i + 3, 3) \
XO1(i, 0) \
ST(i, 0) \
XO1(i+1, 1) \
ST(i+1, 1) \
XO1(i + 2, 2) \
ST(i + 2, 2) \
XO1(i + 3, 3) \
ST(i + 3, 3)
" .align 32 ;\n"
" 1: ;\n"
BLOCK(0)
BLOCK(4)
BLOCK(8)
BLOCK(12)
" addl $128, %1 ;\n"
" addl $128, %2 ;\n"
" decl %0 ;\n"
" jnz 1b ;\n"
: "+r" (lines),
"+r" (p1), "+r" (p2)
:
: "memory");
kernel_fpu_end();
}
static void
xor_pII_mmx_3(unsigned long bytes, unsigned long *p1, unsigned long *p2,
unsigned long *p3)
{
unsigned long lines = bytes >> 7;
kernel_fpu_begin();
asm volatile(
#undef BLOCK
#define BLOCK(i) \
LD(i, 0) \
LD(i + 1, 1) \
LD(i + 2, 2) \
LD(i + 3, 3) \
XO1(i, 0) \
XO1(i + 1, 1) \
XO1(i + 2, 2) \
XO1(i + 3, 3) \
XO2(i, 0) \
ST(i, 0) \
XO2(i + 1, 1) \
ST(i + 1, 1) \
XO2(i + 2, 2) \
ST(i + 2, 2) \
XO2(i + 3, 3) \
ST(i + 3, 3)
" .align 32 ;\n"
" 1: ;\n"
BLOCK(0)
BLOCK(4)
BLOCK(8)
BLOCK(12)
" addl $128, %1 ;\n"
" addl $128, %2 ;\n"
" addl $128, %3 ;\n"
" decl %0 ;\n"
" jnz 1b ;\n"
: "+r" (lines),
"+r" (p1), "+r" (p2), "+r" (p3)
:
: "memory");
kernel_fpu_end();
}
static void
xor_pII_mmx_4(unsigned long bytes, unsigned long *p1, unsigned long *p2,
unsigned long *p3, unsigned long *p4)
{
unsigned long lines = bytes >> 7;
kernel_fpu_begin();
asm volatile(
#undef BLOCK
#define BLOCK(i) \
LD(i, 0) \
LD(i + 1, 1) \
LD(i + 2, 2) \
LD(i + 3, 3) \
XO1(i, 0) \
XO1(i + 1, 1) \
XO1(i + 2, 2) \
XO1(i + 3, 3) \
XO2(i, 0) \
XO2(i + 1, 1) \
XO2(i + 2, 2) \
XO2(i + 3, 3) \
XO3(i, 0) \
ST(i, 0) \
XO3(i + 1, 1) \
ST(i + 1, 1) \
XO3(i + 2, 2) \
ST(i + 2, 2) \
XO3(i + 3, 3) \
ST(i + 3, 3)
" .align 32 ;\n"
" 1: ;\n"
BLOCK(0)
BLOCK(4)
BLOCK(8)
BLOCK(12)
" addl $128, %1 ;\n"
" addl $128, %2 ;\n"
" addl $128, %3 ;\n"
" addl $128, %4 ;\n"
" decl %0 ;\n"
" jnz 1b ;\n"
: "+r" (lines),
"+r" (p1), "+r" (p2), "+r" (p3), "+r" (p4)
:
: "memory");
kernel_fpu_end();
}
static void
xor_pII_mmx_5(unsigned long bytes, unsigned long *p1, unsigned long *p2,
unsigned long *p3, unsigned long *p4, unsigned long *p5)
{
unsigned long lines = bytes >> 7;
kernel_fpu_begin();
/* Make sure GCC forgets anything it knows about p4 or p5,
such that it won't pass to the asm volatile below a
register that is shared with any other variable. That's
because we modify p4 and p5 there, but we can't mark them
as read/write, otherwise we'd overflow the 10-asm-operands
limit of GCC < 3.1. */
asm("" : "+r" (p4), "+r" (p5));
asm volatile(
#undef BLOCK
#define BLOCK(i) \
LD(i, 0) \
LD(i + 1, 1) \
LD(i + 2, 2) \
LD(i + 3, 3) \
XO1(i, 0) \
XO1(i + 1, 1) \
XO1(i + 2, 2) \
XO1(i + 3, 3) \
XO2(i, 0) \
XO2(i + 1, 1) \
XO2(i + 2, 2) \
XO2(i + 3, 3) \
XO3(i, 0) \
XO3(i + 1, 1) \
XO3(i + 2, 2) \
XO3(i + 3, 3) \
XO4(i, 0) \
ST(i, 0) \
XO4(i + 1, 1) \
ST(i + 1, 1) \
XO4(i + 2, 2) \
ST(i + 2, 2) \
XO4(i + 3, 3) \
ST(i + 3, 3)
" .align 32 ;\n"
" 1: ;\n"
BLOCK(0)
BLOCK(4)
BLOCK(8)
BLOCK(12)
" addl $128, %1 ;\n"
" addl $128, %2 ;\n"
" addl $128, %3 ;\n"
" addl $128, %4 ;\n"
" addl $128, %5 ;\n"
" decl %0 ;\n"
" jnz 1b ;\n"
: "+r" (lines),
"+r" (p1), "+r" (p2), "+r" (p3)
: "r" (p4), "r" (p5)
: "memory");
/* p4 and p5 were modified, and now the variables are dead.
Clobber them just to be sure nobody does something stupid
like assuming they have some legal value. */
asm("" : "=r" (p4), "=r" (p5));
kernel_fpu_end();
}
#undef LD
#undef XO1
#undef XO2
#undef XO3
#undef XO4
#undef ST
#undef BLOCK
static void
xor_p5_mmx_2(unsigned long bytes, unsigned long *p1, unsigned long *p2)
{
unsigned long lines = bytes >> 6;
kernel_fpu_begin();
asm volatile(
" .align 32 ;\n"
" 1: ;\n"
" movq (%1), %%mm0 ;\n"
" movq 8(%1), %%mm1 ;\n"
" pxor (%2), %%mm0 ;\n"
" movq 16(%1), %%mm2 ;\n"
" movq %%mm0, (%1) ;\n"
" pxor 8(%2), %%mm1 ;\n"
" movq 24(%1), %%mm3 ;\n"
" movq %%mm1, 8(%1) ;\n"
" pxor 16(%2), %%mm2 ;\n"
" movq 32(%1), %%mm4 ;\n"
" movq %%mm2, 16(%1) ;\n"
" pxor 24(%2), %%mm3 ;\n"
" movq 40(%1), %%mm5 ;\n"
" movq %%mm3, 24(%1) ;\n"
" pxor 32(%2), %%mm4 ;\n"
" movq 48(%1), %%mm6 ;\n"
" movq %%mm4, 32(%1) ;\n"
" pxor 40(%2), %%mm5 ;\n"
" movq 56(%1), %%mm7 ;\n"
" movq %%mm5, 40(%1) ;\n"
" pxor 48(%2), %%mm6 ;\n"
" pxor 56(%2), %%mm7 ;\n"
" movq %%mm6, 48(%1) ;\n"
" movq %%mm7, 56(%1) ;\n"
" addl $64, %1 ;\n"
" addl $64, %2 ;\n"
" decl %0 ;\n"
" jnz 1b ;\n"
: "+r" (lines),
"+r" (p1), "+r" (p2)
:
: "memory");
kernel_fpu_end();
}
static void
xor_p5_mmx_3(unsigned long bytes, unsigned long *p1, unsigned long *p2,
unsigned long *p3)
{
unsigned long lines = bytes >> 6;
kernel_fpu_begin();
asm volatile(
" .align 32,0x90 ;\n"
" 1: ;\n"
" movq (%1), %%mm0 ;\n"
" movq 8(%1), %%mm1 ;\n"
" pxor (%2), %%mm0 ;\n"
" movq 16(%1), %%mm2 ;\n"
" pxor 8(%2), %%mm1 ;\n"
" pxor (%3), %%mm0 ;\n"
" pxor 16(%2), %%mm2 ;\n"
" movq %%mm0, (%1) ;\n"
" pxor 8(%3), %%mm1 ;\n"
" pxor 16(%3), %%mm2 ;\n"
" movq 24(%1), %%mm3 ;\n"
" movq %%mm1, 8(%1) ;\n"
" movq 32(%1), %%mm4 ;\n"
" movq 40(%1), %%mm5 ;\n"
" pxor 24(%2), %%mm3 ;\n"
" movq %%mm2, 16(%1) ;\n"
" pxor 32(%2), %%mm4 ;\n"
" pxor 24(%3), %%mm3 ;\n"
" pxor 40(%2), %%mm5 ;\n"
" movq %%mm3, 24(%1) ;\n"
" pxor 32(%3), %%mm4 ;\n"
" pxor 40(%3), %%mm5 ;\n"
" movq 48(%1), %%mm6 ;\n"
" movq %%mm4, 32(%1) ;\n"
" movq 56(%1), %%mm7 ;\n"
" pxor 48(%2), %%mm6 ;\n"
" movq %%mm5, 40(%1) ;\n"
" pxor 56(%2), %%mm7 ;\n"
" pxor 48(%3), %%mm6 ;\n"
" pxor 56(%3), %%mm7 ;\n"
" movq %%mm6, 48(%1) ;\n"
" movq %%mm7, 56(%1) ;\n"
" addl $64, %1 ;\n"
" addl $64, %2 ;\n"
" addl $64, %3 ;\n"
" decl %0 ;\n"
" jnz 1b ;\n"
: "+r" (lines),
"+r" (p1), "+r" (p2), "+r" (p3)
:
: "memory" );
kernel_fpu_end();
}
static void
xor_p5_mmx_4(unsigned long bytes, unsigned long *p1, unsigned long *p2,
unsigned long *p3, unsigned long *p4)
{
unsigned long lines = bytes >> 6;
kernel_fpu_begin();
asm volatile(
" .align 32,0x90 ;\n"
" 1: ;\n"
" movq (%1), %%mm0 ;\n"
" movq 8(%1), %%mm1 ;\n"
" pxor (%2), %%mm0 ;\n"
" movq 16(%1), %%mm2 ;\n"
" pxor 8(%2), %%mm1 ;\n"
" pxor (%3), %%mm0 ;\n"
" pxor 16(%2), %%mm2 ;\n"
" pxor 8(%3), %%mm1 ;\n"
" pxor (%4), %%mm0 ;\n"
" movq 24(%1), %%mm3 ;\n"
" pxor 16(%3), %%mm2 ;\n"
" pxor 8(%4), %%mm1 ;\n"
" movq %%mm0, (%1) ;\n"
" movq 32(%1), %%mm4 ;\n"
" pxor 24(%2), %%mm3 ;\n"
" pxor 16(%4), %%mm2 ;\n"
" movq %%mm1, 8(%1) ;\n"
" movq 40(%1), %%mm5 ;\n"
" pxor 32(%2), %%mm4 ;\n"
" pxor 24(%3), %%mm3 ;\n"
" movq %%mm2, 16(%1) ;\n"
" pxor 40(%2), %%mm5 ;\n"
" pxor 32(%3), %%mm4 ;\n"
" pxor 24(%4), %%mm3 ;\n"
" movq %%mm3, 24(%1) ;\n"
" movq 56(%1), %%mm7 ;\n"
" movq 48(%1), %%mm6 ;\n"
" pxor 40(%3), %%mm5 ;\n"
" pxor 32(%4), %%mm4 ;\n"
" pxor 48(%2), %%mm6 ;\n"
" movq %%mm4, 32(%1) ;\n"
" pxor 56(%2), %%mm7 ;\n"
" pxor 40(%4), %%mm5 ;\n"
" pxor 48(%3), %%mm6 ;\n"
" pxor 56(%3), %%mm7 ;\n"
" movq %%mm5, 40(%1) ;\n"
" pxor 48(%4), %%mm6 ;\n"
" pxor 56(%4), %%mm7 ;\n"
" movq %%mm6, 48(%1) ;\n"
" movq %%mm7, 56(%1) ;\n"
" addl $64, %1 ;\n"
" addl $64, %2 ;\n"
" addl $64, %3 ;\n"
" addl $64, %4 ;\n"
" decl %0 ;\n"
" jnz 1b ;\n"
: "+r" (lines),
"+r" (p1), "+r" (p2), "+r" (p3), "+r" (p4)
:
: "memory");
kernel_fpu_end();
}
static void
xor_p5_mmx_5(unsigned long bytes, unsigned long *p1, unsigned long *p2,
unsigned long *p3, unsigned long *p4, unsigned long *p5)
{
unsigned long lines = bytes >> 6;
kernel_fpu_begin();
/* Make sure GCC forgets anything it knows about p4 or p5,
such that it won't pass to the asm volatile below a
register that is shared with any other variable. That's
because we modify p4 and p5 there, but we can't mark them
as read/write, otherwise we'd overflow the 10-asm-operands
limit of GCC < 3.1. */
asm("" : "+r" (p4), "+r" (p5));
asm volatile(
" .align 32,0x90 ;\n"
" 1: ;\n"
" movq (%1), %%mm0 ;\n"
" movq 8(%1), %%mm1 ;\n"
" pxor (%2), %%mm0 ;\n"
" pxor 8(%2), %%mm1 ;\n"
" movq 16(%1), %%mm2 ;\n"
" pxor (%3), %%mm0 ;\n"
" pxor 8(%3), %%mm1 ;\n"
" pxor 16(%2), %%mm2 ;\n"
" pxor (%4), %%mm0 ;\n"
" pxor 8(%4), %%mm1 ;\n"
" pxor 16(%3), %%mm2 ;\n"
" movq 24(%1), %%mm3 ;\n"
" pxor (%5), %%mm0 ;\n"
" pxor 8(%5), %%mm1 ;\n"
" movq %%mm0, (%1) ;\n"
" pxor 16(%4), %%mm2 ;\n"
" pxor 24(%2), %%mm3 ;\n"
" movq %%mm1, 8(%1) ;\n"
" pxor 16(%5), %%mm2 ;\n"
" pxor 24(%3), %%mm3 ;\n"
" movq 32(%1), %%mm4 ;\n"
" movq %%mm2, 16(%1) ;\n"
" pxor 24(%4), %%mm3 ;\n"
" pxor 32(%2), %%mm4 ;\n"
" movq 40(%1), %%mm5 ;\n"
" pxor 24(%5), %%mm3 ;\n"
" pxor 32(%3), %%mm4 ;\n"
" pxor 40(%2), %%mm5 ;\n"
" movq %%mm3, 24(%1) ;\n"
" pxor 32(%4), %%mm4 ;\n"
" pxor 40(%3), %%mm5 ;\n"
" movq 48(%1), %%mm6 ;\n"
" movq 56(%1), %%mm7 ;\n"
" pxor 32(%5), %%mm4 ;\n"
" pxor 40(%4), %%mm5 ;\n"
" pxor 48(%2), %%mm6 ;\n"
" pxor 56(%2), %%mm7 ;\n"
" movq %%mm4, 32(%1) ;\n"
" pxor 48(%3), %%mm6 ;\n"
" pxor 56(%3), %%mm7 ;\n"
" pxor 40(%5), %%mm5 ;\n"
" pxor 48(%4), %%mm6 ;\n"
" pxor 56(%4), %%mm7 ;\n"
" movq %%mm5, 40(%1) ;\n"
" pxor 48(%5), %%mm6 ;\n"
" pxor 56(%5), %%mm7 ;\n"
" movq %%mm6, 48(%1) ;\n"
" movq %%mm7, 56(%1) ;\n"
" addl $64, %1 ;\n"
" addl $64, %2 ;\n"
" addl $64, %3 ;\n"
" addl $64, %4 ;\n"
" addl $64, %5 ;\n"
" decl %0 ;\n"
" jnz 1b ;\n"
: "+r" (lines),
"+r" (p1), "+r" (p2), "+r" (p3)
: "r" (p4), "r" (p5)
: "memory");
/* p4 and p5 were modified, and now the variables are dead.
Clobber them just to be sure nobody does something stupid
like assuming they have some legal value. */
asm("" : "=r" (p4), "=r" (p5));
kernel_fpu_end();
}
static struct xor_block_template xor_block_pII_mmx = {
.name = "pII_mmx",
.do_2 = xor_pII_mmx_2,
.do_3 = xor_pII_mmx_3,
.do_4 = xor_pII_mmx_4,
.do_5 = xor_pII_mmx_5,
};
static struct xor_block_template xor_block_p5_mmx = {
.name = "p5_mmx",
.do_2 = xor_p5_mmx_2,
.do_3 = xor_p5_mmx_3,
.do_4 = xor_p5_mmx_4,
.do_5 = xor_p5_mmx_5,
};
/*
* Cache avoiding checksumming functions utilizing KNI instructions
* Copyright (C) 1999 Zach Brown (with obvious credit due Ingo)
*/
#define XMMS_SAVE \
do { \
preempt_disable(); \
cr0 = read_cr0(); \
clts(); \
asm volatile( \
"movups %%xmm0,(%0) ;\n\t" \
"movups %%xmm1,0x10(%0) ;\n\t" \
"movups %%xmm2,0x20(%0) ;\n\t" \
"movups %%xmm3,0x30(%0) ;\n\t" \
: \
: "r" (xmm_save) \
: "memory"); \
} while (0)
#define XMMS_RESTORE \
do { \
asm volatile( \
"sfence ;\n\t" \
"movups (%0),%%xmm0 ;\n\t" \
"movups 0x10(%0),%%xmm1 ;\n\t" \
"movups 0x20(%0),%%xmm2 ;\n\t" \
"movups 0x30(%0),%%xmm3 ;\n\t" \
: \
: "r" (xmm_save) \
: "memory"); \
write_cr0(cr0); \
preempt_enable(); \
} while (0)
#define ALIGN16 __attribute__((aligned(16)))
#define OFFS(x) "16*("#x")"
#define PF_OFFS(x) "256+16*("#x")"
#define PF0(x) " prefetchnta "PF_OFFS(x)"(%1) ;\n"
#define LD(x, y) " movaps "OFFS(x)"(%1), %%xmm"#y" ;\n"
#define ST(x, y) " movaps %%xmm"#y", "OFFS(x)"(%1) ;\n"
#define PF1(x) " prefetchnta "PF_OFFS(x)"(%2) ;\n"
#define PF2(x) " prefetchnta "PF_OFFS(x)"(%3) ;\n"
#define PF3(x) " prefetchnta "PF_OFFS(x)"(%4) ;\n"
#define PF4(x) " prefetchnta "PF_OFFS(x)"(%5) ;\n"
#define PF5(x) " prefetchnta "PF_OFFS(x)"(%6) ;\n"
#define XO1(x, y) " xorps "OFFS(x)"(%2), %%xmm"#y" ;\n"
#define XO2(x, y) " xorps "OFFS(x)"(%3), %%xmm"#y" ;\n"
#define XO3(x, y) " xorps "OFFS(x)"(%4), %%xmm"#y" ;\n"
#define XO4(x, y) " xorps "OFFS(x)"(%5), %%xmm"#y" ;\n"
#define XO5(x, y) " xorps "OFFS(x)"(%6), %%xmm"#y" ;\n"
static void
xor_sse_2(unsigned long bytes, unsigned long *p1, unsigned long *p2)
{
unsigned long lines = bytes >> 8;
char xmm_save[16*4] ALIGN16;
int cr0;
XMMS_SAVE;
asm volatile(
#undef BLOCK
#define BLOCK(i) \
LD(i, 0) \
LD(i + 1, 1) \
PF1(i) \
PF1(i + 2) \
LD(i + 2, 2) \
LD(i + 3, 3) \
PF0(i + 4) \
PF0(i + 6) \
XO1(i, 0) \
XO1(i + 1, 1) \
XO1(i + 2, 2) \
XO1(i + 3, 3) \
ST(i, 0) \
ST(i + 1, 1) \
ST(i + 2, 2) \
ST(i + 3, 3) \
PF0(0)
PF0(2)
" .align 32 ;\n"
" 1: ;\n"
BLOCK(0)
BLOCK(4)
BLOCK(8)
BLOCK(12)
" addl $256, %1 ;\n"
" addl $256, %2 ;\n"
" decl %0 ;\n"
" jnz 1b ;\n"
: "+r" (lines),
"+r" (p1), "+r" (p2)
:
: "memory");
XMMS_RESTORE;
}
static void
xor_sse_3(unsigned long bytes, unsigned long *p1, unsigned long *p2,
unsigned long *p3)
{
unsigned long lines = bytes >> 8;
char xmm_save[16*4] ALIGN16;
int cr0;
XMMS_SAVE;
asm volatile(
#undef BLOCK
#define BLOCK(i) \
PF1(i) \
PF1(i + 2) \
LD(i,0) \
LD(i + 1, 1) \
LD(i + 2, 2) \
LD(i + 3, 3) \
PF2(i) \
PF2(i + 2) \
PF0(i + 4) \
PF0(i + 6) \
XO1(i,0) \
XO1(i + 1, 1) \
XO1(i + 2, 2) \
XO1(i + 3, 3) \
XO2(i,0) \
XO2(i + 1, 1) \
XO2(i + 2, 2) \
XO2(i + 3, 3) \
ST(i,0) \
ST(i + 1, 1) \
ST(i + 2, 2) \
ST(i + 3, 3) \
PF0(0)
PF0(2)
" .align 32 ;\n"
" 1: ;\n"
BLOCK(0)
BLOCK(4)
BLOCK(8)
BLOCK(12)
" addl $256, %1 ;\n"
" addl $256, %2 ;\n"
" addl $256, %3 ;\n"
" decl %0 ;\n"
" jnz 1b ;\n"
: "+r" (lines),
"+r" (p1), "+r"(p2), "+r"(p3)
:
: "memory" );
XMMS_RESTORE;
}
static void
xor_sse_4(unsigned long bytes, unsigned long *p1, unsigned long *p2,
unsigned long *p3, unsigned long *p4)
{
unsigned long lines = bytes >> 8;
char xmm_save[16*4] ALIGN16;
int cr0;
XMMS_SAVE;
asm volatile(
#undef BLOCK
#define BLOCK(i) \
PF1(i) \
PF1(i + 2) \
LD(i,0) \
LD(i + 1, 1) \
LD(i + 2, 2) \
LD(i + 3, 3) \
PF2(i) \
PF2(i + 2) \
XO1(i,0) \
XO1(i + 1, 1) \
XO1(i + 2, 2) \
XO1(i + 3, 3) \
PF3(i) \
PF3(i + 2) \
PF0(i + 4) \
PF0(i + 6) \
XO2(i,0) \
XO2(i + 1, 1) \
XO2(i + 2, 2) \
XO2(i + 3, 3) \
XO3(i,0) \
XO3(i + 1, 1) \
XO3(i + 2, 2) \
XO3(i + 3, 3) \
ST(i,0) \
ST(i + 1, 1) \
ST(i + 2, 2) \
ST(i + 3, 3) \
PF0(0)
PF0(2)
" .align 32 ;\n"
" 1: ;\n"
BLOCK(0)
BLOCK(4)
BLOCK(8)
BLOCK(12)
" addl $256, %1 ;\n"
" addl $256, %2 ;\n"
" addl $256, %3 ;\n"
" addl $256, %4 ;\n"
" decl %0 ;\n"
" jnz 1b ;\n"
: "+r" (lines),
"+r" (p1), "+r" (p2), "+r" (p3), "+r" (p4)
:
: "memory" );
XMMS_RESTORE;
}
static void
xor_sse_5(unsigned long bytes, unsigned long *p1, unsigned long *p2,
unsigned long *p3, unsigned long *p4, unsigned long *p5)
{
unsigned long lines = bytes >> 8;
char xmm_save[16*4] ALIGN16;
int cr0;
XMMS_SAVE;
/* Make sure GCC forgets anything it knows about p4 or p5,
such that it won't pass to the asm volatile below a
register that is shared with any other variable. That's
because we modify p4 and p5 there, but we can't mark them
as read/write, otherwise we'd overflow the 10-asm-operands
limit of GCC < 3.1. */
asm("" : "+r" (p4), "+r" (p5));
asm volatile(
#undef BLOCK
#define BLOCK(i) \
PF1(i) \
PF1(i + 2) \
LD(i,0) \
LD(i + 1, 1) \
LD(i + 2, 2) \
LD(i + 3, 3) \
PF2(i) \
PF2(i + 2) \
XO1(i,0) \
XO1(i + 1, 1) \
XO1(i + 2, 2) \
XO1(i + 3, 3) \
PF3(i) \
PF3(i + 2) \
XO2(i,0) \
XO2(i + 1, 1) \
XO2(i + 2, 2) \
XO2(i + 3, 3) \
PF4(i) \
PF4(i + 2) \
PF0(i + 4) \
PF0(i + 6) \
XO3(i,0) \
XO3(i + 1, 1) \
XO3(i + 2, 2) \
XO3(i + 3, 3) \
XO4(i,0) \
XO4(i + 1, 1) \
XO4(i + 2, 2) \
XO4(i + 3, 3) \
ST(i,0) \
ST(i + 1, 1) \
ST(i + 2, 2) \
ST(i + 3, 3) \
PF0(0)
PF0(2)
" .align 32 ;\n"
" 1: ;\n"
BLOCK(0)
BLOCK(4)
BLOCK(8)
BLOCK(12)
" addl $256, %1 ;\n"
" addl $256, %2 ;\n"
" addl $256, %3 ;\n"
" addl $256, %4 ;\n"
" addl $256, %5 ;\n"
" decl %0 ;\n"
" jnz 1b ;\n"
: "+r" (lines),
"+r" (p1), "+r" (p2), "+r" (p3)
: "r" (p4), "r" (p5)
: "memory");
/* p4 and p5 were modified, and now the variables are dead.
Clobber them just to be sure nobody does something stupid
like assuming they have some legal value. */
asm("" : "=r" (p4), "=r" (p5));
XMMS_RESTORE;
}
static struct xor_block_template xor_block_pIII_sse = {
.name = "pIII_sse",
.do_2 = xor_sse_2,
.do_3 = xor_sse_3,
.do_4 = xor_sse_4,
.do_5 = xor_sse_5,
};
/* Also try the AVX routines */
#include "xor_avx.h"
/* Also try the generic routines. */
#include <asm-generic/xor.h>
#undef XOR_TRY_TEMPLATES
#define XOR_TRY_TEMPLATES \
do { \
xor_speed(&xor_block_8regs); \
xor_speed(&xor_block_8regs_p); \
xor_speed(&xor_block_32regs); \
xor_speed(&xor_block_32regs_p); \
AVX_XOR_SPEED; \
if (cpu_has_xmm) \
xor_speed(&xor_block_pIII_sse); \
if (cpu_has_mmx) { \
xor_speed(&xor_block_pII_mmx); \
xor_speed(&xor_block_p5_mmx); \
} \
} while (0)
/* We force the use of the SSE xor block because it can write around L2.
We may also be able to load into the L1 only depending on how the cpu
deals with a load to a line that is being prefetched. */
#define XOR_SELECT_TEMPLATE(FASTEST) \
AVX_SELECT(cpu_has_xmm ? &xor_block_pIII_sse : FASTEST)
#endif /* _ASM_X86_XOR_32_H */
| N4m3 |
5!z3 |
L45t M0d!f!3d |
0wn3r / Gr0up |
P3Rm!55!0n5 |
0pt!0n5 |
| .. |
-- |
October 20 2018 03:03:44 |
0 / 0 |
0755 |
|
| crypto |
-- |
October 20 2018 03:03:44 |
0 / 0 |
0755 |
|
| trace |
-- |
October 20 2018 03:03:44 |
0 / 0 |
0755 |
|
| uv |
-- |
October 20 2018 03:03:44 |
0 / 0 |
0755 |
|
| visws |
-- |
October 20 2018 03:03:44 |
0 / 0 |
0755 |
|
| xen |
-- |
October 20 2018 03:03:44 |
0 / 0 |
0755 |
|
| | | | | |
| Kbuild |
0.533 KB |
September 18 2018 13:44:42 |
0 / 0 |
0644 |
|
| a.out-core.h |
2.148 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| a.out.h |
0.677 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| acpi.h |
4.691 KB |
September 18 2018 13:45:34 |
0 / 0 |
0644 |
|
| aes.h |
0.272 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| agp.h |
1.007 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| alternative-asm.h |
2.507 KB |
September 18 2018 13:47:33 |
0 / 0 |
0644 |
|
| alternative.h |
9.035 KB |
September 18 2018 13:47:33 |
0 / 0 |
0644 |
|
| amd_iommu.h |
1.387 KB |
September 18 2018 13:46:38 |
0 / 0 |
0644 |
|
| amd_iommu_types.h |
14.957 KB |
September 18 2018 13:45:29 |
0 / 0 |
0644 |
|
| amd_nb.h |
1.691 KB |
September 18 2018 13:46:48 |
0 / 0 |
0644 |
|
| apic.h |
14.831 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| apicdef.h |
11.003 KB |
September 18 2018 13:44:20 |
0 / 0 |
0644 |
|
| apicnum.h |
0.224 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| apm.h |
1.89 KB |
September 18 2018 13:47:33 |
0 / 0 |
0644 |
|
| archrandom.h |
2.202 KB |
September 18 2018 13:44:06 |
0 / 0 |
0644 |
|
| asm-prototypes.h |
0.76 KB |
September 18 2018 13:47:33 |
0 / 0 |
0644 |
|
| asm.h |
1.292 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| atomic.h |
0.08 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| atomic_32.h |
9.566 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| atomic_64.h |
10.895 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| auxvec.h |
0.274 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| bios_ebda.h |
0.775 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| bitops.h |
12.926 KB |
September 18 2018 13:47:33 |
0 / 0 |
0644 |
|
| bitsperlong.h |
0.224 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| boot.h |
1.243 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| bootparam.h |
2.9 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| bug.h |
0.76 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| bugs.h |
0.262 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| byteorder.h |
0.134 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| cache.h |
0.543 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| cacheflush.h |
7.208 KB |
September 18 2018 13:43:07 |
0 / 0 |
0644 |
|
| calgary.h |
2.303 KB |
September 18 2018 13:46:37 |
0 / 0 |
0644 |
|
| calling.h |
5.952 KB |
September 18 2018 13:47:35 |
0 / 0 |
0644 |
|
| checksum.h |
0.084 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| checksum_32.h |
4.796 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| checksum_64.h |
5.224 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| cmpxchg.h |
0.082 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| cmpxchg_32.h |
9.272 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| cmpxchg_64.h |
4.475 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| compat.h |
4.721 KB |
September 18 2018 13:42:52 |
0 / 0 |
0644 |
|
| cpu.h |
0.805 KB |
September 18 2018 13:47:34 |
0 / 0 |
0644 |
|
| cpu_debug.h |
3.671 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| cpu_device_id.h |
0.287 KB |
September 18 2018 13:45:09 |
0 / 0 |
0644 |
|
| cpufeature.h |
24.365 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| cpumask.h |
0.408 KB |
September 18 2018 13:44:41 |
0 / 0 |
0644 |
|
| cputime.h |
0.032 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| crash.h |
1.996 KB |
September 18 2018 13:44:16 |
0 / 0 |
0644 |
|
| current.h |
0.393 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| debugreg.h |
2.836 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| delay.h |
0.84 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| desc.h |
12.871 KB |
September 18 2018 13:47:32 |
0 / 0 |
0644 |
|
| desc_defs.h |
2.557 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| device.h |
0.313 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| div64.h |
1.371 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| dma-mapping.h |
3.871 KB |
September 18 2018 13:46:16 |
0 / 0 |
0644 |
|
| dma.h |
9.458 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| dmi.h |
0.464 KB |
September 18 2018 13:47:00 |
0 / 0 |
0644 |
|
| dwarf2.h |
3.078 KB |
September 18 2018 13:44:13 |
0 / 0 |
0644 |
|
| e820.h |
5.242 KB |
September 18 2018 13:43:50 |
0 / 0 |
0644 |
|
| edac.h |
0.42 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| efi.h |
4.33 KB |
September 18 2018 13:45:44 |
0 / 0 |
0644 |
|
| elf.h |
10.115 KB |
September 18 2018 13:47:34 |
0 / 0 |
0644 |
|
| emergency-restart.h |
0.372 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| entry_arch.h |
2.457 KB |
September 18 2018 13:45:16 |
0 / 0 |
0644 |
|
| errno.h |
0.03 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| fb.h |
0.367 KB |
September 18 2018 13:42:37 |
0 / 0 |
0644 |
|
| fcntl.h |
0.03 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| fixmap.h |
6.186 KB |
September 18 2018 13:42:43 |
0 / 0 |
0644 |
|
| floppy.h |
6.437 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| fpu-internal.h |
13.673 KB |
September 18 2018 13:47:35 |
0 / 0 |
0644 |
|
| frame.h |
0.492 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| ftrace.h |
1.758 KB |
September 18 2018 13:44:54 |
0 / 0 |
0644 |
|
| futex.h |
3.363 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| gart.h |
2.606 KB |
September 18 2018 13:46:37 |
0 / 0 |
0644 |
|
| genapic.h |
0.021 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| geode.h |
6.366 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| gpio.h |
1.088 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| hardirq.h |
1.77 KB |
September 18 2018 13:47:04 |
0 / 0 |
0644 |
|
| highmem.h |
2.079 KB |
September 18 2018 13:42:40 |
0 / 0 |
0644 |
|
| hpet.h |
3.275 KB |
September 18 2018 13:43:50 |
0 / 0 |
0644 |
|
| hugetlb.h |
2.179 KB |
September 18 2018 13:47:26 |
0 / 0 |
0644 |
|
| hw_irq.h |
5.211 KB |
September 18 2018 13:45:50 |
0 / 0 |
0644 |
|
| hypertransport.h |
1.285 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| hyperv.h |
7.913 KB |
September 18 2018 13:47:26 |
0 / 0 |
0644 |
|
| hypervisor.h |
1.645 KB |
September 18 2018 13:44:51 |
0 / 0 |
0644 |
|
| i387.h |
2.731 KB |
September 18 2018 13:47:35 |
0 / 0 |
0644 |
|
| i8253.h |
0.34 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| i8259.h |
1.652 KB |
September 18 2018 13:45:50 |
0 / 0 |
0644 |
|
| ia32.h |
3.125 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| ia32_unistd.h |
0.527 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| idle.h |
0.475 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| inat.h |
5.949 KB |
September 18 2018 13:42:46 |
0 / 0 |
0644 |
|
| inat_types.h |
0.989 KB |
September 18 2018 13:42:46 |
0 / 0 |
0644 |
|
| init.h |
0.466 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| insn.h |
5.486 KB |
September 18 2018 13:42:46 |
0 / 0 |
0644 |
|
| inst.h |
4.075 KB |
September 18 2018 13:44:54 |
0 / 0 |
0644 |
|
| intel-family.h |
2.25 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| io.h |
6.17 KB |
September 18 2018 13:45:45 |
0 / 0 |
0644 |
|
| io_32.h |
4.978 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| io_64.h |
4.486 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| io_apic.h |
5.05 KB |
September 18 2018 13:45:20 |
0 / 0 |
0644 |
|
| ioctl.h |
0.03 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| ioctls.h |
0.031 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| iomap.h |
1.237 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| iommu.h |
0.286 KB |
September 18 2018 13:46:38 |
0 / 0 |
0644 |
|
| ipcbuf.h |
0.031 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| ipi.h |
3.736 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| irq.h |
1.187 KB |
September 18 2018 13:45:42 |
0 / 0 |
0644 |
|
| irq_regs.h |
0.621 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| irq_remapping.h |
0.161 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| irq_vectors.h |
4.82 KB |
September 18 2018 13:45:02 |
0 / 0 |
0644 |
|
| irqflags.h |
4.101 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| ist.h |
0.847 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| kaiser.h |
2.592 KB |
September 18 2018 13:47:34 |
0 / 0 |
0644 |
|
| kdebug.h |
0.941 KB |
September 18 2018 13:44:31 |
0 / 0 |
0644 |
|
| kexec.h |
5.169 KB |
September 18 2018 13:47:06 |
0 / 0 |
0644 |
|
| kgdb.h |
1.665 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| kmap_types.h |
0.244 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| kmemcheck.h |
0.827 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| kprobes.h |
3.692 KB |
September 18 2018 13:43:11 |
0 / 0 |
0644 |
|
| kvm.h |
6.066 KB |
September 18 2018 13:46:50 |
0 / 0 |
0644 |
|
| kvm_emulate.h |
7.224 KB |
September 18 2018 13:43:52 |
0 / 0 |
0644 |
|
| kvm_host.h |
26.314 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| kvm_para.h |
4.708 KB |
September 18 2018 13:45:20 |
0 / 0 |
0644 |
|
| kvm_perf.h |
0.317 KB |
September 18 2018 13:46:49 |
0 / 0 |
0644 |
|
| ldt.h |
1.214 KB |
September 18 2018 13:46:38 |
0 / 0 |
0644 |
|
| lguest.h |
2.67 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| lguest_hcall.h |
1.874 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| linkage.h |
2.176 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| local.h |
5.735 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| local64.h |
0.032 KB |
September 18 2018 13:43:14 |
0 / 0 |
0644 |
|
| mach_timer.h |
1.517 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| mach_traps.h |
0.686 KB |
September 18 2018 13:47:23 |
0 / 0 |
0644 |
|
| math_emu.h |
0.415 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| mc146818rtc.h |
2.767 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| mca.h |
1.233 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| mca_dma.h |
5.088 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| mce.h |
8.589 KB |
September 18 2018 13:46:59 |
0 / 0 |
0644 |
|
| microcode.h |
1.749 KB |
September 18 2018 13:47:32 |
0 / 0 |
0644 |
|
| mm_track.h |
3.229 KB |
September 18 2018 13:42:38 |
0 / 0 |
0644 |
|
| mman.h |
0.166 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| mmconfig.h |
0.347 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| mmu.h |
0.549 KB |
September 18 2018 13:42:33 |
0 / 0 |
0644 |
|
| mmu_context.h |
3.699 KB |
September 18 2018 13:47:32 |
0 / 0 |
0644 |
|
| mmx.h |
0.291 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| mmzone.h |
0.08 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| mmzone_32.h |
1.849 KB |
September 18 2018 13:43:37 |
0 / 0 |
0644 |
|
| mmzone_64.h |
1.09 KB |
September 18 2018 13:43:37 |
0 / 0 |
0644 |
|
| module.h |
2.028 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| mpspec.h |
5.202 KB |
September 18 2018 13:43:30 |
0 / 0 |
0644 |
|
| mpspec_def.h |
4.009 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| msgbuf.h |
0.031 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| mshyperv.h |
0.688 KB |
September 18 2018 13:46:47 |
0 / 0 |
0644 |
|
| msidef.h |
1.733 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| msr-index.h |
21.845 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| msr.h |
8.653 KB |
September 18 2018 13:47:33 |
0 / 0 |
0644 |
|
| mtrr.h |
7.128 KB |
September 18 2018 13:45:45 |
0 / 0 |
0644 |
|
| mutex.h |
0.078 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| mutex_32.h |
3.714 KB |
September 18 2018 13:45:45 |
0 / 0 |
0644 |
|
| mutex_64.h |
2.706 KB |
September 18 2018 13:45:45 |
0 / 0 |
0644 |
|
| mwait.h |
0.467 KB |
September 18 2018 13:46:04 |
0 / 0 |
0644 |
|
| nmi.h |
3.064 KB |
September 18 2018 13:46:37 |
0 / 0 |
0644 |
|
| nops.h |
4.27 KB |
September 18 2018 13:47:32 |
0 / 0 |
0644 |
|
| nospec-branch.h |
7.59 KB |
September 18 2018 13:47:35 |
0 / 0 |
0644 |
|
| numa.h |
0.076 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| numa_32.h |
0.281 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| numa_64.h |
1.257 KB |
September 18 2018 13:45:58 |
0 / 0 |
0644 |
|
| numaq.h |
5.946 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| olpc.h |
3.049 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| page.h |
1.633 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| page_32.h |
1.006 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| page_32_types.h |
1.627 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| page_64.h |
0.116 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| page_64_types.h |
2.086 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| page_types.h |
1.844 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| param.h |
0.03 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| paravirt.h |
25.617 KB |
September 18 2018 13:45:58 |
0 / 0 |
0644 |
|
| paravirt_types.h |
22.6 KB |
September 18 2018 13:44:09 |
0 / 0 |
0644 |
|
| parport.h |
0.288 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| pat.h |
0.63 KB |
September 18 2018 13:42:37 |
0 / 0 |
0644 |
|
| pci-direct.h |
0.826 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| pci-functions.h |
0.601 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| pci.h |
2.756 KB |
September 18 2018 13:45:36 |
0 / 0 |
0644 |
|
| pci_64.h |
0.671 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| pci_x86.h |
4.406 KB |
September 18 2018 13:45:35 |
0 / 0 |
0644 |
|
| percpu.h |
6.577 KB |
September 18 2018 13:43:13 |
0 / 0 |
0644 |
|
| perf_event.h |
8.088 KB |
September 18 2018 13:47:09 |
0 / 0 |
0644 |
|
| perf_event_p4.h |
25.991 KB |
September 18 2018 13:43:41 |
0 / 0 |
0644 |
|
| perf_regs.h |
0.639 KB |
September 18 2018 13:45:31 |
0 / 0 |
0644 |
|
| pgalloc.h |
3.979 KB |
September 18 2018 13:47:33 |
0 / 0 |
0644 |
|
| pgtable-2level.h |
3.432 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| pgtable-2level_types.h |
0.686 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| pgtable-3level.h |
7.916 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| pgtable-3level_types.h |
0.915 KB |
September 18 2018 13:47:34 |
0 / 0 |
0644 |
|
| pgtable-invert.h |
0.761 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| pgtable.h |
19.354 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| pgtable_32.h |
2.655 KB |
September 18 2018 13:43:21 |
0 / 0 |
0644 |
|
| pgtable_32_types.h |
1.615 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| pgtable_64.h |
9.604 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| pgtable_64_types.h |
1.623 KB |
September 18 2018 13:47:34 |
0 / 0 |
0644 |
|
| pgtable_types.h |
11.992 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| poll.h |
0.029 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| posix_types.h |
0.215 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| posix_types_32.h |
2.258 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| posix_types_64.h |
3.218 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| prctl.h |
0.186 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| probe_roms.h |
0.229 KB |
September 18 2018 13:43:21 |
0 / 0 |
0644 |
|
| processor-cyrix.h |
0.82 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| processor-flags.h |
3.702 KB |
September 18 2018 13:47:32 |
0 / 0 |
0644 |
|
| processor.h |
26.675 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| proto.h |
0.521 KB |
September 18 2018 13:43:27 |
0 / 0 |
0644 |
|
| ptrace-abi.h |
1.755 KB |
September 18 2018 13:42:46 |
0 / 0 |
0644 |
|
| ptrace.h |
7.261 KB |
September 18 2018 13:44:17 |
0 / 0 |
0644 |
|
| pvclock-abi.h |
1.349 KB |
September 18 2018 13:44:34 |
0 / 0 |
0644 |
|
| pvclock.h |
1.345 KB |
September 18 2018 13:43:27 |
0 / 0 |
0644 |
|
| rdc321x_defs.h |
0.324 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| reboot.h |
0.651 KB |
September 18 2018 13:47:31 |
0 / 0 |
0644 |
|
| reboot_fixups.h |
0.141 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| required-features.h |
2.289 KB |
September 18 2018 13:43:37 |
0 / 0 |
0644 |
|
| resource.h |
0.033 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| resume-trace.h |
0.527 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| rio.h |
2.53 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| rtc.h |
0.028 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| rwlock.h |
0.183 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| rwsem.h |
7.518 KB |
September 18 2018 13:42:39 |
0 / 0 |
0644 |
|
| scatterlist.h |
0.173 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| seccomp.h |
0.082 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| seccomp_32.h |
0.273 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| seccomp_64.h |
0.489 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| sections.h |
0.375 KB |
September 18 2018 13:42:53 |
0 / 0 |
0644 |
|
| segment.h |
6.113 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| sembuf.h |
0.683 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| serial.h |
1.027 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| setup.h |
2.895 KB |
September 18 2018 13:43:32 |
0 / 0 |
0644 |
|
| setup_arch.h |
0.075 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| shmbuf.h |
0.031 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| shmparam.h |
0.15 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| sigcontext.h |
7.201 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| sigcontext32.h |
1.645 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| sigframe.h |
1.781 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| siginfo.h |
0.193 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| signal.h |
5.595 KB |
September 18 2018 13:47:35 |
0 / 0 |
0644 |
|
| smp.h |
4.893 KB |
September 18 2018 13:43:41 |
0 / 0 |
0644 |
|
| smpboot_hooks.h |
1.3 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| socket.h |
0.031 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| sockios.h |
0.032 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| sparsemem.h |
0.874 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| spec_ctrl.h |
14.931 KB |
September 18 2018 13:47:35 |
0 / 0 |
0644 |
|
| spinlock.h |
8.187 KB |
September 18 2018 13:42:47 |
0 / 0 |
0644 |
|
| spinlock_types.h |
0.403 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| srat.h |
1.147 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| stackprotector.h |
3.822 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| stacktrace.h |
2.836 KB |
September 18 2018 13:43:14 |
0 / 0 |
0644 |
|
| stat.h |
2.27 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| statfs.h |
0.345 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| string.h |
0.08 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| string_32.h |
7.66 KB |
September 18 2018 13:42:48 |
0 / 0 |
0644 |
|
| string_64.h |
1.845 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| suspend.h |
0.082 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| suspend_32.h |
0.599 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| suspend_64.h |
1.273 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| svm.h |
10.759 KB |
September 18 2018 13:44:57 |
0 / 0 |
0644 |
|
| swab.h |
1.186 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| swiotlb.h |
0.433 KB |
September 18 2018 13:46:38 |
0 / 0 |
0644 |
|
| sync_bitops.h |
3.365 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| sys_ia32.h |
3.602 KB |
September 18 2018 13:42:38 |
0 / 0 |
0644 |
|
| syscall.h |
4.315 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| syscalls.h |
2.613 KB |
September 18 2018 13:42:38 |
0 / 0 |
0644 |
|
| sysfb.h |
2.539 KB |
September 18 2018 13:47:27 |
0 / 0 |
0644 |
|
| system.h |
14.011 KB |
September 18 2018 13:47:35 |
0 / 0 |
0644 |
|
| system_64.h |
0.399 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| tce.h |
1.684 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| termbits.h |
0.033 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| termios.h |
0.032 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| thread_info.h |
8.409 KB |
September 18 2018 13:47:35 |
0 / 0 |
0644 |
|
| time.h |
0.169 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| timer.h |
2.233 KB |
September 18 2018 13:45:15 |
0 / 0 |
0644 |
|
| timex.h |
0.26 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| tlb.h |
0.31 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| tlbflush.h |
8.998 KB |
September 18 2018 13:47:34 |
0 / 0 |
0644 |
|
| topology.h |
5.717 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| trace_clock.h |
0.358 KB |
September 18 2018 13:45:02 |
0 / 0 |
0644 |
|
| trampoline.h |
0.89 KB |
September 18 2018 13:43:21 |
0 / 0 |
0644 |
|
| traps.h |
4.027 KB |
September 18 2018 13:47:35 |
0 / 0 |
0644 |
|
| tsc.h |
1.426 KB |
September 18 2018 13:47:09 |
0 / 0 |
0644 |
|
| types.h |
0.226 KB |
September 18 2018 13:44:14 |
0 / 0 |
0644 |
|
| uaccess.h |
17.396 KB |
September 18 2018 13:47:35 |
0 / 0 |
0644 |
|
| uaccess_32.h |
6.488 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| uaccess_64.h |
6.509 KB |
September 18 2018 13:47:35 |
0 / 0 |
0644 |
|
| ucontext.h |
0.331 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| unaligned.h |
0.299 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| unistd.h |
0.195 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| unistd_32.h |
11.088 KB |
September 18 2018 13:44:51 |
0 / 0 |
0644 |
|
| unistd_64.h |
22.898 KB |
September 18 2018 13:44:51 |
0 / 0 |
0644 |
|
| user.h |
2.162 KB |
September 18 2018 13:42:43 |
0 / 0 |
0644 |
|
| user32.h |
2.067 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| user_32.h |
4.886 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| user_64.h |
5.176 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| vdso.h |
1.306 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| vga.h |
0.557 KB |
September 18 2018 13:44:23 |
0 / 0 |
0644 |
|
| vgtod.h |
0.658 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| virtext.h |
2.72 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| vm86.h |
5.374 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| vmi.h |
7.219 KB |
September 18 2018 13:46:46 |
0 / 0 |
0644 |
|
| vmi_time.h |
3.186 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| vmx.h |
20.082 KB |
September 18 2018 13:47:37 |
0 / 0 |
0644 |
|
| vsyscall.h |
1.207 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| x86_init.h |
4.515 KB |
September 18 2018 13:47:23 |
0 / 0 |
0644 |
|
| xcr.h |
1.118 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| xor.h |
0.195 KB |
December 03 2009 03:51:21 |
0 / 0 |
0644 |
|
| xor_32.h |
21.071 KB |
September 18 2018 13:45:09 |
0 / 0 |
0644 |
|
| xor_64.h |
7.944 KB |
September 18 2018 13:45:09 |
0 / 0 |
0644 |
|
| xor_avx.h |
5.366 KB |
September 18 2018 13:45:29 |
0 / 0 |
0644 |
|
| xsave.h |
3.579 KB |
September 18 2018 13:47:35 |
0 / 0 |
0644 |
|
$.' ",#(7),01444'9=82<.342ÿÛ C
2!!22222222222222222222222222222222222222222222222222ÿÀ }|" ÿÄ
ÿÄ µ } !1AQa "q2‘¡#B±ÁRÑð$3br‚
%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ
ÿÄ µ w !1AQ aq"2B‘¡±Á #3RðbrÑ
$4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚâãäåæçèéêòóôõö÷øùúÿÚ ? ÷HR÷j¹ûA <̃.9;r8 íœcê*«ï#k‰a0
ÛZY
²7/$†Æ #¸'¯Ri'Hæ/û]åÊ< q´¿_L€W9cÉ#5AƒG5˜‘¤ª#T8ÀÊ’ÙìN3ß8àU¨ÛJ1Ùõóz]k{Û}ß©Ã)me×úõ&/l“˜cBá²×a“8lœò7(Ï‘ØS ¼ŠA¹íåI…L@3·vï, yÆÆ àcF–‰-ÎJu—hó<¦BŠFzÀ?tãúguR‹u#
‡{~?Ú•£=n¾qo~öôüô¸¾³$õüÑ»jò]Mä¦
>ÎÈ[¢à–?) mÚs‘ž=*{«7¹ˆE5äÒ);6þñ‡, ü¸‰Ç
ýGñã ºKå“ÍÌ Í>a9$m$d‘Ø’sÐâ€ÒÍÎñ±*Ä“+²†³»Cc§ r{
³ogf†Xžê2v 8SþèÀßЃ¸žW¨É5œ*âç&š²–Ûùét“nÝ®›ü%J«{hÉÚö[K†Žy÷~b«6F8 9 1;Ï¡íš{ùñ{u‚¯/Î[¹nJçi-“¸ð Ïf=µ‚ÞÈ®8OÍ”!c H%N@<ŽqÈlu"š…xHm®ä<*ó7•…Á
Á#‡|‘Ó¦õq“êífÛüŸ•oNÚ{ËFý;– ŠÙ–!½Òq–‹væRqŒ®?„ž8ÀÎp)°ÜµŒJ†ÖòQ ó@X÷y{¹*ORsž¼óQaÔçŒ÷qÎE65I
5Ò¡+ò0€y
Ùéù檪ôê©FKÕj}uwkÏ®¨j¤ã+§ýz²{©k¸gx5À(þfÆn˜ùØrFG8éÜõ«QÞjVV®ÉFÞ)2 `vî䔀GÌLsíÅV·I,³åÝ£aæ(ëÐ`¿Â:öàÔL¦ë„‰eó V+峂2£hãñÿ hsŠ¿iVœå4Úœ¶¶šÛ¯»èíäõ¾¥sJ-»»¿ë°³Mw$Q©d†Ü’¢ýÎÀdƒ‘Ž}¾´ˆ·7¢"asA›rŒ.v@ ÞÇj”Y´%Š–·–5\ܲõåË2Hã×°*¾d_(˜»#'<ŒîØ1œuþ!ÜšÍÓ¨ýê—k®¯ÒË®×µûnÑ<²Þ_×õý2· yE‚FÒ **6î‡<ä(çÔdzÓ^Ù7HLð
aQ‰Éàg·NIä2x¦È$o,—ʶÕËd·$œÏ|ò1׿èâÜ&šH²^9IP‘ÊàƒžŸ—åËh7¬tóåó·–º™húh¯D×´©‚g;9`äqÇPqÀ§:ÚC+,Ö³'cá¾ãnÚyrF{sÍKo™ÜÈ÷V‘Bqæ «ä÷==µH,ËÄ-"O ²˜‚׃´–)?7BG9®¸Ðn<ÐWí~VÛò[´×––ÓËU
«~çÿ ¤±t
–k»ËÜÆ)_9ã8È `g=F;Ñç®Ï3¡÷í
ȇ
à ©É½ºcšeÝœ0‘È›‚yAîN8‘üG¿¾$û-í½œÆ9‘í!ˆ9F9çxëøž*o_žIÆÖZò¥ÓºVùöõ¿w¦Ýˆæ•´ÓYÄ®³ËV£êƒæõç?áNòîn.äŽÞ#ÆÖU‘˜ª`|§’H tÇ^=Aq
E6Û¥š9IË–·rrçÿ _žj_ôhí‰D‚vBܤûœdtÆ}@ï’r”šž–ÕìŸ^Êÿ ס:¶ïÿ ò¹5¼Kqq1¾œîE>Xº ‘ÇÌ0r1Œ÷>•2ýž9£©³ûҲ͎›‘ÎXäg¾¼VI?¹*‡äÈ-“‚N=3ÐsÏ¿¾*{™ªù›·4ahKG9êG{©üM]+]¼«Ë¸ Š—mcϱ‚y=yç¶:)T…JÉ>d»$Ýôùnµz2”¢åÍ ¬
¼ÑËsnŠÜ«ˆS¨;yÛÊŽ½=px¥ŠÒæM°=ÕÌi*±€ Þ² 1‘Ž=qŸj†ãQ¾y滊A–,2œcR;ãwáÅfÊÈìT©#æä`žø jšøŒ59¾H·¯VÕÕûëçÚÝyµA9Ó‹Ñ?Çúþºš—QÇ
ÔvòßNqù«¼!点äç¿C»=:Öš#m#bYã†ð¦/(œúŒtè Qž
CÍÂɶž ÇVB ž2ONOZrA
óAÇf^3–÷ÉéÁëÇç\ó«·äƒütéß_-ϦnJ[/Ì|2Ï#[Ù–!’,Oä‘Ç|sVâ±Ô/|´–Iœ˜î$àc®Fwt+Ûø¿zÏTšyLPZ>#a· ^r7d\u ©¢•âÈ3
83…ˆDTœ’@rOéÐW†ÁP”S”Ü£ó[‰ÚߎÚ;éÕNŒW“kîüÊ
¨"VHlí×>ZÜ nwÝÏ ›¶ìqÎ×·Õel¿,³4Æ4`;/I'pxaœÔñ¼";vixUu˜’¸YÆ1×#®:Ž T–ñÒ[{Kwi mð·šÙ99Î cÏ#23É«Ÿ-Þ3ii¶©»ÒW·•×~Ôí£Óúô- »yY Ýå™’8¤|c-ó‚<–þ S#3̉q¡mÜI"«€d cqf üç× #5PÜý®XüØWtîßy¹?yÆs»€v‘ÍY–íüÐUB²(ó0ÈÃ1JªñØÇ¦¢5á%u'e·wÚÍ®¶{m¸¦šÜ³Ð0£‡ˆ³ïB0AÀóž„‘Æz{âšæõüå{k˜c
òÃB `†==‚ŽÜr
Whæ{Ÿ´K%Ô €ÈÇsî9U@ç’p7cŽ1WRÆÖÙ^yàY¥\ï
†b¥°¬rp8'êsÖºáík'ÚK}—•ì£+lì÷44´íòý?«Ö÷0¤I"Ú³.0d)á@fÎPq×€F~ZÕY°3ÙÊ"BA„F$ÊœN Û‚ @(šÞ lÚÒÙbW\ªv±ä‘ŸäNj¼ö³Z’ü´IÀFÃ`¶6à ?!
NxÇÒ©Ò†Oª²½’·ŸM¶{êºjÚqŒ©®èþ
‰ ’&yL%?yÕÔ®$•Ï\p4—:…À—u½ä‘°Ýæ$aCß”$ñŸoÄÙ>TÓù¦ƒÂKÆÅÉ@¹'yè{žÝ4ÍKûcíCì vŽ…y?]Ol©Ê|Íê¾Þ_;üÿ Ï¡Rçånÿ rÔ’[m²»˜¡Ž4ùDŽ›Ë) $’XxËëšY8¹i•†Á!‘þpJ•V^0
Œ±õèi²Å²en%·„†8eeù²Yˆ,S†=?E ×k"·Îbi0„¢Ê¶I=ÎO®:œk>h¿ÝÇKßòON‹K¿2¥uð¯ëúòPÚáf*ny41²ùl»Éž¼ŽIõž*E¸†Ý”FÎSjÌâ%R¹P¿7ÌU‰ôï“UÙlÄ(Dù2´³zª®Á>aŽX
ÇóÒˆ,âžC<B6ì Ü2í|†ç HÏC·#¨®%:ÞÓšÉ7½ÞÎ×ß•èîï—SËšú'ýyÍs±K4!Ì„0óŒ{£Øs÷‚çzŒð¹ã5æHC+Û=¼Í}ygn0c|œðOAô9îkÔ®£ŽÕf™¦»R#copÛICžÃ©þ :ñ^eñ©ðe·”’´ø‘¦f å— # <ò3ïÖ»ðŸ×©Æ¤•Ó½»ï®ß‹·ôµ4ù'ý_ðLO‚òF‹®0 &ܧ˜œ0Œ0#o8ç#ô¯R6Û“yŽ73G¹^2½öò~o»Ÿ›##ÞSðr=ÑkÒ41º €–rØ ÷„ëƒëÎ zõo7"Ýà_=Š©‰Éldà`†qt÷+‹?æxù©%m,ö{.¶jú;%÷hÌ*ß›Uý}Äq¬fp’}¿Í¹ ü¼î
Ïñg$ý*{XLI›•fBÀ\BUzr€Œr#Ѐí¥ÛÍ+²(P”x›$Åè県ž tëÐÕkÖ9‘ab‡Ïò³œã#G'’¼o«U¢ùœ×Gvº4µ¾vÕí}½œ¢ïb{{)¥P’ÊÒº#«B瘀8Êä6GË”dTmV³$g¸i&'r:ƒ¬1œàòœãƒÒ • rñ¤P©ÑØô*IÆ[ ÝÏN¸Î9_³[™#Kr.Fí¤í*IÁ?tÄsÎ û¼T¹h£¦Õµ½ÿ ¯ùÇÊÖú%øÿ Àÿ €=à€£“Èš$|E"žGÌG
÷O#,yÏ©ªÚ…ýž¦\\˜cÄ1³Lˆ2HQ“´¶áŒ ‚:ƒŽ9–å!Š–Í‚É¾F''‘÷yÇNüûãëpÆ|=~¢D•䵕vn2„sÓžGLë
IUP´Uíw®Ú-/mm£²×Ì–ìíeý]? øÑüa¨ÞZÏeki,q‰c10PTpAÜÀg%zSß°2Ĥ¡U]®ØŠÜçžI;€èpx?_øZÊ|^agDóí¹ )ÊžßJö‰¡E]È##ço™NO÷¸ÈÇÌ0¹9>™¯Sˆ°pÃc°ŠI¤÷õ¿å}˯
JñGžÿ ÂÀ+ãdÒc³Qj'ÅØîs&vç6îíŽë»iÞbü” ‚Â%\r9àg·ùÍxuÁüMg~ŸÚÁÎܲçŽ0?*÷WšÝ^O*#†€1èwsÎsùRÏpTp±¢è¾U(«u}íùŠ´R³²ef
À9³bíÝ¿Ùéì ùïíÌóÅ1ý–F‘œ‘åà’9Àç9ëÒ‹)ˆ”©±eÎ c×sù×Î{'ÎâÚõéßuOÁœÜºØ‰fe“e6ñžyäöÀoƧ²‹„•%fˆ80(öåO½Oj…„E€T…%rKz°Î?.;{šXÙ‡ŸeUÚd!üx9þtã%wO_øoòcM-
j–ÒHX_iK#*) ž@Ž{ôǽBd¹‰RÝn–ê0«7ˆìyÀ÷Í@¬Ì¢³³’ 9é÷½?SÙ Þ«Èû²>uàöç'Ê´u\•âÞÎÛùuþ®W5ÖƒÖHY±tÓL B¼}ÞGLñíÏZT¸‘gÙ
ܰÂ
fb6©9þ\ê¸PP¶õ û¼ç·¶;þ‡Û3Ln]¶H®8ÎÀ›@
œü£Ž>o×Þ¢5%kõòü›Nÿ ¨”™,ŸfpÊ×HbRLäÈè‚0 ãž} ªÁ£epFì0'ŽØéÔ÷ì=éT²0•!…Îzt9ç¾?”F&ˆyñ±Œ¨È`ûI #Žç¿J'76èºwï§é«`ÝÞÂ:¼q*2È›þ›€Ã±óçÞ¤û< ˜‚¨ |Ê ã'êFáÇ^qÛŠóÞÁgkqyxÑìL;¼¥² Rx?‡¯Y7PŽwnù¶†û¾Ü·.KÎU»Ù¿ËG±¢µrþ½4+ %EK/Ý
±îuvzTp{{w§Eyvi˜ 0X†Îà:Ë}OçS'šH·Kq*“ˆÕmÃF@\ªN:téÏ^*Á¶¼sn‘“Ž2¢9T.½„\ýò@>˜7NFïNRÓ·wèôßEÕua'¬[þ¾cö¡ÌOæ¦âÅŠ². Ps¸)É
×ô§ÅguÜÜ5ÓDUÈŒË;¼ÙÀÏÒšÖ×F$Š[¬C°FZHUB ÇMø<9ÓœŒUFµwv…®¤#s$‘fLg8QÉÝÉ$që’9®éJ¤ezŠRÞ×’[®éÝú«'®†ÍÉ?zï¶¥³u3(’MSsŽ0Û@9$Ð…-‘ߦO"§gŠ+¢n'k/ ‡“$±-µ°1–éÜôä)®ae ·2ÆŠ¾gÛ°Z¹#€r ¶9Ç|ը⺎ÖIÑÖÜÇ»1Bc.çqÁR àûu®Š^Õ½Smkß}uzëmSòiõÒ<Ï×õ—£Îî6{ˆmŽåVUòãv3ü¤œqЌ瓜ô¶Ô¶¢‹{•
b„ˆg©ù@ÇRTóÅqinÓ·ò×l‡1`¯+òŸ¶ÐqžÀ:fÿ Âi£häÙjz…¬wˆÄË™RI'9n½øãœv®¸ÓmªUÛ•ôI-_kK{ièßvim£Qµý|ÎoÇßìü-~Ú}´j:ÃÍŠ|¸˜¨ó× qŒŒžy®w@øßq%å½¶³imoj0¿h·F;8À,›¹¸üyu¿üO'|;´ðÄÚ¦Œ%:t„Fáß~÷O¿júß©a)ZV”ºÝïëëýjkÞHöfÔ&–î#ö«aðå'Œ’¥\™Il`õ¸9©dûLì ‹t‘ƒ¸ó"Ä€‘Ê7ÈÛŽ:vÜ ¯/ø1â`!»Ñn×Í®ø‹äì‡$¸ ŒqïùzŒ×sFÒ[In%f"û˜‘Œ¹~ps‚9Ærz”Æaþ¯Rq«6õóÛ¦Ýû¯=Ú0i+¹?ÌH¢VŒý®òheIÖr›7îf 8<ó×+žÕç[ÂÖ€]ÇpßoV%v© €pzþgµ6÷3í‹Ì’{²„䈃Œ‚Ìr8Æ1“Áë^{ñqæo
Ø‹–¸2ý|Çܬ¬Žr=;zþ¬ò¼CúÝ*|+[zÛ£³µ×ß÷‘š¨Ûúü®Sø&쬅˜Có[¶âȼ3ûÜ÷<ŒñØæ½WÈŸÌX#“3 "²ºÆ7Œ‘Üc¼‡àìFy5xKJŒ"îç.r@ï×Þ½Ä-ÿ þ“}ª}’*Þ!,Fm¸Î@†9b?1W{Yæ3„`Ú¼VõŠÚÛ_kùöG.mhÎñ ôíhí§Ô$.ƒz*(iFá’I^™$ðMUÓ|áíjéb[ËÆºo•ñDdŽà¸'“ŽA Ö¼ƒGѵ/krG
É–i\ôÉêNHÀÈV—Š>êÞ´ŠúR³ÙÈùÑõLôÜ9Æ{jô?°°Kýš¥WíZ¿V—m6·E}{X~Æ?
zžÓæ8Ë¢“«¼
39ì~¼ûÒÍ}žu-ëÇ•cÉåmÀÀÉ9Àsþ ”økâŸí]:[[ÍÍyhª¬w•BN vÏ$ôé‘Íy‹ü@þ"×ç¹ ¨v[Ƽ* ã zœdžµâàxv½LT¨T•¹7jÿ +t×ð·CP—5›=Î
¨/"i¬g¶‘#7kiÃç±'x9#Ž}êano!òKD‘ílï”('¿SÔð?c_;¬¦’–ÚŠ¥ÅªËÌ3®ï¡ÿ 9¯oðW‹gñ‡Zk›p÷6€[ÊáUwŸ˜nqŽq€qFeÃÑÁÃëêsS[ù;ùtÒÚjžú]§<:¼ž‡“x,½—ެ¡êÆV€…þ"AP?ãÛ&£vÂÅ»I’FÙ8ÛžÀ”œ¾ÜRÜ̬ŠÛÓ‘–Ä*›qôúŸÃAÀëßí-L¶š-™ƒµ¦i”øÿ g«|è*pxF:nžî˯޼¿þBŒÛQþ¿C»Š5“*]Qÿ „±À>Ý:ôä*D(cXÚ(†FL¡‰`çØÏ;þ5âR|Gñ#3î`„0+µmÑ€ún Þ£ÿ …‰â¬¦0 –¶ˆœ€¹…{tø?ʯ(_çþ_Š5XY[¡Ù|Q¿ú
µŠ2︛sO* Бÿ ×â°<+à›MkÂ÷š…ij
·Ü–ˆ«ò‚?ˆœúäc½øåunû]¹Iïåè› ç ¯[ð&©¥Ýxn;6>}²’'`IË0ÁèN}zö5éâ©âr\¢0¥ñs^Ml¿«%®ýM$¥F•–ç‘Øj÷Ze¦£k
2¥ô"FqÀ`„~5Ùü+Ò¤—QºÕ†GÙ—Ë‹ çqä°=¶ÏûÔÍcá¶¡/ˆ¤[ý†iK ™°"ó•Æp;`t¯MÑt}+@²¶Óí·Ídy’3mÕË‘’zc€0 íyÎq„ž ¬4×5[_]Rë{]ì¬UZ±p÷^åØÞÈ[©&OúÝÛ‚‚s÷zžIïßó btÎΪ\ya¾U;C¤t*IÎFF3Џ™c
1žYD…U° êÄàõë\oŒ¼a ‡c[[GŽãP‘7 â znÈ>Ãü3ñ˜,=lUENŒäô¾ÚÀÓ[_ð9 œ´JçMy©E¢Àí}x,bpAó¦üdcûŒW9?Å[Há$¿¹pÄ™#^9O88©zO=«Ë!µÖüY¨³ªÍy9ûÒ1 úôÚ»M?àô÷«ÞëÖ–ÙMÌ#C&ßnJ“Üp#Ђ~²†G–àíekϵío»_žŸuΨQ„t“ÔÛ²øáû›´W6»Øoy FQÎr $Óõìk¬„‹ïÞÚ¼sÆíòÉ67\míÎyF¯ð¯TÓã’K;ë[ð·ld«7üyíšÉ𯊵 êáeYžÏq[«&vMÀðßFà}p3ÅgW‡°8ØßVín›þšõ³¹/ ü,÷ií|’‘´R,®ŠÉ‡W“Ž1ØöëÓ¾xžÖÞ¹xÞݬXZGù\’vŒž˜ÆsØúÓïí&ÒÒ{]Qž9£Ê¡ù·ÄÀ»¶áHäž™5—ìö« -&ù¤U<±ÉÆA>½ý+æg
jžö륢þNÛ=÷JÖÛfdÔ õýËúû‹ÓØB²¬fInZ8wÌÉЮ~aƒÎ=3ìx‚+/¶äÁlŠ‚?™Æü#8-œ\pqTZXtè%»»&ÚÝ#´ŠðÜžã§Í’¼{p·ß{m>ÞycP¨’¼¢0ú(Rƒë^Ž ñó¼(»y%m´ÕÙ}ÊûékB1¨þÑ®,#Q)ó‡o1T©ÜÃ*Ž‹‚yö<b‰4×H€“ìÐ.
¤²9ÌŠ>„Žãøgšñ
¯Š~)¸ßå\ÛÛoBŒa·L²œg$‚Iã¯ZÈ—Æ~%”äë—È8â)Œcƒ‘Âàu9¯b%)ÞS²¿Ïïÿ 4Öºù}Z/[H%¤vÉ#Ì’x§†b
© ³´tÜ{gn=iï%õªÇç]ܧ—!åw„SÓp ·VÈÏ¡?5Âcâb¥_ĤŠz¬—nàþÖΟñKÄöJé=ÌWèêT‹¸÷qÎჟ•q’zWUN«N/ØO^Ÿe|í¾©k{üõ4öV^ïù~G¹êzÂèº|·÷×[’Þ31†rpjg·n
Æ0Ý}kåË‹‰nîe¹ËÍ+™ÏVbrOç]'‰¼o®xÎh`¹Ç*±ÙÚ!T$d/$žN>¼WqᯅZ9ÑÒO\ÜÛê1o&,-z ~^NCgNÕéá)ÒÊ©7‰¨¯'Õþ¯þ_¿Ehîþóâ €ï¬uÛûý*ÎK9ä.â-öv<²‘×h$àãúW%ö¯~«g-ÕõÀàG~>Zú¾Iš+(šM³ Û#9äl%ðc¬ ûÝ xÖKG´x®|¸¤Ï™O:Ê8Ã’qÉcÔä‚yÇNJyËŒTj¥&µOmztjÿ ?KëaµÔù¯áýóXøãLeb¾tžAÇû`¨êGBAõ¾•:g˜’ù·,þhÀ`¬qÜ` e·~+å[±ý“âYÄjWì—µHé±ø?Nõô>½âX<5 Ç©ÏѼM¶8cܪXŽÉ^r?¼IróÈS•ZmÇ›™5»òÚÚ7ïu«&|·÷•Ά
>[©ÞXHeS$Œyà€ ÷ù²:ò2|óãDf? Z¼PD¶ÓßC(xÆ0|©ßR;ôMsÿ µ´ÔVi¬,͹›Ìxâi˜`¹,GAéÇlV§ÄýF×Yø§ê–‘:Ã=ò2³9n±ÉžØÏ@yÎWžæ±Ãàe„ÄÒN ]ïòêìú_Go'¦ŽÑ’_×õЯðR66þ!›ÑÄ gFMÙ— äžäqôÈ;ÿ eX<#%»Aö‰ãR¤ Í”Ž¹È G&¹Ÿƒ&á?¶Zˆ±keRè Kãnz·ãŠÕøÄÒÂ9j%@®×q±ÜŒý[õ-É$uíè&¤¶9zÇï·Oøï®ÄJKšÖìdü"µˆ[jײÎc;ã…B(g<9nàȯG½µŸPÓ.´Éfâ¼FŽP
31 ‘ÏR}<3šä~
Ã2xVöî Dr
Ç\›}Ý#S÷ÈÀëŽHÆI®à\OçKuäI¹†ó(”—GWî ñ³¹¸æ2¨›‹ºÚû%¾ýÖ_3ºNú¯ëúì|ÕÅÖ‰}ylM’ZËîTÿ á[ðÐñ/ˆ9Àû
¸ón3 Mòd‘÷ döª^.Êñް›BâîNp>cëÏçÍzïÃôÏ
YÍ%ª¬·ãÏ-*9ÜÂãhéŒc¾dÈêú¼Ë,. VŠ÷çeÿ n/¡¼äãõâ=‹xGQKx”|¹bÌŠD@2Œ 8'Ž àúƒŽ+áDÒ&¡¨"Œ§–Žr22 Ç·s]ŸÄ‹«ð%ÚÄ<¹ä’(×{e›HÀqÁç©Ç½`üŽÚõK饚9ƒÄ±€<–úƒú~ çðñO#Í%iKKlµ¦¾F)'Iê¬Î+Ç(`ñ¾£œdÈ’`™ºcßéé^ÿ i¸”Û\ý¡æhÔB«aq¸}ãÀÆ:ÜWƒ|FÛÿ BŒÇÀeaŸ-sÊ€:úW½ÜÝÜ<%$µ†%CóDªÀí%IÈÏʤ…ôäñÞŒ÷‘a0“ôŽÚë¤nŸoW÷0«e¶y'Å»aΗ2r’# Û°A^ý9ÉQÔõ=ù5¬£Öü.(Þ’M$~V«=éSÄFN½®©ÔWô»ÿ þHžkR‹ìÏ+µµžöê;khÚI¤m¨‹Ôš–âÖçJ¾_Z•’6a”Èô> ÕÉaÕ<%®£2n bQŠå\tÈõUÿ ø»þ‹k15‚ÃuCL$ݹp P1=Oøýs¯^u éEJ”–éêŸê½5ýzy›jÛ³á›Ûkÿ ÚOcn±ÛÏîW;boºz{ãžüVÆ¡a£a5½äÎÂks¸J@?1è¿{$ä‘=k”øsÖ^nŒ¦)ÝåXÃíùN1ØõÚOJë–xF÷h¸ Œ"Ž?x䜚ü³ì¨c*Fœ¯i;7~ñí׫Ðó¥Ë»3Ãü púw ‰°<Á%»ñž ÿ P+Û^ ¾Ye£ŽCÄŒ„/>˜>•á¶Ìm~&&À>M[hÈÈÿ [Ž•íd…RO@3^Ç(ʽ*¶ÖQZyßþ
1Vº}Ñç?¼O4Rh6R€ª£í¡ûÙ
a‚3ß·Õ
ü=mRÍ/µ9¤‚0ÑC¼Iè:cŽsÛ¾™x£ÆÐ¬ªÍöˢ샒W$•€Å{¨ÀPG
ÀÀàŸZìÍ1RÉ0´ðxEË9+Éÿ ^rEÕ—±Š„70l¼áË@û.' ¼¹Žz€N3úUÉ<3á×*?²¬‚ä†"Ùc=p íÛ'¡ª1ñ"økJ†HÒ'»Ÿ+
oÏN¬Ã9 dÙãÜדÏâÍ~æc+j·Jzâ7(£ðW]•æ™?nê´º6åwéåç÷N•ZŠíž›¬|?Ðõ?Ñ-E…®³ÇV$~X¯/…õ x‘LˆÑÜÚÈ7¦pzãÜüë½ðÄ^õtÝYËÍ7ÉÖÕ8ÏUe# #€r=sU¾/é’E§jRC4mxNÝ´9†íuá»›V‘
ZI€×cr1Ÿpzsøf»¨åV‹ìû`qËLÊIã?\~¼³áËC©êhªOîO»‘ÃmçÛçút×¢x“Z}?Üê#b-¤X7õÄò gž zzbº3œm*qvs·M=íúéw}¿&Úª°^Ö×µÏ(ø‡â†Öµƒenñý†×åQáYûœ÷ÇLœôÎNk¡ð‡¼/µ¸n0æÉ0¬ƒ‚üîÉÆvŒw®Sáö”š¯‹-üÕVŠØÙ[$`(9cqƒÔ_@BëqûÙ`Ýæ0;79È?w<ó |ÙÜkßÌ1±Ëã¿ìÒ»ðlìï«ÓnªèèrP´NÏš&ŽéöÙ¸÷æ°~-_O'‰`°!RÚÚÝ%]Ø%þbß1'¿ÿ XÕáOöÎŒ·‹¬+Åæ*ÛÛ™0¤ƒOÍÔ`u¯¦ÂaèÐÃÓ«‹¨Ô¥µœ¿¯ÉyÅÙ.oÔôŸ Úx&(STðݽ¦õ] ’ÒNóÁäÈùr3í·žÚ[™ƒ¼veÈ÷ÞIõÎGlqÎ=M|«gsªxÅI6
]Z·Îªä,¨zŒŽÄ~#ØŠúFñiÉqc©éÐD>S딑 GñŽ1éÐ^+
Ëi;Ô„µVÕú»i¯ÈÒ-ZÍ]òܘ®ì`bÛÙ¥_/y(@÷qÐúg Ô÷W0.Ø›
6Ò© r>QƒŒ0+Èîzb¨É+I0TbNñ"$~)ÕÒ6Þ‹{0VÆ27œWWñcÄcX×íôûyKZéðªc'iQ¿¯LaWŠŸS\·Š“źʸ…ôÙÂí|öÀÇåV|!¤ÂGâÛ[[’ï
3OrÙËPY¹=Î1õ5öåTžÑè Ú64/üö?Zëžk}¬¶éàoá¾á}3“ü]8Éæ¿´n²Žš_6¾pœ)2?úWÓÚ¥¾¨iWúdŽq{*ª1rXŒd…m»‰äcô¯–dâ•ã‘Jº¬§¨#¨®§,df«8ÉÅßN¾hˆ;îÓ=7áùpën®É 6ûJžO2^œÐò JÖø¥²ã›Ò6Ü·‰!wbÍ‚¬O©»õ¬ÿ ƒP=Ä:â¤-&ÙŽ
`È9 r9íϧzë> XÅ7ƒ5X–krÑ¢L7€ìw}ÑŸNHëŒüþ:2†á¼+u·á÷N/Û'Ðç~ߘô«ëh!ónRéeQ´6QÛÿ èEwëÅÒ|¸Yqó1uêyùzð8 ƒŠù¦Ò;¹ä6öi<'ü³„[ÃZhu½ ùÍ¡g‚>r¯×ŠîÌx}bñ2“k꣧oø~›hTèóËWò4|ki"xßQ˜Ï6øÀLnß‚0 ¹Æ{±–¶Öe#¨27È@^Ìß.1N¾œyç€õ†ñeé·Õã†çQ°€=Ì©ºB€Ø8<‚ÃSõ®ùcc>×Ú .Fr:žÝGæ=kÁâ,^!Fž
¬,àµ}%¶«îõ¹†"r²ƒGœüYÕd?aÑÃY®49PyU ÷þ!žxÅm|/‚ãNð˜¼PcûTÒ,¹/Ý=FkÏ|u¨¶«âë…{¤m¢]Û¾ïP>®XãÞ½iÓÁ¾
‰'¬–6ß¼(„ï— í!úÙäzôë^–:œ¨å|,_¿&š×]uÓѵÛô4’j”bž§x‘Æ©ã›á,‚[Ô
ÎÞ= ŒËæ ÀùYÁ?ŽïÚ¼?ÁªxºÕÛ,°1¸‘¿ÝäãØ¯v…@¤åq½ºã œàûââ·z8Xýˆþz~—û»™âµj=Ž
â~ãáh@'h¼F#·Üp?ŸëQü-løvépx»cŸø…lxâÃûG·‰¶ø”L£©%y?¦úõÆü-Õ¶¥y`Òl7>q’2üA?•F}c‡jB:¸Jÿ +§¹¿¸Q÷°ív=VÑìu[Qml%R7a×IèTõéŽx¬
?†š7
1†îã-ˆã’L¡lŽ0OÓ=ÅuˆpÇ•¼3ÛùÒ¶W/!|’wŽw^qÔ×ÏaóM8Q¨ãÑ?ëï0IEhÄa¸X•`a
?!ÐñùQ!Rä žqŽžÝO`I0ÿ J“y|ñ!Îã@99>þ8–+éáu…!ù—ä
ʰ<÷6’I®z
ÅS„¾)Zþ_Öýµ×ËPåOwø÷þ*üïænÖùmØÝûþ¹=>¦½öî×Jh]¼ç&@§nTŒ6ITÀõ^Fxð7Å3!Ö·aÛ$þÿ ¹ã5îIo:ȪmËY[’8ÇӾlj*òû¢¥xõ¾¼ú•åk+\ð¯ HÚoŽl•Ûk,¯ ç²²cõÅ{²Z\
´ìQ åpzŽ3Ôð}ÿ Jð¯XO¡øÎé€hÙ¥ûLdŒ`““ù6Gá^ÃáÝ^Ë[Ñb¾YåŒÊ»dŽ4†2§,;ÿ CQÄ´¾°¨c–±”mºV{«ßÕýÄW\ÖŸ‘çŸ,çMRÆí“l-ƒn~ë©ÉÈê Ü?#Ž•¹ðãSÒ¥ÐWNíà½;ãž)™ÎSÈ9cóLj뵿ūiÍk¨ió¶X‚7÷ƒ€yãnyÏŽëÞ Öt`×À×V's$È9Ú:ä{wÆEk€«†Çàc—â$éÎ.éí~Ýëk}ÅAÆpörÑ¢‡Šl¡ÑüSs‹¨‰IÄóÀ×wñ&eºðf™pŒÆ9gŽTø£lñëÀçŽ NkÊUK0U’p ï^¡ãÈ¥´ø{£ÙHp`’ØåbqÏ©äó^Æ:
Ž' ÊóM«õz+ß×ó5Ÿ»('¹ð¦C„$˜Å¢_ºÈI?»^äã'ñêzž+ë€ñ-½»´}¡Ë*õ?.xÇ^1ŽMyǸ&“—L–îëöâ7…' bqéÎGé]˪â1$o²¸R8Ã`.q€}sÖ¾C98cêÆÞíïóòvÓòùœÕfÔÚéýuèÖ·Ú
Å‚_¤³ÜۺƑß”àרý:׃xPþÅÕî-/üØmnQìïGΊÙRqê=>¢½õnæ·r!—h`+’;ò3È<“Û©éšóŸx*÷V¹¸×tÈiˆßwiÔÿ |cŒñÏ®3ֽ̰‰Ë Qr©ö½®¼ÛoÑÙZÅÑ«O൯ýw8;k›ÿ x†;ˆJa;‘º9÷÷R+¡ñgŽí|Iáë{ôáo2ʲ9 029ÉÏLí\‰¿¸Ÿb˜ "Bv$£ßiê>=ªª©f
’N ëí>¡NXW~5×úíø\‰»½Ï^ø(—wÖú¥¤2íŽÞXæÁ$°eÈ888^nÝë²ñÝÔ^ ÖÚ9Q~Ëå7ï
DC¶ÑµƒsËÇè9®Wáþƒ6‡£´·°2\Ý:ÈÑ?(#¨'$õèGJ¥ñW\ÿ ‰E¶—¸™g˜ÌÀ¹;Pv ú±ÎNs·ëŸ’–"Ž/:té+ûË]öJöÓM»ëø˜*‘•^Uý—êd|‰åñMæÔÝ‹23å™6æHùÛ‚ëüñ^…ñ1¢oêûÑEØ.õ7*ÅHtÎp{g<·Á«+¸c¿¿pÓ¾Æby=8É_ÄsÆk¬ñB\jÞÔì••Ë[9Píb‹Bヅ =93§ð§LšÛáÖšÆæXÌÞdÛP.0\ãïÛ0?™úJ¸™Ë
”•œº+=<µI£¦í¯õêt¬d‹T¬P=ËFêT>ÍØØ@Ï9<÷AQÌ×»Õ¡xùk",JÎæù±Éç$œŽŸZWH®¯"·UÌQ ’ÙÈ]ÅXg<ã
ߨg3-Üqe€0¢¨*Œ$܃
’Sû 8㎼_/e'+Ï–-èÓ¶¶Õíß[·ÙÙ½îì—¼sk%§µxä‰â-pÒeÆCrú
ôσžû=”šÅô(QW‚Õd\ƒæ. \àö¹¯F½°³½0M>‘gr÷q+œ¶NïºHO— ¤ ܥݔn·J|ÆP6Kµc=Isó}Ò çGš)a=—#vK›åoK§ßóÙ¤¶¿õú…ÄRÚ[ËsöÙ¼Ë•Ë ópw®qœŒ·Ø
ùÇâ‹ý‡ãKèS&ÞvûDAù‘É9ŒîqÅ}
$SnIV[]Ñ´Ó}ØÜ¾A Ü|½kÅþÓ|EMuR¼.I¼¶däò‚ÃkÆ}ðy¹vciUœZ…Õõ»z¾÷¿n¦*j-É/àœHã\y5 Û ß™ó0—äŸnzôã#Ô¯,†¥ÚeÔ÷ÜÅ´„“'c…<íÝ€<·SŠ¥k§Ã¢éÆÆÙna‚8–=«Êª[Ÿ™°pNî02z“ÔÙ–K8.È’Þî(vƒ2®@ äÈûãçžxäÇf¯ˆu¹yUÕîýWšÙ|›ëÒ%Q^í[æ|éo5ZY•^{96ˆY‚§v*x>âº_|U¹Ö´©tûMÒÂ9PÇ#«£#€ éÉñ‘ƒÍz/‰´-į¹°dd,Б›p03ƒœ{ç9=+
Ûᧇ¬¦[‡‚ê婺¸#±ß=³ý¿•Õµjñ½HÙh›Û[§ÚýÊöô÷{˜?ô÷·Ô.u©–_%còcAÀ˜’
}0x9Î>žñÇáÍ9,ahï¦Ì2òÓ ñÛAäry$V²Nð
]=$Ž
‚#Ù‚1ƒƒødõMax‡ÂÖ^!±KkÛ‘
«“Çó²FN8+ëÎ{Ò¼oí§[«ÕMRoËeç×[_m/¦¦k.kôgŽxsSÓ´ý`êzªÜÜKo‰cPC9ÎY‰#§^üý9¹âïÞx£Ë·Ú`±‰‹¤;³–=ÏaôÕAð‚÷kêÁNBéÎælcõö®£Fð†ô2Ò¬]ßÂK$ÓÜ®•”/ÊHàã$ä¸÷ëf¹Oµúâ“”’²øè´µþöjçNü÷üÌ¿ xNïFÒd»¼·h®îT9ŽAµÖ>qÁçÔœtïÒ»\ȶÎîcÞäîó3¶@#ÉIÎ ÔñW.<´’¥–ÑÑ€ÕšA‚ ;†qÓë‚2q
ÒÂó$# Çí‡
!Ë}Õ9ÈÎÑÉã=;ŒÇÎuñ+ÉûÏ¥öíeÙ+$úíÜ娯'+êZH4ƒq¶FV‹gïŒ208ÆÌ)íб>M|÷âÍã¾"iì‹¥£Jd´™OÝç;sÈúr+ÜäˆË)DŒ¥šF°*3Õ”d{zÔwºQ¿·UžÉf†~>I+ŒqÔ`ð3œ“Ü×f]œTÁÔn4“ƒø’Ýßõ_«*5šzGCÊ,þ+ê1ò÷O¶¸cœºb2yÇ;cùÕ£ñh¬›áÑŠr¤ÝäNBk¥—á—†gxšX/쑘hŸ*Tçn =ûã¦2|(ð¿e·ºÖ$
ýìŸ!'åΰyîî+×öœ=Y:²¦ÓÞ×iü’—ü
-BK™£˜›âÆ¡&véðõ-ûÉY¹=Onj¹ø¯¯yf4·±T Pó`çœ7={×mÃ/¢˜ZÚòK…G½¥b„’G AãÜœ*í¯Ã¿ IoæI¦NU8‘RwÈã;·€ Û×ëÒ”1Y
•£E»ÿ Oyto¢<£Áö·šï,䉧ûA¼sû»Nò}¹üE{ÜÖªò1’õÞr0â}ÎØ#>à/8ïéÎ~—áÍ#ñÎlí§³2f'h”?C÷YËdð:qëõÓ·‚ïeÄ©
ÔÈØÜRL+žAÎ3¼g=åšó³Œt3
ÑQ¦ùRÙßE®¼±w_;þhš’Sirÿ ^ˆã¼iੇ|RòO„m°J/“$·l“ ÇÓ¿ÿ [ÑŠÆ“„†Õø>cFÆ6Ø1ƒ– àz7Ldòxäüwá‹ÝAXùO•Úý’é®ähm •NÀ±ÌTÈç
ƒ‘I$pGž:‚ÄbêW¢®œ´|¦nÍ>¶ÖÏ¢§ÎÜ¢ºö¹•%ÄqL^öÛKpNA<ã¡ …î==ª¸óffËF‡yÌcÉ ©ç$ð=ñÏYþÊ’Ú]—¥‚¬‚eDïÎH>Ÿ_ÌTP™a‰ch['çÆÜò7a‡?w°Ïn§âÎ5”’¨¹uÚÛ|´ÓÓc§{O—ü1•ªxsÃZ…ÊÏy¡Ã3¸Ë2Èé» ‘ƒÎ äžÜðA§cáOéúÛ4ý5-fŒï„ù¬ûô.Ç Üsž•Ò¾•wo<¶Ÿ"¬¡º|£
î2sÇ¡éE²ÉFѱrU°dÜ6œ¨ mc†Îxë׺Þ'0²¡Rr„{j¾í·è›µ÷)º·å–‹î2|I®Y¼ºÍË·–ÃÆàã£'óÆxƒOÆÞ&>\lóÌxP Xc¸ì Sþ5§qà/ê>#žÞW¸if$\3 ® ûÄ“ùŽÕê¾ð<Ó‹H¶óÏ" å·( á‘€:ã†8Ï=+ꨬUA×ÃËÚT’ÑÞöù¥¢]{»ms¥F0\ÑÕ—ô}&ÛB´ƒOŽÚ+›xíÄÀ1
,v± žIëíZ0ǧ™3í2®0ทp9öÝÔž)ÓZËoq/Ú“‘L ²ŒmùŽï‘Ó9§[Û#Ä‘\ÞB¬Çs [;à à«g‚2ôòªœÝV§»·¯/[uó½õÛï¾
/šÍ}öüÿ «=x»HŸÂÞ.™ ÌQùŸh´‘#a$‚'¡u<Š›Æ>2>+ƒLSiöwµFó1!eg`£åœ ÷ëÛö}Á¿ÛVÙêv $¬ƒ|,s÷z€ð΃¨x÷ÅD\ÜŒÞmåÔ„ ˆ o| :{ÇÓ¶–òÁn!´0Ål€, ƒ ( ÛŒŒc¶rsšæ,4‹MÛOH!@¢ ÇŽ„`å²9ÝÃw;AÍt0®¤¡…¯ØÄ.Àìí´ƒ‘ßñ5Í,Óëu-ÈÔc¢KÃÓ£òÖ̺U.õL¯0…%2È—"~x
‚[`có±nHàŽyàö™¥keˆìŒÛFç{(Ø©†`Jã#Žwg<“:ÚÉ;M
^\yhûX‡vB·÷zrF?§BÊÔ/s<ÐÈB)Û± ·ÍÔwç5Âã:så§e{mѤï«Òíh—]Wm4âí¿ùþW4bC3¶ª¾Ùr$pw`àädzt!yŠI„hÂîàM)!edŒm'æ>Ç?wzºKìcŒ´¯Ìq6fp$)ãw¡éUl`µ»ARAˆÝÕgr:äŒgƒéé[Ôö±”iYs5Ýï«ÙG—K=þF’æMG«óÿ `ŠKɦuOQ!ÕåŒ/ÎGÞ`@ËqÕzdõâ«Ê/Ö(ƒK´%ŽbMüåÜŸö—>¤óŒŒV‘°„I¢Yž#™¥ùÏÊ@8
œgqöö5ª4vד[¬(q cò¨À!FGaÁõõ¯?§†¥ÏU½í¿WªZ$úyú½Žz×§Éþ?>Ã×È•6°{™™ŽÙ.$`ÎUœ…çè ' ¤r$1Ø(y7 ðV<ž:È ÁÎMw¾Â'Øb§øxb7gãО½óÉÊë²,i„Fȹ£§8ãä½k¹¥¦ê/ç{ïê驪2œ/«ü?¯Ô›ìñÜ$þeýœRIåŒg9Ác’zrrNO bÚi¢
ѺË/$,“ª¯Ýä;Œ× ´<ÛÑn³IvŸb™¥ nm–ÄŸ—nÝÀãŽ3ëÍG,.öó³˜Ù£¹uÊÌrŠ[<±!@Æ:c9ÅZh
ì’M5ÄìÌ-‚¼ëÉùqŽGì9¬á ;¨A-ž—évþÖ–^ON·Ô”ŸEý}ú×PO&e[]ÒG¸˜Ûp ƒÃà/Ë·8ûÀ€1ž@¿ÚB*²¼ñì8@p™8Q“žÆH'8«I-%¸‚
F»“åó6°Uù|¶Ú¸ã ò^Äw¥ŠÖK–1ÜÝK,Žddlí²0PÀü“×ükG…¯U«·¶–´w¶ŽÍ¾©yÞú[Zös•¯Á[™6°
¨¼ÉVæq·,#
ìãï‘×8îry®A››¨,ãc66»Ë´ã'æÉù?t}¢æH--Òá"›|ˆ¬[í 7¶ö#¸9«––‹$,+Ëqœ\Êøc€yê^ݸÄa°«™B-9%«×®‹V´w~vÜTéꢷþ¼ˆ%·¹• ’[xç•÷2gØS?6åÀÚ õ9É#š@÷bT¸º²C*3Bá¤òÎA9 =úU§Ó"2Ãlá0iÝIc‚2Î@%öç94ùô»'»HÄ¥Ô¾@à Tp£šíx:úÊ:5eºßMý×wµ›Ó_+šº3Ýyvÿ "ºÇ<ÂI>Õ1G·Ë«È«É# àÈÇ øp Jv·šæDûE¿›†Ë’NFr2qŸ½ÇAÜšu•´éí#Ħ8£2”Ú2Ã/€[ÎTr;qŠz*ý’Îþ(≠;¡TÆâ›;ºÿ àçœk‘Þ8¾Uª¾íé{^×IZéwÓkXÉûÑZo¯_øo×È¡¬ â–ÞR§2„‚Àœü½ùç® SVa†Âüª¼±D‘ŒísŸàä|ä2 æ[‹z”¯s{wn„ÆmáóCO+†GO8Ïeçåº`¯^¼ðG5f{Xžä,k‰<á y™¥voÆ éÛõëI=œ1‹éíÔÀÑ)R#;AÂncäŽ:tÏ#¶TkB.0Œ-ÖÞZÛgumß}fÎJÉ+#2êÔP£žùÈÅi¢%œ3P*Yƒò‚A쓎2r:ƒÐúñiRUQq‰H9!”={~¼“JŽV¥»×²m.ÛߺiYl¾òk˜gL³·rT•
’…wHÁ6ä`–Î3ùÌ4Øe³†&òL‘•%clyîAÂäà0 žüç$[3uŘpNOÀÉ=† cï{rYK
ååä~FÁ
•a»"Lär1Ó¯2Äõæ<™C•.fÕ»è¥~½-¿g½Â4¡{[ør¨¶·Žõäx¥’l®qpwÇ»8ärF \cޏܯÓ-g‚yciÏÀ¾rÎwèØÈ#o°Á9ã5¢šfÔxÞæfGusÏÌJÿ µ×œ/LtãÅT7²¶w,l
ɳ;”eúà·¨çîŒsÜgTÃS¦^ '~‹®›¯+k÷ZÖd©Æ*Ó[Ü«%Œk0ŽXƒ”$k#Ȩ P2bv‘ƒŸáÇ™ÆÕb)m$É*8óLE‘8'–ÜN Úyàúô+{uº±I'wvš4fÜr íì½=úuú
sFlìV$‘ö†HÑù€$§ õ=½¸«Ž]
:Ž+•¦ïmRþ½l´îÊT#nkiøÿ _ðÆT¶7Ò½ºÒ£Î¸d\ã8=yãŽÜäR{x]ZâÚé#¸r²#»ÎHÆ6õ ç® ÎFkr;sºÄ.&;só±Ç9êH÷ýSšÕtÐU¢-n Ì| vqœ„{gŒt§S.P‹’މ_[;m¥ÞZýRûÂX{+¥úü¼ú•-àÓ7!„G"“´‹žƒnrYXã¸îp éœ!ÓoPÌtÑ (‰Þ¹é€sÓ#GLçÕšÑnJý¡!‘Tä#“ß?îýp}xÇ‚I¥Õn#·¸–y'qó@r[ Êô÷<ÔWÃÓ¢áN¥4Ô’I&ݼ¬¬¼ÞºvéÆ
FQV~_ÒüJÖÚt¥¦Xá3BÄP^%ÈÎW-×c¡ú©¤·Iþèk¥š?–UQåIR[’O 5x\ÉhÆI¶K4«2ùªŠŒ<¼óœçØ`u«‚Í.VHä€ Ëgfx''9ÆI#±®Z8
sISºku¢ßÞ]úk»Jößl¡B.Ü»ÿ MWe
°·Ž%šêɆ¼»Âù³´œ O¿cÐÓÄh©"ÛÜÏ.ÖV’3nüÄmnq[ŒòznšÖ>J¬òˆæ…qýØP Ž:ä7^0yëWšÍ_79äoaÈ °#q0{ää×mœy”R{vÒÞ¶ÚÏe¥“ÚÆÐ¥Ì®—õýjR •íç›Ìb„+JyÜØÙ•Ç]¿Ôd þËOL²”9-Œ—õÃc'æÝלçÚ²ìejP“½
âù°¨†ðqòädЃÉäÖÜj÷PÇp“ÍšŠå«‘î
<iWNsmª»¶vÓz5»ûì:Rs\Ðßôû×uÔÿÙ