Received: by 2002:a6b:500f:0:0:0:0:0 with SMTP id e15csp625174iob; Fri, 13 May 2022 09:00:21 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzkHSPq6iL+0bsPQGWQHq+pcEDmjFy2Nsxfw8YBgvWMO3EbnyBzuL4CcsnctsAHvp45dBxG X-Received: by 2002:adf:fb10:0:b0:207:af88:1eb9 with SMTP id c16-20020adffb10000000b00207af881eb9mr4603059wrr.238.1652457616984; Fri, 13 May 2022 09:00:16 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1652457616; cv=pass; d=google.com; s=arc-20160816; b=BnaHV87AOibxGEiHTYu07wC3bF2+pKWS9yQmCRCp8VAvQEcumQk8AfSoyhDDMJq8k+ OlyrYUs7ACjeAwgQfqUlPeNlpjLfr258kaRDpbXf7jbITrrcKz5oDORQsz78xMeetVO9 hkz+OVrpIoIgm2HXo026g3NsXyeA+M8YQAFPdwsDQ/UpcaSBO1pkWObNh5j2mZ8u2rdy 1F/PilyXGYce2jpl+18jteWtRLNb2hMn3lfWXq/xhcIdpLsne4RhfMa8o2YHv0r6Vv4a d0fecJfiO8+rw48FRa1UEj7U0mBzHdbTcNP8qPcyGtZl/g0Lj9yTmPlJNbBByNV1CbYn G33g== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :content-id:content-language:accept-language:in-reply-to:references :message-id:date:thread-index:thread-topic:subject:cc:to:from :dkim-signature; bh=7/yU6gFYUWxdED2jKg+FSxqeGh0TwnPk183BxUXy4Qs=; b=Q7AT4Pe+EsYZWT211caU1G92KQdgYhubira1qVMKJDMROj3AslysXGBKJrpDwJOWD8 IKtIQrj93ghFSJd9y2hK1spWS/Y794FEuo+Nw5xY2Ql3oQ0j97reN6HtTQeUgN8mQK6S 0ZvnnaM9Y3leEBHgXw3j0uM0LPcLd1+aF46Ap02+QaxltqKEsOit2GVJ3pM8RBprwxqd vCeval8gPUXZJHWvO7sW4bEVywXQZToCAt4TiqyC4utkvMH4XhWpclNRq3wJM97eCHGv 7VoxjRkA3D+1BhOA2kGtLaLtIhO1wKInkTlEQKhUSKLUa0V97wg5XwDAfNequhRmFY4k aXig== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@hammerspace.com header.s=selector2 header.b="GVZA/9JZ"; arc=pass (i=1 spf=pass spfdomain=hammerspace.com dkim=pass dkdomain=hammerspace.com dmarc=pass fromdomain=hammerspace.com); spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=hammerspace.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id ba16-20020a0560001c1000b0020a96536c26si2571735wrb.80.2022.05.13.08.59.38; Fri, 13 May 2022 09:00:16 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@hammerspace.com header.s=selector2 header.b="GVZA/9JZ"; arc=pass (i=1 spf=pass spfdomain=hammerspace.com dkim=pass dkdomain=hammerspace.com dmarc=pass fromdomain=hammerspace.com); spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=hammerspace.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1381882AbiEMPUI (ORCPT + 99 others); Fri, 13 May 2022 11:20:08 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39430 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1381909AbiEMPUD (ORCPT ); Fri, 13 May 2022 11:20:03 -0400 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2098.outbound.protection.outlook.com [40.107.243.98]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9567668314 for ; Fri, 13 May 2022 08:19:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GZq4zSiYVyfJGeCgHmIbBwMHWKaxyniZ5Bk+DSecMOeymLGYA293vbcly0fLLBXvXne678p7rimHgKnp6hJftYeKJ6NP0hUgTsnN1FBuvaUy0bd5R2rLYVVfoCny8u9YSgqtCfYjn3nFEj0hKgYcUxQyIQiQtLdacv3OXRcXXDQ9VjAFpIbFoCOMHD1XjiFeJOoF2jGb//Vis/sOhbnTdVbA/9iNUMjF/bl7OXMbY5fw6t6KvJrr2e3lF5tverQ0vAmC7JSDsC1IaNdht5Z9GKTaGXuC3sO0sptgfPhNYp4/SxUq5KM9vysK+i0cBImZY621kCBpUsZvHFWAzxOdHg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=7/yU6gFYUWxdED2jKg+FSxqeGh0TwnPk183BxUXy4Qs=; b=MI1s/NXmo0ABjGxyRTkny8acgs1loWosfLnoBsTkScss9If82FZ1N/P1xhavxM5jKkU6aPuugjFRdWK44aUjfJWT2M/OzJEJ5G+0jQHhRjS3wj069WIyKM9IFRaUtmQHLsxJetXzo9ZF3Kxhsy4BwC/+Twux9q1H5cE+c/Aw1oKCKJdU34+7UoxxPso37ByZ3AGxjavlyEpDlh3sWd+/7Z56U/XsrF+1AvFTWwjtwvpTqxEZdMxScek9vC+2/T9/YR/Q1ia0qAPsXrq0VSebK3XXLURH4zt6bUKohLyKjfgMRPzn+zH4AtGr8LmjfbCZX5n7+oFt/9uxlPckfO828A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=hammerspace.com; dmarc=pass action=none header.from=hammerspace.com; dkim=pass header.d=hammerspace.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hammerspace.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7/yU6gFYUWxdED2jKg+FSxqeGh0TwnPk183BxUXy4Qs=; b=GVZA/9JZOAwMlai6n8ZvPNrzi3sGf48gN+F9kPTq0CEdaH+AvQLB+JkjS7gFy5eDDi2lr8al5m9PpXKVBhXiGXJDXsV0K08iIhThjwlvh1T+iqbwDPF4VXaQADWIfcF7FXSdu/M2orJS2a54PKWul8EKkHDnEpDiZCtRcVokkgU= Received: from CH0PR13MB5084.namprd13.prod.outlook.com (2603:10b6:610:111::7) by DM6PR13MB3787.namprd13.prod.outlook.com (2603:10b6:5:240::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5273.5; Fri, 13 May 2022 15:19:54 +0000 Received: from CH0PR13MB5084.namprd13.prod.outlook.com ([fe80::694a:6bf0:4537:f3e5]) by CH0PR13MB5084.namprd13.prod.outlook.com ([fe80::694a:6bf0:4537:f3e5%6]) with mapi id 15.20.5273.005; Fri, 13 May 2022 15:19:54 +0000 From: Trond Myklebust To: "chuck.lever@oracle.com" CC: "linux-nfs@vger.kernel.org" , "aglo@umich.edu" , "dennis.dalessandro@cornelisnetworks.com" Subject: Re: NFS regression between 5.17 and 5.18 Thread-Topic: NFS regression between 5.17 and 5.18 Thread-Index: AQHYWwCs+SbXmjJVWUyBjwAfi09dZ60Faq4AgAAMfoCAAERPAIAAApAAgAEckwCAAAwFgIAK/HeAgAroagCAABmegIAAGOYAgAAFwIA= Date: Fri, 13 May 2022 15:19:54 +0000 Message-ID: <86caa842c44374cab7fc63b2ef1a373063418831.camel@hammerspace.com> References: <979544aa-a7b1-ab22-678f-5ac19f03e17a@cornelisnetworks.com> <8E8485F8-F56F-4A93-85AC-44BD8436DF6A@oracle.com> <9d814666-6e95-e331-62a7-ec36fe1ca062@cornelisnetworks.com> <04edca2f-d54f-4c52-9877-978bf48208fb@cornelisnetworks.com> <46beb079-fb43-a9c1-d9a0-9b66d5a36163@cornelisnetworks.com> <9d3055f2-f751-71f4-1fc0-927817a07d99@cornelisnetworks.com> <9D98FE64-80FB-43B7-9B1C-D177F32D2814@oracle.com> In-Reply-To: <9D98FE64-80FB-43B7-9B1C-D177F32D2814@oracle.com> Accept-Language: en-US, en-GB Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=hammerspace.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 17edbfed-9acb-462e-36c8-08da34f40863 x-ms-traffictypediagnostic: DM6PR13MB3787:EE_ x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: lw88FD2HVEeUfZ+ifELgMS5/SKwXqQPHVt9y4FkRSgW/vmY2ykYoaaAgfPMRO50UkmdsG6tf+eFYQZ3yIv2Se39NwVXbx4GNiGykfAz/mFKlb9n6lIdfzPull/XyctAKV/OV2oFogr+4nL3PFgHns0dGG16/Dp29pIIdxrbHFVBykVfBJO2lK1qoQ5d1TNGZ4HQP0qnPWpxlfD/mOrLesDb+KelYEvM1P74nYueYVkDabQqo5rZU/VrYVQB6b5kLzswn8dsgXZXxyeLBkWR3E6QyH0lhHokw1DLFIgIORgmDnN+mUeNCzG/RUfwB1uxRzEO3er7MPMuVAVszmT1O7TyGUtVnf5nXxfibQohKVaWew0vj0PGoZCO8wsanyoSC4W+AeGEWUh+B3rJrXzYDGY5h4Rppmvg8Minfv/16QX+X9HZ6H+9WRhxQLGQNGwySdNawyrmQOdJRklpN2mA/Js/nSgdc4i9KDJIxWuMvZwIbzBbf3Ku7dmQOxsWC5PsDl5W7JPzWH2xR9AxYDvDzmomcHDGK9fKcqhUDsYxe/+wqs71bSCOCIMYfgPKVXfKaxuNpokX9CNcY1W+kD5j0/A4DuhmMqAasF7REEdrVZhsLkpr7OJMLekP9GFupJtByDgM3weoFjuMelBm0p6oMr7QkV46SgBw1DqIH7vb9Ssi7azg0W3oBsAxMrIzGSmENDNEZNMGUfi3MjI1a02QZjg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR13MB5084.namprd13.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(5660300002)(4326008)(36756003)(8676002)(64756008)(66446008)(66476007)(8936002)(71200400001)(76116006)(508600001)(6486002)(66556008)(2906002)(316002)(54906003)(66946007)(6916009)(122000001)(6506007)(186003)(2616005)(53546011)(6512007)(83380400001)(86362001)(26005)(38070700005)(38100700002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cS9udnpJclhGYW4yQ1VIV1NWUk1hdk95TTA3b1hPQUNtMDZnZU1Rc3p6Mkpj?= =?utf-8?B?c0Q4U01MMmpUTlY0eGwwZkZjK2RxZjY4c25UREJvVThxb0dqbWFrNldmbjBS?= =?utf-8?B?dndQVkVyOGFMV3YrOTQ1NDk3VzdTZG4vRlN6a2g0c2NHNWs5VGE0QUNiK2Zo?= =?utf-8?B?RXkxWWtZUVprallzc3dwTHZScnVuOVlDNFkrNDAwSndvNjBXNms0VVp0THJj?= =?utf-8?B?YUZhZTdQUjNEeC9JdStHZTZndmdEb3NpbUhYQnNzQzUvQldJbzloOWNoYm1R?= =?utf-8?B?bERkdGNJUDBCZzc1T29ZdzFudEdNaWFSTmVEa2NuN0ZTWDFZbTBQSE85ME93?= =?utf-8?B?eG5URTUyc0FtSjgvalRpNHdSWElSMGxCdHJsQ0VXYVZnd3Jvd254MTcvZ1k4?= =?utf-8?B?blpRVFM1NkdNRU1SVTJEZlVFdzg0cGxMRDF1eGZpd1hjTmNndlM0Vld0QzRt?= =?utf-8?B?NWtZdjd6bDN1Q3A3T09CNnhGbGZoTFZYNm1Sdk8vSW9sSG5HNEVSU09vbTNI?= =?utf-8?B?VzNCb29sZDZaWkZvVk9VM0FRbUF4a1lnUjNCYW9LVlZmMWhKdk1nZnh4bWVo?= =?utf-8?B?SVVHTjQ3dytXRXlrcVEzdlRYcTBSdDBGdnNXU1ljdDVLcHhrcVowWEhoeDdq?= =?utf-8?B?NkpsREtLN2VxTEIwRDkwZXhTSHV2ZldKV0pUNFo0UDJjUHlIZzZkZEZKcGV4?= =?utf-8?B?aU8veFUrT2d2N0tCdzF4Y2FaUEN6eVg3SzlQSUtONUJOdk44WHRlTTBRbTBn?= =?utf-8?B?V3QwREs1bGRTSTBmWWZaeXVrcWRsUm8wVEhVUWNlWEdFSEVHQ3BDeVF2MVdX?= =?utf-8?B?WENHRHBqS1BRdklDTGFOQkVsQlpiVFZvMEU1aVNnTU1GZEVxc0J1WjRQRVB1?= =?utf-8?B?WlluWnRGYkZ4cmlYQVlTVWx3Q2VKVGFVQlVrYmFTUFRyT1RzSnJTeWVxVDhZ?= =?utf-8?B?L2ZTY3FZcmcxM0lqUmZmM2UwZ3Z6MXd5YzRPbUs1RFdiQkhQQ2NCaVZreEMz?= =?utf-8?B?bkEyS3lCYk85WXlqV21UUzFxWmY0aHBBVFYrTG1YWVo0MHRRT1cxZk5DY2t4?= =?utf-8?B?Qlp6anRnSWRmYkd4dUhDNHc5Wm1WU0V6UlhSSUp4aEw5aC92eVRjeXQxYVQr?= =?utf-8?B?V3IyMWdtT2FrckZXS3J2TTVZTHkycktPSFczbmJWT0pkTVlpa28zam9hSWNL?= =?utf-8?B?Z2VUQnoySHpsQyszN3JBSHhCcElEdVEvME5UK01ua2piYXNqM2dvdTFUWU1K?= =?utf-8?B?SFpqdWNBUXUyZ3k5ZlNqVHlkOTBaeVUxdmhEdnZIMnVjK1c3U2g5c0h1ZXJj?= =?utf-8?B?STIzNHRZa1VjS1FBODdCNjNEZzF5THJ3clFUdzRnb01rUWVXcHJqQVBBYzdV?= =?utf-8?B?MTZ2alZSaTdtc0wzNWJBQ3FrcW9lL3JNNDRBZnJuU1RNN3dSZGNZTCtYU0pY?= =?utf-8?B?dHdQcVdneUw5YjdzS3hmY3BBU3V3QnliQ3p3RmNqYk1TdVV2azJsS0NndGFZ?= =?utf-8?B?V20yZEoySWk0SnlCL2NDOWNkTWh0Q3VMWUZzLzIwTzBEanFqOC9mUjNYcmRM?= =?utf-8?B?YzJnQkJ6VCtuc0tsQldranlKaDNMZmh3dVltYjFWNUNIRkE1SFJ3c2RqMXRN?= =?utf-8?B?bHY1b2w5a29xREtwNnM0bWJaVjQwNDV5YjRlWW1teFVZeXNvMHp2Q0dYa0c0?= =?utf-8?B?bEpYSDMxMkNwUmpqdWRVNzFJS3JYQS9KckE0RVZsWHZ4VXZFa3ZOQlNZYkxk?= =?utf-8?B?RDJKY0lYc0tQTUJmdGNlV2RLN1ZYV1RPSHphcEZ4MGNlOUNnYnZYV2ZLMTdL?= =?utf-8?B?Uy9tem52d0tLOTZNTlY2Z05Mb24vS0RtMUlETWxsTnpWUDROTXFrRkxoRjVT?= =?utf-8?B?R2lnTFJaUWcyaW9CUWdteExzZVdsVjRNS1RtTnJVNEhLTDRHK1orSVdiajdl?= =?utf-8?B?cHRFTzg3SG9QeFBURzMyeU9qSzlwOGVyejkxK0YwN1Zza2M5ZmM4TmZ0Nnli?= =?utf-8?B?N2Z1d2E3K2JLWW05ek9pckFJU2x3bitCalBzeUNJcWFrMU5HQWlnbXF0ZmdP?= =?utf-8?B?WUl2WWJIS2xmeVVoVTFGU3hCNmlQWGJWSUdGTk5nY0lKajFveE5jNTd2S1dq?= =?utf-8?B?bGVRWDIrV2cwajJyRHROUzRoZFREczhwV1VmUTI5WTM2QTc2aU10WE1vb2FF?= =?utf-8?B?SVY3SE92Y3Y2eVA0WGxqd0hFQzVZeWl4SUw3eDVMTE5JQ0JRS2VPZU1mclYr?= =?utf-8?B?L1VCWHh4cW5WWGtWNG1NK01SUnUwSDdlRHlKZXh0ZEpES0x0QnlPTlhiazlw?= =?utf-8?B?OUc1VGJlMTRabE5tNk1nb1c5SkhBKzM1cldUbHZUMHd6N0FjeWJZcERCdElQ?= =?utf-8?Q?ZIW8by0erkNSo0kc=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: <9DFEB19C636FAC46BFB574F8153D3018@namprd13.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: hammerspace.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH0PR13MB5084.namprd13.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 17edbfed-9acb-462e-36c8-08da34f40863 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 May 2022 15:19:54.3106 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 0d4fed5c-3a70-46fe-9430-ece41741f59e X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: HDm3gJvFyjrmp6bvNR58ARPBja1iQc04gwuWwRhjh5zQagSQzH2XRLntRT4Z2UD6S1fVv+luQOKWdrI4DGEmfA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR13MB3787 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org T24gRnJpLCAyMDIyLTA1LTEzIGF0IDE0OjU5ICswMDAwLCBDaHVjayBMZXZlciBJSUkgd3JvdGU6 DQo+IA0KPiANCj4gPiBPbiBNYXkgMTMsIDIwMjIsIGF0IDk6MzAgQU0sIFRyb25kIE15a2xlYnVz dA0KPiA+IDx0cm9uZG15QGhhbW1lcnNwYWNlLmNvbT4gd3JvdGU6DQo+ID4gDQo+ID4gT24gRnJp LCAyMDIyLTA1LTEzIGF0IDA3OjU4IC0wNDAwLCBEZW5uaXMgRGFsZXNzYW5kcm8gd3JvdGU6DQo+ ID4gPiBPbiA1LzYvMjIgOToyNCBBTSwgRGVubmlzIERhbGVzc2FuZHJvIHdyb3RlOg0KPiA+ID4g PiBPbiA0LzI5LzIyIDk6MzcgQU0sIENodWNrIExldmVyIElJSSB3cm90ZToNCj4gPiA+ID4gPiAN Cj4gPiA+ID4gPiANCj4gPiA+ID4gPiA+IE9uIEFwciAyOSwgMjAyMiwgYXQgODo1NCBBTSwgRGVu bmlzIERhbGVzc2FuZHJvDQo+ID4gPiA+ID4gPiA8ZGVubmlzLmRhbGVzc2FuZHJvQGNvcm5lbGlz bmV0d29ya3MuY29tPiB3cm90ZToNCj4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gT24gNC8yOC8y MiAzOjU2IFBNLCBUcm9uZCBNeWtsZWJ1c3Qgd3JvdGU6DQo+ID4gPiA+ID4gPiA+IE9uIFRodSwg MjAyMi0wNC0yOCBhdCAxNTo0NyAtMDQwMCwgRGVubmlzIERhbGVzc2FuZHJvDQo+ID4gPiA+ID4g PiA+IHdyb3RlOg0KPiA+ID4gPiA+ID4gPiA+IE9uIDQvMjgvMjIgMTE6NDIgQU0sIERlbm5pcyBE YWxlc3NhbmRybyB3cm90ZToNCj4gPiA+ID4gPiA+ID4gPiA+IE9uIDQvMjgvMjIgMTA6NTcgQU0s IENodWNrIExldmVyIElJSSB3cm90ZToNCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBPbiBBcHIgMjgs IDIwMjIsIGF0IDk6MDUgQU0sIERlbm5pcyBEYWxlc3NhbmRybw0KPiA+ID4gPiA+ID4gPiA+ID4g PiA+IDxkZW5uaXMuZGFsZXNzYW5kcm9AY29ybmVsaXNuZXR3b3Jrcy5jb20+IHdyb3RlOg0KPiA+ ID4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IEhpIE5GUyBmb2xrcywN Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBJJ3ZlIG5vdGlj ZWQgYSBwcmV0dHkgbmFzdHkgcmVncmVzc2lvbiBpbiBvdXIgTkZTDQo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gY2FwYWJpbGl0eQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IGJldHdlZW4gNS4xNyBhbmQN Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA1LjE4LXJjMS4gSSd2ZSB0cmllZCB0byBiaXNlY3QgYnV0 IG5vdCBoYXZpbmcgYW55DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gbHVjay4gVGhlDQo+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gcHJvYmxlbSBJJ20gc2VlaW5nDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4g aXMgaXQgdGFrZXMgMyBtaW51dGVzIHRvIGNvcHkgYSBmaWxlIGZyb20gTkZTIHRvDQo+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gdGhlDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gbG9jYWwNCj4gPiA+ID4g PiA+ID4gPiA+ID4gPiBkaXNrLiBXaGVuIGl0IHNob3VsZA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ IHRha2UgbGVzcyB0aGFuIGhhbGYgYSBzZWNvbmQsIHdoaWNoIGl0IGRpZCB1cA0KPiA+ID4gPiA+ ID4gPiA+ID4gPiA+IHRocm91Z2gNCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA1LjE3Lg0KPiA+ID4g PiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IEl0IGRvZXNuJ3Qgc2VlbSB0 byBiZSBuZXR3b3JrIHJlbGF0ZWQsIGJ1dCBjYW4ndA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IHJ1 bGUNCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiB0aGF0IG91dA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ IGNvbXBsZXRlbHkuDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gSSB0cmllZCB0byBiaXNlY3QgYnV0IHRoZSBwcm9ibGVtIGNhbiBiZQ0KPiA+ID4gPiA+ID4g PiA+ID4gPiA+IGludGVybWl0dGVudC4gU29tZQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IHJ1bnMg SSdsbCBzZWUgYQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IHByb2JsZW0gaW4gMyBvdXQgb2YgMTAw IGN5Y2xlcywgc29tZXRpbWVzIDAgb3V0DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gb2YNCj4gPiA+ ID4gPiA+ID4gPiA+ID4gPiAxMDAuDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gU29tZXRpbWVzIEkn bGwgc2VlIGl0DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gMTAwIG91dCBvZiAxMDAuDQo+ID4gPiA+ ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gPiBJdCdzIG5vdCBjbGVhciBmcm9tIHlv dXIgcHJvYmxlbSByZXBvcnQgd2hldGhlciB0aGUNCj4gPiA+ID4gPiA+ID4gPiA+ID4gcHJvYmxl bQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiBhcHBlYXJzDQo+ID4gPiA+ID4gPiA+ID4gPiA+IHdoZW4g aXQncyB0aGUgc2VydmVyIHJ1bm5pbmcgdjUuMTgtcmMgb3IgdGhlDQo+ID4gPiA+ID4gPiA+ID4g PiA+IGNsaWVudC4NCj4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gVGhhdCdz IGJlY2F1c2UgSSBkb24ndCBrbm93IHdoaWNoIGl0IGlzLiBJJ2xsIGRvIGENCj4gPiA+ID4gPiA+ ID4gPiA+IHF1aWNrDQo+ID4gPiA+ID4gPiA+ID4gPiB0ZXN0IGFuZA0KPiA+ID4gPiA+ID4gPiA+ ID4gZmluZCBvdXQuIEkNCj4gPiA+ID4gPiA+ID4gPiA+IHdhcyB0ZXN0aW5nIHRoZSBzYW1lIGtl cm5lbCBhY3Jvc3MgYm90aCBub2Rlcy4NCj4gPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4g PiBMb29rcyBsaWtlIGl0IGlzIHRoZSBjbGllbnQuDQo+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ ID4gPiA+ID4gc2VydmVywqAgY2xpZW50wqAgcmVzdWx0DQo+ID4gPiA+ID4gPiA+ID4gLS0tLS0t wqAgLS0tLS0twqAgLS0tLS0tDQo+ID4gPiA+ID4gPiA+ID4gNS4xN8KgwqDCoCA1LjE3wqDCoMKg IFBhc3MNCj4gPiA+ID4gPiA+ID4gPiA1LjE3wqDCoMKgIDUuMTjCoMKgwqAgRmFpbA0KPiA+ID4g PiA+ID4gPiA+IDUuMTjCoMKgwqAgNS4xOMKgwqDCoCBGYWlsDQo+ID4gPiA+ID4gPiA+ID4gNS4x OMKgwqDCoCA1LjE3wqDCoMKgIFBhc3MNCj4gPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4g PiBJcyB0aGVyZSBhIHBhdGNoIGZvciB0aGUgY2xpZW50IGlzc3VlIHlvdSBtZW50aW9uZWQNCj4g PiA+ID4gPiA+ID4gPiB0aGF0IEkNCj4gPiA+ID4gPiA+ID4gPiBjb3VsZCB0cnk/DQo+ID4gPiA+ ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gLURlbm55DQo+ID4gPiA+ID4gPiA+IA0KPiA+ID4g PiA+ID4gPiBUcnkgdGhpcyBvbmUNCj4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gVGhhbmtzIGZv ciB0aGUgcGF0Y2guIFVuZm9ydHVuYXRlbHkgaXQgZG9lc24ndCBzZWVtIHRvDQo+ID4gPiA+ID4g PiBzb2x2ZQ0KPiA+ID4gPiA+ID4gdGhlIGlzc3VlLCBzdGlsbA0KPiA+ID4gPiA+ID4gc2VlIGlu dGVybWl0dGVudCBoYW5ncy4gSSBhcHBsaWVkIGl0IG9uIHRvcCBvZiAtcmM0Og0KPiA+ID4gPiA+ ID4gDQo+ID4gPiA+ID4gPiBjb3B5IC9tbnQvbmZzX3Rlc3QvcnVuX25mc190ZXN0Lmp1bmsgdG8N Cj4gPiA+ID4gPiA+IC9kZXYvc2htL3J1bl9uZnNfdGVzdC50bXAuLi4NCj4gPiA+ID4gPiA+IA0K PiA+ID4gPiA+ID4gcmVhbMKgwqDCoCAybTYuMDcycw0KPiA+ID4gPiA+ID4gdXNlcsKgwqDCoCAw bTAuMDAycw0KPiA+ID4gPiA+ID4gc3lzwqDCoMKgwqAgMG0wLjI2M3MNCj4gPiA+ID4gPiA+IERv bmUNCj4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gV2hpbGUgaXQgd2FzIGh1bmcgSSBjaGVja2Vk IHRoZSBtZW0gdXNhZ2Ugb24gdGhlIG1hY2hpbmU6DQo+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ ICMgZnJlZSAtaA0KPiA+ID4gPiA+ID4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHRvdGFswqDC oMKgwqDCoMKgwqAgdXNlZMKgwqDCoMKgwqDCoMKgIGZyZWXCoMKgwqDCoMKgIHNoYXJlZCANCj4g PiA+ID4gPiA+IGJ1ZmYvY2FjaGXCoMKgIGF2YWlsYWJsZQ0KPiA+ID4gPiA+ID4gTWVtOsKgwqDC oMKgwqDCoMKgwqDCoMKgIDYyR2nCoMKgwqDCoMKgwqAgODcxTWnCoMKgwqDCoMKgwqDCoCA2MUdp wqDCoMKgwqDCoMKgDQo+ID4gPiA+ID4gPiAzNDJNacKgwqDCoMKgwqAgDQo+ID4gPiA+ID4gPiA4 ODlNacKgwqDCoMKgwqDCoMKgIDYxR2kNCj4gPiA+ID4gPiA+IFN3YXA6wqDCoMKgwqDCoMKgwqDC oCA0LjBHacKgwqDCoMKgwqDCoMKgwqDCoCAwQsKgwqDCoMKgwqDCoCA0LjBHaQ0KPiA+ID4gPiA+ ID4gDQo+ID4gPiA+ID4gPiBEb2Vzbid0IGFwcGVhciB0byBiZSB1bmRlciBtZW1vcnkgcHJlc3N1 cmUuDQo+ID4gPiA+ID4gDQo+ID4gPiA+ID4gSGksIHNpbmNlIHlvdSBrbm93IG5vdyB0aGF0IGl0 IGlzIHRoZSBjbGllbnQsIHBlcmhhcHMgYQ0KPiA+ID4gPiA+IGJpc2VjdA0KPiA+ID4gPiA+IHdv dWxkIGJlIG1vcmUgc3VjY2Vzc2Z1bD8NCj4gPiA+ID4gDQo+ID4gPiA+IEkndmUgYmVlbiB0ZXN0 aW5nIGFsbCB3ZWVrLiBJIHB1bGxlZCB0aGUgbmZzLXJkbWEgdHJlZSB0aGF0IHdhcw0KPiA+ID4g PiBzZW50IHRvIExpbnVzDQo+ID4gPiA+IGZvciA1LjE4IGFuZCB0ZXN0ZWQuIEkgc2VlIHRoZSBw cm9ibGVtIG9uIHByZXR0eSBtdWNoIGFsbCB0aGUNCj4gPiA+ID4gcGF0Y2hlcy4gSG93ZXZlcg0K PiA+ID4gPiBpdCdzIHRoZSBmcmVxdWVuY3kgdGhhdCBpdCBoaXRzIHdoaWNoIGNoYW5nZXMuDQo+ ID4gPiA+IA0KPiA+ID4gPiBJJ2xsIHNlZSAxLTUgY3ljbGVzIG91dCBvZiAyNTAwIHdoZXJlIHRo ZSBjb3B5IHRha2VzIG1pbnV0ZXMgdXANCj4gPiA+ID4gdG86DQo+ID4gPiA+ICJORlM6IENvbnZl cnQgcmVhZGRpciBwYWdlIGNhY2hlIHRvIHVzZSBhIGNvb2tpZSBiYXNlZCBpbmRleCINCj4gPiA+ ID4gDQo+ID4gPiA+IEFmdGVyIHRoaXMgSSBzdGFydCBzZWVpbmcgaXQgYXJvdW5kIDEwIHRpbWVz IGluIDUwMCBhbmQgYnkgdGhlDQo+ID4gPiA+IGxhc3QNCj4gPiA+ID4gcGF0Y2ggMTANCj4gPiA+ ID4gdGltZXMgaW4gbGVzcyB0aGFuIDEwMC4NCj4gPiA+ID4gDQo+ID4gPiA+IElzIHRoZXJlIGFu eSBraW5kIG9mIHRyYWNpbmcvZGVidWdnaW5nIEkgY291bGQgdHVybiBvbiB0byBnZXQNCj4gPiA+ ID4gbW9yZQ0KPiA+ID4gPiBpbnNpZ2h0IG9uDQo+ID4gPiA+IHdoYXQgaXMgdGFraW5nIHNvIGxv bmcgd2hlbiBpdCBkb2VzIGdvIGJhZD8NCj4gPiA+ID4gDQo+ID4gPiANCj4gPiA+IFJhbiBhIHRl c3Qgd2l0aCAtcmM2IGFuZCB0aGlzIHRpbWUgc2VlIGEgaHVuZyB0YXNrIHRyYWNlIG9uIHRoZQ0K PiA+ID4gY29uc29sZSBhcyB3ZWxsDQo+ID4gPiBhcyBhbiBORlMgUlBDIGVycm9yLg0KPiA+ID4g DQo+ID4gPiBbMzI3MTkuOTkxMTc1XSBuZnM6IFJQQyBjYWxsIHJldHVybmVkIGVycm9yIDUxMg0K PiA+ID4gLg0KPiA+ID4gLg0KPiA+ID4gLg0KPiA+ID4gWzMyOTMzLjI4NTEyNl0gSU5GTzogdGFz ayBrd29ya2VyL3UxNDU6MjM6ODg2MTQxIGJsb2NrZWQgZm9yIG1vcmUNCj4gPiA+IHRoYW4gMTIy IHNlY29uZHMuDQo+ID4gPiBbMzI5MzMuMjkzNTQzXcKgwqDCoMKgwqDCoCBUYWludGVkOiBHIFPC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgNS4xOC4wLXJjNiAjMQ0KPiA+ID4gWzMyOTMz LjI5OTg2OV0gImVjaG8gMCA+IC9wcm9jL3N5cy9rZXJuZWwvaHVuZ190YXNrX3RpbWVvdXRfc2Vj cyINCj4gPiA+IGRpc2FibGVzIHRoaXMNCj4gPiA+IG1lc3NhZ2UuDQo+ID4gPiBbMzI5MzMuMzA4 NzQwXSB0YXNrOmt3b3JrZXIvdTE0NToyMyBzdGF0ZTpEIHN0YWNrOsKgwqDCoCAwDQo+ID4gPiBw aWQ6ODg2MTQxDQo+ID4gPiBwcGlkOsKgwqDCoMKgIDINCj4gPiA+IGZsYWdzOjB4MDAwMDQwMDAN Cj4gPiA+IFszMjkzMy4zMTgzMjFdIFdvcmtxdWV1ZTogcnBjaW9kIHJwY19hc3luY19zY2hlZHVs ZSBbc3VucnBjXQ0KPiA+ID4gWzMyOTMzLjMyNDUyNF0gQ2FsbCBUcmFjZToNCj4gPiA+IFszMjkz My4zMjczNDddwqAgPFRBU0s+DQo+ID4gPiBbMzI5MzMuMzI5Nzg1XcKgIF9fc2NoZWR1bGUrMHgz ZGQvMHg5NzANCj4gPiA+IFszMjkzMy4zMzM3ODNdwqAgc2NoZWR1bGUrMHg0MS8weGEwDQo+ID4g PiBbMzI5MzMuMzM3Mzg4XcKgIHhwcnRfcmVxdWVzdF9kZXF1ZXVlX3hwcnQrMHhkMS8weDE0MCBb c3VucnBjXQ0KPiA+ID4gWzMyOTMzLjM0MzYzOV3CoCA/IHByZXBhcmVfdG9fd2FpdCsweGQwLzB4 ZDANCj4gPiA+IFszMjkzMy4zNDgxMjNdwqAgPyBycGNfZGVzdHJveV93YWl0X3F1ZXVlKzB4MTAv MHgxMCBbc3VucnBjXQ0KPiA+ID4gWzMyOTMzLjM1NDE4M13CoCB4cHJ0X3JlbGVhc2UrMHgyNi8w eDE0MCBbc3VucnBjXQ0KPiA+ID4gWzMyOTMzLjM1OTE2OF3CoCA/IHJwY19kZXN0cm95X3dhaXRf cXVldWUrMHgxMC8weDEwIFtzdW5ycGNdDQo+ID4gPiBbMzI5MzMuMzY1MjI1XcKgIHJwY19yZWxl YXNlX3Jlc291cmNlc190YXNrKzB4ZS8weDUwIFtzdW5ycGNdDQo+ID4gPiBbMzI5MzMuMzcxMzgx XcKgIF9fcnBjX2V4ZWN1dGUrMHgyYzUvMHg0ZTAgW3N1bnJwY10NCj4gPiA+IFszMjkzMy4zNzY1 NjRdwqAgPyBfX3N3aXRjaF90b19hc20rMHg0Mi8weDcwDQo+ID4gPiBbMzI5MzMuMzgxMDQ2XcKg ID8gZmluaXNoX3Rhc2tfc3dpdGNoKzB4YjIvMHgyYzANCj4gPiA+IFszMjkzMy4zODU5MThdwqAg cnBjX2FzeW5jX3NjaGVkdWxlKzB4MjkvMHg0MCBbc3VucnBjXQ0KPiA+ID4gWzMyOTMzLjM5MTM5 MV3CoCBwcm9jZXNzX29uZV93b3JrKzB4MWM4LzB4MzkwDQo+ID4gPiBbMzI5MzMuMzk1OTc1XcKg IHdvcmtlcl90aHJlYWQrMHgzMC8weDM2MA0KPiA+ID4gWzMyOTMzLjQwMDE2Ml3CoCA/IHByb2Nl c3Nfb25lX3dvcmsrMHgzOTAvMHgzOTANCj4gPiA+IFszMjkzMy40MDQ5MzFdwqAga3RocmVhZCsw eGQ5LzB4MTAwDQo+ID4gPiBbMzI5MzMuNDA4NTM2XcKgID8ga3RocmVhZF9jb21wbGV0ZV9hbmRf ZXhpdCsweDIwLzB4MjANCj4gPiA+IFszMjkzMy40MTM5ODRdwqAgcmV0X2Zyb21fZm9yaysweDIy LzB4MzANCj4gPiA+IFszMjkzMy40MTgwNzRdwqAgPC9UQVNLPg0KPiA+ID4gDQo+ID4gPiBUaGUg Y2FsbCB0cmFjZSBzaG93cyB1cCBhZ2FpbiBhdCAyNDUsIDM2OCwgYW5kIDQ5MSBzZWNvbmRzLiBT YW1lDQo+ID4gPiB0YXNrLCBzYW1lIHRyYWNlLg0KPiA+ID4gDQo+ID4gPiANCj4gPiA+IA0KPiA+ ID4gDQo+ID4gDQo+ID4gVGhhdCdzIHZlcnkgaGVscGZ1bC4gVGhlIGFib3ZlIHRyYWNlIHN1Z2dl c3RzIHRoYXQgdGhlIFJETUEgY29kZSBpcw0KPiA+IGxlYWtpbmcgYSBjYWxsIHRvIHhwcnRfdW5w aW5fcnFzdCgpLg0KPiANCj4gSU1ITyB0aGlzIGlzIHVubGlrZWx5IHRvIGJlIHJlbGF0ZWQgdG8g dGhlIHBlcmZvcm1hbmNlDQo+IHJlZ3Jlc3Npb24gLS0gbm9uZSBvZiB0aGlzIGNvZGUgaGFzIGNo YW5nZWQgaW4gdGhlIHBhc3QgNQ0KPiBrZXJuZWwgcmVsZWFzZXMuIENvdWxkIGJlIGEgZGlmZmVy ZW50IGlzc3VlLCB0aG91Z2guDQo+IA0KPiBBcyBpcyBvZnRlbiB0aGUgY2FzZSBpbiB0aGVzZSBz aXR1YXRpb25zLCB0aGUgSU5GTyB0cmFjZQ0KPiBhYm92ZSBoYXBwZW5zIGxvbmcgYWZ0ZXIgdGhl IGlzc3VlIHRoYXQgY2F1c2VkIHRoZSBtaXNzaW5nDQo+IHVucGluLiBTby4uLiB1bmxlc3MgRGVu bmlzIGhhcyBhIHJlcHJvZHVjZXIgdGhhdCBjYW4gdHJpZ2dlcg0KPiB0aGUgaXNzdWUgZnJlcXVl bnRseSwgSSBkb24ndCB0aGluayB0aGVyZSdzIG11Y2ggdGhhdCBjYW4NCj4gYmUgZXh0cmFjdGVk IGZyb20gdGhhdC4NCj4gDQo+IEFsc28gIm5mczogUlBDIGNhbGwgcmV0dXJuZWQgZXJyb3IgNTEy IiBzdWdnZXN0cyBzb21lb25lDQo+IGhpdCBeQyBhdCBzb21lIHBvaW50LiBJdCdzIGFsd2F5cyBw b3NzaWJsZSB0aGF0IHRoZQ0KPiB4cHJ0X3JkbWFfZnJlZSgpIHBhdGggaXMgbWlzc2luZyBhbiB1 bnBpbi4gQnV0IGFnYWluLA0KPiB0aGF0J3Mgbm90IGxpa2VseSB0byBiZSByZWxhdGVkIHRvIHBl cmZvcm1hbmNlLg0KPiANCj4gDQo+ID4gRnJvbSB3aGF0IEkgY2FuIHNlZSwgcnBjcmRtYV9yZXBs eV9oYW5kbGVyKCkgd2lsbCBhbHdheXMgY2FsbA0KPiA+IHhwcnRfcGluX3Jxc3QoKSwgYW5kIHRo YXQgY2FsbCBpcyByZXF1aXJlZCB0byBiZSBtYXRjaGVkIGJ5IGEgY2FsbA0KPiA+IHRvDQo+ID4g eHBydF91bnBpbl9ycXN0KCkgYmVmb3JlIHRoZSBoYW5kbGVyIGV4aXRzLiBIb3dldmVyIHRob3Nl IGNhbGxzIHRvDQo+ID4geHBydF91bnBpbl9ycXN0KCkgYXBwZWFyIHRvIGJlIHNjYXR0ZXJlZCBh cm91bmQgdGhlIGNvZGUsIGFuZCBpdCBpcw0KPiA+IG5vdA0KPiA+IGF0IGFsbCBvYnZpb3VzIHRo YXQgdGhlIHJlcXVpcmVtZW50IGlzIGJlaW5nIGZ1bGZpbGxlZC4NCj4gDQo+IEkgZG9uJ3QgdGhp bmsgdW5waW4gaXMgcmVxdWlyZWQgYmVmb3JlIHJwY3JkbWFfcmVwbHlfaGFuZGxlcigpDQo+IGV4 aXRzLiBJdCAvaXMvIHJlcXVpcmVkIGFmdGVyIHhwcnRfY29tcGxldGVfcnFzdCgpLCBhbmQNCj4g c29tZXRpbWVzIHRoYXQgY2FsbCBoYXMgdG8gYmUgZGVmZXJyZWQgdW50aWwgdGhlIE5JQyBpcw0K PiBmdWxseSBkb25lIHdpdGggdGhlIFJQQydzIGJ1ZmZlcnMuIFRoZSBOSUMgaXMgb2Z0ZW4gbm90 DQo+IGZpbmlzaGVkIHdpdGggdGhlIGJ1ZmZlcnMgaW4gdGhlIFJlY2VpdmUgY29tcGxldGlvbiBo YW5kbGVyLg0KPiANCj4gDQo+ID4gQ2h1Y2ssIHdoeSBkb2VzIHRoYXQgY29kZSBuZWVkIHRvIGJl IHNvIGNvbXBsZXg/DQo+IA0KPiBUaGUgb3ZlcmFsbCBnb2FsIGlzIHRoYXQgdGhlIHVwcGVyIGxh eWVyIGNhbm5vdCBiZSBhd29rZW4NCj4gdW50aWwgdGhlIE5JQyBoYXMgZmluaXNoZWQgd2l0aCB0 aGUgUlBDJ3MgaGVhZGVyIGFuZA0KPiBwYXlsb2FkIGJ1ZmZlcnMuIFRoZXNlIGJ1ZmZlcnMgYXJl IHRyZWF0ZWQgZGlmZmVyZW50bHkNCj4gZGVwZW5kaW5nIG9uIGhvdyB0aGUgc2VuZCBwYXRoIGNo b3NlIHRvIG1hcnNoYWwgdGhlIFJQQy4NCj4gDQo+IEFuZCwgYWxsIG9mIHRoZXNlIGFyZSBob3Qg cGF0aHMsIHNvIGl0J3MgaW1wb3J0YW50IHRvDQo+IGVuc3VyZSB0aGF0IHdlIGFyZSB3YWl0aW5n L2NvbnRleHQtc3dpdGNoaW5nIGFzDQo+IGluZnJlcXVlbnRseSBhcyBwb3NzaWJsZS4gV2Ugd2Fr ZSB0aGUgdXBwZXIgbGF5ZXIgd2FpdGVyDQo+IGR1cmluZyBhbiBSRE1BIGNvbXBsZXRpb24gdG8g cmVkdWNlIGNvbnRleHQgc3dpdGNoaW5nLg0KPiBUaGUgZmlyc3QgY29tcGxldGlvbiBkb2VzIG5v dCBhbHdheXMgbWVhbiB0aGVyZSdzIG5vdGhpbmcNCj4gbGVmdCBmb3IgdGhlIE5JQyB0byBkby4N Cj4gDQo+IElnbm9yaW5nIHRoZSBzZXJ2ZXIgYmFja2NoYW5uZWwsIHRoZXJlIGlzIGEgc2luZ2xl IHVucGluDQo+IGluIHRoZSAiY29tcGxldGUgd2l0aG91dCBlcnJvciIgY2FzZSBpbg0KPiBycGNy ZG1hX2NvbXBsZXRlX3Jxc3QoKS4NCj4gDQo+IFRoZXJlIGFyZSB0aHJlZSBjYWxsIHNpdGVzIGZv ciBycGNyZG1hX2NvbXBsZXRlX3Jxc3Q6DQo+IA0KPiAxLiBycGNyZG1hX3JlcGx5X2RvbmUgLSBj YWxsZWQgd2hlbiBubyBleHBsaWNpdCBpbnZhbGlkYXRpb24NCj4gaXMgbmVlZGVkIGFuZCB0aGUg UmVjZWl2ZSBjb21wbGV0aW9uIGZpcmVkIGFmdGVyIHRoZSBTZW5kDQo+IGNvbXBsZXRpb24uDQo+ IA0KPiAyLiBycGNyZG1hX3NlbmRjdHhfZG9uZSAtIGNhbGxlZCB3aGVuIG5vIGV4cGxpY2l0IGlu dmFsaWRhdGlvbg0KPiBpcyBuZWVkZWQgYW5kIHRoZSBTZW5kIGNvbXBsZXRpb24gZmlyZWQgYWZ0 ZXIgdGhlIFJlY2VpdmUNCj4gY29tcGxldGlvbi4NCj4gDQo+IDMuIGZyd3Jfd2NfbG9jYWxpbnZf ZG9uZSAtIGNhbGxlZCB3aGVuIGV4cGxpY2l0IGludmFsaWRhdGlvbg0KPiB3YXMgbmVlZGVkIGFu ZCB0aGF0IGludmFsaWRhdGlvbiBoYXMgY29tcGxldGVkLiBTUSBvcmRlcmluZw0KPiBndWFyYW50 ZWVzIHRoYXQgdGhlIFNlbmQgaGFzIGFsc28gY29tcGxldGVkIGF0IHRoaXMgcG9pbnQsDQo+IHNv IGEgc2VwYXJhdGUgd2FpdCBmb3IgU2VuZCBjb21wbGV0aW9uIGlzIG5vdCBuZWVkZWQuDQo+IA0K PiBUaGVzZSBhcmUgdGhlIHBvaW50cyB3aGVuIHRoZSBOSUMgaGFzIGZpbmlzaGVkIHdpdGggYWxs IG9mDQo+IHRoZSBtZW1vcnkgcmVzb3VyY2VzIGFzc29jaWF0ZWQgd2l0aCBhbiBSUEMsIHNvIHRo YXQncw0KPiB3aGVuIGl0IGlzIHNhZmUgdG8gd2FrZSB0aGUgd2FpdGVyIGFuZCB1bnBpbiB0aGUg UlBDLg0KPiANCg0KRnJvbSB3aGF0IEkgY2FuIHNlZSwgd2hhdCdzIGltcG9ydGFudCBpbiB0aGUg Y2FzZSBvZiBSRE1BIGlzIHRvIGVuc3VyZQ0KdGhhdCB3ZSBjYWxsIGV4YWN0bHkgMSBvZiBlaXRo ZXIgZnJ3cl91bm1hcF9hc3luYygpLCBmcndyX3VubWFwX3N5bmMoKQ0Kb3IgcnBjcmRtYV9jb21w bGV0ZV9ycXN0KCksIGFuZCB0aGF0IHdoaWNoZXZlciBvcGVyYXRpb24gd2Ugc2VsZWN0IG11c3QN CmNvbXBsZXRlZCBiZWZvcmUgd2UgY2FsbCB4cHJ0LT5vcHMtPmZyZWVfc2xvdCgpLg0KDQp4cHJ0 X3Bpbl9ycXN0KCkveHBydF91bnBpbl9ycXN0KCkgY2FuIGhlbHAgdG8gZW5zdXJlIGV4Y2x1c2lv biBiZXR3ZWVuDQp0aG9zZSAzIG9wZXJhdGlvbnMsIGJ1dCBpdCBpcyBub3QgcmVxdWlyZWQgaWYg dGhlcmUgYXJlIG90aGVyIHdheXMgdG8NCmRvIHNvLg0KSW4gZmFjdCBzaW5jZSB4cHJ0X3dhaXRf b25fcGlubmVkX3Jxc3QoKSBmb3JjZXMgYSBzeW5jaHJvbm91cyBzbGVlcCBpbg0KeHBydF9yZWxl YXNlKCksIGl0IHdvdWxkIGJlIG11Y2ggcHJlZmVyYWJsZSB0byBmaW5kIGEgYmV0dGVyIHNvbHV0 aW9uDQp0aGFuIHRvIHBpbiB0aGUgcmVxdWVzdCBpZiB5b3UgY29uY2VybiBpcyBwZXJmb3JtYW5j ZS4NCg0KLS0gDQpUcm9uZCBNeWtsZWJ1c3QNCkxpbnV4IE5GUyBjbGllbnQgbWFpbnRhaW5lciwg SGFtbWVyc3BhY2UNCnRyb25kLm15a2xlYnVzdEBoYW1tZXJzcGFjZS5jb20NCg0KDQo=