From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on2077.outbound.protection.outlook.com [40.107.249.77]) by sourceware.org (Postfix) with ESMTPS id 4AD063858D38 for ; Thu, 16 May 2024 10:35:35 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 4AD063858D38 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 4AD063858D38 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.107.249.77 ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1715855746; cv=pass; b=W8oC6Ikf0iNoCyLKsmYLC2KoEqOIspmkzy+wUngnDbtAXrsntidmlEUCXqGA3yat62T+cLuzbFHFBruECnAeUNOJnAxI5MddXq/+0UsZ/1ECLxO0oRX3NK0okRxqoM1heSArGY2DHdXc9OGTQDXiUSmyJkIrLaJi8v5oheUivUA= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1715855746; c=relaxed/simple; bh=TcU41MsiR5cHsbzvFkGTOTxdrcEcm3+s8nGZs3sSTkw=; h=DKIM-Signature:DKIM-Signature:Message-ID:Date:To:From:Subject: MIME-Version; b=HGxmN3Q5yezMIxqnmyBkVhTKkQqKM3uPFuXsbVSrPPH/ShyOp9z+C4kSZkJbHl0hIzYlzRz/84Dw691Vk6VuegNZ8UdvnZiMhfedqdSn5vYXkaOj4WRciRH8Uuh7l8pGXNz176Jo5voA3xVD8VvlpGdrcW5kXTygavzEHRKp48w= ARC-Authentication-Results: i=3; server2.sourceware.org ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=UYYPb+m9EjKefhbFMvQOiR4Abm62MUUN/eIb0B/D7c3uT71NNR/IZ4WoblwVqgI95gpEwnfKEnHpuUGZDdB2/lCo17qTKZxElzfDdO6LxtHx0BpXRzjHWhXTbgntwVX6VV5LRe83liNKJ0E5vH/EAPRLuyhDUzByjgk6ytZqZ9BwtH+nsUmZby2vUZPef/+fa8cdtd6/WxQ6l45m6T5Qixg6SbWoiJ23NyBKJutDfywEVdMg8gSJzawZ/hFlNZidMdqyJ8/yc8pFOysP+yYWEchy7msh6fg1jQolXdIEyoNUoPnFpG/sSkSr+PaZYHYDUeAkBcZyczS4A7xqIoOHuA== 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=VAnsRdd4oJFG1qMzuY9S6yyoLWKsbHJxm0FihXUfAc4=; b=Fuz9ATzV/UA2OO0aPs6Pomsk32fSbBs5N3QRJ7ZYgNK/zp7NXsjoJiHxLRRurLD3a/ajdCtbdFbzD/vbxRpcMthEQJPbf2+6NViIa5U/3pLf6bQu60/BHz0xko0ytQFRd/se4YwwNVfhlv+lOZEySNwAWgt3/nUaDV6PUtsF9SMd7Drh6bKe5pphAaIR5YpgaoJrjBC5UOusHTj3KSv3ldG0pUNVxgnMEgXE5XCx7grp1sTZ5h0sFP2QbH6TPl9ery+M/7Yqc16GF8SU2UG1iKU53TrwhItcdI5FHiRsXGzKwhewHxER+w3KTD7ix1IZCk8Xz+FwnG6BzRWlva9Neg== 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=VAnsRdd4oJFG1qMzuY9S6yyoLWKsbHJxm0FihXUfAc4=; b=nPN6K5yLMPjIU8FxKUhZBbVLphbRTqwwYCJ00Q3pVlKiT5peDJUikN7BLW2IZ4Og5r7SefLb2cmIv9BQA5uNLOm33Pb7mNC6T8om8QGUjLQAdMQlfTotRIAmPc5r7RWRc3LAwJAtLufbh9pOsKzT1NxNj3H581Ay5wEhK2XUefM= Received: from AS9PR04CA0112.eurprd04.prod.outlook.com (2603:10a6:20b:531::13) by DU0PR08MB9322.eurprd08.prod.outlook.com (2603:10a6:10:41d::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7587.28; Thu, 16 May 2024 10:35:31 +0000 Received: from AMS0EPF000001B2.eurprd05.prod.outlook.com (2603:10a6:20b:531:cafe::e4) by AS9PR04CA0112.outlook.office365.com (2603:10a6:20b:531::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.55 via Frontend Transport; Thu, 16 May 2024 10:35:31 +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 AMS0EPF000001B2.mail.protection.outlook.com (10.167.16.166) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.7587.21 via Frontend Transport; Thu, 16 May 2024 10:35:31 +0000 Received: ("Tessian outbound daa456608199:v315"); Thu, 16 May 2024 10:35:31 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 5beccce30733597d X-CR-MTA-TID: 64aa7808 Received: from cd84fbf0e03f.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id DF540787-119C-4A1D-93E8-633461E62468.1; Thu, 16 May 2024 10:35:24 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id cd84fbf0e03f.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 16 May 2024 10:35:24 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YTq6WCo7NrNSIcKwgvzZ+yIQS67wjNSmij2yYYB7en+858xXS5AQhC/6XpgDn/67flcSZSCZtyvr1vB3SFdDf6fQjxcxj9vbI7agrnF8E7Nt0c7KicHUmcE1rrj/dc5bry0bbr1ONk1Nj4WmZdL5l7YwzlduLYwAS6pujJ6gd4XhfJzeFFjezyvKKnnAx1cy70t6+MCwnAYSgukaA6a5jDae/b1c9zDIQG23FU8wO4MK1ov7MzrsqXM8XwwUz2k9xodn7nNQCErBtC7CJ5ftXRDG718WznYvnYEGhqiyFVyUqcy/IJLbu7G5s+WxFpDsZOpI07iQ6/B9lf6HuO2fNw== 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=VAnsRdd4oJFG1qMzuY9S6yyoLWKsbHJxm0FihXUfAc4=; b=e/xBvya/99kP+CkP3ihmqvAshGE5xUKC8g3fSh/x7Zg5cM9Ufu8fK/KY4t444agqo1YjdL78SnKc5zd4AMZlzLhqZsnsvgeEFmiF/N8ZpNeq+yuK9AypvYrRUU9FMoFxrMKsG537lySk54FT8kkjKqFdS5kZxbFGz78kXxOjoEBezYxclUfCKnn/5OTkrOE6RybqBRuJjszfkma9u/vl7WfB6I2uq2OzDZMn+mAmbdTOcA2nm3xHhHUaFjGvrqOYxuxWD3K5vFirAonSWs/NDLMtlddrtg0lyvx1W2RxKAcd9NjiyqQRboaWJK2YRtbqBHz6b9GfogqLUndaibvpOQ== 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=VAnsRdd4oJFG1qMzuY9S6yyoLWKsbHJxm0FihXUfAc4=; b=nPN6K5yLMPjIU8FxKUhZBbVLphbRTqwwYCJ00Q3pVlKiT5peDJUikN7BLW2IZ4Og5r7SefLb2cmIv9BQA5uNLOm33Pb7mNC6T8om8QGUjLQAdMQlfTotRIAmPc5r7RWRc3LAwJAtLufbh9pOsKzT1NxNj3H581Ay5wEhK2XUefM= 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 VI1PR08MB9984.eurprd08.prod.outlook.com (2603:10a6:800:1c7::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7587.28; Thu, 16 May 2024 10:35:19 +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.028; Thu, 16 May 2024 10:35:19 +0000 Content-Type: multipart/mixed; boundary="------------3wodf75QFqcwgq99bMLtTxNK" Message-ID: Date: Thu, 16 May 2024 11:35:18 +0100 User-Agent: Mozilla Thunderbird Content-Language: en-US To: binutils@sourceware.org, Richard Earnshaw From: Saurabh Jha Subject: [PATCH v2 1/2] gas, aarch64: Add AdvSIMD lut extension X-ClientProxiedBy: LO3P265CA0032.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:387::15) To DBBPR08MB6091.eurprd08.prod.outlook.com (2603:10a6:10:1f4::5) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: DBBPR08MB6091:EE_|VI1PR08MB9984:EE_|AMS0EPF000001B2:EE_|DU0PR08MB9322:EE_ X-MS-Office365-Filtering-Correlation-Id: a1b7c89d-139f-42e0-7050-08dc7593e943 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230031|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?LXodaIoPMl3RrzKbpqOaj2C9SsbpN5fy2xxb/4fJYCvfAQRV8wfXPfCHYE0P?= =?us-ascii?Q?nk8u3x9tGkvu+uW9RSDvEOpsybxzAYl+knSC9JEhl/vkLdC6xVVZSHNC1v6r?= =?us-ascii?Q?F7cPzYej/CQtfr1fwtqiVxY3U0cg4Xq4fFspNQ7JfJ9nZCGfPeYxr9ErhiFs?= =?us-ascii?Q?EkUCUApfMMdyti36oy472hqtC595ffJIIY82DNbT3CDWLuq0j3wKDYmFNNKn?= =?us-ascii?Q?BRG8xI+XkrrnWPjmYl0/y157jnCsWJmMi2s/7nFLoaVTMlBI/Z3WMrHz6rFT?= =?us-ascii?Q?3ibVKl2pYDI/Jgh0gBTtyAr4ttGlefYADIFoE2FcVbJ9jVMzFq8Vay6mIPUm?= =?us-ascii?Q?rPaC1MVuu1Iwr3OEGlCumr2nY9NxIrxqEcLkjgYcgqyqHHh1dQ238lLJDC5r?= =?us-ascii?Q?OMdPwJfgxCEe/cnIZmCdYGH6OVQ1VUI6rceQ5AIEgGR+WDGVt5xvQ6XUIFvH?= =?us-ascii?Q?5ccK7KiHgiRa/Ywfuw/i1MAsJ2DBUzW1U8LIG2cV9+jJwac5Xuh0igM0/Q52?= =?us-ascii?Q?KUq1cKQOx4g04klfnIotVOtiB2f4Mkn/w1MKxbXrd3g8ztrKWFkYMFcilpBe?= =?us-ascii?Q?Muwi6yhNtuMx5ofqYUIAFcCEryAOMiBnNHhmUAnJ2kcjEzVTXX2CmF4EgWpN?= =?us-ascii?Q?ps4984LE3BbOPfgZwrDfvtAWnHEio7uuzHlfbKBN6Gcjm2fK6ypUIHBWsWAD?= =?us-ascii?Q?uWRjNsUnsXoLRR/BAxVzrmRvgh2lL/w//2ojvcrFjqSE05MdVuk4LKFIF7M8?= =?us-ascii?Q?ceUXaHJP4sAdJMcQj3/Sx/ZciLiYOdSQG7ta+lmh6+bjHD/7/MU5iscZ/8bZ?= =?us-ascii?Q?HuKSH/FBHKyeqhb3tkqEXBASgeETn8VMV2QG1BBU9H6UsPaJD0LHieSDBzb2?= =?us-ascii?Q?pfQHXQW5yEdpdKgdIU2g8khmxVlzP/vFDI41hQX46PhLmqtQs00nIdxB48G2?= =?us-ascii?Q?T/cNXE+ncuNsrjb5vwheBF/K/MVNSLyIKoNFWXBgQrLijXyjUBKABYinDcIZ?= =?us-ascii?Q?YLRHWmq7D6PW5phekApi8gPa/saRrkV+fr/4F6HjsFI7UTRSFuXY9I95hucn?= =?us-ascii?Q?2whGeM/iEJPanPyMjAA4fVuTYzRKiXV4xqo7N+4A1DCkR+NPxjXQlPlPN9vV?= =?us-ascii?Q?PGjAMuxinsKIpfe+YOBN5fg1/ur0Kfy17k1hra36iyWAasnvQiePNJ46x4c0?= =?us-ascii?Q?0ufszbosGVmzIlEBRfUUmmca4kCsIJPz9MdmAUDhJVzqtvMpPrc0mywhlJk?= =?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)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB9984 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: AMS0EPF000001B2.eurprd05.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 1aa3a8d2-041b-4760-743e-08dc7593e216 X-Microsoft-Antispam: BCL:0;ARA:13230031|1800799015|82310400017|35042699013|36860700004|376005; X-Microsoft-Antispam-Message-Info: =?utf-8?B?Zll6S1grZ1h4MFRsdE8wR2RRaUNIcXQvVDMwajZrR3BLMVoyRndGQ1UrY1k5?= =?utf-8?B?WWNoWk4xK1E5SkpyalprMTBRYVFvOTJka1BHUU1tWko1RFdoeGJGMTUvYUw5?= =?utf-8?B?YU9qaGgxMyttSzZSV0tRQlJYaExlN2UvV1FnQ1FjZzBiSlV5U2lMUlBDOXh6?= =?utf-8?B?UFFFbzlLM2ZHZEJOMWl3Tldid2RiMWdVbXNjWkE2NnlVOXlUZTZLZFJsUDcv?= =?utf-8?B?MGczakhXdERMNlR2VGptL2RValdJeldMTzF2VnFoQ2lxaGY2UGFNZFNab3o2?= =?utf-8?B?Ny9hSWRmOUJJSkh5bzdRYVVVMHNpWVNpM0pPOFpSbUoyc040UWc1YWlVVDdU?= =?utf-8?B?SnZsZWt5MEpRc0ZSOSt3NG9qaEhOUVdXTjMyYUpkaENmZldRRjJwNHhxUnpS?= =?utf-8?B?dk5MM0JJWXp4czMwektpbmRrdXY4VDR3Z0Y5Y1pDUDdHeEMraUlJamtRdzJI?= =?utf-8?B?ekthZWZhbnN2c2xKa085ZHByUFlBMWsranRDcmJ5Sk1KZWl5R3lTM1hGRU5a?= =?utf-8?B?eEZXKy9CazJmVysxWXBhNUJEK2hRZVVnd2RXdnkwaEpSclhpaHVXT0hmeEw4?= =?utf-8?B?Snc5SHBscElYR0NXVmNyQVJZSzdRL1luZ0ZIWlNBSGY4dkNzVFBRVDRESXZK?= =?utf-8?B?aTdyMjE2UHJNNG5vc0ZuaTdjbm5FQjljd1YyZlRnelN2dnVXR0Jka1AySzVZ?= =?utf-8?B?VmpSVU9PU3lyeWNQZWx5TUg2ZjR3SXdFVUVoT3E1V3JNOFVDNnBEcmhDWTFi?= =?utf-8?B?WVZ0QkVtRkV6ZnhKcnJlSnBBVURaME9sVWw0U1R4QXZSN1laUVlzMFBhbjhu?= =?utf-8?B?dmFKRVlJcXY2THFKaUtKODNlZlVwbzlNOXhGN0dMeWQxSjM3bnBHL2c3YUcz?= =?utf-8?B?OS9QNnRtQ0M3TGVhTjZxR2h2bXYyVFVZVUhkd1BFclNKWDcvM2ticTFJWHdO?= =?utf-8?B?eWljbEhKM1JhZ2RzZWhOYjgyS3A2UnNRZm1rbUhQQWE4ZmlxdSs4Y2w4K04z?= =?utf-8?B?UWxlT1hwTllnMjFUV1NMTXEwenZVaE9jeElIV0EwQVhVdmhsdGJDL3JtaXZT?= =?utf-8?B?VDZXK01VY1ZvYStnSXJWWkdCUkR3OVhsc2JxNndTTGpqOEcyblBSaUpaRkVE?= =?utf-8?B?Q0NXVDVBbFpRbHVaeWh2V2MzNGNSQ3U4SDdwQTY1WTh0Qm02eFpQQ0s3a1RX?= =?utf-8?B?NW9WOHBhMDh4MW1xUE5xOXVRN0ZQdzBMRmhGN3ZiTDZOdmJCbXdnV0hFL29Q?= =?utf-8?B?YjQyRnQ5R0RNL1I3cU9UTEtET2d1dTk4Zmp6TTNzUTN0OFJ1K2R1bVpDMHNo?= =?utf-8?B?VWJrRW80TUkyNWxNNWRhZWRHa3haVE93eks5M1BROURHYm85QVlieUpSdXZR?= =?utf-8?B?TExDRHlYOWovWEpYSW45eVJ1T01WcmpuNlRTQW5UcDZoVGlubEFJbVNGOTJK?= =?utf-8?B?MFpKemxHbXUzTG9JQm41QUJOSWZpcHNuMWw3cmNRTkxzTWZ1bUZvTUVsMnFK?= =?utf-8?B?d00vaDg4YjZsRjFkMFR5dG0zeHczTGN5T245TXVGOUE3VDdQZTIrUUk5Q29h?= =?utf-8?B?SmNVUXE2c3ZSaDNNNmlKSloyZkJLTGV1UzhsZnFFTVA1aVVONWlnZUp3SzVW?= =?utf-8?B?ZEU0WFQ1WUhGaXU5NjZNVUpKc3VZTXBuT0tUeFJRQTdFb2VVbzkyYjhzU1pO?= =?utf-8?B?TWJyVnFiUDhNaFhWOUhSQkdaNnN3bm03MXB5MnRHS0IyMW0rcHhEKzI0Ujhm?= =?utf-8?B?a0l6WWNMVnVWZ1pzTGx3S1g2Q2NGOFQwZTRtSmZwZnBkT0lEUEpnZG5CN0V3?= =?utf-8?B?c21PZ1JncFhrYTlWcVhQZz09?= 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)(36860700004)(376005);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 May 2024 10:35:31.3296 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a1b7c89d-139f-42e0-7050-08dc7593e943 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: AMS0EPF000001B2.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9322 X-Spam-Status: No, score=-12.9 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: --------------3wodf75QFqcwgq99bMLtTxNK 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 --------------3wodf75QFqcwgq99bMLtTxNK 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 MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI1ZDlhMWQ4Y2I5MWQ2NTdkMWUyZTE2ZmUyZWVlYzhmZGNh ZDUzZDIKLS0tIC9kZXYvbnVsbAorKysgYi9nYXMvdGVzdHN1aXRlL2dhcy9hYXJjaDY0L2FkdnNp bWQtbHV0LWlsbGVnYWwucwpAQCAtMCwwICsxLDEyOCBAQAorLy8gT3BlcmFuZCBtaXNtYXRjaAor bHV0aTIJdjIuMTZiLCB7IHY0LjhoIH0sIHY4WzFdCitsdXRpMgl2Mi44aCwgeyB2NC4xNmIgfSwg djhbMV0KK2x1dGk0CXYyLjE2YiwgeyB2NC44aCB9LCB2OFs1XQorbHV0aTQJdjIuOGgsIHsgdjQu MTZiIH0sIHY4WzVdCisKKy8vIEluY29ycmVjdCBvcGVyYW5kIHR5cGVzCisubWFjcm8gaW5jb3Jy ZWN0X29wZXJhbmRfdHlwZXMgb3AsIG9wZXJhbmRfdHlwZQorXG9wCXYyXG9wZXJhbmRfdHlwZSwg djRcb3BlcmFuZF90eXBlLCB2OFsxXQorXG9wCXgxMiwgeyB2NFxvcGVyYW5kX3R5cGUgfSwgdjhb MV0KK1xvcAl2MlxvcGVyYW5kX3R5cGUsIHsgeDEyIH0sIHY4WzFdCitcb3AJdjJcb3BlcmFuZF90 eXBlLCB7IHY0XG9wZXJhbmRfdHlwZSB9LCB4MTJbMV0KKy5lbmRtCisKK2luY29ycmVjdF9vcGVy YW5kX3R5cGVzIGx1dGkyIC4xNmIKK2luY29ycmVjdF9vcGVyYW5kX3R5cGVzIGx1dGkyIC44aAor aW5jb3JyZWN0X29wZXJhbmRfdHlwZXMgbHV0aTQgLjE2YgoraW5jb3JyZWN0X29wZXJhbmRfdHlw ZXMgbHV0aTQgLjhoCitsdXRpNAl2Mi44aCwgeyB2NC44aCwgeDEyIH0sIHY4WzFdCisKKy8vIERp c2FsbG93ZWQgdHlwZXMKK2x1dGkyCXYyLjhiLCB7IHY0LjhiIH0sIHY4WzFdCitsdXRpMgl2Mi40 aCwgeyB2NC40aCB9LCB2OFsxXQorbHV0aTQJdjIuOGIsIHsgdjQuOGIgfSwgdjhbNV0KK2x1dGk0 CXYyLjRoLCB7IHY0LjRoLCB2NS40aCB9LCB2OFs1XQorCisvLyBJbmNvcnJlY3QgbnVtYmVyIG9m IG9wZXJhbmRzCisubWFjcm8gCWluY29ycmVjdF9vcGVyYW5kcywgb3AsIG9wZXJhbmRfdHlwZQor XG9wCXYyXG9wZXJhbmRfdHlwZQorXG9wCXYyXG9wZXJhbmRfdHlwZSwgeyB2NFxvcGVyYW5kX3R5 cGUgfQorXG9wCXYyXG9wZXJhbmRfdHlwZSwgeyB2NFxvcGVyYW5kX3R5cGUgfSwgdjhbMV0sIHYx NlxvcGVyYW5kX3R5cGUKK1xvcAl2MlxvcGVyYW5kX3R5cGUsIHsgdjRcb3BlcmFuZF90eXBlIH0s IHY4WzFdLCB7IHYxNlxvcGVyYW5kX3R5cGUgfQorLmVuZG0KKworaW5jb3JyZWN0X29wZXJhbmRz IGx1dGkyIC4xNmIKK2luY29ycmVjdF9vcGVyYW5kcyBsdXRpMiAuOGgKK2luY29ycmVjdF9vcGVy YW5kcyBsdXRpNCAuMTZiCitsdXRpNAl2Mi44aAorbHV0aTQJdjIuOGgsIHsgdjQuOGgsIHY1Ljho IH0KK2x1dGk0CXYyLjhoLCB7IHY0LjhoLCB2NS44aCB9LCB2OFsxXSwgdjE2LjhoCitsdXRpNAl2 Mi44aCwgeyB2NC44aCwgdjUuOGggfSwgdjhbMV0sIHsgdjE2LjhoIH0KKworLy8gU3BlbGxpbmcg bWlzdGFrZXMKKy5tYWNybyAJc3BlbGxpbmdfbWlzdGFrZXMsIG9wLCBvcGVyYW5kX3R5cGUsIGlu Y29ycmVjdF9vcGVyYW5kX3R5cGUKK1xvcAl2MlxvcGVyYW5kX3R5cGUsIHsgdjRcaW5jb3JyZWN0 X29wZXJhbmRfdHlwZSB9LCB2OFsxXQorXG9wCXYyXGluY29ycmVjdF9vcGVyYW5kX3R5cGUsIHsg djRcb3BlcmFuZF90eXBlIH0sIHY4WzFdCisuZW5kbQorCitzcGVsbGluZ19taXN0YWtlcyBsdXRp MiwgLjE2YiwgLjE2dAorc3BlbGxpbmdfbWlzdGFrZXMgbHV0aTIsIC44aCwgLjhtCitzcGVsbGlu Z19taXN0YWtlcyBsdXRpNCwgLjE2YiwgLjE2dAorbHV0aTQJdjIuOGgsIHsgdjQuOGgsIHY1Ljh0 IH0sIHY4WzFdCitsdXRpNAl2Mi44dCwgeyB2NC44aCwgdjUuOGggfSwgdjhbMV0KKworLy8gTWlz c2luZyBxdWFsaWZpZXJzCisubWFjcm8JbWlzc2luZ19xdWFsaWZpZXJzLCBvcCwgb3BlcmFuZF90 eXBlCitcb3AJdjJcb3BlcmFuZF90eXBlLCB7IHY0IH0sIHY4WzFdCitcb3AJdjIsIHsgdjRcb3Bl cmFuZF90eXBlIH0sIHY4WzFdCitcb3AJMlxvcGVyYW5kX3R5cGUsIHsgdjRcb3BlcmFuZF90eXBl IH0sIHY4WzFdCitcb3AJdjJcb3BlcmFuZF90eXBlLCB7IDRcb3BlcmFuZF90eXBlIH0sIHY4WzFd CisuZW5kbQorCittaXNzaW5nX3F1YWxpZmllcnMgbHV0aTIsIC4xNmIKK21pc3NpbmdfcXVhbGlm aWVycyBsdXRpMiwgLjhoCittaXNzaW5nX3F1YWxpZmllcnMgbHV0aTQsIC4xNmIKK2x1dGk0CXYy LjE2YiwgeyB2NCwgdjUuMTZiIH0sIHY4WzFdCitsdXRpNAl2MiwgeyB2NC4xNmIsIHY1LjE2YiB9 LCB2OFsxXQorbHV0aTQJMi4xNmIsIHsgdjQuMTZiLCB2NS4xNmIgfSwgdjhbMV0KK2x1dGk0CXYy LjE2YiwgeyB2NC4xNmIsIDUuMTZiIH0sIHY4WzFdCisKKy8vIEluZGV4IHdpdGggcXVhbGlmaWVy cworbHV0aTIJdjE3LjE2YiwgeyB2MjEuMTZiIH0sIHYyNy4xNmJbM10KK2x1dGkyCXYxNy44aCwg eyB2MjEuOGggfSwgdjI3LjhoWzRdCitsdXRpNAl2MTcuMTZiLCB7IHYyMS4xNmIgfSwgdjI3LjE2 YlsxXQorbHV0aTQJdjE3LjhoLCB7IHYyMS44aCwgdjIyLjhoIH0sIHYyNy44aFsyXQorCisvLyBJ bmRleCBvbiB0aGUgd3Jvbmcgb3BlcmFuZAorLm1hY3JvIGluZGV4X3dyb25nX29wZXJhbmQsIG9w LCBvcGVyYW5kX3R5cGUKK1xvcAl2MTdcb3BlcmFuZF90eXBlWzFdLCB7IHYwXG9wZXJhbmRfdHlw ZSB9LCB2MzFcb3BlcmFuZF90eXBlCitcb3AJdjE3WzFdLCB7IHYwXG9wZXJhbmRfdHlwZSB9LCB2 MzFcb3BlcmFuZF90eXBlCitcb3AJdjE3XG9wZXJhbmRfdHlwZSwgeyB2MFxvcGVyYW5kX3R5cGVb MV0gfSwgdjMxXG9wZXJhbmRfdHlwZQorXG9wCXYxN1xvcGVyYW5kX3R5cGUsIHsgdjBbMV0gfSwg djMxXG9wZXJhbmRfdHlwZQorLmVuZG0KKworaW5kZXhfd3Jvbmdfb3BlcmFuZCBsdXRpMiwgLjE2 YgoraW5kZXhfd3Jvbmdfb3BlcmFuZCBsdXRpMiwgLjhoCitpbmRleF93cm9uZ19vcGVyYW5kIGx1 dGk0LCAuMTZiCitsdXRpNAl2MTcuOGhbMV0sIHsgdjAuOGgsIHYxLjhoIH0sIHYzMS44aAorbHV0 aTQJdjE3WzFdLCB7IHYwLjhoLCB2MS44aCB9LCB2MzEuOGgKK2x1dGk0CXYxNy44aCwgeyB2MC44 aFsxXSwgdjEuOGggfSwgdjMxLjhoCitsdXRpNAl2MTcuOGgsIHsgdjBbMV0sIHYxLjhoIH0sIHYz MS44aAorCisvLyBNaXNzaW5nIGluZGV4CitsdXRpMgl2Mi4xNmIsIHsgdjQuMTZiIH0sIHY4LjE2 YgorbHV0aTIJdjIuMTZiLCB7IHY0LjE2YiB9LCB2OAorbHV0aTIJdjIuOGgsIHsgdjQuOGggfSwg djguOGgKK2x1dGkyCXYyLjhoLCB7IHY0LjhoIH0sIHY4CitsdXRpNAl2Mi4xNmIsIHsgdjQuMTZi IH0sIHY4LjE2YgorbHV0aTQJdjIuMTZiLCB7IHY0LjE2YiB9LCB2OAorbHV0aTQJdjIuOGgsIHsg djQuOGgsIHY1LjhoIH0sIHY4LjhoCitsdXRpNAl2Mi44aCwgeyB2NC44aCwgdjUuOGggfSwgdjgK KworLy8gT3V0IG9mIHJhbmdlIG9wZXJhbmRzCisubWFjcm8Jb3V0X29mX3JhbmdlLCBvcCwgb3Bl cmFuZF90eXBlLCBtYXhfaW5kZXhfcGx1c19vbmUKK1xvcAl2MzJcb3BlcmFuZF90eXBlLCB7IHY0 XG9wZXJhbmRfdHlwZSB9LCB2OFsxXQorXG9wCXYyXG9wZXJhbmRfdHlwZSwgeyB2MzJcb3BlcmFu ZF90eXBlIH0sIHY4WzFdCitcb3AJdjJcb3BlcmFuZF90eXBlLCB7IHY0XG9wZXJhbmRfdHlwZSB9 LCB2MzJbMV0KK1xvcAl2MlxvcGVyYW5kX3R5cGUsIHsgdjRcb3BlcmFuZF90eXBlIH0sIHY4W1xt YXhfaW5kZXhfcGx1c19vbmVdCitcb3AJdjJcb3BlcmFuZF90eXBlLCB7IHY0XG9wZXJhbmRfdHlw ZSB9LCB2OFstMV0KKy5lbmRtCisKK291dF9vZl9yYW5nZSBsdXRpMiwgLjE2YiwgNAorb3V0X29m X3JhbmdlIGx1dGkyLCAuOGgsIDgKK291dF9vZl9yYW5nZSBsdXRpNCwgLjE2YiwgMgorbHV0aTQJ djMyLjhoLCB7IHY0LjhoLCB2NS44aCB9LCB2OFsxXQorbHV0aTQJdjIuOGgsIHsgdjMxLjhoLCB2 MzIuOGggfSwgdjhbMV0KK2x1dGk0CXYyLjhoLCB7IHY0LjhoLCB2NS44aCB9LCB2MzJbMV0KK2x1 dGk0CXYyLjhoLCB7IHY0LjhoLCB2NS44aCB9LCB2OFs0XQorbHV0aTQJdjIuOGgsIHsgdjQuOGgs IHY1LjhoIH0sIHY4Wy0xXQorCisvLyBJbmNvcnJlY3Qgc3RyaWRlIG9mIG9wZXJhbmQKK2x1dGk0 CXYyLjhoLCB7IHY0LjhoLCB2Ni44aCB9LCB2OFsyXQorCisvLyBJbmNvcnJlY3Qgb3BlcmFuZHMK K2x1dGkyCXYxNy4xNmIsIHsgdjIxLjE2YiwgdjIyLjE2YiB9LCB2MjdbMl0KK2x1dGkyCXYxNy44 aCwgeyB2MjEuOGgsIHYyMi44aCB9LCB2MjdbNF0KK2x1dGk0CXYxNy4xNmIsIHsgdjIxLjE2Yiwg djIyLjE2YiB9LCB2MjdbMV0KK2x1dGk0CXYxNy44aCwgeyB2MjEuOGggfSwgdjI3WzJdCmRpZmYg LS1naXQgYS9nYXMvdGVzdHN1aXRlL2dhcy9hYXJjaDY0L2FkdnNpbWQtbHV0LmQgYi9nYXMvdGVz dHN1aXRlL2dhcy9hYXJjaDY0L2FkdnNpbWQtbHV0LmQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODQ4ODQxYTM0YTQ5 NzVmYTNmMDY1MmRhMDM2NzNlODNlYWJkOGJjNQotLS0gL2Rldi9udWxsCisrKyBiL2dhcy90ZXN0 c3VpdGUvZ2FzL2FhcmNoNjQvYWR2c2ltZC1sdXQuZApAQCAtMCwwICsxLDMyIEBACisjb2JqZHVt cDogLWRyCisjYXM6IC1tYXJjaD1hcm12OC1hK2x1dAorCisuKjogICAgIGZpbGUgZm9ybWF0IC4q CisKK0Rpc2Fzc2VtYmx5IG9mIHNlY3Rpb24gXC50ZXh0OgorCiswKyA8Lio+OgorICAgMDoJNGU4 MDEwMDAgCWx1dGkyCXYwLjE2YiwgXHt2MC4xNmJcfSwgdjBcWzBcXQorICAgNDoJNGU4MDEwMWYg CWx1dGkyCXYzMS4xNmIsIFx7djAuMTZiXH0sIHYwXFswXF0KKyAgIDg6CTRlODAxM2UwIAlsdXRp Mgl2MC4xNmIsIFx7djMxLjE2Ylx9LCB2MFxbMFxdCisgICBjOgk0ZTlmMTAwMCAJbHV0aTIJdjAu MTZiLCBce3YwLjE2Ylx9LCB2MzFcWzBcXQorICAxMDoJNGU5ZjcwMDAgCWx1dGkyCXYwLjE2Yiwg XHt2MC4xNmJcfSwgdjMxXFszXF0KKyAgMTQ6CTRlOWI1MmIxIAlsdXRpMgl2MTcuMTZiLCBce3Yy MS4xNmJcfSwgdjI3XFsyXF0KKyAgMTg6CTRlYzAwMDAwIAlsdXRpMgl2MC44aCwgXHt2MC44aFx9 LCB2MFxbMFxdCisgIDFjOgk0ZWMwMDAxZiAJbHV0aTIJdjMxLjhoLCBce3YwLjhoXH0sIHYwXFsw XF0KKyAgMjA6CTRlYzAwM2UwIAlsdXRpMgl2MC44aCwgXHt2MzEuOGhcfSwgdjBcWzBcXQorICAy NDoJNGVkZjAwMDAgCWx1dGkyCXYwLjhoLCBce3YwLjhoXH0sIHYzMVxbMFxdCisgIDI4Ogk0ZWMw NzAwMCAJbHV0aTIJdjAuOGgsIFx7djAuOGhcfSwgdjBcWzdcXQorICAyYzoJNGVkYjQyYjEgCWx1 dGkyCXYxNy44aCwgXHt2MjEuOGhcfSwgdjI3XFs0XF0KKyAgMzA6CTRlNDAyMDAwIAlsdXRpNAl2 MC4xNmIsIFx7djAuMTZiXH0sIHYwXFswXF0KKyAgMzQ6CTRlNDAyMDFmIAlsdXRpNAl2MzEuMTZi LCBce3YwLjE2Ylx9LCB2MFxbMFxdCisgIDM4Ogk0ZTQwMjNlMCAJbHV0aTQJdjAuMTZiLCBce3Yz MS4xNmJcfSwgdjBcWzBcXQorICAzYzoJNGU1ZjIwMDAgCWx1dGk0CXYwLjE2YiwgXHt2MC4xNmJc fSwgdjMxXFswXF0KKyAgNDA6CTRlNDA2MDAwIAlsdXRpNAl2MC4xNmIsIFx7djAuMTZiXH0sIHYw XFsxXF0KKyAgNDQ6CTRlNWI2MmIxIAlsdXRpNAl2MTcuMTZiLCBce3YyMS4xNmJcfSwgdjI3XFsx XF0KKyAgNDg6CTRlNDAxMDAwIAlsdXRpNAl2MC44aCwgXHt2MC44aC12MS44aFx9LCB2MFxbMFxd CisgIDRjOgk0ZTQwMTAxZiAJbHV0aTQJdjMxLjhoLCBce3YwLjhoLXYxLjhoXH0sIHYwXFswXF0K KyAgNTA6CTRlNDAxM2UwIAlsdXRpNAl2MC44aCwgXHt2MzEuOGgtdjAuOGhcfSwgdjBcWzBcXQor ICA1NDoJNGU1ZjEwMDAgCWx1dGk0CXYwLjhoLCBce3YwLjhoLXYxLjhoXH0sIHYzMVxbMFxdCisg IDU4Ogk0ZTQwNzAwMCAJbHV0aTQJdjAuOGgsIFx7djAuOGgtdjEuOGhcfSwgdjBcWzNcXQorICA1 YzoJNGU1YjUyYjEgCWx1dGk0CXYxNy44aCwgXHt2MjEuOGgtdjIyLjhoXH0sIHYyN1xbMlxdCmRp ZmYgLS1naXQgYS9nYXMvdGVzdHN1aXRlL2dhcy9hYXJjaDY0L2FkdnNpbWQtbHV0LnMgYi9nYXMv dGVzdHN1aXRlL2dhcy9hYXJjaDY0L2FkdnNpbWQtbHV0LnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjE5ZTJjNmFh NjZjOTMzOTY2NmRhNzFhYTU4ODZhZmIyNmYyMDNjZgotLS0gL2Rldi9udWxsCisrKyBiL2dhcy90 ZXN0c3VpdGUvZ2FzL2FhcmNoNjQvYWR2c2ltZC1sdXQucwpAQCAtMCwwICsxLDI5IEBACisvLyBW YWxpZCBsdXRpMiBpbnN0cnVjdGlvbnMKK2x1dGkyCXYwLjE2YiwgeyB2MC4xNmIgfSwgdjBbMF0K K2x1dGkyCXYzMS4xNmIsIHsgdjAuMTZiIH0sIHYwWzBdCitsdXRpMgl2MC4xNmIsIHsgdjMxLjE2 YiB9LCB2MFswXQorbHV0aTIJdjAuMTZiLCB7IHYwLjE2YiB9LCB2MzFbMF0KK2x1dGkyCXYwLjE2 YiwgeyB2MC4xNmIgfSwgdjMxWzNdCitsdXRpMgl2MTcuMTZiLCB7IHYyMS4xNmIgfSwgdjI3WzJd CisKK2x1dGkyCXYwLjhoLCB7IHYwLjhoIH0sIHYwWzBdCitsdXRpMgl2MzEuOGgsIHsgdjAuOGgg fSwgdjBbMF0KK2x1dGkyCXYwLjhoLCB7IHYzMS44aCB9LCB2MFswXQorbHV0aTIJdjAuOGgsIHsg djAuOGggfSwgdjMxWzBdCitsdXRpMgl2MC44aCwgeyB2MC44aCB9LCB2MFs3XQorbHV0aTIJdjE3 LjhoLCB7IHYyMS44aCB9LCB2MjdbNF0KKworLy8gVmFsaWQgbHV0aTQgaW5zdHJ1Y3Rpb25zCits dXRpNAl2MC4xNmIsIHsgdjAuMTZiIH0sIHYwWzBdCitsdXRpNAl2MzEuMTZiLCB7IHYwLjE2YiB9 LCB2MFswXQorbHV0aTQJdjAuMTZiLCB7IHYzMS4xNmIgfSwgdjBbMF0KK2x1dGk0CXYwLjE2Yiwg eyB2MC4xNmIgfSwgdjMxWzBdCitsdXRpNAl2MC4xNmIsIHsgdjAuMTZiIH0sIHYwWzFdCitsdXRp NAl2MTcuMTZiLCB7IHYyMS4xNmIgfSwgdjI3WzFdCisKK2x1dGk0CXYwLjhoLCB7IHYwLjhoLCB2 MS44aCB9LCB2MFswXQorbHV0aTQJdjMxLjhoLCB7IHYwLjhoLCB2MS44aCB9LCB2MFswXQorbHV0 aTQJdjAuOGgsIHsgdjMxLjhoLCB2MC44aCB9LCB2MFswXQorbHV0aTQJdjAuOGgsIHsgdjAuOGgs IHYxLjhoIH0sIHYzMVswXQorbHV0aTQJdjAuOGgsIHsgdjAuOGgsIHYxLjhoIH0sIHYwWzNdCits dXRpNAl2MTcuOGgsIHsgdjIxLjhoLCB2MjIuOGggfSwgdjI3WzJdCmRpZmYgLS1naXQgYS9pbmNs dWRlL29wY29kZS9hYXJjaDY0LmggYi9pbmNsdWRlL29wY29kZS9hYXJjaDY0LmgKaW5kZXggMmZj YTk1MjhjMjAxMmJlOTgzYzI0MTRhMzBmYTU5MzBlNTdlNWM5Mi4uNjM0NTYwMjFhMWQxNjdjNzQ3 Y2E5MTNhMzU1ZGQwMmNmOTBmYzcyNiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9vcGNvZGUvYWFyY2g2 NC5oCisrKyBiL2luY2x1ZGUvb3Bjb2RlL2FhcmNoNjQuaApAQCAtMjMyLDYgKzIzMiw4IEBAIGVu dW0gYWFyY2g2NF9mZWF0dXJlX2JpdCB7CiAgIEFBUkNINjRfRkVBVFVSRV9DUEEsCiAgIC8qIEZB TUlOTUFYIGluc3RydWN0aW9ucy4gICovCiAgIEFBUkNINjRfRkVBVFVSRV9GQU1JTk1BWCwKKyAg LyogTFVUIGluc3RydWN0aW9ucy4gICovCisgIEFBUkNINjRfRkVBVFVSRV9MVVQsCiAgIEFBUkNI NjRfTlVNX0ZFQVRVUkVTCiB9OwogCkBAIC01MTgsMTAgKzUyMCwxNCBAQCBlbnVtIGFhcmNoNjRf b3BuZAogICBBQVJDSDY0X09QTkRfRW0sCS8qIEFkdlNJTUQgVmVjdG9yIEVsZW1lbnQgVm0uICAq LwogICBBQVJDSDY0X09QTkRfRW0xNiwJLyogQWR2U0lNRCBWZWN0b3IgRWxlbWVudCBWbSByZXN0 cmljdGVkIHRvIFYwIC0gVjE1IHdoZW4KIAkJCSAgIHF1YWxpZmllciBpcyBTX0guICAqLworICBB QVJDSDY0X09QTkRfRW1fSU5ERVgxXzE0LCAgLyogQWR2U0lNRCAxLWJpdCBlbmNvZGVkIGluZGV4 IGluIFZtIGF0IFsxNF0gICovCisgIEFBUkNINjRfT1BORF9FbV9JTkRFWDJfMTMsICAvKiBBZHZT SU1EIDItYml0IGVuY29kZWQgaW5kZXggaW4gVm0gYXQgWzE0OjEzXSAgKi8KKyAgQUFSQ0g2NF9P UE5EX0VtX0lOREVYM18xMiwgIC8qIEFkdlNJTUQgMy1iaXQgZW5jb2RlZCBpbmRleCBpbiBWbSBh dCBbMTQ6MTJdICAqLwogICBBQVJDSDY0X09QTkRfTFZuLAkvKiBBZHZTSU1EIFZlY3RvciByZWdp c3RlciBsaXN0IHVzZWQgaW4gZS5nLiBUQkwuICAqLwogICBBQVJDSDY0X09QTkRfTFZ0LAkvKiBB ZHZTSU1EIFZlY3RvciByZWdpc3RlciBsaXN0IHVzZWQgaW4gbGQvc3QuICAqLwogICBBQVJDSDY0 X09QTkRfTFZ0X0FMLAkvKiBBZHZTSU1EIFZlY3RvciByZWdpc3RlciBsaXN0IGZvciBsb2FkaW5n IHNpbmdsZQogCQkJICAgc3RydWN0dXJlIHRvIGFsbCBsYW5lcy4gICovCisgIEFBUkNINjRfT1BO RF9MVm5fTFVULAkvKiBBZHZTSU1EIFZlY3RvciByZWdpc3RlciBsaXN0IHVzZWQgaW4gbHV0LiAg Ki8KICAgQUFSQ0g2NF9PUE5EX0xFdCwJLyogQWR2U0lNRCBWZWN0b3IgRWxlbWVudCBsaXN0LiAg Ki8KIAogICBBQVJDSDY0X09QTkRfQ1JuLAkvKiBDby1wcm9jZXNzb3IgcmVnaXN0ZXIgaW4gQ1Ju IGZpZWxkLiAgKi8KQEAgLTEwMTgsNyArMTAyNCw4IEBAIGVudW0gYWFyY2g2NF9pbnNuX2NsYXNz CiAgIHRoZSwKICAgc3ZlMl91cnF2cywKICAgc3ZlX2luZGV4MSwKLSAgcmNwYzMKKyAgcmNwYzMs CisgIGx1dAogfTsKIAogLyogT3Bjb2RlIGVudW1lcmF0b3JzLiAgKi8KZGlmZiAtLWdpdCBhL29w Y29kZXMvYWFyY2g2NC1hc20uaCBiL29wY29kZXMvYWFyY2g2NC1hc20uaAppbmRleCA4OGUzODli ZmViZGEwMDFlZmJiNTc4YTZlMTQ0ZGQ1ZTI1MTNjZjc4Li5lZGViNmQ4ZGU3ZTJjM2UxMTdlMGFk OTFhMDJiOTNjMGUwNDBhMDYxIDEwMDY0NAotLS0gYS9vcGNvZGVzL2FhcmNoNjQtYXNtLmgKKysr IGIvb3Bjb2Rlcy9hYXJjaDY0LWFzbS5oCkBAIC00Nyw2ICs0Nyw3IEBAIEFBUkNINjRfREVDTF9P UERfSU5TRVJURVIgKGluc19yZWdsYW5lKTsKIEFBUkNINjRfREVDTF9PUERfSU5TRVJURVIgKGlu c19yZWdsaXN0KTsKIEFBUkNINjRfREVDTF9PUERfSU5TRVJURVIgKGluc19sZHN0X3JlZ2xpc3Qp OwogQUFSQ0g2NF9ERUNMX09QRF9JTlNFUlRFUiAoaW5zX2xkc3RfcmVnbGlzdF9yKTsKK0FBUkNI NjRfREVDTF9PUERfSU5TRVJURVIgKGluc19sdXRfcmVnbGlzdCk7CiBBQVJDSDY0X0RFQ0xfT1BE X0lOU0VSVEVSIChpbnNfbGRzdF9lbGVtbGlzdCk7CiBBQVJDSDY0X0RFQ0xfT1BEX0lOU0VSVEVS IChpbnNfYWR2c2ltZF9pbW1fc2hpZnQpOwogQUFSQ0g2NF9ERUNMX09QRF9JTlNFUlRFUiAoaW5z X2ltbSk7CmRpZmYgLS1naXQgYS9vcGNvZGVzL2FhcmNoNjQtYXNtLmMgYi9vcGNvZGVzL2FhcmNo NjQtYXNtLmMKaW5kZXggNWE1NWNhMmY4NmRiMmQ0NWI2Y2I1NGI1ZWUyMjYwNmVjMjdjNTFmZC4u MzM4ZWQ1NDE2NWQyNmNlYzJmMDYzNGJjNjJjMWQ3MzU1Y2E0OTU2YSAxMDA2NDQKLS0tIGEvb3Bj b2Rlcy9hYXJjaDY0LWFzbS5jCisrKyBiL29wY29kZXMvYWFyY2g2NC1hc20uYwpAQCAtMTY4LDYg KzE2OCwyNyBAQCBhYXJjaDY0X2luc19yZWdsYW5lIChjb25zdCBhYXJjaDY0X29wZXJhbmQgKnNl bGYsIGNvbnN0IGFhcmNoNjRfb3BuZF9pbmZvICppbmZvLAogICAgICAgYXNzZXJ0IChyZWdsYW5l X2luZGV4IDwgNCk7CiAgICAgICBpbnNlcnRfZmllbGQgKEZMRF9TTTNfaW1tMiwgY29kZSwgcmVn bGFuZV9pbmRleCwgMCk7CiAgICAgfQorICBlbHNlIGlmIChpbnN0LT5vcGNvZGUtPmljbGFzcyA9 PSBsdXQpCisgICAgeworICAgICAgdW5zaWduZWQgcmVnbGFuZV9pbmRleCA9IGluZm8tPnJlZ2xh bmUuaW5kZXg7CisgICAgICBzd2l0Y2ggKGluZm8tPnR5cGUpCisJeworCWNhc2UgQUFSQ0g2NF9P UE5EX0VtX0lOREVYMV8xNDoKKwkgIGFzc2VydCAocmVnbGFuZV9pbmRleCA8IDIpOworCSAgaW5z ZXJ0X2ZpZWxkIChGTERfaW1tMV8xNCwgY29kZSwgcmVnbGFuZV9pbmRleCwgMCk7CisJICBicmVh azsKKwljYXNlIEFBUkNINjRfT1BORF9FbV9JTkRFWDJfMTM6CisJICBhc3NlcnQgKHJlZ2xhbmVf aW5kZXggPCA0KTsKKwkgIGluc2VydF9maWVsZCAoRkxEX2ltbTJfMTMsIGNvZGUsIHJlZ2xhbmVf aW5kZXgsIDApOworCSAgYnJlYWs7CisJY2FzZSBBQVJDSDY0X09QTkRfRW1fSU5ERVgzXzEyOgor CSAgYXNzZXJ0IChyZWdsYW5lX2luZGV4IDwgOCk7CisJICBpbnNlcnRfZmllbGQgKEZMRF9pbW0z XzEyLCBjb2RlLCByZWdsYW5lX2luZGV4LCAwKTsKKwkgIGJyZWFrOworCWRlZmF1bHQ6CisJICBy ZXR1cm4gZmFsc2U7CisJfQorICAgIH0KICAgZWxzZQogICAgIHsKICAgICAgIC8qIGluZGV4IGZv ciBlLmcuIFNRRE1MQUwgPFZhPjxkPiwgPFZiPjxuPiwgPFZtPi48VHM+WzxpbmRleD5dCkBAIC0y ODYsNiArMzA3LDE3IEBAIGFhcmNoNjRfaW5zX2xkc3RfcmVnbGlzdF9yIChjb25zdCBhYXJjaDY0 X29wZXJhbmQgKnNlbGYgQVRUUklCVVRFX1VOVVNFRCwKICAgcmV0dXJuIHRydWU7CiB9CiAKKy8q IEluc2VydCByZWdub3Mgb2YgcmVnaXN0ZXIgbGlzdCBvcGVyYW5kIGZvciBBZHZTSU1EIGx1dCBp bnN0cnVjdGlvbnMuICAqLworYm9vbAorYWFyY2g2NF9pbnNfbHV0X3JlZ2xpc3QgKGNvbnN0IGFh cmNoNjRfb3BlcmFuZCAqc2VsZiwgY29uc3QgYWFyY2g2NF9vcG5kX2luZm8gKmluZm8sCisJCSAg ICAgYWFyY2g2NF9pbnNuICpjb2RlLAorCQkgICAgIGNvbnN0IGFhcmNoNjRfaW5zdCAqaW5zdCBB VFRSSUJVVEVfVU5VU0VELAorCQkgICAgIGFhcmNoNjRfb3BlcmFuZF9lcnJvciAqZXJyb3JzIEFU VFJJQlVURV9VTlVTRUQpCit7CisgIGluc2VydF9maWVsZCAoc2VsZi0+ZmllbGRzWzBdLCBjb2Rl LCBpbmZvLT5yZWdsaXN0LmZpcnN0X3JlZ25vLCAwKTsKKyAgcmV0dXJuIHRydWU7Cit9CisKIC8q IEluc2VydCBRLCBvcGNvZGU8MjoxPiwgUywgc2l6ZSBhbmQgUnQgZmllbGRzIGZvciBhIHJlZ2lz dGVyIGVsZW1lbnQgbGlzdAogICAgb3BlcmFuZCBlLmcuIFZ0IGluIEFkdlNJTUQgbG9hZC9zdG9y ZSBzaW5nbGUgZWxlbWVudCBpbnN0cnVjdGlvbnMuICAqLwogYm9vbApkaWZmIC0tZ2l0IGEvb3Bj b2Rlcy9hYXJjaDY0LWRpcy5oIGIvb3Bjb2Rlcy9hYXJjaDY0LWRpcy5oCmluZGV4IDg2NDk0Y2Mz MDkzN2IxZDdlNGNhZjkwNjMwY2FlYzMwYzhiMzFkM2UuLjllOGY3YzIxNGQ3MDM5MGE3MmY5M2Uz ODY1NWE1YWMwZjU2MmQwODUgMTAwNjQ0Ci0tLSBhL29wY29kZXMvYWFyY2g2NC1kaXMuaAorKysg Yi9vcGNvZGVzL2FhcmNoNjQtZGlzLmgKQEAgLTcwLDYgKzcwLDcgQEAgQUFSQ0g2NF9ERUNMX09Q RF9FWFRSQUNUT1IgKGV4dF9yZWdsYW5lKTsKIEFBUkNINjRfREVDTF9PUERfRVhUUkFDVE9SIChl eHRfcmVnbGlzdCk7CiBBQVJDSDY0X0RFQ0xfT1BEX0VYVFJBQ1RPUiAoZXh0X2xkc3RfcmVnbGlz dCk7CiBBQVJDSDY0X0RFQ0xfT1BEX0VYVFJBQ1RPUiAoZXh0X2xkc3RfcmVnbGlzdF9yKTsKK0FB UkNINjRfREVDTF9PUERfRVhUUkFDVE9SIChleHRfbHV0X3JlZ2xpc3QpOwogQUFSQ0g2NF9ERUNM X09QRF9FWFRSQUNUT1IgKGV4dF9sZHN0X2VsZW1saXN0KTsKIEFBUkNINjRfREVDTF9PUERfRVhU UkFDVE9SIChleHRfYWR2c2ltZF9pbW1fc2hpZnQpOwogQUFSQ0g2NF9ERUNMX09QRF9FWFRSQUNU T1IgKGV4dF9zaGxsX2ltbSk7CmRpZmYgLS1naXQgYS9vcGNvZGVzL2FhcmNoNjQtZGlzLmMgYi9v cGNvZGVzL2FhcmNoNjQtZGlzLmMKaW5kZXggOTZmNDJhZTg2MmEzOTViZjNhYTQ5OGM0OTVmZGNl YTlhM2QxMmE0MS4uMTMwZDJjMWZhZTAwNWMyNWE0NjE1YTg4MTkwYjYyZmZkMDU5Y2RiMSAxMDA2 NDQKLS0tIGEvb3Bjb2Rlcy9hYXJjaDY0LWRpcy5jCisrKyBiL29wY29kZXMvYWFyY2g2NC1kaXMu YwpAQCAtMzk4LDYgKzM5OCwyMyBAQCBhYXJjaDY0X2V4dF9yZWdsYW5lIChjb25zdCBhYXJjaDY0 X29wZXJhbmQgKnNlbGYsIGFhcmNoNjRfb3BuZF9pbmZvICppbmZvLAogICAgICAgLyogaW5kZXgg Zm9yIGUuZy4gU00zVFQyQSA8VmQ+LjRTLCA8Vm4+LjRTLCA8Vm0+U1s8aW1tMj5dLiAgKi8KICAg ICAgIGluZm8tPnJlZ2xhbmUuaW5kZXggPSBleHRyYWN0X2ZpZWxkIChGTERfU00zX2ltbTIsIGNv ZGUsIDApOwogICAgIH0KKyAgZWxzZSBpZiAoaW5zdC0+b3Bjb2RlLT5pY2xhc3MgPT0gbHV0KQor ICAgIHsKKyAgICAgIHN3aXRjaCAoaW5mby0+dHlwZSkKKwl7CisJY2FzZSBBQVJDSDY0X09QTkRf RW1fSU5ERVgxXzE0OgorCSAgaW5mby0+cmVnbGFuZS5pbmRleCA9IGV4dHJhY3RfZmllbGQgKEZM RF9pbW0xXzE0LCBjb2RlLCAwKTsKKwkgIGJyZWFrOworCWNhc2UgQUFSQ0g2NF9PUE5EX0VtX0lO REVYMl8xMzoKKwkgIGluZm8tPnJlZ2xhbmUuaW5kZXggPSBleHRyYWN0X2ZpZWxkIChGTERfaW1t Ml8xMywgY29kZSwgMCk7CisJICBicmVhazsKKwljYXNlIEFBUkNINjRfT1BORF9FbV9JTkRFWDNf MTI6CisJICBpbmZvLT5yZWdsYW5lLmluZGV4ID0gZXh0cmFjdF9maWVsZCAoRkxEX2ltbTNfMTIs IGNvZGUsIDApOworCSAgYnJlYWs7CisJZGVmYXVsdDoKKwkgIHJldHVybiBmYWxzZTsKKwl9Cisg ICAgfQogICBlbHNlCiAgICAgewogICAgICAgLyogSW5kZXggb25seSBmb3IgZS5nLiBTUURNTEFM IDxWYT48ZD4sIDxWYj48bj4sIDxWbT4uPFRzPls8aW5kZXg+XQpAQCAtNTMzLDYgKzU1MCwyMSBA QCBhYXJjaDY0X2V4dF9sZHN0X3JlZ2xpc3RfciAoY29uc3QgYWFyY2g2NF9vcGVyYW5kICpzZWxm IEFUVFJJQlVURV9VTlVTRUQsCiAgIHJldHVybiB0cnVlOwogfQogCisvKiBEZWNvZGUgQWR2U0lN RCB2ZWN0b3IgcmVnaXN0ZXIgbGlzdCBmb3IgQWR2U0lNRCBsdXQgaW5zdHJ1Y3Rpb25zLgorICAg VGhlIG51bWJlciBvZiBvZiByZWdpc3RlcnMgaW4gdGhlIGxpc3QgaXMgZGV0ZXJtaW5lZCBieSB0 aGUgb3Bjb2RlCisgICBmbGFnLiAgKi8KK2Jvb2wKK2FhcmNoNjRfZXh0X2x1dF9yZWdsaXN0IChj b25zdCBhYXJjaDY0X29wZXJhbmQgKnNlbGYsIGFhcmNoNjRfb3BuZF9pbmZvICppbmZvLAorCQkg ICAgIGNvbnN0IGFhcmNoNjRfaW5zbiBjb2RlLAorCQkgICAgIGNvbnN0IGFhcmNoNjRfaW5zdCAq aW5zdCBBVFRSSUJVVEVfVU5VU0VELAorCQkgICAgIGFhcmNoNjRfb3BlcmFuZF9lcnJvciAqZXJy b3JzIEFUVFJJQlVURV9VTlVTRUQpCit7CisgIGluZm8tPnJlZ2xpc3QuZmlyc3RfcmVnbm8gPSBl eHRyYWN0X2ZpZWxkIChzZWxmLT5maWVsZHNbMF0sIGNvZGUsIDApOworICBpbmZvLT5yZWdsaXN0 Lm51bV9yZWdzID0gZ2V0X29wY29kZV9kZXBlbmRlbnRfdmFsdWUgKGluc3QtPm9wY29kZSk7Cisg IGluZm8tPnJlZ2xpc3Quc3RyaWRlID0gMTsKKyAgcmV0dXJuIHRydWU7Cit9CisKIC8qIERlY29k ZSBRLCBvcGNvZGU8MjoxPiwgUywgc2l6ZSBhbmQgUnQgZmllbGRzIG9mIFZ0IGluIEFkdlNJTUQK ICAgIGxvYWQvc3RvcmUgc2luZ2xlIGVsZW1lbnQgaW5zdHJ1Y3Rpb25zLiAgKi8KIGJvb2wKZGlm ZiAtLWdpdCBhL29wY29kZXMvYWFyY2g2NC1vcGMuaCBiL29wY29kZXMvYWFyY2g2NC1vcGMuaApp bmRleCA0ZTc4MWYwMDBjYzM4YzEyMDU4NTMwZTU4NTFiMDgwODNkNDJhZjUyLi4yM2U2MzRmMTI1 MGRlNTc5NjYxYmJlYjE0ZDYxMWI4NjhiNzZiYzhkIDEwMDY0NAotLS0gYS9vcGNvZGVzL2FhcmNo NjQtb3BjLmgKKysrIGIvb3Bjb2Rlcy9hYXJjaDY0LW9wYy5oCkBAIC0xNDcsNiArMTQ3LDcgQEAg ZW51bSBhYXJjaDY0X2ZpZWxkX2tpbmQKICAgRkxEX2ltbTFfMiwKICAgRkxEX2ltbTFfOCwKICAg RkxEX2ltbTFfMTAsCisgIEZMRF9pbW0xXzE0LAogICBGTERfaW1tMV8xNSwKICAgRkxEX2ltbTFf MTYsCiAgIEZMRF9pbW0yXzAsCkBAIC0xNTQsNiArMTU1LDcgQEAgZW51bSBhYXJjaDY0X2ZpZWxk X2tpbmQKICAgRkxEX2ltbTJfOCwKICAgRkxEX2ltbTJfMTAsCiAgIEZMRF9pbW0yXzEyLAorICBG TERfaW1tMl8xMywKICAgRkxEX2ltbTJfMTUsCiAgIEZMRF9pbW0yXzE2LAogICBGTERfaW1tMl8x OSwKZGlmZiAtLWdpdCBhL29wY29kZXMvYWFyY2g2NC1vcGMuYyBiL29wY29kZXMvYWFyY2g2NC1v cGMuYwppbmRleCBlODhjNjE2ZjRhOWYzNjU3NzU2YjkxOWRjMTE5NmMwODgzMWMzY2M1Li42MWFi NGMxNGE2MzkzMTUwZjI5YTNmYTE2NzlhMzBiNjQyYmY4ODQ0IDEwMDY0NAotLS0gYS9vcGNvZGVz L2FhcmNoNjQtb3BjLmMKKysrIGIvb3Bjb2Rlcy9hYXJjaDY0LW9wYy5jCkBAIC0zMzcsNiArMzM3 LDcgQEAgY29uc3QgYWFyY2g2NF9maWVsZCBmaWVsZHNbXSA9CiAgICAgeyAgMiwgIDEgfSwJLyog aW1tMV8yOiBnZW5lcmFsIGltbWVkaWF0ZSBpbiBiaXRzIFsyXS4gICovCiAgICAgeyAgOCwgIDEg fSwJLyogaW1tMV84OiBnZW5lcmFsIGltbWVkaWF0ZSBpbiBiaXRzIFs4XS4gICovCiAgICAgeyAx MCwgIDEgfSwJLyogaW1tMV8xMDogZ2VuZXJhbCBpbW1lZGlhdGUgaW4gYml0cyBbMTBdLiAgKi8K KyAgICB7IDE0LCAgMSB9LAkvKiBpbW0xXzE0OiBnZW5lcmFsIGltbWVkaWF0ZSBpbiBiaXRzIFsx NF0uICAqLwogICAgIHsgMTUsICAxIH0sCS8qIGltbTFfMTU6IGdlbmVyYWwgaW1tZWRpYXRlIGlu IGJpdHMgWzE1XS4gICovCiAgICAgeyAxNiwgIDEgfSwJLyogaW1tMV8xNjogZ2VuZXJhbCBpbW1l ZGlhdGUgaW4gYml0cyBbMTZdLiAgKi8KICAgICB7ICAwLCAgMiB9LAkvKiBpbW0yXzA6IGdlbmVy YWwgaW1tZWRpYXRlIGluIGJpdHMgWzE6MF0uICAqLwpAQCAtMzQ0LDYgKzM0NSw3IEBAIGNvbnN0 IGFhcmNoNjRfZmllbGQgZmllbGRzW10gPQogICAgIHsgIDgsICAyIH0sCS8qIGltbTJfODogZ2Vu ZXJhbCBpbW1lZGlhdGUgaW4gYml0cyBbOTo4XS4gICovCiAgICAgeyAxMCwgIDIgfSwgLyogaW1t Ml8xMDogMi1iaXQgaW1tZWRpYXRlLCBiaXRzIFsxMToxMF0gKi8KICAgICB7IDEyLCAgMiB9LCAv KiBpbW0yXzEyOiAyLWJpdCBpbW1lZGlhdGUsIGJpdHMgWzEzOjEyXSAqLworICAgIHsgMTMsICAy IH0sIC8qIGltbTJfMTM6IDItYml0IGltbWVkaWF0ZSwgYml0cyBbMTQ6MTNdICovCiAgICAgeyAx NSwgIDIgfSwgLyogaW1tMl8xNTogMi1iaXQgaW1tZWRpYXRlLCBiaXRzIFsxNjoxNV0gKi8KICAg ICB7IDE2LCAgMiB9LCAvKiBpbW0yXzE2OiAyLWJpdCBpbW1lZGlhdGUsIGJpdHMgWzE3OjE2XSAq LwogICAgIHsgMTksICAyIH0sIC8qIGltbTJfMTk6IDItYml0IGltbWVkaWF0ZSwgYml0cyBbMjA6 MTldICovCkBAIC0yNTU0LDYgKzI1NTYsMTAgQEAgb3BlcmFuZF9nZW5lcmFsX2NvbnN0cmFpbnRf bWV0X3AgKGNvbnN0IGFhcmNoNjRfb3BuZF9pbmZvICpvcG5kcywgaW50IGlkeCwKICAgICAgIG51 bSA9IGdldF9vcGNvZGVfZGVwZW5kZW50X3ZhbHVlIChvcGNvZGUpOwogICAgICAgc3dpdGNoICh0 eXBlKQogCXsKKwljYXNlIEFBUkNINjRfT1BORF9MVm5fTFVUOgorCSAgaWYgKCFjaGVja19yZWds aXN0IChvcG5kLCBtaXNtYXRjaF9kZXRhaWwsIGlkeCwgbnVtLCAxKSkKKwkgICAgcmV0dXJuIDA7 CisJICBicmVhazsKIAljYXNlIEFBUkNINjRfT1BORF9MVnQ6CiAJICBhc3NlcnQgKG51bSA+PSAx ICYmIG51bSA8PSA0KTsKIAkgIC8qIFVubGVzcyBMRDEvU1QxLCB0aGUgbnVtYmVyIG9mIHJlZ2lz dGVycyBzaG91bGQgYmUgZXF1YWwgdG8gdGhhdApAQCAtMzE2NSw2ICszMTcxLDE0IEBAIG9wZXJh bmRfZ2VuZXJhbF9jb25zdHJhaW50X21ldF9wIChjb25zdCBhYXJjaDY0X29wbmRfaW5mbyAqb3Bu ZHMsIGludCBpZHgsCiAJICAgYW5kIGlzIGhhbGZlZCBiZWNhdXNlIGNvbXBsZXggbnVtYmVycyB0 YWtlIHR3byBlbGVtZW50cy4gICovCiAJbnVtID0gYWFyY2g2NF9nZXRfcXVhbGlmaWVyX25lbGVt IChvcG5kc1swXS5xdWFsaWZpZXIpCiAJICAgICAgKiBhYXJjaDY0X2dldF9xdWFsaWZpZXJfZXNp emUgKG9wbmRzWzBdLnF1YWxpZmllcikgLyAyOworICAgICAgZWxzZSBpZiAob3Bjb2RlLT5pY2xh c3MgPT0gbHV0KQorCXsKKwkgIHNpemUgPSBnZXRfb3BlcmFuZF9maWVsZHNfd2lkdGggKGdldF9v cGVyYW5kX2Zyb21fY29kZSAodHlwZSkpIC0gNTsKKwkgIGlmICghY2hlY2tfcmVnbGFuZSAob3Bu ZCwgbWlzbWF0Y2hfZGV0YWlsLCBpZHgsICJ2IiwgMCwgMzEsCisJCQkgICAgICAwLCAoMSA8PCBz aXplKSAtIDEpKQorCSAgICByZXR1cm4gMDsKKwkgIGJyZWFrOworCX0KICAgICAgIGVsc2UKIAlu dW0gPSAxNjsKICAgICAgIG51bSA9IG51bSAvIGFhcmNoNjRfZ2V0X3F1YWxpZmllcl9lc2l6ZSAo cXVhbGlmaWVyKSAtIDE7CkBAIC00MDY5LDYgKzQwODMsMTQgQEAgYWFyY2g2NF9wcmludF9vcGVy YW5kIChjaGFyICpidWYsIHNpemVfdCBzaXplLCBiZmRfdm1hIHBjLAogCQlzdHlsZV9pbW0gKHN0 eWxlciwgIiUiIFBSSWk2NCwgb3BuZC0+cmVnbGFuZS5pbmRleCkpOwogICAgICAgYnJlYWs7CiAK KyAgICBjYXNlIEFBUkNINjRfT1BORF9FbV9JTkRFWDFfMTQ6CisgICAgY2FzZSBBQVJDSDY0X09Q TkRfRW1fSU5ERVgyXzEzOgorICAgIGNhc2UgQUFSQ0g2NF9PUE5EX0VtX0lOREVYM18xMjoKKyAg ICAgIHNucHJpbnRmIChidWYsIHNpemUsICIlc1slc10iLAorCQlzdHlsZV9yZWcgKHN0eWxlciwg InYlZCIsIG9wbmQtPnJlZ2xhbmUucmVnbm8pLAorCQlzdHlsZV9pbW0gKHN0eWxlciwgIiUiIFBS SWk2NCwgb3BuZC0+cmVnbGFuZS5pbmRleCkpOworICAgICAgYnJlYWs7CisKICAgICBjYXNlIEFB UkNINjRfT1BORF9WZEQxOgogICAgIGNhc2UgQUFSQ0g2NF9PUE5EX1ZuRDE6CiAgICAgICBzbnBy aW50ZiAoYnVmLCBzaXplLCAiJXNbJXNdIiwKQEAgLTQwNzcsNiArNDA5OSw3IEBAIGFhcmNoNjRf cHJpbnRfb3BlcmFuZCAoY2hhciAqYnVmLCBzaXplX3Qgc2l6ZSwgYmZkX3ZtYSBwYywKICAgICAg IGJyZWFrOwogCiAgICAgY2FzZSBBQVJDSDY0X09QTkRfTFZuOgorICAgIGNhc2UgQUFSQ0g2NF9P UE5EX0xWbl9MVVQ6CiAgICAgY2FzZSBBQVJDSDY0X09QTkRfTFZ0OgogICAgIGNhc2UgQUFSQ0g2 NF9PUE5EX0xWdF9BTDoKICAgICBjYXNlIEFBUkNINjRfT1BORF9MRXQ6CmRpZmYgLS1naXQgYS9v cGNvZGVzL2FhcmNoNjQtdGJsLmggYi9vcGNvZGVzL2FhcmNoNjQtdGJsLmgKaW5kZXggNWIxYzg1 NjFhYzYxNDdlNjRiYTk5YjZlOWZiYTg1ZWQ4ZWU3MTJjNC4uNmQ3YWEzZDc3MGFkMzQwNzFiZmU2 N2Y5NWQ5NzRlYWE3YjZjZGJiZCAxMDA2NDQKLS0tIGEvb3Bjb2Rlcy9hYXJjaDY0LXRibC5oCisr KyBiL29wY29kZXMvYWFyY2g2NC10YmwuaApAQCAtMTAwNCw2ICsxMDA0LDI0IEBACiAgIFFMRjMo Vl8xNkIsIFZfMTZCLCBWXzE2QiksCVwKIH0KIAorLyogZS5nLiBsdXRpMiA8VmQ+LjE2QiwgeyA8 Vm4+LjE2QiB9LCA8Vm0+W2luZGV4XS4gICovCisvKiBUaGUgdGhpcmQgb3BlcmFuZCBpcyBhbiBB ZHZTSU1EIHZlY3RvciB3aXRoIGEgYml0IGluZGV4CisgICBhbmQgd2l0aG91dCBhIHR5cGUgcXVh bGlmaWVyIGFuZCBpcyBjaGVja2VkIHNlcGFyYXRlbHkKKyAgIGJhc2VkIG9uIG9wZXJhbmQgZW51 bS4gICovCisjZGVmaW5lIFFMX1ZWVUIJCQlcCit7CQkJCVwKKyAgUUxGMyhWXzE2QiAsIFZfMTZC ICwgTklMKSwJXAorfQorCisvKiBlLmcuIGx1dGkyIDxWZD4uOEgsIHsgPFZuPi44SCB9LCA8Vm0+ W2luZGV4XS4gICovCisvKiBUaGUgdGhpcmQgb3BlcmFuZCBpcyBhbiBBZHZTSU1EIHZlY3RvciB3 aXRoIGEgYml0IGluZGV4CisgICBhbmQgd2l0aG91dCBhIHR5cGUgcXVhbGlmaWVyIGFuZCBpcyBj aGVja2VkIHNlcGFyYXRlbHkKKyAgIGJhc2VkIG9uIG9wZXJhbmQgZW51bS4gICovCisjZGVmaW5l IFFMX1ZWVUgJCQlcCit7CQkJCVwKKyAgUUxGMyhWXzhIICwgVl84SCAsIE5JTCksCVwKK30KKwog LyogZS5nLiBFWFQgPFZkPi48VD4sIDxWbj4uPFQ+LCA8Vm0+LjxUPiwgIzxpbmRleD4uICAqLwog I2RlZmluZSBRTF9WRVhUCQkJXAogewkJCQkJXApAQCAtMjY2OSw2ICsyNjg3LDggQEAgc3RhdGlj IGNvbnN0IGFhcmNoNjRfZmVhdHVyZV9zZXQgYWFyY2g2NF9mZWF0dXJlX2ZhbWlubWF4X3N2ZTIg PQogICBBQVJDSDY0X0ZFQVRVUkVTICgyLCBGQU1JTk1BWCwgU1ZFMik7CiBzdGF0aWMgY29uc3Qg YWFyY2g2NF9mZWF0dXJlX3NldCBhYXJjaDY0X2ZlYXR1cmVfZmFtaW5tYXhfc21lMiA9CiAgIEFB UkNINjRfRkVBVFVSRVMgKDMsIFNWRTIsIEZBTUlOTUFYLCBTTUUyKTsKK3N0YXRpYyBjb25zdCBh YXJjaDY0X2ZlYXR1cmVfc2V0IGFhcmNoNjRfZmVhdHVyZV9sdXQgPQorICBBQVJDSDY0X0ZFQVRV UkUgKExVVCk7CiAKICNkZWZpbmUgQ09SRQkJJmFhcmNoNjRfZmVhdHVyZV92OAogI2RlZmluZSBG UAkJJmFhcmNoNjRfZmVhdHVyZV9mcApAQCAtMjc0MCw2ICsyNzYwLDcgQEAgc3RhdGljIGNvbnN0 IGFhcmNoNjRfZmVhdHVyZV9zZXQgYWFyY2g2NF9mZWF0dXJlX2ZhbWlubWF4X3NtZTIgPQogI2Rl ZmluZSBGQU1JTk1BWCAgJmFhcmNoNjRfZmVhdHVyZV9mYW1pbm1heAogI2RlZmluZSBGQU1JTk1B WF9TVkUyICAmYWFyY2g2NF9mZWF0dXJlX2ZhbWlubWF4X3N2ZTIKICNkZWZpbmUgRkFNSU5NQVhf U01FMiAgJmFhcmNoNjRfZmVhdHVyZV9mYW1pbm1heF9zbWUyCisjZGVmaW5lIExVVCAmYWFyY2g2 NF9mZWF0dXJlX2x1dAogCiAjZGVmaW5lIENPUkVfSU5TTihOQU1FLE9QQ09ERSxNQVNLLENMQVNT LE9QLE9QUyxRVUFMUyxGTEFHUykgXAogICB7IE5BTUUsIE9QQ09ERSwgTUFTSywgQ0xBU1MsIE9Q LCBDT1JFLCBPUFMsIFFVQUxTLCBGTEFHUywgMCwgMCwgTlVMTCB9CkBAIC0yOTI1LDYgKzI5NDYs OCBAQCBzdGF0aWMgY29uc3QgYWFyY2g2NF9mZWF0dXJlX3NldCBhYXJjaDY0X2ZlYXR1cmVfZmFt aW5tYXhfc21lMiA9CiAjZGVmaW5lIEZBTUlOTUFYX1NNRTJfSU5TTihOQU1FLE9QQ09ERSxNQVNL LE9QUyxRVUFMUykgXAogICB7IE5BTUUsIE9QQ09ERSwgTUFTSywgc21lX3NpemVfMjJfaHNkLCAw LCBGQU1JTk1BWF9TTUUyLCBPUFMsIFFVQUxTLCBcCiAgICAgRl9TVFJJQ1QgfCAwLCAwLCAxLCBO VUxMIH0KKyNkZWZpbmUgTFVUX0lOU04oTkFNRSxPUENPREUsTUFTSyxPUFMsUVVBTFMsRkxBR1Mp CQlcCisgIHsgTkFNRSwgT1BDT0RFLCBNQVNLLCBsdXQsIDAsIExVVCwgT1BTLCBRVUFMUywgRkxB R1MsIDAsIDAsIE5VTEwgfQogCiAjZGVmaW5lIE1PUFNfQ1BZX09QMV9PUDJfUE1FX0lOU04oTkFN RSwgT1BDT0RFLCBNQVNLLCBGTEFHUywgQ09OU1RSQUlOVFMpIFwKICAgTU9QU19JTlNOIChOQU1F LCBPUENPREUsIE1BU0ssIDAsIFwKQEAgLTQyNzUsNiArNDI5OCwxMSBAQCBjb25zdCBzdHJ1Y3Qg YWFyY2g2NF9vcGNvZGUgYWFyY2g2NF9vcGNvZGVfdGFibGVbXSA9CiAgIEZBTUlOTUFYX1NNRTJf SU5TTiAoImZhbWF4IiwgMHhjMTIwYjk0MCwgMHhmZjIzZmZlMywgT1AzIChTTUVfWmRueDQsIFNN RV9aZG54NCwgU01FX1pteDQpLCBPUF9TVkVfVlZWX0hTRCksCiAgIEZBTUlOTUFYX1NNRTJfSU5T TiAoImZhbWluIiwgMHhjMTIwYjE0MSwgMHhmZjIxZmZlMSwgT1AzIChTTUVfWmRueDIsIFNNRV9a ZG54MiwgU01FX1pteDIpLCBPUF9TVkVfVlZWX0hTRCksCiAgIEZBTUlOTUFYX1NNRTJfSU5TTiAo ImZhbWluIiwgMHhjMTIwYjk0MSwgMHhmZjIzZmZlMywgT1AzIChTTUVfWmRueDQsIFNNRV9aZG54 NCwgU01FX1pteDQpLCBPUF9TVkVfVlZWX0hTRCksCisgIC8qIEFkdlNJTUQgbHV0LiAgKi8KKyAg TFVUX0lOU04gKCJsdXRpMiIsIDB4NGU4MDEwMDAsIDB4ZmZlMDljMDAsIE9QMyAoVmQsIExWbl9M VVQsIEVtX0lOREVYMl8xMyksIFFMX1ZWVUIsIEZfT0QoMSkpLAorICBMVVRfSU5TTiAoImx1dGky IiwgMHg0ZWMwMDAwMCwgMHhmZmUwOGMwMCwgT1AzIChWZCwgTFZuX0xVVCwgRW1fSU5ERVgzXzEy KSwgUUxfVlZVSCwgRl9PRCgxKSksCisgIExVVF9JTlNOICgibHV0aTQiLCAweDRlNDAyMDAwLCAw eGZmZTBiYzAwLCBPUDMgKFZkLCBMVm5fTFVULCBFbV9JTkRFWDFfMTQpLCBRTF9WVlVCLCBGX09E KDEpKSwKKyAgTFVUX0lOU04gKCJsdXRpNCIsIDB4NGU0MDEwMDAsIDB4ZmZlMDljMDAsIE9QMyAo VmQsIExWbl9MVVQsIEVtX0lOREVYMl8xMyksIFFMX1ZWVUgsIEZfT0QoMikpLAogICAvKiBNb3Zl IHdpZGUgKGltbWVkaWF0ZSkuICAqLwogICBDT1JFX0lOU04gKCJtb3ZuIiwgMHgxMjgwMDAwMCwg MHg3ZjgwMDAwMCwgbW92ZXdpZGUsIE9QX01PVk4sIE9QMiAoUmQsIEhBTEYpLCBRTF9EU1RfUiwg Rl9TRiB8IEZfSEFTX0FMSUFTKSwKICAgQ09SRV9JTlNOICgibW92IiwgIDB4MTI4MDAwMDAsIDB4 N2Y4MDAwMDAsIG1vdmV3aWRlLCBPUF9NT1ZfSU1NX1dJREVOLCBPUDIgKFJkLCBJTU1fTU9WKSwg UUxfRFNUX1IsIEZfU0YgfCBGX0FMSUFTIHwgRl9DT05WKSwKQEAgLTY1MzEsMTIgKzY1NTksMjAg QEAgY29uc3Qgc3RydWN0IGFhcmNoNjRfb3Bjb2RlIGFhcmNoNjRfb3Bjb2RlX3RhYmxlW10gPQog ICAgICAgImEgU0lNRCB2ZWN0b3IgZWxlbWVudCIpCQkJCQkJXAogICAgIFkoU0lNRF9FTEVNRU5U LCByZWdsYW5lLCAiRW0xNiIsIDAsIEYoRkxEX1JtKSwJCQlcCiAgICAgICAiYSBTSU1EIHZlY3Rv ciBlbGVtZW50IGxpbWl0ZWQgdG8gVjAtVjE1IikJCQlcCisgICAgWShTSU1EX0VMRU1FTlQsIHJl Z2xhbmUsICJFbV9JTkRFWDFfMTQiLCAwLCBGKEZMRF9SbSwgRkxEX2ltbTFfMTQpLAlcCisgICAg ICAiYSBTSU1EIHZlY3RvciB3aXRob3V0IGEgdHlwZSBxdWFsaWZpZXIgZW5jb2RpbmcgYSBiaXQg aW5kZXgiKQlcCisgICAgWShTSU1EX0VMRU1FTlQsIHJlZ2xhbmUsICJFbV9JTkRFWDJfMTMiLCAw LCBGKEZMRF9SbSwgRkxEX2ltbTJfMTMpLAlcCisgICAgICAiYSBTSU1EIHZlY3RvciB3aXRob3V0 IGEgdHlwZSBxdWFsaWZpZXIgZW5jb2RpbmcgYSBiaXQgaW5kZXgiKQlcCisgICAgWShTSU1EX0VM RU1FTlQsIHJlZ2xhbmUsICJFbV9JTkRFWDNfMTIiLCAwLCBGKEZMRF9SbSwgRkxEX2ltbTNfMTIp LAlcCisgICAgICAiYSBTSU1EIHZlY3RvciB3aXRob3V0IGEgdHlwZSBxdWFsaWZpZXIgZW5jb2Rp bmcgYSBiaXQgaW5kZXgiKQlcCiAgICAgWShTSU1EX1JFR0xJU1QsIHJlZ2xpc3QsICJMVm4iLCAw LCBGKEZMRF9SbiksCQkJXAogICAgICAgImEgU0lNRCB2ZWN0b3IgcmVnaXN0ZXIgbGlzdCIpCQkJ CQlcCiAgICAgWShTSU1EX1JFR0xJU1QsIGxkc3RfcmVnbGlzdCwgIkxWdCIsIDAsIEYoKSwJCQlc CiAgICAgICAiYSBTSU1EIHZlY3RvciByZWdpc3RlciBsaXN0IikJCQkJCVwKICAgICBZKFNJTURf UkVHTElTVCwgbGRzdF9yZWdsaXN0X3IsICJMVnRfQUwiLCAwLCBGKCksCQkJXAogICAgICAgImEg U0lNRCB2ZWN0b3IgcmVnaXN0ZXIgbGlzdCIpCQkJCQlcCisgICAgWShTSU1EX1JFR0xJU1QsIGx1 dF9yZWdsaXN0LCAiTFZuX0xVVCIsIDAsIEYoRkxEX1JuKSwJCVwKKyAgICAgICJhIFNJTUQgdmVj dG9yIHJlZ2lzdGVyIGxpc3QiKQkJCQkJXAogICAgIFkoU0lNRF9SRUdMSVNULCBsZHN0X2VsZW1s aXN0LCAiTEV0IiwgMCwgRigpLAkJCVwKICAgICAgICJhIFNJTUQgdmVjdG9yIGVsZW1lbnQgbGlz dCIpCQkJCQlcCiAgICAgWShJTU1FRElBVEUsIGltbSwgIkNSbiIsIDAsIEYoRkxEX0NSbiksCQkJ CVwK --------------3wodf75QFqcwgq99bMLtTxNK--