From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01hn2216.outbound.protection.outlook.com [52.100.6.216]) by sourceware.org (Postfix) with ESMTPS id 5F0773858C62 for ; Fri, 11 Nov 2022 17:40:18 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 5F0773858C62 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-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=dLcTz+74oYz7SLSYWyHo0fQ0ygoTR2llF0rDY1zQOOM3NBvvpi2ycpfyqphnh46r+XqmwOuPgdMuYqLma8xoJP9rhip1mnyYj9ryT0DfWN/Jn+XNH2iTbwFG8phkr17+PoW62b5Vrtae8td7bN4IzQNedYix88Jwz2llCHZTRRglrG+2v5GM30j23gxC9zQV5sKhL4BXA88ZxyWhmaSAL3cUtsEt3RGsHtIxTFegX0hFNQFaB0ukMGFEIUVZABcXUeO6wACC43xFXLTEIyWi4lv16FnXtADBuoTZTcIduDJGIEm0DxCM7B6BLTZSxlkN8Jq2Zgbvv5bZ1JW0f+N5mA== 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=mBTBnksHISG6iLabDyAmf4Qbitpy5XQVpm7hVX1OfO8=; b=ibW3lJlt94/yFKStHG1tuYI0WA+WvczRAsJxkAVQJAmtdI6f0nnpLdspNCNrXi56z7pr8sSSzBId4VeDVx8lm3AuaQIVZuyqo2czsh0tF3Z83IYgK9/dVOAhHHisv1PxA5ctfmYgXq7QUAnGCCi9AblX8toOoP7nYeLcKKTW4xvYNF8SfW+4/VWFDh6Xjro9s1Wbe+T3iFvUAVDdS9dwAbN56JYsAW1KNZci0EChXqSt1bWt2SNMDzCHSpmC6mqo7p7ZWAO0TtIDPEzY4cYYV/Zd5YmCGp2SFUyuSj/tdPcOWaMtwD6FEun1TMFe/20IpYnJKdWSK03xEeqKhc8WNQ== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=gcc.gnu.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=armh.onmicrosoft.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=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mBTBnksHISG6iLabDyAmf4Qbitpy5XQVpm7hVX1OfO8=; b=RKcxd9whPhrk8qpCCAZwPr24y4K/UyuGSboxfufcmFFwsfo2Pds5rm/0xVzocy3lMBPz/HbttvxkJFkPM4ORDChhOOF4ZOefweVDw0/dQ44Eyvqcrv22hr77VizmR9oP4ne5qNdh6Dl5cToMFQrKpDsnjNfptHoCis4SDT4uy70= Received: from AS9PR0301CA0029.eurprd03.prod.outlook.com (2603:10a6:20b:468::10) by DBBPR08MB5898.eurprd08.prod.outlook.com (2603:10a6:10:20c::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5813.13; Fri, 11 Nov 2022 17:40:13 +0000 Received: from AM7EUR03FT003.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:468:cafe::81) by AS9PR0301CA0029.outlook.office365.com (2603:10a6:20b:468::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5813.13 via Frontend Transport; Fri, 11 Nov 2022 17:40:13 +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=armh.onmicrosoft.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 AM7EUR03FT003.mail.protection.outlook.com (100.127.140.227) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5813.12 via Frontend Transport; Fri, 11 Nov 2022 17:40:13 +0000 Received: ("Tessian outbound 58faf9791229:v130"); Fri, 11 Nov 2022 17:40:13 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: c4c4cbb28b3ae754 X-CR-MTA-TID: 64aa7808 Received: from a6de4a6fa9a7.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id CE793A8D-9DF8-4E65-8271-60CC0E820E00.1; Fri, 11 Nov 2022 17:40:04 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a6de4a6fa9a7.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 11 Nov 2022 17:40:04 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kdSvbL7+8ly+80lfea8Ah68G5Zvo+WkHVuxNf8+zhA94CkgjUumYqd8ML7TYlJ2w2ycnTZgL90ZGLA1I4lfR5SS0yAfacGkZPTZ56ekFShwLSmgtRyZ8adUXDrC+mD1jb7HS9amgdowJVyKlCfr8fR5FEdFLobINkWxi6VGMHqF1pnj+lNwBnfAeVPOdz0t0JD/Ri795ublY2gWS4HwM+TFnDXYoekwihQHiujA58s8T7KB+bVnMwptQnrtf+crlp18O8rEAoduzeLawAzaOjEMtenRAXXFNQKbfM2DiBEOMbUNLT69EuYc/aT4vrr7ugm4q8OaOwoD51h8wlMDZ8w== 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=mBTBnksHISG6iLabDyAmf4Qbitpy5XQVpm7hVX1OfO8=; b=P8Xx3A+/BxuEiU1aflkK7iKJXR3uOMFhO+s1RvCD+s5CFVStNYD8ncrh0RfW4PIYuYR2lwE1LGqHiNZ2w8hP5D04vvmAmxiogwoxM74Vz/BQONjKHvCXH3oDoLFPt5qRs8i3jnII0tsaW12Z08K6h8fitazb/E+3etoEX8ONro87xh0CzubOJ9Qb9/kzBq5PYFbzsPw6ViOrLI/IaaC6gnYGEcLJlPg/+3UX0GywBaHnVkX29mizT9+QGPkk2O8YHo4PEWh0O7qIXNkr67x9vTedqN242LBxwRtAd9ekcvcgwJdRaci874z/AhqEMWoXGjC6iquS+bPVy/fqcUsHNA== 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=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mBTBnksHISG6iLabDyAmf4Qbitpy5XQVpm7hVX1OfO8=; b=RKcxd9whPhrk8qpCCAZwPr24y4K/UyuGSboxfufcmFFwsfo2Pds5rm/0xVzocy3lMBPz/HbttvxkJFkPM4ORDChhOOF4ZOefweVDw0/dQ44Eyvqcrv22hr77VizmR9oP4ne5qNdh6Dl5cToMFQrKpDsnjNfptHoCis4SDT4uy70= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from DB9PR08MB6507.eurprd08.prod.outlook.com (2603:10a6:10:25a::6) by GV2PR08MB8196.eurprd08.prod.outlook.com (2603:10a6:150:7c::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5813.13; Fri, 11 Nov 2022 17:40:00 +0000 Received: from DB9PR08MB6507.eurprd08.prod.outlook.com ([fe80::1131:99da:d256:ae1f]) by DB9PR08MB6507.eurprd08.prod.outlook.com ([fe80::1131:99da:d256:ae1f%4]) with mapi id 15.20.5813.015; Fri, 11 Nov 2022 17:39:58 +0000 Content-Type: multipart/mixed; boundary="------------4o9CNLQ3tQRieHhby4cdQPl4" Message-ID: Date: Fri, 11 Nov 2022 17:39:55 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 Content-Language: en-US To: gcc-patches@gcc.gnu.org From: Stam Markianos-Wright Subject: [PATCH 1/2] arm: Add define_attr to to create a mapping between MVE predicated and unpredicated insns X-ClientProxiedBy: LO2P123CA0058.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1::22) To DB9PR08MB6507.eurprd08.prod.outlook.com (2603:10a6:10:25a::6) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: DB9PR08MB6507:EE_|GV2PR08MB8196:EE_|AM7EUR03FT003:EE_|DBBPR08MB5898:EE_ X-MS-Office365-Filtering-Correlation-Id: a8183c1a-5f38-492f-c34f-08dac40bc9b7 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?dTQa/KP8clprekFHz7sp74bXSfIXOwQvzjbbUjYYQgQ0UIG8qnwaUH8d3Utd?= =?us-ascii?Q?jN4eiIayUquX4wOq1WvvkuHBqei5vl8it1I3tjhPAvHgtblW/kifmhCq+o/v?= =?us-ascii?Q?03mPUse5/QJM7ja9Zpt02LS2LFl0pO4pyroA6sqMoGvHmLdhN+fPTWp2c7bE?= =?us-ascii?Q?YeqdwluFmW/5zC5etS0webuqHq5vmwnAiNoYnLIrygoBlZqPrVLIGzvBlpaZ?= =?us-ascii?Q?ZE0vkA5vOXxNqFL3wKxxhlnrjb/LDCs6eazlrZd722MIBLTPmua2Um+NLYeB?= =?us-ascii?Q?FRD5rLyY8ZdTrZyl3nooLXzmBflyYE/vB9vagVlxvvLGjbbxARGQI2loM4KM?= =?us-ascii?Q?5iqYm9j4IFrgjQS9twI9ogUJnDj8uYAs1H0clGXXsKMrQTWL9TT3Vu9jgufL?= =?us-ascii?Q?7R/6wspXcAYhOubTs9plH/mO3NbQAnevpKSxa74hZTfiPqnlYeD9MSdRLOkW?= =?us-ascii?Q?9SqdvsD6RekGTkrMMptmKZtU7EQD2ocvh0ltBLjCZwM/T+PbDUdDnXVU9TUC?= =?us-ascii?Q?uiuLSH6vPkKF+7MaeL+XDlcME+g/w6Eb6TjgA94+nj+dV/RR5nsGuySzY/1M?= =?us-ascii?Q?emYlEfovsdq9l9zcdbglXsGYg+hFVvEnFUTDgH1tthjCazvNWlOsZz0fFcZK?= =?us-ascii?Q?9RSmaGNA4s/popo1/UEeT51/qje/VdV2PMB08VWYva0Ah3EzPyJjGPrW/4cY?= =?us-ascii?Q?eY5ZTqgl9QQcblSyd+am6FH1iN9IY+/oKOd1AbomwUPJCYv0Bg1MR15+p8vv?= =?us-ascii?Q?daY0usFrex2JoYdoJWwitU9HIvBGhMINuXYj+mm5qpH2a4WHwKuXLXXvz3f7?= =?us-ascii?Q?DaFNhZjvy7HqhirBACjjayhJBTFvH/3wGMDkS9QPC404Y4LU/5vH1RE55LfW?= =?us-ascii?Q?sqEqVEmiX0eYzU2tvjYa7j4X3KjPaGYLw8GTeTmEomxwEqou5Te0saEKhCr7?= =?us-ascii?Q?lp+2vxhogMiVUirh8qTbv3B0D5u9FMdZmuP4SGYpyWilwQITaSrf4qjj2rx7?= =?us-ascii?Q?cf/JLNbDQdN3WfB4/4iovLLtDpibOu13wMjR1yFG6NvEHUIcliIEKc5m4Dxo?= =?us-ascii?Q?TSIHyeiKsOhXvX0n9Le9ExSVPnnA+383eFOnMpaPshX3Scx7tpKudz7KdMgC?= =?us-ascii?Q?7XoLqZSnoKiEVOwR4pJbfD1YTG+Ebo9ikkDWMVb/rDw3B5DR9ChFJ3FlJ7eJ?= =?us-ascii?Q?NQrnySqLVJvh2OCysfrBWYSlUml4KiltW81Zy026I8yo/AOlmZPZ2SVC0oeO?= =?us-ascii?Q?XwKL7BQ7lEJGE7+tEkmH7L0syIq7OXkiaI2fzYzeXw=3D=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:5;SRV:;IPV:NLI;SFV:SPM;H:DB9PR08MB6507.eurprd08.prod.outlook.com;PTR:;CAT:OSPM;SFS:(13230022)(4636009)(396003)(346002)(39860400002)(366004)(376002)(136003)(451199015)(6486002)(966005)(31686004)(84970400001)(2906002)(36756003)(31696002)(86362001)(8936002)(235185007)(41300700001)(66556008)(8676002)(66476007)(66946007)(316002)(6916009)(5660300002)(33964004)(6666004)(6506007)(478600001)(38100700002)(30864003)(83380400001)(2616005)(6512007)(26005)(186003)(45980500001)(43740500002)(559001)(579004)(11215385002);DIR:OUT;SFP:1501; X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB8196 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: AM7EUR03FT003.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 082579c3-5028-47a7-7ea8-08dac40bc040 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: =?utf-8?B?STM4cW9xb1JHbDVUNU9sTDE1dTFRbWhlR2ozUk1yUFVxU05zVHJoUEhIZmZj?= =?utf-8?B?VUo0Mm9BRm1uVWw4WkNmSW43WXp5Q2F3aVNMSWJSU0c2LzdMZ2tqdWYyYUZ5?= =?utf-8?B?Tm84OFh6bFVZVHR5YnhudG5iQlgrenVSODlWaVRaZ3VWNVdSYXYyRDBrbVJN?= =?utf-8?B?ZFJ6ak11bUxOQStHeVplNkoyajF6OWNBcDFpSXNBM0p6UDFFZnlnb09NdzRJ?= =?utf-8?B?VEhoVHp4T0pULzBESTUrWUJ5SStDYWRmdWtUT3pya0NTZDNlNEtmQWpYbVNF?= =?utf-8?B?djJueVJDbDdwQ01Da09ZRURpQU9Vb3dya3QwdmZIVjB0cmNlcGh1U2NpeWJT?= =?utf-8?B?aXVmYW5xdUJmRlZWeVRFMDJ0czdtV2RMWitOb2JNV1g5aWpTc2J4TEtVRUZp?= =?utf-8?B?MmtodG5UbUs3RXQ4b21GaTQwb21EMkJYM2RLMmUrNU9CdXRRTXQ5RUtNZ2hh?= =?utf-8?B?Y0lRREdDUHFkdSs1dUgwOTJSYmdkWlFaQkZJeVJxaDhEa3VFOHdaQU1OeGRu?= =?utf-8?B?Q095UndEajNmL3FJQUIweGNpc3IyakN1MHB4cWZud2swZG9jUXRPeklQUTJl?= =?utf-8?B?SG1nd0NMcXhjczVoRGQ0c3VLU2llUzQzMW0xTFFteHVsRkZ2VTF5Y0t3OGJa?= =?utf-8?B?NHdYV1Q1N2p1QU1UN01oVWk5dXFaTnFlZEZLbzFSMUtRYWY2M0JnTnJBTTg2?= =?utf-8?B?SjAwbGdVQmhESTJHVi9ZQXpyQmVnaTZ4cldPYTFMRzNzSWVuRzVhcXVRZE00?= =?utf-8?B?a251VS9aL0VrdG42T25QMkR3NzJVdGI0dmkyWWdYRm9zTlhSYmFjcElOcmVG?= =?utf-8?B?b1kvTitod2k4YzFTUkRlai82anRSZVhhdmJUVUVpNXdrVnRlcUJVZTUyZGhO?= =?utf-8?B?WnI1Qk1JRXdXcmYwK3NnNGJxR09ndlBwN2I1cjdJaHZKZUk5RFRnWnFqUkt4?= =?utf-8?B?OWZ6MzB5ajY5dldJNHF1SHIvdWxFTWhjNGZNSVNybGMyYW95NkM1dUhDdTJ2?= =?utf-8?B?QUVLZ01XbVM0MEFQOWMvNThJNnRpcHY0K0ZhU3BVTXVxbURBSEVJczllaS9m?= =?utf-8?B?ejZVMTBPOUZmM1hkakhPT3Q0QlJVbmxYVmV1a2JEK1lsSFlPcXZYQkRnanBQ?= =?utf-8?B?dDdpbEhPWXhaUVpacCtlSy9ab0RzMXpKU0poWjlsSDlpRkx0b0hiMHl2ZDB0?= =?utf-8?B?ZTFsT1I5VFVmVW84Qkl5ZVVUYjJsQWlPc2syVlI3UkxIT2xXUk9KaTZOdis0?= =?utf-8?B?b01WOHBQb3JING91MithZEdzZkFVNUFiT2JJd2JPdjN4ZDY4MkJxRkEybXk4?= =?utf-8?B?ZzdBWmwxL0tnNk0yeGtIUUkyaXpnaUJOUDl0N0QxOU1Db2pCT0FGRUFMZDht?= =?utf-8?B?cDFETGxFNWJoYWVsUVdoK2pINjNqNWVCc0xXeTFGOEFRUzlycWJxK3RNcE16?= =?utf-8?B?TVJKOTZOWHBIOWNUQ2NXcmp3aXZIdnI2WnhoT29PSnJZeTdGMjVQbElnbG5V?= =?utf-8?B?WkcrMWVmRlE2WWF6ZVpQbUtlUSsyOVZsZHFTdFBPV25GMmx3NUlsY0ErVW9i?= =?utf-8?B?ejE3S3d2QlJLOGRtdWs2dnNRQU5ERy9NcGxKRVVTdE4rV1hCbkhkQ0JCM1Mr?= =?utf-8?B?c2hiQmxrenU3UVZyUVcwMVlqTGx6TjArZENmNUpjdS90a3o0R1VsS29zTnBR?= =?utf-8?B?SHF0Wms1SjlJald6Q09tQ2psN3UwOG5RZ09CYWdURURlV0pSVFVNdVFPV3BM?= =?utf-8?Q?9PfB8w2IOk0ySaEBR8=3D?= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:5;SRV:;IPV:CAL;SFV:SPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:OSPM;SFS:(13230022)(4636009)(136003)(376002)(396003)(39860400002)(346002)(451199015)(46966006)(36840700001)(40470700004)(31686004)(36860700001)(84970400001)(966005)(6506007)(6486002)(5660300002)(235185007)(26005)(2616005)(6512007)(82740400003)(2906002)(186003)(356005)(47076005)(40480700001)(36756003)(82310400005)(81166007)(8936002)(30864003)(31696002)(316002)(83380400001)(6916009)(40460700003)(41300700001)(496002)(478600001)(6666004)(33964004)(336012)(70206006)(70586007)(8676002)(86362001)(43740500002)(559001)(579004)(11215385002);DIR:OUT;SFP:1501; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Nov 2022 17:40:13.3669 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a8183c1a-5f38-492f-c34f-08dac40bc9b7 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: AM7EUR03FT003.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB5898 X-Spam-Status: No, score=-9.5 required=5.0 tests=AXB_X_FF_SEZ_S,BAYES_00,BODY_8BITS,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,GIT_PATCH_0,KAM_DMARC_NONE,KAM_LOTSOFHASH,KAM_SHORT,RCVD_IN_DNSWL_NONE,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: --------------4o9CNLQ3tQRieHhby4cdQPl4 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi all, I'd like to submit two patches that add support for Arm's MVE Tail Predicated Low Overhead Loop feature. --- Introduction --- The M-class Arm-ARM: https://developer.arm.com/documentation/ddi0553/bu/?lang=en Section B5.5.1 "Loop tail predication" describes the feature we are adding support for with this patch (although we only add codegen for DLSTP/LETP instruction loops). Previously with commit d2ed233cb94 we'd added support for non-MVE DLS/LE loops through the loop-doloop pass, which, given a standard MVE loop like: ``` void  __attribute__ ((noinline)) test (int16_t *a, int16_t *b, int16_t *c, int n) {   while (n > 0)     {       mve_pred16_t p = vctp16q (n);       int16x8_t va = vldrhq_z_s16 (a, p);       int16x8_t vb = vldrhq_z_s16 (b, p);       int16x8_t vc = vaddq_x_s16 (va, vb, p);       vstrhq_p_s16 (c, vc, p);       c+=8;       a+=8;       b+=8;       n-=8;     } } ``` .. would output: ```                 dls     lr, lr .L3:         vctp.16 r3         vmrs    ip, P0  @ movhi         sxth    ip, ip         vmsr     P0, ip @ movhi         mov     r4, r0         vpst         vldrht.16       q2, [r4]         mov     r4, r1         vmov    q3, q0         vpst         vldrht.16       q1, [r4]         mov     r4, r2         vpst         vaddt.i16       q3, q2, q1         subs    r3, r3, #8         vpst         vstrht.16       q3, [r4]         adds    r0, r0, #16         adds    r1, r1, #16         adds    r2, r2, #16         le      lr, .L3 ``` where the LE instruction will decrement LR by 1, compare and branch if needed. (there are also other inefficiencies with the above code, like the pointless vmrs/sxth/vmsr on the VPR and the adds not being merged into the vldrht/vstrht as a #16 offsets and some random movs! But that's different problems...) The MVE version is similar, except that: * Instead of DLS/LE the instructions are DLSTP/LETP. * Instead of pre-calculating the number of iterations of the   loop, we place the number of elements to be processed by the   loop into LR. * Instead of decrementing the LR by one, LETP will decrement it   by FPSCR.LTPSIZE, which is the number of elements being   processed in each iteration: 16 for 8-bit elements, 5 for 16-bit   elements, etc. * On the final iteration, automatic Loop Tail Predication is   performed, as if the instructions within the loop had been VPT   predicated with a VCTP generating the VPR predicate in every   loop iteration. The dlstp/letp loop now looks like: ```                 dlstp.16        lr, r3 .L14:         mov     r3, r0         vldrh.16        q3, [r3]         mov     r3, r1         vldrh.16        q2, [r3]         mov     r3, r2         vadd.i16  q3, q3, q2         adds    r0, r0, #16         vstrh.16        q3, [r3]         adds    r1, r1, #16         adds    r2, r2, #16         letp    lr, .L14 ``` Since the loop tail predication is automatic, we have eliminated the VCTP that had been specified by the user in the intrinsic and converted the VPT-predicated instructions into their unpredicated equivalents (which also saves us from VPST insns). The LE instruction here decrements LR by 8 in each iteration. --- This 1/2 patch --- This first patch lays some groundwork by adding an attribute to md patterns, and then the second patch contains the functional changes. One major difficulty in implementing MVE Tail-Predicated Low Overhead Loops was the need to transform VPT-predicated insns in the insn chain into their unpredicated equivalents, like: `mve_vldrbq_z_ -> mve_vldrbq_`. This requires us to have a deterministic link between two different patterns in mve.md -- this _could_ be done by re-ordering the entirety of mve.md such that the patterns are at some constant icode proximity (e.g. having the _z immediately after the unpredicated version would mean that to map from the former to the latter you could use icode-1), but that is a very messy solution that would lead to complex unknown dependencies between patterns. This patch proves an alternative way of doing that: using an insn attribute to encode the icode of the unpredicated instruction. This was implemented by doing a find n replace across mve.md using the following patterns: define_insn "(.*)_p_(.*)"((.|\n)*?)\n( )*\[\(set_attr define_insn "$1_p_$2"$3\n$5[(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_$1_$2"))\n$5 (set_attr define_insn "(.*)_m_(.*)"((.|\n)*?)\n( )*\[\(set_attr define_insn "$1_m_$2"$3\n$5[(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_$1_$2"))\n$5 (set_attr define_insn "(.*)_z_(.*)"((.|\n)*?)\n( )*\[\(set_attr define_insn "$1_z_$2"$3\n$5[(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_$1_$2"))\n$5 (set_attr and then a number of manual fixes were needed for the md patterns that did not conform to the above.  Those changes were: Dropped the type suffix _s/_u_f: CODE_FOR_mve_vcmpcsq_n_ CODE_FOR_mve_vcmpcsq_ CODE_FOR_mve_vcmpeqq_n_ CODE_FOR_mve_vcmpeqq_ CODE_FOR_mve_vcmpgeq_n_ CODE_FOR_mve_vcmpgeq_ CODE_FOR_mve_vcmpgtq_n_ CODE_FOR_mve_vcmpgtq_ CODE_FOR_mve_vcmphiq_n_ CODE_FOR_mve_vcmphiq_ CODE_FOR_mve_vcmpleq_n_ CODE_FOR_mve_vcmpleq_ CODE_FOR_mve_vcmpltq_n_ CODE_FOR_mve_vcmpltq_ CODE_FOR_mve_vcmpneq_n_ CODE_FOR_mve_vcmpneq_ CODE_FOR_mve_vaddq CODE_FOR_mve_vcaddq_rot270 CODE_FOR_mve_vcaddq_rot90 CODE_FOR_mve_vcaddq_rot270 CODE_FOR_mve_vcaddq_rot90 CODE_FOR_mve_vcmlaq CODE_FOR_mve_vcmlaq_rot180 CODE_FOR_mve_vcmlaq_rot270 CODE_FOR_mve_vcmlaq_rot90 CODE_FOR_mve_vcmulq CODE_FOR_mve_vcmulq_rot180 CODE_FOR_mve_vcmulq_rot270 CODE_FOR_mve_vcmulq_rot90 Dropped _wb_: CODE_FOR_mve_vidupq_u_insn CODE_FOR_mve_vddupq_u_insn Dropped one underscore character: CODE_FOR_arm_vcx1qv16qi CODE_FOR_arm_vcx2qv16qi CODE_FOR_arm_vcx3qv16qi No regressions on arm-none-eabi with an MVE target. Thank you, Stam Markianos-Wright gcc/ChangeLog:         * config/arm/arm.md (mve_unpredicated_insn): New attribute.         * config/arm/mve.md (mve_vrndq_m_f): Add attribute.        (mve_vaddlvq_p_v4si): Likewise.        (mve_vaddvq_p_): Likewise.        (mve_vbicq_m_n_): Likewise.        (mve_vcmpeqq_m_f): Likewise.        (mve_vcvtaq_m_): Likewise.        (mve_vcvtq_m_to_f_): Likewise.        (mve_vabsq_m_s): Likewise.        (mve_vaddvaq_p_): Likewise.        (mve_vclsq_m_s): Likewise.        (mve_vclzq_m_): Likewise.        (mve_vcmpcsq_m_n_u): Likewise.        (mve_vcmpcsq_m_u): Likewise.        (mve_vcmpeqq_m_n_): Likewise.        (mve_vcmpeqq_m_): Likewise.        (mve_vcmpgeq_m_n_s): Likewise.        (mve_vcmpgeq_m_s): Likewise.        (mve_vcmpgtq_m_n_s): Likewise.        (mve_vcmpgtq_m_s): Likewise.        (mve_vcmphiq_m_n_u): Likewise.        (mve_vcmphiq_m_u): Likewise.        (mve_vcmpleq_m_n_s): Likewise.        (mve_vcmpleq_m_s): Likewise.        (mve_vcmpltq_m_n_s): Likewise.        (mve_vcmpltq_m_s): Likewise.        (mve_vcmpneq_m_n_): Likewise.        (mve_vcmpneq_m_): Likewise.        (mve_vdupq_m_n_): Likewise.        (mve_vmaxaq_m_s): Likewise.        (mve_vmaxavq_p_s): Likewise.        (mve_vmaxvq_p_): Likewise.        (mve_vminaq_m_s): Likewise.        (mve_vminavq_p_s): Likewise.        (mve_vminvq_p_): Likewise.        (mve_vmladavq_p_): Likewise.        (mve_vmladavxq_p_s): Likewise.        (mve_vmlsdavq_p_s): Likewise.        (mve_vmlsdavxq_p_s): Likewise.        (mve_vmvnq_m_): Likewise.        (mve_vnegq_m_s): Likewise.        (mve_vqabsq_m_s): Likewise.        (mve_vqnegq_m_s): Likewise.        (mve_vqrshlq_m_n_): Likewise.        (mve_vqshlq_m_r_): Likewise.        (mve_vrev64q_m_): Likewise.        (mve_vrshlq_m_n_): Likewise.        (mve_vshlq_m_r_): Likewise.        (mve_vabsq_m_f): Likewise.        (mve_vaddlvaq_p_v4si): Likewise.        (mve_vcmpeqq_m_n_f): Likewise.        (mve_vcmpgeq_m_f): Likewise.        (mve_vcmpgeq_m_n_f): Likewise.        (mve_vcmpgtq_m_f): Likewise.        (mve_vcmpgtq_m_n_f): Likewise.        (mve_vcmpleq_m_f): Likewise.        (mve_vcmpleq_m_n_f): Likewise.        (mve_vcmpltq_m_f): Likewise.        (mve_vcmpltq_m_n_f): Likewise.        (mve_vcmpneq_m_f): Likewise.        (mve_vcmpneq_m_n_f): Likewise.        (mve_vcvtbq_m_f16_f32v8hf): Likewise.        (mve_vcvtbq_m_f32_f16v4sf): Likewise.        (mve_vcvttq_m_f16_f32v8hf): Likewise.        (mve_vcvttq_m_f32_f16v4sf): Likewise.        (mve_vdupq_m_n_f): Likewise.        (mve_vmaxnmaq_m_f): Likewise.        (mve_vmaxnmavq_p_f): Likewise.        (mve_vmaxnmvq_p_f): Likewise.        (mve_vminnmaq_m_f): Likewise.        (mve_vminnmavq_p_f): Likewise.        (mve_vminnmvq_p_f): Likewise.        (mve_vmlaldavq_p_): Likewise.        (mve_vmlaldavxq_p_s): Likewise.        (mve_vmlsldavq_p_s): Likewise.        (mve_vmlsldavxq_p_s): Likewise.        (mve_vmovlbq_m_): Likewise.        (mve_vmovltq_m_): Likewise.        (mve_vmovnbq_m_): Likewise.        (mve_vmovntq_m_): Likewise.        (mve_vmvnq_m_n_): Likewise.        (mve_vnegq_m_f): Likewise.        (mve_vorrq_m_n_): Likewise.        (mve_vqmovnbq_m_): Likewise.        (mve_vqmovntq_m_): Likewise.        (mve_vqmovunbq_m_s): Likewise.        (mve_vqmovuntq_m_s): Likewise.        (mve_vrev32q_m_fv8hf): Likewise.        (mve_vrev32q_m_): Likewise.        (mve_vrev64q_m_f): Likewise.        (mve_vrmlaldavhxq_p_sv4si): Likewise.        (mve_vrmlsldavhq_p_sv4si): Likewise.        (mve_vrmlsldavhxq_p_sv4si): Likewise.        (mve_vrndaq_m_f): Likewise.        (mve_vrndmq_m_f): Likewise.        (mve_vrndnq_m_f): Likewise.        (mve_vrndpq_m_f): Likewise.        (mve_vrndxq_m_f): Likewise.        (mve_vcvtmq_m_): Likewise.        (mve_vcvtpq_m_): Likewise.        (mve_vcvtnq_m_): Likewise.        (mve_vcvtq_m_n_from_f_): Likewise.        (mve_vrev16q_m_v16qi): Likewise.        (mve_vcvtq_m_from_f_): Likewise.        (mve_vrmlaldavhq_p_v4si): Likewise.        (mve_vabavq_p_): Likewise.        (mve_vqshluq_m_n_s): Likewise.        (mve_vshlq_m_): Likewise.        (mve_vsriq_m_n_): Likewise.        (mve_vsubq_m_): Likewise.        (mve_vcvtq_m_n_to_f_): Likewise.        (mve_vabdq_m_): Likewise.        (mve_vaddq_m_n_): Likewise.        (mve_vaddq_m_): Likewise.        (mve_vandq_m_): Likewise.        (mve_vbicq_m_): Likewise.        (mve_vbrsrq_m_n_): Likewise.        (mve_vcaddq_rot270_m_): Likewise.        (mve_vcaddq_rot90_m_): Likewise.        (mve_veorq_m_): Likewise.        (mve_vhaddq_m_n_): Likewise.        (mve_vhaddq_m_): Likewise.        (mve_vhsubq_m_n_): Likewise.        (mve_vhsubq_m_): Likewise.        (mve_vmaxq_m_): Likewise.        (mve_vminq_m_): Likewise.        (mve_vmladavaq_p_): Likewise.        (mve_vmlaq_m_n_): Likewise.        (mve_vmlasq_m_n_): Likewise.        (mve_vmulhq_m_): Likewise.        (mve_vmullbq_int_m_): Likewise.        (mve_vmulltq_int_m_): Likewise.        (mve_vmulq_m_n_): Likewise.        (mve_vmulq_m_): Likewise.        (mve_vornq_m_): Likewise.        (mve_vorrq_m_): Likewise.        (mve_vqaddq_m_n_): Likewise.        (mve_vqaddq_m_): Likewise.        (mve_vqdmlahq_m_n_s): Likewise.        (mve_vqdmlashq_m_n_s): Likewise.        (mve_vqrdmlahq_m_n_s): Likewise.        (mve_vqrdmlashq_m_n_s): Likewise.        (mve_vqrshlq_m_): Likewise.        (mve_vqshlq_m_n_): Likewise.        (mve_vqshlq_m_): Likewise.        (mve_vqsubq_m_n_): Likewise.        (mve_vqsubq_m_): Likewise.        (mve_vrhaddq_m_): Likewise.        (mve_vrmulhq_m_): Likewise.        (mve_vrshlq_m_): Likewise.        (mve_vrshrq_m_n_): Likewise.        (mve_vshlq_m_n_): Likewise.        (mve_vshrq_m_n_): Likewise.        (mve_vsliq_m_n_): Likewise.        (mve_vsubq_m_n_): Likewise.        (mve_vhcaddq_rot270_m_s): Likewise.        (mve_vhcaddq_rot90_m_s): Likewise.        (mve_vmladavaxq_p_s): Likewise.        (mve_vmlsdavaq_p_s): Likewise.        (mve_vmlsdavaxq_p_s): Likewise.        (mve_vqdmladhq_m_s): Likewise.        (mve_vqdmladhxq_m_s): Likewise.        (mve_vqdmlsdhq_m_s): Likewise.        (mve_vqdmlsdhxq_m_s): Likewise.        (mve_vqdmulhq_m_n_s): Likewise.        (mve_vqdmulhq_m_s): Likewise.        (mve_vqrdmladhq_m_s): Likewise.        (mve_vqrdmladhxq_m_s): Likewise.        (mve_vqrdmlsdhq_m_s): Likewise.        (mve_vqrdmlsdhxq_m_s): Likewise.        (mve_vqrdmulhq_m_n_s): Likewise.        (mve_vqrdmulhq_m_s): Likewise.        (mve_vmlaldavaq_p_): Likewise.        (mve_vmlaldavaxq_p_): Likewise.        (mve_vqrshrnbq_m_n_): Likewise.        (mve_vqrshrntq_m_n_): Likewise.        (mve_vqshrnbq_m_n_): Likewise.        (mve_vqshrntq_m_n_): Likewise.        (mve_vrmlaldavhaq_p_sv4si): Likewise.        (mve_vrshrnbq_m_n_): Likewise.        (mve_vrshrntq_m_n_): Likewise.        (mve_vshllbq_m_n_): Likewise.        (mve_vshlltq_m_n_): Likewise.        (mve_vshrnbq_m_n_): Likewise.        (mve_vshrntq_m_n_): Likewise.        (mve_vmlsldavaq_p_s): Likewise.        (mve_vmlsldavaxq_p_s): Likewise.        (mve_vmullbq_poly_m_p): Likewise.        (mve_vmulltq_poly_m_p): Likewise.        (mve_vqdmullbq_m_n_s): Likewise.        (mve_vqdmullbq_m_s): Likewise.        (mve_vqdmulltq_m_n_s): Likewise.        (mve_vqdmulltq_m_s): Likewise.        (mve_vqrshrunbq_m_n_s): Likewise.        (mve_vqrshruntq_m_n_s): Likewise.        (mve_vqshrunbq_m_n_s): Likewise.        (mve_vqshruntq_m_n_s): Likewise.        (mve_vrmlaldavhaq_p_uv4si): Likewise.        (mve_vrmlaldavhaxq_p_sv4si): Likewise.        (mve_vrmlsldavhaq_p_sv4si): Likewise.        (mve_vrmlsldavhaxq_p_sv4si): Likewise.        (mve_vabdq_m_f): Likewise.        (mve_vaddq_m_f): Likewise.        (mve_vaddq_m_n_f): Likewise.        (mve_vandq_m_f): Likewise.        (mve_vbicq_m_f): Likewise.        (mve_vbrsrq_m_n_f): Likewise.        (mve_vcaddq_rot270_m_f): Likewise.        (mve_vcaddq_rot90_m_f): Likewise.        (mve_vcmlaq_m_f): Likewise.        (mve_vcmlaq_rot180_m_f): Likewise.        (mve_vcmlaq_rot270_m_f): Likewise.        (mve_vcmlaq_rot90_m_f): Likewise.        (mve_vcmulq_m_f): Likewise.        (mve_vcmulq_rot180_m_f): Likewise.        (mve_vcmulq_rot270_m_f): Likewise.        (mve_vcmulq_rot90_m_f): Likewise.        (mve_veorq_m_f): Likewise.        (mve_vfmaq_m_f): Likewise.        (mve_vfmaq_m_n_f): Likewise.        (mve_vfmasq_m_n_f): Likewise.        (mve_vfmsq_m_f): Likewise.        (mve_vmaxnmq_m_f): Likewise.        (mve_vminnmq_m_f): Likewise.        (mve_vmulq_m_f): Likewise.        (mve_vmulq_m_n_f): Likewise.        (mve_vornq_m_f): Likewise.        (mve_vorrq_m_f): Likewise.        (mve_vsubq_m_f): Likewise.        (mve_vsubq_m_n_f): Likewise. (mve_vstrbq_scatter_offset_p__insn): Likewise.        (mve_vstrwq_scatter_base_p_v4si): Likewise.        (mve_vstrbq_p_): Likewise.        (mve_vldrbq_gather_offset_z_): Likewise.        (mve_vldrbq_z_): Likewise.        (mve_vldrwq_gather_base_z_v4si): Likewise.        (mve_vldrhq_gather_offset_z_): Likewise. (mve_vldrhq_gather_shifted_offset_z_): Likewise.        (mve_vldrhq_z_fv8hf): Likewise.        (mve_vldrhq_z_): Likewise.        (mve_vldrwq_z_fv4sf): Likewise.        (mve_vldrwq_z_v4si): Likewise.        (mve_vldrdq_gather_base_z_v2di): Likewise.        (mve_vldrdq_gather_offset_z_v2di): Likewise.        (mve_vldrdq_gather_shifted_offset_z_v2di): Likewise.        (mve_vldrhq_gather_offset_z_fv8hf): Likewise.        (mve_vldrhq_gather_shifted_offset_z_fv8hf): Likewise.        (mve_vldrwq_gather_base_z_fv4sf): Likewise.        (mve_vldrwq_gather_offset_z_fv4sf): Likewise.        (mve_vldrwq_gather_offset_z_v4si): Likewise.        (mve_vldrwq_gather_shifted_offset_z_fv4sf): Likewise.        (mve_vldrwq_gather_shifted_offset_z_v4si): Likewise.        (mve_vstrhq_p_fv8hf): Likewise.        (mve_vstrhq_p_): Likewise. (mve_vstrhq_scatter_offset_p__insn): Likewise. (mve_vstrhq_scatter_shifted_offset_p__insn): Likewise.        (mve_vstrwq_p_fv4sf): Likewise.        (mve_vstrwq_p_v4si): Likewise.        (mve_vstrdq_scatter_base_p_v2di): Likewise.        (mve_vstrdq_scatter_offset_p_v2di_insn): Likewise. (mve_vstrdq_scatter_shifted_offset_p_v2di_insn): Likewise.        (mve_vstrhq_scatter_offset_p_fv8hf_insn): Likewise.        (mve_vstrhq_scatter_shifted_offset_p_fv8hf_insn): Likewise.        (mve_vstrwq_scatter_base_p_fv4sf): Likewise.        (mve_vstrwq_scatter_offset_p_fv4sf_insn): Likewise.        (mve_vstrwq_scatter_offset_p_v4si_insn): Likewise.        (mve_vstrwq_scatter_shifted_offset_p_fv4sf_insn): Likewise. (mve_vstrwq_scatter_shifted_offset_p_v4si_insn): Likewise.        (mve_vidupq_m_wb_u_insn): Likewise.        (mve_vddupq_m_wb_u_insn): Likewise.        (mve_vdwdupq_m_wb_u_insn): Likewise.        (mve_viwdupq_m_wb_u_insn): Likewise.        (mve_vstrwq_scatter_base_wb_p_v4si): Likewise.        (mve_vstrwq_scatter_base_wb_p_fv4sf): Likewise.        (mve_vstrdq_scatter_base_wb_p_v2di): Likewise.        (mve_vldrwq_gather_base_wb_z_v4si_insn): Likewise.        (mve_vldrwq_gather_base_wb_z_fv4sf_insn): Likewise.        (mve_vldrdq_gather_base_wb_z_v2di_insn): Likewise.        (mve_vadciq_m_v4si): Likewise.        (mve_vadcq_m_v4si): Likewise.        (mve_vsbciq_m_v4si): Likewise.        (mve_vsbcq_m_v4si): Likewise.        (mve_vshlcq_m_): Likewise.        (arm_vcx1q_p_v16qi): Likewise.        (arm_vcx2q_p_v16qi): Likewise.        (arm_vcx3q_p_v16qi): Likewise. gcc/testsuite/ChangeLog:         * gcc.target/arm/dlstp-compile-asm.c: New test. #### Inline copy of patch ### diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md index 69bf343fb0ed601014979cfc1803abe84c87f179..e1d2e62593085accfcc111cf6fa5795e4520f213 100644 --- a/gcc/config/arm/arm.md +++ b/gcc/config/arm/arm.md @@ -123,6 +123,8 @@  ; and not all ARM insns do.  (define_attr "predicated" "yes,no" (const_string "no")) +(define_attr "mve_unpredicated_insn" "" (const_int 0)) +  ; LENGTH of an instruction (in bytes)  (define_attr "length" ""    (const_int 4)) diff --git a/gcc/config/arm/mve.md b/gcc/config/arm/mve.md index 62186f124da183fe1b1eb57a1aea1e8fff680a22..b1c8c1c569f31a6cb1bfdc16394047f02d6cddf4 100644 --- a/gcc/config/arm/mve.md +++ b/gcc/config/arm/mve.md @@ -142,7 +142,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vrintzt.f%# %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrndq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -818,7 +819,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vaddlvt.32 %Q0, %R0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vaddlvq_v4si")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -910,7 +912,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vaddvt.%#    %0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vaddvq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2560,7 +2563,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vbict.i%#    %q0, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vbicq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vcmpeqq_m_f]) @@ -2575,7 +2579,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmpt.f%#    eq, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpeqq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vcvtaq_m_u, vcvtaq_m_s]) @@ -2590,7 +2595,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT" "vpst\;vcvtat.%#.f%#\t%q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtaq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vcvtq_m_to_f_s, vcvtq_m_to_f_u]) @@ -2605,7 +2611,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT" "vpst\;vcvtt.f%#.%#  %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtq_to_f_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vqrshrnbq_n_u, vqrshrnbq_n_s]) @@ -2727,7 +2734,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vabst.s%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vabsq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2743,7 +2751,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vaddvat.%#    %0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vaddvaq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2759,7 +2768,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vclst.s%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vclsq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2775,7 +2785,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vclzt.i%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vclzq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2791,7 +2802,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.u%#    cs, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpcsq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2807,7 +2819,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.u%#    cs, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpcsq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2823,7 +2836,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.i%#    eq, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpeqq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2839,7 +2853,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.i%#    eq, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpeqq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2855,7 +2870,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.s%#    ge, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpgeq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2871,7 +2887,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.s%#    ge, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpgeq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2887,7 +2904,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.s%#    gt, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpgtq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2903,7 +2921,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.s%#    gt, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpgtq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2919,7 +2938,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.u%#    hi, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmphiq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2935,7 +2955,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.u%#    hi, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmphiq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2951,7 +2972,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.s%#    le, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpleq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2967,7 +2989,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.s%#    le, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpleq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2983,7 +3006,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.s%#    lt, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpltq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -2999,7 +3023,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.s%#    lt, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpltq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3015,7 +3040,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.i%#    ne, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpneq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3031,7 +3057,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcmpt.i%#    ne, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpneq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3047,7 +3074,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vdupt.%#    %q0, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vdupq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3063,7 +3091,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmaxat.s%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmaxaq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3079,7 +3108,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmaxavt.s%#    %0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmaxavq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3095,7 +3125,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmaxvt.%#    %0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmaxvq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3111,7 +3142,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vminat.s%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vminaq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3127,7 +3159,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vminavt.s%#    %0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vminavq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3143,7 +3176,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vminvt.%#\t%0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vminvq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3175,7 +3209,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmladavt.%#\t%0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmladavq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3191,7 +3226,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmladavxt.s%#\t%0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmladavxq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3239,7 +3275,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmlsdavt.s%#    %0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlsdavq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3255,7 +3292,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmlsdavxt.s%#    %0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlsdavxq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3271,7 +3309,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmvnt %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmvnq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3287,7 +3326,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vnegt.s%#\t%q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vnegq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3319,7 +3359,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqabst.s%#\t%q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqabsq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3367,7 +3408,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqnegt.s%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqnegq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3479,7 +3521,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqrshlt.%#    %q0, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrshlq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3495,7 +3538,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqshlt.%#\t%q0, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqshlq_r_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3511,7 +3555,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrev64t.%#\t%q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrev64q_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3527,7 +3572,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrshlt.%#\t%q0, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrshlq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3543,7 +3589,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vshlt.%#\t%q0, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vshlq_r_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3702,7 +3749,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vabst.f%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vabsq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3718,7 +3766,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vaddlvat.32 %Q0, %R0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vaddlvaq_v4si")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vcmlaq, vcmlaq_rot90, vcmlaq_rot180, vcmlaq_rot270]) @@ -3752,7 +3801,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmpt.f%#    eq, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpeqq_n_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3768,7 +3818,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmpt.f%#    ge, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpgeq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3784,7 +3835,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmpt.f%#    ge, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpgeq_n_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3800,7 +3852,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmpt.f%#    gt, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpgtq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3816,7 +3869,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmpt.f%#    gt, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpgtq_n_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3832,7 +3886,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmpt.f%#    le, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpleq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3848,7 +3903,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmpt.f%#    le, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpleq_n_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3864,7 +3920,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmpt.f%#    lt, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpltq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3880,7 +3937,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmpt.f%#    lt, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpltq_n_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3896,7 +3954,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmpt.f%#    ne, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpneq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3912,7 +3971,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmpt.f%#    ne, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpneq_n_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3928,7 +3988,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcvtbt.f16.f32 %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtbq_f16_f32v8hf")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3944,7 +4005,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcvtbt.f32.f16 %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtbq_f32_f16v4sf")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3960,7 +4022,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcvttt.f16.f32 %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvttq_f16_f32v8hf")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3976,7 +4039,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcvttt.f32.f16 %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvttq_f32_f16v4sf")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -3992,7 +4056,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vdupt.%#    %q0, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vdupq_n_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4071,7 +4136,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vmaxnmat.f%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmaxnmaq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vmaxnmavq_p_f]) @@ -4086,7 +4152,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vmaxnmavt.f%#    %0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmaxnmavq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4102,7 +4169,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vmaxnmvt.f%#    %0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmaxnmvq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vminnmaq_m_f]) @@ -4117,7 +4185,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vminnmat.f%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vminnmaq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4133,7 +4202,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vminnmavt.f%#    %0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vminnmavq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vminnmvq_p_f]) @@ -4148,7 +4218,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vminnmvt.f%#    %0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vminnmvq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4196,7 +4267,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmlaldavt.%# %Q0, %R0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlaldavq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4212,7 +4284,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmlaldavxt.s%#\t%Q0, %R0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlaldavxq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vmlsldavaq_s]) @@ -4259,7 +4332,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmlsldavt.s%# %Q0, %R0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlsldavq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4275,7 +4349,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmlsldavxt.s%# %Q0, %R0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlsldavxq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vmovlbq_m_u, vmovlbq_m_s]) @@ -4290,7 +4365,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmovlbt.%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmovlbq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vmovltq_m_u, vmovltq_m_s]) @@ -4305,7 +4381,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmovltt.%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmovltq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vmovnbq_m_u, vmovnbq_m_s]) @@ -4320,7 +4397,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmovnbt.i%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmovnbq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4336,7 +4414,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmovntt.i%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmovntq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4352,7 +4431,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmvnt.i%#    %q0, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmvnq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vnegq_m_f]) @@ -4367,7 +4447,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vnegt.f%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vnegq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4383,7 +4464,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vorrt.i%#    %q0, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vorrq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vpselq_f]) @@ -4414,7 +4496,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqmovnbt.%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqmovnbq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4430,7 +4513,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqmovntt.%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqmovntq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4446,7 +4530,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqmovunbt.s%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqmovunbq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4462,7 +4547,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqmovuntt.s%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqmovuntq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4574,7 +4660,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vrev32t.16 %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrev32q_fv8hf")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4590,7 +4677,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrev32t.%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrev32q_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4606,7 +4694,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vrev64t.%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrev64q_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4638,7 +4727,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrmlaldavhxt.s32 %Q0, %R0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrmlaldavhxq_sv4si")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4670,7 +4760,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrmlsldavht.s32 %Q0, %R0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrmlsldavhq_sv4si")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4686,7 +4777,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrmlsldavhxt.s32 %Q0, %R0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrmlsldavhxq_sv4si")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4702,7 +4794,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vrintat.f%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrndaq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4718,7 +4811,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vrintmt.f%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrndmq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4734,7 +4828,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vrintnt.f%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrndnq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4750,7 +4845,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vrintpt.f%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrndpq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4766,7 +4862,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vrintxt.f%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrndxq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4846,7 +4943,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT" "vpst\;vcvtmt.%#.f%#\t%q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtmq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4862,7 +4960,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT" "vpst\;vcvtpt.%#.f%#\t%q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtpq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4878,7 +4977,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT" "vpst\;vcvtnt.%#.f%#\t%q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtnq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4895,7 +4995,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT" "vpst\;vcvtt.%#.f%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtq_n_from_f_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4911,7 +5012,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrev16t.8 %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrev16q_v16qi")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4927,7 +5029,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT" "vpst\;vcvtt.%#.f%#\t%q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtq_from_f_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4943,7 +5046,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrmlaldavht.32 %Q0, %R0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrmlaldavhq_v4si")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -4976,7 +5080,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vabavt.%#\t%0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vabavq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -4993,7 +5098,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\n\tvqshlut.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqshluq_n_s")) +  (set_attr "type" "mve_move")])  ;;  ;; [vshlq_m_s, vshlq_m_u]) @@ -5009,7 +5115,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vshlt.%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vshlq_")) +  (set_attr "type" "mve_move")])  ;;  ;; [vsriq_m_n_s, vsriq_m_n_u]) @@ -5025,7 +5132,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vsrit.%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vsriq_n_")) +  (set_attr "type" "mve_move")])  ;;  ;; [vsubq_m_u, vsubq_m_s]) @@ -5041,7 +5149,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vsubt.i%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vsubq_")) +  (set_attr "type" "mve_move")])  ;;  ;; [vcvtq_m_n_to_f_u, vcvtq_m_n_to_f_s]) @@ -5057,7 +5166,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT" "vpst\;vcvtt.f%#.%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtq_n_to_f_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vabdq_m_s, vabdq_m_u]) @@ -5073,7 +5183,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vabdt.%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vabdq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5090,7 +5201,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vaddt.i%#    %q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vaddq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5107,7 +5219,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vaddt.i%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vaddq")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5124,7 +5237,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vandt %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vandq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5141,7 +5255,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vbict %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vbicq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5158,7 +5273,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vbrsrt.%#    %q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vbrsrq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5175,7 +5291,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcaddt.i%#    %q0, %q2, %q3, #270" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcaddq_rot270")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5192,7 +5309,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vcaddt.i%#    %q0, %q2, %q3, #90" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcaddq_rot90")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5209,7 +5327,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;veort %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_veorq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5226,7 +5345,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vhaddt.%#    %q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vhaddq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5243,7 +5363,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vhaddt.%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vhaddq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5260,7 +5381,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vhsubt.%#    %q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vhsubq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5277,7 +5399,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vhsubt.%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vhsubq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5294,7 +5417,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmaxt.%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmaxq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5311,7 +5435,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmint.%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vminq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5328,7 +5453,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmladavat.%#    %0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmladavaq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5345,7 +5471,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmlat.%#    %q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlaq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5362,7 +5489,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmlast.%#    %q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlasq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5379,7 +5507,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmulht.%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmulhq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5396,7 +5525,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmullbt.%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmullbq_int_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5413,7 +5543,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmulltt.%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmulltq_int_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5430,7 +5561,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmult.i%#    %q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmulq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5447,7 +5579,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmult.i%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmulq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5464,7 +5597,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vornt %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vornq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5481,7 +5615,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vorrt %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vorrq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5498,7 +5633,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqaddt.%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqaddq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5515,7 +5651,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqaddt.%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqaddq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5532,7 +5669,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqdmlaht.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmlahq_n_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5549,7 +5687,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqdmlasht.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmlashq_n_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5566,7 +5705,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqrdmlaht.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrdmlahq_n_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5583,7 +5723,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqrdmlasht.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrdmlashq_n_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5600,7 +5741,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqrshlt.%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrshlq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5617,7 +5759,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqshlt.%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqshlq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5634,7 +5777,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqshlt.%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqshlq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5651,7 +5795,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqsubt.%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqsubq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5668,7 +5813,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqsubt.%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqsubq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5685,7 +5831,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrhaddt.%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrhaddq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5702,7 +5849,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrmulht.%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrmulhq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5719,7 +5867,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrshlt.%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrshlq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5736,7 +5885,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrshrt.%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrshrq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5753,7 +5903,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vshlt.%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vshlq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5770,7 +5921,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vshrt.%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vshrq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5787,7 +5939,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vslit.%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vsliq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5804,7 +5957,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vsubt.i%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vsubq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5821,7 +5975,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vhcaddt.s%#\t%q0, %q2, %q3, #270" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vhcaddq_rot270_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5838,7 +5993,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vhcaddt.s%#\t%q0, %q2, %q3, #90" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vhcaddq_rot90_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5855,7 +6011,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmladavaxt.s%#\t%0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmladavaxq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5872,7 +6029,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmlsdavat.s%#\t%0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlsdavaq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5889,7 +6047,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmlsdavaxt.s%#\t%0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlsdavaxq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5906,7 +6065,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqdmladht.s%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmladhq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5923,7 +6083,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqdmladhxt.s%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmladhxq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5940,7 +6101,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqdmlsdht.s%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmlsdhq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5957,7 +6119,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqdmlsdhxt.s%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmlsdhxq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5974,7 +6137,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqdmulht.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmulhq_n_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -5991,7 +6155,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqdmulht.s%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmulhq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6008,7 +6173,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqrdmladht.s%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrdmladhq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6025,7 +6191,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqrdmladhxt.s%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrdmladhxq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6042,7 +6209,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqrdmlsdht.s%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrdmlsdhq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6059,7 +6227,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqrdmlsdhxt.s%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrdmlsdhxq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6076,7 +6245,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqrdmulht.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrdmulhq_n_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6093,7 +6263,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqrdmulht.s%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrdmulhq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6110,7 +6281,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmlaldavat.%#    %Q0, %R0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlaldavaq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6127,7 +6299,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmlaldavaxt.%# %Q0, %R0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlaldavaxq_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6144,7 +6317,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqrshrnbt.%#    %q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrshrnbq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6161,7 +6335,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqrshrntt.%#    %q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrshrntq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6178,7 +6353,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\n\tvqshrnbt.%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqshrnbq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6195,7 +6371,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqshrntt.%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqshrntq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6212,7 +6389,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrmlaldavhat.s32\t%Q0, %R0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrmlaldavhaq_sv4si")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6229,7 +6407,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrshrnbt.i%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrshrnbq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6246,7 +6425,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrshrntt.i%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrshrntq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6263,7 +6443,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vshllbt.%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vshllbq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6280,7 +6461,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vshlltt.%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vshlltq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6297,7 +6479,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vshrnbt.i%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vshrnbq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6314,7 +6497,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vshrntt.i%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vshrntq_n_")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6331,7 +6515,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmlsldavat.s%#\t%Q0, %R0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlsldavaq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6348,7 +6533,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmlsldavaxt.s%#\t%Q0, %R0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlsldavaxq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6365,7 +6551,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmullbt.p%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmullbq_poly_p")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6382,7 +6569,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmulltt.p%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmulltq_poly_p")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6399,7 +6587,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqdmullbt.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmullbq_n_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6416,7 +6605,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqdmullbt.s%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmullbq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6433,7 +6623,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqdmulltt.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmulltq_n_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6450,7 +6641,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqdmulltt.s%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmulltq_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6467,7 +6659,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqrshrunbt.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrshrunbq_n_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6484,7 +6677,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqrshruntt.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrshruntq_n_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6501,7 +6695,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqshrunbt.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqshrunbq_n_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6518,7 +6713,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vqshruntt.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqshruntq_n_s")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6535,7 +6731,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrmlaldavhat.u32\t%Q0, %R0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrmlaldavhaq_uv4si")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6552,7 +6749,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrmlaldavhaxt.s32\t%Q0, %R0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrmlaldavhaxq_sv4si")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6569,7 +6767,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrmlsldavhat.s32\t%Q0, %R0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrmlsldavhaq_sv4si")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6586,7 +6785,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vrmlsldavhaxt.s32\t%Q0, %R0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrmlsldavhaxq_sv4si")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;;  ;; [vabdq_m_f]) @@ -6602,7 +6802,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vabdt.f%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vabdq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6619,7 +6820,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vaddt.f%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vaddq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6636,7 +6838,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vaddt.f%#    %q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vaddq_n_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6653,7 +6856,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vandt %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vandq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6670,7 +6874,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vbict %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vbicq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6687,7 +6892,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vbrsrt.%#    %q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vbrsrq_n_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6704,7 +6910,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcaddt.f%#    %q0, %q2, %q3, #270" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcaddq_rot270")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6721,7 +6928,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcaddt.f%#    %q0, %q2, %q3, #90" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcaddq_rot90")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6738,7 +6946,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmlat.f%#    %q0, %q2, %q3, #0" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmlaq")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6755,7 +6964,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmlat.f%#    %q0, %q2, %q3, #180" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmlaq_rot180")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6772,7 +6982,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmlat.f%#    %q0, %q2, %q3, #270" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmlaq_rot270")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6789,7 +7000,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmlat.f%#    %q0, %q2, %q3, #90" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmlaq_rot90")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6806,7 +7018,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmult.f%#    %q0, %q2, %q3, #0" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmulq")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6823,7 +7036,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmult.f%#    %q0, %q2, %q3, #180" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmulq_rot180")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6840,7 +7054,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmult.f%#    %q0, %q2, %q3, #270" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmulq_rot270")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6857,7 +7072,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vcmult.f%#    %q0, %q2, %q3, #90" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmulq_rot90")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6874,7 +7090,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;veort %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_veorq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6891,7 +7108,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vfmat.f%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vfmaq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6908,7 +7126,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vfmat.f%#    %q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vfmaq_n_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6925,7 +7144,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vfmast.f%#    %q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vfmasq_n_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6942,7 +7162,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vfmst.f%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vfmsq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6959,7 +7180,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vmaxnmt.f%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmaxnmq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6976,7 +7198,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vminnmt.f%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vminnmq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -6993,7 +7216,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vmult.f%#    %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmulq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -7010,7 +7234,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vmult.f%#    %q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmulq_n_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -7027,7 +7252,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vornt %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vornq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -7044,7 +7270,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vorrt %q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vorrq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -7061,7 +7288,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vsubt.f%#\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vsubq_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -7078,7 +7306,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vsubt.f%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vsubq_n_f")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -7245,7 +7474,8 @@        VSTRBSOQ))]    "TARGET_HAVE_MVE"    "vpst\;vstrbt.\t%q2, [%0, %q1]" -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrbq_scatter_offset__insn")) +  (set_attr "length" "8")])  ;;  ;; [vstrwq_scatter_base_p_s vstrwq_scatter_base_p_u] @@ -7268,7 +7498,8 @@     output_asm_insn ("vpst\n\tvstrwt.u32\t%q2, [%q0, %1]",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_scatter_base_v4si")) +  (set_attr "length" "8")])  ;;  ;; [vstrbq_p_s vstrbq_p_u] @@ -7288,7 +7519,8 @@     output_asm_insn ("vpst\;vstrbt.\t%q1, %E0",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrbq_")) +  (set_attr "length" "8")])  ;;  ;; [vldrbq_gather_offset_z_s vldrbq_gather_offset_z_u] @@ -7313,7 +7545,8 @@       output_asm_insn ("vpst\n\tvldrbt.\t%q0, [%m1, %q2]",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrbq_gather_offset_")) +  (set_attr "length" "8")])  ;;  ;; [vldrbq_z_s vldrbq_z_u] @@ -7336,7 +7569,8 @@       output_asm_insn ("vpst\;vldrbt.\t%q0, %E1",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrbq_")) +  (set_attr "length" "8")])  ;;  ;; [vldrwq_gather_base_z_s vldrwq_gather_base_z_u] @@ -7357,7 +7591,8 @@     output_asm_insn ("vpst\n\tvldrwt.u32\t%q0, [%q1, %2]",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_base_v4si")) +  (set_attr "length" "8")])  ;;  ;; [vldrhq_f] @@ -7424,7 +7659,8 @@       output_asm_insn ("vpst\n\tvldrht.\t%q0, [%m1, %q2]",ops);     return "";  } - [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrhq_gather_offset_")) +  (set_attr "length" "8")])  ;;  ;; [vldrhq_gather_shifted_offset_s vldrhq_gather_shifted_offset_u] @@ -7472,7 +7708,8 @@       output_asm_insn ("vpst\n\tvldrht.\t%q0, [%m1, %q2, uxtw #1]",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrhq_gather_shifted_offset_")) +  (set_attr "length" "8")])  ;;  ;; [vldrhq_s, vldrhq_u] @@ -7514,7 +7751,8 @@     output_asm_insn ("vpst\;vldrht.16\t%q0, %E1",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrhq_fv8hf")) +  (set_attr "length" "8")])  ;;  ;; [vldrhq_z_s vldrhq_z_u] @@ -7537,7 +7775,8 @@       output_asm_insn ("vpst\;vldrht.\t%q0, %E1",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrhq_")) +  (set_attr "length" "8")])  ;;  ;; [vldrwq_f] @@ -7595,7 +7834,8 @@     output_asm_insn ("vpst\;vldrwt.32\t%q0, %E1",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_fv4sf")) +  (set_attr "length" "8")])  ;;  ;; [vldrwq_z_s vldrwq_z_u] @@ -7615,7 +7855,8 @@     output_asm_insn ("vpst\;vldrwt.32\t%q0, %E1",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_v4si")) +  (set_attr "length" "8")])  (define_expand "mve_vld1q_f"    [(match_operand:MVE_0 0 "s_register_operand") @@ -7676,7 +7917,8 @@     output_asm_insn ("vpst\n\tvldrdt.u64\t%q0, [%q1, %2]",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrdq_gather_base_v2di")) +  (set_attr "length" "8")])  ;;  ;; [vldrdq_gather_offset_s vldrdq_gather_offset_u] @@ -7717,7 +7959,8 @@    output_asm_insn ("vpst\n\tvldrdt.u64\t%q0, [%m1, %q2]",ops);    return "";  } - [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrdq_gather_offset_v2di")) +  (set_attr "length" "8")])  ;;  ;; [vldrdq_gather_shifted_offset_s vldrdq_gather_shifted_offset_u] @@ -7758,7 +8001,8 @@     output_asm_insn ("vpst\n\tvldrdt.u64\t%q0, [%m1, %q2, uxtw #3]",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrdq_gather_shifted_offset_v2di")) +  (set_attr "length" "8")])  ;;  ;; [vldrhq_gather_offset_f] @@ -7800,7 +8044,8 @@     output_asm_insn ("vpst\n\tvldrht.f16\t%q0, [%m1, %q2]",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrhq_gather_offset_fv8hf")) +  (set_attr "length" "8")])  ;;  ;; [vldrhq_gather_shifted_offset_f] @@ -7842,7 +8087,8 @@     output_asm_insn ("vpst\n\tvldrht.f16\t%q0, [%m1, %q2, uxtw #1]",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrhq_gather_shifted_offset_fv8hf")) +  (set_attr "length" "8")])  ;;  ;; [vldrwq_gather_base_f] @@ -7883,7 +8129,8 @@     output_asm_insn ("vpst\n\tvldrwt.u32\t%q0, [%q1, %2]",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_base_fv4sf")) +  (set_attr "length" "8")])  ;;  ;; [vldrwq_gather_offset_f] @@ -7945,7 +8192,8 @@     output_asm_insn ("vpst\n\tvldrwt.u32\t%q0, [%m1, %q2]",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_offset_fv4sf")) +  (set_attr "length" "8")])  ;;  ;; [vldrwq_gather_offset_z_s vldrwq_gather_offset_z_u] @@ -7967,7 +8215,8 @@     output_asm_insn ("vpst\n\tvldrwt.u32\t%q0, [%m1, %q2]",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_offset_v4si")) +  (set_attr "length" "8")])  ;;  ;; [vldrwq_gather_shifted_offset_f] @@ -8029,7 +8278,8 @@     output_asm_insn ("vpst\n\tvldrwt.u32\t%q0, [%m1, %q2, uxtw #2]",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_shifted_offset_fv4sf")) +  (set_attr "length" "8")])  ;;  ;; [vldrwq_gather_shifted_offset_z_s vldrwq_gather_shifted_offset_z_u] @@ -8051,7 +8301,8 @@     output_asm_insn ("vpst\n\tvldrwt.u32\t%q0, [%m1, %q2, uxtw #2]",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_shifted_offset_v4si")) +  (set_attr "length" "8")])  ;;  ;; [vstrhq_f] @@ -8090,7 +8341,8 @@     output_asm_insn ("vpst\;vstrht.16\t%q1, %E0",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrhq_fv8hf")) +  (set_attr "length" "8")])  ;;  ;; [vstrhq_p_s vstrhq_p_u] @@ -8110,7 +8362,8 @@     output_asm_insn ("vpst\;vstrht.\t%q1, %E0",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrhq_")) +  (set_attr "length" "8")])  ;;  ;; [vstrhq_scatter_offset_p_s vstrhq_scatter_offset_p_u] @@ -8142,7 +8395,8 @@        VSTRHSOQ))]    "TARGET_HAVE_MVE"    "vpst\;vstrht.\t%q2, [%0, %q1]" -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrhq_scatter_offset__insn")) +  (set_attr "length" "8")])  ;;  ;; [vstrhq_scatter_offset_s vstrhq_scatter_offset_u] @@ -8202,7 +8456,8 @@        VSTRHSSOQ))]    "TARGET_HAVE_MVE"    "vpst\;vstrht.\t%q2, [%0, %q1, uxtw #1]" -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrhq_scatter_shifted_offset__insn")) +  (set_attr "length" "8")])  ;;  ;; [vstrhq_scatter_shifted_offset_s vstrhq_scatter_shifted_offset_u] @@ -8289,7 +8544,8 @@     output_asm_insn ("vpst\;vstrwt.32\t%q1, %E0",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_fv4sf")) +  (set_attr "length" "8")])  ;;  ;; [vstrwq_p_s vstrwq_p_u] @@ -8309,7 +8565,8 @@     output_asm_insn ("vpst\;vstrwt.32\t%q1, %E0",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_v4si")) +  (set_attr "length" "8")])  ;;  ;; [vstrwq_s vstrwq_u] @@ -8371,7 +8628,8 @@     output_asm_insn ("vpst\;\tvstrdt.u64\t%q2, [%q0, %1]",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrdq_scatter_base_v2di")) +  (set_attr "length" "8")])  ;;  ;; [vstrdq_scatter_base_s vstrdq_scatter_base_u] @@ -8424,7 +8682,8 @@        VSTRDSOQ))]    "TARGET_HAVE_MVE"    "vpst\;vstrdt.64\t%q2, [%0, %q1]" -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrdq_scatter_offset_v2di_insn")) +  (set_attr "length" "8")])  ;;  ;; [vstrdq_scatter_offset_s vstrdq_scatter_offset_u] @@ -8484,7 +8743,8 @@        VSTRDSSOQ))]    "TARGET_HAVE_MVE"    "vpst\;vstrdt.64\t%q2, [%0, %q1, UXTW #3]" -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrdq_scatter_shifted_offset_v2di_insn")) +  (set_attr "length" "8")])  ;;  ;; [vstrdq_scatter_shifted_offset_s vstrdq_scatter_shifted_offset_u] @@ -8572,7 +8832,8 @@        VSTRHQSO_F))]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vstrht.16\t%q2, [%0, %q1]" -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrhq_scatter_offset_fv8hf_insn")) +  (set_attr "length" "8")])  ;;  ;; [vstrhq_scatter_shifted_offset_f] @@ -8632,7 +8893,8 @@        VSTRHQSSO_F))]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vstrht.16\t%q2, [%0, %q1, uxtw #1]" -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrhq_scatter_shifted_offset_fv8hf_insn")) +  (set_attr "length" "8")])  ;;  ;; [vstrwq_scatter_base_f] @@ -8677,7 +8939,8 @@     output_asm_insn ("vpst\n\tvstrwt.u32\t%q2, [%q0, %1]",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_scatter_base_fv4sf")) +  (set_attr "length" "8")])  ;;  ;; [vstrwq_scatter_offset_f] @@ -8736,7 +8999,8 @@        VSTRWQSO_F))]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vstrwt.32\t%q2, [%0, %q1]" -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_scatter_offset_fv4sf_insn")) +  (set_attr "length" "8")])  ;;  ;; [vstrwq_scatter_offset_s vstrwq_scatter_offset_u] @@ -8767,7 +9031,8 @@        VSTRWSOQ))]    "TARGET_HAVE_MVE"    "vpst\;vstrwt.32\t%q2, [%0, %q1]" -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_scatter_offset_v4si_insn")) +  (set_attr "length" "8")])  ;;  ;; [vstrwq_scatter_offset_s vstrwq_scatter_offset_u] @@ -8855,7 +9120,8 @@        VSTRWQSSO_F))]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vstrwt.32\t%q2, [%0, %q1, uxtw #2]" -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_scatter_shifted_offset_fv4sf_insn")) +  (set_attr "length" "8")])  ;;  ;; [vstrwq_scatter_shifted_offset_p_s vstrwq_scatter_shifted_offset_p_u] @@ -8887,7 +9153,8 @@        VSTRWSSOQ))]    "TARGET_HAVE_MVE"    "vpst\;vstrwt.32\t%q2, [%0, %q1, uxtw #2]" -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_scatter_shifted_offset_v4si_insn")) +  (set_attr "length" "8")])  ;;  ;; [vstrwq_scatter_shifted_offset_s vstrwq_scatter_shifted_offset_u] @@ -9012,7 +9279,8 @@          (match_operand:SI 6 "immediate_operand" "i")))]   "TARGET_HAVE_MVE"   "vpst\;\tvidupt.u%#\t%q0, %2, %4" - [(set_attr "length""8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vidupq_u_insn")) +  (set_attr "length""8")])  ;;  ;; [vddupq_n_u]) @@ -9080,7 +9348,8 @@           (match_operand:SI 6 "immediate_operand" "i")))]   "TARGET_HAVE_MVE"   "vpst\;\tvddupt.u%#\t%q0, %2, %4" - [(set_attr "length""8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vddupq_u_insn")) +  (set_attr "length""8")])  ;;  ;; [vdwdupq_n_u]) @@ -9196,7 +9465,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;\tvdwdupt.u%#\t%q2, %3, %R4, %5" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vdwdupq_wb_u_insn")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -9313,7 +9583,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;\tviwdupt.u%#\t%q2, %3, %R4, %5" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_viwdupq_wb_u_insn")) +  (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -9365,7 +9636,8 @@     output_asm_insn ("vpst\;\tvstrwt.u32\t%q2, [%q0, %1]!",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_scatter_base_wb_v4si")) +  (set_attr "length" "8")])  ;;  ;; [vstrwq_scatter_base_wb_f] @@ -9416,7 +9688,8 @@     output_asm_insn ("vpst\;\tvstrwt.u32\t%q2, [%q0, %1]!",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_scatter_base_wb_fv4sf")) +  (set_attr "length" "8")])  ;;  ;; [vstrdq_scatter_base_wb_s vstrdq_scatter_base_wb_u] @@ -9467,7 +9740,8 @@     output_asm_insn ("vpst;vstrdt.u64\t%q2, [%q0, %1]!",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrdq_scatter_base_wb_v2di")) +  (set_attr "length" "8")])  (define_expand "mve_vldrwq_gather_base_wb_v4si"    [(match_operand:V4SI 0 "s_register_operand") @@ -9575,7 +9849,8 @@     output_asm_insn ("vpst\;vldrwt.u32\t%q0, [%q1, %2]!",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_base_wb_v4si_insn")) +  (set_attr "length" "8")])  (define_expand "mve_vldrwq_gather_base_wb_fv4sf"    [(match_operand:V4SI 0 "s_register_operand") @@ -9684,7 +9959,8 @@     output_asm_insn ("vpst\;vldrwt.u32\t%q0, [%q1, %2]!",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_base_wb_fv4sf_insn")) +  (set_attr "length" "8")])  (define_expand "mve_vldrdq_gather_base_wb_v2di"    [(match_operand:V2DI 0 "s_register_operand") @@ -9809,7 +10085,8 @@     output_asm_insn ("vpst\;vldrdt.u64\t%q0, [%q1, %2]!",ops);     return "";  } -  [(set_attr "length" "8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrdq_gather_base_wb_v2di_insn")) +  (set_attr "length" "8")])  ;;  ;; [vadciq_m_s, vadciq_m_u])  ;; @@ -9826,7 +10103,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vadcit.i32\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vadciq_v4si")) +  (set_attr "type" "mve_move")     (set_attr "length" "8")])  ;; @@ -9862,7 +10140,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vadct.i32\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vadcq_v4si")) +  (set_attr "type" "mve_move")     (set_attr "length" "8")])  ;; @@ -9899,7 +10178,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vsbcit.i32\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vsbciq_v4si")) +  (set_attr "type" "mve_move")     (set_attr "length" "8")])  ;; @@ -9935,7 +10215,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vsbct.i32\t%q0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vsbcq_v4si")) +  (set_attr "type" "mve_move")     (set_attr "length" "8")])  ;; @@ -10352,7 +10633,8 @@   ]   "TARGET_HAVE_MVE"   "vpst\;vshlct\t%q0, %1, %4" - [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vshlcq_")) +  (set_attr "type" "mve_move")    (set_attr "length" "8")])  ;; CDE instructions on MVE registers. @@ -10435,7 +10717,8 @@       CDE_VCX))]    "TARGET_CDE && TARGET_HAVE_MVE"    "vpst\;vcx1t\\tp%c1, %q0, #%c3" -  [(set_attr "type" "coproc") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_arm_vcx1qv16qi")) +  (set_attr "type" "coproc")     (set_attr "length" "8")]  ) @@ -10449,7 +10732,8 @@       CDE_VCX))]    "TARGET_CDE && TARGET_HAVE_MVE"    "vpst\;vcx2t\\tp%c1, %q0, %q3, #%c4" -  [(set_attr "type" "coproc") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_arm_vcx2qv16qi")) +  (set_attr "type" "coproc")     (set_attr "length" "8")]  ) @@ -10464,7 +10748,8 @@       CDE_VCX))]    "TARGET_CDE && TARGET_HAVE_MVE"    "vpst\;vcx3t\\tp%c1, %q0, %q3, %q4, #%c5" -  [(set_attr "type" "coproc") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_arm_vcx3qv16qi")) +  (set_attr "type" "coproc")     (set_attr "length" "8")]  ) diff --git a/gcc/testsuite/gcc.target/arm/dlstp-compile-asm.c b/gcc/testsuite/gcc.target/arm/dlstp-compile-asm.c new file mode 100644 index 0000000000000000000000000000000000000000..ec6ee774cbda6604c4c24b57cd4d5d3bd08e07cd --- /dev/null +++ b/gcc/testsuite/gcc.target/arm/dlstp-compile-asm.c @@ -0,0 +1,82 @@ +/* { dg-do compile { target { arm*-*-* } } } */ +/* { dg-require-effective-target arm_v8_1m_mve_ok } */ +/* { dg-skip-if "avoid conflicting multilib options" { *-*-* } { "-marm" "-mcpu=*" } } */ +/* { dg-options "-march=armv8.1-m.main+fp.dp+mve.fp -O3" } */ + +#include + +#define IMM 5 + +#define TEST_COMPILE_IN_DLSTP_TERNARY(BITS, LANES, LDRSTRYTPE, TYPE, SIGN, NAME, PRED)                \ +void test_##NAME##PRED##_##SIGN##BITS (TYPE##BITS##_t *a, TYPE##BITS##_t *b,  TYPE##BITS##_t *c, int n)    \ +{                                            \ +  while (n > 0)                                        \ +    {                                            \ +      mve_pred16_t p = vctp##BITS##q (n); \ +      TYPE##BITS##x##LANES##_t va = vldr##LDRSTRYTPE##q_z_##SIGN##BITS (a, p);        \ +      TYPE##BITS##x##LANES##_t vb = vldr##LDRSTRYTPE##q_z_##SIGN##BITS (b, p);        \ +      TYPE##BITS##x##LANES##_t vc = NAME##PRED##_##SIGN##BITS (va, vb, p);        \ +      vstr##LDRSTRYTPE##q_p_##SIGN##BITS (c, vc, p);         \ +      c += LANES;                                    \ +      a += LANES;                                    \ +      b += LANES;                                    \ +      n -= LANES;                                    \ +    }                                            \ +} + +#define TEST_COMPILE_IN_DLSTP_SIGNED_UNSIGNED_TERNARY(BITS, LANES, LDRSTRYTPE, NAME, PRED)    \ +TEST_COMPILE_IN_DLSTP_TERNARY (BITS, LANES, LDRSTRYTPE, int, s, NAME, PRED)            \ +TEST_COMPILE_IN_DLSTP_TERNARY (BITS, LANES, LDRSTRYTPE, uint, u, NAME, PRED) + +#define TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY(NAME, PRED)            \ +TEST_COMPILE_IN_DLSTP_SIGNED_UNSIGNED_TERNARY (8, 16, b, NAME, PRED)                \ +TEST_COMPILE_IN_DLSTP_SIGNED_UNSIGNED_TERNARY (16, 8, h, NAME, PRED)                \ +TEST_COMPILE_IN_DLSTP_SIGNED_UNSIGNED_TERNARY (32, 4, w, NAME, PRED) + + +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY (vaddq, _x) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY (vorrq, _x) + + +#define TEST_COMPILE_IN_DLSTP_TERNARY_N(BITS, LANES, LDRSTRYTPE, TYPE, SIGN, NAME, PRED)    \ +void test_##NAME##PRED##_n_##SIGN##BITS (TYPE##BITS##_t *a, TYPE##BITS##_t *c, int n)    \ +{                                            \ +  while (n > 0)                                        \ +    {                                            \ +      mve_pred16_t p = vctp##BITS##q (n); \ +      TYPE##BITS##x##LANES##_t va = vldr##LDRSTRYTPE##q_z_##SIGN##BITS (a, p);        \ +      TYPE##BITS##x##LANES##_t vc = NAME##PRED##_n_##SIGN##BITS (va, IMM, p);        \ +      vstr##LDRSTRYTPE##q_p_##SIGN##BITS (c, vc, p);         \ +      c += LANES;                                    \ +      a += LANES;                                    \ +      n -= LANES;                                    \ +    }                                            \ +} + +#define TEST_COMPILE_IN_DLSTP_SIGNED_UNSIGNED_TERNARY_N(BITS, LANES, LDRSTRYTPE, NAME, PRED)    \ +TEST_COMPILE_IN_DLSTP_TERNARY_N (BITS, LANES, LDRSTRYTPE, int, s, NAME, PRED)            \ +TEST_COMPILE_IN_DLSTP_TERNARY_N (BITS, LANES, LDRSTRYTPE, uint, u, NAME, PRED) + +#define TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_N(NAME, PRED)            \ +TEST_COMPILE_IN_DLSTP_SIGNED_UNSIGNED_TERNARY_N (8, 16, b, NAME, PRED)                \ +TEST_COMPILE_IN_DLSTP_SIGNED_UNSIGNED_TERNARY_N (16, 8, h, NAME, PRED)                \ +TEST_COMPILE_IN_DLSTP_SIGNED_UNSIGNED_TERNARY_N (32, 4, w, NAME, PRED) + +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_N (vaddq, _x) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_N (vmulq, _x) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_N (vsubq, _x) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_N (vhaddq, _x) + + +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_N (vbrsrq, _x) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_N (vshlq, _x) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_N (vshrq, _x) + + +/* The final number of DLSTPs currently is calculated by the number of +  `TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY.*` macros * 6.  */ +/* { dg-final { scan-assembler-times {\tdlstp} 54 } } */ +/* { dg-final { scan-assembler-times {\tletp} 54 } } */ +/* { dg-final { scan-assembler-not "\tvctp\t" } } */ +/* { dg-final { scan-assembler-not "\tvpst\t" } } */ +/* { dg-final { scan-assembler-not "P0" } } */ \ No newline at end of file --------------4o9CNLQ3tQRieHhby4cdQPl4 Content-Type: text/x-patch; charset=UTF-8; name="rb16364.patch" Content-Disposition: attachment; filename="rb16364.patch" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2djYy9jb25maWcvYXJtL2FybS5tZCBiL2djYy9jb25maWcvYXJtL2FybS5t ZAppbmRleCA2OWJmMzQzZmIwZWQ2MDEwMTQ5NzljZmMxODAzYWJlODRjODdmMTc5Li5lMWQyZTYy NTkzMDg1YWNjZmNjMTExY2Y2ZmE1Nzk1ZTQ1MjBmMjEzIDEwMDY0NAotLS0gYS9nY2MvY29uZmln L2FybS9hcm0ubWQKKysrIGIvZ2NjL2NvbmZpZy9hcm0vYXJtLm1kCkBAIC0xMjMsNiArMTIzLDgg QEAKIDsgYW5kIG5vdCBhbGwgQVJNIGluc25zIGRvLgogKGRlZmluZV9hdHRyICJwcmVkaWNhdGVk IiAieWVzLG5vIiAoY29uc3Rfc3RyaW5nICJubyIpKQogCisoZGVmaW5lX2F0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIgIiIgKGNvbnN0X2ludCAwKSkKKwogOyBMRU5HVEggb2YgYW4gaW5zdHJ1 Y3Rpb24gKGluIGJ5dGVzKQogKGRlZmluZV9hdHRyICJsZW5ndGgiICIiCiAgIChjb25zdF9pbnQg NCkpCmRpZmYgLS1naXQgYS9nY2MvY29uZmlnL2FybS9tdmUubWQgYi9nY2MvY29uZmlnL2FybS9t dmUubWQKaW5kZXggNjIxODZmMTI0ZGExODNmZTFiMWViNTdhMWFlYTFlOGZmZjY4MGEyMi4uYjFj OGMxYzU2OWYzMWE2Y2IxYmZkYzE2Mzk0MDQ3ZjAyZDZjZGRmNCAxMDA2NDQKLS0tIGEvZ2NjL2Nv bmZpZy9hcm0vbXZlLm1kCisrKyBiL2djYy9jb25maWcvYXJtL212ZS5tZApAQCAtMTQyLDcgKzE0 Miw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQi CiAgICJ2cHN0XDt2cmludHp0LmYlIzxWX3N6X2VsZW0+ICVxMCwgJXEyIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZybmRxX2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBA IC04MTgsNyArODE5LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dmFk ZGx2dC48c3VwZj4zMiAlUTAsICVSMCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAi Q09ERV9GT1JfbXZlX3ZhZGRsdnFfPHN1cGY+djRzaSIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTkxMCw3ICs5 MTIsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2YWRkdnQuPHN1cGY+ JSM8Vl9zel9lbGVtPgklMCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQor IFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9G T1JfbXZlX3ZhZGR2cV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0yNTYwLDcgKzI1NjMs OCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2YmljdC5pJSM8Vl9zel9l bGVtPgklcTAsICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zi aWNxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAg IChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogOzsKIDs7IFt2Y21wZXFxX21fZl0pCkBAIC0yNTc1 LDcgKzI1NzksOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZF X0ZMT0FUIgogICAidnBzdFw7dmNtcHQuZiUjPFZfc3pfZWxlbT4JZXEsICVxMSwgJXEyIgotICBb KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNh dGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbXBlcXFfZjxtb2RlPiIpKQor ICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIp XSkKIDs7CiA7OyBbdmN2dGFxX21fdSwgdmN2dGFxX21fc10pCkBAIC0yNTkwLDcgKzI1OTUsOCBA QAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAi dnBzdFw7dmN2dGF0LjxzdXBmPiUjPFZfc3pfZWxlbT4uZiUjPFZfc3pfZWxlbT5cdCVxMCwgJXEy IgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5w cmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjdnRhcV88c3VwZj48 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJs ZW5ndGgiIjgiKV0pCiA7OwogOzsgW3ZjdnRxX21fdG9fZl9zLCB2Y3Z0cV9tX3RvX2ZfdV0pCkBA IC0yNjA1LDcgKzI2MTEsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hB VkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmN2dHQuZiUjPFZfc3pfZWxlbT4uPHN1cGY+JSM8Vl9z el9lbGVtPgkgJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhz ZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9t dmVfdmN2dHFfdG9fZl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiA7OwogOzsgW3ZxcnNocm5icV9uX3Us IHZxcnNocm5icV9uX3NdKQpAQCAtMjcyNyw3ICsyNzM0LDggQEAKICAgXQogICAiVEFSR0VUX0hB VkVfTVZFIgogICAidnBzdFw7dmFic3QucyUjPFZfc3pfZWxlbT4JJXEwLCAlcTIiCi0gIFsoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRf aW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmFic3Ffczxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAog OzsKQEAgLTI3NDMsNyArMjc1MSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZw c3RcO3ZhZGR2YXQuPHN1cGY+JSM8Vl9zel9lbGVtPgklMCwgJXEyIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZhZGR2YXFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7 OwpAQCAtMjc1OSw3ICsyNzY4LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBz dFw7dmNsc3QucyUjPFZfc3pfZWxlbT4JJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xf cmVmICJDT0RFX0ZPUl9tdmVfdmNsc3Ffczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTI3NzUsNyAr Mjc4NSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZjbHp0LmklIzxW X3N6X2VsZW0+CSVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3ZjbHpxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTI3OTEsNyArMjgwMiw4IEBA CiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZjbXB0LnUlIzxWX3N6X2VsZW0+ CWNzLCAlcTEsICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zj bXBjc3Ffbl88bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNl dF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0yODA3LDcgKzI4MTksOCBAQAogICBdCiAg ICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2Y21wdC51JSM8Vl9zel9lbGVtPgljcywgJXEx LCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12 ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNtcGNzcV88 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJs ZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0yODIzLDcgKzI4MzYsOCBAQAogICBdCiAgICJUQVJHRVRf SEFWRV9NVkUiCiAgICJ2cHN0XDt2Y21wdC5pJSM8Vl9zel9lbGVtPgllcSwgJXExLCAlMiIKLSAg WyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y21wZXFxX25fPG1vZGU+Iikp CisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4 IildKQogCiA7OwpAQCAtMjgzOSw3ICsyODUzLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZF IgogICAidnBzdFw7dmNtcHQuaSUjPFZfc3pfZWxlbT4JZXEsICVxMSwgJXEyIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbXBlcXFfPG1vZGU+IikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7 OwpAQCAtMjg1NSw3ICsyODcwLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBz dFw7dmNtcHQucyUjPFZfc3pfZWxlbT4JZ2UsICVxMSwgJTIiCi0gIFsoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1i b2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNtcGdlcV9uXzxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTI4 NzEsNyArMjg4Nyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZjbXB0 LnMlIzxWX3N6X2VsZW0+CWdlLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92Y21wZ2VxXzxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTI4ODcsNyArMjkw NCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZjbXB0LnMlIzxWX3N6 X2VsZW0+CWd0LCAlcTEsICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3ZjbXBndHFfbl88bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQog ICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0yOTAzLDcgKzI5MjEsOCBAQAog ICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2Y21wdC5zJSM8Vl9zel9lbGVtPgln dCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNt cGd0cV88bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9h dHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0yOTE5LDcgKzI5MzgsOCBAQAogICBdCiAgICJU QVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2Y21wdC51JSM8Vl9zel9lbGVtPgloaSwgJXExLCAl MiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3Vu cHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y21waGlxX25fPG1v ZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVu Z3RoIiI4IildKQogCiA7OwpAQCAtMjkzNSw3ICsyOTU1LDggQEAKICAgXQogICAiVEFSR0VUX0hB VkVfTVZFIgogICAidnBzdFw7dmNtcHQudSUjPFZfc3pfZWxlbT4JaGksICVxMSwgJXEyIgotICBb KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNh dGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbXBoaXFfPG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4Iild KQogCiA7OwpAQCAtMjk1MSw3ICsyOTcyLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnBzdFw7dmNtcHQucyUjPFZfc3pfZWxlbT4JbGUsICVxMSwgJTIiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNtcGxlcV9uXzxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsK QEAgLTI5NjcsNyArMjk4OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3Rc O3ZjbXB0LnMlIzxWX3N6X2VsZW0+CWxlLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92Y21wbGVxXzxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTI5ODMs NyArMzAwNiw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZjbXB0LnMl IzxWX3N6X2VsZW0+CWx0LCAlcTEsICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZjbXBsdHFfbl88bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0yOTk5LDcgKzMwMjMs OCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2Y21wdC5zJSM8Vl9zel9l bGVtPglsdCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhz ZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9t dmVfdmNtcGx0cV88bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAg KHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0zMDE1LDcgKzMwNDAsOCBAQAogICBd CiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2Y21wdC5pJSM8Vl9zel9lbGVtPgluZSwg JXExLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y21wbmVx X25fPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0 ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtMzAzMSw3ICszMDU3LDggQEAKICAgXQogICAiVEFS R0VUX0hBVkVfTVZFIgogICAidnBzdFw7dmNtcHQuaSUjPFZfc3pfZWxlbT4JbmUsICVxMSwgJXEy IgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5w cmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbXBuZXFfPG1vZGU+ IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3Ro IiI4IildKQogCiA7OwpAQCAtMzA0Nyw3ICszMDc0LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVf TVZFIgogICAidnBzdFw7dmR1cHQuJSM8Vl9zel9lbGVtPgklcTAsICUyIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZkdXBxX25fPHN1cGY+PG1vZGU+IikpCisgIChz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQog CiA7OwpAQCAtMzA2Myw3ICszMDkxLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAi dnBzdFw7dm1heGF0LnMlIzxWX3N6X2VsZW0+CSVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3lt Ym9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtYXhhcV9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtMzA3 OSw3ICszMTA4LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dm1heGF2 dC5zJSM8Vl9zel9lbGVtPgklMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZtYXhhdnFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTMwOTUsNyArMzEyNSw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZtYXh2dC48c3VwZj4lIzxW X3N6X2VsZW0+CSUwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhz ZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9t dmVfdm1heHZxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTMxMTEsNyArMzE0Miw4IEBA CiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZtaW5hdC5zJSM8Vl9zel9lbGVt PgklcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0 ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWlu YXFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0 dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTMxMjcsNyArMzE1OSw4IEBACiAgIF0KICAgIlRB UkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZtaW5hdnQucyUjPFZfc3pfZWxlbT4JJTAsICVxMiIK LSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJl ZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWluYXZxX3M8bW9kZT4i KSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgi IjgiKV0pCiAKIDs7CkBAIC0zMTQzLDcgKzMxNzYsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9N VkUiCiAgICJ2cHN0XDt2bWludnQuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JTAsICVxMiIKLSAgWyhz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRl ZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWludnFfPHN1cGY+PG1vZGU+Iikp CisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4 IildKQogCiA7OwpAQCAtMzE3NSw3ICszMjA5LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZF IgogICAidnBzdFw7dm1sYWRhdnQuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JTAsICVxMSwgJXEyIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbGFkYXZxXzxzdXBmPjxt b2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxl bmd0aCIiOCIpXSkKIAogOzsKQEAgLTMxOTEsNyArMzIyNiw4IEBACiAgIF0KICAgIlRBUkdFVF9I QVZFX01WRSIKICAgInZwc3RcO3ZtbGFkYXZ4dC5zJSM8Vl9zel9lbGVtPlx0JTAsICVxMSwgJXEy IgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5w cmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbGFkYXZ4cV9zPG1v ZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVu Z3RoIiI4IildKQogCiA7OwpAQCAtMzIzOSw3ICszMjc1LDggQEAKICAgXQogICAiVEFSR0VUX0hB VkVfTVZFIgogICAidnBzdFw7dm1sc2RhdnQucyUjPFZfc3pfZWxlbT4JJTAsICVxMSwgJXEyIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbHNkYXZxX3M8bW9kZT4i KSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgi IjgiKV0pCiAKIDs7CkBAIC0zMjU1LDcgKzMyOTIsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9N VkUiCiAgICJ2cHN0XDt2bWxzZGF2eHQucyUjPFZfc3pfZWxlbT4JJTAsICVxMSwgJXEyIgotICBb KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNh dGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbHNkYXZ4cV9zPG1vZGU+Iikp CisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4 IildKQogCiA7OwpAQCAtMzI3MSw3ICszMzA5LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZF IgogICAidnBzdFw7dm12bnQgJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJD T0RFX0ZPUl9tdmVfdm12bnFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtMzI4Nyw3ICsz MzI2LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dm5lZ3QucyUjPFZf c3pfZWxlbT5cdCVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3ZuZWdxX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAg KHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0zMzE5LDcgKzMzNTksOCBAQAogICBd CiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cWFic3QucyUjPFZfc3pfZWxlbT5cdCVx MCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJt dmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxYWJzcV9z PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAi bGVuZ3RoIiI4IildKQogCiA7OwpAQCAtMzM2Nyw3ICszNDA4LDggQEAKICAgXQogICAiVEFSR0VU X0hBVkVfTVZFIgogICAidnBzdFw7dnFuZWd0LnMlIzxWX3N6X2VsZW0+CSVxMCwgJXEyIgotICBb KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNh dGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxbmVncV9zPG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4Iild KQogCiA7OwpAQCAtMzQ3OSw3ICszNTIxLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnBzdFw7dnFyc2hsdC48c3VwZj4lIzxWX3N6X2VsZW0+CSVxMCwgJTIiCi0gIFsoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5z biIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFyc2hscV9uXzxzdXBmPjxtb2RlPiIpKQor ICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIp XSkKIAogOzsKQEAgLTM0OTUsNyArMzUzOCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIK ICAgInZwc3RcO3Zxc2hsdC48c3VwZj4lIzxWX3N6X2VsZW0+XHQlcTAsICUyIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zxc2hscV9yXzxzdXBmPjxtb2RlPiIpKQor ICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIp XSkKIAogOzsKQEAgLTM1MTEsNyArMzU1NSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIK ICAgInZwc3RcO3ZyZXY2NHQuJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJldjY0cV88c3VwZj48bW9kZT4iKSkKKyAgKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAK IDs7CkBAIC0zNTI3LDcgKzM1NzIsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2 cHN0XDt2cnNobHQuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEwLCAlMiIKLSAgWyhzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikg KHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cnNobHFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAK IDs7CkBAIC0zNTQzLDcgKzM1ODksOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2 cHN0XDt2c2hsdC48c3VwZj4lIzxWX3N6X2VsZW0+XHQlcTAsICUyIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzaGxxX3JfPHN1cGY+PG1vZGU+IikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7 OwpAQCAtMzcwMiw3ICszNzQ5LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdF VF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZhYnN0LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEy IgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5w cmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZhYnNxX2Y8bW9kZT4i KSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgi IjgiKV0pCiAKIDs7CkBAIC0zNzE4LDcgKzM3NjYsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9N VkUiCiAgICJ2cHN0XDt2YWRkbHZhdC48c3VwZj4zMiAlUTAsICVSMCwgJXEyIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZhZGRsdmFxXzxzdXBmPnY0c2kiKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0p CiA7OwogOzsgW3ZjbWxhcSwgdmNtbGFxX3JvdDkwLCB2Y21sYXFfcm90MTgwLCB2Y21sYXFfcm90 MjcwXSkKQEAgLTM3NTIsNyArMzgwMSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBU QVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2Y21wdC5mJSM8Vl9zel9lbGVtPgllcSwg JXExLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y21wZXFx X25fZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0 dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTM3NjgsNyArMzgxOCw4IEBACiAgIF0KICAgIlRB UkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2Y21wdC5m JSM8Vl9zel9lbGVtPglnZSwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJD T0RFX0ZPUl9tdmVfdmNtcGdlcV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtMzc4NCw3ICszODM1 LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIK ICAgInZwc3RcO3ZjbXB0LmYlIzxWX3N6X2VsZW0+CWdlLCAlcTEsICUyIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbXBnZXFfbl9mPG1vZGU+IikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7 OwpAQCAtMzgwMCw3ICszODUyLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdF VF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZjbXB0LmYlIzxWX3N6X2VsZW0+CWd0LCAlcTEs ICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y21wZ3RxX2Y8 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJs ZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0zODE2LDcgKzM4NjksOCBAQAogICBdCiAgICJUQVJHRVRf SEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmNtcHQuZiUjPFZf c3pfZWxlbT4JZ3QsICVxMSwgJTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdmNtcGd0cV9uX2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0zODMyLDcgKzM4ODYsOCBA QAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAi dnBzdFw7dmNtcHQuZiUjPFZfc3pfZWxlbT4JbGUsICVxMSwgJXEyIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbXBsZXFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAg LTM4NDgsNyArMzkwMyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFW RV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2Y21wdC5mJSM8Vl9zel9lbGVtPglsZSwgJXExLCAlMiIK LSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJl ZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y21wbGVxX25fZjxtb2Rl PiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0 aCIiOCIpXSkKIAogOzsKQEAgLTM4NjQsNyArMzkyMCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZF X01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2Y21wdC5mJSM8Vl9zel9l bGVtPglsdCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhz ZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9t dmVfdmNtcGx0cV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAg IChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtMzg4MCw3ICszOTM3LDggQEAKICAg XQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3Rc O3ZjbXB0LmYlIzxWX3N6X2VsZW0+CWx0LCAlcTEsICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9s X3JlZiAiQ09ERV9GT1JfbXZlX3ZjbXBsdHFfbl9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtMzg5 Niw3ICszOTU0LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01W RV9GTE9BVCIKICAgInZwc3RcO3ZjbXB0LmYlIzxWX3N6X2VsZW0+CW5lLCAlcTEsICVxMiIKLSAg WyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y21wbmVxX2Y8bW9kZT4iKSkK KyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgi KV0pCiAKIDs7CkBAIC0zOTEyLDcgKzM5NzEsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUg JiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmNtcHQuZiUjPFZfc3pfZWxlbT4J bmUsICVxMSwgJTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNt cG5lcV9uX2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNl dF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0zOTI4LDcgKzM5ODgsOCBAQAogICBdCiAg ICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmN2 dGJ0LmYxNi5mMzIgJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdmN2dGJxX2YxNl9mMzJ2OGhmIikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3Zl IikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtMzk0NCw3ICs0MDA1LDgg QEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAg InZwc3RcO3ZjdnRidC5mMzIuZjE2ICVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3Jl ZiAiQ09ERV9GT1JfbXZlX3ZjdnRicV9mMzJfZjE2djRzZiIpKQorICAoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTM5NjAs NyArNDAyMiw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVf RkxPQVQiCiAgICJ2cHN0XDt2Y3Z0dHQuZjE2LmYzMiAlcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikg KHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y3Z0dHFfZjE2X2YzMnY4aGYiKSkKKyAgKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7 CkBAIC0zOTc2LDcgKzQwMzksOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VU X0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmN2dHR0LmYzMi5mMTYgJXEwLCAlcTIiCi0gIFso c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0 ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmN2dHRxX2YzMl9mMTZ2NHNmIikp CisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4 IildKQogCiA7OwpAQCAtMzk5Miw3ICs0MDU2LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZF ICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZkdXB0LiUjPFZfc3pfZWxlbT4J JXEwLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92ZHVwcV9u X2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRy ICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00MDcxLDcgKzQxMzYsOCBAQAogICBdCiAgICJUQVJH RVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dm1heG5tYXQu ZiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RF X0ZPUl9tdmVfdm1heG5tYXFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIDs7CiA7OyBbdm1heG5tYXZxX3BfZl0p CkBAIC00MDg2LDcgKzQxNTIsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VU X0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dm1heG5tYXZ0LmYlIzxWX3N6X2VsZW0+CSUwLCAl cTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91 bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1heG5tYXZxX2Y8 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJs ZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00MTAyLDcgKzQxNjksOCBAQAogICBdCiAgICJUQVJHRVRf SEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dm1heG5tdnQuZiUj PFZfc3pfZWxlbT4JJTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92bWF4bm12cV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK ICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogOzsKIDs7IFt2bWlubm1hcV9tX2ZdKQpAQCAt NDExNyw3ICs0MTg1LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZF X01WRV9GTE9BVCIKICAgInZwc3RcO3ZtaW5ubWF0LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEyIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtaW5ubWFxX2Y8bW9kZT4i KSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgi IjgiKV0pCiAKIDs7CkBAIC00MTMzLDcgKzQyMDIsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9N VkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dm1pbm5tYXZ0LmYlIzxWX3N6 X2VsZW0+CSUwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQg KGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVf dm1pbm5tYXZxX2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAg KHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiA7OwogOzsgW3ZtaW5ubXZxX3BfZl0pCkBAIC00MTQ4 LDcgKzQyMTgsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZF X0ZMT0FUIgogICAidnBzdFw7dm1pbm5tdnQuZiUjPFZfc3pfZWxlbT4JJTAsICVxMiIKLSAgWyhz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRl ZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWlubm12cV9mPG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4Iild KQogCiA7OwpAQCAtNDE5Niw3ICs0MjY3LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnBzdFw7dm1sYWxkYXZ0LjxzdXBmPiUjPFZfc3pfZWxlbT4gJVEwLCAlUjAsICVxMSwgJXEy IgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5w cmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbGFsZGF2cV88c3Vw Zj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRy ICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00MjEyLDcgKzQyODQsOCBAQAogICBdCiAgICJUQVJH RVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2bWxhbGRhdnh0LnMlIzxWX3N6X2VsZW0+XHQlUTAsICVS MCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1s YWxkYXZ4cV9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChz ZXRfYXR0ciAibGVuZ3RoIiI4IildKQogOzsKIDs7IFt2bWxzbGRhdmFxX3NdKQpAQCAtNDI1OSw3 ICs0MzMyLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dm1sc2xkYXZ0 LnMlIzxWX3N6X2VsZW0+ICVRMCwgJVIwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92bWxzbGRhdnFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQy NzUsNyArNDM0OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZtbHNs ZGF2eHQucyUjPFZfc3pfZWxlbT4gJVEwLCAlUjAsICVxMSwgJXEyIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbHNsZGF2eHFfczxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIDs7CiA7 OyBbdm1vdmxicV9tX3UsIHZtb3ZsYnFfbV9zXSkKQEAgLTQyOTAsNyArNDM2NSw4IEBACiAgIF0K ICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3Ztb3ZsYnQuPHN1cGY+JSM8Vl9zel9lbGVt PgklcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0 ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bW92 bGJxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAo c2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIDs7CiA7OyBbdm1vdmx0cV9tX3UsIHZtb3ZsdHFfbV9z XSkKQEAgLTQzMDUsNyArNDM4MSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZw c3RcO3Ztb3ZsdHQuPHN1cGY+JSM8Vl9zel9lbGVtPgklcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikg KHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bW92bHRxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIDs7 CiA7OyBbdm1vdm5icV9tX3UsIHZtb3ZuYnFfbV9zXSkKQEAgLTQzMjAsNyArNDM5Nyw4IEBACiAg IF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3Ztb3ZuYnQuaSUjPFZfc3pfZWxlbT4J JXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1vdm5i cV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNl dF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00MzM2LDcgKzQ0MTQsOCBAQAogICBdCiAg ICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2bW92bnR0LmklIzxWX3N6X2VsZW0+CSVxMCwg JXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Ztb3ZudHFfPHN1 cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0 ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNDM1Miw3ICs0NDMxLDggQEAKICAgXQogICAiVEFS R0VUX0hBVkVfTVZFIgogICAidnBzdFw7dm12bnQuaSUjPFZfc3pfZWxlbT4JJXEwLCAlMiIKLSAg WyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bXZucV9uXzxzdXBmPjxtb2Rl PiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0 aCIiOCIpXSkKIDs7CiA7OyBbdm5lZ3FfbV9mXSkKQEAgLTQzNjcsNyArNDQ0Nyw4IEBACiAgIF0K ICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2 bmVndC5mJSM8Vl9zel9lbGVtPgklcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92bmVncV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNDM4Myw3ICs0NDY0 LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dm9ycnQuaSUjPFZfc3pf ZWxlbT4JJXEwLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAo YXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92 b3JycV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAg ICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIDs7CiA7OyBbdnBzZWxxX2ZdKQpAQCAtNDQxNCw3 ICs0NDk2LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnFtb3ZuYnQu PHN1cGY+JSM8Vl9zel9lbGVtPgklcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92cW1vdm5icV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00NDMw LDcgKzQ1MTMsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cW1vdm50 dC48c3VwZj4lIzxWX3N6X2VsZW0+CSVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3Jl ZiAiQ09ERV9GT1JfbXZlX3ZxbW92bnRxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQ0 NDYsNyArNDUzMCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZxbW92 dW5idC5zJSM8Vl9zel9lbGVtPgklcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92cW1vdnVuYnFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQ0NjIsNyAr NDU0Nyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZxbW92dW50dC5z JSM8Vl9zel9lbGVtPgklcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92cW1vdnVudHFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQ1NzQsNyArNDY2MCw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAg ICJ2cHN0XDt2cmV2MzJ0LjE2ICVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAi Q09ERV9GT1JfbXZlX3ZyZXYzMnFfZnY4aGYiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00NTkwLDcgKzQ2Nzcs OCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cmV2MzJ0LiUjPFZfc3pf ZWxlbT4JJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQg KGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVf dnJldjMycV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQog ICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00NjA2LDcgKzQ2OTQsOCBAQAog ICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBz dFw7dnJldjY0dC4lIzxWX3N6X2VsZW0+CSVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9s X3JlZiAiQ09ERV9GT1JfbXZlX3ZyZXY2NHFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQ2Mzgs NyArNDcyNyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZybWxhbGRh dmh4dC5zMzIgJVEwLCAlUjAsICVxMSwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAi Q09ERV9GT1JfbXZlX3ZybWxhbGRhdmh4cV9zdjRzaSIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQ2NzAsNyAr NDc2MCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZybWxzbGRhdmh0 LnMzMiAlUTAsICVSMCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RF X0ZPUl9tdmVfdnJtbHNsZGF2aHFfc3Y0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00Njg2LDcgKzQ3Nzcs OCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cm1sc2xkYXZoeHQuczMy ICVRMCwgJVIwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92cm1sc2xkYXZoeHFfc3Y0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00NzAyLDcgKzQ3OTQsOCBA QAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAi dnBzdFw7dnJpbnRhdC5mJSM8Vl9zel9lbGVtPgklcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5 bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cm5kYXFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQ3 MTgsNyArNDgxMSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9N VkVfRkxPQVQiCiAgICJ2cHN0XDt2cmludG10LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEyIgotICBb KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNh dGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZybmRtcV9mPG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4Iild KQogCiA7OwpAQCAtNDczNCw3ICs0ODI4LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYm IFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZyaW50bnQuZiUjPFZfc3pfZWxlbT4J JXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJuZG5x X2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRy ICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00NzUwLDcgKzQ4NDUsOCBAQAogICBdCiAgICJUQVJH RVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dnJpbnRwdC5m JSM8Vl9zel9lbGVtPgklcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92cm5kcHFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQ3NjYsNyArNDg2Miw4IEBA CiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2 cHN0XDt2cmludHh0LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3lt Ym9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZybmR4cV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNDg0 Niw3ICs0OTQzLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01W RV9GTE9BVCIKICAgInZwc3RcO3ZjdnRtdC48c3VwZj4lIzxWX3N6X2VsZW0+LmYlIzxWX3N6X2Vs ZW0+XHQlcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAo YXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92 Y3Z0bXFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAg IChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNDg2Miw3ICs0OTYwLDggQEAKICAg XQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3Rc O3ZjdnRwdC48c3VwZj4lIzxWX3N6X2VsZW0+LmYlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiIKLSAg WyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y3Z0cHFfPHN1cGY+PG1vZGU+ IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3Ro IiI4IildKQogCiA7OwpAQCAtNDg3OCw3ICs0OTc3LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVf TVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZjdnRudC48c3VwZj4lIzxW X3N6X2VsZW0+LmYlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92Y3Z0bnFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAt NDg5NSw3ICs0OTk1LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZF X01WRV9GTE9BVCIKICAgInZwc3RcO3ZjdnR0LjxzdXBmPiUjPFZfc3pfZWxlbT4uZiUjPFZfc3pf ZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92Y3Z0cV9uX2Zyb21fZl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00OTExLDcg KzUwMTIsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cmV2MTZ0Ljgg JXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJldjE2 cV88c3VwZj52MTZxaSIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0 X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQ5MjcsNyArNTAyOSw4IEBACiAgIF0KICAg IlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2Y3Z0 dC48c3VwZj4lIzxWX3N6X2VsZW0+LmYlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiIKLSAgWyhzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y3Z0cV9mcm9tX2ZfPHN1cGY+PG1vZGU+ IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3Ro IiI4IildKQogCiA7OwpAQCAtNDk0Myw3ICs1MDQ2LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVf TVZFIgogICAidnBzdFw7dnJtbGFsZGF2aHQuPHN1cGY+MzIgJVEwLCAlUjAsICVxMSwgJXEyIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZybWxhbGRhdmhxXzxzdXBm PnY0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJs ZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00OTc2LDcgKzUwODAsOCBAQAogICBdCiAgICJUQVJHRVRf SEFWRV9NVkUiCiAgICJ2cHN0XDt2YWJhdnQuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JTAsICVxMiwg JXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZhYmF2cV88c3Vw Zj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAg LTQ5OTMsNyArNTA5OCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3Rcblx0 dnFzaGx1dC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChz eW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFzaGx1cV9uX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKV0pCiAKIDs7CiA7OyBbdnNobHFfbV9zLCB2c2hscV9tX3VdKQpA QCAtNTAwOSw3ICs1MTE1LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7 dnNobHQuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzaGxxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpXSkKIAogOzsKIDs7IFt2c3JpcV9tX25fcywgdnNyaXFf bV9uX3VdKQpAQCAtNTAyNSw3ICs1MTMyLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnBzdFw7dnNyaXQuJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5z biIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnNyaXFfbl88c3VwZj48bW9kZT4iKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKV0pCiAKIDs7CiA7OyBbdnN1YnFfbV91LCB2c3Vi cV9tX3NdKQpAQCAtNTA0MSw3ICs1MTQ5LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnBzdFw7dnN1YnQuaSUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92c3VicV88c3VwZj48bW9kZT4iKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKV0pCiAKIDs7CiA7OyBbdmN2dHFfbV9uX3RvX2Zf dSwgdmN2dHFfbV9uX3RvX2Zfc10pCkBAIC01MDU3LDcgKzUxNjYsOCBAQAogICBdCiAgICJUQVJH RVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmN2dHQuZiUj PFZfc3pfZWxlbT4uPHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjdnRxX25fdG9fZl88c3VwZj48bW9kZT4i KSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgi IjgiKV0pCiA7OwogOzsgW3ZhYmRxX21fcywgdmFiZHFfbV91XSkKQEAgLTUwNzMsNyArNTE4Myw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZhYmR0LjxzdXBmPiUjPFZf c3pfZWxlbT4JJXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92YWJkcV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01MDkwLDcgKzUyMDEs OCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2YWRkdC5pJSM8Vl9zel9l bGVtPgklcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhz ZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9t dmVfdmFkZHFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01MTA3LDcgKzUyMTksOCBA QAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2YWRkdC5pJSM8Vl9zel9lbGVt PgklcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0 IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZl X3ZhZGRxPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRf YXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTEyNCw3ICs1MjM3LDggQEAKICAgXQogICAi VEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dmFuZHQgJXEwLCAlcTIsICVxMyIKLSAgWyhzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92YW5kcV88c3VwZj48bW9kZT4iKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0p CiAKIDs7CkBAIC01MTQxLDcgKzUyNTUsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAg ICJ2cHN0XDt2YmljdCAlcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAi Q09ERV9GT1JfbXZlX3ZiaWNxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTUxNTgsNyAr NTI3Myw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZicnNydC4lIzxW X3N6X2VsZW0+CSVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92YnJzcnFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01MTc1LDcgKzUy OTEsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2Y2FkZHQuaSUjPFZf c3pfZWxlbT4JJXEwLCAlcTIsICVxMywgIzI3MCIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92Y2FkZHFfcm90MjcwPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTE5Miw3 ICs1MzA5LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dmNhZGR0Lmkl IzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlcTMsICM5MCIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9y ZWYgIkNPREVfRk9SX212ZV92Y2FkZHFfcm90OTA8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01MjA5 LDcgKzUzMjcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2ZW9ydCAl cTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zl b3JxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAo c2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTUyMjYsNyArNTM0NSw4IEBACiAgIF0K ICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZoYWRkdC48c3VwZj4lIzxWX3N6X2VsZW0+ CSVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAo YXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92 aGFkZHFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQog ICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01MjQzLDcgKzUzNjMsOCBAQAog ICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2aGFkZHQuPHN1cGY+JSM8Vl9zel9l bGVtPgklcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3ZoYWRkcV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01MjYwLDcgKzUzODEsOCBA QAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2aHN1YnQuPHN1cGY+JSM8Vl9z el9lbGVtPgklcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdmhzdWJxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTI3Nyw3ICs1Mzk5 LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dmhzdWJ0LjxzdXBmPiUj PFZfc3pfZWxlbT4JJXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3Zl IikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNP REVfRk9SX212ZV92aHN1YnFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTI5NCw3ICs1 NDE3LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dm1heHQuPHN1cGY+ JSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAi Q09ERV9GT1JfbXZlX3ZtYXhxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTUzMTEsNyAr NTQzNSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZtaW50LjxzdXBm PiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92bWlucV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01MzI4LDcg KzU0NTMsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2bWxhZGF2YXQu PHN1cGY+JSM8Vl9zel9lbGVtPgklMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xf cmVmICJDT0RFX0ZPUl9tdmVfdm1sYWRhdmFxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAg LTUzNDUsNyArNTQ3MSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3Zt bGF0LjxzdXBmPiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3lt Ym9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbGFxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpA QCAtNTM2Miw3ICs1NDg5LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7 dm1sYXN0LjxzdXBmPiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbGFzcV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAog OzsKQEAgLTUzNzksNyArNTUwNyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZw c3RcO3ZtdWxodC48c3VwZj4lIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5z biIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm11bGhxXzxzdXBmPjxtb2RlPiIpKQorICAo c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkK IAogOzsKQEAgLTUzOTYsNyArNTUyNSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAg InZwc3RcO3ZtdWxsYnQuPHN1cGY+JSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJXEzIgotICBbKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtdWxsYnFfaW50XzxzdXBmPjxtb2Rl PiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0 aCIiOCIpXSkKIAogOzsKQEAgLTU0MTMsNyArNTU0Myw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZF X01WRSIKICAgInZwc3RcO3ZtdWxsdHQuPHN1cGY+JSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJXEz IgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5w cmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtdWxsdHFfaW50Xzxz dXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0 dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTU0MzAsNyArNTU2MSw4IEBACiAgIF0KICAgIlRB UkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZtdWx0LmklIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAl MyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3Vu cHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bXVscV9uXzxzdXBm Pjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIg Imxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTU0NDcsNyArNTU3OSw4IEBACiAgIF0KICAgIlRBUkdF VF9IQVZFX01WRSIKICAgInZwc3RcO3ZtdWx0LmklIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlcTMi Ci0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm11bHFfPHN1cGY+PG1v ZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVu Z3RoIiI4IildKQogCiA7OwpAQCAtNTQ2NCw3ICs1NTk3LDggQEAKICAgXQogICAiVEFSR0VUX0hB VkVfTVZFIgogICAidnBzdFw7dm9ybnQgJXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5 bWJvbF9yZWYgIkNPREVfRk9SX212ZV92b3JucV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBA IC01NDgxLDcgKzU2MTUsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2 b3JydCAlcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3ZvcnJxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTU0OTgsNyArNTYzMyw4IEBA CiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZxYWRkdC48c3VwZj4lIzxWX3N6 X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdnFhZGRxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTUxNSw3ICs1NjUx LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnFhZGR0LjxzdXBmPiUj PFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJD T0RFX0ZPUl9tdmVfdnFhZGRxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTU1MzIsNyAr NTY2OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZxZG1sYWh0LnMl IzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJD T0RFX0ZPUl9tdmVfdnFkbWxhaHFfbl9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTU0OSw3ICs1 Njg3LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnFkbWxhc2h0LnMl IzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJD T0RFX0ZPUl9tdmVfdnFkbWxhc2hxX25fczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTU1NjYsNyAr NTcwNSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZxcmRtbGFodC5z JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAi Q09ERV9GT1JfbXZlX3ZxcmRtbGFocV9uX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01NTgzLDcg KzU3MjMsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cXJkbWxhc2h0 LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdnFyZG1sYXNocV9uX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01NjAw LDcgKzU3NDEsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cXJzaGx0 LjxzdXBmPiUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1i b2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFyc2hscV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBA IC01NjE3LDcgKzU3NTksOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2 cXNobHQuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zxc2hscV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAog OzsKQEAgLTU2MzQsNyArNTc3Nyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZw c3RcO3Zxc2hsdC48c3VwZj4lIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zxc2hscV88c3VwZj48bW9kZT4iKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0p CiAKIDs7CkBAIC01NjUxLDcgKzU3OTUsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAg ICJ2cHN0XDt2cXN1YnQuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zxc3VicV9uXzxzdXBmPjxtb2RlPiIp KQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIi OCIpXSkKIAogOzsKQEAgLTU2NjgsNyArNTgxMyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01W RSIKICAgInZwc3RcO3Zxc3VidC48c3VwZj4lIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zxc3VicV88c3VwZj48bW9k ZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5n dGgiIjgiKV0pCiAKIDs7CkBAIC01Njg1LDcgKzU4MzEsOCBAQAogICBdCiAgICJUQVJHRVRfSEFW RV9NVkUiCiAgICJ2cHN0XDt2cmhhZGR0LjxzdXBmPiUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAl cTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91 bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJoYWRkcV88c3Vw Zj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRy ICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01NzAyLDcgKzU4NDksOCBAQAogICBdCiAgICJUQVJH RVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cm11bGh0LjxzdXBmPiUjPFZfc3pfZWxlbT5cdCVxMCwg JXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJtdWxo cV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNl dF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01NzE5LDcgKzU4NjcsOCBAQAogICBdCiAg ICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cnNobHQuPHN1cGY+JSM8Vl9zel9lbGVtPlx0 JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAo YXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92 cnNobHFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAg IChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTczNiw3ICs1ODg1LDggQEAKICAg XQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnJzaHJ0LjxzdXBmPiUjPFZfc3pfZWxl bT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNl dCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212 ZV92cnNocnFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01NzUzLDcgKzU5MDMsOCBA QAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2c2hsdC48c3VwZj4lIzxWX3N6 X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdnNobHFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01NzcwLDcgKzU5MjEs OCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2c2hydC48c3VwZj4lIzxW X3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RF X0ZPUl9tdmVfdnNocnFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01Nzg3LDcgKzU5 MzksOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2c2xpdC4lIzxWX3N6 X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdnNsaXFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01ODA0LDcgKzU5NTcs OCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2c3VidC5pJSM8Vl9zel9l bGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3ZzdWJxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3Zl IikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTgyMSw3ICs1OTc1LDgg QEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dmhjYWRkdC5zJSM8Vl9zel9l bGVtPlx0JXEwLCAlcTIsICVxMywgIzI3MCIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3Zl IikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNP REVfRk9SX212ZV92aGNhZGRxX3JvdDI3MF9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTgzOCw3 ICs1OTkzLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dmhjYWRkdC5z JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMywgIzkwIgotICBbKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9s X3JlZiAiQ09ERV9GT1JfbXZlX3ZoY2FkZHFfcm90OTBfczxtb2RlPiIpKQorICAoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAg LTU4NTUsNyArNjAxMSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3Zt bGFkYXZheHQucyUjPFZfc3pfZWxlbT5cdCUwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5 bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWxhZGF2YXhxX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBA IC01ODcyLDcgKzYwMjksOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2 bWxzZGF2YXQucyUjPFZfc3pfZWxlbT5cdCUwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5 bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWxzZGF2YXFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAg LTU4ODksNyArNjA0Nyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3Zt bHNkYXZheHQucyUjPFZfc3pfZWxlbT5cdCUwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5 bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWxzZGF2YXhxX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBA IC01OTA2LDcgKzYwNjUsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2 cWRtbGFkaHQucyUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChz eW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFkbWxhZGhxX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBA IC01OTIzLDcgKzYwODMsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2 cWRtbGFkaHh0LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxZG1sYWRoeHFfczxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsK QEAgLTU5NDAsNyArNjEwMSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3Rc O3ZxZG1sc2RodC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikg KHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cWRtbHNkaHFfczxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsK QEAgLTU5NTcsNyArNjExOSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3Rc O3ZxZG1sc2RoeHQucyUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFkbWxzZGh4cV9zPG1vZGU+IikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7 OwpAQCAtNTk3NCw3ICs2MTM3LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBz dFw7dnFkbXVsaHQucyUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikg KHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cWRtdWxocV9uX3M8bW9kZT4iKSkKKyAgKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7 CkBAIC01OTkxLDcgKzYxNTUsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0 XDt2cWRtdWxodC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikg KHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cWRtdWxocV9zPG1vZGU+IikpCisgIChzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpA QCAtNjAwOCw3ICs2MTczLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7 dnFyZG1sYWRodC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikg KHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cXJkbWxhZGhxX3M8bW9kZT4iKSkKKyAgKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7 CkBAIC02MDI1LDcgKzYxOTEsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0 XDt2cXJkbWxhZGh4dC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNu IikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cXJkbWxhZGh4cV9zPG1vZGU+IikpCisgIChz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQog CiA7OwpAQCAtNjA0Miw3ICs2MjA5LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAi dnBzdFw7dnFyZG1sc2RodC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cXJkbWxzZGhxX3M8bW9kZT4iKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0p CiAKIDs7CkBAIC02MDU5LDcgKzYyMjcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAg ICJ2cHN0XDt2cXJkbWxzZGh4dC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMyIKLSAgWyhz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRl ZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cXJkbWxzZGh4cV9zPG1vZGU+Iikp CisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4 IildKQogCiA7OwpAQCAtNjA3Niw3ICs2MjQ1LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZF IgogICAidnBzdFw7dnFyZG11bGh0LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFso c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0 ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFyZG11bGhxX25fczxtb2RlPiIp KQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIi OCIpXSkKIAogOzsKQEAgLTYwOTMsNyArNjI2Myw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01W RSIKICAgInZwc3RcO3ZxcmRtdWxodC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMyIKLSAg WyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cXJkbXVsaHFfczxtb2RlPiIp KQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIi OCIpXSkKIAogOzsKQEAgLTYxMTAsNyArNjI4MSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01W RSIKICAgInZwc3RcO3ZtbGFsZGF2YXQuPHN1cGY+JSM8Vl9zel9lbGVtPgklUTAsICVSMCwgJXEy LCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12 ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1sYWxkYXZh cV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNl dF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02MTI3LDcgKzYyOTksOCBAQAogICBdCiAg ICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2bWxhbGRhdmF4dC48c3VwZj4lIzxWX3N6X2Vs ZW0+ICVRMCwgJVIwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92bWxhbGRhdmF4cV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02MTQ0LDcg KzYzMTcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cXJzaHJuYnQu PHN1cGY+JSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xf cmVmICJDT0RFX0ZPUl9tdmVfdnFyc2hybmJxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpA QCAtNjE2MSw3ICs2MzM1LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7 dnFyc2hybnR0LjxzdXBmPiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxcnNocm50cV9uXzxzdXBmPjxtb2RlPiIpKQor ICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIp XSkKIAogOzsKQEAgLTYxNzgsNyArNjM1Myw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIK ICAgInZwc3Rcblx0dnFzaHJuYnQuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUzIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zxc2hybmJxX25fPHN1cGY+ PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAi bGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjE5NSw3ICs2MzcxLDggQEAKICAgXQogICAiVEFSR0VU X0hBVkVfTVZFIgogICAidnBzdFw7dnFzaHJudHQuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEwLCAl cTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJt dmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zxc2hybnRx X25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChz ZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjIxMiw3ICs2Mzg5LDggQEAKICAgXQog ICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnJtbGFsZGF2aGF0LnMzMlx0JVEwLCAlUjAs ICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRy ICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZybWxh bGRhdmhhcV9zdjRzaSIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0 X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTYyMjksNyArNjQwNyw4IEBACiAgIF0KICAg IlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3Zyc2hybmJ0LmklIzxWX3N6X2VsZW0+XHQlcTAs ICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJzaHJu YnFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAg KHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02MjQ2LDcgKzY0MjUsOCBAQAogICBd CiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cnNocm50dC5pJSM8Vl9zel9lbGVtPlx0 JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zy c2hybnRxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK ICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjI2Myw3ICs2NDQzLDggQEAK ICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnNobGxidC48c3VwZj4lIzxWX3N6 X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdnNobGxicV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTYyODAsNyArNjQ2 MSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZzaGxsdHQuPHN1cGY+ JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAi Q09ERV9GT1JfbXZlX3ZzaGxsdHFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02Mjk3 LDcgKzY0NzksOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2c2hybmJ0 LmklIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdnNocm5icV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTYz MTQsNyArNjQ5Nyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZzaHJu dHQuaSUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9y ZWYgIkNPREVfRk9SX212ZV92c2hybnRxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAt NjMzMSw3ICs2NTE1LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dm1s c2xkYXZhdC5zJSM8Vl9zel9lbGVtPlx0JVEwLCAlUjAsICVxMiwgJXEzIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbHNsZGF2YXFfczxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAog OzsKQEAgLTYzNDgsNyArNjUzMyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZw c3RcO3ZtbHNsZGF2YXh0LnMlIzxWX3N6X2VsZW0+XHQlUTAsICVSMCwgJXEyLCAlcTMiCi0gIFso c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0 ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1sc2xkYXZheHFfczxtb2RlPiIp KQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIi OCIpXSkKIAogOzsKQEAgLTYzNjUsNyArNjU1MSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01W RSIKICAgInZwc3RcO3ZtdWxsYnQucCUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlcTMiCi0gIFso c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0 ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm11bGxicV9wb2x5X3A8bW9kZT4i KSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgi IjgiKV0pCiAKIDs7CkBAIC02MzgyLDcgKzY1NjksOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9N VkUiCiAgICJ2cHN0XDt2bXVsbHR0LnAlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzIgotICBb KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNh dGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtdWxsdHFfcG9seV9wPG1vZGU+ IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3Ro IiI4IildKQogCiA7OwpAQCAtNjM5OSw3ICs2NTg3LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVf TVZFIgogICAidnBzdFw7dnFkbXVsbGJ0LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0g IFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRp Y2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFkbXVsbGJxX25fczxtb2Rl PiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0 aCIiOCIpXSkKIAogOzsKQEAgLTY0MTYsNyArNjYwNSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZF X01WRSIKICAgInZwc3RcO3ZxZG11bGxidC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMyIK LSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJl ZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cWRtdWxsYnFfczxtb2Rl PiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0 aCIiOCIpXSkKIAogOzsKQEAgLTY0MzMsNyArNjYyMyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZF X01WRSIKICAgInZwc3RcO3ZxZG11bGx0dC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUzIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxZG11bGx0cV9uX3M8bW9k ZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5n dGgiIjgiKV0pCiAKIDs7CkBAIC02NDUwLDcgKzY2NDEsOCBAQAogICBdCiAgICJUQVJHRVRfSEFW RV9NVkUiCiAgICJ2cHN0XDt2cWRtdWxsdHQucyUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlcTMi Ci0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFkbXVsbHRxX3M8bW9k ZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5n dGgiIjgiKV0pCiAKIDs7CkBAIC02NDY3LDcgKzY2NTksOCBAQAogICBdCiAgICJUQVJHRVRfSEFW RV9NVkUiCiAgICJ2cHN0XDt2cXJzaHJ1bmJ0LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMi Ci0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFyc2hydW5icV9uX3M8 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJs ZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02NDg0LDcgKzY2NzcsOCBAQAogICBdCiAgICJUQVJHRVRf SEFWRV9NVkUiCiAgICJ2cHN0XDt2cXJzaHJ1bnR0LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwg JTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91 bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFyc2hydW50cV9u X3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRy ICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02NTAxLDcgKzY2OTUsOCBAQAogICBdCiAgICJUQVJH RVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cXNocnVuYnQucyUjPFZfc3pfZWxlbT5cdCVxMCwgJXEy LCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cXNocnVuYnFf bl9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0 ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjUxOCw3ICs2NzEzLDggQEAKICAgXQogICAiVEFS R0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnFzaHJ1bnR0LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVx MiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12 ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFzaHJ1bnRx X25fczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0 dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY1MzUsNyArNjczMSw4IEBACiAgIF0KICAgIlRB UkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZybWxhbGRhdmhhdC51MzJcdCVRMCwgJVIwLCAlcTIs ICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cm1sYWxkYXZo YXFfdXY0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRy ICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02NTUyLDcgKzY3NDksOCBAQAogICBdCiAgICJUQVJH RVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cm1sYWxkYXZoYXh0LnMzMlx0JVEwLCAlUjAsICVxMiwg JXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZybWxhbGRhdmhh eHFfc3Y0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRy ICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02NTY5LDcgKzY3NjcsOCBAQAogICBdCiAgICJUQVJH RVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cm1sc2xkYXZoYXQuczMyXHQlUTAsICVSMCwgJXEyLCAl cTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91 bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJtbHNsZGF2aGFx X3N2NHNpIikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAi bGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjU4Niw3ICs2Nzg1LDggQEAKICAgXQogICAiVEFSR0VU X0hBVkVfTVZFIgogICAidnBzdFw7dnJtbHNsZGF2aGF4dC5zMzJcdCVRMCwgJVIwLCAlcTIsICVx MyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3Vu cHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cm1sc2xkYXZoYXhx X3N2NHNpIikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAi bGVuZ3RoIiI4IildKQogOzsKIDs7IFt2YWJkcV9tX2ZdKQpAQCAtNjYwMiw3ICs2ODAyLDggQEAK ICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZw c3RcO3ZhYmR0LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChz eW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmFiZHFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY2 MTksNyArNjgyMCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9N VkVfRkxPQVQiCiAgICJ2cHN0XDt2YWRkdC5mJSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJXEzIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZhZGRxX2Y8bW9kZT4iKSkK KyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgi KV0pCiAKIDs7CkBAIC02NjM2LDcgKzY4MzgsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUg JiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmFkZHQuZiUjPFZfc3pfZWxlbT4J JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zh ZGRxX25fZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0 X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY2NTMsNyArNjg1Niw4IEBACiAgIF0KICAg IlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2YW5k dCAlcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0 IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZl X3ZhbmRxX2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNl dF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02NjcwLDcgKzY4NzQsOCBAQAogICBdCiAg ICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmJp Y3QgJXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNl dCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212 ZV92YmljcV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChz ZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjY4Nyw3ICs2ODkyLDggQEAKICAgXQog ICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3Zi cnNydC4lIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9y ZWYgIkNPREVfRk9SX212ZV92YnJzcnFfbl9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjcwNCw3 ICs2OTEwLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9G TE9BVCIKICAgInZwc3RcO3ZjYWRkdC5mJSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJXEzLCAjMjcw IgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5w cmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjYWRkcV9yb3QyNzA8 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJs ZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02NzIxLDcgKzY5MjgsOCBAQAogICBdCiAgICJUQVJHRVRf SEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmNhZGR0LmYlIzxW X3N6X2VsZW0+CSVxMCwgJXEyLCAlcTMsICM5MCIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92Y2FkZHFfcm90OTA8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02NzM4LDcg KzY5NDYsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZM T0FUIgogICAidnBzdFw7dmNtbGF0LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlcTMsICMwIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbWxhcTxtb2RlPiIpKQor ICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIp XSkKIAogOzsKQEAgLTY3NTUsNyArNjk2NCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAm JiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2Y21sYXQuZiUjPFZfc3pfZWxlbT4J JXEwLCAlcTIsICVxMywgIzE4MCIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92Y21sYXFfcm90MTgwPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3Zl IikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjc3Miw3ICs2OTgyLDgg QEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAg InZwc3RcO3ZjbWxhdC5mJSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJXEzLCAjMjcwIgotICBbKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbWxhcV9yb3QyNzA8bW9kZT4iKSkK KyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgi KV0pCiAKIDs7CkBAIC02Nzg5LDcgKzcwMDAsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUg JiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmNtbGF0LmYlIzxWX3N6X2VsZW0+ CSVxMCwgJXEyLCAlcTMsICM5MCIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92Y21sYXFfcm90OTA8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02ODA2LDcgKzcwMTgsOCBA QAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAi dnBzdFw7dmNtdWx0LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlcTMsICMwIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbXVscTxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsK QEAgLTY4MjMsNyArNzAzNiw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRf SEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2Y211bHQuZiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIs ICVxMywgIzE4MCIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0 ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y211 bHFfcm90MTgwPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChz ZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjg0MCw3ICs3MDU0LDggQEAKICAgXQog ICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3Zj bXVsdC5mJSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJXEzLCAjMjcwIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbXVscV9yb3QyNzA8bW9kZT4iKSkKKyAgKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7 CkBAIC02ODU3LDcgKzcwNzIsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VU X0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmNtdWx0LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEy LCAlcTMsICM5MCIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0 ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y211 bHFfcm90OTA8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNl dF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02ODc0LDcgKzcwOTAsOCBAQAogICBdCiAg ICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmVv cnQgJXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNl dCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212 ZV92ZW9ycV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChz ZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjg5MSw3ICs3MTA4LDggQEAKICAgXQog ICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3Zm bWF0LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xf cmVmICJDT0RFX0ZPUl9tdmVfdmZtYXFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY5MDgsNyAr NzEyNiw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxP QVQiCiAgICJ2cHN0XDt2Zm1hdC5mJSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJTMiCi0gIFsoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRf aW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmZtYXFfbl9mPG1vZGU+IikpCisgIChz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQog CiA7OwpAQCAtNjkyNSw3ICs3MTQ0LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRB UkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZmbWFzdC5mJSM8Vl9zel9lbGVtPgklcTAs ICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmZtYXNx X25fZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0 dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY5NDIsNyArNzE2Miw4IEBACiAgIF0KICAgIlRB UkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2Zm1zdC5m JSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAi Q09ERV9GT1JfbXZlX3ZmbXNxX2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02OTU5LDcgKzcxODAs OCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgog ICAidnBzdFw7dm1heG5tdC5mJSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJXEzIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtYXhubXFfZjxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAog OzsKQEAgLTY5NzYsNyArNzE5OCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJH RVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2bWlubm10LmYlIzxWX3N6X2VsZW0+CSVxMCwg JXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1pbm5t cV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0 ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjk5Myw3ICs3MjE2LDggQEAKICAgXQogICAiVEFS R0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZtdWx0LmYl IzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJD T0RFX0ZPUl9tdmVfdm11bHFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTcwMTAsNyArNzIzNCw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAg ICJ2cHN0XDt2bXVsdC5mJSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm11bHFfbl9mPG1vZGU+IikpCisgIChzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpA QCAtNzAyNyw3ICs3MjUyLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9I QVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3Zvcm50ICVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5z biIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm9ybnFfZjxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsK QEAgLTcwNDQsNyArNzI3MCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRf SEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2b3JydCAlcTAsICVxMiwgJXEzIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZvcnJxX2Y8bW9kZT4iKSkKKyAgKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7 CkBAIC03MDYxLDcgKzcyODgsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VU X0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dnN1YnQuZiUjPFZfc3pfZWxlbT5cdCVxMCwgJXEy LCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12 ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN1YnFfZjxt b2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxl bmd0aCIiOCIpXSkKIAogOzsKQEAgLTcwNzgsNyArNzMwNiw4IEBACiAgIF0KICAgIlRBUkdFVF9I QVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2c3VidC5mJSM8Vl9z el9lbGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQor IFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9G T1JfbXZlX3ZzdWJxX25fZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTcyNDUsNyArNzQ3NCw4IEBA CiAJICBWU1RSQlNPUSkpXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnN0cmJ0LjxW X3N6X2VsZW0+XHQlcTIsIFslMCwgJXExXSIKLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92c3RyYnFfc2NhdHRlcl9vZmZzZXRfPHN1cGY+PG1vZGU+X2luc24iKSkKKyAgKHNl dF9hdHRyICJsZW5ndGgiICI4IildKQogCiA7OwogOzsgW3ZzdHJ3cV9zY2F0dGVyX2Jhc2VfcF9z IHZzdHJ3cV9zY2F0dGVyX2Jhc2VfcF91XQpAQCAtNzI2OCw3ICs3NDk4LDggQEAKICAgIG91dHB1 dF9hc21faW5zbiAoInZwc3Rcblx0dnN0cnd0LnUzMlx0JXEyLCBbJXEwLCAlMV0iLG9wcyk7CiAg ICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN0 cndxX3NjYXR0ZXJfYmFzZV88c3VwZj52NHNpIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIp XSkKIAogOzsKIDs7IFt2c3RyYnFfcF9zIHZzdHJicV9wX3VdCkBAIC03Mjg4LDcgKzc1MTksOCBA QAogICAgb3V0cHV0X2FzbV9pbnNuICgidnBzdFw7dnN0cmJ0LjxWX3N6X2VsZW0+XHQlcTEsICVF MCIsb3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92c3RyYnFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIp XSkKIAogOzsKIDs7IFt2bGRyYnFfZ2F0aGVyX29mZnNldF96X3MgdmxkcmJxX2dhdGhlcl9vZmZz ZXRfel91XQpAQCAtNzMxMyw3ICs3NTQ1LDggQEAKICAgICAgb3V0cHV0X2FzbV9pbnNuICgidnBz dFxuXHR2bGRyYnQuPHN1cGY+PFZfc3pfZWxlbT5cdCVxMCwgWyVtMSwgJXEyXSIsb3BzKTsKICAg IHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0 ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bGRy YnFfZ2F0aGVyX29mZnNldF88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4 IildKQogCiA7OwogOzsgW3ZsZHJicV96X3MgdmxkcmJxX3pfdV0KQEAgLTczMzYsNyArNzU2OSw4 IEBACiAgICAgIG91dHB1dF9hc21faW5zbiAoInZwc3RcO3ZsZHJidC48c3VwZj48Vl9zel9lbGVt Plx0JXEwLCAlRTEiLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0 aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xf cmVmICJDT0RFX0ZPUl9tdmVfdmxkcmJxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgImxl bmd0aCIgIjgiKV0pCiAKIDs7CiA7OyBbdmxkcndxX2dhdGhlcl9iYXNlX3pfcyB2bGRyd3FfZ2F0 aGVyX2Jhc2Vfel91XQpAQCAtNzM1Nyw3ICs3NTkxLDggQEAKICAgIG91dHB1dF9hc21faW5zbiAo InZwc3Rcblx0dmxkcnd0LnUzMlx0JXEwLCBbJXExLCAlMl0iLG9wcyk7CiAgICByZXR1cm4gIiI7 CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmxkcndxX2dhdGhlcl9i YXNlXzxzdXBmPnY0c2kiKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4IildKQogCiA7OwogOzsg W3ZsZHJocV9mXQpAQCAtNzQyNCw3ICs3NjU5LDggQEAKICAgICAgb3V0cHV0X2FzbV9pbnNuICgi dnBzdFxuXHR2bGRyaHQuPHN1cGY+PFZfc3pfZWxlbT5cdCVxMCwgWyVtMSwgJXEyXSIsb3BzKTsK ICAgIHJldHVybiAiIjsKIH0KLSBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zs ZHJocV9nYXRoZXJfb2Zmc2V0XzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIg IjgiKV0pCiAKIDs7CiA7OyBbdmxkcmhxX2dhdGhlcl9zaGlmdGVkX29mZnNldF9zIHZsZHJocV9n YXRoZXJfc2hpZnRlZF9vZmZzZXRfdV0KQEAgLTc0NzIsNyArNzcwOCw4IEBACiAgICAgIG91dHB1 dF9hc21faW5zbiAoInZwc3Rcblx0dmxkcmh0LjxzdXBmPjxWX3N6X2VsZW0+XHQlcTAsIFslbTEs ICVxMiwgdXh0dyAjMV0iLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxl bmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1i b2xfcmVmICJDT0RFX0ZPUl9tdmVfdmxkcmhxX2dhdGhlcl9zaGlmdGVkX29mZnNldF88c3VwZj48 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4IildKQogCiA7OwogOzsgW3ZsZHJocV9z LCB2bGRyaHFfdV0KQEAgLTc1MTQsNyArNzc1MSw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2 cHN0XDt2bGRyaHQuMTZcdCVxMCwgJUUxIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNl dF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJocV9mdjhoZiIpKQorICAoc2V0X2F0 dHIgImxlbmd0aCIgIjgiKV0pCiAKIDs7CiA7OyBbdmxkcmhxX3pfcyB2bGRyaHFfel91XQpAQCAt NzUzNyw3ICs3Nzc1LDggQEAKICAgICAgb3V0cHV0X2FzbV9pbnNuICgidnBzdFw7dmxkcmh0Ljxz dXBmPjxWX3N6X2VsZW0+XHQlcTAsICVFMSIsb3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhz ZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bGRyaHFfPHN1cGY+PG1vZGU+IikpCisg IChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2bGRyd3FfZl0KQEAgLTc1OTUs NyArNzgzNCw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2cHN0XDt2bGRyd3QuMzJcdCVxMCwg JUUxIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI4Iild KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZsZHJ3cV9mdjRzZiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCiAK IDs7CiA7OyBbdmxkcndxX3pfcyB2bGRyd3Ffel91XQpAQCAtNzYxNSw3ICs3ODU1LDggQEAKICAg IG91dHB1dF9hc21faW5zbiAoInZwc3RcO3ZsZHJ3dC4zMlx0JXEwLCAlRTEiLG9wcyk7CiAgICBy ZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmxkcndx XzxzdXBmPnY0c2kiKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4IildKQogCiAoZGVmaW5lX2V4 cGFuZCAibXZlX3ZsZDFxX2Y8bW9kZT4iCiAgIFsobWF0Y2hfb3BlcmFuZDpNVkVfMCAwICJzX3Jl Z2lzdGVyX29wZXJhbmQiKQpAQCAtNzY3Niw3ICs3OTE3LDggQEAKICAgIG91dHB1dF9hc21faW5z biAoInZwc3Rcblx0dmxkcmR0LnU2NFx0JXEwLCBbJXExLCAlMl0iLG9wcyk7CiAgICByZXR1cm4g IiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91 bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmxkcmRxX2dhdGhl cl9iYXNlXzxzdXBmPnYyZGkiKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4IildKQogCiA7Owog OzsgW3ZsZHJkcV9nYXRoZXJfb2Zmc2V0X3MgdmxkcmRxX2dhdGhlcl9vZmZzZXRfdV0KQEAgLTc3 MTcsNyArNzk1OSw4IEBACiAgIG91dHB1dF9hc21faW5zbiAoInZwc3Rcblx0dmxkcmR0LnU2NFx0 JXEwLCBbJW0xLCAlcTJdIixvcHMpOwogICByZXR1cm4gIiI7CiB9Ci0gWyhzZXRfYXR0ciAibGVu Z3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92bGRyZHFfZ2F0aGVyX29mZnNldF88c3VwZj52MmRpIikpCisg IChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2bGRyZHFfZ2F0aGVyX3NoaWZ0 ZWRfb2Zmc2V0X3MgdmxkcmRxX2dhdGhlcl9zaGlmdGVkX29mZnNldF91XQpAQCAtNzc1OCw3ICs4 MDAxLDggQEAKICAgIG91dHB1dF9hc21faW5zbiAoInZwc3Rcblx0dmxkcmR0LnU2NFx0JXEwLCBb JW0xLCAlcTIsIHV4dHcgIzNdIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRy ICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJkcV9nYXRoZXJfc2hpZnRlZF9vZmZzZXRfPHN1 cGY+djJkaSIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCiAKIDs7CiA7OyBbdmxkcmhx X2dhdGhlcl9vZmZzZXRfZl0KQEAgLTc4MDAsNyArODA0NCw4IEBACiAgICBvdXRwdXRfYXNtX2lu c24gKCJ2cHN0XG5cdHZsZHJodC5mMTZcdCVxMCwgWyVtMSwgJXEyXSIsb3BzKTsKICAgIHJldHVy biAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bGRyaHFfZ2F0 aGVyX29mZnNldF9mdjhoZiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCiAKIDs7CiA7 OyBbdmxkcmhxX2dhdGhlcl9zaGlmdGVkX29mZnNldF9mXQpAQCAtNzg0Miw3ICs4MDg3LDggQEAK ICAgIG91dHB1dF9hc21faW5zbiAoInZwc3Rcblx0dmxkcmh0LmYxNlx0JXEwLCBbJW0xLCAlcTIs IHV4dHcgIzFdIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgi ICI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3Jl ZiAiQ09ERV9GT1JfbXZlX3ZsZHJocV9nYXRoZXJfc2hpZnRlZF9vZmZzZXRfZnY4aGYiKSkKKyAg KHNldF9hdHRyICJsZW5ndGgiICI4IildKQogCiA7OwogOzsgW3ZsZHJ3cV9nYXRoZXJfYmFzZV9m XQpAQCAtNzg4Myw3ICs4MTI5LDggQEAKICAgIG91dHB1dF9hc21faW5zbiAoInZwc3Rcblx0dmxk cnd0LnUzMlx0JXEwLCBbJXExLCAlMl0iLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0 X2F0dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5z biIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmxkcndxX2dhdGhlcl9iYXNlX2Z2NHNmIikp CisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2bGRyd3FfZ2F0aGVyX29m ZnNldF9mXQpAQCAtNzk0NSw3ICs4MTkyLDggQEAKICAgIG91dHB1dF9hc21faW5zbiAoInZwc3Rc blx0dmxkcnd0LnUzMlx0JXEwLCBbJW0xLCAlcTJdIixvcHMpOwogICAgcmV0dXJuICIiOwogfQot ICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNh dGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJ3cV9nYXRoZXJfb2Zmc2V0 X2Z2NHNmIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2bGRyd3Ff Z2F0aGVyX29mZnNldF96X3MgdmxkcndxX2dhdGhlcl9vZmZzZXRfel91XQpAQCAtNzk2Nyw3ICs4 MjE1LDggQEAKICAgIG91dHB1dF9hc21faW5zbiAoInZwc3Rcblx0dmxkcnd0LnUzMlx0JXEwLCBb JW0xLCAlcTJdIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgi ICI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3Jl ZiAiQ09ERV9GT1JfbXZlX3ZsZHJ3cV9nYXRoZXJfb2Zmc2V0XzxzdXBmPnY0c2kiKSkKKyAgKHNl dF9hdHRyICJsZW5ndGgiICI4IildKQogCiA7OwogOzsgW3ZsZHJ3cV9nYXRoZXJfc2hpZnRlZF9v ZmZzZXRfZl0KQEAgLTgwMjksNyArODI3OCw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2cHN0 XG5cdHZsZHJ3dC51MzJcdCVxMCwgWyVtMSwgJXEyLCB1eHR3ICMyXSIsb3BzKTsKICAgIHJldHVy biAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bGRyd3FfZ2F0 aGVyX3NoaWZ0ZWRfb2Zmc2V0X2Z2NHNmIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkK IAogOzsKIDs7IFt2bGRyd3FfZ2F0aGVyX3NoaWZ0ZWRfb2Zmc2V0X3pfcyB2bGRyd3FfZ2F0aGVy X3NoaWZ0ZWRfb2Zmc2V0X3pfdV0KQEAgLTgwNTEsNyArODMwMSw4IEBACiAgICBvdXRwdXRfYXNt X2luc24gKCJ2cHN0XG5cdHZsZHJ3dC51MzJcdCVxMCwgWyVtMSwgJXEyLCB1eHR3ICMyXSIsb3Bz KTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNl dCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212 ZV92bGRyd3FfZ2F0aGVyX3NoaWZ0ZWRfb2Zmc2V0XzxzdXBmPnY0c2kiKSkKKyAgKHNldF9hdHRy ICJsZW5ndGgiICI4IildKQogCiA7OwogOzsgW3ZzdHJocV9mXQpAQCAtODA5MCw3ICs4MzQxLDgg QEAKICAgIG91dHB1dF9hc21faW5zbiAoInZwc3RcO3ZzdHJodC4xNlx0JXExLCAlRTAiLG9wcyk7 CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQg KGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVf dnN0cmhxX2Z2OGhmIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2 c3RyaHFfcF9zIHZzdHJocV9wX3VdCkBAIC04MTEwLDcgKzgzNjIsOCBAQAogICAgb3V0cHV0X2Fz bV9pbnNuICgidnBzdFw7dnN0cmh0LjxWX3N6X2VsZW0+XHQlcTEsICVFMCIsb3BzKTsKICAgIHJl dHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92c3RyaHFf PHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2 c3RyaHFfc2NhdHRlcl9vZmZzZXRfcF9zIHZzdHJocV9zY2F0dGVyX29mZnNldF9wX3VdCkBAIC04 MTQyLDcgKzgzOTUsOCBAQAogCSAgVlNUUkhTT1EpKV0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAg InZwc3RcO3ZzdHJodC48Vl9zel9lbGVtPlx0JXEyLCBbJTAsICVxMV0iCi0gIFsoc2V0X2F0dHIg Imxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChz eW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN0cmhxX3NjYXR0ZXJfb2Zmc2V0XzxzdXBmPjxtb2Rl Pl9pbnNuIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2c3RyaHFf c2NhdHRlcl9vZmZzZXRfcyB2c3RyaHFfc2NhdHRlcl9vZmZzZXRfdV0KQEAgLTgyMDIsNyArODQ1 Niw4IEBACiAJICBWU1RSSFNTT1EpKV0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3Zz dHJodC48Vl9zel9lbGVtPlx0JXEyLCBbJTAsICVxMSwgdXh0dyAjMV0iCi0gIFsoc2V0X2F0dHIg Imxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChz eW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN0cmhxX3NjYXR0ZXJfc2hpZnRlZF9vZmZzZXRfPHN1 cGY+PG1vZGU+X2luc24iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4IildKQogCiA7OwogOzsg W3ZzdHJocV9zY2F0dGVyX3NoaWZ0ZWRfb2Zmc2V0X3MgdnN0cmhxX3NjYXR0ZXJfc2hpZnRlZF9v ZmZzZXRfdV0KQEAgLTgyODksNyArODU0NCw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2cHN0 XDt2c3Ryd3QuMzJcdCVxMSwgJUUwIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9h dHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJ3cV9mdjRzZiIpKQorICAoc2V0X2F0dHIg Imxlbmd0aCIgIjgiKV0pCiAKIDs7CiA7OyBbdnN0cndxX3BfcyB2c3Ryd3FfcF91XQpAQCAtODMw OSw3ICs4NTY1LDggQEAKICAgIG91dHB1dF9hc21faW5zbiAoInZwc3RcO3ZzdHJ3dC4zMlx0JXEx LCAlRTAiLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgi KV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJD T0RFX0ZPUl9tdmVfdnN0cndxXzxzdXBmPnY0c2kiKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4 IildKQogCiA7OwogOzsgW3ZzdHJ3cV9zIHZzdHJ3cV91XQpAQCAtODM3MSw3ICs4NjI4LDggQEAK ICAgIG91dHB1dF9hc21faW5zbiAoInZwc3RcO1x0dnN0cmR0LnU2NFx0JXEyLCBbJXEwLCAlMV0i LG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdnN0cmRxX3NjYXR0ZXJfYmFzZV88c3VwZj52MmRpIikpCisgIChzZXRfYXR0ciAibGVu Z3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2c3RyZHFfc2NhdHRlcl9iYXNlX3MgdnN0cmRxX3NjYXR0 ZXJfYmFzZV91XQpAQCAtODQyNCw3ICs4NjgyLDggQEAKIAkgIFZTVFJEU09RKSldCiAgICJUQVJH RVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2c3RyZHQuNjRcdCVxMiwgWyUwLCAlcTFdIgotICBbKHNl dF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJkcV9zY2F0dGVyX29mZnNldF88c3Vw Zj52MmRpX2luc24iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4IildKQogCiA7OwogOzsgW3Zz dHJkcV9zY2F0dGVyX29mZnNldF9zIHZzdHJkcV9zY2F0dGVyX29mZnNldF91XQpAQCAtODQ4NCw3 ICs4NzQzLDggQEAKIAkgIFZTVFJEU1NPUSkpXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBz dFw7dnN0cmR0LjY0XHQlcTIsIFslMCwgJXExLCBVWFRXICMzXSIKLSAgWyhzZXRfYXR0ciAibGVu Z3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92c3RyZHFfc2NhdHRlcl9zaGlmdGVkX29mZnNldF88c3VwZj52 MmRpX2luc24iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4IildKQogCiA7OwogOzsgW3ZzdHJk cV9zY2F0dGVyX3NoaWZ0ZWRfb2Zmc2V0X3MgdnN0cmRxX3NjYXR0ZXJfc2hpZnRlZF9vZmZzZXRf dV0KQEAgLTg1NzIsNyArODgzMiw4IEBACiAJICBWU1RSSFFTT19GKSldCiAgICJUQVJHRVRfSEFW RV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dnN0cmh0LjE2XHQlcTIs IFslMCwgJXExXSIKLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92c3RyaHFf c2NhdHRlcl9vZmZzZXRfZnY4aGZfaW5zbiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0p CiAKIDs7CiA7OyBbdnN0cmhxX3NjYXR0ZXJfc2hpZnRlZF9vZmZzZXRfZl0KQEAgLTg2MzIsNyAr ODg5Myw4IEBACiAJICBWU1RSSFFTU09fRikpXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdF VF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZzdHJodC4xNlx0JXEyLCBbJTAsICVxMSwgdXh0 dyAjMV0iCi0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91 bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN0cmhxX3NjYXR0 ZXJfc2hpZnRlZF9vZmZzZXRfZnY4aGZfaW5zbiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjgi KV0pCiAKIDs7CiA7OyBbdnN0cndxX3NjYXR0ZXJfYmFzZV9mXQpAQCAtODY3Nyw3ICs4OTM5LDgg QEAKICAgIG91dHB1dF9hc21faW5zbiAoInZwc3Rcblx0dnN0cnd0LnUzMlx0JXEyLCBbJXEwLCAl MV0iLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0p CisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RF X0ZPUl9tdmVfdnN0cndxX3NjYXR0ZXJfYmFzZV9mdjRzZiIpKQorICAoc2V0X2F0dHIgImxlbmd0 aCIgIjgiKV0pCiAKIDs7CiA7OyBbdnN0cndxX3NjYXR0ZXJfb2Zmc2V0X2ZdCkBAIC04NzM2LDcg Kzg5OTksOCBAQAogCSAgVlNUUldRU09fRikpXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdF VF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZzdHJ3dC4zMlx0JXEyLCBbJTAsICVxMV0iCi0g IFsoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0 ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN0cndxX3NjYXR0ZXJfb2Zmc2V0 X2Z2NHNmX2luc24iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4IildKQogCiA7OwogOzsgW3Zz dHJ3cV9zY2F0dGVyX29mZnNldF9zIHZzdHJ3cV9zY2F0dGVyX29mZnNldF91XQpAQCAtODc2Nyw3 ICs5MDMxLDggQEAKIAkgIFZTVFJXU09RKSldCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0 XDt2c3Ryd3QuMzJcdCVxMiwgWyUwLCAlcTFdIgotICBbKHNldF9hdHRyICJsZW5ndGgiICI4Iild KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZzdHJ3cV9zY2F0dGVyX29mZnNldF88c3VwZj52NHNpX2luc24iKSkKKyAgKHNl dF9hdHRyICJsZW5ndGgiICI4IildKQogCiA7OwogOzsgW3ZzdHJ3cV9zY2F0dGVyX29mZnNldF9z IHZzdHJ3cV9zY2F0dGVyX29mZnNldF91XQpAQCAtODg1NSw3ICs5MTIwLDggQEAKIAkgIFZTVFJX UVNTT19GKSldCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgog ICAidnBzdFw7dnN0cnd0LjMyXHQlcTIsIFslMCwgJXExLCB1eHR3ICMyXSIKLSAgWyhzZXRfYXR0 ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikg KHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92c3Ryd3Ffc2NhdHRlcl9zaGlmdGVkX29mZnNldF9m djRzZl9pbnNuIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2c3Ry d3Ffc2NhdHRlcl9zaGlmdGVkX29mZnNldF9wX3MgdnN0cndxX3NjYXR0ZXJfc2hpZnRlZF9vZmZz ZXRfcF91XQpAQCAtODg4Nyw3ICs5MTUzLDggQEAKIAkgIFZTVFJXU1NPUSkpXQogICAiVEFSR0VU X0hBVkVfTVZFIgogICAidnBzdFw7dnN0cnd0LjMyXHQlcTIsIFslMCwgJXExLCB1eHR3ICMyXSIK LSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92c3Ryd3Ffc2NhdHRlcl9zaGlm dGVkX29mZnNldF88c3VwZj52NHNpX2luc24iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4Iild KQogCiA7OwogOzsgW3ZzdHJ3cV9zY2F0dGVyX3NoaWZ0ZWRfb2Zmc2V0X3MgdnN0cndxX3NjYXR0 ZXJfc2hpZnRlZF9vZmZzZXRfdV0KQEAgLTkwMTIsNyArOTI3OSw4IEBACiAJCShtYXRjaF9vcGVy YW5kOlNJIDYgImltbWVkaWF0ZV9vcGVyYW5kIiAiaSIpKSldCiAgIlRBUkdFVF9IQVZFX01WRSIK ICAidnBzdFw7XHR2aWR1cHQudSUjPFZfc3pfZWxlbT5cdCVxMCwgJTIsICU0IgotIFsoc2V0X2F0 dHIgImxlbmd0aCIiOCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikg KHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92aWR1cHFfdTxtb2RlPl9pbnNuIikpCisgIChzZXRf YXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwogOzsgW3ZkZHVwcV9uX3VdKQpAQCAtOTA4MCw3ICs5 MzQ4LDggQEAKIAkJIChtYXRjaF9vcGVyYW5kOlNJIDYgImltbWVkaWF0ZV9vcGVyYW5kIiAiaSIp KSldCiAgIlRBUkdFVF9IQVZFX01WRSIKICAidnBzdFw7XHR2ZGR1cHQudSUjPFZfc3pfZWxlbT5c dCVxMCwgJTIsICU0IgotIFsoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92ZGR1cHFf dTxtb2RlPl9pbnNuIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwogOzsgW3Zk d2R1cHFfbl91XSkKQEAgLTkxOTYsNyArOTQ2NSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01W RSIKICAgInZwc3RcO1x0dmR3ZHVwdC51JSM8Vl9zel9lbGVtPlx0JXEyLCAlMywgJVI0LCAlNSIK LSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJl ZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92ZHdkdXBxX3diX3U8bW9k ZT5faW5zbiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIg Imxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTkzMTMsNyArOTU4Myw4IEBACiAgIF0KICAgIlRBUkdF VF9IQVZFX01WRSIKICAgInZwc3RcO1x0dml3ZHVwdC51JSM8Vl9zel9lbGVtPlx0JXEyLCAlMywg JVI0LCAlNSIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92aXdkdXBx X3diX3U8bW9kZT5faW5zbiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAo c2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTkzNjUsNyArOTYzNiw4IEBACiAgICBv dXRwdXRfYXNtX2luc24gKCJ2cHN0XDtcdHZzdHJ3dC51MzJcdCVxMiwgWyVxMCwgJTFdISIsb3Bz KTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNl dCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212 ZV92c3Ryd3Ffc2NhdHRlcl9iYXNlX3diXzxzdXBmPnY0c2kiKSkKKyAgKHNldF9hdHRyICJsZW5n dGgiICI4IildKQogCiA7OwogOzsgW3ZzdHJ3cV9zY2F0dGVyX2Jhc2Vfd2JfZl0KQEAgLTk0MTYs NyArOTY4OCw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2cHN0XDtcdHZzdHJ3dC51MzJcdCVx MiwgWyVxMCwgJTFdISIsb3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVu Z3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92c3Ryd3Ffc2NhdHRlcl9iYXNlX3diX2Z2NHNmIikpCisgIChz ZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2c3RyZHFfc2NhdHRlcl9iYXNlX3di X3MgdnN0cmRxX3NjYXR0ZXJfYmFzZV93Yl91XQpAQCAtOTQ2Nyw3ICs5NzQwLDggQEAKICAgIG91 dHB1dF9hc21faW5zbiAoInZwc3Q7dnN0cmR0LnU2NFx0JXEyLCBbJXEwLCAlMV0hIixvcHMpOwog ICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zz dHJkcV9zY2F0dGVyX2Jhc2Vfd2JfPHN1cGY+djJkaSIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIg IjgiKV0pCiAKIChkZWZpbmVfZXhwYW5kICJtdmVfdmxkcndxX2dhdGhlcl9iYXNlX3diXzxzdXBm PnY0c2kiCiAgIFsobWF0Y2hfb3BlcmFuZDpWNFNJIDAgInNfcmVnaXN0ZXJfb3BlcmFuZCIpCkBA IC05NTc1LDcgKzk4NDksOCBAQAogICAgb3V0cHV0X2FzbV9pbnNuICgidnBzdFw7dmxkcnd0LnUz Mlx0JXEwLCBbJXExLCAlMl0hIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRy ICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJ3cV9nYXRoZXJfYmFzZV93Yl88c3VwZj52NHNp X2luc24iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4IildKQogCiAoZGVmaW5lX2V4cGFuZCAi bXZlX3ZsZHJ3cV9nYXRoZXJfYmFzZV93Yl9mdjRzZiIKICAgWyhtYXRjaF9vcGVyYW5kOlY0U0kg MCAic19yZWdpc3Rlcl9vcGVyYW5kIikKQEAgLTk2ODQsNyArOTk1OSw4IEBACiAgICBvdXRwdXRf YXNtX2luc24gKCJ2cHN0XDt2bGRyd3QudTMyXHQlcTAsIFslcTEsICUyXSEiLG9wcyk7CiAgICBy ZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmxkcndx X2dhdGhlcl9iYXNlX3diX2Z2NHNmX2luc24iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4Iild KQogCiAoZGVmaW5lX2V4cGFuZCAibXZlX3ZsZHJkcV9nYXRoZXJfYmFzZV93Yl88c3VwZj52MmRp IgogICBbKG1hdGNoX29wZXJhbmQ6VjJESSAwICJzX3JlZ2lzdGVyX29wZXJhbmQiKQpAQCAtOTgw OSw3ICsxMDA4NSw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2cHN0XDt2bGRyZHQudTY0XHQl cTAsIFslcTEsICUyXSEiLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxl bmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1i b2xfcmVmICJDT0RFX0ZPUl9tdmVfdmxkcmRxX2dhdGhlcl9iYXNlX3diXzxzdXBmPnYyZGlfaW5z biIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCiA7OwogOzsgW3ZhZGNpcV9tX3MsIHZh ZGNpcV9tX3VdKQogOzsKQEAgLTk4MjYsNyArMTAxMDMsOCBAQAogICBdCiAgICJUQVJHRVRfSEFW RV9NVkUiCiAgICJ2cHN0XDt2YWRjaXQuaTMyXHQlcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZhZGNpcV88c3VwZj52NHNpIikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAog OzsKQEAgLTk4NjIsNyArMTAxNDAsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2 cHN0XDt2YWRjdC5pMzJcdCVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdmFkY3FfPHN1cGY+djRzaSIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCiAKIDs7CkBAIC05ODk5LDcg KzEwMTc4LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnNiY2l0Lmkz Mlx0JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNl dCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212 ZV92c2JjaXFfPHN1cGY+djRzaSIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAg ICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCiAKIDs7CkBAIC05OTM1LDcgKzEwMjE1LDggQEAK ICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnNiY3QuaTMyXHQlcTAsICVxMiwg JXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzYmNxXzxzdXBm PnY0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJs ZW5ndGgiICI4IildKQogCiA7OwpAQCAtMTAzNTIsNyArMTA2MzMsOCBAQAogIF0KICAiVEFSR0VU X0hBVkVfTVZFIgogICJ2cHN0XDt2c2hsY3RcdCVxMCwgJTEsICU0IgotIFsoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChz eW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnNobGNxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsg Q0RFIGluc3RydWN0aW9ucyBvbiBNVkUgcmVnaXN0ZXJzLgpAQCAtMTA0MzUsNyArMTA3MTcsOCBA QAogCSBDREVfVkNYKSldCiAgICJUQVJHRVRfQ0RFICYmIFRBUkdFVF9IQVZFX01WRSIKICAgInZw c3RcO3ZjeDE8YT50XFx0cCVjMSwgJXEwLCAjJWMzIgotICBbKHNldF9hdHRyICJ0eXBlIiAiY29w cm9jIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX2FybV92Y3gxcTxhPnYxNnFpIikpCisgIChzZXRfYXR0ciAidHlwZSIgImNvcHJv YyIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0KICkKIApAQCAtMTA0NDksNyArMTA3MzIs OCBAQAogCSBDREVfVkNYKSldCiAgICJUQVJHRVRfQ0RFICYmIFRBUkdFVF9IQVZFX01WRSIKICAg InZwc3RcO3ZjeDI8YT50XFx0cCVjMSwgJXEwLCAlcTMsICMlYzQiCi0gIFsoc2V0X2F0dHIgInR5 cGUiICJjb3Byb2MiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3lt Ym9sX3JlZiAiQ09ERV9GT1JfYXJtX3ZjeDJxPGE+djE2cWkiKSkKKyAgKHNldF9hdHRyICJ0eXBl IiAiY29wcm9jIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXQogKQogCkBAIC0xMDQ2NCw3 ICsxMDc0OCw4IEBACiAJIENERV9WQ1gpKV0KICAgIlRBUkdFVF9DREUgJiYgVEFSR0VUX0hBVkVf TVZFIgogICAidnBzdFw7dmN4MzxhPnRcXHRwJWMxLCAlcTAsICVxMywgJXE0LCAjJWM1IgotICBb KHNldF9hdHRyICJ0eXBlIiAiY29wcm9jIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRl ZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX2FybV92Y3gzcTxhPnYxNnFpIikpCisgIChz ZXRfYXR0ciAidHlwZSIgImNvcHJvYyIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0KICkK IApkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2FybS9kbHN0cC1jb21waWxl LWFzbS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2FybS9kbHN0cC1jb21waWxlLWFzbS5j Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAuLmVjNmVlNzc0Y2JkYTY2MDRjNGMyNGI1N2NkNGQ1ZDNiZDA4ZTA3Y2QKLS0t IC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvYXJtL2Rsc3RwLWNvbXBp bGUtYXNtLmMKQEAgLTAsMCArMSw4MiBAQAorLyogeyBkZy1kbyBjb21waWxlIHsgdGFyZ2V0IHsg YXJtKi0qLSogfSB9IH0gKi8KKy8qIHsgZGctcmVxdWlyZS1lZmZlY3RpdmUtdGFyZ2V0IGFybV92 OF8xbV9tdmVfb2sgfSAqLworLyogeyBkZy1za2lwLWlmICJhdm9pZCBjb25mbGljdGluZyBtdWx0 aWxpYiBvcHRpb25zIiB7ICotKi0qIH0geyAiLW1hcm0iICItbWNwdT0qIiB9IH0gKi8KKy8qIHsg ZGctb3B0aW9ucyAiLW1hcmNoPWFybXY4LjEtbS5tYWluK2ZwLmRwK212ZS5mcCAtTzMiIH0gKi8K KworI2luY2x1ZGUgPGFybV9tdmUuaD4KKworI2RlZmluZSBJTU0gNQorCisjZGVmaW5lIFRFU1Rf Q09NUElMRV9JTl9ETFNUUF9URVJOQVJZKEJJVFMsIExBTkVTLCBMRFJTVFJZVFBFLCBUWVBFLCBT SUdOLCBOQU1FLCBQUkVEKQkJCQlcCit2b2lkIHRlc3RfIyNOQU1FIyNQUkVEIyNfIyNTSUdOIyNC SVRTIChUWVBFIyNCSVRTIyNfdCAqYSwgVFlQRSMjQklUUyMjX3QgKmIsICBUWVBFIyNCSVRTIyNf dCAqYywgaW50IG4pCVwKK3sJCQkJCQkJCQkJCVwKKyAgd2hpbGUgKG4gPiAwKQkJCQkJCQkJCQlc CisgICAgewkJCQkJCQkJCQkJXAorICAgICAgbXZlX3ByZWQxNl90IHAgPSB2Y3RwIyNCSVRTIyNx IChuKTsJCQkJCQlcCisgICAgICBUWVBFIyNCSVRTIyN4IyNMQU5FUyMjX3QgdmEgPSB2bGRyIyNM RFJTVFJZVFBFIyNxX3pfIyNTSUdOIyNCSVRTIChhLCBwKTsJCVwKKyAgICAgIFRZUEUjI0JJVFMj I3gjI0xBTkVTIyNfdCB2YiA9IHZsZHIjI0xEUlNUUllUUEUjI3Ffel8jI1NJR04jI0JJVFMgKGIs IHApOwkJXAorICAgICAgVFlQRSMjQklUUyMjeCMjTEFORVMjI190IHZjID0gTkFNRSMjUFJFRCMj XyMjU0lHTiMjQklUUyAodmEsIHZiLCBwKTsJCVwKKyAgICAgIHZzdHIjI0xEUlNUUllUUEUjI3Ff cF8jI1NJR04jI0JJVFMgKGMsIHZjLCBwKTsJCQkJCVwKKyAgICAgIGMgKz0gTEFORVM7CQkJCQkJ CQkJXAorICAgICAgYSArPSBMQU5FUzsJCQkJCQkJCQlcCisgICAgICBiICs9IExBTkVTOwkJCQkJ CQkJCVwKKyAgICAgIG4gLT0gTEFORVM7CQkJCQkJCQkJXAorICAgIH0JCQkJCQkJCQkJCVwKK30K KworI2RlZmluZSBURVNUX0NPTVBJTEVfSU5fRExTVFBfU0lHTkVEX1VOU0lHTkVEX1RFUk5BUlko QklUUywgTEFORVMsIExEUlNUUllUUEUsIE5BTUUsIFBSRUQpCVwKK1RFU1RfQ09NUElMRV9JTl9E TFNUUF9URVJOQVJZIChCSVRTLCBMQU5FUywgTERSU1RSWVRQRSwgaW50LCBzLCBOQU1FLCBQUkVE KQkJCVwKK1RFU1RfQ09NUElMRV9JTl9ETFNUUF9URVJOQVJZIChCSVRTLCBMQU5FUywgTERSU1RS WVRQRSwgdWludCwgdSwgTkFNRSwgUFJFRCkKKworI2RlZmluZSBURVNUX0NPTVBJTEVfSU5fRExT VFBfSU5UQklUU19TSUdORURfVU5TSUdORURfVEVSTkFSWShOQU1FLCBQUkVEKQkJCVwKK1RFU1Rf Q09NUElMRV9JTl9ETFNUUF9TSUdORURfVU5TSUdORURfVEVSTkFSWSAoOCwgMTYsIGIsIE5BTUUs IFBSRUQpCQkJCVwKK1RFU1RfQ09NUElMRV9JTl9ETFNUUF9TSUdORURfVU5TSUdORURfVEVSTkFS WSAoMTYsIDgsIGgsIE5BTUUsIFBSRUQpCQkJCVwKK1RFU1RfQ09NUElMRV9JTl9ETFNUUF9TSUdO RURfVU5TSUdORURfVEVSTkFSWSAoMzIsIDQsIHcsIE5BTUUsIFBSRUQpCisKKworVEVTVF9DT01Q SUxFX0lOX0RMU1RQX0lOVEJJVFNfU0lHTkVEX1VOU0lHTkVEX1RFUk5BUlkgKHZhZGRxLCBfeCkK K1RFU1RfQ09NUElMRV9JTl9ETFNUUF9JTlRCSVRTX1NJR05FRF9VTlNJR05FRF9URVJOQVJZICh2 b3JycSwgX3gpCisKKworI2RlZmluZSBURVNUX0NPTVBJTEVfSU5fRExTVFBfVEVSTkFSWV9OKEJJ VFMsIExBTkVTLCBMRFJTVFJZVFBFLCBUWVBFLCBTSUdOLCBOQU1FLCBQUkVEKQlcCit2b2lkIHRl c3RfIyNOQU1FIyNQUkVEIyNfbl8jI1NJR04jI0JJVFMgKFRZUEUjI0JJVFMjI190ICphLCAgVFlQ RSMjQklUUyMjX3QgKmMsIGludCBuKQlcCit7CQkJCQkJCQkJCQlcCisgIHdoaWxlIChuID4gMCkJ CQkJCQkJCQkJXAorICAgIHsJCQkJCQkJCQkJCVwKKyAgICAgIG12ZV9wcmVkMTZfdCBwID0gdmN0 cCMjQklUUyMjcSAobik7CQkJCQkJXAorICAgICAgVFlQRSMjQklUUyMjeCMjTEFORVMjI190IHZh ID0gdmxkciMjTERSU1RSWVRQRSMjcV96XyMjU0lHTiMjQklUUyAoYSwgcCk7CQlcCisgICAgICBU WVBFIyNCSVRTIyN4IyNMQU5FUyMjX3QgdmMgPSBOQU1FIyNQUkVEIyNfbl8jI1NJR04jI0JJVFMg KHZhLCBJTU0sIHApOwkJXAorICAgICAgdnN0ciMjTERSU1RSWVRQRSMjcV9wXyMjU0lHTiMjQklU UyAoYywgdmMsIHApOwkJCQkJXAorICAgICAgYyArPSBMQU5FUzsJCQkJCQkJCQlcCisgICAgICBh ICs9IExBTkVTOwkJCQkJCQkJCVwKKyAgICAgIG4gLT0gTEFORVM7CQkJCQkJCQkJXAorICAgIH0J CQkJCQkJCQkJCVwKK30KKworI2RlZmluZSBURVNUX0NPTVBJTEVfSU5fRExTVFBfU0lHTkVEX1VO U0lHTkVEX1RFUk5BUllfTihCSVRTLCBMQU5FUywgTERSU1RSWVRQRSwgTkFNRSwgUFJFRCkJXAor VEVTVF9DT01QSUxFX0lOX0RMU1RQX1RFUk5BUllfTiAoQklUUywgTEFORVMsIExEUlNUUllUUEUs IGludCwgcywgTkFNRSwgUFJFRCkJCQlcCitURVNUX0NPTVBJTEVfSU5fRExTVFBfVEVSTkFSWV9O IChCSVRTLCBMQU5FUywgTERSU1RSWVRQRSwgdWludCwgdSwgTkFNRSwgUFJFRCkKKworI2RlZmlu ZSBURVNUX0NPTVBJTEVfSU5fRExTVFBfSU5UQklUU19TSUdORURfVU5TSUdORURfVEVSTkFSWV9O KE5BTUUsIFBSRUQpCQkJXAorVEVTVF9DT01QSUxFX0lOX0RMU1RQX1NJR05FRF9VTlNJR05FRF9U RVJOQVJZX04gKDgsIDE2LCBiLCBOQU1FLCBQUkVEKQkJCQlcCitURVNUX0NPTVBJTEVfSU5fRExT VFBfU0lHTkVEX1VOU0lHTkVEX1RFUk5BUllfTiAoMTYsIDgsIGgsIE5BTUUsIFBSRUQpCQkJCVwK K1RFU1RfQ09NUElMRV9JTl9ETFNUUF9TSUdORURfVU5TSUdORURfVEVSTkFSWV9OICgzMiwgNCwg dywgTkFNRSwgUFJFRCkKKworVEVTVF9DT01QSUxFX0lOX0RMU1RQX0lOVEJJVFNfU0lHTkVEX1VO U0lHTkVEX1RFUk5BUllfTiAodmFkZHEsIF94KQorVEVTVF9DT01QSUxFX0lOX0RMU1RQX0lOVEJJ VFNfU0lHTkVEX1VOU0lHTkVEX1RFUk5BUllfTiAodm11bHEsIF94KQorVEVTVF9DT01QSUxFX0lO X0RMU1RQX0lOVEJJVFNfU0lHTkVEX1VOU0lHTkVEX1RFUk5BUllfTiAodnN1YnEsIF94KQorVEVT VF9DT01QSUxFX0lOX0RMU1RQX0lOVEJJVFNfU0lHTkVEX1VOU0lHTkVEX1RFUk5BUllfTiAodmhh ZGRxLCBfeCkKKworCitURVNUX0NPTVBJTEVfSU5fRExTVFBfSU5UQklUU19TSUdORURfVU5TSUdO RURfVEVSTkFSWV9OICh2YnJzcnEsIF94KQorVEVTVF9DT01QSUxFX0lOX0RMU1RQX0lOVEJJVFNf U0lHTkVEX1VOU0lHTkVEX1RFUk5BUllfTiAodnNobHEsIF94KQorVEVTVF9DT01QSUxFX0lOX0RM U1RQX0lOVEJJVFNfU0lHTkVEX1VOU0lHTkVEX1RFUk5BUllfTiAodnNocnEsIF94KQorCisKKy8q IFRoZSBmaW5hbCBudW1iZXIgb2YgRExTVFBzIGN1cnJlbnRseSBpcyBjYWxjdWxhdGVkIGJ5IHRo ZSBudW1iZXIgb2YKKyAgYFRFU1RfQ09NUElMRV9JTl9ETFNUUF9JTlRCSVRTX1NJR05FRF9VTlNJ R05FRF9URVJOQVJZLipgIG1hY3JvcyAqIDYuICAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNz ZW1ibGVyLXRpbWVzIHtcdGRsc3RwfSA1NCB9IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFz c2VtYmxlci10aW1lcyB7XHRsZXRwfSA1NCB9IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFz c2VtYmxlci1ub3QgIlx0dmN0cFx0IiB9IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2Vt Ymxlci1ub3QgIlx0dnBzdFx0IiB9IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ci1ub3QgIlAwIiB9IH0gKi8KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCg== --------------4o9CNLQ3tQRieHhby4cdQPl4--