From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mail.toke.dk; spf=pass smtp.mailfrom=; dkim=pass header.d=auckland.ac.nz; arc=pass; dmarc=pass (Used From Domain Record) header.from=auckland.ac.nz policy.dmarc=reject Received: from MEUPR01CU001.outbound.protection.outlook.com (mail-australiasoutheastazlp170100001.outbound.protection.outlook.com [IPv6:2a01:111:f403:c40e::1]) by mail.toke.dk (Postfix) with ESMTPS id EBB9593C8C1 for ; Sun, 09 Nov 2025 20:51:17 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=NH2ZxDpOMNjsCd28kP6emjAFq1LTk6tybJlBbIwfUeMKNP+25Ys6OZr2xx/POUONnYs1Oquh/RkcePKQw0eLcZRjMd8lZyN5Vp1tXTqXPCmnhQW1GIXrzGuUwx8UkmRlIh/CKb9dCfNY0PJWGDxFn4GrQ34dQFTUkcOjG487ZKH9BIXSZOLLZdO5FBfii/wAkgFrJXc/kbHtIgl7s+0E6Bleb7v5P+BipAcNT88q9Z/OgqDZZgZCLGQphnnUfyH2d07IjGcLWRrSG520cXG8nbcS9m5si8JbJj5uEyDitVQZAkKNzYCM17/FpFn9W+dXoImOE1HBN9dtH1ehLpme0A== 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=DyeG/ivOlcNUESEl+pXJ2TxcwKkUXo7XVnBFLJkiaMo=; b=A/4R8iwlkWTdIkqVXTT8QetW8YTjZZnJgzQOS3mRtnsTzaFbuxhrOl0C1X66mOO1jp6SaZ1l5j9Qo16K14xI1F3Ka1xdzGBa0OuXB36E8jtUJoufgampnKqhljxk/P+XlO0Ynugi4ow0c8AEhBgjN9aP6n/UDRiifz7eD6+wWfBsougUBiIvSETBofMztdKwBpNQ+gkybQ8PS2+4CVs3frol8iiPZKWOYK1VdxjV33E+ToBm2gXUitHdA798+RX7nkcu0x0EkZkPWzP4ln1q9ZLfZhTl7cUt1SkeQbAvzO5UDj4dlViDDgFF7NRFeRvv2U1Nk4grGVp6geBXiW3Xyg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=auckland.ac.nz; dmarc=pass action=none header.from=auckland.ac.nz; dkim=pass header.d=auckland.ac.nz; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=auckland.ac.nz; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DyeG/ivOlcNUESEl+pXJ2TxcwKkUXo7XVnBFLJkiaMo=; b=YkoUR60Pl7IwjlPE0ymPN6LFug2PWOgQK/kl18dUj+xDDhjVZ4nE9u+0L3aL5ZyEvsTp4O2L2jztAXtrIuHfPko9YkKvvvPp89eSmkvyM4DZ8HnSdAA+yKHUTW/ZpP+LlBrWVvaGxVfw80R49mG9sklg9y70zjsaMd5/AexpMto= Received: from SY8P300MB0544.AUSP300.PROD.OUTLOOK.COM (2603:10c6:10:297::19) by SY8P300MB0550.AUSP300.PROD.OUTLOOK.COM (2603:10c6:10:291::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9298.16; Sun, 9 Nov 2025 19:51:04 +0000 Received: from SY8P300MB0544.AUSP300.PROD.OUTLOOK.COM ([fe80::2100:96f2:f11b:4fc2]) by SY8P300MB0544.AUSP300.PROD.OUTLOOK.COM ([fe80::2100:96f2:f11b:4fc2%5]) with mapi id 15.20.9298.015; Sun, 9 Nov 2025 19:51:04 +0000 Message-ID: Date: Mon, 10 Nov 2025 08:51:02 +1300 User-Agent: Mozilla Thunderbird To: J Pan Cc: starlink@lists.bufferbloat.net References: <176254173597.1347.15997824594759319437@gauss> Content-Language: en-US From: Ulrich Speidel In-Reply-To: X-ClientProxiedBy: AK2P299CA0020.NZLP299.PROD.OUTLOOK.COM (2603:10c6:108:18::21) To SY8P300MB0544.AUSP300.PROD.OUTLOOK.COM (2603:10c6:10:297::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SY8P300MB0544:EE_|SY8P300MB0550:EE_ X-MS-Office365-Filtering-Correlation-Id: 4d19ed41-f105-43f5-0407-08de1fc9512a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|4022899009|1800799024|366016|376014|13003099007|8096899003|7053199007; X-Microsoft-Antispam-Message-Info: =?utf-8?B?clc5UE5WdDJFN0RKSEJkeVBtUjFiVXZOc0E3cTNnbzBTeFB2ZGpYbnNOTmU3?= =?utf-8?B?d0FSQ3JLalk2MFo1cVFKdmpESUdFWFE4WDFVRTR1VU9kcDI0OEk1ZjhjWEEv?= =?utf-8?B?MkZ4Vzg4aXpFeStxTnNSTjRyOEhybGNJeTY5ODZtZDdINlNUV2E5aTVVdTFI?= =?utf-8?B?aSt2Rlc4d08xSXNIWWY5QXJMNEl3MlpVUjh5K09ybFdadTBldXpzY3lIckMy?= =?utf-8?B?b0MwOVZkWjBmUVFsQVdQbWQ1OCtjVzJLcHNDZ0RTQ01kSmpuR3BDMWs1OEdQ?= =?utf-8?B?alBSNjFyY1grUldWWi90dHlHUXFWUExDUzVQTUJlNnBjdDEvcUNGRnYvM1g4?= =?utf-8?B?aC9BY1hvYWhvNlNUZlZxc0hpbk5IUmVMRmtpQ005eG1XVWphRDBHYVliaFFl?= =?utf-8?B?dUhJNGc2Wk9nVkp5eXFEWmE2ek9zcXRBY0RhbURiS2w3d2E3Y041Ym1ycktr?= =?utf-8?B?b0ZKSHNkcGdNRjRIYmZzUGc0aUlDYkJvWGxzWWZXaGlKRXF3dG5yMmV1TWhp?= =?utf-8?B?YXpvZ2pEbVBhbHEyRWZ6cEd4UmFvZENuRWFuQTBlTG9yL1ZFaUtaNU1idkgv?= =?utf-8?B?QXgzNDE0aC84QUdhU3hxaWgxU3BmSXJObFpaeWRaczJLTEhQZkwzQWMyUnpi?= =?utf-8?B?dzFwa0s5MlNGYWh6KzdvUDZwUW9xRUNZY3lwdE5tdDRLeWcybUJCWDU0TDBG?= =?utf-8?B?aG9KcHhrL0VaeEtKSmtUSU1KQXIyVklUTnpWelBMeG1VZ1c1ZGhLU2t6NzJF?= =?utf-8?B?SzAzZlBFZ1JZc2grYXBPdmVWc0M4WFNmMFVLSzZFTEF3QXpmWmdUQ0l1Zldj?= =?utf-8?B?a2g3OFlPNWtoc0lBMHk0akZpS09GY1AxL2paTHZLUG1FYVNtUm1zWU01ZkNH?= =?utf-8?B?SWgxUU9MTnh2TmVON2x5RmJMLzNXaUFnQlZmVCtVZ1k5UTJJV25yTnUvZzdw?= =?utf-8?B?WEFyZG9tVWlYWGw1d0J2cHh0UWhiSGlUQngzM04wS3V4Mnk1SHpubEx5LzNN?= =?utf-8?B?K0wwZGIxdFY2NGhzaHorOG9FVzlIb0VYM3FXelpPSTRVVFBiQ0ZtbitueUF3?= =?utf-8?B?SzBlZk0xN0ZBZThQWnZ4MHFuc2Q1K0hRcDk3STRHR0dmUnpjQ0llOU90dXh3?= =?utf-8?B?RUNsdTBRV0ttWXFnQmV2eExiRWhuUEE4RmFmOENTaXhWRlRVazVDQXl2ZVc0?= =?utf-8?B?ejdiM2dUTVVmTHZza3BXVWkxM0tLTWNaRUErWlNMR05oMUhQZFI0Yzl1SkZ0?= =?utf-8?B?UmRIWmtJRVVLNnBCOXpobC9RY1QwRlV4SHdjMGtVQ0t6dmlkRE1MMVNtNnVL?= =?utf-8?B?cStieVEzQU9mcEtjU0M0QkxQOTB3bGRhT2dxVmRCSUh1Vlp0Vys1NFpmNjZ3?= =?utf-8?B?a1dDanpWUlRzR1lybnpXVEgxQWxkNzZneXhSYTNTWGF4L2ZHdHVRRVpKR3U5?= =?utf-8?B?aVVucGhKcHp0bFBTc3RtdEJVcXJKZS8yZHFTZHBiS0dvVkV4b3kranlseExB?= =?utf-8?B?SHVDbVZLcXJPZndWZjY2QTJCdTBNVEFpNy91TVMzY05wOHdTQnBLSVhlTmZk?= =?utf-8?B?dlpXcitDd3hkUFBJWnBtNGNCQlJxYWU5L0krK2xYcVcyNmdINHc0TWRnNzZy?= =?utf-8?B?TGkrS0U4bEdEOVBpOUNoZm9nZ2lMRlBRc0xZSzlxOURYdUQvWWZVYTFNVFU1?= =?utf-8?B?QWtGTTBuNlhkL3lUOXFqWXlsQ0FGdng5VXJWT3VncnE2cUsraEErQVFjazlX?= =?utf-8?B?V09vY3J6elJkTkIraytRQ1FTTXdzR2hoMWUzRWRjMlIvYUE1TDdkTnRmek5X?= =?utf-8?B?NHo5bWpWTm5mS1MwVlZLSVE4R2dsNlRRTkR2YUFsQjdYZEVsQVFTTVlCR25t?= =?utf-8?B?V2FRcWNManFjdW5qY3JoSDRjS1ZRTElwQTZ0TG5NN0d4NXc9PQ==?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SY8P300MB0544.AUSP300.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(4022899009)(1800799024)(366016)(376014)(13003099007)(8096899003)(7053199007);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RDBxOE04TC9RSktzNmxpVUVkQ2gvVEQ5RXg3M0NsdEdvR0FzSGNqaW9NeElv?= =?utf-8?B?b3YvUzM2aTVyQ0tUY0ZlaDFHVWFCR0gzWnhRZTI1QWZXZTYxM0IwZGI4bjIy?= =?utf-8?B?K1JlaHJWVGo2SW1Dd2dtZjVsWUNzVW82aDVoakJmeTRoSnlydDNuMnc1aEYx?= =?utf-8?B?TDJNV29NdHJ6cnY0R25qOUFUcExqZHZQNnRlYXlNTWxmV2FiOEUzVEJCNVZK?= =?utf-8?B?Y1FHN1drQjNQSGZTNjIxbTl0a1M0cWdIWFZoRnZXZW0yYi9iMFZjamc2OUVJ?= =?utf-8?B?dUdobkpoSGlMc1FSTEt3a2FSbmw4SlRvUVJlLzFIVFF1cjhTL2FaQW12bmlZ?= =?utf-8?B?Tjh4eFcyZjlZY3VEK3pFZ05pa1BoSVR1RDhzSXFjbTZyWEVScU0zYWxuVzZO?= =?utf-8?B?S0NNa0RDZy9SR2MwN2wvNHdVNHdMK1lLN2xIN0IyazlVWm5HQmZhTzMzazYr?= =?utf-8?B?SlVTR2V3QWhHdGd2OHJ4ZzN1eGNaK1VnNmRuQTlyRlV5NUNUeWdIc1djN0pJ?= =?utf-8?B?cFJYOHdYMUxzUkdkaFVxVG5aM3M0aTl6bkMvWEQ5NE8yVkgrOWx3eDVTdWR0?= =?utf-8?B?Q2UvZ09MLzd4VGxqcm9iM3pUT2lUbW5saFkwWlIrUFhxSkhlLzUwMGpSMVpu?= =?utf-8?B?ZWh1Yk0rcEN2QWc1Q2k2QnlDeUdBaUYzcWRGSktXcEhITldZczNhakdrejIz?= =?utf-8?B?Mms4MXlVR3lXVkxHZURUdlF2d2lvY29DKzR1MVFxdytpZDUxZitDMmdSd0VJ?= =?utf-8?B?dU9pMk55WmlKTldzd1F2ZHF1NVhXeXd3R00rb2diekN3YmE4TFNYNGR2NXJ3?= =?utf-8?B?THJobW5uMlJ4ZkFseHlEVks0dXBUZUY2a2xVRFU2alNsMlFUMXN5b3FBVWZY?= =?utf-8?B?TGIrTW1IVEUzQiszZUVjNHF4U29WUDlNYnJaS0RWUnNhb2NZOW82L1dmM0pY?= =?utf-8?B?N20rVzZ2bUNWVTZVeXJvVDMvSXc3N00ra2NnTXV5YnlQK1dKbHBFNGFxMlRS?= =?utf-8?B?ZUNTSFQ2K0UyNnBZejRNU2NYUE54VUNFeXptSFhMeHBKcC95YXZCYUM2d3or?= =?utf-8?B?S09Bc1pTNythN2RFaGxjK04rd09Manl2MktOa2hIQlZ1cFJ5UXE4b1VVUCtV?= =?utf-8?B?Y25tNmpWQ1dDNDcySnNLUFdNL05oQ3FidnFtcGJyemtRbERUdS8ySWgzL0Rq?= =?utf-8?B?OENDcEVIazlTWWUxMlZvbURJNnkyYTYxdnBIRTlBck5URlRBZXU4RHNmb2hB?= =?utf-8?B?RXI0aEZmaVFnYzVYUWxMSVlzY0ozMCtJLzlsczF0dFRpc0lsV0ZjRkt1ODNh?= =?utf-8?B?bkI3RlZEZUlNelVzbFdSRnhabnVJR2pIa04rdnJJTjVtYlFIdnNvZ1diZm1a?= =?utf-8?B?UXk3RDNyN0NDN1RQZ2JGaDkzMG9lcHJFWDgyMVdRK0xFRnpWM1RqVmJuMEZn?= =?utf-8?B?TEdONDdrN01lSWwvNmFjeGgza1l4ZlRSTGxGUzNLSSthOFRHeUZmZXpZcjV5?= =?utf-8?B?NjhQOUEyU2FaRWNlcnBUVWwyZEFZajlSKzc3aDlxNzV6ZUdhWE80Z0tienVK?= =?utf-8?B?cWVvV0dRb2dyYTVwZlhZOHZGSUdPRUd3Y3lLYWNVWXFTQjU2Z2VXVTg4YWZS?= =?utf-8?B?WnNkSlhGUUo0Nldwak1YSUVXa1NYMkNRVTFlVnZ4NS9DOGxXUXNReW5yU0Rs?= =?utf-8?B?MDBmR3lzeEFiZzhuNkt5dXkxdG13cC9DeE5CdzhCTWNLbkV0WTFFV2hCUjhK?= =?utf-8?B?OW02K1dlMG9pVFNJR3d5T0pIUC9WTTI4S3pQSTEyS1BTa1dkakplS0pOVnJG?= =?utf-8?B?VXFHaGtSdWR6aWR5WTVrWjQ4MU1YMnVTUmZwb1FMWE9RZjQxWndUbnRXQTZD?= =?utf-8?B?T1YvdHdJSERHT09LRGJuSlJ4MEhsalhPUXliY2RwWjBaUTBZd3FaSFpVN1hl?= =?utf-8?B?ZXBLRS9RNnNWbzlTM3B1VU1tb1BYaWdoYUlBaFFLWFlKc1VtYkFJeHRLcHJ2?= =?utf-8?B?d205ZS9lME4zeHZrYzd2cFVjU3czZWk2d2dUWVlJU0VxOHFWWmIzdkZaM2JB?= =?utf-8?B?eXlsalNmZVNkUG91OU1DNEVqWlZIK2poeGc2MDhxYU5BcW1JWW9EZUk3NFVz?= =?utf-8?B?MUg4VnowM01aS1lVbXZOUUFOWWJsTmJYbDBDMno3MkE3NFZzZUFrRE1PMHpv?= =?utf-8?B?SHc9PQ==?= X-OriginatorOrg: auckland.ac.nz X-MS-Exchange-CrossTenant-Network-Message-Id: 4d19ed41-f105-43f5-0407-08de1fc9512a X-MS-Exchange-CrossTenant-AuthSource: SY8P300MB0544.AUSP300.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Nov 2025 19:51:04.5375 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: d1b36e95-0d50-42e9-958f-b63fa906beaa X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: d66dOTJ3LMqtEsGWwGhXK4TqS8HWRXRZOD73KjGR/pxdiyEI/LJRpI1cEgxvEAMegC+mv/kWfRk/dHCahK8ErB8aZDnz2Mr2Rsaj+uI8xwc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SY8P300MB0550 Message-ID-Hash: 2FUP6IVG5DHW2SVTXWE2BKSZTMYDLD5K X-Message-ID-Hash: 2FUP6IVG5DHW2SVTXWE2BKSZTMYDLD5K X-MailFrom: u.speidel@auckland.ac.nz X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header Content-Transfer-Encoding: base64 Content-Type: text/plain; charset=UTF-8; format=flowed X-Content-Filtered-By: Mailman/MimeDel 3.3.10 X-Mailman-Version: 3.3.10 Precedence: list Subject: [Starlink] Re: [LibreQoS] Re: Keynote: QoE/QoS - Bandwidth Is List-Id: "Starlink has bufferbloat. Bad." Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: QnV0IHdoYXQgZG9lcyBiaWNhc3QgbWVhbj8gSXQgbWVhbnMgc2VuZGluZyBhIHBhY2tldCB0byBi b3RoIHF1ZXVlcyAtIA0KdGhlIG9uZSBmb3Igc2F0IEEgYW5kIHRoZSBvbmUgZm9yIHNhdCBCLCBy aWdodD8NCg0KTGV0J3MgYXNzdW1lIHRoYXQgdGltZSBvZiBoYW5kb3ZlciBpcyB3aGVuIERpc2h5 IHN3aXRjaGVzIGl0cyBiZWFtIG92ZXIuIA0KVGhlbiBmb3IgYSBwYWNrZXQgZnJvbSBzYXQgQSB0 byByZWFjaCBpdCwgdGhhdCBwYWNrZXQgbmVlZHMgdG8gbWFrZSBpdCANCnRvIHRoZSBmcm9udCBv ZiB0aGUgVFggcXVldWUgZm9yIHNhdCBBIGEgbWluaW11bSBvZiBMX2EgbXMgYmVmb3JlIA0KaGFu ZG92ZXIgdGltZSB0byBhbGxvdyBmb3IgdHJhbnNpdCBkZWxheSB0byBEaXNoeS4NCg0KVGhlbiB3 ZSBoYXZlIHRoZSBmb2xsb3dpbmcgcG9zc2libGUgc2NlbmFyaW9zOg0KDQogICogVGhlIHBhY2tl dCByZWFjaGVzIHRoZSBmcm9udCBvZiB0aGUgcXVldWUgZm9yIHNhdCBBIGJlZm9yZSB0aGUNCiAg ICBoYW5kb3ZlciBhbmQgZ2V0cyB0cmFuc21pdHRlZCB0byBzYXQgQSwgYW5kIGZyb20gdGhlcmUg dG8gRGlzaHkuDQogICAgVGhlbiB0aGUgcGFja2V0IHRoYXQncyBpbiB0aGUgcXVldWUgZm9yIHNh dCBCIGlzIHN1cnBsdXMgdG8NCiAgICByZXF1aXJlbWVudHMuIEJ1dCBkb2VzIGl0IGdldCByZW1v dmVkPyBJZiBub3QsIGl0IG5lZWRsZXNzbHkgdGFrZXMNCiAgICB1cCBjYXBhY2l0eSBuZWVkbGVz c2x5ICg9aW50cm9kdWNlcyBkZWxheSkgb24gc2F0IEIuIEJ1dCB0aGF0IGNvdWxkDQogICAgYmUg c29sdmVkIEkgZ3Vlc3MsIGFzIGxvbmcgYXMgaGFuZG92ZXIgaXMgdG8vZnJvbSB0aGUgc2FtZSBn YXRld2F5Lg0KICAqIFRoZSBwYWNrZXQgaXMgc3RpbGwgaW4gYm90aCBxdWV1ZXMgYnkgdGhlIHRp bWUgb2YgaGFuZG92ZXIuIFRoZW4gd2UNCiAgICBkb24ndCBnZXQgcGFja2V0IGxvc3MsIGJ1dCB0 aGUgcGFja2V0IGluIHF1ZXVlIGZvciBzYXQgQSBpcyBub3cNCiAgICBhbHNvwqBzdXJwbHVzIHRv IHJlcXVpcmVtZW50cy7CoEJ1dCBkb2VzIGl0IGdldCByZW1vdmVkPyBJZiBub3QsIGl0DQogICAg bmVlZGxlc3NseSB0YWtlcyB1cCBjYXBhY2l0eSBvbiBzYXQgQi4NCiAgKiBUaGUgcGFja2V0IHJl YWNoZXMgdGhlIGZyb250IG9mIHRoZSBxdWV1ZSBmb3Igc2F0IEIgbW9yZSB0aGFuwqBMX2ENCiAg ICBtc8KgYmVmb3JlIHRoZSBoYW5kb3ZlciwgYnV0IHRoZXJlJ3Mgbm8gY2xpZW50IHRoZXJlIHll dCB0byB0cmFuc21pdA0KICAgIGl0IHRvLiBXaGF0IGRvZXMgU3RhcmxpbmsgZG8gd2l0aCB0aGF0 IHBhY2tldD8gSWYgaXQgZHJvcHMgdGhlDQogICAgcGFja2V0LCBpdCByaXNrcyB0aGF0IHRoZSBw YWNrZXQgaW4gcXVldWUgZm9yIHNhdCBBIHdvbid0IG1ha2UgaXQgdG8NCiAgICB0aGUgZnJvbnQg b2YgdGhhdCBxdWV1ZSBpbiB0aW1lLg0KDQpUaGUgbGlzdCBpc24ndCBjb21wbGV0ZSBidXQgaXQg c2hvd3MgdGhhdCBiaWNhc3QgYWxvbmUgaXNuJ3QgYSBmaXguDQoNCllvdSBjb3VsZCBob3dldmVy IGxvb2sgYXQgdGhlIGV4cGVjdGVkIHF1ZXVlIHNvam91cm4gdGltZSBpbiBlYWNoIHF1ZXVlIA0K YXMgd2VsbCBhcyB0aGUgZXhwZWN0ZWQgcHJvcGFnYXRpb24gZGVsYXkgdG8gRGlzaHkgYW5kIHRo ZW4gc2hvdmUgdGhlIA0KcGFja2V0IGludG8gdGhlIHF1ZXVlIHRoYXQgaXQgbmVlZHMgdG8gYmUg aW4uIEJ1dCBtYXliZSB0aGF0J3Mgbm90IA0KaGFwcGVuaW5nIHlldD8NCg0KT24gOS8xMS8yMDI1 IDY6MDggcG0sIEogUGFuIHdyb3RlOg0KPiBzdGFybGluayBjYW4gdXNlIGJpY2FzdCB0byByZWR1 Y2UgaGFuZG92ZXIgbG9zcywgZXNwZWNpYWxseSBmb3IgdGhlDQo+IGRvd25saW5rIHRvIHRoZSB1 c2VyIHRlcm1pbmFsLCBidXQgdGhlcmUgYXJlIHN0aWxsIGhhbmRvdmVyIGRlbGF5DQo+IHNwaWtl IGFuZCBwYWNrZXQgbG9zcywgZXNwZWNpYWxseSBmb3IgdGhlIHVwbGluayBhcyB3ZWxsDQo+IC0t DQo+IEogUGFuLCBVVmljIENTYywgRUNTNTY2LCAyNTAtNDcyLTU3OTYgKE5PIFZNKSxQYW5AVVZp Yy5DQSwgV2ViLlVWaWMuQ0EvfnBhbg0KPg0KPiBPbiBTYXQsIE5vdiA4LCAyMDI1IGF0IDU6MDTi gK9QTSBVbHJpY2ggU3BlaWRlbCB2aWEgU3RhcmxpbmsNCj4gPHN0YXJsaW5rQGxpc3RzLmJ1ZmZl cmJsb2F0Lm5ldD4gd3JvdGU6DQo+PiBTdGFybGluayBpcyBhIGJpdCB1bnVzdWFsIGluIHRlcm1z IG9mIGl0cyBwYWNrZXQgbG9zcyBtZWNoYW5pc20uDQo+Pg0KPj4gSW4gIm5vcm1hbCIgbmV0d29y a3MsIHdlIGhhdmUgZGFtYWdlZCBwYWNrZXRzIChsb3cgU05SIG9yIGludGVyZmVyZW5jZQ0KPj4g bGVhZGluZyB0byBzeW1ib2wgZXJyb3JzIGluIHRoZSBtb2R1bGF0aW9uIHRoYXQgdGhlbiB0cmFu c2xhdGUgaW50byBiaXQNCj4+IGVycm9ycyBhbmQgZmFpbGluZyBjaGVja3N1bXMpLCBxdWV1ZSBk cm9wcyBhcyBwYXJ0IG9mIHRoZSBub3JtYWwNCj4+IGNvbmdlc3Rpb24gY29udHJvbCBiZWhhdmlv dXIsIGFuZCAtIG5vdCBzdXJlIGhvdyBtdWNoIG9mIGEgcHJvYmxlbSB0aGlzDQo+PiBzdGlsbCBp cyB0aGVzZSBkYXlzIC0gcmVjZWl2ZSB3aW5kb3cgb3ZlcmZsb3dzLg0KPj4NCj4+IEluIHRoZSBj YXNlIG9mIFN0YXJsaW5rIGFuZCBoYW5kb3ZlcnMsIHRoZXJlIGFwcGVhcnMgdG8gYmUgYW4gdXBs aW5rDQo+PiBxdWV1ZSBmb3IgdXBsaW5rIHRvIGVhY2ggc2F0ZWxsaXRlIG9uIHRoZSBnYXRld2F5 IHNpZGUgb2YgdGhpbmdzLg0KPj4gU3VwcG9zZSB5b3VyIGRpc2h5IHRhbGtzIHRvIHNhdCBBIGZp cnN0IGFuZCB0aGVuIGdldHMgaGFuZGVkIG92ZXIgdG8gc2F0DQo+PiBCLiBVcCB1bnRpbCBoYW5k b3ZlciB0aW1lLCBwYWNrZXRzIGhlYWRpbmcgdG8geW91ciBkaXNoeSBnZXQgc2VudCB0byB0aGUN Cj4+IHF1ZXVlIGZvciBzYXQgQSwgdGhlcmVhZnRlciB0byB0aGUgcXVldWUgZm9yIHNhdCBCLiBU aGVzZSBxdWV1ZXMgYXBwZWFyDQo+PiB0byBiZSBkaWZmZXJlbnQgYW5kIC0gd2l0aCBkaWZmZXJl bnQgcGFja2V0cyBhbmQgZGlmZmVyZW50IHZvbHVtZSBpbg0KPj4gdGhlbSAtIHNlZW0gdG8gbGVh ZCB0byBzaXR1YXRpb25zIHdoZW4gYSBwYWNrZXQgYWRkcmVzc2VkIHRvIHlvdSB0aGF0J3MNCj4+ IGJlZW4gZW5xdWV1ZWQgZm9yIEEgaGFzbid0IHJlYWNoZWQgdGhlIGZyb250IG9mIHRoZSBxdWV1 ZSBieSBoYW5kb3Zlcg0KPj4gdGltZSB0byBCLiBBcyBBIG5vdyBubyBsb25nZXIgdGFsa3MgdG8g eW91LCB0aGlzIHBhY2tldCBpcyBub3cgb24gYSByb2FkDQo+PiB0byBub3doZXJlLg0KPj4NCj4+ IE9mIGNvdXJzZSwgdGhpcyBsb3NzIG9ubHkgZXZlciBoYXBwZW5zIGF0IGhhbmRvdmVyIHRpbWUu IE5vIHN1Y2ggdGhpbmcNCj4+IGFzIGEgdW5pZm9ybSBkaXN0cmlidXRpb24gaGVyZS4gTW9yZW92 ZXIsIGl0J3MgTk9UIGEgbG9zcyB0aGF0IHNob3VsZCBiZQ0KPj4gaW50ZXJwcmV0ZWQgYXMgYSBj b25nZXN0aW9uIGNvbnRyb2wgc2lnbmFsIHRvIGEgVENQIHNlbmRlciAob3Igd2hhdGV2ZXINCj4+ IG90aGVyIHByb3RvY29sIGlzIHRyeWluZyB0byBjb25nZXN0aW9uIGNvbnRyb2wgaXRzZWxmLCBl LmcuLCBzb21lIFFVSUMNCj4+IGltcGxlbWVudGF0aW9uIG9yIHNvbWVzdWNoKS4NCj4+DQo+PiBP biB0aGUgbGF0ZW5jeSB2cy4gYmFuZHdpZHRoIGRlYmF0ZTogVG8gbWUsIHRoaXMgc2VlbXMgYSBi aXQgbGlrZQ0KPj4gYXJndWluZyB3aGV0aGVyIHdpZHRoIG9yIGhlaWdodCBhcmUgbW9yZSBpbXBv cnRhbnQgZm9yIGFyZWEuIEJvdGgNCj4+IG1hdHRlciwgYW5kIGJvdGggYXJlIGVxdWFsbHkgYmFk bHkgdW5kZXJzdG9vZCBieSBtYXJrZXRpbmcgZm9say4NCj4+DQo+PiBJZiB5b3VyIHZpZGVvIG5l ZWRzIHRvIHN0cmVhbSBYIE1iL3MgdG8gdGhlIHZpZXdlciwgdGhlbiB0aGUgY2hhbm5lbA0KPj4g YmV0d2VlbiB0aGUgc2VuZGVyIGFuZCByZWNlaXZlciBuZWVkcyBCID4gWCBNYi9zIG9mIGF2YWls YWJsZSBhbmQNCj4+IGFjY2Vzc2libGUgYmFuZHdpZHRoLiBUaGF0J3Mgd2h5IGJhbmR3aWR0aCBt YXR0ZXJzLiBCYXN0YS4NCj4+DQo+PiBUaGUgImFjY2Vzc2libGUiIHBhcnQgb2YgdGhlIGJhbmR3 aWR0aCBpcyB3aGVyZSB0aGUgbGF0ZW5jeSBjb21lcyBpbi4NCj4+IFJlbWVtYmVyIHRoZSBnb2Fs IGlzIHRvIGhpdCBiYW5kd2lkdGgtZGVsYXkgcHJvZHVjdCBvbiB0aGUgbG93ZXN0DQo+PiBiYW5k d2lkdGggbGluayBhbG9uZyB0aGUgZm9yd2FyZGluZyBjaGFpbiBvZiB5b3VyIHBhY2tldHMsIGku ZS4sIHRvIG1ha2UNCj4+IHN1cmUgeW91IGhhdmUgdGhhdCBiaXQgb2YgcGlwZSBmaWxsZWQuIEl0 J3MgYSBsb2Z0eSBnb2FsIGJlY2F1c2UNCj4+IHdoYXRldmVyIHlvdSBkbyBpbiB0ZXJtcyBvZiBp bmNyZWFzaW5nIG9yIGRlY3JlYXNpbmcgeW91ciBzZW5kaW5nIHJhdGUNCj4+IG9ubHkgaGFzIGFu IGVmZmVjdCBzb21lIHRpbWUgbGF0ZXIsIGJ5IHdoaWNoIHRpbWUgdGhlIGNvbmRpdGlvbnMgeW91 J3JlDQo+PiB0cnlpbmcgdG8gcmVzcG9uZCB0byBtYXkgaGF2ZSBjaGFuZ2VkLiBZb3VyIHBpY3R1 cmUgb2YgdGhlIGN1cnJlbnQNCj4+IGNvbmRpdGlvbnMgaXMgYWx3YXlzIG91dGRhdGVkIChhbmQg bW9yZSBvdXRkYXRlZCB0aGUgbG9uZ2VyIHRoZQ0KPj4gbGF0ZW5jeSksIGFuZCBqdXN0IHRvIGFk ZCBpbnN1bHQgdG8gaW5qdXJ5LCB0aGUgY29uZGl0aW9ucyAoYXZhaWxhYmxlDQo+PiBiYW5kd2lk dGgsIFJUVCkgY2FuIGFsc28gY2hhbmdlIHdpdGhvdXQgeW91ciBjb250cm9sIGlucHV0LiBUaGF0 IGNoYW5nZQ0KPj4gaXMgYW1vbmcgb3RoZXJzIGRyaXZlbiBieSBhbGdvcml0aG1zIHRoYXQgYXJl IHBvc3NpYmx5IHRyeWluZyB0byBmaWxsIGENCj4+IGRpZmZlcmVudCBwaXBlLCBvciBoYXMgYXQg dGhlIHZlcnkgbGVhc3QgYSBkaWZmZXJlbnQgKHRpbWUtc2hpZnRlZCkgdmlldw0KPj4gb2YgdGhl IGNvbmRpdGlvbnMgYXQgdGhlIHBpcGUgeW91J3JlIHRyeWluZyB0byBmaWxsLiBUaGlzIGlzIGEN Cj4+IGZ1bmRhbWVudGFsIGNvbnRyb2wgcHJvYmxlbSwgbm90IGEgbWF0dGVyIG9mIEJCUiBvdmVy IEJJQyBvciBSZW5vIG9yDQo+PiBWZWdhcyBvciB3aGF0ZXZlciB5b3UndmUgdHJpZWQgb24gbnMy Lg0KPj4NCj4+IFRoZXJlIGFyZSB0aGluZ3MgdGhhdCBtYWtlIHRoaXMgY29udHJvbCBwcm9ibGVt IGEgbGl0dGxlIGVhc2llcjogbG93ZXINCj4+IGxhdGVuY3kgb2J2aW91c2x5LCBidXQgYWxzbyBl eGNsdXNpdmUgbGlua3MgKG9yIGF0IGxlYXN0IGZld2VyIGNvbXBldGluZw0KPj4gZmxvd3MgaWYg eW91IGNhbid0IGdldCBleGNsdXNpdml0eSksIGZld2VyIGJhbmR3aWR0aCBib3R0bGVuZWNrcyBh bG9uZw0KPj4geW91ciBob3BzIGFuZCBib3R0bGVuZWNrcyB0aGF0IGFyZSBtb3JlIHByZWRpY3Rh YmxlLCBpLmUuLCB3aGVyZSB0aGUNCj4+IGlucHV0IHF1ZXVlcyBnZXQgcHJvY2Vzc2VkIGF0IGEg Y29uc3RhbnQgcHJvY2Vzc2luZyByYXRlLiBUaGlzIGlzIHdoeQ0KPj4gbGFzdCBtaWxlIGZpYnJl IGFuZCBFdGhlcm5ldCBpbiB5b3VyIGhvbWUgYXJlIHNvIG5pY2UgKGp1c3QgYmVjYXVzZSB5b3UN Cj4+IGhhdmUgeW91ciBvd24gV2lGaSByb3V0ZXIgZG9lc24ndCBtZWFuIHlvdSBoYXZlIHRoZSBj aGFubmVsIHRvDQo+PiB5b3Vyc2VsZikuIEl0J3MgYWxzbyB3aHkgQ0ROcyBhcmUgc28gcG9wdWxh cjogVGhleSBjb21iaW5lIGxvdyBsYXRlbmN5DQo+PiB3aXRoIGxlc3MgY29tcGV0aXRpb24gZm9y IGJhbmR3aWR0aCBhbmQgZmV3ZXIgaG9wcy4NCj4+DQo+PiBTdGFybGluaydzIGNoYWxsZW5nZSBp cyB0aGF0IHRoZWlyIGJhbmR3aWR0aCBwZXIgY2VsbCBpcyBsaW1pdGVkLiBOb3QNCj4+IHF1aXRl IHRvIHRoZSBwb2ludCB3aGVyZSBpdCdzIGEgcHJvYmxlbSBldmVyeXdoZXJlLCBidXQgY2VydGFp bmx5IHRvIHRoZQ0KPj4gcG9pbnQgd2hlcmUgaXQncyBiZWNvbWluZyBhIHByb2JsZW0gaW4gc29t ZSBwbGFjZXMuIElmIHlvdSdyZSBiZWluZw0KPj4gYXNrZWQgdG8gcGF5IGEgY29uZ2VzdGlvbiBz dXJjaGFyZ2Ugd2hlbiB5b3Ugc2lnbiB1cCwgeW91J3JlIGluIG9uZSBvZg0KPj4gdGhvc2UgcGxh Y2VzLiBNb3ZpbmcgdG8gZnFfY29kZWwgYW5kIGJyaW5naW5nIGRvd24gdGhlIGxhdGVuY3kgaGFz IG1hZGUNCj4+IG1vcmUgb2YgdGhhdCBiYW5kd2lkdGggYWNjZXNzaWJsZSwgYnV0IGFnYWluIHRo ZXJlJ3MgYSBsaW1pdCB0byB3aGF0IHlvdQ0KPj4gY2FuIGRvIHRoZXJlIC0gaXQncyBub3QgbGlr ZSByZWR1Y2luZyBsYXRlbmN5IGluY3JlYXNlcyB0b3RhbCBiYW5kd2lkdGguDQo+Pg0KPj4gT24g OS8xMS8yMDI1IDg6NTcgYW0sIEogUGFuIHZpYSBTdGFybGluayB3cm90ZToNCj4+PiBpZiB0aGVy ZSBhcmUgbm8gb2JzdHJ1Y3Rpb25zLCBzdGFybGluayBub3dhZGF5cyBjYW4gYWNoaWV2ZSAxJSBw YWNrZXQNCj4+PiBsb3NzLCBvZnRlbiAwLjElLCBtb3N0bHkgZHVlIHRvIHNhdGVsbGl0ZSBoYW5k b3Zlciwgc28gZm9yIHRoZSBuZXRmbGl4DQo+Pj4gb3BlbiBjb25uZWN0IGFwcGxpYW5jZXMgaW5z aWRlIHN0YXJsaW5rIHBvcCwgdGhleSBjYW4gZG8gc29tZQ0KPj4+IHN0YXJsaW5rLXNwZWNpZmlj IG9wdGltaXphdGlvbiB0byBtYXNrIGF3YXkgdGhlIGhhbmRvdmVyIGZvciBzdGFybGluaw0KPj4+ IHVzZXJzLCBlLmcuLGh0dHBzOi8vb2FjLnV2aWMuY2Evc3Rhcmxpbmsvd3AtY29udGVudC91cGxv YWRzL3NpdGVzLzg4NzYvMjAyNC8wOS9sZW9uZXQyNC12aWN0b3IucGRmDQo+Pj4gLS0NCj4+PiBK IFBhbiwgVVZpYyBDU2MsIEVDUzU2NiwgMjUwLTQ3Mi01Nzk2IChOTyBWTSksUGFuQFVWaWMuQ0Es IFdlYi5VVmljLkNBL35wYW4NCj4+Pg0KPj4+IE9uIFNhdCwgTm92IDgsIDIwMjUgYXQgMTE6MTLi gK9BTSBEYXZpZCBGZXJuw6FuZGV6PGRhdmlkZmR6cEBnbWFpbC5jb20+IHdyb3RlOg0KPj4+PiAi bWFraW5nIHRoZSBsaW5rIGxheWVyIG1vcmUgcmVsaWFibGUgaXMgInRoZSB3YXkiIiwgaW5kZWVk LiBJbiB0aGUgd2lyZWxlc3MgZGF0YSBsaW5rIGRlc2lnbiBwcm9qZWN0cyBJIGhhdmUgcGFydGlj aXBhdGVkLCBpdCBoYXMgYWx3YXlzIGJlZW4gdGhlIHJlcXVpcmVtZW50IHRvIGhhdmUgcGFja2V0 IGxvc3MgcmF0ZSAoUExSKSBhdCBJUCBsYXllciBkdWUgdG8gcGh5c2ljYWwgbGF5ZXIgZXJyb3Jz IHVuaWZvcm1seSBkaXN0cmlidXRlZCBhbmQgbm90IGhpZ2hlciB0aGFuIDAuMSUsIGZvciBUQ1As IHdoaWxlIGZvciB3aXJlbGVzcyBsaW5rcyBjYXJyeWluZyBvbmx5IFZvSVAsIHVzaW5nIFJUUCBh bmQgRy43MjkgY29kZWMsIHVwIHRvIDElIFBMUiBpcyBhY2NlcHRhYmxlLg0KPj4+Pg0KPj4+PiBU aGVuLCBJIGhhdmUgc2VlbiB0aGF0IFN0YXJsaW5rIHJvdXRpbmVseSBleGNlZWRzIDElIFBMUiwg cmVhY2hpbmcgdXAgdG8gNiUgb3IgbW9yZSBldmVuLCBidXQgVENQIHdvcmtzIGFueXdheSwgc29t ZWhvdy4gSXQgbWF5IGJlIHRoYXQgQ1VCSUMgYW5kIEJCUiBhcmUgbW9yZSByb2J1c3QgdG8gaGln aGVyIHBhY2tldCBsb3NzIHJhdGVzIGR1ZSB0byBlcnJvciB0aGFuIFJlbm8uDQo+Pj4+DQo+Pj4+ ICJub3cgcGh5c2ljYWwsIGxpbmsgYW5kIG5ldHdvcmsgbGF5ZXIgaGF2ZSBtb3JlIGluZm8gZm9y DQo+Pj4+IHRoZSB0cmFuc3BvcnQgbGF5ZXIgdG8gbWFrZSB0aGUgcmlnaHQgZGVjaXNpb24iLCBi dXQgZG8gdGhleT8gSSBtZWFuLCBob3cgaXMgdGhlIHRyYW5zcG9ydCBsYXllciBnZXR0aW5nIGlu Zm8gbm93YWRheXMgYWJvdXQgdGhlIHBhdGggY2hhcmFjdGVyaXN0aWNzIGluIHRlcm1zIG9mIGJh bmR3aWR0aCwgbGF0ZW5jeSBhbmQgcGFja2V0IGxvc3NlcyBmcm9tIHRoZSBsYXllcnMgYmVsb3cg b3IgaW5mbyBsaWtlIHRoZSBvbmUgeW91IG1lbnRpb25lZCBhYm91dCBTdGFybGluayBoYW5kb3Zl cnM/IEkgc3RpbGwgaGF2ZSBub3Qgc2VlbiB0aGlzIGhhcHBlbmluZywgaGF2ZSB5b3U/DQo+Pj4+ DQo+Pj4+IFJlZ2FyZHMsDQo+Pj4+DQo+Pj4+IERhdmlkDQo+Pj4+DQo+Pj4+IE9uIFNhdCwgOCBO b3YgMjAyNSwgMjI6MzAgSiBQYW4sPFBhbkB1dmljLmNhPiB3cm90ZToNCj4+Pj4+IHllcywgZW5k LXRvLWVuZCBjb25nZXN0aW9uIGNvbnRyb2wgd2FzIGFuIGFkZC1vbiB0byB0Y3AgZmxvdyBhbmQg ZXJyb3INCj4+Pj4+IGNvbnRyb2wsIGFuZCBhdCB0aGF0IHRpbWUsIHBhY2tldCBsb3NzIHdhcyB0 aGUgb25seSByZWxpYWJsZQ0KPj4+Pj4gY29uZ2VzdGlvbiBzaWduYWwgd2l0aG91dCByb3V0ZXIg Y29sbGFib3JhdGlvbiwgYW5kIHRoZSAgbGVnYWN5IHN0YXlzLg0KPj4+Pj4gZnJvbSB0aGUgZXhw ZXJpZW5jZSBvZiB0dW5pbmcgdGNwIG9uIGNlbGx1bGFyIG5ldHdvcmtzLCBtYWtpbmcgdGhlDQo+ Pj4+PiBsaW5rIGxheWVyIG1vcmUgcmVsaWFibGUgaXMgInRoZSB3YXkiLCBhdCB0aGUgY29zdCBv ZiBtb3JlIGJ1ZmZlcnMgYW5kDQo+Pj4+PiBsYXRlbmN5LiBidXQgbm93IHBoeXNpY2FsLCBsaW5r IGFuZCBuZXR3b3JrIGxheWVyIGhhdmUgbW9yZSBpbmZvIGZvcg0KPj4+Pj4gdGhlIHRyYW5zcG9y dCBsYXllciB0byBtYWtlIHRoZSByaWdodCBkZWNpc2lvbiwgZS5nLiwgc3RhcmxpbmsNCj4+Pj4+ IGhhbmRvdmVycyBhdCAxMnRoLCAyN3RoLCA0Mm5kIGFuZCA1N3RoIHNlY29uZCBvZiBldmVyeSBt aW51dGUgd2l0aA0KPj4+Pj4gZGVsYXkgc3Bpa2UgYW5kIGxvc3Nlcw0KPj4+Pj4gLS0NCj4+Pj4+ IEogUGFuLCBVVmljIENTYywgRUNTNTY2LCAyNTAtNDcyLTU3OTYgKE5PIFZNKSxQYW5AVVZpYy5D QSwgV2ViLlVWaWMuQ0EvfnBhbg0KPj4+Pj4NCj4+Pj4+IE9uIEZyaSwgTm92IDcsIDIwMjUgYXQg Mjo1MeKAr1BNIERhdmlkIEZlcm7DoW5kZXogdmlhIFN0YXJsaW5rDQo+Pj4+PiA8c3RhcmxpbmtA bGlzdHMuYnVmZmVyYmxvYXQubmV0PiB3cm90ZToNCj4+Pj4+PiBUaGFua3MgZm9yIHNoYXJpbmcg dGhpcyBGcmFuay4NCj4+Pj4+Pg0KPj4+Pj4+IEluIHNsaWRlIDMsIEkgdGhpbmsgdGhhdCBhbm90 aGVyIGVmZmVjdCBub3QgdG8gYmUgbWlzc2VkIGlzIHBhY2tldCBsb3NzZXMNCj4+Pj4+PiBkdWUg dG8gZXJyb3JzLCB3aGljaCBjb3VsZCBiZSBhbmFsb2dvdXMgdG8gcGlwZSBsZWFrcy4gU29tZXRp bWVzLCBpdA0KPj4+Pj4+IGhhcHBlbnMgdGhhdCB0aGV5IGFyZSBub3QgbmVnbGlnaWJsZSwgaW4g c29tZSBjYXNlcyB3aXRoIHdpcmVsZXNzIGxpbmtzLA0KPj4+Pj4+IG1haW5seSwgYnV0IGl0IGNv dWxkIGhhcHBlbiB0b28gaW4gRFNMLiBJIHJlbWVtYmVyIHRoYXQgSSBoYWQgYSBEU0wgbGluZSBp bg0KPj4+Pj4+IHdoaWNoIHRoZSByb3V0ZXIgaGFkIHRoZSBvcHRpb24gdG8gZGlzYWJsZSBpbnRl cmxlYXZpbmcsIHdhcm5pbmcgdGhhdCB5b3UNCj4+Pj4+PiBjb3VsZCBnZXQgbW9yZSBlcnJvcnMs IGJhZCBmb3Igd2F0Y2hpbmcgdmlkZW8sIHRoZXkgd2VyZSBzYXlpbmcsIGJ1dA0KPj4+Pj4+IHJl ZHVjZWQgbGF0ZW5jeSAoZ29vZCBmb3IgdmlkZW9nYW1lcykuIFdoZW4gcGFja2V0IGxvc3NlcyBk dWUgdG8gZXJyb3JzIGFyZQ0KPj4+Pj4+IG1pc2ludGVycHJldGVkIGFzIGNvbmdlc3Rpb24gYnkg dGhlIHRyYW5zcG9ydCBwcm90b2NvbHMsIHRoZSByZXN1bHQgaXMgYWxzbw0KPj4+Pj4+IGEgYmFu ZCBxdWFsaXR5IG9mIGV4cGVyaWVuY2UuDQo+Pj4+Pj4NCj4+Pj4+PiBSZWdhcmRzLA0KPj4+Pj4+ DQo+Pj4+Pj4gRGF2aWQNCj4+Pj4+Pg0KPj4+Pj4+IERhdGU6IEZyaSwgNyBOb3YgMjAyNSAxMTo1 Mzo0NCArMDEwMA0KPj4+Pj4+PiBGcm9tOiBGcmFudGlzZWsgQm9yc2lrPGZyYW50aXNlay5ib3Jz aWtAZ21haWwuY29tPg0KPj4+Pj4+PiBTdWJqZWN0OiBbU3RhcmxpbmtdIFJlOiBbTGlicmVRb1Nd IFJlOiBLZXlub3RlOiBRb0UvUW9TIC0gQmFuZHdpZHRoIElzDQo+Pj4+Pj4+ICAgICAgICAgICBB IExpZSEgIGF0IFdJU1BBUEFMT09aQSAyMDI1IChPY3RvYmVyIDE2KQ0KPj4+Pj4+PiBUbzogQ2Fr ZSBMaXN0PGNha2VAbGlzdHMuYnVmZmVyYmxvYXQubmV0PiwgYmxvYXQNCj4+Pj4+Pj4gICAgICAg ICAgIDxibG9hdEBsaXN0cy5idWZmZXJibG9hdC5uZXQ+LGNvZGVsQGxpc3RzLmJ1ZmZlcmJsb2F0 Lm5ldCwNCj4+Pj4+Pj4gICAgICAgICAgIEplcmVteSBBdXN0aW4gdmlhIFJwbTxycG1AbGlzdHMu YnVmZmVyYmxvYXQubmV0PiwgbGlicmVxb3MNCj4+Pj4+Pj4gICAgICAgICAgIDxsaWJyZXFvc0Bs aXN0cy5idWZmZXJibG9hdC5uZXQ+LCAgIERhdmUgVGFodCB2aWEgU3RhcmxpbmsNCj4+Pj4+Pj4g ICAgICAgICAgIDxzdGFybGlua0BsaXN0cy5idWZmZXJibG9hdC5uZXQ+LGw0cy1kaXNjdXNzQGll dGYub3JnDQo+Pj4+Pj4+IE1lc3NhZ2UtSUQ6DQo+Pj4+Pj4+ICAgICAgICAgICA8Q0FKVXRPT2h6 SkF5bURpS3NuUlBobzgwQjhHWjR3emQ4VzdGV2NjUz0NCj4+Pj4+Pj4gdWhpUVBkM0tPZ0BtYWls LmdtYWlsLmNvbT4NCj4+Pj4+Pj4gQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJV VEYtOCINCj4+Pj4+Pj4NCj4+Pj4+Pj4gSGVsbG8gdG8gYWxsLA0KPj4+Pj4+Pg0KPj4+Pj4+PiBS ZWNvcmRpbmcgb2Ygb3VyIFFvRS9Rb1MgcGFuZWwgZGlzY3Vzc2lvbiBpcyBvdXQhIEl0IHdhcyBy ZWFsbHkgZ3JlYXQgYW5kDQo+Pj4+Pj4+IGJlbGlldmUgeW91IHdpbGwgbGlrZSBpdDoNCj4+Pj4+ Pj4NCj4+Pj4+Pj4gaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dj1UMVZFVDBWWVE2Yw0K Pj4+Pj4+Pg0KPj4+Pj4+PiBXZSBoYXZlIHRvdWNoIGJhbmR3aWR0aCwgTDRTLCBTdGFybGluayBh bmQgbW9yZS4NCj4+Pj4+Pj4NCj4+Pj4+Pj4gSGVyZSBhcmUgdGhlIHNsaWRlcyB3aXRoIGFkZGl0 aW9uYWwgcmVhZGluZzoNCj4+Pj4+Pj4NCj4+Pj4+Pj4gaHR0cHM6Ly9kb2NzLmdvb2dsZS5jb20v cHJlc2VudGF0aW9uL2QvMU1MMEkzQXYzREN0UURpUDhEanJfWUdIMnI0LVVEWlAyNVZFay14eUpj WkUvZWRpdD9zbGlkZT1pZC5wI3NsaWRlPWlkLnANCj4+Pj4+Pj4NCj4+Pj4+Pj4gV2UgaG9wZSB0 byBjb250aW51ZSB0aGlzIGNvbnZlcnNhdGlvbiBpbnRvIG1vcmUgcHJhY3RpY2FsLCBkZW1vLWxp a2UNCj4+Pj4+Pj4gZW52aXJvbm1lbnQgb2Ygc29ydCwgdGhhdCB3ZSBjYW4gc2VlIGF0IElFVEYg SGFja2F0aG9uIGFuZCB1c2VkIHRvIHNlZSBpbg0KPj4+Pj4+PiB0aGUgZWFybHkgV0lTUEEgZXZl bnQgZGF5cywgd2l0aCBBbmltYWwgRmFybS4NCj4+Pj4+Pj4NCj4+Pj4+Pj4NCj4+Pj4+Pj4gQWxs IHRoZSBiZXN0LA0KPj4+Pj4+Pg0KPj4+Pj4+PiBGcmFuaw0KPj4+Pj4+Pg0KPj4+Pj4+PiBGcmFu dGlzZWsgKEZyYW5rKSBCb3JzaWsNCj4+Pj4+Pj4NCj4+Pj4+Pj4NCj4+Pj4+Pj4gKkluIGxvdmlu ZyBtZW1vcnkgb2YgRGF2ZSBUw6RodDogKjE5NjUtMjAyNQ0KPj4+Pj4+Pg0KPj4+Pj4+PiBodHRw czovL2xpYnJlcW9zLmlvLzIwMjUvMDQvMDEvaW4tbG92aW5nLW1lbW9yeS1vZi1kYXZlLw0KPj4+ Pj4+Pg0KPj4+Pj4+Pg0KPj4+Pj4+PiBodHRwczovL3d3dy5saW5rZWRpbi5jb20vaW4vZnJhbnRp c2VrYm9yc2lrDQo+Pj4+Pj4+DQo+Pj4+Pj4+IFNpZ25hbCwgVGVsZWdyYW0sIFdoYXRzQXBwOiAr NDIxOTE5NDE2NzE0DQo+Pj4+Pj4+DQo+Pj4+Pj4+IGlNZXNzYWdlLCBtb2JpbGU6ICs0MjA3NzUy MzA4ODUNCj4+Pj4+Pj4NCj4+Pj4+Pj4gU2t5cGU6IGNhc2lvYTUzMDJjYQ0KPj4+Pj4+Pg0KPj4+ Pj4+PiBmcmFudGlzZWsuYm9yc2lrQGdtYWlsLmNvbQ0KPj4+Pj4+Pg0KPj4+Pj4+Pg0KPj4+Pj4+ PiBPbiBXZWQsIE9jdCAxLCAyMDI1IGF0IDExOjMy4oCvUE0gRnJhbnRpc2VrIEJvcnNpayA8DQo+ Pj4+Pj4+IGZyYW50aXNlay5ib3JzaWtAZ21haWwuY29tPg0KPj4+Pj4+PiB3cm90ZToNCj4+Pj4+ Pj4NCj4+Pj4+Pj4+IExldCdzIHNheSB0aGF0IEkgbG92ZSBpdCwgY2hhbm5lbGluZyBteSBpbm5l ciBEYXZlIFRhaHQuIEJ1dCB0aGVyZSB3ZXJlIGENCj4+Pj4+Pj4+IGNvdXBsZSBvZiB2b2ljZXMg YXNraW5nIGlmIEkgd29uJ3QgY29uc2lkZXIgdG8gY2hhbmdlIGl0IGEgYml0LCB0byBiZQ0KPj4+ Pj4+PiAibGVzcw0KPj4+Pj4+Pj4gaG9zdGlsZSIgdG8gb3VyICJiYW5kd2lkdGggaXMga2luZyEi IGZyaWVuZHMuLi5hbmQgSSB3YXMgdHJ5aW5nLCBidXQgdGhpcw0KPj4+Pj4+Pj4gd2FzIHJlYWxs eSBzdGlja3kgYW5kIEknbSBoYXBweSB0aGF0IGl0IHN0YXllZCB0aGlzIHdheS4NCj4+Pj4+Pj4+ DQo+Pj4+Pj4+Pg0KPj4+Pj4+Pj4gQWxsIHRoZSBiZXN0LA0KPj4+Pj4+Pj4NCj4+Pj4+Pj4+IEZy YW5rDQo+Pj4+Pj4+Pg0KPj4+Pj4+Pj4gRnJhbnRpc2VrIChGcmFuaykgQm9yc2lrDQo+Pj4+Pj4+ Pg0KPj4+Pj4+Pj4NCj4+Pj4+Pj4+ICpJbiBsb3ZpbmcgbWVtb3J5IG9mIERhdmUgVMOkaHQ6ICox OTY1LTIwMjUNCj4+Pj4+Pj4+DQo+Pj4+Pj4+PiBodHRwczovL2xpYnJlcW9zLmlvLzIwMjUvMDQv MDEvaW4tbG92aW5nLW1lbW9yeS1vZi1kYXZlLw0KPj4+Pj4+Pj4NCj4+Pj4+Pj4+DQo+Pj4+Pj4+ PiBodHRwczovL3d3dy5saW5rZWRpbi5jb20vaW4vZnJhbnRpc2VrYm9yc2lrDQo+Pj4+Pj4+Pg0K Pj4+Pj4+Pj4gU2lnbmFsLCBUZWxlZ3JhbSwgV2hhdHNBcHA6ICs0MjE5MTk0MTY3MTQNCj4+Pj4+ Pj4+DQo+Pj4+Pj4+PiBpTWVzc2FnZSwgbW9iaWxlOiArNDIwNzc1MjMwODg1DQo+Pj4+Pj4+Pg0K Pj4+Pj4+Pj4gU2t5cGU6IGNhc2lvYTUzMDJjYQ0KPj4+Pj4+Pj4NCj4+Pj4+Pj4+IGZyYW50aXNl ay5ib3JzaWtAZ21haWwuY29tDQo+Pj4+Pj4+Pg0KPj4+Pj4+Pj4NCj4+Pj4+Pj4+IE9uIFdlZCwg T2N0IDEsIDIwMjUgYXQgOToyNeKAr1BNIGRhbjxkYW5kZW5zb25AZ21haWwuY29tPiB3cm90ZToN Cj4+Pj4+Pj4+DQo+Pj4+Pj4+Pj4gSSBhY3R1YWxseSByZWFsbHkgbGlrZSB0aGUgdGl0bGUgOykN Cj4+Pj4+Pj4+Pg0KPj4+Pj4+Pj4+IEl0J3MgdGhhdCBtb3N0IG9mIHRoZSB0aW1lIHBlb3BsZSBh cmUgdG9sZCB0aGV5IG5lZWQgbW9yZSBiYW5kd2lkdGggdG8NCj4+Pj4+Pj4+PiBzb2x2ZSBhIHBy b2JsZW0sIHdoZW4gdGhleSByZWFsbHkgbmVlZCBsb3dlciBsYXRlbmN5IGFuZCBqaXR0ZXIuICBT byB0aGUNCj4+Pj4+Pj4+PiB2YXN0IG1ham9yaXR5IG9mIHRoZSB0aW1lICdtb3JlIGJhbmR3aWR0 aCcgYXMgYSBzb2x1dGlvbiByZWFsbHkgaXMgYQ0KPj4+Pj4+PiBsaWUuDQo+Pj4+Pj4+Pj4gT24g VHVlLCBTZXAgMzAsIDIwMjUgYXQgMjo0N+KAr1BNIEZyYW50aXNlayBCb3JzaWsgdmlhIExpYnJl UW9TIDwNCj4+Pj4+Pj4+PiBsaWJyZXFvc0BsaXN0cy5idWZmZXJibG9hdC5uZXQ+IHdyb3RlOg0K Pj4+Pj4+Pj4+DQo+Pj4+Pj4+Pj4+IFRoYW5rcywgSmltLiBXZWxsLCB0cnVlIHRoYXQgLSBidXQg SSB3YW50ZWQgdG8gZG8gaXQgZWl0aGVyIHdheSwNCj4+Pj4+Pj4gYmVjYXVzZQ0KPj4+Pj4+Pj4+ PiBvZg0KPj4+Pj4+Pj4+PiBvdXIgZGVhciBEYXZlIGFuZCAtIGFzIGEgY29udmVyc2F0aW9uIHN0 YXJ0ZXIuDQo+Pj4+Pj4+Pj4+IEFzIEBKYXNvbiBMaXZpbmdvb2Q8amFzb25fbGl2aW5nb29kQGNv bWNhc3QuY29tPiBzYWlkIC0gIkJhbmR3aWR0aCBpcw0KPj4+Pj4+Pj4+PiBkZWFkLiBMb25nIGxp dmUgbGF0ZW5jeS4iDQo+Pj4+Pj4+Pj4+DQo+Pj4+Pj4+Pj4+DQo+Pj4+Pj4+IGh0dHBzOi8vcHVs c2UuaW50ZXJuZXRzb2NpZXR5Lm9yZy9ibG9nL2JhbmR3aWR0aC1pcy1kZWFkLWxvbmctbGl2ZS1s YXRlbmN5DQo+Pj4+Pj4+Pj4+IEkgd2lsbCBkbyBteSBiZXN0IHRvIGdldCB0aGUgYXVkaW8vdmlk ZW8gcmlnaHQgYW5kIHRvIHNoYXJlIGl0IHdpdGggeW91DQo+Pj4+Pj4+Pj4+IGFsbC4NCj4+Pj4+ Pj4+Pj4NCj4+Pj4+Pj4+Pj4gUFM6IFNlbmRpbmcgeW91IHNlcGFyYXRlIGVtYWlsLg0KPj4+Pj4+ Pj4+Pg0KPj4+Pj4+Pj4+PiBBbGwgdGhlIGJlc3QsDQo+Pj4+Pj4+Pj4+DQo+Pj4+Pj4+Pj4+IEZy YW5rDQo+Pj4+Pj4+Pj4+DQo+Pj4+Pj4+Pj4+IEZyYW50aXNlayAoRnJhbmspIEJvcnNpaw0KPj4+ Pj4+Pj4+Pg0KPj4+Pj4+Pj4+Pg0KPj4+Pj4+Pj4+PiAqSW4gbG92aW5nIG1lbW9yeSBvZiBEYXZl IFTDpGh0OiAqMTk2NS0yMDI1DQo+Pj4+Pj4+Pj4+DQo+Pj4+Pj4+Pj4+IGh0dHBzOi8vbGlicmVx b3MuaW8vMjAyNS8wNC8wMS9pbi1sb3ZpbmctbWVtb3J5LW9mLWRhdmUvDQo+Pj4+Pj4+Pj4+DQo+ Pj4+Pj4+Pj4+DQo+Pj4+Pj4+Pj4+IGh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9pbi9mcmFudGlz ZWtib3JzaWsNCj4+Pj4+Pj4+Pj4NCj4+Pj4+Pj4+Pj4gU2lnbmFsLCBUZWxlZ3JhbSwgV2hhdHNB cHA6ICs0MjE5MTk0MTY3MTQNCj4+Pj4+Pj4+Pj4NCj4+Pj4+Pj4+Pj4gaU1lc3NhZ2UsIG1vYmls ZTogKzQyMDc3NTIzMDg4NQ0KPj4+Pj4+Pj4+Pg0KPj4+Pj4+Pj4+PiBTa3lwZTogY2FzaW9hNTMw MmNhDQo+Pj4+Pj4+Pj4+DQo+Pj4+Pj4+Pj4+IGZyYW50aXNlay5ib3JzaWtAZ21haWwuY29tDQo+ Pj4+Pj4+Pj4+DQo+Pj4+Pj4+Pj4+DQo+Pj4+Pj4+Pj4+IE9uIFR1ZSwgU2VwIDMwLCAyMDI1IGF0 IDEwOjI14oCvUE0gSmFtZXMgRm9yc3RlciA8DQo+Pj4+Pj4+IGppbUBjb25uZWN0aXZpdHljYXAu Y29tPg0KPj4+Pj4+Pj4+PiB3cm90ZToNCj4+Pj4+Pj4+Pj4NCj4+Pj4+Pj4+Pj4+IFdvdywgdGhh dOKAmXMgZmFudGFzdGljLCBGcmFudGlzZWshICBHcmVhdCB3b3JrIG1ha2luZyB0aGlzIGhhcHBl bi4NCj4+Pj4+Pj4+Pj4+DQo+Pj4+Pj4+Pj4+PiBUaGVzZSBzb3J0IG9mIHRpdGxlcyBhcmVu4oCZ dCBteSBmYXZvcml0ZS4gSSB0aGluayBJIHVuZGVyc3RhbmQgdGhlDQo+Pj4+Pj4+Pj4+PiBzZW50 aW1lbnQgYnV0IGZpbmQgdGhlIGlzc3VlcyBtb3JlIG51YW5jZWQgdGhhbiB0aGF0LiA6LSkNCj4+ Pj4+Pj4+Pj4+DQo+Pj4+Pj4+Pj4+PiBJZiB5b3UgY2FuIGdldCBjbGVhciBhdWRpbywgbm90IG11 Y2ggcXVhbGl0eSBpcyBuZWVkZWQgZm9yIHBhbmVscyBhbmQNCj4+Pj4+Pj4+Pj4+IHRhbGtpbmcg YmVhZHMuICAgQmVzdCB3b3VsZCBiZSBhIGZlZWQgcmlnaHQgaW50byBhbiBpUGhvbmUvYW5kcm9p ZC4NCj4+Pj4+Pj4+Pj4+DQo+Pj4+Pj4+Pj4+PiBKaW0NCj4+Pj4+Pj4+Pj4gX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCj4+Pj4+Pj4+Pj4gTGlicmVRb1Mg bWFpbGluZyBsaXN0IC0tbGlicmVxb3NAbGlzdHMuYnVmZmVyYmxvYXQubmV0DQo+Pj4+Pj4+Pj4+ IFRvIHVuc3Vic2NyaWJlIHNlbmQgYW4gZW1haWwgdG9saWJyZXFvcy1sZWF2ZUBsaXN0cy5idWZm ZXJibG9hdC5uZXQNCj4+Pj4+Pj4+Pj4NCj4+Pj4+PiBfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXw0KPj4+Pj4+IFN0YXJsaW5rIG1haWxpbmcgbGlzdCAtLXN0 YXJsaW5rQGxpc3RzLmJ1ZmZlcmJsb2F0Lm5ldA0KPj4+Pj4+IFRvIHVuc3Vic2NyaWJlIHNlbmQg YW4gZW1haWwgdG9zdGFybGluay1sZWF2ZUBsaXN0cy5idWZmZXJibG9hdC5uZXQNCj4+PiBfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0KPj4+IFN0YXJsaW5r IG1haWxpbmcgbGlzdCAtLXN0YXJsaW5rQGxpc3RzLmJ1ZmZlcmJsb2F0Lm5ldA0KPj4+IFRvIHVu c3Vic2NyaWJlIHNlbmQgYW4gZW1haWwgdG9zdGFybGluay1sZWF2ZUBsaXN0cy5idWZmZXJibG9h dC5uZXQNCj4+IC0tDQo+PiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqDQo+PiBEci4gVWxyaWNoIFNwZWlkZWwNCj4+DQo+PiBT Y2hvb2wgb2YgQ29tcHV0ZXIgU2NpZW5jZQ0KPj4NCj4+IFJvb20gMzAzUy41OTQgKENpdHkgQ2Ft cHVzKQ0KPj4NCj4+IFRoZSBVbml2ZXJzaXR5IG9mIEF1Y2tsYW5kDQo+PiB1LnNwZWlkZWxAYXVj a2xhbmQuYWMubnoNCj4+IGh0dHA6Ly93d3cuY3MuYXVja2xhbmQuYWMubnovfnVscmljaC8NCj4+ ICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioNCj4+DQo+Pg0KPj4NCj4+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fDQo+PiBTdGFybGluayBtYWlsaW5nIGxpc3QgLS1zdGFybGlua0BsaXN0 cy5idWZmZXJibG9hdC5uZXQNCj4+IFRvIHVuc3Vic2NyaWJlIHNlbmQgYW4gZW1haWwgdG9zdGFy bGluay1sZWF2ZUBsaXN0cy5idWZmZXJibG9hdC5uZXQNCg0KLS0gDQoqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQpEci4gVWxy aWNoIFNwZWlkZWwNCg0KU2Nob29sIG9mIENvbXB1dGVyIFNjaWVuY2UNCg0KUm9vbSAzMDNTLjU5 NCAoQ2l0eSBDYW1wdXMpDQoNClRoZSBVbml2ZXJzaXR5IG9mIEF1Y2tsYW5kDQp1LnNwZWlkZWxA YXVja2xhbmQuYWMubnogDQpodHRwOi8vd3d3LmNzLmF1Y2tsYW5kLmFjLm56L351bHJpY2gvDQoq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqDQoNCg0K