Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9B036C61DA4 for ; Fri, 3 Feb 2023 23:11:42 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232056AbjBCXLl (ORCPT ); Fri, 3 Feb 2023 18:11:41 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38112 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231261AbjBCXLk (ORCPT ); Fri, 3 Feb 2023 18:11:40 -0500 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8967F8DAD9 for ; Fri, 3 Feb 2023 15:11:38 -0800 (PST) Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 313MiS5T026351; Fri, 3 Feb 2023 23:11:24 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-id : content-transfer-encoding : mime-version; s=corp-2022-7-12; bh=3qiYCj98FcnrtrFCmy3eFjORUdu6KSj2L2o/Z1s9L8U=; b=CFuDYjQHVJjS3godHkbefe03OViE89Xaf//d5Z+R+C3cTlamGSPxviPDHrgH97LDqs8n iibim1R11KVLepPRNAcoLFFvYck9yF/1JtQM16l4GXdzNu6/AhgO1pN8tLyKEZD5dwD/ zKzFW6GgcNwTAFXC8MsCWAtGTFrARz6nLAsJiaQ/rKPGOsxqF5kOApxpgu8cGVcQc3tZ AQKfbnstP4OHiitLwSbX6M9lnVzTjtc6WOd6zcDmsD/VwEpjxPNeeI52+954NJXtNVEO t2LhcfqX/ylBNfNfIzkrHI5XTDVNa21qwUVv5yPyEgSKHAsw0bQNyM4qba6aUvbLUIfN 9A== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3nfpywptdq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 03 Feb 2023 23:11:24 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.5/8.17.1.5) with ESMTP id 313LmEch027969; Fri, 3 Feb 2023 23:11:23 GMT Received: from nam10-mw2-obe.outbound.protection.outlook.com (mail-mw2nam10lp2104.outbound.protection.outlook.com [104.47.55.104]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3nct5b7tat-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 03 Feb 2023 23:11:23 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DgqTsfFgpv0xnyeOtKd2JdxDFTsKeP+rraScc3jucQH9hPZbb+Roz4yDYWmOzyIueYN2eKsmNH4Mt1SrERtP4ZyluwfOsnhKifMX5vxcZjk6v39lpURETLx9CBk6Q23umIIScIdAjiZ/vROgjr+C6Rm0EvDXuGa7OFmLuvAg5k7XuX3NE+tQS0iTeECb8/xAsoG4iLc2ojiW7MX0gdOYk9lxo1K86ZXZqszQPEJm0L9V5RXIW5Wuj8ybUAqyqgmBiF/xqXnW4DaqJ5ky3PIYmAFGIGpQatQdvwGa7b6qDtssPGPS6bOpEJMTs7DxrcajzfloUWRYHGATt5O8cuuxSg== 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=3qiYCj98FcnrtrFCmy3eFjORUdu6KSj2L2o/Z1s9L8U=; b=M1RR7h6zdexYQBRXsEv9pFR30LMK0BvwgjBhEFovH2XvPh+NSsPnRQtVmfobTJo+84n9GPKdBD6Ltag1RQQJwdCKssSlB+i6RArW/pFnOTXSjVO0gNDpwHrIRrKY/wzfj94UNE1xn+TZ5gXZ6PkS53FSm8Le+v1NvCZ3QJmwLWe4NBy3vmufwmujrLrTZy7vTPuR4DQcdS71Rg06zx015wHqUL18Cx3FG+K7cQ4nYaG1Rs92zqn6CymKtuYcbz6M8SN1fcX/NcyHmOX4TpCIHOLc7/bUEkc9h0Q1wi+2O3J/Kc6Pg7hxXyUH9yaZ8z4/oD7HTBEsJfyVu7CRE8s2JA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3qiYCj98FcnrtrFCmy3eFjORUdu6KSj2L2o/Z1s9L8U=; b=tjdBE2hNBOTS8jL5/U5afgEaPKBXzWD/8XTWVVlk3G4a4+62jwM7LV9H6n9zOgzFs8Y/k7o+YM5wlv4E83vTQWz6NYqw+LmPaxs4jWLSSbg4cjmFrASzHS4c2TpROplBbPbfIgKK9WewOK+uvu93ojbioD9s7VXd9AgCTW0CfZk= Received: from BN0PR10MB5128.namprd10.prod.outlook.com (2603:10b6:408:117::24) by PH7PR10MB6083.namprd10.prod.outlook.com (2603:10b6:510:1f9::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6064.21; Fri, 3 Feb 2023 23:11:21 +0000 Received: from BN0PR10MB5128.namprd10.prod.outlook.com ([fe80::96a2:2d53:eb8c:b5ed]) by BN0PR10MB5128.namprd10.prod.outlook.com ([fe80::96a2:2d53:eb8c:b5ed%4]) with mapi id 15.20.6086.007; Fri, 3 Feb 2023 23:11:21 +0000 From: Chuck Lever III To: Trond Myklebust CC: Benjamin Coddington , Linux NFS Mailing List , Anna Schumaker , Hugh Dickins , Linux Memory Management List Subject: Re: git regression failures with v6.2-rc NFS client Thread-Topic: git regression failures with v6.2-rc NFS client Thread-Index: AQHZNbksRLoeBCG00EyL+s5Kt9KD6665E+wAgAEOhICAABzOgIADD6eAgAAJrwCAAAZBgIAAG46AgAANvACAACDsAIAABuGAgAAh2wCAAAxsgA== Date: Fri, 3 Feb 2023 23:11:21 +0000 Message-ID: References: <9A4A5673-691D-47EC-BC44-C43BE7E50A48@oracle.com> <5FF4061F-108C-4555-A32D-DDBFA80EE4E7@redhat.com> <44CB1E86-60E0-4CF0-9FD4-BB7E446542B7@redhat.com> <1AAC6854-2591-4B21-952A-BC58180B4091@oracle.com> <41813D21-95C8-44E3-BB97-1E9C03CE7FE5@redhat.com> <79261B77-35D0-4E36-AA29-C7BF9FB734CC@oracle.com> <104B6879-5223-485F-B099-767F741EB15B@redhat.com> <966AEC32-A7C9-4B97-A4F7-098AF6EF0067@oracle.com> <545B5AB7-93A6-496E-924E-AE882BF57B72@hammerspace.com> In-Reply-To: <545B5AB7-93A6-496E-924E-AE882BF57B72@hammerspace.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3696.120.41.1.2) x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BN0PR10MB5128:EE_|PH7PR10MB6083:EE_ x-ms-office365-filtering-correlation-id: 26e72d36-4310-4d5e-1909-08db063bf6a3 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: iLMSKM1886+4JH0GBMeQBXcM0wtb4khfmBe+rngFblfkYlW0+UkWP/5XAgB1ZorrgAO/dGyvmcZlvaGTB3IsHVmc/bElhvQTvqNwQcfn8K8/hdrIgNcFhNPosOJdchBnyLbFAjLcbs4PjLg9M2wceTiBIUK/0deFbMQOjuQ5Q91JwDJMoz3ZqK9cPv3hL21lBZ8BD/ClmXcglxq3hTn2cTg/qwN7C53I125l2+7QKxUUjzTCabHqMEPMIh1OosbdLv5/urcawjJKFajQqjkZJZ89SjoSBNOUirZ/HN11sLHlK4egVEeUknfhbYJe3w73RxEVWdXlFWHBUJpv7vgSO7P5XwnqvEp0Tftqp9ZKjirKXud0tEtEW01SD+XvH5NqVW61iwy6Vm3j0wMAQu071cMCqFrSjidPW3pFsq0/2G0cWZGWbYEpQ0q3pgKwGBYQfg7T6bKvlNQD0dxfM/YXv4iCm2+yY5sisQaNUIiqd5asHKTytabFDVd6qlINFe06eF2P/ytj91ALZ5cAvmy3bArOnhjKo+6XHelnlkYaU2zYa7jZcITK0eo9jnkXd0pJDtdB8Uzj2W2zer+yeoqCH0tdCTYFNRGgEJArGI70PFNu62B7X7DYw5VXQUJ5xXCUi9SmuY/KZmlwhE1qW4Rvd9PeYtHNXxjFCI1Mxo2qNPnSMLNwuYHRcEb5mSpm0Q2Pkm7mrwhOIJaX4reN8viC+ELI4usfPi6pgcCbQAMAF81QzazuDmynE9A+gaVMgZQt x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN0PR10MB5128.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230025)(136003)(346002)(376002)(396003)(366004)(39860400002)(451199018)(53546011)(6486002)(6512007)(6506007)(966005)(83380400001)(38070700005)(2616005)(122000001)(38100700002)(36756003)(2906002)(26005)(478600001)(86362001)(71200400001)(186003)(66476007)(66556008)(6916009)(66446008)(8676002)(66899018)(33656002)(64756008)(8936002)(91956017)(76116006)(4326008)(5660300002)(41300700001)(54906003)(66946007)(316002)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?RjJuQktrSEluNkdKbXhucE9FcUJFVVgxRW1QdVpFVnlLQ2JvaDVaY0ZzN3U5?= =?utf-8?B?L0RDNGd2YXpHNHExYUIzcnR6V3RxYnFudmd3WmpaTEJuNmhoakhBdTdYclIw?= =?utf-8?B?UkowR2lielVYalJXTy9SSUlsNEZpSTdmdEtoamUxbU4yaDdDWlBiWlMzV3Z4?= =?utf-8?B?dVZpaUIybk9FeGc0QjVmT2xrSWVwcGg4OUNzZEE4ZDlWVEQxeE02aHNnRzFP?= =?utf-8?B?eExvL1FHTXQzUW5oZHhCeERYNk5jeUpyOG9IN0ppdkcwYnpKeWFYQzNQcExy?= =?utf-8?B?bGI5ekU0QU9NSHlTdzhlU0hmYnN4aEJUazVZMkJIOGc5YTBFN3AwNHBwa1ow?= =?utf-8?B?VDJrNTN5NGY2NkNyWHh2QUFhalhPS0M1UWE3ZDRHNnp1NERBVXBVUmlPaHJx?= =?utf-8?B?VVdibjRLV3ErMnVBTjg1cXFEYVQvWWVDdkFTR0ZxZ0ttUjl0YXJwTm5rRGNr?= =?utf-8?B?SnI1Si9GZEhRRDNwZ2EzQUY4b2JUSjEzNUpmam04dWJaTmNGOW1rTGVYNnND?= =?utf-8?B?VHI5cmd5SXVNbHFrNmsxSDUwdUY3aDJ2cVRJSm5YOXg2ZXE1aWdJMHVPdTQ4?= =?utf-8?B?MmNoSjZwc2l2N3RpaGhwdms1ckFSZTRBUGZaYmp3NlBRWmJ1YU5OUVA3ZGJ4?= =?utf-8?B?aFRDVXVobkI0dUZ2S21tajRyMFowWkFhOFpxWUJtWkt5c08xL3hmNE82TUsr?= =?utf-8?B?YnFZSlJTdzdsZ2ZQLzV0Q2MwUjRna0VCYkFOTjZvZUxGVGszOEpLN2taZVlB?= =?utf-8?B?d2NFWWpOZUhiZlEwc1ZacmxBTGZHMHR5RlQyNGR6QWlTbHlFcDROWHFtdmNO?= =?utf-8?B?RzhPL0cwcWtJSEdDWTBsdlJsZVRwUHFxcWhUZVJac04wekRHdThNeWc4MThw?= =?utf-8?B?RlB5V091d0VMSkgvbWlZSTdRajJEc0Iwc3R5WE43VVIxNjZOQVF0MVhVMmR5?= =?utf-8?B?djFvbm8rTDhpdFB2dWhDeXZDSW9DaEFPTTRseUY4T3kzNGFsSHZtZGs1QTBa?= =?utf-8?B?Qk5obnV0UzNVV3VWcUVnSkZJK1VncGtsMVZ2ak1HdmJOalpLcDRkNDAvdzkx?= =?utf-8?B?WlB5SHJxYXp5cGZMaVV6SEUyL0lZWXkvZVc4SWlyV2toQ0xYSFYwY2h5cENa?= =?utf-8?B?Y2JFNkRpSlNFL0hOMzhoY1lWekpuVjNZMzJyNjB1aHFOdUFKWno3RmI3ZWtD?= =?utf-8?B?b1VaWHdoVjZZRTFrVGIxbmZjcTN0VXgyVEtGVDNBbXgvRUxFU09FVm5YN0hX?= =?utf-8?B?SCs1cmdIK3dBRWVPZGx5b1RMYWR1YmQwcDZMdGp4STQ4a3ZTV2tEQmZ2dmFE?= =?utf-8?B?S1F6amJiTWtmUk1FblFhMXRmelFmSVJzaExRdnAyay83Um1jTXpzUEZYUy9V?= =?utf-8?B?eUIwU0h5VExOYjQyaUpFdjF0VzFnRFo5RFcwcSs2VlFLZEE2WkFZZGtCZU1x?= =?utf-8?B?WTJzYWkzWks2WEVhODhHUXRLSm5OaUovWXZGdWhpRUhVSkorR05POWVGY1A5?= =?utf-8?B?RGpNQlZxZzAxaHA0dE5oUitteUhERWlzR05nb3dVcHlXOWdLOWNub2JYODBM?= =?utf-8?B?LzFzaG91YnJ4ck1ubG5pQ2piUndTWXVoeHRQeVNBeWszUFVoTTk2NnVmN1dh?= =?utf-8?B?dXl1VW9LdGJyRVJLQ2thVmcwcjZ3YTVrcllya0JGcmJvTFZkTTVpSC9LOUd2?= =?utf-8?B?andPaXZwWVhITks5ZExDZlhwaWk1bCt1Z0pHbEhla1hrSGpFbGZ0azArbVdm?= =?utf-8?B?aThCaS94dWRzRGMrT1NLWXhXMjZxUGdjanlNS3g0bW5QenpUODZJcVRhZnY2?= =?utf-8?B?TDN3WTBKSjg3ejQwbGN5V2FXbkRqOUZNTDlDeUNhZnFXeUQ3N1dnZUFzV0ds?= =?utf-8?B?bndIRWJOSVR6K2JsTmlRTlRWNnBhOW1HNERFdTVtZ3pWSXc3Wk8zTklXSVpa?= =?utf-8?B?ZmYzZUlyOHYyTEVDZHQ1T2M5RllOSXNLU0oxY0VMaHdjUWl1YTZKUklEbFM5?= =?utf-8?B?VzcxanR3ZW1Hcms2VHBkNU41bzNiM3Y0VlJwYi9YVEg3L2E4Qi83TkxIczQv?= =?utf-8?B?OFZ1Q0d3TWpDNHRYUlFldzdwcXFaV0U2WklSMTJPd3d2bW11Q2VyVGxBUGZP?= =?utf-8?B?YkRMamxpRFUwaUlmM3hVRytsRVlwYmE1T3NlWjMwOVNTMXl4WW80aEMzZjRZ?= =?utf-8?B?aWc9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: <6AD41F0D50E14B4B9D3F2487C3F8BBAE@namprd10.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: cpX1r8AzXy0xXq89YGNkH2UO53P21hgfCGxXpTq7R8mtCQAw2srpTMGQ75KMKr1uDIEAHUuMtO9/JbqoNr+ZEjxG7fKs8fPfr3eA6+lkWdTtUMpAdgSXco8rZmTKnEBqIC0ROK96fLTEqpB8292NJdbxYIqqkfOpg7A2Lh0JzqAgT95f9bgK2wQmh3i/gy400nCq32nlh5UDlMNmQLxxGL6gs/YjtNT8MGLXhVnswCdedV5QC8s6PqApXr4T5Rj178ThaC029CY2LEKiHWc40IQy0ss35lzFEVH2Rxl0G5a/H4/fI5Ls/8ooqe0yXLwiJ4dTjofqaotiia41VS/cKUnqHRNmAILclLWt9KocQ07KIDGJ/GkaVJMe3U5pMdSHycq676uOnicXCgGPkR932abyEStTzB9XN52sb28+jKCkMJgUveeF5WOUQ8ahb03f3NsFMxizPub9rJ/JDcWpM009z7DWVAlBXq3QgB4ZXkZCKqsa/8QwxVi8DLqw8tOG+wU9QWCdeM/ujYoh6sqyYJXrJdUuyyRKM7/73RhCNcxT2rMA6jRakPjE3OMJGh5Tdz9+kW8xt89BKs4Y/H6mWnY4lyCF1iT3pQN7KsFU2a2Kq2CRJqRDsbgkY9DptqHkNFMLWi5jSbDoraised/dfeccJCoq1bsAK9Rw1eMfVVLXRGf6kaq1dU3WkGyrzsiTi0OYzUd3mokjY2c4fLgG0l+9q0jxSmhnH1v009HwGq1wqX0vvcPFHnitADfvjIDDEzfKBed3TL0021n1zIyNzTly24ugZ8ZihQTHK4rNeQ8p8FIcdNNQAc8baQO/Rc1F+tjZtXkgRM+VX41AmUtSYmlfwi6RxdDMD0g7xhRrQYO1WHcDoK3SMJs0RPUOA9y6uPTzDQw7T/On9M+k78KXxXp7gxGqLouvD3/chUPaC9I= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN0PR10MB5128.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 26e72d36-4310-4d5e-1909-08db063bf6a3 X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Feb 2023 23:11:21.3466 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 6TiVdqgU1k7/+/TNdqyChX8EghkQnT7e3h+xNGNlBatNdxYQTOXrcQML2xq5MXxnqB3YgH10Y9myQSQ9GptUMw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR10MB6083 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.219,Aquarius:18.0.930,Hydra:6.0.562,FMLib:17.11.122.1 definitions=2023-02-03_19,2023-02-03_01,2022-06-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 adultscore=0 suspectscore=0 mlxscore=0 spamscore=0 phishscore=0 bulkscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2212070000 definitions=main-2302030208 X-Proofpoint-GUID: PHAgC7wotIdQYags0dt6rLsn5R6GAcqc X-Proofpoint-ORIG-GUID: PHAgC7wotIdQYags0dt6rLsn5R6GAcqc Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org DQoNCj4gT24gRmViIDMsIDIwMjMsIGF0IDU6MjYgUE0sIFRyb25kIE15a2xlYnVzdCA8dHJvbmRt eUBoYW1tZXJzcGFjZS5jb20+IHdyb3RlOg0KPiANCj4gDQo+IA0KPj4gT24gRmViIDMsIDIwMjMs IGF0IDE1OjI1LCBDaHVjayBMZXZlciBJSUkgPGNodWNrLmxldmVyQG9yYWNsZS5jb20+IHdyb3Rl Og0KPj4gDQo+PiANCj4+IA0KPj4+IE9uIEZlYiAzLCAyMDIzLCBhdCAzOjAxIFBNLCBCZW5qYW1p biBDb2RkaW5ndG9uIDxiY29kZGluZ0ByZWRoYXQuY29tPiB3cm90ZToNCj4+PiANCj4+PiBPbiAz IEZlYiAyMDIzLCBhdCAxMzowMywgQ2h1Y2sgTGV2ZXIgSUlJIHdyb3RlOg0KPj4+PiBOYWl2ZSBz dWdnZXN0aW9uOiBXb3VsZCBhbm90aGVyIG9wdGlvbiBiZSB0byBhZGQgc2VydmVyDQo+Pj4+IHN1 cHBvcnQgZm9yIHRoZSBkaXJlY3RvcnkgdmVyaWZpZXI/DQo+Pj4gDQo+Pj4gSSBkb24ndCB0aGlu ayBpdCB3b3VsZCByZXNvbHZlIHRoaXMgYnVnLCBiZWNhdXNlIHdoYXQgY2FuIHRoZSBjbGllbnQg ZG8gdG8NCj4+PiBmaW5kIGl0cyBwbGFjZSBpbiB0aGUgZGlyZWN0b3J5IHN0cmVhbSBhZnRlciBn ZXR0aW5nIE5GUzRFUlJfTk9UX1NBTUU/DQo+Pj4gDQo+Pj4gRGlyZWN0b3J5IHZlcmlmaWVycyBt aWdodCBoZWxwIGFub3RoZXIgY2xhc3Mgb2YgYnVncywgd2hlcmUgYSBsaW5lYXIgd2Fsaw0KPj4+ IHRocm91Z2ggdGhlIGRpcmVjdG9yeSBwcm9kdWNlcyBkdXBsaWNhdGUgZW50cmllcy4uIGJ1dCBJ IHRoaW5rIGl0IG9ubHkgaGVscHMNCj4+PiBzb21lIG9mIHRob3NlIGNhc2VzLg0KPj4+IA0KPj4+ IEtuZnNkIC9jb3VsZC8gdXNlIHRoZSBkaXJlY3RvcnkgdmVyaWZpZXIgdG8ga2VlcCBhIHJlZmVy ZW5jZSB0byBhbiBvcGVuZWQNCj4+PiBkaXJlY3RvcnkuICBQZXJoYXBzIGtuZnNkJ3Mgb3BlbiBm aWxlIGNhY2hlIGNhbiBiZSB1c2VkLiAgVGhlbiwgYXMgbG9uZyBhcw0KPj4+IHdlJ3JlIGRvaW5n IGEgbGluZWFyIHdhbGsgdGhyb3VnaCB0aGUgZGlyZWN0b3J5LCB0aGUgbG9jYWwgZGlyZWN0b3J5 J3MNCj4+PiBmaWxlLT5wcml2YXRlIGN1cnNvciB3b3VsZCBjb250aW51ZSB0byBiZSB2YWxpZCB0 byBwcm9kdWNlIGNvbnNpc3RlbnQgbGluZWFyDQo+Pj4gcmVzdWx0cyBldmVuIGlmIHRoZSBkZW50 cmllcyBhcmUgcmVtb3ZlZCBpbiBiZXR3ZWVuIGNhbGxzIHRvIFJFQURESVIuDQo+Pj4gDQo+Pj4g Li4gYnV0IHRoYXQncyBub3QgaG93IHRoZSB2ZXJpZmllciBpcyBzdXBwb3NlZCB0byBiZSB1c2Vk IC0gcmF0aGVyIGl0J3MNCj4+PiBzdXBwb3NlZCB0byBzaWduYWwgd2hlbiB0aGUgY2xpZW50J3Mg Y29va2llcyBhcmUgaW52YWxpZCwgd2hpY2gsIGZvciB0bXBmcywNCj4+PiB3b3VsZCBiZSBhbnl0 aW1lIGFueSBjaGFuZ2VzIGFyZSBtYWRlIHRvIHRoZSBkaXJlY3RvcnkuDQo+PiANCj4+IFJpZ2h0 LiBDaGFuZ2UgdGhlIHZlcmlmaWVyIHdoZW5ldmVyIGEgZGlyZWN0b3J5IGlzIG1vZGlmaWVkLg0K Pj4gDQo+PiAoTWFrZSBpdCBhbiBleHBvcnQgLT4gY2FsbGJhY2sgcGVyIGZpbGVzeXN0ZW0gdHlw ZSkuDQo+PiANCj4+Pj4gV2VsbCwgbGV0J3Mgbm90IGFyZ3VlIHNlbWFudGljcy4gVGhlIG9wdGlt aXphdGlvbiBleHBvc2VzDQo+Pj4+IHRoaXMgKHByZXZpb3VzbHkga25vd24pIGJ1ZyB0byBhIHdp ZGVyIHNldCBvZiB3b3JrbG9hZHMuDQo+Pj4gDQo+Pj4gT2ssIHllcy4NCj4+PiANCj4+Pj4gUGxl YXNlLCBvcGVuIHNvbWUgYnVncyB0aGF0IGRvY3VtZW50IGl0LiBPdGhlcndpc2UgdGhpcyBzdHVm Zg0KPj4+PiB3aWxsIG5ldmVyIGdldCBhZGRyZXNzZWQuIENhbid0IGZpeCB3aGF0IHdlIGRvbid0 IGtub3cgYWJvdXQuDQo+Pj4+IA0KPj4+PiBJJ20gbm90IGNsYWltaW5nIHRtcGZzIGlzIHBlcmZl Y3QuIEJ1dCB0aGUgb3B0aW1pemF0aW9uIHNlZW1zDQo+Pj4+IHRvIG1ha2UgdGhpbmdzIHdvcnNl IGZvciBtb3JlIHdvcmtsb2Fkcy4gVGhhdCdzIGFsd2F5cyBiZWVuIGENCj4+Pj4gdGV4dGJvb2sg ZGVmaW5pdGlvbiBvZiByZWdyZXNzaW9uLCBhbmQgYSBub24tc3RhcnRlciBmb3INCj4+Pj4gdXBz dHJlYW0uDQo+Pj4gDQo+Pj4gSSBndWVzcyBJIGNhbiAtIG15IGltcHJlc3Npb24gaGFzIGJlZW4g dGhlcmUncyBubyBpbnRlcmVzdCBpbiBmaXhpbmcgdG1wZnMNCj4+PiBmb3IgdXNlIG92ZXIgTkZT Li4gIGFmdGVyIG15IGxhc3Qgcm91bmQgb2Ygd29yayBvbiBpdCBJIHJlc29sdmVkIHRvIHRlbGwg YW55DQo+Pj4gY3VzdG9tZXJzIHRoYXQgYXNrZWQgZm9yIGl0IHRvIGRvOg0KPj4+IA0KPj4+IFty b290QGZlZG9yYSB+XSMgbW9kcHJvYmUgYnJkIHJkX3NpemU9MTA0ODU3NiByZF9ucj0xDQo+Pj4g W3Jvb3RAZmVkb3JhIH5dIyBta2ZzLnhmcyAvZGV2L3JhbTANCj4+PiANCj4+PiAuLiBpbnN0ZWFk LiAgVGhvdWdoLCBJIHRoaW5rIHRoYXQgdG1wZnMgaXMgZ29pbmcgdG8gaGF2ZSBiZXR0ZXIgcGVy Zm9ybWFuY2UuDQo+Pj4gDQo+Pj4+PiBJIHNwZW50IGEgZ3JlYXQgZGVhbCBvZiB0aW1lIG1ha2lu ZyBwb2ludHMgYWJvdXQgaXQgYW5kIGFyZ3VpbmcgdGhhdCB0aGUNCj4+Pj4+IGNsaWVudCBzaG91 bGQgdHJ5IHRvIHdvcmsgYXJvdW5kIHRoZW0sIGFuZCB1bHRpbWF0ZWx5IHdhcyB0b2xkIGV4YWN0 bHkgdGhpczoNCj4+Pj4+IGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2xpbnV4LW5mcy9hOTQxMTY0 MDMyOWVkMDZkZDczMDZiYmRiZGYyNTEwOTdjNWUzNDExLmNhbWVsQGhhbW1lcnNwYWNlLmNvbS8N Cj4+Pj4gDQo+Pj4+IEFoLCB3ZWxsICJjbGllbnQgc2hvdWxkIHdvcmsgYXJvdW5kIHRoZW0iIGlz IGdvaW5nIHRvIGJlIGENCj4+Pj4gbG9zaW5nIGFyZ3VtZW50IGV2ZXJ5IHRpbWUuDQo+Pj4gDQo+ Pj4gWWVhaCwgSSBhZ3JlZSB3aXRoIHRoYXQsIHRob3VnaCBhdCB0aGUgdGltZSBJIG5haXZlbHkg dGhvdWdodCB0aGUgaXNzdWVzDQo+Pj4gY291bGQgYmUgc29sdmVkIGJ5IGJldHRlciB2YWxpZGF0 aW9uIG9mIGNoYW5naW5nIGRpcmVjdG9yaWVzLg0KPj4+IA0KPj4+IFNvLi4gSSBndWVzcyBJIGxv c3Q/ICBJIHdhc24ndCBhd2FyZSBvZiB0aGUgc3RhYmxlIGNvb2tpZSBpc3N1ZXMgZnVsbHkNCj4+ PiB1bnRpbCBUcm9uZCBwb2ludGVkIHRoZW0gb3V0IGFuZCBJIGNvbXBhcmVkIHRtcGZzIGFuZCB4 ZnMuICBBdCB0aGF0IHBvaW50LCBJDQo+Pj4gc2F3IHRoZXJlJ3Mgbm90IHJlYWxseSBtdWNoIG9m IGEgcGF0aCBmb3J3YXJkIGZvciB0bXBmcywgdW5sZXNzIHdlIHdhbnQgdG8NCj4+PiB3b3JrIHBy ZXR0eSBoYXJkIGF0IGl0LiAgQnV0IHdoeT8gIEFueSBwcm9kdWN0aW9uIHNlcnZlciB3YW50aW5n IHBlcmZvcm1hbmNlDQo+Pj4gYW5kIHN0YWJpbGl0eSBvbiBhbiBORlMgZXhwb3J0IGlzbid0IGdv aW5nIHRvIHVzZSB0bXBmcyBvbiBrbmZzZC4gIFRoZXJlIGFyZQ0KPj4+IGdvb2QgbWVtb3J5LXNw ZWVkIGFsdGVybmF0aXZlcy4NCj4+IA0KPj4gSnVzdCBjdXJpb3VzLCB3aGF0IGFyZSB0aGV5PyBJ IGhhdmUgeGZzIG9uIGEgcGFpciBvZiBOVk1lDQo+PiBhZGQtaW4gY2FyZHMsIGFuZCBpdCdzIHF1 aXRlIGZhc3QuIEJ1dCB0aGF0J3MgYW4gZXhwZW5zaXZlDQo+PiByZXBsYWNlbWVudCBmb3IgdG1w ZnMuDQo+PiANCj4+IE15IHBvaW50IGlzLCB1bnRpbCBub3csIEkgaGFkIHRob3VnaHQgdGhhdCB0 bXBmcyB3YXMgYSBmdWxseQ0KPj4gc3VwcG9ydGVkIGZpbGVzeXN0ZW0gdHlwZSBmb3IgTkZTIGV4 cG9ydC4gV2hhdCBJJ20gaGVhcmluZw0KPj4gaXMgdGhhdCBzb21lIHBlb3BsZSBkb24ndCBhZ3Jl ZSwgYW5kIHdvcnNlLCBpdCdzIG5vdCBiZWVuDQo+PiBkb2N1bWVudGVkIGFueXdoZXJlLg0KPj4g DQo+PiBJZiB3ZSdyZSBub3QgZ29pbmcgdG8gc3VwcG9ydCB0bXBmcyBlbm91Z2ggdG8gZml4IHRo ZXNlDQo+PiBzaWduaWZpY2FudCBwcm9ibGVtcywgdGhlbiBpdCBzaG91bGQgYmUgbWFkZSB1bmV4 cG9ydGFibGUsDQo+PiBhbmQgdGhhdCBkZXByZWNhdGlvbiBuZWVkcyB0byBiZSBwcm9wZXJseSBk b2N1bWVudGVkLg0KPj4gDQo+PiANCj4+Pj4+IFRoZSBvcHRpbWl6YXRpb24geW91J2QgbGlrZSB0 byByZXZlcnQgZml4ZXMgYSBwZXJmb3JtYW5jZSByZWdyZXNzaW9uIG9uDQo+Pj4+PiB3b3JrbG9h ZHMgYWNyb3NzIGV4cG9ydHMgb2YgYWxsIGZpbGVzeXN0ZW1zLiAgVGhpcyBpcyBhIGZpeCB3ZSd2 ZSBoYWQgbWFueQ0KPj4+Pj4gZm9sa3MgYXNraW5nIGZvciByZXBlYXRlZGx5Lg0KPj4+PiANCj4+ Pj4gRG9lcyB0aGUgY29tbXVuaXR5IGFncmVlIHRoYXQgdG1wZnMgaGFzIG5ldmVyIGJlZW4gYSBm aXJzdC10aWVyDQo+Pj4+IGZpbGVzeXN0ZW0gZm9yIGV4cG9ydGluZz8gVGhhdCdzIG5ld3MgdG8g bWUuIEkgZG9uJ3QgcmVjYWxsIHVzDQo+Pj4+IGRlcHJlY2F0aW5nIHN1cHBvcnQgZm9yIHRtcGZz Lg0KPj4+IA0KPj4+IEknbSBkZWZpbml0ZWx5IG5vdCB0ZWxsaW5nIGZvbGtzIHRvIHVzZSBpdCBh cyBleHBvcnRlZCBmcm9tIGtuZnNkLiAgSSdtDQo+Pj4gaW5zdGVhZCB0ZWxsaW5nIHRoZW0sICJE aXJlY3RvcnkgbGlzdGluZ3MgYXJlIGdvaW5nIHRvIGJlIHVuc3RhYmxlLCB5b3UnbGwNCj4+PiBz ZWUgcHJvYmxlbXMuIiBUaGF0IGluY2x1ZGVzIGFueSBmaWxlc3lzdGVtcyB3aXRoIGZpbGVfb3Bl cmF0aW9ucyBvZg0KPj4+IHNpbXBsZV9kaXJfb3BlcmF0aW9ucy4NCj4+IA0KPj4+IFRoYXQgc2Fp ZCwgdGhlIHdob2xlIG9wZW5kaXIsIGdldGRlbnRzLCB1bmxpbmssIGdldGRlbnRzIHBhdHRlcm4g aXMgbWF5YmUNCj4+PiBmaW5lIGZvciBhIHRlc3QgdGhhdCBjYW4gYXNzdW1lIGl0IGhhcyBleGNs dXNpdmUgcmlnaHRzICh3cml0ZXM/KSB0byBhDQo+Pj4gZGlyZWN0b3J5LCBidXQgYWxzbyBwcm9i YWJseSBpbnNhbmUgZm9yIGFueXRoaW5nIGVsc2UgdGhhdCB3YW50cyB0byByZWxpYWJseQ0KPj4+ IHJlbW92ZSB0aGUgdGhpbmcsIGFuZCB3ZSdsbCBmaW5kIHRoYXQncyB3aHkgYHJtIC1yZmAgc3Rp bGwgd29ya3MuICBJdCBkb2VzDQo+Pj4gb3BlbmRpciwgZ2V0ZGVudHMsIGdldGRlbnRzLCBnZXRk ZW50cywgdW5saW5rLCB1bmxpbmssIHVubGluaywgLi4gcm1kaXIuDQo+Pj4gVGhpcyBtb3JlIGNs b3NlbHkgY29ycmVzcG9uZHMgdG8gUE9TSVggc3RhdGluZzoNCj4+PiANCj4+PiAgSWYgYSBmaWxl IGlzIHJlbW92ZWQgZnJvbSBvciBhZGRlZCB0byB0aGUgZGlyZWN0b3J5IGFmdGVyIHRoZSBtb3N0 IHJlY2VudA0KPj4+ICBjYWxsIHRvIG9wZW5kaXIoKSBvciByZXdpbmRkaXIoKSwgd2hldGhlciBh IHN1YnNlcXVlbnQgY2FsbCB0byByZWFkZGlyKCkNCj4+PiAgcmV0dXJucyBhbiBlbnRyeSBmb3Ig dGhhdCBmaWxlIGlzIHVuc3BlY2lmaWVkLg0KPj4+IA0KPj4+IA0KPj4+PiBJZiBhbiBvcHRpbWl6 YXRpb24gYnJva2UgZXh0NCwgeGZzLCBvciBidHJmcywgaXQgd291bGQgYmUNCj4+Pj4gcmV2ZXJ0 ZWQgdW50aWwgdGhlIHNpdHVhdGlvbiB3YXMgcHJvcGVybHkgYWRkcmVzc2VkLiBJIGRvbid0DQo+ Pj4+IHNlZSB3aHkgdGhlIHNpdHVhdGlvbiBpcyBkaWZmZXJlbnQgZm9yIHRtcGZzIGp1c3QgYmVj YXVzZSBpdA0KPj4+PiBoYXMgbW9yZSBidWdzLg0KPj4+IA0KPj4+IE1heWJlIGl0IGlzbid0PyAg V2UndmUgeWV0IHRvIGhlYXIgZnJvbSBhbnkgYXV0aG9yaXRhdGl2ZSBzb3VyY2VzIG9uIHRoaXMu DQo+PiANCj4+Pj4+IEkgaG9wZSB0aGUgbWFpbnRhaW5lcnMgZGVjaWRlIG5vdCB0byByZXZlcnQN Cj4+Pj4+IGl0LCBhbmQgdGhhdCB3ZSBjYW4gYWxzbyBmaW5kIGEgd2F5IHRvIG1ha2UgcmVhZGRp ciB3b3JrIHJlbGlhYmx5IG9uIHRtcGZzLg0KPj4+PiANCj4+Pj4gSU1PIHRoZSBndWlkZWxpbmVz IGdvIHRoZSBvdGhlciB3YXk6IHJlYWRkaXIgb24gdG1wZnMgbmVlZHMgdG8NCj4+Pj4gYmUgYWRk cmVzc2VkIGZpcnN0LiBSZXZlcnRpbmcgaXMgYSBsYXN0IHJlc29ydCwgYnV0IEkgZG9uJ3Qgc2Vl DQo+Pj4+IGEgZml4IGNvbWluZyBiZWZvcmUgdjYuMi4gQW0gSSB3cm9uZz8NCj4+PiANCj4+PiBJ cyB5b3VyIG9waW5pb24gd3Jvbmc/ICA6KSAgSU1PLCB5ZXMsIGJlY2F1c2UgdGhpcyBpcyBqdXN0 IGFub3RoZXIgcm91bmQgb2YNCj4+PiAid2UgZG9uJ3QgZml4IHRoZSBjbGllbnQgZm9yIGJyb2tl biBzZXJ2ZXIgYmVoYXZpb3JzIi4NCj4+IA0KPj4gSW4gZ2VuZXJhbCwgd2UgZG9uJ3QgZml4IGJy b2tlbiBzZXJ2ZXJzIG9uIHRoZSBjbGllbnQsIHRydWUuDQo+PiANCj4+IEluIHRoaXMgY2FzZSwg dGhvdWdoLCB0aGlzIGlzIGEgcmVncmVzc2lvbi4gQSBjbGllbnQgY2hhbmdlDQo+PiBicm9rZSB3 b3JrbG9hZHMgdGhhdCB3ZXJlIHdvcmtpbmcgaW4gdjYuMS4NCj4gDQo+IE5vLiBXZeKAmXZlIGhh ZCB0aGlzIGRpc2N1c3Npb24gb24gdGhlIE5GUyBtYWlsaW5nIGxpc3QgZXZlcnkgdGltZSBzb21l b25lIGludmVudHMgYSBuZXcgZmlsZXN5c3RlbSB0aGF0IHRoZXkgd2FudCB0byBleHBvcnQgYW5k IHRoZW4gY2xhaW1zIHRoYXQgdGhleSBkb27igJl0IG5lZWQgc3RhYmxlIGNvb2tpZXMgYmVjYXVz ZSB0aGUgTkZTIHByb3RvY29sIGRvZXNu4oCZdCBib3RoZXIgdG8gc3BlbGwgdGhhdCBwYXJ0IG91 dC4gVGhlIE5GUyBjbGllbnQgY2Fubm90IGFuZCB3aWxsIG5vdCBjbGFpbSBidWctZnJlZSBzdXBw b3J0IGZvciBhIGZpbGVzeXN0ZW0gdGhhdCBhc3NpZ25zIGNvb2tpZSB2YWx1ZXMgaW4gYW55IHdh eSB0aGF0IGlzIG5vdCAxMDAlIHJlcGVhdGFibGUuDQoNCk5vciBzaG91bGQgaXQuIEhvd2V2ZXI6 DQoNCkEuIHRtcGZzIGlzIG5vdCBhIG5ldyBmaWxlc3lzdGVtLg0KDQpCLiBCZW4gc2F5cyB0aGlz IGlzIG1vcmUgb3IgbGVzcyBhbiBpc3N1ZSBvbiBfYWxsXyBmaWxlc3lzdGVtcywNCmJ1dCBvdGhl cnMgbWFuYWdlIHRvIGhpZGUgaXQgZWZmZWN0aXZlbHksIGxpa2VseSBhcyBhIHNpZGUtZWZmZWN0 DQpvZiBoYXZpbmcgdG8gZGVhbCB3aXRoIHNsb3cgZHVyYWJsZSBzdG9yYWdlLiBCZWZvcmUgdGhl IG9wdGltaXphdGlvbiwNCnRtcGZzIHdvcmtlZCAid2VsbCBlbm91Z2giIGFzIHdlbGwuDQoNCkMu IElmIHdlIGRvbid0IHdhbnQgdG8gZnVsbHkgc3VwcG9ydCB0bXBmcywgdGhhdCdzIGZpbmUuIEJ1 dCBsZXQncw0KZG9jdW1lbnQgdGhhdCBwcm9wZXJseSwgcGxlYXNlLg0KDQpELiBJZiB5b3UgZ3V5 cyBrbmV3IGJlZm9yZWhhbmQgdGhhdCB0aGlzIGNoYW5nZSB3b3VsZCBicmVhayB0bXBmcw0KZXhw b3J0cywgdGhlcmUgc2hvdWxkIGhhdmUgYmVlbiBhIHdhcm5pbmcgaW4gdGhlIHBhdGNoIGRlc2Ny aXB0aW9uLg0KDQoNClRoZSBndWlkZWxpbmVzIGFib3V0IHJlZ3Jlc3Npb25zIGFyZSBjbGVhci4g SSBkb24ndCBhZ3JlZSB3aXRoDQpsZWF2aW5nIHRoZSBvcHRpbWl6YXRpb24gaW4gcGxhY2Ugd2hp bGUgdG1wZnMgaXMgbm90IHdvcmtpbmcgd2VsbA0KZW5vdWdoLiBBbmQgYWN0dWFsbHksIHRoZXNl IGlzc3VlcyBpbiB0bXBmcyBzaG91bGQgaGF2ZSBiZWVuDQphZGRyZXNzZWQgZmlyc3QuIFRoZXJl J3MgbG9hZHMgb2YgcHJlY2VkZW50IGZvciB0aGF0IHJlcXVpcmVtZW50Lg0KDQpCdXQgaXQgYXBw ZWFycyB0aGF0IGFzIHVzdWFsIEkgZG9uJ3QgaGF2ZSBtdWNoIGNob2ljZS4gV2hhdCBJIGNhbg0K ZG8gaXMgZmlsZSBzb21lIGJ1Z3MgYW5kIHNlZSBpZiB3ZSBjYW4gYWRkcmVzcyB0aGUgc2VydmVy IHNpZGUNCnBpZWNlcy4NCg0KU28gZmFyIG5vIG9uZSBoYXMgc2FpZCB0aGF0IHRoZSB0bXBmcyBj b29raWUgcHJvYmxlbSBpcyBpcnJlcGFyYWJsZS4NCkknZCBtdWNoIHByZWZlciB0byBrZWVwIGl0 IGluIE5GU0QncyBzdGFibGUgb2Ygc3VwcG9ydC4NCg0KaHR0cHM6Ly9idWd6aWxsYS5saW51eC1u ZnMub3JnL3Nob3dfYnVnLmNnaT9pZD00MDUNCg0KQW5kLCBpZiBpdCBoZWxwcywgb3VyIHNlcnZl ciBzaG91bGQgc3VwcG9ydCBkaXJlY3RvcnkgdmVyaWZpZXJzLg0KDQpodHRwczovL2J1Z3ppbGxh LmxpbnV4LW5mcy5vcmcvc2hvd19idWcuY2dpP2lkPTQwNA0KDQoNCj4gQ29uY2VybmluZyB0aGUg Y2xhaW0gdGhhdCBpdCB3YXMgdW5rbm93biB0aGlzIGlzIGEgcHJvYmxlbSB3aXRoIHRtcGZzLCB0 aGVuIHNlZSBodHRwczovL21hcmMuaW5mby8/bD1saW51eC1rZXJuZWwmbT0xMDAzNjk1NDM4MDgx Mjkmdz0yDQo+IEluIHRoZSB5ZWFycyBzaW5jZSAyMDAxLCB3ZeKAmXZlIOKAnGZpeGVk4oCdIHRo ZSBiZWhhdmlvdXIgb2YgdG1wZnMgYnkgY2lyY3VtdmVudGluZyB0aGUgcmVsaWFuY2Ugb24gY29v a2llcyBmb3IgdGhlIGNhc2Ugb2YgYSBsaW5lYXIgcmVhZCBvZiBhIHRtcGZzIGRpcmVjdG9yeSwg YnV0IHRoZSB1bmRlcmx5aW5nIGNvb2tpZSBiZWhhdmlvdXIgaXMgc3RpbGwgdGhlIHNhbWUsIGFu ZCBzbyB0aGUgTkZTIGJlaGF2aW91ciBlbmRzIHVwIGJlaW5nIHRoZSBzYW1lLg0KPiANCj4gVGhl IGJvdHRvbSBsaW5lIGlzIHRoYXQgeW914oCZdmUgYWx3YXlzIGJlZW4gcGxheWluZyB0aGUgbG90 dGVyeSB3aGVuIG1vdW50aW5nIHRtcGZzIG92ZXIgTkZTLg0KDQpJJ20gbm90IGRlYmF0aW5nIHRo ZSB0cnV0aCBvZiB0aGF0LiBJIGp1c3QgZG9uJ3QgdGhpbmsgd2Ugc2hvdWxkDQpiZSBtYWtpbmcg dGhhdCBzaXR1YXRpb24gbmVlZGxlc3NseSB3b3JzZS4NCg0KQW5kIEkgd291bGQgYmUgbXVjaCBt b3JlIGNvbWZvcnRhYmxlIHdpdGggdGhpcyBpZiBpdCBhcHBlYXJlZCBpbg0KYSBtYW4gcGFnZSBv ciBvbiBvdXIgd2lraSwgb3IgLi4uIEknbSBzb3JyeSwgYnV0ICJzb21lIGVtYWlsIGluDQoyMDAx IiBpcyBub3QgZG9jdW1lbnRhdGlvbiBhIHVzZXIgc2hvdWxkIGJlIGV4cGVjdGVkIHRvIGZpbmQu DQoNCg0KLS0NCkNodWNrIExldmVyDQoNCg0KDQo=