From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747613; cv=none; d=zohomail.com; s=zohoarc; b=bxx3BnhQjIcKewZD60SmKfnNBbZfbQaa8o2DQxRNrDPlhwtoQX6Rkf7zfM3xO9wbXnAlyk2dmskRTWFTPDVl2b4gTKPLLmQMgOF1VNJQZ5RXDsRYUjmaNkC4MLhmkK3EcUhq9m1nUuA7Idr/3Hh9sgRbn31L0aLoC8I1vmrz1nM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747613; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=uS9e0u939TiosSXsVTYY/Ak/WMnhDdIB0Sz03AXbc3c=; b=lO+6EU0HgBpCMtl8UKQ3es+A58WLf8uf6p1+Ibgns3CODAPWclPqHvD0JLf1attoF1JzOv+4TBci6Fxr9+R0wHfmcFGFUecWRZ2/aeSJS9bwTICaxoYrtb8r1SYHf1pDUYgFeP22bF+ufquIBfubMrRIsvKVlv5+iq6RvVJQTBU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747613863675.1279809427147; Tue, 26 Sep 2023 10:00:13 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBPD-0001uM-Qu; Tue, 26 Sep 2023 12:59:27 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPC-0001tN-3b for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:26 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPA-0006a3-2C for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:25 -0400 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-483-p9qSK-cUOsCPrmvqfBaLfw-1; Tue, 26 Sep 2023 12:59:21 -0400 Received: by mail-wm1-f69.google.com with SMTP id 5b1f17b1804b1-405334b0873so76141105e9.0 for ; Tue, 26 Sep 2023 09:59:21 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id f1-20020a5d50c1000000b003142e438e8csm15136171wrt.26.2023.09.26.09.59.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747563; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=uS9e0u939TiosSXsVTYY/Ak/WMnhDdIB0Sz03AXbc3c=; b=Y3DS6vCloHmTVarecRu39osUVrM+WXwgQFThC6h33rYQ8HC8YdeH73REoCQUgIvpRtXHeD vNIteTUKbh3wjXW7/v9I/T4ZN+PEPmvX1MOjiydSOP/oy6rtS5P34i3Os2cDtNNnj0FfMI aKYBqiPT0Brc7Ca15jiFn011YraoVOM= X-MC-Unique: p9qSK-cUOsCPrmvqfBaLfw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747560; x=1696352360; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=uS9e0u939TiosSXsVTYY/Ak/WMnhDdIB0Sz03AXbc3c=; b=RwCE5+uveWxjSNBuL/2tHPPigBLmSmsgXFfP37ZeEmAWxA7qfD5LjYlNtnqUBv9aH2 D63mZ4qhkTQqn63wW2ZCJPg5ka85Luu7oaqqKgxCOHnbT2b2qj2z4KlYPUfKBXZShMFo EnH5NNf3E9reZAVZAiutSH8mT4ghnpS3fjxZBZwRBAPd5vUfCZ220cZt+5IzmTEHwqZC v6QxBa9v01clkGzJ+idVUz5xLBAxDAqqPRt0PFBS9QeVAGnyEpnTvE30y8TqwPsP9kFh 5uGiERRGOf0Ep8KoqPI8PNN+d3t/H9N6c4329QvEgXYfTE0fhGJjLpKVMlGi9uw7tUaw 6dtA== X-Gm-Message-State: AOJu0YxZYZuDk66ehP5LqAMpuBuCWrid9nSzjW4MAvAqlQP73+e0mQmO mHLg1IiFDEBusvDChdISC6szg5+/vnCaCua18Dxr5WzC8hB2/Hhd3/igNJKeSnXOvwMabiH/YhD ALQM38lOt8nrx/Mwy+2xfaBKcpeSGzFzQSXcjb8tRTeS8XeAdTG7hJMz898Ln9Fjdcsj+q3Jlqu E= X-Received: by 2002:a5d:4fc9:0:b0:31a:dc2e:2db2 with SMTP id h9-20020a5d4fc9000000b0031adc2e2db2mr9780326wrw.49.1695747559761; Tue, 26 Sep 2023 09:59:19 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHw+4TJDcibNsyVMnNSOgHDPLEJs8k0efBWXxusqwFUHpdyp4j8wtbLHk8HLd5/EVXTqGuD5g== X-Received: by 2002:a5d:4fc9:0:b0:31a:dc2e:2db2 with SMTP id h9-20020a5d4fc9000000b0031adc2e2db2mr9780308wrw.49.1695747559365; Tue, 26 Sep 2023 09:59:19 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Thomas Huth Subject: [PULL 01/19] pc_piix: remove pc-i440fx-1.4 up to pc-i440fx-1.7 Date: Tue, 26 Sep 2023 18:58:57 +0200 Message-ID: <20230926165915.738719-2-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747614896100009 Content-Type: text/plain; charset="utf-8" These are the last users of the 128K SeaBIOS blob in the i440FX family. Removing them allows us to drop PCI support from the 128K blob, thus making it easier to update SeaBIOS to newer versions. Reviewed-by: Thomas Huth Signed-off-by: Paolo Bonzini --- docs/about/deprecated.rst | 8 ---- docs/about/removed-features.rst | 4 +- hw/i386/pc.c | 60 ++---------------------- hw/i386/pc_piix.c | 73 ----------------------------- tests/qtest/test-x86-cpuid-compat.c | 10 +--- 5 files changed, 6 insertions(+), 149 deletions(-) diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst index dc4da95329e..8f3fef97bd4 100644 --- a/docs/about/deprecated.rst +++ b/docs/about/deprecated.rst @@ -277,14 +277,6 @@ deprecated; use the new name ``dtb-randomness`` instea= d. The new name better reflects the way this property affects all random data within the device tree blob, not just the ``kaslr-seed`` node. =20 -``pc-i440fx-1.4`` up to ``pc-i440fx-1.7`` (since 7.0) -''''''''''''''''''''''''''''''''''''''''''''''''''''' - -These old machine types are quite neglected nowadays and thus might have -various pitfalls with regards to live migration. Use a newer machine type -instead. - - Backend options --------------- =20 diff --git a/docs/about/removed-features.rst b/docs/about/removed-features.= rst index c2043fd415d..97ec47f1d25 100644 --- a/docs/about/removed-features.rst +++ b/docs/about/removed-features.rst @@ -715,8 +715,8 @@ mips ``fulong2e`` machine alias (removed in 6.0) =20 This machine has been renamed ``fuloong2e``. =20 -``pc-0.10`` up to ``pc-1.3`` (removed in 4.0 up to 6.0) -''''''''''''''''''''''''''''''''''''''''''''''''''''''' +``pc-0.10`` up to ``pc-i440fx-1.7`` (removed in 4.0 up to 8.2) +'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' =20 These machine types were very old and likely could not be used for live migration from old QEMU versions anymore. Use a newer machine type instead. diff --git a/hw/i386/pc.c b/hw/i386/pc.c index 3db0743f319..5d399b6247e 100644 --- a/hw/i386/pc.c +++ b/hw/i386/pc.c @@ -359,60 +359,6 @@ GlobalProperty pc_compat_2_0[] =3D { }; const size_t pc_compat_2_0_len =3D G_N_ELEMENTS(pc_compat_2_0); =20 -GlobalProperty pc_compat_1_7[] =3D { - PC_CPU_MODEL_IDS("1.7.0") - { TYPE_USB_DEVICE, "msos-desc", "no" }, - { "PIIX4_PM", ACPI_PM_PROP_ACPI_PCIHP_BRIDGE, "off" }, - { "hpet", HPET_INTCAP, "4" }, -}; -const size_t pc_compat_1_7_len =3D G_N_ELEMENTS(pc_compat_1_7); - -GlobalProperty pc_compat_1_6[] =3D { - PC_CPU_MODEL_IDS("1.6.0") - { "e1000", "mitigation", "off" }, - { "qemu64-" TYPE_X86_CPU, "model", "2" }, - { "qemu32-" TYPE_X86_CPU, "model", "3" }, - { "i440FX-pcihost", "short_root_bus", "1" }, - { "q35-pcihost", "short_root_bus", "1" }, -}; -const size_t pc_compat_1_6_len =3D G_N_ELEMENTS(pc_compat_1_6); - -GlobalProperty pc_compat_1_5[] =3D { - PC_CPU_MODEL_IDS("1.5.0") - { "Conroe-" TYPE_X86_CPU, "model", "2" }, - { "Conroe-" TYPE_X86_CPU, "min-level", "2" }, - { "Penryn-" TYPE_X86_CPU, "model", "2" }, - { "Penryn-" TYPE_X86_CPU, "min-level", "2" }, - { "Nehalem-" TYPE_X86_CPU, "model", "2" }, - { "Nehalem-" TYPE_X86_CPU, "min-level", "2" }, - { "virtio-net-pci", "any_layout", "off" }, - { TYPE_X86_CPU, "pmu", "on" }, - { "i440FX-pcihost", "short_root_bus", "0" }, - { "q35-pcihost", "short_root_bus", "0" }, -}; -const size_t pc_compat_1_5_len =3D G_N_ELEMENTS(pc_compat_1_5); - -GlobalProperty pc_compat_1_4[] =3D { - PC_CPU_MODEL_IDS("1.4.0") - { "scsi-hd", "discard_granularity", "0" }, - { "scsi-cd", "discard_granularity", "0" }, - { "ide-hd", "discard_granularity", "0" }, - { "ide-cd", "discard_granularity", "0" }, - { "virtio-blk-pci", "discard_granularity", "0" }, - /* DEV_NVECTORS_UNSPECIFIED as a uint32_t string: */ - { "virtio-serial-pci", "vectors", "0xFFFFFFFF" }, - { "virtio-net-pci", "ctrl_guest_offloads", "off" }, - { "e1000", "romfile", "pxe-e1000.rom" }, - { "ne2k_pci", "romfile", "pxe-ne2k_pci.rom" }, - { "pcnet", "romfile", "pxe-pcnet.rom" }, - { "rtl8139", "romfile", "pxe-rtl8139.rom" }, - { "virtio-net-pci", "romfile", "pxe-virtio.rom" }, - { "486-" TYPE_X86_CPU, "model", "0" }, - { "n270" "-" TYPE_X86_CPU, "movbe", "off" }, - { "Westmere" "-" TYPE_X86_CPU, "pclmulqdq", "off" }, -}; -const size_t pc_compat_1_4_len =3D G_N_ELEMENTS(pc_compat_1_4); - GSIState *pc_gsi_create(qemu_irq **irqs, bool pci_enabled) { GSIState *s; @@ -1293,9 +1239,9 @@ void pc_basic_device_init(struct PCMachineState *pcms, exit(1); } /* - * For pc-piix-*, hpet's intcap is always IRQ2. For pc-q35-1.7 and - * earlier, use IRQ2 for compat. Otherwise, use IRQ16~23, IRQ8 and - * IRQ2. + * For pc-piix-*, hpet's intcap is always IRQ2. For pc-q35-*, + * use IRQ16~23, IRQ8 and IRQ2. If the user has already set + * the property, use whatever mask they specified. */ uint8_t compat =3D object_property_get_uint(OBJECT(hpet), HPET_INTCAP, NULL); diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c index 8321f36f97f..ff8654ecdab 100644 --- a/hw/i386/pc_piix.c +++ b/hw/i386/pc_piix.c @@ -423,27 +423,6 @@ static void pc_compat_2_0_fn(MachineState *machine) pc_compat_2_1_fn(machine); } =20 -static void pc_compat_1_7_fn(MachineState *machine) -{ - pc_compat_2_0_fn(machine); - x86_cpu_change_kvm_default("x2apic", NULL); -} - -static void pc_compat_1_6_fn(MachineState *machine) -{ - pc_compat_1_7_fn(machine); -} - -static void pc_compat_1_5_fn(MachineState *machine) -{ - pc_compat_1_6_fn(machine); -} - -static void pc_compat_1_4_fn(MachineState *machine) -{ - pc_compat_1_5_fn(machine); -} - #ifdef CONFIG_ISAPC static void pc_init_isa(MachineState *machine) { @@ -876,58 +855,6 @@ static void pc_i440fx_2_0_machine_options(MachineClass= *m) DEFINE_I440FX_MACHINE(v2_0, "pc-i440fx-2.0", pc_compat_2_0_fn, pc_i440fx_2_0_machine_options); =20 -static void pc_i440fx_1_7_machine_options(MachineClass *m) -{ - PCMachineClass *pcmc =3D PC_MACHINE_CLASS(m); - - pc_i440fx_2_0_machine_options(m); - m->hw_version =3D "1.7.0"; - m->default_machine_opts =3D NULL; - m->option_rom_has_mr =3D true; - m->deprecation_reason =3D "old and unattended - use a newer version in= stead"; - compat_props_add(m->compat_props, pc_compat_1_7, pc_compat_1_7_len); - pcmc->smbios_defaults =3D false; - pcmc->gigabyte_align =3D false; - pcmc->legacy_acpi_table_size =3D 6414; -} - -DEFINE_I440FX_MACHINE(v1_7, "pc-i440fx-1.7", pc_compat_1_7_fn, - pc_i440fx_1_7_machine_options); - -static void pc_i440fx_1_6_machine_options(MachineClass *m) -{ - PCMachineClass *pcmc =3D PC_MACHINE_CLASS(m); - - pc_i440fx_1_7_machine_options(m); - m->hw_version =3D "1.6.0"; - m->rom_file_has_mr =3D false; - compat_props_add(m->compat_props, pc_compat_1_6, pc_compat_1_6_len); - pcmc->has_acpi_build =3D false; -} - -DEFINE_I440FX_MACHINE(v1_6, "pc-i440fx-1.6", pc_compat_1_6_fn, - pc_i440fx_1_6_machine_options); - -static void pc_i440fx_1_5_machine_options(MachineClass *m) -{ - pc_i440fx_1_6_machine_options(m); - m->hw_version =3D "1.5.0"; - compat_props_add(m->compat_props, pc_compat_1_5, pc_compat_1_5_len); -} - -DEFINE_I440FX_MACHINE(v1_5, "pc-i440fx-1.5", pc_compat_1_5_fn, - pc_i440fx_1_5_machine_options); - -static void pc_i440fx_1_4_machine_options(MachineClass *m) -{ - pc_i440fx_1_5_machine_options(m); - m->hw_version =3D "1.4.0"; - compat_props_add(m->compat_props, pc_compat_1_4, pc_compat_1_4_len); -} - -DEFINE_I440FX_MACHINE(v1_4, "pc-i440fx-1.4", pc_compat_1_4_fn, - pc_i440fx_1_4_machine_options); - #ifdef CONFIG_ISAPC static void isapc_machine_options(MachineClass *m) { diff --git a/tests/qtest/test-x86-cpuid-compat.c b/tests/qtest/test-x86-cpu= id-compat.c index b39c9055b30..6a39454fce1 100644 --- a/tests/qtest/test-x86-cpuid-compat.c +++ b/tests/qtest/test-x86-cpuid-compat.c @@ -313,18 +313,10 @@ int main(int argc, char **argv) "xlevel2", 0); } /* - * QEMU 1.4.0 had auto-level enabled for CPUID[7], already, + * QEMU 2.3.0 had auto-level enabled for CPUID[7], already, * and the compat code that sets default level shouldn't * disable the auto-level=3D7 code: */ - if (qtest_has_machine("pc-i440fx-1.4")) { - add_cpuid_test("x86/cpuid/auto-level7/pc-i440fx-1.4/off", - "-machine pc-i440fx-1.4 -cpu Nehalem", - "level", 2); - add_cpuid_test("x86/cpuid/auto-level7/pc-i440fx-1.5/on", - "-machine pc-i440fx-1.4 -cpu Nehalem,smap=3Don", - "level", 7); - } if (qtest_has_machine("pc-i440fx-2.3")) { add_cpuid_test("x86/cpuid/auto-level7/pc-i440fx-2.3/off", "-machine pc-i440fx-2.3 -cpu Penryn", --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747688; cv=none; d=zohomail.com; s=zohoarc; b=nW6WnhIjODaXJ7aw1N8vBC6TvN9+BDiFJpUHgLgcpM5lhmwSrptJyZ2eaYH2yfPte/6j+0IPB+GsEk4d7OMnL7PadkKFTYagV3Au1AuvPmuRBrgCik4yjfEGIljqfOEayFHNCqxjKUrvF3vd4rylikwfwoUBp01/n4IiN4cpG3k= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747688; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=VDyjWz5N+IGCRxpFTItZQru3WCpFyQTsDQfvAV8FA9Q=; b=MT0bp1mibu9XcIW1KfxLhoJKAvvBXdqlCiqHT1XJBGgdFNIIBpcjVt6HHF70DUcNwsvxNGTRTxU91jG0sY+RaJm+DVgsEiYxPKiVoBXbfCZT/g1MWO+fOxM1P+3ZM2VkpPepWCO9IrHh/mUgleQS0wWDTPDoBpwL9qxDHghkRwM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747687849375.408820504451; Tue, 26 Sep 2023 10:01:27 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBPj-0002Bn-Tf; Tue, 26 Sep 2023 12:59:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPP-00022s-2D for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:39 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPI-0006cY-PI for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:38 -0400 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-623-vSRK9LrpOHOCsnFDN8jkgA-1; Tue, 26 Sep 2023 12:59:29 -0400 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-32172e3679bso7460596f8f.2 for ; Tue, 26 Sep 2023 09:59:28 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id f17-20020a1c6a11000000b00402f745c5ffsm15673555wmc.8.2023.09.26.09.59.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747572; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=VDyjWz5N+IGCRxpFTItZQru3WCpFyQTsDQfvAV8FA9Q=; b=PI6/nXhXsetoT+LZEt0uCcDotMVQ22ct3nHrHJm1J1HsDi4vxkqlQ6lRataC90sek8FiMD Iqc9Jj0RC3mBobSXa/FXy5VJZPozyqQCrOojSdfeutZ1ALf5c4isr1GorUbOnDfI5ABZ9N uGVP8HYlb8oZThHy8ZmKPKdNvma43J8= X-MC-Unique: vSRK9LrpOHOCsnFDN8jkgA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747567; x=1696352367; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=VDyjWz5N+IGCRxpFTItZQru3WCpFyQTsDQfvAV8FA9Q=; b=HOEteYiO+ak1tP0iX1KgCZViEXhGqArbjwaZJ8JrEOXaoHb+FYysaX+tkRYU1PbFc6 HwvcGykhV8fCWhrhAcew7Imd7kpLyPDBNhArgPThDG7J3lCCiToUxezjQ+D8A2SHdiG8 YuLbmARNLhKlIqoh6FLOhzpzcUQ0Grdl+XKt1RW29c6gWqAIX7I7DR+WX4EjFbl9pUlo BgwmOImvZoIQ4v3rY9sL7iFXkxoBMM8W3new2VzDjcgKHmRBJBM8muzu7drbtU93uabH j8B0OPSACzkKiEONxrGh3hnF5eToWnpvC8jamdeHoKq7xYrhaC7+1fn7u1LjdBlyThSa lwHA== X-Gm-Message-State: AOJu0YzUw/etglLIMmYB/POHsz3+KnJn382diHfaADyAVaGP8OIFr146 2JZr17qOaqIvYI+Ib//lpr0rWSBpGNJUJHDJcTdBHGUThCSDkY1rPHP/B6d8WTcd+jbhCilR5H6 kUC5UHGgBm6ZxO9DY1bjAF0cnRo/02ge6ySk66y+654aQhHbuOXbA6Jf6qkN5VgZfXL+RnNcP3Y c= X-Received: by 2002:a5d:4c85:0:b0:31f:e756:cbf9 with SMTP id z5-20020a5d4c85000000b0031fe756cbf9mr9615174wrs.22.1695747564526; Tue, 26 Sep 2023 09:59:24 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGjAIX2x2VliXbrAI7+n0FwF2PuGJRU3r0v1ei10n//USY+0MWdikyNUXASIG/+BQ7WBVqy/w== X-Received: by 2002:a5d:4c85:0:b0:31f:e756:cbf9 with SMTP id z5-20020a5d4c85000000b0031fe756cbf9mr9615069wrs.22.1695747561758; Tue, 26 Sep 2023 09:59:21 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Thomas Huth Subject: [PULL 02/19] seabios: remove PCI drivers from bios.bin Date: Tue, 26 Sep 2023 18:58:58 +0200 Message-ID: <20230926165915.738719-3-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747688930100013 Content-Type: text/plain; charset="utf-8" bios.bin is now used only by ISA PC, so PCI drivers are not necessary. Reviewed-by: Thomas Huth Signed-off-by: Paolo Bonzini --- pc-bios/bios.bin | Bin 131072 -> 131072 bytes roms/config.seabios-128k | 29 +++++++++++++++++++---------- 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/pc-bios/bios.bin b/pc-bios/bios.bin index 6a196cf72a01fddb3256d4ae2183dbb701196993..d3abd947dad25bde05e8b8305d9= 4ab2f62e75cf6 100644 GIT binary patch literal 131072 zcmeFadwf*Y)yI7%nIsb!I0FnAAV|=3D`5~Yn^ z(X<|3(t-&19Ax&@v`0Zwnx+i~-vfIAp1I08IZQ3jZKwWi$( zJ_7SbQa*SxThm?wJ+9NV`5*!kuh+DTz%Wn;_U33>3m7pP`rsJoc7vuZ1z&&|xbH?y zTLHS|YMKe20K38TG0+8v$7bOYjHq3it$g$I(CFw>N9rnp-pk0A7P> zU^cjDB60x+-l}PLfW@E&d=3DA#%rfJ8)xZC*!XMnp<(|Us{umQXWJ_d)t8IUna)2^RP zn?d~)O>3H}Y4=3DQnCioaUI2*o#3b6kU_%R2zf*D{gco(G2r7yt4f_a*D5S#*=3D?xY@| z^e#<%9Q+Fm`hliB29oa9G{+A$%?0wo6tEPm05$Sl!dSRh(^f4&p6=3D7MUxV#nFBot? zV`&lm2IXKC_|9Tv2ULP5!Si5kkamF$U@JHcTuYDzkOm6Da!>{y2hW06K?86uqg-%5 z_!OLaP}AOj2)=3D=3D&hp8j@{Yu78nWp7Ep=3DnQp-+^u540z<{)C1Im;~@65re!}vJHcI` z47>{lK1(~n-QWml{}t_fUem4sIbaN!049Ow!CLUwUu)Xi;3MGvjiy}+{tn&&8NX#r zfZ-quSm1}hLl)O)+KXTt*bmx)`$f`&k)Qy~1`9zscn3yOdrECIg*>%eC4 z9*BYjbk+C3?ckT-k6>JX$tO8$vtG=3Dgcw}E>=3D2vmYk!Pnql zS27Mqpc}v`U|z*Lc<~y>4LbD6>yQgzOoEk{S3;$c5niu{fKc4j)K!*hoAlc z*WAN+0iS{6AO>9bGB1JQ;5sl7%mpjJ!}F0(PzO$c0Sg$H;59JdKI9TzT?sw|?uFWSpaEE;XhaaUIq1FFnan* za4&cc3_xcWfu&#r=3DpAoQxCZ2dmEbqvA7BG$21&n! z&){k>2iymq122J(fdvwNMH@jbSO)fh$n%V^-@r@I3eN1NtbB(yZn{G&dE!6+kMW;2 zqJ-9T{&(TC9hPGMkmf(*B&v@cf8pN?=3D$#Li($BxepW+;db0E%vI0xb!h;!ioHykK=3D z;(xUP#6B=3DRX0FrlR5S+?jj_%Kvzt-qG+Y&%c^%_45*o|`=3Dk*1y#YvUDV!6%+qt2)=3D zy-o`xj*Ye(+cGybIO?+Nf{9tR4MnR4j7kfn^sfzVaztIZV+lT-RXeL;T2XkWBRsO3 zQMalnR^A*)9aA|emY01j*w*OKX3c3RG8(Lxu!+L?iLvZmi=3DD=3Dhx(v zMaJ8eQ+$bfwG~OG6vMJ!d|A_8_5__-d!sj(?+x~jjI_glLBlE=3DvSQKi>Qy_&Mh}<8 zGzZJQU3%3q<0$zS5r192FEP+3Jk7!TT`K)ekoX|_dgZQ}v*ygbL)zS6eE4!oFpD-v zdP3Q{j&$X<%Q8X@F1@NLyDivXuWra{w$iCbK}o3n?2_)s8&U!-dC`{8+c9GojW(r=3D zdzuBV>|5NyWV66++~RJHosGqex~yi?`E=3DwSna90$1?shOwbjNx{#h@J4Gl z#SwFf(Gc1c%RUxJ4?XPB0{x6#cF*MOum}9;&C$%SzIn-xTTj-RwG}V0IOz6Pb+XAi$p;mA7Us<)I**4Lrzx=3DGx z$VN?&2cyy0VeLBuE1N3z1_zjfmQl5ey#a5y$Z4E3+N_<#!9S-tFltF>%xx$sTjtdg zgV}VgUadu((y4P_VimXT<-|Z=3DI5|kKPK?|j!MD*zFS`O!bCw(GRt*BA&1#SlXKW9( zCj`H5_H|C6H8UN?AbEg&*O`3}Rp?siRG+0+s&IKToF8bg#c+S%P~jotA<~%zxuA>UY{FkcLhI0-dw?T zp$#r2^KfgnqaH2voucpzXI5?Yo<-N{Rbw3Cd`Cj|w#CCrm&H&*xzS^#%g$-R6Vc@C zZHq37UKTEJW^Z5IO|L3&pqREVQvLnyK+#qWMOmB8Vz;T)T8Vm9EuEF@s6+KcDF9WJ z5DT>sUb>9B!jbc7NtjCdjBy;9r>)aUStaHQb9Pxd zr(>}QJ1#uWYQ2&ddVkHtkgi#u{{coNcbb3DioL zx|@yC!-EiMRztc*~5OVA->c40`x2Tx{(WOKI(!| zvmKQ;kH_rB{@YOkPMWll(4AqmOEV>cc%xAy<|#I8`Yc4ChtG=3DiG(i1YeugmXswz$D?3{)@Ud6xG`7 zWBuFpU(}{)& zQ=3DXM`>JE5}h0aieCt4IPNHBE0D%U~xT{gOujKS}j(?yei$GpiKYo_#z&6IGV!?;MV z@|2#61>UVY;7a|Fc_DNg*Pva(c=3D(J~LGDM+hEMzU?K1nPW2+qFFQ0GDrm1MzF|^(^C=3D$& zhZcI%$L@{hfU%nXs>89ZuDv@GWPn7@XHZhP!DFp;3G9j0h6BFg#z>!DHF9GHvShkn zSK97XcXfDVFC*YXQF=3DEHQ87=3DV_@1Q@w*+1CjUbN%UHXk6uU_Te=3D#wC?slV#|nY<2_ z*O9!A{28RvBcXE&W;ax&yc(-qYrXvgnKi;CM?Zyj=3D%1(SI>Me?CwW{ zT%F{M?dbIIl+oHf&4V$DpnlKc|8enfw!7nldt!3hSr_XLO`+h*JePSS^Ie`iRLSKy zMaLNz@tP6#eqWxaOAUOKqh4}(Ne_FkR4?<$k)COnISefma^_e@&;XcP%SY><e*SMM^sKF0M`i_3BNgyw069xAoDlVlicfZVxYX ztW7YEesL%#Avio-lyE52a${wER&D92gy6-5>s56n#;?_ZdSmHwC&#gBwo!)H95E(Q z&k>5%cI?|f#Q5;UheO&94B5ZBr0$^WMDvhs2Uds2xI!mWRwRbU_>J@m654Bo?aF-3 z38CR!di4xX_MYJ7W}&n5y*KXz^y*38s|#J17P^By&0-Hzb#G>{-Lqn!glfIf^`c>e z4Yt{0G@_!sh*cWAOb?w(4y1OvIGCSG!m9x6wRI@uy+2djBes>0g=3D*YfC!=3D7ZMObi%6hM zhM^5Ul{g@YfrJ;SaQ7^mEW72Ukd?_Ww87mORw`kacZAtmtsK%ytL2y>WyUc(JSh*Q zqhfl6)FfP(V29{cg^uhgz8t;$M#?NbwKtHr^pet3^?Lc0>U{%}!UJ{r{A+Y?zR%Tq z6ZuO|{adeyQhOq{O2jU!Nq#~TDJ5#~S|hKGUFC<)CFqaeM=3Dd*x)r`8z`p`bT^b@yU z@f}FkwLA5Si+Rwin(Ou@JNB5Ss{4Zu;|+OOm0I~&LOTx_i@Cvlp)bZnR~y?Znjgf% zb2Mcl_+vsRJ$i)>iF>d?%X`txKPR@+rCGIEG2_h&VN3344Ur6fnY9_!sqA_-{LS7xAdys#+34WSmX)r51~kU zWyLUEr#zOQb=3DVm0>u9f|osM*yPG5Gt{&)>#ny)KX-{&y?q*$FywcTi>O6T`tPG9r` zQN`v+-zroy>=3D03r1gYQ5oJEo=3DQyEw^f`?kRw;F_oah^9?8Jts z+vhCXr_qJz&vfHd-98UvFg5!4(+hZNNfh5C2TVjwJ2)k+DMBfO~jpEn2 zPW8!29&^L)6m;Im(8<)5HxQkhS;wn$$0=3Dib>2lvdjpZ(MvbR5y%_t+4YN(jizHSMtg)>9gAG6yge(uuIMqWuOf4h zT7XW78TLxF&@sQ+n_0(lH2f=3DBj)s5Y<}cQF>+6)QEYPh~(R<<}48g0-Wp3ki=3D8hr9 zOur}5@5+uYO3(gyQJOKsWjyFMCV31NHf-W-vab9Bi!0gGqS*J!?z_WYu3Fa+5nkr_ z&z0(TiJ*uJR;sKLrcV=3D7@k8T1Ydy6Qi`Qr~PDQUapAabs-x5P(FFjPTJ!q*RLFYNw zG4*T4zSt9${8rR1+lstN-^`dJI~rx9hnu=3D42&7ndy@1jB5C@o>h&5u!6*P0M&Ig`23`1sf#jMLE%(8kHe$42Y17Zul;Up}-e#oBMI(O_0S zLGfm(*xnVJgFRSq)UzBvA|(!tc#=3D3@`w}+YwVFgvDqYZK{gp^FBrl!28Dc39vwqK6 zpV9cnb??j8)85EsBnapG60EBTFKNp6U6z~BnC~0xV4k=3DhddDRsc6%+xl48C1J1X*X#(ikRFxF9%OPX?h zP+(a!MGhacRCU9&uq^ASZtUS9X^@wvkdm)!0n60xYlsR~k(HI)-gZY}w znaS4coSqsDFFS%)L`IAwEeD-i^jf23G^$-g_&2HrQkKIcrCBGa1qJUMI2j3TdOg5w(*d46$cy30;}cF+{{jX*9O6j6I@{Fb5TsvmQS^ zcuB9w$b2YVD#gudErG`Tx826y<`Hd_-7SBA?&oiwp>lMrcteLgFin(}(xD4jL!jz0 zwcWfAx0L|ISM-ZyNLz$>XoE+Y6=3DI>yZ}S?vZLRQEr4=3D3>DO%y6^;c zl?28!J_%x;W~{l5M~A7f;qrI=3D2>x~u?^yl$3=3D%R}-DDU=3Dh8*70cuzMM_;M48>mx*1 zUNdf2OIgHcWbGw&Ms|Z9o=3D>6Z z$(=3D`#C!0J>{sZ%U-o?XWvX0@2mZe=3DGp%@913xzS1>_MN;WY$8Y<{$H3uUM&v%jkgc znhz>c0biLY9`ET`#EOxwCIDOQ_ zX{cIXe~%}qJ79Y+nG=3D~}*f$BCjRh`8MsgvaMviof8%1$BJiDm6+t`J*sD$J>wgx+% zWm|@&fHaMH%!{^jVgUDnWnNY-Zh8T^YE7ic$foQ%G!(8Adp9ziKdWVP)_R)4XQ17` zTXaE;Y~NZB6El;TJ`uOb>1484KVa_5YL1RF>esQF)Yu{U=3D-403?p;R*<^-ov;4~cJ zg!M4y`Y8^T>ob8P7qCtlt@-Y_G-f5<0xhT?TC{{*% zi#355%1=3Ddkk8Gt}X0yUnY+4QRx9;Zg}T z5{;I(hN1k_Uha~Vp;{XWHioA1wq zE03XP{@@IA*jafG_E8;Cj?R>P@)G+*{x-lD;jgMiYhP*s%dOAtcJx+J#-1AC?kr_K z&FaeVYrt<$Jt*pZ2O{<0`ZrqDs*aSo+~g;8|!e$kaG7aUrlie@24ru4LuH!z85@QVwXcjW_nG&$ zW&eBSzR>B!m1)`k4tmXdzgl&xHmc{M_ku3-R&Vxg-bEV?Z1mpIh}5gdK$&$`>?x_3 z-)5ON@|Y<1zo60VG9FdZ7g1>@;bg>QwXT#5RKmJ~@{K>K`Q;6@srUL5#59Fu9$8S; zQ(G;&|A?771t{)fip&L#3}d(P9s^r+uan-tDgCDlc+{S#5Ni*|AJB>2(()bx^4 zpL|NK7e#vbux6xGIQM*ob3{YDLl;|Pq{3IIqcF=3DY6~1Y>kvCkgnm(ekXat*@ zE=3DR3n8x_S=3DsI^im^V00CNl{LWXzMx|Q^JHF8f^#eHjdSuW+&4T>}3t_EDCV2B=3D{e@x zw_{P~{&|%tcHt`3)kSZpp{uelBK!V%69U~NDj3DK=3D^c4YNZceODue`QUUD8o#Y2ZO zP=3Dq@otnOrS+>gBC>o1m~+j8+HYe2CU`#CiJrcq<8C1fC7lyt<+D+BrCpW(JQ(U%Ov zO3V=3D@W^qEOAz^JdW6u}HKBL_dFEyhM#$2pdH(L9tfqL_(QdLRYREo8nhJL}}*Marsi(9j3ci*qK7%WOl?eZlR%4huk0ZYDtSp$ zQcnrgChJuybVtiNi?YPrE%a|?Hgf=3D_6atRrlq|Zez9jD8#FU-4nvR)yhoFlr6^y<9iLjE`l z{U1x!4`D=3D8b>^#k%yFKQ>^x`CQ(}(m%~NtPx%6SL7U)&_a9<7OP@U(gYe{u9MW55F z?oX)uES2+$;WD=3DD5&vt^kx`1VG*8jU!#vTw%c6UKa%Xm;jj-?Gs~B zc9V>zLjNrbsM;i|w%SEUBWEu2yMbHe+>#?Tr*Fj=3Dlf4P!+^UOLb)(zd<(mV;N>5%H zxHLEVN$Kg!gT3S>mC&S7w>g5Y@zD=3DQy&ZIp9~<48)tt+${ia$X*=3D2@CFTYvW&IR?F zA4#DP(m87+M23Z4-NwqW&3c4dmW;l3U~q`N_tj?2myl4qJJ6@3AfWr7l&q_fxEahk zw`c9utKOD7G#YtBEpn7zUK_~LtJ=3DfU6U7uD=3D-j5@p78Vp-Y(-UXYkVgh-#t#9U)W< zq2ig*zxy3O=3D4kVemESn|;LNtr??=3D1(uOQYMPFmwc-RJBs#=3D-FJF;nf@-6*wt{7DLtsg&f_=3D#N>LRn=3D0f?6yG0 zv_gN8B$-bV1fnz1^FLMc80|65ACTyYM9-M3Dk?Niegrq2zEz32m5J9mIm7V!0>gxJ zll@^yK8WOcRd=3D+IyDLvYC&|hFwUXu}6JzmA)mkC>l90^zrPv%19!O{(GI2WLGxorU zQiklRL=3Dq+A^pK*LqjyxI-Ao_!>|InKT*%()Mr*K?)gBAnE{RvUeU7?SUf-zt#R--5 zqqZ;ZtNQqDsYHNE%qVUo6~#>PC5N4ygmur}w4(21{}D-0L<07aTsZglES{-Xk+M+! zb}#e~ypQ;+B|hKRyD|}mMtj=3D{{J9d9CbZ}3RjA^wR_38U=3Dv1q9By9Oa+d{_#~kYl7q^5?x9H_N=3D~*)`gBZ1ZV4ubm#YQTpx!7es>~^&Ek_C^w zFq4If!@t00eHQla0JO6F5ZW(2dy8C#r2giBy1S_dq(7;2R@x?Vkk1&^2|?od-K z^g*n1)ru)LQ?EXU6tfm_>VMwmV&7h`+7wBrBkAAE*sw?bMGf;-_%BRlQ8^er7o;6z z$DYE1BJEZ7n~$`ihtnOw8@@r`Q+LqAK}00OPIYeYHz;<-USh|#5DSfj;H>i%>`da5 zByHAP|DAwX1H}GLVzGUcjm3K!Rg?vnS|jo9;#~}(&3hQZyR4_#VPVbX4Mj6rGn6!> zD{BvhH`!>ESsp9kjd{@4t3qk?28SQ@b*B8( zq{NPmRo4_}0vjKDXw8EZ7Uq<-&APv{*v;#jD{Pjtrp=3DZZh+K?IrIe*|UAF zKq4F6*@L7~%TrkfV6VBNZbJn`zvLh#p+p=3DE#9$^pTMngo`{Qb#aJtl z_j-i7#F*-Rw57xt*H1ZgNnFWp^yfG^dn(9rEWNTr?KWDssc@OrvUhQ)y}aD31)au% za_{v?QkxY?Yvf0DX){S#*U9z-<+rvWl&dAO?6k~Mfxf5=3Dw>qq7ASQd4{M&mM|f;3)Sj|LpX{F?X&j_sS{+m)TL;#-BWl&zCsH~d1}~MM zf4nM#p+IG`bx@(SoxX zBt}EosJTVA&J9k8cqIFe$~jc44UP^!>{-WNuoig`Dh$J6J5`g0>Q#%A!qeIa8EvQR z!_L5-nw3)4Tq?dsNQ+>1=3DzBM|Kda3J>^lW~KHJgbdK?Lix2-Q26w)V%Q@=3D=3Dytm)1n zq}IhWAgi|ZOPgiUewI3nJRPRwbN(C%p^8yXGa?yX$Br9K< zCOtFAZkT92YurJlsh!qBwrkV@ipl6r!wM{PmM})k--T?LC7;vRl*pd9X1C!tA5hl< zN9d$uMZfjZD(1FhFB&<%wGQR-5ycfO>u_bBbG{|M znj{$wdC_k2iq}ZEIKlXsPIoe0xbX3ju3Ey3Y9D_0DajtE>7iE`Y>arVbu|xgTum12 zmY9R~SBSr0(4SS?aVWvW*b9j~#Gu#L|1D*q&iW;I8%LbZVASvC)mo0>+>|64rGwT{ zKl_jwrRuaih|jF!PG3TxuYa(lzD=3DcW=3D}0}}4as9~#H+>jHtU))0vh(;tygV3UhfFp zuz%k1`i$UEJaLk!Lv%*YsX$@QxuAEl{~4iojsl8j)|`V(bTsQZEbdn&`~cy!jLGpt zX~&xKO;HO~B(!Ew30YIRt^3io(O=3DY@B2<=3D>lNdF4nchsis9To%^U$!0ch+pi8Rthm zMoVJ-=3D~~LdJ*&f^O!f)%s_zC*^u+qcQk27?(54YQC5Ca(t(nI#xBiTLGKp0DMe6W1 z$_Q&O@%NG^)biywla_Ug@;ycy1sO-q)dl-TWRYr3ryh|P&?MCG=3DIC{iO+sy~s$4MJ zXsc^?7XQlGkxFb`o?R!62pUKIIPB=3Dol(Ne&A;F)b2u zrUqPv{+;w*bf`-9CrP%nBN?)8C&N7NUFdf_Kqot}&Dl%-6H#jBzET1|PzzY=3D@CxLp zQPGJBovEs^fnf~N&xk^G^<#;=3DIP#oG#ZgkQ-`1K7L2DMeF4|~U=3D@qHcO^}WLg64iL zO>-+k!R$t=3DoS^8pN#}me%0XnNF-bb~PEvm*sXwxVyZZxDw?f2iCOdJ;pE6(c;}6hz zw&8*+Zw)!tGFcyB%k+QoqHMs6vc&A6oHIAL$>5;rC1odL`jRBQ8VBk%E;ORi*UjIK z$-sqhBG&IQ9Vp*A_H3OsUa4FkbYn%W7@EulcMBt4Lc&7!TB5bPY%eyLeOn+E9_v^m zzm-Lt9{VbbQjAlTMadkDi*nYh`x!-UV=3D=3DbG6(z=3Dm1oRVHVDj{PwMkP8{r`}LPnW58 zPt8)d9R1iw25+O4)Oj*nwCt%wa->GlZIrq3L=3D*j?1-`2$M}}}SUCPQ`ZD8@*pk8a~ z!evIQUbPwB&@1}mb>fd+BR($c#qp(Z8Y+I5b&}qiF(>r76KW`T*$XT0pr)1zyR2Xr zwaaPDWyV3hYD-jK#{ko6#0h4-c*qn^Q)Vl0g z0_!Ttyw4r&V=3DBub>o8l~DSGw&{mhkVOv4AU2IlUtXFR=3DpCY3C`-l13AA`cHcF47-m zHqgS$ecw|mIji>ApTc=3DAHEkla-?QG`s+3Xr5K=3DJ>R?TO%`fxwJY645zBK-dH`YtSVhW$F$2ii z+6XWT8}3$fBz^0a zg%;LMnp`UgjO1vbb`45@HcoMSSUbCL=3D*u8FU3O3DahZU5b>S7Bi1msV%VgskS1ROW zL#eTKa-n}cCHhMdrSNQ@r^tE^F+$G%{gD)l)gMS>5LO~etoCD1QZcQ=3DDFBC~(4o=3D} z^R(;`Ca0Wz?Z8NFtUH$+I*^D*9DQgyzpjPRruXX&{IG+e|7F{bgU9PK0#0Kao`@}u ztmcYly}}~D%uX#*LL$B848>LkQ!om55Hj7rt*e@JbfI-bvBiT&(O-%HCZ^_G-mTZ!c8cCEyy~`;96qG4c|^3pl@QRre!m z2-2+UVF1nTJI&t$XVf|}vwm_oKPgribx-r}7j{YJsa7L%fUE;7>!!DrRf(x*e1SD- zS=3DSQ4TX;c=3DqcP9v2v10gU~Or339=3Dc*l;Uj6OG*q+NLE*T?3jOc#UwkZR7zKtm!zn6 zM_}+0r(0ZNeos;o)?t zr_lbx&JPO1Z5u&P1(Zm;?NgpKPI-!FQUNBwjyey8fVj6hmLxega+RpE$P=3DE>E7Geg zfwQaXy|nOz-jUv2F$d46<|Z?J5E!1|Rr=3Dnp*VglK-fh&mU!-4GzSqvj^^>?XrReQ^ z&)9LWFl|hDLVvZCwPTid#q@VH)V!pAwzFU~u53!L;N((wV_;kA8j z`RLV`gL;}K@}VX@+SfMbm;8A|mV~xlgPCNr zyAoM?EupfgS66?j3S8G!!`^VcPoz&*&I~(7dXm5{h6)F}hMQQ-#=3DGXtZcgKSMvhZk z3wr~DBbwuPEN1Mu<&Uf>3ayG$R6CuCVQK>H;Obug$$p*ah(t5!imV@y!qGsaIZmsr zW0%Qzx2#cO?OQd4)BSx&Z?t9ZDlD?D?MUo3ER0F!Jr)f@F7u;lMOOb#N*&8~r5S{h z@pjokK3<{K9qew7+-5G{=3DB$VXQ&>hYXWhry&F2ZmfxzXF0jeCUKW$-dyRFEdPC)o6 ze5qAc3$2=3DywDPOy$WWbglK)a7RU@ZaFAz=3Dx$kgA?)Y&>mTcO2vtLnlw>lJLnvJFxp zSjl2HkSD53RglXYMx9-O7VA0G)3hT06?W)alc_O+d}olI&Zb?joAkQpx>ZJox9cQ~lj!?$KUIjUvGJI~1m z%l7Wm%P|YZO3xcp=3DpRi@?=3D7@~A_PsVWm7F&aE6SblV<|AmXtl{btDH|=3DFQGft1}u! zXtE=3D>lY>J4ibg5&w_&RJi@w#`i5&c@)&|6utylBugUM#!g;1Yv9ITZ|6Y1T&57kdQ{IU6@s%8>OK_@hMFd&3%rqbA@l_Nwh#Y}-E5nw z+lA$ca=3DUP-TrONA0q0Nijg8_+z=3D_))rjwHpl4=3DDmw^ops2Mg)!9ezU7zKS8ZM*4^1 zar_~d0a<4BhSkxgt`R9t9&!i8DIWN_z2!{NQ|PahZs~T3Cg_i*ZpdD;%@O-4e)l_FG2}=3D%~I0 zzHWN;2W49bZKHhl*%uCQG?v{UTni**9mnqVUeJV{P5C>WGL7lgePrz-Rk6k+?t1kU zUpJe~^?jub=3D6;S3JlS|^=3D}*-S*QR&|m3LF)e@T0YfAc~(4{xs7us$HS|?Xjh2luN2u4kCO}$$KApBO0&aiZ-;r z^_zt>_!{XlTcnH6%m|%66BuUZd3`HOMr+)$fx}YS8JC0X$yWnp{O&uqcgb1 z5rBGkVpzCWZj8mQS48#D{YVRaa^@kC)SwHk=3DRyuYSv5YPvf^_n>eX`wIF50k_$AwU zW!Ec79N1KGh$wPubuAvF!s4Z3uU_#I0m#SEj=3DDQghBtEKYPOTMgf7HoYG@mNoQ`($Eh#Ydq&fQT zPLihzYf6ROO^|C!l3@KiZ0zXOvyw~Dh>IM@Vyem=3D4Y>dT!ar)aPZFjX zjWrKQ_hhQ&nA(c?iM-z;?@h)BwBRAzt(PUkLgg4{Z(RPAk%K8g$GIc9Vj#;!nCK&> zDayoT(Z0*J_$z83?1AvwzDj?5UwSne)e|`*JUe|4-vzYS1a($7S}bJY#oc zwiNf66o-r1K~B=3DVbqBqZ3yb_)rMShaxQz3vsqBywdXb;DilcI~Juq#R`^Y=3D&Vf||7 zh2d_Y{X@dpImzALQ?vd=3Du{CGdga2pKm%3)V_B9@Rv1AP+OvWVw&$wLs#DRtTACS#6 zJaP5P`r3mmR+||kkDp{Az}8#oK0VNbAiLmYghr-A?|g-lrQk!@;WZlC-ulM^4KEQi zS?73#JJQ1YWh!S-l>8R%YiJ#ue`JN07e z+k^V^#-t@qOq0lM->8VXPyYjw!GYu;S+1zJdnYi*_9BkR(S+K4)~m<5_3B%?>95xD z(~}?MG`lI#eO#!%Tj*?R@T2JEO3XSt`eF_eIFe#{r@Cag%q)iz+WmY)o3luh;gdeh4kxk(wu!dM~N@1VCL$ zQ@N&cBs7+)9BQZ6@it!vDD>w@>+%=3Dl4B~-U$NbA`K zu4#w3mCUPy*Bv!#7xcvDu2+e*>{lVqM9UrKMIFRT_a9-7?WB!SPj4wLelNFUCQmnT z2eBp~>l{TM?Hq0BdN@`28AF|2mNu(Yj0cvsdU>;q{`t;EZN#*x{$5hh3JMA}^epmU z$s6WNl}wQhQ_mZA%$&ofSq*G~;x`YmgJ?LTezjO2wlXa;PTI0Lfj%m373FX5A}z~m zuH1H@$ALX-YY%+L)BDzHhF)V*-J>W`J4?^|J2u-nw)~M)XBWFVzZVD8l28v}WfEyCMH*yPqneC{HT!wCPcwfj%A(M}Sn5{vfS3Y&l!Hl5 zJlcCmGI)J_%pgagfV*@9YN%WyURcNU^^?-MBGIrTTHgF%@`>F$T8xGw|IdX=3D52)Nx zToM}HbCs^;20iyQh&)7ImAJ#GGk=3DXdea^J2KDhx&t@O*ob4SZ>u<-l=3D?_b}Qsy5Pc z*^@42+%BMJ@IAWLzf&mu0SeappJ0HsQOz}SSDUG^hnL?@%`hiA)PIb$t+%DBz5L>w zSfD-^T~y4HLWo-ZAsPLwQx9a^1lqZ&LW~sga`r|_ zWm0&7jI?touN@u_OKWCpq^~K z^@qM}JwgZ-**VGRo{^T}Z@ccropcVy`v9(OL(p172o(}zQ6fwHa9tg0aj|>QzZP2F5J=3D#zbW3uGTY0K5g55%dLs&7ExZW1+C+}zET{8J3 zqofLL?ksrEU1FW6I!uzP<@<)Kq$6a|tKb?^aL0;^@BZ+3F(}hJPC19zP1zh{fs?M1 zhDqA>k|5EIT=3D(vby`NaN#7<<1Z8@Ca5vgsdr#O$x2)!2@(l+E&$7cYda@Aq@rBwXH zF4=3Dx#hOQ0VLKX1NyJ#I&l9pY^OwC6gw=3DYVm5qI&dW+rwwNSjl%7CHnZL$9ufh?|o^kp?TUPI+4mqdIQumrU9WfKl9f8>R)W z6Gy0Fq51@W}MBE(G%fqt{i|{DM$ooihu@C?8)Yp8Wvk3ub^s?93gFYo!f5hJax5d79ii9Tf zR9T~FmEV$pMp*6}rRn9rCXHUjE^_FsBQR7bToaxqZp>~ggM3C)c$)N=3D+v+WE=3DZvQ4 zwD2^K3ehB_5eKp0>}YX#nz&NAt>`=3Dg5&7^mae8)Jd*vM>B0+BJU3r6utX){w2fE!9 z>@(ij8tjS15Q_!-h0et|&*<*YmqC3o=3D16hY@vPYVcioQNxF1B`wDkj`FE#XLQx3l_ zu9}Qo+*3lNWF_A&lCLH?;&m;ZdzI=3DG{b`cW@xvV~gD&M749DzG5me4&P?rckk^>og z4c}&L?|*Xf_hKXeVmop9ACgKL^E(X7z_oJ!E>s%}HOIK8E81HfKg$}aF&5ex z6E`vm$%>u$Xdt2LQyF<`n5w?Qk9oONTh4%dbcFR6c8R4+sqzgS5$oDwZ81Bx2eIEs zzM>;}M<61jsC+g@r5hP)(F=3Dml%R7&6uo zV5^yvsE&d4ri_om^e#^}KF3g%+n_^^=3DJK5iIVtEMldiZz@sX0)H8Nqv)Tc)L{gx8>E|FLw zCR4|eh`lJk*MU+`@n1!BG#l-;+&2ZxBMBc#5o^E-ky5>;sc9`>zglY*fj~F^B%wSX zYXKu-qV-*Z=3D|H!vt1V$m z-$VQzo4w2Up#Qt_WiGiCXPgez36mUky>@hdhULhR(`9u`1viFvXu=3D*2zF`A*k0x?L zQwaCn=3Dwwf)sM>;yfbNm8n6>xB?twT{4cRngPm-e1%#Mp>rwvqYHi^8P{-kx4ASLs~ zCz2FRnm*0HO6vV%_zsiii8xv-*eT&7bL|@_hlWwUb#B0ybLW)M@*MwMRF6` zny4PrDUYq0j{TV;|4UNpi62Se)e$jsFfw0!oh4h{?W@5*@sG^06C|^gV`VZ=3DERtdWjK$W;*}OX3AotSs*oS#(jzBN@=3DLt0R@h5`k z5!^AGEQUQ&#dJF9g39q-u3grj{vlEo(2M+yQnNd#*{nIyhdXSZ-4`bJilxC8h^r$q zit9-a{{hK%8QEq;#})Y<%XpK|6k}hkV<2|iSFFUW+FWi1f8xpBvM8xB-#Hz##T7h+#1$ht zvug?^-*+V6UZk-Y%r<*SJ{eRsTCR&pe^Fv%LUNLpt7&6LYq{OD3$lyjlV!2>qbe~& z-uB4bUS&)bGjDc~GxpT&)2U1NHO=3DGJvX9u6Nh+(C=3D~AlnSvVyB2t{YbtS2FZx2G%k z4^9~hrm|!ynAXKAm{Dr|dZxJ9ydj#kY`HHdg|H<9r=3DCv)%S)}LB+{#9`|{`9k##&g z{MvAZ+&+=3DoT3M73u5fg|Uc&46>=3DP^Zn0>{tHkDajBdM(vqD-Z)%+aE|Zm-32MaMq8}1wBXfx^`J+2FOdtp40=3D1=3D1Ej<2uOB-rlCNf=3D zRN)C$fomjJjRr-lP&S&yZ`2#{$yy+TQmh9Wm{>k#FxY;L+0bdy3iEC)Y|Kq|Hs!j; z-kw*0XJb)b;nZ-hXMF&=3DYUuC{fIl>iqZ3=3Dsb&d%J#zfyl1hBv!6R#J`4iIKQt`_Xg zoR+I4E318?usE8+uI}xgV2V0CjP??T^zk?AZ*3l<0(KlQM~{Fu-fm7`_>tkp>8#Dy z_Yj6HzO~bLBg~j@uAd86@1n?FvW5X8o!9?fX)PlRy2n!CKV#%{Nc{zVzicvi@CGu+nG?bcp9c%-t+P$HuOi`db2mVMri z3}(L8s9BOc}x}oy9PP>7vKE|RNRAnNqe&z(D37boFE^Pnn3AqB{b9b#W&&^8@Eykg!BV6RkJebLaJdu-Oj)oHBj!ST8mQS#GsmZW$ zDd@6d+l{Er>O~O!Q#|+9!nqte%obkFb2#l~%zgxaSibMB&cyHY&ft7duO25I%e_zA z^HeYNKPfG*m?s)BI>XwE2I)91^T_edE!5X~@1IOOqh&94-ZX!cq@PN9<%uI-j0odK z(}Y;th3&F_B!%a7!%SX4Cwq>)$jnU}-h#U|t&;mavHBZo5+3BaL7p4guP>Jmu*k~q zaenPR#kx{1hTp%&~8k%H0U(7VJN`AXE(7*WW0Y8xq zTx?FIzCFSh6bSBKSS78mkRc+e;GNrALIKK}$j6!}kRa)kq%$ii&&ie?FP(~d3R_j( z{$&%Mdk3ANJ}87;Ix##ytx35sbBynVDb{nGWT+GTKt_i@NM71`e~|F}i(hjv1Y}1T z$3F2ckg*2&d0qL2#E4(TnV@)d{8yKf%AyX(X0nSCAp4O2Bm4Th;E}zV|0NzUXK^T0 zuFi|Qab*maNd8auNG}BK%L?@7jHxJV+@Cw$4@k1!PGb9tI6Hksi1>pYf!l-^Z<@Z5 zzBb9nyMp`ThhckY~GRU;m%xm>NJqAa(XiHSau!pv;HGKC49fDqnGW1N0Ee%a@%Umvep)%cy90T zzY(dj`q?R*jW?wU_5NMd&$3a}=3D_h2D-kT}QPOtR;b6aw?8u9bQH%>oZ+3-H7QPL9cZXUEUSbof!MZw@vM? zt{8VhctVeeoEg|L1$ImlAMu*sqsy&J74+S%Oc%IyshB=3DpF})dj9d1G@<|GSTyV`v) z##mzo635fI_K8vE*k$IJ*|}97f_W+DtIZ=3D=3D|puKX%HQt zhHQQ2QNA)KLzcgyVe_J|nb)WthS9Raka&$O$3i#!jOxNw#Y0+It!s z|D!|}RNR1|M09_C&iJ^^@-_27wFE!5CU8j8Xy@GNzq+zZ52iv%GK2UA&F$wOfAe{_l}^>a4HRn3bo*g@(zvKGswDWQ+<=3D+iV7naRZq zqFWN1Mw&6!)il}Zk>rDY0UM~ z-oBmv=3DC%7xCN7cC&h}o_(cWOD6pm!e;#(GOQ))7V%O|kSW+C=3D^MGuI!RulG5S?^1~ zuXrasuA|S}=3DyRs@aB*j!%O`Ht5m%k%&20GZ4SOEiVon8TOUIQoY2H5JXB@P-go|?W z0X_Ap{@rz-bPG@E7NaM_&)9B}h3=3D-@o{m2J`$J8+oF4w)Ep>c6zO|5nY7d}{?pg*P z!cl6}ntm%2OQ&K}&3y|C&mJ?~AkMk~(eKg8LbuIAQCv#&_tLB`cCku%o6LE46qlVA zw>iGyIQkutq-9ysI%Fds8@!-NTj|tRQf~w#RGT~&jgcQZnPgKI-7cNOm5PaEa%XPj zZ-K!&Nelz{%gu3q*xx!^oUk;-dZmWtfc>oWW5y_{ci8W&VFO*h>FCUCr+{IE4s%${3U2-J=3DOppCGaORty?pK{Cn3AP9DN$YzHIrZT|+~><>&5EB?%(FPjzMI%) z{m(yWCQcVYJ@R+q2@4RdbulXdzEs`i(XYNs$R+sfpOh0VUQ$-$TBN0i!6kgBFQ&D=3D zLJph2-9q3QA@In;3-%uI6SAz`YoxI7xKSow26~4VY^71GfJU0P$#=3DBBYZl9AxGvMH z#s&C-60+%NUzBEEoBgO1yQn936LM0Prtnj-Eucr9llqoPao?f1urph&CwFqCmp$-f zFFM%146!4QnDU)N71Ww2^}1t}8O$-qXtT;g!8LaSv%ZwvZ3+nKbk%VNwA>7b^GE5To zCMM(hhzbeunH()VEmnFeMgM6x`?=3Dz%UJ)ZX^~-Q@lY-i)V}jC?uE5Z+`)i`KZ{D?# zYZmVkN(Cx5@*5g07a_HPyX=3DihUgeujjGr1=3DD6XaqYh)pO__dI!e)2JXron1CK$&e_ zP7LnQ%VuQP2UjS0Q)?Gnvt*$}l-%`-%ocXmlhqoH_(tzy^b}Ly*+#N4&3QqoeIhSN zsj|GV*559xFt(D+kQ7>CjF-btuQA@WYTUBQ@jb)i^@s}t%$oTtNa}VO(k!c-oT0;| zt;GykljDK2bcc*$>nk3jz0_kXkLam%26b$G27XrSIGE5vpR{prr43I^xaiEr*L_j3 z5yfBIGEl1Hv}-08v`NFPPdzF(l^xwX#v_fW&+nLCVXSTk88OuC8dz_4gpl(^W;6Ap> z=3DHRjeYfBYJ>(>56{Wh#ESHB&;ee;{Uai;6oHorEfa*yrqCqbX;jy-nZmh*vpuy~7O z+dW(YK!vK-@59bRNLAbAlN{e_#R4Z4c}3*A7pBB~@L1dbF3MA{oXujN)B8k6|GlA4+d|R8@FU5UyNpv`Sg#`-GGy*ak`G~t z>v+b^V>lg~tV<|NzGhR}L9jan6@f$SdOO3nCaj%mZ22PmNaEU8plWP6 zR9R=3D7I+XJYE*GUIr{YKL+NM{02y?ERjd4@)4o_^*CRW-XuIBz=3DMH6i>?WUBNqe{%& zgivjQm>tfw^6_Km7c~^g;Xd_U+szJO!r*?sG@t=3DtxSa=3DtA;sETz)8awdiBQy-ipP; z73GppQ?j&Q3*2aXY3h=3DzaqU{E>@MqCJ5{b!d2L__Q)q%B7WgO<7*Ag;l7jBWxQPy0 z`vO@YH6)2=3Dw#JZf5tKqg~|ulr^;8$^m6th zwAL@+_Jzq7|BYl=3Dbb;NC+7K+q0h%mnkce2v_a*pOCVU1&L!S?RtLh;+4vHnow+4CC ztDnNIp$a{}!5pwM#Ttv23 z3I3>ys4R}ZL9~n7ZHihjhpcPKTBxoO-FvZhv9zGcN_$Gq;Q5GFU;qd9pW3WQkhn$` zwzvLKVm+%DVEa`Z#?yV{G-J1MP;Gv+{(;_MG%Vnp&QRA#hK1V{Y`c^@N+hiBZ^W*k&I*(7;j~U0yeOHpj8SoHT z$dmb$Zwf!rRNiGVgB8L}+#)$$_(1>jm)+|QcZW56q{Zi2CyEb~#+iL`9pp5=3DcI*1v zt&4jx3G}Ty*jGj>GUWQ(P5Sy)N%sFKEeMieS1YhadAj zMgM$DHlucjJb)84PE{K+I>fU-Q~0+eGEtJ$t2+rZ=3DGu<5^i>Tc`6}O^@eL3Tj)fy) z(kR`j1v5&9-uZFK=3DrOs0en?WHqxEN}utB=3Dw0|(1Ch?-XJ!M4^G-r{fL{Y@znVJ0vf z6ZvciN99SugX>=3D4-fvl}=3DXs_H`BSry3BwAD(OJhLivZ;kTgxfMYI%ae>D<^Am%D%% zRO#j@x+Xn(c#ZrUVG%KfFKH1i-e$<5DlQ#BD9Klsu3-|!yuwqE&<8^ zxAr@e1k`%I=3Dlj0@_dMV8M>Frfu6yWNMxb_m+@%T>J;!l;x>99%$^q$l^SX$Y77l2n+eX^^WD|T5Fd4TN|OCvl66Mh z<|qS{qmCf|Z&SMXEHi4kRFQlFE}wH!fexGZOS(sbRTD!lkfMvRoI{Kr6t})9@uH1H#LsJeB z{?Mn0jpt|XBUzUun?ZGEtqSgJX_C>sd9&h78jlcV)*!M@_3UpY?Fc~fe37^{*F06Q zxSgxbRU=3DgJpQrJwRUHYN&T_mR>(n-dD{!#>?u!+|al3I5q^|$qPp2KtF4{%;2 z+4i>ZZY-1A{#)^k?c4q?U!Hhqe=3DjNaWp3BMzg3P6y-J|$Zp)HIguJ z+4GRFJZFD{J%e43;4%#eM|-cYrCS1i;OJhlofUyTT$|N=3D!sH`${Med*9CoH(q&$xD zaZ4Lr+uCyE(x{v+Lfs#=3DbV&Ht7|NkTp}T1Fv@C_5>01-cFj4W=3DPNH*KauVvx8Q0ca zGlIUB#0$?#;u&VxEHiAH3Y%kw%`?L;zAxz(m|^VkByZM-62>lC3WsNqu-jGMrDhlx zvJy7lkaR1|ush7K1E}rjTkkZ(xb2m6&$1`bx30zwyfu6XQ`(JNi_I|I469&6p>K7V zVRxHhw@cq`mF1hf5q!v7$A`rnd(+mOCvdwzkI49Fp6>_zf&>pV{dt;WuK;Svj zHO_N1-aQn{SFVvF{P7L%Z~+j!N{mWf;T>Kqp21$Fq#KO(4i}g_cjj>KXkE<$iFDTq znIs?mjJx;EES)F}S-wkvY`zr3)$k{ZL}7`=3DldhofOw;^T^AJ?W2iJASxubK{72dSq zac?(aQClUgvP_F8jPVLxv(-hZ%%*Ew?~~ay5I{!vlN4~$_$D8EN3sMLIR;A6wJg?m zW%g{5O#X2#*xzf8Mz!3Q9p|3~zx?PZYS9@Cvb~$B8IO4ZGgF(5QhJhPzKP7jlb&|J zuqP^|*`}QZU)3>fiyfaa?*@*(qOQZ)()d@wlruD%;XcPlJ8337iQ5>Z5}wA{@}WwY zBYECe&S^MXsfN~)Auvy0FEFRz?2P&$Si!808p-z>0h}Cm)P)@n;=3DrF4p{#+|Rg zh5UJfFu$%SV+bN@4!gAE9>h;gEx3IxSrRap6QZr#s8BfcRtcRXp}&<-A(D)zLqe~X zP*EWcr+q*|2T16zrFAhAAzqNN&rsAu4d2M438pY<)rD1_ix*tqU~IdL)9OVx{k8)^J3D!iD}WRA|c^l6wX03I_*&W6#vF}~_2g21|L41Pxx!iVs`0%L@#!SGxHVe7XK68h);i+3-|yRoQKApI}=3D+ey!h zF@P95rfBg|b=3DD|eEiF<*3nwJ4inma*bHqaR4BD%Wu#aM-X z&q$`9o0*=3DXm2B01&8Ou>3C|b!bnqRwvt>w>wv8fwv&0{i_za1cs|;I%$eKtZi+LU^ zv`0OwU~Cb(!B+V4aIYDT@{Vf&`vSX$#f23@Z8iYjc!VkjU5ecM$ZQmV|KixAEuTJf zqG?yEL9tlI6rzOn*h@Zbu_WSzOs5aF;TJE2SGEzvm;R3J?=3D`n&p@ilSHmUOSPF*{t=3D)9b9&UdZ?3m7 z7t~?J=3DAk!NoVv3QJWf_ZI27uOt+gC-zt`GER@mLW-&5RG+|I!QN+&si=3DN<;4f+kOk zJ}zMErXW8#*^E9+G&}c3J5?g}E8=3DZT!4uo*Icl>t+NID-v)i7H@%lOP)mUw8kDh`8 zt=3D-2?Dy!X9>QnILnc^p9?VFpZEj*pAF_wNKApVPu zmG{>gG1$vQiKHh%SS>Ig7=3DHgFQiH}WenG9YFEla((S;cAJ@N9wo@$ou*(wVvuBSLC zZNkF8ykcPG)F#1m5sAT7RDhSmrh1fP`dAudI|Hky+4>34^%Jsi({WXw%}yjuFh z6+1on4~W!AI`2Td<(TiM(jVU26MWy7PVn9;2C@>)@B+Ge{qC{h^7@^32y$fcD1)Jl zU3Q><#I06Odor)`q%p3P@6V4ktK2*%0wdfZcYdUQMU*)TadS9=3D%w>Ajb>CuZyb*`z z`5#j**3S-euYc7lxQ8@Qk)K{y}+K@L;XtSIWaGDW0F;@js3r z0(i5Tp!Tk4e?!z+T*eO@RTQMw*ZAC}QTLirV6Lz6(4|qUiOOs%d#o{+jOnD{K~k^j z%M~V>*V-hKh#NUd4@KfLBfU??fX&<<{3$_D{7>=3DfH<4do;{pm|s^#<9)3}u1{a}ah zalsbwdB4psc(!(LGWQ)%3~G|Z!N5*%M+?U9WZ$9%qjplFR^a$lX8xa8PH$hS?kVB} z5wh_RF5GxQ)}$FB5k^Iveks8pbB-1`%!Yui+GYYgXRp71t}i=3D<_X?&jbkE9~9pRqi zn;nO(2NV*$v#rd0U)4}=3Dja+H^a<2elf>+`aytShCV%uJ;bmP3W37H=3DSZ&LRj!FY9=3D z!($IjVh-}Iet=3Drqs3rFYtEJ>W$wc>=3Db02u>JWvi+?6&PI658MA01MfJ4g!)C`Gbh- zzDPNdo~7ryzbV>Y%N?@?sGP~)hTp#2Q7iu6;PFh~7 zmc=3D@tX9-z7j#r8a5#2+kH%6k~z#Y#0GN)g%0hHW}T?vlgNm(~j){4MSLlDI7N>-<> zvANGL3VsQ0(U41O&K<#N{Y=3DabUF|UvvJ-0bR*S`gsP%5A2xcVJ)sBjC4-Dpu>B^Z| zd)%0f=3DG~^;H0sd=3DKoMx2DM6HyAboFpdJny^!gyQOKDq~Lo@`R{JtQ{#EX|d760=3DxC|MV6jX%I=3Dd-`2OvxUlJz4Bcva_|ZA zy7F@=3Dj{v^C+vwx#TOgi6_YSNuhtKqnSpX&M4q(g?r`=3Drc1w3hzp^Ghl-hY8L2O#|K9 zs6aHzjAfZ0+&7aYBuh#ANI&<_?$Z1p%2o04J{4S^4E1}fb+%f(UAu%FQb`sE=3DIOtkEn$0 zX9WimBL{c~czNGN`ZdGTX@wI^yM^BIbjLn0%=3D;GLc*Mj*Lw1|}@D*id^egjKvVV1% zX6fENv462OzG;qWnt$>`ExF=3DGYj~`Xg>l}7=3DVZpIJ0lg6m^C}z9VH6k$w>K(gIyXI zZEN_02_TV6ed?b^rEQNM1ye&6PwQ9lz-tojS7cO;X#Q=3DSLH||&pruVa#~JsKy#JWr zzAEt6zsMv4D&vgoFJ?-TMJ#)xpC`@-OdHF(Ms3qH+oNJSG%$=3DvuR<)Zs)qkbS#11` zxq^2zkCQNIIi>@xh?*m+VHk%ff;DM?B$L@elCHia#tt(Y{=3D!taBKmm0=3D%1R=3Dunt6n zC`6y_7k#fpH=3D=3D1Kr7!TjX!rYNr6MhRKGJ?*rd8cE*;pv4{jyq7AyyBPMX6*$)RehH z<2sUfUKAoRGs)HvO^M>PyN1h$8|>G~AS-aEtpkHZR0A-+g)c#%+zGBIR zolRIR2ak*`NO4%?dE9b>C*v#kO@0m7DgO9L*yjaCO>DF24Mv^ek@9PsVvs($6O?}| z6p#N~6cUb}WAVq|7>bI**&80wnHwo`rjsd&(oR{ww3usp(_6o$90A@}&dt5~qB}u4 zU`sJeBkPI!u?e<%*g6e+1L#^kI6j!t`Q=3D>5dSlJH8gv=3DS2K#WcVsnj|pKL zC0&jOp~=3D*T?DxM01|aG482yM#q1GlM zMG|z5uc1lNY^L#AOpQz|Yg074Awp8OpB1hqn{%?W5$#=3D3xQls&u1gd?9b_)1q7Hwu z6wa&ShxlYzPWtl))OQQ9UO!M&GS1rmZTGxjWc!gAUJPg1^qwJE_SilC*^xP+RBfJ~ z3$}l2n?tIu$T3~4(y{VFMw+G5fByjW=3DuN%cyld+@W$;`CVA~u|*R?9mtaDNRe8A{dWIp0{8r_?|gi=3DEzdO8@MKwpUhO55?U4@ z@F}L157q&ftOK>gs>$@lsWJp;Ovu#$TPhIqGx%AM8@TI~3cnMWvc&;FZeTQFU$UXN zy%yH-k`0A>KnuK@797vEz+`RxvaiT_i$Gh0SEAl&fxTqQuXfRFrs3+?Ot-Q33>ML5 zd7qu_Ta0VfO)C=3DI^RUm=3DHGuh%=3D)Q#)jgYH;y3@A(9C8XNkgOP5n7~HF_VixM%Mi@O zEcVb?%zu}caoSHkMe7ntkzzSNc6YGrZi^!z8{E6b$c{a@F1(Qzj@x+n>b?WZ2y-J{ z_iC4%zD25|1aF7hg zr}+>*ts^%Lj4^6Vhux?!9Z5zB4*2SCoBnuXnK&9!o)ADk29OBn)JC?SkMZOPMC3KN z?-7@g%(XXr&IVH28b?qRN76buFwpo<$2X*YN5=3Dx>mrQwes_kEK66-yl^Cw+XJQqj1 zCix2DcPu0`O%yKQa8&m6&~Dd>7Mb#ry=3DMdS+B`!i7dyOskyZ z6EK~CRmPS&&X7vWY0()!HQY_vLmlGh!bf%s#>yrXwakL6PI@k$v^9(XIei$-K%D;=3D zi^>Bw5$7Mr9f4~@AV@$?z3TTaoEU87fM-@ThXa_Gh^G;O-^n_($l7Z6afH6QnSyU; zWa@InZ*h-Qwgx?2yF7a>rlG;ks7EPpKyb)^q2gv&g{DN$ATW_2(?`vbHDMa)aFPH06!(-AfIDsr&Awiahpr zFExZF_~ys^3KFszw#R8lwv|nud@ZhPvLk#}d50>#^~(FW8E$-!@YW$X1OJYTYwYt{ z*4`GJ+KBzO2mgcb3%Bs&-HYt%ndfEYVqbFpeywKQ^K~K5En3aB&*z$+d+l1y(B~6O z&&~vGebn=3DIJhtthOa9hm3R3Wb<*JPwQoXBihhEO<`FK6=3D$bJl)&}Dr=3D_M@suwJ~ic zk^Z{z`ag8f=3DMU73!%VNW=3DHp-rY8$jXy44QY;K)Ac>NZ|gHfR+RsYXvStykt4=3D;K>$ z+xMVb|B}+LPt0E;cXlbtWBw*%Lv@-=3D{s~kcZN3ObApAECH$EGwD z%w$XeK9@o`q|D3l9&0MNMbuK~>sbMajIInOBlEl49Y=3Dd&bcE?q;82-nHO-%cPl{u^A_k^q$*NhZnL;Av@(%$xIT>L8?+ISgkvEABl$AVSrow?HFCgPC9U~x+#skwN1sDlUzKP#(MAF_2&QgbK^oJ< z${SaRpk}TqsClVSuc#Bq^}F|KxtBKz(LVHcD68Gx!((?FPmmKsB+GsSmSbZ65C)Zx z#pa0d<@Hgmg5XUB5nSnt><0RC-n~D$J7Sln#c5+-%j~&rx$!hq)OY<8^H7lx5dl{W z2Mo!+8-kzF>B+uaS(1}|55zMWz1@^Hp3)?yrz*auDyE=3DE8Hsk>C#dyT*4!{~K7qeqn{k2eZfian)3mjV|?~ln#He>!;n3e0T4{wKSXijgv{h}ld%(?Tni+Ah>K$`Ef9yRGnxf7u)q2zErc_; z5+8J6i2D}3zUQ-%?kS!@Vs+J`*Pp*}sB18vwz2L+$MAaSNtENfG=3D4lQ`?rI(g5{2J zgc{f4W#Ih`X+BDy$)d%Wj4oD^(9B#TiUMS~nd`ERvGbL4Fm4iv2}I|vpQZ}xD+J1#Yi#D10ZMXIN2^S%2jXIc~9ye z?_x~N#pJXq@uQo{x&H7JNE(Tf<{Gmo6^QT|7FU|+4k}%SyCZ1xIQb(kjk3oX-}tVa zY{mzEP0qV5Ux>C6Ork3o#eF zc4Ak~8;_w@rcE+$eTq^#{C7Oo>8#Fl%gL=3D05KK`I^kPMCaaNSbG;TT0&xo_mc&`#* z^eRQ^nE|<6-uB0^6xW}^;*ecQvAg}US+=3D-wWyyiQI9QPW_|uVxwNYYa+Z2_WRSw*UIsv`Rf_WWcwc`Ne?<_S$nGE{J+6t$ugYD zyy-&qCAhshiFcb4(W>fzCR-7+_jY*Oabkb@F(ctLRn@%RCw;le zK|2zbQSNsF@*b}*FT&WUAet6;gOR)s6Y9tgebY}E!zcOs6@UN9-_!h6SFY2`%1c(2 zR~8nRRIjS3E_0Qvs;VrjaFtYR`ld~n#TOPAuPSns6s>i-*Ik}h;=3D(zUk&r5xqgoh7AaX4Q_83e_ED zm1_#sI7%C;sw>x&tST;9UshD&Bx5Men#xL-lPWnKgo(!-0kd&}7t;w_Tn%~ZDJHxxgsoz9$Q zSFI|nDP)W*K!G(*87!5K!d%sr<>j=3DLEQ~&VACA+@E32wDXk}9}CQn?Ym%Hh$D(A#i z4E37I!s;+;Z8GB(a8RpQr2&i9uh{^W%UBgltE#F?s-&m2O)_c1bqgWmno4&?Q3?2` zli@oRRn_#6IKS$@O%K%}g9K9rU6Fl>HupaUYZBJR;Yv8{kpo=3D)e#t)pDrsf)3#a{b zubDsLo-c+a^@CZoFO-hFh_k5tpYzPAz#Br|{$T=3DJ{)NK=3D+Xici@Taq+PHgxjF7FvL zOtqq4n7|v>uP)by+LzI@R|lE55MQHfIsnP@z+G3?3J=3DDQPG2KS0zVS2MkIWdG&RXG4Vr2 zTr>7tu>*%DU7I%U`nX|N+P|4T`G&+RMx~CQbYu4L(PJh|oN`mnH&QY(v!>pBOXkE$ zldr$w#wl5aYl@0X^ioIJ-D}I&Ra92pQ|)xGuc_Veov*5y87^&=3Df8oAg`Pac(1pV^8 zyih+-#ajvcvVW{93a2znof@Zy>c)dcZf^q^$z%{qsj@A9V6`E_kYK?k%?~>{8(ok+E@!!@n^&VZ^oH96vED zYC!zZD@TpVxa#V$<0jvD)6KS#*QBLSnlja5jTt!XiqR>_*L~~y8?tk5i5@g0$(}kP zQ(!sxE9Fn;uY|w8fAN|yZ*m?Xn|a}7gopXEe_u5UUzYa&c359wn=3D;$#a@yFQM!4ms zDo6I+*obfI;D*3I??TpI*Dy5M9k;^ZE%VxaqweZp$KBCk+jXGFP6RKbB8mHY=3DZutr z@{noV3$oQV&+$CFGn$5R0<}JBzPFvX+un9Z?fmR+jstfML-`_(y&8;d}&U z0VX`AXCTb8KF&Y=3DHq3(Xa_Wt?UHf^FFThbUoU^>oc97jv!d%a}=3D$ZjNDgM1otoCEc z-gCw-QeXl3Sd!<6jRzi18vhjvNDK!&5ei5M2cR^dvc!i2;LBA&OgNw{6krVptRMhU zTI^v_1eFfVCLql1zTtg^Gf#UnuR?e~QJN<00jn!=3DcJS=3Dj^R`_t!`n5!eg81AkAl3t z(aPkQ&xX(%46ucv3E1!pajioET9CP~IXPx(a-1vP_GB9yGye>&CpcglPnCR_*(MLk z(iPXYFmSf*`#H`TXnCjoNWA3@@8F=3D_yT83FrvCj43`OiAxhbkskD`3sdVxzJ@7|B) z&2z~<+{`X7+77fFZtse>>~4w+rjXf-5Uex$%fWsyFe} z6P@x79^Ib!#O>t&6!M@gdGd)nZhbQIWn1f!;niY(BuP}NyvsE272Yd@Hrp?deY?iH zPpkds{{l)F>^{7QjVlEMX7Ji!o>fK-c{uKvBFw;e5d!+u zf8XR71GZUiV|pHlmklp6KMA`u1iUc9J+^bk083_Yw0wpj-5ZTz_RjXBHvjLmIuZn& zM|r!Aq``xoGZJIu44%%HLaq{)9P_-K7g+JLkCU1PtOOU>wjT<=3D2ENZ?+rFv2Xj2#g$61Iub_Z_yq9VT_eLiV;tk5*wM<{tByQaYz&+mNI7qnokEGHP4Z z(JkAod?WZ;j*jB@JieZzTRK8VXPP_7mKidZa;d4Hj%^2y=3D6#Th$^H*=3DeZ%iV*@k%$ zyBBoi!I=3DGgGWTcgcSdm;XwkMxv`|gsmtddm>8r&Qh~>~q6@<`n&)7p~8T?#m$I1@N z?#z8z`(05HF}cArO?x|-@&o2|S`)P3KP5e5(Mb-@39Y9#1wS!iEK*1v0_^vE$XdHo zR6)2gIc3=3DkDiPnbKXiD?iJZ%F0-_+cRM=3D?VQ1CA-uj~xjk2&R^VX^dHSbF!b?C|dG zFz!C5wzcC?i<8BO-sK)vtgCFP740K5LWYZj$_@-!=3DGmKj^d2E;?Y|!29!HOjfkV>< zK{UdI?;>t2c+}cF?J+yg;@Kr6C73oX_z4$u;S7{i=3DRN$f_f!3&Ida~+KIwG(0QVsB zc=3Dw6{Z`Z+Ki4Na_x7cM$_SxN#A-n2j0nplp&9Of+Mdl$_I#MoX-&@PgSt~1 z0d0^v3j_$7RorK>U_HD=3Dj%zraO3=3Do(@2cB$5v3C`Fdd`lT>uM@n7+%Y@uSc0L!p7&M;q8W8_#fz8ryy<<#w(H6UOrhNYZ&uem#@2Wf z4u6dWo?w7IbD!;5u15FQb;s6Rh4pW1c7`i)^Zz7ND^SGiUM#C~?R+chz}*4FSo-~!(zz;{!_ z0VIw)tQ>!I#9%$j)|wtFDh4=3Db-t~3|6MT{V6Pb&`$EPV}5fCWYcU9f}mVEcBS-xSm zXWzKnR125UF>VA#>r??KK6y5-d05*qp5;2wmny~>BB{oksbY*xr1A~(92ubGpkj=3DJ zQj(w8){IciDhO$<4S5Rj01V0{QbSVAZbEJkY$Je9GT+mBNxk(RW81|Dz>Q`2?~UR5 zhB-Xe6Np)sPqr8%g<33AaG;%u1jQS*K!RNhmeNR4p#Y##b`y-W$E~#5>0YQh;4*e^ zpbW&Ge+s{MVpcFsB{3PnWQqANGp2V`pTzII7>w|q_up>`{0w4FsS0x;^U7RLOEC+I z;UuQ}v*72P)pq5`E_8jI<2*d3@i(wk83Awk0A*)m5I2c%lmj}W#B1q{Iw~J|n-~N> zQr|7pgsj)DCF@Ux?7gz1p6ECYc_ z@Bv0Tpn}I0QzB~#&j6b??c$ULguoApzKy3k_OuQm@2PTj40LsecR$alhf)qhjn%U^ zj*;U9MtB9zW_#2Pj{Y&v{7A@Cgxo6TgPRJ=3DPDb1hQ0V7$7nVw8@+D;=3DNfzQA(=3D z`F5^+M{6f-+lR|QW1Hzc>)5?JinrLbz+O(+0dw>tF>w=3D*bavXU%21Y(=3Dd*ALou!;$DUf zrfpZp%D{JVTsjZdcK7sjy?Hr(NHn8WbC?%9_V%xwLPeN&6P zAso#1?hp6+UPJUA)b)$&x^OPjd?_!wJeYRvOww#CYFmUXkI;9cSAPheK`tT8~Phb)!qRVHcfnx9tIUv&KDwA*6y>Z6*zNKcUcmGe$oMZCE zAOgcDUhQi>mJ;++>mVhTmt#}% zdVJ!OluPQzNWB8?fBW0&?jM|+ z@(F-%r-FJ8*ZEQA_J=3Dcy7QzcaV#6tmm&g*{t{5zn86|y~85OSWBR%J#I`?GuQSC+o za9A@2D4@ak965P)k1*lxHEsn9jRz48^{Sc$ZCvm?;drN#x}9ZJqi(EX|6(U}h=3Dt~k z+eMhnCGYqQig1r~%%~!FE4lYX<+A-@CUb=3D@hmC!HAM?_}7R<_TOYUD0Q|aQFw)kUp zFQ42hG2Y=3D4v*jcY|J1!|*(%>XQTdTw7d5U|_e8B0SA)0`LIv!J(j;tVJYnKW;5{89 z>r)z+#Nfh>-gLFp#dWQBOgvvRBURE)Z8`}LCSbJcQ^B{4-$Pfus&-ygyPoUCE_{Jw zoiyqnz=3DBmU@uNfbo|t7=3D4HO1$-w6h;*mOUSTXwbE!jZovKwVjD+Z-G3;fnkF{1`t3 z+@2^o=3DiuKqf!fhacvlMp@+k{7OWPK)NFvWc4su|JNHg99M{f@f-yz#2CPKdBoP@R$ z%Ijs{WRX&G0TCHRfPh^dru;9Ia=3Dy--Ll^xO*87UQs&@S1@yrWH!H#z z6N1H>+jM8j6#~WDro{2CvB)Ys($YFPwD?{@e=3D;9ZF?!<|O|627oT4S^^*I;6%fKwz_Uh&6L1qJlXfy8h*?-c=3DaxbfR^nsC1(8j7GSAHHkrM z_9)l&%357ul>m6KW{Ap)Im#y4ZDdymBeEMpTz%&v&(VK+I^zSAiD{l6K=3D`jY z5n+G{#)AM9lp6-rD>n0-mfZ7W8#FQH1jje>{?Q*98JJ(BC(BbJ@IPq!r|pQQW{5+n z1u7y{KUGPl<0QC7C8)JyJn*Om5iXXQi0Q|J38+lRVB8bP!Bn2I4!ehAAo!3m4kYxp zo6&3yqExS9i}=3DN4wa*Y1!M43Bj-?L8>5)jp!?|0u`{l(2&bV9Tper~6IRAtvVqF?+ z+g=3Dct^@dyCrXju;Khk)=3DsR`jgqd@u&6XzeP5n%~5mJ&kF1V^*j$o&?0y&~|EH1WQa zE0lyKi?*bZj^ZVp7&{8kk=3D}bnY+jgnctGFaRXnJGe=3DK#4_&m}@e8TLzq4{-@&B}InnYl3VVRlc8`xNwC)qx- zHBRU2_?x8OK;Tgwbhui7JedtCZ-$+|Df>?%?&*rf zfN6sJ6VGcsVVSHLLl-#rVJ_k#!V9Tz`tktdHGGYynT9kdA%Yp5ID`f(Yb8lC!G~g8 z)D(t`;TvO2C+SYXdTHd9WZub%lxU;!=3DyBr!{HBr787WsAKQc(lCO{=3DU&P0G0DFUk# zl@577=3DrM-8q%4cNt?_Z0NI;`czGphG2CyiI6FPO7tx;s)aNhJATjTwvGrP&w_#K?y zoNXLjaY2wH+|SL}{BcLMv<-lj*xE(}vWL6);Due9u6qaV#>d(A3~zdixE@Fpd8c!) z2bu9b>vb`sQ>jZgs0;A!uz3f~tv0aWhFV;_I+O~h}`P_cL zDKFi$G-ZG{9+}|sl%cBUViYQKz(N(qery2@*4~q}_J0hF1OU|@K#{@UbM`UFKdb8( z&r)pQS<-rPL}XU8H9Uo&ns zXH+M#i-TiK0Cg9Y2)^#C@1Xbet&*s@{w3VMkaSJM|HN55GuLiM#Q~{027iI;Tspmtc-p7IM@oXu`>{^se0U zSkX_TD0X&ZPIA*4yWjh=3D(FipRjtay5sQ{P*0Pa8z8D$dZHRj{*TQpAw%oU$Svo$BQ zI-Z4VWNR8?F2{L099Lpf$#{tMl?OB~s@DCPaqtZio9b*c6C7!hphOY`{yi3drSG;=3Dn+}0qLi|VHUzQER)E%~Ytwzf57;xxVmZ7}Znke?^u z@wP0GT|rwd`Kt0G zmHVATw>*M>#|1dp`hZ03dW7=3DifSR)|@wc91qHc>gu`T+7g?Nom znFz*@UMC_+BFZIVj-;y**Uh-Lh~?nit@6u`CGZ`#V~+UVw8_0`hvK4JLg_fD$|t4K z^8qSkjt2zTC)CK;gTF`Z=3D2qO%k+x{rf(2u>BIKPiZ&+2izNEUkthmHpQ|5Bm%PQ6v zmX{UVovy;7wQ->|UmA7Wv?Yt?E}CsmCyyyVX9rMawH@K9k|I}0vAxh`ALE=3Dlrg&7G zHm$te?sACKlG9#Pxvr|5G~?s6J{ZfCOqtzPX;)HM2+r9Nk*ai87nSsfb4$N0OUu@k zRJvXLqj}rbzR>ZVoH1^D+8F29-U3G1XCe4hY>x*;7WK6D| zDnDc})0skODuL>iHHF3YqL66fR69~)Ib*8qcs+INt1?JJo*c%!SMP zdO)Pbs@Ip;iwdjgUXii0&z)f}t}Jm@eA8uLSLiBo(3@YAk@}W0!c@7;86M}a&2)La z#yIT=3DFWPhL8MV@ARiuO!>z9ThS+=3DgQdPBd&_Vk+NM1A zm1CTDk$>*o6_X~&?_`Fz%r(_sQeIRIc2BG&;Y3F3)=3DAgf7v$%CMQn+yXab_J)rIK@ zbf#B>#Lm!k0A*ypgrqy|Y3mAWRe*E|xFo=3DtI@6gXrX-`?wV_HnK2FO+oK&U+D5A@B zW7;sq$5h2>@+8$NtzhBwxr+<5xfM>gu9p>+As%XXRuzKZX%s4gjn1)(C=3D?gl&9o-$ z47-wL?UzbTKm{yg@`Q}c2@^9iC-<9i?uvgo=3DVZEt8mnfWUb70}T6#>Tq3N;DSUAlj zb-L8g>8`4(tcJ|RX^S9QRb@p?=3DE{ol4bZs~res-#y{O79-Ge};lXfvdP2xhsh)JVi z(vQ7x1X0cKIBho600~fgMd4a|8l>3ec0yz5;~8bnA|yhkOC`P-QBu|YeW}c`P@Drn~d7)uLq);GAwHPFH&b@kXmqrg44t4)16gi6^K!X z{a;sPVIe^B3ntooGYF=3DZL6yHFJ$cWh>xHD0Otrh6A+%YyPKoK33YmxIfcvZ_OQ*4l zgym_a<7BC+ouK}=3Dr^!qs40I)s@)#c>$s)8I!ePeZO9JioB_+s*OTmmD5KKDbB=3DwRK zfj|uIrS9qqNmE&2Utd~CkJUngD_KCPlC!eBq!$xeTuQ2)NHc@}RAXVGEDt62Wy_%5 zGH3e#rH4KL!Vyjq{>FtQxhLplCFR9qiqppwheK3j3DL$(tkqZ**z@1x`QKV1N#yGWcV`{YtW1P8suG6M6W5v%Wm$(T^mYAps#YjO*l37Y_*}hUm z*vAyzrIk4gwF!E0QLZef6HIC#DVMk_%sx}n-D+W#Aqy|Oid2ekocxTZKrO!_-`*<=3D zZXZ3yIoh5ks|*xztgM4BcQptN>yeo?P8Ld5Tm~hMDX++?wm?bnhd@YyT0v1^g{;W^ z!dRJ0OGMb*IYFCl4seK0_0>$mL-S`UL+mauR?|m#88y`fG3?SKagf0NX=3DUjw?1y<~ z5}84$3#3;<7DP=3DzO(_XjQ|w%qE>sV2SeLVC zoJ_`rbH39TtL5b6^e#cEVJ1pwiJh3Z-sljsB-#nmC>1v&%%38mpDyc~bA!`WvaT-^ z8USG~R3>j#q0?#qMy8orF+7SD3@?YFg}awq?a!;_FPS-O(nNb9tfx3{m@G6xFE1-{ zg>ro*n>Y261>Rgw>0VX*rRKiI%(nP{D zGH(dQn66Nq@ZFWVeeQ(C3O7pVA+>B@8a-*^8U{p=3Dr(Xg=3Dg-{`qnS6RIwy`-Yp zY}yTzzq(8{x?!fMtRLGRDs-8-WWX`WBoFhK%V$pu#Y6G&goo`CZhNNeJ_JF8-}>_0 z1tl(_{|baT8)X3qaqna^*G5qc(oy??IEi|RXnd#%&Pt!o;_ie=3DTcTx*&$NgCnbW`e zo{aSHK1?fETV_tdh51XTOVt&YUrK*+ToG#Y<&M z70g_;RL~YuTwPY;WKX6uwQfWIM$s^}8&%sSy3X8}+Sip7m$}!CA3xr%<;}>*$h6E{ zU|+g;$=3Ds!j?FIQW^XAT)n>TIg+{KG7T@cKrj$9^@SI}8E>~rA8>~LjkzZf-R`HTs9 zGkU{&*O0tR*AO*Sc{7$QUT9A%5;j7XKnUR_>k+XEkO?!?Cz|QAuY?O!tH10u?J!6A zb72K=3D-^G$1$Di5^YnP{zG*bO^sXj^Etl(wS70b;~+s(<#Om(k=3DrD5`zPWyT`_w+03 zOYG~_Xr{qs$%Z&>eOaNs)>-VL_Fs&sHY4V_*Qq_grO*Tfe4PtA42QrpE3`YLXR8(8 zC9Ar*7F4R>bTb(K+2p9w!NA^}PKVo7%*Kk5>fh6{OlxuZ6zjClEWnBiZBR@1x{?a_ zc-HRf^pYZnQ&SU6V`(VS%GVTXj!LI1U3m2JvXWwL*`oQ27T>nWoHLHfnsk8x5vy>k zpbGc8LYe02?BeRj_cK zy;;&lJ=3D08$ZdyqNHWd{8vRs9-$1{&R z`f4XTL6FGAv0gUB+zHx+#P`QOl;CCfda((Vayko3OD+p#({x!#?+}_wmgDcPDplhc z@~%NgReF=3DR0n8p^QrumIGG{S|ERdSewosjMRih7E&8Ah6pkhUB$o@Y}**8D+GMJt9 zCC)pzfFAs1tc#;XYu+WS;Zg&mz!z{w-c zLw&<*}~~eyxR0JaQNyYdrujd z66p=3D|L_|2RJHV|uWu*=3Df2h~(4VHK27de@GU^*Sdr*pBB*m?@6wNF-CccTZMfo;IeH zO`e>g3myJK4Eypg3l1M)RjiSM`VLX&FJEZ>-yaeoihrLFN*&zri-R8o4a6!Nja<5tyAZHb~v_7 zbwbP`5Cn`PaTy#rgOAf3P(9HsUkCok8PY2FT9cepUrqR%CCg{d(7556t1Vhyzyh?a zKzKr}tWtw_*4RYq^4)an0-Ki0-vs`y;cpOs7v^&(#-Gv)@6{F8Or7#xe@Hw6lSiuu`nZ@ZWE1o*Ldlg@s-u0o!R%VKa{@EuXpv& z7j}PruK$zbe`gPb$0hvz-&ywmJ7tAi^5x&l%S_2%xX_Ytc_??ZUov+j?29S?Psso2 zf&VXhAVN#SloC>QmIy5$%^H!n6PJWVM2HJ9X+p%6BCbdaIYiIN!t;rJdBb7)rl%vu zL=3D3&Er~I@nX0c|Cuxgufwcj8O)_*Rnnly10Afzz$FNJgIgi)qjeoxAeREB@JWug23 z*PQ9sp0Enhjan{37-lb-Ef-r4xPJB*^ZNtyYx`L!{0HXO_OnMr@sE=3DDeqd;uVAN$$Hw{&l}?tM!)Y{N;@TDlwso6_0g;n`$JraS77wWDHHqWiud z*Gwu?(bPXD!*fIB>Age6DmN-53-F0RbiB6%IYx{nEJ%slg`g;6Xz0_P7GnuRJm)c%FxT4=3D4BB>C zP+N#G&Lhi+jw}HoDNV2Y%l3N%br@^-dyuCxGu($I zYX({WJ9A%Mce#6{zrs?|y!2*^cm|@HDLJ39prLo7uDjUQ@I6}cz|6XC6g8JKkse4=3D znxLX#*)oPGVu9`#3&ANN0Nz6Z5n8P4cDu&ab=3DSIX2@E3_x}5ti(dCSnhYGQ^ zOhyzr&jtsh$k{K2(n1NK)dwIHC3mBhi6D{hCPY%L4f|X(MM-j{716Sr{d3NG4=3DG_+ zhT9c66B7>s(WM;NxbOZLV zvpY3oMNGXxtfwK=3DiRMp=3DYXcI`$q^QQ6Bg$4n-r-9CaCx*TO*p4+WF7AF9beOy*gNO z*cuQ;)@tlL$!cqOSA`F>H9%Vd8DneMgClTC`E0fZG?)p-gztMeI`a|`lFdsZ!JqNA ze(P`01Kz!t8fYi^jX8XSyDyiB zLry*=3Dm`Ys|dZd4ndg}O16q&L-ur?UqnRj(va3DVV&(n2LEUqEXo0qb(V_N<~kFtEX$WmmNBIT>;E`{)vO zly>G`t(AIKr(D!K9@(!Wzo=3D&(z&vReN=3DAqVb}3)i8CJF*?bflp*P-90FV_nItGDFR z$s5~Jx72B=3DzMCK9=3DZ2B|T#>Am>O78^b>7LtYKQd9x3fCwr=3D2Qw2PGUxE%nB2>`2|3 zto^~#bVy&Re_LPG2e?!B9@M=3Drm+E55rLT}HwbbUpKNMqt*hoEdP#<+jKXX7I^*Z9g znP>IbLwfA%daEj9ck0$FwT-(|nj z{RK|?A#4BrS8nV~Ep2`xu7N&CEp7U#eD&$U4;17M>4}csO6tBVFdC+GbaZS2j6I}V z_6wLZpXixwx~Z~b`(YbdJI4F2h-+4B6;&yqv2(2BOMTyq);{T>iw+Zz8?UmSqC1H3 zMwl`CLhw+J)iL>vhS)TIUKfzMclUUG%Zg?_Yqxv0-XiUyQO#GpbS8Ck=3DNZN%{&9_e z_3vqs(o6ytSS+cVUo;z?3xeFDx4)MFxHdg@FP{Tu)%??u4Q~&CWoAmq z?@86YSJa+ij>VhW%oKz=3DGrhNEa5K{JSJ^VhHxG_))-jWzA3S!t-41Glq;xr*Y8uO+ zsaVUbxdfeepO>^G_gdFCwl_L zJ$+cW2;zpu-zX=3DJKBD_o>>(eCj+Vy zyWS?w+k}aU64#Bouq_8ZH<6VQeht%-R#)W%L&dhGt-(*1Lwg&4q6I5)MZ41Z9pDC_E3s}~oO z>hW`?i*0lpi8ucP;I&rK1&8{ez{(JOo1vuBWA%BZ%IwLfdPh?`k0}n-TSWOuKWOM@ z_R}tlATP_4#&<_9-_p9;M6EV+J`)|Z7S zr@|&o7K5k8Tow!6`!_18w;xN;=3DaixXM5~^?H&GWe9km6Zx7`<-)hFG+I-b13i%8Jky%Vo&Lwya*PtmJ43$itYGddiJ}#ND!WY&4b;b z(6NZ%6+9c6PD8LtCnk)qikH2HcPgq`HA|9aIti) zcXz3$HZgL2oY{Y%K`+gqd$vzcgs@m)SKU#io_W&2`VNIm?W_^5Gcr`8_6m7y{gmy+ ziPT>Z)*-V{J$n*(J&c3#P_RD zzTqaG^)Vx5bMS|`)p_0BOvuZ`~KI#)%vGb)<@*;Hgjg(K1Gf{q$q~S; zxeA|YhR5q2O0z$QDl6T7T?y6e#$Tnc=3DDP+e_5NebYeBf&!+=3Dy8{<`tB0oajYOhJT|7M_ zY!3~BecDgKOL$h}_3-km*3_wzl(F^aL*FltBGi6)=3DupyD(PQkb%~f2;gzg(GKkFG` zR6n5FZ6o1>bW}k$b_xlnPLK?=3DVmH2|w~U0=3D!M8=3D0%9|P19(NkANA$QyOO(ru%8LM+ zcfM8q#;D);fER9S`){q2mc@cui*lLp!^Q;?RQos|GPx_pKl{;QK znfjT9t6JtImJ&TufFzaDti-Er4?S*CE#yg+hGvW2a!sh&A+V}hc_UTgX|{(PmeM-) z49jj?!=3D0r5`>viIfp(2bFb}m``rZ1HoJPSq=3DGplv7!_*EXd#GdrQGFZ3S~#Qlk{C1 zahZ8taiw~FF?QoQSdqg0_onE|6bTd=3D1)oO_Z#;DBsf~w2^_r}jn4v(^3zI{zPwKm# z5ZJ;N?fL;O6H=3DP4%=3DTOg$t;$F3Z_VhE=3Dak;y+Cz5eaP!pQoz0Hce>ekxvIz+dM0Z( z9DVbQIMB3Hx17z~f@dI>|T`!xM- z7Bu+V_Xd~@>$9Kfv7fXXk-)k(%rEBacaPSw?-lr=3DWjx)|JPw|Gd};H88GK98OOJw4 z$G(LMtQS_kse_PuO`@3r(UPe?-i-GSkWd!Q7$9(P1>e7GHHd=3D#wR@ZdjgX+s)2G|d zyOQ-?F`#?hISb~@cg3LSTz4)~##9bBbkA!E`txe}d#M!7(CAd};Js&b&z^`>@69it zDMi;b%A$|hN7GK~o6W*eUV-?qiJinYT#zCM2?L1B|R7 zQM5_Vf|CR{JV)u+SzY2$gBuep-+HCm^47r9{C% z-l}`{Cb0f^1HpJ1IP?F^eF{pvZrm@+jV#OIrP;(8wHQ2dkea>CGaJ%n?wfV*`?$Mk z!upB2?}kHXi1(%*g5vw`zp(MmQlEZyl@$Rcu@Bdp?gUbLd1^Hx92@pGsc2l zr|*hkP)!JPN57ziaL^JHR~-$q^f`XXl+=3Dw_v@S!$g>1P065?x(|CE%hq}jp;J@TgR{fFNEp;fnB(Az(@>aA16%F&U`o;O-&Y@s5f zFy6EA-HjwW4nLwB*H8o9`>vF3ZoOr$nv3vq5|~vrzK^;dWvGgBHXvI~OhrfyWmly# z2J$b8&p3w(-Co|XgPyfN@-n}pA2}e|0>9{i)j&y4-&t<<*+7osq|e%QBC0oy8iu(5GUObWW4eGOu zqc2MhB+AI{VhPc6*{Y`g;)hybCJce0kEsIzq_4elrt`q*_DI+0y6&sp15UT2b3Q6k ze<7Cy8~4bNdOp0sNJ!?o?y0Wt$no3_*vivtY~-*t{FdPBT=3DxVHac+B~t)Yz16k9{9 z7TANUfQQj7HACvUXWANGA>k}r!&_S5zld3CYy6ev(&oQ_DyMML-)Phu-!8R1j*Sl0 z0UCz{p9ZE`^t*GRFT(q?d=3DIO84_)b+2${ALC@Z-+)~G7#w+HTuPzjdzCa{no_;&&! zf8;UO!B%c+wBVjF5P4H7xT7zPB8}#u>eg@?A)>*@>)xZE&QT@1StUDxb&_!<-ODk# z_wO_=3D7vRk1Ep=3DMz){(dvmpKto)@0nEMw?K}Qg6)0-P`I?e{oNLWC9tUVX}ss-;_sp7J}boS3Zz84iOoWKUATY4E;-!)fi9E8=3DqAMYL! zg2Ya!Wiq#5sar9pZw!%R2Gydbfoj$3$-WH~-MxM|l+&?I(H_5`?F#*lKtM3h`cfU* z?M<)Lz0Y>;&J>G_bNXc0pt|ns-GlX(6~qN0=3D&Sjfn_o7&z8kKTobz_nor^EE{ZQ87 zGoBA)gh7pP4Pf=3DljYc#5Os5Q%>9+=3DRbnibs|A@3bF011dA{hZ96))xHWaDVAyxQ?` zq3%6bcWy*YRO3gs$2u_Glq=3DvOWI?lNu4I+mHGEr_a4r#;Mxz?j^JS?HTDiy=3Dp+?E` z;`Xh1~ChJ)2LA`#TT#f1VuV_E8(NmBHI8ZFvus`$7 zjweT~ZaFFBB=3Dc?EdsuckKu|ygEJ-n1p=3DtyBzE@Iwp`cQIph`1vDLnQdv$U7Z(u7yn z+%RTRWeUVZ2EUkVysRR3s&F3fR8`C8*OjuA-x(<@_+6TEXTRA#Qa4^l=3DUDLjW=3Dn)j z`Wqj9WWVq?Y;+)|x#ApM>YE)WVyM82Oq)W}t(&oCh)0)OAIaF_bCN@G*5wx%Mm4VeK z`c)bFevMR_x?a1av>Co1W{nN#CAA{azhQJi(CbvZE|~GmgWij$si{Ko%8o!-!7kk4DXiLjWOp z|5IOg2rl=3D&``-J#@T0%_mfB98I_K0mr%u`LOKVv+h8`_9*{?9&Dv-2uEhv4^&dVUK zNDqBDmzSl?v~b3$CgXU?D9sx;u6cmVyFS^F!s4n{84yfPUiBpMmq?P)rCVx(tXaQm zLl4`?ct(c15oL# z`8Qrbeg=3Dm#tu~oPm`qPd8t9*&qfnlf)q|Mv;Y@d!Ob9a!`W%z~t)yp~E>9iXLcA#3 zZs-f*+&BqOusJN;Cs#cVF#ORvFeC*^+)b}fqXaR)WU#P9(f>$|t0( zF$w{QUEl$`q_1zK5qnQ;cKD}#omIN8#%je{#-UUHl{<*AHN;e+iNQO)r~UK1jk!HU zDRsy&x9Vdw1m>pKOGFab&=3Dk`dm|uf=3Dzf#`I3PI$|RJ(l)*hUYtPp_BIH9F8uL=3Dqaw zF_nQ>+HKv1PV}_AvSAVyZf&jZdqN6&`$}&>rzz?^aPk8fz77nQVnnD8b`otz;DA)k zJ%Z#(QCIy7^{W&rE%`U5Zr3tJ|js{UEsrx|%nrdD2wn zHn5_R7r79J+AnB+L{JpAJ+Mha;H-DiSZfO%_y)Lc{5R#59t^fe^D(%|zWtUlCp2g3*~OSSH+~g& zcS5*T8~!OpZr7WBghGEM4FV4WuiFFd|2TLDG9$d_Tq}vDcTxwQzsiQ!m*F;w--8Ym z38Vr8O`{5ERB#BOC#LP^i`yf z0i}fS06c;|g>5rc{)RPC{%iG{Y1C8sc6C$osx*aqa6MSfn4Z$_*Xp*A@*OcPbnQS` z)}IXcbb46%_N#6NF3pU*GkA#({PTLdTQ3Iti}X~FIe^tTW|mxZnv!*Ww2Lp!*&#YM z{ueF&kUXcDCjD#Hqv2%NQY*Q z;;SUKwKev@I!g+TKwu_-uRNv`XzeSVINE5)+T?yC%%)Sp=3D~0U^C3Ovam{C$J4RR;S zgY?#-hUeNUbd3sKjfS7+DE!fcK<@f{47dWD;1-ZGmyM|+sf%meFG5Zh%w{o;$SCry z=3D>b4Pj%;QZ%xJ0IZ^X|LKvPV{r~;$4bM?u)2Y~myf$t^)#%q%j^~N?12RY2-dV#fy zO!O3MBkEZmp)x91No&@``L~5vFwHL><%KV03}+UXjEMm1Rtd}IG#-kvjtOr_Bk)Vo z?;pmhBQypS94gHjLCK}dqyQLjkwc_(n$%nRR1q4LlX`wrJKp}`MNDAyf?=3DnhQKEY5 zqc=3D8~Y5c9+HFspAVfyOjOCj#FgaxC8)8wZ$JbV#C;MkM&fyDyJ zj;WjPo-2<|n@62Pk22)Z86JWCBs=3Dldl@xF@(>>fP+T7>7F>2Yhh)~y}?G7zU@HNsb zUG#Q4dC;q^vt$-juLjs!KS0#eNK^{UflGKeYXYqi;3G;u(VGspHbYaPs-sMH2MaPO zCIbEi492Kddec{YW2AXM^~^uPs8l>IkmCA~TuTvGcX(3Yy}PwZ#f6vQRLVkzk$zBc zNLC(+uYgxD*hJ=3DxaI3&EA)h6XysERot6ShE5Qq^7^yPDdrB0kdDNk5{1Ix0EZMRAq z1u984j0HA6S-G%FBjt;C$~i3-K6=3D7&0#_d*vrtTQY@$mRwdOuhD+U9uoCzLyCEbSRd|{hRGt6Jm4Q>=3DA=3DA9$gh`c8$pw3`YEv^1%zD2O9uuO1#8kXOac;)C@ zaEU>V)ZJ@H{wNDq@VBXjpk)T)fWhOC-Q!8IdoXwZY^)c~b!UyxGD@;B6H5;(9|6sg z+a#j7T`mTQKn93kD!g}ED6Y9Sfz5M#L^kK?Scj+#WLWN(pPNOH9vdakm?^|KmlQK( zhc;2pX>wBTRlf3ZZG5OTBEBUBx}274TV!0h3ZF)oBgyvi5%JFBOhf-YXT zA=3DsQVtIHaBNdVns-|;(x9m9|9XTIaVCBbRyKJ9=3DCQWwpT*y}tc+NloY*zEkC*1iGr z+XYAJNg%Tc!VdVO{RQ%rMG@m3>>I8*TDxBa&yhmx519Z6Bup$3QQ}*mdU$Txc5-ol z32ENO3(RJ~10*OX?SZqRE`bX0n9nM*+ZCQ|QhApH2P}=3D)i@(qgGy@;;E!ryqJE3AR z7!y6*^e$Sb;s--ne1Kg!X5kpbI$!CnNetBvSr0j1+8dAX7caE8yU>juzS6}>J$0d+ zn84in)buUt94gn02m&b4v9)-H$B5{br06k89es>F;jzQzqai#RCoeiv+sD)vjAtq9 z#HN@g9H5KcHQO0bR}_X&1-+7)XHN>2=3D%OtV)$I&!3Iha{St#FV^BR9_HQ4{jw|avK zWIDot#w=3DTf&3&aeusMR>3p$&cbYP;4ti(As*$C9RRm%G{ORGzex;zcouE;oBaG0>s z_c|oqh{0kJy+HP~dCtvN%_l7e4ifk5C$|1Ax<56i;|s9E;BGsgi4`rVFQasg%<-#m zLl7b#g{IwhL+CFZG2a{d9)=3D5pY2Z?A;BpR6z}O*DU0F_2HzEB!swj0FD_7`BH8mPS zA;81N0`Pi-7|4Cp@*M-G1D^>i0%Er>>_^#bm}3#+Rn_h1%R0uHYWA4FFDX87zSfew7maD-7a*wX+w z0+W>BE`#;7Xn_z1N~%PsWc@{XBXQy~@CzQ2kHJerO#Jua1JmB*X&3|k$+5&|Vu=3D;H(UNK?? z4N!%3DpI#SAmvDL5Uf};aEbd3GT6@}QcpS`L4cBP9KjYgw+qVAr!kv4v6{ktukN!Jkvp6&tn{*i(9^je)AYsb}kTygOys`ZW6_>7WUnob%!bhBI(ekJ6 zSs0c2;X=3Df22Ri|!=3DyUD5*-HC>4vClme~4)%Sp+)b3g~>rz!tYu?GP{c-S!j4q6K^y z`&a=3DDI+$Mv(%r%ZI;dEw-3HH&_f1Dz%0IHgfe&pl_!MQ9d^qj0!UHgDzX%Mn3%T`N zAw_l}o#C}D;VXq;^OsgFi1t@rbOw~Q@Z1+i15pq=3D6^wIFP*ol`JLFdwDw( zliQJZyO(W1y&ZWTZ=3D|zW;VFS%SMfjapmP=3DICc!v^hxlyt8&U!A?fMsWSa5oQD z3NvHtooRrx6mGe(^`kt`ci=3Di6H|@{-#%{EkUa89LR@foMm*EUgUqyqz$ zuhhH@Jy+X!9{gF>;{A3`UR3Yni+7Zs7|vO|9}krD1Zv~tN9&cAc|-Q%@cS=3D${}4zf z-oWCWoi5(l*CaWt@(?0Di+;_yuD!Sfn(1z~jRckoiRz#(5{vNW;Pq5A98)nP_{E~p zCcl)_Iyerbl~zo|Y#rtApNGX+jU?^Bp>LxaLn_jLK~UyO2IT}dW}q#3eUu{$nQryYg;6>) zcsc(^7o7fLk?15Rx|r)}1*e>g;(|$XUqCvq2j2e+eqLy#bc4~&b3p+n3+xJ?~A)!HN#P*=3D~fVGD026)A>HSDX7KJL^Fg6-+KX)vngxy6{woT9_sp+=3D5*R!KA`d zLuzqQIaQCWvA&+~3QskuMI9)>QzOdnA(z0>%NPKvYvU`LoAeguhL9H1-m@0_05+@5 z5vlLWMm07Iq)`ac=3D;|I}de=3Dp5Ltoy%CzN>oG{c_92AX{Z zrwR%_5xw{R(5t_l4MRb!IhDBZ^$EGZ1b*CZk8u~hq18L#F%D(hgo(`n2zzs^Se>i- zOQ}0B)D1AjvybN@NqouRF)jk`cxy<;CJvBX+D3knEjcJ`0D*Q0$U*GCvbM%xCWf{@lEdEI+2(!ko9Gf2Q@M z^4{qzUZ%VcJ4=3D?Esa#+c%V>$7wz=3Diqgr+70bIfFp$1Y2ci)(z&M|pUoJ%ax_91;<2 z88y-fvNE(i&gww>mZep6?WQowD>xx%3da=3DG9T%N0C>M-@7$ihvF@+99(C5%@LzHS} z-4M{*5Sh)9(DXj8E|K4kzjiFNG<6|}gQ$TrLp;fK*|-#p?Y|GDy*|A?GG4h*jHmbY z7{V2BQ$aGjqoVnl6(@V3*gMMhr=3Dvf-o1)hDSCt1Vf3iaYJFOwkY^Hj;K@{m*BhAP- z^SbGcv4voRbM@wh?HTU>Xb@`te5A1921i~WVZ0tkUbKu^7e{c2u;n2RZ)<09hQnGC z>1CVl$jCgWaNQ3b-dKzs5tc8~d%d&xsz~b=3DBgEY&7T+oguF0Jy>x-f5}qdWA{n zm~^3}WqXvf^!^CzHHDS~IW&!TLSM3oVt{T_h=3D%;8cd<^x07Gw|%Mz*uYEF0?%EE>z za^T=3DWs;2|+dPg0&Pn7L8@wxI-ZO#|fftQ%9A@}3sW`bd$Nbl&fe(&&A$W9}A zk{}y$kT$7A+#Rhe9jq9yY3>{CNv?>cPPE_kdN0LJAd(6oieLI4F4cCXH| z!&dSL;aR5g+I!phdw8S$ZtDT%?U1`f2X@+dYMA}On{7M_Wql!02VU+hpa?;^0wgT{ z)LHxpkBrx8;DJP5U!w!dq>!@h)P&DDbq7|&g8`_J#3fgp@1JN0h8(gjRH}B~X<8aJ}LNS!}a_b{40ux3vdTcRGvLibawA z$#VO#v-kyb%VNd8eNwo7G~2Pq*Wx0xJxr5>oWDp**aS}Z9#IJK)_#iiBZJiu zZ778EF1(b2-Zd*K6m%HzQ*)A{oRurZczbOtal9UjlHxJb0p~x!a1bwbpZ_DB4he%1 z{@6A5W!AUio^fSUu#Xr?BYQeahBgH)A-i{mtTT_+pqZG1OGvVkKC62`ml=3D zD^zIT;nl?4!Fj6=3DA*9+>hk&=3D$W8;h%EP+AP=3DYNte7;{fL1=3D7T*&;Mv1fsScbv~60N z^6Eo)KH$hD3&TiSTraouy!0Tut*7hkQnO6Y67k?BJ%gtm>OQHisXIXG1Ji+a@a=3D9U z)yjWm-XNpu(Br+4c~gQe^SHhLa&wKzO$(vlLFcQ6*uxhxGhe2QIS!p#L-rzd#fj)Zg`|)an=3DVuT5D=3DD++%SH-2 zTK2xGm+A^ChQ1@kP~68v0BSnSE=3Do3;R(=3DwjUHiVTX#vZYrUfomKlzMW1zHYWkqx)O zO2kiw*ulof`zmn}=3Dd%P~WxSrT=3DjqdDdgC@zi44kXbUi-(5Zbzjm{Mg@N|}^WCZ&`~ zDP>Yh8Ko?zl!wximhU47(M+(0`LsJ?=3Dk8WJcgOAA-D&6UE<1O3-MKq{C(zqCiBr+6 zJ&os`L|b8wsSPZAT+X~Qr_%xg_V@C=3D9hpG{us3Rv=3DdAnA=3Do>)RuQhF@yW-I^m5xu> zH@5DrO#?Wkk8PG$iU0VD8)63P4J?_MD5<-k2I!>{MEfO)&VAb8t8j}EvuDao)z9cz zJM|4LhkmsNslbqzfp`#MMluEdVmVLijGs4f`QFNdvV}_8FPfeRBl&#x(*laNMm@9h zY3G{QqNt=3De=3DZmM$$l74q^c!_+O&=3D+P!{nc*Te^>KGy9gCGiTm3!};Pf0^Oeg;R6_ns= oN) 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

aFgpgS0+UMh%41b*;t`I zPn;Z2T@w0SHig2G8tqaREZLKMxC6zv$$T6aC@$iGMcA=3DCY@GK5mJL;#GwAr-4G<|_ zZOmxT>Y@7h9O*rr&-1WyMlaJkLdQZtEto(%rFCu13iC>gFP=3D~wF@g#zlh(B{lc@L2 zDE)Nk7V1V(PkkX&#(WF@-{-@JPoe|Y>=3D1Hxqwc#Pjslv!?klFqKySn&@%lKc3#**o zLtE|{)Jv-gH}%JYk^D4j$Z(7o%b`Pa$l1{|YUt=3Dy*5D0t$}Y843=3DJw6rgq;jTHO{o zvT+i!^^jZ&s5#^lF}wU2PhBr;EP<#^$i*GwegGLYcky%ZF*QK!ID{$fWQID;oX6q8 zYo>+m`=3D*imYIc?PSqO^r!GS0x+cXK1R7`kUqcT!sAxO>L>UJ#ia*6TV;nY|Zb5(){ zY7@+Ol?+@ed^pk7!e_S}H2uI8z7>qx=3D=3D@Mfj9dW$#Pv3XLK>jLiu_h-$U zYW&adsq6$?Ia8|NNQ_)jT2isD8>S@jsw6nrP)Q(&U;(y|({79z2`?b45u!x(0nTAJ zy-poIs_W$nqyEH0)B@wKACjM!+>eIO%qpnP3Aw~mn&@Go`5-`wzT zd9u4~{xn@Fi6h9`sbhPI{U6-?M!68HE03G^S?(;Me=3D{7hg2edjyiu;qcBq+3NY+cY^TY!t@bSSTsX z6ML7Wct8UG2{P)YP)Ma|x{kJRSxweOmEE(H_10fYS}CT@FWa~+*Fu&T9^!4oVJ0Fy zUcXeH;j?U~+&YJ0t~e|qHd#kV9`BLHOj3r1b#OeoOx)pC$3_Qs%}YGpyJQ z8>zzB>Ir~xX4tvUBpp&72}5KkdGr4(VX~MIhTu)YrmMU(n}l&NBw^PXl5UzAc9$8p zTPm~>^%qGu%M7b|Pr~jo!{(S_Vnp&H1Cou4&q-K?neIL_-Soo}CbBx<#YrbT-ss~2 zzv2`+KQ8q8BDZOyI-8etrlP}%p(;l&nxW|rWKHE|O-mEfCX&DceP)&z}Li#cdW z&?uh_nx~lz8duQEuhm#RHhNf28X9H1Fp{vHieHP3Y4q)emt%uUMWQY`Sfj@$?>cXw zu`NNYCyJ@Ywgfq~G~dK#t-OWGsSo@2PaS$ovtjjPjdiH+Gds%3r!AfVVlnATU0Ibx z{RNj|{d8pyGSW*|R&OJTx;hCR=3D{TBZTD z9jW~%MdFZ*%0UVW&pp{FFY9{a@SvCPOo}(rr4Fq|Mh@#I5HTfel(ZY0o}+kE^{P^`LLEilF@hvh$a=3D6OsN!-Yit`L~J z1m;sJ=3D{{at6MjXnU{ogz;CYz<&WOGEVlQiXxtXb}rzj|}WvkzHu;;-K8=3D4O8MNo%}219s!^-H9+R-lCD^@MuSK& z?XHu=3DpqwP@=3D;yQRTa;fn%fZ zDOWY-?|kg{H)&ht=3DhSDGoyw{xo|-wA?16pWbv-vxZ445wv}~gYEx&aeRnYqHt?uJ* zvY6>C?;O%kzhH@c1Y4X~uQDWTW|z37ksoBECpNwW3|dhr$lAY2CE2roi>QrAJT`r$ zMN-(zluZl&7Ji>T9i~6f+Z~3DmTOpNl5xes2A?8pbHiHoY-y-fPeg54>oGg@{n zXey}x(A1-opwAqZ56!@x=3DL0`=3DSaw=3D=3D&BuudJwsLhK!P08nw4@kA97w)i-q*GhUcZY zKV~pDh5p3E+0|cYu|H4eAgA<#P9#f-@i5^=3DKg2mK&(NV2)*o5c9xOY-h_WngnPSo03>oWh5A5;;Yhp@!k<6 z>E|XhfV;9`aknaty0$-Q(Tmx%053bM`XO8B zi)spoBWmX)3q_E zcuAUL!bn*%iy}$-2jNGV!HmHJ)cloVB<|)5Un8Byj3=3D2OAeszfwM(5ysPx~z5lFSX zLpHpt)_6~*f0*VSSmBrfmx7D~L(HhS_jQ>?QX|yT;&8 zk)RV(WN_;HSjZC^2TgNu9wMHXj12%{>@JlFYe%xer$W*ljhZ2RdG zXb_iF{9JNpl6y>GhSMK$%Ft@fZJK}**4V-SN&xDKE5WYCR4N=3Drp(6%TVejP|Wd2QP z(9&_%w?!VZbkv-g%A~N&5!r=3DW$s6pnzy&hg?T1?$1@8 zS_df+Sl6xtZ^Xm3S4&Qg1S6sG0%$6q;%@#vx4JGkSGKchnrDV%v&gg2emQl(vH9Qn zJC0{x7X~LEj5#3B?Eg;HFn0~-npW`lf9qVHqB7pHJT=3D0ZwPbzI@$B{y8djLsIKVtE z{4C}3qD9v7YhlB4R#^_sZ)b%?r%NWWwJ-9vg%%SDhEqD|)=3DoY+8gh1?U9By@eygwR z^A>ISm0Ml0&sCY)^0cj)vCpke?1S+mz2S9%6DpyuvQF4<(IVJG|JLcfPSA9Z=3DsdP8 zp|SIrn9R3sVKq|YVynDx#YvHAG+C81W=3DM9kfMK7!>`M1L#yg*3MtRM$W08K{!K=3D}PqP$fj{JERKiY20eFR@nwNxPRr?0%ji)G{*AJCY(B_Io*dDn#>{Bwy!%E-PR%pH*fdk7+ZCft-|-XGWG}Y?#Fd(ta*PEq$dRiy zcEEv{#;ZM-(myqqsm6Gr&L&HLPuY;^J!Pk6>_v{Dw|WhVnALkGl3gLNXul-G%B_N zY=3DN61UqMSQTG-?YWnhh6$1~;`N_zus0g36Xw0Bn8N;{Rqh>CZm<0P?d+aQLS{BpSN zN#xL4i<|`H5Zs*wX4!|d)O^Mbc1VVBmlFqL88dNd#aYSwdbX^V-!w>I%P?JlvSEfEjgjtT)rQ*mq%zsi=3DnK%uq}nf!QXaDL}2a~LE3Z>`Id0tJ76 z31R-!iS&KD{M|_pzg~dO0w|{6@i>wh`CD5;_7Vs41YDcwK`0^`dk4xM8O~QTI@#FN z?0A=3DW5v_->AB&}be9!m~R~jqf65Nwv`f?0eqYK_o>@Fyt!!nr(BFYV?qSB}J|cQ#i*a|wW`TUQKvw8j?~+N8n!1*aR0W+cgjvsJ z6j2BiPp@c`e8*syr6~Un=3D4x{%?oA0Dl&C7$9^+lq0ECg!8HeY^$!s>>xKd?IH+uGm zMyzsl0iafo3c08Y1?L!kk|?dOkjRS_+7&koII&~7o7p2z-|KE}6+wTF(V7mJW_)&d zofSu<_{m^4E!>-Om2-Oixck^PP=3D{Aw);_69JTiPC{H|ZDHOIuu8AeYNF*pE=3DCtK{9 z)wPl9zBuYURQ@O}o3e)*k01}FF~Wb5Xv=3Dq^y+jk3*Zr>|{cbSZ%Elr9)5_>`(M|oG zLO~HTXD=3DTfP~H?!d|)%gNt|6jp`W!h_uix1v-q?IGP3e7RTdwJ8%RL)wU*->B_NVz zIo|t>$P@0!SLPcxh*-LR2ijUnG_5Pco1??YVAb%VxuWlC_@}&x)O&w=3D@^;+rGD^Ie zh$z&8zpLRnGdhLEzj=3DQjGlf%An(aS zuZXg2)ZVC;CI_|fM4nqjOC+RK!nD~Xate`L+rA=3Dbzk%ySGL;&I1nK+4BZ``>3&}=3D@ zdie?BYL3Vu9v3<@0dKTDCOZg5Yf43#P`H_80SzcgQn6YBD(JM^RE|&dFt!i&T`M09 z%1~x9z|P#}=3D%rQn2&7m(uvq-tt&t<@j1W^Z5>a!efm1@FueW?`>7}AW5>j*KB?<3I zwi*E=3DF_A4dy-v(&0bkW4m}aXvE$CJygd{w-sdKkEfg;G1nyS55n>0G`Ig8 z+~O>T8*lK7GAVEh>y|qlLEZz^DEXJB=3D)2th{TNfUW_j$d2%*$n;7H0VLS#iu>}%fY zKM;@30q)=3DUjra6-kMksBFiUK#=3D%|s|)Pz2PrP8>S9~!E|aLLPdeP8|_hyOB3w<|2y z1_BEbVP)!0u5MC0>66=3D0C~~~?mQuCe^O^pE|7^^#V64bqs>nOtF(o@_R#Q=3Dt7Mdaf!ekSCVqiI4JqMn-{}414Ccc<%JCaAHeauSnDPMMek4$KmPHQG1x}u6XWy zR2>q_p4>6qW%GVLd~CM&c)*nr8HlVr!TWKzg@l2^I3qk<&DP3JQj~@*?)Aeb^wNs? zo6g@X{^s&`f>!;SzjOS>&vIx<{LNoH-&3}1ewAnblCtW#)$=3Dv?`t{vD%Vy7;SGLf* z_=3D0qE7B0}1RhGHuFP>MnY^k=3DsYRMw^{DtLZ3zy8ES6)@NylTFuysUD`{KcN~DuH)V zynvirQ9gG;wRe&BJ#n#|-^sUd;gY$tJ>?hYDPK`O*GusF>P2(rFR3oOKDVrVv8QUK zi9%U*xyM_n-COP{D_;RZi)SwsoT6zLmft&j?#gJIMU|e}bEt=3Dz!@YivcmBe8WsByz z?=3D4$;!;M<>ySi$&C-z=3DZS>E-&X!bnbD`$J=3DR+LrFonKL@nfa@$CER>>t2DFcR?d$W zvVM8hqUx%$>P3|xB?MboHvisv(MX__Rh8d6f63yqxmD%V+^m--;i{&p@#c7|Ni~=3DJ z5+1{SY55{=3DS&X<)TF1*eyQ7NkPP}S{C6x@J#ZXo=3D>nU&4d0u(t!X+zX z6qmTg)#n?)g!i4WGI|1;W6dPxsYU@FVP&Lu&#wY}Re8CTp=3DeXKxO_P{duGp9{d@l6 z>T(EKKJ5A&ZDBS2g0bB-m<7)4Mf2uYFX*C=3Ds>5v0?0Hr5mkH3yCCkgJyp?6Mm(ON` zSWFk3Q!SlEr8`ewjVxX5r{dfTmsD1+)Kqy@<&`pdR8#uw#oBsl??u&fC8(?1a%pq3 z0#v%Hta5&(s*?(jHhU~k)%#v=3D72|+h+Ip4dJT6@@z5f@OD*XQnQ)0nU@_r9Y88&8* zFv))}w2=3DCgFZM1fXGRdD=3DMT%tyS~i5&|6)hRaReL#_*c6WOh|-I7j0ZLBV34O2f!q zHfN>EzJBgJY28YwCOuADFB4^~J)#r9oF(4HbIZ%-c-@rulf{))5KUfV|JOh0)3ns3 z@I?HB3sL_hESE zGw-=3D*n4)60u#4%_SY(!))2)85Q|u<=3Dr@unXQ%bz`G?!0pMy%qECTd;7^;w6NIMagp|m6vUcl)Nw=3Dlj`er(>pLv}aFBQX{Gu93+9XYbhR#rNB zLdw&&vXMo1+BNNIEv;7>Ha0CKg`>wwRIHlo1=3DQOdKb^cRVZ7dq$7c?Kw*KK7P8GMMqIHsjbYwH#y)bf&O@Y8H z#envx9RHc*Whuc?Q_+Es503hgW7{t7w}ykHq%?}!gFL}`tN(Q3@}y2|r8BUb4`t}5 zjcugRKWsjf?mytbbi;82tqB#777KVh8sLlt1fl`asCe%FL(B3Pt#Mv_L>e&qdcZqtkw zh_NSd<1`wM8*WG_dssfkW29xT-Yb$RXU(>n&%U84lJ|)si7(W_7(5pGhF`t?*o;|b z_P%EJCiH6UmJgfv+b!GOdP-!ln2`Ih=3D77q-t6P5mXK}$_nlRko2c$<7NPS8~nW6iB z81W{I`u3yX5$GAi0jo2XcLay#fTcz7|8DsT|069rE^=3DeJc2n`4Cgy=3DS$)@l8o{aua z(TA{u9gj=3D zODuQ53@n&+L~U+~KWaKg+T+tf?h7Vh?atple%Hj`U$l@`X2vh-^hJrPFFru{fG`_!{deYE7SDkpXgkC z+5HFOasGRMp3Ojk62<5doonnOl){yPbDQR}YxyUtuqK>j$&Cz>M{jhi6Fryct<47=3D z!GCBz5`?P{;yjt8kv*+NX*M~$qIU$iB)#%m_S0M?LZ)Zs8##<%8lFRNsbe#?FM5hD zsQ)#KWAkev7iF@WA5G*IAMc?eGoVodEKTp63msPhGs0p>Zwdg8n^MsN2|jL!85DQm zQh|uDq8rTP#tD=3D{m3BwSXQrJ;TF$L%nq?6otIuw5!(MmUKaOhsF@duZtq2AS}aa?axn^boHLr8Y+nf_Z!7u$t2Rhvm|; zT`pnr1FaBa z(&PL2PFp=3D!F7M54PR}5Ev-hC;NI0JuxmNYz5flVJLJoE$l5-?HoY2EzxmRoE`r&ei z96ghOAR!nEY})?!k``%(R`mJL(r(jbLdO7O*t4Y4Qu=3DJ+sAh#UUyo z)QyvSZ5a4C_qwBQFJXGe(ePX9c`V$jp6+AHj%K&Sy(RHqRb+i!_z8LWariMFZk|8q z8Q)KT?_#2l>Z+wl^sw>FX+igOvj!%qA0r6TdWH$TFFp6Vw^;As(s;K@s_}kOV2N*Ww6~bd2Ht5K9zIx!PUBMZAd5buwKViTn0fFC)CaF&JhuU}V~$|$*e zf^{xiLHzQ>0?V?*NOD1@=3Df}(*5tqJ``%G^#7<{X2aVWgNQe@YU<}S6}SR@O^Xav)R zDG%;<>!XvH%(#s=3DAkrgH?bP4@@=3D4GXF70mN95A8g>j%lv-F?oL;Z0RtQ0TS3Fw&Gx#7>P9a2 zt+N&BUxeMWc(@zO{BlH?rz|Jqt36R7WHDM>%BA2ONXBf>j<;Q#a+ygSrzY|}r_|?t{dLE-OKQ14y@qYR@62FF-95Ynr&?rtmZ?11u-3%|D|hK9 zxJ12Nv|+HBY%R#~I2Le>lR~!^HwD&656O|EEGAe-MPAqU7A*9ptQ%!1Sm;R&R&gj=3D zFwc8wV7R}<8eR)|gH>_sM#VjEAv8%sZILAf^VW}bcC*r0xu)ysZaDX5oaL2cDFYHG$Zj~W%9a=3DN^Kgh(xyrBpnHOu#@Zy)%?f%^UAW(qLr6CLjSwYE6(& zOKZYvc|?bKHjDmy0iRlD(B1OO>JO1vul(i;1Dh;F3tHa{w*D%JOI6(f`*RC!5*MHh<3*k`v62cFXeakJcMDeikCCW=3D|h4r1e zuQ^_Gv@10d$j27%PhW!(eL>%4{6=3D1x7WW(Lc?+ep1Re{}ch~ZT+RL&eWp^@iSoKul zqOOQJMoUriK=3D@abG?n`*ZK2-e{c<5<6dBFes=3DLDAy9$y{|7+#)9HL@OPj@ekkX{idbVc=3DD7q&H`n!G9f|M>8=3D|u z7HP927*3ie$+(I~0pwE}h@~V5tS+1EEWV!RtRzItM68Rg# z)u@3tT%Tq#^ap9jxg8>7P=3D5!*azom;JQ{Rp;cRFek{g~~cYE^tx~&Aw%E;$ zIKwLRr_xtxaZv2?UiG(SUB*kFq}bgJA?+{@8Cj*B>7-`NyzN}~w* z3>jyRZ7nmx5Abr~y!|WsQVZ8q{v#92rwXiHxW>BIyqCwuLJAsI`aAyD(j&Q{vB+f` zm(UuK0)1C(K(re-%fcWEPM#mca`jQ_D69}-KuAnD;@fYS zlFDt8U1V@tqW+=3D#h~Cy%&*sAT5X!PsC&ZoK=3DFOsyd_)Kxs!wR2fLH?vCQ4-<&@k9a zNA}3PDU(CvJOTfh0uU%n$ILg^-Yx-x1Oegl(2D}$Po#?6ED5x~xV-!Q?XEy+x*iv? z8;=3DRNSB+orh~@WYkbk<|!w5dhLu^C;$Mj!Fv-$6F1r7`wP z;9hJFcU#mP?n%tyZX*GD+Kl{{$pcqz$i4uD;=3DX^ecxz^05BW_Ic7os6CcfEHS<7lL5UG>^7t_( zy+!A)y~|1k-2pVyWjU8Q69m~LSEmH7Q8TW->#{9<6(!@u<6I71oxMV0%Ar| zxPioAN!($Xd5jsf8aHDS-9xHVB3BF+iP!{>)8Aq9Fbh?uG}4rvkz_hwLL+Qd7iT6& z!9E104GokG3smL>DxiFUj!u7D+|@oHr|WBdz+#GCTg#J>jIsLKhj{gOszzu^aIvdw z{xl)E+5cJs@@kTfw(6L);wi@L&9RNA*m4*J5O4-o*-E4$kn|RUrit};i*m&#p~f|Y znH_g39IF1R#CO5CLYNHn=3D6=3D&v)JT=3D(%)9YhdiKK(#%v${BJ|7MGG% z!RH|!LNq3P3hqFcV`E9_>C%T~5pAT`IixcAyBf(NcUA1wH%KRrtDoJIUHKWV`y%yD zuODgCJL*R!*UwI=3DIY=3Dh%0{Xv=3Dj`yY;BR!%Y=3DlsS^ts~z9Ap@C_0a9VU~S%39n<{FO5{5hd;RRH|X>9$uJI zU8&AIUBusH5fRz3q*`gFx=3Dz7hBFM}7 z@=3DxEJqpQ5CS7q)|IGZf%-oSXPBlPJd)mO2U^rDH?px7mYVv`Jof4~dM#DAsHpH(69 zPHxkwW;SPT z(EM2vpNYvBj#}Ic!WH=3DcdtCX5VEm7cz(1`{q;&^BeHaV(hh^oxhpt5CG<|hP^Jk(O zo^G-W1;H`!*;bCl_Vv70+pp&g2U}nv{tW1H3&qAKK*m@>QES}XJanx=3Dg z93uv#%Hkxr`7^8KEL|IoRO1(_olM(kSm%)LmH+B$Wn5Dd?{|nyv_nm+p)~w5(du;RmzRdR-#H1&`!>=3D{@o#b{M{~)zlB|>kUgn$zs!g0c->PIGv8HX$R znORxksWQhaCTr?N2%dobLcmw|0##^>2b$b15<2+z*C%|+rz%xWd<~3N%MP~mJM_g0 zl$Bgo4m^u{1!i@eY~cd0Px8`i#tSqmU28&UhjgvqQ-o2>9&0hxhZz_LK`)`rGgeG+8=3Dq?LGcan?#v8KNDPP4=3D%CgAF58(`_*h`x2@G2klnApmGgVLnhl(N zcoS?_GBaD?#jLLcI-c+z$&w0LzL1HKC5G;*&WgEMCij%mWKPOB^)au~=3DJx!wtl)Ek zn8W`IK;|E>a)h1~T8?6ZP{%oew5*x~ov`xTv=3DR)6?&W0JPS}w5@{c}{$VbK%U;CR} zx~r+pwF5Z#lx;rftU1W`ehmerCGX|emb|y-Ee>}zy|O)6`3Bi7@8u88svbaf_|T{P zANJk`JnHI9`2Npi62cIe0099(2RcNs1QI|53>rxI4iE_-3Q7XWnWR97$qXOW>R^Iq zGKAXtvE6QW7u4Oy?RHnX+eZ*rn}B>-ZBbiA-B$c4opDg9TEU3s`Q7LICz+wzcCYuk z-uHR0t5N2EzCZ7CpZmVgeeQE1xsTx-U;Iq~I<^YPVuWVWs!L3(meHzcB`5>rp-=3Dmc zLJ$C4MSAq4vyP!JGExL$TUvTlqt{#RuEvB<*qFgB&{myt=3DAHoOPDc>|YFL@twg{qhxZQKcp$4|thG z%+X?9-_c?{BHPy;qts9&ExJHj{><>$wR9|cIa_M{?sG?rq{=3DI9sJT{h{{b^)Uz&U6 zO)-%~fH+)5*!XsFiyd!4`}Su}(KQW(&{xQdvh{i2N>}K!G>EdeGxYZ70oiC``=3DHAp z0dtsoIXI8a6Xpn>1WrP2pSt{q!C8>nM?8rCHgya4%ehYgjgNHd4AEbO4 zx2C=3D=3DEnP@U5oG{kGsK32#q(|PG}s$XCvG`Z9vP8^{B6hU+xpgw8&B#Hq+YoSF8XzS zsSE7&&%dGI8!1@L;GR~xIWtG~rs)mjKC~-(1?xog{S8E^Pf4x48$U1&UOhA1@h!sWeWVb!HGpV3aSwW?bd_n^}MgPJv0(YEa(ois0n zG@Tj8K3wBEa5=3Dfy4Esj=3D(SQ9q5GUzkW!jA&;@8t!%v;stWZYxDARQREeYf%2&w18n z-{s}Aiuv{z83-djh-?$-EvWDTP78W*`*>(%_GCW8;GZweipL{jpN9bLi8BD2SRqc3&4FtM-o4WfgH7kli1-1xi*CIXiEhH{jXPATy;Qr|!+ zQNg@YMxZ_JYh{@u${icxTE``5?r39la$8G{Ep{6TMBkbg8HlYQn3W=3D+()|)f^-t&% zeD~KI;iw(WB`V;(|NCx{6)F(R53~W@iy5 zuIxFO|M-aEj{bpdo}-RyMo3!%mxo9Hgs;g+ldO;KJ&Oomim@6#ioY8DHhW1}w=3DS$( z*QFo8F0bh|g-+efVr|0UwAMK}BpMt{M+K!Yw{N}%Bv%>tuW-v&yEhT}3<3IbmbJHL z%+*}d9LG9ZmZf1}45H6pU^+^qUXl zmzkhZ=3D97(CEiry1Ti*b=3D06ktoa^*)S(qO|#EMv`Uv6Lo7`$Z$NYQIKfnx2^~h)N(* z#PKhi9i2sAR&!9A@)U$zPg8E}X$lpL*M>JoNqeqb{zI;ezW=3D+_T1HcguAryCUM;JAgQXN#doSHNhX}%kIS%YMwo9V-0dOpZT#R?syhf|yVp?>F+CJlpZ*jBi zhk?E|8HKcU01J3!oEPq1+Hc*?UUCIPuO;jv;fl=3D5ij;AS*wr=3DAprq|*o)OSGiU6}U zqp&itXv@&T>pjg65Lj5@X%@~B)43I~QEW?vO`hgrkj|Dtg|~W|KaeDxWfc$-dk#-q zS$(L};koB?@)Ud$`vLS^>)cGV5j^sQ=3D*twKF@2m3AbfuNGg7ZcaR12!BqbCp#$TSW zfW41|P0_SRKld~rB3=3DmlC}-L(FZ0;h0*AAD%5N~cva*+Q}9cpUZ4bKbhHDpZ)wXiU#^NQUd&U89q(o~ zJzGS;705itc=3Dm0ffoI8g^GPO7%az)l%=3D83pKW1zPg4@18Nq?!08dipvJ%|6f{u}T| zE(tGtrf)d#O#k@TwD9FmCody^e}<@$UB^DO+XCLbMMdt@a`2{9IrtWq4|4F6(WBtM z2xkvD^sKeSx6WPSTN@K&r-dVf?)ZShW&=3D1+6Jo{gX8<-YvU%-d!>1d)<(B@9P0L8{Ns$ zU`t!#*>{-5?~2}J{MS7J>uPc7dUW{RT=3Dmf=3Da-1Pa^t`6)w|YTir;)F;Eq9!W59G+O z&t7>t`2E0E4^xL7_`OoYp@n3G%QT-D<8C7?$J=3D=3D^_EEl-ec zeIT+qAOGB!?X4bai5tM4eM%sSKSb z`n<`JktTCJK(d9e;l)i_<*)__`eSpHY&*8`<$!0@^x%NSD{3B;HvA4M05a~Az)Xo? zbe5YmUxNo;AlcsY?3l&3=3DD4JOg4Fx-gX}0_0ZEqGO8pjP>~fMoQ72AuMZ~uK%ZE^W;@hj8)vkM-Cou z_szm^+Aa8KQ^~{2#IYhL{PGJtY4=3Db$zNWX>%m%H*<=3DJoL0SN+ zCcT0fhbNwsa1Mxzbq*csJCeSZ*d_7Nrhw2F+KQ5j>^Q`*sfQ&|tA6PAAxYQL_j-Qg zQ?yttKH*755PhpBfj28Y@=3D3i=3Dhds%fL{#=3DotwUW z>Pl`%1t&)4xf~r$?LL(Law9{UctSNe6iW+(wqG-cJ5a&CHe3;3N~z)or37ZBO7SCL{Lpx!K! zjqOt@zTC5;Q1aDdW(PVJXSDp6{G2(#&&{yydtA&KTQAb!_UP4w?#WCFIQhuk8_|iwwcA=3Douri?hlVAs7gmfe^1&ydnv7L!+xG%qF0dCKejqnzZ1kn%5=3DrX^CtW6CDR{#6)DE z*M7^(%KSidpQ8UxQ;e#!bS6GM`u7AF9YMK$m82uMe;ocNE_87*Atq5zkE1?O9z>f) z{0BZ|q3(6Qzc=3DIk=3DkyAW{(*|k@pl>Ey7!CIRmL|9-@@Q2oq-2>KgCq*G3Wb8_DuBG zh;BLAbSxtRHD`jd33{%kKQ?KiQ`u=3D)_y??eGr2qhp%ZO+DS2gl6JKIwEIVUX#wBm) zm2oJ^WaPgPRO4mBYW|m4%lJNCts@kz+egIhfI-bO60u#<{X$$@aP6^J#6=3DIwFAy2~ z=3D4V9Kcc)$6opvEEhQ&^YDohzE*<}w!H~(DTM|wpH%q3CuTKrvFAhPnNLt_>%FD)Hw zt>Z>@!IU+dHdi+^)K*n{x6}q|ytQ?kD>u|uc^d(;yNG+!EZ!_1|N=3DP#b?%_EO7 znc$_MO$}b|mshU~R9AT`1K!b%(??g0bXzkwZ14tZyol8tKC?=3DDHuqOE-qW{T~zbU8KZ;VF{2yDx~=3D7n zwRL`P{l)-k8^(ESH;Lr{Z~oTNTiuqvV;!inTb(Ce4g?!#NK~TeO?6(KN-msxN7sAD z1gd86kwo5g{7e|Vl}hw=3D@WyHkU91gmSnpNbuCK0gTXOT)_0x?sbM(fL!i(!=3D$} zQHP}oDaS6dr*eH`{ZBN`9<-6(Io$KE@&++hQR}Z`yt#_%<#M=3Dp%w}4dKY8nP`JsI# zov}Tj6X=3D;3B-Hg%9esH56hw|#mhIKVEgmT$@lbAB_V(Vc# z^Xj(d%`9DJ6<5}I>ox_v8!PL**i6{eu+58+1g`*It9< z10~E*_r%kL^8%Y+_f~IM zCrfeSRuWERt;=3Dm{ZwV9w<+`nn8*4XN{EyiWjGf3wYG&=3D1d5y&z4Q^mI!6DwjHo*&3 z-c^#0^xn#KSObxI|H6#2R>*J4Gwt4_l=3DthD&f2y6kX%+!Bead1Sc!GsF$LrE$0ph( zVX5_+w8nakcTE2HY2&ZDD0OvU-2~83LuDRy?mZ(JIg~A(J!jHHZzaf5oKq&V1=3DXnywd(?QuCK%^ z(^DYI%r=3D-$SD(7x7_VgD>rR>&p)c*t#H8NLUjkO03>1U@^w+Lt(nP}Z3#QmH#%0IJ z?zc&K=3DTBIomjRIHZLF_c2N>uU+R>9Hu4O`Gog^iYnYYKND$gM9Ja#aXamwVcu2au$ zVindVZ8UbJX2+HF!baguAhZ>8XWH?LH+k_SrY!}H&X%n}0OYH4msbY_FX$qSRUX+_ z?CpYVZfo|^rAwAh_ud+;2F>Xy0bKLHESxF3mc@5bROJStQns;@0~on+TeH|Ejk%h{ zYIj@3*eufRZ1gJGaM?H^Tm*frDOogsja9yA*8C;q*8IB0pi;H#YOxDsCI+gc$}5&! z8pmoe?p(wegKz1rqcQYyE_7OV@)pFAPIV8X=3Dwg2_o+X0Yy0ZkikddRg3cjT>tl z8)XqCND~2gd!cLCS6kMAz1&uk$6K;!rlIT<5Cuh0FFUu;HOydTeeF8nbW`1iZIE@< zY__#^-gWgsK@FIufffp|^%}Z^9uqT$9t#fXE=3DSOw33pp_*-x>BdV}&ZwrtLt1oMvZQ!r>+_UrtuS6xMkCS}6t z&Ywt~pHFI8B~+Z3NT1hOUt5Qvu!R55Rasd{A!X$gz1zQOds3 zn$9W{Kc6DvCTN34L`|r|Je4GwaAi?G|3+_>Y%}K-&z~^5YP#J&J^f};j|nKfaWhKY zi5PSSm=3D=3D5I0cv@G96$&IF?wC?EWJ{Dl7fBAdQwogvfs)gUd}=3DxcT$O8nru;UL!dVA zFH2iCf5~4^B9?n9Db!2qKUuk149rz`msv*jny$fi8B12k8(tQ7#{R)zE$r+sRg*L721@c zSAfSWJ0+!BbF@h^?jk}*#iXD=3D6nT11FqUsR|o6+l{}AN zMq-x+>*{1(C2?fJDknHLO~i?BocxRj=3DB=3D{2GCQ?wH=3D{;3j`EHX?t+Go6@pX-m7%B$ z6igc@3=3D*sw6$o>s$!V)pTQE$j&??8+njV{;MnKs3tHn57;{X2e*3&Wxx3TMV za8htXRrl)B8-XAOJ+5wc&g8U$f-93S4?|B9!LOJy%-h7KAtnsF1J+hGZp@P@W)sEU zp?Ch=3D67Q1wr8<$ zI2aU*`Nag@=3D!s>c5+oXETsKbe)CVs-bH20X3i>|&7jwB^HxFI0OK1f8{m@lO6VahddQPR z7Mn(q&B7*AWZaEWM*EXjS+}lcQ-f|mYJ~1&qqU}d(WC@nMr=3D&E$#dB!BDsarDvc|rqJH|mi3&GnUawd?YP`mh!+n{y+ZNPfO0 zhPBu`7caBQ^Yho}lo;8o%&P+{n~d7aFz3NNT4GIef?@R#4wq>QUuzLXJMK)jz*R0+ zWP2=3Dp%}QTwWtQcaugTiFV)6i7vlFg@6>HoC6qK*&-^VS73i^+L*%t?trUYbc*MA@>6M=3DEl%Zdh8j%u!z>{>(MSOUwKBb-U$C62s)!Wr(wIoq+Z9T{6II>5{P_4S_QqXz69-*w6 zC){b;6dU8Ze13@|d-0%dgKe3`OK0=3DAc`tWeOJB<=3DCqL+l%8z5N<9ycnEJr5c4z9KG zcaG@uS>67=3DsOY1(bq{v?OuU%8?&^|5B>8h%I!2EgUPRMBl_L@U+ArH?QSX$=3D{U^Ee zTe*9b$Zn!Te2~%V(oIND_%olP1;+yh=3D2V z*=3Dr=3DSz9FEUgfsY(W_Q+oWk4`?;wa(U(j<4kvhpdDjdO6>?1VG7taQrcdI58Z#vvtY zN9h`gYL)^dKj4$S2=3DJ9Dn4LMVY_@??=3DD@)mF#62$ys~ABEXMN07kw<(s_oh0AGl)n z;u4thk~Q9(DF#d>q@rGeD!*Cb&aT*<^&LR=3Dz6wD65o>q9@7z~u-Cvnyz4?dqM=3DXHY z0BV1Czq{p7kHRgM&o-7%M)zc|x~n)HmJ{=3DQ#x9?e#sDV8PRmU@`iL`4wK7hQe-y!Zna~<`ZUSvB*31~N14VE)wo3-k$s~65H=3D}w-Omebo9 z4or-v&RAhpu<++Ps;nx$=3DyplQD;6zT-ks4i@ZyY_?(|Vswj^BOnp0BTy%c*{2{a@f zNI^rUsh7Hk%yoR2_F3XV&+IO6E7;p?d&dx3Hr)% zoaddClSw(*^D}#30zd>`_p$!noyn3APciVgT&PlL@K8C1BOQG*|6K#Bc#3D`&tBlo z@rX%DNBuTOjU@p&Q`iaTFwYeajeDTNeR;5AcmLa@oNbN@)Nj}&D;&EANJvRfh&wHN z!ERZy*>eNLFjZwsmkn6h7#h&W#bUEc7cVTajN5^GrZpf-!re|hvl5;(JjK?4zOF2J zxHX^l<`hBj$!pX5v=3D zO*1)3s&nF%oU}-%1x=3DW=3Dw$JXPPUYRO2`q?M7pLmn|$<9K~ z1Vm+}^fN29pLmn|iN*&x6Z6Twk1sLxeN+31H@Tnav6!^Fwdk(kOZ2l}YCrKN_mjhZ zlUC)PCYk?k9H|$eCC< z15)}qAhn-(llwU^rJn;+`Z+MQpLmn|nUm7boRog%r1leUaz6*9^m9;3KL@4u6K`@q z2dDINa7sT1r}h(XazCL4ljif1lzv{4+E2X6{X})r%)N$$Au0VFlG;za$^9If($AqO z{T!OwPrS+fPX>SrN z&F|mO-6x!3_0}B3Hmg;_-0A$z-`(ed8g~f(4EG}vyy~vfUbJ#%f+ER+8WvhxcJlK6 zgWUte{jA<;qP-}ZZo;9!NZ2N#r4iD+oc?P{=3D9gRF61O{~Lp++(cto0{{gH ztud{DG+#Pj!tL5;T~s^7)n8nDK~n7ny7mIvCwxw#_JW)*ue|_nSo&UkQSEN$|DgJb zN!3r()la;r`iWmr{Y1O^l8dW{+xd%oKPjpDNxJ$;7gay$E2^Kg>aHa&dS8BV^)6F=3D z0)&JmV#*W5eV?2RJ=3Dr;Z%os~k36j~(p4(4I!JMnal(+*1ySQx0;u@=3D>UduOZ2}fmp z4Y$;tmj0w!^%eMB)+3cU!^GftQm)voU&?tO@P*6F5KSi9Z#t#gRHsKT))Q-9rQ!HVp~z1Pewo2|z!VMl$6#UPX- zQ_2~%W;PO)B)N-_)j8ROPPA-m@3d2=3Do@6pjHlM4^$1VxO>{8%V^OOrjnL5qq3t7rL!)U?kNny^3!=3D3X ztj2_ZQXdR+8eNG*xGqlw!CE|;Bzre?yZ_QG@;XTO!9w?0;s(wKL>7p&x;qTb7S7ZX z!TJO+C`t(C(8rvAaI&G_Y9UZ(_b!@UGJp9Z@8TuPL@S_t_Tpu7@?OOOPi=3DK0icktk z{SCZpBEnZW%C=3D7`7zm@fgt}8zZE)lG@#DQ#aS5V0$Lvz?vL#FBFI(a*FPmLFf6n~k znaIQzrwY^O=3DyL{g83DO2U4;5__~eztr$3G|r!L*$-SYS1RQbCW^A?vZU9!kKW}O^P z$?*XoAaeNbYKYYZF{Pp*XCL?2W7B>3!vT>##Nz-)pN^T+9~5dhnR8ng$NoiUXCmN7 z!9&g^rt1?708Z<#*#MF<+kfH^N2ddX^(l!yxe=3D8eRNba>uGr|^j1t49h8b6kZoGn% z=3DuK6@bphjPsNQTGqM9K(ZVhOwZ59y4({t=3Da5he1vjdWc9f3ta|rdHlh61{*1UW#fE zZ9B<@dL#OG-KS5fM^h3_$a;~_Yo$7lhBh^@YEh&5qiQ&+=3D_zJWd9hc{?ro48gDTa! z4d}lZwI#Y0V0D|5Z?J_Neu{<&r=3DW81Q|YgklTmXZny-&h1*OR0s3nC`c#;NzIc=3D6R zIXlj)55R!V9>u&bNu!q%iRSklXX^syEuW>e7t9h1Hda>wfSfMV0&fj!r5sT;@N*r- z)0FO0@hyugx0a!BS{*1igLRF!5*0H6+lx}BoS#b>8#hsl_sQc_HlU4)+>^1s3oa*t2kRD9q1k?qdIF}EgV5^bs7*IZ&0t%qDmENs9DaPRcaYTcO zSP<}%{Y7i(pRw8F(O)yY} zG9O@)jHzU2u-s)-+vr7ltZ}P^flup#<2e*;$g5sg(`f0#EsMRR+S;(T(yH0i7|4?) zvZ1!R%38j7;o>DXEH-CGHJi5R{RTazx}Z7g(Y6F^n+LIVghVS&{Ul~ zce)(!*;-bs)@|G*DtwDJZI%J3-?&C^l^}kjH>^*$svB4p=3D1^+0zfvEXHu@{&!L{+| zxanG?Q+a~P@v)h@4gP6rd9ryxjGO0_klMNPt1V@CfcaZoE-Q$2^ZCWG-y z?Rg1RUNa<GeWJQ|lLP_KhU*`hm3o;-i_HJYB@v<~CI zIdWmdZPkDwjDEu0j3NphVhh2@Sn;#q1J&%5E)QQ4W$`UM@Nd7W$w{m&2EqNU{^oOzi!=3Dh@0hv8#bdn%6UR?P17u?U#EJP+3#NI; zEUgwrw1Bs`VG|pqiO!oi7L}W&s ziV;Z6OXB-~MWg;7H6qcIzkdHZ0)HKWzmC9PN8qm`@YfOe>j;<;xR|u?l`UH2Kyl*Y zzpomvi_`tp|JM=3Dt|7HZ7))-4paUBk)RmP(=3DqCYJz33EEdg>DWZ;_`_L6USpLIj?m% z#g)jL2vhey<{a%DaB0_uPdu4RESKu${hTiA-XfU6AEFqyX41qp6d{%AKOgr`vPT-X z{GOE`X$*h3v8I^HLzEe;t*rfbzd&!BzTRiPp1%`4Zts5vQ=3DK%C z9xHZDrDQu&G{RC%6}~SHMWwuzd7C%!jATnk6eDz9)hcrDPd1VRlQ?M@Lp#(qFTd%$ zJTyJ;1_^4L$3xQ{F|i9GcFlO-r_&W!c4rp0i~{S$xX}&q#-`4Uz}K2Odj&jAo#}xw z9ns+!5&8)^u!b8Qg8i8AhtYqsy*bAFpzX~z-g|5>&tFL5t+tn^1;krxdtJtRllE#i zk7$(Q!%7%N!e9DJ-qm~hJQ{#M{mOUsKKwweaGQ7aE|GWjvUpd|^Z4OuCj-BfXZ1d| zpVc$=3DJ+s0cM|gcqKkxmtD9`BUy+66=3Dd2i3tX;>uA)UQt!$A6EhmTnVoIasA0!{gxN zqLmmM3m>g+Et!G&Vo&o%bX^Na2R&_zGs%lM1?x@1G(#6KDXG^ zb+wgbpTIuc%<9&hX&CKuwVaT5?9LYU-uy~@05;I9;4h_+e5}9m*w0C9j=3D44j`hY(Onj+TQwW;e9$R%dnVvT4pAJ3^gR!C{fFHyz51Jwopaj`NBgPjNKy zww+jxBl^zSp-!H%lb3Vv9HQUV`#YTbM-vrf|8*?p6cw)H$^ zmloYBDYohq82_AuISeF?LTo&rw z8YqZ)$+hFXZCU&CBtQaRXW#nF=3Dy$20ZU4@1VA}2H zU9mHgJd?*4DWI^oXUD&jP070p`--#WP0By>Fu4jB4~f;0r?9W5S>B!4GQE%|XiR?3 z4te$Pt4e7t9@6xt{Yd%yu`8vFexBwZk|Q=3D&8gaBZJKGt3rxQdN2}yHXcr&Ot2lYJf z(PEeTC6MSJNG#9T+3$7Il@zny(_Fs57+(E47Tqj^ipkh*FH}c*O*`Ug!wj@FCw!Ky z*!-Fo{xJUEJKhTnUliw6OWrD6KP0+=3Ddefy=3DhK+HGPsgfkcC0zILf|H)LX1^TI~=3D$| zSDBWm@)y8Ob;O!>3_H+{^F715qInNsuRQZRRh*NT4xxE*r)Wso+RG< zb$!YE@#f)qnV{!M`&Fg#crNphcxnEF*q%RIE*W&uAH=3DstXY)1>BUBx^w}r7{SGtua zfn2+aomjoSRywXCJDnNU@4K2}-dq*#r>6a)F@qk5B^Qlp-$F^*qq&h@p2Z(2<8wg=3DDcC#3v2_*hC3YsYm3VG9g+s{>G*Wdj*rRn z*~gt1VsRXy&VG`^(=3D6C&i#OEC5`0yM_wh8ps~xPO4ji%fw9jKI4RvOFcDzo=3Dk>YHD zX_SRyNAVu`n-_ucaCx@0z&gus=3D2@{{JVd))XS?)7@ZcJeM~kvgO6sFU#2zgop(HKJ zk)%Z=3D#du)T)@(;`4lNwQyR*(fe}2<28a*#Ku?DRYtRmJdT!4xV^dVdJv-xaWb6sm}&7RMT1K>F@H^ z+abSDMt-4;)FHJ(l`CF{SJ-a#wm*s`UxkIV_`ozoABcIH036F)8&$#z{(+C-j;-VSL(&WG-}u=3D7Oj!=3DVfB)VCbudEZP* z4#`7?#I+3m)`i@b%Wl7*3ffiEGns0Yx~F-8feMUp5Ci#54_w7N*295375#gbkbo|Hgmg{u>a~9P z(1hi5hXuRSWp{^Fc86tkhb`(3V-?!vP3sPGb%%|%!|XJ`ZY-y(8%HE?LaSN0xew{} zD@#0g_Z=3D5_*P4~k&iZF}24?qw9KwPn)Sg|S37jrL9z3rnk#}9#bt-pH^Mzee;#)2# zA)PA#pnwNFq@*4H2zYr$wUc=3DFw;GXzkccdLje_m2XF*yw{;;M zjX6V~I<_oU(HAMsZ=3DSe6$RsTrFvj1K4TP6xDG%#BTn0WXci;V?KU~&};9>@(eHe|w zuDom4K^Yz3h-JI4JxJXk15W`Up0 z-j7v(wz~a4fEUK^isu!+v1MTQ@@VZB1Wey`#s{kdjy#?+114|Oh-ZzuId*ARa)l7w z!*X{o1#O)#4251Gtu(P0CX6>bf9&*QGdazFq!`@XQa-ffT_>xZ_Wbrb)%#sShWN3K z>~AR^qz+g`rk>~l7#2Uqlhgby3v<-UM70cU_@KXOYfjqc{{F};9~0v6hxr0~-3yyh z+BYkQS#ycK*puCPoPS9k?ud}-6`4c53wD6`T_4K~k31$g?*R93t@m>uBJ7Z0L;XZc z?1jWa;q5v0SYeQXwNjs3X&zbcL}21iz)|`B7SO?Gy*Kw#^GO_ko8~_4U;y1JS_N^e zX2#zG&a-rv4|RhEZ@sWjXms3~A?)(2PMGCE)Uw#2p7ILV6}$*I!!qYmV0-Lgr*O=3DZ z{AxWsvj7fUGO6L4NyW2{GspW|`}+;=3DO!!uo&Ux79XX8WsN;A-h)l9xkawGdvSu1qdbs$V_^-E_=3D@BfdKFaXZWP_dVV~4n6--Z0Ey0b|0 z(?4+BIaqVk?>Lm^*i>{mR8=3DenOAasncO-?AKI)+Sg@R0;PE*mzlHf22V5N6C?z~zv z(vL`zMv_D>RhpMp(Jay_%}uMQCGLXbN;9WSOl%1GgMpF4PhTDLJJgQj+dNA1(<=3DHB zbg(*yoatD600jzD4UxnH@}Po4nJStgeDz!hV`SKBMoOc)NSby*T190tv_}~1b<#BU zFPLlvmwh9yEPyyh!jnpygO|k`aH-jG9sr8bmOBJj!D*}LTxrYvcpN{xwF`B>ClZ!qB*_vFmPyn#)2-akFKlD(Ul<6FfaJ{M0@ z;h&LZiz7DTbHG2lXT=3DjLUD<#CuK>nq9JDBQlTD~@r%OeDCCE}X0ba4lRy9xPq_4_` zwlaP@tIVb@%V_VuVyDvIH2HKj=3DEx5)-_^)ScQp=3DIH61$l-%0MKXS_O#&tyR**Ay{I zzHP<1rid)b2*7nUW~!PCI`_?XZn|+um8qqw=3DIWQF`Lj)U7NMG6GMa z!46r&t5i7&y5?9B@2&S%JoL#tfYjK3Y|<4!W+)?@MO=3D-1H2ZqaU1B+GMth9+qSa1AX+H)9->KWG7t)bF1{T(<=3DHlLZ}2uVRkT^ zzoD9!m3|0bg^x;2BU?_Mu2LPJWvPYi^wFJm1A4KapRSO#a}?~In6sok18mGw4}x%R z_vPc}1@iD=3D)$v}oP-lY~+>^Twvr%5-=3DRt!UL%lS04fWieNs%W2mZg`e@CymzTT|52 zB`M3Ltqf}Q;wVDB7l(p3+v?dCk=3Dq*@UdRv?=3D_fy%Sv1&J2bl`Vbwpureb|DHRo9Gz;~G2L?>rFAuWr~>8y+K4A}&c<`3MkHv`m|~~k z1)h+U%8FgP4(oEWwNHkdI<-4X##cmKI!rgPI7b-hVN%EtKRwDB;ko+(_AH#4JcZE8 z_Q&m9-DA60-J{}RI`K@;-8Bw>2njb&`gxjHlls?BcXdf=3Dm+1rxknS?%uETQZ1180KLT7M@diq9OCT{>rVSANtGVoI~$`Vz;9u6ztTH*#mk0{4EH48TC>%lW*W+j|EDLtPbzt(Q4 zE~0p<-BMV}FVFwA)ci9^&lWJ;URXDSRrCVg`4UZiU2XqNODe8a;kR*%oMQ7t6`2zF znD}sR0Aw4v;AVdZagdS&o*?R=3Di zgvj9RM9@-(gek1~o*b!xYU6@5k$=3DQ&F*^nz$FnH^5SeDA`|naq&(X4yMDkLm(aIbf9IP<;P2f^*5} zGQpNYQY2H;a8a-55@inkyBN^}*7?4cI`E>H7M956D$UV^G) z&j@u{k}XWF%Lgz<1Q(VJ6GR5ZBms8\BpQ}Gn|B@NGrFEEf+!iaUm2C129`u zE>Vt`X$9CqH$!nYmLMTVSO4VWbRfZ(d0fHG8%}l#gUnHwE zgf*m*M=3D!=3DH)?1psIvcp;DJ$L7uS>v{;41%6F>1A-b*eX7L>B&KGI_ zi>l)-Ag`18&q*xf*j}M9yS<53ji>|OO)rFKU0g#jW##aMmoA5g51B3idX*_B_Tgum z7$_|!IKiMEV%>UoKFjYYQ+@2AF319&%TP~-%!=3D#-8z3vPLq&sUsHHfuB2}~+f6KAc zXI1pG8!1#jHY3o*JL=3DIsJhJCE@6D(KkG(*&bk0x$JRL=3DwlA(K?Q20IhGgS0vyeh&v zJ|23034JW}jgrEybU4-1PnyC$(SjzSm;AhvcqIb;W_DayjZxhaf!z->x^35c5%+Hy z5c>2KI}m8M_lewx9<*XBAQ^t9w!a+`93TF5%d;@~cRrdH7!~Rq5zKg$7oR4lsh<`R zyX&aXD^0%xkUm2Y{2-j&^uRae6k&>|`5&z<9&&JCMevn@TVo%=3Do?Y!}uHZA()4b1$ zy^gEg)4ap6rGKb%wx{_h3Fmm4e`&=3D!h*{>@(cwt#`U%jH@Z?|H!J|=3Dr&jTfP=3DPh>i z4`Y)Z>KjFxA+%^*e88ie@wGbDHy{sT5@ov=3Dc#po$E0pTSSiMu?ztJ5p@}Br_9+i^; za+t01fNYrYpgRfOw5nI=3DUH>$YqzXcHhow`YbDWg_JWJ(qu9^ zIJplufP_D)0We!%nQ$0E46d^Y@AKx}E*2f_c>4L5nbcH^> zVe?QR_eEi%ZqwVH#U90yyD9b-tKe~jcx}U<5Agt%&l%uAet4j7sPn2|KlS8F!r~d~ z$qK$kBnR^lnR1Ch@q#BppJsU;>|onMn({!08u_U@cSI&9kb}g#ID=3D*CC*7m$PX^;3=3Dw~Z(lESM~pq0`LbLHo0UnE`cR)#uS4R&pK5Pb}7ZJzRokR%2W zMKdS5L^j_2h)CGaN!YGN9#V7S2kkB%DqOe4D@~HTRy%na2M+DwD z;87NkB>5e`rs5nbJ4j`0P2r<<04*c>EwCZc>de+n>?2Z+@ zOgE6G(PL;b_!AM&l=3D`|G3pTGHcD1icr>xN_HzeV}D^>J4-X4|Zzu4gvR5#~Uh5 zrmdGR^|!(^wFtwS+A0$56v`L5 zItA38*!}?1h71P;}io%LuCJQe7;rlTB(9qFk@8}wX2-LpCVu=3D4Tu>#b76xUd^VZBgRX}6?E zNDyw-?gfO$YP5uzit7a}-UMznSr;c|mB%K9Liap=3Dmd}sfpU^H=3DO52=3D#f>`;ZOnl2J z_-#ALqqAS5Yfcll=3DW!O$Nt2gpY%8`Co@N=3Dhu=3D)}iU&gQY&y$RTB94F2J;kkqCx1Nk zpr`qirIFS3xerZ-+LfVG7V6LFhK*_wM@saq+Mw;QZ8yIezgv*AXJK9<|2+z&@&CGkw=3DbR+kGDMxY1{P^-shKxdd>RQZ}m!myw)3> zz)Eukk>;h-5eP4y2UpQ&mjiu2Ltf%b^Ygm0^OKWmDD=3DjuEa)SBgq1v>>d@X+IdE-m z-*zo1eLsr16tqhU3im{T+mMAmBcbs6eN}W1r&sY)%vjGssnB}eS{s~R!Q>xP(GpYA zJ5?Uvf4FPi#u3O0xO zgR-Dq=3D;&Op!M#k?9Mth|@iZ{K$z6>9ik8})FN_bAzC}M4CV|0VBF~?$5TZw`PwJL@ zBIspD`_^nVLn?xD)Xhf9t%l+$gcX2cLu2bSKMuV#D*00yqTbGVuz zG{zm%nCyGA1YOI4G!LzAzJg(%(Iu&d#Hk@l^H409@sWI?JxO)Qf7J0qb~`2nm&F2{ z>8y%>&{Gmjofcth#B~VNl>M=3Dqfl$i|x|x_aI2~}tS@v(iJU{E@c%elSa87Q7KC3uC zNO)q8mI5|1c9bqe@P28TiVl|+GnCn!1&?s~MYl|!C?68K!ifYEYDo`A?1tCLzLWwG z-0x*L+5^3XdU5`1Q`}3LrIdL<#zeXkomz^6x^Z(-k=3D|37aOL()l4&Ie7O!zUbyVpm zrd9MQ0TiL7Uwd!b(csrLj{AdzQ5|Q|lQq2D*$ou2DW}Q9aaH{JZYW7$((PwTSnRYH z!95GRRA|VAXhuai-G-*Ra#y?hsgW_gfqbRp8j-KGlUmD-T1&3cJ0j?;t@N4<2&Mia z-n=3DGVLrKS}UVLAaqmi(PWlOHi8{43>=3D55%okFDE)H_HsmhnLl~0K;r&b>#cSnNSwpaNCJzv0ua2+8Q zh(GcppCDM_J>Z|3*9ZYLhaU#c3$F9Xg#c2~O$XFYWR6SA+#2(6L)fe6Nctjk3Ozc` z-~c@s)of?+2G+kk?|W4J3*uXNKMw0^-qm>I`$8w)q;8Ba)&)st*tgWQ=3DpC|KY(Uoa zf`NU%nzq50`K=3D0_j259|V}=3D9~Dk@lVF4yrULa1Y`Lsxv7s!4xEhIqP^zp@8TLQVm(J?bAo9;H-37dKo(1KXB6-=3Dm|jH}A4Y zKLpX7We6h6E^!HhhdGv0)D@~Jo&{>C8Lo%$oX|T>&(N{NVoM%GBhw6{Z?^9+xLLEk z&v${RqUSyWfkwts-9_>`a3yq@I&e87$!L`L z*ii?+PXC_Z_J)Kk1D0jS?Jt3-TtkKx3mMiUGVnvX9}$Y{HleuAGb)sVC9q=3Dc>i;{o z6Pj|nZ;;W4x?h&AMmj^KZ##tk6WVN;P-T~90p2#~+RbrvsBc^@?2^dCekt48O|&Dp zO?K-mQ>d~mm-}!FM9OMOlofa){&f+XWT7K9 z5nbZI2+_C%n*mga`bC4rKepIyC>Hj)nwK;foPC4hSH`2sgON16*BiX7_Ul96=3Dn;U1 zVPLg!$k5Tn5dO{sJ*EzP%=3DnyXZr^$Z^${D533P!sJnFzZC+W$44-m`+3>DqS5k>sx zj}{RXJtxz#-%D3xuc9FOUU0NJ@CQn2Ir%<25<^!5O>^`PZ+H3Ic0XDaJPK|f-(^xl z*hS+ngS6hxZWx|urB^CvuaYz0rnjYm&=3D}FYS+s*Dy&A7m(E>Rr>2CFS&1zm{xB1OP zn+x=3D++a@CvE!9nxS&2g=3Do+?t)etml%c8?t_1*o=3D5MXe~0vEc@eY1tWni;HrfkAJV5 zNHJXg^|t!VevyfBApV++fpIsTlB#Z6NcaJPT)jmHk|Ho+Pm?AxrSG9SllV+Z=3DkZH{-OMu{)jBa^kcL6&`pnaYzX8ayp$K*o4#R92oTRx4L|%x9@eH z=3DJ+-;S4+e~A`#QH0~h2(h4e8qzMdW1nUWXP(?!(bZ_OHrj-|h4!7L@`r@ex(C7#Cz zhB~j?yh>aPkuw0x)+Zg#pkBDe8CnD8@#1v*>$1OEn})~MQLX`BBdR^4m*(>SW>(Rn zF)Kuv4Y_yur6VVYB>Dh`^{;WQk?FDNqWmMRMHI99TA;@BctH5O@MK04O=3D7eJGqn^l zI9B+ZOhI8I8OBoINOho>!$A(coc~=3DIc-GF;*b{JR1c9|f_fqbo*?}VoF?M&v{Y3bu zLMeH6&?f{$%^a2JR-lu5EwIhHlJWDYm)_DxAlITXPdW;a!?~7wqyV_-CWnnxFOxn+ z>{&Ul)_1vy{m1zT6zB!hPCs3uD0#U$z!M*WKE&7Ekp;Kvj>zU8edmH%Du|d%eDEbD zz7ax5jl9ltcU)H0zIl|&_nspCrDTAw?Vec)A4FK&JtYa>5cSkjaf9^HH)1p|^G_}H zaRSpM?O!fG8OSI$Bc`3ro&wF0jkEu>gAMB>sFR@8K9QLZB&bY+px#I|#7;GX0&WJO zBzi@gFHf1Hw0XGy3!0^x4!b2_1Q)4RgK63s+t^27px*qA`i+y@%^@Z z5#%);%b)gaLxy%`Cyrt0BE%CDeYb#+Fef7)6Vbympl*MfW_NBAHV3R+Dmo`Jy7VAY!F!noMM~h;8M=3D|}uP^nwv_$ZWf9cPZr6qP;DR4 zoZ)O>RDHj+PquljJLlPVM5>7GW~+k4H!5!kNiKcV5kyNGWxys*KDDIkGoWTa@N15Q z67WNzFKaj!!W=3D~NJ)zZEyFaw__P6hIO%+{dc6Cq7TcGR}B4=3D6>`pho(tZIsu0r)Ml z^)Ami({hL_;iw!wnjPHWZ(R(>)ixU)a}iLewr|PL&1n+mk}y_E+w634u|kfi(eKMR zHl6ncXCfo*<%ctKzOSXF;ZFG?B6&@|vQ2Y*CC)yQDC2#IS%jm}e>R)+w!7ogz`EV} zxdx{5b6~CW(||;Nm&s2%miN*PN2+H7i9rzw!lda8Vn&b(f=3DJmsVcsdkoSucu;6?Vz zp!s231i^=3D#+Ed~~fsgyG(qyU?66Oi8o8T)jllohA?o*jMVr11bpW4L^6CowK%s5aw zgv8d2WTq9kMB{6%!3?KKH&FceXj8m@BG`oaKiY@`77F%svQI=3DhG^4G|d4^B~2P(S3 z?B?4t{A1U<bs&6WfR6n^w7^~8s$rZ*|!c#+`xzO-<$MpoNx zc%Y?vF?~-!0fl$xUP=3DQ1WtU^&9aGT;v!Mj~?ZyAv`-WGAxsZ{FjchwY}PbC652_V>E&#VCCTD(Ji1 zeHJ9ze{ZIVQ%?(Q#Qq6_ZXZHAy&$4KdnJuor> zGSYVYb{r4%j;-ucPYX#el?!3sLrf$F9e$Zr?Afh+&FRi9eG9V#0}8#K=3D6|(f3!H^T+#GhsW;z8; z7N!N(ZgFz}c1fW#P#VuHbOmlHOb=3D`^aRueL(+m zVJmuzfJJl(OmggD5GauM{3p2o#<;(UAU75MVjnY13f6K-F zfcBTwf#)>I&>$U&dZFCnSM1#_xyQrpNZ$*+=3D%@pQdaewOuA&PW?*t&mFV&;z3=3DY+h z%FJBy8(q3*$8nJt#D0nGh2Rxtu;Raw!~kL0=3Db^Vi0Dmh=3D%gBw$wT~vmS&18u(FhG` z_G)@tZo0w6HUt7&28B9D2ENYCpdgC6WV#zEcl^FkXDBeL`NeHl8d*}P^RCTHLY>Wl z1>i(U^-YeyE<%6S@C6tzr7%FG+DNjEO9)#EF_Lp%rd5?Ui7L zy*LsFJwmxB7F*L9FBq;{*Ffzl{aB-pY?1B>vd-Z?#gt_PMv7$%;$l0S1k!bG(G_$l z$63`M4h&p_uz}46ak<{Cj~25UIXt<*HmWxwas!TOkaw1+xm`0XgKe%uXQyni64#9W zU=3DWsP$88R(YlO1^Pn=3D5o50@HyPzcpttdfHw1qb;?rGXrA%K3XQHI|zNr=3Db674CwlF z8n_OhJ{b5p-)jUW%pCx889<|b#P^ywfMLu`sF#zNBG~yMI7C+1%kL0wgA;=3Dxw5f?+ zLS%iOcE>jaGCR)ewZU<$ed(&ZCts&0eiTWGYRl35jg$irdv^RIYcR?UMDWx>WlTI6 z-o-JnJ?f;=3Db|8}m=3Dwa40Wj39I+zBlo01)WKrY+4BYg;$h$C3YOH!NhfCk zGAal!noQqOhkZ@dVNHD0?|`0p;3CwVAa{j?)4C>1HP9hM9A-;o7W7b+59RXfkQR2+ zQ`bo#SgUxDIKZwX`Qq4C%~v}tZtEU!>|nDx3?bJxxec(j5O<}i-W*?PZ3@}-gpfdM zZUJFDz? zqO|IH>_Z7DrFp=3D^t;FfoKwUB@yMFb>kvnW zru{sRmk(zkhuQ;aMpTdY?VLkG3P{(FHgfdlc^pj@EOBHazjjUgRU`bB1G8g#5A1H& z&9OHQ(IJsxL1bj5Cq_qv?ViW<*mCbxs7TMg=3DS>K6ku*NceZN0DNaF>I_qF;-?PhrV zhjd31!(#-wO=3Dloxq&d*3nz!dxaEVWLa?CG8V<2q`sp=3D_Ylqp1%r<2E53PF=3DnT2-Iv z-^GClw4_!suVXnHW+S{o$XqQ>5C%jD`!)%l*63BzOgjNXt$^G{S5^YYS{ZXiI#=3D&}wdV!1~`>nUM1mI^m-e#0$i@(T`o> z3_bT$Vob^fwo^$@IkrwHivp9m5AA|yEFMvqBi5R>)Qe4@;f^g+#5m9w)|O$$G?3wm zFb~vxR?qgT*lm*wxjFEzRfxfp$AFTPXt-_sT&($gU~L(MMWE*2AVjp5IIO}fl$o8e zRwtxH^Xn3bX{o~gp5}UIEa)sm!}(GNCWvNvn%xfS8!Q^ng)_xUO5q^Sj&i%~?@ch; z$A!h79Zx|c%T5&giKB3yr}=3DTmmK^m&F9HhZcy{cDtdYhnJy|&4)BKd9aIvTPgd^6+ z$)OO})iY6%-OX+F4Eb^iv88wf_v3w#3@C{{>k!qBx4!U)%YCso?OIH6t3EUJ$Ilx7 zl^t|sp2Ld$5TeJzxK(VAU2)6j1T+wEuaHCEVH1*yJuTbuX53HsRtGoJvzPyn-yywZ zJpSG+q3A!gGn1$e46qH9RV!VI0N5me$lhz zZzx5d*@*(;y`q2^>g)>klPl>|`jZYSO>>}Txn`{tknjf-AGYA`}&B& zs$T5ei-gpW4lu1L6q(jESQ zg*LZbU|#KSoi`%%>EJEsOI+uuu(%o;ddm^$CA{pa_%(ppC5J4;FU_4+?sX*5_QKX!Au#mqS*J@2lj}p z;J+DiU?c)CF_D}ns3Jl%;sryu5;Py`^oCHJ11eemYq zcFHoX2~L*ZbTXe?F!u36=3D+jW>H95R^@&B}TCh$>JXTv{}9Slr>00YD@37KJ$WsX+P7QuwF=3DZ~Fc`3afLmSAj>;Qn z7?&t1M8xF#Kj+RQLGf+-{k~Ch&%O7Y=3DWNe?&Nr()Jp2!l3sO58RUfDHh0ivOO$3hM%w=3DxJ7b9L*P-HN?n*0TPYeX8h56 zy72v1kuiV{IaJ@N$H+fHxUM3r*UN(M(Gg6gtOj_gDpSQy4uR8)De#I&QMZ7NuLMds zu+9>XZ_mkBo#28BxO*0PihFSEoo^l++&zjG`5#v9b=3DJ!JlzW$T%XUow%EV;Vm-9M9 z6~Yc257EwqK!GL!Hp6%ES=3D3tV@~l7Q;R5qBedFEWVML!Tg9h9};lI3O__}q5wyjTJ z<-~}G)f3Ndv1N_tgy9cn24W#02{GtSK|R9ganR0ybBR9Y_#Xc=3Dr?(!B_Qu`xKCUr| zzdaiF)J8NWA#~hRYiUg4?>F4FHSUq7;^P1}WWxBu{(}|zh76?VzX+z?s3U~il$}FJ zR~$aNg+!0kHcW7A00+MIhU<;gx-uAPtN zics;w;Sz2z9C7X)gIztB^k(PYH2$Gj9aICq5l(=3DyZ#nr4-;Z>9fKHFn=3D^ULNq|?{w zbYGnwr_)#Ibb(H{X?6h4TdY<0g!!LQn5nRd&Ey@eeJoe`^WcE9A(mbGvsu0U7g;}p zZ};R1l>^W>CdYVA-VWVLo=3DjBVt zlwmQlaVTZo@+C(FskJ=3D=3D3elZjzouVj^?)fSeKCpK9$2m2Xt?1UCY>^^UeD<-4KY?$ z54-;tmb`7^`hlJ#prhttt4bwe6y=3D{_fs1idd*5gel$tutMrj+BKOF?oU&UbDGYDga zXXLx|^fUWR3eAv~1Uf9htnRpZ|>R>foK_faU z0SPPLvsV6uM`HN|D^&z>HyOTZ0;KvdHDT&Z-M%b47y!evMI&BSVtR8RXb0>cW)H$o z&Il4B)?~A>|6mG2GdfjMGA9!UMqC}Rw|_S=3Dkbwkc33M0a5HnlBa1dRC=3D(MC)d zLNoT@>MYZk@F!(srFHHugzK#+EKrdXTwGqRm~CB?+hJiTHYJ{tr| zYnbXogm4Bb9|4tM@%Ch!Bl6h4$$5u?5T-#XuS7^EJ4sQ2!}Hy?kulAzO0mMTK?jh( z!b3q(Q9E8il_{YMN5OS8EAQI55%Hd@Ib%h{%UX{DW7XWzU1bIOCfbt?%QcWqk1ATC zJa5Ph-<;Buzb~=3D*R5CFq|3*71zKLST!lAKC8!WW4O$l8EQjP@%lYS^CSKw61VZWz# zStJ|>M#O|MPGG=3D;Y_tRF;Ce32_V)`*t%sr1V<*Z~wR(9F`1 zWQHD)ea8OXr=3D_*;!L*&k>0384`gX#?lqF}=3D0+M$Qh0GJ+(5tuWn>c>g!j11&Z_^9R1; zysZ)M|5`r+uQUB!OcC|$ryoFp3S$OAHE})IB)4=3DNk1BVvSJ8Bp3Gd1ludhx;7ELG~Ay^e|WV^$QXQPWQ8Lle2R$pU1nLz^ew)JUe zo;n(ENd>0gqOnqeZ%_yMeVZ1`X452TW{DH>wNy9NykGe&gHXfJ zt_E=3D-Mj?d>>Ob~(@8jj-?&^B9Vzv9JPhcx;H9<8QT-<0mY#;XRKh zJ?)wc7ss;2H1K8^>B*P3lrW*L|Ac_8kw!3-)W}y$7_6s0%y@^QKsN%=3D6eWxFkuZMZakzR8{+sFPfIrlJ(7M4PD0VY3cLo} z7*m4jfqFfPtPi+AmT^NLNZcMj3rhs{VMpbx!X0B2svI>x1NX;ip$7EsXh2=3D40ry;e zh3enn2wU`!F(dG@?CbCIFJiwF8rgp_s+~s^El?(?D+EvcB1=3DIyLJ>bWwZUdXL@4!! zK5YCin4mY9ov=3DY1CI5RBF__G}S=3D$$Z0!E^0HIq_QD8=3Dcf_(9IwmI|rZsU4eEoVD`} z^cerv2HF0Jr{rLkyCmP#i0#K~WJd?ve@CrdM0mozu0F*{THJBG3!Jj9JO*1~V{*PS zm9YH3e^Q{8o7ODBhXx*@I0GcPlZsGMF4dptO|qrJNAMY;?d%}fnuv)_*+*e`{?mJ` zNnb)1!)<3)JZYC=3DyLGX6v)G956|;!VIF!y8`2v8U8~gsq7iReO$x%%RCWp67p0H+# zz9M#aA~ZGMa9{?3_lbXcA&qBt#o`_qR2*rwB-+;Tx6d1Et@eYa+QC2+1UQNvG|twa zv|=3D`(%>rxQsX174s^-HQf7?gZE z)nr0V+6oi$YHY^B6TiH8DG{yI8n^?zW&@FDJb;ko0r09?pi~Q#YJpNMP^tw=3DHBhz# z<$=3DtU?WYJVu?T9)I&(bi=3D<&#-$K#G3?{)Ne@1w{29A)SZym|_%{95a|olVvQBla!9 zJZ}BDZH{M1_#VBrt?h86en$WCQ)kQtkIophiEfEv>>N5c-&hcpXy}T>GGyOdpAh+y zZD;Io1NN3I6ua4(iU=3Dk_gbR|09~h0!-|d>wfl&(0d(>Eb)R+r{=3D?80&3IL0lH@a#f zG!cMTg!4;d=3DJy+jFBgPTAM5rDBmE(V5Wdsj1yFG);?bkOv_9FrA|fTu`rC__ggY~D z{sJS)ppU?)_WE9Yj7|+SqLymL_ zT)E^gC#2vM-_z?a9KO|lQFA!Z^>w9S>V?&o(Seah+t}tiG_sjHL>VqG=3D0jxS>l^R& zB$Q1Y)2xbOjfDe^{K@t3s~^Qz%)pA4=3D+ZAv7}bYJ(>{>3z5E^=3DLsj^O{QDSd;6t)H z*Pge1W(t&w-NPX~P0@_Jnwfk$+j#Szd^%TZjO#yb%n%wgTngFs=3Dk%Rc@n&1@5M$Az z|F@6Z$amKpvuwW$-rHhC#8;Z>?4%dr31eKL&)g6(3?RNXp2@V%AhwaOP*X6sLqs zae2RDY0*+WL>;*RK)&LoL?2YZ&zY*^=3D6znrMt zMG~l450iv7whK%Fw%oJc9QvYlYs|!2!k|kH!OB8CCNQ_O_J8RO23BU2@HJI97quB!nO31A?b)* zEfaRfI?o2ecCWwFz6>;4yDs=3DZ=3D8*{5k^}TuwvH)o&!nT>cglAi_(2>fN-Uw?l||fi zjwfyQn+VbC)Xrd94(Q=3D`^tevXU1=3DT9b^fc>FqNTlyjOe2stoU9uhA)jG>f|aB`TL12@AWY zN>a&ckm^f}F^6)hG?fZVsvoDfUTUChB)KHbKMyoOETJ-WlFm-s#?(yfeMo-s{yE?>IG0-J%k_Gl+jSOWmYyR@2puDqBre zv(+4WeC7X?y4Lw4=3DSrvHT<*+uCfnb39Cf_onC#4Su6C|*x}66cha5jka@(I(PpIEJ zo=3Dkc$=3D_g6Ml6EEyO#W%o(~jpI_TYG!qha=3DA7=3D0Sf7>r~rT#QdzuxDe{IL3MW5A^VQ zbwjYd(}JzPMVWn(_Rm%G)OK!J8&r|~j3X5#~s7EOjh%%y-OlEO*RuEO6ZBSnSAg#5v*} zqaDK?2@d6OJ8pL@aV&Dob*yq2j$Fq~M}Z^Hk?&aHSn0UcvCuKwF~_mSvD#sC#5$@R zm5%L>osKfcQ{n$mKMAi3e=3DNK{{Lku8_;11=3D4*zZVGvSHJ4dH(dADX;0`6;zBc}22) zP|~0aDm%GW^-F$E^-tbxe_HK!>{c^oO3Xad@YcJI2J z)Nyjn%t_6V>!h62@p7GF3d?Q)se2bIANfz49=3D|hgR$Pxb6<6G2L65#YRF9QCukRVzQ}tZmYj&@my;QHF z__^`%@hbkV-naJd*IV`W^qJSEcOTVfRo|(7yYy9k*V$&+tTtsU>^HMtTtC$>r~lpk z2lQ|1f7^h223$R$X+XDxZV6oznqV`Tzom(j5-o`;al^nl1A7fr16SCm*dy%9ZY151 z6qTfs@{(^%j!ss|`Gc|t#SBt|R;Nr$>6)Ta);Ml*Tm=3D>uIB#~wB0c@l;A;mH(QxqK zA<09y4#^!_ipZjgf97xTHJh$UxTfiv9}izNy#H`Dykx|}5w;O(#PX3@Bg03kksC+N zAJu1+8nw(d*%jteuC=3DMRq;^kLsduDJPwSSZ(uSwI(}9;ha`eQ}Tt|-@a~)FiCjObf zVdI94Qx7$Xz)Jt@{Mw?#U>4 zT^57|H>cvfkcSA+MMni*M6=3DQ5%Y#0c?BX8`o>rG59Bfu6iz`!tEnQr^}$Jc zxIF47k5bQ{Kllw=3DE-#2rMM8k!nDK=3DeK4B!hXt}%~A1@5JI3wtv2|uSPQTR|?!LjRb zn6rAK(JZ{&NQ^9Ap=3D+qV`s0w&<~Kiel*_7STq&(?ehOdh-Pa(BeT8cQ&${2y?5rNU zRzIokUfBFp51y@WHeOhPDu#%A^R{-s?;XSPPSsJ^bmgrZc~(ix zAR_*c(HF7M#z4C8cPknh+eR7NW8WRygN%&m*&g)Tj4tqUgo@#EBQ98{m>P7!rGwZt zM#68H1p_FK>8SSOKY@ue|0jxrW{?=3DZBXU4Tl|uh(=3DVEboHl3h}^!@pgOB||x>kA#I zqY^cPz~nyowmt!X#qb6+bK*o$@ng23h4eW17d4E;RDuDynh`G9P1e;BQ&x%4oNes zuJ^r&bfKm}^X@w&n6soP!a-u52(dPN7M+VZPHz@z2^C#S=3D?(o&;j!WS@F`P_lBQdk z)*N_8x5V>P6OdQW-fIe2vTU`LlBz;cJgZ;rHc3MbkaVH~uz=3DE{MnY*mMBkkV%LD@K z``(Rr3It)~lL7*%evNlNwGGpDAfV1i&?7uU;aX3eh~bBb07|+^=3DmLk@6Jx2ZZf`|Z zFx9*E{$L8t0nK!U8Jd8sO_X`F68y)Q^B%!A;TGh58wmcQ5=3DY7nl>ZW1iX-t`s22v#!mlTpU1GNwiIOwoQ|M6DCNB3>D#VptK}xz!;$l`nXu2u zeA&;)U)93w-1eC{vQ;nDZkMSo`zY61$uw%mlU4O_&WCmqE24Gs`p-z`%&<4^)*Sr&eFy1u{-^D$_iWMD7D|DH?s<{WRenvyxa`)-wZ5J| zr%ly|Mc5jH>jtxN@^NPo4{2*=3DiNxkWb3)5_cT6Eb%6 z$+d`8ap~{r@^Q)s7HMQ#29c*I*%ndfe5n&faPK#l*SSg8iB{DSkpY->&bI`5Y7hef zLHYiapGi9^nouf0XZiczf;NXeo^bT|fTKH&{6Qxf*n7{m4=3DjrC!EMps#UF=3Dkj#@-a zAXcs5flhIcfVz|Ktlcz4N+ zgd2YcR$dN_g3i6-oLz!13H|N`nXK^sLo}|vUt9s^iC@UrnJ{l<`deD-&?DKeo!lG% z(UB-@6CH+BSv92MRHl13!V0E4_-a|L`Kqc9G&)K=3Dr$!(-jkN?e80Br^U(LD&Er$I^ z0EQ2h4v-%N%We69x6SNVIzU=3DOAnTz?QH;XQc_PpdA9aanw_H<%5OzoQenNQkD;_R; zoy;&(PjBFNA-#;w0_`rjJFn^nOQ0mL;RcHe+$q|1Vy34X73{_gvrf+}-1)>BGdvQO z=3D-ED(Wf>mKGLj;Ahm?R3<6DaceYeh8!8-AZ6oqOA{*;j1cJeJH^U~9tCQ%X!P4ATd zqnlcU?ryyx<>eLyvck)AOy|^HsIvRs=3DhNV8WL2vxd)ne&Qp{!#o0I)DKw&|*K6jFT zVhloj6(6DBNS!pd>#X!hv03S#CNSEZtAk{=3DA7mE3_(d>!g0CH;%RhZXW=3D3kpfEk~d zbFs9l1CjA6%mSw0wHUsqcWP9ONHNu#z?c_ICv_hn6`h+dn$USh`1TYZ1t=3D`eRv?3@ zz~D3c;D_>wh#xpqABC=3D75W8ngx*26L5gvciTJa{OcKlpdH~!Rmk%NF&Mt+<&!I}1V z(mt0^0XCohOQ5mXW3>sE{uRcRGKPxrwZOvqOw*z9Z{E{gKZ-Mw&gw_o-=3Dyx(*!)5r zb`%WFd{2BtRF9HM+cMlpil+(@Ex4bYjOUPDPLw!-8$w z$qjw+I3kk5>n{li(0LV6tys$*Y;(>Lu5 z?|QT^woXZp`ktdba^F--J-Ctajf8fS)bh$5_sf9kI~vDEUkD%T?1jT+RB5dYI$FbA zZ;DWSq4y7x9qJSl(oWOXH#et04-n?eN%_U;N95w+TUIjq`yyo~e7CVeiZiY@ERtk5 zN*0{A7_;<~czmwwIokeHJx2+=3D6{7MHGj!RP5!xc>%Ut?$Xgy}&z8aQU(V@O@IFoks zy)7{E|69Xz3p_Mdg79|9jEn0D=3Ds0$M5t%#(PxFlNe67|k7h6SjrTmb_=3D=3DS4@kv~oL z1kaxV`wN7gKYb>+oz~kKHYn&%V-gAh)o#whIfDFLRlUnLB|76|Q7S9Hb}s1|%shzA z)q&46wf;mziKvvZR)5@**L879IH0O18r;v<@1!%KACbL$RDI}-tg0MdE7k6IVf?g| z7URK`ppm!eCRNuTL{h7dbk`Z>ua;4ILThv}i{nv{<=3DOf`|ARgbUq`$G#qgCpP78#P zc(02sGkmM`ZIgWN{w0s^JP{-)?AETA$)l;Pt;u8}mITV%^8R~A_;F`vL3y>muD%glP}+hef(s z<1R(8;nq%b;WoPE6^Lor!5Di zXdHp6(~-!_myP=3D0eV}hj#Fwr^!=3D|G*%>P7LS?(Eic zs_ES0fkspLL|7P%fG`RC-9^K+&+gU6J|&J5%2`iUL^12aj(cH6wy_p>1)&oB7cgwd zUu^i{KZ zfHYC9M~b=3D!Zq^5je*)D%xqagvvWLNNr49=3DpW;W7q$LyOU2n-}emuLH|FWyk7=3D-LBKK=3DikJgyWrpc7|ib*LjfOGHUxHCk5u<>V-q% zU@+tI@91w&gsKt8$A<4S77w9q6J*yVmBdLRiUbj3#qM0#3is*L%RWAKvA~j{G0&^D zW?^D@(3}XrpDw`Sz;6B{{Yh?!Yj57Rkr)Z#s9hR#7z1ceLS@}u1Nq)J%e_F9X~CZa z5Cfu1T*h<3aCG4ZOG%@8EM`gH>CDgW)fhn_0^*=3D$1y-`wfLRlOWZB3`V}~pupwwB~ z0nb_mx)~!BI}JfH>I`l31mD>1#rg5Y25$a(HQrnAj-NSc`W%m#8$U-k#(!1HH(YVI ztrw_DUribkSh)STWVl=3DF!Qt2}-Y9RVTPYO*2)4(GDG?kM%-M|tKYvXK{~QT#oS>Tc8`FehF|Q>Z(bVSOP3}y2 zWgO0ods}iJ&Xl*@l2tNi#!Kc*GNY(jQ4(kIWYQ{IMN3#wTt!QG(SU5vC?o$G*dr|J z`I%e|-%u@^Cb|;G1TS$Wjb?7`N`0Z@m2S&Q2@IwMacwdNwze|<#zTo|pG?0@ zT^V**dXPZAR_#O`$5UA;vZNdNEg#drQ|}r11K@r8=3DbiSy^M#Q=3DQqogT`-@x4E>&AA zd-D2H6OYE8ZeMKMIR+3VB_>aNxA*d`2ze^B_#ZYI2amJT>4UhnavOAGM=3D3{{i=3D3v9 zlzlFE99%DUthKlY7I&@fEABpOBT(tbU0`^fA7Y~5vEzkNUWmSG^;yb6RO!jUAV-1d z7<{pW1Ku$|${*xcjMUX?enosc!4SMP`4yY~6~6*LMWo56&|x=3DlglRG`{5$v{VM4rH zW|ELQ4PQ7%@Blj=3DHck6j0r`ey*ZeEC!I_}8c%S-@YZdD<878`w5P)$)g{#a8<>>xu znQ%O|b4u4759xaVsSEXI=3D=3Du+WA$CS%R{OZjiqfEdh<9P``tpnP$;k}-cfLxH4xYP! z{gxYgA!btC=3DJ=3D-^qGS43TK;(XUmqziEp2Iz)YkS%J^9;|+n7AraI3cZNB;WPN9x3eDm_prn{V)rnhmfCEkZX3l61998t_ujjE zz<>d2;_{4wf{bG&(%90{Qk{=3D%Z92aVaVJ0SX;y4&EEnae+A05sjeip1wakQY%ZfgWfWv=3DJbi4V%FV6Q z`E0J-++3GU@y|vY40pG=3D4PLoimjGz~T=3DD`AXXwX^s918>m8ne)uYPd8ag%Zty7*mE zCC6eja*vtUSh}0wE;!a2o2V|;wZzJOMs8gT!>TSF0|0PJxRHDQY>KrNO1+)`cV?J97n1_NE)w(RdB!5|} zdChIo?_V`0D(0AC#}uQ-uS6xr(oEXZXcUwb7>%ll;aO(1s)o;7Ti>#ZOpty)W5VS%ze`dd;9ZK+Z?%37Jb(a8p3{U9 z)!MM#mPUOg)SH`IqNMY&QDLe?5X4pjK9jlQ*XGh=3DBM(YqH!-i?++6y9TJDe4QGY@# zk9jWlml&svf?T@P#QjDY@fL4x!A67jx>TX=3Df2=3DYG06_!;(5RnEyOcU61HiRKdZ6LS zI4O0S9t%JXFOmC=3DhK8>ZPsO=3D5xm-FPi4>D|aH0PoCjW{zp*TT?y%CCzXM%+PTio;A7YjM7?PD~9LVGm9PzDvD%qOtm}bd1vc7*6@~3v)__StB=3Dc0{i>=3Dlu> zh4O2|$e>B2|4*MBpLXi zVz%^xHcEL>j8QPznZ!})a;pql%AW5l%vP!|er9A>w0yfU;rzj9ObMm5_1TvRPhE7B h1$$E9OC5NW;wF=3D#{%np{HMz!)N=3DqL#emq3t{{q8tUR?kH diff --git a/roms/config.seabios-128k b/roms/config.seabios-128k index d18c802c46e..0b144bb1de3 100644 --- a/roms/config.seabios-128k +++ b/roms/config.seabios-128k @@ -1,21 +1,30 @@ -# for qemu machine types 1.7 + older -# need to turn off features (xhci,uas) to make it fit into 128k +# SeaBIOS Configuration for -M isapc + CONFIG_QEMU=3Dy CONFIG_ROM_SIZE=3D128 CONFIG_ATA_DMA=3Dn -CONFIG_BOOTSPLASH=3Dn CONFIG_XEN=3Dn -CONFIG_USB_OHCI=3Dn -CONFIG_USB_XHCI=3Dn -CONFIG_USB_UAS=3Dn +CONFIG_ATA_PIO32=3Dn +CONFIG_AHCI=3Dn CONFIG_SDCARD=3Dn -CONFIG_TCGBIOS=3Dn -CONFIG_MPT_SCSI=3Dn -CONFIG_ESP_SCSI=3Dn -CONFIG_MEGASAS=3Dn +CONFIG_VIRTIO_BLK=3Dn +CONFIG_VIRTIO_SCSI=3Dn CONFIG_PVSCSI=3Dn +CONFIG_ESP_SCSI=3Dn +CONFIG_LSI_SCSI=3Dn +CONFIG_MEGASAS=3Dn +CONFIG_MPT_SCSI=3Dn CONFIG_NVME=3Dn CONFIG_USE_SMM=3Dn CONFIG_VGAHOOKS=3Dn CONFIG_HOST_BIOS_GEOMETRY=3Dn +CONFIG_USB=3Dn +CONFIG_PMTIMER=3Dn +CONFIG_PCIBIOS=3Dn +CONFIG_DISABLE_A20=3Dn +CONFIG_WRITABLE_UPPERMEMORY=3Dn +CONFIG_TCGBIOS=3Dn +CONFIG_ACPI=3Dn CONFIG_ACPI_PARSE=3Dn +CONFIG_DEBUG_SERIAL=3Dn +CONFIG_DEBUG_SERIAL_MMIO=3Dn --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747682; cv=none; d=zohomail.com; s=zohoarc; b=eq48zBqLElD+Hqtlnn4JfW8MH/Tqha8ksgGgvifoWqgUbvjr/9qAIXRpIAh+P/+a63repprGrlRPwGx+arckz1BeaCuM/oL3FWijkfCEikLsyH1ouB6C3Pd2IUmuPIodMnwcXkDyfNOptfkKG6kviLfizVXzGRtZaRV0RFGjscE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747682; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=oRHQQizdCF6wyYh9tuxeDibcUPdwMO6rnTiGfbULx5Y=; b=CjpbNEVR6kN37x6mgLBcIk/dHOrqs/vjwCTs/tKWDxFEEA6Mv7yZ7mS6dds17QiXSB8G30WJKyJQY+YK08BlrZn7aN9i6GUvw6bN7THqm83YgMAAZl6uFdyrfEZahpEGmQVl7FW2R5xbHWB6Eypw/zIYqIlQKjAlSvICVCuHzH4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747682904735.5001989773663; Tue, 26 Sep 2023 10:01:22 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBPI-00020P-No; Tue, 26 Sep 2023 12:59:32 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPF-0001ul-9F for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:30 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPD-0006b7-B3 for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:28 -0400 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-317-XIMlYuVyPmqY190fABWqDw-1; Tue, 26 Sep 2023 12:59:25 -0400 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-321f75cf2bdso6973204f8f.2 for ; Tue, 26 Sep 2023 09:59:25 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id i11-20020a0560001acb00b0032415213a6fsm58100wry.87.2023.09.26.09.59.22 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747566; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=oRHQQizdCF6wyYh9tuxeDibcUPdwMO6rnTiGfbULx5Y=; b=A93rr2+GOGg1w8YMj+9FegYpUJxGwzW0XaHBAu8GgM+HHUqWYlBLFJFmZBUqS6H/E18IUg dcjcvSsbpTqzLGj7L/tfeaek5IS0ZdhQKtZH7rOoKkC23L2Sr2sP/HJZ/Mryf7pyBkUCKn fv2GMvK6LSQLrar6SuxSpDcEQxf/riw= X-MC-Unique: XIMlYuVyPmqY190fABWqDw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747563; x=1696352363; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=oRHQQizdCF6wyYh9tuxeDibcUPdwMO6rnTiGfbULx5Y=; b=v8HPJn0hVH2HXQaZVhu1f7uiHSab2NJ5x2cKKY2rUt8JEYBnZplteivum18bc5yURX KpjlbA3e3QNVkO8cKjBMZRnj60UkOdT9mHOEx2sRLVNQmes78ocA9MdiUl4i+QSqabvS uXcDGKvLym/h3ioBmT0IGhWa4+kyuAgea/VRy35ctoLneyxIrE1MIWpuxfnF50curaHG pdRLS2Zbx2o2UqKKPt3kOspFD3BTQgLk4JqWbiuXBdHGMeMzL9kcFZpbNSY5d3Hg+AUE NpnZTqWiP53HRvezlQVbohdVDL8l1GCwOotBkjKcn7QVEU+Gtx6Rg1xHaE2ER9Qs2xe4 NRTA== X-Gm-Message-State: AOJu0Yw6NAO7jIqLPg6FVIkIGzVxlOFY8f7ck8UgFFiBZsa6mP3iT+Ai GJf4eXlpFC9YYXLtjuOFNO2fSm/I0V6sdMEqDhPaMmE7f1GGYHMgduDqNdqwfr0s2Y+KhdxoaBa 3KF/NXb28liZtME5zIN/+uDEE12ps0gunPgs/cduZRkxvpyI+tkqCv4yEnur+t9tNtM10OCVCWV Y= X-Received: by 2002:a5d:6a43:0:b0:31a:d49a:38d with SMTP id t3-20020a5d6a43000000b0031ad49a038dmr9306460wrw.54.1695747563715; Tue, 26 Sep 2023 09:59:23 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG+Q0zU69PuO9kwU4UwxTh9ixupG0LAUmm/vCPC/UyiOIvao5qL1d1CcPD/GImUsQN3ZQ3CYw== X-Received: by 2002:a5d:6a43:0:b0:31a:d49a:38d with SMTP id t3-20020a5d6a43000000b0031ad49a038dmr9306444wrw.54.1695747563312; Tue, 26 Sep 2023 09:59:23 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 03/19] user-exec-stub: remove unused variable Date: Tue, 26 Sep 2023 18:58:59 +0200 Message-ID: <20230926165915.738719-4-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747684571100006 Content-Type: text/plain; charset="utf-8" enable_cpu_pm is only used by softmmu-specific code, namely target/i386/hos= t-cpu.c and target/i386/kvm/*. It does not need a stub definition anymore. Signed-off-by: Paolo Bonzini --- accel/tcg/user-exec-stub.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/accel/tcg/user-exec-stub.c b/accel/tcg/user-exec-stub.c index 874e1f1a20e..2dc6fd9c4e8 100644 --- a/accel/tcg/user-exec-stub.c +++ b/accel/tcg/user-exec-stub.c @@ -2,8 +2,6 @@ #include "hw/core/cpu.h" #include "exec/replay-core.h" =20 -bool enable_cpu_pm =3D false; - void cpu_resume(CPUState *cpu) { } --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747612; cv=none; d=zohomail.com; s=zohoarc; b=KhdwRpmgLnw1beEDKdI0dL8HNEqWahtxtkzWzhQTFhIEuG0mbkNEulx5nGuKKG8mSxBdwKjTvdU3ZbmAPNcsWId058eumK808s+IijD4sKuriQRLUmilBAyZ4yRjvmcT+gAoG45O/VeK2Dv2SyzKQlM6Yl4bJL+9bmsrdoAdSaw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747612; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=Ozs1aXX0RO2XP8DHo6ACGbVFF75uua3p3g9aOQb9Wa0=; b=gW79uU3bDIzGWmw4QgHvZst1hkvQwLjvGvl1o16KQqpFpSkVYMRJs6nodWhskImcSW6LTqRjS1e40VJgtloIyTTaWsHvjN3hkShMrs+B/AhW6rRJpG/36REAPzqsNzjWIqOvARWm+yqo8ZAW4HVjZL7GDqGvuEUMWRPv8wMqu3I= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747612041960.6937402807766; Tue, 26 Sep 2023 10:00:12 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBPP-00022m-Nz; Tue, 26 Sep 2023 12:59:39 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPI-00020Q-Gq for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:32 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPF-0006bZ-2q for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:31 -0400 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-461-K_C5l8IAPJK_7Y-aR_l72w-1; Tue, 26 Sep 2023 12:59:26 -0400 Received: by mail-wr1-f71.google.com with SMTP id ffacd0b85a97d-31ffa4da0f5so7082989f8f.1 for ; Tue, 26 Sep 2023 09:59:26 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id x18-20020adfec12000000b0031f9bdb79dasm1198073wrn.61.2023.09.26.09.59.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747568; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Ozs1aXX0RO2XP8DHo6ACGbVFF75uua3p3g9aOQb9Wa0=; b=BlMrGrYX8v/UxPESnOJC15RUThNwnegWE19G7P4uD5UZ+OpQYxMIT65Rhb3Tr/nhiUmyRc LMLf43qu4fPuxylROZOp76UiRRpHkjim4vy1r4eerE0Hls3/ijLRcgRi+Q+f7NHOrwWm4i kk7cVTWutdjyvRxXa7Yfj7+YAHwaAAI= X-MC-Unique: K_C5l8IAPJK_7Y-aR_l72w-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747565; x=1696352365; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Ozs1aXX0RO2XP8DHo6ACGbVFF75uua3p3g9aOQb9Wa0=; b=n6t977Nmi+LWVcFDrTdrFy05J/felJr9tCk9WOaKDE5MfPwc3jEtngMeBC4c+/6+l/ Wq9bHWo0OzS29k+Lu0GwgrpQL0rBCts9NoZPE4rmFaLW2eXUVn5Dt6l4pFP6eKUa2VHd iz+2269rwqiuYXU88H6SaR+ykBIrGkzLRhH16llA4TiG9kQWK02l7qV5lc98vD+8W0ul R+BtSax0eMUvG+aPL3ymgEDZg+1wvyYY6Hz78TjAMK2NvzPhqiWMKrWYgqP1A75tmiTr 2PUvyZbepl3GAuI6woup9cGdxVHbCemRX55vDlFKRuoY7VsNhCEurKuKTKzFAgguXXqg Aavg== X-Gm-Message-State: AOJu0YxtAdfjrHMvbsDvUZ90iT2nTO/dBGeXEEWLI3+MuX1HjVY57oS5 euNDpBSZSjva4glg4hX3/pS3ecd4whXWfRSJ6XJgtPyhy046LYqRLEph38Cr20+sUzsL50tqZ0D /54ORG3i+6474YxkVYq98FdRah2mRHu93a/H+ki+b+2CDBJSnlHk6zJCrd4wuacSDY+aie7430Q I= X-Received: by 2002:a05:6000:713:b0:323:3346:7d51 with SMTP id bs19-20020a056000071300b0032333467d51mr3191836wrb.18.1695747565099; Tue, 26 Sep 2023 09:59:25 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFnhq7jKcL9scKcNbZCTgtbs9/ldzidre3o0DQDiedgckIHJpXe5thQd628BbZ+pWQrYIQidw== X-Received: by 2002:a05:6000:713:b0:323:3346:7d51 with SMTP id bs19-20020a056000071300b0032333467d51mr3191819wrb.18.1695747564769; Tue, 26 Sep 2023 09:59:24 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Thomas Huth Subject: [PULL 04/19] hw/scsi/scsi-disk: Disallow block sizes smaller than 512 [CVE-2023-42467] Date: Tue, 26 Sep 2023 18:59:00 +0200 Message-ID: <20230926165915.738719-5-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747614212100002 Content-Type: text/plain; charset="utf-8" From: Thomas Huth We are doing things like nb_sectors /=3D (s->qdev.blocksize / BDRV_SECTOR_SIZE); in the code here (e.g. in scsi_disk_emulate_mode_sense()), so if the blocksize is smaller than BDRV_SECTOR_SIZE (=3D512), this crashes with a division by 0 exception. Thus disallow block sizes of 256 bytes to avoid this situation. Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1813 CVE: 2023-42467 Signed-off-by: Thomas Huth Message-ID: <20230925091854.49198-1-thuth@redhat.com> Signed-off-by: Paolo Bonzini --- hw/scsi/scsi-disk.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/hw/scsi/scsi-disk.c b/hw/scsi/scsi-disk.c index e0d79c7966c..477ee2bcd47 100644 --- a/hw/scsi/scsi-disk.c +++ b/hw/scsi/scsi-disk.c @@ -1628,9 +1628,10 @@ static void scsi_disk_emulate_mode_select(SCSIDiskRe= q *r, uint8_t *inbuf) * Since the existing code only checks/updates bits 8-15 of the bl= ock * size, restrict ourselves to the same requirement for now to ens= ure * that a block size set by a block descriptor and then read back = by - * a subsequent SCSI command will be the same + * a subsequent SCSI command will be the same. Also disallow a blo= ck + * size of 256 since we cannot handle anything below BDRV_SECTOR_S= IZE. */ - if (bs && !(bs & ~0xff00) && bs !=3D s->qdev.blocksize) { + if (bs && !(bs & ~0xfe00) && bs !=3D s->qdev.blocksize) { s->qdev.blocksize =3D bs; trace_scsi_disk_mode_select_set_blocksize(s->qdev.blocksize); } --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747642; cv=none; d=zohomail.com; s=zohoarc; b=VOoTg9ONulp4QvA6em6AkJjLg1wJhz0rsEH++Qc7iKS3GoifD0es28/fro3hoGMrX/PMu0ZGCaKH353q/sHw6vvCwDmIfOcQCFfjNvS/4xUxC1VzQSggJfF84K3b+f7DDEudrUlp69asGJ9Usuh3bNOwxjrZysgq0aFY+ySPF70= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747642; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=M07xDw6TXMyJHjZ2y4nMSfqsVz0WjNJ4Em8wo+xhqKI=; b=dT3x6/Cz2Dkcdq5pwJ/cHjv72Fwyg9zZiMwjWSS+EYs6llCOca+jre25xs8FWiR/McMpKHeBrqSjK6zWrwZVQ4l0y50ykQAjAE5+eAH01jltAvD/9nKZOS8DVWVtFgoqsRaw2Ar7Jx+BPeK8t+2zvwlESSbsQCf53rBbkZ8PQ0k= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747642350416.49458926134264; Tue, 26 Sep 2023 10:00:42 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBQ7-0002gY-VC; Tue, 26 Sep 2023 13:00:24 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPK-00021J-8G for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:34 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPI-0006cO-FP for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:33 -0400 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-539-lpOYZFuoPim-7gXZChtBgA-1; Tue, 26 Sep 2023 12:59:29 -0400 Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-3f41a04a297so84085285e9.3 for ; Tue, 26 Sep 2023 09:59:29 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id p20-20020a05600c205400b00403b63e87f2sm2837617wmg.32.2023.09.26.09.59.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747571; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=M07xDw6TXMyJHjZ2y4nMSfqsVz0WjNJ4Em8wo+xhqKI=; b=F1fyR75A76vCAMVJ0WTcr7S3Ae8GGBqOgnqqyjGjJ8+RrwTEFzmVZ/kNE2oBf9Gp2NXF9D rdhSUocuSixECMQVAU6aRV/N9ASrMSzteK+RiTzkzC+PjcNr/L1hxjfEgffZk0Kt5R3skm vufbZsn66E3jsBxSlSwp9Z1cTc7ndhM= X-MC-Unique: lpOYZFuoPim-7gXZChtBgA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747567; x=1696352367; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=M07xDw6TXMyJHjZ2y4nMSfqsVz0WjNJ4Em8wo+xhqKI=; b=FGollEF98wQ6hcNI86+ivmQObhCFDRPgTfABB1w0145h1b/UGxtJb/4KA6OQs7jBKk JQUMEucoIFF3OTsDNiaxCNeRGsYbT64UaUhjTpK41Oix9y95EDTaOax6DOa0zF1G4snr f0iqzTydrbGeof0/2Y1kdDdaQ7nd/klTmZISJOUnH1HTpFKi37mpr6bBq0Osveo5CNpx tyDr9jJYr9cXnVjCPul0iBPqZd4FaRCTi6jgeAuVnxJnkgL/aBTLv66d2bcpACzWsJ6Y rbyd2Y2bPt1iWZa1alTXRlvVhPFBlVifrgJggpZBnee9v333pNkKaGnPmovoEpQ3Y21Q ad7A== X-Gm-Message-State: AOJu0YxMI/Me+mTV6E6m3azhlIHgTvqR34E/CZsSC1iy2Ncqe7o+8C13 2r7C5kp4a6A6EuQYl9EbqOyNibsYgCb/7s5OJUYKwXzFTD9LzIcClZi7svmQU4UzpgC5+Kj7SDN MjUqRT69Fnu1ew8StpuDmNulFXmi7mJIytfNChZoUrec6i25AQdGaeBGSHJKTqRW9N1aC5B7zWg w= X-Received: by 2002:a05:600c:22c7:b0:401:c436:8999 with SMTP id 7-20020a05600c22c700b00401c4368999mr9452834wmg.30.1695747567529; Tue, 26 Sep 2023 09:59:27 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEGkYlg+Q0ZYQ97LmE+hykWSIykhOHndQp80lnHaoixt6reZ9DUbMnjrcNr4/yIv/tpaHeLSA== X-Received: by 2002:a05:600c:22c7:b0:401:c436:8999 with SMTP id 7-20020a05600c22c700b00401c4368999mr9452814wmg.30.1695747567069; Tue, 26 Sep 2023 09:59:27 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= Subject: [PULL 05/19] vl: remove shadowed local variables Date: Tue, 26 Sep 2023 18:59:01 +0200 Message-ID: <20230926165915.738719-6-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, TVD_SUBJ_WIPE_DEBT=1.004 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747643429100001 Reviewed-by: Daniel P. Berrang=C3=A9 Signed-off-by: Paolo Bonzini --- softmmu/vl.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/softmmu/vl.c b/softmmu/vl.c index db04f98c36f..59a472a0b10 100644 --- a/softmmu/vl.c +++ b/softmmu/vl.c @@ -3214,7 +3214,6 @@ void qemu_init(int argc, char **argv) } break; case QEMU_OPTION_watchdog_action: { - QemuOpts *opts; opts =3D qemu_opts_create(qemu_find_opts("action"), NULL, = 0, &error_abort); qemu_opt_set(opts, "watchdog", optarg, &error_abort); break; @@ -3525,16 +3524,16 @@ void qemu_init(int argc, char **argv) break; case QEMU_OPTION_compat: { - CompatPolicy *opts; + CompatPolicy *opts_policy; Visitor *v; =20 v =3D qobject_input_visitor_new_str(optarg, NULL, &error_fatal); =20 - visit_type_CompatPolicy(v, NULL, &opts, &error_fatal); - QAPI_CLONE_MEMBERS(CompatPolicy, &compat_policy, opts); + visit_type_CompatPolicy(v, NULL, &opts_policy, &error_= fatal); + QAPI_CLONE_MEMBERS(CompatPolicy, &compat_policy, opts_= policy); =20 - qapi_free_CompatPolicy(opts); + qapi_free_CompatPolicy(opts_policy); visit_free(v); break; } --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747756; cv=none; d=zohomail.com; s=zohoarc; b=FMADQGwAEphjU/JqqkYx5P97W2DZ8oGbLx/nllg3Hevp4pkhhIY/iyJjH36lnXqXaU7uzaUxSURA9Lkh5/QJttN4+nMI3lVh9aCu8INehQIQTKMyUx3LrKWddP+nIiwbVqqsyJ65Uh+dEE5MPRXW9Dl3XWlOeNbWwe/scs6isjA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747756; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=Pw+0oEZbC6WiyKIZhtTSFPp2KrFNLWI2U8xktJv2934=; b=BiDiWHRpCvVS2EOCwKMlSD2lTL4oRmJRrVfxXq8NKeEfF/T/9KUSWXsMYQoVDtPK/70Cf305Z3wplr39d8Da9UEWclT8lpz87F55UWT13JNBNrTwNgaqFkxrw2+SB2+2hZJssh2SLV2ou4y8n5d42boEORIZ1Z0b99GEUBOHg2I= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747756477493.4639150892277; Tue, 26 Sep 2023 10:02:36 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBPb-00025D-DD; Tue, 26 Sep 2023 12:59:53 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPL-00021N-Db for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:35 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPJ-0006cl-5u for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:35 -0400 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-552-woTnYS1jOQChxGTHSPKWkA-1; Tue, 26 Sep 2023 12:59:31 -0400 Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-3fbdf341934so86603375e9.3 for ; Tue, 26 Sep 2023 09:59:30 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id v19-20020a05600c429300b004047ac770d1sm13470450wmc.8.2023.09.26.09.59.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747572; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Pw+0oEZbC6WiyKIZhtTSFPp2KrFNLWI2U8xktJv2934=; b=D3O6vuhF9Bh1cvqGmjQwNniEohO/FeLtIoUIiPFKp+63jDSXL6TEnMRlRxZuipFntyuWiN PJfeV5ndbTb97wJhopv9SQcNh9MaPQmiJqza6Y1bS5GeRHRCYol74zxNRNriOHXKuJnolb JVq/RlUrPppziRdSbcfOYARy3UgxQoc= X-MC-Unique: woTnYS1jOQChxGTHSPKWkA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747569; x=1696352369; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Pw+0oEZbC6WiyKIZhtTSFPp2KrFNLWI2U8xktJv2934=; b=D2MhtEre3Mfux05+oOqcsq2zql/xmAIyDjhHL/INHnrO9Kyh7uSh2DyUajVvFW/1kZ hqKa+a5Ej3qR12qgapZ+pO11Be0dyY6IC7ppolQ2oeuzv2irrH6sZPNenYL9wuzhduWZ 86+bEmOfc0Kh9jLP9qo5IIWzJJUs9jPn4OYatlGlUMU7THPLPJ45mhJOLvdyPveG4RJu axv2Y23eG3Z0FaQw8SItI7C4zYDeha1i1A9kmJK6MEy/kd/DrMy7im630NdTr22ngrVe TYWDmmRxe5QXkqDIlFxTHJxwWsK1HuJyH9sN2nHz7gAuA8OVD//8Dk5SaParJmatUJlU FmdQ== X-Gm-Message-State: AOJu0YyHcdIL+jflzufLUVni129zOSbVXByZgvJIBLIyUzT95xOVvl/y MY6gavq2crysolZxJqUjtRWM9XHbi1DEokefMQhb31dAt7KueZCRnvBUsCjabxLcuLDOPVJ4kCx EH97RymlUliDm3OwX3V5ISSs1fb8httIjQEVuHMaTdl2KqmABTxEZl5E08Gw5hhE5/f0HGlM68N w= X-Received: by 2002:a1c:7904:0:b0:403:8fb9:8d69 with SMTP id l4-20020a1c7904000000b004038fb98d69mr10285424wme.25.1695747569464; Tue, 26 Sep 2023 09:59:29 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGvqC0gtplYptLfFjygmpmzmsGTJYpn/64i3nTY7Ktxp/c+WnC/C8d474yKiW3nnOpD5KTBpw== X-Received: by 2002:a1c:7904:0:b0:403:8fb9:8d69 with SMTP id l4-20020a1c7904000000b004038fb98d69mr10285411wme.25.1695747569114; Tue, 26 Sep 2023 09:59:29 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= Subject: [PULL 06/19] ui/vnc: fix debug output for invalid audio message Date: Tue, 26 Sep 2023 18:59:02 +0200 Message-ID: <20230926165915.738719-7-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747756871100001 The debug message was cut and pasted from the invalid audio format case, but the audio message is at bytes 2-3. Reviewed-by: Daniel P. Berrang=C3=A9 Signed-off-by: Paolo Bonzini --- ui/vnc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/vnc.c b/ui/vnc.c index 6fd86996a54..1684ab90968 100644 --- a/ui/vnc.c +++ b/ui/vnc.c @@ -2551,7 +2551,7 @@ static int protocol_client_msg(VncState *vs, uint8_t = *data, size_t len) vs, vs->ioc, vs->as.fmt, vs->as.nchannels, vs->as.freq= ); break; default: - VNC_DEBUG("Invalid audio message %d\n", read_u8(data, 4)); + VNC_DEBUG("Invalid audio message %d\n", read_u8(data, 2)); vnc_client_error(vs); break; } --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747743; cv=none; d=zohomail.com; s=zohoarc; b=WWchAEE1csG1aDLDJT6XCMOoPFeMVMYySWD+khnwRW7XxD2EqHG3h0QMJqXkzxgfVTJU7mAv8J6k2AgYf82POspJYRqQqyBl180YFkr5ORLedt+LQZgfWimK398/oy12qoxC5AkdRBbKZFqSr7AZRHloF9ko4q4ayDgaGKIUeyY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747743; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=Ck+8DKD6182hoZ4xHPrQvIXBRhdaPWWFfYLrX95g5Cw=; b=M8/XQtXd2At7CA10JKZNvwtOyzyndw8rZszvwye1d6b3ItSOLa/4n/aodx2WcVpWi+GI86BUJ7MLhy5b5681XDj9Vq4KFwUY94IsA7EX46mD04l7FtShrG63VaPgNPSkfeUV3UbTQpNvy5mNDuXA3EXoSqFjtU0jpc1+BTNhD84= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747743115222.38190754894447; Tue, 26 Sep 2023 10:02:23 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBPg-0002AA-PG; Tue, 26 Sep 2023 12:59:56 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPM-00021s-Ps for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:37 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPL-0006dH-Bi for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:36 -0400 Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-94-8AypuJzxPxqeW_owsIZUAQ-1; Tue, 26 Sep 2023 12:59:33 -0400 Received: by mail-wr1-f69.google.com with SMTP id ffacd0b85a97d-31fed999e27so7595077f8f.2 for ; Tue, 26 Sep 2023 09:59:32 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id m12-20020a056000174c00b003233b554e6esm749067wrf.85.2023.09.26.09.59.29 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747574; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Ck+8DKD6182hoZ4xHPrQvIXBRhdaPWWFfYLrX95g5Cw=; b=P+y/j2n1Zr9+7T7/bqgIYCjuoV4jK4WzqGCGotghPPEaqYFv0yCG/XdqLVKBzDoc0uAxtU ZppSnoJ6ljHvwzjP3BugBM8yOp+QBiPAXRrKIkramWbI+hLnrosOm4Lbxrs4Mi6BSTfgLL xj5nXFN7bfM7Fhv/doA9oIfuioUFzsQ= X-MC-Unique: 8AypuJzxPxqeW_owsIZUAQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747571; x=1696352371; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Ck+8DKD6182hoZ4xHPrQvIXBRhdaPWWFfYLrX95g5Cw=; b=QnHJUSlRulme+bw18D7jQ8EmCI3KyotAG/j0UFtGWA/bjVqAe70OA4SKptqxO4w6Te gbQA4f80KWjO2m46xi6Tq9kvsEzAf/Fgw8sqbKSOu5J/WoF7ny3tRpbWxV3fqfQHbIEA o24SaIKALN7i6Ydh8j53Sk4I0jspuBEngzv1wGPPjto86/HdWq+zK+0md73QGIoLej1W 4ywlhBdikgex1xMTAgk48iergKeSNT8NeAg1Aan9rPGQ8phkmOEU4GwXfbp5MMTNzZxd u+/RzwhKHXr7HAn0Zuhhiev9+ErAjAqRg8MCPat7nBwRfL3Zs4oAEFa/9kN7iUesV4B5 96XA== X-Gm-Message-State: AOJu0YyUpZ4jiJVgl2DPu+w4KHCQO+6jtMaNxOLlms+lJpNzYBrgFTrH x7PDFPC/HUfthjvMMD3vopJtw17FxEGcv7i/AdEEoBtbS+vxKJGU3z0CaYmbj/BNiuOmr1SU9hq o5ujpOA9VA0oai1WoMQnOdgpjmmfNSuKtZXHAmE7JDl8MWS97zt6YY+eUUPtvZFnV1z/PhGPhTB I= X-Received: by 2002:a5d:4bc1:0:b0:315:9e1b:4ea6 with SMTP id l1-20020a5d4bc1000000b003159e1b4ea6mr10056934wrt.58.1695747571503; Tue, 26 Sep 2023 09:59:31 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFupLcLHsw2MH2jglqTmry1+ycsjRdlrIZhuVnYAtzwtoDzE3MNeiyTa0R0x0JqfgCi1uC3bQ== X-Received: by 2002:a5d:4bc1:0:b0:315:9e1b:4ea6 with SMTP id l1-20020a5d4bc1000000b003159e1b4ea6mr10056914wrt.58.1695747571125; Tue, 26 Sep 2023 09:59:31 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 07/19] ui/vnc: fix handling of VNC_FEATURE_XVP Date: Tue, 26 Sep 2023 18:59:03 +0200 Message-ID: <20230926165915.738719-8-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747744788100001 Content-Type: text/plain; charset="utf-8" VNC_FEATURE_XVP was not shifted left before adding it to vs->features, so it was never enabled; but it was also checked the wrong way with a logical AND instead of vnc_has_feature. Fix both places. Signed-off-by: Paolo Bonzini --- ui/vnc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ui/vnc.c b/ui/vnc.c index 1684ab90968..c302bb07a5b 100644 --- a/ui/vnc.c +++ b/ui/vnc.c @@ -2205,7 +2205,7 @@ static void set_encodings(VncState *vs, int32_t *enco= dings, size_t n_encodings) break; case VNC_ENCODING_XVP: if (vs->vd->power_control) { - vs->features |=3D VNC_FEATURE_XVP; + vs->features |=3D VNC_FEATURE_XVP_MASK; send_xvp_message(vs, VNC_XVP_CODE_INIT); } break; @@ -2454,7 +2454,7 @@ static int protocol_client_msg(VncState *vs, uint8_t = *data, size_t len) vnc_client_cut_text(vs, read_u32(data, 4), data + 8); break; case VNC_MSG_CLIENT_XVP: - if (!(vs->features & VNC_FEATURE_XVP)) { + if (!vnc_has_feature(vs, VNC_FEATURE_XVP)) { error_report("vnc: xvp client message while disabled"); vnc_client_error(vs); break; --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747619; cv=none; d=zohomail.com; s=zohoarc; b=SHi1814fWJVG5AIsThaiPRU4C4R/kQm9uz9zA1gC+sUktm9umvgZ1vf5LUTB6okfwmeNI9wDtR8HxhNC6m8RArqCu2nMVmjhmPKD3BfAOMwNheE42hv9z7amXiT7KZ4MrbtNN4QXwgLvUvLJ72nPijf5Iz9xJQO9ER6K2+vz54c= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747619; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=+ynynMgJ00sGhsDMCQzVUy7jtIudZ5+n2/lNWTNS1uM=; b=QyXSjdTJybhDzck0EPeVT2yTOZbRh42gh09z3F0y5Nigk+X67i1Y4T33ymn3lw6V4WyUKlD9RRkAC9KXyTumTiR4uDQzzN2WRk3ThvKjb/dR3slqnFh7e0wxAWjHOYbOAifiTCwbEr0NRHx6FFFR57pjkU720qYgaxupLZIGhYM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747619039161.31307777926838; Tue, 26 Sep 2023 10:00:19 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBPa-000250-B1; Tue, 26 Sep 2023 12:59:51 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPR-000241-9W for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:41 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPO-0006dv-TF for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:40 -0400 Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-617-xPOFnlTfO76DxHDCZy3Jog-1; Tue, 26 Sep 2023 12:59:35 -0400 Received: by mail-wm1-f70.google.com with SMTP id 5b1f17b1804b1-40526a782f7so85256015e9.2 for ; Tue, 26 Sep 2023 09:59:34 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id p19-20020a05600c1d9300b0040531f5c51asm15841878wms.5.2023.09.26.09.59.31 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747577; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=+ynynMgJ00sGhsDMCQzVUy7jtIudZ5+n2/lNWTNS1uM=; b=GSTx97yl0He5Bdok/Hjhf21TmPiX3TrcHKrZJqYLmyYEa4zH9A5hAlj2HWXV/50s2r+sHc adVS6fouIbgDOWGN1A7E3hEIuJ8Fs+nKZmsPojUhoaOHmnoYuViTzNEnTKDj+TNsUzZwGF Wb8obcJupwGhOQHCkM3WdaoC24CFIPI= X-MC-Unique: xPOFnlTfO76DxHDCZy3Jog-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747573; x=1696352373; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+ynynMgJ00sGhsDMCQzVUy7jtIudZ5+n2/lNWTNS1uM=; b=YoEEFKFDQqeulyab823Qhlq9958pCI6f71pLE7/yfa8kN//kWZ0v4L9cr3XX9RUbRF wT2IB6LgECUSECq9Mb5dGrRD+RDmxANVb2VEFjA/wGVxF1c5csinrFSSlfWQsT/EBauA OwQk/Srfqkg/xWogYvHesnZf0iAAehI5GWzU7W8AxrYgaJxKMcl4Ilmbdt7enNucGRXH d+hQ+Xi397ACbkM5unUEswoZCXq1gF1mj9+kKMZLExsNlawzEv7q5pDzLN2mrSmxOElj +C4tkhYJTDUHD7ojDbi3BO+jsc01BxPMW47Qvfneu6C1inkaWgICfpHqk52qTK7VMbHM ylWw== X-Gm-Message-State: AOJu0YzxEtxcMIT62ON9VSuq8Bdx7O8GvF3GHxdP4H3n5Uvk84CTtfn0 YVjjocLfDUvsM2PMG1LbFqwsPU3VVePbK+jTjZhyhJgQGE0jXyCLqUAmDbt4iYdH9f1RSmg2xMJ JUIUbxG0/LqQiDPgDPrrT32bv3fSp/aPpTEUFMVt4UvOxQkdQJs+nVmVwCxZuQE6Yhu0sIwYrW6 Q= X-Received: by 2002:a05:600c:2309:b0:405:3fcc:5af5 with SMTP id 9-20020a05600c230900b004053fcc5af5mr9887632wmo.17.1695747573484; Tue, 26 Sep 2023 09:59:33 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHKKuaTbW5Ik1V69dzXijP2Yn15+pYdS9EqRdOdHXTC/F4+DrrMMv48uF0aSq7KIYsyfhmPOA== X-Received: by 2002:a05:600c:2309:b0:405:3fcc:5af5 with SMTP id 9-20020a05600c230900b004053fcc5af5mr9887616wmo.17.1695747573157; Tue, 26 Sep 2023 09:59:33 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 08/19] mptsas: avoid shadowed local variables Date: Tue, 26 Sep 2023 18:59:04 +0200 Message-ID: <20230926165915.738719-9-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747620302100001 Content-Type: text/plain; charset="utf-8" Rename the argument so that "addr" is only used inside the for loop. Signed-off-by: Paolo Bonzini --- hw/scsi/mptsas.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/scsi/mptsas.c b/hw/scsi/mptsas.c index 3de288b454c..75d3ab8bd18 100644 --- a/hw/scsi/mptsas.c +++ b/hw/scsi/mptsas.c @@ -192,7 +192,7 @@ static dma_addr_t mptsas_ld_sg_base(MPTSASState *s, uin= t32_t flags_and_length, return addr; } =20 -static int mptsas_build_sgl(MPTSASState *s, MPTSASRequest *req, hwaddr add= r) +static int mptsas_build_sgl(MPTSASState *s, MPTSASRequest *req, hwaddr req= _addr) { PCIDevice *pci =3D (PCIDevice *) s; hwaddr next_chain_addr; @@ -201,8 +201,8 @@ static int mptsas_build_sgl(MPTSASState *s, MPTSASReque= st *req, hwaddr addr) uint32_t chain_offset; =20 chain_offset =3D req->scsi_io.ChainOffset; - next_chain_addr =3D addr + chain_offset * sizeof(uint32_t); - sgaddr =3D addr + sizeof(MPIMsgSCSIIORequest); + next_chain_addr =3D req_addr + chain_offset * sizeof(uint32_t); + sgaddr =3D req_addr + sizeof(MPIMsgSCSIIORequest); pci_dma_sglist_init(&req->qsg, pci, 4); left =3D req->scsi_io.DataLength; =20 --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747771; cv=none; d=zohomail.com; s=zohoarc; b=eT9V4D88J6K0KM/sQjPYrgvjdAmvjJwgUufV/12R+jTeL7wV7dV5uAP2do/mdC5Xhf3U7ejYzOOxIycdCzUsXQWlChHeFPMuZjyprIsVYBZnLrMWoHVwhV/Soo/RjpPbXZ+4GpbASLITL+q/zUe6WisyOi3Pdo7fw6VTx62LL44= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747771; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=qc/zUIWBOFnR2UjZvMjpIc+zASKSFV5bfRueWLtDPno=; b=i8Be89eeLjOXdKwrI003OOZPdr/6m4xoe/+JmJJqooUPXL8t+ogjdgfy8itfPg5FamzoP1WxK7Tu/gWQmV956nXTMQ4yXsjiumHnf8m9UJ5050cyVorBscotGNvA31VnzXMHJ6nVe0shm+s1RjtJvkC7UrodtAKCbQgv2Wernec= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747771098104.66531719978593; Tue, 26 Sep 2023 10:02:51 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBQA-00037L-FQ; Tue, 26 Sep 2023 13:00:26 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPV-000255-Hk for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:46 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPP-0006eE-Df for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:44 -0400 Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-345-u6fc4TBCNDeEFjh1fI9EMw-1; Tue, 26 Sep 2023 12:59:36 -0400 Received: by mail-wr1-f70.google.com with SMTP id ffacd0b85a97d-3200597bfc5so7067716f8f.2 for ; Tue, 26 Sep 2023 09:59:36 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id k10-20020adfd22a000000b0032320a9b010sm7322237wrh.28.2023.09.26.09.59.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747578; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=qc/zUIWBOFnR2UjZvMjpIc+zASKSFV5bfRueWLtDPno=; b=jEjGp34TnKydD0vJl88WJcaAluPuc7qh+E1ERU0iaASYS0miatOVtkzhaIOBa5EWc3Opkq ORzUvvjy5jdLI8kX/RysJ443VIScGRYbE2V1c4Ba6X8XKKB6YfYMd9e6v6d99B87LDGTfk aSMsJKLfXvaJXuk++Ov6oTkI+Hy9hJw= X-MC-Unique: u6fc4TBCNDeEFjh1fI9EMw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747575; x=1696352375; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qc/zUIWBOFnR2UjZvMjpIc+zASKSFV5bfRueWLtDPno=; b=f1irIF/EzsAxzsrrc/8Joh8pn1GzvsnHAM13zzsqtLvvAcrKXcDZ0l/97h3aTqRkGA aWFNU8g9B2VTY7hsse2ba4AqbWFdT9Bx0wjBNGfSRQSwxQv9WsHkTNoYT1xp9g9QIQTC kBmKi1W3XhNhlpFhX+kFf4k30amdNTYDiE+Q5c7oNufWtRyVwgZ7ERrBvusnAfS0LzCv tKH5qLOKcWV19/WNBJ9IobfzPFG1/hESKIb2fWHDCoQvUEprRCzbRGuPQM/RQgzNPGnX xQkAM7ZFWtnls+alIQLI079n4HkQ7K0CawZUYldebU5gqRa7w93WgA4EirtAo+j+S6W1 mpsg== X-Gm-Message-State: AOJu0YyGy9ltx7/ajFGbEdAyeFoxAX8naVqHDFIg0UkphYZRNllieiQj lloOtAaDCeILEP+r8Dhcgx7kZ6QrtJNwRCOtd2vTI8xAH/69rz3qH0WVsJ+L6jPElImz7im4Unk ccZhB6CvGbHJ8S6DuD3m7KdMS6d1GujPt9QXstCDS+kxUESR/TV6FJVqmlOxNetQaPQV74ObEkd w= X-Received: by 2002:a5d:458b:0:b0:320:a4e:acf8 with SMTP id p11-20020a5d458b000000b003200a4eacf8mr8973998wrq.48.1695747575191; Tue, 26 Sep 2023 09:59:35 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFKXcKc1JZWIPTp6xTZflf192xG+rAogl0p7NdDdq+WME2ZDdZ7fxtZE0fhAp1dqqxU1FfwpQ== X-Received: by 2002:a5d:458b:0:b0:320:a4e:acf8 with SMTP id p11-20020a5d458b000000b003200a4eacf8mr8973985wrq.48.1695747574909; Tue, 26 Sep 2023 09:59:34 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Corey Minyard Subject: [PULL 09/19] pm_smbus: rename variable to avoid shadowing Date: Tue, 26 Sep 2023 18:59:05 +0200 Message-ID: <20230926165915.738719-10-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747771435100005 Content-Type: text/plain; charset="utf-8" Acked-by: Corey Minyard Signed-off-by: Paolo Bonzini --- hw/i2c/pm_smbus.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/i2c/pm_smbus.c b/hw/i2c/pm_smbus.c index 9ad6a47739b..4e1b8a5182d 100644 --- a/hw/i2c/pm_smbus.c +++ b/hw/i2c/pm_smbus.c @@ -279,7 +279,7 @@ static void smb_ioport_writeb(void *opaque, hwaddr addr= , uint64_t val, if (!read && s->smb_index =3D=3D s->smb_data0) { uint8_t prot =3D (s->smb_ctl >> 2) & 0x07; uint8_t cmd =3D s->smb_cmd; - uint8_t addr =3D s->smb_addr >> 1; + uint8_t smb_addr =3D s->smb_addr >> 1; int ret; =20 if (prot =3D=3D PROT_I2C_BLOCK_READ) { @@ -287,7 +287,7 @@ static void smb_ioport_writeb(void *opaque, hwaddr addr= , uint64_t val, goto out; } =20 - ret =3D smbus_write_block(s->smbus, addr, cmd, s->smb_data, + ret =3D smbus_write_block(s->smbus, smb_addr, cmd, s->smb_= data, s->smb_data0, !s->i2c_enable); if (ret < 0) { s->smb_stat |=3D STS_DEV_ERR; --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747656; cv=none; d=zohomail.com; s=zohoarc; b=HFXaHSqswmK8LSAeGg60l7Fc4fl5DpAbmu8uf7N4T1CJCEJZjZkzRjzTmAPxllQ4Q87IYIxuenqnm7zlWD0eHiN7xuGZ//wQeOSzf3Ttwph+wG8Niq7oESiZBSU2K1VS6BAcoR6jVLR/+OyxkkCxctTOtw2TlE3+mBJPPSGyFMg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747656; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=o5TVdBN70p9N2jvFk5DaLfD5DUA1933o2O19WHIVc8s=; b=WaCPd6k+udjB9wSB4bbbgNzqtQlT9IXXAnpVVZNB4/j2ULLjjahEc+bVFJc3QFjxa//6PunCoLOORCQZpmwVN5RBOMMTWN9ZiqhvkuQOGSKa/wWpzdrBNf/T+MQoLgKLNUtpkIyxWqH4kUj11A+w8wg/Ez6whmG5+CV6leTDeJc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747656183226.56138813254586; Tue, 26 Sep 2023 10:00:56 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBPi-0002Bd-Nv; Tue, 26 Sep 2023 12:59:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPU-00024z-6E for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:46 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPQ-0006eq-W7 for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:42 -0400 Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-43-abXwVzgIOxKgbKiQC9PJ0w-1; Tue, 26 Sep 2023 12:59:38 -0400 Received: by mail-wr1-f70.google.com with SMTP id ffacd0b85a97d-314256aedcbso7454316f8f.0 for ; Tue, 26 Sep 2023 09:59:38 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id e9-20020adfe7c9000000b003197efd1e7bsm1203641wrn.114.2023.09.26.09.59.35 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747580; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=o5TVdBN70p9N2jvFk5DaLfD5DUA1933o2O19WHIVc8s=; b=BipwVjAcF24YLIYhD4PFxkadnP/ANMh/sNeHz5b81URhPT468T9SEs8LeR/boUGdI9TTCP SGImlQaJ0Q0bOsXWO6NQWo//pUHX+/CURwY+RSnSwSC1i7AMGl3tcS+Nsr3P9hUMPll6hn rj45CpWTJrzsZrvdpen9y1yJBmFoRoA= X-MC-Unique: abXwVzgIOxKgbKiQC9PJ0w-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747577; x=1696352377; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=o5TVdBN70p9N2jvFk5DaLfD5DUA1933o2O19WHIVc8s=; b=Y8RSOPeesEUpH0STcTMt3PwXI8qHlV7zORSqc73iL0jyCM50hWfkJ844tMtWCijBOu pxD1MFWWvaXIdQzIdMi4oTIq3xw/q+2l4saMjrShWVoYP+HM4ip37RlfvQK9b7WUvqJX 2F5yvao++K7fBKszDtfS2R8AvhRlORNi5S28jveUZOxNmpWvmajuDpPX24lFJQ1soKN/ w7ZSurjK6TZupqcI4dc6d0GjP42QX/TOioQkPS8nG+MaCcyPL8ok8tfvBhxy8n2yFKay P/kV4hpaqXzp9l9MiNaRh0wHNSlinsmCKfJ64SiiAUh1gWrCchaFMeeEBIheWVS0L651 WI8Q== X-Gm-Message-State: AOJu0YwTVHT2BZYPtGHkFPBkQcJgusEwEBe82bdcV+3nnkNvpqnOvgwT tqVwnGQ6KSgKj7+cJmNAcVVRUZV2VfzEMvmQ3gXIfT5ThEgbdSHLR8/8jTNZZa4yYt2Ezgu1rYN Ue06sGxS8c+WuMh007LUgqpHZaapLOOaNENjX+9Hv5C15rrrfJLkeIIDxZq6XGabP8BXQuyDya8 g= X-Received: by 2002:a5d:5248:0:b0:31a:d9bc:47a2 with SMTP id k8-20020a5d5248000000b0031ad9bc47a2mr8834987wrc.53.1695747577028; Tue, 26 Sep 2023 09:59:37 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFC2h0TCrnOLqkse1IiU2B5v1scLg7M2KrzLptcJ4TXJouyEAb+cyPHvzZmzvBh9ucaIzCjCg== X-Received: by 2002:a5d:5248:0:b0:31a:d9bc:47a2 with SMTP id k8-20020a5d5248000000b0031ad9bc47a2mr8834975wrc.53.1695747576695; Tue, 26 Sep 2023 09:59:36 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 10/19] m48t59-test: avoid possible overflow on ABS Date: Tue, 26 Sep 2023 18:59:06 +0200 Message-ID: <20230926165915.738719-11-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747657059100001 Content-Type: text/plain; charset="utf-8" Originally meant to avoid a shadowed variable "s", which was fixed by renaming the outer declaration to "qts". Avoid the chance of an overflow in the computation of ABS(t - s). Signed-off-by: Paolo Bonzini --- tests/qtest/m48t59-test.c | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/tests/qtest/m48t59-test.c b/tests/qtest/m48t59-test.c index 9487faff1a4..b9cd209165a 100644 --- a/tests/qtest/m48t59-test.c +++ b/tests/qtest/m48t59-test.c @@ -192,19 +192,22 @@ static void bcd_check_time(void) } =20 if (!(tm_cmp(&start, datep) <=3D 0 && tm_cmp(datep, &end) <=3D 0)) { - long t, s; + long date_s, start_s; + unsigned long diff; =20 start.tm_isdst =3D datep->tm_isdst; =20 - t =3D (long)mktime(datep); - s =3D (long)mktime(&start); - if (t < s) { - g_test_message("RTC is %ld second(s) behind wall-clock", (s - = t)); + date_s =3D (long)mktime(datep); + start_s =3D (long)mktime(&start); + if (date_s < start_s) { + diff =3D start_s - date_s; + g_test_message("RTC is %ld second(s) behind wall-clock", diff); } else { - g_test_message("RTC is %ld second(s) ahead of wall-clock", (t = - s)); + diff =3D date_s - start_s; + g_test_message("RTC is %ld second(s) ahead of wall-clock", dif= f); } =20 - g_assert_cmpint(ABS(t - s), <=3D, wiggle); + g_assert_cmpint(diff, <=3D, wiggle); } =20 qtest_quit(qts); --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747769; cv=none; d=zohomail.com; s=zohoarc; b=kiRSZh5sPqYXvEUzm7iWR9e2jL7UfWQjAHo3/HH5q50ikufsPQn0x5dxhrKV1nSF0QQcQ/VudTR2nISKXdsX8GirLNtJaUEOWBsg+jzDH32LCsyC+lBceJUTWq0pIPEDnW11U7C/ejlyotbr+HwYfSgAAxNCbi0/KlL9eAsLDas= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747769; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=BgHX7itePFqubTHf/KRDK1qdTvRw7J8MP/E7F1S7x/Q=; b=S8jq6WnbFs/iA5Ak/Nczq0I66JCFikckHUaqHmCi2Cc9v175HVbHJl6ax9GFtVwy7Xi/9qpPFyAvPUXlHqu2kkLyiRDbI/o+7Wa3dodgpDVW664tHSx6SohH4cR9YKzKrjShmWVPCSjd16i36lRGAXMMoT0OlcOqFtHWgDmed98= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747769978870.2356188533782; Tue, 26 Sep 2023 10:02:49 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBPo-0002DV-7S; Tue, 26 Sep 2023 13:00:05 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPV-000254-HI for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:46 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPT-0006fM-Ue for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:45 -0400 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-288-0hrHCXrzOSO-5BfRE4Uebg-1; Tue, 26 Sep 2023 12:59:40 -0400 Received: by mail-wm1-f69.google.com with SMTP id 5b1f17b1804b1-4063dd6729bso12211585e9.2 for ; Tue, 26 Sep 2023 09:59:40 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id 9-20020a05600c234900b00405959bbf4fsm4766774wmq.19.2023.09.26.09.59.37 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747582; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=BgHX7itePFqubTHf/KRDK1qdTvRw7J8MP/E7F1S7x/Q=; b=awciLQq/zFhhvHBkIJ28drax4ss25gF9YOiSv6EDMDXlWnNISSMl8sFb5M4/r6BuXSgrmk cNXrz1WgK87Hdg5v6XC+dRwD5/FaqWLrbYvvXDUb+T3aabzqgGXC8hb1fWpJVbSeuDZ8a+ tkyHkiEyoBG9wcYGCWV7i3aCEo34J5s= X-MC-Unique: 0hrHCXrzOSO-5BfRE4Uebg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747578; x=1696352378; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=BgHX7itePFqubTHf/KRDK1qdTvRw7J8MP/E7F1S7x/Q=; b=IfyvecuP/IHDfzJJuYfL6LXhupNqmPFNDO1+vIVsMHkKOg01F9rM4IVHiCNczLvFGN knhxfzRa4w3QTTzoubsU5tIyksqnGpF3QSrPXCyrW8A23OPootw7FqyGqd3M76frgZtk YpffWPlFnzfxwYhHZQFYddX+ZkFt+C8TfkKB4VcJqqtvLbob3spBO0csZMHzlff0pwZd Twpd72msu1RyZpJqLpdsjPK6QlnE89cXdbb67ReUpEZtJl+uQPrXMSF5ztFVg0s0gnhv 6S5jblDvGh3ZMg4cbnxyjDOw3vvQDEfqQh5QAX7RuePxOUQmzzA80g4nQE9QQhN1ZqzT 8JcQ== X-Gm-Message-State: AOJu0YxWbkbAUPH0XGEKSbmNapD+nW+tTbnc45TWbdCEsw6xkgUvPeWF K6U+/wIpY3qFGP3q4p82ncfZI4T1v7H/gvPdr1rB8qaqAvUi6pTlGKMvEf0XikOPSvj8l5W1LqR OoECXMarCr7q1ZW6ntwJOGC3PWzR2YAU9pqMuKrAuIRbTWSwFQkKHdS7k891RLJO0iZSW400Auu k= X-Received: by 2002:a05:600c:6025:b0:406:3f62:e596 with SMTP id az37-20020a05600c602500b004063f62e596mr1029972wmb.32.1695747578677; Tue, 26 Sep 2023 09:59:38 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFKp5HqsXapSmnI+5LTVuoVwoOwJJEYFw7p9cc9rFl2Du6kw0Ysb9+jniHK/665FWFtO/dKyA== X-Received: by 2002:a05:600c:6025:b0:406:3f62:e596 with SMTP id az37-20020a05600c602500b004063f62e596mr1029959wmb.32.1695747578303; Tue, 26 Sep 2023 09:59:38 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 11/19] target/i386/kvm: eliminate shadowed local variables Date: Tue, 26 Sep 2023 18:59:07 +0200 Message-ID: <20230926165915.738719-12-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747771391100001 Content-Type: text/plain; charset="utf-8" These are harmless are they die immediately after their use. Signed-off-by: Paolo Bonzini --- target/i386/kvm/kvm.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/target/i386/kvm/kvm.c b/target/i386/kvm/kvm.c index af101fcdf6f..f6c7f7e2686 100644 --- a/target/i386/kvm/kvm.c +++ b/target/i386/kvm/kvm.c @@ -2699,8 +2699,6 @@ int kvm_arch_init(MachineState *ms, KVMState *s) =20 if (enable_cpu_pm) { int disable_exits =3D kvm_check_extension(s, KVM_CAP_X86_DISABLE_E= XITS); - int ret; - /* Work around for kernel header with a typo. TODO: fix header and drop. */ #if defined(KVM_X86_DISABLE_EXITS_HTL) && !defined(KVM_X86_DISABLE_EXITS_H= LT) #define KVM_X86_DISABLE_EXITS_HLT KVM_X86_DISABLE_EXITS_HTL @@ -3610,7 +3608,7 @@ static int kvm_put_msrs(X86CPU *cpu, int level) if (kvm_enabled() && cpu->enable_pmu && (env->features[FEAT_7_0_EDX] & CPUID_7_0_EDX_ARCH_LBR)) { uint64_t depth; - int i, ret; + int ret; =20 /* * Only migrate Arch LBR states when the host Arch LBR depth @@ -3643,8 +3641,6 @@ static int kvm_put_msrs(X86CPU *cpu, int level) } =20 if (env->mcg_cap) { - int i; - kvm_msr_entry_add(cpu, MSR_MCG_STATUS, env->mcg_status); kvm_msr_entry_add(cpu, MSR_MCG_CTL, env->mcg_ctl); if (has_msr_mcg_ext_ctl) { @@ -4041,7 +4037,6 @@ static int kvm_get_msrs(X86CPU *cpu) if (kvm_enabled() && cpu->enable_pmu && (env->features[FEAT_7_0_EDX] & CPUID_7_0_EDX_ARCH_LBR)) { uint64_t depth; - int i, ret; =20 ret =3D kvm_get_one_msr(cpu, MSR_ARCH_LBR_DEPTH, &depth); if (ret =3D=3D 1 && depth =3D=3D ARCH_LBR_NR_ENTRIES) { --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747690; cv=none; d=zohomail.com; s=zohoarc; b=lXQ4SSZcB6zgZxtoVYbMle9H/C/YC/1XSqiiqUjlBPdKPuk3YifGUmGUSoJYfyDX2V2VjiYs/J+gdzY8Ca/bk5T7dz+MWkeSmd4+QbPwbiW3f0N2d7S3fg+x99z9nN3MIOGRx7AZhPYDrtwt3aaOwlLvxl/+w8Lecf4QIa7v7Qc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747690; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=+X4ZFF3Oy6UcO2Mgndzs8r8IIomXYpZkaTF6XIulRg0=; b=NjYoaoeJdsp2deKZ8qkc9tj42Lmhqyx8hT20nfiOZAVKkRtdXNauNnb1gVeqaeUrrsXxkvoXB6nTTnoc4c7WJ3MG9FWam+GqbRbyu5Ki2CbS3a6J62ZMQf15N9g9MoioXtAYesJgtULyE7Uj/Xlb3Ql4q4RUieIEYe8UTeZvePM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747690192197.38629774361914; Tue, 26 Sep 2023 10:01:30 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBPh-0002AF-0u; Tue, 26 Sep 2023 12:59:57 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPV-000256-HY for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:46 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPT-0006fV-VB for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:45 -0400 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-664-Tr5n89RlO9y5TpPlcgqXFQ-1; Tue, 26 Sep 2023 12:59:41 -0400 Received: by mail-wr1-f71.google.com with SMTP id ffacd0b85a97d-32001e60fb3so5324768f8f.1 for ; Tue, 26 Sep 2023 09:59:41 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id w12-20020a5d608c000000b003179d5aee67sm15214144wrt.94.2023.09.26.09.59.39 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747583; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=+X4ZFF3Oy6UcO2Mgndzs8r8IIomXYpZkaTF6XIulRg0=; b=HMPwW646TmxXOH3/xsj4gcWogDA/i0/r+rDUfn9uQgIH/lreyGHweYfgTAXRGao70znPqd 3Qd3AY4FbmCDf9DW/6l93Tz7xJeP6PbNIjJ2P1G1Nuc7hgOqfds+6JOupeNiyHx/qvLwj/ ctEhm/LwbGXJDLhe1yndf2s+JzXvc0c= X-MC-Unique: Tr5n89RlO9y5TpPlcgqXFQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747580; x=1696352380; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+X4ZFF3Oy6UcO2Mgndzs8r8IIomXYpZkaTF6XIulRg0=; b=uB9X3f0Xu9axlde1hUQuV/XHFlxLZ1fHNcRyALKqlWtEHwPn2FcrRjaifyOgQZ1RGL /rhzlfuCUgrhVsFpbFZB3qQLtIKg4U2758eoMXnBZut5g26g17OcLZiZpva4pzVV3KRV f1sV2AnrN8Uso6atngP/Nux3Q6QBNal14BVpsoi9koGFX7LRI0kGnWYtnUqUO3QoVi1q hf/PIDnIWLK6hpMFR8bbFlsdu01/pwFkUcoBQ/RifDYC86ltwtZAUC14/QZ3WQkkFYHa 4TlBnyFKY+ADNm3NFb/k/WAPQN/WV4w3H5uAHIcOC0FSmrlBwPsh6q2rBvD2CTZT0BXk N6qQ== X-Gm-Message-State: AOJu0YykZ6y0TA2xGAS3u1L7FfSMNiBMv1gQybO4lfoICTFWDeGtSPJp Lp1Jwg9ni2VcIjhUa9fvGYgZbhxHGdev0FU06FFkK+C54MtorPHiJp1I8XJgYsWNS9jSyyI4etk AYE0FV/pL7r1easgPYQpOFnevduWC1pDNqhVRJk3pcpGIQkVf0hWke8Adj17Uuld+EzyGYp8Ees Q= X-Received: by 2002:adf:ea46:0:b0:323:3062:ef5d with SMTP id j6-20020adfea46000000b003233062ef5dmr2333477wrn.33.1695747580164; Tue, 26 Sep 2023 09:59:40 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFg1yJZhlfMrde9piwA7TpxgAnLdGsU11RXoUXmmaiF79AJ1qY1CJxtJ2geHqq7xgC+wm7xIA== X-Received: by 2002:adf:ea46:0:b0:323:3062:ef5d with SMTP id j6-20020adfea46000000b003233062ef5dmr2333470wrn.33.1695747579872; Tue, 26 Sep 2023 09:59:39 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 12/19] target/i386/cpu: avoid shadowed local variables Date: Tue, 26 Sep 2023 18:59:08 +0200 Message-ID: <20230926165915.738719-13-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747691190100001 Content-Type: text/plain; charset="utf-8" Reuse the pointer variable used for the unversioned model. Signed-off-by: Paolo Bonzini --- target/i386/cpu.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/target/i386/cpu.c b/target/i386/cpu.c index 7836aa6692f..ed72883bf33 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -5976,9 +5976,10 @@ static void x86_register_cpudef_types(const X86CPUDe= finition *def) /* Versioned models: */ =20 for (vdef =3D x86_cpu_def_get_versions(def); vdef->version; vdef++) { - X86CPUModel *m =3D g_new0(X86CPUModel, 1); g_autofree char *name =3D x86_cpu_versioned_model_name(def, vdef->version); + + m =3D g_new0(X86CPUModel, 1); m->cpudef =3D def; m->version =3D vdef->version; m->note =3D vdef->note; --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747699; cv=none; d=zohomail.com; s=zohoarc; b=jtwHLz6KrJqnKAnJ6s/dPGcl2IuBN7L5mMXyWOeaBFMGtmltqzuB5Ca4tPFUkyIR9XDm49HEsaHTiFbnmAaeLru50gEiSD81d8WJRajjVt6KQu91JdDkIkDfPdC7w7NhNRhIFkTDWQEG3zvbYbG6UHqzXRanFU0Wt/v0VkM6dTA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747699; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=cK2AY4GFy/+B42PpuPIpzASu5VezWEnZGsFZ9M1vuME=; b=gvuMat4OE7Pc84trA2t3VXFtWCNELyhwxcGXtywhpz8FcUxAXR2wqKBI1QGgixeLUYZRnIEq/dfJLInpqSlihTrCJzEtxsP7dFOlyswUyW61qNgY63gTMF6QucdpaYEWG4KPuO3YIHMIYybOPJVkKej2uHFj4c18gZQkvZdAnAQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747699490188.6006521490939; Tue, 26 Sep 2023 10:01:39 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBPr-0002Dh-Lr; Tue, 26 Sep 2023 13:00:09 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPY-00025L-Sc for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:49 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPW-0006gI-Ju for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:48 -0400 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-244-Y9eUkac-NbCzEdU-ByTxgg-1; Tue, 26 Sep 2023 12:59:43 -0400 Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-406227680a9so24369095e9.3 for ; Tue, 26 Sep 2023 09:59:43 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id q25-20020a7bce99000000b00405ee9dc69esm3223612wmj.18.2023.09.26.09.59.40 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747585; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=cK2AY4GFy/+B42PpuPIpzASu5VezWEnZGsFZ9M1vuME=; b=YWHmKVyF/VAi5050vIhvt1MaF6LNJsdJbDbGqk6E168D5EM34wWei+AqII50oAmWFxCZhZ gMYLjjSEndl6h2bbxF8z5FU0B7pRQMoT3dlS6o9ZX8VKennvHmlrXEmtYvNBGpIq9D6/x+ EfnwnU1Lfana2WV5F4N25sWPTZtRqBM= X-MC-Unique: Y9eUkac-NbCzEdU-ByTxgg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747582; x=1696352382; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=cK2AY4GFy/+B42PpuPIpzASu5VezWEnZGsFZ9M1vuME=; b=TzchyO0qQGXZQtIwRIGwtNau051aS8zffDZF3tJ87cVx0G4lh017IK7e1fVu2YX/kF Z1hiO814/5vB5kXtB/esBWxL7HTCy7M2hf4oe/7el9FdriUWcH7mCsxjvLafU8wJpf+N w3AAUZTwqbIH9cq+KtEZs2jbMCHgeXrn+ac26ISIRHK1vvRvcnKv2vJu92tyipJrZXiP 7EvR4SuqhwJyu9VygD348Y+wFBrdShMEtYR1PBiiB+IJuWuH348gkFduB6z9mKhxm+E/ m66jD4iCvQ6AUW9zzXjTCTKWSDIfZMCAgQXGYpp4rjz81hhGREelSCxikSYraHsg0iwx s6kw== X-Gm-Message-State: AOJu0Yz0a/eexLBeDPXkDsi0rXGtxTZIPriZ7N2ImXI+Cl85yPG+zo+W 8Ekx06ZEQegcr+4TuvBbnW9lZbWhL37XVuZ/ENUVbrorUE95EpfqTVuXfxa6gqPvSldexrDOBVK pupHJYZ/VY1eftMUp+Sst+Woen5l5XLEaaCPsT7fFiV5R9HbBVQGtva+4v1bg3H3FEDMKP3f5CO w= X-Received: by 2002:a7b:ce90:0:b0:3fe:d1e9:e6b8 with SMTP id q16-20020a7bce90000000b003fed1e9e6b8mr8908049wmj.12.1695747581934; Tue, 26 Sep 2023 09:59:41 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEP67ZvDd/Y2KLZkl9/CIX7A9WtrdFwcDVsOzvx8HL/4xKrofjhnqjVaM2zZeWb0mfQVdd9gw== X-Received: by 2002:a7b:ce90:0:b0:3fe:d1e9:e6b8 with SMTP id q16-20020a7bce90000000b003fed1e9e6b8mr8908034wmj.12.1695747581582; Tue, 26 Sep 2023 09:59:41 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 13/19] target/i386/translate: avoid shadowed local variables Date: Tue, 26 Sep 2023 18:59:09 +0200 Message-ID: <20230926165915.738719-14-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747699895100002 Content-Type: text/plain; charset="utf-8" Just remove the declaration. There is nothing in the function after the switch statement, so it is safe to do. Signed-off-by: Paolo Bonzini --- target/i386/tcg/translate.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/target/i386/tcg/translate.c b/target/i386/tcg/translate.c index c98e42f17a0..72635b87d3c 100644 --- a/target/i386/tcg/translate.c +++ b/target/i386/tcg/translate.c @@ -3242,7 +3242,7 @@ static bool disas_insn(DisasContext *s, CPUState *cpu) case 0x30 ... 0x35: case 0x38 ... 0x3d: { - int op, f, val; + int f; op =3D (b >> 3) & 7; f =3D (b >> 1) & 3; =20 @@ -3302,8 +3302,6 @@ static bool disas_insn(DisasContext *s, CPUState *cpu) case 0x81: case 0x83: { - int val; - ot =3D mo_b_d(b, dflag); =20 modrm =3D x86_ldub_code(env, s); --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747638; cv=none; d=zohomail.com; s=zohoarc; b=DOPMrRko/JJrxO+AM6WyrdubFi+l9DFfbGbCgyCR9celQpSldEPvzc0cH2ujZfSbxtK5Zct0Ahs2aRsWHwweDW87y873tFv2B7GTra88QREe1bH/arC/Low8+SXk2WwsDjJ6KJbj6xymVxORZu/+pRavJ4qoUcwO60mdPU5tc9U= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747638; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=B3MRqjJKPkyF3tHIV008r3NmHojHwaW5VLmbwgYG1UQ=; b=c6YdeWR7Kh1Nzy62TY8jswPE4o6cA6+h+o47FS5QN/pYIoq9t4eGMqCHiZXQmaGwp0//PYruddXgL0EOulNmJUc7WC3eZaVN7jHDLiBiwThxXPa9inxHMa99A/AEDvQyW933kNPWM0wpAz7psu1akxxXRZoqy0Ns4xcLITpTsxc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747638101997.2529910110753; Tue, 26 Sep 2023 10:00:38 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBPi-0002Bc-O4; Tue, 26 Sep 2023 12:59:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPZ-00025T-4e for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:51 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPX-0006gZ-P6 for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:48 -0400 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-76-ySlsIK62PE2qKLwBkT-BbQ-1; Tue, 26 Sep 2023 12:59:45 -0400 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-32001e60fb3so5324797f8f.1 for ; Tue, 26 Sep 2023 09:59:45 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id r8-20020a5d4e48000000b00315af025098sm14999066wrt.46.2023.09.26.09.59.42 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747587; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=B3MRqjJKPkyF3tHIV008r3NmHojHwaW5VLmbwgYG1UQ=; b=Gmyvvy2EglhCY5XbYJj4dC5M2FCn0JMmjRXd6BJ/LScc+vqSziC8tVAvY9bLt58ZUu0FaN 2BBjac1lg8LZjgAwqICBt0lOKZ0rDG7BjGz79ANw8II9Soou9j6FnQsI6Q3em28HVnJwa6 CZk7VO87xlyFRQED5st6YRBRs87j2Dg= X-MC-Unique: ySlsIK62PE2qKLwBkT-BbQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747583; x=1696352383; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=B3MRqjJKPkyF3tHIV008r3NmHojHwaW5VLmbwgYG1UQ=; b=lx7Rh91IiqvflIIDmXa0RZ215xI+ZxdBtcH1uLpb07Yk2vQ1fB0C0LOLJfjNjzIe+g x8lMZEeR0FpcJNw5nk4PUQoGbUnjR3gmcRdayd9UJPmdhdLyOU4bvak4BxpDEr6yuF6R AGxFdzg81v/c33Q/HbJE0GiPIpjX6wvLAq2MkFrLrYx8iuTOguLnelP3zj3BJ2iQvt+P Q8gUrcMMaDyMbdnqcFLUhjs7vvuKxT+MDOtrrqkKV1pmz/igPdwXythV/Vk7rE6imk4U ONYEeX1uOq0h4LNB2lN4xksCAE/Lkbs07wF/h9YC+6khu0nDLYt8kZoLSXFB5Xv1m5ap xe6Q== X-Gm-Message-State: AOJu0YxR9Yd+iLTSIA08qc8MvpRZdWoVN5qnyh0qsC4yHzFLbTosPpiy 19UtbMJXzXp593gbzCZOVcalP+VtMTFP10ris3qi20XqO5oEDIicRveBwLLwR8ed8IN4lV3UswY MHU9wfJAX2pLYf6gRXK2GSzOPyTsWDbPF7fdUoLR6kpIBzSv0RJg/8RXq1vAg/cw7moX5ZWcieC 0= X-Received: by 2002:a5d:6b8b:0:b0:323:2c2b:baf0 with SMTP id n11-20020a5d6b8b000000b003232c2bbaf0mr2421546wrx.15.1695747583605; Tue, 26 Sep 2023 09:59:43 -0700 (PDT) X-Google-Smtp-Source: AGHT+IExTzcIxrtAoyTPXkYXVLLJKw4maoVppUO7b4sgRi2lRoL4D24wmuyN9i8iYARdV3fGhBEdEg== X-Received: by 2002:a5d:6b8b:0:b0:323:2c2b:baf0 with SMTP id n11-20020a5d6b8b000000b003232c2bbaf0mr2421533wrx.15.1695747583252; Tue, 26 Sep 2023 09:59:43 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 14/19] target/i386/seg_helper: introduce tss_set_busy Date: Tue, 26 Sep 2023 18:59:10 +0200 Message-ID: <20230926165915.738719-15-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747638930100002 Content-Type: text/plain; charset="utf-8" Eliminate a shadowed local variable in the process. Signed-off-by: Paolo Bonzini --- target/i386/tcg/seg_helper.c | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/target/i386/tcg/seg_helper.c b/target/i386/tcg/seg_helper.c index e8d19c65fdc..b5198db82bc 100644 --- a/target/i386/tcg/seg_helper.c +++ b/target/i386/tcg/seg_helper.c @@ -226,6 +226,21 @@ static void tss_load_seg(CPUX86State *env, X86Seg seg_= reg, int selector, } } =20 +static void tss_set_busy(CPUX86State *env, int tss_selector, bool value, + uintptr_t retaddr) +{ + target_ulong ptr =3D env->gdt.base + (env->tr.selector & ~7); + uint32_t e2 =3D cpu_ldl_kernel_ra(env, ptr + 4, retaddr); + + if (value) { + e2 |=3D DESC_TSS_BUSY_MASK; + } else { + e2 &=3D ~DESC_TSS_BUSY_MASK; + } + + cpu_stl_kernel_ra(env, ptr + 4, e2, retaddr); +} + #define SWITCH_TSS_JMP 0 #define SWITCH_TSS_IRET 1 #define SWITCH_TSS_CALL 2 @@ -341,13 +356,7 @@ static void switch_tss_ra(CPUX86State *env, int tss_se= lector, =20 /* clear busy bit (it is restartable) */ if (source =3D=3D SWITCH_TSS_JMP || source =3D=3D SWITCH_TSS_IRET) { - target_ulong ptr; - uint32_t e2; - - ptr =3D env->gdt.base + (env->tr.selector & ~7); - e2 =3D cpu_ldl_kernel_ra(env, ptr + 4, retaddr); - e2 &=3D ~DESC_TSS_BUSY_MASK; - cpu_stl_kernel_ra(env, ptr + 4, e2, retaddr); + tss_set_busy(env, env->tr.selector, 0, retaddr); } old_eflags =3D cpu_compute_eflags(env); if (source =3D=3D SWITCH_TSS_IRET) { @@ -399,13 +408,7 @@ static void switch_tss_ra(CPUX86State *env, int tss_se= lector, =20 /* set busy bit */ if (source =3D=3D SWITCH_TSS_JMP || source =3D=3D SWITCH_TSS_CALL) { - target_ulong ptr; - uint32_t e2; - - ptr =3D env->gdt.base + (tss_selector & ~7); - e2 =3D cpu_ldl_kernel_ra(env, ptr + 4, retaddr); - e2 |=3D DESC_TSS_BUSY_MASK; - cpu_stl_kernel_ra(env, ptr + 4, e2, retaddr); + tss_set_busy(env, tss_selector, 1, retaddr); } =20 /* set the new CPU state */ --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747761; cv=none; d=zohomail.com; s=zohoarc; b=VY6IdnfzyWJNWr9j9rxLL0ZGQbGrvMO533TEeENkDEdk4k5Pz6vJs9+ULoNgSxwZMCHRcfPI3opeXh9cu7R8wDmFLSLVeUTRw5N3dWQNVX92sA97zXvsLHBYu9EQAQwVbmopyoRAvZGUefFsgajSepL7wEbG4HJltzVeKYA+TXo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747761; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=A/8G1UARPBIuebuj2iJPfjECiURXvIUFTSA9eEeTeKE=; b=QI0W88UcPGa+j8+YNpbrezd3lRg3bHHeJ/QmJtzCkCvqpstEnugAXj/jhgBeYYFzRDcz+VesF0+3iwfydLABN/7+Xug7ok3trY10ij5Cb9rOAy1TACA2WgHZut1UjEkLfUNBpKg4+T05dikN8WV8X24ANPM58ju1xRUB592h6b4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747761199658.5852075936831; Tue, 26 Sep 2023 10:02:41 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBPo-0002DW-7q; Tue, 26 Sep 2023 13:00:05 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPa-00025q-Cd for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:51 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPY-0006gl-LR for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:50 -0400 Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-339-hKCqU3a2Pi6PtpfcBl_GQw-1; Tue, 26 Sep 2023 12:59:46 -0400 Received: by mail-wm1-f71.google.com with SMTP id 5b1f17b1804b1-40592bb4d11so43657495e9.2 for ; Tue, 26 Sep 2023 09:59:46 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id 3-20020a05600c234300b004013797efb6sm18762968wmq.9.2023.09.26.09.59.44 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747588; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=A/8G1UARPBIuebuj2iJPfjECiURXvIUFTSA9eEeTeKE=; b=Se/O6ZOnvziygQJ5/uAAGGL4FtTVki2xaj5eeRxKKSyN4pLxcexiRjf4sT96gHxvS3LvKg Yf7H05OzIg57lLjrvycCqAA6GpV/4jYfLifD4d5fY7e/yQmULRp2ZKR8lA7M9Xc/KKP4M6 5c9LWTeLrUaNpVypTB1gj4GmAFePeqs= X-MC-Unique: hKCqU3a2Pi6PtpfcBl_GQw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747585; x=1696352385; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=A/8G1UARPBIuebuj2iJPfjECiURXvIUFTSA9eEeTeKE=; b=v/nVN1ASaaifTssUD4LrDC5a8lcfJPeBuxQsyEjpNhQMlplIKlHRWtzLZyasc2YrMX f5dTcMLBZCb2/EKMYKSuBNRu8btq3AhIWNaxKZUEoEPrzkTm7ITQOGHyd5Ye/utsHcxN yVn117PGuAv1NKweqSOo6f9JYbAJXLwL5+S88ocVNrnDTby8JId72RG0oiSjxw8xFzeR wIWS/NKOdyPXzIdPhJgJ00Dd8lpcCh4lEy7aaXxz78KKyaXazYZv44pDVGGsqF/Cl1r1 JzkU4/Ih4Qgz0sWNiWhuvvxihyhz5zFccC0TiO3l92FO0J45yhQuvXf9i7Em+nhOAOk3 VPaw== X-Gm-Message-State: AOJu0YyM94184/KklnVFRnVlxWytER0QppTC8Xp883SRHXy8vYnWvIQO QmXUNt3fO0vuo7qG51h2cVKuW9GoyQsURpQD7d2ourmiOPx8toGhBEavb1GkUaxa/H+zd9RI/LH z7LyI6AwcIONLJP6zDOZRxIck4JorWuK5o4aomDUBx9sQnswsJc17i1kKuc6DmojNHDRzun6JDL o= X-Received: by 2002:a05:600c:141:b0:400:ce4f:f184 with SMTP id w1-20020a05600c014100b00400ce4ff184mr9189065wmm.41.1695747585133; Tue, 26 Sep 2023 09:59:45 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFJe5f3Zt5BwGD/JspfN3RvgrtxoJRV39ZsCxwiEvuXgXx4oMTQHoRE1cWyI9A2VMEAq6BXNA== X-Received: by 2002:a05:600c:141:b0:400:ce4f:f184 with SMTP id w1-20020a05600c014100b00400ce4ff184mr9189052wmm.41.1695747584794; Tue, 26 Sep 2023 09:59:44 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 15/19] target/i386/seg_helper: remove shadowed variable Date: Tue, 26 Sep 2023 18:59:11 +0200 Message-ID: <20230926165915.738719-16-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, TVD_SUBJ_WIPE_DEBT=1.004 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747763264100003 Content-Type: text/plain; charset="utf-8" Return the width of the new task directly from switch_tss_ra. Signed-off-by: Paolo Bonzini --- target/i386/tcg/seg_helper.c | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/target/i386/tcg/seg_helper.c b/target/i386/tcg/seg_helper.c index b5198db82bc..2b92aee2073 100644 --- a/target/i386/tcg/seg_helper.c +++ b/target/i386/tcg/seg_helper.c @@ -245,10 +245,10 @@ static void tss_set_busy(CPUX86State *env, int tss_se= lector, bool value, #define SWITCH_TSS_IRET 1 #define SWITCH_TSS_CALL 2 =20 -/* XXX: restore CPU state in registers (PowerPC case) */ -static void switch_tss_ra(CPUX86State *env, int tss_selector, - uint32_t e1, uint32_t e2, int source, - uint32_t next_eip, uintptr_t retaddr) +/* return 0 if switching to a 16-bit selector */ +static int switch_tss_ra(CPUX86State *env, int tss_selector, + uint32_t e1, uint32_t e2, int source, + uint32_t next_eip, uintptr_t retaddr) { int tss_limit, tss_limit_max, type, old_tss_limit_max, old_type, v1, v= 2, i; target_ulong tss_base; @@ -502,13 +502,14 @@ static void switch_tss_ra(CPUX86State *env, int tss_s= elector, cpu_x86_update_dr7(env, env->dr[7] & ~DR7_LOCAL_BP_MASK); } #endif + return type >> 3; } =20 -static void switch_tss(CPUX86State *env, int tss_selector, - uint32_t e1, uint32_t e2, int source, - uint32_t next_eip) +static int switch_tss(CPUX86State *env, int tss_selector, + uint32_t e1, uint32_t e2, int source, + uint32_t next_eip) { - switch_tss_ra(env, tss_selector, e1, e2, source, next_eip, 0); + return switch_tss_ra(env, tss_selector, e1, e2, source, next_eip, 0); } =20 static inline unsigned int get_sp_mask(unsigned int e2) @@ -650,14 +651,11 @@ static void do_interrupt_protected(CPUX86State *env, = int intno, int is_int, if (!(e2 & DESC_P_MASK)) { raise_exception_err(env, EXCP0B_NOSEG, intno * 8 + 2); } - switch_tss(env, intno * 8, e1, e2, SWITCH_TSS_CALL, old_eip); + shift =3D switch_tss(env, intno * 8, e1, e2, SWITCH_TSS_CALL, old_= eip); if (has_error_code) { - int type; uint32_t mask; =20 /* push the error code */ - type =3D (env->tr.flags >> DESC_TYPE_SHIFT) & 0xf; - shift =3D type >> 3; if (env->segs[R_SS].flags & DESC_B_MASK) { mask =3D 0xffffffff; } else { --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747710; cv=none; d=zohomail.com; s=zohoarc; b=EOYfM6wSZz/2IT/uuMO1D64MDwltv6drJVy4Xx1s/YO3Ih0VEDl8SPgq39GtWiQBpX2S8V/3fAAmuprIS5eLOkNgWCmT7iT9a6tdqKduE6voN/PTIQ7VdUnVKinMnhVql2ytZRA1FlnOR9DJwIgAeQJTZDjN4pOzWG4+3VZGJzU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747710; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=yXh2gOGuGydxlcHn0MJWkG6oNwaWADlluHpoQ0K5Bu4=; b=nud5AC0H/3pRBO60ysUxW4fwkjcG9swMhyTV7qCsxHehxllTgomL5LxM1+ycKz8HhF9sSGHASbq89LFPBbKZhE6ReMMaiHy7421sOHWBpxzKVAxZbF2tZEZxfyeQsPo+rGM5fsSoHTD06EceBk/g0ed6mpfHp0X99OKVs/KdUcI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747710222362.0202014013071; Tue, 26 Sep 2023 10:01:50 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBQC-0003MB-9C; Tue, 26 Sep 2023 13:00:28 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPd-000273-Hg for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:55 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPa-0006hX-G0 for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:53 -0400 Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-26-aSewzDKhOcCCWtLhNC-m8g-1; Tue, 26 Sep 2023 12:59:48 -0400 Received: by mail-wm1-f71.google.com with SMTP id 5b1f17b1804b1-3f42bcef2acso78911825e9.2 for ; Tue, 26 Sep 2023 09:59:48 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id iw7-20020a05600c54c700b003fc16ee2864sm14015558wmb.48.2023.09.26.09.59.45 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747590; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=yXh2gOGuGydxlcHn0MJWkG6oNwaWADlluHpoQ0K5Bu4=; b=UNpn1GjPdCVRBGppAhm1d2SbOQ523PF56+6uumE3jkTzOgt5Y/dLkNTJ3Aa2Go3Icc3Vqw 4LQkn0txo7qUBVHQBGVe4J9yFnAFZ8GKZHVmFrfzViUmUMRrLsjtzwWnCryRQT9+J9F3Ge ypDL3jsk7kS6bX07p3qyiESuAvb+GHk= X-MC-Unique: aSewzDKhOcCCWtLhNC-m8g-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747586; x=1696352386; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=yXh2gOGuGydxlcHn0MJWkG6oNwaWADlluHpoQ0K5Bu4=; b=RDNIdCGV4IToLRHCmwThq5LlqqlOg5ZU/zDGdxezrNWENU0Z6pXN1ZluZeN6thqKLP XPDMT39g95MRvviWKuSoK23duFGacotafs5SORA9eKZLw5TtbWx5XOASwTIcvqC9AbRt r7iz6tH0qKmBSp/GlrZVk8ABZuKmOkoE1KnoMin7HSkzTG2ndUx2hoTU5w2hWu01CS+d OhuYsvq0C81E2TzrDd6y45QCuvj2PUi5OOGyPkBQraixaiedJRu87qmJGkfA6zy/yq3F vpgxH0Nbqk+GmXygRVRauAM/PHlZNXWacj2nmqooLzo/lUJMA/wAyT3oD3WJvR6n9ygz gPRA== X-Gm-Message-State: AOJu0Ywz3w6IiH1i1Tqz/Qajf46sngPu4Tryp0Kics5cH/o4POeXkMfb tCh0+NeJbCJsQyH3YdJ88mBUX8jMG8OnijPB7Z6Ra+/0uXM5d1DMswar0wli3hvChrTiutS/9ul M63FcUfn+F3MDQ9M9yaeuXx4PYaGRFk4vj0z42za2cY9BQvsykwc5qdxnKTwV60lMMOYeEmUDle 4= X-Received: by 2002:a1c:7904:0:b0:402:d72:bee5 with SMTP id l4-20020a1c7904000000b004020d72bee5mr8827661wme.21.1695747586660; Tue, 26 Sep 2023 09:59:46 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHOCQmmkmKDfn4FeiOoR7KwXeZWiSBt5eYHtWWrOIVMQuCKZ972y6mTAXOQ/yHsbqdETH2xog== X-Received: by 2002:a1c:7904:0:b0:402:d72:bee5 with SMTP id l4-20020a1c7904000000b004020d72bee5mr8827646wme.21.1695747586277; Tue, 26 Sep 2023 09:59:46 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 16/19] target/i386/svm_helper: eliminate duplicate local variable Date: Tue, 26 Sep 2023 18:59:12 +0200 Message-ID: <20230926165915.738719-17-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747711255100001 Content-Type: text/plain; charset="utf-8" This shadows an outer "cs" variable that is initialized to the same expression. Signed-off-by: Paolo Bonzini --- target/i386/tcg/sysemu/svm_helper.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/target/i386/tcg/sysemu/svm_helper.c b/target/i386/tcg/sysemu/s= vm_helper.c index 2d27731b608..32ff0dbb13c 100644 --- a/target/i386/tcg/sysemu/svm_helper.c +++ b/target/i386/tcg/sysemu/svm_helper.c @@ -387,8 +387,6 @@ void helper_vmrun(CPUX86State *env, int aflag, int next= _eip_addend) env->hflags2 |=3D HF2_GIF_MASK; =20 if (ctl_has_irq(env)) { - CPUState *cs =3D env_cpu(env); - cs->interrupt_request |=3D CPU_INTERRUPT_VIRQ; } =20 --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747680; cv=none; d=zohomail.com; s=zohoarc; b=kmEDtVVoQmND6BNj9w/iu29ESzvoKlY1gAhiAnsKuCpKDuSx1ev2JdEvZsAsb6HPX6fs4NBb2/c9KcaTj+5K60GoPqYiaL7X/IIDbxMYtHqqBToTtnhE3qsksDhyYEVzFzVupsGl/Ldg1lKFk4doojWMdfZO3766LLsRDhPqTr8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747680; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=5O/R/yuV9jt0nLf1xa7RpbeTuLn5AN5h0C14fZowb2E=; b=oK6+gVWtVmBzwC6fr3NWZgLZO3iV0iKnNQ9OX8Tf2foIrgQwkH6kbeBjENdq3psT/NEl14NZf1+yN9oI79gImOgc3Fmhrp/JNoQhuL+93BsYyAzB8xI8qec/L5Hjisjx8drMgbvJuq/dveKmfEFMF/5wdhJEFtNPwBiSHllBvYQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747680779837.546333832302; Tue, 26 Sep 2023 10:01:20 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBPj-0002Bo-UI; Tue, 26 Sep 2023 12:59:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPd-000275-IX for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:55 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPc-0006hr-5M for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:53 -0400 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-608-5KIE1dY2OKmupcMcvvsUpA-1; Tue, 26 Sep 2023 12:59:49 -0400 Received: by mail-wm1-f69.google.com with SMTP id 5b1f17b1804b1-4053e4195c6so68138695e9.1 for ; Tue, 26 Sep 2023 09:59:49 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id x5-20020adfdcc5000000b0031c6581d55esm15351598wrm.91.2023.09.26.09.59.46 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747591; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=5O/R/yuV9jt0nLf1xa7RpbeTuLn5AN5h0C14fZowb2E=; b=AvVp2aqiz2r9uPtZFcAFh23wuk1vYAKydLliGkshq7HsfKgZQmu0a7dAc71B6NofeqEjuK ygIOAkgb0QbQW3XJ58RKd/v8QLWoSMcdLA3YCiR5CtHB2PLjXEQLxxEe7yjJVSU/iJyDPi t8JgE7bGH95/59nA1sRct7G1t3rD2u0= X-MC-Unique: 5KIE1dY2OKmupcMcvvsUpA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747588; x=1696352388; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5O/R/yuV9jt0nLf1xa7RpbeTuLn5AN5h0C14fZowb2E=; b=IAznOkkpBs3H7FfYs6sMS/hBRJkAviezmhtbxS+eNv6NEttpwLQZb2qybzJP/o9t8U ave3TGtj6EQoBVw5pytvQiyXopHg/Bgfx6FKFm1bqj3Zjbqk5/mn9Q6rzJo+YzEz/6w2 Zv621pMXF8ylm5LKjcTy216wFdNQBH4MJzm8UgWaouybyKxV4p3/6YMXUQ/hlveLR/Gb zow4IO4ZpD+gR3CbDAE5vCArMIkxjYQZk/oRkCY4km2QwnsPON7kehxI+l1h3cH6p/fQ VfxUUjbwBQcXxYE7ovXgDlPOUwD4XnufVEPLXGxDuWi5iVdKzyULwysQs+xT9d6IknXt jm+Q== X-Gm-Message-State: AOJu0YwcyZk+njkoWnHtm4aBGW0E2ngA8DF2OF0PYeR96UizcSKeoPaB oSL8iryIeOdtKGbBPz3AFIntmL4WS8rzSoJSiqHQxSYmIvZ2TisnF+15nIUa1fX+IGJNBDlfZTR lg1nSb6RcWW+xeLNBfx5oHnXk0QCkiRiur90rR1VaAhQZDSE+gd8vxJKDj2Ee9+RyDldMW0Y2B9 I= X-Received: by 2002:a5d:4fc9:0:b0:31f:f99c:6009 with SMTP id h9-20020a5d4fc9000000b0031ff99c6009mr10513915wrw.22.1695747588391; Tue, 26 Sep 2023 09:59:48 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG0Y1JBHEugMusEpMg8hI1cc2E/z+/h6afjxyDINtf+0dHUQUXV4cyhpTdYYdr28H1Pg9pK9w== X-Received: by 2002:a5d:4fc9:0:b0:31f:f99c:6009 with SMTP id h9-20020a5d4fc9000000b0031ff99c6009mr10513898wrw.22.1695747588045; Tue, 26 Sep 2023 09:59:48 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 17/19] block: mark mixed functions that can suspend Date: Tue, 26 Sep 2023 18:59:13 +0200 Message-ID: <20230926165915.738719-18-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747681732100001 Content-Type: text/plain; charset="utf-8" The marking should be extended transitively to all functions that call these ones, so that static analysis can be done much more efficiently. However, this is a start and makes it possible to use vrc's path-based searches to find potential bugs where coroutine_fns call blocking functions. Signed-off-by: Paolo Bonzini --- block/io.c | 5 +++-- block/qcow2.c | 2 +- block/qed.c | 4 ++-- block/throttle-groups.c | 4 ++-- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/block/io.c b/block/io.c index 209a6da0c8e..e7f9448d5a3 100644 --- a/block/io.c +++ b/block/io.c @@ -387,7 +387,8 @@ void bdrv_do_drained_begin_quiesce(BlockDriverState *bs= , BdrvChild *parent) bdrv_do_drained_begin(bs, parent, false); } =20 -void bdrv_drained_begin(BlockDriverState *bs) +void coroutine_mixed_fn +bdrv_drained_begin(BlockDriverState *bs) { IO_OR_GS_CODE(); bdrv_do_drained_begin(bs, NULL, true); @@ -506,7 +507,7 @@ void bdrv_drain_all_begin_nopoll(void) } } =20 -void bdrv_drain_all_begin(void) +void coroutine_mixed_fn bdrv_drain_all_begin(void) { BlockDriverState *bs =3D NULL; =20 diff --git a/block/qcow2.c b/block/qcow2.c index af43d59d768..5a3c537f146 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -5288,7 +5288,7 @@ static ImageInfoSpecific *qcow2_get_specific_info(Blo= ckDriverState *bs, return spec_info; } =20 -static int qcow2_has_zero_init(BlockDriverState *bs) +static int coroutine_mixed_fn qcow2_has_zero_init(BlockDriverState *bs) { BDRVQcow2State *s =3D bs->opaque; bool preallocated; diff --git a/block/qed.c b/block/qed.c index b2604d9dad3..45ae320290d 100644 --- a/block/qed.c +++ b/block/qed.c @@ -570,8 +570,8 @@ static void coroutine_fn bdrv_qed_open_entry(void *opaq= ue) qemu_co_mutex_unlock(&s->table_lock); } =20 -static int bdrv_qed_open(BlockDriverState *bs, QDict *options, int flags, - Error **errp) +static int coroutine_mixed_fn bdrv_qed_open(BlockDriverState *bs, QDict *o= ptions, + int flags, Error **errp) { QEDOpenCo qoc =3D { .bs =3D bs, diff --git a/block/throttle-groups.c b/block/throttle-groups.c index 3eda4c4e3de..f5c0fac5814 100644 --- a/block/throttle-groups.c +++ b/block/throttle-groups.c @@ -317,8 +317,8 @@ static bool coroutine_fn throttle_group_co_restart_queu= e(ThrottleGroupMember *tg * @tgm: the current ThrottleGroupMember * @direction: the ThrottleDirection */ -static void schedule_next_request(ThrottleGroupMember *tgm, - ThrottleDirection direction) +static void coroutine_mixed_fn schedule_next_request(ThrottleGroupMember *= tgm, + ThrottleDirection dir= ection) { ThrottleState *ts =3D tgm->throttle_state; ThrottleGroup *tg =3D container_of(ts, ThrottleGroup, ts); --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747693; cv=none; d=zohomail.com; s=zohoarc; b=QPlS3kzkrLIRchNXDqgb16RgzI/kMDwDw5MRc9kqq+UJXb2LE00zCj62y6xBJvcS/svfdOAoRKcxhm9evK1/7uwP5I3EXgS9d6ApEEZFydVz6dobJULg8Zp8Cub/L0lUXctHxR7sHzqXHDfotbKOwBxKPuAMqXX+KVnzIT3D4Ng= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747693; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=191HqQRlJVK6YDjgA38pPiD49wHIVPYKaP2RWYAVpb8=; b=mbzGyIZkYLPuMc5IxoJso1f5GYUoZByv3wOjXsn2ugE1K1Ys6ZeJ4g7p1vo9AGaaCYfg4KpUXFq6E1sRB0mtcVIEef8t/T3MrUbWb6iFn/lGQrwBGlSTxPaYvJ7JN3nJOWJ1QhiLnZunAMMnLSZ6UUTeBoBVuuCfKZ45VxHh6/c= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1695747693193218.9724411225809; Tue, 26 Sep 2023 10:01:33 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBQZ-0003yn-9n; Tue, 26 Sep 2023 13:00:51 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPk-0002Bz-DT for qemu-devel@nongnu.org; Tue, 26 Sep 2023 13:00:00 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPi-0006ka-M2 for qemu-devel@nongnu.org; Tue, 26 Sep 2023 13:00:00 -0400 Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-107-cxcDDWSGOXS8jYgT9lNHgw-1; Tue, 26 Sep 2023 12:59:51 -0400 Received: by mail-wm1-f70.google.com with SMTP id 5b1f17b1804b1-40554735995so65838015e9.1 for ; Tue, 26 Sep 2023 09:59:51 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id g16-20020adfa490000000b003232380ffd5sm7075818wrb.106.2023.09.26.09.59.48 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747598; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=191HqQRlJVK6YDjgA38pPiD49wHIVPYKaP2RWYAVpb8=; b=XMRPxxKLi+zSqeOzxIZ/DyyxO3XtFsUa5fzLrmI/F/4zbnZ81trxuxqpkT4WBHBRy8Zwjz QKp8oy6jw8/S+mQ/9r3m/JvUTSLFCXCmZN0+Tl07WzT5fFfSi5sRyw9IPhVGhVU2VrKbhE OCCgrHz0mKXRgQXy2vZXvG3XtOkJ2tE= X-MC-Unique: cxcDDWSGOXS8jYgT9lNHgw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747590; x=1696352390; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=191HqQRlJVK6YDjgA38pPiD49wHIVPYKaP2RWYAVpb8=; b=PTGBiFmnWJ5WtSOCh4JaImYZjqI3hvKVfOLdzO6wQMZYv/chxi/axzTROLGyI5TXhy tBhqEPbtNDkpmgVNqlnzlDYZW5gUX9eVOuah9tubUjvztTSQvWG8V8hP8fE2pfUHv+n+ HClup23YsLL86ILaeEwzzBSznd4LWExNPQQ07WmUvM2PytDJ2dmj5I/ifvCxTnErnzKG H+zIWPHeH+aLJxnUMHqMnaqbHcP7wn9siD9LRg0kr1xLeyq3agn5+/JSN3QcSOFRqZ8D s2Qqdhep0yR+wo5lWyz0LK+z8UGRXU894aqpJbyDRmM1oROeu7pj7ZweHJF1Ta4rtxFC icjw== X-Gm-Message-State: AOJu0Yyi9EXd1+ntBH6dQF7u5uUhLdVjKtNNYQ/tKuVcmmu8Lsspl8wt Ni5CPBF7lWm+fhor7ZjugTf+29GyNBhtcqu7HF0HvlD0SnJ/7p/nRLddUlJqtk0frVXpNGqhTz0 uAkMQDsO6wWMO27SykJVcBxGs+qN25FJKHGgx5MgNd/mKC2nwPO+xpObrC8zGHsu87p9N0rj8zh s= X-Received: by 2002:a7b:c4cb:0:b0:404:f9c1:d5d7 with SMTP id g11-20020a7bc4cb000000b00404f9c1d5d7mr10400167wmk.25.1695747590073; Tue, 26 Sep 2023 09:59:50 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEAPaIhKxxf8F4Ru+UCrWr330RF1Uwa+n+I14EoWwVfWcxfnLq68quEZ54aTV3hZMUqz0ohGw== X-Received: by 2002:a7b:c4cb:0:b0:404:f9c1:d5d7 with SMTP id g11-20020a7bc4cb000000b00404f9c1d5d7mr10400157wmk.25.1695747589754; Tue, 26 Sep 2023 09:59:49 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 18/19] compiler: introduce QEMU_ANNOTATE Date: Tue, 26 Sep 2023 18:59:14 +0200 Message-ID: <20230926165915.738719-19-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747695201100003 Content-Type: text/plain; charset="utf-8" Allow a more shorter syntax when defining wrapper macros for __attribute__((annotate(...))). Signed-off-by: Paolo Bonzini --- include/qemu/compiler.h | 6 ++++++ include/qemu/osdep.h | 6 +++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/include/qemu/compiler.h b/include/qemu/compiler.h index a309f90c768..7fda29b445f 100644 --- a/include/qemu/compiler.h +++ b/include/qemu/compiler.h @@ -197,4 +197,10 @@ #define BUILTIN_SUBCLL_BROKEN #endif =20 +#if __has_attribute(annotate) +#define QEMU_ANNOTATE(x) __attribute__((annotate(x))) +#else +#define QEMU_ANNOTATE(x) +#endif + #endif /* COMPILER_H */ diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h index 2897720facd..e4a4eb2d613 100644 --- a/include/qemu/osdep.h +++ b/include/qemu/osdep.h @@ -185,7 +185,7 @@ extern "C" { * } */ #ifdef __clang__ -#define coroutine_fn __attribute__((__annotate__("coroutine_fn"))) +#define coroutine_fn QEMU_ANNOTATE("coroutine_fn") #else #define coroutine_fn #endif @@ -195,7 +195,7 @@ extern "C" { * but can handle running in non-coroutine context too. */ #ifdef __clang__ -#define coroutine_mixed_fn __attribute__((__annotate__("coroutine_mixed_fn= "))) +#define coroutine_mixed_fn QEMU_ANNOTATE("coroutine_mixed_fn") #else #define coroutine_mixed_fn #endif @@ -224,7 +224,7 @@ extern "C" { * } */ #ifdef __clang__ -#define no_coroutine_fn __attribute__((__annotate__("no_coroutine_fn"))) +#define no_coroutine_fn QEMU_ANNOTATE("no_coroutine_fn") #else #define no_coroutine_fn #endif --=20 2.41.0 From nobody Mon May 20 11:05:02 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1695747686; cv=none; d=zohomail.com; s=zohoarc; b=X/Lu5wUFrIpk1ki7vXYRp1B5YdwJQjdNcFEcxogU50siYK97HY0TvEY+h4arVOLxPNHRGzv+4bJU8KK3Wg9jGw7XRHaiGo//HaXA5agAuUVE9HhaOjokPNCXJJtsZX5iI9QQPA9QNhOideZeS1rllC4r2N1nryONOw8Wxsxs3LM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695747686; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=jUYC7R0Bsr1lN0lN2GWwwp+UkZzf/EPefO8IwL5rt1A=; b=hNE5/n0j6ZW6xLeylMOkSJnHBCwbthKm6wQLmanAUmTnF3emc2Q0jx+QyH2XE0b/8HqF7OcIvvpXBSnWUDCXGphVKnixCG+W3xTuVtxtYxC3+2gQoaAx0TBQBjVo1BAFruq7oXH+8ZtWVA+aC2KOa2Pz6W1p9NqLc+ggiWgIykA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 169574768623139.20439718056957; Tue, 26 Sep 2023 10:01:26 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlBQJ-0003a5-3l; Tue, 26 Sep 2023 13:00:35 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPj-0002Bp-Ts for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:59 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlBPi-0006kS-F3 for qemu-devel@nongnu.org; Tue, 26 Sep 2023 12:59:59 -0400 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-247-BtD_320IP-2_EQDTHv_fcg-1; Tue, 26 Sep 2023 12:59:53 -0400 Received: by mail-wm1-f69.google.com with SMTP id 5b1f17b1804b1-405334b0873so76150025e9.0 for ; Tue, 26 Sep 2023 09:59:53 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:5e2c:eb9a:a8b6:fd3e]) by smtp.gmail.com with ESMTPSA id g16-20020adfa490000000b003232380ffd5sm7075870wrb.106.2023.09.26.09.59.50 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 09:59:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695747597; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=jUYC7R0Bsr1lN0lN2GWwwp+UkZzf/EPefO8IwL5rt1A=; b=WF2cw+CXaXmTty2YNAwU/E92oYu1SscWpn1ovb/MT/GZwpTtmDETNmL3t0ohAN4yJWbknr Qg2exFA15wZEQbPXgfCl6N8oy+cNaLAtL03DI6OgXzicOERTQwXEysNI5ntpTmoXsYby9h VF8UUVoucrqNgYTHpWoFwzzsg57Z+g4= X-MC-Unique: BtD_320IP-2_EQDTHv_fcg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695747591; x=1696352391; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=jUYC7R0Bsr1lN0lN2GWwwp+UkZzf/EPefO8IwL5rt1A=; b=apCOXYPIrt0A1fJYnhwVpsmVpFBfvlEjovVoK1QUesHrH+uDJF0jQWEj7jvLq0QoXc 5dJDKvRYBtkhA/49ogex4pT1oHGs7GRgPMB8b8fruSF++qYeNgJSPSmFPwzOIxsiEfiU rvr6uhDs+E9QHrfbjXwwroyZKUuMvAiHv6XTnFqxGfQAcWsYqf3dseTqZmJYY5k/78F/ +56JdqTJ/91vlM/B1GDgxoOS9Lllfed33lkDoAOmjEUt884FNh9C6KO/hELxWUk9NnuW QJCAKiY1cjkSOS9hAjP3eOUPsmuX1nnZ0nxRH1+p4/J9pTNunLiXh16Tuixmq/LuJkSa wdYg== X-Gm-Message-State: AOJu0YxF5bA79gyG3QFY+pcXnQZM21iVuwyWIw/+fbaSlc1UQZXvW8Zr C51FizIZAQuL0EWHcB/SKHPM9UftAqPtnVhTGnu1DkF1oPDbIKHSHImw/ehfJLuQtBD5ELtu9EF cTD+BFYjM9+ls4HIIVfffO5G7jdcBAb/d3Cu+5vcWwVHaoyMqgMBBbF16aCr1Ry7XH5PyiW9pfl o= X-Received: by 2002:a1c:7417:0:b0:3fe:d630:f568 with SMTP id p23-20020a1c7417000000b003fed630f568mr8686817wmc.39.1695747591635; Tue, 26 Sep 2023 09:59:51 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGBS/EDURKnmgJOouU8beiQlVhfnThhy6j1EQfK7AfGAgzZtrnQZ2LkSvGuB6ctDCfMXvGKuQ== X-Received: by 2002:a1c:7417:0:b0:3fe:d630:f568 with SMTP id p23-20020a1c7417000000b003fed630f568mr8686802wmc.39.1695747591275; Tue, 26 Sep 2023 09:59:51 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 19/19] audio: remove shadowed locals Date: Tue, 26 Sep 2023 18:59:15 +0200 Message-ID: <20230926165915.738719-20-pbonzini@redhat.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230926165915.738719-1-pbonzini@redhat.com> References: <20230926165915.738719-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, TVD_SUBJ_WIPE_DEBT=1.004 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1695747687144100011 Content-Type: text/plain; charset="utf-8" Signed-off-by: Paolo Bonzini --- audio/audio.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/audio/audio.c b/audio/audio.c index 90c7c49d116..2f479657117 100644 --- a/audio/audio.c +++ b/audio/audio.c @@ -1706,7 +1706,7 @@ static AudioState *audio_init(Audiodev *dev, const ch= ar *name) size_t i; int done =3D 0; const char *drvname =3D NULL; - VMChangeStateEntry *e; + VMChangeStateEntry *vmse; AudioState *s; struct audio_driver *driver; /* silence gcc warning about uninitialized variable */ @@ -1824,8 +1824,8 @@ static AudioState *audio_init(Audiodev *dev, const ch= ar *name) s->period_ticks =3D dev->timer_period * (int64_t)SCALE_US; } =20 - e =3D qemu_add_vm_change_state_handler (audio_vm_change_state_handler,= s); - if (!e) { + vmse =3D qemu_add_vm_change_state_handler (audio_vm_change_state_handl= er, s); + if (!vmse) { dolog ("warning: Could not register change state handler\n" "(Audio can continue looping even after stopping the VM)\n"= ); } @@ -1900,10 +1900,8 @@ CaptureVoiceOut *AUD_add_capture( cap =3D audio_pcm_capture_find_specific(s, as); if (cap) { QLIST_INSERT_HEAD (&cap->cb_head, cb, entries); - return cap; } else { HWVoiceOut *hw; - CaptureVoiceOut *cap; =20 cap =3D g_malloc0(sizeof(*cap)); =20 @@ -1937,8 +1935,9 @@ CaptureVoiceOut *AUD_add_capture( QLIST_FOREACH(hw, &s->hw_head_out, entries) { audio_attach_capture (hw); } - return cap; } + + return cap; } =20 void AUD_del_capture (CaptureVoiceOut *cap, void *cb_opaque) --=20 2.41.0