From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-eopbgr10077.outbound.protection.outlook.com [40.107.1.77]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 1E4FC3B29E for ; Thu, 7 Mar 2019 10:56:54 -0500 (EST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=darbyshire-bryant.me.uk; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1aUXM4RxHnYPHDY2Y2LCFgKPrrOWEhVucjd1GIBvMJA=; b=FXg27bkegle8W0Fin4HJoyt92AP0FewV1agaX67QFcT+C1lIozx3VHGYnfWMNblui+L0GyqfrvFxoT1+8fzoTpc+QHslyxLvJg3vyn/SGEQ2Mm60nnoi4DdbKHWIGsUVfXOB+xTtTV1bE3GW5/UB05F9gbM9x0Qfc4btMGM8mTo= Received: from VI1PR0302MB2750.eurprd03.prod.outlook.com (10.171.105.143) by VI1PR0302MB2734.eurprd03.prod.outlook.com (10.171.105.139) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1686.18; Thu, 7 Mar 2019 15:56:52 +0000 Received: from VI1PR0302MB2750.eurprd03.prod.outlook.com ([fe80::a8fc:70f:5750:d2d8]) by VI1PR0302MB2750.eurprd03.prod.outlook.com ([fe80::a8fc:70f:5750:d2d8%9]) with mapi id 15.20.1686.016; Thu, 7 Mar 2019 15:56:52 +0000 From: Kevin Darbyshire-Bryant To: =?utf-8?B?VG9rZSBIw7hpbGFuZC1Kw7hyZ2Vuc2Vu?= CC: "cake@lists.bufferbloat.net" Thread-Topic: [Cake] act_connmark + dscp Thread-Index: AQHU02CjWXJhct0dNEuheIVrRmNQZKX+uekAgAA3ZICAAQP6AIAAYK2A Date: Thu, 7 Mar 2019 15:56:51 +0000 Message-ID: <4505E3A0-6AE2-4C0B-960D-B1EDB616F0CA@darbyshire-bryant.me.uk> References: <875zsw110r.fsf@toke.dk> <6B530473-971A-4265-B94B-3595D39D57AF@darbyshire-bryant.me.uk> <87r2bjyoyn.fsf@toke.dk> In-Reply-To: <87r2bjyoyn.fsf@toke.dk> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=kevin@darbyshire-bryant.me.uk; x-originating-ip: [2a02:c7f:1240:ee00::dc83] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 182a32b0-b0e6-4eb8-b2d5-08d6a31583e1 x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(7021145)(8989299)(4534185)(7022145)(4603075)(4627221)(201702281549075)(8990200)(7048125)(7024125)(7027125)(7023125)(5600127)(711020)(4605104)(2017052603328)(7153060)(7193020); SRVR:VI1PR0302MB2734; x-ms-traffictypediagnostic: VI1PR0302MB2734: x-microsoft-exchange-diagnostics: =?utf-8?B?MTtWSTFQUjAzMDJNQjI3MzQ7MjM6dG9xcEJGbjNhTXp2ZWVNMTR4dHRyb0dU?= =?utf-8?B?QWQwYlJEcTQvZFgxS2RvRmxtS21QUkxtVTBtSnZPazdwQWNKU015eVhnSUEr?= =?utf-8?B?emxjQ0JQZzQ4VXdQTTBqTUJBbElQbXNxRm1HcTJXQzY5WHc5TmJrTHpydjlS?= =?utf-8?B?Qy9rdG1oWEU5RzRicy9jc3ZSUWc4MVdlUUN0Vk4rbDdTN014bi94cCtqbFl2?= =?utf-8?B?Qi9adE1rMUNYK2ZlQU4xZnZ3c3Y3R2Z5c3RNOGZ3Y0pDa3N6RkhnUHJUU3NW?= =?utf-8?B?cjJrdWg2djhORWtlK1FUekV3MEZRN0hhZVZMYmRDWE9ZanM4ZGovbzZOZ3RJ?= =?utf-8?B?eGhvL0lEYk55aE0wK0JzK2FzTFVOM0pRU29TQjN6YlVQMDhBaG5HaE9UL1ZT?= =?utf-8?B?NFp5MnZmS1FyNEF2UzluTmJlQUpvVnN0azdJbkNISEMzVVluam4wc0FYSXpE?= =?utf-8?B?eWozc25WaU9IbDdTV0ZaNXVnbnBKOGl4bHhyejVmT0pTYm8zb1krZ1RYcndG?= =?utf-8?B?WWFUbUsyMzBvcU9LWXIrU1RvYnVORWx5YUo1c1ZuQzIrRmhMZ3c3RTdvcExB?= =?utf-8?B?UWtkZFZTeWpxdHRWa1ZaR0lFL2wzMFpIbndLS2wzZDR1M3hReG9keEczR3V5?= =?utf-8?B?NlEwYXNrL0JQVnplVWE1RDFpUGsyZnUxdkUvZzZHNWdWYk1xZ1dKa2sydDdI?= =?utf-8?B?aHRMSE5LZytVdVM4YmRCUzhQelg4c0xPcDJIUkpibVY1MmM3UWZWN1lLazdn?= =?utf-8?B?dGRqaktETTFNSWdwLzZJMzBGcXB0OE9sS3JhQUlzQnZLdEE3eHNmMW5QSHl0?= =?utf-8?B?aUkvUVVsOVk0RlZaRUJwYWE4L0lmVWtwM3JCVEFNL2RvRnU4bE9RdnBqY0Zx?= =?utf-8?B?dzZHa1dPSlYwMElrYjJiRnVWblhBRmVqMWNqVGNJYzV4bVI0TWYrOUg3K01B?= =?utf-8?B?QXdRM3pwNEJSOExPbmdSQmk0T3ZSaktqb05qSjdqNER6djZHZEJHMXB2OGY1?= =?utf-8?B?enB4UnpaVW56YUpNM1FET1pwaDlWdTdJeStaamZVRWNKYmpmWEJHdGNQZHpS?= =?utf-8?B?T0hXN1hlR0tjMTBSY1RDN25vNWJDY3o2MndXRHdwNUNLckhCOVlRZUJLOGg3?= =?utf-8?B?RHVSY1E5cGpHeU82M2QvcGt1M2JKNXYvSFN0TjNMYXhoMWxVUkcreU9kVlVu?= =?utf-8?B?RkJTV3hXbzUyMHdheUdKZjdMVUNrb1FPcTBYV0dvN0wzZXRkUy9MQkNHWllM?= =?utf-8?B?emljZVpYeGl2M2h1MXRyOHVCaTV1d2ZVOUg2QlpTTHN6NUY4enBza2hkQ0Rk?= =?utf-8?B?bFFvWHZSaS9mVzVqSkJBbEFDdlplaWdlWEh5VUl6emJxNC84M2ZoTk1uMUQ0?= =?utf-8?B?T1BJMXhENU9qMlVrQ21ZdU9iRTliTEgzRk5kRUN5ZGFyYW40bnhzMDlsSzUr?= =?utf-8?B?bWZzVDBRNk03VExJTCtoNTgxb1NoS0JnOVpvVFlLUURjZEdDZTNqa1k3UEtU?= =?utf-8?B?NU0ydHllbXE4anp5dUpwVm1GcWtuSDVFaE9yNEE3Q3VLQ1o4RE9GK0RjaXBT?= =?utf-8?B?T2dNOGdFeDBQekMyRWVQWmhhWUFtYzIrdHl6WHlKVjZIYmxpVDVDWG80OFRm?= =?utf-8?B?S0d4dmMweXhZcVdJQlRUOWdlTFhKSnRnajR1VG5qRHRLczgzeWhuS1MwWCtR?= =?utf-8?Q?r3QznqNSBPIseRmO22bAxUe1SaB4bA9Mx+R32Odhw?= x-microsoft-antispam-prvs: x-forefront-prvs: 096943F07A x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(366004)(396003)(346002)(39830400003)(136003)(376002)(189003)(199004)(66574012)(256004)(305945005)(14444005)(25786009)(93886005)(14454004)(68736007)(316002)(7736002)(229853002)(6486002)(8936002)(106356001)(105586002)(97736004)(53936002)(6116002)(8676002)(82746002)(6246003)(81156014)(81166006)(6512007)(74482002)(71190400001)(476003)(71200400001)(86362001)(486006)(508600001)(36756003)(33656002)(2906002)(99286004)(4326008)(11346002)(6916009)(46003)(2616005)(186003)(76176011)(446003)(6506007)(83716004)(5660300002)(102836004)(53546011)(6436002); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0302MB2734; H:VI1PR0302MB2750.eurprd03.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: darbyshire-bryant.me.uk does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: Urenrivf2Zd/3He0KHSNxzGUwFnkVq4OVltgdxDjMXOhwZv8RG+31/Xz1hW61jYp3afkvKLQBxZpQdGixyl/zaeWfH74K/VS28phh00JcgqZgpzNdbtSp1BVeUmiEdjeBZETOqaljjH3+YEMk2ksUw+t9reRaC3NmVUB8G4tZNIhcFHDFy2fNbMlMvkIU1Q/VQMRxh0xl/1AVoiBRPvf7q1TgQ+P7f8glg5pEhiSSbdt44yJ/s6m5mMY2aIZ1Ftt0ewM1ZfkUVJgVF+PF1o6PxJ2ZHeRO+ojxq2SXKiZuxtijOpzxGuhcbwbVL5lILTVgT6qH2WCJIfPiOfq9rCKy4HJwE6f5awPkxs+NiJokeIm/lbXFqL+g4CHO2ur7Mq4phe3NxFSB2NNK7gQUF/1rTZg8vnXkIQhtRdT93wzkOA= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: darbyshire-bryant.me.uk X-MS-Exchange-CrossTenant-Network-Message-Id: 182a32b0-b0e6-4eb8-b2d5-08d6a31583e1 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Mar 2019 15:56:51.9789 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 9151708b-c553-406f-8e56-694f435154a4 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0302MB2734 Subject: Re: [Cake] act_connmark + dscp X-BeenThere: cake@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: Cake - FQ_codel the next generation List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Mar 2019 15:56:54 -0000 DQoNCj4gT24gNyBNYXIgMjAxOSwgYXQgMTA6MTAsIFRva2UgSMO4aWxhbmQtSsO4cmdlbnNlbiA8 dG9rZUByZWRoYXQuY29tPiB3cm90ZToNCg0KPHNuaXBwaW5nIHNvbWUgY29udGV4dD4NCj4+Pj4g DQo+Pj4+IFRoZSB2YWxpZCBiaXQgaXMgc2V0IHdoZW4gdGhlIOKAmGdldGRzY3DigJkgZnVuY3Rp b24gaGFzIHdyaXR0ZW4gYSBEU0NQDQo+Pj4+IHZhbHVlIGludG8gdGhlIGNvbm50cmFjayAoJiBo ZW5jZSBza2IpIG1hcmsuIFRoaXMgYWxsb3dzIHVzICYgb3RoZXINCj4+Pj4gc2tiLT5tYXJrL2N0 LT5tYXJrIGFwcGxpY2F0aW9ucyAoZWcgaXB0YWJsZXMsIGNha2UgcWRpc2MpIHRvIGtub3cgdGhh dA0KPj4+PiBhIERTQ1AgdmFsdWUgaGFzIGJlZW4gcGxhY2VkIGluIHRoZSBmaWVsZC4gV2UgY2Fu bm90IHNpbXBseSB1c2UgYQ0KPj4+PiBub24temVybyBEU0NQIGJlY2F1c2UgemVybyBpcyBhIHZh bGlkIERTQ1AuDQo+Pj4gDQo+Pj4gSWYgc29tZW9uZSBpbnN0YWxscyB0aGUgYWN0aW9uLCB0aGUg ZmllbGQgaXMgc3VwcG9zZWRseSBhbHdheXMgY29waWVkOw0KPj4+IHNvIHdoeSBkbyB3ZSBuZWVk IGFub3RoZXIgZmxhZz8NCj4+IA0KPj4gSeKAmW0gdHJ5aW5nIHRvIGxpbWl0IHRoZSBudW1iZXIg b2YgdGltZXMgZXhwZW5zaXZlIGlwdGFibGVzIG1hbmdsZQ0KPj4gcnVsZXMgaGF2ZSB0byBydW4u DQo+IA0KPiBSaWdodCwgSSBzZWUgeW91ciBwb2ludCwgYnV0IEknbSB3b3JyaWVkIHRoYXQgdGhp cyBjYW4gcmlzayBiZWNvbWluZyBhDQo+IHNvdXJjZSBvZiBoYXJkLXRvLWRlYnVnIGJ1Z3MgaWYg dGhpcyBiaXQgaGFwcGVucyB0byBnZXQgc2V0IGJ5IGFjY2lkZW50DQo+IGluIG90aGVyIHBsYWNl cy4gU28sIEkgd291bGQgc3VnZ2VzdCB0byBhdCBsZWFzdCBtYWtlIGl0IG9wdGlvbmFsIChhbmQN Cj4gY29uZmlndXJhYmxlKS4gU28gaG93IGFib3V0IHRoZSBmb2xsb3dpbmcgY29uZmlndXJhdGlv biBvcHRpb25zOg0KDQpQaGV3LCBJIGV4cGxhaW5lZCBteXNlbGYgY2xlYXJseSBlbm91Z2ggKGp1 c3QpIHRoYXQgdGltZSA6LSkuIFRoZXJl4oCZcyBhIGNvbXByb21pc2UgaGVyZSB0byBiZSBoYWQg YmV0d2VlbiBzZXR0aW5nL3VzaW5nIGEgRFNDUCBmb3IgY29ubmVjdGlvbihmd21hcmspIHZzIHNl dHRpbmcvdXNpbmcgYSBEU0NQIHBlciBwYWNrZXQuICBNb3N0bHkgaXTigJlzIGEgKGltcHJvdmVk KSBwZXJmb3JtYW5jZSB2cyBEU0NQIGFjY3VyYWN5IGNvbXByb21pc2UgYW5kIGFzc3VtZXMgRFND UCBpc27igJl0IGdvaW5nIHRvIGNoYW5nZSBhZnRlciB0aGUgY29ubmVjdGlvbiBoYXMgYmVlbiBl c3RhYmxpc2hlZCAtIHNvbWUgcGVvcGxlIGhhdmUgcnVsZXMgdGhhdCBtYW5nbGUgRFNDUCBiYXNl ZCBvbiBhbW91bnQgb2YgZGF0YSB0cmFuc2ZlcnJlZC4gIFBlcnNvbmFsIHZpZXc6IGFueXRoaW5n IHRoYXQgcGVybWl0cyBzb21lIHNvcnQgb2YgY2xhc3NpZmljYXRpb24gcmVzdG9yYXRpb24gb24g aW5ncmVzcyBoYXMgdG8gYmUgYW4gaW1wcm92ZW1lbnQgb24gd2hhdCB3ZSBoYXZlIG5vdy4NCg0K PiANCj4gLSBmd21hcmsgbWFzayAoMzItYml0IHZhbHVlKQ0KPiAgc3BlY2lmaWVzIGEgbWFzayB0 byBhcHBseSB0byB0aGUgZndtYXJrIGZpZWxkIGJlZm9yZSBhbGwgb3BlcmF0aW9ucw0KDQpZZXMg LSBtYWtlcyBzZW5zZS4NCg0KPiANCj4gLSBmd21hcmsgc2hpZnQgKHZhbGlkIHZhbHVlcyAwLTMy KQ0KPiAgc3BlY2lmaWVzIGhvdyBtYW55IGJpdHMgdG8gbGVmdC1zaGlmdCB0aGUgRFNDUCB2YWx1 ZXMgYmVmb3JlIHB1dHRpbmcNCj4gIHRoZW0gaW50byB0aGUgZndtYXJrIChhbmQgaG93IG1hbnkg Yml0cyB0byByaWdodC1zaGlmdCB0aGUgdmFsdWUgcmVhZA0KPiAgZnJvbSBmd21hcmsgYmVmb3Jl IHdyaXRpbmcgaXQgdG8gdGhlIERTQ1AgZmllbGQpOyB0aGlzIGNvdWxkIGFsc28gYmUNCj4gIGlu ZmVycmVkIGZyb20gdGhlIG1hc2sgcmF0aGVyIHRoYW4gYmUgYSBzZXBhcmF0ZSBvcHRpb24gKHNo aWZ0ID0NCj4gIGxvd2VzdCBzZXQgYml0IG9mIG1hc2spDQoNCkkgdGhpbmsgdGhlIGluZmVycmVk IGNob2ljZSBpcyBiZXN0LiAgSSBjYW4gc2VlIGFsbCBtYW5uZXIgb2YgY29uZnVzaW5nIGJlaGF2 aW91ciB3aXRoIG1pc21hdGNoZXMgYmV0d2VlbiBtYXNrICYgc2hpZnQuICBBbHNvIGl04oCZcyBv bmUgbGVzcyBwYXJhbWV0ZXIgdG8gcGFzcyDigKYgYW5kIGluIG15IGRyZWFtIHdvcmxkIGhhdmUg dG8gYWRkIHNvbWUgb2YgdGhlc2UgcGFyYW1ldGVycyBpbnRvIGNha2UgYXMgd2VsbCBzbyBpdCBj YW4gaW50ZXJwcmV0IHRoZSBEU0NQIGNvbnRhaW5pbmcgZndtYXJrIGFzIHdlbGzigKYgdGhlIGZl d2VyIHRoZSBiZXR0ZXIgOi0pDQoNCj4gDQo+IC0gZ2V0X2RzY3AgKGJvb2xlYW47IGNhbm5vdCBi ZSBzZXQgYWxvbmcgd2l0aCBzZXRfZHNjcCkNCj4gIGlmIHNldCwgdGhlIERTQ1AgZmllbGQgd2ls bCBiZSBjb3BpZWQgdG8gdGhlIGZ3bWFyayBmaWVsZCwgc3ViamVjdCB0bw0KPiAgbWFzayBhbmQg c2hpZnQNCg0KWWVzDQoNCj4gDQo+IC0gc2V0X2RzY3AgKGJvb2xlYW47IGNhbm5vdCBiZSBzZXQg YWxvbmcgd2l0aCBnZXRfZHNjcCkNCj4gIGlmIHNldCwgdGhlIHZhbHVlIGluIGZ3bWFyayB3aWxs IGJlIGNvcGllZCB0byB0aGUgRFNDUCBmaWVsZCwgc3ViamVjdA0KPiAgdG8gbWFzayBhbmQgc2hp ZnQNCg0KWWVzDQoNCj4gDQo+IC0gc3RhdGUgbWFzayAoMzItYml0IHZhbHVlOyBwcm9iYWJseSBu ZWVkcyBiZXR0ZXIgbmFtZSkNCj4gIGlmIHNldDogdGhlIGdldF9kc2NwIGFjdGlvbiB3aWxsIE9S IHRoZSByZXN1bHRpbmcgZndtYXJrIGJlZm9yZQ0KPiAgc3RvcmluZyBpdC4gdGhlIHNldF9kc2Nw IHZhbHVlIHdpbGwgQU5EIHRoZSBmd21hcmsgd2l0aCB0aGlzIHZhbHVlDQo+ICBiZWZvcmUgZG9p bmcgYW55dGhpbmcsIGFuZCBhYm9ydCBpZiB0aGUgcmVzdWx0IGlzIGZhbHNlLg0KDQpOZWFybHk6 ICBJZiBzZXQ7IHRoZSBnZXRfZHNjcCBhY3Rpb24gd2lsbCBBTkQgdGhlIGZ3bWFyayB3aXRoIHRo aXMgdmFsdWUgYW5kIGFib3J0IGlmIHRydWUuICBJZiBmYWxzZSBpdCB3aWxsIE9SIHRoZSByZXN1 bHRpbmcgZndtYXJrIGJlZm9yZSBzdG9yaW5nIGl0LiAgdGhlIHNldF9kc2NwIGFjdGlvbiB3aWxs IEFORCB0aGUgZndtYXJrIHdpdGggdGhpcyB2YWx1ZSBiZWZvcmUgZG9pbmcgYW55dGhpbmcgYW5k IHdpbGwgYWJvcnQgaWYgcmVzdWx0IGlzIGZhbHNlLg0KDQpUaGUg4oCYZ2V0X2RzY3AgYWN0aW9u IEFORCB3aXRoIGZ3bWFyayBhbmQgYWJvcnQgaWYgdHJ1ZeKAmSBpcyB0aGUgZnVuY3Rpb24gdGhh dCBhbGxvd3MgRFNDUCB2YWx1ZXMgdG8g4oCYc3RpY2snIGludG8gYSBjb25uZWN0aW9uLCB0aHVz IG9idmlhdGluZyB0aGUgbmVlZCBmb3IgaXB0YWJsZXMgcnVsZXMgdG8gbWFuZ2xlIHRoZSBEU0NQ IG9uIGV2ZXJ5IGVncmVzcyBwYWNrZXQuDQoNCkkgY2FuIHNlZSBhIGNvbmZsaWN0IGJldHdlZW4g cGVvcGxlIHdobyB3YW50IHRoZSBEU0NQIGNvcGllZCBpbnRvIGZ3bWFyayBubyBtYXR0ZXIgd2hh dCBhbmQgcGVvcGxlIHN1Y2ggYXMgbXlzZWxmIHdobyB3aXNoIGl0IHRvIG9ubHkgaGFwcGVuIGlm IGZ3bWFyayBkb2VzbuKAmXQgaGF2ZSBpdCBzZXQgYWxyZWFkeS4NCg0KSXMgdGhlIHNvbHV0aW9u IHRvIGhhdmUgYSDigJhnZXRfY2hlY2tfc3RhdGXigJkgb3B0aW9uIHRoYXQgZW5hYmxlcyB0aGUg 4oCYZ2V0X2RzY3AgYWN0aW9uIGFuZCB3aXRoIGZ3bWFyayDigJlzdGF0ZSBtYXNr4oCZIGFib3J0 IGlmIHRydWUgY2hlY2s/ICBNYXliZSBldmVuIHNpbXBsZXIgdG8gaGF2ZSBhIOKAmGdldF9zdGF0 ZSBtYXNr4oCZIGFuZCBhIOKAmXNldF9zdGF0ZSBtYXNr4oCZIC0gQU5EIHRoZSBmd21hcmsgd2l0 aCB0aGUgZ2V0X3N0YXRlIG1hc2ssIGlmIGZhbHNlIGNvcHkgdGhlIGRzY3AsIGVsc2UgYWJvcnQu DQoNCj4gDQo+IEkgdGhpbmsgdGhpcyB3b3VsZCBhbGxvdyB5b3UgdG8gaW1wbGVtZW50IHdoYXQg eW91IGRlc2NyaWJlZCwgd2l0aG91dA0KPiBoYXJkLWNvZGluZyBhbnkgYmVoYXZpb3VyLiBSaWdo dD8NCg0KTm90IHF1aXRlIC0gc2VlIGFib3ZlLg0KDQo+IA0KPiBEb2VzIGFueW9uZSBlbHNlIGhh dmUgYW55IG9waW5pb25zIC8gb2JqZWN0aW9ucyB0byB0aGUgYWJvdmUgQVBJPw0KPiANCj4gDQo+ PiBUaGUgcmVhbGl0eSBpcyB0aGF0IEkgZW5qb3llZCBkb2luZyB0aGlzIGluIHRoZSBjYWtlIGNv ZGViYXNlLiAgSQ0KPj4gY2Fubm90IHNheSB0aGUgc2FtZSBmb3IgYWN0X2Nvbm5tYXJrIGluIGZh Y3QgSSBoYXRlIGl0IHNvIG11Y2ggSeKAmW0NCj4+IHN0b3BwaW5nLiAgVGhlIG1lbnRhbCBlZmZv cnQgZm9yIGEgbm9uLXByb2dyYW1tZXIgYW5kIG1vcmUgaW1wb3J0YW50bHkNCj4+IGEgbm9uLWtl cm5lbCBwcm9ncmFtbWVyIGlzIGV4aGF1c3RpbmcgJiBJ4oCZbSBjb21wbGV0ZWx5IGRpc2lsbHVz aW9uZWQuDQo+PiBJIHJlYWxseSBuZWVkIHRvIGNvbmNlbnRyYXRlIG9uIHRoZSBqb2IgdGhhdCBt ZWFucyBJIGNhbiBwYXkgdGhlDQo+PiBtb3J0Z2FnZSwgd2hpY2ggaXNu4oCZdCBiYXNoaW5nIG15 IGhlYWQgYWdhaW5zdCB0aGUga2VybmVsLg0KPiANCj4gRmFpciBlbm91Z2g7IG5vIHJlYXNvbiB0 byBkbyB0aGlzIGlmIHlvdSdyZSBub3QgZW5qb3lpbmcgaXQhIFdlIGNhbg0KPiBpdGVyYXRlIG9u IHRoZSBBUEksIGFuZCBJIGd1ZXNzIEkgY2FuIHdyaXRlIHRoZSBjb2RlIGF0IHNvbWUgcG9pbnQg aW4NCj4gdGhlIGZ1dHVyZSBpZiBubyBvbmUgZWxzZSBiZWF0cyBtZSB0byBpdC4gTm8gcHJvbWlz ZXMgb24gd2hlbiwgdGhvdWdoLA0KPiBzbyBpZiBzb21lb25lIGVsc2UgZmVlbHMgbGlrZSB0YWNr bGluZyBpdCwgcGxlYXNlIGdvIGFoZWFkIDopDQo+IA0KPiAtVG9rZQ0KDQoNCg0K