From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60609) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dxL1k-0004oF-Cw for qemu-devel@nongnu.org; Wed, 27 Sep 2017 18:42:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dxL1i-0007MR-KT for qemu-devel@nongnu.org; Wed, 27 Sep 2017 18:42:00 -0400 MIME-Version: 1.0 Sender: alistair23@gmail.com In-Reply-To: <1d317e5b-9de9-9186-1c00-573ca96f3d25@tuxfamily.org> References: <1d317e5b-9de9-9186-1c00-573ca96f3d25@tuxfamily.org> From: Alistair Francis Date: Wed, 27 Sep 2017 15:41:26 -0700 Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH v1 3/8] hw: Replace fprintf(stderr, "*\n" with error_report() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Thomas Huth Cc: Alistair Francis , "qemu-devel@nongnu.org Developers" , Chris Wulff , "Michael S. Tsirkin" , Anthony Green , Mark Cave-Ayland , Markus Armbruster , Gerd Hoffmann , Marek Vasut , Stefano Stabellini , Jia Liu , qemu-block@nongnu.org, Magnus Damm , Alexander Graf , Christian Borntraeger , =?UTF-8?Q?Herv=C3=A9_Poussineau?= , Anthony Perard , "open list:X86" , Jason Wang , Artyom Tarasenko , Eduardo Habkost , Fabien Chouteau , Marcel Apfelbaum , qemu-arm , Jan Kiszka , Stefan Hajnoczi , Yongbok Kim , Stafford Horne , John Snow , Richard Henderson , Paul Burton , Cornelia Huck , Michael Walle , "open list:New World" , Paolo Bonzini , Aurelien Jarno On Mon, Sep 25, 2017 at 8:51 PM, Thomas Huth wrote: > On 26.09.2017 02:08, Alistair Francis wrote: >> Replace a large number of the fprintf(stderr, "*\n" calls with >> error_report(). The functions were renamed with these commands and then >> compiler issues where manually fixed. >> >> find ./* -type f -exec sed -i \ >> 'N;N;N;N;N;N;N;N;N;N;N;N; {s|fprintf(stderr, "\(.*\)\\n"\(.*\));|err= or_report("\1"\2);|Ig}' \ >> {} + >> find ./* -type f -exec sed -i \ >> 'N;N;N;N;N;N;N;N;N;N;N; {s|fprintf(stderr, "\(.*\)\\n"\(.*\));|error= _report("\1"\2);|Ig}' \ >> {} + >> find ./* -type f -exec sed -i \ >> 'N;N;N;N;N;N;N;N;N; {s|fprintf(stderr, "\(.*\)\\n"\(.*\));|error_rep= ort("\1"\2);|Ig}' \ >> {} + >> find ./* -type f -exec sed -i \ >> 'N;N;N;N;N;N;N;N; {s|fprintf(stderr, "\(.*\)\\n"\(.*\));|error_repor= t("\1"\2);|Ig}' \ >> {} + >> find ./* -type f -exec sed -i \ >> 'N;N;N;N;N;N;N; {s|fprintf(stderr, "\(.*\)\\n"\(.*\));|error_report(= "\1"\2);|Ig}' \ >> {} + >> find ./* -type f -exec sed -i \ >> 'N;N;N;N;N;N; {s|fprintf(stderr, "\(.*\)\\n"\(.*\));|error_report("\= 1"\2);|Ig}' \ >> {} + >> find ./* -type f -exec sed -i \ >> 'N;N;N;N;N; {s|fprintf(stderr, "\(.*\)\\n"\(.*\));|error_report("\1"= \2);|Ig}' \ >> {} + >> find ./* -type f -exec sed -i \ >> 'N;N;N;N; {s|fprintf(stderr, "\(.*\)\\n"\(.*\));|error_report("\1"\2= );|Ig}' \ >> {} + >> find ./* -type f -exec sed -i \ >> 'N;N;N; {s|fprintf(stderr, "\(.*\)\\n"\(.*\));|error_report("\1"\2);= |Ig}' \ >> {} + >> find ./* -type f -exec sed -i \ >> 'N;N; {s|fprintf(stderr, "\(.*\)\\n"\(.*\));|error_report("\1"\2);|I= g}' \ >> {} + >> find ./* -type f -exec sed -i \ >> 'N; {s|fprintf(stderr, "\(.*\)\\n"\(.*\));|error_report("\1"\2);|Ig}= ' \ >> {} + >> >> Some lines where then manually tweaked to pass checkpatch. >> >> Signed-off-by: Alistair Francis >> Cc: Andrzej Zaborowski >> Cc: Jan Kiszka >> Cc: Stefan Hajnoczi >> Cc: Paolo Bonzini >> Cc: Thomas Huth >> Cc: Gerd Hoffmann >> Cc: "Michael S. Tsirkin" >> Cc: Richard Henderson >> Cc: Eduardo Habkost >> Cc: Stefano Stabellini >> Cc: Anthony Perard >> Cc: John Snow >> Cc: Christian Borntraeger >> Cc: Cornelia Huck >> Cc: Alexander Graf >> Cc: Michael Walle >> Cc: Paul Burton >> Cc: Aurelien Jarno >> Cc: Yongbok Kim >> Cc: "Herv=C3=A9 Poussineau" >> Cc: Anthony Green >> Cc: Jason Wang >> Cc: Chris Wulff >> Cc: Marek Vasut >> Cc: Jia Liu >> Cc: Stafford Horne >> Cc: Marcel Apfelbaum >> Cc: Magnus Damm >> Cc: Fabien Chouteau >> Cc: Mark Cave-Ayland >> Cc: Artyom Tarasenko >> Cc: qemu-arm@nongnu.org >> Cc: qemu-block@nongnu.org >> Cc: xen-devel@lists.xenproject.org >> Cc: qemu-ppc@nongnu.org >> --- >> >> hw/arm/armv7m.c | 2 +- >> hw/arm/boot.c | 34 +++++++++---------- >> hw/arm/gumstix.c | 13 ++++---- >> hw/arm/mainstone.c | 7 ++-- >> hw/arm/musicpal.c | 2 +- >> hw/arm/omap1.c | 5 +-- >> hw/arm/omap2.c | 21 ++++++------ >> hw/arm/omap_sx1.c | 6 ++-- >> hw/arm/palm.c | 10 +++--- >> hw/arm/pxa2xx.c | 7 ++-- >> hw/arm/stellaris.c | 3 +- >> hw/arm/tosa.c | 17 +++++----- >> hw/arm/versatilepb.c | 2 +- >> hw/arm/vexpress.c | 8 ++--- >> hw/arm/z2.c | 6 ++-- >> hw/block/dataplane/virtio-blk.c | 6 ++-- >> hw/block/onenand.c | 8 ++--- >> hw/block/tc58128.c | 44 ++++++++++++------------- >> hw/bt/core.c | 15 +++++---- >> hw/bt/hci-csr.c | 17 +++++----- >> hw/bt/hci.c | 30 ++++++++--------- >> hw/bt/hid.c | 2 +- >> hw/bt/l2cap.c | 47 ++++++++++++++------------- >> hw/bt/sdp.c | 7 ++-- >> hw/char/exynos4210_uart.c | 6 ++-- >> hw/char/mcf_uart.c | 5 +-- >> hw/char/sh_serial.c | 9 +++--- >> hw/core/loader.c | 31 +++++++++--------- >> hw/core/ptimer.c | 7 ++-- >> hw/cris/axis_dev88.c | 3 +- >> hw/cris/boot.c | 5 +-- >> hw/display/blizzard.c | 20 ++++++------ >> hw/display/omap_dss.c | 14 ++++---- >> hw/display/pl110.c | 2 +- >> hw/display/pxa2xx_lcd.c | 2 +- >> hw/display/qxl-render.c | 7 ++-- >> hw/display/qxl.c | 10 +++--- >> hw/display/tc6393xb.c | 36 ++++++++++++--------- >> hw/display/virtio-gpu-3d.c | 4 +-- >> hw/display/vmware_vga.c | 22 ++++++------- >> hw/dma/omap_dma.c | 26 ++++++++------- >> hw/dma/soc_dma.c | 37 ++++++++++----------- >> hw/gpio/omap_gpio.c | 2 +- >> hw/i2c/omap_i2c.c | 10 +++--- >> hw/i386/kvm/apic.c | 9 +++--- >> hw/i386/kvm/clock.c | 7 ++-- >> hw/i386/kvm/i8254.c | 7 ++-- >> hw/i386/kvm/i8259.c | 5 +-- >> hw/i386/kvm/ioapic.c | 5 +-- >> hw/i386/multiboot.c | 21 ++++++------ >> hw/i386/pc.c | 18 +++++------ >> hw/i386/pc_piix.c | 2 +- >> hw/i386/pc_sysfw.c | 5 +-- >> hw/i386/xen/xen-hvm.c | 32 +++++++++--------- >> hw/i386/xen/xen-mapcache.c | 12 +++---- >> hw/i386/xen/xen_apic.c | 2 +- >> hw/ide/ahci.c | 6 ++-- >> hw/ide/core.c | 2 +- >> hw/input/lm832x.c | 6 ++-- >> hw/input/pckbd.c | 3 +- >> hw/input/pxa2xx_keypad.c | 2 +- >> hw/input/tsc2005.c | 17 +++++----- >> hw/input/tsc210x.c | 72 ++++++++++++++++++++--------------= ------- >> hw/input/virtio-input-hid.c | 14 ++++---- >> hw/input/virtio-input.c | 5 +-- >> hw/intc/arm_gic_kvm.c | 12 +++---- >> hw/intc/omap_intc.c | 4 +-- >> hw/intc/openpic.c | 7 ++-- >> hw/intc/openpic_kvm.c | 8 ++--- >> hw/intc/s390_flic_kvm.c | 4 +-- >> hw/ipmi/ipmi.c | 1 + >> hw/ipmi/ipmi_bmc_extern.c | 5 +-- >> hw/isa/isa-bus.c | 7 ++-- >> hw/lm32/lm32_boards.c | 5 +-- >> hw/lm32/milkymist.c | 5 +-- >> hw/m68k/an5206.c | 4 +-- >> hw/m68k/mcf5206.c | 3 +- >> hw/m68k/mcf5208.c | 7 ++-- >> hw/microblaze/boot.c | 2 +- >> hw/mips/boston.c | 4 +-- >> hw/mips/mips_fulong2e.c | 4 +-- >> hw/mips/mips_jazz.c | 4 +-- >> hw/mips/mips_malta.c | 4 +-- >> hw/mips/mips_mipssim.c | 4 +-- >> hw/mips/mips_r4k.c | 6 ++-- >> hw/misc/a9scu.c | 3 +- >> hw/misc/omap_gpmc.c | 11 ++++--- >> hw/misc/omap_l4.c | 5 +-- >> hw/misc/omap_sdrc.c | 3 +- >> hw/misc/vmport.c | 2 +- >> hw/moxie/moxiesim.c | 7 ++-- >> hw/net/fsl_etsec/etsec.c | 2 +- >> hw/net/pcnet.c | 2 +- >> hw/net/smc91c111.c | 5 +-- >> hw/net/vhost_net.c | 16 ++++----- >> hw/nios2/boot.c | 2 +- >> hw/nvram/eeprom93xx.c | 5 +-- >> hw/nvram/fw_cfg.c | 4 +-- >> hw/openrisc/openrisc_sim.c | 3 +- >> hw/pci-host/bonito.c | 6 ++-- >> hw/pci/pci.c | 10 +++--- >> hw/ppc/e500.c | 20 ++++++------ >> hw/ppc/mac_newworld.c | 2 +- >> hw/ppc/mac_oldworld.c | 2 +- >> hw/ppc/mpc8544_guts.c | 5 +-- >> hw/ppc/ppc405_boards.c | 8 ++--- >> hw/ppc/ppc440_bamboo.c | 19 +++++------ >> hw/ppc/ppc4xx_pci.c | 3 +- >> hw/ppc/prep.c | 4 +-- >> hw/ppc/virtex_ml507.c | 4 +-- >> hw/s390x/virtio-ccw.c | 2 +- >> hw/scsi/lsi53c895a.c | 4 +-- >> hw/scsi/spapr_vscsi.c | 49 ++++++++++++++-------------- >> hw/scsi/virtio-scsi-dataplane.c | 6 ++-- >> hw/sd/pl181.c | 5 +-- >> hw/sd/sd.c | 14 ++++---- >> hw/sh4/r2d.c | 9 +++--- >> hw/sh4/sh7750.c | 64 ++++++++++++++++++----------------= -- >> hw/sparc/leon3.c | 9 +++--- >> hw/sparc/sun4m.c | 8 ++--- >> hw/sparc64/niagara.c | 2 +- >> hw/sparc64/sun4u.c | 9 +++--- >> hw/ssi/omap_spi.c | 5 +-- >> hw/timer/omap_gptimer.c | 11 ++++--- >> hw/timer/twl92230.c | 2 +- >> hw/timer/xilinx_timer.c | 8 ++--- >> hw/usb/core.c | 15 +++++---- >> hw/usb/desc.c | 4 +-- >> hw/usb/dev-audio.c | 29 +++++++++-------- >> hw/usb/dev-bluetooth.c | 4 +-- >> hw/usb/dev-mtp.c | 9 +++--- >> hw/usb/dev-network.c | 20 ++++++------ >> hw/usb/hcd-ehci.c | 32 +++++++++--------- >> hw/usb/hcd-musb.c | 4 +-- >> hw/usb/hcd-xhci.c | 3 +- >> hw/usb/host-legacy.c | 2 +- >> hw/watchdog/watchdog.c | 9 +++--- >> hw/watchdog/wdt_i6300esb.c | 8 +++-- >> hw/xen/xen-common.c | 10 +++--- >> hw/xen/xen_pt.c | 4 +-- >> hw/xenpv/xen_domainbuild.c | 24 +++++++------- >> hw/xenpv/xen_machine_pv.c | 8 ++--- >> 142 files changed, 769 insertions(+), 705 deletions(-) > > This patch is IMHO way to big! Can you please break this down into the > individual hw/* subsystems, so that people who are familiar with a > certain subsystem have a chance to review just their part? Thanks. Ok, will do in v2. Thanks, Alistair > > Thomas From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alistair Francis Subject: Re: [Qemu-devel] [PATCH v1 3/8] hw: Replace fprintf(stderr, "*\n" with error_report() Date: Wed, 27 Sep 2017 15:41:26 -0700 Message-ID: References: <1d317e5b-9de9-9186-1c00-573ca96f3d25@tuxfamily.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dxL1j-0005mU-Dn for xen-devel@lists.xenproject.org; Wed, 27 Sep 2017 22:41:59 +0000 Received: by mail-wr0-f194.google.com with SMTP id k10so3610356wrk.3 for ; Wed, 27 Sep 2017 15:41:57 -0700 (PDT) In-Reply-To: <1d317e5b-9de9-9186-1c00-573ca96f3d25@tuxfamily.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Thomas Huth Cc: Cornelia Huck , "Michael S. Tsirkin" , Anthony Green , Mark Cave-Ayland , "qemu-devel@nongnu.org Developers" , Markus Armbruster , Gerd Hoffmann , Marek Vasut , Stefano Stabellini , Jia Liu , qemu-block@nongnu.org, Magnus Damm , Alexander Graf , Christian Borntraeger , =?UTF-8?Q?Herv=C3=A9_Poussineau?= , Anthony Perard , "open list:X86" , Jason Wang , Artyom Tarasenko , Eduardo Habkost , Fabien Chouteau , Alistair Francis List-Id: xen-devel@lists.xenproject.org T24gTW9uLCBTZXAgMjUsIDIwMTcgYXQgODo1MSBQTSwgVGhvbWFzIEh1dGggPGh1dGhAdHV4ZmFt aWx5Lm9yZz4gd3JvdGU6Cj4gT24gMjYuMDkuMjAxNyAwMjowOCwgQWxpc3RhaXIgRnJhbmNpcyB3 cm90ZToKPj4gUmVwbGFjZSBhIGxhcmdlIG51bWJlciBvZiB0aGUgZnByaW50ZihzdGRlcnIsICIq XG4iIGNhbGxzIHdpdGgKPj4gZXJyb3JfcmVwb3J0KCkuIFRoZSBmdW5jdGlvbnMgd2VyZSByZW5h bWVkIHdpdGggdGhlc2UgY29tbWFuZHMgYW5kIHRoZW4KPj4gY29tcGlsZXIgaXNzdWVzIHdoZXJl IG1hbnVhbGx5IGZpeGVkLgo+Pgo+PiBmaW5kIC4vKiAtdHlwZSBmIC1leGVjIHNlZCAtaSBcCj4+ ICAgICAnTjtOO047TjtOO047TjtOO047TjtOO047IHtzfGZwcmludGYoc3RkZXJyLCAiXCguKlwp XFxuIlwoLipcKSk7fGVycm9yX3JlcG9ydCgiXDEiXDIpO3xJZ30nIFwKPj4gICAgIHt9ICsKPj4g ZmluZCAuLyogLXR5cGUgZiAtZXhlYyBzZWQgLWkgXAo+PiAgICAgJ047TjtOO047TjtOO047TjtO O047Tjsge3N8ZnByaW50ZihzdGRlcnIsICJcKC4qXClcXG4iXCguKlwpKTt8ZXJyb3JfcmVwb3J0 KCJcMSJcMik7fElnfScgXAo+PiAgICAge30gKwo+PiBmaW5kIC4vKiAtdHlwZSBmIC1leGVjIHNl ZCAtaSBcCj4+ICAgICAnTjtOO047TjtOO047TjtOO047IHtzfGZwcmludGYoc3RkZXJyLCAiXCgu KlwpXFxuIlwoLipcKSk7fGVycm9yX3JlcG9ydCgiXDEiXDIpO3xJZ30nIFwKPj4gICAgIHt9ICsK Pj4gZmluZCAuLyogLXR5cGUgZiAtZXhlYyBzZWQgLWkgXAo+PiAgICAgJ047TjtOO047TjtOO047 Tjsge3N8ZnByaW50ZihzdGRlcnIsICJcKC4qXClcXG4iXCguKlwpKTt8ZXJyb3JfcmVwb3J0KCJc MSJcMik7fElnfScgXAo+PiAgICAge30gKwo+PiBmaW5kIC4vKiAtdHlwZSBmIC1leGVjIHNlZCAt aSBcCj4+ICAgICAnTjtOO047TjtOO047Tjsge3N8ZnByaW50ZihzdGRlcnIsICJcKC4qXClcXG4i XCguKlwpKTt8ZXJyb3JfcmVwb3J0KCJcMSJcMik7fElnfScgXAo+PiAgICAge30gKwo+PiBmaW5k IC4vKiAtdHlwZSBmIC1leGVjIHNlZCAtaSBcCj4+ICAgICAnTjtOO047TjtOO047IHtzfGZwcmlu dGYoc3RkZXJyLCAiXCguKlwpXFxuIlwoLipcKSk7fGVycm9yX3JlcG9ydCgiXDEiXDIpO3xJZ30n IFwKPj4gICAgIHt9ICsKPj4gZmluZCAuLyogLXR5cGUgZiAtZXhlYyBzZWQgLWkgXAo+PiAgICAg J047TjtOO047Tjsge3N8ZnByaW50ZihzdGRlcnIsICJcKC4qXClcXG4iXCguKlwpKTt8ZXJyb3Jf cmVwb3J0KCJcMSJcMik7fElnfScgXAo+PiAgICAge30gKwo+PiBmaW5kIC4vKiAtdHlwZSBmIC1l eGVjIHNlZCAtaSBcCj4+ICAgICAnTjtOO047Tjsge3N8ZnByaW50ZihzdGRlcnIsICJcKC4qXClc XG4iXCguKlwpKTt8ZXJyb3JfcmVwb3J0KCJcMSJcMik7fElnfScgXAo+PiAgICAge30gKwo+PiBm aW5kIC4vKiAtdHlwZSBmIC1leGVjIHNlZCAtaSBcCj4+ICAgICAnTjtOO047IHtzfGZwcmludGYo c3RkZXJyLCAiXCguKlwpXFxuIlwoLipcKSk7fGVycm9yX3JlcG9ydCgiXDEiXDIpO3xJZ30nIFwK Pj4gICAgIHt9ICsKPj4gZmluZCAuLyogLXR5cGUgZiAtZXhlYyBzZWQgLWkgXAo+PiAgICAgJ047 Tjsge3N8ZnByaW50ZihzdGRlcnIsICJcKC4qXClcXG4iXCguKlwpKTt8ZXJyb3JfcmVwb3J0KCJc MSJcMik7fElnfScgXAo+PiAgICAge30gKwo+PiBmaW5kIC4vKiAtdHlwZSBmIC1leGVjIHNlZCAt aSBcCj4+ICAgICAnTjsge3N8ZnByaW50ZihzdGRlcnIsICJcKC4qXClcXG4iXCguKlwpKTt8ZXJy b3JfcmVwb3J0KCJcMSJcMik7fElnfScgXAo+PiAgICAge30gKwo+Pgo+PiBTb21lIGxpbmVzIHdo ZXJlIHRoZW4gbWFudWFsbHkgdHdlYWtlZCB0byBwYXNzIGNoZWNrcGF0Y2guCj4+Cj4+IFNpZ25l ZC1vZmYtYnk6IEFsaXN0YWlyIEZyYW5jaXMgPGFsaXN0YWlyLmZyYW5jaXNAeGlsaW54LmNvbT4K Pj4gQ2M6IEFuZHJ6ZWogWmFib3Jvd3NraSA8YmFscm9nZ0BnbWFpbC5jb20+Cj4+IENjOiBKYW4g S2lzemthIDxqYW4ua2lzemthQHdlYi5kZT4KPj4gQ2M6IFN0ZWZhbiBIYWpub2N6aSA8c3RlZmFu aGFAcmVkaGF0LmNvbT4KPj4gQ2M6IFBhb2xvIEJvbnppbmkgPHBib256aW5pQHJlZGhhdC5jb20+ Cj4+IENjOiBUaG9tYXMgSHV0aCA8aHV0aEB0dXhmYW1pbHkub3JnPgo+PiBDYzogR2VyZCBIb2Zm bWFubiA8a3JheGVsQHJlZGhhdC5jb20+Cj4+IENjOiAiTWljaGFlbCBTLiBUc2lya2luIiA8bXN0 QHJlZGhhdC5jb20+Cj4+IENjOiBSaWNoYXJkIEhlbmRlcnNvbiA8cnRoQHR3aWRkbGUubmV0Pgo+ PiBDYzogRWR1YXJkbyBIYWJrb3N0IDxlaGFia29zdEByZWRoYXQuY29tPgo+PiBDYzogU3RlZmFu byBTdGFiZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPgo+PiBDYzogQW50aG9ueSBQZXJh cmQgPGFudGhvbnkucGVyYXJkQGNpdHJpeC5jb20+Cj4+IENjOiBKb2huIFNub3cgPGpzbm93QHJl ZGhhdC5jb20+Cj4+IENjOiBDaHJpc3RpYW4gQm9ybnRyYWVnZXIgPGJvcm50cmFlZ2VyQGRlLmli bS5jb20+Cj4+IENjOiBDb3JuZWxpYSBIdWNrIDxjb2h1Y2tAcmVkaGF0LmNvbT4KPj4gQ2M6IEFs ZXhhbmRlciBHcmFmIDxhZ3JhZkBzdXNlLmRlPgo+PiBDYzogTWljaGFlbCBXYWxsZSA8bWljaGFl bEB3YWxsZS5jYz4KPj4gQ2M6IFBhdWwgQnVydG9uIDxwYXVsLmJ1cnRvbkBpbWd0ZWMuY29tPgo+ PiBDYzogQXVyZWxpZW4gSmFybm8gPGF1cmVsaWVuQGF1cmVsMzIubmV0Pgo+PiBDYzogWW9uZ2Jv ayBLaW0gPHlvbmdib2sua2ltQGltZ3RlYy5jb20+Cj4+IENjOiAiSGVydsOpIFBvdXNzaW5lYXUi IDxocG91c3NpbkByZWFjdG9zLm9yZz4KPj4gQ2M6IEFudGhvbnkgR3JlZW4gPGdyZWVuQG1veGll bG9naWMuY29tPgo+PiBDYzogSmFzb24gV2FuZyA8amFzb3dhbmdAcmVkaGF0LmNvbT4KPj4gQ2M6 IENocmlzIFd1bGZmIDxjcnd1bGZmQGdtYWlsLmNvbT4KPj4gQ2M6IE1hcmVrIFZhc3V0IDxtYXJl eEBkZW54LmRlPgo+PiBDYzogSmlhIExpdSA8cHJvbGpjQGdtYWlsLmNvbT4KPj4gQ2M6IFN0YWZm b3JkIEhvcm5lIDxzaG9ybmVAZ21haWwuY29tPgo+PiBDYzogTWFyY2VsIEFwZmVsYmF1bSA8bWFy Y2VsQHJlZGhhdC5jb20+Cj4+IENjOiBNYWdudXMgRGFtbSA8bWFnbnVzLmRhbW1AZ21haWwuY29t Pgo+PiBDYzogRmFiaWVuIENob3V0ZWF1IDxjaG91dGVhdUBhZGFjb3JlLmNvbT4KPj4gQ2M6IE1h cmsgQ2F2ZS1BeWxhbmQgPG1hcmsuY2F2ZS1heWxhbmRAaWxhbmRlLmNvLnVrPgo+PiBDYzogQXJ0 eW9tIFRhcmFzZW5rbyA8YXRhcjRxZW11QGdtYWlsLmNvbT4KPj4gQ2M6IHFlbXUtYXJtQG5vbmdu dS5vcmcKPj4gQ2M6IHFlbXUtYmxvY2tAbm9uZ251Lm9yZwo+PiBDYzogeGVuLWRldmVsQGxpc3Rz LnhlbnByb2plY3Qub3JnCj4+IENjOiBxZW11LXBwY0Bub25nbnUub3JnCj4+IC0tLQo+Pgo+PiAg aHcvYXJtL2FybXY3bS5jICAgICAgICAgICAgICAgICB8ICAyICstCj4+ICBody9hcm0vYm9vdC5j ICAgICAgICAgICAgICAgICAgIHwgMzQgKysrKysrKysrLS0tLS0tLS0tLQo+PiAgaHcvYXJtL2d1 bXN0aXguYyAgICAgICAgICAgICAgICB8IDEzICsrKystLS0tCj4+ICBody9hcm0vbWFpbnN0b25l LmMgICAgICAgICAgICAgIHwgIDcgKystLQo+PiAgaHcvYXJtL211c2ljcGFsLmMgICAgICAgICAg ICAgICB8ICAyICstCj4+ICBody9hcm0vb21hcDEuYyAgICAgICAgICAgICAgICAgIHwgIDUgKy0t Cj4+ICBody9hcm0vb21hcDIuYyAgICAgICAgICAgICAgICAgIHwgMjEgKysrKysrLS0tLS0tCj4+ ICBody9hcm0vb21hcF9zeDEuYyAgICAgICAgICAgICAgIHwgIDYgKystLQo+PiAgaHcvYXJtL3Bh bG0uYyAgICAgICAgICAgICAgICAgICB8IDEwICsrKy0tLQo+PiAgaHcvYXJtL3B4YTJ4eC5jICAg ICAgICAgICAgICAgICB8ICA3ICsrLS0KPj4gIGh3L2FybS9zdGVsbGFyaXMuYyAgICAgICAgICAg ICAgfCAgMyArLQo+PiAgaHcvYXJtL3Rvc2EuYyAgICAgICAgICAgICAgICAgICB8IDE3ICsrKysr LS0tLS0KPj4gIGh3L2FybS92ZXJzYXRpbGVwYi5jICAgICAgICAgICAgfCAgMiArLQo+PiAgaHcv YXJtL3ZleHByZXNzLmMgICAgICAgICAgICAgICB8ICA4ICsrLS0tCj4+ICBody9hcm0vejIuYyAg ICAgICAgICAgICAgICAgICAgIHwgIDYgKystLQo+PiAgaHcvYmxvY2svZGF0YXBsYW5lL3ZpcnRp by1ibGsuYyB8ICA2ICsrLS0KPj4gIGh3L2Jsb2NrL29uZW5hbmQuYyAgICAgICAgICAgICAgfCAg OCArKy0tLQo+PiAgaHcvYmxvY2svdGM1ODEyOC5jICAgICAgICAgICAgICB8IDQ0ICsrKysrKysr KysrKy0tLS0tLS0tLS0tLS0KPj4gIGh3L2J0L2NvcmUuYyAgICAgICAgICAgICAgICAgICAgfCAx NSArKysrKy0tLS0KPj4gIGh3L2J0L2hjaS1jc3IuYyAgICAgICAgICAgICAgICAgfCAxNyArKysr Ky0tLS0tCj4+ICBody9idC9oY2kuYyAgICAgICAgICAgICAgICAgICAgIHwgMzAgKysrKysrKyst LS0tLS0tLS0KPj4gIGh3L2J0L2hpZC5jICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQo+PiAg aHcvYnQvbDJjYXAuYyAgICAgICAgICAgICAgICAgICB8IDQ3ICsrKysrKysrKysrKysrLS0tLS0t LS0tLS0tLQo+PiAgaHcvYnQvc2RwLmMgICAgICAgICAgICAgICAgICAgICB8ICA3ICsrLS0KPj4g IGh3L2NoYXIvZXh5bm9zNDIxMF91YXJ0LmMgICAgICAgfCAgNiArKy0tCj4+ICBody9jaGFyL21j Zl91YXJ0LmMgICAgICAgICAgICAgIHwgIDUgKy0tCj4+ICBody9jaGFyL3NoX3NlcmlhbC5jICAg ICAgICAgICAgIHwgIDkgKysrLS0tCj4+ICBody9jb3JlL2xvYWRlci5jICAgICAgICAgICAgICAg IHwgMzEgKysrKysrKysrLS0tLS0tLS0tCj4+ICBody9jb3JlL3B0aW1lci5jICAgICAgICAgICAg ICAgIHwgIDcgKystLQo+PiAgaHcvY3Jpcy9heGlzX2Rldjg4LmMgICAgICAgICAgICB8ICAzICst Cj4+ICBody9jcmlzL2Jvb3QuYyAgICAgICAgICAgICAgICAgIHwgIDUgKy0tCj4+ICBody9kaXNw bGF5L2JsaXp6YXJkLmMgICAgICAgICAgIHwgMjAgKysrKysrLS0tLS0tCj4+ICBody9kaXNwbGF5 L29tYXBfZHNzLmMgICAgICAgICAgIHwgMTQgKysrKy0tLS0KPj4gIGh3L2Rpc3BsYXkvcGwxMTAu YyAgICAgICAgICAgICAgfCAgMiArLQo+PiAgaHcvZGlzcGxheS9weGEyeHhfbGNkLmMgICAgICAg ICB8ICAyICstCj4+ICBody9kaXNwbGF5L3F4bC1yZW5kZXIuYyAgICAgICAgIHwgIDcgKystLQo+ PiAgaHcvZGlzcGxheS9xeGwuYyAgICAgICAgICAgICAgICB8IDEwICsrKy0tLQo+PiAgaHcvZGlz cGxheS90YzYzOTN4Yi5jICAgICAgICAgICB8IDM2ICsrKysrKysrKysrKy0tLS0tLS0tLQo+PiAg aHcvZGlzcGxheS92aXJ0aW8tZ3B1LTNkLmMgICAgICB8ICA0ICstLQo+PiAgaHcvZGlzcGxheS92 bXdhcmVfdmdhLmMgICAgICAgICB8IDIyICsrKysrKy0tLS0tLS0KPj4gIGh3L2RtYS9vbWFwX2Rt YS5jICAgICAgICAgICAgICAgfCAyNiArKysrKysrKy0tLS0tLS0KPj4gIGh3L2RtYS9zb2NfZG1h LmMgICAgICAgICAgICAgICAgfCAzNyArKysrKysrKysrLS0tLS0tLS0tLS0KPj4gIGh3L2dwaW8v b21hcF9ncGlvLmMgICAgICAgICAgICAgfCAgMiArLQo+PiAgaHcvaTJjL29tYXBfaTJjLmMgICAg ICAgICAgICAgICB8IDEwICsrKy0tLQo+PiAgaHcvaTM4Ni9rdm0vYXBpYy5jICAgICAgICAgICAg ICB8ICA5ICsrKy0tLQo+PiAgaHcvaTM4Ni9rdm0vY2xvY2suYyAgICAgICAgICAgICB8ICA3ICsr LS0KPj4gIGh3L2kzODYva3ZtL2k4MjU0LmMgICAgICAgICAgICAgfCAgNyArKy0tCj4+ICBody9p Mzg2L2t2bS9pODI1OS5jICAgICAgICAgICAgIHwgIDUgKy0tCj4+ICBody9pMzg2L2t2bS9pb2Fw aWMuYyAgICAgICAgICAgIHwgIDUgKy0tCj4+ICBody9pMzg2L211bHRpYm9vdC5jICAgICAgICAg ICAgIHwgMjEgKysrKysrLS0tLS0tCj4+ICBody9pMzg2L3BjLmMgICAgICAgICAgICAgICAgICAg IHwgMTggKysrKystLS0tLS0KPj4gIGh3L2kzODYvcGNfcGlpeC5jICAgICAgICAgICAgICAgfCAg MiArLQo+PiAgaHcvaTM4Ni9wY19zeXNmdy5jICAgICAgICAgICAgICB8ICA1ICstLQo+PiAgaHcv aTM4Ni94ZW4veGVuLWh2bS5jICAgICAgICAgICB8IDMyICsrKysrKysrKy0tLS0tLS0tLQo+PiAg aHcvaTM4Ni94ZW4veGVuLW1hcGNhY2hlLmMgICAgICB8IDEyICsrKy0tLS0KPj4gIGh3L2kzODYv eGVuL3hlbl9hcGljLmMgICAgICAgICAgfCAgMiArLQo+PiAgaHcvaWRlL2FoY2kuYyAgICAgICAg ICAgICAgICAgICB8ICA2ICsrLS0KPj4gIGh3L2lkZS9jb3JlLmMgICAgICAgICAgICAgICAgICAg fCAgMiArLQo+PiAgaHcvaW5wdXQvbG04MzJ4LmMgICAgICAgICAgICAgICB8ICA2ICsrLS0KPj4g IGh3L2lucHV0L3Bja2JkLmMgICAgICAgICAgICAgICAgfCAgMyArLQo+PiAgaHcvaW5wdXQvcHhh Mnh4X2tleXBhZC5jICAgICAgICB8ICAyICstCj4+ICBody9pbnB1dC90c2MyMDA1LmMgICAgICAg ICAgICAgIHwgMTcgKysrKystLS0tLQo+PiAgaHcvaW5wdXQvdHNjMjEweC5jICAgICAgICAgICAg ICB8IDcyICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4+ICBody9p bnB1dC92aXJ0aW8taW5wdXQtaGlkLmMgICAgIHwgMTQgKysrKy0tLS0KPj4gIGh3L2lucHV0L3Zp cnRpby1pbnB1dC5jICAgICAgICAgfCAgNSArLS0KPj4gIGh3L2ludGMvYXJtX2dpY19rdm0uYyAg ICAgICAgICAgfCAxMiArKystLS0tCj4+ICBody9pbnRjL29tYXBfaW50Yy5jICAgICAgICAgICAg IHwgIDQgKy0tCj4+ICBody9pbnRjL29wZW5waWMuYyAgICAgICAgICAgICAgIHwgIDcgKystLQo+ PiAgaHcvaW50Yy9vcGVucGljX2t2bS5jICAgICAgICAgICB8ICA4ICsrLS0tCj4+ICBody9pbnRj L3MzOTBfZmxpY19rdm0uYyAgICAgICAgIHwgIDQgKy0tCj4+ICBody9pcG1pL2lwbWkuYyAgICAg ICAgICAgICAgICAgIHwgIDEgKwo+PiAgaHcvaXBtaS9pcG1pX2JtY19leHRlcm4uYyAgICAgICB8 ICA1ICstLQo+PiAgaHcvaXNhL2lzYS1idXMuYyAgICAgICAgICAgICAgICB8ICA3ICsrLS0KPj4g IGh3L2xtMzIvbG0zMl9ib2FyZHMuYyAgICAgICAgICAgfCAgNSArLS0KPj4gIGh3L2xtMzIvbWls a3ltaXN0LmMgICAgICAgICAgICAgfCAgNSArLS0KPj4gIGh3L202OGsvYW41MjA2LmMgICAgICAg ICAgICAgICAgfCAgNCArLS0KPj4gIGh3L202OGsvbWNmNTIwNi5jICAgICAgICAgICAgICAgfCAg MyArLQo+PiAgaHcvbTY4ay9tY2Y1MjA4LmMgICAgICAgICAgICAgICB8ICA3ICsrLS0KPj4gIGh3 L21pY3JvYmxhemUvYm9vdC5jICAgICAgICAgICAgfCAgMiArLQo+PiAgaHcvbWlwcy9ib3N0b24u YyAgICAgICAgICAgICAgICB8ICA0ICstLQo+PiAgaHcvbWlwcy9taXBzX2Z1bG9uZzJlLmMgICAg ICAgICB8ICA0ICstLQo+PiAgaHcvbWlwcy9taXBzX2phenouYyAgICAgICAgICAgICB8ICA0ICst LQo+PiAgaHcvbWlwcy9taXBzX21hbHRhLmMgICAgICAgICAgICB8ICA0ICstLQo+PiAgaHcvbWlw cy9taXBzX21pcHNzaW0uYyAgICAgICAgICB8ICA0ICstLQo+PiAgaHcvbWlwcy9taXBzX3I0ay5j ICAgICAgICAgICAgICB8ICA2ICsrLS0KPj4gIGh3L21pc2MvYTlzY3UuYyAgICAgICAgICAgICAg ICAgfCAgMyArLQo+PiAgaHcvbWlzYy9vbWFwX2dwbWMuYyAgICAgICAgICAgICB8IDExICsrKyst LS0KPj4gIGh3L21pc2Mvb21hcF9sNC5jICAgICAgICAgICAgICAgfCAgNSArLS0KPj4gIGh3L21p c2Mvb21hcF9zZHJjLmMgICAgICAgICAgICAgfCAgMyArLQo+PiAgaHcvbWlzYy92bXBvcnQuYyAg ICAgICAgICAgICAgICB8ICAyICstCj4+ICBody9tb3hpZS9tb3hpZXNpbS5jICAgICAgICAgICAg IHwgIDcgKystLQo+PiAgaHcvbmV0L2ZzbF9ldHNlYy9ldHNlYy5jICAgICAgICB8ICAyICstCj4+ ICBody9uZXQvcGNuZXQuYyAgICAgICAgICAgICAgICAgIHwgIDIgKy0KPj4gIGh3L25ldC9zbWM5 MWMxMTEuYyAgICAgICAgICAgICAgfCAgNSArLS0KPj4gIGh3L25ldC92aG9zdF9uZXQuYyAgICAg ICAgICAgICAgfCAxNiArKysrLS0tLS0KPj4gIGh3L25pb3MyL2Jvb3QuYyAgICAgICAgICAgICAg ICAgfCAgMiArLQo+PiAgaHcvbnZyYW0vZWVwcm9tOTN4eC5jICAgICAgICAgICB8ICA1ICstLQo+ PiAgaHcvbnZyYW0vZndfY2ZnLmMgICAgICAgICAgICAgICB8ICA0ICstLQo+PiAgaHcvb3BlbnJp c2Mvb3BlbnJpc2Nfc2ltLmMgICAgICB8ICAzICstCj4+ICBody9wY2ktaG9zdC9ib25pdG8uYyAg ICAgICAgICAgIHwgIDYgKystLQo+PiAgaHcvcGNpL3BjaS5jICAgICAgICAgICAgICAgICAgICB8 IDEwICsrKy0tLQo+PiAgaHcvcHBjL2U1MDAuYyAgICAgICAgICAgICAgICAgICB8IDIwICsrKysr Ky0tLS0tLQo+PiAgaHcvcHBjL21hY19uZXd3b3JsZC5jICAgICAgICAgICB8ICAyICstCj4+ICBo dy9wcGMvbWFjX29sZHdvcmxkLmMgICAgICAgICAgIHwgIDIgKy0KPj4gIGh3L3BwYy9tcGM4NTQ0 X2d1dHMuYyAgICAgICAgICAgfCAgNSArLS0KPj4gIGh3L3BwYy9wcGM0MDVfYm9hcmRzLmMgICAg ICAgICAgfCAgOCArKy0tLQo+PiAgaHcvcHBjL3BwYzQ0MF9iYW1ib28uYyAgICAgICAgICB8IDE5 ICsrKysrLS0tLS0tCj4+ICBody9wcGMvcHBjNHh4X3BjaS5jICAgICAgICAgICAgIHwgIDMgKy0K Pj4gIGh3L3BwYy9wcmVwLmMgICAgICAgICAgICAgICAgICAgfCAgNCArLS0KPj4gIGh3L3BwYy92 aXJ0ZXhfbWw1MDcuYyAgICAgICAgICAgfCAgNCArLS0KPj4gIGh3L3MzOTB4L3ZpcnRpby1jY3cu YyAgICAgICAgICAgfCAgMiArLQo+PiAgaHcvc2NzaS9sc2k1M2M4OTVhLmMgICAgICAgICAgICB8 ICA0ICstLQo+PiAgaHcvc2NzaS9zcGFwcl92c2NzaS5jICAgICAgICAgICB8IDQ5ICsrKysrKysr KysrKysrLS0tLS0tLS0tLS0tLS0KPj4gIGh3L3Njc2kvdmlydGlvLXNjc2ktZGF0YXBsYW5lLmMg fCAgNiArKy0tCj4+ICBody9zZC9wbDE4MS5jICAgICAgICAgICAgICAgICAgIHwgIDUgKy0tCj4+ ICBody9zZC9zZC5jICAgICAgICAgICAgICAgICAgICAgIHwgMTQgKysrKy0tLS0KPj4gIGh3L3No NC9yMmQuYyAgICAgICAgICAgICAgICAgICAgfCAgOSArKystLS0KPj4gIGh3L3NoNC9zaDc3NTAu YyAgICAgICAgICAgICAgICAgfCA2NCArKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0t LS0KPj4gIGh3L3NwYXJjL2xlb24zLmMgICAgICAgICAgICAgICAgfCAgOSArKystLS0KPj4gIGh3 L3NwYXJjL3N1bjRtLmMgICAgICAgICAgICAgICAgfCAgOCArKy0tLQo+PiAgaHcvc3BhcmM2NC9u aWFnYXJhLmMgICAgICAgICAgICB8ICAyICstCj4+ICBody9zcGFyYzY0L3N1bjR1LmMgICAgICAg ICAgICAgIHwgIDkgKysrLS0tCj4+ICBody9zc2kvb21hcF9zcGkuYyAgICAgICAgICAgICAgIHwg IDUgKy0tCj4+ICBody90aW1lci9vbWFwX2dwdGltZXIuYyAgICAgICAgIHwgMTEgKysrKy0tLQo+ PiAgaHcvdGltZXIvdHdsOTIyMzAuYyAgICAgICAgICAgICB8ICAyICstCj4+ICBody90aW1lci94 aWxpbnhfdGltZXIuYyAgICAgICAgIHwgIDggKystLS0KPj4gIGh3L3VzYi9jb3JlLmMgICAgICAg ICAgICAgICAgICAgfCAxNSArKysrKy0tLS0KPj4gIGh3L3VzYi9kZXNjLmMgICAgICAgICAgICAg ICAgICAgfCAgNCArLS0KPj4gIGh3L3VzYi9kZXYtYXVkaW8uYyAgICAgICAgICAgICAgfCAyOSAr KysrKysrKystLS0tLS0tLQo+PiAgaHcvdXNiL2Rldi1ibHVldG9vdGguYyAgICAgICAgICB8ICA0 ICstLQo+PiAgaHcvdXNiL2Rldi1tdHAuYyAgICAgICAgICAgICAgICB8ICA5ICsrKy0tLQo+PiAg aHcvdXNiL2Rldi1uZXR3b3JrLmMgICAgICAgICAgICB8IDIwICsrKysrKy0tLS0tLQo+PiAgaHcv dXNiL2hjZC1laGNpLmMgICAgICAgICAgICAgICB8IDMyICsrKysrKysrKy0tLS0tLS0tLQo+PiAg aHcvdXNiL2hjZC1tdXNiLmMgICAgICAgICAgICAgICB8ICA0ICstLQo+PiAgaHcvdXNiL2hjZC14 aGNpLmMgICAgICAgICAgICAgICB8ICAzICstCj4+ICBody91c2IvaG9zdC1sZWdhY3kuYyAgICAg ICAgICAgIHwgIDIgKy0KPj4gIGh3L3dhdGNoZG9nL3dhdGNoZG9nLmMgICAgICAgICAgfCAgOSAr KystLS0KPj4gIGh3L3dhdGNoZG9nL3dkdF9pNjMwMGVzYi5jICAgICAgfCAgOCArKystLQo+PiAg aHcveGVuL3hlbi1jb21tb24uYyAgICAgICAgICAgICB8IDEwICsrKy0tLQo+PiAgaHcveGVuL3hl bl9wdC5jICAgICAgICAgICAgICAgICB8ICA0ICstLQo+PiAgaHcveGVucHYveGVuX2RvbWFpbmJ1 aWxkLmMgICAgICB8IDI0ICsrKysrKystLS0tLS0tCj4+ICBody94ZW5wdi94ZW5fbWFjaGluZV9w di5jICAgICAgIHwgIDggKystLS0KPj4gIDE0MiBmaWxlcyBjaGFuZ2VkLCA3NjkgaW5zZXJ0aW9u cygrKSwgNzA1IGRlbGV0aW9ucygtKQo+Cj4gVGhpcyBwYXRjaCBpcyBJTUhPIHdheSB0byBiaWch IENhbiB5b3UgcGxlYXNlIGJyZWFrIHRoaXMgZG93biBpbnRvIHRoZQo+IGluZGl2aWR1YWwgaHcv KiBzdWJzeXN0ZW1zLCBzbyB0aGF0IHBlb3BsZSB3aG8gYXJlIGZhbWlsaWFyIHdpdGggYQo+IGNl cnRhaW4gc3Vic3lzdGVtIGhhdmUgYSBjaGFuY2UgdG8gcmV2aWV3IGp1c3QgdGhlaXIgcGFydD8g VGhhbmtzLgoKT2ssIHdpbGwgZG8gaW4gdjIuCgpUaGFua3MsCkFsaXN0YWlyCgo+Cj4gIFRob21h cwoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRl dmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhl bi5vcmcveGVuLWRldmVsCg==