linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* early microcode on amd is broken when no initramfs provided
@ 2013-07-09 16:36 Johannes Hirte
  2013-07-09 18:47 ` Borislav Petkov
  2013-07-10  7:30 ` Borislav Petkov
  0 siblings, 2 replies; 10+ messages in thread
From: Johannes Hirte @ 2013-07-09 16:36 UTC (permalink / raw)
  To: Jacob Shin; +Cc: linux-kernel

When CONFIG_MICROCODE_EARLY is enabled on AMD but no initramfs is provided in the
bootmanager (grub2), the system hangs here:

[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 3.10.0-06005-gd2b4a64 (puck@acer) (gcc version 4.8.1 (Gentoo 4.8.1 p1.0, pie-0.5.6) ) #69 SMP PREEMPT Tue Jul 9 18:22:09 CEST 2013
[    0.000000] Command line: BOOT_IMAGE=/vmlinuz-3.10.0-06005-gd2b4a64 root=/dev/sda1 ro pcie_aspm=force radeon.dpm=1
[    0.000000] e820: BIOS-provided physical RAM map:
[    0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009f7ff] usable
[    0.000000] BIOS-e820: [mem 0x000000000009f800-0x000000000009ffff] reserved
[    0.000000] BIOS-e820: [mem 0x00000000000e0000-0x00000000000fffff] reserved
[    0.000000] BIOS-e820: [mem 0x0000000000100000-0x00000000de555fff] usable
[    0.000000] BIOS-e820: [mem 0x00000000de556000-0x00000000de755fff] ACPI NVS
[    0.000000] BIOS-e820: [mem 0x00000000de756000-0x00000000dfd3efff] usable
[    0.000000] BIOS-e820: [mem 0x00000000dfd3f000-0x00000000dfdbefff] reserved
[    0.000000] BIOS-e820: [mem 0x00000000dfdbf000-0x00000000dfebefff] ACPI NVS
[    0.000000] BIOS-e820: [mem 0x00000000dfebf000-0x00000000dfef6fff] ACPI data
[    0.000000] BIOS-e820: [mem 0x00000000dfef7000-0x00000000dfefffff] usable
[    0.000000] BIOS-e820: [mem 0x00000000dff00000-0x00000000dfffffff] reserved
[    0.000000] BIOS-e820: [mem 0x00000000f7000000-0x00000000f7ffffff] reserved
[    0.000000] BIOS-e820: [mem 0x00000000fec00000-0x00000000fec00fff] reserved
[    0.000000] BIOS-e820: [mem 0x00000000fec10000-0x00000000fec10fff] reserved
[    0.000000] BIOS-e820: [mem 0x00000000fee00000-0x00000000fee00fff] reserved
[    0.000000] BIOS-e820: [mem 0x00000000ffe00000-0x00000000ffffffff] reserved
[    0.000000] BIOS-e820: [mem 0x0000000100000000-0x000000011fffffff] usable
[    0.000000] NX (Execute Disable) protection: active
[    0.000000] SMBIOS 2.6 present.
[    0.000000] DMI: Packard Bell EasyNote TK81/SJV52_DN, BIOS V2.14 07/27/2011
[    0.000000] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[    0.000000] e820: remove [mem 0x000a0000-0x000fffff] usable
[    0.000000] No AGP bridge found
[    0.000000] e820: last_pfn = 0x120000 max_arch_pfn = 0x400000000
[    0.000000] MTRR default type: uncachable
[    0.000000] MTRR fixed ranges enabled:
[    0.000000]   00000-9FFFF write-back
[    0.000000]   A0000-BFFFF uncachable
[    0.000000]   C0000-FFFFF write-through
[    0.000000] MTRR variable ranges enabled:                                                                                                                                                    
[    0.000000]   0 base 000000000000 mask FFFF80000000 write-back                                                                                                                               
[    0.000000]   1 base 000080000000 mask FFFFC0000000 write-back
[    0.000000]   2 base 0000C0000000 mask FFFFE0000000 write-back
[    0.000000]   3 base 0000FFE00000 mask FFFFFFE00000 write-protect
[    0.000000]   4 base 000100000000 mask FFFFE0000000 write-back
[    0.000000]   5 disabled
[    0.000000]   6 disabled
[    0.000000]   7 disabled
[    0.000000] TOM2: 0000000120000000 aka 4608M
[    0.000000] x86 PAT enabled: cpu 0, old 0x7040600070406, new 0x7010600070106
[    0.000000] e820: last_pfn = 0xdff00 max_arch_pfn = 0x400000000
[    0.000000] Scanning 1 areas for low memory corruption
[    0.000000] Base memory trampoline at [ffff880000098000] 98000 size 28672
[    0.000000] Using GB pages for direct mapping
[    0.000000] init_memory_mapping: [mem 0x00000000-0x000fffff]
[    0.000000]  [mem 0x00000000-0x000fffff] page 4k
[    0.000000] BRK [0x01c08000, 0x01c08fff] PGTABLE
[    0.000000] BRK [0x01c09000, 0x01c09fff] PGTABLE
[    0.000000] BRK [0x01c0a000, 0x01c0afff] PGTABLE
[    0.000000] init_memory_mapping: [mem 0x11fe00000-0x11fffffff]
[    0.000000]  [mem 0x11fe00000-0x11fffffff] page 2M
[    0.000000] BRK [0x01c0b000, 0x01c0bfff] PGTABLE
[    0.000000] init_memory_mapping: [mem 0x11c000000-0x11fdfffff]
[    0.000000]  [mem 0x11c000000-0x11fdfffff] page 2M
[    0.000000] init_memory_mapping: [mem 0x100000000-0x11bffffff]
[    0.000000]  [mem 0x100000000-0x11bffffff] page 2M
[    0.000000] init_memory_mapping: [mem 0x00100000-0xde555fff]
[    0.000000]  [mem 0x00100000-0x001fffff] page 4k
[    0.000000]  [mem 0x00200000-0x3fffffff] page 2M
[    0.000000]  [mem 0x40000000-0xbfffffff] page 1G
[    0.000000]  [mem 0xc0000000-0xde3fffff] page 2M
[    0.000000]  [mem 0xde400000-0xde555fff] page 4k
[    0.000000] init_memory_mapping: [mem 0xde756000-0xdfd3efff]
[    0.000000]  [mem 0xde756000-0xde7fffff] page 4k
[    0.000000]  [mem 0xde800000-0xdfbfffff] page 2M
[    0.000000]  [mem 0xdfc00000-0xdfd3efff] page 4k
[    0.000000] BRK [0x01c0c000, 0x01c0cfff] PGTABLE
[    0.000000] init_memory_mapping: [mem 0xdfef7000-0xdfefffff]
[    0.000000]  [mem 0xdfef7000-0xdfefffff] page 4k
[    0.000000] ACPI: RSDP 00000000000fe020 00024 (v02 ACRSYS)
[    0.000000] ACPI: XSDT 00000000dfef6120 0005C (v01 ACRSYS ACRPRDCT 00000003      01000013)
[    0.000000] ACPI: FACP 00000000dfef5000 000F4 (v04 ACRSYS ACRPRDCT 00000003 1025 01000013)
[    0.000000] ACPI: DSDT 00000000dfee6000 0B9EF (v01 ACRSYS ACRPRDCT F0000000 1025 01000013)
[    0.000000] ACPI: FACS 00000000dfe99000 00040
[    0.000000] ACPI: HPET 00000000dfef4000 00038 (v01 ACRSYS ACRPRDCT 00000001 1025 01000013)
[    0.000000] ACPI: APIC 00000000dfef3000 00084 (v02 ACRSYS ACRPRDCT 00000001 1025 01000013)
[    0.000000] ACPI: MCFG 00000000dfef2000 0003C (v01 ACRSYS ACRPRDCT 00000001 1025 01000013)
[    0.000000] ACPI: BOOT 00000000dfee5000 00028 (v01 ACRSYS ACRPRDCT 00000001 1025 01000013)
[    0.000000] ACPI: SLIC 00000000dfee4000 00176 (v01 ACRSYS ACRPRDCT 00000001 1025 01000013)
[    0.000000] ACPI: SSDT 00000000dfee3000 00386 (v01 AMD    POWERNOW 00000001 AMD  00000001)
[    0.000000] ACPI: Local APIC address 0xfee00000
[    0.000000] No NUMA configuration found
[    0.000000] Faking a node at [mem 0x0000000000000000-0x000000011fffffff]
[    0.000000] Initmem setup node 0 [mem 0x00000000-0x11fffffff]
[    0.000000]   NODE_DATA [mem 0x11fffa000-0x11fffbfff]
[    0.000000]  [ffffea0000000000-ffffea00047fffff] PMD -> [ffff88011b600000-ffff88011f5fffff] on node 0
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x00001000-0x00ffffff]
[    0.000000]   DMA32    [mem 0x01000000-0xffffffff]
[    0.000000]   Normal   [mem 0x100000000-0x11fffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x00001000-0x0009efff]
[    0.000000]   node   0: [mem 0x00100000-0xde555fff]
[    0.000000]   node   0: [mem 0xde756000-0xdfd3efff]
[    0.000000]   node   0: [mem 0xdfef7000-0xdfefffff]
[    0.000000]   node   0: [mem 0x100000000-0x11fffffff]
[    0.000000] On node 0 totalpages: 1047270
[    0.000000]   DMA zone: 64 pages used for memmap
[    0.000000]   DMA zone: 22 pages reserved
[    0.000000]   DMA zone: 3998 pages, LIFO batch:0
[    0.000000]   DMA32 zone: 14254 pages used for memmap
[    0.000000]   DMA32 zone: 912200 pages, LIFO batch:31
[    0.000000]   Normal zone: 2048 pages used for memmap
[    0.000000]   Normal zone: 131072 pages, LIFO batch:31
[    0.000000] ACPI: PM-Timer IO Port: 0x408
[    0.000000] ACPI: Local APIC address 0xfee00000
[    0.000000] ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
[    0.000000] ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled)
[    0.000000] ACPI: LAPIC (acpi_id[0x02] lapic_id[0x00] disabled)
[    0.000000] ACPI: LAPIC (acpi_id[0x03] lapic_id[0x00] disabled)
[    0.000000] ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1])
[    0.000000] ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1])
[    0.000000] ACPI: LAPIC_NMI (acpi_id[0x02] high edge lint[0x1])
[    0.000000] ACPI: LAPIC_NMI (acpi_id[0x03] high edge lint[0x1])
[    0.000000] ACPI: IOAPIC (id[0x04] address[0xfec00000] gsi_base[0])
[    0.000000] IOAPIC[0]: apic_id 4, version 33, address 0xfec00000, GSI 0-23
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 low level)
[    0.000000] ACPI: IRQ0 used by override.
[    0.000000] ACPI: IRQ2 used by override.
[    0.000000] ACPI: IRQ9 used by override.
[    0.000000] Using ACPI (MADT) for SMP configuration information
[    0.000000] ACPI: HPET id: 0x1002a201 base: 0xfed00000
[    0.000000] smpboot: Allowing 4 CPUs, 2 hotplug CPUs
[    0.000000] nr_irqs_gsi: 40
[    0.000000] PM: Registered nosave memory: [mem 0x0009f000-0x0009ffff]
[    0.000000] PM: Registered nosave memory: [mem 0x000a0000-0x000dffff]
[    0.000000] PM: Registered nosave memory: [mem 0x000e0000-0x000fffff]
[    0.000000] PM: Registered nosave memory: [mem 0xde556000-0xde755fff]
[    0.000000] PM: Registered nosave memory: [mem 0xdfd3f000-0xdfdbefff]
[    0.000000] PM: Registered nosave memory: [mem 0xdfdbf000-0xdfebefff]
[    0.000000] PM: Registered nosave memory: [mem 0xdfebf000-0xdfef6fff]
[    0.000000] PM: Registered nosave memory: [mem 0xdff00000-0xdfffffff]
[    0.000000] PM: Registered nosave memory: [mem 0xe0000000-0xf6ffffff]
[    0.000000] PM: Registered nosave memory: [mem 0xf7000000-0xf7ffffff]
[    0.000000] PM: Registered nosave memory: [mem 0xf8000000-0xfebfffff]
[    0.000000] PM: Registered nosave memory: [mem 0xfec00000-0xfec00fff]
[    0.000000] PM: Registered nosave memory: [mem 0xfec01000-0xfec0ffff]
[    0.000000] PM: Registered nosave memory: [mem 0xfec10000-0xfec10fff]
[    0.000000] PM: Registered nosave memory: [mem 0xfec11000-0xfedfffff]
[    0.000000] PM: Registered nosave memory: [mem 0xfee00000-0xfee00fff]
[    0.000000] PM: Registered nosave memory: [mem 0xfee01000-0xffdfffff]
[    0.000000] PM: Registered nosave memory: [mem 0xffe00000-0xffffffff]
[    0.000000] e820: [mem 0xe0000000-0xf6ffffff] available for PCI devices
[    0.000000] setup_percpu: NR_CPUS:8 nr_cpumask_bits:8 nr_cpu_ids:4 nr_node_ids:1
[    0.000000] PERCPU: Embedded 26 pages/cpu @ffff88011fc00000 s74880 r8192 d23424 u524288
[    0.000000] pcpu-alloc: s74880 r8192 d23424 u524288 alloc=1*2097152
[    0.000000] pcpu-alloc: [0] 0 1 2 3 
[    0.000000] Built 1 zonelists in Node order, mobility grouping on.  Total pages: 1030882
[    0.000000] Policy zone: Normal
[    0.000000] Kernel command line: BOOT_IMAGE=/vmlinuz-3.10.0-06005-gd2b4a64 root=/dev/sda1 ro pcie_aspm=force radeon.dpm=1
[    0.000000] PCIe ASPM is forcibly enabled
[    0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
[    0.000000] Checking aperture...
[    0.000000] No AGP bridge found
[    0.000000] Node 0: aperture @ d4000000 size 32 MB
[    0.000000] Aperture pointing to e820 RAM. Ignoring.
[    0.000000] Your BIOS doesn't leave a aperture memory hole
[    0.000000] Please enable the IOMMU option in the BIOS setup
[    0.000000] This costs you 64 MB of RAM
[    0.000000] Mapping aperture over 65536 KB of RAM @ d4000000
[    0.000000] PM: Registered nosave memory: [mem 0xd4000000-0xd7ffffff]
[    0.000000] Memory: 3979016K/4189080K available (4684K kernel code, 507K rwdata, 2176K rodata, 792K init, 756K bss, 210064K reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000]  Dump stacks of tasks blocking RCU-preempt GP.
[    0.000000]  RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=4.
[    0.000000] NR_IRQS:4352 nr_irqs:712 16
[    0.000000] spurious 8259A interrupt: IRQ7.
[    0.000000] Console: colour VGA+ 80x25
[    0.000000] console [tty0] enabled
[    0.000000] hpet clockevent registered
[    0.000000] tsc: Fast TSC calibration using PIT
[    0.001000] tsc: Detected 2094.751 MHz processor
[    0.000003] Calibrating delay loop (skipped), value calculated using timer frequency.. 4189.50 BogoMIPS (lpj=2094751)
[    0.000298] pid_max: default: 32768 minimum: 301
[    0.000470] Security Framework initialized
[    0.000915] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes)
[    0.002711] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes)
[    0.003617] Mount-cache hash table entries: 256
[    0.003982] Initializing cgroup subsys devices
[    0.004136] Initializing cgroup subsys freezer
[    0.004285] Initializing cgroup subsys blkio
[    0.004451] tseg: 00dff00000
[    0.004454] CPU: Physical Processor ID: 0
[    0.004613] CPU: Processor Core ID: 0
[    0.004761] mce: CPU supports 6 MCE banks
[    0.004914] LVT offset 0 assigned for vector 0xf9
[    0.005061] process: using AMD E400 aware idle routine
[    0.005208] Last level iTLB entries: 4KB 512, 2MB 16, 4MB 8
Last level dTLB entries: 4KB 512, 2MB 128, 4MB 64
tlb_flushall_shift: 4
[    0.005653] Freeing SMP alternatives memory: 12K (ffffffff81b46000 - ffffffff81b49000)
[    0.005807] ACPI: Core revision 20130517
[    0.012354] ACPI: All ACPI Tables successfully acquired
[    0.617782] ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1
[    0.627941] smpboot: CPU0: AMD Athlon(tm) II P320 Dual-Core Processor (fam: 10, model: 06, stepping: 03)
[    0.729753] Performance Events: AMD PMU driver.
[    0.729943] ... version:                0
[    0.730092] ... bit width:              48
[    0.730240] ... generic registers:      4
[    0.730388] ... value mask:             0000ffffffffffff
[    0.730536] ... max period:             00007fffffffffff
[    0.730684] ... fixed-purpose events:   0
[    0.730835] ... event mask:             000000000000000f
[    0.731018] process: System has AMD C1E enabled
[    0.731173] process: Switch to broadcast mode on CPU0
[    0.739310] smpboot: Booting Node   0, Processors  #1
[    0.752552] Brought up 2 CPUs
[    0.752572] process: Switch to broadcast mode on CPU1
[    0.752992] smpboot: Total of 2 processors activated (8379.00 BogoMIPS)
[    0.753731] devtmpfs: initialized
[    0.754198] PM: Registering ACPI NVS region [mem 0xde556000-0xde755fff] (2097152 bytes)
[    0.754387] PM: Registering ACPI NVS region [mem 0xdfdbf000-0xdfebefff] (1048576 bytes)
[    0.754719] xor: measuring software checksum speed
[    0.764221]    prefetch64-sse:  6688.000 MB/sec
[    0.774223]    generic_sse:  6424.000 MB/sec
[    0.774367] xor: using function: prefetch64-sse (6688.000 MB/sec)
[    0.774564] NET: Registered protocol family 16
[    0.775357] node 0 link 0: io port [0, ffffff]
[    0.775361] TOM: 00000000e0000000 aka 3584M
[    0.775513] Fam 10h mmconf [mem 0xf7000000-0xf7ffffff]
[    0.775515] node 0 link 0: mmio [a0000, bffff]
[    0.775518] node 0 link 0: mmio [e0000000, f6ffffff]
[    0.775520] node 0 link 0: mmio [f7000000, f7ffffff] ==> none
[    0.775522] node 0 link 0: mmio [f8000000, ffdfffff]
[    0.775524] TOM2: 0000000120000000 aka 4608M
[    0.775674] bus: [bus 00-1f] on node 0 link 0
[    0.775675] bus: 00 [io  0x0000-0xffff]
[    0.775677] bus: 00 [mem 0x000a0000-0x000bffff]
[    0.775677] bus: 00 [mem 0xe0000000-0xf6ffffff]
[    0.775678] bus: 00 [mem 0xf8000000-0xffffffff]
[    0.775679] bus: 00 [mem 0x120000000-0xfcffffffff]
[    0.775736] ACPI: bus type PCI registered
[    0.776126] PCI: MMCONFIG for domain 0000 [bus 00-0f] at [mem 0xf7000000-0xf7ffffff] (base 0xf7000000)
[    0.776395] PCI: MMCONFIG at [mem 0xf7000000-0xf7ffffff] reserved in E820
[    0.777637] PCI: Using configuration type 1 for base access
[    0.778134] mtrr: your CPUs had inconsistent fixed MTRR settings
[    0.778327] mtrr: your CPUs had inconsistent variable MTRR settings
[    0.778473] mtrr: probably your BIOS does not setup all CPUs.
[    0.778621] mtrr: corrected configuration.
[    0.784751] bio: create slab <bio-0> at 0
[    0.801284] raid6: sse2x1    2601 MB/s
[    0.818261] raid6: sse2x2    3246 MB/s
[    0.835260] raid6: sse2x4    3511 MB/s
[    0.835409] raid6: using algorithm sse2x4 (3511 MB/s)
[    0.835558] raid6: using intx1 recovery algorithm
[    0.835839] ACPI: Added _OSI(Module Device)
[    0.835990] ACPI: Added _OSI(Processor Device)
[    0.836138] ACPI: Added _OSI(3.0 _SCP Extensions)
[    0.836303] ACPI: Added _OSI(Processor Aggregator Device)
[    0.838013] ACPI: EC: Look up EC in DSDT
[    0.839711] ACPI: Executed 1 blocks of module-level executable AML code
[    0.844083] [Firmware Bug]: ACPI: BIOS _OSI(Linux) query ignored

This was copied out of dmesg from a running kernel with CONFIG_MICROCODE_EARLY disabled.

regards,
  Johannes

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: early microcode on amd is broken when no initramfs provided
  2013-07-09 16:36 early microcode on amd is broken when no initramfs provided Johannes Hirte
@ 2013-07-09 18:47 ` Borislav Petkov
       [not found]   ` <CAOPg7FsgstsjEpVVQERr6m0fYcSko0Q8PcDkq5XrRNX=2QVNmg@mail.gmail.com>
  2013-07-10  7:30 ` Borislav Petkov
  1 sibling, 1 reply; 10+ messages in thread
From: Borislav Petkov @ 2013-07-09 18:47 UTC (permalink / raw)
  To: Johannes Hirte; +Cc: Jacob Shin, linux-kernel

On Tue, Jul 09, 2013 at 06:36:01PM +0200, Johannes Hirte wrote:
> When CONFIG_MICROCODE_EARLY is enabled on AMD but no initramfs is provided in the
> bootmanager (grub2), the system hangs here:

I'll take a look soonish if Jacob doesn't beat me to it.

Thanks.

-- 
Regards/Gruss,
    Boris.

Sent from a fat crate under my desk. Formatting is fine.
--

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: early microcode on amd is broken when no initramfs provided
       [not found]   ` <CAOPg7FsgstsjEpVVQERr6m0fYcSko0Q8PcDkq5XrRNX=2QVNmg@mail.gmail.com>
@ 2013-07-10  3:59     ` Borislav Petkov
  0 siblings, 0 replies; 10+ messages in thread
From: Borislav Petkov @ 2013-07-10  3:59 UTC (permalink / raw)
  To: Jacob Shin
  Cc: Johannes Hirte, Jacob Shin, linux-kernel, suravee.suthikulpanit

On Tue, Jul 09, 2013 at 10:53:31PM -0500, Jacob Shin wrote:
> I won't have access to a box for a while, Boris or Suravee, could you
> please try and reproduce it and get the stack trace when you get the
> chance?
>
> So sorry,

No worries, Jacob, I'm on it. Take your time. :)

-- 
Regards/Gruss,
    Boris.

Sent from a fat crate under my desk. Formatting is fine.
--

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: early microcode on amd is broken when no initramfs provided
  2013-07-09 16:36 early microcode on amd is broken when no initramfs provided Johannes Hirte
  2013-07-09 18:47 ` Borislav Petkov
@ 2013-07-10  7:30 ` Borislav Petkov
  2013-07-11 21:05   ` Johannes Hirte
  1 sibling, 1 reply; 10+ messages in thread
From: Borislav Petkov @ 2013-07-10  7:30 UTC (permalink / raw)
  To: Johannes Hirte; +Cc: Jacob Shin, linux-kernel, Jacob Shin

On Tue, Jul 09, 2013 at 06:36:01PM +0200, Johannes Hirte wrote:
> When CONFIG_MICROCODE_EARLY is enabled on AMD but no initramfs is provided in the
> bootmanager (grub2), the system hangs here:

Hmm, I can't reproduce it here.

grub2 entry is:

menuentry 'Debian GNU/Linux, with Linux 3.10.0+' --class debian --class gnu-linux --class gnu --class os {
        load_video
        insmod gzio
        insmod part_msdos
        insmod ext2
        set root='(hd0,msdos1)'
        search --no-floppy --fs-uuid --set=root adbbd17b-6e04-4458-814f-9a2b75a4d91e
        echo    'Loading Linux 3.10.0+ ...'
        linux   /boot/vmlinuz-3.10.0+ root=/dev/sda1 ro  resume=/dev/sda2 ignore_loglevel
}

Kernel is: v3.10-8587-g496322b

.config settings are:

$ zgrep -E "(INITRD|MICROCODE)" /proc/config.gz
CONFIG_BLK_DEV_INITRD=y
CONFIG_MICROCODE=y
CONFIG_MICROCODE_INTEL=y
CONFIG_MICROCODE_AMD=y
CONFIG_MICROCODE_OLD_INTERFACE=y
CONFIG_MICROCODE_INTEL_LIB=y
CONFIG_MICROCODE_INTEL_EARLY=y
CONFIG_MICROCODE_AMD_EARLY=y
CONFIG_MICROCODE_EARLY=y
# CONFIG_ACPI_INITRD_TABLE_OVERRIDE is not set

Can you send me your .config and your grub entry please?

Thanks.

-- 
Regards/Gruss,
    Boris.

Sent from a fat crate under my desk. Formatting is fine.
--

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: early microcode on amd is broken when no initramfs provided
  2013-07-10  7:30 ` Borislav Petkov
@ 2013-07-11 21:05   ` Johannes Hirte
  2013-07-16 17:00     ` Borislav Petkov
  0 siblings, 1 reply; 10+ messages in thread
From: Johannes Hirte @ 2013-07-11 21:05 UTC (permalink / raw)
  To: Borislav Petkov; +Cc: Jacob Shin, linux-kernel, Jacob Shin

[-- Attachment #1: Type: text/plain, Size: 2095 bytes --]

On Wed, 10 Jul 2013 09:30:49 +0200
Borislav Petkov <bp@alien8.de> wrote:

> On Tue, Jul 09, 2013 at 06:36:01PM +0200, Johannes Hirte wrote:
> > When CONFIG_MICROCODE_EARLY is enabled on AMD but no initramfs is
> > provided in the bootmanager (grub2), the system hangs here:
> 
> Hmm, I can't reproduce it here.
> 
> grub2 entry is:
> 
> menuentry 'Debian GNU/Linux, with Linux 3.10.0+' --class debian
> --class gnu-linux --class gnu --class os { load_video
>         insmod gzio
>         insmod part_msdos
>         insmod ext2
>         set root='(hd0,msdos1)'
>         search --no-floppy --fs-uuid --set=root
> adbbd17b-6e04-4458-814f-9a2b75a4d91e echo    'Loading Linux
> 3.10.0+ ...' linux   /boot/vmlinuz-3.10.0+ root=/dev/sda1 ro
> resume=/dev/sda2 ignore_loglevel }
> 
> Kernel is: v3.10-8587-g496322b
> 
> .config settings are:
> 
> $ zgrep -E "(INITRD|MICROCODE)" /proc/config.gz
> CONFIG_BLK_DEV_INITRD=y
> CONFIG_MICROCODE=y
> CONFIG_MICROCODE_INTEL=y
> CONFIG_MICROCODE_AMD=y
> CONFIG_MICROCODE_OLD_INTERFACE=y
> CONFIG_MICROCODE_INTEL_LIB=y
> CONFIG_MICROCODE_INTEL_EARLY=y
> CONFIG_MICROCODE_AMD_EARLY=y
> CONFIG_MICROCODE_EARLY=y
> # CONFIG_ACPI_INITRD_TABLE_OVERRIDE is not set
> 
> Can you send me your .config and your grub entry please?
> 
> Thanks.
> 

grub entry:

menuentry 'Gentoo GNU/Linux 3.10.0-09080-g19d2f8e' --class gentoo
--class gnu-linux --class gnu --class os $menuentry_id_option
'gnulinux-simple-d044ac73-1dd2-4250-b864-5cb25fd67192' { load_video
insmod gzio insmod part_msdos
        insmod btrfs
        set root='hd0,msdos3'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root
--hint-bios=hd0,msdos3 --hint-efi=hd0,msdos3
--hint-baremetal=ahci0,msdos3  c684c3ff-5bac-4ba8-8f63-c9036c2ad233
else search --no-floppy --fs-uuid --set=root
c684c3ff-5bac-4ba8-8f63-c9036c2ad233 fi echo    'Linux
3.10.0-09080-g19d2f8e wird geladen …'
linux   /vmlinuz-3.10.0-09080-g19d2f8e root=/dev/sda1 ro
pcie_aspm=force radeon.dpm=1 }

config is attached

[-- Attachment #2: config.bz2 --]
[-- Type: application/x-bzip, Size: 17430 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: early microcode on amd is broken when no initramfs provided
  2013-07-11 21:05   ` Johannes Hirte
@ 2013-07-16 17:00     ` Borislav Petkov
  2013-07-20 19:01       ` Torsten Kaiser
  0 siblings, 1 reply; 10+ messages in thread
From: Borislav Petkov @ 2013-07-16 17:00 UTC (permalink / raw)
  To: Johannes Hirte; +Cc: Jacob Shin, linux-kernel, Jacob Shin

On Thu, Jul 11, 2013 at 11:05:25PM +0200, Johannes Hirte wrote:
> config is attached

Ok, I can reproduce the hang with your config but even with:

$ grep MICROCODE .config
# CONFIG_MICROCODE is not set
# CONFIG_MICROCODE_INTEL_EARLY is not set
# CONFIG_MICROCODE_AMD_EARLY is not set

which means, it cannot be microcode-related.

And I'd bet if you wait a minute (yep, it should be exactly 60 seconds)
the boot would probably continue. And if so, this is that 60 sec delay
where the kernel tries to find firmware.

Hmm...

-- 
Regards/Gruss,
    Boris.

Sent from a fat crate under my desk. Formatting is fine.
--

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: early microcode on amd is broken when no initramfs provided
  2013-07-16 17:00     ` Borislav Petkov
@ 2013-07-20 19:01       ` Torsten Kaiser
  2013-07-20 22:59         ` Borislav Petkov
  0 siblings, 1 reply; 10+ messages in thread
From: Torsten Kaiser @ 2013-07-20 19:01 UTC (permalink / raw)
  To: Borislav Petkov; +Cc: Johannes Hirte, Jacob Shin, linux-kernel, Jacob Shin

On Tue, Jul 16, 2013 at 7:00 PM, Borislav Petkov <bp@alien8.de> wrote:
> On Thu, Jul 11, 2013 at 11:05:25PM +0200, Johannes Hirte wrote:
>> config is attached
>
> Ok, I can reproduce the hang with your config but even with:
>
> $ grep MICROCODE .config
> # CONFIG_MICROCODE is not set
> # CONFIG_MICROCODE_INTEL_EARLY is not set
> # CONFIG_MICROCODE_AMD_EARLY is not set
>
> which means, it cannot be microcode-related.
>
> And I'd bet if you wait a minute (yep, it should be exactly 60 seconds)
> the boot would probably continue. And if so, this is that 60 sec delay
> where the kernel tries to find firmware.
>
> Hmm...

I have the same problem: Booting 3.11-rc1 hangs after the line:
ACPI: Executed 3 blocks of module-level executable AML code

I bisected it down to the early microcode changes:
757885e94a22bcc82beb9b1445c95218cb20ceab (the new early loading
implementation) and 6b3389ac21b5e557b957f1497d0ff22bf733e8c3 (small
fixup) completely fail to boot (No output beyond "Booting kernel") ,
from 275bbe2e299f1820ec8faa443d689469a9e6ecc5 ("Make
find_ucode_in_initrd() __init") I'm seeing this hang.

Just turning CONFIG_MICROCODE_EARLY off solves the problem: The system
now sucessfully boots 3.11-rc1.

Trying to debug this I found the following hack to also solve the boot problem:
Removing the following two lines from collect_cpu_info_amd_early()
from arch/x86/kernel/microcode_amd_early.c:
       c->microcode = rev;
        c->x86 = ((eax >> 8) & 0xf) + ((eax >> 20) & 0xff);

But I can't make sense out of that. And if I try to trace who updates
->x86 it get even more confusing.
Normaly only cpu_detect() seems to update cpuinfo_x86.x86 but now it
seems to fight with collect_cpu_info_amd_early().
On my system this happens:
(Output is always address of the struct cpuinfo_x86 -> value that gets
written into it)

Very early boot:
cpu_detect ffffffff81c8ba40 -> 16

BSP == CPU0 calls load_ucode_ap() via cpu_init():
collect_cpu_info_amd_early ffff880337c10fc0 -> 16
(That is the place I patched out to get the system to boot)

BSP == CPU0 via identify_boot_cpu():
cpu_detect ffffffff81c8ba40 -> 16

BSP == CPU0 stores boot_cpu_data in its per-cpu structure via
smp_store_boot_cpu_info():
smpboot: BSP: store ffffffff81c8ba40 in ffff880337c10fc0

smpboot starts activating the secondary CPUs: Each would in
start_secondary() first call load_ucode_ap() via cpu_init() and then
identidfy_secondary_cpu() via smp_callin():
collect_cpu_info_amd_early ffff880337c50fc0
smpboot: identify_sec_cpu:1/ffff880337c50fc0
cpu_detect ffff880337c50fc0 -> 16

collect_cpu_info_amd_early ffff880337c90fc0
smpboot: identify_sec_cpu:2/ffff880337c90fc0
cpu_detect ffff880337c90fc0 -> 16

collect_cpu_info_amd_early ffff880337cd0fc0
smpboot: identify_sec_cpu:3/ffff880337cd0fc0
cpu_detect ffff880337cd0fc0 -> 16

collect_cpu_info_amd_early ffff880337d10fc0
smpboot: identify_sec_cpu:4/ffff880337d10fc0
cpu_detect ffff880337d10fc0 -> 16

collect_cpu_info_amd_early ffff880337d50fc0
smpboot: identify_sec_cpu:5/ffff880337d50fc0
cpu_detect ffff880337d50fc0 -> 16


It seems the code for updating 'struct cpuinfo_x86 *C' in
collect_cpu_info_amd_early() is useless, because it will be
overwritten first by smp_store_cpu_info() and then again by
identify_secondary_cpu(c) and wrong, because at that point the per-cpu
structure should not be used yet, as smp_store_cpu_info() did not run
yet.
But something else seems to be using the per-cpu structure of the BSP
between its cpu_init() and smp_store_boot_cpu_info().

And its cpu_has_amd_erratum(): It uses cpuinfo_x86.x86 do decide if it
need to fall back to boot_cpu_data, but because
collect_cpu_info_amd_early() has filled that field, but not
.x86_vendor (that is still 0 == X86_VENDOR_INTEL) the erratas are not
applied to the BSP and then something in ACPI gets stuck.

Does this diagnostic make sense / should I send a patch?

Torsten

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: early microcode on amd is broken when no initramfs provided
  2013-07-20 19:01       ` Torsten Kaiser
@ 2013-07-20 22:59         ` Borislav Petkov
  2013-07-21  4:01           ` Torsten Kaiser
  2013-07-21 11:53           ` Johannes Hirte
  0 siblings, 2 replies; 10+ messages in thread
From: Borislav Petkov @ 2013-07-20 22:59 UTC (permalink / raw)
  To: Torsten Kaiser; +Cc: Johannes Hirte, Jacob Shin, linux-kernel, Jacob Shin

On Sat, Jul 20, 2013 at 09:01:33PM +0200, Torsten Kaiser wrote:
> On Tue, Jul 16, 2013 at 7:00 PM, Borislav Petkov <bp@alien8.de> wrote:
> > On Thu, Jul 11, 2013 at 11:05:25PM +0200, Johannes Hirte wrote:
> >> config is attached
> >
> > Ok, I can reproduce the hang with your config but even with:
> >
> > $ grep MICROCODE .config
> > # CONFIG_MICROCODE is not set
> > # CONFIG_MICROCODE_INTEL_EARLY is not set
> > # CONFIG_MICROCODE_AMD_EARLY is not set
> >
> > which means, it cannot be microcode-related.
> >
> > And I'd bet if you wait a minute (yep, it should be exactly 60 seconds)
> > the boot would probably continue. And if so, this is that 60 sec delay
> > where the kernel tries to find firmware.
> >
> > Hmm...
> 
> I have the same problem: Booting 3.11-rc1 hangs after the line:
> ACPI: Executed 3 blocks of module-level executable AML code
> 
> I bisected it down to the early microcode changes:
> 757885e94a22bcc82beb9b1445c95218cb20ceab (the new early loading
> implementation) and 6b3389ac21b5e557b957f1497d0ff22bf733e8c3 (small
> fixup) completely fail to boot (No output beyond "Booting kernel") ,
> from 275bbe2e299f1820ec8faa443d689469a9e6ecc5 ("Make
> find_ucode_in_initrd() __init") I'm seeing this hang.
> 
> Just turning CONFIG_MICROCODE_EARLY off solves the problem: The system
> now sucessfully boots 3.11-rc1.

Ok, I need to be able to reproduce that first - I wasn't that successful
with Johannes' setup.

So, can you please send .config and how you're loading your microcode?
Is it in the initrd or are you doing that later, how? Grub entry please.

Also, is it just plain v3.11-rc1 or with patches ontop?

Also, /proc/cpuinfo please.

Thanks.

-- 
Regards/Gruss,
    Boris.

Sent from a fat crate under my desk. Formatting is fine.
--

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: early microcode on amd is broken when no initramfs provided
  2013-07-20 22:59         ` Borislav Petkov
@ 2013-07-21  4:01           ` Torsten Kaiser
  2013-07-21 11:53           ` Johannes Hirte
  1 sibling, 0 replies; 10+ messages in thread
From: Torsten Kaiser @ 2013-07-21  4:01 UTC (permalink / raw)
  To: Borislav Petkov; +Cc: Johannes Hirte, Jacob Shin, linux-kernel, Jacob Shin

[-- Attachment #1: Type: text/plain, Size: 6181 bytes --]

On Sun, Jul 21, 2013 at 12:59 AM, Borislav Petkov <bp@alien8.de> wrote:
> On Sat, Jul 20, 2013 at 09:01:33PM +0200, Torsten Kaiser wrote:
>> On Tue, Jul 16, 2013 at 7:00 PM, Borislav Petkov <bp@alien8.de> wrote:
>> > On Thu, Jul 11, 2013 at 11:05:25PM +0200, Johannes Hirte wrote:
>> >> config is attached
>> >
>> > Ok, I can reproduce the hang with your config but even with:
>> >
>> > $ grep MICROCODE .config
>> > # CONFIG_MICROCODE is not set
>> > # CONFIG_MICROCODE_INTEL_EARLY is not set
>> > # CONFIG_MICROCODE_AMD_EARLY is not set
>> >
>> > which means, it cannot be microcode-related.
>> >
>> > And I'd bet if you wait a minute (yep, it should be exactly 60 seconds)
>> > the boot would probably continue. And if so, this is that 60 sec delay
>> > where the kernel tries to find firmware.
>> >
>> > Hmm...
>>
>> I have the same problem: Booting 3.11-rc1 hangs after the line:
>> ACPI: Executed 3 blocks of module-level executable AML code
>>
>> I bisected it down to the early microcode changes:
>> 757885e94a22bcc82beb9b1445c95218cb20ceab (the new early loading
>> implementation) and 6b3389ac21b5e557b957f1497d0ff22bf733e8c3 (small
>> fixup) completely fail to boot (No output beyond "Booting kernel") ,
>> from 275bbe2e299f1820ec8faa443d689469a9e6ecc5 ("Make
>> find_ucode_in_initrd() __init") I'm seeing this hang.
>>
>> Just turning CONFIG_MICROCODE_EARLY off solves the problem: The system
>> now sucessfully boots 3.11-rc1.
>
> Ok, I need to be able to reproduce that first - I wasn't that successful
> with Johannes' setup.
>
> So, can you please send .config and how you're loading your microcode?
> Is it in the initrd or are you doing that later, how? Grub entry please.
>
> Also, is it just plain v3.11-rc1 or with patches ontop?
>
> Also, /proc/cpuinfo please.

.config and cpuinfo attached.
Microcode seems not to be loaded at all, for MICROCODE_EARLY I did not
attach the needed file / cpio and the normal update mechanism seems to
not have a newer microcode that what the BIOS is providing.
I'm using a custom initrd, but that can't be used for MICROCODE_EARLY
because its compressed and does not contain a AuthenticAMD.bin. Its
also not containing microcode_amd.bin, because I'm suppling that via
CONFIG_EXTRA_FIRMWARE.
Grub entry:
title 3.11.0-rc1-crypt
root (hd0,0)
kernel (hd0,0)/boot/kernel-3.11.0-rc1 fastboot crypt_root=/dev/md6
video=1280x1024 radeon.dpm=1
initrd (hd0,0)/boot/ramfs-2011.gz
savedefault

I was using plain 3.11-rc1 except the changes I made to debug this.

What I think you need: A system that is fatally affected by AMD
Erratum 400 and an 64bit kernel.

>From my debugging I found the following sequence of events occurs on my system:
The BSP will call load_ucode_ap().
That will call collect_cpu_info_amd_early(), which will fill the
cpuinfo_x86.x86 and cpuinfo_x86.microcode fields of the
cpu_info-per-cpu-structure that has not yet been setup. Because this
code will only be used with MICROCODE_EARLY disabling this options
make my system boot. OTOH this function is called regardless if
AuthenticAMD.bin is available or not, thats why I'm hitting it even
without the special cpio.
Then the BSP will call init_amd() to apply the errata fixes. That uses
cpu_has_amd_erratum(), but that function is not using the cpuinfo_x86
that was supplied to init_amd() (And used for the following
set_cpu_bug() is the erratum was found!), but instead is guessing
itself if it should use the per-cpu data or boot_cpu_data. And it uses
the not yet initialized per-cpu data for that guess. Which normally
works fine, because that will all be zeroed out, but
collect_cpu_info_amd_early() has filled ->x86 and so
cpu_has_amd_erratum() wil use the partly filled per-cpu data instead
of the correct boot_cpu_data. But because collect_cpu_info_amd_early()
did not fill ->x86_vendor that field is still 0 == X86_VENDOR_INTEL
and cpu_has_amd_erratum() will lie that no erratum is present.
So the C1E work around is not applied and as soon as ACPI enables this
the boot hangs.

Something like the following (whitespace mangled by Gmail, if it looks
OK for you, I will send it as a clean patch) fixes
cpu_has_amd_erratum() for me, but I did not look how the early
microcode loading should work if AuthenticAMD.bin is available to
offer a fix the premature accesses to per-cpu cpu_info.

--- 3.11-rc1/arch/x86/kernel/cpu/amd.c.orig     2013-07-21
05:42:42.130346496 +0200
+++ 3.11-rc1/arch/x86/kernel/cpu/amd.c  2013-07-21 05:45:09.420345843 +0200
@@ -512,7 +512,7 @@

 static const int amd_erratum_383[];
 static const int amd_erratum_400[];
-static bool cpu_has_amd_erratum(const int *erratum);
+static bool cpu_has_amd_erratum(struct cpuinfo_x86 *cpu, const int *erratum);

 static void __cpuinit init_amd(struct cpuinfo_x86 *c)
 {
@@ -729,11 +729,11 @@
                value &= ~(1ULL << 24);
                wrmsrl_safe(MSR_AMD64_BU_CFG2, value);

-               if (cpu_has_amd_erratum(amd_erratum_383))
+               if (cpu_has_amd_erratum(c, amd_erratum_383))
                        set_cpu_bug(c, X86_BUG_AMD_TLB_MMATCH);
        }

-       if (cpu_has_amd_erratum(amd_erratum_400))
+       if (cpu_has_amd_erratum(c, amd_erratum_400))
                set_cpu_bug(c, X86_BUG_AMD_APIC_C1E);

        rdmsr_safe(MSR_AMD64_PATCH_LEVEL, &c->microcode, &dummy);
@@ -879,22 +879,14 @@
 static const int amd_erratum_383[] =
        AMD_OSVW_ERRATUM(3, AMD_MODEL_RANGE(0x10, 0, 0, 0xff, 0xf));

-static bool cpu_has_amd_erratum(const int *erratum)
+static bool cpu_has_amd_erratum(struct cpuinfo_x86 *cpu, const int *erratum)
 {
-       struct cpuinfo_x86 *cpu = __this_cpu_ptr(&cpu_info);
        int osvw_id = *erratum++;
        u32 range;
        u32 ms;

-       /*
-        * If called early enough that current_cpu_data hasn't been initialized
-        * yet, fall back to boot_cpu_data.
-        */
-       if (cpu->x86 == 0)
-               cpu = &boot_cpu_data;
-
-       if (cpu->x86_vendor != X86_VENDOR_AMD)
-               return false;
+       /* Should never be called on Non-AMD-CPUs */
+       BUG_ON(cpu->x86_vendor != X86_VENDOR_AMD);

        if (osvw_id >= 0 && osvw_id < 65536 &&
            cpu_has(cpu, X86_FEATURE_OSVW)) {

[-- Attachment #2: config.txt --]
[-- Type: text/plain, Size: 22492 bytes --]

\x1f‹\b\0üNëQ\0\x03\x01ÅW:¨\x1f‹\b\0\0\0\0\0\x02\x03”<Ëv㶒û|…Ž3‹{\x17¶ÝŽ§ïÌñ\x02\x02!	\x11I 	P¶¼áqluâ\x13?úZrnúï§
à\x03\0\x01*“EÚª*¼
…z¡À\x1f\x7føqFÞ\x0f¯Ïw‡Çû»§§ï³ßv/»·»Ãîaöõñi÷¿³LÌJ¡g,ãú' Î\x1f_Þÿúø×çËÙ§ŸÎÎ~:ýðv\x7f6[ïÞ^vO3úúòõñ·whýøúòÏ?PQ.ø²¹¼˜s}õ½ûyóù\x12@Þïá\a/•®jª¹(›ŒQ‘±j@ŠZËZ7\vQ\x15D_ìž¾^^|€©|¸¼8éhHEWÐra\x7f^Ü½ÝÿŽÓýxo&·Ç¿aøæa÷ÕBú–¹ ëŒÉFÕRŠÊ™°Ò„®uE(^[ãVdÚœhVÒ­\x16‘ÆEQ\x0f?JƲ&+HS\x10‰Ýj\x16àÔÒ sV.õjÀ-YÉ*N^[®\bâLjy½Œ\x02›ŠÁä8ÌQ
^jV©1ÙêšñåÊ™²aaA¶vq’6‹Œ\x0eØêZ±¢¹¡«%ɲ†äKQq½*ÆýR’óy\x05k„íÈÉ6è\x7fETCem&x\x13Ã\x11º\x02Îò\x12˜ÎoY¢5©é•˜³`G\x14Óµl$«,UÅHÀè\x0eÅŠ9üZðJ醮êr “dÉâdv>|Ϊ’\x18±•B)>ÏÃ)«ZIVf)ô5)u³ªa\x14Y€\x1c¬`Î1
Ã\’^[JÏ\a’[\x01œ\x02Ùøtî4«áКƣ¹\x18)Uš\x17ÀÞ\f\x0e\x1eðš—Ë\x14eÆPœ\r$‡“\x12\x1eçF\x15Ò‡$ª•³†.r²TW'\x1f¾¢Âù°¿ûs÷ðáíáqæ\x03ö!àá¯\0p\x1f\x02>\a¿ÿ\x15ü>;\r\x01g'ñÕÖF¨œÃÒk\x14\x10I\x05ºçãÓã¯\x1fŸ_\x1fÞŸvûÿU—¤`(ÊŒ(öñ§@±ðêKs-*Gfæ5Ï3à<k؍& \f²J\x03”揳¥ÑÀO³ýîðþmP£°=ºaå\x06¦Š³(@§~:\x02±j¨($\aÑ:9n:Œ…5š)={ÜÏ^^\x0fس£õH¾\x01Å\0¢ëµs\x11æœE\x1a›³¶\x06Égy³¼å28…-f\x0e˜ó8*¿uµ™‹¹¹Mµ\x10)\x04Ú”~úά܉‡x3·)\x02œadåî,ÇMÄt\x17‘\x0eAÀHƒ
\x10J£4]üãåõe÷Ï^ŠÔ5qø«¶jÃ%\x1d\x01ð_ªó\x01\x0eê†ß4Å—šÕ,\x0e\x1d5Y¬H™\x19\x05ÕOÝh’”\0ô†„T\x19Ⱥêä\x18þžíß\x7fÝ\x7fß\x1fvσ\x1cGÈC3\a\a&Ðê.J­Äõ\x18ƒÊ\x15ô\x17R8î\x04ƒ»@AÁé\x15XÌÓpJ’J1¿\x05E7@‰\x1aÚ€ÆÕt•‰P'º$\x19Ñ\x11slŽö\x06ù
Ê2b\x19±\x03¶a¥V“H«'ŽT‚d”(=MVp8ÄÙ/u”®\x10¨ñ2뎘­ÓÏ»·}l÷4§ë\x06l\rl‚ÓU)šÕ-ªš\x02´ˆ#7\0\x04\vÊEÆiDzl+\x1eÈš….ê<O5q\x14\0X\x14лÊp¼ê%\x0f,öG}·ÿcv€uÌî^\x1efûÃÝa?»»¿\x7f}\x7f9<¾ü\x16,Èx	”ŠºÔVBúÙlx¥\x0342.zÀQÚÌÖ\x0f´‘%ÌU†ÒM\x19(l t¸\x18bšÍ§\x01©‰Z£Ë¨|u®ºŽú©\x18Ô\rBÝ\x19\x18æT´ž©ÈÆV\fL\x18­Ý^$À
©\x11\x1cY\b@щÍóÈÆ#®Và<}Q‰–\vR‚?\x7fuy1\x06‚ÿK\x16Wg—~w-ŽÁªt²OðÏ:\x11\x19xÑ®¬1>|tç\x10[
:ǝŽôÍ×m8ñ=„˜ý\x1aÀ¹@ã¾\0\x15Å\x17úê쳧'kˆm¬±\a×6³Ç3ån•5„\x01s’“’Ž2ô\x04\x15Ž¬-ý\v\x0e¥»jº¬D-Ut¹0>]›ˆ\0\x0f\x16\x15‹\x1d5°B !©qƒú¦5N.¶§h|JG8%ϼß%Óöwß•e\x03º\x16fªÑ™‚\x0e] ó	’HA?e±÷£‹yŽgbcÜ¥*s#KøM
èͪntvº\x1e²Î{\x19\x04"›p\r\0™p\v\0ã»\x04†T¤{¹ˆï\x0fí=s4_&\x02ŠŒ\x16\x1an8 %¬\x13‚f\x15øH5ÏÎ.=g\x01\x1aÂQ¢Lš˜ÅœŒ ¤J®«FB\0‰\x11÷€e7 Ó\x1dµÕuîn\x1avßÚ¿˜÷\x04`µ-œYvÆ3˜²\x02\x11õüfç(°|\x01Š§ò„>˜sLû‚‡nŒ‹ãïÔš9!(“ÂÅ*¾,I¾p$ÉØ\x1a\x17`l¬\vP«‚9\f#ÜñY%åÍ—šWkï,˜84‹Ê·Ý\f\x18±é]\x06£ÇÛ¤‹Ü½}}}{¾{¹ßÍØŸ»\x170s\x04\f\x1eEC\a6|Pð~\x17ýÈm`‡HPØͦ0ñ]d\x1e›Â¶nŒmóR	*¯ç¶#O\x03AäA4x(ëøÑÎÉ<&ÔЗ'L¹H‘µ‘y¥9É}³%\x16<[_ÃMa)\x1c‰ï MYp»ÁžcoÃÁHw¿Ô…l`!Ì›€\x19Ĥ½@žA~PÍQ4ë©	±Å‚SŽÌ…PÒk\x11¨~Ü"ô
Á·\0wÁ\v	Œ¹­˜®«\x12Œæ\vîæÎÌ0\x1cŽ\v¦žÐ`„QT\x18ñZ(ô\x17E€zŠ7°Pð\x10›EL©˜E\x18ÄJˆu€ÄÔ\x17ÑÚ•,\oç§*`õŠå2šÅB$z’­Ÿ\x1fô\±%¨–2³¹¼–µ\r‘<6\x03É{Yvq«k\x10eF¬Ý\fp\x05¿\x1d^[ÐÊŒ\x18*áã^[äœQ”Ä\x186Òqwx«vyY]È\x18ß=aõÓi^[+ùŠ,\x18Ä\x03\x12Ó{a\x0f­XÚü¬É\x04\x05\x14m;›9Hà2Q'r_­¶@7†e]R"B+òÌ¡-U1Š\x04\rœiír9\x05·“\x14 ×n´‘ϵçvÙÓ3vï\x13Ò]bdÉÚ„^„SvŠb¡^[ˆ€µã¼\x14"«s8>(öhßзq”\x14,^[ÌQ›Itbƒ–\x17-ž˜ôyŸM¢bóá×»ýîaö‡µ\x18ßÞ^¿>>Ù ¨WYHÖf(¢ÚÚ‹ôñ˜P±b¸Æ¨n&s^.\x1c£\a1TVÖÕ\x17Æ\x12+47W§Áú]]jA6Š\aÑ"1\x13ÙÒÔ%âCn¶M{¤Ûs+cq/¹m®*Ú§Áò|’’Ç,ŽÂ{‚Ð\x15/™ë¦zÞ\x7fçµÎÕ2
̹g\x14\a'W³eÅõv\x14åÉ»·Ã#ÞÃÌô÷o;×\r@{iœ>’m ¼`\x1eO\bxTå@\x13]-á7G(„Z\x1cë£\09=F£IŏÐ\0_ã\x14\x1d^eB\r\x14~¬qµ\x1eÙî\x02\x02…^[\bÄæSÝ*‘ÃÜ”It»\x0fa\x12tr\r:`\x18#–{ÍŠxkD\x18\x13\x14wœ–ǸRçº:ºIª>¶ÑkR\x15d’½lÁã+Àtäåçɶæ\x04´ª«O\x19Š™ºÿ}‡iu×uåÂÆŠ¥\x10^”ÖÁ3°øxU\x14\vK[\x12ºøâeóM²Õ\x02\x1dWØ‚q˜‰\x14mÛåÕÉý×\x7fŸü\x10¤J:ÃîFÂÄÏ\x12\x12Už]=\x0fq©½ä’àÑ¡Ž\x02žø)L‹G§¦ÅOá¢m¯AC°Tc\x17é·6\x1aÛN\f´…¸.}§x\x01+¾eÕXó¼½Þïöû×·Ù\x014É¾}ÝÝ\x1dÞߌ\x16ê›w\x17V±Ó\x15Þ%\x15Ò¸\x04îè\b\x06[\rv\x10oé"ñžG‰z2or\x19õÀ‘ O¼@à&ªm³ <¯Ý+8+E¢\0—~QámO{¡ê¹ý[ðÄ6\Aľ¬ã×-¥hæBh^[\x1e\x0e:‡\x15‰ë™býÙ#”ŠÆõ FÂç	\x15©Eœ3}\x028šôêøVaB¡½µy­K—$?Kã,ÛÑ3¥Bný=E\x17GB´`“Qª.|´VÁ\x1dcëA\x06•\x03˜¼Þ\x04Â\x02
¼¨\v\x13\x1c.ÀÎä['Ɉ\x04F³R\x17ª
¢FŒ
0ÝÂr\x16Í1b— )v]ŽûÕ‚I‘\x14|$R»®¦dº\x0f1]\x18+j¬$\0gÉYzæF\x01KP§ ~lMÁ\x10g“\x1c\x10[‹ˆ\x1d§k.¼»bC؆Ržt‘^[8z1©5—àêê2LÞ©BÇm‹Á\x16±4 (ý|e\a߈\x1c|kXO´ã–*!®&òÀ\0.\x1d.: §\x15*V	Ðq&Å6¯Äš•æp¢\x16L鉂Ž´\x10€¬@¤›ø’Ñ\x011RU+‘gñ\x1e\x7f	dp°zŸ×1MÁ)\b0\x1cUß™iÉ\x19\x0e\x14Þ\x1c\a0\x06\x15F\r,\bê»a¤Ê·ÇF°T±q\x02„ც‚Ã.kž\x05\x01¡\m!’ϲªÑa¥‘­\x05>Š†Ø\vXÜ,ç\x18¡y1\afÕ#+±a›1E ±^[V’H™GnÝ…\x10otKgf p\x18\x05㨇š5êó\x06£QçØæ9[‚|·–§Ù¼fW§\x7f=ìî\x1eNÿ†Xwb¨až\x05)k\x12Ä9\x0eÛ\x0fœ@ÅÜ\x04ˆÃ^[]Á\x1f1Ô\x06þ‡™§g\x03…I;6vB²ÑbÉôÊ‹ÜþÆÓ\vb*\x0fÜ\x18+æ5³âÁ\x15%Uæ6÷cÞÖ\7\x18КNâFÖ2g%´ÌëX\x14ˆ2f
_z¯Å]Z\x0en…ÔÖ!FE{á„zÈ\x18𿌣L\x13¾ô€tÖ²">hâ¬tîXƒ“\x1c\x02rsý©Ái©•WÓæ&°†xA\x15\x13n³Ù\x7f{\x0fUW\x17§ÿºŒ_}<°É-&2Ôtê%†\x05±»&[å_\x17FÈ
\b–¹Šï½­½i'G´\x06o(¶E9ƒh^[=%çæ¡\x12¥ö³¸·óÚ‘ŒÛ\x16é™\aã05s\bCðþ£ªeB(¬‰\x03ç\vK\x14ŵã\x05\x15ºrN\x16þj\x14)!P»eIx{t{µv– 3¬Ã,%z\r#b^[0ëqV^[‚tŒš\rƒüŒ\x04\x12À–d"íÞ+\x10­(\x12âÓ˜Cd“€ž\x0fEmî\x143ã 4E\x15ËÔß6g§§AyÃùϧñ|Ùmóé4‰‚~N£#\9úÛ8Q«
+\x14ü2£^[F\x13’HÔʤ\x7fc\x1a\b\x0e?Gÿ\b\x16Zi°^[g­¹\x18n$\x19:PæŽzª½É\x04ÇÚ·Ú/Œ'Â\v¡M¦â7¢´0Q<ªÜ<e~[)ôõm—>¯ÿٽ͞ï^î~Û=ï^\x0e&ø$TòÙë7Ì…y\x01h›FoÑPÏ\x19wC‹¦Â\fp\x11c\x14\x0eèçÔ$7V}\x11Ï3:x°í×~HíS1j£—c=Ù;„4\r¡iÜ\x1cT\x18«¶‰…%ÐÚËÊ#pAÊÑŠ3°f©Nø9\rz裯(çl\F–KÐ+$~:\r-º\f…\x7f\x19hà´V\x10\x047™Ê&˜b+\x06\x1a[£!6¬ªxÆ’lÈA[`-h³\x05Ïõê4\|2{g×D9^l¦â\x18\x10¯Ñ\x1d¤]\aØ\v\x02GdBDÔ|B6V,K#[&\x15àx‰	2"\x19\a}¾²í*±f‹·Ý¿ßw/÷ßgûû»'¯øÊÄè\x15ûâ‡Í\b±Û\x10/Åf¨7
‘X •\0Ö\0ërÏÔ÷\x04‚ãm\x1a¾0(\x13µBñFxn\x15ø‹\x7f¿	¦EL}M"Ñ0j Àk„ieGW\08´ú¦ð\x7fªó`µÑ~ÿ\x1f‹ûÛ‹:º˜©E\x18±Â÷'(Z_CÑš=¼=þisÇ‘\x04 4o.’n„¤&\x17†SH\x1cL{N,‰\x1fšº\x18øw\x1e:m†‡¥¸nÖŸ“ãc|lå••
Ü©Mp±ãû<’±Lif3L\x15/Ez]\x17¶Ø¬ðµáÑþ÷»·ÝCÌ>úƒä|žØÒ°~³ƒ5\x05È#—è2V\x1coÐ&Ú›\x1dÏ!0pýO\x0fY°²\x1e¹…øDC\rtTÔ0\\uY\x01@²\x11\vŠÝóëÛ÷Ù7ã<ìïþ\x041ò\x18Áÿ^[<¹xÓùû¾cÝì\x1f Ôg»ÃýOÿt.Û(÷+\x7flÎÁ‡\x15EX]h(E\x01š^ùÕM båüü\x14ÖjJˆb^\x1aå\fã(/`C qY‹\0p&*\x1atT‘Ô“K d1j\x04°	‹ç\x18\x1d5M\x14U6#"OkÅÃH\x15°Þ\x02<fNÎ\x19¯ULN¢u9Ã7\x10\x1e­Òuì|¬t{¥â\x11s±Iv$+žÆ\x11ų8[ O?퉰înÓúÆ ¿¿î\x0f³û×—ÃÛëÓ\x13\bû ,;Q·\x0fÌüÊ\x18TKåÜ_\x04æLâžs^[\x03àpѪGè:ãbt’Ø_»û÷ÃݯO;óîpfjÚ\x0eûÙÇ\x19{~\x7fºë´S—\x14áå¢ÐX"1*‚ˆ¡Œd\fˆ6œÄêJÉ}Ý…Y7ŒŸz{Šä+F²¸þjûT´âRRGDÔ:ݨàî\x15\aŽì×ípòé¼½\x13ð’8\x06Ž]‡&ææÓy*5¤GlÂœw}yaƒ¹ÂOèµOI–k¶U# Y¨©š‘bÍÆWwX¥€\x12%¤_\v<š\x10À ø[ƒ¢WªÍÇ\x1aÁ(w‡ÿ¼¾ý¶}0R}R®Ý®ìoP²d9\°âU|x5oHb6~á\x16ºâ/óÂ1\0¡“\x13€T=\a\x06äœn½]A”ÍÃ%¼\x0eÓ\x16œ\x12\b$8U‰\x19a‘“p\x19‹µÔ°^[^ÊÚ‚b£õ\x16Ðe\x15—Ö>·OG\x06c'ûºÆÜŽTÑZo‹\x03·‚(ų \x03YƳ18G.ù\x14r‰ç\x0f„þf‚¦Ñu™*SÂe™©Åã—Jf‰2sL°Š5gjbàæ	¾6då^¬ãež’\x01$ÜD\x034Ûk×\x13`¢@+P˜É¶YJï©qH1ÝÁœ1\x7fã\x11W"µBs¨‚)RفýnêL¦N\x18¶?—Ñê£\x1e9çñ\x04EO@ë£$×Lék‘ˆd{ª\x15üu„B\x1d'ÙÎs2M²aK¢¦I°Z>̽©ryl D$ÐSl\x19YMSð\x1cT±àj"›_Á0ã‚š®‡«“·ÝË뉻éEö³â¾¨ÈÍeê´á{YÌÓ\x16$Q=ÞÑÈÕÖäJ@‰\x162^ò\r¤}¹§ÛÞ\x02ÇNàˆÂ\x11U^[\x17¼¾íÐ.£r\0/*ñÙƒ¡}kÚ\x06“4BÙ÷[\x13xû~s‚ \x17ŽÉ+ñeDYš:Ö8´AÆzüp‘ãdeŒ*|Áè!qO¬’š\x1dKàç\x1at­MÙºh2J¥¿¨\x0e\x03Æ#ŽPT'š€¦Ê¹f	&\x11ÌP\x04r\x11öÙcVŸÎ?%P\x1cB®8fxÈ\x19ÇÃF›+\x1f\b	ã\x04ª,R\x13’29WEÊÔê\x15O5Ò‹1?ÇBî‚{yH Ûb”c' ñ_9\x0eTø\x1aáf;yŠíK{äž9Ä7&ØØC8ôüëãËîaÖ¾æ\x1d`ðnÍyyŽ¢/-:23 Plü
³^[þp÷öÛîàå^[¼¶šTK¦û"©#+ìɍ_¶Ø&fÜQ\x1d›xG§S*xDš)*ÿæ\x1cWùôìV\x13,oI0'c\x13å“d9¨îi\x02OyF\bŽO¥\\x1cí¤\tZ|’…¥0‡ìor\x11}¦ôôÈ@rlÔÑÛØ)Z*\v¥ŽöH¥ZéÊwø=é‡\x10ÿþ÷‰3§!nÇr\x01½•,±DK4—‹I<Ík¥“rÒÒˆÂ\x04ÂÓ4e9ßj¦ŽRÙäËQ*ó\x1dcT\x13â7\x10…Ö>B%ëI|`Y#\x04lcžêN\x13©#½0ZNãÕtû\x15Q«ã|K[”dz\x7f¸„\x18k9-wí—š&IŽNµ ô\bþÈöÛL;\x06ƒSTå"åeö$BM\x1f#[\x04>EÑ&A&IÖúèyþR\vM&)¦\x15_KÃH^\x1c¡ ÇŽ|à<F\ḃ¼ŽQ˜\fÏ\x11ª
Ÿ”M‘ôšw‚\x04ìá$AýéÜy} Ñ;	\x7fc%ðÕùÏ—\x01tÎ5Öp¹naˆñDÙGúòÙâð,Ç:láSm\x107ݲd‰ÆSˆô€ä¦\b6Äš2\0ËF7\x11µQ#»ÇåÿüÀqñtEL„|‘
$<\x14Œ\x06X.{\x17׃·vt\x15‡{êØET²\r›£X­ó\x10\x11'ï\x1c\x15†·J	dm'7\x1a-ÍãÎÍE<ýh¦Q.s–è°µ÷|\føÈ¢;·e¼®Š\‡ R%xMR\\x03Ä0eWLÐê¦r™¨{\x12\x1fH$“¸L”öèxù\~ž\x18a^ñlÉR\x0fÖMFP\x11ïK99)›Ï§çg_¢ýeÀr\x16\x0f$òœž'8p“z\x19˜ÇÓB7ç?LJ r\x1e¿W[‰Ô´8c\f×óóE2'lJôâË¥±ûÀ¬Ä—áJà‡Õ¼÷œ°=ļȌ¿§”¬Ü¨k®i<q·Qø¥'­âþ»½VñJŸ;h{Sâ­©¹j–*–\b®ÜKœja¾R䦘o‚K\x1eØÙ¦ºiü\x0fjÌ¿¸?ä¢ùÅ­CÆV\x10J]·n“\x7f	4;ìö‡àá26\0"õM¦\x15)*\x12\8:/gR\x1frÊâéÜy¢|\ftÄM%cÏ]®9~\x16ÐýŽC\ai¼âþkf2	î“3\x03ò¿/Ô‚¸óä‰.–(¤g^^$7 óÍ¿"U²Þ5D¯žå\x02¿tyM*ü\x06¤š¦ÇÚÞôÍyOFY…%âÔ~\x15S”µ:6\r›C–GéÒ\x05=‘}¸Frœl6Ÿ¦E¦Æ•\x06Ÿ^[ŠØ£\x16B;®\a\x10ómR¿°¢GU\x14?‹4ÑÝÿ1veMnÛHø¯¨ò”TmÖ<Äë!\x0f\x10\x0f‰\x16AÒ\x04%qüÂRf&ë©Ìáš\x19çø÷‹\x06(‰¤ÐÀ¤Ê±…þˆ^[\x06Ð\a ¨ð;^V*êÄ¿æ\x18pV·×fsRÌþééáùíýõþ±ÿöþ“¢Æ4e^[]}‹4aʦêFiœ;¼õŠË‡ÙÝ=’£Ð\x03Râ\x0e9\x17ZÕ{e¶Í\x11Ã}`\x1eQð†<S=§§5\x1céVc®yJ\x03Û\x18~´Ñ¬\x13\x10Œ\x1fÇ{ºrYŒm¿\x17¶)Xarÿ×Ãíý"9«s\üˆ>Ü\x0eÉ‹jþz¾“î|äA\x19´ò7¿ýôéí÷‡çOß^Þ¿?þ¸x0å\x1c¢¥u6ñ‡*Sz
ž0&¾’Ë„\x14ÕØÕ\x01ï\x15QP–7TØÄÏÜ\x1af\aá×aü¦~†æåà”bì~ŠO—3â·Ÿ^w÷/ÏŸšÀ²ú×ÇÛÿò\x06,NiûÀ¶ú\x1f\x7fÝÍ\x12]«\x7f{’ÈãÓݯ?n_îî?==ܾ¾À¿zž\x06´ŸÔ%‚\x0e×à\0ö‡×§¿¯÷£•snŒtÈ";\x17\x11ˆ`>KÝ8\x1d Ý7È«4»a#›c“‰/ä”ÇJ/F  !\\x0e'à½.\x13#qÖo»\x13“krC\rǐ++‰ËŠmÕ"QÍE`~¸R)0•\x13c\fþó¼Ú¥2ˆÊÈü\x0fÖãX\x19¤¬\aÍû©“\f•ßŒL]Ã\x13\x19ôÌ\x18KxKòÚuº\x0e\x05Çõ—\x1e\x13\x15\x06rœó­^ƒ\x11
2$Ž|K\vÙÑ”j\x011—™¤^´Òׂ\x04\x15ҁ‚"UXf	·6¿…szÜÜÔm¥þ6iVɘ\x17Âï~ð“ ô\b1\x13ŠS\x06åJ?\x16垦Z\0ëB-½!ꎋ“¦¢ :ÆÉ>ÁŽ\x19Â\x0e O[DîιˆSAIÚ\x1alô-l\f=аé\f”J«\x0fo·£¥y¶l*9'`p#á\x16{Ë™\f\rI<Çëú¤®ÔâN²£ô\x06ô\x15Õ2ñŠö„Qä\x10EJÌÉ\0x+É«x‰\x1cW3*¤^u‘1‹\‡--^[;Òr9ˆ!\x1e\x11Ò2.*¶kÀ\x19|sÅø.烺Ï\võé€Ô	‹¸ìA
õ§9+œÈ²\\rÑQ/êÓ0µ\x1cäyzÌjc\a¡\x19\x12è!¢-‘¥æd^[\x1aû®§>‚'ÌöC\a\x19<`\g«É+Z[¡\a¦>:2«1}W0íV*Õîت—‡á>c$Z†Öx–\x17¤mùh÷i\»½LS÷\fÊ\x17œù.%\x15TS~\x14£‹·\x1fß¿¿¼¾wCIáÓÑQOò\vÝÓÑÁ¸;¾Ñ!¸€ë‡§òÃ#\x01‘^[wþ¸3Îé]·TëÚÄ+\x10‘æKP:¾ÿçø¶Èá|ðãI8–\x1cŒ\x05Þ_ÏoÐ\v‹Ç‡çûÅ\x1dgE\x0fßáŸjF$¬½†Ww\x02\x17ŸÇEV¯Éâ$=-î^þ~~|9žžà/¹\x10¸H# TÖŸY{)ˆíiœc\x12r>u„0³ä\x12ua1Ë\a\x16:\x1aÖ³ñ%ËAQntßAòdîž\x10PÓ_C|Ž‘'\fžÖ®17\x19œ8ÜÅà\0aЗ1uý‡ŠK_;?ó¡øó?‹÷ã÷ûÿ,âäW>ö#c„ó†95ºÙ42µE\\x05KrÅ\x10À9W•¢è9óµ²Hä:Kö=¼iõÅNé~\v\0` Ô’™7SA)ªõZ­
&È,†«6vSÆ'1Wôd{šÕS+Qñ\x05˜½ÁÈãÕÍb\x13"\x17ÿ7€\x18a\x1fð3$#:LS_g3í¢C\x01×>“5"ç*v^[-¨Â?ŠpÊŒ\x17\x1ewë•+ñzÐÒ\x04Z•ó\x11LÇ»¿B¤ÄÔÁ38Í]÷Ðwü?±Äñ’65#8•ç\x11uÈQá\x04ÐŽ\x19Am*$™Äúê‘<\x0e´\x15\x18\0àÑE\x0fŠ\f¹DK\x1d€îµÍ¤û\x1dÕ\fgRóƒƒSiÊ\aeL>\x035ˆ&¦\f9šò=Vðñ2=`7ÆgŒfC>côM­[Ç\x04pµ€]Æ6±vJòóG­Y\x1c;Æ™!¢)=ì¢õ\x1e]\x1fœÍd1NA–œ–Ðg%Ra÷ì\;²5MNù©LÆw-ˆüÒx\x0e‡­“v£åÔš\x19š×:&\x0fn0*-Øˆ_\bɹÛT³¶Ø\rõÜ8ä‹ØÑU°Á‰_Ä|èm'´t Òg±žn`ËE­Ë ‰ÝÈûGO·42“Æ9¦˜¨WÖ4´SåiÿÔ,ªlÞ;cª¼\x13\x18K«r¿Û¤\x05Ë+|qÈvifeÅ\x129½0\a\bíDð„Ë‹RŠHÉlc\x19!öi³ªÀÙpÓT£ûW M/Ó\x18$}­«$™¥ÕB‰{Ћ?Y\x16¾-þ~xÿÆ\v|þ•eÙâùøþð×ýâ\x01<Òÿq¼\x1dŸ\x13DI›x^\x12$C\x0f\º\x02¨¼^[bÛw…"+\x0fN \x17\x1cÃòÂY"ýÂk}\x16\x0ey\x03nç-»ýñöþò´\x10þ+G­º\x1c_\x13.\x0fμ[NKÿ°ûSY¹\x0e«ÚŠÊ#†¬\x1cpCe\r\x05l\%1Xy®é4ˆ¦³"ØQ\x04\x10tÓJ\r\rN¡˜û$\x01høxiGJGd\x1aâþ€\x13w…fvìs¢#¶)c×GÊúãÃQ‹iŠÔ@\x12i¢!6-²ñKrËGZK¯C?èp@L\x13\x7f©£3ÏCn·Ît×D÷5ô^[p4Çp@š!3FP¹`äú¾ž®k>Ð;§4\0\œž·¡c›èÒQ\x1c§~\x16~\x11'>uD:%\r?´\x15x¶eÚÆz@^~&®£\x01°0XÚ\x1e\x0eàÇ\a”H\0\x17J1Ö'\0œ9:–£ë~`ŸØ1E\0@§\x03;\x04H@\x12ãD\x16ÛŽeéè^[\r\x11\x1cª5`|¦)žs,?Ô•k>n+¶ÉWš\x0el›<+RMÿaÌK\x10\x0fy¹ªÊkW u^ýúòüø]q-Á^[,ÔÄ_ÎTý\x1c‘³ÌÒO"ÍüÐ9|–ãÿuîcmò&þÇñññ÷ãퟋO‹Çûÿ\x1doÿU9Ž©Ob\x10ú:4<¯âÕ¸>CžNÉõ[ÚÄ\x01«ŒŒ•¤m:µyâ\x04p’†0?N\x05É×R–(Hö,3‘fé2[z>F–Šç\x049LÑá%P}†^	_\x7fšÇÊd"ø©\â_Hâ‰r\x06g%©!L¡ú]ƒöí&/A2Ùç\x10Ü\x01Ó?Ìç\x15\x1d\x13i\x0e¢3FE!œö5m*4WmÇŠ¾(ȍº/¤^Ǭ3²‚lÓ^[,7ÎÐ0_CБ¸æáÙ’\fyÂËvlö\0,õ Ó4]Øn´\üœ=¼Þ\x1føŸ_TO+YÞ¤ /§Î{ òc\x0eS×\x1d»H¢ n\x04\V㚈賈ÂÄØ¥j>ÕTœÇ\x1f\x03¾ŠN$x^U?ï|ÙqAð+¦\x06\x04\x1a‘±º†}›\x12:Wà„´ÁÆÿdSªùZ"›jW&MµÊ§¦9c„ð™‚QÁùì>]‘x;³\x0e\x1aa@/F†4œ¨@óÁ\0Õaõ\x15U‡Q@Ðá§Û
1—\x17Šü\x1a¥/ 
oz\rÿ\aÒñí\x0e©”A\x1d\0Ó'.\vŠE:iæºÑr\x11€
Úå±íÊ[Ï\x1e‚\x05O\x19dÒÔŽD¤\x1eà’‡·÷ׇß\x7f¼ßß-\x18?™Ü~[×Ûo\x0fï÷·\x10¢Aµ\r\x0eºÞüð\x17†©]1OQ\x16¢Îr•×\x10f\x1dñ\x18:…Û®ý\x11”ãö¾ÝûÊwRp\x10Y¦s#bpšTMïƈ\x12Ã\bC\x12R·ˆÿÕ1¬hÓª4¢h‚,Í\x13`ªI:¦@S*Ü]IL’\x14sa8ÊF²\bs³9\x0erÔ\x14WtiBúnM‰±s†Ë0#,g1²C¢kìòub\x1e¤\x04}x\x1dÀ\x05SÚ\x19Q\x1diL˜MmB\yé\x1f™BÌåÙ3é35Ž²îÜ8†q\f)+ccátš\x16\x1fAUñ&7¶šÞ Nϲ”\x14¥±6%iYŠ¼)aû<AŽE#TµUg\x04NQñù48žJËõ,
‘ªˆ/WO2×\x18°\lÓ‰‡ŽËKÈÛ,ÚJi±\x11Ú~4¹?Ý Úlãâ\x13ãÚaiúňÉ5Û÷\x05„Üßeæ:PfÆ´b\x1e\x1aa;cEÛt³kÓ̌؛gá!ÿŠq¸,IrÄgu]ãe³\x15âs¼ÞÜHuv©V˜ç\vžrR‹QH\x03¤\r-·ƒÏÀn	J^[¸\x10JO\b—·A'\x13¡\x7feŽR\v0AhqÎ7/‚’‡ë\”\x0eó\f%žvP\x1c\x10Ó0èð.ËãºØ1”<°\x02”.Ý”\x13¼[Y›Ú\x16r\x19\À‹jk[¶7Pr{œœ€
lÞ®\bfÁ!¿ß²0Š<e`•º\x1e\x1d\x1aø\x0fˆÎ'œ¥M\x12\x13\b ÑNÎ\x0e,Í-Õ¹Bä°«\x0fÄÙz¾ó_èÕÕ\aBWH}Çé@ì[äôÌŠ¼VFÈÜœUâvlu¶o#wÇïӨ͠ì\x18“vdU\r)[rHÇn\a ­\x06\x0fc;6MlÚ"´=K•èL\x13ùŸÉI\x02Ò„g».\fí Ã\bQo\a!¹¦ÆI,\x03¸¨(}šR5¡Œ\x11\x02]å
JB#ß²¯ÓaÁ\x06^ש)‘’².|ÇR´¤„õ\x11Z×\x04Xµ«ëd\x1a³ t\x15ø¦LrÖ\x0f‡1E\x13ÙnÅæ#@Š¼§žï:ãÈ<¹t\x02Çš¦­Òb›—3\CùDßuÓÔ´fUé„a8MÞÆŽ\x1dÍ2…º}%»f>¯D»Ðqm«¿š‰Â\x17%)h®èÍ/œƒ\x1f\x0e¤¼¦pÙ׳;{¼ø€”×^[L`\x11ŠÀyÚ4\x04=s\x03d_øʝïPL£\x16\x14\x10ô¡%L\\f‚µ\x0f\x12ý\x14\x11&„:ºòÍ6ðcÏêz9[F¡ÌrF½%¢àü5±\x1dÕÌ–“HT}”—XÑ¡ª‘’\x12\2\x1a\x12®,÷HBÙ­ãµ\rÞæÀru·ÐC¡\fKƏ©'wýO“4Ò$\x13\x17B¨‰šÐn¼-NAß"85Úâ\x14pÿ¨R[%M\x11ÙÁh\rŸRNÝ6O>ŒÃPó¬ým1i/ÿ=\x1fÿ!\x15»Ô&ç	7r#\vGѐ«zž™m!V(K\x17KG_'VML¹¬;j\x03¤d\x13ï\x1e§\x14Ñ®ñ\x1d(O×Zt\x02 Y­\x11÷Ѡ썜€\x0f\x0e¦:•\x1fŠCžå\x18m\x19ù\x1eFs£¥‡©¸	v Þø½%nmÕ´NgYÓõé,-\võ‰Ý:žŽêÛš/ë/'¹N¶¨¦\rÜY\x02|¯NâÿrÝ®^[\añ\x1eQ<Œâ¡ßxÈ7»r[V‡rN\x1a¬l'}:\x18Ï*ӕس™è¿
¢´kS’æÜq a‹•3U˜\x7f3–\fI\x1až&8qä wt\x03•i©	N\r\x1c—h¾\rÃ4Ŷ\v^§ÝlÃàI\x176~áHE¯t‰\f›—m7‡1ö”¦é\x10
\x1d†\µÅ‡ù“½´Êy\x16.ã\x0f\x0f`üýóµ¯ð_\x16ï/\x1c}¿xÿvB)δ\aìùv|ÏÅ\f¼\x12Å»Öó÷\x1fï¨MI^Ö»™ÏežÐg\x19„³*Repb	ç
0e}š\x7f+£"n±øg\x12D	„\x03Ÿƒäáãíþõ\x11¢dµØÞfõ\x05\vo–J;Zez_32–0gTÆ\x0f\x7fiÙw¿Ù–³Ôcn~\vüp^ùÏÕ\r‡ =“îg&¾§äÙ$^[\rÏ•µüäËmz³ª¸p2¸&Ó¸T{^¨¶7"E•/v»R—ð…\x1f6\x10[¾\x11Ʊ}\x03¦Øn\x11³Ò3¤‰¿´}#(\Ú†\x16\x174t\x1d׌q\r\x18¾<\x03׋\f ˜\x19\0uÃY\x1eS¦‡\x16‹z\x7f€×\x1dxà5\x14ÇÚê@\x0eäƀ⻜i@ºv\x06¹^-£·èJDÐfŽ"‰\x1f^[Çžx.épóÌÿ®k\x15‘Ý”¤†0\x04*⠏§Ì4ÏÒUUmU4á¬L\x04¬¨œé)?È´)¢\0ªZ
\x0f#ˆ¢Í¨´j\x17o¶y«±´ÉI¡\x01º.R‘‘\x06´Š©\x17\x05K\r"¾!5ÑÐ÷¬ë:¢Cœ‡cnB‹ fÇ‹3÷\x04¿ƒ[Íî ü˜µ:\0t†dÑøä”ÁLf_’$°\x11%R	XQb#öÏC¾”³\x1f=¢Þ¹–\x16Á\a\x02\r\x17!\x01mÁOý«¶dZ\x10D\x04¢U›:\x1a\x14ÄHáÅ\rH\x1d°k?G\x1aº\bƒD‰6›” \x0f˜\x12\x11SÛÒ•²\x13\x7féª\x11g¡‡LôÓ\x18w…«\x1däœ2žÏN[M⪴õ6Ç×;a!œ\x7fª\x16'Ó̳…q“dwñ³ÏCkéLž»D2ÿÿܦ{†ˆÛЉ\x03ÛÒ@ø)‹ó\x18e8Y óSƒdƳÏ\x1arÐd:X8Ï2ž—Ì\x1cŠÅÍ\x1a²\x01ÏRH\x1ekBS¥E{üíøz¼\x05G”W~$Úv\x14Š}?	Ö#tndø\x11\x19™ˆ‘'À(@Ðá:ã.É\x10\x0f	”¦F\x17eÞEa_·ÓÀÌ\Ы!°×)¬\.Œ[0Ç\x0eònCd‚v\x1c)0\x13™ËëJõµÂÞ–û5â\x0fC8Óî™ú‰7c+£«K\vŽûׇããµrÏP¿\x1fâç“jHæ9ñ=9æ<"\x11ê²UɐÙyú@úÙQ\x10®F(Ë»>%MqÃ\x7f÷“Xð“ü&v;#BÙô;Ò´ì\x12øyL\x1dBçž!ÊƝ¤ë\x06OöÂájf—/Ï¿\x02§ˆÎ\x15êS
õÂ!^[.vº¨QÞ\x18Òi!YÒoØ\x0e\x1f‚©w¿Qâ¨ûç™~FfØ@fq\"/{\x03‚wô*m\x12‚èÉ\r¨\r}nÉ\x1a\x06å\x03P\x13\füw\x18³jb\x1d¹©\x1d\x1d9cE_Ôh\x19œ…Á\x15{Ùnuºz:\x1d¼¦y¿á¼\x01S\x10ä<L\x13˜¼Üc\x1eF\x1a7ò—ˆË™ºÈ1m,zÀB°ò=FáHììáf\x1c÷\v~Íœò&®eLù« ÃmÌÿÔ\b“K\v\x11UTÍâf¡©Æñžù^\x1cxò2«&B£s
:§’3¸á_ÍŽû<y\x16.lD\x19|ہ&ý´|ˆê¶º8Ð\x03	û,l€Ó³\v³\x18‚'.\x18…t<‚â¤F\.³=\x17¹s>Ñ}WOï4tš\x04ˆVþ@\x0emä-\aè\LÒ\x101ë\x17I¤Øà€ÁÇr>4|„›\x18“˜9åÌó"OG÷\x113²\x1cù\x1dJÆ4m\x06ZÝ\Ç¡\x14æ\x1eȨ²˜^G¸†©óöïÛûýÓâwð–'?]üüÄgÊã¿‹û§ßïïîîï\x16Ÿ\x06Ô¯|oºýöðý—yîIÊòu)Mò‘ë~€¥k\a±Œ\x06j…_Xˆ1Š\r¶3\x02Ô\x11m\rXN1\x05X w [Ñ)\x02|rIó™oÆ\x1cóI.¦£ÔvÀº;É+p)½sð²\x06—‚\ø^oðNiIÅút·¸ÍË^[8?_UºzÿÆëw©ñh„¯&Ç,\x02ìllÁ›!îèì\f\x01¾d€¬vJ1¯žD·eª\x18ô#\x1a%¬½¸y\x04'\ôø6ø¤?ñ¶äº¡Â\x11Ž\x10\0Ô;3'ë4€Îg\x17æQñBFç\x1f@Xl‡œ-X\x0eŠh«:.ò,\x03)\x04\x05uðžS¯fñ¬oO‹õÚ-\x13ïÌ“{Ê¡W¯úÿ™]jOë_¤¾Ó©ÙÞ†]ó ºf*ñ¶®™\x12ú?0‚;¾¿¼^ïsm½¸}|¹ýS™][÷¶\x17†ýÕ¶?~Š‘ú„\vxS@côÞdŽww\x0fðRÃ\x19ƒ(øí¿x‘óá\x1cG÷=²\x1dNA\6\לwä«Ëž\x0f	ƒ+Õñ2\x19pj‡Â*¿ÏâZF\x04™.&áWÇ麰Ҡ„\bPD¢b­†¼"-_y<{æ`\x1e\x01'\x10Û\fq´\x10¶bZúê‹\x13ücékÂ\x0fNv`-?\x04r\x10\x0fd`cÖpÑ£\x06\x16Ã3
#Ä#ã	SÔaà\x04Z\boØ’Ë_Z\fß\x10Üe mÖº*’,gˆ-±˜1|>"w¯’Nö*f¿9Щq¸Hà"\r\x12“[P‡=h£\bÇUJÿ\x1cŠíì?’³õÝz×ìô^&O(W\x0fK\x02×^š ˏ@B\x03$ƶš3‚Ú\x16òX4Åx\x1fÀø\x1fÀDfŒk¬Oä,\rþ>“–÷±\x19³ü\x10Æ6c|ÇŒ	>PV`èg\x16\a¾a¼¶a›R¥Öí	`[€˜^·HRF¨ím4LøR‘\x15~e4@Ú®Ö×4a¾ÁC,¸_547÷ PéJ‹É\x02;´¼LÓ'€\bl­ì”Às\x03éKà§Fšh!ëÀ·ˆ	¡ŸFë³CôJìŒq,\x03f“o|ÛÕw=Hëó‰tÝùm\x18h\x01Ÿã¥¾I˜\x7fê1Ôw\r\0ÃÚâ\0c\x0ež	\x10˜\0¡\x01\x10š*\x19š*\x19š*\x19š*\x19™ê\x109&€¡’mÌ…\aÛˆqlÏŒY~\0ãÛ¦
{Ž»4c–\x1fÈÇP\x1f\x10älÃv\x01\x18ßòÍ\x19ùvdÆø¡\x11\x13\x05&ˆï»‘\x19cXÈ\x02cpæ-0¦úĵk\x12Iʸõ\x03Â-Û¸\a\v\fšãžÆ\x06h\x1d‡ë[FÌÒ	\f˜,ô"uÕkºÚé·\x10¶i\rÍÖÝ\x16ž1”ú†É•ÐÔ\x0e\}SR\x1aÛKË5a\x1cÛŒñ\x0fŽeh\x17eñ2 \x1f\x03\x19ø“„­\Ã,ãÛµçwB‰Y!—1Û²Mò/ã§ÉÐŒ	\f²$ï®Ð$ð”ı"#Ä ù·^[\x1a^[VkKkÛrL¥ap\x01bhÑ>'\x10¡Å(mpœ\x1fúz\x19jßÚŽ\x03ï[0ÜÑB\x0e¡^[„vbÄD\x1fÁ8\x1fÀ¸fˆg‚\x14Aèµì\x03(\x1f»Ÿ¼ |'Ød\x1f\0¥\x06”P'c4þðCÃùÃ\x18nCÍçvkÙ¶ÊòGð~2
œ4$œo\x0ffɧÀaë
œÁ§õÿ\x19»¶&Åq%ýWxœ‰3^[í\v\x06³^[çAÈ\x064å\vc	ÊÔ\vÁTÑ=ÄÖ¥£ªúìÌ¿_¥„Á’•¢\x1ffºÈ/uKI©‹•™û{ƍOÒ.Æ\x05a\x0e\x1dä¾Ñr$Qq‘øšP\x7f\x12<w\a£·¾x¡Ý•ÎzÓ“Ö =8€ h\x1c^[å²Aw\x14-H¹þ‰0
ðQáÅxóÑ{‰.è*«×ö`ãYsÎæꥀ¾k~{==~Œøéùôøö:š\x1f\x1eÿ÷ûóáÕpEʹ+ˆÆœ–dÝüýíðôøö2úø~|<}==ŽäÁÒðZ	Ɇ±h~<\x7fž¾þx}„‹\é8¼@¿(\x10œB&(Lx<\r±Ý\x05£úá5r VÙ7ð\x1dˆâ\x19dd\x16Ä-š\x1eà$BC–ôX° '\x17\x16¼‘rß\x11ƒ_\x1c_)\x1d\x0fVÌJÀ§1Ψ[«\x16kºgÈ—\x11À°\x0fÀPôï¤zØÓ²ÆBj\x02ϝ\Ç\x10ç\0§©r¿|\x03Oüø$Àû	ž‘OåByƒ\x01YsÎ\fé,˜úñ(ñã³^[égîíRþ\0Ÿ¿\x10ƒ\x0eH¼ekðÚŒ½X\x03–&\x17^[\x14”»ô$˜Äx뛌ƖsR\x13\x17\x1cÿB§\x18h"’\x14/€çÔ¯\b8^[O'í\rž2Av^\x1aE\ƒy›\x04Á¬åžÍƒî8E\x16\x03€\x05“»Ø8NÚ½à”d¸"€\x0f\x11ˆ-‰ê&R”ˆõ¡XóI\x18 \x1f(\0L‚)Þ}ša\x16ø\x19¢pêgH'Þ"ä\fGö˜â¾'+O\x17H†I0¾ÑG÷E\x18Mc?OQƉgœ\v\x1a'éÌÓŠÒ£ä¶mêÑâ¤a\x0fuE¼\vAÇãÓô÷e:ö¨J	Çaë-åÌr£8	nå2›\x11ÿ$KØ\x1f9}Ò—y&6ðYT?\a»n\x17^ŽO§ÃèñíÝa'§SQRªàO—Ä\x06J*RÔr¨l1†Œ-™€\a(‡Š\v‚´‡ôâ~¨š9ý\x06^\x1e\x16fy½7ìå4i;.ŒçášJ²­ç{±æY°6Ï @#xf"ÕÒ\x19ÃS³ŠMՏ£ªˆóÍ\x02\x1cÕ:¨*îçÒ\x01lå¾·¨{ÆÞ×$Ûù\x1aé·­\x0ez™—õš»k\x11VkAN°«>Ç+u=/ÜέǴ@©úÏ\x1c…ëÓ9üÙµt`“KïÙ‡_Ãÿݳ6\x04,ÛU\x04öJÔ÷\x13¥\x1a³ƒ—Ú\rµj\x03ašIÏyŠ·Lë,ï‡\x0e+XÓ\x7f\x13Ù(Â\x1e¸zb—ä*¿¤6èrEè\x13'ý÷­;\x1f^W;´\0þàNCª]íDJšïïæÙ\x10S2°Ü©6´gUcØ.5û\x1cñ£&!†]Xéò­w\FJ‘ï)k0x\x01g¹;\f­6ÛZà%7yÖ\x10ÌV\x18ܐ59)\x1f0;ݦóÊí«\x1f[n¤Ús=¿l䀗ífaNUdWpʊ娞ÅX%\x1aªN¹X1Õ÷ýñÏÇÃËÐfD¹ZQ3Xžƒ¹å/¦\a`†»À¶ärç‹xDYß[N$A«NÓe\r‘"εX3\x12anWšx2¶½\x03qqwŸÏ)±\x1c\x10ñ(J\x12‹TÍh\x18D–¾\x03Hl/!\x10_\x0fÏoßFb«<?\rĨS¬·D\a\x19É:\x02›½Àt ¨èA£/ \bŒ9ý	kÆU&YírE±Œâ p´K;϶\x01)±0œ\x04\byOèlÚ\r'-Ž/O§o§ÏÃó\r±MF©­¦v\v¬Ù×m$w?­âLÞ÷U°‰‚\x13,Õp\r”[ÅI0”¦:ó:C:«³g^¿\x04`²l<Ï$Ü1ú\x19'i¿n—Tl\x0eÿ”î,;ÐáÂ\x1da¥Î"‚©«ìM)öAè\0hk¸÷èÈå,
ZWþr“·\x1dÒ·ëi0NÜôÈ‘Ïr®ùݐ^Õ[²\x17{s*v R¹\x0ez&D\x14\x04›!PËs;	‡t²˜\x05A‚ѯë£\x05¯©ØŽ“ȁdà)ÇQ3Êäîp¹Û\vg­·IèêªEÃT<+»r\x0f“ š:¤’ÓUÅ8Á¤¶Ü\r\r\x11\x01Ä.zµã¹£Ýd3™¸\x06\x15Ô5pÔ•æ“(vðç4œ¤ŽQR¤\x13G÷11\vcÇ *Ê<J\Õ)Û"\fC¾\x18"(¢´m­±£\x06Ú~¾É–}÷pWÄØ2ò’ëþl¬y1h´‡°!´^»\x14‰\x0fµJoùÿ\rÔÔ/\aCwÿêÓÜy	\r³µ ¦:\x15ä\x19rèÚ3Òô\x1a­7+°å·Ïšú˜yø®œ›[¯\rðËá².;Þ>ë’ÙVl=ç´‡ºÁ\x1cÉè¥5oÙ¦”g1y¾`·ùê\x06ûæ ÙÊvŽ\x1cQÌ&}ùëŸ?ßOOfˬ…-L‡‹]˜¢«`š&¶ðÏv”9ø“4
\x11rW„½GkÍ›1\x03œ‹tœš‡?IRÎ¥¬l8!Ó0\x1e£9)|2¾x¿Õ\a¼ëB\f—œ=ŸœÆ|!Ûiˆ¼žT5RÓ\x15¿Ÿ\x1aL9·\x17/`[\x17^[QGö|ÍJY|‚%\x11¡\x19c¡\x12Œ\x0f*Ó?=C(^[SadÙ¼a²\x11½ž^[\x17\x17ó¡.t†c\x7fM\x16ò˜E±0Ÿ5=_í¸‡¶,¢”3\þç
Îað©÷ò\x0e&ýiL\x0fõãÓ¨,é\x17\x0eß+\x0eŽžÔ—@Ý…\0z\x0eÒÏ$:3ëN»<¾½¼À\x17/u#йœ\x1aN®(\x1e‡\x03Õ7\x17´µ7Ÿb{¾±¸ÚÛk·+W?f¨J7W\0ÎH%5D&\fŸQW\x04³¼½0(å¿Àî@\x0e¯§ççÃû?W{·Ï\x1f¯òßß$çëÇ^[üqŠ\x1e\x7f^[}}\x7f{ý<¾>}üj_ïñÍ\.QÊ4“ç…\x0erd*\x14!\b]Ù"‚cpt	ÜM~<Þä’óøö¤
ÿþþ&×\x1e(_\x19 ¼œþ6\x03fœ¥L6YßwÄ™œ‘é8\x1eœ J¾ŽÇA08'ð$îï0¯Ô"Ž\x06:ó¾L§Ó¤S3MÆ/u¶+'5Ò$QžY\x15ëöôt|ó1K\x1d4\x18Zb»N´Óß^\x1e ƒ!.Ç@MÒ±•ìøzaÖÓæðr|?œ{\x19[ìK1Û\x06aØå´x>|üÕãíe\x7fz‘]öŸ#|\x17\x1fUä\x05.O\x1fGø”ý\x06V·Ççïr‚\x19\f\³Ñ\x0f9Åå$üx{Ü?êÊé1i\x0f8ëj´G\x04‹ÆußûA\x1f“Ã"únq\aà´EÁP¢!ŠÎÒtŠ€9I¦“Ð\a")Kyöh[\x1cë\x1fÊ\aXŒbÑd‚ba\x1cº1ðe\x16"åµ\x10\x020u׳¥I\x10\x04\x186F1¹¯–	\x13ŽÔT¡S t<æi\x10#9“6
'‰;©îçþ\x0eª.h §\x02†E\x1e,ö–ˆ¤ÌÇÆU„™©œâ\b&6D\x1e7‘šÚgœ>Ö¤Qp‰/¤>î||Jmsx\x7f\x1aýòqø<>?Ÿ>¿^—\x02óJƒ‹yÎfæÂ&‰“Áa”‹m0\vþ\x1e\x10'r\x1fô7Rþ£²Iü×H.ûïGˆ|\x04Ç\x14¤&YÓZW\0Ý\f¦Q–]®i¶óÿâ?Ó0©NDzfæ>U\x11£Øú$!âÐ:\x15?\x14²ù±-•d\x15Ž#‡T¢4\x1dÊ/pÉ/\x1aJZÉÏ%é` Œ4Hã¡„‚ XÔó˜ÉÂA%4¤e3Ì+&ÖAZsZùs\x16\x19—z*5—
Å*,ãqàh†¬Õ4ì÷§Û—Ÿ\x18 |-\x15v;èÐhpÃ¥‰V—Êᕹª2¶\x1aRµbb¨¸ó\x10I"“\x04C$Nb“˜±94¹´®Ð:2\x1d§@vR×ÎÊZ\x03MÝÜXý˜Sçԍ'S[JY$UGcRÕ\x15ˆ})£‰Q¿Ïèyr£½µÍ¹œ¼ÎÞ·' ž\x19ÓË\r½à2÷Jž\x1eþ\x1a‘\x17ˆ\x17zxýr÷ö~<¼ŽÄuœ|¡J¹È=6Z\aÙ—Q`_\ÖM\x02Ot­\x03,-ãÁeQ±ÌD\x1c\a֐;S\x13›72nÜ/
#°f<Ù¤I\x14¹hû̾K=ÓåaË‘ñuƒÇxöó“h\x16…ƒñ–\x0e¦i9O'$
¸};Þ+b¤‚ÕêsÇ—uQ˜åH‚KóÀt0\rPhvÙÿòœvž^º½ëè«Üóª\x05À,«¨æk»UŠf‰™ñb2¶\x195Ñ\x1a‘°çŒí\x0eæéÒÖzDÌËt0]˜ÜÉ\a‰Õ—z	ß/¬3¤LÞHÕiË_]½Æ,ÄÛÛó\a˜íKA\x1cŸß¾^ÿgt°y3\x01‘.eAÃè»ï‡ï\x7fÁƒUÇ\r^[YºL6·K\buÞ3ä?\x13Ôgüåzc¸\x0f\x03LÇ*Í^[g4¬¬é\x1d­å\x0fÓ•8\x10îä\x01X;\r2<ÏI\x04¢Wîå®'»œÅÝ\x05ì…(ûn…Î\a¨‘\x1c9Ö1ÆÈ^»7’z×ýj±cá¬\b\x11ßQ\x1dKÕ®Õáb–¶(ŸÈ\x168Ø„QŠ´­!òxWÙ¢ÑÔý¦ähžU½Ùædƒâå’ \x18æÅ\a0N¶˜ñ¤JZÞ/=-]–$q†\x06Qc#+Œ+7I²"©Ú-XbAÅ\x01§¬i6|ÿG^n\x02ÿh{\x1aKŽe.¬hGúp]o„ò™©\x1f!¹¼\x03deÏ-ßÂø\x18܍]5’\x1di\x17píg<Ê‘”y]Cd2~yŒåNH\x17ào¿(\x1aã2ç\fÐz½“å’\x01ÀJفó‚\x19ï¬ÎX\x03ÞÅY›\x17ðh`?߉Ü]2ßñkÉ/\x16p)Ù\x06®%›Í]ÔMΖÕ>¯ä\x19§ò”h¼l\x02É勼iòlÏj«1\v'ægd\x01Ê\f^T#~› \x03\b½^[¸8ê%‡èºZkq«`Á
ÕDa\x05ãÐ÷2ãèÏ\x1f_¿J­ôWçþÌñp\x1fºC\r_¬‚ë2 º›çM„Å®\ÌQ/€\0Iu'»@`8+¹@A)rĹùBm\x0e	†U˜Ã\x03‰­–h2\x1efêU>š-\x1e\x7f\x12†:Û\x12wï²é8°Fh‘§A‚X[«á$5\x03Z\x0f­­Q‘‹]\x18¥\x1e\x14m~Œ"¸Ž\x06”¡£j‹‹«Êk9{\x19:rîvH”&‰ÅØâ\aEÖuV×h÷oE:‰Ð†ŠF*h|´’æ\x0eŸ?h¦”4¥\x15T´'¼’ÓÍ¢5´µnIŠ×\x0f’s#6ˆSt\x18N¹\x1cNU]¢]\b{õ\b\x1fø*@"_å9.™M½¿\vgˆIGÞëÕ\x0fñ·sVû‚fž5êʧ\x1f¢é\a‰Ýf¾½~¼ÉóÜÓéãûó¡û²áødº$.‡­’\f¾ry½\x10\x10Ï¢.
ûá]?\x0e¼ÃãnCÊ|¾Y,àzä'@Y{!—;ðqZ’ÆpFåânj1°aë^¢ÖKc½‚ß{\x156N®,•[ä=žž\x1d²Ðb#¢hÜs~\váæ\rW#@Ø×\x1cýFÉ\x15ÿõÇÅWi´¦¥IXÝgùÚ$5ä¾”z¸÷µ¬\x02£&j„Ú\x05\x1aÏÿØ@\0mÄü²‚\aÙ­\x14pÍ9Ê!+dãýÚ5\x03\x7f«@Æ\x1f!›õÓÃ|/çöž¬\x19RÆ\x16,… :BSÓ\x05·‹º¢¨Ÿ\U#Ì‘ dqñ$Ø#ÞQQtBí磞›Ëi×ãÜ) s´\x12õºˆUh¦^[Lã›L|Nîs/‡Ü£‡Á]hóô8à\x05ã屶)¬á÷hcD0»ñ$\vÓt†Ö…\x14p‰éƒÇ\x17gÉ\x18óF\x028g+Ä4DÁ‚1ÌÁô\x05V^[Ð\x12gÚ¤i\x18xáÈ\x0fÇ\x1eø>±\a\x11Çγ, s¡/s$Š¸¯·`Ì[S|JP\x12„ÈQ]Á%C=XÂ0mw˼ÂSóq”†>x‚97¨ÎF´\x1fNÔ\x17pœG´\v¼ö\x19i
âé±¥rЀÂ\x05Ùy“ëìÇþìÇ7²Çq¹¤\x11JDZœ®êx‰Â\x10Ä`Y߀Ù-†ì÷›9´7³ho)¶[¸'ƒŠ‡ñ4¸{
àá,N½ð\x04‡\x17¥å¸º¿šfDÛâ[[\0ð¸	!´åt–g‡ÜˆCÖqt^[\x05£4\0š\\x13Ð*ébU,›<_{ë¦âñ8v\x1aªŠ`÷¯î\x18Fe\x1d›Zqºˆà®|4ƒ6ŽóÖY3r¶„\x183ÅO°n=SãÊ\x05wO?Áæ¹M°\x18ë*o±^[\0‹•\x04¡g™1\x19ãèg\x18ÕWîŸ\x12c\x1c8#ùvlð¸®atØc|íÉž¯ñEU\x1e\Âi\x18ùq\x1aTS%mƒ›\fx\x15îêf\x19Fž:\x14uK¯h'ãÉ8Ç\aAIr.\x0fž±oÿ\x06˜pUFÉij5oWøÖ¾akÁàš
/sÏ\b’èlâG\x13<5¯+F·lî\x11ï¢AmÊ\x19I#Ï\x16áŒßØ·©kšãKÖ¶"¼\x1d»ráÛ\x03qôÌbÅ\x13>“öþ-‹2*!a\x10ú9x^[í¼\x1c”0òǍ<Â(*ðºï'\vÖ\x7f¨Ù‘WlAhn\x1f\x17x=“…\x031\x1cî]§auü˜o._GW,^[^TH¢á#˜eWÏ΢ɫ¥pyÓ–lò8f\x18æ­œŸ
 ¿«^ÓŸLÁmÌáYUÇq\f)È\x18\r÷§`ÚlZ\x1c\x05gJ~\x14±žTø\x06\x16N\x14žçÅ\x1d«P\x18>*6;\x0fÌä/\x1c—\aðŒAt8<\aýÔ\x17‘´ì”e]5–‹£+u¿X 9ç%÷ÂEŽ…œÑpc\x0f²I(ºª\vÌžVÁ^[̾\x01P™1\x1e…Q1ìð¡°¡\x10é’¢ø½Ü@ÕklPï\x1auUfO\x1eFI–#iÄ=«VdäNœhžv\x16\x14wò¥ð¼ª·õ^¬±ð¡ŠI¶Ö;¯Ôe¹Š\x18‰³0ðT/\x04ÎQË=Aãép\x15šmÐk=†J®\=s] ՍÞÊöçŠÜðÉÙVÔf\x14Þ\x1eÙ\x1aÎý´¹ Å®jížXËéYÐÌ3?\x19\x04‡Æদ”à’á„Y#Ý\0K¾©¬fƒÙ½]G¾Îó\fè¨8Dž\x17\x10ÿ*Çô„,i]l¸YØ\x12bw\x12Έ\x11û #âÂä¥Ü`ý^ïÎ9öÌ\x04®tŸf\x11l[c\x13¦^sÙZ[\x04b%§K‰¥YÉCƒ¸\8ö\x1cµ]é¾êÜ\x13Ÿž»gÌŽÙÙC\x1fò¦¶ÅÐÑ|e>ì2¹¦yæ¿vä'•áИ\vÌéœ+»ÞNdÃ1ž!fí\x12Õ¦ð×hWF¾F˜™\x15šÍÀWŠÚ1é°ð\x06M…äX\x11¾_ÑÌ@lƒ\x7fìjY[yVr\x13Ds\bÖÜs\x1eÑ3\x0fèì\x03@P\x03ë^[½ö;\b_Æ\x19·*n^´Û5«År\x7f¿b\x10v\x18yõÑqÍ\võ]‰\v»\x13\rNÌi\x05`÷JŽs²p\x0f\x01ˆ9æË£ÒO¦m\x10€Ä\x11y¶+ÊÎ\x1db$ìèº3–ÖK\x1ec~ÍÀ¦6ðDD6\x7f/„\x03\x15\x02úË-”+­\x11E²_ÎÅÖlÐ7í&
ƒÕÚn¬Á\x04ñBÂI{“g:	nòÄ“È˳ÿ[E^é×NáÕ—¦ÚB¨o
\x01\x18æð}T½SD\x14\x1f§\x16si¹¶²YáÉH‘Ÿ¹í’7窡¥mÂØ//^¤aèåhR2™$ò”c1]fE¦ÝLÒçÃÇÇÐ'Ò\x1fÔrØ¡>sõÒ¨¹—Y\B½’ÖqQäzðß#í\x02¤nà\x11ÃÓñ;¼x\x04ƒ#N9^[ýùãs4/î@=íy6z9üÓÙ'\x1dž?ÞF\x7f\x1eG¯ÇãÓñé\x7fTÀ£~N«ãówõžô\x05|`^¿¾™µ?óÙ²?“½Š³ãéî	_\`F\x04Y¹^[\Ƚ\x01­K7Èx\x16õŸ‹ö1ù7\x11nˆgYÓ\x7f‹lc\x03_*gì÷M¹æ«\x1aÉ•\x14d“\x117VW:»^[½#M‰$ì¬.¥ˆ("!yðÝoæ“èjf\aƒ’½\x1c¾^¿¹ã”\x19Mm¹©M·î#s]¼G|w*M¿b\x10?Œ8ç…Šuûä^"täTg2sAuΧ¼d“Ȭ¾$E\x13“D²ØØ\x0etò-Ï—&­aubK£È—µ€ÓE¦™Íg\x11º\x0e£»)í[±iL9ò5‰,S‡!“¸\x10\x19“Ç]RÙ½¡n\x162¹\x10\x14d‡Í9ÆÁ^[ÎÒ\x1eQ\x1d\x19n²M\x05_Xm€ÚTîræ\r8Ó³ª[ß“FJ¬±k\x06&О•\v\x1e»,î‘*ï6MÞÚ\x19æ\x0fJ\x12m„æºârÏ$ÿˆ\x13Óõ}_Ñ®Œ³Muv(ÑÒœ¹ý'Ô%Yw/Z÷˜\x03/Å\x04\x05»/Ìô)Ky\x1d‘åßâ‰1žË’\%ª±KI³÷e°$`üï†ïÝ­+KÄûb^rÁœ/‰`_,Çeß©œüuv¿uÞ(KŠK^[(Få\x1e3@¢§k\x1c\vz¡ð5%³$ö0\x14ëx6\x1eûð$A\ã_ñ؏O<åÓ"ßÖû’°âF#\x10Wª\x17\x06Ì[®b\a¼0\x1aó\0‰M£xæY”\x06žšj/✏±'äŠKP\x02®]½=–$\x7fãx-¼ùÏáò¡\x1c¬\x0f0†ÄûéÛ7cIÐ5jØri=;î\x03ú™–ëuXŸI.Ôç\x15ޝÉ*'˜çÈ\x05ŒÁê{*m0Òõ\x06­twl4lJ\x16§ïŸ`õõ1úÔ\x02\x01†\x1f¯`àQ\x1d?¿žž!†êãÛë×Ó·Ñ/ ·ÏÃû·ãç¯n±)ÏY^áM÷¸Ê T\x1eˆ9›3¹Yß!¾é\x17¬bsR¹\x0e%ùÿ7ö$͍ã:ÿ•TNï«z=\x13o‰}è\x03µÙlk\v%ÙN.ªLÚӝêq’JœzÓÿþ\x03HI&EBΡ+m\0\Ä\x05\x04\x01\x10€u«\0þÆ\x13˜ùw*¾œÛ\x19\x13©(á³A¢Q\x14#1ZµctHž~£+N\x12ù×Qµ(ýÚÈ艀–Ói •_fÐ{\x13\b€\x12®5NÊÖ\vôòíøxu©\x05\x06)}"\x02\x12`@^‡‰þûÁñ°\x04ìã¨\x1f¯ƒ£\x13ž\x03Ü\vR¨Ã늇2ÿ€;ò.vQl,! Sò`O\x1dÌ¿-\x17\x14pÊÝ\fV$7Ós$×7ã3$“ñd˜\x043#-\bÞÔÒˆbæOÎ4Å‹x4¾š\x7f‚f<\Ñ\x0eHfƒ\x14¹\x1fGã›s4sê\b3h®?A3\x1f¦I¦£r><‚Þíd¼\x1e¤(@$X\x10iúZš(™PÉóº©ÚAwGçH¨¬š-I˜L®Î\f°Ø\0ÉÂ\x1f;Ó0ŸYÿ8`‹ócº8»þ'gV
’,®>±þ‡—¤XÜ\Îïéüüfœ~beOÎLß´7Ã*ƒô?\x0fÇ¿_Þ\x0e½±ï\x15ö“¬èó¼f ÆDÞ\x06d6\x1a%™MΑÜL‡G^[ƒ•Þ”l~f}ÌË3\x1dF’Éì,Él1LR$×ã3=ön§ósK(ŸùgÖ\x10n¨«3ƒ7žš‰˜åÔ¿<\x7f\x01¡ª7ñ{‚Š×snKj\x16‘’\x13/N‚„5Ö\0·XTí\x1cWõÓý‹p"Ao—\x01çmDË0˜Mð¢·#FRê¯oE%•¹‡\x1eÌC\x17Ä,5ßsJL_\x17Û\x188\x1eß^Þ_þ>^¬~¿îß¾l.~|ìߏ¶-¨(\x19ªì\rY«\x1cM(\x1fΘûÔ‹\x05\f Ó\x01붓Y•º\x15¶¹àE2&/îè9ëÎ¥¡‡{\x16‹
®+(A;Wâ|4¿!lÙ¢Œç£Å¸¢Ô;L1¿\x19‘¥ŠÙˆH\x11‰"ü}ÿÁÑI\x02\aI8_ñ‚0þ`ò×krÜ6åõ5‘cB¢ˆ§â;ØA.߆û¢	¹¯›0\x05KÈ—yÉ\ráCæ\v\x10¨Y¼
¨¢»%1«˜Ôì¶âþ\x1aÊ\vZs\x15Â…°Ñ“;\x1f|ùI½%íõQ9꽈h“\x1e~}¼âíL¾óz\x7fÝï\x1f\x7f\x1a™²ò­+·G¦T$\x17>ÚÌA¾OY^r¿æR‘pÂÍRíÌÚò"mâ^\x7f\x7f{yún„@H\x03‘qÚ&²ÍYJ\x1aMäxÔË ¹¡<ÿÒ\x10_q§A†\x01ϐ\x0f¸gÞ\x0fƒ\x11•Ó0X
çÊò™¿2®{
2Ù¢Qr»â°ïæ×Z”ÉÎî«-¢P¬‚ˆf^[1ÌNæžF\x7f%€çdƒ4Qõ—Eõ\x19’’y1¡ç[åò‚î¾¹ÁD2éç9Ô\búB¬s\x16È]3œÎ:`y1.	Ó8ÛÒ;rK8m£“\x06ìÓÁNfÅŠ{¬öÊZDk\x1eÇt+~’û\x03äÔ'x	²m'n—fuèeÙzPß;Ðÿ–ä–p\x1d—ªÿz™\x10^‰ªë‚PÂ7Z=ô–\x01H\x1aún²|\x03ëÛ)"Wí“üâõéùŸ—Ç_¶ÀáÇëpSÖ|>Ö#A\x01Ô‹ƒ\x0eª…å±g> i{š%IåÊxÃ’@!‡fŽÆ‹[\f_Î쬈b\x7fx9î1^§3	f\x19*çd\x10XEfŒx=¼ÿ°G#—ü"\x12ám«þn~^,_€òùE'nP*\x7f¤\f\0Yg)4Éô—¦:Q\x1e
dIh¥1|0u\x124^\x15lãŒ\r£Ña:J™²ßO‡oG¸+}ç»]Ì­c>üå„l›–„€‘„5••9ߺ\a\x0eÝ^“¥DX„%‘ éÄ=\x1déP£§·ƒ\ë®\x11\bœ¡JÚP&0\x0e˜nǘ’\x186¥G„›ñ\x03¹Dü á\Ÿú„wš¼Ó×£Õ\x1fXRTb¶\x18÷I¼Ì²%,&W˜ æSQúøý~Ü\x1fôå¨NÌ-z7*Í®!ÒïÊqM©dw备;a¦€9ÝE$ Boa\x10\x02°ÎI¯\x11$Ç´ |\aˆ©æ$U\x11ú• 4Ï’ˆR\x13\x7fó\x02#š5þ&‰¡¥ÄSò…žÛ&ä°…\0çüîo\x12a4qö³¾û$$ å\x19Y\x1cŸØ£±ÎÕ§êÓoý÷m••Ì\x04uÔ'\x06\x11„´Œ(Xe)‰¤»¼ŒŠ±{ü¼RX#ØÂÎ\fcG\x06\x13\x06|\x02\x0fˆ%9¤\x1d±¨RL*\x05tR™]\fPSë$å±ú\x1e-\x18†9œÝÒÄ3NŸŠˆÃvÅç¾\÷ҍŠ4+yt§q„>€+€dçZAÖ§kç¹û\x14	@\x1c\rnrDD%D–^KM	œiN$¯V\x14Ôð(l	÷\x17£\x1fQ\x02w\x02דJ…\x19÷¾Á/c^[‚×øœ™RCUfQ1u¯®H2 mž|å‰ÑÄ—~ü©^[U¢¢½[˜\0¹ÙÌhG\r\x02nÛe¶$ïµÅ¹›IK‘yß0¾Fßý³í3ÒàÂ1úp‚\x0e4 \x119ûªÆ!ø\x027•?ƒM Ï\vë¸àE¶¸¾¾2Æñ[\x16s=	Þ=\x10éë¼
"ƒ\x1e\x7f§qç*\x10dÅŸ\x11+ÿLKw“€3Š'\x05”0 ›>	þn©h\x15ÌÑ£m:¹qáy毘\0ñáëåÓûË|>[|\x19]v»»´\x18’\x04‘Ü\0‘bÛ~Zþ¾ÿøþrñ·ë³PÀ48³\x04¬Í”~\x12†‰_õ\r øIèÜËÑiçôôØ4\x01–InÊ\x11\x12p†•*š\x1d+K—\x01}U-}xz+\rHvÉX•ò\x0fuX& ÓH\x16ˆVÒ01¯ÚUê„‹h\è‹»¼¤°+ª+€PþôæÉ\x13Ò\ry\x03} Z‰³¥Á}`ûé¿‹ÛŠ\x15+³\v-ŒœŽàÞ0Rwàø>s@w÷Æ«Š\x16<•þ¤èVŠ\x0fÖÝ×Ö–6L<\x10Ã`¨O‘`Ë$„C¤áœø
~¢Ý\x02vô b¦š\x1d…Ì\x12ºà*§q·én:ˆ½¦¦N4Mjy%%\x04½> öîj\x0fÏqÍÈ.ÑYÚÁOÇ**\x18‰Á½+6îö«^ëêw½\x05	ÇôÔ\x1d\x14¼¢1õ} \x11À\x05`ÝÛŽ-²• O,\x10 ^[·ÁG¢\þy\x121í×RlYN\x12×#³\x13\0Ñ\x04ƒ\öKŠPì.«4?]‰Q\x03\x7fè×XË^[7®JùÖ®Æ'ŽYÂxúõò\x17ÜÔ÷ÿüñòöãÒüôž$€@\x14%\x1aŸ• 5Ç*0\x7fÁhô>\x1aA}æk`§Væ¤JQ2 ‚iùk­eùSÕ¤õºÿd¦¨R‘ûýßõRwni`¸ÒáœLS=Ð\x05 0¥:Ð×káÍ\fÎ¥ŠQç¤\x1fæ+S\x16ã&çÃßJÖr•Fä6dë:ßâs\x1f-[‹DU¹Ïbã&#Á\x16\x135Ñd_%R¯Öècâ{ ÓŠ9Í¢ŸS|\aä\x13FŸuÔ†õE\x17\x17­4óõòñu>»ºÔQ­\0Tƒ\0d\x16ê07\x13-Fº‰¹™\x11\x18h†¨m>^[“eèÚ¨\x1eÌõèâ=̈Đ=ÐÝ´{˜)‰!{­§'éa\x16\x04f1¡Ê,fWd\x19ê{\x16SªùMï{@*G鶞\x13\x05Fc²}@õ†š\x15>çæü·õÜÍŽÝà‰^[Lô}æ\x06_»Á7nðÂ\r\x1e\x11]\x19\x11}\x19õ:³Îø¼\x16\x0eXe\\x1f\0š0\x1f%\x04"i_Ká‡qI¼%?‘À\x15¾"BŽvD"ƒ³î\cw‚Çñ™æ–,<K\x027ýõ \x05÷ñ©C0L“V¼\x1c¤Ãwî£ÊJ¬{ñG5ŠªŒæíõ\x7f-Ïþ‹Ÿ\x0f¿žž\x7fœ.i¥`è;*n£˜-‹~–Ç×·§çã/™âêûaÿþÃ~\fª"\x1cJŸ\x12]¹¯Îó$,
Ü]1êm7p°^wŠ0|ÖØ”\r`¸tePóz´Í@ÝÄ\x10=¼Â\x1dóËñé°¿xü¹\x7fü¥\x12‘=*¸#Gœ,ŽŽº™Þ¯\x16†YÅ+_\x7f5\x19¦hr”Š  ËEè³ÒOª¢T*¸^\x10QYòëøj:×­-‚çÀI\x12|\x13J¯Ï\x02Y1P¹í¹)ˆb\x01Vàe±S».?Ê”_W!Æ»jt…ne½,U(q\v¯ª	\x06ÊrEDÁ\x17Ç[\x06—\x1cõ™y&µjEÿó^[¸i-=Ë\x04¬0%Ì(÷p×]\x19Ã(àý@Üö§k\x1d
%“5iò\x0e/o¿/‚ý_\x1f?~¨•Ük\x0fù¹tÇ\x18øn¥‚"â\0ŕג¥4\x05%º­Ø&l{ž„I\fßmI‹\x19šš\x12ÍAUAFá—T›d\b9\x10~XQ(K\x17ì\b‚\x195#ª¦\r&)?óŲÓ\x18ä1Š³­ýÙ\x06šªI.8\x1c v—u•tÀ¡a[\x01/³”~r¹\Ä/¿>^\x15ãX=<ÿÐß\Àu¢Ê›Ð¿º¾iÅD`#Oj\x12àc9ƒ\r \x13ZFç³Äõ†ÅUøõÊU1F\x0eùtÅ}â®ândlã\x15ZæKV¬mžÝ¡$OÇkçhìì׉ð\x13ßkÒÚŸ«À˜\b4s®1\x03o\x17—/à\a\x14\x03\x12oíØ“B\x10ßÒØ;Z½ÑA÷€ŽÝ\üç½q\x19xÿïÅáã¸ÿw\x0fÿÙ\x1f\x1fÿøãÿ³y‘€3°*Ã\x1dáQÙ¢¥m†°é6Ë:ç)\x197µÙË\x03\r)Ší¶i®€í—³r5@‹Õ4^[Í\x05lãÖ´C\x04²†
pH\a\x1aae†'}\x11÷"<:ú‚þ^,ÇHÆqD[²\x1aîªØ;yV¿&@³Í¢¤ÆÉϪt¨ßdäŠf²–\x03HiÂâTö]Eãƒt\x02‚/g±½\x1e…_¹O¿"G%\x7f\røö,v¯9À\x03\x13\x03É1´Þ·h$ÈïÑ\x151îØÀõ•Yɉ\x02\x05*º-AÙߚɐ\v%Ü¡½bCˆÄ͐ա\x10™pk‰N:@Z“tZ› Ú¥þ;RU\x17b¥=³\x04\aŽ‰–H™ñDÉTE_J9K&1ò\0T"·\x15òE\x1e~Q•*‰L\x12	
»\x14,_}Š&Êå,\x0f6S'rÁ»\b[a<’„ƒÈzËË\x15ȳˢߘÑ\b\x06~\x15A\x04\r@r­!¥\½V%°\x1fÄ]\x0fè7µ©ª5«\x10Tƒ\fÃáv\x15YëQíªgyµ(÷ïÇÞ¾Š×Aé–²dšl\x19Ÿ¦ Ü”½Ó|\x03ã¢_•\v\x0f-È4^îg8öêa2ÅP¯§\x1d›¤û\v6]¶Ùmhº5\x10–Dld<\x05Ð\x11^[#›Œ&‹©\fDO\v“€D\x16>pL3Ô]\x17Ã’á20‚\x1dáo—FíGà) 4jž óë.8?Š'•–Å d"¾k.¥†÷Ž\x06¯\x03oé>ª¤sm\x19TINž;"ÃØ ö™£à\x147noj%:îU2ã„\x19…­9Wvd\x05Y\x05\x17L¥=µŠ¡¥3®ˆ\x14&Êy‘ž¯Æ¹±¤Â+â¤á#\f‚ãñLÝýëò.\x0fë«Ýüê$¨öqp\x15\x1f¹q•Ò\x1fŒÝØ4K\r›\‡Å戏ê(ˆG\x12\x1d…jÚéõÙPÈæ-\x19Ûè¢Þ»æH”Ê\x11\x14œ	…zN»£d9œ×ü\x1eŸ\x03Ç<í½_iVJ‡ù\x03.åîÂV\x02ƒÇ£~ÅlY¤Ø?~¼=\x1d\x7fÛÚ\x17\fÈiì¡T\x1a®C\x19~ÒýUˆh/œÒQ€"lÉ€¡„…ôŒ”{}v\x10\x19¹Õ*j®N­1ßžÉ\x16ûõ²³Hì@D‘Ba
‡Ï:eÖÛï×ãËÅ#Æ'ê²\x17j®Ç’\x18„ï%pKÍò¢ƒÇ6<d\x13h“zñÚçùJ\x17\x1dú\x18»PÏ
u\x02Ú¤B÷ö:ÁlÂ\x1c\x1dœú£¤ 6qÂR¶tô¹Û\x05¤óØÁM]\a¼j7y—°Š.£ÑxžT±…H+=ûi×aükÑ¢Áù¶
«ÐÂÈ?ŽÙªÊ\x15l\x14ì§0\x04goË¡Gƒ:ÈqïZý[ÂmYÇ7ː}\x1c\x7fîAìy|8î¿_„Ϗ¸,a^[_üï	ó󾿿<>ITðp|°–§¯\a\x01k^[rÀŠð–oZ-´'í\x0f/ßuO´¶BÏ·\aª´gÐ/­U‡z4©\x06\x16K/¥þLy¾E¸+;O­ÕÃûOª{	³‹®\x12fwzçjd£Š·)wAÌ´[\x10þdìš}…Po\x02èU ©\f\v³\x06‡/{Ñ\x0e,ªrt\x15ðÈ]ƒÂ­e)¹„µç‚©\x036³w2÷W\f_Õp{üD\x12À–t‚uóé	<ž]»À“±M]¬ØÈ1ì\b®‹¢\b'ô\a\x03\r4¤¨\õÎFc\x1a‰]üí,cQ—K1ZØàmî"–³PË©ªSÞ$ïhÝ@Ÿ^\x7fš\x0f]Ú“¢pœ\x1e…”\x05¤Ý¸?:ˆl+\x1f`Miåq{¿‚$?uŒ8\x1c›ÛÈmÏêQ´ž\x1e\a
ßõ»·”Y\x12Æ1g$â\Aünøl¶Ù}žrL“¢1Éý%ˆ›¹6#µö\a¶4P^\x135\\x7fª†À±("uØõ»»^±{\x168Z+X\ô²\x129	¨1’ÁŒm ÈUp\x1f'\x1c¶\8¦+T4\x03S¨‘Õ”2ñ­uPo³á\x05Ü\x10XžJ=tÓè0ºžluÃiÆø¾Îˆú¶\x7f\x7f‡3ÞÚÿ ТV̪Mº]ZG«îtÙÁ¦\x0eºéª;õÄÃó÷—ÃEúqøkÿv±Ü?ïß\x1eŽ®®`ä&¸r¸¤H©DsIÅ-Â-¦vØâ$øögnå2H±â.Á,\^GÔuíà@æpÃnhŠÊ3É4\x1cÈîp\b\x15\x1a÷ÙÍ®\x16µ\x1f
Tp¢Á¹–J\Mè‘wèõ&éi¾\0‚F{\fXéÆÔ"«JãÙE‡\r7°¶#MüD ŒŽ/\x15,¨þFå°‰Æ[|¯@q—‡GŽ\x06’‚; x‰\x14pëÝ)e–\x1fê"scªä÷m‚€SKú.“\x1fGœ8²S‰Á‚<ž2Ѩnì\x10ÐñÓ_o\x0fo¿/Þ^>ŽOÏFÀ)ƃë:¿=MƒÇK\x11b\x04\vm\š\x1c\x1d¨ÿHýü®ŽD–ô^¬è$q˜\x12X|?\x0e“¥{¼µ(|\v‡\x0fÞàœðxiãsŸ£\x16†å6Š\x04ëÛ\x03îö>/\rFê\fÁɯ;¹Pƒñ²ªÍR“±¹©Pèti\x19L\x02Ø\x19¡w7w\x14U˜)\x11&A’0±ee8@áq¢iÍo
ø['xŸ\b4I\x139 š8Lö(¡\x16Ó\x04Æ(\x1fíˆP÷0E(\x06o³áÓ\x13õAƒ®|7\¯åÄBî\x11¬©8åïæ¢gÂä+ÚܦåL?k\x1a \x13‰\vV®ªÄ³\x10h|²ëõüoÆk;\x05%õœí·ÕË{­i\bé×ßi§áâ\x16"ËrÁêµ®YÐà^â\x04G…\x06÷šç\\x1d\v+p7…I\x1fÔ7à\x14¨ãÖÖ\x11r<c\x13\x06·±îRˆîº§ßá©Óâ˹‰äk–’oôu&ªº}ºÙ–\x06§toÕï1Œ‚\x06ÈD ß¬‚@k<ɹqÒg˜›#\ò°ºD\x19
W\x0e«
À/Ґ~þï¼WÃüß\x11.Îÿ\at\x15æ~$u\x01\0v›Ë¨ÅW\0\0

[-- Attachment #3: cpuinfo.txt --]
[-- Type: text/plain, Size: 5604 bytes --]

processor	: 0
vendor_id	: AuthenticAMD
cpu family	: 16
model		: 10
model name	: AMD Phenom(tm) II X6 1090T Processor
stepping	: 0
microcode	: 0x10000bf
cpu MHz		: 800.000
cache size	: 512 KB
physical id	: 0
siblings	: 6
core id		: 0
cpu cores	: 6
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 6
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt cpb hw_pstate npt lbrv svm_lock nrip_save pausefilter
bogomips	: 6400.56
TLB size	: 1024 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate cpb

processor	: 1
vendor_id	: AuthenticAMD
cpu family	: 16
model		: 10
model name	: AMD Phenom(tm) II X6 1090T Processor
stepping	: 0
microcode	: 0x10000bf
cpu MHz		: 800.000
cache size	: 512 KB
physical id	: 0
siblings	: 6
core id		: 1
cpu cores	: 6
apicid		: 1
initial apicid	: 1
fpu		: yes
fpu_exception	: yes
cpuid level	: 6
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt cpb hw_pstate npt lbrv svm_lock nrip_save pausefilter
bogomips	: 6400.56
TLB size	: 1024 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate cpb

processor	: 2
vendor_id	: AuthenticAMD
cpu family	: 16
model		: 10
model name	: AMD Phenom(tm) II X6 1090T Processor
stepping	: 0
microcode	: 0x10000bf
cpu MHz		: 800.000
cache size	: 512 KB
physical id	: 0
siblings	: 6
core id		: 2
cpu cores	: 6
apicid		: 2
initial apicid	: 2
fpu		: yes
fpu_exception	: yes
cpuid level	: 6
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt cpb hw_pstate npt lbrv svm_lock nrip_save pausefilter
bogomips	: 6400.56
TLB size	: 1024 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate cpb

processor	: 3
vendor_id	: AuthenticAMD
cpu family	: 16
model		: 10
model name	: AMD Phenom(tm) II X6 1090T Processor
stepping	: 0
microcode	: 0x10000bf
cpu MHz		: 800.000
cache size	: 512 KB
physical id	: 0
siblings	: 6
core id		: 3
cpu cores	: 6
apicid		: 3
initial apicid	: 3
fpu		: yes
fpu_exception	: yes
cpuid level	: 6
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt cpb hw_pstate npt lbrv svm_lock nrip_save pausefilter
bogomips	: 6400.56
TLB size	: 1024 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate cpb

processor	: 4
vendor_id	: AuthenticAMD
cpu family	: 16
model		: 10
model name	: AMD Phenom(tm) II X6 1090T Processor
stepping	: 0
microcode	: 0x10000bf
cpu MHz		: 800.000
cache size	: 512 KB
physical id	: 0
siblings	: 6
core id		: 4
cpu cores	: 6
apicid		: 4
initial apicid	: 4
fpu		: yes
fpu_exception	: yes
cpuid level	: 6
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt cpb hw_pstate npt lbrv svm_lock nrip_save pausefilter
bogomips	: 6400.56
TLB size	: 1024 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate cpb

processor	: 5
vendor_id	: AuthenticAMD
cpu family	: 16
model		: 10
model name	: AMD Phenom(tm) II X6 1090T Processor
stepping	: 0
microcode	: 0x10000bf
cpu MHz		: 800.000
cache size	: 512 KB
physical id	: 0
siblings	: 6
core id		: 5
cpu cores	: 6
apicid		: 5
initial apicid	: 5
fpu		: yes
fpu_exception	: yes
cpuid level	: 6
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt cpb hw_pstate npt lbrv svm_lock nrip_save pausefilter
bogomips	: 6400.56
TLB size	: 1024 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate cpb


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: early microcode on amd is broken when no initramfs provided
  2013-07-20 22:59         ` Borislav Petkov
  2013-07-21  4:01           ` Torsten Kaiser
@ 2013-07-21 11:53           ` Johannes Hirte
  1 sibling, 0 replies; 10+ messages in thread
From: Johannes Hirte @ 2013-07-21 11:53 UTC (permalink / raw)
  To: Borislav Petkov; +Cc: Torsten Kaiser, Jacob Shin, linux-kernel, Jacob Shin

On Sun, 21 Jul 2013 00:59:11 +0200
Borislav Petkov <bp@alien8.de> wrote:

> On Sat, Jul 20, 2013 at 09:01:33PM +0200, Torsten Kaiser wrote:
> > On Tue, Jul 16, 2013 at 7:00 PM, Borislav Petkov <bp@alien8.de>
> > wrote:
> > > On Thu, Jul 11, 2013 at 11:05:25PM +0200, Johannes Hirte wrote:
> > >> config is attached
> > >
> > > Ok, I can reproduce the hang with your config but even with:
> > >
> > > $ grep MICROCODE .config
> > > # CONFIG_MICROCODE is not set
> > > # CONFIG_MICROCODE_INTEL_EARLY is not set
> > > # CONFIG_MICROCODE_AMD_EARLY is not set
> > >
> > > which means, it cannot be microcode-related.
> > >
> > > And I'd bet if you wait a minute (yep, it should be exactly 60
> > > seconds) the boot would probably continue. And if so, this is
> > > that 60 sec delay where the kernel tries to find firmware.
> > >
> > > Hmm...
> > 
> > I have the same problem: Booting 3.11-rc1 hangs after the line:
> > ACPI: Executed 3 blocks of module-level executable AML code
> > 
> > I bisected it down to the early microcode changes:
> > 757885e94a22bcc82beb9b1445c95218cb20ceab (the new early loading
> > implementation) and 6b3389ac21b5e557b957f1497d0ff22bf733e8c3 (small
> > fixup) completely fail to boot (No output beyond "Booting kernel") ,
> > from 275bbe2e299f1820ec8faa443d689469a9e6ecc5 ("Make
> > find_ucode_in_initrd() __init") I'm seeing this hang.
> > 
> > Just turning CONFIG_MICROCODE_EARLY off solves the problem: The
> > system now sucessfully boots 3.11-rc1.
> 
> Ok, I need to be able to reproduce that first - I wasn't that
> successful with Johannes' setup.

Strange, I've bisected to the same commit with the config I've send you.

> So, can you please send .config and how you're loading your microcode?
> Is it in the initrd or are you doing that later, how? Grub entry
> please.
> 
> Also, is it just plain v3.11-rc1 or with patches ontop?
> 
> Also, /proc/cpuinfo please.
>
> Thanks.

/proc/cpuinfo:

processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 16
model           : 6
model name      : AMD Athlon(tm) II P320 Dual-Core Processor
stepping        : 3
microcode       : 0x10000b6
cpu MHz         : 800.000
cache size      : 512 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 5
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext
fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl
nonstop_tsc extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm
extapic cr8_legacy abm sse4a 3dnowprefetch osvw ibs skinit wdt
nodeid_msr hw_pstate npt lbrv svm_lock nrip_save bogomips        :
4189.33 TLB size        : 1024 4K pages clflush size    : 64
cache_alignment : 64 address sizes   : 48 bits physical, 48 bits
virtual power management: ts ttp tm stc 100mhzsteps hwpstate

processor       : 1
vendor_id       : AuthenticAMD
cpu family      : 16
model           : 6
model name      : AMD Athlon(tm) II P320 Dual-Core Processor
stepping        : 3
microcode       : 0x10000b6
cpu MHz         : 800.000
cache size      : 512 KB
physical id     : 0
siblings        : 2
core id         : 1
cpu cores       : 2
apicid          : 1
initial apicid  : 1
fpu             : yes
fpu_exception   : yes
cpuid level     : 5
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext
fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl
nonstop_tsc extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm
extapic cr8_legacy abm sse4a 3dnowprefetch osvw ibs skinit wdt
nodeid_msr hw_pstate npt lbrv svm_lock nrip_save bogomips        :
4189.33 TLB size        : 1024 4K pages clflush size    : 64
cache_alignment : 64 address sizes   : 48 bits physical, 48 bits
virtual power management: ts ttp tm stc 100mhzsteps hwpstate


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2013-07-21 11:52 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-07-09 16:36 early microcode on amd is broken when no initramfs provided Johannes Hirte
2013-07-09 18:47 ` Borislav Petkov
     [not found]   ` <CAOPg7FsgstsjEpVVQERr6m0fYcSko0Q8PcDkq5XrRNX=2QVNmg@mail.gmail.com>
2013-07-10  3:59     ` Borislav Petkov
2013-07-10  7:30 ` Borislav Petkov
2013-07-11 21:05   ` Johannes Hirte
2013-07-16 17:00     ` Borislav Petkov
2013-07-20 19:01       ` Torsten Kaiser
2013-07-20 22:59         ` Borislav Petkov
2013-07-21  4:01           ` Torsten Kaiser
2013-07-21 11:53           ` Johannes Hirte

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).