From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 94B70C433DB for ; Thu, 11 Mar 2021 07:15:57 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9103F64FC0 for ; Thu, 11 Mar 2021 07:15:56 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9103F64FC0 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=wdc.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-nvme-bounces+linux-nvme=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding :Content-Type:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc:To:From: Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender :Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=iqFpSl07hY3jQU85GCZ/n4Jxio1Gys4li7gKh0LThtM=; b=FX78S7+p3HGLCH0JiZnbPdNh1K isM5r7OcjTyeyUa8PxJZ07Dz7VGNPeA8AWRmAaBtqix1x1XinmHt9DYorjioCyf/Z0gx1GhKNGQl6 5GE3EvP9Vz14lvjU2CGUYfWULsBCRwSXRTosPfAme6SViUu1LbAxysamxRE02tWXh8QX2H53fd/ZW ILOVQUFLuMo+3DnG9v7UBx24+7IHIoTxbNEY1AO63BDvSzOBgKRuo6V5KiVrEoKhOOjDIkoTk84q7 amBolVCyNQuNls1i5kkLbFAsLPCdr30jtxCgAeZuPvIm4MtHjnsRkruYU3Ll+SfQXE+g+qx1pEuJ4 nlWb+ICg==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1lKFXr-008ao1-TV; Thu, 11 Mar 2021 07:15:44 +0000 Received: from esa4.hgst.iphmx.com ([216.71.154.42]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lKFXj-008anN-Ks for linux-nvme@lists.infradead.org; Thu, 11 Mar 2021 07:15:40 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1615446935; x=1646982935; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=RCTw110MX6Stba/hGyqW7dfAbWPE3nObAngF8CFG8VY=; b=VMP+xLczK5dK6OI3PNY06gK4kNvSwhPGWk2Q6epA3SwrahgDD8b1q5m2 NPZB82WXkqUkjVsVoX/Vx+cgI24T7qfi2PC1hq4jmTLSqyr4Bg1Q9wL4r WP2XUWeRsTanUDFAXJ9iBmjdkktsApcx6riGrzzX0V54lsludd7Bz32ZT qjvzaalJGRL4RAXOz3okzMDCFcHFhUbyLgVQ/PWI0iMxFjiv5o4HNNyLK wzM0aJqgoGOkHvqtSwAdLa8jiBX70ywewCob/AjkD5baHsGQ7t/zMrDn4 3CGF2s76vEryGLoJ5szrVYT1WtaJz8cL57xEb5WrKjznkqZdG4gkhFlIe Q==; IronPort-SDR: Ahn0vkAxjHHaxWlqgL8kNREYe/MsudY5i5hXxIBabipni9kzXmpIm/ui6ufuiZoV1aJESTLAzP UPzlvv7BjSyRPK7XMl08oGEkODm4kUSafiKh3GEaRuJ4cHLaKVI14StIYO15Js5I6J1PImyVaG Iq3UeBTiUH7q+TxlOaG3xYad5vgE6xzDIPvQahhnrq8VjGLeUdSjcB4qrRN7QGFeRnXTWph40g sn18i52zsBqW/QhlSnXgds8jJX+MDivbjzamjZuP5qDJAYMzWNlK2HEPSSvjnMEtOkPADu7r5i stw= X-IronPort-AV: E=Sophos;i="5.81,239,1610380800"; d="scan'208";a="161881694" Received: from h199-255-45-15.hgst.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 11 Mar 2021 15:15:32 +0800 IronPort-SDR: 9aP4uuNKmnMu4AikydaCxDwR6PmhPFWXFszp5NnEoaRf4ytVibr7JuDOr/j6z0tJhBjQGoQZzl Udg6xKenqYH8Vxv6l1RgQF3Ve6rjt3bc9JLfc1HgHueUgHj0ODPhoUCT8YN6Q0IwNpWCfJrtFg 5hN0sp22zt71JPydsKmfavstSr0HdjwcAcLJ3ZbOaY6IYEqZ0HYBrHBcvjYyLpff2I9W1M7U/a /ev5qVZHMS9PmP4JC8phQXDdnfzEYnbUnJ6NMoKHI13FJXo+Gq9jMVmgp4eAQ1ObjLaQmCbfdI axxrToJJTgx2lS704qSBvv3P Received: from uls-op-cesaip01.wdc.com ([10.248.3.36]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Mar 2021 22:56:28 -0800 IronPort-SDR: a8c+E2d9UzaNK5ntkgDPktk3ziCn8ZtX2pKvIcdOPQFW7qgkGP+adSxrtkqdteDmvkQIXRRgMy CnW/jQOHiRWm/QpuNQYuqMgEEkmzbAyGuvWyyQzjenJTEjRTb1jrciyCb+0su5mO3A9vKW8X3P Rf8x3kgmf6d4Nxfwp6esHjKdvO9KxIb3Erq7XpGEocnXsAnIHZao1dBq1PUJ2nhljSP3sqMJ87 BWsYic+dhqoCjKoeqSwPlQIuZIUR24MrDhN+EqB9RKf35f2Ko+Mppr4B5w5yXBtwO8NwVSACuH Ng4= WDCIronportException: Internal Received: from vm.labspan.wdc.com (HELO vm.sc.wdc.com) ([10.6.137.102]) by uls-op-cesaip01.wdc.com with ESMTP; 10 Mar 2021 23:15:33 -0800 From: Chaitanya Kulkarni To: linux-nvme@lists.infradead.org Cc: hch@lst.de, kbusch@kernel.org, sagi@grimberg.me, damien.lemoal@wdc.com, Chaitanya Kulkarni Subject: [PATCH V12 0/3] nvmet: add ZBD backend support Date: Wed, 10 Mar 2021 23:15:27 -0800 Message-Id: <20210311071530.18680-1-chaitanya.kulkarni@wdc.com> X-Mailer: git-send-email 2.22.1.dirty MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210311_071536_531915_8345DA16 X-CRM114-Status: GOOD ( 33.75 ) X-BeenThere: linux-nvme@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "Linux-nvme" Errors-To: linux-nvme-bounces+linux-nvme=archiver.kernel.org@lists.infradead.org SGksCgpOVk1lT0YgSG9zdCBpcyBjYXBhYmxlIG9mIGhhbmRsaW5nIHRoZSBOVk1lIFByb3RvY29s IGJhc2VkIFpvbmVkIEJsb2NrCkRldmljZXMgKFpCRCkgaW4gdGhlIFpvbmVkIE5hbWVzcGFjZXMg KFpOUykgbW9kZSB3aXRoIHRoZSBwYXNzdGhydQpiYWNrZW5kLiBUaGVyZSBpcyBubyBzdXBwb3J0 IGZvciBhIGdlbmVyaWMgYmxvY2sgZGV2aWNlIGJhY2tlbmQgdG8KaGFuZGxlIHRoZSBaQkRzIHdo aWNoIGFyZSBub3QgTlZNZSBwcm90b2NvbCBjb21wbGlhbnQuCgpUaGlzIGFkZHMgc3VwcG9ydCB0 byBleHBvcnQgdGhlIFpCRHMgKHdoaWNoIGFyZSBub3QgTlZNZSBkcml2ZXMpIHRvIGhvc3QKZnJv bSB0aGUgdGFyZ2V0IHZpYSBOVk1lT0YgdXNpbmcgdGhlIGhvc3Qgc2lkZSBaTlMgaW50ZXJmYWNl LgoKTm90ZTogVGhpcyBwYXRjaC1zZXJpZXMgaXMgYmFzZWQgb24gbnZtZS01LjEzLgoKRm9sbG93 aW5nIHNjZW5hcmlvcyB0ZXN0ZWQgc3VjY2Vzc2Z1bGx5Oi0KCiogWm9uZWZzIFRlc3Qgd2l0aCBk bS1saW5lYXIgb24gdGhlIHRvcCBvZiBTTVIgSEREIGV4cG9ydGVkIG92ZXIgTlZNZU9GLgoqIFpv bmVmcyBUZXN0IFdpdGggQ09ORklHX0JMS19ERVZfWk9ORUQgbnZtZSBnZW5ibGsgdGFyZ2V0IGFu ZCBaQkQgd2l0aAogIG51bGxfYmxrIHpvbmVkwqB0YXJnZXQgd2l0aCB6b25lZnMuCiogV2l0aG91 dCBDT05GSUdfQkxLX0RFVl9aT05FRCBudm1lIHRlc3RzIG9uIGdlbmJsayB0YXJnZXQuCgotY2sK CkNoYW5nZXMgZnJvbSBWMTE6LQoKMS4gVXNlIGJkZXZfbG9naWNhbF9ibG9ja19zaXplKCkgaW4g bnZtZXRfYmRldl96bnNfZW5hYmxlKCkuCjIuIFJldHVybiBlcnJvciBpZiBucl96b25lcyBjYWxj dWxhdGlvbiBlbmRzIHVwIGhhdmluZyB2YWx1ZSAwLgo0LiBEcm9wIHRoZSBjb21tZW50IHBhdGNo IGZyb20gdGhpcyBzZXJpZXMgOi0KICAgbnZtZTogYWRkIGNvbW1lbnRzIHRvIG52bWVfem5zX2Fs bG9jX3JlcG9ydF9idWZmZXIKCkNoYW5nZXMgZnJvbSBWMTA6LQoKMS4gIE1vdmUgQ09ORklHX0JM S19ERVZfWk9ORUQgY2hlY2sgaW50byB0aGUgY2FsbGVyIG9mCiAgICBudm1ldF9zZXRfY3NpX3pu c19lZmZlY3RzKCkuCjIuICBNb3ZlIFpOUyByZWxhdGVkIGNzaSBjb2RlIGZyb20gY3NpIHBhdGNo IHRvIGl0cyBvd24gWk5TIGJhY2tlbmQKICAgIHBhdGNoLgozLiAgRm9yIFpOUyBjb21tYW5kIGVm ZmVjdHMgbG9ncyBzZXQgZGVmYXVsdCBjb21tYW5kIGVmZmVjdHMgd2l0aCAKICAgIG52bWV0X3Nl dF9jc2lfbnZtX2VmZmVjdHMoKSBhbG9uZyB3aXRoIG52bWV0X3NldF9jc2lfem5zX2VmZmVjdHMo KS4KNC4gIFVzZSBnb3RvIGZvciBmYWlsdXJlIGNhc2UgaW4gdGhlIG52bWV0X3NldF9jc2lfem5z X2VmZmVjdHMoKS4KNS4gIFJldHVybiBkaXJlY3RseSBmcm9tIHN3aWN0aCBpbiBudm1ldF9leGVj dXRlX2lkZW50aWZ5X2Rlc2NsaXN0X2NzaSgpLgo2LiAgTWVyZ2UgUGF0Y2ggMm5kLzNyZCBpbnRv IG9uZSBwYXRjaCBhbmQgbW92ZSBaTlMgcmVsYXRlZCBjb2RlCiAgICBpbnRvIGl0cyBvd24gOi0K ICAgICBbUEFUQ0ggVjEwIDIvOF0gbnZtZXQ6IGFkZCBOVk0gQ29tbWFuZCBTZXQgSWRlbnRpZmll ciBzdXBwb3J0CiAgICAgW1BBVENIIFYxMCAzLzhdIG52bWV0OiBhZGQgY29tbWFuZCBzZXQgc3Vw cG9ydGVkIGN0cmwgY2FwCiAgICBNZXJnZWQgaW50byBuZXcgcGF0Y2ggbWludXggWk5TIGNhbGxz IDotCiAgICAgW1BBVENIIFYxMSAxLzRdIG52bWV0OiBhZGQgTlZNIENvbW1hbmQgU2V0IElkZW50 aWZpZXIgc3VwcG9ydAo3LiAgTW92ZSByZXEtPmNtZC0+aWRlbnRpZnkuY3NpID09IE5WTUVfQ1NJ X1pOUyBjaGVja3MgaW4gdG8gcmVzcGVjdGl2ZQogICAgY2FsbGVyIGluIG52bWV0X2V4ZWN1dGVf aWRlbnRpZnkoKS4KOC4gIFVwZGF0ZSBlcnJvciBsb2cgcGFnZSBpbiBudm1ldF9iZGV2X3puc19j aGVja3MoKS4KOS4gIFJlbW92ZSB0aGUgdGVybmV5IGV4cHJlc3Npb24gbnZtZXRfem5zX3VwZGF0 ZV96YXNsKCkuCjEwLiBEcm9wIGZvbGxvd2luZyBwYXRjaGVzOi0KICAgICBbUEFUQ0ggVjEwIDEv OF0gbnZtZXQ6IHRyaW0gYXJncyBmb3IgbnZtZXRfY29weV9uc19pZGVudGlmaWVyKCkKICAgICBb UEFUQ0ggVjEwIDYvOF0gbnZtZS1jb3JlOiBjaGVjayBjdHJsIGNzcyBiZWZvcmUgc2V0dGluZyB1 cCB6bnMKICAgICBbUEFUQ0ggVjEwIDcvOF0gbnZtZS1jb3JlOiBhZGQgYSBoZWxwZXIgdG8gcHJp bnQgY3NzIHJlbGF0ZWQgZXJyb3IKCkNoYW5nZXMgZnJvbSBWOTotCgoxLiAgVXNlIGJpb19hZGRf em9uZV9hcHBlbmRfcGFnZSgpIGZvciBSRVFfT1BfWk9ORV9BUFBFTkQuCjIuICBBZGQgYSBzZXBh cmF0ZSBwcmVwIHBhdGNoIHRvIHJlZHVjZSB0aGUgYXJndW1lbnRzIGZvcgogICAgbnZtZXRfY29w eV9uc19pZGVudGlmaWVyKCkuCjMuICBBZGQgYSBzZXBhcmF0ZSBwYXRjaCBmb3IgbnZtZXQgQ1NJ IHN1cHBvcnQuCjQuICBBZGQgYSBzZXBhcmF0ZSBwYXRjaCBmb3IgbnZtZXQgQ1NTIHN1cHBvcnQu CjUuICBNb3ZlIG52bWV0X2NjX2Nzc19jaGVjaygpIHRvIG11bHRpLWNzcyBzdXBwb3J0ZWQgcGF0 Y2guCjYuICBSZXR1cm4gZXJyb3IgaW4gY3NpIGNtZCBlZmZlY3RzIGhlbHBlciB3aGVuICFDT05G SUdfQkxLX0RFVl9aT05FRC4KNy4gIFJldHVybiBlcnJvciBpbiBpZCBkZXNjIGxpc3QgaGVscGVy IHdoZW4gIUNPTkZJR19CTEtfREVWX1pPTkVELgo4LiAgUmVtb3ZlIGdvdG8gYW5kIHJldHVybiBm cm9tIG52bWV0X2JkZXZfem5zX2NoZWNrcygpLgo5LiAgTW92ZSBucl96b25lcyBjYWxjdWxhdGlv bnMgbmVhciBjYWxsIHRvIGJsa2Rldl9yZXBvcnRfem9uZXMoKSBpbgogICAgbnZtZXRfYmRldl9l eGVjdXRlX3pvbmVfbWdtdF9yZWN2KCkuCjEwLiBTcGxpdCBjb21tYW5kIGVmZmVjdHMgbG9ncyBp bnRvIHJlc3BlY3RpdmUgQ1NJIGhlbHBlcnMuCjExLiBEb24ndCB1c2UgdGhlIGxvY2FsIHZhcmlh YmxlcyB0byBwYXNzIE5WTUVfQ1NJX1hYWCB2YWx1ZXMsIGluc3RlYWQKICAgIHVzZSByZXEtPm5z LT5jc2ksIGFsc28gbW92ZSB0aGlzIGZyb20gWkJEIHN1cHBvcnQgcGF0Y2ggdG8gbnZtZXQKICAg IENTSSBzdXBwb3J0LgoxMi4gRml4IHRoZSBidWcgdGhhdCBpcyBjaGVrY2luZyBjbnMgdmFsdWUg aW5zdGVhZCBvZiBjc2kgaW4gaWRlbnRpZnkuCjEzLiBiZGV2X2lzX3pvbmVkKCkgaXMgc3R1YmJl ZCBvdXQgdGhlIENPTkZJR19CTEtfREVWX1pPTkVELCBzbyByZW1vdmUKICAgIHRoZSBjaGVjayBm b3IgQ09ORklHX0JMS19ERVZfWk9ORUQgYmVmb3JlIGNhbGxpbmcgYmRldl9pc196b25lZCgpLgox NCAgRHJvcCBmb2xsb3dpbmcgcGF0Y2hlcyA6LQogICAgW1BBVENIIFY5IDEvOV0gYmxvY2s6IGV4 cG9ydCBiaW9fYWRkX2h3X3BhZ2VzKCkuCiAgICBbUEFUQ0ggVjkgNS85XSBudm1ldDogYWRkIGJp byBnZXQgaGVscGVyLgogICAgW1BBVENIIFY5IDYvOV0gbnZtZXQ6IGFkZCBiaW8gaW5pdCBoZWxw ZXIuCiAgICBbUEFUQ0ggVjkgOC85XSBudm1ldDogYWRkIGNvbW1vbiBJL08gbGVuZ3RoIGNoZWNr IGhlbHBlci4KICAgIFtQQVRDSCBWOSA5LzldIG52bWV0OiBjYWxsIG52bWV0X2Jpb19kb25lKCkg Zm9yIHpvbmUgYXBwZW5kLgoxNS4gQWRkIGEgcGF0Y2ggdG8gY2hlY2sgZm9yIGN0cmwgYml0cyB0 byBtYWtlIHN1cmUgY3RybCBzdXBwb3J0cyB0aGUKICAgIG11bHRpIGNzcyBvbiB0aGUgaG9zdCBz aWRlIHdoZW4gc2V0dGluZyB1cCBab25lZCBOYW1lc3BhY2UuCjE3LiBBZGQgYSBkb2N1bWVudGF0 aW9uIHBhdGNoIGZvciB0aGUgaG9zdCBzaWRlIHdoZW4gY2FsY3VsYXRpbmcgdGhlCiAgICBidWZm ZXIgc2l6ZSBhbGxvY2F0aW9uIHNpemUgZm9yIHRoZSByZXBvcnQgem9uZXMuCjE2LiBSZWJhc2Ug YW5kIHJldGVzdCA1LjEyLXJjMS4KCkNoYW5nZXMgZnJvbSBWODotCgoxLiBSZWJhc2UgYW5kIHJl dGVzdCBvbiBsYXRlc3QgbnZtZS01LjExLgoyLiBFeHBvcnQgY3RybC0+Y2FwIGNzaSBzdXBwb3J0 IG9ubHkgaWYgQ09ORklHX0JMS19ERVZfWk9ORSBpcyBzZXQuCjMuIEFkZCBhIGZpeCB0byBhZG1p biBucy1kZXNjIGxpc3QgaGFuZGxlciBmb3IgaGFuZGxpbmcgZGVmYXVsdCBjc2kuCgpDaGFuZ2Vz IGZyb20gVjc6LQoKMS4gSnVzdCBsaWtlIHdoYXQgYmxvY2sgbGF5ZXIgcHJvdmlkZXMgYW4gQVBJ IGZvciBiaW9faW5pdCgpLCBwcm92aWRlCiAgIG52bWV0X2Jpb19pbml0KCkgc3VjaCB0aGF0IHdl IG1vdmUgYmlvIGluaXRpYWxpemF0aW9uIGNvZGUgZm9yCiAgIG52bWUtcmVhZC13cml0ZSBjb21t YW5kcyBmcm9tIGJkZXYgYW5kIHpucyBiYWNrZW5kIGludG8gdGhlIGNlbnRyYWxpemUKICAgaGVs cGVyLiAKMi4gV2l0aCBiZGV2L3pucy9maWxlIG5vdyB3ZSBoYXZlIHRocmVlIGJhY2tlbmRzIHRo YXQgYXJlIGNoZWNraW5nIGZvcgogICByZXEtPnNnX2NudCBhbmQgY2FsbGluZyBudm1ldF9jaGVj a190cmFuc2Zlcl9sZW4oKSBiZWZvcmUgd2UgcHJvY2VzcwogICBudm1lLXJlYWQtd3JpdGUgY29t bWFuZHMuIE1vdmUgdGhpcyBkdXBsaWNhdGUgY29kZSBmcm9tIHRocmVlCiAgIGJhY2tlbmVkcyBp bnRvIHRoZSBoZWxwZXIuCjMuIEV4cG9ydCBhbmQgdXNlIG52bWV0X2Jpb19kb25lKCkgY2FsbGJh Y2sgaW4KICAgbnZtZXRfZXhlY3V0ZV96b25lX2FwcGVuZCgpIGluc3RlYWQgb2YgdGhlIG9wZW4g Y29kaW5nIHRoZSBmdW5jdGlvbi4KICAgVGhpcyBhbHNvIGF2b2lkcyBjb2RlIGR1cGxpY2F0aW9u IGZvciBiaW8gJiByZXF1ZXN0IGNvbXBsZXRpb24gd2l0aAogICBlcnJvciBsb2cgcGFnZSB1cGRh dGUuCjQuIEFkZCB6b25lZnMgdGVzdHMgbG9nIGZvciBkbSBsaW5lYXIgZGV2aWNlIGNyZWF0ZWQg b24gdGhlIHRvcCBvZiBTTVIgSERECiAgIGV4cG9ydGVkIHdpdGggTlZNZU9GIFpOUyBiYWNrZW5k IHdpdGggdGhlIGhlbHAgb2YgbnZtZS1sb29wLgoKQ2hhbmdlcyBmcm9tIFY2Oi0KCjEuIEluc3Rl YWQgb2YgY2FsbGluZyByZXBvcnQgem9uZXMgdG8gZmluZCBjb252ZW50aW9uYWwgem9uZXMgaW4g dGhlIAogICBsb29wIHVzZSB0aGUgbG9vcCBpbnNpZGUgTExEIGJsa2Rldl9yZXBvcnRfem9uZXMo KS0+TExEX3JlcG9ydF96b25lcywKICAgdGhhdCBhbHNvIHNpbXBsaWZpZXMgdGhlIHJlcG9ydCB6 b25lIGNhbGxiYWNrLgoyLiBGaXggdGhlIGJ1ZyBpbiBudm1ldF9iZGV2X2hhc19jb252X3pvbmVz KCkuCjMuIFJlbW92ZSBjb25kaXRpb25hbCBvcGVyYXRvcnMgaW4gdGhlIG52bWV0X2JkZXZfZXhl Y3V0ZV96b25lX2FwcGVuZCgpLgoKQ2hhbmdlcyBmcm9tIFY1Oi0KCjEuICBVc2UgYmlvLT5iaV9p dGVyLmJpX3NlY3RvciBmb3IgcmVzdWx0IG9mIHRoZSBSRVFfT1BfWk9ORV9BUFBFTkQKICAgIGNv bW1hbmQuCjIuICBBZGQgZW5kaWFubmVzcyB0byB0aGUgaGVscGVyIG52bWV0X3NlY3RfdG9fbGJh KCkuCjMuICBNYWtlIGJ1ZnNpemUgdTMyIGluIHpvbmUgbWdtdCByZWN2IGNvbW1hbmQgaGFuZGxl ci4KNC4gIEFkZCBfX0dGUF9aRVJPIGZvciByZXBvcnQgem9uZSBkYXRhIGJ1ZmZlciB0byByZXR1 cm4gY2xlYW4gYnVmZmVyLgoKQ2hhbmdlcyBmcm9tIFY0Oi0KCjEuICBEb24ndCB1c2UgYmlvX2lv dl9pdGVyX2dldF9wYWdlcygpIGluc3RlYWQgYWRkIGEgcGF0Y2ggdG8gZXhwb3J0CiAgICBiaW9f YWRkX2h3X3BhZ2UoKSBhbmQgY2FsbCBpdCBkaXJlY3RseSBmb3Igem9uZSBhcHBlbmQuCjIuICBB ZGQgaW5saW5lIHZlY3RvciBvcHRpbWl6YXRpb24gZm9yIGFwcGVuZCBiaW8uCjMuICBVcGRhdGUg dGhlIGNvbW1pdCBsb2dzIGZvciB0aGUgcGF0Y2hlcy4KNC4gIFJlbW92ZSBaTlMgcmVsYXRlZCBp ZGVudGlmeSBkYXRhIHN0cnVjdHVyZXMsIHVzZSBpbmRpdmlkdWFsIG1lbWJlcnMuCjUuICBBZGQg YSBjb21tZW50IGZvciBtYWNybyBOVk1FVF9NUFNNSU5fU0hJRlQuCjYuICBSZW1vdmUgbnZtZXRf YmRldigpIGhlbHBlci4KNy4gIE1vdmUgdGhlIGNvbW1hbmQgc2V0IGlkZW50aWZpZXIgY29kZSBp bnRvIGNvbW1vbiBjb2RlLgo4LiAgVXNlIElTX0VOQUJMRUQoKSBhbmQgbW92ZSBoZWxwZXJzIGZv bXIgem5zLmMgaW50byBjb21tb24gY29kZS4KOS4gIEFkZCBhIHBhdGNoIHRvIHN1cHBvcnQgQ29t bWFuZCBTZXQgaWRlbnRpZmllcnMuCjEwLiBPcGVuIGNvZGUgbnZtZXRfYmRldl92YWxpZGF0ZV96 bnNfem9uZXMoKS4KMTEuIFJlbW92ZSB0aGUgcGVyIG5hbWVzcGFjZSBtaW4gemFzbCBjYWxjdWxh dGlvbiBhbmQgZG9uJ3QgYWxsb3cKICAgIG5hbWVzcGFjZXMgd2l0aCB6YXNsIHZhbHVlID4gdGhl IGZpcnN0IG5zIHphc2wgdmFsdWUuCjEyLiBNb3ZlIHRoZSBzdHVicyBpbnRvIHRoZSBoZWFkZXIg ZmlsZS4KMTMuIEFkZCBsYmEgdG8vZnJvbSBzZWN0b3IgY29udmVyc2lvbiBoZWxwZXJzIGFuZCB1 cGRhdGUgdGhlCiAgICBpby1jbWQtYmRldi5jIHRvIGF2b2lkIHRoZSBjb2RlIGR1cGxpY2F0aW9u LgoxNC4gQWRkIGV2ZXJ5dGhpbmcgaW50byBvbmUgcGF0Y2ggZm9yIHpucyBjb21tYW5kIGhhbmRs ZXJzIGFuZCAKICAgIHJlc3BlY3RpdmUgY2FsbHMgZnJvbSB0aGUgdGFyZ2V0IGNvZGUuCjE1LiBS ZW1vdmUgdGhlIHRyaW0gbnMtZGVzY2xpc3QgYWRtaW4gY2FsbGJhY2sgcGF0Y2ggZnJvbSB0aGlz IHNlcmllcy4KMTYuIEFkZCBiaW8gZ2V0IGFuZCBwdXQgaGVscGVycyBwYXRjaGVzIHRvIHJlZHVj ZSB0aGUgZHVwbGljYXRlIGNvZGUgaW4KICAgIGdlbmVyaWMgYmRldiwgcGFzc3RocnUsIGFuZCBn ZW5lcmljIHpucyBiYWNrZW5kLgoKQ2hhbmdlcyBmcm9tIFYzOi0KCjEuICBHZXQgcmlkIG9mIHRo ZSBiaW9fbWF4X3phc2wgY2hlY2suCjIuICBSZW1vdmUgZXh0cmEgbGluZXMuCjMuICBSZW1vdmUg dGhlIGJsb2NrIGxheWVyIGFwaSBleHBvcnQgcGF0Y2guCjQuICBSZW1vdmUgdGhlIGJ2ZWMgY2hl Y2sgaW4gdGhlIGJpb19pb3ZfaXRlcl9nZXRfcGFnZXMoKSBmb3IKICAgIFJFUV9PUF9aT05FX0FQ UEVORCBzbyB0aGF0IHdlIGNhbiByZXVzZSB0aGUgY29kZS4KCkNoYW5nZXMgZnJvbSBWMjotCgox LiAgTW92ZSBjb252ZW50aW9uYWwgem9uZSBiaXRtYXAgY2hlY2sgaW50byAKICAgIG52bWV0X2Jk ZXZfdmFsaWRhdGVfem5zX3pvbmVzKCkuIAoyLiAgRG9uJ3QgdXNlIHJlcG9ydCB6b25lcyBjYWxs IHRvIGNoZWNrIHRoZSBydW50IHpvbmUuCjMuICBUcmltIG52bWV0X3phc2woKSBoZWxwZXIuCjQu ICBGaXggdHlwbyBpbiB0aGUgbnZtZXRfem5zX3VwZGF0ZV96YXNsKCkuCjUuICBSZW1vdmUgdGhl IGNvbW1lbnQgYW5kIGZpeCB0aGUgbWR0cyBjYWxjdWxhdGlvbiBpbgogICAgbnZtZXRfZXhlY3V0 ZV9pZGVudGlmeV9jbnNfY3NfY3RybCgpLgo2LiAgVXNlIHU2NCBmb3IgYnVmc2l6ZSBpbiBudm1l dF9iZGV2X2V4ZWN1dGVfem9uZV9tZ210X3JlY3YoKS4KNy4gIFJlbW92ZSBudm1ldF96b25lc190 b19kZXNjX3NpemUoKSBhbmQgZml4IHRoZSBucl96b25lcwogICAgY2FsY3VsYXRpb24uCjguICBS ZW1vdmUgdGhlIG9wIHZhcmlhYmxlIGluIG52bWV0X2JkZXZfZXhlY3V0ZV96b25lX2FwcGVuZCgp Lgo5LiAgRml4IHRoZSBucl96b25lcyBjYWxjdWxhdGlvbiBudm1ldF9iZGV2X2V4ZWN1dGVfem9u ZV9tZ210X3JlY3YoKS4KMTAuIFVwZGF0ZSBjb3ZlciBsZXR0ZXIgc3ViamVjdC4KCkNoYW5nZXMg ZnJvbSBWMTotCgoxLiAgUmVtb3ZlIHRoZSBudm1ldC0kKENPTkZJR19CTEtfREVWX1pPTkVEKSAr PSB6bnMuby4KMi4gIE1hcmsgaGVscGVycyBpbmxpbmUuCjMuICBGaXggdHlwb3MgaW4gdGhlIGNv bW1lbnRzIGFuZCB1cGRhdGUgdGhlIGNvbW1lbnRzLgo0LiAgR2V0IHJpZCBvZiB0aGUgY3VybHkg YnJhY2tldHMuCjUuICBEb24ndCBhbGxvdyBkcml2ZXMgd2l0aCBsYXN0IHNtYWxsZXIgem9uZXMu CjYuICBDYWxjdWxhdGUgdGhlIHphc2wgYXMgYSBmdW5jdGlvbiBvZiBheF96b25lX2FwcGVuZF9z ZWN0b3JzLAogICAgYmlvX21heF9wYWdlcyBzbyB3ZSBkb24ndCBoYXZlIHRvIHNwbGl0IHRoZSBi aW8uCjcuICBBZGQgZ2xvYmFsIHN1YnN5cy0+emFzbCBhbmQgdXBkYXRlIHRoZSB6YXNsIHdoZW4g bmV3IG5hbWVzcGFjZQogICAgaXMgZW5hYmxlZC4KOC4gIFJtb3ZlIHRoZSBsb29wIGluIHRoZSBu dm1ldF9iZGV2X2V4ZWN1dGVfem9uZV9tZ210X3JlY3YoKSBhbmQKICAgIG1vdmUgZnVuY3Rpb25h bGl0eSBpbiB0byB0aGUgcmVwb3J0IHpvbmUgY2FsbGJhY2suCjkuICBBZGQgZ290byBmb3IgZGVm YXVsdCBjYXNlIGluIG52bWV0X2JkZXZfZXhlY3V0ZV96b25lX21nbXRfc2VuZCgpLgoxMC4gQWxs b2NhdGUgdGhlIHpvbmVzIGJ1ZmZlciB3aXRoIHpvbmVzIHNpemUgaW5zdGVhZCBvZiBiZGV2IG5y X3pvbmVzLgoKQ2hhaXRhbnlhIEt1bGthcm5pICgzKToKICBudm1ldDogYWRkIE5WTSBDb21tYW5k IFNldCBJZGVudGlmaWVyIHN1cHBvcnQKICBudm1ldDogYWRkIFpCRCBvdmVyIFpOUyBiYWNrZW5k IHN1cHBvcnQKICBudm1ldDogYWRkIG52bWV0X3JlcV9iaW8gcHV0IGhlbHBlciBmb3IgYmFja2Vu ZHMKCiBkcml2ZXJzL252bWUvdGFyZ2V0L01ha2VmaWxlICAgICAgfCAgIDEgKwogZHJpdmVycy9u dm1lL3RhcmdldC9hZG1pbi1jbWQuYyAgIHwgIDc0ICsrKysrKy0KIGRyaXZlcnMvbnZtZS90YXJn ZXQvY29yZS5jICAgICAgICB8ICAxNiArLQogZHJpdmVycy9udm1lL3RhcmdldC9pby1jbWQtYmRl di5jIHwgIDM3ICsrKy0KIGRyaXZlcnMvbnZtZS90YXJnZXQvbnZtZXQuaCAgICAgICB8ICA0NSAr KysrCiBkcml2ZXJzL252bWUvdGFyZ2V0L3Bhc3N0aHJ1LmMgICAgfCAgIDMgKy0KIGRyaXZlcnMv bnZtZS90YXJnZXQvem5zLmMgICAgICAgICB8IDMzMSArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysKIGluY2x1ZGUvbGludXgvbnZtZS5oICAgICAgICAgICAgICB8ICAgMSArCiA4IGZpbGVz IGNoYW5nZWQsIDQ4NyBpbnNlcnRpb25zKCspLCAyMSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBkcml2ZXJzL252bWUvdGFyZ2V0L3pucy5jCgoqIFpvbmVmcyBUZXN0IGxvZyB3aXRo IGRtLWxpbmVhciBvbiB0aGUgdG9wIG9mIFNNUiBIREQ6LQotLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQoKMS4gVGVzdCBab25lZCBCbG9jayBEZXZpY2UgaW5mbyA6LSAKLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KCiMgZmRpc2sgIC1sIC9kZXYvc2RoCkRpc2sgL2Rldi9zZGg6IDEzLjY0IFRpQiwgMTUw MDAxNzMyODEyODAgYnl0ZXMsIDM2NjIxNTE2ODAgc2VjdG9ycwpEaXNrIG1vZGVsOiBIR1NUIEhT SDcyMTQxNUFMClVuaXRzOiBzZWN0b3JzIG9mIDEgKiA0MDk2ID0gNDA5NiBieXRlcwpTZWN0b3Ig c2l6ZSAobG9naWNhbC9waHlzaWNhbCk6IDQwOTYgYnl0ZXMgLyA0MDk2IGJ5dGVzCkkvTyBzaXpl IChtaW5pbXVtL29wdGltYWwpOiA0MDk2IGJ5dGVzIC8gNDA5NiBieXRlcwojIGNhdCAvc3lzL2Js b2NrL3NkaC9xdWV1ZS9ucl96b25lcwo1NTg4MAojIGNhdCAvc3lzL2Jsb2NrL3NkaC9xdWV1ZS96 b25lZApob3N0LW1hbmFnZWQKIyBjYXQgL3N5cy9ibG9jay9zZGgvcXVldWUvem9uZV9hcHBlbmRf bWF4X2J5dGVzCjY4ODEyOAoKMi4gQ3JlYXRpbmcgTlZNZU9GIHRhcmdldCBiYWNrZWQgYnkgZG0t bGluZWFyIG9uIHRoZSB0b3Agb2YgWkJECi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgojIC4vemJk ZXYuc2ggMSBkbS16YmQKKysgTlFOPWRtLXpiZAorKyBlY2hvICcwIDI5MDIyNDg2NTI4IGxpbmVh ciAvZGV2L3NkaCAyNzQ3MjY5MTInIHwgZG1zZXR1cCBjcmVhdGUgY2tzZGgKOSBkaXJlY3Rvcmll cywgNCBmaWxlcworKyBta2RpciAvc3lzL2tlcm5lbC9jb25maWcvbnZtZXQvc3Vic3lzdGVtcy9k bS16YmQKKysgbWtkaXIgL3N5cy9rZXJuZWwvY29uZmlnL252bWV0L3N1YnN5c3RlbXMvZG0temJk L25hbWVzcGFjZXMvMQorKyBlY2hvIC1uIC9kZXYvZG0tMAorKyBjYXQgL3N5cy9rZXJuZWwvY29u ZmlnL252bWV0L3N1YnN5c3RlbXMvZG0temJkL25hbWVzcGFjZXMvMS9kZXZpY2VfcGF0aAovZGV2 L2RtLTAKKysgZWNobyAxCisrIG1rZGlyIC9zeXMva2VybmVsL2NvbmZpZy9udm1ldC9wb3J0cy8x LworKyBlY2hvIC1uIGxvb3AKKysgZWNobyAtbiAxCisrIGxuIC1zIC9zeXMva2VybmVsL2NvbmZp Zy9udm1ldC9zdWJzeXN0ZW1zL2RtLXpiZCAvc3lzL2tlcm5lbC9jb25maWcvbnZtZXQvcG9ydHMv MS9zdWJzeXN0ZW1zLworKyBzbGVlcCAxCisrIGVjaG8gdHJhbnNwb3J0PWxvb3AsbnFuPWRtLXpi ZAorKyBzbGVlcCAxCisrIGRtZXNnIC1jClsyMzM0NTAuNTcyNTY1XSBudm1ldDogYWRkaW5nIG5z aWQgMSB0byBzdWJzeXN0ZW0gZG0temJkClsyMzM0NTIuMjY5NDc3XSBudm1ldDogY3JlYXRpbmcg Y29udHJvbGxlciAxIGZvciBzdWJzeXN0ZW0gZG0temJkIGZvciBOUU4gbnFuLjIwMTQtMDgub3Jn Lm52bWV4cHJlc3M6dXVpZDo4NTNkN2U4Mi04MDE4LTQ0Y2UtODc4NC1hYjgxZTc0NjVhZDkuClsy MzM0NTIuMjgzMzUyXSBudm1lIG52bWUwOiBQbGVhc2UgZW5hYmxlIENPTkZJR19OVk1FX01VTFRJ UEFUSCBmb3IgZnVsbCBzdXBwb3J0IG9mIG11bHRpLXBvcnQgZGV2aWNlcy4KWzIzMzQ1Mi4yOTI4 MDVdIG52bWUgbnZtZTA6IGNyZWF0aW5nIDggSS9PIHF1ZXVlcy4KWzIzMzQ1Mi4yOTkyMTBdIG52 bWUgbnZtZTA6IG5ldyBjdHJsOiAiZG0temJkIgoKMy4gZG0tbGluZWFyIGFuZCBiYWNrZW5kIFNN UiBIREQgYXNzb2NpYXRpb24gOi0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiMgY2F0IC9zeXMv a2VybmVsL2NvbmZpZy9udm1ldC9zdWJzeXN0ZW1zL2RtLXpiZC9uYW1lc3BhY2VzLzEvZGV2aWNl X3BhdGggCi9kZXYvZG0tMAojIGRtc2V0dXAgbHMgLS10cmVlCiBja3NkaCAoMjUyOjApCgkg4pSU 4pSAICg4OjExMikKIyBsc2JsayB8IGhlYWQgLTMKTkFNRSAgICBNQUo6TUlOIFJNICAgU0laRSBS TyBUWVBFIE1PVU5UUE9JTlQKc2RoICAgICAgIDg6MTEyICAwICAxMy42VCAgMCBkaXNrIArilJTi lIBja3NkaCAyNTI6MCAgICAwICAxMy41VCAgMCBkbSAgIAoKNC4gTlZNZU9GIGNvbnRyb2xsZXIg Oi0gCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgojIG52bWUgbGlzdCB8IHRyIC1zICcgJyAnICcg IApOb2RlIFNOIE1vZGVsIE5hbWVzcGFjZSBVc2FnZSBGb3JtYXQgRlcgUmV2ICAKL2Rldi9udm1l MG4xIDhjNmYzNDhkY2Q2NDQwNGMgTGludXggMSAxNC44NiBUQiAvIDE0Ljg2IFRCIDQgS2lCICsg MCBCIDUuMTAuMG52Cgo1LiBab25lZnMgdGVzdHMgcmVzdWx0cyA6LQotLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQoKIyAuL3pvbmVmcy10ZXN0cy5zaCAvZGV2L252bWUwbjEgCkdhdGhlcmluZyBpbmZv cm1hdGlvbiBvbiAvZGV2L252bWUwbjEuLi4Kem9uZWZzLXRlc3RzIG9uIC9kZXYvbnZtZTBuMToK ICA1NTM1NiB6b25lcyAoMCBjb252ZW50aW9uYWwgem9uZXMsIDU1MzU2IHNlcXVlbnRpYWwgem9u ZXMpCiAgNTI0Mjg4IDUxMkIgc2VjdG9ycyB6b25lIHNpemUgKDI1NiBNaUIpCiAgMSBtYXggb3Bl biB6b25lcwpSdW5uaW5nIHRlc3RzCiAgVGVzdCAwMDEwOiAgbWt6b25lZnMgKG9wdGlvbnMpICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAxMTogIG1r em9uZWZzIChmb3JjZSBmb3JtYXQpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBB U1MKICBUZXN0IDAwMTI6ICBta3pvbmVmcyAoaW52YWxpZCBkZXZpY2UpICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDEzOiAgbWt6b25lZnMgKHN1cGVyIGJsb2Nr IHpvbmUgc3RhdGUpICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAyMDogIG1v dW50IChkZWZhdWx0KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBB U1MKICBUZXN0IDAwMjE6ICBtb3VudCAoaW52YWxpZCBkZXZpY2UpICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDIyOiAgbW91bnQgKGNoZWNrIG1vdW50IGRp cmVjdG9yeSBzdWItZGlyZWN0b3JpZXMpICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAyMzogIG1v dW50IChvcHRpb25zKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBB U1MKICBUZXN0IDAwMzA6ICBOdW1iZXIgb2YgZmlsZXMgKGRlZmF1bHQpICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDMxOiAgTnVtYmVyIG9mIGZpbGVzIChhZ2dy X2NudikgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDAzMjogIE51 bWJlciBvZiBmaWxlcyB1c2luZyBzdGF0IChkZWZhdWx0KSAgICAgICAgICAgICAgICAgLi4uIFBB U1MKICBUZXN0IDAwMzM6ICBOdW1iZXIgb2YgZmlsZXMgdXNpbmcgc3RhdCAoYWdncl9jbnYpICAg ICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDM0OiAgTnVtYmVyIG9mIGJsb2NrcyB1c2lu ZyBzdGF0IChkZWZhdWx0KSAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAzNTogIE51 bWJlciBvZiBibG9ja3MgdXNpbmcgc3RhdCAoYWdncl9jbnYpICAgICAgICAgICAgICAgLi4uIFBB U1MKICBUZXN0IDAwNDA6ICBGaWxlcyBwZXJtaXNzaW9ucyAoZGVmYXVsdCkgICAgICAgICAgICAg ICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDQxOiAgRmlsZXMgcGVybWlzc2lvbnMgKGFn Z3JfY252KSAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA0MjogIEZp bGVzIHBlcm1pc3Npb25zIChzZXQgdmFsdWUpICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBB U1MKICBUZXN0IDAwNDM6ICBGaWxlcyBwZXJtaXNzaW9ucyAoc2V0IHZhbHVlICsgYWdncl9jbnYp ICAgICAgICAgICAgIC4uLiBza2lwCiAgVGVzdCAwMDUwOiAgRmlsZXMgb3duZXIgKGRlZmF1bHQp ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA1MTogIEZp bGVzIG93bmVyIChhZ2dyX2NudikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIHNr aXAKICBUZXN0IDAwNTI6ICBGaWxlcyBvd25lciAoc2V0IHZhbHVlKSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDUzOiAgRmlsZXMgb3duZXIgKHNldCB2YWx1 ZSArIGFnZ3JfY252KSAgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA2MDogIEZp bGVzIHNpemUgKGRlZmF1bHQpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBB U1MKICBUZXN0IDAwNjE6ICBGaWxlcyBzaXplIChhZ2dyX2NudikgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC4uLiBza2lwCiAgVGVzdCAwMDcwOiAgQ29udmVudGlvbmFsIGZpbGUgdHJ1 bmNhdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA3MTogIENv bnZlbnRpb25hbCBmaWxlIHRydW5jYXRlIChhZ2dyX2NudikgICAgICAgICAgICAgICAgLi4uIHNr aXAKICBUZXN0IDAwNzI6ICBDb252ZW50aW9uYWwgZmlsZSB1bmxpbmsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC4uLiBza2lwCiAgVGVzdCAwMDczOiAgQ29udmVudGlvbmFsIGZpbGUgdW5s aW5rIChhZ2dyX2NudikgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA3NDogIENv bnZlbnRpb25hbCBmaWxlIHJhbmRvbSB3cml0ZSAgICAgICAgICAgICAgICAgICAgICAgLi4uIHNr aXAKICBUZXN0IDAwNzU6ICBDb252ZW50aW9uYWwgZmlsZSByYW5kb20gd3JpdGUgKGRpcmVjdCkg ICAgICAgICAgICAgIC4uLiBza2lwCiAgVGVzdCAwMDc2OiAgQ29udmVudGlvbmFsIGZpbGUgcmFu ZG9tIHdyaXRlIChhZ2dyX2NudikgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA3NzogIENv bnZlbnRpb25hbCBmaWxlIHJhbmRvbSB3cml0ZSAoYWdncl9jbnYsIGRpcmVjdCkgICAgLi4uIHNr aXAKICBUZXN0IDAwNzg6ICBDb252ZW50aW9uYWwgZmlsZSBtbWFwIHJlYWQvd3JpdGUgICAgICAg ICAgICAgICAgICAgIC4uLiBza2lwCiAgVGVzdCAwMDc5OiAgQ29udmVudGlvbmFsIGZpbGUgbW1h cCByZWFkL3dyaXRlIChhZ2dyX2NudikgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA4MDogIFNl cXVlbnRpYWwgZmlsZSB0cnVuY2F0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBB U1MKICBUZXN0IDAwODE6ICBTZXF1ZW50aWFsIGZpbGUgdW5saW5rICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDgyOiAgU2VxdWVudGlhbCBmaWxlIGJ1ZmZl cmVkIHdyaXRlIElPICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA4MzogIFNl cXVlbnRpYWwgZmlsZSBvdmVyd3JpdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBB U1MKICBUZXN0IDAwODQ6ICBTZXF1ZW50aWFsIGZpbGUgdW5hbGlnbmVkIHdyaXRlIChzeW5jIElP KSAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDg1OiAgU2VxdWVudGlhbCBmaWxlIHVuYWxp Z25lZCB3cml0ZSAoYXN5bmMgSU8pICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA4NjogIFNl cXVlbnRpYWwgZmlsZSBhcHBlbmQgKHN5bmMpICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBB U1MKICBUZXN0IDAwODc6ICBTZXF1ZW50aWFsIGZpbGUgYXBwZW5kIChhc3luYykgICAgICAgICAg ICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDg4OiAgU2VxdWVudGlhbCBmaWxlIHJhbmRv bSByZWFkICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA4OTogIFNl cXVlbnRpYWwgZmlsZSBtbWFwIHJlYWQvd3JpdGUgICAgICAgICAgICAgICAgICAgICAgLi4uIFBB U1MKICBUZXN0IDAwOTA6ICBzZXF1ZW50aWFsIGZpbGUgNEsgc3luY2hyb25vdXMgd3JpdGUgICAg ICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDkxOiAgU2VxdWVudGlhbCBmaWxlIGxhcmdl IHN5bmNocm9ub3VzIHdyaXRlICAgICAgICAgICAgICAuLi4gUEFTUwoKNDYgLyA0NiB0ZXN0cyBw YXNzZWQKCiogV2l0aCBDT05GSUdfQkxLX0RFVl9aT05FRCBudm1lIGFuZCB6b25lZnMgdGVzdHMg b24gbWVtYmFja2VkIG51bGxfYmxrIHpvbmVkIDotCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoj IGdyZXAgLWkgYmxrX2Rldl96b25lZCAuY29uZmlnCkNPTkZJR19CTEtfREVWX1pPTkVEPXkKIyBt YWtlIE09ZHJpdmVycy9udm1lLyBjbGVhbiAKICBDTEVBTiAgIGRyaXZlcnMvbnZtZS8vTW9kdWxl LnN5bXZlcnMKIyBtYWtlIE09ZHJpdmVycy9udm1lLyAKICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8v aG9zdC9jb3JlLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC90cmFjZS5vCiAgQ0MgW01d ICBkcml2ZXJzL252bWUvL2hvc3QvbGlnaHRudm0ubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9o b3N0L3pucy5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL2hvc3QvaHdtb24ubwogIExEIFtNXSAg ZHJpdmVycy9udm1lLy9ob3N0L252bWUtY29yZS5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL2hv c3QvcGNpLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLm8KICBDQyBbTV0gIGRy aXZlcnMvbnZtZS8vaG9zdC9mYWJyaWNzLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9u dm1lLWZhYnJpY3MubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L3JkbWEubwogIExEIFtN XSAgZHJpdmVycy9udm1lLy9ob3N0L252bWUtcmRtYS5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUv L2hvc3QvZmMubwogIExEIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L252bWUtZmMubwogIENDIFtN XSAgZHJpdmVycy9udm1lLy9ob3N0L3RjcC5vCiAgTEQgW01dICBkcml2ZXJzL252bWUvL2hvc3Qv bnZtZS10Y3AubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvY29yZS5vCiAgQ0MgW01d ICBkcml2ZXJzL252bWUvL3RhcmdldC9jb25maWdmcy5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUv L3RhcmdldC9hZG1pbi1jbWQubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvZmFicmlj cy1jbWQubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvZGlzY292ZXJ5Lm8KICBDQyBb TV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L2lvLWNtZC1maWxlLm8KICBDQyBbTV0gIGRyaXZlcnMv bnZtZS8vdGFyZ2V0L2lvLWNtZC1iZGV2Lm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0 L3Bhc3N0aHJ1Lm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L3pucy5vCiAgQ0MgW01d ICBkcml2ZXJzL252bWUvL3RhcmdldC90cmFjZS5vCiAgTEQgW01dICBkcml2ZXJzL252bWUvL3Rh cmdldC9udm1ldC5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9sb29wLm8KICBMRCBb TV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252bWUtbG9vcC5vCiAgQ0MgW01dICBkcml2ZXJzL252 bWUvL3RhcmdldC9yZG1hLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252bWV0LXJk bWEubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvZmMubwogIExEIFtNXSAgZHJpdmVy cy9udm1lLy90YXJnZXQvbnZtZXQtZmMubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQv ZmNsb29wLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252bWUtZmNsb29wLm8KICBD QyBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L3RjcC5vCiAgTEQgW01dICBkcml2ZXJzL252bWUv L3RhcmdldC9udm1ldC10Y3AubwogIE1PRFBPU1QgZHJpdmVycy9udm1lLy9Nb2R1bGUuc3ltdmVy cwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L252bWUtY29yZS5tb2QubwogIExEIFtNXSAg ZHJpdmVycy9udm1lLy9ob3N0L252bWUtY29yZS5rbwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9o b3N0L252bWUtZmFicmljcy5tb2QubwogIExEIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L252bWUt ZmFicmljcy5rbwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L252bWUtZmMubW9kLm8KICBM RCBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLWZjLmtvCiAgQ0MgW01dICBkcml2ZXJzL252 bWUvL2hvc3QvbnZtZS1yZG1hLm1vZC5vCiAgTEQgW01dICBkcml2ZXJzL252bWUvL2hvc3QvbnZt ZS1yZG1hLmtvCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL2hvc3QvbnZtZS10Y3AubW9kLm8KICBM RCBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLXRjcC5rbwogIENDIFtNXSAgZHJpdmVycy9u dm1lLy9ob3N0L252bWUubW9kLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLmtv CiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1lLWZjbG9vcC5tb2QubwogIExEIFtN XSAgZHJpdmVycy9udm1lLy90YXJnZXQvbnZtZS1mY2xvb3Aua28KICBDQyBbTV0gIGRyaXZlcnMv bnZtZS8vdGFyZ2V0L252bWUtbG9vcC5tb2QubwogIExEIFtNXSAgZHJpdmVycy9udm1lLy90YXJn ZXQvbnZtZS1sb29wLmtvCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1ldC1mYy5t b2QubwogIExEIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvbnZtZXQtZmMua28KICBDQyBbTV0g IGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252bWV0LXJkbWEubW9kLm8KICBMRCBbTV0gIGRyaXZlcnMv bnZtZS8vdGFyZ2V0L252bWV0LXJkbWEua28KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0 L252bWV0LXRjcC5tb2QubwogIExEIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvbnZtZXQtdGNw LmtvCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1ldC5tb2QubwogIExEIFtNXSAg ZHJpdmVycy9udm1lLy90YXJnZXQvbnZtZXQua28KIyAKIyBjZGJsa3Rlc3RzIAojIC4vY2hlY2sg dGVzdHMvbnZtZS8KbnZtZS8wMDIgKGNyZWF0ZSBtYW55IHN1YnN5c3RlbXMgYW5kIHRlc3QgZGlz Y292ZXJ5KSAgICAgICAgIFtwYXNzZWRdCiAgICBydW50aW1lICAyNC4zNzhzICAuLi4gIDI0LjYz NnMKbnZtZS8wMDMgKHRlc3QgaWYgd2UncmUgc2VuZGluZyBrZWVwLWFsaXZlcyB0byBhIGRpc2Nv dmVyeSBjb250cm9sbGVyKSBbcGFzc2VkXQogICAgcnVudGltZSAgMTAuMTMzcyAgLi4uICAxMC4x NTJzCm52bWUvMDA0ICh0ZXN0IG52bWUgYW5kIG52bWV0IFVVSUQgTlMgZGVzY3JpcHRvcnMpICAg ICAgICAgICBbcGFzc2VkXQogICAgcnVudGltZSAgMi40NjNzICAuLi4gIDIuNDc4cwpudm1lLzAw NSAocmVzZXQgbG9jYWwgbG9vcGJhY2sgdGFyZ2V0KSAgICAgICAgICAgICAgICAgICAgICAgW25v dCBydW5dCiAgICBudm1lX2NvcmUgbW9kdWxlIGRvZXMgbm90IGhhdmUgcGFyYW1ldGVyIG11bHRp cGF0aApudm1lLzAwNiAoY3JlYXRlIGFuIE5WTWVPRiB0YXJnZXQgd2l0aCBhIGJsb2NrIGRldmlj ZS1iYWNrZWQgbnMpIFtwYXNzZWRdCiAgICBydW50aW1lICAwLjA5NXMgIC4uLiAgMC4xMjJzCm52 bWUvMDA3IChjcmVhdGUgYW4gTlZNZU9GIHRhcmdldCB3aXRoIGEgZmlsZS1iYWNrZWQgbnMpICAg ICBbcGFzc2VkXQogICAgcnVudGltZSAgMC4wNjVzICAuLi4gIDAuMDc5cwpudm1lLzAwOCAoY3Jl YXRlIGFuIE5WTWVPRiBob3N0IHdpdGggYSBibG9jayBkZXZpY2UtYmFja2VkIG5zKSBbcGFzc2Vk XQogICAgcnVudGltZSAgMi40NzNzICAuLi4gIDIuNTAxcwpudm1lLzAwOSAoY3JlYXRlIGFuIE5W TWVPRiBob3N0IHdpdGggYSBmaWxlLWJhY2tlZCBucykgICAgICAgW3Bhc3NlZF0KICAgIHJ1bnRp bWUgIDIuNDYwcyAgLi4uICAyLjQyNHMKbnZtZS8wMTAgKHJ1biBkYXRhIHZlcmlmaWNhdGlvbiBm aW8gam9iIG9uIE5WTWVPRiBibG9jayBkZXZpY2UtYmFja2VkIG5zKSBbcGFzc2VkXQogICAgcnVu dGltZSAgMjQuNTI2cyAgLi4uICAyOC4wMTVzCm52bWUvMDExIChydW4gZGF0YSB2ZXJpZmljYXRp b24gZmlvIGpvYiBvbiBOVk1lT0YgZmlsZS1iYWNrZWQgbnMpIFtwYXNzZWRdCiAgICBydW50aW1l ICAyNjUuOTY3cyAgLi4uICAyODIuNzE3cwpudm1lLzAxMiAocnVuIG1rZnMgYW5kIGRhdGEgdmVy aWZpY2F0aW9uIGZpbyBqb2Igb24gTlZNZU9GIGJsb2NrIGRldmljZS1iYWNrZWQgbnMpIFtwYXNz ZWRdCiAgICBydW50aW1lICA0NC42NjVzICAuLi4gIDQ4LjEyNHMKbnZtZS8wMTMgKHJ1biBta2Zz IGFuZCBkYXRhIHZlcmlmaWNhdGlvbiBmaW8gam9iIG9uIE5WTWVPRiBmaWxlLWJhY2tlZCBucykg W3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDI2MS43MzlzICAuLi4gIDM1Mi4zMzFzCm52bWUvMDE0IChm bHVzaCBhIE5WTWVPRiBibG9jayBkZXZpY2UtYmFja2VkIG5zKSAgICAgICAgICAgICBbcGFzc2Vk XQogICAgcnVudGltZSAgMjEuMjY4cyAgLi4uICAyMi4wMTNzCm52bWUvMDE1ICh1bml0IHRlc3Qg Zm9yIE5WTWUgZmx1c2ggZm9yIGZpbGUgYmFja2VkIG5zKSAgICAgICBbcGFzc2VkXQogICAgcnVu dGltZSAgMTguODIwcyAgLi4uICAyMi4xMDRzCm52bWUvMDE2IChjcmVhdGUvZGVsZXRlIG1hbnkg TlZNZU9GIGJsb2NrIGRldmljZS1iYWNrZWQgbnMgYW5kIHRlc3QgZGlzY292ZXJ5KSBbcGFzc2Vk XQogICAgcnVudGltZSAgMTMuODk5cyAgLi4uICAxNC4zMjJzCm52bWUvMDE3IChjcmVhdGUvZGVs ZXRlIG1hbnkgZmlsZS1ucyBhbmQgdGVzdCBkaXNjb3ZlcnkpICAgICBbcGFzc2VkXQogICAgcnVu dGltZSAgMTQuMzIycyAgLi4uICAxNC4wMzFzCm52bWUvMDE4ICh1bml0IHRlc3QgTlZNZS1vRiBv dXQgb2YgcmFuZ2UgYWNjZXNzIG9uIGEgZmlsZSBiYWNrZW5kKSBbcGFzc2VkXQogICAgcnVudGlt ZSAgMi40NTBzICAuLi4gIDIuNDQ0cwpudm1lLzAxOSAodGVzdCBOVk1lIERTTSBEaXNjYXJkIGNv bW1hbmQgb24gTlZNZU9GIGJsb2NrLWRldmljZSBucykgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDIu NDc1cyAgLi4uICAyLjQ4OXMKbnZtZS8wMjAgKHRlc3QgTlZNZSBEU00gRGlzY2FyZCBjb21tYW5k IG9uIE5WTWVPRiBmaWxlLWJhY2tlZCBucykgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDIuNDEwcyAg Li4uICAyLjQ0OHMKbnZtZS8wMjEgKHRlc3QgTlZNZSBsaXN0IGNvbW1hbmQgb24gTlZNZU9GIGZp bGUtYmFja2VkIG5zKSAgIFtwYXNzZWRdCiAgICBydW50aW1lICAyLjQ0MXMgIC4uLiAgMi40Mzlz Cm52bWUvMDIyICh0ZXN0IE5WTWUgcmVzZXQgY29tbWFuZCBvbiBOVk1lT0YgZmlsZS1iYWNrZWQg bnMpICBbcGFzc2VkXQogICAgcnVudGltZSAgMi44NjRzICAuLi4gIDIuODYzcwpudm1lLzAyMyAo dGVzdCBOVk1lIHNtYXJ0LWxvZyBjb21tYW5kIG9uIE5WTWVPRiBibG9jay1kZXZpY2UgbnMpIFtw YXNzZWRdCiAgICBydW50aW1lICAyLjQ2NXMgIC4uLiAgMi40NDZzCm52bWUvMDI0ICh0ZXN0IE5W TWUgc21hcnQtbG9nIGNvbW1hbmQgb24gTlZNZU9GIGZpbGUtYmFja2VkIG5zKSBbcGFzc2VkXQog ICAgcnVudGltZSAgMi40MTZzICAuLi4gIDIuNDExcwpudm1lLzAyNSAodGVzdCBOVk1lIGVmZmVj dHMtbG9nIGNvbW1hbmQgb24gTlZNZU9GIGZpbGUtYmFja2VkIG5zKSBbcGFzc2VkXQogICAgcnVu dGltZSAgMi40MTlzICAuLi4gIDIuNzQ4cwpudm1lLzAyNiAodGVzdCBOVk1lIG5zLWRlc2NzIGNv bW1hbmQgb24gTlZNZU9GIGZpbGUtYmFja2VkIG5zKSBbcGFzc2VkXQogICAgcnVudGltZSAgMi40 MjJzICAuLi4gIDIuNDEwcwpudm1lLzAyNyAodGVzdCBOVk1lIG5zLXJlc2NhbiBjb21tYW5kIG9u IE5WTWVPRiBmaWxlLWJhY2tlZCBucykgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDIuNDU2cyAgLi4u ICAyLjQ2MnMKbnZtZS8wMjggKHRlc3QgTlZNZSBsaXN0LXN1YnN5cyBjb21tYW5kIG9uIE5WTWVP RiBmaWxlLWJhY2tlZCBucykgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDIuNDI3cyAgLi4uICAyLjQy OXMKbnZtZS8wMjkgKHRlc3QgdXNlcnNwYWNlIElPIHZpYSBudm1lLWNsaSByZWFkL3dyaXRlIGlu dGVyZmFjZSkgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDIuNzUxcyAgLi4uICAyLjc1NXMKbnZtZS8w MzAgKGVuc3VyZSB0aGUgZGlzY292ZXJ5IGdlbmVyYXRpb24gY291bnRlciBpcyB1cGRhdGVkIGFw cHJvcHJpYXRlbHkpIFtwYXNzZWRdCiAgICBydW50aW1lICAwLjM0NnMgIC4uLiAgMC4zNTdzCm52 bWUvMDMxICh0ZXN0IGRlbGV0aW9uIG9mIE5WTWVPRiBjb250cm9sbGVycyBpbW1lZGlhdGVseSBh ZnRlciBzZXR1cCkgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDEzLjYwMXMgIC4uLiAgMTMuNTkxcwpu dm1lLzAzOCAodGVzdCBkZWxldGlvbiBvZiBOVk1lT0Ygc3Vic3lzdGVtIHdpdGhvdXQgZW5hYmxp bmcpIFtwYXNzZWRdCiAgICBydW50aW1lICAwLjAzOXMgIC4uLiAgMC4wNTlzCiMKIyBjZHpvbmVm c3Rlc3QgCiMgLi96b25lZnMtdGVzdHMuc2ggL2Rldi9udm1lMW4xIApHYXRoZXJpbmcgaW5mb3Jt YXRpb24gb24gL2Rldi9udm1lMW4xLi4uCnpvbmVmcy10ZXN0cyBvbiAvZGV2L252bWUxbjE6CiAg MTYgem9uZXMgKDAgY29udmVudGlvbmFsIHpvbmVzLCAxNiBzZXF1ZW50aWFsIHpvbmVzKQogIDEz MTA3MiA1MTJCIHNlY3RvcnMgem9uZSBzaXplICg2NCBNaUIpCiAgMSBtYXggb3BlbiB6b25lcwpS dW5uaW5nIHRlc3RzCiAgVGVzdCAwMDEwOiAgbWt6b25lZnMgKG9wdGlvbnMpICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAxMTogIG1rem9uZWZzIChm b3JjZSBmb3JtYXQpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBUZXN0 IDAwMTI6ICBta3pvbmVmcyAoaW52YWxpZCBkZXZpY2UpICAgICAgICAgICAgICAgICAgICAgICAg ICAgIC4uLiBQQVNTCiAgVGVzdCAwMDEzOiAgbWt6b25lZnMgKHN1cGVyIGJsb2NrIHpvbmUgc3Rh dGUpICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAyMDogIG1vdW50IChkZWZh dWx0KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBUZXN0 IDAwMjE6ICBtb3VudCAoaW52YWxpZCBkZXZpY2UpICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIC4uLiBQQVNTCiAgVGVzdCAwMDIyOiAgbW91bnQgKGNoZWNrIG1vdW50IGRpcmVjdG9yeSBz dWItZGlyZWN0b3JpZXMpICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAyMzogIG1vdW50IChvcHRp b25zKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBUZXN0 IDAwMzA6ICBOdW1iZXIgb2YgZmlsZXMgKGRlZmF1bHQpICAgICAgICAgICAgICAgICAgICAgICAg ICAgIC4uLiBQQVNTCiAgVGVzdCAwMDMxOiAgTnVtYmVyIG9mIGZpbGVzIChhZ2dyX2NudikgICAg ICAgICAgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDAzMjogIE51bWJlciBvZiBm aWxlcyB1c2luZyBzdGF0IChkZWZhdWx0KSAgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBUZXN0 IDAwMzM6ICBOdW1iZXIgb2YgZmlsZXMgdXNpbmcgc3RhdCAoYWdncl9jbnYpICAgICAgICAgICAg ICAgIC4uLiBQQVNTCiAgVGVzdCAwMDM0OiAgTnVtYmVyIG9mIGJsb2NrcyB1c2luZyBzdGF0IChk ZWZhdWx0KSAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAzNTogIE51bWJlciBvZiBi bG9ja3MgdXNpbmcgc3RhdCAoYWdncl9jbnYpICAgICAgICAgICAgICAgLi4uIFBBU1MKICBUZXN0 IDAwNDA6ICBGaWxlcyBwZXJtaXNzaW9ucyAoZGVmYXVsdCkgICAgICAgICAgICAgICAgICAgICAg ICAgIC4uLiBQQVNTCiAgVGVzdCAwMDQxOiAgRmlsZXMgcGVybWlzc2lvbnMgKGFnZ3JfY252KSAg ICAgICAgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA0MjogIEZpbGVzIHBlcm1p c3Npb25zIChzZXQgdmFsdWUpICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBUZXN0 IDAwNDM6ICBGaWxlcyBwZXJtaXNzaW9ucyAoc2V0IHZhbHVlICsgYWdncl9jbnYpICAgICAgICAg ICAgIC4uLiBza2lwCiAgVGVzdCAwMDUwOiAgRmlsZXMgb3duZXIgKGRlZmF1bHQpICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA1MTogIEZpbGVzIG93bmVy IChhZ2dyX2NudikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIHNraXAKICBUZXN0 IDAwNTI6ICBGaWxlcyBvd25lciAoc2V0IHZhbHVlKSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIC4uLiBQQVNTCiAgVGVzdCAwMDUzOiAgRmlsZXMgb3duZXIgKHNldCB2YWx1ZSArIGFnZ3Jf Y252KSAgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA2MDogIEZpbGVzIHNpemUg KGRlZmF1bHQpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBUZXN0 IDAwNjE6ICBGaWxlcyBzaXplIChhZ2dyX2NudikgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIC4uLiBza2lwCiAgVGVzdCAwMDcwOiAgQ29udmVudGlvbmFsIGZpbGUgdHJ1bmNhdGUgICAg ICAgICAgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA3MTogIENvbnZlbnRpb25h bCBmaWxlIHRydW5jYXRlIChhZ2dyX2NudikgICAgICAgICAgICAgICAgLi4uIHNraXAKICBUZXN0 IDAwNzI6ICBDb252ZW50aW9uYWwgZmlsZSB1bmxpbmsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIC4uLiBza2lwCiAgVGVzdCAwMDczOiAgQ29udmVudGlvbmFsIGZpbGUgdW5saW5rIChhZ2dy X2NudikgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA3NDogIENvbnZlbnRpb25h bCBmaWxlIHJhbmRvbSB3cml0ZSAgICAgICAgICAgICAgICAgICAgICAgLi4uIHNraXAKICBUZXN0 IDAwNzU6ICBDb252ZW50aW9uYWwgZmlsZSByYW5kb20gd3JpdGUgKGRpcmVjdCkgICAgICAgICAg ICAgIC4uLiBza2lwCiAgVGVzdCAwMDc2OiAgQ29udmVudGlvbmFsIGZpbGUgcmFuZG9tIHdyaXRl IChhZ2dyX2NudikgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA3NzogIENvbnZlbnRpb25h bCBmaWxlIHJhbmRvbSB3cml0ZSAoYWdncl9jbnYsIGRpcmVjdCkgICAgLi4uIHNraXAKICBUZXN0 IDAwNzg6ICBDb252ZW50aW9uYWwgZmlsZSBtbWFwIHJlYWQvd3JpdGUgICAgICAgICAgICAgICAg ICAgIC4uLiBza2lwCiAgVGVzdCAwMDc5OiAgQ29udmVudGlvbmFsIGZpbGUgbW1hcCByZWFkL3dy aXRlIChhZ2dyX2NudikgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA4MDogIFNlcXVlbnRpYWwg ZmlsZSB0cnVuY2F0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBUZXN0 IDAwODE6ICBTZXF1ZW50aWFsIGZpbGUgdW5saW5rICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIC4uLiBQQVNTCiAgVGVzdCAwMDgyOiAgU2VxdWVudGlhbCBmaWxlIGJ1ZmZlcmVkIHdyaXRl IElPICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA4MzogIFNlcXVlbnRpYWwg ZmlsZSBvdmVyd3JpdGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBUZXN0 IDAwODQ6ICBTZXF1ZW50aWFsIGZpbGUgdW5hbGlnbmVkIHdyaXRlIChzeW5jIElPKSAgICAgICAg ICAgIC4uLiBQQVNTCiAgVGVzdCAwMDg1OiAgU2VxdWVudGlhbCBmaWxlIHVuYWxpZ25lZCB3cml0 ZSAoYXN5bmMgSU8pICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA4NjogIFNlcXVlbnRpYWwg ZmlsZSBhcHBlbmQgKHN5bmMpICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBUZXN0 IDAwODc6ICBTZXF1ZW50aWFsIGZpbGUgYXBwZW5kIChhc3luYykgICAgICAgICAgICAgICAgICAg ICAgIC4uLiBQQVNTCiAgVGVzdCAwMDg4OiAgU2VxdWVudGlhbCBmaWxlIHJhbmRvbSByZWFkICAg ICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA4OTogIFNlcXVlbnRpYWwg ZmlsZSBtbWFwIHJlYWQvd3JpdGUgICAgICAgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBUZXN0 IDAwOTA6ICBzZXF1ZW50aWFsIGZpbGUgNEsgc3luY2hyb25vdXMgd3JpdGUgICAgICAgICAgICAg ICAgIC4uLiBQQVNTCiAgVGVzdCAwMDkxOiAgU2VxdWVudGlhbCBmaWxlIGxhcmdlIHN5bmNocm9u b3VzIHdyaXRlICAgICAgICAgICAgICAuLi4gUEFTUwoKNDYgLyA0NiB0ZXN0cyBwYXNzZWQKCiog V2l0aG91dCBDT05GSUdfQkxLX0RFVl9aT05FRCBudm1lIHRlc3RzIDotCi0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCgojCiMgZ3JlcCAtaSBibGtfZGV2X3pvbmVkIC5jb25maWcKIyBDT05GSUdfQkxL X0RFVl9aT05FRCBpcyBub3Qgc2V0CiMgbWFrZWogTT1kcml2ZXJzL252bWUvIGNsZWFuIAogIENM RUFOICAgZHJpdmVycy9udm1lLy9Nb2R1bGUuc3ltdmVycwojIG1ha2VqIE09ZHJpdmVycy9udm1l LyAKICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9jb3JlLm8KICBDQyBbTV0gIGRyaXZlcnMv bnZtZS8vaG9zdC90cmFjZS5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL2hvc3QvbGlnaHRudm0u bwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvY29yZS5vCiAgQ0MgW01dICBkcml2ZXJz L252bWUvL2hvc3QvaHdtb24ubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvY29uZmln ZnMubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L3BjaS5vCiAgQ0MgW01dICBkcml2ZXJz L252bWUvL3RhcmdldC9hZG1pbi1jbWQubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L2Zh YnJpY3MubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L3JkbWEubwogIENDIFtNXSAgZHJp dmVycy9udm1lLy90YXJnZXQvZmFicmljcy1jbWQubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90 YXJnZXQvZGlzY292ZXJ5Lm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9mYy5vCiAgQ0Mg W01dICBkcml2ZXJzL252bWUvL3RhcmdldC9pby1jbWQtZmlsZS5vCiAgQ0MgW01dICBkcml2ZXJz L252bWUvL2hvc3QvdGNwLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L2lvLWNtZC1i ZGV2Lm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L3Bhc3N0aHJ1Lm8KICBDQyBbTV0g IGRyaXZlcnMvbnZtZS8vdGFyZ2V0L3RyYWNlLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vdGFy Z2V0L2xvb3AubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvcmRtYS5vCiAgQ0MgW01d ICBkcml2ZXJzL252bWUvL3RhcmdldC9mYy5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3Rhcmdl dC9mY2xvb3AubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvdGNwLm8KICBMRCBbTV0g IGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252bWUtbG9vcC5vCiAgTEQgW01dICBkcml2ZXJzL252bWUv L3RhcmdldC9udm1lLWZjbG9vcC5vCiAgTEQgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1l dC10Y3AubwogIExEIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L252bWUtZmFicmljcy5vCiAgTEQg W01dICBkcml2ZXJzL252bWUvL2hvc3QvbnZtZS5vCiAgTEQgW01dICBkcml2ZXJzL252bWUvL2hv c3QvbnZtZS1yZG1hLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252bWV0LXJkbWEu bwogIExEIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvbnZtZXQubwogIExEIFtNXSAgZHJpdmVy cy9udm1lLy90YXJnZXQvbnZtZXQtZmMubwogIExEIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L252 bWUtdGNwLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLWZjLm8KICBMRCBbTV0g IGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLWNvcmUubwogIE1PRFBPU1QgZHJpdmVycy9udm1lLy9N b2R1bGUuc3ltdmVycwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L252bWUtY29yZS5tb2Qu bwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L252bWUtZmFicmljcy5tb2QubwogIENDIFtN XSAgZHJpdmVycy9udm1lLy9ob3N0L252bWUtZmMubW9kLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZt ZS8vaG9zdC9udm1lLXJkbWEubW9kLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1l LXRjcC5tb2QubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L252bWUubW9kLm8KICBDQyBb TV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252bWUtZmNsb29wLm1vZC5vCiAgQ0MgW01dICBkcml2 ZXJzL252bWUvL3RhcmdldC9udm1lLWxvb3AubW9kLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8v dGFyZ2V0L252bWV0LWZjLm1vZC5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1l dC1yZG1hLm1vZC5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1ldC10Y3AubW9k Lm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252bWV0Lm1vZC5vCiAgTEQgW01dICBk cml2ZXJzL252bWUvL3RhcmdldC9udm1lLWZjbG9vcC5rbwogIExEIFtNXSAgZHJpdmVycy9udm1l Ly9ob3N0L252bWUtdGNwLmtvCiAgTEQgW01dICBkcml2ZXJzL252bWUvL2hvc3QvbnZtZS1jb3Jl LmtvCiAgTEQgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1ldC10Y3Aua28KICBMRCBbTV0g IGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252bWUtbG9vcC5rbwogIExEIFtNXSAgZHJpdmVycy9udm1l Ly90YXJnZXQvbnZtZXQtZmMua28KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLWZh YnJpY3Mua28KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLWZjLmtvCiAgTEQgW01d ICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1ldC1yZG1hLmtvCiAgTEQgW01dICBkcml2ZXJzL252 bWUvL2hvc3QvbnZtZS1yZG1hLmtvCiAgTEQgW01dICBkcml2ZXJzL252bWUvL2hvc3QvbnZtZS5r bwogIExEIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvbnZtZXQua28KIwojIGNkYmxrdGVzdHMg CiMgLi9jaGVjayB0ZXN0cy9udm1lLwpudm1lLzAwMiAoY3JlYXRlIG1hbnkgc3Vic3lzdGVtcyBh bmQgdGVzdCBkaXNjb3ZlcnkpICAgICAgICAgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgICAgLi4uICAy Ny42NDBzCm52bWUvMDAzICh0ZXN0IGlmIHdlJ3JlIHNlbmRpbmcga2VlcC1hbGl2ZXMgdG8gYSBk aXNjb3ZlcnkgY29udHJvbGxlcikgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDEwLjE0NXMgIC4uLiAg MTAuMTQ3cwpudm1lLzAwNCAodGVzdCBudm1lIGFuZCBudm1ldCBVVUlEIE5TIGRlc2NyaXB0b3Jz KSAgICAgICAgICAgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDEuNzEzcyAgLi4uICAxLjcxMnMKbnZt ZS8wMDUgKHJlc2V0IGxvY2FsIGxvb3BiYWNrIHRhcmdldCkgICAgICAgICAgICAgICAgICAgICAg IFtub3QgcnVuXQogICAgbnZtZV9jb3JlIG1vZHVsZSBkb2VzIG5vdCBoYXZlIHBhcmFtZXRlciBt dWx0aXBhdGgKbnZtZS8wMDYgKGNyZWF0ZSBhbiBOVk1lT0YgdGFyZ2V0IHdpdGggYSBibG9jayBk ZXZpY2UtYmFja2VkIG5zKSBbcGFzc2VkXQogICAgcnVudGltZSAgMC4xMTFzICAuLi4gIDAuMTE1 cwpudm1lLzAwNyAoY3JlYXRlIGFuIE5WTWVPRiB0YXJnZXQgd2l0aCBhIGZpbGUtYmFja2VkIG5z KSAgICAgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDAuMDgxcyAgLi4uICAwLjA2OXMKbnZtZS8wMDgg KGNyZWF0ZSBhbiBOVk1lT0YgaG9zdCB3aXRoIGEgYmxvY2sgZGV2aWNlLWJhY2tlZCBucykgW3Bh c3NlZF0KICAgIHJ1bnRpbWUgIDEuNjkwcyAgLi4uICAxLjcyN3MKbnZtZS8wMDkgKGNyZWF0ZSBh biBOVk1lT0YgaG9zdCB3aXRoIGEgZmlsZS1iYWNrZWQgbnMpICAgICAgIFtwYXNzZWRdCiAgICBy dW50aW1lICAxLjY1OXMgIC4uLiAgMS42NjFzCm52bWUvMDEwIChydW4gZGF0YSB2ZXJpZmljYXRp b24gZmlvIGpvYiBvbiBOVk1lT0YgYmxvY2sgZGV2aWNlLWJhY2tlZCBucykgW3Bhc3NlZF0KICAg IHJ1bnRpbWUgIDI4Ljc4MXMgIC4uLiAgMzAuMTY2cwpudm1lLzAxMSAocnVuIGRhdGEgdmVyaWZp Y2F0aW9uIGZpbyBqb2Igb24gTlZNZU9GIGZpbGUtYmFja2VkIG5zKSBbcGFzc2VkXQogICAgcnVu dGltZSAgMjUzLjgzMXMgIC4uLiAgMjM4Ljc3NHMKbnZtZS8wMTIgKHJ1biBta2ZzIGFuZCBkYXRh IHZlcmlmaWNhdGlvbiBmaW8gam9iIG9uIE5WTWVPRiBibG9jayBkZXZpY2UtYmFja2VkIG5zKSBb cGFzc2VkXQogICAgcnVudGltZSAgNDAuMDAzcyAgLi4uICA2OC4wNzZzCm52bWUvMDEzIChydW4g bWtmcyBhbmQgZGF0YSB2ZXJpZmljYXRpb24gZmlvIGpvYiBvbiBOVk1lT0YgZmlsZS1iYWNrZWQg bnMpIFtwYXNzZWRdCiAgICBydW50aW1lICAyNzIuNjQ5cyAgLi4uICAyODMuNzIwcwpudm1lLzAx NCAoZmx1c2ggYSBOVk1lT0YgYmxvY2sgZGV2aWNlLWJhY2tlZCBucykgICAgICAgICAgICAgW3Bh c3NlZF0KICAgIHJ1bnRpbWUgIDIxLjc3MnMgIC4uLiAgMjEuMzk3cwpudm1lLzAxNSAodW5pdCB0 ZXN0IGZvciBOVk1lIGZsdXNoIGZvciBmaWxlIGJhY2tlZCBucykgICAgICAgW3Bhc3NlZF0KICAg IHJ1bnRpbWUgIDIxLjkwOHMgIC4uLiAgMTguNjIycwpudm1lLzAxNiAoY3JlYXRlL2RlbGV0ZSBt YW55IE5WTWVPRiBibG9jayBkZXZpY2UtYmFja2VkIG5zIGFuZCB0ZXN0IGRpc2NvdmVyeSkgW3Bh c3NlZF0KICAgIHJ1bnRpbWUgIDE1Ljg2MHMgIC4uLiAgMTguMzEzcwpudm1lLzAxNyAoY3JlYXRl L2RlbGV0ZSBtYW55IGZpbGUtbnMgYW5kIHRlc3QgZGlzY292ZXJ5KSAgICAgW3Bhc3NlZF0KICAg IHJ1bnRpbWUgIDE2LjQ3MHMgIC4uLiAgMTguMzc0cwpudm1lLzAxOCAodW5pdCB0ZXN0IE5WTWUt b0Ygb3V0IG9mIHJhbmdlIGFjY2VzcyBvbiBhIGZpbGUgYmFja2VuZCkgW3Bhc3NlZF0KICAgIHJ1 bnRpbWUgIDEuNjY1cyAgLi4uICAxLjg5MHMKbnZtZS8wMTkgKHRlc3QgTlZNZSBEU00gRGlzY2Fy ZCBjb21tYW5kIG9uIE5WTWVPRiBibG9jay1kZXZpY2UgbnMpIFtwYXNzZWRdCiAgICBydW50aW1l ICAxLjY4MXMgIC4uLiAgMS45ODJzCm52bWUvMDIwICh0ZXN0IE5WTWUgRFNNIERpc2NhcmQgY29t bWFuZCBvbiBOVk1lT0YgZmlsZS1iYWNrZWQgbnMpIFtwYXNzZWRdCiAgICBydW50aW1lICAxLjY0 NXMgIC4uLiAgMS45MTNzCm52bWUvMDIxICh0ZXN0IE5WTWUgbGlzdCBjb21tYW5kIG9uIE5WTWVP RiBmaWxlLWJhY2tlZCBucykgICBbcGFzc2VkXQogICAgcnVudGltZSAgMS42NDhzICAuLi4gIDEu OTU2cwpudm1lLzAyMiAodGVzdCBOVk1lIHJlc2V0IGNvbW1hbmQgb24gTlZNZU9GIGZpbGUtYmFj a2VkIG5zKSAgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDIuMDYzcyAgLi4uICAyLjU1M3MKbnZtZS8w MjMgKHRlc3QgTlZNZSBzbWFydC1sb2cgY29tbWFuZCBvbiBOVk1lT0YgYmxvY2stZGV2aWNlIG5z KSBbcGFzc2VkXQogICAgcnVudGltZSAgMS42OTJzICAuLi4gIDIuNTg4cwpudm1lLzAyNCAodGVz dCBOVk1lIHNtYXJ0LWxvZyBjb21tYW5kIG9uIE5WTWVPRiBmaWxlLWJhY2tlZCBucykgW3Bhc3Nl ZF0KICAgIHJ1bnRpbWUgIDEuNjQzcyAgLi4uICAxLjY1NnMKbnZtZS8wMjUgKHRlc3QgTlZNZSBl ZmZlY3RzLWxvZyBjb21tYW5kIG9uIE5WTWVPRiBmaWxlLWJhY2tlZCBucykgW3Bhc3NlZF0KICAg IHJ1bnRpbWUgIDEuNjQwcyAgLi4uICAxLjY2OHMKbnZtZS8wMjYgKHRlc3QgTlZNZSBucy1kZXNj cyBjb21tYW5kIG9uIE5WTWVPRiBmaWxlLWJhY2tlZCBucykgW3Bhc3NlZF0KICAgIHJ1bnRpbWUg IDEuNjQzcyAgLi4uICAxLjk2MXMKbnZtZS8wMjcgKHRlc3QgTlZNZSBucy1yZXNjYW4gY29tbWFu ZCBvbiBOVk1lT0YgZmlsZS1iYWNrZWQgbnMpIFtwYXNzZWRdCiAgICBydW50aW1lICAxLjY0MXMg IC4uLiAgMS42NzdzCm52bWUvMDI4ICh0ZXN0IE5WTWUgbGlzdC1zdWJzeXMgY29tbWFuZCBvbiBO Vk1lT0YgZmlsZS1iYWNrZWQgbnMpIFtwYXNzZWRdCiAgICBydW50aW1lICAxLjY0OHMgIC4uLiAg MS44NjhzCm52bWUvMDI5ICh0ZXN0IHVzZXJzcGFjZSBJTyB2aWEgbnZtZS1jbGkgcmVhZC93cml0 ZSBpbnRlcmZhY2UpIFtwYXNzZWRdCiAgICBydW50aW1lICAxLjk4MnMgIC4uLiAgMi43MDNzCm52 bWUvMDMwIChlbnN1cmUgdGhlIGRpc2NvdmVyeSBnZW5lcmF0aW9uIGNvdW50ZXIgaXMgdXBkYXRl ZCBhcHByb3ByaWF0ZWx5KSBbcGFzc2VkXQogICAgcnVudGltZSAgMC4zMDhzICAuLi4gIDAuMzI4 cwpudm1lLzAzMSAodGVzdCBkZWxldGlvbiBvZiBOVk1lT0YgY29udHJvbGxlcnMgaW1tZWRpYXRl bHkgYWZ0ZXIgc2V0dXApIFtwYXNzZWRdCiAgICBydW50aW1lICA1LjQzMnMgIC4uLiAgNy40OTVz Cm52bWUvMDM4ICh0ZXN0IGRlbGV0aW9uIG9mIE5WTWVPRiBzdWJzeXN0ZW0gd2l0aG91dCBlbmFi bGluZykgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDAuMDUzcyAgLi4uICAwLjA0NnMKLS0gCjIuMjIu MQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkxpbnV4 LW52bWUgbWFpbGluZyBsaXN0CkxpbnV4LW52bWVAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8v bGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LW52bWUK