From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 3EFCB5B34 for ; Thu, 8 Mar 2018 10:02:11 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga101.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Mar 2018 01:02:11 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.47,440,1515484800"; d="scan'208";a="23912997" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by orsmga006.jf.intel.com with ESMTP; 08 Mar 2018 01:02:10 -0800 Received: from fmsmsx119.amr.corp.intel.com (10.18.124.207) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 8 Mar 2018 01:02:10 -0800 Received: from shsmsx103.ccr.corp.intel.com (10.239.4.69) by FMSMSX119.amr.corp.intel.com (10.18.124.207) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 8 Mar 2018 01:02:09 -0800 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.125]) by SHSMSX103.ccr.corp.intel.com ([169.254.4.116]) with mapi id 14.03.0319.002; Thu, 8 Mar 2018 17:02:08 +0800 From: "Lin, Xueqin" To: "Liu, Yong" , "dts@dpdk.org" Thread-Topic: [dts] [PATCH v3]test plan: add ddp gtp qregion test plan Thread-Index: AQHTtrvN2vd9LWAZDUCuMPEqnXc3fqPGCnow Date: Thu, 8 Mar 2018 09:02:07 +0000 Message-ID: <0D300480287911409D9FF92C1FA2A3355B2B229C@SHSMSX104.ccr.corp.intel.com> References: <1520477671-178000-1-git-send-email-xueqin.lin@intel.com> <86228AFD5BCD8E4EBFD2B90117B5E81E62FAB660@SHSMSX103.ccr.corp.intel.com> In-Reply-To: <86228AFD5BCD8E4EBFD2B90117B5E81E62FAB660@SHSMSX103.ccr.corp.intel.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [dts] [PATCH v3]test plan: add ddp gtp qregion test plan X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Mar 2018 09:02:13 -0000 U29ycnksIHRpdGxlIGlzIGRkcCBndHAgaXB2NiwganVzdCBub3RpY2UgaXQsIEkgd2lsbCBzdWJt aXQgZGlmZiBwYXRjaCBzb29uLg0KDQpCZXN0IHJlZ2FyZHMsDQpYdWVxaW4NCg0KDQotLS0tLU9y aWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTogTGl1LCBZb25nIA0KU2VudDogVGh1cnNkYXksIE1h cmNoIDgsIDIwMTggNTowMCBQTQ0KVG86IExpbiwgWHVlcWluIDx4dWVxaW4ubGluQGludGVsLmNv bT47IGR0c0BkcGRrLm9yZw0KQ2M6IExpbiwgWHVlcWluIDx4dWVxaW4ubGluQGludGVsLmNvbT4N ClN1YmplY3Q6IFJFOiBbZHRzXSBbUEFUQ0ggdjNddGVzdCBwbGFuOiBhZGQgZGRwIGd0cCBxcmVn aW9uIHRlc3QgcGxhbg0KDQpYdWVxaW4sDQpJIGhhdmUgbWVyZ2VkIHlvdXIgdjIgcGF0Y2ggaW50 byBEVFMsIGNvdWxkIHlvdSBwbGVhc2Ugc3VibWl0IHRoZSBkaWZmIHBhdGNoPw0KDQpUaGFua3Ms DQpNYXJ2aW4NCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBkdHMgW21h aWx0bzpkdHMtYm91bmNlc0BkcGRrLm9yZ10gT24gQmVoYWxmIE9mIFh1ZXFpbiBMaW4NCj4gU2Vu dDogVGh1cnNkYXksIE1hcmNoIDA4LCAyMDE4IDEwOjU1IEFNDQo+IFRvOiBkdHNAZHBkay5vcmcN Cj4gQ2M6IExpbiwgWHVlcWluIDx4dWVxaW4ubGluQGludGVsLmNvbT4NCj4gU3ViamVjdDogW2R0 c10gW1BBVENIIHYzXXRlc3QgcGxhbjogYWRkIGRkcCBndHAgcXJlZ2lvbiB0ZXN0IHBsYW4NCj4g DQo+IC0tLQ0KPiAgdGVzdF9wbGFucy9kZHBfZ3RwX3FyZWdpb25fdGVzdF9wbGFuLnJzdCB8IDcw MA0KPiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrDQo+ICAxIGZpbGUgY2hhbmdlZCwg NzAwIGluc2VydGlvbnMoKykNCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0X3BsYW5zL2RkcF9n dHBfcXJlZ2lvbl90ZXN0X3BsYW4ucnN0DQo+IA0KPiBkaWZmIC0tZ2l0IGEvdGVzdF9wbGFucy9k ZHBfZ3RwX3FyZWdpb25fdGVzdF9wbGFuLnJzdA0KPiBiL3Rlc3RfcGxhbnMvZGRwX2d0cF9xcmVn aW9uX3Rlc3RfcGxhbi5yc3QNCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAw MC4uMGU4NDViZA0KPiAtLS0gL2Rldi9udWxsDQo+ICsrKyBiL3Rlc3RfcGxhbnMvZGRwX2d0cF9x cmVnaW9uX3Rlc3RfcGxhbi5yc3QNCj4gQEAgLTAsMCArMSw3MDAgQEANCj4gKy4uIENvcHlyaWdo dCAoYykgPDIwMTc+LCBJbnRlbCBDb3Jwb3JhdGlvbg0KPiArICAgQWxsIHJpZ2h0cyByZXNlcnZl ZC4NCj4gKw0KPiArICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0DQo+ICsgICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0 ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMNCj4gKyAgIGFyZSBtZXQ6 DQo+ICsNCj4gKyAgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu IHRoZSBhYm92ZSBjb3B5cmlnaHQNCj4gKyAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0 aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLg0KPiArDQo+ICsgICAtIFJlZGlzdHJp YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0 DQo+ICsgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp bmcgZGlzY2xhaW1lciBpbg0KPiArICAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlDQo+ICsgICAgIGRpc3RyaWJ1dGlvbi4NCj4gKw0K PiArICAgLSBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFt ZXMgb2YgaXRzDQo+ICsgICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9y IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZA0KPiArICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0 aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uDQo+ICsNCj4gKyAgIFRISVMg U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklC VVRPUlMNCj4gKyAgICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF UywgSU5DTFVESU5HLCBCVVQgTk9UDQo+ICsgICBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJS QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUw0KPiArICAgRk9SIEEgUEFSVElD VUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUNCj4gKyAg IENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU LCBJTkRJUkVDVCwNCj4gKyAgIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O U0VRVUVOVElBTCBEQU1BR0VTDQo+ICsgICAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1INCj4gKyAgIFNFUlZJQ0VTOyBMT1NT IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQ0KPiAr ICAgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS IElOIENPTlRSQUNULA0KPiArICAgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQ0KPiArICAgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRA0KPiArICAgT0YgVEhF IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLg0KPiArDQo+ICs9PT09PT09PT09PT09PT0NCj4g K0REUCBHVFAgUXJlZ2lvbg0KPiArPT09PT09PT09PT09PT09DQo+ICsNCj4gK0REUCBwcm9maWxl IDB4ODAwMDAwMDggYWRkcyBzdXBwb3J0IGZvciBHVFAgd2l0aCBJUHY0IG9yIElQdjYgcGF5bG9h ZC4NCj4gK1RoZSB0ZXN0IGNhc2UgcGxhbiBmb2N1cyBvbiBtb3JlIEREUCBHVFAgcmVxdWlyZW1l bnRzIGFzIGJlbG93LiBGb3IgDQo+ICtERFAgR1RQIGludHJvZHVjdGlvbiwgcGxlYXNlIHJlZmVy IHRvIEREUCBHVFAgdGVzdCBwbGFuLg0KPiArDQo+ICtSZXF1aXJlbWVudHMNCj4gKz09PT09PT09 PT09PQ0KPiArMS4gR1RQLUMgZGlzdHJpYnV0ZWQgdG8gY29udHJvbCBwbGFuZSBxdWV1ZXMgcmVn aW9uIHVzaW5nIG91dGVyIElQDQo+ICsgICBkZXN0aW5hdGlvbiBhZGRyZXNzIGFzIGhhc2ggaW5w dXQgc2V0ICh0aGVyZSBpcyBubyBpbm5lciBJUCBoZWFkZXJzDQo+ICsgICBmb3IgR1RQLUMgcGFj a2V0cykNCj4gKzIuIEdUUC1VIGRpc3RyaWJ1dGVkIHRvIGRhdGEgcGxhbmUgcXVldWVzIHJlZ2lv biB1c2luZyBpbm5lciBJUCBzb3VyY2UNCj4gKyAgIGFkZHJlc3MgYXMgaGFzaCBpbnB1dCBzZXQu DQo+ICszLiBHVFAtQyBkaXN0cmlidXRlZCB0byBjb250cm9sIHBsYW5lIHF1ZXVlcyByZWdpb24g dXNpbmcgVEVJRCBhcyBoYXNoDQo+ICsgICBpbnB1dCBzZXQuDQo+ICs0LiBHVFAtVSBkaXN0cmli dXRlZCB0byBkYXRhIHBsYW5lIHF1ZXVlcyByZWdpb24gdXNpbmcgVEVJRCBhbmQgaW5uZXINCj4g KyAgIHBhY2tldCA1LXR1cGxlIGFzIGhhc2ggaW5wdXQgc2V0Lg0KPiArDQo+ICtGVkwgc3VwcG9y dHMgcXVldWUgcmVnaW9ucyBjb25maWd1cmF0aW9uIGZvciBSU1MsIHNvIGRpZmZlcmVudCANCj4g K3RyYWZmaWMgY2xhc3NlcyBvciBkaWZmZXJlbnQgcGFja2V0IGNsYXNzaWZpY2F0aW9uIHR5cGVz IGNhbiBiZSANCj4gK3NlcGFyYXRlZCB0byBkaWZmZXJlbnQgcXVldWUgcmVnaW9ucyB3aGljaCBp bmNsdWRlcyBzZXZlcmFsIHF1ZXVlcy4gDQo+ICtTdXBwb3J0IHRvIHNldCBoYXNoIGlucHV0IHNl dCBpbmZvIGZvciBSU1MgZmxleGlibGUgcGF5bG9hZCwgdGhlbiANCj4gK2VuYWJsZSBuZXcgcHJv dG9jb2xzJyBSU1MuDQo+ICtEeW5hbWljIGZsb3cgdHlwZSBmZWF0dXJlIGludHJvZHVjZXMgR1RQ IHBjdHlwZSBhbmQgZmxvdyB0eXBlLCBkZXNpZ24gDQo+ICthbmQgYWRkIHF1ZXVlIHJlZ2lvbi9x dWV1ZSByYW5nZSBtYXBwaW5nIGFzIGJlbG93IHRhYmxlLiBGb3IgbW9yZQ0KPiBkZXRhaWxlZA0K PiArYW5kIHJlbGF0aXZlIGluZm9ybWF0aW9uLCBwbGVhc2UgcmVmZXIgdG8gZHluYW1pYyBmbG93 IHR5cGUgYW5kIHF1ZXVlIA0KPiArcmVnaW9uIHRlc3QgcGxhbjo6DQo+ICsNCj4gKyAgICANCj4g KyArLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLQ0KPiArIC0NCj4gKw0KPiArICAgIHwgUGFja2V0IFR5cGUgfCAgIFBDVHlw ZXMgIHwgRmxvdyBUeXBlcyB8IFF1ZXVlIHJlZ2lvbiB8IFF1ZXVlIHJhbmdlDQo+IHwNCj4gKyAg ICANCj4gKyArLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLQ0KPiArIC0NCj4gKw0KPiArICAgIHwgR1RQLVUgSVB2NCAgfCAg ICAgMjIgICAgIHwgICAgMjYgICAgICB8ICAgICAgMCAgICAgICB8ICAgICAxfjgNCj4gfA0KPiAr ICAgIA0KPiArICstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tDQo+ICsgLQ0KPiArDQo+ICsgICAgfCBHVFAtVSBJUHY2ICB8 ICAgICAyMyAgICAgfCAgICAyMyAgICAgIHwgICAgICAxICAgICAgIHwgICAgIDEwfjI1DQo+IHwN Cj4gKyAgICANCj4gKyArLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQ0KPiArIC0NCj4gKw0KPiArICAgIHwgR1RQLVUgUEFZ NCAgfCAgICAgMjQgICAgIHwgICAgMjQgICAgICB8ICAgICAgMiAgICAgICB8ICAgICAzMH4zNw0K PiB8DQo+ICsgICAgDQo+ICsgKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0NCj4gKyAtDQo+ICsNCj4gKyAgICB8IEdUUC1D IFBBWTQgIHwgICAgIDI1ICAgICB8ICAgIDI1ICAgICAgfCAgICAgIDMgICAgICAgfCAgICAgNDB+ NTUNCj4gfA0KPiArICAgIA0KPiArICstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tDQo+ICsgLQ0KPiArDQo+ICsNCj4gK1By ZXJlcXVpc2l0ZXMNCj4gKz09PT09PT09PT09PT0NCj4gKw0KPiArMS4gSG9zdCBQRiBpbiBEUERL IGRyaXZlcjo6DQo+ICsNCj4gKyAgICAuL3Rvb2xzL2RwZGstZGV2YmluZC5weSAtYiBpZ2JfdWlv IDgxOjAwLjANCj4gKw0KPiArMi4gU3RhcnQgdGVzdHBtZCBvbiBob3N0LCBzZXQgY2hhaW5lZCBw b3J0IHRvcG9sb2d5IG1vZGUsIGFkZCB0eHEvcnhxIHRvDQo+ICsgICBlbmFibGUgbXVsdGktcXVl dWVzLiBJbiBnZW5lcmFsLCBQRidzIG1heCBxdWV1ZSBpcyA2NDo6DQo+ICsNCj4gKyAgICAuL3Rl c3RwbWQgLWMgZiAtbiA0IC0tIC1pIC0tcG9ydC10b3BvbG9neT1jaGFpbmVkIC0tdHhxPTY0IA0K PiArIC0tcnhxPTY0DQo+ICsNCj4gK0xvYWQvZGVsZXRlIGR5bmFtaWMgZGV2aWNlIHBlcnNvbmFs aXphdGlvbiANCj4gKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0K PiArDQo+ICsxLiBTdG9wIHRlc3RwbWQgcG9ydCBiZWZvcmUgbG9hZGluZyBwcm9maWxlOjoNCj4g Kw0KPiArICAgIHRlc3RwbWQgPiBwb3J0IHN0b3AgYWxsDQo+ICsNCj4gKzIuIExvYWQgZ3RwLnBr Z28gZmlsZSB0byB0aGUgbWVtb3J5IGJ1ZmZlciwgc2F2ZSBvcmlnaW5hbCBjb25maWd1cmF0aW9u DQo+ICsgICBhbmQgcmV0dXJuIGluIHRoZSBzYW1lIGJ1ZmZlciB0byB0aGUgZ3RwLmJhayBmaWxl OjoNCj4gKw0KPiArICAgIHRlc3RwbWQgPiBkZHAgYWRkIChwb3J0X2lkKSAvdG1wL2d0cC5wa2dv LC90bXAvZ3RwLmJhaw0KPiArDQo+ICszLiBSZW1vdmUgcHJvZmlsZSBmcm9tIHRoZSBuZXR3b3Jr IGFkYXB0ZXIgYW5kIHJlc3RvcmUgb3JpZ2luYWwNCj4gKyAgIGNvbmZpZ3VyYXRpb246Og0KPiAr DQo+ICsgICAgdGVzdHBtZCA+IGRkcCBkZWwgKHBvcnRfaWQpIC90bXAvZ3RwLmJhaw0KPiArDQo+ ICs0LiBTdGFydCB0ZXN0cG1kIHBvcnQ6Og0KPiArDQo+ICsgICAgdGVzdHBtZCA+IHBvcnQgc3Rh cnQgYWxsDQo+ICsNCj4gK05vdGU6DQo+ICsNCj4gKzEuIEd0cC5wa2dvIHByb2ZpbGUgaXMgbm90 IHJlbGVhc2VkIGJ5IE5EIHlldCwgb25seSBoYXZlIGVuZ2luZWVyIA0KPiArdmVyc2lvbg0KPiBm b3INCj4gKyAgIGludGVybmFsIHVzZSBzbyBmYXIuIFBsYW4gdG8ga2VlcCBwdWJsaWMgcmVmZXJl bmNlIHByb2ZpbGVzIGF0IEludGVsDQo+ICsgICBEZXZlbG9wZXIgWm9uZSwgcmVsZWFzZSB2ZXJz aW9ucyBvZiBwcm9maWxlcyBhbmQgc3VwcGx5IGxpbmsgbGF0ZXIuDQo+ICsNCj4gKzIuIExvYWRp bmcgRERQIGlzIHRoZSBwcmVyZXF1aXNpdGUgZm9yIGJlbG93IEdUUCByZWxhdGl2ZSBjYXNlcy4g TG9hZA0KPiArICAgcHJvZmlsZSBhZ2FpbiBvbmNlIHJlc3RhcnRpbmcgdGVzdHBtZCB0byBsZXQg c29mdHdhcmUgZGV0ZWN0IHRoaXMNCj4gKyAgIGV2ZW50LCBhbHRob3VnaCBoYXMg4oCccHJvZmls ZSBoYXMgYWxyZWFkeSBleGlzdGVk4oCdIHJlbWluZGVyLiBPcGVyYXRlDQo+ICsgICBnbG9iYWwg cmVzZXQgb3IgbGFuY29uZiB0b29sIHRvIHJlY292ZXIgb3JpZ2luYWwgc2V0dGluZy4gR2xvYmFs IHJlc2V0DQo+ICsgICB0cmlnZ2VyIHJlZyBpcyAweGI4MTkwLCBmaXJzdCBjbWQgaXMgY29yZSBy ZXNldCwgc2Vjb25kIGNtZCBpcyBnbG9iYWwNCj4gKyAgIHJlc2V0OjoNCj4gKw0KPiArICAgIHRl c3RwbWQgPiB3cml0ZSByZWcgMCAweGI4MTkwIDENCj4gKyAgICB0ZXN0cG1kID4gd3JpdGUgcmVn IDAgMHhiODE5MCAyDQo+ICsNCj4gKw0KPiArRmxvdyB0eXBlIGFuZCBxdWV1ZSByZWdpb24gbWFw cGluZyBzZXR0aW5nIA0KPiArPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09DQo+ICsxLiBBcyBhYm92ZSBtYXBwaW5nIHRhYmxlLCBzZXQgcXVldWUgcmVnaW9uIG9uIGEg cG9ydDo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBzZXQgcG9ydCAwIHF1ZXVlLXJlZ2lvbiByZWdp b25faWQgMCBxdWV1ZV9zdGFydF9pbmRleCAxDQo+IHF1ZXVlX251bSA4DQo+ICsgICAgdGVzdHBt ZD4gc2V0IHBvcnQgMCBxdWV1ZS1yZWdpb24gcmVnaW9uX2lkIDEgcXVldWVfc3RhcnRfaW5kZXgg MTANCj4gcXVldWVfbnVtIDE2DQo+ICsgICAgdGVzdHBtZD4gc2V0IHBvcnQgMCBxdWV1ZS1yZWdp b24gcmVnaW9uX2lkIDIgcXVldWVfc3RhcnRfaW5kZXggMzANCj4gcXVldWVfbnVtIDgNCj4gKyAg ICB0ZXN0cG1kPiBzZXQgcG9ydCAwIHF1ZXVlLXJlZ2lvbiByZWdpb25faWQgMyBxdWV1ZV9zdGFy dF9pbmRleCA0MA0KPiBxdWV1ZV9udW0gMTYNCj4gKw0KPiArMi4gU2V0IHRoZSBtYXBwaW5nIG9m IGZsb3cgdHlwZSB0byByZWdpb24gaW5kZXggb24gYSBwb3J0OjoNCj4gKw0KPiArICAgIHRlc3Rw bWQ+IHNldCBwb3J0IDAgcXVldWUtcmVnaW9uIHJlZ2lvbl9pZCAwIGZsb3d0eXBlIDI2DQo+ICsg ICAgdGVzdHBtZD4gc2V0IHBvcnQgMCBxdWV1ZS1yZWdpb24gcmVnaW9uX2lkIDEgZmxvd3R5cGUg MjMNCj4gKyAgICB0ZXN0cG1kPiBzZXQgcG9ydCAwIHF1ZXVlLXJlZ2lvbiByZWdpb25faWQgMiBm bG93dHlwZSAyNA0KPiArICAgIHRlc3RwbWQ+IHNldCBwb3J0IDAgcXVldWUtcmVnaW9uIHJlZ2lv bl9pZCAzIGZsb3d0eXBlIDI1DQo+ICsgICAgdGVzdHBtZD4gc2V0IHBvcnQgMCBxdWV1ZS1yZWdp b24gZmx1c2ggb24NCj4gKw0KPiArMy4gZmx1c2ggYWxsIHF1ZXVlIHJlZ2lvbnM6Og0KPiArDQo+ ICsgICAgdGVzdHBtZD4gc2V0IHBvcnQgMCBxdWV1ZS1yZWdpb24gZmx1c2ggb2ZmDQo+ICsNCj4g Kw0KPiArVGVzdCBDYXNlOiBPdXRlciBJUHY2IGRzdCBjb250cm9scyBHVFAtQyBxdWV1ZSBpbiBx dWV1ZSByZWdpb24gDQo+ICs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQ0KPiArDQo+ICsxLiBDaGVjayBmbG93IHB0eXBlIHRvIHBj dHlwZSBtYXBwaW5nOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+IHNob3cgcG9ydCAwIHBjdHlwZSBt YXBwaW5nDQo+ICsNCj4gKzIuIFVwZGF0ZSBHVFAtQyBmbG93IHR5cGUgaWQgMjUgdG8gcGN5dHBl IGlkIDI1IG1hcHBpbmcgaXRlbTo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyAw IHBjdHlwZSBtYXBwaW5nIHVwZGF0ZSAyNSAyNQ0KPiArDQo+ICszLiBDaGVjayBmbG93IHB0eXBl IHRvIHBjdHlwZSBtYXBwaW5nIGFkZHMgMjUgdGhpcyBtYXBwaW5nDQo+ICsNCj4gKzQuIFJlc2V0 IEdUUC1DIGhhc2ggY29uZmlndXJlOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmln IDAgcGN0eXBlIDI1IGhhc2hfaW5zZXQgY2xlYXIgYWxsDQo+ICsNCj4gKzUuIE91dGVyIGRzdCBh ZGRyZXNzIHdvcmRzIGFyZSA1MH41NywgZW5hYmxlIGhhc2ggaW5wdXQgc2V0IGZvciBvdXRlcg0K PiBkc3Q6Og0KPiArDQo+ICsgICAgdGVzdHBtZD4gcG9ydCBjb25maWcgMCBwY3R5cGUgMjUgaGFz aF9pbnNldCBzZXQgZmllbGQgNTANCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyAwIHBjdHlw ZSAyNSBoYXNoX2luc2V0IHNldCBmaWVsZCA1MQ0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmln IDAgcGN0eXBlIDI1IGhhc2hfaW5zZXQgc2V0IGZpZWxkIDUyDQo+ICsgICAgdGVzdHBtZD4gcG9y dCBjb25maWcgMCBwY3R5cGUgMjUgaGFzaF9pbnNldCBzZXQgZmllbGQgNTMNCj4gKyAgICB0ZXN0 cG1kPiBwb3J0IGNvbmZpZyAwIHBjdHlwZSAyNSBoYXNoX2luc2V0IHNldCBmaWVsZCA1NA0KPiAr ICAgIHRlc3RwbWQ+IHBvcnQgY29uZmlnIDAgcGN0eXBlIDI1IGhhc2hfaW5zZXQgc2V0IGZpZWxk IDU1DQo+ICsgICAgdGVzdHBtZD4gcG9ydCBjb25maWcgMCBwY3R5cGUgMjUgaGFzaF9pbnNldCBz ZXQgZmllbGQgNTYNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyAwIHBjdHlwZSAyNSBoYXNo X2luc2V0IHNldCBmaWVsZCA1Nw0KPiArDQo+ICs2LiBFbmFibGUgZmxvdyB0eXBlIGlkIDI1J3Mg UlNTOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmlnIGFsbCByc3MgMjUNCj4gKw0K PiArNy4gU3RhcnQgdGVzdHBtZCwgc2V0IGZ3ZCByeG9ubHksIGVuYWJsZSBvdXRwdXQgcHJpbnQN Cj4gKw0KPiArOC4gU2VuZCBvdXRlciBkc3QgR1RQLUMgcGFja2V0LCBjaGVjayBSU1MgY291bGQg d29yaywgdmVyaWZ5IHRoZSBxdWV1ZSBpcw0KPiArICAgYmV0d2VlbiA0MCBhbmQgNTUsIHByaW50 IFBLVF9SWF9SU1NfSEFTSDo6DQo+ICsNCj4gKyAgICBwPUV0aGVyKCkvSVB2NihzcmM9IjEwMDE6 MGRiODo4NWEzOjAwMDA6MDAwMDo4YTJlOjAzNzA6MDAwMSIsDQo+ICsgICAgZHN0PSIyMDAxOjBk Yjg6ODVhMzowMDAwOjAwMDA6OGEyZTowMzcwOjAwMDEiKS9VRFAoZHBvcnQ9MjEyMykvDQo+ICsg ICAgR1RQX1VfSGVhZGVyKCkvUmF3KCd4JyoyMCkNCj4gKw0KPiArOS4gU2VuZCBkaWZmZXJlbnQg b3V0ZXIgZHN0IEdUUC1DIHBhY2tldCwgY2hlY2sgcG1kIHJlY2VpdmVzIHBhY2tldCBmcm9tDQo+ ICsgICBkaWZmZXJlbnQgcXVldWUgYnV0IGJldHdlZW4gNDAgYW5kIDU1OjoNCj4gKw0KPiArICAg IHA9RXRoZXIoKS9JUHY2KHNyYz0iMTAwMTowZGI4Ojg1YTM6MDAwMDowMDAwOjhhMmU6MDM3MDow MDAxIiwNCj4gKyAgICBkc3Q9IjIwMDE6MGRiODo4NWEzOjAwMDA6MDAwMDo4YTJlOjAzNzA6MDAw MiIpL1VEUChkcG9ydD0yMTIzKS8NCj4gKyAgICBHVFBfVV9IZWFkZXIoKS9SYXcoJ3gnKjIwKQ0K PiArDQo+ICsxMC4gU2VuZCBkaWZmZXJlbnQgb3V0ZXIgc3JjIEdUUC1DIHBhY2tldCwgY2hlY2sg cG1kIHJlY2VpdmVzIHBhY2tldCBmcm9tDQo+ICsgICAgc2FtZSBxdWV1ZTo6DQo+ICsNCj4gKyAg ICBwPUV0aGVyKCkvSVB2NihzcmM9IjEwMDE6MGRiODo4NWEzOjAwMDA6MDAwMDo4YTJlOjAzNzA6 MDAwMiIsDQo+ICsgICAgZHN0PSIyMDAxOjBkYjg6ODVhMzowMDAwOjAwMDA6OGEyZTowMzcwOjAw MDEiKS8NCj4gKyAgICBVRFAoZHBvcnQ9MjEyMykvR1RQX1VfSGVhZGVyKCkvUmF3KCd4JyoyMCkN Cj4gKw0KPiArDQo+ICtUZXN0IENhc2U6IFRFSUQgY29udHJvbHMgR1RQLUMgcXVldWUgaW4gcXVl dWUgcmVnaW9uIA0KPiArPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQ0KPiArDQo+ICsxLiBDaGVjayBmbG93IHB0eXBlIHRvIHBjdHlwZSBtYXBwaW5n OjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+IHNob3cgcG9ydCAwIHBjdHlwZSBtYXBwaW5nDQo+ICsN Cj4gKzIuIFVwZGF0ZSBHVFAtQyBmbG93IHR5cGUgaWQgMjUgdG8gcGN5dHBlIGlkIDI1IG1hcHBp bmcgaXRlbTo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyAwIHBjdHlwZSBtYXBw aW5nIHVwZGF0ZSAyNSAyNQ0KPiArDQo+ICszLiBDaGVjayBmbG93IHB0eXBlIHRvIHBjdHlwZSBt YXBwaW5nIGFkZHMgMjUgdGhpcyBtYXBwaW5nDQo+ICsNCj4gKzQuIFJlc2V0IEdUUC1DIGhhc2gg Y29uZmlndXJlOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmlnIDAgcGN0eXBlIDI1 IGhhc2hfaW5zZXQgY2xlYXIgYWxsDQo+ICsNCj4gKzUuIFRlaWQgd29yZHMgYXJlIDQ0IGFuZCA0 NSwgZW5hYmxlIGhhc2ggaW5wdXQgc2V0IGZvciB0ZWlkOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+ IHBvcnQgY29uZmlnIDAgcGN0eXBlIDI1IGhhc2hfaW5zZXQgc2V0IGZpZWxkIDQ0DQo+ICsgICAg dGVzdHBtZD4gcG9ydCBjb25maWcgMCBwY3R5cGUgMjUgaGFzaF9pbnNldCBzZXQgZmllbGQgNDUN Cj4gKw0KPiArNi4gRW5hYmxlIGZsb3cgdHlwZSBpZCAyNSdzIFJTUzo6DQo+ICsNCj4gKyAgICB0 ZXN0cG1kPiBwb3J0IGNvbmZpZyBhbGwgcnNzIDI1DQo+ICsNCj4gKzcuIFN0YXJ0IHRlc3RwbWQs IHNldCBmd2Qgcnhvbmx5LCBlbmFibGUgb3V0cHV0IHByaW50DQo+ICsNCj4gKzguIFNlbmQgdGVp ZCBHVFAtQyBwYWNrZXQsIGNoZWNrIFJTUyBjb3VsZCB3b3JrLCB2ZXJpZnkgdGhlIHF1ZXVlIGlz DQo+ICsgICBiZXR3ZWVuIDQwIGFuZCA1NSwgcHJpbnQgUEtUX1JYX1JTU19IQVNIOjoNCj4gKw0K PiArICAgIA0KPiArIHA9RXRoZXIoKS9JUHY2KCkvVURQKGRwb3J0PTIxMjMpL0dUUF9VX0hlYWRl cih0ZWlkPTB4ZmUpL1JhdygneCcqMjApDQo+ICsNCj4gKzkuIFNlbmQgZGlmZmVyZW50IHRlaWQg R1RQLUMgcGFja2V0LCBjaGVjayByZWNlaXZlIHBhY2tldCBmcm9tIGRpZmZlcmVudA0KPiArICAg cXVldWUgYnV0IGJldHdlZW4gNDAgYW5kIDU1OjoNCj4gKw0KPiArICAgIA0KPiArIHA9RXRoZXIo KS9JUHY2KCkvVURQKGRwb3J0PTIxMjMpL0dUUF9VX0hlYWRlcih0ZWlkPTB4ZmYpL1JhdygneCcq MjApDQo+ICsNCj4gKw0KPiArVGVzdCBDYXNlOiBURUlEIGNvbnRyb2xzIEdUUC1VIElQdjQgcXVl dWUgaW4gcXVldWUgcmVnaW9uIA0KPiArPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09DQo+ICsxLiBDaGVjayBmbG93IHR5cGUgdG8gcGN0eXBl IG1hcHBpbmc6Og0KPiArDQo+ICsgICAgdGVzdHBtZD4gc2hvdyBwb3J0IDAgcGN0eXBlIG1hcHBp bmcNCj4gKw0KPiArMi4gVXBkYXRlIEdUUC1VIElQdjQgZmxvdyB0eXBlIGlkIDI2IHRvIHBjeXRw ZSBpZCAyMiBtYXBwaW5nIGl0ZW06Og0KPiArDQo+ICsgICAgdGVzdHBtZD4gcG9ydCBjb25maWcg MCBwY3R5cGUgbWFwcGluZyB1cGRhdGUgMjIgMjYNCj4gKw0KPiArMy4gQ2hlY2sgZmxvdyBwdHlw ZSB0byBwY3R5cGUgbWFwcGluZyBhZGRzIDI2IHRoaXMgbWFwcGluZzo6DQo+ICsNCj4gKyAgICB0 ZXN0cG1kPiBzaG93IHBvcnQgMCBwY3R5cGUgbWFwcGluZw0KPiArDQo+ICs0LiBSZXNldCBHVFAt VSBJUHY0IGhhc2ggY29uZmlndXJlOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmln IDAgcGN0eXBlIDIyIGhhc2hfaW5zZXQgY2xlYXIgYWxsDQo+ICsNCj4gKzUuIFRlaWQgd29yZHMg YXJlIDQ0IGFuZCA0NSwgZW5hYmxlIGhhc2ggaW5wdXQgc2V0IGZvciB0ZWlkOjoNCj4gKw0KPiAr ICAgIHRlc3RwbWQ+IHBvcnQgY29uZmlnIDAgcGN0eXBlIDIyIGhhc2hfaW5zZXQgc2V0IGZpZWxk IDQ0DQo+ICsgICAgdGVzdHBtZD4gcG9ydCBjb25maWcgMCBwY3R5cGUgMjIgaGFzaF9pbnNldCBz ZXQgZmllbGQgNDUNCj4gKw0KPiArNi4gRW5hYmxlIGZsb3cgdHlwZSBpZCAyNidzIFJTUzo6DQo+ ICsNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyBhbGwgcnNzIDI2DQo+ICsNCj4gKzcuIFN0 YXJ0IHRlc3RwbWQsIHNldCBmd2Qgcnhvbmx5LCBlbmFibGUgb3V0cHV0IHByaW50DQo+ICsNCj4g KzguIFNlbmQgdGVpZCBHVFAtVSBJUHY0IHBhY2tldCwgY2hlY2sgUlNTIGNvdWxkIHdvcmssIHZl cmlmeSB0aGUgcXVldWUgaXMNCj4gKyAgIGJldHdlZW4gMSBhbmQgOCwgcHJpbnQgUEtUX1JYX1JT U19IQVNIOjoNCj4gKw0KPiArDQo+IHA9RXRoZXIoKS9JUHY2KCkvVURQKGRwb3J0PTIxNTIpL0dU UF9VX0hlYWRlcih0ZWlkPTB4ZmUpL0lQKCkvUmF3KCd4JyoNCj4gMjApDQo+ICsNCj4gKzkuIFNl bmQgZGlmZmVyZW50IHRlaWQgR1RQLVUgSVB2NCBwYWNrZXQsIGNoZWNrIHJlY2VpdmUgcGFja2V0 IGZyb20NCj4gZGlmZmVyZW50DQo+ICsgICBxdWV1ZSBidXQgYmV0d2VlbiAxIGFuZCA4OjoNCj4g Kw0KPiArDQo+IHA9RXRoZXIoKS9JUHY2KCkvVURQKGRwb3J0PTIxNTIpL0dUUF9VX0hlYWRlcih0 ZWlkPTB4ZmYpL0lQKCkvUmF3KCd4JyoNCj4gMjApDQo+ICsNCj4gKw0KPiArVGVzdCBDYXNlOiBT cG9ydCBjb250cm9scyBHVFAtVSBJUHY0IHF1ZXVlIGluIHF1ZXVlIHJlZ2lvbiANCj4gKz09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCj4g KzEuIENoZWNrIGZsb3cgdHlwZSB0byBwY3R5cGUgbWFwcGluZzo6DQo+ICsNCj4gKyAgICB0ZXN0 cG1kPiBzaG93IHBvcnQgMCBwY3R5cGUgbWFwcGluZw0KPiArDQo+ICsyLiBVcGRhdGUgR1RQLVUg SVB2NCBmbG93IHR5cGUgaWQgMjYgdG8gcGN5dHBlIGlkIDIyIG1hcHBpbmcgaXRlbTo6DQo+ICsN Cj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyAwIHBjdHlwZSBtYXBwaW5nIHVwZGF0ZSAyMiAy Ng0KPiArDQo+ICszLiBDaGVjayBmbG93IHB0eXBlIHRvIHBjdHlwZSBtYXBwaW5nIGFkZHMgMjYg dGhpcyBtYXBwaW5nOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+IHNob3cgcG9ydCAwIHBjdHlwZSBt YXBwaW5nDQo+ICsNCj4gKzQuIFJlc2V0IEdUUC1VIElQdjQgaGFzaCBjb25maWd1cmU6Og0KPiAr DQo+ICsgICAgdGVzdHBtZD4gcG9ydCBjb25maWcgMCBwY3R5cGUgMjIgaGFzaF9pbnNldCBjbGVh ciBhbGwNCj4gKw0KPiArNS4gU3BvcnQgd29yZHMgYXJlIDI5IGFuZCAzMCwgZW5hYmxlIGhhc2gg aW5wdXQgc2V0IGZvciBzcG9ydDo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyAw IHBjdHlwZSAyMiBoYXNoX2luc2V0IHNldCBmaWVsZCAyOQ0KPiArICAgIHRlc3RwbWQ+IHBvcnQg Y29uZmlnIDAgcGN0eXBlIDIyIGhhc2hfaW5zZXQgc2V0IGZpZWxkIDMwDQo+ICsNCj4gKzYuIEVu YWJsZSBmbG93IHR5cGUgaWQgMjYncyBSU1M6Og0KPiArDQo+ICsgICAgdGVzdHBtZD4gcG9ydCBj b25maWcgYWxsIHJzcyAyNg0KPiArDQo+ICs3LiBTdGFydCB0ZXN0cG1kLCBzZXQgZndkIHJ4b25s eSwgZW5hYmxlIG91dHB1dCBwcmludA0KPiArDQo+ICs4LiBTZW5kIHNwb3J0IEdUUC1VIElQdjQg cGFja2V0LCBjaGVjayBSU1MgY291bGQgd29yaywgdmVyaWZ5IHRoZSANCj4gK3F1ZXVlDQo+IGlz DQo+ICsgICBiZXR3ZWVuIDEgYW5kIDgsIHByaW50IFBLVF9SWF9SU1NfSEFTSDo6DQo+ICsNCj4g KyAgICBwPUV0aGVyKCkvSVB2NigpL1VEUChkcG9ydD0yMTUyKS9HVFBfVV9IZWFkZXIodGVpZD0z MCkvSVAoKS8NCj4gKyAgICBVRFAoc3BvcnQ9MTAwLGRwb3J0PTIwMCkvUmF3KCd4JyoyMCkNCj4g Kw0KPiArOS4gU2VuZCBkaWZmZXJlbnQgc3BvcnQgR1RQLVUgSVB2NCBwYWNrZXQsIGNoZWNrIHBt ZCByZWNlaXZlcyBwYWNrZXQgZnJvbQ0KPiArICAgZGlmZmVyZW50IHF1ZXVlIGJ1dCBiZXR3ZWVu IDEgYW5kIDg6Og0KPiArDQo+ICsgICAgcD1FdGhlcigpL0lQdjYoKS9VRFAoZHBvcnQ9MjE1Mikv R1RQX1VfSGVhZGVyKHRlaWQ9MzApL0lQKCkvDQo+ICsgICAgVURQKHNwb3J0PTEwMSxkcG9ydD0y MDApL1JhdygneCcqMjApDQo+ICsNCj4gKw0KPiArVGVzdCBDYXNlOiBEcG9ydCBjb250cm9scyBH VFAtVSBJUHY0IHF1ZXVlIGluIHF1ZXVlIHJlZ2lvbiANCj4gKz09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCj4gKzEuIENoZWNrIGZsb3cg dHlwZSB0byBwY3R5cGUgbWFwcGluZzo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBzaG93IHBvcnQg MCBwY3R5cGUgbWFwcGluZw0KPiArDQo+ICsyLiBVcGRhdGUgR1RQLVUgSVB2NCBmbG93IHR5cGUg aWQgMjYgdG8gcGN5dHBlIGlkIDIyIG1hcHBpbmcgaXRlbTo6DQo+ICsNCj4gKyAgICB0ZXN0cG1k PiBwb3J0IGNvbmZpZyAwIHBjdHlwZSBtYXBwaW5nIHVwZGF0ZSAyMiAyNg0KPiArDQo+ICszLiBD aGVjayBmbG93IHB0eXBlIHRvIHBjdHlwZSBtYXBwaW5nIGFkZHMgMjYgdGhpcyBtYXBwaW5nOjoN Cj4gKw0KPiArICAgIHRlc3RwbWQ+IHNob3cgcG9ydCAwIHBjdHlwZSBtYXBwaW5nDQo+ICsNCj4g KzQuIFJlc2V0IEdUUC1VIElQdjQgaGFzaCBjb25maWd1cmU6Og0KPiArDQo+ICsgICAgdGVzdHBt ZD4gcG9ydCBjb25maWcgMCBwY3R5cGUgMjIgaGFzaF9pbnNldCBjbGVhciBhbGwNCj4gKw0KPiAr NS4gRHBvcnQgd29yZHMgYXJlIDI5IGFuZCAzMCwgZW5hYmxlIGhhc2ggaW5wdXQgc2V0IGZvciBk cG9ydDo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyAwIHBjdHlwZSAyMiBoYXNo X2luc2V0IHNldCBmaWVsZCAyOQ0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmlnIDAgcGN0eXBl IDIyIGhhc2hfaW5zZXQgc2V0IGZpZWxkIDMwDQo+ICsNCj4gKzYuIEVuYWJsZSBmbG93IHR5cGUg aWQgMjYncyBSU1M6Og0KPiArDQo+ICsgICAgdGVzdHBtZD4gcG9ydCBjb25maWcgYWxsIHJzcyAy Ng0KPiArDQo+ICs3LiBTdGFydCB0ZXN0cG1kLCBzZXQgZndkIHJ4b25seSwgZW5hYmxlIG91dHB1 dCBwcmludA0KPiArDQo+ICs4LiBTZW5kIGRwcm90IEdUUC1VIElQdjQgcGFja2V0LCBjaGVjayBS U1MgY291bGQgd29yaywgdmVyaWZ5IHRoZSANCj4gK3F1ZXVlDQo+IGlzDQo+ICsgICBiZXR3ZWVu IDEgYW5kIDgsIHByaW50IFBLVF9SWF9SU1NfSEFTSDo6DQo+ICsNCj4gKyAgICBwPUV0aGVyKCkv SVB2NigpL1VEUChkcG9ydD0yMTUyKS9HVFBfVV9IZWFkZXIodGVpZD0zMCkvSVAoKS8NCj4gKyAg ICBVRFAoc3BvcnQ9MTAwLGRwb3J0PTIwMCkvUmF3KCd4JyoyMCkNCj4gKw0KPiArOS4gU2VuZCBk aWZmZXJlbnQgZHBvcnQgR1RQLVUgSVB2NCBwYWNrZXQsIGNoZWNrIHJlY2VpdmUgcGFja2V0IGZy b20NCj4gZGlmZmVyZW50DQo+ICsgICBxdWV1ZSBidXQgYmV0d2VlbiAxIGFuZCA4OjoNCj4gKw0K PiArICAgIHA9RXRoZXIoKS9JUHY2KCkvVURQKGRwb3J0PTIxNTIpL0dUUF9VX0hlYWRlcih0ZWlk PTMwKS9JUCgpLw0KPiArICAgIFVEUChzcG9ydD0xMDAsZHBvcnQ9MjAxKS9SYXcoJ3gnKjIwKQ0K PiArDQo+ICsNCj4gK1Rlc3QgQ2FzZTogSW5uZXIgSVAgc3JjIGNvbnRyb2xzIEdUUC1VIElQdjQg cXVldWUgaW4gcXVldWUgcmVnaW9uIA0KPiArPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCj4gKzEuIENoZWNrIGZsb3cgdHlw ZSB0byBwY3R5cGUgbWFwcGluZzo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBzaG93IHBvcnQgMCBw Y3R5cGUgbWFwcGluZw0KPiArDQo+ICsyLiBVcGRhdGUgR1RQLVUgSVB2NCBmbG93IHR5cGUgaWQg MjYgdG8gcGN5dHBlIGlkIDIyIG1hcHBpbmcgaXRlbTo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBw b3J0IGNvbmZpZyAwIHBjdHlwZSBtYXBwaW5nIHVwZGF0ZSAyMiAyNg0KPiArDQo+ICszLiBDaGVj ayBmbG93IHB0eXBlIHRvIHBjdHlwZSBtYXBwaW5nIGFkZHMgMjYgdGhpcyBtYXBwaW5nOjoNCj4g Kw0KPiArICAgIHRlc3RwbWQ+IHNob3cgcG9ydCAwIHBjdHlwZSBtYXBwaW5nDQo+ICsNCj4gKzQu IFJlc2V0IEdUUC1VIElQdjQgaGFzaCBjb25maWd1cmU6Og0KPiArDQo+ICsgICAgdGVzdHBtZD4g cG9ydCBjb25maWcgMCBwY3R5cGUgMjIgaGFzaF9pbnNldCBjbGVhciBhbGwNCj4gKw0KPiArNS4g SW5uZXIgc291cmNlIHdvcmRzIGFyZSAxNSBhbmQgMTYsIGVuYWJsZSBoYXNoIGlucHV0IHNldCBm b3IgaW5uZXIgc3JjOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmlnIDAgcGN0eXBl IDIyIGhhc2hfaW5zZXQgc2V0IGZpZWxkIDE1DQo+ICsgICAgdGVzdHBtZD4gcG9ydCBjb25maWcg MCBwY3R5cGUgMjIgaGFzaF9pbnNldCBzZXQgZmllbGQgMTYNCj4gKw0KPiArNi4gRW5hYmxlIGZs b3cgdHlwZSBpZCAyNidzIFJTUzo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyBh bGwgcnNzIDI2DQo+ICsNCj4gKzcuIFN0YXJ0IHRlc3RwbWQsIHNldCBmd2Qgcnhvbmx5LCBlbmFi bGUgb3V0cHV0IHByaW50DQo+ICsNCj4gKzguIFNlbmQgaW5uZXIgc3JjIEdUUC1VIElQdjQgcGFj a2V0LCBjaGVjayBSU1MgY291bGQgd29yaywgdmVyaWZ5IHRoZQ0KPiBxdWV1ZSBpcw0KPiArICAg YmV0d2VlbiAxIGFuZCA4LCBwcmludCBQS1RfUlhfUlNTX0hBU0g6Og0KPiArDQo+ICsgICAgcD1F dGhlcigpL0lQKCkvVURQKGRwb3J0PTIxNTIpL0dUUF9VX0hlYWRlcih0ZWlkPTMwKS8NCj4gKyAg ICBJUChzcmM9IjEuMS4xLjEiLGRzdD0iMi4yLjIuMiIpL1VEUCgpL1JhdygneCcqMjApDQo+ICsN Cj4gKzkuIFNlbmQgZGlmZmVyZW50IHNyYyBHVFAtVSBJUHY0IHBhY2tldCwgY2hlY2sgcG1kIHJl Y2VpdmVzIHBhY2tldCANCj4gK2Zyb20NCj4gZGlmZmVyZW50DQo+ICsgICBxdWV1ZSBidXQgYmV0 d2VlbiAxIGFuZCA4OjoNCj4gKw0KPiArICAgIHA9RXRoZXIoKS9JUCgpL1VEUChkcG9ydD0yMTUy KS9HVFBfVV9IZWFkZXIodGVpZD0zMCkvDQo+ICsgICAgSVAoc3JjPSIxLjEuMS4yIixkc3Q9IjIu Mi4yLjIiKS9VRFAoKS9SYXcoJ3gnKjIwKQ0KPiArDQo+ICsxMC4gU2VuZCBkaWZmZXJlbnQgZHN0 IEdUUC1VIElQdjQgcGFja2V0LCBjaGVjayBwbWQgcmVjZWl2ZXMgcGFja2V0IA0KPiArZnJvbQ0K PiBzYW1lDQo+ICsgICAgcXVldWU6Og0KPiArDQo+ICsgICAgcD1FdGhlcigpL0lQKCkvVURQKGRw b3J0PTIxNTIpL0dUUF9VX0hlYWRlcih0ZWlkPTMwKS8NCj4gKyAgICBJUChzcmM9IjEuMS4xLjEi LGRzdD0iMi4yLjIuMyIpL1VEUCgpL1JhdygneCcqMjApDQo+ICsNCj4gKw0KPiArVGVzdCBDYXNl OiBJbm5lciBJUCBkc3QgY29udHJvbHMgR1RQLVUgSVB2NCBxdWV1ZSBpbiBxdWV1ZSByZWdpb24g DQo+ICs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQ0KPiArMS4gQ2hlY2sgZmxvdyB0eXBlIHRvIHBjdHlwZSBtYXBwaW5nOjoN Cj4gKw0KPiArICAgIHRlc3RwbWQ+IHNob3cgcG9ydCAwIHBjdHlwZSBtYXBwaW5nDQo+ICsNCj4g KzIuIFVwZGF0ZSBHVFAtVSBJUHY0IGZsb3cgdHlwZSBpZCAyNiB0byBwY3l0cGUgaWQgMjIgbWFw cGluZyBpdGVtOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmlnIDAgcGN0eXBlIG1h cHBpbmcgdXBkYXRlIDIyIDI2DQo+ICsNCj4gKzMuIENoZWNrIGZsb3cgcHR5cGUgdG8gcGN0eXBl IG1hcHBpbmcgYWRkcyAyNiB0aGlzIG1hcHBpbmc6Og0KPiArDQo+ICsgICAgdGVzdHBtZD4gc2hv dyBwb3J0IDAgcGN0eXBlIG1hcHBpbmcNCj4gKw0KPiArNC4gUmVzZXQgR1RQLVUgSVB2NCBoYXNo IGNvbmZpZ3VyZTo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyAwIHBjdHlwZSAy MiBoYXNoX2luc2V0IGNsZWFyIGFsbA0KPiArDQo+ICs1LiBJbm5lciBkc3Qgd29yZHMgYXJlIDI3 IGFuZCAyOCwgZW5hYmxlIGhhc2ggaW5wdXQgc2V0IGZvciBpbm5lciBkc3Q6Og0KPiArDQo+ICsg ICAgdGVzdHBtZD4gcG9ydCBjb25maWcgMCBwY3R5cGUgMjIgaGFzaF9pbnNldCBzZXQgZmllbGQg MjcNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyAwIHBjdHlwZSAyMiBoYXNoX2luc2V0IHNl dCBmaWVsZCAyOA0KPiArDQo+ICs2LiBFbmFibGUgZmxvdyB0eXBlIGlkIDI2J3MgUlNTOjoNCj4g Kw0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmlnIGFsbCByc3MgMjYNCj4gKw0KPiArNy4gU3Rh cnQgdGVzdHBtZCwgc2V0IGZ3ZCByeG9ubHksIGVuYWJsZSBvdXRwdXQgcHJpbnQNCj4gKw0KPiAr OC4gU2VuZCBpbm5lciBkc3QgR1RQLVUgSVB2NCBwYWNrZXQsIGNoZWNrIFJTUyBjb3VsZCB3b3Jr LCB2ZXJpZnkgdGhlDQo+IHF1ZXVlIGlzDQo+ICsgICBiZXR3ZWVuIDEgYW5kIDgsIHByaW50IFBL VF9SWF9SU1NfSEFTSDo6DQo+ICsNCj4gKyAgICBwPUV0aGVyKCkvSVAoKS9VRFAoZHBvcnQ9MjE1 MikvR1RQX1VfSGVhZGVyKHRlaWQ9MzApLw0KPiArICAgIElQKHNyYz0iMS4xLjEuMSIsZHN0PSIy LjIuMi4yIikvVURQKCkvUmF3KCd4JyoyMCkNCj4gKw0KPiArOS4gU2VuZCBkaWZmZXJlbnQgZHN0 IGFkZHJlc3MgR1RQLVUgSVB2NCBwYWNrZXQsIGNoZWNrIHBtZCByZWNlaXZlcw0KPiBwYWNrZXQN Cj4gKyAgIGZyb20gZGlmZmVyZW50IHF1ZXVlIGJ1dCBiZXR3ZWVuIDEgYW5kIDg6Og0KPiArDQo+ ICsgICAgcD1FdGhlcigpL0lQKCkvVURQKGRwb3J0PTIxNTIpL0dUUF9VX0hlYWRlcih0ZWlkPTMw KS8NCj4gKyAgICBJUChzcmM9IjEuMS4xLjEiLGRzdD0iMi4yLjIuMyIpL1VEUCgpL1JhdygneCcq MjApDQo+ICsNCj4gKzEwLiBTZW5kIGRpZmZlcmVudCBzcmMgYWRkcmVzcywgY2hlY2sgcG1kIHJl Y2VpdmVzIHBhY2tldCBmcm9tIHNhbWUNCj4gcXVldWU6Og0KPiArDQo+ICsgICAgcD1FdGhlcigp L0lQKCkvVURQKGRwb3J0PTIxNTIpL0dUUF9VX0hlYWRlcih0ZWlkPTMwKS8NCj4gKyAgICBJUChz cmM9IjEuMS4xLjIiLGRzdD0iMi4yLjIuMiIpL1VEUCgpL1JhdygneCcqMjApDQo+ICsNCj4gKw0K PiArVGVzdCBDYXNlOiBURUlEIGNvbnRyb2xzIEdUUC1VIElQdjYgcXVldWUgaW4gcXVldWUgcmVn aW9uIA0KPiArPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09DQo+ICsxLiBDaGVjayBmbG93IHR5cGUgdG8gcGN0eXBlIG1hcHBpbmc6Og0KPiAr DQo+ICsgICAgdGVzdHBtZD4gc2hvdyBwb3J0IDAgcGN0eXBlIG1hcHBpbmcNCj4gKw0KPiArMi4g VXBkYXRlIEdUUC1VIElQdjYgZmxvdyB0eXBlIGlkIDIzIHRvIHBjeXRwZSBpZCAyMyBtYXBwaW5n IGl0ZW06Og0KPiArDQo+ICsgICAgdGVzdHBtZD4gcG9ydCBjb25maWcgMCBwY3R5cGUgbWFwcGlu ZyB1cGRhdGUgMjMgMjMNCj4gKw0KPiArMy4gQ2hlY2sgZmxvdyBwdHlwZSB0byBwY3R5cGUgbWFw cGluZyBhZGRzIDIzIHRoaXMgbWFwcGluZzo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBzaG93IHBv cnQgMCBwY3R5cGUgbWFwcGluZw0KPiArDQo+ICs0LiBSZXNldCBHVFAtVSBJUHY2IGhhc2ggY29u ZmlndXJlOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmlnIDAgcGN0eXBlIDIzIGhh c2hfaW5zZXQgY2xlYXIgYWxsDQo+ICsNCj4gKzUuIFRlaWQgd29yZHMgYXJlIDQ0IGFuZCA0NSwg ZW5hYmxlIGhhc2ggaW5wdXQgc2V0IGZvciB0ZWlkOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+IHBv cnQgY29uZmlnIDAgcGN0eXBlIDIzIGhhc2hfaW5zZXQgc2V0IGZpZWxkIDQ0DQo+ICsgICAgdGVz dHBtZD4gcG9ydCBjb25maWcgMCBwY3R5cGUgMjMgaGFzaF9pbnNldCBzZXQgZmllbGQgNDUNCj4g Kw0KPiArNi4gRW5hYmxlIGZsb3cgdHlwZSBpZCAyMydzIFJTUzo6DQo+ICsNCj4gKyAgICB0ZXN0 cG1kPiBwb3J0IGNvbmZpZyBhbGwgcnNzIDIzDQo+ICsNCj4gKzcuIFN0YXJ0IHRlc3RwbWQsIHNl dCBmd2Qgcnhvbmx5LCBlbmFibGUgb3V0cHV0IHByaW50DQo+ICsNCj4gKzguIFNlbmQgdGVpZCBH VFAtVSBJUHY2IHBhY2tldCwgY2hlY2sgUlNTIGNvdWxkIHdvcmssIHZlcmlmeSB0aGUgcXVldWUg aXMNCj4gKyAgIGJldHdlZW4gMTAgYW5kIDI1LCBwcmludCBQS1RfUlhfUlNTX0hBU0g6Og0KPiAr DQo+ICsgICAgcD1FdGhlcigpL0lQKCkvVURQKGRwb3J0PTIxNTIpL0dUUF9VX0hlYWRlcih0ZWlk PTB4ZmUpL0lQdjYoKS8NCj4gKyAgICBVRFAoc3BvcnQ9MTAwLGRwb3J0PTIwMCkvUmF3KCd4Jyoy MCkNCj4gKw0KPiArOS4gU2VuZCBkaWZmZXJlbnQgdGVpZCBHVFAtVSBJUHY0IHBhY2tldCwgY2hl Y2sgcG1kIHJlY2VpdmVzIHBhY2tldCBmcm9tDQo+ICsgICBkaWZmZXJlbnQgcXVldWUgYnV0IGJl dHdlZW4gMTAgYW5kIDI1OjoNCj4gKw0KPiArICAgIHA9RXRoZXIoKS9JUCgpL1VEUChkcG9ydD0y MTUyKS9HVFBfVV9IZWFkZXIodGVpZD0weGZmKS9JUHY2KCkvDQo+ICsgICAgVURQKHNwb3J0PTEw MCxkcG9ydD0yMDApL1JhdygneCcqMjApDQo+ICsNCj4gKw0KPiArVGVzdCBDYXNlOiBTcG9ydCBj b250cm9scyBHVFAtVSBJUHY2IHF1ZXVlIGluIHF1ZXVlIHJlZ2lvbiANCj4gKz09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCj4gKzEuIENo ZWNrIGZsb3cgdHlwZSB0byBwY3R5cGUgbWFwcGluZzo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBz aG93IHBvcnQgMCBwY3R5cGUgbWFwcGluZw0KPiArDQo+ICsyLiBVcGRhdGUgR1RQLVUgSVB2NiBm bG93IHR5cGUgaWQgMjMgdG8gcGN5dHBlIGlkIDIzIG1hcHBpbmcgaXRlbTo6DQo+ICsNCj4gKyAg ICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyAwIHBjdHlwZSBtYXBwaW5nIHVwZGF0ZSAyMyAyMw0KPiAr DQo+ICszLiBDaGVjayBmbG93IHB0eXBlIHRvIHBjdHlwZSBtYXBwaW5nIGFkZHMgMjMgdGhpcyBt YXBwaW5nOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+IHNob3cgcG9ydCAwIHBjdHlwZSBtYXBwaW5n DQo+ICsNCj4gKzQuIFJlc2V0IEdUUC1VIElQdjYgaGFzaCBjb25maWd1cmU6Og0KPiArDQo+ICsg ICAgdGVzdHBtZD4gcG9ydCBjb25maWcgMCBwY3R5cGUgMjMgaGFzaF9pbnNldCBjbGVhciBhbGwN Cj4gKw0KPiArNS4gU3BvcnQgd29yZHMgYXJlIDI5IGFuZCAzMCwgZW5hYmxlIGhhc2ggaW5wdXQg c2V0IGZvciBzcG9ydDo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyAwIHBjdHlw ZSAyMyBoYXNoX2luc2V0IHNldCBmaWVsZCAyOQ0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmln IDAgcGN0eXBlIDIzIGhhc2hfaW5zZXQgc2V0IGZpZWxkIDMwDQo+ICsNCj4gKzYuIEVuYWJsZSBm bG93IHR5cGUgaWQgMjMncyBSU1M6Og0KPiArDQo+ICsgICAgdGVzdHBtZD4gcG9ydCBjb25maWcg YWxsIHJzcyAyMw0KPiArDQo+ICs3LiBTdGFydCB0ZXN0cG1kLCBzZXQgZndkIHJ4b25seSwgZW5h YmxlIG91dHB1dCBwcmludA0KPiArDQo+ICs4LiBTZW5kIHNwb3J0IEdUUC1VIElQdjYgcGFja2V0 LCBjaGVjayBSU1MgY291bGQgd29yaywgdmVyaWZ5IHRoZSANCj4gK3F1ZXVlDQo+IGlzDQo+ICsg ICBiZXR3ZWVuIDEwIGFuZCAyNSwgcHJpbnQgUEtUX1JYX1JTU19IQVNIOjoNCj4gKw0KPiArICAg IHA9RXRoZXIoKS9JUCgpL1VEUChkcG9ydD0yMTUyKS9HVFBfVV9IZWFkZXIodGVpZD0zMCkvSVB2 NigpLw0KPiArICAgIFVEUChzcG9ydD0xMDAsZHBvcnQ9MjAwKS9SYXcoJ3gnKjIwKQ0KPiArDQo+ ICs5LiBTZW5kIGRpZmZlcmVudCBzcG9ydCBHVFAtVSBJUHY2IHBhY2tldCwgY2hlY2sgcG1kIHJl Y2VpdmVzIHBhY2tldCBmcm9tDQo+ICsgICBkaWZmZXJlbnQgcXVldWUgYnV0IGJldHdlZW4gMTAg YW5kIDI1OjoNCj4gKw0KPiArICAgIHA9RXRoZXIoKS9JUCgpL1VEUChkcG9ydD0yMTUyKS9HVFBf VV9IZWFkZXIodGVpZD0zMCkvSVB2NigpLw0KPiArICAgIFVEUChzcG9ydD0xMDEsZHBvcnQ9MjAw KS9SYXcoJ3gnKjIwKQ0KPiArDQo+ICsNCj4gK1Rlc3QgQ2FzZTogRHBvcnQgY29udHJvbHMgR1RQ LVUgSVB2NiBxdWV1ZSBpbiBxdWV1ZSByZWdpb24gDQo+ICs9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQo+ICsxLiBDaGVjayBmbG93IHR5 cGUgdG8gcGN0eXBlIG1hcHBpbmc6Og0KPiArDQo+ICsgICAgdGVzdHBtZD4gc2hvdyBwb3J0IDAg cGN0eXBlIG1hcHBpbmcNCj4gKw0KPiArMi4gVXBkYXRlIEdUUC1VIElQdjYgZmxvdyB0eXBlIGlk IDIzIHRvIHBjeXRwZSBpZCAyMyBtYXBwaW5nIGl0ZW06Og0KPiArDQo+ICsgICAgdGVzdHBtZD4g cG9ydCBjb25maWcgMCBwY3R5cGUgbWFwcGluZyB1cGRhdGUgMjMgMjMNCj4gKw0KPiArMy4gQ2hl Y2sgZmxvdyBwdHlwZSB0byBwY3R5cGUgbWFwcGluZyBhZGRzIDIzIHRoaXMgbWFwcGluZzo6DQo+ ICsNCj4gKyAgICB0ZXN0cG1kPiBzaG93IHBvcnQgMCBwY3R5cGUgbWFwcGluZw0KPiArDQo+ICs0 LiBSZXNldCBHVFAtVSBJUHY2IGhhc2ggY29uZmlndXJlOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+ IHBvcnQgY29uZmlnIDAgcGN0eXBlIDIzIGhhc2hfaW5zZXQgY2xlYXIgYWxsDQo+ICsNCj4gKzUu IERwb3J0IHdvcmRzIGFyZSAyOSBhbmQgMzAsIGVuYWJsZSBoYXNoIGlucHV0IHNldCBmb3IgZHBv cnQ6Og0KPiArDQo+ICsgICAgdGVzdHBtZD4gcG9ydCBjb25maWcgMCBwY3R5cGUgMjMgaGFzaF9p bnNldCBzZXQgZmllbGQgMjkNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyAwIHBjdHlwZSAy MyBoYXNoX2luc2V0IHNldCBmaWVsZCAzMA0KPiArDQo+ICs2LiBFbmFibGUgZmxvdyB0eXBlIGlk IDIzJ3MgUlNTOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmlnIGFsbCByc3MgMjMN Cj4gKw0KPiArNy4gU3RhcnQgdGVzdHBtZCwgc2V0IGZ3ZCByeG9ubHksIGVuYWJsZSBvdXRwdXQg cHJpbnQNCj4gKw0KPiArOC4gU2VuZCBkcG9ydCBHVFAtVSBJUHY2IHBhY2tldCwgY2hlY2sgUlNT IGNvdWxkIHdvcmssIHZlcmlmeSB0aGUgcXVldWUNCj4gKyAgIGlzIGJldHdlZW4gMTAgYW5kIDI1 LCBwcmludCBQS1RfUlhfUlNTX0hBU0g6Og0KPiArDQo+ICsgICAgcD1FdGhlcigpL0lQKCkvVURQ KGRwb3J0PTIxNTIpL0dUUF9VX0hlYWRlcih0ZWlkPTMwKS9JUHY2KCkvDQo+ICsgICAgVURQKHNw b3J0PTEwMCxkcG9ydD0yMDApL1JhdygneCcqMjApDQo+ICsNCj4gKzkuIFNlbmQgZGlmZmVyZW50 IGRwb3J0IEdUUC1VIElQdjYgcGFja2V0LCBjaGVjayBwbWQgcmVjZWl2ZXMgcGFja2V0IGZyb20N Cj4gKyAgIGRpZmZlcmVudCBxdWV1ZSBidXQgYmV0d2VlbiAxMCBhbmQgMjU6Og0KPiArDQo+ICsg ICAgcD1FdGhlcigpL0lQKCkvVURQKGRwb3J0PTIxNTIpL0dUUF9VX0hlYWRlcih0ZWlkPTMwKS9J UHY2KCkvDQo+ICsgICAgVURQKHNwb3J0PTEwMCxkcG9ydD0yMDEpL1JhdygneCcqMjApDQo+ICsN Cj4gKw0KPiArDQo+ICtUZXN0IENhc2U6IElubmVyIElQdjYgc3JjIGNvbnRyb2xzIEdUUC1VIElQ djYgcXVldWUgaW4gcXVldWUgcmVnaW9uIA0KPiArPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KPiArMS4gQ2hlY2sgZmxv dyB0eXBlIHRvIHBjdHlwZSBtYXBwaW5nOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+IHNob3cgcG9y dCAwIHBjdHlwZSBtYXBwaW5nDQo+ICsNCj4gKzIuIFVwZGF0ZSBHVFAtVSBJUHY2IGZsb3cgdHlw ZSBpZCAyMyB0byBwY3l0cGUgaWQgMjMgbWFwcGluZyBpdGVtOjoNCj4gKw0KPiArICAgIHRlc3Rw bWQ+IHBvcnQgY29uZmlnIDAgcGN0eXBlIG1hcHBpbmcgdXBkYXRlIDIzIDIzDQo+ICsNCj4gKzMu IENoZWNrIGZsb3cgcHR5cGUgdG8gcGN0eXBlIG1hcHBpbmcgYWRkcyAyMyB0aGlzIG1hcHBpbmc6 Og0KPiArDQo+ICsgICAgdGVzdHBtZD4gc2hvdyBwb3J0IDAgcGN0eXBlIG1hcHBpbmcNCj4gKw0K PiArNC4gUmVzZXQgR1RQLVUgSVB2NiBoYXNoIGNvbmZpZ3VyZTo6DQo+ICsNCj4gKyAgICB0ZXN0 cG1kPiBwb3J0IGNvbmZpZyAwIHBjdHlwZSAyMyBoYXNoX2luc2V0IGNsZWFyIGFsbA0KPiArDQo+ ICs1LiBJbm5lciBJUHY2IHNyYyB3b3JkcyBhcmUgMTN+MjAsIGVuYWJsZSBoYXNoIGlucHV0IHNl dCBmb3IgaW5uZXIgc3JjOjoNCj4gKw0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmlnIDAgcGN0 eXBlIDIzIGhhc2hfaW5zZXQgc2V0IGZpZWxkIDEzDQo+ICsgICAgdGVzdHBtZD4gcG9ydCBjb25m aWcgMCBwY3R5cGUgMjMgaGFzaF9pbnNldCBzZXQgZmllbGQgMTQNCj4gKyAgICB0ZXN0cG1kPiBw b3J0IGNvbmZpZyAwIHBjdHlwZSAyMyBoYXNoX2luc2V0IHNldCBmaWVsZCAxNQ0KPiArICAgIHRl c3RwbWQ+IHBvcnQgY29uZmlnIDAgcGN0eXBlIDIzIGhhc2hfaW5zZXQgc2V0IGZpZWxkIDE2DQo+ ICsgICAgdGVzdHBtZD4gcG9ydCBjb25maWcgMCBwY3R5cGUgMjMgaGFzaF9pbnNldCBzZXQgZmll bGQgMTcNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyAwIHBjdHlwZSAyMyBoYXNoX2luc2V0 IHNldCBmaWVsZCAxOA0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmlnIDAgcGN0eXBlIDIzIGhh c2hfaW5zZXQgc2V0IGZpZWxkIDE5DQo+ICsgICAgdGVzdHBtZD4gcG9ydCBjb25maWcgMCBwY3R5 cGUgMjMgaGFzaF9pbnNldCBzZXQgZmllbGQgMjANCj4gKw0KPiArNi4gRW5hYmxlIGZsb3cgdHlw ZSBpZCAyMydzIFJTUzo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyBhbGwgcnNz IDIzDQo+ICsNCj4gKzcuIFN0YXJ0IHRlc3RwbWQsIHNldCBmd2Qgcnhvbmx5LCBlbmFibGUgb3V0 cHV0IHByaW50DQo+ICsNCj4gKzguIFNlbmQgaW5uZXIgc3JjIGFkZHJlc3MgR1RQLVUgSVB2NiBw YWNrZXRzLCBjaGVjayBSU1MgY291bGQgd29yaywNCj4gdmVyaWZ5DQo+ICsgICB0aGUgcXVldWUg aXMgYmV0d2VlbiAxMCBhbmQgMjUsIHByaW50IFBLVF9SWF9SU1NfSEFTSDo6DQo+ICsNCj4gKyAg ICBwPUV0aGVyKCkvSVAoKS9VRFAoZHBvcnQ9MjE1MikvR1RQX1VfSGVhZGVyKHRlaWQ9MzApLw0K PiArICAgIElQdjYoc3JjPSIxMDAxOjBkYjg6ODVhMzowMDAwOjAwMDA6OGEyZTowMzcwOjAwMDEi LA0KPiArICAgIGRzdD0iMjAwMTowZGI4Ojg1YTM6MDAwMDowMDAwOjhhMmU6MDM3MDowMDAxIikv VURQKCkvUmF3KCd4JyoyMCkNCj4gKw0KPiArOS4gU2VuZCBkaWZmZXJlbnQgaW5uZXIgc3JjIEdU UC1VIElQdjYgcGFja2V0LCBjaGVjayBwbWQgcmVjZWl2ZXMgcGFja2V0DQo+ICsgICBmcm9tIGRp ZmZlcmVudCBxdWV1ZSBidXQgZGJldHdlZW4gMTAgYW5kIDI1OjoNCj4gKw0KPiArICAgIHA9RXRo ZXIoKS9JUCgpL1VEUChkcG9ydD0yMTUyKS9HVFBfVV9IZWFkZXIodGVpZD0zMCkvDQo+ICsgICAg SVB2NihzcmM9IjEwMDE6MGRiODo4NWEzOjAwMDA6MDAwMDo4YTJlOjAzNzA6MDAwMiIsDQo+ICsg ICAgZHN0PSIyMDAxOjBkYjg6ODVhMzowMDAwOjAwMDA6OGEyZTowMzcwOjAwMDEiKS9VRFAoKS9S YXcoJ3gnKjIwKQ0KPiArDQo+ICsxMC4gU2VuZCBkaWZmZXJlbnQgaW5uZXIgZHN0IEdUUC1VIElQ djYgcGFja2V0LCBjaGVjayBwbWQgcmVjZWl2ZXMgcGFja2V0DQo+ICsgICAgZnJvbSBzYW1lIHF1 ZXVlOjoNCj4gKw0KPiArICAgIHA9RXRoZXIoKS9JUCgpL1VEUChkcG9ydD0yMTUyKS9HVFBfVV9I ZWFkZXIodGVpZD0zMCkvDQo+ICsgICAgSVB2NihzcmM9IjEwMDE6MGRiODo4NWEzOjAwMDA6MDAw MDo4YTJlOjAzNzA6MDAwMSIsDQo+ICsgICAgZHN0PSIyMDAxOjBkYjg6ODVhMzowMDAwOjAwMDA6 OGEyZTowMzcwOjAwMDIpL1VEUCgpL1JhdygneCcqMjApDQo+ICsNCj4gKw0KPiArDQo+ICtUZXN0 IENhc2U6IElubmVyIElQdjYgZHN0IGNvbnRyb2xzIEdUUC1VIElQdjYgcXVldWUgaW4gcXVldWUg cmVnaW9uIA0KPiArPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09DQo+ICs9PT09IDEuIENoZWNrIGZsb3cgdHlwZSB0byBw Y3R5cGUgbWFwcGluZzo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBzaG93IHBvcnQgMCBwY3R5cGUg bWFwcGluZw0KPiArDQo+ICsyLiBVcGRhdGUgR1RQLVUgSVB2NiBmbG93IHR5cGUgaWQgMjMgdG8g cGN5dHBlIGlkIDIzIG1hcHBpbmcgaXRlbTo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNv bmZpZyAwIHBjdHlwZSBtYXBwaW5nIHVwZGF0ZSAyMyAyMw0KPiArDQo+ICszLiBDaGVjayBmbG93 IHB0eXBlIHRvIHBjdHlwZSBtYXBwaW5nIGFkZHMgMjMgdGhpcyBtYXBwaW5nOjoNCj4gKw0KPiAr ICAgIHRlc3RwbWQ+IHNob3cgcG9ydCAwIHBjdHlwZSBtYXBwaW5nDQo+ICsNCj4gKzQuIFJlc2V0 IEdUUC1VIElQdjYgaGFzaCBjb25maWd1cmU6Og0KPiArDQo+ICsgICAgdGVzdHBtZD4gcG9ydCBj b25maWcgMCBwY3R5cGUgMjMgaGFzaF9pbnNldCBjbGVhciBhbGwNCj4gKw0KPiArNS4gSW5uZXIg SVB2NiBkc3Qgd29yZHMgYXJlIDIxfjI4LCBlbmFibGUgaGFzaCBpbnB1dCBzZXQgZm9yIGlubmVy IGRzdDo6DQo+ICsNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyAwIHBjdHlwZSAyMyBoYXNo X2luc2V0IHNldCBmaWVsZCAyMQ0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmlnIDAgcGN0eXBl IDIzIGhhc2hfaW5zZXQgc2V0IGZpZWxkIDIyDQo+ICsgICAgdGVzdHBtZD4gcG9ydCBjb25maWcg MCBwY3R5cGUgMjMgaGFzaF9pbnNldCBzZXQgZmllbGQgMjMNCj4gKyAgICB0ZXN0cG1kPiBwb3J0 IGNvbmZpZyAwIHBjdHlwZSAyMyBoYXNoX2luc2V0IHNldCBmaWVsZCAyNA0KPiArICAgIHRlc3Rw bWQ+IHBvcnQgY29uZmlnIDAgcGN0eXBlIDIzIGhhc2hfaW5zZXQgc2V0IGZpZWxkIDI1DQo+ICsg ICAgdGVzdHBtZD4gcG9ydCBjb25maWcgMCBwY3R5cGUgMjMgaGFzaF9pbnNldCBzZXQgZmllbGQg MjYNCj4gKyAgICB0ZXN0cG1kPiBwb3J0IGNvbmZpZyAwIHBjdHlwZSAyMyBoYXNoX2luc2V0IHNl dCBmaWVsZCAyNw0KPiArICAgIHRlc3RwbWQ+IHBvcnQgY29uZmlnIDAgcGN0eXBlIDIzIGhhc2hf aW5zZXQgc2V0IGZpZWxkIDI4DQo+ICsNCj4gKzYuIEVuYWJsZSBmbG93IHR5cGUgaWQgMjMncyBS U1M6Og0KPiArDQo+ICsgICAgdGVzdHBtZD4gcG9ydCBjb25maWcgYWxsIHJzcyAyMw0KPiArDQo+ ICs3LiBTdGFydCB0ZXN0cG1kLCBzZXQgZndkIHJ4b25seSwgZW5hYmxlIG91dHB1dCBwcmludA0K PiArDQo+ICs4LiBTZW5kIGlubmVyIGRzdCBHVFAtVSBJUHY2IHBhY2tldHMsIGNoZWNrIFJTUyBj b3VsZCB3b3JrLCB2ZXJpZnkgdGhlDQo+ICsgICBxdWV1ZSBpcyBiZXR3ZWVuIDEwIGFuZCAyNSwg cHJpbnQgUEtUX1JYX1JTU19IQVNIOjoNCj4gKw0KPiArICAgIHA9RXRoZXIoKS9JUCgpL1VEUChk cG9ydD0yMTUyKS9HVFBfVV9IZWFkZXIodGVpZD0zMCkvDQo+ICsgICAgSVB2NihzcmM9IjEwMDE6 MGRiODo4NWEzOjAwMDA6MDAwMDo4YTJlOjAzNzA6MDAwMSIsDQo+ICsgICAgZHN0PSIyMDAxOjBk Yjg6ODVhMzowMDAwOjAwMDA6OGEyZTowMzcwOjAwMDEiKS9VRFAoKS9SYXcoJ3gnKjIwKQ0KPiAr DQo+ICs5LiBTZW5kIGRpZmZlcmVudCBpbm5lciBkc3QgR1RQLVUgSVB2NiBwYWNrZXRzLCBjaGVj ayBwbWQgcmVjZWl2ZXMgcGFja2V0DQo+ICsgICBmcm9tIGRpZmZlcmVudCBxdWV1ZSBidXQgYmV0 d2VlbiAxMCBhbmQgMjU6Og0KPiArDQo+ICsgICAgcD1FdGhlcigpL0lQKCkvVURQKGRwb3J0PTIx NTIpL0dUUF9VX0hlYWRlcih0ZWlkPTMwKS8NCj4gKyAgICBJUHY2KHNyYz0iMTAwMTowZGI4Ojg1 YTM6MDAwMDowMDAwOjhhMmU6MDM3MDowMDAxIiwNCj4gKyAgICBkc3Q9IjIwMDE6MGRiODo4NWEz OjAwMDA6MDAwMDo4YTJlOjAzNzA6MDAwMiIpL1VEUCgpL1JhdygneCcqMjApDQo+ICsNCj4gKzEw LiBTZW5kIGRpZmZlcmVudCBpbm5lciBzcmMgR1RQLVUgSVB2NiBwYWNrZXRzLCBjaGVjayBwbWQg cmVjZWl2ZXMNCj4gcGFja2V0DQo+ICsgICAgZnJvbSBzYW1lIHF1ZXVlOjoNCj4gKw0KPiArICAg IHA9RXRoZXIoKS9JUCgpL1VEUChkcG9ydD0yMTUyKS9HVFBfVV9IZWFkZXIodGVpZD0zMCkvDQo+ ICsgICAgSVB2NihzcmM9IjEwMDE6MGRiODo4NWEzOjAwMDA6MDAwMDo4YTJlOjAzNzA6MDAwMiIs DQo+ICsgICAgZHN0PSIyMDAxOjBkYjg6ODVhMzowMDAwOjAwMDA6OGEyZTowMzcwOjAwMDEiKS9V RFAoKS9SYXcoJ3gnKjIwKQ0KPiAtLQ0KPiAyLjUuNQ0KDQo=