Received: by 10.223.164.221 with SMTP id h29csp442951wrb; Fri, 3 Nov 2017 18:27:46 -0700 (PDT) X-Google-Smtp-Source: ABhQp+Sfcd0//ZIAABC5jOxmrFCcfGI2SPc9GItGjKXLJUfAyMqnJQKV9/UoqYbn252V8A/9vPka X-Received: by 10.159.246.141 with SMTP id c13mr7297337pls.64.1509758866510; Fri, 03 Nov 2017 18:27:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1509758866; cv=none; d=google.com; s=arc-20160816; b=eIS+e5PV2qGLC/EP8pW5VU0aqZdY2IYFkU06GKjVRVNQSNHtrwykUwLvhHR49gCC8+ Fasn+ksBLix13giJoP8kUrozx8d6CgNpQKllXCLbjm3/BjjFKjmTagb6mS83OvPXA8OR B6ysUqIN0v+ChDhIFLw1fOyesCqPkaS5Epd9BpsWzqXGnL0g0D/JdM+L85A8a9WWo15B 3zHo21FTyYlUh0V8J6kIvU9Dt6v7yM4FZosyC32cNUnFb8IaYXSPvEJ9rwvA+vCpwnnM tsoNPNI7vlT6SbVlfd2Eegx75ihgY1FLLWi8W2F03DkKKjtv49wqtL0zQL8pIiO16LRh 6mtA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:spamdiagnosticmetadata :spamdiagnosticoutput:content-language:accept-language:in-reply-to :references:message-id:date:thread-index:thread-topic:subject:cc:to :from:dkim-signature:arc-authentication-results; bh=vvWzIRVjhjhNowyfSnN4K2KShYF3g5wsgOVP+cKwxZI=; b=Ma09K4P7BQnXhRSRc+FWywA+j/rYUHtnm/wRbprjZSWkLqd7yQ3U3L/WHwsQbV6Uzj 0yV+pdQ/cajQOxBOgguS1PsUm+beDBzjBOMOwU2M/FBJ3Q/GkLtKJ7lVM6D2JNSj1NAo TGjxtI0oToSftb4Nfj+79KpRQuFFEI1TFGEJjGn7bUn18cjfTx1q+3jGA7D0dKL6kz3c mevHRUHJAuHfR/X29GW5CUXLBuXKmFsMo5GWtqaC2m+s0TfZkhpNc31hVz/96IRzMvtR 63SCLlAvh8matDPlMhU4yhZ2q2i72yZNiLQJ3HNvPb+pW8WR2WUq4L5UOjIdI9otzho0 NPmA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@unisys.com header.s=selector1 header.b=h+V2v9g8; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=unisys.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z3si5883288pln.173.2017.11.03.18.27.33; Fri, 03 Nov 2017 18:27:46 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@unisys.com header.s=selector1 header.b=h+V2v9g8; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=unisys.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756438AbdKDB04 (ORCPT + 93 others); Fri, 3 Nov 2017 21:26:56 -0400 Received: from mail-bn3nam01on0072.outbound.protection.outlook.com ([104.47.33.72]:45730 "EHLO NAM01-BN3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751419AbdKDB0y (ORCPT ); Fri, 3 Nov 2017 21:26:54 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=unisys.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=vvWzIRVjhjhNowyfSnN4K2KShYF3g5wsgOVP+cKwxZI=; b=h+V2v9g8Aq1oByPf9G2uVkwyr61agGl7fU+8Q+ihv9NwaP1pSInurBq6HTROIc3+r7kGJv5ukTxf/R/Lv/D8zCtGcoUXvbnkEYekq98Trmov+0MRvOGvcxl9tEqSs9hXyRb8nh8BreRDAU+ZI/bn4EEErfl2i9uJydgUcph25CM= Received: from CY4PR07MB3176.namprd07.prod.outlook.com (10.172.115.142) by CY4PR07MB3207.namprd07.prod.outlook.com (10.172.115.149) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.178.6; Sat, 4 Nov 2017 01:26:51 +0000 Received: from CY4PR07MB3176.namprd07.prod.outlook.com ([10.172.115.142]) by CY4PR07MB3176.namprd07.prod.outlook.com ([10.172.115.142]) with mapi id 15.20.0178.015; Sat, 4 Nov 2017 01:26:51 +0000 From: "Kershner, David A" To: SF Markus Elfring , "devel@driverdev.osuosl.org" , *S-Par-Maintainer , "Thompson, Bryan E." , "Binder, David Anthony" , Greg Kroah-Hartman , Sameer Wadgaonkar , "Sell, Timothy C" CC: LKML , "kernel-janitors@vger.kernel.org" Subject: RE: [PATCH] staging: unisys: visorchipset: Use common error handling code in setup_crash_devices_work_queue() Thread-Topic: [PATCH] staging: unisys: visorchipset: Use common error handling code in setup_crash_devices_work_queue() Thread-Index: AQHTVNz40BuaND47u0S5ZOnlCkulxqMDbakw Date: Sat, 4 Nov 2017 01:26:50 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=David.Kershner@unisys.com; x-originating-ip: [98.115.244.50] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;CY4PR07MB3207;6:1zoUVvMyYn9H0QyFOLzytsi8zP8aL2ofdgknXPb6KSgkne1J5+cLMcBmQwQModXl09t40GmQNA6muZy0/AVg2eHEw51bG8k2TTRbR6vhG3OdR7nHy7kq0FKf130NHbvP69Fz0A3ABhUAhj006Qk4T7lwTQw9yMokbGO+p8mrjbw1opRC2VNopWZWfCxCeR15zPzd4A5F11jVllVex083a5ikpHE2wWm05chLcL/YlNLbV9i9OWhnmH6ekM8rRc2hd7UR93P4G5hJaGTPxU808mMpVC6s4NLNMAmGj3Tsj/m6Go3Cz2wJaL33AtIUWuSNQSD7q3XeQTQ1dtjvKuwBm63b86g+BIo5Fo4rOOqJUyo=;5:lsXunhiXwZkxdPhuWafJDGBRJ8yTW2iuOcKHnFyMVEYNrRT02JPepczUQm09QeOq0brLotY7AfB/IsUrcetpHKpzKPK/3aO2DhH7SlW0k4gSX++aFGKcLy2Ge5nAsUe8B46sbeKwYLwheMqqCelqGjCuiBK6PjiRCga1hBhhbsA=;24:vNtzYfb85pLOeLUXSoakRuRKJQOCtpYmVwbzBZanVmW7TlSsBeQ8fkcveG1dhr/wTK9d94QNF1nfb8cp2AOXQKsz/4zGCCuGofBiruHgPTE=;7:bJ3dOD6M5PyiUmelUeeZke1gK1V5fhdGFZnnPGeWbS0u2bh1VYuXg86fL4PqWYqoFBjr8mM7Hc9po68C2Ff/0ABneGkiPjb5kMDvLpMOo1ibdz/FQV5VLu5UVi5MtMLJVxSfc2OgG7Q7LlJCVcUH6qhEqcVnJhSQ0xKi1kh8oMmGojSRAzyTqbeRYm8DWf7R2A7s7c30WzC76equEGFLLR1nL/GOHtkFA8JUIc3eAcOd2gfFlW+ZlfDLE1vP/U+8 x-ms-exchange-antispam-srfa-diagnostics: SSOS;SSOR; x-ms-office365-filtering-correlation-id: 99e62c04-11a6-41de-46fd-08d523231ffb x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(2017052603243)(49563074);SRVR:CY4PR07MB3207; x-ms-traffictypediagnostic: CY4PR07MB3207: x-exchange-antispam-report-test: UriScan:(9452136761055)(174360191007938)(788757137089)(42262312472803); x-microsoft-antispam-prvs: x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(102415395)(6040450)(2401047)(8121501046)(5005006)(100000703101)(100105400095)(3002001)(93006095)(93001095)(10201501046)(3231021)(6041248)(20161123555025)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123564025)(20161123558100)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:CY4PR07MB3207;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:CY4PR07MB3207; x-forefront-prvs: 048111149A x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(6009001)(346002)(39860400002)(376002)(51914003)(199003)(189002)(13464003)(99936001)(2950100002)(53936002)(7696004)(74316002)(2501003)(77096006)(305945005)(6636002)(7736002)(9686003)(53546010)(55016002)(2906002)(189998001)(101416001)(25786009)(102836003)(6436002)(66066001)(4326008)(99286004)(33656002)(6116002)(229853002)(3846002)(6506006)(8676002)(105586002)(106356001)(81156014)(81166006)(3660700001)(8936002)(3280700002)(76176999)(54356999)(50986999)(5660300001)(478600001)(2900100001)(72206003)(14454004)(97736004)(316002)(68736007)(110136005)(86362001)(6246003)(54906003)(921003)(1121003);DIR:OUT;SFP:1101;SCL:1;SRVR:CY4PR07MB3207;H:CY4PR07MB3176.namprd07.prod.outlook.com;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; received-spf: None (protection.outlook.com: unisys.com does not designate permitted sender hosts) spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg=SHA1; boundary="----=_NextPart_000_0000_01D354EA.6331B9C0" MIME-Version: 1.0 X-OriginatorOrg: unisys.com X-MS-Exchange-CrossTenant-Network-Message-Id: 99e62c04-11a6-41de-46fd-08d523231ffb X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Nov 2017 01:26:50.8619 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 8d894c2b-238f-490b-8dd1-d93898c5bf83 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR07MB3207 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org ------=_NextPart_000_0000_01D354EA.6331B9C0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit > -----Original Message----- > From: SF Markus Elfring [mailto:elfring@users.sourceforge.net] > Sent: Friday, November 3, 2017 3:50 PM > To: devel@driverdev.osuosl.org; *S-Par-Maintainer > ; Thompson, Bryan E. > ; Binder, David Anthony > ; Kershner, David A > ; Greg Kroah-Hartman > ; Sameer Wadgaonkar > ; Sell, Timothy C > > Cc: LKML ; kernel-janitors@vger.kernel.org > Subject: [PATCH] staging: unisys: visorchipset: Use common error handling > code in setup_crash_devices_work_queue() > > From: Markus Elfring > Date: Fri, 3 Nov 2017 20:37:03 +0100 > > * Add a jump target so that a specific error message is stored only once > at the end of this function implementation. > > * Replace four calls of the function "dev_err" by goto statements. > > This issue was detected by using the Coccinelle software. > > Signed-off-by: Markus Elfring Thanks for the catch! Acked-by: David Kershner > --- > drivers/staging/unisys/visorbus/visorchipset.c | 36 > ++++++++++++------------ > -- > 1 file changed, 16 insertions(+), 20 deletions(-) > > diff --git a/drivers/staging/unisys/visorbus/visorchipset.c > b/drivers/staging/unisys/visorbus/visorchipset.c > index fed554a43151..1d54821dd7b6 100644 > --- a/drivers/staging/unisys/visorbus/visorchipset.c > +++ b/drivers/staging/unisys/visorbus/visorchipset.c > @@ -1231,11 +1231,9 @@ static void > setup_crash_devices_work_queue(struct work_struct *work) > if (visorchannel_read(chipset_dev->controlvm_channel, > offsetof(struct visor_controlvm_channel, > saved_crash_message_count), > - &local_crash_msg_count, sizeof(u16)) < 0) { > - dev_err(&chipset_dev->acpi_device->dev, > - "failed to read channel\n"); > - return; > - } > + &local_crash_msg_count, sizeof(u16)) < 0) > + goto report_read_failure; > + > if (local_crash_msg_count != CONTROLVM_CRASHMSG_MAX) { > dev_err(&chipset_dev->acpi_device->dev, "invalid > count\n"); > return; > @@ -1244,30 +1242,24 @@ static void > setup_crash_devices_work_queue(struct work_struct *work) > if (visorchannel_read(chipset_dev->controlvm_channel, > offsetof(struct visor_controlvm_channel, > saved_crash_message_offset), > - &local_crash_msg_offset, sizeof(u32)) < 0) { > - dev_err(&chipset_dev->acpi_device->dev, > - "failed to read channel\n"); > - return; > - } > + &local_crash_msg_offset, sizeof(u32)) < 0) > + goto report_read_failure; > + > /* read create device message for storage bus offset */ > if (visorchannel_read(chipset_dev->controlvm_channel, > local_crash_msg_offset, > &local_crash_bus_msg, > - sizeof(struct controlvm_message)) < 0) { > - dev_err(&chipset_dev->acpi_device->dev, > - "failed to read channel\n"); > - return; > - } > + sizeof(struct controlvm_message)) < 0) > + goto report_read_failure; > + > /* read create device message for storage device */ > if (visorchannel_read(chipset_dev->controlvm_channel, > local_crash_msg_offset + > sizeof(struct controlvm_message), > &local_crash_dev_msg, > - sizeof(struct controlvm_message)) < 0) { > - dev_err(&chipset_dev->acpi_device->dev, > - "failed to read channel\n"); > - return; > - } > + sizeof(struct controlvm_message)) < 0) > + goto report_read_failure; > + > /* reuse IOVM create bus message */ > if (!local_crash_bus_msg.cmd.create_bus.channel_addr) { > dev_err(&chipset_dev->acpi_device->dev, > @@ -1282,6 +1274,10 @@ static void > setup_crash_devices_work_queue(struct work_struct *work) > return; > } > visorbus_device_create(&local_crash_dev_msg); > + return; > + > +report_read_failure: > + dev_err(&chipset_dev->acpi_device->dev, "failed to read > channel\n"); > } > > void visorbus_response(struct visor_device *bus_info, int response, > -- > 2.15.0 ------=_NextPart_000_0000_01D354EA.6331B9C0 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIa5TCCBJEw ggN5oAMCAQICBEVrUFQwDQYJKoZIhvcNAQEFBQAwgbAxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1F bnRydXN0LCBJbmMuMTkwNwYDVQQLEzB3d3cuZW50cnVzdC5uZXQvQ1BTIGlzIGluY29ycG9yYXRl ZCBieSByZWZlcmVuY2UxHzAdBgNVBAsTFihjKSAyMDA2IEVudHJ1c3QsIEluYy4xLTArBgNVBAMT JEVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNjExMjcyMDIzNDJaFw0y NjExMjcyMDUzNDJaMIGwMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNRW50cnVzdCwgSW5jLjE5MDcG A1UECxMwd3d3LmVudHJ1c3QubmV0L0NQUyBpcyBpbmNvcnBvcmF0ZWQgYnkgcmVmZXJlbmNlMR8w HQYDVQQLExYoYykgMjAwNiBFbnRydXN0LCBJbmMuMS0wKwYDVQQDEyRFbnRydXN0IFJvb3QgQ2Vy dGlmaWNhdGlvbiBBdXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC2lbZD QvrGbSpvSN+UTDlXBe7DeRFBaDbt7P6aAY+hOCj89xBGZi5NHhqxGk7G0cCViLDJ/zGLMwPbt4N7 PiCEXu2yViin+OC5QHE3xctHDpcqaMAilWIV20fZ9dAr/4JLya0+3kzbkIBQPwmKhADsMAo9GM37 /SpZmiOVFyxFnh9uQ3ltDFyY/kinxSNHXF79bucetPZoRdGGg1uiio2x4ymA/iVxiK2+vI+sUpZL qlGN5BMxGehOTZ/brLNq1bw5VHHKenp/kN19HYDZgbtZJsIR/uaT4veA5GX7NDcOKYBwTa84hi6e f1evnheu6xzLKCFfthzY56IEIvnT2tjLAgMBAAGjgbAwga0wDgYDVR0PAQH/BAQDAgEGMA8GA1Ud EwEB/wQFMAMBAf8wKwYDVR0QBCQwIoAPMjAwNjExMjcyMDIzNDJagQ8yMDI2MTEyNzIwNTM0Mlow HwYDVR0jBBgwFoAUaJDkZ6SmU4DHhmak8fdLQ/uEvW0wHQYDVR0OBBYEFGiQ5GekplOAx4ZmpPH3 S0P7hL1tMB0GCSqGSIb2fQdBAAQQMA4bCFY3LjE6NC4wAwIEkDANBgkqhkiG9w0BAQUFAAOCAQEA k9QwsNcDICrQ+WPokQwFIKlfGcp7ck7UsdvQlvtUWhksDAj3sryFqJ1/bTtSsyrb59SEjGP2D8sm AZFQbPRfFOKTdMATnjA6UOO0YMUc8CJEjXFHrMgayembmgBgE/9wfl8RTUkbsxVSe8lU2r+dla9r mtie6fHkQ43iEUQ6v6+9g0JzUouqu6cpz/VkHApN0byqrJ8q0P9/f9p96rHtMCXBhNo00lt4g1bs nDbDJuIR9mdJHZKrjPvr/3ruhUqnUIDwp1xKlC5fBZk8UkHgzbRjzwFDupyD3I9gO/NatLR7rtoL kDh174EdZtL3V3A2s7/8KK9xJYVbE/4ef1q0PDCCBMEwggOpoAMCAQICEBdGI7Zak26AAAAAAFHT V88wDQYJKoZIhvcNAQELBQAwgbAxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMu MTkwNwYDVQQLEzB3d3cuZW50cnVzdC5uZXQvQ1BTIGlzIGluY29ycG9yYXRlZCBieSByZWZlcmVu Y2UxHzAdBgNVBAsTFihjKSAyMDA2IEVudHJ1c3QsIEluYy4xLTArBgNVBAMTJEVudHJ1c3QgUm9v dCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0xNzA3MjcxNDA0MzZaFw0yMDA2MjcxNDM0MzZa MBYxFDASBgNVBAMTC1VJUy1JbnRCLUNBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA spaPdi+jVm4ka5yTdn1gxcnX6LQz9i5iHpmk3LJ8GkJJWgsgqDkjoCfA5yPZeFhjJSys+IYybYNQ d5dmkrT4kN9oDmdHAf+2+Sa3QKUXdgROfVh+SyFK9kOszX0o4FWTbTaTMrscyvHVDn6mNjqlQPtT C4KrrlI1/LX77K+0TlNkbmZw/OkQpE8DkPjatDUkuQ1uRAgqChpL4lwvsYG4LFDuL3NlNM2QwMuT nRnUl2PaKBGz5Dnqoh4uazjpSYjO574xbtQutLVhGYQ60H7d3Lcpiroq1IPArFyG+/VIYby2qfiE xEbmxh847pfLl9MtLezugEwqBzXIgaAeJYgwiQIDAQABo4IBbjCCAWowDgYDVR0PAQH/BAQDAgEG MBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMEMHsGA1Ud IAR0MHIwNgYKYIZIAYb6bAoBCDAoMCYGCCsGAQUFBwIBFhpodHRwOi8vd3d3LmVudHJ1c3QubmV0 L2NwczA4BglghkgBhv0wAQEwKzApBggrBgEFBQcCARYdaHR0cDovL3Vpc3BraS51bmlzeXMuY29t L3JlcC8wMwYIKwYBBQUHAQEEJzAlMCMGCCsGAQUFBzABhhdodHRwOi8vb2NzcC5lbnRydXN0Lm5l dDAzBgNVHR8ELDAqMCigJqAkhiJodHRwOi8vY3JsLmVudHJ1c3QubmV0L3Jvb3RjYTEuY3JsMB0G A1UdDgQWBBRyNwE2Pfhm1gOYTvX4AC6kJKp2IDAfBgNVHSMEGDAWgBRokORnpKZTgMeGZqTx90tD +4S9bTANBgkqhkiG9w0BAQsFAAOCAQEABi+dyj78GJjogJWWN4L67UGA7z46aaTOqQeU+XOALWI3 blWOlT13HUW4pP/N9Ce/BJBhs4KQqNmIAinfXrTs5o0SQCD5God4iw50dkDDzWE848I35JmvvaXf XFmXf/0FWX6gbGlqqFRSZlyhF6atNp9/mPQDGZ863ym/qgTxBQt75pfwINI4vsCZcIzLapLXQt7s cnXqvcw/s/54pBkbMeqsjjRy94Uy4T5WP8P8FN54PTSNkSIwrbLc+ETV4xbsY8DsX0jm71AgkHCs c6w7LwaF1JRxwFrZL25pLJM4pFbesyvpNmP4Te1es2gQ+Wh5F3CFC6tRq8TuZ3bV8RhDJzCCBRww ggQEoAMCAQICEzkAAUjRlzcsmk29w7wABgABSNEwDQYJKoZIhvcNAQELBQAwWTETMBEGCgmSJomT 8ixkARkWA2NvbTEWMBQGCgmSJomT8ixkARkWBnVuaXN5czETMBEGCgmSJomT8ixkARkWA3VpczEV MBMGA1UEAxMMVUlTLUlzdUIxLUNBMB4XDTE3MDMyNDEzMDA1M1oXDTE5MDMyNDEzMDA1M1owRjEa MBgGA1UEAxMRS2Vyc2huZXIsIERhdmlkIEExKDAmBgkqhkiG9w0BCQEWGURhdmlkLktlcnNobmVy QHVuaXN5cy5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvsXW2o3Tzswrs8zY0 KIbeXYXLgdytTWN8LLMygGFVEZQNjAgnBCm8P5sZs5RK4j4FiTFc/ADq4HlU9NxxJRQFUWbXL4+8 Jvq3O0WW4D4NE4LEInmyN4oQxy4/egwcXIowmzdSRLmUtNjOld8f1C2I1Qk4sixgVFxV1TZP/FEG VrneNmxhqQbZaujLi62YhSnQa8MqlfH7wkY7eNunoWQbSYveyfh4nL1DWOg2izbVa0hC1GE5Dluy e6kpBjjAldTwW6X2wuMofNaD0fN7u7eND2We8Ztn791oQBY+Vw4idE3iZYeYSheSWGEzfFqk2/Vd XinixrtrS7i38XqdDxoHAgMBAAGjggHuMIIB6jA+BgkrBgEEAYI3FQcEMTAvBicrBgEEAYI3FQiH hMIWg7a1KYOZmQiEjZYugauiJTG73t0ShI68kBMCAWQCARQwEwYDVR0lBAwwCgYIKwYBBQUHAwQw DgYDVR0PAQH/BAQDAgbAMEQGA1UdIAQ9MDswOQYKYIZIAYb9MAEBAjArMCkGCCsGAQUFBwIBFh1o dHRwOi8vdWlzcGtpLnVuaXN5cy5jb20vcmVwLzAbBgkrBgEEAYI3FQoEDjAMMAoGCCsGAQUFBwME MB0GA1UdDgQWBBRhUA1Liuc5hqCHZ0zMBcYDG2OaojAfBgNVHSMEGDAWgBReR8gw8UO/Ac86IwPA ngECA1h+YTBBBgNVHR8EOjA4MDagNKAyhjBodHRwOi8vdWlzcGtpLnVuaXN5cy5jb20vcmVwL1VJ Uy1Jc3VCMS1DQSg2KS5jcmwwdwYIKwYBBQUHAQEEazBpMDwGCCsGAQUFBzAChjBodHRwOi8vdWlz cGtpLnVuaXN5cy5jb20vcmVwL1VJUy1Jc3VCMS1DQSg2KS5jcnQwKQYIKwYBBQUHMAGGHWh0dHA6 Ly9wZWNzMS51bmlzeXMuY29tL29jc3AvMCQGA1UdEQQdMBuBGURhdmlkLktlcnNobmVyQHVuaXN5 cy5jb20wDQYJKoZIhvcNAQELBQADggEBAMmaJqA8swLbN/UrIEbs9D4TTHw/DTn9m+E9BME4aCOJ L2ghXjWBelXu1Ryy8KmSWesKHElfCm8sOt8encExhaU5bRm8P99gP2idpxG0MYYDmmJslBR4TDY5 egskiyJQeZ9DVh4wLG/gy3I8PwT1uc1GOatTHOReFbYERcbCHbNYnPp7GIXKLqdWRzL1mZcB2g7P VArDhI3NFOdmCkdGiITa7pO0LOLiXX1qUix0hSGS84QQYgKExwrDt2fuBALGsQi0Th5KTS6adjxg K1CiTmDIhlD3NABWCkNFqqUoIxl4sKmEJPUNujXXAlSev5+7xe1NOhp6FzJDumTmtRFuevEwggVj MIIES6ADAgECAhM5AAE4tzfd+TfZRiCsAAYAATi3MA0GCSqGSIb3DQEBCwUAMFkxEzARBgoJkiaJ k/IsZAEZFgNjb20xFjAUBgoJkiaJk/IsZAEZFgZ1bmlzeXMxEzARBgoJkiaJk/IsZAEZFgN1aXMx FTATBgNVBAMTDFVJUy1Jc3VCMS1DQTAeFw0xNzAzMjMxNzQ5MzlaFw0xOTAzMjMxNzQ5MzlaMEYx GjAYBgNVBAMTEUtlcnNobmVyLCBEYXZpZCBBMSgwJgYJKoZIhvcNAQkBFhlEYXZpZC5LZXJzaG5l ckB1bmlzeXMuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAjG+UFC7LQg/OkYFp mEXSdc4EL/TYfnBviw8p60rXlYyhQ3nfVF1kAFTbZoTsmMMd7qeB635GDunGVQBHELzOI/13as4l KTApjuIjrxagWtfTJIwYq2ME6wvM1h/Y3A532DCbR1G9NajRMkuWXbst2GqcSbvqHtu3BCXjHV5z wspgcy0bZfccRrFWG5n34CHAvx52FeK1jdRLQ5++h/Lyfk2UzarShCMlfWzqB3g1PKSFRA0GiRGv IMR8fB43XYF25OdsvcCiCeLC/SZqI8bezDMg6mXJO2sReLTT08rrSx/ZQybfPJUJMgdWWrSgueLm C7A+68U5/5IfbgI3jpTZfQIDAQABo4ICNTCCAjEwPwYJKwYBBAGCNxUHBDIwMAYoKwYBBAGCNxUI h4TCFoO2tSmDmZkIhI2WLoGroiUxjJDxyAmMkbLDUQIBZAIBDTATBgNVHSUEDDAKBggrBgEFBQcD BDAOBgNVHQ8BAf8EBAMCBDAwRAYDVR0gBD0wOzA5BgpghkgBhv0wAQEDMCswKQYIKwYBBQUHAgEW HWh0dHA6Ly91aXNwa2kudW5pc3lzLmNvbS9yZXAvMBsGCSsGAQQBgjcVCgQOMAwwCgYIKwYBBQUH AwQwRAYJKoZIhvcNAQkPBDcwNTAOBggqhkiG9w0DAgICAIAwDgYIKoZIhvcNAwQCAgCAMAcGBSsO AwIHMAoGCCqGSIb3DQMHMB0GA1UdDgQWBBSZ+FPI7g00UIYc/bFnCMHBJiBu/jAfBgNVHSMEGDAW gBReR8gw8UO/Ac86IwPAngECA1h+YTBBBgNVHR8EOjA4MDagNKAyhjBodHRwOi8vdWlzcGtpLnVu aXN5cy5jb20vcmVwL1VJUy1Jc3VCMS1DQSg2KS5jcmwwdwYIKwYBBQUHAQEEazBpMDwGCCsGAQUF BzAChjBodHRwOi8vdWlzcGtpLnVuaXN5cy5jb20vcmVwL1VJUy1Jc3VCMS1DQSg2KS5jcnQwKQYI KwYBBQUHMAGGHWh0dHA6Ly9wZWNzMS51bmlzeXMuY29tL29jc3AvMCQGA1UdEQQdMBuBGURhdmlk LktlcnNobmVyQHVuaXN5cy5jb20wDQYJKoZIhvcNAQELBQADggEBAL8zWWN9J1FxiaryLkKHfBqF GAYoetQCdRH8nKogMfCjIOVC7t5QzCECDCZsMrQngzXY6Dnu19+IF7hfG3uM2hiDE6AEvlgaMLmP lyCpLay9DIwSpB04RsQXYrhks8Pw6WSubVJL+q3XAwb00QCh5WEWVSTtuOeGMevMOzUamIw4GVzu OJiUUzGCf3XnoukIeZB48xaLpSIogOI30kjHZ10Cx4Gg8Uvdfd2ir2aXfCYeys7vEPgH8EoqqTa/ ouSwssmp07mrIIbOo1eLvBYstKUnTMkYMN107JERS50wCidCcNGSFbLHpPwKrpCDjtkAU81yoUtq Bmas8orCLoQCD10wggcAMIIF6KADAgECAgoQSGGkAAYAAAAYMA0GCSqGSIb3DQEBCwUAMBYxFDAS BgNVBAMTC1VJUy1JbnRCLUNBMB4XDTE1MTAxOTE3NTUzMloXDTIxMTAxOTE4MDUzMlowWTETMBEG CgmSJomT8ixkARkWA2NvbTEWMBQGCgmSJomT8ixkARkWBnVuaXN5czETMBEGCgmSJomT8ixkARkW A3VpczEVMBMGA1UEAxMMVUlTLUlzdUIxLUNBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEAzxZCmWWZPZnkBSMK2ALw+me532YzNjAaJ8Jl+0C1MP8XpiqmSYu7XzXG0hoJpSnQTftHtz/E j9T67yMl/KFgGtD+0fJgddgb+mUPOB4o2E0mFC0xMR5mm23plCGPVfdH1r+WEFYuAZpcHh6ke5y8 vy9TzChemi/YDKREw+7z+2R7oTwQ2/S8eDWRxuvrAN+4qqoAcgDMv4N2EvHXkeuV1P5D9H6aEhLg TkwvRCS2SSftXLQYMsvio1x5CLbag4fIHJ6uBR93DRUBj9wcTOe1POiDv+v6UkqaUnZ7SG96lnjp ZBup4srwdEJFFyqD5kq9Ux+IPPfRTR4hpE0kevoLhwIDAQABo4IECzCCBAcwDgYDVR0PAQH/BAQD AgGGMBIGCSsGAQQBgjcVAQQFAgMGAAYwIwYJKwYBBAGCNxUCBBYEFKwIWz4yX+iqzaNJt5hs96yY nEN7MB0GA1UdDgQWBBReR8gw8UO/Ac86IwPAngECA1h+YTCCAiAGA1UdIASCAhcwggITMDkGCmCG SAGG/TABAQcwKzApBggrBgEFBQcCARYdaHR0cDovL3Vpc3BraS51bmlzeXMuY29tL3JlcC8wOQYK YIZIAYb9MAEBPTArMCkGCCsGAQUFBwIBFh1odHRwOi8vdWlzcGtpLnVuaXN5cy5jb20vcmVwLzA5 BgpghkgBhv0wAQEDMCswKQYIKwYBBQUHAgEWHWh0dHA6Ly91aXNwa2kudW5pc3lzLmNvbS9yZXAv MDkGCmCGSAGG/TABAQIwKzApBggrBgEFBQcCARYdaHR0cDovL3Vpc3BraS51bmlzeXMuY29tL3Jl cC8wOQYKYIZIAYb9MAEBBDArMCkGCCsGAQUFBwIBFh1odHRwOi8vdWlzcGtpLnVuaXN5cy5jb20v cmVwLzA5BgpghkgBhv0wAQEFMCswKQYIKwYBBQUHAgEWHWh0dHA6Ly91aXNwa2kudW5pc3lzLmNv bS9yZXAvMDkGCmCGSAGG/TABAQ4wKzApBggrBgEFBQcCARYdaHR0cDovL3Vpc3BraS51bmlzeXMu Y29tL3JlcC8wOQYKYIZIAYb9MAEBATArMCkGCCsGAQUFBwIBFh1odHRwOi8vdWlzcGtpLnVuaXN5 cy5jb20vcmVwLzA5BgpghkgBhv0wAQEGMCswKQYIKwYBBQUHAgEWHWh0dHA6Ly91aXNwa2kudW5p c3lzLmNvbS9yZXAvMBkGCSsGAQQBgjcUAgQMHgoAUwB1AGIAQwBBMBIGA1UdEwEB/wQIMAYBAf8C AQAwHwYDVR0jBBgwFoAUcjcBNj34ZtYDmE71+AAupCSqdiAwcQYDVR0fBGowaDBmoGSgYoYvaHR0 cDovL3Vpc3BraS51bmlzeXMuY29tL3JlcC9VSVMtSW50Qi1DQSg2KS5jcmyGL2h0dHA6Ly9wa2ly ZXAudW5pc3lzLmNvbS9yZXAvVUlTLUludEItQ0EoNikuY3JsMIG1BggrBgEFBQcBAQSBqDCBpTA7 BggrBgEFBQcwAoYvaHR0cDovL3Vpc3BraS51bmlzeXMuY29tL3JlcC9VSVMtSW50Qi1DQSg2KS5j cnQwOwYIKwYBBQUHMAKGL2h0dHA6Ly9wa2lyZXAudW5pc3lzLmNvbS9yZXAvVUlTLUludEItQ0Eo NikuY3J0MCkGCCsGAQUFBzABhh1odHRwOi8vcGVjczEudW5pc3lzLmNvbS9vY3NwLzANBgkqhkiG 9w0BAQsFAAOCAQEAVnYItqwJLH0Vg4aQZWxCNSNqsOz2wd0sIbT+/5NIoeM+owWFaVdNU/aNZZyj tRSfJt+hJELd3ZYb9sHUQnyZCfvNaaB2wVDPnTOUmkvWVoiiGx8sbHpuETiIkIqGB3xFGOtB3XdO t00L18sCGGpuMGuNFYDW7GAPexeu7uUOuW7BkjvBcJnh1xIjS97R6gG7av4hkoK39YUQwZvU3HAg of7JCf9x4zObylzY/++ojSgt8R6/L6khADxL3huB2F+ep7Qxj29s5GhyVwT96oH39CPk6JNeXrpn IpUD3Wq1CJtj4NOm9Gg9X/kri8RvDBqS1l+dOBSboxlp9GMYxo891TGCA5MwggOPAgEBMHAwWTET MBEGCgmSJomT8ixkARkWA2NvbTEWMBQGCgmSJomT8ixkARkWBnVuaXN5czETMBEGCgmSJomT8ixk ARkWA3VpczEVMBMGA1UEAxMMVUlTLUlzdUIxLUNBAhM5AAFI0Zc3LJpNvcO8AAYAAUjRMAkGBSsO AwIaBQCgggH4MBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTE3MTEw NDAxMjYxOFowIwYJKoZIhvcNAQkEMRYEFAQGhox9acHU7HI3O2aLHrv8165MMH8GCSsGAQQBgjcQ BDFyMHAwWTETMBEGCgmSJomT8ixkARkWA2NvbTEWMBQGCgmSJomT8ixkARkWBnVuaXN5czETMBEG CgmSJomT8ixkARkWA3VpczEVMBMGA1UEAxMMVUlTLUlzdUIxLUNBAhM5AAE4tzfd+TfZRiCsAAYA ATi3MIGBBgsqhkiG9w0BCRACCzFyoHAwWTETMBEGCgmSJomT8ixkARkWA2NvbTEWMBQGCgmSJomT 8ixkARkWBnVuaXN5czETMBEGCgmSJomT8ixkARkWA3VpczEVMBMGA1UEAxMMVUlTLUlzdUIxLUNB AhM5AAE4tzfd+TfZRiCsAAYAATi3MIGTBgkqhkiG9w0BCQ8xgYUwgYIwCwYJYIZIAWUDBAEqMAsG CWCGSAFlAwQBFjAKBggqhkiG9w0DBzALBglghkgBZQMEAQIwDgYIKoZIhvcNAwICAgCAMA0GCCqG SIb3DQMCAgFAMAcGBSsOAwIaMAsGCWCGSAFlAwQCAzALBglghkgBZQMEAgIwCwYJYIZIAWUDBAIB MA0GCSqGSIb3DQEBAQUABIIBAKnN5o3vlleY2SaNW+LmQVLP88W56xE7knhEYFUUriaXpa41yTJI EqqY2RvHJ6p6W7ZyIcKb6kzbTJNzzXmziccpg+2zGDDfn7qqAC6FQAMkhXF6sBvqigqKUN/HBhXQ WgEmWou+5TxfCR/qEnRu6Es1xVVGvSVahARLbAU79Ks3Ul5JItK20wc3z2/C7dotYnT7VMm5Vknp VIrzZFYpatOK8BaRttQAEdahh2Y/U36T9eBX1ahtLYVJ43AX2HBMDt1ksnzSOolhQJNrcZagrGMT wtKhm4olNQ9pFIfP//d80e81wVjjqqxz+hX+efdRnCuu447Ugr7VywGeNJIaY/oAAAAAAAA= ------=_NextPart_000_0000_01D354EA.6331B9C0-- From 1583075740295981236@xxx Fri Nov 03 19:51:14 +0000 2017 X-GM-THRID: 1583075740295981236 X-Gmail-Labels: Inbox,Category Forums,HistoricalUnread