From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150058.outbound.protection.outlook.com [40.107.15.58]) (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 06FF23B2A4 for ; Mon, 11 Mar 2019 10:11:53 -0400 (EDT) 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=VM0m3pUzmvRl8mra0KRI0bxV7V0bODaJUllmnT83DQ8=; b=TnH64GS+LZXiqdFTdacGdvuompSVB6O7s8JwfgkV2Bxbaev1O9/u+rEJoC4K6NGI4giBuo4GhAE06kxkORseK8ztYWAh2K0qYT51apOtqQNz/JZIFhBupkXHvd97tLUc6sLNY1VmvgPfi9LizJCdyZ56R/SiqoigCHnjjEM9wpg= Received: from VI1PR0302MB2750.eurprd03.prod.outlook.com (10.171.105.143) by VI1PR0302MB3232.eurprd03.prod.outlook.com (52.134.12.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1686.18; Mon, 11 Mar 2019 14:11: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.021; Mon, 11 Mar 2019 14:11: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+uekAgAA3ZICAAQP6AIAAYK2AgAAc44CAASZIgIAABCOAgAArdICAAZOqgIABpqyAgACQDoCAALbSgIAAJDAAgAAT0QA= Date: Mon, 11 Mar 2019 14:11:52 +0000 Message-ID: References: <875zsw110r.fsf@toke.dk> <6B530473-971A-4265-B94B-3595D39D57AF@darbyshire-bryant.me.uk> <87r2bjyoyn.fsf@toke.dk> <4505E3A0-6AE2-4C0B-960D-B1EDB616F0CA@darbyshire-bryant.me.uk> <878sxq1t3e.fsf@toke.dk> <00E839ED-7FA4-4577-838F-775EC9A90608@darbyshire-bryant.me.uk> <871s3h7ghi.fsf@toke.dk> <7FFADD0C-591A-4BB4-B96C-C0157963E1EB@darbyshire-bryant.me.uk> <87ef7g5eec.fsf@toke.dk> <87imwq4724.fsf@toke.dk> <1D3F7894-4A8F-4D57-BE27-18113FB14131@darbyshire-bryant.me.uk> <875zsp4lc5.fsf@toke.dk> In-Reply-To: <875zsp4lc5.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: 260bc66c-9fa3-4a47-321c-08d6a62b82b1 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:VI1PR0302MB3232; x-ms-traffictypediagnostic: VI1PR0302MB3232: x-microsoft-exchange-diagnostics: =?utf-8?B?MTtWSTFQUjAzMDJNQjMyMzI7MjM6dFd3eVdEN3B6VFMzRXZML1JGd3V2Mmo4?= =?utf-8?B?VytLcXd4cDZVU2xqeDkrOGtPL3ZwZGJ3MXZHVHVHRHVIQTN3bE9RWkNaYUlm?= =?utf-8?B?UmtsclpSZWF2VGgveGFEK1BwK2RRbXhYSFpaNHZlUzdmT2RtT2VSWThqVmx0?= =?utf-8?B?aGFjdk5xTWlnU1VCRTZOZlhTQS9rYzdjRXFJYndiTGJKTFFUV3paT1JTK0M2?= =?utf-8?B?MFJ2TmFBTWFwbHphOGtQWWhBeno0bW1OcjFsajEwc2tObmlNeUR6K3BSQ2xu?= =?utf-8?B?cjhVU1U4VURiWmh1U0RPWXducUExZ2U3eUt5UGhoZHRiOFM2UGt5K3A1enlT?= =?utf-8?B?cDBGaktjbWVzRUhVWmRKL0pOTzB3djB3RVFtR1FuQTRVSWJNdm1qNmpqaCtt?= =?utf-8?B?NXVBWDlRRkVRbTRZdHRMWkk1MzlDZEF4TjZaRlBjQzBzTXM1T2k1cmx4NXVW?= =?utf-8?B?cWRseTNuZWY0dXVYTExVeEluTitwUDcvWXdjT1JiOS81OU5UaURFMGVPdmVY?= =?utf-8?B?dWZrVlI2Zkhyb2VlYUM1NUFRSWh0QkUwM0g1aFdhQmRMNDhFYUlNbG5Jejk2?= =?utf-8?B?U3RNaTcyVnNTMGN6cEVSVUlhTysxTkpXS0UwZnNpb1NyMHhZNW1DUTRpU1Mr?= =?utf-8?B?R3FwNTFsbGtxSUgwN1hmakhwTzkyTVg3b2ZVbUtPZE5jS25qM3RZT1dGVCtE?= =?utf-8?B?VjUxVkRmRXMrNmFOaTRXelJRZUNSSkdqOUhJUnFxYTUwT1JOeXZXUVhPbGFY?= =?utf-8?B?ajlueHlPaldJekU4WmRnT1JwR0lJM0lTNVdKbE9naHFDVFNWMU82bGh0WCs4?= =?utf-8?B?ZWxLK3hXVEplcGhER0duYTZ3Wm1lZlM0bEZJUjQ3WDYveEZySW11anFld1Bs?= =?utf-8?B?c3I4OXRDQWc3RSsvRlNZangrZktyWFBJbWVONEZ5UmRocWd1YmdGTzNYSytz?= =?utf-8?B?cm93akMra0Fmb3FlMVRPVGhtR2U5Vk5wSlhBK0h6UmQrNmJaTnJpOXFWcEdL?= =?utf-8?B?Q051YVppZFFyNUZwbVFhdWJ6R0hNMjU2Y3pCMHFhM3Z2NWFIV0hwaG9nZ1I1?= =?utf-8?B?Qm5nN3NQYmlOaktMbHBDWm9sT0JJN0N1U0RXSlNyMkpEbGNpdXUzcXlwbzdJ?= =?utf-8?B?SDJVc1lJQi9DOHB6ZmxVOXFHYXVRZUZDNTdKSWMvQ0J3WTRabFdkOHJjT2FC?= =?utf-8?B?cHNIMThtQS9XcUp5dVZqRTNkaVhtdW1MZnZRRC9YemwrWm12eWlUbkgvdVp0?= =?utf-8?B?ZFZINXk3Z1NidHYrV3R1Z3BzL0ZaY3liWlJMRExINkd2RVN2RFVUYnQ0dEVq?= =?utf-8?B?Wi95b05RbGxRODdKK0trWmYzRXBLMVArNXlmZkNnSENnYWEyUnBvTW1Ta3Vy?= =?utf-8?B?MVhjcUlwS1Uza3FuUzRJOXBWVkJpZXVMaGk3bVBEQjllbW80c1pwVjFaaThR?= =?utf-8?B?OXpnK0tiOFJhN2tQVXZTOUJjb3dHcEZrL3RZTy9RM2VQSG9pd3haSmhtdm53?= =?utf-8?B?MHN6eGZKeFFzNUtaSEVkcWwyS2pkclJKRzVQcDIvbnBBbmROaFAwVlV0RGFX?= =?utf-8?B?bko3ck02UFFPMzJNL05OaWtuNGdhS0xOdm1LaTJzNStyODN1QjdWRUJSTnd1?= =?utf-8?B?VW1sTDBnYzN4c2kxS0NWK1lzZFB1Y2R6SmVLK2ttZ1RPcHZJRkZNTFg1N0Er?= =?utf-8?B?WEpkZW1oZDl5V3RsUmU1b2s2K3lLczFYYmhBSUx2ZzI5VVY4dTZCSjNGcDIv?= =?utf-8?B?bDJKanRsME15U2Faa283U2FnPT0=?= x-microsoft-antispam-prvs: x-forefront-prvs: 09730BD177 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(39830400003)(366004)(136003)(346002)(396003)(376002)(51444003)(189003)(199004)(486006)(7736002)(305945005)(316002)(476003)(46003)(105586002)(11346002)(82746002)(2616005)(93886005)(106356001)(446003)(81156014)(81166006)(8676002)(6246003)(102836004)(508600001)(6116002)(97736004)(6916009)(6506007)(86362001)(14454004)(53546011)(229853002)(25786009)(6436002)(74482002)(53936002)(14444005)(68736007)(2906002)(6512007)(66574012)(33656002)(36756003)(5660300002)(8936002)(6486002)(83716004)(186003)(76176011)(71190400001)(71200400001)(99286004)(256004)(4326008); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0302MB3232; 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: XFQtIV0uNa9kmRmaiMbUEqa4f3bTtQPUoQ+X4VDNmKLX2AlHCxUB70zQNLU+VLazwwBPaelljF9PA/txFsrWhodzG2n4zZW24fPgNdZXzR+FHcDus05y6mopJfaDfNIhuDJuLxV3zNKy0500I6sIuKJwOMguasE9z+2RwhycH2VDzgNX7DxJ/iXY4HLYMKQ9uCq8Ziqigi8CuCjlQWAKXFK759jppUPKQaIQmxOY7A64lmabGEvUOan5mOsmsjrHTA2v8OdQhMjULEgvBy3BA1HbrxpLe8cQ1LquL8XnOJggnMtxGaI2n3uUvem3Gal4oAm6YAXbKVQ0vtKhoLlaA4lGSJzoVbcn7BIg5mPFsSFRNOOuQdApZRiGuWuqlQPTsogah82EAbo2GlNw0bRmhsPD39IigxqK065a6Owhjec= 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: 260bc66c-9fa3-4a47-321c-08d6a62b82b1 X-MS-Exchange-CrossTenant-originalarrivaltime: 11 Mar 2019 14:11:52.4758 (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: VI1PR0302MB3232 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: Mon, 11 Mar 2019 14:11:54 -0000 DQoNCj4gT24gMTEgTWFyIDIwMTksIGF0IDEzOjAwLCBUb2tlIEjDuGlsYW5kLUrDuHJnZW5zZW4g PHRva2VAcmVkaGF0LmNvbT4gd3JvdGU6DQo+IA0KPiBLZXZpbiBEYXJieXNoaXJlLUJyeWFudCA8 a2V2aW5AZGFyYnlzaGlyZS1icnlhbnQubWUudWs+IHdyaXRlczoNCj4gDQo+Pj4+IFRoZSB1Z2xp bmVzcyBvZiBkb2luZyB0aGUgZGlmZnNlcnYgcGFyc2luZyBpcyB3aGF0IHByb21wdGVkIHRoZSBp ZGVhDQo+Pj4+IG9mIHN0b3JpbmcgdGhlIERTQ1AgZGlyZWN0bHkgYW5kIEkgZmVsdCB0aGUgc3Rv cmVkIHRpbiBzZWxlY3Rpb24gd2FzDQo+Pj4+IGVmZmVjdGl2ZWx5IGFic3RyYWN0aW5nIHRoZSBk aWZmc2VydiBmaWVsZCBhbnl3YXkuDQo+Pj4gDQo+Pj4gUmlnaHQsIGJ1dCB0aGF0IG1lYW5zIHRo YXQgdGhlIENBS0UgaW50ZXJwcmV0YXRpb24gb2YgdGhlIGZ3bWFyayB3b3VsZA0KPj4+IGhhdmUg dG8gY2hhbmdlIGZyb20gc29tZXRoaW5nIHRoYXQgc2VsZWN0cyB0aGUgdGluLCB0byBzb21ldGhp bmcgdGhhdCBpcw0KPj4+IHRyZWF0ZWQgYXMgYSBEU0NQIG1hcmsuIEkgdGhpbmsgdGhpcyB3YXMg dGhlIHBhcnQgdGhhdCBJIHdhcyBtaXNzaW5nDQo+Pj4gYmVmb3JlLiBJIGRvbid0IHRoaW5rIHRo aXMgaXMgYSBnb29kIGlkZWEsIGFzIHRoYXQgbWVhbnMgd2UgdGllIHRoZQ0KPj4+IG1hcmtzIHRv IG9uZSBwYXJ0aWN1bGFyIHVzZSBjYXNlLg0KPj4gDQo+PiBJIGRpZCBzYXkgaXQgd2FzIGluY29t cGF0aWJsZSB3aXRoIHRoZSBleGlzdGluZyB0aW4gc3RvcmluZyBpZGVhIHJpZ2h0DQo+PiBmcm9t IGRheSAxIGFuZCB3aHkgSSB3YXMgc28ga2Vlbi93b3JyaWVkIGJ5IHRoZSBmYWN0IGl0IGhhZCBh bHJlYWR5DQo+PiBnb25lIHVwc3RyZWFtLg0KPiANCj4gWWVhaCwgYnV0IEkgZGlkbid0IGNvbm5l Y3QgdGhlIGRvdHMgZm9yIGhvdyB0aGlzIHJlbGF0ZWQgdG8gdGhlIENBS0UgdXNlDQo+IGNhc2Ug dW50aWwgSSBzYXcgeW91ciBmdWxsIGV4YW1wbGUuLi4NCj4gDQo+Pj4+IFN0b3JpbmcgdGhlIERT Q1AgaXMgbW9yZSBjb21wYXRpYmxlIHdpdGggZGlmZmVyaW5nIGVncmVzcyB2IGluZ3Jlc3MNCj4+ Pj4gbWFwcGluZ3MgKGVnLiBlZ3Jlc3MgZGlmZnNlcnY0LCBpbmdyZXNzIGRpZmZzZXJ2MyB0aG91 Z2ggSSBjYW7igJl0DQo+Pj4+IHJlYWxseSB0aGluayBvZiBhIHVzZSBjYXNlIGZvciB0aGF0KQ0K Pj4+IA0KPj4+IEkgdGhpbmsgdGhhdCBpZiBzb21lb25lIHdhbnRzIHRvIGRvIHNvbWV0aGluZyBs aWtlIHRoYXQsIHdlIGFyZSB3YXkgb3V0DQo+Pj4gb2YgInNpbXBsZSB1c2UgY2FzZSB0aGF0IHdl IHdhbnQgdG8gYWN0aXZlbHkgc3VwcG9ydCIgdGVycml0b3J5LCBhbmQgY2FuDQo+Pj4gbGVnaXRp bWF0ZWx5IGFzayBwZW9wbGUgdG8gZ28gd3JpdGUgYSBCUEYgZmlsdGVyIG9yIHNvbWV0aGluZyA6 KQ0KPj4+IA0KPj4+PiBPZiBjb3Vyc2UgdXNpbmcgZndtYXJrIGFzIHRpbiBudW1iZXIgc2VsZWN0 b3IgaW4gY2FrZSBkb2VzbuKAmXQgcHJlY2x1ZGUNCj4+Pj4gc29tZSBvdGhlciBtZWNoYW5pc20g b2Ygc3RvcmluZyAmIHJlY292ZXJpbmcgRFNDUCB0by9mcm9tIGZpcmV3YWxsDQo+Pj4+IG1hcmsg ZS5nLiB0aGUgcHJldmlvdXNseSBkaXNjdXNzZWQgYWN0LWNvbm5tYXJrK2RzY3Agd2hpY2ggd291 bGQgaGVscA0KPj4+PiBhbnlvbmUgd2hvIHdhbnRlZCB0byBkbyBzdWNoIOKAmGxpbmsgdHJhdmVy c2luZ+KAmSBEU0NQIHNoZW5hbmlnYW5zLiAgVGhhdA0KPj4+PiBvZiBjb3Vyc2UgbWFrZXMgeW91 IGhhcHBpZXIgc2luY2UgY2FrZSBkb2VzbuKAmXQgZW1iZWQgaXRzZWxmIGZ1cnRoZXINCj4+Pj4g aW50byBjb25udHJhY2suDQo+Pj4gDQo+Pj4gWWVhaCwgSSBkZWZpbml0ZWx5IGRvbid0IHRoaW5r IENBS0UgaGFzIGFueSBidXNpbmVzcyB3cml0aW5nIERTQ1AgdmFsdWVzDQo+Pj4gaW50byB0aGUg bWFyay4gSG93ZXZlciwgYXMgSSBzYWlkIGJlZm9yZSwgdGhlcmUgbWF5IGJlIGEgY2FzZSBmb3Ig YWRkaW5nDQo+PiANCj4+IEnigJltIGdvaW5nIGZvcndhcmQgb24gdGhlIGJhc2lzIHRoYXQgKmNh a2UqIOKAmXN0b3JpbmcgRFNDUCB3aXRoaW4NCj4+IGZ3bWFya+KAmSBpZGVhIGhhcyBkaWVkIGFu ZCB3aWxsIGJlIHRyeWluZyB0byBjb2JibGUgc29tZXRoaW5nIHRvZ2V0aGVyDQo+PiB3aXRoaW4g YWN0X2Nvbm5tYXJrIGFzIHRoYXQgaGFzIGEgd2lkZXIgcG90ZW50aWFsIGNsaWVudCBiYXNlIHRo YW4NCj4+IGp1c3QgY2FrZS4NCj4gDQo+IFl1cCwgc291bmRzIGdvb2QuDQo+IA0KPiBCVFcsIGZv ciBmdXR1cmUgcmVmZXJlbmNlLCB3aGlsZSBkaWdnaW5nIHRocm91Z2ggdGhlIFRDIGVCUEYgY29k ZSwgSQ0KPiBkaXNjb3ZlcmVkIHRoYXQgaXQgaXMgKEkgdGhpbmspIHBvc3NpYmxlIHRvIGluZGly ZWN0bHkgcGFzcyBpbmZvcm1hdGlvbg0KPiB0byB0aGUgZUJQRiBwcm9ncmFtOiBJZiB5b3UgYWRk IGEgY2xhc3NpZCB3aGVuIGFkZGluZyB0aGUgYnBmIGZpbHRlciwNCj4gdGhlIGtlcm5lbCB3aWxs IHB1dCB0aGF0IGludG8gc2tiLT50Y19jbGFzc2lkIGJlZm9yZSBleGVjdXRpbmcgdGhlIGVCUEYN Cj4gcHJvZ3JhbS4gVGhpcyBzZXJ2ZXMgYXMgYSBkZWZhdWx0IGlmIHlvdSBkb24ndCBkbyBhbnkg Y2xhc3NpZmljYXRpb24NCj4gZnJvbSB0aGUgZUJQRiBwcm9ncmFtLCBidXQgcHJlc3VtYWJseSB5 b3UgY2FuIGFsc28ganVzdCByZWFkIGFuZCBtb2RpZnkNCj4gaXQgZnJvbSB0aGUgZUJQRiBwcm9n cmFt4oCmDQoNCknigJlsbCB0cnkgdG8gcmVtZW1iZXIgdGhhdCBpZiBJ4oCZbSBldmVyIGluIHRo ZSBlQlBGIHZpY2luaXR5Lg0KDQoNCj4gDQo+Pj4gYW4gb3B0aW9uIHRvIHdyaXRlIHRoZSB0aW4g c2VsZWN0aW9uIGJhY2sgdG8gY29ubnRyYWNrLiBTb21ldGhpbmcgbGlrZQ0KPj4+IHRoZSBwYXRj aCBiZWxvdyB3b3VsZCBkbyBpdCAod2l0aCBhbiBvcHRpb24gdG8gY29udHJvbCBpdCwgb2YgY291 cnNlKSwNCj4+PiBidXQgaXQgZG9lcyBpbmN1ciBhIGRlcGVuZGVuY3kgb24gYW5vdGhlciBjb25u dHJhY2sgaGVhZGVyLCBzbyBJJ20gbm90DQo+Pj4gc3VyZSBpZiBpdCB3aWxsIGJlIGFjY2VwdGFi bGUgdG8gdXBzdHJlYW0uIEFsc28sIHdlIHdvdWxkIG5lZWQgdG8gZmlndXJlDQo+Pj4gb3V0IGhv dyB0aGUgb3B0aW9uIHNob3VsZCB3b3JrLg0KPj4gDQo+PiBJIHRoaW5rIGJlZm9yZSBleHBlbmRp bmcgYW55IGZ1cnRoZXIgbWVudGFsIGVmZm9ydCBvbiB0aGF0LCB0aGUNCj4+IHF1ZXN0aW9uIHNo b3VsZCBiZSBhc2tlZCBvZiB0aGUga2VybmVsIHBlb3BsZS4gIEkgZG9u4oCZdCBzZWUgdGhlIHBv aW50DQo+PiBpbiB3b3JraW5nIG91dCB0aGUgc2VtYW50aWNzIG9mIHNvbWV0aGluZyB0aGF0IHVs dGltYXRlbHkgd29u4oCZdCBiZQ0KPj4gYWNjZXB0ZWQuDQo+IA0KPiBVbmZvcnR1bmF0ZWx5IHRo YXQgaXMgbm90IGhvdyB1cHN0cmVhbSBkZXZlbG9wbWVudCB3b3Jrcy4gSWYgd2Ugd2FudA0KPiB0 aGlzIGZlYXR1cmUsIHdlJ3JlIGdvaW5nIHRvIGhhdmUgdG8gZG8gdGhlIHdvcmsgb2YgZGVmaW5p bmcgYW5kDQo+IGltcGxlbWVudGluZyBpdCBhbmQgbWFrZSBvdXIgY2FzZSB0aGF0IGl0IHNob3Vs ZCBiZSBpbmNsdWRlZC4NCj4gDQo+IEkgdGhpbmsgYSBwb3NzaWJsZSB3YXkgZm9yd2FyZCB3b3Vs ZCBiZToNCj4gDQo+IDEuIEknbGwgc3VibWl0IHRoZSBtYXNraW5nIHBhdGNoIGZvciB0aGUgZXhp c3RpbmcgZndtYXJrIGZlYXR1cmUgdG8NCj4gICB1cHN0cmVhbS4gVGhhdCBzaG91bGQgZ2V0IGlu IHRoaXMgY3ljbGUsIGFuZCB3aWxsIGZvcm0gdGhlIGJhc2lzIGZvcg0KPiAgIGFueXRoaW5nIGVs c2Ugd2Ugd2FudCB0byBkbyBpbiB0aGUgZnV0dXJlLg0KDQpBZ3JlZWQuICBNYXNraW5nIHNob3Vs ZCBoYXZlIGJlZW4gaW4gdGhlIG9yaWdpbmFsIHBhdGNoLiAgSGFkIEkga25vd24gYWJvdXQgKGFu ZCBiZWVuIGFtdXNlZCBieSkgZmZzIGl0IHdvdWxkIGhhdmUgYmVlbiBkb25lIDotKQ0KDQo+IA0K PiAyLiBGb3IgdGhlIG5leHQgY3ljbGUgKGkuZS4sIHVwc3RyZWFtIDUuMikgd2UgY2FuIGhhc2gg b3V0IHdoYXQgd2UNCj4gICByZWFsbHkgbmVlZCBmb3IgdGhpcyB1c2UgY2FzZSwgYW5kIGhvdyBp dCBzaG91bGQgd29yayBmcm9tIGEgdXNlcg0KPiAgIHBlcnNwZWN0aXZlOyB3ZSdyZSBnb2luZyB0 byBuZWVkIHRoYXQgYW55d2F5IGV2ZW4gaWYgd2UgZW5kIHVwDQo+ICAgaW1wbGVtZW50aW5nIGl0 IGRpZmZlcmVudGx5LiBUaGlzIGFsc28gaW5jbHVkZXMgZGVjaWRpbmcgb24gd2hldGhlcg0KPiAg IHRoaXMgaXMgZG9hYmxlIG91dHNpZGUgb2YgQ0FLRSwgb3IgaWYgd2UgbmVlZCBhbm90aGVyIGZl YXR1cmUgZmxhZy4NCg0KWW914oCZdmUgYWxyZWFkeSBjbGVhcmx5IGRlbW9uc3RyYXRlZCB0aGF0 IHRoZSBtYXJraW5nL2ZsYWdnaW5nIGNhbiBiZSBkb25lIHVzaW5nIGlwdGFibGVzLCBzbyBpdCBp cyBkb2FibGUgb3V0c2lkZSBvZiBDQUtFLiAgVGhlIGlwdGFibGVzIHJ1bGVzIHRvIGRvIGl0IG91 dHNpZGUgb2YgQ0FLRSBhcmXigKZhbiB1bnBsZWFzYW50IHdheSBvZiBpbXBsZW1lbnRpbmcgYSBs b29rdXAgdGFibGUgd2hpY2ggYWxzbyByZXF1aXJlcyBrbm93bGVkZ2Ugb2YgdGhlIGlubmVyIHdv cmtpbmdzIG9mIENBS0UgKGxvb2t1cCB0YWJsZSAmIHRpbiBvcmRlcikuIFBlcnNvbmFsbHkgSSBm ZWVsIHRoYXTigJlzIHVnbHksIGJ1dCB5b3UgYWxyZWFkeSBrbm93IHRoYXQgOi0pDQoNCj4gDQo+ IDMuIFdlIHN1Ym1pdCB3aGF0ZXZlciB3ZSBjb21lIHVwIHdpdGguIElmIGl0IGdldHMgYWNjZXB0 ZWQsIGdyZWF0LA0KPiAgIG90aGVyd2lzZSB3ZSBpdGVyYXRlIGJhc2VkIG9uIGZlZWRiYWNrLg0K DQpJIGF3YWl0IHRoZSB0YXJyaW5nICYgZmVhdGhlcmluZyBmb2xsb3dlZCBieSDigJxZb3XigJly ZSB0cnlpbmcgdG8gc2V0IGEgY29ubnRyYWNrIG1hcmvigKbigKZmcm9tIGEgUURJU0M/ISEhISEh IGdldCBvdXR0YSB0b3du4oCdIDotKQ0KDQo+IA0KPiBBbnkgb2JqZWN0aW9ucz8gOikNCg0KTm9w ZS4NCg0KPiANCj4gLVRva2UNCg0KS2V2aW4=