From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by gabe.freedesktop.org (Postfix) with ESMTPS id CBAF26E06B for ; Tue, 10 Sep 2019 12:27:48 +0000 (UTC) From: "Ser, Simon" Date: Tue, 10 Sep 2019 12:27:45 +0000 Message-ID: References: <20190905133647.24679-1-simon.ser@intel.com> <1b6a39d7-3d8a-90b7-523d-ce810f41e3b8@linux.intel.com> In-Reply-To: <1b6a39d7-3d8a-90b7-523d-ce810f41e3b8@linux.intel.com> Content-Language: en-US Content-ID: <78140E4B9C206142B46708A70B85D3E1@intel.com> MIME-Version: 1.0 Subject: Re: [igt-dev] [PATCH i-g-t] tests/kms_chamelium: add test descriptions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: "igt-dev@lists.freedesktop.org" , "martin.peres@linux.intel.com" List-ID: T24gRnJpLCAyMDE5LTA5LTA2IGF0IDE3OjIzICswMzAwLCBNYXJ0aW4gUGVyZXMgd3JvdGU6DQo+ IA0KPiBPbiAwNS8wOS8yMDE5IDE2OjM2LCBTaW1vbiBTZXIgd3JvdGU6DQo+ID4gQWRkIHRlc3Qg ZGVzY3JpcHRpb25zIHRvIGFsbCBzdWJ0ZXN0IGdyb3VwcyBhbmQgc3VidGVzdHMuDQo+ID4gDQo+ ID4gRWFjaCBjb25uZWN0b3IgdHlwZSBoYXMgaXRzIG93biBncm91cCwgd2l0aCBhIGRpZmZlcmVu dCBzZXQgb2YNCj4gPiBzdWJ0ZXN0cy4NCj4gPiBUbyBhdm9pZCBkdXBsaWNhdGlvbiwgZGVzY3Jp cHRpb25zIGFyZSBkZWZpbmVkIGF0IHRoZSB0ZXN0IGZ1bmN0aW9uDQo+ID4gbGV2ZWwuDQo+ID4g DQo+ID4gU2lnbmVkLW9mZi1ieTogU2ltb24gU2VyIDxzaW1vbi5zZXJAaW50ZWwuY29tPg0KPiA+ IC0tLQ0KPiA+ICB0ZXN0cy9rbXNfY2hhbWVsaXVtLmMgfCAxMjENCj4gPiArKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4gPiAgMSBmaWxlIGNoYW5nZWQsIDEyMSBp bnNlcnRpb25zKCspDQo+ID4gDQo+ID4gZGlmZiAtLWdpdCBhL3Rlc3RzL2ttc19jaGFtZWxpdW0u YyBiL3Rlc3RzL2ttc19jaGFtZWxpdW0uYw0KPiA+IGluZGV4IDZiNjI5MjQ5N2NkNy4uZmUzY2Jl NTdkYWYzIDEwMDY0NA0KPiA+IC0tLSBhL3Rlc3RzL2ttc19jaGFtZWxpdW0uYw0KPiA+ICsrKyBi L3Rlc3RzL2ttc19jaGFtZWxpdW0uYw0KPiA+IEBAIC0yNDIsNiArMjQyLDkgQEAgcmVzZXRfc3Rh dGUoZGF0YV90ICpkYXRhLCBzdHJ1Y3QgY2hhbWVsaXVtX3BvcnQNCj4gPiAqcG9ydCkNCj4gPiAg CX0NCj4gPiAgfQ0KPiA+IA0KPiA+ICtzdGF0aWMgY29uc3QgY2hhciB0ZXN0X2Jhc2ljX2hvdHBs dWdfZGVzY1tdID0NCj4gPiArCSJDaGVjayB0aGF0IHdlIGdldCB1ZXZlbnRzIGFuZCB1cGRhdGVk IGNvbm5lY3RvciBzdGF0dXMgb24gIg0KPiA+ICsJImhvdHBsdWcgYW5kIHVucGx1ZyI7DQo+ID4g IHN0YXRpYyB2b2lkDQo+ID4gIHRlc3RfYmFzaWNfaG90cGx1ZyhkYXRhX3QgKmRhdGEsIHN0cnVj dCBjaGFtZWxpdW1fcG9ydCAqcG9ydCwgaW50DQo+ID4gdG9nZ2xlX2NvdW50KQ0KPiA+ICB7DQo+ ID4gQEAgLTI5MCw2ICsyOTMsOCBAQCBzdGF0aWMgdm9pZCBzZXRfZWRpZChkYXRhX3QgKmRhdGEs IHN0cnVjdA0KPiA+IGNoYW1lbGl1bV9wb3J0ICpwb3J0LA0KPiA+ICAJY2hhbWVsaXVtX3BvcnRf c2V0X2VkaWQoZGF0YS0+Y2hhbWVsaXVtLCBwb3J0LCBkYXRhLQ0KPiA+ID5lZGlkc1tlZGlkXSk7 DQo+ID4gIH0NCj4gPiANCj4gPiArc3RhdGljIGNvbnN0IGNoYXIgdGVzdF9lZGlkX3JlYWRfZGVz Y1tdID0gIk1ha2Ugc3VyZSByZWFkaW5nIGENCj4gPiBzaW1wbGUgRURJRCAiDQo+ID4gKwkJCQkJ ICAiZ2l2ZXMgdGhlIGNvcnJlY3QgYmxvYiI7DQo+IA0KPiBXaGl0ZXNwYWNlIHByb2JsZW0/DQoN Cmh0dHBzOi8vc3IuaHQva2Q3dC5wbmcNCg0KSSBuZXZlciB1bmRlcnN0b29kIHdoeS4gTXkgZ3Vl c3MgaXMgdGhhdCB0aGUgIisiIGFkZGVkIGJ5IGdpdC1mb3JtYXQtDQpwYXRjaCBhbmQgdGhlICI+ ICIgYWRkZWQgd2hlbiByZXBseWluZyBicmVhayB0aGUgdGFiYmVkIGFsaWdubWVudC4NCg0KQW55 d2F5LCBJIGZpbmQgYWxpZ25pbmcgdGhpbmdzIHZlcnkgYW5ub3lpbmcgc28gdGhpcyBpcyBhIGdv b2QgZXhjdXNlDQp0byBqdXN0IGZvcm1hdCBpdCBsaWtlIG90aGVyIGRlc2NyaXB0aW9ucyB3aXRo IGEgc2luZ2xlIHRhYi4NCg0KPiBOb3Qgc3VyZSBpZiB0aGUgZGVzY3JpcHRpb24gaXMgY2xlYXIt ZW5vdWdoLiBIb3cgYWJvdXQgIk1ha2Ugc3VyZSB0aGUNCj4gcmVwb3J0ZWQgRURJRCBpcyB0aGUg c2FtZSBhcyB0aGUgc2NyZWVuJ3MiLg0KDQpHb29kIHBvaW50LiBDaGFuZ2VkIHRvOg0KDQogICAg Ik1ha2Ugc3VyZSB0aGUgRURJRCBleHBvc2VkIGJ5IEtNUyBpcyB0aGUgc2FtZSBhcyB0aGUgc2Ny ZWVuJ3MiDQoNCj4gPiAgc3RhdGljIHZvaWQNCj4gPiAgdGVzdF9lZGlkX3JlYWQoZGF0YV90ICpk YXRhLCBzdHJ1Y3QgY2hhbWVsaXVtX3BvcnQgKnBvcnQsIGVudW0NCj4gPiB0ZXN0X2VkaWQgZWRp ZCkNCj4gPiAgew0KPiA+IEBAIC00MDAsNiArNDA1LDkgQEAgdHJ5X3N1c3BlbmRfcmVzdW1lX2hw ZChkYXRhX3QgKmRhdGEsIHN0cnVjdA0KPiA+IGNoYW1lbGl1bV9wb3J0ICpwb3J0LA0KPiA+ICAJ fQ0KPiA+ICB9DQo+ID4gDQo+ID4gK3N0YXRpYyBjb25zdCBjaGFyIHRlc3Rfc3VzcGVuZF9yZXN1 bWVfaHBkX2Rlc2NbXSA9DQo+ID4gKwkiVG9nZ2xlIEhQRCBkdXJpbmcgc3VzcGVuZCwgY2hlY2sg dGhhdCB1ZXZlbnRzIGFyZSBzZW50IGFuZA0KPiA+IGNvbm5lY3RvciAiDQo+ID4gKwkic3RhdHVz IGlzIHVwZGF0ZWQiOw0KPiA+ICBzdGF0aWMgdm9pZA0KPiA+ICB0ZXN0X3N1c3BlbmRfcmVzdW1l X2hwZChkYXRhX3QgKmRhdGEsIHN0cnVjdCBjaGFtZWxpdW1fcG9ydCAqcG9ydCwNCj4gPiAgCQkJ ZW51bSBpZ3Rfc3VzcGVuZF9zdGF0ZSBzdGF0ZSwNCj4gPiBAQCAtNDE4LDYgKzQyNiw5IEBAIHRl c3Rfc3VzcGVuZF9yZXN1bWVfaHBkKGRhdGFfdCAqZGF0YSwgc3RydWN0DQo+ID4gY2hhbWVsaXVt X3BvcnQgKnBvcnQsDQo+ID4gIAlpZ3RfY2xlYW51cF9ob3RwbHVnKG1vbik7DQo+ID4gIH0NCj4g PiANCj4gPiArc3RhdGljIGNvbnN0IGNoYXIgdGVzdF9zdXNwZW5kX3Jlc3VtZV9ocGRfY29tbW9u X2Rlc2NbXSA9DQo+ID4gKwkiVG9nZ2xlIEhQRCBkdXJpbmcgc3VzcGVuZCBvbiBhbGwgY29ubmVj dG9ycywgY2hlY2sgdGhhdA0KPiA+IHVldmVudHMgYXJlICINCj4gPiArCSJzZW50IGFuZCBjb25u ZWN0b3Igc3RhdHVzIGlzIHVwZGF0ZWQiOw0KPiA+ICBzdGF0aWMgdm9pZA0KPiA+ICB0ZXN0X3N1 c3BlbmRfcmVzdW1lX2hwZF9jb21tb24oZGF0YV90ICpkYXRhLCBlbnVtDQo+ID4gaWd0X3N1c3Bl bmRfc3RhdGUgc3RhdGUsDQo+ID4gIAkJCSAgICAgICBlbnVtIGlndF9zdXNwZW5kX3Rlc3QgdGVz dCkNCj4gPiBAQCAtNDQyLDYgKzQ1MywxMCBAQCB0ZXN0X3N1c3BlbmRfcmVzdW1lX2hwZF9jb21t b24oZGF0YV90ICpkYXRhLA0KPiA+IGVudW0gaWd0X3N1c3BlbmRfc3RhdGUgc3RhdGUsDQo+ID4g IAlpZ3RfY2xlYW51cF9ob3RwbHVnKG1vbik7DQo+ID4gIH0NCj4gPiANCj4gPiArc3RhdGljIGNv bnN0IGNoYXIgdGVzdF9zdXNwZW5kX3Jlc3VtZV9lZGlkX2NoYW5nZV9kZXNjW10gPQ0KPiA+ICsJ IlNpbXVsYXRlIGEgc2NyZWVuIGJlaW5nIHVucGx1Z2dlZCBhbmQgYW5vdGhlciBzY3JlZW4gYmVp bmcNCj4gPiBwbHVnZ2VkICINCj4gPiArCSJkdXJpbmcgc3VzcGVuZCwgY2hlY2sgdGhhdCBhIHVl dmVudCBpcyBzZW50IGFuZCBjb25uZWN0b3INCj4gPiBzdGF0dXMgaXMgIg0KPiA+ICsJInVwZGF0 ZWQiOw0KPiA+ICBzdGF0aWMgdm9pZA0KPiA+ICB0ZXN0X3N1c3BlbmRfcmVzdW1lX2VkaWRfY2hh bmdlKGRhdGFfdCAqZGF0YSwgc3RydWN0DQo+ID4gY2hhbWVsaXVtX3BvcnQgKnBvcnQsDQo+ID4g IAkJCQllbnVtIGlndF9zdXNwZW5kX3N0YXRlIHN0YXRlLA0KPiA+IEBAIC02MDAsNiArNjE1LDEw IEBAIHN0YXRpYyBib29sIGFyZV9mYWxsYmFja19tb2Rlcyhjb25zdA0KPiA+IGRybU1vZGVNb2Rl SW5mbyAqbW9kZXMsIHNpemVfdCBtb2Rlc19sZW4pDQo+ID4gIAlyZXR1cm4gbW9kZXNbMF0uaGRp c3BsYXkgPD0gMTAyNCAmJiBtb2Rlc1swXS52ZGlzcGxheSA8PSA3Njg7DQo+ID4gIH0NCj4gPiAN Cj4gPiArc3RhdGljIGNvbnN0IGNoYXIgdGVzdF9saW5rX3N0YXR1c19kZXNjW10gPQ0KPiA+ICsJ IlNpbXVsYXRlIGEgc2VyaWVzIG9mIGxpbmsgZmFpbHVyZXMsIGNoZWNrIHdlIGdldCBhIHVldmVu dCBlYWNoDQo+ID4gdGltZSAiDQo+ID4gKwkid2l0aCB0aGUgbGluay1zdGF0dXMgcHJvcGVydHkg c2V0IHRvIEJBRCBhbmQgdGhlIGxpc3Qgb2YgbW9kZXMNCj4gPiAiDQo+ID4gKwkic2hyaW5rcyAo b3Igc3RheXMgdGhlIHNhbWUpLCB1bnRpbCB3ZSByZWFjaCBmYWxsYmFjayBtb2RlcyI7DQo+ID4g IHN0YXRpYyB2b2lkDQo+ID4gIHRlc3RfbGlua19zdGF0dXMoZGF0YV90ICpkYXRhLCBzdHJ1Y3Qg Y2hhbWVsaXVtX3BvcnQgKnBvcnQpDQo+ID4gIHsNCj4gPiBAQCAtODEyLDYgKzgzMSw5IEBAIHN0 YXRpYyB2b2lkIGRvX3Rlc3RfZGlzcGxheShkYXRhX3QgKmRhdGEsDQo+ID4gc3RydWN0IGNoYW1l bGl1bV9wb3J0ICpwb3J0LA0KPiA+ICAJaWd0X3JlbW92ZV9mYihkYXRhLT5kcm1fZmQsICZmYik7 DQo+ID4gIH0NCj4gPiANCj4gPiArc3RhdGljIGNvbnN0IGNoYXIgdGVzdF9kaXNwbGF5X29uZV9t b2RlX2Rlc2NbXSA9DQo+ID4gKwkiUGljayB0aGUgZmlyc3QgbW9kZSBvZiB0aGUgSUdUIGJhc2Ug RURJRCwgZGlzcGxheSBhbmQgY2FwdHVyZQ0KPiA+IGEgZmV3ICINCj4gPiArCSJmcmFtZXMsIHRo ZW4gY2hlY2sgY2FwdHVyZWQgZnJhbWVzIGFyZSBjb3JyZWN0IjsNCj4gDQo+IHMvY29ycmVjdC9o YXZlIHRoZSBleHBlY3RlZCBDUkMvLg0KDQpXZWxsLCB0aGF0J3Mgbm90IHF1aXRlIHJpZ2h0LiBT b21lIHRlc3RzIGNoZWNrIHRoZSBDUkMsIHNvbWUgdGVzdHMNCmRvd25sb2FkIHRoZSBmcmFtZSB0 byBjaGVjayBpdCB2aWEgQ0hBTUVMSVVNX0NIRUNLX0NIRUNLRVJCT0FSRCAoZS5nLg0KaGRtaS1j bXAtbnYxMikuDQoNCkkgZGlkbid0IHdhbnQgdG8gZG8gbW9yZSBmaW5lLWdyYWluZWQgZGVzY3Jp cHRpb25zLCBzbyBJIGp1c3Qgd2VudCB3aXRoDQpzb21ldGhpbmcgdmFndWUgZW5vdWdoLg0KDQo+ ID4gIHN0YXRpYyB2b2lkIHRlc3RfZGlzcGxheV9vbmVfbW9kZShkYXRhX3QgKmRhdGEsIHN0cnVj dA0KPiA+IGNoYW1lbGl1bV9wb3J0ICpwb3J0LA0KPiA+ICAJCQkJICB1aW50MzJfdCBmb3VyY2Ms IGVudW0gY2hhbWVsaXVtX2NoZWNrDQo+ID4gY2hlY2ssDQo+ID4gIAkJCQkgIGludCBjb3VudCkN Cj4gPiBAQCAtODQyLDYgKzg2NCw5IEBAIHN0YXRpYyB2b2lkIHRlc3RfZGlzcGxheV9vbmVfbW9k ZShkYXRhX3QgKmRhdGEsDQo+ID4gc3RydWN0IGNoYW1lbGl1bV9wb3J0ICpwb3J0LA0KPiA+ICAJ ZHJtTW9kZUZyZWVDb25uZWN0b3IoY29ubmVjdG9yKTsNCj4gPiAgfQ0KPiA+IA0KPiA+ICtzdGF0 aWMgY29uc3QgY2hhciB0ZXN0X2Rpc3BsYXlfYWxsX21vZGVzX2Rlc2NbXSA9DQo+ID4gKwkiRm9y IGVhY2ggbW9kZSBvZiB0aGUgSUdUIGJhc2UgRURJRCwgZGlzcGxheSBhbmQgY2FwdHVyZSBhIGZl dw0KPiA+ICINCj4gPiArCSJmcmFtZXMsIHRoZW4gY2hlY2sgY2FwdHVyZWQgZnJhbWVzIGFyZSBj b3JyZWN0IjsNCj4gDQo+IERpdHRvLg0KPiANCj4gPiAgc3RhdGljIHZvaWQgdGVzdF9kaXNwbGF5 X2FsbF9tb2RlcyhkYXRhX3QgKmRhdGEsIHN0cnVjdA0KPiA+IGNoYW1lbGl1bV9wb3J0ICpwb3J0 LA0KPiA+ICAJCQkJICAgdWludDMyX3QgZm91cmNjLCBlbnVtDQo+ID4gY2hhbWVsaXVtX2NoZWNr IGNoZWNrLA0KPiA+ICAJCQkJICAgaW50IGNvdW50KQ0KPiA+IEBAIC04NzYsNiArOTAxLDEwIEBA IHN0YXRpYyB2b2lkIHRlc3RfZGlzcGxheV9hbGxfbW9kZXMoZGF0YV90DQo+ID4gKmRhdGEsIHN0 cnVjdCBjaGFtZWxpdW1fcG9ydCAqcG9ydCwNCj4gPiAgCWRybU1vZGVGcmVlQ29ubmVjdG9yKGNv bm5lY3Rvcik7DQo+ID4gIH0NCj4gPiANCj4gPiArc3RhdGljIGNvbnN0IGNoYXIgdGVzdF9kaXNw bGF5X2ZyYW1lX2R1bXBfZGVzY1tdID0NCj4gPiArCSJGb3IgZWFjaCBtb2RlIG9mIHRoZSBJR1Qg YmFzZSBFRElELCBkaXNwbGF5IGFuZCBjYXB0dXJlIGEgZmV3DQo+ID4gIg0KPiA+ICsJImZyYW1l cywgdGhlbiBjaGVjayBjYXB0dXJlZCBmcmFtZXMgYXJlIHBpeGVsLWJ5LXBpeGVsIGVxdWFsIHRv DQo+ID4gIg0KPiA+ICsJInNlbnQgZnJhbWVzIjsNCj4gDQo+ICJ0aGVuIGRvd25sb2FkIHRoZSBm cmFtZSBhbmQgY29tcGFyZSB0aGVtIGJpdC1ieS1iaXQgdG8gdGhlIHNlbnQNCj4gZnJhbWVzLiIN Cg0KQWNrDQoNCj4gPiAgc3RhdGljIHZvaWQNCj4gPiAgdGVzdF9kaXNwbGF5X2ZyYW1lX2R1bXAo ZGF0YV90ICpkYXRhLCBzdHJ1Y3QgY2hhbWVsaXVtX3BvcnQgKnBvcnQpDQo+ID4gIHsNCj4gPiBA QCAtOTgzLDYgKzEwMTIsOSBAQCBzdGF0aWMgdm9pZCBjaGVja19tb2RlKHN0cnVjdCBjaGFtZWxp dW0NCj4gPiAqY2hhbWVsaXVtLCBzdHJ1Y3QgY2hhbWVsaXVtX3BvcnQgKnBvcnQsDQo+ID4gIAlp Z3RfYXNzZXJ0KHZpZGVvX3BhcmFtcy52c3luY19wb2xhcml0eSA9PSBtb2RlX3ZzeW5jX3BvbGFy aXR5KTsNCj4gPiAgfQ0KPiA+IA0KPiA+ICtzdGF0aWMgY29uc3QgY2hhciB0ZXN0X21vZGVfdGlt aW5nc19kZXNjW10gPQ0KPiA+ICsJIkZvciBlYWNoIG1vZGUgb2YgdGhlIElHVCBiYXNlIEVESUQs IHBlcmZvcm0gYSBtb2Rlc2V0IGFuZA0KPiA+IGNoZWNrIHRoZSAiDQo+ID4gKwkibW9kZSBkZXRl Y3RlZCBieSB0aGUgQ2hhbWVsaXVtIHJlY2VpdmVyIG1hdGNoZXMgdGhlIG1vZGUgd2UNCj4gPiBz ZXQiOw0KPiA+ICBzdGF0aWMgdm9pZCB0ZXN0X21vZGVfdGltaW5ncyhkYXRhX3QgKmRhdGEsIHN0 cnVjdCBjaGFtZWxpdW1fcG9ydA0KPiA+ICpwb3J0KQ0KPiA+ICB7DQo+ID4gIAlpZ3Rfb3V0cHV0 X3QgKm91dHB1dDsNCj4gPiBAQCAtMTExMyw2ICsxMTQ1LDEwIEBAIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgZWRpZA0KPiA+ICpnZXRfYXNwZWN0X3JhdGlvX2VkaWQodm9pZCkNCj4gPiAgCXJldHVybiBl ZGlkOw0KPiA+ICB9DQo+ID4gDQo+ID4gK3N0YXRpYyBjb25zdCBjaGFyIHRlc3RfZGlzcGxheV9h c3BlY3RfcmF0aW9fZGVzY1tdID0NCj4gPiArCSJQaWNrIGEgbW9kZSB3aXRoIGEgcGljdHVyZSBh c3BlY3QtcmF0aW8sIGNhcHR1cmUgQVZJDQo+ID4gSW5mb0ZyYW1lcyBhbmQgIg0KPiA+ICsJImNo ZWNrIHRoZSBJbmZvRnJhbWUgY29ycmVjdGx5IGluY2x1ZGVzIHRoZSBhc3BlY3QtcmF0aW8gYW5k DQo+ID4gVklDIHdlICINCj4gPiArCSJyZXF1ZXN0ZWQiOw0KPiANCj4gVGhhdCBtaWdodCBiZSBh IGJpdCB0b28gbXVjaCBvZiBkZXRhaWxzLiBIb3cgYWJvdXQgImluY2x1ZGVzIHRoZQ0KPiByZWxl dmFudCBmaWVsZHMiPw0KDQpHb29kIHBvaW50DQoNCj4gPiAgc3RhdGljIHZvaWQgdGVzdF9kaXNw bGF5X2FzcGVjdF9yYXRpbyhkYXRhX3QgKmRhdGEsIHN0cnVjdA0KPiA+IGNoYW1lbGl1bV9wb3J0 ICpwb3J0KQ0KPiA+ICB7DQo+ID4gIAlpZ3Rfb3V0cHV0X3QgKm91dHB1dDsNCj4gPiBAQCAtMTgy NSw2ICsxODYxLDkgQEAgc3RhdGljIGJvb2wgY2hlY2tfYXVkaW9fY29uZmlndXJhdGlvbihzdHJ1 Y3QNCj4gPiBhbHNhICphbHNhLCBzbmRfcGNtX2Zvcm1hdF90IGZvcm1hdA0KPiA+ICAJcmV0dXJu IHRydWU7DQo+ID4gIH0NCj4gPiANCj4gPiArc3RhdGljIGNvbnN0IGNoYXIgdGVzdF9kaXNwbGF5 X2F1ZGlvX2Rlc2NbXSA9DQo+ID4gKwkiUGxheWJhY2sgdmFyaW91cyBhdWRpbyBzaWduYWxzIHdp dGggdmFyaW91cyBhdWRpbw0KPiA+IGZvcm1hdHMvcmF0ZXMsICINCj4gPiArCSJjYXB0dXJlIHRo ZW0gYW5kIGNoZWNrIHRoZXkgYXJlIGNvcnJlY3QiOw0KPiA+ICBzdGF0aWMgdm9pZA0KPiA+ICB0 ZXN0X2Rpc3BsYXlfYXVkaW8oZGF0YV90ICpkYXRhLCBzdHJ1Y3QgY2hhbWVsaXVtX3BvcnQgKnBv cnQsDQo+ID4gIAkJICAgY29uc3QgY2hhciAqYXVkaW9fZGV2aWNlLCBlbnVtIHRlc3RfZWRpZCBl ZGlkKQ0KPiA+IEBAIC0xOTE0LDYgKzE5NTMsOSBAQCB0ZXN0X2Rpc3BsYXlfYXVkaW8oZGF0YV90 ICpkYXRhLCBzdHJ1Y3QNCj4gPiBjaGFtZWxpdW1fcG9ydCAqcG9ydCwNCj4gPiAgCWZyZWUoYWxz YSk7DQo+ID4gIH0NCj4gPiANCj4gPiArc3RhdGljIGNvbnN0IGNoYXIgdGVzdF9kaXNwbGF5X2F1 ZGlvX2VkaWRfZGVzY1tdID0NCj4gPiArCSJQbHVnIGEgY29ubmVjdG9yIHdpdGggYW4gRURJRCBz dWl0YWJsZSBmb3IgYXVkaW8sIGNoZWNrIEFMU0Encw0KPiA+ICINCj4gPiArCSJFRElELUxpa2Ug RGF0YSByZXBvcnRzIHRoZSBjb3JyZWN0IGF1ZGlvIHBhcmFtZXRlcnMiOw0KPiA+ICBzdGF0aWMg dm9pZA0KPiA+ICB0ZXN0X2Rpc3BsYXlfYXVkaW9fZWRpZChkYXRhX3QgKmRhdGEsIHN0cnVjdCBj aGFtZWxpdW1fcG9ydCAqcG9ydCwNCj4gPiAgCQkJZW51bSB0ZXN0X2VkaWQgZWRpZCkNCj4gPiBA QCAtMjMyNyw2ICsyMzY5LDkgQEAgc3RhdGljIHZvaWQgcHJlcGFyZV9yYW5kb21pemVkX3BsYW5l KGRhdGFfdA0KPiA+ICpkYXRhLA0KPiA+ICAJaWd0X3JlbW92ZV9mYihkYXRhLT5kcm1fZmQsICZw YXR0ZXJuX2ZiKTsNCj4gPiAgfQ0KPiA+IA0KPiA+ICtzdGF0aWMgY29uc3QgY2hhciB0ZXN0X2Rp c3BsYXlfcGxhbmVzX3JhbmRvbV9kZXNjW10gPQ0KPiA+ICsJIlNldHVwIGEgZmV3IG92ZXJsYXkg cGxhbmVzIHdpdGggcmFuZG9tIHBhcmFtZXRlcnMsIGNhcHR1cmUgdGhlDQo+ID4gZnJhbWUgIg0K PiA+ICsJImFuZCBjaGVjayBpdCdzIGNvcnJlY3QiOw0KPiANCj4gImFuZCBjaGVjayBpdCBtYXRj aGVzIHRoZSBleHBlY3RlZCBvdXRwdXQuIj8NCg0KQWNrDQoNCj4gPiAgc3RhdGljIHZvaWQgdGVz dF9kaXNwbGF5X3BsYW5lc19yYW5kb20oZGF0YV90ICpkYXRhLA0KPiA+ICAJCQkJICAgICAgIHN0 cnVjdCBjaGFtZWxpdW1fcG9ydCAqcG9ydCwNCj4gPiAgCQkJCSAgICAgICBlbnVtIGNoYW1lbGl1 bV9jaGVjayBjaGVjaykNCj4gPiBAQCAtMjQ2MCw2ICsyNTA1LDggQEAgc3RhdGljIHZvaWQgdGVz dF9kaXNwbGF5X3BsYW5lc19yYW5kb20oZGF0YV90DQo+ID4gKmRhdGEsDQo+ID4gIAlpZ3RfcmVt b3ZlX2ZiKGRhdGEtPmRybV9mZCwgJnJlc3VsdF9mYik7DQo+ID4gIH0NCj4gPiANCj4gPiArc3Rh dGljIGNvbnN0IGNoYXIgdGVzdF9ocGRfd2l0aG91dF9kZGNfZGVzY1tdID0NCj4gPiArCSJEaXNh YmxlIEREQyBvbiBhIFZHQSBjb25uZWN0b3IsIGNoZWNrIHdlIHN0aWxsIGdldCBhIHVldmVudCBv bg0KPiA+IGhvdHBsdWciOw0KPiA+ICBzdGF0aWMgdm9pZA0KPiA+ICB0ZXN0X2hwZF93aXRob3V0 X2RkYyhkYXRhX3QgKmRhdGEsIHN0cnVjdCBjaGFtZWxpdW1fcG9ydCAqcG9ydCkNCj4gPiAgew0K PiA+IEBAIC0yNDgwLDYgKzI1MjcsOSBAQCB0ZXN0X2hwZF93aXRob3V0X2RkYyhkYXRhX3QgKmRh dGEsIHN0cnVjdA0KPiA+IGNoYW1lbGl1bV9wb3J0ICpwb3J0KQ0KPiA+ICAJaWd0X2NsZWFudXBf aG90cGx1Zyhtb24pOw0KPiA+ICB9DQo+ID4gDQo+ID4gK3N0YXRpYyBjb25zdCBjaGFyIHRlc3Rf aHBkX3N0b3JtX2RldGVjdF9kZXNjW10gPQ0KPiA+ICsJIlRyaWdnZXIgYSBzZXJpZXMgb2YgaG90 cGx1Z3MgaW4gYSB2ZXJ5IHNtYWxsIHRpbWVmcmFtZSB0bw0KPiA+IHNpbXVsYXRlIGEiDQo+ID4g KwkiYmFkIGNhYmxlLCBjaGVjayB0aGUga2VybmVsIGZhbGxzIGJhY2sgdG8gcG9sbGluZyI7DQo+ IA0KPiAiZmFsbHMgYmFjayB0byBwb2xsaW5nIHRvIGF2b2lkIGFuIGlycSBzdG9ybSINCg0KaXJx IOKGkiBob3RwbHVnDQoNCkJ1dCB5ZXMsIGFjayA6KQ0KDQo+IFRoYW5rcyBhIGxvdCBmb3IgZG9p bmcgdGhpcyEgTXkgY29tbWVudHMgYXJlIG1lcmVseSBwcm9wb3NhbHMgZm9yDQo+IGltcHJvdmVt ZW50cywgc28gZmVlbCBmcmVlIHRvIGxhbmQgcHV0IG15IFItYiBldmVuIHdpdGhvdXQgY2hhbmdp bmcNCj4gYW55dGhpbmcuDQoNClRoYW5rcyBmb3IgdGhlIHN1Z2dlc3Rpb25zIQ0KDQo+IE1hcnRp bg0KPiANCj4gPiAgc3RhdGljIHZvaWQNCj4gPiAgdGVzdF9ocGRfc3Rvcm1fZGV0ZWN0KGRhdGFf dCAqZGF0YSwgc3RydWN0IGNoYW1lbGl1bV9wb3J0ICpwb3J0LA0KPiA+IGludCB3aWR0aCkNCj4g PiAgew0KPiA+IEBAIC0yNTA4LDYgKzI1NTgsOSBAQCB0ZXN0X2hwZF9zdG9ybV9kZXRlY3QoZGF0 YV90ICpkYXRhLCBzdHJ1Y3QNCj4gPiBjaGFtZWxpdW1fcG9ydCAqcG9ydCwgaW50IHdpZHRoKQ0K PiA+ICAJaWd0X2hwZF9zdG9ybV9yZXNldChkYXRhLT5kcm1fZmQpOw0KPiA+ICB9DQo+ID4gDQo+ ID4gK3N0YXRpYyBjb25zdCBjaGFyIHRlc3RfaHBkX3N0b3JtX2Rpc2FibGVfZGVzY1tdID0NCj4g PiArCSJEaXNhYmxlIEhQRCBzdG9ybSBkZXRlY3Rpb24sIHRyaWdnZXIgYSBzdG9ybSBhbmQgY2hl Y2sgdGhlDQo+ID4ga2VybmVsICINCj4gPiArCSJkb2Vzbid0IGRldGVjdCBvbmUiOw0KPiA+ICBz dGF0aWMgdm9pZA0KPiA+ICB0ZXN0X2hwZF9zdG9ybV9kaXNhYmxlKGRhdGFfdCAqZGF0YSwgc3Ry dWN0IGNoYW1lbGl1bV9wb3J0ICpwb3J0LA0KPiA+IGludCB3aWR0aCkNCj4gPiAgew0KPiA+IEBA IC0yNTUyLDYgKzI2MDUsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGVkaWQgKmdldF9lZGlkKGVu dW0NCj4gPiB0ZXN0X2VkaWQgZWRpZCkNCj4gPiANCj4gPiAgc3RhdGljIGRhdGFfdCBkYXRhOw0K PiA+IA0KPiA+ICtJR1RfVEVTVF9ERVNDUklQVElPTigiVGVzdHMgcmVxdWlyaW5nIGEgQ2hhbWVs aXVtIGJvYXJkIik7DQo+ID4gIGlndF9tYWluDQo+ID4gIHsNCj4gPiAgCXN0cnVjdCBjaGFtZWxp dW1fcG9ydCAqcG9ydDsNCj4gPiBAQCAtMjU4MCw0NiArMjYzNCw1NiBAQCBpZ3RfbWFpbg0KPiA+ ICAJCWlndF9yZXF1aXJlKGRhdGEuZGlzcGxheS5pc19hdG9taWMpOw0KPiA+ICAJfQ0KPiA+IA0K PiA+ICsJaWd0X2Rlc2NyaWJlKCJEaXNwbGF5UG9ydCB0ZXN0cyIpOw0KPiA+ICAJaWd0X3N1YnRl c3RfZ3JvdXAgew0KPiA+ICAJCWlndF9maXh0dXJlIHsNCj4gPiAgCQkJcmVxdWlyZV9jb25uZWN0 b3JfcHJlc2VudCgNCj4gPiAgCQkJICAgICZkYXRhLCBEUk1fTU9ERV9DT05ORUNUT1JfRGlzcGxh eVBvcnQpOw0KPiA+ICAJCX0NCj4gPiANCj4gPiArCQlpZ3RfZGVzY3JpYmUodGVzdF9iYXNpY19o b3RwbHVnX2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rvcl9zdWJ0ZXN0KCJkcC1ocGQiLCBEaXNwbGF5 UG9ydCkNCj4gPiAgCQkJdGVzdF9iYXNpY19ob3RwbHVnKCZkYXRhLCBwb3J0LA0KPiA+ICAJCQkJ CSAgIEhQRF9UT0dHTEVfQ09VTlRfRFBfSERNSSk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2NyaWJl KHRlc3RfYmFzaWNfaG90cGx1Z19kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3VidGVzdCgiZHAt aHBkLWZhc3QiLCBEaXNwbGF5UG9ydCkNCj4gPiAgCQkJdGVzdF9iYXNpY19ob3RwbHVnKCZkYXRh LCBwb3J0LA0KPiA+ICAJCQkJCSAgIEhQRF9UT0dHTEVfQ09VTlRfRkFTVCk7DQo+ID4gDQo+ID4g KwkJaWd0X2Rlc2NyaWJlKHRlc3RfZWRpZF9yZWFkX2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rvcl9z dWJ0ZXN0KCJkcC1lZGlkLXJlYWQiLCBEaXNwbGF5UG9ydCkgew0KPiA+ICAJCQl0ZXN0X2VkaWRf cmVhZCgmZGF0YSwgcG9ydCwgVEVTVF9FRElEX0JBU0UpOw0KPiA+ICAJCQl0ZXN0X2VkaWRfcmVh ZCgmZGF0YSwgcG9ydCwgVEVTVF9FRElEX0FMVCk7DQo+ID4gIAkJfQ0KPiA+IA0KPiA+ICsJCWln dF9kZXNjcmliZSh0ZXN0X3N1c3BlbmRfcmVzdW1lX2hwZF9kZXNjKTsNCj4gPiAgCQljb25uZWN0 b3Jfc3VidGVzdCgiZHAtaHBkLWFmdGVyLXN1c3BlbmQiLCBEaXNwbGF5UG9ydCkNCj4gPiAgCQkJ dGVzdF9zdXNwZW5kX3Jlc3VtZV9ocGQoJmRhdGEsIHBvcnQsDQo+ID4gIAkJCQkJCVNVU1BFTkRf U1RBVEVfTUVNLA0KPiA+ICAJCQkJCQlTVVNQRU5EX1RFU1RfTk9ORSk7DQo+ID4gDQo+ID4gKwkJ aWd0X2Rlc2NyaWJlKHRlc3Rfc3VzcGVuZF9yZXN1bWVfaHBkX2Rlc2MpOw0KPiA+ICAJCWNvbm5l Y3Rvcl9zdWJ0ZXN0KCJkcC1ocGQtYWZ0ZXItaGliZXJuYXRlIiwNCj4gPiBEaXNwbGF5UG9ydCkN Cj4gPiAgCQkJdGVzdF9zdXNwZW5kX3Jlc3VtZV9ocGQoJmRhdGEsIHBvcnQsDQo+ID4gIAkJCQkJ CVNVU1BFTkRfU1RBVEVfRElTSywNCj4gPiAgCQkJCQkJU1VTUEVORF9URVNUX0RFVklDRVMpOw0K PiA+IA0KPiA+ICsJCWlndF9kZXNjcmliZSh0ZXN0X2hwZF9zdG9ybV9kZXRlY3RfZGVzYyk7DQo+ ID4gIAkJY29ubmVjdG9yX3N1YnRlc3QoImRwLWhwZC1zdG9ybSIsIERpc3BsYXlQb3J0KQ0KPiA+ ICAJCQl0ZXN0X2hwZF9zdG9ybV9kZXRlY3QoJmRhdGEsIHBvcnQsDQo+ID4gIAkJCQkJICAgICAg SFBEX1NUT1JNX1BVTFNFX0lOVEVSVkFMXw0KPiA+IERQKTsNCj4gPiANCj4gPiArCQlpZ3RfZGVz Y3JpYmUodGVzdF9ocGRfc3Rvcm1fZGlzYWJsZV9kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3Vi dGVzdCgiZHAtaHBkLXN0b3JtLWRpc2FibGUiLCBEaXNwbGF5UG9ydCkNCj4gPiAgCQkJdGVzdF9o cGRfc3Rvcm1fZGlzYWJsZSgmZGF0YSwgcG9ydCwNCj4gPiAgCQkJCQkgICAgICAgSFBEX1NUT1JN X1BVTFNFX0lOVEVSVkFMDQo+ID4gX0RQKTsNCj4gPiANCj4gPiArCQlpZ3RfZGVzY3JpYmUodGVz dF9saW5rX3N0YXR1c19kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3VidGVzdCgiZHAtbGluay1z dGF0dXMiLCBEaXNwbGF5UG9ydCkNCj4gPiAgCQkJdGVzdF9saW5rX3N0YXR1cygmZGF0YSwgcG9y dCk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2NyaWJlKHRlc3Rfc3VzcGVuZF9yZXN1bWVfZWRpZF9j aGFuZ2VfZGVzYyk7DQo+ID4gIAkJY29ubmVjdG9yX3N1YnRlc3QoImRwLWVkaWQtY2hhbmdlLWR1 cmluZy1zdXNwZW5kIiwNCj4gPiBEaXNwbGF5UG9ydCkNCj4gPiAgCQkJdGVzdF9zdXNwZW5kX3Jl c3VtZV9lZGlkX2NoYW5nZSgmZGF0YSwgcG9ydCwNCj4gPiAgCQkJCQkJCVNVU1BFTkRfU1RBVEVf TQ0KPiA+IEVNLA0KPiA+IEBAIC0yNjI3LDYgKzI2OTEsNyBAQCBpZ3RfbWFpbg0KPiA+ICAJCQkJ CQkJVEVTVF9FRElEX0JBU0UsDQo+ID4gIAkJCQkJCQlURVNUX0VESURfQUxUKTsNCj4gPiANCj4g PiArCQlpZ3RfZGVzY3JpYmUodGVzdF9zdXNwZW5kX3Jlc3VtZV9lZGlkX2NoYW5nZV9kZXNjKTsN Cj4gPiAgCQljb25uZWN0b3Jfc3VidGVzdCgiZHAtZWRpZC1jaGFuZ2UtZHVyaW5nLWhpYmVybmF0 ZSIsDQo+ID4gRGlzcGxheVBvcnQpDQo+ID4gIAkJCXRlc3Rfc3VzcGVuZF9yZXN1bWVfZWRpZF9j aGFuZ2UoJmRhdGEsIHBvcnQsDQo+ID4gIAkJCQkJCQlTVVNQRU5EX1NUQVRFX0QNCj4gPiBJU0ss DQo+ID4gQEAgLTI2MzQsNzAgKzI2OTksODYgQEAgaWd0X21haW4NCj4gPiAgCQkJCQkJCVRFU1Rf RURJRF9CQVNFLA0KPiA+ICAJCQkJCQkJVEVTVF9FRElEX0FMVCk7DQo+ID4gDQo+ID4gKwkJaWd0 X2Rlc2NyaWJlKHRlc3RfZGlzcGxheV9hbGxfbW9kZXNfZGVzYyk7DQo+ID4gIAkJY29ubmVjdG9y X3N1YnRlc3QoImRwLWNyYy1zaW5nbGUiLCBEaXNwbGF5UG9ydCkNCj4gPiAgCQkJdGVzdF9kaXNw bGF5X2FsbF9tb2RlcygmZGF0YSwgcG9ydCwNCj4gPiBEUk1fRk9STUFUX1hSR0I4ODg4LA0KPiA+ ICAJCQkJCSAgICAgICBDSEFNRUxJVU1fQ0hFQ0tfQ1JDLCAxKTsNCj4gPiANCj4gPiArCQlpZ3Rf ZGVzY3JpYmUodGVzdF9kaXNwbGF5X29uZV9tb2RlX2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rvcl9z dWJ0ZXN0KCJkcC1jcmMtZmFzdCIsIERpc3BsYXlQb3J0KQ0KPiA+ICAJCQl0ZXN0X2Rpc3BsYXlf b25lX21vZGUoJmRhdGEsIHBvcnQsDQo+ID4gRFJNX0ZPUk1BVF9YUkdCODg4OCwNCj4gPiAgCQkJ CQkgICAgICBDSEFNRUxJVU1fQ0hFQ0tfQ1JDLCAxKTsNCj4gPiANCj4gPiArCQlpZ3RfZGVzY3Jp YmUodGVzdF9kaXNwbGF5X2FsbF9tb2Rlc19kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3VidGVz dCgiZHAtY3JjLW11bHRpcGxlIiwgRGlzcGxheVBvcnQpDQo+ID4gIAkJCXRlc3RfZGlzcGxheV9h bGxfbW9kZXMoJmRhdGEsIHBvcnQsDQo+ID4gRFJNX0ZPUk1BVF9YUkdCODg4OCwNCj4gPiAgCQkJ CQkgICAgICAgQ0hBTUVMSVVNX0NIRUNLX0NSQywgMyk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2Ny aWJlKHRlc3RfZGlzcGxheV9mcmFtZV9kdW1wX2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rvcl9zdWJ0 ZXN0KCJkcC1mcmFtZS1kdW1wIiwgRGlzcGxheVBvcnQpDQo+ID4gIAkJCXRlc3RfZGlzcGxheV9m cmFtZV9kdW1wKCZkYXRhLCBwb3J0KTsNCj4gPiANCj4gPiArCQlpZ3RfZGVzY3JpYmUodGVzdF9t b2RlX3RpbWluZ3NfZGVzYyk7DQo+ID4gIAkJY29ubmVjdG9yX3N1YnRlc3QoImRwLW1vZGUtdGlt aW5ncyIsIERpc3BsYXlQb3J0KQ0KPiA+ICAJCQl0ZXN0X21vZGVfdGltaW5ncygmZGF0YSwgcG9y dCk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2NyaWJlKHRlc3RfZGlzcGxheV9hdWRpb19kZXNjKTsN Cj4gPiAgCQljb25uZWN0b3Jfc3VidGVzdCgiZHAtYXVkaW8iLCBEaXNwbGF5UG9ydCkNCj4gPiAg CQkJdGVzdF9kaXNwbGF5X2F1ZGlvKCZkYXRhLCBwb3J0LCAiSERNSSIsDQo+ID4gIAkJCQkJICAg VEVTVF9FRElEX0RQX0FVRElPKTsNCj4gPiANCj4gPiArCQlpZ3RfZGVzY3JpYmUodGVzdF9kaXNw bGF5X2F1ZGlvX2VkaWRfZGVzYyk7DQo+ID4gIAkJY29ubmVjdG9yX3N1YnRlc3QoImRwLWF1ZGlv LWVkaWQiLCBEaXNwbGF5UG9ydCkNCj4gPiAgCQkJdGVzdF9kaXNwbGF5X2F1ZGlvX2VkaWQoJmRh dGEsIHBvcnQsDQo+ID4gIAkJCQkJCVRFU1RfRURJRF9EUF9BVURJTyk7DQo+ID4gIAl9DQo+ID4g DQo+ID4gKwlpZ3RfZGVzY3JpYmUoIkhETUkgdGVzdHMiKTsNCj4gPiAgCWlndF9zdWJ0ZXN0X2dy b3VwIHsNCj4gPiAgCQlpZ3RfZml4dHVyZSB7DQo+ID4gIAkJCXJlcXVpcmVfY29ubmVjdG9yX3By ZXNlbnQoDQo+ID4gIAkJCSAgICAmZGF0YSwgRFJNX01PREVfQ09OTkVDVE9SX0hETUlBKTsNCj4g PiAgCQl9DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2NyaWJlKHRlc3RfYmFzaWNfaG90cGx1Z19kZXNj KTsNCj4gPiAgCQljb25uZWN0b3Jfc3VidGVzdCgiaGRtaS1ocGQiLCBIRE1JQSkNCj4gPiAgCQkJ dGVzdF9iYXNpY19ob3RwbHVnKCZkYXRhLCBwb3J0LA0KPiA+ICAJCQkJCSAgIEhQRF9UT0dHTEVf Q09VTlRfRFBfSERNSSk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2NyaWJlKHRlc3RfYmFzaWNfaG90 cGx1Z19kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3VidGVzdCgiaGRtaS1ocGQtZmFzdCIsIEhE TUlBKQ0KPiA+ICAJCQl0ZXN0X2Jhc2ljX2hvdHBsdWcoJmRhdGEsIHBvcnQsDQo+ID4gIAkJCQkJ ICAgSFBEX1RPR0dMRV9DT1VOVF9GQVNUKTsNCj4gPiANCj4gPiArCQlpZ3RfZGVzY3JpYmUodGVz dF9lZGlkX3JlYWRfZGVzYyk7DQo+ID4gIAkJY29ubmVjdG9yX3N1YnRlc3QoImhkbWktZWRpZC1y ZWFkIiwgSERNSUEpIHsNCj4gPiAgCQkJdGVzdF9lZGlkX3JlYWQoJmRhdGEsIHBvcnQsIFRFU1Rf RURJRF9CQVNFKTsNCj4gPiAgCQkJdGVzdF9lZGlkX3JlYWQoJmRhdGEsIHBvcnQsIFRFU1RfRURJ RF9BTFQpOw0KPiA+ICAJCX0NCj4gPiANCj4gPiArCQlpZ3RfZGVzY3JpYmUodGVzdF9zdXNwZW5k X3Jlc3VtZV9ocGRfZGVzYyk7DQo+ID4gIAkJY29ubmVjdG9yX3N1YnRlc3QoImhkbWktaHBkLWFm dGVyLXN1c3BlbmQiLCBIRE1JQSkNCj4gPiAgCQkJdGVzdF9zdXNwZW5kX3Jlc3VtZV9ocGQoJmRh dGEsIHBvcnQsDQo+ID4gIAkJCQkJCVNVU1BFTkRfU1RBVEVfTUVNLA0KPiA+ICAJCQkJCQlTVVNQ RU5EX1RFU1RfTk9ORSk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2NyaWJlKHRlc3Rfc3VzcGVuZF9y ZXN1bWVfaHBkX2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rvcl9zdWJ0ZXN0KCJoZG1pLWhwZC1hZnRl ci1oaWJlcm5hdGUiLCBIRE1JQSkNCj4gPiAgCQkJdGVzdF9zdXNwZW5kX3Jlc3VtZV9ocGQoJmRh dGEsIHBvcnQsDQo+ID4gIAkJCQkJCVNVU1BFTkRfU1RBVEVfRElTSywNCj4gPiAgCQkJCQkJU1VT UEVORF9URVNUX0RFVklDRVMpOw0KPiA+IA0KPiA+ICsJCWlndF9kZXNjcmliZSh0ZXN0X2hwZF9z dG9ybV9kZXRlY3RfZGVzYyk7DQo+ID4gIAkJY29ubmVjdG9yX3N1YnRlc3QoImhkbWktaHBkLXN0 b3JtIiwgSERNSUEpDQo+ID4gIAkJCXRlc3RfaHBkX3N0b3JtX2RldGVjdCgmZGF0YSwgcG9ydCwN Cj4gPiAgCQkJCQkgICAgICBIUERfU1RPUk1fUFVMU0VfSU5URVJWQUxfDQo+ID4gSERNSSk7DQo+ ID4gDQo+ID4gKwkJaWd0X2Rlc2NyaWJlKHRlc3RfaHBkX3N0b3JtX2Rpc2FibGVfZGVzYyk7DQo+ ID4gIAkJY29ubmVjdG9yX3N1YnRlc3QoImhkbWktaHBkLXN0b3JtLWRpc2FibGUiLCBIRE1JQSkN Cj4gPiAgCQkJdGVzdF9ocGRfc3Rvcm1fZGlzYWJsZSgmZGF0YSwgcG9ydCwNCj4gPiAgCQkJCQkg ICAgICAgSFBEX1NUT1JNX1BVTFNFX0lOVEVSVkFMDQo+ID4gX0hETUkpOw0KPiA+IA0KPiA+ICsJ CWlndF9kZXNjcmliZSh0ZXN0X3N1c3BlbmRfcmVzdW1lX2VkaWRfY2hhbmdlX2Rlc2MpOw0KPiA+ ICAJCWNvbm5lY3Rvcl9zdWJ0ZXN0KCJoZG1pLWVkaWQtY2hhbmdlLWR1cmluZy1zdXNwZW5kIiwN Cj4gPiBIRE1JQSkNCj4gPiAgCQkJdGVzdF9zdXNwZW5kX3Jlc3VtZV9lZGlkX2NoYW5nZSgmZGF0 YSwgcG9ydCwNCj4gPiAgCQkJCQkJCVNVU1BFTkRfU1RBVEVfTQ0KPiA+IEVNLA0KPiA+IEBAIC0y NzA1LDYgKzI3ODYsNyBAQCBpZ3RfbWFpbg0KPiA+ICAJCQkJCQkJVEVTVF9FRElEX0JBU0UsDQo+ ID4gIAkJCQkJCQlURVNUX0VESURfQUxUKTsNCj4gPiANCj4gPiArCQlpZ3RfZGVzY3JpYmUodGVz dF9zdXNwZW5kX3Jlc3VtZV9lZGlkX2NoYW5nZV9kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3Vi dGVzdCgiaGRtaS1lZGlkLWNoYW5nZS1kdXJpbmctaGliZXJuYXRlIiwNCj4gPiBIRE1JQSkNCj4g PiAgCQkJdGVzdF9zdXNwZW5kX3Jlc3VtZV9lZGlkX2NoYW5nZSgmZGF0YSwgcG9ydCwNCj4gPiAg CQkJCQkJCVNVU1BFTkRfU1RBVEVfRA0KPiA+IElTSywNCj4gPiBAQCAtMjcxMiwxNTcgKzI3OTQs MTk2IEBAIGlndF9tYWluDQo+ID4gIAkJCQkJCQlURVNUX0VESURfQkFTRSwNCj4gPiAgCQkJCQkJ CVRFU1RfRURJRF9BTFQpOw0KPiA+IA0KPiA+ICsJCWlndF9kZXNjcmliZSh0ZXN0X2Rpc3BsYXlf YWxsX21vZGVzX2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rvcl9zdWJ0ZXN0KCJoZG1pLWNyYy1zaW5n bGUiLCBIRE1JQSkNCj4gPiAgCQkJdGVzdF9kaXNwbGF5X2FsbF9tb2RlcygmZGF0YSwgcG9ydCwN Cj4gPiBEUk1fRk9STUFUX1hSR0I4ODg4LA0KPiA+ICAJCQkJCSAgICAgICBDSEFNRUxJVU1fQ0hF Q0tfQ1JDLCAxKTsNCj4gPiANCj4gPiArCQlpZ3RfZGVzY3JpYmUodGVzdF9kaXNwbGF5X29uZV9t b2RlX2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rvcl9zdWJ0ZXN0KCJoZG1pLWNyYy1mYXN0IiwgSERN SUEpDQo+ID4gIAkJCXRlc3RfZGlzcGxheV9vbmVfbW9kZSgmZGF0YSwgcG9ydCwNCj4gPiBEUk1f Rk9STUFUX1hSR0I4ODg4LA0KPiA+ICAJCQkJCSAgICAgIENIQU1FTElVTV9DSEVDS19DUkMsIDEp Ow0KPiA+IA0KPiA+ICsJCWlndF9kZXNjcmliZSh0ZXN0X2Rpc3BsYXlfYWxsX21vZGVzX2Rlc2Mp Ow0KPiA+ICAJCWNvbm5lY3Rvcl9zdWJ0ZXN0KCJoZG1pLWNyYy1tdWx0aXBsZSIsIEhETUlBKQ0K PiA+ICAJCQl0ZXN0X2Rpc3BsYXlfYWxsX21vZGVzKCZkYXRhLCBwb3J0LA0KPiA+IERSTV9GT1JN QVRfWFJHQjg4ODgsDQo+ID4gIAkJCQkJICAgICAgIENIQU1FTElVTV9DSEVDS19DUkMsIDMpOw0K PiA+IA0KPiA+ICsJCWlndF9kZXNjcmliZSh0ZXN0X2Rpc3BsYXlfb25lX21vZGVfZGVzYyk7DQo+ ID4gIAkJY29ubmVjdG9yX3N1YnRlc3QoImhkbWktY3JjLWFyZ2I4ODg4IiwgSERNSUEpDQo+ID4g IAkJCXRlc3RfZGlzcGxheV9vbmVfbW9kZSgmZGF0YSwgcG9ydCwNCj4gPiBEUk1fRk9STUFUX0FS R0I4ODg4LA0KPiA+ICAJCQkJCSAgICAgIENIQU1FTElVTV9DSEVDS19DUkMsIDEpOw0KPiA+IA0K PiA+ICsJCWlndF9kZXNjcmliZSh0ZXN0X2Rpc3BsYXlfb25lX21vZGVfZGVzYyk7DQo+ID4gIAkJ Y29ubmVjdG9yX3N1YnRlc3QoImhkbWktY3JjLWFiZ3I4ODg4IiwgSERNSUEpDQo+ID4gIAkJCXRl c3RfZGlzcGxheV9vbmVfbW9kZSgmZGF0YSwgcG9ydCwNCj4gPiBEUk1fRk9STUFUX0FCR1I4ODg4 LA0KPiA+ICAJCQkJCSAgICAgIENIQU1FTElVTV9DSEVDS19DUkMsIDEpOw0KPiA+IA0KPiA+ICsJ CWlndF9kZXNjcmliZSh0ZXN0X2Rpc3BsYXlfb25lX21vZGVfZGVzYyk7DQo+ID4gIAkJY29ubmVj dG9yX3N1YnRlc3QoImhkbWktY3JjLXhyZ2I4ODg4IiwgSERNSUEpDQo+ID4gIAkJCXRlc3RfZGlz cGxheV9vbmVfbW9kZSgmZGF0YSwgcG9ydCwNCj4gPiBEUk1fRk9STUFUX1hSR0I4ODg4LA0KPiA+ ICAJCQkJCSAgICAgIENIQU1FTElVTV9DSEVDS19DUkMsIDEpOw0KPiA+IA0KPiA+ICsJCWlndF9k ZXNjcmliZSh0ZXN0X2Rpc3BsYXlfb25lX21vZGVfZGVzYyk7DQo+ID4gIAkJY29ubmVjdG9yX3N1 YnRlc3QoImhkbWktY3JjLXhiZ3I4ODg4IiwgSERNSUEpDQo+ID4gIAkJCXRlc3RfZGlzcGxheV9v bmVfbW9kZSgmZGF0YSwgcG9ydCwNCj4gPiBEUk1fRk9STUFUX1hCR1I4ODg4LA0KPiA+ICAJCQkJ CSAgICAgIENIQU1FTElVTV9DSEVDS19DUkMsIDEpOw0KPiA+IA0KPiA+ICsJCWlndF9kZXNjcmli ZSh0ZXN0X2Rpc3BsYXlfb25lX21vZGVfZGVzYyk7DQo+ID4gIAkJY29ubmVjdG9yX3N1YnRlc3Qo ImhkbWktY3JjLXJnYjg4OCIsIEhETUlBKQ0KPiA+ICAJCQl0ZXN0X2Rpc3BsYXlfb25lX21vZGUo JmRhdGEsIHBvcnQsDQo+ID4gRFJNX0ZPUk1BVF9SR0I4ODgsDQo+ID4gIAkJCQkJICAgICAgQ0hB TUVMSVVNX0NIRUNLX0NSQywgMSk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2NyaWJlKHRlc3RfZGlz cGxheV9vbmVfbW9kZV9kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3VidGVzdCgiaGRtaS1jcmMt YmdyODg4IiwgSERNSUEpDQo+ID4gIAkJCXRlc3RfZGlzcGxheV9vbmVfbW9kZSgmZGF0YSwgcG9y dCwNCj4gPiBEUk1fRk9STUFUX0JHUjg4OCwNCj4gPiAgCQkJCQkgICAgICBDSEFNRUxJVU1fQ0hF Q0tfQ1JDLCAxKTsNCj4gPiANCj4gPiArCQlpZ3RfZGVzY3JpYmUodGVzdF9kaXNwbGF5X29uZV9t b2RlX2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rvcl9zdWJ0ZXN0KCJoZG1pLWNyYy1yZ2I1NjUiLCBI RE1JQSkNCj4gPiAgCQkJdGVzdF9kaXNwbGF5X29uZV9tb2RlKCZkYXRhLCBwb3J0LA0KPiA+IERS TV9GT1JNQVRfUkdCNTY1LA0KPiA+ICAJCQkJCSAgICAgIENIQU1FTElVTV9DSEVDS19DUkMsIDEp Ow0KPiA+IA0KPiA+ICsJCWlndF9kZXNjcmliZSh0ZXN0X2Rpc3BsYXlfb25lX21vZGVfZGVzYyk7 DQo+ID4gIAkJY29ubmVjdG9yX3N1YnRlc3QoImhkbWktY3JjLWJncjU2NSIsIEhETUlBKQ0KPiA+ ICAJCQl0ZXN0X2Rpc3BsYXlfb25lX21vZGUoJmRhdGEsIHBvcnQsDQo+ID4gRFJNX0ZPUk1BVF9C R1I1NjUsDQo+ID4gIAkJCQkJICAgICAgQ0hBTUVMSVVNX0NIRUNLX0NSQywgMSk7DQo+ID4gDQo+ ID4gKwkJaWd0X2Rlc2NyaWJlKHRlc3RfZGlzcGxheV9vbmVfbW9kZV9kZXNjKTsNCj4gPiAgCQlj b25uZWN0b3Jfc3VidGVzdCgiaGRtaS1jcmMtYXJnYjE1NTUiLCBIRE1JQSkNCj4gPiAgCQkJdGVz dF9kaXNwbGF5X29uZV9tb2RlKCZkYXRhLCBwb3J0LA0KPiA+IERSTV9GT1JNQVRfQVJHQjE1NTUs DQo+ID4gIAkJCQkJICAgICAgQ0hBTUVMSVVNX0NIRUNLX0NSQywgMSk7DQo+ID4gDQo+ID4gKwkJ aWd0X2Rlc2NyaWJlKHRlc3RfZGlzcGxheV9vbmVfbW9kZV9kZXNjKTsNCj4gPiAgCQljb25uZWN0 b3Jfc3VidGVzdCgiaGRtaS1jcmMteHJnYjE1NTUiLCBIRE1JQSkNCj4gPiAgCQkJdGVzdF9kaXNw bGF5X29uZV9tb2RlKCZkYXRhLCBwb3J0LA0KPiA+IERSTV9GT1JNQVRfWFJHQjE1NTUsDQo+ID4g IAkJCQkJICAgICAgQ0hBTUVMSVVNX0NIRUNLX0NSQywgMSk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rl c2NyaWJlKHRlc3RfZGlzcGxheV9wbGFuZXNfcmFuZG9tX2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rv cl9zdWJ0ZXN0KCJoZG1pLWNyYy1wbGFuZXMtcmFuZG9tIiwgSERNSUEpDQo+ID4gIAkJCXRlc3Rf ZGlzcGxheV9wbGFuZXNfcmFuZG9tKCZkYXRhLCBwb3J0LA0KPiA+ICAJCQkJCQkgICBDSEFNRUxJ VU1fQ0hFQ0tfQ1JDKQ0KPiA+IDsNCj4gPiANCj4gPiArCQlpZ3RfZGVzY3JpYmUodGVzdF9kaXNw bGF5X29uZV9tb2RlX2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rvcl9zdWJ0ZXN0KCJoZG1pLWNtcC1u djEyIiwgSERNSUEpDQo+ID4gIAkJCXRlc3RfZGlzcGxheV9vbmVfbW9kZSgmZGF0YSwgcG9ydCwN Cj4gPiBEUk1fRk9STUFUX05WMTIsDQo+ID4gIAkJCQkJICAgICAgQ0hBTUVMSVVNX0NIRUNLX0NI RUNLRVJCTw0KPiA+IEFSRCwgMSk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2NyaWJlKHRlc3RfZGlz cGxheV9vbmVfbW9kZV9kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3VidGVzdCgiaGRtaS1jbXAt bnYxNiIsIEhETUlBKQ0KPiA+ICAJCQl0ZXN0X2Rpc3BsYXlfb25lX21vZGUoJmRhdGEsIHBvcnQs DQo+ID4gRFJNX0ZPUk1BVF9OVjE2LA0KPiA+ICAJCQkJCSAgICAgIENIQU1FTElVTV9DSEVDS19D SEVDS0VSQk8NCj4gPiBBUkQsIDEpOw0KPiA+IA0KPiA+ICsJCWlndF9kZXNjcmliZSh0ZXN0X2Rp c3BsYXlfb25lX21vZGVfZGVzYyk7DQo+ID4gIAkJY29ubmVjdG9yX3N1YnRlc3QoImhkbWktY21w LW52MjEiLCBIRE1JQSkNCj4gPiAgCQkJdGVzdF9kaXNwbGF5X29uZV9tb2RlKCZkYXRhLCBwb3J0 LA0KPiA+IERSTV9GT1JNQVRfTlYyMSwNCj4gPiAgCQkJCQkgICAgICBDSEFNRUxJVU1fQ0hFQ0tf Q0hFQ0tFUkJPDQo+ID4gQVJELCAxKTsNCj4gPiANCj4gPiArCQlpZ3RfZGVzY3JpYmUodGVzdF9k aXNwbGF5X29uZV9tb2RlX2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rvcl9zdWJ0ZXN0KCJoZG1pLWNt cC1udjYxIiwgSERNSUEpDQo+ID4gIAkJCXRlc3RfZGlzcGxheV9vbmVfbW9kZSgmZGF0YSwgcG9y dCwNCj4gPiBEUk1fRk9STUFUX05WNjEsDQo+ID4gIAkJCQkJICAgICAgQ0hBTUVMSVVNX0NIRUNL X0NIRUNLRVJCTw0KPiA+IEFSRCwgMSk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2NyaWJlKHRlc3Rf ZGlzcGxheV9vbmVfbW9kZV9kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3VidGVzdCgiaGRtaS1j bXAteXUxMiIsIEhETUlBKQ0KPiA+ICAJCQl0ZXN0X2Rpc3BsYXlfb25lX21vZGUoJmRhdGEsIHBv cnQsDQo+ID4gRFJNX0ZPUk1BVF9ZVVY0MjAsDQo+ID4gIAkJCQkJICAgICAgQ0hBTUVMSVVNX0NI RUNLX0NIRUNLRVJCTw0KPiA+IEFSRCwgMSk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2NyaWJlKHRl c3RfZGlzcGxheV9vbmVfbW9kZV9kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3VidGVzdCgiaGRt aS1jbXAteXUxNiIsIEhETUlBKQ0KPiA+ICAJCQl0ZXN0X2Rpc3BsYXlfb25lX21vZGUoJmRhdGEs IHBvcnQsDQo+ID4gRFJNX0ZPUk1BVF9ZVVY0MjIsDQo+ID4gIAkJCQkJICAgICAgQ0hBTUVMSVVN X0NIRUNLX0NIRUNLRVJCTw0KPiA+IEFSRCwgMSk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2NyaWJl KHRlc3RfZGlzcGxheV9vbmVfbW9kZV9kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3VidGVzdCgi aGRtaS1jbXAteXYxMiIsIEhETUlBKQ0KPiA+ICAJCQl0ZXN0X2Rpc3BsYXlfb25lX21vZGUoJmRh dGEsIHBvcnQsDQo+ID4gRFJNX0ZPUk1BVF9ZVlU0MjAsDQo+ID4gIAkJCQkJICAgICAgQ0hBTUVM SVVNX0NIRUNLX0NIRUNLRVJCTw0KPiA+IEFSRCwgMSk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2Ny aWJlKHRlc3RfZGlzcGxheV9vbmVfbW9kZV9kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3VidGVz dCgiaGRtaS1jbXAteXYxNiIsIEhETUlBKQ0KPiA+ICAJCQl0ZXN0X2Rpc3BsYXlfb25lX21vZGUo JmRhdGEsIHBvcnQsDQo+ID4gRFJNX0ZPUk1BVF9ZVlU0MjIsDQo+ID4gIAkJCQkJICAgICAgQ0hB TUVMSVVNX0NIRUNLX0NIRUNLRVJCTw0KPiA+IEFSRCwgMSk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rl c2NyaWJlKHRlc3RfZGlzcGxheV9wbGFuZXNfcmFuZG9tX2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rv cl9zdWJ0ZXN0KCJoZG1pLWNtcC1wbGFuZXMtcmFuZG9tIiwgSERNSUEpDQo+ID4gIAkJCXRlc3Rf ZGlzcGxheV9wbGFuZXNfcmFuZG9tKCZkYXRhLCBwb3J0LA0KPiA+ICAJCQkJCQkgICBDSEFNRUxJ VU1fQ0hFQ0tfQ0hFQw0KPiA+IEtFUkJPQVJEKTsNCj4gPiANCj4gPiArCQlpZ3RfZGVzY3JpYmUo dGVzdF9kaXNwbGF5X2ZyYW1lX2R1bXBfZGVzYyk7DQo+ID4gIAkJY29ubmVjdG9yX3N1YnRlc3Qo ImhkbWktZnJhbWUtZHVtcCIsIEhETUlBKQ0KPiA+ICAJCQl0ZXN0X2Rpc3BsYXlfZnJhbWVfZHVt cCgmZGF0YSwgcG9ydCk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2NyaWJlKHRlc3RfbW9kZV90aW1p bmdzX2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rvcl9zdWJ0ZXN0KCJoZG1pLW1vZGUtdGltaW5ncyIs IEhETUlBKQ0KPiA+ICAJCQl0ZXN0X21vZGVfdGltaW5ncygmZGF0YSwgcG9ydCk7DQo+ID4gDQo+ ID4gKwkJaWd0X2Rlc2NyaWJlKHRlc3RfZGlzcGxheV9hdWRpb19kZXNjKTsNCj4gPiAgCQljb25u ZWN0b3Jfc3VidGVzdCgiaGRtaS1hdWRpbyIsIEhETUlBKQ0KPiA+ICAJCQl0ZXN0X2Rpc3BsYXlf YXVkaW8oJmRhdGEsIHBvcnQsICJIRE1JIiwNCj4gPiAgCQkJCQkgICBURVNUX0VESURfSERNSV9B VURJTyk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2NyaWJlKHRlc3RfZGlzcGxheV9hdWRpb19lZGlk X2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rvcl9zdWJ0ZXN0KCJoZG1pLWF1ZGlvLWVkaWQiLCBIRE1J QSkNCj4gPiAgCQkJdGVzdF9kaXNwbGF5X2F1ZGlvX2VkaWQoJmRhdGEsIHBvcnQsDQo+ID4gIAkJ CQkJCVRFU1RfRURJRF9IRE1JX0FVRElPKTsNCj4gPiANCj4gPiArCQlpZ3RfZGVzY3JpYmUodGVz dF9kaXNwbGF5X2FzcGVjdF9yYXRpb19kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3VidGVzdCgi aGRtaS1hc3BlY3QtcmF0aW8iLCBIRE1JQSkNCj4gPiAgCQkJdGVzdF9kaXNwbGF5X2FzcGVjdF9y YXRpbygmZGF0YSwgcG9ydCk7DQo+ID4gIAl9DQo+ID4gDQo+ID4gKwlpZ3RfZGVzY3JpYmUoIlZH QSB0ZXN0cyIpOw0KPiA+ICAJaWd0X3N1YnRlc3RfZ3JvdXAgew0KPiA+ICAJCWlndF9maXh0dXJl IHsNCj4gPiAgCQkJcmVxdWlyZV9jb25uZWN0b3JfcHJlc2VudCgNCj4gPiAgCQkJICAgICZkYXRh LCBEUk1fTU9ERV9DT05ORUNUT1JfVkdBKTsNCj4gPiAgCQl9DQo+ID4gDQo+ID4gKwkJaWd0X2Rl c2NyaWJlKHRlc3RfYmFzaWNfaG90cGx1Z19kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3VidGVz dCgidmdhLWhwZCIsIFZHQSkNCj4gPiAgCQkJdGVzdF9iYXNpY19ob3RwbHVnKCZkYXRhLCBwb3J0 LA0KPiA+IEhQRF9UT0dHTEVfQ09VTlRfVkdBKTsNCj4gPiANCj4gPiArCQlpZ3RfZGVzY3JpYmUo dGVzdF9iYXNpY19ob3RwbHVnX2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rvcl9zdWJ0ZXN0KCJ2Z2Et aHBkLWZhc3QiLCBWR0EpDQo+ID4gIAkJCXRlc3RfYmFzaWNfaG90cGx1ZygmZGF0YSwgcG9ydCwN Cj4gPiBIUERfVE9HR0xFX0NPVU5UX0ZBU1QpOw0KPiA+IA0KPiA+ICsJCWlndF9kZXNjcmliZSh0 ZXN0X2VkaWRfcmVhZF9kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3VidGVzdCgidmdhLWVkaWQt cmVhZCIsIFZHQSkgew0KPiA+ICAJCQl0ZXN0X2VkaWRfcmVhZCgmZGF0YSwgcG9ydCwgVEVTVF9F RElEX0JBU0UpOw0KPiA+ICAJCQl0ZXN0X2VkaWRfcmVhZCgmZGF0YSwgcG9ydCwgVEVTVF9FRElE X0FMVCk7DQo+ID4gIAkJfQ0KPiA+IA0KPiA+ICsJCWlndF9kZXNjcmliZSh0ZXN0X3N1c3BlbmRf cmVzdW1lX2hwZF9kZXNjKTsNCj4gPiAgCQljb25uZWN0b3Jfc3VidGVzdCgidmdhLWhwZC1hZnRl ci1zdXNwZW5kIiwgVkdBKQ0KPiA+ICAJCQl0ZXN0X3N1c3BlbmRfcmVzdW1lX2hwZCgmZGF0YSwg cG9ydCwNCj4gPiAgCQkJCQkJU1VTUEVORF9TVEFURV9NRU0sDQo+ID4gIAkJCQkJCVNVU1BFTkRf VEVTVF9OT05FKTsNCj4gPiANCj4gPiArCQlpZ3RfZGVzY3JpYmUodGVzdF9zdXNwZW5kX3Jlc3Vt ZV9ocGRfZGVzYyk7DQo+ID4gIAkJY29ubmVjdG9yX3N1YnRlc3QoInZnYS1ocGQtYWZ0ZXItaGli ZXJuYXRlIiwgVkdBKQ0KPiA+ICAJCQl0ZXN0X3N1c3BlbmRfcmVzdW1lX2hwZCgmZGF0YSwgcG9y dCwNCj4gPiAgCQkJCQkJU1VTUEVORF9TVEFURV9ESVNLLA0KPiA+ICAJCQkJCQlTVVNQRU5EX1RF U1RfREVWSUNFUyk7DQo+ID4gDQo+ID4gKwkJaWd0X2Rlc2NyaWJlKHRlc3RfaHBkX3dpdGhvdXRf ZGRjX2Rlc2MpOw0KPiA+ICAJCWNvbm5lY3Rvcl9zdWJ0ZXN0KCJ2Z2EtaHBkLXdpdGhvdXQtZGRj IiwgVkdBKQ0KPiA+ICAJCQl0ZXN0X2hwZF93aXRob3V0X2RkYygmZGF0YSwgcG9ydCk7DQo+ID4g DQo+ID4gKwkJaWd0X2Rlc2NyaWJlKHRlc3RfZGlzcGxheV9hbGxfbW9kZXNfZGVzYyk7DQo+ID4g IAkJY29ubmVjdG9yX3N1YnRlc3QoInZnYS1mcmFtZS1kdW1wIiwgVkdBKQ0KPiA+ICAJCQl0ZXN0 X2Rpc3BsYXlfYWxsX21vZGVzKCZkYXRhLCBwb3J0LA0KPiA+IERSTV9GT1JNQVRfWFJHQjg4ODgs DQo+ID4gIAkJCQkJICAgICAgIENIQU1FTElVTV9DSEVDS19BTkFMT0csDQo+ID4gMSk7DQo+ID4g IAl9DQo+ID4gDQo+ID4gKwlpZ3RfZGVzY3JpYmUoIlRlc3RzIHRoYXQgb3BlcmF0ZSBvbiBhbGwg Y29ubmVjdG9ycyIpOw0KPiA+ICAJaWd0X3N1YnRlc3RfZ3JvdXAgew0KPiA+ICsJCWlndF9kZXNj cmliZSh0ZXN0X3N1c3BlbmRfcmVzdW1lX2hwZF9jb21tb25fZGVzYyk7DQo+ID4gIAkJaWd0X3N1 YnRlc3QoImNvbW1vbi1ocGQtYWZ0ZXItc3VzcGVuZCIpDQo+ID4gIAkJCXRlc3Rfc3VzcGVuZF9y ZXN1bWVfaHBkX2NvbW1vbigmZGF0YSwNCj4gPiAgCQkJCQkJICAgICAgIFNVU1BFTkRfU1RBVEVf TUUNCj4gPiBNLA0KPiA+ICAJCQkJCQkgICAgICAgU1VTUEVORF9URVNUX05PTg0KPiA+IEUpOw0K PiA+IA0KPiA+ICsJCWlndF9kZXNjcmliZSh0ZXN0X3N1c3BlbmRfcmVzdW1lX2hwZF9jb21tb25f ZGVzYyk7DQo+ID4gIAkJaWd0X3N1YnRlc3QoImNvbW1vbi1ocGQtYWZ0ZXItaGliZXJuYXRlIikN Cj4gPiAgCQkJdGVzdF9zdXNwZW5kX3Jlc3VtZV9ocGRfY29tbW9uKCZkYXRhLA0KPiA+ICAJCQkJ CQkgICAgICAgU1VTUEVORF9TVEFURV9ESQ0KPiA+IFNLLA0KPiA+IC0tDQo+ID4gMi4yMy4wDQo+ ID4gDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwppZ3Qt ZGV2IG1haWxpbmcgbGlzdAppZ3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lndC1kZXY=