Received: by 10.223.185.116 with SMTP id b49csp5157731wrg; Tue, 27 Feb 2018 08:39:30 -0800 (PST) X-Google-Smtp-Source: AG47ELvyKHyVF0DTVGs6uFMjBfTCy7Kdc1gGj9lc+PNR2Czb+gHcB8FFrz1TLIpCj2KzvxxRw0SG X-Received: by 2002:a17:902:2e83:: with SMTP id r3-v6mr8272825plb.84.1519749570595; Tue, 27 Feb 2018 08:39:30 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519749570; cv=none; d=google.com; s=arc-20160816; b=Lzs3rv/1Cmv0tfNDpXQzdYx/gQm8E2P5SNcTdb4nApcGTk3oKjsHLivA7l0C8R3hyl YM5/25SV3CbRF6SCJfo+H3pX5nTI/Tp1Ws+KIHYhxpiEWgJ1ksxcCOmnLdnYH0TG/ETZ nwUf21YuvFIaR/deyBCwGZlkmlfRlLyKL37HZcVrwerLCn23daInEjmcFEOZbIiRlbu0 aTYfgqNda2o9aF6yJxFalZX4FUaykYLcQFOWpuedaiJcNz+VjHlQ4Aq2X/w/1k9KSsar X4ptprwP+c/hAsXYh+Jmtud3Gv7Wk6rmWSSkawwENsoov5Lv7jjRPr5zlY03x1+Dl8r1 Tl7g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :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=UVaYZfFK03OV3thgpxBo89DQufr3I+KsveOBI0cf4oQ=; b=oVBPq+N751JiHAoz5En+SUE5gZiLJqGd3fpY7mTVqWBfkDyfUfzxRVEbaX2ZaaTCFQ 3w9KD4oSYN7uZF9WJ1Ir+VYVcexa9qs2YOPYqV+Ua+AxMsXv3JPDJOgZ74IV8jV6dAwR pu7DvUQ+xVvYkoblYFSOYgurEXqc1xVW1a50+4WpDvXa49i5zTTuepxVgWGTxorGxRXU 8JhnXogfjvmNKiZ48dQtw3X+ZNWpqLG4mDWMsohm6S5UdgCaUQ7J59WqLfs6xjNVf156 n84yyqElttiXOEgKcfsEgavAC+cXYW7U77x5pXUsnoszq5GLeTtmeTyZKu7GhZBuxvH0 D4jQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amdcloud.onmicrosoft.com header.s=selector1-amd-com header.b=19Fg4Xo2; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w10si7195106pgr.136.2018.02.27.08.39.15; Tue, 27 Feb 2018 08:39:30 -0800 (PST) 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=@amdcloud.onmicrosoft.com header.s=selector1-amd-com header.b=19Fg4Xo2; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753833AbeB0PZL (ORCPT + 99 others); Tue, 27 Feb 2018 10:25:11 -0500 Received: from mail-bl2nam02on0064.outbound.protection.outlook.com ([104.47.38.64]:56544 "EHLO NAM02-BL2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753220AbeB0PZI (ORCPT ); Tue, 27 Feb 2018 10:25:08 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector1-amd-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=UVaYZfFK03OV3thgpxBo89DQufr3I+KsveOBI0cf4oQ=; b=19Fg4Xo2eBKftPRa5jHuUVJpfyrDqrS+a7W05ZSqu9xBJ1yhSFUwQaVKie45kdnQQ2XVOAPss73Z0IsUBzWyP8F6w1M2kUyjE+l0IvG/zZgpTqeCzhvOsifDrSBG57GGRZKmp/j8ydYLz0RMM/cIj9x8Uoki74ezkm67G9UB4+c= Received: from DM5PR12MB1916.namprd12.prod.outlook.com (10.175.88.148) by DM5PR12MB2408.namprd12.prod.outlook.com (52.132.141.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.527.15; Tue, 27 Feb 2018 15:25:06 +0000 Received: from DM5PR12MB1916.namprd12.prod.outlook.com ([fe80::ed54:6a31:17df:983f]) by DM5PR12MB1916.namprd12.prod.outlook.com ([fe80::ed54:6a31:17df:983f%17]) with mapi id 15.20.0527.021; Tue, 27 Feb 2018 15:25:06 +0000 From: "Ghannam, Yazen" To: Borislav Petkov CC: "linux-efi@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "ard.biesheuvel@linaro.org" , "x86@kernel.org" Subject: RE: [PATCH v2 3/8] efi: Decode IA32/X64 Processor Error Info Structure Thread-Topic: [PATCH v2 3/8] efi: Decode IA32/X64 Processor Error Info Structure Thread-Index: AQHTrzm07vsANP0WAkKVOn1mh2z8gqO4TzGAgAANYEA= Date: Tue, 27 Feb 2018 15:25:06 +0000 Message-ID: References: <20180226193904.20532-1-Yazen.Ghannam@amd.com> <20180226193904.20532-4-Yazen.Ghannam@amd.com> <20180227142531.GF26382@pd.tnic> In-Reply-To: <20180227142531.GF26382@pd.tnic> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Yazen.Ghannam@amd.com; x-originating-ip: [165.204.84.17] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;DM5PR12MB2408;7:aoaK29p9ER0WCnn6Em1uBGrFEtlncZ3nB6KjfclH2W1063ZKB5r/Qzvwdy6DN89AobX0cVXuFU8qUOIfcF4kHNVVmWd6e/pIoR9nmMKSQ9GRQFHqKnlbh6XcKvehTcX8emGrC52Guqlm1lUHst2gPVyS7YOMp0Nv9oUq+21g0xDV8sYNNceFGAizONquX9hyXaEnqFyL0LCVu5oxfiW2YLvkCaJgS91tgeFGRIvFGIDRFM1zqkHn2zT+82xbcxtd;20:kjMNKIdhky2yJG3XHPO6kL+qmeavShh+BUKs4gTsiMxSd0XoK7zbGzbi6Q6WhwL420GIW0fPLrGFAaBCMhqHcFM2cbypRj3R4Oa+enCdMVuYWjgdDSKwbdNK+9ddhukx72jmlqt2IGFzdSXGEzI9swC0IEMa+2QyASzty3QjP5EC3Kf5bZN3knhYUgnIHwV7nJzTreAEoPXST5Q/5lZYNbPUiPOt0LTH25HPX6w6f2gcl+QnF/eocX8T0y2i6ZeA x-ms-exchange-antispam-srfa-diagnostics: SSOS; x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: ee0110e5-b408-48bf-1ca3-08d57df64830 x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(7020095)(4652020)(48565401081)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4604075)(3008032)(2017052603307)(7153060)(7193020);SRVR:DM5PR12MB2408; x-ms-traffictypediagnostic: DM5PR12MB2408: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(9452136761055)(767451399110)(42068640409301); x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(8211001083)(6040501)(2401047)(8121501046)(5005006)(3002001)(10201501046)(3231220)(944501161)(93006095)(93001095)(6055026)(6041288)(20161123558120)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123560045)(6072148)(201708071742011);SRVR:DM5PR12MB2408;BCL:0;PCL:0;RULEID:;SRVR:DM5PR12MB2408; x-forefront-prvs: 05961EBAFC x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(39860400002)(366004)(346002)(396003)(39380400002)(376002)(189003)(199004)(13464003)(6436002)(186003)(54906003)(53936002)(5660300001)(7696005)(575784001)(8936002)(2950100002)(25786009)(2900100001)(6916009)(14454004)(81156014)(81166006)(966005)(86362001)(26005)(316002)(72206003)(8676002)(6246003)(229853002)(33656002)(68736007)(3846002)(6116002)(3660700001)(74316002)(2906002)(76176011)(4326008)(5250100002)(106356001)(66066001)(3280700002)(105586002)(478600001)(6506007)(55016002)(53546011)(99286004)(6306002)(102836004)(305945005)(97736004)(9686003)(7736002);DIR:OUT;SFP:1101;SCL:1;SRVR:DM5PR12MB2408;H:DM5PR12MB1916.namprd12.prod.outlook.com;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; received-spf: None (protection.outlook.com: amd.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: T5UaebjC2VRZ4tTRGetj256flTscYF6fEFFddHY13mbXz94D2k1h5PL1Licl1qvcA7NLljvSTfjZWZ1uJKq28tmI72GDZWPZUXSGbB1y2M+mMKHDyEZsMv801+sXfJTNV0Fkwz1VlyUwiH4DAf93+mw6R5uxWI9h2dT2C4xVxNs= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: ee0110e5-b408-48bf-1ca3-08d57df64830 X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Feb 2018 15:25:06.7926 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR12MB2408 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBCb3Jpc2xhdiBQZXRrb3YgW21h aWx0bzpicEBzdXNlLmRlXQ0KPiBTZW50OiBUdWVzZGF5LCBGZWJydWFyeSAyNywgMjAxOCA5OjI2 IEFNDQo+IFRvOiBHaGFubmFtLCBZYXplbiA8WWF6ZW4uR2hhbm5hbUBhbWQuY29tPg0KPiBDYzog bGludXgtZWZpQHZnZXIua2VybmVsLm9yZzsgbGludXgta2VybmVsQHZnZXIua2VybmVsLm9yZzsN Cj4gYXJkLmJpZXNoZXV2ZWxAbGluYXJvLm9yZzsgeDg2QGtlcm5lbC5vcmcNCj4gU3ViamVjdDog UmU6IFtQQVRDSCB2MiAzLzhdIGVmaTogRGVjb2RlIElBMzIvWDY0IFByb2Nlc3NvciBFcnJvciBJ bmZvDQo+IFN0cnVjdHVyZQ0KPiANCj4gT24gTW9uLCBGZWIgMjYsIDIwMTggYXQgMDE6Mzg6NTlQ TSAtMDYwMCwgWWF6ZW4gR2hhbm5hbSB3cm90ZToNCj4gPiBGcm9tOiBZYXplbiBHaGFubmFtIDx5 YXplbi5naGFubmFtQGFtZC5jb20+DQo+ID4NCj4gPiBQcmludCB0aGUgZmllbGRzIGluIHRoZSBJ QTMyL1g2NCBQcm9jZXNzb3IgRXJyb3IgSW5mbyBTdHJ1Y3R1cmUuDQo+ID4NCj4gPiBCYXNlZCBv biBVRUZJIDIuNyBUYWJsZSAyNTYuIElBMzIvWDY0IFByb2Nlc3NvciBFcnJvciBJbmZvcm1hdGlv bg0KPiA+IFN0cnVjdHVyZS4NCj4gPg0KPiA+IFNpZ25lZC1vZmYtYnk6IFlhemVuIEdoYW5uYW0g PHlhemVuLmdoYW5uYW1AYW1kLmNvbT4NCj4gPiAtLS0NCj4gPiBMaW5rOg0KPiA+IGh0dHBzOi8v bGttbC5rZXJuZWwub3JnL3IvMjAxODAyMjMyMDAzMzMuNjQxMC00LQ0KPiBZYXplbi5HaGFubmFt QGFtZC5jb20NCj4gPg0KPiA+IHYxLT52MjoNCj4gPiAqIEFkZCBwYXJhbnRoZXNlcyBhcm91bmQg ImJpdHMiIGV4cHJlc3Npb24gaW4gbWFjcm8uDQo+ID4gKiBGaXggaW5kZW50YXRpb24gb24gbXVs dGktbGluZSBzdGF0ZW1lbnRzLg0KPiA+DQo+ID4gIGRyaXZlcnMvZmlybXdhcmUvZWZpL2NwZXIt eDg2LmMgfCA1Mw0KPiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKw0K PiA+ICAxIGZpbGUgY2hhbmdlZCwgNTMgaW5zZXJ0aW9ucygrKQ0KPiA+DQo+ID4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZmlybXdhcmUvZWZpL2NwZXIteDg2LmMgYi9kcml2ZXJzL2Zpcm13YXJlL2Vm aS9jcGVyLQ0KPiB4ODYuYw0KPiA+IGluZGV4IDlkYTBkOTgxMTc4Zi4uNDE3YmQ0ZTUwMGE3IDEw MDY0NA0KPiA+IC0tLSBhL2RyaXZlcnMvZmlybXdhcmUvZWZpL2NwZXIteDg2LmMNCj4gPiArKysg Yi9kcml2ZXJzL2Zpcm13YXJlL2VmaS9jcGVyLXg4Ni5jDQo+ID4gQEAgLTMsMTUgKzMsMjggQEAN Cj4gPg0KPiA+ICAjaW5jbHVkZSA8bGludXgvY3Blci5oPg0KPiA+DQo+ID4gKyNkZWZpbmUgSU5E RU5UX1NQCSIgIg0KPiANCj4gVGhhdCdzIGp1c3Qgc2lsbHkuDQo+IA0KDQpUaGlzIGlzIHRoZSBz YW1lIGFzIHRoZSBvdGhlciBDUEVSIGNvZGUuDQoNCj4gPiArDQo+ID4gIC8qDQo+ID4gICAqIFdl IGRvbid0IG5lZWQgYSAiQ1BFUl9JQSIgcHJlZml4IHNpbmNlIHRoZXNlIGFyZSBhbGwgbG9jYWxs eSBkZWZpbmVkLg0KPiA+ICAgKiBUaGlzIHdpbGwgc2F2ZSB1cyBhIGxvdCBvZiBsaW5lIHNwYWNl Lg0KPiA+ICAgKi8NCj4gPiAgI2RlZmluZSBWQUxJRF9MQVBJQ19JRAkJCUJJVF9VTEwoMCkNCj4g PiAgI2RlZmluZSBWQUxJRF9DUFVJRF9JTkZPCQlCSVRfVUxMKDEpDQo+ID4gKyNkZWZpbmUgVkFM SURfUFJPQ19FUlJfSU5GT19OVU0oYml0cykJKCgoYml0cykgJiBHRU5NQVNLX1VMTCg3LA0KPiAy KSkgPj4gMikNCj4gPiArDQo+ID4gKyNkZWZpbmUgSU5GT19WQUxJRF9DSEVDS19JTkZPCQlCSVRf VUxMKDApDQo+ID4gKyNkZWZpbmUgSU5GT19WQUxJRF9UQVJHRVRfSUQJCUJJVF9VTEwoMSkNCj4g PiArI2RlZmluZSBJTkZPX1ZBTElEX1JFUVVFU1RPUl9JRAkJQklUX1VMTCgyKQ0KPiA+ICsjZGVm aW5lIElORk9fVkFMSURfUkVTUE9OREVSX0lECQlCSVRfVUxMKDMpDQo+ID4gKyNkZWZpbmUgSU5G T19WQUxJRF9JUAkJCUJJVF9VTEwoNCkNCj4gPg0KPiA+ICB2b2lkIGNwZXJfcHJpbnRfcHJvY19p YShjb25zdCBjaGFyICpwZngsIGNvbnN0IHN0cnVjdCBjcGVyX3NlY19wcm9jX2lhDQo+ICpwcm9j KQ0KPiA+ICB7DQo+ID4gKwlpbnQgaTsNCj4gPiArCXN0cnVjdCBjcGVyX2lhX2Vycl9pbmZvICpl cnJfaW5mbzsNCj4gPiArCWNoYXIgbmV3cGZ4WzY0XTsNCj4gPiArDQo+ID4gIAlwcmludGsoIiVz VmFsaWRhdGlvbiBCaXRzOiAweCUwMTZsbHhcbiIsIHBmeCwgcHJvYy0+dmFsaWRhdGlvbl9iaXRz KTsNCj4gPg0KPiA+ICAJaWYgKHByb2MtPnZhbGlkYXRpb25fYml0cyAmIFZBTElEX0xBUElDX0lE KQ0KPiA+IEBAIC0yMiw0ICszNSw0NCBAQCB2b2lkIGNwZXJfcHJpbnRfcHJvY19pYShjb25zdCBj aGFyICpwZngsIGNvbnN0IHN0cnVjdA0KPiBjcGVyX3NlY19wcm9jX2lhICpwcm9jKQ0KPiA+ICAJ CXByaW50X2hleF9kdW1wKHBmeCwgIiIsIERVTVBfUFJFRklYX09GRlNFVCwgMTYsIDQsIHByb2Mt DQo+ID5jcHVpZCwNCj4gPiAgCQkJICAgICAgIHNpemVvZihwcm9jLT5jcHVpZCksIDApOw0KPiA+ ICAJfQ0KPiA+ICsNCj4gPiArCXNucHJpbnRmKG5ld3BmeCwgc2l6ZW9mKG5ld3BmeCksICIlcyVz IiwgcGZ4LCBJTkRFTlRfU1ApOw0KPiA+ICsNCj4gPiArCWVycl9pbmZvID0gKHN0cnVjdCBjcGVy X2lhX2Vycl9pbmZvICopKHByb2MgKyAxKTsNCj4gPiArCWZvciAoaSA9IDA7IGkgPCBWQUxJRF9Q Uk9DX0VSUl9JTkZPX05VTShwcm9jLT52YWxpZGF0aW9uX2JpdHMpOw0KPiBpKyspIHsNCj4gPiAr CQlwcmludGsoIiVzRXJyb3IgSW5mb3JtYXRpb24gU3RydWN0dXJlICVkOlxuIiwgcGZ4LCBpKTsN Cj4gPiArDQo+ID4gKwkJcHJpbnRrKCIlc0Vycm9yIFN0cnVjdHVyZSBUeXBlOiAlcFVsXG4iLCBu ZXdwZngsDQo+ID4gKwkJICAgICAgICZlcnJfaW5mby0+ZXJyX3R5cGUpOw0KPiANCj4gVGhhdCBk dW1wcyBhIEdVSUQgLSBob3cgZG8gSSBmaW5kIG91dCB3aGF0IHR5cGUgdGhhdCBHVUlEIHJlZmVy cyB0bz8NCj4gDQoNCkEgbGF0ZXIgcGF0Y2ggcHJpbnRzIG91dCB0aGUgc3BlYy1kZWZpbmVkIHR5 cGUuDQoNCkFsc28sIHRoZSBzcGVjIGFsbG93cyBwbGF0Zm9ybS1kZWZpbmVkIEdVSURzLiBTbyB3 ZSBzaG91bGQgYWx3YXlzIHByaW50IHRoaXMNCmV2ZW4gaWYgdGhlIEdVSUQgaXMgbm90IGRlZmlu ZWQgYnkgdGhlIHNwZWMuDQoNCj4gPiArDQo+ID4gKwkJcHJpbnRrKCIlc1ZhbGlkYXRpb24gQml0 czogMHglMDE2bGx4XG4iLA0KPiA+ICsJCSAgICAgICBuZXdwZngsIGVycl9pbmZvLT52YWxpZGF0 aW9uX2JpdHMpOw0KPiANCj4gQXMgYmVmb3JlLCBubyBuZWVkIGZvciB0aG9zZS4NCj4gDQo+ID4g Kw0KPiA+ICsJCWlmIChlcnJfaW5mby0+dmFsaWRhdGlvbl9iaXRzICYgSU5GT19WQUxJRF9DSEVD S19JTkZPKSB7DQo+ID4gKwkJCXByaW50aygiJXNDaGVjayBJbmZvcm1hdGlvbjogMHglMDE2bGx4 XG4iLCBuZXdwZngsDQo+ID4gKwkJCSAgICAgICBlcnJfaW5mby0+Y2hlY2tfaW5mbyk7DQo+ID4g KwkJfQ0KPiA+ICsNCj4gPiArCQlpZiAoZXJyX2luZm8tPnZhbGlkYXRpb25fYml0cyAmIElORk9f VkFMSURfVEFSR0VUX0lEKSB7DQo+ID4gKwkJCXByaW50aygiJXNUYXJnZXQgSWRlbnRpZmllcjog MHglMDE2bGx4XG4iLA0KPiA+ICsJCQkgICAgICAgbmV3cGZ4LCBlcnJfaW5mby0+dGFyZ2V0X2lk KTsNCj4gPiArCQl9DQo+ID4gKw0KPiA+ICsJCWlmIChlcnJfaW5mby0+dmFsaWRhdGlvbl9iaXRz ICYgSU5GT19WQUxJRF9SRVFVRVNUT1JfSUQpIHsNCj4gPiArCQkJcHJpbnRrKCIlc1JlcXVlc3Rv ciBJZGVudGlmaWVyOiAweCUwMTZsbHhcbiIsDQo+ID4gKwkJCSAgICAgICBuZXdwZngsIGVycl9p bmZvLT5yZXF1ZXN0b3JfaWQpOw0KPiA+ICsJCX0NCj4gPiArDQo+ID4gKwkJaWYgKGVycl9pbmZv LT52YWxpZGF0aW9uX2JpdHMgJiBJTkZPX1ZBTElEX1JFU1BPTkRFUl9JRCkgew0KPiA+ICsJCQlw cmludGsoIiVzUmVzcG9uZGVyIElkZW50aWZpZXI6IDB4JTAxNmxseFxuIiwNCj4gPiArCQkJICAg ICAgIG5ld3BmeCwgZXJyX2luZm8tPnJlc3BvbmRlcl9pZCk7DQo+ID4gKwkJfQ0KPiANCj4gVGhv c2UgbG9vayBsaWtlIHdvdWxkIG5lZWQgYW4gYWRkaXRpb25hbCBkZWNvZGluZy4gQ2FuIHdlIGRv IHRoYXQgaGVyZQ0KPiB0b28/DQo+IA0KDQpUaGUgQ2hlY2sgSW5mb3JtYXRpb24gd2lsbCBiZSBk ZWNvZGVkIGZ1cnRoZXIgaW4gYW5vdGhlciBwYXRjaC4NCg0KSSBkb24ndCB0aGluayB0aGVyZSdz IG11Y2ggZWxzZSB0byBkZWNvZGUgZm9yIHRoZSBJRCBmaWVsZHMuDQoNCj4gPiArDQo+ID4gKwkJ aWYgKGVycl9pbmZvLT52YWxpZGF0aW9uX2JpdHMgJiBJTkZPX1ZBTElEX0lQKSB7DQo+ID4gKwkJ CXByaW50aygiJXNJbnN0cnVjdGlvbiBQb2ludGVyOiAweCUwMTZsbHhcbiIsDQo+ID4gKwkJCSAg ICAgICBuZXdwZngsIGVycl9pbmZvLT5pcCk7DQo+IA0KPiBUaGUgb25seSB0aGluZyB0aGF0IG1h a2VzIHNlbnNlIHNvIGZhci4NCj4gDQo+ID4gKwkJfQ0KPiA+ICsNCj4gPiArCQllcnJfaW5mbysr Ow0KPiA+ICsJfQ0KPiANCj4gQWxzbywgaXQgaXMgd29ydGggY2hlY2tpbmcgaG93IG11Y2ggZHVw bGljYXRpb24gdGhlcmUgaXMgd2l0aA0KPiBkcml2ZXJzL2Zpcm13YXJlL2VmaS9jcGVyLWFybS5j IGFuZCB1bmlmeWluZyB0aGUgY29tbW9uIHBpZWNlcyBpbnRvDQo+IGZ1bmN0aW9ucyBpbiBjcGVy LWNvbW1vbi5jIG9yIHNvLg0KPiANCg0KT3RoZXIgdGFibGVzIG1heSBoYXZlIHRoZSBzYW1lIGZp ZWxkcyBidXQgdGhlIG9mZnNldHMgYXJlIHVzdWFsbHkgZGlmZmVyZW50Lg0KU28gaXQgbWF5IGJl IG1vcmUgdHJvdWJsZSB0aGFuIGl0J3Mgd29ydGggdHJ5aW5nIHRvIHVuaWZ5IHRoZSBkaWZmZXJl bnQgdGFibGVzLg0KDQpUaGFua3MsDQpZYXplbiANCg==