From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on2068.outbound.protection.outlook.com [40.107.247.68]) by sourceware.org (Postfix) with ESMTPS id D68003858D1E for ; Tue, 21 May 2024 12:54:14 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D68003858D1E Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org D68003858D1E Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.107.247.68 ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1716296061; cv=pass; b=T6nMjewYcrtA9HRqYfhfCKYoobKJwOISHDPIBccH3TPheMtfYsbK/fj0UlIUSL0tLepBPG668ZbgzsxKpozF7bBFSijKTeRC9FkObshKrPuby6rncT6s80sXFYEFptmihufTcOksIdusP7lsCTHNJd1IX1jziW+GuTswbixXkWo= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1716296061; c=relaxed/simple; bh=nA68a0DS9/+o6ISN0JTgYj48WhQnwa/Kv2ACMk6VI1Y=; h=DKIM-Signature:DKIM-Signature:Message-ID:Date:To:From:Subject: MIME-Version; b=gSXc2nDCUZiE+kjNsTEhQnJknSsyzTYzn7oL8DA0xUrwDwjWME7FU40zVM1KhKg2QwIRQp0wPHotAJMDwGG0HNFviRprC82B/R8OnNdkhfH2Ps+2h2OZYIuCDw8aojaqJqO5JMV7qjQPhyDjUWuQ0cFqt7B/66MOwkRXI73WhP0= ARC-Authentication-Results: i=3; server2.sourceware.org ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=ASD1vVScxBjlBuKfPgKkSPwQrSuRx46dm1I2KFca7hVlwBQ7paxO8897yySdIng9eS/1IC/Qd7ow1fIEZ6l95vt9ssPpvjLz4qUCnfQMgQmhuvPergm07g+UK6znpaWB06XtN0C3j9iKlGSMHRPR3kU5bDX/EFFk2j7/fHAJLv0OmPVLRwIUQQfvuV351Nq0q3MJMN9HhxMiTLIzbPzjxLZsq8FBURo3s6hj8dbLA3iqDPxOjewSlZQ0LYmoVMxfBXQtFJ7iH7eN2EtgmdBn0WB4awlG8vmwZ2geeQQxGBHFkHzkjhVBk+1Lxp2ynWMy0D8flblwCK01ql6f690oXQ== ARC-Message-Signature: i=2; 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=leJ99ydwfOEpuVdwF20Is7jAC+WDGNufGOQIV376vmo=; b=jL93DLGFTz53DiGdAc/DVmXzOxWjOgBSBMgUMw0/wYpjSuhgnoGNlylskfQXUCN6CKf9XKN9ZnrBvwSGdY35nwh/IDx0jMcvTwNkckqBOgE6rEOnuw/bBIxfmDhi1E06M+5oFZVoEQlpG1VErkb+amTacngLkq2wUSEZADepx2q39k2409EB9hPb87+QL4RXZshvX2pik8BTlWpYBH+6M2J5D0560gEic0ibjY+DgFAE3rAcJIvRkGsI8jhJfnAPnI5szTRJoFjFUpLo7BcGiwcOU1fGP0ApJNWEt6lfhFGyqg7dTpxERUFIZvZ8PYu+0GJ8rWglcG85JDiOq3MuEQ== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=sourceware.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=leJ99ydwfOEpuVdwF20Is7jAC+WDGNufGOQIV376vmo=; b=ZzLggtCPWl0HLRbz5jIsoV5iVGHBTClGEn/k8l5qSDTz/JBVI/2aHrXQz03m4L/ComoYFRoq1coMMt1QKV2oSCPMA2qpsfnLNY1nYh9KdVx3ZTl+UXC1u0mvmrVsZNYPBR8SPWncD0CRU2/Jjhg050Cyx0Cf9PDq0h+p5+0Xqz0= Received: from AS9PR06CA0665.eurprd06.prod.outlook.com (2603:10a6:20b:49c::10) by AS8PR08MB9885.eurprd08.prod.outlook.com (2603:10a6:20b:5b0::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7587.35; Tue, 21 May 2024 12:54:11 +0000 Received: from AM4PEPF00027A69.eurprd04.prod.outlook.com (2603:10a6:20b:49c:cafe::61) by AS9PR06CA0665.outlook.office365.com (2603:10a6:20b:49c::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7587.34 via Frontend Transport; Tue, 21 May 2024 12:54:11 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM4PEPF00027A69.mail.protection.outlook.com (10.167.16.87) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.7611.14 via Frontend Transport; Tue, 21 May 2024 12:54:11 +0000 Received: ("Tessian outbound e46bb127ed3d:v315"); Tue, 21 May 2024 12:54:11 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 234346b50f15a6bc X-CR-MTA-TID: 64aa7808 Received: from be3fba8fc673.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 46844F92-CD61-4AEE-B399-F1E146E951B0.1; Tue, 21 May 2024 12:54:04 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id be3fba8fc673.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 21 May 2024 12:54:04 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XFW2RX3RO31KdsRlPLJPryF2PRn2yIxRB5/N1Px8SvCEhuxfFyxFoRLh+GWi5hGiVu+7C6E3QXsJCzTuF6u566NlixVkWcjRf8iX8AJGniDrEeGykB4Gg6bj052+saQBARB989P7b/bQ01RwIVaP25TZcqZYU0zYDPDIqjh10MehIM2H+jrCa7UJJppKK3QA1nVmpYAua2xSwi/xDZiu415pPmfaQklqjiAcR1Rx7QKE2GBo6LYuCpv43R/B1WjNI3x4ESLhgfeQtXRzGMDd1jLAdomw74gCmhuCKPjfvOsS8SI8hD0bKc0uOhZhz4v6Dfw6Pq3HLTu/HoeADZukIw== 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=leJ99ydwfOEpuVdwF20Is7jAC+WDGNufGOQIV376vmo=; b=T9Jeu99JOcT3QRwbNyJ+G0zapYoY5FhFLcqRc7c7hKtvYf6mU8v5qR8w8e2EosSrXfUrwXXximzacyk60kl7aOWoJ8zu/wtUgFLu4F9+j2lmqecMXzyYsbd7a3FGlDdxllEXnxgcWQ7yj4ieNm36n0OJXQuHqwkYs6Ql1r+xcqrUeLN5diiHiuIMb0SB2UtMPO+F0RkOxodJ9AS68UGw10EA1gqYdaf4YFeglV7v0GwVS9UgahDvvsisqBcjMquc8b3xNYQd5a9vJdFpTZO5xS8fsPKsXvXPBl6GIUpbfhl9xxS5ZMlovYJgkNUmb+b5d7p6L+sAhbVjDQl9uTfASQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=leJ99ydwfOEpuVdwF20Is7jAC+WDGNufGOQIV376vmo=; b=ZzLggtCPWl0HLRbz5jIsoV5iVGHBTClGEn/k8l5qSDTz/JBVI/2aHrXQz03m4L/ComoYFRoq1coMMt1QKV2oSCPMA2qpsfnLNY1nYh9KdVx3ZTl+UXC1u0mvmrVsZNYPBR8SPWncD0CRU2/Jjhg050Cyx0Cf9PDq0h+p5+0Xqz0= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from DBBPR08MB6091.eurprd08.prod.outlook.com (2603:10a6:10:1f4::5) by AM7PR08MB5414.eurprd08.prod.outlook.com (2603:10a6:20b:105::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7587.35; Tue, 21 May 2024 12:54:01 +0000 Received: from DBBPR08MB6091.eurprd08.prod.outlook.com ([fe80::15a1:f211:5d1c:b271]) by DBBPR08MB6091.eurprd08.prod.outlook.com ([fe80::15a1:f211:5d1c:b271%4]) with mapi id 15.20.7587.035; Tue, 21 May 2024 12:54:01 +0000 Content-Type: multipart/mixed; boundary="------------DNoLmd4rZbwdoYwDLlqpVbQ9" Message-ID: Date: Tue, 21 May 2024 13:54:00 +0100 User-Agent: Mozilla Thunderbird Content-Language: en-US To: binutils@sourceware.org, Richard Earnshaw From: Saurabh Jha Subject: [PATCH v4 1/2] gas, aarch64: Add AdvSIMD lut extension X-ClientProxiedBy: LO3P265CA0020.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:387::14) To DBBPR08MB6091.eurprd08.prod.outlook.com (2603:10a6:10:1f4::5) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: DBBPR08MB6091:EE_|AM7PR08MB5414:EE_|AM4PEPF00027A69:EE_|AS8PR08MB9885:EE_ X-MS-Office365-Filtering-Correlation-Id: cbeeec8f-63bd-4c7f-a936-08dc79951c76 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230031|366007|1800799015|376005; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?XRDen4GICj0m1GciUYEcGpUBlBe+52HE5rCORjq3NglXUGzFsmtviiI3LY6d?= =?us-ascii?Q?5JRzUjfGdAHSXjx5KpZM+WmVKlaCrJ4IyLkqp+EpTa2nHvzVN9l5NqqgzlqI?= =?us-ascii?Q?DW3ShwDAOl9AlOQ7L2aN5VTKoW3OOeONmaeyRjBwtwUmyH1F3rGxQabpCVvI?= =?us-ascii?Q?I3J8TwZ9luivVPuWTRV21roo0APhmmszW9XvPpdIjMmwxPTx7K+bJHRxohP0?= =?us-ascii?Q?3D+JRHsV/fPFYmrYifg48QGqH6WjFj/YYEOzshEYn63wSedAskQUgL2GBDnl?= =?us-ascii?Q?ewh2mRPfELVoz6LW4g2AVi1+x07F6+FUPf3Kvs1/K+CbQIco8flCM75wf9hs?= =?us-ascii?Q?cbwEw+J3ciNJQadOrsYf6vdwLi2v+yfCj6F74c5cOoioxVlVNawyYZVPkw8f?= =?us-ascii?Q?tIq7WhK/rhbXNCtuesneBo4VCB7IkQKuzFNUTgH1ygd1qnD/q8PpsdZldrfd?= =?us-ascii?Q?qghCGEfgzRwNUF5NRlqxCYUDan2qCIzPF9laXGILpspHhZ/CHXijB2+CewkC?= =?us-ascii?Q?ND6PF6v42yI7WB5KktlWFFmgK3a+HigQa6QmwvctJUwvxUwXXuVlxQV/rq1x?= =?us-ascii?Q?QW1AQxZ9lJj4Mdn+4d9aiLPQCVbyqub6YZ73BJH6KrHrCKBdB2JQqWYr7DCX?= =?us-ascii?Q?SN+qJ7UxmaUB/doJHHzBWd/7hh6CveQpGSy+m0iFVy4YZtqIbiHwLtdtrr2j?= =?us-ascii?Q?Ts/rfFqNPG5zdUwoiLbYn5+s7dLrTA3R3d9simQkcQwBIBiFx+B2zUeZqjnC?= =?us-ascii?Q?UGQA8knPA5sfivO7jx644cL5wdKSAAKEuymGcwwJtYBhwgjw7uxL4FX3HaxQ?= =?us-ascii?Q?NpVFZnEqL+wr38cGnM5G02+fDBFul3HavCnfi0X9x7tOYwCOz5jgJi1U/EK9?= =?us-ascii?Q?d7HY674dKg3lGx3WqQXF++naJDDmNbq/wHhTWGI8iTeTdF2+p3NO69VRNzE9?= =?us-ascii?Q?bfKp5mQkvyhpbDrsc3VG7cYf9C0VpT3bAgNsLHbja76iXol80yfa9POhdta9?= =?us-ascii?Q?Wq6tRf9BMabNurPnUCtttMxJ+YUcghfcNccLSesfiqMHNUca3Qbl+FjT+BCx?= =?us-ascii?Q?OHJ2Jz+WYuIOSXBk0/pT8/8bn9ITjgbotll+hJpbbszLQAwkUdOGsJURLt7E?= =?us-ascii?Q?kvSmktnMg+URuSNqh2oXNV7vgyOPFXF9BYzT9KETI6NY0y/YwkXGMmAyacYZ?= =?us-ascii?Q?a8344f7A1PqHgoYv02hLd/nVW1in3i1Y4vjT0OmBFoT0HPN8kt2hMzf70yY?= =?us-ascii?Q?=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DBBPR08MB6091.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(1800799015)(376005);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR08MB5414 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM4PEPF00027A69.eurprd04.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: b3f45f07-283d-4937-cfed-08dc7995168d X-Microsoft-Antispam: BCL:0;ARA:13230031|1800799015|82310400017|35042699013|376005|36860700004; X-Microsoft-Antispam-Message-Info: =?utf-8?B?QkVyUVpreGNxSXVDU3J4TjVqd3ZkbzBudHF3OXlBbXFSbFgvUlY1Y2lFaWx4?= =?utf-8?B?Wmh0aFEwZ2NBQVEvZHpvUDRlazRHWFZOQnlpRE9taW0wUnVpVEJ0U3B3Vlkr?= =?utf-8?B?ZW00TWljSjQrMlk3TEdCTDRPOVYxcmpoajEzMStxVExVSVBja0lEVU04WGpE?= =?utf-8?B?VWhDUElEYnl3TUhHekt1ZGNEbXVBWFZwZlIwbDNyZWZDSk5uVkdoTytUVjJt?= =?utf-8?B?SWp6L3k2U2VGUUkrVWVoQUdib3BvWFYwNko1NVMvY3MwcXN1U0JCSkV5eWRX?= =?utf-8?B?SVVhb0F6ZThZb2h1bFhuVFcwOVExT2twNjJYbm56NEdKNkVBU2FqRU5jbkR1?= =?utf-8?B?akhqSUtuOE1UUVhuVnI5RFZtR0ZXOEh2ZkErM1VScjUzL0dRZEU3TEw5Rk1q?= =?utf-8?B?OEdSckEzNm9pY1JzL1pib3B0V2YyME1ySDI0V3pFRmZYdEJqZythTllneUFa?= =?utf-8?B?Ti9GeGtxNm1SYVJmbzNnSlVYT2ZENERjMHZXU2R4b0l0dCtoQnd2a0U1cndu?= =?utf-8?B?d1IxUkgvbER2b1N6SWhZdjdialRQMjhkVEFOcVdxWUhHUW8ydm5Ga0E0bDdT?= =?utf-8?B?MWdna3ZGRk1CYzA3N2lZRmozTWllU0VzcXNmYUQ0UDVQMEtnTXpZWkhueGFZ?= =?utf-8?B?TVNIcmsvYnBEdExtSnFPZjdyUkorZlQ4cmFlM0hQUGVkVjRjNFg2NzBoRTBZ?= =?utf-8?B?U1Y1YzBVa3daK1RwWm1KQzNXSC9rc2c4Wkk3cGY2NW5FZ3FweFk2M1JSbEd5?= =?utf-8?B?TER6b2JjR1pGUUptNktmbXZDY2VWd053eFpvbGZML1hoOEEwUU95dlYxcmRh?= =?utf-8?B?UWhyQ012NEhuTGExYVhCYTNBeDd6WnNzNlBBTis4VDV1YWJpN242WGhIMXg5?= =?utf-8?B?NlYvYXFNM0lMMCtVUnBRT1pxSWhzOEFrcTg1cnRMcEhMaldYZHJEZnAwbDhZ?= =?utf-8?B?MXRFSXFHckVOaG1XTGZwaHVweXJEMzdoWnV1cW9nMU5sdEUvclRkdnhmekY3?= =?utf-8?B?SS81dHdaTitiVW1HdXgrUTQyQndmRGVBd3JJQ3g4OW03NVVYNldOT25yYVlU?= =?utf-8?B?QXJxRnNucEgwTFZOL1NFZDl1L0RMY3lUak45MndXcis3NEZQcVhTV2FxbFIw?= =?utf-8?B?T3ZiTzVSTHVlTWw1R3Z0YzBsT3VidzN3NjhBUEljNk1xcVRXOHM3cHNTcEtz?= =?utf-8?B?ZWRrbHZtamxydGtBbkRNRmZEVVBGSm4zSmFuVFJRc04yRnRoT0Z4ZEhQaGlj?= =?utf-8?B?bG84NDJUZjN3eVNkUERnM2F4WnFyQVo1Wjcrc2J6Z0o1QU55eDhkY3VjY2xH?= =?utf-8?B?dHFLS0VpMmJxOTlteDhtNGxiQUFlbGRUY1RzZ2dzOTFSL0lZZ3RrZFh0N0RU?= =?utf-8?B?bFVUUTdzTS9hV21DUW53YmhPY3UxMzA5SnRMcjBEZHpaZHBBekpZSUV5TTNY?= =?utf-8?B?WUFMMzhRbmdXYXBXdUdxbHc5RmhaU2JxRU4yemsrMHkvM2JPS1lJNlJuTTRo?= =?utf-8?B?MzZSckJEeVZEdGtZUFlVUVJpQkVRUy9ucTd0Y1Z1Ri9ianN3cUMxZTJzbEZp?= =?utf-8?B?WlFQdUVnd05iaHlCVkM4SlYzRGUySW16YTFxNTJOVzdYdFpMOVEvK1N0UjRD?= =?utf-8?B?MlRrZ05GenQ3VlAyRDBjM1NTbjFBV3dyKzdhOU0rUkozRXJCcFNnWjhpdzhp?= =?utf-8?B?bGNGWTZUZTBEN0dnRVZBSi9OSGE5UWs2WmFVVFlkeEJHclJaZjkwcVhySXZT?= =?utf-8?B?Y3lQcDBLQjFDVy92WGh2WHlVd0ZGNzlqdjJOVTIwVmh1UGNZQTNCU0Vvc2NJ?= =?utf-8?B?eVMzVGZRbDhtdjJLdi9rUT09?= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(1800799015)(82310400017)(35042699013)(376005)(36860700004);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 May 2024 12:54:11.3769 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: cbeeec8f-63bd-4c7f-a936-08dc79951c76 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM4PEPF00027A69.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9885 X-Spam-Status: No, score=-12.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FORGED_SPF_HELO,GIT_PATCH_0,KAM_LOTSOFHASH,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_NONE,TXREP,UNPARSEABLE_RELAY 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: --------------DNoLmd4rZbwdoYwDLlqpVbQ9 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Introduces instructions for the Advanced SIMD lut extension for AArch64. They are documented in the following links: * luti2: https://developer.arm.com/documentation/ddi0602/2024-03/SIMD-FP-Instructions/LUTI2--Lookup-table-read-with-2-bit-indices-?lang=en * luti4: https://developer.arm.com/documentation/ddi0602/2024-03/SIMD-FP-Instructions/LUTI4--Lookup-table-read-with-4-bit-indices-?lang=en These instructions needed definition of some new operands. We will first discuss operands for the third operand of the instructions and then discuss a vector register list operand needed for the second operand. The third operands are vectors with bit indices and without type qualifiers. They are called Em_INDEX1_14, Em_INDEX2_13, and Em_INDEX3_12 and they have 1 bit, 2 bit, and 3 bit indices respectively. For these new operands, we defined new parsing case branch and a new instruction class. We also modified the existing reglane inserters and extractors to handle the new operands. The lsb and width of these operands are the same as many existing operands but the convention is to give different names to fields that serve different purpose so we introduced new fields in aarch64-opc.c and aarch64-opc.h for these operands. For the second operand of these instructions, we introduced a new operand called LVn_LUT. This represents a vector register list with stride 1. We defined new inserter and extractor for this new operand and it is encoded in FLD_Rn. We are enforcing the number of registers in the reglist using opcode flag rather than operand flag as this is what other SIMD vector register list operands are doing. The disassembly also uses opcode flag to print the correct number of registers. --- Hi, Regression tested for aarch64-none-elf and found no regressions. Ok for binutils-master? I don't have commit access so can someone please commit on my behalf? Regards, Saurabh --------------DNoLmd4rZbwdoYwDLlqpVbQ9 Content-Type: text/plain; charset=UTF-8; name="rb18413.patch" Content-Disposition: attachment; filename="rb18413.patch" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2dhcy9jb25maWcvdGMtYWFyY2g2NC5jIGIvZ2FzL2NvbmZpZy90Yy1hYXJj aDY0LmMKaW5kZXggNmFkNGZhZThiMGVjZTcxZTVhYzQ0OGJlODg5ODQ2MzY5YzY1NzQyMC4uYmZi YTZlZmM2NDE3ZTE1ODg3YjAzNDljNjcxZTA3NGUyMjM4YWRjMCAxMDA2NDQKLS0tIGEvZ2FzL2Nv bmZpZy90Yy1hYXJjaDY0LmMKKysrIGIvZ2FzL2NvbmZpZy90Yy1hYXJjaDY0LmMKQEAgLTE1MTMs NiArMTUxMyw1NCBAQCBwYXJzZV92ZWN0b3JfcmVnX2xpc3QgKGNoYXIgKipjY3AsIGFhcmNoNjRf cmVnX3R5cGUgdHlwZSwKICAgcmV0dXJuIGVycm9yID8gUEFSU0VfRkFJTCA6IChyZXRfdmFsIDw8 IDIpIHwgKG5iX3JlZ3MgLSAxKTsKIH0KIAorLyogUGFyc2UgYSBTSU1EIHZlY3RvciByZWdpc3Rl ciB3aXRoIGEgYml0IGluZGV4LiBUaGUgU0lNRCB2ZWN0b3JzIHdpdGgKKyAgIGJpdCBpbmRpY2Vz IGRvbid0IGhhdmUgdHlwZSBxdWFsaWZpZXJzLgorCisgICBSZXR1cm4gbnVsbCBpZiB0aGUgc3Ry aW5nIHBvaW50ZWQgdG8gYnkgKkNDUCBpcyBub3QgYSB2YWxpZCBBZHZTSU1ECisgICB2ZWN0b3Ig cmVnaXN0ZXIgd2l0aCBhIGJpdCBpbmRleC4KKworICAgT3RoZXJ3aXNlIHJldHVybiB0aGUgcmVn aXN0ZXIgYW5kIHRoZSBiaXQgaW5kZXggaW5mb3JtYXRpb24KKyAgIGluICp0eXBlaW5mby4KKwor ICAgVGhlIHZhbGlkaXR5IG9mIHRoZSBiaXQgaW5kZXggaXRzZWxmIGlzIGNoZWNrZWQgc2VwYXJh dGVseSBpbiBlbmNvZGluZy4KKyAqLworCitzdGF0aWMgY29uc3QgcmVnX2VudHJ5ICoKK3BhcnNl X3NpbWRfdmVjdG9yX3dpdGhfYml0X2luZGV4IChjaGFyICoqY2NwLCBzdHJ1Y3QgdmVjdG9yX3R5 cGVfZWwgKnR5cGVpbmZvKQoreworICBjaGFyICpzdHIgPSAqY2NwOworICBjb25zdCByZWdfZW50 cnkgKnJlZyA9IHBhcnNlX3JlZyAoJnN0cik7CisgIHN0cnVjdCB2ZWN0b3JfdHlwZV9lbCBhdHlw ZTsKKworICAvLyBTZXR0aW5nIGl0IGhlcmUgYXMgdGhpcyBpcyB0aGUgY29udmVudGlvbiBmb2xs b3dlZCBpbiB0aGUKKyAgLy8gcmVzdCBvZiB0aGUgY29kZSB3aXRoIGluZGljZXMuCisgIGF0eXBl LmRlZmluZWQgPSBOVEFfSEFTSU5ERVg7CisgIC8vIFRoaXMgd2lsbCBiZSBzZXQgdG8gY29ycmVj dCB2YWx1ZSBpbiBwYXJzZV9pbmRleF9leHByZXNzaW9ucy4KKyAgYXR5cGUuaW5kZXggPSAwOwor ICAvLyBUaGUgcmVzdCBvZiB0aGUgZmllbGRzIGFyZSBub3QgYXBwbGljYWJsZSBmb3IgdGhpcyBv cGVyYW5kLgorICBhdHlwZS50eXBlID0gTlRfaW52dHlwZTsKKyAgYXR5cGUud2lkdGggPSAtMTsK KyAgYXR5cGUuZWxlbWVudF9zaXplID0gMDsKKworICBpZiAocmVnID09IE5VTEwpCisgICAgcmV0 dXJuIE5VTEw7CisKKyAgaWYgKHJlZy0+dHlwZSAhPSBSRUdfVFlQRV9WKQorICAgIHJldHVybiBO VUxMOworCisgIC8vIFBhcnNlIHRoZSBiaXQgaW5kZXguCisgIGlmICghc2tpcF9wYXN0X2NoYXIg KCZzdHIsICdbJykpCisgICAgcmV0dXJuIE5VTEw7CisgIGlmICghcGFyc2VfaW5kZXhfZXhwcmVz c2lvbiAoJnN0ciwgJmF0eXBlLmluZGV4KSkKKyAgICByZXR1cm4gTlVMTDsKKyAgaWYgKCFza2lw X3Bhc3RfY2hhciAoJnN0ciwgJ10nKSkKKyAgICByZXR1cm4gTlVMTDsKKworICAqdHlwZWluZm8g PSBhdHlwZTsKKyAgKmNjcCA9IHN0cjsKKyAgcmV0dXJuIHJlZzsKK30KKwogLyogRGlyZWN0aXZl czogcmVnaXN0ZXIgYWxpYXNlcy4gICovCiAKIHN0YXRpYyByZWdfZW50cnkgKgpAQCAtNjc2MSw2 ICs2ODA5LDIzIEBAIHBhcnNlX29wZXJhbmRzIChjaGFyICpzdHIsIGNvbnN0IGFhcmNoNjRfb3Bj b2RlICpvcGNvZGUpCiAJICByZWdfdHlwZSA9IFJFR19UWVBFX1o7CiAJICBnb3RvIHZlY3Rvcl9y ZWdfaW5kZXg7CiAKKwljYXNlIEFBUkNINjRfT1BORF9FbV9JTkRFWDFfMTQ6CisJY2FzZSBBQVJD SDY0X09QTkRfRW1fSU5ERVgyXzEzOgorCWNhc2UgQUFSQ0g2NF9PUE5EX0VtX0lOREVYM18xMjoK KwkgIC8vIFRoZXNlIGFyZSBTSU1EIHZlY3RvciBvcGVyYW5kcyB3aXRoIGJpdCBpbmRpY2VzLiBG b3IgZXhhbXBsZSwKKwkgIC8vICdWMjdbM10nLiBUaGVzZSBvcGVyYW5kcyBkb24ndCBoYXZlIHR5 cGUgcXVhbGlmaWVycyBiZWZvcmUKKwkgIC8vIGluZGljZXMuCisJICByZWcgPSBwYXJzZV9zaW1k X3ZlY3Rvcl93aXRoX2JpdF9pbmRleCgmc3RyLCAmdmVjdHlwZSk7CisKKwkgIGlmICghcmVnKQor CSAgICBnb3RvIGZhaWx1cmU7CisJICBnYXNfYXNzZXJ0ICh2ZWN0eXBlLmRlZmluZWQgJiBOVEFf SEFTSU5ERVgpOworCisJICBpbmZvLT5xdWFsaWZpZXIgPSBBQVJDSDY0X09QTkRfUUxGX05JTDsK KwkgIGluZm8tPnJlZ2xhbmUucmVnbm8gPSByZWctPm51bWJlcjsKKwkgIGluZm8tPnJlZ2xhbmUu aW5kZXggPSB2ZWN0eXBlLmluZGV4OworCSAgYnJlYWs7CisKIAljYXNlIEFBUkNINjRfT1BORF9F ZDoKIAljYXNlIEFBUkNINjRfT1BORF9FbjoKIAljYXNlIEFBUkNINjRfT1BORF9FbToKQEAgLTY4 MTIsNiArNjg3Nyw3IEBAIHBhcnNlX29wZXJhbmRzIChjaGFyICpzdHIsIGNvbnN0IGFhcmNoNjRf b3Bjb2RlICpvcGNvZGUpCiAJICBnb3RvIHZlY3Rvcl9yZWdfbGlzdDsKIAogCWNhc2UgQUFSQ0g2 NF9PUE5EX0xWbjoKKwljYXNlIEFBUkNINjRfT1BORF9MVm5fTFVUOgogCWNhc2UgQUFSQ0g2NF9P UE5EX0xWdDoKIAljYXNlIEFBUkNINjRfT1BORF9MVnRfQUw6CiAJY2FzZSBBQVJDSDY0X09QTkRf TEV0OgpAQCAtMTA0NzcsNiArMTA1NDMsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGFhcmNoNjRf b3B0aW9uX2NwdV92YWx1ZV90YWJsZSBhYXJjaDY0X2ZlYXR1cmVzW10gPSB7CiAgIHsicmNwYzMi LAkJQUFSQ0g2NF9GRUFUVVJFIChSQ1BDMyksIEFBUkNINjRfRkVBVFVSRSAoUkNQQzIpfSwKICAg eyJjcGEiLAkJQUFSQ0g2NF9GRUFUVVJFIChDUEEpLCBBQVJDSDY0X05PX0ZFQVRVUkVTfSwKICAg eyJmYW1pbm1heCIsCQlBQVJDSDY0X0ZFQVRVUkUgKEZBTUlOTUFYKSwgQUFSQ0g2NF9GRUFUVVJF IChTSU1EKX0sCisgIHsibHV0IiwJCUFBUkNINjRfRkVBVFVSRSAoTFVUKSwgQUFSQ0g2NF9GRUFU VVJFIChTSU1EKX0sCiAgIHtOVUxMLAkJQUFSQ0g2NF9OT19GRUFUVVJFUywgQUFSQ0g2NF9OT19G RUFUVVJFU30sCiB9OwogCmRpZmYgLS1naXQgYS9nYXMvdGVzdHN1aXRlL2dhcy9hYXJjaDY0L2Fk dnNpbWQtbHV0LWJhZC5kIGIvZ2FzL3Rlc3RzdWl0ZS9nYXMvYWFyY2g2NC9hZHZzaW1kLWx1dC1i YWQuZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwLi5hM2I1NzczMGU5YjE3NWZjNTZmMWMwYTc0MDE1OTUyNjM0MTk5MGZh Ci0tLSAvZGV2L251bGwKKysrIGIvZ2FzL3Rlc3RzdWl0ZS9nYXMvYWFyY2g2NC9hZHZzaW1kLWx1 dC1iYWQuZApAQCAtMCwwICsxLDMgQEAKKyNhczoKKyNzb3VyY2U6IGFkdnNpbWQtbHV0LnMKKyNl cnJvcl9vdXRwdXQ6IGFkdnNpbWQtbHV0LWJhZC5sClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls ZQpkaWZmIC0tZ2l0IGEvZ2FzL3Rlc3RzdWl0ZS9nYXMvYWFyY2g2NC9hZHZzaW1kLWx1dC1iYWQu bCBiL2dhcy90ZXN0c3VpdGUvZ2FzL2FhcmNoNjQvYWR2c2ltZC1sdXQtYmFkLmwKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MC4uM2FmZTRhMzljNTQ2ZjQ4Y2IwMTFiM2JlYjUxODcwMzIyZmFmNTU1ZQotLS0gL2Rldi9udWxs CisrKyBiL2dhcy90ZXN0c3VpdGUvZ2FzL2FhcmNoNjQvYWR2c2ltZC1sdXQtYmFkLmwKQEAgLTAs MCArMSwyNSBAQAorW14gOl0rOiBBc3NlbWJsZXIgbWVzc2FnZXM6CisuKjogRXJyb3I6IHNlbGVj dGVkIHByb2Nlc3NvciBkb2VzIG5vdCBzdXBwb3J0IGBsdXRpMiB2MC4xNmIse3YwLjE2Yn0sdjBc WzBcXScKKy4qOiBFcnJvcjogc2VsZWN0ZWQgcHJvY2Vzc29yIGRvZXMgbm90IHN1cHBvcnQgYGx1 dGkyIHYzMS4xNmIse3YwLjE2Yn0sdjBcWzBcXScKKy4qOiBFcnJvcjogc2VsZWN0ZWQgcHJvY2Vz c29yIGRvZXMgbm90IHN1cHBvcnQgYGx1dGkyIHYwLjE2Yix7djMxLjE2Yn0sdjBcWzBcXScKKy4q OiBFcnJvcjogc2VsZWN0ZWQgcHJvY2Vzc29yIGRvZXMgbm90IHN1cHBvcnQgYGx1dGkyIHYwLjE2 Yix7djAuMTZifSx2MzFcWzBcXScKKy4qOiBFcnJvcjogc2VsZWN0ZWQgcHJvY2Vzc29yIGRvZXMg bm90IHN1cHBvcnQgYGx1dGkyIHYwLjE2Yix7djAuMTZifSx2MzFcWzNcXScKKy4qOiBFcnJvcjog c2VsZWN0ZWQgcHJvY2Vzc29yIGRvZXMgbm90IHN1cHBvcnQgYGx1dGkyIHYxNy4xNmIse3YyMS4x NmJ9LHYyN1xbMlxdJworLio6IEVycm9yOiBzZWxlY3RlZCBwcm9jZXNzb3IgZG9lcyBub3Qgc3Vw cG9ydCBgbHV0aTIgdjAuOGgse3YwLjhofSx2MFxbMFxdJworLio6IEVycm9yOiBzZWxlY3RlZCBw cm9jZXNzb3IgZG9lcyBub3Qgc3VwcG9ydCBgbHV0aTIgdjMxLjhoLHt2MC44aH0sdjBcWzBcXScK Ky4qOiBFcnJvcjogc2VsZWN0ZWQgcHJvY2Vzc29yIGRvZXMgbm90IHN1cHBvcnQgYGx1dGkyIHYw LjhoLHt2MzEuOGh9LHYwXFswXF0nCisuKjogRXJyb3I6IHNlbGVjdGVkIHByb2Nlc3NvciBkb2Vz IG5vdCBzdXBwb3J0IGBsdXRpMiB2MC44aCx7djAuOGh9LHYzMVxbMFxdJworLio6IEVycm9yOiBz ZWxlY3RlZCBwcm9jZXNzb3IgZG9lcyBub3Qgc3VwcG9ydCBgbHV0aTIgdjAuOGgse3YwLjhofSx2 MFxbN1xdJworLio6IEVycm9yOiBzZWxlY3RlZCBwcm9jZXNzb3IgZG9lcyBub3Qgc3VwcG9ydCBg bHV0aTIgdjE3LjhoLHt2MjEuOGh9LHYyN1xbNFxdJworLio6IEVycm9yOiBzZWxlY3RlZCBwcm9j ZXNzb3IgZG9lcyBub3Qgc3VwcG9ydCBgbHV0aTQgdjAuMTZiLHt2MC4xNmJ9LHYwXFswXF0nCisu KjogRXJyb3I6IHNlbGVjdGVkIHByb2Nlc3NvciBkb2VzIG5vdCBzdXBwb3J0IGBsdXRpNCB2MzEu MTZiLHt2MC4xNmJ9LHYwXFswXF0nCisuKjogRXJyb3I6IHNlbGVjdGVkIHByb2Nlc3NvciBkb2Vz IG5vdCBzdXBwb3J0IGBsdXRpNCB2MC4xNmIse3YzMS4xNmJ9LHYwXFswXF0nCisuKjogRXJyb3I6 IHNlbGVjdGVkIHByb2Nlc3NvciBkb2VzIG5vdCBzdXBwb3J0IGBsdXRpNCB2MC4xNmIse3YwLjE2 Yn0sdjMxXFswXF0nCisuKjogRXJyb3I6IHNlbGVjdGVkIHByb2Nlc3NvciBkb2VzIG5vdCBzdXBw b3J0IGBsdXRpNCB2MC4xNmIse3YwLjE2Yn0sdjBcWzFcXScKKy4qOiBFcnJvcjogc2VsZWN0ZWQg cHJvY2Vzc29yIGRvZXMgbm90IHN1cHBvcnQgYGx1dGk0IHYxNy4xNmIse3YyMS4xNmJ9LHYyN1xb MVxdJworLio6IEVycm9yOiBzZWxlY3RlZCBwcm9jZXNzb3IgZG9lcyBub3Qgc3VwcG9ydCBgbHV0 aTQgdjAuOGgse3YwLjhoLHYxLjhofSx2MFxbMFxdJworLio6IEVycm9yOiBzZWxlY3RlZCBwcm9j ZXNzb3IgZG9lcyBub3Qgc3VwcG9ydCBgbHV0aTQgdjMxLjhoLHt2MC44aCx2MS44aH0sdjBcWzBc XScKKy4qOiBFcnJvcjogc2VsZWN0ZWQgcHJvY2Vzc29yIGRvZXMgbm90IHN1cHBvcnQgYGx1dGk0 IHYwLjhoLHt2MzEuOGgsdjAuOGh9LHYwXFswXF0nCisuKjogRXJyb3I6IHNlbGVjdGVkIHByb2Nl c3NvciBkb2VzIG5vdCBzdXBwb3J0IGBsdXRpNCB2MC44aCx7djAuOGgsdjEuOGh9LHYzMVxbMFxd JworLio6IEVycm9yOiBzZWxlY3RlZCBwcm9jZXNzb3IgZG9lcyBub3Qgc3VwcG9ydCBgbHV0aTQg djAuOGgse3YwLjhoLHYxLjhofSx2MFxbM1xdJworLio6IEVycm9yOiBzZWxlY3RlZCBwcm9jZXNz b3IgZG9lcyBub3Qgc3VwcG9ydCBgbHV0aTQgdjE3LjhoLHt2MjEuOGgsdjIyLjhofSx2MjdcWzJc XScKZGlmZiAtLWdpdCBhL2dhcy90ZXN0c3VpdGUvZ2FzL2FhcmNoNjQvYWR2c2ltZC1sdXQtaWxs ZWdhbC5kIGIvZ2FzL3Rlc3RzdWl0ZS9nYXMvYWFyY2g2NC9hZHZzaW1kLWx1dC1pbGxlZ2FsLmQK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMC4uMzJkZGZlYmFiZTFlMDM2MmVkMGVhYTNmM2FhOTM0NzAwNTBhMzA0YQotLS0g L2Rldi9udWxsCisrKyBiL2dhcy90ZXN0c3VpdGUvZ2FzL2FhcmNoNjQvYWR2c2ltZC1sdXQtaWxs ZWdhbC5kCkBAIC0wLDAgKzEsMyBAQAorI2FzOiAtbWFyY2g9YXJtdjgtYStsdXQKKyNzb3VyY2U6 IGFkdnNpbWQtbHV0LWlsbGVnYWwucworI2Vycm9yX291dHB1dDogYWR2c2ltZC1sdXQtaWxsZWdh bC5sClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvZ2FzL3Rlc3RzdWl0 ZS9nYXMvYWFyY2g2NC9hZHZzaW1kLWx1dC1pbGxlZ2FsLmwgYi9nYXMvdGVzdHN1aXRlL2dhcy9h YXJjaDY0L2FkdnNpbWQtbHV0LWlsbGVnYWwubApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44YmI0MjdjZTllMmRhZWUx NzJhN2FmYjJmZmI1MTQ4M2ZlZmM0ODExCi0tLSAvZGV2L251bGwKKysrIGIvZ2FzL3Rlc3RzdWl0 ZS9nYXMvYWFyY2g2NC9hZHZzaW1kLWx1dC1pbGxlZ2FsLmwKQEAgLTAsMCArMSwyMDggQEAKK1te IDpdKzogQXNzZW1ibGVyIG1lc3NhZ2VzOgorW14gOl0rOlswLTldKzogRXJyb3I6IG9wZXJhbmQg bWlzbWF0Y2ggLS0gYGx1dGkyIHYyLjE2Yixce3Y0LjhoXH0sdjhcWzFcXScKK1teIDpdKzpbMC05 XSs6IEluZm86ICAgIGRpZCB5b3UgbWVhbiB0aGlzXD8KK1teIDpdKzpbMC05XSs6IEluZm86ICAg IAlsdXRpMiB2Mi44aCwgXHt2NC44aFx9LCB2OFxbMVxdCitbXiA6XSs6WzAtOV0rOiBFcnJvcjog b3BlcmFuZCBtaXNtYXRjaCAtLSBgbHV0aTIgdjIuOGgsXHt2NC4xNmJcfSx2OFxbMVxdJworW14g Ol0rOlswLTldKzogSW5mbzogICAgZGlkIHlvdSBtZWFuIHRoaXNcPworW14gOl0rOlswLTldKzog SW5mbzogICAgCWx1dGkyIHYyLjhoLCBce3Y0LjhoXH0sIHY4XFsxXF0KK1teIDpdKzpbMC05XSs6 IEVycm9yOiBvcGVyYW5kIG1pc21hdGNoIC0tIGBsdXRpNCB2Mi4xNmIsXHt2NC44aFx9LHY4XFs1 XF0nCitbXiA6XSs6WzAtOV0rOiBJbmZvOiAgICBkaWQgeW91IG1lYW4gdGhpc1w/CitbXiA6XSs6 WzAtOV0rOiBJbmZvOiAgICAJbHV0aTQgdjIuOGgsIFx7djQuOGhcfSwgdjhcWzVcXQorW14gOl0r OlswLTldKzogRXJyb3I6IG9wZXJhbmQgbWlzbWF0Y2ggLS0gYGx1dGk0IHYyLjhoLFx7djQuMTZi XH0sdjhcWzVcXScKK1teIDpdKzpbMC05XSs6IEluZm86ICAgIGRpZCB5b3UgbWVhbiB0aGlzXD8K K1teIDpdKzpbMC05XSs6IEluZm86ICAgIAlsdXRpNCB2Mi44aCwgXHt2NC44aFx9LCB2OFxbNVxd CitbXiA6XSs6WzAtOV0rOiBFcnJvcjogbWlzc2luZyBicmFjZXMgYXQgb3BlcmFuZCAyIC0tIGBs dXRpMiB2Mi4xNmIsdjQuMTZiLHY4XFsxXF0nCitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8g aW52b2tlZCBmcm9tIGhlcmUKK1teIDpdKzpbMC05XSs6IEVycm9yOiBleHBlY3RlZCBhIHZlY3Rv ciByZWdpc3RlciBhdCBvcGVyYW5kIDEgLS0gYGx1dGkyIHgxMixce3Y0LjE2Ylx9LHY4XFsxXF0n CitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhlcmUKK1teIDpdKzpb MC05XSs6IEVycm9yOiBleHBlY3RlZCBhbiBBZHZhbmNlZCBTSU1EIHZlY3RvciByZWdpc3RlciBh dCBvcGVyYW5kIDIgLS0gYGx1dGkyIHYyLjE2Yixce3gxMlx9LHY4XFsxXF0nCitbXiA6XSs6WzAt OV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhlcmUKK1teIDpdKzpbMC05XSs6IEVycm9y OiBvcGVyYW5kIDMgbXVzdCBiZSBhIFNJTUQgdmVjdG9yIHdpdGhvdXQgYSB0eXBlIHF1YWxpZmll ciBlbmNvZGluZyBhIGJpdCBpbmRleCAtLSBgbHV0aTIgdjIuMTZiLFx7djQuMTZiXH0seDEyXFsx XF0nCitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhlcmUKK1teIDpd KzpbMC05XSs6IEVycm9yOiBtaXNzaW5nIGJyYWNlcyBhdCBvcGVyYW5kIDIgLS0gYGx1dGkyIHYy LjhoLHY0LjhoLHY4XFsxXF0nCitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBm cm9tIGhlcmUKK1teIDpdKzpbMC05XSs6IEVycm9yOiBleHBlY3RlZCBhIHZlY3RvciByZWdpc3Rl ciBhdCBvcGVyYW5kIDEgLS0gYGx1dGkyIHgxMixce3Y0LjhoXH0sdjhcWzFcXScKK1teIDpdKzpb MC05XSs6ICBJbmZvOiBtYWNybyBpbnZva2VkIGZyb20gaGVyZQorW14gOl0rOlswLTldKzogRXJy b3I6IGV4cGVjdGVkIGFuIEFkdmFuY2VkIFNJTUQgdmVjdG9yIHJlZ2lzdGVyIGF0IG9wZXJhbmQg MiAtLSBgbHV0aTIgdjIuOGgsXHt4MTJcfSx2OFxbMVxdJworW14gOl0rOlswLTldKzogIEluZm86 IG1hY3JvIGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogb3BlcmFuZCAz IG11c3QgYmUgYSBTSU1EIHZlY3RvciB3aXRob3V0IGEgdHlwZSBxdWFsaWZpZXIgZW5jb2Rpbmcg YSBiaXQgaW5kZXggLS0gYGx1dGkyIHYyLjhoLFx7djQuOGhcfSx4MTJcWzFcXScKK1teIDpdKzpb MC05XSs6ICBJbmZvOiBtYWNybyBpbnZva2VkIGZyb20gaGVyZQorW14gOl0rOlswLTldKzogRXJy b3I6IG1pc3NpbmcgYnJhY2VzIGF0IG9wZXJhbmQgMiAtLSBgbHV0aTQgdjIuMTZiLHY0LjE2Yix2 OFxbMVxdJworW14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGludm9rZWQgZnJvbSBoZXJlCitb XiA6XSs6WzAtOV0rOiBFcnJvcjogZXhwZWN0ZWQgYSB2ZWN0b3IgcmVnaXN0ZXIgYXQgb3BlcmFu ZCAxIC0tIGBsdXRpNCB4MTIsXHt2NC4xNmJcfSx2OFxbMVxdJworW14gOl0rOlswLTldKzogIElu Zm86IG1hY3JvIGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogZXhwZWN0 ZWQgYW4gQWR2YW5jZWQgU0lNRCB2ZWN0b3IgcmVnaXN0ZXIgYXQgb3BlcmFuZCAyIC0tIGBsdXRp NCB2Mi4xNmIsXHt4MTJcfSx2OFxbMVxdJworW14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGlu dm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogb3BlcmFuZCAzIG11c3QgYmUg YSBTSU1EIHZlY3RvciB3aXRob3V0IGEgdHlwZSBxdWFsaWZpZXIgZW5jb2RpbmcgYSBiaXQgaW5k ZXggLS0gYGx1dGk0IHYyLjE2Yixce3Y0LjE2Ylx9LHgxMlxbMVxdJworW14gOl0rOlswLTldKzog IEluZm86IG1hY3JvIGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogbWlz c2luZyBicmFjZXMgYXQgb3BlcmFuZCAyIC0tIGBsdXRpNCB2Mi44aCx2NC44aCx2OFxbMVxdJwor W14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAt OV0rOiBFcnJvcjogZXhwZWN0ZWQgYSB2ZWN0b3IgcmVnaXN0ZXIgYXQgb3BlcmFuZCAxIC0tIGBs dXRpNCB4MTIsXHt2NC44aFx9LHY4XFsxXF0nCitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8g aW52b2tlZCBmcm9tIGhlcmUKK1teIDpdKzpbMC05XSs6IEVycm9yOiBleHBlY3RlZCBhbiBBZHZh bmNlZCBTSU1EIHZlY3RvciByZWdpc3RlciBhdCBvcGVyYW5kIDIgLS0gYGx1dGk0IHYyLjhoLFx7 eDEyXH0sdjhcWzFcXScKK1teIDpdKzpbMC05XSs6ICBJbmZvOiBtYWNybyBpbnZva2VkIGZyb20g aGVyZQorW14gOl0rOlswLTldKzogRXJyb3I6IG9wZXJhbmQgMyBtdXN0IGJlIGEgU0lNRCB2ZWN0 b3Igd2l0aG91dCBhIHR5cGUgcXVhbGlmaWVyIGVuY29kaW5nIGEgYml0IGluZGV4IC0tIGBsdXRp NCB2Mi44aCxce3Y0LjhoXH0seDEyXFsxXF0nCitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8g aW52b2tlZCBmcm9tIGhlcmUKK1teIDpdKzpbMC05XSs6IEVycm9yOiBvcGVyYW5kIDIgbXVzdCBi ZSBhIFNJTUQgdmVjdG9yIHJlZ2lzdGVyIGxpc3QgLS0gYGx1dGk0IHYyLjhoLFx7djQuOGgseDEy XH0sdjhcWzFcXScKK1teIDpdKzpbMC05XSs6IEVycm9yOiBvcGVyYW5kIG1pc21hdGNoIC0tIGBs dXRpMiB2Mi44Yixce3Y0LjhiXH0sdjhcWzFcXScKK1teIDpdKzpbMC05XSs6IEluZm86ICAgIGRp ZCB5b3UgbWVhbiB0aGlzXD8KK1teIDpdKzpbMC05XSs6IEluZm86ICAgIAlsdXRpMiB2Mi44aCwg XHt2NC44aFx9LCB2OFxbMVxdCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogb3BlcmFuZCBtaXNtYXRj aCAtLSBgbHV0aTIgdjIuNGgsXHt2NC40aFx9LHY4XFsxXF0nCitbXiA6XSs6WzAtOV0rOiBJbmZv OiAgICBkaWQgeW91IG1lYW4gdGhpc1w/CitbXiA6XSs6WzAtOV0rOiBJbmZvOiAgICAJbHV0aTIg djIuOGgsIFx7djQuOGhcfSwgdjhcWzFcXQorW14gOl0rOlswLTldKzogRXJyb3I6IG9wZXJhbmQg bWlzbWF0Y2ggLS0gYGx1dGk0IHYyLjhiLFx7djQuOGJcfSx2OFxbNVxdJworW14gOl0rOlswLTld KzogSW5mbzogICAgZGlkIHlvdSBtZWFuIHRoaXNcPworW14gOl0rOlswLTldKzogSW5mbzogICAg CWx1dGk0IHYyLjhoLCBce3Y0LjhoXH0sIHY4XFs1XF0KK1teIDpdKzpbMC05XSs6IEVycm9yOiBv cGVyYW5kIG1pc21hdGNoIC0tIGBsdXRpNCB2Mi40aCxce3Y0LjRoLHY1LjRoXH0sdjhcWzVcXScK K1teIDpdKzpbMC05XSs6IEluZm86ICAgIGRpZCB5b3UgbWVhbiB0aGlzXD8KK1teIDpdKzpbMC05 XSs6IEluZm86ICAgIAlsdXRpNCB2Mi44aCwgXHt2NC44aC12NS44aFx9LCB2OFxbNVxdCitbXiA6 XSs6WzAtOV0rOiBFcnJvcjogY29tbWEgZXhwZWN0ZWQgYmV0d2VlbiBvcGVyYW5kcyBhdCBvcGVy YW5kIDIgLS0gYGx1dGkyIHYyLjE2YicKK1teIDpdKzpbMC05XSs6ICBJbmZvOiBtYWNybyBpbnZv a2VkIGZyb20gaGVyZQorW14gOl0rOlswLTldKzogRXJyb3I6IGV4cGVjdGVkIGVsZW1lbnQgdHlw ZSByYXRoZXIgdGhhbiB2ZWN0b3IgdHlwZSBhdCBvcGVyYW5kIDIgLS0gYGx1dGkyIHYyLjE2Yixc e3Y0LjE2Ylx9JworW14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGludm9rZWQgZnJvbSBoZXJl CitbXiA6XSs6WzAtOV0rOiBFcnJvcjogdW5leHBlY3RlZCBjaGFyYWN0ZXJzIGZvbGxvd2luZyBp bnN0cnVjdGlvbiBhdCBvcGVyYW5kIDMgLS0gYGx1dGkyIHYyLjE2Yixce3Y0LjE2Ylx9LHY4XFsx XF0sdjE2LjE2YicKK1teIDpdKzpbMC05XSs6ICBJbmZvOiBtYWNybyBpbnZva2VkIGZyb20gaGVy ZQorW14gOl0rOlswLTldKzogRXJyb3I6IHVuZXhwZWN0ZWQgY2hhcmFjdGVycyBmb2xsb3dpbmcg aW5zdHJ1Y3Rpb24gYXQgb3BlcmFuZCAzIC0tIGBsdXRpMiB2Mi4xNmIsXHt2NC4xNmJcfSx2OFxb MVxdLFx7djE2LjE2Ylx9JworW14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGludm9rZWQgZnJv bSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogY29tbWEgZXhwZWN0ZWQgYmV0d2VlbiBvcGVy YW5kcyBhdCBvcGVyYW5kIDIgLS0gYGx1dGkyIHYyLjhoJworW14gOl0rOlswLTldKzogIEluZm86 IG1hY3JvIGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogZXhwZWN0ZWQg ZWxlbWVudCB0eXBlIHJhdGhlciB0aGFuIHZlY3RvciB0eXBlIGF0IG9wZXJhbmQgMiAtLSBgbHV0 aTIgdjIuOGgsXHt2NC44aFx9JworW14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGludm9rZWQg ZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogdW5leHBlY3RlZCBjaGFyYWN0ZXJzIGZv bGxvd2luZyBpbnN0cnVjdGlvbiBhdCBvcGVyYW5kIDMgLS0gYGx1dGkyIHYyLjhoLFx7djQuOGhc fSx2OFxbMVxdLHYxNi44aCcKK1teIDpdKzpbMC05XSs6ICBJbmZvOiBtYWNybyBpbnZva2VkIGZy b20gaGVyZQorW14gOl0rOlswLTldKzogRXJyb3I6IHVuZXhwZWN0ZWQgY2hhcmFjdGVycyBmb2xs b3dpbmcgaW5zdHJ1Y3Rpb24gYXQgb3BlcmFuZCAzIC0tIGBsdXRpMiB2Mi44aCxce3Y0LjhoXH0s djhcWzFcXSxce3YxNi44aFx9JworW14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGludm9rZWQg ZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogY29tbWEgZXhwZWN0ZWQgYmV0d2VlbiBv cGVyYW5kcyBhdCBvcGVyYW5kIDIgLS0gYGx1dGk0IHYyLjE2YicKK1teIDpdKzpbMC05XSs6ICBJ bmZvOiBtYWNybyBpbnZva2VkIGZyb20gaGVyZQorW14gOl0rOlswLTldKzogRXJyb3I6IGV4cGVj dGVkIGVsZW1lbnQgdHlwZSByYXRoZXIgdGhhbiB2ZWN0b3IgdHlwZSBhdCBvcGVyYW5kIDIgLS0g YGx1dGk0IHYyLjE2Yixce3Y0LjE2Ylx9JworW14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGlu dm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogdW5leHBlY3RlZCBjaGFyYWN0 ZXJzIGZvbGxvd2luZyBpbnN0cnVjdGlvbiBhdCBvcGVyYW5kIDMgLS0gYGx1dGk0IHYyLjE2Yixc e3Y0LjE2Ylx9LHY4XFsxXF0sdjE2LjE2YicKK1teIDpdKzpbMC05XSs6ICBJbmZvOiBtYWNybyBp bnZva2VkIGZyb20gaGVyZQorW14gOl0rOlswLTldKzogRXJyb3I6IHVuZXhwZWN0ZWQgY2hhcmFj dGVycyBmb2xsb3dpbmcgaW5zdHJ1Y3Rpb24gYXQgb3BlcmFuZCAzIC0tIGBsdXRpNCB2Mi4xNmIs XHt2NC4xNmJcfSx2OFxbMVxdLFx7djE2LjE2Ylx9JworW14gOl0rOlswLTldKzogIEluZm86IG1h Y3JvIGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogY29tbWEgZXhwZWN0 ZWQgYmV0d2VlbiBvcGVyYW5kcyBhdCBvcGVyYW5kIDIgLS0gYGx1dGk0IHYyLjhoJworW14gOl0r OlswLTldKzogRXJyb3I6IGV4cGVjdGVkIGVsZW1lbnQgdHlwZSByYXRoZXIgdGhhbiB2ZWN0b3Ig dHlwZSBhdCBvcGVyYW5kIDIgLS0gYGx1dGk0IHYyLjhoLFx7djQuOGgsdjUuOGhcfScKK1teIDpd KzpbMC05XSs6IEVycm9yOiB1bmV4cGVjdGVkIGNoYXJhY3RlcnMgZm9sbG93aW5nIGluc3RydWN0 aW9uIGF0IG9wZXJhbmQgMyAtLSBgbHV0aTQgdjIuOGgsXHt2NC44aCx2NS44aFx9LHY4XFsxXF0s djE2LjhoJworW14gOl0rOlswLTldKzogRXJyb3I6IHVuZXhwZWN0ZWQgY2hhcmFjdGVycyBmb2xs b3dpbmcgaW5zdHJ1Y3Rpb24gYXQgb3BlcmFuZCAzIC0tIGBsdXRpNCB2Mi44aCxce3Y0LjhoLHY1 LjhoXH0sdjhcWzFcXSxce3YxNi44aFx9JworW14gOl0rOlswLTldKzogRXJyb3I6IHVuZXhwZWN0 ZWQgY2hhcmFjdGVyIGB0JyBpbiBlbGVtZW50IHNpemUgYXQgb3BlcmFuZCAyIC0tIGBsdXRpMiB2 Mi4xNmIsXHt2NC4xNnRcfSx2OFxbMVxdJworW14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGlu dm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogdW5leHBlY3RlZCBjaGFyYWN0 ZXIgYHQnIGluIGVsZW1lbnQgc2l6ZSBhdCBvcGVyYW5kIDEgLS0gYGx1dGkyIHYyLjE2dCxce3Y0 LjE2Ylx9LHY4XFsxXF0nCitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9t IGhlcmUKK1teIDpdKzpbMC05XSs6IEVycm9yOiB1bmV4cGVjdGVkIGNoYXJhY3RlciBgbScgaW4g ZWxlbWVudCBzaXplIGF0IG9wZXJhbmQgMiAtLSBgbHV0aTIgdjIuOGgsXHt2NC44bVx9LHY4XFsx XF0nCitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhlcmUKK1teIDpd KzpbMC05XSs6IEVycm9yOiB1bmV4cGVjdGVkIGNoYXJhY3RlciBgbScgaW4gZWxlbWVudCBzaXpl IGF0IG9wZXJhbmQgMSAtLSBgbHV0aTIgdjIuOG0sXHt2NC44aFx9LHY4XFsxXF0nCitbXiA6XSs6 WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhlcmUKK1teIDpdKzpbMC05XSs6IEVy cm9yOiB1bmV4cGVjdGVkIGNoYXJhY3RlciBgdCcgaW4gZWxlbWVudCBzaXplIGF0IG9wZXJhbmQg MiAtLSBgbHV0aTQgdjIuMTZiLFx7djQuMTZ0XH0sdjhcWzFcXScKK1teIDpdKzpbMC05XSs6ICBJ bmZvOiBtYWNybyBpbnZva2VkIGZyb20gaGVyZQorW14gOl0rOlswLTldKzogRXJyb3I6IHVuZXhw ZWN0ZWQgY2hhcmFjdGVyIGB0JyBpbiBlbGVtZW50IHNpemUgYXQgb3BlcmFuZCAxIC0tIGBsdXRp NCB2Mi4xNnQsXHt2NC4xNmJcfSx2OFxbMVxdJworW14gOl0rOlswLTldKzogIEluZm86IG1hY3Jv IGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogdW5leHBlY3RlZCBjaGFy YWN0ZXIgYHQnIGluIGVsZW1lbnQgc2l6ZSBhdCBvcGVyYW5kIDIgLS0gYGx1dGk0IHYyLjhoLFx7 djQuOGgsdjUuOHRcfSx2OFxbMVxdJworW14gOl0rOlswLTldKzogRXJyb3I6IHVuZXhwZWN0ZWQg Y2hhcmFjdGVyIGB0JyBpbiBlbGVtZW50IHNpemUgYXQgb3BlcmFuZCAxIC0tIGBsdXRpNCB2Mi44 dCxce3Y0LjhoLHY1LjhoXH0sdjhcWzFcXScKK1teIDpdKzpbMC05XSs6IEVycm9yOiBpbnZhbGlk IHVzZSBvZiB2ZWN0b3IgcmVnaXN0ZXIgYXQgb3BlcmFuZCAyIC0tIGBsdXRpMiB2Mi4xNmIsXHt2 NFx9LHY4XFsxXF0nCitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhl cmUKK1teIDpdKzpbMC05XSs6IEVycm9yOiBpbnZhbGlkIHVzZSBvZiB2ZWN0b3IgcmVnaXN0ZXIg YXQgb3BlcmFuZCAxIC0tIGBsdXRpMiB2Mixce3Y0LjE2Ylx9LHY4XFsxXF0nCitbXiA6XSs6WzAt OV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhlcmUKK1teIDpdKzpbMC05XSs6IEVycm9y OiBleHBlY3RlZCBhIHJlZ2lzdGVyIG9yIHJlZ2lzdGVyIGxpc3QgYXQgb3BlcmFuZCAxIC0tIGBs dXRpMiAyLjE2Yixce3Y0LjE2Ylx9LHY4XFsxXF0nCitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFj cm8gaW52b2tlZCBmcm9tIGhlcmUKK1teIDpdKzpbMC05XSs6IEVycm9yOiBzeW50YXggZXJyb3Ig aW4gcmVnaXN0ZXIgbGlzdCBhdCBvcGVyYW5kIDIgLS0gYGx1dGkyIHYyLjE2YixcezQuMTZiXH0s djhcWzFcXScKK1teIDpdKzpbMC05XSs6ICBJbmZvOiBtYWNybyBpbnZva2VkIGZyb20gaGVyZQor W14gOl0rOlswLTldKzogRXJyb3I6IGludmFsaWQgdXNlIG9mIHZlY3RvciByZWdpc3RlciBhdCBv cGVyYW5kIDIgLS0gYGx1dGkyIHYyLjhoLFx7djRcfSx2OFxbMVxdJworW14gOl0rOlswLTldKzog IEluZm86IG1hY3JvIGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogaW52 YWxpZCB1c2Ugb2YgdmVjdG9yIHJlZ2lzdGVyIGF0IG9wZXJhbmQgMSAtLSBgbHV0aTIgdjIsXHt2 NC44aFx9LHY4XFsxXF0nCitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9t IGhlcmUKK1teIDpdKzpbMC05XSs6IEVycm9yOiBleHBlY3RlZCBhIHJlZ2lzdGVyIG9yIHJlZ2lz dGVyIGxpc3QgYXQgb3BlcmFuZCAxIC0tIGBsdXRpMiAyLjhoLFx7djQuOGhcfSx2OFxbMVxdJwor W14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAt OV0rOiBFcnJvcjogc3ludGF4IGVycm9yIGluIHJlZ2lzdGVyIGxpc3QgYXQgb3BlcmFuZCAyIC0t IGBsdXRpMiB2Mi44aCxcezQuOGhcfSx2OFxbMVxdJworW14gOl0rOlswLTldKzogIEluZm86IG1h Y3JvIGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogaW52YWxpZCB1c2Ug b2YgdmVjdG9yIHJlZ2lzdGVyIGF0IG9wZXJhbmQgMiAtLSBgbHV0aTQgdjIuMTZiLFx7djRcfSx2 OFxbMVxdJworW14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGludm9rZWQgZnJvbSBoZXJlCitb XiA6XSs6WzAtOV0rOiBFcnJvcjogaW52YWxpZCB1c2Ugb2YgdmVjdG9yIHJlZ2lzdGVyIGF0IG9w ZXJhbmQgMSAtLSBgbHV0aTQgdjIsXHt2NC4xNmJcfSx2OFxbMVxdJworW14gOl0rOlswLTldKzog IEluZm86IG1hY3JvIGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogZXhw ZWN0ZWQgYSByZWdpc3RlciBvciByZWdpc3RlciBsaXN0IGF0IG9wZXJhbmQgMSAtLSBgbHV0aTQg Mi4xNmIsXHt2NC4xNmJcfSx2OFxbMVxdJworW14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGlu dm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogc3ludGF4IGVycm9yIGluIHJl Z2lzdGVyIGxpc3QgYXQgb3BlcmFuZCAyIC0tIGBsdXRpNCB2Mi4xNmIsXHs0LjE2Ylx9LHY4XFsx XF0nCitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhlcmUKK1teIDpd KzpbMC05XSs6IEVycm9yOiBpbnZhbGlkIHVzZSBvZiB2ZWN0b3IgcmVnaXN0ZXIgYXQgb3BlcmFu ZCAyIC0tIGBsdXRpNCB2Mi4xNmIsXHt2NCx2NS4xNmJcfSx2OFxbMVxdJworW14gOl0rOlswLTld KzogRXJyb3I6IGludmFsaWQgdXNlIG9mIHZlY3RvciByZWdpc3RlciBhdCBvcGVyYW5kIDEgLS0g YGx1dGk0IHYyLFx7djQuMTZiLHY1LjE2Ylx9LHY4XFsxXF0nCitbXiA6XSs6WzAtOV0rOiBFcnJv cjogZXhwZWN0ZWQgYSByZWdpc3RlciBvciByZWdpc3RlciBsaXN0IGF0IG9wZXJhbmQgMSAtLSBg bHV0aTQgMi4xNmIsXHt2NC4xNmIsdjUuMTZiXH0sdjhcWzFcXScKK1teIDpdKzpbMC05XSs6IEVy cm9yOiBzeW50YXggZXJyb3IgaW4gcmVnaXN0ZXIgbGlzdCBhdCBvcGVyYW5kIDIgLS0gYGx1dGk0 IHYyLjE2Yixce3Y0LjE2Yiw1LjE2Ylx9LHY4XFsxXF0nCitbXiA6XSs6WzAtOV0rOiBFcnJvcjog b3BlcmFuZCAzIG11c3QgYmUgYSBTSU1EIHZlY3RvciB3aXRob3V0IGEgdHlwZSBxdWFsaWZpZXIg ZW5jb2RpbmcgYSBiaXQgaW5kZXggLS0gYGx1dGkyIHYxNy4xNmIsXHt2MjEuMTZiXH0sdjI3LjE2 YlxbM1xdJworW14gOl0rOlswLTldKzogRXJyb3I6IG9wZXJhbmQgMyBtdXN0IGJlIGEgU0lNRCB2 ZWN0b3Igd2l0aG91dCBhIHR5cGUgcXVhbGlmaWVyIGVuY29kaW5nIGEgYml0IGluZGV4IC0tIGBs dXRpMiB2MTcuOGgsXHt2MjEuOGhcfSx2MjcuOGhcWzRcXScKK1teIDpdKzpbMC05XSs6IEVycm9y OiBvcGVyYW5kIDMgbXVzdCBiZSBhIFNJTUQgdmVjdG9yIHdpdGhvdXQgYSB0eXBlIHF1YWxpZmll ciBlbmNvZGluZyBhIGJpdCBpbmRleCAtLSBgbHV0aTQgdjE3LjE2Yixce3YyMS4xNmJcfSx2Mjcu MTZiXFsxXF0nCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogb3BlcmFuZCAzIG11c3QgYmUgYSBTSU1E IHZlY3RvciB3aXRob3V0IGEgdHlwZSBxdWFsaWZpZXIgZW5jb2RpbmcgYSBiaXQgaW5kZXggLS0g YGx1dGk0IHYxNy44aCxce3YyMS44aCx2MjIuOGhcfSx2MjcuOGhcWzJcXScKK1teIDpdKzpbMC05 XSs6IEVycm9yOiBleHBlY3RlZCBhbiBTVkUgdmVjdG9yIHJlZ2lzdGVyIGF0IG9wZXJhbmQgMSAt LSBgbHV0aTIgdjE3LjE2YlxbMVxdLFx7djAuMTZiXH0sdjMxLjE2YicKK1teIDpdKzpbMC05XSs6 ICBJbmZvOiBtYWNybyBpbnZva2VkIGZyb20gaGVyZQorW14gOl0rOlswLTldKzogRXJyb3I6IHRo aXMgdHlwZSBvZiByZWdpc3RlciBjYW4ndCBiZSBpbmRleGVkIGF0IG9wZXJhbmQgMSAtLSBgbHV0 aTIgdjE3XFsxXF0sXHt2MC4xNmJcfSx2MzEuMTZiJworW14gOl0rOlswLTldKzogIEluZm86IG1h Y3JvIGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogaW5kZXggbm90IGFs bG93ZWQgaW5zaWRlIHJlZ2lzdGVyIGxpc3QgYXQgb3BlcmFuZCAyIC0tIGBsdXRpMiB2MTcuMTZi LFx7djAuMTZiXFsxXF1cfSx2MzEuMTZiJworW14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGlu dm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogdGhpcyB0eXBlIG9mIHJlZ2lz dGVyIGNhbid0IGJlIGluZGV4ZWQgYXQgb3BlcmFuZCAyIC0tIGBsdXRpMiB2MTcuMTZiLFx7djBc WzFcXVx9LHYzMS4xNmInCitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9t IGhlcmUKK1teIDpdKzpbMC05XSs6IEVycm9yOiBleHBlY3RlZCBhbiBTVkUgdmVjdG9yIHJlZ2lz dGVyIGF0IG9wZXJhbmQgMSAtLSBgbHV0aTIgdjE3LjhoXFsxXF0sXHt2MC44aFx9LHYzMS44aCcK K1teIDpdKzpbMC05XSs6ICBJbmZvOiBtYWNybyBpbnZva2VkIGZyb20gaGVyZQorW14gOl0rOlsw LTldKzogRXJyb3I6IHRoaXMgdHlwZSBvZiByZWdpc3RlciBjYW4ndCBiZSBpbmRleGVkIGF0IG9w ZXJhbmQgMSAtLSBgbHV0aTIgdjE3XFsxXF0sXHt2MC44aFx9LHYzMS44aCcKK1teIDpdKzpbMC05 XSs6ICBJbmZvOiBtYWNybyBpbnZva2VkIGZyb20gaGVyZQorW14gOl0rOlswLTldKzogRXJyb3I6 IGluZGV4IG5vdCBhbGxvd2VkIGluc2lkZSByZWdpc3RlciBsaXN0IGF0IG9wZXJhbmQgMiAtLSBg bHV0aTIgdjE3LjhoLFx7djAuOGhcWzFcXVx9LHYzMS44aCcKK1teIDpdKzpbMC05XSs6ICBJbmZv OiBtYWNybyBpbnZva2VkIGZyb20gaGVyZQorW14gOl0rOlswLTldKzogRXJyb3I6IHRoaXMgdHlw ZSBvZiByZWdpc3RlciBjYW4ndCBiZSBpbmRleGVkIGF0IG9wZXJhbmQgMiAtLSBgbHV0aTIgdjE3 LjhoLFx7djBcWzFcXVx9LHYzMS44aCcKK1teIDpdKzpbMC05XSs6ICBJbmZvOiBtYWNybyBpbnZv a2VkIGZyb20gaGVyZQorW14gOl0rOlswLTldKzogRXJyb3I6IGV4cGVjdGVkIGFuIFNWRSB2ZWN0 b3IgcmVnaXN0ZXIgYXQgb3BlcmFuZCAxIC0tIGBsdXRpNCB2MTcuMTZiXFsxXF0sXHt2MC4xNmJc fSx2MzEuMTZiJworW14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGludm9rZWQgZnJvbSBoZXJl CitbXiA6XSs6WzAtOV0rOiBFcnJvcjogdGhpcyB0eXBlIG9mIHJlZ2lzdGVyIGNhbid0IGJlIGlu ZGV4ZWQgYXQgb3BlcmFuZCAxIC0tIGBsdXRpNCB2MTdcWzFcXSxce3YwLjE2Ylx9LHYzMS4xNmIn CitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhlcmUKK1teIDpdKzpb MC05XSs6IEVycm9yOiBpbmRleCBub3QgYWxsb3dlZCBpbnNpZGUgcmVnaXN0ZXIgbGlzdCBhdCBv cGVyYW5kIDIgLS0gYGx1dGk0IHYxNy4xNmIsXHt2MC4xNmJcWzFcXVx9LHYzMS4xNmInCitbXiA6 XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhlcmUKK1teIDpdKzpbMC05XSs6 IEVycm9yOiB0aGlzIHR5cGUgb2YgcmVnaXN0ZXIgY2FuJ3QgYmUgaW5kZXhlZCBhdCBvcGVyYW5k IDIgLS0gYGx1dGk0IHYxNy4xNmIsXHt2MFxbMVxdXH0sdjMxLjE2YicKK1teIDpdKzpbMC05XSs6 ICBJbmZvOiBtYWNybyBpbnZva2VkIGZyb20gaGVyZQorW14gOl0rOlswLTldKzogRXJyb3I6IGV4 cGVjdGVkIGFuIFNWRSB2ZWN0b3IgcmVnaXN0ZXIgYXQgb3BlcmFuZCAxIC0tIGBsdXRpNCB2MTcu OGhcWzFcXSxce3YwLjhoLHYxLjhoXH0sdjMxLjhoJworW14gOl0rOlswLTldKzogRXJyb3I6IHRo aXMgdHlwZSBvZiByZWdpc3RlciBjYW4ndCBiZSBpbmRleGVkIGF0IG9wZXJhbmQgMSAtLSBgbHV0 aTQgdjE3XFsxXF0sXHt2MC44aCx2MS44aFx9LHYzMS44aCcKK1teIDpdKzpbMC05XSs6IEVycm9y OiBpbmRleCBub3QgYWxsb3dlZCBpbnNpZGUgcmVnaXN0ZXIgbGlzdCBhdCBvcGVyYW5kIDIgLS0g YGx1dGk0IHYxNy44aCxce3YwLjhoXFsxXF0sdjEuOGhcfSx2MzEuOGgnCitbXiA6XSs6WzAtOV0r OiBFcnJvcjogdGhpcyB0eXBlIG9mIHJlZ2lzdGVyIGNhbid0IGJlIGluZGV4ZWQgYXQgb3BlcmFu ZCAyIC0tIGBsdXRpNCB2MTcuOGgsXHt2MFxbMVxdLHYxLjhoXH0sdjMxLjhoJworW14gOl0rOlsw LTldKzogRXJyb3I6IG9wZXJhbmQgMyBtdXN0IGJlIGEgU0lNRCB2ZWN0b3Igd2l0aG91dCBhIHR5 cGUgcXVhbGlmaWVyIGVuY29kaW5nIGEgYml0IGluZGV4IC0tIGBsdXRpMiB2Mi4xNmIsXHt2NC4x NmJcfSx2OC4xNmInCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogb3BlcmFuZCAzIG11c3QgYmUgYSBT SU1EIHZlY3RvciB3aXRob3V0IGEgdHlwZSBxdWFsaWZpZXIgZW5jb2RpbmcgYSBiaXQgaW5kZXgg LS0gYGx1dGkyIHYyLjE2Yixce3Y0LjE2Ylx9LHY4JworW14gOl0rOlswLTldKzogRXJyb3I6IG9w ZXJhbmQgMyBtdXN0IGJlIGEgU0lNRCB2ZWN0b3Igd2l0aG91dCBhIHR5cGUgcXVhbGlmaWVyIGVu Y29kaW5nIGEgYml0IGluZGV4IC0tIGBsdXRpMiB2Mi44aCxce3Y0LjhoXH0sdjguOGgnCitbXiA6 XSs6WzAtOV0rOiBFcnJvcjogb3BlcmFuZCAzIG11c3QgYmUgYSBTSU1EIHZlY3RvciB3aXRob3V0 IGEgdHlwZSBxdWFsaWZpZXIgZW5jb2RpbmcgYSBiaXQgaW5kZXggLS0gYGx1dGkyIHYyLjhoLFx7 djQuOGhcfSx2OCcKK1teIDpdKzpbMC05XSs6IEVycm9yOiBvcGVyYW5kIDMgbXVzdCBiZSBhIFNJ TUQgdmVjdG9yIHdpdGhvdXQgYSB0eXBlIHF1YWxpZmllciBlbmNvZGluZyBhIGJpdCBpbmRleCAt LSBgbHV0aTQgdjIuMTZiLFx7djQuMTZiXH0sdjguMTZiJworW14gOl0rOlswLTldKzogRXJyb3I6 IG9wZXJhbmQgMyBtdXN0IGJlIGEgU0lNRCB2ZWN0b3Igd2l0aG91dCBhIHR5cGUgcXVhbGlmaWVy IGVuY29kaW5nIGEgYml0IGluZGV4IC0tIGBsdXRpNCB2Mi4xNmIsXHt2NC4xNmJcfSx2OCcKK1te IDpdKzpbMC05XSs6IEVycm9yOiBvcGVyYW5kIDMgbXVzdCBiZSBhIFNJTUQgdmVjdG9yIHdpdGhv dXQgYSB0eXBlIHF1YWxpZmllciBlbmNvZGluZyBhIGJpdCBpbmRleCAtLSBgbHV0aTQgdjIuOGgs XHt2NC44aCx2NS44aFx9LHY4LjhoJworW14gOl0rOlswLTldKzogRXJyb3I6IG9wZXJhbmQgMyBt dXN0IGJlIGEgU0lNRCB2ZWN0b3Igd2l0aG91dCBhIHR5cGUgcXVhbGlmaWVyIGVuY29kaW5nIGEg Yml0IGluZGV4IC0tIGBsdXRpNCB2Mi44aCxce3Y0LjhoLHY1LjhoXH0sdjgnCitbXiA6XSs6WzAt OV0rOiBFcnJvcjogZXhwZWN0ZWQgYSByZWdpc3RlciBvciByZWdpc3RlciBsaXN0IGF0IG9wZXJh bmQgMSAtLSBgbHV0aTIgdjMyLjE2Yixce3Y0LjE2Ylx9LHY4XFsxXF0nCitbXiA6XSs6WzAtOV0r OiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhlcmUKK1teIDpdKzpbMC05XSs6IEVycm9yOiBl eHBlY3RlZCBhbiBBZHZhbmNlZCBTSU1EIHZlY3RvciByZWdpc3RlciBhdCBvcGVyYW5kIDIgLS0g YGx1dGkyIHYyLjE2Yixce3YzMi4xNmJcfSx2OFxbMVxdJworW14gOl0rOlswLTldKzogIEluZm86 IG1hY3JvIGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogb3BlcmFuZCAz IG11c3QgYmUgYSBTSU1EIHZlY3RvciB3aXRob3V0IGEgdHlwZSBxdWFsaWZpZXIgZW5jb2Rpbmcg YSBiaXQgaW5kZXggLS0gYGx1dGkyIHYyLjE2Yixce3Y0LjE2Ylx9LHYzMlxbMVxdJworW14gOl0r OlswLTldKzogIEluZm86IG1hY3JvIGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBF cnJvcjogcmVnaXN0ZXIgZWxlbWVudCBpbmRleCBvdXQgb2YgcmFuZ2UgMCB0byAzIGF0IG9wZXJh bmQgMyAtLSBgbHV0aTIgdjIuMTZiLFx7djQuMTZiXH0sdjhcWzRcXScKK1teIDpdKzpbMC05XSs6 ICBJbmZvOiBtYWNybyBpbnZva2VkIGZyb20gaGVyZQorW14gOl0rOlswLTldKzogRXJyb3I6IHJl Z2lzdGVyIGVsZW1lbnQgaW5kZXggb3V0IG9mIHJhbmdlIDAgdG8gMyBhdCBvcGVyYW5kIDMgLS0g YGx1dGkyIHYyLjE2Yixce3Y0LjE2Ylx9LHY4XFstMVxdJworW14gOl0rOlswLTldKzogIEluZm86 IG1hY3JvIGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogZXhwZWN0ZWQg YSByZWdpc3RlciBvciByZWdpc3RlciBsaXN0IGF0IG9wZXJhbmQgMSAtLSBgbHV0aTIgdjMyLjho LFx7djQuOGhcfSx2OFxbMVxdJworW14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGludm9rZWQg ZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogZXhwZWN0ZWQgYW4gQWR2YW5jZWQgU0lN RCB2ZWN0b3IgcmVnaXN0ZXIgYXQgb3BlcmFuZCAyIC0tIGBsdXRpMiB2Mi44aCxce3YzMi44aFx9 LHY4XFsxXF0nCitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhlcmUK K1teIDpdKzpbMC05XSs6IEVycm9yOiBvcGVyYW5kIDMgbXVzdCBiZSBhIFNJTUQgdmVjdG9yIHdp dGhvdXQgYSB0eXBlIHF1YWxpZmllciBlbmNvZGluZyBhIGJpdCBpbmRleCAtLSBgbHV0aTIgdjIu OGgsXHt2NC44aFx9LHYzMlxbMVxdJworW14gOl0rOlswLTldKzogIEluZm86IG1hY3JvIGludm9r ZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogcmVnaXN0ZXIgZWxlbWVudCBpbmRl eCBvdXQgb2YgcmFuZ2UgMCB0byA3IGF0IG9wZXJhbmQgMyAtLSBgbHV0aTIgdjIuOGgsXHt2NC44 aFx9LHY4XFs4XF0nCitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhl cmUKK1teIDpdKzpbMC05XSs6IEVycm9yOiByZWdpc3RlciBlbGVtZW50IGluZGV4IG91dCBvZiBy YW5nZSAwIHRvIDcgYXQgb3BlcmFuZCAzIC0tIGBsdXRpMiB2Mi44aCxce3Y0LjhoXH0sdjhcWy0x XF0nCitbXiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhlcmUKK1teIDpd KzpbMC05XSs6IEVycm9yOiBleHBlY3RlZCBhIHJlZ2lzdGVyIG9yIHJlZ2lzdGVyIGxpc3QgYXQg b3BlcmFuZCAxIC0tIGBsdXRpNCB2MzIuMTZiLFx7djQuMTZiXH0sdjhcWzFcXScKK1teIDpdKzpb MC05XSs6ICBJbmZvOiBtYWNybyBpbnZva2VkIGZyb20gaGVyZQorW14gOl0rOlswLTldKzogRXJy b3I6IGV4cGVjdGVkIGFuIEFkdmFuY2VkIFNJTUQgdmVjdG9yIHJlZ2lzdGVyIGF0IG9wZXJhbmQg MiAtLSBgbHV0aTQgdjIuMTZiLFx7djMyLjE2Ylx9LHY4XFsxXF0nCitbXiA6XSs6WzAtOV0rOiAg SW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhlcmUKK1teIDpdKzpbMC05XSs6IEVycm9yOiBvcGVy YW5kIDMgbXVzdCBiZSBhIFNJTUQgdmVjdG9yIHdpdGhvdXQgYSB0eXBlIHF1YWxpZmllciBlbmNv ZGluZyBhIGJpdCBpbmRleCAtLSBgbHV0aTQgdjIuMTZiLFx7djQuMTZiXH0sdjMyXFsxXF0nCitb XiA6XSs6WzAtOV0rOiAgSW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhlcmUKK1teIDpdKzpbMC05 XSs6IEVycm9yOiByZWdpc3RlciBlbGVtZW50IGluZGV4IG91dCBvZiByYW5nZSAwIHRvIDEgYXQg b3BlcmFuZCAzIC0tIGBsdXRpNCB2Mi4xNmIsXHt2NC4xNmJcfSx2OFxbMlxdJworW14gOl0rOlsw LTldKzogIEluZm86IG1hY3JvIGludm9rZWQgZnJvbSBoZXJlCitbXiA6XSs6WzAtOV0rOiBFcnJv cjogcmVnaXN0ZXIgZWxlbWVudCBpbmRleCBvdXQgb2YgcmFuZ2UgMCB0byAxIGF0IG9wZXJhbmQg MyAtLSBgbHV0aTQgdjIuMTZiLFx7djQuMTZiXH0sdjhcWy0xXF0nCitbXiA6XSs6WzAtOV0rOiAg SW5mbzogbWFjcm8gaW52b2tlZCBmcm9tIGhlcmUKK1teIDpdKzpbMC05XSs6IEVycm9yOiBleHBl Y3RlZCBhIHJlZ2lzdGVyIG9yIHJlZ2lzdGVyIGxpc3QgYXQgb3BlcmFuZCAxIC0tIGBsdXRpNCB2 MzIuOGgsXHt2NC44aCx2NS44aFx9LHY4XFsxXF0nCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogb3Bl cmFuZCAyIG11c3QgYmUgYSBTSU1EIHZlY3RvciByZWdpc3RlciBsaXN0IC0tIGBsdXRpNCB2Mi44 aCxce3YzMS44aCx2MzIuOGhcfSx2OFxbMVxdJworW14gOl0rOlswLTldKzogRXJyb3I6IG9wZXJh bmQgMyBtdXN0IGJlIGEgU0lNRCB2ZWN0b3Igd2l0aG91dCBhIHR5cGUgcXVhbGlmaWVyIGVuY29k aW5nIGEgYml0IGluZGV4IC0tIGBsdXRpNCB2Mi44aCxce3Y0LjhoLHY1LjhoXH0sdjMyXFsxXF0n CitbXiA6XSs6WzAtOV0rOiBFcnJvcjogcmVnaXN0ZXIgZWxlbWVudCBpbmRleCBvdXQgb2YgcmFu Z2UgMCB0byAzIGF0IG9wZXJhbmQgMyAtLSBgbHV0aTQgdjIuOGgsXHt2NC44aCx2NS44aFx9LHY4 XFs0XF0nCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogcmVnaXN0ZXIgZWxlbWVudCBpbmRleCBvdXQg b2YgcmFuZ2UgMCB0byAzIGF0IG9wZXJhbmQgMyAtLSBgbHV0aTQgdjIuOGgsXHt2NC44aCx2NS44 aFx9LHY4XFstMVxdJworW14gOl0rOlswLTldKzogRXJyb3I6IHRoZSByZWdpc3RlciBsaXN0IG11 c3QgaGF2ZSBhIHN0cmlkZSBvZiAxIGF0IG9wZXJhbmQgMiAtLSBgbHV0aTQgdjIuOGgsXHt2NC44 aCx2Ni44aFx9LHY4XFsyXF0nCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogZXhwZWN0ZWQgYSBzaW5n bGUtcmVnaXN0ZXIgbGlzdCBhdCBvcGVyYW5kIDIgLS0gYGx1dGkyIHYxNy4xNmIsXHt2MjEuMTZi LHYyMi4xNmJcfSx2MjdcWzJcXScKK1teIDpdKzpbMC05XSs6IEVycm9yOiBleHBlY3RlZCBhIHNp bmdsZS1yZWdpc3RlciBsaXN0IGF0IG9wZXJhbmQgMiAtLSBgbHV0aTIgdjE3LjhoLFx7djIxLjho LHYyMi44aFx9LHYyN1xbNFxdJworW14gOl0rOlswLTldKzogRXJyb3I6IGV4cGVjdGVkIGEgc2lu Z2xlLXJlZ2lzdGVyIGxpc3QgYXQgb3BlcmFuZCAyIC0tIGBsdXRpNCB2MTcuMTZiLFx7djIxLjE2 Yix2MjIuMTZiXH0sdjI3XFsxXF0nCitbXiA6XSs6WzAtOV0rOiBFcnJvcjogZXhwZWN0ZWQgYSBs aXN0IG9mIDIgcmVnaXN0ZXJzIGF0IG9wZXJhbmQgMiAtLSBgbHV0aTQgdjE3LjhoLFx7djIxLjho XH0sdjI3XFsyXF0nCmRpZmYgLS1naXQgYS9nYXMvdGVzdHN1aXRlL2dhcy9hYXJjaDY0L2FkdnNp bWQtbHV0LWlsbGVnYWwucyBiL2dhcy90ZXN0c3VpdGUvZ2FzL2FhcmNoNjQvYWR2c2ltZC1sdXQt aWxsZWdhbC5zCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI0NzcxZmExNDc0NWI0ZDUyNjkyOTU2NDMzYjIxMjkxOTdk OWZlN2YKLS0tIC9kZXYvbnVsbAorKysgYi9nYXMvdGVzdHN1aXRlL2dhcy9hYXJjaDY0L2FkdnNp bWQtbHV0LWlsbGVnYWwucwpAQCAtMCwwICsxLDEyOCBAQAorCS8vIE9wZXJhbmQgbWlzbWF0Y2gK KwlsdXRpMgl2Mi4xNmIsIHsgdjQuOGggfSwgdjhbMV0KKwlsdXRpMgl2Mi44aCwgeyB2NC4xNmIg fSwgdjhbMV0KKwlsdXRpNAl2Mi4xNmIsIHsgdjQuOGggfSwgdjhbNV0KKwlsdXRpNAl2Mi44aCwg eyB2NC4xNmIgfSwgdjhbNV0KKworCS8vIEluY29ycmVjdCBvcGVyYW5kIHR5cGVzCisJLm1hY3Jv IGluY29ycmVjdF9vcGVyYW5kX3R5cGVzIG9wLCBvcGVyYW5kX3R5cGUKKwlcb3AJdjJcb3BlcmFu ZF90eXBlLCB2NFxvcGVyYW5kX3R5cGUsIHY4WzFdCisJXG9wCXgxMiwgeyB2NFxvcGVyYW5kX3R5 cGUgfSwgdjhbMV0KKwlcb3AJdjJcb3BlcmFuZF90eXBlLCB7IHgxMiB9LCB2OFsxXQorCVxvcAl2 MlxvcGVyYW5kX3R5cGUsIHsgdjRcb3BlcmFuZF90eXBlIH0sIHgxMlsxXQorCS5lbmRtCisKKwlp bmNvcnJlY3Rfb3BlcmFuZF90eXBlcyBsdXRpMiAuMTZiCisJaW5jb3JyZWN0X29wZXJhbmRfdHlw ZXMgbHV0aTIgLjhoCisJaW5jb3JyZWN0X29wZXJhbmRfdHlwZXMgbHV0aTQgLjE2YgorCWluY29y cmVjdF9vcGVyYW5kX3R5cGVzIGx1dGk0IC44aAorCWx1dGk0CXYyLjhoLCB7IHY0LjhoLCB4MTIg fSwgdjhbMV0KKworCS8vIERpc2FsbG93ZWQgdHlwZXMKKwlsdXRpMgl2Mi44YiwgeyB2NC44YiB9 LCB2OFsxXQorCWx1dGkyCXYyLjRoLCB7IHY0LjRoIH0sIHY4WzFdCisJbHV0aTQJdjIuOGIsIHsg djQuOGIgfSwgdjhbNV0KKwlsdXRpNAl2Mi40aCwgeyB2NC40aCwgdjUuNGggfSwgdjhbNV0KKwor CS8vIEluY29ycmVjdCBudW1iZXIgb2Ygb3BlcmFuZHMKKwkubWFjcm8gCWluY29ycmVjdF9vcGVy YW5kcywgb3AsIG9wZXJhbmRfdHlwZQorCVxvcAl2MlxvcGVyYW5kX3R5cGUKKwlcb3AJdjJcb3Bl cmFuZF90eXBlLCB7IHY0XG9wZXJhbmRfdHlwZSB9CisJXG9wCXYyXG9wZXJhbmRfdHlwZSwgeyB2 NFxvcGVyYW5kX3R5cGUgfSwgdjhbMV0sIHYxNlxvcGVyYW5kX3R5cGUKKwlcb3AJdjJcb3BlcmFu ZF90eXBlLCB7IHY0XG9wZXJhbmRfdHlwZSB9LCB2OFsxXSwgeyB2MTZcb3BlcmFuZF90eXBlIH0K KwkuZW5kbQorCisJaW5jb3JyZWN0X29wZXJhbmRzIGx1dGkyIC4xNmIKKwlpbmNvcnJlY3Rfb3Bl cmFuZHMgbHV0aTIgLjhoCisJaW5jb3JyZWN0X29wZXJhbmRzIGx1dGk0IC4xNmIKKwlsdXRpNAl2 Mi44aAorCWx1dGk0CXYyLjhoLCB7IHY0LjhoLCB2NS44aCB9CisJbHV0aTQJdjIuOGgsIHsgdjQu OGgsIHY1LjhoIH0sIHY4WzFdLCB2MTYuOGgKKwlsdXRpNAl2Mi44aCwgeyB2NC44aCwgdjUuOGgg fSwgdjhbMV0sIHsgdjE2LjhoIH0KKworCS8vIFNwZWxsaW5nIG1pc3Rha2VzCisJLm1hY3JvIAlz cGVsbGluZ19taXN0YWtlcywgb3AsIG9wZXJhbmRfdHlwZSwgaW5jb3JyZWN0X29wZXJhbmRfdHlw ZQorCVxvcAl2MlxvcGVyYW5kX3R5cGUsIHsgdjRcaW5jb3JyZWN0X29wZXJhbmRfdHlwZSB9LCB2 OFsxXQorCVxvcAl2MlxpbmNvcnJlY3Rfb3BlcmFuZF90eXBlLCB7IHY0XG9wZXJhbmRfdHlwZSB9 LCB2OFsxXQorCS5lbmRtCisKKwlzcGVsbGluZ19taXN0YWtlcyBsdXRpMiwgLjE2YiwgLjE2dAor CXNwZWxsaW5nX21pc3Rha2VzIGx1dGkyLCAuOGgsIC44bQorCXNwZWxsaW5nX21pc3Rha2VzIGx1 dGk0LCAuMTZiLCAuMTZ0CisJbHV0aTQJdjIuOGgsIHsgdjQuOGgsIHY1Ljh0IH0sIHY4WzFdCisJ bHV0aTQJdjIuOHQsIHsgdjQuOGgsIHY1LjhoIH0sIHY4WzFdCisKKwkvLyBNaXNzaW5nIHF1YWxp ZmllcnMKKwkubWFjcm8JbWlzc2luZ19xdWFsaWZpZXJzLCBvcCwgb3BlcmFuZF90eXBlCisJXG9w CXYyXG9wZXJhbmRfdHlwZSwgeyB2NCB9LCB2OFsxXQorCVxvcAl2MiwgeyB2NFxvcGVyYW5kX3R5 cGUgfSwgdjhbMV0KKwlcb3AJMlxvcGVyYW5kX3R5cGUsIHsgdjRcb3BlcmFuZF90eXBlIH0sIHY4 WzFdCisJXG9wCXYyXG9wZXJhbmRfdHlwZSwgeyA0XG9wZXJhbmRfdHlwZSB9LCB2OFsxXQorCS5l bmRtCisKKwltaXNzaW5nX3F1YWxpZmllcnMgbHV0aTIsIC4xNmIKKwltaXNzaW5nX3F1YWxpZmll cnMgbHV0aTIsIC44aAorCW1pc3NpbmdfcXVhbGlmaWVycyBsdXRpNCwgLjE2YgorCWx1dGk0CXYy LjE2YiwgeyB2NCwgdjUuMTZiIH0sIHY4WzFdCisJbHV0aTQJdjIsIHsgdjQuMTZiLCB2NS4xNmIg fSwgdjhbMV0KKwlsdXRpNAkyLjE2YiwgeyB2NC4xNmIsIHY1LjE2YiB9LCB2OFsxXQorCWx1dGk0 CXYyLjE2YiwgeyB2NC4xNmIsIDUuMTZiIH0sIHY4WzFdCisKKwkvLyBJbmRleCB3aXRoIHF1YWxp ZmllcnMKKwlsdXRpMgl2MTcuMTZiLCB7IHYyMS4xNmIgfSwgdjI3LjE2YlszXQorCWx1dGkyCXYx Ny44aCwgeyB2MjEuOGggfSwgdjI3LjhoWzRdCisJbHV0aTQJdjE3LjE2YiwgeyB2MjEuMTZiIH0s IHYyNy4xNmJbMV0KKwlsdXRpNAl2MTcuOGgsIHsgdjIxLjhoLCB2MjIuOGggfSwgdjI3LjhoWzJd CisKKwkvLyBJbmRleCBvbiB0aGUgd3Jvbmcgb3BlcmFuZAorCS5tYWNybyBpbmRleF93cm9uZ19v cGVyYW5kLCBvcCwgb3BlcmFuZF90eXBlCisJXG9wCXYxN1xvcGVyYW5kX3R5cGVbMV0sIHsgdjBc b3BlcmFuZF90eXBlIH0sIHYzMVxvcGVyYW5kX3R5cGUKKwlcb3AJdjE3WzFdLCB7IHYwXG9wZXJh bmRfdHlwZSB9LCB2MzFcb3BlcmFuZF90eXBlCisJXG9wCXYxN1xvcGVyYW5kX3R5cGUsIHsgdjBc b3BlcmFuZF90eXBlWzFdIH0sIHYzMVxvcGVyYW5kX3R5cGUKKwlcb3AJdjE3XG9wZXJhbmRfdHlw ZSwgeyB2MFsxXSB9LCB2MzFcb3BlcmFuZF90eXBlCisJLmVuZG0KKworCWluZGV4X3dyb25nX29w ZXJhbmQgbHV0aTIsIC4xNmIKKwlpbmRleF93cm9uZ19vcGVyYW5kIGx1dGkyLCAuOGgKKwlpbmRl eF93cm9uZ19vcGVyYW5kIGx1dGk0LCAuMTZiCisJbHV0aTQJdjE3LjhoWzFdLCB7IHYwLjhoLCB2 MS44aCB9LCB2MzEuOGgKKwlsdXRpNAl2MTdbMV0sIHsgdjAuOGgsIHYxLjhoIH0sIHYzMS44aAor CWx1dGk0CXYxNy44aCwgeyB2MC44aFsxXSwgdjEuOGggfSwgdjMxLjhoCisJbHV0aTQJdjE3Ljho LCB7IHYwWzFdLCB2MS44aCB9LCB2MzEuOGgKKworCS8vIE1pc3NpbmcgaW5kZXgKKwlsdXRpMgl2 Mi4xNmIsIHsgdjQuMTZiIH0sIHY4LjE2YgorCWx1dGkyCXYyLjE2YiwgeyB2NC4xNmIgfSwgdjgK KwlsdXRpMgl2Mi44aCwgeyB2NC44aCB9LCB2OC44aAorCWx1dGkyCXYyLjhoLCB7IHY0LjhoIH0s IHY4CisJbHV0aTQJdjIuMTZiLCB7IHY0LjE2YiB9LCB2OC4xNmIKKwlsdXRpNAl2Mi4xNmIsIHsg djQuMTZiIH0sIHY4CisJbHV0aTQJdjIuOGgsIHsgdjQuOGgsIHY1LjhoIH0sIHY4LjhoCisJbHV0 aTQJdjIuOGgsIHsgdjQuOGgsIHY1LjhoIH0sIHY4CisKKwkvLyBPdXQgb2YgcmFuZ2Ugb3BlcmFu ZHMKKwkubWFjcm8Jb3V0X29mX3JhbmdlLCBvcCwgb3BlcmFuZF90eXBlLCBtYXhfaW5kZXhfcGx1 c19vbmUKKwlcb3AJdjMyXG9wZXJhbmRfdHlwZSwgeyB2NFxvcGVyYW5kX3R5cGUgfSwgdjhbMV0K Kwlcb3AJdjJcb3BlcmFuZF90eXBlLCB7IHYzMlxvcGVyYW5kX3R5cGUgfSwgdjhbMV0KKwlcb3AJ djJcb3BlcmFuZF90eXBlLCB7IHY0XG9wZXJhbmRfdHlwZSB9LCB2MzJbMV0KKwlcb3AJdjJcb3Bl cmFuZF90eXBlLCB7IHY0XG9wZXJhbmRfdHlwZSB9LCB2OFtcbWF4X2luZGV4X3BsdXNfb25lXQor CVxvcAl2MlxvcGVyYW5kX3R5cGUsIHsgdjRcb3BlcmFuZF90eXBlIH0sIHY4Wy0xXQorCS5lbmRt CisKKwlvdXRfb2ZfcmFuZ2UgbHV0aTIsIC4xNmIsIDQKKwlvdXRfb2ZfcmFuZ2UgbHV0aTIsIC44 aCwgOAorCW91dF9vZl9yYW5nZSBsdXRpNCwgLjE2YiwgMgorCWx1dGk0CXYzMi44aCwgeyB2NC44 aCwgdjUuOGggfSwgdjhbMV0KKwlsdXRpNAl2Mi44aCwgeyB2MzEuOGgsIHYzMi44aCB9LCB2OFsx XQorCWx1dGk0CXYyLjhoLCB7IHY0LjhoLCB2NS44aCB9LCB2MzJbMV0KKwlsdXRpNAl2Mi44aCwg eyB2NC44aCwgdjUuOGggfSwgdjhbNF0KKwlsdXRpNAl2Mi44aCwgeyB2NC44aCwgdjUuOGggfSwg djhbLTFdCisKKwkvLyBJbmNvcnJlY3Qgc3RyaWRlIG9mIG9wZXJhbmQKKwlsdXRpNAl2Mi44aCwg eyB2NC44aCwgdjYuOGggfSwgdjhbMl0KKworCS8vIEluY29ycmVjdCBvcGVyYW5kcworCWx1dGky CXYxNy4xNmIsIHsgdjIxLjE2YiwgdjIyLjE2YiB9LCB2MjdbMl0KKwlsdXRpMgl2MTcuOGgsIHsg djIxLjhoLCB2MjIuOGggfSwgdjI3WzRdCisJbHV0aTQJdjE3LjE2YiwgeyB2MjEuMTZiLCB2MjIu MTZiIH0sIHYyN1sxXQorCWx1dGk0CXYxNy44aCwgeyB2MjEuOGggfSwgdjI3WzJdCmRpZmYgLS1n aXQgYS9nYXMvdGVzdHN1aXRlL2dhcy9hYXJjaDY0L2FkdnNpbWQtbHV0LmQgYi9nYXMvdGVzdHN1 aXRlL2dhcy9hYXJjaDY0L2FkdnNpbWQtbHV0LmQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDI0MGQwZGVkNmRhMTA4 YTFiMTM1ZWM2MWE5M2NlOTlmNGI1MjI4NgotLS0gL2Rldi9udWxsCisrKyBiL2dhcy90ZXN0c3Vp dGUvZ2FzL2FhcmNoNjQvYWR2c2ltZC1sdXQuZApAQCAtMCwwICsxLDMyIEBACisjb2JqZHVtcDog LWRyCisjYXM6IC1tYXJjaD1hcm12OC1hK2x1dAorCisuKjogICAgIGZpbGUgZm9ybWF0IC4qCisK K0Rpc2Fzc2VtYmx5IG9mIHNlY3Rpb24gXC50ZXh0OgorCiswKyA8Lio+OgorW146XSs6CTRlODAx MDAwIAlsdXRpMgl2MC4xNmIsIFx7djAuMTZiXH0sIHYwXFswXF0KK1teOl0rOgk0ZTgwMTAxZiAJ bHV0aTIJdjMxLjE2YiwgXHt2MC4xNmJcfSwgdjBcWzBcXQorW146XSs6CTRlODAxM2UwIAlsdXRp Mgl2MC4xNmIsIFx7djMxLjE2Ylx9LCB2MFxbMFxdCitbXjpdKzoJNGU5ZjEwMDAgCWx1dGkyCXYw LjE2YiwgXHt2MC4xNmJcfSwgdjMxXFswXF0KK1teOl0rOgk0ZTlmNzAwMCAJbHV0aTIJdjAuMTZi LCBce3YwLjE2Ylx9LCB2MzFcWzNcXQorW146XSs6CTRlOWI1MmIxIAlsdXRpMgl2MTcuMTZiLCBc e3YyMS4xNmJcfSwgdjI3XFsyXF0KK1teOl0rOgk0ZWMwMDAwMCAJbHV0aTIJdjAuOGgsIFx7djAu OGhcfSwgdjBcWzBcXQorW146XSs6CTRlYzAwMDFmIAlsdXRpMgl2MzEuOGgsIFx7djAuOGhcfSwg djBcWzBcXQorW146XSs6CTRlYzAwM2UwIAlsdXRpMgl2MC44aCwgXHt2MzEuOGhcfSwgdjBcWzBc XQorW146XSs6CTRlZGYwMDAwIAlsdXRpMgl2MC44aCwgXHt2MC44aFx9LCB2MzFcWzBcXQorW146 XSs6CTRlYzA3MDAwIAlsdXRpMgl2MC44aCwgXHt2MC44aFx9LCB2MFxbN1xdCitbXjpdKzoJNGVk YjQyYjEgCWx1dGkyCXYxNy44aCwgXHt2MjEuOGhcfSwgdjI3XFs0XF0KK1teOl0rOgk0ZTQwMjAw MCAJbHV0aTQJdjAuMTZiLCBce3YwLjE2Ylx9LCB2MFxbMFxdCitbXjpdKzoJNGU0MDIwMWYgCWx1 dGk0CXYzMS4xNmIsIFx7djAuMTZiXH0sIHYwXFswXF0KK1teOl0rOgk0ZTQwMjNlMCAJbHV0aTQJ djAuMTZiLCBce3YzMS4xNmJcfSwgdjBcWzBcXQorW146XSs6CTRlNWYyMDAwIAlsdXRpNAl2MC4x NmIsIFx7djAuMTZiXH0sIHYzMVxbMFxdCitbXjpdKzoJNGU0MDYwMDAgCWx1dGk0CXYwLjE2Yiwg XHt2MC4xNmJcfSwgdjBcWzFcXQorW146XSs6CTRlNWI2MmIxIAlsdXRpNAl2MTcuMTZiLCBce3Yy MS4xNmJcfSwgdjI3XFsxXF0KK1teOl0rOgk0ZTQwMTAwMCAJbHV0aTQJdjAuOGgsIFx7djAuOGgt djEuOGhcfSwgdjBcWzBcXQorW146XSs6CTRlNDAxMDFmIAlsdXRpNAl2MzEuOGgsIFx7djAuOGgt djEuOGhcfSwgdjBcWzBcXQorW146XSs6CTRlNDAxM2UwIAlsdXRpNAl2MC44aCwgXHt2MzEuOGgt djAuOGhcfSwgdjBcWzBcXQorW146XSs6CTRlNWYxMDAwIAlsdXRpNAl2MC44aCwgXHt2MC44aC12 MS44aFx9LCB2MzFcWzBcXQorW146XSs6CTRlNDA3MDAwIAlsdXRpNAl2MC44aCwgXHt2MC44aC12 MS44aFx9LCB2MFxbM1xdCitbXjpdKzoJNGU1YjUyYjEgCWx1dGk0CXYxNy44aCwgXHt2MjEuOGgt djIyLjhoXH0sIHYyN1xbMlxdCmRpZmYgLS1naXQgYS9nYXMvdGVzdHN1aXRlL2dhcy9hYXJjaDY0 L2FkdnNpbWQtbHV0LnMgYi9nYXMvdGVzdHN1aXRlL2dhcy9hYXJjaDY0L2FkdnNpbWQtbHV0LnMK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMC4uMDNiYzI3YWIyYWI3ZmMxNmU5YWE5NDlkODNmZjFjMDI0Yzk4NWFkMgotLS0g L2Rldi9udWxsCisrKyBiL2dhcy90ZXN0c3VpdGUvZ2FzL2FhcmNoNjQvYWR2c2ltZC1sdXQucwpA QCAtMCwwICsxLDI5IEBACisJLy8gVmFsaWQgbHV0aTIgaW5zdHJ1Y3Rpb25zCisJbHV0aTIJdjAu MTZiLCB7IHYwLjE2YiB9LCB2MFswXQorCWx1dGkyCXYzMS4xNmIsIHsgdjAuMTZiIH0sIHYwWzBd CisJbHV0aTIJdjAuMTZiLCB7IHYzMS4xNmIgfSwgdjBbMF0KKwlsdXRpMgl2MC4xNmIsIHsgdjAu MTZiIH0sIHYzMVswXQorCWx1dGkyCXYwLjE2YiwgeyB2MC4xNmIgfSwgdjMxWzNdCisJbHV0aTIJ djE3LjE2YiwgeyB2MjEuMTZiIH0sIHYyN1syXQorCisJbHV0aTIJdjAuOGgsIHsgdjAuOGggfSwg djBbMF0KKwlsdXRpMgl2MzEuOGgsIHsgdjAuOGggfSwgdjBbMF0KKwlsdXRpMgl2MC44aCwgeyB2 MzEuOGggfSwgdjBbMF0KKwlsdXRpMgl2MC44aCwgeyB2MC44aCB9LCB2MzFbMF0KKwlsdXRpMgl2 MC44aCwgeyB2MC44aCB9LCB2MFs3XQorCWx1dGkyCXYxNy44aCwgeyB2MjEuOGggfSwgdjI3WzRd CisKKwkvLyBWYWxpZCBsdXRpNCBpbnN0cnVjdGlvbnMKKwlsdXRpNAl2MC4xNmIsIHsgdjAuMTZi IH0sIHYwWzBdCisJbHV0aTQJdjMxLjE2YiwgeyB2MC4xNmIgfSwgdjBbMF0KKwlsdXRpNAl2MC4x NmIsIHsgdjMxLjE2YiB9LCB2MFswXQorCWx1dGk0CXYwLjE2YiwgeyB2MC4xNmIgfSwgdjMxWzBd CisJbHV0aTQJdjAuMTZiLCB7IHYwLjE2YiB9LCB2MFsxXQorCWx1dGk0CXYxNy4xNmIsIHsgdjIx LjE2YiB9LCB2MjdbMV0KKworCWx1dGk0CXYwLjhoLCB7IHYwLjhoLCB2MS44aCB9LCB2MFswXQor CWx1dGk0CXYzMS44aCwgeyB2MC44aCwgdjEuOGggfSwgdjBbMF0KKwlsdXRpNAl2MC44aCwgeyB2 MzEuOGgsIHYwLjhoIH0sIHYwWzBdCisJbHV0aTQJdjAuOGgsIHsgdjAuOGgsIHYxLjhoIH0sIHYz MVswXQorCWx1dGk0CXYwLjhoLCB7IHYwLjhoLCB2MS44aCB9LCB2MFszXQorCWx1dGk0CXYxNy44 aCwgeyB2MjEuOGgsIHYyMi44aCB9LCB2MjdbMl0KZGlmZiAtLWdpdCBhL2luY2x1ZGUvb3Bjb2Rl L2FhcmNoNjQuaCBiL2luY2x1ZGUvb3Bjb2RlL2FhcmNoNjQuaAppbmRleCAyZmNhOTUyOGMyMDEy YmU5ODNjMjQxNGEzMGZhNTkzMGU1N2U1YzkyLi42MzQ1NjAyMWExZDE2N2M3NDdjYTkxM2EzNTVk ZDAyY2Y5MGZjNzI2IDEwMDY0NAotLS0gYS9pbmNsdWRlL29wY29kZS9hYXJjaDY0LmgKKysrIGIv aW5jbHVkZS9vcGNvZGUvYWFyY2g2NC5oCkBAIC0yMzIsNiArMjMyLDggQEAgZW51bSBhYXJjaDY0 X2ZlYXR1cmVfYml0IHsKICAgQUFSQ0g2NF9GRUFUVVJFX0NQQSwKICAgLyogRkFNSU5NQVggaW5z dHJ1Y3Rpb25zLiAgKi8KICAgQUFSQ0g2NF9GRUFUVVJFX0ZBTUlOTUFYLAorICAvKiBMVVQgaW5z dHJ1Y3Rpb25zLiAgKi8KKyAgQUFSQ0g2NF9GRUFUVVJFX0xVVCwKICAgQUFSQ0g2NF9OVU1fRkVB VFVSRVMKIH07CiAKQEAgLTUxOCwxMCArNTIwLDE0IEBAIGVudW0gYWFyY2g2NF9vcG5kCiAgIEFB UkNINjRfT1BORF9FbSwJLyogQWR2U0lNRCBWZWN0b3IgRWxlbWVudCBWbS4gICovCiAgIEFBUkNI NjRfT1BORF9FbTE2LAkvKiBBZHZTSU1EIFZlY3RvciBFbGVtZW50IFZtIHJlc3RyaWN0ZWQgdG8g VjAgLSBWMTUgd2hlbgogCQkJICAgcXVhbGlmaWVyIGlzIFNfSC4gICovCisgIEFBUkNINjRfT1BO RF9FbV9JTkRFWDFfMTQsICAvKiBBZHZTSU1EIDEtYml0IGVuY29kZWQgaW5kZXggaW4gVm0gYXQg WzE0XSAgKi8KKyAgQUFSQ0g2NF9PUE5EX0VtX0lOREVYMl8xMywgIC8qIEFkdlNJTUQgMi1iaXQg ZW5jb2RlZCBpbmRleCBpbiBWbSBhdCBbMTQ6MTNdICAqLworICBBQVJDSDY0X09QTkRfRW1fSU5E RVgzXzEyLCAgLyogQWR2U0lNRCAzLWJpdCBlbmNvZGVkIGluZGV4IGluIFZtIGF0IFsxNDoxMl0g ICovCiAgIEFBUkNINjRfT1BORF9MVm4sCS8qIEFkdlNJTUQgVmVjdG9yIHJlZ2lzdGVyIGxpc3Qg dXNlZCBpbiBlLmcuIFRCTC4gICovCiAgIEFBUkNINjRfT1BORF9MVnQsCS8qIEFkdlNJTUQgVmVj dG9yIHJlZ2lzdGVyIGxpc3QgdXNlZCBpbiBsZC9zdC4gICovCiAgIEFBUkNINjRfT1BORF9MVnRf QUwsCS8qIEFkdlNJTUQgVmVjdG9yIHJlZ2lzdGVyIGxpc3QgZm9yIGxvYWRpbmcgc2luZ2xlCiAJ CQkgICBzdHJ1Y3R1cmUgdG8gYWxsIGxhbmVzLiAgKi8KKyAgQUFSQ0g2NF9PUE5EX0xWbl9MVVQs CS8qIEFkdlNJTUQgVmVjdG9yIHJlZ2lzdGVyIGxpc3QgdXNlZCBpbiBsdXQuICAqLwogICBBQVJD SDY0X09QTkRfTEV0LAkvKiBBZHZTSU1EIFZlY3RvciBFbGVtZW50IGxpc3QuICAqLwogCiAgIEFB UkNINjRfT1BORF9DUm4sCS8qIENvLXByb2Nlc3NvciByZWdpc3RlciBpbiBDUm4gZmllbGQuICAq LwpAQCAtMTAxOCw3ICsxMDI0LDggQEAgZW51bSBhYXJjaDY0X2luc25fY2xhc3MKICAgdGhlLAog ICBzdmUyX3VycXZzLAogICBzdmVfaW5kZXgxLAotICByY3BjMworICByY3BjMywKKyAgbHV0CiB9 OwogCiAvKiBPcGNvZGUgZW51bWVyYXRvcnMuICAqLwpkaWZmIC0tZ2l0IGEvb3Bjb2Rlcy9hYXJj aDY0LWFzbS5oIGIvb3Bjb2Rlcy9hYXJjaDY0LWFzbS5oCmluZGV4IDg4ZTM4OWJmZWJkYTAwMWVm YmI1NzhhNmUxNDRkZDVlMjUxM2NmNzguLmVkZWI2ZDhkZTdlMmMzZTExN2UwYWQ5MWEwMmI5M2Mw ZTA0MGEwNjEgMTAwNjQ0Ci0tLSBhL29wY29kZXMvYWFyY2g2NC1hc20uaAorKysgYi9vcGNvZGVz L2FhcmNoNjQtYXNtLmgKQEAgLTQ3LDYgKzQ3LDcgQEAgQUFSQ0g2NF9ERUNMX09QRF9JTlNFUlRF UiAoaW5zX3JlZ2xhbmUpOwogQUFSQ0g2NF9ERUNMX09QRF9JTlNFUlRFUiAoaW5zX3JlZ2xpc3Qp OwogQUFSQ0g2NF9ERUNMX09QRF9JTlNFUlRFUiAoaW5zX2xkc3RfcmVnbGlzdCk7CiBBQVJDSDY0 X0RFQ0xfT1BEX0lOU0VSVEVSIChpbnNfbGRzdF9yZWdsaXN0X3IpOworQUFSQ0g2NF9ERUNMX09Q RF9JTlNFUlRFUiAoaW5zX2x1dF9yZWdsaXN0KTsKIEFBUkNINjRfREVDTF9PUERfSU5TRVJURVIg KGluc19sZHN0X2VsZW1saXN0KTsKIEFBUkNINjRfREVDTF9PUERfSU5TRVJURVIgKGluc19hZHZz aW1kX2ltbV9zaGlmdCk7CiBBQVJDSDY0X0RFQ0xfT1BEX0lOU0VSVEVSIChpbnNfaW1tKTsKZGlm ZiAtLWdpdCBhL29wY29kZXMvYWFyY2g2NC1hc20uYyBiL29wY29kZXMvYWFyY2g2NC1hc20uYwpp bmRleCA1YTU1Y2EyZjg2ZGIyZDQ1YjZjYjU0YjVlZTIyNjA2ZWMyN2M1MWZkLi4zMzhlZDU0MTY1 ZDI2Y2VjMmYwNjM0YmM2MmMxZDczNTVjYTQ5NTZhIDEwMDY0NAotLS0gYS9vcGNvZGVzL2FhcmNo NjQtYXNtLmMKKysrIGIvb3Bjb2Rlcy9hYXJjaDY0LWFzbS5jCkBAIC0xNjgsNiArMTY4LDI3IEBA IGFhcmNoNjRfaW5zX3JlZ2xhbmUgKGNvbnN0IGFhcmNoNjRfb3BlcmFuZCAqc2VsZiwgY29uc3Qg YWFyY2g2NF9vcG5kX2luZm8gKmluZm8sCiAgICAgICBhc3NlcnQgKHJlZ2xhbmVfaW5kZXggPCA0 KTsKICAgICAgIGluc2VydF9maWVsZCAoRkxEX1NNM19pbW0yLCBjb2RlLCByZWdsYW5lX2luZGV4 LCAwKTsKICAgICB9CisgIGVsc2UgaWYgKGluc3QtPm9wY29kZS0+aWNsYXNzID09IGx1dCkKKyAg ICB7CisgICAgICB1bnNpZ25lZCByZWdsYW5lX2luZGV4ID0gaW5mby0+cmVnbGFuZS5pbmRleDsK KyAgICAgIHN3aXRjaCAoaW5mby0+dHlwZSkKKwl7CisJY2FzZSBBQVJDSDY0X09QTkRfRW1fSU5E RVgxXzE0OgorCSAgYXNzZXJ0IChyZWdsYW5lX2luZGV4IDwgMik7CisJICBpbnNlcnRfZmllbGQg KEZMRF9pbW0xXzE0LCBjb2RlLCByZWdsYW5lX2luZGV4LCAwKTsKKwkgIGJyZWFrOworCWNhc2Ug QUFSQ0g2NF9PUE5EX0VtX0lOREVYMl8xMzoKKwkgIGFzc2VydCAocmVnbGFuZV9pbmRleCA8IDQp OworCSAgaW5zZXJ0X2ZpZWxkIChGTERfaW1tMl8xMywgY29kZSwgcmVnbGFuZV9pbmRleCwgMCk7 CisJICBicmVhazsKKwljYXNlIEFBUkNINjRfT1BORF9FbV9JTkRFWDNfMTI6CisJICBhc3NlcnQg KHJlZ2xhbmVfaW5kZXggPCA4KTsKKwkgIGluc2VydF9maWVsZCAoRkxEX2ltbTNfMTIsIGNvZGUs IHJlZ2xhbmVfaW5kZXgsIDApOworCSAgYnJlYWs7CisJZGVmYXVsdDoKKwkgIHJldHVybiBmYWxz ZTsKKwl9CisgICAgfQogICBlbHNlCiAgICAgewogICAgICAgLyogaW5kZXggZm9yIGUuZy4gU1FE TUxBTCA8VmE+PGQ+LCA8VmI+PG4+LCA8Vm0+LjxUcz5bPGluZGV4Pl0KQEAgLTI4Niw2ICszMDcs MTcgQEAgYWFyY2g2NF9pbnNfbGRzdF9yZWdsaXN0X3IgKGNvbnN0IGFhcmNoNjRfb3BlcmFuZCAq c2VsZiBBVFRSSUJVVEVfVU5VU0VELAogICByZXR1cm4gdHJ1ZTsKIH0KIAorLyogSW5zZXJ0IHJl Z25vcyBvZiByZWdpc3RlciBsaXN0IG9wZXJhbmQgZm9yIEFkdlNJTUQgbHV0IGluc3RydWN0aW9u cy4gICovCitib29sCithYXJjaDY0X2luc19sdXRfcmVnbGlzdCAoY29uc3QgYWFyY2g2NF9vcGVy YW5kICpzZWxmLCBjb25zdCBhYXJjaDY0X29wbmRfaW5mbyAqaW5mbywKKwkJICAgICBhYXJjaDY0 X2luc24gKmNvZGUsCisJCSAgICAgY29uc3QgYWFyY2g2NF9pbnN0ICppbnN0IEFUVFJJQlVURV9V TlVTRUQsCisJCSAgICAgYWFyY2g2NF9vcGVyYW5kX2Vycm9yICplcnJvcnMgQVRUUklCVVRFX1VO VVNFRCkKK3sKKyAgaW5zZXJ0X2ZpZWxkIChzZWxmLT5maWVsZHNbMF0sIGNvZGUsIGluZm8tPnJl Z2xpc3QuZmlyc3RfcmVnbm8sIDApOworICByZXR1cm4gdHJ1ZTsKK30KKwogLyogSW5zZXJ0IFEs IG9wY29kZTwyOjE+LCBTLCBzaXplIGFuZCBSdCBmaWVsZHMgZm9yIGEgcmVnaXN0ZXIgZWxlbWVu dCBsaXN0CiAgICBvcGVyYW5kIGUuZy4gVnQgaW4gQWR2U0lNRCBsb2FkL3N0b3JlIHNpbmdsZSBl bGVtZW50IGluc3RydWN0aW9ucy4gICovCiBib29sCmRpZmYgLS1naXQgYS9vcGNvZGVzL2FhcmNo NjQtZGlzLmggYi9vcGNvZGVzL2FhcmNoNjQtZGlzLmgKaW5kZXggODY0OTRjYzMwOTM3YjFkN2U0 Y2FmOTA2MzBjYWVjMzBjOGIzMWQzZS4uOWU4ZjdjMjE0ZDcwMzkwYTcyZjkzZTM4NjU1YTVhYzBm NTYyZDA4NSAxMDA2NDQKLS0tIGEvb3Bjb2Rlcy9hYXJjaDY0LWRpcy5oCisrKyBiL29wY29kZXMv YWFyY2g2NC1kaXMuaApAQCAtNzAsNiArNzAsNyBAQCBBQVJDSDY0X0RFQ0xfT1BEX0VYVFJBQ1RP UiAoZXh0X3JlZ2xhbmUpOwogQUFSQ0g2NF9ERUNMX09QRF9FWFRSQUNUT1IgKGV4dF9yZWdsaXN0 KTsKIEFBUkNINjRfREVDTF9PUERfRVhUUkFDVE9SIChleHRfbGRzdF9yZWdsaXN0KTsKIEFBUkNI NjRfREVDTF9PUERfRVhUUkFDVE9SIChleHRfbGRzdF9yZWdsaXN0X3IpOworQUFSQ0g2NF9ERUNM X09QRF9FWFRSQUNUT1IgKGV4dF9sdXRfcmVnbGlzdCk7CiBBQVJDSDY0X0RFQ0xfT1BEX0VYVFJB Q1RPUiAoZXh0X2xkc3RfZWxlbWxpc3QpOwogQUFSQ0g2NF9ERUNMX09QRF9FWFRSQUNUT1IgKGV4 dF9hZHZzaW1kX2ltbV9zaGlmdCk7CiBBQVJDSDY0X0RFQ0xfT1BEX0VYVFJBQ1RPUiAoZXh0X3No bGxfaW1tKTsKZGlmZiAtLWdpdCBhL29wY29kZXMvYWFyY2g2NC1kaXMuYyBiL29wY29kZXMvYWFy Y2g2NC1kaXMuYwppbmRleCA5NmY0MmFlODYyYTM5NWJmM2FhNDk4YzQ5NWZkY2VhOWEzZDEyYTQx Li4xMzBkMmMxZmFlMDA1YzI1YTQ2MTVhODgxOTBiNjJmZmQwNTljZGIxIDEwMDY0NAotLS0gYS9v cGNvZGVzL2FhcmNoNjQtZGlzLmMKKysrIGIvb3Bjb2Rlcy9hYXJjaDY0LWRpcy5jCkBAIC0zOTgs NiArMzk4LDIzIEBAIGFhcmNoNjRfZXh0X3JlZ2xhbmUgKGNvbnN0IGFhcmNoNjRfb3BlcmFuZCAq c2VsZiwgYWFyY2g2NF9vcG5kX2luZm8gKmluZm8sCiAgICAgICAvKiBpbmRleCBmb3IgZS5nLiBT TTNUVDJBIDxWZD4uNFMsIDxWbj4uNFMsIDxWbT5TWzxpbW0yPl0uICAqLwogICAgICAgaW5mby0+ cmVnbGFuZS5pbmRleCA9IGV4dHJhY3RfZmllbGQgKEZMRF9TTTNfaW1tMiwgY29kZSwgMCk7CiAg ICAgfQorICBlbHNlIGlmIChpbnN0LT5vcGNvZGUtPmljbGFzcyA9PSBsdXQpCisgICAgeworICAg ICAgc3dpdGNoIChpbmZvLT50eXBlKQorCXsKKwljYXNlIEFBUkNINjRfT1BORF9FbV9JTkRFWDFf MTQ6CisJICBpbmZvLT5yZWdsYW5lLmluZGV4ID0gZXh0cmFjdF9maWVsZCAoRkxEX2ltbTFfMTQs IGNvZGUsIDApOworCSAgYnJlYWs7CisJY2FzZSBBQVJDSDY0X09QTkRfRW1fSU5ERVgyXzEzOgor CSAgaW5mby0+cmVnbGFuZS5pbmRleCA9IGV4dHJhY3RfZmllbGQgKEZMRF9pbW0yXzEzLCBjb2Rl LCAwKTsKKwkgIGJyZWFrOworCWNhc2UgQUFSQ0g2NF9PUE5EX0VtX0lOREVYM18xMjoKKwkgIGlu Zm8tPnJlZ2xhbmUuaW5kZXggPSBleHRyYWN0X2ZpZWxkIChGTERfaW1tM18xMiwgY29kZSwgMCk7 CisJICBicmVhazsKKwlkZWZhdWx0OgorCSAgcmV0dXJuIGZhbHNlOworCX0KKyAgICB9CiAgIGVs c2UKICAgICB7CiAgICAgICAvKiBJbmRleCBvbmx5IGZvciBlLmcuIFNRRE1MQUwgPFZhPjxkPiwg PFZiPjxuPiwgPFZtPi48VHM+WzxpbmRleD5dCkBAIC01MzMsNiArNTUwLDIxIEBAIGFhcmNoNjRf ZXh0X2xkc3RfcmVnbGlzdF9yIChjb25zdCBhYXJjaDY0X29wZXJhbmQgKnNlbGYgQVRUUklCVVRF X1VOVVNFRCwKICAgcmV0dXJuIHRydWU7CiB9CiAKKy8qIERlY29kZSBBZHZTSU1EIHZlY3RvciBy ZWdpc3RlciBsaXN0IGZvciBBZHZTSU1EIGx1dCBpbnN0cnVjdGlvbnMuCisgICBUaGUgbnVtYmVy IG9mIG9mIHJlZ2lzdGVycyBpbiB0aGUgbGlzdCBpcyBkZXRlcm1pbmVkIGJ5IHRoZSBvcGNvZGUK KyAgIGZsYWcuICAqLworYm9vbAorYWFyY2g2NF9leHRfbHV0X3JlZ2xpc3QgKGNvbnN0IGFhcmNo NjRfb3BlcmFuZCAqc2VsZiwgYWFyY2g2NF9vcG5kX2luZm8gKmluZm8sCisJCSAgICAgY29uc3Qg YWFyY2g2NF9pbnNuIGNvZGUsCisJCSAgICAgY29uc3QgYWFyY2g2NF9pbnN0ICppbnN0IEFUVFJJ QlVURV9VTlVTRUQsCisJCSAgICAgYWFyY2g2NF9vcGVyYW5kX2Vycm9yICplcnJvcnMgQVRUUklC VVRFX1VOVVNFRCkKK3sKKyAgaW5mby0+cmVnbGlzdC5maXJzdF9yZWdubyA9IGV4dHJhY3RfZmll bGQgKHNlbGYtPmZpZWxkc1swXSwgY29kZSwgMCk7CisgIGluZm8tPnJlZ2xpc3QubnVtX3JlZ3Mg PSBnZXRfb3Bjb2RlX2RlcGVuZGVudF92YWx1ZSAoaW5zdC0+b3Bjb2RlKTsKKyAgaW5mby0+cmVn bGlzdC5zdHJpZGUgPSAxOworICByZXR1cm4gdHJ1ZTsKK30KKwogLyogRGVjb2RlIFEsIG9wY29k ZTwyOjE+LCBTLCBzaXplIGFuZCBSdCBmaWVsZHMgb2YgVnQgaW4gQWR2U0lNRAogICAgbG9hZC9z dG9yZSBzaW5nbGUgZWxlbWVudCBpbnN0cnVjdGlvbnMuICAqLwogYm9vbApkaWZmIC0tZ2l0IGEv b3Bjb2Rlcy9hYXJjaDY0LW9wYy5oIGIvb3Bjb2Rlcy9hYXJjaDY0LW9wYy5oCmluZGV4IDRlNzgx ZjAwMGNjMzhjMTIwNTg1MzBlNTg1MWIwODA4M2Q0MmFmNTIuLjIzZTYzNGYxMjUwZGU1Nzk2NjFi YmViMTRkNjExYjg2OGI3NmJjOGQgMTAwNjQ0Ci0tLSBhL29wY29kZXMvYWFyY2g2NC1vcGMuaAor KysgYi9vcGNvZGVzL2FhcmNoNjQtb3BjLmgKQEAgLTE0Nyw2ICsxNDcsNyBAQCBlbnVtIGFhcmNo NjRfZmllbGRfa2luZAogICBGTERfaW1tMV8yLAogICBGTERfaW1tMV84LAogICBGTERfaW1tMV8x MCwKKyAgRkxEX2ltbTFfMTQsCiAgIEZMRF9pbW0xXzE1LAogICBGTERfaW1tMV8xNiwKICAgRkxE X2ltbTJfMCwKQEAgLTE1NCw2ICsxNTUsNyBAQCBlbnVtIGFhcmNoNjRfZmllbGRfa2luZAogICBG TERfaW1tMl84LAogICBGTERfaW1tMl8xMCwKICAgRkxEX2ltbTJfMTIsCisgIEZMRF9pbW0yXzEz LAogICBGTERfaW1tMl8xNSwKICAgRkxEX2ltbTJfMTYsCiAgIEZMRF9pbW0yXzE5LApkaWZmIC0t Z2l0IGEvb3Bjb2Rlcy9hYXJjaDY0LW9wYy5jIGIvb3Bjb2Rlcy9hYXJjaDY0LW9wYy5jCmluZGV4 IGU4OGM2MTZmNGE5ZjM2NTc3NTZiOTE5ZGMxMTk2YzA4ODMxYzNjYzUuLjYxYWI0YzE0YTYzOTMx NTBmMjlhM2ZhMTY3OWEzMGI2NDJiZjg4NDQgMTAwNjQ0Ci0tLSBhL29wY29kZXMvYWFyY2g2NC1v cGMuYworKysgYi9vcGNvZGVzL2FhcmNoNjQtb3BjLmMKQEAgLTMzNyw2ICszMzcsNyBAQCBjb25z dCBhYXJjaDY0X2ZpZWxkIGZpZWxkc1tdID0KICAgICB7ICAyLCAgMSB9LAkvKiBpbW0xXzI6IGdl bmVyYWwgaW1tZWRpYXRlIGluIGJpdHMgWzJdLiAgKi8KICAgICB7ICA4LCAgMSB9LAkvKiBpbW0x Xzg6IGdlbmVyYWwgaW1tZWRpYXRlIGluIGJpdHMgWzhdLiAgKi8KICAgICB7IDEwLCAgMSB9LAkv KiBpbW0xXzEwOiBnZW5lcmFsIGltbWVkaWF0ZSBpbiBiaXRzIFsxMF0uICAqLworICAgIHsgMTQs ICAxIH0sCS8qIGltbTFfMTQ6IGdlbmVyYWwgaW1tZWRpYXRlIGluIGJpdHMgWzE0XS4gICovCiAg ICAgeyAxNSwgIDEgfSwJLyogaW1tMV8xNTogZ2VuZXJhbCBpbW1lZGlhdGUgaW4gYml0cyBbMTVd LiAgKi8KICAgICB7IDE2LCAgMSB9LAkvKiBpbW0xXzE2OiBnZW5lcmFsIGltbWVkaWF0ZSBpbiBi aXRzIFsxNl0uICAqLwogICAgIHsgIDAsICAyIH0sCS8qIGltbTJfMDogZ2VuZXJhbCBpbW1lZGlh dGUgaW4gYml0cyBbMTowXS4gICovCkBAIC0zNDQsNiArMzQ1LDcgQEAgY29uc3QgYWFyY2g2NF9m aWVsZCBmaWVsZHNbXSA9CiAgICAgeyAgOCwgIDIgfSwJLyogaW1tMl84OiBnZW5lcmFsIGltbWVk aWF0ZSBpbiBiaXRzIFs5OjhdLiAgKi8KICAgICB7IDEwLCAgMiB9LCAvKiBpbW0yXzEwOiAyLWJp dCBpbW1lZGlhdGUsIGJpdHMgWzExOjEwXSAqLwogICAgIHsgMTIsICAyIH0sIC8qIGltbTJfMTI6 IDItYml0IGltbWVkaWF0ZSwgYml0cyBbMTM6MTJdICovCisgICAgeyAxMywgIDIgfSwgLyogaW1t Ml8xMzogMi1iaXQgaW1tZWRpYXRlLCBiaXRzIFsxNDoxM10gKi8KICAgICB7IDE1LCAgMiB9LCAv KiBpbW0yXzE1OiAyLWJpdCBpbW1lZGlhdGUsIGJpdHMgWzE2OjE1XSAqLwogICAgIHsgMTYsICAy IH0sIC8qIGltbTJfMTY6IDItYml0IGltbWVkaWF0ZSwgYml0cyBbMTc6MTZdICovCiAgICAgeyAx OSwgIDIgfSwgLyogaW1tMl8xOTogMi1iaXQgaW1tZWRpYXRlLCBiaXRzIFsyMDoxOV0gKi8KQEAg LTI1NTQsNiArMjU1NiwxMCBAQCBvcGVyYW5kX2dlbmVyYWxfY29uc3RyYWludF9tZXRfcCAoY29u c3QgYWFyY2g2NF9vcG5kX2luZm8gKm9wbmRzLCBpbnQgaWR4LAogICAgICAgbnVtID0gZ2V0X29w Y29kZV9kZXBlbmRlbnRfdmFsdWUgKG9wY29kZSk7CiAgICAgICBzd2l0Y2ggKHR5cGUpCiAJewor CWNhc2UgQUFSQ0g2NF9PUE5EX0xWbl9MVVQ6CisJICBpZiAoIWNoZWNrX3JlZ2xpc3QgKG9wbmQs IG1pc21hdGNoX2RldGFpbCwgaWR4LCBudW0sIDEpKQorCSAgICByZXR1cm4gMDsKKwkgIGJyZWFr OwogCWNhc2UgQUFSQ0g2NF9PUE5EX0xWdDoKIAkgIGFzc2VydCAobnVtID49IDEgJiYgbnVtIDw9 IDQpOwogCSAgLyogVW5sZXNzIExEMS9TVDEsIHRoZSBudW1iZXIgb2YgcmVnaXN0ZXJzIHNob3Vs ZCBiZSBlcXVhbCB0byB0aGF0CkBAIC0zMTY1LDYgKzMxNzEsMTQgQEAgb3BlcmFuZF9nZW5lcmFs X2NvbnN0cmFpbnRfbWV0X3AgKGNvbnN0IGFhcmNoNjRfb3BuZF9pbmZvICpvcG5kcywgaW50IGlk eCwKIAkgICBhbmQgaXMgaGFsZmVkIGJlY2F1c2UgY29tcGxleCBudW1iZXJzIHRha2UgdHdvIGVs ZW1lbnRzLiAgKi8KIAludW0gPSBhYXJjaDY0X2dldF9xdWFsaWZpZXJfbmVsZW0gKG9wbmRzWzBd LnF1YWxpZmllcikKIAkgICAgICAqIGFhcmNoNjRfZ2V0X3F1YWxpZmllcl9lc2l6ZSAob3BuZHNb MF0ucXVhbGlmaWVyKSAvIDI7CisgICAgICBlbHNlIGlmIChvcGNvZGUtPmljbGFzcyA9PSBsdXQp CisJeworCSAgc2l6ZSA9IGdldF9vcGVyYW5kX2ZpZWxkc193aWR0aCAoZ2V0X29wZXJhbmRfZnJv bV9jb2RlICh0eXBlKSkgLSA1OworCSAgaWYgKCFjaGVja19yZWdsYW5lIChvcG5kLCBtaXNtYXRj aF9kZXRhaWwsIGlkeCwgInYiLCAwLCAzMSwKKwkJCSAgICAgIDAsICgxIDw8IHNpemUpIC0gMSkp CisJICAgIHJldHVybiAwOworCSAgYnJlYWs7CisJfQogICAgICAgZWxzZQogCW51bSA9IDE2Owog ICAgICAgbnVtID0gbnVtIC8gYWFyY2g2NF9nZXRfcXVhbGlmaWVyX2VzaXplIChxdWFsaWZpZXIp IC0gMTsKQEAgLTQwNjksNiArNDA4MywxNCBAQCBhYXJjaDY0X3ByaW50X29wZXJhbmQgKGNoYXIg KmJ1Ziwgc2l6ZV90IHNpemUsIGJmZF92bWEgcGMsCiAJCXN0eWxlX2ltbSAoc3R5bGVyLCAiJSIg UFJJaTY0LCBvcG5kLT5yZWdsYW5lLmluZGV4KSk7CiAgICAgICBicmVhazsKIAorICAgIGNhc2Ug QUFSQ0g2NF9PUE5EX0VtX0lOREVYMV8xNDoKKyAgICBjYXNlIEFBUkNINjRfT1BORF9FbV9JTkRF WDJfMTM6CisgICAgY2FzZSBBQVJDSDY0X09QTkRfRW1fSU5ERVgzXzEyOgorICAgICAgc25wcmlu dGYgKGJ1Ziwgc2l6ZSwgIiVzWyVzXSIsCisJCXN0eWxlX3JlZyAoc3R5bGVyLCAidiVkIiwgb3Bu ZC0+cmVnbGFuZS5yZWdubyksCisJCXN0eWxlX2ltbSAoc3R5bGVyLCAiJSIgUFJJaTY0LCBvcG5k LT5yZWdsYW5lLmluZGV4KSk7CisgICAgICBicmVhazsKKwogICAgIGNhc2UgQUFSQ0g2NF9PUE5E X1ZkRDE6CiAgICAgY2FzZSBBQVJDSDY0X09QTkRfVm5EMToKICAgICAgIHNucHJpbnRmIChidWYs IHNpemUsICIlc1slc10iLApAQCAtNDA3Nyw2ICs0MDk5LDcgQEAgYWFyY2g2NF9wcmludF9vcGVy YW5kIChjaGFyICpidWYsIHNpemVfdCBzaXplLCBiZmRfdm1hIHBjLAogICAgICAgYnJlYWs7CiAK ICAgICBjYXNlIEFBUkNINjRfT1BORF9MVm46CisgICAgY2FzZSBBQVJDSDY0X09QTkRfTFZuX0xV VDoKICAgICBjYXNlIEFBUkNINjRfT1BORF9MVnQ6CiAgICAgY2FzZSBBQVJDSDY0X09QTkRfTFZ0 X0FMOgogICAgIGNhc2UgQUFSQ0g2NF9PUE5EX0xFdDoKZGlmZiAtLWdpdCBhL29wY29kZXMvYWFy Y2g2NC10YmwuaCBiL29wY29kZXMvYWFyY2g2NC10YmwuaAppbmRleCA1YjFjODU2MWFjNjE0N2U2 NGJhOTliNmU5ZmJhODVlZDhlZTcxMmM0Li42ZDdhYTNkNzcwYWQzNDA3MWJmZTY3Zjk1ZDk3NGVh YTdiNmNkYmJkIDEwMDY0NAotLS0gYS9vcGNvZGVzL2FhcmNoNjQtdGJsLmgKKysrIGIvb3Bjb2Rl cy9hYXJjaDY0LXRibC5oCkBAIC0xMDA0LDYgKzEwMDQsMjQgQEAKICAgUUxGMyhWXzE2QiwgVl8x NkIsIFZfMTZCKSwJXAogfQogCisvKiBlLmcuIGx1dGkyIDxWZD4uMTZCLCB7IDxWbj4uMTZCIH0s IDxWbT5baW5kZXhdLiAgKi8KKy8qIFRoZSB0aGlyZCBvcGVyYW5kIGlzIGFuIEFkdlNJTUQgdmVj dG9yIHdpdGggYSBiaXQgaW5kZXgKKyAgIGFuZCB3aXRob3V0IGEgdHlwZSBxdWFsaWZpZXIgYW5k IGlzIGNoZWNrZWQgc2VwYXJhdGVseQorICAgYmFzZWQgb24gb3BlcmFuZCBlbnVtLiAgKi8KKyNk ZWZpbmUgUUxfVlZVQgkJCVwKK3sJCQkJXAorICBRTEYzKFZfMTZCICwgVl8xNkIgLCBOSUwpLAlc Cit9CisKKy8qIGUuZy4gbHV0aTIgPFZkPi44SCwgeyA8Vm4+LjhIIH0sIDxWbT5baW5kZXhdLiAg Ki8KKy8qIFRoZSB0aGlyZCBvcGVyYW5kIGlzIGFuIEFkdlNJTUQgdmVjdG9yIHdpdGggYSBiaXQg aW5kZXgKKyAgIGFuZCB3aXRob3V0IGEgdHlwZSBxdWFsaWZpZXIgYW5kIGlzIGNoZWNrZWQgc2Vw YXJhdGVseQorICAgYmFzZWQgb24gb3BlcmFuZCBlbnVtLiAgKi8KKyNkZWZpbmUgUUxfVlZVSAkJ CVwKK3sJCQkJXAorICBRTEYzKFZfOEggLCBWXzhIICwgTklMKSwJXAorfQorCiAvKiBlLmcuIEVY VCA8VmQ+LjxUPiwgPFZuPi48VD4sIDxWbT4uPFQ+LCAjPGluZGV4Pi4gICovCiAjZGVmaW5lIFFM X1ZFWFQJCQlcCiB7CQkJCQlcCkBAIC0yNjY5LDYgKzI2ODcsOCBAQCBzdGF0aWMgY29uc3QgYWFy Y2g2NF9mZWF0dXJlX3NldCBhYXJjaDY0X2ZlYXR1cmVfZmFtaW5tYXhfc3ZlMiA9CiAgIEFBUkNI NjRfRkVBVFVSRVMgKDIsIEZBTUlOTUFYLCBTVkUyKTsKIHN0YXRpYyBjb25zdCBhYXJjaDY0X2Zl YXR1cmVfc2V0IGFhcmNoNjRfZmVhdHVyZV9mYW1pbm1heF9zbWUyID0KICAgQUFSQ0g2NF9GRUFU VVJFUyAoMywgU1ZFMiwgRkFNSU5NQVgsIFNNRTIpOworc3RhdGljIGNvbnN0IGFhcmNoNjRfZmVh dHVyZV9zZXQgYWFyY2g2NF9mZWF0dXJlX2x1dCA9CisgIEFBUkNINjRfRkVBVFVSRSAoTFVUKTsK IAogI2RlZmluZSBDT1JFCQkmYWFyY2g2NF9mZWF0dXJlX3Y4CiAjZGVmaW5lIEZQCQkmYWFyY2g2 NF9mZWF0dXJlX2ZwCkBAIC0yNzQwLDYgKzI3NjAsNyBAQCBzdGF0aWMgY29uc3QgYWFyY2g2NF9m ZWF0dXJlX3NldCBhYXJjaDY0X2ZlYXR1cmVfZmFtaW5tYXhfc21lMiA9CiAjZGVmaW5lIEZBTUlO TUFYICAmYWFyY2g2NF9mZWF0dXJlX2ZhbWlubWF4CiAjZGVmaW5lIEZBTUlOTUFYX1NWRTIgICZh YXJjaDY0X2ZlYXR1cmVfZmFtaW5tYXhfc3ZlMgogI2RlZmluZSBGQU1JTk1BWF9TTUUyICAmYWFy Y2g2NF9mZWF0dXJlX2ZhbWlubWF4X3NtZTIKKyNkZWZpbmUgTFVUICZhYXJjaDY0X2ZlYXR1cmVf bHV0CiAKICNkZWZpbmUgQ09SRV9JTlNOKE5BTUUsT1BDT0RFLE1BU0ssQ0xBU1MsT1AsT1BTLFFV QUxTLEZMQUdTKSBcCiAgIHsgTkFNRSwgT1BDT0RFLCBNQVNLLCBDTEFTUywgT1AsIENPUkUsIE9Q UywgUVVBTFMsIEZMQUdTLCAwLCAwLCBOVUxMIH0KQEAgLTI5MjUsNiArMjk0Niw4IEBAIHN0YXRp YyBjb25zdCBhYXJjaDY0X2ZlYXR1cmVfc2V0IGFhcmNoNjRfZmVhdHVyZV9mYW1pbm1heF9zbWUy ID0KICNkZWZpbmUgRkFNSU5NQVhfU01FMl9JTlNOKE5BTUUsT1BDT0RFLE1BU0ssT1BTLFFVQUxT KSBcCiAgIHsgTkFNRSwgT1BDT0RFLCBNQVNLLCBzbWVfc2l6ZV8yMl9oc2QsIDAsIEZBTUlOTUFY X1NNRTIsIE9QUywgUVVBTFMsIFwKICAgICBGX1NUUklDVCB8IDAsIDAsIDEsIE5VTEwgfQorI2Rl ZmluZSBMVVRfSU5TTihOQU1FLE9QQ09ERSxNQVNLLE9QUyxRVUFMUyxGTEFHUykJCVwKKyAgeyBO QU1FLCBPUENPREUsIE1BU0ssIGx1dCwgMCwgTFVULCBPUFMsIFFVQUxTLCBGTEFHUywgMCwgMCwg TlVMTCB9CiAKICNkZWZpbmUgTU9QU19DUFlfT1AxX09QMl9QTUVfSU5TTihOQU1FLCBPUENPREUs IE1BU0ssIEZMQUdTLCBDT05TVFJBSU5UUykgXAogICBNT1BTX0lOU04gKE5BTUUsIE9QQ09ERSwg TUFTSywgMCwgXApAQCAtNDI3NSw2ICs0Mjk4LDExIEBAIGNvbnN0IHN0cnVjdCBhYXJjaDY0X29w Y29kZSBhYXJjaDY0X29wY29kZV90YWJsZVtdID0KICAgRkFNSU5NQVhfU01FMl9JTlNOICgiZmFt YXgiLCAweGMxMjBiOTQwLCAweGZmMjNmZmUzLCBPUDMgKFNNRV9aZG54NCwgU01FX1pkbng0LCBT TUVfWm14NCksIE9QX1NWRV9WVlZfSFNEKSwKICAgRkFNSU5NQVhfU01FMl9JTlNOICgiZmFtaW4i LCAweGMxMjBiMTQxLCAweGZmMjFmZmUxLCBPUDMgKFNNRV9aZG54MiwgU01FX1pkbngyLCBTTUVf Wm14MiksIE9QX1NWRV9WVlZfSFNEKSwKICAgRkFNSU5NQVhfU01FMl9JTlNOICgiZmFtaW4iLCAw eGMxMjBiOTQxLCAweGZmMjNmZmUzLCBPUDMgKFNNRV9aZG54NCwgU01FX1pkbng0LCBTTUVfWm14 NCksIE9QX1NWRV9WVlZfSFNEKSwKKyAgLyogQWR2U0lNRCBsdXQuICAqLworICBMVVRfSU5TTiAo Imx1dGkyIiwgMHg0ZTgwMTAwMCwgMHhmZmUwOWMwMCwgT1AzIChWZCwgTFZuX0xVVCwgRW1fSU5E RVgyXzEzKSwgUUxfVlZVQiwgRl9PRCgxKSksCisgIExVVF9JTlNOICgibHV0aTIiLCAweDRlYzAw MDAwLCAweGZmZTA4YzAwLCBPUDMgKFZkLCBMVm5fTFVULCBFbV9JTkRFWDNfMTIpLCBRTF9WVlVI LCBGX09EKDEpKSwKKyAgTFVUX0lOU04gKCJsdXRpNCIsIDB4NGU0MDIwMDAsIDB4ZmZlMGJjMDAs IE9QMyAoVmQsIExWbl9MVVQsIEVtX0lOREVYMV8xNCksIFFMX1ZWVUIsIEZfT0QoMSkpLAorICBM VVRfSU5TTiAoImx1dGk0IiwgMHg0ZTQwMTAwMCwgMHhmZmUwOWMwMCwgT1AzIChWZCwgTFZuX0xV VCwgRW1fSU5ERVgyXzEzKSwgUUxfVlZVSCwgRl9PRCgyKSksCiAgIC8qIE1vdmUgd2lkZSAoaW1t ZWRpYXRlKS4gICovCiAgIENPUkVfSU5TTiAoIm1vdm4iLCAweDEyODAwMDAwLCAweDdmODAwMDAw LCBtb3Zld2lkZSwgT1BfTU9WTiwgT1AyIChSZCwgSEFMRiksIFFMX0RTVF9SLCBGX1NGIHwgRl9I QVNfQUxJQVMpLAogICBDT1JFX0lOU04gKCJtb3YiLCAgMHgxMjgwMDAwMCwgMHg3ZjgwMDAwMCwg bW92ZXdpZGUsIE9QX01PVl9JTU1fV0lERU4sIE9QMiAoUmQsIElNTV9NT1YpLCBRTF9EU1RfUiwg Rl9TRiB8IEZfQUxJQVMgfCBGX0NPTlYpLApAQCAtNjUzMSwxMiArNjU1OSwyMCBAQCBjb25zdCBz dHJ1Y3QgYWFyY2g2NF9vcGNvZGUgYWFyY2g2NF9vcGNvZGVfdGFibGVbXSA9CiAgICAgICAiYSBT SU1EIHZlY3RvciBlbGVtZW50IikJCQkJCQlcCiAgICAgWShTSU1EX0VMRU1FTlQsIHJlZ2xhbmUs ICJFbTE2IiwgMCwgRihGTERfUm0pLAkJCVwKICAgICAgICJhIFNJTUQgdmVjdG9yIGVsZW1lbnQg bGltaXRlZCB0byBWMC1WMTUiKQkJCVwKKyAgICBZKFNJTURfRUxFTUVOVCwgcmVnbGFuZSwgIkVt X0lOREVYMV8xNCIsIDAsIEYoRkxEX1JtLCBGTERfaW1tMV8xNCksCVwKKyAgICAgICJhIFNJTUQg dmVjdG9yIHdpdGhvdXQgYSB0eXBlIHF1YWxpZmllciBlbmNvZGluZyBhIGJpdCBpbmRleCIpCVwK KyAgICBZKFNJTURfRUxFTUVOVCwgcmVnbGFuZSwgIkVtX0lOREVYMl8xMyIsIDAsIEYoRkxEX1Jt LCBGTERfaW1tMl8xMyksCVwKKyAgICAgICJhIFNJTUQgdmVjdG9yIHdpdGhvdXQgYSB0eXBlIHF1 YWxpZmllciBlbmNvZGluZyBhIGJpdCBpbmRleCIpCVwKKyAgICBZKFNJTURfRUxFTUVOVCwgcmVn bGFuZSwgIkVtX0lOREVYM18xMiIsIDAsIEYoRkxEX1JtLCBGTERfaW1tM18xMiksCVwKKyAgICAg ICJhIFNJTUQgdmVjdG9yIHdpdGhvdXQgYSB0eXBlIHF1YWxpZmllciBlbmNvZGluZyBhIGJpdCBp bmRleCIpCVwKICAgICBZKFNJTURfUkVHTElTVCwgcmVnbGlzdCwgIkxWbiIsIDAsIEYoRkxEX1Ju KSwJCQlcCiAgICAgICAiYSBTSU1EIHZlY3RvciByZWdpc3RlciBsaXN0IikJCQkJCVwKICAgICBZ KFNJTURfUkVHTElTVCwgbGRzdF9yZWdsaXN0LCAiTFZ0IiwgMCwgRigpLAkJCVwKICAgICAgICJh IFNJTUQgdmVjdG9yIHJlZ2lzdGVyIGxpc3QiKQkJCQkJXAogICAgIFkoU0lNRF9SRUdMSVNULCBs ZHN0X3JlZ2xpc3RfciwgIkxWdF9BTCIsIDAsIEYoKSwJCQlcCiAgICAgICAiYSBTSU1EIHZlY3Rv ciByZWdpc3RlciBsaXN0IikJCQkJCVwKKyAgICBZKFNJTURfUkVHTElTVCwgbHV0X3JlZ2xpc3Qs ICJMVm5fTFVUIiwgMCwgRihGTERfUm4pLAkJXAorICAgICAgImEgU0lNRCB2ZWN0b3IgcmVnaXN0 ZXIgbGlzdCIpCQkJCQlcCiAgICAgWShTSU1EX1JFR0xJU1QsIGxkc3RfZWxlbWxpc3QsICJMRXQi LCAwLCBGKCksCQkJXAogICAgICAgImEgU0lNRCB2ZWN0b3IgZWxlbWVudCBsaXN0IikJCQkJCVwK ICAgICBZKElNTUVESUFURSwgaW1tLCAiQ1JuIiwgMCwgRihGTERfQ1JuKSwJCQkJXAo= --------------DNoLmd4rZbwdoYwDLlqpVbQ9--