From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 5B446A0524; Mon, 19 Apr 2021 19:28:56 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id DAD5A413DE; Mon, 19 Apr 2021 19:28:55 +0200 (CEST) Received: from NAM04-SN1-obe.outbound.protection.outlook.com (mail-eopbgr700056.outbound.protection.outlook.com [40.107.70.56]) by mails.dpdk.org (Postfix) with ESMTP id E34BA413B0 for ; Mon, 19 Apr 2021 19:28:54 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=g+y4SSL0uzZUMI3fONGsHGvNqbW5GrGXlmcz8HYsrQh8WPgzm8Q7D+gMd8/ERr6756B3AnulR7i7WIV0drFIzwc5eh4M5iby1XoWQCYnNiaWxGaEP+rLPs0KDLPHNB3fcy9hoB5kOXX/a4QrFn1v8jUttCBeRJazjtkKSnVr21FaaYHJofkSmabdwu0+ihxOtLLakbMFCpNZgZ9MUuXU2yBDYDnpK/J00Plzz14X1bIrO28qHh0BwsRhVNAVa5sopa3IV/V8zHD34wiI1jgxvmsiSk14rbiRFW9mbc4MEFLi6n06nuFo+It8PnqDXWd1PB/JUu3HRvuOlo0BZBeuaA== 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=WC8Kado9Px6LU/5jhkJEIpCom13hemNqPc1T5XQHkm8=; b=Y0wb4Qe9DBBlN0+zewkJHJ6hNG22MjRVpOL9uGmjd/zwexr74NrDVClU41ocTSfb5yIdjgwDr18BLqfYcE8ApXp80aVgogW9YzYb2xVIa9Gia8x+GR4rgoxjeY7Na6FHqVZ8cPcoXqzUAi1enRGeNeZvTG+KIGddtN1E4ef2E3ehHzn1jBgbi2fBcGhVRVXE1Q5T9Ey5m/f0+prTjXQjyqZbtldR/pNNZbbKreSqsTWrom1xkTWbOCarcejsHIEHA0EVz1La7eT9ghSRztnW2vUqlnkvULEdjJp99NbFfO+SlUZyzmNeaM5l/IUxgRBDHMVOg2Ch890MUbOMyZun8Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WC8Kado9Px6LU/5jhkJEIpCom13hemNqPc1T5XQHkm8=; b=k2G6uQBReppFyBqs3ZLX1WIlPdkJIry4ChEfWj5FTaWLNjqWeg4sgGflg+UES6yDV+HEfgEc+mYZ8QpegAf/lHFGRkMT/qlzrznsw2cOmMeCt1XedOoJxAjTRc6Wv+sIuvoUFhB0mdtnlDE5ADvy03pRCGVMqCRXc2AMoc9KI7RWR3nea/vFtYilw+FfEwGMZEbmu/dwweNsD/siZP4sTnSORdpXWQa5/Tt0geCGsbSd/qIt2zvpPasuPeXCwcVM9POo38/Bgw9eJmtCyWwuapt+irE6Eu2+bYyrIjA9c403egySpzf1VslqIzpc7S0wSaqPTp+CS6ZB9/8s1IQF9Q== Received: from MN2PR12MB2909.namprd12.prod.outlook.com (2603:10b6:208:103::13) by MN2PR12MB2927.namprd12.prod.outlook.com (2603:10b6:208:103::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.24; Mon, 19 Apr 2021 17:28:52 +0000 Received: from MN2PR12MB2909.namprd12.prod.outlook.com ([fe80::7cbc:e499:e936:7408]) by MN2PR12MB2909.namprd12.prod.outlook.com ([fe80::7cbc:e499:e936:7408%7]) with mapi id 15.20.4042.024; Mon, 19 Apr 2021 17:28:52 +0000 From: Bing Zhao To: Ajit Khaparde CC: Ori Kam , NBU-Contact-Thomas Monjalon , Ferruh Yigit , Andrew Rybchenko , dpdk-dev , Xiaoyun Li Thread-Topic: [PATCH v3 3/3] doc: update for conntrack Thread-Index: AQHXMu6OkXKCdXIQuUaydCoaU1DrsKq8D9XQ Date: Mon, 19 Apr 2021 17:28:52 +0000 Message-ID: References: <1618062393-205611-1-git-send-email-bingz@nvidia.com> <1618595649-157464-1-git-send-email-bingz@nvidia.com> <1618595649-157464-4-git-send-email-bingz@nvidia.com> In-Reply-To: Accept-Language: en-US, zh-CN Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: broadcom.com; dkim=none (message not signed) header.d=none;broadcom.com; dmarc=none action=none header.from=nvidia.com; x-originating-ip: [103.150.130.101] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 32ce61f8-1dee-44dc-82f5-08d903589a0d x-ms-traffictypediagnostic: MN2PR12MB2927: x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:1013; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 9vj5NyQsD3kkk6KEOKSf7ZwSyEmYuxA3Dhy8rrt5mULvZTc1/m9xAY4J5a0pwUHMP2fYcDKIlB9m3EMVcdPxKQ31nCxfhjp2w3yyJa98WCXtV9Ra8bLyuiZQKV3uf1ixnbDFj545wkWgFIuX+HlntmhlYdGsI3H/FvfIMjrMmY/5dUIb2yLvIeq19zUc1FGyA9fbfp/HOH6PWXDQzYjSffKdRc4QZkAPg0M+CWSFRqactBTo1u9zYxHCdoPpfxlmdZm8auvZcXrfH6ZV8jnOvznwgcV+sZxOezUfIK7assFJ8X58cTXT+kwBwfawijp13dS99e69+2SqKV2ZzoPQIOt43P19iSAZVB/la0ZAoh4xzjOQKDU5N/akrPUHxpHhLSSdbGRWt3jjyU5YT7h/w2ErGjePtAZn5UdcAUDbbOpS0C5bLuDHf6m900owJw6N9a/Gc0opxq6iyj3e3BQy1py404d9ZYAdHhRXlMuTZP2+TYtNqSHOQmymkbpz/bSWOwvjpKXFPYzQgcVxUprYw2cuNu8p968lSWOgrebvq+DllzEAEIkuKMKYCtQ/ypiWbWdR/gy2eoIMcH0hXBV4SI7k2tab7xK7qS/CZV5Ds14= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR12MB2909.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(39860400002)(346002)(136003)(366004)(396003)(376002)(66556008)(66476007)(76116006)(86362001)(55016002)(71200400001)(6506007)(66446008)(53546011)(7696005)(26005)(64756008)(316002)(66946007)(15650500001)(52536014)(9686003)(30864003)(2906002)(5660300002)(8936002)(122000001)(186003)(4326008)(6916009)(478600001)(8676002)(54906003)(33656002)(83380400001)(38100700002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: =?utf-8?B?UG95QVRLZ09oejVPYTJaNk9lTmdzd0lBOG5mRldIY2d6bmRPSTFMaytLNDRL?= =?utf-8?B?dkt5WjJvaU9STDIzbzlwb1NoRm0zSEg5U2w2Y3JwdWJRbzdORTNlRzJadEY2?= =?utf-8?B?RHZKVWN1c0E0SFA4V3ZqNWFkd2NHUCsvTEs0ekd4V2Q3TEszRjdKZ0lHeGxk?= =?utf-8?B?dDROVnRjTlpNWEhRTHk5ZG1YVHpqVHU3RWlPK1dZUXVyKzVxRktMK2hjTEU3?= =?utf-8?B?dUFMY3BnZWN1cnJYRk5XVVV5Yy9WOVFTakNoSDFoOStYbXFvamMxREl0SmhM?= =?utf-8?B?V2wvM2FjNmo2OFova3NwbmRFczg5S3lvVUxIZnNnN2N4SVZPRXRUS1RFNmFa?= =?utf-8?B?U0VrRlI2b2RXajFOQ21JY2hBVjNlY3VmQzRDMHhlZ2s4ZVFJTFAzVmU2RFpE?= =?utf-8?B?WDlIZFVMVDZMZ0lXWGtoRzJxeDU4UjZla0trMlZOMW5XVzRnNFd3bHJ0STRx?= =?utf-8?B?ZTMySVMwN2pCRzRlVTNITUZ6cXdiVXZCRHgrQzYwNjQ1WE0xMHZKanhBRFRw?= =?utf-8?B?bVNlV2pUUHQxRWJVZW5QbUo4MUZyZitBelhZVlpRZUVsNUp6OVV2ODZqeS9y?= =?utf-8?B?WnhBUmppcjlXZS9UeWJwTVZKZHRsSVF0dXBtSFhZSDB5RGdaUlVSSHB2SUNp?= =?utf-8?B?R1FRamUzVkhRYlM1VUNrSVJUeE4wY2tJTG5pRTM3SVVQMVFoZlY5Zk1uVlZz?= =?utf-8?B?VFdrWmNuSnBsNGRGWEVucWdBZ3YvbENVdCtkc3cwZ09IZVBOZ3J1L0xuZmZy?= =?utf-8?B?TkhYWVNFdVcyK2lQMGtpRUpvenJySFI3V0M5eExCVkhacjYrRjNwNjJZYlBO?= =?utf-8?B?MHkyTjY1a29wWWpLWFZkR05NcjNXNG9IWXYzVVRVOU9jdHBwRWswd2kwekJN?= =?utf-8?B?Y1FhODR4QXd4QnRrSDh0L1dEQ0Q2RURyTDVjWkhROFpreER4QnhXd1dIZXFz?= =?utf-8?B?bk5yK3p3ZkdZbkVIRVRyYU55cGhGTGo4KzI4L21lVzlOaDZ0RG1TeU9VRkJ6?= =?utf-8?B?cU1hc2RPQTRaUDJEN2NhRW8vMnFxODYxYUp2OXBWYjNaQ1hKNytqNC94UWNT?= =?utf-8?B?MUJkTHowZlo1NGp0dk5WL01Ed0I4ek5WendEQktDWSt2SXNyb1FidllEU3gr?= =?utf-8?B?NDBGMGd3eXV6MDZqamV6LzlvTmFGaFNicHhWNEFheHNSeVVIVlM3dklINkFs?= =?utf-8?B?dzZVZ21Uc0R3YXZpTFd3S3MwM3RPZVUrcHVQanMzR2NZMlYxdUtPblBTUjlQ?= =?utf-8?B?WTFkNTJxSlZHQjd5a3FlN2duRWR0M3J4Nk1Id1FSaW5DMGt3TUFDNGRpbVYw?= =?utf-8?B?Z0hLbVUvTVlUdUVXWWY2VXB3QjlvS0lWdFNvSURvaWh6MDF5L3BxelJWQmto?= =?utf-8?B?dHY4cVZIOXA2SWpDR1dkUnVJWkQvWW80b1czRmtacTZHRjVoM3pUdC8xQkIz?= =?utf-8?B?QWZ1OEJDdWlwSlFsSVJzZEszQXluNTIrOE5Lb25QdGRoYTl0enNkNDk5a1By?= =?utf-8?B?VHlhNUFxcnowVENCVGJrTUNoSHBvak4rTHA0RlpLeXZkWCt3clJvTnhDTGwx?= =?utf-8?B?MVlpbERLR2dnUkE0WEFvVXhkMHNjQVRRZGkwYzc3K1hnVHdlNVFROXdGRzlj?= =?utf-8?B?ZE8wYmx4TTIwcmZMNUNVQlR4QzVBN0dmRW1JMEllQUx2ajZHUmY0dG1hTlNk?= =?utf-8?B?VGh2VUVRaGpjRVdKelJ2d0c1ZklNY21zRVFjbTkrNTN0TU5KbzZjeEI1TmFj?= =?utf-8?Q?0BO92sD/HeFmVS128wkWhvdcTQnVqB5y5Dxy8li?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB2909.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 32ce61f8-1dee-44dc-82f5-08d903589a0d X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Apr 2021 17:28:52.4888 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: SPnzKJ0NxCO/idp0N4hzmioX6kDkGqTH+zQCehHm6or8uTwVqsLgo8IS3v0ayqMstPzsMN7H5CmRGqw40AUmCQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB2927 Subject: Re: [dpdk-dev] [PATCH v3 3/3] doc: update for conntrack X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 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" SGkgQWppdCwNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBBaml0IEto YXBhcmRlIDxhaml0LmtoYXBhcmRlQGJyb2FkY29tLmNvbT4NCj4gU2VudDogU2F0dXJkYXksIEFw cmlsIDE3LCAyMDIxIDI6MzAgQU0NCj4gVG86IEJpbmcgWmhhbyA8YmluZ3pAbnZpZGlhLmNvbT4N Cj4gQ2M6IE9yaSBLYW0gPG9yaWthQG52aWRpYS5jb20+OyBOQlUtQ29udGFjdC1UaG9tYXMgTW9u amFsb24NCj4gPHRob21hc0Btb25qYWxvbi5uZXQ+OyBGZXJydWggWWlnaXQgPGZlcnJ1aC55aWdp dEBpbnRlbC5jb20+OyBBbmRyZXcNCj4gUnliY2hlbmtvIDxhbmRyZXcucnliY2hlbmtvQG9rdGV0 bGFicy5ydT47IGRwZGstZGV2IDxkZXZAZHBkay5vcmc+Ow0KPiBYaWFveXVuIExpIDx4aWFveXVu LmxpQGludGVsLmNvbT4NCj4gU3ViamVjdDogUmU6IFtQQVRDSCB2MyAzLzNdIGRvYzogdXBkYXRl IGZvciBjb25udHJhY2sNCj4gDQo+IE9uIEZyaSwgQXByIDE2LCAyMDIxIGF0IDEwOjU0IEFNIEJp bmcgWmhhbyA8YmluZ3pAbnZpZGlhLmNvbT4gd3JvdGU6DQo+ID4NCj4gPiBUaGUgdXBkYXRlZCBk b2N1bWVudGF0aW9ucyBpbmNsdWRlOg0KPiA+ICAgMS4gUmVsZWFzZSBub3Rlcw0KPiA+ICAgMi4g cnRlX2Zsb3cucnN0DQo+ID4gICAzLiB0ZXN0cG1kIHVzZXIgZ3VpZGUNCj4gPg0KPiA+IFNpZ25l ZC1vZmYtYnk6IEJpbmcgWmhhbyA8YmluZ3pAbnZpZGlhLmNvbT4NCj4gPiAtLS0NCj4gPiAgZG9j L2d1aWRlcy9wcm9nX2d1aWRlL3J0ZV9mbG93LnJzdCAgICAgICAgICB8IDExMw0KPiArKysrKysr KysrKysrKysrKysrKw0KPiA+ICBkb2MvZ3VpZGVzL3JlbF9ub3Rlcy9yZWxlYXNlXzIxXzA1LnJz dCAgICAgIHwgICA0ICsNCj4gPiAgZG9jL2d1aWRlcy90ZXN0cG1kX2FwcF91Zy90ZXN0cG1kX2Z1 bmNzLnJzdCB8ICAzNSArKysrKysNCj4gPiAgMyBmaWxlcyBjaGFuZ2VkLCAxNTIgaW5zZXJ0aW9u cygrKQ0KPiA+DQo+ID4gZGlmZiAtLWdpdCBhL2RvYy9ndWlkZXMvcHJvZ19ndWlkZS9ydGVfZmxv dy5yc3QNCj4gYi9kb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvcnRlX2Zsb3cucnN0DQo+ID4gaW5kZXgg MmVjYzQ4Y2ZmZi4uYTEzMzM4MTlmYyAxMDA2NDQNCj4gPiAtLS0gYS9kb2MvZ3VpZGVzL3Byb2df Z3VpZGUvcnRlX2Zsb3cucnN0DQo+ID4gKysrIGIvZG9jL2d1aWRlcy9wcm9nX2d1aWRlL3J0ZV9m bG93LnJzdA0KPiA+IEBAIC0xMzk4LDYgKzEzOTgsMTQgQEAgTWF0Y2hlcyBhIGVDUFJJIGhlYWRl ci4NCj4gPiAgLSBgYGhkcmBgOiBlQ1BSSSBoZWFkZXIgZGVmaW5pdGlvbiAoYGBydGVfZWNwcmku aGBgKS4NCj4gPiAgLSBEZWZhdWx0IGBgbWFza2BgIG1hdGNoZXMgbm90aGluZywgZm9yIGFsbCBl Q1BSSSBtZXNzYWdlcy4NCj4gPg0KPiA+ICtJdGVtOiBgYENPTk5UUkFDS2BgDQo+ID4gK15eXl5e Xl5eXl5eXl5eXl5eXl4NCj4gPiArDQo+ID4gK01hdGNoZXMgYSBjb25udHJhY2sgc3RhdGUgYWZ0 ZXIgY29ubnRyYWNrIGFjdGlvbi4NCj4gPiArDQo+ID4gKy0gYGBmbGFnc2BgOiBjb25udHJhY2sg cGFja2V0IHN0YXRlIGZsYWdzLg0KPiA+ICstIERlZmF1bHQgYGBtYXNrYGAgbWF0Y2hlcyBhbGwg c3RhdGUgYml0cy4NCj4gPiArDQo+ID4gIEFjdGlvbnMNCj4gPiAgfn5+fn5+fg0KPiA+DQo+ID4g QEAgLTI4NDIsNiArMjg1MCwxMTEgQEAgZm9yIGBgUlRFX0ZMT1dfRklFTERfVkFMVUVgYCBhbmQN Cj4gYGBSVEVfRkxPV19GSUVMRF9QT0lOVEVSYGAgcmVzcGVjdGl2ZWx5Lg0KPiA+ICAgICB8IGBg dmFsdWVgYCAgICAgfCBpbW1lZGlhdGUgdmFsdWUgb3IgYSBwb2ludGVyIHRvIHRoaXMgdmFsdWUN Cj4gfA0KPiA+ICAgICArLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAtLS0tLS0tLS0tLS0tKw0KPiA+DQo+ID4gK0FjdGlvbjog YGBDT05OVFJBQ0tgYA0KPiA+ICteXl5eXl5eXl5eXl5eXl5eXl5eXl4NCj4gPiArDQo+ID4gK0Ny ZWF0ZSBhIGNvbm50cmFjayAoY29ubmVjdGlvbiB0cmFja2luZykgY29udGV4dCB3aXRoIHRoZQ0K PiBwcm92aWRlZCBpbmZvcm1hdGlvbi4NCj4gPiArDQo+ID4gK0luIHN0YXRlZnVsIHNlc3Npb24g bGlrZSBUQ1AsIHRoZSBjb25udHJhY2sgYWN0aW9uIHByb3ZpZGVzIHRoZQ0KPiBhYmlsaXR5IHRv DQo+ID4gK2V4YW1pbmUgZXZlcnkgcGFja2V0IG9mIHRoaXMgY29ubmVjdGlvbiBhbmQgYXNzb2Np YXRlIHRoZSBzdGF0ZQ0KPiB0byBldmVyeQ0KPiA+ICtwYWNrZXQuIEl0IHdpbGwgaGVscCB0byBy ZWFsaXplIHRoZSBzdGF0ZWZ1bCBvZmZsb2FkaW5nIHdpdGgNCj4gbGl0dGxlIHNvZnR3YXJlDQo+ IHMvc3RhdGVmdWwgb2ZmbG9hZGluZy9zdGF0ZWZ1bCBvZmZsb2FkIG9mIGNvbm5lY3Rpb25zDQo+ IA0KPiA+ICtwYXJ0aWNpcGF0aW9uLiBGb3IgZXhhbXBsZSwgb25seSB0aGUgY29udHJvbCBwYWNr ZXRzIGxpa2UgU1lOIC8NCj4gRklOIG9yIHBhY2tldHMNCj4gPiArd2l0aCBpbnZhbGlkIHN0YXRl IHNob3VsZCBiZSBoYW5kbGVkIGJ5IHRoZSBzb2Z0d2FyZS4NCj4gcy9pbnZhbGlkIHN0YXRlIHNo b3VsZCBiZSBoYW5kbGVkIGJ5IHRoZSBzb2Z0d2FyZS9pbnZhbGlkIHN0YXRlIG1heQ0KPiBiZQ0K PiBoYW5kbGVkIGJ5IHRoZSBzb2Z0d2FyZSB3aGlsZSB0aGUgcmVzdCBvZiB0aGUgY29udHJvbCBm cmFtZXMgbWF5IGJlDQo+IGhhbmRsZWQgaW4gaGFyZHdhcmUuDQo+IA0KDQpJIHVwZGF0ZWQgdGhp cyBwYXJ0LCBwbGVhc2UgdGFrZSBhIHJldmlldy4NCkluIGdlbmVyYWwsIHRoZSBjb250cm9sIHBh Y2tldHMgY291bGQgYmUgaGFuZGxlZCBieSBIVyBhbmQgU1cgY291bGQgZ2V0DQphIHN0YXRlIGNo YW5nZSBzdGF0ZSBvZiB0aGUgcGFja2V0LiBUaGUgU1cgY291bGQgYWxzbyBoYW5kbGUgdGhlIGNv bnRyb2wNCnBhY2tldCBpZiB0aGVyZSBpcyBhIGZsb3cgcnVsZSBmb3IgdGhlIHN0YXRlIGNoYW5n ZS4NCg0KPiA+ICsNCj4gPiArQSBjb25udHJhY2sgY29udGV4dCBzaG91bGQgYmUgY3JlYXRlZCB2 aWENCj4gYGBydGVfZmxvd19hY3Rpb25faGFuZGxlX2NyZWF0ZSgpYGANCj4gPiArYmVmb3JlIHVz aW5nLiBUaGVuIHRoZSBoYW5kbGUgd2l0aCBgYElORElSRUNUYGAgdHlwZSBpcyB1c2VkIGZvcg0K PiBhIGZsb3cgcnVsZQ0KPiA+ICtjcmVhdGlvbi4gSWYgYSBmbG93IHJ1bGUgd2l0aCBhbiBvcHBv c2l0ZSBkaXJlY3Rpb24gbmVlZHMgdG8gYmUNCj4gY3JlYXRlZCwgdGhlDQo+ID4gK2BgcnRlX2Zs b3dfYWN0aW9uX2hhbmRsZV91cGRhdGUoKWBgIHNob3VsZCBiZSB1c2VkIHRvIG1vZGlmeSB0aGUN Cj4gZGlyZWN0aW9uLg0KPiA+ICsNCj4gPiArTm90IGFsbCB0aGUgZmllbGRzIG9mIHRoZSBgYHN0 cnVjdCBydGVfZmxvd19hY3Rpb25fY29ubnRyYWNrYGANCj4gd2lsbCBiZSB1c2VkDQo+ID4gK2Zv ciBhIGNvbm50cmFjayBjb250ZXh0IGNyZWF0aW5nLCBkZXBlbmRpbmcgb24gdGhlIEhXLg0KPiBz L2NvbnRleHQgY3JlYXRpbmcvY29udGV4dCBjcmVhdGlvbi4NCj4gcy9kZXBlbmRpbmcgb24gdGhl IEhXLi9UaGlzIGNhcGFiaWxpdHkgd2lsbCBkZXBlbmQgb24gdGhlIHVuZGVybHlpbmcNCj4gaGFy ZHdhcmUNCj4gDQo+ID4gK1RoZSBgYHN0cnVjdCBydGVfZmxvd19tb2RpZnlfY29ubnRyYWNrYGAg c2hvdWxkIGJlIHVzZWQgZm9yIGFuDQo+IHVwZGF0aW5nLg0KPiA+ICsNCj4gPiArVGhlIGN1cnJl bnQgY29ubnRyYWNrIGNvbnRleHQgaW5mb3JtYXRpb24gY291bGQgYmUgcXVlcmllZCB2aWENCj4g dGhlDQo+ID4gK2BgcnRlX2Zsb3dfYWN0aW9uX2hhbmRsZV9xdWVyeSgpYGAgaW50ZXJmYWNlLg0K PiA+ICsNCj4gPiArLi4gX3RhYmxlX3J0ZV9mbG93X2FjdGlvbl9jb25udHJhY2s6DQo+ID4gKw0K PiA+ICsuLiB0YWJsZTo6IENPTk5UUkFDSw0KPiA+ICsNCj4gPiArICAgKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKw0KPiA+ICsgICB8IEZpZWxkICAgICAgICAgICAgICAgICAg ICB8IFZhbHVlDQo+IHwNCj4gPiArDQo+ICs9PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQo+ID09PT09PT09PT09PT09PT09 PT09PSsNCj4gPiArICAgfCBgYHBlZXJfcG9ydGBgICAgICAgICAgICAgfCBwZWVyIHBvcnQgbnVt YmVyDQo+IHwNCj4gPiArICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKw0K PiA+ICsgICB8IGBgaXNfb3JpZ2luYWxfZGlyYGAgICAgICB8IGRpcmVjdGlvbiBvZiB0aGlzIGNv bm5lY3Rpb24gZm9yDQo+IGZsb3cgcnVsZSBjcmVhdGluZyAgICAgICAgIHwNCj4gcy9mb3IgZmxv dyBydWxlIGNyZWF0aW5nL2ZvciBjcmVhdGluZyBmbG93IHJ1bGUNCj4gDQo+IA0KPiA+ICsgICAr LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQ0KPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rDQo+ID4gKyAgIHwgYGBlbmFibGVg YCAgICAgICAgICAgICAgIHwgZW5hYmxlIHRoZSBjb25udHJhY2sgY29udGV4dA0KPiB8DQo+ID4g KyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tDQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsNCj4gPiArICAgfCBgYGxp dmVfY29ubmVjdGlvbmBgICAgICAgfCBvbmUgYWNrIHdhcyBzZWVuIGZvciB0aGlzDQo+IGNvbm5l Y3Rpb24gICAgICAgICAgICAgICAgICAgICAgICB8DQo+ID4gKyAgICstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IC0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSsNCj4gPiArICAgfCBgYHNlbGVjdGl2ZV9hY2tgYCAgICAgICAg fCBTQUNLIGVuYWJsZWQNCj4gfA0KPiA+ICsgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rDQo+ID4gKyAgIHwgYGBjaGFsbGVuZ2VfYWNrX3Bhc3NlZGBgIHwgYSBjaGFsbGVu Z2UgYWNrIGhhcyBwYXNzZWQNCj4gfA0KPiA+ICsgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rDQo+ID4gKyAgIHwgYGBsYXN0X2RpcmVjdGlvbmBgICAgICAgIHwgZGlyZWN0 aW9uIG9mIHRoZSBsYXN0IHBhc3NlZA0KPiBwYWNrZXQgICAgICAgICAgICAgICAgICAgICAgICAg fA0KPiA+ICsgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQ0KPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rDQo+ID4gKyAg IHwgYGBsaWJlcmFsX21vZGVgYCAgICAgICAgIHwgb25seSByZXBvcnQgc3RhdGUgY2hhbmdlDQo+ IHwNCj4gPiArICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0NCj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKw0KPiA+ICsg ICB8IGBgc3RhdGVgYCAgICAgICAgICAgICAgICB8IGN1cnJlbnQgc3RhdGUNCj4gfA0KPiA+ICsg ICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQ0KPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rDQo+ID4gKyAgIHwgYGBtYXhf YWNrX3dpbmRvd2BgICAgICAgIHwgbWF4aW1hbCB3aW5kb3cgc2NhbGluZyBmYWN0b3INCj4gfA0K PiA+ICsgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQ0KPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rDQo+ID4gKyAgIHwg YGByZXRyYW5zbWlzc2lvbl9saW1pdGBgIHwgbWF4aW1hbCByZXRyYW5zbWlzc2lvbiB0aW1lcw0K PiB8DQo+IHMvdGltZXMvbGltaXQNCj4gDQo+ID4gKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSsNCj4gPiArICAgfCBgYG9yaWdpbmFsX2RpcmBgICAgICAgICAgfCBUQ1Ag cGFyYW1ldGVycyBvZiB0aGUgb3JpZ2luYWwNCj4gZGlyZWN0aW9uICAgICAgICAgICAgICAgICAg ICB8DQo+ID4gKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tDQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsNCj4gPiAr ICAgfCBgYHJlcGx5X2RpcmBgICAgICAgICAgICAgfCBUQ1AgcGFyYW1ldGVycyBvZiB0aGUgcmVw bHkNCj4gZGlyZWN0aW9uICAgICAgICAgICAgICAgICAgICAgICB8DQo+ID4gKyAgICstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsNCj4gPiArICAgfCBgYGxhc3Rfd2luZG93YGAg ICAgICAgICAgfCB3aW5kb3cgdmFsdWUgb2YgdGhlIGxhc3QgcGFzc2VkDQo+IHBhY2tldCAgICAg ICAgICAgICAgICAgICAgICB8DQo+IHMvdmFsdWUvc2l6ZQ0KDQpEb25lDQoNCj4gDQo+ID4gKyAg ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tDQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsNCj4gPiArICAgfCBgYGxhc3Rf c2VxYGAgICAgICAgICAgICAgfCBzZXF1ZW5jZSB2YWx1ZSBvZiB0aGUgbGFzdCBwYXNzZWQNCj4g cGFja2V0ICAgICAgICAgICAgICAgICAgICB8DQo+IHMvdmFsdWUvbnVtYmVyDQoNCkFncmVlLCB0 aGFua3MNCg0KPiANCj4gPiArICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Kw0KPiA+ICsgICB8IGBgbGFzdF9hY2tgYCAgICAgICAgICAgICB8IGFja25vd2xlZGdlbWVudCB2 YWx1ZSB0aGUgbGFzdA0KPiBwYXNzZWQgcGFja2V0ICAgICAgICAgICAgICAgIHwNCj4gcy92YWx1 ZS9udW1iZXINCg0KVGhhbmtzDQoNCj4gDQo+ID4gKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSsNCj4gPiArICAgfCBgYGxhc3RfZW5kYGAgICAgICAgICAgICAgfCBzdW0g YWNrbm93bGVkZ2VtZW50IGFuZCBsZW5ndGgNCj4gdmFsdWUgdGhlIGxhc3QgcGFzc2VkIHBhY2tl dCB8DQo+IHN1bSBvZiBhY2sgbnVtYmVyIGFuZCBsZW5ndGggb2YgdGhlIGxhc3QgcGFzc2VkIHBh Y2tldA0KPiBvcg0KPiBzdW0gb2YgYWNrbm93bGVkZ2VtZW50IG51bWJlciBhbmQgbGVuZ3RoIG9m IHRoZSBsYXN0IHBhc3NlZCBwYWNrZXQNCj4gDQoNClVwZGF0ZWQsIHRoYW5rcy4gQWxzbyB1cGRh dGUgdGhlIHR5cG8NCg0KPiA+ICsgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rDQo+ID4gKw0KPiA+ICsuLiBfdGFibGVfcnRlX2Zsb3dfdGNwX2Rpcl9wYXJhbToNCj4gPiAr DQo+ID4gKy4uIHRhYmxlOjogY29uZmlndXJhdGlvbiBwYXJhbWV0ZXJzIGZvciBlYWNoIGRpcmVj dGlvbg0KPiA+ICsNCj4gPiArICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gLS0tLS0tLS0tLS0tLS0tLS0tKw0KPiA+ICsg ICB8IEZpZWxkICAgICAgICAgICAgICAgfCBWYWx1ZQ0KPiB8DQo+ID4gKw0KPiArPT09PT09PT09 PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQ0KPiA9PT09PT09PT09PT0rDQo+ID4gKyAgIHwgYGBzY2FsZWBgICAgICAgICAgICB8IFRDUCB3 aW5kb3cgc2NhbGluZyBmYWN0b3INCj4gfA0KPiA+ICsgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAtLS0tLS0tLS0tLS0t LS0tLS0rDQo+ID4gKyAgIHwgYGBjbG9zZV9pbml0aWF0ZWRgYCB8IEZJTiBzZW50IGZyb20gdGhp cyBkaXJlY3Rpb24NCj4gfA0KPiA+ICsgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAtLS0tLS0tLS0tLS0tLS0tLS0rDQo+ ID4gKyAgIHwgYGBsYXN0X2Fja19zZWVuYGAgICB8IGFuIEFDSyBwYWNrZXQgcmVjZWl2ZWQNCj4g fA0KPiA+ICsgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQ0KPiAtLS0tLS0tLS0tLS0tLS0tLS0rDQo+ID4gKyAgIHwgYGBkYXRh X3VuYWNrZWRgYCAgICB8IHVuYWNrbm93bGVkZ2VkIGRhdGEgZm9yIHBhY2tldHMgZnJvbQ0KPiB0 aGlzIGRpcmVjdGlvbiAgICAgfA0KPiA+ICsgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAtLS0tLS0tLS0tLS0tLS0tLS0r DQo+ID4gKyAgIHwgYGBzZW50X2VuZGBgICAgICAgICB8IG1heHtzZXEgKyBsZW59IHNlZW4gaW4g c2VudCBwYWNrZXRzDQo+IHwNCj4gPiArICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gLS0tLS0tLS0tLS0tLS0tLS0tKw0K PiA+ICsgICB8IGBgcmVwbHlfZW5kYGAgICAgICAgfCBtYXh7c2FjayArIG1heHt3aW4sIDF9fSBz ZWVuIGluIHJlcGx5DQo+IHBhY2tldHMgICAgICAgICAgIHwNCj4gPiArICAgKy0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gLS0t LS0tLS0tLS0tLS0tLS0tKw0KPiA+ICsgICB8IGBgbWF4X3dpbmBgICAgICAgICAgfCBtYXh7bWF4 e3dpbiwgMX19ICsge3NhY2sgLSBhY2t9IHNlZW4NCj4gaW4gc2VudCBwYWNrZXRzICAgIHwNCj4g PiArICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0NCj4gLS0tLS0tLS0tLS0tLS0tLS0tKw0KPiA+ICsgICB8IGBgbWF4X2Fja2Bg ICAgICAgICAgfCBtYXh7YWNrfSArIHNlZW4gaW4gc2VudCBwYWNrZXRzDQo+IHwNCj4gPiArICAg Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0NCj4gLS0tLS0tLS0tLS0tLS0tLS0tKw0KPiA+ICsNCj4gPiArLi4gX3RhYmxlX3J0ZV9m bG93X21vZGlmeV9jb25udHJhY2s6DQo+ID4gKw0KPiA+ICsuLiB0YWJsZTo6IHVwZGF0ZSBhIGNv bm50cmFjayBjb250ZXh0DQo+ID4gKw0KPiA+ICsgICArLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rDQo+ID4gKyAgIHwgRmllbGQgICAgICAg ICAgfCBWYWx1ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwNCj4gPiArICAgKz09 PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kw0K PiA+ICsgICB8IGBgbmV3X2N0YGAgICAgIHwgbmV3IGNvbm50cmFjayBpbmZvcm1hdGlvbiAgICAg ICAgICAgICB8DQo+ID4gKyAgICstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSsNCj4gPiArICAgfCBgYGRpcmVjdGlvbmBgICB8IGRpcmVjdGlv biB3aWxsIGJlIHVwZGF0ZWQgICAgICAgICAgICAgfA0KPiA+ICsgICArLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rDQo+ID4gKyAgIHwgYGBz dGF0ZWBgICAgICAgfCBvdGhlciBmaWVsZHMgZXhjZXB0IHdpbGwgYmUgdXBkYXRlZCAgIHwNCj4g ZXhjZXB0IHdoYXQ/DQo+IGRpcmVjdGlvbj8/DQoNClllcywgbWlzc2VkIHRoaXMgd29yZCwgdXBk YXRlZC4NCg0KPiANCj4gPiArICAgKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKw0KPiA+ICsgICB8IGBgcmVzZXJ2ZWRgYCAgIHwgcmVzZXJ2 ZWQgYml0cyAgICAgICAgICAgICAgICAgICAgICAgICB8DQo+ID4gKyAgICstLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsNCj4gPiArDQo+ID4g IE5lZ2F0aXZlIHR5cGVzDQo+ID4gIH5+fn5+fn5+fn5+fn5+DQo+ID4NCj4gPiBkaWZmIC0tZ2l0 IGEvZG9jL2d1aWRlcy9yZWxfbm90ZXMvcmVsZWFzZV8yMV8wNS5yc3QNCj4gYi9kb2MvZ3VpZGVz L3JlbF9ub3Rlcy9yZWxlYXNlXzIxXzA1LnJzdA0KPiA+IGluZGV4IGU2Zjk5MzUwYWYuLjgyNGVi NzI5ODEgMTAwNjQ0DQo+ID4gLS0tIGEvZG9jL2d1aWRlcy9yZWxfbm90ZXMvcmVsZWFzZV8yMV8w NS5yc3QNCj4gPiArKysgYi9kb2MvZ3VpZGVzL3JlbF9ub3Rlcy9yZWxlYXNlXzIxXzA1LnJzdA0K PiA+IEBAIC0xODMsNiArMTgzLDEwIEBAIE5ldyBGZWF0dXJlcw0KPiA+ICAgICAgdGhlIGV2ZW50 cyBhY3Jvc3MgbXVsdGlwbGUgc3RhZ2VzLg0KPiA+ICAgICogVGhpcyBhbHNvIHJlZHVjZWQgdGhl IHNjaGVkdWxpbmcgb3ZlcmhlYWQgb24gYSBldmVudCBkZXZpY2UuDQo+ID4NCj4gPiArKiAqKkFk ZGVkIGNvbm50cmFjayBzdXBwb3J0IGZvciBydGVfZmxvdy4qKg0KPiA+ICsNCj4gPiArICAqIEFk ZGVkIGNvbm50cmFjayBhY3Rpb24gYW5kIGl0ZW0gZm9yIHN0YXRlZnVsIG9mZmxvYWRpbmcuDQo+ ID4gKw0KPiA+ICAqICoqVXBkYXRlZCB0ZXN0cG1kLioqDQo+ID4NCj4gPiAgICAqIEFkZGVkIGEg Y29tbWFuZCBsaW5lIG9wdGlvbiB0byBjb25maWd1cmUgZm9yY2VkIHNwZWVkIGZvcg0KPiBFdGhl cm5ldCBwb3J0Lg0KPiA+IGRpZmYgLS1naXQgYS9kb2MvZ3VpZGVzL3Rlc3RwbWRfYXBwX3VnL3Rl c3RwbWRfZnVuY3MucnN0DQo+IGIvZG9jL2d1aWRlcy90ZXN0cG1kX2FwcF91Zy90ZXN0cG1kX2Z1 bmNzLnJzdA0KPiA+IGluZGV4IDFmYTZlMjAwMGUuLjRjMDI5Nzc2YWEgMTAwNjQ0DQo+ID4gLS0t IGEvZG9jL2d1aWRlcy90ZXN0cG1kX2FwcF91Zy90ZXN0cG1kX2Z1bmNzLnJzdA0KPiA+ICsrKyBi L2RvYy9ndWlkZXMvdGVzdHBtZF9hcHBfdWcvdGVzdHBtZF9mdW5jcy5yc3QNCj4gPiBAQCAtMzc5 MSw2ICszNzkxLDggQEAgVGhpcyBzZWN0aW9uIGxpc3RzIHN1cHBvcnRlZCBwYXR0ZXJuIGl0ZW1z DQo+IGFuZCB0aGVpciBhdHRyaWJ1dGVzLCBpZiBhbnkuDQo+ID4gICAgLSBgYHNfZmllbGQge3Vu c2lnbmVkfWBgOiBTIGZpZWxkLg0KPiA+ICAgIC0gYGBzZWlkIHt1bnNpZ25lZH1gYDogc2Vzc2lv biBlbmRwb2ludCBpZGVudGlmaWVyLg0KPiA+DQo+ID4gKy0gYGBjb25udHJhY2tgYDogbWF0Y2gg Y29ubnRyYWNrIHN0YXRlLg0KPiA+ICsNCj4gPiAgQWN0aW9ucyBsaXN0DQo+ID4gIF5eXl5eXl5e Xl5eXg0KPiA+DQo+ID4gQEAgLTQ5MjUsNiArNDkyNywzOSBAQCBOVkdSRSBlbmNhcHN1bGF0aW9u IGhlYWRlciBhbmQgc2VudCB0byBwb3J0DQo+IGlkIDAuDQo+ID4gICB0ZXN0cG1kPiBmbG93IGNy ZWF0ZSAwIGluZ3Jlc3MgdHJhbnNmZXIgcGF0dGVybiBldGggLyBlbmQNCj4gYWN0aW9ucw0KPiA+ ICAgICAgICAgIHNhbXBsZSByYXRpbyAxIGluZGV4IDAgIC8gcG9ydF9pZCBpZCAyIC8gZW5kDQo+ ID4NCj4gPiArU2FtcGxlIGNvbm50cmFjayBydWxlcw0KPiA+ICt+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+DQo+ID4gKw0KPiA+ICtDb25udHJhY2sgcnVsZXMgY2FuIGJlIHNldCBieSB0aGUgZm9sbG93 aW5nIGNvbW1hbmRzDQo+ID4gKw0KPiA+ICtOZWVkIHRvIGNvbnN0cnVjdCB0aGUgY29ubmVjdGlv biBjb250ZXh0IHdpdGggcHJvdmlkZWQNCj4gaW5mb3JtYXRpb24uDQo+ID4gK0luIHRoZSBmaXJz dCB0YWJsZSwgY3JlYXRlIGEgZmxvdyBydWxlIGJ5IHVzaW5nIGNvbm50cmFjayBhY3Rpb24NCj4g YW5kIGp1bXAgdG8NCj4gPiArdGhlIG5leHQgdGFibGUuIEluIHRoZSBuZXh0IHRhYmxlLCBjcmVh dGUgYSBydWxlIHRvIGNoZWNrIHRoZQ0KPiBzdGF0ZS4NCj4gPiArDQo+ID4gKzo6DQo+ID4gKw0K PiA+ICsgdGVzdHBtZD4gc2V0IGNvbm50cmFjayBjb20gcGVlciAxIGlzX29yaWcgMSBlbmFibGUg MSBsaXZlIDEgc2Fjaw0KPiAxIGNhY2sgMA0KPiA+ICsgICAgICAgIGxhc3RfZGlyIDAgbGliZXJh bCAwIHN0YXRlIDEgbWF4X2Fja193aW4gNyByX2xpbSA1DQo+IGxhc3Rfd2luIDUxMA0KPiA+ICsg ICAgICAgIGxhc3Rfc2VxIDI2MzI5ODczNzkgbGFzdF9hY2sgMjUzMjQ4MDk2NyBsYXN0X2VuZA0K PiAyNjMyOTg3Mzc5DQo+ID4gKyAgICAgICAgbGFzdF9pbmRleCAweDgNCj4gPiArIHRlc3RwbWQ+ IHNldCBjb25udHJhY2sgb3JpZyBzY2FsZSA3IGZpbiAwIGFja2VkIDEgdW5hY2tfZGF0YSAwDQo+ ID4gKyAgICAgICAgc2VudF9lbmQgMjYzMjk4NzM3OSByZXBseV9lbmQgMjYzMzAxNjMzOSBtYXhf d2luIDI4OTYwDQo+ID4gKyAgICAgICAgbWF4X2FjayAyNjMyOTg3Mzc5DQo+ID4gKyB0ZXN0cG1k PiBzZXQgY29ubnRyYWNrIHJwbHkgc2NhbGUgNyBmaW4gMCBhY2tlZCAxIHVuYWNrX2RhdGEgMA0K PiA+ICsgICAgICAgIHNlbnRfZW5kIDI1MzI0ODA5NjcgcmVwbHlfZW5kIDI1MzI1NDYyNDcgbWF4 X3dpbiA2NTI4MA0KPiA+ICsgICAgICAgIG1heF9hY2sgMjUzMjQ4MDk2Nw0KPiA+ICsgdGVzdHBt ZD4gZmxvdyBpbmRpcmVjdF9hY3Rpb24gMCBjcmVhdGUgaW5ncmVzcyBhY3Rpb24gY29ubnRyYWNr DQo+IC8gZW5kDQo+ID4gKyB0ZXN0cG1kPiBmbG93IGNyZWF0ZSAwIGdyb3VwIDMgaW5ncmVzcyBw YXR0ZXJuIGV0aCAvIGlwdjQgLyB0Y3ANCj4gLyBlbmQgYWN0aW9ucyBpbmRpcmVjdCAwIC8ganVt cCBncm91cCA1IC8gZW5kDQo+ID4gKyB0ZXN0cG1kPiBmbG93IGNyZWF0ZSAwIGdyb3VwIDUgaW5n cmVzcyBwYXR0ZXJuIGV0aCAvIGlwdjQgLyB0Y3ANCj4gLyBjb25udHJhY2sgaXMgMSAvIGVuZCBh Y3Rpb25zIHF1ZXVlIGluZGV4IDUgLyBlbmQNCj4gPiArDQo+ID4gK0NvbnN0cnVjdCB0aGUgY29u bnRyYWNrIGFnYWluIHdpdGggb25seSAiaXNfb3JpZyIgc2V0IHRvIDAgKG90aGVyDQo+IGZpZWxk cyBhcmUNCj4gPiAraWdub3JlZCksIHRoZW4gdXNlICJ1cGRhdGUiIGludGVyZmFjZSB0byB1cGRh dGUgdGhlIGRpcmVjdGlvbi4NCj4gQ3JlYXRlIGZsb3cNCj4gcy91c2UvdXNlIHRoZQ0KPiANCj4g PiArcnVsZXMgbGlrZSBhYm92ZSBmb3IgdGhlIHBlZXIgcG9ydC4NCj4gQnkgcGVlciwgZG8geW91 IG1lYW4gcGVlciBzeXN0ZW0/IE9yIHJlbW90ZS9kc3QgcG9ydCBvZiB0aGUgVENQDQo+IGNvbm5l Y3Rpb24/DQoNClRoZSBwZWVyIHBvcnQgb2YgdGhlIGNvbm50cmFjay4gT25lIGNvbm50cmFjayBj b250ZXh0IHNob3VsZCBvbmx5IGJlIHVzZWQgZm9yDQphIGJpLWRpciB0cmFmZmljIGZyb20gdG8g c2FtZSBldGhkZXYgcG9ydCBvciBiZXR3ZWVuIGEgcGFpciBvZiBldGhkZXYgcG9ydHMuDQoNCj4g DQo+ID4gKw0KPiA+ICs6Og0KPiA+ICsNCj4gPiArIHRlc3RwbWQ+IGZsb3cgaW5kaXJlY3RfYWN0 aW9uIDAgdXBkYXRlIDAgYWN0aW9uIGNvbm50cmFja191cGRhdGUNCj4gZGlyIC8gZW5kDQo+ID4g Kw0KPiA+ICBCUEYgRnVuY3Rpb25zDQo+ID4gIC0tLS0tLS0tLS0tLS0tDQo+ID4NCj4gPiAtLQ0K PiA+IDIuMTkuMC53aW5kb3dzLjENCj4gPg0K