From mboxrd@z Thu Jan 1 00:00:00 1970 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 gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id A6BADEEA84E for ; Thu, 12 Feb 2026 20:55:14 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 2D2E410E276; Thu, 12 Feb 2026 20:55:13 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.b="Kz2b1wPM"; dkim-atps=neutral Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.17]) by gabe.freedesktop.org (Postfix) with ESMTPS id DCCF210E119; Thu, 12 Feb 2026 20:55:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1770929712; x=1802465712; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=c9C0X0Fk9B/FQI8dsuwIVQSwGwU94LkzM/Jn8W4muVw=; b=Kz2b1wPMqfGmdRkc5EpSZ8OVbaYo/KkU8+hKe0DaeX/eyxj+qYugsRIn kd9Kddjo9YZvoMbeICbSyGLFEFNWlFT3dZWq8XlzpxegcIJyRfDyKeRjO G/woR9ZMi8s95B6PFOZ9k+ednwQxUB9sawtkf/P6ccJ6Zc4H9NdAzY6zj mj+Ib4Nm76wQ2b1VK1LcealqYaI0UZj8FdYGCywsb24KYfgJuqYtR9CMl QzGrzNSAQBJ4/CnzXP1yZp9s1be3CoX0Tvtu9z7dkuEcY0u99KWEkHD4Z tdJ/+wRRN8RAbSRqVIJyt6ti2ElLSHid6W80qROOr1rcQZVr0ASWvdYDe g==; X-CSE-ConnectionGUID: 95ey69KCQneXA4sFvSpuHw== X-CSE-MsgGUID: +Z8HgKAISo6dhYNUiDmHuA== X-IronPort-AV: E=McAfee;i="6800,10657,11699"; a="72018590" X-IronPort-AV: E=Sophos;i="6.21,287,1763452800"; d="scan'208";a="72018590" Received: from fmviesa006.fm.intel.com ([10.60.135.146]) by fmvoesa111.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Feb 2026 12:55:11 -0800 X-CSE-ConnectionGUID: AeHebUboRRCWarHJqzzPDA== X-CSE-MsgGUID: HVRfi45TSym+nmHl7P+sHw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.21,287,1763452800"; d="scan'208";a="211490452" Received: from orsmsx902.amr.corp.intel.com ([10.22.229.24]) by fmviesa006.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Feb 2026 12:55:11 -0800 Received: from ORSMSX901.amr.corp.intel.com (10.22.229.23) by ORSMSX902.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.35; Thu, 12 Feb 2026 12:55:10 -0800 Received: from ORSEDG903.ED.cps.intel.com (10.7.248.13) by ORSMSX901.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.35 via Frontend Transport; Thu, 12 Feb 2026 12:55:10 -0800 Received: from PH7PR06CU001.outbound.protection.outlook.com (52.101.201.7) by edgegateway.intel.com (134.134.137.113) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.35; Thu, 12 Feb 2026 12:55:10 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=TfF3ED0Eg0+TjsdrgoujMyEzy4Dx24PotYRzjxaGwsp8TUsS0fxNa8QtThwyFqtGv3Y/dFZ5hT9Hn6EyQDFCaaPDdgJ/tHhJA+u3THVpYIIJybuFR1qhjXg+y1Km15BfiEFZ91VL8nZPn1xR414wDxoY4KwddK68icrRHzTr1dk/T65N+uH8lathY3zhbKw7N+XVdr/XHaepm4L2HlbqdIzprvHvHJYjQoF4ZdLhZ2nH0a3u9JsNYBvHymmJpILB+Q20rQludBFUxiMy85mYaXC1Cfy3dF213yqRWDdoCk+jB2hexizQzRnprRJYnOCXgURiGcnIHfQdCLRnbbr9wA== 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=c9C0X0Fk9B/FQI8dsuwIVQSwGwU94LkzM/Jn8W4muVw=; b=hW8odC8y8SJcU49oeSJTaIBLKzAlhWdcd4X2Ewe3yWbAEBnr5mROsIdvzFJZl/dXQl+Yyg4bJL1LA+4WlghcZ2aeez45Aqx1LhOwa5K6ZEHwvWD+ihNGMA2vGulETROtGkn99W9tXlXP82UOSJzV7FAYjq7J7Hq66A3d/RVSOSqF/vu+f+zvXfqtRM1AMzKdhgI/WUks39fIaVAJxSGfdTRIqmq/i/HiEoPAB2GWTyO20ojWSeuBLD5QvpK8HkabximHk3XvPG/I9T2ucOw5J65+FOqOR8lP4y1UQyMGt0h4BtO1X2Xk1B8Gqrv6t0aThlfXol1XVPMkG5vsT1sHaQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from DM4PR11MB5373.namprd11.prod.outlook.com (2603:10b6:5:394::7) by SJ0PR11MB6624.namprd11.prod.outlook.com (2603:10b6:a03:47a::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9611.10; Thu, 12 Feb 2026 20:55:07 +0000 Received: from DM4PR11MB5373.namprd11.prod.outlook.com ([fe80::a2d:8df9:2ff0:fdd1]) by DM4PR11MB5373.namprd11.prod.outlook.com ([fe80::a2d:8df9:2ff0:fdd1%7]) with mapi id 15.20.9611.008; Thu, 12 Feb 2026 20:55:07 +0000 From: "Almahallawy, Khaled" To: "ville.syrjala@linux.intel.com" CC: "intel-xe@lists.freedesktop.org" , "Srinivas, Vidya" , "Nikula, Jani" , "Navare, Manasi" , "intel-gfx@lists.freedesktop.org" , "Shankar, Uma" , "ddavenport@google.com" , "seanpaul@google.com" Subject: Re: [RFC PATCH] drm/i915/display: Prevent NV12 Y-plane allocation from stealing userspace planes Thread-Topic: [RFC PATCH] drm/i915/display: Prevent NV12 Y-plane allocation from stealing userspace planes Thread-Index: AQHcm7lhCDWtKGvtM0auVMuEmyKs8LV+81aAgACY8gA= Date: Thu, 12 Feb 2026 20:55:07 +0000 Message-ID: <45a2ca54d7237519cf1abeb7c59e3ba57505a483.camel@intel.com> References: <20260212004852.1920270-1-khaled.almahallawy@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.52.3-0ubuntu1.1 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM4PR11MB5373:EE_|SJ0PR11MB6624:EE_ x-ms-office365-filtering-correlation-id: 43529d94-781b-4ccb-3936-08de6a790100 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|366016|1800799024|376014|38070700021; x-microsoft-antispam-message-info: =?utf-8?B?aitXRWVOMzVBNFVKQzFRVS9aU2JxUFZ6djZnOHVPaWU3OVJ6UGlUREdWM09B?= =?utf-8?B?TnlkRlE1dkpUQ2VJMjZBS3RVUHVRMTI5TFd0NnByTGVFbmdGSHk2REE5aXZ2?= =?utf-8?B?WXQ5R2RoZzVqY2xGMmNoM0tjaXFiaVd6VGE2dnBKMlZBNStWNlRBK21ZTUpa?= =?utf-8?B?b25NNm1JYnI5dHo0bnAvUDdnaFFKRXU0d1FmMi9GRTdjRnU0dDV0SkpkRVRm?= =?utf-8?B?bXl0clllMzFGb1paK1hTQm5ZOEF5Ui8xVWh4MkI3MTJaMFJ5NUExOGEzS1VP?= =?utf-8?B?c0tzT1l3VnhwV0k0bDE3WnI4eXQ2N2RMTXJJd0R0OWsvaFI2dGdOTlcyQlpj?= =?utf-8?B?aE16TVdBK2pYZHF4ci9uZ1ZMNVg4OFArWWVaMUFHR3hhVmNFRUhXMEptdXVX?= =?utf-8?B?Z092bGRGSWpWRFlPWGt2V0dtc2pKVkswY1ZNVGFyVU1hMyt6aDFmVnlkRHJk?= =?utf-8?B?ZGZINGUwcitLREE1K2hPcTI0d0dYazJ2SW1zTnNnaldpWFhib3hBMFo1Y216?= =?utf-8?B?Q3ppeWd6Ly90QWljbVZpODEzTDlSdWVtWnJRVHlyWTRLRi9PVnZXVzJpYTZS?= =?utf-8?B?NFJIVEtxNjVpZHBHVTFaNnpUdDFRdWhXZTM0a2wwODEyMDBaSjdDU0JyN05D?= =?utf-8?B?aElwdDE2NXVsZklrVWxxZ0ZQNk5yaWdzZ3JTUTl2UXpRT254U2dvLzZOaW1Z?= =?utf-8?B?czhyVWwyNFFvdVY0YkJ0N0ZZVjQ1N2NFNXIzY0gyRUlZb1A5U0JKSEp6YW1z?= =?utf-8?B?eWNsaG05WDBGNzlkV1g2dmZLdG11VTQzQXNBQWZlMVNjL1lyUGFRV1RFYjd3?= =?utf-8?B?YStzOWloTVlkSUE0ZTJOUnlJOElrNGhWZGU3L21jSjZlQ1liN1l3OHZINjdV?= =?utf-8?B?ZUtoVkgxQnVJeDR6ZkJKMWNrWUpGalQycFYyeUlSM21sNk9hNUhWazFHT0Uw?= =?utf-8?B?RVNjQ2xrR25lTHdJNzVmcHE3NG8wanA0Yk5veXUySytUVU8vUHQ5THplQlpw?= =?utf-8?B?eE9HN0l6OXZTTFY3TWFnd1NEUElpbStUMXJJby8rdldybGs3aUtoWXdpVkg0?= =?utf-8?B?ckczQ2VCdnFKNUludHNNbmtpK1RzQmhOY2pOQ3dqRTRTdHpPaG9HaW03ejdQ?= =?utf-8?B?WGIzUVlXaCtNam1ac1J2QjIzR2JtSWtkTThjYitielhIZlg1VlgwdzZ1Ky93?= =?utf-8?B?QXZRaGhUcW5aaGoyMjN0VkNsK2ZudFNOeTh5MkZXbDMrVEYxSThLTTA4cXBp?= =?utf-8?B?S29BSUJiNC9hVDFweUhmVnZZWis0QWlGY0tMS1ZidkxsalQ2UnpkNlM0T0tI?= =?utf-8?B?bG5PSnZPbnluUkpnYlF5QkZnMzJENDJEa3Vpak9UM0Iyc3NTekJQNXFrazBL?= =?utf-8?B?dnRNSGcvekVmNU8xUTZyeTd0SDhoT1gvaEE0VmRmOHNTRXZkYnN4VzQ4TXlZ?= =?utf-8?B?NUpiZWREa054bUhvblppK3ppbmRrOGt5SVdvb25NVGo4b21seG9lZkNvZU44?= =?utf-8?B?Ym80UjdZTE9ZbTU5QlNGQ1Bnb1JUWnJYaFRVNnZBV0o4ZWZ6L3ZOclRSM1FX?= =?utf-8?B?RWRSYUVaTHhtbS9tbzZoQ3lLbGZSeHREb1plb1RLcjhZSW1oT01VQ010c0Js?= =?utf-8?B?d1RVWmRlc09nRzhGU0I0eVR2NlJuTHoyTXlGSVpQcXVBUVYzZXdoUlljMW9s?= =?utf-8?B?ck9xQUIrZmt0eUV6T2k1eHpCWlZhVEdXOGRnbWF0WVBTL3VyQ2lZZ210WWx0?= =?utf-8?B?Q0YwSk5yK0svZ29BRkxnZ01vaFNFemlTd1dNbFY2NFNmYnBXa2JOSEZrNVZh?= =?utf-8?B?bTU5VklDTUR0TXNzbm54b3NQUStJaFVidFRPQ2E1SnQwNWx0TG9MUmJwRURD?= =?utf-8?B?QTBBR3JjL2RyOUhxUCthc0l5OVdqZXI3MU14dmxXOUJyczlpdlJxeStXTHBK?= =?utf-8?B?V3ArZFZzQ3hiR2lMNGJTWnRDdkVLQU9jZXRvMG1xaXJUeXJ0U3N0TGpVd0tX?= =?utf-8?B?OWdVSmF6RlA2b3BCSnNyL1lDR2ZhOGJKWXFqenB6bU85L0g1d1hkQ1dqU1RH?= =?utf-8?B?MjB5Z3NmTjZxdnkvRkIxS091QWh1TmUyUWEzcHFSNmRWZW9UNlZuWXg4bTU2?= =?utf-8?B?aTE1WEM4ekwvbVBicncrN3Vjc2JrbkU4UHFod3o4cG9yVGhvQ01penNkeDFW?= =?utf-8?Q?eavVWtkDp3ojF0LEs1LpH5w=3D?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM4PR11MB5373.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(1800799024)(376014)(38070700021); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?bzNhclFDQ1pYYkUrT1ZYLzBqayt0aUk0VTAyWDdJckw2UzZLbWZESnB2WEk5?= =?utf-8?B?cWd3RE9FTEFqQWRpMDlFL2czNnpXRjRLeFFQMitDeEtJdE5OUURucGFlSmpz?= =?utf-8?B?T3pHL3hWdmp6UVMydkEvK0hNa29GMFFLczA4NVZhZ2pxN2ZpUS9TQjd2K29v?= =?utf-8?B?aXdqU2IzSnpWV2xWKzRseWZYa1IwRVV3NUF5Nml0aW5jWGdyT3NDZDdUOExx?= =?utf-8?B?NjBoZVIyR1p2OFlBTjcwcTF1TkdUbmdpZGpCTFJPazF1eDFsajNkNEk4UVRZ?= =?utf-8?B?QkVpUjFacnNURCtWeU9xaXpPaTFVOUhha05OVC9yN3hhWDI3akMxNjc2Ny94?= =?utf-8?B?bmZOK0txMFlrZVNvSVNDd0pNMHBWZmZmbmZIM3J4SE4rRDVoWWdGVDB4WHFS?= =?utf-8?B?NHZCRlhaRnlGSmJySHhMc3NZa3NvVHZVa1AxME5GZjVjNVNYaFl2VVppT3Z4?= =?utf-8?B?L0kreGJKRjZYM0RxOGpzcDE2a3dreDNGL1R3YTVINGppZ0R0eWFhbUhqb0sv?= =?utf-8?B?MHc1cmJUalpWRFVvSkhCTy9VbndvbXNCL1ZsWWlhbktGelJpNDRwVzcrWkVv?= =?utf-8?B?VDZCL1JoZmhpRHUyUkJSZE43eTd2cWRycy9rR09pbXp4UGg1SVBwWkt0dzdP?= =?utf-8?B?bkhGZVB5RGI4aFNXK04zWjFNaXRKQk1sNmJIdW5Zam9Ea056TWdWVHJ5Q2dH?= =?utf-8?B?LzJIckIrL1p4Zmw0YjJVSE12dGZGelY1V0sydUxYcFBSaFBVWmJmMFNzZlA3?= =?utf-8?B?ZGEvR1g1TVVyR3NpelYyWWpNWlNxSXh3YkxDWjFkb25Dd1ZvbHhVSU1XbllI?= =?utf-8?B?K3JndEJQSi81WndxWTBadmsxckg2SnhLaG51WnhXYkpubDF2a1Q4UVNmUWVj?= =?utf-8?B?V0FQV3F0T1JCb1ZCMlZlU1l0TTM5OE5nN2phUWVGQXRodTZNak4xTlRaQWsr?= =?utf-8?B?OXlDOHEzSkNmTTNoU2xVWFNlN0pIYjBuOVBMVUtCSk45S0NqQkIyZzJSblZW?= =?utf-8?B?c0JQSmVPNHZlTmp6c1FrbFJhblRubjVIeFNoeDBrdzVPc1ptN1VSRVc2WVlX?= =?utf-8?B?U1hqZHFlK3BManJyWnliYlZPc1FXendjNFdMaHo1K0lkNmdPMGhJSDc2VmpJ?= =?utf-8?B?ZUJoQmo1RlZ1czhnakloem9TbTllM2VUNDFaMHBjWWpaajFRbExQRUFDd1Nt?= =?utf-8?B?djV4bkhKSnFyOWtkSnBZVUduUSt1b25yYTJkWER6NlVhU2EzOFJ0UWI2US8z?= =?utf-8?B?eG04d3l5eVBTeFplOGQvd29kVkxMVmdEMFRCVTBzTnNWQnRlNlNOd0c2dkJT?= =?utf-8?B?M2JnekhtVlJWL00veU5vUXhKQnl5b0MvcWJaaGpRSG5uVXNDSk11cjgrQzBU?= =?utf-8?B?NVpjSXY2K3FwOTlNdWRTMlh4UThpZXh0ZUNlOUxjSXJnWTBYc2tVd21OYVJv?= =?utf-8?B?bUJQOW1KMS91YVNjWFdKVnNvNmQrNXdOUTU4cWZlMjJDSU9ncE1mQXQzOTUv?= =?utf-8?B?THpaT2diUEFxQkJnYnJtN0JtOXFJSEljU01nMFlMMHVsK25WR3MvVW9YaCtK?= =?utf-8?B?TlZicm9vS1hGeGRHRXVXZ0hqNFNvb2xVSXB1V3VZSldITUNRWFRCeHNSRTNI?= =?utf-8?B?WWF2K05BMk1HdzVrTHhGYml5N1ZFbURKWTd4RmtnZjRpc1J1Ukk4Y2JzTG01?= =?utf-8?B?TW1ETzdlckR0ZmwzcGFoZTJrT0o1SG4wUDZwb2l3OW1DQ2E5SUhLalpvYjZj?= =?utf-8?B?OVN2UnJ2dEQ2bHRHV3BhdVd6TmFaMHFJcHp5NEZaV0NkR25qWVMzUTNkZlc4?= =?utf-8?B?eHdPMjZaRVNYQ1NKSFpUZjZyZDdMMmVpWlMwSzdlMXByU2dQV0NIZVFmblpL?= =?utf-8?B?ZTRFRnNWNi9WWi82ZXdjQ1JGMVExbGM0dGNPamUwQXNTTXpvcUZtNFVIU2xN?= =?utf-8?B?VkpsNjVQZEVGTHprVGxUaTF0bU83S3dFZDhwK3RYelR1bkl6U3VvZVNYdDJ1?= =?utf-8?B?VWp1eWlYRXZUd3BtQ1ZOUDhERzY3d0dMUm1QNDlER1NLdURxc01Oa2x1RVhT?= =?utf-8?B?L1hhdjlNeDhZNU9IQzErVUV6R1JKZnhtVXl4TlpnTE5RdVFmbzlKelJDWGEr?= =?utf-8?B?ZHhkTFBwV0pUcGhCRVhjNVlISExNM1loais3MEMwUzJiZkg5aW1qODNGWjk5?= =?utf-8?B?MFRubVdGcEJRN0FzR0hNOVRzMDdmZlJ0R3FidjBPWTJqMDFkUUpjN2pLMHBw?= =?utf-8?B?MG5ub3hQVThOaE1vdzJaQlgwVEVWNy9LSnd4bW92NzlRcFljTWhic1VobEdO?= =?utf-8?B?S2h5Z2dhdDJvVk9mUVZxSUJIR0grUG1IV3lucmNSWFhwYytwNVhUb3NydEgz?= =?utf-8?Q?2qP9sUnH1MKBys6M=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM4PR11MB5373.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 43529d94-781b-4ccb-3936-08de6a790100 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Feb 2026 20:55:07.3317 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: IWLDBHmnK8R2S2XeZ3SroWn4HmTU1PW7TRZBvJOwhdJxM7TF5NSYR1qUS2pqJ5CByxS4fxcOgjoVLuOZzv/Ju/iPV2dSvknevR0LKS1mXjY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR11MB6624 X-OriginatorOrg: intel.com X-BeenThere: intel-xe@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel Xe graphics driver List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-xe-bounces@lists.freedesktop.org Sender: "Intel-xe" T24gVGh1LCAyMDI2LTAyLTEyIGF0IDEzOjQ3ICswMjAwLCBWaWxsZSBTeXJqw6Rsw6Qgd3JvdGU6 DQo+IE9uIFdlZCwgRmViIDExLCAyMDI2IGF0IDA0OjQ4OjUyUE0gLTA4MDAsIEtoYWxlZCBBbG1h aGFsbGF3eSB3cm90ZToNCj4gPiBUaGUgZHJpdmVyIGF1dG9tYXRpY2FsbHkgYWxsb2NhdGVzIGEg WS1wbGFuZSAoNEEvNUEpIHdoZW4gdXNlcnNwYWNlDQo+ID4gY29uZmlndXJlcyBhbiBOVjEyIHN1 cmZhY2UuIFRoZSBhbGxvY2F0aW9uIGxvb3AgZG9lc24ndCBjaGVjayBpZiBhDQo+ID4gY2FuZGlk YXRlIHBsYW5lIGlzIGFscmVhZHkgY29uZmlndXJlZCBieSB1c2Vyc3BhY2UgaW4gdGhlIHNhbWUN Cj4gPiBhdG9taWMNCj4gPiBjb21taXQsIGNhdXNpbmcgY29uZmxpY3QgYXMgb2JzZXJ2ZWQgaW4g dGhpcyBpOTE1X2Rpc3BsYXlfaW5mbzoNCj4gPiANCj4gPiDCoCBbUExBTkU6MTI0OnBsYW5lIDRB XTogdHlwZT1PVkwNCj4gPiDCoMKgwqDCoMKgIHVhcGk6IFtGQjo1NjZdIEFCMjQgbGl0dGxlLWVu ZGlhbiAoMHgzNDMyNDI0MSksMHgwLDE5MjB4MTI4MCwNCj4gPiB2aXNpYmxlPXZpc2libGUNCj4g PiDCoMKgwqDCoMKgIHBsYW5hcjogTGlua2VkIHRvIFtQTEFORTozNDpwbGFuZSAxQV0gYXMgYSBZ IHBsYW5lDQo+ID4gwqDCoMKgwqDCoCBodzogW0ZCOjU2NF0gTlYxMiBsaXR0bGUtZW5kaWFuICgw eDMyMzE1NjRlKSwweDAsMTkyMHgxMDgwLA0KPiA+IHZpc2libGU9eWVzDQo+ID4gDQo+ID4gUGxh bmUgNEEncyB1YXBpIHN0YXRlIHNob3dzIHVzZXJzcGFjZSdzIEFCMjQgZnJhbWVidWZmZXIsIGJ1 dCB0aGUNCj4gPiBodw0KPiA+IHN0YXRlIHNob3dzIGl0IHdhcyByZXByb2dyYW1tZWQgd2l0aCB0 aGUgTlYxMiBZLXBsYW5lLg0KPiA+IA0KPiA+IEV4YW1wbGUgdHJpZ2dlcmVkIGJ5IGV4cGVyaW1l bnQgd2l0aCBJR1QgdGVzdCB0byBjb21taXQgTlYxMiArDQo+ID4gbXVsdGlwbGUNCj4gPiBBQjI0 IHBsYW5lczoNCj4gPiANCj4gPiDCoCA9PT0gVGVzdGluZyB3aXRoIE5WMTIgcHJpbWFyeSArIDMg QUJHUjg4ODggb3ZlcmxheXMgPT09DQo+ID4gwqDCoMKgIFBsYW5lIDAgKFByaW1hcnkpOiBOVjEy IDE5MjB4MTA4MCBhdCAoMCwgMCkNCj4gPiDCoMKgwqAgUGxhbmUgMSAoT3ZlcmxheSAwKTogQUJH Ujg4ODggMTkyMHgxMjgwIChmdWxsc2NyZWVuKSBhdCAoMCwgMCkNCj4gPiDCoMKgwqAgUGxhbmUg MiAoT3ZlcmxheSAxKTogQUJHUjg4ODggMTkyMHgxMjgwIChmdWxsc2NyZWVuKSBhdCAoMCwgMCkN Cj4gPiDCoMKgwqAgUGxhbmUgMyAoT3ZlcmxheSAyKTogQUJHUjg4ODggMTkyMHgxMjgwIChmdWxs c2NyZWVuKSBhdCAoMCwgMCkNCj4gPiDCoMKgwqAgVEVTVF9PTkxZIHBhc3NlZCwgY29tbWl0dGlu Zy4uLg0KPiA+IMKgwqDCoCBBdG9taWMgY29tbWl0IFNVQ0NFRURFRA0KPiA+IA0KPiA+IFRoZSBi dWcgdHJpZ2dlcnMgYSBrZXJuZWwgV0FSTklORyBpbiB1bmxpbmtfbnYxMl9wbGFuZSgpOg0KPiA+ IMKgIFdBUk5JTkc6IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfcGxhbmUuYzox NTIxDQo+ID4gwqAgZHJtX1dBUk5fT04ocGxhbmVfc3RhdGUtPnVhcGkudmlzaWJsZSkNCj4gPiAN Cj4gDQo+IEkgdGhpbmsgdGhlIGFjdHVhbCBidWcgaXMgdGhhdCB3ZSB1bmxpbmsgdGhlIG52MTIg cGxhbmVzIGFmdGVyDQo+IHBsYW5lX2F0b21pY19jaGVjaygpLiB1bmxpbmtfbnYxMl9wbGFuZSgp IHdpbGwgdGhlbiBjbG9iYmVyDQo+IHNvbWUgdGhpbmdzIGluIHRoZSBjcnRjIHN0YXRlIHRoYXQg d2FzIHNldCB1cCBieSANCj4gcGxhbmVfYXRvbWljX2NoZWNrKCkuDQo+IA0KPiBTbyB3ZSBwZXJo YXBzIHdhbnQgc29tZXRoaW5nIGxpa2UgdGhpczoNCj4gDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3BsYW5lLmMNCj4gYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX3BsYW5lLmMNCj4gaW5kZXggM2RjMmVkNTIxNDdmLi45OGQwMjU1 YjhiMTggMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf cGxhbmUuYw0KPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3BsYW5l LmMNCj4gQEAgLTQ0MSw2ICs0NDEsOCBAQCB2b2lkIGludGVsX3BsYW5lX3NldF9pbnZpc2libGUo c3RydWN0DQo+IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsDQo+IMKgew0KPiDCoAlzdHJ1 Y3QgaW50ZWxfcGxhbmUgKnBsYW5lID0gdG9faW50ZWxfcGxhbmUocGxhbmVfc3RhdGUtDQo+ID51 YXBpLnBsYW5lKTsNCj4gwqANCj4gKwl1bmxpbmtfbnYxMl9wbGFuZShjcnRjX3N0YXRlLCBwbGFu ZV9zdGF0ZSk7DQo+ICsNCj4gwqAJY3J0Y19zdGF0ZS0+YWN0aXZlX3BsYW5lcyAmPSB+QklUKHBs YW5lLT5pZCk7DQo+IMKgCWNydGNfc3RhdGUtPnNjYWxlZF9wbGFuZXMgJj0gfkJJVChwbGFuZS0+ aWQpOw0KPiDCoAljcnRjX3N0YXRlLT5udjEyX3BsYW5lcyAmPSB+QklUKHBsYW5lLT5pZCk7DQo+ IEBAIC0xNTEzLDYgKzE1MTUsOSBAQCBzdGF0aWMgdm9pZCB1bmxpbmtfbnYxMl9wbGFuZShzdHJ1 Y3QNCj4gaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwNCj4gwqAJc3RydWN0IGludGVsX2Rp c3BsYXkgKmRpc3BsYXkgPQ0KPiB0b19pbnRlbF9kaXNwbGF5KHBsYW5lX3N0YXRlKTsNCj4gwqAJ c3RydWN0IGludGVsX3BsYW5lICpwbGFuZSA9IHRvX2ludGVsX3BsYW5lKHBsYW5lX3N0YXRlLQ0K PiA+dWFwaS5wbGFuZSk7DQo+IMKgDQo+ICsJaWYgKCFwbGFuZV9zdGF0ZS0+cGxhbmFyX2xpbmtl ZF9wbGFuZSkNCj4gKwkJcmV0dXJuOw0KPiArDQo+IMKgCXBsYW5lX3N0YXRlLT5wbGFuYXJfbGlu a2VkX3BsYW5lID0gTlVMTDsNCj4gwqANCj4gwqAJaWYgKCFwbGFuZV9zdGF0ZS0+aXNfeV9wbGFu ZSkNCj4gQEAgLTE1NTAsOCArMTU1NSw3IEBAIHN0YXRpYyBpbnQgaWNsX2NoZWNrX252MTJfcGxh bmVzKHN0cnVjdA0KPiBpbnRlbF9hdG9taWNfc3RhdGUgKnN0YXRlLA0KPiDCoAkJaWYgKHBsYW5l LT5waXBlICE9IGNydGMtPnBpcGUpDQo+IMKgCQkJY29udGludWU7DQo+IMKgDQo+IC0JCWlmIChw bGFuZV9zdGF0ZS0+cGxhbmFyX2xpbmtlZF9wbGFuZSkNCj4gLQkJCXVubGlua19udjEyX3BsYW5l KGNydGNfc3RhdGUsIHBsYW5lX3N0YXRlKTsNCj4gKwkJdW5saW5rX252MTJfcGxhbmUoY3J0Y19z dGF0ZSwgcGxhbmVfc3RhdGUpOw0KPiDCoAl9DQo+IMKgDQo+IMKgCWlmICghY3J0Y19zdGF0ZS0+ bnYxMl9wbGFuZXMpDQo+IA0KPiBXaXRoIHRoYXQgd2UgY291bGQgcGVyaGFwcyBldmVuIGRyb3Ag dGhlIHNlY29uZCB1bmxpbmtfbnYxMl9wbGFuZSgpDQo+IGNhbGwsIGJ1dCBoYXZlbid0IHJlYWxs eSB0aG91Z2h0IHRocm91Z2ggdGhlIGRldGFpbHMuLi4NCj4gDQpIaSBWaWxsZSwNCg0KVGhhbmsg eW91IGZvciB0aGlzIGZpeCAtIEkndmUgdGVzdGVkIGl0IGFuZCBjb25maXJtZWQgaXQgd29ya3MN CmNvcnJlY3RseS4gVGhlIFktcGxhbmUgKDVBKSBpcyBub3cgcHJvcGVybHkgYXNzaWduZWQgd2l0 aG91dCBzdGVhbGluZw0KcGxhbmUgNEEgdGhhdCB1c2Vyc3BhY2UgaGFkIGNvbmZpZ3VyZWQuIExv Z3MgYXJlIGJlbG93DQoNCkZvciBjb250ZXh0LCB0aGlzIGlzc3VlIGNhbWUgdXAgd2hpbGUgd29y a2luZyB3aXRoIEFuZHJvaWQgYW5kDQpkcm1faHdjb21wb3Nlciwgd2hpY2ggdGVuZHMgdG8gdXNl IE1BTlkgb3ZlcmxheSBsYXllcnMgc2ltdWx0YW5lb3VzbHkuDQpXaGVuIGNvbWJpbmluZyBOVjEy IHZpZGVvIHBsYXliYWNrIHdpdGggbXVsdGlwbGUgQUIyNCBsYXllcnMgd2Ugc3RhcnRlZA0KdG8g c2VlIGlzc3Vlcy4NCg0KDQpDb3VsZCB5b3UgcGxlYXNlIHN1Z2dlc3QgdGhlIG5leHQgc3RlcHM/ IElmIHlvdSBwbGFuIHRvIHNlbmQgdGhpcyBmaXgNCmhlcmUgaXMNCg0KVGVzdGVkLWJ5OiBLaGFs ZWQgQWxtYWhhbGxhd3kgPGtoYWxlZC5hbG1haGFsbGF3eUBpbnRlbC5jb20+DQoNCk9yIFdvdWxk IHlvdSBiZSB3aWxsaW5nIHRvIHNoYXJlIHRoYXQgWS1wbGFuZSBzZWxlY3Rpb24gcGF0Y2ggYW5k IHdlDQpjYW4gdGVzdCBpdCBhZ2FpbnN0IHRoZSBBbmRyb2lkL2RybV9od2NvbXBvc2VyIHVzZSBj YXNlDQoNClRoYW5rcyBhZ2FpbiBmb3IgdGhlIHF1aWNrIHR1cm5hcm91bmQgb24gdGhpcyENCg0K Rm9yIHJlZmVyZW5jZSwgYmVsb3cgYXJlIHRoZSBsb2dzOi4gDQoNCg0KaWd0IHJ1bjoNCg0Kc3Vk byAuL2ttc19wbGFuZV9tdWx0aXBsZSAtLXJ1bi1zdWJ0ZXN0IGF0b21pYy1wbGFuZS1zdHJlc3Mt d2l0aC0NCmZvcm1hdHMNCklHVC1WZXJzaW9uOiAyLjMtZ2Q5ZDU5ZDA5YSAoeDg2XzY0KSAoTGlu dXg6IDYuMTkuMC1DSV9EUk1fMTc5ODEtDQpnOTIzZGY1ZGE0YTRhIHg4Nl82NCkNClVzaW5nIElH VF9TUkFORE9NPTE3NzA4OTk1NjUgZm9yIHJhbmRvbWlzYXRpb24NCk9wZW5lZCBkZXZpY2U6IC9k ZXYvZHJpL2NhcmQxDQpTdGFydGluZyBzdWJ0ZXN0OiBhdG9taWMtcGxhbmUtc3RyZXNzLXdpdGgt Zm9ybWF0cw0KU3RhcnRpbmcgZHluYW1pYyBzdWJ0ZXN0OiBwaXBlLUEtZURQLTENClRlc3Rpbmcg cGlwZSBBIHdpdGggZURQLTENCkZvdW5kIDYgdG90YWwgcGxhbmVzICg0IG92ZXJsYXlzKSBvbiBw aXBlIEENClByaW1hcnkgcGxhbmU6IE5WMTIgMTkyMHgxMDgwIGF0ICgwLCAwKQ0KDQo9PT0gVGVz dGluZyB3aXRoIE5WMTIgcHJpbWFyeSArIDEgQUJHUjg4ODggb3ZlcmxheSA9PT0NCiAgUGxhbmUg MCAoUHJpbWFyeSk6IE5WMTIgMTkyMHgxMDgwIGF0ICgwLCAwKQ0KICBQbGFuZSAxIChPdmVybGF5 IDApOiBBQkdSODg4OCAxOTIweDEyODAgKGZ1bGxzY3JlZW4pIGF0ICgwLCAwKQ0KICDinJMgVEVT VF9PTkxZIHBhc3NlZCwgY29tbWl0dGluZy4uLg0KICDinJMgQXRvbWljIGNvbW1pdCBTVUNDRUVE RUQNCg0KPj4+IENoZWNrIGk5MTVfZGlzcGxheV9pbmZvIG5vdyAoY2F0DQovc3lzL2tlcm5lbC9k ZWJ1Zy9kcmkvMC9pOTE1X2Rpc3BsYXlfaW5mbykgPDw8DQo+Pj4gUHJlc3MgRU5URVIgdG8gY29u dGludWUuLi4NCg0KDQo9PT0gVGVzdGluZyB3aXRoIE5WMTIgcHJpbWFyeSArIDIgQUJHUjg4ODgg b3ZlcmxheXMgPT09DQogIFBsYW5lIDAgKFByaW1hcnkpOiBOVjEyIDE5MjB4MTA4MCBhdCAoMCwg MCkNCiAgUGxhbmUgMSAoT3ZlcmxheSAwKTogQUJHUjg4ODggMTkyMHgxMjgwIChmdWxsc2NyZWVu KSBhdCAoMCwgMCkNCiAgUGxhbmUgMiAoT3ZlcmxheSAxKTogQUJHUjg4ODggMTkyMHgxMjgwIChm dWxsc2NyZWVuKSBhdCAoMCwgMCkNCiAg4pyTIFRFU1RfT05MWSBwYXNzZWQsIGNvbW1pdHRpbmcu Li4NCiAg4pyTIEF0b21pYyBjb21taXQgU1VDQ0VFREVEDQoNCj4+PiBDaGVjayBpOTE1X2Rpc3Bs YXlfaW5mbyBub3cgKGNhdA0KL3N5cy9rZXJuZWwvZGVidWcvZHJpLzAvaTkxNV9kaXNwbGF5X2lu Zm8pIDw8PA0KPj4+IFByZXNzIEVOVEVSIHRvIGNvbnRpbnVlLi4uDQoNCg0KPT09IFRlc3Rpbmcg d2l0aCBOVjEyIHByaW1hcnkgKyAzIEFCR1I4ODg4IG92ZXJsYXlzID09PQ0KICBQbGFuZSAwIChQ cmltYXJ5KTogTlYxMiAxOTIweDEwODAgYXQgKDAsIDApDQogIFBsYW5lIDEgKE92ZXJsYXkgMCk6 IEFCR1I4ODg4IDE5MjB4MTI4MCAoZnVsbHNjcmVlbikgYXQgKDAsIDApDQogIFBsYW5lIDIgKE92 ZXJsYXkgMSk6IEFCR1I4ODg4IDE5MjB4MTI4MCAoZnVsbHNjcmVlbikgYXQgKDAsIDApDQogIFBs YW5lIDMgKE92ZXJsYXkgMik6IEFCR1I4ODg4IDE5MjB4MTI4MCAoZnVsbHNjcmVlbikgYXQgKDAs IDApDQogIOKckyBURVNUX09OTFkgcGFzc2VkLCBjb21taXR0aW5nLi4uDQogIOKckyBBdG9taWMg Y29tbWl0IFNVQ0NFRURFRA0KDQo+Pj4gQ2hlY2sgaTkxNV9kaXNwbGF5X2luZm8gbm93IChjYXQN Ci9zeXMva2VybmVsL2RlYnVnL2RyaS8wL2k5MTVfZGlzcGxheV9pbmZvKSA8PDwNCj4+PiBQcmVz cyBFTlRFUiB0byBjb250aW51ZS4uLg0KDQoNCj09PSBUZXN0aW5nIHdpdGggTlYxMiBwcmltYXJ5 ICsgNCBBQkdSODg4OCBvdmVybGF5cyA9PT0NCiAgUGxhbmUgMCAoUHJpbWFyeSk6IE5WMTIgMTky MHgxMDgwIGF0ICgwLCAwKQ0KICBQbGFuZSAxIChPdmVybGF5IDApOiBBQkdSODg4OCAxOTIweDEy ODAgKGZ1bGxzY3JlZW4pIGF0ICgwLCAwKQ0KICBQbGFuZSAyIChPdmVybGF5IDEpOiBBQkdSODg4 OCAxOTIweDEyODAgKGZ1bGxzY3JlZW4pIGF0ICgwLCAwKQ0KICBQbGFuZSAzIChPdmVybGF5IDIp OiBBQkdSODg4OCAxOTIweDEyODAgKGZ1bGxzY3JlZW4pIGF0ICgwLCAwKQ0KICBQbGFuZSA0IChP dmVybGF5IDMpOiBBQkdSODg4OCAxOTIweDEyODAgKGZ1bGxzY3JlZW4pIGF0ICgwLCAwKQ0KICDi nJcgVEVTVF9PTkxZIHJlamVjdGVkIChyZXQ9LTIyKQ0KICDinJcgTm8gd29ya2luZyBjb25maWd1 cmF0aW9uIGZvdW5kIHdpdGggNCBvdmVybGF5cw0KDQo9PT0gUmVzdWx0cyA9PT0NCk1heGltdW0g Y29uZmlndXJhdGlvbjogTlYxMiBwcmltYXJ5ICsgMyBBQkdSODg4OCBvdmVybGF5cw0KRHluYW1p YyBzdWJ0ZXN0IHBpcGUtQS1lRFAtMTogU1VDQ0VTUyAoMjk5LjkxMHMpDQpTdWJ0ZXN0IGF0b21p Yy1wbGFuZS1zdHJlc3Mtd2l0aC1mb3JtYXRzOiBTVUNDRVNTICgyOTkuOTEwcykNCg0KDQoNCmRp c3BsYXlfaW5mbzoNCg0KDQoJW1BMQU5FOjEyNDpwbGFuZSA0QV06IHR5cGU9T1ZMDQoJCXVhcGk6 IFtGQjo1NjZdIEFCMjQgbGl0dGxlLWVuZGlhbg0KKDB4MzQzMjQyNDEpLDB4MCwxOTIweDEyODAs IHZpc2libGU9dmlzaWJsZSwNCnNyYz0xOTIwLjAwMDAwMHgxMjgwLjAwMDAwMCswLjAwMDAwMCsw LjAwMDAwMCwgZHN0PTE5MjB4MTI4MCswKzAsIHJvdGENCnRpb249MCAoMHgwMDAwMDAwMSkNCgkJ aHc6IFtGQjo1NjZdIEFCMjQgbGl0dGxlLWVuZGlhbg0KKDB4MzQzMjQyNDEpLDB4MCwxOTIweDEy ODAsIHZpc2libGU9eWVzLA0Kc3JjPTE5MjAuMDAwMDAweDEyODAuMDAwMDAwKzAuMDAwMDAwKzAu MDAwMDAwLCBkc3Q9MTkyMHgxMjgwKzArMCwNCnJvdGF0aW9uPTANCiAoMHgwMDAwMDAwMSkNCglb UExBTkU6MTM0OnBsYW5lIDVBXTogdHlwZT1PVkwNCgkJdWFwaTogW0ZCOjBdIG4vYSwweDAsMHgw LCwgdmlzaWJsZT1ZIHBsYW5lLA0Kc3JjPTAuMDAwMDAweDAuMDAwMDAwKzAuMDAwMDAwKzAuMDAw MDAwLCBkc3Q9MHgwKzArMCwgcm90YXRpb249MA0KKDB4MDAwMDAwMDEpDQoJCXBsYW5hcjogTGlu a2VkIHRvIFtQTEFORTozNDpwbGFuZSAxQV0gYXMgYSBZIHBsYW5lDQoJCWh3OiBbRkI6NTY0XSBO VjEyIGxpdHRsZS1lbmRpYW4NCigweDMyMzE1NjRlKSwweDAsMTkyMHgxMDgwLCB2aXNpYmxlPW5v LA0Kc3JjPTE5MjAuMDAwMDAweDEwODAuMDAwMDAwKzAuMDAwMDAwKzAuMDAwMDAwLCBkc3Q9MTky MHgxMDgwKzArMCwNCnJvdGF0aW9uPTAgDQoNCg0KS2VybmVsIGxvZ3M6DQoNClsxNTYuNzQyMTQ4 XSBpOTE1IDAwMDA6MDA6MDIuMDogW2RybTpza2xfY29tcHV0ZV93bSBbaTkxNV1dDQpbUExBTkU6 NjQ6cGxhbmUgMkFdIGRkYiAoMTc3LTEzNzYpIC0+ICggICAwLSAgIDApDQpbMTU2Ljc0MjM3MF0g aTkxNSAwMDAwOjAwOjAyLjA6IFtkcm06c2tsX2NvbXB1dGVfd20gW2k5MTVdXQ0KW1BMQU5FOjY0 OnBsYW5lIDJBXSBsZXZlbCB3bTAsIHdtMSwgd20yLCB3bTMsIHdtNCwgd201LCB3bTYsIHdtNywg dHdtLA0Kc3dtLCBzdHdtIC0+IHdtMCwgd20xLCB3bTIsIHdtMywgd200LCB3bTUsIHdtNiwgd203 LCB0d20sIHN3bSwgc3R3bQ0KWzE1Ni43NDI1MzddIGk5MTUgMDAwMDowMDowMi4wOiBbZHJtOnNr bF9jb21wdXRlX3dtIFtpOTE1XV0NCltQTEFORTo2NDpwbGFuZSAyQV0gICBsaW5lcyAgIDMsICAg MywgICAzLCAgIDQsICAgNSwgICA3LCAgMTAsICAxMiwgIA0KMCwgICAwLCAgIDEgLT4gICAwLCAg IDAsICAgMCwgICAwLCAgIDAsICAgMCwgICAwLCAgIDAsICAgMCwgICAwLCAgIDANClsxNTYuNzQy NzAxXSBpOTE1IDAwMDA6MDA6MDIuMDogW2RybTpza2xfY29tcHV0ZV93bSBbaTkxNV1dDQpbUExB TkU6NjQ6cGxhbmUgMkFdICBibG9ja3MgIDQ4LCAgNDgsICA0OCwgIDY1LCAgODEsIDExMywgMTYx LCAxOTMsICANCjAsICAgMCwgIDE2IC0+ICAgMCwgICAwLCAgIDAsICAgMCwgICAwLCAgIDAsICAg MCwgICAwLCAgIDAsICAgMCwgICAwDQpbMTU2Ljc0Mjg3MV0gaTkxNSAwMDAwOjAwOjAyLjA6IFtk cm06c2tsX2NvbXB1dGVfd20gW2k5MTVdXQ0KW1BMQU5FOjY0OnBsYW5lIDJBXSBtaW5fZGRiICA1 OCwgIDU4LCAgNTgsICA3NiwgIDkzLCAxMjksIDE4MSwgMjE1LCAgDQowLCAgIDAsICAgMCAtPiAg IDAsICAgMCwgICAwLCAgIDAsICAgMCwgICAwLCAgIDAsICAgMCwgICAwLCAgIDAsICAgMA0KWzE1 Ni43NDMwMzVdIGk5MTUgMDAwMDowMDowMi4wOiBbZHJtOmludGVsX2J3X2F0b21pY19jaGVjayBb aTkxNV1dDQpbQ1JUQzoxNTA6cGlwZSBBXSBkYXRhIHJhdGUgMzMyODAwMCBudW0gYWN0aXZlIHBs YW5lcyAzIC0+IDINClsxNTYuNzQzMjM5XSBpOTE1IDAwMDA6MDA6MDIuMDogW2RybTppbnRlbF9i d19hdG9taWNfY2hlY2sgW2k5MTVdXSBRR1YNCnBvaW50IDA6IG1heCBidyAxNDk5MyByZXF1aXJl ZCAxNjY1DQpbMTU2LjkxMzI5N10gaTkxNSAwMDAwOjAwOjAyLjA6IFtkcm06dmVyaWZ5X2Nvbm5l Y3Rvcl9zdGF0ZSBbaTkxNV1dDQpbQ09OTkVDVE9SOjI5MTpEUC0xXQ0KWzE1Ni45MTM0NzddIGk5 MTUgMDAwMDowMDowMi4wOiBbZHJtOmludGVsX2F0b21pY19jb21taXRfdGFpbCBbaTkxNV1dDQpb Q1JUQzoxNTA6cGlwZSBBXQ0KDQpbMTU2LjkxMzYyOF0gaTkxNSAwMDAwOjAwOjAyLjA6IFtkcm06 c2tsX2NvbXB1dGVfd20gW2k5MTVdXQ0KW1BMQU5FOjk0OnBsYW5lIDNBXSBkZGIgKDEzNzYtMjU3 NSkgLT4gKCAgIDAtICAgMCkNClsxNTYuOTEzODIzXSBpOTE1IDAwMDA6MDA6MDIuMDogW2RybTpz a2xfY29tcHV0ZV93bSBbaTkxNV1dDQpbUExBTkU6OTQ6cGxhbmUgM0FdIGxldmVsIHdtMCwgd20x LCB3bTIsIHdtMywgd200LCB3bTUsIHdtNiwgd203LCB0d20sDQpzd20sIHN0d20gLT4gd20wLCB3 bTEsIHdtMiwgd20zLCB3bTQsIHdtNSwgd202LCB3bTcsIHR3bSwgc3dtLCBzdHdtDQpbMTU2Ljkx Mzk5M10gaTkxNSAwMDAwOjAwOjAyLjA6IFtkcm06c2tsX2NvbXB1dGVfd20gW2k5MTVdXQ0KW1BM QU5FOjk0OnBsYW5lIDNBXSAgIGxpbmVzICAgMywgICAzLCAgIDMsICAgNCwgICA1LCAgIDcsICAx MCwgIDEyLCAgDQowLCAgIDAsICAgMSAtPiAgIDAsICAgMCwgICAwLCAgIDAsICAgMCwgICAwLCAg IDAsICAgMCwgICAwLCAgIDAsICAgMA0KWzE1Ni45MTQxNDldIGk5MTUgMDAwMDowMDowMi4wOiBb ZHJtOnNrbF9jb21wdXRlX3dtIFtpOTE1XV0NCltQTEFORTo5NDpwbGFuZSAzQV0gIGJsb2NrcyAg NDgsICA0OCwgIDQ4LCAgNjUsICA4MSwgMTEzLCAxNjEsIDE5MywgIA0KMCwgICAwLCAgMTYgLT4g ICAwLCAgIDAsICAgMCwgICAwLCAgIDAsICAgMCwgICAwLCAgIDAsICAgMCwgICAwLCAgIDANClsx NTYuOTE0MzA2XSBpOTE1IDAwMDA6MDA6MDIuMDogW2RybTpza2xfY29tcHV0ZV93bSBbaTkxNV1d DQpbUExBTkU6OTQ6cGxhbmUgM0FdIG1pbl9kZGIgIDU4LCAgNTgsICA1OCwgIDc2LCAgOTMsIDEy OSwgMTgxLCAyMTUsICANCjAsICAgMCwgICAwIC0+ICAgMCwgICAwLCAgIDAsICAgMCwgICAwLCAg IDAsICAgMCwgICAwLCAgIDAsICAgMCwgICAwDQpbMTU2LjkxNDQ4MF0gaTkxNSAwMDAwOjAwOjAy LjA6IFtkcm06aW50ZWxfYndfYXRvbWljX2NoZWNrIFtpOTE1XV0NCltDUlRDOjE1MDpwaXBlIEFd IGRhdGEgcmF0ZSAzMzI4MDAwIG51bSBhY3RpdmUgcGxhbmVzIDIgLT4gMg0KWzE1Ni45MTQ2Njld IGk5MTUgMDAwMDowMDowMi4wOiBbZHJtOmludGVsX2J3X2F0b21pY19jaGVjayBbaTkxNV1dIFFH Vg0KcG9pbnQgMDogbWF4IGJ3IDE0OTkzIHJlcXVpcmVkIDE2NjUNClsxNTcuMDgwMjM4XSBpOTE1 IDAwMDA6MDA6MDIuMDogW2RybTp2ZXJpZnlfY29ubmVjdG9yX3N0YXRlIFtpOTE1XV0NCltDT05O RUNUT1I6MjkxOkRQLTFdDQpbMTU3LjA4MDQxM10gaTkxNSAwMDAwOjAwOjAyLjA6IFtkcm06aW50 ZWxfYXRvbWljX2NvbW1pdF90YWlsIFtpOTE1XV0NCltDUlRDOjE1MDpwaXBlIEFdDQoNClsxNTYu OTE2MDk3XSBpOTE1IDAwMDA6MDA6MDIuMDogW2RybTpza2xfY29tcHV0ZV93bSBbaTkxNV1dDQpb UExBTkU6NjQ6cGxhbmUgMkFdIGRkYiAoICAgMC0gICAwKSAtPiAoIDE3Ny0xMzc2KQ0KWzE1Ni45 MTYyNzddIGk5MTUgMDAwMDowMDowMi4wOiBbZHJtOnNrbF9jb21wdXRlX3dtIFtpOTE1XV0NCltQ TEFORTo2NDpwbGFuZSAyQV0gbGV2ZWwgd20wLCB3bTEsIHdtMiwgd20zLCB3bTQsIHdtNSwgd202 LCB3bTcsIHR3bSwNCnN3bSwgc3R3bSAtPiB3bTAsIHdtMSwgd20yLCB3bTMsIHdtNCwgd201LCB3 bTYsIHdtNywgdHdtLCBzd20sIHN0d20NClsxNTYuOTE2MjMxXSBpOTE1IDAwMDA6MDA6MDIuMDog W2RybTpza2xfY29tcHV0ZV93bSBbaTkxNV1dDQpbUExBTkU6MzQ6cGxhbmUgMUFdIGRkYiAoIDE3 Ny0gMzU0KSAtPiAoICAgMC0gMTc3KQ0KWzE1Ni45MTYyMzNdIGk5MTUgMDAwMDowMDowMi4wOiBb ZHJtOmljbF9jaGVja19udjEyX3BsYW5lcyBbaTkxNV1dDQpMaW5raW5nIE5WMTIgcGxhbmVzOiBV ViBwbGFuZSBbUExBTkU6MzQ6cGxhbmUgMUFdIHVzaW5nIFkgcGxhbmUNCltQTEFORToxMzQ6cGxh bmUgNUFdDQpbMTU2LjkxNjI2Nl0gaTkxNSAwMDAwOjAwOjAyLjA6IFtkcm06c2tsX2NvbXB1dGVf d20gW2k5MTVdXQ0KW1BMQU5FOjk0OnBsYW5lIDNBXSBkZGIgKCAgIDAtICAgMCkgLT4gKDEzNzYt MjU3NSkNClsxNTYuOTE2Mzk4XSBpOTE1IDAwMDA6MDA6MDIuMDogW2RybTpza2xfY29tcHV0ZV93 bSBbaTkxNV1dDQpbUExBTkU6MzQ6cGxhbmUgMUFdIGRkYiAoICAgMC0gMTc3KSAtPiAoICAgMC0g MTc3KQ0KWzE1Ni45MTY1MTddIGk5MTUgMDAwMDowMDowMi4wOiBbZHJtOnNrbF9jb21wdXRlX3dt IFtpOTE1XV0NCltQTEFORTo2NDpwbGFuZSAyQV0gZGRiICggMTc3LTEzNzYpIC0+ICggMTc3LTEz NzYpDQpbMTU2LjkxNjY4MV0gaTkxNSAwMDAwOjAwOjAyLjA6IFtkcm06c2tsX2NvbXB1dGVfd20g W2k5MTVdXQ0KW1BMQU5FOjk0OnBsYW5lIDNBXSBkZGIgKDEzNzYtMjU3NSkgLT4gKDEzNzYtMjU3 NSkNClsxNTYuOTE2ODAyXSBpOTE1IDAwMDA6MDA6MDIuMDogW2RybTpza2xfY29tcHV0ZV93bSBb aTkxNV1dDQpbUExBTkU6MTI0OnBsYW5lIDRBXSBkZGIgKCAgIDAtICAgMCkgLT4gKDI1NzUtMzc3 NCkNClsxNTYuOTE2OTIyXSBpOTE1IDAwMDA6MDA6MDIuMDogW2RybTpza2xfY29tcHV0ZV93bSBb aTkxNV1dDQpbUExBTkU6MTM0OnBsYW5lIDVBXSBkZGIgKCAgIDAtICAgMCkgLT4gKDM3NzQtNDA1 MSkNClsxNTYuOTE3MDU2XSBpOTE1IDAwMDA6MDA6MDIuMDogW2RybTpza2xfY29tcHV0ZV93bSBb aTkxNV1dDQpbUExBTkU6MTM0OnBsYW5lIDVBXSBsZXZlbCB3bTAsIHdtMSwgd20yLCB3bTMsIHdt NCwgd201LCB3bTYsIHdtNywgdHdtLA0Kc3dtLCBzdHdtIC0+IHdtMCwgd20xLCB3bTIsIHdtMywg d200LCB3bTUsIHdtNiwgd203LCB0d20sIHN3bSwgc3R3bQ0KWzE1Ni45MTcyMjNdIGk5MTUgMDAw MDowMDowMi4wOiBbZHJtOnNrbF9jb21wdXRlX3dtIFtpOTE1XV0NCltQTEFORToxMzQ6cGxhbmUg NUFdICAgbGluZXMgICAwLCAgIDAsICAgMCwgICAwLCAgIDAsICAgMCwgICAwLCAgIDAsICANCjAs ICAgMCwgICAwIC0+ICAgMywgICAzLCAgIDMsICAgNSwgICA2LCAgIDgsICAxMiwgIDE0LCAgIDAs ICAgMCwgICAxDQpbMTU2LjkxNzM4OF0gaTkxNSAwMDAwOjAwOjAyLjA6IFtkcm06c2tsX2NvbXB1 dGVfd20gW2k5MTVdXQ0KW1BMQU5FOjEzNDpwbGFuZSA1QV0gIGJsb2NrcyAgIDAsICAgMCwgICAw LCAgIDAsICAgMCwgICAwLCAgIDAsICAgMCwgIA0KMCwgICAwLCAgIDAgLT4gIDQ2LCAgNDYsICA0 NiwgIDc3LCAgOTMsIDEyNSwgMTg1LCAyMTcsICAgMCwgICAwLCAgMTYNClsxNTYuOTE3NTUyXSBp OTE1IDAwMDA6MDA6MDIuMDogW2RybTpza2xfY29tcHV0ZV93bSBbaTkxNV1dDQpbUExBTkU6MTM0 OnBsYW5lIDVBXSBtaW5fZGRiICAgMCwgICAwLCAgIDAsICAgMCwgICAwLCAgIDAsICAgMCwgICAw LCAgDQowLCAgIDAsICAgMCAtPiAgNTUsICA1NSwgIDU1LCAgODksIDEwNywgMTQzLCAyMDcsIDI0 MSwgICAwLCAgIDAsICAgMA0KWzE1Ni45MTkxOTJdIGk5MTUgMDAwMDowMDowMi4wOiBbZHJtOmlu dGVsX2J3X2F0b21pY19jaGVjayBbaTkxNV1dDQpbQ1JUQzoxNTA6cGlwZSBBXSBkYXRhIHJhdGUg MjQ3MTEwMCBudW0gYWN0aXZlIHBsYW5lcyA1DQpbMTU2LjkxOTM4NV0gaTkxNSAwMDAwOjAwOjAy LjA6IFtkcm06aW50ZWxfYndfYXRvbWljX2NoZWNrIFtpOTE1XV0gUUdWDQpwb2ludCAwOiBtYXgg YncgMTQ5OTMgcmVxdWlyZWQgMTIzNg0KDQpbMTU3LjA3ODg3MF0gaTkxNSAwMDAwOjAwOjAyLjA6 IFtkcm06c2tsX2NvbXB1dGVfd20gW2k5MTVdXQ0KW1BMQU5FOjM0OnBsYW5lIDFBXSBkZGIgKCAg IDAtIDE3NykgLT4gKCAgIDAtIDE3NykNClsxNTcuMDc5MDQ5XSBpOTE1IDAwMDA6MDA6MDIuMDog W2RybTpza2xfY29tcHV0ZV93bSBbaTkxNV1dDQpbUExBTkU6NjQ6cGxhbmUgMkFdIGRkYiAoIDE3 Ny0xMzc2KSAtPiAoIDE3Ny0xMzc2KQ0KWzE1Ny4wNzkyMjRdIGk5MTUgMDAwMDowMDowMi4wOiBb ZHJtOnNrbF9jb21wdXRlX3dtIFtpOTE1XV0NCltQTEFORTo5NDpwbGFuZSAzQV0gZGRiICgxMzc2 LTI1NzUpIC0+ICgxMzc2LTI1NzUpDQpbMTU3LjA3OTM5MF0gaTkxNSAwMDAwOjAwOjAyLjA6IFtk cm06c2tsX2NvbXB1dGVfd20gW2k5MTVdXQ0KW1BMQU5FOjEyNDpwbGFuZSA0QV0gZGRiICgyNTc1 LTM3NzQpIC0+ICgyNTc1LTM3NzQpDQpbMTU3LjA3OTU1NF0gaTkxNSAwMDAwOjAwOjAyLjA6IFtk cm06c2tsX2NvbXB1dGVfd20gW2k5MTVdXQ0KW1BMQU5FOjEzNDpwbGFuZSA1QV0gZGRiICgzNzc0 LTQwNTEpIC0+ICgzNzc0LTQwNTEpDQpbMTU3LjA4MDA1Ml0gaTkxNSAwMDAwOjAwOjAyLjA6IFtk cm06aW50ZWxfYndfYXRvbWljX2NoZWNrIFtpOTE1XV0NCltDUlRDOjE1MDpwaXBlIEFdIGRhdGEg cmF0ZSAyNDcxMTAwIG51bSBhY3RpdmUgcGxhbmVzIDUNClsxNTcuMDgwMjM4XSBpOTE1IDAwMDA6 MDA6MDIuMDogW2RybTppbnRlbF9id19hdG9taWNfY2hlY2sgW2k5MTVdXSBRR1YNCnBvaW50IDA6 IG1heCBidyAxNDk5MyByZXF1aXJlZCAxMjM2DQoNClRoYW5rIFlvdQ0KS2hhbGVkDQoNCg0KPiA+ IEZpeCBieSBjaGVja2luZyB1YXBpLmZiIGJlZm9yZSBhbGxvY2F0aW5nIGEgWS1wbGFuZS4gSWYg c2V0LA0KPiA+IHVzZXJzcGFjZQ0KPiA+IGNvbmZpZ3VyZWQgdGhpcyBwbGFuZSwgc28gc2tpcCB0 byB0aGUgbmV4dCBjYW5kaWRhdGUuIFRoaXMgZW5hYmxlcw0KPiA+IGdyYWNlZnVsIGZhbGxiYWNr ICg0QSBidXN5IC0+IHRyeSA1QSkgcmF0aGVyIHRoYW4gdGhlIGN1cnJlbnQNCj4gPiBiZWhhdmlv ciB0aGF0IHN0ZWFscyBwbGFuZXMgZnJvbSB1c2Vyc3BhY2UuDQo+IA0KPiBJIGRvIGhhdmUgYSBw YXRjaCBpbiBzb21lIGJyYW5jaCB0aGF0IGNoYW5nZXMgdGhlIFkgcGxhbmUNCj4gc2VsZWN0aW9u IHRvIHVzZSAnZW5hYmxlZF9wbGFuZXMnIGluc3RlYWQgb2YgJ2FjdGl2ZV9wbGFuZXMnDQo+IHdo aWNoIGlzIGVxdWl2YWxlbnQgdG8gdGhpcy4gSXQgaXMgcGVyaGFwcyB0aGUgc2xpZ2h0bHkgbW9y ZQ0KPiBsb2dpY2FsIGFwcHJvYWNoIGJ1dCBpdCBjb3VsZCByZXN1bHQgc29tZSBzcGVjaWZpYyB1 c2FnZQ0KPiBzY2VuYXJpb3MgbG9zaW5nIE5WMTIgc2Nhbm91dCBjYXBhYmlsaXR5LiBJSVJDIEkg YWxzbyBoYWQNCj4gc29tZSB1bnNvbHZlZCBpc3N1ZSB3aXRoIHRoYXQgYXBwcm9hY2gsIHdoaWNo IGlzIHdoeSBJIG5ldmVyDQo+IGV2ZW4gc2VudCBvdXQgdGhlIHBhdGNoLg0KPiANCj4gPiBJR1Qg dGVzdCBhbmQga2VybmVsIGZpeCBnZW5lcmF0ZWQgd2l0aCBhc3Npc3RhbmNlIGZyb20gQ2xhdWRl DQo+ID4gU29ubmV0IDQuNQ0KPiA+IHRocm91Z2ggYW4gaXRlcmF0aXZlIHByb2Nlc3MuIFRoZSBm b2xsb3dpbmcgaXMgYSBzdW1tYXJ5IG9mIHRoZQ0KPiA+IHByb21wdHMNCj4gPiB1c2VkOg0KPiA+ IA0KPiA+IElHVCB0ZXN0IGdlbmVyYXRpb24gcHJvbXB0Og0KPiA+IE5lZWQgYW4gSUdUIHRlc3Qg dG86DQo+ID4gMS4gUmVwcm9kdWNlIHRoZSBOVjEyICsgbXVsdGlwbGUgQUIyNCBwbGFuZSBhbGxv Y2F0aW9uIGNvbmZsaWN0DQo+ID4gMi4gV29yayBhY3Jvc3MgZGlmZmVyZW50IEdQVSB2ZW5kb3Jz IChub3QgSW50ZWwtc3BlY2lmaWMpDQo+ID4gMy4gRGlzY292ZXIgaGFyZHdhcmUgbGltaXRzIHRo cm91Z2ggaXRlcmF0aW9uIChub3QgaGFyZGNvZGVkKQ0KPiA+IDQuIFRlc3QgYXRvbWljIGNvbW1p dCBiZWhhdmlvciB3aXRoIG1peGVkIGZvcm1hdHMNCj4gPiA1LiBWYWxpZGF0ZSBkcml2ZXIgcHJv cGVybHkgcmVqZWN0cyBpbnZhbGlkIGNvbmZpZ3VyYXRpb25zDQo+ID4gNi4gSGVscCBkZWJ1ZyBw bGFuZSBhbGxvY2F0aW9uIGlzc3VlcyAoaW50ZXJhY3RpdmUgaW5zcGVjdGlvbikNCj4gPiANCj4g PiBLZXJuZWwgZml4IGRlYnVnIHByb2Nlc3M6DQo+ID4gMS4gRXhwbGFpbmVkIE5WMTIgVVYtPlkg cGxhbmUgbGlua2luZyBtZWNoYW5pc20gKGxpbmtfbnYxMl9wbGFuZXMpDQo+ID4gMi4gVHJhY2Vk IFktcGxhbmUgc2VsZWN0aW9uIGFsZ29yaXRobSBhbmQgaGFyZHdhcmUgY29uc3RyYWludHMNCj4g PiAzLiBBbmFseXplZCBpOTE1X2Rpc3BsYXlfaW5mbyBvdXRwdXQgc2hvd2luZyB1YXBpIHZzIGh3 IHN0YXRlDQo+ID4gbWlzbWF0Y2gNCj4gPiA0LiBUcmlnZ2VyZWQga2VybmVsIFdBUk5JTkcgaW4g dW5saW5rX252MTJfcGxhbmUoKSBjb25maXJtaW5nIHRoZQ0KPiA+IGJ1Zw0KPiA+IDUuIFRyYWNl ZCBrZXJuZWwgbG9ncyB0aHJvdWdoIGF0b21pYyBjb21taXQgc2VxdWVuY2UNCj4gPiA2LiBJZGVu dGlmaWVkIHJvb3QgY2F1c2U6IFktcGxhbmUgYWxsb2NhdGlvbiBjaGVja3MgdWFwaS5jcnRjLCBi dXQNCj4gPiB0aGF0J3MNCj4gPiDCoMKgIHNldCBsYXRlciBkdXJpbmcgcGxhbmUgdmFsaWRhdGlv bi4gdWFwaS5mYiBpcyBzZXQgZWFybGllciBkdXJpbmcNCj4gPiBzdGF0ZQ0KPiA+IMKgwqAgc2V0 dXAsIG1ha2luZyBpdCB0aGUgY29ycmVjdCBpbmRpY2F0b3Igb2YgdXNlcnNwYWNlDQo+ID4gY29u ZmlndXJhdGlvbg0KPiA+IDcuIEV2YWx1YXRlZCB1YXBpLmZiIHZzIHVhcGkudmlzaWJsZSBmb3Ig ZGV0ZWN0aW9uIHRpbWluZw0KPiA+IDguIEluaXRpYWxseSBzdWdnZXN0ZWQgcmVqZWN0aW5nIGNv bW1pdCB3aXRoIC1FSU5WQUwsIGJ1dCBkZWNpZGVkDQo+ID4gZ3JhY2VmdWwNCj4gPiDCoMKgIGZh bGxiYWNrIHdpdGggY29udGludWUgaXMgYmV0dGVyIC0gYWxsb3dzIHRyeWluZyBhbHRlcm5hdGUg WS0NCj4gPiBwbGFuZXMNCj4gPiDCoMKgICg0QSBidXN5IC0+IDVBKSBpbnN0ZWFkIG9mIGZhaWxp bmcgZW50aXJlIGF0b21pYyBjb21taXQNCj4gPiA5LiBWYWxpZGF0ZWQgZml4IHByZXZlbnRzIHBs YW5lIHN0ZWFsaW5nIHdoaWxlIGFsbG93aW5nIGFsdGVybmF0ZQ0KPiA+IFktcGxhbmUNCj4gPiAN Cj4gPiBDYzogVW1hIFNoYW5rYXIgPHVtYS5zaGFua2FyQGludGVsLmNvbT4NCj4gPiBDYzogSmFu aSBOaWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4NCj4gPiBDYzogVmlsbGUgU3lyamFsYSA8 dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+DQo+ID4gU2lnbmVkLW9mZi1ieTogS2hhbGVk IEFsbWFoYWxsYXd5IDxraGFsZWQuYWxtYWhhbGxhd3lAaW50ZWwuY29tPg0KPiA+IC0tLQ0KPiA+ IMKgZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wbGFuZS5jIHwgNCArKysrDQo+ ID4gwqAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspDQo+ID4gDQo+ID4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfcGxhbmUuYw0KPiA+IGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wbGFuZS5jDQo+ID4gaW5kZXggM2RjMmVk NTIxNDdmLi41N2QxYTljZDIyNmUgMTAwNjQ0DQo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvZGlzcGxheS9pbnRlbF9wbGFuZS5jDQo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9wbGFuZS5jDQo+ID4gQEAgLTE1NzgsNiArMTU3OCwxMCBAQCBzdGF0aWMg aW50IGljbF9jaGVja19udjEyX3BsYW5lcyhzdHJ1Y3QNCj4gPiBpbnRlbF9hdG9taWNfc3RhdGUg KnN0YXRlLA0KPiA+IMKgCQkJaWYgKElTX0VSUih5X3BsYW5lX3N0YXRlKSkNCj4gPiDCoAkJCQly ZXR1cm4gUFRSX0VSUih5X3BsYW5lX3N0YXRlKTsNCj4gPiDCoA0KPiA+ICsJCQkvKiBSZWplY3Qg aWYgdGhpcyBZLXBsYW5lIGlzIGJlaW5nDQo+ID4gY29uZmlndXJlZCBieSB1c2Vyc3BhY2UgKi8N Cj4gPiArCQkJaWYgKHlfcGxhbmVfc3RhdGUtPnVhcGkuZmIpDQo+ID4gKwkJCQljb250aW51ZTsN Cj4gPiArDQo+ID4gwqAJCQlicmVhazsNCj4gPiDCoAkJfQ0KPiA+IMKgDQo+ID4gLS0gDQo+ID4g Mi40My4wDQo+IA0KDQo=