From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 0AC66A0569; Thu, 12 Mar 2020 10:57:26 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 0156A1BFFE; Thu, 12 Mar 2020 10:57:26 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id 843922BAA for ; Thu, 12 Mar 2020 10:57:24 +0100 (CET) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 02C9paxl016357; Thu, 12 Mar 2020 02:57:23 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-id : content-transfer-encoding : mime-version; s=pfpt0818; bh=sWBALBfb9JgKV7SEgvF9Eepsswlv7KSWhNXQK8y9GaU=; b=XhYc9LoEk/1aO8uFFAbgb4OwIMTZU9S+A1x6MgoLaFR94E8f6SHYwjvNSGy3uUaL7C6i HvBiyioSnfF0NbHaF4OMGvA+Y+XsF75qD0IR5UMgyKAms2TAiPq5mzmHMNb3Hh6FJ61d k7NI75GeKExdRXKZVsRwsQ64jsic5ORdKu5RyLb/wtmisldQPa2P+DWv4JiETo9QG5OD cLGL29o9/gNPoZzPjGxIlCxRQTW6h4lrBOSJURvPBa4OLTsIQALTv4ShZyE0WLIvb8kJ Nhz43JMrY3yLh+cKqk4clDD9yZKESIHLySwIcRZ6pjRIudRDMiGI3F+WxkzxccNyIReV wA== Received: from sc-exch04.marvell.com ([199.233.58.184]) by mx0b-0016f401.pphosted.com with ESMTP id 2yqfggrwc2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Thu, 12 Mar 2020 02:57:23 -0700 Received: from DC5-EXCH02.marvell.com (10.69.176.39) by SC-EXCH04.marvell.com (10.93.176.84) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 12 Mar 2020 02:57:21 -0700 Received: from SC-EXCH01.marvell.com (10.93.176.81) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 12 Mar 2020 02:57:20 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.106) by SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Thu, 12 Mar 2020 02:57:19 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=i4U/yzZQClv4Ta99dx/oLAMsTbGa7tF/Q6o9ixMce/s+Di6Lo3EjkiIIbQzU90GUz7pTSHM+hcTlOzqvDGsOwSz7U7zaDsZzG0BXMRH4+TlyeIFi+ZIFmFQvEsR7na8FdxHe04c36SpQfkb55ONbTWrcbNz+QZkxBFHj3rniQFCFx1R0s/DADBNgyo3/gNZ8F0I7AL1b4bELYeXd+ScZK9XhHSwGl0ju99vn+YoPkh1V38/Lrlgt1OCMwQLHZOWZsEos31NqAehv4SuL370XAXT62Xitp2AE+/0HlbIT9odWjSQ14lDG3mMx3F29WMIit7b1IV9IO2X2ujxSXQ3KEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sWBALBfb9JgKV7SEgvF9Eepsswlv7KSWhNXQK8y9GaU=; b=IGtdMuSobPdX5zGMvd1e98b5tT6TeCc7whDvroV/Kl6YjnBjRJs1JDcKwhkzx37m7e44LdG3orU6iYqh5rBnB1uZUesatwlA8C4ZkJo94keKZzwVqqKk3zsbccYEU8PV5aNVwzkL2MTSNr19bnCDQzm1Up3mflxBOK0ZNf/mej37ldm0+5Vmiv8mVCm1+WHzAaUEnBZUa5rKGhy/GwSjY4mbyKUXSsS9mvHUDNv/aTKMl9vv0vlM1I7hxi7yuQsOi4T6glfU9gRLQbUzkdeXnkD8Xpnad7KVpVWPlMP8TP7Nm+M8TFkWLZ3c3LVc0oSKIRglEgcQNid2xDSKHaKokw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector1-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sWBALBfb9JgKV7SEgvF9Eepsswlv7KSWhNXQK8y9GaU=; b=d8IOdHSnV/0vQIpLqbrJqvRMprnyt4+p9op3NW2B8kirGdrtn+3DX6Cmx+PYQk0OY9MCgGviOTyBxTagp1WTVrjYdHdRbNe/FodLaS7KRn6o5hYGFMHesgSTp3dsrbafKf1D5XJi2uI1WW2/2lYlk+xeu56qhKi2/zrWI6brBB0= Received: from BYAPR18MB2599.namprd18.prod.outlook.com (2603:10b6:a03:132::16) by BYAPR18MB3734.namprd18.prod.outlook.com (2603:10b6:a02:ce::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2793.17; Thu, 12 Mar 2020 09:57:17 +0000 Received: from BYAPR18MB2599.namprd18.prod.outlook.com ([fe80::78e9:5e96:1575:d1b5]) by BYAPR18MB2599.namprd18.prod.outlook.com ([fe80::78e9:5e96:1575:d1b5%7]) with mapi id 15.20.2793.018; Thu, 12 Mar 2020 09:57:17 +0000 From: Lukas Bartosik To: Akhil Goyal , Anoob Joseph CC: Jerin Jacob Kollanukkaran , "Narayana Prasad Raju Athreya" , Ankur Dwivedi , Archana Muniganti , Tejasree Kondoj , Vamsi Krishna Attunuru , "dev@dpdk.org" , "Ananyev, Konstantin" , "Nicolau, Radu" , Thomas Monjalon Thread-Topic: [EXT] RE: [PATCH v5 00/15] add eventmode to ipsec-secgw Thread-Index: AQHV8YWgZBTgifi/UkqO1O9RmFkFOqhEfCMAgAAGdYCAAEOMgA== Date: Thu, 12 Mar 2020 09:57:17 +0000 Message-ID: <75003598-6ef3-aa68-bbde-ee3bc9d85134@marvell.com> References: <1582185727-6749-1-git-send-email-lbartosik@marvell.com> <1582820317-7333-1-git-send-email-lbartosik@marvell.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [199.233.58.37] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: a0bd2eb0-2cf3-4379-5b4c-08d7c66bbfd8 x-ms-traffictypediagnostic: BYAPR18MB3734: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:4303; x-forefront-prvs: 0340850FCD x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(376002)(346002)(396003)(39860400002)(366004)(136003)(199004)(110136005)(54906003)(4326008)(81156014)(6636002)(86362001)(316002)(6512007)(2906002)(478600001)(31696002)(36756003)(6486002)(66446008)(76116006)(186003)(53546011)(6506007)(2616005)(66476007)(64756008)(81166006)(66946007)(26005)(66556008)(8936002)(30864003)(31686004)(8676002)(71200400001)(5660300002); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR18MB3734; H:BYAPR18MB2599.namprd18.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; received-spf: None (protection.outlook.com: marvell.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: QLlg/0vcdnYaNT+QUfMIZDU3N+hHDrRIOqxfmcg68YReaZw8eVvALrf402OygTpv2FUsSc+8aH14/wPDYkuJNjQuqwwu9qgmx18r3mKvMArs1mLR7TjLDZuQFB6Y+b96b4FMoWBLypWCBWY4uzmH4bd26lw+uCN8qqeUfpRpoSncG5EugbYh42yqgLHPceyBZNYnRJIvvIK+d8ONFfYKbRMg5+eb3S0qZWUzck/xvg9BCcBjnuAByZSXJb7JzFpTicfJvz+4EWrTX5pfXkiVGCUS9jkBXHgo5fduNuQLw0+9lFuyCpIr1KzA3tuN2Xj74khWuZtdxUdJXRujtelEyB14tGFBZSDFxKStWL9S/N43pR0GbUlBqLDWvGEw7PPT+FGlsA3v0/iuyCbTnvF3jlcQDuAxzBnD4ngXDTabH7Yj1Qt29jD8oh2BXAJD+bOl x-ms-exchange-antispam-messagedata: JW3lYYnoTdspZF4+VPXpdc64DJOi0mhBMhvreXqSh4wzhczl8cmpEwbk6I9pG9JCstqgDpMlVOLLIVkdSYoe4UF+dF1STqthDciZKxG2Pxmo6Xjo0KDvVqa3sQ6udj1hRhq/I0of8/COIbjKDpwlQQ== Content-Type: text/plain; charset="utf-8" Content-ID: <0E89E5B1E29BB549AE114AD8A1B1F9F0@namprd18.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: a0bd2eb0-2cf3-4379-5b4c-08d7c66bbfd8 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Mar 2020 09:57:17.4904 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: rYnpQ5StJysnfwoNOnWr16/EFdmL6T1pZEzlGnPd6VYYFL1W6XNN4otprBnA5sIkQj72ldV9FvvJYPZF8MUwFA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR18MB3734 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.138, 18.0.572 definitions=2020-03-12_01:2020-03-11, 2020-03-12 signatures=0 Subject: Re: [dpdk-dev] [EXT] RE: [PATCH v5 00/15] add eventmode to ipsec-secgw 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" SGkgQWtoaWwsDQoNClRoaXMgaXMgcmVsZWFzZSBub3RlIHByb3Bvc2FsIGZvciBldmVudCBtb2Rl IGZlYXR1cmUuDQoNCg0KDQpkaWZmIC0tZ2l0IGEvZG9jL2d1aWRlcy9yZWxfbm90ZXMvcmVsZWFz ZV8yMF8wNS5yc3QgYi9kb2MvZ3VpZGVzL3JlbF9ub3Rlcy9yZWxlYXNlXzIwXzA1LnJzdA0KaW5k ZXggMjE5MGVhZi4uZjhkZWRhNyAxMDA2NDQNCi0tLSBhL2RvYy9ndWlkZXMvcmVsX25vdGVzL3Jl bGVhc2VfMjBfMDUucnN0DQorKysgYi9kb2MvZ3VpZGVzL3JlbF9ub3Rlcy9yZWxlYXNlXzIwXzA1 LnJzdA0KQEAgLTU2LDYgKzU2LDE0IEBAIE5ldyBGZWF0dXJlcw0KICAgICAgQWxzbywgbWFrZSBz dXJlIHRvIHN0YXJ0IHRoZSBhY3R1YWwgdGV4dCBhdCB0aGUgbWFyZ2luLg0KICAgICAgPT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQogDQor KiAqKkFkZGVkIGV2ZW50IG1vZGUgdG8gaXBzZWMtc2VjZ3cgYXBwbGljYXRpb24gKioNCisNCisg IEFkZGVkIGV2ZW50IG1vZGUgdG8gaXBzZWMtc2VjZ3cgYXBwbGljYXRpb24uIFRoZSBpcHNlYy1z ZWNndyB3b3JrZXIgdGhyZWFkKHMpDQorICB3b3VsZCBiZSByZWNlaXZpbmcgZXZlbnRzIGFuZCB3 b3VsZCBiZSBzdWJtaXR0aW5nIGl0IGJhY2sgdG8gdGhlIGV2ZW50IGRldmljZSBhZnRlcg0KKyAg dGhlIHByb2Nlc3NpbmcuIFRoaXMgd2F5LCBtdWx0aWNvcmUgc2NhbGluZyBhbmQgSFcgYXNzaXN0 ZWQgc2NoZWR1bGluZyBpcyBhY2hpZXZlZA0KKyAgYnkgbWFraW5nIHVzZSBvZiB0aGUgZXZlbnQg ZGV2aWNlIGNhcGFiaWxpdGllcy4gVGhlIGV2ZW50IG1vZGUgY3VycmVudGx5IHN1cHBvcnRzDQor ICBvbmx5IGlubGluZSBJUHNlYyBwcm90b2NvbCBvZmZsb2FkLg0KKw0KIA0KIFJlbW92ZWQgSXRl bXMNCiAtLS0tLS0tLS0tLS0tDQoNCg0KDQpUaGFua3MsDQpMdWthc3oNCg0KT24gMTIuMDMuMjAy MCAwNjo1NSwgQWtoaWwgR295YWwgd3JvdGU6DQo+IEV4dGVybmFsIEVtYWlsDQo+IA0KPiAtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tDQo+IEhpIEFub29iLA0KPiANCj4gUGxlYXNlIHNlbmQgYSByZWxlYXNlIG5vdGUg dXBkYXRlIGFzIGEgcmVwbHkgdG8gdGhpcyBtYWlsLiBJIHdpbGwgdXBkYXRlIGl0IHdoaWxlIG1l cmdpbmcgdGhlIHBhdGNoc2V0Lg0KPiANCj4gUmVnYXJkcywNCj4gQWtoaWwNCj4+DQo+PiBIaSBB a2hpbCwNCj4+DQo+PiBSZW1pbmRlci4NCj4+DQo+PiBEbyB5b3UgaGF2ZSBhbnkgZnVydGhlciBy ZXZpZXcgY29tbWVudHM/DQo+Pg0KPj4gVGhhbmtzLA0KPj4gQW5vb2INCj4+DQo+Pj4gLS0tLS1P cmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4+PiBGcm9tOiBBbmFueWV2LCBLb25zdGFudGluIDxrb25z dGFudGluLmFuYW55ZXZAaW50ZWwuY29tPg0KPj4+IFNlbnQ6IFR1ZXNkYXksIE1hcmNoIDMsIDIw MjAgMTE6MzAgUE0NCj4+PiBUbzogTHVrYXMgQmFydG9zaWsgPGxiYXJ0b3Npa0BtYXJ2ZWxsLmNv bT47IEFraGlsIEdveWFsDQo+Pj4gPGFraGlsLmdveWFsQG54cC5jb20+OyBOaWNvbGF1LCBSYWR1 IDxyYWR1Lm5pY29sYXVAaW50ZWwuY29tPjsgVGhvbWFzDQo+Pj4gTW9uamFsb24gPHRob21hc0Bt b25qYWxvbi5uZXQ+DQo+Pj4gQ2M6IEplcmluIEphY29iIEtvbGxhbnVra2FyYW4gPGplcmluakBt YXJ2ZWxsLmNvbT47IE5hcmF5YW5hIFByYXNhZCBSYWp1DQo+Pj4gQXRocmV5YSA8cGF0aHJleWFA bWFydmVsbC5jb20+OyBBbmt1ciBEd2l2ZWRpIDxhZHdpdmVkaUBtYXJ2ZWxsLmNvbT47DQo+Pj4g QW5vb2IgSm9zZXBoIDxhbm9vYmpAbWFydmVsbC5jb20+OyBBcmNoYW5hIE11bmlnYW50aQ0KPj4+ IDxtYXJjaGFuYUBtYXJ2ZWxsLmNvbT47IFRlamFzcmVlIEtvbmRvaiA8a3RlamFzcmVlQG1hcnZl bGwuY29tPjsgVmFtc2kNCj4+PiBLcmlzaG5hIEF0dHVudXJ1IDx2YXR0dW51cnVAbWFydmVsbC5j b20+OyBkZXZAZHBkay5vcmcNCj4+PiBTdWJqZWN0OiBbRVhUXSBSRTogW1BBVENIIHY1IDAwLzE1 XSBhZGQgZXZlbnRtb2RlIHRvIGlwc2VjLXNlY2d3DQo+Pj4NCj4+PiBFeHRlcm5hbCBFbWFpbA0K Pj4+DQo+Pj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPj4+DQo+Pj4+DQo+Pj4+IFRoaXMgc2VyaWVzIGludHJv ZHVjZXMgZXZlbnQtbW9kZSBhZGRpdGlvbnMgdG8gaXBzZWMtc2VjZ3cuDQo+Pj4+DQo+Pj4+IFdp dGggdGhpcyBzZXJpZXMsIGlwc2VjLXNlY2d3IHdvdWxkIGJlIGFibGUgdG8gcnVuIGluIGV2ZW50 bW9kZS4gVGhlDQo+Pj4+IHdvcmtlciB0aHJlYWQgKGV4ZWN1dGluZyBsb29wKSB3b3VsZCBiZSBy ZWNlaXZpbmcgZXZlbnRzIGFuZCB3b3VsZCBiZQ0KPj4+PiBzdWJtaXR0aW5nIGl0IGJhY2sgdG8g dGhlIGV2ZW50ZGV2IGFmdGVyIHRoZSBwcm9jZXNzaW5nLiBUaGlzIHdheSwNCj4+Pj4gbXVsdGlj b3JlIHNjYWxpbmcgYW5kIGgvdyBhc3Npc3RlZCBzY2hlZHVsaW5nIGlzIGFjaGlldmVkIGJ5IG1h a2luZw0KPj4+PiB1c2Ugb2YgdGhlIGV2ZW50ZGV2IGNhcGFiaWxpdGllcy4NCj4+Pj4NCj4+Pj4g U2luY2UgdGhlIHVuZGVybHlpbmcgZXZlbnQgZGV2aWNlIHdvdWxkIGJlIGhhdmluZyB2YXJ5aW5n DQo+Pj4+IGNhcGFiaWxpdGllcywgdGhlIHdvcmtlciB0aHJlYWQgY291bGQgYmUgZHJhZnRlZCBk aWZmZXJlbnRseSB0byBtYXhpbWl6ZQ0KPj4+IHBlcmZvcm1hbmNlLg0KPj4+PiBUaGlzIHNlcmll cyBpbnRyb2R1Y2VzIHVzYWdlIG9mIG11bHRpcGxlIHdvcmtlciB0aHJlYWRzLCBhbW9uZyB3aGlj aA0KPj4+PiB0aGUgb25lIHRvIGJlIHVzZWQgd2lsbCBiZSBkZXRlcm1pbmVkIGJ5IHRoZSBvcGVy YXRpbmcgY29uZGl0aW9ucyBhbmQNCj4+Pj4gdGhlIHVuZGVybHlpbmcgZGV2aWNlIGNhcGFiaWxp dGllcy4NCj4+Pj4NCj4+Pj4gRm9yIGV4YW1wbGUsIGlmIGFuIGV2ZW50IGRldmljZSAtIGV0aCBk ZXZpY2UgcGFpciBoYXMgVHggaW50ZXJuYWwNCj4+Pj4gcG9ydCwgdGhlbiBhcHBsaWNhdGlvbiBj YW4gZG8gdHhfYWRhcHRlcl9lbnF1ZXVlKCkgaW5zdGVhZCBvZiByZWd1bGFyDQo+Pj4+IGV2ZW50 X2VucXVldWUoKS4gU28gYSB0aHJlYWQgbWFraW5nIGFuIGFzc3VtcHRpb24gdGhhdCB0aGUgZGV2 aWNlIHBhaXINCj4+Pj4gaGFzIGludGVybmFsIHBvcnQgd2lsbCBub3QgYmUgdGhlIHJpZ2h0IHNv bHV0aW9uIGZvciBhbm90aGVyIHBhaXIuIFRoZQ0KPj4+PiBpbmZyYXN0cnVjdHVyZSBhZGRlZCB3 aXRoIHRoZXNlIHBhdGNoZXMgYWltcyB0byBoZWxwIGFwcGxpY2F0aW9uIHRvDQo+Pj4+IGhhdmUg bXVsdGlwbGUgd29ya2VyIHRocmVhZHMsIHRoZXJlIGJ5IGV4dHJhY3RpbmcgbWF4aW11bSBwZXJm b3JtYW5jZQ0KPj4+PiBmcm9tIGV2ZXJ5IGRldmljZSB3aXRob3V0IGFmZmVjdGluZyBleGlzdGlu ZyBwYXRocy91c2UgY2FzZXMuDQo+Pj4+DQo+Pj4+IFRoZSBldmVudG1vZGUgY29uZmlndXJhdGlv biBpcyBwcmVkZWZpbmVkLiBBbGwgcGFja2V0cyByZWFjaGluZyBvbmUNCj4+Pj4gZXRoIHBvcnQg d2lsbCBoaXQgb25lIGV2ZW50IHF1ZXVlLiBBbGwgZXZlbnQgcXVldWVzIHdpbGwgYmUgbWFwcGVk IHRvDQo+Pj4+IGFsbCBldmVudCBwb3J0cy4gU28gYWxsIGNvcmVzIHdpbGwgYmUgYWJsZSB0byBy ZWNlaXZlIHRyYWZmaWMgZnJvbSBhbGwgcG9ydHMuDQo+Pj4+IFdoZW4gc2NoZWR1bGVfdHlwZSBp cyBzZXQgYXMgUlRFX1NDSEVEX1RZUEVfT1JERVJFRC9BVE9NSUMsIGV2ZW50DQo+Pj4+IGRldmlj ZSB3aWxsIGVuc3VyZSB0aGUgb3JkZXJpbmcuIE9yZGVyaW5nIHdvdWxkIGJlIGxvc3Qgd2hlbiB0 cmllZCBpbg0KPj4+IFBBUkFMTEVMLg0KPj4+Pg0KPj4+PiBGb2xsb3dpbmcgY29tbWFuZCBsaW5l IG9wdGlvbnMgYXJlIGludHJvZHVjZWQsDQo+Pj4+DQo+Pj4+IC0tdHJhbnNmZXItbW9kZTogdG8g Y2hvb3NlIGJldHdlZW4gcG9sbCBtb2RlICYgZXZlbnQgbW9kZQ0KPj4+PiAtLWV2ZW50LXNjaGVk dWxlLXR5cGU6IHRvIHNwZWNpZnkgdGhlIHNjaGVkdWxpbmcgdHlwZQ0KPj4+PiAgICAgICAgICAg ICAgICAgIChSVEVfU0NIRURfVFlQRV9PUkRFUkVELw0KPj4+PiAgICAgICAgICAgICAgICAgICBS VEVfU0NIRURfVFlQRV9BVE9NSUMvDQo+Pj4+ICAgICAgICAgICAgICAgICAgIFJURV9TQ0hFRF9U WVBFX1BBUkFMTEVMKQ0KPj4+Pg0KPj4+PiBBZGRpdGlvbmFsbHkgdGhlIGV2ZW50IG1vZGUgaW50 cm9kdWNlcyB0d28gbW9kZXMgb2YgcHJvY2Vzc2luZyBwYWNrZXRzOg0KPj4+Pg0KPj4+PiBEcml2 ZXItbW9kZTogVGhpcyBtb2RlIHdpbGwgaGF2ZSBiYXJlIG1pbmltdW0gY2hhbmdlcyBpbiB0aGUg YXBwbGljYXRpb24NCj4+Pj4gICAgICAgICAgICAgIHRvIHN1cHBvcnQgaXBzZWMuIFRoZXJlIHdv dWRuJ3QgYmUgYW55IGxvb2t1cCBldGMgZG9uZSBpbg0KPj4+PiAgICAgICAgICAgICAgdGhlIGFw cGxpY2F0aW9uLiBBbmQgZm9yIGlubGluZS1wcm90b2NvbCB1c2UgY2FzZSwgdGhlDQo+Pj4+ICAg ICAgICAgICAgICB0aHJlYWQgd291bGQgcmVzZW1ibGUgbDJmd2QgYXMgdGhlIGlwc2VjIHByb2Nl c3Npbmcgd291bGQgYmUNCj4+Pj4gICAgICAgICAgICAgIGRvbmUgZW50aXJlbHkgaW4gdGhlIGgv dy4gVGhpcyBtb2RlIGNhbiBiZSB1c2VkIHRvIGJlbmNobWFyaw0KPj4+PiAgICAgICAgICAgICAg dGhlIHJhdyBwZXJmb3JtYW5jZSBvZiB0aGUgaC93LiBBbGwgdGhlIGFwcGxpY2F0aW9uIHNpZGUN Cj4+Pj4gICAgICAgICAgICAgIHN0ZXBzIChsaWtlIGxvb2t1cCkgY2FuIGJlIHJlZG9uZSBiYXNl ZCBvbiB0aGUgcmVxdWlyZW1lbnQNCj4+Pj4gICAgICAgICAgICAgIG9mIHRoZSBlbmQgdXNlci4g SGVuY2UgdGhlIG5lZWQgZm9yIGEgbW9kZSB3aGljaCB3b3VsZA0KPj4+PiAgICAgICAgICAgICAg cmVwb3J0IHRoZSByYXcgcGVyZm9ybWFuY2UuDQo+Pj4+DQo+Pj4+IEFwcC1tb2RlOiBUaGlzIG1v ZGUgd2lsbCBoYXZlIGFsbCB0aGUgZmVhdHVyZXMgY3VycmVudGx5IGltcGxlbWVudGVkIHdpdGgN Cj4+Pj4gICAgICAgICAgIGlwc2VjLXNlY2d3IChub24gbGlicnRlX2lwc2VjIG1vZGUpLiBBbGwg dGhlIGxvb2t1cHMgZXRjDQo+Pj4+ICAgICAgICAgICB3b3VsZCBmb2xsb3cgdGhlIGV4aXN0aW5n IG1ldGhvZHMgYW5kIHdvdWxkIHJlcG9ydCBudW1iZXJzDQo+Pj4+ICAgICAgICAgICB0aGF0IGNh biBiZSBjb21wYXJlZCBhZ2FpbnN0IHJlZ3VsYXIgaXBzZWMtc2VjZ3cgYmVuY2htYXJrDQo+Pj4+ ICAgICAgICAgICBudW1iZXJzLg0KPj4+Pg0KPj4+PiBUaGUgZHJpdmVyIG1vZGUgaXMgc2VsZWN0 ZWQgd2l0aCBleGlzdGluZyAtLXNpbmdsZS1zYSBvcHRpb24gKHVzZWQNCj4+Pj4gYWxzbyBieSBw b2xsIG1vZGUpLiBXaGVuIC0tc2luZ2xlLXNhIG9wdGlvbiBpcyB1c2VkIGluIGNvbmp1dGlvbiB3 aXRoDQo+Pj4+IGV2ZW50IG1vZGUgdGhlbiBpbmRleCBwYXNzZWQgdG8gLS1zaW5nbGUtc2EgaXMg aWdub3JlZC4NCj4+Pj4NCj4+Pj4gRXhhbXBsZSBjb21tYW5kcyB0byBleGVjdXRlIGlwc2VjLXNl Y2d3IGluIHZhcmlvdXMgbW9kZXMgb24gT0NURU9ODQo+PiBUWDINCj4+Pj4gcGxhdGZvcm0sDQo+ Pj4+DQo+Pj4+ICNJbmJvdW5kIGFuZCBvdXRib3VuZCBhcHAgbW9kZQ0KPj4+PiBpcHNlYy1zZWNn dyAtdyAwMDAyOjAyOjAwLjAsaXBzZWNfaW5fbWF4X3NwaT0xMjggLXcNCj4+Pj4gMDAwMjowMzow MC4wLGlwc2VjX2luX21heF9zcGk9MTI4IC13IDAwMDI6MGU6MDAuMCAtdyAwMDAyOjEwOjAwLjEN Cj4+Pj4gLS1sb2ctbGV2ZWw9OCAtYyAweDEgLS0gLVAgLXAgMHgzIC11IDB4MSAtZiBhZXMtZ2Nt LmNmZw0KPj4+PiAtLXRyYW5zZmVyLW1vZGUgZXZlbnQgLS1ldmVudC1zY2hlZHVsZS10eXBlIHBh cmFsbGVsDQo+Pj4+DQo+Pj4+ICNJbmJvdW5kIGFuZCBvdXRib3VuZCBkcml2ZXIgbW9kZQ0KPj4+ PiBpcHNlYy1zZWNndyAtdyAwMDAyOjAyOjAwLjAsaXBzZWNfaW5fbWF4X3NwaT0xMjggLXcNCj4+ Pj4gMDAwMjowMzowMC4wLGlwc2VjX2luX21heF9zcGk9MTI4IC13IDAwMDI6MGU6MDAuMCAtdyAw MDAyOjEwOjAwLjENCj4+Pj4gLS1sb2ctbGV2ZWw9OCAtYyAweDEgLS0gLVAgLXAgMHgzIC11IDB4 MSAtZiBhZXMtZ2NtLmNmZw0KPj4+PiAtLXRyYW5zZmVyLW1vZGUgZXZlbnQgLS1ldmVudC1zY2hl ZHVsZS10eXBlIHBhcmFsbGVsIC0tc2luZ2xlLXNhIDANCj4+Pj4NCj4+Pj4gVGhpcyBzZXJpZXMg YWRkcyBub24gYnVyc3QgdHggaW50ZXJuYWwgcG9ydCB3b3JrZXJzIG9ubHkuIEl0IHByb3ZpZGVz DQo+Pj4+IGluZnJhc3RydWN0dXJlIGZvciBub24gaW50ZXJuYWwgcG9ydCB3b3JrZXJzLCBob3dl dmVyIGRvZXMgbm90IGRlZmluZQ0KPj4+PiBhbnkuIEFsc28sIG9ubHkgaW5saW5lIGlwc2VjIHBy b3RvY29sIG1vZGUgaXMgc3VwcG9ydGVkIGJ5IHRoZSB3b3JrZXIgdGhyZWFkcw0KPj4+IGFkZGVk Lg0KPj4+Pg0KPj4+PiBGb2xsb3dpbmcgYXJlIHBsYW5uZWQgZmVhdHVyZXMsDQo+Pj4+IDEuIEFk ZCBidXJzdCBtb2RlIHdvcmtlcnMuDQo+Pj4+IDIuIEFkZCBub24gaW50ZXJuYWwgcG9ydCB3b3Jr ZXJzLg0KPj4+PiAzLiBWZXJpZnkgc3VwcG9ydCBmb3IgUnggY29yZSAodGhlIHN1cHBvcnQgaXMg YWRkZWQgYnV0IGxhY2sgb2YgaC93IHRvIHZlcmlmeSkuDQo+Pj4+IDQuIEFkZCBsb29rYXNpZGUg cHJvdG9jb2wgc3VwcG9ydC4NCj4+Pj4NCj4+Pj4gRm9sbG93aW5nIGFyZSBmZWF0dXJlcyB0aGF0 IE1hcnZlbGwgd29uJ3QgYmUgYXR0ZW1wdGluZy4NCj4+Pj4gMS4gSW5saW5lIGNyeXB0byBzdXBw b3J0Lg0KPj4+PiAyLiBMb29rYXNpZGUgY3J5cHRvIHN1cHBvcnQuDQo+Pj4+DQo+Pj4+IEZvciB0 aGUgZmVhdHVyZXMgdGhhdCBNYXJ2ZWxsIHdvbid0IGJlIGF0dGVtcHRpbmcsIG5ldyB3b3JrZXJz IGNhbiBiZQ0KPj4+PiBpbnRyb2R1Y2VkIGJ5IHRoZSByZXNwZWN0aXZlIHN0YWtlIGhvbGRlcnMu DQo+Pj4+DQo+Pj4+IFRoaXMgc2VyaWVzIGlzIHRlc3RlZCBvbiBNYXJ2ZWxsIE9DVEVPTiBUWDIu DQo+Pj4+IFRoaXMgc2VyaWVzIGlzIHRhcmdldGVkIGZvciAyMC4wNSByZWxlYXNlLg0KPj4+Pg0K Pj4+PiBDaGFuZ2VzIGluIHY1Og0KPj4+PiAqIFJlbmFtZSBmdW5jdGlvbiBjaGVja19wYXJhbXMo KSB0byBjaGVja19wb2xsX21vZGVfcGFyYW1zKCkgYW5kDQo+Pj4+ICAgY2hlY2tfZWhfY29uZigp IHRvIGNoZWNrX2V2ZW50X21vZGVfcGFyYW1zKCkgaW4gb3JkZXIgdG8gbWFrZSBpdCBjbGVhcg0K Pj4+PiAgIHdoYXQgaXMgdGhlaXIgcHVycG9zZS4NCj4+Pj4gKiBGb3JiaWQgdXNhZ2Ugb2YgLS1j b25maWcgb3B0aW9uIGluIGV2ZW50IG1vZGUuDQo+Pj4+ICogUmVwbGFjZSBtYWdpYyBudW1iZXJz IG9uIHJldHVybiB3aXRoIGVudW0gdmFsdWVzIGluDQo+Pj4gcHJvY2Vzc19pcHNlY19ldl9pbmJv dW5kKCkNCj4+Pj4gICBhbmQgcHJvY2Vzc19pcHNlY19ldl9vdXRib3VuZCgpIGZ1bmN0aW9ucy4N Cj4+Pj4gKiBBZGQgc2Vzc2lvbl9wcml2X3Bvb2wgZm9yIGJvdGggaW5ib3VuZCBhbmQgb3V0Ym91 bmQgY29uZmlndXJhdGlvbiBpbg0KPj4+PiAgIGlwc2VjX3dya3Jfbm9uX2J1cnN0X2ludF9wb3J0 X2FwcF9tb2RlIHdvcmtlci4NCj4+Pj4gKiBBZGQgY2hlY2sgb2YgZXZlbnQgdHlwZSBpbiBpcHNl Y193cmtyX25vbl9idXJzdF9pbnRfcG9ydF9hcHBfbW9kZQ0KPj4+IHdvcmtlci4NCj4+Pj4gKiBV cGRhdGUgZGVzY3JpcHRpb24gb2YgLS1jb25maWcgb3B0aW9uIGluIGJvdGggaXBzZWMtc2VjZ3cg aGVscCBhbmQNCj4+PiBkb2N1bWVudGF0aW9uLg0KPj4+Pg0KPj4+PiBDaGFuZ2VzIGluIHY0Og0K Pj4+PiAqIFVwZGF0ZSBpcHNlYy1zZWNndyBkb2N1bWVudGF0aW9uIHRvIGRlc2NyaWJlIHRoZSBu ZXcgb3B0aW9ucyBhcyB3ZWxsIGFzDQo+Pj4+ICAgZXZlbnQgbW9kZSBzdXBwb3J0Lg0KPj4+PiAq IEluIGV2ZW50IG1vZGUgcmVzZXJ2ZSBudW1iZXIgb2YgY3J5cHRvIHF1ZXVlcyBlcXVhbCB0byBu dW1iZXIgb2YgZXRoDQo+Pj4gcG9ydHMNCj4+Pj4gICBpbiBvcmRlciB0byBtZWV0IGlubGluZSBw cm90b2NvbCBvZmZsb2FkIHJlcXVpcmVtZW50cy4NCj4+Pj4gKiBBZGQgY2FsY3VsYXRlX25iX21i dWZzKCkgZnVuY3Rpb24gdG8gY2FsY3VsYXRlIG51bWJlciBvZiBtYnVmcyBpbiBhIHBvb2wNCj4+ Pj4gICBhbmQgaW5jbHVkZSBmcmFnbWVudHMgdGFibGUgc2l6ZSBpbnRvIHRoZSBjYWxjdWxhdGlv bi4NCj4+Pj4gKiBNb3ZlIHN0cnVjdHVyZXMgaXBzZWNfeGYgYW5kIGlwc2VjX3NhZCB0byBpcHNl Yy5oIGFuZCByZW1vdmUgc3RhdGljDQo+Pj4ga2V5d29yZA0KPj4+PiAgIGZyb20gc2Ffb3V0LCBu Yl9zYV9vdXQsIHNhX2luIGFuZCBuYl9zYV9pbiBpbiBzYS5jLg0KPj4+PiAqIFVwZGF0ZSBwcm9j ZXNzX2lwc2VjX2V2X2luYm91bmQoKSwgcHJvY2Vzc19pcHNlY19ldl9vdXRib3VuZCgpLA0KPj4+ IGNoZWNrX3NwKCkNCj4+Pj4gICBhbmQgcHJlcGFyZV9vdXRfc2Vzc2lvbnNfdGJsKCkgZnVuY3Rp b25zIGFzIGEgcmVzdWx0IG9mIGNoYW5nZXMgaW50cm9kdWNlZA0KPj4+PiAgIGJ5IFNBRCBmZWF0 dXJlLg0KPj4+PiAqIFJlbW92ZSBzZXR0aW5nIHNhLT5jZGV2X2lkX3FwIHRvIDAgaW4gY3JlYXRl X2lubGluZV9zZXNzaW9uIGFzIHNhX2N0eA0KPj4+PiAgIGlzIGNyZWF0ZWQgd2l0aCBydGVfem1h bGxvYy4NCj4+Pj4gKiBNaW5vciBjbGVhbnVwIGVuaGFuY2VtZW50czoNCj4+Pj4gLSBJbiBlaF9z ZXRfZGVmYXVsdF9jb25mX2V2ZW50ZGV2KCkgZnVuY3Rpb24gaW4gZXZlbnRfaGVscGVyLmMgcHV0 DQo+PiBkZWZpbml0aW9uDQo+Pj4+ICAgb2YgaW50IGxvY2FsIHZhcnMgaW4gb25lIGxpbmUsIHJl bW92ZSBpbnZhbGlkIGNvbW1lbnQsIHB1dA0KPj4+PiAgICJldmVudGRldl9jb25maWctPmV2X3F1 ZXVlX21vZGUgPQ0KPj4gUlRFX0VWRU5UX1FVRVVFX0NGR19BTExfVFlQRVMiDQo+Pj4gaW4gb25l IGxpbmUNCj4+Pj4gICBpbnN0ZWFkIG9mIHR3by4NCj4+Pj4gLSBSZW1vdmUgZXh0ZXJuICJDIiBm cm9tIGV2ZW50X2hlbHBlci5oLg0KPj4+PiAtIFB1dCBsb2NhbCB2YXJzIGluIHJldmVyc2UgeG1h cyB0cmVlIG9yZGVyIGluIGVoX2Rldl9oYXNfcnhfaW50ZXJuYWxfcG9ydCgpDQo+Pj4gYW5kDQo+ Pj4+ICAgZWhfZGV2X2hhc190eF9pbnRlcm5hbF9wb3J0KCkgZnVuY3Rpb25zIGluIGV2ZW50X2hl bHBlci5jLg0KPj4+PiAtIFB1dCAjaW5jbHVkZSA8cnRlX2JpdG1hcC5oPiBpbiBhbHBoYWJldGlj YWwgb3JkZXIgaW4gaXBzZWMtc2VjZ3cuYy4NCj4+Pj4gLSBNb3ZlICJleHRlcm4gdm9sYXRpbGUg Ym9vbCBmb3JjZV9xdWl0IiBhbmQgIiNpbmNsdWRlIDxzdGRib29sLmg+IiB0byBpcHNlYy0NCj4+ PiBzZWNndy5oLA0KPj4+PiAgIHJlbW92ZSAjaW5jbHVkZSA8cnRlX2hhc2guaD4uDQo+Pj4+IC0g UmVtb3ZlIG5vdCBuZWVkZWQgaW5jbHVkZXMgaW4gaXBzZWNfd29ya2VyLmMuDQo+Pj4+IC0gUmVt b3ZlIGV4cGlyZWQgdG9kbyBmcm9tIGlwc2VjX3dvcmtlci5oLg0KPj4+Pg0KPj4+PiBDaGFuZ2Vz IGluIHYzOg0KPj4+PiAqIE1vdmUgZWhfY29uZl9pbml0KCkgYW5kIGVoX2NvbmZfdW5pbml0KCkg ZnVuY3Rpb25zIHRvIGV2ZW50X2hlbHBlci5jDQo+Pj4+ICAgaW5jbHVkaW5nIG1pbm9yIHJld29y ay4NCj4+Pj4gKiBSZW5hbWUgLS1zY2hlZHVsZS10eXBlIG9wdGlvbiB0byAtLWV2ZW50LXNjaGVk dWxlLXR5cGUuDQo+Pj4+ICogUmVwbGFjZSBtYWNybyBVTlBST1RFQ1RFRF9QT1JUIHdpdGggc3Rh dGljIGlubGluZSBmdW5jdGlvbg0KPj4+PiAgIGlzX3VucHJvdGVjdGVkX3BvcnQoKS4NCj4+Pj4g KiBNb3ZlIGRlZmluaXRpb25zIG9mIGdsb2JhbCB2YXJpYWJsZXMgdXNlZCBieSBtdWx0aXBsZSBt b2R1bGVzDQo+Pj4+ICAgdG8gLmMgZmlsZXMgYW5kIGFkZCBleHRlcm5zIGluIC5oIGhlYWRlcnMu DQo+Pj4+ICogQWRkIGVoX2NoZWNrX2NvbmYoKSB3aGljaCB2YWxpZGF0ZXMgaXBzZWMtc2VjZ3cg Y29uZmlndXJhdGlvbg0KPj4+PiAgIGZvciBldmVudCBtb2RlLg0KPj4+PiAqIEFkZCBkeW5hbWlj IGNhbGN1bGF0aW9uIG9mIG51bWJlciBvZiBidWZmZXJzIGluIGEgcG9vbCBiYXNlZA0KPj4+PiAg IG9uIG51bWJlciBvZiBjb3JlcywgcG9ydHMgYW5kIGNyeXB0byBxdWV1ZXMuDQo+Pj4+ICogRml4 IHNlZ21lbnRhdGlvbiBmYXVsdCBpbiBldmVudCBtb2RlIGRyaXZlciB3b3JrZXIgd2hpY2ggaGFw cGVucw0KPj4+PiAgIHdoZW4gdGhlcmUgYXJlIG5vIGlubGluZSBvdXRib3VuZCBzZXNzaW9ucyBj b25maWd1cmVkLg0KPj4+PiAqIFJlbW92ZSBjaGFuZ2UgcmVsYXRlZCB0byB1cGRhdGluZyBudW1i ZXIgb2YgY3J5cHRvIHF1ZXVlcw0KPj4+PiAgIGluIGNyeXB0b2RldnNfaW5pdCgpLiBUaGUgdXBk YXRlIG9mIGNyeXB0byBxdWV1ZXMgd2lsbCBiZSBoYW5kbGVkDQo+Pj4+ICAgaW4gYSBzZXBhcmF0 ZSBwYXRjaC4NCj4+Pj4gKiBGaXggY29tcGlsYXRpb24gZXJyb3Igb24gMzItYml0IHBsYXRmb3Jt cyBieSB1c2luZyB1c2VyZGF0YSBpbnN0ZWFkDQo+Pj4+ICAgb2YgdWRhdGE2NCBmcm9tIHJ0ZV9t YnVmLg0KPj4+Pg0KPj4+PiBDaGFuZ2VzIGluIHYyOg0KPj4+PiAqIFJlbW92ZSAtLXByb2Nlc3Mt ZGlyIG9wdGlvbi4gSW5zdGVhZCB1c2UgZXhpc3RpbmcgdW5wcm90ZWN0ZWQgcG9ydCBtYXNrDQo+ Pj4+ICAgb3B0aW9uICgtdSkgdG8gZGVjaWRlIHdoZXRlciBwb3J0IGhhbmRsZXMgaW5ib3VuZCBv ciBvdXRib3VuZCB0cmFmZmljLg0KPj4+PiAqIFJlbW92ZSAtLXByb2Nlc3MtbW9kZSBvcHRpb24u IEluc3RlYWQgdXNlIGV4aXN0aW5nIC0tc2luZ2xlLXNhIG9wdGlvbg0KPj4+PiAgIHRvIHNlbGVj dCBiZXR3ZWVuIGFwcCBhbmQgZHJpdmVyIG1vZGVzLg0KPj4+PiAqIEFkZCBoYW5kbGluZyBvZiBQ S1RfUlhfU0VDX09GRkxPQURfRkFJTCByZXN1bHQgaW4gYXBwIHdvcmtlciB0aHJlYWQuDQo+Pj4+ ICogRml4IHBhc3Npbmcgb2YgcmVxX3J4X29mZmxvYWQgZmxhZ3MgdG8gY3JlYXRlX2RlZmF1bHRf aXBzZWNfZmxvdygpLg0KPj4+PiAqIE1vdmUgZGVzdHJ1Y3Rpb24gb2YgZmxvd3MgdG8gYSBsb2Nh dGlvbiB3aGVyZSBldGggcG9ydHMgYXJlIHN0b3BwZWQNCj4+Pj4gICBhbmQgY2xvc2VkLg0KPj4+ PiAqIFByaW50IGVycm9yIGFuZCBleGl0IHdoZW4gZXZlbnQgbW9kZSAtLXNjaGVkdWxlLXR5cGUg b3B0aW9uIGlzIHVzZWQNCj4+Pj4gICBpbiBwb2xsIG1vZGUuDQo+Pj4+ICogUmVkdWNlIG51bWJl ciBvZiBnb3RvIHN0YXRlbWVudHMgcmVwbGFjaW5nIHRoZW0gd2l0aCBsb29wIGNvbnN0cnVjdHMu DQo+Pj4+ICogUmVtb3ZlIHNlY19zZXNzaW9uX2ZpeGVkIHRhYmxlIGFuZCByZXBsYWNlIGl0IHdp dGggbG9jYWxseSBidWlsZA0KPj4+PiAgIHRhYmxlIGluIGRyaXZlciB3b3JrZXIgdGhyZWFkLiBU YWJsZSBpcyBpbmRleGVkIGJ5IHBvcnQgaWRlbnRpZmllcg0KPj4+PiAgIGFuZCBob2xkcyBmaXJz dCBpbmxpbmUgc2Vzc2lvbiBwb2ludGVyIGZvdW5kIGZvciBhIGdpdmVuIHBvcnQuDQo+Pj4+ICog UHJpbnQgZXJyb3IgYW5kIGV4aXQgd2hlbiBzZXNzaW9ucyBvdGhlciB0aGFuIGlubGluZSBhcmUg Y29uZmlndXJlZA0KPj4+PiAgIGluIGV2ZW50IG1vZGUuDQo+Pj4+ICogV2hlbiBudW1iZXIgb2Yg ZXZlbnQgcXVldWVzIGlzIGxlc3MgdGhhbiBudW1iZXIgb2YgZXRoIHBvcnRzIHRoZW4NCj4+Pj4g ICBtYXAgYWxsIGV0aCBwb3J0cyB0byBvbmUgZXZlbnQgcXVldWUuDQo+Pj4+ICogQ2xlYW51cCBh bmQgbWlub3IgaW1wcm92ZW1lbnRzIGluIGNvZGUgYXMgc3VnZ2VzdGVkIGJ5IEtvbnN0YW50aW4N Cj4+Pj4NCj4+Pj4gQW5rdXIgRHdpdmVkaSAoMSk6DQo+Pj4+ICAgZXhhbXBsZXMvaXBzZWMtc2Vj Z3c6IGFkZCBkZWZhdWx0IHJ0ZSBmbG93IGZvciBpbmxpbmUgUngNCj4+Pj4NCj4+Pj4gQW5vb2Ig Sm9zZXBoICg1KToNCj4+Pj4gICBleGFtcGxlcy9pcHNlYy1zZWNndzogYWRkIGZyYW1ld29yayBm b3IgZXZlbnRtb2RlIGhlbHBlcg0KPj4+PiAgIGV4YW1wbGVzL2lwc2VjLXNlY2d3OiBhZGQgZXZl bnRkZXYgcG9ydC1sY29yZSBsaW5rDQo+Pj4+ICAgZXhhbXBsZXMvaXBzZWMtc2VjZ3c6IGFkZCBS eCBhZGFwdGVyIHN1cHBvcnQNCj4+Pj4gICBleGFtcGxlcy9pcHNlYy1zZWNndzogYWRkIFR4IGFk YXB0ZXIgc3VwcG9ydA0KPj4+PiAgIGV4YW1wbGVzL2lwc2VjLXNlY2d3OiBhZGQgcm91dGluZXMg dG8gZGlzcGxheSBjb25maWcNCj4+Pj4NCj4+Pj4gTHVrYXN6IEJhcnRvc2lrICg5KToNCj4+Pj4g ICBleGFtcGxlcy9pcHNlYy1zZWNndzogYWRkIHJvdXRpbmVzIHRvIGxhdW5jaCB3b3JrZXJzDQo+ Pj4+ICAgZXhhbXBsZXMvaXBzZWMtc2VjZ3c6IGFkZCBzdXBwb3J0IGZvciBpbnRlcm5hbCBwb3J0 cw0KPj4+PiAgIGV4YW1wbGVzL2lwc2VjLXNlY2d3OiBhZGQgZXZlbnQgaGVscGVyIGNvbmZpZyBp bml0L3VuaW5pdA0KPj4+PiAgIGV4YW1wbGVzL2lwc2VjLXNlY2d3OiBhZGQgZXZlbnRtb2RlIHRv IGlwc2VjLXNlY2d3DQo+Pj4+ICAgZXhhbXBsZXMvaXBzZWMtc2VjZ3c6IGFkZCBkcml2ZXIgbW9k ZSB3b3JrZXINCj4+Pj4gICBleGFtcGxlcy9pcHNlYy1zZWNndzogYWRkIGFwcCBtb2RlIHdvcmtl cg0KPj4+PiAgIGV4YW1wbGVzL2lwc2VjLXNlY2d3OiBtYWtlIG51bWJlciBvZiBidWZmZXJzIGR5 bmFtaWMNCj4+Pj4gICBkb2M6IGFkZCBldmVudCBtb2RlIHN1cHBvcnQgdG8gaXBzZWMtc2VjZ3cN Cj4+Pj4gICBleGFtcGxlcy9pcHNlYy1zZWNndzogcmVzZXJ2ZSBjcnlwdG8gcXVldWVzIGluIGV2 ZW50IG1vZGUNCj4+Pj4NCj4+Pj4gIGRvYy9ndWlkZXMvc2FtcGxlX2FwcF91Zy9pcHNlY19zZWNn dy5yc3QgfCAgMTM1ICsrLQ0KPj4+PiAgZXhhbXBsZXMvaXBzZWMtc2VjZ3cvTWFrZWZpbGUgICAg ICAgICAgICB8ICAgIDIgKw0KPj4+PiAgZXhhbXBsZXMvaXBzZWMtc2VjZ3cvZXZlbnRfaGVscGVy LmMgICAgICB8IDE4MTINCj4+PiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4+Pj4g IGV4YW1wbGVzL2lwc2VjLXNlY2d3L2V2ZW50X2hlbHBlci5oICAgICAgfCAgMzI3ICsrKysrKw0K Pj4+PiAgZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWMtc2VjZ3cuYyAgICAgICB8ICA1MDYgKysr KysrKy0tDQo+Pj4+ICBleGFtcGxlcy9pcHNlYy1zZWNndy9pcHNlYy1zZWNndy5oICAgICAgIHwg ICA4OCArKw0KPj4+PiAgZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWMuYyAgICAgICAgICAgICB8 ICAgIDUgKy0NCj4+Pj4gIGV4YW1wbGVzL2lwc2VjLXNlY2d3L2lwc2VjLmggICAgICAgICAgICAg fCAgIDUzICstDQo+Pj4+ICBleGFtcGxlcy9pcHNlYy1zZWNndy9pcHNlY193b3JrZXIuYyAgICAg IHwgIDY0OSArKysrKysrKysrKw0KPj4+PiAgZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWNfd29y a2VyLmggICAgICB8ICAgNDEgKw0KPj4+PiAgZXhhbXBsZXMvaXBzZWMtc2VjZ3cvbWVzb24uYnVp bGQgICAgICAgICB8ICAgIDYgKy0NCj4+Pj4gIGV4YW1wbGVzL2lwc2VjLXNlY2d3L3NhLmMgICAg ICAgICAgICAgICAgfCAgIDIxICstDQo+Pj4+ICBleGFtcGxlcy9pcHNlYy1zZWNndy9zYWQuaCAg ICAgICAgICAgICAgIHwgICAgNSAtDQo+Pj4+ICAxMyBmaWxlcyBjaGFuZ2VkLCAzNTE2IGluc2Vy dGlvbnMoKyksIDEzNCBkZWxldGlvbnMoLSkgIGNyZWF0ZSBtb2RlDQo+Pj4+IDEwMDY0NCBleGFt cGxlcy9pcHNlYy1zZWNndy9ldmVudF9oZWxwZXIuYw0KPj4+PiAgY3JlYXRlIG1vZGUgMTAwNjQ0 IGV4YW1wbGVzL2lwc2VjLXNlY2d3L2V2ZW50X2hlbHBlci5oDQo+Pj4+ICBjcmVhdGUgbW9kZSAx MDA2NDQgZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWMtc2VjZ3cuaA0KPj4+PiAgY3JlYXRlIG1v ZGUgMTAwNjQ0IGV4YW1wbGVzL2lwc2VjLXNlY2d3L2lwc2VjX3dvcmtlci5jDQo+Pj4+ICBjcmVh dGUgbW9kZSAxMDA2NDQgZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWNfd29ya2VyLmgNCj4+Pj4N Cj4+Pj4gLS0NCj4+Pg0KPj4+IEhhdmUgdG8gc2F5IEkgZGlkbid0IGxvb2sgZXh0ZW5zaXZlbHkg b24gZXZlbnQgbW9kZS4NCj4+PiBNeSBwcmltYXJ5IGNvbmNlcm4gd2FzIHBvbGwtbW9kZSBhbmQg Y29tbW9uIGNvZGUgY2hhbmdlcy4NCj4+PiBGcm9tIHRoYXQgcGVyc3BlY3RpdmUgLSBMR1RNLg0K Pj4+DQo+Pj4gU2VyaWVzIEFja2VkLWJ5OiBLb25zdGFudGluIEFuYW55ZXYgPGtvbnN0YW50aW4u YW5hbnlldkBpbnRlbC5jb20+DQo+Pj4NCj4+Pj4gMi43LjQNCj4g