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 C9FAEA0C46 for ; Fri, 18 Jun 2021 13:46:48 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9D8ED40142; Fri, 18 Jun 2021 13:46:48 +0200 (CEST) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by mails.dpdk.org (Postfix) with ESMTP id 2C6A540142 for ; Fri, 18 Jun 2021 13:46:46 +0200 (CEST) IronPort-SDR: vsbczRAigyAMXcklCe5j71fhu+njvQYz3bWwrcnSpDD8ZccJm8Jcs62kqD0BGUGFenjQBqR1dF lhEWpzim+6ZA== X-IronPort-AV: E=McAfee;i="6200,9189,10018"; a="193852499" X-IronPort-AV: E=Sophos;i="5.83,283,1616482800"; d="scan'208";a="193852499" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jun 2021 04:46:45 -0700 IronPort-SDR: orXBJDXnKAjsnuOoRi+9pzfEW5ISP3s1nUqR+MHU8sXMvVfhHl30FE/xFZf+G9o8NLX7wNFfZr YiiL2unxLSVA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,283,1616482800"; d="scan'208";a="443548944" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orsmga007.jf.intel.com with ESMTP; 18 Jun 2021 04:46:45 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Fri, 18 Jun 2021 04:46:44 -0700 Received: from fmsmsx609.amr.corp.intel.com (10.18.126.89) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Fri, 18 Jun 2021 04:46:44 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx609.amr.corp.intel.com (10.18.126.89) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4 via Frontend Transport; Fri, 18 Jun 2021 04:46:44 -0700 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.173) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.4; Fri, 18 Jun 2021 04:46:44 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bGX36lDFb7mt8OBTDhxZWMBXl1YJzpZLqWVour5eE1gtPXfOxijkTdf0ZIgjQtT4ACiLcGYCCkLZWyV/XwBjTUbFuNB1erdnxP9/CvScO9KcWFnMJXo45l0Aso1z59ODjESshwvx1/q2iu/2s4L3IKhEYPuh4xJ/v6vQoGzd2pb1QfIhf9sfN439mSyfLUkTqVOmFOD5CnfSRzXVvQZnZICIwiCZj8iMjJZYbQdlFEVN2hELlFq8rwDwNz7dbuKk6PdyAxIxLllf+UVgpY/WC+pLHcjA2RJHXIofuHFdvWKDjTUHkdqgP9NLrrEs3vDsFKLFOwOvNHmiW66sUfdH4w== 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=L5+/J40ubfs5G6aEcPv5dWW9GcYrCpC1d7qi5gSzYOU=; b=DAG/+YCTJm110WD3/xuVeftQzRXNPBgvtfaeiEkKb9kcFRymGtroSHex9kZ9DWtrNHc9S9gU99GaQpyB2xzz+vhXrQ30u8lZKn0Q5J802z9efeE4crdi4VF7HnY6kYogF1A/ClDV02V92YdMusuXnqd8VENXaATL3OumB2R/Qg1lhfqCP1tjJe4nA985eQAqY8N54WsY0/e3kFl5XUhuF1/8ypJq7IXuj7J29u7S5qkIF80IWgQBIsrEHzSN4EB4AlmhxBlTQgRUPQ84V5tCzAKARmv9zeCiJ3fyFXDImStGn+3/bRHeyw7N9C4HmwfjUs1DhNGaqABG09D9iwH/Rw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=L5+/J40ubfs5G6aEcPv5dWW9GcYrCpC1d7qi5gSzYOU=; b=dY1eNrLKhXZWUX2b9yNz3LsYJe7ZR4WESNnwtGYmXFimed8ZPxC7tNeif6e1wz0VSszt+2585Xav2rGkglk8VrdTD8oB+ENcNqXo2uV+G1JFDjiO3IRmkRWZraqt9FuGL7GiR9CtBwF/7DGnu8AKl/Pv8hYmAhFXt5KW/HzDIXs= Received: from BN8PR11MB3795.namprd11.prod.outlook.com (2603:10b6:408:82::31) by BN7PR11MB2676.namprd11.prod.outlook.com (2603:10b6:406:ac::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4195.20; Fri, 18 Jun 2021 11:46:41 +0000 Received: from BN8PR11MB3795.namprd11.prod.outlook.com ([fe80::8807:6661:e425:102]) by BN8PR11MB3795.namprd11.prod.outlook.com ([fe80::8807:6661:e425:102%7]) with mapi id 15.20.4242.021; Fri, 18 Jun 2021 11:46:41 +0000 From: "Wang, Haiyue" To: Kevin Traynor , "Xueming(Steven) Li" , Luca Boccassi , "stable@dpdk.org" CC: NBU-Contact-Thomas Monjalon , "christian.ehrhardt@canonical.com" , "Zhang, Qi Z" , "Fu, Qi" Thread-Topic: [dpdk-stable] [PATCH 20.11 v2 00/18] Backport the new VLAN design for Intel ice PMD Thread-Index: AQHXXpSS89wjvKD9LEWA6ZaxGO5s7KsW0J2AgACbVsCAAINEAIAAFAQAgAEPWaCAAIUpAIAAFVJA Date: Fri, 18 Jun 2021 11:46:41 +0000 Message-ID: References: <20210611065825.47678-1-haiyue.wang@intel.com> <20210611071531.48411-1-haiyue.wang@intel.com> <30bf553b-032c-d992-487f-794cbe1816fe@redhat.com> <89fa4744-6ae6-7fe4-c9fb-8e5dbff2cfd8@redhat.com> In-Reply-To: <89fa4744-6ae6-7fe4-c9fb-8e5dbff2cfd8@redhat.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.0.76 authentication-results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.198.142.8] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: b074d4c2-97da-4a34-bd40-08d9324ebd5a x-ms-traffictypediagnostic: BN7PR11MB2676: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: lZ2LKSrZsbN0fy1mm5GF4T56mYCOpDd2J2UIjYSQMcVea+zQcGZKIgEnhQg8LGv4NjmXf2RsxIn5L1HKmkah0UcuYVCE53PGcSPFUEfzm9RaczzBJtrSBVEE/zQhi5C5tXJgGMvoTJmri2mOyVyII6bOaF9pe7tfMYE2tCXjyUkeNGYhcN4VqBbyc5avHOMJdc3LW7lrfes9uga8B5QKiC2FTs++/Bl4h5ma6KiZGHupSM/lV+kNDhmIFH+NvzEcYVaoSK8FQ4RLq2MsFtfMuEKNT+YhMHChsI0GhJFDaPeAml7mWmzMXF1R0fQwaBjPMe97uOrgSMWL5Ra3+Zh/KAp+qMKU1TnCSajnno+DavhTUzq/DcHy32EUj/w030pCG8ufZzfZGBhVPkuAJzOVnybb2zOWV4icRe/PluFLFr9I5bfEoEhhtCuSUFYREgt9xV3GuV3poT4yn7uuk7sDeQIgCebZt7PnNTxE9GM3L+AVCaqKLtMrRi7iqPuC+4VfEyOEznFJgCTY9gbWbEQ6d/bmjxDZ9f8ftqu/sb9oS4BQl6ZwVK4kNEOuAEtyAoecVxjxE4hgwIzn0s/7h+nrWdePYgYBAGjtagw9HOq3gb0uBACWGyvUHh6/NErQWKzGfrldbUNMNdF8hsh9n5SGysfXsKQKzUFx5cveYATZpLJWPw0V8dsZ9BTaJ4d6CyMgbE41fiP+8hRDPMtlbl3UtoUu2aP3vSYkwr9wo4J+Yuk= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN8PR11MB3795.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(396003)(136003)(346002)(366004)(376002)(39850400004)(71200400001)(86362001)(76116006)(316002)(66556008)(30864003)(55016002)(4326008)(186003)(5660300002)(7696005)(52536014)(66946007)(107886003)(64756008)(6506007)(26005)(66476007)(38100700002)(53546011)(122000001)(478600001)(54906003)(83380400001)(33656002)(966005)(8936002)(9686003)(110136005)(66446008)(2906002)(8676002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?ZFBPMEpxbHZlMGRUc0Fla2pIT1ptcld6Ym5YLzFZNUxhTFlxU09BUHhjY0tS?= =?utf-8?B?SXpTWXFtSzJUcUN1bHk4QlQzU1N5eU1FSUltc2MyUGlxRGdhbEVFRXpMRWE2?= =?utf-8?B?RmJNT0g3akNadjZaZWUweTVDOGppcnpVZkdyYWZ0S2RUeXZCT1Q0SHN1UC85?= =?utf-8?B?emVCeEhibjNlZ0MvQ0l0SUM1akNuWFBvbm5qOW9oRnFkV1oydVhFZFFVYVVZ?= =?utf-8?B?akFFVVJ6YU1ia2doSjBiaW83d1kzc2RDaXRLdzFRcGkwc1RpWWZoV0JxZE91?= =?utf-8?B?dEF2cWRHT25mbU52ZFAvR3I4eWhlVmNsWENQcjRpakErclpTaFM4OGNQZ3I1?= =?utf-8?B?SzdHcUJKMzJ3SjNyNVVkZVJmckQxdHdHVmxYQW9SZ0c2MWlDdTRPN1Z3VWY2?= =?utf-8?B?VHhmNStwdGg4QzFSc2RXWWZWWFdyTW1NckJmcG1DNjA3NnkyaWZNRHQ0SHlr?= =?utf-8?B?VzdwY3h5Si9PMjlBRzAwZzh4VEF1QkJha3VmRWpoT0QrdjlaQnYwekFmZG5H?= =?utf-8?B?MzJNd2JuQ2RiRWZGV2YwOTdoTE1jbnMwT1JOb2dCa3N3dFNzSDJuSGNxdFlp?= =?utf-8?B?YlVjbDFveWdaYWttenlOdUxPR2tVN0JjTWtQcURMdFp1Q21vbzlaNmVCMUJP?= =?utf-8?B?SVNuZG5paHJsNG5iZVhmS0lUUVVrbzBtc1p4MUxncU9qNlFWNVBVRGVpSEQ2?= =?utf-8?B?bVovaFFkTXlnRjhVcGhncE03blNyUVF3djZhNWU4MDVVQ3pudnJUM2JlNWZz?= =?utf-8?B?UWJNeU9ialRiUEdhOWNVQWxJcWJTcTBGZjFWMEUvWkJsUW1MSG5Eb3lrc2l4?= =?utf-8?B?VWpNLzIzOU1XcnRrVG15WWdINHU2RGhhdWY5MXdXMTNjUGhid2kxdG9oVkFk?= =?utf-8?B?em14REMzM3lWaVVRRXRNQXhQWDQ2MWdBN1psKzFQZEdaOHJhTUlrdWl5SXBp?= =?utf-8?B?cDZsazE0TFVJWHVSeThWQ01yclUwYnR6THdMUS9CTjNuaTlMRHhBUUdsQngv?= =?utf-8?B?c2JRY3dOVjRmcmU0KzRKU3pnK1ZGNEZ5d1ExZjZyUi9saFdNOXI2VkhSYVNx?= =?utf-8?B?b2JQcStUMFluOUF3NWNVZExjRmtsS0RsS1FDcTEvNHVDbHNFaUd4UElnN1FC?= =?utf-8?B?U3RFRjltSXdBanlndDZ3QzR0ZnJGUlRCZVBxbUhjWmo0OWdjTG1ldDNtZmp4?= =?utf-8?B?VFlMdjhYVXZUcUNVeEV6ZjA0SUdDOHozc0NqUlB0bjJYeTZ2QVowUVR6aGtt?= =?utf-8?B?N3ZJU1VVZjhaOFB5ZXRFNnNFaEc0MUlxaWhVL05LVWF2YS9SbkVoTW5ZUHJ0?= =?utf-8?B?dFdYWGE3d0RqMW5RUGtIVkdpMzlHTEZuQXNjUnBCd3ZIcDNKUXNyWnJldkQx?= =?utf-8?B?SnpTVzlHMDdJU2hldVdNY2VUQWFTYzZKTXdiRWt3SmF4c0dya1N0YWI3WWsr?= =?utf-8?B?ajNJb3dsWXIrWTlwbXVoY0ppWVViN3JNSG1zTnlLQkJYUFB1cEdEZDNUTG5L?= =?utf-8?B?M3BtM0FrNWJYR3NrNHYvRkRQR1dPRFZtTnNxWXp5d2hVdHd3ZDlSWmdCeFo3?= =?utf-8?B?WFB1bUQ0UlI0TTRBcklucUVGOGxYZithMytkK2ZkTXJXd3hLelVoOHNWNldS?= =?utf-8?B?RXBjSlB2N2FvRE00L1o2MHdKK2VBWCtjckw2c3hlemJqalNEUThOWDVRYmw5?= =?utf-8?B?bmlRVXh2UzR1YnZEUTg3MFdLYldjbHJpc1ZwUEdSeHRtVEFlTXFaZEN3VGlB?= =?utf-8?Q?oPPOe3Wp2mJyS24mpR+hzxbaGKTY4srJ5K9UpBc?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN8PR11MB3795.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b074d4c2-97da-4a34-bd40-08d9324ebd5a X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Jun 2021 11:46:41.4134 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: C1nC3Uhl5vs+cG9PvYSiKrFLkHTI+a2x1l2rkXlkWp1acW7elzp0UBns+cdc2hMJl9gqW6RYktvfbP9U8Mcc2w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN7PR11MB2676 X-OriginatorOrg: intel.com Subject: Re: [dpdk-stable] [PATCH 20.11 v2 00/18] Backport the new VLAN design for Intel ice PMD X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBLZXZpbiBUcmF5bm9yIDxrdHJh eW5vckByZWRoYXQuY29tPg0KPiBTZW50OiBGcmlkYXksIEp1bmUgMTgsIDIwMjEgMTg6MTMNCj4g VG86IFdhbmcsIEhhaXl1ZSA8aGFpeXVlLndhbmdAaW50ZWwuY29tPjsgWHVlbWluZyhTdGV2ZW4p IExpIDx4dWVtaW5nbEBudmlkaWEuY29tPjsgTHVjYSBCb2NjYXNzaQ0KPiA8Ymx1Y2FAZGViaWFu Lm9yZz47IHN0YWJsZUBkcGRrLm9yZw0KPiBDYzogTkJVLUNvbnRhY3QtVGhvbWFzIE1vbmphbG9u IDx0aG9tYXNAbW9uamFsb24ubmV0PjsgY2hyaXN0aWFuLmVocmhhcmR0QGNhbm9uaWNhbC5jb207 IFpoYW5nLCBRaSBaDQo+IDxxaS56LnpoYW5nQGludGVsLmNvbT47IEZ1LCBRaSA8cWkuZnVAaW50 ZWwuY29tPg0KPiBTdWJqZWN0OiBSZTogW2RwZGstc3RhYmxlXSBbUEFUQ0ggMjAuMTEgdjIgMDAv MThdIEJhY2twb3J0IHRoZSBuZXcgVkxBTiBkZXNpZ24gZm9yIEludGVsIGljZSBQTUQNCj4gDQo+ IE9uIDE4LzA2LzIwMjEgMDQ6MjIsIFdhbmcsIEhhaXl1ZSB3cm90ZToNCj4gPj4gLS0tLS1Pcmln aW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4gRnJvbTogS2V2aW4gVHJheW5vciA8a3RyYXlub3JAcmVk aGF0LmNvbT4NCj4gPj4gU2VudDogVGh1cnNkYXksIEp1bmUgMTcsIDIwMjEgMTg6MDUNCj4gPj4g VG86IFh1ZW1pbmcoU3RldmVuKSBMaSA8eHVlbWluZ2xAbnZpZGlhLmNvbT47IFdhbmcsIEhhaXl1 ZSA8aGFpeXVlLndhbmdAaW50ZWwuY29tPjsgTHVjYSBCb2NjYXNzaQ0KPiA+PiA8Ymx1Y2FAZGVi aWFuLm9yZz47IHN0YWJsZUBkcGRrLm9yZw0KPiA+PiBDYzogTkJVLUNvbnRhY3QtVGhvbWFzIE1v bmphbG9uIDx0aG9tYXNAbW9uamFsb24ubmV0PjsgY2hyaXN0aWFuLmVocmhhcmR0QGNhbm9uaWNh bC5jb207IFpoYW5nLCBRaQ0KPiBaDQo+ID4+IDxxaS56LnpoYW5nQGludGVsLmNvbT4NCj4gPj4g U3ViamVjdDogUmU6IFtkcGRrLXN0YWJsZV0gW1BBVENIIDIwLjExIHYyIDAwLzE4XSBCYWNrcG9y dCB0aGUgbmV3IFZMQU4gZGVzaWduIGZvciBJbnRlbCBpY2UgUE1EDQo+ID4+DQo+ID4+IE9uIDE3 LzA2LzIwMjEgMDk6NTMsIFh1ZW1pbmcoU3RldmVuKSBMaSB3cm90ZToNCj4gPj4+IEhpIEhhaXl1 ZSwNCj4gPj4+DQo+ID4+Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4+PiBGcm9t OiBXYW5nLCBIYWl5dWUgPGhhaXl1ZS53YW5nQGludGVsLmNvbT4NCj4gPj4+PiBTZW50OiBUaHVy c2RheSwgSnVuZSAxNywgMjAyMSA5OjE2IEFNDQo+ID4+Pj4gVG86IEx1Y2EgQm9jY2Fzc2kgPGJs dWNhQGRlYmlhbi5vcmc+OyBzdGFibGVAZHBkay5vcmcNCj4gPj4+PiBDYzogWHVlbWluZyhTdGV2 ZW4pIExpIDx4dWVtaW5nbEBudmlkaWEuY29tPjsgTkJVLUNvbnRhY3QtVGhvbWFzIE1vbmphbG9u IDx0aG9tYXNAbW9uamFsb24ubmV0PjsNCj4gPj4+PiBjaHJpc3RpYW4uZWhyaGFyZHRAY2Fub25p Y2FsLmNvbTsga3RyYXlub3JAcmVkaGF0LmNvbTsgWmhhbmcsIFFpIFogPHFpLnouemhhbmdAaW50 ZWwuY29tPg0KPiA+Pj4+IFN1YmplY3Q6IFJFOiBbZHBkay1zdGFibGVdIFtQQVRDSCAyMC4xMSB2 MiAwMC8xOF0gQmFja3BvcnQgdGhlIG5ldyBWTEFOIGRlc2lnbiBmb3IgSW50ZWwgaWNlIFBNRA0K PiA+Pj4+DQo+ID4+Pj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+Pj4+IEZyb206 IEx1Y2EgQm9jY2Fzc2kgPGJsdWNhQGRlYmlhbi5vcmc+DQo+ID4+Pj4+IFNlbnQ6IFdlZG5lc2Rh eSwgSnVuZSAxNiwgMjAyMSAyMzo0Nw0KPiA+Pj4+PiBUbzogV2FuZywgSGFpeXVlIDxoYWl5dWUu d2FuZ0BpbnRlbC5jb20+OyBzdGFibGVAZHBkay5vcmcNCj4gPj4+Pj4gQ2M6IHh1ZW1pbmdsQG52 aWRpYS5jb207IHRob21hc0Btb25qYWxvbi5uZXQ7DQo+ID4+Pj4+IGNocmlzdGlhbi5laHJoYXJk dEBjYW5vbmljYWwuY29tOyBrdHJheW5vckByZWRoYXQuY29tOyBaaGFuZywgUWkgWg0KPiA+Pj4+ PiA8cWkuei56aGFuZ0BpbnRlbC5jb20+DQo+ID4+Pj4+IFN1YmplY3Q6IFJlOiBbZHBkay1zdGFi bGVdIFtQQVRDSCAyMC4xMSB2MiAwMC8xOF0gQmFja3BvcnQgdGhlIG5ldw0KPiA+Pj4+PiBWTEFO IGRlc2lnbiBmb3IgSW50ZWwgaWNlIFBNRA0KPiA+Pj4+Pg0KPiA+Pj4+PiBPbiBGcmksIDIwMjEt MDYtMTEgYXQgMTU6MTUgKzA4MDAsIEhhaXl1ZSBXYW5nIHdyb3RlOg0KPiA+Pj4+Pj4gV2hlbiBM VFMgMjAuMTEgd2FzIHJlbGVhc2VkLCB0aGUgSW50ZWwgaWNlIFBNRCBoYXMgYSBiYXNpYyBWTEFO DQo+ID4+Pj4+PiBvZmZsb2FkLCB3aGljaCBjYW4gb25seSBoYW5kbGUgc2luZ2xlIFZMQU4gbW9k ZSBmb3IgZmlybXdhcmUNCj4gPj4+Pj4+IGxpbWl0YXRpb24uIE5vdyB0aGUgZmlybXdhcmUgaXMg dXBkYXRlZCB0byBzdXBwb3J0IGRvdWJsZSBWTEFOIG1vZGUNCj4gPj4+Pj4+IGFuZCBzaW5nbGUg VkxBTiBtb2RlIGF0IHRoZSBzYW1lIHRpbWUuIEl0IGRlcGVuZHMgb24gdGhlIGRyaXZlciB0byBk byBzZWxlY3Rpb24gYXQgdGhlIGJvb3QNCj4gdGltZS4NCj4gPj4+Pj4+DQo+ID4+Pj4+PiBBcyBW TEFOIHByb3RvY29sIGhhbmRsaW5nIGxpa2Ugc3RyaXAsIGZpbHRlciwgZmxvdyBpcyB2ZXJ5IGNv bW1vbg0KPiA+Pj4+Pj4gdXNlLCB3ZSByZXF1ZXN0IHRvIHN1cHBvcnQgdGhlIGljZSBQTUQgY2Fu IHJ1biBvbiB0aGUgbGF0ZXN0DQo+ID4+Pj4+PiBmaXJtd2FyZSBmb3IgZW5hYmxpbmcgdGhlIG5l dyBkZXNpZ24uIFRoaXMgaXMgY29tcGF0aWJsZSBiYWNrcG9ydCBhcyB0aGUgbWFpbiB0cmVlLg0K PiA+Pj4+Pj4NCj4gPj4+Pj4+IHYyOiBGaXggdGhlIHN1YmplY3QgZml4IHdpdGggbWVzc3kgY29k ZSBsaWtlIDogUEFUQ0jDgg0KPiA+Pj4+Pj4NCj4gPj4+Pj4+IEhhaXl1ZSBXYW5nICg0KToNCj4g Pj4+Pj4+ICAgbmV0L2ljZS9iYXNlOiBkbyBub3Qgc2V0IFZMQU4gbW9kZSBpbiBEQ0YgbW9kZQ0K PiA+Pj4+Pj4gICBuZXQvaWNlOiBmaXggVkxBTiBzdHJpcCBmb3IgZG91YmxlIFZMQU4NCj4gPj4+ Pj4+ICAgbmV0L2ljZTogZml4IFZMQU4gMCBhZGRpbmcgYmFzZWQgb24gVkxBTiBtb2RlDQo+ID4+ Pj4+PiAgIG5ldC9pY2U6IHVwZGF0ZSBRaW5RIHN3aXRjaCBmaWx0ZXIgaGFuZGxpbmcNCj4gPj4+ Pj4+DQo+ID4+Pj4+PiBKdW5mZW5nIEd1byAoMSk6DQo+ID4+Pj4+PiAgIG5ldC9pY2U6IGVuYWJs ZSBRaW5RIGZpbHRlciBmb3Igc3dpdGNoDQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4gUWkgWmhhbmcgKDEy KToNCj4gPj4+Pj4+ICAgbmV0L2ljZS9iYXNlOiBhbGlnbiBhZGQgVlNJIGFuZCB1cGRhdGUgVlNJ IEFRIGNvbW1hbmQgYnVmZmVyDQo+ID4+Pj4+PiAgIG5ldC9pY2UvYmFzZTogYWRkIGludGVyZmFj ZSB0byBzdXBwb3J0IGNvbmZpZ3VyaW5nIFZMQU4gbW9kZQ0KPiA+Pj4+Pj4gICBuZXQvaWNlL2Jh c2U6IGZpeCBvdXRlciBWTEFOIHJlbGF0ZWQgbWFjcm8NCj4gPj4+Pj4+ICAgbmV0L2ljZS9iYXNl OiBhZGQgVkxBTiBUUElEIGZvciBWTEFOIGZpbHRlcnMNCj4gPj4+Pj4+ICAgbmV0L2ljZS9iYXNl OiBzdXBwb3J0IGNoZWNraW5nIGRvdWJsZSBWTEFOIG1vZGUNCj4gPj4+Pj4+ICAgbmV0L2ljZS9i YXNlOiBzdXBwb3J0IGNvbmZpZ3VyaW5nIGRldmljZSBpbiBkb3VibGUgVkxBTiBtb2RlDQo+ID4+ Pj4+PiAgIG5ldC9pY2UvYmFzZTogdXBkYXRlIGJvb3N0IFRDQU0gZm9yIERWTQ0KPiA+Pj4+Pj4g ICBuZXQvaWNlL2Jhc2U6IGNoYW5nZSBwcm90b2NvbCBJRCBmb3IgVkxBTiBpbiBEVk0NCj4gPj4+ Pj4+ICAgbmV0L2ljZS9iYXNlOiByZWZhY3RvciBwb3N0IEREUCBkb3dubG9hZCBWTEFOIG1vZGUg Y29uZmlnDQo+ID4+Pj4+PiAgIG5ldC9pY2UvYmFzZTogbG9nIGlmIEREUC9GVyBkbyBub3Qgc3Vw cG9ydCBRaW5RDQo+ID4+Pj4+PiAgIG5ldC9pY2UvYmFzZTogYWRkIGlubmVyIFZMQU4gcHJvdG9j b2wgdHlwZSBmb3IgUWluUSBmaWx0ZXINCj4gPj4+Pj4+ICAgbmV0L2ljZS9iYXNlOiBmaXggUWlu USBQUFBvRSBkdW1teSBwYWNrZXQgc2VsZWN0aW9uDQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4gWXV5aW5n IFpoYW5nICgxKToNCj4gPj4+Pj4+ICAgbmV0L2ljZS9iYXNlOiBhZGQgZXRoZXJ0eXBlIG9mZnNl dCBmb3IgUWluUSBkdW1teSBwYWNrZXQNCj4gPj4+Pj4+DQo+ID4+Pj4+PiAgZHJpdmVycy9uZXQv aWNlL2Jhc2UvaWNlX2FkbWlucV9jbWQuaCAgICB8IDI2OCArKysrKysrKy0tLS0tDQo+ID4+Pj4+ PiAgZHJpdmVycy9uZXQvaWNlL2Jhc2UvaWNlX2JpdG9wcy5oICAgICAgICB8ICA0NSArKysNCj4g Pj4+Pj4+ICBkcml2ZXJzL25ldC9pY2UvYmFzZS9pY2VfY29tbW9uLmMgICAgICAgIHwgIDM4ICsr DQo+ID4+Pj4+PiAgZHJpdmVycy9uZXQvaWNlL2Jhc2UvaWNlX2NvbW1vbi5oICAgICAgICB8ICAg NCArDQo+ID4+Pj4+PiAgZHJpdmVycy9uZXQvaWNlL2Jhc2UvaWNlX2ZsZXhfcGlwZS5jICAgICB8 IDMwMiArKysrKysrKysrKysrLS0NCj4gPj4+Pj4+ICBkcml2ZXJzL25ldC9pY2UvYmFzZS9pY2Vf ZmxleF9waXBlLmggICAgIHwgIDEyICsNCj4gPj4+Pj4+ICBkcml2ZXJzL25ldC9pY2UvYmFzZS9p Y2VfZmxleF90eXBlLmggICAgIHwgIDM5ICsrDQo+ID4+Pj4+PiAgZHJpdmVycy9uZXQvaWNlL2Jh c2UvaWNlX3Byb3RvY29sX3R5cGUuaCB8ICAgMSArDQo+ID4+Pj4+PiAgZHJpdmVycy9uZXQvaWNl L2Jhc2UvaWNlX3N3aXRjaC5jICAgICAgICB8IDEyNCArKysrKy0NCj4gPj4+Pj4+ICBkcml2ZXJz L25ldC9pY2UvYmFzZS9pY2Vfc3dpdGNoLmggICAgICAgIHwgIDE1ICsNCj4gPj4+Pj4+ICBkcml2 ZXJzL25ldC9pY2UvYmFzZS9pY2VfdHlwZS5oICAgICAgICAgIHwgICA0ICsNCj4gPj4+Pj4+ICBk cml2ZXJzL25ldC9pY2UvYmFzZS9pY2Vfdmxhbl9tb2RlLmMgICAgIHwgNDUxICsrKysrKysrKysr KysrKysrKysrKysNCj4gPj4+Pj4+ICBkcml2ZXJzL25ldC9pY2UvYmFzZS9pY2Vfdmxhbl9tb2Rl LmggICAgIHwgIDE2ICsNCj4gPj4+Pj4+ICBkcml2ZXJzL25ldC9pY2UvYmFzZS9tZXNvbi5idWls ZCAgICAgICAgIHwgICAxICsNCj4gPj4+Pj4+ICBkcml2ZXJzL25ldC9pY2UvaWNlX2V0aGRldi5j ICAgICAgICAgICAgIHwgNDU1ICsrKysrKysrKysrKystLS0tLS0tLS0tDQo+ID4+Pj4+PiAgZHJp dmVycy9uZXQvaWNlL2ljZV9ldGhkZXYuaCAgICAgICAgICAgICB8ICAxMCArLQ0KPiA+Pj4+Pj4g IGRyaXZlcnMvbmV0L2ljZS9pY2VfZ2VuZXJpY19mbG93LmMgICAgICAgfCAgIDggKw0KPiA+Pj4+ Pj4gIGRyaXZlcnMvbmV0L2ljZS9pY2VfZ2VuZXJpY19mbG93LmggICAgICAgfCAgIDEgKw0KPiA+ Pj4+Pj4gIGRyaXZlcnMvbmV0L2ljZS9pY2Vfc3dpdGNoX2ZpbHRlci5jICAgICAgfCAxMTQgKysr KystDQo+ID4+Pj4+PiAgMTkgZmlsZXMgY2hhbmdlZCwgMTU0NSBpbnNlcnRpb25zKCspLCAzNjMg ZGVsZXRpb25zKC0pICBjcmVhdGUgbW9kZQ0KPiA+Pj4+Pj4gMTAwNjQ0IGRyaXZlcnMvbmV0L2lj ZS9iYXNlL2ljZV92bGFuX21vZGUuYw0KPiA+Pj4+Pj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2 ZXJzL25ldC9pY2UvYmFzZS9pY2Vfdmxhbl9tb2RlLmgNCj4gPj4+Pj4NCj4gPj4+Pj4gSGksDQo+ ID4+Pj4+DQo+ID4+Pj4+IEF0IDEuOWsgZGlmZnN0YXQsIHRoaXMgc2VyaWVzIGlzIHF1aXRlIGxh cmdlLiBHaXZlbiBpdCdzIGEgbmV3DQo+ID4+Pj4+IGZlYXR1cmUsIHJhdGhlciB0aGFuIGEgc2Vy aWVzIG9mIGJ1ZyBmaXhlcywgdGhpcyB3b3VsZCBzZWVtIGEgYml0IHJpc2t5IHRvIG1lLg0KPiA+ Pj4+PiBGaW5hbCB3b3JkIG9mIGNvdXJzZSBiZWxvbmdzIHRvIFh1ZW1pbmcsIHNpbmNlIGhlJ3Mg bWFuYWdpbmcgdGhpcyBvbmUuDQo+ID4+Pj4+IFNlZToNCj4gPj4+Pj4NCj4gPj4+Pg0KPiA+Pg0K PiA+PiBUaGFua3MgZm9yIHVzaW5nIHRoZSBxdWVzdGlvbnMgYXMgYSB3YXkgdG8gZGlzY3VzcyBp dCwgaXQgaXMgYSBnb29kIHdheQ0KPiA+PiB0byBzZWUgaWYgdGhleSBhcmUgdXNlZnVsLiBKdXN0 IHRvIG5vdGUsIHRoZXkgd2VyZSB0byB0cnkgYW5kIGNhcHR1cmUNCj4gPj4gc29tZSBvZiB0aGUg aW1wb3J0YW50IHRoaW5ncyBmb3IgYSBtYWludGFpbmVyIHRvIGNvbnNpZGVyLCBpdCBpcyBub3Qg YQ0KPiA+PiBmbG93IGNoYXJ0IGxlYWRpbmcgdG8gYSBiaW5hcnkgYW5zd2VyICh0aG91Z2ggY2xl YXJseSBzb21lIHRoaW5ncyBsaWtlDQo+ID4+IEFCSSBicmVha2FnZSwgcHJvYmFibHkgd291bGQg ZW5kIHRoZSBkaXNjdXNzaW9uKS4NCj4gPj4NCj4gPj4+PiAwMS4gRG9lcyB0aGUgZmVhdHVyZSBi cmVhayBBUEkvQUJJPw0KPiA+Pj4+DQo+ID4+Pj4gIE5PLg0KPiA+Pj4+DQo+ID4+Pj4gMDIuIERv ZXMgdGhlIGZlYXR1cmUgYnJlYWsgYmFja3dhcmRzIGNvbXBhdGliaWxpdHk/DQo+ID4+Pj4NCj4g Pj4+PiAgTk8uDQo+ID4+Pj4NCj4gPj4+PiAwMy4gSXMgaXQgZm9yIHRoZSBsYXRlc3QgTFRTIHJl bGVhc2UgKHRvIGF2b2lkIExUUyB1cGdyYWRlIGlzc3Vlcyk/DQo+ID4+Pj4NCj4gPj4+PiBZZXMu DQo+ID4+Pj4NCj4gPj4+PiAwNC4gSXMgdGhlcmUgYSBjb21taXRtZW50IGZyb20gdGhlIHByb3Bv c2VyIG9yIGFmZmlsaWF0aW9uIHRvIHZhbGlkYXRlIHRoZSBmZWF0dXJlIGFuZCBjaGVjayBmb3IN Cj4gPj4gcmVncmVzc2lvbnMgaW4gcmVsYXRlZCBmdW5jdGlvbmFsaXR5Pw0KPiA+Pj4+DQo+ID4+ Pj4gUGFzc2VkIGludGVybmFsbHksIGlmIG5lZWRlZCwgYW4gb2ZmaWNpYWwgVGVzdC1ieSBjYW4g YmUgcHJvdmlkZWQuDQo+ID4+Pj4NCj4gPj4NCj4gPj4gSXQgd291bGQgYmUgYmV0dGVyIHRvIHNo YXJlIHRlc3QgY2FzZXMgKGV2ZW4gaGlnaCBsZXZlbCksIG5vdCBqdXN0IGENCj4gPj4gdGVzdGVk LWJ5IHdoaWNoIGRvZXNuJ3QgZ2l2ZSBhbnkgaWRlYSBvZiB0ZXN0IGNvdmVyYWdlLg0KPiA+DQo+ ID4gKyBGdSBRaSwgd2hvIGNhbiBzaGFyZSB0aGUgdGVzdCBjYXNlcyBmcm9tIGR0cy4NCj4gPg0K PiA+Pg0KPiA+PiBJIHdvdWxkIGxvb2sgYXQgaXQgbGlrZToNCj4gPj4gVGhlIG5ldyBmdW5jdGlv bmFsaXR5IG5vdCB3b3JraW5nIHdpdGggdGhlIG5ldyBmaXJtd2FyZSBhbmQgbmV3IGNvZGUgaXMN Cj4gPj4gbm90IGEgYmlnIGlzc3VlLg0KPiA+Pg0KPiA+PiBUaGUgb2xkIGZ1bmN0aW9uYWxpdHkg bm90IHdvcmtpbmcgd2l0aCB0aGUgbmV3IGZpcm13YXJlIGFuZCB0aGUgbmV3IGNvZGUNCj4gPj4g aXMgYSBiaWcgaXNzdWUuDQo+ID4+DQo+ID4+IFRoZSBvbGQgZnVuY3Rpb25hbGl0eSBub3Qgd29y a2luZyB3aXRoIHRoZSBvbGQgZmlybXdhcmUgYW5kIHRoZSBuZXcgY29kZQ0KPiA+PiBpcyBhIHZl cnkgYmlnIGlzc3VlLg0KPiA+Pg0KPiA+PiBTbyByZWdyZXNzaW9uIHRlc3Rpbmcgb2YgdGhlIG9s ZCBmdW5jdGlvbmFsaXR5IHdvdWxkIGJlIHRoZSBtb3N0DQo+ID4+IGltcG9ydGFudCBJTUhPLg0K PiA+DQo+ID4gVGhpcyBpcyBzb21lIGtpbmQgb2YgY29tcGF0aWJpbGl0eSBtYXRyaXgsIHN1cmUs IGl0IG1ha2UgYm90aCB3b3Jrcy4gVGhpcyBwYXJ0DQo+ID4gY2FuIGJlIGNvdmVyZWQgYnkgdGhl IHRlc3QgY2FzZXMuDQo+ID4NCj4gPj4NCj4gPj4+PiAwNS4gSXMgdGhlcmUgYSB0cmFjayByZWNv cmQgb2YgdGhlIHByb3Bvc2VyIG9yIGFmZmlsaWF0aW9uIHZhbGlkYXRpbmcgc3RhYmxlIHJlbGVh c2VzPw0KPiA+Pj4+DQo+ID4+DQo+ID4+IFllcywgSW50ZWwgdGVzdHMgZXZlcnkgTFRTIHJlbGVh c2UuDQo+ID4+DQo+ID4+Pj4gQnVnemlsbGEgPw0KPiA+Pj4+DQo+ID4+Pj4gMDYuIElzIGl0IG9i dmlvdXMgdGhhdCB0aGUgZmVhdHVyZSB3aWxsIG5vdCBpbXBhY3QgZXhpc3RpbmcgZnVuY3Rpb25h bGl0eT8NCj4gPj4+Pg0KPiA+Pj4+IFllcy4NCj4gPj4+Pg0KPiA+Pg0KPiA+PiBOby4gSXQgaXMg MS45S0xPQyBjaGFuZ2UuIFRoZSBrZXkgcGFydCBvZiB0aGUgcXVlc3Rpb24gaXMgIm9idmlvdXMi LiBJdA0KPiA+PiB3YXMgbWVhbnQgc28gdGhlIG1haW50YWluZXIgY291bGQgdXNlIHRoZWlyIGp1 ZGdlbWVudCBhbmQgcmV2aWV3IHRoYXQNCj4gPj4gZm9yIGV4YW1wbGUsIGEgZmV3IGxpbmVzIG9m IGNvZGUgYWRkaW5nIGEgUENJIElEIG9yIGFkZGluZyBhIGNhc2UgaW4gYQ0KPiA+PiBzd2l0Y2gg c3RhdGVtZW50LCBpcyBvYnZpb3VzbHkgbm90IGdvaW5nIHRvIGltcGFjdCBleGlzdGluZyBmdW5j dGlvbmFsaXR5Lg0KPiA+PiBPbiB0aGUgb3RoZXIgaGFuZCwgZm9yIGEgbW9yZSBjb21wbGV4IGNv ZGUgY2hhbmdlIHRvIGV4aXN0aW5nIGNvZGUsIGl0DQo+ID4+IGlzIG5vdCBpbW1lZGlhdGVseSBv YnZpb3VzIHRoYXQgdGhlcmUgd291bGQgYmUgbm8gcmlzayB0byBleGlzdGluZw0KPiA+PiBmdW5j dGlvbmFsaXR5Lg0KPiA+Pg0KPiA+Pj4+IDA3LiBIb3cgaW50cnVzaXZlIGlzIHRoZSBjb2RlIGNo YW5nZT8NCj4gPj4+Pg0KPiA+Pj4+ICBGcm9tIExPQywgeWVzLCAxLjlLIHNlZW1zIHRvIGJlIEJJ RywgYnV0IERQREsgUE1EIHJlbGF0ZWQgaXMgNTg4LCBvdGhlciBpcyAgdGhlIHNoYXJlIGNvZGUg aW4NCj4gYmFzZQ0KPiA+PiAoMTMyMCksIHdoaWNoIGlzIHRlc3RlZCBhbmQNCj4gPj4+PiB2YWxp ZGF0ZWQgb24gb3RoZXIgcGxhdGZvcm0uDQo+ID4+Pj4NCj4gPj4NCj4gPj4gVmVyeSBpbnRydXNp dmUuIEl0IHNlZW1zIHRvIGJlIGJpZywgYmVjYXVzZSBpdCBpcyBiaWcuDQo+ID4+DQo+ID4+Pj4g ICAgICBkcml2ZXJzL25ldC9pY2UvaWNlX2V0aGRldi5jICAgICAgICAgICAgIHwgNDU1ICsrKysr KysrKysrKystLS0tLS0tLS0tDQo+ID4+Pj4gICAgICBkcml2ZXJzL25ldC9pY2UvaWNlX2V0aGRl di5oICAgICAgICAgICAgIHwgIDEwICstDQo+ID4+Pj4gICAgICBkcml2ZXJzL25ldC9pY2UvaWNl X2dlbmVyaWNfZmxvdy5jICAgICAgIHwgICA4ICsNCj4gPj4+PiAgICAgIGRyaXZlcnMvbmV0L2lj ZS9pY2VfZ2VuZXJpY19mbG93LmggICAgICAgfCAgIDEgKw0KPiA+Pj4+ICAgICAgZHJpdmVycy9u ZXQvaWNlL2ljZV9zd2l0Y2hfZmlsdGVyLmMgICAgICB8IDExNCArKysrKy0NCj4gPj4+Pg0KPiA+ Pj4+IDA4LiBXaGF0IGlzIHRoZSBzY29wZSBvZiB0aGUgY29kZSBjaGFuZ2U/DQo+ID4+Pj4NCj4g Pj4+PiBQTUQgb25seS4NCj4gPj4+Pg0KPiA+Pj4+IDA5LiBEb2VzIGl0IGltcGFjdCBjb21tb24g Y29tcG9uZW50cyBvciB2ZW5kb3Igc3BlY2lmaWM/DQo+ID4+Pj4NCj4gPj4+PiBOTy4NCj4gPj4+ Pg0KPiA+Pj4+IDEwLiBJcyB0aGVyZSBhIGp1c3RpZmlhYmxlIHVzZSBjYXNlIChhIGNsZWFyIHVz ZXIgbmVlZCk/DQo+ID4+Pj4NCj4gPj4+PiBZZXMsIGZvciBmaXJtd2FyZSB1cGRhdGVkLiBBbmQg d2UgaGF2ZSB0aGUgY3VzdG9tZXIgd2hvIHdhbnRzIHRvIHVzZSB0aGUgVkxBTiBmZWF0dXJlIG9u IExUUw0KPiAyMC4xMS4NCj4gPj4+Pg0KPiA+Pg0KPiA+PiBXZWxsLCBsaWtlIGEgbG90IG9mIHRo ZSBjb25zaWRlcmF0aW9ucywgdGhpcyBpcyBzdWJqZWN0aXZlIGFuZCBldmVyeW9uZQ0KPiA+PiB3 aWxsIHRoaW5rIHRoZXJlIGlzIGEgbmVlZCBmb3IgdGhlaXIgb3duIHBhdGNoZXMsIHRoYXQgaXMg YSBnaXZlbi4gSXQgaXMNCj4gPj4gZm9yIHRoZSBtYWludGFpbmVyIHRvIHRyeSBhbmQgYmFsYW5j ZSB0aGUgbmVlZCBvZiB0aGUgZmVhdHVyZSBhZ2FpbnN0DQo+ID4+IHRoZSBwb3NzaWJsZSBpbXBh Y3RzIHRvIHRoZSBMVFMuDQo+ID4+DQo+ID4+IEl0IHNlZW1zIGxpa2UgeW91IG1lbnRpb25lZCAi Zm9yIHVwZGF0ZWQgZmlybXdhcmUiIGFuZCAiY3VzdG9tZXIgd2hvDQo+ID4+IHdhbnRzIHRvIHVz ZWQgdGhlIFZMQU4gZmVhdHVyZSIgYXMgc2VwYXJhdGUgcG9pbnRzLiBJZiB0aGVyZSBpcyBhDQo+ ID4+IHNlcGFyYXRlIG5lZWQgZm9yIHVwZGF0aW5nIGZpcm13YXJlIGFzaWRlIGZyb20gbmV3IFZM QU4gZnVuY3Rpb25hbGl0eSwNCj4gPj4gaXQgaXMgZ29vZCB0byBzdGF0ZSB0aGF0Lg0KPiA+Pg0K PiA+Pj4+IDExLiBJcyB0aGVyZSBhIGNvbW11bml0eSBjb25zZW5zdXMgYWJvdXQgdGhlIGJhY2tw b3J0Pw0KPiA+Pj4+DQo+ID4+Pj4gLi4uDQo+ID4+Pg0KPiA+Pj4gS2V2aW4gaGFwcGVucyB0byB1 cGRhdGVkIHRoZSBkb2N1bWVudHMgb24gbmV3IGZlYXR1cmUgYmFja3BvcnQgNCBtb250aHMgYWdv LCB0aGFua3MgZm9yIGNoZWNraW5nDQo+ID4+IHRoZW0NCj4gPj4+IG9uZSBieSBvbmUuIEx1Y2En cyBvbmx5IGNvbmNlcm4gaXMgc2l6ZSBvZiB0aGUgc2VyaWVzLCBkcml2ZXIgdmVuZG9yIGlzIG9u IGl0J3Mgb3duIHJpc2sgdG8NCj4gYmFja3BvcnQNCj4gPj4gYSBiaWcgcGF0Y2ggc2V0Lg0KPiA+ Pj4gVGhlIHNlcmllcyBzdXBwb3J0cyBuZXcgZncgYW5kIFFpblEsIGlzIGl0IGVhc3kgdG8gc3Bs aXQ/DQo+ID4+Pg0KPiA+Pj4gS2V2aW4sIGlzIHRoaXMgdGhlIGZpcnN0IGNhc2Ugb2YgZmVhdHVy ZSBiYWNrcG9ydD8gSG93IGRvIHlvdSB0aGluaz8NCj4gPj4+DQo+ID4+DQo+ID4+IExpa2UgTHVj YSwgbWFpbiBjb25jZXJuIHdvdWxkIGJlIHRoZSBzaXplIGFuZCBpbnRydXNpdmVuZXNzIG9mIHRo ZQ0KPiA+PiBjaGFuZ2VzLCBhbmQgaWYgaXQncyBvayB0byBjaGFuZ2UgMS45S0xPQyBpbiB0aGlz IGRyaXZlciBub3csIHRoZW4gd2h5DQo+ID4+IG5vdCAyMEtMT0MgaW4gbmV4dCByZWxlYXNlIHRv IG11bHRpcGxlIGRyaXZlcnMuIEkgaGFkIHB1c2hlZCBhZ2FpbnN0IGENCj4gPg0KPiA+IFRCSCwg d2Ugd29uJ3Qgd2FudCB0byBjaGFuZ2UgdGhlIHN0YWJsZSBpNDBlLCBpeGdiZSBQTURzLCBidXQg aWNlIGlzIGEgZnJlc2gNCj4gPiBvbmUsIGN1cnJlbnQgVkxBTiBoYXMgYSBsaW1pdGVkIHVzYWdl LCBjdXN0b21lciBpcyBoYXJkIHRvIHVzZS4gVGhhdCdzIHdoeSB3ZQ0KPiA+IHRyeSB0byByZXF1 ZXN0IHRvIGJhY2twb3J0IHRoZSBuZXcgVkxBTiBkZXNpZ24uDQo+ID4NCj4gDQo+IEp1c3QgdG8g bm90ZSwgSSB3YXNuJ3Qgc3BlY2lmaWNhbGx5IHJlZmVycmluZyB0byBJbnRlbCBkcml2ZXJzLCBq dXN0DQoNClN1cmUsIEkgMTAwJSB1bmRlcnN0b29kLiA7LSkNCg0KPiBkaXNjdXNzaW5nIHdoYXQg aXMgYW4gYWNjZXB0YWJsZSBsaW1pdCBvZiBjaHVybi4NCg0KQW5kIEkgYWxzbyAxMDAlIGFncmVl IHRoYXQgTE9DIHdpbGwgbWFrZSB0cmVlIG1haW50YWluZXIgZmVlbCB1bmNvbWZvcnRhYmxlLA0K aW4gdGhlb3J5LCAibW9yZSBjb2RlLCBtb3JlIGJ1Z3MiLCBlc3BlY2lhbGx5IG1hbnkgIisrKy0t LS0iLg0KDQpDdXJyZW50bHksIHR3byBwYXRjaGVzIG1ha2UgdGhlIHBhdGNoc2V0IGxvb2sgbGlr ZSB0aGF0IHdlIGNoYW5nZSB0b28gbWFueQ0KdGhpbmdzOg0KDQphLiBbUEFUQ0ggMDFdIG5ldC9p Y2UvYmFzZTogYWxpZ24gYWRkIFZTSSBhbmQgdXBkYXRlIFZTSSBBUSBjb21tYW5kIGJ1ZmZlcg0K DQogICBkcml2ZXJzL25ldC9pY2UvYmFzZS9pY2VfYWRtaW5xX2NtZC5oIHwgMjA5ICsrKysrKysr KysrKystLS0tLS0tLS0tLS0tDQogICBkcml2ZXJzL25ldC9pY2UvaWNlX2V0aGRldi5jICAgICAg ICAgIHwgIDg4ICsrKysrLS0tLS0tDQogICAyIGZpbGVzIGNoYW5nZWQsIDE1MiBpbnNlcnRpb25z KCspLCAxNDUgZGVsZXRpb25zKC0pDQoNCiAgIEl0J3MgbWFpbmx5IGFib3V0IHRoZSByZWdpc3Rl ciBiaXQgZGVmaW5pdGlvbiByZW5hbWUsIHRvIHN5bmMgd2l0aA0KICAgbmV3IGRhdGFzaGVldCB0 YWJsZS4NCg0KYi4gW1BBVENIIDE1XSBuZXQvaWNlOiBmaXggVkxBTiBzdHJpcCBmb3IgZG91Ymxl IFZMQU4NCg0KICBkcml2ZXJzL25ldC9pY2UvaWNlX2V0aGRldi5jIHwgMjk3ICsrKysrKysrKysr KysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tDQogIDEgZmlsZSBjaGFuZ2VkLCAxMzEgaW5zZXJ0aW9u cygrKSwgMTY2IGRlbGV0aW9ucygtKQ0KDQogIEl0J3MgbWFpbmx5IHRvIHJlcGxhY2UgdGhlIHR3 byBWTEFOIG9wcyBkZXNpZ246DQoJLnZsYW5fZmlsdGVyX3NldA0KCS52bGFuX29mZmxvYWRfc2V0 DQoNCj4gDQo+ID4+IExPQyBsaW1pdCB3aGVuIHRoaXMgd2FzIGxhc3QgZGlzY3Vzc2VkIGF0IHRo ZSBUQiwgYXMgaXQncyBhIGNydWRlIHdheSB0bw0KPiA+PiBqdWRnZSBjb2RlIGNvbXBsZXhpdHkv cmlzaywgYnV0IG1heWJlIGl0IHNob3VsZCBiZSBjb25zaWRlcmVkLg0KPiA+Pg0KPiA+PiBPbiB0 aGUgcG9zaXRpdmUgc2lkZSBpdCBpcyBzZWxmLWNvbnRhaW5lZCBhbmQgSW50ZWwgaGFzIGFuIGV4 Y2VsbGVudA0KPiA+PiB0cmFjayByZWNvcmQgZm9yIHRlc3RpbmcgTFRTLg0KPiA+Pg0KPiA+Pj4+ DQo+ID4+Pj4+IGh0dHBzOi8vZG9jLmRwZGsub3JnL2d1aWRlcy9jb250cmlidXRpbmcvc3RhYmxl Lmh0bWwjd2hhdC1jaGFuZ2VzLXNob3UNCj4gPj4+Pj4gbGQtYmUtYmFja3BvcnRlZA0KPiA+Pj4+ Pg0KPiA+Pj4+PiAtLQ0KPiA+Pj4+PiBLaW5kIHJlZ2FyZHMsDQo+ID4+Pj4+IEx1Y2EgQm9jY2Fz c2kNCj4gPg0KDQo=