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 F313C42C55; Thu, 8 Jun 2023 03:53:56 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id CA8DC410D3; Thu, 8 Jun 2023 03:53:56 +0200 (CEST) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id F0A8B40042 for ; Thu, 8 Jun 2023 03:53:54 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686189235; x=1717725235; h=from:to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version; bh=DdibUO8Fyyk4B+eLjxJjUxtI1Q7M2Io2dv9Myk7yD0U=; b=NmWwent5AJOqrUc+gd9APAFXUjgHYUVDl/FwbwNnopBk0ltjMZd94xf2 QLUV6DRZSlFu2LnfshNhd3BkqhJKndkVb6MzdkyiOaSkwncqMaRk5kqfL FYnBCvDEaO8vOCdYkxkonw19bfD3Xy7AJZVOgsrf3z7/uBwdHMmaID0Mq 7JDwJ4lW1UG3M6zW56OvW7NZtrpB7IcTBpb4YbFhBWajUOlVFMRFtH7DV Tz5KpWR8fXJ3I7HjCjxq9Y8DGrPIoD1GVZPae2r7TPU+2R9PGjm+aEb6Q hmBmeyWYb4gCA+TWAJeOxt9DN0p6rqhEY/1EqNj6LPogPLBpMWuW8XCt/ A==; X-IronPort-AV: E=McAfee;i="6600,9927,10734"; a="359639598" X-IronPort-AV: E=Sophos;i="6.00,225,1681196400"; d="scan'208";a="359639598" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Jun 2023 18:53:53 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10734"; a="660174322" X-IronPort-AV: E=Sophos;i="6.00,225,1681196400"; d="scan'208";a="660174322" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga003.jf.intel.com with ESMTP; 07 Jun 2023 18:53:51 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 7 Jun 2023 18:53:50 -0700 Received: from fmsmsx601.amr.corp.intel.com (10.18.126.81) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Wed, 7 Jun 2023 18:53:49 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Wed, 7 Jun 2023 18:53:49 -0700 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.100) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.23; Wed, 7 Jun 2023 18:53:49 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VdkRUO1TefKXcLFDJfDtj8w31XZ2wZr7xu60MMX0idKZE3a0a3kIEJlmV0Ucm/MEqh6vanbjR3BaztQq7grg8luH3kyk14yKYCCaVh37qilnIfSEhnsEzxNIookzuHF3gIqnoFuH3jLxI+hyT6NRxj8NlagE6e/g/tP92jR556xmLZOIkzI5Li5lPdScomsi61QBGi0E3dfAHTcf605b2JXdNu/aeyEX16bkCqzAsQfz48JBXiVZXkDpvuDzXjBSKRSnRQ76GxBVWsVBieiuLmO9P1eBKWBz+deFOoG8qZWQzZJpDkqH+dZhmS20Ozds1ErjJRYmVybK3auc/FILXQ== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=DdibUO8Fyyk4B+eLjxJjUxtI1Q7M2Io2dv9Myk7yD0U=; b=ms0LffxhNYcvOToxPubQPuP33+v0nopr5lfLGGv2i3j3BhfaXI5wV555HlrFoebhxedsDS+N5kHTYpOTqb5a8rcmgLffV77EVjoxfirKJk5fH6CbQJ3q3dm8XA0MSxfiK1ETcG9XcdVwQPU0S0mHhnwEPEplIXbaQWwDBQ0+iOL3hVmhknatHSbOJO2GwT51WvkUn0THfySFvnXcs7ciY63bOm7XvhUdKHeJZg0/Fo/Qy2p43CwB14Bvy8tGI/QCAAT29v6glUi38o2FyT90HrbW1y1EwX3lclBY5s/Sa5rMYiBCUjCrfb9Dm2qXPVOObaeeiJU+XbyRRnkOq/Derw== 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 Received: from SN6PR11MB3504.namprd11.prod.outlook.com (2603:10b6:805:d0::17) by SJ0PR11MB4925.namprd11.prod.outlook.com (2603:10b6:a03:2df::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Thu, 8 Jun 2023 01:53:46 +0000 Received: from SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::e508:44ff:3d34:60bc]) by SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::e508:44ff:3d34:60bc%4]) with mapi id 15.20.6455.030; Thu, 8 Jun 2023 01:53:45 +0000 From: "Xia, Chenbo" To: Maxime Coquelin , "dev@dpdk.org" , "david.marchand@redhat.com" , "mkp@redhat.com" , "fbl@redhat.com" , "jasowang@redhat.com" , "Liang, Cunming" , "Xie, Yongji" , "echaudro@redhat.com" , "eperezma@redhat.com" , "amorenoz@redhat.com" , "lulu@redhat.com" Subject: RE: [PATCH v5 00/26] Add VDUSE support to Vhost library Thread-Topic: [PATCH v5 00/26] Add VDUSE support to Vhost library Thread-Index: AQHZmE+Tq6Dy2Gz6D0y4zo/ls0Fi8a9+5zjwgACJRgCAALbIcA== Date: Thu, 8 Jun 2023 01:53:44 +0000 Message-ID: References: <20230606081852.71003-1-maxime.coquelin@redhat.com> <6e196d2c-fb70-68a9-ca38-58629bb3ceda@redhat.com> In-Reply-To: <6e196d2c-fb70-68a9-ca38-58629bb3ceda@redhat.com> Accept-Language: en-US, zh-CN Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SN6PR11MB3504:EE_|SJ0PR11MB4925:EE_ x-ms-office365-filtering-correlation-id: 19de5915-33fb-4a54-9ef2-08db67c3313b x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: abRYt2bK29gAK7jusU/maZuHIhicORt0xT5qslLrwp58diUPFi+f1hVf0SDQuVckLGGPw+jHKrujVu8j+msQ9rYljndQ21ure6K3tNqzoO2NzDjCgYknYRr74w3ZnHpo6kwj/FugNcBiZ7zDvS+IUT5og9wb3Trx0iJ1ddK9WljtOkZ2BZxaJfO4WVAADq/a27doitoX+RrB7dl3cN4YYyfbCfMLiV4ziSJ4esh4OjB4MHZn3YXxrcPCiQDUDnPajjoyTtli8yLyXdfsS3sVxhKdVNDMneVkO0A8XOzFaoXDaUGdgpBZn+1iZ8EedgIcC6naPmOvUO53HwlfHhsqM3AJlAPWQ237qp/NDrAHvYyvO0f6zMf5p8okctkc9IjrBlpQ+nA5XLJJcAdyjA2BvNIlFZTx83nZczrN+sWvij3jz/z87nihfoIFpddmVWevMkjVB07xWXUC0Dyj9+G7MddZ3x6MdH7UX72c1bY5PDtauSctXcXu4GtEE6kuwBS9T6wFHpMdneH+qf97FShpSLPvhMkqmRf+Qi2Z604ir+UmhQiwEwfzMpxVUj1Pa4sA6GU+eULMG6pUHos7+uI9i6CPgmkByEEYOi7C3JWUwC99fXJz6Wo+sAmHBuZLYgZ64hOWhZmZ4sGkX6TMNl+hq6TN+oBdLELVMmj0aaEtzUw= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SN6PR11MB3504.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(366004)(396003)(346002)(376002)(39860400002)(136003)(451199021)(64756008)(66446008)(66556008)(66476007)(66946007)(110136005)(76116006)(52536014)(8936002)(5660300002)(8676002)(478600001)(71200400001)(7696005)(316002)(41300700001)(966005)(38100700002)(921005)(82960400001)(122000001)(55016003)(9686003)(53546011)(186003)(26005)(7416002)(6506007)(83380400001)(86362001)(38070700005)(33656002)(30864003)(2906002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?bkdDaExVWTJUZG8rSG9hUnpBOE1SbE5zRW5ROWw0dFk2d29mcmZEV0hyelpx?= =?utf-8?B?bHN3cWNzbzZEUCttbHE3bFpTelNONThWQjl1Y0gzVFBJVHAvSVVja285OUE5?= =?utf-8?B?dWJFd25tcXJkNFgxendVZ2U5dENiNHIxYXc5Zm9rQ2EyZ2xPbzl2YnhiaW9u?= =?utf-8?B?cW9Oa1NsOVkvRkxmSlhQaVZyWXMrbTBqT3NoVzJ5MTZoU1dKdHFLNXBFc3Yv?= =?utf-8?B?UU5pdzdzTUpweFg1eGJIN3hkQ2VWdzRkL0ViRXNZM0JKQ2lzSG9NQmNuRDNL?= =?utf-8?B?UkNvdmJGV0tqQ0wwTVRSTTFMa1VNdjFnQk53STJidXNHVmsyY0pjWTE2U1Fp?= =?utf-8?B?cUJjWHZvUTRubFFIeGVwamM0QWo2a3VDK1BvY2l6UVNGNDFqaTJtZkUzdlA1?= =?utf-8?B?RFhYc2lIVy9oTDVOd3VXUWRuRE8vTGxYMXdzZlZOSVU3V3ZZeXorMkY2N1JM?= =?utf-8?B?aDhHSjZTQlZmanorQndQd09abm9aOWZRbHhOUnZyR2k4QTE2ckM4N2E4WlhH?= =?utf-8?B?elVwMncrV0Q2eDZ1NXFobzR2NEUraktKbFVoRHo1ckNzeFN3RmFPZWlQR1B6?= =?utf-8?B?ZkVLV0ZrU2tmanRBdnRWK3RSdFBPOUhObERhdG8wcU1ES1ZPWTh4L1liZjgx?= =?utf-8?B?VmxTdFFwSDNtU3lOMm04UG1qRlMySmlMRVJtUFZJWHZOaVViZTFoMXl4TTZS?= =?utf-8?B?ZEJKRU0zMkFiYm9QVkdCVjhjYzkzemgrTjRwc3QyV3pVa0NVWkFqRU1pNCt4?= =?utf-8?B?SThVSHFJUjk4MXhJa1NWTVJJZEg0TW1MWitTV2V1R0d3eWVSKzJLN2kxbFlY?= =?utf-8?B?ZHliM3FQUndkdkxOSDBETXdJRS8ydHJVYzArVytQbjVsUFRXOUpxejRVVlZ6?= =?utf-8?B?VUcvT2E2NVMvOFNFZ0FsNEpyTzRVdEhZYjd2c214bXpSYUhmM0VMS0VWYW9r?= =?utf-8?B?cHBvY25DYjE3eEs3U2JvQWV0eTdncmZXYXdxUGlaNU9rZ0J0dlV6Q3V5c2hH?= =?utf-8?B?WmlzZXBNckVmaVpNeEFheHJFNFR4VkZmZ3ROOThnUnUwU2dMejM4YjlNUkNS?= =?utf-8?B?b0pSdUhLTzNYWXdRTFVxbm13c0ZFNHZ5MGVmZTVBYXFheFBGVDM2ZEZNbEEr?= =?utf-8?B?UUt5NGVvYktrSktGNnRLTWtTSjFuYmhteVEvVFB4Zkx2bFJpSE1FdUlla0dS?= =?utf-8?B?aG1yVTBWSyt0K0I1QUkrNmthQlZDUmpnVC9tOUpPZGl6WUJHWUFtM2dCS0Vj?= =?utf-8?B?MEFyOGJEbXNhUjlPSTNlZkYybTFOeWgzclRUMysySWRuQVB6eFQvczUzMHhp?= =?utf-8?B?d2JJd2lIQVgzM2l0SmF4eWJVdXpJR2tGTlFTVE5qS2kyMU1HNUpnRXphbEZw?= =?utf-8?B?bVg1RGxJMXhMTHhHWi9jOU9zMVJKcjFTdUViVDhFQUg5MEhLdm10YWp3RVFm?= =?utf-8?B?N1JoNUhRS09xb3ZYT3hyY1IxSlFzT3JaM0ExVXFRaXBWWFlNTTFTTll2MVBt?= =?utf-8?B?UENSMnU4SFlLYXUyUEhYS0t5aEQ5Nzk0eE82bERwRnp2SmVZdnNkcGRORVNs?= =?utf-8?B?bllRTTl2Z2lKVjNaV0JzNStPaElteWM5d0pzaVREUVdiOUtvSTVReHhWMWhw?= =?utf-8?B?Rno1Y3M5dGVsRUY1Q0lNWVRLQVc2RkwrYU5XdHI3S1hnZTZKU29nS2pHNFp1?= =?utf-8?B?b0dnUjNlWDdFZlNwVmZLKzlnQ2VTTUhvbzJmMndOQ2I3TDBEWkVvT2Qyc1k0?= =?utf-8?B?R2pWTEVkRGhXemJ6aU50STFXbTBpK3RQQnJyWU5TdnNNekhOUnJ6MGQ4MzY5?= =?utf-8?B?SWZXV3pzbC9Xb2UwN3g1TGpsRnJ5TEd2MXQ1blVUY0dTTG9nbStwMk5FNFZ3?= =?utf-8?B?bzF5RVg1aGszYkkvTHoxaXg5TEtUTmZPZW4yTXdCcTJOZlUrM3NzSnJBN2Qz?= =?utf-8?B?V2ZHUThrcVQrdVFxcmVVNmZ2bEVIV1dSRXNibjJZdVRrcU5BKzMyNnFtQzBy?= =?utf-8?B?THlaY0pMR2tienFldDE1Z0hwZ1hoekhLVW1lYlVwR29aZ0pLbjJnSVlhMGpY?= =?utf-8?B?aHp1WmJqbzBHZUEzVVo1TkxaM3laYkZrK0xjUEpPcTI1Y0JzMG90QVZ3aFVo?= =?utf-8?Q?nPCWRqEC6MW7Q/cyT/WdAePNi?= 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: SN6PR11MB3504.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 19de5915-33fb-4a54-9ef2-08db67c3313b X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Jun 2023 01:53:44.5263 (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: KM/FuZ+4vTvCofwbotMjoKbsh9nvsFgX8vgxRbEBEGX+9wgnJWyfnTczJIpOrL5bvpRwUhwrNo+qX5eYva6dLA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR11MB4925 X-OriginatorOrg: intel.com 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 PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBNYXhpbWUgQ29xdWVsaW4gPG1h eGltZS5jb3F1ZWxpbkByZWRoYXQuY29tPg0KPiBTZW50OiBXZWRuZXNkYXksIEp1bmUgNywgMjAy MyAxMDo1OSBQTQ0KPiBUbzogWGlhLCBDaGVuYm8gPGNoZW5iby54aWFAaW50ZWwuY29tPjsgZGV2 QGRwZGsub3JnOw0KPiBkYXZpZC5tYXJjaGFuZEByZWRoYXQuY29tOyBta3BAcmVkaGF0LmNvbTsg ZmJsQHJlZGhhdC5jb207DQo+IGphc293YW5nQHJlZGhhdC5jb207IExpYW5nLCBDdW5taW5nIDxj dW5taW5nLmxpYW5nQGludGVsLmNvbT47IFhpZSwgWW9uZ2ppDQo+IDx4aWV5b25namlAYnl0ZWRh bmNlLmNvbT47IGVjaGF1ZHJvQHJlZGhhdC5jb207IGVwZXJlem1hQHJlZGhhdC5jb207DQo+IGFt b3Jlbm96QHJlZGhhdC5jb207IGx1bHVAcmVkaGF0LmNvbQ0KPiBTdWJqZWN0OiBSZTogW1BBVENI IHY1IDAwLzI2XSBBZGQgVkRVU0Ugc3VwcG9ydCB0byBWaG9zdCBsaWJyYXJ5DQo+IA0KPiANCj4g DQo+IE9uIDYvNy8yMyAwODo0OCwgWGlhLCBDaGVuYm8gd3JvdGU6DQo+ID4gSGkgTWF4aW1lLA0K PiA+DQo+ID4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+IEZyb206IE1heGltZSBD b3F1ZWxpbiA8bWF4aW1lLmNvcXVlbGluQHJlZGhhdC5jb20+DQo+ID4+IFNlbnQ6IFR1ZXNkYXks IEp1bmUgNiwgMjAyMyA0OjE4IFBNDQo+ID4+IFRvOiBkZXZAZHBkay5vcmc7IFhpYSwgQ2hlbmJv IDxjaGVuYm8ueGlhQGludGVsLmNvbT47DQo+ID4+IGRhdmlkLm1hcmNoYW5kQHJlZGhhdC5jb207 IG1rcEByZWRoYXQuY29tOyBmYmxAcmVkaGF0LmNvbTsNCj4gPj4gamFzb3dhbmdAcmVkaGF0LmNv bTsgTGlhbmcsIEN1bm1pbmcgPGN1bm1pbmcubGlhbmdAaW50ZWwuY29tPjsgWGllLA0KPiBZb25n amkNCj4gPj4gPHhpZXlvbmdqaUBieXRlZGFuY2UuY29tPjsgZWNoYXVkcm9AcmVkaGF0LmNvbTsg ZXBlcmV6bWFAcmVkaGF0LmNvbTsNCj4gPj4gYW1vcmVub3pAcmVkaGF0LmNvbTsgbHVsdUByZWRo YXQuY29tDQo+ID4+IENjOiBNYXhpbWUgQ29xdWVsaW4gPG1heGltZS5jb3F1ZWxpbkByZWRoYXQu Y29tPg0KPiA+PiBTdWJqZWN0OiBbUEFUQ0ggdjUgMDAvMjZdIEFkZCBWRFVTRSBzdXBwb3J0IHRv IFZob3N0IGxpYnJhcnkNCj4gPj4NCj4gPj4gVGhpcyBzZXJpZXMgaW50cm9kdWNlcyBhIG5ldyB0 eXBlIG9mIGJhY2tlbmQsIFZEVVNFLA0KPiA+PiB0byB0aGUgVmhvc3QgbGlicmFyeS4NCj4gPj4N Cj4gPj4gVkRVU0Ugc3RhbmRzIGZvciB2RFBBIGRldmljZSBpbiBVc2Vyc3BhY2UsIGl0IGVuYWJs ZXMNCj4gPj4gaW1wbGVtZW50aW5nIGEgVmlydGlvIGRldmljZSBpbiB1c2Vyc3BhY2UgYW5kIGhh dmUgaXQNCj4gPj4gYXR0YWNoZWQgdG8gdGhlIEtlcm5lbCB2RFBBIGJ1cy4NCj4gPj4NCj4gPj4g T25jZSBhdHRhY2hlZCB0byB0aGUgdkRQQSBidXMsIGl0IGNhbiBiZSB1c2VkIGVpdGhlciBieQ0K PiA+PiBLZXJuZWwgVmlydGlvIGRyaXZlcnMsIGxpa2UgdmlydGlvLW5ldCBpbiBvdXIgY2FzZSwg dmlhDQo+ID4+IHRoZSB2aXJ0aW8tdmRwYSBkcml2ZXIuIERvaW5nIHRoYXQsIHRoZSBkZXZpY2Ug aXMgdmlzaWJsZQ0KPiA+PiB0byB0aGUgS2VybmVsIG5ldHdvcmtpbmcgc3RhY2sgYW5kIGlzIGV4 cG9zZWQgdG8gdXNlcnNwYWNlDQo+ID4+IGFzIGEgcmVndWxhciBuZXRkZXYuDQo+ID4+DQo+ID4+ IEl0IGNhbiBhbHNvIGJlIGV4cG9zZWQgdG8gdXNlcnNwYWNlIHRoYW5rcyB0byB0aGUNCj4gPj4g dmhvc3QtdmRwYSBkcml2ZXIsIHZpYSBhIHZob3N0LXZkcGEgY2hhcmRldiB0aGF0IGNhbiBiZQ0K PiA+PiBwYXNzZWQgdG8gUUVNVSBvciBWaXJ0aW8tdXNlciBQTUQuDQo+ID4+DQo+ID4+IFdoaWxl IFZEVVNFIHN1cHBvcnQgaXMgYWxyZWFkeSBhdmFpbGFibGUgaW4gdXBzdHJlYW0NCj4gPj4gS2Vy bmVsLCBhIGNvdXBsZSBvZiBwYXRjaGVzIGFyZSByZXF1aXJlZCB0byBzdXBwb3J0DQo+ID4+IG5l dHdvcmsgZGV2aWNlIHR5cGU6DQo+ID4+DQo+ID4+IGh0dHBzOi8vZ2l0bGFiLmNvbS9tY29xdWVs aW4vbGludXgvLS90cmVlL3ZkdXNlX25ldHdvcmtpbmdfcmZjDQo+ID4+DQo+ID4+IEluIG9yZGVy IHRvIGF0dGFjaCB0aGUgY3JlYXRlZCBWRFVTRSBkZXZpY2UgdG8gdGhlIHZEUEENCj4gPj4gYnVz LCBhIHJlY2VudCBpcHJvdXRlMiB2ZXJzaW9uIGNvbnRhaW5pbmcgdGhlIHZkcGEgdG9vbCBpcw0K PiA+PiByZXF1aXJlZC4NCj4gPj4NCj4gPj4gQmVuY2htYXJrIHJlc3VsdHM6DQo+ID4+ID09PT09 PT09PT09PT09PT09PQ0KPiA+Pg0KPiA+PiBPbiB0aGlzIHYyLCBQVlAgcmVmZXJlbmNlIGJlbmNo bWFyayBoYXMgYmVlbiBydW4gJiBjb21wYXJlZCB3aXRoDQo+ID4+IFZob3N0LXVzZXIuDQo+ID4+ DQo+ID4+IFdoZW4gZG9pbmcgbWFjc3dhcCBmb3J3YXJkaW5nIGluIHRoZSB3b3Jsb2FkLCBubyBk aWZmZXJlbmNlIGlzIHNlZW4uDQo+ID4+IFdoZW4gZG9pbmcgaW8gZm9yd2FyZGluZyBpbiB0aGUg d29ya2xvYWQsIHdlIHNlZSA0JSBwZXJmb3JtYW5jZQ0KPiA+PiBkZWdyYWRhdGlvbiB3aXRoIFZE VVNFLCBjb21hcHJlZCB0byBWaG9zdC11c2VyL1ZpcnRpby11c2VyLiBJdCBpcw0KPiA+PiBleHBs YWluZWQgYnkgdGhlIHVzZSBvZiB0aGUgSU9UTEIgbGF5ZXIgaW4gdGhlIFZob3N0LWxpYnJhcnkg d2hlbiB1c2luZw0KPiA+PiBWRFVTRSwgd2hlcmVhcyBWaG9zdC11c2VyL1ZpcnRpby11c2VyIGRv ZXMgbm90IG1ha2UgdXNlIG9mIGl0Lg0KPiA+Pg0KPiA+PiBVc2FnZToNCj4gPj4gPT09PT09DQo+ ID4+DQo+ID4+IDEuIFByb2JlIHJlcXVpcmVkIEtlcm5lbCBtb2R1bGVzDQo+ID4+ICMgbW9kcHJv YmUgdmRwYQ0KPiA+PiAjIG1vZHByb2JlIHZkdXNlDQo+ID4+ICMgbW9kcHJvYmUgdmlydGlvLXZk cGENCj4gPj4NCj4gPj4gMi4gQnVpbGQgKHJlcXVpcmUgdmR1c2Uga2VybmVsIGhlYWRlcnMgdG8g YmUgYXZhaWxhYmxlKQ0KPiA+PiAjIG1lc29uIGJ1aWxkDQo+ID4+ICMgbmluamEgLUMgYnVpbGQN Cj4gPj4NCj4gPj4gMy4gQ3JlYXRlIGEgVkRVU0UgZGV2aWNlICh2ZHVzZTApIHVzaW5nIFZob3N0 IFBNRCB3aXRoDQo+ID4+IHRlc3RwbWQgKHdpdGggNCBxdWV1ZSBwYWlycyBpbiB0aGlzIGV4YW1w bGUpDQo+ID4+ICMgLi9idWlsZC9hcHAvZHBkay10ZXN0cG1kIC0tbm8tcGNpIC0tDQo+ID4+IHZk ZXY9bmV0X3Zob3N0MCxpZmFjZT0vZGV2L3ZkdXNlL3ZkdXNlMCxxdWV1ZXM9NCAtLWxvZy1sZXZl bD0qOjkgIC0tIC1pDQo+IC0tDQo+ID4+IHR4cT00IC0tcnhxPTQNCj4gPj4NCj4gPj4gNC4gQXR0 YWNoIHRoZSBWRFVTRSBkZXZpY2UgdG8gdGhlIHZEUEEgYnVzDQo+ID4+ICMgdmRwYSBkZXYgYWRk IG5hbWUgdmR1c2UwIG1nbXRkZXYgdmR1c2UNCj4gPj4gPT4gVGhlIHZpcnRpby1uZXQgbmV0ZGV2 IHNob3dzIHVwIChldGgwIGhlcmUpDQo+ID4+ICMgaXAgbCBzaG93IGV0aDANCj4gPj4gMjE6IGV0 aDA6IDxCUk9BRENBU1QsTVVMVElDQVNULFVQLExPV0VSX1VQPiBtdHUgMTUwMCBxZGlzYyBtcSBz dGF0ZSBVUA0KPiA+PiBtb2RlIERFRkFVTFQgZ3JvdXAgZGVmYXVsdCBxbGVuIDEwMDANCj4gPj4g ICAgICBsaW5rL2V0aGVyIGMyOjczOmVhOmE3OjY4OjZkIGJyZCBmZjpmZjpmZjpmZjpmZjpmZg0K PiA+Pg0KPiA+PiA1LiBTdGFydC9zdG9wIHRyYWZmaWMgaW4gdGVzdHBtZA0KPiA+PiB0ZXN0cG1k PiBzdGFydA0KPiA+PiB0ZXN0cG1kPiBzaG93IHBvcnQgc3RhdHMgMA0KPiA+PiAgICAjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMgTklDIHN0YXRpc3RpY3MgZm9yIHBvcnQgMA0KPiA+PiAjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMNCj4gPj4gICAgUlgtcGFja2V0czogMTEgICAgICAgICBSWC1taXNz ZWQ6IDAgICAgICAgICAgUlgtYnl0ZXM6ICAxNDgyDQo+ID4+ICAgIFJYLWVycm9yczogMA0KPiA+ PiAgICBSWC1ub21idWY6ICAwDQo+ID4+ICAgIFRYLXBhY2tldHM6IDEgICAgICAgICAgVFgtZXJy b3JzOiAwICAgICAgICAgIFRYLWJ5dGVzOiAgNjINCj4gPj4NCj4gPj4gICAgVGhyb3VnaHB1dCAo c2luY2UgbGFzdCBzaG93KQ0KPiA+PiAgICBSeC1wcHM6ICAgICAgICAgICAgMCAgICAgICAgICBS eC1icHM6ICAgICAgICAgICAgMA0KPiA+PiAgICBUeC1wcHM6ICAgICAgICAgICAgMCAgICAgICAg ICBUeC1icHM6ICAgICAgICAgICAgMA0KPiA+Pg0KPiA+Pg0KPiAjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0K PiA+PiAjIw0KPiA+PiB0ZXN0cG1kPiBzdG9wDQo+ID4+DQo+ID4+IDYuIERldGFjaCB0aGUgVkRV U0UgZGV2aWNlIGZyb20gdGhlIHZEUEEgYnVzDQo+ID4+ICMgdmRwYSBkZXYgZGVsIHZkdXNlMA0K PiA+Pg0KPiA+PiA3LiBRdWl0IHRlc3RwbWQNCj4gPj4gdGVzdHBtZD4gcXVpdA0KPiA+Pg0KPiA+ PiBLbm93biBpc3N1ZXMgJiByZW1haW5pbmcgd29yazoNCj4gPj4gPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09DQo+ID4+IC0gRml4IGlzc3VlIGluIEZEIG1hbmFnZXIgKHN0aWxsIHBvbGxp bmcgd2hpbGUgRkQgaGFzIGJlZW4gcmVtb3ZlZCkNCj4gPj4gLSBBZGQgTmV0bGluayBzdXBwb3J0 IGluIFZob3N0IGxpYnJhcnkNCj4gPj4gLSBTdXBwb3J0IGRldmljZSByZWNvbm5lY3Rpb24NCj4g Pj4gICAtPiBhIHRlbXBvcmFyeSBwYXRjaCB0byBzdXBwb3J0IHJlY29ubmVjdGlvbiB2aWEgYSB0 bXBmcyBmaWxlIGlzDQo+ID4+IGF2YWlsYWJsZSwNCj4gPj4gICAgICB1cHN0cmVhbSBzb2x1dGlv biB3b3VsZCBiZSBpbi1rZXJuZWwgYW5kIGlzIGJlaW5nIGRldmVsb3BlZC4NCj4gPj4gICAtPiBo dHRwczovL2dpdGxhYi5jb20vbWNvcXVlbGluL2RwZGstbmV4dC12aXJ0aW8vLQ0KPiA+PiAvY29t bWl0LzVhZDA2Y2UxNDE1OWE5Y2UzNmVlMTY4ZGQxM2VmMzg5Y2VjOTExMzcNCj4gPj4gLSBTdXBw b3J0IHBhY2tlZCByaW5nDQo+ID4+IC0gUHJvdmlkZSBtb3JlIHBlcmZvcm1hbmNlIGJlbmNobWFy ayByZXN1bHRzDQo+ID4+DQo+ID4+IENoYW5nZXMgaW4gdjU6DQo+ID4+ID09PT09PT09PT09PT09 DQo+ID4+IC0gRGVsYXkgc3RhcnRpbmcvc3RvcHBpbmcgdGhlIGRldmljZSB0byBhZnRlciBoYXZp bmcgcmVwbGllZCB0byB0aGUNCj4gVkRVU0UNCj4gPj4gICAgZXZlbnQgaW4gb3JkZXIgdG8gYXZv aWQgYSBkZWFkbG9jayBlbmNvdW50ZXJlZCB3aGVuIHRlc3Rpbmcgd2l0aCBPVlMuDQo+ID4NCj4g PiBDb3VsZCB5b3UgZXhwbGFpbiBtb3JlIHRvIGhlbHAgbWUgdW5kZXJzdGFuZCB0aGUgZGVhZGxv Y2sgaXNzdWU/DQo+IA0KPiBTdXJlLg0KPiANCj4gVGhlIFY1IGZpeGVzIGFuIEFCQkEgZGVhZGxv Y2sgaW52b2x2aW5nIE9WUyBtdXRleCBhbmQga2VybmVsDQo+IHJ0bmxfbG9jaygpLCB0d28gT1ZT IHRocmVhZHMgYW5kIHRoZSB2ZHBhIHRvb2wgcHJvY2Vzcy4NCj4gDQo+IFdlIGhhdmUgYW4gT1ZT IGJyaWRnZSB3aXRoIGEgbWx4NSBwb3J0IGFscmVhZHkgYWRkZWQuDQo+IFdlIGFkZCB0aGUgdmR1 c2UgcG9ydCB0byB0aGUgc2FtZSBicmlkZ2UuDQo+IFRoZW4gd2UgdXNlIHRoZSBpcHJvdXRlMiB2 ZHBhIHRvb2wgdG8gYXR0YWNoIHRoZSB2ZHVzZSBkZXZpY2UgdGhlIHRoZQ0KPiBrZXJuZWwgdmRw YSBidXMuIHdoZW4gZG9pbmcgdGhpcyB0aGUgcnRubCBsb2NrIGlzIHRha2VuIHdoZW4gdGhlIHZp cnRpby0NCj4gbmV0IGRldmljZSBpcyBwcm9iZWQsIGFuZCBWRFVTRV9TRVRfU1RBVFVTIGdldHMg c2VudCBhbmQgd2FpdHMgZm9yIGl0cw0KPiByZXBseS4NCj4gDQo+IFRoaXMgVkRVU0VfU0VUX1NU QVRVUyByZXF1ZXN0IGlzIGhhbmRsZWQgYnkgdGhlIERQREsgVkRVU0UgZXZlbnQNCj4gaGFuZGxl ciwgYW5kIGlmIERSSVZFUl9PSyBiaXQgaXMgc2V0IHRoZSBWaHNvdCAubmV3X2RldmljZSgpIGNh bGxiYWNrIGlzDQo+IGNhbGxlZCwgd2hpY2ggdHJpZ2dlcnMgYSBicmlkZ2UgcmVjb25maWd1cmF0 aW9uLg0KPiANCj4gT24gYnJpZGdlIHJlY29uZmlndXJhdGlvbiwgdGhlIG1seDUgcG9ydCB0YWtl cyB0aGUgT1ZTIG11dGV4IGFuZA0KPiBwZXJmb3JtcyBhbiBpb2N0bCgpIHdoaWNoIHRyaWVzIHRv IHRha2UgdGhlIHJ0bmwgbG9jaywgYnV0IGlzIGlzIGFscmVhZHkNCj4gb3duZWQgYnkgdGhlIHZk cGEgdG9vbC4NCj4gDQo+IFRoZSB2ZHVzZV9ldmVudHMgdGhyZWFkIGlzIHN0dWNrZWQgd2FpdGlu ZyBmb3IgdGhlIE9WUyBtdXRleCwgc28gdGhlDQo+IHJlcGx5IHRvIHRoZSBWRFVTRV9TRVRfU1RB VFVTIGV2ZW50IGlzIG5ldmVyIHNlbnQsIGFuZCB0aGUgdmRwYSB0b29sDQo+IHByb2Nlc3MgaXMg c3R1Y2tlZCBmb3IgMzAgc2Vjb25kcywgdW50aWwgYSB0aW1lb3V0IGhhcHBlbnMuDQo+IA0KPiBX aGVuIHRoZSB0aW1lb3VydCBoYXBwZW4sIGV2ZXJ5dGhpbmcgaXMgdW5ibG9ja2VkLCBidXQgdGhl IFZEVVNFIGRldmljZQ0KPiBoYXMgYmVlbiBtYXJrZWQgYXMgYnJva2VuLCBhbmQgc28gbm90IHVz YWJsZSBhbnltb3JlLg0KPiANCj4gSSBjb3VsZCByZXByb2R1Y2UgYW5kIHByb3ZpZGUgeW91IHRo ZSBiYWNrdHJhY2VzIG9mIHRoZSBkaWZmZXJlbnQNCj4gdGhyZWFkcyBpZiB5b3Ugd2lzaC4NCj4g DQo+IEFueXdheSwgSSB0aGluayBpdCBtYWtlcyBzZW5zZSB0byBwZXJmb3JtIHRoZSBkZXZpY2Ug c3RhcnR1cCBhZnRlcg0KPiBoYXZpbmcgcmVwbGllZCB0byBWRFVTRV9TRVRfU1RBVFVTIHJlcXVl c3QsIGFzIGl0IGp1c3QgbWVhbiB0aGUgZGV2aWNlDQo+IGhhcyB0YWtlbiBpbnRvIGFjY291bnQg dGhlIG5ldyBzdGF0dXMgb2YgdGhlIGRyaXZlci4NCj4gDQo+IEhvcGUgaXQgY2xhcmlmaWVzLCBs ZXQgbWUga25vdyBpZiB5b3UgbmVlZCBtb3JlIGRldGFpbHMuDQoNCkl0J3MgdmVyeSBjbGVhciEg VGhhbmtzIE1heGltZSBmb3IgdGhlIGV4cGxhbmF0aW9uIQ0KDQovQ2hlbmJvDQoNCj4gDQo+IFRo YW5rcywNCj4gTWF4aW1lDQo+IA0KPiA+IFRoYW5rcywNCj4gPiBDaGVuYm8NCj4gPg0KPiA+PiAt IE1lbnRpb24gcmVjb25uZWN0aW9uIHN1cHBvcnQgbGFjayBpbiB0aGUgcmVsZWFzZSBub3RlLg0K PiA+Pg0KPiA+PiBDaGFuZ2VzIGluIHY0Og0KPiA+PiA9PT09PT09PT09PT09PQ0KPiA+PiAtIEFw cGxpZWQgcGF0Y2ggMSBhbmQgcGF0Y2ggMiBmcm9tIHYzDQo+ID4+IC0gUmViYXNlZCBvbiB0b3Ag b2YgRWVsY28gc2VyaWVzDQo+ID4+IC0gRml4IGNvcmVkdW1wIGNsZWFyIGluIElPVExCIGNhY2hl IHJlbW92YWwgKERhdmlkKQ0KPiA+PiAtIFJlbW92ZSB1bmVlZGVkIHJldCB2YXJpYWJsZSBpbiB2 aG9zdF92cmluZ19pbmplY3RfaXJxIChEYXZpZCkNCj4gPj4gLSBGaXhlZCByZWxlYXNlIG5vdGUg KERhdmlkLCBDaGVuYm8pDQo+ID4+DQo+ID4+IENoYW5nZXMgaW4gdjIvdjM6DQo+ID4+ID09PT09 PT09PT09PT09PT09DQo+ID4+IC0gRml4ZWQgbWVtX3NldF9kdW1wKCkgcGFyYW1ldGVyIChwYXRj aCA0KQ0KPiA+PiAtIEZpeGVkIGFjY2lkZW50YWwgY29tbWVudCBjaGFuZ2UgKHBhdGNoIDcsIENo ZW5ibykNCj4gPj4gLSBDaGFuZ2UgZnJvbSBfX2J1aWx0aW5fY3R6IHRvIF9fYnVpbHRpbl9jdHps bCAocGF0Y2ggOSwgQ2hlbmJvKQ0KPiA+PiAtIG1vdmUgY2hhbmdlIGZyb20gcGF0Y2ggMTIgdG8g MTMgKENoZW5ibykNCj4gPj4gLSBFbmFibGUgbG9ja3MgYW5ub3RhdGlvbiBmb3IgY29udHJvbCBx dWV1ZSAoUGF0Y2ggMTcpDQo+ID4+IC0gU2VuZCBjb250cm9sIHF1ZXVlIG5vdGlmaWNhdGlvbiB3 aGVuIHVzZWQgZGVzY3JpcHRvcnMgZW5xdWV1ZWQgKFBhdGNoDQo+IDE3KQ0KPiA+PiAtIExvY2sg Y29udHJvbCBxdWV1ZSBJT1RMQiBsb2NrIChQYXRjaCAxNykNCj4gPj4gLSBGaXggZXJyb3IgcGF0 aCBpbiB2aXJ0aW9fbmV0X2N0cmxfcG9wKCkgKFBhdGNoIDE3LCBDaGVuYm8pDQo+ID4+IC0gU2V0 IFZEVVNFIGRldiBGRCBhcyBOT05CTE9DSyAoUGF0Y2ggMTgpDQo+ID4+IC0gRW5hYmxlIG1vcmUg VmlydGlvIGZlYXR1cmVzIChQYXRjaCAxOCkNCj4gPj4gLSBSZW1vdmUgY2FsbHMgdG8gcHRocmVh ZF9zZXRjYW5jZWxzdGF0ZSgpIChQYXRjaCAyMikNCj4gPj4gLSBBZGQgY2FsbHMgdG8gZmRzZXRf cGlwZV9ub3RpZnkoKSB3aGVuIGFkZGluZyBhbmQgZGVsZXRpbmcgRkRzIGZyb20gYQ0KPiBzZXQN Cj4gPj4gKFBhdGNoIDIyKQ0KPiA+PiAtIFVzZSBSVEVfRElNKCkgdG8gZ2V0IHJlcXVlc3RzIHN0 cmluZyBhcnJheSBzaXplIChQYXRjaCAyMikNCj4gPj4gLSBTZXQgcmVwbHkgcmVzdWx0IGZvciBJ T1RMQiB1cGRhdGUgbWVzc2FnZSAoUGF0Y2ggMjUsIENoZW5ibykNCj4gPj4gLSBGaXggcXVldWVz IGVuYWJsZW1lbnQgd2l0aCBtdWx0aXF1ZXVlIChQYXRjaCAyNikNCj4gPj4gLSBNb3ZlIGtpY2tm ZCBjcmVhdGlvbiBmb3IgYmV0dGVyIGxvZ2dpbmcgKFBhdGNoIDI2KQ0KPiA+PiAtIEltcHJvdmUg bG9nZ2luZyAoUGF0Y2ggMjYpDQo+ID4+IC0gVW5pbnN0YWxsIGN2cSBraWNrZmQgaW4gY2FzZSBv ZiBoYW5kbGVyIGluc3RhbGxhdGlvbiBmYWlsdXJlIChQYXRjaA0KPiAyNykNCj4gPj4gLSBFbmFi bGUgQ1ZRIG5vdGlmaWNhdGlvbnMgb25jZSBoYW5kbGVyIGlzIGluc3RhbGxlZCAoUGF0Y2ggMjcp DQo+ID4+IC0gRG9uJ3QgYWR2ZXJ0aXNlIG11bHRpcXVldWUgYW5kIGNvbnRyb2wgcXVldWUgaWYg YXBwIG9ubHkgcmVxdWVzdA0KPiBzaW5nbGUNCj4gPj4gcXVldWUgcGFpciAoUGF0Y2ggMjcpDQo+ ID4+IC0gQWRkIHJlbGVhc2Ugbm90ZXMNCj4gPj4NCj4gPj4gTWF4aW1lIENvcXVlbGluICgyNik6 DQo+ID4+ICAgIHZob3N0OiBmaXggSU9UTEIgZW50cmllcyBvdmVybGFwIGNoZWNrIHdpdGggcHJl dmlvdXMgZW50cnkNCj4gPj4gICAgdmhvc3Q6IGFkZCBoZWxwZXIgb2YgSU9UTEIgZW50cmllcyBj b3JlZHVtcA0KPiA+PiAgICB2aG9zdDogYWRkIGhlbHBlciBmb3IgSU9UTEIgZW50cmllcyBzaGFy ZWQgcGFnZSBjaGVjaw0KPiA+PiAgICB2aG9zdDogZG9uJ3QgZHVtcCB1bm5lZWRlZCBwYWdlcyB3 aXRoIElPVExCDQo+ID4+ICAgIHZob3N0OiBjaGFuZ2UgdG8gc2luZ2xlIElPVExCIGNhY2hlIHBl ciBkZXZpY2UNCj4gPj4gICAgdmhvc3Q6IGFkZCBvZmZzZXQgZmllbGQgdG8gSU9UTEIgZW50cmll cw0KPiA+PiAgICB2aG9zdDogYWRkIHBhZ2Ugc2l6ZSBpbmZvIHRvIElPVExCIGVudHJ5DQo+ID4+ ICAgIHZob3N0OiByZXRyeSB0cmFuc2xhdGluZyBJT1ZBIGFmdGVyIElPVExCIG1pc3MNCj4gPj4g ICAgdmhvc3Q6IGludHJvZHVjZSBiYWNrZW5kIG9wcw0KPiA+PiAgICB2aG9zdDogYWRkIElPVExC IGNhY2hlIGVudHJ5IHJlbW92YWwgY2FsbGJhY2sNCj4gPj4gICAgdmhvc3Q6IGFkZCBoZWxwZXIg Zm9yIElPVExCIG1pc3Nlcw0KPiA+PiAgICB2aG9zdDogYWRkIGhlbHBlciBmb3IgaW50ZXJydXB0 IGluamVjdGlvbg0KPiA+PiAgICB2aG9zdDogYWRkIEFQSSB0byBzZXQgbWF4IHF1ZXVlIHBhaXJz DQo+ID4+ICAgIG5ldC92aG9zdDogdXNlIEFQSSB0byBzZXQgbWF4IHF1ZXVlIHBhaXJzDQo+ID4+ ICAgIHZob3N0OiBhZGQgY29udHJvbCB2aXJ0cXVldWUgc3VwcG9ydA0KPiA+PiAgICB2aG9zdDog YWRkIFZEVVNFIGRldmljZSBjcmVhdGlvbiBhbmQgZGVzdHJ1Y3Rpb24NCj4gPj4gICAgdmhvc3Q6 IGFkZCBWRFVTRSBjYWxsYmFjayBmb3IgSU9UTEIgbWlzcw0KPiA+PiAgICB2aG9zdDogYWRkIFZE VVNFIGNhbGxiYWNrIGZvciBJT1RMQiBlbnRyeSByZW1vdmFsDQo+ID4+ICAgIHZob3N0OiBhZGQg VkRVU0UgY2FsbGJhY2sgZm9yIElSUSBpbmplY3Rpb24NCj4gPj4gICAgdmhvc3Q6IGFkZCBWRFVT RSBldmVudHMgaGFuZGxlcg0KPiA+PiAgICB2aG9zdDogYWRkIHN1cHBvcnQgZm9yIHZpcnRxdWV1 ZSBzdGF0ZSBnZXQgZXZlbnQNCj4gPj4gICAgdmhvc3Q6IGFkZCBzdXBwb3J0IGZvciBWRFVTRSBz dGF0dXMgc2V0IGV2ZW50DQo+ID4+ICAgIHZob3N0OiBhZGQgc3VwcG9ydCBmb3IgVkRVU0UgSU9U TEIgdXBkYXRlIGV2ZW50DQo+ID4+ICAgIHZob3N0OiBhZGQgVkRVU0UgZGV2aWNlIHN0YXJ0dXAN Cj4gPj4gICAgdmhvc3Q6IGFkZCBtdWx0aXF1ZXVlIHN1cHBvcnQgdG8gVkRVU0UNCj4gPj4gICAg dmhvc3Q6IGFkZCBWRFVTRSBkZXZpY2Ugc3RvcA0KPiA+Pg0KPiA+PiAgIGRvYy9ndWlkZXMvcHJv Z19ndWlkZS92aG9zdF9saWIucnN0ICAgIHwgICA0ICsNCj4gPj4gICBkb2MvZ3VpZGVzL3JlbF9u b3Rlcy9yZWxlYXNlXzIzXzA3LnJzdCB8ICAxMiArDQo+ID4+ICAgZHJpdmVycy9uZXQvdmhvc3Qv cnRlX2V0aF92aG9zdC5jICAgICAgfCAgIDMgKw0KPiA+PiAgIGxpYi92aG9zdC9pb3RsYi5jICAg ICAgICAgICAgICAgICAgICAgIHwgMzMzICsrKysrKystLS0tLS0NCj4gPj4gICBsaWIvdmhvc3Qv aW90bGIuaCAgICAgICAgICAgICAgICAgICAgICB8ICA0NSArLQ0KPiA+PiAgIGxpYi92aG9zdC9t ZXNvbi5idWlsZCAgICAgICAgICAgICAgICAgIHwgICA1ICsNCj4gPj4gICBsaWIvdmhvc3QvcnRl X3Zob3N0LmggICAgICAgICAgICAgICAgICB8ICAxNyArDQo+ID4+ICAgbGliL3Zob3N0L3NvY2tl dC5jICAgICAgICAgICAgICAgICAgICAgfCAgNzIgKystDQo+ID4+ICAgbGliL3Zob3N0L3ZkdXNl LmMgICAgICAgICAgICAgICAgICAgICAgfCA2NDYNCj4gKysrKysrKysrKysrKysrKysrKysrKysr Kw0KPiA+PiAgIGxpYi92aG9zdC92ZHVzZS5oICAgICAgICAgICAgICAgICAgICAgIHwgIDMzICsr DQo+ID4+ICAgbGliL3Zob3N0L3ZlcnNpb24ubWFwICAgICAgICAgICAgICAgICAgfCAgIDEgKw0K PiA+PiAgIGxpYi92aG9zdC92aG9zdC5jICAgICAgICAgICAgICAgICAgICAgIHwgIDcwICsrLQ0K PiA+PiAgIGxpYi92aG9zdC92aG9zdC5oICAgICAgICAgICAgICAgICAgICAgIHwgIDU3ICsrLQ0K PiA+PiAgIGxpYi92aG9zdC92aG9zdF91c2VyLmMgICAgICAgICAgICAgICAgIHwgIDUxICstDQo+ ID4+ICAgbGliL3Zob3N0L3Zob3N0X3VzZXIuaCAgICAgICAgICAgICAgICAgfCAgIDIgKy0NCj4g Pj4gICBsaWIvdmhvc3QvdmlydGlvX25ldF9jdHJsLmMgICAgICAgICAgICB8IDI4NiArKysrKysr KysrKw0KPiA+PiAgIGxpYi92aG9zdC92aXJ0aW9fbmV0X2N0cmwuaCAgICAgICAgICAgIHwgIDEw ICsNCj4gPj4gICAxNyBmaWxlcyBjaGFuZ2VkLCAxNDA5IGluc2VydGlvbnMoKyksIDIzOCBkZWxl dGlvbnMoLSkNCj4gPj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgbGliL3Zob3N0L3ZkdXNlLmMNCj4g Pj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgbGliL3Zob3N0L3ZkdXNlLmgNCj4gPj4gICBjcmVhdGUg bW9kZSAxMDA2NDQgbGliL3Zob3N0L3ZpcnRpb19uZXRfY3RybC5jDQo+ID4+ICAgY3JlYXRlIG1v ZGUgMTAwNjQ0IGxpYi92aG9zdC92aXJ0aW9fbmV0X2N0cmwuaA0KPiA+Pg0KPiA+PiAtLQ0KPiA+ PiAyLjQwLjENCj4gPg0KDQo=