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-australiasoutheastazlp170100000.outbound.protection.outlook.com [IPv6:2a01:111:f403:c40e::]) by mail.toke.dk (Postfix) with ESMTPS id 29F31661853 for ; Wed, 10 Sep 2025 12:24:58 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=my3xaTmAB7KSeAp7gXaHk2qVaZtn9+Kq/H/1Lo9OLMruAWYBQLNfQl+LrHq/PQmtjFsVd8IhYfdtvvFyZfVFdylF8BXUchSWUF5R5kuB3cU8ObtVcLEg8+idPlqdm+TWwdRH7Dk883k/CoKduyVGmp6+sfLRyY1x4sA+nKkiTtulQF+Bp12ODmP71yz7ZAwHOoiqOqG3gkznJc5+lPzDT3h0hGGkPi4Q/MZM5E7tdWtudLiFMXFOEze3DsbjDoNsLXZBCTpqBkjZQ3SIIvKzgt+juSZGqFHn3HLJjTSTbEufxlN5WbjnzM8kSdMp6qaoGv5uwB9bSegcUuAHp5uVEg== 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=roh+b2EQyBzN5lYXwRfGwNp1cAfdah1qK4EHiaenKdY=; b=mwdIsCLo73LaF9qtiXhpxAOREG+RavtTA6K+/BwA2LiOvOlV5H7au/rYdUhDxZ8t7kkLdYQISFlGeHyO9luIDTjbLv1hhdKCLC5ghjdOmWL8/WRYO2CC9nGW5+m0GYIk9H0ujiKI8Z12c55lHV69dq2vKXgPbC/lIeo6I+PxUrfseA9wveEtY/B5Kc7Q5xI2kLFAALzkv9swIf7EnpwO9Jspx4nAqkUPFM48GgjklJ91p+gTVWt2ru19ahIU9MD0p/pfz8XQQM5SAzPdVXcgbW4u9r0ebWaIrThZ6SE+JdAzciST/SBTDxTd9UGYfroxuc2floPvzd1rPRbkzh/WOQ== 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=roh+b2EQyBzN5lYXwRfGwNp1cAfdah1qK4EHiaenKdY=; b=Se9j9rzXbI1qR30G67KiKhQPiwYbbpfg5muQdpJfOSBD+IFx3Zjmwl4qHehq4p4xtfhKYyhL+NSxZVVlBTfRO/LEZlkP98u6XUlXMxwYwJ8lI+Sp+n5001fyWicr6R7Mb0CdtZhlkenyaK5xL4Wg0mSrw3yJ3hKIs3EFoQN3qPg= Received: from SY8P300MB0544.AUSP300.PROD.OUTLOOK.COM (2603:10c6:10:297::19) by SY2PPF2060A1DDF.AUSP300.PROD.OUTLOOK.COM (2603:10c6:18::38a) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9094.22; Wed, 10 Sep 2025 10:24:50 +0000 Received: from SY8P300MB0544.AUSP300.PROD.OUTLOOK.COM ([fe80::2100:96f2:f11b:4fc2]) by SY8P300MB0544.AUSP300.PROD.OUTLOOK.COM ([fe80::2100:96f2:f11b:4fc2%3]) with mapi id 15.20.9094.021; Wed, 10 Sep 2025 10:24:50 +0000 Message-ID: <4e312d2a-be9a-43f5-8309-381d27708035@auckland.ac.nz> Date: Wed, 10 Sep 2025 22:24:48 +1200 User-Agent: Mozilla Thunderbird To: David Lang Cc: starlink@lists.bufferbloat.net References: <175739769285.1561.9299932820839760282@gauss> <048be086-22b8-4c20-9be8-e4f86e620031@olegkutkov.me> Content-Language: en-US From: Ulrich Speidel In-Reply-To: Content-Type: text/plain; charset="utf-8"; format="flowed" Content-Transfer-Encoding: base64 X-ClientProxiedBy: AK2P299CA0001.NZLP299.PROD.OUTLOOK.COM (2603:10c6:108:18::6) To SY8P300MB0544.AUSP300.PROD.OUTLOOK.COM (2603:10c6:10:297::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SY8P300MB0544:EE_|SY2PPF2060A1DDF:EE_ X-MS-Office365-Filtering-Correlation-Id: 7d4502fa-3e52-4bca-0d57-08ddf0544600 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|4022899009|366016|376014|1800799024; X-Microsoft-Antispam-Message-Info: =?utf-8?B?Um5rK09kUnY4cHREUW84VCtCUEhEUDhVdndrb2lheUVTc3BVVEZXZytWMEQ3?= =?utf-8?B?d0ppQ1h1VFVaSkZqL2l6aUp4NURPdjJXckNQcUhHLytnRWRuOVFYa3RvSDR6?= =?utf-8?B?SW0vU0lUcUF3UmgxdTdIN0Z4alk5N0VlajdPRHY1amw1em9VK25FRHZvMzln?= =?utf-8?B?cGxsR0lIdzNLbDN1T1hJRG9CRmlEa2NJSWJKOVBQY2RqZjZMRnJRVit2bTJ0?= =?utf-8?B?aVB1a29sS21rM2hBN2txeWk5NFBkaW9NODRtdTF0UmVIUFU4czg3c2NMcUlV?= =?utf-8?B?Y21ZMFVKc0o3Y2ZoOUhIYkh2TGNyb0FJTDhOcjhYTHJ0V21MS2g1VXM4OTM0?= =?utf-8?B?aytHZUxnUzlVc1dMWDJsYnAyVnRJSDNjZ2xuR2RFZzF3Y2x5NU02TFovQUdO?= =?utf-8?B?bGZEWkVPZEdFOEU2MHZjMGYxL1VkZ0EvVHlVNktMM0w4c002eGZnOVQ2Y3BO?= =?utf-8?B?WlFnYXJEWWlaazIvOFNSamZSWGhxcVFYK1MzK2psOUVPYnZtblpMQnRvU09j?= =?utf-8?B?SU40Wlk1RDVTNGJqN1N4Zmd3SVgraXpwbEF3dFhFUjNrSzdlK056MXRrNUdB?= =?utf-8?B?czh2UFI1MjR6U0ZKVklIZDhZejB6K1p6alBidHB0SHhhV3JGMVg2cG1pNU1B?= =?utf-8?B?U1hxUmMxd0YyaFJrYjcwN1l3VWlteGpiNWxPcC81OW95a28xY2pSZTlRanhz?= =?utf-8?B?Y3pkRXRNQWk2TkxNcVhjMUZ5Vml4ZzdXeDZjUzdLMzljQXBHMHZIUzlzWmpU?= =?utf-8?B?UDFoUDNOM0V3WENoKzZ2bnNucGluN0FVWkhnKytQTm9OVUkrUjg2MWpveXkx?= =?utf-8?B?UGU4UGVqMDBtY0xQaytKUTJmVmNyOWdvbko1TmdnQXgyNUs2cEV0clc3MEVP?= =?utf-8?B?VnJIMG92V3JDK1RJb0diWHNCNEs5a1ErZVZTdHQ0b1F0Qmx3RzVoMFg0VXNP?= =?utf-8?B?bnB6c2RvekJFQm1NRVpWa05vZXgrNngvRFJxdUh0MXo1cEdjMGxkdzRyT3BO?= =?utf-8?B?eEZlWDlHWXV4ZDM4T0Y0elVUMXFUbnBra3BMTzlGRkxGc0psWHBpLytxbEg4?= =?utf-8?B?dGQ2VGMwNW9PcGk1WjQvcG1KVk9wUUk4OGtVMVY1OUNHS2FpOGxkUTRFNjFJ?= =?utf-8?B?MTkyK3B1a3JvNWdhbkFSUkJ1a25HRmRpcUJDUzBkV2tWeHg1VG1NZm4rM05T?= =?utf-8?B?c2Q4MVJvT09oS1F5OEx0cGhHYlVqckdmUHphTnhtem5JWEd5aEM0MS9vdXUz?= =?utf-8?B?ZG5QcG04SGNYZjZJVmIxS2hraVhVczVKTzIrSTlXT2x5YTJPKzB5MWR0L21D?= =?utf-8?B?RFQ2VDdyZC9FcjRsdGIvYTZpRkplVWdLSkNtQnc0b3FmV3YyQnRkMWt6VzR1?= =?utf-8?B?dmxWNG84YmdZZWY4TGlDckZ6cU9YVHRKSFhFVG5WVzhxRC85MnVIWDhUaGhO?= =?utf-8?B?L25iNkpEK1JudTd1TUdyV3JuQlpGblByRDlQcUllREZJVlUySk1Qb1hMcmMv?= =?utf-8?B?cWFEWkREWnY3NWlSMjByd0JvLzdvSjRuTTc0NXZBcHdveXJsS3Z1NStRT0xO?= =?utf-8?B?ZWxSRExCTUdKUi9WMVpFSXplN1R3OTNId1I0QXd5MTRhR25zclNoMTFMdnFq?= =?utf-8?B?N1FyL2QwYjBCdk9WSStRSUtRUE1zY3BTQWFtWW13YzFHdGdPUkN4cHR5K0Fy?= =?utf-8?B?OWdHTkYyZnN3YlBGVUMxNDdqVVZ6VnlvZERnU3dzVWpadkpUOUwra1B3czV6?= =?utf-8?B?VFRrOHVrbXZoMm1uR1g5WGdZUmRiZjJDVkw2S1lMTmU2NmVhVzF4TDhHQnFR?= =?utf-8?B?ZHE5bnZYNmdjWEhKNnVhdE5UZG9CMlNJTXRROW56cDl6RnRsUC85MzYwMHhC?= =?utf-8?Q?SYeDmSBKJddPM?= 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)(366016)(376014)(1800799024);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Q0JLZEpFTXRZb2tCSFZhSkt3NWRmQXI3MXM2TVhTU0ZpR01zcUZKQXNyRE1w?= =?utf-8?B?Q0daZkUwejdWTzBCSW1tY3dXd2RZQTZwWnB6dHl3cjlDRFgvSjl1NlhOUjBG?= =?utf-8?B?R3VVSG52SkRUd0ZjdzlhNGZodTlzcnBHZm05OFR1dURwYzR0SkQrem1zbUJJ?= =?utf-8?B?ZEVRWktJVnhiN0FoYW9QRVVzWjl3bnhXOFo1Rm9lQ1R1ejMzTzIybEc2N3Bu?= =?utf-8?B?QkxFQnlOMVVXc1h5ZDJJWlBLWU04dGoxOE81eUlSMEpTVHVDUmRLVVJpWnhL?= =?utf-8?B?bG1zeEptQnYxMk1GVHh2VlU2emNXeTZXOWhYYzFSdkdzS0YydHZKZ0lHWW1G?= =?utf-8?B?R2ZXNzhvcWJqcUhsRldPWDA5NlkydzA4MDJmQTBGSWdRVWx1R2xjZmxwd2JM?= =?utf-8?B?OUVQdU1uMXBDZlJXR0o3ZE4wY1loRXNuTk80Y003WFcvdHh2cnNrWk4xTUVj?= =?utf-8?B?RnJtU0dOblFhV3BzaDZPemtBVmhPenordlU1Z2QxekpmcGthbFRZTjRiUzFs?= =?utf-8?B?WlpOQnByaC9lQW5aYnUwblcxLzJTWlRKNW9rUkVsS3pOUUNaOWgvc2RWQWNG?= =?utf-8?B?WWlMSm1OVUJhTTBrdnNybFNOL05tSktUa2YwSjZ5bWMyRXpVUDlJT0dwb3BW?= =?utf-8?B?a09oMXVnU2JuRWpuL2pFVTAwZldDcUcrNWlRWmIzUDVrdm1GdlhuTHJIL2V1?= =?utf-8?B?UnRUUWdKZGdlR0JaOXk4Wldqbkp2ZDgzeUFQditHbjVWZUtLRXhjb3pwbDFr?= =?utf-8?B?UFhEbUx0enJibXB6Qys3Wkt4bHJaUitvYVRuL09LQnRmd1pVZ3hURzhRZHNn?= =?utf-8?B?T1pOSXlQOE5UelFuNEpZekh4OXo5MG1iRmovakhuQlllK2duL1NmSDJVZmdX?= =?utf-8?B?ZXhJa1VUVThkZlNPb2I4SndSblNvZ0s2a1dLNGlXUzFicGRhNTJiSndUT3Ay?= =?utf-8?B?RmpSYXQzcUNBR0tuckRWbGs4NzZQc0dmRSt1cUNSZjBwWXhpcmhBUnhSZnNG?= =?utf-8?B?OHBxc2dUbWRSMktJTGtLcHhIVGFlSWVBVDlEbGRsY3lkWkNzT3IrVWpwT01G?= =?utf-8?B?ZnpYKzBQcys0MDQzL1NXVTMwbGVKZmFTRHhaM0dGSXE5L3E4WkpXM25aZTgw?= =?utf-8?B?ZHorRXVDbnVJdmFnNDdaVXpnTTkxd1VKN1J4M2tKOUdTRXJNMFZlNXFBa2N5?= =?utf-8?B?eGxWNndVdkNtanJWZkNpdWoyYUdEcHBaSWZHc01XYjFWL0JuWWg5ZndtUDJw?= =?utf-8?B?b2pjYXU2NElsbUtGRDZWZzlxeGNVQmJEMit5cDd2NUR1aFhpVEI4NExSUlRq?= =?utf-8?B?a1A0NFB2K3pSbWIwcmJDY1RGTG1saGkyOXAxWmJINjNHdjFhL3ZWaUtPcHlR?= =?utf-8?B?MGJ4elc4Ni80N2UrdTZDb1ZWaEVwK3dwbDlsUnBFdERiWW1MTFJ4eEFpOVB4?= =?utf-8?B?YTU2ZFM5c3ByTmFTeDEvZVFJeXhuY0F0MnowNXN2UVZVVlBiZlRLQStVSFRX?= =?utf-8?B?RmZXR1dlNkNVWlcwU1Z1K2NwZDFxMDI2UXFLOWRkZXBSYVFJV1RJWmlWV1hj?= =?utf-8?B?Q0FxNndjWXlRRFVPK1VxUnNiSy9NUTlJeUJpUVo1MTBvQlFSYkhYZmwwYmg3?= =?utf-8?B?TnFYZ0YrRVFGZEhiYU5aVlAzeGJ2R254bEFBcDJTNFoyMnhlalgvTjVxdEpk?= =?utf-8?B?cVBFRmlSN21kNUV2Yi9iVVZYeXRTNVlmTWZaOFdBeHk1RG1xWmtDUExBMlN0?= =?utf-8?B?S2E0b3d6bWtESlFKVHJaeFdWWVpjV1QrNjMvVkhBT000cit1NjN6N0d1ZFIw?= =?utf-8?B?NDlQNFREVFQrRVRhZitISm1SdEh4d1hpQjYzb3V5d2F0cVVlaFZIS3psQXd3?= =?utf-8?B?MStoY25uUkRtMUc5eWVTQWhUR1pLWko5Wm91ZjZybDJXaC9UU0lHWWgyS25Z?= =?utf-8?B?L0l4L3grdGFPM2JBMGtHV1VZL2swczR3QWVKNEZVNkZUS0NOVC90V3lzRzMv?= =?utf-8?B?WWIvbFk4VkV1NlkrZTRZMEordjU5cTRmQW1GMG8xQnErajJmUG0zS1BXQmZt?= =?utf-8?B?OFJBM0h2Qysyb2YyMXYvV3pZZEtvOTFuRGpCcmhiMnNOeHlvU0k5YWM1VEhP?= =?utf-8?B?TTQrVDltbjBJdW4vUkpjMHpHNkNxUC9TbW9kRldDUi9TU3NLNFJTSkFsSnpL?= =?utf-8?B?WHc9PQ==?= X-OriginatorOrg: auckland.ac.nz X-MS-Exchange-CrossTenant-Network-Message-Id: 7d4502fa-3e52-4bca-0d57-08ddf0544600 X-MS-Exchange-CrossTenant-AuthSource: SY8P300MB0544.AUSP300.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Sep 2025 10:24:50.1304 (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: QV452d90bquVDExPawo3OSFzge6OEhiIl9tTCMxm4WZbOXriGVvFrUOH5L9ILzbogUQnmnYT2Ol8OZfT3J2e+BczCD5kPsf6fGEYf08pAVw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SY2PPF2060A1DDF Message-ID-Hash: EUPX56IC5YD7SNAH2NLYOCLIBD7XQETZ X-Message-ID-Hash: EUPX56IC5YD7SNAH2NLYOCLIBD7XQETZ 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 X-Mailman-Version: 3.3.10 Precedence: list Subject: [Starlink] Re: Starlink Standby Mode List-Id: "Starlink has bufferbloat. Bad." Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: T24gMTAvMDkvMjAyNSA3OjUzIHBtLCBEYXZpZCBMYW5nIHdyb3RlOg0KPiBhdCB0aGUgc2FtZSB0 aW1lIHRoYXQgdGhleSBpbnRyb2R1Y2VkIHN0YW5kYnkgbW9kZSwgdGhleSBnYXZlIG1lIGEgDQo+ ICdmcmVlIG1vbnRoJyBvZiBzZXJ2aWNlIG9uIGEgZGlzaCB0aGF0IEkgdXNlZCB0byBoYXZlLCBi dXQgcmVwbGFjZWQgDQo+IGJlY2F1c2UgaXQgYnJva2UsIHRyeWluZyB0byBnZXQgbWUgdG8gYWN0 aXZhdGUgaXQgYWdhaW4uDQo+DQo+IHRoYXQncyBhbiBhY3Rpb24gb2YgYSBzZXJ2aWNlIHB1c2hp bmcgZm9yIG1vcmUgdXNhZ2UsIHJhdGhlciB0aGFuIGxlc3MuDQpNYXliZSB0aGV5IGRpZG4ndCB0 aGluayB5b3UnZCBldmVyIHVzZSBpdCBhZ2FpbiwgbWF5YmUgeW91IGxpdmUgaW4gYW4gDQphcmVh IHdpdGggbG93IHVzZXIgZGVuc2l0eS4gSXQncyBub3QgbGlrZSB0aGV5IGRpc2NvdXJhZ2UgbmV3 IG9yIA0KcmV0dXJuaW5nIHVzZXJzIGV2ZXJ5d2hlcmUgLSB0byB0aGUgY29udHJhcnkuIEl0J3Mg b25seSBpbiBwbGFjZXMgd2l0aCANCmhpZ2ggdXNlciBkZW5zaXRpZXMuDQo+DQo+IEkgc2VlIHRo ZSBzdGFuZGJ5IG1vZGUgYXMgZW5jb3VyYWdpbmcgcGVvcGxlIHRvIGhhdmUgYSBkaXNoICdqdXN0 IGluIA0KPiBjYXNlJw0KPg0KPiB5b3UgdGFsayBhYm91dCBjaGFubmVsIGRpdmlzaW9uLCB0aW1l IGRpdmlzaW9uLCBhbmQgY29kZSBkaXZpc2lvbiwgYnV0IA0KPiB5b3UgYXJlIGxlYXZpbmcgb3V0 IGRpcmVjdGlvbiBkaXZpc2lvbi4gdGhlc2UgYXJlIHN0ZWVyYWJsZSBhcnJheXMgKG9uIA0KPiBi b3RoIGVuZHMpIGFuZCB0aGVyZSBpcyBubyByZWFzb24gdGhhdCB0aGV5IGNhbid0IGhhdmUgbW9y ZSB0aGFuIG9uZSANCj4gYmVhbSBjb3ZlcmluZyBhIHBhcnRpY3VsYXIgY2VsbCBvbiB0aGUgc2Ft ZSBmcmVxdWVuY3ksIGlmIHRoZSBiZWFtcyANCj4gYXJlIHN1ZmZpY2llbnRseSBmYXIgYXBhcnQg dGhhdCB0aGUgYW50ZW5uYXMgb24gdGhlIGdyb3VuZCBjYW4gc3RlZXIgDQo+IHRvIG9uZSBzYXRl bGxpdGUgdnMgYSBkaWZmZXJlbnQgb25lLg0KDQpBdCBmaXJzdCBnbGFuY2UsIHllcywgdGhhdCBz b3VuZHMgbGlrZSBhbiBhdHRyYWN0aXZlIHdheSBvZiBtYWtpbmcgeW91ciANCnNwZWN0cnVtIHJl c291cmNlIGdvIGFuIGV4dHJhIG1pbGUuDQoNClRoYXQncyB1bnRpbCB5b3UgZGlzY292ZXIgd2hh dCBTcGFjZVgncyBjb2xsZWFndWVzIGluIHZhcmlvdXMgb3RoZXIgDQpjb21wZXRpbmcgc2F0ZWxs aXRlIHNlcnZpY2VzIGRpZCBhIGxvbmcgdGltZSBhZ28gLi4uIGRydW0gcm9sbCAuLi4gdGhlIA0K c21hbGwgcHJpbnQgaW4gVGFibGUgMjEtNCBvZiB0aGUgSVRVIFJhZGlvIFJlZ3VsYXRpb25zISBJ dCdzIGp1c3QgDQpudW1iZXJzIHJlYWxseSwgYnV0IGl0IHN0aXB1bGF0ZXMgYW4gRVBGRCBsaW1p dCBmb3IgTkdTTyBzeXN0ZW1zIGluIHRoZSANCnBhcnQgb2YgdGhlIEt1IGJhbmQgc3BlY3RydW0g dGhhdCBTdGFybGluayB1c2VzLiBFUEZEIHN0YW5kcyBmb3IgDQplcXVpdmFsZW50IHBvd2VyIGZs dXggZGVuc2l0eSwgZXNzZW50aWFsbHkgdGhlIHBvd2VyIGluIHdhdHRzIHBlciBzcXVhcmUgDQpt ZXRyZSBwZXIgSGVydHogb2YgYmFuZHdpZHRoIHRoYXQgaXMgYWxsb3dlZCB0byBoaXQgdGhlIEVh cnRoJ3Mgc3VyZmFjZSwgDQoibGltaXQiIG1lYW5zICJtYXhpbXVtIiwgYW5kIE5HU08gbWVhbnMg bm9uLWdlb3N0YXRpb25hcnkgb3JiaXQsIHdoaWNoIA0KaW5jbHVkZXMgZXZlcnkgc2luZ2xlIFN0 YXJsaW5rIHNhdGVsbGl0ZSBpbiBleGlzdGVuY2UuDQoNCk9oLCBhbmQgdGhlIElUVSBSYWRpbyBS ZWd1bGF0aW9ucyBhcmUgdGhlIGludGVybmF0aW9uYWxseSBhZ3JlZWQtdXBvbiANCmdsb2JhbGx5 IGJpbmRpbmcgcnVsZXMgZm9yIHJhZGlvIGNvbW11bmljYXRpb25zLCBhbmQgdW5saWtlIHRyZWF0 aWVzIA0KbGlrZSBudWNsZWFyIG5vbi1wcm9saWZlcmF0aW9uIHRoYXQgY2FuIGJlIGlnbm9yZWQg d2l0aCBuZWFyIGltcHVuaXR5LCANCml0J3MgYSBydWxlIGJvb2sgdGhhdCBtb3N0IG5hdGlvbiBz dGF0ZXMgc3RpY2sgdG8gZmFpcmx5IHJlbGlnaW91c2x5IA0KYmVjYXVzZSBpZiB0aGV5IGRvbid0 LCB0aGVuIG5vYm9keSBlbHNlIHdpbGwsIGFuZCB0aGVuIHdlJ2xsIGFsbCBuZWVkIA0KZmlicmUg dG8gY29tbXVuaWNhdGUgYmVjYXVzZSB3aXJlbGVzcyBpbiBhbGwgaXRzIGZvcm1zIHdvdWxkIGJl IG5lYXIgDQp1bnVzYWJsZS4gQW55d2F5LCBJIGRpZ3Jlc3MuDQoNCk5vdyBtdWNoIHRvIFNwYWNl WCdzIGNoYWdyaW4sIHRoaXMgYm9yaW5nLWxvb2tpbmcgcnVsZSBnb3QgaW50cm9kdWNlZCBhIA0K bG9uZyB0aW1lIGJlZm9yZSBwZW9wbGUgcmVhbGx5IHRob3VnaHQgdGhhdCBhbnlvbmUgY291bGQg YmUgDQpkdW1iL3JpY2gvcG93ZXJmdWwvbWVnYWxvbWFuaWFjIGVub3VnaCB0byBidWlsZCBhbiBh Y3R1YWwgTEVPIA0KbWVnYS1jb25zdGVsbGF0aW9uLiBUaGUgRVBGRCBsaW1pdCByZWxhdGVzIHRv IGNvbWJpbmVkIGVtaXNzaW9ucyBmcm9tIA0KYWxsIG9mIHlvdXIgc2F0ZWxsaXRlIGZsZWV0IHRo YXQgbWlnaHQgaGl0IHRoZSBncm91bmQgaW4gYSBwYXJ0aWN1bGFyIA0KYXJlYSAocmVhZCAiY2Vs bCIpIGZyb20gYW55IG9mIHlvdXIgc3BhY2VjcmFmdC4gVGhpcyBtZWFucyB0aGF0IGlmIHlvdSAN CmZpcmUgdHdvIGJlYW1zIG9uIHRoZSBzYW1lIGZyZXF1ZW5jeSAtIGV2ZW4gZnJvbSB0d28gZGlm ZmVyZW50IA0Kc2F0ZWxsaXRlcyBpbiB5b3VyIHN5c3RlbSAtIGF0IHRoZSBzYW1lIGNlbGwsIHlv dSBoYXZlIHRvIGFkZCB0aGUgcG93ZXJzIA0Kb2YgdGhlIHR3byBiZWFtcyBhbmQgY291bnQgdGhl IHN1bSB0b3dhcmRzIHRoZSBFUEZEIGxpbWl0Lg0KDQpGb3IgaXRzIGZpcnN0IGdlbmVyYXRpb24g c2F0ZWxsaXRlcywgU3BhY2VYIGNvbW1pdHRlZCB0byBhIHNsaWdodGx5IA0KbG93ZXIgRVBGRCBs aW1pdCAtIHNpbXBseSBiZWNhdXNlIHRoZSBydWxlIGhhZG4ndCBldmVyIGJlZW4gYXBwbGllZCB0 byANCkxFTyBjb25zdGVsbGF0aW9ucyBvZiB0aGlzIHR5cGUuIFRoYXQgbGltaXQgaXMganVzdCBz dWZmaWNpZW50IHRvIGFsbG93IA0KZm9yIGJlYW1zIHdpdGggMTZRQU0gbW9kdWxhdGlvbiAodGhh dCdzIDQgYml0cyBwZXIgSGVydHogb2YgYmFuZHdpZHRoIA0KcGVyIHNlY29uZCBtYXguLCB1c2lu ZyBPRkRNKSB0byBiZSB1c2VkIGZvciBzcGFjZS10by1ncm91bmQgY29tbXMgZnJvbSANCk9ORSBz cGFjZWNyYWZ0IHRvIGEgRGlzaHktc2l6ZWQgYW50ZW5uYS4gRm9yIGl0cyBzZWNvbmQgZ2VuZXJh dGlvbiwgDQpTcGFjZVggYXJndWVkIHRoYXQgaXQgY291bGQgc2FpbCB0aWdodGVyIHRvIHRoZSBy ZWd1bGF0b3J5IGxpbWl0LCB3aGljaCANCmVzc2VudGlhbGx5IGFsbG93cyBmb3IgNjRRQU0gaW5z dGVhZCAoNiBiaXRzIHBlciBIZXJ0eiAuLi4gYmxhaCkuIEJ1dCANCnllYWgsIHRoZXJlJ3MgYSB3 YWxsLCBhbmQgaXQncyBub3QgdmVyeSBmbGV4aWJsZS4NCg0KU3BhY2VYIGhhdmUgcmFpbGVkIGFn YWluc3QgaXQgaW4gbnVtZXJvdXMgRkNDIGZpbGluZ3MuwqBGb3IgdGhlIGluY3VtYmVudCANCnBy b3ZpZGVycywgdGhhdCBydWxlIGlzIGxpa2UgZ2FybGljIGFnYWluc3QgdmFtcGlyZXMsIGFuZCB0 aGV5IGp1c3QgbG92ZSANCml0Lg0KDQpEaXJlY3Rpb24gZGl2aXNpb24gYXMgeW91IHN1Z2dlc3Qg Y2FuIGhlbHAgYSBiaXQgd2l0aCBmcmVxdWVuY3kgcmUtdXNlIA0KaW4gY2VsbHMgdGhhdCBhcmUg aW4gdGhlIHNhbWUgbmVpZ2hib3VyaG9vZCAodXNpbmcgbW9yZSBzYXRlbGxpdGVzKSwgYnV0IA0K aXQgY2FuJ3QgYmUgdXNlZCB0byBjcmVhdGUgYWRkaXRpb25hbCBjYXBhY2l0eSBpbiBhIGNlbGwu DQoNCldlJ3ZlIGJlZW4gdHJ5aW5nIHRvIHB1Ymxpc2ggdGhlIGRldGFpbHMgb2YgdGhpcyBmb3Ig YSB3aGlsZSwgYnV0IA0KZmluZGluZyBhIGdvb2QgbmV0d29ya2luZyBjb25mZXJlbmNlIGNhcGFi bGUgb2YgcmVjcnVpdGluZyBzdWZmaWNpZW50IA0KcmVmZXJlZXMgdGhhdCBkb24ndCBzZWxmLWFz c2VzcyBhcyAidW5mYW1pbGlhciIgd2l0aCB0aGUgdG9waWMgaGFzIGJlZW4gDQphIGJpdCBvZiBh IGNoYWxsZW5nZS4gU3VnZ2VzdGlvbnMgd2VsY29tZS4NCg0KPg0KPiBEYXZpZCBMYW5nDQo+DQo+ IE9uIFdlZCwgMTAgU2VwIDIwMjUsIFVscmljaCBTcGVpZGVsIHZpYSBTdGFybGluayB3cm90ZToN Cj4NCj4+IERhdGU6IFdlZCwgMTAgU2VwIDIwMjUgMTc6MzY6MjkgKzEyMDANCj4+IEZyb206IFVs cmljaCBTcGVpZGVsIHZpYSBTdGFybGluayA8c3RhcmxpbmtAbGlzdHMuYnVmZmVyYmxvYXQubmV0 Pg0KPj4gUmVwbHktVG86IFVscmljaCBTcGVpZGVsIDx1LnNwZWlkZWxAYXVja2xhbmQuYWMubno+ DQo+PiBUbzogc3RhcmxpbmtAbGlzdHMuYnVmZmVyYmxvYXQubmV0DQo+PiBTdWJqZWN0OiBbU3Rh cmxpbmtdIFJlOiBTdGFybGluayBTdGFuZGJ5IE1vZGUNCj4+DQo+PiBXaGF0IGdldHMgbWUgaGVy ZSBpcyB0aGF0IHRoaXMgaXMgeWV0IG1vcmUgZXZpZGVuY2Ugb2YgU3BhY2VYIHRyeWluZyANCj4+ IHRvIGRvIHVzZXIgZGVuc2l0eSBhbmQgY2FwYWNpdHkgbWFuYWdlbWVudC4NCj4+DQo+PiBSZWNh cDogU3BlY3RyYWwgY2FwYWNpdHkgcGVyIGNlbGwgaXMgbGltaXRlZCAtIHRvIHF1aXRlIGhvdyBt dWNoIA0KPj4gZGVwZW5kcyBhIGdvb2QgYml0IG9uIGhvdyBtdWNoIHNlcnZpY2UgbmVpZ2hib3Vy aW5nIGNlbGxzIG5lZWQuIFRoZXkgDQo+PiBjYW4gZGl2aWRlIHRoYXQgY2FwYWNpdHkgYmV0d2Vl biB1c2VycyB2aWEgY2hhbm5lbCBkaXZpc2lvbiBzY2hlbWVzIA0KPj4gc3VjaCBhcyB0aW1lIGRp dmlzaW9uLCBmcmVxdWVuY3kgZGl2aXNpb24gb3IgY29kZSBkaXZpc2lvbiwgYnV0IHRoZSANCj4+ IGJvdHRvbSBsaW5lIGlzIHRoYXQgaWYgeW91IGRpdmlkZSBjYXBhY2l0eSwgeW91IGVuZCB1cCB3 aXRoIHNsaWNlcyANCj4+IHRoYXQgeW91IGNhbiBhc3NpZ24gdG8gdXNlcnMgbXVjaCBsaWtlIHNs aWNlcyBmcm9tIGEgcGllIChvciBwaXp6YSkuIA0KPj4gVGhlIG1vcmUgdXNlcnMgaW4gYSBjZWxs LCB0aGUgbW9yZSBjb21wZXRpdGlvbiBmb3IgdGhlIHNsaWNlcy4NCj4+DQo+PiBOb3RlIGFsc28g dGhhdCB0aGVyZSBhcmUgdHdvIHdheXMgZm9yIFN0YXJsaW5rIHRvIHJ1biBvdXQgb2YgY2FwYWNp dHkgDQo+PiBpbiBhIGNlbGw6DQo+Pg0KPj4gMS4gVGhleSBjYW4gcnVuIG91dCBvZiBmcmVxdWVu Y2llcyB0byB1c2UuIFRoaXMgaXMgaW1wb3NzaWJsZSB0byBmaXgNCj4+IMKgIHdpdGhvdXQgc29t ZW9uZSBoYXZpbmcgdG8gY29tcHJvbWlzZSBvbiB0aGVpciBzbGljZS4NCj4+IDIuIFRoZXkgY2Fu IHJ1biBvdXQgb2YgYmVhbXMgLSBtZWFuaW5nIHRoZXJlIHdvdWxkIGJlIGEgZnJlcXVlbmN5IHRv DQo+PiDCoCBjb21tdW5pY2F0ZSBvbiBidXQgdGhlcmUncyBqdXN0IG5vIHNhdGVsbGl0ZSBpbiB2 aWV3IHRoYXQgaGFzIGEgYmVhbQ0KPj4gwqAgdGhhdCBpdCBjYW4gY3VycmVudGx5IHBvaW50IGF0 IHRoZSBjZWxsLiBUaGlzIGlzIHBvc3NpYmxlIHRvIGZpeA0KPj4gwqAgd2l0aCBtb3JlIHNhdGVs bGl0ZXMgLyBiZWFtcyBwZXIgc2F0ZWxsaXRlLg0KPj4NCj4+IE5vdyB3aGVuIHlvdSBhcmUgc3Rh cnRpbmcgdG8gcnVuIG91dCBvZiBjYXBhY2l0eSwgeW91IGhhdmUgYSBidW5jaCBvZiANCj4+IG9w dGlvbnMgYXQgeW91ciBkaXNwb3NhbDoNCj4+DQo+PiAqIFlvdSBjYW4gbGF1bmNoIG1vcmUgc2F0 ZWxsaXRlcyB3aXRoIG1vcmUgYmVhbXMgdG8gcmVkdWNlIGJlYW0NCj4+IMKgIGNhcGFjaXR5IGJv dHRsZW5lY2tzLiBTcGFjZVggY2xlYXJseSBkbyB0aGlzIGFzIHRoZWlyIGNvbnN0ZWxsYXRpb24N Cj4+IMKgIGlzIGdyb3dpbmcgaW4gc2F0IG51bWJlcnMgYW5kIGJlYW1zIHBlciBzYXQuDQo+PiAq IFlvdSBjYW4gdHJ5IGFuZCBkZXRlciBuZXcgdXNlcnMgZnJvbSBzaWduaW5nIHVwIGJ5IGNoYXJn aW5nIGEgaGlnaGVyDQo+PiDCoCBwcmljZSBpbiB0aGUgYXJlYSB5b3UncmUgcnVubmluZyBvdXQg b2YgY2FwYWNpdHkgaW4sIG9yIGJ5IGNoYXJnaW5nDQo+PiDCoCBhIGNvbmdlc3Rpb24gZmVlLiBX ZSd2ZSBzZWVuIFNwYWNlWCBkbyB0aGlzIHdoZW4gdGhleSBvc3RlbnNpYmx5IHJhbg0KPj4gwqAg b3V0IG9mIGJlYW1zIGEgY291cGxlIG9mIHllYXJzIGFnbyBpbiBzb21lIGFyZWFzICYgZGlkbid0 IGV4dGVuZA0KPj4gwqAgZGlzY291bnQgc2NoZW1lcyB0byBjZWxscyB3aXRoIGhpZ2ggdXNlciBk ZW5zaXRpZXMuIFdlJ3JlIHNlZWluZw0KPj4gwqAgdGhlbSBkbyBpdCBub3cgaW4gbWFueSBhcmVh cyB3aGVyZSBuZXcgc3Vic2NyaWJlcnMgYXJlIHRhcHBlZCBmb3INCj4+IMKgIGNvbmdlc3Rpb24g ZmVlcy4NCj4+ICogWW91IGNhbiBncm93bCBhdCBleGlzdGluZyB1c2VycyB0byB0cnkgYW5kIG1h a2UgdGhlbSBnbyBhd2F5LiBXZSd2ZQ0KPj4gwqAgc2VlbiBTcGFjZVggZG8gdGhpcyBpbiBhbiBp c2xhbmQgbG9jYXRpb24gd2hlcmUgbG9jYWwgdXNlcnMgd2hvc2UNCj4+IMKgIGRpc2h5cyB3ZXJl IG9uIGEgcm9hbWluZyBwbGFuIGJ1dCBoYWQgdGFrZW4gdXAgcGVybWFuZW50IHJlc2lkZW5jZQ0K Pj4gwqAgdGhlcmUgd2VyZSB0b2xkIHRvIHBhY2sgdGhlbSB1cCBhbmQgY29udGludWUgb3BlcmF0 aW9uIGVsc2V3aGVyZS4NCj4+ICogWW91IGNhbiBzaHJpbmsgdGhlIHNpemUgb2YgdGhlIHNsaWNl cyBmb3IgZXhpc3RpbmcgdXNlcnMuIElmIHlvdQ0KPj4gwqAgbG9vayBhdCB0aGUgU3Rhcmxpbmsg c3BlZWRzIG1hcCwgdGhhdCdzIHdoYXQgc2VlbXMgdG8gaGF2ZSBoYXBwZW5lZA0KPj4gwqAgaW4g YSBmZXcgb2YgdGhlIHBsYWNlcyB3aGVyZSB0aGV5IHdlcmUgInNvbGQgb3V0IiBmb3IgYSB3aGls ZSBhbmQNCj4+IMKgIGFyZSBub3cgYXZhaWxhYmxlIGFnYWluLiBZb3UnbGwgYmUgbG9va2luZyBm b3IgdGhlIG1pbmltdW0gZG93bmxvYWQNCj4+IMKgIHNwZWVkcyBoZXJlIGFuZCB3YW50IHRvIGNv bXBhcmUgdGhvc2Ugd2l0aCBwbGFjZXMgd2hlcmUgU3RhcmxpbmsNCj4+IMKgIHVzZXIgZGVuc2l0 eSBpcyBsb3cuIE9mIGNvdXJzZSwgdGhpcyBzbGljZSBzaHJpbmtpbmcgaXNuJ3QgaWRlYWwNCj4+ IMKgIGJlY2F1c2UgZm9sayBsb3ZlIHRoZWlyIGJhbmR3aWR0aCBhbmQgYWxsIGl0IHRha2VzIGlz IGEgY3Jhbmt5DQo+PiDCoCBpbmZsdWVuY2VyIHdobyBpc24ndCBoYXBweSB3aXRoIHdoYXQgdGhl eSBzZWUuIFNvIGl0J3MgYmVzdCBhdm9pZGVkDQo+PiDCoCBpZiB5b3UgY2FuLg0KPj4NCj4+IExh c3QgYnV0IG5vdCBsZWFzdCwgeW91IGNhbiB0cnkgYW5kIHB1dCB0aGUgc3F1ZWV6ZSBvbiB0aGUg YW1vdW50IG9mIA0KPj4gc3BhcmUgY2FwYWNpdHkgeW91IG5lZWQgdG8gcmV0YWluIGluIGNhc2Ug bm90LXNvLWFjdGl2ZSB1c2VycyBiZWNvbWUgDQo+PiBhY3RpdmUuIFRoYXQncyB5b3UgZ3V5cyB3 aXRoIHRoZSAiSSBoYXZlIG15IFN0YXJsaW5rIG9ubHkgZm9yIGJhY2t1cCANCj4+IGluIGNhc2Ug bXkgZmlicmUgZ2V0cyBjdXQiIG9yIHRob3NlIG9mIHlvdSB3aXRoIHRoZSAiSSBvbmx5IHVzZSBt eSANCj4+IFN0YXJsaW5rIGF0IG15IHN1bW1lciBob3VzZSBkdXJpbmcgdGhlIGhvbGlkYXlzIi4g V2hpbGUgeW91J3JlIG5vdCANCj4+IHVzaW5nIHlvdXIgU3RhcmxpbmssIHlvdSBkb24ndCBuZWVk IGFueSBzbGljZXMsIHNvIFNwYWNlWCBjYW4gc2VsbCANCj4+IHRoYXQgY2FwYWNpdHkgaW4gdGhl IGFyZWEgdG8gbmV3IHVzZXJzLiBCdXQgd29lIGJldGlkZSB0aGVtIHNob3VsZCANCj4+IGFsbCB0 aG9zZSBpbmFjdGl2ZSB1c2VycyBzdWRkZW5seSBhY3RpdmF0ZSAtIGJlIGl0IGJlY2F1c2UgdGhl IA0KPj4gaG9saWRheXMgaGF2ZSBzdGFydGVkLCBvciBiZWNhdXNlIHRoYXQgYmFja2hvZSBvciBu YXR1cmFsIGRpc2FzdGVyIA0KPj4gaGFzIGhpdC4NCj4+DQo+PiBTbyB3aGF0IHlvdSBjYW4gZG8g aXMgc2VsbCBzbWFsbGVyIHNsaWNlcyBvZiB0aGUgY2FwYWNpdHkgcGllIGFuZCBhdCANCj4+IGEg Y2hlYXBlciBwcmljZSwgYnV0IG1ha2UgdGhhdCAib2ZmaWNpYWwiIHNvIG5vYm9keSBjb21wbGFp bnMuIA0KPj4gU2ltaWxhcmx5LCB5b3UgY2FuIHRyeSBhbmQgZWFzZSB0aG9zZSBvdXQgdGhhdCBw dXQgdGhlaXIgcGxhbnMgb24gDQo+PiBob2xkIGZvciBleHRlbmRlZCBwZXJpb2RzIG9mIHRpbWUg LSB5b3Ugd2FudCB0byBtYWtlIGl0IHVuYXR0cmFjdGl2ZSANCj4+IGZvciB0aGVtIHRvIGhvbGQg b24gdG8gdGhlaXIgZW50aXRsZW1lbnQgdG8gYSBiaWcgc2xpY2UgYXQgdGhlIGRyb3AgDQo+PiBv ZiBhIGhhdC4NCj4+DQo+PiBUTERSOiBJJ2QgYmUgYSBsaXR0bGUgc2tlcHRpY2FsIHRoYXQgeW91 J2xsIGJlIGFibGUgdG8gc3dpdGNoIGZyb20gYSANCj4+IGJhY2t1cCBwbGFuIG9yIHBhdXNlIHRv IGEgZnVsbCBvbmUgYXMgZWFzaWx5IGFzIHlvdSBtaWdodCB0aGluay4NCj4+DQo+PiBPbiAxMC8w OS8yMDI1IDk6MjAgYW0sIEogUGFuIHZpYSBTdGFybGluayB3cm90ZToNCj4+PiBub3RoaW5nIGJl dHRlciB0aGFuIGZyZWUgOy0pIGJ1dCBpdCBtYXkgY29zdCB0aGVtIG1vcmUgdGhhbiAkNS9tbyB0 bw0KPj4+IG1haW50YWluIGFuIGFjdGl2ZSBkaXNoLiBkb24ndCB0aGV5IGp1c3Qgd2FudCB0byBr ZWVwIGFzIG1hbnkNCj4+PiByZXZlbnVlLWdlbmVyYXRpbmcgY3VzdG9tZXJzIGZvciBhbiB1cGNv bWluZyBpcG8/DQo+Pj4gLS0gDQo+Pj4gSiBQYW4sIFVWaWMgQ1NjLCBFQ1M1NjYsIDI1MC00NzIt NTc5NiAoTk8gVk0pLFBhbkBVVmljLkNBLCANCj4+PiBXZWIuVVZpYy5DQS9+cGFuDQo+Pj4NCj4+ PiBPbiBUdWUsIFNlcCA5LCAyMDI1IGF0IDI6MDHigK9QTSBPbGVnIEt1dGtvdiB2aWEgU3Rhcmxp bmsNCj4+PiA8c3RhcmxpbmtAbGlzdHMuYnVmZmVyYmxvYXQubmV0PiB3cm90ZToNCj4+Pj4gV2Vs bC4gSSBwcmVmZXIgYSBnb29kIG9sZCBmcmVlIHBhdXNlLg0KPj4+PiBJIGhhdmUgc2V2ZW4gU3Rh cmxpbmsgdGVybWluYWxzIG9uIG15IGFjY291bnQsIGFuZCBJIG1vc3RseSBkb24ndCB1c2UNCj4+ Pj4gdGhlbSwgZXhjZXB0IGZvciBzb21lIGV4cGVyaW1lbnRzLCBvY2Nhc2lvbmFsIHRlc3RzLCBm aXJtd2FyZSANCj4+Pj4gZHVtcHMsIGFuZA0KPj4+PiBzaW1pbGFyIHB1cnBvc2VzLg0KPj4+PiBO b3cgdGhleSB3aWxsIGNoYXJnZSBtZSAkMzUgZWFjaCBtb250aCBmb3IgYmFzaWNhbGx5IG5vdGhp bmcuDQo+Pj4+DQo+Pj4+IE9uIDkvOS8yNSAyMzoxNCwgTHVpcyBBLiBDb3JuZWpvIHZpYSBTdGFy bGluayB3cm90ZToNCj4+Pj4+IFRoZXJlIGlzIGFub3RoZXIgZWxlY3RyaWMgY29vcGVyYXRpdmUg aW4gbXkgY291bnR5IHRoYXQgZGlkIGp1c3QgDQo+Pj4+PiB0aGF0Lg0KPj4+Pj4gU3RydW5nIGZp YmVyIGFsb25nIHRoZSBwb3N0cywgSSB3YXMgbm90IGx1Y2t5IGVub3VnaCB0byBiZSBwYXJ0IG9m IA0KPj4+Pj4gdGhlaXINCj4+Pj4+IHRlcnJpdG9yeS4gQnV0IGZyb20gcGVvcGxlIHRoYXQgSSBr bm93IGl04oCZcyBzaW1pbGFyIHRoYXTigJlzIGl04oCZcyANCj4+Pj4+IGZhc3QgYnV0DQo+Pj4+ PiBub3QgYWx3YXlzIHJlbGlhYmxlLCBzbyBzdG9ybXMgY2FuIHRha2Ugc29tZSBkb3duLCBvZnRl biBhcm91bmQgDQo+Pj4+PiBoZXJlIGl04oCZcw0KPj4+Pj4gYWxzbyBhIGJhY2tob2UsIGFuZCB3 aGVuIGl0IGRvZXMgZG93biwgaXTigJlzIGRvd24gZm9yIGEgd2hpbGUuDQo+Pj4+Pg0KPj4+Pj4g QnV0IEkgYWdyZWUsIGl04oCZcyBhIGdyZWF0IGJhY2t1cC4gQWx0aG91Z2ggaXQgcHJvYmFibHkg Y29zdHMgDQo+Pj4+PiBhbG1vc3QgYXMgbXVjaA0KPj4+Pj4gdG8gcnVuIGluIGVsZWN0cmljaXR5 IGFzIHRoZSBzZXJ2aWNlIGl0c2VsZiEgPW8pDQo+Pj4+Pg0KPj4+Pj4gLUx1aXMNCj4+Pj4+DQo+ Pj4+PiBPbiBUdWUsIFNlcCA5LCAyMDI1IGF0IDE6NDHigK9QTSBDb2xpbl9IaWdiaWUgdmlhIFN0 YXJsaW5rIDwNCj4+Pj4+IHN0YXJsaW5rQGxpc3RzLmJ1ZmZlcmJsb2F0Lm5ldD4gd3JvdGU6DQo+ Pj4+Pg0KPj4+Pj4+IEkgZmluZCB0aGUgU3RhbmRieSBtb2RlIHRvIGJlIGEgZ3JlYXQgYmFja3Vw IG9wdGlvbi4gJDUvbW8gZm9yIA0KPj4+Pj4+IHVubGltaXRlZA0KPj4+Pj4+IGxvdy1iYW5kd2lk dGggdXNhZ2UuIFRoaXMgaXMgc29tZXRoaW5nIEkndmUgYmVlbiB1cmdpbmcgdGhlbSB0byANCj4+ Pj4+PiBvZmZlciBmb3INCj4+Pj4+PiBhYm91dCBhIHllYXIgbm93Lg0KPj4+Pj4+DQo+Pj4+Pj4g QWJvdXQgMTggbW9udGhzIGFmdGVyIEkgb3JpZ2luYWxseSBwdXJjaGFzZWQgYW5kIHN1YnNjcmli ZWQgdG8gDQo+Pj4+Pj4gU3RhcmxpbmssDQo+Pj4+Pj4gb3VyIHBvd2VyIGNvbXBhbnkgKG5vdCBw aG9uZSBjb21wYW55IGFzIHlvdSdkIGV4cGVjdCwgcmVhbGx5IG91ciANCj4+Pj4+PiBlbGVjdHJp Yw0KPj4+Pj4+IHBvd2VyIGNvbXBhbnkpIHJvbGxlZCBvdXQgZmliZXIgdG8gcnVyYWwgY29tbXVu aXRpZXMgaW4gbm9ydGhlcm4gDQo+Pj4+Pj4gTkguIEFzDQo+Pj4+Pj4gZ3JlYXQgYXMgU3Rhcmxp bmsgd2FzIGNvbXBhcmVkIHRvIHdoYXQgd2UgaGFkIGJlZm9yZSwgZmliZXIgaXMgDQo+Pj4+Pj4g ZXZlbiBiZXR0ZXINCj4+Pj4+PiBub3cgdGhhdCBpdCdzIGF2YWlsYWJsZSAoMUdicHMgZm9yICQ3 OS9tbywgY29uc2lzdGVudGx5IHRlc3RzIGFzIA0KPj4+Pj4+IEEgb24NCj4+Pj4+PiBCdWZmZXJi bG9hdCkuIEJ1dCBpdCdzIG5vdCAxMDAlIHJlbGlhYmxlLiBGb3IgZXhhbXBsZSwgd2hlbiB0aGVy ZSANCj4+Pj4+PiBhcmUNCj4+Pj4+PiB3aWRlc3ByZWFkIHBvd2VyIG91dGFnZXMsIGl0IGdvZXMg ZG93bi4gVGhlIFN0YXJsaW5rIHN0YW5kYnkgDQo+Pj4+Pj4gb3B0aW9uIGlzDQo+Pj4+Pj4gcGVy ZmVjdCBmb3IgdGhvc2Ugc2l0dWF0aW9ucy4NCj4+Pj4+Pg0KPj4+Pj4+IExhdGVuY3kgcmVtYWlu cyBkZWNlbnQsIGp1c3QgbGltaXRlZCBiYW5kd2lkdGguIEFuZCBpZiB0aGUgZmliZXIgDQo+Pj4+ Pj4gb3V0YWdlDQo+Pj4+Pj4gcmVtYWlucyBpbiBlZmZlY3QgZm9yIHRvbyBsb25nLCB3ZSBjb3Vs ZCBhbHdheXMgYWN0aXZhdGUgU3RhcmxpbmsgDQo+Pj4+Pj4gYXQgZnVsbA0KPj4+Pj4+IGJhbmR3 aWR0aCBmb3IgdGhhdCBtb250aCwgd2hlcmUgaXQgYXBwZWFycyB0aGV5J3JlIHRha2luZyB0aGF0 IA0KPj4+Pj4+IG9wdGlvbiBhd2F5DQo+Pj4+Pj4gZnJvbSBwZW9wbGUgd2l0aCBpbmFjdGl2ZSBh Y2NvdW50cyBub3QgYWxyZWFkeSBvbiBTdGFuZGJ5IG1vZGUgDQo+Pj4+Pj4gKHRoZXkgbWF5IGJl DQo+Pj4+Pj4gYmx1ZmZpbmcgb24gdGhhdCDigJMgeW91J2QgdGhpbmsgdGhleSB3b3VsZCB3YW50 IHRvIG1ha2UgaXQgZWFzeSANCj4+Pj4+PiBmb3IgYW55b25lDQo+Pj4+Pj4gdG8gZ2l2ZSB0aGVt IG1vbmV5IGFuZCByZXN1YnNjcmliZSwgc3RhbmRieSBjdXN0b21lciBvciBub3QpLg0KPj4+Pj4+ DQo+Pj4+Pj4gQ2hlZXJzLA0KPj4+Pj4+IENvbGluDQo+Pj4+Pj4gX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCj4+Pj4+PiBTdGFybGluayBtYWlsaW5nIGxp c3QgLS1zdGFybGlua0BsaXN0cy5idWZmZXJibG9hdC5uZXQNCj4+Pj4+PiBUbyB1bnN1YnNjcmli ZSBzZW5kIGFuIGVtYWlsIHRvc3RhcmxpbmstbGVhdmVAbGlzdHMuYnVmZmVyYmxvYXQubmV0DQo+ Pj4+Pj4NCj4+Pj4+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fDQo+Pj4+PiBTdGFybGluayBtYWlsaW5nIGxpc3QgLS1zdGFybGlua0BsaXN0cy5idWZmZXJi bG9hdC5uZXQNCj4+Pj4+IFRvIHVuc3Vic2NyaWJlIHNlbmQgYW4gZW1haWwgdG9zdGFybGluay1s ZWF2ZUBsaXN0cy5idWZmZXJibG9hdC5uZXQNCj4+Pj4gLS0gDQo+Pj4+IEJlc3QgcmVnYXJkcywN Cj4+Pj4gT2xlZyBLdXRrb3YNCj4+Pj4NCj4+Pj4gX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18NCj4+Pj4gU3RhcmxpbmsgbWFpbGluZyBsaXN0IC0tc3Rhcmxp bmtAbGlzdHMuYnVmZmVyYmxvYXQubmV0DQo+Pj4+IFRvIHVuc3Vic2NyaWJlIHNlbmQgYW4gZW1h aWwgdG9zdGFybGluay1sZWF2ZUBsaXN0cy5idWZmZXJibG9hdC5uZXQNCj4+PiBfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0KPj4+IFN0YXJsaW5rIG1haWxp bmcgbGlzdCAtLXN0YXJsaW5rQGxpc3RzLmJ1ZmZlcmJsb2F0Lm5ldA0KPj4+IFRvIHVuc3Vic2Ny aWJlIHNlbmQgYW4gZW1haWwgdG9zdGFybGluay1sZWF2ZUBsaXN0cy5idWZmZXJibG9hdC5uZXQN Cj4+DQo+Pg0KLS0gDQoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqDQpEci4gVWxyaWNoIFNwZWlkZWwNCg0KU2Nob29sIG9mIENv bXB1dGVyIFNjaWVuY2UNCg0KUm9vbSAzMDNTLjU5NCAoQ2l0eSBDYW1wdXMpDQoNClRoZSBVbml2 ZXJzaXR5IG9mIEF1Y2tsYW5kDQp1LnNwZWlkZWxAYXVja2xhbmQuYWMubnoNCmh0dHA6Ly93d3cu Y3MuYXVja2xhbmQuYWMubnovfnVscmljaC8NCioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCg0KDQoNCg==