From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 91FA14BF7B for ; Thu, 6 Mar 2025 20:48:40 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 18CA068F095; Thu, 6 Mar 2025 22:48:36 +0200 (EET) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10olkn2084.outbound.protection.outlook.com [40.92.42.84]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C23B068D7DD for ; Thu, 6 Mar 2025 22:48:28 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=AHgRt2GoxFDZZw5jv2BltKFTjcP/+hAdMM1jObpQs84uZNqRGf0cb8Imtd3Smi1UEnpru+eL4A3woxuUxZotb5Bce1g2Xg7KtCI+Zmr5W6pePw3vAqksmUAfrnIuEFI7vwZiLh/Qtp/+8PfDWG9hOt0panYitNAenJpmmZrsSUbRqjMomj0JCS+3+EqyHpd3p5VE1fB8Yxcj0Vfab395z4JvT9GmMHgvuZuhhg0/EbquNfa6ajyFVkXaWmNDTVGqmhqhCVWuf88NadZY3piL95cSorwxgvULWHAeOuMYDuvneNJSUnd+8DFpisA9efo/5repFk3IPV/WiROthgAa9A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=hWt7YqAAZtVEFgdxo6x+4UVp/k5GGBHX36wPv0VDCe0=; b=bRcBAV0PxdHPG6VT56dcU6ovc0xyYxY29wmrJ2hDl5SPHGRpeMipkVj6pQYHE3EI8g0CuRKUJiK82JWR8Cg+3b8gOyaOoW/KwStP8Oa5nH/sBo+UCqQYp35EIyozSVfgdUHkv6wltXWlEA87OqAywj6dJCKaxXUiVwl6pOJRNy9CnmpoTX7V+OE6bdiCXv+j3NRvnZff7ZkpOG4a5qabgaF2a2+5fz/3jgcDCcLRTtOjnhfLnBH8I1hWCNqOa9XCs0FOJr+CKdCSE3aLdpNXpojT093xY1idYL5ywELNbgD8tgCMT1Qn1mF4R4qUcx+J65XkR+ugXiEvsG5V9kn6dA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hWt7YqAAZtVEFgdxo6x+4UVp/k5GGBHX36wPv0VDCe0=; b=WzEEorkbsGH1RZnJ2HhRlfT82oPqivY4fqTPnoFPcJo+q9hHboQlqnl62yjWVCW81JkRHdSIMmG4qt1fMavlyEV5sHlEp2bwO+6Uzkt/KH4JgnqydCLZb1IErwaRs/c3oTjPxYhatDEWlzD644+CAtqWCrqzID87NjyksVGoYTH1nWySIj7lz8lSAwdmRp98v0+ROkt+rXpJ5RzhxIrEZtn2+9X0M4IstrhHc3lHHujSDRvrCiXpq0Zw8yzSldnROOQJra5J7yLvMNZRipqP79NyG/eX4vxi6NTXry6SPxdqE2rAVbPoM50Ov6jANf28tevGzf8OrrZcVjR7HXz6dA== Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM (2603:10b6:8:b::20) by LV1P223MB1340.NAMP223.PROD.OUTLOOK.COM (2603:10b6:408:2b1::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8511.16; Thu, 6 Mar 2025 20:48:24 +0000 Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::bf09:8e9:b07f:98a7]) by DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::bf09:8e9:b07f:98a7%7]) with mapi id 15.20.8511.017; Thu, 6 Mar 2025 20:48:24 +0000 From: Soft Works To: FFmpeg development discussions and patches Thread-Topic: [FFmpeg-devel] [PATCH] avutil/log: Replace addresses in log output with simple ids Thread-Index: AQHbjeSnJYtY2XIGVE+nxmGIv6NZhbNkre2AgAACIJCAATOWgIAAbOVggAAQwICAAACWAIAAAoSAgAAARFCAABMzgIAAAYXggAAQCACAAAZ6MA== Date: Thu, 6 Mar 2025 20:48:24 +0000 Message-ID: References: <813ADC03-65BD-43E6-AF49-743929AF9BDD@gmail.com> <378BC58C-7EF8-4637-9CDB-476E30AF03E3@gmail.com> <516140E4-A5BF-4B25-8A38-5D983B975461@gmail.com> In-Reply-To: <516140E4-A5BF-4B25-8A38-5D983B975461@gmail.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM8P223MB0365:EE_|LV1P223MB1340:EE_ x-ms-office365-filtering-correlation-id: 4a5a091b-43a0-42f2-ea17-08dd5cf03d51 x-microsoft-antispam: BCL:0; ARA:14566002|15080799006|19110799003|7092599003|8062599003|8060799006|461199028|3412199025|13041999003|440099028|102099032; x-microsoft-antispam-message-info: =?utf-8?B?NXNzNWZCMjRIeDRKamZNMWdUYjFRait5OFlFazVKM3FWV1ZyYjJiL1Vwb0lH?= =?utf-8?B?emlhYkFhYVJHQnN4bXVpdGtNN0k4WG5uMU53SWtlWnc5SHFyMTU1Smg4SnlX?= =?utf-8?B?TjVMR1VTSUdHTkNhWiszY2IyNTg1TkpVcllIUGwrczFqNW1RSTFHK0JCSHdO?= =?utf-8?B?MTRhTlZjd0kvdTYrWnllTDNjcHRiT1ZDUnBNU3Jia2xPdjVCdkQxamVaZWF2?= =?utf-8?B?UUhKcWxYejVKVE9jMkFFT2pQME5nNkRmYVFRZGZobCttQXRQOXpLWFYwd0F0?= =?utf-8?B?MmRQWUw1VTM2a2dvdk5acm5PM1V6UW1EVTlZTXVZcVdVWVBua1RBc3lSVFdy?= =?utf-8?B?STU4dXNwRmFMd05NSmo3aW56b1M1NmcxM2xyaHg3RGdqM3pMSXZYaHhZcjdx?= =?utf-8?B?dUhveFRiN0VRNGxvdnNsMUpNZ3pxVWM3M2VpUUlGdlBMQ0FHL0NsTnUwUENw?= =?utf-8?B?QUVmbTIvMEZoQXhqanpIZ2Y3ZHUvV3NaeVpWU0hTWUpFYUZ2SkExdVN0bFND?= =?utf-8?B?Z3g0dzVFZGdXMmxGdXZxOHRTdDRCYWk0bkxobC9KUER4SHhRMUs5S2VkajVB?= =?utf-8?B?QlJWTzkrZEdYK0J2VFAwTnRTM3FDdElvSzduOXArR1AzeWY1WVl3c1F2Nkcx?= =?utf-8?B?OHBjNHduSGRTZmgxZ2JRTTVGSlQySUhoYUNmcjF4c3NueHEzaUJtSEc0US9W?= =?utf-8?B?WmJQV3VESVJ1a2Exb0RSZXp3c2xzV29JQVhLMVB1WmFqOG1yVkVIdU5laTRR?= =?utf-8?B?OGlrRHR6dzZ4UWFwNUsxU09FditVVEtWcVFBWS9lU2J2dTFkRjZ3aGhPVC80?= =?utf-8?B?ZHpFNERyeGgvTU4zWThRV1hmUm9BRjM5cHBhRkhSMzZBT2tWWjhMSzdWSFZs?= =?utf-8?B?UW82Wnp3cUg0NFdtSENBZGg3dWF2clFEbDJ1ZjJoS2wwMWxHTWwrSDJnT0tm?= =?utf-8?B?TkpXMVVmR2c5RE1TWlpuUDh1RXdVS2RHLzJETFRQRk1ZaHJTK3dZeUV3OVlh?= =?utf-8?B?WmR3WnBRTTZOTjJnWmx5K1cxaExjUGRScXdtZ2F4TDZFdDE0RGk4L2tsLzBI?= =?utf-8?B?QUFkOGs3MWNkWmV4dmw1WGhPY2pmYy9VYktSKzVxQmgydlJDMjdHQWJaV2pj?= =?utf-8?B?L0FIQzFSVzVReHpXdUtsak5hNk1EU3J5Z3d2WHNXeEJTMnhjUi95Y2VRMUY3?= =?utf-8?B?Rmo0ZnY4VnFJL1hrcjFlcGw2NHljTC9KeFdOcmx2SFpCMEkza1RnVSt1RFVx?= =?utf-8?B?R1prclVNRTByVGVZVzA4SE4wRGxDclNLUmwwbFdpd0lXZTlYcHJ3dTM0aUEx?= =?utf-8?B?Y1IzTGNhSTAzdVdFdnFkRDdvTmg2U2FIcHVBUXR2Qzh1eFFBRWJkbWhpdFp0?= =?utf-8?B?VWROSVcyTmVUcjFnblFUQjBEOVo4L2twakJ1QUNjZ3JRamR4VitiVDZQdTNE?= =?utf-8?B?dGUvb0tTNEp2dmJkV2lDZGJOa280RlZmMEU5enhsTUorSDh4Q3pJbWRNQ2hy?= =?utf-8?Q?3a+kZ4=3D?= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?R0l0VktpbkhZOGkvajhBYnh6UllQMnlMMFZkSjZ6dk1wY094Q2FNRWNSczBG?= =?utf-8?B?OTJPbmVLOW5FZmJnRU5qdGlYUTBjNVQyTStBOVZuY0lkSVdDSlpSazVsaGhy?= =?utf-8?B?WmkxT0EvSi8zWVNhSTVwZHVEbCs2TnJxdXlIQXJrS3hxMDM3S2xIcWY5cXEy?= =?utf-8?B?YlU1STBJUUV5Ulh1cDB0bUlQTFVsa3pSRXVxbWp0cnZpcW4vc0xwYjl2Rnp5?= =?utf-8?B?TUFaTU9MZGtMZjVnb3hTZHIzK3Z4WFVtZkdhd0xSUnBjRWt2cW1JaHd5bTVB?= =?utf-8?B?ZmFDUmtVRVBDY3h6SEV1K055VWwzamZXMlN0VXZZY3RXbU9nR3VOc0pLNk4w?= =?utf-8?B?dVdzYnBlaGtwTXl4TGpVcFY3clFpMkJ4NXBSK3FiMHVBdUF0Nkp5L1BzaEww?= =?utf-8?B?dStDMTFtNFdBREx6cXFBbk5Lc1p1bm4zc1ZKUmhhNjhDTGgraFlXSHRMMnBP?= =?utf-8?B?Qko1Q2tyNE1YUzZpWUVhSk1aVXhvVE9tb21YRm95UUhpS2k4V2dLemc5cjBu?= =?utf-8?B?cFdESUdHRytQaTRTalM5YjhuZkJudnpLVlUrb2F1bEJCdHlRclFRZ0JZN05w?= =?utf-8?B?L3h2UklSZUZCVHRld0ZpY0I2NGtLblBCL1Bua2VPRE5aQjF2UThVSHF0WWZS?= =?utf-8?B?UDdoUFViKzQzMitqakYycHdNbWduZHN3V3lsNkhXUTlqdG9ZbmYxQzdDZ3Fa?= =?utf-8?B?bHZ3a0tNQ1FLZks4Vk1UU2xZcDhWZnNuNjZZV0pQSWs2WlpjNUlUaTZ1b2oz?= =?utf-8?B?QzNlcjRpa0ZOaUh4STZZRGdJUGwvUFJoc0ZES2p0UDFCS3RZUSs3c1FVRXVk?= =?utf-8?B?b3ZZZW9QNzFqWVdXaUtDYzY5dkpKUDRBbGZWMi83SWRkTTJiemVJNmpQekFw?= =?utf-8?B?akZUSjRkYXNMeWtXaWdXSjZGdlBVQTlUcFI4YVZGSzdmcHN2aCs0ZVZHRCtV?= =?utf-8?B?c0FEVllnN3h2MVJodnYyWDdwcHp0dG5WYXlyclFqZXRraHZDTVpyT1JZcVlN?= =?utf-8?B?SGhHVzdCSk81UDBQNkRyaEdieXhicDMzeE0zajF6MDFkeVpYM2ovanRCVHZH?= =?utf-8?B?MTBJUDJEaDZ2K0doSkc5OHgrekpheWUybUZVNU5JbDVvRFJ6WjV0WUdmK2Fu?= =?utf-8?B?Z2VrQURpYXBoQmNYbFdRZENSQVBocUpPSTM3WURvMDQ0dmR1dHN5VlFkOFRa?= =?utf-8?B?bGlFY0xQRzBTRVRoNDFDM3FpWDFOQS9HN0ttOVBuSXovSnphQ0h2MXhndGc2?= =?utf-8?B?dWtTbkYyNXIzb3VJbE1hVkdmOFpjK0lyWmVjOWtTM09HbldCUldPTjJxYjA5?= =?utf-8?B?MXVLdXBkdTJGVldpU0lrc2R5SmpMT3o5UTM0aHJ1bkxBbDdnbC9QaDBEU1Rp?= =?utf-8?B?ZkNTZkhTREFncjQrR2xmdVlmZkJWRFlZTkdCRHpZK0ZoVGpGRzVmb3ZzR0Jl?= =?utf-8?B?T2VJUjJLY2Q2NkF4b1lrNGQ1ZzVkeGljUUpyenp6SXh2VkJLOUswRXpia013?= =?utf-8?B?N2tDNlY0ZEh5MHEremZZYXFYSHlBUlJUTXBueE1weW1RcXBSSU02RVpyL3BH?= =?utf-8?B?NmcxaGcvQnd2RzFGci82bWtDMytsbHNLeTFjOFBiRW84eG9wV2FOMlNMbEU5?= =?utf-8?Q?wI3oCX6kPPY/by6mj7j/e1S8/9NHrEXHWYTgJZoWhVEU=3D?= MIME-Version: 1.0 X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-1ff67.templateTenant X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 4a5a091b-43a0-42f2-ea17-08dd5cf03d51 X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Mar 2025 20:48:24.6881 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV1P223MB1340 Subject: Re: [FFmpeg-devel] [PATCH] avutil/log: Replace addresses in log output with simple ids X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZmZtcGVnLWRldmVsIDxm Zm1wZWctZGV2ZWwtYm91bmNlc0BmZm1wZWcub3JnPiBPbiBCZWhhbGYgT2YgTWFydmluDQo+IFNj aG9seg0KPiBTZW50OiBEb25uZXJzdGFnLCA2LiBNw6RyeiAyMDI1IDIxOjAyDQo+IFRvOiBGRm1w ZWcgZGV2ZWxvcG1lbnQgZGlzY3Vzc2lvbnMgYW5kIHBhdGNoZXMgPGZmbXBlZy1kZXZlbEBmZm1w ZWcub3JnPg0KPiBTdWJqZWN0OiBSZTogW0ZGbXBlZy1kZXZlbF0gW1BBVENIXSBhdnV0aWwvbG9n OiBSZXBsYWNlIGFkZHJlc3NlcyBpbiBsb2cNCj4gb3V0cHV0IHdpdGggc2ltcGxlIGlkcw0KPiAN Cj4gDQo+IA0KPiBPbiA2IE1hciAyMDI1LCBhdCAyMDoyNywgU29mdCBXb3JrcyB3cm90ZToNCj4g DQo+ID4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+IEZyb206IGZmbXBlZy1kZXZl bCA8ZmZtcGVnLWRldmVsLWJvdW5jZXNAZmZtcGVnLm9yZz4gT24gQmVoYWxmIE9mDQo+IE1hcnZp bg0KPiA+PiBTY2hvbHoNCj4gPj4gU2VudDogRG9ubmVyc3RhZywgNi4gTcOkcnogMjAyNSAxOTo1 OQ0KPiA+PiBUbzogRkZtcGVnIGRldmVsb3BtZW50IGRpc2N1c3Npb25zIGFuZCBwYXRjaGVzIDxm Zm1wZWctDQo+IGRldmVsQGZmbXBlZy5vcmc+DQo+ID4+IFN1YmplY3Q6IFJlOiBbRkZtcGVnLWRl dmVsXSBbUEFUQ0hdIGF2dXRpbC9sb2c6IFJlcGxhY2UgYWRkcmVzc2VzIGluDQo+IGxvZw0KPiA+ PiBvdXRwdXQgd2l0aCBzaW1wbGUgaWRzDQo+ID4+DQo+ID4+DQo+ID4+DQo+ID4+IE9uIDYgTWFy IDIwMjUsIGF0IDE5OjE2LCBTb2Z0IFdvcmtzIHdyb3RlOg0KPiA+Pg0KPiA+Pj4+IC0tLS0tT3Jp Z2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+Pj4gRnJvbTogZmZtcGVnLWRldmVsIDxmZm1wZWctZGV2 ZWwtYm91bmNlc0BmZm1wZWcub3JnPiBPbiBCZWhhbGYgT2YNCj4gPj4gTWFydmluDQo+ID4+Pj4g U2Nob2x6DQo+ID4+Pj4gU2VudDogRG9ubmVyc3RhZywgNi4gTcOkcnogMjAyNSAxODo0OQ0KPiA+ Pj4+IFRvOiBGRm1wZWcgZGV2ZWxvcG1lbnQgZGlzY3Vzc2lvbnMgYW5kIHBhdGNoZXMgPGZmbXBl Zy0NCj4gPj4gZGV2ZWxAZmZtcGVnLm9yZz4NCj4gPj4+PiBTdWJqZWN0OiBSZTogW0ZGbXBlZy1k ZXZlbF0gW1BBVENIXSBhdnV0aWwvbG9nOiBSZXBsYWNlIGFkZHJlc3Nlcw0KPiBpbg0KPiA+PiBs b2cNCj4gPj4+PiBvdXRwdXQgd2l0aCBzaW1wbGUgaWRzDQo+ID4+Pj4NCj4gPj4+Pg0KPiA+Pj4+ DQo+ID4+Pj4gT24gNiBNYXIgMjAyNSwgYXQgMTg6NDQsIFNvZnQgV29ya3Mgd3JvdGU6DQo+ID4+ Pj4NCj4gPj4+Pj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+Pj4+PiBGcm9tOiBm Zm1wZWctZGV2ZWwgPGZmbXBlZy1kZXZlbC1ib3VuY2VzQGZmbXBlZy5vcmc+IE9uIEJlaGFsZiBP Zg0KPiA+Pj4+IE1hcnZpbg0KPiA+Pj4+Pj4gU2Nob2x6DQo+ID4+Pj4+PiBTZW50OiBEb25uZXJz dGFnLCA2LiBNw6RyeiAyMDI1IDE4OjM4DQo+ID4+Pj4+PiBUbzogRkZtcGVnIGRldmVsb3BtZW50 IGRpc2N1c3Npb25zIGFuZCBwYXRjaGVzIDxmZm1wZWctDQo+ID4+Pj4gZGV2ZWxAZmZtcGVnLm9y Zz4NCj4gPj4+Pj4+IFN1YmplY3Q6IFJlOiBbRkZtcGVnLWRldmVsXSBbUEFUQ0hdIGF2dXRpbC9s b2c6IFJlcGxhY2UgYWRkcmVzc2VzDQo+ID4+IGluDQo+ID4+Pj4gbG9nDQo+ID4+Pj4+PiBvdXRw dXQgd2l0aCBzaW1wbGUgaWRzDQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4NCj4gPj4+Pj4+DQo+ID4+Pj4+ PiBPbiA2IE1hciAyMDI1LCBhdCAxODowMiwgU29mdCBXb3JrcyB3cm90ZToNCj4gPj4+Pj4+DQo+ ID4+Pj4+Pj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+Pj4+Pj4+IEZyb206IGZm bXBlZy1kZXZlbCA8ZmZtcGVnLWRldmVsLWJvdW5jZXNAZmZtcGVnLm9yZz4gT24gQmVoYWxmDQo+ IE9mDQo+ID4+Pj4+Pj4+IE5pY29sYXMgR2VvcmdlDQo+ID4+Pj4+Pj4+IFNlbnQ6IERvbm5lcnN0 YWcsIDYuIE3DpHJ6IDIwMjUgMTE6MDkNCj4gPj4+Pj4+Pj4gVG86IEZGbXBlZyBkZXZlbG9wbWVu dCBkaXNjdXNzaW9ucyBhbmQgcGF0Y2hlcyA8ZmZtcGVnLQ0KPiA+Pj4+Pj4gZGV2ZWxAZmZtcGVn Lm9yZz4NCj4gPj4+Pj4+Pj4gU3ViamVjdDogUmU6IFtGRm1wZWctZGV2ZWxdIFtQQVRDSF0gYXZ1 dGlsL2xvZzogUmVwbGFjZQ0KPiBhZGRyZXNzZXMNCj4gPg0KPiA+IFsuLl0NCj4gPg0KPiA+Pj4+ Pj4NCj4gPj4+Pj4+IEZpcnN0IG9mIGFsbCBJIHdhbnQgdG8gc2F5IEkgbGlrZSB0aGUgaWRlYSBv ZiBoYXZpbmcgY2xlYW5lcg0KPiBsb2dzLA0KPiA+Pj4+Pj4gYnV0Li4uDQo+ID4+Pj4+Pg0KPiA+ Pj4+Pj4gSU1ITyAiY29tcGxleCIgbG9nZ2luZyBmb3JtYXR0aW5nIHNob3VsZCBiZSBoYW5kbGVk IGJ5IGZmdG9vbHMNCj4gPj4+Pj4+IGVzcGVjaWFsbHkgaWYNCj4gPj4+Pj4+IHRoZXkgbmVlZCBn bG9iYWwgc3RhdGUuIEV2ZW4gdGhvdWdoIHRoYXRzIG5vdCB0aGUgY2FzZSByaWdodCBub3csDQo+ ID4+IGJ1dA0KPiA+Pj4+Pj4ganVzdA0KPiA+Pj4+Pj4gbGlrZSBOaWNvbGFzIEkgYWxzbyB3b3Vs ZCBwcmVmZXIgdG8gbm90IGFkZCBldmVuIG1vcmUgZ2xvYmFsDQo+IHN0YXRlDQo+ID4+Pj4gZm9y DQo+ID4+Pj4+PiBsb2dnaW5nDQo+ID4+Pj4+PiB0byB0aGUgbGlicmFyeS4uLg0KPiA+Pj4+Pj4N Cj4gPj4+Pj4+IEFsbCB0aGUgZmFuY3kgbG9nIGZvcm1hdHRpbmcgc2hvdWxkIGJlIGRvbmUgaW4g YSBsb2cgY2FsbGJhY2sgaW4NCj4gPj4gdGhlDQo+ID4+Pj4+PiBmZnRvb2xzIGFuZCB0aGUgZGVm YXVsdCBsaWJyYXJ5IGxvZ2dpbmcgY2FsbGJhY2sgc2hvdWxkIGp1c3QgYmUgYQ0KPiA+Pj4+IHZl cnkNCj4gPj4+Pj4+IGJhc2ljDQo+ID4+Pj4+PiBvbmUsIGlzIG15IG9waW5pb24gb24gdGhpcy4N Cj4gPj4+Pj4NCj4gPj4+Pj4gVGhhdCdzIGFsbCBmaW5lIGFuZCBwcm9iYWJseSByZWFzb25hYmxl LiBCdXQgaXMgaXQgZmFpciB0byBibG9jayBhDQo+ID4+Pj4gc21hbGwgY2hhbmdlIGJlY2F1c2Ug c29tZSBtYWpvciByZXdvcmsgd291bGQgYmUgZGVzaXJlZCBhdCBzb21lDQo+ID4+IHBvaW50Pw0K PiA+Pj4+Pg0KPiA+Pj4+PiBXaGVuIHRoYXQgY2hhbmdlIHdpbGwgYmUgbWFkZSwgaXQgd2lsbCBv ZiBjb3Vyc2UgbW92ZSBvdXQgdGhpcw0KPiA+PiBsaXR0bGUNCj4gPj4+PiBjaGFuZ2UgYXMgd2Vs bC4NCj4gPj4+Pj4NCj4gPj4+Pj4gQnV0IGFyZSB5b3UgcmVhbGx5IHNheWluZyB0aGF0IHRoaXMg c21hbGwgY2hhbmdlIGNhbm5vdCBiZSBtYWRlDQo+ID4+Pj4gYmVjYXVzZSB5b3UgZG9uJ3QgbGlr ZSB0aGUgZ2VuZXJhbCB3YXkgb2YgdGhlIGN1cnJlbnQNCj4gaW1wbGVtZW50YXRpb24/DQo+ID4+ Pj4+DQo+ID4+Pj4NCj4gPj4+PiBKdXN0IHRvIGJlIGNsZWFyLCBJIGFtIG5vdCBibG9ja2luZyB0 aGlzLCBqdXN0IHdhbnRlZCB0byBnaXZlIG15DQo+ID4+Pj4gcGVyc3BlY3RpdmUgb24gdGhlIHRv cGljLg0KPiA+Pj4+IFNvIGlmIG90aGVycyB0aGluayBpdHMgZmluZSBhbmQgd2FudCBpdCwgbGV0 cyBnbyBmb3IgaXQuDQo+ID4+Pg0KPiA+Pj4gVGhhbmtzIC0gYW5kIHNvcnJ5IGZvciBteSByZXRh cmRhdGlvbiwgSSBqdXN0IHJlYWxpemVkIHdoeSBpdCdzIGJhZA0KPiB0bw0KPiA+PiBkbyBpdCB0 aGlzIHdheSB3aXRoIHJlZ2FyZHMgdG8gbGlicmFyeSB1c2FnZS4gSSdsbCBhZGQgYSBjYWxsYmFj ayBzbw0KPiA+PiB0aGF0IGZmdG9vbHMgY2FuIGRvIHRoZSBwcmVmaXggZm9ybWF0dGluZy4NCj4g Pj4+DQo+ID4+PiBGb3IgdGhlIGlkZWEgb2YgbW92aW5nIGFsbCB0aGUgZm9ybWF0dGluZyB0byBm ZnRvb2xzLCB3b3VsZG4ndCB0aGlzDQo+IGJlDQo+ID4+IGEgbWFqb3IgYnJlYWthZ2UgZm9yIGxp YnJhcnkgY29uc3VtZXJzIHdobyBhcmUgdXNlZCB0byBnZXR0aW5nIHRoZQ0KPiBsb2cNCj4gPj4g b3V0cHV0IGZvcm1hdHRlZCBsaWtlIG5vdz8NCj4gPj4+DQo+ID4+DQo+ID4+IFllYWgsIG9uZSBv ZiB0aGUgcmVhc29ucyB3aHkgSSBkaWQgbm90IHJlYWxseSBkbyBhbnkgd29yayBvbiB0aGlzIHll dA0KPiBhcw0KPiA+PiBJIGFtIHJlYWxseQ0KPiA+PiBub3Qgc3VyZSB3aGF0cyB0aGUgYmVzdCB3 YXkgdG8gZ28gYWJvdXQgdGhpcyB0byBub3QgYmUgdG9vIHN1cnByaXNpbmcNCj4gPj4gZm9yIGV4 aXN0aW5nDQo+ID4+IGxpYnJhcnkgdXNlcnMuLi4NCj4gPg0KPiA+IEkgdGhpbmssIHBlb3BsZSBf ZG9fIHdhbnQgdGhlIGZvcm1hdHRpbmcgZXZlbiB3aGVuIHVzaW5nIHRoZSBsaWJzDQo+IGRpcmVj dGx5LCBzbyB3aGlsZSBzZXBhcmF0aW5nIGZvcm1hdHRpbmcgZnJvbSB0aGUgcGxhaW4gbG9nZ2lu ZyBtaWdodA0KPiBtYWtlIHNlbnNlLCBpdCB3b3VsZCBwcm9iYWJseSBzdGlsbCBuZWVkIHRvIGJl IGluIGF2dXRpbCAtIG90aGVyd2lzZQ0KPiBtb3N0IGNvbnN1bWVycyB3b3VsZCBwcm9iYWJseSBi ZSBhbm5veWVkIGFuZCBoYXZlIHRvIGNvcHkgdGhlIGZvcm1hdHRpbmcNCj4gY29kZSBmcm9tIGZm dG9vbHMgdG8gdGhlaXIgb3duIGNvZGUgYmFzZSAob3Igc2ltaWxhcikgLSB3aGljaCB3b3VsZG4n dA0KPiBiZSBhIHdpbiBmb3IgYW55Ym9keS4NCj4gDQo+IFJpZ2h0LCBJIGRvIHRoaW5rIGl0IG1p Z2h0IGJlIHVzZWZ1bCB0byBoYXZlIGhlbHBlcnMgdG8gbWFrZSBsb2cNCj4gZm9ybWF0dGluZyBl YXNpZXIgZm9yIGxpYnJhcnkgdXNlcnMgKGVzcGVjaWFsbHkgYmVjYXVzZSBhcyB0aGUgZmluYWwN Cj4gY29uc3VtZXIgeW91IGNhbiB0aGVuIGRlY2lkZSB3aGVyZSB0byBwdXQgc29tZSBldmVudHVh bCBzdGF0ZSBuZWVkZWQpLA0KPiBhbmQgbWF5YmUgYWxzbyBzb21lIHRvIG1ha2UgaXQgZWFzaWVy IHRvIG9idGFpbiBsb2dnaW5nIGRldGFpbHMgZnJvbQ0KPiBBVkNsYXNzIGFzIHRoaXMgaXMgcmln aHQgbm93IHNvbWV3aGF0IGhhcmQgdG8gZ2V0IHJpZ2h0IGFuZCBJIGhhZCB0bw0KPiBjaGVjayB0 aGUgc291cmNlIGNvZGUgbGFzdCB0aW1lIHRvIGZpZ3VyZSBvdXQgaG93IGl0cyBkb25lLg0KPiAN Cj4gPiBJIHNlZSB3aHkgdGhlIGdsb2JhbCBzdGF0ZSBpcyBiYWQgd2l0aCByZWdhcmRzIHRvIHRo aXMgcGF0Y2hzZXQncw0KPiBmZWF0dXJlIChhbmQgVjMgd2lsbCByZW1lZHkpLCBidXQgYXZvaWRh bmNlIG9mIGdsb2JhbCBzdGF0ZSB3b3VsZCBiZQ0KPiBtdWNoIGVhc2llciBhbmQgYWxzbyBtYWtl IG1vcmUgc2Vuc2UgaWYgdGhlcmUgd2FzIHNvbWUga2luZCBvZiAibG9jYWwNCj4gc3RhdGUiIGFz IGEgcmVwbGFjZW1lbnQsIHNvIHRoYXQgcGVvcGxlIGNvdWxkIGZvciBleGFtcGxlIGhhdmUgc2Vw YXJhdGUNCj4gbG9nIG91dHB1dHMgd2hlbiBwZXJmb3JtaW5nIHNlcGFyYXRlIGFuZCBpbmRlcGVu ZGVudCBvcGVyYXRpb25zLg0KPiA+IEkgc3VwcG9zZSB0aGF0J3Mgbm90IGVhc3kgdG8gYWNoaWV2 ZSB3aXRoIHRoZSBjdXJyZW50IGFyY2hpdGVjdHVyZT8NCj4gDQo+IFllYWgsIEkgdGhpbmsgdGhl IGVuZCBnb2FsIHNob3VsZCBiZSB0byBoYXZlIGEgd2F5IHRvIG5vdCBoYXZlIGEgZ2xvYmFsDQo+ IGxvZyBjYWxsYmFjaywgaG93ZXZlciB0aGF0IHdvdWxkIHJlcXVpcmUgcXVpdGUgYSBiaXQgb2YN Cj4gcmVkZXNpZ24uIA0KDQpBbHJpZ2h0IEkgdGhvdWdodCBzbywganVzdCBxdWVzdGlvbm1hcmtl ZCBiZWNhdXNlIC0gd2l0aCBteSBwYXR0ZXJucyBvZiB0aGlua2luZyBiZWluZyBkb21pbmF0ZWQg Ynkgb2JqZWN0LW9yaWVudGVkIGxvZ2ljIC0gSSd2ZSBiZWVuIHNvbWV0aW1lcyBzdXJwcmlzZWQg YnkgYXBwcm9hY2hlcyBpbiBwcm9jZWR1cmFsIGxhbmd1YWdlcyB0byBhY2hpZXZlIHNpbWlsYXIg dGhpbmdzLg0KDQo+IEEgc29ydCBvZiBoYWNreSB3YXkgcmlnaHQgbm93IHRvIGRvIHRoaXMgaXMg dXNlIG9mIHRocmVhZCBsb2NhbCBzdG9yYWdlDQo+IGFuZCB0aGVuICJkZW11bHRpcGxleCIgdGhl IG1lc3NhZ2VzIGluIHRoZSBsb2cgY2FsbGJhY2sNCj4gYmFzZWQgb24gdGhhdC4gSG93ZXZlciB0 aGF0IG9ubHkgd29ya3MgYXMgbG9uZyBhcyB0aGUgbWVzc2FnZSBkb2VzIG5vdA0KPiBjb21lIGZy b20gYSAiY2hpbGQiIHRocmVhZCBpbnRlcm5hbGx5IHNwYXduZWQgYnkgRkZtcGVnLg0KDQpUaGF0 J3MgcHJvYmFibHkgb25seSBmZWFzaWJsZSBpbiB2ZXJ5IHNwZWNpZmljIGNhc2VzIHdoZXJlIHlv dSAoYXMgdGhlIGNvbnN1bWVyKSBrbm93IHRoYXQgaXQgd29ya3MuDQoNClRoZSBhYnNvbHV0ZSBt aW5pbXVtIG9mIGFuIGFwcHJvYWNoIEkgY2FuIHRoaW5rIG9mIHdvdWxkIGJlIHNvbWV0aGluZyBs aWtlIGEgImNvbnRleHRfaWQiLCBidXQgaXQgd291bGQgbmVlZCB0byAobW9yZSBvciBsZXNzKSAi YXV0by1wcm9wYWdhdGUiIGZyb20gY29udGV4dCB0byBjb250ZXh0IGZvciBhbGwgY29udGV4dHMg dGhhdCBhcmUgYmVpbmcgY3JlYXRlZCAtIHdoaWNoIHNvdW5kcyBsaWtlIGEgbWFqb3IgY2hhbmdl Lg0KDQoNClNvLCBkb3duIHRvIGVhcnRoLCBmb3IgVjMgb2YgdGhlIHBhdGNoc2V0IEkgaGF2ZSBh ZGRlZCBhIGNhbGxiYWNrIChhdl9sb2dfZm9ybWF0cHJlZml4X2NhbGxiYWNrKSBhbmQgYSBmdW5j dGlvbiB0byByZWdpc3RlciAoYXZfbG9nX3NldF9mb3JtYXRwcmVmaXhfY2FsbGJhY2soKSkgdG8g bG9nLmMgYW5kIHRoZSBhY3R1YWwgZm9ybWF0dGluZyAocGx1cyBnbG9iYWwgc3RhdGUpIGlzIGRv bmUgaW4gZmZ0b29scyBub3cuDQoNCkkgcmVhbGl6ZSB0aGF0IHRoaXMgaXMgYSBtdWNoIGJldHRl ciB3YXkuIFRoYW5rcyBmb3IgdGhlIGZlZWRiYWNrLg0KDQpzdw0KDQoNCg0KDQoNCg0KX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZmZtcGVnLWRldmVsIG1h aWxpbmcgbGlzdApmZm1wZWctZGV2ZWxAZmZtcGVnLm9yZwpodHRwczovL2ZmbXBlZy5vcmcvbWFp bG1hbi9saXN0aW5mby9mZm1wZWctZGV2ZWwKClRvIHVuc3Vic2NyaWJlLCB2aXNpdCBsaW5rIGFi b3ZlLCBvciBlbWFpbApmZm1wZWctZGV2ZWwtcmVxdWVzdEBmZm1wZWcub3JnIHdpdGggc3ViamVj dCAidW5zdWJzY3JpYmUiLgo=