From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 2E65DA0583; Fri, 20 Mar 2020 17:45:21 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 7F3382BBD; Fri, 20 Mar 2020 17:45:20 +0100 (CET) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id 0027DF94 for ; Fri, 20 Mar 2020 17:45:18 +0100 (CET) IronPort-SDR: Z1bM+h5wWacSPdSv7n0IXokyaBeczek8EUhCLCvRvKIKDrT3QjoFF94pb3ZRB2iqYYadmPswX+ 5V6Rpziy3kcA== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Mar 2020 09:45:18 -0700 IronPort-SDR: Uolp9qrgye1VvVXbI3SP7z2iUVeEgav5n+66lhdZucBHw17q4L2VdhB2lAPn04sEeKtxsnz6Hs sAr9Zyq8ZPIQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.72,285,1580803200"; d="scan'208";a="280476959" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by fmsmga002.fm.intel.com with ESMTP; 20 Mar 2020 09:45:18 -0700 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.439.0; Fri, 20 Mar 2020 09:45:17 -0700 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) 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.1713.5; Fri, 20 Mar 2020 09:45:17 -0700 Received: from FMSEDG001.ED.cps.intel.com (10.1.192.133) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.1713.5 via Frontend Transport; Fri, 20 Mar 2020 09:45:17 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.173) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (TLS) id 14.3.439.0; Fri, 20 Mar 2020 09:45:15 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=oPEgXd4pklnB541S469cpIZWKz3oAFwceWlnstoglFT/u4wN3/BgpSXhNMTIrMNwkB/kBka390sjzWnaj/wznrlwUYwQ0ZDJHXTu1NSFedSiE9TVPEt00P8C17TNQR4nRrkzWzHTH+yBlhX4h7ciRC39mk+a/mfKUrSLy80mjbppisg5OcvIVG3cc6jNEJTUzj7tHFXmzVNHF3Oe167gUStQ1+rF3AT+PdxEh6Gf8NVo2BLyRBjDdM9wBrLFjMWeTfr32HvEc7UQ8X7niAdQopUPWuEyH6YP+/mMwsjRp/Y7lCRqtDpFRqWt/4N8rFIxB9JnxNilxw7jvCga6GnFdA== 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=HZHD4zZ/e+u7lvOd3VTXyS5cFQEhIiC35siZJPBX0+4=; b=jeS+0dol2QANAJKuPWOK9Irv9peZHhux/3CUGAX5XMFs8L3dgB1fauMJn088rZjDN+TLg2ouwo7ld3EBkKyxCoXJIYJMBqWEfMpLU6l2Qiqn6sD6iZLZTPH+zEhEzHkEcLljJkcR014+LAKi+MwQJzzEpVSPdpUZ0vJuUtUx3HAMguA8rBbOMi+VYl//DwAB/d8BGR4vIo84qjYjVzoPnAnrWeHIAf7kdgqvwU5mLxzZPHeKs5S1pPOAZyXcVUcQBKasj1JfxbvYsjPkC+vf46lyka3MOEMauAKuFx1DLnpoMyN8KOEyujjRZI0n8ioJSObXaTZGYw+cVTvdBRUvuA== 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=HZHD4zZ/e+u7lvOd3VTXyS5cFQEhIiC35siZJPBX0+4=; b=j7R0TPs/QxuEXrb8VOtr6W2Jw96thUpp1jMaRC2DSH+E7KQnSwiXTyLKF/q6rmaTh3O3OH8XCJjWQaj8GYCgfOTSAHrEGQRdmaY1y8fsRHkHoyDQG19fQJZWOC4ZjLTmfkpr3uY/W3AV7NbFlTNtqEEEVchyMV/LXBgDhfghLYw= Received: from SN6PR11MB2558.namprd11.prod.outlook.com (2603:10b6:805:5d::19) by SN6PR11MB3149.namprd11.prod.outlook.com (2603:10b6:805:d5::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2835.20; Fri, 20 Mar 2020 16:45:13 +0000 Received: from SN6PR11MB2558.namprd11.prod.outlook.com ([fe80::5df7:d515:ec1d:8db1]) by SN6PR11MB2558.namprd11.prod.outlook.com ([fe80::5df7:d515:ec1d:8db1%7]) with mapi id 15.20.2835.017; Fri, 20 Mar 2020 16:45:13 +0000 From: "Ananyev, Konstantin" To: David Christensen , Jerin Jacob CC: Stephen Hemminger , dpdk-dev , Olivier Matz Thread-Topic: [dpdk-dev] [RFC 0/6] New sync modes for ring Thread-Index: AQHV6waQaBpJG6uFVkOED+rLZZWNPqgqkXSAgAAQ8YCAABqxgIABDytwgAMP8QCAAObLAIAiE+Iw Date: Fri, 20 Mar 2020 16:45:13 +0000 Message-ID: References: <20200224113515.1744-1-konstantin.ananyev@intel.com> <20200224085919.3e73fda7@hermes.lan> <20200224113529.4c1c94ab@hermes.lan> In-Reply-To: Accept-Language: en-GB, 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.2.0.6 authentication-results: spf=none (sender IP is ) smtp.mailfrom=konstantin.ananyev@intel.com; x-originating-ip: [46.7.38.224] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: a3d1f064-6900-4b7c-ac08-08d7ccee1006 x-ms-traffictypediagnostic: SN6PR11MB3149: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:240; x-forefront-prvs: 03484C0ABF x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(396003)(39860400002)(346002)(366004)(136003)(376002)(199004)(8936002)(7696005)(54906003)(316002)(110136005)(26005)(186003)(6506007)(81156014)(8676002)(2906002)(86362001)(81166006)(66446008)(52536014)(64756008)(55016002)(4326008)(9686003)(33656002)(71200400001)(5660300002)(66476007)(478600001)(66556008)(66946007)(76116006); DIR:OUT; SFP:1102; SCL:1; SRVR:SN6PR11MB3149; H:SN6PR11MB2558.namprd11.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Qw1lDQxbzAKjkcRICsidq2wGltc7OSva/hSUDpFprlvbsyGcTRjei3pQvH67rvm8FDu5MHSw/OLXvTbHvQo5UAZZyoM6HNJYS3mvfCTkjblsbEcAby8RvWdF6N1+3deibZ1TaV2bJ5VXtiSWbLw9f4NS0muOWjz7jp6V0KlQ/fOodpgBsbC2x3LbFasEHaBfGJCBWcYtbylZyOGvfsq3xV+qlELVbqRCBaeWlLAKgZcVp4US2Wg+9Qj9DLw+yk976/iO2rwXknYW6hVZBxv3foFQy1UZepkha23W0+lhhLlMR2dGt7dAHks8dWp6GpjXoaoBaBUpz88el9BUExWL1aebfU9WY0aXumv6POdJCfLayl5yrr4RpQPm/WutshzqxI158SM+4PHnhEiH96XrcaBFR8/Mxw7WNaDE4I6Cr2lZ0U3uMnKSnh6RsgeB/g+r x-ms-exchange-antispam-messagedata: ddOXXFNp38rVr9WcORsMuwo+TTV4UoYJNpOfqIvUMlXymDTAkBEUi30HjmOA091NZ8qWdTKfxCEsZUvZfvhax4B8aZKsxOneIzpZ5cxYy/2B9Nwu1ke45raaiDFFP3zd8aN+vzMUFUz6eqh5sV1wqQ== x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: a3d1f064-6900-4b7c-ac08-08d7ccee1006 X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Mar 2020 16:45:13.7680 (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: aH1JqmammSfuQi6Wobwpnbgz6pTSCQBOOEk6bfWmGgUMAuiX6BXJYwRPmSkh1zxlM1+fUhRyz0uw/u9FQGljEJVGQTBEN9Jv29XIIuwu9Ag= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR11MB3149 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [RFC 0/6] New sync modes for ring X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" DQo+ID4NCj4gPg0KPiA+IEkgdGVzdGVkIG9uIGFuIGFybTY0IEhXLiBUaGUgZm9ybWVyIHNlY3Rp b24gaXMgd2l0aG91dCB0aGUNCj4gPiBwYXRjaCgyMC4wMikgYW5kIGxhdGVyIG9uZSB3aXRoIHRo aXMgcGF0Y2guDQo+ID4gSSBhZ3JlZSB3aXRoIEtvbnN0YW50aW4gdGhhdCBnZXR0aW5nIG1vcmUg cGxhdGZvcm0gdGVzdHMgd2lsbCBiZSBnb29kDQo+ID4gZWFybHkgc28gdGhhdCB3ZSBjYW4gZm9j dXMgb24gdGhlIGFwcHJvYWNoDQo+ID4gdG8gYXZvaWQgYmFjayBhbmQgZm9ydGggbGF0dGVyLg0K PiA+DQo+ID4NCj4gPiBSVEU+PnJpbmdfcGVyZl9hdXRvdGVzdCAvLyB3aXRob3V0IHBhdGgNCj4g Pg0KPiA+ICMjIyBUZXN0aW5nIHNpbmdsZSBlbGVtZW50IGVucS9kZXEgIyMjDQo+ID4gbGVnYWN5 IEFQSXM6IFNQL1NDOiBzaW5nbGU6IDI4OS43OA0KPiA+IGxlZ2FjeSBBUElzOiBNUC9NQzogc2lu Z2xlOiA1MTYuMjANCj4gPg0KPiA+ICMjIyBUZXN0aW5nIGJ1cnN0IGVucS9kZXEgIyMjDQo+ID4g bGVnYWN5IEFQSXM6IFNQL1NDOiBidXJzdCAoc2l6ZTogOCk6IDMxMi44OA0KPiA+IGxlZ2FjeSBB UElzOiBTUC9TQzogYnVyc3QgKHNpemU6IDMyKTogNDI2LjcyDQo+ID4gbGVnYWN5IEFQSXM6IE1Q L01DOiBidXJzdCAoc2l6ZTogOCk6IDUxMC45NQ0KPiA+IGxlZ2FjeSBBUElzOiBNUC9NQzogYnVy c3QgKHNpemU6IDMyKTogNzAyLjAxDQo+ID4NCj4gPiAjIyMgVGVzdGluZyBidWxrIGVucS9kZXEg IyMjDQo+ID4gbGVnYWN5IEFQSXM6IFNQL1NDOiBidWxrIChzaXplOiA4KTogMzA2Ljc0DQo+ID4g bGVnYWN5IEFQSXM6IFNQL1NDOiBidWxrIChzaXplOiAzMik6IDQxMS41Ng0KPiA+IGxlZ2FjeSBB UElzOiBNUC9NQzogYnVsayAoc2l6ZTogOCk6IDUwMS4zMg0KPiA+IGxlZ2FjeSBBUElzOiBNUC9N QzogYnVsayAoc2l6ZTogMzIpOiA2OTMuMDcNCj4gPg0KPiA+ICMjIyBUZXN0aW5nIGVtcHR5IGJ1 bGsgZGVxICMjIw0KPiA+IGxlZ2FjeSBBUElzOiBTUC9TQzogYnVsayAoc2l6ZTogOCk6IDcuMDAN Cj4gPiBsZWdhY3kgQVBJczogTVAvTUM6IGJ1bGsgKHNpemU6IDgpOiA3LjAwDQo+ID4NCj4gPiAj IyMgVGVzdGluZyB1c2luZyB0d28gcGh5c2ljYWwgY29yZXMgIyMjDQo+ID4gbGVnYWN5IEFQSXM6 IFNQL1NDOiBidWxrIChzaXplOiA4KTogNzQuMzYNCj4gPiBsZWdhY3kgQVBJczogTVAvTUM6IGJ1 bGsgKHNpemU6IDgpOiAxMTAuMTgNCj4gPiBsZWdhY3kgQVBJczogU1AvU0M6IGJ1bGsgKHNpemU6 IDMyKTogMjMuMDQNCj4gPiBsZWdhY3kgQVBJczogTVAvTUM6IGJ1bGsgKHNpemU6IDMyKTogMzIu MjkNCj4gPg0KPiA+ICMjIyBUZXN0aW5nIHVzaW5nIGFsbCBzbGF2ZSBub2RlcyAjIw0KPiA+IEJ1 bGsgZW5xL2RlcXVldWUgY291bnQgb24gc2l6ZSA4DQo+ID4gQ29yZSBbOF0gY291bnQgPSAyOTM3 NDENCj4gPiBDb3JlIFs5XSBjb3VudCA9IDI5Mzc0MQ0KPiA+IFRvdGFsIGNvdW50IChzaXplOiA4 KTogNTg3NDgyDQo+ID4NCj4gPiBCdWxrIGVucS9kZXF1ZXVlIGNvdW50IG9uIHNpemUgMzINCj4g PiBDb3JlIFs4XSBjb3VudCA9IDI0NDkwOQ0KPiA+IENvcmUgWzldIGNvdW50ID0gMjQ0OTA5DQo+ ID4gVG90YWwgY291bnQgKHNpemU6IDMyKTogMTA3NzMwMA0KPiA+DQo+ID4gIyMjIFRlc3Rpbmcg c2luZ2xlIGVsZW1lbnQgZW5xL2RlcSAjIyMNCj4gPiBlbGVtIEFQSXM6IGVsZW1lbnQgc2l6ZSAx NkI6IFNQL1NDOiBzaW5nbGU6IDI1NS4zNw0KPiA+IGVsZW0gQVBJczogZWxlbWVudCBzaXplIDE2 QjogTVAvTUM6IHNpbmdsZTogNDU2LjY4DQo+ID4NCj4gPiAjIyMgVGVzdGluZyBidXJzdCBlbnEv ZGVxICMjIw0KPiA+IGVsZW0gQVBJczogZWxlbWVudCBzaXplIDE2QjogU1AvU0M6IGJ1cnN0IChz aXplOiA4KTogMjkxLjk5DQo+ID4gZWxlbSBBUElzOiBlbGVtZW50IHNpemUgMTZCOiBTUC9TQzog YnVyc3QgKHNpemU6IDMyKTogNDU2LjI1DQo+ID4gZWxlbSBBUElzOiBlbGVtZW50IHNpemUgMTZC OiBNUC9NQzogYnVyc3QgKHNpemU6IDgpOiA0OTcuNzcNCj4gPiBlbGVtIEFQSXM6IGVsZW1lbnQg c2l6ZSAxNkI6IE1QL01DOiBidXJzdCAoc2l6ZTogMzIpOiA2ODAuODcNCj4gPg0KPiA+ICMjIyBU ZXN0aW5nIGJ1bGsgZW5xL2RlcSAjIyMNCj4gPiBlbGVtIEFQSXM6IGVsZW1lbnQgc2l6ZSAxNkI6 IFNQL1NDOiBidWxrIChzaXplOiA4KTogMjg0LjQwDQo+ID4gZWxlbSBBUElzOiBlbGVtZW50IHNp emUgMTZCOiBTUC9TQzogYnVsayAoc2l6ZTogMzIpOiA0NTMuMTcNCj4gPiBlbGVtIEFQSXM6IGVs ZW1lbnQgc2l6ZSAxNkI6IE1QL01DOiBidWxrIChzaXplOiA4KTogNDg1Ljc3DQo+ID4gZWxlbSBB UElzOiBlbGVtZW50IHNpemUgMTZCOiBNUC9NQzogYnVsayAoc2l6ZTogMzIpOiA2NzUuMDgNCj4g Pg0KPiA+ICMjIyBUZXN0aW5nIGVtcHR5IGJ1bGsgZGVxICMjIw0KPiA+IGVsZW0gQVBJczogZWxl bWVudCBzaXplIDE2QjogU1AvU0M6IGJ1bGsgKHNpemU6IDgpOiA4LjAwDQo+ID4gZWxlbSBBUElz OiBlbGVtZW50IHNpemUgMTZCOiBNUC9NQzogYnVsayAoc2l6ZTogOCk6IDcuMDANCj4gPg0KPiA+ ICMjIyBUZXN0aW5nIHVzaW5nIHR3byBwaHlzaWNhbCBjb3JlcyAjIyMNCj4gPiBlbGVtIEFQSXM6 IGVsZW1lbnQgc2l6ZSAxNkI6IFNQL1NDOiBidWxrIChzaXplOiA4KTogNzQuNDUNCj4gPiBlbGVt IEFQSXM6IGVsZW1lbnQgc2l6ZSAxNkI6IE1QL01DOiBidWxrIChzaXplOiA4KTogMTA1LjkxDQo+ ID4gZWxlbSBBUElzOiBlbGVtZW50IHNpemUgMTZCOiBTUC9TQzogYnVsayAoc2l6ZTogMzIpOiAy Mi45Mg0KPiA+IGVsZW0gQVBJczogZWxlbWVudCBzaXplIDE2QjogTVAvTUM6IGJ1bGsgKHNpemU6 IDMyKTogMzEuNTUNCj4gPg0KPiA+ICMjIyBUZXN0aW5nIHVzaW5nIGFsbCBzbGF2ZSBub2RlcyAj IyMNCj4gPg0KPiA+IEJ1bGsgZW5xL2RlcXVldWUgY291bnQgb24gc2l6ZSA4DQo+ID4gQ29yZSBb OF0gY291bnQgPSAzMDg3MjQNCj4gPiBDb3JlIFs5XSBjb3VudCA9IDMwODcyMw0KPiA+IFRvdGFs IGNvdW50IChzaXplOiA4KTogNjE3NDQ3DQo+ID4NCj4gPiBCdWxrIGVucS9kZXF1ZXVlIGNvdW50 IG9uIHNpemUgMzINCj4gPiBDb3JlIFs4XSBjb3VudCA9IDIxNDI2OQ0KPiA+IENvcmUgWzldIGNv dW50ID0gMjE0MjY5DQo+ID4gVG90YWwgY291bnQgKHNpemU6IDMyKTogMTA0NTk4NQ0KPiA+DQo+ ID4gUlRFPj5yaW5nX3BlcmZfYXV0b3Rlc3QgLy8gd2l0aCBwYXRjaA0KPiA+DQo+ID4gIyMjIFRl c3Rpbmcgc2luZ2xlIGVsZW1lbnQgZW5xL2RlcSAjIyMNCj4gPiBsZWdhY3kgQVBJczogU1AvU0M6 IHNpbmdsZTogMjg5Ljc4DQo+ID4gbGVnYWN5IEFQSXM6IE1QL01DOiBzaW5nbGU6IDQ3NS43Ng0K PiA+DQo+ID4gIyMjIFRlc3RpbmcgYnVyc3QgZW5xL2RlcSAjIyMNCj4gPiBsZWdhY3kgQVBJczog U1AvU0M6IGJ1cnN0IChzaXplOiA4KTogMzIzLjkxDQo+ID4gbGVnYWN5IEFQSXM6IFNQL1NDOiBi dXJzdCAoc2l6ZTogMzIpOiA0MjQuNjANCj4gPiBsZWdhY3kgQVBJczogTVAvTUM6IGJ1cnN0IChz aXplOiA4KTogNTIzLjAwDQo+ID4gbGVnYWN5IEFQSXM6IE1QL01DOiBidXJzdCAoc2l6ZTogMzIp OiA3MTcuMDkNCj4gPg0KPiA+ICMjIyBUZXN0aW5nIGJ1bGsgZW5xL2RlcSAjIyMNCj4gPiBsZWdh Y3kgQVBJczogU1AvU0M6IGJ1bGsgKHNpemU6IDgpOiAzMTcuNzQNCj4gPiBsZWdhY3kgQVBJczog U1AvU0M6IGJ1bGsgKHNpemU6IDMyKTogNDEzLjU3DQo+ID4gbGVnYWN5IEFQSXM6IE1QL01DOiBi dWxrIChzaXplOiA4KTogNTEyLjg5DQo+ID4gbGVnYWN5IEFQSXM6IE1QL01DOiBidWxrIChzaXpl OiAzMik6IDcxMi40NQ0KPiA+DQo+ID4gIyMjIFRlc3RpbmcgZW1wdHkgYnVsayBkZXEgIyMjDQo+ ID4gbGVnYWN5IEFQSXM6IFNQL1NDOiBidWxrIChzaXplOiA4KTogNy4wMA0KPiA+IGxlZ2FjeSBB UElzOiBNUC9NQzogYnVsayAoc2l6ZTogOCk6IDcuMDANCj4gPg0KPiA+ICMjIyBUZXN0aW5nIHVz aW5nIHR3byBwaHlzaWNhbCBjb3JlcyAjIyMNCj4gPiBsZWdhY3kgQVBJczogU1AvU0M6IGJ1bGsg KHNpemU6IDgpOiA3NC44Mg0KPiA+IGxlZ2FjeSBBUElzOiBNUC9NQzogYnVsayAoc2l6ZTogOCk6 IDk2LjQ1DQo+ID4gbGVnYWN5IEFQSXM6IFNQL1NDOiBidWxrIChzaXplOiAzMik6IDIyLjk3DQo+ ID4gbGVnYWN5IEFQSXM6IE1QL01DOiBidWxrIChzaXplOiAzMik6IDMyLjUyDQo+ID4NCj4gPiAj IyMgVGVzdGluZyB1c2luZyBhbGwgc2xhdmUgbm9kZXMgIyMjDQo+ID4NCj4gPiBCdWxrIGVucS9k ZXF1ZXVlIGNvdW50IG9uIHNpemUgOA0KPiA+IENvcmUgWzhdIGNvdW50ID0gMjgzOTI4DQo+ID4g Q29yZSBbOV0gY291bnQgPSAyODM5MjcNCj4gPiBUb3RhbCBjb3VudCAoc2l6ZTogOCk6IDU2Nzg1 NQ0KPiA+DQo+ID4gQnVsayBlbnEvZGVxdWV1ZSBjb3VudCBvbiBzaXplIDMyDQo+ID4gQ29yZSBb OF0gY291bnQgPSAyMjM5MTYNCj4gPiBDb3JlIFs5XSBjb3VudCA9IDIyMzkxNQ0KPiA+IFRvdGFs IGNvdW50IChzaXplOiAzMik6IDEwMTU2ODYNCj4gPg0KPiA+ICMjIyBUZXN0aW5nIHNpbmdsZSBl bGVtZW50IGVucS9kZXEgIyMjDQo+ID4gZWxlbSBBUElzOiBlbGVtZW50IHNpemUgMTZCOiBTUC9T Qzogc2luZ2xlOiAyNjcuNjUNCj4gPiBlbGVtIEFQSXM6IGVsZW1lbnQgc2l6ZSAxNkI6IE1QL01D OiBzaW5nbGU6IDQzOS4wNg0KPiA+DQo+ID4gIyMjIFRlc3RpbmcgYnVyc3QgZW5xL2RlcSAjIyMN Cj4gPiBlbGVtIEFQSXM6IGVsZW1lbnQgc2l6ZSAxNkI6IFNQL1NDOiBidXJzdCAoc2l6ZTogOCk6 IDMwMi40NA0KPiA+IGVsZW0gQVBJczogZWxlbWVudCBzaXplIDE2QjogU1AvU0M6IGJ1cnN0IChz aXplOiAzMik6IDQ2Ni4zMQ0KPiA+IGVsZW0gQVBJczogZWxlbWVudCBzaXplIDE2QjogTVAvTUM6 IGJ1cnN0IChzaXplOiA4KTogNTAyLjUxDQo+ID4gZWxlbSBBUElzOiBlbGVtZW50IHNpemUgMTZC OiBNUC9NQzogYnVyc3QgKHNpemU6IDMyKTogNjk1LjgxDQo+ID4NCj4gPiAjIyMgVGVzdGluZyBi dWxrIGVucS9kZXEgIyMjDQo+ID4gZWxlbSBBUElzOiBlbGVtZW50IHNpemUgMTZCOiBTUC9TQzog YnVsayAoc2l6ZTogOCk6IDI5NS4xNQ0KPiA+IGVsZW0gQVBJczogZWxlbWVudCBzaXplIDE2Qjog U1AvU0M6IGJ1bGsgKHNpemU6IDMyKTogNDYyLjc3DQo+ID4gZWxlbSBBUElzOiBlbGVtZW50IHNp emUgMTZCOiBNUC9NQzogYnVsayAoc2l6ZTogOCk6IDQ5Ni44OQ0KPiA+IGVsZW0gQVBJczogZWxl bWVudCBzaXplIDE2QjogTVAvTUM6IGJ1bGsgKHNpemU6IDMyKTogNjkwLjQ2DQo+ID4NCj4gPiAj IyMgVGVzdGluZyBlbXB0eSBidWxrIGRlcSAjIyMNCj4gPiBlbGVtIEFQSXM6IGVsZW1lbnQgc2l6 ZSAxNkI6IFNQL1NDOiBidWxrIChzaXplOiA4KTogNy41MA0KPiA+IGVsZW0gQVBJczogZWxlbWVu dCBzaXplIDE2QjogTVAvTUM6IGJ1bGsgKHNpemU6IDgpOiA3LjQ0DQo+ID4NCj4gPiAjIyMgVGVz dGluZyB1c2luZyB0d28gcGh5c2ljYWwgY29yZXMgIyMjDQo+ID4gZWxlbSBBUElzOiBlbGVtZW50 IHNpemUgMTZCOiBTUC9TQzogYnVsayAoc2l6ZTogOCk6IDY1Ljg1DQo+ID4gZWxlbSBBUElzOiBl bGVtZW50IHNpemUgMTZCOiBNUC9NQzogYnVsayAoc2l6ZTogOCk6IDEwMy44MA0KPiA+IGVsZW0g QVBJczogZWxlbWVudCBzaXplIDE2QjogU1AvU0M6IGJ1bGsgKHNpemU6IDMyKTogMjMuMjcNCj4g PiBlbGVtIEFQSXM6IGVsZW1lbnQgc2l6ZSAxNkI6IE1QL01DOiBidWxrIChzaXplOiAzMik6IDMx LjE3DQo+ID4NCj4gPiAjIyMgVGVzdGluZyB1c2luZyBhbGwgc2xhdmUgbm9kZXMgIyMjDQo+ID4N Cj4gPiBCdWxrIGVucS9kZXF1ZXVlIGNvdW50IG9uIHNpemUgOA0KPiA+IENvcmUgWzhdIGNvdW50 ID0gMzA0MjIzDQo+ID4gQ29yZSBbOV0gY291bnQgPSAzMDQyMjENCj4gPiBUb3RhbCBjb3VudCAo c2l6ZTogOCk6IDYwODQ0NA0KPiA+DQo+ID4gQnVsayBlbnEvZGVxdWV1ZSBjb3VudCBvbiBzaXpl IDMyDQo+ID4gQ29yZSBbOF0gY291bnQgPSAyMTQ4NTYNCj4gPiBDb3JlIFs5XSBjb3VudCA9IDIx NDg1NQ0KPiA+IFRvdGFsIGNvdW50IChzaXplOiAzMik6IDEwMzgxNTUNCj4gPiBUZXN0IE9LDQo+ ID4gUlRFPj5xdWl0DQo+ID4NCj4gPg0KPiANCj4gRW5jb3VudGVyZWQgYSBjb3VwbGUgb2YgZGlm ZmVyZW50IGJ1aWxkIGVycm9ycyB3aXRoIHRoZXNlIHBhdGNoZXMgb24gbXkNCj4gUG93ZXIgOSBz eXN0ZW06DQo+IA0KPiBJbiBmaWxlIGluY2x1ZGVkIGZyb20gLi4vbGliL2xpYnJ0ZV9yaW5nL3J0 ZV9yaW5nLmg6NTM0LA0KPiAgICAgICAgICAgICAgICAgICBmcm9tIC4uL2RyaXZlcnMvbWVtcG9v bC9yaW5nL3J0ZV9tZW1wb29sX3JpbmcuYzo5Og0KPiAuLi9saWIvbGlicnRlX3JpbmcvcnRlX3Jp bmdfaHRzX2dlbmVyaWMuaDogSW4gZnVuY3Rpb24NCj4g4oCYX19ydGVfcmluZ19odHNfdXBkYXRl X3RhaWzigJk6DQo+IC4uL2xpYi9saWJydGVfcmluZy9ydGVfcmluZ19odHNfZ2VuZXJpYy5oOjYx OjI6IHdhcm5pbmc6IGltcGxpY2l0DQo+IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmFJURV9B U1NFUlTigJk7IGRpZCB5b3UgbWVhbiDigJhSVEVfU1RS4oCZPw0KPiBbLVdpbXBsaWNpdC1mdW5j dGlvbi1kZWNsYXJhdGlvbl0NCj4gICAgUlRFX0FTU0VSVChuID49IG51bSk7DQo+ICAgIF5+fn5+ fn5+fn4NCj4gICAgUlRFX1NUUg0KPiANCj4gRml4ZWQgYnkgYWRkaW5nICIjaW5jbHVkZSA8cnRl X2RlYnVnLmg+IiB0byBydGVfcmluZy5oLg0KPiANCj4gQWxzbyBlbmNvdW50ZXJlZDoNCj4gDQo+ IEluIGZpbGUgaW5jbHVkZWQgZnJvbSAuLi9hcHAvdGVzdC90ZXN0X3JpbmdfaHRzX3N0cmVzcy5j OjU6DQo+IC4uL2FwcC90ZXN0L3Rlc3RfcmluZ19zdHJlc3MuaDogSW4gZnVuY3Rpb24g4oCYY2hl Y2tfdXBkdF9lbGVt4oCZOg0KPiAuLi9hcHAvdGVzdC90ZXN0X3Jpbmdfc3RyZXNzLmg6MTYyOjk6 IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZQ0KPiDigJhydGVfc3BpbmxvY2tfdOKAmQ0KPiAgICBz dGF0aWMgcnRlX3NwaW5sb2NrX3QgZHVtcF9sb2NrOw0KPiAgICAgICAgICAgXn5+fn5+fn5+fn5+ fn4NCj4gLi4vYXBwL3Rlc3QvdGVzdF9yaW5nX3N0cmVzcy5oOjE2Njo0OiB3YXJuaW5nOiBpbXBs aWNpdCBkZWNsYXJhdGlvbiBvZg0KPiBmdW5jdGlvbiDigJhydGVfc3BpbmxvY2tfbG9ja+KAmTsg ZGlkIHlvdSBtZWFuIOKAmHJ0ZV9jYWxsb2Nfc29ja2V04oCZPw0KPiBbLVdpbXBsaWNpdC1mdW5j dGlvbi1kZWNsYXJhdGlvbl0NCj4gICAgICBydGVfc3BpbmxvY2tfbG9jaygmZHVtcF9sb2NrKTsN Cj4gICAgICBefn5+fn5+fn5+fn5+fn5+fg0KPiAgICAgIHJ0ZV9jYWxsb2Nfc29ja2V0DQo+IC4u L2FwcC90ZXN0L3Rlc3RfcmluZ19zdHJlc3MuaDoxNjY6NDogd2FybmluZzogbmVzdGVkIGV4dGVy biBkZWNsYXJhdGlvbg0KPiBvZiDigJhydGVfc3BpbmxvY2tfbG9ja+KAmSBbLVduZXN0ZWQtZXh0 ZXJuc10NCj4gLi4vYXBwL3Rlc3QvdGVzdF9yaW5nX3N0cmVzcy5oOjE3Mjo0OiB3YXJuaW5nOiBp bXBsaWNpdCBkZWNsYXJhdGlvbiBvZg0KPiBmdW5jdGlvbiDigJhydGVfc3BpbmxvY2tfdW5sb2Nr 4oCZOyBkaWQgeW91IG1lYW4g4oCYcHRocmVhZF9yd2xvY2tfdW5sb2Nr4oCZPw0KPiBbLVdpbXBs aWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0NCj4gICAgICBydGVfc3BpbmxvY2tfdW5sb2NrKCZk dW1wX2xvY2spOw0KPiAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn4NCj4gICAgICBwdGhyZWFkX3J3 bG9ja191bmxvY2sNCj4gLi4vYXBwL3Rlc3QvdGVzdF9yaW5nX3N0cmVzcy5oOjE3Mjo0OiB3YXJu aW5nOiBuZXN0ZWQgZXh0ZXJuIGRlY2xhcmF0aW9uDQo+IG9mIOKAmHJ0ZV9zcGlubG9ja191bmxv Y2vigJkgWy1XbmVzdGVkLWV4dGVybnNdDQo+IA0KPiBGaXhlZCBieSBhZGRpbmcgIiNpbmNsdWRl IDxydGVfc3BpbmxvY2suaD4iIHRvIHRlc3RfcmluZ19zdHJlc3MuaC4NCg0KVGhhbmtzIGEgbG90 IGZvciB0cnlpbmcgaXQgZ3V5cy4gDQpBYm91dCBjb21waWxhdGlvbiBpc3N1ZXMgLSB3aWxsICB0 byBhZGRyZXNzIGl0IGluIFYxLg0KS29uc3RhbnRpbg0KDQo=