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 11E72A09E5; Wed, 19 Oct 2022 18:22:45 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 04C0442BB1; Wed, 19 Oct 2022 18:22:45 +0200 (CEST) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 0646942B8E for ; Wed, 19 Oct 2022 18:22:42 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1666196563; x=1697732563; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=vkdGq7upzi5ztfa+qHB6tsvJQWsuEVgSBQR0evXCkoY=; b=I9N/D7MYmK9mn91CWARBQbJqV/kr1mgXkmGGDxIZS0ZxaeURBaBUQoNE CkHaIhEjGY3DpoaGyos04DK5EYomvaQPzDrWbNYyaBvTnwfIsjU6JzCHr d5/dunhMndD1BYoxTIZSnTtjd2kZEwVz775z25tp56F/wakjEOjA6/IQD 9NRKupYl8mHnDWQmkVLkA6vEamzeTZuEqSmXlPNzzswcyzulK20eVKthQ Sy6jIHOjDacmGInxJXguKFR6YJWdAfaedJEZ/IwO8LNwacwFAfgDH0nKr rIfLohqEKra6iRniyJQsKIYYiMrd7PhGZmbDOyga9rYxHz8xiGSRstp0o w==; X-IronPort-AV: E=McAfee;i="6500,9779,10505"; a="307568591" X-IronPort-AV: E=Sophos;i="5.95,196,1661842800"; d="scan'208";a="307568591" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 19 Oct 2022 09:20:37 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10505"; a="754656798" X-IronPort-AV: E=Sophos;i="5.95,196,1661842800"; d="scan'208";a="754656798" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by orsmga004.jf.intel.com with ESMTP; 19 Oct 2022 09:20:37 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) 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.2375.31; Wed, 19 Oct 2022 09:20:37 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) 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.2375.31; Wed, 19 Oct 2022 09:20:36 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31 via Frontend Transport; Wed, 19 Oct 2022 09:20:36 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.48) 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.2375.31; Wed, 19 Oct 2022 09:20:33 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Qs0gwXq/BV+RI6rQ38SF8jxDV1kNkc5Iz9P2vnoSWUYAlMko+H4c4hneZHolq/sN4nTMvH84+QL60PY4AYWpoMnsdMbwvQnENJ+SvnSBd3DPyJM0bVP6qShUcKAZEL4B3oLhkEeFm+773ATrie3owVHQF7LNUDo115LT/PZ1QTpom2HTijrqbfFIZYzIictzfwr8aVz0B2/T2Cyb6W+vCNsMYKkVpglvsErNKkX8z0TA95fwWXtLroo5U6qBj9Lhfyf6ER/rrkZ2VS5OWKHAZxtBeudCvRBjaV1AbA3BqLC9hC5eZbUorO3eNYItI39cUpcq8SNlNt8omqW9qWcP0g== 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=vkdGq7upzi5ztfa+qHB6tsvJQWsuEVgSBQR0evXCkoY=; b=LwhgQJNVNwhT9ukEPPLcW6zEPMruj5D7xnKYeDzzwZKEGwRdqyv5s/x9zzFK04mZiFJHL8rxIm1NP/DeyB+Bz8vVLw/xGDCkp9jIfljzG7CkC7/uagU5yW6yRRuFN7ru5Ax71Ftw6Gw1ajDMGLSu7kgaF14B/68WtOUsiIds6ib3wP0X9ZtcHjsB1UMi1n5rRYLq3w5YsA2/xvuTGTEJAWjSVzHZJ5mwDOXl17Jz/mEFjqISF/Bdn1PRmJVSg7xm8Z+ICA4XgOKsvMuyZsS7WHCh1+JrN6YOQBFkxAMmZTmemaYHwbe9u868dIw5xP/7Wt1jYS6mSNRwXTEYxaLaHg== 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 DM4PR11MB5534.namprd11.prod.outlook.com (2603:10b6:5:391::22) by CO1PR11MB4785.namprd11.prod.outlook.com (2603:10b6:303:6f::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.34; Wed, 19 Oct 2022 16:20:32 +0000 Received: from DM4PR11MB5534.namprd11.prod.outlook.com ([fe80::51c4:e07e:d1e6:7d81]) by DM4PR11MB5534.namprd11.prod.outlook.com ([fe80::51c4:e07e:d1e6:7d81%9]) with mapi id 15.20.5723.033; Wed, 19 Oct 2022 16:20:32 +0000 From: "Li, Xiaoyun" To: Ferruh Yigit , "Guo, Junfeng" , "Zhang, Qi Z" , "Wu, Jingjing" , Maxime Coquelin , "Xia, Chenbo" CC: "dev@dpdk.org" , "awogbemila@google.com" , "Richardson, Bruce" , "Lin, Xueqin" , "Wang, Haiyue" , "Zhang, Helin" , Thomas Monjalon Subject: RE: [PATCH v5 3/8] net/gve: add support for device initialization Thread-Topic: [PATCH v5 3/8] net/gve: add support for device initialization Thread-Index: AQHY3JHELIEGhPKu2kqN/dDk5TsZUq4VyYCAgAAlnnA= Date: Wed, 19 Oct 2022 16:20:31 +0000 Message-ID: References: <20220927073255.1803892-2-junfeng.guo@intel.com> <20221010101757.878317-1-junfeng.guo@intel.com> <20221010101757.878317-4-junfeng.guo@intel.com> In-Reply-To: Accept-Language: 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.500.17 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: DM4PR11MB5534:EE_|CO1PR11MB4785:EE_ x-ms-office365-filtering-correlation-id: d551887d-6405-491d-d2d2-08dab1edd843 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: dcpZpsqlW7YWUusKa9N+RWsVYDyX+HM6dAvkKgQD8zWC+Le562pYON7OKeaGyJ8e76UVfUcW7uFUdxeDaTUAybwbNVerShyUHAaVyvbt0zv0vsz7sroH1IGWLU+ah9flUSWltph9+uUMn9INA1FUv/Www3tHQDZu/KxOEG0IedneNLj8ZK9BiFSYjG4oP7iL/GPrdNUI1k4EJzGcneJh/dg815CLjWQIOQ/76SvmQoYlVWITbbR+xyeLYGHXpyXdQ0rL1TTV+5nzx+V802KkcMmVQTfaTfNQnsmTknm5D2xCvGFjp/likcgWWaClv/42QinXnm9yltB4MMWW88+CzQ7UmT9JaGOYAvP+QQxkJ2Q/cjsjCyVrMXd933uZgaDxOS8a3APlcf1u70el0z+hhVdOz+4JAF1fUU8Lm960p3e3U0hR4poXWF8u6wNDazcANLC97cWeZNWLG0XJDpfZiA60uiC20EepjoLSYW8MJb42buNA9MR3DcOPiNP/XH++Im/2qXrIv6MNQTqCVUHytEE49tlGLIMqICSTondS4gZz582hGdbtQs3T1qhMelTPKRyJz2IEtG76voheiSu63G/CCoNR1bRJEKqPC5T/BFu7fM7gyQCC5IIEQK4W21N/hLn0wjppwslZOGM6gThlVglP64csJjxmtid7XG3uLoBtQIe8Thh3nzePuyuoMzzhDezUwWtOH9KzuQbfDrb0avLuHTHEaJo60n3vApo5tpfgc8yiD4GxMNs9+ChTdv2BVhA/ZyUGfcxA0WrJ0p3ju3kFyDwSUmslWsxUrvTmDBy73YFBQW8jMtqPPfkg9xZj x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM4PR11MB5534.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(376002)(39860400002)(396003)(136003)(366004)(346002)(451199015)(6636002)(26005)(9686003)(6506007)(7696005)(41300700001)(86362001)(83380400001)(54906003)(53546011)(110136005)(8676002)(66446008)(64756008)(66476007)(4326008)(76116006)(66946007)(66556008)(8936002)(5660300002)(55016003)(52536014)(316002)(966005)(921005)(82960400001)(38100700002)(71200400001)(2906002)(33656002)(186003)(122000001)(478600001)(38070700005); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?aVl3dU90UmhaVE9Zb0tDYnVPMjZqdHlTaVY1VUZGTDYvR0xZOFBFMFpXTlph?= =?utf-8?B?NkhjTkl3V0hjMjJFNlozV3pjTkdqRDJZU0wxbDNDUkZGZVlLS2RDL0dqd1A2?= =?utf-8?B?VWt5UVJrSmNmaCtNTko5RUk1TVpUUzFRd2djRTBGRmhmTVRXQnVwQ25HMVo5?= =?utf-8?B?dHhmRDczc1dUazZEdVo1b0drcTRIWDFyb3lOOHRDUmQralJJOWpwWTh3UHlB?= =?utf-8?B?OFMyeVJ5S0NLd0lLV084OWpWbXJoRmJYWHY3ZCtmTzNzcVBVVXlxYXUwWC9v?= =?utf-8?B?SWpFajQ4bmM2SGFvOW9FUGVQb0dXQ0IrRk14WStwVFJ5dk85N3VhWGJKN0JJ?= =?utf-8?B?UkN0TkFtc05KblVXQ0psbWdWWkMyTzNwa2VZVHBhYlBGM09QRkg5bE16Nnkw?= =?utf-8?B?NDZORWQxem82QTFiZVNxSk9iQzBlMGw5blltQzQ5UGozbXZXdGJONnNnSWRx?= =?utf-8?B?YkFPVHg0NlduRGorMExVMjJKeitUbHFSVjJ4NVl2Y0Q3ZXVCM1RxWW15S052?= =?utf-8?B?ZjF4NWF6YXl0N2c3SE1MSzQwVTAyTXJYejhudmNPblZvbEJSREFQeXJMa0Rt?= =?utf-8?B?RE1YU3pSQnZKbTl2SEdNNnUwWmdoZzMrLzBubFRIZ2hQbXl4Qk12Y3d5Z0kx?= =?utf-8?B?MU85R2NMY09XRnROWEhiVFZqNFY0anVuWG5LNk1oMSt0UHlENmtVcldUMm5S?= =?utf-8?B?bitaR2g5OFVCeStCVjVxcFlUR0R1VkRyQ3dETm1PWjZad0pMSEE2WStVb2ds?= =?utf-8?B?d3dGcXNvaThYeWI3S1crbEpXSHdmR256dE9BUGFjeTk3bGhCWUZhYmljcjdv?= =?utf-8?B?VEtuRnNTWmk5N05BZXBJblhuVjhYUGRBM0QrN0o0Q3FjQXZEMnF6MUc3aXh5?= =?utf-8?B?QVdOcFFyMjE3SG9HVjRlSkFjbVVnTjNqcFlCMW1pSzE0TkFMdFNSR044a1E0?= =?utf-8?B?YjQra010OXVtTzBGYWxTZVJhakRCZUpEVHFUWnk5MEhNTGR6MkM1WWNLL1U0?= =?utf-8?B?NWw5R0VEZWJVTXpvMHVPenNDQXd6MFY1bGZZY2N1TU5kU21Pd3RoeG9xUnhT?= =?utf-8?B?eFBZYWRCNGRkaW5aR3ZKU0poVkljam50ZC91SnRiRTh6Q0F3WXJmNFJMTGh3?= =?utf-8?B?MWRZdi9tUmZ1R2JZdGZiS3dCTzZQdElPYnNoNFBOaGx4TGVvMXNuQUVBVHZG?= =?utf-8?B?V0Mra1pDbHE4eEl5ZFZNSUs1TmZ5S2tXTEZzT20zTlMxMUxwNmtreDZMUHRy?= =?utf-8?B?b3IxVDJkSTFyekNhazN5QWxuR3Q2NTdiQTdhc2xKUkpvUElBQ3Y0eldmLzQ0?= =?utf-8?B?Ym9qc1pqSXd0VEt0a25JVGJsdm5DcHJDM215NVlEZGVrVDBLVXBRdmhSZFBU?= =?utf-8?B?dzd3SGdNV042emVEWGxIcnhpdnVOWEE2SjNGd1lHRmVGWW1VK1VHT0hsTmll?= =?utf-8?B?SW5EQlF4NHVoY1RHMUUyV0JJb3MwNzZJN29wQkd4d2FBcS9ROFQ1Rk0wb1Jq?= =?utf-8?B?MWxCTTFWSDE4V014amxSOTEySFBKM00zWmZSQy96ZlNhWmFiRUJ6dEpYNENw?= =?utf-8?B?cTBMYlZreWpIYkhzbDZHK1I2REpMdENEUGQwclZLQmFKQ0lVcFRlQmtQdFI0?= =?utf-8?B?S3JaUy94UVVISFByVXRuc0VLZExaSkRQM0RHdkY1VXVxV0todTZHeU5YeU9I?= =?utf-8?B?MHNFRXFGOHlLaXVNSVJ2SUZlRzQ3K2lwQWdWbE5RRE5lRHhneDZUcnZqSVpE?= =?utf-8?B?eFNIUFlHamFkS3U4SW1qTFVESWtsTE1KREpSZ2VhaHBRR2xrQUc4bGZSRUEx?= =?utf-8?B?NlRFOGttTHYzK1hsVnJSaHRXQlQvWHlneXRmaHczcFVVOUhNcllCS1FqcjNF?= =?utf-8?B?aVVXdXN4Uk9QNGpsOE9FR2ozLzJQQlZmWXArRHd2WWhUV3VBcUh4ZEliRGl1?= =?utf-8?B?UDUwY2I3NEVkTG5ObTZFaGN5YVdZY0lldUdER0IzZlZZZTFFUy9vRFpYckUy?= =?utf-8?B?OXpzamZVQTdqWW1RdkhURHNuMGdqdE9xV0orRFZpYnVKWUVjT3ZZQ2RiRHpH?= =?utf-8?B?S3lIc3ZsbGQrUmVleFpTU3FFUmFWVnI0c0R0SUQyUk5ZVW9sN0k4eFFtNmFB?= =?utf-8?Q?lz0YQUXIaLga9IqW14u3iiAAT?= 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: DM4PR11MB5534.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d551887d-6405-491d-d2d2-08dab1edd843 X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Oct 2022 16:20:31.9410 (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: hyxv71d9O1DFPHhowQZJLgYkWepaJ+yL4uyJh/AVmUXbtbzC3Fk3ymW7rF1lsBj/gprOyYalGLN3bEhK1lRBtQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB4785 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 SGkNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBGZXJydWggWWlnaXQg PGZlcnJ1aC55aWdpdEBhbWQuY29tPg0KPiBTZW50OiBXZWRuZXNkYXksIE9jdG9iZXIgMTksIDIw MjIgMTQ6NDcNCj4gVG86IEd1bywgSnVuZmVuZyA8anVuZmVuZy5ndW9AaW50ZWwuY29tPjsgWmhh bmcsIFFpIFoNCj4gPHFpLnouemhhbmdAaW50ZWwuY29tPjsgV3UsIEppbmdqaW5nIDxqaW5namlu Zy53dUBpbnRlbC5jb20+OyBNYXhpbWUNCj4gQ29xdWVsaW4gPG1heGltZS5jb3F1ZWxpbkByZWRo YXQuY29tPjsgWGlhLCBDaGVuYm8NCj4gPGNoZW5iby54aWFAaW50ZWwuY29tPg0KPiBDYzogZGV2 QGRwZGsub3JnOyBMaSwgWGlhb3l1biA8eGlhb3l1bi5saUBpbnRlbC5jb20+Ow0KPiBhd29nYmVt aWxhQGdvb2dsZS5jb207IFJpY2hhcmRzb24sIEJydWNlIDxicnVjZS5yaWNoYXJkc29uQGludGVs LmNvbT47DQo+IExpbiwgWHVlcWluIDx4dWVxaW4ubGluQGludGVsLmNvbT47IFdhbmcsIEhhaXl1 ZQ0KPiA8aGFpeXVlLndhbmdAaW50ZWwuY29tPjsgWmhhbmcsIEhlbGluIDxoZWxpbi56aGFuZ0Bp bnRlbC5jb20+OyBUaG9tYXMNCj4gTW9uamFsb24gPHRob21hc0Btb25qYWxvbi5uZXQ+DQo+IFN1 YmplY3Q6IFJlOiBbUEFUQ0ggdjUgMy84XSBuZXQvZ3ZlOiBhZGQgc3VwcG9ydCBmb3IgZGV2aWNl IGluaXRpYWxpemF0aW9uDQo+IA0KPiBPbiAxMC8xMC8yMDIyIDExOjE3IEFNLCBKdW5mZW5nIEd1 byB3cm90ZToNCj4gDQo+ID4NCj4gPiBTdXBwb3J0IGRldmljZSBpbml0IGFuZCBhZGQgZm9sbG93 aW5nIGRldm9wcyBza2VsZXRvbjoNCj4gPiAgIC0gZGV2X2NvbmZpZ3VyZQ0KPiA+ICAgLSBkZXZf c3RhcnQNCj4gPiAgIC0gZGV2X3N0b3ANCj4gPiAgIC0gZGV2X2Nsb3NlDQo+ID4NCj4gPiBOb3Rl IHRoYXQgYnVpbGQgc3lzdGVtIChpbmNsdWRpbmcgZG9jKSBpcyBhbHNvIGFkZGVkIGluIHRoaXMg cGF0Y2guDQo+ID4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBIYWl5dWUgV2FuZyA8aGFpeXVlLndhbmdA aW50ZWwuY29tPg0KPiA+IFNpZ25lZC1vZmYtYnk6IFhpYW95dW4gTGkgPHhpYW95dW4ubGlAaW50 ZWwuY29tPg0KPiA+IFNpZ25lZC1vZmYtYnk6IEp1bmZlbmcgR3VvIDxqdW5mZW5nLmd1b0BpbnRl bC5jb20+DQo+IA0KPiA8Li4uPg0KPiANCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvZG9j L2d1aWRlcy9uaWNzL2d2ZS5yc3QNCj4gPiBAQCAtMCwwICsxLDYzIEBADQo+ID4gKy4uICBTUERY LUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlDQo+ID4gKyAgICBDb3B5cmlnaHQoQykg MjAyMiBJbnRlbCBDb3Jwb3JhdGlvbi4NCj4gPiArDQo+ID4gK0dWRSBwb2xsIG1vZGUgZHJpdmVy DQo+ID4gKz09PT09PT09PT09PT09PT09PT09PT09DQo+ID4gKw0KPiA+ICtUaGUgR1ZFIFBNRCAo KipsaWJydGVfbmV0X2d2ZSoqKSBwcm92aWRlcyBwb2xsIG1vZGUgZHJpdmVyIHN1cHBvcnQNCj4g PiArZm9yIEdvb2dsZSBWaXJ0dWFsIEV0aGVybmV0IGRldmljZSAoYWxzbyBjYWxsZWQgYXMgZ1ZO SUMpLg0KPiA+ICsNCj4gDQo+IFRoaXMgaXMgYSB2aXJ0dWFsIGRldmljZSwgZW11bGF0ZWQgaW4g Vk0gYXMgUENJIGRldmljZSwgcmlnaHQ/DQoNCkl0J3Mgc2ltaWxhciB0byBFTkEgZHJpdmVyIGZv ciBBV1MuIFRoaXMgaXMgR29vZ2xlJ3Mgb3duIGRldmljZSBmb3IgR0NQLg0KDQo+IElmIHNvIHdo YXQgZW11bGF0ZXMgaXQsIEkgbWVhbiBjYW4gd2UgdXNlIFFFTVUgZm9yIGl0Pw0KPiBBbmQgaXMg dGhlcmUgYSBrZXJuZWwgc3VwcG9ydGVkIGJhY2tlbmQsIGFzIHZpcnRpbyBoYXMgdmhvc3Q/DQoN Ck5vLiBiYWNrZW5kIGlzIG5vdCBwdWJsaWMuDQoNCj4gDQo+ID4gK0N1cnJlbnQgZ1ZOSUMgaXMg YW4gYWx0ZXJuYXRpdmUgdG8gdGhlIHZpcnRJTy1iYXNlZCBldGhlcm5ldA0KPiA+ICtpbnRlcmZh Y2UgdGhhdCBjYW4gc3VwcG9ydCBoaWdoZXIgbmV0d29yayBiYW5kd2lkdGhzIHN1Y2ggYXMgdGhl IDUwLTEwMA0KPiBHYnBzIHNwZWVkcy4NCj4gDQo+IFRoaXMgaXMgYW4gYWx0ZXJuYXRpdmUgdG8g dmlydGlvLCBhbmQgaXQgd291bGQgYmUgZ29vZCB0byBkb2N1bWVudCBwcm9zL2NvbnMgb2YNCj4g dGhpcyBkZXZpY2UvYXBwcm9hY2gsIHRvIGhlbHAgdXNlcnMgdG8gY2hvc2Ugb25lIG9yIG90aGVy Lg0KDQpJbiBHQ1AsIHRoZXkgcHJvdmlkZSB0d28gdHlwZXMgb2YgZGV2aWNlcyB3aGljaCB1c2Vy cyBjYW4gY2hvb3NlIGZvciB0aGUgaW50ZXJmYWNlcyBvZiB0aGUgaW5zdGFuY2UsIHZpcnRpbyBv ciBndm5pYywgaWYgdXNlcnMgY2hvb3NlIGd2bmljLCB0aGVuIGd2ZSBkcml2ZXIgaXMgbmVlZGVk IGFuZCBpZiB0aGV5IGNob29zZSB2aXJ0aW8sIHZpdGlvIGlzIHVzZWQuDQpJJ20gbm90IHN1cmUg d2Ugc2hvdWxkIHN1Z2dlc3Qgd2hpY2ggb25lIHRvIGNob29zZS4NCg0KSSBndWVzcyB0aGUgYmVz dCB0aGluZyB0byBkbyBpcyBqdXN0IGxpbmtpbmcgZ29vZ2xlJ3MgZG9jIGFuZCBsZXQgdXNlcnMg dG8gY2hvb3NlIHRoZW1zZWx2ZXMuDQpodHRwczovL2Nsb3VkLmdvb2dsZS5jb20vY29tcHV0ZS9k b2NzL25ldHdvcmtpbmcvdXNpbmctZ3ZuaWMNCg0KPiANCj4gSXMgInN1cHBvcnQgaGlnaGVyIG5l dHdvcmsgYmFuZHdpZHRocyIgbWVhbnMgdGhpcyBkZXZpY2UgaXMgZmFzdGVyIHRoYW4NCj4gdmly dGlvPyBJcyB0aGVyZSBhbnkgcGVyZm9ybWFuY2UgcmVwb3J0Pw0KPiBBcmVuJ3QgdGhlcmUgYW55 IG90aGVyIG5vdGFibGUgZGlmZmVyZW5jZT8NCg0KVGhpcyBpcyBmcm9tIGh0dHBzOi8vY2xvdWQu Z29vZ2xlLmNvbS9jb21wdXRlL2RvY3MvbmV0d29ya2luZy91c2luZy1ndm5pYy4NClRoZXJlIGlz IG5vIG9mZmljaWFsIHBlcmZvcm1hbmNlIHJlcG9ydC4gR29vZ2xlIGRpZG4ndCBwcm92aWRlIGFu eS4NCg0KRnJvbSBvdXIgcHJpdmF0ZSB0ZXN0aW5nLCBndm5pYyBpcyBmYXN0ZXIgdGhhbiB2aXJ0 aW8gdXNpbmcgdGhlIHNhbWUgaW5zdGFuY2UgdHlwZSBidXQgdmlydGlvIGlzIG1vcmUgc3RhYmxl Lg0KQnV0IG91ciB0ZXN0aW5nIGNhbiBiZSB3cm9uZy4gSXQgYWxsIGRlcGVuZHMgaG93IHlvdSBj b25maWcgYW5kIHVzZSBjbG91ZCBlbnYuDQoNCj4gDQo+IEkgdGhpbmsgYmV0dGVyIHRvIGRvY3Vt ZW50IGFzIG11Y2ggYXMgcG9zc2libGUsIGNjJ2VkIG1vcmUgdmlydGlvIHBlb3BsZS4NCj4gDQoN Cg==