From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.15]) by sourceware.org (Postfix) with ESMTPS id 22E473858C50 for ; Fri, 12 Apr 2024 06:12:33 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 22E473858C50 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 22E473858C50 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=198.175.65.15 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1712902360; cv=pass; b=CXKrMJtCPx6NT0/F0Pr7P6qhCkzfsiHuIF6tjqJk76twHANFN3q3bes7KyZaTobZIxqwmnuJj6dlLjFc8/RISaT9g0QRxRj5+iConuxjJJZCPd9SieOw/jUKcTOvqh+OzhQGK7Hnzsy5hwr3HOwJnhQm/vbS5zuAhTfTEAARqBs= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1712902360; c=relaxed/simple; bh=UkmsUHxHpZymOkmblx5MHbwFwGzmvCQzUcncxK9CwRM=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=cwomMdEQ2Z7sUUCZM2VzE55nO9wq9VG2zp9+hUgGbEZzZja/Yc99KnkJjwSBLWvlwxpEcsBf2SbSK9cV/W6Q+XKwe74NU8xghOmr2UO3lHPZSL0OGVQp5S7Te1cmHCd9aJj3JkY9CYl0ttMfxyRn3Iye7vjGkuPw8la4NK2Nhos= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1712902353; x=1744438353; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=UkmsUHxHpZymOkmblx5MHbwFwGzmvCQzUcncxK9CwRM=; b=CalAZBd8MNnS/1qniNxfZv7Ioje+sjGALVzgOrk+qTE+7m5lRCWIRsln tNS3iaMcBY6xOdoihYcsuiLbGpUN6k9PbK3j9vaVTH6EIzOpHnH+VEJ5A Wd4g7b7KmNPbmvOdCC5XsVIFqfxVe5gDdf1ZvMFGh6WPc17LxtkydJkwQ 1WbVqEroJ7jH9fmSzXIxNSMC0UBsFQtcg5DqgVROpZihW6lH6cuJg9ET6 EEQFHNYpNPt5XPFDXNV51hemGj/sqjprAeaNCu3kZ1o05olMuYTLAoPIV X2wWYRgCKl5jcsGvgcjj+dmBj5o0iR4IDpmSz46HX9fQEbaylSyfrZVB6 w==; X-CSE-ConnectionGUID: fR35CLjtQuu4ldB8JZ+jLw== X-CSE-MsgGUID: Sop+dQkuST+Er1rod6dbww== X-IronPort-AV: E=McAfee;i="6600,9927,11041"; a="12136945" X-IronPort-AV: E=Sophos;i="6.07,195,1708416000"; d="scan'208";a="12136945" Received: from fmviesa002.fm.intel.com ([10.60.135.142]) by orvoesa107.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Apr 2024 23:12:31 -0700 X-CSE-ConnectionGUID: 0CuqISYmTnGc4ll/MDTjxQ== X-CSE-MsgGUID: evJ5rfYHRbuyqc1LYCvjTQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,195,1708416000"; d="scan'208";a="44418901" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmviesa002.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 11 Apr 2024 23:12:31 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Thu, 11 Apr 2024 23:12:30 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Thu, 11 Apr 2024 23:12:29 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Thu, 11 Apr 2024 23:12:29 -0700 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.101) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Thu, 11 Apr 2024 23:12:28 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EU/8VTkvt8fzmqGCXj2gyErtzYXIO5Q8jEpwIb00GLQ8oyiy1uXbhGdaNgO4bCrdpYtArHsSSLBGrZT9zdKqJcfxxEvL4XcRsT3G2Wj0lZZAjsMZDwYKVHq+oYOAelg3fWNGk/pkjGb5hRfWFjtZqyKjO60PEDXAFPlwlrlHdlM+SQWpUfpYWl0iYEWRuEOJerxxL7SORqpPZdR594lAlL98SKWVXtJDPUFS75iCc9xrlIHZ3kxWPLca7S154IWbf96Aaiab+xqAJumQD7Y+QB58iuY03Dn8YUevYn/c3l70IvQLJrR0oZS35QUbF0uwfYPzwuiwbVj0SzmNPkvGnA== 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=UkmsUHxHpZymOkmblx5MHbwFwGzmvCQzUcncxK9CwRM=; b=M08DtMrEtwvfn3bAEmu+XN5Yo4XlvJ71IOyivfELS/4GtTkgiygvfnzkqxYoTAPUp3jKYjp1jNQKkBLZ1LMCFjqQpGknbdeVxT66WNTmIo6JYXJDR6aHPyM0KIWO60KtTcOGG/GZ7GeV9XUnE4WPnTodntQm/ptjFZa1Xy2Y3j1wnsI7bBXb+KdsjWgnySW7F42My4FMS3Yna1xV0USG42Trxl27FOlpXsaIK5KuFo9ixAYctQrIOnW5C7APi+X9aWbBbmOauO7SvJuGgnpFkLEPMQOsKZz/nGBFxxINKRXSHRZCLoEje6PjVpbV4fNBN4VBHTzqtiDZdKT74A/L5g== 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 MW5PR11MB5908.namprd11.prod.outlook.com (2603:10b6:303:194::10) by SA1PR11MB5803.namprd11.prod.outlook.com (2603:10b6:806:23e::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7452.25; Fri, 12 Apr 2024 06:12:23 +0000 Received: from MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::aaa8:bc22:5fb0:5ed0]) by MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::aaa8:bc22:5fb0:5ed0%5]) with mapi id 15.20.7452.019; Fri, 12 Apr 2024 06:12:23 +0000 From: "Li, Pan2" To: =?utf-8?B?Q2hyaXN0b3BoIE3DvGxsbmVy?= CC: Kito Cheng , "gcc-patches@gcc.gnu.org" , "juzhe.zhong@rivai.ai" , "Wang, Yanzhang" Subject: RE: [PATCH v2] RISC-V: Allow RVV intrinsic for more function target Thread-Topic: [PATCH v2] RISC-V: Allow RVV intrinsic for more function target Thread-Index: AQHahQnYzTuvQQ/CXUSOqm2JMOM+TLFdnKyAgAAB/mCABoFJAIAAFphA Date: Fri, 12 Apr 2024 06:12:22 +0000 Message-ID: References: <20240327031603.453410-1-pan2.li@intel.com> <20240402142657.2057567-1-pan2.li@intel.com> In-Reply-To: Accept-Language: en-US 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=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MW5PR11MB5908:EE_|SA1PR11MB5803:EE_ x-ms-office365-filtering-correlation-id: f3fa9030-a7e7-43cc-9cb0-08dc5ab7849f x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: QyIYrOa9ynR+acIFyf5YWgBm0bSndETOcohq0DORbhHbr/bJWkhEOYc4Le+vKrRq/DCqzg8iVNJrvmbwF26jHVwHSdZRm/vvKEycO4M+rK71SGqR7+S0ka8YBFK3kS/f1EsNv3u5T66XajEB9VjuetfKYiwxK3KNKIIUvkC9GjPMMS0pJ7FAIvk1iSqEUw2HwlrxHqCHNnZs5cgYI9hBxyBCWSN8t/fK8S8ZAMMNWagl+ZA899CfCd9G8aHx87GmrMXh7Ahhn8KXwNSQ051weBbZ6chkeMBWkc9rkd5PJs508uJPIcOc5qd5fK487FR2aHImVtgvNyFPqDnV5Ur2UaqgRtRALPjFmB4ElF4PwQhzirSY9FlsUzqs0nPjq2i9AV5kqAEHBaTmfWK8o7bcofdGph2MYbovb5GD2sfaRmtSvfCvsoILymMU1IrwgQdqEF8MabHQylwQuIHZTX03ogbyftY8FwSW0s43TxKQMcJB/7oG3OwrDdtBOzAvLMOOKkqdkH6k/zgu83tnUmO67z2c7Zn4MqD4qReFQyIhB3i0gRyyIx3BWqlJDHSygb4JHgmJ3CbA6LkYrJ2GHBW6Hyf6Nnjt3HJv9rMKANjtQ6YGH5V48w8cfsDKaqgnORe9mCks1i1RM296TboTh/gNn+5jgfmBf+nvQQjwTdG9qis= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW5PR11MB5908.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(376005)(1800799015)(38070700009);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?ZHBWSGFHRFU5bnM5ZWc0aGpKSWl6WWlvWGZpUGRzQis0LzcxY1k5NTFkeXpx?= =?utf-8?B?MGVlVlRzRTd2eHB2SFBQajJHWCtiVWNGdDg1dWVyajdjOExXVTZNSzE0eGJV?= =?utf-8?B?M0dQUkZsRkIrZlo4U1ByOFp5QWIxbjNSMkI1TmVObVlHdTBqWFBvSU9qZ3hn?= =?utf-8?B?eEhFUU01M29ZUDB5NHg3U0VwdjN2Y1dYS2txT1ZESXgvMit3WElFQm45YlpC?= =?utf-8?B?VkZSRmpNSVY1b09FMkJ3K3oza0hOdHJRclFoNTdLWFl3NmdSREFaMFFWdU1F?= =?utf-8?B?SkZKQ2srWk1iNWs4a3I4WTA3Z09Cd3BEbFZQZzVGT3NkZFBrbEVtbEZSRlZY?= =?utf-8?B?eGxrRHk2K0RQRVUvUmVCREdvb2V4c3B5WGxyR24wTnAwUEhiTDE3dHZNY0I2?= =?utf-8?B?RTZkdnBXZW1KVWV4UXgweXcyMjArUnI0WlVtdVhDVmVYTlQ3SnpLcXNDUnVh?= =?utf-8?B?ZUFxODIvOGpaNm8zcU5GMkN2dU1JTW9idDdqaVhOYmxMd3RQcWZPUXdUQVpi?= =?utf-8?B?MHJBWFp3bG5Gc1dZejc5RHBtazNkQy9CaUR4bHRSTFdudjRrSGE2am1zL1pp?= =?utf-8?B?aGhvRlAwN0E3VFVlWndrT3dxMzB3UzU3SDBnbTNDQjFaV29mWkw2QUc5MU03?= =?utf-8?B?em04UGNRRjZ0aGw3V281MTdNalpydjYxMEJnOHl0OXBUaUZzZVNKSUFVWnlT?= =?utf-8?B?VnY0dWQvR0hna0dJcmlHR3VYdzRiNkxqVE5WdTNva2tlbS85U1V5WHVLdGJl?= =?utf-8?B?ZWd3ZUdVUEJMUzdXOGZIMkJKZU9sTTFTTHV0THdWeGNJcjVjbk9jN0hqcS8x?= =?utf-8?B?dXBxbldFckdMcmxveEtmZlV1RjV2czRLLzE0NXc1aU1ZaHgxc1A1N1k5L1J3?= =?utf-8?B?S3NVMTZ6SHU2R0tiMlBTSmRldDZwS3ZnZTI3OXhyVUpheFg0Qm9qaHo5Z05M?= =?utf-8?B?Q1VkUjlmVUdXb1hES1NUN0phTWMzSGhuenBPc0lDLzZlM08vMFBDcE1GR3pY?= =?utf-8?B?b3pMVzF1OHJEZE1yMkNURVgwY3IxQVVXNDRwQnpaRjlHWTRHdTgrMUEwYXFF?= =?utf-8?B?MXlmM29rNXhwdkZQMEVQYmtJWUtQSDNWZ1pnZmZPM05waXR5S1RNVVczaGJY?= =?utf-8?B?MVltUVpZL1lDS0F5cjJzUWlxTll1MTh5eWhLTG9ITHQ2am4ySk1nNXBmaUVp?= =?utf-8?B?ZUJnTXNzVjFUZDJua2M2WTUwd3dSaktzeFFjeFFWMmpMcFZEOGNsYjBhSDB2?= =?utf-8?B?UzRRc0RiM3hBTFZ4VkIrZEJWVzJQKzNiL3AvWkkxYzVraGx4Y3lHN0xSNUl1?= =?utf-8?B?S2RDaXlpRGJsYUVNOWdCSlpxREs2UE1PaXJvY2YzYTFZWVh6K3VocVMxaUQz?= =?utf-8?B?dHByN0VJaFhYQ2lKWXlDaWg1VzZjRHhQVVBhOFZ5a2Z1OU5lTTdkaDlKaHFh?= =?utf-8?B?LzJacUxPT3lGTlRodm5XVndYbVJUZW1Lb2RiaG0ybjByTW9DMlE3VysrU0VC?= =?utf-8?B?RFRYYW54SjBaa1M4MDJvTVgrK2U5dzVoQmZIekUwVUZiZFFST09UWVJqdWdU?= =?utf-8?B?cG50czN5b1VhSlZSUWtkT2tGQjgvMitad0oyYlBURUh1anU1a0RrZFJYZEs0?= =?utf-8?B?anoyOXhhOXRhc0k0em1GMXhUYnVOdyt5ZUZDZHRHMFRIQWZtT1I1M0ZPM0ZF?= =?utf-8?B?ZmVQdkNRRmozOWhNRTNGT0tVMmhsR2Y0d0pSTnJXcTFGWGVDNlNyK0lIYTkz?= =?utf-8?B?eUxCbDQzUGcxZ1Q2T2ppZFo2d09SdlpkQWZFYW4rdXVxQnBTb2wyNE44UWh4?= =?utf-8?B?RUZESFdYT1JzaVhONWJMVUVWSG8rTlcvL3ozQ1ZudUFSUCt3MkJKOFk3ZlJL?= =?utf-8?B?bVNmMWhnZVdlVExkRFp0c2l5MTdsT2RJMHJ2cjFDZ3J4MEZiSUtWOTkydlVo?= =?utf-8?B?NklXdUVXNE1nTHVDZ3FiL2J1N2x5NWtjOUVQT2I4REl2Ykh3aHErODkwc2pE?= =?utf-8?B?Nno1UWxXYitzaUxNb0xTQ3FoVGYxUzZwRW0zMElZVXRVSjNwdUNqU2w2N2tC?= =?utf-8?B?bXQzZFJrd3l3QVFSOVI0T1lwankraXlyRnBOQzZwT3VHMUZjV2RpeGRUdTNZ?= =?utf-8?Q?5+6A=3D?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW5PR11MB5908.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f3fa9030-a7e7-43cc-9cb0-08dc5ab7849f X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Apr 2024 06:12:22.9735 (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: tmDDzcApLMr/2PHYXNQ1a4yayQKMNb39nLqX3/5zo3iCeYBGpizx18tULKU9K5lb1qNZPN/esp+yLCP7dIXvEw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR11MB5803 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-13.5 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,KAM_SHORT,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: VGhhbmtzIENocmlzdG9waCwgd2lsbCB0YWtlIGNhcmUgb2YgaXQgQVNBUC4NCg0KUGFuDQoNCi0t LS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBDaHJpc3RvcGggTcO8bGxuZXIgPGNocmlz dG9waC5tdWVsbG5lckB2cnVsbC5ldT4gDQpTZW50OiBGcmlkYXksIEFwcmlsIDEyLCAyMDI0IDEy OjUxIFBNDQpUbzogTGksIFBhbjIgPHBhbjIubGlAaW50ZWwuY29tPg0KQ2M6IEtpdG8gQ2hlbmcg PGtpdG8uY2hlbmdAZ21haWwuY29tPjsgZ2NjLXBhdGNoZXNAZ2NjLmdudS5vcmc7IGp1emhlLnpo b25nQHJpdmFpLmFpOyBXYW5nLCBZYW56aGFuZyA8eWFuemhhbmcud2FuZ0BpbnRlbC5jb20+DQpT dWJqZWN0OiBSZTogW1BBVENIIHYyXSBSSVNDLVY6IEFsbG93IFJWViBpbnRyaW5zaWMgZm9yIG1v cmUgZnVuY3Rpb24gdGFyZ2V0DQoNCkhpIFBhbiwNCg0KVGhpcyBwYXRjaCB0cmlnZ2VycyB0aGUg Zm9sbG93aW5nIGVycm9yIHdpdGggLS1lbmFibGUtd2Vycm9yLWFsd2F5czoNCg0KZ2NjL2NvbmZp Zy9yaXNjdi9yaXNjdi5jYzogSW4gZnVuY3Rpb24g4oCYdm9pZA0KcmlzY3ZfdmFsaWRhdGVfdmVj dG9yX3R5cGUoY29uc3RfdHJlZSwgY29uc3QgY2hhciop4oCZOg0KZ2NjL2NvbmZpZy9yaXNjdi9y aXNjdi5jYzo1NjE0OjIzOiBlcnJvcjogY29tcGFyaXNvbiBvZiBpbnRlZ2VyDQpleHByZXNzaW9u cyBvZiBkaWZmZXJlbnQgc2lnbmVkbmVzczog4oCYaW504oCZIGFuZCDigJh1bnNpZ25lZCBpbnTi gJkNClstV2Vycm9yPXNpZ24tY29tcGFyZV0NCiA1NjE0IHwgICBpZiAoVEFSR0VUX01JTl9WTEVO IDwgcmVxdWlyZWRfbWluX3ZsZW4pDQoNCkJSDQpDaHJpc3RvcGgNCg0KT24gTW9uLCBBcHIgOCwg MjAyNCBhdCAzOjMx4oCvQU0gTGksIFBhbjIgPHBhbjIubGlAaW50ZWwuY29tPiB3cm90ZToNCj4N Cj4gQ29tbWl0dGVkLCB0aGFua3MgS2l0by4NCj4NCj4gUGFuDQo+DQo+IC0tLS0tT3JpZ2luYWwg TWVzc2FnZS0tLS0tDQo+IEZyb206IEtpdG8gQ2hlbmcgPGtpdG8uY2hlbmdAZ21haWwuY29tPg0K PiBTZW50OiBNb25kYXksIEFwcmlsIDgsIDIwMjQgOToyNCBBTQ0KPiBUbzogTGksIFBhbjIgPHBh bjIubGlAaW50ZWwuY29tPg0KPiBDYzogZ2NjLXBhdGNoZXNAZ2NjLmdudS5vcmc7IGp1emhlLnpo b25nQHJpdmFpLmFpOyBXYW5nLCBZYW56aGFuZyA8eWFuemhhbmcud2FuZ0BpbnRlbC5jb20+DQo+ IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjJdIFJJU0MtVjogQWxsb3cgUlZWIGludHJpbnNpYyBmb3Ig bW9yZSBmdW5jdGlvbiB0YXJnZXQNCj4NCj4gTEdUTSA6KQ0KPg0KPiBPbiBUdWUsIEFwciAyLCAy MDI0IGF0IDEwOjI44oCvUE0gPHBhbjIubGlAaW50ZWwuY29tPiB3cm90ZToNCj4gPg0KPiA+IEZy b206IFBhbiBMaSA8cGFuMi5saUBpbnRlbC5jb20+DQo+ID4NCj4gPiBJbiBwcmV2aW91cywgd2Ug YWxsb3dlZCB0aGUgdGFyZ2V0KCgiYXJjaD0rdiIpKSBmb3IgYSBmdW5jdGlvbiB3aXRoDQo+ID4g cnY2NGdjIGJ1aWxkLiAgVGhpcyBwYXRjaCB3b3VsZCBsaWtlIHRvIHN1cHBvcnQgbW9yZSBhcmNo IG9wdGlvbnMgYXMNCj4gPiBiZWxvdzoNCj4gPiAqIHp2ZTMyeA0KPiA+ICogenZlMzJmDQo+ID4g KiB6dmU2NHgNCj4gPiAqIHp2ZTY0Zg0KPiA+ICogenZlNjRkDQo+ID4gKiB6dmZobWluDQo+ID4g KiB6dmZoDQo+ID4gKiB6dmsqDQo+ID4gKiB6dmJiDQo+ID4NCj4gPiBGb3IgZXhhbXBsZSwgd2Ug aGF2ZSBzYW1wbGUgY29kZSBhcyBiZWxvdy4NCj4gPiB2ZmxvYXQzMm0xX3QNCj4gPiBfX2F0dHJp YnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTY0ZiIpKSkNCj4gPiB0ZXN0XzkgKHZmbG9hdDMybTFf dCBhLCB2ZmxvYXQzMm0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+IHsNCj4gPiAgIHJldHVybiBfX3Jp c2N2X3ZmYWRkX3Z2X2YzMm0xIChhLCBiLCB2bCk7DQo+ID4gfQ0KPiA+DQo+ID4gSXQgd2lsbCBn ZW5lcmF0ZSB0aGUgYXNtIGNvZGUgd2hlbiBidWlsZCB3aXRoIC1PMyAtbWFyY2g9cnY2NGdjDQo+ ID4gdGVzdF85Og0KPiA+ICAgICAgICAgdnNldHZsaSB6ZXJvLGEwLGUzMixtMSx0YSxtYQ0KPiA+ ICAgICAgICAgdmZhZGQudnYgICAgICAgIHY4LHY4LHY5DQo+ID4gICAgICAgICByZXQNCj4gPg0K PiA+IE1lYW53aGlsZSwgdGhpcyBwYXRjaCBpbnRyb2R1Y2VzIG1vcmUgZXJyb3IgaGFuZGxpbmcg Zm9yIHRoZSB0YXJnZXQNCj4gPiBhdHRyaWJ1dGUuICBUYWtlIGFyY2g9K3p2ZTMyeCB3aXRoIHZm bG9hdDMybTFfdCB3aWxsIGhhdmUgZXJyb3IgbWVzc2FnZQ0KPiA+ICIndmZsb2F0MzJtMV90JyBy ZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYgb3IgenZlNjRkIElTQSBleHRlbnNpb24iLg0KPiA+ IEFuZCB0YWtlIGFyY2g9K3p2ZTMyZiB3aXRoIHZmbG9hdDE2bTFfdCB3aWxsIGhhdmUgZXJyb3Ig bWVzc2FnZQ0KPiA+ICIndmZsb2F0MTZtMV90JyByZXF1aXJlcyB0aGUgenZmaG1pbiBvciB6dmZo IElTQSBleHRlbnNpb24iLg0KPiA+DQo+ID4gQnkgZGVmYXVsdCwgYWxsIHRoZSBSVlYgdHlwZXMg aW5jbHVkZXMgdGhlIGNtZGxpbmUgbWFyY2ggd2lsbCBiZQ0KPiA+IHJlZ2lzdGVyZWQgd2hlbiBp bmNsdWRlIHRoZSByaXNjdl92ZWN0b3IuaC4gIEFuZCB3ZSBoYXZlIHNvcnRzIG9mIGNoZWNrDQo+ ID4gZHVyaW5nIGFyZ3MgYW5kIHJldHVybiB0eXBlcy4NCj4gPg0KPiA+IEJlbG93IHRlc3QgYXJl IHBhc3NlZCBmb3IgdGhpcyBwYXRjaDoNCj4gPiAqIFRoZSByaXNjdiBmdWxseSByZWdyZXNzaW9u IHRlc3QuDQo+ID4NCj4gPiBnY2MvQ2hhbmdlTG9nOg0KPiA+DQo+ID4gICAgICAgICAqIGNvbmZp Zy9yaXNjdi9yaXNjdi1jLmNjIChzdHJ1Y3QgcHJhZ21hX2ludHJpbnNpY19mbGFncyk6IE5ldw0K PiA+ICAgICAgICAgc3RydWN0IHRvIGhvbGQgYWxsIGludHJpbmlzYyByZWxhdGVkIGZsYWdzLg0K PiA+ICAgICAgICAgKHJpc2N2X3ByYWdtYV9pbnRyaW5zaWNfZmxhZ3NfcG9sbHV0ZSk6IE5ldyBm dW5jIHRvIHBvbGx1dGUNCj4gPiAgICAgICAgIHRoZSBpbnRyaW5zaWMgZmxhZ3MgYW5kIGJhY2t1 cCBvcmlnaW5hbCBmbGFncy4NCj4gPiAgICAgICAgIChyaXNjdl9wcmFnbWFfaW50cmluc2ljX2Zs YWdzX3Jlc3RvcmUpOiBOZXcgZnVuYyB0byByZXN0b3JlDQo+ID4gICAgICAgICB0aGUgZmxhZ3Mg ZnJvbSB0aGUgYmFja3VwIGludHJpbnNpYyBmbGFncy4NCj4gPiAgICAgICAgIChyaXNjdl9wcmFn bWFfaW50cmluc2ljKTogUG9sbHV0ZSB0aGUgZmxhZ3MgYW5kIHJlZ2lzdGVyIGFsbA0KPiA+ICAg ICAgICAgcG9zc2libGUgYnVpbHRpbiB0eXBlcyBhbmQgZnVuY3Rpb25zLCB0aGVuIHJlc3RvcmUg YW5kIHJlaW5pdC4NCj4gPiAgICAgICAgICogY29uZmlnL3Jpc2N2L3Jpc2N2LXByb3Rvcy5oIChy ZWluaXRfYnVpbHRpbnMpOiBOZXcgZnVuYw0KPiA+ICAgICAgICAgZGVjbCB0byByZWluaXQgYWZ0 ZXIgZmxhZ3MgcG9sbHV0aW9uLg0KPiA+ICAgICAgICAgKHJpc2N2X29wdGlvbl9vdmVycmlkZSk6 IE5ldyBleHRlcm4gZnVuYyBkZWNsLg0KPiA+ICAgICAgICAgKiBjb25maWcvcmlzY3YvcmlzY3Yt dmVjdG9yLWJ1aWx0aW5zLmNjIChyZWdpc3Rlcl9idWlsdGluX3R5cGVzX29uX251bGwpOg0KPiA+ ICAgICAgICAgTmV3IGZ1bmMgdG8gcmVnaXN0ZXIgYnVpbHRpbiB0eXBlcyBpZiBudWxsLg0KPiA+ ICAgICAgICAgKERFRl9SVlZfVFlQRSk6IERpdHRvLg0KPiA+ICAgICAgICAgKERFRl9SVlZfVFVQ TEVfVFlQRSk6IERpdHRvLg0KPiA+ICAgICAgICAgKHJlaW5pdF9idWlsdGlucyk6IE5ldyBmdW5j IGltcGwgdG8gcmVpbml0IGFmdGVyIGZsYWdzIHBvbGx1dGlvbi4NCj4gPiAgICAgICAgICogY29u ZmlnL3Jpc2N2L3Jpc2N2LXZlY3Rvci1idWlsdGlucy5jYyAoZXhwYW5kX2J1aWx0aW4pOiBSZXR1 cm4NCj4gPiAgICAgICAgIHRhcmdldCBydHggYWZ0ZXIgZXJyb3JfYXQuDQo+ID4gICAgICAgICAq IGNvbmZpZy9yaXNjdi9yaXNjdi5jYyAocmlzY3ZfdmVjdG9yX2ludF90eXBlX3ApOiBOZXcgcHJl ZGljYXRlDQo+ID4gICAgICAgICBmdW5jIHRvIHRlbGwgb25lIHRyZWUgdHlwZSBpcyBpbnRlZ2Vy IG9yIG5vdC4NCj4gPiAgICAgICAgIChyaXNjdl92ZWN0b3JfZmxvYXRfdHlwZV9wKTogTmV3IHBy ZWRpY2F0ZSBmdW5jIHRvIHRlbGwgb25lIHRyZWUNCj4gPiAgICAgICAgIHR5cGUgaXMgZmxvYXQg b3Igbm90Lg0KPiA+ICAgICAgICAgKHJpc2N2X3ZlY3Rvcl9lbGVtZW50X2JpdHNpemUpOiBOZXcg ZnVuYyB0byBnZXQgdGhlIGVsZW1lbnQgYml0c2l6ZQ0KPiA+ICAgICAgICAgb2YgYSB2ZWN0b3Ig dHJlZSB0eXBlLg0KPiA+ICAgICAgICAgKHJpc2N2X3ZlY3Rvcl9yZXF1aXJlZF9taW5fdmxlbik6 IE5ldyBmdW5jIHRvIGdldCB0aGUgcmVxdWlyZWQgbWluIHZsZW4NCj4gPiAgICAgICAgIG9mIGEg dmVjdG9yIHRyZWUgdHlwZS4NCj4gPiAgICAgICAgIChyaXNjdl92YWxpZGF0ZV92ZWN0b3JfdHlw ZSk6IE5ldyBmdW5jIHRvIHZhbGlkYXRlIHRoZSB0cmVlIHR5cGUNCj4gPiAgICAgICAgIGlzIHZh bGlkIG9uIGZsYWdzLg0KPiA+ICAgICAgICAgKHJpc2N2X3JldHVybl92YWx1ZV9pc192ZWN0b3Jf dHlwZV9wKTogTGV2ZXJhZ2UgdGhlIGZ1bmMNCj4gPiAgICAgICAgIHJpc2N2X3ZhbGlkYXRlX3Zl Y3Rvcl90eXBlIHRvIGRvIHRoZSB0cmVlIHR5cGUgdmFsaWRhdGlvbi4NCj4gPiAgICAgICAgIChy aXNjdl9hcmd1bWVudHNfaXNfdmVjdG9yX3R5cGVfcCk6IERpdHRvLg0KPiA+ICAgICAgICAgKHJp c2N2X292ZXJyaWRlX29wdGlvbnNfaW50ZXJuYWwpOiBEaXR0by4NCj4gPg0KPiA+IGdjYy90ZXN0 c3VpdGUvQ2hhbmdlTG9nOg0KPiA+DQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvcHIxMDk0NzktMS5jOiBBZGp1c3QgdGhlIGV4aXN0aW5nIHRlc3QNCj4gPiAgICAgICAg IHNjZW5hcmlvcyBhbmQgYWRkIG5ldyBlcnJvciBjaGVjayB0ZXN0cy4NCj4gPiAgICAgICAgICog Z2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9wcjEwOTQ3OS0yLmM6IERpdHRvLg0KPiA+ICAgICAg ICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5LTMuYzogRGl0dG8uDQo+ID4g ICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvcHIxMDk0NzktNC5jOiBEaWl0by4N Cj4gPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9wcjEwOTQ3OS01LmM6IERp aXRvLg0KPiA+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5LTYu YzogRGlpdG8uDQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0x MC5jOiBEaXR0by4NCj4gPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2Vy LTEyLmM6IERpdHRvLg0KPiA+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Vz ZXItMTMuYzogRGl0dG8uDQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2Uv dXNlci0xNC5jOiBEaXR0by4NCj4gPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS91c2VyLTE1LmM6IERpdHRvLg0KPiA+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9i YXNlL3VzZXItMi5jOiBEaXR0by4NCj4gPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS91c2VyLTMuYzogRGl0dG8uDQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvdXNlci01LmM6IERpdHRvLg0KPiA+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2 di9iYXNlL3VzZXItNi5jOiBEaXR0by4NCj4gPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS91c2VyLTkuYzogRGl0dG8uDQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3Yv cnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTEwLmM6IE5ldyB0ZXN0 Lg0KPiA+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy0xMS5jOiBOZXcgdGVzdC4NCj4gPiAgICAgICAgICogZ2NjLnRh cmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTIu YzogTmV3IHRlc3QuDQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFy Z2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTEzLmM6IE5ldyB0ZXN0Lg0KPiA+ICAgICAg ICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2lu dHJpbnNpYy0xNC5jOiBOZXcgdGVzdC4NCj4gPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTUuYzogTmV3IHRlc3Qu DQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0 ZV92X3dpdGhfaW50cmluc2ljLTE2LmM6IE5ldyB0ZXN0Lg0KPiA+ICAgICAgICAgKiBnY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xNy5j OiBOZXcgdGVzdC4NCj4gPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJn ZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTguYzogTmV3IHRlc3QuDQo+ID4gICAgICAg ICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50 cmluc2ljLTE5LmM6IE5ldyB0ZXN0Lg0KPiA+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2 di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yMC5jOiBOZXcgdGVzdC4N Cj4gPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRl X3Zfd2l0aF9pbnRyaW5zaWMtMjEuYzogTmV3IHRlc3QuDQo+ID4gICAgICAgICAqIGdjYy50YXJn ZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTIyLmM6 IE5ldyB0ZXN0Lg0KPiA+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rhcmdl dF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yMy5jOiBOZXcgdGVzdC4NCj4gPiAgICAgICAg ICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRy aW5zaWMtMjQuYzogTmV3IHRlc3QuDQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTI1LmM6IE5ldyB0ZXN0Lg0K PiA+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVf dl93aXRoX2ludHJpbnNpYy0yNi5jOiBOZXcgdGVzdC4NCj4gPiAgICAgICAgICogZ2NjLnRhcmdl dC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjcuYzog TmV3IHRlc3QuDQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0 X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTI4LmM6IE5ldyB0ZXN0Lg0KPiA+ICAgICAgICAg KiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJp bnNpYy0yOS5jOiBOZXcgdGVzdC4NCj4gPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzAuYzogTmV3IHRlc3QuDQo+ ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92 X3dpdGhfaW50cmluc2ljLTMxLmM6IE5ldyB0ZXN0Lg0KPiA+ICAgICAgICAgKiBnY2MudGFyZ2V0 L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zMi5jOiBO ZXcgdGVzdC4NCj4gPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRf YXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzMuYzogTmV3IHRlc3QuDQo+ID4gICAgICAgICAq IGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmlu c2ljLTM0LmM6IE5ldyB0ZXN0Lg0KPiA+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9i YXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zNS5jOiBOZXcgdGVzdC4NCj4g PiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zf d2l0aF9pbnRyaW5zaWMtMzYuYzogTmV3IHRlc3QuDQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQv cmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTM3LmM6IE5l dyB0ZXN0Lg0KPiA+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9h dHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zOC5jOiBOZXcgdGVzdC4NCj4gPiAgICAgICAgICog Z2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5z aWMtMzkuYzogTmV3IHRlc3QuDQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQwLmM6IE5ldyB0ZXN0Lg0KPiA+ ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93 aXRoX2ludHJpbnNpYy00MS5jOiBOZXcgdGVzdC4NCj4gPiAgICAgICAgICogZ2NjLnRhcmdldC9y aXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDIuYzogTmV3 IHRlc3QuDQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0 dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQzLmM6IE5ldyB0ZXN0Lg0KPiA+ICAgICAgICAgKiBn Y2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNp Yy00NC5jOiBOZXcgdGVzdC4NCj4gPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDUuYzogTmV3IHRlc3QuDQo+ID4g ICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dp dGhfaW50cmluc2ljLTQ2LmM6IE5ldyB0ZXN0Lg0KPiA+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jp c2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00Ny5jOiBOZXcg dGVzdC4NCj4gPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0 cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDguYzogTmV3IHRlc3QuDQo+ID4gICAgICAgICAqIGdj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2lj LTQ5LmM6IE5ldyB0ZXN0Lg0KPiA+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy01MC5jOiBOZXcgdGVzdC4NCj4gPiAg ICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0 aF9pbnRyaW5zaWMtNTEuYzogTmV3IHRlc3QuDQo+ID4gICAgICAgICAqIGdjYy50YXJnZXQvcmlz Y3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTUyLmM6IE5ldyB0 ZXN0Lg0KPiA+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRy aWJ1dGVfdl93aXRoX2ludHJpbnNpYy01My5jOiBOZXcgdGVzdC4NCj4gPiAgICAgICAgICogZ2Nj LnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMt OS5jOiBOZXcgdGVzdC4NCj4gPg0KPiA+IFNpZ25lZC1vZmYtYnk6IFBhbiBMaSA8cGFuMi5saUBp bnRlbC5jb20+DQo+ID4gLS0tDQo+ID4gIGdjYy9jb25maWcvcmlzY3YvcmlzY3YtYy5jYyAgICAg ICAgICAgICAgICAgICB8ICA5NCArKysrKy0NCj4gPiAgZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1w cm90b3MuaCAgICAgICAgICAgICAgIHwgICAyICsNCj4gPiAgZ2NjL2NvbmZpZy9yaXNjdi9yaXNj di12ZWN0b3ItYnVpbHRpbnMuY2MgICAgIHwgIDUzICsrKy0NCj4gPiAgZ2NjL2NvbmZpZy9yaXNj di9yaXNjdi5jYyAgICAgICAgICAgICAgICAgICAgIHwgMTU3ICsrKysrKysrKy0NCj4gPiAgLi4u L2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvcHIxMDk0NzktMS5jICAgIHwgIDI5ICstDQo+ID4g IC4uLi9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5LTIuYyAgICB8ICAyOSArLQ0K PiA+ICAuLi4vZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9wcjEwOTQ3OS0zLmMgICAgfCAgNTAg KysrLQ0KPiA+ICAuLi4vZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9wcjEwOTQ3OS00LmMgICAg fCAgNTEgKysrLQ0KPiA+ICAuLi4vZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9wcjEwOTQ3OS01 LmMgICAgfCAgMzcgKystDQo+ID4gIC4uLi9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5 NDc5LTYuYyAgICB8ICAzMyArKy0NCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2lu dHJpbnNpYy0xMC5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRo X2ludHJpbnNpYy0xMS5jICAgIHwgIDI2ICsrDQo+ID4gIC4uLi90YXJnZXRfYXR0cmlidXRlX3Zf d2l0aF9pbnRyaW5zaWMtMTIuYyAgICB8ICAzMyArKysNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy0xMy5jICAgIHwgIDMzICsrKw0KPiA+ICAuLi4vdGFyZ2V0X2F0 dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE0LmMgICAgfCAgNDAgKysrDQo+ID4gIC4uLi90YXJn ZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTUuYyAgICB8ICA0NyArKysNCj4gPiAgLi4u L3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xNi5jICAgIHwgIDEyICsNCj4gPiAg Li4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xNy5jICAgIHwgIDEzICsNCj4g PiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xOC5jICAgIHwgIDEzICsN Cj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xOS5jICAgIHwgIDEz ICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yMC5jICAgIHwg IDEzICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yMS5jICAg IHwgIDEzICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yMi5j ICAgIHwgIDEzICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0y My5jICAgIHwgIDEzICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNp Yy0yNC5jICAgIHwgIDEzICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJp bnNpYy0yNS5jICAgIHwgIDEzICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2lu dHJpbnNpYy0yNi5jICAgIHwgIDEzICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRo X2ludHJpbnNpYy0yNy5jICAgIHwgIDEzICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93 aXRoX2ludHJpbnNpYy0yOC5jICAgIHwgIDEzICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVf dl93aXRoX2ludHJpbnNpYy0yOS5jICAgIHwgIDEzICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy0zMC5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3RhcmdldF9hdHRy aWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zMS5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3RhcmdldF9h dHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zMi5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3Rhcmdl dF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zMy5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3Rh cmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zNC5jICAgIHwgIDEyICsNCj4gPiAgLi4u L3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zNS5jICAgIHwgIDEyICsNCj4gPiAg Li4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zNi5jICAgIHwgIDEyICsNCj4g PiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zNy5jICAgIHwgIDEyICsN Cj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zOC5jICAgIHwgIDEy ICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zOS5jICAgIHwg IDEyICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00MC5jICAg IHwgIDEyICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00MS5j ICAgIHwgIDEyICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00 Mi5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNp Yy00My5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJp bnNpYy00NC5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2lu dHJpbnNpYy00NS5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRo X2ludHJpbnNpYy00Ni5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVfdl93 aXRoX2ludHJpbnNpYy00Ny5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1dGVf dl93aXRoX2ludHJpbnNpYy00OC5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy00OS5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3RhcmdldF9hdHRy aWJ1dGVfdl93aXRoX2ludHJpbnNpYy01MC5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3RhcmdldF9h dHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy01MS5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3Rhcmdl dF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy01Mi5jICAgIHwgIDEyICsNCj4gPiAgLi4uL3Rh cmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy01My5jICAgIHwgIDEyICsNCj4gPiAgLi4u L3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy05LmMgICAgIHwgIDEyICsNCj4gPiAg Li4uL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0xMC5jICAgICAgIHwgIDM5ICsrLQ0K PiA+ICAuLi4vZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTEyLmMgICAgICAgfCAyNzUg KysrKysrKysrKysrLS0tLS0tDQo+ID4gIC4uLi9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Vz ZXItMTMuYyAgICAgICB8IDE1NiArKysrKystLS0tDQo+ID4gIC4uLi9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9iYXNlL3VzZXItMTQuYyAgICAgICB8IDI1NyArKysrKysrKysrLS0tLS0tDQo+ID4gIC4u Li9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMTUuYyAgICAgICB8IDEwNiArKysrLS0t DQo+ID4gIC4uLi9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMi5jICAgICAgICB8ICAz MyArKy0NCj4gPiAgLi4uL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0zLmMgICAgICAg IHwgIDE4ICstDQo+ID4gIC4uLi9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItNS5jICAg ICAgICB8ICA3OCArKystLQ0KPiA+ICAuLi4vZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2Vy LTYuYyAgICAgICAgfCAgNjYgKysrLS0NCj4gPiAgLi4uL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvdXNlci05LmMgICAgICAgIHwgIDkzICsrKystLQ0KPiA+ICA2NSBmaWxlcyBjaGFuZ2VkLCAx ODg2IGluc2VydGlvbnMoKyksIDQ0MiBkZWxldGlvbnMoLSkNCj4gPiAgY3JlYXRlIG1vZGUgMTAw NjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmli dXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTAuYw0KPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRo X2ludHJpbnNpYy0xMS5jDQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2lj LTEyLmMNCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTMuYw0KPiA+ ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9i YXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xNC5jDQo+ID4gIGNyZWF0ZSBt b2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0 X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE1LmMNCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0 IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRl X3Zfd2l0aF9pbnRyaW5zaWMtMTYuYw0KPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2lu dHJpbnNpYy0xNy5jDQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE4 LmMNCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNj di9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTkuYw0KPiA+ICBj cmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yMC5jDQo+ID4gIGNyZWF0ZSBtb2Rl IDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0 dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTIxLmMNCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zf d2l0aF9pbnRyaW5zaWMtMjIuYw0KPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJp bnNpYy0yMy5jDQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTI0LmMN Cj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjUuYw0KPiA+ICBjcmVh dGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rh cmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yNi5jDQo+ID4gIGNyZWF0ZSBtb2RlIDEw MDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJp YnV0ZV92X3dpdGhfaW50cmluc2ljLTI3LmMNCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0 aF9pbnRyaW5zaWMtMjguYw0KPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNp Yy0yOS5jDQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTMwLmMNCj4g PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzEuYw0KPiA+ICBjcmVhdGUg bW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rhcmdl dF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zMi5jDQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0 NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0 ZV92X3dpdGhfaW50cmluc2ljLTMzLmMNCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9p bnRyaW5zaWMtMzQuYw0KPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0z NS5jDQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTM2LmMNCj4gPiAg Y3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzcuYw0KPiA+ICBjcmVhdGUgbW9k ZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9h dHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zOC5jDQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBn Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92 X3dpdGhfaW50cmluc2ljLTM5LmMNCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRy aW5zaWMtNDAuYw0KPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00MS5j DQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3Yv cnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQyLmMNCj4gPiAgY3Jl YXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90 YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDMuYw0KPiA+ICBjcmVhdGUgbW9kZSAx MDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRy aWJ1dGVfdl93aXRoX2ludHJpbnNpYy00NC5jDQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dp dGhfaW50cmluc2ljLTQ1LmMNCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5z aWMtNDYuYw0KPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00Ny5jDQo+ ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQ4LmMNCj4gPiAgY3JlYXRl IG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJn ZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDkuYw0KPiA+ICBjcmVhdGUgbW9kZSAxMDA2 NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy01MC5jDQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhf aW50cmluc2ljLTUxLmMNCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMt NTIuYw0KPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy01My5jDQo+ID4g IGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTkuYw0KPiA+DQo+ID4gZGlmZiAt LWdpdCBhL2djYy9jb25maWcvcmlzY3YvcmlzY3YtYy5jYyBiL2djYy9jb25maWcvcmlzY3Yvcmlz Y3YtYy5jYw0KPiA+IGluZGV4IDAxMzE0MDM3NDYxLi40M2M4ZWVjYmI2ZiAxMDA2NDQNCj4gPiAt LS0gYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LWMuY2MNCj4gPiArKysgYi9nY2MvY29uZmlnL3Jp c2N2L3Jpc2N2LWMuY2MNCj4gPiBAQCAtMzQsNiArMzQsNzIgQEAgYWxvbmcgd2l0aCBHQ0M7IHNl ZSB0aGUgZmlsZSBDT1BZSU5HMy4gIElmIG5vdCBzZWUNCj4gPg0KPiA+ICAjZGVmaW5lIGJ1aWx0 aW5fZGVmaW5lKFRYVCkgY3BwX2RlZmluZSAocGZpbGUsIFRYVCkNCj4gPg0KPiA+ICtzdHJ1Y3Qg cHJhZ21hX2ludHJpbnNpY19mbGFncw0KPiA+ICt7DQo+ID4gKyAgaW50IGludHJpbnNpY190YXJn ZXRfZmxhZ3M7DQo+ID4gKw0KPiA+ICsgIGludCBpbnRyaW5zaWNfcmlzY3ZfdmVjdG9yX2VsZW5f ZmxhZ3M7DQo+ID4gKyAgaW50IGludHJpbnNpY19yaXNjdl96dmxfZmxhZ3M7DQo+ID4gKyAgaW50 IGludHJpbnNpY19yaXNjdl96dmJfc3ViZXh0Ow0KPiA+ICsgIGludCBpbnRyaW5zaWNfcmlzY3Zf enZrX3N1YmV4dDsNCj4gPiArfTsNCj4gPiArDQo+ID4gK3N0YXRpYyB2b2lkDQo+ID4gK3Jpc2N2 X3ByYWdtYV9pbnRyaW5zaWNfZmxhZ3NfcG9sbHV0ZSAoc3RydWN0IHByYWdtYV9pbnRyaW5zaWNf ZmxhZ3MgKmZsYWdzKQ0KPiA+ICt7DQo+ID4gKyAgZmxhZ3MtPmludHJpbnNpY190YXJnZXRfZmxh Z3MgPSB0YXJnZXRfZmxhZ3M7DQo+ID4gKyAgZmxhZ3MtPmludHJpbnNpY19yaXNjdl92ZWN0b3Jf ZWxlbl9mbGFncyA9IHJpc2N2X3ZlY3Rvcl9lbGVuX2ZsYWdzOw0KPiA+ICsgIGZsYWdzLT5pbnRy aW5zaWNfcmlzY3ZfenZsX2ZsYWdzID0gcmlzY3ZfenZsX2ZsYWdzOw0KPiA+ICsgIGZsYWdzLT5p bnRyaW5zaWNfcmlzY3ZfenZiX3N1YmV4dCA9IHJpc2N2X3p2Yl9zdWJleHQ7DQo+ID4gKyAgZmxh Z3MtPmludHJpbnNpY19yaXNjdl96dmtfc3ViZXh0ID0gcmlzY3ZfenZrX3N1YmV4dDsNCj4gPiAr DQo+ID4gKyAgdGFyZ2V0X2ZsYWdzID0gdGFyZ2V0X2ZsYWdzDQo+ID4gKyAgICB8IE1BU0tfVkVD VE9SOw0KPiA+ICsNCj4gPiArICByaXNjdl96dmxfZmxhZ3MgPSByaXNjdl96dmxfZmxhZ3MNCj4g PiArICAgIHwgTUFTS19aVkwzMkINCj4gPiArICAgIHwgTUFTS19aVkw2NEINCj4gPiArICAgIHwg TUFTS19aVkwxMjhCOw0KPiA+ICsNCj4gPiArICByaXNjdl92ZWN0b3JfZWxlbl9mbGFncyA9IHJp c2N2X3ZlY3Rvcl9lbGVuX2ZsYWdzDQo+ID4gKyAgICB8IE1BU0tfVkVDVE9SX0VMRU5fMzINCj4g PiArICAgIHwgTUFTS19WRUNUT1JfRUxFTl82NA0KPiA+ICsgICAgfCBNQVNLX1ZFQ1RPUl9FTEVO X0ZQXzE2DQo+ID4gKyAgICB8IE1BU0tfVkVDVE9SX0VMRU5fRlBfMzINCj4gPiArICAgIHwgTUFT S19WRUNUT1JfRUxFTl9GUF82NDsNCj4gPiArDQo+ID4gKyAgcmlzY3ZfenZiX3N1YmV4dCA9IHJp c2N2X3p2Yl9zdWJleHQNCj4gPiArICAgIHwgTUFTS19aVkJCDQo+ID4gKyAgICB8IE1BU0tfWlZC Qw0KPiA+ICsgICAgfCBNQVNLX1pWS0I7DQo+ID4gKw0KPiA+ICsgIHJpc2N2X3p2a19zdWJleHQg PSByaXNjdl96dmtfc3ViZXh0DQo+ID4gKyAgICB8IE1BU0tfWlZLRw0KPiA+ICsgICAgfCBNQVNL X1pWS05FRA0KPiA+ICsgICAgfCBNQVNLX1pWS05IQQ0KPiA+ICsgICAgfCBNQVNLX1pWS05IQg0K PiA+ICsgICAgfCBNQVNLX1pWS1NFRA0KPiA+ICsgICAgfCBNQVNLX1pWS1NIDQo+ID4gKyAgICB8 IE1BU0tfWlZLTg0KPiA+ICsgICAgfCBNQVNLX1pWS05DDQo+ID4gKyAgICB8IE1BU0tfWlZLTkcN Cj4gPiArICAgIHwgTUFTS19aVktTDQo+ID4gKyAgICB8IE1BU0tfWlZLU0MNCj4gPiArICAgIHwg TUFTS19aVktTRw0KPiA+ICsgICAgfCBNQVNLX1pWS1Q7DQo+ID4gK30NCj4gPiArDQo+ID4gK3N0 YXRpYyB2b2lkDQo+ID4gK3Jpc2N2X3ByYWdtYV9pbnRyaW5zaWNfZmxhZ3NfcmVzdG9yZSAoc3Ry dWN0IHByYWdtYV9pbnRyaW5zaWNfZmxhZ3MgKmZsYWdzKQ0KPiA+ICt7DQo+ID4gKyAgdGFyZ2V0 X2ZsYWdzID0gZmxhZ3MtPmludHJpbnNpY190YXJnZXRfZmxhZ3M7DQo+ID4gKw0KPiA+ICsgIHJp c2N2X3ZlY3Rvcl9lbGVuX2ZsYWdzID0gZmxhZ3MtPmludHJpbnNpY19yaXNjdl92ZWN0b3JfZWxl bl9mbGFnczsNCj4gPiArICByaXNjdl96dmxfZmxhZ3MgPSBmbGFncy0+aW50cmluc2ljX3Jpc2N2 X3p2bF9mbGFnczsNCj4gPiArICByaXNjdl96dmJfc3ViZXh0ID0gZmxhZ3MtPmludHJpbnNpY19y aXNjdl96dmJfc3ViZXh0Ow0KPiA+ICsgIHJpc2N2X3p2a19zdWJleHQgPSBmbGFncy0+aW50cmlu c2ljX3Jpc2N2X3p2a19zdWJleHQ7DQo+ID4gK30NCj4gPiArDQo+ID4gIHN0YXRpYyBpbnQNCj4g PiAgcmlzY3ZfZXh0X3ZlcnNpb25fdmFsdWUgKHVuc2lnbmVkIG1ham9yLCB1bnNpZ25lZCBtaW5v cikNCj4gPiAgew0KPiA+IEBAIC0yMDEsMjAgKzI2NywyMCBAQCByaXNjdl9wcmFnbWFfaW50cmlu c2ljIChjcHBfcmVhZGVyICopDQo+ID4gICAgaWYgKHN0cmNtcCAobmFtZSwgInZlY3RvciIpID09 IDANCj4gPiAgICAgICAgfHwgc3RyY21wIChuYW1lLCAieHRoZWFkdmVjdG9yIikgPT0gMCkNCj4g PiAgICAgIHsNCj4gPiAtICAgICAgaWYgKFRBUkdFVF9WRUNUT1IpDQo+ID4gLSAgICAgICByaXNj dl92ZWN0b3I6OmhhbmRsZV9wcmFnbWFfdmVjdG9yICgpOw0KPiA+IC0gICAgICBlbHNlIC8qIElu ZGljYXRlcyByaXNjdl92ZWN0b3IuaCBpcyBpbmNsdWRlZCBidXQgdiBpcyBtaXNzaW5nIGluIGFy Y2ggICovDQo+ID4gLSAgICAgICB7DQo+ID4gLSAgICAgICAgIC8qIFRvIG1ha2UgdGhlIHRoZSBy dnYgdHlwZXMgYW5kIGludHJpbnNpYyBBUEkgYXZhaWxhYmxlIGZvciB0aGUNCj4gPiAtICAgICAg ICAgICAgdGFyZ2V0KCJhcmNoPSt2IikgYXR0cmlidXRlLCAgd2UgbmVlZCB0byB0ZW1wb3JhbGx5 IGVuYWJsZSB0aGUNCj4gPiAtICAgICAgICAgICAgVEFSR0VUX1ZFQ1RPUiwgYW5kIGRpc2FibGUg aXQgYWZ0ZXIgYWxsIGluaXRpYWxpemVkLiAgKi8NCj4gPiAtICAgICAgICAgdGFyZ2V0X2ZsYWdz IHw9IE1BU0tfVkVDVE9SOw0KPiA+IC0NCj4gPiAtICAgICAgICAgcmlzY3ZfdmVjdG9yOjppbml0 X2J1aWx0aW5zICgpOw0KPiA+IC0gICAgICAgICByaXNjdl92ZWN0b3I6OmhhbmRsZV9wcmFnbWFf dmVjdG9yICgpOw0KPiA+IC0NCj4gPiAtICAgICAgICAgdGFyZ2V0X2ZsYWdzICY9IH5NQVNLX1ZF Q1RPUjsNCj4gPiAtICAgICAgIH0NCj4gPiArICAgICAgc3RydWN0IHByYWdtYV9pbnRyaW5zaWNf ZmxhZ3MgYmFja3VwX2ZsYWdzOw0KPiA+ICsNCj4gPiArICAgICAgcmlzY3ZfcHJhZ21hX2ludHJp bnNpY19mbGFnc19wb2xsdXRlICgmYmFja3VwX2ZsYWdzKTsNCj4gPiArDQo+ID4gKyAgICAgIHJp c2N2X29wdGlvbl9vdmVycmlkZSAoKTsNCj4gPiArICAgICAgaW5pdF9hZGp1c3RfbWFjaGluZV9t b2RlcyAoKTsNCj4gPiArICAgICAgcmlzY3ZfdmVjdG9yOjpyZWluaXRfYnVpbHRpbnMgKCk7DQo+ ID4gKyAgICAgIHJpc2N2X3ZlY3Rvcjo6aGFuZGxlX3ByYWdtYV92ZWN0b3IgKCk7DQo+ID4gKw0K PiA+ICsgICAgICByaXNjdl9wcmFnbWFfaW50cmluc2ljX2ZsYWdzX3Jlc3RvcmUgKCZiYWNrdXBf ZmxhZ3MpOw0KPiA+ICsNCj4gPiArICAgICAgLyogUmUtaW5pdGlhbGl6ZSBhZnRlciB0aGUgZmxh Z3MgYXJlIHJlc3RvcmVkLiAgKi8NCj4gPiArICAgICAgcmlzY3Zfb3B0aW9uX292ZXJyaWRlICgp Ow0KPiA+ICsgICAgICBpbml0X2FkanVzdF9tYWNoaW5lX21vZGVzICgpOw0KPiA+ICAgICAgfQ0K PiA+ICAgIGVsc2UNCj4gPiAgICAgIGVycm9yICgidW5rbm93biAlPCNwcmFnbWEgcmlzY3YgaW50 cmluc2ljJT4gb3B0aW9uICVxcyIsIG5hbWUpOw0KPiA+IGRpZmYgLS1naXQgYS9nY2MvY29uZmln L3Jpc2N2L3Jpc2N2LXByb3Rvcy5oIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi1wcm90b3MuaA0K PiA+IGluZGV4IGI4NzM1NTkzODA1Li40Njc3ZDljNDZjZCAxMDA2NDQNCj4gPiAtLS0gYS9nY2Mv Y29uZmlnL3Jpc2N2L3Jpc2N2LXByb3Rvcy5oDQo+ID4gKysrIGIvZ2NjL2NvbmZpZy9yaXNjdi9y aXNjdi1wcm90b3MuaA0KPiA+IEBAIC01NDYsNiArNTQ2LDcgQEAgZW51bSBhdmxfdHlwZQ0KPiA+ ICB9Ow0KPiA+ICAvKiBSb3V0aW5lcyBpbXBsZW1lbnRlZCBpbiByaXNjdi12ZWN0b3ItYnVpbHRp bnMuY2MuICAqLw0KPiA+ICB2b2lkIGluaXRfYnVpbHRpbnMgKHZvaWQpOw0KPiA+ICt2b2lkIHJl aW5pdF9idWlsdGlucyAodm9pZCk7DQo+ID4gIGNvbnN0IGNoYXIgKm1hbmdsZV9idWlsdGluX3R5 cGUgKGNvbnN0X3RyZWUpOw0KPiA+ICB0cmVlIGxvb2t1cF92ZWN0b3JfdHlwZV9hdHRyaWJ1dGUg KGNvbnN0X3RyZWUpOw0KPiA+ICBib29sIGJ1aWx0aW5fdHlwZV9wIChjb25zdF90cmVlKTsNCj4g PiBAQCAtNzYyLDYgKzc2Myw3IEBAIGV4dGVybiBib29sDQo+ID4gIHJpc2N2X29wdGlvbl92YWxp ZF9hdHRyaWJ1dGVfcCAodHJlZSwgdHJlZSwgdHJlZSwgaW50KTsNCj4gPiAgZXh0ZXJuIHZvaWQN Cj4gPiAgcmlzY3Zfb3ZlcnJpZGVfb3B0aW9uc19pbnRlcm5hbCAoc3RydWN0IGdjY19vcHRpb25z ICopOw0KPiA+ICtleHRlcm4gdm9pZCByaXNjdl9vcHRpb25fb3ZlcnJpZGUgKHZvaWQpOw0KPiA+ DQo+ID4gIHN0cnVjdCByaXNjdl90dW5lX3BhcmFtOw0KPiA+ICAvKiBJbmZvcm1hdGlvbiBhYm91 dCBvbmUgbWljcm8tYXJjaCB3ZSBrbm93IGFib3V0LiAgKi8NCj4gPiBkaWZmIC0tZ2l0IGEvZ2Nj L2NvbmZpZy9yaXNjdi9yaXNjdi12ZWN0b3ItYnVpbHRpbnMuY2MgYi9nY2MvY29uZmlnL3Jpc2N2 L3Jpc2N2LXZlY3Rvci1idWlsdGlucy5jYw0KPiA+IGluZGV4IGRiOTI0NmVlZDJkLi41M2NjZWE3 ODg5ZSAxMDA2NDQNCj4gPiAtLS0gYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXZlY3Rvci1idWls dGlucy5jYw0KPiA+ICsrKyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0aW5z LmNjDQo+ID4gQEAgLTMxMjMsNiArMzEyMywzNiBAQCByZWdpc3Rlcl9idWlsdGluX3R5cGVzICgp DQo+ID4gICNpbmNsdWRlICJyaXNjdi12ZWN0b3ItYnVpbHRpbnMuZGVmIg0KPiA+ICB9DQo+ID4N Cj4gPiArLyogU2ltaWxhciBhcyByZWdpc3Rlcl9idWlsdGluX3R5cGVzIGJ1dCBwZXJmb3JtIHRo ZSByZWdpc3RyYXRpb24gaWYgYW5kDQo+ID4gKyAgIG9ubHkgaWYgdGhlIGVsZW1lbnQgb2YgYWJp X3ZlY3Rvcl90eXBlIGlzIE5VTExfVFJFRS4gICovDQo+ID4gK3N0YXRpYyB2b2lkDQo+ID4gK3Jl Z2lzdGVyX2J1aWx0aW5fdHlwZXNfb25fbnVsbCAoKQ0KPiA+ICt7DQo+ID4gKyAgLyogR2V0IHR5 cGUgbm9kZSBmcm9tIGdldF90eXBlbm9kZV9mcm9tX25hbWUgdG8gcHJldmVudCB3ZSBoYXZlIGRp ZmZlcmVudCB0eXBlDQo+ID4gKyAgICAgbm9kZSBkZWZpbmUgaW4gZGlmZmVyZW50IHRhcmdldCBs aWJyYXJpZXMsIGUuZy4gaW50MzJfdCBkZWZpbmVkIGFzDQo+ID4gKyAgICAgYGxvbmdgIGluIFJW MzIvbmV3bGliLXN0ZGludCwgYnV0IGBpbnRgIGZvciBSVjMyL2dsaWJjLXN0ZGludC5oLg0KPiA+ ICsgICAgIE5PVEU6IHVpbnRbMTZ8MzJ8NjRdX3R5cGVfbm9kZSBhbHJlYWR5IGRlZmluZWQgaW4g dHJlZS5oLiAgKi8NCj4gPiArICB0cmVlIGludDhfdHlwZV9ub2RlID0gZ2V0X3R5cGVub2RlX2Zy b21fbmFtZSAoSU5UOF9UWVBFKTsNCj4gPiArICB0cmVlIHVpbnQ4X3R5cGVfbm9kZSA9IGdldF90 eXBlbm9kZV9mcm9tX25hbWUgKFVJTlQ4X1RZUEUpOw0KPiA+ICsgIHRyZWUgaW50MTZfdHlwZV9u b2RlID0gZ2V0X3R5cGVub2RlX2Zyb21fbmFtZSAoSU5UMTZfVFlQRSk7DQo+ID4gKyAgdHJlZSBp bnQzMl90eXBlX25vZGUgPSBnZXRfdHlwZW5vZGVfZnJvbV9uYW1lIChJTlQzMl9UWVBFKTsNCj4g PiArICB0cmVlIGludDY0X3R5cGVfbm9kZSA9IGdldF90eXBlbm9kZV9mcm9tX25hbWUgKElOVDY0 X1RZUEUpOw0KPiA+ICsNCj4gPiArICBtYWNoaW5lX21vZGUgbW9kZTsNCj4gPiArI2RlZmluZSBE RUZfUlZWX1RZUEUoTkFNRSwgTkNIQVJTLCBBQklfTkFNRSwgU0NBTEFSX1RZUEUsIFZFQ1RPUl9N T0RFLCAgICAgICAgIFwNCj4gPiArICAgICAgICAgICAgICAgICAgICBBUkdTLi4uKSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiA+ICsgIG1vZGUg PSBWRUNUT1JfTU9ERSMjbW9kZTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXA0KPiA+ICsgIGlmIChhYmlfdmVjdG9yX3R5cGVzW1ZFQ1RPUl9UWVBF XyMjTkFNRV0gPT0gTlVMTF9UUkVFKSAgICAgICAgICAgICAgICAgICAgICAgXA0KPiA+ICsgICAg cmVnaXN0ZXJfYnVpbHRpbl90eXBlIChWRUNUT1JfVFlQRV8jI05BTUUsIFNDQUxBUl9UWVBFIyNf dHlwZV9ub2RlLCBtb2RlKTsNCj4gPiArDQo+ID4gKyNkZWZpbmUgREVGX1JWVl9UVVBMRV9UWVBF KE5BTUUsIE5DSEFSUywgQUJJX05BTUUsIFNVQlBBUlRfVFlQRSwgU0NBTEFSX1RZUEUsICBcDQo+ ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgTkYsIFZFQ1RPUl9TVUZGSVgpICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICBpZiAoYWJpX3ZlY3Rvcl90eXBlc1tW RUNUT1JfVFlQRV8jI05BTUVdID09IE5VTExfVFJFRSkgICAgICAgICAgICAgICAgICAgICAgIFwN Cj4gPiArICAgIHJlZ2lzdGVyX3R1cGxlX3R5cGUgKFZFQ1RPUl9UWVBFXyMjTkFNRSwgVkVDVE9S X1RZUEVfIyNTVUJQQVJUX1RZUEUsICAgICAgIFwNCj4gPiArICAgICAgICAgICAgICAgICAgICAg ICAgU0NBTEFSX1RZUEUjI190eXBlX25vZGUsIE5GKTsNCj4gPiArI2luY2x1ZGUgInJpc2N2LXZl Y3Rvci1idWlsdGlucy5kZWYiDQo+ID4gK30NCj4gPiArDQo+ID4gIC8qIFJlZ2lzdGVyIHZlY3Rv ciB0eXBlIFRZUEUgdW5kZXIgaXRzIHJpc3ZfdmVjdG9yLmggbmFtZS4gICovDQo+ID4gIHN0YXRp YyB2b2lkDQo+ID4gIHJlZ2lzdGVyX3ZlY3Rvcl90eXBlICh2ZWN0b3JfdHlwZV9pbmRleCB0eXBl KQ0KPiA+IEBAIC00NDE5LDYgKzQ0NDksMjIgQEAgaW5pdF9idWlsdGlucyAoKQ0KPiA+ICAgICAg aGFuZGxlX3ByYWdtYV92ZWN0b3IgKCk7DQo+ID4gIH0NCj4gPg0KPiA+ICsvKiBSZWluaXRpYWxp emUgYnVpbHRpbnMgc2ltaWxhciB0byBpbml0X2J1aWx0aW5zLCAgYnV0IG9ubHkgdGhlIG51bGwN Cj4gPiArICAgYnVpbHRpbiB0eXBlcyB3aWxsIGJlIHJlZ2lzdGVyZWQuICAqLw0KPiA+ICt2b2lk DQo+ID4gK3JlaW5pdF9idWlsdGlucyAoKQ0KPiA+ICt7DQo+ID4gKyAgcnZ2X3N3aXRjaGVyIHJ2 djsNCj4gPiArDQo+ID4gKyAgaWYgKCFUQVJHRVRfVkVDVE9SKQ0KPiA+ICsgICAgcmV0dXJuOw0K PiA+ICsNCj4gPiArICByZWdpc3Rlcl9idWlsdGluX3R5cGVzX29uX251bGwgKCk7DQo+ID4gKw0K PiA+ICsgIGlmIChpbl9sdG9fcCkNCj4gPiArICAgIGhhbmRsZV9wcmFnbWFfdmVjdG9yICgpOw0K PiA+ICt9DQo+ID4gKw0KPiA+ICAvKiBJbXBsZW1lbnQgVEFSR0VUX1ZFUklGWV9UWVBFX0NPTlRF WFQgZm9yIFJWViB0eXBlcy4gICovDQo+ID4gIGJvb2wNCj4gPiAgdmVyaWZ5X3R5cGVfY29udGV4 dCAobG9jYXRpb25fdCBsb2MsIHR5cGVfY29udGV4dF9raW5kIGNvbnRleHQsIGNvbnN0X3RyZWUg dHlwZSwNCj4gPiBAQCAtNDU4OCw4ICs0NjM0LDExIEBAIGV4cGFuZF9idWlsdGluICh1bnNpZ25l ZCBpbnQgY29kZSwgdHJlZSBleHAsIHJ0eCB0YXJnZXQpDQo+ID4gICAgcmVnaXN0ZXJlZF9mdW5j dGlvbiAmcmZuID0gKigqcmVnaXN0ZXJlZF9mdW5jdGlvbnMpW2NvZGVdOw0KPiA+DQo+ID4gICAg aWYgKCFUQVJHRVRfVkVDVE9SKQ0KPiA+IC0gICAgZXJyb3JfYXQgKEVYUFJfTE9DQVRJT04gKGV4 cCksDQo+ID4gLSAgICAgICAgICAgICAiYnVpbHQtaW4gZnVuY3Rpb24gJXFFIHJlcXVpcmVzIHRo ZSBWIElTQSBleHRlbnNpb24iLCBleHApOw0KPiA+ICsgICAgew0KPiA+ICsgICAgICBlcnJvcl9h dCAoRVhQUl9MT0NBVElPTiAoZXhwKSwNCj4gPiArICAgICAgICAgICAgICAgImJ1aWx0LWluIGZ1 bmN0aW9uICVxRSByZXF1aXJlcyB0aGUgViBJU0EgZXh0ZW5zaW9uIiwgZXhwKTsNCj4gPiArICAg ICAgcmV0dXJuIHRhcmdldDsNCj4gPiArICAgIH0NCj4gPg0KPiA+ICAgIHJldHVybiBmdW5jdGlv bl9leHBhbmRlciAocmZuLmluc3RhbmNlLCByZm4uZGVjbCwgZXhwLCB0YXJnZXQpLmV4cGFuZCAo KTsNCj4gPiAgfQ0KPiA+IGRpZmYgLS1naXQgYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LmNjIGIv Z2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5jYw0KPiA+IGluZGV4IGZlOTk3NmJmZmZlLi4yYTcxYmFk ZmRjOSAxMDA2NDQNCj4gPiAtLS0gYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LmNjDQo+ID4gKysr IGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5jYw0KPiA+IEBAIC01NDU5LDYgKzU0NTksMTUyIEBA IHJpc2N2X3ZfYWJpICgpDQo+ID4gICAgcmV0dXJuIHZfYWJpOw0KPiA+ICB9DQo+ID4NCj4gPiAr c3RhdGljIGJvb2wNCj4gPiArcmlzY3ZfdmVjdG9yX2ludF90eXBlX3AgKGNvbnN0X3RyZWUgdHlw ZSkNCj4gPiArew0KPiA+ICsgIG1hY2hpbmVfbW9kZSBtb2RlID0gVFlQRV9NT0RFICh0eXBlKTsN Cj4gPiArDQo+ID4gKyAgaWYgKFZFQ1RPUl9NT0RFX1AgKG1vZGUpKQ0KPiA+ICsgICAgcmV0dXJu IElOVEVHUkFMX01PREVfUCAoR0VUX01PREVfSU5ORVIgKG1vZGUpKTsNCj4gPiArDQo+ID4gKyAg Y29uc3QgY2hhciAqbmFtZSA9IElERU5USUZJRVJfUE9JTlRFUiAoREVDTF9OQU1FIChUWVBFX05B TUUgKHR5cGUpKSk7DQo+ID4gKyAgcmV0dXJuIHN0cnN0ciAobmFtZSwgImludCIpICE9IE5VTEwg fHwgc3Ryc3RyIChuYW1lLCAidWludCIpICE9IE5VTEw7DQo+ID4gK30NCj4gPiArDQo+ID4gK3N0 YXRpYyBib29sDQo+ID4gK3Jpc2N2X3ZlY3Rvcl9mbG9hdF90eXBlX3AgKGNvbnN0X3RyZWUgdHlw ZSkNCj4gPiArew0KPiA+ICsgIG1hY2hpbmVfbW9kZSBtb2RlID0gVFlQRV9NT0RFICh0eXBlKTsN Cj4gPiArDQo+ID4gKyAgaWYgKFZFQ1RPUl9NT0RFX1AgKG1vZGUpKQ0KPiA+ICsgICAgcmV0dXJu IEZMT0FUX01PREVfUCAoR0VUX01PREVfSU5ORVIgKG1vZGUpKTsNCj4gPiArDQo+ID4gKyAgY29u c3QgY2hhciAqbmFtZSA9IElERU5USUZJRVJfUE9JTlRFUiAoREVDTF9OQU1FIChUWVBFX05BTUUg KHR5cGUpKSk7DQo+ID4gKyAgcmV0dXJuIHN0cnN0ciAobmFtZSwgInZmbG9hdCIpICE9IE5VTEw7 DQo+ID4gK30NCj4gPiArDQo+ID4gK3N0YXRpYyB1bnNpZ25lZA0KPiA+ICtyaXNjdl92ZWN0b3Jf ZWxlbWVudF9iaXRzaXplIChjb25zdF90cmVlIHR5cGUpDQo+ID4gK3sNCj4gPiArICBtYWNoaW5l X21vZGUgbW9kZSA9IFRZUEVfTU9ERSAodHlwZSk7DQo+ID4gKw0KPiA+ICsgIGlmIChWRUNUT1Jf TU9ERV9QIChtb2RlKSkNCj4gPiArICAgIHJldHVybiBHRVRfTU9ERV9CSVRTSVpFIChHRVRfTU9E RV9JTk5FUiAobW9kZSkpOw0KPiA+ICsNCj4gPiArICBjb25zdCBjaGFyICpuYW1lID0gSURFTlRJ RklFUl9QT0lOVEVSIChERUNMX05BTUUgKFRZUEVfTkFNRSAodHlwZSkpKTsNCj4gPiArDQo+ID4g KyAgaWYgKHN0cnN0ciAobmFtZSwgImJvb2wiKSAhPSBOVUxMKQ0KPiA+ICsgICAgcmV0dXJuIDE7 DQo+ID4gKyAgZWxzZSBpZiAoc3Ryc3RyIChuYW1lLCAiaW50OCIpICE9IE5VTEwpDQo+ID4gKyAg ICByZXR1cm4gODsNCj4gPiArICBlbHNlIGlmIChzdHJzdHIgKG5hbWUsICJpbnQxNiIpICE9IE5V TEwgfHwgc3Ryc3RyIChuYW1lLCAiZmxvYXQxNiIpICE9IE5VTEwpDQo+ID4gKyAgICByZXR1cm4g MTY7DQo+ID4gKyAgZWxzZSBpZiAoc3Ryc3RyIChuYW1lLCAiaW50MzIiKSAhPSBOVUxMIHx8IHN0 cnN0ciAobmFtZSwgImZsb2F0MzIiKSAhPSBOVUxMKQ0KPiA+ICsgICAgcmV0dXJuIDMyOw0KPiA+ ICsgIGVsc2UgaWYgKHN0cnN0ciAobmFtZSwgImludDY0IikgIT0gTlVMTCB8fCBzdHJzdHIgKG5h bWUsICJmbG9hdDY0IikgIT0gTlVMTCkNCj4gPiArICAgIHJldHVybiA2NDsNCj4gPiArDQo+ID4g KyAgZ2NjX3VucmVhY2hhYmxlICgpOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICtzdGF0aWMgdW5zaWdu ZWQNCj4gPiArcmlzY3ZfdmVjdG9yX3JlcXVpcmVkX21pbl92bGVuIChjb25zdF90cmVlIHR5cGUp DQo+ID4gK3sNCj4gPiArICBtYWNoaW5lX21vZGUgbW9kZSA9IFRZUEVfTU9ERSAodHlwZSk7DQo+ ID4gKw0KPiA+ICsgIGlmIChyaXNjdl92X2V4dF9tb2RlX3AgKG1vZGUpKQ0KPiA+ICsgICAgcmV0 dXJuIFRBUkdFVF9NSU5fVkxFTjsNCj4gPiArDQo+ID4gKyAgdW5zaWduZWQgZWxlbWVudF9iaXRz aXplID0gcmlzY3ZfdmVjdG9yX2VsZW1lbnRfYml0c2l6ZSAodHlwZSk7DQo+ID4gKyAgY29uc3Qg Y2hhciAqbmFtZSA9IElERU5USUZJRVJfUE9JTlRFUiAoREVDTF9OQU1FIChUWVBFX05BTUUgKHR5 cGUpKSk7DQo+ID4gKw0KPiA+ICsgIGlmIChzdHJzdHIgKG5hbWUsICJib29sNjQiKSAhPSBOVUxM KQ0KPiA+ICsgICAgcmV0dXJuIGVsZW1lbnRfYml0c2l6ZSAqIDY0Ow0KPiA+ICsgIGVsc2UgaWYg KHN0cnN0ciAobmFtZSwgImJvb2wzMiIpICE9IE5VTEwpDQo+ID4gKyAgICByZXR1cm4gZWxlbWVu dF9iaXRzaXplICogMzI7DQo+ID4gKyAgZWxzZSBpZiAoc3Ryc3RyIChuYW1lLCAiYm9vbDE2Iikg IT0gTlVMTCkNCj4gPiArICAgIHJldHVybiBlbGVtZW50X2JpdHNpemUgKiAxNjsNCj4gPiArICBl bHNlIGlmIChzdHJzdHIgKG5hbWUsICJib29sOCIpICE9IE5VTEwpDQo+ID4gKyAgICByZXR1cm4g ZWxlbWVudF9iaXRzaXplICogODsNCj4gPiArICBlbHNlIGlmIChzdHJzdHIgKG5hbWUsICJib29s NCIpICE9IE5VTEwpDQo+ID4gKyAgICByZXR1cm4gZWxlbWVudF9iaXRzaXplICogNDsNCj4gPiAr ICBlbHNlIGlmIChzdHJzdHIgKG5hbWUsICJib29sMiIpICE9IE5VTEwpDQo+ID4gKyAgICByZXR1 cm4gZWxlbWVudF9iaXRzaXplICogMjsNCj4gPiArDQo+ID4gKyAgaWYgKHN0cnN0ciAobmFtZSwg Im1mOCIpICE9IE5VTEwpDQo+ID4gKyAgICByZXR1cm4gZWxlbWVudF9iaXRzaXplICogODsNCj4g PiArICBlbHNlIGlmIChzdHJzdHIgKG5hbWUsICJtZjQiKSAhPSBOVUxMKQ0KPiA+ICsgICAgcmV0 dXJuIGVsZW1lbnRfYml0c2l6ZSAqIDQ7DQo+ID4gKyAgZWxzZSBpZiAoc3Ryc3RyIChuYW1lLCAi bWYyIikgIT0gTlVMTCkNCj4gPiArICAgIHJldHVybiBlbGVtZW50X2JpdHNpemUgKiAyOw0KPiA+ ICsNCj4gPiArICByZXR1cm4gZWxlbWVudF9iaXRzaXplOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICtz dGF0aWMgdm9pZA0KPiA+ICtyaXNjdl92YWxpZGF0ZV92ZWN0b3JfdHlwZSAoY29uc3RfdHJlZSB0 eXBlLCBjb25zdCBjaGFyICpoaW50KQ0KPiA+ICt7DQo+ID4gKyAgZ2NjX2Fzc2VydCAocmlzY3Zf dmVjdG9yX3R5cGVfcCAodHlwZSkpOw0KPiA+ICsNCj4gPiArICBpZiAoIVRBUkdFVF9WRUNUT1Ip DQo+ID4gKyAgICB7DQo+ID4gKyAgICAgIGVycm9yX2F0IChpbnB1dF9sb2NhdGlvbiwgIiVzICVx VCByZXF1aXJlcyB0aGUgViBJU0EgZXh0ZW5zaW9uIiwNCj4gPiArICAgICAgICAgICAgICAgaGlu dCwgdHlwZSk7DQo+ID4gKyAgICAgIHJldHVybjsNCj4gPiArICAgIH0NCj4gPiArDQo+ID4gKyAg dW5zaWduZWQgZWxlbWVudF9iaXRzaXplID0gcmlzY3ZfdmVjdG9yX2VsZW1lbnRfYml0c2l6ZSAo dHlwZSk7DQo+ID4gKyAgYm9vbCBpbnRfdHlwZV9wID0gcmlzY3ZfdmVjdG9yX2ludF90eXBlX3Ag KHR5cGUpOw0KPiA+ICsNCj4gPiArICBpZiAoaW50X3R5cGVfcCAmJiBlbGVtZW50X2JpdHNpemUg PT0gNjQNCj4gPiArICAgICYmICFUQVJHRVRfVkVDVE9SX0VMRU5fNjRfUCAocmlzY3ZfdmVjdG9y X2VsZW5fZmxhZ3MpKQ0KPiA+ICsgICAgew0KPiA+ICsgICAgICBlcnJvcl9hdCAoaW5wdXRfbG9j YXRpb24sDQo+ID4gKyAgICAgICAgICAgICAgICIlcyAlcVQgcmVxdWlyZXMgdGhlIHp2ZTY0eCwg enZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9uIiwNCj4gPiArICAgICAgICAgICAgICAg aGludCwgdHlwZSk7DQo+ID4gKyAgICAgIHJldHVybjsNCj4gPiArICAgIH0NCj4gPiArDQo+ID4g KyAgYm9vbCBmbG9hdF90eXBlX3AgPSByaXNjdl92ZWN0b3JfZmxvYXRfdHlwZV9wICh0eXBlKTsN Cj4gPiArDQo+ID4gKyAgaWYgKGZsb2F0X3R5cGVfcCAmJiBlbGVtZW50X2JpdHNpemUgPT0gMTYN Cj4gPiArICAgICYmICFUQVJHRVRfVkVDVE9SX0VMRU5fRlBfMTZfUCAocmlzY3ZfdmVjdG9yX2Vs ZW5fZmxhZ3MpKQ0KPiA+ICsgICAgew0KPiA+ICsgICAgICBlcnJvcl9hdCAoaW5wdXRfbG9jYXRp b24sDQo+ID4gKyAgICAgICAgICAgICAgICIlcyAlcVQgcmVxdWlyZXMgdGhlIHp2ZmhtaW4gb3Ig enZmaCBJU0EgZXh0ZW5zaW9uIiwNCj4gPiArICAgICAgICAgICAgICAgaGludCwgdHlwZSk7DQo+ ID4gKyAgICAgIHJldHVybjsNCj4gPiArICAgIH0NCj4gPiArDQo+ID4gKyAgaWYgKGZsb2F0X3R5 cGVfcCAmJiBlbGVtZW50X2JpdHNpemUgPT0gMzINCj4gPiArICAgICYmICFUQVJHRVRfVkVDVE9S X0VMRU5fRlBfMzJfUCAocmlzY3ZfdmVjdG9yX2VsZW5fZmxhZ3MpKQ0KPiA+ICsgICAgew0KPiA+ ICsgICAgICBlcnJvcl9hdCAoaW5wdXRfbG9jYXRpb24sDQo+ID4gKyAgICAgICAgICAgICAgICIl cyAlcVQgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5z aW9uIiwNCj4gPiArICAgICAgICAgICAgICAgaGludCwgdHlwZSk7DQo+ID4gKyAgICAgIHJldHVy bjsNCj4gPiArICAgIH0NCj4gPiArDQo+ID4gKyAgaWYgKGZsb2F0X3R5cGVfcCAmJiBlbGVtZW50 X2JpdHNpemUgPT0gNjQNCj4gPiArICAgICYmICFUQVJHRVRfVkVDVE9SX0VMRU5fRlBfNjRfUCAo cmlzY3ZfdmVjdG9yX2VsZW5fZmxhZ3MpKQ0KPiA+ICsgICAgew0KPiA+ICsgICAgICBlcnJvcl9h dCAoaW5wdXRfbG9jYXRpb24sDQo+ID4gKyAgICAgICAgICAgICAgICIlcyAlcVQgcmVxdWlyZXMg dGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb24iLCBoaW50LCB0eXBlKTsNCj4gPiArICAgICAg cmV0dXJuOw0KPiA+ICsgICAgfQ0KPiA+ICsNCj4gPiArICB1bnNpZ25lZCByZXF1aXJlZF9taW5f dmxlbiA9IHJpc2N2X3ZlY3Rvcl9yZXF1aXJlZF9taW5fdmxlbiAodHlwZSk7DQo+ID4gKw0KPiA+ ICsgIGlmIChUQVJHRVRfTUlOX1ZMRU4gPCByZXF1aXJlZF9taW5fdmxlbikNCj4gPiArICAgIHsN Cj4gPiArICAgICAgZXJyb3JfYXQgKA0KPiA+ICsgICAgICAgaW5wdXRfbG9jYXRpb24sDQo+ID4g KyAgICAgICAiJXMgJXFUIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJXFkIGJ1 dCAlcWQgaXMgZ2l2ZW4iLA0KPiA+ICsgICAgICAgaGludCwgdHlwZSwgcmVxdWlyZWRfbWluX3Zs ZW4sIFRBUkdFVF9NSU5fVkxFTik7DQo+ID4gKyAgICAgIHJldHVybjsNCj4gPiArICAgIH0NCj4g PiArfQ0KPiA+ICsNCj4gPiAgLyogUmV0dXJuIHRydWUgaWYgYSBmdW5jdGlvbiB3aXRoIHR5cGUg Rk5UWVBFIHJldHVybnMgaXRzIHZhbHVlIGluDQo+ID4gICAgIFJJU0MtViBWIHJlZ2lzdGVycy4g ICovDQo+ID4NCj4gPiBAQCAtNTQ2OSw5ICs1NjE1LDcgQEAgcmlzY3ZfcmV0dXJuX3ZhbHVlX2lz X3ZlY3Rvcl90eXBlX3AgKGNvbnN0X3RyZWUgZm50eXBlKQ0KPiA+DQo+ID4gICAgaWYgKHJpc2N2 X3ZlY3Rvcl90eXBlX3AgKHJldHVybl90eXBlKSkNCj4gPiAgICAgIHsNCj4gPiAtICAgICAgaWYg KCFUQVJHRVRfVkVDVE9SKQ0KPiA+IC0gICAgICAgZXJyb3JfYXQgKGlucHV0X2xvY2F0aW9uLA0K PiA+IC0gICAgICAgICAgICAgICAgICJyZXR1cm4gdHlwZSAlcVQgcmVxdWlyZXMgdGhlIFYgSVNB IGV4dGVuc2lvbiIsIHJldHVybl90eXBlKTsNCj4gPiArICAgICAgcmlzY3ZfdmFsaWRhdGVfdmVj dG9yX3R5cGUgKHJldHVybl90eXBlLCAicmV0dXJuIHR5cGUiKTsNCj4gPiAgICAgICAgcmV0dXJu IHRydWU7DQo+ID4gICAgICB9DQo+ID4gICAgZWxzZQ0KPiA+IEBAIC01NDkwLDEwICs1NjM0LDcg QEAgcmlzY3ZfYXJndW1lbnRzX2lzX3ZlY3Rvcl90eXBlX3AgKGNvbnN0X3RyZWUgZm50eXBlKQ0K PiA+ICAgICAgICB0cmVlIGFyZ190eXBlID0gVFJFRV9WQUxVRSAoY2hhaW4pOw0KPiA+ICAgICAg ICBpZiAocmlzY3ZfdmVjdG9yX3R5cGVfcCAoYXJnX3R5cGUpKQ0KPiA+ICAgICAgICAgew0KPiA+ IC0gICAgICAgICBpZiAoIVRBUkdFVF9WRUNUT1IpDQo+ID4gLSAgICAgICAgICAgZXJyb3JfYXQg KGlucHV0X2xvY2F0aW9uLA0KPiA+IC0gICAgICAgICAgICAgICAgICAgICAiYXJndW1lbnQgdHlw ZSAlcVQgcmVxdWlyZXMgdGhlIFYgSVNBIGV4dGVuc2lvbiIsDQo+ID4gLSAgICAgICAgICAgICAg ICAgICAgIGFyZ190eXBlKTsNCj4gPiArICAgICAgICAgcmlzY3ZfdmFsaWRhdGVfdmVjdG9yX3R5 cGUgKGFyZ190eXBlLCAiYXJndW1lbnQgdHlwZSIpOw0KPiA+ICAgICAgICAgICByZXR1cm4gdHJ1 ZTsNCj4gPiAgICAgICAgIH0NCj4gPiAgICAgIH0NCj4gPiBAQCAtOTEwNyw3ICs5MjQ4LDcgQEAg cmlzY3Zfb3ZlcnJpZGVfb3B0aW9uc19pbnRlcm5hbCAoc3RydWN0IGdjY19vcHRpb25zICpvcHRz KQ0KPiA+DQo+ID4gIC8qIEltcGxlbWVudCBUQVJHRVRfT1BUSU9OX09WRVJSSURFLiAgKi8NCj4g Pg0KPiA+IC1zdGF0aWMgdm9pZA0KPiA+ICt2b2lkDQo+ID4gIHJpc2N2X29wdGlvbl9vdmVycmlk ZSAodm9pZCkNCj4gPiAgew0KPiA+ICAjaWZkZWYgU1VCVEFSR0VUX09WRVJSSURFX09QVElPTlMN Cj4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3ByMTA5NDc5LTEuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9w cjEwOTQ3OS0xLmMNCj4gPiBpbmRleCBhMTNjYzEyYzU0My4uMWJkN2VmZTYxZjIgMTAwNjQ0DQo+ ID4gLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5 LTEuYw0KPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9w cjEwOTQ3OS0xLmMNCj4gPiBAQCAtMywxMSArMywyNCBAQA0KPiA+DQo+ID4gICNpbmNsdWRlICJy aXNjdl92ZWN0b3IuaCINCj4gPg0KPiA+IC12b2lkIGZvbzAgKCkge19fcnZ2X2ludDY0bTFfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X2ludDY0bTFfdCd9IH0g Ki8NCj4gPiAtdm9pZCBmb28xICgpIHtfX3J2dl91aW50NjRtMV90IHQ7fSAvKiB7IGRnLWVycm9y IHt1bmtub3duIHR5cGUgbmFtZSAnX19ydnZfdWludDY0bTFfdCd9IH0gKi8NCj4gPiAtdm9pZCBm b28yICgpIHtfX3J2dl9pbnQ2NG0yX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICdfX3J2dl9pbnQ2NG0yX3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vMyAoKSB7X19ydnZfdWlu dDY0bTJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X3VpbnQ2 NG0yX3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vNCAoKSB7X19ydnZfaW50NjRtNF90IHQ7fSAvKiB7 IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAnX19ydnZfaW50NjRtNF90J30gfSAqLw0KPiA+ IC12b2lkIGZvbzUgKCkge19fcnZ2X3VpbnQ2NG00X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25v d24gdHlwZSBuYW1lICdfX3J2dl91aW50NjRtNF90J30gfSAqLw0KPiA+IC12b2lkIGZvbzYgKCkg e19fcnZ2X2ludDY0bThfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19f cnZ2X2ludDY0bThfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb283ICgpIHtfX3J2dl91aW50NjRtOF90 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAnX19ydnZfdWludDY0bThfdCd9 IH0gKi8NCj4gPiArLyogVG8gc3VwcG9ydCB0YXJnZXQgYXR0cmlidXRlLCB0aGUgdmZsb2F0Km0q eCpfdCBuZWVkIHRvIGJlIHJlZ2lzdGVyZWQNCj4gPiArICAgaW4gYWR2YW5jZS4gIFdlIGFkZCB0 eXBlIGFuZCBhcmdzL3JldHVybiB2YWx1ZSBjaGVjayBkdXJpbmcgdGhlDQo+ID4gKyAgIHNldCBj dXJyZW50IGZ1bmN0aW9uIGJ1dCBjYW5ub3QgY292ZXIgYmVsb3cgY2FzZXMuICBJdCBpcyB0aGUg c2FtZQ0KPiA+ICsgICBiZWhhdmlvciBjb21wYXJlZCB0byBhYXJjaDY0IHN2ZS4gICovDQo+ID4g K3ZvaWQgZm9vMCAoKSB7X19ydnZfaW50NjRtMV90IHQ7fQ0KPiA+ICt2b2lkIGZvbzEgKCkge19f cnZ2X3VpbnQ2NG0xX3QgdDt9DQo+ID4gK3ZvaWQgZm9vMiAoKSB7X19ydnZfaW50NjRtMl90IHQ7 fQ0KPiA+ICt2b2lkIGZvbzMgKCkge19fcnZ2X3VpbnQ2NG0yX3QgdDt9DQo+ID4gK3ZvaWQgZm9v NCAoKSB7X19ydnZfaW50NjRtNF90IHQ7fQ0KPiA+ICt2b2lkIGZvbzUgKCkge19fcnZ2X3VpbnQ2 NG00X3QgdDt9DQo+ID4gK3ZvaWQgZm9vNiAoKSB7X19ydnZfaW50NjRtOF90IHQ7fQ0KPiA+ICt2 b2lkIGZvbzcgKCkge19fcnZ2X3VpbnQ2NG04X3QgdDt9DQo+ID4gKw0KPiA+ICt2b2lkIG5ld19m b28wIChfX3J2dl9pbnQ2NG0xX3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBl ICdfX3J2dl9pbnQ2NG0xX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9y IHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb28xIChfX3J2dl91aW50NjRt MV90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICdfX3J2dl91aW50NjRtMV90 JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259 IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vMiAoX19ydnZfaW50NjRtMl90IHQpIHsgfSAgLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAnX19ydnZfaW50NjRtMl90JyByZXF1aXJlcyB0aGUgenZl NjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBu ZXdfZm9vMyAoX19ydnZfdWludDY0bTJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQg dHlwZSAnX19ydnZfdWludDY0bTJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2 NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzQgKF9fcnZ2X2lu dDY0bTRfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ19fcnZ2X2ludDY0 bTRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5z aW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzUgKF9fcnZ2X3VpbnQ2NG00X3QgdCkgeyB9IC8q IHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ19fcnZ2X3VpbnQ2NG00X3QnIHJlcXVpcmVzIHRo ZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2 b2lkIG5ld19mb282IChfX3J2dl9pbnQ2NG04X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICdfX3J2dl9pbnQ2NG04X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0Ziwg enZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb283IChfX3J2 dl91aW50NjRtOF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICdfX3J2dl91 aW50NjRtOF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBl eHRlbnNpb259IH0gKi8NCj4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5LTIuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9ydnYvYmFzZS9wcjEwOTQ3OS0yLmMNCj4gPiBpbmRleCBkZDZiY2IwZjU0OC4uY2U2YTYy ZDE0MDUgMTAwNjQ0DQo+ID4gLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2 di9iYXNlL3ByMTA5NDc5LTIuYw0KPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9ydnYvYmFzZS9wcjEwOTQ3OS0yLmMNCj4gPiBAQCAtMywxMSArMywyNCBAQA0KPiA+DQo+ ID4gICNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPg0KPiA+IC12b2lkIGZvbzAgKCkge3Zp bnQ2NG0xX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMV90 J30gfSAqLw0KPiA+IC12b2lkIGZvbzEgKCkge3Z1aW50NjRtMV90IHQ7fSAvKiB7IGRnLWVycm9y IHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0xX3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vMiAo KSB7dmludDY0bTJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2 NG0yX3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vMyAoKSB7dnVpbnQ2NG0yX3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTJfdCd9IH0gKi8NCj4gPiAtdm9pZCBm b280ICgpIHt2aW50NjRtNF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAn dmludDY0bTRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb281ICgpIHt2dWludDY0bTRfdCB0O30gLyog eyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtNF90J30gfSAqLw0KPiA+IC12 b2lkIGZvbzYgKCkge3ZpbnQ2NG04X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2aW50NjRtOF90J30gfSAqLw0KPiA+IC12b2lkIGZvbzcgKCkge3Z1aW50NjRtOF90IHQ7 fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG04X3QnfSB9ICovDQo+ ID4gKy8qIFRvIHN1cHBvcnQgdGFyZ2V0IGF0dHJpYnV0ZSwgdGhlIHZmbG9hdCptKngqX3QgbmVl ZCB0byBiZSByZWdpc3RlcmVkDQo+ID4gKyAgIGluIGFkdmFuY2UuICBXZSBhZGQgdHlwZSBhbmQg YXJncy9yZXR1cm4gdmFsdWUgY2hlY2sgZHVyaW5nIHRoZQ0KPiA+ICsgICBzZXQgY3VycmVudCBm dW5jdGlvbiBidXQgY2Fubm90IGNvdmVyIGJlbG93IGNhc2VzLiAgSXQgaXMgdGhlIHNhbWUNCj4g PiArICAgYmVoYXZpb3IgY29tcGFyZWQgdG8gYWFyY2g2NCBzdmUuICAqLw0KPiA+ICt2b2lkIGZv bzAgKCkge3ZpbnQ2NG0xX3QgdDt9DQo+ID4gK3ZvaWQgZm9vMSAoKSB7dnVpbnQ2NG0xX3QgdDt9 DQo+ID4gK3ZvaWQgZm9vMiAoKSB7dmludDY0bTJfdCB0O30NCj4gPiArdm9pZCBmb28zICgpIHt2 dWludDY0bTJfdCB0O30NCj4gPiArdm9pZCBmb280ICgpIHt2aW50NjRtNF90IHQ7fQ0KPiA+ICt2 b2lkIGZvbzUgKCkge3Z1aW50NjRtNF90IHQ7fQ0KPiA+ICt2b2lkIGZvbzYgKCkge3ZpbnQ2NG04 X3QgdDt9DQo+ID4gK3ZvaWQgZm9vNyAoKSB7dnVpbnQ2NG04X3QgdDt9DQo+ID4gKw0KPiA+ICt2 b2lkIG5ld19mb28wICh2aW50NjRtMV90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQg dHlwZSAndmludDY0bTFfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3Ig diBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzEgKHZ1aW50NjRtMV90IHQp IHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0bTFfdCcgcmVxdWlyZXMg dGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4g K3ZvaWQgbmV3X2ZvbzIgKHZpbnQ2NG0yX3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2aW50NjRtMl90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBv ciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vMyAodnVpbnQ2NG0yX3Qg dCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMl90JyByZXF1aXJl cyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4g PiArdm9pZCBuZXdfZm9vNCAodmludDY0bTRfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3Vt ZW50IHR5cGUgJ3ZpbnQ2NG00X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb281ICh2dWludDY0bTRf dCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG00X3QnIHJlcXVp cmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0K PiA+ICt2b2lkIG5ld19mb282ICh2aW50NjRtOF90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndmludDY0bThfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2 NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzcgKHZ1aW50NjRt OF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0bThfdCcgcmVx dWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICov DQo+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS9wcjEwOTQ3OS0zLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2Uv cHIxMDk0NzktMy5jDQo+ID4gaW5kZXggMDFlODYyMjNkYTkuLjVjMGNkMWIxZjdmIDEwMDY0NA0K PiA+IC0tLSBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9wcjEwOTQ3 OS0zLmMNCj4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2Uv cHIxMDk0NzktMy5jDQo+ID4gQEAgLTMsMTggKzMsMzggQEANCj4gPg0KPiA+ICAjaW5jbHVkZSAi cmlzY3ZfdmVjdG9yLmgiDQo+ID4NCj4gPiAtdm9pZCBmb28wICgpIHtfX3J2dl9ib29sNjRfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X2Jvb2w2NF90J30gfSAq Lw0KPiA+IC12b2lkIGZvbzEgKCkge19fcnZ2X2ludDhtZjhfdCB0O30gLyogeyBkZy1lcnJvciB7 dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X2ludDhtZjhfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb28y ICgpIHtfX3J2dl91aW50OG1mOF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAnX19ydnZfdWludDhtZjhfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb28zICgpIHtfX3J2dl9pbnQx Nm1mNF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAnX19ydnZfaW50MTZt ZjRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb280ICgpIHtfX3J2dl91aW50MTZtZjRfdCB0O30gLyog eyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X3VpbnQxNm1mNF90J30gfSAqLw0K PiA+IC12b2lkIGZvbzUgKCkge19fcnZ2X2ludDMybWYyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vu a25vd24gdHlwZSBuYW1lICdfX3J2dl9pbnQzMm1mMl90J30gfSAqLw0KPiA+IC12b2lkIGZvbzYg KCkge19fcnZ2X3VpbnQzMm1mMl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAnX19ydnZfdWludDMybWYyX3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vNyAoKSB7X19ydnZfaW50 NjRtMV90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAnX19ydnZfaW50NjRt MV90J30gfSAqLw0KPiA+IC12b2lkIGZvbzggKCkge19fcnZ2X3VpbnQ2NG0xX3QgdDt9IC8qIHsg ZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICdfX3J2dl91aW50NjRtMV90J30gfSAqLw0KPiA+ IC12b2lkIGZvbzkgKCkge19fcnZ2X2ludDY0bTJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ19fcnZ2X2ludDY0bTJfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb28xMCAoKSB7 X19ydnZfdWludDY0bTJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19f cnZ2X3VpbnQ2NG0yX3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vMTEgKCkge19fcnZ2X2ludDY0bTRf dCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X2ludDY0bTRfdCd9 IH0gKi8NCj4gPiAtdm9pZCBmb28xMiAoKSB7X19ydnZfdWludDY0bTRfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2X3VpbnQ2NG00X3QnfSB9ICovDQo+ID4gLXZv aWQgZm9vMTMgKCkge19fcnZ2X2ludDY0bThfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0 eXBlIG5hbWUgJ19fcnZ2X2ludDY0bThfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb28xNCAoKSB7X19y dnZfdWludDY0bThfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ19fcnZ2 X3VpbnQ2NG04X3QnfSB9ICovDQo+ID4gKy8qIFRvIHN1cHBvcnQgdGFyZ2V0IGF0dHJpYnV0ZSwg dGhlIHZmbG9hdCptKngqX3QgbmVlZCB0byBiZSByZWdpc3RlcmVkDQo+ID4gKyAgIGluIGFkdmFu Y2UuICBXZSBhZGQgdHlwZSBhbmQgYXJncy9yZXR1cm4gdmFsdWUgY2hlY2sgZHVyaW5nIHRoZQ0K PiA+ICsgICBzZXQgY3VycmVudCBmdW5jdGlvbiBidXQgY2Fubm90IGNvdmVyIGJlbG93IGNhc2Vz LiAgSXQgaXMgdGhlIHNhbWUNCj4gPiArICAgYmVoYXZpb3IgY29tcGFyZWQgdG8gYWFyY2g2NCBz dmUuICAqLw0KPiA+ICt2b2lkIGZvbzAgKCkge19fcnZ2X2Jvb2w2NF90IHQ7fQ0KPiA+ICt2b2lk IGZvbzEgKCkge19fcnZ2X2ludDhtZjhfdCB0O30NCj4gPiArdm9pZCBmb28yICgpIHtfX3J2dl91 aW50OG1mOF90IHQ7fQ0KPiA+ICt2b2lkIGZvbzMgKCkge19fcnZ2X2ludDE2bWY0X3QgdDt9DQo+ ID4gK3ZvaWQgZm9vNCAoKSB7X19ydnZfdWludDE2bWY0X3QgdDt9DQo+ID4gK3ZvaWQgZm9vNSAo KSB7X19ydnZfaW50MzJtZjJfdCB0O30NCj4gPiArdm9pZCBmb282ICgpIHtfX3J2dl91aW50MzJt ZjJfdCB0O30NCj4gPiArdm9pZCBmb283ICgpIHtfX3J2dl9pbnQ2NG0xX3QgdDt9DQo+ID4gK3Zv aWQgZm9vOCAoKSB7X19ydnZfdWludDY0bTFfdCB0O30NCj4gPiArdm9pZCBmb285ICgpIHtfX3J2 dl9pbnQ2NG0yX3QgdDt9DQo+ID4gK3ZvaWQgZm9vMTAgKCkge19fcnZ2X3VpbnQ2NG0yX3QgdDt9 DQo+ID4gK3ZvaWQgZm9vMTEgKCkge19fcnZ2X2ludDY0bTRfdCB0O30NCj4gPiArdm9pZCBmb28x MiAoKSB7X19ydnZfdWludDY0bTRfdCB0O30NCj4gPiArdm9pZCBmb28xMyAoKSB7X19ydnZfaW50 NjRtOF90IHQ7fQ0KPiA+ICt2b2lkIGZvbzE0ICgpIHtfX3J2dl91aW50NjRtOF90IHQ7fQ0KPiA+ ICsNCj4gPiArdm9pZCBuZXdfZm9vMCAoX19ydnZfYm9vbDY0X3QgdCkgeyB9ICAgIC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ19fcnZ2X2Jvb2w2NF90JyByZXF1aXJlcyB0aGUgbWluaW1h bCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBu ZXdfZm9vMSAoX19ydnZfaW50OG1mOF90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50 IHR5cGUgJ19fcnZ2X2ludDhtZjhfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0 aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzIgKF9fcnZ2 X3VpbnQ4bWY4X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICdfX3J2dl91 aW50OG1mOF90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICcz MicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vMyAoX19ydnZfaW50MTZtZjRfdCB0 KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ19fcnZ2X2ludDE2bWY0X3QnIHJl cXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0g fSAqLw0KPiA+ICt2b2lkIG5ld19mb280IChfX3J2dl91aW50MTZtZjRfdCB0KSB7IH0gLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAnX19ydnZfdWludDE2bWY0X3QnIHJlcXVpcmVzIHRoZSBt aW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2 b2lkIG5ld19mb281IChfX3J2dl9pbnQzMm1mMl90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAnX19ydnZfaW50MzJtZjJfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9y IGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzYg KF9fcnZ2X3VpbnQzMm1mMl90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICdf X3J2dl91aW50MzJtZjJfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQn IGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzcgKF9fcnZ2X2ludDY0 bTFfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICdfX3J2dl9pbnQ2NG0x X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lv bn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb284IChfX3J2dl91aW50NjRtMV90IHQpIHsgfSAgLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAnX19ydnZfdWludDY0bTFfdCcgcmVxdWlyZXMgdGhl IHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3Zv aWQgbmV3X2ZvbzkgKF9fcnZ2X2ludDY0bTJfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICdfX3J2dl9pbnQ2NG0yX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0Ziwg enZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb28xMCAoX19y dnZfdWludDY0bTJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAnX19ydnZf dWludDY0bTJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0Eg ZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzExIChfX3J2dl9pbnQ2NG00X3QgdCkg eyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICdfX3J2dl9pbnQ2NG00X3QnIHJlcXVp cmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0K PiA+ICt2b2lkIG5ld19mb28xMiAoX19ydnZfdWludDY0bTRfdCB0KSB7IH0gLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAnX19ydnZfdWludDY0bTRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwg enZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2Zv bzEzIChfX3J2dl9pbnQ2NG04X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBl ICdfX3J2dl9pbnQ2NG04X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9y IHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb28xNCAoX19ydnZfdWludDY0 bThfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAnX19ydnZfdWludDY0bThf dCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9u fSB9ICovDQo+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS9wcjEwOTQ3OS00LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvcHIxMDk0NzktNC5jDQo+ID4gaW5kZXggNjIzODViOGRjZDEuLjQ4ZTFmMjc4ZTcwIDEw MDY0NA0KPiA+IC0tLSBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9w cjEwOTQ3OS00LmMNCj4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvcHIxMDk0NzktNC5jDQo+ID4gQEAgLTMsMTggKzMsMzkgQEANCj4gPg0KPiA+ICAjaW5j bHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4NCj4gPiAtdm9pZCBmb28wICgpIHt2Ym9vbDY0X3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2Ym9vbDY0X3QnfSB9ICovDQo+ ID4gLXZvaWQgZm9vMSAoKSB7dmludDhtZjhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0 eXBlIG5hbWUgJ3ZpbnQ4bWY4X3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vMiAoKSB7dnVpbnQ4bWY4 X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDhtZjhfdCd9IH0g Ki8NCj4gPiAtdm9pZCBmb28zICgpIHt2aW50MTZtZjRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ3ZpbnQxNm1mNF90J30gfSAqLw0KPiA+IC12b2lkIGZvbzQgKCkge3Z1 aW50MTZtZjRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MTZt ZjRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb281ICgpIHt2aW50MzJtZjJfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQzMm1mMl90J30gfSAqLw0KPiA+IC12b2lkIGZv bzYgKCkge3Z1aW50MzJtZjJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUg J3Z1aW50MzJtZjJfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb283ICgpIHt2aW50NjRtMV90IHQ7fSAv KiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTFfdCd9IH0gKi8NCj4gPiAt dm9pZCBmb284ICgpIHt2dWludDY0bTFfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBl IG5hbWUgJ3Z1aW50NjRtMV90J30gfSAqLw0KPiA+IC12b2lkIGZvbzkgKCkge3ZpbnQ2NG0yX3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMl90J30gfSAqLw0K PiA+IC12b2lkIGZvbzEwICgpIHt2dWludDY0bTJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3Z1aW50NjRtMl90J30gfSAqLw0KPiA+IC12b2lkIGZvbzExICgpIHt2aW50 NjRtNF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTRfdCd9 IH0gKi8NCj4gPiAtdm9pZCBmb28xMiAoKSB7dnVpbnQ2NG00X3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb28xMyAo KSB7dmludDY0bThfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2 NG04X3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vMTQgKCkge3Z1aW50NjRtOF90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG04X3QnfSB9ICovDQo+ID4gKy8qIFRv IHN1cHBvcnQgdGFyZ2V0IGF0dHJpYnV0ZSwgdGhlIHZmbG9hdCptKngqX3QgbmVlZCB0byBiZSBy ZWdpc3RlcmVkDQo+ID4gKyAgIGluIGFkdmFuY2UuICBXZSBhZGQgdHlwZSBhbmQgYXJncy9yZXR1 cm4gdmFsdWUgY2hlY2sgZHVyaW5nIHRoZQ0KPiA+ICsgICBzZXQgY3VycmVudCBmdW5jdGlvbiBi dXQgY2Fubm90IGNvdmVyIGJlbG93IGNhc2VzLiAgSXQgaXMgdGhlIHNhbWUNCj4gPiArICAgYmVo YXZpb3IgY29tcGFyZWQgdG8gYWFyY2g2NCBzdmUuICAqLw0KPiA+ICt2b2lkIGZvbzAgKCkge3Zi b29sNjRfdCB0O30NCj4gPiArdm9pZCBmb28xICgpIHt2aW50OG1mOF90IHQ7fQ0KPiA+ICt2b2lk IGZvbzIgKCkge3Z1aW50OG1mOF90IHQ7fQ0KPiA+ICt2b2lkIGZvbzMgKCkge3ZpbnQxNm1mNF90 IHQ7fQ0KPiA+ICt2b2lkIGZvbzQgKCkge3Z1aW50MTZtZjRfdCB0O30NCj4gPiArdm9pZCBmb281 ICgpIHt2aW50MzJtZjJfdCB0O30NCj4gPiArdm9pZCBmb282ICgpIHt2dWludDMybWYyX3QgdDt9 DQo+ID4gK3ZvaWQgZm9vNyAoKSB7dmludDY0bTFfdCB0O30NCj4gPiArdm9pZCBmb284ICgpIHt2 dWludDY0bTFfdCB0O30NCj4gPiArdm9pZCBmb285ICgpIHt2aW50NjRtMl90IHQ7fQ0KPiA+ICt2 b2lkIGZvbzEwICgpIHt2dWludDY0bTJfdCB0O30NCj4gPiArdm9pZCBmb28xMSAoKSB7dmludDY0 bTRfdCB0O30NCj4gPiArdm9pZCBmb28xMiAoKSB7dnVpbnQ2NG00X3QgdDt9DQo+ID4gK3ZvaWQg Zm9vMTMgKCkge3ZpbnQ2NG04X3QgdDt9DQo+ID4gK3ZvaWQgZm9vMTQgKCkge3Z1aW50NjRtOF90 IHQ7fQ0KPiA+ICsNCj4gPiArdm9pZCBuZXdfZm9vMCAodmJvb2w2NF90IHQpIHsgfSAgICAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2Ym9vbDY0X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFs IHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5l d19mb28xICh2aW50OG1mOF90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUg J3ZpbnQ4bWY4X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQg JzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb28yICh2dWludDhtZjhfdCB0KSB7 IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50OG1mOF90JyByZXF1aXJlcyB0 aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4g PiArdm9pZCBuZXdfZm9vMyAodmludDE2bWY0X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2aW50MTZtZjRfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0 aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzQgKHZ1aW50 MTZtZjRfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQxNm1mNF90 JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2 ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vNSAodmludDMybWYyX3QgdCkgeyB9ICAvKiB7IGRn LWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50MzJtZjJfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwg dmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3 X2ZvbzYgKHZ1aW50MzJtZjJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dnVpbnQzMm1mMl90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0 ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArDQo+ID4gK3ZvaWQgbmV3X2ZvbzcgKHZpbnQ2NG0x X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTFfdCcgcmVx dWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICov DQo+ID4gK3ZvaWQgbmV3X2ZvbzggKHZ1aW50NjRtMV90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7 YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0xX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0Ziwg enZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb285ICh2aW50 NjRtMl90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0yX3Qn IHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0g fSAqLw0KPiA+ICt2b2lkIG5ld19mb28xMCAodnVpbnQ2NG0yX3QgdCkgeyB9IC8qIHsgZGctZXJy b3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMl90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2 NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vMTEg KHZpbnQ2NG00X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRt NF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNp b259IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vMTIgKHZ1aW50NjRtNF90IHQpIHsgfSAvKiB7IGRn LWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0bTRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwg enZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2Zv bzEzICh2aW50NjRtOF90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmlu dDY0bThfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0 ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzE0ICh2dWludDY0bThfdCB0KSB7IH0gLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG04X3QnIHJlcXVpcmVzIHRoZSB6dmU2 NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+IGRpZmYgLS1n aXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvcHIxMDk0NzktNS5j IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5LTUuYw0K PiA+IGluZGV4IDI2YTBhNzQyOTY1Li5hZjIzN2Y1ZDc1OSAxMDA2NDQNCj4gPiAtLS0gYS9nY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvcHIxMDk0NzktNS5jDQo+ID4gKysr IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5LTUuYw0K PiA+IEBAIC0zLDYgKzMsMTAgQEANCj4gPg0KPiA+ICAjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgi DQo+ID4NCj4gPiArLyogVG8gc3VwcG9ydCB0YXJnZXQgYXR0cmlidXRlLCB0aGUgdmZsb2F0Km0q eCpfdCBuZWVkIHRvIGJlIHJlZ2lzdGVyZWQNCj4gPiArICAgaW4gYWR2YW5jZS4gIFdlIGFkZCB0 eXBlIGFuZCBhcmdzL3JldHVybiB2YWx1ZSBjaGVjayBkdXJpbmcgdGhlDQo+ID4gKyAgIHNldCBj dXJyZW50IGZ1bmN0aW9uIGJ1dCBjYW5ub3QgY292ZXIgYmVsb3cgY2FzZXMuICBJdCBpcyB0aGUg c2FtZQ0KPiA+ICsgICBiZWhhdmlvciBjb21wYXJlZCB0byBhYXJjaDY0IHN2ZS4gICovDQo+ID4g IHZvaWQgZm9vMCAoKSB7X19ydnZfYm9vbDY0X3QgdDt9DQo+ID4gIHZvaWQgZm9vMSAoKSB7X19y dnZfaW50OG1mOF90IHQ7fQ0KPiA+ICB2b2lkIGZvbzIgKCkge19fcnZ2X3VpbnQ4bWY4X3QgdDt9 DQo+ID4gQEAgLTEwLDExICsxNCwyOCBAQCB2b2lkIGZvbzMgKCkge19fcnZ2X2ludDE2bWY0X3Qg dDt9DQo+ID4gIHZvaWQgZm9vNCAoKSB7X19ydnZfdWludDE2bWY0X3QgdDt9DQo+ID4gIHZvaWQg Zm9vNSAoKSB7X19ydnZfaW50MzJtZjJfdCB0O30NCj4gPiAgdm9pZCBmb282ICgpIHtfX3J2dl91 aW50MzJtZjJfdCB0O30NCj4gPiAtdm9pZCBmb283ICgpIHtfX3J2dl9pbnQ2NG0xX3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICdfX3J2dl9pbnQ2NG0xX3QnfSB9ICovDQo+ ID4gLXZvaWQgZm9vOCAoKSB7X19ydnZfdWludDY0bTFfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ19fcnZ2X3VpbnQ2NG0xX3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vOSAo KSB7X19ydnZfaW50NjRtMl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAn X19ydnZfaW50NjRtMl90J30gfSAqLw0KPiA+IC12b2lkIGZvbzEwICgpIHtfX3J2dl91aW50NjRt Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAnX19ydnZfdWludDY0bTJf dCd9IH0gKi8NCj4gPiAtdm9pZCBmb28xMSAoKSB7X19ydnZfaW50NjRtNF90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAnX19ydnZfaW50NjRtNF90J30gfSAqLw0KPiA+IC12 b2lkIGZvbzEyICgpIHtfX3J2dl91aW50NjRtNF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3du IHR5cGUgbmFtZSAnX19ydnZfdWludDY0bTRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb28xMyAoKSB7 X19ydnZfaW50NjRtOF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAnX19y dnZfaW50NjRtOF90J30gfSAqLw0KPiA+IC12b2lkIGZvbzE0ICgpIHtfX3J2dl91aW50NjRtOF90 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAnX19ydnZfdWludDY0bThfdCd9 IH0gKi8NCj4gPiArdm9pZCBmb283ICgpIHtfX3J2dl9pbnQ2NG0xX3QgdDt9DQo+ID4gK3ZvaWQg Zm9vOCAoKSB7X19ydnZfdWludDY0bTFfdCB0O30NCj4gPiArdm9pZCBmb285ICgpIHtfX3J2dl9p bnQ2NG0yX3QgdDt9DQo+ID4gK3ZvaWQgZm9vMTAgKCkge19fcnZ2X3VpbnQ2NG0yX3QgdDt9DQo+ ID4gK3ZvaWQgZm9vMTEgKCkge19fcnZ2X2ludDY0bTRfdCB0O30NCj4gPiArdm9pZCBmb28xMiAo KSB7X19ydnZfdWludDY0bTRfdCB0O30NCj4gPiArdm9pZCBmb28xMyAoKSB7X19ydnZfaW50NjRt OF90IHQ7fQ0KPiA+ICt2b2lkIGZvbzE0ICgpIHtfX3J2dl91aW50NjRtOF90IHQ7fQ0KPiA+ICsN Cj4gPiArdm9pZCBuZXdfZm9vMCAoX19ydnZfYm9vbDY0X3QgdCkgeyB9DQo+ID4gK3ZvaWQgbmV3 X2ZvbzEgKF9fcnZ2X2ludDhtZjhfdCB0KSB7IH0NCj4gPiArdm9pZCBuZXdfZm9vMiAoX19ydnZf dWludDhtZjhfdCB0KSB7IH0NCj4gPiArdm9pZCBuZXdfZm9vMyAoX19ydnZfaW50MTZtZjRfdCB0 KSB7IH0NCj4gPiArdm9pZCBuZXdfZm9vNCAoX19ydnZfdWludDE2bWY0X3QgdCkgeyB9DQo+ID4g K3ZvaWQgbmV3X2ZvbzUgKF9fcnZ2X2ludDMybWYyX3QgdCkgeyB9DQo+ID4gK3ZvaWQgbmV3X2Zv bzYgKF9fcnZ2X3VpbnQzMm1mMl90IHQpIHsgfQ0KPiA+ICsNCj4gPiArdm9pZCBuZXdfZm9vNyAo X19ydnZfaW50NjRtMV90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ19f cnZ2X2ludDY0bTFfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJ U0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzggKF9fcnZ2X3VpbnQ2NG0xX3Qg dCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICdfX3J2dl91aW50NjRtMV90JyBy ZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0g Ki8NCj4gPiArdm9pZCBuZXdfZm9vOSAoX19ydnZfaW50NjRtMl90IHQpIHsgfSAgIC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ19fcnZ2X2ludDY0bTJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0 eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3 X2ZvbzEwIChfX3J2dl91aW50NjRtMl90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0 eXBlICdfX3J2dl91aW50NjRtMl90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0 ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vMTEgKF9fcnZ2X2lu dDY0bTRfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ19fcnZ2X2ludDY0 bTRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5z aW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzEyIChfX3J2dl91aW50NjRtNF90IHQpIHsgfSAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICdfX3J2dl91aW50NjRtNF90JyByZXF1aXJlcyB0 aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiAr dm9pZCBuZXdfZm9vMTMgKF9fcnZ2X2ludDY0bThfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2Fy Z3VtZW50IHR5cGUgJ19fcnZ2X2ludDY0bThfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRm LCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzE0IChf X3J2dl91aW50NjRtOF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICdfX3J2 dl91aW50NjRtOF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElT QSBleHRlbnNpb259IH0gKi8NCj4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3ByMTA5NDc5LTYuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdl dC9yaXNjdi9ydnYvYmFzZS9wcjEwOTQ3OS02LmMNCj4gPiBpbmRleCBlYjY2ZjNlYTJiZC4uMjc3 OWZiZGEwNTMgMTAwNjQ0DQo+ID4gLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9iYXNlL3ByMTA5NDc5LTYuYw0KPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdl dC9yaXNjdi9ydnYvYmFzZS9wcjEwOTQ3OS02LmMNCj4gPiBAQCAtMTAsMTEgKzEwLDI4IEBAIHZv aWQgZm9vMyAoKSB7dmludDE2bWY0X3QgdDt9DQo+ID4gIHZvaWQgZm9vNCAoKSB7dnVpbnQxNm1m NF90IHQ7fQ0KPiA+ICB2b2lkIGZvbzUgKCkge3ZpbnQzMm1mMl90IHQ7fQ0KPiA+ICB2b2lkIGZv bzYgKCkge3Z1aW50MzJtZjJfdCB0O30NCj4gPiAtdm9pZCBmb283ICgpIHt2aW50NjRtMV90IHQ7 fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTFfdCd9IH0gKi8NCj4g PiAtdm9pZCBmb284ICgpIHt2dWludDY0bTFfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0 eXBlIG5hbWUgJ3Z1aW50NjRtMV90J30gfSAqLw0KPiA+IC12b2lkIGZvbzkgKCkge3ZpbnQ2NG0y X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMl90J30gfSAq Lw0KPiA+IC12b2lkIGZvbzEwICgpIHt2dWludDY0bTJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMl90J30gfSAqLw0KPiA+IC12b2lkIGZvbzExICgpIHt2 aW50NjRtNF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTRf dCd9IH0gKi8NCj4gPiAtdm9pZCBmb28xMiAoKSB7dnVpbnQ2NG00X3QgdDt9IC8qIHsgZGctZXJy b3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb28x MyAoKSB7dmludDY0bThfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Zp bnQ2NG04X3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vMTQgKCkge3Z1aW50NjRtOF90IHQ7fSAvKiB7 IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG04X3QnfSB9ICovDQo+ID4gK3Zv aWQgZm9vNyAoKSB7dmludDY0bTFfdCB0O30NCj4gPiArdm9pZCBmb284ICgpIHt2dWludDY0bTFf dCB0O30NCj4gPiArdm9pZCBmb285ICgpIHt2aW50NjRtMl90IHQ7fQ0KPiA+ICt2b2lkIGZvbzEw ICgpIHt2dWludDY0bTJfdCB0O30NCj4gPiArdm9pZCBmb28xMSAoKSB7dmludDY0bTRfdCB0O30N Cj4gPiArdm9pZCBmb28xMiAoKSB7dnVpbnQ2NG00X3QgdDt9DQo+ID4gK3ZvaWQgZm9vMTMgKCkg e3ZpbnQ2NG04X3QgdDt9DQo+ID4gK3ZvaWQgZm9vMTQgKCkge3Z1aW50NjRtOF90IHQ7fQ0KPiA+ ICsNCj4gPiArdm9pZCBuZXdfZm9vMCAodmJvb2w2NF90IHQpIHsgfQ0KPiA+ICt2b2lkIG5ld19m b28xICh2aW50OG1mOF90IHQpIHsgfQ0KPiA+ICt2b2lkIG5ld19mb28yICh2dWludDhtZjhfdCB0 KSB7IH0NCj4gPiArdm9pZCBuZXdfZm9vMyAodmludDE2bWY0X3QgdCkgeyB9DQo+ID4gK3ZvaWQg bmV3X2ZvbzQgKHZ1aW50MTZtZjRfdCB0KSB7IH0NCj4gPiArdm9pZCBuZXdfZm9vNSAodmludDMy bWYyX3QgdCkgeyB9DQo+ID4gK3ZvaWQgbmV3X2ZvbzYgKHZ1aW50MzJtZjJfdCB0KSB7IH0NCj4g PiArDQo+ID4gK3ZvaWQgbmV3X2ZvbzcgKHZpbnQ2NG0xX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndmludDY0bTFfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRm LCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzggKHZ1 aW50NjRtMV90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0x X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lv bn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb285ICh2aW50NjRtMl90IHQpIHsgfSAgIC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0yX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2 ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb28x MCAodnVpbnQ2NG0yX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50 NjRtMl90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRl bnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vMTEgKHZpbnQ2NG00X3QgdCkgeyB9ICAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtNF90JyByZXF1aXJlcyB0aGUgenZlNjR4 LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdf Zm9vMTIgKHZ1aW50NjRtNF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 dWludDY0bTRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0Eg ZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzEzICh2aW50NjRtOF90IHQpIHsgfSAg LyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bThfdCcgcmVxdWlyZXMgdGhlIHp2 ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQg bmV3X2ZvbzE0ICh2dWludDY0bThfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlw ZSAndnVpbnQ2NG04X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYg SVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTEw LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJp YnV0ZV92X3dpdGhfaW50cmluc2ljLTEwLmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ IGluZGV4IDAwMDAwMDAwMDAwLi4zZTY4NDQ0NzVkNQ0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiAr KysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJp YnV0ZV92X3dpdGhfaW50cmluc2ljLTEwLmMNCj4gPiBAQCAtMCwwICsxLDEyIEBADQo+ID4gKy8q IFRlc3QgdGhhdCB3ZSBkbyBub3QgaGF2ZSBlcnJvciB3aGVuIGNvbXBpbGUgKi8NCj4gPiArLyog eyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdj IC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0KPiA+ICsNCj4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rv ci5oIg0KPiA+ICsNCj4gPiArdmZsb2F0MTZtMV90DQo+ID4gK19fYXR0cmlidXRlX18oKHRhcmdl dCgiYXJjaD0rdiwrenZmaCIpKSkNCj4gPiArdGVzdF8xICh2ZmxvYXQxNm0xX3QgYSwgdmZsb2F0 MTZtMV90IGIsIHNpemVfdCB2bCkNCj4gPiArew0KPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZmYWRk X3Z2X2YxNm0xIChhLCBiLCB2bCk7DQo+ID4gK30NCj4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2lu dHJpbnNpYy0xMS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rh cmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xMS5jDQo+ID4gbmV3IGZpbGUgbW9kZSAx MDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwMDAwMC4uZGYwNTMwNzNiYzgNCj4gPiAtLS0gL2Rldi9u dWxsDQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rh cmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xMS5jDQo+ID4gQEAgLTAsMCArMSwyNiBA QA0KPiA+ICsvKiBUZXN0IHRoYXQgd2UgZG8gbm90IGhhdmUgZXJyb3Igd2hlbiBjb21waWxlICov DQo+ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1h cmNoPXJ2NjRnYyAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiArDQo+ID4gKyNpbmNsdWRlICJy aXNjdl92ZWN0b3IuaCINCj4gPiArDQo+ID4gK3ZpbnQ4bTFfdA0KPiA+ICtfX2F0dHJpYnV0ZV9f KCh0YXJnZXQoImFyY2g9K3p2ZTMyeCIpKSkNCj4gPiArdGVzdF8xICh2aW50OG0xX3QgYSwgdmlu dDhtMV90IGIsIHNpemVfdCB2bCkNCj4gPiArew0KPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZhZGRf dnZfaThtMSAoYSwgYiwgdmwpOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICt2aW50MTZtMV90DQo+ID4g K19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZlMzJ4IikpKQ0KPiA+ICt0ZXN0XzIgKHZp bnQxNm0xX3QgYSwgdmludDE2bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gK3sNCj4gPiArICByZXR1 cm4gX19yaXNjdl92YWRkX3Z2X2kxNm0xIChhLCBiLCB2bCk7DQo+ID4gK30NCj4gPiArDQo+ID4g K3ZpbnQzMm0xX3QNCj4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmUzMngiKSkp DQo+ID4gK3Rlc3RfMyAodmludDMybTFfdCBhLCB2aW50MzJtMV90IGIsIHNpemVfdCB2bCkNCj4g PiArew0KPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZhZGRfdnZfaTMybTEgKGEsIGIsIHZsKTsNCj4g PiArfQ0KPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTEyLmMgYi9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50 cmluc2ljLTEyLmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAw MDAwLi41MWE5MTg4NmY1Mg0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50 cmluc2ljLTEyLmMNCj4gPiBAQCAtMCwwICsxLDMzIEBADQo+ID4gKy8qIFRlc3QgdGhhdCB3ZSBk byBub3QgaGF2ZSBlcnJvciB3aGVuIGNvbXBpbGUgKi8NCj4gPiArLyogeyBkZy1kbyBjb21waWxl IH0gKi8NCj4gPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjIC1tYWJpPWxwNjRkIC1P MyIgfSAqLw0KPiA+ICsNCj4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ICsNCj4g PiArdmludDhtMV90DQo+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZlMzJmIikp KQ0KPiA+ICt0ZXN0XzEgKHZpbnQ4bTFfdCBhLCB2aW50OG0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ ICt7DQo+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmFkZF92dl9pOG0xIChhLCBiLCB2bCk7DQo+ID4g K30NCj4gPiArDQo+ID4gK3ZpbnQxNm0xX3QNCj4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJh cmNoPSt6dmUzMmYiKSkpDQo+ID4gK3Rlc3RfMiAodmludDE2bTFfdCBhLCB2aW50MTZtMV90IGIs IHNpemVfdCB2bCkNCj4gPiArew0KPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZhZGRfdnZfaTE2bTEg KGEsIGIsIHZsKTsNCj4gPiArfQ0KPiA+ICsNCj4gPiArdmludDMybTFfdA0KPiA+ICtfX2F0dHJp YnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTMyZiIpKSkNCj4gPiArdGVzdF8zICh2aW50MzJtMV90 IGEsIHZpbnQzMm0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ICt7DQo+ID4gKyAgcmV0dXJuIF9fcmlz Y3ZfdmFkZF92dl9pMzJtMSAoYSwgYiwgdmwpOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICt2ZmxvYXQz Mm0xX3QNCj4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmUzMmYiKSkpDQo+ID4g K3Rlc3RfNCAodmZsb2F0MzJtMV90IGEsIHZmbG9hdDMybTFfdCBiLCBzaXplX3QgdmwpDQo+ID4g K3sNCj4gPiArICByZXR1cm4gX19yaXNjdl92ZmFkZF92dl9mMzJtMSAoYSwgYiwgdmwpOw0KPiA+ ICt9DQo+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTMuYyBiL2djYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRy aW5zaWMtMTMuYw0KPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMDAw MDAuLjk5NGIxYzBhNWRiDQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2djYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRy aW5zaWMtMTMuYw0KPiA+IEBAIC0wLDAgKzEsMzMgQEANCj4gPiArLyogVGVzdCB0aGF0IHdlIGRv IG5vdCBoYXZlIGVycm9yIHdoZW4gY29tcGlsZSAqLw0KPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUg fSAqLw0KPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8z IiB9ICovDQo+ID4gKw0KPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gKw0KPiA+ ICt2aW50OG0xX3QNCj4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmU2NHgiKSkp DQo+ID4gK3Rlc3RfMSAodmludDhtMV90IGEsIHZpbnQ4bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4g K3sNCj4gPiArICByZXR1cm4gX19yaXNjdl92YWRkX3Z2X2k4bTEgKGEsIGIsIHZsKTsNCj4gPiAr fQ0KPiA+ICsNCj4gPiArdmludDE2bTFfdA0KPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFy Y2g9K3p2ZTY0eCIpKSkNCj4gPiArdGVzdF8yICh2aW50MTZtMV90IGEsIHZpbnQxNm0xX3QgYiwg c2l6ZV90IHZsKQ0KPiA+ICt7DQo+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmFkZF92dl9pMTZtMSAo YSwgYiwgdmwpOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICt2aW50MzJtMV90DQo+ID4gK19fYXR0cmli dXRlX18oKHRhcmdldCgiYXJjaD0renZlNjR4IikpKQ0KPiA+ICt0ZXN0XzMgKHZpbnQzMm0xX3Qg YSwgdmludDMybTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gK3sNCj4gPiArICByZXR1cm4gX19yaXNj dl92YWRkX3Z2X2kzMm0xIChhLCBiLCB2bCk7DQo+ID4gK30NCj4gPiArDQo+ID4gK3ZpbnQ2NG0x X3QNCj4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmU2NHgiKSkpDQo+ID4gK3Rl c3RfNCAodmludDY0bTFfdCBhLCB2aW50NjRtMV90IGIsIHNpemVfdCB2bCkNCj4gPiArew0KPiA+ ICsgIHJldHVybiBfX3Jpc2N2X3ZhZGRfdnZfaTY0bTEgKGEsIGIsIHZsKTsNCj4gPiArfQ0KPiA+ IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFy Z2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE0LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE0 LmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAwMDAwLi5jYWEy YTEwZTk0Mw0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTE0 LmMNCj4gPiBAQCAtMCwwICsxLDQwIEBADQo+ID4gKy8qIFRlc3QgdGhhdCB3ZSBkbyBub3QgaGF2 ZSBlcnJvciB3aGVuIGNvbXBpbGUgKi8NCj4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4g PiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjIC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0K PiA+ICsNCj4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ICsNCj4gPiArdmludDht MV90DQo+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZlNjRmIikpKQ0KPiA+ICt0 ZXN0XzEgKHZpbnQ4bTFfdCBhLCB2aW50OG0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ICt7DQo+ID4g KyAgcmV0dXJuIF9fcmlzY3ZfdmFkZF92dl9pOG0xIChhLCBiLCB2bCk7DQo+ID4gK30NCj4gPiAr DQo+ID4gK3ZpbnQxNm0xX3QNCj4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmU2 NGYiKSkpDQo+ID4gK3Rlc3RfMiAodmludDE2bTFfdCBhLCB2aW50MTZtMV90IGIsIHNpemVfdCB2 bCkNCj4gPiArew0KPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZhZGRfdnZfaTE2bTEgKGEsIGIsIHZs KTsNCj4gPiArfQ0KPiA+ICsNCj4gPiArdmludDMybTFfdA0KPiA+ICtfX2F0dHJpYnV0ZV9fKCh0 YXJnZXQoImFyY2g9K3p2ZTY0ZiIpKSkNCj4gPiArdGVzdF8zICh2aW50MzJtMV90IGEsIHZpbnQz Mm0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ICt7DQo+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmFkZF92 dl9pMzJtMSAoYSwgYiwgdmwpOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICt2aW50NjRtMV90DQo+ID4g K19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZlNjRmIikpKQ0KPiA+ICt0ZXN0XzQgKHZp bnQ2NG0xX3QgYSwgdmludDY0bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gK3sNCj4gPiArICByZXR1 cm4gX19yaXNjdl92YWRkX3Z2X2k2NG0xIChhLCBiLCB2bCk7DQo+ID4gK30NCj4gPiArDQo+ID4g K3ZmbG9hdDMybTFfdA0KPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTY0ZiIp KSkNCj4gPiArdGVzdF81ICh2ZmxvYXQzMm0xX3QgYSwgdmZsb2F0MzJtMV90IGIsIHNpemVfdCB2 bCkNCj4gPiArew0KPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZmYWRkX3Z2X2YzMm0xIChhLCBiLCB2 bCk7DQo+ID4gK30NCj4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xNS5jIGIvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93 aXRoX2ludHJpbnNpYy0xNS5jDQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAw MDAwMDAwMDAwMC4uNzJhMmJlNmU1NjANCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93 aXRoX2ludHJpbnNpYy0xNS5jDQo+ID4gQEAgLTAsMCArMSw0NyBAQA0KPiA+ICsvKiBUZXN0IHRo YXQgd2UgZG8gbm90IGhhdmUgZXJyb3Igd2hlbiBjb21waWxlICovDQo+ID4gKy8qIHsgZGctZG8g Y29tcGlsZSB9ICovDQo+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnYyAtbWFiaT1s cDY0ZCAtTzMiIH0gKi8NCj4gPiArDQo+ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4g PiArDQo+ID4gK3ZpbnQ4bTFfdA0KPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2 ZTY0ZCIpKSkNCj4gPiArdGVzdF8xICh2aW50OG0xX3QgYSwgdmludDhtMV90IGIsIHNpemVfdCB2 bCkNCj4gPiArew0KPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZhZGRfdnZfaThtMSAoYSwgYiwgdmwp Ow0KPiA+ICt9DQo+ID4gKw0KPiA+ICt2aW50MTZtMV90DQo+ID4gK19fYXR0cmlidXRlX18oKHRh cmdldCgiYXJjaD0renZlNjRkIikpKQ0KPiA+ICt0ZXN0XzIgKHZpbnQxNm0xX3QgYSwgdmludDE2 bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gK3sNCj4gPiArICByZXR1cm4gX19yaXNjdl92YWRkX3Z2 X2kxNm0xIChhLCBiLCB2bCk7DQo+ID4gK30NCj4gPiArDQo+ID4gK3ZpbnQzMm0xX3QNCj4gPiAr X19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmU2NGQiKSkpDQo+ID4gK3Rlc3RfMyAodmlu dDMybTFfdCBhLCB2aW50MzJtMV90IGIsIHNpemVfdCB2bCkNCj4gPiArew0KPiA+ICsgIHJldHVy biBfX3Jpc2N2X3ZhZGRfdnZfaTMybTEgKGEsIGIsIHZsKTsNCj4gPiArfQ0KPiA+ICsNCj4gPiAr dmludDY0bTFfdA0KPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTY0ZCIpKSkN Cj4gPiArdGVzdF80ICh2aW50NjRtMV90IGEsIHZpbnQ2NG0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ ICt7DQo+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmFkZF92dl9pNjRtMSAoYSwgYiwgdmwpOw0KPiA+ ICt9DQo+ID4gKw0KPiA+ICt2ZmxvYXQzMm0xX3QNCj4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0 KCJhcmNoPSt6dmU2NGQiKSkpDQo+ID4gK3Rlc3RfNSAodmZsb2F0MzJtMV90IGEsIHZmbG9hdDMy bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gK3sNCj4gPiArICByZXR1cm4gX19yaXNjdl92ZmFkZF92 dl9mMzJtMSAoYSwgYiwgdmwpOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICt2ZmxvYXQ2NG0xX3QNCj4g PiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmU2NGQiKSkpDQo+ID4gK3Rlc3RfNiAo dmZsb2F0NjRtMV90IGEsIHZmbG9hdDY0bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gK3sNCj4gPiAr ICByZXR1cm4gX19yaXNjdl92ZmFkZF92dl9mNjRtMSAoYSwgYiwgdmwpOw0KPiA+ICt9DQo+ID4g ZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJn ZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTYuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTYu Yw0KPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMDAwMDAuLmRhYmRj ZjhmZjIxDQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMTYu Yw0KPiA+IEBAIC0wLDAgKzEsMTIgQEANCj4gPiArLyogVGVzdCB0aGF0IHdlIGRvIG5vdCBoYXZl IGVycm9yIHdoZW4gY29tcGlsZSAqLw0KPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ ID4gKw0KPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gKw0KPiA+ICt2ZmxvYXQz Mm0xX3QNCj4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt2LCt6dmZobWluIikpKQ0K PiA+ICt0ZXN0XzEgKHZmbG9hdDE2bWYyX3QgYSwgc2l6ZV90IHZsKQ0KPiA+ICt7DQo+ID4gKyAg cmV0dXJuIF9fcmlzY3ZfdmZ3Y3Z0X2ZfZl92X2YzMm0xIChhLCB2bCk7DQo+ID4gK30NCj4gPiBk aWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rhcmdl dF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xNy5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xNy5j DQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwMDAwMC4uYTA2NDQx NzE2OWQNCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xNy5j DQo+ID4gQEAgLTAsMCArMSwxMyBAQA0KPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ ID4gKw0KPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gKw0KPiA+ICt2aW50NjRt MV90DQo+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZlMzJ4IikpKQ0KPiA+ICt0 ZXN0XzEgKHZpbnQ2NG0xX3QgYSwgdmludDY0bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gK3sNCj4g PiArICByZXR1cm4gX19yaXNjdl92YWRkX3Z2X2k2NG0xIChhLCBiLCB2bCk7DQo+ID4gK30NCj4g PiArDQo+ID4gKy8qIHsgZGctZXJyb3IgInJldHVybiB0eXBlICd2aW50NjRtMV90JyByZXF1aXJl cyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb24iICIiIHsgdGFy Z2V0IHsgInJpc2N2Ki0qLSoiIH0gfSAwIH0gKi8NCj4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2lu dHJpbnNpYy0xOC5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rh cmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xOC5jDQo+ID4gbmV3IGZpbGUgbW9kZSAx MDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwMDAwMC4uNjFkM2ZiMjVkYzINCj4gPiAtLS0gL2Rldi9u dWxsDQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rh cmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xOC5jDQo+ID4gQEAgLTAsMCArMSwxMyBA QA0KPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1t YXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ID4gKw0KPiA+ICsjaW5jbHVkZSAi cmlzY3ZfdmVjdG9yLmgiDQo+ID4gKw0KPiA+ICt2ZmxvYXQzMm0xX3QNCj4gPiArX19hdHRyaWJ1 dGVfXygodGFyZ2V0KCJhcmNoPSt6dmUzMngiKSkpDQo+ID4gK3Rlc3RfMSAodmZsb2F0MzJtMV90 IGEsIHZmbG9hdDMybTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gK3sNCj4gPiArICByZXR1cm4gX19y aXNjdl92ZmFkZF92dl9mMzJtMSAoYSwgYiwgdmwpOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICsvKiB7 IGRnLWVycm9yICJyZXR1cm4gdHlwZSAndmZsb2F0MzJtMV90JyByZXF1aXJlcyB0aGUgenZlMzJm LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb24iICIiIHsgdGFyZ2V0IHsgInJpc2N2 Ki0qLSoiIH0gfSAwIH0gKi8NCj4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0xOS5j IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy0xOS5jDQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBp bmRleCAwMDAwMDAwMDAwMC4uYmZjMjZmODIxMGENCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysr IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy0xOS5jDQo+ID4gQEAgLTAsMCArMSwxMyBAQA0KPiA+ICsvKiB7 IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2Mg LW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ID4gKw0KPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9y LmgiDQo+ID4gKw0KPiA+ICt2ZmxvYXQxNm0xX3QNCj4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0 KCJhcmNoPSt6dmUzMngiKSkpDQo+ID4gK3Rlc3RfMSAodmZsb2F0MTZtMV90IGEsIHZmbG9hdDE2 bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gK3sNCj4gPiArICByZXR1cm4gX19yaXNjdl92ZmFkZF92 dl9mMTZtMSAoYSwgYiwgdmwpOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICsvKiB7IGRnLWVycm9yICJy ZXR1cm4gdHlwZSAndmZsb2F0MTZtMV90JyByZXF1aXJlcyB0aGUgenZmaG1pbiBvciB6dmZoIElT QSBleHRlbnNpb24iICIiIHsgdGFyZ2V0IHsgInJpc2N2Ki0qLSoiIH0gfSAwIH0gKi8NCj4gPiBk aWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rhcmdl dF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yMC5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yMC5j DQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwMDAwMC4uMzVhMjky NDIzNGYNCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yMC5j DQo+ID4gQEAgLTAsMCArMSwxMyBAQA0KPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ ID4gKw0KPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gKw0KPiA+ICt2ZmxvYXQ2 NG0xX3QNCj4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmUzMngiKSkpDQo+ID4g K3Rlc3RfMSAodmZsb2F0NjRtMV90IGEsIHZmbG9hdDY0bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4g K3sNCj4gPiArICByZXR1cm4gX19yaXNjdl92ZmFkZF92dl9mNjRtMSAoYSwgYiwgdmwpOw0KPiA+ ICt9DQo+ID4gKw0KPiA+ICsvKiB7IGRnLWVycm9yICJyZXR1cm4gdHlwZSAndmZsb2F0NjRtMV90 JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbiIgIiIgeyB0YXJnZXQgeyAi cmlzY3YqLSotKiIgfSB9IDAgfSAqLw0KPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2lj LTIxLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0 dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTIxLmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0K PiA+IGluZGV4IDAwMDAwMDAwMDAwLi5lM2FlZjMzOWQ2OA0KPiA+IC0tLSAvZGV2L251bGwNCj4g PiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0 dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTIxLmMNCj4gPiBAQCAtMCwwICsxLDEzIEBADQo+ID4g Ky8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2 NjRnYyAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiArDQo+ID4gKyNpbmNsdWRlICJyaXNjdl92 ZWN0b3IuaCINCj4gPiArDQo+ID4gK3ZpbnQ2NG0xX3QNCj4gPiArX19hdHRyaWJ1dGVfXygodGFy Z2V0KCJhcmNoPSt6dmUzMmYiKSkpDQo+ID4gK3Rlc3RfMSAodmludDY0bTFfdCBhLCB2aW50NjRt MV90IGIsIHNpemVfdCB2bCkNCj4gPiArew0KPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZhZGRfdnZf aTY0bTEgKGEsIGIsIHZsKTsNCj4gPiArfQ0KPiA+ICsNCj4gPiArLyogeyBkZy1lcnJvciAicmV0 dXJuIHR5cGUgJ3ZpbnQ2NG0xX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbiIgIiIgeyB0YXJnZXQgeyAicmlzY3YqLSotKiIgfSB9IDAgfSAq Lw0KPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTIyLmMgYi9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmlu c2ljLTIyLmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAwMDAw Li5iNWE4OTRlY2FkNA0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmlu c2ljLTIyLmMNCj4gPiBAQCAtMCwwICsxLDEzIEBADQo+ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9 ICovDQo+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnYyAtbWFiaT1scDY0ZCAtTzMi IH0gKi8NCj4gPiArDQo+ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiArDQo+ID4g K3ZmbG9hdDE2bTFfdA0KPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTMyZiIp KSkNCj4gPiArdGVzdF8xICh2ZmxvYXQxNm0xX3QgYSwgdmZsb2F0MTZtMV90IGIsIHNpemVfdCB2 bCkNCj4gPiArew0KPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZmYWRkX3Z2X2YxNm0xIChhLCBiLCB2 bCk7DQo+ID4gK30NCj4gPiArDQo+ID4gKy8qIHsgZGctZXJyb3IgInJldHVybiB0eXBlICd2Zmxv YXQxNm0xX3QnIHJlcXVpcmVzIHRoZSB6dmZobWluIG9yIHp2ZmggSVNBIGV4dGVuc2lvbiIgIiIg eyB0YXJnZXQgeyAicmlzY3YqLSotKiIgfSB9IDAgfSAqLw0KPiA+IGRpZmYgLS1naXQgYS9nY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dp dGhfaW50cmluc2ljLTIzLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTIzLmMNCj4gPiBuZXcgZmlsZSBt b2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAwMDAwLi43MjY3ZmEzMzA0Yg0KPiA+IC0tLSAv ZGV2L251bGwNCj4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTIzLmMNCj4gPiBAQCAtMCwwICsx LDEzIEBADQo+ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gKy8qIHsgZGctb3B0aW9u cyAiLW1hcmNoPXJ2NjRnYyAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiArDQo+ID4gKyNpbmNs dWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiArDQo+ID4gK3ZmbG9hdDY0bTFfdA0KPiA+ICtfX2F0 dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTMyZiIpKSkNCj4gPiArdGVzdF8xICh2ZmxvYXQ2 NG0xX3QgYSwgdmZsb2F0NjRtMV90IGIsIHNpemVfdCB2bCkNCj4gPiArew0KPiA+ICsgIHJldHVy biBfX3Jpc2N2X3ZmYWRkX3Z2X2Y2NG0xIChhLCBiLCB2bCk7DQo+ID4gK30NCj4gPiArDQo+ID4g Ky8qIHsgZGctZXJyb3IgInJldHVybiB0eXBlICd2ZmxvYXQ2NG0xX3QnIHJlcXVpcmVzIHRoZSB6 dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9uIiAiIiB7IHRhcmdldCB7ICJyaXNjdiotKi0qIiB9IH0g MCB9ICovDQo+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjQuYyBiL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9p bnRyaW5zaWMtMjQuYw0KPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAw MDAwMDAuLjVhN2M0NDgxYTVhDQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9p bnRyaW5zaWMtMjQuYw0KPiA+IEBAIC0wLDAgKzEsMTMgQEANCj4gPiArLyogeyBkZy1kbyBjb21w aWxlIH0gKi8NCj4gPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjIC1tYWJpPWxwNjRk IC1PMyIgfSAqLw0KPiA+ICsNCj4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ICsN Cj4gPiArdmZsb2F0MzJtMV90DQo+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZl NjR4IikpKQ0KPiA+ICt0ZXN0XzEgKHZmbG9hdDMybTFfdCBhLCB2ZmxvYXQzMm0xX3QgYiwgc2l6 ZV90IHZsKQ0KPiA+ICt7DQo+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZhZGRfdnZfZjMybTEgKGEs IGIsIHZsKTsNCj4gPiArfQ0KPiA+ICsNCj4gPiArLyogeyBkZy1lcnJvciAicmV0dXJuIHR5cGUg J3ZmbG9hdDMybTFfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJ U0EgZXh0ZW5zaW9uIiAiIiB7IHRhcmdldCB7ICJyaXNjdiotKi0qIiB9IH0gMCB9ICovDQo+ID4g ZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJn ZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjUuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjUu Yw0KPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMDAwMDAuLmYxMjQx Y2IxNzcxDQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjUu Yw0KPiA+IEBAIC0wLDAgKzEsMTMgQEANCj4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4g PiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjIC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0K PiA+ICsNCj4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ICsNCj4gPiArdmZsb2F0 MTZtMV90DQo+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZlNjR4IikpKQ0KPiA+ ICt0ZXN0XzEgKHZmbG9hdDE2bTFfdCBhLCB2ZmxvYXQxNm0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ ICt7DQo+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZhZGRfdnZfZjE2bTEgKGEsIGIsIHZsKTsNCj4g PiArfQ0KPiA+ICsNCj4gPiArLyogeyBkZy1lcnJvciAicmV0dXJuIHR5cGUgJ3ZmbG9hdDE2bTFf dCcgcmVxdWlyZXMgdGhlIHp2ZmhtaW4gb3IgenZmaCBJU0EgZXh0ZW5zaW9uIiAiIiB7IHRhcmdl dCB7ICJyaXNjdiotKi0qIiB9IH0gMCB9ICovDQo+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRy aW5zaWMtMjYuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJn ZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjYuYw0KPiA+IG5ldyBmaWxlIG1vZGUgMTAw NjQ0DQo+ID4gaW5kZXggMDAwMDAwMDAwMDAuLjI3MzhhMjlkNjczDQo+ID4gLS0tIC9kZXYvbnVs bA0KPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJn ZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMjYuYw0KPiA+IEBAIC0wLDAgKzEsMTMgQEAN Cj4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiArLyogeyBkZy1vcHRpb25zICItbWFy Y2g9cnY2NGdjIC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0KPiA+ICsNCj4gPiArI2luY2x1ZGUgInJp c2N2X3ZlY3Rvci5oIg0KPiA+ICsNCj4gPiArdmZsb2F0NjRtMV90DQo+ID4gK19fYXR0cmlidXRl X18oKHRhcmdldCgiYXJjaD0renZlNjR4IikpKQ0KPiA+ICt0ZXN0XzEgKHZmbG9hdDY0bTFfdCBh LCB2ZmxvYXQ2NG0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ICt7DQo+ID4gKyAgcmV0dXJuIF9fcmlz Y3ZfdmZhZGRfdnZfZjY0bTEgKGEsIGIsIHZsKTsNCj4gPiArfQ0KPiA+ICsNCj4gPiArLyogeyBk Zy1lcnJvciAicmV0dXJuIHR5cGUgJ3ZmbG9hdDY0bTFfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBv ciB2IElTQSBleHRlbnNpb24iICIiIHsgdGFyZ2V0IHsgInJpc2N2Ki0qLSoiIH0gfSAwIH0gKi8N Cj4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0yNy5jIGIvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNp Yy0yNy5jDQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwMDAwMC4u ODYxMDAwMGI0NzQNCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNp Yy0yNy5jDQo+ID4gQEAgLTAsMCArMSwxMyBAQA0KPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAq Lw0KPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8zIiB9 ICovDQo+ID4gKw0KPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gKw0KPiA+ICt2 ZmxvYXQ2NG0xX3QNCj4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmU2NGYiKSkp DQo+ID4gK3Rlc3RfMSAodmZsb2F0NjRtMV90IGEsIHZmbG9hdDY0bTFfdCBiLCBzaXplX3Qgdmwp DQo+ID4gK3sNCj4gPiArICByZXR1cm4gX19yaXNjdl92ZmFkZF92dl9mNjRtMSAoYSwgYiwgdmwp Ow0KPiA+ICt9DQo+ID4gKw0KPiA+ICsvKiB7IGRnLWVycm9yICJyZXR1cm4gdHlwZSAndmZsb2F0 NjRtMV90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbiIgIiIgeyB0YXJn ZXQgeyAicmlzY3YqLSotKiIgfSB9IDAgfSAqLw0KPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50 cmluc2ljLTI4LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFy Z2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTI4LmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEw MDY0NA0KPiA+IGluZGV4IDAwMDAwMDAwMDAwLi43ZWFhNmFkYWI4Mg0KPiA+IC0tLSAvZGV2L251 bGwNCj4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFy Z2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTI4LmMNCj4gPiBAQCAtMCwwICsxLDEzIEBA DQo+ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1h cmNoPXJ2NjRnYyAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiArDQo+ID4gKyNpbmNsdWRlICJy aXNjdl92ZWN0b3IuaCINCj4gPiArDQo+ID4gK3ZmbG9hdDE2bTFfdA0KPiA+ICtfX2F0dHJpYnV0 ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTY0ZiIpKSkNCj4gPiArdGVzdF8xICh2ZmxvYXQxNm0xX3Qg YSwgdmZsb2F0MTZtMV90IGIsIHNpemVfdCB2bCkNCj4gPiArew0KPiA+ICsgIHJldHVybiBfX3Jp c2N2X3ZmYWRkX3Z2X2YxNm0xIChhLCBiLCB2bCk7DQo+ID4gK30NCj4gPiArDQo+ID4gKy8qIHsg ZGctZXJyb3IgInJldHVybiB0eXBlICd2ZmxvYXQxNm0xX3QnIHJlcXVpcmVzIHRoZSB6dmZobWlu IG9yIHp2ZmggSVNBIGV4dGVuc2lvbiIgIiIgeyB0YXJnZXQgeyAicmlzY3YqLSotKiIgfSB9IDAg fSAqLw0KPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTI5LmMgYi9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50 cmluc2ljLTI5LmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAw MDAwLi5lYjc0ZTMzMjk5Zg0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50 cmluc2ljLTI5LmMNCj4gPiBAQCAtMCwwICsxLDEzIEBADQo+ID4gKy8qIHsgZGctZG8gY29tcGls ZSB9ICovDQo+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnYyAtbWFiaT1scDY0ZCAt TzMiIH0gKi8NCj4gPiArDQo+ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiArDQo+ ID4gK3ZmbG9hdDE2bTFfdA0KPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTY0 ZCIpKSkNCj4gPiArdGVzdF8xICh2ZmxvYXQxNm0xX3QgYSwgdmZsb2F0MTZtMV90IGIsIHNpemVf dCB2bCkNCj4gPiArew0KPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZmYWRkX3Z2X2YxNm0xIChhLCBi LCB2bCk7DQo+ID4gK30NCj4gPiArDQo+ID4gKy8qIHsgZGctZXJyb3IgInJldHVybiB0eXBlICd2 ZmxvYXQxNm0xX3QnIHJlcXVpcmVzIHRoZSB6dmZobWluIG9yIHp2ZmggSVNBIGV4dGVuc2lvbiIg IiIgeyB0YXJnZXQgeyAicmlzY3YqLSotKiIgfSB9IDAgfSAqLw0KPiA+IGRpZmYgLS1naXQgYS9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92 X3dpdGhfaW50cmluc2ljLTMwLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTMwLmMNCj4gPiBuZXcgZmls ZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAwMDAwLi5mNjhiNDYyMmVlNw0KPiA+IC0t LSAvZGV2L251bGwNCj4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTMwLmMNCj4gPiBAQCAtMCww ICsxLDEyIEBADQo+ID4gKy8qIFRlc3QgdGhhdCB3ZSBkbyBub3QgaGF2ZSBlcnJvciB3aGVuIGNv bXBpbGUgKi8NCj4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiArLyogeyBkZy1vcHRp b25zICItbWFyY2g9cnY2NGdjX3p2ZTMyeCAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiArDQo+ ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiArDQo+ID4gK3ZmbG9hdDMybTFfdA0K PiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3YiKSkpDQo+ID4gK3Rlc3RfMSAodmZs b2F0MzJtMV90IGEsIHZmbG9hdDMybTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gK3sNCj4gPiArICBy ZXR1cm4gX19yaXNjdl92ZmFkZF92dl9mMzJtMSAoYSwgYiwgdmwpOw0KPiA+ICt9DQo+ID4gZGlm ZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRf YXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzEuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdl dC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzEuYw0K PiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMDAwMDAuLjJmMTQ2Y2Rh MmRkDQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdl dC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzEuYw0K PiA+IEBAIC0wLDAgKzEsMTIgQEANCj4gPiArLyogVGVzdCB0aGF0IHdlIGRvIG5vdCBoYXZlIGVy cm9yIHdoZW4gY29tcGlsZSAqLw0KPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ICsv KiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2NfenZlMzJ4IC1tYWJpPWxwNjRkIC1PMyIgfSAq Lw0KPiA+ICsNCj4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ICsNCj4gPiArdmlu dDY0bTFfdA0KPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3YiKSkpDQo+ID4gK3Rl c3RfMSAodmludDY0bTFfdCBhLCB2aW50NjRtMV90IGIsIHNpemVfdCB2bCkNCj4gPiArew0KPiA+ ICsgIHJldHVybiBfX3Jpc2N2X3ZhZGRfdnZfaTY0bTEgKGEsIGIsIHZsKTsNCj4gPiArfQ0KPiA+ IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFy Z2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTMyLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTMy LmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAwMDAwLi43Mzdi NWIwMGQ3Mw0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTMy LmMNCj4gPiBAQCAtMCwwICsxLDEyIEBADQo+ID4gKy8qIFRlc3QgdGhhdCB3ZSBkbyBub3QgaGF2 ZSBlcnJvciB3aGVuIGNvbXBpbGUgKi8NCj4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4g PiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjX3p2ZTMyeCAtbWFiaT1scDY0ZCAtTzMi IH0gKi8NCj4gPiArDQo+ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiArDQo+ID4g K3ZmbG9hdDY0bTFfdA0KPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3YiKSkpDQo+ ID4gK3Rlc3RfMSAodmZsb2F0NjRtMV90IGEsIHZmbG9hdDY0bTFfdCBiLCBzaXplX3QgdmwpDQo+ ID4gK3sNCj4gPiArICByZXR1cm4gX19yaXNjdl92ZmFkZF92dl9mNjRtMSAoYSwgYiwgdmwpOw0K PiA+ICt9DQo+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzMuYyBiL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9p bnRyaW5zaWMtMzMuYw0KPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAw MDAwMDAuLjU1OWU5MGU4N2Y0DQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9p bnRyaW5zaWMtMzMuYw0KPiA+IEBAIC0wLDAgKzEsMTIgQEANCj4gPiArLyogVGVzdCB0aGF0IHdl IGRvIG5vdCBoYXZlIGVycm9yIHdoZW4gY29tcGlsZSAqLw0KPiA+ICsvKiB7IGRnLWRvIGNvbXBp bGUgfSAqLw0KPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2NfenZlMzJ4IC1tYWJp PWxwNjRkIC1PMyIgfSAqLw0KPiA+ICsNCj4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0K PiA+ICsNCj4gPiArdmZsb2F0MTZtMV90DQo+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJj aD0renZmaCIpKSkNCj4gPiArdGVzdF8xICh2ZmxvYXQxNm0xX3QgYSwgdmZsb2F0MTZtMV90IGIs IHNpemVfdCB2bCkNCj4gPiArew0KPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZmYWRkX3Z2X2YxNm0x IChhLCBiLCB2bCk7DQo+ID4gK30NCj4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0z NC5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRy aWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zNC5jDQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4g PiBpbmRleCAwMDAwMDAwMDAwMC4uOTFlZTUxMGM3N2INCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4g KysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRy aWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zNC5jDQo+ID4gQEAgLTAsMCArMSwxMiBAQA0KPiA+ICsv KiBUZXN0IHRoYXQgd2UgZG8gbm90IGhhdmUgZXJyb3Igd2hlbiBjb21waWxlICovDQo+ID4gKy8q IHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRn Y196dmUzMmYgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ID4gKw0KPiA+ICsjaW5jbHVkZSAicmlz Y3ZfdmVjdG9yLmgiDQo+ID4gKw0KPiA+ICt2aW50NjRtMV90DQo+ID4gK19fYXR0cmlidXRlX18o KHRhcmdldCgiYXJjaD0rdiIpKSkNCj4gPiArdGVzdF8xICh2aW50NjRtMV90IGEsIHZpbnQ2NG0x X3QgYiwgc2l6ZV90IHZsKQ0KPiA+ICt7DQo+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmFkZF92dl9p NjRtMSAoYSwgYiwgdmwpOw0KPiA+ICt9DQo+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5z aWMtMzUuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRf YXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzUuYw0KPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0 DQo+ID4gaW5kZXggMDAwMDAwMDAwMDAuLmVjMTg0Y2ZmNWRjDQo+ID4gLS0tIC9kZXYvbnVsbA0K PiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRf YXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzUuYw0KPiA+IEBAIC0wLDAgKzEsMTIgQEANCj4g PiArLyogVGVzdCB0aGF0IHdlIGRvIG5vdCBoYXZlIGVycm9yIHdoZW4gY29tcGlsZSAqLw0KPiA+ ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1y djY0Z2NfenZlMzJmIC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0KPiA+ICsNCj4gPiArI2luY2x1ZGUg InJpc2N2X3ZlY3Rvci5oIg0KPiA+ICsNCj4gPiArdmludDY0bTFfdA0KPiA+ICtfX2F0dHJpYnV0 ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTY0eCIpKSkNCj4gPiArdGVzdF8xICh2aW50NjRtMV90IGEs IHZpbnQ2NG0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ICt7DQo+ID4gKyAgcmV0dXJuIF9fcmlzY3Zf dmFkZF92dl9pNjRtMSAoYSwgYiwgdmwpOw0KPiA+ICt9DQo+ID4gZGlmZiAtLWdpdCBhL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0 aF9pbnRyaW5zaWMtMzYuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzYuYw0KPiA+IG5ldyBmaWxlIG1v ZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMDAwMDAuLmEzN2Y2N2M1MzIwDQo+ID4gLS0tIC9k ZXYvbnVsbA0KPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzYuYw0KPiA+IEBAIC0wLDAgKzEs MTIgQEANCj4gPiArLyogVGVzdCB0aGF0IHdlIGRvIG5vdCBoYXZlIGVycm9yIHdoZW4gY29tcGls ZSAqLw0KPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ICsvKiB7IGRnLW9wdGlvbnMg Ii1tYXJjaD1ydjY0Z2NfenZlMzJmIC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0KPiA+ICsNCj4gPiAr I2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ICsNCj4gPiArdmZsb2F0NjRtMV90DQo+ID4g K19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZlNjRkIikpKQ0KPiA+ICt0ZXN0XzEgKHZm bG9hdDY0bTFfdCBhLCB2ZmxvYXQ2NG0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ICt7DQo+ID4gKyAg cmV0dXJuIF9fcmlzY3ZfdmZhZGRfdnZfZjY0bTEgKGEsIGIsIHZsKTsNCj4gPiArfQ0KPiA+IGRp ZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0 X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTM3LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTM3LmMN Cj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAwMDAwLi4zZDYyMDI3 ODQ4ZQ0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTM3LmMN Cj4gPiBAQCAtMCwwICsxLDEyIEBADQo+ID4gKy8qIFRlc3QgdGhhdCB3ZSBkbyBub3QgaGF2ZSBl cnJvciB3aGVuIGNvbXBpbGUgKi8NCj4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiAr LyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjX3p2ZTMyZiAtbWFiaT1scDY0ZCAtTzMiIH0g Ki8NCj4gPiArDQo+ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiArDQo+ID4gK3Zm bG9hdDE2bTFfdA0KPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZmgiKSkpDQo+ ID4gK3Rlc3RfMSAodmZsb2F0MTZtMV90IGEsIHZmbG9hdDE2bTFfdCBiLCBzaXplX3QgdmwpDQo+ ID4gK3sNCj4gPiArICByZXR1cm4gX19yaXNjdl92ZmFkZF92dl9mMTZtMSAoYSwgYiwgdmwpOw0K PiA+ICt9DQo+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtMzguYyBiL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9p bnRyaW5zaWMtMzguYw0KPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAw MDAwMDAuLjliOGE5Y2JhZmNiDQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9p bnRyaW5zaWMtMzguYw0KPiA+IEBAIC0wLDAgKzEsMTIgQEANCj4gPiArLyogVGVzdCB0aGF0IHdl IGRvIG5vdCBoYXZlIGVycm9yIHdoZW4gY29tcGlsZSAqLw0KPiA+ICsvKiB7IGRnLWRvIGNvbXBp bGUgfSAqLw0KPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2NfenZlNjRkIC1tYWJp PWxwNjRkIC1PMyIgfSAqLw0KPiA+ICsNCj4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0K PiA+ICsNCj4gPiArdmZsb2F0MzJtMV90DQo+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJj aD0rdiIpKSkNCj4gPiArdGVzdF8xICh2ZmxvYXQzMm0xX3QgYSwgdmZsb2F0MzJtMV90IGIsIHNp emVfdCB2bCkNCj4gPiArew0KPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZmYWRkX3Z2X2YzMm0xIChh LCBiLCB2bCk7DQo+ID4gK30NCj4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy0zOS5j IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy0zOS5jDQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBp bmRleCAwMDAwMDAwMDAwMC4uNjc0NjlhMThjZDkNCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysr IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1 dGVfdl93aXRoX2ludHJpbnNpYy0zOS5jDQo+ID4gQEAgLTAsMCArMSwxMiBAQA0KPiA+ICsvKiBU ZXN0IHRoYXQgd2UgZG8gbm90IGhhdmUgZXJyb3Igd2hlbiBjb21waWxlICovDQo+ID4gKy8qIHsg ZGctZG8gY29tcGlsZSB9ICovDQo+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnY196 dmU2NGQgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ID4gKw0KPiA+ICsjaW5jbHVkZSAicmlzY3Zf dmVjdG9yLmgiDQo+ID4gKw0KPiA+ICt2ZmxvYXQzMm0xX3QNCj4gPiArX19hdHRyaWJ1dGVfXygo dGFyZ2V0KCJhcmNoPSt6dmU2NGYiKSkpDQo+ID4gK3Rlc3RfMSAodmZsb2F0MzJtMV90IGEsIHZm bG9hdDMybTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gK3sNCj4gPiArICByZXR1cm4gX19yaXNjdl92 ZmFkZF92dl9mMzJtMSAoYSwgYiwgdmwpOw0KPiA+ICt9DQo+ID4gZGlmZiAtLWdpdCBhL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0 aF9pbnRyaW5zaWMtNDAuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDAuYw0KPiA+IG5ldyBmaWxlIG1v ZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMDAwMDAuLmNlODkzOTFlNGU3DQo+ID4gLS0tIC9k ZXYvbnVsbA0KPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFz ZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDAuYw0KPiA+IEBAIC0wLDAgKzEs MTIgQEANCj4gPiArLyogVGVzdCB0aGF0IHdlIGRvIG5vdCBoYXZlIGVycm9yIHdoZW4gY29tcGls ZSAqLw0KPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ICsvKiB7IGRnLW9wdGlvbnMg Ii1tYXJjaD1ydjY0Z2NfenZlNjRkIC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0KPiA+ICsNCj4gPiAr I2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ICsNCj4gPiArdmZsb2F0NjRtMV90DQo+ID4g K19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0rdiIpKSkNCj4gPiArdGVzdF8xICh2ZmxvYXQ2 NG0xX3QgYSwgdmZsb2F0NjRtMV90IGIsIHNpemVfdCB2bCkNCj4gPiArew0KPiA+ICsgIHJldHVy biBfX3Jpc2N2X3ZmYWRkX3Z2X2Y2NG0xIChhLCBiLCB2bCk7DQo+ID4gK30NCj4gPiBkaWZmIC0t Z2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRy aWJ1dGVfdl93aXRoX2ludHJpbnNpYy00MS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00MS5jDQo+ID4g bmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwMDAwMC4uODgzNmNiMTQ3MDMN Cj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00MS5jDQo+ID4g QEAgLTAsMCArMSwxMiBAQA0KPiA+ICsvKiBUZXN0IHRoYXQgd2UgZG8gbm90IGhhdmUgZXJyb3Ig d2hlbiBjb21waWxlICovDQo+ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gKy8qIHsg ZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnY196dmU2NGQgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ ID4gKw0KPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gKw0KPiA+ICt2ZmxvYXQx Nm0xX3QNCj4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmZoIikpKQ0KPiA+ICt0 ZXN0XzEgKHZmbG9hdDE2bTFfdCBhLCB2ZmxvYXQxNm0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ICt7 DQo+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZhZGRfdnZfZjE2bTEgKGEsIGIsIHZsKTsNCj4gPiAr fQ0KPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQyLmMgYi9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmlu c2ljLTQyLmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAwMDAw Li41N2U1NDJkYTFiOA0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmlu c2ljLTQyLmMNCj4gPiBAQCAtMCwwICsxLDEyIEBADQo+ID4gKy8qIFRlc3QgdGhhdCB3ZSBkbyBu b3QgaGF2ZSBlcnJvciB3aGVuIGNvbXBpbGUgKi8NCj4gPiArLyogeyBkZy1kbyBjb21waWxlIH0g Ki8NCj4gPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjdl96dmZoIC1tYWJpPWxwNjRk IC1PMyIgfSAqLw0KPiA+ICsNCj4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ICsN Cj4gPiArdmZsb2F0MTZtMV90DQo+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZl MzJ4IikpKQ0KPiA+ICt0ZXN0XzEgKHZmbG9hdDE2bTFfdCBhLCB2ZmxvYXQxNm0xX3QgYiwgc2l6 ZV90IHZsKQ0KPiA+ICt7DQo+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZhZGRfdnZfZjE2bTEgKGEs IGIsIHZsKTsNCj4gPiArfQ0KPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQzLmMg Yi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0 ZV92X3dpdGhfaW50cmluc2ljLTQzLmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGlu ZGV4IDAwMDAwMDAwMDAwLi43ZmI2YjIwYTMyZQ0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysg Yi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0 ZV92X3dpdGhfaW50cmluc2ljLTQzLmMNCj4gPiBAQCAtMCwwICsxLDEyIEBADQo+ID4gKy8qIFRl c3QgdGhhdCB3ZSBkbyBub3QgaGF2ZSBlcnJvciB3aGVuIGNvbXBpbGUgKi8NCj4gPiArLyogeyBk Zy1kbyBjb21waWxlIH0gKi8NCj4gPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjdiAt bWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiArDQo+ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3Iu aCINCj4gPiArDQo+ID4gK3ZmbG9hdDMybTFfdA0KPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQo ImFyY2g9K3p2ZTMyeCIpKSkNCj4gPiArdGVzdF8xICh2ZmxvYXQzMm0xX3QgYSwgdmZsb2F0MzJt MV90IGIsIHNpemVfdCB2bCkNCj4gPiArew0KPiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZmYWRkX3Z2 X2YzMm0xIChhLCBiLCB2bCk7DQo+ID4gK30NCj4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJp bnNpYy00NC5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rhcmdl dF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00NC5jDQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2 NDQNCj4gPiBpbmRleCAwMDAwMDAwMDAwMC4uY2U2Zjk3ZDg1ODQNCj4gPiAtLS0gL2Rldi9udWxs DQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rhcmdl dF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00NC5jDQo+ID4gQEAgLTAsMCArMSwxMiBAQA0K PiA+ICsvKiBUZXN0IHRoYXQgd2UgZG8gbm90IGhhdmUgZXJyb3Igd2hlbiBjb21waWxlICovDQo+ ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNo PXJ2NjRnY3YgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ID4gKw0KPiA+ICsjaW5jbHVkZSAicmlz Y3ZfdmVjdG9yLmgiDQo+ID4gKw0KPiA+ICt2ZmxvYXQ2NG0xX3QNCj4gPiArX19hdHRyaWJ1dGVf XygodGFyZ2V0KCJhcmNoPSt6dmUzMngiKSkpDQo+ID4gK3Rlc3RfMSAodmZsb2F0NjRtMV90IGEs IHZmbG9hdDY0bTFfdCBiLCBzaXplX3QgdmwpDQo+ID4gK3sNCj4gPiArICByZXR1cm4gX19yaXNj dl92ZmFkZF92dl9mNjRtMSAoYSwgYiwgdmwpOw0KPiA+ICt9DQo+ID4gZGlmZiAtLWdpdCBhL2dj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zf d2l0aF9pbnRyaW5zaWMtNDUuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDUuYw0KPiA+IG5ldyBmaWxl IG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMDAwMDAuLmRiZjkyYTNkZjI0DQo+ID4gLS0t IC9kZXYvbnVsbA0KPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDUuYw0KPiA+IEBAIC0wLDAg KzEsMTIgQEANCj4gPiArLyogVGVzdCB0aGF0IHdlIGRvIG5vdCBoYXZlIGVycm9yIHdoZW4gY29t cGlsZSAqLw0KPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ICsvKiB7IGRnLW9wdGlv bnMgIi1tYXJjaD1ydjY0Z2N2IC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0KPiA+ICsNCj4gPiArI2lu Y2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ICsNCj4gPiArdmZsb2F0NjRtMV90DQo+ID4gK19f YXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZlNjR4IikpKQ0KPiA+ICt0ZXN0XzEgKHZmbG9h dDY0bTFfdCBhLCB2ZmxvYXQ2NG0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ICt7DQo+ID4gKyAgcmV0 dXJuIF9fcmlzY3ZfdmZhZGRfdnZfZjY0bTEgKGEsIGIsIHZsKTsNCj4gPiArfQ0KPiA+IGRpZmYg LS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0 dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQ2LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQ2LmMNCj4g PiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAwMDAwLi42ZDJlNGUyN2Jm NA0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTQ2LmMNCj4g PiBAQCAtMCwwICsxLDEyIEBADQo+ID4gKy8qIFRlc3QgdGhhdCB3ZSBkbyBub3QgaGF2ZSBlcnJv ciB3aGVuIGNvbXBpbGUgKi8NCj4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiArLyog eyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjdiAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiAr DQo+ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiArDQo+ID4gK3ZmbG9hdDMybTFf dA0KPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2ZTY0eCIpKSkNCj4gPiArdGVz dF8xICh2ZmxvYXQzMm0xX3QgYSwgdmZsb2F0MzJtMV90IGIsIHNpemVfdCB2bCkNCj4gPiArew0K PiA+ICsgIHJldHVybiBfX3Jpc2N2X3ZmYWRkX3Z2X2YzMm0xIChhLCBiLCB2bCk7DQo+ID4gK30N Cj4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00Ny5jIGIvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNp Yy00Ny5jDQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwMDAwMC4u OTRiYmNiMDVlNGQNCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNp Yy00Ny5jDQo+ID4gQEAgLTAsMCArMSwxMiBAQA0KPiA+ICsvKiBUZXN0IHRoYXQgd2UgZG8gbm90 IGhhdmUgZXJyb3Igd2hlbiBjb21waWxlICovDQo+ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICov DQo+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnYyAtbWFiaT1scDY0ZCAtTzMiIH0g Ki8NCj4gPiArDQo+ID4gKyNpbmNsdWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiArDQo+ID4gK3Z1 aW50MzJtMV90DQo+ID4gK19fYXR0cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZiYiIpKSkNCj4g PiArdGVzdF8xICh2dWludDMybTFfdCBhLCB2dWludDMybTFfdCBiLCBzaXplX3QgdmwpDQo+ID4g K3sNCj4gPiArICByZXR1cm4gX19yaXNjdl92YW5kbl92dl91MzJtMSAoYSwgYiwgdmwpOw0KPiA+ ICt9DQo+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNDguYyBiL2djYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRy aW5zaWMtNDguYw0KPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMDAw MDAuLjA1NGI3NjMwZmE5DQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2djYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRy aW5zaWMtNDguYw0KPiA+IEBAIC0wLDAgKzEsMTIgQEANCj4gPiArLyogVGVzdCB0aGF0IHdlIGRv IG5vdCBoYXZlIGVycm9yIHdoZW4gY29tcGlsZSAqLw0KPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUg fSAqLw0KPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8z IiB9ICovDQo+ID4gKw0KPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gKw0KPiA+ ICt2dWludDMybTFfdA0KPiA+ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2a25oYSIp KSkNCj4gPiArdGVzdF8xICh2dWludDMybTFfdCBhLCB2dWludDMybTFfdCBiLCB2dWludDMybTFf dCBjLCBzaXplX3QgdmwpDQo+ID4gK3sNCj4gPiArICByZXR1cm4gX19yaXNjdl92c2hhMmNoX3Z2 X3UzMm0xIChhLCBiLCBjLCB2bCk7DQo+ID4gK30NCj4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2lu dHJpbnNpYy00OS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rh cmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00OS5jDQo+ID4gbmV3IGZpbGUgbW9kZSAx MDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwMDAwMC4uYjJlNjY1OGY0ZDMNCj4gPiAtLS0gL2Rldi9u dWxsDQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3Rh cmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy00OS5jDQo+ID4gQEAgLTAsMCArMSwxMiBA QA0KPiA+ICsvKiBUZXN0IHRoYXQgd2UgZG8gbm90IGhhdmUgZXJyb3Igd2hlbiBjb21waWxlICov DQo+ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gKy8qIHsgZGctb3B0aW9ucyAiLW1h cmNoPXJ2NjRnYyAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiArDQo+ID4gKyNpbmNsdWRlICJy aXNjdl92ZWN0b3IuaCINCj4gPiArDQo+ID4gK3Z1aW50MzJtMl90DQo+ID4gK19fYXR0cmlidXRl X18oKHRhcmdldCgiYXJjaD0renZrc2giKSkpDQo+ID4gK3Rlc3RfMSAodnVpbnQzMm0yX3QgYSwg dnVpbnQzMm0yX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ICt7DQo+ID4gKyAgcmV0dXJuIF9fcmlzY3Zf dnNtM21lX3Z2X3UzMm0yIChhLCBiLCB2bCk7DQo+ID4gK30NCj4gPiBkaWZmIC0tZ2l0IGEvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93 aXRoX2ludHJpbnNpYy01MC5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9i YXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy01MC5jDQo+ID4gbmV3IGZpbGUg bW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwMDAwMC4uODU3NGNkMDQ5Y2YNCj4gPiAtLS0g L2Rldi9udWxsDQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9i YXNlL3RhcmdldF9hdHRyaWJ1dGVfdl93aXRoX2ludHJpbnNpYy01MC5jDQo+ID4gQEAgLTAsMCAr MSwxMiBAQA0KPiA+ICsvKiBUZXN0IHRoYXQgd2UgZG8gbm90IGhhdmUgZXJyb3Igd2hlbiBjb21w aWxlICovDQo+ID4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ID4gKy8qIHsgZGctb3B0aW9u cyAiLW1hcmNoPXJ2NjRnYyAtbWFiaT1scDY0ZCAtTzMiIH0gKi8NCj4gPiArDQo+ID4gKyNpbmNs dWRlICJyaXNjdl92ZWN0b3IuaCINCj4gPiArDQo+ID4gK3Z1aW50MzJtMV90DQo+ID4gK19fYXR0 cmlidXRlX18oKHRhcmdldCgiYXJjaD0renZrbmVkIikpKQ0KPiA+ICt0ZXN0XzEgKHZ1aW50MzJt MV90IGEsIHZ1aW50MzJtMV90IGIsIHNpemVfdCB2bCkNCj4gPiArew0KPiA+ICsgIHJldHVybiBf X3Jpc2N2X3ZhZXNkbV92dl91MzJtMSAoYSwgYiwgdmwpOw0KPiA+ICt9DQo+ID4gZGlmZiAtLWdp dCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmli dXRlX3Zfd2l0aF9pbnRyaW5zaWMtNTEuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNj di9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNTEuYw0KPiA+IG5l dyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMDAwMDAuLmUyN2I0ZDVmYmIzDQo+ ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNj di9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMtNTEuYw0KPiA+IEBA IC0wLDAgKzEsMTIgQEANCj4gPiArLyogVGVzdCB0aGF0IHdlIGRvIG5vdCBoYXZlIGVycm9yIHdo ZW4gY29tcGlsZSAqLw0KPiA+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ICsvKiB7IGRn LW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2MgLW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ID4gKw0KPiA+ ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4gKw0KPiA+ICt2dWludDMybTFfdA0KPiA+ ICtfX2F0dHJpYnV0ZV9fKCh0YXJnZXQoImFyY2g9K3p2a2ciKSkpDQo+ID4gK3Rlc3RfMSAodnVp bnQzMm0xX3QgYSwgdnVpbnQzMm0xX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ICt7DQo+ID4gKyAgcmV0 dXJuIF9fcmlzY3ZfdmdtdWxfdnZfdTMybTEgKGEsIGIsIHZsKTsNCj4gPiArfQ0KPiA+IGRpZmYg LS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0 dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTUyLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTUyLmMNCj4g PiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAwMDAwLi4yMjEzYzZmZTM1 ZA0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTUyLmMNCj4g PiBAQCAtMCwwICsxLDEyIEBADQo+ID4gKy8qIFRlc3QgdGhhdCB3ZSBkbyBub3QgaGF2ZSBlcnJv ciB3aGVuIGNvbXBpbGUgKi8NCj4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gPiArLyog eyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjIC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0KPiA+ICsN Cj4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ICsNCj4gPiArdnVpbnQzMm0yX3QN Cj4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmtzZWQiKSkpDQo+ID4gK3Rlc3Rf MSAodnVpbnQzMm0yX3QgYSwgdnVpbnQzMm0yX3QgYiwgc2l6ZV90IHZsKQ0KPiA+ICt7DQo+ID4g KyAgcmV0dXJuIF9fcmlzY3ZfdnNtNHJfdnZfdTMybTIgKGEsIGIsIHZsKTsNCj4gPiArfQ0KPiA+ IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFy Z2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTUzLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTUz LmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAwMDAwLi42Njkw MWNjNzJhZA0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJpYnV0ZV92X3dpdGhfaW50cmluc2ljLTUz LmMNCj4gPiBAQCAtMCwwICsxLDEyIEBADQo+ID4gKy8qIFRlc3QgdGhhdCB3ZSBkbyBub3QgaGF2 ZSBlcnJvciB3aGVuIGNvbXBpbGUgKi8NCj4gPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4g PiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjIC1tYWJpPWxwNjRkIC1PMyIgfSAqLw0K PiA+ICsNCj4gPiArI2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+ICsNCj4gPiArdnVpbnQz Mm0xX3QNCj4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0KCJhcmNoPSt6dmtuaGIiKSkpDQo+ID4g K3Rlc3RfMSAodnVpbnQzMm0xX3QgYSwgdnVpbnQzMm0xX3QgYiwgdnVpbnQzMm0xX3QgYywgc2l6 ZV90IHZsKQ0KPiA+ICt7DQo+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdnNoYTJjaF92dl91MzJtMSAo YSwgYiwgYywgdmwpOw0KPiA+ICt9DQo+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9yaXNjdi9ydnYvYmFzZS90YXJnZXRfYXR0cmlidXRlX3Zfd2l0aF9pbnRyaW5zaWMt OS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3RhcmdldF9hdHRy aWJ1dGVfdl93aXRoX2ludHJpbnNpYy05LmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+ IGluZGV4IDAwMDAwMDAwMDAwLi4wNzY0ZjQwM2I4OQ0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiAr KysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdGFyZ2V0X2F0dHJp YnV0ZV92X3dpdGhfaW50cmluc2ljLTkuYw0KPiA+IEBAIC0wLDAgKzEsMTIgQEANCj4gPiArLyog VGVzdCB0aGF0IHdlIGRvIG5vdCBoYXZlIGVycm9yIHdoZW4gY29tcGlsZSAqLw0KPiA+ICsvKiB7 IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiA+ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2Mg LW1hYmk9bHA2NGQgLU8zIiB9ICovDQo+ID4gKw0KPiA+ICsjaW5jbHVkZSAicmlzY3ZfdmVjdG9y LmgiDQo+ID4gKw0KPiA+ICt2ZmxvYXQzMm0xX3QNCj4gPiArX19hdHRyaWJ1dGVfXygodGFyZ2V0 KCJhcmNoPSt2IikpKQ0KPiA+ICt0ZXN0XzEgKHZmbG9hdDMybTFfdCBhLCB2ZmxvYXQzMm0xX3Qg Yiwgc2l6ZV90IHZsKQ0KPiA+ICt7DQo+ID4gKyAgcmV0dXJuIF9fcmlzY3ZfdmZhZGRfdnZfZjMy bTEgKGEsIGIsIHZsKTsNCj4gPiArfQ0KPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0xMC5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMTAuYw0KPiA+IGluZGV4IGZkYzI4Yzc3NDI2Li42YmI5 NDYwZDZkMiAxMDA2NDQNCj4gPiAtLS0gYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3Yv cnZ2L2Jhc2UvdXNlci0xMC5jDQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9iYXNlL3VzZXItMTAuYw0KPiA+IEBAIC0xOTMsMTQgKzE5MywzMSBAQCB2b2lkIGZf dmZsb2F0MzJtMngyX3QgKCkge3ZmbG9hdDMybTJ4Ml90IHQ7fQ0KPiA+ICB2b2lkIGZfdmZsb2F0 MzJtMngzX3QgKCkge3ZmbG9hdDMybTJ4M190IHQ7fQ0KPiA+ICB2b2lkIGZfdmZsb2F0MzJtMng0 X3QgKCkge3ZmbG9hdDMybTJ4NF90IHQ7fQ0KPiA+ICB2b2lkIGZfdmZsb2F0MzJtNHgyX3QgKCkg e3ZmbG9hdDMybTR4Ml90IHQ7fQ0KPiA+IC12b2lkIGZfdmZsb2F0NjRtMXgyX3QgKCkge3ZmbG9h dDY0bTF4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRt MXgyX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQ2NG0xeDNfdCAoKSB7dmZsb2F0NjRtMXgz X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDNfdCd9 IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4NF90ICgpIHt2ZmxvYXQ2NG0xeDRfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4NF90J30gfSAqLw0K PiA+IC12b2lkIGZfdmZsb2F0NjRtMXg1X3QgKCkge3ZmbG9hdDY0bTF4NV90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXg1X3QnfSB9ICovDQo+ID4gLXZv aWQgZl92ZmxvYXQ2NG0xeDZfdCAoKSB7dmZsb2F0NjRtMXg2X3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDZfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Zm bG9hdDY0bTF4N190ICgpIHt2ZmxvYXQ2NG0xeDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4N190J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0NjRt MXg4X3QgKCkge3ZmbG9hdDY0bTF4OF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUg bmFtZSAndmZsb2F0NjRtMXg4X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQ2NG0yeDJfdCAo KSB7dmZsb2F0NjRtMngyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 ZmxvYXQ2NG0yeDJfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDY0bTJ4M190ICgpIHt2Zmxv YXQ2NG0yeDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0 bTJ4M190J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0NjRtMng0X3QgKCkge3ZmbG9hdDY0bTJ4 NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMng0X3Qn fSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQ2NG00eDJfdCAoKSB7dmZsb2F0NjRtNHgyX3QgdDt9 IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG00eDJfdCd9IH0gKi8N Cj4gPiArDQo+ID4gKy8qIFRvIHN1cHBvcnQgdGFyZ2V0IGF0dHJpYnV0ZSwgdGhlIHZmbG9hdCpt KngqX3QgbmVlZCB0byBiZSByZWdpc3RlcmVkDQo+ID4gKyAgIGluIGFkdmFuY2UuICBXZSBhZGQg dHlwZSBhbmQgYXJncy9yZXR1cm4gdmFsdWUgY2hlY2sgZHVyaW5nIHRoZQ0KPiA+ICsgICBzZXQg Y3VycmVudCBmdW5jdGlvbiBidXQgY2Fubm90IGNvdmVyIGJlbG93IGNhc2VzLiAgSXQgaXMgdGhl IHNhbWUNCj4gPiArICAgYmVoYXZpb3IgY29tcGFyZWQgdG8gYWFyY2g2NCBzdmUuICAqLw0KPiA+ ICt2b2lkIGZfdmZsb2F0NjRtMXgyX3QgKCkge3ZmbG9hdDY0bTF4Ml90IHQ7fQ0KPiA+ICt2b2lk IGZfdmZsb2F0NjRtMXgzX3QgKCkge3ZmbG9hdDY0bTF4M190IHQ7fQ0KPiA+ICt2b2lkIGZfdmZs b2F0NjRtMXg0X3QgKCkge3ZmbG9hdDY0bTF4NF90IHQ7fQ0KPiA+ICt2b2lkIGZfdmZsb2F0NjRt MXg1X3QgKCkge3ZmbG9hdDY0bTF4NV90IHQ7fQ0KPiA+ICt2b2lkIGZfdmZsb2F0NjRtMXg2X3Qg KCkge3ZmbG9hdDY0bTF4Nl90IHQ7fQ0KPiA+ICt2b2lkIGZfdmZsb2F0NjRtMXg3X3QgKCkge3Zm bG9hdDY0bTF4N190IHQ7fQ0KPiA+ICt2b2lkIGZfdmZsb2F0NjRtMXg4X3QgKCkge3ZmbG9hdDY0 bTF4OF90IHQ7fQ0KPiA+ICt2b2lkIGZfdmZsb2F0NjRtMngyX3QgKCkge3ZmbG9hdDY0bTJ4Ml90 IHQ7fQ0KPiA+ICt2b2lkIGZfdmZsb2F0NjRtMngzX3QgKCkge3ZmbG9hdDY0bTJ4M190IHQ7fQ0K PiA+ICt2b2lkIGZfdmZsb2F0NjRtMng0X3QgKCkge3ZmbG9hdDY0bTJ4NF90IHQ7fQ0KPiA+ICt2 b2lkIGZfdmZsb2F0NjRtNHgyX3QgKCkge3ZmbG9hdDY0bTR4Ml90IHQ7fQ0KPiA+ICsNCj4gPiAr dm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDJfdCAodmZsb2F0NjRtMXgyX3QgdCkgeyB9IC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4Ml90JyByZXF1aXJlcyB0aGUgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTF4M190 ICh2ZmxvYXQ2NG0xeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZs b2F0NjRtMXgzX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICov DQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXg0X3QgKHZmbG9hdDY0bTF4NF90IHQpIHsgfSAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDRfdCcgcmVxdWlyZXMgdGhl IHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2 NG0xeDVfdCAodmZsb2F0NjRtMXg1X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5 cGUgJ3ZmbG9hdDY0bTF4NV90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lv bn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTF4Nl90ICh2ZmxvYXQ2NG0xeDZfdCB0 KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMXg2X3QnIHJlcXVp cmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2Zf dmZsb2F0NjRtMXg3X3QgKHZmbG9hdDY0bTF4N190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDdfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBl eHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDhfdCAodmZsb2F0NjRt MXg4X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4OF90 JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lk IG5ld19mX3ZmbG9hdDY0bTJ4Ml90ICh2ZmxvYXQ2NG0yeDJfdCB0KSB7IH0gLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMngyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3Ig diBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMngzX3QgKHZm bG9hdDY0bTJ4M190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2 NG0yeDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4g PiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0yeDRfdCAodmZsb2F0NjRtMng0X3QgdCkgeyB9IC8qIHsg ZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTJ4NF90JyByZXF1aXJlcyB0aGUgenZl NjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTR4 Ml90ICh2ZmxvYXQ2NG00eDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dmZsb2F0NjRtNHgyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9 ICovDQo+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS91c2VyLTEyLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2Uv dXNlci0xMi5jDQo+ID4gaW5kZXggMzMyZmY3NjI3YjYuLjJmMmMxNTBlZWIwIDEwMDY0NA0KPiA+ IC0tLSBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTEyLmMN Cj4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0x Mi5jDQo+ID4gQEAgLTMsMjAgKzMsMjAgQEANCj4gPg0KPiA+ICAjaW5jbHVkZSAicmlzY3ZfdmVj dG9yLmgiDQo+ID4NCj4gPiAtdm9pZCBmX3ZpbnQ4bWY4eDJfdCAoKSB7dmludDhtZjh4Ml90IHQ7 fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDhtZjh4Ml90J30gfSAqLw0K PiA+IC12b2lkIGZfdnVpbnQ4bWY4eDJfdCAoKSB7dnVpbnQ4bWY4eDJfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50OG1mOHgyX3QnfSB9ICovDQo+ID4gLXZvaWQg Zl92aW50OG1mOHgzX3QgKCkge3ZpbnQ4bWY4eDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3ZpbnQ4bWY4eDNfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50OG1mOHgz X3QgKCkge3Z1aW50OG1mOHgzX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1l ICd2dWludDhtZjh4M190J30gfSAqLw0KPiA+IC12b2lkIGZfdmludDhtZjh4NF90ICgpIHt2aW50 OG1mOHg0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50OG1mOHg0 X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92dWludDhtZjh4NF90ICgpIHt2dWludDhtZjh4NF90IHQ7 fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ4bWY4eDRfdCd9IH0gKi8N Cj4gPiAtdm9pZCBmX3ZpbnQ4bWY4eDVfdCAoKSB7dmludDhtZjh4NV90IHQ7fSAvKiB7IGRnLWVy cm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDhtZjh4NV90J30gfSAqLw0KPiA+IC12b2lkIGZf dnVpbnQ4bWY4eDVfdCAoKSB7dnVpbnQ4bWY4eDVfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3Z1aW50OG1mOHg1X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50OG1mOHg2 X3QgKCkge3ZpbnQ4bWY4eDZfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUg J3ZpbnQ4bWY4eDZfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50OG1mOHg2X3QgKCkge3Z1aW50 OG1mOHg2X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDhtZjh4 Nl90J30gfSAqLw0KPiA+IC12b2lkIGZfdmludDhtZjh4N190ICgpIHt2aW50OG1mOHg3X3QgdDt9 IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50OG1mOHg3X3QnfSB9ICovDQo+ ID4gLXZvaWQgZl92dWludDhtZjh4N190ICgpIHt2dWludDhtZjh4N190IHQ7fSAvKiB7IGRnLWVy cm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ4bWY4eDdfdCd9IH0gKi8NCj4gPiAtdm9pZCBm X3ZpbnQ4bWY4eDhfdCAoKSB7dmludDhtZjh4OF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3du IHR5cGUgbmFtZSAndmludDhtZjh4OF90J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQ4bWY4eDhf dCAoKSB7dnVpbnQ4bWY4eDhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUg J3Z1aW50OG1mOHg4X3QnfSB9ICovDQo+ID4gK3ZvaWQgZl92aW50OG1mOHgyX3QgKCkge3ZpbnQ4 bWY4eDJfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50OG1mOHgyX3QgKCkge3Z1aW50OG1mOHgyX3Qg dDt9DQo+ID4gK3ZvaWQgZl92aW50OG1mOHgzX3QgKCkge3ZpbnQ4bWY4eDNfdCB0O30NCj4gPiAr dm9pZCBmX3Z1aW50OG1mOHgzX3QgKCkge3Z1aW50OG1mOHgzX3QgdDt9DQo+ID4gK3ZvaWQgZl92 aW50OG1mOHg0X3QgKCkge3ZpbnQ4bWY4eDRfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50OG1mOHg0 X3QgKCkge3Z1aW50OG1mOHg0X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50OG1mOHg1X3QgKCkge3Zp bnQ4bWY4eDVfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50OG1mOHg1X3QgKCkge3Z1aW50OG1mOHg1 X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50OG1mOHg2X3QgKCkge3ZpbnQ4bWY4eDZfdCB0O30NCj4g PiArdm9pZCBmX3Z1aW50OG1mOHg2X3QgKCkge3Z1aW50OG1mOHg2X3QgdDt9DQo+ID4gK3ZvaWQg Zl92aW50OG1mOHg3X3QgKCkge3ZpbnQ4bWY4eDdfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50OG1m OHg3X3QgKCkge3Z1aW50OG1mOHg3X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50OG1mOHg4X3QgKCkg e3ZpbnQ4bWY4eDhfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50OG1mOHg4X3QgKCkge3Z1aW50OG1m OHg4X3QgdDt9DQo+ID4gIHZvaWQgZl92aW50OG1mNHgyX3QgKCkge3ZpbnQ4bWY0eDJfdCB0O30N Cj4gPiAgdm9pZCBmX3Z1aW50OG1mNHgyX3QgKCkge3Z1aW50OG1mNHgyX3QgdDt9DQo+ID4gIHZv aWQgZl92aW50OG1mNHgzX3QgKCkge3ZpbnQ4bWY0eDNfdCB0O30NCj4gPiBAQCAtNjcsMjAgKzY3 LDIwIEBAIHZvaWQgZl92aW50OG0yeDRfdCAoKSB7dmludDhtMng0X3QgdDt9DQo+ID4gIHZvaWQg Zl92dWludDhtMng0X3QgKCkge3Z1aW50OG0yeDRfdCB0O30NCj4gPiAgdm9pZCBmX3ZpbnQ4bTR4 Ml90ICgpIHt2aW50OG00eDJfdCB0O30NCj4gPiAgdm9pZCBmX3Z1aW50OG00eDJfdCAoKSB7dnVp bnQ4bTR4Ml90IHQ7fQ0KPiA+IC12b2lkIGZfdmludDE2bWY0eDJfdCAoKSB7dmludDE2bWY0eDJf dCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQxNm1mNHgyX3QnfSB9 ICovDQo+ID4gLXZvaWQgZl92dWludDE2bWY0eDJfdCAoKSB7dnVpbnQxNm1mNHgyX3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDE2bWY0eDJfdCd9IH0gKi8NCj4g PiAtdm9pZCBmX3ZpbnQxNm1mNHgzX3QgKCkge3ZpbnQxNm1mNHgzX3QgdDt9IC8qIHsgZGctZXJy b3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50MTZtZjR4M190J30gfSAqLw0KPiA+IC12b2lkIGZf dnVpbnQxNm1mNHgzX3QgKCkge3Z1aW50MTZtZjR4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndnVpbnQxNm1mNHgzX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50MTZt ZjR4NF90ICgpIHt2aW50MTZtZjR4NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUg bmFtZSAndmludDE2bWY0eDRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50MTZtZjR4NF90ICgp IHt2dWludDE2bWY0eDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1 aW50MTZtZjR4NF90J30gfSAqLw0KPiA+IC12b2lkIGZfdmludDE2bWY0eDVfdCAoKSB7dmludDE2 bWY0eDVfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQxNm1mNHg1 X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92dWludDE2bWY0eDVfdCAoKSB7dnVpbnQxNm1mNHg1X3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDE2bWY0eDVfdCd9IH0g Ki8NCj4gPiAtdm9pZCBmX3ZpbnQxNm1mNHg2X3QgKCkge3ZpbnQxNm1mNHg2X3QgdDt9IC8qIHsg ZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50MTZtZjR4Nl90J30gfSAqLw0KPiA+IC12 b2lkIGZfdnVpbnQxNm1mNHg2X3QgKCkge3Z1aW50MTZtZjR4Nl90IHQ7fSAvKiB7IGRnLWVycm9y IHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQxNm1mNHg2X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92 aW50MTZtZjR4N190ICgpIHt2aW50MTZtZjR4N190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3du IHR5cGUgbmFtZSAndmludDE2bWY0eDdfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50MTZtZjR4 N190ICgpIHt2dWludDE2bWY0eDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3Z1aW50MTZtZjR4N190J30gfSAqLw0KPiA+IC12b2lkIGZfdmludDE2bWY0eDhfdCAoKSB7 dmludDE2bWY0eDhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQx Nm1mNHg4X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92dWludDE2bWY0eDhfdCAoKSB7dnVpbnQxNm1m NHg4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDE2bWY0eDhf dCd9IH0gKi8NCj4gPiArdm9pZCBmX3ZpbnQxNm1mNHgyX3QgKCkge3ZpbnQxNm1mNHgyX3QgdDt9 DQo+ID4gK3ZvaWQgZl92dWludDE2bWY0eDJfdCAoKSB7dnVpbnQxNm1mNHgyX3QgdDt9DQo+ID4g K3ZvaWQgZl92aW50MTZtZjR4M190ICgpIHt2aW50MTZtZjR4M190IHQ7fQ0KPiA+ICt2b2lkIGZf dnVpbnQxNm1mNHgzX3QgKCkge3Z1aW50MTZtZjR4M190IHQ7fQ0KPiA+ICt2b2lkIGZfdmludDE2 bWY0eDRfdCAoKSB7dmludDE2bWY0eDRfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50MTZtZjR4NF90 ICgpIHt2dWludDE2bWY0eDRfdCB0O30NCj4gPiArdm9pZCBmX3ZpbnQxNm1mNHg1X3QgKCkge3Zp bnQxNm1mNHg1X3QgdDt9DQo+ID4gK3ZvaWQgZl92dWludDE2bWY0eDVfdCAoKSB7dnVpbnQxNm1m NHg1X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50MTZtZjR4Nl90ICgpIHt2aW50MTZtZjR4Nl90IHQ7 fQ0KPiA+ICt2b2lkIGZfdnVpbnQxNm1mNHg2X3QgKCkge3Z1aW50MTZtZjR4Nl90IHQ7fQ0KPiA+ ICt2b2lkIGZfdmludDE2bWY0eDdfdCAoKSB7dmludDE2bWY0eDdfdCB0O30NCj4gPiArdm9pZCBm X3Z1aW50MTZtZjR4N190ICgpIHt2dWludDE2bWY0eDdfdCB0O30NCj4gPiArdm9pZCBmX3ZpbnQx Nm1mNHg4X3QgKCkge3ZpbnQxNm1mNHg4X3QgdDt9DQo+ID4gK3ZvaWQgZl92dWludDE2bWY0eDhf dCAoKSB7dnVpbnQxNm1mNHg4X3QgdDt9DQo+ID4gIHZvaWQgZl92aW50MTZtZjJ4Ml90ICgpIHt2 aW50MTZtZjJ4Ml90IHQ7fQ0KPiA+ICB2b2lkIGZfdnVpbnQxNm1mMngyX3QgKCkge3Z1aW50MTZt ZjJ4Ml90IHQ7fQ0KPiA+ICB2b2lkIGZfdmludDE2bWYyeDNfdCAoKSB7dmludDE2bWYyeDNfdCB0 O30NCj4gPiBAQCAtMTE3LDIwICsxMTcsMjAgQEAgdm9pZCBmX3ZpbnQxNm0yeDRfdCAoKSB7dmlu dDE2bTJ4NF90IHQ7fQ0KPiA+ICB2b2lkIGZfdnVpbnQxNm0yeDRfdCAoKSB7dnVpbnQxNm0yeDRf dCB0O30NCj4gPiAgdm9pZCBmX3ZpbnQxNm00eDJfdCAoKSB7dmludDE2bTR4Ml90IHQ7fQ0KPiA+ ICB2b2lkIGZfdnVpbnQxNm00eDJfdCAoKSB7dnVpbnQxNm00eDJfdCB0O30NCj4gPiAtdm9pZCBm X3ZpbnQzMm1mMngyX3QgKCkge3ZpbnQzMm1mMngyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25v d24gdHlwZSBuYW1lICd2aW50MzJtZjJ4Ml90J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQzMm1m MngyX3QgKCkge3Z1aW50MzJtZjJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUg bmFtZSAndnVpbnQzMm1mMngyX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50MzJtZjJ4M190ICgp IHt2aW50MzJtZjJ4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmlu dDMybWYyeDNfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50MzJtZjJ4M190ICgpIHt2dWludDMy bWYyeDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MzJtZjJ4 M190J30gfSAqLw0KPiA+IC12b2lkIGZfdmludDMybWYyeDRfdCAoKSB7dmludDMybWYyeDRfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQzMm1mMng0X3QnfSB9ICov DQo+ID4gLXZvaWQgZl92dWludDMybWYyeDRfdCAoKSB7dnVpbnQzMm1mMng0X3QgdDt9IC8qIHsg ZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDMybWYyeDRfdCd9IH0gKi8NCj4gPiAt dm9pZCBmX3ZpbnQzMm1mMng1X3QgKCkge3ZpbnQzMm1mMng1X3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2aW50MzJtZjJ4NV90J30gfSAqLw0KPiA+IC12b2lkIGZfdnVp bnQzMm1mMng1X3QgKCkge3Z1aW50MzJtZjJ4NV90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3du IHR5cGUgbmFtZSAndnVpbnQzMm1mMng1X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50MzJtZjJ4 Nl90ICgpIHt2aW50MzJtZjJ4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmludDMybWYyeDZfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50MzJtZjJ4Nl90ICgpIHt2 dWludDMybWYyeDZfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50 MzJtZjJ4Nl90J30gfSAqLw0KPiA+IC12b2lkIGZfdmludDMybWYyeDdfdCAoKSB7dmludDMybWYy eDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQzMm1mMng3X3Qn fSB9ICovDQo+ID4gLXZvaWQgZl92dWludDMybWYyeDdfdCAoKSB7dnVpbnQzMm1mMng3X3QgdDt9 IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDMybWYyeDdfdCd9IH0gKi8N Cj4gPiAtdm9pZCBmX3ZpbnQzMm1mMng4X3QgKCkge3ZpbnQzMm1mMng4X3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50MzJtZjJ4OF90J30gfSAqLw0KPiA+IC12b2lk IGZfdnVpbnQzMm1mMng4X3QgKCkge3Z1aW50MzJtZjJ4OF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1 bmtub3duIHR5cGUgbmFtZSAndnVpbnQzMm1mMng4X3QnfSB9ICovDQo+ID4gK3ZvaWQgZl92aW50 MzJtZjJ4Ml90ICgpIHt2aW50MzJtZjJ4Ml90IHQ7fQ0KPiA+ICt2b2lkIGZfdnVpbnQzMm1mMngy X3QgKCkge3Z1aW50MzJtZjJ4Ml90IHQ7fQ0KPiA+ICt2b2lkIGZfdmludDMybWYyeDNfdCAoKSB7 dmludDMybWYyeDNfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50MzJtZjJ4M190ICgpIHt2dWludDMy bWYyeDNfdCB0O30NCj4gPiArdm9pZCBmX3ZpbnQzMm1mMng0X3QgKCkge3ZpbnQzMm1mMng0X3Qg dDt9DQo+ID4gK3ZvaWQgZl92dWludDMybWYyeDRfdCAoKSB7dnVpbnQzMm1mMng0X3QgdDt9DQo+ ID4gK3ZvaWQgZl92aW50MzJtZjJ4NV90ICgpIHt2aW50MzJtZjJ4NV90IHQ7fQ0KPiA+ICt2b2lk IGZfdnVpbnQzMm1mMng1X3QgKCkge3Z1aW50MzJtZjJ4NV90IHQ7fQ0KPiA+ICt2b2lkIGZfdmlu dDMybWYyeDZfdCAoKSB7dmludDMybWYyeDZfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50MzJtZjJ4 Nl90ICgpIHt2dWludDMybWYyeDZfdCB0O30NCj4gPiArdm9pZCBmX3ZpbnQzMm1mMng3X3QgKCkg e3ZpbnQzMm1mMng3X3QgdDt9DQo+ID4gK3ZvaWQgZl92dWludDMybWYyeDdfdCAoKSB7dnVpbnQz Mm1mMng3X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50MzJtZjJ4OF90ICgpIHt2aW50MzJtZjJ4OF90 IHQ7fQ0KPiA+ICt2b2lkIGZfdnVpbnQzMm1mMng4X3QgKCkge3Z1aW50MzJtZjJ4OF90IHQ7fQ0K PiA+ICB2b2lkIGZfdmludDMybTF4Ml90ICgpIHt2aW50MzJtMXgyX3QgdDt9DQo+ID4gIHZvaWQg Zl92dWludDMybTF4Ml90ICgpIHt2dWludDMybTF4Ml90IHQ7fQ0KPiA+ICB2b2lkIGZfdmludDMy bTF4M190ICgpIHt2aW50MzJtMXgzX3QgdDt9DQo+ID4gQEAgLTE1Myw1NCArMTUzLDE0MyBAQCB2 b2lkIGZfdmludDMybTJ4NF90ICgpIHt2aW50MzJtMng0X3QgdDt9DQo+ID4gIHZvaWQgZl92dWlu dDMybTJ4NF90ICgpIHt2dWludDMybTJ4NF90IHQ7fQ0KPiA+ICB2b2lkIGZfdmludDMybTR4Ml90 ICgpIHt2aW50MzJtNHgyX3QgdDt9DQo+ID4gIHZvaWQgZl92dWludDMybTR4Ml90ICgpIHt2dWlu dDMybTR4Ml90IHQ7fQ0KPiA+IC12b2lkIGZfdmludDY0bTF4Ml90ICgpIHt2aW50NjRtMXgyX3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMXgyX3QnfSB9ICov DQo+ID4gLXZvaWQgZl92dWludDY0bTF4Ml90ICgpIHt2dWludDY0bTF4Ml90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0xeDJfdCd9IH0gKi8NCj4gPiAtdm9p ZCBmX3ZpbnQ2NG0xeDNfdCAoKSB7dmludDY0bTF4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndmludDY0bTF4M190J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQ2NG0x eDNfdCAoKSB7dnVpbnQ2NG0xeDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3Z1aW50NjRtMXgzX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50NjRtMXg0X3QgKCkge3Zp bnQ2NG0xeDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0x eDRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50NjRtMXg0X3QgKCkge3Z1aW50NjRtMXg0X3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTF4NF90J30gfSAq Lw0KPiA+IC12b2lkIGZfdmludDY0bTF4NV90ICgpIHt2aW50NjRtMXg1X3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMXg1X3QnfSB9ICovDQo+ID4gLXZvaWQg Zl92dWludDY0bTF4NV90ICgpIHt2dWludDY0bTF4NV90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndnVpbnQ2NG0xeDVfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZpbnQ2NG0x eDZfdCAoKSB7dmludDY0bTF4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmludDY0bTF4Nl90J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQ2NG0xeDZfdCAoKSB7dnVp bnQ2NG0xeDZfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRt MXg2X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50NjRtMXg3X3QgKCkge3ZpbnQ2NG0xeDdfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0xeDdfdCd9IH0gKi8N Cj4gPiAtdm9pZCBmX3Z1aW50NjRtMXg3X3QgKCkge3Z1aW50NjRtMXg3X3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTF4N190J30gfSAqLw0KPiA+IC12b2lk IGZfdmludDY0bTF4OF90ICgpIHt2aW50NjRtMXg4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25v d24gdHlwZSBuYW1lICd2aW50NjRtMXg4X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92dWludDY0bTF4 OF90ICgpIHt2dWludDY0bTF4OF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndnVpbnQ2NG0xeDhfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZpbnQ2NG0yeDJfdCAoKSB7dmlu dDY0bTJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTJ4 Ml90J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQ2NG0yeDJfdCAoKSB7dnVpbnQ2NG0yeDJfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMngyX3QnfSB9ICov DQo+ID4gLXZvaWQgZl92aW50NjRtMngzX3QgKCkge3ZpbnQ2NG0yeDNfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0yeDNfdCd9IH0gKi8NCj4gPiAtdm9pZCBm X3Z1aW50NjRtMngzX3QgKCkge3Z1aW50NjRtMngzX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25v d24gdHlwZSBuYW1lICd2dWludDY0bTJ4M190J30gfSAqLw0KPiA+IC12b2lkIGZfdmludDY0bTJ4 NF90ICgpIHt2aW50NjRtMng0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1l ICd2aW50NjRtMng0X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92dWludDY0bTJ4NF90ICgpIHt2dWlu dDY0bTJ4NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0y eDRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZpbnQ2NG00eDJfdCAoKSB7dmludDY0bTR4Ml90IHQ7 fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTR4Ml90J30gfSAqLw0K PiA+IC12b2lkIGZfdnVpbnQ2NG00eDJfdCAoKSB7dnVpbnQ2NG00eDJfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtNHgyX3QnfSB9ICovDQo+ID4gLXZvaWQg Zl92ZmxvYXQzMm1mMngyX3QgKCkge3ZmbG9hdDMybWYyeDJfdCB0O30gLyogeyBkZy1lcnJvciB7 dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybWYyeDJfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Zm bG9hdDMybWYyeDNfdCAoKSB7dmZsb2F0MzJtZjJ4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndmZsb2F0MzJtZjJ4M190J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0 MzJtZjJ4NF90ICgpIHt2ZmxvYXQzMm1mMng0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24g dHlwZSBuYW1lICd2ZmxvYXQzMm1mMng0X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQzMm1m Mng1X3QgKCkge3ZmbG9hdDMybWYyeDVfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBl IG5hbWUgJ3ZmbG9hdDMybWYyeDVfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDMybWYyeDZf dCAoKSB7dmZsb2F0MzJtZjJ4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmZsb2F0MzJtZjJ4Nl90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0MzJtZjJ4N190ICgp IHt2ZmxvYXQzMm1mMng3X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 ZmxvYXQzMm1mMng3X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQzMm1mMng4X3QgKCkge3Zm bG9hdDMybWYyeDhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9h dDMybWYyeDhfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDMybTF4Ml90ICgpIHt2ZmxvYXQz Mm0xeDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTF4 Ml90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0MzJtMXgzX3QgKCkge3ZmbG9hdDMybTF4M190 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtMXgzX3QnfSB9 ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQzMm0xeDRfdCAoKSB7dmZsb2F0MzJtMXg0X3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm0xeDRfdCd9IH0gKi8NCj4g PiAtdm9pZCBmX3ZmbG9hdDMybTF4NV90ICgpIHt2ZmxvYXQzMm0xeDVfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTF4NV90J30gfSAqLw0KPiA+IC12b2lk IGZfdmZsb2F0MzJtMXg2X3QgKCkge3ZmbG9hdDMybTF4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1 bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtMXg2X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92Zmxv YXQzMm0xeDdfdCAoKSB7dmZsb2F0MzJtMXg3X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24g dHlwZSBuYW1lICd2ZmxvYXQzMm0xeDdfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDMybTF4 OF90ICgpIHt2ZmxvYXQzMm0xeDhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3ZmbG9hdDMybTF4OF90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0MzJtMngyX3QgKCkg e3ZmbG9hdDMybTJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZs b2F0MzJtMngyX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQzMm0yeDNfdCAoKSB7dmZsb2F0 MzJtMngzX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm0y eDNfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDMybTJ4NF90ICgpIHt2ZmxvYXQzMm0yeDRf dCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTJ4NF90J30g fSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0MzJtNHgyX3QgKCkge3ZmbG9hdDMybTR4Ml90IHQ7fSAv KiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtNHgyX3QnfSB9ICovDQo+ ID4gLXZvaWQgZl92ZmxvYXQ2NG0xeDJfdCAoKSB7dmZsb2F0NjRtMXgyX3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDJfdCd9IH0gKi8NCj4gPiAtdm9p ZCBmX3ZmbG9hdDY0bTF4M190ICgpIHt2ZmxvYXQ2NG0xeDNfdCB0O30gLyogeyBkZy1lcnJvciB7 dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4M190J30gfSAqLw0KPiA+IC12b2lkIGZfdmZs b2F0NjRtMXg0X3QgKCkge3ZmbG9hdDY0bTF4NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3du IHR5cGUgbmFtZSAndmZsb2F0NjRtMXg0X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQ2NG0x eDVfdCAoKSB7dmZsb2F0NjRtMXg1X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2ZmxvYXQ2NG0xeDVfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4Nl90ICgp IHt2ZmxvYXQ2NG0xeDZfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Zm bG9hdDY0bTF4Nl90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0NjRtMXg3X3QgKCkge3ZmbG9h dDY0bTF4N190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRt MXg3X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQ2NG0xeDhfdCAoKSB7dmZsb2F0NjRtMXg4 X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDhfdCd9 IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDY0bTJ4Ml90ICgpIHt2ZmxvYXQ2NG0yeDJfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTJ4Ml90J30gfSAqLw0K PiA+IC12b2lkIGZfdmZsb2F0NjRtMngzX3QgKCkge3ZmbG9hdDY0bTJ4M190IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMngzX3QnfSB9ICovDQo+ID4gLXZv aWQgZl92ZmxvYXQ2NG0yeDRfdCAoKSB7dmZsb2F0NjRtMng0X3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0yeDRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Zm bG9hdDY0bTR4Ml90ICgpIHt2ZmxvYXQ2NG00eDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTR4Ml90J30gfSAqLw0KPiA+ICsNCj4gPiArLyogVG8gc3Vw cG9ydCB0YXJnZXQgYXR0cmlidXRlLCB0aGUgdmZsb2F0Km0qeCpfdCBuZWVkIHRvIGJlIHJlZ2lz dGVyZWQNCj4gPiArICAgaW4gYWR2YW5jZS4gIFdlIGFkZCB0eXBlIGFuZCBhcmdzL3JldHVybiB2 YWx1ZSBjaGVjayBkdXJpbmcgdGhlDQo+ID4gKyAgIHNldCBjdXJyZW50IGZ1bmN0aW9uIGJ1dCBj YW5ub3QgY292ZXIgYmVsb3cgY2FzZXMuICBJdCBpcyB0aGUgc2FtZQ0KPiA+ICsgICBiZWhhdmlv ciBjb21wYXJlZCB0byBhYXJjaDY0IHN2ZS4gICovDQo+ID4gK3ZvaWQgZl92aW50NjRtMXgyX3Qg KCkge3ZpbnQ2NG0xeDJfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMXgyX3QgKCkge3Z1aW50 NjRtMXgyX3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtMXgzX3QgKCkge3ZpbnQ2NG0xeDNfdCB0 O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMXgzX3QgKCkge3Z1aW50NjRtMXgzX3QgdDt9DQo+ID4g K3ZvaWQgZl92aW50NjRtMXg0X3QgKCkge3ZpbnQ2NG0xeDRfdCB0O30NCj4gPiArdm9pZCBmX3Z1 aW50NjRtMXg0X3QgKCkge3Z1aW50NjRtMXg0X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtMXg1 X3QgKCkge3ZpbnQ2NG0xeDVfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMXg1X3QgKCkge3Z1 aW50NjRtMXg1X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtMXg2X3QgKCkge3ZpbnQ2NG0xeDZf dCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMXg2X3QgKCkge3Z1aW50NjRtMXg2X3QgdDt9DQo+ ID4gK3ZvaWQgZl92aW50NjRtMXg3X3QgKCkge3ZpbnQ2NG0xeDdfdCB0O30NCj4gPiArdm9pZCBm X3Z1aW50NjRtMXg3X3QgKCkge3Z1aW50NjRtMXg3X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRt MXg4X3QgKCkge3ZpbnQ2NG0xeDhfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMXg4X3QgKCkg e3Z1aW50NjRtMXg4X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtMngyX3QgKCkge3ZpbnQ2NG0y eDJfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMngyX3QgKCkge3Z1aW50NjRtMngyX3QgdDt9 DQo+ID4gK3ZvaWQgZl92aW50NjRtMngzX3QgKCkge3ZpbnQ2NG0yeDNfdCB0O30NCj4gPiArdm9p ZCBmX3Z1aW50NjRtMngzX3QgKCkge3Z1aW50NjRtMngzX3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50 NjRtMng0X3QgKCkge3ZpbnQ2NG0yeDRfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMng0X3Qg KCkge3Z1aW50NjRtMng0X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtNHgyX3QgKCkge3ZpbnQ2 NG00eDJfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtNHgyX3QgKCkge3Z1aW50NjRtNHgyX3Qg dDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQzMm1mMngyX3QgKCkge3ZmbG9hdDMybWYyeDJfdCB0O30N Cj4gPiArdm9pZCBmX3ZmbG9hdDMybWYyeDNfdCAoKSB7dmZsb2F0MzJtZjJ4M190IHQ7fQ0KPiA+ ICt2b2lkIGZfdmZsb2F0MzJtZjJ4NF90ICgpIHt2ZmxvYXQzMm1mMng0X3QgdDt9DQo+ID4gK3Zv aWQgZl92ZmxvYXQzMm1mMng1X3QgKCkge3ZmbG9hdDMybWYyeDVfdCB0O30NCj4gPiArdm9pZCBm X3ZmbG9hdDMybWYyeDZfdCAoKSB7dmZsb2F0MzJtZjJ4Nl90IHQ7fQ0KPiA+ICt2b2lkIGZfdmZs b2F0MzJtZjJ4N190ICgpIHt2ZmxvYXQzMm1mMng3X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQz Mm1mMng4X3QgKCkge3ZmbG9hdDMybWYyeDhfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybTF4 Ml90ICgpIHt2ZmxvYXQzMm0xeDJfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybTF4M190ICgp IHt2ZmxvYXQzMm0xeDNfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybTF4NF90ICgpIHt2Zmxv YXQzMm0xeDRfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybTF4NV90ICgpIHt2ZmxvYXQzMm0x eDVfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybTF4Nl90ICgpIHt2ZmxvYXQzMm0xeDZfdCB0 O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybTF4N190ICgpIHt2ZmxvYXQzMm0xeDdfdCB0O30NCj4g PiArdm9pZCBmX3ZmbG9hdDMybTF4OF90ICgpIHt2ZmxvYXQzMm0xeDhfdCB0O30NCj4gPiArdm9p ZCBmX3ZmbG9hdDMybTJ4Ml90ICgpIHt2ZmxvYXQzMm0yeDJfdCB0O30NCj4gPiArdm9pZCBmX3Zm bG9hdDMybTJ4M190ICgpIHt2ZmxvYXQzMm0yeDNfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMy bTJ4NF90ICgpIHt2ZmxvYXQzMm0yeDRfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybTR4Ml90 ICgpIHt2ZmxvYXQzMm00eDJfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4Ml90ICgpIHt2 ZmxvYXQ2NG0xeDJfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4M190ICgpIHt2ZmxvYXQ2 NG0xeDNfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4NF90ICgpIHt2ZmxvYXQ2NG0xeDRf dCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4NV90ICgpIHt2ZmxvYXQ2NG0xeDVfdCB0O30N Cj4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4Nl90ICgpIHt2ZmxvYXQ2NG0xeDZfdCB0O30NCj4gPiAr dm9pZCBmX3ZmbG9hdDY0bTF4N190ICgpIHt2ZmxvYXQ2NG0xeDdfdCB0O30NCj4gPiArdm9pZCBm X3ZmbG9hdDY0bTF4OF90ICgpIHt2ZmxvYXQ2NG0xeDhfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9h dDY0bTJ4Ml90ICgpIHt2ZmxvYXQ2NG0yeDJfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTJ4 M190ICgpIHt2ZmxvYXQ2NG0yeDNfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTJ4NF90ICgp IHt2ZmxvYXQ2NG0yeDRfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTR4Ml90ICgpIHt2Zmxv YXQ2NG00eDJfdCB0O30NCj4gPiArDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDhtZjh4Ml90ICh2aW50 OG1mOHgyX3QgdCkgeyB9ICAgICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50OG1m OHgyX3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBp cyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50OG1mOHgyX3QgKHZ1aW50OG1mOHgy X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ4bWY4eDJfdCcg cmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVu fSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDhtZjh4M190ICh2aW50OG1mOHgzX3QgdCkgeyB9 ICAgICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50OG1mOHgzX3QnIHJlcXVpcmVz IHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0K PiA+ICt2b2lkIG5ld19mX3Z1aW50OG1mOHgzX3QgKHZ1aW50OG1mOHgzX3QgdCkgeyB9ICAgLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ4bWY4eDNfdCcgcmVxdWlyZXMgdGhlIG1p bmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3Zv aWQgbmV3X2ZfdmludDhtZjh4NF90ICh2aW50OG1mOHg0X3QgdCkgeyB9ICAgICAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2aW50OG1mOHg0X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZl Y3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19m X3Z1aW50OG1mOHg0X3QgKHZ1aW50OG1mOHg0X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndnVpbnQ4bWY4eDRfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxl bmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDht Zjh4NV90ICh2aW50OG1mOHg1X3QgdCkgeyB9ICAgICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0 eXBlICd2aW50OG1mOHg1X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0 JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50OG1mOHg1X3Qg KHZ1aW50OG1mOHg1X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVp bnQ4bWY4eDVfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAn MzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDhtZjh4Nl90ICh2aW50OG1m OHg2X3QgdCkgeyB9ICAgICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50OG1mOHg2 X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBn aXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50OG1mOHg2X3QgKHZ1aW50OG1mOHg2X3Qg dCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ4bWY4eDZfdCcgcmVx dWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9 ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDhtZjh4N190ICh2aW50OG1mOHg3X3QgdCkgeyB9ICAg ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50OG1mOHg3X3QnIHJlcXVpcmVzIHRo ZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ ICt2b2lkIG5ld19mX3Z1aW50OG1mOHg3X3QgKHZ1aW50OG1mOHg3X3QgdCkgeyB9ICAgLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ4bWY4eDdfdCcgcmVxdWlyZXMgdGhlIG1pbmlt YWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQg bmV3X2ZfdmludDhtZjh4OF90ICh2aW50OG1mOHg4X3QgdCkgeyB9ICAgICAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2aW50OG1mOHg4X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3Rv ciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1 aW50OG1mOHg4X3QgKHZ1aW50OG1mOHg4X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1l bnQgdHlwZSAndnVpbnQ4bWY4eDhfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0 aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDMybWYy eDJfdCAodmludDMybWYyeDJfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBl ICd2aW50MzJtZjJ4Ml90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcg YnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92dWludDMybWYyeDJfdCAo dnVpbnQzMm1mMngyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50 MzJtZjJ4Ml90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICcz MicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92aW50MzJtZjJ4M190ICh2aW50MzJt ZjJ4M190IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQzMm1mMngz X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBn aXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50MzJtZjJ4M190ICh2dWludDMybWYyeDNf dCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQzMm1mMngzX3QnIHJl cXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0g fSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQzMm1mMng0X3QgKHZpbnQzMm1mMng0X3QgdCkgeyB9 ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDMybWYyeDRfdCcgcmVxdWlyZXMg dGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ ID4gK3ZvaWQgbmV3X2ZfdnVpbnQzMm1mMng0X3QgKHZ1aW50MzJtZjJ4NF90IHQpIHsgfSAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDMybWYyeDRfdCcgcmVxdWlyZXMgdGhlIG1p bmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3Zv aWQgbmV3X2ZfdmludDMybWYyeDVfdCAodmludDMybWYyeDVfdCB0KSB7IH0gICAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2aW50MzJtZjJ4NV90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2 ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdf Zl92dWludDMybWYyeDVfdCAodnVpbnQzMm1mMng1X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2Fy Z3VtZW50IHR5cGUgJ3Z1aW50MzJtZjJ4NV90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3Ig bGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92aW50 MzJtZjJ4Nl90ICh2aW50MzJtZjJ4Nl90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50 IHR5cGUgJ3ZpbnQzMm1mMng2X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGgg JzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50MzJtZjJ4 Nl90ICh2dWludDMybWYyeDZfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dnVpbnQzMm1mMng2X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBi dXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQzMm1mMng3X3QgKHZp bnQzMm1mMng3X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDMy bWYyeDdfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzIn IGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQzMm1mMng3X3QgKHZ1aW50MzJt ZjJ4N190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDMybWYyeDdf dCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdp dmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDMybWYyeDhfdCAodmludDMybWYyeDhfdCB0 KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50MzJtZjJ4OF90JyByZXF1 aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0g Ki8NCj4gPiArdm9pZCBuZXdfZl92dWludDMybWYyeDhfdCAodnVpbnQzMm1mMng4X3QgdCkgeyB9 IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50MzJtZjJ4OF90JyByZXF1aXJlcyB0 aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4g PiArDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4Ml90ICh2aW50NjRtMXgyX3QgdCkgeyB9ICAg LyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4Ml90JyByZXF1aXJlcyB0aGUg enZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9p ZCBuZXdfZl92dWludDY0bTF4Ml90ICh2dWludDY0bTF4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2dWludDY0bTF4Ml90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2 NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92aW50 NjRtMXgzX3QgKHZpbnQ2NG0xeDNfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0 eXBlICd2aW50NjRtMXgzX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9y IHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMXgzX3QgKHZ1 aW50NjRtMXgzX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRt MXgzX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVu c2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQ2NG0xeDRfdCAodmludDY0bTF4NF90IHQp IHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0xeDRfdCcgcmVxdWly ZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2NG0xeDRfdCAodnVpbnQ2NG0xeDRfdCB0KSB7IH0gLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0xeDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0 eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3 X2ZfdmludDY0bTF4NV90ICh2aW50NjRtMXg1X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndmludDY0bTF4NV90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2 ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92dWludDY0bTF4 NV90ICh2dWludDY0bTF4NV90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 dWludDY0bTF4NV90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElT QSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92aW50NjRtMXg2X3QgKHZpbnQ2NG0x eDZfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMXg2X3Qn IHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0g fSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMXg2X3QgKHZ1aW50NjRtMXg2X3QgdCkgeyB9 IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMXg2X3QnIHJlcXVpcmVzIHRo ZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2 b2lkIG5ld19mX3ZpbnQ2NG0xeDdfdCAodmludDY0bTF4N190IHQpIHsgfSAgIC8qIHsgZGctZXJy b3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0xeDdfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZl NjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdnVp bnQ2NG0xeDdfdCAodnVpbnQ2NG0xeDdfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQg dHlwZSAndnVpbnQ2NG0xeDdfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQg b3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4OF90ICh2 aW50NjRtMXg4X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0 bTF4OF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRl bnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92dWludDY0bTF4OF90ICh2dWludDY0bTF4OF90 IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0bTF4OF90JyByZXF1 aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8N Cj4gPiArdm9pZCBuZXdfZl92aW50NjRtMngyX3QgKHZpbnQ2NG0yeDJfdCB0KSB7IH0gICAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMngyX3QnIHJlcXVpcmVzIHRoZSB6dmU2 NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5l d19mX3Z1aW50NjRtMngyX3QgKHZ1aW50NjRtMngyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2Fy Z3VtZW50IHR5cGUgJ3Z1aW50NjRtMngyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0Ziwg enZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQ2NG0y eDNfdCAodmludDY0bTJ4M190IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUg J3ZpbnQ2NG0yeDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJ U0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2NG0yeDNfdCAodnVpbnQ2 NG0yeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0yeDNf dCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9u fSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTJ4NF90ICh2aW50NjRtMng0X3QgdCkgeyB9 ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTJ4NF90JyByZXF1aXJlcyB0 aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiAr dm9pZCBuZXdfZl92dWludDY0bTJ4NF90ICh2dWludDY0bTJ4NF90IHQpIHsgfSAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0bTJ4NF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6 dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92 aW50NjRtNHgyX3QgKHZpbnQ2NG00eDJfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2aW50NjRtNHgyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtNHgyX3Qg KHZ1aW50NjRtNHgyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50 NjRtNHgyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4 dGVuc2lvbn0gfSAqLw0KPiA+ICsNCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMngyX3QgKHZm bG9hdDMybWYyeDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0 MzJtZjJ4Ml90JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBl eHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMngzX3QgKHZmbG9hdDMy bWYyeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4 M190JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNp b259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMng0X3QgKHZmbG9hdDMybWYyeDRf dCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4NF90JyBy ZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0g Ki8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMng1X3QgKHZmbG9hdDMybWYyeDVfdCB0KSB7 IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4NV90JyByZXF1aXJl cyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4g PiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMng2X3QgKHZmbG9hdDMybWYyeDZfdCB0KSB7IH0gLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4Nl90JyByZXF1aXJlcyB0aGUg enZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9p ZCBuZXdfZl92ZmxvYXQzMm1mMng3X3QgKHZmbG9hdDMybWYyeDdfdCB0KSB7IH0gLyogeyBkZy1l cnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4N190JyByZXF1aXJlcyB0aGUgenZlMzJm LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdf Zl92ZmxvYXQzMm1mMng4X3QgKHZmbG9hdDMybWYyeDhfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7 YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4OF90JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2 NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArDQo+ID4gK3ZvaWQgbmV3 X2ZfdmZsb2F0MzJtMXgyX3QgKHZmbG9hdDMybTF4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHth cmd1bWVudCB0eXBlICd2ZmxvYXQzMm0xeDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRm LCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0 MzJtMXgzX3QgKHZmbG9hdDMybTF4M190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0 eXBlICd2ZmxvYXQzMm0xeDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQg b3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtMXg0X3Qg KHZmbG9hdDMybTF4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2Zmxv YXQzMm0xeDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0Eg ZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtMXg1X3QgKHZmbG9hdDMy bTF4NV90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0xeDVf dCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9u fSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtMXg2X3QgKHZmbG9hdDMybTF4Nl90IHQp IHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0xeDZfdCcgcmVxdWly ZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtMXg3X3QgKHZmbG9hdDMybTF4N190IHQpIHsgfSAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0xeDdfdCcgcmVxdWlyZXMgdGhlIHp2 ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQg bmV3X2ZfdmZsb2F0MzJtMXg4X3QgKHZmbG9hdDMybTF4OF90IHQpIHsgfSAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0xeDhfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZl NjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZs b2F0MzJtMngyX3QgKHZmbG9hdDMybTJ4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2ZmxvYXQzMm0yeDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2 NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtMngz X3QgKHZmbG9hdDMybTJ4M190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 ZmxvYXQzMm0yeDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJ U0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtMng0X3QgKHZmbG9h dDMybTJ4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0y eDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5z aW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtNHgyX3QgKHZmbG9hdDMybTR4Ml90 IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm00eDJfdCcgcmVx dWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICov DQo+ID4gKw0KPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTF4Ml90ICh2ZmxvYXQ2NG0xeDJfdCB0 KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMXgyX3QnIHJlcXVp cmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2Zf dmZsb2F0NjRtMXgzX3QgKHZmbG9hdDY0bTF4M190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBl eHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDRfdCAodmZsb2F0NjRt MXg0X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4NF90 JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lk IG5ld19mX3ZmbG9hdDY0bTF4NV90ICh2ZmxvYXQ2NG0xeDVfdCB0KSB7IH0gLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMXg1X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3Ig diBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXg2X3QgKHZm bG9hdDY0bTF4Nl90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2 NG0xeDZfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4g PiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDdfdCAodmZsb2F0NjRtMXg3X3QgdCkgeyB9IC8qIHsg ZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4N190JyByZXF1aXJlcyB0aGUgenZl NjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTF4 OF90ICh2ZmxvYXQ2NG0xeDhfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dmZsb2F0NjRtMXg4X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9 ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMngyX3QgKHZmbG9hdDY0bTJ4Ml90IHQpIHsg fSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0yeDJfdCcgcmVxdWlyZXMg dGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92Zmxv YXQ2NG0yeDNfdCAodmZsb2F0NjRtMngzX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50 IHR5cGUgJ3ZmbG9hdDY0bTJ4M190JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVu c2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTJ4NF90ICh2ZmxvYXQ2NG0yeDRf dCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMng0X3QnIHJl cXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3 X2ZfdmZsb2F0NjRtNHgyX3QgKHZmbG9hdDY0bTR4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHth cmd1bWVudCB0eXBlICd2ZmxvYXQ2NG00eDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElT QSBleHRlbnNpb259IH0gKi8NCj4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMTMuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9ydnYvYmFzZS91c2VyLTEzLmMNCj4gPiBpbmRleCBlZDE4MDc0OWNiNi4uOTY3ZWVlY2Uy NzQgMTAwNjQ0DQo+ID4gLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9i YXNlL3VzZXItMTMuYw0KPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS91c2VyLTEzLmMNCj4gPiBAQCAtMTUzLDU0ICsxNTMsMTA4IEBAIHZvaWQgZl92aW50 MzJtMng0X3QgKCkge3ZpbnQzMm0yeDRfdCB0O30NCj4gPiAgdm9pZCBmX3Z1aW50MzJtMng0X3Qg KCkge3Z1aW50MzJtMng0X3QgdDt9DQo+ID4gIHZvaWQgZl92aW50MzJtNHgyX3QgKCkge3ZpbnQz Mm00eDJfdCB0O30NCj4gPiAgdm9pZCBmX3Z1aW50MzJtNHgyX3QgKCkge3Z1aW50MzJtNHgyX3Qg dDt9DQo+ID4gLXZvaWQgZl92aW50NjRtMXgyX3QgKCkge3ZpbnQ2NG0xeDJfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0xeDJfdCd9IH0gKi8NCj4gPiAtdm9p ZCBmX3Z1aW50NjRtMXgyX3QgKCkge3Z1aW50NjRtMXgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vu a25vd24gdHlwZSBuYW1lICd2dWludDY0bTF4Ml90J30gfSAqLw0KPiA+IC12b2lkIGZfdmludDY0 bTF4M190ICgpIHt2aW50NjRtMXgzX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2aW50NjRtMXgzX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92dWludDY0bTF4M190ICgpIHt2 dWludDY0bTF4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2 NG0xeDNfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZpbnQ2NG0xeDRfdCAoKSB7dmludDY0bTF4NF90 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTF4NF90J30gfSAq Lw0KPiA+IC12b2lkIGZfdnVpbnQ2NG0xeDRfdCAoKSB7dnVpbnQ2NG0xeDRfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMXg0X3QnfSB9ICovDQo+ID4gLXZv aWQgZl92aW50NjRtMXg1X3QgKCkge3ZpbnQ2NG0xeDVfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0xeDVfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50NjRt MXg1X3QgKCkge3Z1aW50NjRtMXg1X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2dWludDY0bTF4NV90J30gfSAqLw0KPiA+IC12b2lkIGZfdmludDY0bTF4Nl90ICgpIHt2 aW50NjRtMXg2X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRt MXg2X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92dWludDY0bTF4Nl90ICgpIHt2dWludDY0bTF4Nl90 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0xeDZfdCd9IH0g Ki8NCj4gPiAtdm9pZCBmX3ZpbnQ2NG0xeDdfdCAoKSB7dmludDY0bTF4N190IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTF4N190J30gfSAqLw0KPiA+IC12b2lk IGZfdnVpbnQ2NG0xeDdfdCAoKSB7dnVpbnQ2NG0xeDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMXg3X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50NjRt MXg4X3QgKCkge3ZpbnQ2NG0xeDhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3ZpbnQ2NG0xeDhfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50NjRtMXg4X3QgKCkge3Z1 aW50NjRtMXg4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0 bTF4OF90J30gfSAqLw0KPiA+IC12b2lkIGZfdmludDY0bTJ4Ml90ICgpIHt2aW50NjRtMngyX3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMngyX3QnfSB9ICov DQo+ID4gLXZvaWQgZl92dWludDY0bTJ4Ml90ICgpIHt2dWludDY0bTJ4Ml90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0yeDJfdCd9IH0gKi8NCj4gPiAtdm9p ZCBmX3ZpbnQ2NG0yeDNfdCAoKSB7dmludDY0bTJ4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndmludDY0bTJ4M190J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQ2NG0y eDNfdCAoKSB7dnVpbnQ2NG0yeDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3Z1aW50NjRtMngzX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50NjRtMng0X3QgKCkge3Zp bnQ2NG0yeDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0y eDRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50NjRtMng0X3QgKCkge3Z1aW50NjRtMng0X3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTJ4NF90J30gfSAq Lw0KPiA+IC12b2lkIGZfdmludDY0bTR4Ml90ICgpIHt2aW50NjRtNHgyX3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtNHgyX3QnfSB9ICovDQo+ID4gLXZvaWQg Zl92dWludDY0bTR4Ml90ICgpIHt2dWludDY0bTR4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndnVpbnQ2NG00eDJfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDMy bWYyeDJfdCAoKSB7dmZsb2F0MzJtZjJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5 cGUgbmFtZSAndmZsb2F0MzJtZjJ4Ml90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0MzJtZjJ4 M190ICgpIHt2ZmxvYXQzMm1mMngzX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2ZmxvYXQzMm1mMngzX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQzMm1mMng0X3Qg KCkge3ZmbG9hdDMybWYyeDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUg J3ZmbG9hdDMybWYyeDRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDMybWYyeDVfdCAoKSB7 dmZsb2F0MzJtZjJ4NV90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZs b2F0MzJtZjJ4NV90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0MzJtZjJ4Nl90ICgpIHt2Zmxv YXQzMm1mMng2X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQz Mm1mMng2X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQzMm1mMng3X3QgKCkge3ZmbG9hdDMy bWYyeDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybWYy eDdfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDMybWYyeDhfdCAoKSB7dmZsb2F0MzJtZjJ4 OF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtZjJ4OF90 J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0MzJtMXgyX3QgKCkge3ZmbG9hdDMybTF4Ml90IHQ7 fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtMXgyX3QnfSB9ICov DQo+ID4gLXZvaWQgZl92ZmxvYXQzMm0xeDNfdCAoKSB7dmZsb2F0MzJtMXgzX3QgdDt9IC8qIHsg ZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm0xeDNfdCd9IH0gKi8NCj4gPiAt dm9pZCBmX3ZmbG9hdDMybTF4NF90ICgpIHt2ZmxvYXQzMm0xeDRfdCB0O30gLyogeyBkZy1lcnJv ciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTF4NF90J30gfSAqLw0KPiA+IC12b2lkIGZf dmZsb2F0MzJtMXg1X3QgKCkge3ZmbG9hdDMybTF4NV90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndmZsb2F0MzJtMXg1X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQz Mm0xeDZfdCAoKSB7dmZsb2F0MzJtMXg2X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlw ZSBuYW1lICd2ZmxvYXQzMm0xeDZfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDMybTF4N190 ICgpIHt2ZmxvYXQzMm0xeDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUg J3ZmbG9hdDMybTF4N190J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0MzJtMXg4X3QgKCkge3Zm bG9hdDMybTF4OF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0 MzJtMXg4X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQzMm0yeDJfdCAoKSB7dmZsb2F0MzJt MngyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm0yeDJf dCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDMybTJ4M190ICgpIHt2ZmxvYXQzMm0yeDNfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTJ4M190J30gfSAq Lw0KPiA+IC12b2lkIGZfdmZsb2F0MzJtMng0X3QgKCkge3ZmbG9hdDMybTJ4NF90IHQ7fSAvKiB7 IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtMng0X3QnfSB9ICovDQo+ID4g LXZvaWQgZl92ZmxvYXQzMm00eDJfdCAoKSB7dmZsb2F0MzJtNHgyX3QgdDt9IC8qIHsgZGctZXJy b3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm00eDJfdCd9IH0gKi8NCj4gPiAtdm9pZCBm X3ZmbG9hdDY0bTF4Ml90ICgpIHt2ZmxvYXQ2NG0xeDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4Ml90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0 NjRtMXgzX3QgKCkge3ZmbG9hdDY0bTF4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5 cGUgbmFtZSAndmZsb2F0NjRtMXgzX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQ2NG0xeDRf dCAoKSB7dmZsb2F0NjRtMXg0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1l ICd2ZmxvYXQ2NG0xeDRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4NV90ICgpIHt2 ZmxvYXQ2NG0xeDVfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9h dDY0bTF4NV90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0NjRtMXg2X3QgKCkge3ZmbG9hdDY0 bTF4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXg2 X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQ2NG0xeDdfdCAoKSB7dmZsb2F0NjRtMXg3X3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDdfdCd9IH0g Ki8NCj4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4OF90ICgpIHt2ZmxvYXQ2NG0xeDhfdCB0O30gLyog eyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4OF90J30gfSAqLw0KPiA+ IC12b2lkIGZfdmZsb2F0NjRtMngyX3QgKCkge3ZmbG9hdDY0bTJ4Ml90IHQ7fSAvKiB7IGRnLWVy cm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMngyX3QnfSB9ICovDQo+ID4gLXZvaWQg Zl92ZmxvYXQ2NG0yeDNfdCAoKSB7dmZsb2F0NjRtMngzX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vu a25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0yeDNfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9h dDY0bTJ4NF90ICgpIHt2ZmxvYXQ2NG0yeDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0 eXBlIG5hbWUgJ3ZmbG9hdDY0bTJ4NF90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0NjRtNHgy X3QgKCkge3ZmbG9hdDY0bTR4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmZsb2F0NjRtNHgyX3QnfSB9ICovDQo+ID4gK3ZvaWQgZl92aW50NjRtMXgyX3QgKCkge3Zp bnQ2NG0xeDJfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMXgyX3QgKCkge3Z1aW50NjRtMXgy X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtMXgzX3QgKCkge3ZpbnQ2NG0xeDNfdCB0O30NCj4g PiArdm9pZCBmX3Z1aW50NjRtMXgzX3QgKCkge3Z1aW50NjRtMXgzX3QgdDt9DQo+ID4gK3ZvaWQg Zl92aW50NjRtMXg0X3QgKCkge3ZpbnQ2NG0xeDRfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRt MXg0X3QgKCkge3Z1aW50NjRtMXg0X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtMXg1X3QgKCkg e3ZpbnQ2NG0xeDVfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMXg1X3QgKCkge3Z1aW50NjRt MXg1X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtMXg2X3QgKCkge3ZpbnQ2NG0xeDZfdCB0O30N Cj4gPiArdm9pZCBmX3Z1aW50NjRtMXg2X3QgKCkge3Z1aW50NjRtMXg2X3QgdDt9DQo+ID4gK3Zv aWQgZl92aW50NjRtMXg3X3QgKCkge3ZpbnQ2NG0xeDdfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50 NjRtMXg3X3QgKCkge3Z1aW50NjRtMXg3X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtMXg4X3Qg KCkge3ZpbnQ2NG0xeDhfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMXg4X3QgKCkge3Z1aW50 NjRtMXg4X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtMngyX3QgKCkge3ZpbnQ2NG0yeDJfdCB0 O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMngyX3QgKCkge3Z1aW50NjRtMngyX3QgdDt9DQo+ID4g K3ZvaWQgZl92aW50NjRtMngzX3QgKCkge3ZpbnQ2NG0yeDNfdCB0O30NCj4gPiArdm9pZCBmX3Z1 aW50NjRtMngzX3QgKCkge3Z1aW50NjRtMngzX3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtMng0 X3QgKCkge3ZpbnQ2NG0yeDRfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMng0X3QgKCkge3Z1 aW50NjRtMng0X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtNHgyX3QgKCkge3ZpbnQ2NG00eDJf dCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtNHgyX3QgKCkge3Z1aW50NjRtNHgyX3QgdDt9DQo+ ID4gK3ZvaWQgZl92ZmxvYXQzMm1mMngyX3QgKCkge3ZmbG9hdDMybWYyeDJfdCB0O30NCj4gPiAr dm9pZCBmX3ZmbG9hdDMybWYyeDNfdCAoKSB7dmZsb2F0MzJtZjJ4M190IHQ7fQ0KPiA+ICt2b2lk IGZfdmZsb2F0MzJtZjJ4NF90ICgpIHt2ZmxvYXQzMm1mMng0X3QgdDt9DQo+ID4gK3ZvaWQgZl92 ZmxvYXQzMm1mMng1X3QgKCkge3ZmbG9hdDMybWYyeDVfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9h dDMybWYyeDZfdCAoKSB7dmZsb2F0MzJtZjJ4Nl90IHQ7fQ0KPiA+ICt2b2lkIGZfdmZsb2F0MzJt ZjJ4N190ICgpIHt2ZmxvYXQzMm1mMng3X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQzMm1mMng4 X3QgKCkge3ZmbG9hdDMybWYyeDhfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybTF4Ml90ICgp IHt2ZmxvYXQzMm0xeDJfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybTF4M190ICgpIHt2Zmxv YXQzMm0xeDNfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybTF4NF90ICgpIHt2ZmxvYXQzMm0x eDRfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybTF4NV90ICgpIHt2ZmxvYXQzMm0xeDVfdCB0 O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybTF4Nl90ICgpIHt2ZmxvYXQzMm0xeDZfdCB0O30NCj4g PiArdm9pZCBmX3ZmbG9hdDMybTF4N190ICgpIHt2ZmxvYXQzMm0xeDdfdCB0O30NCj4gPiArdm9p ZCBmX3ZmbG9hdDMybTF4OF90ICgpIHt2ZmxvYXQzMm0xeDhfdCB0O30NCj4gPiArdm9pZCBmX3Zm bG9hdDMybTJ4Ml90ICgpIHt2ZmxvYXQzMm0yeDJfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMy bTJ4M190ICgpIHt2ZmxvYXQzMm0yeDNfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybTJ4NF90 ICgpIHt2ZmxvYXQzMm0yeDRfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybTR4Ml90ICgpIHt2 ZmxvYXQzMm00eDJfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4Ml90ICgpIHt2ZmxvYXQ2 NG0xeDJfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4M190ICgpIHt2ZmxvYXQ2NG0xeDNf dCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4NF90ICgpIHt2ZmxvYXQ2NG0xeDRfdCB0O30N Cj4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4NV90ICgpIHt2ZmxvYXQ2NG0xeDVfdCB0O30NCj4gPiAr dm9pZCBmX3ZmbG9hdDY0bTF4Nl90ICgpIHt2ZmxvYXQ2NG0xeDZfdCB0O30NCj4gPiArdm9pZCBm X3ZmbG9hdDY0bTF4N190ICgpIHt2ZmxvYXQ2NG0xeDdfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9h dDY0bTF4OF90ICgpIHt2ZmxvYXQ2NG0xeDhfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTJ4 Ml90ICgpIHt2ZmxvYXQ2NG0yeDJfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTJ4M190ICgp IHt2ZmxvYXQ2NG0yeDNfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTJ4NF90ICgpIHt2Zmxv YXQ2NG0yeDRfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTR4Ml90ICgpIHt2ZmxvYXQ2NG00 eDJfdCB0O30NCj4gPiArDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4Ml90ICh2aW50NjRtMXgy X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4Ml90JyBy ZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0g Ki8NCj4gPiArdm9pZCBuZXdfZl92dWludDY0bTF4Ml90ICh2dWludDY0bTF4Ml90IHQpIHsgfSAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0bTF4Ml90JyByZXF1aXJlcyB0aGUg enZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9p ZCBuZXdfZl92aW50NjRtMXgzX3QgKHZpbnQ2NG0xeDNfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2aW50NjRtMXgzX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0 ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50 NjRtMXgzX3QgKHZ1aW50NjRtMXgzX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5 cGUgJ3Z1aW50NjRtMXgzX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9y IHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQ2NG0xeDRfdCAodmlu dDY0bTF4NF90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0x eDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5z aW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2NG0xeDRfdCAodnVpbnQ2NG0xeDRfdCB0 KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0xeDRfdCcgcmVxdWly ZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4NV90ICh2aW50NjRtMXg1X3QgdCkgeyB9ICAgLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4NV90JyByZXF1aXJlcyB0aGUgenZlNjR4 LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdf Zl92dWludDY0bTF4NV90ICh2dWludDY0bTF4NV90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2dWludDY0bTF4NV90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2 ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92aW50NjRtMXg2 X3QgKHZpbnQ2NG0xeDZfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 aW50NjRtMXg2X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNB IGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMXg2X3QgKHZ1aW50NjRt MXg2X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMXg2X3Qn IHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0g fSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQ2NG0xeDdfdCAodmludDY0bTF4N190IHQpIHsgfSAg IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0xeDdfdCcgcmVxdWlyZXMgdGhl IHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3Zv aWQgbmV3X2ZfdnVpbnQ2NG0xeDdfdCAodnVpbnQ2NG0xeDdfdCB0KSB7IH0gLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0xeDdfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZl NjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2Zfdmlu dDY0bTF4OF90ICh2aW50NjRtMXg4X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQg dHlwZSAndmludDY0bTF4OF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBv ciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92dWludDY0bTF4OF90ICh2 dWludDY0bTF4OF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0 bTF4OF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRl bnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92aW50NjRtMngyX3QgKHZpbnQ2NG0yeDJfdCB0 KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMngyX3QnIHJlcXVp cmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0K PiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMngyX3QgKHZ1aW50NjRtMngyX3QgdCkgeyB9IC8qIHsg ZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMngyX3QnIHJlcXVpcmVzIHRoZSB6dmU2 NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5l d19mX3ZpbnQ2NG0yeDNfdCAodmludDY0bTJ4M190IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2Fy Z3VtZW50IHR5cGUgJ3ZpbnQ2NG0yeDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6 dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2NG0y eDNfdCAodnVpbnQ2NG0yeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dnVpbnQ2NG0yeDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJ U0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTJ4NF90ICh2aW50NjRt Mng0X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTJ4NF90 JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259 IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92dWludDY0bTJ4NF90ICh2dWludDY0bTJ4NF90IHQpIHsg fSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0bTJ4NF90JyByZXF1aXJlcyB0 aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiAr dm9pZCBuZXdfZl92aW50NjRtNHgyX3QgKHZpbnQ2NG00eDJfdCB0KSB7IH0gICAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtNHgyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2 ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1 aW50NjRtNHgyX3QgKHZ1aW50NjRtNHgyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50 IHR5cGUgJ3Z1aW50NjRtNHgyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICsNCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQz Mm1mMngyX3QgKHZmbG9hdDMybWYyeDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQg dHlwZSAndmZsb2F0MzJtZjJ4Ml90JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0 ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMngz X3QgKHZmbG9hdDMybWYyeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dmZsb2F0MzJtZjJ4M190JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2 IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMng0X3QgKHZm bG9hdDMybWYyeDRfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0 MzJtZjJ4NF90JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBl eHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMng1X3QgKHZmbG9hdDMy bWYyeDVfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4 NV90JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNp b259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMng2X3QgKHZmbG9hdDMybWYyeDZf dCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4Nl90JyBy ZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0g Ki8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMng3X3QgKHZmbG9hdDMybWYyeDdfdCB0KSB7 IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4N190JyByZXF1aXJl cyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4g PiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMng4X3QgKHZmbG9hdDMybWYyeDhfdCB0KSB7IH0gLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4OF90JyByZXF1aXJlcyB0aGUg enZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArDQo+ ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtMXgyX3QgKHZmbG9hdDMybTF4Ml90IHQpIHsgfSAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0xeDJfdCcgcmVxdWlyZXMgdGhlIHp2 ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQg bmV3X2ZfdmZsb2F0MzJtMXgzX3QgKHZmbG9hdDMybTF4M190IHQpIHsgfSAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0xeDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZl NjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZs b2F0MzJtMXg0X3QgKHZmbG9hdDMybTF4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2ZmxvYXQzMm0xeDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2 NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtMXg1 X3QgKHZmbG9hdDMybTF4NV90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 ZmxvYXQzMm0xeDVfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJ U0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtMXg2X3QgKHZmbG9h dDMybTF4Nl90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0x eDZfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5z aW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtMXg3X3QgKHZmbG9hdDMybTF4N190 IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0xeDdfdCcgcmVx dWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICov DQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtMXg4X3QgKHZmbG9hdDMybTF4OF90IHQpIHsgfSAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0xeDhfdCcgcmVxdWlyZXMgdGhl IHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3Zv aWQgbmV3X2ZfdmZsb2F0MzJtMngyX3QgKHZmbG9hdDMybTJ4Ml90IHQpIHsgfSAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0yeDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwg enZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2Zf dmZsb2F0MzJtMngzX3QgKHZmbG9hdDMybTJ4M190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2ZmxvYXQzMm0yeDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6 dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJt Mng0X3QgKHZmbG9hdDMybTJ4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBl ICd2ZmxvYXQzMm0yeDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3Ig diBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0MzJtNHgyX3QgKHZm bG9hdDMybTR4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQz Mm00eDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0 ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXgyX3QgKHZmbG9hdDY0bTF4 Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDJfdCcg cmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBu ZXdfZl92ZmxvYXQ2NG0xeDNfdCAodmZsb2F0NjRtMXgzX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ig e2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4M190JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYg SVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTF4NF90ICh2Zmxv YXQ2NG0xeDRfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRt MXg0X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4g K3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXg1X3QgKHZmbG9hdDY0bTF4NV90IHQpIHsgfSAvKiB7IGRn LWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDVfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0 ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDZf dCAodmZsb2F0NjRtMXg2X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Zm bG9hdDY0bTF4Nl90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAq Lw0KPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTF4N190ICh2ZmxvYXQ2NG0xeDdfdCB0KSB7IH0g LyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMXg3X3QnIHJlcXVpcmVzIHRo ZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0 NjRtMXg4X3QgKHZmbG9hdDY0bTF4OF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0 eXBlICd2ZmxvYXQ2NG0xeDhfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNp b259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0yeDJfdCAodmZsb2F0NjRtMngyX3Qg dCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTJ4Ml90JyByZXF1 aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19m X3ZmbG9hdDY0bTJ4M190ICh2ZmxvYXQ2NG0yeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndmZsb2F0NjRtMngzX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0Eg ZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMng0X3QgKHZmbG9hdDY0 bTJ4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0yeDRf dCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9p ZCBuZXdfZl92ZmxvYXQ2NG00eDJfdCAodmZsb2F0NjRtNHgyX3QgdCkgeyB9IC8qIHsgZGctZXJy b3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTR4Ml90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9y IHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0xNC5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMTQuYw0KPiA+IGluZGV4IDcwZTA5ODliNmUxLi5iODY4 ZjMxNDE2MyAxMDA2NDQNCj4gPiAtLS0gYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3Yv cnZ2L2Jhc2UvdXNlci0xNC5jDQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9iYXNlL3VzZXItMTQuYw0KPiA+IEBAIC0zLDIwICszLDIwIEBADQo+ID4NCj4gPiAg I2luY2x1ZGUgInJpc2N2X3ZlY3Rvci5oIg0KPiA+DQo+ID4gLXZvaWQgZl92aW50OG1mOHgyX3Qg KCkge3ZpbnQ4bWY4eDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Zp bnQ4bWY4eDJfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50OG1mOHgyX3QgKCkge3Z1aW50OG1m OHgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDhtZjh4Ml90 J30gfSAqLw0KPiA+IC12b2lkIGZfdmludDhtZjh4M190ICgpIHt2aW50OG1mOHgzX3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50OG1mOHgzX3QnfSB9ICovDQo+ID4g LXZvaWQgZl92dWludDhtZjh4M190ICgpIHt2dWludDhtZjh4M190IHQ7fSAvKiB7IGRnLWVycm9y IHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ4bWY4eDNfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Zp bnQ4bWY4eDRfdCAoKSB7dmludDhtZjh4NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5 cGUgbmFtZSAndmludDhtZjh4NF90J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQ4bWY4eDRfdCAo KSB7dnVpbnQ4bWY4eDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1 aW50OG1mOHg0X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50OG1mOHg1X3QgKCkge3ZpbnQ4bWY4 eDVfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ4bWY4eDVfdCd9 IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50OG1mOHg1X3QgKCkge3Z1aW50OG1mOHg1X3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDhtZjh4NV90J30gfSAqLw0KPiA+ IC12b2lkIGZfdmludDhtZjh4Nl90ICgpIHt2aW50OG1mOHg2X3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2aW50OG1mOHg2X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92dWlu dDhtZjh4Nl90ICgpIHt2dWludDhtZjh4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5 cGUgbmFtZSAndnVpbnQ4bWY4eDZfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZpbnQ4bWY4eDdfdCAo KSB7dmludDhtZjh4N190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmlu dDhtZjh4N190J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQ4bWY4eDdfdCAoKSB7dnVpbnQ4bWY4 eDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50OG1mOHg3X3Qn fSB9ICovDQo+ID4gLXZvaWQgZl92aW50OG1mOHg4X3QgKCkge3ZpbnQ4bWY4eDhfdCB0O30gLyog eyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ4bWY4eDhfdCd9IH0gKi8NCj4gPiAt dm9pZCBmX3Z1aW50OG1mOHg4X3QgKCkge3Z1aW50OG1mOHg4X3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2dWludDhtZjh4OF90J30gfSAqLw0KPiA+ICt2b2lkIGZfdmlu dDhtZjh4Ml90ICgpIHt2aW50OG1mOHgyX3QgdDt9DQo+ID4gK3ZvaWQgZl92dWludDhtZjh4Ml90 ICgpIHt2dWludDhtZjh4Ml90IHQ7fQ0KPiA+ICt2b2lkIGZfdmludDhtZjh4M190ICgpIHt2aW50 OG1mOHgzX3QgdDt9DQo+ID4gK3ZvaWQgZl92dWludDhtZjh4M190ICgpIHt2dWludDhtZjh4M190 IHQ7fQ0KPiA+ICt2b2lkIGZfdmludDhtZjh4NF90ICgpIHt2aW50OG1mOHg0X3QgdDt9DQo+ID4g K3ZvaWQgZl92dWludDhtZjh4NF90ICgpIHt2dWludDhtZjh4NF90IHQ7fQ0KPiA+ICt2b2lkIGZf dmludDhtZjh4NV90ICgpIHt2aW50OG1mOHg1X3QgdDt9DQo+ID4gK3ZvaWQgZl92dWludDhtZjh4 NV90ICgpIHt2dWludDhtZjh4NV90IHQ7fQ0KPiA+ICt2b2lkIGZfdmludDhtZjh4Nl90ICgpIHt2 aW50OG1mOHg2X3QgdDt9DQo+ID4gK3ZvaWQgZl92dWludDhtZjh4Nl90ICgpIHt2dWludDhtZjh4 Nl90IHQ7fQ0KPiA+ICt2b2lkIGZfdmludDhtZjh4N190ICgpIHt2aW50OG1mOHg3X3QgdDt9DQo+ ID4gK3ZvaWQgZl92dWludDhtZjh4N190ICgpIHt2dWludDhtZjh4N190IHQ7fQ0KPiA+ICt2b2lk IGZfdmludDhtZjh4OF90ICgpIHt2aW50OG1mOHg4X3QgdDt9DQo+ID4gK3ZvaWQgZl92dWludDht Zjh4OF90ICgpIHt2dWludDhtZjh4OF90IHQ7fQ0KPiA+ICB2b2lkIGZfdmludDhtZjR4Ml90ICgp IHt2aW50OG1mNHgyX3QgdDt9DQo+ID4gIHZvaWQgZl92dWludDhtZjR4Ml90ICgpIHt2dWludDht ZjR4Ml90IHQ7fQ0KPiA+ICB2b2lkIGZfdmludDhtZjR4M190ICgpIHt2aW50OG1mNHgzX3QgdDt9 DQo+ID4gQEAgLTY3LDIwICs2NywyMCBAQCB2b2lkIGZfdmludDhtMng0X3QgKCkge3ZpbnQ4bTJ4 NF90IHQ7fQ0KPiA+ICB2b2lkIGZfdnVpbnQ4bTJ4NF90ICgpIHt2dWludDhtMng0X3QgdDt9DQo+ ID4gIHZvaWQgZl92aW50OG00eDJfdCAoKSB7dmludDhtNHgyX3QgdDt9DQo+ID4gIHZvaWQgZl92 dWludDhtNHgyX3QgKCkge3Z1aW50OG00eDJfdCB0O30NCj4gPiAtdm9pZCBmX3ZpbnQxNm1mNHgy X3QgKCkge3ZpbnQxNm1mNHgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1l ICd2aW50MTZtZjR4Ml90J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQxNm1mNHgyX3QgKCkge3Z1 aW50MTZtZjR4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQx Nm1mNHgyX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50MTZtZjR4M190ICgpIHt2aW50MTZtZjR4 M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDE2bWY0eDNfdCd9 IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50MTZtZjR4M190ICgpIHt2dWludDE2bWY0eDNfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MTZtZjR4M190J30gfSAqLw0K PiA+IC12b2lkIGZfdmludDE2bWY0eDRfdCAoKSB7dmludDE2bWY0eDRfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQxNm1mNHg0X3QnfSB9ICovDQo+ID4gLXZvaWQg Zl92dWludDE2bWY0eDRfdCAoKSB7dnVpbnQxNm1mNHg0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vu a25vd24gdHlwZSBuYW1lICd2dWludDE2bWY0eDRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZpbnQx Nm1mNHg1X3QgKCkge3ZpbnQxNm1mNHg1X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlw ZSBuYW1lICd2aW50MTZtZjR4NV90J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQxNm1mNHg1X3Qg KCkge3Z1aW50MTZtZjR4NV90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAn dnVpbnQxNm1mNHg1X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50MTZtZjR4Nl90ICgpIHt2aW50 MTZtZjR4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDE2bWY0 eDZfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50MTZtZjR4Nl90ICgpIHt2dWludDE2bWY0eDZf dCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MTZtZjR4Nl90J30g fSAqLw0KPiA+IC12b2lkIGZfdmludDE2bWY0eDdfdCAoKSB7dmludDE2bWY0eDdfdCB0O30gLyog eyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQxNm1mNHg3X3QnfSB9ICovDQo+ID4g LXZvaWQgZl92dWludDE2bWY0eDdfdCAoKSB7dnVpbnQxNm1mNHg3X3QgdDt9IC8qIHsgZGctZXJy b3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDE2bWY0eDdfdCd9IH0gKi8NCj4gPiAtdm9pZCBm X3ZpbnQxNm1mNHg4X3QgKCkge3ZpbnQxNm1mNHg4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25v d24gdHlwZSBuYW1lICd2aW50MTZtZjR4OF90J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQxNm1m NHg4X3QgKCkge3Z1aW50MTZtZjR4OF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUg bmFtZSAndnVpbnQxNm1mNHg4X3QnfSB9ICovDQo+ID4gK3ZvaWQgZl92aW50MTZtZjR4Ml90ICgp IHt2aW50MTZtZjR4Ml90IHQ7fQ0KPiA+ICt2b2lkIGZfdnVpbnQxNm1mNHgyX3QgKCkge3Z1aW50 MTZtZjR4Ml90IHQ7fQ0KPiA+ICt2b2lkIGZfdmludDE2bWY0eDNfdCAoKSB7dmludDE2bWY0eDNf dCB0O30NCj4gPiArdm9pZCBmX3Z1aW50MTZtZjR4M190ICgpIHt2dWludDE2bWY0eDNfdCB0O30N Cj4gPiArdm9pZCBmX3ZpbnQxNm1mNHg0X3QgKCkge3ZpbnQxNm1mNHg0X3QgdDt9DQo+ID4gK3Zv aWQgZl92dWludDE2bWY0eDRfdCAoKSB7dnVpbnQxNm1mNHg0X3QgdDt9DQo+ID4gK3ZvaWQgZl92 aW50MTZtZjR4NV90ICgpIHt2aW50MTZtZjR4NV90IHQ7fQ0KPiA+ICt2b2lkIGZfdnVpbnQxNm1m NHg1X3QgKCkge3Z1aW50MTZtZjR4NV90IHQ7fQ0KPiA+ICt2b2lkIGZfdmludDE2bWY0eDZfdCAo KSB7dmludDE2bWY0eDZfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50MTZtZjR4Nl90ICgpIHt2dWlu dDE2bWY0eDZfdCB0O30NCj4gPiArdm9pZCBmX3ZpbnQxNm1mNHg3X3QgKCkge3ZpbnQxNm1mNHg3 X3QgdDt9DQo+ID4gK3ZvaWQgZl92dWludDE2bWY0eDdfdCAoKSB7dnVpbnQxNm1mNHg3X3QgdDt9 DQo+ID4gK3ZvaWQgZl92aW50MTZtZjR4OF90ICgpIHt2aW50MTZtZjR4OF90IHQ7fQ0KPiA+ICt2 b2lkIGZfdnVpbnQxNm1mNHg4X3QgKCkge3Z1aW50MTZtZjR4OF90IHQ7fQ0KPiA+ICB2b2lkIGZf dmludDE2bWYyeDJfdCAoKSB7dmludDE2bWYyeDJfdCB0O30NCj4gPiAgdm9pZCBmX3Z1aW50MTZt ZjJ4Ml90ICgpIHt2dWludDE2bWYyeDJfdCB0O30NCj4gPiAgdm9pZCBmX3ZpbnQxNm1mMngzX3Qg KCkge3ZpbnQxNm1mMngzX3QgdDt9DQo+ID4gQEAgLTExNywyMCArMTE3LDIwIEBAIHZvaWQgZl92 aW50MTZtMng0X3QgKCkge3ZpbnQxNm0yeDRfdCB0O30NCj4gPiAgdm9pZCBmX3Z1aW50MTZtMng0 X3QgKCkge3Z1aW50MTZtMng0X3QgdDt9DQo+ID4gIHZvaWQgZl92aW50MTZtNHgyX3QgKCkge3Zp bnQxNm00eDJfdCB0O30NCj4gPiAgdm9pZCBmX3Z1aW50MTZtNHgyX3QgKCkge3Z1aW50MTZtNHgy X3QgdDt9DQo+ID4gLXZvaWQgZl92aW50MzJtZjJ4Ml90ICgpIHt2aW50MzJtZjJ4Ml90IHQ7fSAv KiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDMybWYyeDJfdCd9IH0gKi8NCj4g PiAtdm9pZCBmX3Z1aW50MzJtZjJ4Ml90ICgpIHt2dWludDMybWYyeDJfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MzJtZjJ4Ml90J30gfSAqLw0KPiA+IC12b2lk IGZfdmludDMybWYyeDNfdCAoKSB7dmludDMybWYyeDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ3ZpbnQzMm1mMngzX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92dWludDMy bWYyeDNfdCAoKSB7dnVpbnQzMm1mMngzX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlw ZSBuYW1lICd2dWludDMybWYyeDNfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZpbnQzMm1mMng0X3Qg KCkge3ZpbnQzMm1mMng0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 aW50MzJtZjJ4NF90J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQzMm1mMng0X3QgKCkge3Z1aW50 MzJtZjJ4NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQzMm1m Mng0X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50MzJtZjJ4NV90ICgpIHt2aW50MzJtZjJ4NV90 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDMybWYyeDVfdCd9IH0g Ki8NCj4gPiAtdm9pZCBmX3Z1aW50MzJtZjJ4NV90ICgpIHt2dWludDMybWYyeDVfdCB0O30gLyog eyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MzJtZjJ4NV90J30gfSAqLw0KPiA+ IC12b2lkIGZfdmludDMybWYyeDZfdCAoKSB7dmludDMybWYyeDZfdCB0O30gLyogeyBkZy1lcnJv ciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQzMm1mMng2X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92 dWludDMybWYyeDZfdCAoKSB7dnVpbnQzMm1mMng2X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25v d24gdHlwZSBuYW1lICd2dWludDMybWYyeDZfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZpbnQzMm1m Mng3X3QgKCkge3ZpbnQzMm1mMng3X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2aW50MzJtZjJ4N190J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQzMm1mMng3X3QgKCkg e3Z1aW50MzJtZjJ4N190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVp bnQzMm1mMng3X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50MzJtZjJ4OF90ICgpIHt2aW50MzJt ZjJ4OF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDMybWYyeDhf dCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50MzJtZjJ4OF90ICgpIHt2dWludDMybWYyeDhfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50MzJtZjJ4OF90J30gfSAq Lw0KPiA+ICt2b2lkIGZfdmludDMybWYyeDJfdCAoKSB7dmludDMybWYyeDJfdCB0O30NCj4gPiAr dm9pZCBmX3Z1aW50MzJtZjJ4Ml90ICgpIHt2dWludDMybWYyeDJfdCB0O30NCj4gPiArdm9pZCBm X3ZpbnQzMm1mMngzX3QgKCkge3ZpbnQzMm1mMngzX3QgdDt9DQo+ID4gK3ZvaWQgZl92dWludDMy bWYyeDNfdCAoKSB7dnVpbnQzMm1mMngzX3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50MzJtZjJ4NF90 ICgpIHt2aW50MzJtZjJ4NF90IHQ7fQ0KPiA+ICt2b2lkIGZfdnVpbnQzMm1mMng0X3QgKCkge3Z1 aW50MzJtZjJ4NF90IHQ7fQ0KPiA+ICt2b2lkIGZfdmludDMybWYyeDVfdCAoKSB7dmludDMybWYy eDVfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50MzJtZjJ4NV90ICgpIHt2dWludDMybWYyeDVfdCB0 O30NCj4gPiArdm9pZCBmX3ZpbnQzMm1mMng2X3QgKCkge3ZpbnQzMm1mMng2X3QgdDt9DQo+ID4g K3ZvaWQgZl92dWludDMybWYyeDZfdCAoKSB7dnVpbnQzMm1mMng2X3QgdDt9DQo+ID4gK3ZvaWQg Zl92aW50MzJtZjJ4N190ICgpIHt2aW50MzJtZjJ4N190IHQ7fQ0KPiA+ICt2b2lkIGZfdnVpbnQz Mm1mMng3X3QgKCkge3Z1aW50MzJtZjJ4N190IHQ7fQ0KPiA+ICt2b2lkIGZfdmludDMybWYyeDhf dCAoKSB7dmludDMybWYyeDhfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50MzJtZjJ4OF90ICgpIHt2 dWludDMybWYyeDhfdCB0O30NCj4gPiAgdm9pZCBmX3ZpbnQzMm0xeDJfdCAoKSB7dmludDMybTF4 Ml90IHQ7fQ0KPiA+ICB2b2lkIGZfdnVpbnQzMm0xeDJfdCAoKSB7dnVpbnQzMm0xeDJfdCB0O30N Cj4gPiAgdm9pZCBmX3ZpbnQzMm0xeDNfdCAoKSB7dmludDMybTF4M190IHQ7fQ0KPiA+IEBAIC0x NTMsMzUgKzE1MywzNSBAQCB2b2lkIGZfdmludDMybTJ4NF90ICgpIHt2aW50MzJtMng0X3QgdDt9 DQo+ID4gIHZvaWQgZl92dWludDMybTJ4NF90ICgpIHt2dWludDMybTJ4NF90IHQ7fQ0KPiA+ICB2 b2lkIGZfdmludDMybTR4Ml90ICgpIHt2aW50MzJtNHgyX3QgdDt9DQo+ID4gIHZvaWQgZl92dWlu dDMybTR4Ml90ICgpIHt2dWludDMybTR4Ml90IHQ7fQ0KPiA+IC12b2lkIGZfdmludDY0bTF4Ml90 ICgpIHt2aW50NjRtMXgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 aW50NjRtMXgyX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92dWludDY0bTF4Ml90ICgpIHt2dWludDY0 bTF4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0xeDJf dCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZpbnQ2NG0xeDNfdCAoKSB7dmludDY0bTF4M190IHQ7fSAv KiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTF4M190J30gfSAqLw0KPiA+ IC12b2lkIGZfdnVpbnQ2NG0xeDNfdCAoKSB7dnVpbnQ2NG0xeDNfdCB0O30gLyogeyBkZy1lcnJv ciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMXgzX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92 aW50NjRtMXg0X3QgKCkge3ZpbnQ2NG0xeDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0 eXBlIG5hbWUgJ3ZpbnQ2NG0xeDRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50NjRtMXg0X3Qg KCkge3Z1aW50NjRtMXg0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 dWludDY0bTF4NF90J30gfSAqLw0KPiA+IC12b2lkIGZfdmludDY0bTF4NV90ICgpIHt2aW50NjRt MXg1X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMXg1X3Qn fSB9ICovDQo+ID4gLXZvaWQgZl92dWludDY0bTF4NV90ICgpIHt2dWludDY0bTF4NV90IHQ7fSAv KiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0xeDVfdCd9IH0gKi8NCj4g PiAtdm9pZCBmX3ZpbnQ2NG0xeDZfdCAoKSB7dmludDY0bTF4Nl90IHQ7fSAvKiB7IGRnLWVycm9y IHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTF4Nl90J30gfSAqLw0KPiA+IC12b2lkIGZfdnVp bnQ2NG0xeDZfdCAoKSB7dnVpbnQ2NG0xeDZfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0 eXBlIG5hbWUgJ3Z1aW50NjRtMXg2X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50NjRtMXg3X3Qg KCkge3ZpbnQ2NG0xeDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Zp bnQ2NG0xeDdfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50NjRtMXg3X3QgKCkge3Z1aW50NjRt MXg3X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTF4N190 J30gfSAqLw0KPiA+IC12b2lkIGZfdmludDY0bTF4OF90ICgpIHt2aW50NjRtMXg4X3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMXg4X3QnfSB9ICovDQo+ID4g LXZvaWQgZl92dWludDY0bTF4OF90ICgpIHt2dWludDY0bTF4OF90IHQ7fSAvKiB7IGRnLWVycm9y IHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0xeDhfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Zp bnQ2NG0yeDJfdCAoKSB7dmludDY0bTJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5 cGUgbmFtZSAndmludDY0bTJ4Ml90J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQ2NG0yeDJfdCAo KSB7dnVpbnQ2NG0yeDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1 aW50NjRtMngyX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50NjRtMngzX3QgKCkge3ZpbnQ2NG0y eDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0yeDNfdCd9 IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50NjRtMngzX3QgKCkge3Z1aW50NjRtMngzX3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTJ4M190J30gfSAqLw0KPiA+ IC12b2lkIGZfdmludDY0bTJ4NF90ICgpIHt2aW50NjRtMng0X3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMng0X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92dWlu dDY0bTJ4NF90ICgpIHt2dWludDY0bTJ4NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5 cGUgbmFtZSAndnVpbnQ2NG0yeDRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZpbnQ2NG00eDJfdCAo KSB7dmludDY0bTR4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmlu dDY0bTR4Ml90J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQ2NG00eDJfdCAoKSB7dnVpbnQ2NG00 eDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtNHgyX3Qn fSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQzMm1mMngyX3QgKCkge3ZmbG9hdDMybWYyeDJfdCB0 O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybWYyeDJfdCd9IH0g Ki8NCj4gPiAtdm9pZCBmX3ZmbG9hdDMybWYyeDNfdCAoKSB7dmZsb2F0MzJtZjJ4M190IHQ7fSAv KiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtZjJ4M190J30gfSAqLw0K PiA+IC12b2lkIGZfdmZsb2F0MzJtZjJ4NF90ICgpIHt2ZmxvYXQzMm1mMng0X3QgdDt9IC8qIHsg ZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm1mMng0X3QnfSB9ICovDQo+ID4g LXZvaWQgZl92ZmxvYXQzMm1mMng1X3QgKCkge3ZmbG9hdDMybWYyeDVfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybWYyeDVfdCd9IH0gKi8NCj4gPiAtdm9p ZCBmX3ZmbG9hdDMybWYyeDZfdCAoKSB7dmZsb2F0MzJtZjJ4Nl90IHQ7fSAvKiB7IGRnLWVycm9y IHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtZjJ4Nl90J30gfSAqLw0KPiA+IC12b2lkIGZf dmZsb2F0MzJtZjJ4N190ICgpIHt2ZmxvYXQzMm1mMng3X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vu a25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm1mMng3X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92Zmxv YXQzMm1mMng4X3QgKCkge3ZmbG9hdDMybWYyeDhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3ZmbG9hdDMybWYyeDhfdCd9IH0gKi8NCj4gPiArdm9pZCBmX3ZpbnQ2NG0x eDJfdCAoKSB7dmludDY0bTF4Ml90IHQ7fQ0KPiA+ICt2b2lkIGZfdnVpbnQ2NG0xeDJfdCAoKSB7 dnVpbnQ2NG0xeDJfdCB0O30NCj4gPiArdm9pZCBmX3ZpbnQ2NG0xeDNfdCAoKSB7dmludDY0bTF4 M190IHQ7fQ0KPiA+ICt2b2lkIGZfdnVpbnQ2NG0xeDNfdCAoKSB7dnVpbnQ2NG0xeDNfdCB0O30N Cj4gPiArdm9pZCBmX3ZpbnQ2NG0xeDRfdCAoKSB7dmludDY0bTF4NF90IHQ7fQ0KPiA+ICt2b2lk IGZfdnVpbnQ2NG0xeDRfdCAoKSB7dnVpbnQ2NG0xeDRfdCB0O30NCj4gPiArdm9pZCBmX3ZpbnQ2 NG0xeDVfdCAoKSB7dmludDY0bTF4NV90IHQ7fQ0KPiA+ICt2b2lkIGZfdnVpbnQ2NG0xeDVfdCAo KSB7dnVpbnQ2NG0xeDVfdCB0O30NCj4gPiArdm9pZCBmX3ZpbnQ2NG0xeDZfdCAoKSB7dmludDY0 bTF4Nl90IHQ7fQ0KPiA+ICt2b2lkIGZfdnVpbnQ2NG0xeDZfdCAoKSB7dnVpbnQ2NG0xeDZfdCB0 O30NCj4gPiArdm9pZCBmX3ZpbnQ2NG0xeDdfdCAoKSB7dmludDY0bTF4N190IHQ7fQ0KPiA+ICt2 b2lkIGZfdnVpbnQ2NG0xeDdfdCAoKSB7dnVpbnQ2NG0xeDdfdCB0O30NCj4gPiArdm9pZCBmX3Zp bnQ2NG0xeDhfdCAoKSB7dmludDY0bTF4OF90IHQ7fQ0KPiA+ICt2b2lkIGZfdnVpbnQ2NG0xeDhf dCAoKSB7dnVpbnQ2NG0xeDhfdCB0O30NCj4gPiArdm9pZCBmX3ZpbnQ2NG0yeDJfdCAoKSB7dmlu dDY0bTJ4Ml90IHQ7fQ0KPiA+ICt2b2lkIGZfdnVpbnQ2NG0yeDJfdCAoKSB7dnVpbnQ2NG0yeDJf dCB0O30NCj4gPiArdm9pZCBmX3ZpbnQ2NG0yeDNfdCAoKSB7dmludDY0bTJ4M190IHQ7fQ0KPiA+ ICt2b2lkIGZfdnVpbnQ2NG0yeDNfdCAoKSB7dnVpbnQ2NG0yeDNfdCB0O30NCj4gPiArdm9pZCBm X3ZpbnQ2NG0yeDRfdCAoKSB7dmludDY0bTJ4NF90IHQ7fQ0KPiA+ICt2b2lkIGZfdnVpbnQ2NG0y eDRfdCAoKSB7dnVpbnQ2NG0yeDRfdCB0O30NCj4gPiArdm9pZCBmX3ZpbnQ2NG00eDJfdCAoKSB7 dmludDY0bTR4Ml90IHQ7fQ0KPiA+ICt2b2lkIGZfdnVpbnQ2NG00eDJfdCAoKSB7dnVpbnQ2NG00 eDJfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybWYyeDJfdCAoKSB7dmZsb2F0MzJtZjJ4Ml90 IHQ7fQ0KPiA+ICt2b2lkIGZfdmZsb2F0MzJtZjJ4M190ICgpIHt2ZmxvYXQzMm1mMngzX3QgdDt9 DQo+ID4gK3ZvaWQgZl92ZmxvYXQzMm1mMng0X3QgKCkge3ZmbG9hdDMybWYyeDRfdCB0O30NCj4g PiArdm9pZCBmX3ZmbG9hdDMybWYyeDVfdCAoKSB7dmZsb2F0MzJtZjJ4NV90IHQ7fQ0KPiA+ICt2 b2lkIGZfdmZsb2F0MzJtZjJ4Nl90ICgpIHt2ZmxvYXQzMm1mMng2X3QgdDt9DQo+ID4gK3ZvaWQg Zl92ZmxvYXQzMm1mMng3X3QgKCkge3ZmbG9hdDMybWYyeDdfdCB0O30NCj4gPiArdm9pZCBmX3Zm bG9hdDMybWYyeDhfdCAoKSB7dmZsb2F0MzJtZjJ4OF90IHQ7fQ0KPiA+ICB2b2lkIGZfdmZsb2F0 MzJtMXgyX3QgKCkge3ZmbG9hdDMybTF4Ml90IHQ7fQ0KPiA+ICB2b2lkIGZfdmZsb2F0MzJtMXgz X3QgKCkge3ZmbG9hdDMybTF4M190IHQ7fQ0KPiA+ICB2b2lkIGZfdmZsb2F0MzJtMXg0X3QgKCkg e3ZmbG9hdDMybTF4NF90IHQ7fQ0KPiA+IEBAIC0xOTMsMTQgKzE5MywxMDcgQEAgdm9pZCBmX3Zm bG9hdDMybTJ4Ml90ICgpIHt2ZmxvYXQzMm0yeDJfdCB0O30NCj4gPiAgdm9pZCBmX3ZmbG9hdDMy bTJ4M190ICgpIHt2ZmxvYXQzMm0yeDNfdCB0O30NCj4gPiAgdm9pZCBmX3ZmbG9hdDMybTJ4NF90 ICgpIHt2ZmxvYXQzMm0yeDRfdCB0O30NCj4gPiAgdm9pZCBmX3ZmbG9hdDMybTR4Ml90ICgpIHt2 ZmxvYXQzMm00eDJfdCB0O30NCj4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4Ml90ICgpIHt2ZmxvYXQ2 NG0xeDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4 Ml90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0NjRtMXgzX3QgKCkge3ZmbG9hdDY0bTF4M190 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXgzX3QnfSB9 ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQ2NG0xeDRfdCAoKSB7dmZsb2F0NjRtMXg0X3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDRfdCd9IH0gKi8NCj4g PiAtdm9pZCBmX3ZmbG9hdDY0bTF4NV90ICgpIHt2ZmxvYXQ2NG0xeDVfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4NV90J30gfSAqLw0KPiA+IC12b2lk IGZfdmZsb2F0NjRtMXg2X3QgKCkge3ZmbG9hdDY0bTF4Nl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1 bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXg2X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92Zmxv YXQ2NG0xeDdfdCAoKSB7dmZsb2F0NjRtMXg3X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24g dHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDdfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4 OF90ICgpIHt2ZmxvYXQ2NG0xeDhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3ZmbG9hdDY0bTF4OF90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0NjRtMngyX3QgKCkg e3ZmbG9hdDY0bTJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZs b2F0NjRtMngyX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQ2NG0yeDNfdCAoKSB7dmZsb2F0 NjRtMngzX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0y eDNfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDY0bTJ4NF90ICgpIHt2ZmxvYXQ2NG0yeDRf dCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTJ4NF90J30g fSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0NjRtNHgyX3QgKCkge3ZmbG9hdDY0bTR4Ml90IHQ7fSAv KiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtNHgyX3QnfSB9ICovDQo+ ID4gKw0KPiA+ICsvKiBUbyBzdXBwb3J0IHRhcmdldCBhdHRyaWJ1dGUsIHRoZSB2ZmxvYXQqbSp4 Kl90IG5lZWQgdG8gYmUgcmVnaXN0ZXJlZA0KPiA+ICsgICBpbiBhZHZhbmNlLiAgV2UgYWRkIHR5 cGUgYW5kIGFyZ3MvcmV0dXJuIHZhbHVlIGNoZWNrIGR1cmluZyB0aGUNCj4gPiArICAgc2V0IGN1 cnJlbnQgZnVuY3Rpb24gYnV0IGNhbm5vdCBjb3ZlciBiZWxvdyBjYXNlcy4gIEl0IGlzIHRoZSBz YW1lDQo+ID4gKyAgIGJlaGF2aW9yIGNvbXBhcmVkIHRvIGFhcmNoNjQgc3ZlLiAgKi8NCj4gPiAr dm9pZCBmX3ZmbG9hdDY0bTF4Ml90ICgpIHt2ZmxvYXQ2NG0xeDJfdCB0O30NCj4gPiArdm9pZCBm X3ZmbG9hdDY0bTF4M190ICgpIHt2ZmxvYXQ2NG0xeDNfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9h dDY0bTF4NF90ICgpIHt2ZmxvYXQ2NG0xeDRfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4 NV90ICgpIHt2ZmxvYXQ2NG0xeDVfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4Nl90ICgp IHt2ZmxvYXQ2NG0xeDZfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4N190ICgpIHt2Zmxv YXQ2NG0xeDdfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTF4OF90ICgpIHt2ZmxvYXQ2NG0x eDhfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTJ4Ml90ICgpIHt2ZmxvYXQ2NG0yeDJfdCB0 O30NCj4gPiArdm9pZCBmX3ZmbG9hdDY0bTJ4M190ICgpIHt2ZmxvYXQ2NG0yeDNfdCB0O30NCj4g PiArdm9pZCBmX3ZmbG9hdDY0bTJ4NF90ICgpIHt2ZmxvYXQ2NG0yeDRfdCB0O30NCj4gPiArdm9p ZCBmX3ZmbG9hdDY0bTR4Ml90ICgpIHt2ZmxvYXQ2NG00eDJfdCB0O30NCj4gPiArDQo+ID4gK3Zv aWQgbmV3X2ZfdmludDhtZjh4Ml90ICh2aW50OG1mOHgyX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndmludDhtZjh4Ml90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0 b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92 dWludDhtZjh4Ml90ICh2dWludDhtZjh4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2dWludDhtZjh4Ml90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3Ro ICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92aW50OG1mOHgz X3QgKHZpbnQ4bWY4eDNfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 aW50OG1mOHgzX3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQg JzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50OG1mOHgzX3QgKHZ1aW50 OG1mOHgzX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50OG1mOHgz X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBn aXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQ4bWY4eDRfdCAodmludDhtZjh4NF90IHQp IHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ4bWY4eDRfdCcgcmVxdWly ZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICov DQo+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ4bWY4eDRfdCAodnVpbnQ4bWY4eDRfdCB0KSB7IH0gLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ4bWY4eDRfdCcgcmVxdWlyZXMgdGhlIG1p bmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3Zv aWQgbmV3X2ZfdmludDhtZjh4NV90ICh2aW50OG1mOHg1X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndmludDhtZjh4NV90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0 b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92 dWludDhtZjh4NV90ICh2dWludDhtZjh4NV90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2dWludDhtZjh4NV90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3Ro ICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92aW50OG1mOHg2 X3QgKHZpbnQ4bWY4eDZfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 aW50OG1mOHg2X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQg JzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50OG1mOHg2X3QgKHZ1aW50 OG1mOHg2X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50OG1mOHg2 X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBn aXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQ4bWY4eDdfdCAodmludDhtZjh4N190IHQp IHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ4bWY4eDdfdCcgcmVxdWly ZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICov DQo+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ4bWY4eDdfdCAodnVpbnQ4bWY4eDdfdCB0KSB7IH0gLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ4bWY4eDdfdCcgcmVxdWlyZXMgdGhlIG1p bmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3Zv aWQgbmV3X2ZfdmludDhtZjh4OF90ICh2aW50OG1mOHg4X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndmludDhtZjh4OF90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0 b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92 dWludDhtZjh4OF90ICh2dWludDhtZjh4OF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2dWludDhtZjh4OF90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3Ro ICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArDQo+ID4gK3ZvaWQgbmV3X2Zfdmlu dDE2bWY0eDJfdCAodmludDE2bWY0eDJfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2aW50MTZtZjR4Ml90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3Ro ICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92dWludDE2bWY0 eDJfdCAodnVpbnQxNm1mNHgyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUg J3Z1aW50MTZtZjR4Ml90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcg YnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92aW50MTZtZjR4M190ICh2 aW50MTZtZjR4M190IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQx Nm1mNHgzX3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMy JyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50MTZtZjR4M190ICh2dWludDE2 bWY0eDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQxNm1mNHgz X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBn aXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQxNm1mNHg0X3QgKHZpbnQxNm1mNHg0X3Qg dCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDE2bWY0eDRfdCcgcmVx dWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9 ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQxNm1mNHg0X3QgKHZ1aW50MTZtZjR4NF90IHQpIHsg fSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDE2bWY0eDRfdCcgcmVxdWlyZXMg dGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ ID4gK3ZvaWQgbmV3X2ZfdmludDE2bWY0eDVfdCAodmludDE2bWY0eDVfdCB0KSB7IH0gICAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50MTZtZjR4NV90JyByZXF1aXJlcyB0aGUgbWlu aW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9p ZCBuZXdfZl92dWludDE2bWY0eDVfdCAodnVpbnQxNm1mNHg1X3QgdCkgeyB9IC8qIHsgZGctZXJy b3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50MTZtZjR4NV90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2 ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdf Zl92aW50MTZtZjR4Nl90ICh2aW50MTZtZjR4Nl90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2Fy Z3VtZW50IHR5cGUgJ3ZpbnQxNm1mNHg2X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBs ZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50 MTZtZjR4Nl90ICh2dWludDE2bWY0eDZfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQg dHlwZSAndnVpbnQxNm1mNHg2X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGgg JzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQxNm1mNHg3 X3QgKHZpbnQxNm1mNHg3X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dmludDE2bWY0eDdfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1 dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQxNm1mNHg3X3QgKHZ1 aW50MTZtZjR4N190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDE2 bWY0eDdfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzIn IGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDE2bWY0eDhfdCAodmludDE2bWY0 eDhfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50MTZtZjR4OF90 JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2 ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92dWludDE2bWY0eDhfdCAodnVpbnQxNm1mNHg4X3Qg dCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50MTZtZjR4OF90JyByZXF1 aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0g Ki8NCj4gPiArDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDMybWYyeDJfdCAodmludDMybWYyeDJfdCB0 KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50MzJtZjJ4Ml90JyByZXF1 aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0g Ki8NCj4gPiArdm9pZCBuZXdfZl92dWludDMybWYyeDJfdCAodnVpbnQzMm1mMngyX3QgdCkgeyB9 IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50MzJtZjJ4Ml90JyByZXF1aXJlcyB0 aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4g PiArdm9pZCBuZXdfZl92aW50MzJtZjJ4M190ICh2aW50MzJtZjJ4M190IHQpIHsgfSAgIC8qIHsg ZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQzMm1mMngzX3QnIHJlcXVpcmVzIHRoZSBtaW5p bWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lk IG5ld19mX3Z1aW50MzJtZjJ4M190ICh2dWludDMybWYyeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndnVpbnQzMm1mMngzX3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZl Y3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19m X3ZpbnQzMm1mMng0X3QgKHZpbnQzMm1mMng0X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndmludDMybWYyeDRfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxl bmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQz Mm1mMng0X3QgKHZ1aW50MzJtZjJ4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0 eXBlICd2dWludDMybWYyeDRfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAn NjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDMybWYyeDVf dCAodmludDMybWYyeDVfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 aW50MzJtZjJ4NV90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0 ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92dWludDMybWYyeDVfdCAodnVp bnQzMm1mMng1X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50MzJt ZjJ4NV90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicg aXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92aW50MzJtZjJ4Nl90ICh2aW50MzJtZjJ4 Nl90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQzMm1mMng2X3Qn IHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZl bn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50MzJtZjJ4Nl90ICh2dWludDMybWYyeDZfdCB0 KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQzMm1mMng2X3QnIHJlcXVp cmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAq Lw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQzMm1mMng3X3QgKHZpbnQzMm1mMng3X3QgdCkgeyB9ICAg LyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDMybWYyeDdfdCcgcmVxdWlyZXMgdGhl IG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4g K3ZvaWQgbmV3X2ZfdnVpbnQzMm1mMng3X3QgKHZ1aW50MzJtZjJ4N190IHQpIHsgfSAvKiB7IGRn LWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDMybWYyeDdfdCcgcmVxdWlyZXMgdGhlIG1pbmlt YWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQg bmV3X2ZfdmludDMybWYyeDhfdCAodmludDMybWYyeDhfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2aW50MzJtZjJ4OF90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0 b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92 dWludDMybWYyeDhfdCAodnVpbnQzMm1mMng4X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3Vt ZW50IHR5cGUgJ3Z1aW50MzJtZjJ4OF90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVu Z3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArDQo+ID4gK3ZvaWQgbmV3X2Zf dmludDY0bTF4Ml90ICh2aW50NjRtMXgyX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1l bnQgdHlwZSAndmludDY0bTF4Ml90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0 ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92dWludDY0bTF4Ml90 ICh2dWludDY0bTF4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWlu dDY0bTF4Ml90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBl eHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92aW50NjRtMXgzX3QgKHZpbnQ2NG0xeDNf dCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMXgzX3QnIHJl cXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAq Lw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMXgzX3QgKHZ1aW50NjRtMXgzX3QgdCkgeyB9IC8q IHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMXgzX3QnIHJlcXVpcmVzIHRoZSB6 dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lk IG5ld19mX3ZpbnQ2NG0xeDRfdCAodmludDY0bTF4NF90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ig e2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0xeDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRm LCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2 NG0xeDRfdCAodnVpbnQ2NG0xeDRfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlw ZSAndnVpbnQ2NG0xeDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3Ig diBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4NV90ICh2aW50 NjRtMXg1X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4 NV90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNp b259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92dWludDY0bTF4NV90ICh2dWludDY0bTF4NV90IHQp IHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0bTF4NV90JyByZXF1aXJl cyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4g PiArdm9pZCBuZXdfZl92aW50NjRtMXg2X3QgKHZpbnQ2NG0xeDZfdCB0KSB7IH0gICAvKiB7IGRn LWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMXg2X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgs IHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19m X3Z1aW50NjRtMXg2X3QgKHZ1aW50NjRtMXg2X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3Vt ZW50IHR5cGUgJ3Z1aW50NjRtMXg2X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZl NjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQ2NG0xeDdf dCAodmludDY0bTF4N190IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Zp bnQ2NG0xeDdfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0Eg ZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2NG0xeDdfdCAodnVpbnQ2NG0x eDdfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0xeDdfdCcg cmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9 ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4OF90ICh2aW50NjRtMXg4X3QgdCkgeyB9ICAg LyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4OF90JyByZXF1aXJlcyB0aGUg enZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9p ZCBuZXdfZl92dWludDY0bTF4OF90ICh2dWludDY0bTF4OF90IHQpIHsgfSAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2dWludDY0bTF4OF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2 NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92aW50 NjRtMngyX3QgKHZpbnQ2NG0yeDJfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0 eXBlICd2aW50NjRtMngyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9y IHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMngyX3QgKHZ1 aW50NjRtMngyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRt MngyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVu c2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQ2NG0yeDNfdCAodmludDY0bTJ4M190IHQp IHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0yeDNfdCcgcmVxdWly ZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2NG0yeDNfdCAodnVpbnQ2NG0yeDNfdCB0KSB7IH0gLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0yeDNfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0 eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3 X2ZfdmludDY0bTJ4NF90ICh2aW50NjRtMng0X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndmludDY0bTJ4NF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2 ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92dWludDY0bTJ4 NF90ICh2dWludDY0bTJ4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 dWludDY0bTJ4NF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElT QSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92aW50NjRtNHgyX3QgKHZpbnQ2NG00 eDJfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtNHgyX3Qn IHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0g fSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtNHgyX3QgKHZ1aW50NjRtNHgyX3QgdCkgeyB9 IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtNHgyX3QnIHJlcXVpcmVzIHRo ZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICsN Cj4gPiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMngyX3QgKHZmbG9hdDMybWYyeDJfdCB0KSB7IH0g LyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4Ml90JyByZXF1aXJlcyB0 aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4g PiArdm9pZCBuZXdfZl92ZmxvYXQzMm1mMngzX3QgKHZmbG9hdDMybWYyeDNfdCB0KSB7IH0gLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4M190JyByZXF1aXJlcyB0aGUg bWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiAr dm9pZCBuZXdfZl92ZmxvYXQzMm1mMng0X3QgKHZmbG9hdDMybWYyeDRfdCB0KSB7IH0gLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4NF90JyByZXF1aXJlcyB0aGUgbWlu aW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9p ZCBuZXdfZl92ZmxvYXQzMm1mMng1X3QgKHZmbG9hdDMybWYyeDVfdCB0KSB7IH0gLyogeyBkZy1l cnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4NV90JyByZXF1aXJlcyB0aGUgbWluaW1h bCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBu ZXdfZl92ZmxvYXQzMm1mMng2X3QgKHZmbG9hdDMybWYyeDZfdCB0KSB7IH0gLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4Nl90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2 ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdf Zl92ZmxvYXQzMm1mMng3X3QgKHZmbG9hdDMybWYyeDdfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7 YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4N190JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0 b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92 ZmxvYXQzMm1mMng4X3QgKHZmbG9hdDMybWYyeDhfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndmZsb2F0MzJtZjJ4OF90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3Ig bGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArDQo+ID4gK3ZvaWQgbmV3 X2ZfdmZsb2F0NjRtMXgyX3QgKHZmbG9hdDY0bTF4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHth cmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElT QSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDNfdCAodmZsb2F0 NjRtMXgzX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4 M190JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2 b2lkIG5ld19mX3ZmbG9hdDY0bTF4NF90ICh2ZmxvYXQ2NG0xeDRfdCB0KSB7IH0gLyogeyBkZy1l cnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMXg0X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQg b3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXg1X3Qg KHZmbG9hdDY0bTF4NV90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2Zmxv YXQ2NG0xeDVfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8N Cj4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDZfdCAodmZsb2F0NjRtMXg2X3QgdCkgeyB9IC8q IHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4Nl90JyByZXF1aXJlcyB0aGUg enZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0 bTF4N190ICh2ZmxvYXQ2NG0xeDdfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlw ZSAndmZsb2F0NjRtMXg3X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9u fSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXg4X3QgKHZmbG9hdDY0bTF4OF90IHQp IHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDhfdCcgcmVxdWly ZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92 ZmxvYXQ2NG0yeDJfdCAodmZsb2F0NjRtMngyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3Vt ZW50IHR5cGUgJ3ZmbG9hdDY0bTJ4Ml90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4 dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTJ4M190ICh2ZmxvYXQ2NG0y eDNfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMngzX3Qn IHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQg bmV3X2ZfdmZsb2F0NjRtMng0X3QgKHZmbG9hdDY0bTJ4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0yeDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2 IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG00eDJfdCAodmZs b2F0NjRtNHgyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0 bTR4Ml90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNl ci0xNS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMTUu Yw0KPiA+IGluZGV4IDJhNjE1ZjgwODE2Li4wOTRiN2VmZGVmNCAxMDA2NDQNCj4gPiAtLS0gYS9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0xNS5jDQo+ID4gKysr IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3VzZXItMTUuYw0KPiA+ IEBAIC0xNTMsMjggKzE1MywyOCBAQCB2b2lkIGZfdmludDMybTJ4NF90ICgpIHt2aW50MzJtMng0 X3QgdDt9DQo+ID4gIHZvaWQgZl92dWludDMybTJ4NF90ICgpIHt2dWludDMybTJ4NF90IHQ7fQ0K PiA+ICB2b2lkIGZfdmludDMybTR4Ml90ICgpIHt2aW50MzJtNHgyX3QgdDt9DQo+ID4gIHZvaWQg Zl92dWludDMybTR4Ml90ICgpIHt2dWludDMybTR4Ml90IHQ7fQ0KPiA+IC12b2lkIGZfdmludDY0 bTF4Ml90ICgpIHt2aW50NjRtMXgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2aW50NjRtMXgyX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92dWludDY0bTF4Ml90ICgpIHt2 dWludDY0bTF4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2 NG0xeDJfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZpbnQ2NG0xeDNfdCAoKSB7dmludDY0bTF4M190 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTF4M190J30gfSAq Lw0KPiA+IC12b2lkIGZfdnVpbnQ2NG0xeDNfdCAoKSB7dnVpbnQ2NG0xeDNfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMXgzX3QnfSB9ICovDQo+ID4gLXZv aWQgZl92aW50NjRtMXg0X3QgKCkge3ZpbnQ2NG0xeDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0xeDRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50NjRt MXg0X3QgKCkge3Z1aW50NjRtMXg0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2dWludDY0bTF4NF90J30gfSAqLw0KPiA+IC12b2lkIGZfdmludDY0bTF4NV90ICgpIHt2 aW50NjRtMXg1X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRt MXg1X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92dWludDY0bTF4NV90ICgpIHt2dWludDY0bTF4NV90 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0xeDVfdCd9IH0g Ki8NCj4gPiAtdm9pZCBmX3ZpbnQ2NG0xeDZfdCAoKSB7dmludDY0bTF4Nl90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTF4Nl90J30gfSAqLw0KPiA+IC12b2lk IGZfdnVpbnQ2NG0xeDZfdCAoKSB7dnVpbnQ2NG0xeDZfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtMXg2X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50NjRt MXg3X3QgKCkge3ZpbnQ2NG0xeDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3ZpbnQ2NG0xeDdfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50NjRtMXg3X3QgKCkge3Z1 aW50NjRtMXg3X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0 bTF4N190J30gfSAqLw0KPiA+IC12b2lkIGZfdmludDY0bTF4OF90ICgpIHt2aW50NjRtMXg4X3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMXg4X3QnfSB9ICov DQo+ID4gLXZvaWQgZl92dWludDY0bTF4OF90ICgpIHt2dWludDY0bTF4OF90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0xeDhfdCd9IH0gKi8NCj4gPiAtdm9p ZCBmX3ZpbnQ2NG0yeDJfdCAoKSB7dmludDY0bTJ4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndmludDY0bTJ4Ml90J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQ2NG0y eDJfdCAoKSB7dnVpbnQ2NG0yeDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3Z1aW50NjRtMngyX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92aW50NjRtMngzX3QgKCkge3Zp bnQ2NG0yeDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2NG0y eDNfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Z1aW50NjRtMngzX3QgKCkge3Z1aW50NjRtMngzX3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTJ4M190J30gfSAq Lw0KPiA+IC12b2lkIGZfdmludDY0bTJ4NF90ICgpIHt2aW50NjRtMng0X3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50NjRtMng0X3QnfSB9ICovDQo+ID4gLXZvaWQg Zl92dWludDY0bTJ4NF90ICgpIHt2dWludDY0bTJ4NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtu b3duIHR5cGUgbmFtZSAndnVpbnQ2NG0yeDRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZpbnQ2NG00 eDJfdCAoKSB7dmludDY0bTR4Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmludDY0bTR4Ml90J30gfSAqLw0KPiA+IC12b2lkIGZfdnVpbnQ2NG00eDJfdCAoKSB7dnVp bnQ2NG00eDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRt NHgyX3QnfSB9ICovDQo+ID4gK3ZvaWQgZl92aW50NjRtMXgyX3QgKCkge3ZpbnQ2NG0xeDJfdCB0 O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMXgyX3QgKCkge3Z1aW50NjRtMXgyX3QgdDt9DQo+ID4g K3ZvaWQgZl92aW50NjRtMXgzX3QgKCkge3ZpbnQ2NG0xeDNfdCB0O30NCj4gPiArdm9pZCBmX3Z1 aW50NjRtMXgzX3QgKCkge3Z1aW50NjRtMXgzX3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtMXg0 X3QgKCkge3ZpbnQ2NG0xeDRfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMXg0X3QgKCkge3Z1 aW50NjRtMXg0X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtMXg1X3QgKCkge3ZpbnQ2NG0xeDVf dCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMXg1X3QgKCkge3Z1aW50NjRtMXg1X3QgdDt9DQo+ ID4gK3ZvaWQgZl92aW50NjRtMXg2X3QgKCkge3ZpbnQ2NG0xeDZfdCB0O30NCj4gPiArdm9pZCBm X3Z1aW50NjRtMXg2X3QgKCkge3Z1aW50NjRtMXg2X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRt MXg3X3QgKCkge3ZpbnQ2NG0xeDdfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMXg3X3QgKCkg e3Z1aW50NjRtMXg3X3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtMXg4X3QgKCkge3ZpbnQ2NG0x eDhfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMXg4X3QgKCkge3Z1aW50NjRtMXg4X3QgdDt9 DQo+ID4gK3ZvaWQgZl92aW50NjRtMngyX3QgKCkge3ZpbnQ2NG0yeDJfdCB0O30NCj4gPiArdm9p ZCBmX3Z1aW50NjRtMngyX3QgKCkge3Z1aW50NjRtMngyX3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50 NjRtMngzX3QgKCkge3ZpbnQ2NG0yeDNfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMngzX3Qg KCkge3Z1aW50NjRtMngzX3QgdDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtMng0X3QgKCkge3ZpbnQ2 NG0yeDRfdCB0O30NCj4gPiArdm9pZCBmX3Z1aW50NjRtMng0X3QgKCkge3Z1aW50NjRtMng0X3Qg dDt9DQo+ID4gK3ZvaWQgZl92aW50NjRtNHgyX3QgKCkge3ZpbnQ2NG00eDJfdCB0O30NCj4gPiAr dm9pZCBmX3Z1aW50NjRtNHgyX3QgKCkge3Z1aW50NjRtNHgyX3QgdDt9DQo+ID4gIHZvaWQgZl92 ZmxvYXQzMm1mMngyX3QgKCkge3ZmbG9hdDMybWYyeDJfdCB0O30NCj4gPiAgdm9pZCBmX3ZmbG9h dDMybWYyeDNfdCAoKSB7dmZsb2F0MzJtZjJ4M190IHQ7fQ0KPiA+ICB2b2lkIGZfdmZsb2F0MzJt ZjJ4NF90ICgpIHt2ZmxvYXQzMm1mMng0X3QgdDt9DQo+ID4gQEAgLTE5MywxNCArMTkzLDU0IEBA IHZvaWQgZl92ZmxvYXQzMm0yeDJfdCAoKSB7dmZsb2F0MzJtMngyX3QgdDt9DQo+ID4gIHZvaWQg Zl92ZmxvYXQzMm0yeDNfdCAoKSB7dmZsb2F0MzJtMngzX3QgdDt9DQo+ID4gIHZvaWQgZl92Zmxv YXQzMm0yeDRfdCAoKSB7dmZsb2F0MzJtMng0X3QgdDt9DQo+ID4gIHZvaWQgZl92ZmxvYXQzMm00 eDJfdCAoKSB7dmZsb2F0MzJtNHgyX3QgdDt9DQo+ID4gLXZvaWQgZl92ZmxvYXQ2NG0xeDJfdCAo KSB7dmZsb2F0NjRtMXgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 ZmxvYXQ2NG0xeDJfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4M190ICgpIHt2Zmxv YXQ2NG0xeDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0 bTF4M190J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0NjRtMXg0X3QgKCkge3ZmbG9hdDY0bTF4 NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXg0X3Qn fSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQ2NG0xeDVfdCAoKSB7dmZsb2F0NjRtMXg1X3QgdDt9 IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDVfdCd9IH0gKi8N Cj4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4Nl90ICgpIHt2ZmxvYXQ2NG0xeDZfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4Nl90J30gfSAqLw0KPiA+IC12 b2lkIGZfdmZsb2F0NjRtMXg3X3QgKCkge3ZmbG9hdDY0bTF4N190IHQ7fSAvKiB7IGRnLWVycm9y IHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXg3X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92 ZmxvYXQ2NG0xeDhfdCAoKSB7dmZsb2F0NjRtMXg4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25v d24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDhfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDY0 bTJ4Ml90ICgpIHt2ZmxvYXQ2NG0yeDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBl IG5hbWUgJ3ZmbG9hdDY0bTJ4Ml90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0NjRtMngzX3Qg KCkge3ZmbG9hdDY0bTJ4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAn dmZsb2F0NjRtMngzX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQ2NG0yeDRfdCAoKSB7dmZs b2F0NjRtMng0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2 NG0yeDRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDY0bTR4Ml90ICgpIHt2ZmxvYXQ2NG00 eDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTR4Ml90 J30gfSAqLw0KPiA+ICsNCj4gPiArLyogVG8gc3VwcG9ydCB0YXJnZXQgYXR0cmlidXRlLCB0aGUg dmZsb2F0Km0qeCpfdCBuZWVkIHRvIGJlIHJlZ2lzdGVyZWQNCj4gPiArICAgaW4gYWR2YW5jZS4g IFdlIGFkZCB0eXBlIGFuZCBhcmdzL3JldHVybiB2YWx1ZSBjaGVjayBkdXJpbmcgdGhlDQo+ID4g KyAgIHNldCBjdXJyZW50IGZ1bmN0aW9uIGJ1dCBjYW5ub3QgY292ZXIgYmVsb3cgY2FzZXMuICBJ dCBpcyB0aGUgc2FtZQ0KPiA+ICsgICBiZWhhdmlvciBjb21wYXJlZCB0byBhYXJjaDY0IHN2ZS4g ICovDQo+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0xeDJfdCAoKSB7dmZsb2F0NjRtMXgyX3QgdDt9DQo+ ID4gK3ZvaWQgZl92ZmxvYXQ2NG0xeDNfdCAoKSB7dmZsb2F0NjRtMXgzX3QgdDt9DQo+ID4gK3Zv aWQgZl92ZmxvYXQ2NG0xeDRfdCAoKSB7dmZsb2F0NjRtMXg0X3QgdDt9DQo+ID4gK3ZvaWQgZl92 ZmxvYXQ2NG0xeDVfdCAoKSB7dmZsb2F0NjRtMXg1X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQ2 NG0xeDZfdCAoKSB7dmZsb2F0NjRtMXg2X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0xeDdf dCAoKSB7dmZsb2F0NjRtMXg3X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0xeDhfdCAoKSB7 dmZsb2F0NjRtMXg4X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0yeDJfdCAoKSB7dmZsb2F0 NjRtMngyX3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0yeDNfdCAoKSB7dmZsb2F0NjRtMngz X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0yeDRfdCAoKSB7dmZsb2F0NjRtMng0X3QgdDt9 DQo+ID4gK3ZvaWQgZl92ZmxvYXQ2NG00eDJfdCAoKSB7dmZsb2F0NjRtNHgyX3QgdDt9DQo+ID4g Kw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQ2NG0xeDJfdCAodmludDY0bTF4Ml90IHQpIHsgfSAgIC8q IHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0xeDJfdCcgcmVxdWlyZXMgdGhlIHp2 ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQg bmV3X2ZfdnVpbnQ2NG0xeDJfdCAodnVpbnQ2NG0xeDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7 YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0xeDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRm LCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDY0 bTF4M190ICh2aW50NjRtMXgzX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlw ZSAndmludDY0bTF4M190JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2 IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92dWludDY0bTF4M190ICh2dWlu dDY0bTF4M190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0bTF4 M190JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNp b259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92aW50NjRtMXg0X3QgKHZpbnQ2NG0xeDRfdCB0KSB7 IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50NjRtMXg0X3QnIHJlcXVpcmVz IHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ ICt2b2lkIG5ld19mX3Z1aW50NjRtMXg0X3QgKHZ1aW50NjRtMXg0X3QgdCkgeyB9IC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMXg0X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgs IHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19m X3ZpbnQ2NG0xeDVfdCAodmludDY0bTF4NV90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3Vt ZW50IHR5cGUgJ3ZpbnQ2NG0xeDVfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2 NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2NG0xeDVf dCAodnVpbnQ2NG0xeDVfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVp bnQ2NG0xeDVfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0Eg ZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTF4Nl90ICh2aW50NjRtMXg2 X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTF4Nl90JyBy ZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0g Ki8NCj4gPiArdm9pZCBuZXdfZl92dWludDY0bTF4Nl90ICh2dWludDY0bTF4Nl90IHQpIHsgfSAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0bTF4Nl90JyByZXF1aXJlcyB0aGUg enZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9p ZCBuZXdfZl92aW50NjRtMXg3X3QgKHZpbnQ2NG0xeDdfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2aW50NjRtMXg3X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0 ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50 NjRtMXg3X3QgKHZ1aW50NjRtMXg3X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5 cGUgJ3Z1aW50NjRtMXg3X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9y IHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQ2NG0xeDhfdCAodmlu dDY0bTF4OF90IHQpIHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0x eDhfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5z aW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdnVpbnQ2NG0xeDhfdCAodnVpbnQ2NG0xeDhfdCB0 KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0xeDhfdCcgcmVxdWly ZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ ID4gK3ZvaWQgbmV3X2ZfdmludDY0bTJ4Ml90ICh2aW50NjRtMngyX3QgdCkgeyB9ICAgLyogeyBk Zy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bTJ4Ml90JyByZXF1aXJlcyB0aGUgenZlNjR4 LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdf Zl92dWludDY0bTJ4Ml90ICh2dWludDY0bTJ4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2dWludDY0bTJ4Ml90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2 ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92aW50NjRtMngz X3QgKHZpbnQ2NG0yeDNfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 aW50NjRtMngzX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNB IGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3Z1aW50NjRtMngzX3QgKHZ1aW50NjRt MngzX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMngzX3Qn IHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0g fSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZpbnQ2NG0yeDRfdCAodmludDY0bTJ4NF90IHQpIHsgfSAg IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0yeDRfdCcgcmVxdWlyZXMgdGhl IHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3Zv aWQgbmV3X2ZfdnVpbnQ2NG0yeDRfdCAodnVpbnQ2NG0yeDRfdCB0KSB7IH0gLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0yeDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZl NjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2Zfdmlu dDY0bTR4Ml90ICh2aW50NjRtNHgyX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQg dHlwZSAndmludDY0bTR4Ml90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBv ciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92dWludDY0bTR4Ml90ICh2 dWludDY0bTR4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0 bTR4Ml90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRl bnNpb259IH0gKi8NCj4gPiArDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXgyX3QgKHZmbG9h dDY0bTF4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0x eDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiAr dm9pZCBuZXdfZl92ZmxvYXQ2NG0xeDNfdCAodmZsb2F0NjRtMXgzX3QgdCkgeyB9IC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4M190JyByZXF1aXJlcyB0aGUgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTF4NF90 ICh2ZmxvYXQ2NG0xeDRfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZs b2F0NjRtMXg0X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICov DQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMXg1X3QgKHZmbG9hdDY0bTF4NV90IHQpIHsgfSAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDVfdCcgcmVxdWlyZXMgdGhl IHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2 NG0xeDZfdCAodmZsb2F0NjRtMXg2X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5 cGUgJ3ZmbG9hdDY0bTF4Nl90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lv bn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mX3ZmbG9hdDY0bTF4N190ICh2ZmxvYXQ2NG0xeDdfdCB0 KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMXg3X3QnIHJlcXVp cmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2Zf dmZsb2F0NjRtMXg4X3QgKHZmbG9hdDY0bTF4OF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDhfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBl eHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZl92ZmxvYXQ2NG0yeDJfdCAodmZsb2F0NjRt MngyX3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTJ4Ml90 JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lk IG5ld19mX3ZmbG9hdDY0bTJ4M190ICh2ZmxvYXQ2NG0yeDNfdCB0KSB7IH0gLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMngzX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3Ig diBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZfdmZsb2F0NjRtMng0X3QgKHZm bG9hdDY0bTJ4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2 NG0yeDRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4g PiArdm9pZCBuZXdfZl92ZmxvYXQ2NG00eDJfdCAodmZsb2F0NjRtNHgyX3QgdCkgeyB9IC8qIHsg ZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTR4Ml90JyByZXF1aXJlcyB0aGUgenZl NjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0yLmMgYi9nY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci0yLmMNCj4gPiBpbmRleCA5MmY0ZWUwMmQyMC4u NmUwOGY1MjJkOWYgMTAwNjQ0DQo+ID4gLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9iYXNlL3VzZXItMi5jDQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L3Jpc2N2L3J2di9iYXNlL3VzZXItMi5jDQo+ID4gQEAgLTU0LDEyICs1NCwyNyBAQCB2b2lkIGZv bzQ3ICgpIHt2aW50NjRtNF90IHQ7fQ0KPiA+ICB2b2lkIGZvbzQ4ICgpIHt2dWludDY0bTRfdCB0 O30NCj4gPiAgdm9pZCBmb280OSAoKSB7dmludDY0bThfdCB0O30NCj4gPiAgdm9pZCBmb281MCAo KSB7dnVpbnQ2NG04X3QgdDt9DQo+ID4gLXZvaWQgZm9vNTcgKCkge3ZmbG9hdDMybWYyX3QgdDt9 IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm1mMl90J30gfSAqLw0K PiA+IC12b2lkIGZvbzU4ICgpIHt2ZmxvYXQzMm0xX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25v d24gdHlwZSBuYW1lICd2ZmxvYXQzMm0xX3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vNTkgKCkge3Zm bG9hdDMybTJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMy bTJfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb282MCAoKSB7dmZsb2F0MzJtNF90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtNF90J30gfSAqLw0KPiA+IC12b2lk IGZvbzYxICgpIHt2ZmxvYXQzMm04X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2ZmxvYXQzMm04X3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vNjIgKCkge3ZmbG9hdDY0bTFf dCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTFfdCd9IH0g Ki8NCj4gPiAtdm9pZCBmb282MyAoKSB7dmZsb2F0NjRtMl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1 bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMl90J30gfSAqLw0KPiA+IC12b2lkIGZvbzY0ICgp IHt2ZmxvYXQ2NG00X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2Zmxv YXQ2NG00X3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vNjUgKCkge3ZmbG9hdDY0bThfdCB0O30gLyog eyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bThfdCd9IH0gKi8NCj4gPiAr DQo+ID4gKy8qIFRvIHN1cHBvcnQgdGFyZ2V0IGF0dHJpYnV0ZSwgdGhlIHZmbG9hdCptKngqX3Qg bmVlZCB0byBiZSByZWdpc3RlcmVkDQo+ID4gKyAgIGluIGFkdmFuY2UuICBXZSBhZGQgdHlwZSBh bmQgYXJncy9yZXR1cm4gdmFsdWUgY2hlY2sgZHVyaW5nIHRoZQ0KPiA+ICsgICBzZXQgY3VycmVu dCBmdW5jdGlvbiBidXQgY2Fubm90IGNvdmVyIGJlbG93IGNhc2VzLiAgSXQgaXMgdGhlIHNhbWUN Cj4gPiArICAgYmVoYXZpb3IgY29tcGFyZWQgdG8gYWFyY2g2NCBzdmUuICAqLw0KPiA+ICt2b2lk IGZvbzU3ICgpIHt2ZmxvYXQzMm1mMl90IHQ7fQ0KPiA+ICt2b2lkIGZvbzU4ICgpIHt2ZmxvYXQz Mm0xX3QgdDt9DQo+ID4gK3ZvaWQgZm9vNTkgKCkge3ZmbG9hdDMybTJfdCB0O30NCj4gPiArdm9p ZCBmb282MCAoKSB7dmZsb2F0MzJtNF90IHQ7fQ0KPiA+ICt2b2lkIGZvbzYxICgpIHt2ZmxvYXQz Mm04X3QgdDt9DQo+ID4gK3ZvaWQgZm9vNjIgKCkge3ZmbG9hdDY0bTFfdCB0O30NCj4gPiArdm9p ZCBmb282MyAoKSB7dmZsb2F0NjRtMl90IHQ7fQ0KPiA+ICt2b2lkIGZvbzY0ICgpIHt2ZmxvYXQ2 NG00X3QgdDt9DQo+ID4gK3ZvaWQgZm9vNjUgKCkge3ZmbG9hdDY0bThfdCB0O30NCj4gPiArDQo+ ID4gK3ZvaWQgbmV3X2ZvbzU3ICh2ZmxvYXQzMm1mMl90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHth cmd1bWVudCB0eXBlICd2ZmxvYXQzMm1mMl90JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYs IHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vNTggKHZm bG9hdDMybTFfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMy bTFfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5z aW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzU5ICh2ZmxvYXQzMm0yX3QgdCkgeyB9ICAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm0yX3QnIHJlcXVpcmVzIHRoZSB6dmUz MmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5l d19mb282MCAodmZsb2F0MzJtNF90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlw ZSAndmZsb2F0MzJtNF90JyByZXF1aXJlcyB0aGUgenZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2 IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vNjEgKHZmbG9hdDMybThfdCB0 KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDMybThfdCcgcmVxdWly ZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ ID4gK3ZvaWQgbmV3X2ZvbzYyICh2ZmxvYXQ2NG0xX3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHth cmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0Eg ZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzYzICh2ZmxvYXQ2NG0yX3QgdCkgeyB9 ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0yX3QnIHJlcXVpcmVzIHRo ZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzY0ICh2 ZmxvYXQ2NG00X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2 NG00X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4g K3ZvaWQgbmV3X2ZvbzY1ICh2ZmxvYXQ2NG04X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2ZmxvYXQ2NG04X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0 ZW5zaW9ufSB9ICovDQo+ID4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9y aXNjdi9ydnYvYmFzZS91c2VyLTMuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYmFzZS91c2VyLTMuYw0KPiA+IGluZGV4IDNhNDI1NzIxODYzLi40ZmI0MDIzMzUwOSAxMDA2 NDQNCj4gPiAtLS0gYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNl ci0zLmMNCj4gPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2Uv dXNlci0zLmMNCj4gPiBAQCAtNTksNyArNTksMTcgQEAgdm9pZCBmb281OCAoKSB7dmZsb2F0MzJt MV90IHQ7fQ0KPiA+ICB2b2lkIGZvbzU5ICgpIHt2ZmxvYXQzMm0yX3QgdDt9DQo+ID4gIHZvaWQg Zm9vNjAgKCkge3ZmbG9hdDMybTRfdCB0O30NCj4gPiAgdm9pZCBmb282MSAoKSB7dmZsb2F0MzJt OF90IHQ7fQ0KPiA+IC12b2lkIGZvbzYyICgpIHt2ZmxvYXQ2NG0xX3QgdDt9IC8qIHsgZGctZXJy b3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xX3QnfSB9ICovDQo+ID4gLXZvaWQgZm9v NjMgKCkge3ZmbG9hdDY0bTJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUg J3ZmbG9hdDY0bTJfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb282NCAoKSB7dmZsb2F0NjRtNF90IHQ7 fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtNF90J30gfSAqLw0K PiA+IC12b2lkIGZvbzY1ICgpIHt2ZmxvYXQ2NG04X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25v d24gdHlwZSBuYW1lICd2ZmxvYXQ2NG04X3QnfSB9ICovDQo+ID4gKw0KPiA+ICsvKiBUbyBzdXBw b3J0IHRhcmdldCBhdHRyaWJ1dGUsIHRoZSB2ZmxvYXQqbSp4Kl90IG5lZWQgdG8gYmUgcmVnaXN0 ZXJlZA0KPiA+ICsgICBpbiBhZHZhbmNlLiAgV2UgYWRkIHR5cGUgYW5kIGFyZ3MvcmV0dXJuIHZh bHVlIGNoZWNrIGR1cmluZyB0aGUNCj4gPiArICAgc2V0IGN1cnJlbnQgZnVuY3Rpb24gYnV0IGNh bm5vdCBjb3ZlciBiZWxvdyBjYXNlcy4gIEl0IGlzIHRoZSBzYW1lDQo+ID4gKyAgIGJlaGF2aW9y IGNvbXBhcmVkIHRvIGFhcmNoNjQgc3ZlLiAgKi8NCj4gPiArdm9pZCBmb282MiAoKSB7dmZsb2F0 NjRtMV90IHQ7fQ0KPiA+ICt2b2lkIGZvbzYzICgpIHt2ZmxvYXQ2NG0yX3QgdDt9DQo+ID4gK3Zv aWQgZm9vNjQgKCkge3ZmbG9hdDY0bTRfdCB0O30NCj4gPiArdm9pZCBmb282NSAoKSB7dmZsb2F0 NjRtOF90IHQ7fQ0KPiA+ICsNCj4gPiArdm9pZCBuZXdfZm9vNjIgKHZmbG9hdDY0bTFfdCB0KSB7 IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMV90JyByZXF1aXJlcyB0 aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb282MyAo dmZsb2F0NjRtMl90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2 NG0yX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4g K3ZvaWQgbmV3X2ZvbzY0ICh2ZmxvYXQ2NG00X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3Vt ZW50IHR5cGUgJ3ZmbG9hdDY0bTRfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRl bnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vNjUgKHZmbG9hdDY0bThfdCB0KSB7IH0gLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtOF90JyByZXF1aXJlcyB0aGUgenZl NjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci01LmMgYi9nY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci01LmMNCj4gPiBpbmRleCBkZTg1MGU1ZTEwZC4u MjhiM2FlNzA4ZjUgMTAwNjQ0DQo+ID4gLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9iYXNlL3VzZXItNS5jDQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L3Jpc2N2L3J2di9iYXNlL3VzZXItNS5jDQo+ID4gQEAgLTMsMTUgKzMsMTUgQEANCj4gPg0KPiA+ ICAjaW5jbHVkZSAicmlzY3ZfdmVjdG9yLmgiDQo+ID4NCj4gPiAtdm9pZCBmb28wICgpIHt2Ym9v bDY0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2Ym9vbDY0X3QnfSB9 ICovDQo+ID4gK3ZvaWQgZm9vMCAoKSB7dmJvb2w2NF90IHQ7fQ0KPiA+ICB2b2lkIGZvbzEgKCkg e3Zib29sMzJfdCB0O30NCj4gPiAgdm9pZCBmb28yICgpIHt2Ym9vbDE2X3QgdDt9DQo+ID4gIHZv aWQgZm9vMyAoKSB7dmJvb2w4X3QgdDt9DQo+ID4gIHZvaWQgZm9vNCAoKSB7dmJvb2w0X3QgdDt9 DQo+ID4gIHZvaWQgZm9vNSAoKSB7dmJvb2wyX3QgdDt9DQo+ID4gIHZvaWQgZm9vNiAoKSB7dmJv b2wxX3QgdDt9DQo+ID4gLXZvaWQgZm9vNyAoKSB7dmludDhtZjhfdCB0O30gLyogeyBkZy1lcnJv ciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ4bWY4X3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vOCAo KSB7dnVpbnQ4bWY4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWlu dDhtZjhfdCd9IH0gKi8NCj4gPiArdm9pZCBmb283ICgpIHt2aW50OG1mOF90IHQ7fQ0KPiA+ICt2 b2lkIGZvbzggKCkge3Z1aW50OG1mOF90IHQ7fQ0KPiA+ICB2b2lkIGZvbzkgKCkge3ZpbnQ4bWY0 X3QgdDt9DQo+ID4gIHZvaWQgZm9vMTAgKCkge3Z1aW50OG1mNF90IHQ7fQ0KPiA+ICB2b2lkIGZv bzExICgpIHt2aW50OG1mMl90IHQ7fQ0KPiA+IEBAIC0yNCw4ICsyNCw4IEBAIHZvaWQgZm9vMTcg KCkge3ZpbnQ4bTRfdCB0O30NCj4gPiAgdm9pZCBmb28xOCAoKSB7dnVpbnQ4bTRfdCB0O30NCj4g PiAgdm9pZCBmb28xOSAoKSB7dmludDhtOF90IHQ7fQ0KPiA+ICB2b2lkIGZvbzIwICgpIHt2dWlu dDhtOF90IHQ7fQ0KPiA+IC12b2lkIGZvbzIxICgpIHt2aW50MTZtZjRfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQxNm1mNF90J30gfSAqLw0KPiA+IC12b2lkIGZv bzIyICgpIHt2dWludDE2bWY0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1l ICd2dWludDE2bWY0X3QnfSB9ICovDQo+ID4gK3ZvaWQgZm9vMjEgKCkge3ZpbnQxNm1mNF90IHQ7 fQ0KPiA+ICt2b2lkIGZvbzIyICgpIHt2dWludDE2bWY0X3QgdDt9DQo+ID4gIHZvaWQgZm9vMjMg KCkge3ZpbnQxNm1mMl90IHQ7fQ0KPiA+ICB2b2lkIGZvbzI0ICgpIHt2dWludDE2bWYyX3QgdDt9 DQo+ID4gIHZvaWQgZm9vMjUgKCkge3ZpbnQxNm0xX3QgdDt9DQo+ID4gQEAgLTM2LDggKzM2LDgg QEAgdm9pZCBmb28yOSAoKSB7dmludDE2bTRfdCB0O30NCj4gPiAgdm9pZCBmb28zMCAoKSB7dnVp bnQxNm00X3QgdDt9DQo+ID4gIHZvaWQgZm9vMzEgKCkge3ZpbnQxNm04X3QgdDt9DQo+ID4gIHZv aWQgZm9vMzIgKCkge3Z1aW50MTZtOF90IHQ7fQ0KPiA+IC12b2lkIGZvbzMzICgpIHt2aW50MzJt ZjJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQzMm1mMl90J30g fSAqLw0KPiA+IC12b2lkIGZvbzM0ICgpIHt2dWludDMybWYyX3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2dWludDMybWYyX3QnfSB9ICovDQo+ID4gK3ZvaWQgZm9vMzMg KCkge3ZpbnQzMm1mMl90IHQ7fQ0KPiA+ICt2b2lkIGZvbzM0ICgpIHt2dWludDMybWYyX3QgdDt9 DQo+ID4gIHZvaWQgZm9vMzUgKCkge3ZpbnQzMm0xX3QgdDt9DQo+ID4gIHZvaWQgZm9vMzYgKCkg e3Z1aW50MzJtMV90IHQ7fQ0KPiA+ICB2b2lkIGZvbzM3ICgpIHt2aW50MzJtMl90IHQ7fQ0KPiA+ IEBAIC00NiwyMCArNDYsNTAgQEAgdm9pZCBmb28zOSAoKSB7dmludDMybTRfdCB0O30NCj4gPiAg dm9pZCBmb280MCAoKSB7dnVpbnQzMm00X3QgdDt9DQo+ID4gIHZvaWQgZm9vNDEgKCkge3ZpbnQz Mm04X3QgdDt9DQo+ID4gIHZvaWQgZm9vNDIgKCkge3Z1aW50MzJtOF90IHQ7fQ0KPiA+IC12b2lk IGZvbzQzICgpIHt2aW50NjRtMV90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmludDY0bTFfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb280NCAoKSB7dnVpbnQ2NG0xX3QgdDt9 IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTFfdCd9IH0gKi8NCj4g PiAtdm9pZCBmb280NSAoKSB7dmludDY0bTJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0 eXBlIG5hbWUgJ3ZpbnQ2NG0yX3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vNDYgKCkge3Z1aW50NjRt Ml90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0yX3QnfSB9 ICovDQo+ID4gLXZvaWQgZm9vNDcgKCkge3ZpbnQ2NG00X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vu a25vd24gdHlwZSBuYW1lICd2aW50NjRtNF90J30gfSAqLw0KPiA+IC12b2lkIGZvbzQ4ICgpIHt2 dWludDY0bTRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRt NF90J30gfSAqLw0KPiA+IC12b2lkIGZvbzQ5ICgpIHt2aW50NjRtOF90IHQ7fSAvKiB7IGRnLWVy cm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bThfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb281 MCAoKSB7dnVpbnQ2NG04X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 dWludDY0bThfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb281NyAoKSB7dmZsb2F0MzJtZjJfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybWYyX3QnfSB9ICovDQo+ ID4gLXZvaWQgZm9vNTggKCkge3ZmbG9hdDMybTFfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTFfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb281OSAoKSB7dmZs b2F0MzJtMl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJt Ml90J30gfSAqLw0KPiA+IC12b2lkIGZvbzYwICgpIHt2ZmxvYXQzMm00X3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm00X3QnfSB9ICovDQo+ID4gLXZvaWQg Zm9vNjEgKCkge3ZmbG9hdDMybThfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3ZmbG9hdDMybThfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb282MiAoKSB7dmZsb2F0NjRtMV90 IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMV90J30gfSAq Lw0KPiA+IC12b2lkIGZvbzYzICgpIHt2ZmxvYXQ2NG0yX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vu a25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0yX3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vNjQgKCkg e3ZmbG9hdDY0bTRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9h dDY0bTRfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb282NSAoKSB7dmZsb2F0NjRtOF90IHQ7fSAvKiB7 IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtOF90J30gfSAqLw0KPiA+ICt2 b2lkIGZvbzQzICgpIHt2aW50NjRtMV90IHQ7fQ0KPiA+ICt2b2lkIGZvbzQ0ICgpIHt2dWludDY0 bTFfdCB0O30NCj4gPiArdm9pZCBmb280NSAoKSB7dmludDY0bTJfdCB0O30NCj4gPiArdm9pZCBm b280NiAoKSB7dnVpbnQ2NG0yX3QgdDt9DQo+ID4gK3ZvaWQgZm9vNDcgKCkge3ZpbnQ2NG00X3Qg dDt9DQo+ID4gK3ZvaWQgZm9vNDggKCkge3Z1aW50NjRtNF90IHQ7fQ0KPiA+ICt2b2lkIGZvbzQ5 ICgpIHt2aW50NjRtOF90IHQ7fQ0KPiA+ICt2b2lkIGZvbzUwICgpIHt2dWludDY0bThfdCB0O30N Cj4gPiArDQo+ID4gKy8qIFRvIHN1cHBvcnQgdGFyZ2V0IGF0dHJpYnV0ZSwgdGhlIHZmbG9hdCpt KngqX3QgbmVlZCB0byBiZSByZWdpc3RlcmVkDQo+ID4gKyAgIGluIGFkdmFuY2UuICBXZSBhZGQg dHlwZSBhbmQgYXJncy9yZXR1cm4gdmFsdWUgY2hlY2sgZHVyaW5nIHRoZQ0KPiA+ICsgICBzZXQg Y3VycmVudCBmdW5jdGlvbiBidXQgY2Fubm90IGNvdmVyIGJlbG93IGNhc2VzLiAgSXQgaXMgdGhl IHNhbWUNCj4gPiArICAgYmVoYXZpb3IgY29tcGFyZWQgdG8gYWFyY2g2NCBzdmUuICAqLw0KPiA+ ICt2b2lkIGZvbzU3ICgpIHt2ZmxvYXQzMm1mMl90IHQ7fQ0KPiA+ICt2b2lkIGZvbzU4ICgpIHt2 ZmxvYXQzMm0xX3QgdDt9DQo+ID4gK3ZvaWQgZm9vNTkgKCkge3ZmbG9hdDMybTJfdCB0O30NCj4g PiArdm9pZCBmb282MCAoKSB7dmZsb2F0MzJtNF90IHQ7fQ0KPiA+ICt2b2lkIGZvbzYxICgpIHt2 ZmxvYXQzMm04X3QgdDt9DQo+ID4gK3ZvaWQgZm9vNjIgKCkge3ZmbG9hdDY0bTFfdCB0O30NCj4g PiArdm9pZCBmb282MyAoKSB7dmZsb2F0NjRtMl90IHQ7fQ0KPiA+ICt2b2lkIGZvbzY0ICgpIHt2 ZmxvYXQ2NG00X3QgdDt9DQo+ID4gK3ZvaWQgZm9vNjUgKCkge3ZmbG9hdDY0bThfdCB0O30NCj4g PiArDQo+ID4gK3ZvaWQgbmV3X2ZvbzAgKHZib29sNjRfdCB0KSAgeyB9ICAgICAvKiB7IGRnLWVy cm9yIHthcmd1bWVudCB0eXBlICd2Ym9vbDY0X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3Rv ciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb283 ICh2aW50OG1mOF90IHQpICB7IH0gICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmlu dDhtZjhfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzIn IGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzggKHZ1aW50OG1mOF90IHQpICB7IH0g ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDhtZjhfdCcgcmVxdWlyZXMgdGhl IG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4g K3ZvaWQgbmV3X2ZvbzIxICh2aW50MTZtZjRfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2aW50MTZtZjRfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0 aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzIyICh2dWlu dDE2bWY0X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDE2bWY0 X3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBn aXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb28zMyAodmludDMybWYyX3QgdCkgeyB9ICAgLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDMybWYyX3QnIHJlcXVpcmVzIHRoZSBtaW5p bWFsIHZlY3RvciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lk IG5ld19mb28zNCAodnVpbnQzMm1mMl90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQg dHlwZSAndnVpbnQzMm1mMl90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2 NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vNDMgKHZpbnQ2NG0x X3QgdCkgeyB9ICAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQ2NG0xX3QnIHJl cXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAq Lw0KPiA+ICt2b2lkIG5ld19mb280NCAodnVpbnQ2NG0xX3QgdCkgeyB9ICAgLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG0xX3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0 ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb280NSAo dmludDY0bTJfdCB0KSB7IH0gICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0 bTJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5z aW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzQ2ICh2dWludDY0bTJfdCB0KSB7IH0gICAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0bTJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0 eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3 X2ZvbzQ3ICh2aW50NjRtNF90IHQpIHsgfSAgICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBl ICd2aW50NjRtNF90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElT QSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vNDggKHZ1aW50NjRtNF90IHQpIHsg fSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtNF90JyByZXF1aXJlcyB0 aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiAr dm9pZCBuZXdfZm9vNDkgKHZpbnQ2NG04X3QgdCkgeyB9ICAgIC8qIHsgZGctZXJyb3Ige2FyZ3Vt ZW50IHR5cGUgJ3ZpbnQ2NG04X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb281MCAodnVpbnQ2NG04 X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG04X3QnIHJl cXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAq Lw0KPiA+ICt2b2lkIG5ld19mb281NyAodmZsb2F0MzJtZjJfdCB0KSB7IH0gLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtZjJfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZl NjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzU4 ICh2ZmxvYXQzMm0xX3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2Zmxv YXQzMm0xX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4 dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb281OSAodmZsb2F0MzJtMl90IHQpIHsgfSAg LyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtMl90JyByZXF1aXJlcyB0aGUg enZlMzJmLCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9p ZCBuZXdfZm9vNjAgKHZmbG9hdDMybTRfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50 IHR5cGUgJ3ZmbG9hdDMybTRfdCcgcmVxdWlyZXMgdGhlIHp2ZTMyZiwgenZlNjRmLCB6dmU2NGQg b3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzYxICh2ZmxvYXQzMm04 X3QgdCkgeyB9ICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm04X3QnIHJl cXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAq Lw0KPiA+ICt2b2lkIG5ld19mb282MiAodmZsb2F0NjRtMV90IHQpIHsgfSAgLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMV90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYg SVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb282MyAodmZsb2F0NjRtMl90IHQp IHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMl90JyByZXF1aXJl cyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb282 NCAodmZsb2F0NjRtNF90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZs b2F0NjRtNF90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0K PiA+ICt2b2lkIG5ld19mb282NSAodmZsb2F0NjRtOF90IHQpIHsgfSAgLyogeyBkZy1lcnJvciB7 YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtOF90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNB IGV4dGVuc2lvbn0gfSAqLw0KPiA+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvcmlzY3YvcnZ2L2Jhc2UvdXNlci02LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L2Jhc2UvdXNlci02LmMNCj4gPiBpbmRleCAxZDc5YjZiOGVhYy4uZTQ4ZWUzOTE5OTIg MTAwNjQ0DQo+ID4gLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNl L3VzZXItNi5jDQo+ID4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9i YXNlL3VzZXItNi5jDQo+ID4gQEAgLTMsMTUgKzMsMTUgQEANCj4gPg0KPiA+ICAjaW5jbHVkZSAi cmlzY3ZfdmVjdG9yLmgiDQo+ID4NCj4gPiAtdm9pZCBmb28wICgpIHt2Ym9vbDY0X3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2Ym9vbDY0X3QnfSB9ICovDQo+ID4gK3Zv aWQgZm9vMCAoKSB7dmJvb2w2NF90IHQ7fQ0KPiA+ICB2b2lkIGZvbzEgKCkge3Zib29sMzJfdCB0 O30NCj4gPiAgdm9pZCBmb28yICgpIHt2Ym9vbDE2X3QgdDt9DQo+ID4gIHZvaWQgZm9vMyAoKSB7 dmJvb2w4X3QgdDt9DQo+ID4gIHZvaWQgZm9vNCAoKSB7dmJvb2w0X3QgdDt9DQo+ID4gIHZvaWQg Zm9vNSAoKSB7dmJvb2wyX3QgdDt9DQo+ID4gIHZvaWQgZm9vNiAoKSB7dmJvb2wxX3QgdDt9DQo+ ID4gLXZvaWQgZm9vNyAoKSB7dmludDhtZjhfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0 eXBlIG5hbWUgJ3ZpbnQ4bWY4X3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vOCAoKSB7dnVpbnQ4bWY4 X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDhtZjhfdCd9IH0g Ki8NCj4gPiArdm9pZCBmb283ICgpIHt2aW50OG1mOF90IHQ7fQ0KPiA+ICt2b2lkIGZvbzggKCkg e3Z1aW50OG1mOF90IHQ7fQ0KPiA+ICB2b2lkIGZvbzkgKCkge3ZpbnQ4bWY0X3QgdDt9DQo+ID4g IHZvaWQgZm9vMTAgKCkge3Z1aW50OG1mNF90IHQ7fQ0KPiA+ICB2b2lkIGZvbzExICgpIHt2aW50 OG1mMl90IHQ7fQ0KPiA+IEBAIC0yNCw4ICsyNCw4IEBAIHZvaWQgZm9vMTcgKCkge3ZpbnQ4bTRf dCB0O30NCj4gPiAgdm9pZCBmb28xOCAoKSB7dnVpbnQ4bTRfdCB0O30NCj4gPiAgdm9pZCBmb28x OSAoKSB7dmludDhtOF90IHQ7fQ0KPiA+ICB2b2lkIGZvbzIwICgpIHt2dWludDhtOF90IHQ7fQ0K PiA+IC12b2lkIGZvbzIxICgpIHt2aW50MTZtZjRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3ZpbnQxNm1mNF90J30gfSAqLw0KPiA+IC12b2lkIGZvbzIyICgpIHt2dWlu dDE2bWY0X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDE2bWY0 X3QnfSB9ICovDQo+ID4gK3ZvaWQgZm9vMjEgKCkge3ZpbnQxNm1mNF90IHQ7fQ0KPiA+ICt2b2lk IGZvbzIyICgpIHt2dWludDE2bWY0X3QgdDt9DQo+ID4gIHZvaWQgZm9vMjMgKCkge3ZpbnQxNm1m Ml90IHQ7fQ0KPiA+ICB2b2lkIGZvbzI0ICgpIHt2dWludDE2bWYyX3QgdDt9DQo+ID4gIHZvaWQg Zm9vMjUgKCkge3ZpbnQxNm0xX3QgdDt9DQo+ID4gQEAgLTM2LDggKzM2LDEzIEBAIHZvaWQgZm9v MjkgKCkge3ZpbnQxNm00X3QgdDt9DQo+ID4gIHZvaWQgZm9vMzAgKCkge3Z1aW50MTZtNF90IHQ7 fQ0KPiA+ICB2b2lkIGZvbzMxICgpIHt2aW50MTZtOF90IHQ7fQ0KPiA+ICB2b2lkIGZvbzMyICgp IHt2dWludDE2bThfdCB0O30NCj4gPiAtdm9pZCBmb28zMyAoKSB7dmludDMybWYyX3QgdDt9IC8q IHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2aW50MzJtZjJfdCd9IH0gKi8NCj4gPiAt dm9pZCBmb28zNCAoKSB7dnVpbnQzMm1mMl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5 cGUgbmFtZSAndnVpbnQzMm1mMl90J30gfSAqLw0KPiA+ICsNCj4gPiArLyogVG8gc3VwcG9ydCB0 YXJnZXQgYXR0cmlidXRlLCB0aGUgdmZsb2F0Km0qeCpfdCBuZWVkIHRvIGJlIHJlZ2lzdGVyZWQN Cj4gPiArICAgaW4gYWR2YW5jZS4gIFdlIGFkZCB0eXBlIGFuZCBhcmdzL3JldHVybiB2YWx1ZSBj aGVjayBkdXJpbmcgdGhlDQo+ID4gKyAgIHNldCBjdXJyZW50IGZ1bmN0aW9uIGJ1dCBjYW5ub3Qg Y292ZXIgYmVsb3cgY2FzZXMuICBJdCBpcyB0aGUgc2FtZQ0KPiA+ICsgICBiZWhhdmlvciBjb21w YXJlZCB0byBhYXJjaDY0IHN2ZS4gICovDQo+ID4gK3ZvaWQgZm9vMzMgKCkge3ZpbnQzMm1mMl90 IHQ7fQ0KPiA+ICt2b2lkIGZvbzM0ICgpIHt2dWludDMybWYyX3QgdDt9DQo+ID4gIHZvaWQgZm9v MzUgKCkge3ZpbnQzMm0xX3QgdDt9DQo+ID4gIHZvaWQgZm9vMzYgKCkge3Z1aW50MzJtMV90IHQ7 fQ0KPiA+ICB2b2lkIGZvbzM3ICgpIHt2aW50MzJtMl90IHQ7fQ0KPiA+IEBAIC00NiwyMCArNTEs NDEgQEAgdm9pZCBmb28zOSAoKSB7dmludDMybTRfdCB0O30NCj4gPiAgdm9pZCBmb280MCAoKSB7 dnVpbnQzMm00X3QgdDt9DQo+ID4gIHZvaWQgZm9vNDEgKCkge3ZpbnQzMm04X3QgdDt9DQo+ID4g IHZvaWQgZm9vNDIgKCkge3Z1aW50MzJtOF90IHQ7fQ0KPiA+IC12b2lkIGZvbzQzICgpIHt2aW50 NjRtMV90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmludDY0bTFfdCd9 IH0gKi8NCj4gPiAtdm9pZCBmb280NCAoKSB7dnVpbnQ2NG0xX3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bTFfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb280NSAo KSB7dmludDY0bTJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZpbnQ2 NG0yX3QnfSB9ICovDQo+ID4gLXZvaWQgZm9vNDYgKCkge3Z1aW50NjRtMl90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndnVpbnQ2NG0yX3QnfSB9ICovDQo+ID4gLXZvaWQg Zm9vNDcgKCkge3ZpbnQ2NG00X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1l ICd2aW50NjRtNF90J30gfSAqLw0KPiA+IC12b2lkIGZvbzQ4ICgpIHt2dWludDY0bTRfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Z1aW50NjRtNF90J30gfSAqLw0KPiA+ IC12b2lkIGZvbzQ5ICgpIHt2aW50NjRtOF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5 cGUgbmFtZSAndmludDY0bThfdCd9IH0gKi8NCj4gPiAtdm9pZCBmb281MCAoKSB7dnVpbnQ2NG04 X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2dWludDY0bThfdCd9IH0g Ki8NCj4gPiAtdm9pZCBmb281NyAoKSB7dmZsb2F0MzJtZjJfdCB0O30gLyogeyBkZy1lcnJvciB7 dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybWYyX3QnfSB9ICovDQo+ID4gK3ZvaWQgZm9vNDMg KCkge3ZpbnQ2NG0xX3QgdDt9DQo+ID4gK3ZvaWQgZm9vNDQgKCkge3Z1aW50NjRtMV90IHQ7fQ0K PiA+ICt2b2lkIGZvbzQ1ICgpIHt2aW50NjRtMl90IHQ7fQ0KPiA+ICt2b2lkIGZvbzQ2ICgpIHt2 dWludDY0bTJfdCB0O30NCj4gPiArdm9pZCBmb280NyAoKSB7dmludDY0bTRfdCB0O30NCj4gPiAr dm9pZCBmb280OCAoKSB7dnVpbnQ2NG00X3QgdDt9DQo+ID4gK3ZvaWQgZm9vNDkgKCkge3ZpbnQ2 NG04X3QgdDt9DQo+ID4gK3ZvaWQgZm9vNTAgKCkge3Z1aW50NjRtOF90IHQ7fQ0KPiA+ICt2b2lk IGZvbzU3ICgpIHt2ZmxvYXQzMm1mMl90IHQ7fQ0KPiA+ICB2b2lkIGZvbzU4ICgpIHt2ZmxvYXQz Mm0xX3QgdDt9DQo+ID4gIHZvaWQgZm9vNTkgKCkge3ZmbG9hdDMybTJfdCB0O30NCj4gPiAgdm9p ZCBmb282MCAoKSB7dmZsb2F0MzJtNF90IHQ7fQ0KPiA+ICB2b2lkIGZvbzYxICgpIHt2ZmxvYXQz Mm04X3QgdDt9DQo+ID4gLXZvaWQgZm9vNjIgKCkge3ZmbG9hdDY0bTFfdCB0O30gLyogeyBkZy1l cnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTFfdCd9IH0gKi8NCj4gPiAtdm9pZCBm b282MyAoKSB7dmZsb2F0NjRtMl90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFt ZSAndmZsb2F0NjRtMl90J30gfSAqLw0KPiA+IC12b2lkIGZvbzY0ICgpIHt2ZmxvYXQ2NG00X3Qg dDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG00X3QnfSB9ICov DQo+ID4gLXZvaWQgZm9vNjUgKCkge3ZmbG9hdDY0bThfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bThfdCd9IH0gKi8NCj4gPiArdm9pZCBmb282MiAoKSB7 dmZsb2F0NjRtMV90IHQ7fQ0KPiA+ICt2b2lkIGZvbzYzICgpIHt2ZmxvYXQ2NG0yX3QgdDt9DQo+ ID4gK3ZvaWQgZm9vNjQgKCkge3ZmbG9hdDY0bTRfdCB0O30NCj4gPiArdm9pZCBmb282NSAoKSB7 dmZsb2F0NjRtOF90IHQ7fQ0KPiA+ICsNCj4gPiArdm9pZCBuZXdfZm9vMCAodmJvb2w2NF90IHQp IHsgfSAgICAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Zib29sNjRfdCcgcmVxdWly ZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICov DQo+ID4gK3ZvaWQgbmV3X2ZvbzcgKHZpbnQ4bWY4X3QgdCkgeyB9ICAgICAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2aW50OG1mOF90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3Ig bGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vOCAo dnVpbnQ4bWY4X3QgdCkgeyB9ICAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50 OG1mOF90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMid9 IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vMjEgKHZpbnQxNm1mNF90IHQpIHsgfSAgIC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZpbnQxNm1mNF90JyByZXF1aXJlcyB0aGUgbWluaW1hbCB2 ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiArdm9pZCBuZXdf Zm9vMjIgKHZ1aW50MTZtZjRfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUg J3Z1aW50MTZtZjRfdCcgcmVxdWlyZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1 dCAnMzInIGlzIGdpdmVufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzMzICh2aW50MzJtZjJfdCB0 KSB7fSAgICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2aW50MzJtZjJfdCcgcmVxdWly ZXMgdGhlIG1pbmltYWwgdmVjdG9yIGxlbmd0aCAnNjQnIGJ1dCAnMzInIGlzIGdpdmVufSB9ICov DQo+ID4gK3ZvaWQgbmV3X2ZvbzM0ICh2dWludDMybWYyX3QgdCkgeyB9ICAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2dWludDMybWYyX3QnIHJlcXVpcmVzIHRoZSBtaW5pbWFsIHZlY3Rv ciBsZW5ndGggJzY0JyBidXQgJzMyJyBpcyBnaXZlbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb280 MyAodmludDY0bTFfdCB0KSB7IH0gICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmlu dDY0bTFfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0 ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzQ0ICh2dWludDY0bTFfdCB0KSB7IH0gICAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWludDY0bTFfdCcgcmVxdWlyZXMgdGhlIHp2 ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQg bmV3X2ZvbzQ1ICh2aW50NjRtMl90IHQpIHsgfSAgICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0 eXBlICd2aW50NjRtMl90JyByZXF1aXJlcyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2 IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vNDYgKHZ1aW50NjRtMl90IHQp IHsgfSAgIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3Z1aW50NjRtMl90JyByZXF1aXJl cyB0aGUgenZlNjR4LCB6dmU2NGYsIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4g PiArdm9pZCBuZXdfZm9vNDcgKHZpbnQ2NG00X3QgdCkgeyB9ICAgIC8qIHsgZGctZXJyb3Ige2Fy Z3VtZW50IHR5cGUgJ3ZpbnQ2NG00X3QnIHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZl NjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIG5ld19mb280OCAodnVpbnQ2 NG00X3QgdCkgeyB9ICAgLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndnVpbnQ2NG00X3Qn IHJlcXVpcmVzIHRoZSB6dmU2NHgsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0g fSAqLw0KPiA+ICt2b2lkIG5ld19mb280OSAodmludDY0bThfdCB0KSB7IH0gICAgLyogeyBkZy1l cnJvciB7YXJndW1lbnQgdHlwZSAndmludDY0bThfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZl NjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzUw ICh2dWludDY0bThfdCB0KSB7IH0gICAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2dWlu dDY0bThfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0eCwgenZlNjRmLCB6dmU2NGQgb3IgdiBJU0EgZXh0 ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgbmV3X2ZvbzU3ICh2ZmxvYXQzMm1mMl90IHQpIHsgfSAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm1mMl90JyByZXF1aXJlcyB0aGUg bWluaW1hbCB2ZWN0b3IgbGVuZ3RoICc2NCcgYnV0ICczMicgaXMgZ2l2ZW59IH0gKi8NCj4gPiAr dm9pZCBuZXdfZm9vNjIgKHZmbG9hdDY0bTFfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3Vt ZW50IHR5cGUgJ3ZmbG9hdDY0bTFfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRl bnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vNjMgKHZmbG9hdDY0bTJfdCB0KSB7IH0gIC8q IHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTJfdCcgcmVxdWlyZXMgdGhlIHp2 ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBuZXdfZm9vNjQgKHZmbG9h dDY0bTRfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTRf dCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9p ZCBuZXdfZm9vNjUgKHZmbG9hdDY0bThfdCB0KSB7IH0gIC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50 IHR5cGUgJ3ZmbG9hdDY0bThfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNp b259IH0gKi8NCj4gPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9iYXNlL3VzZXItOS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9i YXNlL3VzZXItOS5jDQo+ID4gaW5kZXggOThhN2QzOTFkNGUuLjU3ZWRlMzJhNDAwIDEwMDY0NA0K PiA+IC0tLSBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2VyLTku Yw0KPiA+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS91c2Vy LTkuYw0KPiA+IEBAIC0xNzUsMzIgKzE3NSw2NyBAQCB2b2lkIGZfdmludDY0bTJ4NF90ICgpIHt2 aW50NjRtMng0X3QgdDt9DQo+ID4gIHZvaWQgZl92dWludDY0bTJ4NF90ICgpIHt2dWludDY0bTJ4 NF90IHQ7fQ0KPiA+ICB2b2lkIGZfdmludDY0bTR4Ml90ICgpIHt2aW50NjRtNHgyX3QgdDt9DQo+ ID4gIHZvaWQgZl92dWludDY0bTR4Ml90ICgpIHt2dWludDY0bTR4Ml90IHQ7fQ0KPiA+IC12b2lk IGZfdmZsb2F0MzJtZjJ4Ml90ICgpIHt2ZmxvYXQzMm1mMngyX3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm1mMngyX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92 ZmxvYXQzMm1mMngzX3QgKCkge3ZmbG9hdDMybWYyeDNfdCB0O30gLyogeyBkZy1lcnJvciB7dW5r bm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybWYyeDNfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9h dDMybWYyeDRfdCAoKSB7dmZsb2F0MzJtZjJ4NF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3du IHR5cGUgbmFtZSAndmZsb2F0MzJtZjJ4NF90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0MzJt ZjJ4NV90ICgpIHt2ZmxvYXQzMm1mMng1X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlw ZSBuYW1lICd2ZmxvYXQzMm1mMng1X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQzMm1mMng2 X3QgKCkge3ZmbG9hdDMybWYyeDZfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5h bWUgJ3ZmbG9hdDMybWYyeDZfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDMybWYyeDdfdCAo KSB7dmZsb2F0MzJtZjJ4N190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAn dmZsb2F0MzJtZjJ4N190J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0MzJtZjJ4OF90ICgpIHt2 ZmxvYXQzMm1mMng4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2Zmxv YXQzMm1mMng4X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQzMm0xeDJfdCAoKSB7dmZsb2F0 MzJtMXgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm0x eDJfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDMybTF4M190ICgpIHt2ZmxvYXQzMm0xeDNf dCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTF4M190J30g fSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0MzJtMXg0X3QgKCkge3ZmbG9hdDMybTF4NF90IHQ7fSAv KiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJtMXg0X3QnfSB9ICovDQo+ ID4gLXZvaWQgZl92ZmxvYXQzMm0xeDVfdCAoKSB7dmZsb2F0MzJtMXg1X3QgdDt9IC8qIHsgZGct ZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm0xeDVfdCd9IH0gKi8NCj4gPiAtdm9p ZCBmX3ZmbG9hdDMybTF4Nl90ICgpIHt2ZmxvYXQzMm0xeDZfdCB0O30gLyogeyBkZy1lcnJvciB7 dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTF4Nl90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZs b2F0MzJtMXg3X3QgKCkge3ZmbG9hdDMybTF4N190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3du IHR5cGUgbmFtZSAndmZsb2F0MzJtMXg3X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQzMm0x eDhfdCAoKSB7dmZsb2F0MzJtMXg4X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBu YW1lICd2ZmxvYXQzMm0xeDhfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDMybTJ4Ml90ICgp IHt2ZmxvYXQzMm0yeDJfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3Zm bG9hdDMybTJ4Ml90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0MzJtMngzX3QgKCkge3ZmbG9h dDMybTJ4M190IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0MzJt MngzX3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQzMm0yeDRfdCAoKSB7dmZsb2F0MzJtMng0 X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQzMm0yeDRfdCd9 IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDMybTR4Ml90ICgpIHt2ZmxvYXQzMm00eDJfdCB0O30g LyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDMybTR4Ml90J30gfSAqLw0K PiA+IC12b2lkIGZfdmZsb2F0NjRtMXgyX3QgKCkge3ZmbG9hdDY0bTF4Ml90IHQ7fSAvKiB7IGRn LWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXgyX3QnfSB9ICovDQo+ID4gLXZv aWQgZl92ZmxvYXQ2NG0xeDNfdCAoKSB7dmZsb2F0NjRtMXgzX3QgdDt9IC8qIHsgZGctZXJyb3Ig e3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0xeDNfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3Zm bG9hdDY0bTF4NF90ICgpIHt2ZmxvYXQ2NG0xeDRfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93 biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTF4NF90J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0NjRt MXg1X3QgKCkge3ZmbG9hdDY0bTF4NV90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUg bmFtZSAndmZsb2F0NjRtMXg1X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQ2NG0xeDZfdCAo KSB7dmZsb2F0NjRtMXg2X3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2 ZmxvYXQ2NG0xeDZfdCd9IH0gKi8NCj4gPiAtdm9pZCBmX3ZmbG9hdDY0bTF4N190ICgpIHt2Zmxv YXQ2NG0xeDdfdCB0O30gLyogeyBkZy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0 bTF4N190J30gfSAqLw0KPiA+IC12b2lkIGZfdmZsb2F0NjRtMXg4X3QgKCkge3ZmbG9hdDY0bTF4 OF90IHQ7fSAvKiB7IGRnLWVycm9yIHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMXg4X3Qn fSB9ICovDQo+ID4gLXZvaWQgZl92ZmxvYXQ2NG0yeDJfdCAoKSB7dmZsb2F0NjRtMngyX3QgdDt9 IC8qIHsgZGctZXJyb3Ige3Vua25vd24gdHlwZSBuYW1lICd2ZmxvYXQ2NG0yeDJfdCd9IH0gKi8N Cj4gPiAtdm9pZCBmX3ZmbG9hdDY0bTJ4M190ICgpIHt2ZmxvYXQ2NG0yeDNfdCB0O30gLyogeyBk Zy1lcnJvciB7dW5rbm93biB0eXBlIG5hbWUgJ3ZmbG9hdDY0bTJ4M190J30gfSAqLw0KPiA+IC12 b2lkIGZfdmZsb2F0NjRtMng0X3QgKCkge3ZmbG9hdDY0bTJ4NF90IHQ7fSAvKiB7IGRnLWVycm9y IHt1bmtub3duIHR5cGUgbmFtZSAndmZsb2F0NjRtMng0X3QnfSB9ICovDQo+ID4gLXZvaWQgZl92 ZmxvYXQ2NG00eDJfdCAoKSB7dmZsb2F0NjRtNHgyX3QgdDt9IC8qIHsgZGctZXJyb3Ige3Vua25v d24gdHlwZSBuYW1lICd2ZmxvYXQ2NG00eDJfdCd9IH0gKi8NCj4gPiArDQo+ID4gKy8qIFRvIHN1 cHBvcnQgdGFyZ2V0IGF0dHJpYnV0ZSwgdGhlIHZmbG9hdCptKngqX3QgbmVlZCB0byBiZSByZWdp c3RlcmVkDQo+ID4gKyAgIGluIGFkdmFuY2UuICBXZSBhZGQgdHlwZSBhbmQgYXJncy9yZXR1cm4g dmFsdWUgY2hlY2sgZHVyaW5nIHRoZQ0KPiA+ICsgICBzZXQgY3VycmVudCBmdW5jdGlvbiBidXQg Y2Fubm90IGNvdmVyIGJlbG93IGNhc2VzLiAgSXQgaXMgdGhlIHNhbWUNCj4gPiArICAgYmVoYXZp b3IgY29tcGFyZWQgdG8gYWFyY2g2NCBzdmUuICAqLw0KPiA+ICt2b2lkIGZfdmZsb2F0MzJtZjJ4 Ml90ICgpIHt2ZmxvYXQzMm1mMngyX3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQzMm1mMngzX3Qg KCkge3ZmbG9hdDMybWYyeDNfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybWYyeDRfdCAoKSB7 dmZsb2F0MzJtZjJ4NF90IHQ7fQ0KPiA+ICt2b2lkIGZfdmZsb2F0MzJtZjJ4NV90ICgpIHt2Zmxv YXQzMm1mMng1X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQzMm1mMng2X3QgKCkge3ZmbG9hdDMy bWYyeDZfdCB0O30NCj4gPiArdm9pZCBmX3ZmbG9hdDMybWYyeDdfdCAoKSB7dmZsb2F0MzJtZjJ4 N190IHQ7fQ0KPiA+ICt2b2lkIGZfdmZsb2F0MzJtZjJ4OF90ICgpIHt2ZmxvYXQzMm1mMng4X3Qg dDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQzMm0xeDJfdCAoKSB7dmZsb2F0MzJtMXgyX3QgdDt9DQo+ ID4gK3ZvaWQgZl92ZmxvYXQzMm0xeDNfdCAoKSB7dmZsb2F0MzJtMXgzX3QgdDt9DQo+ID4gK3Zv aWQgZl92ZmxvYXQzMm0xeDRfdCAoKSB7dmZsb2F0MzJtMXg0X3QgdDt9DQo+ID4gK3ZvaWQgZl92 ZmxvYXQzMm0xeDVfdCAoKSB7dmZsb2F0MzJtMXg1X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQz Mm0xeDZfdCAoKSB7dmZsb2F0MzJtMXg2X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQzMm0xeDdf dCAoKSB7dmZsb2F0MzJtMXg3X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQzMm0xeDhfdCAoKSB7 dmZsb2F0MzJtMXg4X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQzMm0yeDJfdCAoKSB7dmZsb2F0 MzJtMngyX3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQzMm0yeDNfdCAoKSB7dmZsb2F0MzJtMngz X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQzMm0yeDRfdCAoKSB7dmZsb2F0MzJtMng0X3QgdDt9 DQo+ID4gK3ZvaWQgZl92ZmxvYXQzMm00eDJfdCAoKSB7dmZsb2F0MzJtNHgyX3QgdDt9DQo+ID4g K3ZvaWQgZl92ZmxvYXQ2NG0xeDJfdCAoKSB7dmZsb2F0NjRtMXgyX3QgdDt9DQo+ID4gK3ZvaWQg Zl92ZmxvYXQ2NG0xeDNfdCAoKSB7dmZsb2F0NjRtMXgzX3QgdDt9DQo+ID4gK3ZvaWQgZl92Zmxv YXQ2NG0xeDRfdCAoKSB7dmZsb2F0NjRtMXg0X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0x eDVfdCAoKSB7dmZsb2F0NjRtMXg1X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0xeDZfdCAo KSB7dmZsb2F0NjRtMXg2X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0xeDdfdCAoKSB7dmZs b2F0NjRtMXg3X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0xeDhfdCAoKSB7dmZsb2F0NjRt MXg4X3QgdDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0yeDJfdCAoKSB7dmZsb2F0NjRtMngyX3Qg dDt9DQo+ID4gK3ZvaWQgZl92ZmxvYXQ2NG0yeDNfdCAoKSB7dmZsb2F0NjRtMngzX3QgdDt9DQo+ ID4gK3ZvaWQgZl92ZmxvYXQ2NG0yeDRfdCAoKSB7dmZsb2F0NjRtMng0X3QgdDt9DQo+ID4gK3Zv aWQgZl92ZmxvYXQ2NG00eDJfdCAoKSB7dmZsb2F0NjRtNHgyX3QgdDt9DQo+ID4gKw0KPiA+ICt2 b2lkIGZfYXJnX3ZmbG9hdDMybWYyeDJfdCAodmZsb2F0MzJtZjJ4Ml90IHQpIHsgfSAvKiB7IGRn LWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm1mMngyX3QnIHJlcXVpcmVzIHRoZSB6dmUz MmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIGZf YXJnX3ZmbG9hdDMybWYyeDNfdCAodmZsb2F0MzJtZjJ4M190IHQpIHsgfSAvKiB7IGRnLWVycm9y IHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm1mMngzX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2 ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIGZfYXJnX3Zm bG9hdDMybWYyeDRfdCAodmZsb2F0MzJtZjJ4NF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1 bWVudCB0eXBlICd2ZmxvYXQzMm1mMng0X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0Ziwg enZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDMy bWYyeDVfdCAodmZsb2F0MzJtZjJ4NV90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0 eXBlICd2ZmxvYXQzMm1mMng1X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDMybWYyeDZf dCAodmZsb2F0MzJtZjJ4Nl90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2 ZmxvYXQzMm1mMng2X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYg SVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDMybWYyeDdfdCAodmZs b2F0MzJtZjJ4N190IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQz Mm1mMng3X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4 dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDMybWYyeDhfdCAodmZsb2F0MzJt ZjJ4OF90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQzMm1mMng4 X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lv bn0gfSAqLw0KPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDMybTF4Ml90ICh2ZmxvYXQzMm0xeDJfdCB0 KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtMXgyX3QnIHJlcXVp cmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0K PiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDMybTF4M190ICh2ZmxvYXQzMm0xeDNfdCB0KSB7IH0gLyog eyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtMXgzX3QnIHJlcXVpcmVzIHRoZSB6 dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lk IGZfYXJnX3ZmbG9hdDMybTF4NF90ICh2ZmxvYXQzMm0xeDRfdCB0KSB7IH0gLyogeyBkZy1lcnJv ciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtMXg0X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2 ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIGZfYXJnX3Zm bG9hdDMybTF4NV90ICh2ZmxvYXQzMm0xeDVfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1l bnQgdHlwZSAndmZsb2F0MzJtMXg1X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZl NjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDMybTF4 Nl90ICh2ZmxvYXQzMm0xeDZfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAn dmZsb2F0MzJtMXg2X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYg SVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDMybTF4N190ICh2Zmxv YXQzMm0xeDdfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJt MXg3X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVu c2lvbn0gfSAqLw0KPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDMybTF4OF90ICh2ZmxvYXQzMm0xeDhf dCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtMXg4X3QnIHJl cXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAq Lw0KPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDMybTJ4Ml90ICh2ZmxvYXQzMm0yeDJfdCB0KSB7IH0g LyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtMngyX3QnIHJlcXVpcmVzIHRo ZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2 b2lkIGZfYXJnX3ZmbG9hdDMybTJ4M190ICh2ZmxvYXQzMm0yeDNfdCB0KSB7IH0gLyogeyBkZy1l cnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0MzJtMngzX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYs IHp2ZTY0ZiwgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIGZfYXJn X3ZmbG9hdDMybTJ4NF90ICh2ZmxvYXQzMm0yeDRfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJn dW1lbnQgdHlwZSAndmZsb2F0MzJtMng0X3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0Ziwg enZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDMy bTR4Ml90ICh2ZmxvYXQzMm00eDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlw ZSAndmZsb2F0MzJtNHgyX3QnIHJlcXVpcmVzIHRoZSB6dmUzMmYsIHp2ZTY0ZiwgenZlNjRkIG9y IHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDY0bTF4Ml90ICh2 ZmxvYXQ2NG0xeDJfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0 NjRtMXgyX3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ ID4gK3ZvaWQgZl9hcmdfdmZsb2F0NjRtMXgzX3QgKHZmbG9hdDY0bTF4M190IHQpIHsgfSAvKiB7 IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0xeDNfdCcgcmVxdWlyZXMgdGhlIHp2 ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiArdm9pZCBmX2FyZ192ZmxvYXQ2NG0x eDRfdCAodmZsb2F0NjRtMXg0X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUg J3ZmbG9hdDY0bTF4NF90JyByZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0g fSAqLw0KPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDY0bTF4NV90ICh2ZmxvYXQ2NG0xeDVfdCB0KSB7 IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMXg1X3QnIHJlcXVpcmVz IHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgZl9hcmdfdmZs b2F0NjRtMXg2X3QgKHZmbG9hdDY0bTF4Nl90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVu dCB0eXBlICd2ZmxvYXQ2NG0xeDZfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRl bnNpb259IH0gKi8NCj4gPiArdm9pZCBmX2FyZ192ZmxvYXQ2NG0xeDdfdCAodmZsb2F0NjRtMXg3 X3QgdCkgeyB9IC8qIHsgZGctZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTF4N190JyBy ZXF1aXJlcyB0aGUgenZlNjRkIG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIGZf YXJnX3ZmbG9hdDY0bTF4OF90ICh2ZmxvYXQ2NG0xeDhfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7 YXJndW1lbnQgdHlwZSAndmZsb2F0NjRtMXg4X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJ U0EgZXh0ZW5zaW9ufSB9ICovDQo+ID4gK3ZvaWQgZl9hcmdfdmZsb2F0NjRtMngyX3QgKHZmbG9h dDY0bTJ4Ml90IHQpIHsgfSAvKiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG0y eDJfdCcgcmVxdWlyZXMgdGhlIHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiAr dm9pZCBmX2FyZ192ZmxvYXQ2NG0yeDNfdCAodmZsb2F0NjRtMngzX3QgdCkgeyB9IC8qIHsgZGct ZXJyb3Ige2FyZ3VtZW50IHR5cGUgJ3ZmbG9hdDY0bTJ4M190JyByZXF1aXJlcyB0aGUgenZlNjRk IG9yIHYgSVNBIGV4dGVuc2lvbn0gfSAqLw0KPiA+ICt2b2lkIGZfYXJnX3ZmbG9hdDY0bTJ4NF90 ICh2ZmxvYXQ2NG0yeDRfdCB0KSB7IH0gLyogeyBkZy1lcnJvciB7YXJndW1lbnQgdHlwZSAndmZs b2F0NjRtMng0X3QnIHJlcXVpcmVzIHRoZSB6dmU2NGQgb3IgdiBJU0EgZXh0ZW5zaW9ufSB9ICov DQo+ID4gK3ZvaWQgZl9hcmdfdmZsb2F0NjRtNHgyX3QgKHZmbG9hdDY0bTR4Ml90IHQpIHsgfSAv KiB7IGRnLWVycm9yIHthcmd1bWVudCB0eXBlICd2ZmxvYXQ2NG00eDJfdCcgcmVxdWlyZXMgdGhl IHp2ZTY0ZCBvciB2IElTQSBleHRlbnNpb259IH0gKi8NCj4gPiAtLQ0KPiA+IDIuMzQuMQ0KPiA+ DQo=