From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.1 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 274F8C4743C for ; Mon, 21 Jun 2021 16:14:04 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id EB2C261164 for ; Mon, 21 Jun 2021 16:14:03 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org EB2C261164 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:In-Reply-To:References: Message-ID:Date:Subject:CC:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=4S9soAeKxe+enN38gajYqXwAbejZk1aIspNYbaK9HUw=; b=HbHrKXQSZ/c8gd 0yUscMtiQHbzLfm9L/k1WVoGZqy2oY2RtVywp00hDr7b3EiTQQ+QB5NmqXsNuJTaR4WMGVOcbP1iM 3ywcnsbnRpwNnznETgLih+2WW6FdyCwm35EEPkvFmTZsx4JlKi7NQh7V2CxGV/ULN89xNrMk+3s58 K7Qs6zSVycvzYZ7TYWzeWOVU2nGoKV9VkkXrygCjNFrLf0D6JPgnCx/d1Ul/3Ab4UJXKuyY3z0uID G/FyFHctE33y8JXmKG5hCbBR21Ij/zoVqvwVDSig6A+5mAuJoIZlj9l9f0FbKrW3k6qJi6PeIC38l Gf7MVdeIrBARWX2kTDMQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1lvMWu-0042sX-Cc; Mon, 21 Jun 2021 16:12:08 +0000 Received: from mail-db8eur05on2043.outbound.protection.outlook.com ([40.107.20.43] helo=EUR05-DB8-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1lvMWo-0042qN-Mt for linux-arm-kernel@lists.infradead.org; Mon, 21 Jun 2021 16:12:05 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=A96/GD7jVW113Qqkg08+E582weuJCCTJNtp7EUViGgOCx9dudReXiTp0t2ESvAG4oc+z/7oF2HTx2AecoQZn0RMwt8Yyw3btqR05GLZQ+X9ipG8U1OphmAayf4ucgFQEgGkmZtTe9cda91zT87xNDyoU1f5ID6pyaAt2glPCeWDYotAy7cwGCEuw7a8TcwGEKtBCyb3YeQ1PrrowO9bjnO/by8/qyFZsXJfgCUwHS/zA3nsfy0l8kHBAUIAUBaE6Oa7J9zJIZJdHdaC8VS2xTM9JzAa36yC+nwzMn9aSnISwkKnS2r1lUAaHDV1rHeGv/pcq928OOltbs4POclTNcw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZQYWviMqMGZ9uFJ1Rem788+vBUuXgHenZ6hhMDiEx+M=; b=ONHm1kQzAfIIDkHsUhKvIYN4dalPxtoUov0IgH9oFxpnadE7QThhOuXZTsmjj79Y6m9S/0fhlDWSGEGS7vGUnQV0YSkgoVj6rA5clopvPH0JqeBJSn/nvJF/06KxI25GhUamfopqhPnupTC4kcodb7elkUVGew/WxQw1VMCi8jn+hJNVziRVdW+wCrcZ/X8DuB6CPwKlqyRw5pkNdk5KD1BqXU0kqZ4rLgvmzjp9as67aDf20W3WQeWHjBcdCVpbQRzIv1J69eUxX2K9DnPxgNRyOqL07k2XiVzkwFEtfPebXLc+726KlXhij4YONEuj7GY/EL0OC0N5Pxrvp440KA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZQYWviMqMGZ9uFJ1Rem788+vBUuXgHenZ6hhMDiEx+M=; b=oM0kUgI3Dr95pxslKOLbIhElmPIQRbqsMV3vSqkdHwLPHQG3t22RW8DdaxqPZ2/NmupjdbVuK3rk2DFJbOfd8h6MsJn4VMnBxOrSslzZ2h025UivlXdh6APFJod7aX15TWzswUW4rhojBrQYmrIm9qwDVBBb+jQvy/EmeNw4Hjg= Received: from AS8PR04MB8500.eurprd04.prod.outlook.com (2603:10a6:20b:343::14) by AS8PR04MB8994.eurprd04.prod.outlook.com (2603:10a6:20b:42d::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.21; Mon, 21 Jun 2021 16:11:58 +0000 Received: from AS8PR04MB8500.eurprd04.prod.outlook.com ([fe80::2ca8:978f:5800:3e9a]) by AS8PR04MB8500.eurprd04.prod.outlook.com ([fe80::2ca8:978f:5800:3e9a%7]) with mapi id 15.20.4242.023; Mon, 21 Jun 2021 16:11:58 +0000 From: Frank Li To: Will Deacon CC: Catalin Marinas , Zhi Li , Shenwei Wang , Han Xu , Nitin Garg , Jason Liu , "linux-arm-kernel@lists.infradead.org" Subject: RE: [EXT] Re: The problem about arm64: io: Relax implicit barriers in default I/O accessors Thread-Topic: [EXT] Re: The problem about arm64: io: Relax implicit barriers in default I/O accessors Thread-Index: Addi4iZxCs/FNCdNS+mEtJE2ixnUpwAAxl6AAB1xwAAAEK9FAAAAj6YAAATT00AAA4IFAAC9jG0A Date: Mon, 21 Jun 2021 16:11:57 +0000 Message-ID: References: <20210617092744.GB6314@arm.com> <20210617172528.GA24813@willie-the-truck> <20210617174131.GC24813@willie-the-truck> <20210617214012.GA25403@willie-the-truck> In-Reply-To: <20210617214012.GA25403@willie-the-truck> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: kernel.org; dkim=none (message not signed) header.d=none;kernel.org; dmarc=none action=none header.from=nxp.com; x-originating-ip: [72.177.87.193] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c3cdf3ec-de4f-48a3-88b7-08d934cf4b9c x-ms-traffictypediagnostic: AS8PR04MB8994: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: pr0Urc+RglvyXviNCE2+SsUP5Cn7exRJYYvQXb6A1Zket3vhNC3ov88mhzqZbnWoY06pJdhG7tBQg0SZxGqorKCANSao2ztV+h6ZBPFZyZtXfIkC5Ddn5Phvc1p/UDbKBWiSP/lKaHsN0ss69jhE2naahDULHoq/hN0z4yUqAH0jusOA0Ngm2CFEEPKPf5622bFMRTZcCXbsrKBK60UzY1milbwH/InmU3xv9mMYRhxXU1G2dYWLJxdScwst24WGAx27H8luwImhtdoKRfGpdE+v8Zpnsa5hrKkPbLDlYPtNNdRHUZW7EOvTHvYbOJWSg5/KeEFqRQUWdN7RhccMgFr9VxUFG+F0zP0CVpD9eMBJFG6gNq0KC0iFNL8ATpDPo8TmPHc4cm60n+rER3/REzDRur/hVPTLZU5SeDDmb7YUgLFHSSFiHAHbbK/94YrZfK8+FSzzPoycx3w72zY17ObpOEb4yRzKe50LY7hpiDqBgpgU6f6YsFdQZy3M9er8696d9YjmyzhlPsyrYcAbaLnNfGdR3qgjDxBPeOCyxh8gqQODAUnMpwFuER7Ftcnhsb6YkfgxZK0CJzeDFWZIJCEW/gC77ob3z29hOUjXyZK3dvGEAbhx6lVOdKa3MfdDT+enemvxOhwIP3dMRz0xf6/r0J6NG20WxFo/Sa+Wj4fxSf2OU7FZsCKn7Y3yq36skF06HOHRA5vpTEL3P3JtgJ6Z2o55grLXZ/i9mbHkiTdYhRazThEL5VdI+hbqenFQTB4NHB5eNW8P2fWFlBFBBA== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS8PR04MB8500.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(136003)(376002)(366004)(39860400002)(346002)(396003)(6506007)(53546011)(38100700002)(83380400001)(122000001)(9686003)(64756008)(66556008)(71200400001)(86362001)(66476007)(6916009)(26005)(66446008)(5660300002)(66946007)(8676002)(76116006)(966005)(4326008)(186003)(478600001)(55016002)(44832011)(8936002)(7696005)(316002)(2906002)(52536014)(54906003)(45080400002)(33656002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?U2ZLTEI1NHE3VkFDRCtnTkwvR0Z1M01obDBtT3UxbGQrZkw5WkN1UEdQM3Bw?= =?utf-8?B?ZFo5bnJObWJyNmc3ZDRGc0V5QmYvdVM2djgySi9Cc09hNnJkNEdOdTV4Tkt5?= =?utf-8?B?Q3F3Q3dqa3c0czR3MU9GUWxKT0RUaW1oSDJtallJVHB0ckdFWmg1L1IvUGJL?= =?utf-8?B?ZVhucWQxdGxRS1doLzdMVXRDNFNHMnNkK0xTc0ljM2hOc25LbkRtSkhCZkpa?= =?utf-8?B?KytPRS9GZDNzUHdoYVlzcExRa1gvcG0xTHV1QUZVbzBnV1dNM09ZSEl5R3J1?= =?utf-8?B?MzVYK1cveHA5SEQvSVBoNmF3U2JISks2cG5sUW9jU1J2R01ON0lHU0Z1RjEv?= =?utf-8?B?Y1BVRU9MbytpdE0wOWpVNHdoSHhodDlZQ0RCRUE3SE5vWmIwMGRUYmc2Y28r?= =?utf-8?B?eG9MSVFSS3AxSDdZZ1V3bXpYUmNCWlQ0SGNCOVhzYkVKVTBIK3RXdkc0djJ2?= =?utf-8?B?NHdyZ05wajFaQTI5MWtZL2tlL2k2bjZrS2RKMlNLZEFtUnM2eE8wU0NjMDhB?= =?utf-8?B?dFlmSGxDZGRUU1l3VExYbE90Ry9kZ0lkZDdjWlVRSGovUkhnSW9CUGVqSmtD?= =?utf-8?B?cTN0cXJYdEV0dzdqL254dTI2M3RYbkdqYWd5aGN5MlZFay9FTElPVU1kdDhq?= =?utf-8?B?WHM0MDA2Q3FDSE4zYWpJdlBQWnQ5dUxJR1JTRG5DUDcyaXF6RVVPMVJ2TCtX?= =?utf-8?B?WlY0MDNuZjlRNk1HOTBvYXJTWGhVdjlGUlR6cGl4UkM4MGl5Z1hITDFxSHdh?= =?utf-8?B?UVhoalBmZlZmZ0E0Z2JmN0k0TXlYWVBPMEtNTGVWNFlJaU5oRVFoWlpoSlZH?= =?utf-8?B?eC9qRStQUkdDOUVkK0ZEY0xIdDAxa2RvR25McDByOGJlUVdzK2tFOFBEamta?= =?utf-8?B?NjVaYlhJc1BkZ3VUM3dIcXlsRk50dlk3RzFzWE9ZbkovVGJ5N0I4azk3UXk1?= =?utf-8?B?NkFuWmxWR1JscTdNK1NLVUVGSWlsS2M4YWtXQklwNEcrVm9LREVET1NRa2dO?= =?utf-8?B?YnN5R29lU01qMjNLYXd2SGFFbHRvY29FMGdQT0FOd0R0RkpKK2hweWp5LzFE?= =?utf-8?B?V3hYRXdQNWFuQ1RtcHl0VUNKSkFHeEtMbEdFWFJpQUdnRzJHcnhwUERVN0VB?= =?utf-8?B?Y1QwV1NlQVFOdmp0SlVVTWNSM1p3QzAweFBZUUhNQzZ1YXdQeEwxVVBRamc0?= =?utf-8?B?ZDlacGtJcVl0amVKNzNyVmtLUDl5YjMxMXYreWFRYkZGVWFhdEQxNlRWdmJy?= =?utf-8?B?S0NvY1ZhMDNURFFxUytQUnF4S244Qys5MlZ2ZzZzZEVCc2wxY1lHcXhBaG5J?= =?utf-8?B?M0REbHJjMWpZRWhTajI5djI2ODVHR1hmM1hCakxYaWdqVEJrb2lMdmFnMGha?= =?utf-8?B?dWdrZVdLR1BnWEc4SUpjUm9yNHV3K012ZUJpZEp6VndtMldXRmxzb0g3ZTRI?= =?utf-8?B?N29KU0k2eVo5Mlh5KzNqUG1zZ2Y3OEQrK3BWcTlXSEtFdHVCQUl6U2Naa3Ju?= =?utf-8?B?Wk53cUEvMGZ0VkNaR2FNV3VKT1dwdUFVYzc0NXoxU21xVytvM1E5aXRZYTZn?= =?utf-8?B?ZXpCWnpIQmhGQ3pvSVYrTGlpY0U5VDl4dXNIcGNVU2FJYjhybXhvWElZV1VF?= =?utf-8?B?aHRqZjQrWWtsOTg1N3M1NU53ayt6aXhJei9YZUNzTXFUbHQwczNDeXI4ODFi?= =?utf-8?B?RmpxbGJ3V2E2S294M01lcFFKbUloTzRmRVZFalkzTmNGYXNoK212cC92NFV4?= =?utf-8?Q?CrO6IBI6jwlupx+gLhgMfQgFmNgU3Ur9D4qqlFJ?= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8500.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c3cdf3ec-de4f-48a3-88b7-08d934cf4b9c X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Jun 2021 16:11:57.9691 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: sFDlDXieYZocTGIzUMjj0Dn18rF8IiHqWvatlieqWMvYhDJtRsIZ7l75b9bDSHLD4tW7xq/vtLFaGxQm9j/Jww== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8994 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210621_091203_027640_4F767CA9 X-CRM114-Status: GOOD ( 31.68 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogV2lsbCBEZWFjb24gPHdp bGxAa2VybmVsLm9yZz4NCj4gU2VudDogVGh1cnNkYXksIEp1bmUgMTcsIDIwMjEgNDo0MCBQTQ0K PiBUbzogRnJhbmsgTGkgPGZyYW5rLmxpQG54cC5jb20+DQo+IENjOiBDYXRhbGluIE1hcmluYXMg PGNhdGFsaW4ubWFyaW5hc0Bhcm0uY29tPjsgWmhpIExpIDxsem51YWFAZ21haWwuY29tPjsNCj4g U2hlbndlaSBXYW5nIDxzaGVud2VpLndhbmdAbnhwLmNvbT47IEhhbiBYdSA8aGFuLnh1QG54cC5j b20+OyBOaXRpbiBHYXJnDQo+IDxuaXRpbi5nYXJnQG54cC5jb20+OyBKYXNvbiBMaXUgPGphc29u Lmh1aS5saXVAbnhwLmNvbT47IGxpbnV4LWFybS0NCj4ga2VybmVsQGxpc3RzLmluZnJhZGVhZC5v cmcNCj4gU3ViamVjdDogUmU6IFtFWFRdIFJlOiBUaGUgcHJvYmxlbSBhYm91dCBhcm02NDogaW86 IFJlbGF4IGltcGxpY2l0IGJhcnJpZXJzDQo+IGluIGRlZmF1bHQgSS9PIGFjY2Vzc29ycw0KPiAN Cj4gQ2F1dGlvbjogRVhUIEVtYWlsDQo+IA0KPiBPbiBUaHUsIEp1biAxNywgMjAyMSBhdCAwODox MTo1MFBNICswMDAwLCBGcmFuayBMaSB3cm90ZToNCj4gPg0KPiA+DQo+ID4gPiAtLS0tLU9yaWdp bmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gRnJvbTogV2lsbCBEZWFjb24gPHdpbGxAa2VybmVsLm9y Zz4NCj4gPiA+IFNlbnQ6IFRodXJzZGF5LCBKdW5lIDE3LCAyMDIxIDEyOjQyIFBNDQo+ID4gPiBU bzogQ2F0YWxpbiBNYXJpbmFzIDxjYXRhbGluLm1hcmluYXNAYXJtLmNvbT4NCj4gPiA+IENjOiBa aGkgTGkgPGx6bnVhYUBnbWFpbC5jb20+OyBGcmFuayBMaSA8ZnJhbmsubGlAbnhwLmNvbT47IFNo ZW53ZWkNCj4gV2FuZw0KPiA+ID4gPHNoZW53ZWkud2FuZ0BueHAuY29tPjsgSGFuIFh1IDxoYW4u eHVAbnhwLmNvbT47IE5pdGluIEdhcmcNCj4gPiA+IDxuaXRpbi5nYXJnQG54cC5jb20+OyBKYXNv biBMaXUgPGphc29uLmh1aS5saXVAbnhwLmNvbT47IGxpbnV4LWFybS0NCj4gPiA+IGtlcm5lbEBs aXN0cy5pbmZyYWRlYWQub3JnDQo+ID4gPiBTdWJqZWN0OiBbRVhUXSBSZTogVGhlIHByb2JsZW0g YWJvdXQgYXJtNjQ6IGlvOiBSZWxheCBpbXBsaWNpdCBiYXJyaWVycw0KPiBpbg0KPiA+ID4gZGVm YXVsdCBJL08gYWNjZXNzb3JzDQo+ID4gPg0KPiA+ID4gQ2F1dGlvbjogRVhUIEVtYWlsDQo+ID4g Pg0KPiA+ID4gT24gVGh1LCBKdW4gMTcsIDIwMjEgYXQgMDY6MjU6MjhQTSArMDEwMCwgV2lsbCBE ZWFjb24gd3JvdGU6DQo+ID4gPiA+IE9uIFRodSwgSnVuIDE3LCAyMDIxIGF0IDEwOjI3OjQ0QU0g KzAxMDAsIENhdGFsaW4gTWFyaW5hcyB3cm90ZToNCj4gPiA+ID4gPiBPbiBXZWQsIEp1biAxNiwg MjAyMSBhdCAwMjoyNDozOVBNIC0wNTAwLCBaaGkgTGkgd3JvdGU6DQo+ID4gPiA+ID4gPiBPbiBX ZWQsIEp1biAxNiwgMjAyMSBhdCAyOjE4IFBNIEZyYW5rIExpIDxmcmFuay5saUBueHAuY29tPiB3 cm90ZToNCj4gPiA+ID4gPiA+ID4gV2lsbCBEZWFjb24gd3JvdGU6DQo+ID4gPiA+ID4gPiA+ID4g SXQgd291bGQgYWxzbyBiZSBoZWxwZnVsIHRvIGtub3cgYSBiaXQgbW9yZSBhYm91dCB0aGUNCj4g aGFyZHdhcmU6DQo+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiAgIC0gV2hhdCBpcyB0 aGUgImludGVybmFsIGJ1cyBmYWJyaWMiPw0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gTG9v ayBsaWtlIEFSTSBjYWxsIGFzICJJbnRlcmNvbm5lY3QiLCAgTXVsdGkgQVhJIG1hc3RlciBhbmQN Cj4gbXVsdGkNCj4gPiA+IEFYSSBzbGF2ZQ0KPiA+ID4gPiA+ID4gPiBjb25uZWN0ZWQgdG9nZXRo ZXIuDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gSSAgZHJhd2VkIHNpbXBsaWZpZWQgYnVzIHN0 cnVjdHVyZS4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiAgICAgICAgIOKUjOKUgOKUgOKUgOKU gOKUgOKUgOKUkCDilIzilIDilIDilIDilIDilJANCj4gPiA+ID4gPiA+ICAgICAgICAg4pSCIEE1 MyAg4pSCIOKUgkE3MiDilIINCj4gPiA+ID4gPiA+ICAgICAgICAg4pSU4pSA4pSA4pSA4pSs4pSA 4pSA4pSYIOKUlOKUgOKUrOKUgOKUgOKUmA0KPiA+ID4gPiA+ID4gICAgICAgICAgICAg4pSCICAg ICAg4pSCDQo+ID4gPiA+ID4gPiAgICAgICAgIOKUjOKUgOKUgOKUgOKWvOKUgOKUgOKUgOKUgOKU gOKUgOKWvOKUgOKUgOKUkA0KPiA+ID4gPiA+ID4gICAgICAgICDilIIgICAgQ0NJNDAwICAg4pSC DQo+ID4gPiA+ID4gPiAgICAgICAgIOKUlOKUgOKUgOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUgOKU gOKUgOKUgOKUmA0KPiA+ID4gPiA+ID4gICAgICAgICAgICAgICDilIIgICAxIChhKXdyaXRlIHRv IGRkciAobm9ybWFsIHVuY2FjaGVkIG1lbW9yeSkNCj4gPiA+ID4gPiA+ICAgICAgICAgICAgICAg 4pSCICAgRE1CIE9TSFNUDQo+ID4gPiA+ID4gPiAgICAgICAgICAgICAgIOKUgiAgIDIgKGIpd3Jp dGUgdG8gdXNiIHJlZ2lzdGVyKGRldmljZSwgbkduUkUpDQo+ID4gPiA+ID4gPiAgICAgICAgIOKU jOKUgOKUgOKUgOKUgOKUgOKWvOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkA0KPiDilIwNCj4gPiA+IOKUgOKUgOKU gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkA0KPiA+ID4gPiA+ID4gICAgICAgICDilIIgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIOKXhOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUpCAgIEdQ VQ0KPiDilIINCj4gPiA+ID4gPiA+ICAgICAgICAg4pSCICAgICBCdXMgZmFicmljICAgICAgICAg ICAgICDilIIgICAgICAg4pSCICAgICAgICAgICDilIINCj4gPiA+ID4gPiA+ICAgICAgICAg4pSU 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSs4pSYDQo+IOKUlA0KPiA+ID4g4pSA4pSA4pSA 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSYDQo+ID4gPiA+ID4gPiAzIChiKSByZWFjaCB1c2Ig ICDilrIgNCB1c2IgcmVhZCAgIOKWsiAgIOKUgiA2LihhKXJlYWNoDQo+ID4gPiA+ID4gPiAgICAg ICAgICDilIIgICAgICAgIOKUgiAgIGRkciAgICAgICAg4pSCICAg4pSCDQo+ID4gPiA+ID4gPiAg ICAgICDilIzilIDilIDilrzilIDilIDilIDilIDilIDilIDilIDilIDilLTilIDilJAgICAgICAg ICAgICDilIIgICDilIINCj4gPiA+ID4gPiA+ICAgICAgIOKUgiAgICAgICAgICAgICDilIIgICAg ICAgICAgICDilIIgICDilIINCj4gPiA+ID4gPiA+ICAgICAgIOKUgiAgVVNCICAgICAgICDilIIg ICAgICA1LnVzYiDilIIgICDilIINCj4gPiA+ID4gPiA+ICAgICAgIOKUgiAgICAgICAgICAgICDi lIIgICAgICByZWFkICDilIIgICDilIINCj4gPiA+ID4gPiA+ICAgICAgIOKUlOKUgOKUgOKUgOKU gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmCAgICAgICAgICAgIOKUgiAgIOKUgg0KPiA+ ID4gPiA+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOKUjOKUgOKUtOKUgOKUgOKU gOKWvOKUgOKUkA0KPiA+ID4gPiA+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOKU giAgICAgICDilIINCj4gPiA+ID4gPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDi lIIgRERSICAg4pSCDQo+ID4gPiA+ID4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg 4pSCICAgICAgIOKUgg0KPiA+ID4gPiA+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IOKUlOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gU2luY2Ug eW91IHNlbnQgYW4gSFRNTCBtZXNzYWdlLCBpdCB3YXMgcmVqZWN0ZWQgYnkgdGhlIGxpc3Qgc2Vy dmVyLg0KPiBUaGUNCj4gPiA+ID4gPiBhYm92ZSBpcyBhIHBsYWluLXRleHQgcmVuZGl0aW9uIGJ5 IHczbSAoYW5kIGNoYW5nZWQgYmFycmllcigpIHRvDQo+IERNQg0KPiA+ID4gPiA+IE9TSFNUKS4N Cj4gPiA+ID4gPg0KPiA+ID4gPiA+IElzIHRoZSBETUIgcHJvcGFnYXRlZCB0byB0aGUgYnVzIGZh YnJpYz8gSUlVQywgb3VyIGxvZ2ljIGlzIHRoYXQgaWYNCj4gdGhlDQo+ID4gPiA+ID4gd3JpdGUg KGIpIHRvIFVTQiBpcyBvYnNlcnZhYmxlIGJ5LCBsZXQncyBzYXksIHRoZSBHUFUsIHRoZSBzYW1l IEdQVQ0KPiA+ID4gPiA+IHNob3VsZCBhbHNvIG9ic2VydmUgdGhlIHdyaXRlIChhKSB0byBERFIu IFNpbmNlIHRoZSB3cml0ZSAoYSkgdG8NCj4gRERSIGlzDQo+ID4gPiA+ID4gZ2xvYmFsbHkgb2Jz ZXJ2YWJsZSwgdGhlIFVTQiBkZXZpY2UgcmVhZCBhdCAoNCkgc2hvdWxkIGFsc28gb2JzZXJ2ZQ0K PiBpdA0KPiA+ID4gPiA+ICh3ZWxsLCB3ZSBtYXkgYmUgd3JvbmcpLg0KPiA+ID4gPg0KPiA+ID4g PiBJdCdzIHByZXR0eSByYXJlIGZvciBiYXJyaWVycyB0byBwcm9wYWdhdGUgb250byB0aGUgZmFi cmljIC0tIHVzdWFsbHkNCj4gdGhlDQo+ID4gPiA+IENQVSBqdXN0IG9yZGVycyBldmVyeXRoaW5n IGJhc2VkIG9uIGFja25vd2xlZGdlbWVudHMuIElmIHRoZSBDQ0kNCj4gZ2l2ZXMNCj4gPiA+IHRo ZQ0KPiA+ID4gPiB3cml0ZSByZXNwb25zZSBmb3IgdGhlIG5vbi1jYWNoZWFibGUgd3JpdGUgSSBj b3VsZCBzZWUgdGhhdCBjYXVzaW5nDQo+IGFuDQo+ID4gPiBpc3N1ZQ0KPiA+ID4gPiBpZiB0aGUg YnVzIGZhYnJpYyBjYW4gdGhlbiByZW9yZGVyIGFjY2Vzc2VzLCBidXQgdGhlbiBJIHdvdWxkIGFy Z3VlDQo+ID4gPiB0aGF0J3MgYQ0KPiA+ID4gPiBicm9rZW4gc3lzdGVtIGJlY2F1c2Ugc2ltcGxl IHJpbmcgYnVmZmVycyBpbiBub24tY2FjaGVhYmxlIG1lbW9yeQ0KPiB3b3VsZA0KPiA+ID4gZmFp bA0KPiA+DQo+ID4gQnVzIGZhYnJpYyBkb24ndCByZW9yZGVyIHRoZSBzYW1lIGF4aSBtYXN0ZXIu DQo+ID4NCj4gaHR0cHM6Ly9ldXIwMS5zYWZlbGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNvbS8/ dXJsPWh0dHBzJTNBJTJGJTJGZWxpbnV4Lm9yDQo+IGclMkZpbWFnZXMlMkY3JTJGNzMlMkZEZWFj b24td2Vhay10by0NCj4gd2VlZHkucGRmJmFtcDtkYXRhPTA0JTdDMDElN0NmcmFuay5saSU0MG54 cC5jb20lN0M1ZTZiNjY5MGQ1MmQ0ZTMxZDNhNDA4ZDkzDQo+IDFkODgxMDUlN0M2ODZlYTFkM2Jj MmI0YzZmYTkyY2Q5OWM1YzMwMTYzNSU3QzAlN0MxJTdDNjM3NTk1NjI4MjExODgyNDE2JTdDVQ0K PiBua25vd24lN0NUV0ZwYkdac2IzZDhleUpXSWpvaU1DNHdMakF3TURBaUxDSlFJam9pVjJsdU16 SWlMQ0pCVGlJNklrMWhhV3dpTEMNCj4gSlhWQ0k2TW4wJTNEJTdDMTAwMCZhbXA7c2RhdGE9JTJC RXUxMG5tRlZFMXczZkJQMTFyWEQ4V2sxdlZjdllMaXJqWlFFaFNJS0NNDQo+ICUzRCZhbXA7cmVz ZXJ2ZWQ9MA0KPiA+IFBhZ2UgNDIgc2hvdyByYWNlIGNvbmRpdGlvbi4gSSB0aGluayBhYm92ZSBy YWNlIGNvbmRpdGlvbiBoYXBwZW4gYXQgb3VyDQo+IHN5c3RlbS4NCj4gPiBJIGFtIG5vdCBzdXJl IGlmIGl0IGlzIGV4aXN0IGF0IEFybXY4IHN5c3RlbS4NCj4gDQo+IEp1c3QgYSB3b3JkIG9mIHdh cm5pbmcgaGVyZSwgYnV0IHRoZSBBcm12OCBtZW1vcnkgbW9kZWwgd2FzDQo+ICpyZXRyb3NwZWN0 aXZlbHkqIHN0cmVuZ3RoZW5lZCBzaW5jZSBJIGdhdmUgdGhhdCB0YWxrLCBzbyB0aGUgc3R1ZmYg aW4gdGhhdA0KPiBwZGYgaXMgb3V0IG9mIGRhdGUgKGFuZCB3cm9uZykuDQo+IA0KPiA+ID4gPiBm b3IgcGVyaXBoZXJhbHMgaG9va2luZyBpbnRvIHRoZSBidXMgZmFicmljIChpLmUuIGRtYV8qbWIo KSB3b3VsZCBiZQ0KPiA+ID4gPiBicm9rZW4pLiBJIHRoaW5rIGl0IHdvdWxkIGFsc28gbWVhbiB0 aGF0IERTQiBkb2Vzbid0IG5lY2Vzc2FyaWx5IGZpeA0KPiB0aGUNCj4gPiA+ID4gaXNzdWUsIGl0 IHByb2JhYmx5IGp1c3QgbWFrZXMgaXQgbGVzcyBsaWtlbHkgYmVjYXVzZSBpdCB0YWtlcyBsb25n ZXINCj4gdG8NCj4gPiA+ID4gZ2V0IHRoZSBkZXZpY2Ugd3JpdGUgb3V0IGFmdGVyIHRoZSBhY2tu b3dsZWRnZW1lbnQgLS0gbmRlbGF5KCkgd291bGQNCj4gPiA+IGFjaGlldmUNCj4gPiA+ID4gdGhl IHNhbWUgZWZmZWN0IDopDQo+ID4NCj4gPiBUaGF0J3Mgd2hhdCBJIHdvcnJpZWQuDQo+ID4NCj4g PiA+ID4NCj4gPiA+ID4gRnJhbmsgLS0gd2hhdCBoYXBwZW5zIGlmIHlvdSB0cnkgZWl0aGVyIERN QiBTWSwgb3IgRE1CIE9TSCAod2l0aG91dA0KPiB0aGUNCj4gPiA+IFNUKQ0KPiA+ID4gPiBpbiB3 cml0ZWwoKT8NCj4gPg0KPiA+IEl0IHdvcmtzIHdlbGwgZm9yIDIgaG91cnMhIE5vcm1hbGx5LCBw cm9ibGVtIGhhcHBlbiBiZWxvdyAxMG1pbi4gU28gSQ0KPiB0aGluayBETUIgU1kNCj4gPiBjYW4g Zml4IGl0Lg0KPiANCj4gT2gsIGludGVyZXN0aW5nLiBNYXliZSB0aGlzIGlzIGEgY2FzZSB3aGVy ZSBPU0ggdnMgU1kgYWN0dWFsbHkgbWFrZXMgYQ0KPiBkaWZmZXJlbmNlLiBJJ20gbm90IHF1aXRl IHN1cmUgd2hhdCBpdCBtZWFucyBmb3IgdGhlIGNvaGVyZW5jeSBvZiBub3JtYWwsDQo+IG5vbi1j YWNoZWFibGUgYWNjZXNzZXMgKHdoaWNoIGFyZSBvdXRlci1zaGFyZWFibGUpIHNvIHRoYXQgcHJv YmFibHkgbmVlZHMgYQ0KPiBiaXQgbW9yZSB0aG91Z2h0Lg0KPiANCj4gQ2FuIHlvdSBjb25maXJt IHRoYXQgdGhlIGlzc3VlICpkb2VzKiBzdGlsbCBvY2N1ciBpZiB5b3UgdXNlIGRtYihvc2gpDQo+ IGluc3RlYWQgb2YgZG1iKG9zaHN0KSwgcGxlYXNlPw0KDQpBZnRlciBnZXQgQVJNIHN1cHBvcnQg aHR0cHM6Ly9zZXJ2aWNlcy5hcm0uY29tL3N1cHBvcnQvcy9jYXNlLzUwMDN0MDAwMDFSdUpIdywg DQpUaGlzIGlzc3VlIGhhdmUgc29tZSBwcm9ncmVzcy4gDQoNCk91ciBzeXN0ZW0gY29uZmlndXJl IFNZU0JBUkRJU0FCTEUgPSAweDAsIFNvIEFSTSBjb3JlIGJhcnJpZXIgcHJvcGFnYXRlIHRvIEND SS00MDANCg0KT3VyIERNQSBhbmQgVVNCIGlzIGxvY2F0ZWQgYmVsb3cgZG93bnN0cmVhbSBvZiBD Q0ktNDAwLiBTbyBVU0Igb3IgRE1BIGlzIGxvY2F0ZWQNCmluIHN5c3RlbSBzaGFyZWQgZG9tYWlu LiBPbmx5IHVzZSBkbWIoc3QpLCBDQ0ktNDAwIHdhaXQgZm9yIHByZXZpb3VzIHRyYW5zYWN0aW9u DQpDb21wbGV0ZS4gV2hlbiBkbWEob3NoKSwgdGhlIHJlc3BvbnNlIGlzIHNlbnQgd2hlbiBzbm9v cCByZXNwb25zZXMgYXJlIHJlY2VpdmVkIGZvcg0KYWxsIGVhcmxpZXIgdHJhbnNhY3Rpb25zLiBD Q0ktNDAwIGRvbid0IHdhaXQgZm9yIHByZXZpb3VzIHdyaXRlIGZpbmlzaC4gDQoNCkJlc3QgcmVn YXJkcw0KRnJhbmsgTGkNCg0KPiANCj4gV2lsbA0KX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgt YXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3Jn L21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=