From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=40.107.4.41; helo=eur03-db5-obe.outbound.protection.outlook.com; envelope-from=meenakshi.aggarwal@nxp.com; receiver=edk2-devel@lists.01.org Received: from EUR03-DB5-obe.outbound.protection.outlook.com (mail-eopbgr40041.outbound.protection.outlook.com [40.107.4.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 717252277AF1B for ; Mon, 23 Apr 2018 08:50:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=We4oc+qJDpxAfW93dYg6BJ1TKlowdVBxC+gQPT6bHIs=; b=RANS2cV2RT2+MR0hn1e6BuIWfQcCmRepgKpK+f2e3AIR+YqCp2bAfqfwxV5UiFWmjc1VlvdXxO38bSMPg4FHDIGQLxpED3eiyndeZgIUOOhlLhZzlrJSRWCyR8Gkc9hI5Y+oQWXDbE7jT6JbAthwFuQm8OptPmNevua7BLwlN+c= Received: from DB5PR04MB0998.eurprd04.prod.outlook.com (10.161.199.12) by DB5PR04MB1061.eurprd04.prod.outlook.com (10.161.199.150) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.15; Mon, 23 Apr 2018 15:50:41 +0000 Received: from DB5PR04MB0998.eurprd04.prod.outlook.com ([fe80::18ce:390:67ab:40af]) by DB5PR04MB0998.eurprd04.prod.outlook.com ([fe80::18ce:390:67ab:40af%15]) with mapi id 15.20.0696.015; Mon, 23 Apr 2018 15:50:41 +0000 From: Meenakshi Aggarwal To: Ard Biesheuvel CC: Leif Lindholm , "edk2-devel@lists.01.org" , Udit Kumar , Varun Sethi Thread-Topic: [PATCH edk2-platforms 05/39] Silicon/NXP: Add support for I2c driver Thread-Index: AQHTpwOF1gZRq+7Dk0C3HdXgM7lPbaQFhpKAgAjiaDCAAAXWgIAAHncwgAA10QCAACPMkA== Date: Mon, 23 Apr 2018 15:50:41 +0000 Message-ID: References: <1518771035-6733-1-git-send-email-meenakshi.aggarwal@nxp.com> <1518771035-6733-6-git-send-email-meenakshi.aggarwal@nxp.com> <20180417163657.rtmpklak5nqlwn3c@bivouac.eciton.net> <20180423083815.wmdb2lu3gqyrmruw@bivouac.eciton.net> In-Reply-To: Accept-Language: en-GB, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: linaro.org; dkim=none (message not signed) header.d=none;linaro.org; dmarc=none action=none header.from=nxp.com; x-originating-ip: [14.142.187.166] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; DB5PR04MB1061; 7:NctHlk0PUvLTeC6bA0+MA5gtoVn+OjrELUgI2ujb/oFUBeV1rqjMw6uhP6+9e8znXH8qn6RB9BuvCo0GHWfM2xxxM9gOB+m0N6RoPCYbAfyZu22uaN+usJ8M4MDjuoI6Eo6y6ZzpNEtIJdw0MyvbML28Khr37XgMxJ3nD6PxhxBwcqzzgFBRXWjv3S3N7QXtDTEPlbjNjElvfZUdpI33oLfBrmxldc3ypWbEVa0RugPM3cwcxd+7daiecZNzbRgm x-ms-exchange-antispam-srfa-diagnostics: SOS; x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(5600026)(48565401081)(2017052603328)(7153060)(7193020); SRVR:DB5PR04MB1061; x-ms-traffictypediagnostic: DB5PR04MB1061: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(185117386973197)(162533806227266)(21532816269658); x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(3231232)(944501410)(52105095)(3002001)(93006095)(93001095)(6055026)(6041310)(20161123564045)(20161123562045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(6072148)(201708071742011); SRVR:DB5PR04MB1061; BCL:0; PCL:0; RULEID:; SRVR:DB5PR04MB1061; x-forefront-prvs: 06515DA04B x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(39860400002)(366004)(39380400002)(376002)(396003)(346002)(13464003)(59450400001)(25786009)(7696005)(26005)(5250100002)(11346002)(55236004)(102836004)(446003)(2900100001)(53546011)(33656002)(6506007)(305945005)(3846002)(6116002)(3660700001)(7736002)(3280700002)(6916009)(5660300001)(186003)(76176011)(229853002)(478600001)(74316002)(53936002)(2906002)(66066001)(476003)(8676002)(81166006)(8936002)(55016002)(93886005)(4326008)(9686003)(316002)(6436002)(54906003)(44832011)(575784001)(6246003)(86362001)(19627235001); DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR04MB1061; H:DB5PR04MB0998.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; MLV:sfv; x-microsoft-antispam-message-info: UJUrBM+W5quDhDASDCSi4YXu49ajFsTYIiPCYbX/0shr/HPIOaYSN8BmtSqBdD0tJVa3QtAkttgaeIk8jITJvNZ5RwEsJgp6YHsKIXtctRXYy+s6ia4JeKjHTnCgpA5CidIh+KYks/OKgG7ePs3ejiUiLDHTv4KoA8iZiY9hmrI1vDSKgzoikI0XTNaWq0vc spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: 8010e92a-dee9-47b9-4aae-08d5a931f7a6 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8010e92a-dee9-47b9-4aae-08d5a931f7a6 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Apr 2018 15:50:41.4749 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR04MB1061 Subject: Re: [PATCH edk2-platforms 05/39] Silicon/NXP: Add support for I2c driver X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Apr 2018 15:50:46 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgQXJkDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogQXJkIEJpZXNo ZXV2ZWwgW21haWx0bzphcmQuYmllc2hldXZlbEBsaW5hcm8ub3JnXQ0KPiBTZW50OiBNb25kYXks IEFwcmlsIDIzLCAyMDE4IDc6MTAgUE0NCj4gVG86IE1lZW5ha3NoaSBBZ2dhcndhbCA8bWVlbmFr c2hpLmFnZ2Fyd2FsQG54cC5jb20+DQo+IENjOiBMZWlmIExpbmRob2xtIDxsZWlmLmxpbmRob2xt QGxpbmFyby5vcmc+OyBlZGsyLWRldmVsQGxpc3RzLjAxLm9yZzsgVWRpdA0KPiBLdW1hciA8dWRp dC5rdW1hckBueHAuY29tPjsgVmFydW4gU2V0aGkgPFYuU2V0aGlAbnhwLmNvbT4NCj4gU3ViamVj dDogUmU6IFtQQVRDSCBlZGsyLXBsYXRmb3JtcyAwNS8zOV0gU2lsaWNvbi9OWFA6IEFkZCBzdXBw b3J0IGZvciBJMmMNCj4gZHJpdmVyDQo+IA0KPiBPbiAyMyBBcHJpbCAyMDE4IGF0IDEyOjM0LCBN ZWVuYWtzaGkgQWdnYXJ3YWwNCj4gPG1lZW5ha3NoaS5hZ2dhcndhbEBueHAuY29tPiB3cm90ZToN Cj4gPiBIaSBMZWlmDQo+ID4NCj4gPj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4g RnJvbTogTGVpZiBMaW5kaG9sbSBbbWFpbHRvOmxlaWYubGluZGhvbG1AbGluYXJvLm9yZ10NCj4g Pj4gU2VudDogTW9uZGF5LCBBcHJpbCAyMywgMjAxOCAyOjA4IFBNDQo+ID4+IFRvOiBNZWVuYWtz aGkgQWdnYXJ3YWwgPG1lZW5ha3NoaS5hZ2dhcndhbEBueHAuY29tPg0KPiA+PiBDYzogYXJkLmJp ZXNoZXV2ZWxAbGluYXJvLm9yZzsgZWRrMi1kZXZlbEBsaXN0cy4wMS5vcmc7IFVkaXQgS3VtYXIN Cj4gPj4gPHVkaXQua3VtYXJAbnhwLmNvbT47IFZhcnVuIFNldGhpIDxWLlNldGhpQG54cC5jb20+ DQo+ID4+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggZWRrMi1wbGF0Zm9ybXMgMDUvMzldIFNpbGljb24v TlhQOiBBZGQgc3VwcG9ydCBmb3INCj4gSTJjDQo+ID4+IGRyaXZlcg0KPiA+Pg0KPiA+PiBPbiBN b24sIEFwciAyMywgMjAxOCBhdCAwODoyMToyMkFNICswMDAwLCBNZWVuYWtzaGkgQWdnYXJ3YWwg d3JvdGU6DQo+ID4+ID4gPiA+ICsvKioNCj4gPj4gPiA+ID4gKyAgRnVuY3Rpb24gdG8gcmVhZCBk YXRhIHVzaW5nIGkyYyBidXMNCj4gPj4gPiA+ID4gKw0KPiA+PiA+ID4gPiArICBAcGFyYW0gICBJ MmNCdXMgICAgICAgICAgSTJjIENvbnRyb2xsZXIgbnVtYmVyDQo+ID4+ID4gPiA+ICsgIEBwYXJh bSAgIENoaXAgICAgICAgICAgICBBZGRyZXNzIG9mIHNsYXZlIGRldmljZSBmcm9tIHdoZXJlIGRh dGEgdG8NCj4gYmUNCj4gPj4gcmVhZA0KPiA+PiA+ID4gPiArICBAcGFyYW0gICBPZmZzZXQgICAg ICAgICAgT2Zmc2V0IG9mIHNsYXZlIG1lbW9yeQ0KPiA+PiA+ID4gPiArICBAcGFyYW0gICBBbGVu ICAgICAgICAgICAgQWRkcmVzcyBsZW5ndGggb2Ygc2xhdmUNCj4gPj4gPiA+ID4gKyAgQHBhcmFt ICAgQnVmZmVyICAgICAgICAgIEEgcG9pbnRlciB0byB0aGUgZGVzdGluYXRpb24gYnVmZmVyIGZv ciB0aGUNCj4gZGF0YQ0KPiA+PiA+ID4gPiArICBAcGFyYW0gICBMZW4gICAgICAgICAgICAgTGVu Z3RoIG9mIGRhdGEgdG8gYmUgcmVhZA0KPiA+PiA+ID4gPiArDQo+ID4+ID4gPiA+ICsgIEByZXR2 YWwgIEVGSV9OT1RfUkVBRFkgICBBcmJpdHJhdGlvbiBsb3N0DQo+ID4+ID4gPiA+ICsgIEByZXR2 YWwgIEVGSV9USU1FT1VUICAgICBGYWlsZWQgdG8gaW5pdGlhbGl6ZSBkYXRhIHRyYW5zZmVyIGlu DQo+ID4+IHByZWRlZmluZWQNCj4gPj4gPiA+IHRpbWUNCj4gPj4gPiA+ID4gKyAgQHJldHZhbCAg RUZJX05PVF9GT1VORCAgIEFDSyB3YXMgbm90IHJlY2lldmVkDQo+ID4+ID4gPiA+ICsgIEByZXR2 YWwgIEVGSV9TVUNDRVNTICAgICBSZWFkIHdhcyBzdWNjZXNzZnVsDQo+ID4+ID4gPiA+ICsNCj4g Pj4gPiA+ID4gKyoqLw0KPiA+PiA+ID4gPiArU1RBVElDDQo+ID4+ID4gPiA+ICtFRklfU1RBVFVT DQo+ID4+ID4gPiA+ICtJMmNEYXRhUmVhZCAoDQo+ID4+ID4gPiA+ICsgIElOICBVSU5UMzIgICAg ICAgICAgICAgICBJMmNCdXMsDQo+ID4+ID4gPiA+ICsgIElOICBVSU5UOCAgICAgICAgICAgICAg ICBDaGlwLA0KPiA+PiA+ID4gPiArICBJTiAgVUlOVDMyICAgICAgICAgICAgICAgT2Zmc2V0LA0K PiA+PiA+ID4gPiArICBJTiAgVUlOVDMyICAgICAgICAgICAgICAgQWxlbiwNCj4gPj4gPiA+ID4g KyAgSU4gIFVJTlQ4ICAgICAgICAgICAgICAgICpCdWZmZXIsDQo+ID4+ID4gPiA+ICsgIElOICBV SU5UMzIgICAgICAgICAgICAgICBMZW4NCj4gPj4gPiA+ID4gKyAgKQ0KPiA+PiA+ID4gPiArew0K PiA+PiA+ID4gPiArICBFRklfU1RBVFVTICAgICAgICAgICAgICAgU3RhdHVzOw0KPiA+PiA+ID4g PiArICBVSU5UMzIgICAgICAgICAgICAgICAgICAgVGVtcDsNCj4gPj4gPiA+ID4gKyAgSU5UMzIg ICAgICAgICAgICAgICAgICAgIEk7DQo+ID4+ID4gPiA+ICsgIEkyQ19SRUdTICAgICAgICAgICAg ICAgICAqSTJjUmVnczsNCj4gPj4gPiA+ID4gKw0KPiA+PiA+ID4gPiArICBJMmNSZWdzID0gKEky Q19SRUdTICopKEZpeGVkUGNkR2V0NjQgKFBjZEkyYzBCYXNlQWRkciArDQo+ID4+ID4gPiA+ICsg ICAgICAgICAgICAgICAgICAgICAgICAgKEkyY0J1cyAqIEZpeGVkUGNkR2V0MzIgKFBjZEkyY1Np emUpKSkpOw0KPiA+PiA+ID4NCj4gPj4gPiA+IFBsZWFzZSBnZXQgcmlkIG9mIHRoaXMgaGFyZGNv ZGVkIGJhc2UgYWRkcmVzcyBhbmQgdXNlDQo+IE5vbkRpc2NvdmVyYWJsZQ0KPiA+PiA+ID4gSGF2 ZSBhIGxvb2sgYXQgU2lsaWNvbi9Tb2Npb25leHQvU3luUXVhY2VyL0RyaXZlcnMvUGxhdGZvcm1E eGUvIGFuZA0KPiA+PiA+ID4gU2lsaWNvbi9Tb2Npb25leHQvU3luUXVhY2VyL0RyaXZlcnMvU3lu UXVhY2VySTJjRHhlLw0KPiA+PiA+ID4gZm9yIGV4YW1wbGUuDQo+ID4+ID4gPg0KPiA+PiA+IEkg aGF2ZSBjaGVja2VkIFN5blF1YWNlciBjb2RlIGFuZCBpIGRvbnQgc2VlIGl0cyBhZGRpbmcgbXVj aA0KPiBhZHZhbnRhZ2UuDQo+ID4+DQo+ID4+IFdoYXQgaXQgZ2l2ZXMgaXMgdGhlIGFiaWxpdHkg dG8gY292ZXIgbW9yZSB0aGFuIG9uZSBjb250cm9sbGVyIGJ5IHRoaXMNCj4gPj4gZHJpdmVyLCBy ZWdhcmRsZXNzIG9mIHdoZXRoZXIgeW91IG5lZWQgaXQgZm9yIHRoaXMgcGFydGljdWxhciBwbGF0 Zm9ybQ0KPiA+PiBwb3J0IG9yIG5vdC4NCj4gPj4NCj4gPiBDdXJyZW50IGJvYXJkIG5lZWRzIG9u ZSBjb250cm9sbGVyLg0KPiANCj4gSXQgaXMgbm90IGFib3V0IHdoYXQgdGhlIGJvYXJkIHdhbnRz LiBJdCBpcyBhYm91dCByZXVzaW5nIGNvZGUuDQo+IA0KSWRlYWxseSwgd2Ugc2hvdWxkIHJldXNl IGFzIG11Y2ggYXMgcG9zc2libGUsDQoNCj4gSWYgeW91IGltcGxlbWVudGVkIGEgZHJpdmVyIHVz aW5nIHRoZSBVRUZJIGRyaXZlciBtb2RlbCwgeW91IGdldCBhbGwNCj4gdGhlIGJpbmRpbmcgbWFj aGluZXJ5IGZvciBmcmVlLCBhbmQgeW91IG9ubHkgbmVlZCB0byBkZWNsYXJlIHRoZQ0KPiBleGlz dGVuY2Ugb2YgYSBjb250cm9sbGVyIGFuZCB0aGUgY29yZSB3aWxsIGJpbmQgYW5kIGRpc2NvdmVy IGRyaXZlcnMuDQoNCkJ1dCBpbiBjYXNlIG9mIHRoaXMgcGFydGljdWxhciBkcml2ZXIsIGV2ZW4g aWYgd2UgYXJlIHVzaW5nIFVFRkkgZHJpdmVyIG1vZGVsLiANClRoZW4gZnJvbSBjb2RlIHBlcnNw ZWN0aXZlIG1vcmUgb3IgbGVzcywgd2UgbmVlZCBzYW1lIGNvZGUgdG8gZGVjbGFyZSBpMmMgbWFz dGVyDQpQcm90b2NvbC4NCg0KPiBUaGlzIGFsc28gYWxsb3dzIHlvdSB0byB1bmJpbmQgYSBkcml2 ZXIgZnJvbSBhIHNpbmdsZSBjb250cm9sbGVyLCBmb3INCj4gaW5zdGFuY2UsIGFuZCBrZWVwaW5n IHRoZSBvdGhlciBjb25uZWN0aW9ucyBhbGl2ZS4NCj4gDQoNCg0KSSBkb24ndCBzZWUgYW55IGNh c2UgaW4gd2hpY2ggd2UgbmVlZCB0byB1bmJpbmQgZHJpdmVyIGZvciBpMmMuDQoNCkNvbWluZyBi YWNrIHRvIGltcGxlbWVudGF0aW9uIHBhcnQsICB0aGVyZSBhcmUgc29tZSANCmFkdmFudGFnZXMg dXNpbmcgVUVGSSBkcml2ZXIgbW9kZWwuIEF0IHByZXNlbnQgd2UgDQphcmUgbm90IHVzaW5nIHRo b3NlIGZlYXR1cmVzIGZvciBpMmMgZHJpdmVyIGJ1dCBpZiB5b3UgdGhpbmsgd2Ugc2hvdWxkIGhh dmUgdGhlc2UgaW4gY29kZS4NCldlIHdpbGwgYWRkIHRoaXMgc3VwcG9ydC4gIA0KDQo+ID4gSW4g Y2FzZSBvZiBtdWx0aXBsZSBjb250cm9sbGVyLCB3ZSBjYW4gdXNlIGEgbG9vcCB0byBpbnN0YWxs IG11bHRpcGxlIHByb3RvY29scw0KPiBhbmQNCj4gPiBJZiBuZWVkZWQgdGhlbiBvdXIgcHJlZmVy ZW5jZSB3b3VsZCBiZSB0byB1c2UgSTJjIGVudW1lcmF0aW9uIHByb3RvY29sLg0KPiA+IFRoaXMg d2lsbCBhbGxvdyB0byB1c2UgY29ycmVjdCBjb250cm9sbGVyIGZvciBjb25uZWN0ZWQgZGV2aWNl cy4NCj4gPg0KPiANCj4gSTJDIGVudW1lcmF0aW9uIHByb3RvY29sIGhhcyBub3RoaW5nIHRvIGRv IHdpdGggdGhpcy4NCj4gDQo+ID4gV2l0aCBzYW1wbGUgaW1wbGVtZW50YXRpb24gb2YgU3luUXVh Y2VyIGNvZGUsDQo+ID4gUGxlYXNlIGFkdmlzZSwgaG93IGEgcmlnaHQgY29udHJvbGxlciBpcyBi ZWluZyBjb25uZWN0ZWQgdG8gZHJpdmVyDQo+ID4gZS5nLiB3ZSBhcmUgcmVnaXN0ZXJpbmcgdHdv IGNvbnRyb2xsZXJzIG1JMmMwRGVzYyBhbmQgbUkyYzFEZXNjIGFuZA0KPiA+IGJvdGggYXJlIGV4 cG9ydGluZyBzYW1lIHByb3RvY29scy4NCj4gPiBJdHMgdXNlciwgUlRDIGxpYiBqdXN0IGNoZWNr aW5nICBnRWZpSTJjTWFzdGVyUHJvdG9jb2xHdWlkLiBUaGVyZSBpcw0KPiBwb3NzaWJpbGl0eQ0K PiA+IHRvIGNvbm5lY3Qgd2l0aCBhbnkgb2YgdGhlIGNvbnRyb2xsZXIuIEkgZG9udCBzZWUgaW4g Y29kZSB3aGVyZSBpdCBpcyBhc3N1cmluZw0KPiBjb25uZWN0aW9uIHdpdGggcmlnaHQgY29udHJv bGxlci4NCj4gPiBBbmQgaG93IHdlIGNhbiBhc3N1cmUgd2UgYXJlIGNvbm5lY3RpbmcgdG8gdGhl IGNvcnJlY3QgY29udHJvbGxlci4NCj4gPg0KPiANCj4gVGhlIFBDRjg1NjMgUlRDIGRyaXZlciBo YXMgYSBzcGVjaWFsIEdVSURlZCBwcm90b2NvbCB0aGF0IGlkZW50aWZpZXMNCj4gdGhlIEkyQyBj b250cm9sbGVyIHRoYXQgaGFzIHRoZSBSVEMgY29ubmVjdGVkIHRvIGl0LiBUaGlzIGdvZXMgb3V0 c2lkZQ0KPiBvZiB0aGUgVURNIGJlY2F1c2UgUlRDIGlzIGFuIGFyY2hpdGVjdHVyYWwgcHJvdG9j b2wuIE5vdGUgdGhhdCB0aGUNCj4gU3luUXVhY2VyIEkyQyBkcml2ZXIgaXMgYSBEWEVfUlVOVElN RV9EUklWRVIgbW9kdWxlIHRoYXQgc3VwcG9ydHMgYm9vdA0KPiB0aW1lIGFuZCBydW50aW1lIEky QyBzdXBwb3J0IGZvciBjb250cm9sbGVycywgdGhlIGxhdHRlciBlc3BlY2lhbGx5DQo+IGZvciB0 aGluZ3MgbGlrZSBSVEMgYW5kIHZhcnN0b3JlIHN1cHBvcnQgb3ZlciBJMkMuDQo+IA0KDQpJIGRv buKAmXQgc2F5IG11Y2ggb24gdGhpcyBiZWNhdXNlIHRoaXMgaXMgaW1wbGVtZW50YXRpb24gLCB3 aGljaCBjYW4gdmFyeSBtaW5kIHRvIG1pbmQuIA0KQnV0IGluIG9yZGVyIHRvIG1haW50YWluIG1h bnkgY29udHJvbGxlcnMNCmFuZCBkZXZpY2VzIG9uIHRoZSB0b3Agb2YgaXQsIG15IHByZWZlcmVu Y2Ugd291bGQgYmUgdG8gDQpnbyB3aXRoIGJ1cyBjb25maWd1cmF0aW9uIGFuZCBidXMgZW51bWVy YXRpb24gcHJvdG9jb2wuIA0KDQpZb3UgY2FuIHNheSwgd2h5IHRvIGNvbXBsaWNhdGUgdGhlIGNv ZGUsIHdoZW4gdGhpcyBjYW4gYmUgZG9uZQ0KaW4gZWFzeSB3YXkuDQoNCj4gPj4gPiBUaGVyZSBh bHNvIGJhc2UgYWRkcmVzcyBpcyBoYXJkIGNvZGVkIFNZTlFVQUNFUl9JMkMxX0JBU0UgaW4NCj4g Pj4gPiBQbGF0Zm9ybUR4ZSBkcml2ZXIuDQo+ID4+DQo+ID4+IFllcywgdGhlIFBsYXRmb3JtRHhl IGRyaXZlciBzdGF0aWNhbGx5IGluc3RhbnRpYXRlcyBkeW5hbWljIGRyaXZlcnMNCj4gPj4gZm9y IG5vbi1kaXNjb3ZlcmFibGUgYnVzZXMuIEJ1dCB0aGVyZSBpcyBubyBsb25nZXIgYW55IGhhcmQt Y29kZWQNCj4gPj4gYWRkcmVzc2VzIGluIHRoZSBkZXZpY2UgZHJpdmVyIGl0c2VsZi4NCj4gPj4N Cj4gPj4gLw0KPiA+PiAgICAgTGVpZg0K