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 29363A0548; Tue, 22 Jun 2021 05:26:55 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A1E3640140; Tue, 22 Jun 2021 05:26:54 +0200 (CEST) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mails.dpdk.org (Postfix) with ESMTP id BA0EC40040 for ; Tue, 22 Jun 2021 05:26:52 +0200 (CEST) IronPort-SDR: Mk6WhCG/CaIrFunWciFPu+vaxKVeiEV8dnL8M1iHPMmHFIgryHQUzvn2Lf/x4/7E642//CgrhJ B/L2UHLsyajQ== X-IronPort-AV: E=McAfee;i="6200,9189,10022"; a="205150568" X-IronPort-AV: E=Sophos;i="5.83,291,1616482800"; d="scan'208";a="205150568" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Jun 2021 20:26:50 -0700 IronPort-SDR: nS40MJr4NZF1/zaA60swtDWyCcDIEiGq5QDCHdcU77vuHyn5eP9aFfZ7kS4aJpYqs7pRJCAnsg ayrvEKuv4tRQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,291,1616482800"; d="scan'208";a="417268108" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by fmsmga007.fm.intel.com with ESMTP; 21 Jun 2021 20:26:50 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) 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; Mon, 21 Jun 2021 20:26:49 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) 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.2242.4; Mon, 21 Jun 2021 20:26:49 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) 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.2242.4 via Frontend Transport; Mon, 21 Jun 2021 20:26:49 -0700 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (104.47.73.44) 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; Mon, 21 Jun 2021 20:26:49 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EWb4hZX3i16t1Td600ZDuQM2b+dKVWExMh/ahS/lWx0H6L6lzKhqMXJw1hZL1tILLw8PHjNOaoJr1eJcRSG15jlZ52G25zt1dAliRSoklvxXaSRO+dEyzi9idxrBA7dJdt8uvDn4N8+n5qCDq+y4nU8bQEuUofQ1fYEeyBVqUZX6icvlGUM+c+04XHhvpSkwIoj6fmdZTVrZNW/8iZhYhYuKGngBHWpxyqrtry927CdoVHJ1aAuYzvKQMuyEiXZDssdDOCY5++nBfAeKYpcpZm8dFamngks6lTxs1toKylFLhUVO1U/VYoKceHE3b7PO/JHyvO3wEYpEAO5b0KOctQ== 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=gHkUTw7VfEzMC2Ej2bSyp27DK1l0odxDSKN1gApTY+I=; b=DUIjHGTyaw7p6NE/w9emqYEWyl+fELXOtrt2N6sQYC4VKuKirf7BemnmD8gGDBx8Lk6SAnZTQSjfIarWgCBsP06cyHnLt6O6J1LZewcg85obcFwOyKtktpSjx+e1DkRmQbFo0s3i/kbweCawCCkDzQBFEIjnw3ChUVuhr8T3Xwi/Q18EKg4+3KreRKunFOOb/W8A+hIdVQMCU8dk2WKZfmpMSHIq2uukqqcb5QSLHK7HvxlbSs4qpIcmPMHN8/poWlP2Jgg26lPXLU5wEsqgJJMLsBj/CGfIVSkqhc89HHZijCERwNXoynvSL94EHaISTw3mBFdwwNTLeMrsh5O2FQ== 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=gHkUTw7VfEzMC2Ej2bSyp27DK1l0odxDSKN1gApTY+I=; b=CM7L9NrLktI5RWp0EDjty1P2alqB6Blzy6tLQczYaJrJuYM9NVHQN3Jeu9zd4rYxDG0Z8M3onXSyfegdmXA/b3ScIKA9vfeBf6JaoSio5lofWD+4VbSVetp9vu8MbuhPPvhNHnBCiaG3B5HU8eslG5FiOlez7htQbMZfCMrgV6c= Received: from BN7PR11MB2658.namprd11.prod.outlook.com (2603:10b6:406:ae::16) by BN7PR11MB2770.namprd11.prod.outlook.com (2603:10b6:406:b4::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.21; Tue, 22 Jun 2021 03:26:45 +0000 Received: from BN7PR11MB2658.namprd11.prod.outlook.com ([fe80::152:a489:e4ab:faf3]) by BN7PR11MB2658.namprd11.prod.outlook.com ([fe80::152:a489:e4ab:faf3%5]) with mapi id 15.20.4242.023; Tue, 22 Jun 2021 03:26:45 +0000 From: "Lin, Xueqin" To: David Marchand CC: Jerin Jacob , "Peng, ZhihongX" , "Burakov, Anatoly" , "Ananyev, Konstantin" , Stephen Hemminger , dpdk-dev , "Chen, Zhaoyan" Thread-Topic: [dpdk-dev] [RFC v2] porting AddressSanitizer feature to DPDK Thread-Index: AQHXYb7Avn8fqS5IwE60ynWqXFl7xKsUwKeAgAGVtRCAAC1kAIAC4WKggAAZJgCABde5wA== Date: Tue, 22 Jun 2021 03:26:45 +0000 Message-ID: References: <20210610051352.48493-1-zhihongx.peng@intel.com> <20210615081205.101071-1-zhihongx.peng@intel.com> In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.5.1.3 dlp-reaction: no-action dlp-product: dlpe-windows 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.102.204.51] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 7ed099ad-9b10-44f2-9ea6-08d9352d8ff7 x-ms-traffictypediagnostic: BN7PR11MB2770: 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:8273; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Mge7dcv1p7gaLNOkJBpdNoFckCIGQAh3ST+pm2mqHukX+5yeAFsoRJaslcsq+0EOaOHTDimKQT9oqMS84H82yXFawGjUF14dDiy1ekB7Hpz/PCV65c0Dz4GvPc3ZpjHr17YaW5LK0WrxQWKMjYQvUoqGHILvfiZBqVS/sXD1bL5sLCuK/UmsBS0VSWjhCVN3w5myX8Ue1HX/pt7X4g7aJkt3DR+aoTkOhhe6gFXYxRjCfNVP0JpU7mB8CDgorz22PHVOYs5XVpHVEpZBCyBkZIY7umxwYW+IbMc8N0vtxh6lwVtEoFzaK/Zu+sXiODOqmAO3gorrBlw7jrdJkFA0msz3UMU6g6ndh2isZUDeqKtdAn9PAMoanyGaYUmuXaUeotDn3FwgWy5XD1TRPOl3qamSnxtMQtp/KkEtVxZLPAS4eYcCS+Tgxv4e6itliZxy6wLlEa4/hew2vAuhNlp1Khu8IPczJHgLG0QItW6oh6EFRmB5qr/rXN1gljawZQlm6K2IaHLRRsfVnyNUT24V8VlULgKTfYQWCq9JS2HFHyaYM6zZZ9rVsQ8A15AMkhGgBQ1JZG2wdNQZs5jfPgxlCiRTC3AI+YcV1MlC9XFcLHyBrCKtMAQV++Yw8aaw++eEAzlHBr8Awyx2RC3xUVV2pg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN7PR11MB2658.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(39850400004)(396003)(136003)(366004)(376002)(346002)(2906002)(66946007)(5660300002)(478600001)(54906003)(186003)(9686003)(7696005)(76116006)(83380400001)(86362001)(26005)(33656002)(4326008)(71200400001)(66556008)(316002)(64756008)(122000001)(66476007)(6916009)(107886003)(6506007)(53546011)(52536014)(8936002)(55016002)(66446008)(8676002)(38100700002)(49343001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?VHRIZG40cVcxTGdLMWRTTm42T2xRRlQ5c2VNcmdObG5LMUh3WTM5Q1VjdDIr?= =?utf-8?B?b0hsc1hGZit5eUI3R2FJcjhyTUhBeTh1a09Dc1hzTWR6V1FHdFFWaWhiY0VP?= =?utf-8?B?bmNhM3FEMkRFa2FsWEFxWHJmYU1ITkVEZSswYkVUZWptei92K0M5RGdJeStI?= =?utf-8?B?UkVESkRXVndVSFVqbzFHSVljWnBtdStJUjgrYXJtOHpONFFGZjFZSG0vU2F1?= =?utf-8?B?eStsZVJvRjNTdGRkc1RCdTkzaFJRT1kvSDdMVlBGclZrTFlNcFZaeWZZaUtX?= =?utf-8?B?VUFHN20rcDduT0hyR1M2dUFaWnV6RGY0K3lTbEovT2Jlb1lXWXN1MStabU1t?= =?utf-8?B?YzVtdURqYkpzVUJ6TzZ4QXlXT2RkT1NaK0JQd3plRzc0T2pHdSt3dlh2WERm?= =?utf-8?B?TnV5K3pVbk1ORFNIUGI3cGFCRFgvVEtaYlV1NFYvWm5NNVZRL2lIYXkvaUox?= =?utf-8?B?TmFVRDRESUhZMVlzSDRzVnFEMEo4SG4xanY1T3RGTnBQbHFhWDByOEl5UVJN?= =?utf-8?B?SDdtcXU0b0R0dmE2eXZLMjhPQkpYcDREV2JiQ2NSUVNZTnVWcjdVeG00VWFz?= =?utf-8?B?RVcwNER1SWxnTlM4aXlvcGIrdUoxVFNCc09lb3FkUTROdy9qc0d3U2c0Wmsr?= =?utf-8?B?eWR3ZDFVQmMwdUgxeUxzRFBiK2djZzhFVmFaSTVBZUIzY2toU3Z6bE1pdUVV?= =?utf-8?B?cHhUc2tuMmZHcWlpTVZIWFVKOFRvV1M4SHdTL0lSaUFGMzgzL0QrME9Jck5k?= =?utf-8?B?cnduSTk0ais2VHgvck1OR2hzR2RyR2V3TTVwbHhnQ2ZIMnVPSy9xMzMySHdC?= =?utf-8?B?UFdYSVg5blg2SGgyeHk1WnhiVXpZLytXYVZDT1lDbzFMNUMyOW5SSDBWd1A2?= =?utf-8?B?NzRlWGZ5eC9lQjNxNEMyRDlYVnJDZm5oaHZ3V0YveWhsNk92VkFUNEphQ1dW?= =?utf-8?B?SHUxNmlMcnVVdW0yMjBrY0hORkNMNmxTUnRNQjlRS1A1ejJ3V0FPeWhzTHRt?= =?utf-8?B?ZW1CdzRSeGYrbUNqMFVzbE85QUpmaS9NQmFjWHZ6ODk0UVIzejZzS0dsYngz?= =?utf-8?B?VHBzSk0yWVQzSWxZUThRZ3hmQ3NIVXB0M3M5V29xVCtreGJKRFd1WTBSRm9Y?= =?utf-8?B?cy9TV2lORE1CeE9oNi91SnZGdW1kVTYzYnl3ZFZzSElrZ0ovbkdVcDFlblBS?= =?utf-8?B?NTBYTUd2MGZYeE9GbWFHYnJteURlMFpLYXFFOVNRQ0lHZC85UTUxVXVoMDU2?= =?utf-8?B?T2ZoZ1M1VVljYXRwemFRM2tmcDVmT1ZTUjRhR0NaZ0FRV0R3K0FyT056VUlL?= =?utf-8?B?dUpNYmRlaVVjUW9OdVJCTWVCdmNRUDNoYnFlRjVFNWhRZmgra3RlWVFvSVYy?= =?utf-8?B?UGY3Y3BrV1BSNklINHhrSk54emhlV2ZHUmtOZGZwWmlJZWt1KzFKZHhzM3FN?= =?utf-8?B?MnB2djd4VlM2dWtnYW9MSmg4L1JLcWFDVlpINjZWdU1EWlg2T0JXMlA4Wkha?= =?utf-8?B?ZTF6Q3VGR2xSRTFyRFVWVVF5SnN4TmgybUxFVDBNR3VuVEkvcjRXd2ZRK0ZR?= =?utf-8?B?NzNNVGdCU3VhcjJ1dHVDVXlnVmo1US9yU2Y5azIyUU1FSFdadU5HaUgxSTR0?= =?utf-8?B?bElOSFBZTERhU29BOThWNG5OMC82QXRaNWYyRmFyWHlNT1Bud1pqVkw3SWJ2?= =?utf-8?B?Y1VUOEtxaTJYMDdiODE3alVIK1VLYlA1WjNmQnExeGVhR2hJMFptcTdUWFN4?= =?utf-8?Q?x4zGMbyqfWVt63fJRl++6tcfucsAN2vW460egm8?= 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: BN7PR11MB2658.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7ed099ad-9b10-44f2-9ea6-08d9352d8ff7 X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Jun 2021 03:26:45.3656 (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: vWaHHVzaRc6iKASKCEbmwoyXCVjYFWtEn/08RqBCwJnRGlXl+nQWapHXgVGK/9Tf5bJ0ZYtqdtEob1KjMoAGOA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN7PR11MB2770 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [RFC v2] porting AddressSanitizer feature to DPDK 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" PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBEYXZpZCBNYXJjaGFuZCA8ZGF2 aWQubWFyY2hhbmRAcmVkaGF0LmNvbT4NCj4gU2VudDogRnJpZGF5LCBKdW5lIDE4LCAyMDIxIDU6 MDQgUE0NCj4gVG86IExpbiwgWHVlcWluIDx4dWVxaW4ubGluQGludGVsLmNvbT4NCj4gQ2M6IEpl cmluIEphY29iIDxqZXJpbmphY29ia0BnbWFpbC5jb20+OyBQZW5nLCBaaGlob25nWA0KPiA8emhp aG9uZ3gucGVuZ0BpbnRlbC5jb20+OyBCdXJha292LCBBbmF0b2x5DQo+IDxhbmF0b2x5LmJ1cmFr b3ZAaW50ZWwuY29tPjsgQW5hbnlldiwgS29uc3RhbnRpbg0KPiA8a29uc3RhbnRpbi5hbmFueWV2 QGludGVsLmNvbT47IFN0ZXBoZW4gSGVtbWluZ2VyDQo+IDxzdGVwaGVuQG5ldHdvcmtwbHVtYmVy Lm9yZz47IGRwZGstZGV2IDxkZXZAZHBkay5vcmc+DQo+IFN1YmplY3Q6IFJlOiBbZHBkay1kZXZd IFtSRkMgdjJdIHBvcnRpbmcgQWRkcmVzc1Nhbml0aXplciBmZWF0dXJlIHRvIERQREsNCj4gDQo+ IE9uIEZyaSwgSnVuIDE4LCAyMDIxIGF0IDk6NDkgQU0gTGluLCBYdWVxaW4gPHh1ZXFpbi5saW5A aW50ZWwuY29tPiB3cm90ZToNCj4gPiA+ID4gU3VnZ2VzdCBsaXN0aW5nIGRlbW8gY29kZSBhbmQg dG9vbCBjYXB0dXJlIGluZm9ybWF0aW9uIGZvciB1c2VyIHRvDQo+ID4gPiA+IHRyeSBpZg0KPiA+ ID4gdG9vbCB3b3JrcywgYWxzbyBhZGQgdGhpcyBwYXJ0IGludG8gZG9jLg0KPiA+ID4gPg0KPiA+ ID4gPiA+DQo+ID4gPiA+ID4gIyBBbHNvLCBQbGVhc2UgdXBkYXRlIHRoZSByZWxlYXNlIG5vdGUg Zm9yIHRoaXMgZmVhdHVyZS4NCj4gPiA+ID4gU3VyZSwgd2UgY2FuIHVwZGF0ZSB0aGUgcmVsZWFz ZSBub3RlIGlmIGNvZGUgbWVyZ2UuDQo+ID4gPg0KPiA+ID4gUHJvYmFibHkgeW91IGNhbiBzZW5k IHYxIHZlcnNpb24gbmV4dCBpLmUgY2hhbmdlIHRoZSBSRkMgc3RhdHVzIHRvDQo+ID4gPiBnZXQg bWVyZ2VkLg0KPiA+DQo+ID4gU3VyZSwgd2Ugd2lsbCBzZW5kIHYxIHBhdGNoIGlmIG5vIG9idmlv dXMgb2JqZWN0aW9uIGZvciB0aGF0LCBob3BlIHBhdGNoDQo+IGNvdWxkIHJlY2VpdmUgc29tZSBB Q0tzIGFuZCBjb3VsZCBzdWNjZXNzIHRvIG1lcmdlLCB0aGFua3MuDQo+IA0KPiBIb3cgZGlkIHlv dSB0ZXN0IHRoaXMgd29yaz8NCj4gDQo+IFVOSCByZWNlbnRseSBzdGFydGVkIHRlc3Rpbmcgd2l0 aCBBU0FOIGFuZCBpdCByZXZlYWxzIGxlYWtzIGp1c3QgaW4gdGhlIHVuaXQNCj4gdGVzdC4NCk91 ciBsYWIgV0lQIHRvIHJ1biByZWdyZXNzaW9uIHRlc3Qgd2l0aCBlbmFibGluZyBBc2FuIHRvb2wg YnVpbGQsIGFscmVhZHkgcmVwb3J0ZWQgZG96ZW5zIG9mIGlzc3VlcyBieSBBc2FuIHRvb2wsIGNv bnRpbnVlIGZvciB1bml0IHRlc3QgYW5kIGlzc3VlIHJlc29sdmUuIA0KPiANCj4gTWVyZ2luZyB0 aGVzZSBhbm5vdGF0aW9ucyB3aWxsIGhlbHAgY2F0Y2ggbW9yZSBpc3N1ZXMuDQo+IEJ1dCB1c2Vy cyB3aWxsIGhpdCB0aGUgY3VycmVudCBpc3N1ZXMgdGhhdCB3ZSBtdXN0IGZpeCBmaXJzdC4NCj4g DQo+IA0KWWVhaCwgaXQgaXMgYSBwb3dlcmZ1bCB0b29sIHRoYXQgY291bGQgaGVscCB0byBjYXRj aCBtb3JlIGlzc3VlcyBhbmQgZXJyb3IgbG9nIHByaW50LCBoYXBweSB0aGF0IG1vcmUgZ3V5cyBm b3VuZCB0aGlzIHRvb2wgdmFsdWUgYW5kIHdvcmtpbmcgb24gdGhpcy4gDQpTbyBpdCBpcyBpbXBv cnRhbnQgYW5kIG1lYW5pbmdmdWwgaWYgdGhpcyB0b29sIGNvZGUgY291bGQgbWVyZ2UuIA0KVGhl c2UgaXNzdWVzIG9ubHkgY2FwdHVyZWQgd2hlbiBlbmFibGUgQXNhbiB0b29sIGJ1aWxkLCB3aXRo b3V0IHRoZSB0b29sLCBub3QgaW1wYWN0IGN1cnJlbnQgdGVzdCwgYWxzbyB0aGlzIHRvb2wgaXMg bm90IHN1cHBvcnRlZCBiZWZvcmUuIA0KV2UgYXJlIHRyeWluZyBvdXIgYmVzdCBhbmQgV0lQIHRv IGRvIHJlZ3Jlc3Npb24gdGVzdCBiYXNlZCBvbiBvdXIgYWxsIG9mIGN1cnJlbnQgcmVncmVzc2lv biB0ZXN0IGNhc2VzLCBjYXB0dXJlIGlzc3VlcyBhbmQgY2hlY2suIA0KU29tZSByZXNvbHZlZCBp c3N1ZSBwYXRjaGVzIGZvciBBc2FuIGRldGVjdGVkIGhhdmUgYmVlbiBtZXJnZWQsIGFuZCBmb3Vu ZCB0aGF0IHNvbWUgb2YgaXNzdWVzIHdlIGNhcHR1cmVkIGFyZSBzYW1lIHRvIFVOSCBjYXB0dXJl ZC4NCkJ1dCB3ZSBjYW4ndCBjb3ZlciBhbGwsIG9uY2UgdGhlIGNvZGUgbWVyZ2UsIG1vcmUgdXNl cnMgY291bGQgZ3VhcmFudGVlIGlmIHRoZWlyIGNvZGUgb3IgbW9kdWxlIGhhdmUgbWVtb3J5IGlz c3VlLCBhbmQgc3VwcGx5IHNvbHV0aW9uIGZvciBpc3N1ZSBmaXguIA0KDQo+IC0tDQo+IERhdmlk IE1hcmNoYW5kDQoNCg==