From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-eopbgr20086.outbound.protection.outlook.com [40.107.2.86]) by dpdk.org (Postfix) with ESMTP id 3F39F6833; Fri, 24 Aug 2018 17:10:45 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rlN0ZFXmlDXdS635/XNHuL3h5VWLCC5doh4/PgAlx70=; b=WfprO/7kQMo3W57YzfwdKw9pbHd1SwzAGGwaJzBWb1jMNjQMY6K4E091LWzJtqgQvvXCU2IT2+DKeEiHmIJ23S/oVtT+vMpw6xGNjQl6nJD4ymUDOsB3a/X+6LrfSxXWHJQGlddcp9qcCHgzg4mfjrDfL+0vmCyHyZVHVTQXbpQ= Received: from DB3PR0502MB3980.eurprd05.prod.outlook.com (52.134.72.27) by DB3PR0502MB4076.eurprd05.prod.outlook.com (52.134.72.157) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1080.14; Fri, 24 Aug 2018 15:10:43 +0000 Received: from DB3PR0502MB3980.eurprd05.prod.outlook.com ([fe80::d45:8e84:6d63:c57c]) by DB3PR0502MB3980.eurprd05.prod.outlook.com ([fe80::d45:8e84:6d63:c57c%2]) with mapi id 15.20.1059.023; Fri, 24 Aug 2018 15:10:43 +0000 From: Yongseok Koh To: Alejandro Lucero CC: dpdk stable , dev Thread-Topic: [dpdk-dev] 17.11.4 patches review and test Thread-Index: AQHUNY2SOKtSvwXKMk+v7+wMKBsJwqTKAoWAgAIK4ICAAYFjAIABFXaAgABfOgCAAAfEAIAAAukI Date: Fri, 24 Aug 2018 15:10:43 +0000 Message-ID: <2C0568C0-0AC3-46CE-B1E4-01C8183091B1@mellanox.com> References: <20180816181821.37143-1-yskoh@mellanox.com> <20180823001915.GA27470@yongseok-MBP.local> , In-Reply-To: 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=yskoh@mellanox.com; x-originating-ip: [73.222.116.174] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; DB3PR0502MB4076; 6:R2dstSboVD5FjL4wrKzkE4EiHSPSC4rjlZCLLWX5iiXpoYa+GOeuEqbM+v65BJdQOrxinw3hPn2MZnddgkAUKFwbXyLJQAbbuGvmaOxRWpMKMhKgAzuKRqcpJgWyLKaWurmbqUZFWtbkjU5fzGk4SlOSaub8TuNUmsCwl8jU8EWe571xn+t1L4c55Qg3TWORPSyGwtAQXvoEttoX+FbX1h/oSzfT/t4BGd4+wbTPCrUP/fPSLs0dq1wqk6MT9wm24I1GmYn4tfS0UvJDmTtCVzzm9q7OUQNc7LZ0cww0JqlkTEbVadjVugqkFISfsydVjQuk+ezEhCoJRs1DVKwymMm3fjMvWPNlbiJCTyDBg75WLxJFqmcZLjsr/y2W+i2ocfsHldXaw2+PQy2w5f/vvA1pAVFIMm4TzXKc6U/JLZudVxO9lemCk5dfaMVqFcWcLbMbZ+rBtlo+xOWdle5JuA==; 5:hDW2geAIQhNK1Pa7n7pB5yW9HKjgzeqXQJzGI3SdJFP2aweiYdlH41mk+6s/gXevMje55GIAA4YX2P37wZKDnLEYoic3mzvp8lv9bb+aWnCSn/hlHMd2iRHxD8vEIyhjrNfMKU1whAMCr+nU0u2ShbROudCxRahBReZt/sGQb9w=; 7:cNsMLhhnZlgPYjrYpj19ijyEuoOtADnEAtc6xPaO+UdDNuzh+1eJilUG/rQsoG388x7E/Y5PnA2N7CYdiJj+KZZa0IfvOULRqXEswAmWyighYWvXpTfihjL8XtTenyBmG+VoqfVVF759XKiFM69e9MGC/hP2M7BNn4wy+D13IzExgHSQUGkFi2iZyYOEWYDZmgrDtrnKFZukGmlvek7Qr2151C9gXaO0ee9DjzgpdMiI0h81SYp9jKwIN+kTlTW7 x-ms-exchange-antispam-srfa-diagnostics: SOS; x-ms-office365-filtering-correlation-id: a2ffdde8-fa0a-4e0b-6836-08d609d3c304 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989137)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600074)(711020)(4618075)(2017052603328)(7153060)(7193020); SRVR:DB3PR0502MB4076; x-ms-traffictypediagnostic: DB3PR0502MB4076: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(192374486261705)(189930954265078)(45079756050767)(17755550239193); x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93001095)(3231311)(944501410)(52105095)(10201501046)(3002001)(6055026)(149027)(150027)(6041310)(20161123560045)(20161123562045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(201708071742011)(7699016); SRVR:DB3PR0502MB4076; BCL:0; PCL:0; RULEID:; SRVR:DB3PR0502MB4076; x-forefront-prvs: 07749F8C42 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(376002)(136003)(366004)(396003)(39860400002)(346002)(189003)(199004)(54094003)(53754006)(25786009)(476003)(7736002)(68736007)(54896002)(82746002)(3846002)(236005)(11346002)(81156014)(81166006)(6306002)(486006)(4326008)(446003)(6246003)(8936002)(106356001)(53936002)(14444005)(14454004)(26005)(93886005)(6436002)(256004)(39060400002)(83716003)(97736004)(2616005)(6512007)(33656002)(8676002)(6116002)(102836004)(186003)(36756003)(606006)(6506007)(76176011)(6916009)(6486002)(575784001)(966005)(45080400002)(99286004)(86362001)(5660300001)(2906002)(316002)(478600001)(66066001)(53546011)(2900100001)(5250100002)(105586002)(229853002)(54906003); DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR0502MB4076; H:DB3PR0502MB3980.eurprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: Jta/gPlL9DHpdwtPPC8E8SCBr0T/mjk7jM3SJ2g7VNCI58FNCakp9XWdsdr5GoQsnoMPlbP45YMVI0esnMxDXNr6K/ptA804PJ0xCPLK1hPPp4P/VOAud9SgANeBTaHOo8X6trdTRdE5AzBFMJWKDRkgYRuFmeDh5sq7S8c5w8jDskm8FRmSc8ayNPtAANlJbtn7BVIZvoelGyr/00SNhYmw+wlqGpRuoBsR0ZOMkLj+1FiGk0nLU2wSVlWAnMmksIcOOx2MNLVqYtSohjc/9qykpZSJqWrFGp32/+bpczQjvZ+eFus669+LT6zVDGyYzv3NF1mXwv6XlwKGqcCM7cKDCSyFTt9eFklP1+wGCFc= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: a2ffdde8-fa0a-4e0b-6836-08d609d3c304 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Aug 2018 15:10:43.1599 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR0502MB4076 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: Re: [dpdk-dev] 17.11.4 patches review and test X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Aug 2018 15:10:45 -0000 DQpPbiBBdWcgMjQsIDIwMTgsIGF0IDg6MDAgQU0sIEFsZWphbmRybyBMdWNlcm8gPGFsZWphbmRy by5sdWNlcm9AbmV0cm9ub21lLmNvbTxtYWlsdG86YWxlamFuZHJvLmx1Y2Vyb0BuZXRyb25vbWUu Y29tPj4gd3JvdGU6DQoNCg0KDQpPbiBGcmksIEF1ZyAyNCwgMjAxOCBhdCA0OjMxIFBNLCBZb25n c2VvayBLb2ggPHlza29oQG1lbGxhbm94LmNvbTxtYWlsdG86eXNrb2hAbWVsbGFub3guY29tPj4g d3JvdGU6DQoNCj4gT24gQXVnIDI0LCAyMDE4LCBhdCAxOjUxIEFNLCBBbGVqYW5kcm8gTHVjZXJv IDxhbGVqYW5kcm8ubHVjZXJvQG5ldHJvbm9tZS5jb208bWFpbHRvOmFsZWphbmRyby5sdWNlcm9A bmV0cm9ub21lLmNvbT4+IHdyb3RlOg0KPg0KPg0KPg0KPiBPbiBUaHUsIEF1ZyAyMywgMjAxOCBh dCA2OjE4IFBNLCBZb25nc2VvayBLb2ggPHlza29oQG1lbGxhbm94LmNvbTxtYWlsdG86eXNrb2hA bWVsbGFub3guY29tPj4gd3JvdGU6DQo+DQo+ID4gT24gQXVnIDIyLCAyMDE4LCBhdCA1OjE5IFBN LCBZb25nc2VvayBLb2ggPHlza29oQG1lbGxhbm94LmNvbTxtYWlsdG86eXNrb2hAbWVsbGFub3gu Y29tPj4gd3JvdGU6DQo+ID4NCj4gPiBPbiBUdWUsIEF1ZyAyMSwgMjAxOCBhdCAxMjowNzo0OVBN ICswMjAwLCBBbGVqYW5kcm8gTHVjZXJvIHdyb3RlOg0KPiA+PiBIaSBZb25uZ3Nlb2ssDQo+ID4+ DQo+ID4+IFRoZXJlIGlzIGEgcGF0Y2hzZXQgYWltZWQgYXQgMTcuMTEueDoNCj4gPj4NCj4gPj4g aHR0cHM6Ly9lbWVhMDEuc2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRw cyUzQSUyRiUyRnBhdGNoZXMuZHBkay5vcmclMkZjb3ZlciUyRjQyNzQxJTJGJmFtcDtkYXRhPTAy JTdDMDElN0N5c2tvaCU0MG1lbGxhbm94LmNvbSU3Q2IxYjBlM2VmZjcxYzQ5OWZmM2ZiMDhkNjA4 OGUxZWRlJTdDYTY1Mjk3MWM3ZDJlNGQ5YmE2YTRkMTQ5MjU2ZjQ2MWIlN0MwJTdDMCU3QzYzNjcw NTgwMzg0NjU0ODk2NyZhbXA7c2RhdGE9OGYxMmMxSXVVZTRtdzJFYVRaMTh2VlR1TFRqWE9EMmNT ZSUyQiUyQjdmNk9GZmslM0QmYW1wO3Jlc2VydmVkPTA8aHR0cHM6Ly9lbWVhMDEuc2FmZWxpbmtz LnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRnBhdGNoZXMuZHBkay5v cmclMkZjb3ZlciUyRjQyNzQxJTJGJmRhdGE9MDIlN0MwMSU3Q3lza29oJTQwbWVsbGFub3guY29t JTdDZTM3ODM1OGFkMTRlNGNkOWZhODAwOGQ2MDlkMjRmNzQlN0NhNjUyOTcxYzdkMmU0ZDliYTZh NGQxNDkyNTZmNDYxYiU3QzAlN0MwJTdDNjM2NzA3MTk2MjQxNzk3MTU1JnNkYXRhPXdNVkFhTU12 Wko1VVlVUGtjd0FodmtvJTJGOE1vck9UdHo2UzhWQ3FlVmdadyUzRCZyZXNlcnZlZD0wPg0KPiA+ Pg0KPiA+PiBJdCB3YXMgbm90IGFjY2VwdGVkIGZvciBtYXN0ZXIgYmVjYXVzZSB0aGUgbWVtb3J5 IGNvZGUgaGFzIGNoYW5nZWQgYSBsb3QNCj4gPj4gc2luY2UgMTcuMTEsIGFuZCBJJ20gd29ya2lu ZyBvbiBhbm90aGVyIHBhdGNoc2V0IGZvciBhZGp1c3RpbmcgdG8gdGhlIHRob3NlDQo+ID4+IGNo YW5nZXMuDQo+ID4+DQo+ID4+IEkgd29uZGVyIGlmIHRoZXJlIGlzIGFueSBpc3N1ZSB3aXRoIGFk ZGluZyB0aGlzIHBhdGNoc2V0IHRvIHN0YWJsZSAxNy4xMS40Lg0KPiA+PiBOb3RlIHRoYXQgdGhp cyBtYWtlcyB1bmxpa2VseSBhIGtub3duIGxpbWl0YXRpb24gd2l0aCBlbXVsYXRlZCBJT01NVSBp bnNpZGUNCj4gPj4gVk1zLg0KPiA+DQo+ID4gVGhpcyBwYXRjaHNldCBzZWVtcyBxdWl0ZSBsYXJn ZSBmb3Igc3RhYmxlIHJlbGVhc2UgYW5kIG5lZWQgdG8gYmUgd2VsbCB2ZXJpZmllZA0KPiA+IGJl Zm9yZSBHQS4gSW4gLXJjMSBzdGFnZSwgd2UgZG9uJ3QgdXN1YWxseSB0YWtlIHN1Y2ggYSBsYXJn ZSBwYXRjaHNldCBhcyBwZW9wbGUNCj4gPiBoYXZlIGFscmVhZHkgc3RhcnRlZCB2ZXJpZmljYXRp b24uIEFuZCB3ZSBkb24ndCB1c3VhbGx5IHJlbGVhc2UgLXJjMi4gSWYgeW91J3JlDQo+ID4gdHJ5 aW5nIHRvIHNvbHZlIGEgdmVyeSBjcml0aWNhbCBpc3N1ZSB3aXRoIHRoaXMgcGF0Y2hzZXQsIEkg aGF2ZSB0byByZWxlYXNlIC1yYzINCj4gPiBhbmQgYXNrIHBlb3BsZSB0byB2ZXJpZnkgYWdhaW4u IEhvdyBjcml0aWNhbCBpcyB5b3VyIGlzc3VlPw0KPiA+DQo+ID4gRm9yIHRoZSBwYXRjaHNldCwN Cj4gPiAtICJtZW06IGFkZCBmdW5jdGlvbiBmb3IgY2hlY2tpbmcgbWVtc2VncyBJT1ZBcyBhZGRy ZXNzZXMiDQo+ID4gIFRoaXMgaXMgYWRkaW5nIGEgbmV3IEFQSSwgc28gSSBkb24ndCBleHBlY3Qg YW55IEFQSS9BQkkgYnJlYWthZ2UsIGJ1dCB3YW50IHRvDQo+ID4gIGRvdWJsZS1jb25maXJtIHdp dGggVGhvbWFzLiBUaG9tYXM/DQo+ID4NCj4gPiAtICJidXMvcGNpOiB1c2UgSU9WQXMgY2hlY2sg d2hlbiBzZXR0aW5nIElPVkEgbW9kZSINCj4gPiAgQWxsIHRoZSBwYXRjaGVzIGdvdCBhY2sgZXhj ZXB0IGZvciB0aGlzIG9uZSBidXQgZnJvbSBsb29raW5nIGF0IHRoZSB0aHJlYWRzIGluDQo+ID4g IGRldiBtYWlsaW5nIGxpc3QsIGl0IGxvb2tzIG9rYXkuIEkgaGF2ZSBhIHF1ZXN0aW9uIHRob3Vn aC4NCj4gPg0KPiA+PiBAQCAtNjQwLDEzICs2NDMsMTcgQEANCj4gPj4gew0KPiA+PiAgICAgICAg c3RydWN0IHJ0ZV9wY2lfZGV2aWNlICpkZXYgPSBOVUxMOw0KPiA+PiAgICAgICAgc3RydWN0IHJ0 ZV9wY2lfZHJpdmVyICpkcnYgPSBOVUxMOw0KPiA+PiArICAgICAgIGludCBpb21tdV9kbWFfbWFz a19jaGVja19kb25lID0gMDsNCj4gPj4NCj4gPj4gICAgICAgIEZPUkVBQ0hfRFJJVkVSX09OX1BD SUJVUyhkcnYpIHsNCj4gPj4gICAgICAgICAgICAgICAgRk9SRUFDSF9ERVZJQ0VfT05fUENJQlVT KGRldikgew0KPiA+PiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghcnRlX3BjaV9tYXRjaChk cnYsIGRldikpDQo+ID4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsN Cj4gPj4gLSAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFwY2lfb25lX2RldmljZV9pb21tdV9z dXBwb3J0X3ZhKGRldikpDQo+ID4+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0 dXJuIGZhbHNlOw0KPiA+PiArICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWlvbW11X2RtYV9t YXNrX2NoZWNrX2RvbmUpIHsNCj4gPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp ZiAocGNpX29uZV9kZXZpY2VfaW9tbXVfc3VwcG9ydF92YShkZXYpIDwgMCkNCj4gPg0KPiA+IHBj aV9vbmVfZGV2aWNlX2lvbW11X3N1cHBvcnRfdmEoKSByZXR1cm5zIHRydWUvZmFsc2UoMS8wKSwg dGhlbiB3aHkgZG8geW91DQo+ID4gZXhwZWN0IHRvIHNlZSBhIG5lZ2F0aXZlIHJldHVybiB2YWx1 ZSBpbiBjYXNlIG9mIGZhaWx1cmU/DQo+DQo+DQo+IEVtdWxhdGVkIElPTU1VIGhhcyBhIDM5IGJp dHMgYWRkcmVzc2luZyBsaW1pdGF0aW9uIGluIHNvbWUgUUVNVSB2ZXJzaW9ucy4gV2l0aCBwY2lf b25lX2RldmljZV9pb21tdV9zdXBwb3J0X3ZhIHRoaXMgaXMgY2hlY2tlZCBvdXQsIGFuZCBpZiBp dCBkb2VzIGV4aXN0LCBJT01NVSB3aXRoIFZBIGlzIG5vdCBzdXBwb3J0ZWQuDQo+DQo+IFRoaXMg cGF0Y2ggYXZvaWRzIHN1Y2ggY29hcnNlIGNoZWNrIHVzaW5nIGRtYSBtYXNrIGNvZGUgYWRkZWQg Zm9yIGFsbG93aW5nIElPTU1VIHdpdGggVkEgaWYgYWxsb2NhdGVkIG1lbW9yeSBpcyBiZWxvdyB0 aGUgYWRkcmVzc2luZyBsaW1pdGF0aW9uLiBUaGlzIGlzIGdvaW5nIHRvIGhlbHAgZm9yIHVzaW5n IElPTU1VIHdpdGggVkEgaXMgbW9zdCBvZiB0aGUgc3lzdGVtcyBvdXQgdGhlcmUsIGFuZCBldmVu IHdpdGggc3lzdGVtcyB3aXRoIG1vcmUgdGhhbiA1MTJHQiBhcyBsb25nIGFzIHRoZSBEUERLIGFs bG9jYXRlZCBtZW1vcnkgaXMgYmVsb3cgdGhhdCBsaW1pdC4NCg0KSSB3YXMgYXNraW5nIGFib3V0 IHRoaXMgY2hhbmdlOg0KDQpmcm9tLA0KPiA+PiAtICAgICAgICAgICAgICAgICAgICAgICBpZiAo IXBjaV9vbmVfZGV2aWNlX2lvbW11X3N1cHBvcnRfdmEoZGV2KSkNCg0KdG8sDQo+ID4+ICsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHBjaV9vbmVfZGV2aWNlX2lvbW11X3N1cHBv cnRfdmEoZGV2KSA8IDApDQoNCg0KVGhlIG9yaWdpbmFsIGNvZGUgY2hlY2tzIHplcm8gYnV0IHlv dSBjaGFuZ2VkIGl0IHRvIGNoZWNrIG5lZ2F0aXZlIHZhbHVlLg0KQnV0IGl0IGxvb2tzIHBjaV9v bmVfZGV2aWNlX2lvbW11X3N1cHBvcnRfdmEoKSBkb2Vzbid0IHJldHVybiBuZWdhdGl2ZSB2YWx1 ZSwgcmlnaHQ/DQoNCkkgdGhvdWdodCB0aGlzIGlzIGJ1Z2d5LCBwbGVhc2UgbGV0IG1lIGtub3cu DQoNCg0KWWVzLCB5b3UgYXJlIHJpZ2h0LiBJIHJlbWVtYmVyIEkgaW5pdGlhbGx5IGNoYW5nZWQg cGNpX29uZV9kZXZpY2VfaW9tbXVfc3VwcG9ydF92YSBmb3IgcmV0dXJuaW5nIGFuIGludCBpbnN0 ZWFkIG9mIGJvb2xlYW4sIGJ1dCBJIGRpZCBsZWF2ZSBpdCBhcyBib29sZWFuIGF0IHRoZSBlbmQu IEl0IHNlZW1zIEkgZm9yZ290IHRvIG1vZGlmeSB0aGUgY2FsbC4gSSB3aWxsIHNlbmQgYW5vdGhl ciB2ZXJzaW9uLg0KDQpJcyBpdCBPSyBpZiBJIHNlbmQgaXQganVzdCB0byBzdGFibGVAZHBkay5v cmc8bWFpbHRvOnN0YWJsZUBkcGRrLm9yZz4gdGFnZ2luZyBmaXggZm9yIDE3LjExPw0KDQpZZXMs IGl0IGlzLg0KDQpUaGFua3MNCllvbmdzZW9rDQoNCg0KVGhhbmtzDQoNClRoYW5rcywNCllvbmdz ZW9rDQoNCj4NCj4gQWxlamFuZHJvLA0KPg0KPiBBcyBJIHdpbGwgcmVsZWFzZSAtcmMyLCBJIGNh biBpbnRlZ3JhdGUgeW91ciBwYXRjaHNldCBidXQgdGhpcyBzaG91bGQgYmUNCj4gYWRkcmVzc2Vk LiBQbGVhc2UgbGV0IG1lIGtub3cuDQo+DQo+IFRoYW5rcywNCj4gWW9uZ3Nlb2sNCj4NCj4gPj4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCj4g Pj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpb21tdV9kbWFfbWFza19jaGVja19k b25lICA9IDE7DQo+ID4+ICsgICAgICAgICAgICAgICAgICAgICAgIH0NCj4gPj4gICAgICAgICAg ICAgICAgfQ0KPiA+PiAgICAgICAgfQ0KPiA+PiAgICAgICAgcmV0dXJuIHRydWU7DQo+ID4+DQo+ ID4+DQo+ID4+DQo+ID4+IFRoYW5rcw0KPiA+Pg0KPiA+PiBPbiBUaHUsIEF1ZyAxNiwgMjAxOCBh dCA4OjE4IFBNLCBZb25nc2VvayBLb2ggPHlza29oQG1lbGxhbm94LmNvbTxtYWlsdG86eXNrb2hA bWVsbGFub3guY29tPj4gd3JvdGU6DQo+ID4+DQo+ID4+PiBIaSBhbGwsDQo+ID4+Pg0KPiA+Pj4g SGVyZSBpcyBhIGxpc3Qgb2YgcGF0Y2hlcyB0YXJnZXRlZCBmb3IgTFRTIHJlbGVhc2UgMTcuMTEu NC4gUGxlYXNlIGhlbHANCj4gPj4+IHJldmlldw0KPiA+Pj4gYW5kIHRlc3QuIFRoZSBwbGFubmVk IGRhdGUgZm9yIHRoZSBmaW5hbCByZWxlYXNlIGlzIEF1Z3VzdCAyMy4gQmVmb3JlIHRoYXQsDQo+ ID4+PiBwbGVhc2Ugc2hvdXQgaWYgYW55b25lIGhhcyBvYmplY3Rpb25zIHdpdGggdGhlc2UgcGF0 Y2hlcyBiZWluZyBhcHBsaWVkLg0KPiA+Pj4NCj4gPj4+IEFsc28gZm9yIHRoZSBjb21wYW5pZXMg Y29tbWl0dGVkIHRvIHJ1bm5pbmcgcmVncmVzc2lvbiB0ZXN0cywgcGxlYXNlIHJ1bg0KPiA+Pj4g dGhlDQo+ID4+PiB0ZXN0cyBhbmQgcmVwb3J0IGFueSBpc3N1ZSBiZWZvcmUgdGhlIHJlbGVhc2Ug ZGF0ZS4NCj4gPj4+DQo+ID4+PiBBIHJlbGVhc2UgY2FuZGlkYXRlIHRhcmJhbGwgY2FuIGJlIGZv dW5kIGF0Og0KPiA+Pj4NCj4gPj4+ICAgIGh0dHBzOi8vZW1lYTAxLnNhZmVsaW5rcy5wcm90ZWN0 aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0ElMkYlMkZkcGRrLm9yZyUyRmJyb3dzZSUyRmRw ZGstc3RhYmxlJTJGdGFnJTJGJTNGaWQlM0R2MTcuMTEuNC1yYzEmYW1wO2RhdGE9MDIlN0MwMSU3 Q3lza29oJTQwbWVsbGFub3guY29tJTdDYjFiMGUzZWZmNzFjNDk5ZmYzZmIwOGQ2MDg4ZTFlZGUl N0NhNjUyOTcxYzdkMmU0ZDliYTZhNGQxNDkyNTZmNDYxYiU3QzAlN0MwJTdDNjM2NzA1ODAzODQ2 NTQ4OTY3JmFtcDtzZGF0YT1BTWd5Sk1GSXM1MTJvNXpmWjRhTlN5MVB0cCUyQmhFSU1VQ1ZaNkhh TDJGNDAlM0QmYW1wO3Jlc2VydmVkPTA8aHR0cHM6Ly9lbWVhMDEuc2FmZWxpbmtzLnByb3RlY3Rp b24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRmRwZGsub3JnJTJGYnJvd3NlJTJGZHBk ay1zdGFibGUlMkZ0YWclMkYlM0ZpZCUzRHYxNy4xMS40LXJjMSZkYXRhPTAyJTdDMDElN0N5c2tv aCU0MG1lbGxhbm94LmNvbSU3Q2UzNzgzNThhZDE0ZTRjZDlmYTgwMDhkNjA5ZDI0Zjc0JTdDYTY1 Mjk3MWM3ZDJlNGQ5YmE2YTRkMTQ5MjU2ZjQ2MWIlN0MwJTdDMCU3QzYzNjcwNzE5NjI0MTc5NzE1 NSZzZGF0YT1IcERKWEwzZk1SRWZvWEFGYzNCOU1kb3JyZG41anVJTkpOTFhwMXdkSG1NJTNEJnJl c2VydmVkPTA+DQo+ID4+Pg0KPiA+Pj4gVGhlc2UgcGF0Y2hlcyBhcmUgbG9jYXRlZCBhdCBicmFu Y2ggMTcuMTEgb2YgZHBkay1zdGFibGUgcmVwbzoNCj4gPj4+ICAgIGh0dHBzOi8vZW1lYTAxLnNh ZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0ElMkYlMkZkcGRrLm9y ZyUyRmJyb3dzZSUyRmRwZGstc3RhYmxlJTJGJmFtcDtkYXRhPTAyJTdDMDElN0N5c2tvaCU0MG1l bGxhbm94LmNvbSU3Q2IxYjBlM2VmZjcxYzQ5OWZmM2ZiMDhkNjA4OGUxZWRlJTdDYTY1Mjk3MWM3 ZDJlNGQ5YmE2YTRkMTQ5MjU2ZjQ2MWIlN0MwJTdDMCU3QzYzNjcwNTgwMzg0NjU0ODk2NyZhbXA7 c2RhdGE9aHZPaEVrNTAydlZ6Ym9DYlJiQ1pYcUpYY3NpSTNEVHRnUXlwUUppMEFybyUzRCZhbXA7 cmVzZXJ2ZWQ9MDxodHRwczovL2VtZWEwMS5zYWZlbGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNv bS8/dXJsPWh0dHBzJTNBJTJGJTJGZHBkay5vcmclMkZicm93c2UlMkZkcGRrLXN0YWJsZSUyRiZk YXRhPTAyJTdDMDElN0N5c2tvaCU0MG1lbGxhbm94LmNvbSU3Q2UzNzgzNThhZDE0ZTRjZDlmYTgw MDhkNjA5ZDI0Zjc0JTdDYTY1Mjk3MWM3ZDJlNGQ5YmE2YTRkMTQ5MjU2ZjQ2MWIlN0MwJTdDMCU3 QzYzNjcwNzE5NjI0MTc5NzE1NSZzZGF0YT1BQXpCdXN0SVlScGpQNjd6Vm1GRUNGdUFMM2JjT3JM RWpvTjFucFZkWTNBJTNEJnJlc2VydmVkPTA+DQo+ID4+Pg0KPiA+Pj4gVGhhbmtzLA0KPiA+Pj4g WW9uZ3Nlb2sNCj4gPj4+DQo+ID4+PiAtLS0NCj4gPj4+IEFkcmllbiBNYXphcmd1aWwgKDIpOg0K PiA+Pj4gICAgICBtYWludGFpbmVyczogdXBkYXRlIGZvciBNZWxsYW5veCBQTURzDQo+ID4+PiAg ICAgIG5ldC9tbHg0OiBmaXggbWlub3IgcmVzb3VyY2UgbGVhayBkdXJpbmcgaW5pdA0KPiA+Pj4N Cj4gPj4+IEFqaXQgS2hhcGFyZGUgKDcpOg0KPiA+Pj4gICAgICBuZXQvYm54dDogZml4IEhXIFR4 IGNoZWNrc3VtIG9mZmxvYWQgY2hlY2sNCj4gPj4+ICAgICAgbmV0L2JueHQ6IGZpeCBzZXQgTVRV DQo+ID4+PiAgICAgIG5ldC9ibnh0OiBmaXggUnggcmluZyBjb3VudCBsaW1pdGF0aW9uDQo+ID4+ PiAgICAgIG5ldC9ibnh0OiBmaXggbWVtb3J5IGxlYWtzIGluIE5WTSBjb21tYW5kcw0KPiA+Pj4g ICAgICBuZXQvYm54dDogZml4IGxvY2sgcmVsZWFzZSBvbiBOVk0gd3JpdGUgZmFpbHVyZQ0KPiA+ Pj4gICAgICBuZXQvYm54dDogY2hlY2sgYWNjZXNzIGRlbmllZCBmb3IgSFdSTSBjb21tYW5kcw0K PiA+Pj4gICAgICBuZXQvYm54dDogZml4IFJFVEEgc2l6ZQ0KPiA+Pj4NCj4gPj4+IEFsZWphbmRy byBMdWNlcm8gKDEpOg0KPiA+Pj4gICAgICBuZXQvbmZwOiBmaXggZmllbGQgaW5pdGlhbGl6YXRp b24gaW4gVHggZGVzY3JpcHRvcg0KPiA+Pj4NCj4gPj4+IEFsb2sgTWFraGFyaXlhICgxKToNCj4g Pj4+ICAgICAgYnVzL2RwYWE6IGZpeCBwaGFuZGxlIHN1cHBvcnQgZm9yIExpbnV4IDQuMTYNCj4g Pj4+DQo+ID4+PiBBbmF0b2x5IEJ1cmFrb3YgKDgpOg0KPiA+Pj4gICAgICBlYWwvbGludXg6IGZp eCBpbnZhbGlkIHN5bnRheCBpbiBpbnRlcnJ1cHRzDQo+ID4+PiAgICAgIGVhbC9saW51eDogZml4 IHVuaW5pdGlhbGl6ZWQgdmFsdWUNCj4gPj4+ICAgICAgdGVzdDogZml4IEVBTCBmbGFncyBhdXRv dGVzdCBvbiBGcmVlQlNEDQo+ID4+PiAgICAgIHRlc3Q6IGZpeCByZXN1bHQgcHJpbnRpbmcNCj4g Pj4+ICAgICAgdGVzdDogZml4IGNvZGUgb24gcmVwb3J0DQo+ID4+PiAgICAgIHRlc3Q6IG1ha2Ug YXV0b3Rlc3QgcnVubmVyIHB5dGhvbiAyLzMgY29tcGxpYW50DQo+ID4+PiAgICAgIHRlc3Q6IHBy aW50IGF1dG90ZXN0IGNhdGVnb3JpZXMNCj4gPj4+ICAgICAgdGVzdDogaW1wcm92ZSBmaWx0ZXJp bmcNCj4gPj4+DQo+ID4+PiBBbmRyZXcgUnliY2hlbmtvICgyKToNCj4gPj4+ICAgICAgbmV0L3Nm YzogY3V0IG5vbiBWTEFOIElEIGJpdHMgZnJvbSBUQ0kNCj4gPj4+ICAgICAgbmV0L3NmYzogZml4 IGFzc2VydCBpbiBzZXQgbXVsdGljYXN0IGFkZHJlc3MgbGlzdA0KPiA+Pj4NCj4gPj4+IEFuZHkg R3JlZW4gKDEpOg0KPiA+Pj4gICAgICByaW5nOiBmaXggc2lnbiBjb252ZXJzaW9uIHdhcm5pbmcN Cj4gPj4+DQo+ID4+PiBCZWlsZWkgWGluZyAoMyk6DQo+ID4+PiAgICAgIG5ldC9pNDBlOiBmaXgg c2hpZnRzIG9mIDMyLWJpdCB2YWx1ZQ0KPiA+Pj4gICAgICBuZXQvaTQwZTogZml4IHBhY2tldCB0 eXBlIHBhcnNpbmcgd2l0aCBERFANCj4gPj4+ICAgICAgbmV0L2k0MGU6IGZpeCBzZXR0aW5nIFRQ SUQgd2l0aCBBUSBjb21tYW5kDQo+ID4+Pg0KPiA+Pj4gQnJ1Y2UgUmljaGFyZHNvbiAoMik6DQo+ ID4+PiAgICAgIGV4YW1wbGVzL2V4Y2VwdGlvbl9wYXRoOiBmaXggb3V0LW9mLWJvdW5kcyByZWFk DQo+ID4+PiAgICAgIG1rOiBmaXggcGVybWlzc2lvbnMgd2hlbiB1c2luZyBtYWtlIGluc3RhbGwN Cj4gPj4+DQo+ID4+PiBDaGFzIFdpbGxpYW1zICgyKToNCj4gPj4+ICAgICAgbmV0L2JvbmRpbmc6 IGFsd2F5cyB1cGRhdGUgYm9uZGluZyBsaW5rIHN0YXR1cw0KPiA+Pj4gICAgICBuZXQvYm9uZGlu ZzogZG8gbm90IGNsZWFyIGFjdGl2ZSBzbGF2ZSBjb3VudA0KPiA+Pj4NCj4gPj4+IERhbiBHb3Jh ICgxKToNCj4gPj4+ICAgICAga25pOiBmaXggY3Jhc2ggd2l0aCBudWxsIG5hbWUNCj4gPj4+DQo+ ID4+PiBEYXJpYSBLb2xpc3RyYXRvdmEgKDEpOg0KPiA+Pj4gICAgICBuZXQvZW5hOiBmaXggU0lH RlBFIHdpdGggMCBSeCBxdWV1ZQ0KPiA+Pj4NCj4gPj4+IERhcml1c3ogU3RvamFjenlrICgxKToN Cj4gPj4+ICAgICAgZWFsOiBmaXggcmV0dXJuIGNvZGVzIG9uIHRocmVhZCBuYW1pbmcgZmFpbHVy ZQ0KPiA+Pj4NCj4gPj4+IERhdmlkIE1hcmNoYW5kICgxKToNCj4gPj4+ICAgICAgbmV0L2JueHQ6 IGFkZCBtaXNzaW5nIGlkcyBpbiB4c3RhdHMNCj4gPj4+DQo+ID4+PiBEcm9jdWxhIExhbWJkYSAo MSk6DQo+ID4+PiAgICAgIGtuaTogZml4IGJ1aWxkIG9uIFJIRUwgNy41DQo+ID4+Pg0KPiA+Pj4g RmVycnVoIFlpZ2l0ICgyKToNCj4gPj4+ICAgICAga25pOiBmaXggYnVpbGQgd2l0aCBnY2MgOC4x DQo+ID4+PiAgICAgIG5ldC90aHVuZGVyeDogZml4IGJ1aWxkIHdpdGggZ2NjIG9wdGltaXphdGlv biBvbg0KPiA+Pj4NCj4gPj4+IEdhdmluIEh1ICgzKToNCj4gPj4+ICAgICAgbWs6IGZpeCBjcm9z cyBidWlsZA0KPiA+Pj4gICAgICBuZXQvZHBhYTI6IHJlbW92ZSBsb29wIGZvciB1bnVzZWQgcG9v bCBlbnRyaWVzDQo+ID4+PiAgICAgIG1haW50YWluZXJzOiBjbGFpbSBtYWludGFpbmVyc2hpcCBm b3IgQVJNIHY3IGFuZCB2OA0KPiA+Pj4NCj4gPj4+IEhhaXl1ZSBXYW5nICgxKToNCj4gPj4+ICAg ICAgbmV0L2k0MGU6IHdvcmthcm91bmQgcGVyZm9ybWFuY2UgZGVncmFkYXRpb24NCj4gPj4+DQo+ ID4+PiBIYXJyeSB2YW4gSGFhcmVuICgxKToNCj4gPj4+ICAgICAgZXZlbnQ6IGZpeCByaW5nIGlu aXQgZmFpbHVyZSBoYW5kbGluZw0KPiA+Pj4NCj4gPj4+IEhlbWFudCBBZ3Jhd2FsICgyKToNCj4g Pj4+ICAgICAgdGVzdC9jcnlwdG86IGZpeCBkZXZpY2UgaWQgd2hlbiBzdG9wcGluZyBwb3J0DQo+ ID4+PiAgICAgIGJ1cy9kcGFhOiBmaXggYnVmZmVyIG9mZnNldCBzZXR0aW5nIGluIEZNQU4NCj4g Pj4+DQo+ID4+PiBIeW9uZyBZb3ViIEtpbSAoMSk6DQo+ID4+PiAgICAgIG5ldC9lbmljOiBkbyBu b3Qgb3ZlcndyaXRlIGFkbWluIFR4IHF1ZXVlIGxpbWl0DQo+ID4+Pg0KPiA+Pj4gSWRvIEdvc2hl biAoMSk6DQo+ID4+PiAgICAgIG5ldC9wY2FwOiBmaXggbXVsdGlwbGUgcXVldWVzDQo+ID4+Pg0K PiA+Pj4gSmFuYW5lZSBQYXJ0aGFzYXJhdGh5ICgxKToNCj4gPj4+ICAgICAgbWs6IHVwZGF0ZSB0 YXJnZXRzIGZvciBjbGFzc2lmaWVkIHRlc3RzDQo+ID4+Pg0KPiA+Pj4gSmF5IERpbmcgKDEpOg0K PiA+Pj4gICAgICBuZXQvYm54dDogY2hlY2sgZm9yIGludmFsaWQgdk5JQyBpZA0KPiA+Pj4NCj4g Pj4+IEplcmluIEphY29iICgyKToNCj4gPj4+ICAgICAgZXRoZGV2OiBmaXggcXVldWUgc3RhdGlz dGljcyBtYXBwaW5nIGRvY3VtZW50YXRpb24NCj4gPj4+ICAgICAgZWFsOiBmaXggYml0bWFwIGRv Y3VtZW50YXRpb24NCj4gPj4+DQo+ID4+PiBLaXJhbiBLdW1hciAoMik6DQo+ID4+PiAgICAgIG5l dC9ib25kaW5nOiBmaXggTUFDIGFkZHJlc3MgcmVzZXQNCj4gPj4+ICAgICAgbmV0L3RodW5kZXJ4 OiBhdm9pZCBzcSBkb29yIGJlbGwgd3JpdGUgb24gemVybyBwYWNrZXQNCj4gPj4+DQo+ID4+PiBL b25zdGFudGluIEFuYW55ZXYgKDMpOg0KPiA+Pj4gICAgICBleGFtcGxlcy9pcHNlYy1zZWNndzog Zml4IElQdjQgY2hlY2tzdW0gYXQgVHgNCj4gPj4+ICAgICAgZXhhbXBsZXMvaXBzZWMtc2VjZ3c6 IGZpeCBieXBhc3MgcnVsZSBwcm9jZXNzaW5nDQo+ID4+PiAgICAgIGFwcC90ZXN0cG1kOiBmaXgg RENCIGNvbmZpZw0KPiA+Pj4NCj4gPj4+IE1heGltZSBDb3F1ZWxpbiAoNCk6DQo+ID4+PiAgICAg IHZob3N0OiBpbXByb3ZlIGRpcnR5IHBhZ2VzIGxvZ2dpbmcgcGVyZm9ybWFuY2UNCj4gPj4+ICAg ICAgdmhvc3Q6IGZpeCBtaXNzaW5nIGluY3JlbWVudCBvZiBsb2cgY2FjaGUgY291bnQNCj4gPj4+ ICAgICAgdmhvc3Q6IGZsdXNoIElPVExCIGNhY2hlIG9uIG5ldyBtZW0gdGFibGUgaGFuZGxpbmcN Cj4gPj4+ICAgICAgdmhvc3Q6IHJldHJhbnNsYXRlIHZyaW5nIGFkZHIgd2hlbiBtZW1vcnkgdGFi bGUgY2hhbmdlcw0KPiA+Pj4NCj4gPj4+IE1vdGkgSGFpbW92c2t5ICgyKToNCj4gPj4+ICAgICAg bmV0L21seDU6IGZpeCBidWlsZCB3aXRoIG9sZCBrZXJuZWxzDQo+ID4+PiAgICAgIG5ldC9tbHg0 OiBjaGVjayBSU1MgcXVldWVzIG51bWJlciBsaW1pdGF0aW9uDQo+ID4+Pg0KPiA+Pj4gTmVsaW8g TGFyYW5qZWlybyAoMSk6DQo+ID4+PiAgICAgIG5ldC9tbHg1OiBmaXggVENJIG1hc2sgZmlsdGVy DQo+ID4+Pg0KPiA+Pj4gTmlraGlsIFJhbyAoNSk6DQo+ID4+PiAgICAgIGV2ZW50ZGV2OiBmaXgg cG9ydCBpbiBSeCBhZGFwdGVyIGludGVybmFsIGZ1bmN0aW9uDQo+ID4+PiAgICAgIGV2ZW50ZGV2 OiBmaXggbWlzc2luZyB1cGRhdGUgdG8gUnggYWRhcGVyIFdSUiBwb3NpdGlvbg0KPiA+Pj4gICAg ICBldmVudGRldjogYWRkIGV2ZW50IGJ1ZmZlciBmbHVzaCBpbiBSeCBhZGFwdGVyDQo+ID4+PiAg ICAgIGV2ZW50ZGV2OiBmaXggaW50ZXJuYWwgcG9ydCBsb2dpYyBpbiBSeCBhZGFwdGVyDQo+ID4+ PiAgICAgIGV2ZW50ZGV2OiBmaXggUnggU1cgYWRhcHRlciBzdG9wDQo+ID4+Pg0KPiA+Pj4gTml0 aGluIERhYmlscHVyYW0gKDEpOg0KPiA+Pj4gICAgICBhcHAvdGVzdHBtZDogZml4IGJ1ZmZlciBs ZWFrIGluIFRNIGNvbW1hbmQNCj4gPj4+DQo+ID4+PiBPcGhpciBNdW5rICgxKToNCj4gPj4+ICAg ICAgbmV0L21seDU6IGZpeCBzZWNvbmRhcnkgcHJvY2VzcyByZXNvdXJjZSBsZWFrYWdlDQo+ID4+ Pg0KPiA+Pj4gUGFibG8gZGUgTGFyYSAoNyk6DQo+ID4+PiAgICAgIGV4YW1wbGVzL2wyZndkLWNy eXB0bzogZml4IGRpZ2VzdCB3aXRoIEFFQUQgYWxnbw0KPiA+Pj4gICAgICBleGFtcGxlcy9sMmZ3 ZC1jcnlwdG86IGNoZWNrIHJldHVybiB2YWx1ZSBvbiBJViBzaXplIGNoZWNrDQo+ID4+PiAgICAg IGV4YW1wbGVzL2wyZndkLWNyeXB0bzogc2tpcCBkZXZpY2Ugbm90IHN1cHBvcnRpbmcgb3BlcmF0 aW9uDQo+ID4+PiAgICAgIHRlc3QvaGFzaDogZml4IG11bHRpd3JpdGVyIHdpdGggbm9uIGNvbnNl Y3V0aXZlIGNvcmVzDQo+ID4+PiAgICAgIHRlc3QvaGFzaDogZml4IHBvdGVudGlhbCBtZW1vcnkg bGVhaw0KPiA+Pj4gICAgICBhcHAvY3J5cHRvLXBlcmY6IGZpeCBhdXRoIElWIG9mZnNldA0KPiA+ Pj4gICAgICBoYXNoOiBmaXggZG94eWdlbiBvZiByZXR1cm4gdmFsdWVzDQo+ID4+Pg0KPiA+Pj4g UGF2YW4gTmlraGlsZXNoICgyKToNCj4gPj4+ICAgICAgZXZlbnQvb2N0ZW9udHg6IHJlbW92ZSB1 bm5lY2Vzc2FyeSBwb3J0IHN0YXJ0IGFuZCBzdG9wDQo+ID4+PiAgICAgIG5ldC9vY3Rlb250eDog Zml4IHN0b3AgY2xlYXJpbmcgUngvVHggZnVuY3Rpb25zDQo+ID4+Pg0KPiA+Pj4gUWkgWmhhbmcg KDEpOg0KPiA+Pj4gICAgICB2ZmlvOiBmaXggUENJIGFkZHJlc3MgY29tcGFyaXNvbg0KPiA+Pj4N Cj4gPj4+IFJhZHUgTmljb2xhdSAoMyk6DQo+ID4+PiAgICAgIHNlY3VyaXR5OiBmaXggY3Jhc2gg b24gZGVzdHJveSBudWxsIHNlc3Npb24NCj4gPj4+ICAgICAgdGVzdDogZml4IHVuaW5pdGlhbGl6 ZWQgcG9ydCBjb25maWd1cmF0aW9uDQo+ID4+PiAgICAgIG5ldC9ib25kaW5nOiBmaXggcmFjZSBj b25kaXRpb24NCj4gPj4+DQo+ID4+PiBSYWZhbCBLb3ppayAoNCk6DQo+ID4+PiAgICAgIG5ldC9l bmE6IGZpeCBHRU5NQVNLX1VMTCBtYWNybw0KPiA+Pj4gICAgICBuZXQvZW5hOiBzZXQgbGluayBz cGVlZCBhcyBub25lDQo+ID4+PiAgICAgIG5ldC9lbmE6IGNoZWNrIHBvaW50ZXIgYmVmb3JlIG1l bXNldA0KPiA+Pj4gICAgICBuZXQvZW5hOiBjaGFuZ2UgbWVtb3J5IHR5cGUNCj4gPj4+DQo+ID4+ PiBSYWh1bCBMYWtraXJlZGR5ICgxKToNCj4gPj4+ICAgICAgbmV0L2N4Z2JlOiBmaXggaW5pdCBm YWlsdXJlIGR1ZSB0byBuZXcgZmxhc2ggcGFydHMNCj4gPj4+DQo+ID4+PiBSYW1pIFJvc2VuICgy KToNCj4gPj4+ICAgICAgZXhhbXBsZXMvbDNmd2Q6IHJlbW92ZSB1c2VsZXNzIGluY2x1ZGUNCj4g Pj4+ICAgICAgZXRoZGV2OiBmaXggYSBkb3h5Z2VuIGNvbW1lbnQgZm9yIHBvcnQgYWxsb2NhdGlv bg0KPiA+Pj4NCj4gPj4+IFJhc2VzaCBNb2R5ICg5KToNCj4gPj4+ICAgICAgbmV0L3FlZGU6IGZp eCBWRiBNVFUgdXBkYXRlDQo+ID4+PiAgICAgIG5ldC9xZWRlOiByZW1vdmUgcHJpbWFyeSBNQUMg cmVtb3ZhbA0KPiA+Pj4gICAgICBuZXQvcWVkZTogZml4IGZvciBkZXZhcmdzDQo+ID4+PiAgICAg IG5ldC9xZWRlOiBmaXggZGVmYXVsdCBleHRlbmRlZCBWTEFOIG9mZmxvYWQgY29uZmlnDQo+ID4+ PiAgICAgIGRvYzogdXBkYXRlIHFlZGUgbWFuYWdlbWVudCBmaXJtd2FyZSBndWlkZQ0KPiA+Pj4g ICAgICBuZXQvcWVkZS9iYXNlOiBmaXggR1JDIGF0dGVudGlvbiBjYWxsYmFjaw0KPiA+Pj4gICAg ICBuZXQvYm54Mng6IGZpeCBGVyBjb21tYW5kIHRpbWVvdXQgZHVyaW5nIHN0b3ANCj4gPj4+ICAg ICAgbmV0L2JueDJ4OiBmaXggcG9sbCBsaW5rIHN0YXR1cw0KPiA+Pj4gICAgICBuZXQvcWVkZS9i YXNlOiBmaXggdG8gY2xlYXIgSFcgaW5kaWNhdGlvbg0KPiA+Pj4NCj4gPj4+IFJlbXkgSG9ydG9u ICg0KToNCj4gPj4+ICAgICAgYml0cmF0ZTogYWRkIHNhbml0eSBjaGVjayBvbiBwYXJhbWV0ZXJz DQo+ID4+PiAgICAgIG1ldHJpY3M6IGFkZCBjaGVjayBmb3IgaW52YWxpZCBrZXkNCj4gPj4+ICAg ICAgbWV0cmljczogZG8gbm90IGZhaWwgc2lsZW50bHkgd2hlbiB1bmluaXRpYWxpc2VkDQo+ID4+ PiAgICAgIG1ldHJpY3M6IGRpc2FsbG93IG51bGwgYXMgbWV0cmljIG5hbWUNCj4gPj4+DQo+ID4+ PiBSZXNobWEgUGF0dGFuICgyKToNCj4gPj4+ICAgICAgdGVzdC9mbG93X2NsYXNzaWZ5OiBmaXgg cmV0dXJuIHR5cGVzDQo+ID4+PiAgICAgIG1rOiByZW1vdmUgdW5uZWNlc3NhcnkgdGVzdCBydWxl cw0KPiA+Pj4NCj4gPj4+IFJvc2VuIFh1ICgxKToNCj4gPj4+ICAgICAgZXhhbXBsZXMvZmxvd19m aWx0ZXJpbmc6IGFkZCBmbG93IGRpcmVjdG9yIGNvbmZpZyBmb3IgaTQwZQ0KPiA+Pj4NCj4gPj4+ IFNoYWhhZiBTaHVsZXIgKDEpOg0KPiA+Pj4gICAgICBuZXQvbWx4NTogZml4IGNvbXBpbGF0aW9u IGZvciByZG1hLWNvcmUgdjE5DQo+ID4+Pg0KPiA+Pj4gU2hhaGVkIFNoYWlraCAoNyk6DQo+ID4+ PiAgICAgIG5ldC9xZWRlOiBmaXggbGluayBjaGFuZ2UgZXZlbnQgbm90aWZpY2F0aW9uDQo+ID4+ PiAgICAgIG5ldC9xZWRlOiBmaXggbGVnYWN5IGludGVycnVwdCBtb2RlDQo+ID4+PiAgICAgIG5l dC9xZWRlOiBmaXggaW5jb3JyZWN0IGxpbmsgc3RhdHVzIHVwZGF0ZQ0KPiA+Pj4gICAgICBuZXQv cWVkZTogZml4IHVuaWNhc3QgTUFDIGFkZHJlc3MgaGFuZGxpbmcgaW4gVkYNCj4gPj4+ICAgICAg bmV0L3FlZGU6IGZpeCBpbnRlcnJ1cHQgaGFuZGxlciB1bnJlZ2lzdGVyDQo+ID4+PiAgICAgIG5l dC9xZWRlOiBmaXggTUFDIGFkZHJlc3MgcmVtb3ZhbCBmYWlsdXJlIG1lc3NhZ2UNCj4gPj4+ICAg ICAgbmV0L3FlZGU6IGZpeCBudHVwbGUgZmlsdGVyIGNvbmZpZ3VyYXRpb24NCj4gPj4+DQo+ID4+ PiBTaHJleWFuc2ggSmFpbiAoMSk6DQo+ID4+PiAgICAgIGRvYzogZml4IGJvbmRpbmcgY29tbWFu ZCBpbiB0ZXN0cG1kDQo+ID4+Pg0KPiA+Pj4gU29tbmF0aCBLb3R1ciAoMyk6DQo+ID4+PiAgICAg IG5ldC9ibnh0OiBmaXggdG8gbW92ZSBhIGZsb3cgdG8gYSBkaWZmZXJlbnQgcXVldWUNCj4gPj4+ ICAgICAgbmV0L2JueHQ6IHVzZSBjb3JyZWN0IGZsYWdzIGR1cmluZyBWTEFOIGNvbmZpZ3VyYXRp b24NCj4gPj4+ICAgICAgbmV0L2JueHQ6IGZpeCBmaWx0ZXIgZnJlZWluZw0KPiA+Pj4NCj4gPj4+ IFRob21hcyBNb25qYWxvbiAoMSk6DQo+ID4+PiAgICAgIGJ1cy9kcGFhOiBmaXggYnVpbGQNCj4g Pj4+DQo+ID4+PiBUb21hc3ogRHVzenluc2tpICgxKToNCj4gPj4+ICAgICAgbmV0L212cHAyOiBj aGVjayBwb2ludGVyIGJlZm9yZSB1c2luZyBpdA0KPiA+Pj4NCj4gPj4+IFdlaSBaaGFvICg3KToN Cj4gPj4+ICAgICAgbmV0L2l4Z2JlOiBhZGQgc3VwcG9ydCBmb3IgVkxBTiBpbiBJUCBtb2RlIEZE SVINCj4gPj4+ICAgICAgbmV0L2l4Z2JlOiBmaXggdHVubmVsIGlkIGZvcm1hdCBlcnJvciBmb3Ig RkRJUg0KPiA+Pj4gICAgICBuZXQvaXhnYmU6IGZpeCB0dW5uZWwgdHlwZSBzZXQgZXJyb3IgZm9y IEZESVINCj4gPj4+ICAgICAgbmV0L2l4Z2JlOiBmaXggbWFzayBiaXRzIHJlZ2lzdGVyIHNldCBl cnJvciBmb3IgRkRJUg0KPiA+Pj4gICAgICBhcHAvdGVzdHBtZDogZml4IFZMQU4gVENJIG1hc2sg c2V0IGVycm9yIGZvciBGRElSDQo+ID4+PiAgICAgIG5ldC9pNDBlOiBmaXggY2hlY2sgb2YgZmxv dyBkaXJlY3RvciBwcm9ncmFtbWluZyBzdGF0dXMNCj4gPj4+ICAgICAgbmV0L2k0MGU6IHJldmVy dCBmaXggb2YgZmxvdyBkaXJlY3RvciBjaGVjaw0KPiA+Pj4NCj4gPj4+IFhpYW95dW4gTGkgKDEp Og0KPiA+Pj4gICAgICBuZXQvaTQwZTogZml4IGxpbmsgc3BlZWQNCj4gPj4+DQo+ID4+PiBYdWVt aW5nIExpICgxKToNCj4gPj4+ICAgICAgbmV0L21seDU6IGZpeCBjcmFzaCBpbiBkZXZpY2UgcHJv YmUNCj4gPj4+DQo+ID4+PiBZaXBlbmcgV2FuZyAoMyk6DQo+ID4+PiAgICAgIGhhc2g6IGZpeCBt dWx0aXdyaXRlciBsb2NrIG1lbW9yeSBhbGxvY2F0aW9uDQo+ID4+PiAgICAgIGhhc2g6IGZpeCBh IG11bHRpLXdyaXRlciByYWNlIGNvbmRpdGlvbg0KPiA+Pj4gICAgICBoYXNoOiBmaXgga2V5IHNs b3Qgc2l6ZSBhY2N1cmFjeQ0KPiA+Pj4NCj4gPj4+IFlvbmdzZW9rIEtvaCAoNyk6DQo+ID4+PiAg ICAgIG5ldC9tbHg1OiBmaXggUnggYnVmZmVyIHJlcGxlbmlzaG1lbnQgdGhyZXNob2xkDQo+ID4+ PiAgICAgIG5ldC9tbHg1OiBhZGQgbWlzc2luZyBzYW5pdHkgY2hlY2tzIGZvciBUeCBjb21wbGV0 aW9uIHF1ZXVlDQo+ID4+PiAgICAgIG5ldC9tbHg1OiBmaXggYXNzZXJ0IGZvciBUeCBjb21wbGV0 aW9uIHF1ZXVlIGNvdW50DQo+ID4+PiAgICAgIG5ldC9tbHg1OiBmaXggcXVldWUgcm9sbGJhY2sg d2hlbiBzdGFydGluZyBkZXZpY2UNCj4gPj4+ICAgICAgbmV0L21seDU6IGZpeCBlcnJvciBudW1i ZXIgaGFuZGxpbmcNCj4gPj4+ICAgICAgbmV0L21seDU6IHByZXNlcnZlIHByb21pc2N1b3VzIGZs YWcgZm9yIGZsb3cgaXNvbGF0aW9uIG1vZGUNCj4gPj4+ICAgICAgbmV0L21seDU6IHByZXNlcnZl IGFsbG11bHRpY2FzdCBmbGFnIGZvciBmbG93IGlzb2xhdGlvbiBtb2RlDQo+ID4+Pg0KPg0KPg0K DQoNCg==