From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2078.outbound.protection.outlook.com [40.107.22.78]) by sourceware.org (Postfix) with ESMTPS id 5ABA13858D1E for ; Tue, 31 Jan 2023 08:41:22 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 5ABA13858D1E Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=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=A5lFjXsE7bDfiNSzm663ZMQIAqd7YLHUZYdQhuw7i2A=; b=UmE/3yer1Eys/npli0HlTA5s554qoup9Phy4KW2kOE93C+hBodwOaesR5EXLuBB2X0Twf+WzT7RpGM6m5UBmGPJrccybJ/sHhDzptHFZQsvnyRXRup1rbGK+kKy/DcEE0YWPQukEMqRtYkyPmQuKAEvPE9h6yXFBe8ZYISFF8Vo= Received: from DB7PR03CA0075.eurprd03.prod.outlook.com (2603:10a6:10:72::16) by AS4PR08MB8166.eurprd08.prod.outlook.com (2603:10a6:20b:58d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6043.36; Tue, 31 Jan 2023 08:41:13 +0000 Received: from DBAEUR03FT016.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:72:cafe::fa) by DB7PR03CA0075.outlook.office365.com (2603:10a6:10:72::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6043.38 via Frontend Transport; Tue, 31 Jan 2023 08:41: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 DBAEUR03FT016.mail.protection.outlook.com (100.127.142.204) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6043.21 via Frontend Transport; Tue, 31 Jan 2023 08:41:12 +0000 Received: ("Tessian outbound 8038f0863a52:v132"); Tue, 31 Jan 2023 08:41:12 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 9c436638917a18bb X-CR-MTA-TID: 64aa7808 Received: from c3eca11185bd.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 564EDB82-0F90-4FC9-9A41-4A12B9EB4C68.1; Tue, 31 Jan 2023 08:41:03 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c3eca11185bd.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 31 Jan 2023 08:41:03 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Bu5noBWNeUAsHzzJvxoGRQr9R/GAAQhgZHiwN+4t7wGusBypwVDJ60gr8WEn3d0pepZu+/Ajbh3SdRJ9LEk6zEhF2lXqigXixtk7YXh8b9x+/UjlJyBm7XOpnphFs+r82w2yOmdDIm3F+XHgQ0vnCs7gx2OK8uBG9+irXuK/z1GObndun38B99Fp0kF3Z86vBjKWvMCW9RTzyisG+2D1VW4sq6bIYDnLF0KBvRDxzVGlw0tgrDAVKi9oqOKV0b4qtyU1EZdFQpabufJMcipxZJ2vE1yZLJeFcDKvPj4VHgkWhx02LSgeyQBofQ+REajfgMU0BCCkMBa32Fi96NdAvg== 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=A5lFjXsE7bDfiNSzm663ZMQIAqd7YLHUZYdQhuw7i2A=; b=NxsNYUiBQ01H0LDE1v71znwg9yyo/20XEuOmFMIdz3ekpvaU1+EQtF1mpK+fPtC3V+Yb2X+aCQGxxKR5mCDuPp7/0eFYjo+nHvfRrYJ6Qa2vdkFBYbnHboOoLBssFDShbwa8NFxqllNm2d5+78VyUgCCeeTxJ594B6IyYHCA62bW3Prj6SwYBmwpIPJ1qE1lJYrcbw0NBkU597BptiFkWWCEU43p8VGLDkK5ZmKeCSL2bif9uRGhXI2+td7Q+tQw8PBwzv4ig951bNVky2RZWQ0hVbWekRmaZFrTU54fhACvXVnUbcKqbW2kXJ6vi86Ionl6482bPXd0ZOx54KgSKA== 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=A5lFjXsE7bDfiNSzm663ZMQIAqd7YLHUZYdQhuw7i2A=; b=UmE/3yer1Eys/npli0HlTA5s554qoup9Phy4KW2kOE93C+hBodwOaesR5EXLuBB2X0Twf+WzT7RpGM6m5UBmGPJrccybJ/sHhDzptHFZQsvnyRXRup1rbGK+kKy/DcEE0YWPQukEMqRtYkyPmQuKAEvPE9h6yXFBe8ZYISFF8Vo= 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 AS1PR08MB7562.eurprd08.prod.outlook.com (2603:10a6:20b:471::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6043.33; Tue, 31 Jan 2023 08:40:56 +0000 Received: from DB9PR08MB6507.eurprd08.prod.outlook.com ([fe80::514:a882:342f:558f]) by DB9PR08MB6507.eurprd08.prod.outlook.com ([fe80::514:a882:342f:558f%6]) with mapi id 15.20.6043.036; Tue, 31 Jan 2023 08:40:56 +0000 Content-Type: multipart/mixed; boundary="------------KGcC4Cr2YcJetzzpHM1ZeA3P" Message-ID: Date: Tue, 31 Jan 2023 08:40:43 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 From: Stamatis Markianos-Wright Subject: [PATCH 1/2 v3] arm: Add define_attr to to create a mapping between MVE predicated and unpredicated insns To: "gcc-patches@gcc.gnu.org" Cc: Kyrylo Tkachov , "Andre Vieira (lists)" , Richard Earnshaw , "nickc@redhat.com" , ramana.gcc@gmail.com References: <93eea5fd-25c8-dc11-c49f-4c36bd84eb14@arm.com> Content-Language: en-US In-Reply-To: <93eea5fd-25c8-dc11-c49f-4c36bd84eb14@arm.com> X-ClientProxiedBy: SA0PR13CA0029.namprd13.prod.outlook.com (2603:10b6:806:130::34) To DB9PR08MB6507.eurprd08.prod.outlook.com (2603:10a6:10:25a::6) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: DB9PR08MB6507:EE_|AS1PR08MB7562:EE_|DBAEUR03FT016:EE_|AS4PR08MB8166:EE_ X-MS-Office365-Filtering-Correlation-Id: 30a1e7ad-45a8-4d4d-097a-08db0366e8c6 X-LD-Processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr 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: m745FVIad2BJ9t5ySFTtHt0CNEm3QW06XGyHKPoQXOrDtENelDFrQrTGQJrD1x+VYxf1B27cejHfmmQm4nzMdYpvtmCrAGjge0RVNNWRw/b+x88xSn4YS3fnCIbX1bRttjnWPEqWsMzW2eZNVs237lXHoog3V/5jhWCS9O1evyw1lCEUY3xGMPFIbRt1Jzf2plCo5L2XqmfrxQ3bP8TDdX/zx6XlDGuw6RM6Icwg1q7bIk2Q5RB3jVBvhc+fIiPvLEeir9o1cEFf8GIXH+moGlTw6WK38UyfE3K6ANCEaq7PKos7sKcmrMlkGzJw8pSkXWC5f9yjrG8QeotRCFWJxoM/1esDmYbQyaMrBJ/+Hi4Mbwsz+kCNJvEcff9sOb2vopWBlcKXwFN3WTZZ/iuJ4mpcV7yPZSFHJL7wMtRcDD0Uq0A5nK8STg77cgIewXUxEzRQ+0mFzac2GZWRRnQHNBBf4q+sR1dlehGmIY4OldoY+dNL8Hw3PRph0sV9kLPkplk6GPwjXDPTmasPCW1zQKP87mdUL00sYh6lweeOS7KGoCHCYWNzXQzFCHBM+az7LtUPbNoxCt/LvbZv2AmlnhVh1rxKARHOypoYfWvdEl2Kg8L0bmehlSMJeJgt3KFpy7bp0vRZNzFpoHrsbxGvPcRiZs4cUaS6paM3L4pdrPgOEpN0GYF2f01hXLL9QsS2cxCYCJYkjQGqq6if8k+8/2fWZbMgnNfiNyMDDb2uEui5l3WNeCvV72XZUwnRmEBvYqZhrxueerGSImFL3WPueqte71E80gYZWKCBmdP/x7GykE+gEfBXWoJKhQVKlw+l X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB9PR08MB6507.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230025)(4636009)(376002)(136003)(346002)(39860400002)(366004)(396003)(451199018)(6512007)(26005)(186003)(31696002)(6666004)(33964004)(53546011)(6506007)(38100700002)(86362001)(36756003)(2616005)(83380400001)(41300700001)(31686004)(8936002)(2906002)(5660300002)(235185007)(30864003)(6486002)(84970400001)(966005)(478600001)(4326008)(8676002)(66556008)(66946007)(66476007)(54906003)(6916009)(316002)(43740500002)(45980500001)(579004)(559001);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7562 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: DBAEUR03FT016.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 37682b09-0042-4197-8ac0-08db0366de39 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +YAhc3sNnabSyGDVEFgttsgksVzGHJ6gZtqhzBIQACGHbIQd+9+iwWD8/uJLWkH2A34o0gwTM17NE6yUg8nA7cwqO2McSssswPsV3aD2WqKL6V8FmdHiV0PAupTmhmIeJOvEZtgDVIQ4Sji0OhrRscoML412yTT0yYSJxBUsCZpd5xn1KyV+TF1F0CyyOt1Lk8hfD8rG1z6FUIk6bZEn5R3uBZAlv5/L9aBR40/ILduVMltUo7ArL6FTYB2a7En5WeIL12JfNJHNrJ9hgTc9cf51Yc1tux5/9PupDDVAGQXsO0YhC8bv4wA65DnrvmIQRBr85AojGmIGBBNn31YxLmLrPj/H67gfpAz/1lupDzzjWhUEPaZBtIJ2Afp86dAsjJBS0cZWY0PLaj0rDWqnkKXZVFJADOD8CR2ofp6SpE7cSezeXFFKSbE66OprYM1741Z+IglWN9gVJQII1pU7HawRL8Gare96Z/pByrJAr5K6Dzg4XmBP944cRwuxydyGOPSo6Mm1Ju6vcRcf9laVDHsbLcBqWfpUtxvsXYEvFYmoZNJX3Y5fq61Vc6PlC3C2rlkEdet8AzxzzCRgn7Ed0X4E0B/Js+31dF2ijKh1rmN9eoX0a2hBCjhgigIG3li7HUSDy26K+KQc7OGzJvmKTgxEh/zM6svEA4SiMt74++NcgD1E/r8HXFOnRGUg0ZSBkaDfh3bmCLGViRBJSh5vr+VKxngEF6vgdnaWB8PF9t84lIhIiYc9y5hLd8gICDrzdLjWtVCJb9Z2vjFF8J/9afEEDfbpW925yvoSWz3Vpa6qZscvVHmX9wKYtHNUJrV0 X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230025)(4636009)(136003)(39860400002)(376002)(346002)(396003)(451199018)(36840700001)(46966006)(40470700004)(82310400005)(84970400001)(31686004)(2906002)(5660300002)(235185007)(86362001)(336012)(47076005)(83380400001)(81166007)(8936002)(30864003)(31696002)(41300700001)(40460700003)(356005)(36756003)(6486002)(478600001)(26005)(6512007)(186003)(33964004)(6506007)(6666004)(966005)(53546011)(107886003)(82740400003)(36860700001)(54906003)(2616005)(4326008)(6916009)(70206006)(8676002)(70586007)(316002)(40480700001)(43740500002)(559001)(579004);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jan 2023 08:41:12.9897 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 30a1e7ad-45a8-4d4d-097a-08db0366e8c6 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: DBAEUR03FT016.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB8166 X-Spam-Status: No, score=-11.2 required=5.0 tests=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: --------------KGcC4Cr2YcJetzzpHM1ZeA3P Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi all, Created a v3 of these two patches. For this 1/2 patch, this includes: a) A rebase onto latest trunk and onto Andre's: https://gcc.gnu.org/pipermail/gcc-patches/2023-January/610520.html patch series. b) Minor change to the macro definitions in arm.h I recognise that we are now in Stage 4 and, even though these have been on the list since Stage 1, the 2/2 patch does contain mid-end changes, so do let me know if there's a chance to get this into GCC13 or if we should retarget this for GCC14. Thank you! Stam On 11/01/2023 14:23, Stam Markianos-Wright via Gcc-patches wrote: > ----- Respin of the below patch ----- > > In this 1/2 patch, from v1 to v2 I have added: > > * The three new helper #defines in arm.h. > > * Attribute mappings to unpredicated MVE instructions that map to > themselves. This allows us to distinguish between unpredicated > insns that do have a VPT predicated form (are VPT predicable) and > insns that do not. > > > Original email with updated Changelog at the end: > > > > 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/arm.h (MVE_VPT_PREDICATED_INSN_P): New define. >     (MVE_VPT_UNPREDICATED_INSN_P): Likewise. >     (MVE_VPT_PREDICABLE_INSN_P): Likewise. >         * config/arm/vec-common.md (mve_vshlq_): Add > attribute. >         * config/arm/mve.md (arm_vcx1q_p_v16qi): Add attribute. >     (arm_vcx1qv16qi): Likewise. >     (arm_vcx1qav16qi): Likewise. >     (arm_vcx1qv16qi): Likewise. >     (arm_vcx2q_p_v16qi): Likewise. >     (arm_vcx2qv16qi): Likewise. >     (arm_vcx2qav16qi): Likewise. >     (arm_vcx2qv16qi): Likewise. >     (arm_vcx3q_p_v16qi): Likewise. >     (arm_vcx3qv16qi): Likewise. >     (arm_vcx3qav16qi: Likewise. >     (arm_vcx3qv16qi): Likewise. >     (mve_vabavq_): Likewise. >     (mve_vabavq_p_): Likewise. >     (mve_vabdq_): Likewise. >     (mve_vabdq_f): Likewise. >     (mve_vabdq_m_): Likewise. >     (mve_vabdq_m_f): Likewise. >     (mve_vabsq_f): Likewise. >     (mve_vabsq_m_f): Likewise. >     (mve_vabsq_m_s): Likewise. >     (mve_vabsq_s): Likewise. >     (mve_vadciq_v4si): Likewise. >     (mve_vadciq_m_v4si): Likewise. >     (mve_vadcq_v4si): Likewise. >     (mve_vadcq_m_v4si): Likewise. >     (mve_vaddlvaq_v4si): Likewise. >     (mve_vaddlvaq_p_v4si): Likewise. >     (mve_vaddlvq_v4si): Likewise. >     (mve_vaddlvq_p_v4si): Likewise. >     (mve_vaddq_f): Likewise. >     (mve_vaddq_m_): Likewise. >     (mve_vaddq_m_f): Likewise. >     (mve_vaddq_m_n_): Likewise. >     (mve_vaddq_m_n_f): Likewise. >     (mve_vaddq_n_): Likewise. >     (mve_vaddq_n_f): Likewise. >     (mve_vaddq): Likewise. >     (mve_vaddvaq_): Likewise. >     (mve_vaddvaq_p_): Likewise. >     (mve_vaddvq_): Likewise. >     (mve_vaddvq_p_): Likewise. >     (mve_vandq_): Likewise. >     (mve_vandq_f): Likewise. >     (mve_vandq_m_): Likewise. >     (mve_vandq_m_f): Likewise. >     (mve_vandq_s): Likewise. >     (mve_vandq_u): Likewise. >     (mve_vbicq_): Likewise. >     (mve_vbicq_f): Likewise. >     (mve_vbicq_m_): Likewise. >     (mve_vbicq_m_f): Likewise. >     (mve_vbicq_m_n_): Likewise. >     (mve_vbicq_n_): Likewise. >     (mve_vbicq_s): Likewise. >     (mve_vbicq_u): Likewise. >     (mve_vbrsrq_m_n_): Likewise. >     (mve_vbrsrq_m_n_f): Likewise. >     (mve_vbrsrq_n_): Likewise. >     (mve_vbrsrq_n_f): Likewise. >     (mve_vcaddq_rot270_m_): Likewise. >     (mve_vcaddq_rot270_m_f): Likewise. >     (mve_vcaddq_rot270): Likewise. >     (mve_vcaddq_rot270): Likewise. >     (mve_vcaddq_rot90_m_): Likewise. >     (mve_vcaddq_rot90_m_f): Likewise. >     (mve_vcaddq_rot90): Likewise. >     (mve_vcaddq_rot90): Likewise. >     (mve_vcaddq): Likewise. >     (mve_vcaddq): Likewise. >     (mve_vclsq_m_s): Likewise. >     (mve_vclsq_s): Likewise. >     (mve_vclzq_): Likewise. >     (mve_vclzq_m_): Likewise. >     (mve_vclzq_s): Likewise. >     (mve_vclzq_u): Likewise. >     (mve_vcmlaq_m_f): Likewise. >     (mve_vcmlaq_rot180_m_f): Likewise. >     (mve_vcmlaq_rot180): Likewise. >     (mve_vcmlaq_rot270_m_f): Likewise. >     (mve_vcmlaq_rot270): Likewise. >     (mve_vcmlaq_rot90_m_f): Likewise. >     (mve_vcmlaq_rot90): Likewise. >     (mve_vcmlaq): Likewise. >     (mve_vcmlaq): Likewise. >     (mve_vcmpq_): Likewise. >     (mve_vcmpq_f): Likewise. >     (mve_vcmpq_n_): Likewise. >     (mve_vcmpq_n_f): Likewise. >     (mve_vcmpcsq_): Likewise. >     (mve_vcmpcsq_m_n_u): Likewise. >     (mve_vcmpcsq_m_u): Likewise. >     (mve_vcmpcsq_n_): Likewise. >     (mve_vcmpeqq_): Likewise. >     (mve_vcmpeqq_f): Likewise. >     (mve_vcmpeqq_m_): Likewise. >     (mve_vcmpeqq_m_f): Likewise. >     (mve_vcmpeqq_m_n_): Likewise. >     (mve_vcmpeqq_m_n_f): Likewise. >     (mve_vcmpeqq_n_): Likewise. >     (mve_vcmpeqq_n_f): Likewise. >     (mve_vcmpgeq_): Likewise. >     (mve_vcmpgeq_f): Likewise. >     (mve_vcmpgeq_m_f): Likewise. >     (mve_vcmpgeq_m_n_f): Likewise. >     (mve_vcmpgeq_m_n_s): Likewise. >     (mve_vcmpgeq_m_s): Likewise. >     (mve_vcmpgeq_n_): Likewise. >     (mve_vcmpgeq_n_f): Likewise. >     (mve_vcmpgtq_): Likewise. >     (mve_vcmpgtq_f): Likewise. >     (mve_vcmpgtq_m_f): Likewise. >     (mve_vcmpgtq_m_n_f): Likewise. >     (mve_vcmpgtq_m_n_s): Likewise. >     (mve_vcmpgtq_m_s): Likewise. >     (mve_vcmpgtq_n_): Likewise. >     (mve_vcmpgtq_n_f): Likewise. >     (mve_vcmphiq_): Likewise. >     (mve_vcmphiq_m_n_u): Likewise. >     (mve_vcmphiq_m_u): Likewise. >     (mve_vcmphiq_n_): Likewise. >     (mve_vcmpleq_): Likewise. >     (mve_vcmpleq_f): Likewise. >     (mve_vcmpleq_m_f): Likewise. >     (mve_vcmpleq_m_n_f): Likewise. >     (mve_vcmpleq_m_n_s): Likewise. >     (mve_vcmpleq_m_s): Likewise. >     (mve_vcmpleq_n_): Likewise. >     (mve_vcmpleq_n_f): Likewise. >     (mve_vcmpltq_): Likewise. >     (mve_vcmpltq_f): Likewise. >     (mve_vcmpltq_m_f): Likewise. >     (mve_vcmpltq_m_n_f): Likewise. >     (mve_vcmpltq_m_n_s): Likewise. >     (mve_vcmpltq_m_s): Likewise. >     (mve_vcmpltq_n_): Likewise. >     (mve_vcmpltq_n_f): Likewise. >     (mve_vcmpneq_): Likewise. >     (mve_vcmpneq_f): Likewise. >     (mve_vcmpneq_m_): Likewise. >     (mve_vcmpneq_m_f): Likewise. >     (mve_vcmpneq_m_n_): Likewise. >     (mve_vcmpneq_m_n_f): Likewise. >     (mve_vcmpneq_n_): Likewise. >     (mve_vcmpneq_n_f): Likewise. >     (mve_vcmulq_m_f): Likewise. >     (mve_vcmulq_rot180_m_f): Likewise. >     (mve_vcmulq_rot180): Likewise. >     (mve_vcmulq_rot270_m_f): Likewise. >     (mve_vcmulq_rot270): Likewise. >     (mve_vcmulq_rot90_m_f): Likewise. >     (mve_vcmulq_rot90): Likewise. >     (mve_vcmulq): Likewise. >     (mve_vcmulq): Likewise. >     (mve_vctpq_mhi): Likewise. >     (mve_vctpqhi): Likewise. >     (mve_vcvtaq_): Likewise. >     (mve_vcvtaq_m_): Likewise. >     (mve_vcvtbq_f16_f32v8hf): Likewise. >     (mve_vcvtbq_f32_f16v4sf): Likewise. >     (mve_vcvtbq_m_f16_f32v8hf): Likewise. >     (mve_vcvtbq_m_f32_f16v4sf): Likewise. >     (mve_vcvtmq_): Likewise. >     (mve_vcvtmq_m_): Likewise. >     (mve_vcvtnq_): Likewise. >     (mve_vcvtnq_m_): Likewise. >     (mve_vcvtpq_): Likewise. >     (mve_vcvtpq_m_): Likewise. >     (mve_vcvtq_from_f_): Likewise. >     (mve_vcvtq_m_from_f_): Likewise. >     (mve_vcvtq_m_n_from_f_): Likewise. >     (mve_vcvtq_m_n_to_f_): Likewise. >     (mve_vcvtq_m_to_f_): Likewise. >     (mve_vcvtq_n_from_f_): Likewise. >     (mve_vcvtq_n_to_f_): Likewise. >     (mve_vcvtq_to_f_): Likewise. >     (mve_vcvttq_f16_f32v8hf): Likewise. >     (mve_vcvttq_f32_f16v4sf): Likewise. >     (mve_vcvttq_m_f16_f32v8hf): Likewise. >     (mve_vcvttq_m_f32_f16v4sf): Likewise. >     (mve_vddupq_m_wb_u_insn): Likewise. >     (mve_vddupq_u_insn): Likewise. >     (mve_vdupq_m_n_): Likewise. >     (mve_vdupq_m_n_f): Likewise. >     (mve_vdupq_n_): Likewise. >     (mve_vdupq_n_f): Likewise. >     (mve_vdwdupq_m_wb_u_insn): Likewise. >     (mve_vdwdupq_wb_u_insn): Likewise. >     (mve_veorq_): Likewise. >     (mve_veorq_f): Likewise. >     (mve_veorq_m_): Likewise. >     (mve_veorq_m_f): Likewise. >     (mve_veorq_s): Likewise. >     (mve_veorq_u): Likewise. >     (mve_vfmaq_f): Likewise. >     (mve_vfmaq_m_f): Likewise. >     (mve_vfmaq_m_n_f): Likewise. >     (mve_vfmaq_n_f): Likewise. >     (mve_vfmasq_m_n_f): Likewise. >     (mve_vfmasq_n_f): Likewise. >     (mve_vfmsq_f): Likewise. >     (mve_vfmsq_m_f): Likewise. >     (mve_vhaddq_): Likewise. >     (mve_vhaddq_m_): Likewise. >     (mve_vhaddq_m_n_): Likewise. >     (mve_vhaddq_n_): Likewise. >     (mve_vhcaddq_rot270_m_s): Likewise. >     (mve_vhcaddq_rot270_s): Likewise. >     (mve_vhcaddq_rot90_m_s): Likewise. >     (mve_vhcaddq_rot90_s): Likewise. >     (mve_vhsubq_): Likewise. >     (mve_vhsubq_m_): Likewise. >     (mve_vhsubq_m_n_): Likewise. >     (mve_vhsubq_n_): Likewise. >     (mve_vidupq_m_wb_u_insn): Likewise. >     (mve_vidupq_u_insn): Likewise. >     (mve_viwdupq_m_wb_u_insn): Likewise. >     (mve_viwdupq_wb_u_insn): Likewise. >     (mve_vldrbq_): Likewise. >     (mve_vldrbq_gather_offset_): Likewise. >     (mve_vldrbq_gather_offset_z_): Likewise. >     (mve_vldrbq_z_): Likewise. >     (mve_vldrdq_gather_base_v2di): Likewise. >     (mve_vldrdq_gather_base_wb_v2di_insn): Likewise. >     (mve_vldrdq_gather_base_wb_z_v2di_insn): Likewise. >     (mve_vldrdq_gather_base_z_v2di): Likewise. >     (mve_vldrdq_gather_offset_v2di): Likewise. >     (mve_vldrdq_gather_offset_z_v2di): Likewise. >     (mve_vldrdq_gather_shifted_offset_v2di): Likewise. >     (mve_vldrdq_gather_shifted_offset_z_v2di): Likewise. >     (mve_vldrhq_): Likewise. >     (mve_vldrhq_fv8hf): Likewise. >     (mve_vldrhq_gather_offset_): Likewise. >     (mve_vldrhq_gather_offset_fv8hf): Likewise. >     (mve_vldrhq_gather_offset_z_): Likewise. >     (mve_vldrhq_gather_offset_z_fv8hf): Likewise. >     (mve_vldrhq_gather_shifted_offset_): Likewise. >     (mve_vldrhq_gather_shifted_offset_fv8hf): Likewise. >     (mve_vldrhq_gather_shifted_offset_z_): Likewise. >     (mve_vldrhq_gather_shifted_offset_z_fv8hf): Likewise. >     (mve_vldrhq_z_): Likewise. >     (mve_vldrhq_z_fv8hf): Likewise. >     (mve_vldrwq_v4si): Likewise. >     (mve_vldrwq_fv4sf): Likewise. >     (mve_vldrwq_gather_base_v4si): Likewise. >     (mve_vldrwq_gather_base_fv4sf): Likewise. >     (mve_vldrwq_gather_base_wb_v4si_insn): Likewise. >     (mve_vldrwq_gather_base_wb_fv4sf_insn): Likewise. >     (mve_vldrwq_gather_base_wb_z_v4si_insn): Likewise. >     (mve_vldrwq_gather_base_wb_z_fv4sf_insn): Likewise. >     (mve_vldrwq_gather_base_z_v4si): Likewise. >     (mve_vldrwq_gather_base_z_fv4sf): Likewise. >     (mve_vldrwq_gather_offset_v4si): Likewise. >     (mve_vldrwq_gather_offset_fv4sf): Likewise. >     (mve_vldrwq_gather_offset_z_v4si): Likewise. >     (mve_vldrwq_gather_offset_z_fv4sf): Likewise. >     (mve_vldrwq_gather_shifted_offset_v4si): Likewise. >     (mve_vldrwq_gather_shifted_offset_fv4sf): Likewise. >     (mve_vldrwq_gather_shifted_offset_z_v4si): Likewise. >     (mve_vldrwq_gather_shifted_offset_z_fv4sf): Likewise. >     (mve_vldrwq_z_v4si): Likewise. >     (mve_vldrwq_z_fv4sf): Likewise. >     (mve_vmaxaq_m_s): Likewise. >     (mve_vmaxaq_s): Likewise. >     (mve_vmaxavq_p_s): Likewise. >     (mve_vmaxavq_s): Likewise. >     (mve_vmaxnmaq_f): Likewise. >     (mve_vmaxnmaq_m_f): Likewise. >     (mve_vmaxnmavq_f): Likewise. >     (mve_vmaxnmavq_p_f): Likewise. >     (mve_vmaxnmq_f): Likewise. >     (mve_vmaxnmq_m_f): Likewise. >     (mve_vmaxnmvq_f): Likewise. >     (mve_vmaxnmvq_p_f): Likewise. >     (mve_vmaxq_): Likewise. >     (mve_vmaxq_m_): Likewise. >     (mve_vmaxq_s): Likewise. >     (mve_vmaxq_u): Likewise. >     (mve_vmaxvq_): Likewise. >     (mve_vmaxvq_p_): Likewise. >     (mve_vminaq_m_s): Likewise. >     (mve_vminaq_s): Likewise. >     (mve_vminavq_p_s): Likewise. >     (mve_vminavq_s): Likewise. >     (mve_vminnmaq_f): Likewise. >     (mve_vminnmaq_m_f): Likewise. >     (mve_vminnmavq_f): Likewise. >     (mve_vminnmavq_p_f): Likewise. >     (mve_vminnmq_f): Likewise. >     (mve_vminnmq_m_f): Likewise. >     (mve_vminnmvq_f): Likewise. >     (mve_vminnmvq_p_f): Likewise. >     (mve_vminq_): Likewise. >     (mve_vminq_m_): Likewise. >     (mve_vminq_s): Likewise. >     (mve_vminq_u): Likewise. >     (mve_vminvq_): Likewise. >     (mve_vminvq_p_): Likewise. >     (mve_vmladavaq_): Likewise. >     (mve_vmladavaq_p_): Likewise. >     (mve_vmladavaxq_p_s): Likewise. >     (mve_vmladavaxq_s): Likewise. >     (mve_vmladavq_): Likewise. >     (mve_vmladavq_p_): Likewise. >     (mve_vmladavxq_p_s): Likewise. >     (mve_vmladavxq_s): Likewise. >     (mve_vmlaldavaq_): Likewise. >     (mve_vmlaldavaq_p_): Likewise. >     (mve_vmlaldavaxq_): Likewise. >     (mve_vmlaldavaxq_p_): Likewise. >     (mve_vmlaldavaxq_s): Likewise. >     (mve_vmlaldavq_): Likewise. >     (mve_vmlaldavq_p_): Likewise. >     (mve_vmlaldavxq_p_s): Likewise. >     (mve_vmlaldavxq_s): Likewise. >     (mve_vmlaq_m_n_): Likewise. >     (mve_vmlaq_n_): Likewise. >     (mve_vmlasq_m_n_): Likewise. >     (mve_vmlasq_n_): Likewise. >     (mve_vmlsdavaq_p_s): Likewise. >     (mve_vmlsdavaq_s): Likewise. >     (mve_vmlsdavaxq_p_s): Likewise. >     (mve_vmlsdavaxq_s): Likewise. >     (mve_vmlsdavq_p_s): Likewise. >     (mve_vmlsdavq_s): Likewise. >     (mve_vmlsdavxq_p_s): Likewise. >     (mve_vmlsdavxq_s): Likewise. >     (mve_vmlsldavaq_p_s): Likewise. >     (mve_vmlsldavaq_s): Likewise. >     (mve_vmlsldavaxq_p_s): Likewise. >     (mve_vmlsldavaxq_s): Likewise. >     (mve_vmlsldavq_p_s): Likewise. >     (mve_vmlsldavq_s): Likewise. >     (mve_vmlsldavxq_p_s): Likewise. >     (mve_vmlsldavxq_s): Likewise. >     (mve_vmovlbq_): Likewise. >     (mve_vmovlbq_m_): Likewise. >     (mve_vmovltq_): Likewise. >     (mve_vmovltq_m_): Likewise. >     (mve_vmovnbq_): Likewise. >     (mve_vmovnbq_m_): Likewise. >     (mve_vmovntq_): Likewise. >     (mve_vmovntq_m_): Likewise. >     (mve_vmulhq_): Likewise. >     (mve_vmulhq_m_): Likewise. >     (mve_vmullbq_int_): Likewise. >     (mve_vmullbq_int_m_): Likewise. >     (mve_vmullbq_poly_m_p): Likewise. >     (mve_vmullbq_poly_p): Likewise. >     (mve_vmulltq_int_): Likewise. >     (mve_vmulltq_int_m_): Likewise. >     (mve_vmulltq_poly_m_p): Likewise. >     (mve_vmulltq_poly_p): Likewise. >     (mve_vmulq_): Likewise. >     (mve_vmulq_f): Likewise. >     (mve_vmulq_m_): Likewise. >     (mve_vmulq_m_f): Likewise. >     (mve_vmulq_m_n_): Likewise. >     (mve_vmulq_m_n_f): Likewise. >     (mve_vmulq_n_): Likewise. >     (mve_vmulq_n_f): Likewise. >     (mve_vmvnq_): Likewise. >     (mve_vmvnq_m_): Likewise. >     (mve_vmvnq_m_n_): Likewise. >     (mve_vmvnq_n_): Likewise. >     (mve_vmvnq_s): Likewise. >     (mve_vmvnq_u): Likewise. >     (mve_vnegq_f): Likewise. >     (mve_vnegq_m_f): Likewise. >     (mve_vnegq_m_s): Likewise. >     (mve_vnegq_s): Likewise. >     (mve_vornq_): Likewise. >     (mve_vornq_f): Likewise. >     (mve_vornq_m_): Likewise. >     (mve_vornq_m_f): Likewise. >     (mve_vornq_s): Likewise. >     (mve_vornq_u): Likewise. >     (mve_vorrq_): Likewise. >     (mve_vorrq_f): Likewise. >     (mve_vorrq_m_): Likewise. >     (mve_vorrq_m_f): Likewise. >     (mve_vorrq_m_n_): Likewise. >     (mve_vorrq_n_): Likewise. >     (mve_vorrq_s): Likewise. >     (mve_vorrq_s): Likewise. >     (mve_vqabsq_m_s): Likewise. >     (mve_vqabsq_s): Likewise. >     (mve_vqaddq_): Likewise. >     (mve_vqaddq_m_): Likewise. >     (mve_vqaddq_m_n_): Likewise. >     (mve_vqaddq_n_): Likewise. >     (mve_vqdmladhq_m_s): Likewise. >     (mve_vqdmladhq_s): Likewise. >     (mve_vqdmladhxq_m_s): Likewise. >     (mve_vqdmladhxq_s): Likewise. >     (mve_vqdmlahq_m_n_s): Likewise. >     (mve_vqdmlahq_n_): Likewise. >     (mve_vqdmlahq_n_s): Likewise. >     (mve_vqdmlashq_m_n_s): Likewise. >     (mve_vqdmlashq_n_): Likewise. >     (mve_vqdmlashq_n_s): Likewise. >     (mve_vqdmlsdhq_m_s): Likewise. >     (mve_vqdmlsdhq_s): Likewise. >     (mve_vqdmlsdhxq_m_s): Likewise. >     (mve_vqdmlsdhxq_s): Likewise. >     (mve_vqdmulhq_m_n_s): Likewise. >     (mve_vqdmulhq_m_s): Likewise. >     (mve_vqdmulhq_n_s): Likewise. >     (mve_vqdmulhq_s): Likewise. >     (mve_vqdmullbq_m_n_s): Likewise. >     (mve_vqdmullbq_m_s): Likewise. >     (mve_vqdmullbq_n_s): Likewise. >     (mve_vqdmullbq_s): Likewise. >     (mve_vqdmulltq_m_n_s): Likewise. >     (mve_vqdmulltq_m_s): Likewise. >     (mve_vqdmulltq_n_s): Likewise. >     (mve_vqdmulltq_s): Likewise. >     (mve_vqmovnbq_): Likewise. >     (mve_vqmovnbq_m_): Likewise. >     (mve_vqmovntq_): Likewise. >     (mve_vqmovntq_m_): Likewise. >     (mve_vqmovunbq_m_s): Likewise. >     (mve_vqmovunbq_s): Likewise. >     (mve_vqmovuntq_m_s): Likewise. >     (mve_vqmovuntq_s): Likewise. >     (mve_vqnegq_m_s): Likewise. >     (mve_vqnegq_s): Likewise. >     (mve_vqrdmladhq_m_s): Likewise. >     (mve_vqrdmladhq_s): Likewise. >     (mve_vqrdmladhxq_m_s): Likewise. >     (mve_vqrdmladhxq_s): Likewise. >     (mve_vqrdmlahq_m_n_s): Likewise. >     (mve_vqrdmlahq_n_): Likewise. >     (mve_vqrdmlahq_n_s): Likewise. >     (mve_vqrdmlashq_m_n_s): Likewise. >     (mve_vqrdmlashq_n_): Likewise. >     (mve_vqrdmlashq_n_s): Likewise. >     (mve_vqrdmlsdhq_m_s): Likewise. >     (mve_vqrdmlsdhq_s): Likewise. >     (mve_vqrdmlsdhxq_m_s): Likewise. >     (mve_vqrdmlsdhxq_s): Likewise. >     (mve_vqrdmulhq_m_n_s): Likewise. >     (mve_vqrdmulhq_m_s): Likewise. >     (mve_vqrdmulhq_n_s): Likewise. >     (mve_vqrdmulhq_s): Likewise. >     (mve_vqrshlq_): Likewise. >     (mve_vqrshlq_m_): Likewise. >     (mve_vqrshlq_m_n_): Likewise. >     (mve_vqrshlq_n_): Likewise. >     (mve_vqrshrnbq_m_n_): Likewise. >     (mve_vqrshrnbq_n_): Likewise. >     (mve_vqrshrntq_m_n_): Likewise. >     (mve_vqrshrntq_n_): Likewise. >     (mve_vqrshrunbq_m_n_s): Likewise. >     (mve_vqrshrunbq_n_s): Likewise. >     (mve_vqrshruntq_m_n_s): Likewise. >     (mve_vqrshruntq_n_s): Likewise. >     (mve_vqshlq_): Likewise. >     (mve_vqshlq_m_): Likewise. >     (mve_vqshlq_m_n_): Likewise. >     (mve_vqshlq_m_r_): Likewise. >     (mve_vqshlq_n_): Likewise. >     (mve_vqshlq_r_): Likewise. >     (mve_vqshluq_m_n_s): Likewise. >     (mve_vqshluq_n_s): Likewise. >     (mve_vqshrnbq_m_n_): Likewise. >     (mve_vqshrnbq_n_): Likewise. >     (mve_vqshrntq_m_n_): Likewise. >     (mve_vqshrntq_n_): Likewise. >     (mve_vqshrunbq_m_n_s): Likewise. >     (mve_vqshrunbq_n_s): Likewise. >     (mve_vqshruntq_m_n_s): Likewise. >     (mve_vqshruntq_n_s): Likewise. >     (mve_vqsubq_): Likewise. >     (mve_vqsubq_m_): Likewise. >     (mve_vqsubq_m_n_): Likewise. >     (mve_vqsubq_n_): Likewise. >     (mve_vrev16q_v16qi): Likewise. >     (mve_vrev16q_m_v16qi): Likewise. >     (mve_vrev32q_): Likewise. >     (mve_vrev32q_fv8hf): Likewise. >     (mve_vrev32q_m_): Likewise. >     (mve_vrev32q_m_fv8hf): Likewise. >     (mve_vrev64q_): Likewise. >     (mve_vrev64q_f): Likewise. >     (mve_vrev64q_m_): Likewise. >     (mve_vrev64q_m_f): Likewise. >     (mve_vrhaddq_): Likewise. >     (mve_vrhaddq_m_): Likewise. >     (mve_vrmlaldavhaq_v4si): Likewise. >     (mve_vrmlaldavhaq_p_sv4si): Likewise. >     (mve_vrmlaldavhaq_p_uv4si): Likewise. >     (mve_vrmlaldavhaq_sv4si): Likewise. >     (mve_vrmlaldavhaq_uv4si): Likewise. >     (mve_vrmlaldavhaxq_p_sv4si): Likewise. >     (mve_vrmlaldavhaxq_sv4si): Likewise. >     (mve_vrmlaldavhq_v4si): Likewise. >     (mve_vrmlaldavhq_p_v4si): Likewise. >     (mve_vrmlaldavhxq_p_sv4si): Likewise. >     (mve_vrmlaldavhxq_sv4si): Likewise. >     (mve_vrmlsldavhaq_p_sv4si): Likewise. >     (mve_vrmlsldavhaq_sv4si): Likewise. >     (mve_vrmlsldavhaxq_p_sv4si): Likewise. >     (mve_vrmlsldavhaxq_sv4si): Likewise. >     (mve_vrmlsldavhq_p_sv4si): Likewise. >     (mve_vrmlsldavhq_sv4si): Likewise. >     (mve_vrmlsldavhxq_p_sv4si): Likewise. >     (mve_vrmlsldavhxq_sv4si): Likewise. >     (mve_vrmulhq_): Likewise. >     (mve_vrmulhq_m_): Likewise. >     (mve_vrndaq_f): Likewise. >     (mve_vrndaq_m_f): Likewise. >     (mve_vrndmq_f): Likewise. >     (mve_vrndmq_m_f): Likewise. >     (mve_vrndnq_f): Likewise. >     (mve_vrndnq_m_f): Likewise. >     (mve_vrndpq_f): Likewise. >     (mve_vrndpq_m_f): Likewise. >     (mve_vrndq_f): Likewise. >     (mve_vrndq_m_f): Likewise. >     (mve_vrndxq_f): Likewise. >     (mve_vrndxq_m_f): Likewise. >     (mve_vrshlq_): Likewise. >     (mve_vrshlq_m_): Likewise. >     (mve_vrshlq_m_n_): Likewise. >     (mve_vrshlq_n_): Likewise. >     (mve_vrshrnbq_m_n_): Likewise. >     (mve_vrshrnbq_n_): Likewise. >     (mve_vrshrntq_m_n_): Likewise. >     (mve_vrshrntq_n_): Likewise. >     (mve_vrshrq_m_n_): Likewise. >     (mve_vrshrq_n_): Likewise. >     (mve_vsbciq_v4si): Likewise. >     (mve_vsbciq_m_v4si): Likewise. >     (mve_vsbcq_v4si): Likewise. >     (mve_vsbcq_m_v4si): Likewise. >     (mve_vshlcq_): Likewise. >     (mve_vshlcq_m_): Likewise. >     (mve_vshllbq_m_n_): Likewise. >     (mve_vshllbq_n_): Likewise. >     (mve_vshlltq_m_n_): Likewise. >     (mve_vshlltq_n_): Likewise. >     (mve_vshlq_): Likewise. >     (mve_vshlq_): Likewise. >     (mve_vshlq_m_): Likewise. >     (mve_vshlq_m_n_): Likewise. >     (mve_vshlq_m_r_): Likewise. >     (mve_vshlq_n_): Likewise. >     (mve_vshlq_r_): Likewise. >     (mve_vshrnbq_m_n_): Likewise. >     (mve_vshrnbq_n_): Likewise. >     (mve_vshrntq_m_n_): Likewise. >     (mve_vshrntq_n_): Likewise. >     (mve_vshrq_m_n_): Likewise. >     (mve_vshrq_n_): Likewise. >     (mve_vsliq_m_n_): Likewise. >     (mve_vsliq_n_): Likewise. >     (mve_vsriq_m_n_): Likewise. >     (mve_vsriq_n_): Likewise. >     (mve_vstrbq_): Likewise. >     (mve_vstrbq_p_): Likewise. >     (mve_vstrbq_scatter_offset__insn): Likewise. >     (mve_vstrbq_scatter_offset_p__insn): Likewise. >     (mve_vstrdq_scatter_base_v2di): Likewise. >     (mve_vstrdq_scatter_base_p_v2di): Likewise. >     (mve_vstrdq_scatter_base_wb_v2di): Likewise. >     (mve_vstrdq_scatter_base_wb_p_v2di): Likewise. >     (mve_vstrdq_scatter_offset_v2di_insn): Likewise. >     (mve_vstrdq_scatter_offset_p_v2di_insn): Likewise. >     (mve_vstrdq_scatter_shifted_offset_v2di_insn): Likewise. >     (mve_vstrdq_scatter_shifted_offset_p_v2di_insn): Likewise. >     (mve_vstrhq_): Likewise. >     (mve_vstrhq_fv8hf): Likewise. >     (mve_vstrhq_p_): Likewise. >     (mve_vstrhq_p_fv8hf): Likewise. >     (mve_vstrhq_scatter_offset__insn): Likewise. >     (mve_vstrhq_scatter_offset_fv8hf_insn): Likewise. >     (mve_vstrhq_scatter_offset_p__insn): Likewise. >     (mve_vstrhq_scatter_offset_p_fv8hf_insn): Likewise. >  (mve_vstrhq_scatter_shifted_offset__insn): Likewise. >     (mve_vstrhq_scatter_shifted_offset_fv8hf_insn): Likewise. >  (mve_vstrhq_scatter_shifted_offset_p__insn): Likewise. >     (mve_vstrhq_scatter_shifted_offset_p_fv8hf_insn): Likewise. >     (mve_vstrwq_v4si): Likewise. >     (mve_vstrwq_fv4sf): Likewise. >     (mve_vstrwq_p_v4si): Likewise. >     (mve_vstrwq_p_fv4sf): Likewise. >     (mve_vstrwq_scatter_base_v4si): Likewise. >     (mve_vstrwq_scatter_base_fv4sf): Likewise. >     (mve_vstrwq_scatter_base_p_v4si): Likewise. >     (mve_vstrwq_scatter_base_p_fv4sf): Likewise. >     (mve_vstrwq_scatter_base_wb_v4si): Likewise. >     (mve_vstrwq_scatter_base_wb_fv4sf): Likewise. >     (mve_vstrwq_scatter_base_wb_p_v4si): Likewise. >     (mve_vstrwq_scatter_base_wb_p_fv4sf): Likewise. >     (mve_vstrwq_scatter_offset_v4si_insn): Likewise. >     (mve_vstrwq_scatter_offset_fv4sf_insn): Likewise. >     (mve_vstrwq_scatter_offset_p_v4si_insn): Likewise. >     (mve_vstrwq_scatter_offset_p_fv4sf_insn): Likewise. >     (mve_vstrwq_scatter_shifted_offset_v4si_insn): Likewise. >     (mve_vstrwq_scatter_shifted_offset_fv4sf_insn): Likewise. >     (mve_vstrwq_scatter_shifted_offset_p_v4si_insn): Likewise. >     (mve_vstrwq_scatter_shifted_offset_p_fv4sf_insn): Likewise. >     (mve_vsubq_): Likewise. >     (mve_vsubq_f): Likewise. >     (mve_vsubq_m_): Likewise. >     (mve_vsubq_m_f): Likewise. >     (mve_vsubq_m_n_): Likewise. >     (mve_vsubq_m_n_f): Likewise. >     (mve_vsubq_n_): Likewise. >     (mve_vsubq_n_f): Likewise. > > > gcc/testsuite/ChangeLog: > >         * gcc.target/arm/dlstp-compile-asm.c: New test. > Inline copy of v3 patch: diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h index 7d40b8b7e00bc3b4dcff7ec685ba864ca3885052..40972c24ba1497302a2f23429ce071385ae29984 100644 --- a/gcc/config/arm/arm.h +++ b/gcc/config/arm/arm.h @@ -2358,6 +2358,21 @@ extern int making_const_table;    else if (TARGET_THUMB1)                \      thumb1_final_prescan_insn (INSN) +/* These defines are useful to refer to the value of the mve_unpredicated_insn +   insn attribute.  Note that, because these use the get_attr_* function, these +   will change recog_data if (INSN) isn't current_insn.  */ +#define MVE_VPT_PREDICABLE_INSN_P(INSN)                    \ +  (recog_memoized (INSN) >= 0                        \ +  && get_attr_mve_unpredicated_insn (INSN) != 0)     \ + +#define MVE_VPT_PREDICATED_INSN_P(INSN)                    \ +  (MVE_VPT_PREDICABLE_INSN_P (INSN)                    \ +   && recog_memoized (INSN) != get_attr_mve_unpredicated_insn (INSN))    \ + +#define MVE_VPT_UNPREDICATED_INSN_P(INSN)                \ +  (MVE_VPT_PREDICABLE_INSN_P (INSN)                    \ +   && recog_memoized (INSN) == get_attr_mve_unpredicated_insn (INSN))    \ +  #define ARM_SIGN_EXTEND(x)  ((HOST_WIDE_INT)            \    (HOST_BITS_PER_WIDE_INT <= 32 ? (unsigned HOST_WIDE_INT) (x)    \     : ((((unsigned HOST_WIDE_INT)(x)) & (unsigned HOST_WIDE_INT) 0xffffffff) |\ diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md index cbfc4543531452b0708a38bdf4abf5105b54f8b7..e97943751878820813fcd7a497e7e5b2e80ef289 100644 --- a/gcc/config/arm/arm.md +++ b/gcc/config/arm/arm.md @@ -124,6 +124,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 74523f49356a9fb06afd47e2a19a98caba17937d..854b8ab935f82ad0eb99e6af9852ce8154cf9d9d 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")])  ;; @@ -156,7 +157,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vrintx.f%#    %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrndxq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -170,7 +172,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vrintz.f%#    %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrndq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -184,7 +187,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vrintp.f%#    %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrndpq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -198,7 +202,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vrintn.f%#    %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrndnq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -212,7 +217,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vrintm.f%#    %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrndmq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -226,7 +232,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vrinta.f%#    %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrndaq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -240,7 +247,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vrev64.%# %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrev64q_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -253,7 +261,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vneg.f%#\t%q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vnegq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -267,7 +276,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vdup.%#\t%q0, %1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vdupq_n_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -280,7 +290,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vabs.f%#\t%q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vabsq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -294,7 +305,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vrev32.16 %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrev32q_fv8hf")) +  (set_attr "type" "mve_move")  ])  ;;  ;; [vcvttq_f32_f16]) @@ -307,7 +319,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vcvtt.f32.f16 %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvttq_f32_f16v4sf")) +  (set_attr "type" "mve_move")  ])  ;; @@ -321,7 +334,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vcvtb.f32.f16 %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtbq_f32_f16v4sf")) +  (set_attr "type" "mve_move")  ])  ;; @@ -335,7 +349,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT" "vcvt.f%#.%# %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtq_to_f_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -349,7 +364,8 @@    ]    "TARGET_HAVE_MVE"    "vrev64.%# %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrev64q_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -363,7 +379,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT" "vcvt.%#.f%# %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtq_from_f_")) +  (set_attr "type" "mve_move")  ])  ;; [vqnegq_s])  ;; @@ -375,7 +392,8 @@    ]    "TARGET_HAVE_MVE"    "vqneg.s%#\t%q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqnegq_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -389,7 +407,8 @@    ]    "TARGET_HAVE_MVE"    "vqabs.s%#\t%q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqabsq_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -402,7 +421,8 @@    ]    "TARGET_HAVE_MVE"    "vneg.s%#\t%q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vnegq_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -415,7 +435,8 @@    ]    "TARGET_HAVE_MVE"    "vmvn\t%q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmvnq_u")) +  (set_attr "type" "mve_move")  ])  (define_expand "mve_vmvnq_s"    [ @@ -436,7 +457,8 @@    ]    "TARGET_HAVE_MVE"    "vdup.%#\t%q0, %1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vdupq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -449,7 +471,8 @@    ]    "TARGET_HAVE_MVE"    "vclz.i%#\t%q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vclzq_s")) +  (set_attr "type" "mve_move")  ])  (define_expand "mve_vclzq_u"    [ @@ -470,7 +493,8 @@    ]    "TARGET_HAVE_MVE"    "vcls.s%#\t%q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vclsq_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -484,7 +508,8 @@    ]    "TARGET_HAVE_MVE"    "vaddv.%#\t%0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vaddvq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -497,7 +522,8 @@    ]    "TARGET_HAVE_MVE"    "vabs.s%#\t%q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vabsq_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -511,7 +537,8 @@    ]    "TARGET_HAVE_MVE"    "vrev32.%#\t%q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrev32q_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -525,7 +552,8 @@    ]    "TARGET_HAVE_MVE"    "vmovlt.%#   %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmovltq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -539,7 +567,8 @@    ]    "TARGET_HAVE_MVE"    "vmovlb.%#   %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmovlbq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -553,7 +582,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT" "vcvtp.%#.f%# %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtpq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -567,7 +597,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT" "vcvtn.%#.f%# %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtnq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -581,7 +612,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT" "vcvtm.%#.f%# %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtmq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -595,7 +627,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT" "vcvta.%#.f%# %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtaq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -609,7 +642,8 @@    ]    "TARGET_HAVE_MVE"    "vmvn.i%#  %q0, %1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmvnq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -623,7 +657,8 @@    ]    "TARGET_HAVE_MVE"    "vrev16.8 %q0, %q1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrev16q_v16qi")) +  (set_attr "type" "mve_move")  ])  ;; @@ -637,7 +672,8 @@    ]    "TARGET_HAVE_MVE"    "vaddlv.32\t%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")  ])  ;; @@ -651,7 +687,8 @@    ]    "TARGET_HAVE_MVE"    "vctp. %1" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vctpq")) +  (set_attr "type" "mve_move")  ])  ;; @@ -680,7 +717,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vsub.f\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vsubq_n_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -695,7 +733,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vbrsr.  %q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vbrsrq_n_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -710,7 +749,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vcvt.f.\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtq_n_to_f_")) +  (set_attr "type" "mve_move")  ])  ;; [vcreateq_f]) @@ -755,7 +795,8 @@    ]    "TARGET_HAVE_MVE"    "vshr.\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vshrq_n_")) +  (set_attr "type" "mve_move")  ])  ;; Versions that take constant vectors as operand 2 (with all elements @@ -803,7 +844,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vcvt..f\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcvtq_n_from_f_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -818,8 +860,9 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vaddlvt.32\t%Q0, %R0, %q1" -  [(set_attr "type" "mve_move") -   (set_attr "length""8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vaddlvq_v4si")) +  (set_attr "type" "mve_move") +  (set_attr "length""8")])  ;;  ;; [vcmpneq_, vcmpcsq_, vcmpeqq_, vcmpgeq_, vcmpgtq_, vcmphiq_, vcmpleq_, vcmpltq_]) @@ -832,7 +875,8 @@    ]    "TARGET_HAVE_MVE" "vcmp.%#\t, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -847,7 +891,8 @@    ]    "TARGET_HAVE_MVE"    "vcmp.%# , %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -866,7 +911,8 @@    ]    "TARGET_HAVE_MVE"    "vabd.%#    %q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vabdq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -881,7 +927,8 @@    ]    "TARGET_HAVE_MVE"    "vadd.i%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vaddq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -896,7 +943,8 @@    ]    "TARGET_HAVE_MVE"    "vaddva.%#\t%0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vaddvaq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -911,7 +959,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")])  ;; @@ -931,7 +980,8 @@    "@     vand\t%q0, %q1, %q2     * return neon_output_logic_immediate (\"vand\", &operands[2], mode, 1, VALID_NEON_QREG_MODE (mode));" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vandq_u")) +  (set_attr "type" "mve_move")  ])  (define_expand "mve_vandq_s"    [ @@ -953,7 +1003,8 @@    ]    "TARGET_HAVE_MVE"    "vbic\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vbicq_u")) +  (set_attr "type" "mve_move")  ])  (define_expand "mve_vbicq_s" @@ -977,7 +1028,8 @@    ]    "TARGET_HAVE_MVE"    "vbrsr.%#    %q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vbrsrq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -992,7 +1044,8 @@    ]    "TARGET_HAVE_MVE"    "vcadd.i%#    %q0, %q1, %q2, #" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcaddq")) +  (set_attr "type" "mve_move")  ])  ;; Auto vectorizer pattern for int vcadd @@ -1015,7 +1068,8 @@    ]    "TARGET_HAVE_MVE"    "veor\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_veorq_u")) +  (set_attr "type" "mve_move")  ])  (define_expand "mve_veorq_s"    [ @@ -1038,7 +1092,8 @@    ]    "TARGET_HAVE_MVE"    "vhadd.%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vhaddq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1053,7 +1108,8 @@    ]    "TARGET_HAVE_MVE"    "vhadd.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vhaddq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1068,7 +1124,8 @@    ]    "TARGET_HAVE_MVE"    "vhcadd.s%#\t%q0, %q1, %q2, #270" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vhcaddq_rot270_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1083,7 +1140,8 @@    ]    "TARGET_HAVE_MVE"    "vhcadd.s%#\t%q0, %q1, %q2, #90" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vhcaddq_rot90_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1098,7 +1156,8 @@    ]    "TARGET_HAVE_MVE"    "vhsub.%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vhsubq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1113,7 +1172,8 @@    ]    "TARGET_HAVE_MVE"    "vhsub.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vhsubq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1128,7 +1188,8 @@    ]    "TARGET_HAVE_MVE"    "vmaxa.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")  ])  ;; @@ -1143,7 +1204,8 @@    ]    "TARGET_HAVE_MVE"    "vmaxav.s%#\t%0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmaxavq_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1157,7 +1219,8 @@    ]    "TARGET_HAVE_MVE"    "vmax.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmaxq_s")) +  (set_attr "type" "mve_move")  ])  (define_insn "mve_vmaxq_u" @@ -1168,7 +1231,8 @@    ]    "TARGET_HAVE_MVE"    "vmax.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmaxq_u")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1183,7 +1247,8 @@    ]    "TARGET_HAVE_MVE"    "vmaxv.%#\t%0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmaxvq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1198,7 +1263,8 @@    ]    "TARGET_HAVE_MVE"    "vmina.s%#\t%q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vminaq_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1213,7 +1279,8 @@    ]    "TARGET_HAVE_MVE"    "vminav.s%#\t%0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vminavq_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1227,7 +1294,8 @@    ]    "TARGET_HAVE_MVE"    "vmin.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vminq_s")) +  (set_attr "type" "mve_move")  ])  (define_insn "mve_vminq_u" @@ -1238,7 +1306,8 @@    ]    "TARGET_HAVE_MVE"    "vmin.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vminq_u")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1253,7 +1322,8 @@    ]    "TARGET_HAVE_MVE"    "vminv.%#\t%0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vminvq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1268,7 +1338,8 @@    ]    "TARGET_HAVE_MVE"    "vmladav.%#\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")  ])  ;; @@ -1283,7 +1354,8 @@    ]    "TARGET_HAVE_MVE"    "vmladavx.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")  ])  ;; @@ -1298,7 +1370,8 @@    ]    "TARGET_HAVE_MVE"    "vmlsdav.s%#\t%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")  ])  ;; @@ -1313,7 +1386,8 @@    ]    "TARGET_HAVE_MVE"    "vmlsdavx.s%#\t%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")  ])  ;; @@ -1328,7 +1402,8 @@    ]    "TARGET_HAVE_MVE"    "vmulh.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmulhq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1343,7 +1418,8 @@    ]    "TARGET_HAVE_MVE"    "vmullb.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmullbq_int_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1358,7 +1434,8 @@    ]    "TARGET_HAVE_MVE"    "vmullt.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmulltq_int_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1373,7 +1450,8 @@    ]    "TARGET_HAVE_MVE"    "vmul.i%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmulq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1388,7 +1466,8 @@    ]    "TARGET_HAVE_MVE"    "vmul.i%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmulq_")) +  (set_attr "type" "mve_move")  ])  (define_insn "mve_vmulq" @@ -1399,7 +1478,8 @@    ]    "TARGET_HAVE_MVE"    "vmul.i%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmulq")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1413,7 +1493,8 @@    ]    "TARGET_HAVE_MVE"     "vorn\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vornq_s")) +  (set_attr "type" "mve_move")  ])  (define_expand "mve_vornq_u" @@ -1442,7 +1523,8 @@    "@     vorr\t%q0, %q1, %q2     * return neon_output_logic_immediate (\"vorr\", &operands[2], mode, 0, VALID_NEON_QREG_MODE (mode));" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vorrq_s")) +  (set_attr "type" "mve_move")  ])  (define_expand "mve_vorrq_u"    [ @@ -1465,7 +1547,8 @@    ]    "TARGET_HAVE_MVE"    "vqadd.%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqaddq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1480,7 +1563,8 @@    ]    "TARGET_HAVE_MVE"    "vqadd.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqaddq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1495,7 +1579,8 @@    ]    "TARGET_HAVE_MVE"    "vqdmulh.s%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmulhq_n_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1510,7 +1595,8 @@    ]    "TARGET_HAVE_MVE"    "vqdmulh.s%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmulhq_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1525,7 +1611,8 @@    ]    "TARGET_HAVE_MVE"    "vqrdmulh.s%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrdmulhq_n_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1540,7 +1627,8 @@    ]    "TARGET_HAVE_MVE"    "vqrdmulh.s%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrdmulhq_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1555,7 +1643,8 @@    ]    "TARGET_HAVE_MVE"    "vqrshl.%#\t%q0, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrshlq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1570,7 +1659,8 @@    ]    "TARGET_HAVE_MVE"    "vqrshl.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrshlq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1585,7 +1675,8 @@    ]    "TARGET_HAVE_MVE"    "vqshl.%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqshlq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1600,7 +1691,8 @@    ]    "TARGET_HAVE_MVE"    "vqshl.%#\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")  ])  ;; @@ -1615,7 +1707,8 @@    ]    "TARGET_HAVE_MVE"    "vqshl.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqshlq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1630,7 +1723,8 @@    ]    "TARGET_HAVE_MVE"    "vqshlu.s%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqshluq_n_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1645,7 +1739,8 @@    ]    "TARGET_HAVE_MVE"    "vqsub.%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqsubq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1660,7 +1755,8 @@    ]    "TARGET_HAVE_MVE"    "vqsub.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqsubq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1675,7 +1771,8 @@    ]    "TARGET_HAVE_MVE"    "vrhadd.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrhaddq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1690,7 +1787,8 @@    ]    "TARGET_HAVE_MVE"    "vrmulh.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrmulhq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1705,7 +1803,8 @@    ]    "TARGET_HAVE_MVE"    "vrshl.%#\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")  ])  ;; @@ -1720,7 +1819,8 @@    ]    "TARGET_HAVE_MVE"    "vrshl.%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrshlq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1735,7 +1835,8 @@    ]    "TARGET_HAVE_MVE"    "vrshr.%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrshrq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1750,7 +1851,8 @@    ]    "TARGET_HAVE_MVE"    "vshl.%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vshlq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1765,7 +1867,8 @@    ]    "TARGET_HAVE_MVE"    "vshl.%#\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")  ])  ;; @@ -1780,7 +1883,8 @@    ]    "TARGET_HAVE_MVE"    "vsub.i%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vsubq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1795,7 +1899,8 @@    ]    "TARGET_HAVE_MVE"    "vsub.i%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vsubq_")) +  (set_attr "type" "mve_move")  ])  (define_insn "mve_vsubq" @@ -1806,7 +1911,8 @@    ]    "TARGET_HAVE_MVE"    "vsub.i%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vorrq_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1821,7 +1927,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vabd.f%#    %q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vabdq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1836,7 +1943,8 @@    ]    "TARGET_HAVE_MVE"    "vaddlva.32\t%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")  ])  ;; @@ -1851,7 +1959,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vadd.f%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vaddq_n_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1865,7 +1974,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vand %q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vandq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1879,7 +1989,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vbic %q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vbicq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1894,7 +2005,8 @@    ]    "TARGET_HAVE_MVE"    "vbic.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")  ])  ;; @@ -1909,7 +2021,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vcadd.f%#    %q0, %q1, %q2, #" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcaddq")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1923,7 +2036,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vcmp.f%#    , %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1938,7 +2052,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vcmp.f%#    , %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmpq_n_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1953,7 +2068,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vcmul.f%#    %q0, %q1, %q2, #" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmulq")) +  (set_attr "type" "mve_move")  ])  ;; @@ -1968,7 +2084,8 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vctpt. %1" -  [(set_attr "type" "mve_move") +  [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vctpq")) +   (set_attr "type" "mve_move")     (set_attr "length""8")])  ;; @@ -1983,7 +2100,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vcvtb.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")  ])  ;; @@ -1998,7 +2116,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vcvtt.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")  ])  ;; @@ -2012,7 +2131,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "veor %q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_veorq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2027,7 +2147,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vmaxnma.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")  ])  ;; @@ -2042,7 +2163,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vmaxnmav.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")  ])  ;; @@ -2056,7 +2178,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vmaxnm.f%#    %q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmaxnmq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2071,7 +2194,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vmaxnmv.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")  ])  ;; @@ -2086,7 +2210,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vminnma.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")  ])  ;; @@ -2101,7 +2226,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vminnmav.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")  ])  ;; @@ -2115,7 +2241,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vminnm.f%#    %q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vminnmq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2130,7 +2257,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vminnmv.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")  ])  ;; @@ -2145,7 +2273,8 @@    ]    "TARGET_HAVE_MVE"    "vmlaldav.%#    %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")  ])  ;; @@ -2160,7 +2289,8 @@    ]    "TARGET_HAVE_MVE"    "vmlaldavx.s%# %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")  ])  ;; @@ -2175,7 +2305,8 @@    ]    "TARGET_HAVE_MVE"    "vmlsldav.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")  ])  ;; @@ -2190,7 +2321,8 @@    ]    "TARGET_HAVE_MVE"    "vmlsldavx.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")  ])  ;; @@ -2205,7 +2337,8 @@    ]    "TARGET_HAVE_MVE"    "vmovnb.i%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmovnbq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2220,7 +2353,8 @@    ]    "TARGET_HAVE_MVE"    "vmovnt.i%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmovntq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2234,7 +2368,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vmul.f%#    %q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmulq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2249,7 +2384,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vmul.f%#    %q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmulq_n_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2263,7 +2399,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vorn %q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vornq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2277,7 +2414,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vorr %q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vorrq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2292,7 +2430,8 @@    ]    "TARGET_HAVE_MVE"    "vorr.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")  ])  ;; @@ -2307,7 +2446,8 @@    ]    "TARGET_HAVE_MVE"    "vqdmullb.s%#    %q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmullbq_n_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2322,7 +2462,8 @@    ]    "TARGET_HAVE_MVE"    "vqdmullb.s%#    %q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmullbq_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2337,7 +2478,8 @@    ]    "TARGET_HAVE_MVE"    "vqdmullt.s%#    %q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmulltq_n_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2352,7 +2494,8 @@    ]    "TARGET_HAVE_MVE"    "vqdmullt.s%#    %q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmulltq_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2367,7 +2510,8 @@    ]    "TARGET_HAVE_MVE"    "vqmovnb.%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqmovnbq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2382,7 +2526,8 @@    ]    "TARGET_HAVE_MVE"    "vqmovnt.%#    %q0, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqmovntq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2397,7 +2542,8 @@    ]    "TARGET_HAVE_MVE"    "vqmovunb.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")  ])  ;; @@ -2412,7 +2558,8 @@    ]    "TARGET_HAVE_MVE"    "vqmovunt.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")  ])  ;; @@ -2427,7 +2574,8 @@    ]    "TARGET_HAVE_MVE"    "vrmlaldavhx.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")  ])  ;; @@ -2442,7 +2590,8 @@    ]    "TARGET_HAVE_MVE"    "vrmlsldavh.s32\t%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")  ])  ;; @@ -2457,7 +2606,8 @@    ]    "TARGET_HAVE_MVE"    "vrmlsldavhx.s32\t%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")  ])  ;; @@ -2472,7 +2622,8 @@    ]    "TARGET_HAVE_MVE"    "vshllb.%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vshllbq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2487,7 +2638,8 @@    ]    "TARGET_HAVE_MVE"    "vshllt.%#\t%q0, %q1, %2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vshlltq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2501,7 +2653,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vsub.f%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vsubq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2516,7 +2669,8 @@    ]    "TARGET_HAVE_MVE"    "vmullt.p%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmulltq_poly_p")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2531,7 +2685,8 @@    ]    "TARGET_HAVE_MVE"    "vmullb.p%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmullbq_poly_p")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2546,7 +2701,8 @@    ]    "TARGET_HAVE_MVE"    "vrmlaldavh.32\t%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")  ])  ;; @@ -2562,7 +2718,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]) @@ -2577,7 +2734,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]) @@ -2592,7 +2750,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]) @@ -2607,7 +2766,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]) @@ -2622,7 +2782,8 @@    ]    "TARGET_HAVE_MVE"    "vqrshrnb.%#    %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")  ])  ;;  ;; [vqrshrunbq_n_s]) @@ -2637,7 +2798,8 @@    ]    "TARGET_HAVE_MVE"    "vqrshrunb.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")  ])  ;;  ;; [vrmlaldavhaq_s vrmlaldavhaq_u]) @@ -2652,7 +2814,8 @@    ]    "TARGET_HAVE_MVE"    "vrmlaldavha.32\t%Q0, %R0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vrmlaldavhaq_v4si")) +  (set_attr "type" "mve_move")  ])  ;; @@ -2668,7 +2831,8 @@    ]    "TARGET_HAVE_MVE"    "vabav.%#\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")  ])  ;; @@ -2729,7 +2893,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")])  ;; @@ -2745,7 +2910,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")])  ;; @@ -2761,7 +2927,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")])  ;; @@ -2777,7 +2944,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")])  ;; @@ -2793,7 +2961,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")])  ;; @@ -2809,7 +2978,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")])  ;; @@ -2825,7 +2995,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")])  ;; @@ -2841,7 +3012,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")])  ;; @@ -2857,7 +3029,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")])  ;; @@ -2873,7 +3046,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")])  ;; @@ -2889,7 +3063,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")])  ;; @@ -2905,7 +3080,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")])  ;; @@ -2921,7 +3097,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")])  ;; @@ -2937,7 +3114,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")])  ;; @@ -2953,7 +3131,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")])  ;; @@ -2969,7 +3148,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")])  ;; @@ -2985,7 +3165,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")])  ;; @@ -3001,7 +3182,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")])  ;; @@ -3017,7 +3199,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")])  ;; @@ -3033,7 +3216,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")])  ;; @@ -3049,8 +3233,9 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vdupt.%#\t%q0, %2" -  [(set_attr "type" "mve_move") -   (set_attr "length""8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vdupq_n_")) +  (set_attr "type" "mve_move") +  (set_attr "length""8")])  ;;  ;; [vmaxaq_m_s]) @@ -3065,7 +3250,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")])  ;; @@ -3081,7 +3267,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")])  ;; @@ -3097,7 +3284,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")])  ;; @@ -3113,7 +3301,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")])  ;; @@ -3129,7 +3318,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")])  ;; @@ -3145,7 +3335,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")])  ;; @@ -3161,7 +3352,8 @@    ]    "TARGET_HAVE_MVE"    "vmladava.%#    %0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmladavaq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -3177,7 +3369,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")])  ;; @@ -3193,7 +3386,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")])  ;; @@ -3209,7 +3403,8 @@    ]    "TARGET_HAVE_MVE"    "vmla.%#\t%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")  ])  ;; @@ -3225,7 +3420,8 @@    ]    "TARGET_HAVE_MVE"    "vmlas.%#    %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")  ])  ;; @@ -3241,7 +3437,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")])  ;; @@ -3257,7 +3454,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")])  ;; @@ -3273,7 +3471,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")])  ;; @@ -3289,7 +3488,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")])  ;; @@ -3305,7 +3505,8 @@    ]    "TARGET_HAVE_MVE"    "vpsel %q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vpselq_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -3321,7 +3522,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")])  ;; @@ -3337,7 +3539,8 @@    ]    "TARGET_HAVE_MVE"    "vqdmlah.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmlahq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -3353,7 +3556,8 @@    ]    "TARGET_HAVE_MVE"    "vqdmlash.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqdmlashq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -3369,7 +3573,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")])  ;; @@ -3385,7 +3590,8 @@    ]    "TARGET_HAVE_MVE"    "vqrdmladh.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")  ])  ;; @@ -3401,7 +3607,8 @@    ]    "TARGET_HAVE_MVE"    "vqrdmladhx.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")  ])  ;; @@ -3417,7 +3624,8 @@    ]    "TARGET_HAVE_MVE"    "vqrdmlah.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrdmlahq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -3433,7 +3641,8 @@    ]    "TARGET_HAVE_MVE"    "vqrdmlash.s%#\t%q0, %q2, %3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vqrdmlashq_n_")) +  (set_attr "type" "mve_move")  ])  ;; @@ -3449,7 +3658,8 @@    ]    "TARGET_HAVE_MVE"    "vqrdmlsdh.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")  ])  ;; @@ -3465,7 +3675,8 @@    ]    "TARGET_HAVE_MVE"    "vqrdmlsdhx.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")  ])  ;; @@ -3481,7 +3692,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")])  ;; @@ -3497,7 +3709,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")])  ;; @@ -3513,7 +3726,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")])  ;; @@ -3529,7 +3743,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")])  ;; @@ -3545,7 +3760,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")])  ;; @@ -3561,7 +3777,8 @@    ]    "TARGET_HAVE_MVE"    "vsli.%#\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")  ])  ;; @@ -3577,7 +3794,8 @@    ]    "TARGET_HAVE_MVE"    "vsri.%#\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")  ])  ;; @@ -3593,7 +3811,8 @@    ]    "TARGET_HAVE_MVE"    "vqdmlsdhx.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")  ])  ;; @@ -3609,7 +3828,8 @@    ]    "TARGET_HAVE_MVE"    "vqdmlsdh.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")  ])  ;; @@ -3625,7 +3845,8 @@    ]    "TARGET_HAVE_MVE"    "vqdmladhx.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")  ])  ;; @@ -3641,7 +3862,8 @@    ]    "TARGET_HAVE_MVE"    "vqdmladh.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")  ])  ;; @@ -3657,7 +3879,8 @@    ]    "TARGET_HAVE_MVE"    "vmlsdavax.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")  ])  ;; @@ -3673,7 +3896,8 @@    ]    "TARGET_HAVE_MVE"    "vmlsdava.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")  ])  ;; @@ -3689,7 +3913,8 @@    ]    "TARGET_HAVE_MVE"    "vmladavax.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")  ])  ;;  ;; [vabsq_m_f]) @@ -3704,7 +3929,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")])  ;; @@ -3720,8 +3946,10 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vaddlvat.32\t%Q0, %R0, %q2" -  [(set_attr "type" "mve_move") -   (set_attr "length""8")]) + [(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])  ;; @@ -3738,7 +3966,8 @@    "@     vcmul.f%#    %q0, %q2, %q3, #     vcmla.f%#    %q0, %q2, %q3, #" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vcmlaq")) +  (set_attr "type" "mve_move")  ])  ;; @@ -3754,7 +3983,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")])  ;; @@ -3770,7 +4000,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")])  ;; @@ -3786,7 +4017,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")])  ;; @@ -3802,7 +4034,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")])  ;; @@ -3818,7 +4051,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")])  ;; @@ -3834,7 +4068,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")])  ;; @@ -3850,7 +4085,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")])  ;; @@ -3866,7 +4102,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")])  ;; @@ -3882,7 +4119,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")])  ;; @@ -3898,7 +4136,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")])  ;; @@ -3914,7 +4153,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")])  ;; @@ -3930,7 +4170,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")])  ;; @@ -3946,7 +4187,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")])  ;; @@ -3962,7 +4204,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")])  ;; @@ -3978,7 +4221,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")])  ;; @@ -3994,8 +4238,9 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpst\;vdupt.%#\t%q0, %2" -  [(set_attr "type" "mve_move") -   (set_attr "length""8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vdupq_n_f")) +  (set_attr "type" "mve_move") +  (set_attr "length""8")])  ;;  ;; [vfmaq_f]) @@ -4010,7 +4255,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vfma.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")  ])  ;; @@ -4026,7 +4272,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vfma.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")  ])  ;; @@ -4042,7 +4289,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vfmas.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")  ])  ;;  ;; [vfmsq_f]) @@ -4057,7 +4305,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vfms.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")  ])  ;; @@ -4073,7 +4322,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]) @@ -4088,7 +4338,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")])  ;; @@ -4104,7 +4355,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]) @@ -4119,7 +4371,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")])  ;; @@ -4135,7 +4388,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]) @@ -4150,7 +4404,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")])  ;; @@ -4166,7 +4421,8 @@    ]    "TARGET_HAVE_MVE"    "vmlaldava.%#\t%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")  ])  ;; @@ -4182,7 +4438,8 @@    ]    "TARGET_HAVE_MVE"    "vmlaldavax.s%#\t%Q0, %R0, %q2, %q3" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlaldavaxq_s")) +  (set_attr "type" "mve_move")  ])  ;; @@ -4198,7 +4455,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")])  ;; @@ -4214,7 +4472,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]) @@ -4229,7 +4488,8 @@    ]    "TARGET_HAVE_MVE"    "vmlsldava.s%# %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")  ])  ;; @@ -4245,7 +4505,8 @@    ]    "TARGET_HAVE_MVE"    "vmlsldavax.s%# %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")  ])  ;; @@ -4261,7 +4522,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")])  ;; @@ -4277,7 +4539,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]) @@ -4292,7 +4555,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]) @@ -4307,7 +4571,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]) @@ -4322,7 +4587,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")])  ;; @@ -4338,7 +4604,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")])  ;; @@ -4354,7 +4621,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]) @@ -4369,7 +4637,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")])  ;; @@ -4385,7 +4654,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]) @@ -4400,7 +4670,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vpsel %q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vpselq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -4416,7 +4687,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")])  ;; @@ -4432,7 +4704,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")])  ;; @@ -4448,7 +4721,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")])  ;; @@ -4464,7 +4738,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")])  ;; @@ -4480,7 +4755,8 @@    ]    "TARGET_HAVE_MVE"    "vqrshrnt.%#    %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")  ])  ;; @@ -4496,7 +4772,8 @@    ]    "TARGET_HAVE_MVE"    "vqrshrunt.s%#    %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")  ])  ;; @@ -4512,7 +4789,8 @@    ]    "TARGET_HAVE_MVE"    "vqshrnb.%#\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")  ])  ;; @@ -4528,7 +4806,8 @@    ]    "TARGET_HAVE_MVE"    "vqshrnt.%#    %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")  ])  ;; @@ -4544,7 +4823,8 @@    ]    "TARGET_HAVE_MVE"    "vqshrunb.s%#    %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")  ])  ;; @@ -4560,7 +4840,8 @@    ]    "TARGET_HAVE_MVE"    "vqshrunt.s%#    %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")  ])  ;; @@ -4576,7 +4857,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")])  ;; @@ -4592,7 +4874,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")])  ;; @@ -4608,7 +4891,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")])  ;; @@ -4624,7 +4908,8 @@    ]    "TARGET_HAVE_MVE"    "vrmlaldavhax.s32 %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")  ])  ;; @@ -4640,7 +4925,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")])  ;; @@ -4656,7 +4942,8 @@    ]    "TARGET_HAVE_MVE"    "vrmlsldavhax.s32 %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")  ])  ;; @@ -4672,7 +4959,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")])  ;; @@ -4688,7 +4976,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")])  ;; @@ -4704,7 +4993,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")])  ;; @@ -4720,7 +5010,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")])  ;; @@ -4736,7 +5027,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")])  ;; @@ -4752,7 +5044,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")])  ;; @@ -4768,7 +5061,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")])  ;; @@ -4784,7 +5078,8 @@    ]    "TARGET_HAVE_MVE"    "vrshrnb.i%#    %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")  ])  ;; @@ -4800,7 +5095,8 @@    ]    "TARGET_HAVE_MVE"    "vrshrnt.i%#    %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")  ])  ;; @@ -4816,7 +5112,8 @@    ]    "TARGET_HAVE_MVE"    "vshrnb.i%#    %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")  ])  ;; @@ -4832,7 +5129,8 @@    ]    "TARGET_HAVE_MVE"    "vshrnt.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")  ])  ;; @@ -4848,7 +5146,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")])  ;; @@ -4864,7 +5163,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")])  ;; @@ -4880,7 +5180,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")])  ;; @@ -4897,7 +5198,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")])  ;; @@ -4913,7 +5215,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")])  ;; @@ -4929,7 +5232,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")])  ;; @@ -4945,7 +5249,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")])  ;; @@ -4961,7 +5266,8 @@    ]    "TARGET_HAVE_MVE"    "vrmlsldavha.s32 %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")  ])  ;; @@ -4978,7 +5284,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")  ])  ;; @@ -4995,7 +5302,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]) @@ -5011,7 +5319,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]) @@ -5027,7 +5336,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]) @@ -5043,7 +5353,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]) @@ -5059,7 +5370,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]) @@ -5075,7 +5387,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")])  ;; @@ -5092,7 +5405,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")])  ;; @@ -5109,7 +5423,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")])  ;; @@ -5126,7 +5441,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")])  ;; @@ -5143,7 +5459,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")])  ;; @@ -5160,7 +5477,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")])  ;; @@ -5177,7 +5495,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")])  ;; @@ -5194,7 +5513,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")])  ;; @@ -5211,7 +5531,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")])  ;; @@ -5228,7 +5549,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")])  ;; @@ -5245,7 +5567,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")])  ;; @@ -5262,7 +5585,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")])  ;; @@ -5279,7 +5603,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")])  ;; @@ -5296,7 +5621,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")])  ;; @@ -5313,7 +5639,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")])  ;; @@ -5330,7 +5657,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")])  ;; @@ -5347,7 +5675,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")])  ;; @@ -5364,7 +5693,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")])  ;; @@ -5381,7 +5711,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")])  ;; @@ -5398,7 +5729,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")])  ;; @@ -5415,7 +5747,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")])  ;; @@ -5432,7 +5765,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")])  ;; @@ -5449,7 +5783,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")])  ;; @@ -5466,7 +5801,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")])  ;; @@ -5483,7 +5819,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")])  ;; @@ -5500,7 +5837,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")])  ;; @@ -5517,7 +5855,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")])  ;; @@ -5534,7 +5873,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")])  ;; @@ -5551,7 +5891,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")])  ;; @@ -5568,7 +5909,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")])  ;; @@ -5585,7 +5927,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")])  ;; @@ -5602,7 +5945,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")])  ;; @@ -5619,7 +5963,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")])  ;; @@ -5636,7 +5981,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")])  ;; @@ -5653,7 +5999,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")])  ;; @@ -5670,7 +6017,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")])  ;; @@ -5687,7 +6035,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")])  ;; @@ -5704,7 +6053,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")])  ;; @@ -5721,7 +6071,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")])  ;; @@ -5738,7 +6089,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")])  ;; @@ -5755,7 +6107,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")])  ;; @@ -5772,7 +6125,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")])  ;; @@ -5789,7 +6143,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")])  ;; @@ -5806,7 +6161,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")])  ;; @@ -5823,7 +6179,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")])  ;; @@ -5840,7 +6197,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")])  ;; @@ -5857,7 +6215,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")])  ;; @@ -5874,7 +6233,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")])  ;; @@ -5891,7 +6251,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")])  ;; @@ -5908,7 +6269,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")])  ;; @@ -5925,7 +6287,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")])  ;; @@ -5942,7 +6305,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")])  ;; @@ -5959,7 +6323,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")])  ;; @@ -5976,7 +6341,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")])  ;; @@ -5993,7 +6359,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")])  ;; @@ -6010,7 +6377,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")])  ;; @@ -6027,7 +6395,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")])  ;; @@ -6044,7 +6413,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")])  ;; @@ -6061,7 +6431,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")])  ;; @@ -6078,7 +6449,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")])  ;; @@ -6095,7 +6467,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")])  ;; @@ -6112,7 +6485,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")])  ;; @@ -6129,8 +6503,9 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vmlaldavaxt.%#\t%Q0, %R0, %q2, %q3" -  [(set_attr "type" "mve_move") -   (set_attr "length""8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vmlaldavaxq_")) +  (set_attr "type" "mve_move") +  (set_attr "length""8")])  ;;  ;; [vqrshrnbq_m_n_u, vqrshrnbq_m_n_s]) @@ -6146,7 +6521,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")])  ;; @@ -6163,7 +6539,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")])  ;; @@ -6180,7 +6557,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")])  ;; @@ -6197,7 +6575,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")])  ;; @@ -6214,7 +6593,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")])  ;; @@ -6231,7 +6611,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")])  ;; @@ -6248,7 +6629,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")])  ;; @@ -6265,7 +6647,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")])  ;; @@ -6282,7 +6665,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")])  ;; @@ -6299,7 +6683,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")])  ;; @@ -6316,7 +6701,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")])  ;; @@ -6333,7 +6719,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")])  ;; @@ -6350,7 +6737,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")])  ;; @@ -6367,7 +6755,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")])  ;; @@ -6384,7 +6773,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")])  ;; @@ -6401,7 +6791,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")])  ;; @@ -6418,7 +6809,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")])  ;; @@ -6435,7 +6827,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")])  ;; @@ -6452,7 +6845,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")])  ;; @@ -6469,7 +6863,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")])  ;; @@ -6486,7 +6881,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")])  ;; @@ -6503,7 +6899,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")])  ;; @@ -6520,7 +6917,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")])  ;; @@ -6537,7 +6935,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")])  ;; @@ -6554,7 +6953,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")])  ;; @@ -6571,7 +6971,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")])  ;; @@ -6588,7 +6989,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]) @@ -6604,7 +7006,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")])  ;; @@ -6621,7 +7024,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")])  ;; @@ -6638,7 +7042,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")])  ;; @@ -6655,7 +7060,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")])  ;; @@ -6672,7 +7078,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")])  ;; @@ -6689,7 +7096,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")])  ;; @@ -6706,7 +7114,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")])  ;; @@ -6723,7 +7132,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")])  ;; @@ -6740,7 +7150,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")])  ;; @@ -6757,7 +7168,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")])  ;; @@ -6774,7 +7186,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")])  ;; @@ -6791,7 +7204,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")])  ;; @@ -6808,7 +7222,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")])  ;; @@ -6825,7 +7240,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")])  ;; @@ -6842,7 +7258,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")])  ;; @@ -6859,7 +7276,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")])  ;; @@ -6876,7 +7294,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")])  ;; @@ -6893,7 +7312,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")])  ;; @@ -6910,7 +7330,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")])  ;; @@ -6927,7 +7348,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")])  ;; @@ -6944,7 +7366,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")])  ;; @@ -6961,7 +7384,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")])  ;; @@ -6978,7 +7402,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")])  ;; @@ -6995,7 +7420,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")])  ;; @@ -7012,7 +7438,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")])  ;; @@ -7029,7 +7456,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")])  ;; @@ -7046,7 +7474,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")])  ;; @@ -7063,7 +7492,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")])  ;; @@ -7080,7 +7510,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")])  ;; @@ -7100,7 +7531,8 @@     output_asm_insn("vstrb.\t%q1, %E0",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrbq_")) +  (set_attr "length" "4")])  ;;  ;; [vstrbq_scatter_offset_s vstrbq_scatter_offset_u] @@ -7128,7 +7560,8 @@        VSTRBSOQ))]    "TARGET_HAVE_MVE"    "vstrb.\t%q2, [%0, %q1]" -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrbq_scatter_offset__insn")) +  (set_attr "length" "4")])  ;;  ;; [vstrwq_scatter_base_s vstrwq_scatter_base_u] @@ -7150,7 +7583,8 @@     output_asm_insn("vstrw.u32\t%q2, [%q0, %1]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_scatter_base_v4si")) +  (set_attr "length" "4")])  ;;  ;; [vldrbq_gather_offset_s vldrbq_gather_offset_u] @@ -7173,7 +7607,8 @@       output_asm_insn ("vldrb.\t%q0, [%m1, %q2]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrbq_gather_offset_")) +  (set_attr "length" "4")])  ;;  ;; [vldrbq_s vldrbq_u] @@ -7195,7 +7630,8 @@       output_asm_insn ("vldrb.\t%q0, %E1",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrbq_")) +  (set_attr "length" "4")])  ;;  ;; [vldrwq_gather_base_s vldrwq_gather_base_u] @@ -7215,7 +7651,8 @@     output_asm_insn ("vldrw.u32\t%q0, [%q1, %2]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_base_v4si")) +  (set_attr "length" "4")])  ;;  ;; [vstrbq_scatter_offset_p_s vstrbq_scatter_offset_p_u] @@ -7247,7 +7684,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] @@ -7270,7 +7708,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")])  (define_insn "mve_vstrbq_p_"    [(set (match_operand: 0 "mve_memory_operand" "=Ux") @@ -7288,7 +7727,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 +7753,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 +7777,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 +7799,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] @@ -7376,7 +7819,8 @@     output_asm_insn ("vldrh.16\t%q0, %E1",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrhq_fv8hf")) +  (set_attr "length" "4")])  ;;  ;; [vldrhq_gather_offset_s vldrhq_gather_offset_u] @@ -7399,7 +7843,8 @@       output_asm_insn ("vldrh.\t%q0, [%m1, %q2]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrhq_gather_offset_")) +  (set_attr "length" "4")])  ;;  ;; [vldrhq_gather_offset_z_s vldrhq_gather_offset_z_u] @@ -7424,7 +7869,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] @@ -7447,7 +7893,8 @@       output_asm_insn ("vldrh.\t%q0, [%m1, %q2, uxtw #1]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrhq_gather_shifted_offset_")) +  (set_attr "length" "4")])  ;;  ;; [vldrhq_gather_shifted_offset_z_s vldrhq_gather_shited_offset_z_u] @@ -7472,7 +7919,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] @@ -7494,7 +7942,8 @@       output_asm_insn ("vldrh.\t%q0, %E1",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrhq_")) +  (set_attr "length" "4")])  ;;  ;; [vldrhq_z_f] @@ -7514,7 +7963,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 +7987,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] @@ -7556,7 +8007,8 @@     output_asm_insn ("vldrw.32\t%q0, %E1",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_fv4sf")) +  (set_attr "length" "4")])  ;;  ;; [vldrwq_s vldrwq_u] @@ -7575,7 +8027,8 @@     output_asm_insn ("vldrw.32\t%q0, %E1",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_v4si")) +  (set_attr "length" "4")])  ;;  ;; [vldrwq_z_f] @@ -7595,7 +8048,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 +8069,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") @@ -7655,7 +8110,8 @@     output_asm_insn ("vldrd.64\t%q0, [%q1, %2]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrdq_gather_base_v2di")) +  (set_attr "length" "4")])  ;;  ;; [vldrdq_gather_base_z_s vldrdq_gather_base_z_u] @@ -7676,7 +8132,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] @@ -7696,7 +8153,8 @@    output_asm_insn ("vldrd.u64\t%q0, [%m1, %q2]",ops);    return "";  } - [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrdq_gather_offset_v2di")) +  (set_attr "length" "4")])  ;;  ;; [vldrdq_gather_offset_z_s vldrdq_gather_offset_z_u] @@ -7717,7 +8175,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] @@ -7737,7 +8196,8 @@     output_asm_insn ("vldrd.u64\t%q0, [%m1, %q2, uxtw #3]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrdq_gather_shifted_offset_v2di")) +  (set_attr "length" "4")])  ;;  ;; [vldrdq_gather_shifted_offset_z_s vldrdq_gather_shifted_offset_z_u] @@ -7758,7 +8218,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] @@ -7778,7 +8239,8 @@     output_asm_insn ("vldrh.f16\t%q0, [%m1, %q2]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrhq_gather_offset_fv8hf")) +  (set_attr "length" "4")])  ;;  ;; [vldrhq_gather_offset_z_f] @@ -7800,7 +8262,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] @@ -7820,7 +8283,8 @@     output_asm_insn ("vldrh.f16\t%q0, [%m1, %q2, uxtw #1]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrhq_gather_shifted_offset_fv8hf")) +  (set_attr "length" "4")])  ;;  ;; [vldrhq_gather_shifted_offset_z_f] @@ -7842,7 +8306,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] @@ -7862,7 +8327,8 @@     output_asm_insn ("vldrw.u32\t%q0, [%q1, %2]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_base_fv4sf")) +  (set_attr "length" "4")])  ;;  ;; [vldrwq_gather_base_z_f] @@ -7883,7 +8349,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] @@ -7903,7 +8370,8 @@     output_asm_insn ("vldrw.u32\t%q0, [%m1, %q2]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_offset_fv4sf")) +  (set_attr "length" "4")])  ;;  ;; [vldrwq_gather_offset_s vldrwq_gather_offset_u] @@ -7923,7 +8391,8 @@     output_asm_insn ("vldrw.u32\t%q0, [%m1, %q2]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_offset_v4si")) +  (set_attr "length" "4")])  ;;  ;; [vldrwq_gather_offset_z_f] @@ -7945,7 +8414,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 +8437,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] @@ -7987,7 +8458,8 @@     output_asm_insn ("vldrw.u32\t%q0, [%m1, %q2, uxtw #2]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_shifted_offset_fv4sf")) +  (set_attr "length" "4")])  ;;  ;; [vldrwq_gather_shifted_offset_s vldrwq_gather_shifted_offset_u] @@ -8007,7 +8479,8 @@     output_asm_insn ("vldrw.u32\t%q0, [%m1, %q2, uxtw #2]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_shifted_offset_v4si")) +  (set_attr "length" "4")])  ;;  ;; [vldrwq_gather_shifted_offset_z_f] @@ -8029,7 +8502,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 +8525,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] @@ -8070,7 +8545,8 @@     output_asm_insn ("vstrh.16\t%q1, %E0",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrhq_fv8hf")) +  (set_attr "length" "4")])  ;;  ;; [vstrhq_p_f] @@ -8091,7 +8567,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] @@ -8113,7 +8590,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] @@ -8145,7 +8623,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] @@ -8173,7 +8652,8 @@        VSTRHSOQ))]    "TARGET_HAVE_MVE"    "vstrh.\t%q2, [%0, %q1]" -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrhq_scatter_offset__insn")) +  (set_attr "length" "4")])  ;;  ;; [vstrhq_scatter_shifted_offset_p_s vstrhq_scatter_shifted_offset_p_u] @@ -8205,7 +8685,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] @@ -8234,7 +8715,8 @@        VSTRHSSOQ))]    "TARGET_HAVE_MVE"    "vstrh.\t%q2, [%0, %q1, uxtw #1]" -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrhq_scatter_shifted_offset__insn")) +  (set_attr "length" "4")])  ;;  ;; [vstrhq_s, vstrhq_u] @@ -8253,7 +8735,8 @@     output_asm_insn ("vstrh.\t%q1, %E0",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrhq_")) +  (set_attr "length" "4")])  ;;  ;; [vstrwq_f] @@ -8272,7 +8755,8 @@     output_asm_insn ("vstrw.32\t%q1, %E0",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_fv4sf")) +  (set_attr "length" "4")])  ;;  ;; [vstrwq_p_f] @@ -8293,7 +8777,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] @@ -8314,7 +8799,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] @@ -8333,7 +8819,8 @@     output_asm_insn ("vstrw.32\t%q1, %E0",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_v4si")) +  (set_attr "length" "4")])  (define_expand "mve_vst1q_f"    [(match_operand: 0 "mve_memory_operand") @@ -8376,7 +8863,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] @@ -8398,7 +8886,8 @@     output_asm_insn ("vstrd.u64\t%q2, [%q0, %1]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrdq_scatter_base_v2di")) +  (set_attr "length" "4")])  ;;  ;; [vstrdq_scatter_offset_p_s vstrdq_scatter_offset_p_u] @@ -8429,7 +8918,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] @@ -8457,7 +8947,8 @@        VSTRDSOQ))]    "TARGET_HAVE_MVE"    "vstrd.64\t%q2, [%0, %q1]" -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrdq_scatter_offset_v2di_insn")) +  (set_attr "length" "4")])  ;;  ;; [vstrdq_scatter_shifted_offset_p_s vstrdq_scatter_shifted_offset_p_u] @@ -8489,7 +8980,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] @@ -8518,7 +9010,8 @@        VSTRDSSOQ))]    "TARGET_HAVE_MVE"    "vstrd.64\t%q2, [%0, %q1, UXTW #3]" -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrdq_scatter_shifted_offset_v2di_insn")) +  (set_attr "length" "4")])  ;;  ;; [vstrhq_scatter_offset_f] @@ -8546,7 +9039,8 @@        VSTRHQSO_F))]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vstrh.16\t%q2, [%0, %q1]" -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrhq_scatter_offset_fv8hf_insn")) +  (set_attr "length" "4")])  ;;  ;; [vstrhq_scatter_offset_p_f] @@ -8577,7 +9071,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] @@ -8605,7 +9100,8 @@        VSTRHQSSO_F))]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vstrh.16\t%q2, [%0, %q1, uxtw #1]" -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrhq_scatter_shifted_offset_fv8hf_insn")) +  (set_attr "length" "4")])  ;;  ;; [vstrhq_scatter_shifted_offset_p_f] @@ -8637,7 +9133,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] @@ -8659,7 +9156,8 @@     output_asm_insn ("vstrw.u32\t%q2, [%q0, %1]",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_scatter_base_fv4sf")) +  (set_attr "length" "4")])  ;;  ;; [vstrwq_scatter_base_p_f] @@ -8682,7 +9180,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] @@ -8710,7 +9209,8 @@        VSTRWQSO_F))]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vstrw.32\t%q2, [%0, %q1]" -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_scatter_offset_fv4sf_insn")) +  (set_attr "length" "4")])  ;;  ;; [vstrwq_scatter_offset_p_f] @@ -8741,7 +9241,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] @@ -8772,7 +9273,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] @@ -8800,7 +9302,8 @@        VSTRWSOQ))]    "TARGET_HAVE_MVE"    "vstrw.32\t%q2, [%0, %q1]" -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_scatter_offset_v4si_insn")) +  (set_attr "length" "4")])  ;;  ;; [vstrwq_scatter_shifted_offset_f] @@ -8828,7 +9331,8 @@       VSTRWQSSO_F))]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vstrw.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_f] @@ -8860,7 +9364,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] @@ -8892,7 +9397,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] @@ -8921,7 +9427,8 @@        VSTRWSSOQ))]    "TARGET_HAVE_MVE"    "vstrw.32\t%q2, [%0, %q1, uxtw #2]" -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_scatter_shifted_offset_v4si_insn")) +  (set_attr "length" "4")])  ;;  ;; [vaddq_s, vaddq_u]) @@ -8934,7 +9441,8 @@    ]    "TARGET_HAVE_MVE"    "vadd.i%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vaddq")) +  (set_attr "type" "mve_move")  ])  ;; @@ -8948,7 +9456,8 @@    ]    "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT"    "vadd.f%#\t%q0, %q1, %q2" -  [(set_attr "type" "mve_move") + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vaddq_f")) +  (set_attr "type" "mve_move")  ])  ;; @@ -9017,7 +9526,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]) @@ -9085,7 +9595,8 @@           (match_operand:SI 6 "immediate_operand" "i")))]   "TARGET_HAVE_MVE"   "vpst\;vddupt.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]) @@ -9201,8 +9712,9 @@    ]    "TARGET_HAVE_MVE"    "vpst\;vdwdupt.u%#\t%q2, %3, %R4, %5" -  [(set_attr "type" "mve_move") -   (set_attr "length""8")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vdwdupq_wb_u_insn")) +  (set_attr "type" "mve_move") +  (set_attr "length""8")])  ;;  ;; [viwdupq_n_u]) @@ -9318,7 +9830,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")])  ;; @@ -9344,7 +9857,8 @@     output_asm_insn ("vstrw.u32\t%q2, [%q0, %1]!",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_scatter_base_wb_v4si")) +  (set_attr "length" "4")])  ;;  ;; [vstrwq_scatter_base_wb_p_s vstrwq_scatter_base_wb_p_u] @@ -9370,7 +9884,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] @@ -9395,7 +9910,8 @@     output_asm_insn ("vstrw.u32\t%q2, [%q0, %1]!",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrwq_scatter_base_wb_fv4sf")) +  (set_attr "length" "4")])  ;;  ;; [vstrwq_scatter_base_wb_p_f] @@ -9421,7 +9937,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] @@ -9446,7 +9963,8 @@     output_asm_insn ("vstrd.u64\t%q2, [%q0, %1]!",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vstrdq_scatter_base_wb_v2di")) +  (set_attr "length" "4")])  ;;  ;; [vstrdq_scatter_base_wb_p_s vstrdq_scatter_base_wb_p_u] @@ -9472,7 +9990,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") @@ -9524,7 +10043,8 @@     output_asm_insn ("vldrw.u32\t%q0, [%q1, %2]!",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_base_wb_v4si_insn")) +  (set_attr "length" "4")])  (define_expand "mve_vldrwq_gather_base_wb_z_v4si"    [(match_operand:V4SI 0 "s_register_operand") @@ -9580,7 +10100,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") @@ -9632,7 +10153,8 @@     output_asm_insn ("vldrw.u32\t%q0, [%q1, %2]!",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrwq_gather_base_wb_fv4sf_insn")) +  (set_attr "length" "4")])  (define_expand "mve_vldrwq_gather_base_wb_z_fv4sf"    [(match_operand:V4SI 0 "s_register_operand") @@ -9689,7 +10211,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") @@ -9742,7 +10265,8 @@     output_asm_insn ("vldrd.64\t%q0, [%q1, %2]!",ops);     return "";  } -  [(set_attr "length" "4")]) + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vldrdq_gather_base_wb_v2di_insn")) +  (set_attr "length" "4")])  (define_expand "mve_vldrdq_gather_base_wb_z_v2di"    [(match_operand:V2DI 0 "s_register_operand") @@ -9781,7 +10305,7 @@     (unspec:SI [(reg:SI VFPCC_REGNUM)] UNSPEC_GET_FPSCR_NZCVQC))]   "TARGET_HAVE_MVE"   "vmrs\\t%0, FPSCR_nzcvqc" -  [(set_attr "type" "mve_move")]) + [(set_attr "type" "mve_move")])  (define_insn "set_fpscr_nzcvqc"   [(set (reg:SI VFPCC_REGNUM) @@ -9789,7 +10313,7 @@      VUNSPEC_SET_FPSCR_NZCVQC))]   "TARGET_HAVE_MVE"   "vmsr\\tFPSCR_nzcvqc, %0" -  [(set_attr "type" "mve_move")]) + [(set_attr "type" "mve_move")])  ;;  ;; [vldrdq_gather_base_wb_z_s vldrdq_gather_base_wb_z_u] @@ -9814,7 +10338,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])  ;; @@ -9831,7 +10356,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")])  ;; @@ -9848,7 +10374,8 @@    ]    "TARGET_HAVE_MVE"    "vadci.i32\t%q0, %q1, %q2" -  [(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" "4")])  ;; @@ -9867,7 +10394,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")])  ;; @@ -9884,7 +10412,8 @@    ]    "TARGET_HAVE_MVE"    "vadc.i32\t%q0, %q1, %q2" -  [(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" "4")     (set_attr "conds" "set")]) @@ -9904,7 +10433,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")])  ;; @@ -9921,7 +10451,8 @@    ]    "TARGET_HAVE_MVE"    "vsbci.i32\t%q0, %q1, %q2" -  [(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" "4")])  ;; @@ -9940,7 +10471,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")])  ;; @@ -9957,7 +10489,8 @@    ]    "TARGET_HAVE_MVE"    "vsbc.i32\t%q0, %q1, %q2" -  [(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" "4")])  ;; @@ -9986,7 +10519,7 @@              "vst21.\t{%q0, %q1}, %3", ops);     return "";  } -  [(set_attr "length" "8")]) + [(set_attr "length" "8")])  ;;  ;; [vld2q]) @@ -10014,7 +10547,7 @@              "vld21.\t{%q0, %q1}, %3", ops);     return "";  } -  [(set_attr "length" "8")]) + [(set_attr "length" "8")])  ;;  ;; [vld4q]) @@ -10357,7 +10890,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. @@ -10369,7 +10903,8 @@       UNSPEC_VCDE))]    "TARGET_CDE && TARGET_HAVE_MVE"    "vcx1\\tp%c1, %q0, #%c2" -  [(set_attr "type" "coproc")] + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_arm_vcx1qv16qi")) +  (set_attr "type" "coproc")]  )  (define_insn "arm_vcx1qav16qi" @@ -10380,7 +10915,8 @@       UNSPEC_VCDEA))]    "TARGET_CDE && TARGET_HAVE_MVE"    "vcx1a\\tp%c1, %q0, #%c3" -  [(set_attr "type" "coproc")] + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_arm_vcx1qav16qi")) +  (set_attr "type" "coproc")]  )  (define_insn "arm_vcx2qv16qi" @@ -10391,7 +10927,8 @@       UNSPEC_VCDE))]    "TARGET_CDE && TARGET_HAVE_MVE"    "vcx2\\tp%c1, %q0, %q2, #%c3" -  [(set_attr "type" "coproc")] + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_arm_vcx2qv16qi")) +  (set_attr "type" "coproc")]  )  (define_insn "arm_vcx2qav16qi" @@ -10403,7 +10940,8 @@       UNSPEC_VCDEA))]    "TARGET_CDE && TARGET_HAVE_MVE"    "vcx2a\\tp%c1, %q0, %q3, #%c4" -  [(set_attr "type" "coproc")] + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_arm_vcx2qav16qi")) +  (set_attr "type" "coproc")]  )  (define_insn "arm_vcx3qv16qi" @@ -10415,7 +10953,8 @@       UNSPEC_VCDE))]    "TARGET_CDE && TARGET_HAVE_MVE"    "vcx3\\tp%c1, %q0, %q2, %q3, #%c4" -  [(set_attr "type" "coproc")] + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_arm_vcx3qv16qi")) +  (set_attr "type" "coproc")]  )  (define_insn "arm_vcx3qav16qi" @@ -10428,7 +10967,8 @@       UNSPEC_VCDEA))]    "TARGET_CDE && TARGET_HAVE_MVE"    "vcx3a\\tp%c1, %q0, %q3, %q4, #%c5" -  [(set_attr "type" "coproc")] + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_arm_vcx3qav16qi")) +  (set_attr "type" "coproc")]  )  (define_insn "arm_vcx1q_p_v16qi" @@ -10440,7 +10980,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")]  ) @@ -10454,7 +10995,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")]  ) @@ -10469,7 +11011,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/config/arm/vec-common.md b/gcc/config/arm/vec-common.md index f06df4db63654db94d30eac637e9cc6464ec1941..0aa6b16348baa4d9632b354cd36268ba3e24e9dc 100644 --- a/gcc/config/arm/vec-common.md +++ b/gcc/config/arm/vec-common.md @@ -366,7 +366,8 @@    "@     vshl.%#\t%0, %1, %2     * return neon_output_shift_immediate (\"vshl\", 'i', &operands[2], mode, VALID_NEON_QREG_MODE (mode), true);" -  [(set_attr "type" "neon_shift_reg, neon_shift_imm")] + [(set (attr "mve_unpredicated_insn") (symbol_ref "CODE_FOR_mve_vshlq_")) +  (set_attr "type" "neon_shift_reg, neon_shift_imm")]  )  (define_expand "vashl3" 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..acf0836050c19b983feeaf97c3e52e1318bb194d --- /dev/null +++ b/gcc/testsuite/gcc.target/arm/dlstp-compile-asm.c @@ -0,0 +1,149 @@ +/* { 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 -mfloat-abi=hard -mfpu=auto -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 (vmulq, _x) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY (vsubq, _x) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY (vhaddq, _x) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY (vorrq, _x) + + +#define TEST_COMPILE_IN_DLSTP_TERNARY_M(BITS, LANES, LDRSTRYTPE, TYPE, SIGN, NAME, PRED)                \ +void test_##NAME##PRED##_##SIGN##BITS (TYPE##BITS##x##LANES##_t __inactive, 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 (__inactive, 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_M(BITS, LANES, LDRSTRYTPE, NAME, PRED)    \ +TEST_COMPILE_IN_DLSTP_TERNARY_M (BITS, LANES, LDRSTRYTPE, int, s, NAME, PRED)            \ +TEST_COMPILE_IN_DLSTP_TERNARY_M (BITS, LANES, LDRSTRYTPE, uint, u, NAME, PRED) + +#define TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_M(NAME, PRED)            \ +TEST_COMPILE_IN_DLSTP_SIGNED_UNSIGNED_TERNARY_M (8, 16, b, NAME, PRED)                \ +TEST_COMPILE_IN_DLSTP_SIGNED_UNSIGNED_TERNARY_M (16, 8, h, NAME, PRED)                \ +TEST_COMPILE_IN_DLSTP_SIGNED_UNSIGNED_TERNARY_M (32, 4, w, NAME, PRED) + + +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_M (vaddq, _m) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_M (vmulq, _m) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_M (vsubq, _m) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_M (vhaddq, _m) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_M (vorrq, _m) + +#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) + +#define TEST_COMPILE_IN_DLSTP_TERNARY_M_N(BITS, LANES, LDRSTRYTPE, TYPE, SIGN, NAME, PRED)    \ +void test_##NAME##PRED##_n_##SIGN##BITS (TYPE##BITS##x##LANES##_t __inactive, 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 (__inactive, 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_M_N(BITS, LANES, LDRSTRYTPE, NAME, PRED)    \ +TEST_COMPILE_IN_DLSTP_TERNARY_M_N (BITS, LANES, LDRSTRYTPE, int, s, NAME, PRED)            \ +TEST_COMPILE_IN_DLSTP_TERNARY_M_N (BITS, LANES, LDRSTRYTPE, uint, u, NAME, PRED) + +#define TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_M_N(NAME, PRED)            \ +TEST_COMPILE_IN_DLSTP_SIGNED_UNSIGNED_TERNARY_M_N (8, 16, b, NAME, PRED)                \ +TEST_COMPILE_IN_DLSTP_SIGNED_UNSIGNED_TERNARY_M_N (16, 8, h, NAME, PRED)                \ +TEST_COMPILE_IN_DLSTP_SIGNED_UNSIGNED_TERNARY_M_N (32, 4, w, NAME, PRED) + +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_M_N (vaddq, _m) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_M_N (vmulq, _m) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_M_N (vsubq, _m) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_M_N (vhaddq, _m) + +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_M_N (vbrsrq, _m) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_M_N (vshlq, _m) +TEST_COMPILE_IN_DLSTP_INTBITS_SIGNED_UNSIGNED_TERNARY_M_N (vshrq, _m) + +/* 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} 144 } } */ +/* { dg-final { scan-assembler-times {\tletp} 144 } } */ +/* { dg-final { scan-assembler-not "\tvctp\t" } } */ +/* { dg-final { scan-assembler-not "\tvpst\t" } } */ +/* { dg-final { scan-assembler-not "p0" } } */ --------------KGcC4Cr2YcJetzzpHM1ZeA3P Content-Type: text/x-patch; charset=UTF-8; name="rb16364.patch" Content-Disposition: attachment; filename="rb16364.patch" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2djYy9jb25maWcvYXJtL2FybS5oIGIvZ2NjL2NvbmZpZy9hcm0vYXJtLmgK aW5kZXggN2Q0MGI4YjdlMDBiYzNiNGRjZmY3ZWM2ODViYTg2NGNhMzg4NTA1Mi4uNDA5NzJjMjRi YTE0OTczMDJhMmYyMzQyOWNlMDcxMzg1YWUyOTk4NCAxMDA2NDQKLS0tIGEvZ2NjL2NvbmZpZy9h cm0vYXJtLmgKKysrIGIvZ2NjL2NvbmZpZy9hcm0vYXJtLmgKQEAgLTIzNTgsNiArMjM1OCwyMSBA QCBleHRlcm4gaW50IG1ha2luZ19jb25zdF90YWJsZTsKICAgZWxzZSBpZiAoVEFSR0VUX1RIVU1C MSkJCQkJXAogICAgIHRodW1iMV9maW5hbF9wcmVzY2FuX2luc24gKElOU04pCiAKKy8qIFRoZXNl IGRlZmluZXMgYXJlIHVzZWZ1bCB0byByZWZlciB0byB0aGUgdmFsdWUgb2YgdGhlIG12ZV91bnBy ZWRpY2F0ZWRfaW5zbgorICAgaW5zbiBhdHRyaWJ1dGUuICBOb3RlIHRoYXQsIGJlY2F1c2UgdGhl c2UgdXNlIHRoZSBnZXRfYXR0cl8qIGZ1bmN0aW9uLCB0aGVzZQorICAgd2lsbCBjaGFuZ2UgcmVj b2dfZGF0YSBpZiAoSU5TTikgaXNuJ3QgY3VycmVudF9pbnNuLiAgKi8KKyNkZWZpbmUgTVZFX1ZQ VF9QUkVESUNBQkxFX0lOU05fUChJTlNOKQkJCQkJXAorICAocmVjb2dfbWVtb2l6ZWQgKElOU04p ID49IDAJCQkJCQlcCisgICYmIGdldF9hdHRyX212ZV91bnByZWRpY2F0ZWRfaW5zbiAoSU5TTikg IT0gMCkJCQlcCisKKyNkZWZpbmUgTVZFX1ZQVF9QUkVESUNBVEVEX0lOU05fUChJTlNOKQkJCQkJ XAorICAoTVZFX1ZQVF9QUkVESUNBQkxFX0lOU05fUCAoSU5TTikJCQkJCVwKKyAgICYmIHJlY29n X21lbW9pemVkIChJTlNOKSAhPSBnZXRfYXR0cl9tdmVfdW5wcmVkaWNhdGVkX2luc24gKElOU04p KQlcCisKKyNkZWZpbmUgTVZFX1ZQVF9VTlBSRURJQ0FURURfSU5TTl9QKElOU04pCQkJCVwKKyAg KE1WRV9WUFRfUFJFRElDQUJMRV9JTlNOX1AgKElOU04pCQkJCQlcCisgICAmJiByZWNvZ19tZW1v aXplZCAoSU5TTikgPT0gZ2V0X2F0dHJfbXZlX3VucHJlZGljYXRlZF9pbnNuIChJTlNOKSkJXAor CiAjZGVmaW5lIEFSTV9TSUdOX0VYVEVORCh4KSAgKChIT1NUX1dJREVfSU5UKQkJCVwKICAgKEhP U1RfQklUU19QRVJfV0lERV9JTlQgPD0gMzIgPyAodW5zaWduZWQgSE9TVF9XSURFX0lOVCkgKHgp CVwKICAgIDogKCgoKHVuc2lnbmVkIEhPU1RfV0lERV9JTlQpKHgpKSAmICh1bnNpZ25lZCBIT1NU X1dJREVfSU5UKSAweGZmZmZmZmZmKSB8XApkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9hcm0vYXJt Lm1kIGIvZ2NjL2NvbmZpZy9hcm0vYXJtLm1kCmluZGV4IGNiZmM0NTQzNTMxNDUyYjA3MDhhMzhi ZGY0YWJmNTEwNWI1NGY4YjcuLmU5Nzk0Mzc1MTg3ODgyMDgxM2ZjZDdhNDk3ZTdlNWIyZTgwZWYy ODkgMTAwNjQ0Ci0tLSBhL2djYy9jb25maWcvYXJtL2FybS5tZAorKysgYi9nY2MvY29uZmlnL2Fy bS9hcm0ubWQKQEAgLTEyNCw2ICsxMjQsOCBAQAogOyBhbmQgbm90IGFsbCBBUk0gaW5zbnMgZG8u CiAoZGVmaW5lX2F0dHIgInByZWRpY2F0ZWQiICJ5ZXMsbm8iIChjb25zdF9zdHJpbmcgIm5vIikp CiAKKyhkZWZpbmVfYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIiAiIiAoY29uc3RfaW50IDAp KQorCiA7IExFTkdUSCBvZiBhbiBpbnN0cnVjdGlvbiAoaW4gYnl0ZXMpCiAoZGVmaW5lX2F0dHIg Imxlbmd0aCIgIiIKICAgKGNvbnN0X2ludCA0KSkKZGlmZiAtLWdpdCBhL2djYy9jb25maWcvYXJt L212ZS5tZCBiL2djYy9jb25maWcvYXJtL212ZS5tZAppbmRleCA3NDUyM2Y0OTM1NmE5ZmIwNmFm ZDQ3ZTJhMTlhOThjYWJhMTc5MzdkLi44NTRiOGFiOTM1ZjgyYWQwZWI5OWU2YWY5ODUyY2U4MTU0 Y2Y5ZDlkIDEwMDY0NAotLS0gYS9nY2MvY29uZmlnL2FybS9tdmUubWQKKysrIGIvZ2NjL2NvbmZp Zy9hcm0vbXZlLm1kCkBAIC0xNDIsNyArMTQyLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZF ICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZyaW50enQuZiUjPFZfc3pfZWxl bT4gJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJu ZHFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0 dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTE1Niw3ICsxNTcsOCBAQAogICBdCiAgICJUQVJH RVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnJpbnR4LmYlIzxWX3N6 X2VsZW0+CSVxMCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0 IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZl X3ZybmR4cV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAK IDs7CkBAIC0xNzAsNyArMTcyLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdF VF9IQVZFX01WRV9GTE9BVCIKICAgInZyaW50ei5mJSM8Vl9zel9lbGVtPgklcTAsICVxMSIKLSAg WyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cm5kcV9mPG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0xODQsNyArMTg3LDgg QEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAg InZyaW50cC5mJSM8Vl9zel9lbGVtPgklcTAsICVxMSIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9y ZWYgIkNPREVfRk9SX212ZV92cm5kcHFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTk4LDcgKzIwMiw4IEBACiAgIF0KICAgIlRBUkdFVF9I QVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cmludG4uZiUjPFZfc3pfZWxl bT4JJXEwLCAlcTEiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJu ZG5xX2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsK QEAgLTIxMiw3ICsyMTcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hB VkVfTVZFX0ZMT0FUIgogICAidnJpbnRtLmYlIzxWX3N6X2VsZW0+CSVxMCwgJXExIgotICBbKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZybmRtcV9mPG1vZGU+IikpCisgIChz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0yMjYsNyArMjMyLDggQEAK ICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZy aW50YS5mJSM8Vl9zel9lbGVtPgklcTAsICVxMSIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92cm5kYXFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCiBdKQogCiA7OwpAQCAtMjQwLDcgKzI0Nyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZF X01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cmV2NjQuJSM8Vl9zel9lbGVtPiAl cTAsICVxMSIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cmV2NjRx X2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAg LTI1Myw3ICsyNjEsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVf TVZFX0ZMT0FUIgogICAidm5lZy5mJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTEiCi0gIFsoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5z biIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm5lZ3FfZjxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMjY3LDcgKzI3Niw4IEBACiAgIF0K ICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2ZHVwLiUj PFZfc3pfZWxlbT5cdCVxMCwgJTEiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdmR1cHFfbl9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK IF0pCiAKIDs7CkBAIC0yODAsNyArMjkwLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYm IFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZhYnMuZiUjPFZfc3pfZWxlbT5cdCVxMCwgJXEx IgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5w cmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZhYnNxX2Y8bW9kZT4i KSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTI5NCw3ICsz MDUsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FU IgogICAidnJldjMyLjE2ICVxMCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZyZXYzMnFfZnY4aGYiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQogXSkKIDs7CiA7OyBbdmN2dHRxX2YzMl9mMTZdKQpAQCAtMzA3LDcgKzMxOSw4IEBACiAgIF0K ICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2Y3Z0dC5m MzIuZjE2ICVxMCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0 IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZl X3ZjdnR0cV9mMzJfZjE2djRzZiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBd KQogCiA7OwpAQCAtMzIxLDcgKzMzNCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBU QVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2Y3Z0Yi5mMzIuZjE2ICVxMCwgJXExIgotICBbKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjdnRicV9mMzJfZjE2djRzZiIpKQor ICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMzM1LDcgKzM0OSw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAg ICJ2Y3Z0LmYlIzxWX3N6X2VsZW0+LjxzdXBmPiUjPFZfc3pfZWxlbT4gICAgICAgJXEwLCAlcTEi Ci0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmN2dHFfdG9fZl88c3Vw Zj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAg LTM0OSw3ICszNjQsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cmV2NjQuJSM8 Vl9zel9lbGVtPiAlcTAsICVxMSIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92cmV2NjRxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCiBdKQogCiA7OwpAQCAtMzYzLDcgKzM3OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01W RSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2Y3Z0LjxzdXBmPiUjPFZfc3pfZWxlbT4u ZiUjPFZfc3pfZWxlbT4gICAgICAgJXEwLCAlcTEiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdmN2dHFfZnJvbV9mXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCiBdKQogOzsgW3ZxbmVncV9zXSkKIDs7CkBAIC0zNzUsNyArMzky LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnFuZWcucyUjPFZfc3pfZWxlbT5c dCVxMCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRy ICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxbmVn cV9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBA IC0zODksNyArNDA3LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnFhYnMucyUj PFZfc3pfZWxlbT5cdCVxMCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQor IFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9G T1JfbXZlX3ZxYWJzcV9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK IF0pCiAKIDs7CkBAIC00MDIsNyArNDIxLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidm5lZy5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTEiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xf cmVmICJDT0RFX0ZPUl9tdmVfdm5lZ3Ffczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtNDE1LDcgKzQzNSw4IEBACiAgIF0KICAgIlRBUkdFVF9I QVZFX01WRSIKICAgInZtdm5cdCVxMCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAi Q09ERV9GT1JfbXZlX3Ztdm5xX3U8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogXSkKIChkZWZpbmVfZXhwYW5kICJtdmVfdm12bnFfczxtb2RlPiIKICAgWwpAQCAtNDM2 LDcgKzQ1Nyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZkdXAuJSM8Vl9zel9l bGVtPlx0JXEwLCAlMSIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAo YXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92 ZHVwcV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBd KQogCiA7OwpAQCAtNDQ5LDcgKzQ3MSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAg InZjbHouaSUjPFZfc3pfZWxlbT5cdCVxMCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3Jl ZiAiQ09ERV9GT1JfbXZlX3ZjbHpxX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQogXSkKIChkZWZpbmVfZXhwYW5kICJtdmVfdmNsenFfdTxtb2RlPiIKICAgWwpAQCAt NDcwLDcgKzQ5Myw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZjbHMucyUjPFZf c3pfZWxlbT5cdCVxMCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3ZjbHNxX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkK IAogOzsKQEAgLTQ4NCw3ICs1MDgsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2 YWRkdi48c3VwZj4lIzxWX3N6X2VsZW0+XHQlMCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9s X3JlZiAiQ09ERV9GT1JfbXZlX3ZhZGR2cV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTQ5Nyw3ICs1MjIsOCBAQAogICBdCiAgICJU QVJHRVRfSEFWRV9NVkUiCiAgICJ2YWJzLnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMSIKLSAgWyhz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRl ZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92YWJzcV9zPG1vZGU+IikpCisgIChz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC01MTEsNyArNTM3LDggQEAK ICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnJldjMyLiUjPFZfc3pfZWxlbT5cdCVxMCwg JXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZyZXYzMnFfPHN1 cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBA IC01MjUsNyArNTUyLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidm1vdmx0Ljxz dXBmPiUjPFZfc3pfZWxlbT4gICAlcTAsICVxMSIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92bW92bHRxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtNTM5LDcgKzU2Nyw4IEBACiAgIF0KICAgIlRBUkdF VF9IQVZFX01WRSIKICAgInZtb3ZsYi48c3VwZj4lIzxWX3N6X2VsZW0+ICAgJXEwLCAlcTEiCi0g IFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRp Y2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1vdmxicV88c3VwZj48bW9k ZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTU1Myw3 ICs1ODIsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZM T0FUIgogICAidmN2dHAuPHN1cGY+JSM8Vl9zel9lbGVtPi5mJSM8Vl9zel9lbGVtPiAgICAgICVx MCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJt dmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjdnRwcV88 c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsK QEAgLTU2Nyw3ICs1OTcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hB VkVfTVZFX0ZMT0FUIgogICAidmN2dG4uPHN1cGY+JSM8Vl9zel9lbGVtPi5mJSM8Vl9zel9lbGVt PiAgICAgICVxMCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0 IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZl X3ZjdnRucV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQog XSkKIAogOzsKQEAgLTU4MSw3ICs2MTIsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYg VEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidmN2dG0uPHN1cGY+JSM8Vl9zel9lbGVtPi5mJSM8 Vl9zel9lbGVtPiAgICAgICVxMCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZjdnRtcV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQogXSkKIAogOzsKQEAgLTU5NSw3ICs2MjcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFW RV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidmN2dGEuPHN1cGY+JSM8Vl9zel9l bGVtPi5mJSM8Vl9zel9lbGVtPiAgICAgICVxMCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9s X3JlZiAiQ09ERV9GT1JfbXZlX3ZjdnRhcV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTYwOSw3ICs2NDIsOCBAQAogICBdCiAgICJU QVJHRVRfSEFWRV9NVkUiCiAgICJ2bXZuLmklIzxWX3N6X2VsZW0+ICAlcTAsICUxIgotICBbKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Ztdm5xX25fPHN1cGY+PG1vZGU+Iikp CisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC02MjMsNyArNjU3 LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnJldjE2LjggJXEwLCAlcTEiCi0g IFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRp Y2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJldjE2cV88c3VwZj52MTZx aSIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtNjM3LDcg KzY3Miw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZhZGRsdi48c3VwZj4zMlx0 JVEwLCAlUjAsICVxMSIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAo YXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92 YWRkbHZxXzxzdXBmPnY0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkK IAogOzsKQEAgLTY1MSw3ICs2ODcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2 Y3RwLjxNVkVfdmN0cD4gJTEiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhz ZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9t dmVfdmN0cDxNVkVfdmN0cD5xPE1WRV92cHJlZD4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQogXSkKIAogOzsKQEAgLTY4MCw3ICs3MTcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFW RV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnN1Yi5mPFZfc3pfZWxlbT5cdCVx MCwgJXExLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0 ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92c3Vi cV9uX2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsK QEAgLTY5NSw3ICs3MzMsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hB VkVfTVZFX0ZMT0FUIgogICAidmJyc3IuPFZfc3pfZWxlbT4gICVxMCwgJXExLCAlMiIKLSAgWyhz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRl ZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92YnJzcnFfbl9mPG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC03MTAsNyArNzQ5LDgg QEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAg InZjdnQuZjxWX3N6X2VsZW0+LjxzdXBmPjxWX3N6X2VsZW0+XHQlcTAsICVxMSwgJTIiCi0gIFso c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0 ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmN2dHFfbl90b19mXzxzdXBmPjxt b2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OyBbdmNyZWF0 ZXFfZl0pCkBAIC03NTUsNyArNzk1LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAi dnNoci48c3VwZj48Vl9zel9lbGVtPlx0JXEwLCAlcTEsICUyIgotICBbKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3lt Ym9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzaHJxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7IFZlcnNpb25zIHRoYXQgdGFrZSBjb25zdGFu dCB2ZWN0b3JzIGFzIG9wZXJhbmQgMiAod2l0aCBhbGwgZWxlbWVudHMKQEAgLTgwMyw3ICs4NDQs OCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgog ICAidmN2dC48c3VwZj48Vl9zel9lbGVtPi5mPFZfc3pfZWxlbT5cdCVxMCwgJXExLCAlMiIKLSAg WyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y3Z0cV9uX2Zyb21fZl88c3Vw Zj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAg LTgxOCw4ICs4NjAsOSBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2YWRk bHZ0LjxzdXBmPjMyXHQlUTAsICVSMCwgJXExIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQotICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmFkZGx2cV88c3VwZj52 NHNpIikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyAgKHNldF9hdHRyICJsZW5n dGgiIjgiKV0pCiAKIDs7CiA7OyBbdmNtcG5lcV8sIHZjbXBjc3FfLCB2Y21wZXFxXywgdmNtcGdl cV8sIHZjbXBndHFfLCB2Y21waGlxXywgdmNtcGxlcV8sIHZjbXBsdHFfXSkKQEAgLTgzMiw3ICs4 NzUsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2Y21wLjxtdmVfY21wX3R5cGU+ JSM8Vl9zel9lbGVtPlx0PG12ZV9jbXBfb3A+LCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5 bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y21wPG12ZV9jbXBfb3A+cV88bW9kZT4iKSkKKyAgKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTg0Nyw3ICs4OTEsOCBAQAog ICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2Y21wLjxtdmVfY21wX3R5cGU+JSM8Vl9zel9l bGVtPgk8bXZlX2NtcF9vcD4sICVxMSwgJTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJD T0RFX0ZPUl9tdmVfdmNtcDxtdmVfY21wX29wPnFfbl88bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTg2Niw3ICs5MTEsOCBAQAogICBdCiAgICJU QVJHRVRfSEFWRV9NVkUiCiAgICJ2YWJkLjxzdXBmPiUjPFZfc3pfZWxlbT4JJXEwLCAlcTEsICVx MiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3Vu cHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92YWJkcV88c3VwZj48 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTg4 MSw3ICs5MjcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2YWRkLmklIzxWX3N6 X2VsZW0+XHQlcTAsICVxMSwgJTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdmFkZHFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogXSkKIAogOzsKQEAgLTg5Niw3ICs5NDMsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9N VkUiCiAgICJ2YWRkdmEuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JTAsICVxMiIKLSAgWyhzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNu IikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92YWRkdmFxXzxzdXBmPjxtb2RlPiIpKQorICAo c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtOTExLDcgKzk1OSw4IEBA CiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZhZGR2dC48c3VwZj4lIzxWX3N6 X2VsZW0+CSUwLCAlcTEiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQg KGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVf dmFkZHZxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAg ICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTkzMSw3ICs5ODAsOCBAQAogICAi QAogICAgdmFuZFx0JXEwLCAlcTEsICVxMgogICAgKiByZXR1cm4gbmVvbl9vdXRwdXRfbG9naWNf aW1tZWRpYXRlIChcInZhbmRcIiwgJm9wZXJhbmRzWzJdLCA8TU9ERT5tb2RlLCAxLCBWQUxJRF9O RU9OX1FSRUdfTU9ERSAoPE1PREU+bW9kZSkpOyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92YW5kcV91PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKIF0pCiAoZGVmaW5lX2V4cGFuZCAibXZlX3ZhbmRxX3M8bW9kZT4iCiAgIFsKQEAgLTk1 Myw3ICsxMDAzLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidmJpY1x0JXEwLCAl cTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92YmljcV91 PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIChkZWZpbmVf ZXhwYW5kICJtdmVfdmJpY3Ffczxtb2RlPiIKQEAgLTk3Nyw3ICsxMDI4LDggQEAKICAgXQogICAi VEFSR0VUX0hBVkVfTVZFIgogICAidmJyc3IuJSM8Vl9zel9lbGVtPgklcTAsICVxMSwgJTIiCi0g IFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRp Y2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmJyc3JxX25fPHN1cGY+PG1v ZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC05OTIs NyArMTA0NCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZjYWRkLmklIzxWX3N6 X2VsZW0+CSVxMCwgJXExLCAlcTIsICM8cm90PiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92Y2FkZHE8bXZlX3JvdD48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQogXSkKIAogOzsgQXV0byB2ZWN0b3JpemVyIHBhdHRlcm4gZm9yIGludCB2 Y2FkZApAQCAtMTAxNSw3ICsxMDY4LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAi dmVvclx0JXEwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92ZW9ycV91PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0p CiAoZGVmaW5lX2V4cGFuZCAibXZlX3Zlb3JxX3M8bW9kZT4iCiAgIFsKQEAgLTEwMzgsNyArMTA5 Miw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZoYWRkLjxzdXBmPiUjPFZfc3pf ZWxlbT5cdCVxMCwgJXExLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92aGFkZHFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogXSkKIAogOzsKQEAgLTEwNTMsNyArMTEwOCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZF X01WRSIKICAgInZoYWRkLjxzdXBmPiUjPFZfc3pfZWxlbT5cdCVxMCwgJXExLCAlcTIiCi0gIFso c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0 ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmhhZGRxXzxzdXBmPjxtb2RlPiIp KQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTA2OCw3ICsx MTI0LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidmhjYWRkLnMlIzxWX3N6X2Vs ZW0+XHQlcTAsICVxMSwgJXEyLCAjMjcwIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZoY2FkZHFfcm90MjcwX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTEwODMsNyArMTE0MCw4IEBACiAgIF0KICAgIlRBUkdF VF9IQVZFX01WRSIKICAgInZoY2FkZC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTEsICVxMiwgIzkw IgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5w cmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZoY2FkZHFfcm90OTBf czxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAt MTA5OCw3ICsxMTU2LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidmhzdWIuPHN1 cGY+JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTEsICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3Jl ZiAiQ09ERV9GT1JfbXZlX3Zoc3VicV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTExMyw3ICsxMTcyLDggQEAKICAgXQogICAi VEFSR0VUX0hBVkVfTVZFIgogICAidmhzdWIuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTEs ICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92aHN1YnFfPHN1 cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBA IC0xMTI4LDcgKzExODgsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2bWF4YS5z JSM8Vl9zel9lbGVtPgklcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92bWF4YXFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CiBdKQogCiA7OwpAQCAtMTE0Myw3ICsxMjA0LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZF IgogICAidm1heGF2LnMlIzxWX3N6X2VsZW0+XHQlMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3lt Ym9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtYXhhdnFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTE1Nyw3ICsxMjE5LDggQEAKICAgXQogICAi VEFSR0VUX0hBVkVfTVZFIgogICAidm1heC4lIzxWX3NfZWxlbT5cdCVxMCwgJXExLCAlcTIiCi0g IFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRp Y2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1heHFfczxtb2RlPiIpKQor ICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiAoZGVmaW5lX2luc24gIm12ZV92 bWF4cV91PG1vZGU+IgpAQCAtMTE2OCw3ICsxMjMxLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVf TVZFIgogICAidm1heC4lIzxWX3VfZWxlbT5cdCVxMCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1heHFfdTxtb2RlPiIpKQorICAoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTE4Myw3ICsxMjQ3LDggQEAKICAgXQog ICAiVEFSR0VUX0hBVkVfTVZFIgogICAidm1heHYuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JTAsICVx MiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3Vu cHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWF4dnFfPHN1cGY+ PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0x MTk4LDcgKzEyNjMsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2bWluYS5zJSM8 Vl9zel9lbGVtPlx0JXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdm1pbmFxX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQog XSkKIAogOzsKQEAgLTEyMTMsNyArMTI3OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIK ICAgInZtaW5hdi5zJSM8Vl9zel9lbGVtPlx0JTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92bWluYXZxX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTEyMjcsNyArMTI5NCw4IEBACiAgIF0KICAgIlRB UkdFVF9IQVZFX01WRSIKICAgInZtaW4uJSM8Vl9zX2VsZW0+XHQlcTAsICVxMSwgJXEyIgotICBb KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNh dGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtaW5xX3M8bW9kZT4iKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogKGRlZmluZV9pbnNuICJtdmVfdm1p bnFfdTxtb2RlPiIKQEAgLTEyMzgsNyArMTMwNiw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01W RSIKICAgInZtaW4uJSM8Vl91X2VsZW0+XHQlcTAsICVxMSwgJXEyIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtaW5xX3U8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTEyNTMsNyArMTMyMiw4IEBACiAgIF0KICAg IlRBUkdFVF9IQVZFX01WRSIKICAgInZtaW52LjxzdXBmPiUjPFZfc3pfZWxlbT5cdCUwLCAlcTIi Ci0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1pbnZxXzxzdXBmPjxt b2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTI2 OCw3ICsxMzM4LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidm1sYWRhdi48c3Vw Zj4lIzxWX3N6X2VsZW0+XHQlMCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdm1sYWRhdnFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0xMjgzLDcgKzEzNTQsOCBAQAogICBdCiAgICJU QVJHRVRfSEFWRV9NVkUiCiAgICJ2bWxhZGF2eC5zJSM8Vl9zel9lbGVtPlx0JTAsICVxMSwgJXEy IgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5w cmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbGFkYXZ4cV9zPG1v ZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0xMjk4 LDcgKzEzNzAsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2bWxzZGF2LnMlIzxW X3N6X2VsZW0+XHQlMCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RF X0ZPUl9tdmVfdm1sc2RhdnFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCiBdKQogCiA7OwpAQCAtMTMxMyw3ICsxMzg2LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVf TVZFIgogICAidm1sc2RhdngucyUjPFZfc3pfZWxlbT5cdCUwLCAlcTEsICVxMiIKLSAgWyhzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWxzZGF2eHFfczxtb2RlPiIpKQorICAo c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTMyOCw3ICsxNDAyLDgg QEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidm11bGguPHN1cGY+JSM8Vl9zel9lbGVt Plx0JXEwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNl dCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212 ZV92bXVsaHFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK IF0pCiAKIDs7CkBAIC0xMzQzLDcgKzE0MTgsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUi CiAgICJ2bXVsbGIuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTEsICVxMiIKLSAgWyhzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bXVsbGJxX2ludF88c3VwZj48bW9kZT4i KSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTEzNTgsNyAr MTQzNCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZtdWxsdC48c3VwZj4lIzxW X3N6X2VsZW0+XHQlcTAsICVxMSwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZtdWxsdHFfaW50XzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTM3Myw3ICsxNDUwLDggQEAKICAgXQogICAiVEFS R0VUX0hBVkVfTVZFIgogICAidm11bC5pJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTEsICUyIgotICBb KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNh dGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtdWxxX25fPHN1cGY+PG1vZGU+ IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0xMzg4LDcg KzE0NjYsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2bXVsLmklIzxWX3N6X2Vs ZW0+XHQlcTAsICVxMSwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3ZtdWxxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CiBdKQogCiAoZGVmaW5lX2luc24gIm12ZV92bXVscTxtb2RlPiIKQEAgLTEzOTksNyArMTQ3OCw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZtdWwuaSUjPFZfc3pfZWxlbT5cdCVx MCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm11 bHE8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAg LTE0MTMsNyArMTQ5Myw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgICJ2b3JuXHQl cTAsICVxMSwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zv cm5xX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogKGRl ZmluZV9leHBhbmQgIm12ZV92b3JucV91PG1vZGU+IgpAQCAtMTQ0Miw3ICsxNTIzLDggQEAKICAg IkAKICAgIHZvcnJcdCVxMCwgJXExLCAlcTIKICAgICogcmV0dXJuIG5lb25fb3V0cHV0X2xvZ2lj X2ltbWVkaWF0ZSAoXCJ2b3JyXCIsICZvcGVyYW5kc1syXSwgPE1PREU+bW9kZSwgMCwgVkFMSURf TkVPTl9RUkVHX01PREUgKDxNT0RFPm1vZGUpKTsiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdm9ycnFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCiBdKQogKGRlZmluZV9leHBhbmQgIm12ZV92b3JycV91PG1vZGU+IgogICBbCkBAIC0x NDY1LDcgKzE1NDcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cWFkZC48c3Vw Zj4lIzxWX3N6X2VsZW0+XHQlcTAsICVxMSwgJTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdnFhZGRxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0xNDgwLDcgKzE1NjMsOCBAQAogICBdCiAgICJU QVJHRVRfSEFWRV9NVkUiCiAgICJ2cWFkZC48c3VwZj4lIzxWX3N6X2VsZW0+XHQlcTAsICVxMSwg JXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxYWRkcV88c3Vw Zj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAg LTE0OTUsNyArMTU3OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZxZG11bGgu cyUjPFZfc3pfZWxlbT5cdCVxMCwgJXExLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92cWRtdWxocV9uX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTE1MTAsNyArMTU5NSw4IEBACiAgIF0KICAgIlRBUkdF VF9IQVZFX01WRSIKICAgInZxZG11bGgucyUjPFZfc3pfZWxlbT5cdCVxMCwgJXExLCAlcTIiCi0g IFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRp Y2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFkbXVsaHFfczxtb2RlPiIp KQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTUyNSw3ICsx NjExLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnFyZG11bGgucyUjPFZfc3pf ZWxlbT5cdCVxMCwgJXExLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92cXJkbXVsaHFfbl9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3Zl IikKIF0pCiAKIDs7CkBAIC0xNTQwLDcgKzE2MjcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9N VkUiCiAgICJ2cXJkbXVsaC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTEsICVxMiIKLSAgWyhzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cXJkbXVsaHFfczxtb2RlPiIpKQorICAo c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTU1NSw3ICsxNjQzLDgg QEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnFyc2hsLjxzdXBmPiUjPFZfc3pfZWxl bT5cdCVxMCwgJTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFy c2hscV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBd KQogCiA7OwpAQCAtMTU3MCw3ICsxNjU5LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnFyc2hsLjxzdXBmPiUjPFZfc3pfZWxlbT5cdCVxMCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5z biIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFyc2hscV88c3VwZj48bW9kZT4iKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTE1ODUsNyArMTY3NSw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZxc2hsLjxzdXBmPiUjPFZfc3pfZWxl bT5cdCVxMCwgJXExLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNl dCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212 ZV92cXNobHFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQogXSkKIAogOzsKQEAgLTE2MDAsNyArMTY5MSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01W RSIKICAgInZxc2hsLjxzdXBmPiUjPFZfc3pfZWxlbT5cdCVxMCwgJTIiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFzaGxxX3JfPHN1cGY+PG1vZGU+IikpCisgIChz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0xNjE1LDcgKzE3MDcsOCBA QAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cXNobC48c3VwZj4lIzxWX3N6X2VsZW0+ XHQlcTAsICVxMSwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0 IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZl X3Zxc2hscV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQog XSkKIAogOzsKQEAgLTE2MzAsNyArMTcyMyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIK ICAgInZxc2hsdS5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTEsICUyIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zxc2hsdXFfbl9zPG1vZGU+IikpCisgIChzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0xNjQ1LDcgKzE3MzksOCBAQAogICBd CiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cXN1Yi48c3VwZj4lIzxWX3N6X2VsZW0+XHQlcTAs ICVxMSwgJTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFzdWJx X25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAK IDs7CkBAIC0xNjYwLDcgKzE3NTUsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2 cXN1Yi48c3VwZj4lIzxWX3N6X2VsZW0+XHQlcTAsICVxMSwgJXEyIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zxc3VicV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTE2NzUsNyArMTc3MSw4IEBACiAg IF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZyaGFkZC48c3VwZj4lIzxWX3N6X2VsZW0+XHQl cTAsICVxMSwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zy aGFkZHFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0p CiAKIDs7CkBAIC0xNjkwLDcgKzE3ODcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAg ICJ2cm11bGguPHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNu IikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cm11bGhxXzxzdXBmPjxtb2RlPiIpKQorICAo c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTcwNSw3ICsxODAzLDgg QEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnJzaGwuPHN1cGY+JSM8Vl9zel9lbGVt Plx0JXEwLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0 ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cnNo bHFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkK IAogOzsKQEAgLTE3MjAsNyArMTgxOSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAg InZyc2hsLjxzdXBmPiUjPFZfc3pfZWxlbT5cdCVxMCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJzaGxxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTczNSw3ICsxODM1LDggQEAK ICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnJzaHIuPHN1cGY+JSM8Vl9zel9lbGVtPlx0 JXEwLCAlcTEsICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zy c2hycV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBd KQogCiA7OwpAQCAtMTc1MCw3ICsxODUxLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnNobC48c3VwZj4lIzxWX3N6X2VsZW0+XHQlcTAsICVxMSwgJTIiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnNobHFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTE3NjUsNyArMTg2Nyw4IEBA CiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZzaGwuPHN1cGY+JSM8Vl9zel9lbGVtPlx0 JXEwLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92c2hscV9y XzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7 OwpAQCAtMTc4MCw3ICsxODgzLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnN1 Yi5pJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTEsICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3Jl ZiAiQ09ERV9GT1JfbXZlX3ZzdWJxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0xNzk1LDcgKzE4OTksOCBAQAogICBdCiAgICJU QVJHRVRfSEFWRV9NVkUiCiAgICJ2c3ViLmklIzxWX3N6X2VsZW0+XHQlcTAsICVxMSwgJXEyIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdWJxXzxzdXBmPjxtb2Rl PiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiAoZGVmaW5lX2luc24g Im12ZV92c3VicTxtb2RlPiIKQEAgLTE4MDYsNyArMTkxMSw4IEBACiAgIF0KICAgIlRBUkdFVF9I QVZFX01WRSIKICAgInZzdWIuaSUjPFZfc3pfZWxlbT5cdCVxMCwgJXExLCAlcTIiCi0gIFsoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRf aW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm9ycnFfczxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTgyMSw3ICsxOTI3LDggQEAK ICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZh YmQuZiUjPFZfc3pfZWxlbT4JJXEwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9y ZWYgIkNPREVfRk9SX212ZV92YWJkcV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0xODM2LDcgKzE5NDMsOCBAQAogICBdCiAgICJUQVJHRVRf SEFWRV9NVkUiCiAgICJ2YWRkbHZhLjxzdXBmPjMyXHQlUTAsICVSMCwgJXEyIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZhZGRsdmFxXzxzdXBmPnY0c2kiKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTE4NTEsNyArMTk1OSw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAg ICJ2YWRkLmYlIzxWX3N6X2VsZW0+XHQlcTAsICVxMSwgJTIiCi0gIFsoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1i b2xfcmVmICJDT0RFX0ZPUl9tdmVfdmFkZHFfbl9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0xODY1LDcgKzE5NzQsOCBAQAogICBdCiAgICJU QVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidmFuZCAlcTAsICVx MSwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJt dmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZhbmRxX2Y8 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTE4 NzksNyArMTk4OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9N VkVfRkxPQVQiCiAgICJ2YmljICVxMCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xf cmVmICJDT0RFX0ZPUl9tdmVfdmJpY3FfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTg5NCw3ICsyMDA1LDggQEAKICAgXQogICAiVEFSR0VU X0hBVkVfTVZFIgogICAidmJpYy5pJSM8Vl9zel9lbGVtPgklcTAsICUyIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZiaWNxX25fPHN1cGY+PG1vZGU+IikpCisgIChz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0xOTA5LDcgKzIwMjEsOCBA QAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAi dmNhZGQuZiUjPFZfc3pfZWxlbT4JJXEwLCAlcTEsICVxMiwgIzxyb3Q+IgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjYWRkcTxtdmVfcm90Pjxtb2RlPiIpKQorICAo c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTkyMyw3ICsyMDM2LDgg QEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAg InZjbXAuZiUjPFZfc3pfZWxlbT4JPG12ZV9jbXBfb3A+LCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNu IikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y21wPG12ZV9jbXBfb3A+cV9mPG1vZGU+Iikp CisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0xOTM4LDcgKzIw NTIsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FU IgogICAidmNtcC5mJSM8Vl9zel9lbGVtPgk8bXZlX2NtcF9vcD4sICVxMSwgJTIiCi0gIFsoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRf aW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNtcDxtdmVfY21wX29wPnFfbl9mPG1v ZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0xOTUz LDcgKzIwNjgsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZF X0ZMT0FUIgogICAidmNtdWwuZiUjPFZfc3pfZWxlbT4JJXEwLCAlcTEsICVxMiwgIzxyb3Q+Igot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbXVscTxtdmVfcm90Pjxt b2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMTk2 OCw3ICsyMDg0LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dmN0cHQu PE1WRV92Y3RwPiAlMSIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyAgWyhzZXQg KGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVf dmN0cDxNVkVfdmN0cD5xPE1WRV92cHJlZD4iKSkKKyAgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtMTk4Myw3ICsyMTAw LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIK ICAgInZjdnRiLmYxNi5mMzIgJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJD T0RFX0ZPUl9tdmVfdmN2dGJxX2YxNl9mMzJ2OGhmIikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0xOTk4LDcgKzIxMTYsOCBAQAogICBdCiAgICJUQVJHRVRf SEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidmN2dHQuZjE2LmYzMiAlcTAs ICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y3Z0dHFfZjE2 X2YzMnY4aGYiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAg LTIwMTIsNyArMjEzMSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFW RV9NVkVfRkxPQVQiCiAgICJ2ZW9yICVxMCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1i b2xfcmVmICJDT0RFX0ZPUl9tdmVfdmVvcnFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMjAyNyw3ICsyMTQ3LDggQEAKICAgXQogICAiVEFS R0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZtYXhubWEuZiUjPFZf c3pfZWxlbT4JJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhz ZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9t dmVfdm1heG5tYXFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBd KQogCiA7OwpAQCAtMjA0Miw3ICsyMTYzLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYm IFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZtYXhubWF2LmYlIzxWX3N6X2VsZW0+CSUwLCAl cTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91 bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1heG5tYXZxX2Y8 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTIw NTYsNyArMjE3OCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9N VkVfRkxPQVQiCiAgICJ2bWF4bm0uZiUjPFZfc3pfZWxlbT4JJXEwLCAlcTEsICVxMiIKLSAgWyhz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRl ZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWF4bm1xX2Y8bW9kZT4iKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTIwNzEsNyArMjE5NCw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAg ICJ2bWF4bm12LmYlIzxWX3N6X2VsZW0+CSUwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xf cmVmICJDT0RFX0ZPUl9tdmVfdm1heG5tdnFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMjA4Niw3ICsyMjEwLDggQEAKICAgXQogICAiVEFS R0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZtaW5ubWEuZiUjPFZf c3pfZWxlbT4JJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhz ZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9t dmVfdm1pbm5tYXFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBd KQogCiA7OwpAQCAtMjEwMSw3ICsyMjI2LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYm IFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZtaW5ubWF2LmYlIzxWX3N6X2VsZW0+CSUwLCAl cTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91 bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1pbm5tYXZxX2Y8 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTIx MTUsNyArMjI0MSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9N VkVfRkxPQVQiCiAgICJ2bWlubm0uZiUjPFZfc3pfZWxlbT4JJXEwLCAlcTEsICVxMiIKLSAgWyhz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRl ZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWlubm1xX2Y8bW9kZT4iKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTIxMzAsNyArMjI1Nyw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAg ICJ2bWlubm12LmYlIzxWX3N6X2VsZW0+CSUwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xf cmVmICJDT0RFX0ZPUl9tdmVfdm1pbm5tdnFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMjE0NSw3ICsyMjczLDggQEAKICAgXQogICAiVEFS R0VUX0hBVkVfTVZFIgogICAidm1sYWxkYXYuPHN1cGY+JSM8Vl9zel9lbGVtPgklUTAsICVSMCwg JXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1sYWxk YXZxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQog CiA7OwpAQCAtMjE2MCw3ICsyMjg5LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAi dm1sYWxkYXZ4LnMlIzxWX3N6X2VsZW0+ICVRMCwgJVIwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNu IikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWxhbGRhdnhxX3M8bW9kZT4iKSkKKyAgKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTIxNzUsNyArMjMwNSw4IEBA CiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZtbHNsZGF2LnMlIzxWX3N6X2VsZW0+ICVR MCwgJVIwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNl dCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212 ZV92bWxzbGRhdnFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBd KQogCiA7OwpAQCAtMjE5MCw3ICsyMzIxLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidm1sc2xkYXZ4LnMlIzxWX3N6X2VsZW0+ICVRMCwgJVIwLCAlcTEsICVxMiIKLSAgWyhzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWxzbGRhdnhxX3M8bW9kZT4iKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTIyMDUsNyArMjMzNyw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZtb3ZuYi5pJSM8Vl9zel9lbGVtPgkl cTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bW92bmJx XzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7 OwpAQCAtMjIyMCw3ICsyMzUzLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidm1v dm50LmklIzxWX3N6X2VsZW0+CSVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAi Q09ERV9GT1JfbXZlX3Ztb3ZudHFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0yMjM0LDcgKzIzNjgsOCBAQAogICBdCiAgICJUQVJH RVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidm11bC5mJSM8Vl9zel9l bGVtPgklcTAsICVxMSwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3ZtdWxxX2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkK IAogOzsKQEAgLTIyNDksNyArMjM4NCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBU QVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2bXVsLmYlIzxWX3N6X2VsZW0+CSVxMCwgJXExLCAl MiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3Vu cHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bXVscV9uX2Y8bW9k ZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTIyNjMs NyArMjM5OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVf RkxPQVQiCiAgICJ2b3JuICVxMCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdm9ybnFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCiBdKQogCiA7OwpAQCAtMjI3Nyw3ICsyNDE0LDggQEAKICAgXQogICAiVEFSR0VUX0hB VkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZvcnIgJXEwLCAlcTEsICVxMiIK LSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJl ZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92b3JycV9mPG1vZGU+Iikp CisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0yMjkyLDcgKzI0 MzAsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2b3JyLmklIzxWX3N6X2VsZW0+ CSVxMCwgJTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm9ycnFf bl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAog OzsKQEAgLTIzMDcsNyArMjQ0Niw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZx ZG11bGxiLnMlIzxWX3N6X2VsZW0+CSVxMCwgJXExLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92cWRtdWxsYnFfbl9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0yMzIyLDcgKzI0NjIsOCBAQAogICBdCiAg ICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cWRtdWxsYi5zJSM8Vl9zel9lbGVtPgklcTAsICVxMSwg JXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxZG11bGxicV9z PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0y MzM3LDcgKzI0NzgsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cWRtdWxsdC5z JSM8Vl9zel9lbGVtPgklcTAsICVxMSwgJTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJD T0RFX0ZPUl9tdmVfdnFkbXVsbHRxX25fczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMjM1Miw3ICsyNDk0LDggQEAKICAgXQogICAiVEFSR0VU X0hBVkVfTVZFIgogICAidnFkbXVsbHQucyUjPFZfc3pfZWxlbT4JJXEwLCAlcTEsICVxMiIKLSAg WyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cWRtdWxsdHFfczxtb2RlPiIp KQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMjM2Nyw3ICsy NTEwLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnFtb3ZuYi48c3VwZj4lIzxW X3N6X2VsZW0+CSVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3ZxbW92bmJxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCiBdKQogCiA7OwpAQCAtMjM4Miw3ICsyNTI2LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVf TVZFIgogICAidnFtb3ZudC48c3VwZj4lIzxWX3N6X2VsZW0+CSVxMCwgJXEyIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxbW92bnRxXzxzdXBmPjxtb2RlPiIpKQor ICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMjM5Nyw3ICsyNTQy LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnFtb3Z1bmIucyUjPFZfc3pfZWxl bT4JJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFt b3Z1bmJxX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAog OzsKQEAgLTI0MTIsNyArMjU1OCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZx bW92dW50LnMlIzxWX3N6X2VsZW0+CSVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3Jl ZiAiQ09ERV9GT1JfbXZlX3ZxbW92dW50cV9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0yNDI3LDcgKzI1NzQsOCBAQAogICBdCiAgICJUQVJH RVRfSEFWRV9NVkUiCiAgICJ2cm1sYWxkYXZoeC5zMzIgJVEwLCAlUjAsICVxMSwgJXEyIgotICBb KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNh dGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZybWxhbGRhdmh4cV9zdjRzaSIp KQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMjQ0Miw3ICsy NTkwLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnJtbHNsZGF2aC5zMzJcdCVR MCwgJVIwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNl dCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212 ZV92cm1sc2xkYXZocV9zdjRzaSIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBd KQogCiA7OwpAQCAtMjQ1Nyw3ICsyNjA2LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnJtbHNsZGF2aHguczMyXHQlUTAsICVSMCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChz eW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJtbHNsZGF2aHhxX3N2NHNpIikpCisgIChzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0yNDcyLDcgKzI2MjIsOCBAQAogICBd CiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2c2hsbGIuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEw LCAlcTEsICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRy ICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzaGxs YnFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkK IAogOzsKQEAgLTI0ODcsNyArMjYzOCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAg InZzaGxsdC48c3VwZj4lIzxWX3N6X2VsZW0+XHQlcTAsICVxMSwgJTIiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnNobGx0cV9uXzxzdXBmPjxtb2RlPiIpKQorICAo c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMjUwMSw3ICsyNjUzLDgg QEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAg InZzdWIuZiUjPFZfc3pfZWxlbT5cdCVxMCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1i b2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN1YnFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMjUxNiw3ICsyNjY5LDggQEAKICAgXQogICAiVEFS R0VUX0hBVkVfTVZFIgogICAidm11bGx0LnAlIzxWX3N6X2VsZW0+XHQlcTAsICVxMSwgJXEyIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtdWxsdHFfcG9seV9wPG1v ZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0yNTMx LDcgKzI2ODUsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2bXVsbGIucCUjPFZf c3pfZWxlbT5cdCVxMCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RF X0ZPUl9tdmVfdm11bGxicV9wb2x5X3A8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQogXSkKIAogOzsKQEAgLTI1NDYsNyArMjcwMSw4IEBACiAgIF0KICAgIlRBUkdFVF9I QVZFX01WRSIKICAgInZybWxhbGRhdmguPHN1cGY+MzJcdCVRMCwgJVIwLCAlcTEsICVxMiIKLSAg WyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cm1sYWxkYXZocV88c3VwZj52 NHNpIikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0yNTYy LDcgKzI3MTgsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2YmljdC5p JSM8Vl9zel9lbGVtPgklcTAsICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQor IFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9G T1JfbXZlX3ZiaWNxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogOzsKIDs7IFt2Y21wZXFxX21fZl0p CkBAIC0yNTc3LDcgKzI3MzQsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VU X0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmNtcHQuZiUjPFZfc3pfZWxlbT4JZXEsICVxMSwg JXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbXBlcXFfZjxt b2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxl bmd0aCIiOCIpXSkKIDs7CiA7OyBbdmN2dGFxX21fdSwgdmN2dGFxX21fc10pCkBAIC0yNTkyLDcg KzI3NTAsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZM T0FUIgogICAidnBzdFw7dmN2dGF0LjxzdXBmPiUjPFZfc3pfZWxlbT4uZiUjPFZfc3pfZWxlbT5c dCVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRy ICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjdnRh cV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNl dF9hdHRyICJsZW5ndGgiIjgiKV0pCiA7OwogOzsgW3ZjdnRxX21fdG9fZl9zLCB2Y3Z0cV9tX3Rv X2ZfdV0pCkBAIC0yNjA3LDcgKzI3NjYsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYg VEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmN2dHQuZiUjPFZfc3pfZWxlbT4uPHN1 cGY+JSM8Vl9zel9lbGVtPgkgJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJD T0RFX0ZPUl9tdmVfdmN2dHFfdG9fZl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiA7OwogOzsgW3ZxcnNo cm5icV9uX3UsIHZxcnNocm5icV9uX3NdKQpAQCAtMjYyMiw3ICsyNzgyLDggQEAKICAgXQogICAi VEFSR0VUX0hBVkVfTVZFIgogICAidnFyc2hybmIuPHN1cGY+JSM8Vl9zel9lbGVtPgklcTAsICVx MiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12 ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFyc2hybmJx X25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiA7 OwogOzsgW3ZxcnNocnVuYnFfbl9zXSkKQEAgLTI2MzcsNyArMjc5OCw4IEBACiAgIF0KICAgIlRB UkdFVF9IQVZFX01WRSIKICAgInZxcnNocnVuYi5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUz IgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5w cmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxcnNocnVuYnFfbl9z PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiA7OwogOzsgW3Zy bWxhbGRhdmhhcV9zIHZybWxhbGRhdmhhcV91XSkKQEAgLTI2NTIsNyArMjgxNCw4IEBACiAgIF0K ICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZybWxhbGRhdmhhLjxzdXBmPjMyXHQlUTAsICVSMCwg JXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJtbGFs ZGF2aGFxXzxzdXBmPnY0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkK IAogOzsKQEAgLTI2NjgsNyArMjgzMSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAg InZhYmF2LjxzdXBmPiUjPFZfc3pfZWxlbT5cdCUwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikg KHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92YWJhdnFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0yNzI5LDcgKzI4OTMsOCBAQAog ICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2YWJzdC5zJSM8Vl9zel9lbGVtPgkl cTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92YWJzcV9z PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAi bGVuZ3RoIiI4IildKQogCiA7OwpAQCAtMjc0NSw3ICsyOTEwLDggQEAKICAgXQogICAiVEFSR0VU X0hBVkVfTVZFIgogICAidnBzdFw7dmFkZHZhdC48c3VwZj4lIzxWX3N6X2VsZW0+CSUwLCAlcTIi Ci0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmFkZHZhcV88c3VwZj48 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJs ZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0yNzYxLDcgKzI5MjcsOCBAQAogICBdCiAgICJUQVJHRVRf SEFWRV9NVkUiCiAgICJ2cHN0XDt2Y2xzdC5zJSM8Vl9zel9lbGVtPgklcTAsICVxMiIKLSAgWyhz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRl ZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y2xzcV9zPG1vZGU+IikpCisgIChz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQog CiA7OwpAQCAtMjc3Nyw3ICsyOTQ0LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAi dnBzdFw7dmNsenQuaSUjPFZfc3pfZWxlbT4JJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1i b2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNsenFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAt Mjc5Myw3ICsyOTYxLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dmNt cHQudSUjPFZfc3pfZWxlbT4JY3MsICVxMSwgJTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdmNtcGNzcV9uXzxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTI4MDksNyAr Mjk3OCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZjbXB0LnUlIzxW X3N6X2VsZW0+CWNzLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92Y21wY3NxXzxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTI4MjUsNyArMjk5NSw4IEBA CiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZjbXB0LmklIzxWX3N6X2VsZW0+ CWVxLCAlcTEsICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zj bXBlcXFfbl88bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNl dF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0yODQxLDcgKzMwMTIsOCBAQAogICBdCiAg ICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2Y21wdC5pJSM8Vl9zel9lbGVtPgllcSwgJXEx LCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12 ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNtcGVxcV88 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJs ZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0yODU3LDcgKzMwMjksOCBAQAogICBdCiAgICJUQVJHRVRf SEFWRV9NVkUiCiAgICJ2cHN0XDt2Y21wdC5zJSM8Vl9zel9lbGVtPglnZSwgJXExLCAlMiIKLSAg WyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y21wZ2VxX25fPG1vZGU+Iikp CisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4 IildKQogCiA7OwpAQCAtMjg3Myw3ICszMDQ2LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZF IgogICAidnBzdFw7dmNtcHQucyUjPFZfc3pfZWxlbT4JZ2UsICVxMSwgJXEyIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbXBnZXFfPG1vZGU+IikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7 OwpAQCAtMjg4OSw3ICszMDYzLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBz dFw7dmNtcHQucyUjPFZfc3pfZWxlbT4JZ3QsICVxMSwgJTIiCi0gIFsoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1i b2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNtcGd0cV9uXzxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTI5 MDUsNyArMzA4MCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZjbXB0 LnMlIzxWX3N6X2VsZW0+CWd0LCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92Y21wZ3RxXzxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTI5MjEsNyArMzA5 Nyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZjbXB0LnUlIzxWX3N6 X2VsZW0+CWhpLCAlcTEsICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3ZjbXBoaXFfbl88bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQog ICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0yOTM3LDcgKzMxMTQsOCBAQAog ICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2Y21wdC51JSM8Vl9zel9lbGVtPglo aSwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNt cGhpcV88bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9h dHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0yOTUzLDcgKzMxMzEsOCBAQAogICBdCiAgICJU QVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2Y21wdC5zJSM8Vl9zel9lbGVtPglsZSwgJXExLCAl MiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3Vu cHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Y21wbGVxX25fPG1v ZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVu Z3RoIiI4IildKQogCiA7OwpAQCAtMjk2OSw3ICszMTQ4LDggQEAKICAgXQogICAiVEFSR0VUX0hB VkVfTVZFIgogICAidnBzdFw7dmNtcHQucyUjPFZfc3pfZWxlbT4JbGUsICVxMSwgJXEyIgotICBb KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNh dGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbXBsZXFfPG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4Iild KQogCiA7OwpAQCAtMjk4NSw3ICszMTY1LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnBzdFw7dmNtcHQucyUjPFZfc3pfZWxlbT4JbHQsICVxMSwgJTIiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNtcGx0cV9uXzxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsK QEAgLTMwMDEsNyArMzE4Miw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3Rc O3ZjbXB0LnMlIzxWX3N6X2VsZW0+CWx0LCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92Y21wbHRxXzxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTMwMTcs NyArMzE5OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZjbXB0Lmkl IzxWX3N6X2VsZW0+CW5lLCAlcTEsICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZjbXBuZXFfbl88bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0zMDMzLDcgKzMyMTYs OCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2Y21wdC5pJSM8Vl9zel9l bGVtPgluZSwgJXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhz ZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9t dmVfdmNtcG5lcV88bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAg KHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0zMDQ5LDggKzMyMzMsOSBAQAogICBd CiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2ZHVwdC4lIzxWX3N6X2VsZW0+XHQlcTAs ICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQotICAgKHNldF9hdHRyICJsZW5n dGgiIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xf cmVmICJDT0RFX0ZPUl9tdmVfdmR1cHFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKIDs7IFt2 bWF4YXFfbV9zXSkKQEAgLTMwNjUsNyArMzI1MCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01W RSIKICAgInZwc3RcO3ZtYXhhdC5zJSM8Vl9zel9lbGVtPgklcTAsICVxMiIKLSAgWyhzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNu IikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWF4YXFfczxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsK QEAgLTMwODEsNyArMzI2Nyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3Rc O3ZtYXhhdnQucyUjPFZfc3pfZWxlbT4JJTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9y ZWYgIkNPREVfRk9SX212ZV92bWF4YXZxX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0zMDk3LDcg KzMyODQsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2bWF4dnQuPHN1 cGY+JSM8Vl9zel9lbGVtPgklMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZtYXh2cV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0zMTEzLDcgKzMz MDEsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2bWluYXQucyUjPFZf c3pfZWxlbT4JJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhz ZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9t dmVfdm1pbmFxX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAg KHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0zMTI5LDcgKzMzMTgsOCBAQAogICBd CiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2bWluYXZ0LnMlIzxWX3N6X2VsZW0+CSUw LCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12 ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1pbmF2cV9z PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAi bGVuZ3RoIiI4IildKQogCiA7OwpAQCAtMzE0NSw3ICszMzM1LDggQEAKICAgXQogICAiVEFSR0VU X0hBVkVfTVZFIgogICAidnBzdFw7dm1pbnZ0LjxzdXBmPiUjPFZfc3pfZWxlbT5cdCUwLCAlcTIi Ci0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1pbnZxXzxzdXBmPjxt b2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxl bmd0aCIiOCIpXSkKIAogOzsKQEAgLTMxNjEsNyArMzM1Miw4IEBACiAgIF0KICAgIlRBUkdFVF9I QVZFX01WRSIKICAgInZtbGFkYXZhLjxzdXBmPiUjPFZfc3pfZWxlbT4JJTAsICVxMiwgJXEzIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbGFkYXZhcV88c3VwZj48 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTMx NzcsNyArMzM2OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZtbGFk YXZ0LjxzdXBmPiUjPFZfc3pfZWxlbT5cdCUwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5 bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWxhZGF2cV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7 CkBAIC0zMTkzLDcgKzMzODYsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0 XDt2bWxhZGF2eHQucyUjPFZfc3pfZWxlbT5cdCUwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikg KHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWxhZGF2eHFfczxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsK QEAgLTMyMDksNyArMzQwMyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZtbGEu PHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9s X3JlZiAiQ09ERV9GT1JfbXZlX3ZtbGFxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0zMjI1LDcgKzM0MjAsOCBAQAogICBdCiAg ICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2bWxhcy48c3VwZj4lIzxWX3N6X2VsZW0+CSVxMCwgJXEy LCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWxhc3Ffbl88 c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsK QEAgLTMyNDEsNyArMzQzNyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3Rc O3ZtbHNkYXZ0LnMlIzxWX3N6X2VsZW0+CSUwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5 bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWxzZGF2cV9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAt MzI1Nyw3ICszNDU0LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dm1s c2Rhdnh0LnMlIzxWX3N6X2VsZW0+CSUwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92bWxzZGF2eHFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTMy NzMsNyArMzQ3MSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3Ztdm50 ICVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRy ICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Ztdm5x XzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0 X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTMyODksNyArMzQ4OCw4IEBACiAgIF0KICAg IlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZuZWd0LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVx MiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3Vu cHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bmVncV9zPG1vZGU+ IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3Ro IiI4IildKQogCiA7OwpAQCAtMzMwNSw3ICszNTA1LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVf TVZFIgogICAidnBzZWwgJXEwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92cHNlbHFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0zMzIxLDcgKzM1MjIsOCBAQAogICBdCiAgICJUQVJH RVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cWFic3QucyUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxYWJzcV9zPG1vZGU+Iikp CisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4 IildKQogCiA7OwpAQCAtMzMzNyw3ICszNTM5LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZF IgogICAidnFkbWxhaC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxZG1sYWhxX25fPHN1cGY+PG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0zMzUzLDcgKzM1NTYs OCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cWRtbGFzaC5zJSM8Vl9zel9lbGVt Plx0JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0 IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZl X3ZxZG1sYXNocV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCiBdKQogCiA7OwpAQCAtMzM2OSw3ICszNTczLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVf TVZFIgogICAidnBzdFw7dnFuZWd0LnMlIzxWX3N6X2VsZW0+CSVxMCwgJXEyIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxbmVncV9zPG1vZGU+IikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7 OwpAQCAtMzM4NSw3ICszNTkwLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnFy ZG1sYWRoLnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3lt Ym9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxcmRtbGFkaHFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMzQwMSw3ICszNjA3LDggQEAKICAgXQog ICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnFyZG1sYWRoeC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAl cTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cXJkbWxh ZGh4cV9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7 CkBAIC0zNDE3LDcgKzM2MjQsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cXJk bWxhaC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9s X3JlZiAiQ09ERV9GT1JfbXZlX3ZxcmRtbGFocV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMzQzMyw3ICszNjQxLDggQEAKICAg XQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnFyZG1sYXNoLnMlIzxWX3N6X2VsZW0+XHQlcTAs ICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFyZG1s YXNocV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBd KQogCiA7OwpAQCAtMzQ0OSw3ICszNjU4LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnFyZG1sc2RoLnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxcmRtbHNkaHFfczxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMzQ2NSw3ICszNjc1LDggQEAK ICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnFyZG1sc2RoeC5zJSM8Vl9zel9lbGVtPlx0 JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAo YXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92 cXJkbWxzZGh4cV9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0p CiAKIDs7CkBAIC0zNDgxLDcgKzM2OTIsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAg ICJ2cHN0XDt2cXJzaGx0LjxzdXBmPiUjPFZfc3pfZWxlbT4JJXEwLCAlMiIKLSAgWyhzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNu IikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cXJzaGxxX25fPHN1cGY+PG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4Iild KQogCiA7OwpAQCAtMzQ5Nyw3ICszNzA5LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnBzdFw7dnFzaGx0LjxzdXBmPiUjPFZfc3pfZWxlbT5cdCVxMCwgJTIiCi0gIFsoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5z biIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFzaGxxX3JfPHN1cGY+PG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4Iild KQogCiA7OwpAQCAtMzUxMyw3ICszNzI2LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnBzdFw7dnJldjY0dC4lIzxWX3N6X2VsZW0+XHQlcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikg KHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cmV2NjRxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAog OzsKQEAgLTM1MjksNyArMzc0Myw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZw c3RcO3Zyc2hsdC48c3VwZj4lIzxWX3N6X2VsZW0+XHQlcTAsICUyIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zyc2hscV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAog OzsKQEAgLTM1NDUsNyArMzc2MCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZw c3RcO3ZzaGx0LjxzdXBmPiUjPFZfc3pfZWxlbT5cdCVxMCwgJTIiCi0gIFsoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChz eW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnNobHFfcl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7 CkBAIC0zNTYxLDcgKzM3NzcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2c2xp LiUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92c2xpcV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMzU3Nyw3ICszNzk0LDggQEAKICAgXQogICAiVEFS R0VUX0hBVkVfTVZFIgogICAidnNyaS4lIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFso c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0 ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnNyaXFfbl88c3VwZj48bW9kZT4i KSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTM1OTMsNyAr MzgxMSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZxZG1sc2RoeC5zJSM8Vl9z el9lbGVtPlx0JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92cWRtbHNkaHhxX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogXSkKIAogOzsKQEAgLTM2MDksNyArMzgyOCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZF X01WRSIKICAgInZxZG1sc2RoLnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzIgotICBbKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxZG1sc2RocV9zPG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0zNjI1LDcgKzM4NDUs OCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cWRtbGFkaHgucyUjPFZfc3pfZWxl bT5cdCVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhz ZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9t dmVfdnFkbWxhZGh4cV9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK IF0pCiAKIDs7CkBAIC0zNjQxLDcgKzM4NjIsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUi CiAgICJ2cWRtbGFkaC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNu IikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cWRtbGFkaHFfczxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtMzY1Nyw3ICszODc5LDggQEAK ICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidm1sc2RhdmF4LnMlIzxWX3N6X2VsZW0+XHQl MCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1s c2RhdmF4cV9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAK IDs7CkBAIC0zNjczLDcgKzM4OTYsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2 bWxzZGF2YS5zJSM8Vl9zel9lbGVtPlx0JTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3lt Ym9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbHNkYXZhcV9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC0zNjg5LDcgKzM5MTMsOCBAQAogICBdCiAg ICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2bWxhZGF2YXgucyUjPFZfc3pfZWxlbT5cdCUwLCAlcTIs ICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWxhZGF2YXhx X3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIDs7CiA7OyBb dmFic3FfbV9mXSkKQEAgLTM3MDQsNyArMzkyOSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01W RSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2YWJzdC5mJSM8Vl9zel9lbGVt PgklcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0 ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92YWJz cV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0 ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtMzcyMCw4ICszOTQ2LDEwIEBACiAgIF0KICAgIlRB UkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZhZGRsdmF0LjxzdXBmPjMyXHQlUTAsICVSMCwgJXEy IgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQotICAgKHNldF9hdHRyICJsZW5ndGgi IjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdmFkZGx2YXFfPHN1cGY+djRzaSIpKQorICAoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCisgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQorCiA7OwogOzsgW3ZjbWxh cSwgdmNtbGFxX3JvdDkwLCB2Y21sYXFfcm90MTgwLCB2Y21sYXFfcm90MjcwXSkKIDs7CkBAIC0z NzM4LDcgKzM5NjYsOCBAQAogICAiQAogICAgdmNtdWwuZiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIs ICVxMywgIzxyb3Q+CiAgICB2Y21sYS5mJSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJXEzLCAjPHJv dD4iCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91 bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNtbGFxPG12ZV9y b3Q+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBA IC0zNzU0LDcgKzM5ODMsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hB VkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmNtcHQuZiUjPFZfc3pfZWxlbT4JZXEsICVxMSwgJTIi Ci0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNtcGVxcV9uX2Y8bW9k ZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5n dGgiIjgiKV0pCiAKIDs7CkBAIC0zNzcwLDcgKzQwMDAsOCBAQAogICBdCiAgICJUQVJHRVRfSEFW RV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmNtcHQuZiUjPFZfc3pf ZWxlbT4JZ2UsICVxMSwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3ZjbXBnZXFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAg ICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTM3ODYsNyArNDAxNyw4IEBACiAg IF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0 XDt2Y21wdC5mJSM8Vl9zel9lbGVtPglnZSwgJXExLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92Y21wZ2VxX25fZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTM4 MDIsNyArNDAzNCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9N VkVfRkxPQVQiCiAgICJ2cHN0XDt2Y21wdC5mJSM8Vl9zel9lbGVtPglndCwgJXExLCAlcTIiCi0g IFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRp Y2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNtcGd0cV9mPG1vZGU+Iikp CisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4 IildKQogCiA7OwpAQCAtMzgxOCw3ICs0MDUxLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZF ICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZjbXB0LmYlIzxWX3N6X2VsZW0+ CWd0LCAlcTEsICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zj bXBndHFfbl9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChz ZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtMzgzNCw3ICs0MDY4LDggQEAKICAgXQog ICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3Zj bXB0LmYlIzxWX3N6X2VsZW0+CWxlLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9y ZWYgIkNPREVfRk9SX212ZV92Y21wbGVxX2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0zODUwLDcg KzQwODUsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZM T0FUIgogICAidnBzdFw7dmNtcHQuZiUjPFZfc3pfZWxlbT4JbGUsICVxMSwgJTIiCi0gIFsoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRf aW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNtcGxlcV9uX2Y8bW9kZT4iKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0p CiAKIDs7CkBAIC0zODY2LDcgKzQxMDIsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYg VEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmNtcHQuZiUjPFZfc3pfZWxlbT4JbHQs ICVxMSwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRy ICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbXBs dHFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0 dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTM4ODIsNyArNDExOSw4IEBACiAgIF0KICAgIlRB UkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2Y21wdC5m JSM8Vl9zel9lbGVtPglsdCwgJXExLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3Zl IikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNP REVfRk9SX212ZV92Y21wbHRxX25fZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTM4OTgsNyArNDEz Niw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQi CiAgICJ2cHN0XDt2Y21wdC5mJSM8Vl9zel9lbGVtPgluZSwgJXExLCAlcTIiCi0gIFsoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5z biIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNtcG5lcV9mPG1vZGU+IikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7 OwpAQCAtMzkxNCw3ICs0MTUzLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdF VF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZjbXB0LmYlIzxWX3N6X2VsZW0+CW5lLCAlcTEs ICUyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjbXBuZXFfbl9m PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAi bGVuZ3RoIiI4IildKQogCiA7OwpAQCAtMzkzMCw3ICs0MTcwLDggQEAKICAgXQogICAiVEFSR0VU X0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZjdnRidC5mMTYu ZjMyICVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zj dnRicV9mMTZfZjMydjhoZiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAo c2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTM5NDYsNyArNDE4Nyw4IEBACiAgIF0K ICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2 Y3Z0YnQuZjMyLmYxNiAlcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92Y3Z0YnFfZjMyX2YxNnY0c2YiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC0zOTYyLDcgKzQyMDQs OCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgog ICAidnBzdFw7dmN2dHR0LmYxNi5mMzIgJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xf cmVmICJDT0RFX0ZPUl9tdmVfdmN2dHRxX2YxNl9mMzJ2OGhmIikpCisgIChzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtMzk3 OCw3ICs0MjIxLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01W RV9GTE9BVCIKICAgInZwc3RcO3ZjdnR0dC5mMzIuZjE2ICVxMCwgJXEyIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjdnR0cV9mMzJfZjE2djRzZiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAog OzsKQEAgLTM5OTQsOCArNDIzOCw5IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJH RVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2ZHVwdC4lIzxWX3N6X2VsZW0+XHQlcTAsICUy IgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQotICAgKHNldF9hdHRyICJsZW5ndGgi IjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdmR1cHFfbl9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKKyAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CiA7OyBbdmZtYXFfZl0p CkBAIC00MDEwLDcgKzQyNTUsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VU X0hBVkVfTVZFX0ZMT0FUIgogICAidmZtYS5mJSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJXEzIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZmbWFxX2Y8bW9kZT4iKSkK KyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTQwMjYsNyArNDI3 Miw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQi CiAgICJ2Zm1hLmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5 bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Zm1hcV9uX2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTQwNDIsNyArNDI4OSw4IEBACiAgIF0KICAg IlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2Zm1hcy5mJSM8 Vl9zel9lbGVtPgklcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RF X0ZPUl9tdmVfdmZtYXNxX25fZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCiBdKQogOzsKIDs7IFt2Zm1zcV9mXSkKQEAgLTQwNTcsNyArNDMwNSw4IEBACiAgIF0KICAg IlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2Zm1zLmYlIzxW X3N6X2VsZW0+CSVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RF X0ZPUl9tdmVfdmZtc3FfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CiBdKQogCiA7OwpAQCAtNDA3Myw3ICs0MzIyLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZF ICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZtYXhubWF0LmYlIzxWX3N6X2Vs ZW0+CSVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zt YXhubWFxX2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNl dF9hdHRyICJsZW5ndGgiIjgiKV0pCiA7OwogOzsgW3ZtYXhubWF2cV9wX2ZdKQpAQCAtNDA4OCw3 ICs0MzM4LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9G TE9BVCIKICAgInZwc3RcO3ZtYXhubWF2dC5mJSM8Vl9zel9lbGVtPgklMCwgJXEyIgotICBbKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtYXhubWF2cV9mPG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4Iild KQogCiA7OwpAQCAtNDEwNCw3ICs0MzU1LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYm IFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZtYXhubXZ0LmYlIzxWX3N6X2VsZW0+ CSUwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1heG5t dnFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0 dHIgImxlbmd0aCIiOCIpXSkKIDs7CiA7OyBbdm1pbm5tYXFfbV9mXSkKQEAgLTQxMTksNyArNDM3 MSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQi CiAgICJ2cHN0XDt2bWlubm1hdC5mJSM8Vl9zel9lbGVtPgklcTAsICVxMiIKLSAgWyhzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNu IikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWlubm1hcV9mPG1vZGU+IikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7 OwpAQCAtNDEzNSw3ICs0Mzg4LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdF VF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZtaW5ubWF2dC5mJSM8Vl9zel9lbGVtPgklMCwg JXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtaW5ubWF2cV9m PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAi bGVuZ3RoIiI4IildKQogOzsKIDs7IFt2bWlubm12cV9wX2ZdKQpAQCAtNDE1MCw3ICs0NDA0LDgg QEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAg InZwc3RcO3ZtaW5ubXZ0LmYlIzxWX3N6X2VsZW0+CSUwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChz eW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1pbm5tdnFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAg LTQxNjYsNyArNDQyMSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZtbGFsZGF2 YS48c3VwZj4lIzxWX3N6X2VsZW0+XHQlUTAsICVSMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1sYWxkYXZhcV88c3VwZj48bW9kZT4iKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTQxODIsNyArNDQzOCw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZtbGFsZGF2YXgucyUjPFZfc3pfZWxl bT5cdCVRMCwgJVIwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92bWxhbGRhdmF4cV9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKIF0pCiAKIDs7CkBAIC00MTk4LDcgKzQ0NTUsOCBAQAogICBdCiAgICJUQVJHRVRfSEFW RV9NVkUiCiAgICJ2cHN0XDt2bWxhbGRhdnQuPHN1cGY+JSM8Vl9zel9lbGVtPiAlUTAsICVSMCwg JXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1sYWxk YXZxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAo c2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQyMTQsNyArNDQ3Miw4IEBACiAgIF0K ICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZtbGFsZGF2eHQucyUjPFZfc3pfZWxlbT5c dCVRMCwgJVIwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92bWxhbGRhdnhxX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiA7OwogOzsgW3ZtbHNsZGF2YXFfc10pCkBA IC00MjI5LDcgKzQ0ODgsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2bWxzbGRh dmEucyUjPFZfc3pfZWxlbT4gJVEwLCAlUjAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3lt Ym9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbHNsZGF2YXFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpAQCAtNDI0NSw3ICs0NTA1LDggQEAKICAgXQog ICAiVEFSR0VUX0hBVkVfTVZFIgogICAidm1sc2xkYXZheC5zJSM8Vl9zel9lbGVtPiAlUTAsICVS MCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1s c2xkYXZheHFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQog CiA7OwpAQCAtNDI2MSw3ICs0NTIyLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAi dnBzdFw7dm1sc2xkYXZ0LnMlIzxWX3N6X2VsZW0+ICVRMCwgJVIwLCAlcTEsICVxMiIKLSAgWyhz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRl ZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWxzbGRhdnFfczxtb2RlPiIpKQor ICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIp XSkKIAogOzsKQEAgLTQyNzcsNyArNDUzOSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIK ICAgInZwc3RcO3ZtbHNsZGF2eHQucyUjPFZfc3pfZWxlbT4gJVEwLCAlUjAsICVxMSwgJXEyIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbHNsZGF2eHFfczxtb2Rl PiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0 aCIiOCIpXSkKIDs7CiA7OyBbdm1vdmxicV9tX3UsIHZtb3ZsYnFfbV9zXSkKQEAgLTQyOTIsNyAr NDU1NSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3Ztb3ZsYnQuPHN1 cGY+JSM8Vl9zel9lbGVtPgklcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3Zl IikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNP REVfRk9SX212ZV92bW92bGJxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIDs7CiA7OyBbdm1vdmx0cV9t X3UsIHZtb3ZsdHFfbV9zXSkKQEAgLTQzMDcsNyArNDU3MSw4IEBACiAgIF0KICAgIlRBUkdFVF9I QVZFX01WRSIKICAgInZwc3RcO3Ztb3ZsdHQuPHN1cGY+JSM8Vl9zel9lbGVtPgklcTAsICVxMiIK LSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJl ZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bW92bHRxXzxzdXBmPjxt b2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxl bmd0aCIiOCIpXSkKIDs7CiA7OyBbdm1vdm5icV9tX3UsIHZtb3ZuYnFfbV9zXSkKQEAgLTQzMjIs NyArNDU4Nyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3Ztb3ZuYnQu aSUjPFZfc3pfZWxlbT4JJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RF X0ZPUl9tdmVfdm1vdm5icV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00MzM4LDcgKzQ2 MDQsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2bW92bnR0LmklIzxW X3N6X2VsZW0+CSVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3Ztb3ZudHFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3Zl IikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNDM1NCw3ICs0NjIxLDgg QEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dm12bnQuaSUjPFZfc3pfZWxl bT4JJXEwLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0 ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bXZu cV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAo c2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIDs7CiA7OyBbdm5lZ3FfbV9mXSkKQEAgLTQzNjksNyAr NDYzNyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxP QVQiCiAgICJ2cHN0XDt2bmVndC5mJSM8Vl9zel9lbGVtPgklcTAsICVxMiIKLSAgWyhzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNu IikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bmVncV9mPG1vZGU+IikpCisgIChzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpA QCAtNDM4NSw3ICs0NjU0LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7 dm9ycnQuaSUjPFZfc3pfZWxlbT4JJXEwLCAlMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92b3JycV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIDs7CiA7OyBbdnBzZWxx X2ZdKQpAQCAtNDQwMCw3ICs0NjcwLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRB UkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc2VsICVxMCwgJXExLCAlcTIiCi0gIFsoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5z biIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnBzZWxxX2Y8bW9kZT4iKSkKKyAgKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTQ0MTYsNyArNDY4Nyw4IEBACiAg IF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZxbW92bmJ0LjxzdXBmPiUjPFZfc3pf ZWxlbT4JJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQg KGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVf dnFtb3ZuYnFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK ICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNDQzMiw3ICs0NzA0LDggQEAK ICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnFtb3ZudHQuPHN1cGY+JSM8Vl9z el9lbGVtPgklcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNl dCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212 ZV92cW1vdm50cV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00NDQ4LDcgKzQ3MjEsOCBA QAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cW1vdnVuYnQucyUjPFZfc3pf ZWxlbT4JJXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQg KGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVf dnFtb3Z1bmJxX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAg KHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00NDY0LDcgKzQ3MzgsOCBAQAogICBd CiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cW1vdnVudHQucyUjPFZfc3pfZWxlbT4J JXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFtb3Z1 bnRxX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9h dHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00NDgwLDcgKzQ3NTUsOCBAQAogICBdCiAgICJU QVJHRVRfSEFWRV9NVkUiCiAgICJ2cXJzaHJudC48c3VwZj4lIzxWX3N6X2VsZW0+CSVxMCwgJXEy LCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cXJzaHJudHFf bl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAog OzsKQEAgLTQ0OTYsNyArNDc3Miw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZx cnNocnVudC5zJSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1i b2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFyc2hydW50cV9uX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTQ1MTIsNyArNDc4OSw4IEBACiAgIF0K ICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZxc2hybmIuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEw LCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRy ICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zxc2hy bmJxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0p CiAKIDs7CkBAIC00NTI4LDcgKzQ4MDYsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAg ICJ2cXNocm50LjxzdXBmPiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zxc2hybnRxX25fPHN1cGY+PG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC00NTQ0LDcgKzQ4MjMs OCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cXNocnVuYi5zJSM8Vl9zel9lbGVt PgklcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQg KGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVf dnFzaHJ1bmJxX25fczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBd KQogCiA7OwpAQCAtNDU2MCw3ICs0ODQwLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnFzaHJ1bnQucyUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zxc2hydW50cV9uX3M8bW9kZT4iKSkKKyAgKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTQ1NzYsNyArNDg1Nyw4IEBACiAg IF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0 XDt2cmV2MzJ0LjE2ICVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQor IFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9G T1JfbXZlX3ZyZXYzMnFfZnY4aGYiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQog ICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00NTkyLDcgKzQ4NzQsOCBAQAog ICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cmV2MzJ0LiUjPFZfc3pfZWxlbT4J JXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJldjMy cV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNl dF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00NjA4LDcgKzQ4OTEsOCBAQAogICBdCiAg ICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dnJl djY0dC4lIzxWX3N6X2VsZW0+CSVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAi Q09ERV9GT1JfbXZlX3ZyZXY2NHFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQ2MjQsNyArNDkw OCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZybWxhbGRhdmhheC5zMzIgJVEw LCAlUjAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0 IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZl X3ZybWxhbGRhdmhheHFfc3Y0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQog XSkKIAogOzsKQEAgLTQ2NDAsNyArNDkyNSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIK ICAgInZwc3RcO3ZybWxhbGRhdmh4dC5zMzIgJVEwLCAlUjAsICVxMSwgJXEyIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZybWxhbGRhdmh4cV9zdjRzaSIpKQorICAo c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkK IAogOzsKQEAgLTQ2NTYsNyArNDk0Miw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAg InZybWxzbGRhdmhheC5zMzIgJVEwLCAlUjAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3lt Ym9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZybWxzbGRhdmhheHFfc3Y0c2kiKSkKKyAgKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTQ2NzIsNyArNDk1OSw4IEBACiAgIF0K ICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZybWxzbGRhdmh0LnMzMiAlUTAsICVSMCwg JXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJtbHNs ZGF2aHFfc3Y0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9h dHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00Njg4LDcgKzQ5NzYsOCBAQAogICBdCiAgICJU QVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cm1sc2xkYXZoeHQuczMyICVRMCwgJVIwLCAlcTEs ICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cm1sc2xkYXZo eHFfc3Y0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRy ICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC00NzA0LDcgKzQ5OTMsOCBAQAogICBdCiAgICJUQVJH RVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dnJpbnRhdC5m JSM8Vl9zel9lbGVtPgklcTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92cm5kYXFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQ3MjAsNyArNTAxMCw4IEBA CiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2 cHN0XDt2cmludG10LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3lt Ym9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZybmRtcV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNDcz Niw3ICs1MDI3LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01W RV9GTE9BVCIKICAgInZwc3RcO3ZyaW50bnQuZiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIiCi0gIFso c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0 ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJuZG5xX2Y8bW9kZT4iKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0p CiAKIDs7CkBAIC00NzUyLDcgKzUwNDQsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYg VEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dnJpbnRwdC5mJSM8Vl9zel9lbGVtPgkl cTAsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cm5kcHFf Zjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIg Imxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQ3NjgsNyArNTA2MSw4IEBACiAgIF0KICAgIlRBUkdF VF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2cmludHh0LmYl IzxWX3N6X2VsZW0+CSVxMCwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQor IFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9G T1JfbXZlX3ZybmR4cV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK ICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNDc4NCw3ICs1MDc4LDggQEAK ICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnJzaHJuYi5pJSM8Vl9zel9lbGVtPgklcTAs ICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnJzaHJu YnFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkK IAogOzsKQEAgLTQ4MDAsNyArNTA5NSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAg InZyc2hybnQuaSUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3lt Ym9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zyc2hybnRxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC00ODE2LDcgKzUxMTIsOCBAQAog ICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2c2hybmIuaSUjPFZfc3pfZWxlbT4JJXEwLCAl cTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJt dmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzaHJuYnFf bl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAog OzsKQEAgLTQ4MzIsNyArNTEyOSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZz aHJudC5pJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9s X3JlZiAiQ09ERV9GT1JfbXZlX3ZzaHJudHFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTQ4NDgsNyArNTE0Niw4IEBACiAgIF0K ICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2 Y3Z0bXQuPHN1cGY+JSM8Vl9zel9lbGVtPi5mJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIiCi0gIFso c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0 ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmN2dG1xXzxzdXBmPjxtb2RlPiIp KQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIi OCIpXSkKIAogOzsKQEAgLTQ4NjQsNyArNTE2Myw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01W RSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2Y3Z0cHQuPHN1cGY+JSM8Vl9z el9lbGVtPi5mJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xf cmVmICJDT0RFX0ZPUl9tdmVfdmN2dHBxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQ4 ODAsNyArNTE4MCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9N VkVfRkxPQVQiCiAgICJ2cHN0XDt2Y3Z0bnQuPHN1cGY+JSM8Vl9zel9lbGVtPi5mJSM8Vl9zel9l bGVtPlx0JXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQg KGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVf dmN2dG5xXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAg ICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQ4OTcsNyArNTE5OCw4IEBACiAg IF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0 XDt2Y3Z0dC48c3VwZj4lIzxWX3N6X2VsZW0+LmYlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMi Ci0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmN2dHFfbl9mcm9tX2Zf PHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRf YXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNDkxMyw3ICs1MjE1LDggQEAKICAgXQogICAi VEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnJldjE2dC44ICVxMCwgJXEyIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZyZXYxNnFfPHN1cGY+djE2cWkiKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0p CiAKIDs7CkBAIC00OTI5LDcgKzUyMzIsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYg VEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmN2dHQuPHN1cGY+JSM8Vl9zel9lbGVt Pi5mJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJD T0RFX0ZPUl9tdmVfdmN2dHFfZnJvbV9mXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTQ5 NDUsNyArNTI0OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZybWxh bGRhdmh0LjxzdXBmPjMyICVRMCwgJVIwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92cm1sYWxkYXZocV88c3VwZj52NHNpIikpCisgIChzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpA QCAtNDk2MSw3ICs1MjY2LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnJtbHNs ZGF2aGEuczMyICVRMCwgJVIwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92cm1sc2xkYXZoYXFfc3Y0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQogXSkKIAogOzsKQEAgLTQ5NzgsNyArNTI4NCw4IEBACiAgIF0KICAgIlRBUkdF VF9IQVZFX01WRSIKICAgInZwc3RcO3ZhYmF2dC48c3VwZj4lIzxWX3N6X2VsZW0+XHQlMCwgJXEy LCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12 ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmFiYXZxXzxz dXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiBdKQogCiA7OwpA QCAtNDk5NSw3ICs1MzAyLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFxu XHR2cXNobHV0LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikg KHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cXNobHVxX25fczxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpXSkKIAogOzsKIDs7IFt2c2hscV9tX3MsIHZzaGxxX21fdV0p CkBAIC01MDExLDcgKzUzMTksOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0 XDt2c2hsdC48c3VwZj4lIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5z biIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnNobHFfPHN1cGY+PG1vZGU+IikpCisgIChz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIildKQogCiA7OwogOzsgW3ZzcmlxX21fbl9zLCB2c3Jp cV9tX25fdV0pCkBAIC01MDI3LDcgKzUzMzYsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUi CiAgICJ2cHN0XDt2c3JpdC4lIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92c3JpcV9uXzxzdXBmPjxtb2RlPiIpKQor ICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpXSkKIAogOzsKIDs7IFt2c3VicV9tX3UsIHZz dWJxX21fc10pCkBAIC01MDQzLDcgKzUzNTMsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUi CiAgICJ2cHN0XDt2c3VidC5pJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdWJxXzxzdXBmPjxtb2RlPiIpKQor ICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpXSkKIAogOzsKIDs7IFt2Y3Z0cV9tX25fdG9f Zl91LCB2Y3Z0cV9tX25fdG9fZl9zXSkKQEAgLTUwNTksNyArNTM3MCw4IEBACiAgIF0KICAgIlRB UkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2Y3Z0dC5m JSM8Vl9zel9lbGVtPi48c3VwZj4lIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRf aW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmN2dHFfbl90b19mXzxzdXBmPjxtb2Rl PiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0 aCIiOCIpXSkKIDs7CiA7OyBbdmFiZHFfbV9zLCB2YWJkcV9tX3VdKQpAQCAtNTA3NSw3ICs1Mzg3 LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dmFiZHQuPHN1cGY+JSM8 Vl9zel9lbGVtPgklcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZhYmRxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTUwOTIsNyArNTQw NSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZhZGR0LmklIzxWX3N6 X2VsZW0+CSVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92YWRkcV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTUxMDksNyArNTQyMyw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZhZGR0LmklIzxWX3N6X2Vs ZW0+CSVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhz ZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9t dmVfdmFkZHE8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNl dF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01MTI2LDcgKzU0NDEsOCBAQAogICBdCiAg ICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2YW5kdCAlcTAsICVxMiwgJXEzIgotICBbKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZhbmRxXzxzdXBmPjxtb2RlPiIpKQor ICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIp XSkKIAogOzsKQEAgLTUxNDMsNyArNTQ1OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIK ICAgInZwc3RcO3ZiaWN0ICVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdmJpY3FfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTE2MCw3 ICs1NDc3LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dmJyc3J0LiUj PFZfc3pfZWxlbT4JJXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZicnNycV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTUxNzcsNyAr NTQ5NSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZjYWRkdC5pJSM8 Vl9zel9lbGVtPgklcTAsICVxMiwgJXEzLCAjMjcwIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3Jl ZiAiQ09ERV9GT1JfbXZlX3ZjYWRkcV9yb3QyNzA8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01MTk0 LDcgKzU1MTMsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2Y2FkZHQu aSUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICVxMywgIzkwIgotICBbKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9s X3JlZiAiQ09ERV9GT1JfbXZlX3ZjYWRkcV9yb3Q5MDxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTUy MTEsNyArNTUzMSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3Zlb3J0 ICVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQg KGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVf dmVvcnFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAg IChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTIyOCw3ICs1NTQ5LDggQEAKICAg XQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dmhhZGR0LjxzdXBmPiUjPFZfc3pfZWxl bT4JJXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0 IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZl X3ZoYWRkcV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTUyNDUsNyArNTU2Nyw4IEBA CiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZoYWRkdC48c3VwZj4lIzxWX3N6 X2VsZW0+CSVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdmhhZGRxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTUyNjIsNyArNTU4NSw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3Zoc3VidC48c3VwZj4lIzxW X3N6X2VsZW0+CSVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92aHN1YnFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01Mjc5LDcgKzU2 MDMsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2aHN1YnQuPHN1cGY+ JSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAi Q09ERV9GT1JfbXZlX3Zoc3VicV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01Mjk2LDcg KzU2MjEsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2bWF4dC48c3Vw Zj4lIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdm1heHFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTMxMyw3 ICs1NjM5LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dm1pbnQuPHN1 cGY+JSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3Jl ZiAiQ09ERV9GT1JfbXZlX3ZtaW5xXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTUzMzAs NyArNTY1Nyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZtbGFkYXZh dC48c3VwZj4lIzxWX3N6X2VsZW0+CSUwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92bWxhZGF2YXFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpA QCAtNTM0Nyw3ICs1Njc1LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7 dm1sYXQuPHN1cGY+JSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChz eW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1sYXFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7 CkBAIC01MzY0LDcgKzU2OTMsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0 XDt2bWxhc3QuPHN1cGY+JSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1sYXNxX25fPHN1cGY+PG1vZGU+IikpCisgIChz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQog CiA7OwpAQCAtNTM4MSw3ICs1NzExLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAi dnBzdFw7dm11bGh0LjxzdXBmPiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICVxMyIKLSAgWyhzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bXVsaHFfPHN1cGY+PG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4Iild KQogCiA7OwpAQCAtNTM5OCw3ICs1NzI5LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnBzdFw7dm11bGxidC48c3VwZj4lIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlcTMiCi0gIFso c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0 ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm11bGxicV9pbnRfPHN1cGY+PG1v ZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVu Z3RoIiI4IildKQogCiA7OwpAQCAtNTQxNSw3ICs1NzQ3LDggQEAKICAgXQogICAiVEFSR0VUX0hB VkVfTVZFIgogICAidnBzdFw7dm11bGx0dC48c3VwZj4lIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAl cTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91 bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm11bGx0cV9pbnRf PHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRf YXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTQzMiw3ICs1NzY1LDggQEAKICAgXQogICAi VEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dm11bHQuaSUjPFZfc3pfZWxlbT4JJXEwLCAlcTIs ICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtdWxxX25fPHN1 cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0 ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTQ0OSw3ICs1NzgzLDggQEAKICAgXQogICAiVEFS R0VUX0hBVkVfTVZFIgogICAidnBzdFw7dm11bHQuaSUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICVx MyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3Vu cHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bXVscV88c3VwZj48 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJs ZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01NDY2LDcgKzU4MDEsOCBAQAogICBdCiAgICJUQVJHRVRf SEFWRV9NVkUiCiAgICJ2cHN0XDt2b3JudCAlcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zvcm5xXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsK QEAgLTU0ODMsNyArNTgxOSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3Rc O3ZvcnJ0ICVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdm9ycnFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3Zl IikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTUwMCw3ICs1ODM3LDgg QEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnFhZGR0LjxzdXBmPiUjPFZf c3pfZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92cWFkZHFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01NTE3LDcgKzU4 NTUsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cWFkZHQuPHN1cGY+ JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92cWFkZHFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTUzNCw3 ICs1ODczLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnFkbWxhaHQu cyUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92cWRtbGFocV9uX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01NTUxLDcg KzU4OTEsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cWRtbGFzaHQu cyUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92cWRtbGFzaHFfbl9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNTU2OCw3 ICs1OTA5LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnFyZG1sYWh0 LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdnFyZG1sYWhxX25fczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTU1ODUs NyArNTkyNyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZxcmRtbGFz aHQucyUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9y ZWYgIkNPREVfRk9SX212ZV92cXJkbWxhc2hxX25fczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTU2 MDIsNyArNTk0NSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZxcnNo bHQuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5 bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cXJzaGxxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsK QEAgLTU2MTksNyArNTk2Myw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3Rc O3Zxc2hsdC48c3VwZj4lIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFzaGxxX25fPHN1cGY+PG1vZGU+IikpCisgIChz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQog CiA7OwpAQCAtNTYzNiw3ICs1OTgxLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAi dnBzdFw7dnFzaGx0LjxzdXBmPiUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRf aW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFzaGxxXzxzdXBmPjxtb2RlPiIpKQor ICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIp XSkKIAogOzsKQEAgLTU2NTMsNyArNTk5OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIK ICAgInZwc3RcO3Zxc3VidC48c3VwZj4lIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFso c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0 ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFzdWJxX25fPHN1cGY+PG1vZGU+ IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3Ro IiI4IildKQogCiA7OwpAQCAtNTY3MCw3ICs2MDE3LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVf TVZFIgogICAidnBzdFw7dnFzdWJ0LjxzdXBmPiUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlcTMi Ci0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFzdWJxXzxzdXBmPjxt b2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxl bmd0aCIiOCIpXSkKIAogOzsKQEAgLTU2ODcsNyArNjAzNSw4IEBACiAgIF0KICAgIlRBUkdFVF9I QVZFX01WRSIKICAgInZwc3RcO3ZyaGFkZHQuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIs ICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cmhhZGRxXzxz dXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0 dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTU3MDQsNyArNjA1Myw4IEBACiAgIF0KICAgIlRB UkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZybXVsaHQuPHN1cGY+JSM8Vl9zel9lbGVtPlx0JXEw LCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0 ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cm11 bGhxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAo c2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTU3MjEsNyArNjA3MSw4IEBACiAgIF0K ICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3Zyc2hsdC48c3VwZj4lIzxWX3N6X2VsZW0+ XHQlcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0 IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZl X3Zyc2hscV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQog ICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01NzM4LDcgKzYwODksOCBAQAog ICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cnNocnQuPHN1cGY+JSM8Vl9zel9l bGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3Zyc2hycV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTU3NTUsNyArNjEwNyw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZzaGx0LjxzdXBmPiUjPFZf c3pfZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92c2hscV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTU3NzIsNyArNjEy NSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZzaHJ0LjxzdXBmPiUj PFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3Zl IikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNP REVfRk9SX212ZV92c2hycV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTU3ODksNyAr NjE0Myw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZzbGl0LiUjPFZf c3pfZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92c2xpcV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTU4MDYsNyArNjE2 MSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZzdWJ0LmklIzxWX3N6 X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdnN1YnFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01ODIzLDcgKzYxNzks OCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2aGNhZGR0LnMlIzxWX3N6 X2VsZW0+XHQlcTAsICVxMiwgJXEzLCAjMjcwIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAi Q09ERV9GT1JfbXZlX3ZoY2FkZHFfcm90MjcwX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC01ODQw LDcgKzYxOTcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2aGNhZGR0 LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzLCAjOTAiCi0gIFsoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1i b2xfcmVmICJDT0RFX0ZPUl9tdmVfdmhjYWRkcV9yb3Q5MF9zPG1vZGU+IikpCisgIChzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpA QCAtNTg1Nyw3ICs2MjE1LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7 dm1sYWRhdmF4dC5zJSM8Vl9zel9lbGVtPlx0JTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbGFkYXZheHFfczxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsK QEAgLTU4NzQsNyArNjIzMyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3Rc O3ZtbHNkYXZhdC5zJSM8Vl9zel9lbGVtPlx0JTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbHNkYXZhcV9zPG1vZGU+IikpCisgIChzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpA QCAtNTg5MSw3ICs2MjUxLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7 dm1sc2RhdmF4dC5zJSM8Vl9zel9lbGVtPlx0JTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbHNkYXZheHFfczxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsK QEAgLTU5MDgsNyArNjI2OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3Rc O3ZxZG1sYWRodC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikg KHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cWRtbGFkaHFfczxtb2RlPiIpKQorICAoc2V0X2F0 dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsK QEAgLTU5MjUsNyArNjI4Nyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3Rc O3ZxZG1sYWRoeHQucyUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFkbWxhZGh4cV9zPG1vZGU+IikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7 OwpAQCAtNTk0Miw3ICs2MzA1LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBz dFw7dnFkbWxzZGh0LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxZG1sc2RocV9zPG1vZGU+IikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7 OwpAQCAtNTk1OSw3ICs2MzIzLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBz dFw7dnFkbWxzZGh4dC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNu IikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cWRtbHNkaHhxX3M8bW9kZT4iKSkKKyAgKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAK IDs7CkBAIC01OTc2LDcgKzYzNDEsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2 cHN0XDt2cWRtdWxodC5zJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxZG11bGhxX25fczxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAog OzsKQEAgLTU5OTMsNyArNjM1OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZw c3RcO3ZxZG11bGh0LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxZG11bGhxX3M8bW9kZT4iKSkKKyAgKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7 CkBAIC02MDEwLDcgKzYzNzcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0 XDt2cXJkbWxhZGh0LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxcmRtbGFkaHFfczxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAog OzsKQEAgLTYwMjcsNyArNjM5NSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZw c3RcO3ZxcmRtbGFkaHh0LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxcmRtbGFkaHhxX3M8bW9kZT4iKSkKKyAg KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0p CiAKIDs7CkBAIC02MDQ0LDcgKzY0MTMsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAg ICJ2cHN0XDt2cXJkbWxzZGh0LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzIgotICBbKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxcmRtbHNkaHFfczxtb2RlPiIpKQor ICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIp XSkKIAogOzsKQEAgLTYwNjEsNyArNjQzMSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIK ICAgInZwc3RcO3ZxcmRtbHNkaHh0LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzIgotICBb KHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNh dGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxcmRtbHNkaHhxX3M8bW9kZT4i KSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgi IjgiKV0pCiAKIDs7CkBAIC02MDc4LDcgKzY0NDksOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9N VkUiCiAgICJ2cHN0XDt2cXJkbXVsaHQucyUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAg WyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cXJkbXVsaHFfbl9zPG1vZGU+ IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3Ro IiI4IildKQogCiA7OwpAQCAtNjA5NSw3ICs2NDY3LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVf TVZFIgogICAidnBzdFw7dnFyZG11bGh0LnMlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJXEzIgot ICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZxcmRtdWxocV9zPG1vZGU+ IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3Ro IiI4IildKQogCiA7OwpAQCAtNjExMiw3ICs2NDg1LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVf TVZFIgogICAidnBzdFw7dm1sYWxkYXZhdC48c3VwZj4lIzxWX3N6X2VsZW0+CSVRMCwgJVIwLCAl cTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWxhbGRh dmFxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAo c2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTYxMjksOCArNjUwMyw5IEBACiAgIF0K ICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZtbGFsZGF2YXh0LjxzdXBmPiUjPFZfc3pf ZWxlbT5cdCVRMCwgJVIwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3Zl IikKLSAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZtbGFsZGF2YXhxXzxzdXBm Pjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgIChzZXRfYXR0ciAi bGVuZ3RoIiI4IildKQogCiA7OwogOzsgW3ZxcnNocm5icV9tX25fdSwgdnFyc2hybmJxX21fbl9z XSkKQEAgLTYxNDYsNyArNjUyMSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZw c3RcO3ZxcnNocm5idC48c3VwZj4lIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlMyIKLSAgWyhzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cXJzaHJuYnFfbl88c3VwZj48bW9kZT4i KSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgi IjgiKV0pCiAKIDs7CkBAIC02MTYzLDcgKzY1MzksOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9N VkUiCiAgICJ2cHN0XDt2cXJzaHJudHQuPHN1cGY+JSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJTMi Ci0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFyc2hybnRxX25fPHN1 cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0 ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjE4MCw3ICs2NTU3LDggQEAKICAgXQogICAiVEFS R0VUX0hBVkVfTVZFIgogICAidnBzdFxuXHR2cXNocm5idC48c3VwZj4lIzxWX3N6X2VsZW0+XHQl cTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFz aHJuYnFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQog ICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02MTk3LDcgKzY1NzUsOCBAQAog ICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cXNocm50dC48c3VwZj4lIzxWX3N6 X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdnFzaHJudHFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02MjE0LDcgKzY1 OTMsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cm1sYWxkYXZoYXQu czMyXHQlUTAsICVSMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RF X0ZPUl9tdmVfdnJtbGFsZGF2aGFxX3N2NHNpIikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjIzMSw3ICs2NjEx LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnJzaHJuYnQuaSUjPFZf c3pfZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92cnNocm5icV9uXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTYyNDgsNyAr NjYyOSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3Zyc2hybnR0Lmkl IzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJD T0RFX0ZPUl9tdmVfdnJzaHJudHFfbl88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBl IiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02MjY1 LDcgKzY2NDcsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2c2hsbGJ0 LjxzdXBmPiUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIg Im12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92c2hsbGJxX25fPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpA QCAtNjI4Miw3ICs2NjY1LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7 dnNobGx0dC48c3VwZj4lIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnNobGx0cV9uXzxzdXBmPjxtb2RlPiIpKQorICAo c2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkK IAogOzsKQEAgLTYyOTksNyArNjY4Myw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAg InZwc3RcO3ZzaHJuYnQuaSUjPFZfc3pfZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0 ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNu IikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92c2hybmJxX25fPHN1cGY+PG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4Iild KQogCiA7OwpAQCAtNjMxNiw3ICs2NzAxLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnBzdFw7dnNocm50dC5pJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzaHJudHFfbl88c3VwZj48bW9kZT4iKSkK KyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgi KV0pCiAKIDs7CkBAIC02MzMzLDcgKzY3MTksOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUi CiAgICJ2cHN0XDt2bWxzbGRhdmF0LnMlIzxWX3N6X2VsZW0+XHQlUTAsICVSMCwgJXEyLCAlcTMi Ci0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1sc2xkYXZhcV9zPG1v ZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVu Z3RoIiI4IildKQogCiA7OwpAQCAtNjM1MCw3ICs2NzM3LDggQEAKICAgXQogICAiVEFSR0VUX0hB VkVfTVZFIgogICAidnBzdFw7dm1sc2xkYXZheHQucyUjPFZfc3pfZWxlbT5cdCVRMCwgJVIwLCAl cTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bWxzbGRh dmF4cV9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRf YXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjM2Nyw3ICs2NzU1LDggQEAKICAgXQogICAi VEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dm11bGxidC5wJSM8Vl9zel9lbGVtPlx0JXEwLCAl cTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAi bXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bXVsbGJx X3BvbHlfcDxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0 X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTYzODQsNyArNjc3Myw4IEBACiAgIF0KICAg IlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZtdWxsdHQucCUjPFZfc3pfZWxlbT5cdCVxMCwg JXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm11bGx0 cV9wb2x5X3A8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNl dF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02NDAxLDcgKzY3OTEsOCBAQAogICBdCiAg ICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cWRtdWxsYnQucyUjPFZfc3pfZWxlbT5cdCVx MCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0 ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92cWRt dWxsYnFfbl9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChz ZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjQxOCw3ICs2ODA5LDggQEAKICAgXQog ICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnFkbXVsbGJ0LnMlIzxWX3N6X2VsZW0+XHQl cTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zx ZG11bGxicV9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChz ZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjQzNSw3ICs2ODI3LDggQEAKICAgXQog ICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnFkbXVsbHR0LnMlIzxWX3N6X2VsZW0+XHQl cTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnFk bXVsbHRxX25fczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAo c2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY0NTIsNyArNjg0NSw4IEBACiAgIF0K ICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZxZG11bGx0dC5zJSM8Vl9zel9lbGVtPlx0 JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAo YXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92 cWRtdWxsdHFfczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAo c2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY0NjksNyArNjg2Myw4IEBACiAgIF0K ICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZxcnNocnVuYnQucyUjPFZfc3pfZWxlbT5c dCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAo YXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92 cXJzaHJ1bmJxX25fczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAg ICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY0ODYsNyArNjg4MSw4IEBACiAg IF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZxcnNocnVudHQucyUjPFZfc3pfZWxl bT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNl dCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212 ZV92cXJzaHJ1bnRxX25fczxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY1MDMsNyArNjg5OSw4IEBA CiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3Zxc2hydW5idC5zJSM8Vl9zel9l bGVtPlx0JXEwLCAlcTIsICUzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3Zxc2hydW5icV9uX3M8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02NTIwLDcgKzY5MTcsOCBA QAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cXNocnVudHQucyUjPFZfc3pf ZWxlbT5cdCVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92cXNocnVudHFfbl9zPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3Zl IikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjUzNyw3ICs2OTM1LDgg QEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnJtbGFsZGF2aGF0LnUzMlx0 JVEwLCAlUjAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3ZybWxhbGRhdmhhcV91djRzaSIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY1NTQsNyArNjk1Myw4IEBA CiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZybWxhbGRhdmhheHQuczMyXHQl UTAsICVSMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhz ZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9t dmVfdnJtbGFsZGF2aGF4cV9zdjRzaSIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIp CiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY1NzEsNyArNjk3MSw4IEBA CiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZybWxzbGRhdmhhdC5zMzJcdCVR MCwgJVIwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNl dCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212 ZV92cm1sc2xkYXZoYXFfc3Y0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQog ICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02NTg4LDcgKzY5ODksOCBAQAog ICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2cm1sc2xkYXZoYXh0LnMzMlx0JVEw LCAlUjAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0 IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZl X3ZybWxzbGRhdmhheHFfc3Y0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQog ICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiA7OwogOzsgW3ZhYmRxX21fZl0pCkBAIC02NjA0 LDcgKzcwMDYsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZF X0ZMT0FUIgogICAidnBzdFw7dmFiZHQuZiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICVxMyIKLSAg WyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92YWJkcV9mPG1vZGU+IikpCisg IChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4Iild KQogCiA7OwpAQCAtNjYyMSw3ICs3MDI0LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYm IFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZhZGR0LmYlIzxWX3N6X2VsZW0+CSVx MCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmFk ZHFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0 dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY2MzgsNyArNzA0Miw4IEBACiAgIF0KICAgIlRB UkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2YWRkdC5m JSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92 ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJD T0RFX0ZPUl9tdmVfdmFkZHFfbl9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9t b3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjY1NSw3ICs3MDYw LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIK ICAgInZwc3RcO3ZhbmR0ICVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdmFuZHFfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY2NzIsNyArNzA3 OCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQi CiAgICJ2cHN0XDt2YmljdCAlcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3Jl ZiAiQ09ERV9GT1JfbXZlX3ZiaWNxX2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02Njg5LDcgKzcw OTYsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FU IgogICAidnBzdFw7dmJyc3J0LiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICUzIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZicnNycV9uX2Y8bW9kZT4iKSkKKyAgKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAK IDs7CkBAIC02NzA2LDcgKzcxMTQsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFS R0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmNhZGR0LmYlIzxWX3N6X2VsZW0+CSVxMCwg JXEyLCAlcTMsICMyNzAiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQg KGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVf dmNhZGRxX3JvdDI3MDxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAg ICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY3MjMsNyArNzEzMiw4IEBACiAg IF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0 XDt2Y2FkZHQuZiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICVxMywgIzkwIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZjYWRkcV9yb3Q5MDxtb2RlPiIpKQorICAoc2V0 X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAog OzsKQEAgLTY3NDAsNyArNzE1MCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJH RVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2Y21sYXQuZiUjPFZfc3pfZWxlbT4JJXEwLCAl cTIsICVxMywgIzAiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNt bGFxPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0 ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjc1Nyw3ICs3MTY4LDggQEAKICAgXQogICAiVEFS R0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZjbWxhdC5m JSM8Vl9zel9lbGVtPgklcTAsICVxMiwgJXEzLCAjMTgwIgotICBbKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9s X3JlZiAiQ09ERV9GT1JfbXZlX3ZjbWxhcV9yb3QxODA8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0 eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02 Nzc0LDcgKzcxODYsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVf TVZFX0ZMT0FUIgogICAidnBzdFw7dmNtbGF0LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlcTMs ICMyNzAiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12 ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNtbGFxX3Jv dDI3MDxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0 dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY3OTEsNyArNzIwNCw4IEBACiAgIF0KICAgIlRB UkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2Y21sYXQu ZiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICVxMywgIzkwIgotICBbKHNldF9hdHRyICJ0eXBlIiAi bXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9s X3JlZiAiQ09ERV9GT1JfbXZlX3ZjbWxhcV9yb3Q5MDxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY4 MDgsNyArNzIyMiw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9N VkVfRkxPQVQiCiAgICJ2cHN0XDt2Y211bHQuZiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICVxMywg IzAiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91 bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNtdWxxPG1vZGU+ IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3Ro IiI4IildKQogCiA7OwpAQCAtNjgyNSw3ICs3MjQwLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVf TVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZjbXVsdC5mJSM8Vl9zel9l bGVtPgklcTAsICVxMiwgJXEzLCAjMTgwIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZjbXVscV9yb3QxODA8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02ODQyLDcgKzcy NTgsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FU IgogICAidnBzdFw7dmNtdWx0LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlcTMsICMyNzAiCi0g IFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRp Y2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmNtdWxxX3JvdDI3MDxtb2Rl PiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0 aCIiOCIpXSkKIAogOzsKQEAgLTY4NTksNyArNzI3Niw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZF X01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2Y211bHQuZiUjPFZfc3pf ZWxlbT4JJXEwLCAlcTIsICVxMywgIzkwIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZjbXVscV9yb3Q5MDxtb2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAgLTY4NzYsNyArNzI5 NCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQi CiAgICJ2cHN0XDt2ZW9ydCAlcTAsICVxMiwgJXEzIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3Jl ZiAiQ09ERV9GT1JfbXZlX3Zlb3JxX2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZl X21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02ODkzLDcgKzcz MTIsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FU IgogICAidnBzdFw7dmZtYXQuZiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICVxMyIKLSAgWyhzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Zm1hcV9mPG1vZGU+IikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7 OwpAQCAtNjkxMCw3ICs3MzMwLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdF VF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZmbWF0LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEy LCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92Zm1hcV9uX2Y8 bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJs ZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02OTI3LDcgKzczNDgsOCBAQAogICBdCiAgICJUQVJHRVRf SEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dmZtYXN0LmYlIzxW X3N6X2VsZW0+CSVxMCwgJXEyLCAlMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92Zm1hc3Ffbl9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3Zl IikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNjk0NCw3ICs3MzY2LDgg QEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAg InZwc3RcO3ZmbXN0LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmZtc3FfZjxtb2RlPiIpKQorICAoc2V0X2F0dHIg InR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKQEAg LTY5NjEsNyArNzM4NCw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFW RV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2bWF4bm10LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAl cTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91 bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm1heG5tcV9mPG1v ZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVu Z3RoIiI4IildKQogCiA7OwpAQCAtNjk3OCw3ICs3NDAyLDggQEAKICAgXQogICAiVEFSR0VUX0hB VkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZtaW5ubXQuZiUjPFZf c3pfZWxlbT4JJXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92bWlubm1xX2Y8bW9kZT4iKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQogICAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CkBAIC02OTk1LDcgKzc0MjAsOCBA QAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAi dnBzdFw7dm11bHQuZiUjPFZfc3pfZWxlbT4JJXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikg KHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bXVscV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAi dHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAt NzAxMiw3ICs3NDM4LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZF X01WRV9GTE9BVCIKICAgInZwc3RcO3ZtdWx0LmYlIzxWX3N6X2VsZW0+CSVxMCwgJXEyLCAlMyIK LSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJl ZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bXVscV9uX2Y8bW9kZT4i KSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgi IjgiKV0pCiAKIDs7CkBAIC03MDI5LDcgKzc0NTYsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9N VkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnBzdFw7dm9ybnQgJXEwLCAlcTIsICVx MyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3Vu cHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92b3JucV9mPG1vZGU+ IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3Ro IiI4IildKQogCiA7OwpAQCAtNzA0Niw3ICs3NDc0LDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVf TVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZvcnJ0ICVxMCwgJXEyLCAl cTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91 bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdm9ycnFfZjxtb2Rl PiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0 aCIiOCIpXSkKIAogOzsKQEAgLTcwNjMsNyArNzQ5Miw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZF X01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2c3VidC5mJSM8Vl9zel9l bGVtPlx0JXEwLCAlcTIsICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92c3VicV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAg IChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNzA4MCw3ICs3NTEwLDggQEAKICAg XQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3Rc O3ZzdWJ0LmYlIzxWX3N6X2VsZW0+XHQlcTAsICVxMiwgJTMiCi0gIFsoc2V0X2F0dHIgInR5cGUi ICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1i b2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN1YnFfbl9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlw ZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQogCiA7OwpAQCAtNzEw MCw3ICs3NTMxLDggQEAKICAgIG91dHB1dF9hc21faW5zbigidnN0cmIuPFZfc3pfZWxlbT5cdCVx MSwgJUUwIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI0 IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAi Q09ERV9GT1JfbXZlX3ZzdHJicV88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgi ICI0IildKQogCiA7OwogOzsgW3ZzdHJicV9zY2F0dGVyX29mZnNldF9zIHZzdHJicV9zY2F0dGVy X29mZnNldF91XQpAQCAtNzEyOCw3ICs3NTYwLDggQEAKIAkgIFZTVFJCU09RKSldCiAgICJUQVJH RVRfSEFWRV9NVkUiCiAgICJ2c3RyYi48Vl9zel9lbGVtPlx0JXEyLCBbJTAsICVxMV0iCi0gIFso c2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRf aW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN0cmJxX3NjYXR0ZXJfb2Zmc2V0Xzxz dXBmPjxtb2RlPl9pbnNuIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiNCIpXSkKIAogOzsKIDs7 IFt2c3Ryd3Ffc2NhdHRlcl9iYXNlX3MgdnN0cndxX3NjYXR0ZXJfYmFzZV91XQpAQCAtNzE1MCw3 ICs3NTgzLDggQEAKICAgIG91dHB1dF9hc21faW5zbigidnN0cncudTMyXHQlcTIsIFslcTAsICUx XSIsb3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiNCIpXSkK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92c3Ryd3Ffc2NhdHRlcl9iYXNlXzxzdXBmPnY0c2kiKSkKKyAgKHNldF9hdHRyICJs ZW5ndGgiICI0IildKQogCiA7OwogOzsgW3ZsZHJicV9nYXRoZXJfb2Zmc2V0X3MgdmxkcmJxX2dh dGhlcl9vZmZzZXRfdV0KQEAgLTcxNzMsNyArNzYwNyw4IEBACiAgICAgIG91dHB1dF9hc21faW5z biAoInZsZHJiLjxzdXBmPjxWX3N6X2VsZW0+XHQlcTAsIFslbTEsICVxMl0iLG9wcyk7CiAgICBy ZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmxkcmJx X2dhdGhlcl9vZmZzZXRfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiNCIp XSkKIAogOzsKIDs7IFt2bGRyYnFfcyB2bGRyYnFfdV0KQEAgLTcxOTUsNyArNzYzMCw4IEBACiAg ICAgIG91dHB1dF9hc21faW5zbiAoInZsZHJiLjxzdXBmPjxWX3N6X2VsZW0+XHQlcTAsICVFMSIs b3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiNCIpXSkKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92bGRyYnFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiNCIpXSkK IAogOzsKIDs7IFt2bGRyd3FfZ2F0aGVyX2Jhc2VfcyB2bGRyd3FfZ2F0aGVyX2Jhc2VfdV0KQEAg LTcyMTUsNyArNzY1MSw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2bGRydy51MzJcdCVxMCwg WyVxMSwgJTJdIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgi ICI0IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3Jl ZiAiQ09ERV9GT1JfbXZlX3ZsZHJ3cV9nYXRoZXJfYmFzZV88c3VwZj52NHNpIikpCisgIChzZXRf YXR0ciAibGVuZ3RoIiAiNCIpXSkKIAogOzsKIDs7IFt2c3RyYnFfc2NhdHRlcl9vZmZzZXRfcF9z IHZzdHJicV9zY2F0dGVyX29mZnNldF9wX3VdCkBAIC03MjQ3LDcgKzc2ODQsOCBAQAogCSAgVlNU UkJTT1EpKV0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZzdHJidC48Vl9zel9lbGVt Plx0JXEyLCBbJTAsICVxMV0iCi0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQg KGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVf dnN0cmJxX3NjYXR0ZXJfb2Zmc2V0XzxzdXBmPjxtb2RlPl9pbnNuIikpCisgIChzZXRfYXR0ciAi bGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2c3Ryd3Ffc2NhdHRlcl9iYXNlX3BfcyB2c3Ryd3Ff c2NhdHRlcl9iYXNlX3BfdV0KQEAgLTcyNzAsNyArNzcwOCw4IEBACiAgICBvdXRwdXRfYXNtX2lu c24gKCJ2cHN0XG5cdHZzdHJ3dC51MzJcdCVxMiwgWyVxMCwgJTFdIixvcHMpOwogICAgcmV0dXJu ICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJ3cV9zY2F0 dGVyX2Jhc2VfPHN1cGY+djRzaSIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCiAKIChk ZWZpbmVfaW5zbiAibXZlX3ZzdHJicV9wXzxzdXBmPjxtb2RlPiIKICAgWyhzZXQgKG1hdGNoX29w ZXJhbmQ6PE1WRV9CX0VMRU0+IDAgIm12ZV9tZW1vcnlfb3BlcmFuZCIgIj1VeCIpCkBAIC03Mjg4 LDcgKzc3MjcsOCBAQAogICAgb3V0cHV0X2FzbV9pbnNuICgidnBzdFw7dnN0cmJ0LjxWX3N6X2Vs ZW0+XHQlcTEsICVFMCIsb3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVu Z3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92c3RyYnFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAi bGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2bGRyYnFfZ2F0aGVyX29mZnNldF96X3MgdmxkcmJx X2dhdGhlcl9vZmZzZXRfel91XQpAQCAtNzMxMyw3ICs3NzUzLDggQEAKICAgICAgb3V0cHV0X2Fz bV9pbnNuICgidnBzdFxuXHR2bGRyYnQuPHN1cGY+PFZfc3pfZWxlbT5cdCVxMCwgWyVtMSwgJXEy XSIsb3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92bGRyYnFfZ2F0aGVyX29mZnNldF88c3VwZj48bW9kZT4iKSkKKyAgKHNldF9hdHRy ICJsZW5ndGgiICI4IildKQogCiA7OwogOzsgW3ZsZHJicV96X3MgdmxkcmJxX3pfdV0KQEAgLTcz MzYsNyArNzc3Nyw4IEBACiAgICAgIG91dHB1dF9hc21faW5zbiAoInZwc3RcO3ZsZHJidC48c3Vw Zj48Vl9zel9lbGVtPlx0JXEwLCAlRTEiLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0 X2F0dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5z biIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmxkcmJxXzxzdXBmPjxtb2RlPiIpKQorICAo c2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCiAKIDs7CiA7OyBbdmxkcndxX2dhdGhlcl9iYXNlX3pf cyB2bGRyd3FfZ2F0aGVyX2Jhc2Vfel91XQpAQCAtNzM1Nyw3ICs3Nzk5LDggQEAKICAgIG91dHB1 dF9hc21faW5zbiAoInZwc3Rcblx0dmxkcnd0LnUzMlx0JXEwLCBbJXExLCAlMl0iLG9wcyk7CiAg ICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmxk cndxX2dhdGhlcl9iYXNlXzxzdXBmPnY0c2kiKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4Iild KQogCiA7OwogOzsgW3ZsZHJocV9mXQpAQCAtNzM3Niw3ICs3ODE5LDggQEAKICAgIG91dHB1dF9h c21faW5zbiAoInZsZHJoLjE2XHQlcTAsICVFMSIsb3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAg WyhzZXRfYXR0ciAibGVuZ3RoIiAiNCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRl ZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bGRyaHFfZnY4aGYiKSkKKyAgKHNl dF9hdHRyICJsZW5ndGgiICI0IildKQogCiA7OwogOzsgW3ZsZHJocV9nYXRoZXJfb2Zmc2V0X3Mg dmxkcmhxX2dhdGhlcl9vZmZzZXRfdV0KQEAgLTczOTksNyArNzg0Myw4IEBACiAgICAgIG91dHB1 dF9hc21faW5zbiAoInZsZHJoLjxzdXBmPjxWX3N6X2VsZW0+XHQlcTAsIFslbTEsICVxMl0iLG9w cyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCisgWyhz ZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9t dmVfdmxkcmhxX2dhdGhlcl9vZmZzZXRfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAibGVu Z3RoIiAiNCIpXSkKIAogOzsKIDs7IFt2bGRyaHFfZ2F0aGVyX29mZnNldF96X3MgdmxkcmhxX2dh dGhlcl9vZmZzZXRfel91XQpAQCAtNzQyNCw3ICs3ODY5LDggQEAKICAgICAgb3V0cHV0X2FzbV9p bnNuICgidnBzdFxuXHR2bGRyaHQuPHN1cGY+PFZfc3pfZWxlbT5cdCVxMCwgWyVtMSwgJXEyXSIs b3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFso c2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1Jf bXZlX3ZsZHJocV9nYXRoZXJfb2Zmc2V0XzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgImxl bmd0aCIgIjgiKV0pCiAKIDs7CiA7OyBbdmxkcmhxX2dhdGhlcl9zaGlmdGVkX29mZnNldF9zIHZs ZHJocV9nYXRoZXJfc2hpZnRlZF9vZmZzZXRfdV0KQEAgLTc0NDcsNyArNzg5Myw4IEBACiAgICAg IG91dHB1dF9hc21faW5zbiAoInZsZHJoLjxzdXBmPjxWX3N6X2VsZW0+XHQlcTAsIFslbTEsICVx MiwgdXh0dyAjMV0iLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0 aCIgIjQiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xf cmVmICJDT0RFX0ZPUl9tdmVfdmxkcmhxX2dhdGhlcl9zaGlmdGVkX29mZnNldF88c3VwZj48bW9k ZT4iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI0IildKQogCiA7OwogOzsgW3ZsZHJocV9nYXRo ZXJfc2hpZnRlZF9vZmZzZXRfel9zIHZsZHJocV9nYXRoZXJfc2hpdGVkX29mZnNldF96X3VdCkBA IC03NDcyLDcgKzc5MTksOCBAQAogICAgICBvdXRwdXRfYXNtX2luc24gKCJ2cHN0XG5cdHZsZHJo dC48c3VwZj48Vl9zel9lbGVtPlx0JXEwLCBbJW0xLCAlcTIsIHV4dHcgIzFdIixvcHMpOwogICAg cmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRy ICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJo cV9nYXRoZXJfc2hpZnRlZF9vZmZzZXRfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAibGVu Z3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2bGRyaHFfcywgdmxkcmhxX3VdCkBAIC03NDk0LDcgKzc5 NDIsOCBAQAogICAgICBvdXRwdXRfYXNtX2luc24gKCJ2bGRyaC48c3VwZj48Vl9zel9lbGVtPlx0 JXEwLCAlRTEiLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIg IjQiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdmxkcmhxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgImxlbmd0 aCIgIjQiKV0pCiAKIDs7CiA7OyBbdmxkcmhxX3pfZl0KQEAgLTc1MTQsNyArNzk2Myw4IEBACiAg ICBvdXRwdXRfYXNtX2luc24gKCJ2cHN0XDt2bGRyaHQuMTZcdCVxMCwgJUUxIixvcHMpOwogICAg cmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRy ICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJo cV9mdjhoZiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCiAKIDs7CiA7OyBbdmxkcmhx X3pfcyB2bGRyaHFfel91XQpAQCAtNzUzNyw3ICs3OTg3LDggQEAKICAgICAgb3V0cHV0X2FzbV9p bnNuICgidnBzdFw7dmxkcmh0LjxzdXBmPjxWX3N6X2VsZW0+XHQlcTAsICVFMSIsb3BzKTsKICAg IHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0 ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bGRy aHFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7 IFt2bGRyd3FfZl0KQEAgLTc1NTYsNyArODAwNyw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2 bGRydy4zMlx0JXEwLCAlRTEiLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIg Imxlbmd0aCIgIjQiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChz eW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmxkcndxX2Z2NHNmIikpCisgIChzZXRfYXR0ciAibGVu Z3RoIiAiNCIpXSkKIAogOzsKIDs7IFt2bGRyd3FfcyB2bGRyd3FfdV0KQEAgLTc1NzUsNyArODAy Nyw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2bGRydy4zMlx0JXEwLCAlRTEiLG9wcyk7CiAg ICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCisgWyhzZXQgKGF0 dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmxk cndxXzxzdXBmPnY0c2kiKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI0IildKQogCiA7OwogOzsg W3ZsZHJ3cV96X2ZdCkBAIC03NTk1LDcgKzgwNDgsOCBAQAogICAgb3V0cHV0X2FzbV9pbnNuICgi dnBzdFw7dmxkcnd0LjMyXHQlcTAsICVFMSIsb3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhz ZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bGRyd3FfZnY0c2YiKSkKKyAgKHNldF9h dHRyICJsZW5ndGgiICI4IildKQogCiA7OwogOzsgW3ZsZHJ3cV96X3MgdmxkcndxX3pfdV0KQEAg LTc2MTUsNyArODA2OSw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2cHN0XDt2bGRyd3QuMzJc dCVxMCwgJUUxIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgi ICI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3Jl ZiAiQ09ERV9GT1JfbXZlX3ZsZHJ3cV88c3VwZj52NHNpIikpCisgIChzZXRfYXR0ciAibGVuZ3Ro IiAiOCIpXSkKIAogKGRlZmluZV9leHBhbmQgIm12ZV92bGQxcV9mPG1vZGU+IgogICBbKG1hdGNo X29wZXJhbmQ6TVZFXzAgMCAic19yZWdpc3Rlcl9vcGVyYW5kIikKQEAgLTc2NTUsNyArODExMCw4 IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2bGRyZC42NFx0JXEwLCBbJXExLCAlMl0iLG9wcyk7 CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCisgWyhzZXQg KGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVf dmxkcmRxX2dhdGhlcl9iYXNlXzxzdXBmPnYyZGkiKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI0 IildKQogCiA7OwogOzsgW3ZsZHJkcV9nYXRoZXJfYmFzZV96X3MgdmxkcmRxX2dhdGhlcl9iYXNl X3pfdV0KQEAgLTc2NzYsNyArODEzMiw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2cHN0XG5c dHZsZHJkdC51NjRcdCVxMCwgWyVxMSwgJTJdIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBb KHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJkcV9nYXRoZXJfYmFzZV88c3Vw Zj52MmRpIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2bGRyZHFf Z2F0aGVyX29mZnNldF9zIHZsZHJkcV9nYXRoZXJfb2Zmc2V0X3VdCkBAIC03Njk2LDcgKzgxNTMs OCBAQAogICBvdXRwdXRfYXNtX2luc24gKCJ2bGRyZC51NjRcdCVxMCwgWyVtMSwgJXEyXSIsb3Bz KTsKICAgcmV0dXJuICIiOwogfQotIFsoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCisgWyhzZXQg KGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVf dmxkcmRxX2dhdGhlcl9vZmZzZXRfPHN1cGY+djJkaSIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIg IjQiKV0pCiAKIDs7CiA7OyBbdmxkcmRxX2dhdGhlcl9vZmZzZXRfel9zIHZsZHJkcV9nYXRoZXJf b2Zmc2V0X3pfdV0KQEAgLTc3MTcsNyArODE3NSw4IEBACiAgIG91dHB1dF9hc21faW5zbiAoInZw c3Rcblx0dmxkcmR0LnU2NFx0JXEwLCBbJW0xLCAlcTJdIixvcHMpOwogICByZXR1cm4gIiI7CiB9 Ci0gWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bGRyZHFfZ2F0aGVyX29mZnNl dF88c3VwZj52MmRpIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2 bGRyZHFfZ2F0aGVyX3NoaWZ0ZWRfb2Zmc2V0X3MgdmxkcmRxX2dhdGhlcl9zaGlmdGVkX29mZnNl dF91XQpAQCAtNzczNyw3ICs4MTk2LDggQEAKICAgIG91dHB1dF9hc21faW5zbiAoInZsZHJkLnU2 NFx0JXEwLCBbJW0xLCAlcTIsIHV4dHcgIzNdIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBb KHNldF9hdHRyICJsZW5ndGgiICI0IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJkcV9nYXRoZXJfc2hpZnRlZF9v ZmZzZXRfPHN1cGY+djJkaSIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCiAKIDs7CiA7 OyBbdmxkcmRxX2dhdGhlcl9zaGlmdGVkX29mZnNldF96X3MgdmxkcmRxX2dhdGhlcl9zaGlmdGVk X29mZnNldF96X3VdCkBAIC03NzU4LDcgKzgyMTgsOCBAQAogICAgb3V0cHV0X2FzbV9pbnNuICgi dnBzdFxuXHR2bGRyZHQudTY0XHQlcTAsIFslbTEsICVxMiwgdXh0dyAjM10iLG9wcyk7CiAgICBy ZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmxkcmRx X2dhdGhlcl9zaGlmdGVkX29mZnNldF88c3VwZj52MmRpIikpCisgIChzZXRfYXR0ciAibGVuZ3Ro IiAiOCIpXSkKIAogOzsKIDs7IFt2bGRyaHFfZ2F0aGVyX29mZnNldF9mXQpAQCAtNzc3OCw3ICs4 MjM5LDggQEAKICAgIG91dHB1dF9hc21faW5zbiAoInZsZHJoLmYxNlx0JXEwLCBbJW0xLCAlcTJd IixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI0IildKQor IFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9G T1JfbXZlX3ZsZHJocV9nYXRoZXJfb2Zmc2V0X2Z2OGhmIikpCisgIChzZXRfYXR0ciAibGVuZ3Ro IiAiNCIpXSkKIAogOzsKIDs7IFt2bGRyaHFfZ2F0aGVyX29mZnNldF96X2ZdCkBAIC03ODAwLDcg KzgyNjIsOCBAQAogICAgb3V0cHV0X2FzbV9pbnNuICgidnBzdFxuXHR2bGRyaHQuZjE2XHQlcTAs IFslbTEsICVxMl0iLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0 aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xf cmVmICJDT0RFX0ZPUl9tdmVfdmxkcmhxX2dhdGhlcl9vZmZzZXRfZnY4aGYiKSkKKyAgKHNldF9h dHRyICJsZW5ndGgiICI4IildKQogCiA7OwogOzsgW3ZsZHJocV9nYXRoZXJfc2hpZnRlZF9vZmZz ZXRfZl0KQEAgLTc4MjAsNyArODI4Myw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2bGRyaC5m MTZcdCVxMCwgWyVtMSwgJXEyLCB1eHR3ICMxXSIsb3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAg WyhzZXRfYXR0ciAibGVuZ3RoIiAiNCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRl ZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bGRyaHFfZ2F0aGVyX3NoaWZ0ZWRf b2Zmc2V0X2Z2OGhmIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiNCIpXSkKIAogOzsKIDs7IFt2 bGRyaHFfZ2F0aGVyX3NoaWZ0ZWRfb2Zmc2V0X3pfZl0KQEAgLTc4NDIsNyArODMwNiw4IEBACiAg ICBvdXRwdXRfYXNtX2luc24gKCJ2cHN0XG5cdHZsZHJodC5mMTZcdCVxMCwgWyVtMSwgJXEyLCB1 eHR3ICMxXSIsb3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAi OCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYg IkNPREVfRk9SX212ZV92bGRyaHFfZ2F0aGVyX3NoaWZ0ZWRfb2Zmc2V0X2Z2OGhmIikpCisgIChz ZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2bGRyd3FfZ2F0aGVyX2Jhc2VfZl0K QEAgLTc4NjIsNyArODMyNyw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2bGRydy51MzJcdCVx MCwgWyVxMSwgJTJdIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5n dGgiICI0IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9s X3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJ3cV9nYXRoZXJfYmFzZV9mdjRzZiIpKQorICAoc2V0X2F0 dHIgImxlbmd0aCIgIjQiKV0pCiAKIDs7CiA7OyBbdmxkcndxX2dhdGhlcl9iYXNlX3pfZl0KQEAg LTc4ODMsNyArODM0OSw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2cHN0XG5cdHZsZHJ3dC51 MzJcdCVxMCwgWyVxMSwgJTJdIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRy ICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJ3cV9nYXRoZXJfYmFzZV9mdjRzZiIpKQorICAo c2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCiAKIDs7CiA7OyBbdmxkcndxX2dhdGhlcl9vZmZzZXRf Zl0KQEAgLTc5MDMsNyArODM3MCw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2bGRydy51MzJc dCVxMCwgWyVtMSwgJXEyXSIsb3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAi bGVuZ3RoIiAiNCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5 bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bGRyd3FfZ2F0aGVyX29mZnNldF9mdjRzZiIpKQorICAo c2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCiAKIDs7CiA7OyBbdmxkcndxX2dhdGhlcl9vZmZzZXRf cyB2bGRyd3FfZ2F0aGVyX29mZnNldF91XQpAQCAtNzkyMyw3ICs4MzkxLDggQEAKICAgIG91dHB1 dF9hc21faW5zbiAoInZsZHJ3LnUzMlx0JXEwLCBbJW0xLCAlcTJdIixvcHMpOwogICAgcmV0dXJu ICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI0IildKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJ3cV9nYXRo ZXJfb2Zmc2V0XzxzdXBmPnY0c2kiKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI0IildKQogCiA7 OwogOzsgW3ZsZHJ3cV9nYXRoZXJfb2Zmc2V0X3pfZl0KQEAgLTc5NDUsNyArODQxNCw4IEBACiAg ICBvdXRwdXRfYXNtX2luc24gKCJ2cHN0XG5cdHZsZHJ3dC51MzJcdCVxMCwgWyVtMSwgJXEyXSIs b3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92bGRyd3FfZ2F0aGVyX29mZnNldF9mdjRzZiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIg IjgiKV0pCiAKIDs7CiA7OyBbdmxkcndxX2dhdGhlcl9vZmZzZXRfel9zIHZsZHJ3cV9nYXRoZXJf b2Zmc2V0X3pfdV0KQEAgLTc5NjcsNyArODQzNyw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2 cHN0XG5cdHZsZHJ3dC51MzJcdCVxMCwgWyVtMSwgJXEyXSIsb3BzKTsKICAgIHJldHVybiAiIjsK IH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJl ZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92bGRyd3FfZ2F0aGVyX29m ZnNldF88c3VwZj52NHNpIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7 IFt2bGRyd3FfZ2F0aGVyX3NoaWZ0ZWRfb2Zmc2V0X2ZdCkBAIC03OTg3LDcgKzg0NTgsOCBAQAog ICAgb3V0cHV0X2FzbV9pbnNuICgidmxkcncudTMyXHQlcTAsIFslbTEsICVxMiwgdXh0dyAjMl0i LG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdmxkcndxX2dhdGhlcl9zaGlmdGVkX29mZnNldF9mdjRzZiIpKQorICAoc2V0X2F0dHIg Imxlbmd0aCIgIjQiKV0pCiAKIDs7CiA7OyBbdmxkcndxX2dhdGhlcl9zaGlmdGVkX29mZnNldF9z IHZsZHJ3cV9nYXRoZXJfc2hpZnRlZF9vZmZzZXRfdV0KQEAgLTgwMDcsNyArODQ3OSw4IEBACiAg ICBvdXRwdXRfYXNtX2luc24gKCJ2bGRydy51MzJcdCVxMCwgWyVtMSwgJXEyLCB1eHR3ICMyXSIs b3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiNCIpXSkKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92bGRyd3FfZ2F0aGVyX3NoaWZ0ZWRfb2Zmc2V0XzxzdXBmPnY0c2kiKSkKKyAgKHNldF9h dHRyICJsZW5ndGgiICI0IildKQogCiA7OwogOzsgW3ZsZHJ3cV9nYXRoZXJfc2hpZnRlZF9vZmZz ZXRfel9mXQpAQCAtODAyOSw3ICs4NTAyLDggQEAKICAgIG91dHB1dF9hc21faW5zbiAoInZwc3Rc blx0dmxkcnd0LnUzMlx0JXEwLCBbJW0xLCAlcTIsIHV4dHcgIzJdIixvcHMpOwogICAgcmV0dXJu ICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJ3cV9nYXRo ZXJfc2hpZnRlZF9vZmZzZXRfZnY0c2YiKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4IildKQog CiA7OwogOzsgW3ZsZHJ3cV9nYXRoZXJfc2hpZnRlZF9vZmZzZXRfel9zIHZsZHJ3cV9nYXRoZXJf c2hpZnRlZF9vZmZzZXRfel91XQpAQCAtODA1MSw3ICs4NTI1LDggQEAKICAgIG91dHB1dF9hc21f aW5zbiAoInZwc3Rcblx0dmxkcnd0LnUzMlx0JXEwLCBbJW0xLCAlcTIsIHV4dHcgIzJdIixvcHMp OwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0 IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZl X3ZsZHJ3cV9nYXRoZXJfc2hpZnRlZF9vZmZzZXRfPHN1cGY+djRzaSIpKQorICAoc2V0X2F0dHIg Imxlbmd0aCIgIjgiKV0pCiAKIDs7CiA7OyBbdnN0cmhxX2ZdCkBAIC04MDcwLDcgKzg1NDUsOCBA QAogICAgb3V0cHV0X2FzbV9pbnNuICgidnN0cmguMTZcdCVxMSwgJUUwIixvcHMpOwogICAgcmV0 dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI0IildKQorIFsoc2V0IChhdHRyICJt dmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJocV9m djhoZiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCiAKIDs7CiA7OyBbdnN0cmhxX3Bf Zl0KQEAgLTgwOTEsNyArODU2Nyw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2cHN0XDt2c3Ry aHQuMTZcdCVxMSwgJUUwIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJs ZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3lt Ym9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJocV9mdjhoZiIpKQorICAoc2V0X2F0dHIgImxlbmd0 aCIgIjgiKV0pCiAKIDs7CiA7OyBbdnN0cmhxX3BfcyB2c3RyaHFfcF91XQpAQCAtODExMyw3ICs4 NTkwLDggQEAKICAgIG91dHB1dF9hc21faW5zbiAoInZwc3RcO3ZzdHJodC48Vl9zel9lbGVtPlx0 JXExLCAlRTAiLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIg IjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdnN0cmhxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0X2F0dHIgImxlbmd0 aCIgIjgiKV0pCiAKIDs7CiA7OyBbdnN0cmhxX3NjYXR0ZXJfb2Zmc2V0X3BfcyB2c3RyaHFfc2Nh dHRlcl9vZmZzZXRfcF91XQpAQCAtODE0NSw3ICs4NjIzLDggQEAKIAkgIFZTVFJIU09RKSldCiAg ICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2c3RyaHQuPFZfc3pfZWxlbT5cdCVxMiwgWyUw LCAlcTFdIgotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJocV9zY2F0 dGVyX29mZnNldF88c3VwZj48bW9kZT5faW5zbiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjgi KV0pCiAKIDs7CiA7OyBbdnN0cmhxX3NjYXR0ZXJfb2Zmc2V0X3MgdnN0cmhxX3NjYXR0ZXJfb2Zm c2V0X3VdCkBAIC04MTczLDcgKzg2NTIsOCBAQAogCSAgVlNUUkhTT1EpKV0KICAgIlRBUkdFVF9I QVZFX01WRSIKICAgInZzdHJoLjxWX3N6X2VsZW0+XHQlcTIsIFslMCwgJXExXSIKLSAgWyhzZXRf YXR0ciAibGVuZ3RoIiAiNCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNu IikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92c3RyaHFfc2NhdHRlcl9vZmZzZXRfPHN1cGY+ PG1vZGU+X2luc24iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI0IildKQogCiA7OwogOzsgW3Zz dHJocV9zY2F0dGVyX3NoaWZ0ZWRfb2Zmc2V0X3BfcyB2c3RyaHFfc2NhdHRlcl9zaGlmdGVkX29m ZnNldF9wX3VdCkBAIC04MjA1LDcgKzg2ODUsOCBAQAogCSAgVlNUUkhTU09RKSldCiAgICJUQVJH RVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2c3RyaHQuPFZfc3pfZWxlbT5cdCVxMiwgWyUwLCAlcTEs IHV4dHcgIzFdIgotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJt dmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJocV9z Y2F0dGVyX3NoaWZ0ZWRfb2Zmc2V0XzxzdXBmPjxtb2RlPl9pbnNuIikpCisgIChzZXRfYXR0ciAi bGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2c3RyaHFfc2NhdHRlcl9zaGlmdGVkX29mZnNldF9z IHZzdHJocV9zY2F0dGVyX3NoaWZ0ZWRfb2Zmc2V0X3VdCkBAIC04MjM0LDcgKzg3MTUsOCBAQAog CSAgVlNUUkhTU09RKSldCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2c3RyaC48Vl9zel9lbGVt Plx0JXEyLCBbJTAsICVxMSwgdXh0dyAjMV0iCi0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0p CisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RF X0ZPUl9tdmVfdnN0cmhxX3NjYXR0ZXJfc2hpZnRlZF9vZmZzZXRfPHN1cGY+PG1vZGU+X2luc24i KSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI0IildKQogCiA7OwogOzsgW3ZzdHJocV9zLCB2c3Ry aHFfdV0KQEAgLTgyNTMsNyArODczNSw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2c3RyaC48 Vl9zel9lbGVtPlx0JXExLCAlRTAiLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0 dHIgImxlbmd0aCIgIjQiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN0cmhxXzxzdXBmPjxtb2RlPiIpKQorICAoc2V0 X2F0dHIgImxlbmd0aCIgIjQiKV0pCiAKIDs7CiA7OyBbdnN0cndxX2ZdCkBAIC04MjcyLDcgKzg3 NTUsOCBAQAogICAgb3V0cHV0X2FzbV9pbnNuICgidnN0cncuMzJcdCVxMSwgJUUwIixvcHMpOwog ICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI0IildKQorIFsoc2V0IChh dHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zz dHJ3cV9mdjRzZiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCiAKIDs7CiA7OyBbdnN0 cndxX3BfZl0KQEAgLTgyOTMsNyArODc3Nyw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2cHN0 XDt2c3Ryd3QuMzJcdCVxMSwgJUUwIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9h dHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJ3cV9mdjRzZiIpKQorICAoc2V0X2F0dHIg Imxlbmd0aCIgIjgiKV0pCiAKIDs7CiA7OyBbdnN0cndxX3BfcyB2c3Ryd3FfcF91XQpAQCAtODMx NCw3ICs4Nzk5LDggQEAKICAgIG91dHB1dF9hc21faW5zbiAoInZwc3RcO3ZzdHJ3dC4zMlx0JXEx LCAlRTAiLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgi KV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJD T0RFX0ZPUl9tdmVfdnN0cndxXzxzdXBmPnY0c2kiKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4 IildKQogCiA7OwogOzsgW3ZzdHJ3cV9zIHZzdHJ3cV91XQpAQCAtODMzMyw3ICs4ODE5LDggQEAK ICAgIG91dHB1dF9hc21faW5zbiAoInZzdHJ3LjMyXHQlcTEsICVFMCIsb3BzKTsKICAgIHJldHVy biAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiNCIpXSkKKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92c3Ryd3FfPHN1 cGY+djRzaSIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCiAKIChkZWZpbmVfZXhwYW5k ICJtdmVfdnN0MXFfZjxtb2RlPiIKICAgWyhtYXRjaF9vcGVyYW5kOjxNVkVfQ05WVD4gMCAibXZl X21lbW9yeV9vcGVyYW5kIikKQEAgLTgzNzYsNyArODg2Myw4IEBACiAgICBvdXRwdXRfYXNtX2lu c24gKCJ2cHN0XDtcdHZzdHJkdC51NjRcdCVxMiwgWyVxMCwgJTFdIixvcHMpOwogICAgcmV0dXJu ICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJkcV9zY2F0 dGVyX2Jhc2VfPHN1cGY+djJkaSIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCiAKIDs7 CiA7OyBbdnN0cmRxX3NjYXR0ZXJfYmFzZV9zIHZzdHJkcV9zY2F0dGVyX2Jhc2VfdV0KQEAgLTgz OTgsNyArODg4Niw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2c3RyZC51NjRcdCVxMiwgWyVx MCwgJTFdIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI0 IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAi Q09ERV9GT1JfbXZlX3ZzdHJkcV9zY2F0dGVyX2Jhc2VfPHN1cGY+djJkaSIpKQorICAoc2V0X2F0 dHIgImxlbmd0aCIgIjQiKV0pCiAKIDs7CiA7OyBbdnN0cmRxX3NjYXR0ZXJfb2Zmc2V0X3BfcyB2 c3RyZHFfc2NhdHRlcl9vZmZzZXRfcF91XQpAQCAtODQyOSw3ICs4OTE4LDggQEAKIAkgIFZTVFJE U09RKSldCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0XDt2c3RyZHQuNjRcdCVxMiwgWyUw LCAlcTFdIgotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJkcV9zY2F0 dGVyX29mZnNldF88c3VwZj52MmRpX2luc24iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4Iild KQogCiA7OwogOzsgW3ZzdHJkcV9zY2F0dGVyX29mZnNldF9zIHZzdHJkcV9zY2F0dGVyX29mZnNl dF91XQpAQCAtODQ1Nyw3ICs4OTQ3LDggQEAKIAkgIFZTVFJEU09RKSldCiAgICJUQVJHRVRfSEFW RV9NVkUiCiAgICJ2c3RyZC42NFx0JXEyLCBbJTAsICVxMV0iCi0gIFsoc2V0X2F0dHIgImxlbmd0 aCIgIjQiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xf cmVmICJDT0RFX0ZPUl9tdmVfdnN0cmRxX3NjYXR0ZXJfb2Zmc2V0XzxzdXBmPnYyZGlfaW5zbiIp KQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCiAKIDs7CiA7OyBbdnN0cmRxX3NjYXR0ZXJf c2hpZnRlZF9vZmZzZXRfcF9zIHZzdHJkcV9zY2F0dGVyX3NoaWZ0ZWRfb2Zmc2V0X3BfdV0KQEAg LTg0ODksNyArODk4MCw4IEBACiAJICBWU1RSRFNTT1EpKV0KICAgIlRBUkdFVF9IQVZFX01WRSIK ICAgInZwc3RcO3ZzdHJkdC42NFx0JXEyLCBbJTAsICVxMSwgVVhUVyAjM10iCi0gIFsoc2V0X2F0 dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN0cmRxX3NjYXR0ZXJfc2hpZnRlZF9vZmZzZXRf PHN1cGY+djJkaV9pbnNuIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7 IFt2c3RyZHFfc2NhdHRlcl9zaGlmdGVkX29mZnNldF9zIHZzdHJkcV9zY2F0dGVyX3NoaWZ0ZWRf b2Zmc2V0X3VdCkBAIC04NTE4LDcgKzkwMTAsOCBAQAogCSAgVlNUUkRTU09RKSldCiAgICJUQVJH RVRfSEFWRV9NVkUiCiAgICJ2c3RyZC42NFx0JXEyLCBbJTAsICVxMSwgVVhUVyAjM10iCi0gIFso c2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRf aW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN0cmRxX3NjYXR0ZXJfc2hpZnRlZF9v ZmZzZXRfPHN1cGY+djJkaV9pbnNuIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiNCIpXSkKIAog OzsKIDs7IFt2c3RyaHFfc2NhdHRlcl9vZmZzZXRfZl0KQEAgLTg1NDYsNyArOTAzOSw4IEBACiAJ ICBWU1RSSFFTT19GKSldCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZM T0FUIgogICAidnN0cmguMTZcdCVxMiwgWyUwLCAlcTFdIgotICBbKHNldF9hdHRyICJsZW5ndGgi ICI0IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3Jl ZiAiQ09ERV9GT1JfbXZlX3ZzdHJocV9zY2F0dGVyX29mZnNldF9mdjhoZl9pbnNuIikpCisgIChz ZXRfYXR0ciAibGVuZ3RoIiAiNCIpXSkKIAogOzsKIDs7IFt2c3RyaHFfc2NhdHRlcl9vZmZzZXRf cF9mXQpAQCAtODU3Nyw3ICs5MDcxLDggQEAKIAkgIFZTVFJIUVNPX0YpKV0KICAgIlRBUkdFVF9I QVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2c3RyaHQuMTZcdCVx MiwgWyUwLCAlcTFdIgotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRy ICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJo cV9zY2F0dGVyX29mZnNldF9mdjhoZl9pbnNuIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIp XSkKIAogOzsKIDs7IFt2c3RyaHFfc2NhdHRlcl9zaGlmdGVkX29mZnNldF9mXQpAQCAtODYwNSw3 ICs5MTAwLDggQEAKIAkgIFZTVFJIUVNTT19GKSldCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFS R0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidnN0cmguMTZcdCVxMiwgWyUwLCAlcTEsIHV4dHcgIzFd IgotICBbKHNldF9hdHRyICJsZW5ndGgiICI0IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJocV9zY2F0dGVyX3No aWZ0ZWRfb2Zmc2V0X2Z2OGhmX2luc24iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI0IildKQog CiA7OwogOzsgW3ZzdHJocV9zY2F0dGVyX3NoaWZ0ZWRfb2Zmc2V0X3BfZl0KQEAgLTg2MzcsNyAr OTEzMyw4IEBACiAJICBWU1RSSFFTU09fRikpXQogICAiVEFSR0VUX0hBVkVfTVZFICYmIFRBUkdF VF9IQVZFX01WRV9GTE9BVCIKICAgInZwc3RcO3ZzdHJodC4xNlx0JXEyLCBbJTAsICVxMSwgdXh0 dyAjMV0iCi0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91 bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN0cmhxX3NjYXR0 ZXJfc2hpZnRlZF9vZmZzZXRfZnY4aGZfaW5zbiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjgi KV0pCiAKIDs7CiA7OyBbdnN0cndxX3NjYXR0ZXJfYmFzZV9mXQpAQCAtODY1OSw3ICs5MTU2LDgg QEAKICAgIG91dHB1dF9hc21faW5zbiAoInZzdHJ3LnUzMlx0JXEyLCBbJXEwLCAlMV0iLG9wcyk7 CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCisgWyhzZXQg KGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVf dnN0cndxX3NjYXR0ZXJfYmFzZV9mdjRzZiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0p CiAKIDs7CiA7OyBbdnN0cndxX3NjYXR0ZXJfYmFzZV9wX2ZdCkBAIC04NjgyLDcgKzkxODAsOCBA QAogICAgb3V0cHV0X2FzbV9pbnNuICgidnBzdFxuXHR2c3Ryd3QudTMyXHQlcTIsIFslcTAsICUx XSIsb3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkK KyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVf Rk9SX212ZV92c3Ryd3Ffc2NhdHRlcl9iYXNlX2Z2NHNmIikpCisgIChzZXRfYXR0ciAibGVuZ3Ro IiAiOCIpXSkKIAogOzsKIDs7IFt2c3Ryd3Ffc2NhdHRlcl9vZmZzZXRfZl0KQEAgLTg3MTAsNyAr OTIwOSw4IEBACiAJICBWU1RSV1FTT19GKSldCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VU X0hBVkVfTVZFX0ZMT0FUIgogICAidnN0cncuMzJcdCVxMiwgWyUwLCAlcTFdIgotICBbKHNldF9h dHRyICJsZW5ndGgiICI0IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJ3cV9zY2F0dGVyX29mZnNldF9mdjRzZl9p bnNuIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiNCIpXSkKIAogOzsKIDs7IFt2c3Ryd3Ffc2Nh dHRlcl9vZmZzZXRfcF9mXQpAQCAtODc0MSw3ICs5MjQxLDggQEAKIAkgIFZTVFJXUVNPX0YpKV0K ICAgIlRBUkdFVF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2 c3Ryd3QuMzJcdCVxMiwgWyUwLCAlcTFdIgotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQor IFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9G T1JfbXZlX3ZzdHJ3cV9zY2F0dGVyX29mZnNldF9mdjRzZl9pbnNuIikpCisgIChzZXRfYXR0ciAi bGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2c3Ryd3Ffc2NhdHRlcl9vZmZzZXRfcyB2c3Ryd3Ff c2NhdHRlcl9vZmZzZXRfdV0KQEAgLTg3NzIsNyArOTI3Myw4IEBACiAJICBWU1RSV1NPUSkpXQog ICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dnN0cnd0LjMyXHQlcTIsIFslMCwgJXExXSIK LSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92c3Ryd3Ffc2NhdHRlcl9vZmZz ZXRfPHN1cGY+djRzaV9pbnNuIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsK IDs7IFt2c3Ryd3Ffc2NhdHRlcl9vZmZzZXRfcyB2c3Ryd3Ffc2NhdHRlcl9vZmZzZXRfdV0KQEAg LTg4MDAsNyArOTMwMiw4IEBACiAJICBWU1RSV1NPUSkpXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnN0cncuMzJcdCVxMiwgWyUwLCAlcTFdIgotICBbKHNldF9hdHRyICJsZW5ndGgiICI0Iild KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZzdHJ3cV9zY2F0dGVyX29mZnNldF88c3VwZj52NHNpX2luc24iKSkKKyAgKHNl dF9hdHRyICJsZW5ndGgiICI0IildKQogCiA7OwogOzsgW3ZzdHJ3cV9zY2F0dGVyX3NoaWZ0ZWRf b2Zmc2V0X2ZdCkBAIC04ODI4LDcgKzkzMzEsOCBAQAogCSBWU1RSV1FTU09fRikpXQogICAiVEFS R0VUX0hBVkVfTVZFICYmIFRBUkdFVF9IQVZFX01WRV9GTE9BVCIKICAgInZzdHJ3LjMyXHQlcTIs IFslMCwgJXExLCB1eHR3ICMyXSIKLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNl dCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212 ZV92c3Ryd3Ffc2NhdHRlcl9zaGlmdGVkX29mZnNldF9mdjRzZl9pbnNuIikpCisgIChzZXRfYXR0 ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2c3Ryd3Ffc2NhdHRlcl9zaGlmdGVkX29mZnNl dF9wX2ZdCkBAIC04ODYwLDcgKzkzNjQsOCBAQAogCSAgVlNUUldRU1NPX0YpKV0KICAgIlRBUkdF VF9IQVZFX01WRSAmJiBUQVJHRVRfSEFWRV9NVkVfRkxPQVQiCiAgICJ2cHN0XDt2c3Ryd3QuMzJc dCVxMiwgWyUwLCAlcTEsIHV4dHcgIzJdIgotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQor IFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9G T1JfbXZlX3ZzdHJ3cV9zY2F0dGVyX3NoaWZ0ZWRfb2Zmc2V0X2Z2NHNmX2luc24iKSkKKyAgKHNl dF9hdHRyICJsZW5ndGgiICI4IildKQogCiA7OwogOzsgW3ZzdHJ3cV9zY2F0dGVyX3NoaWZ0ZWRf b2Zmc2V0X3BfcyB2c3Ryd3Ffc2NhdHRlcl9zaGlmdGVkX29mZnNldF9wX3VdCkBAIC04ODkyLDcg KzkzOTcsOCBAQAogCSAgVlNUUldTU09RKSldCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2cHN0 XDt2c3Ryd3QuMzJcdCVxMiwgWyUwLCAlcTEsIHV4dHcgIzJdIgotICBbKHNldF9hdHRyICJsZW5n dGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9s X3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJ3cV9zY2F0dGVyX3NoaWZ0ZWRfb2Zmc2V0XzxzdXBmPnY0 c2lfaW5zbiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCiAKIDs7CiA7OyBbdnN0cndx X3NjYXR0ZXJfc2hpZnRlZF9vZmZzZXRfcyB2c3Ryd3Ffc2NhdHRlcl9zaGlmdGVkX29mZnNldF91 XQpAQCAtODkyMSw3ICs5NDI3LDggQEAKIAkgIFZTVFJXU1NPUSkpXQogICAiVEFSR0VUX0hBVkVf TVZFIgogICAidnN0cncuMzJcdCVxMiwgWyUwLCAlcTEsIHV4dHcgIzJdIgotICBbKHNldF9hdHRy ICJsZW5ndGgiICI0IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJ3cV9zY2F0dGVyX3NoaWZ0ZWRfb2Zmc2V0Xzxz dXBmPnY0c2lfaW5zbiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCiAKIDs7CiA7OyBb dmFkZHFfcywgdmFkZHFfdV0pCkBAIC04OTM0LDcgKzk0NDEsOCBAQAogICBdCiAgICJUQVJHRVRf SEFWRV9NVkUiCiAgICJ2YWRkLmklIzxWX3N6X2VsZW0+XHQlcTAsICVxMSwgJXEyIgotICBbKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZhZGRxPG1vZGU+IikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC04OTQ4LDcgKzk0NTYsOCBAQAog ICBdCiAgICJUQVJHRVRfSEFWRV9NVkUgJiYgVEFSR0VUX0hBVkVfTVZFX0ZMT0FUIgogICAidmFk ZC5mJSM8Vl9zel9lbGVtPlx0JXEwLCAlcTEsICVxMiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9y ZWYgIkNPREVfRk9SX212ZV92YWRkcV9mPG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKIF0pCiAKIDs7CkBAIC05MDE3LDcgKzk1MjYsOCBAQAogCQkobWF0Y2hfb3BlcmFu ZDpTSSA2ICJpbW1lZGlhdGVfb3BlcmFuZCIgImkiKSkpXQogICJUQVJHRVRfSEFWRV9NVkUiCiAg InZwc3RcO1x0dmlkdXB0LnUlIzxWX3N6X2VsZW0+XHQlcTAsICUyLCAlNCIKLSBbKHNldF9hdHRy ICJsZW5ndGgiIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChz eW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmlkdXBxX3U8bW9kZT5faW5zbiIpKQorICAoc2V0X2F0 dHIgImxlbmd0aCIiOCIpXSkKIAogOzsKIDs7IFt2ZGR1cHFfbl91XSkKQEAgLTkwODUsNyArOTU5 NSw4IEBACiAJCSAobWF0Y2hfb3BlcmFuZDpTSSA2ICJpbW1lZGlhdGVfb3BlcmFuZCIgImkiKSkp XQogICJUQVJHRVRfSEFWRV9NVkUiCiAgInZwc3RcO3ZkZHVwdC51JSM8Vl9zel9lbGVtPlx0JXEw LCAlMiwgJTQiCi0gWyhzZXRfYXR0ciAibGVuZ3RoIiI4IildKQorIFsoc2V0IChhdHRyICJtdmVf dW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZkZHVwcV91PG1v ZGU+X2luc24iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CiA7OyBbdmR3ZHVw cV9uX3VdKQpAQCAtOTIwMSw4ICs5NzEyLDkgQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgog ICAidnBzdFw7dmR3ZHVwdC51JSM8Vl9zel9lbGVtPlx0JXEyLCAlMywgJVI0LCAlNSIKLSAgWyhz ZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKLSAgIChzZXRfYXR0ciAibGVuZ3RoIiI4IildKQor IFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9G T1JfbXZlX3Zkd2R1cHFfd2JfdTxtb2RlPl9pbnNuIikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12 ZV9tb3ZlIikKKyAgKHNldF9hdHRyICJsZW5ndGgiIjgiKV0pCiAKIDs7CiA7OyBbdml3ZHVwcV9u X3VdKQpAQCAtOTMxOCw3ICs5ODMwLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAi dnBzdFw7XHR2aXdkdXB0LnUlIzxWX3N6X2VsZW0+XHQlcTIsICUzLCAlUjQsICU1IgotICBbKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3Zpd2R1cHFfd2JfdTxtb2RlPl9pbnNu IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3Ro IiI4IildKQogCiA7OwpAQCAtOTM0NCw3ICs5ODU3LDggQEAKICAgIG91dHB1dF9hc21faW5zbiAo InZzdHJ3LnUzMlx0JXEyLCBbJXEwLCAlMV0hIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBb KHNldF9hdHRyICJsZW5ndGgiICI0IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVk X2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzdHJ3cV9zY2F0dGVyX2Jhc2Vfd2Jf PHN1cGY+djRzaSIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCiAKIDs7CiA7OyBbdnN0 cndxX3NjYXR0ZXJfYmFzZV93Yl9wX3MgdnN0cndxX3NjYXR0ZXJfYmFzZV93Yl9wX3VdCkBAIC05 MzcwLDcgKzk4ODQsOCBAQAogICAgb3V0cHV0X2FzbV9pbnNuICgidnBzdFw7XHR2c3Ryd3QudTMy XHQlcTIsIFslcTAsICUxXSEiLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIg Imxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChz eW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN0cndxX3NjYXR0ZXJfYmFzZV93Yl88c3VwZj52NHNp IikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIAogOzsKIDs7IFt2c3Ryd3Ffc2NhdHRl cl9iYXNlX3diX2ZdCkBAIC05Mzk1LDcgKzk5MTAsOCBAQAogICAgb3V0cHV0X2FzbV9pbnNuICgi dnN0cncudTMyXHQlcTIsIFslcTAsICUxXSEiLG9wcyk7CiAgICByZXR1cm4gIiI7CiB9Ci0gIFso c2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRf aW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN0cndxX3NjYXR0ZXJfYmFzZV93Yl9m djRzZiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjQiKV0pCiAKIDs7CiA7OyBbdnN0cndxX3Nj YXR0ZXJfYmFzZV93Yl9wX2ZdCkBAIC05NDIxLDcgKzk5MzcsOCBAQAogICAgb3V0cHV0X2FzbV9p bnNuICgidnBzdFw7XHR2c3Ryd3QudTMyXHQlcTIsIFslcTAsICUxXSEiLG9wcyk7CiAgICByZXR1 cm4gIiI7CiB9Ci0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCisgWyhzZXQgKGF0dHIgIm12 ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnN0cndxX3Nj YXR0ZXJfYmFzZV93Yl9mdjRzZiIpKQorICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCiAKIDs7 CiA7OyBbdnN0cmRxX3NjYXR0ZXJfYmFzZV93Yl9zIHZzdHJkcV9zY2F0dGVyX2Jhc2Vfd2JfdV0K QEAgLTk0NDYsNyArOTk2Myw4IEBACiAgICBvdXRwdXRfYXNtX2luc24gKCJ2c3RyZC51NjRcdCVx MiwgWyVxMCwgJTFdISIsb3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVu Z3RoIiAiNCIpXSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJv bF9yZWYgIkNPREVfRk9SX212ZV92c3RyZHFfc2NhdHRlcl9iYXNlX3diXzxzdXBmPnYyZGkiKSkK KyAgKHNldF9hdHRyICJsZW5ndGgiICI0IildKQogCiA7OwogOzsgW3ZzdHJkcV9zY2F0dGVyX2Jh c2Vfd2JfcF9zIHZzdHJkcV9zY2F0dGVyX2Jhc2Vfd2JfcF91XQpAQCAtOTQ3Miw3ICs5OTkwLDgg QEAKICAgIG91dHB1dF9hc21faW5zbiAoInZwc3Q7dnN0cmR0LnU2NFx0JXEyLCBbJXEwLCAlMV0h IixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQor IFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9G T1JfbXZlX3ZzdHJkcV9zY2F0dGVyX2Jhc2Vfd2JfPHN1cGY+djJkaSIpKQorICAoc2V0X2F0dHIg Imxlbmd0aCIgIjgiKV0pCiAKIChkZWZpbmVfZXhwYW5kICJtdmVfdmxkcndxX2dhdGhlcl9iYXNl X3diXzxzdXBmPnY0c2kiCiAgIFsobWF0Y2hfb3BlcmFuZDpWNFNJIDAgInNfcmVnaXN0ZXJfb3Bl cmFuZCIpCkBAIC05NTI0LDcgKzEwMDQzLDggQEAKICAgIG91dHB1dF9hc21faW5zbiAoInZsZHJ3 LnUzMlx0JXEwLCBbJXExLCAlMl0hIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9h dHRyICJsZW5ndGgiICI0IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJ3cV9nYXRoZXJfYmFzZV93Yl88c3VwZj52 NHNpX2luc24iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI0IildKQogCiAoZGVmaW5lX2V4cGFu ZCAibXZlX3ZsZHJ3cV9nYXRoZXJfYmFzZV93Yl96XzxzdXBmPnY0c2kiCiAgIFsobWF0Y2hfb3Bl cmFuZDpWNFNJIDAgInNfcmVnaXN0ZXJfb3BlcmFuZCIpCkBAIC05NTgwLDcgKzEwMTAwLDggQEAK ICAgIG91dHB1dF9hc21faW5zbiAoInZwc3RcO3ZsZHJ3dC51MzJcdCVxMCwgWyVxMSwgJTJdISIs b3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBb KHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9S X212ZV92bGRyd3FfZ2F0aGVyX2Jhc2Vfd2JfPHN1cGY+djRzaV9pbnNuIikpCisgIChzZXRfYXR0 ciAibGVuZ3RoIiAiOCIpXSkKIAogKGRlZmluZV9leHBhbmQgIm12ZV92bGRyd3FfZ2F0aGVyX2Jh c2Vfd2JfZnY0c2YiCiAgIFsobWF0Y2hfb3BlcmFuZDpWNFNJIDAgInNfcmVnaXN0ZXJfb3BlcmFu ZCIpCkBAIC05NjMyLDcgKzEwMTUzLDggQEAKICAgIG91dHB1dF9hc21faW5zbiAoInZsZHJ3LnUz Mlx0JXEwLCBbJXExLCAlMl0hIixvcHMpOwogICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRy ICJsZW5ndGgiICI0IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAo c3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJ3cV9nYXRoZXJfYmFzZV93Yl9mdjRzZl9pbnNu IikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiNCIpXSkKIAogKGRlZmluZV9leHBhbmQgIm12ZV92 bGRyd3FfZ2F0aGVyX2Jhc2Vfd2Jfel9mdjRzZiIKICAgWyhtYXRjaF9vcGVyYW5kOlY0U0kgMCAi c19yZWdpc3Rlcl9vcGVyYW5kIikKQEAgLTk2ODksNyArMTAyMTEsOCBAQAogICAgb3V0cHV0X2Fz bV9pbnNuICgidnBzdFw7dmxkcnd0LnUzMlx0JXEwLCBbJXExLCAlMl0hIixvcHMpOwogICAgcmV0 dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJt dmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJ3cV9n YXRoZXJfYmFzZV93Yl9mdjRzZl9pbnNuIikpCisgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkK IAogKGRlZmluZV9leHBhbmQgIm12ZV92bGRyZHFfZ2F0aGVyX2Jhc2Vfd2JfPHN1cGY+djJkaSIK ICAgWyhtYXRjaF9vcGVyYW5kOlYyREkgMCAic19yZWdpc3Rlcl9vcGVyYW5kIikKQEAgLTk3NDIs NyArMTAyNjUsOCBAQAogICAgb3V0cHV0X2FzbV9pbnNuICgidmxkcmQuNjRcdCVxMCwgWyVxMSwg JTJdISIsb3BzKTsKICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiNCIp XSkKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNP REVfRk9SX212ZV92bGRyZHFfZ2F0aGVyX2Jhc2Vfd2JfPHN1cGY+djJkaV9pbnNuIikpCisgIChz ZXRfYXR0ciAibGVuZ3RoIiAiNCIpXSkKIAogKGRlZmluZV9leHBhbmQgIm12ZV92bGRyZHFfZ2F0 aGVyX2Jhc2Vfd2Jfel88c3VwZj52MmRpIgogICBbKG1hdGNoX29wZXJhbmQ6VjJESSAwICJzX3Jl Z2lzdGVyX29wZXJhbmQiKQpAQCAtOTc4MSw3ICsxMDMwNSw3IEBACiAgICAodW5zcGVjOlNJIFso cmVnOlNJIFZGUENDX1JFR05VTSldIFVOU1BFQ19HRVRfRlBTQ1JfTlpDVlFDKSldCiAgIlRBUkdF VF9IQVZFX01WRSIKICAidm1yc1xcdCUwLCBGUFNDUl9uemN2cWMiCi0gIFsoc2V0X2F0dHIgInR5 cGUiICJtdmVfbW92ZSIpXSkKKyBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKV0pCiAKIChk ZWZpbmVfaW5zbiAic2V0X2Zwc2NyX256Y3ZxYyIKICBbKHNldCAocmVnOlNJIFZGUENDX1JFR05V TSkKQEAgLTk3ODksNyArMTAzMTMsNyBAQAogICAgIFZVTlNQRUNfU0VUX0ZQU0NSX05aQ1ZRQykp XQogICJUQVJHRVRfSEFWRV9NVkUiCiAgInZtc3JcXHRGUFNDUl9uemN2cWMsICUwIgotICBbKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKV0pCisgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3Zl IildKQogCiA7OwogOzsgW3ZsZHJkcV9nYXRoZXJfYmFzZV93Yl96X3MgdmxkcmRxX2dhdGhlcl9i YXNlX3diX3pfdV0KQEAgLTk4MTQsNyArMTAzMzgsOCBAQAogICAgb3V0cHV0X2FzbV9pbnNuICgi dnBzdFw7dmxkcmR0LnU2NFx0JXEwLCBbJXExLCAlMl0hIixvcHMpOwogICAgcmV0dXJuICIiOwog fQotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVk aWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZsZHJkcV9nYXRoZXJfYmFz ZV93Yl88c3VwZj52MmRpX2luc24iKSkKKyAgKHNldF9hdHRyICJsZW5ndGgiICI4IildKQogOzsK IDs7IFt2YWRjaXFfbV9zLCB2YWRjaXFfbV91XSkKIDs7CkBAIC05ODMxLDcgKzEwMzU2LDggQEAK ICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidnBzdFw7dmFkY2l0LmkzMlx0JXEwLCAlcTIs ICVxMyIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92YWRjaXFfPHN1 cGY+djRzaSIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIg Imxlbmd0aCIgIjgiKV0pCiAKIDs7CkBAIC05ODQ4LDcgKzEwMzc0LDggQEAKICAgXQogICAiVEFS R0VUX0hBVkVfTVZFIgogICAidmFkY2kuaTMyXHQlcTAsICVxMSwgJXEyIgotICBbKHNldF9hdHRy ICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZhZGNpcV88c3VwZj52NHNpIikpCisgIChzZXRf YXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiAiNCIpXSkKIAog OzsKQEAgLTk4NjcsNyArMTAzOTQsOCBAQAogICBdCiAgICJUQVJHRVRfSEFWRV9NVkUiCiAgICJ2 cHN0XDt2YWRjdC5pMzJcdCVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVf bW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVm ICJDT0RFX0ZPUl9tdmVfdmFkY3FfPHN1cGY+djRzaSIpKQorICAoc2V0X2F0dHIgInR5cGUiICJt dmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0pCiAKIDs7CkBAIC05ODg0LDcg KzEwNDEyLDggQEAKICAgXQogICAiVEFSR0VUX0hBVkVfTVZFIgogICAidmFkYy5pMzJcdCVxMCwg JXExLCAlcTIiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIg Im12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdmFkY3Ff PHN1cGY+djRzaSIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0 dHIgImxlbmd0aCIgIjQiKQogICAgKHNldF9hdHRyICJjb25kcyIgInNldCIpXSkKIApAQCAtOTkw NCw3ICsxMDQzMyw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZwc3RcO3ZzYmNp dC5pMzJcdCVxMCwgJXEyLCAlcTMiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisg WyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZP Ul9tdmVfdnNiY2lxXzxzdXBmPnY0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQogICAgKHNldF9hdHRyICJsZW5ndGgiICI4IildKQogCiA7OwpAQCAtOTkyMSw3ICsxMDQ1MSw4 IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAgInZzYmNpLmkzMlx0JXEwLCAlcTEsICVx MiIKLSAgWyhzZXRfYXR0ciAidHlwZSIgIm12ZV9tb3ZlIikKKyBbKHNldCAoYXR0ciAibXZlX3Vu cHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX212ZV92c2JjaXFfPHN1cGY+ djRzaSIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgICAoc2V0X2F0dHIgImxl bmd0aCIgIjQiKV0pCiAKIDs7CkBAIC05OTQwLDcgKzEwNDcxLDggQEAKICAgXQogICAiVEFSR0VU X0hBVkVfTVZFIgogICAidnBzdFw7dnNiY3QuaTMyXHQlcTAsICVxMiwgJXEzIgotICBbKHNldF9h dHRyICJ0eXBlIiAibXZlX21vdmUiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2lu c24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfbXZlX3ZzYmNxXzxzdXBmPnY0c2kiKSkKKyAgKHNl dF9hdHRyICJ0eXBlIiAibXZlX21vdmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiICI4IildKQog CiA7OwpAQCAtOTk1Nyw3ICsxMDQ4OSw4IEBACiAgIF0KICAgIlRBUkdFVF9IQVZFX01WRSIKICAg InZzYmMuaTMyXHQlcTAsICVxMSwgJXEyIgotICBbKHNldF9hdHRyICJ0eXBlIiAibXZlX21vdmUi KQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09E RV9GT1JfbXZlX3ZzYmNxXzxzdXBmPnY0c2kiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAibXZlX21v dmUiKQogICAgKHNldF9hdHRyICJsZW5ndGgiICI0IildKQogCiA7OwpAQCAtOTk4Niw3ICsxMDUx OSw3IEBACiAJCSAgICAidnN0MjEuPFZfc3pfZWxlbT5cdHslcTAsICVxMX0sICUzIiwgb3BzKTsK ICAgIHJldHVybiAiIjsKIH0KLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKKyBbKHNldF9h dHRyICJsZW5ndGgiICI4IildKQogCiA7OwogOzsgW3ZsZDJxXSkKQEAgLTEwMDE0LDcgKzEwNTQ3 LDcgQEAKIAkJICAgICJ2bGQyMS48Vl9zel9lbGVtPlx0eyVxMCwgJXExfSwgJTMiLCBvcHMpOwog ICAgcmV0dXJuICIiOwogfQotICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorIFsoc2V0X2F0 dHIgImxlbmd0aCIgIjgiKV0pCiAKIDs7CiA7OyBbdmxkNHFdKQpAQCAtMTAzNTcsNyArMTA4OTAs OCBAQAogIF0KICAiVEFSR0VUX0hBVkVfTVZFIgogICJ2cHN0XDt2c2hsY3RcdCVxMCwgJTEsICU0 IgotIFsoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCisgWyhzZXQgKGF0dHIgIm12ZV91bnBy ZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RFX0ZPUl9tdmVfdnNobGNxXzxzdXBmPjxt b2RlPiIpKQorICAoc2V0X2F0dHIgInR5cGUiICJtdmVfbW92ZSIpCiAgIChzZXRfYXR0ciAibGVu Z3RoIiAiOCIpXSkKIAogOzsgQ0RFIGluc3RydWN0aW9ucyBvbiBNVkUgcmVnaXN0ZXJzLgpAQCAt MTAzNjksNyArMTA5MDMsOCBAQAogCSBVTlNQRUNfVkNERSkpXQogICAiVEFSR0VUX0NERSAmJiBU QVJHRVRfSEFWRV9NVkUiCiAgICJ2Y3gxXFx0cCVjMSwgJXEwLCAjJWMyIgotICBbKHNldF9hdHRy ICJ0eXBlIiAiY29wcm9jIildCisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIp IChzeW1ib2xfcmVmICJDT0RFX0ZPUl9hcm1fdmN4MXF2MTZxaSIpKQorICAoc2V0X2F0dHIgInR5 cGUiICJjb3Byb2MiKV0KICkKIAogKGRlZmluZV9pbnNuICJhcm1fdmN4MXFhdjE2cWkiCkBAIC0x MDM4MCw3ICsxMDkxNSw4IEBACiAJIFVOU1BFQ19WQ0RFQSkpXQogICAiVEFSR0VUX0NERSAmJiBU QVJHRVRfSEFWRV9NVkUiCiAgICJ2Y3gxYVxcdHAlYzEsICVxMCwgIyVjMyIKLSAgWyhzZXRfYXR0 ciAidHlwZSIgImNvcHJvYyIpXQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24i KSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfYXJtX3ZjeDFxYXYxNnFpIikpCisgIChzZXRfYXR0ciAi dHlwZSIgImNvcHJvYyIpXQogKQogCiAoZGVmaW5lX2luc24gImFybV92Y3gycXYxNnFpIgpAQCAt MTAzOTEsNyArMTA5MjcsOCBAQAogCSBVTlNQRUNfVkNERSkpXQogICAiVEFSR0VUX0NERSAmJiBU QVJHRVRfSEFWRV9NVkUiCiAgICJ2Y3gyXFx0cCVjMSwgJXEwLCAlcTIsICMlYzMiCi0gIFsoc2V0 X2F0dHIgInR5cGUiICJjb3Byb2MiKV0KKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX2FybV92Y3gycXYxNnFpIikpCisgIChzZXRfYXR0 ciAidHlwZSIgImNvcHJvYyIpXQogKQogCiAoZGVmaW5lX2luc24gImFybV92Y3gycWF2MTZxaSIK QEAgLTEwNDAzLDcgKzEwOTQwLDggQEAKIAkgVU5TUEVDX1ZDREVBKSldCiAgICJUQVJHRVRfQ0RF ICYmIFRBUkdFVF9IQVZFX01WRSIKICAgInZjeDJhXFx0cCVjMSwgJXEwLCAlcTMsICMlYzQiCi0g IFsoc2V0X2F0dHIgInR5cGUiICJjb3Byb2MiKV0KKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGlj YXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX2FybV92Y3gycWF2MTZxaSIpKQorICAo c2V0X2F0dHIgInR5cGUiICJjb3Byb2MiKV0KICkKIAogKGRlZmluZV9pbnNuICJhcm1fdmN4M3F2 MTZxaSIKQEAgLTEwNDE1LDcgKzEwOTUzLDggQEAKIAkgVU5TUEVDX1ZDREUpKV0KICAgIlRBUkdF VF9DREUgJiYgVEFSR0VUX0hBVkVfTVZFIgogICAidmN4M1xcdHAlYzEsICVxMCwgJXEyLCAlcTMs ICMlYzQiCi0gIFsoc2V0X2F0dHIgInR5cGUiICJjb3Byb2MiKV0KKyBbKHNldCAoYXR0ciAibXZl X3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX2FybV92Y3gzcXYxNnFp IikpCisgIChzZXRfYXR0ciAidHlwZSIgImNvcHJvYyIpXQogKQogCiAoZGVmaW5lX2luc24gImFy bV92Y3gzcWF2MTZxaSIKQEAgLTEwNDI4LDcgKzEwOTY3LDggQEAKIAkgVU5TUEVDX1ZDREVBKSld CiAgICJUQVJHRVRfQ0RFICYmIFRBUkdFVF9IQVZFX01WRSIKICAgInZjeDNhXFx0cCVjMSwgJXEw LCAlcTMsICVxNCwgIyVjNSIKLSAgWyhzZXRfYXR0ciAidHlwZSIgImNvcHJvYyIpXQorIFsoc2V0 IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9sX3JlZiAiQ09ERV9GT1JfYXJt X3ZjeDNxYXYxNnFpIikpCisgIChzZXRfYXR0ciAidHlwZSIgImNvcHJvYyIpXQogKQogCiAoZGVm aW5lX2luc24gImFybV92Y3gxcTxhPl9wX3YxNnFpIgpAQCAtMTA0NDAsNyArMTA5ODAsOCBAQAog CSBDREVfVkNYKSldCiAgICJUQVJHRVRfQ0RFICYmIFRBUkdFVF9IQVZFX01WRSIKICAgInZwc3Rc O3ZjeDE8YT50XFx0cCVjMSwgJXEwLCAjJWMzIgotICBbKHNldF9hdHRyICJ0eXBlIiAiY29wcm9j IikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9pbnNuIikgKHN5bWJvbF9yZWYgIkNP REVfRk9SX2FybV92Y3gxcTxhPnYxNnFpIikpCisgIChzZXRfYXR0ciAidHlwZSIgImNvcHJvYyIp CiAgICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0KICkKIApAQCAtMTA0NTQsNyArMTA5OTUsOCBA QAogCSBDREVfVkNYKSldCiAgICJUQVJHRVRfQ0RFICYmIFRBUkdFVF9IQVZFX01WRSIKICAgInZw c3RcO3ZjeDI8YT50XFx0cCVjMSwgJXEwLCAlcTMsICMlYzQiCi0gIFsoc2V0X2F0dHIgInR5cGUi ICJjb3Byb2MiKQorIFsoc2V0IChhdHRyICJtdmVfdW5wcmVkaWNhdGVkX2luc24iKSAoc3ltYm9s X3JlZiAiQ09ERV9GT1JfYXJtX3ZjeDJxPGE+djE2cWkiKSkKKyAgKHNldF9hdHRyICJ0eXBlIiAi Y29wcm9jIikKICAgIChzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXQogKQogCkBAIC0xMDQ2OSw3ICsx MTAxMSw4IEBACiAJIENERV9WQ1gpKV0KICAgIlRBUkdFVF9DREUgJiYgVEFSR0VUX0hBVkVfTVZF IgogICAidnBzdFw7dmN4MzxhPnRcXHRwJWMxLCAlcTAsICVxMywgJXE0LCAjJWM1IgotICBbKHNl dF9hdHRyICJ0eXBlIiAiY29wcm9jIikKKyBbKHNldCAoYXR0ciAibXZlX3VucHJlZGljYXRlZF9p bnNuIikgKHN5bWJvbF9yZWYgIkNPREVfRk9SX2FybV92Y3gzcTxhPnYxNnFpIikpCisgIChzZXRf YXR0ciAidHlwZSIgImNvcHJvYyIpCiAgICAoc2V0X2F0dHIgImxlbmd0aCIgIjgiKV0KICkKIApk aWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9hcm0vdmVjLWNvbW1vbi5tZCBiL2djYy9jb25maWcvYXJt L3ZlYy1jb21tb24ubWQKaW5kZXggZjA2ZGY0ZGI2MzY1NGRiOTRkMzBlYWM2MzdlOWNjNjQ2NGVj MTk0MS4uMGFhNmIxNjM0OGJhYTRkOTYzMmIzNTRjZDM2MjY4YmEzZTI0ZTlkYyAxMDA2NDQKLS0t IGEvZ2NjL2NvbmZpZy9hcm0vdmVjLWNvbW1vbi5tZAorKysgYi9nY2MvY29uZmlnL2FybS92ZWMt Y29tbW9uLm1kCkBAIC0zNjYsNyArMzY2LDggQEAKICAgIkAKICAgIHZzaGwuPHN1cGY+JSM8Vl9z el9lbGVtPlx0JTxWX3JlZz4wLCAlPFZfcmVnPjEsICU8Vl9yZWc+MgogICAgKiByZXR1cm4gbmVv bl9vdXRwdXRfc2hpZnRfaW1tZWRpYXRlIChcInZzaGxcIiwgJ2knLCAmb3BlcmFuZHNbMl0sIDxN T0RFPm1vZGUsIFZBTElEX05FT05fUVJFR19NT0RFICg8TU9ERT5tb2RlKSwgdHJ1ZSk7IgotICBb KHNldF9hdHRyICJ0eXBlIiAibmVvbl9zaGlmdF9yZWc8cT4sIG5lb25fc2hpZnRfaW1tPHE+Iild CisgWyhzZXQgKGF0dHIgIm12ZV91bnByZWRpY2F0ZWRfaW5zbiIpIChzeW1ib2xfcmVmICJDT0RF X0ZPUl9tdmVfdnNobHFfPHN1cGY+PG1vZGU+IikpCisgIChzZXRfYXR0ciAidHlwZSIgIm5lb25f c2hpZnRfcmVnPHE+LCBuZW9uX3NoaWZ0X2ltbTxxPiIpXQogKQogCiAoZGVmaW5lX2V4cGFuZCAi dmFzaGw8bW9kZT4zIgpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2FybS9k bHN0cC1jb21waWxlLWFzbS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2FybS9kbHN0cC1j b21waWxlLWFzbS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFjZjA4MzYwNTBjMTliOTgzZmVlYWY5N2MzZTUyZTEz MThiYjE5NGQKLS0tIC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvYXJt L2Rsc3RwLWNvbXBpbGUtYXNtLmMKQEAgLTAsMCArMSwxNDkgQEAKKy8qIHsgZGctZG8gY29tcGls ZSB7IHRhcmdldCB7IGFybSotKi0qIH0gfSB9ICovCisvKiB7IGRnLXJlcXVpcmUtZWZmZWN0aXZl LXRhcmdldCBhcm1fdjhfMW1fbXZlX29rIH0gKi8KKy8qIHsgZGctc2tpcC1pZiAiYXZvaWQgY29u ZmxpY3RpbmcgbXVsdGlsaWIgb3B0aW9ucyIgeyAqLSotKiB9IHsgIi1tYXJtIiAiLW1jcHU9KiIg fSB9ICovCisvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1hcm12OC4xLW0ubWFpbitmcC5kcCttdmUu ZnAgLW1mbG9hdC1hYmk9aGFyZCAtbWZwdT1hdXRvIC1PMyIgfSAqLworCisjaW5jbHVkZSA8YXJt X212ZS5oPgorCisjZGVmaW5lIElNTSA1CisKKyNkZWZpbmUgVEVTVF9DT01QSUxFX0lOX0RMU1RQ X1RFUk5BUlkoQklUUywgTEFORVMsIExEUlNUUllUUEUsIFRZUEUsIFNJR04sIE5BTUUsIFBSRUQp CQkJCVwKK3ZvaWQgdGVzdF8jI05BTUUjI1BSRUQjI18jI1NJR04jI0JJVFMgKFRZUEUjI0JJVFMj I190ICphLCBUWVBFIyNCSVRTIyNfdCAqYiwgIFRZUEUjI0JJVFMjI190ICpjLCBpbnQgbikJXAor ewkJCQkJCQkJCQkJXAorICB3aGlsZSAobiA+IDApCQkJCQkJCQkJCVwKKyAgICB7CQkJCQkJCQkJ CQlcCisgICAgICBtdmVfcHJlZDE2X3QgcCA9IHZjdHAjI0JJVFMjI3EgKG4pOwkJCQkJCVwKKyAg ICAgIFRZUEUjI0JJVFMjI3gjI0xBTkVTIyNfdCB2YSA9IHZsZHIjI0xEUlNUUllUUEUjI3Ffel8j I1NJR04jI0JJVFMgKGEsIHApOwkJXAorICAgICAgVFlQRSMjQklUUyMjeCMjTEFORVMjI190IHZi ID0gdmxkciMjTERSU1RSWVRQRSMjcV96XyMjU0lHTiMjQklUUyAoYiwgcCk7CQlcCisgICAgICBU WVBFIyNCSVRTIyN4IyNMQU5FUyMjX3QgdmMgPSBOQU1FIyNQUkVEIyNfIyNTSUdOIyNCSVRTICh2 YSwgdmIsIHApOwkJXAorICAgICAgdnN0ciMjTERSU1RSWVRQRSMjcV9wXyMjU0lHTiMjQklUUyAo YywgdmMsIHApOwkJCQkJXAorICAgICAgYyArPSBMQU5FUzsJCQkJCQkJCQlcCisgICAgICBhICs9 IExBTkVTOwkJCQkJCQkJCVwKKyAgICAgIGIgKz0gTEFORVM7CQkJCQkJCQkJXAorICAgICAgbiAt PSBMQU5FUzsJCQkJCQkJCQlcCisgICAgfQkJCQkJCQkJCQkJXAorfQorCisjZGVmaW5lIFRFU1Rf Q09NUElMRV9JTl9ETFNUUF9TSUdORURfVU5TSUdORURfVEVSTkFSWShCSVRTLCBMQU5FUywgTERS U1RSWVRQRSwgTkFNRSwgUFJFRCkJXAorVEVTVF9DT01QSUxFX0lOX0RMU1RQX1RFUk5BUlkgKEJJ VFMsIExBTkVTLCBMRFJTVFJZVFBFLCBpbnQsIHMsIE5BTUUsIFBSRUQpCQkJXAorVEVTVF9DT01Q SUxFX0lOX0RMU1RQX1RFUk5BUlkgKEJJVFMsIExBTkVTLCBMRFJTVFJZVFBFLCB1aW50LCB1LCBO QU1FLCBQUkVEKQorCisjZGVmaW5lIFRFU1RfQ09NUElMRV9JTl9ETFNUUF9JTlRCSVRTX1NJR05F RF9VTlNJR05FRF9URVJOQVJZKE5BTUUsIFBSRUQpCQkJXAorVEVTVF9DT01QSUxFX0lOX0RMU1RQ X1NJR05FRF9VTlNJR05FRF9URVJOQVJZICg4LCAxNiwgYiwgTkFNRSwgUFJFRCkJCQkJXAorVEVT VF9DT01QSUxFX0lOX0RMU1RQX1NJR05FRF9VTlNJR05FRF9URVJOQVJZICgxNiwgOCwgaCwgTkFN RSwgUFJFRCkJCQkJXAorVEVTVF9DT01QSUxFX0lOX0RMU1RQX1NJR05FRF9VTlNJR05FRF9URVJO QVJZICgzMiwgNCwgdywgTkFNRSwgUFJFRCkKKworCitURVNUX0NPTVBJTEVfSU5fRExTVFBfSU5U QklUU19TSUdORURfVU5TSUdORURfVEVSTkFSWSAodmFkZHEsIF94KQorVEVTVF9DT01QSUxFX0lO X0RMU1RQX0lOVEJJVFNfU0lHTkVEX1VOU0lHTkVEX1RFUk5BUlkgKHZtdWxxLCBfeCkKK1RFU1Rf Q09NUElMRV9JTl9ETFNUUF9JTlRCSVRTX1NJR05FRF9VTlNJR05FRF9URVJOQVJZICh2c3VicSwg X3gpCitURVNUX0NPTVBJTEVfSU5fRExTVFBfSU5UQklUU19TSUdORURfVU5TSUdORURfVEVSTkFS WSAodmhhZGRxLCBfeCkKK1RFU1RfQ09NUElMRV9JTl9ETFNUUF9JTlRCSVRTX1NJR05FRF9VTlNJ R05FRF9URVJOQVJZICh2b3JycSwgX3gpCisKKworI2RlZmluZSBURVNUX0NPTVBJTEVfSU5fRExT VFBfVEVSTkFSWV9NKEJJVFMsIExBTkVTLCBMRFJTVFJZVFBFLCBUWVBFLCBTSUdOLCBOQU1FLCBQ UkVEKQkJCQlcCit2b2lkIHRlc3RfIyNOQU1FIyNQUkVEIyNfIyNTSUdOIyNCSVRTIChUWVBFIyNC SVRTIyN4IyNMQU5FUyMjX3QgX19pbmFjdGl2ZSwgVFlQRSMjQklUUyMjX3QgKmEsIFRZUEUjI0JJ VFMjI190ICpiLCAgVFlQRSMjQklUUyMjX3QgKmMsIGludCBuKQlcCit7CQkJCQkJCQkJCQlcCisg IHdoaWxlIChuID4gMCkJCQkJCQkJCQkJXAorICAgIHsJCQkJCQkJCQkJCVwKKyAgICAgIG12ZV9w cmVkMTZfdCBwID0gdmN0cCMjQklUUyMjcSAobik7CQkJCQkJXAorICAgICAgVFlQRSMjQklUUyMj eCMjTEFORVMjI190IHZhID0gdmxkciMjTERSU1RSWVRQRSMjcV96XyMjU0lHTiMjQklUUyAoYSwg cCk7CQlcCisgICAgICBUWVBFIyNCSVRTIyN4IyNMQU5FUyMjX3QgdmIgPSB2bGRyIyNMRFJTVFJZ VFBFIyNxX3pfIyNTSUdOIyNCSVRTIChiLCBwKTsJCVwKKyAgICAgIFRZUEUjI0JJVFMjI3gjI0xB TkVTIyNfdCB2YyA9IE5BTUUjI1BSRUQjI18jI1NJR04jI0JJVFMgKF9faW5hY3RpdmUsIHZhLCB2 YiwgcCk7CQlcCisgICAgICB2c3RyIyNMRFJTVFJZVFBFIyNxX3BfIyNTSUdOIyNCSVRTIChjLCB2 YywgcCk7CQkJCQlcCisgICAgICBjICs9IExBTkVTOwkJCQkJCQkJCVwKKyAgICAgIGEgKz0gTEFO RVM7CQkJCQkJCQkJXAorICAgICAgYiArPSBMQU5FUzsJCQkJCQkJCQlcCisgICAgICBuIC09IExB TkVTOwkJCQkJCQkJCVwKKyAgICB9CQkJCQkJCQkJCQlcCit9CisKKyNkZWZpbmUgVEVTVF9DT01Q SUxFX0lOX0RMU1RQX1NJR05FRF9VTlNJR05FRF9URVJOQVJZX00oQklUUywgTEFORVMsIExEUlNU UllUUEUsIE5BTUUsIFBSRUQpCVwKK1RFU1RfQ09NUElMRV9JTl9ETFNUUF9URVJOQVJZX00gKEJJ VFMsIExBTkVTLCBMRFJTVFJZVFBFLCBpbnQsIHMsIE5BTUUsIFBSRUQpCQkJXAorVEVTVF9DT01Q SUxFX0lOX0RMU1RQX1RFUk5BUllfTSAoQklUUywgTEFORVMsIExEUlNUUllUUEUsIHVpbnQsIHUs IE5BTUUsIFBSRUQpCisKKyNkZWZpbmUgVEVTVF9DT01QSUxFX0lOX0RMU1RQX0lOVEJJVFNfU0lH TkVEX1VOU0lHTkVEX1RFUk5BUllfTShOQU1FLCBQUkVEKQkJCVwKK1RFU1RfQ09NUElMRV9JTl9E TFNUUF9TSUdORURfVU5TSUdORURfVEVSTkFSWV9NICg4LCAxNiwgYiwgTkFNRSwgUFJFRCkJCQkJ XAorVEVTVF9DT01QSUxFX0lOX0RMU1RQX1NJR05FRF9VTlNJR05FRF9URVJOQVJZX00gKDE2LCA4 LCBoLCBOQU1FLCBQUkVEKQkJCQlcCitURVNUX0NPTVBJTEVfSU5fRExTVFBfU0lHTkVEX1VOU0lH TkVEX1RFUk5BUllfTSAoMzIsIDQsIHcsIE5BTUUsIFBSRUQpCisKKworVEVTVF9DT01QSUxFX0lO X0RMU1RQX0lOVEJJVFNfU0lHTkVEX1VOU0lHTkVEX1RFUk5BUllfTSAodmFkZHEsIF9tKQorVEVT VF9DT01QSUxFX0lOX0RMU1RQX0lOVEJJVFNfU0lHTkVEX1VOU0lHTkVEX1RFUk5BUllfTSAodm11 bHEsIF9tKQorVEVTVF9DT01QSUxFX0lOX0RMU1RQX0lOVEJJVFNfU0lHTkVEX1VOU0lHTkVEX1RF Uk5BUllfTSAodnN1YnEsIF9tKQorVEVTVF9DT01QSUxFX0lOX0RMU1RQX0lOVEJJVFNfU0lHTkVE X1VOU0lHTkVEX1RFUk5BUllfTSAodmhhZGRxLCBfbSkKK1RFU1RfQ09NUElMRV9JTl9ETFNUUF9J TlRCSVRTX1NJR05FRF9VTlNJR05FRF9URVJOQVJZX00gKHZvcnJxLCBfbSkKKworI2RlZmluZSBU RVNUX0NPTVBJTEVfSU5fRExTVFBfVEVSTkFSWV9OKEJJVFMsIExBTkVTLCBMRFJTVFJZVFBFLCBU WVBFLCBTSUdOLCBOQU1FLCBQUkVEKQlcCit2b2lkIHRlc3RfIyNOQU1FIyNQUkVEIyNfbl8jI1NJ R04jI0JJVFMgKFRZUEUjI0JJVFMjI190ICphLCAgVFlQRSMjQklUUyMjX3QgKmMsIGludCBuKQlc Cit7CQkJCQkJCQkJCQlcCisgIHdoaWxlIChuID4gMCkJCQkJCQkJCQkJXAorICAgIHsJCQkJCQkJ CQkJCVwKKyAgICAgIG12ZV9wcmVkMTZfdCBwID0gdmN0cCMjQklUUyMjcSAobik7CQkJCQkJXAor ICAgICAgVFlQRSMjQklUUyMjeCMjTEFORVMjI190IHZhID0gdmxkciMjTERSU1RSWVRQRSMjcV96 XyMjU0lHTiMjQklUUyAoYSwgcCk7CQlcCisgICAgICBUWVBFIyNCSVRTIyN4IyNMQU5FUyMjX3Qg dmMgPSBOQU1FIyNQUkVEIyNfbl8jI1NJR04jI0JJVFMgKHZhLCBJTU0sIHApOwkJXAorICAgICAg dnN0ciMjTERSU1RSWVRQRSMjcV9wXyMjU0lHTiMjQklUUyAoYywgdmMsIHApOwkJCQkJXAorICAg ICAgYyArPSBMQU5FUzsJCQkJCQkJCQlcCisgICAgICBhICs9IExBTkVTOwkJCQkJCQkJCVwKKyAg ICAgIG4gLT0gTEFORVM7CQkJCQkJCQkJXAorICAgIH0JCQkJCQkJCQkJCVwKK30KKworI2RlZmlu ZSBURVNUX0NPTVBJTEVfSU5fRExTVFBfU0lHTkVEX1VOU0lHTkVEX1RFUk5BUllfTihCSVRTLCBM QU5FUywgTERSU1RSWVRQRSwgTkFNRSwgUFJFRCkJXAorVEVTVF9DT01QSUxFX0lOX0RMU1RQX1RF Uk5BUllfTiAoQklUUywgTEFORVMsIExEUlNUUllUUEUsIGludCwgcywgTkFNRSwgUFJFRCkJCQlc CitURVNUX0NPTVBJTEVfSU5fRExTVFBfVEVSTkFSWV9OIChCSVRTLCBMQU5FUywgTERSU1RSWVRQ RSwgdWludCwgdSwgTkFNRSwgUFJFRCkKKworI2RlZmluZSBURVNUX0NPTVBJTEVfSU5fRExTVFBf SU5UQklUU19TSUdORURfVU5TSUdORURfVEVSTkFSWV9OKE5BTUUsIFBSRUQpCQkJXAorVEVTVF9D T01QSUxFX0lOX0RMU1RQX1NJR05FRF9VTlNJR05FRF9URVJOQVJZX04gKDgsIDE2LCBiLCBOQU1F LCBQUkVEKQkJCQlcCitURVNUX0NPTVBJTEVfSU5fRExTVFBfU0lHTkVEX1VOU0lHTkVEX1RFUk5B UllfTiAoMTYsIDgsIGgsIE5BTUUsIFBSRUQpCQkJCVwKK1RFU1RfQ09NUElMRV9JTl9ETFNUUF9T SUdORURfVU5TSUdORURfVEVSTkFSWV9OICgzMiwgNCwgdywgTkFNRSwgUFJFRCkKKworVEVTVF9D T01QSUxFX0lOX0RMU1RQX0lOVEJJVFNfU0lHTkVEX1VOU0lHTkVEX1RFUk5BUllfTiAodmFkZHEs IF94KQorVEVTVF9DT01QSUxFX0lOX0RMU1RQX0lOVEJJVFNfU0lHTkVEX1VOU0lHTkVEX1RFUk5B UllfTiAodm11bHEsIF94KQorVEVTVF9DT01QSUxFX0lOX0RMU1RQX0lOVEJJVFNfU0lHTkVEX1VO U0lHTkVEX1RFUk5BUllfTiAodnN1YnEsIF94KQorVEVTVF9DT01QSUxFX0lOX0RMU1RQX0lOVEJJ VFNfU0lHTkVEX1VOU0lHTkVEX1RFUk5BUllfTiAodmhhZGRxLCBfeCkKKworVEVTVF9DT01QSUxF X0lOX0RMU1RQX0lOVEJJVFNfU0lHTkVEX1VOU0lHTkVEX1RFUk5BUllfTiAodmJyc3JxLCBfeCkK K1RFU1RfQ09NUElMRV9JTl9ETFNUUF9JTlRCSVRTX1NJR05FRF9VTlNJR05FRF9URVJOQVJZX04g KHZzaGxxLCBfeCkKK1RFU1RfQ09NUElMRV9JTl9ETFNUUF9JTlRCSVRTX1NJR05FRF9VTlNJR05F RF9URVJOQVJZX04gKHZzaHJxLCBfeCkKKworI2RlZmluZSBURVNUX0NPTVBJTEVfSU5fRExTVFBf VEVSTkFSWV9NX04oQklUUywgTEFORVMsIExEUlNUUllUUEUsIFRZUEUsIFNJR04sIE5BTUUsIFBS RUQpCVwKK3ZvaWQgdGVzdF8jI05BTUUjI1BSRUQjI19uXyMjU0lHTiMjQklUUyAoVFlQRSMjQklU UyMjeCMjTEFORVMjI190IF9faW5hY3RpdmUsIFRZUEUjI0JJVFMjI190ICphLCAgVFlQRSMjQklU UyMjX3QgKmMsIGludCBuKQlcCit7CQkJCQkJCQkJCQlcCisgIHdoaWxlIChuID4gMCkJCQkJCQkJ CQkJXAorICAgIHsJCQkJCQkJCQkJCVwKKyAgICAgIG12ZV9wcmVkMTZfdCBwID0gdmN0cCMjQklU UyMjcSAobik7CQkJCQkJXAorICAgICAgVFlQRSMjQklUUyMjeCMjTEFORVMjI190IHZhID0gdmxk ciMjTERSU1RSWVRQRSMjcV96XyMjU0lHTiMjQklUUyAoYSwgcCk7CQlcCisgICAgICBUWVBFIyNC SVRTIyN4IyNMQU5FUyMjX3QgdmMgPSBOQU1FIyNQUkVEIyNfbl8jI1NJR04jI0JJVFMgKF9faW5h Y3RpdmUsIHZhLCBJTU0sIHApOwkJXAorICAgICAgdnN0ciMjTERSU1RSWVRQRSMjcV9wXyMjU0lH TiMjQklUUyAoYywgdmMsIHApOwkJCQkJXAorICAgICAgYyArPSBMQU5FUzsJCQkJCQkJCQlcCisg ICAgICBhICs9IExBTkVTOwkJCQkJCQkJCVwKKyAgICAgIG4gLT0gTEFORVM7CQkJCQkJCQkJXAor ICAgIH0JCQkJCQkJCQkJCVwKK30KKworI2RlZmluZSBURVNUX0NPTVBJTEVfSU5fRExTVFBfU0lH TkVEX1VOU0lHTkVEX1RFUk5BUllfTV9OKEJJVFMsIExBTkVTLCBMRFJTVFJZVFBFLCBOQU1FLCBQ UkVEKQlcCitURVNUX0NPTVBJTEVfSU5fRExTVFBfVEVSTkFSWV9NX04gKEJJVFMsIExBTkVTLCBM RFJTVFJZVFBFLCBpbnQsIHMsIE5BTUUsIFBSRUQpCQkJXAorVEVTVF9DT01QSUxFX0lOX0RMU1RQ X1RFUk5BUllfTV9OIChCSVRTLCBMQU5FUywgTERSU1RSWVRQRSwgdWludCwgdSwgTkFNRSwgUFJF RCkKKworI2RlZmluZSBURVNUX0NPTVBJTEVfSU5fRExTVFBfSU5UQklUU19TSUdORURfVU5TSUdO RURfVEVSTkFSWV9NX04oTkFNRSwgUFJFRCkJCQlcCitURVNUX0NPTVBJTEVfSU5fRExTVFBfU0lH TkVEX1VOU0lHTkVEX1RFUk5BUllfTV9OICg4LCAxNiwgYiwgTkFNRSwgUFJFRCkJCQkJXAorVEVT VF9DT01QSUxFX0lOX0RMU1RQX1NJR05FRF9VTlNJR05FRF9URVJOQVJZX01fTiAoMTYsIDgsIGgs IE5BTUUsIFBSRUQpCQkJCVwKK1RFU1RfQ09NUElMRV9JTl9ETFNUUF9TSUdORURfVU5TSUdORURf VEVSTkFSWV9NX04gKDMyLCA0LCB3LCBOQU1FLCBQUkVEKQorCitURVNUX0NPTVBJTEVfSU5fRExT VFBfSU5UQklUU19TSUdORURfVU5TSUdORURfVEVSTkFSWV9NX04gKHZhZGRxLCBfbSkKK1RFU1Rf Q09NUElMRV9JTl9ETFNUUF9JTlRCSVRTX1NJR05FRF9VTlNJR05FRF9URVJOQVJZX01fTiAodm11 bHEsIF9tKQorVEVTVF9DT01QSUxFX0lOX0RMU1RQX0lOVEJJVFNfU0lHTkVEX1VOU0lHTkVEX1RF Uk5BUllfTV9OICh2c3VicSwgX20pCitURVNUX0NPTVBJTEVfSU5fRExTVFBfSU5UQklUU19TSUdO RURfVU5TSUdORURfVEVSTkFSWV9NX04gKHZoYWRkcSwgX20pCisKK1RFU1RfQ09NUElMRV9JTl9E TFNUUF9JTlRCSVRTX1NJR05FRF9VTlNJR05FRF9URVJOQVJZX01fTiAodmJyc3JxLCBfbSkKK1RF U1RfQ09NUElMRV9JTl9ETFNUUF9JTlRCSVRTX1NJR05FRF9VTlNJR05FRF9URVJOQVJZX01fTiAo dnNobHEsIF9tKQorVEVTVF9DT01QSUxFX0lOX0RMU1RQX0lOVEJJVFNfU0lHTkVEX1VOU0lHTkVE X1RFUk5BUllfTV9OICh2c2hycSwgX20pCisKKy8qIFRoZSBmaW5hbCBudW1iZXIgb2YgRExTVFBz IGN1cnJlbnRseSBpcyBjYWxjdWxhdGVkIGJ5IHRoZSBudW1iZXIgb2YKKyAgYFRFU1RfQ09NUElM RV9JTl9ETFNUUF9JTlRCSVRTX1NJR05FRF9VTlNJR05FRF9URVJOQVJZLipgIG1hY3JvcyAqIDYu ICAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHtcdGRsc3RwfSAxNDQg fSB9ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge1x0bGV0cH0gMTQ0 IH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLW5vdCAiXHR2Y3RwXHQiIH0g fSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLW5vdCAiXHR2cHN0XHQiIH0gfSAq LworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLW5vdCAicDAiIH0gfSAqLwo= --------------KGcC4Cr2YcJetzzpHM1ZeA3P--