From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <ffmpeg-devel-bounces@ffmpeg.org> Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id EC3774CF7B for <ffmpegdev@gitmailbox.com>; Tue, 15 Apr 2025 19:15:37 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 6D398687D29; Tue, 15 Apr 2025 22:15:35 +0300 (EEST) Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04olkn2085.outbound.protection.outlook.com [40.92.46.85]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E073E687CFB for <ffmpeg-devel@ffmpeg.org>; Tue, 15 Apr 2025 22:15:28 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=TVietZeFryeJzot+d1VlMfJTq/4lY8q6uuj8GMVzBQhNjs7V0r5BqFEF/V5dxHJm1rKiUk7sO3bOEIAPV3XR+/meV1c99eq2GmLGvO3T0zjVeiElYMz0tDyJmXqHv1oa2tRcBAVgBjl7ac9XD0WgKsyCyjbF4xHk5unR8B5ldvRoWxzf/okdAqWxo/d9EQW1sd53KiKjU7mK1mEdIwzQDSZsSgh/OKHiHaXIdn6duwLpUzXtU864q+VJ68n2u5JZIPkAr+1sQuELtqeurbCxKuMl+I4xByXTHvqaOFb6VJgTux0Q+pTPQzNsIEiy1mMqGM3Ph9bxi7JjigU+KfryEw== 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=2NEgEOIZKCTJq2DrLjpla1n4E4bHl/wAkyL1k8vEJ1o=; b=e5nd6zF7gU1tkhWi3beB3JPwWPUfSCVujFOMgEQJusfJBICss5yx8/ZjAjaBx5ujAOK/OgRHWlTa/j2wG2XevBDhIkOmuOYe4dIt1ZzNVzIxSh9yDPjuN1AIbQsb4VlehhbJd6Njd2DZk4gTqbN4I60rTw9UYTUuVgDAn5n7ZHgZJFEnDe2JNLnYq9ELfrYRDmKR9WwVz/VjqmhEh5gneoMJq5qIsJkJina8i6vFxiK1aCmwkQfhRuxTKSAiYzPLmC2GmCOfsT7ZZKHJKW0lqDf5dm/zGktMZJgFUgb8d6r58FbKc8tYNNURbUyl+uWH0WSs78MFB7XFvCXnyO0mxg== 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=2NEgEOIZKCTJq2DrLjpla1n4E4bHl/wAkyL1k8vEJ1o=; b=trZsppEXUoehOLXtjuk03i6U8iyOPtw8a8z58D6OFE5GHUyhHkl7VEmstDvlgNroakSvVODxyRFmCtauxPVvkzdXqN7ddLrDxIVCv5feDY8UlRKgYEVEHVFnQC9XZovQp3/IulXwLWrI0iN0SrXwUnfawb4ax8QW+E6+Xs5r3s7QU4QF7yFeYN3LAjV+KVVZGetv3PJ8XWc2etfEOlMFTB8kcPYRZOhwjbEDcenBMiwBbOHGXe06jCrm13U06K0PZK4KZZK/7vDFI6FAXcCp+eykR9zfqC4X5OiVVjAOkmLQKCfxRttii1W2eHHHcKFBjT6zNtTfamR2npRXcuchOA== Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM (2603:10b6:8:b::20) by BN0P223MB0357.NAMP223.PROD.OUTLOOK.COM (2603:10b6:408:147::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8655.21; Tue, 15 Apr 2025 19:15:25 +0000 Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::bf09:8e9:b07f:98a7]) by DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::bf09:8e9:b07f:98a7%4]) with mapi id 15.20.8632.030; Tue, 15 Apr 2025 19:15:25 +0000 From: "softworkz ." <softworkz-at-hotmail.com@ffmpeg.org> To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> Thread-Topic: [FFmpeg-devel] [PATCH 2/2] avformat/id3v2: Check that decode_str() did advance Thread-Index: AQHbqzD6b8QhS9IB3U2xSLilkCUpvrOfQsxwgASOQgCAAAZwAIAABY6AgAAAgaCAATWtAIAACJ4A Date: Tue, 15 Apr 2025 19:15:25 +0000 Message-ID: <DM8P223MB0365BBC8DCFD5619DEF8F690BAB22@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM> References: <20250411222719.2779176-1-michael@niedermayer.cc> <20250411222719.2779176-2-michael@niedermayer.cc> <DM8P223MB0365A90C10FBC9EF6512F9E1BAB12@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM> <20250414231950.GN4991@pb2> <DM8P223MB0365928500AB53069869DC99BAB32@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM> <3D7D11CA-0A71-41DB-BD95-3EF31E990BCF@rcombs.me> <DM8P223MB0365E771783D7093DC2A7645BAB22@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM> <20250415183256.GQ4991@pb2> In-Reply-To: <20250415183256.GQ4991@pb2> 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_|BN0P223MB0357:EE_ x-ms-office365-filtering-correlation-id: dbf81d9c-259d-4e9e-a70d-08dd7c51e035 x-microsoft-antispam: BCL:0; ARA:14566002|19110799003|8060799006|8062599003|7092599003|15080799006|461199028|12121999004|10035399004|4302099013|440099028|3412199025|41001999003|102099032|1602099012; x-microsoft-antispam-message-info: =?utf-8?B?UnB1ZEVLTEpFckx1NjNKWTJmTGhrd0Nvdko2NmwwWHgyb1pTUGt5cTFqQjNB?= =?utf-8?B?Z1VKSGpPM0xRQkVXa2trS1VvYjl6UiszdmFmczJqWVpWSUJMTHhCNFlnWUZI?= =?utf-8?B?aFVVSnZjRVhrNmgwTmlYZGczM2hsaFFkS2VibG5KeWNWYWxiWSsxaTRRMFhF?= =?utf-8?B?aFVFYW5Xb3FtS2hlMDdCOTg3WFpBeGlBVk9jNm1OdmpYZW94bm52aDFscDM0?= =?utf-8?B?VW9ORzlRbnpPeFc4R1pLRjAwR0NjYjRIdDdBQlJHV1NMYk84MFZqUFUrVGZD?= =?utf-8?B?ZlVpd2RhMDFBUkUyd1RDUjVLUDh1cjFJN0UvYXJoSmJFVEx2L2NadDBDeHU1?= =?utf-8?B?M0ZwM3VkamI3WG5iKzFNYktwTG1LSUtSRW1PdGUxUm5xOUVXeWVRMXhOOURK?= =?utf-8?B?REd4bDBmVGJ0UndUR2xwbDhaZjRLNjVjOVJRWGtRRysvRzhXSGdrZUhIRnVG?= =?utf-8?B?YUxOL1RPd2NyWnYxK3E2SUg2SzFlYVdlSW9YT2c3QS9KZ3pyWnpUMjNJbFpJ?= =?utf-8?B?Z0U3QmZ6VzY5eTA0M1AxY2ZHMzQ1cm4rMFpUSVZvNzR5VHRnRUNMZjNPUmhx?= =?utf-8?B?VGorWnFLUlVVVVZFb2szczNpNWpId21RQytFV3hpRTY1WEd6NlZ3MlRTQXlv?= =?utf-8?B?YkwzUUlIVnJIVng0K1dMSVZrSnFYeGk4Ykw3aXZMQ0daQ3VaaUhhbzBleTl6?= =?utf-8?B?NzE4RWkrVUhkMEc2VlVUcmxtcnY4OTZRRVUwS0JGSEJmMEJmNkU2QXplVWIr?= =?utf-8?B?Tit0L0VZLzRncnpoQy83U0RXNzFxM0dGQ0U5VFZqWlBLd1JsaFJ2OVFraGRy?= =?utf-8?B?NXFLRmJWdSthT0NKQTlGK2d1ZHRKTUJEQTlBR056TWJJYlQ3N3FsWmgzUEho?= =?utf-8?B?OFN3WTE4MFhCSldpbnFvNStPcTJaTEUvSnpwRUFNbVB0SmxWd3ppOEFPWm9V?= =?utf-8?B?cUtuSERMZHNCdVhNWWhva1VoeGp1NXEwUHczUHF6dW9rR0IzcCtwem11NWxB?= =?utf-8?B?d0pYTFY4VHNVUHYrSXJBL3pQanVRN3lVcEs1R01MbFJjcEdtRVZWbm5uTU4w?= =?utf-8?B?aFFrdldpeS9LTkdsZS9Zam94STk4VzBZTm1ZenBpU0ZNajZralQ5TUhML1J6?= =?utf-8?B?a3FGWjVRTXBwUTBHdXV2WnM3elJoZmc2SzV6NnI4bnB2OHdOQVBlZ2dsbldm?= =?utf-8?B?Z3Z2V2lJUU5qL2hoNmtodjAwVjlpZjhNRk9PTDMrcnZMNGV6akhDNTNtcnVs?= =?utf-8?B?QUt5dnd5QjlzRld5SFlxZldESjFzeVZGaFZsaFBweWhZVW84azI5TUhYRlFn?= =?utf-8?B?Q0gyMUhBYUEyeCtkcHF6L1dKVEVrM0JkRFRvMjNORnBmQWtQUWZoZ1NRd1g5?= =?utf-8?B?OUlhZ1kvc0hwV0NSK3pRZ2ZMYiswR09qZElJQ2gyb0grazlzN043L05WMyti?= =?utf-8?B?Y0JZMXpoZS9CVFdoOWw1TmpyQVgyR0gxM1FXVWJ0R0R6UVhuWSs3ancvSFNS?= =?utf-8?B?Q3o0RTJLNVh0bDBiQkxpNTU2Mjg3bHZXUmhTV09XbGdOUnB6dGllVDNnSUNP?= =?utf-8?B?QU5aUXRmTmp0YXlGMkNMTm1QWGhiRmRsNitQY0hOWWJlcVJmZGhFOGJzNHBX?= =?utf-8?B?Y0prT20vVHVUNlN1cURieGZocy93eW9FaXRNaDRiZlhsMVVFSWYvRUxtdEo2?= =?utf-8?B?TnZMWU5rZzFrQk9UQisvRndlRllVamUrRTBWSERvYWlPOEk0dy92QUZpVlUy?= =?utf-8?Q?6bFFX329H8fJJEDQJk=3D?= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cjB2VGdtbVVkVXFNVjE0WHBHM0JKNEhReHY0MkxRQVJGWUxBUFg2NjFqL28x?= =?utf-8?B?c3AxK0twWHVsSmNwVk0rcjFMTjdKY0VpMzQvK2MyNnQ4ZVRVYzY2bm9zN0V2?= =?utf-8?B?UzQ0TXh5TWFablhHL2FxUXk4TG5DdElWTCtaVmdicFYxRWhQYnVIUldIN2FI?= =?utf-8?B?K2hTY1VRL3RYV1NmSWRRWnlQY2RlbmhmSnJRYzMxeUh0WEc3ZGtZV0p1Sndo?= =?utf-8?B?U21WdWdYOFd2OExkNkVhRjZwaUU4cUJ1WVB2SWtVL20rRGdOYkVFVEpPK3N6?= =?utf-8?B?bkdTbkdGQzJmOHYxa3BUUnBOeTBrTWtqZkRTRnFNdHpCeFZmd1NCcDVVUHpO?= =?utf-8?B?NTFBS00rSWozQWhaSWErdXB5OTR1eHc3bUdJdk9JQnZabVp3M2ViKzhOK2Yx?= =?utf-8?B?RUpyemkxY3BveFlpMzNtMTZlMU15TkZvWWI2aDAxRlNWSCtkY1o0QVVsak9Z?= =?utf-8?B?RVpFd3BPUUY4VHVNRVRuSzdpMkwrN2lzTzV2Wi84dDdYRndBbjlFTFN2VFFI?= =?utf-8?B?aUlPbzZ0RCsrMVpLSlA4ZVBGQzdkQ3F5VGZsVjBpMDNTdC9STEQ2bElGbExm?= =?utf-8?B?a3lHVXl3QytqM0FtN3k2WjhCRHVTcVhBVlRXS1Fkd1V5SmJ5SGs5aG5qMlg2?= =?utf-8?B?RG11cUhoTnliVFRvcUlyN0M1ZThQbnpaSFZGT2duY3crOE8ycDdSWEM4MFRt?= =?utf-8?B?UXJ5cGVqbXYrTWF3bCt6SHJVdWJXVUZMZnRkRlcxUytqQ2UwSjFRTXZxSjNS?= =?utf-8?B?WDl0Wm0rMFJKeHZnQTFPWHVXTE90TVZybG5qb3poSURZeXY0N0xkak1aa0Yv?= =?utf-8?B?MFU3cS9KMkZmdmNVY1czMS94eitpNDRRZVpSSGZ4UXRiQXlkYXZ5MVNQOW05?= =?utf-8?B?QmRubEhEQ2JNR1Bmd1Y4RXNtTGkxOENZVXl3bUpQOVZJaWN2ekJxTE9JUkN0?= =?utf-8?B?Sm80QUZDTnhHanNVWE5ZZWVqQ3lzUDZEUGk5cUZrKzZJNktLVk1IVXBZK2pB?= =?utf-8?B?cXNKdEtrem0xdFNRVnRvSWYyanVFWWJ1SUxOYmNOeDNMYVFOOXlQRHZOUmpw?= =?utf-8?B?N01TZmNRR2dBemFkUkVEZFNIVmZLZXAyeDhWTmRwbExWNnk0eDZtYVRQSkts?= =?utf-8?B?YlhxR3dzbG5tSjVXeGhIVFBLb2dWdEl3b3oyM1B1YnJ2N1VFT0RUc0o1WFpk?= =?utf-8?B?ZVpFaGRrU1NpSnBXYmk2THNwbWY1OG9CaXNtUm5BZTJHWlRrY3JOdmF3eXVh?= =?utf-8?B?K2piMFNEVnVmY2NPazFDUlVrUXRUUm12SSt2TW9FVUVQcXdSMTFuNzd1L0I1?= =?utf-8?B?MlcvMjBvak05eWZ5eDZGMVJHWGpqSk1iZm9hMWQwN05vM1h1MGdzdDJFMjRt?= =?utf-8?B?aVRqQWdYdlZFaHQrdHVpRnNZWExaYUhmRDBZZk1ZUG5wSkxONGJCVThVVmNk?= =?utf-8?B?ZFF4cGZYSzhzQ3VTcEJMUmx0R2pEWXpaRTRTbEtZN3R5eERxckYwOUZhclVq?= =?utf-8?B?aDJUMnVDVEJSZUx1K3hYalFwaUtFNUJEU3VDVlY3cWcyWVovNW9RdDZhYkFp?= =?utf-8?B?Mk1wQ21HRis1aWQzNVZZOXhQWnRDc29xMzI0ZkNRUmJDaDlTRGtTTmhpOHpX?= =?utf-8?Q?5pj34Mjy7JvRafB8a1xFr60y7FvFTn3Yf+6m9GkMx6Go=3D?= MIME-Version: 1.0 X-OriginatorOrg: sct-15-20-7719-20-msonline-outlook-92255.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: dbf81d9c-259d-4e9e-a70d-08dd7c51e035 X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Apr 2025 19:15:25.2045 (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: BN0P223MB0357 Subject: Re: [FFmpeg-devel] [PATCH 2/2] avformat/id3v2: Check that decode_str() did advance X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches <ffmpeg-devel.ffmpeg.org> List-Unsubscribe: <https://ffmpeg.org/mailman/options/ffmpeg-devel>, <mailto:ffmpeg-devel-request@ffmpeg.org?subject=unsubscribe> List-Archive: <https://ffmpeg.org/pipermail/ffmpeg-devel> List-Post: <mailto:ffmpeg-devel@ffmpeg.org> List-Help: <mailto:ffmpeg-devel-request@ffmpeg.org?subject=help> List-Subscribe: <https://ffmpeg.org/mailman/listinfo/ffmpeg-devel>, <mailto:ffmpeg-devel-request@ffmpeg.org?subject=subscribe> Reply-To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" <ffmpeg-devel-bounces@ffmpeg.org> Archived-At: <https://master.gitmailbox.com/ffmpegdev/DM8P223MB0365BBC8DCFD5619DEF8F690BAB22@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM/> List-Archive: <https://master.gitmailbox.com/ffmpegdev/> List-Post: <mailto:ffmpegdev@gitmailbox.com> DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZmZtcGVnLWRldmVsIDxm Zm1wZWctZGV2ZWwtYm91bmNlc0BmZm1wZWcub3JnPiBPbiBCZWhhbGYgT2YNCj4gTWljaGFlbCBO aWVkZXJtYXllcg0KPiBTZW50OiBEaWVuc3RhZywgMTUuIEFwcmlsIDIwMjUgMjA6MzMNCj4gVG86 IEZGbXBlZyBkZXZlbG9wbWVudCBkaXNjdXNzaW9ucyBhbmQgcGF0Y2hlcyA8ZmZtcGVnLQ0KPiBk ZXZlbEBmZm1wZWcub3JnPg0KPiBTdWJqZWN0OiBSZTogW0ZGbXBlZy1kZXZlbF0gW1BBVENIIDIv Ml0gYXZmb3JtYXQvaWQzdjI6IENoZWNrIHRoYXQNCj4gZGVjb2RlX3N0cigpIGRpZCBhZHZhbmNl DQo+IA0KPiBPbiBUdWUsIEFwciAxNSwgMjAyNSBhdCAxMjoxNzozMkFNICswMDAwLCBzb2Z0d29y a3ogLiB3cm90ZToNCj4gPg0KPiA+DQo+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0K PiA+ID4gRnJvbTogZmZtcGVnLWRldmVsIDxmZm1wZWctZGV2ZWwtYm91bmNlc0BmZm1wZWcub3Jn PiBPbiBCZWhhbGYgT2YNCj4gPiA+IFJpZGxleSBDb21icyB2aWEgZmZtcGVnLWRldmVsDQo+ID4g PiBTZW50OiBEaWVuc3RhZywgMTUuIEFwcmlsIDIwMjUgMDI6MDMNCj4gPiA+IFRvOiBmZm1wZWct ZGV2ZWwgPGZmbXBlZy1kZXZlbEBmZm1wZWcub3JnPg0KPiA+ID4gQ2M6IFJpZGxleSBDb21icyA8 cmNvbWJzQHJjb21icy5tZT4NCj4gPiA+IFN1YmplY3Q6IFJlOiBbRkZtcGVnLWRldmVsXSBbUEFU Q0ggMi8yXSBhdmZvcm1hdC9pZDN2MjogQ2hlY2sgdGhhdA0KPiA+ID4gZGVjb2RlX3N0cigpIGRp ZCBhZHZhbmNlDQo+ID4gPg0KPiA+ID4NCj4gPiA+DQo+ID4gPiA+IE9uIEFwciAxNSwgMjAyNSwg YXQgMDg6NTksIHNvZnR3b3JreiAuIDxzb2Z0d29ya3otYXQtDQo+ID4gPiBob3RtYWlsLmNvbUBm Zm1wZWcub3JnPiB3cm90ZToNCj4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4+IC0t LS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiA+PiBGcm9tOiBmZm1wZWctZGV2ZWwgPGZm bXBlZy1kZXZlbC1ib3VuY2VzQGZmbXBlZy5vcmcNCj4gPG1haWx0bzpmZm1wZWctDQo+ID4gPiBk ZXZlbC1ib3VuY2VzQGZmbXBlZy5vcmc+PiBPbiBCZWhhbGYgT2YNCj4gPiA+ID4+IE1pY2hhZWwg TmllZGVybWF5ZXINCj4gPiA+ID4+IFNlbnQ6IERpZW5zdGFnLCAxNS4gQXByaWwgMjAyNSAwMToy MA0KPiA+ID4gPj4gVG86IEZGbXBlZyBkZXZlbG9wbWVudCBkaXNjdXNzaW9ucyBhbmQgcGF0Y2hl cyA8ZmZtcGVnLQ0KPiA+ID4gPj4gZGV2ZWxAZmZtcGVnLm9yZyA8bWFpbHRvOmRldmVsQGZmbXBl Zy5vcmc+Pg0KPiA+ID4gPj4gU3ViamVjdDogUmU6IFtGRm1wZWctZGV2ZWxdIFtQQVRDSCAyLzJd IGF2Zm9ybWF0L2lkM3YyOiBDaGVjaw0KPiB0aGF0DQo+ID4gPiA+PiBkZWNvZGVfc3RyKCkgZGlk IGFkdmFuY2UNCj4gPiA+ID4+DQo+ID4gPiA+PiBPbiBTYXQsIEFwciAxMiwgMjAyNSBhdCAwMTo0 OTo1M0FNICswMDAwLCBzb2Z0d29ya3ogLiB3cm90ZToNCj4gPiA+ID4+Pg0KPiA+ID4gPj4+DQo+ ID4gPiA+Pj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiA+Pj4+IEZyb206IGZm bXBlZy1kZXZlbCA8ZmZtcGVnLWRldmVsLWJvdW5jZXNAZmZtcGVnLm9yZz4gT24NCj4gQmVoYWxm IE9mDQo+ID4gPiA+Pj4+IE1pY2hhZWwgTmllZGVybWF5ZXINCj4gPiA+ID4+Pj4gU2VudDogU2Ft c3RhZywgMTIuIEFwcmlsIDIwMjUgMDA6MjcNCj4gPiA+ID4+Pj4gVG86IEZGbXBlZyBkZXZlbG9w bWVudCBkaXNjdXNzaW9ucyBhbmQgcGF0Y2hlcyA8ZmZtcGVnLQ0KPiA+ID4gPj4gZGV2ZWxAZmZt cGVnLm9yZz4NCj4gPiA+ID4+Pj4gU3ViamVjdDogW0ZGbXBlZy1kZXZlbF0gW1BBVENIIDIvMl0g YXZmb3JtYXQvaWQzdjI6IENoZWNrDQo+IHRoYXQNCj4gPiA+ID4+Pj4gZGVjb2RlX3N0cigpIGRp ZCBhZHZhbmNlDQo+ID4gPiA+Pj4+DQo+ID4gPiA+Pj4+IEZpeGVzIGluZmluaXRlIGxvb3Agd2l0 aCB1bmtub3duIGVuY29kaW5ncw0KPiA+ID4gPj4+Pg0KPiA+ID4gPj4+PiBXZSBjb3VsZCBhbHRl cm5hdGl2ZWx5IGVycm9yIG91dCBmcm9tIGRlY29kZV9zdHIoKSBvciBjb25zdW1lDQo+IGFsbA0K PiA+ID4gPj4gb2YNCj4gPiA+ID4+Pj4gdGFnbGVuDQo+ID4gPiA+Pj4+IHRoaXMgd291bGQgYWZm ZWN0IG90aGVyIGNhbGxlcnMgdGhvdWdoLg0KPiA+ID4gPj4+Pg0KPiA+ID4gPj4+PiBGaXhlczog NDA5ODE5MjI0L2NsdXN0ZXJmdXp6LXRlc3RjYXNlLW1pbmltaXplZC0NCj4gPiA+ID4+IGZmbXBl Z19kZW1fSDI2MV9mdXp6ZXItDQo+ID4gPiA+Pj4+IDYwMDM1Mjc1MzUzNjIwNDgNCj4gPiA+ID4+ Pj4gU2lnbmVkLW9mZi1ieTogTWljaGFlbCBOaWVkZXJtYXllciA8bWljaGFlbEBuaWVkZXJtYXll ci5jYz4NCj4gPiA+ID4+Pj4gLS0tDQo+ID4gPiA+Pj4+IGxpYmF2Zm9ybWF0L2lkM3YyLmMgfCAz ICsrKw0KPiA+ID4gPj4+PiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspDQo+ID4gPiA+ Pj4+DQo+ID4gPiA+Pj4+IGRpZmYgLS1naXQgYS9saWJhdmZvcm1hdC9pZDN2Mi5jIGIvbGliYXZm b3JtYXQvaWQzdjIuYw0KPiA+ID4gPj4+PiBpbmRleCA5MDMxNDU4M2E3NC4uZTNmN2Y5ZTJhOTAg MTAwNjQ0DQo+ID4gPiA+Pj4+IC0tLSBhL2xpYmF2Zm9ybWF0L2lkM3YyLmMNCj4gPiA+ID4+Pj4g KysrIGIvbGliYXZmb3JtYXQvaWQzdjIuYw0KPiA+ID4gPj4+PiBAQCAtMzQxLDEwICszNDEsMTMg QEAgc3RhdGljIHZvaWQgcmVhZF90dGFnKEFWRm9ybWF0Q29udGV4dA0KPiAqcywNCj4gPiA+ID4+ Pj4gQVZJT0NvbnRleHQgKnBiLCBpbnQgdGFnbGVuLA0KPiA+ID4gPj4+PiAgICAgdGFnbGVuLS07 IC8qIGFjY291bnQgZm9yIGVuY29kaW5nIHR5cGUgYnl0ZSAqLw0KPiA+ID4gPj4+Pg0KPiA+ID4g Pj4+PiAgICAgd2hpbGUgKHRhZ2xlbiA+IDEpIHsNCj4gPiA+ID4+Pj4gKyAgICAgICAgaW50IGN1 cnJlbnRfdGFnbGVuID0gdGFnbGVuOw0KPiA+ID4gPj4+PiAgICAgICAgIGlmIChkZWNvZGVfc3Ry KHMsIHBiLCBlbmNvZGluZywgJmRzdCwgJnRhZ2xlbikgPCAwKSB7DQo+ID4gPiA+Pj4+ICAgICAg ICAgICAgIGF2X2xvZyhzLCBBVl9MT0dfRVJST1IsICJFcnJvciByZWFkaW5nIGZyYW1lICVzLA0K PiA+ID4gPj4+PiBza2lwcGVkXG4iLCBrZXkpOw0KPiA+ID4gPj4+PiAgICAgICAgICAgICByZXR1 cm47DQo+ID4gPiA+Pj4+ICAgICAgICAgfQ0KPiA+ID4gPj4+PiArICAgICAgICBpZiAoY3VycmVu dF90YWdsZW4gPT0gdGFnbGVuKQ0KPiA+ID4gPj4+PiArICAgICAgICAgICAgcmV0dXJuOw0KPiA+ ID4gPj4+Pg0KPiA+ID4gPj4+PiAgICAgICAgIGNvdW50Kys7DQo+ID4gPiA+Pj4+DQo+ID4gPiA+ Pj4+IC0tDQo+ID4gPiA+Pj4+IDIuNDkuMA0KPiA+ID4gPj4+Pg0KPiA+ID4gPj4+PiBfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0KPiA+ID4gPj4+DQo+ID4g PiA+Pj4gSGkgTWljaGFlbCwNCj4gPiA+ID4+Pg0KPiA+ID4gPj4+IHRoaXMga2luZCBvZiBjb25m bGljdHMgd2l0aCB0aGlzIHBhdGNoIHRoYXQgSSBoYWQgc3VibWl0dGVkDQo+ID4gPiA+PiByZWNl bnRseToNCj4gPiA+ID4+Pg0KPiA+ID4gPj4+DQo+ID4gPiA+Pg0KPiA+ID4NCj4gaHR0cHM6Ly9w YXRjaHdvcmsuZmZtcGVnLm9yZy9wcm9qZWN0L2ZmbXBlZy9wYXRjaC9wdWxsLjU0LmZmc3RhZ2lu Zy5GRg0KPiA+ID4gPj4gbXBlZy4xNzQwODczNDQ5MjQ3LmZmbXBlZ2FnZW50QGdtYWlsLmNvbS8N Cj4gPiA+ID4+Pg0KPiA+ID4gPj4+DQo+ID4gPiA+Pj4gSSB3b25kZXIgd2hldGhlciBteSBwYXRj aCB3b3VsZCBzdGlsbCBiZSBwcm9uZSB0byB0aGUgaXNzdWUNCj4geW91cg0KPiA+ID4gPj4gcGF0 Y2ggaXMgYWRkcmVzc2luZyAtDQo+ID4gPiA+Pg0KPiA+ID4gPj4gVGhpcyBhbHJlYWR5IGNvbmZs aWN0cyB3aXRoIHJjb21icyBwYXRjaCBpbiBnaXQgbWFzdGVyLCBpIHRoaW5rDQo+ID4gPiA+PiBB cHBseWluZzogRml4ZXMgVHJhYyB0aWNrZXQgaHR0cHM6Ly90cmFjLmZmbXBlZy5vcmcvdGlja2V0 LzY5NDkNCj4gPiA+ID4+IFVzaW5nIGluZGV4IGluZm8gdG8gcmVjb25zdHJ1Y3QgYSBiYXNlIHRy ZWUuLi4NCj4gPiA+ID4+IE0JbGliYXZmb3JtYXQvaWQzdjIuYw0KPiA+ID4gPj4gRmFsbGluZyBi YWNrIHRvIHBhdGNoaW5nIGJhc2UgYW5kIDMtd2F5IG1lcmdlLi4uDQo+ID4gPiA+PiBBdXRvLW1l cmdpbmcgbGliYXZmb3JtYXQvaWQzdjIuYw0KPiA+ID4gPj4gQ09ORkxJQ1QgKGNvbnRlbnQpOiBN ZXJnZSBjb25mbGljdCBpbiBsaWJhdmZvcm1hdC9pZDN2Mi5jDQo+ID4gPiA+PiBlcnJvcjogRmFp bGVkIHRvIG1lcmdlIGluIHRoZSBjaGFuZ2VzLg0KPiA+ID4gPj4gUGF0Y2ggZmFpbGVkIGF0IDAw MDEgRml4ZXMgVHJhYyB0aWNrZXQNCj4gPiA+ID4+IGh0dHBzOi8vdHJhYy5mZm1wZWcub3JnL3Rp Y2tldC82OTQ5DQo+ID4gPiA+Pg0KPiA+ID4gPj4NCj4gPiA+ID4+PiBkbyB5b3UgaGF2ZSBhIHRl c3QgZmlsZSBwZXJoYXBzPw0KPiA+ID4gPj4NCj4gPiA+ID4+IFdpbGwgZW1haWwgeW91IG9uZSwg YnV0IHRoZSBsb29wIHdpdGggYSBmdW5jdGlvbiB0aGF0IGRvZXNudA0KPiA+ID4gYWR2YW5jZQ0K PiA+ID4gPj4gaXMgYW4gaXNzdWUgZXZlbiBpZiB0aGUgc3BlY2lmaWMgZmlsZSBkb2VzbnQgdHJp Z2dlciBpdCBpbiBhDQo+ID4gPiBkaWZmZXJlbnQNCj4gPiA+ID4+IGltcGxlbWVudGF0aW9uDQo+ ID4gPiA+Pg0KPiA+ID4gPj4gYWxzbyBwcm9iYWx5IGEgZ29vZCBpZGVhIGlmIHlvdSBjb250YWN0 IHJjb21icyBhcyB5b3Ugc2VlbWVkIHRvDQo+ID4gPiB3b3JrDQo+ID4gPiA+PiBvbg0KPiA+ID4g Pj4gdGhlIHNhbWUgY29kZQ0KPiA+ID4gPj4NCj4gPiA+ID4+IEkgd2FzIGxvb2tpbmcgYXQgdGVo IHRpY2tldCBhbmQgc2F3IGEgbGluayB0byByY29tYnMgcGF0Y2gsDQo+IGxvb2tlZA0KPiA+ID4g YXQNCj4gPiA+ID4+IHRoZSBwYXRjaCBhbmQgYXBwbGllZCBpdC4gSSBkaWQgbm90IHJlYWxpemUg dGhlcmUgd2hlcmUgMg0KPiBwYXRjaGVzDQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+IEhpIE1p Y2hhZWwsDQo+ID4gPiA+DQo+ID4gPiA+IEkga25vdyB0aGUgcmNvbWJzIHBhdGNoLCBidXQgaXQg aGFzIGEgLSBsZXQncyBzYXkgLSBkaWZmZXJlbnQNCj4gPiA+IGJlaGF2aW9yLg0KPiA+ID4gPiBM ZXQncyBsb29rIGF0IGFuIGV4YW1wbGUgd2hlcmUgYXJ0aXN0IGFuZCBnZW5yZSBoYXZlIG11bHRp cGxlDQo+ID4gPiB2YWx1ZXM6DQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+IFRoaXMgd2FzIGZm bXBlZyBvdXRwdXQgdW5wYXRjaGVkOg0KPiA+ID4gPg0KPiA+ID4gPiAgTWV0YWRhdGE6DQo+ID4g PiA+ICAgIHRpdGxlICAgICAgICAgICA6IEluZmluaXRlIChPcmlnaW5hbCBNaXgpDQo+ID4gPiA+ ICAgIGFydGlzdCAgICAgICAgICA6IEItRnJvbnQNCj4gPiA+ID4gICAgdHJhY2sgICAgICAgICAg IDogMQ0KPiA+ID4gPiAgICBhbGJ1bSAgICAgICAgICAgOiBJbmZpbml0ZQ0KPiA+ID4gPiAgICBk YXRlICAgICAgICAgICAgOiAyMDE3DQo+ID4gPiA+ICAgIGdlbnJlICAgICAgICAgICA6IEhhcmRz dHlsZQ0KPiA+ID4gPiAgICBUQlBNICAgICAgICAgICAgOiAxNTANCj4gPiA+ID4gICAgY29tcGls YXRpb24gICAgIDogMA0KPiA+ID4gPiAgICBhbGJ1bV9hcnRpc3QgICAgOiBCLUZyb250DQo+ID4g PiA+ICAgIHB1Ymxpc2hlciAgICAgICA6IFJvdWdoc3RhdGUNCj4gPiA+ID4NCj4gPiA+ID4NCj4g PiA+ID4gVGhpcyBpcyB3aGF0IHRoZSByY29tYnMgcGF0Y2ggZG9lczoNCj4gPiA+ID4NCj4gPiA+ ID4gIE1ldGFkYXRhOg0KPiA+ID4gPiAgICB0aXRsZSAgICAgICAgICAgOiBJbmZpbml0ZSAoT3Jp Z2luYWwgTWl4KQ0KPiA+ID4gPiAgICBhcnRpc3QgICAgICAgICAgOiBCLUZyb250DQo+ID4gPiA+ ICAgIGFydGlzdCAgICAgICAgICA6IFNlY29uZCBBcnRpc3QgRXhhbXBsZQ0KPiA+ID4gPiAgICB0 cmFjayAgICAgICAgICAgOiAxDQo+ID4gPiA+ICAgIGFsYnVtICAgICAgICAgICA6IEluZmluaXRl DQo+ID4gPiA+ICAgIGRhdGUgICAgICAgICAgICA6IDIwMTcNCj4gPiA+ID4gICAgZ2VucmUgICAg ICAgICAgIDogSGFyZHN0eWxlDQo+ID4gPiA+ICAgIGdlbnJlICAgICAgICAgICA6IFRlc3QNCj4g PiA+ID4gICAgZ2VucmUgICAgICAgICAgIDogRXhhbXBsZQ0KPiA+ID4gPiAgICBnZW5yZSAgICAg ICAgICAgOiBIYXJkIERhbmNlDQo+ID4gPiA+ICAgIFRCUE0gICAgICAgICAgICA6IDE1MA0KPiA+ ID4gPiAgICBjb21waWxhdGlvbiAgICAgOiAwDQo+ID4gPiA+ICAgIGFsYnVtX2FydGlzdCAgICA6 IEItRnJvbnQNCj4gPiA+ID4gICAgcHVibGlzaGVyICAgICAgIDogUm91Z2hzdGF0ZQ0KPiA+ID4g Pg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiBNeSBwYXRoIGRvZXMgdGhhdDoNCj4gPiA+ID4N Cj4gPiA+ID4gIE1ldGFkYXRhOg0KPiA+ID4gPiAgICB0aXRsZSAgICAgICAgICAgOiBJbmZpbml0 ZSAoT3JpZ2luYWwgTWl4KQ0KPiA+ID4gPiAgICBhcnRpc3QgICAgICAgICAgOiBCLUZyb250O1Nl Y29uZCBBcnRpc3QgRXhhbXBsZQ0KPiA+ID4gPiAgICB0cmFjayAgICAgICAgICAgOiAxDQo+ID4g PiA+ICAgIGFsYnVtICAgICAgICAgICA6IEluZmluaXRlDQo+ID4gPiA+ICAgIGRhdGUgICAgICAg ICAgICA6IDIwMTcNCj4gPiA+ID4gICAgZ2VucmUgICAgICAgICAgIDogSGFyZHN0eWxlO1Rlc3Q7 RXhhbXBsZTtIYXJkIERhbmNlDQo+ID4gPiA+ICAgIFRCUE0gICAgICAgICAgICA6IDE1MA0KPiA+ ID4gPiAgICBjb21waWxhdGlvbiAgICAgOiAwDQo+ID4gPiA+ICAgIGFsYnVtX2FydGlzdCAgICA6 IEItRnJvbnQNCj4gPiA+ID4gICAgcHVibGlzaGVyICAgICAgIDogUm91Z2hzdGF0ZQ0KPiA+ID4g Pg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiBJJ20gbm90IHN1cmUgd2hldGhlciBpdCBpcyBl dmVuIGFsbG93ZWQgb3IgaW50ZW5kZWQgdGhhdCB0aGVyZQ0KPiBhcmUNCj4gPiA+ID4gbXVsdGlw bGUgbWV0YWRhdGEgZW50cmllcyB3aXRoIHRoZSBzYW1lIGtleT8NCj4gPiA+DQo+ID4gPiBJdCBp cyBpbmRlZWQgYW4gaW50ZW5kZWQgZmVhdHVyZSBvZiB0aGUgQVZEaWN0aW9uYXJ5IHN5c3RlbSwg YW5kDQo+IHRoZQ0KPiA+ID4gbWV0YWRhdGEgZmVhdHVyZSBpbiBwYXJ0aWN1bGFyLg0KPiA+DQo+ ID4gSGksDQo+ID4NCj4gPiB5b3UgbWVhbnQgdG8gc2F5IHRoYXQgaXQgaXMgYW4gaW50ZW5kZWQg Y2hhbmdlIGludHJvZHVjZWQgYnkgeW91cg0KPiBwYXRjaD8g8J+YiQ0KPiA+DQo+ID4gQmVjYXVz ZSB3ZSBoYXZlbid0IGhhZCBkdXBsaWNhdGUgbWV0YWRhdGEga2V5cyBiZWZvcmUuIEknbSBhZnJh aWQNCj4gYnV0DQo+ID4gSSB0aGluayB0aGVzZSBjaGFuZ2VzIHNob3VsZCBiZSByZXZlcnRlZCwg YmVjYXVzZSBpdCBhbHNvIGNyZWF0ZXMNCj4gaW52YWxpZA0KPiA+IEZGcHJvYmUgb3V0cHV0IC0g bGlrZSBpbiBjYXNlIG9mIEpTT04gZm9yIGV4YW1wbGU6DQo+ID4NCj4gPiB7DQo+ID4gICAgICJm b3JtYXQiOiB7DQo+ID4gICAgICAgICAiZmlsZW5hbWUiOiAibXVsdGlwbGVfaWQzdjJfNF92YWx1 ZXMubXAzIiwNCj4gPiAgICAgICAgICJuYl9zdHJlYW1zIjogMSwNCj4gPiAgICAgICAgICJuYl9w cm9ncmFtcyI6IDAsDQo+ID4gICAgICAgICAibmJfc3RyZWFtX2dyb3VwcyI6IDAsDQo+ID4gICAg ICAgICAiZm9ybWF0X25hbWUiOiAibXAzIiwNCj4gPiAgICAgICAgICJmb3JtYXRfbG9uZ19uYW1l IjogIk1QMi8zIChNUEVHIGF1ZGlvIGxheWVyIDIvMykiLA0KPiA+ICAgICAgICAgInN0YXJ0X3Rp bWUiOiAiMC4wMTE5OTUiLA0KPiA+ICAgICAgICAgImR1cmF0aW9uIjogIjIwLjAzNTkxOCIsDQo+ ID4gICAgICAgICAic2l6ZSI6ICI4MDQ5MzYiLA0KPiA+ICAgICAgICAgImJpdF9yYXRlIjogIjMy MTM5NyIsDQo+ID4gICAgICAgICAicHJvYmVfc2NvcmUiOiA1MSwNCj4gPiAgICAgICAgICJ0YWdz Ijogew0KPiA+ICAgICAgICAgICAgICJ0aXRsZSI6ICJJbmZpbml0ZSAoT3JpZ2luYWwgTWl4KSIs DQo+ID4gICAgICAgICAgICAgImFydGlzdCI6ICJCLUZyb250IiwNCj4gPiAgICAgICAgICAgICAi YXJ0aXN0IjogIlNlY29uZCBBcnRpc3QgRXhhbXBsZSIsDQo+ID4gICAgICAgICAgICAgInRyYWNr IjogIjEiLA0KPiA+ICAgICAgICAgICAgICJhbGJ1bSI6ICJJbmZpbml0ZSIsDQo+ID4gICAgICAg ICAgICAgImRhdGUiOiAiMjAxNyIsDQo+ID4gICAgICAgICAgICAgImdlbnJlIjogIkhhcmRzdHls ZSIsDQo+ID4gICAgICAgICAgICAgImdlbnJlIjogIlRlc3QiLA0KPiA+ICAgICAgICAgICAgICJn ZW5yZSI6ICJFeGFtcGxlIiwNCj4gPiAgICAgICAgICAgICAiZ2VucmUiOiAiSGFyZCBEYW5jZSIs DQo+ID4gICAgICAgICAgICAgIlRCUE0iOiAiMTUwIiwNCj4gPiAgICAgICAgICAgICAiY29tcGls YXRpb24iOiAiMCIsDQo+ID4gICAgICAgICAgICAgImFsYnVtX2FydGlzdCI6ICJCLUZyb250IiwN Cj4gPiAgICAgICAgICAgICAicHVibGlzaGVyIjogIlJvdWdoc3RhdGUiLA0KPiA+ICAgICAgICAg ICAgICJlbmNvZGVyIjogIkxhdmY1Ny44My4xMDAiLA0KPiA+ICAgICAgICAgfQ0KPiA+ICAgICB9 DQo+ID4gfQ0KPiANCj4gSSB0aGluayBmZnByb2JlIHNob3VsZCBub3QgZ2VuZXJhdGUgaW52YWxp ZCBvdXRwdXQgaWYgbWV0YWRhdGEgZ2l2ZW4NCj4gdG8gaXQgaGFzDQo+IDIgZW50cmllcyB3aXRo IHRoZSBzYW1lIGtleSwgaW5kZXBlbmRhbnQgb2YgdGhhdCBiZWluZyB0aGUgY29ycmVjdCB3YXkN Cj4gdG8gZXhwb3J0DQo+IG1ldGFkYXRhLg0KDQpUaGUgcHJvYmxlbSBpcyBub3QgYXQgdGhlIHNp ZGUgb2YgRkZwcm9iZSwgaXQncyB0aGUgSlNPTiBmb3JtYXQgd2hpY2gNCmRvZXNuJ3QgYWxsb3cg dG8gZXhwcmVzcyBkdXBsaWNhdGUga2V5cyBpbiB0aGF0IHdheS4NCihhbHNvIGFwcGxpZXMgdG8g dGhlIHVwY29taW5nIFlNTCBvdXRwdXQgZm9ybWF0KQ0KDQpUaGUgb25seSB0aGluZyB0aGF0IEZG cHJvYmUgY291bGQgZG8gaXMgdG8gc3VwcHJlc3MgZHVwbGljYXRlLWtleSBlbnRyaWVzDQpidXQg dGhhdCB3b3VsZCBsZWFkIHRvIGFuIGluY29tcGxldGUgb3V0cHV0IG9mIGRhdGEuIFNpbmNlIHRo ZSBjb2RlIHdoaWNoDQpvdXRwdXRzIHRoZSBkYXRhIGlzIGFnbm9zdGljIG9mIHRoZSB0ZXh0IGZv cm1hdHRlciwgdGhlIGR1cGxpY2F0ZSBrZXkgZW50cmllcw0Kd291bGQgYmUgc3VwcHJlc3NlZCBm b3IgYWxsIG91dHB1dCBmb3JtYXRzLiBJbiB0aGUgZW5kLCBub3RoaW5nIHdvdWxkIGJlDQp3b24g YmVjYXVzZSB0aGUgb3V0cHV0IHdvdWxkIGJlIHRoZSBzYW1lIGFzIHdpdGhvdXQgdGhlIHJjb21i cyBwYXRjaC4NCg0KSW4gb3JkZXIgdG8gYWxsb3cgZHVwbGljYXRlIGtleXMsIHRoZSBvdXRwdXQg Zm9ybWF0IHdvdWxkIG5lZWQgYSBnZW5lcmFsDQpjaGFuZ2UgZm9yIG1ldGFkYXRhLCBsaWtlIHRv IGFuIGFycmF5IG9mIGl0ZW1zICh3aXRoIGtleSBhbmQgdmFsdWUpLg0KQnV0IHRoaXMgd291bGQg YmUgYSBicmVha2luZyBjaGFuZ2UgZm9yIGV2ZXJ5Ym9keSB3aG8gdXNlcyB0aGUgbWV0YWRhdGEN CmluZm9ybWF0aW9uIGZyb20gRkZwcm9iZSBvdXRwdXQgaW4gd2hhdGV2ZXIgd2F5Lg0KDQpCZXN0 LA0Kc3cNCg0KDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0CmZmbXBlZy1kZXZlbEBmZm1wZWcub3JnCmh0dHBz Oi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAoKVG8gdW5zdWJzY3Jp YmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCmZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBl Zy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCg==