From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id 5A33A2B84 for ; Thu, 13 Oct 2016 18:30:23 +0200 (CEST) Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga104.jf.intel.com with ESMTP; 13 Oct 2016 09:30:22 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.31,340,1473145200"; d="scan'208";a="19726662" Received: from irsmsx107.ger.corp.intel.com ([163.33.3.99]) by orsmga004.jf.intel.com with ESMTP; 13 Oct 2016 09:30:21 -0700 Received: from irsmsx102.ger.corp.intel.com ([169.254.2.198]) by IRSMSX107.ger.corp.intel.com ([169.254.10.95]) with mapi id 14.03.0248.002; Thu, 13 Oct 2016 17:30:20 +0100 From: "Van Haaren, Harry" To: John Ousterhout CC: "Ananyev, Konstantin" , "thomas.monjalon@6wind.com" , "dev@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH] eal: avoid unnecessary conflicts over rte_config file Thread-Index: AQHSJWiIMPDiKk7ASECQVFiZ7bPxLKCmi2cw///0cYCAABFBwA== Date: Thu, 13 Oct 2016 16:30:20 +0000 Message-ID: References: <20161012212917.10760-1-ouster@cs.stanford.edu> <2601191342CEEE43887BDE71AB9772583F0C1256@irsmsx105.ger.corp.intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZmRlMWE3ZTQtOTEwZi00NTE4LTljYmMtMWI0MzA3NmNkYzVjIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6InUyUWlza2lIVHhqbmYzSU5mSEhzYkNxNGdONVlhc0hMdGJxWmljM2UzVXc9In0= x-ctpclassification: CTP_IC x-originating-ip: [163.33.239.180] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH] eal: avoid unnecessary conflicts over rte_config file X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Oct 2016 16:30:24 -0000 SGksDQoNCj4gRnJvbTogSm9obiBPdXN0ZXJob3V0IFttYWlsdG86b3VzdGVyQGNzLnN0YW5mb3Jk LmVkdV0gDQoNCj4gQnV0LCBnaXZlbiB0aGUgZXhpc3RlbmNlIG9mIHRoZSAtLWZpbGUtcHJlZml4 IG9wdGlvbiwgaXNuJ3QgaXQgYWxyZWFkeSB1bnNhZmUgZm9yIENvbGxlY3RkIHRvIGNoZWNrIG9u bHkgZm9yIC5ydGVfY29uZmlnPyBJZiBpdCdzIGltcG9ydGFudCBmb3Igb3RoZXIgcHJvZ3JhbXMg dG8gYmUgYWJsZSB0byBmaW5kIHRoZSBjb25maWcgZmlsZXMsIGl0IHNlZW1zIHRvIG1lIHRoYXQg YSBtb3JlIHJvYnVzdCBtZWNoYW5pc20gaXMgbmVlZGVkIHRoYW4gdGhlIGN1cnJlbnQgb25lLg0K DQpJZiB0aGUgdXNlciBpcyB1c2luZyB0aGUgRFBESyAtLWZpbGUtcHJlZml4LCB3ZSBleHBlY3Qg dGhlIHVzZXIgdG8gcHJvdmlkZSB0aGF0IHNhbWUgLS1maWxlLXByZWZpeCB0byBpbmZvcm0gQ29s bGVjdGQgb2YgdGhlIGNoYW5nZWQgY29uZmlnIHBhdGguIERldGFpbHMgb24gaG93IHRvIGRvIHNv IGFyZSBhdmFpbGFibGUgaGVyZTogaHR0cHM6Ly9naXRodWIuY29tL2NvbGxlY3RkL2NvbGxlY3Rk L2Jsb2IvbWFzdGVyL3NyYy9jb2xsZWN0ZC5jb25mLnBvZCNwbHVnaW4tZHBka3N0YXQNCg0KS2Vl cCBpbiBtaW5kIGEgZm9yIGEgc2ltcGxlIHNldHVwIHRoZSBjdXJyZW50IGRlZmF1bHRzIHdpbGwg anVzdCB3b3JrLCBzbyBjaGFuZ2luZyB0aGUgZGVmYXVsdCBzZWVtcyBhIGJhZCBpZGVhIHRvIG1l Lg0KDQpSZWdhcmRzLCAtSGFycnkNCg0KDQo+IE9uIFRodSwgT2N0IDEzLCAyMDE2IGF0IDk6MDcg QU0sIFZhbiBIYWFyZW4sIEhhcnJ5IDxoYXJyeS52YW4uaGFhcmVuQGludGVsLmNvbT4gd3JvdGU6 DQo+SGkgSm9obiwNCg0KPj4gRnJvbTogZGV2IFttYWlsdG86ZGV2LWJvdW5jZXNAZHBkay5vcmdd IE9uIEJlaGFsZiBPZiBKb2huIE91c3RlcmhvdXQNCj4+IFN1YmplY3Q6IFJlOiBbZHBkay1kZXZd IFtQQVRDSF0gZWFsOiBhdm9pZCB1bm5lY2Vzc2FyeSBjb25mbGljdHMgb3ZlciBydGVfY29uZmln IGZpbGUNCg0KPiA8c25pcD4NCg0KPiBGb3IgZXhhbXBsZSwgaXQgdG9vayBtZSBzZXZlcmFsIGhv dXJzDQo+IHRvIGZpZ3VyZSBvdXQgd2h5IHRoZSBwcm9ibGVtIHdhcyBvY2N1cnJpbmcgYW5kIHRo ZW4gdG8gaHVudCBkb3duIHRoZQ0KPiAtLWZpbGUtcHJlZml4IHNvbHV0aW9uLiBJcyB0aGVyZSBz b21lIHJlYXNvbiB3aHkgaXQgd291bGQgYmUgYSBiYWQgaWRlYSB0bw0KPiBmaXggdGhpcyBpbiBE UERLPw0KDQpSaWdodCBub3csIERQREsgd2lsbCBieSBkZWZhdWx0IGFsd2F5cyB1c2UgYSBjb25z aXN0ZW50IC5ydGVfY29uZmlnIGxvY2F0aW9uLCB3aGljaCBhbGxvd3Mgb3RoZXIgYXBwbGljYXRp b25zIHRvIG1vbml0b3IgdGhhdC4gRm9yIGV4YW1wbGUsIENvbGxlY3RkIGlzIGFibGUgdG8gbW9u aXRvciBhIERQREsgcHJpbWFyeSBwcm9jZXNzIGJ5IGNoZWNraW5nIGlmIHRoZSAucnRlX2NvbmZp ZyBmaWxlIGV4aXN0cyBhdCBpdHMgZGVmYXVsdCBsb2NhdGlvblsxXS4NCg0KSWYgd2UgY2hhbmdl IHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mIERQREssIG90aGVyIHByb2plY3RzIGNhbiBubyBsb25n ZXIgcmVseSBvbiB0aGF0IGZpbGUgYmVpbmcgY3JlYXRlZCwgYW5kIHRoZXNlIG1vbml0b3Jpbmcg cHJvamVjdHMgbXVzdCBiZSB1cGRhdGVkIGluIHN5bmMgd2l0aCBEUERLIHRvIGF2b2lkIGJyZWFr YWdlIGlmIHZlcnNpb25zIG1pc21hdGNoLg0KDQpBbHRob3VnaCBJIHNlZSB5b3VyIHVzZS1jYXNl LCBJIHRoaW5rIHVzaW5nIHRoZSAtLWZpbGUtcHJlZml4IGFzIEtvbnN0YW50aW4gc3VnZ2VzdHMg aXMgYSBiZXR0ZXIgc29sdXRpb24gaW4gdGhpcyBjYXNlLg0KDQpSZWdhcmRzLCAtSGFycnkNCg0K WzFdIGh0dHBzOi8vZ2l0aHViLmNvbS9jb2xsZWN0ZC9jb2xsZWN0ZC9ibG9iL21hc3Rlci9zcmMv ZHBka3N0YXQuYyNMNjANCg0KDQo+IE9uIFRodSwgT2N0IDEzLCAyMDE2IGF0IDM6NTMgQU0sIEFu YW55ZXYsIEtvbnN0YW50aW4gPA0KPiBrb25zdGFudGluLmFuYW55ZXZAaW50ZWwuY29tPiB3cm90 ZToNCj4NCj4gPg0KPiA+IEhpIEpvaG4sDQo+ID4NCj4gPiA+IEJlZm9yZSB0aGlzIHBhdGNoLCBE UERLIHVzZWQgdGhlIGZpbGUgfi8ucnRlX2NvbmZpZyBhcyBhIGxvY2sgdG8gZGV0ZWN0DQo+ID4g PiBwb3RlbnRpYWwgaW50ZXJmZXJlbmNlIGJldHdlZW4gbXVsdGlwbGUgRFBESyBhcHBsaWNhdGlv bnMgcnVubmluZyBvbiB0aGUNCj4gPiA+IHNhbWUgbWFjaGluZS4gSG93ZXZlciwgaWYgYSBzaW5n bGUgdXNlciByYW4gRFBESyBhcHBsaWNhdGlvbnMNCj4gPiBjb25jdXJyZW50bHkNCj4gPiA+IG9u IHNldmVyYWwgZGlmZmVyZW50IG1hY2hpbmVzLCBhbmQgaWYgdGhlIHVzZXIncyBob21lIGRpcmVj dG9yeSB3YXMNCj4gPiBzaGFyZWQNCj4gPiA+IGJldHdlZW4gdGhlIG1hY2hpbmVzIHZpYSBORlMs IERQREsgd291bGQgaW5jb3JyZWN0bHkgZGV0ZWN0IGNvbmZsaWN0cw0KPiA+ID4gZm9yIGFsbCBi dXQgdGhlIGZpcnN0IGFwcGxpY2F0aW9uIGFuZCBhYm9ydCB0aGVtLiBUaGlzIHBhdGNoIGZpeGVz IHRoZQ0KPiA+ID4gcHJvYmxlbSBieSBpbmNvcnBvcmF0aW5nIHRoZSBtYWNoaW5lIG5hbWUgaW50 byB0aGUgY29uZmlnIGZpbGUgbmFtZQ0KPiA+IChlLmcuLA0KPiA+ID4gfi8ucnRlX2hvc3RuYW1l X2NvbmZpZykuDQo+ID4gPg0KPiA+ID4gU2lnbmVkLW9mZi1ieTogSm9obiBPdXN0ZXJob3V0IDxv dXN0ZXJAY3Muc3RhbmZvcmQuZWR1Pg0KPiA+ID4gLS0tDQo+ID4gPsKgIGRvYy9ndWlkZXMvcHJv Z19ndWlkZS9tdWx0aV9wcm9jX3N1cHBvcnQucnN0IHwgMTEgKysrKysrKy0tLS0NCj4gPiA+wqAg bGliL2xpYnJ0ZV9lYWwvY29tbW9uL2VhbF9jb21tb25fcHJvYy5jwqAgwqAgwqAgfMKgIDggKyst LS0tLS0NCj4gPiA+wqAgbGliL2xpYnJ0ZV9lYWwvY29tbW9uL2VhbF9maWxlc3lzdGVtLmjCoCDC oCDCoCDCoHwgMTUgKysrKysrKysrKysrKy0tDQo+ID4gPsKgIDMgZmlsZXMgY2hhbmdlZCwgMjIg aW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pDQo+ID4gPg0KPiA+ID4gZGlmZiAtLWdpdCBh L2RvYy9ndWlkZXMvcHJvZ19ndWlkZS9tdWx0aV9wcm9jX3N1cHBvcnQucnN0DQo+ID4gYi9kb2Mv Z3VpZGVzL3Byb2dfZ3VpZGUvbXVsdGlfcHJvY19zdXBwb3J0LnJzdA0KPiA+ID4gaW5kZXggYmFk ZDEwMi4uYTU0ZmExYyAxMDA2NDQNCj4gPiA+IC0tLSBhL2RvYy9ndWlkZXMvcHJvZ19ndWlkZS9t dWx0aV9wcm9jX3N1cHBvcnQucnN0DQo+ID4gPiArKysgYi9kb2MvZ3VpZGVzL3Byb2dfZ3VpZGUv bXVsdGlfcHJvY19zdXBwb3J0LnJzdA0KPiA+ID4gQEAgLTEyOSwxMCArMTI5LDEzIEBAIFN1cHBv cnQgZm9yIHRoaXMgdXNhZ2Ugc2NlbmFyaW8gaXMgcHJvdmlkZWQgdXNpbmcNCj4gPiB0aGUgYGAt LWZpbGUtcHJlZml4YGAgcGFyYW1ldGUNCj4gPiA+DQo+ID4gPsKgIEJ5IGRlZmF1bHQsIHRoZSBF QUwgY3JlYXRlcyBodWdlcGFnZSBmaWxlcyBvbiBlYWNoIGh1Z2V0bGJmcyBmaWxlc3lzdGVtDQo+ ID4gdXNpbmcgdGhlIHJ0ZW1hcF9YIGZpbGVuYW1lLA0KPiA+ID7CoCB3aGVyZSBYIGlzIGluIHRo ZSByYW5nZSAwIHRvIHRoZSBtYXhpbXVtIG51bWJlciBvZiBodWdlcGFnZXMgLTEuDQo+ID4gPiAt U2ltaWxhcmx5LCBpdCBjcmVhdGVzIHNoYXJlZCBjb25maWd1cmF0aW9uIGZpbGVzLCBtZW1vcnkg bWFwcGVkIGluIGVhY2gNCj4gPiBwcm9jZXNzLCB1c2luZyB0aGUgL3Zhci9ydW4vLnJ0ZV9jb25m aWcgZmlsZW5hbWUsDQo+ID4gPiAtd2hlbiBydW4gYXMgcm9vdCAob3IgJEhPTUUvLnJ0ZV9jb25m aWcgd2hlbiBydW4gYXMgYSBub24tcm9vdCB1c2VyOw0KPiA+ID4gLWlmIGZpbGVzeXN0ZW0gYW5k IGRldmljZSBwZXJtaXNzaW9ucyBhcmUgc2V0IHVwIHRvIGFsbG93IHRoaXMpLg0KPiA+ID4gLVRo ZSBydGUgcGFydCBvZiB0aGUgZmlsZW5hbWVzIG9mIGVhY2ggb2YgdGhlIGFib3ZlIGlzIGNvbmZp Z3VyYWJsZQ0KPiA+IHVzaW5nIHRoZSBmaWxlLXByZWZpeCBwYXJhbWV0ZXIuDQo+ID4gPiArU2lt aWxhcmx5LCBpdCBjcmVhdGVzIHNoYXJlZCBjb25maWd1cmF0aW9uIGZpbGVzLCBtZW1vcnkgbWFw cGVkIGluIGVhY2gNCj4gPiBwcm9jZXNzLg0KPiA+ID4gK1doZW4gcnVuIGFzIHJvb3QsIHRoZSBu YW1lIG9mIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgd2lsbCBiZQ0KPiA+ID4gKy92YXIvcnVuLy5y dGVfKmhvc3QqX2NvbmZpZywgd2hlcmUgKmhvc3QqIGlzIHRoZSBuYW1lIG9mIHRoZSBtYWNoaW5l Lg0KPiA+ID4gK1doZW4gcnVuIGFzIGEgbm9uLXJvb3QgdXNlciwgdGhlIHRoZSBuYW1lIG9mIHRo ZSBjb25maWd1cmF0aW9uIGZpbGUNCj4gPiB3aWxsIGJlDQo+ID4gPiArJEhPTUUvLnJ0ZV8qaG9z dCpfY29uZmlnIChpZiBmaWxlc3lzdGVtIGFuZCBkZXZpY2UgcGVybWlzc2lvbnMgYXJlIHNldA0K PiA+IHVwIHRvIGFsbG93IHRoaXMpLg0KPiA+ID4gK0lmIHRoZSBgYC0tZmlsZS1wcmVmaXhgYCBw YXJhbWV0ZXIgaGFzIGJlZW4gc3BlY2lmaWVkLCBpdHMgdmFsdWUgd2lsbA0KPiA+IGJlIHVzZWQN Cj4gPiA+ICtpbiBwbGFjZSBvZiAicnRlIiBpbiB0aGUgZmlsZSBuYW1lcy4NCj4gPg0KPiA+IEkg YW0gbm90IHN1cmUgdGhhdCB3ZSBuZWVkIHRvIGhhbmRsZSBhbGwgc3VjaCBjYXNlcyBpbnNpZGUg RUFMLg0KPiA+IFVzZXIgY2FuIGVhc2lseSBvdmVyY29tZSB0aGF0IHByb2JsZW0gYnkganVzdCBh ZGRpbmcgc29tZXRoaW5nIGxpa2U6DQo+ID4gLS1maWxlLXByZWZpeD1gdW5hbWUgLW5gDQo+ID4g dG8gaGlzIGNvbW1hbmQtbGluZS4NCj4gPiBLb25zdGFudGluDQo+ID4NCj4gPiA+DQo+ID4gPsKg IEluIGFkZGl0aW9uIHRvIHNwZWNpZnlpbmcgdGhlIGZpbGUtcHJlZml4IHBhcmFtZXRlciwNCj4g PiA+wqAgYW55IERQREsgYXBwbGljYXRpb25zIHRoYXQgYXJlIHRvIGJlIHJ1biBzaWRlLWJ5LXNp ZGUgbXVzdCBleHBsaWNpdGx5DQo+ID4gbGltaXQgdGhlaXIgbWVtb3J5IHVzZS4NCj4gPiA+IGRp ZmYgLS1naXQgYS9saWIvbGlicnRlX2VhbC9jb21tb24vZWFsX2NvbW1vbl9wcm9jLmMNCj4gPiBi L2xpYi9saWJydGVfZWFsL2NvbW1vbi9lYWxfY29tbW9uX3Byb2MuYw0KPiA+ID4gaW5kZXggMTJl MGZjYS4uNTE3YWEwYyAxMDA2NDQNCj4gPiA+IC0tLSBhL2xpYi9saWJydGVfZWFsL2NvbW1vbi9l YWxfY29tbW9uX3Byb2MuYw0KPiA+ID4gKysrIGIvbGliL2xpYnJ0ZV9lYWwvY29tbW9uL2VhbF9j b21tb25fcHJvYy5jDQo+ID4gPiBAQCAtNDUsMTIgKzQ1LDggQEAgcnRlX2VhbF9wcmltYXJ5X3By b2NfYWxpdmUoY29uc3QgY2hhcg0KPiA+ICpjb25maWdfZmlsZV9wYXRoKQ0KPiA+ID4NCj4gPiA+ wqAgwqAgwqAgwqBpZiAoY29uZmlnX2ZpbGVfcGF0aCkNCj4gPiA+wqAgwqAgwqAgwqAgwqAgwqAg wqAgwqBjb25maWdfZmQgPSBvcGVuKGNvbmZpZ19maWxlX3BhdGgsIE9fUkRPTkxZKTsNCj4gPiA+ IC3CoCDCoCDCoGVsc2Ugew0KPiA+ID4gLcKgIMKgIMKgIMKgIMKgIMKgIMKgY2hhciBkZWZhdWx0 X3BhdGhbUEFUSF9NQVgrMV07DQo+ID4gPiAtwqAgwqAgwqAgwqAgwqAgwqAgwqBzbnByaW50Zihk ZWZhdWx0X3BhdGgsIFBBVEhfTUFYLCBSVU5USU1FX0NPTkZJR19GTVQsDQo+ID4gPiAtwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgZGVmYXVsdF9jb25maWdfZGlyLCAicnRlIik7DQo+ ID4gPiAtwqAgwqAgwqAgwqAgwqAgwqAgwqBjb25maWdfZmQgPSBvcGVuKGRlZmF1bHRfcGF0aCwg T19SRE9OTFkpOw0KPiA+ID4gLcKgIMKgIMKgfQ0KPiA+ID4gK8KgIMKgIMKgZWxzZQ0KPiA+ID4g K8KgIMKgIMKgIMKgIMKgIMKgIMKgY29uZmlnX2ZkID0gb3BlbihlYWxfcnVudGltZV9jb25maWdf cGF0aCgpLCBPX1JET05MWSk7DQo+ID4gPsKgIMKgIMKgIMKgaWYgKGNvbmZpZ19mZCA8IDApDQo+ ID4gPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgcmV0dXJuIDA7DQo+ID4gPg0KPiA+ID4gZGlmZiAt LWdpdCBhL2xpYi9saWJydGVfZWFsL2NvbW1vbi9lYWxfZmlsZXN5c3RlbS5oDQo+ID4gYi9saWIv bGlicnRlX2VhbC9jb21tb24vZWFsX2ZpbGVzeXN0ZW0uaA0KPiA+ID4gaW5kZXggZmRiNGE3MC4u NDkyOWFhMyAxMDA2NDQNCj4gPiA+IC0tLSBhL2xpYi9saWJydGVfZWFsL2NvbW1vbi9lYWxfZmls ZXN5c3RlbS5oDQo+ID4gPiArKysgYi9saWIvbGlicnRlX2VhbC9jb21tb24vZWFsX2ZpbGVzeXN0 ZW0uaA0KPiA+ID4gQEAgLTQxLDcgKzQxLDcgQEANCj4gPiA+wqAgI2RlZmluZSBFQUxfRklMRVNZ U1RFTV9IDQo+ID4gPg0KPiA+ID7CoCAvKiogUGF0aCBvZiBydGUgY29uZmlnIGZpbGUuICovDQo+ ID4gPiAtI2RlZmluZSBSVU5USU1FX0NPTkZJR19GTVQgIiVzLy4lc19jb25maWciDQo+ID4gPiAr I2RlZmluZSBSVU5USU1FX0NPTkZJR19GTVQgIiVzLy4lc18lc19jb25maWciDQo+ID4gPg0KPiA+ ID7CoCAjaW5jbHVkZSA8c3RkaW50Lmg+DQo+ID4gPsKgICNpbmNsdWRlIDxsaW1pdHMuaD4NCj4g PiA+IEBAIC01OSwxMSArNTksMjIgQEAgZWFsX3J1bnRpbWVfY29uZmlnX3BhdGgodm9pZCkNCj4g PiA+wqAgwqAgwqAgwqBzdGF0aWMgY2hhciBidWZmZXJbUEFUSF9NQVhdOyAvKiBzdGF0aWMgc28g YXV0by16ZXJvZWQgKi8NCj4gPiA+wqAgwqAgwqAgwqBjb25zdCBjaGFyICpkaXJlY3RvcnkgPSBk ZWZhdWx0X2NvbmZpZ19kaXI7DQo+ID4gPsKgIMKgIMKgIMKgY29uc3QgY2hhciAqaG9tZV9kaXIg PSBnZXRlbnYoIkhPTUUiKTsNCj4gPiA+ICvCoCDCoCDCoHN0YXRpYyBjaGFyIG5hbWVCdWZmZXJb MTAwMF07DQo+ID4gPiArwqAgwqAgwqBpbnQgcmVzdWx0Ow0KPiA+ID4NCj4gPiA+wqAgwqAgwqAg wqBpZiAoZ2V0dWlkKCkgIT0gMCAmJiBob21lX2RpciAhPSBOVUxMKQ0KPiA+ID7CoCDCoCDCoCDC oCDCoCDCoCDCoCDCoGRpcmVjdG9yeSA9IGhvbWVfZGlyOw0KPiA+ID4gKw0KPiA+ID4gK8KgIMKg IMKgLyoNCj4gPiA+ICvCoCDCoCDCoCAqIEluY2x1ZGUgdGhlIG5hbWUgb2YgdGhlIGhvc3QgaW4g dGhlIGNvbmZpZyBmaWxlIHBhdGguIE90aGVyd2lzZSwNCj4gPiA+ICvCoCDCoCDCoCAqIGlmIERQ REsgYXBwbGljYXRpb25zIHJ1biBvbiBkaWZmZXJlbnQgaG9zdHMgYnV0IHNoYXJlIGEgaG9tZQ0K PiA+ID4gK8KgIMKgIMKgICogZGlyZWN0b3J5IChlLmcuIHZpYSBORlMpLCB0aGV5IHdpbGwgY2hv b3NlIHRoZSBzYW1lIGNvbmZpZw0KPiA+ID4gK8KgIMKgIMKgICogZmlsZSBhbmQgY29uZmxpY3Qg dW5uZWNlc3NhcmlseS4NCj4gPiA+ICvCoCDCoCDCoCAqLw0KPiA+ID4gK8KgIMKgIMKgcmVzdWx0 ID0gZ2V0aG9zdG5hbWUobmFtZUJ1ZmZlciwgc2l6ZW9mKG5hbWVCdWZmZXIpLTEpOw0KPiA+ID7C oCDCoCDCoCDCoHNucHJpbnRmKGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlcikgLSAxLCBSVU5USU1FX0NP TkZJR19GTVQsIGRpcmVjdG9yeSwNCj4gPiA+IC3CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoGludGVybmFsX2NvbmZpZy5odWdlZmlsZV9wcmVmaXgpOw0KPiA+ID4gK8KgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgaW50ZXJuYWxfY29uZmlnLmh1Z2VmaWxlX3ByZWZpeCwNCj4g PiA+ICvCoCDCoCDCoCDCoCDCoCDCoCDCoChyZXN1bHQgPT0gMCkgPyBuYW1lQnVmZmVyIDogInVu a25vd24taG9zdCIpOw0KPiA+ID7CoCDCoCDCoCDCoHJldHVybiBidWZmZXI7DQo+ID4gPsKgIH0N Cj4gPiA+DQo+ID4gPiAtLQ0KPiA+ID4gMi44LjMNCj4gPg0KPiA+DQoNCg==