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 2ACA7C433DB for ; Thu, 11 Mar 2021 04:39:53 +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 352B264FA1 for ; Thu, 11 Mar 2021 04:39:52 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 352B264FA1 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=SNIhnSyFZ6fhhkI5KUVg6ANxkChy2DTo7y3b3wgGCQ4=; b=IdM6JNXfGluRlagjP3gA2qjeBA dwOZa2cyBN9Wyoz/R+/oh1ALeQEE2yufHELhUSxItP9tR/1x7nmHSWQFc+9UD2/M21RBcAI3hBenb D/6xx4nEHXMvkFhFc368mUt/IH1kjkijm7AxObT5nfXv8kohUcbffw+VxTRDjOJCB/HzWNcohzHoO tjIkoNOvpTVZ6NNwot5xZYE9Q8Er44yq9iQET7zabDBaBzjx8ddJnyTo0EXi2BN7WjEJdHixCX6jz WjFzmSAtvdbMnaTpxEjI3gMYmIylalfVwnB1juknIBzH5hF0uqvTIl/Z6kze9xpdoN0F2WUvtBE4e FogZAXYA==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1lKD6i-008Lrd-WA; Thu, 11 Mar 2021 04:39:33 +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 1lKD6a-008Lr6-B7 for linux-nvme@lists.infradead.org; Thu, 11 Mar 2021 04:39:28 +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=1615437564; x=1646973564; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=dSrGiR4bNEmZGC9Cv7kL7eQBL2oBsOiLbfX6pZXeoFA=; b=frUEs7WiH/PM6BzYLugv5k9DIZyWvrI7V6eGLNeuqNnSljjqMh2i2Iu9 E2afPye+Lb0JEGOyQk+n5DHVaWx63aanOUXv3a7sj0od4dVhODzDJ2RVz ZG3NOsDeoKwwisG24o8W31FjM2hvTSxAEtNDGlNeTKqQfdw7viO6/RHMc KhgR6j021UG3NrfypKaTOC7p36NudOBpIhFAfzmW4BI4d2bM2uI1IQuNB W0o+cd8nweHqydaQ1/+g62ws2xmcrhvw7m+jOvK/rFix65QZo/5HO4kAR 1MJCN5feOajdu5PAI4C+xCZBgTWlqITGFxgwjkIm+genAupKq7FndCjJH Q==; IronPort-SDR: blw1h6KFx8D7YfXRij/7QamAu1ogzawFvurE/OYuhXWCL6ggNh6Q0yztRSDwyhh9XNBeLIBeYr Mf/LqGP69LkEvuEP7N2QEVowQb2mR8shfQkoorVjKKdu+7Xz/zE13Zu4RbYcw+k+Z/izWUg66T HdYgR3mH9R/U0MyKylrDGEhrBkJPvEAqlysPu6Ek+Mai/rYzJnovw3mFlwSqFu4CJQdPB+LM56 iEvFaONotmmPk3EFY2nKWPskCZS1TcRsZ8xaUr1knmMdffpKSJIKQdpwIm0pS62z9LWTDwBZEa eI8= X-IronPort-AV: E=Sophos;i="5.81,239,1610380800"; d="scan'208";a="161873182" Received: from uls-op-cesaip01.wdc.com (HELO uls-op-cesaep01.wdc.com) ([199.255.45.14]) by ob1.hgst.iphmx.com with ESMTP; 11 Mar 2021 12:39:19 +0800 IronPort-SDR: ic4hpxse6rvhPV+iu/K4TulufJJLxvdSc3IdCq6nBgEAvsFDUDj6PtpyvJuEuI+n9gVP9CGc8u PumcFPgIIscwgddykgjFABvwwj1Y9qE3CA1SYJyHvZAMygsQbg75BGVv/LoiftOjmjZac7cjse 6yvPa2xA6s8xkkwjjDw/KQT9IJr1MB9JYHaYdH2tmkSAgohiwV0wjPRu/wimjXR33Rt/qsOesV go5+EnzvRrQdVa4Uwvweg1AvOnw0nFHQ5ZvIb/pMlRREPx7DHEwGcylS3h5bnUsm8bdTu2TqT3 9KtbH4gOgkzeuwo9ZZY893rk Received: from uls-op-cesaip01.wdc.com ([10.248.3.36]) by uls-op-cesaep01.wdc.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Mar 2021 20:21:59 -0800 IronPort-SDR: CJzDgc9B1Zwr4gU/ICd38cNU5QAvNYgUrLi86kQvyuQx9gILwu1+M5d+vrSxoIwpbIdAkZvSdC Wvw2CWLmGrht2bHd6JO5+BWa6ZnJCGhHMRY7vqOfDZRnextuEbGrM2FDBKDJ2/w2Q9p6h9TVL2 wS2/G5/0LQYemF+whqGcOlz3DbsL10SZCbDZybASXiTRRkqShfzNYv7l93AnIvkxctC9Zm8GLe S0ZtRD+im1SsY9sjVRha59mkLpP6iGtUPGIuVO7rNH9UK67bi8jP7/ImC2kKGzVFrNagQaXXq4 Q28= 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 20:39:20 -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 V11 0/4] nvmet: add ZBD backend support Date: Wed, 10 Mar 2021 20:39:04 -0800 Message-Id: <20210311043908.26146-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_043925_064715_38394AD8 X-CRM114-Status: GOOD ( 33.24 ) 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 CkNoYW5nZXMgZnJvbSBWMTA6LQoKMS4gIE1vdmUgQ09ORklHX0JMS19ERVZfWk9ORUQgY2hlY2sg aW50byB0aGUgY2FsbGVyIG9mCiAgICBudm1ldF9zZXRfY3NpX3puc19lZmZlY3RzKCkuCjIuICBN b3ZlIFpOUyByZWxhdGVkIGNzaSBjb2RlIGZyb20gY3NpIHBhdGNoIHRvIGl0cyBvd24gWk5TIGJh Y2tlbmQKICAgIHBhdGNoLgozLiAgRm9yIFpOUyBjb21tYW5kIGVmZmVjdHMgbG9ncyBzZXQgZGVm YXVsdCBjb21tYW5kIGVmZmVjdHMgd2l0aCAKICAgIG52bWV0X3NldF9jc2lfbnZtX2VmZmVjdHMo KSBhbG9uZyB3aXRoIG52bWV0X3NldF9jc2lfem5zX2VmZmVjdHMoKS4KNC4gIFVzZSBnb3RvIGZv ciBmYWlsdXJlIGNhc2UgaW4gdGhlIG52bWV0X3NldF9jc2lfem5zX2VmZmVjdHMoKS4KNS4gIFJl dHVybiBkaXJlY3RseSBmcm9tIHN3aWN0aCBpbiBudm1ldF9leGVjdXRlX2lkZW50aWZ5X2Rlc2Ns aXN0X2NzaSgpLgo2LiAgTWVyZ2UgUGF0Y2ggMm5kLzNyZCBpbnRvIG9uZSBwYXRjaCBhbmQgbW92 ZSBaTlMgcmVsYXRlZCBjb2RlCiAgICBpbnRvIGl0cyBvd24gOi0KICAgICBbUEFUQ0ggVjEwIDIv OF0gbnZtZXQ6IGFkZCBOVk0gQ29tbWFuZCBTZXQgSWRlbnRpZmllciBzdXBwb3J0CiAgICAgW1BB VENIIFYxMCAzLzhdIG52bWV0OiBhZGQgY29tbWFuZCBzZXQgc3VwcG9ydGVkIGN0cmwgY2FwCiAg ICBNZXJnZWQgaW50byBuZXcgcGF0Y2ggbWludXggWk5TIGNhbGxzIDotCiAgICAgW1BBVENIIFYx MSAxLzRdIG52bWV0OiBhZGQgTlZNIENvbW1hbmQgU2V0IElkZW50aWZpZXIgc3VwcG9ydAo3LiAg TW92ZSByZXEtPmNtZC0+aWRlbnRpZnkuY3NpID09IE5WTUVfQ1NJX1pOUyBjaGVja3MgaW4gdG8g cmVzcGVjdGl2ZQogICAgY2FsbGVyIGluIG52bWV0X2V4ZWN1dGVfaWRlbnRpZnkoKS4KOC4gIFVw ZGF0ZSBlcnJvciBsb2cgcGFnZSBpbiBudm1ldF9iZGV2X3puc19jaGVja3MoKS4KOS4gIFJlbW92 ZSB0aGUgdGVybmV5IGV4cHJlc3Npb24gbnZtZXRfem5zX3VwZGF0ZV96YXNsKCkuCjEwLiBEcm9w IGZvbGxvd2luZyBwYXRjaGVzOi0KICAgICBbUEFUQ0ggVjEwIDEvOF0gbnZtZXQ6IHRyaW0gYXJn cyBmb3IgbnZtZXRfY29weV9uc19pZGVudGlmaWVyKCkKICAgICBbUEFUQ0ggVjEwIDYvOF0gbnZt ZS1jb3JlOiBjaGVjayBjdHJsIGNzcyBiZWZvcmUgc2V0dGluZyB1cCB6bnMKICAgICBbUEFUQ0gg VjEwIDcvOF0gbnZtZS1jb3JlOiBhZGQgYSBoZWxwZXIgdG8gcHJpbnQgY3NzIHJlbGF0ZWQgZXJy b3IKCkNoYW5nZXMgZnJvbSBWOTotCgoxLiAgVXNlIGJpb19hZGRfem9uZV9hcHBlbmRfcGFnZSgp IGZvciBSRVFfT1BfWk9ORV9BUFBFTkQuCjIuICBBZGQgYSBzZXBhcmF0ZSBwcmVwIHBhdGNoIHRv IHJlZHVjZSB0aGUgYXJndW1lbnRzIGZvcgogICAgbnZtZXRfY29weV9uc19pZGVudGlmaWVyKCku CjMuICBBZGQgYSBzZXBhcmF0ZSBwYXRjaCBmb3IgbnZtZXQgQ1NJIHN1cHBvcnQuCjQuICBBZGQg YSBzZXBhcmF0ZSBwYXRjaCBmb3IgbnZtZXQgQ1NTIHN1cHBvcnQuCjUuICBNb3ZlIG52bWV0X2Nj X2Nzc19jaGVjaygpIHRvIG11bHRpLWNzcyBzdXBwb3J0ZWQgcGF0Y2guCjYuICBSZXR1cm4gZXJy b3IgaW4gY3NpIGNtZCBlZmZlY3RzIGhlbHBlciB3aGVuICFDT05GSUdfQkxLX0RFVl9aT05FRC4K Ny4gIFJldHVybiBlcnJvciBpbiBpZCBkZXNjIGxpc3QgaGVscGVyIHdoZW4gIUNPTkZJR19CTEtf REVWX1pPTkVELgo4LiAgUmVtb3ZlIGdvdG8gYW5kIHJldHVybiBmcm9tIG52bWV0X2JkZXZfem5z X2NoZWNrcygpLgo5LiAgTW92ZSBucl96b25lcyBjYWxjdWxhdGlvbnMgbmVhciBjYWxsIHRvIGJs a2Rldl9yZXBvcnRfem9uZXMoKSBpbgogICAgbnZtZXRfYmRldl9leGVjdXRlX3pvbmVfbWdtdF9y ZWN2KCkuCjEwLiBTcGxpdCBjb21tYW5kIGVmZmVjdHMgbG9ncyBpbnRvIHJlc3BlY3RpdmUgQ1NJ IGhlbHBlcnMuCjExLiBEb24ndCB1c2UgdGhlIGxvY2FsIHZhcmlhYmxlcyB0byBwYXNzIE5WTUVf Q1NJX1hYWCB2YWx1ZXMsIGluc3RlYWQKICAgIHVzZSByZXEtPm5zLT5jc2ksIGFsc28gbW92ZSB0 aGlzIGZyb20gWkJEIHN1cHBvcnQgcGF0Y2ggdG8gbnZtZXQKICAgIENTSSBzdXBwb3J0LgoxMi4g Rml4IHRoZSBidWcgdGhhdCBpcyBjaGVrY2luZyBjbnMgdmFsdWUgaW5zdGVhZCBvZiBjc2kgaW4g aWRlbnRpZnkuCjEzLiBiZGV2X2lzX3pvbmVkKCkgaXMgc3R1YmJlZCBvdXQgdGhlIENPTkZJR19C TEtfREVWX1pPTkVELCBzbyByZW1vdmUKICAgIHRoZSBjaGVjayBmb3IgQ09ORklHX0JMS19ERVZf Wk9ORUQgYmVmb3JlIGNhbGxpbmcgYmRldl9pc196b25lZCgpLgoxNCAgRHJvcCBmb2xsd2luZyBw YXRjaGVzIDotCiAgICBbUEFUQ0ggVjkgMS85XSBibG9jazogZXhwb3J0IGJpb19hZGRfaHdfcGFn ZXMoKS4KICAgIFtQQVRDSCBWOSA1LzldIG52bWV0OiBhZGQgYmlvIGdldCBoZWxwZXIuCiAgICBb UEFUQ0ggVjkgNi85XSBudm1ldDogYWRkIGJpbyBpbml0IGhlbHBlci4KICAgIFtQQVRDSCBWOSA4 LzldIG52bWV0OiBhZGQgY29tbW9uIEkvTyBsZW5ndGggY2hlY2sgaGVscGVyLgogICAgW1BBVENI IFY5IDkvOV0gbnZtZXQ6IGNhbGwgbnZtZXRfYmlvX2RvbmUoKSBmb3Igem9uZSBhcHBlbmQuCjE1 LiBBZGQgYSBwYXRjaCB0byBjaGVjayBmb3IgY3RybCBiaXRzIHRvIG1ha2Ugc3VyZSBjdHJsIHN1 cHBvcnRzIHRoZQogICAgbXVsdGkgY3NzIG9uIHRoZSBob3N0IHNpZGUgd2hlbiBzZXR0aW5nIHVw IFpvbmVkIE5hbWVzcGFjZS4KMTcuIEFkZCBhIGRvY3VtZW50YXRpb24gcGF0Y2ggZm9yIHRoZSBo b3N0IHNpZGUgd2hlbiBjYWxjdWxhdGluZyB0aGUKICAgIGJ1ZmZlciBzaXplIGFsbG9jYXRpb24g c2l6ZSBmb3IgdGhlIHJlcG9ydCB6b25lcy4KMTYuIFJlYmFzZSBhbmQgcmV0ZXN0IDUuMTItcmMx LgoKQ2hhbmdlcyBmcm9tIFY4Oi0KCjEuIFJlYmFzZSBhbmQgcmV0ZXN0IG9uIGxhdGVzdCBudm1l LTUuMTEuCjIuIEV4cG9ydCBjdHJsLT5jYXAgY3NpIHN1cHBvcnQgb25seSBpZiBDT05GSUdfQkxL X0RFVl9aT05FIGlzIHNldC4KMy4gQWRkIGEgZml4IHRvIGFkbWluIG5zLWRlc2MgbGlzdCBoYW5k bGVyIGZvciBoYW5kbGluZyBkZWZhdWx0IGNzaS4KCkNoYW5nZXMgZnJvbSBWNzotCgoxLiBKdXN0 IGxpa2Ugd2hhdCBibG9jayBsYXllciBwcm92aWRlcyBhbiBBUEkgZm9yIGJpb19pbml0KCksIHBy b3ZpZGUKICAgbnZtZXRfYmlvX2luaXQoKSBzdWNoIHRoYXQgd2UgbW92ZSBiaW8gaW5pdGlhbGl6 YXRpb24gY29kZSBmb3IKICAgbnZtZS1yZWFkLXdyaXRlIGNvbW1hbmRzIGZyb20gYmRldiBhbmQg em5zIGJhY2tlbmQgaW50byB0aGUgY2VudHJhbGl6ZQogICBoZWxwZXIuIAoyLiBXaXRoIGJkZXYv em5zL2ZpbGUgbm93IHdlIGhhdmUgdGhyZWUgYmFja2VuZHMgdGhhdCBhcmUgY2hlY2tpbmcgZm9y CiAgIHJlcS0+c2dfY250IGFuZCBjYWxsaW5nIG52bWV0X2NoZWNrX3RyYW5zZmVyX2xlbigpIGJl Zm9yZSB3ZSBwcm9jZXNzCiAgIG52bWUtcmVhZC13cml0ZSBjb21tYW5kcy4gTW92ZSB0aGlzIGR1 cGxpY2F0ZSBjb2RlIGZyb20gdGhyZWUKICAgYmFja2VuZWRzIGludG8gdGhlIGhlbHBlci4KMy4g RXhwb3J0IGFuZCB1c2UgbnZtZXRfYmlvX2RvbmUoKSBjYWxsYmFjayBpbgogICBudm1ldF9leGVj dXRlX3pvbmVfYXBwZW5kKCkgaW5zdGVhZCBvZiB0aGUgb3BlbiBjb2RpbmcgdGhlIGZ1bmN0aW9u LgogICBUaGlzIGFsc28gYXZvaWRzIGNvZGUgZHVwbGljYXRpb24gZm9yIGJpbyAmIHJlcXVlc3Qg Y29tcGxldGlvbiB3aXRoCiAgIGVycm9yIGxvZyBwYWdlIHVwZGF0ZS4KNC4gQWRkIHpvbmVmcyB0 ZXN0cyBsb2cgZm9yIGRtIGxpbmVhciBkZXZpY2UgY3JlYXRlZCBvbiB0aGUgdG9wIG9mIFNNUiBI REQKICAgZXhwb3J0ZWQgd2l0aCBOVk1lT0YgWk5TIGJhY2tlbmQgd2l0aCB0aGUgaGVscCBvZiBu dm1lLWxvb3AuCgpDaGFuZ2VzIGZyb20gVjY6LQoKMS4gSW5zdGVhZCBvZiBjYWxsaW5nIHJlcG9y dCB6b25lcyB0byBmaW5kIGNvbnZlbnRpb25hbCB6b25lcyBpbiB0aGUgCiAgIGxvb3AgdXNlIHRo ZSBsb29wIGluc2lkZSBMTEQgYmxrZGV2X3JlcG9ydF96b25lcygpLT5MTERfcmVwb3J0X3pvbmVz LAogICB0aGF0IGFsc28gc2ltcGxpZmllcyB0aGUgcmVwb3J0IHpvbmUgY2FsbGJhY2suCjIuIEZp eCB0aGUgYnVnIGluIG52bWV0X2JkZXZfaGFzX2NvbnZfem9uZXMoKS4KMy4gUmVtb3ZlIGNvbmRp dGlvbmFsIG9wZXJhdG9ycyBpbiB0aGUgbnZtZXRfYmRldl9leGVjdXRlX3pvbmVfYXBwZW5kKCku CgpDaGFuZ2VzIGZyb20gVjU6LQoKMS4gIFVzZSBiaW8tPmJpX2l0ZXIuYmlfc2VjdG9yIGZvciBy ZXN1bHQgb2YgdGhlIFJFUV9PUF9aT05FX0FQUEVORAogICAgY29tbWFuZC4KMi4gIEFkZCBlbmRp YW5uZXNzIHRvIHRoZSBoZWxwZXIgbnZtZXRfc2VjdF90b19sYmEoKS4KMy4gIE1ha2UgYnVmc2l6 ZSB1MzIgaW4gem9uZSBtZ210IHJlY3YgY29tbWFuZCBoYW5kbGVyLgo0LiAgQWRkIF9fR0ZQX1pF Uk8gZm9yIHJlcG9ydCB6b25lIGRhdGEgYnVmZmVyIHRvIHJldHVybiBjbGVhbiBidWZmZXIuCgpD aGFuZ2VzIGZyb20gVjQ6LQoKMS4gIERvbid0IHVzZSBiaW9faW92X2l0ZXJfZ2V0X3BhZ2VzKCkg aW5zdGVhZCBhZGQgYSBwYXRjaCB0byBleHBvcnQKICAgIGJpb19hZGRfaHdfcGFnZSgpIGFuZCBj YWxsIGl0IGRpcmVjdGx5IGZvciB6b25lIGFwcGVuZC4KMi4gIEFkZCBpbmxpbmUgdmVjdG9yIG9w dGltaXphdGlvbiBmb3IgYXBwZW5kIGJpby4KMy4gIFVwZGF0ZSB0aGUgY29tbWl0IGxvZ3MgZm9y IHRoZSBwYXRjaGVzLgo0LiAgUmVtb3ZlIFpOUyByZWxhdGVkIGlkZW50aWZ5IGRhdGEgc3RydWN0 dXJlcywgdXNlIGluZGl2aWR1YWwgbWVtYmVycy4KNS4gIEFkZCBhIGNvbW1lbnQgZm9yIG1hY3Jv IE5WTUVUX01QU01JTl9TSElGVC4KNi4gIFJlbW92ZSBudm1ldF9iZGV2KCkgaGVscGVyLgo3LiAg TW92ZSB0aGUgY29tbWFuZCBzZXQgaWRlbnRpZmllciBjb2RlIGludG8gY29tbW9uIGNvZGUuCjgu ICBVc2UgSVNfRU5BQkxFRCgpIGFuZCBtb3ZlIGhlbHBlcnMgZm9tciB6bnMuYyBpbnRvIGNvbW1v biBjb2RlLgo5LiAgQWRkIGEgcGF0Y2ggdG8gc3VwcG9ydCBDb21tYW5kIFNldCBpZGVudGlmaWVy cy4KMTAuIE9wZW4gY29kZSBudm1ldF9iZGV2X3ZhbGlkYXRlX3puc196b25lcygpLgoxMS4gUmVt b3ZlIHRoZSBwZXIgbmFtZXNwYWNlIG1pbiB6YXNsIGNhbGN1bGF0aW9uIGFuZCBkb24ndCBhbGxv dwogICAgbmFtZXNwYWNlcyB3aXRoIHphc2wgdmFsdWUgPiB0aGUgZmlyc3QgbnMgemFzbCB2YWx1 ZS4KMTIuIE1vdmUgdGhlIHN0dWJzIGludG8gdGhlIGhlYWRlciBmaWxlLgoxMy4gQWRkIGxiYSB0 by9mcm9tIHNlY3RvciBjb252ZXJzaW9uIGhlbHBlcnMgYW5kIHVwZGF0ZSB0aGUKICAgIGlvLWNt ZC1iZGV2LmMgdG8gYXZvaWQgdGhlIGNvZGUgZHVwbGljYXRpb24uCjE0LiBBZGQgZXZlcnl0aGlu ZyBpbnRvIG9uZSBwYXRjaCBmb3Igem5zIGNvbW1hbmQgaGFuZGxlcnMgYW5kIAogICAgcmVzcGVj dGl2ZSBjYWxscyBmcm9tIHRoZSB0YXJnZXQgY29kZS4KMTUuIFJlbW92ZSB0aGUgdHJpbSBucy1k ZXNjbGlzdCBhZG1pbiBjYWxsYmFjayBwYXRjaCBmcm9tIHRoaXMgc2VyaWVzLgoxNi4gQWRkIGJp byBnZXQgYW5kIHB1dCBoZWxwZXJzIHBhdGNoZXMgdG8gcmVkdWNlIHRoZSBkdXBsaWNhdGUgY29k ZSBpbgogICAgZ2VuZXJpYyBiZGV2LCBwYXNzdGhydSwgYW5kIGdlbmVyaWMgem5zIGJhY2tlbmQu CgpDaGFuZ2VzIGZyb20gVjM6LQoKMS4gIEdldCByaWQgb2YgdGhlIGJpb19tYXhfemFzbCBjaGVj ay4KMi4gIFJlbW92ZSBleHRyYSBsaW5lcy4KMy4gIFJlbW92ZSB0aGUgYmxvY2sgbGF5ZXIgYXBp IGV4cG9ydCBwYXRjaC4KNC4gIFJlbW92ZSB0aGUgYnZlYyBjaGVjayBpbiB0aGUgYmlvX2lvdl9p dGVyX2dldF9wYWdlcygpIGZvcgogICAgUkVRX09QX1pPTkVfQVBQRU5EIHNvIHRoYXQgd2UgY2Fu IHJldXNlIHRoZSBjb2RlLgoKQ2hhbmdlcyBmcm9tIFYyOi0KCjEuICBNb3ZlIGNvbnZlbnRpb25h bCB6b25lIGJpdG1hcCBjaGVjayBpbnRvIAogICAgbnZtZXRfYmRldl92YWxpZGF0ZV96bnNfem9u ZXMoKS4gCjIuICBEb24ndCB1c2UgcmVwb3J0IHpvbmVzIGNhbGwgdG8gY2hlY2sgdGhlIHJ1bnQg em9uZS4KMy4gIFRyaW0gbnZtZXRfemFzbCgpIGhlbHBlci4KNC4gIEZpeCB0eXBvIGluIHRoZSBu dm1ldF96bnNfdXBkYXRlX3phc2woKS4KNS4gIFJlbW92ZSB0aGUgY29tbWVudCBhbmQgZml4IHRo ZSBtZHRzIGNhbGN1bGF0aW9uIGluCiAgICBudm1ldF9leGVjdXRlX2lkZW50aWZ5X2Nuc19jc19j dHJsKCkuCjYuICBVc2UgdTY0IGZvciBidWZzaXplIGluIG52bWV0X2JkZXZfZXhlY3V0ZV96b25l X21nbXRfcmVjdigpLgo3LiAgUmVtb3ZlIG52bWV0X3pvbmVzX3RvX2Rlc2Nfc2l6ZSgpIGFuZCBm aXggdGhlIG5yX3pvbmVzCiAgICBjYWxjdWxhdGlvbi4KOC4gIFJlbW92ZSB0aGUgb3AgdmFyaWFi bGUgaW4gbnZtZXRfYmRldl9leGVjdXRlX3pvbmVfYXBwZW5kKCkuCjkuICBGaXggdGhlIG5yX3pv bmVzIGNhbGN1bGF0aW9uIG52bWV0X2JkZXZfZXhlY3V0ZV96b25lX21nbXRfcmVjdigpLgoxMC4g VXBkYXRlIGNvdmVyIGxldHRlciBzdWJqZWN0LgoKQ2hhbmdlcyBmcm9tIFYxOi0KCjEuICBSZW1v dmUgdGhlIG52bWV0LSQoQ09ORklHX0JMS19ERVZfWk9ORUQpICs9IHpucy5vLgoyLiAgTWFyayBo ZWxwZXJzIGlubGluZS4KMy4gIEZpeCB0eXBvcyBpbiB0aGUgY29tbWVudHMgYW5kIHVwZGF0ZSB0 aGUgY29tbWVudHMuCjQuICBHZXQgcmlkIG9mIHRoZSBjdXJseSBicmFja2V0cy4KNS4gIERvbid0 IGFsbG93IGRyaXZlcyB3aXRoIGxhc3Qgc21hbGxlciB6b25lcy4KNi4gIENhbGN1bGF0ZSB0aGUg emFzbCBhcyBhIGZ1bmN0aW9uIG9mIGF4X3pvbmVfYXBwZW5kX3NlY3RvcnMsCiAgICBiaW9fbWF4 X3BhZ2VzIHNvIHdlIGRvbid0IGhhdmUgdG8gc3BsaXQgdGhlIGJpby4KNy4gIEFkZCBnbG9iYWwg c3Vic3lzLT56YXNsIGFuZCB1cGRhdGUgdGhlIHphc2wgd2hlbiBuZXcgbmFtZXNwYWNlCiAgICBp cyBlbmFibGVkLgo4LiAgUm1vdmUgdGhlIGxvb3AgaW4gdGhlIG52bWV0X2JkZXZfZXhlY3V0ZV96 b25lX21nbXRfcmVjdigpIGFuZAogICAgbW92ZSBmdW5jdGlvbmFsaXR5IGluIHRvIHRoZSByZXBv cnQgem9uZSBjYWxsYmFjay4KOS4gIEFkZCBnb3RvIGZvciBkZWZhdWx0IGNhc2UgaW4gbnZtZXRf YmRldl9leGVjdXRlX3pvbmVfbWdtdF9zZW5kKCkuCjEwLiBBbGxvY2F0ZSB0aGUgem9uZXMgYnVm ZmVyIHdpdGggem9uZXMgc2l6ZSBpbnN0ZWFkIG9mIGJkZXYgbnJfem9uZXMuCgpDaGFpdGFueWEg S3Vsa2FybmkgKDQpOgogIG52bWV0OiBhZGQgTlZNIENvbW1hbmQgU2V0IElkZW50aWZpZXIgc3Vw cG9ydAogIG52bWV0OiBhZGQgWkJEIG92ZXIgWk5TIGJhY2tlbmQgc3VwcG9ydAogIG52bWV0OiBh ZGQgbnZtZXRfcmVxX2JpbyBwdXQgaGVscGVyIGZvciBiYWNrZW5kcwogIG52bWU6IGFkZCBjb21t ZW50cyB0byBudm1lX3puc19hbGxvY19yZXBvcnRfYnVmZmVyCgogZHJpdmVycy9udm1lL2hvc3Qv em5zLmMgICAgICAgICAgIHwgIDIyICsrCiBkcml2ZXJzL252bWUvdGFyZ2V0L01ha2VmaWxlICAg ICAgfCAgIDEgKwogZHJpdmVycy9udm1lL3RhcmdldC9hZG1pbi1jbWQuYyAgIHwgIDc0ICsrKysr Ky0KIGRyaXZlcnMvbnZtZS90YXJnZXQvY29yZS5jICAgICAgICB8ICAxNiArLQogZHJpdmVycy9u dm1lL3RhcmdldC9pby1jbWQtYmRldi5jIHwgIDM3ICsrKy0KIGRyaXZlcnMvbnZtZS90YXJnZXQv bnZtZXQuaCAgICAgICB8ICA0NSArKysrKwogZHJpdmVycy9udm1lL3RhcmdldC9wYXNzdGhydS5j ICAgIHwgICAzICstCiBkcml2ZXJzL252bWUvdGFyZ2V0L3pucy5jICAgICAgICAgfCAzMjYgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrCiBpbmNsdWRlL2xpbnV4L252bWUuaCAgICAgICAg ICAgICAgfCAgIDEgKwogOSBmaWxlcyBjaGFuZ2VkLCA1MDQgaW5zZXJ0aW9ucygrKSwgMjEgZGVs ZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9udm1lL3RhcmdldC96bnMuYwoK KiBab25lZnMgVGVzdCBsb2cgd2l0aCBkbS1saW5lYXIgb24gdGhlIHRvcCBvZiBTTVIgSEREOi0K LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCjEuIFRlc3QgWm9uZWQgQmxvY2sgRGV2aWNlIGluZm8g Oi0gCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgojIGZkaXNrICAtbCAvZGV2L3NkaApEaXNrIC9k ZXYvc2RoOiAxMy42NCBUaUIsIDE1MDAwMTczMjgxMjgwIGJ5dGVzLCAzNjYyMTUxNjgwIHNlY3Rv cnMKRGlzayBtb2RlbDogSEdTVCBIU0g3MjE0MTVBTApVbml0czogc2VjdG9ycyBvZiAxICogNDA5 NiA9IDQwOTYgYnl0ZXMKU2VjdG9yIHNpemUgKGxvZ2ljYWwvcGh5c2ljYWwpOiA0MDk2IGJ5dGVz IC8gNDA5NiBieXRlcwpJL08gc2l6ZSAobWluaW11bS9vcHRpbWFsKTogNDA5NiBieXRlcyAvIDQw OTYgYnl0ZXMKIyBjYXQgL3N5cy9ibG9jay9zZGgvcXVldWUvbnJfem9uZXMKNTU4ODAKIyBjYXQg L3N5cy9ibG9jay9zZGgvcXVldWUvem9uZWQKaG9zdC1tYW5hZ2VkCiMgY2F0IC9zeXMvYmxvY2sv c2RoL3F1ZXVlL3pvbmVfYXBwZW5kX21heF9ieXRlcwo2ODgxMjgKCjIuIENyZWF0aW5nIE5WTWVP RiB0YXJnZXQgYmFja2VkIGJ5IGRtLWxpbmVhciBvbiB0aGUgdG9wIG9mIFpCRAotLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQoKIyAuL3piZGV2LnNoIDEgZG0temJkCisrIE5RTj1kbS16YmQKKysgZWNo byAnMCAyOTAyMjQ4NjUyOCBsaW5lYXIgL2Rldi9zZGggMjc0NzI2OTEyJyB8IGRtc2V0dXAgY3Jl YXRlIGNrc2RoCjkgZGlyZWN0b3JpZXMsIDQgZmlsZXMKKysgbWtkaXIgL3N5cy9rZXJuZWwvY29u ZmlnL252bWV0L3N1YnN5c3RlbXMvZG0temJkCisrIG1rZGlyIC9zeXMva2VybmVsL2NvbmZpZy9u dm1ldC9zdWJzeXN0ZW1zL2RtLXpiZC9uYW1lc3BhY2VzLzEKKysgZWNobyAtbiAvZGV2L2RtLTAK KysgY2F0IC9zeXMva2VybmVsL2NvbmZpZy9udm1ldC9zdWJzeXN0ZW1zL2RtLXpiZC9uYW1lc3Bh Y2VzLzEvZGV2aWNlX3BhdGgKL2Rldi9kbS0wCisrIGVjaG8gMQorKyBta2RpciAvc3lzL2tlcm5l bC9jb25maWcvbnZtZXQvcG9ydHMvMS8KKysgZWNobyAtbiBsb29wCisrIGVjaG8gLW4gMQorKyBs biAtcyAvc3lzL2tlcm5lbC9jb25maWcvbnZtZXQvc3Vic3lzdGVtcy9kbS16YmQgL3N5cy9rZXJu ZWwvY29uZmlnL252bWV0L3BvcnRzLzEvc3Vic3lzdGVtcy8KKysgc2xlZXAgMQorKyBlY2hvIHRy YW5zcG9ydD1sb29wLG5xbj1kbS16YmQKKysgc2xlZXAgMQorKyBkbWVzZyAtYwpbMjMzNDUwLjU3 MjU2NV0gbnZtZXQ6IGFkZGluZyBuc2lkIDEgdG8gc3Vic3lzdGVtIGRtLXpiZApbMjMzNDUyLjI2 OTQ3N10gbnZtZXQ6IGNyZWF0aW5nIGNvbnRyb2xsZXIgMSBmb3Igc3Vic3lzdGVtIGRtLXpiZCBm b3IgTlFOIG5xbi4yMDE0LTA4Lm9yZy5udm1leHByZXNzOnV1aWQ6ODUzZDdlODItODAxOC00NGNl LTg3ODQtYWI4MWU3NDY1YWQ5LgpbMjMzNDUyLjI4MzM1Ml0gbnZtZSBudm1lMDogUGxlYXNlIGVu YWJsZSBDT05GSUdfTlZNRV9NVUxUSVBBVEggZm9yIGZ1bGwgc3VwcG9ydCBvZiBtdWx0aS1wb3J0 IGRldmljZXMuClsyMzM0NTIuMjkyODA1XSBudm1lIG52bWUwOiBjcmVhdGluZyA4IEkvTyBxdWV1 ZXMuClsyMzM0NTIuMjk5MjEwXSBudm1lIG52bWUwOiBuZXcgY3RybDogImRtLXpiZCIKCjMuIGRt LWxpbmVhciBhbmQgYmFja2VuZCBTTVIgSEREIGFzc29jaWF0aW9uIDotCi0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCgojIGNhdCAvc3lzL2tlcm5lbC9jb25maWcvbnZtZXQvc3Vic3lzdGVtcy9kbS16 YmQvbmFtZXNwYWNlcy8xL2RldmljZV9wYXRoIAovZGV2L2RtLTAKIyBkbXNldHVwIGxzIC0tdHJl ZQogY2tzZGggKDI1MjowKQoJIOKUlOKUgCAoODoxMTIpCiMgbHNibGsgfCBoZWFkIC0zCk5BTUUg ICAgTUFKOk1JTiBSTSAgIFNJWkUgUk8gVFlQRSBNT1VOVFBPSU5UCnNkaCAgICAgICA4OjExMiAg MCAgMTMuNlQgIDAgZGlzayAK4pSU4pSAY2tzZGggMjUyOjAgICAgMCAgMTMuNVQgIDAgZG0gICAK CjQuIE5WTWVPRiBjb250cm9sbGVyIDotIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKIyBudm1l IGxpc3QgfCB0ciAtcyAnICcgJyAnICAKTm9kZSBTTiBNb2RlbCBOYW1lc3BhY2UgVXNhZ2UgRm9y bWF0IEZXIFJldiAgCi9kZXYvbnZtZTBuMSA4YzZmMzQ4ZGNkNjQ0MDRjIExpbnV4IDEgMTQuODYg VEIgLyAxNC44NiBUQiA0IEtpQiArIDAgQiA1LjEwLjBudgoKNS4gWm9uZWZzIHRlc3RzIHJlc3Vs dHMgOi0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiMgLi96b25lZnMtdGVzdHMuc2ggL2Rldi9u dm1lMG4xIApHYXRoZXJpbmcgaW5mb3JtYXRpb24gb24gL2Rldi9udm1lMG4xLi4uCnpvbmVmcy10 ZXN0cyBvbiAvZGV2L252bWUwbjE6CiAgNTUzNTYgem9uZXMgKDAgY29udmVudGlvbmFsIHpvbmVz LCA1NTM1NiBzZXF1ZW50aWFsIHpvbmVzKQogIDUyNDI4OCA1MTJCIHNlY3RvcnMgem9uZSBzaXpl ICgyNTYgTWlCKQogIDEgbWF4IG9wZW4gem9uZXMKUnVubmluZyB0ZXN0cwogIFRlc3QgMDAxMDog IG1rem9uZWZzIChvcHRpb25zKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4u IFBBU1MKICBUZXN0IDAwMTE6ICBta3pvbmVmcyAoZm9yY2UgZm9ybWF0KSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDEyOiAgbWt6b25lZnMgKGludmFsaWQg ZGV2aWNlKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAxMzog IG1rem9uZWZzIChzdXBlciBibG9jayB6b25lIHN0YXRlKSAgICAgICAgICAgICAgICAgICAgLi4u IFBBU1MKICBUZXN0IDAwMjA6ICBtb3VudCAoZGVmYXVsdCkgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDIxOiAgbW91bnQgKGludmFsaWQgZGV2 aWNlKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAyMjog IG1vdW50IChjaGVjayBtb3VudCBkaXJlY3Rvcnkgc3ViLWRpcmVjdG9yaWVzKSAgICAgICAgLi4u IFBBU1MKICBUZXN0IDAwMjM6ICBtb3VudCAob3B0aW9ucykgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDMwOiAgTnVtYmVyIG9mIGZpbGVzIChk ZWZhdWx0KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAzMTog IE51bWJlciBvZiBmaWxlcyAoYWdncl9jbnYpICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4u IHNraXAKICBUZXN0IDAwMzI6ICBOdW1iZXIgb2YgZmlsZXMgdXNpbmcgc3RhdCAoZGVmYXVsdCkg ICAgICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDMzOiAgTnVtYmVyIG9mIGZpbGVzIHVz aW5nIHN0YXQgKGFnZ3JfY252KSAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAzNDog IE51bWJlciBvZiBibG9ja3MgdXNpbmcgc3RhdCAoZGVmYXVsdCkgICAgICAgICAgICAgICAgLi4u IFBBU1MKICBUZXN0IDAwMzU6ICBOdW1iZXIgb2YgYmxvY2tzIHVzaW5nIHN0YXQgKGFnZ3JfY252 KSAgICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDQwOiAgRmlsZXMgcGVybWlzc2lvbnMg KGRlZmF1bHQpICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA0MTog IEZpbGVzIHBlcm1pc3Npb25zIChhZ2dyX2NudikgICAgICAgICAgICAgICAgICAgICAgICAgLi4u IHNraXAKICBUZXN0IDAwNDI6ICBGaWxlcyBwZXJtaXNzaW9ucyAoc2V0IHZhbHVlKSAgICAgICAg ICAgICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDQzOiAgRmlsZXMgcGVybWlzc2lvbnMg KHNldCB2YWx1ZSArIGFnZ3JfY252KSAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA1MDog IEZpbGVzIG93bmVyIChkZWZhdWx0KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4u IFBBU1MKICBUZXN0IDAwNTE6ICBGaWxlcyBvd25lciAoYWdncl9jbnYpICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC4uLiBza2lwCiAgVGVzdCAwMDUyOiAgRmlsZXMgb3duZXIgKHNldCB2 YWx1ZSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA1Mzog IEZpbGVzIG93bmVyIChzZXQgdmFsdWUgKyBhZ2dyX2NudikgICAgICAgICAgICAgICAgICAgLi4u IHNraXAKICBUZXN0IDAwNjA6ICBGaWxlcyBzaXplIChkZWZhdWx0KSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDYxOiAgRmlsZXMgc2l6ZSAoYWdncl9j bnYpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA3MDog IENvbnZlbnRpb25hbCBmaWxlIHRydW5jYXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4u IHNraXAKICBUZXN0IDAwNzE6ICBDb252ZW50aW9uYWwgZmlsZSB0cnVuY2F0ZSAoYWdncl9jbnYp ICAgICAgICAgICAgICAgIC4uLiBza2lwCiAgVGVzdCAwMDcyOiAgQ29udmVudGlvbmFsIGZpbGUg dW5saW5rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA3Mzog IENvbnZlbnRpb25hbCBmaWxlIHVubGluayAoYWdncl9jbnYpICAgICAgICAgICAgICAgICAgLi4u IHNraXAKICBUZXN0IDAwNzQ6ICBDb252ZW50aW9uYWwgZmlsZSByYW5kb20gd3JpdGUgICAgICAg ICAgICAgICAgICAgICAgIC4uLiBza2lwCiAgVGVzdCAwMDc1OiAgQ29udmVudGlvbmFsIGZpbGUg cmFuZG9tIHdyaXRlIChkaXJlY3QpICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA3Njog IENvbnZlbnRpb25hbCBmaWxlIHJhbmRvbSB3cml0ZSAoYWdncl9jbnYpICAgICAgICAgICAgLi4u IHNraXAKICBUZXN0IDAwNzc6ICBDb252ZW50aW9uYWwgZmlsZSByYW5kb20gd3JpdGUgKGFnZ3Jf Y252LCBkaXJlY3QpICAgIC4uLiBza2lwCiAgVGVzdCAwMDc4OiAgQ29udmVudGlvbmFsIGZpbGUg bW1hcCByZWFkL3dyaXRlICAgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA3OTog IENvbnZlbnRpb25hbCBmaWxlIG1tYXAgcmVhZC93cml0ZSAoYWdncl9jbnYpICAgICAgICAgLi4u IHNraXAKICBUZXN0IDAwODA6ICBTZXF1ZW50aWFsIGZpbGUgdHJ1bmNhdGUgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDgxOiAgU2VxdWVudGlhbCBmaWxlIHVu bGluayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA4Mjog IFNlcXVlbnRpYWwgZmlsZSBidWZmZXJlZCB3cml0ZSBJTyAgICAgICAgICAgICAgICAgICAgLi4u IFBBU1MKICBUZXN0IDAwODM6ICBTZXF1ZW50aWFsIGZpbGUgb3ZlcndyaXRlICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDg0OiAgU2VxdWVudGlhbCBmaWxlIHVu YWxpZ25lZCB3cml0ZSAoc3luYyBJTykgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA4NTog IFNlcXVlbnRpYWwgZmlsZSB1bmFsaWduZWQgd3JpdGUgKGFzeW5jIElPKSAgICAgICAgICAgLi4u IFBBU1MKICBUZXN0IDAwODY6ICBTZXF1ZW50aWFsIGZpbGUgYXBwZW5kIChzeW5jKSAgICAgICAg ICAgICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDg3OiAgU2VxdWVudGlhbCBmaWxlIGFw cGVuZCAoYXN5bmMpICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA4ODog IFNlcXVlbnRpYWwgZmlsZSByYW5kb20gcmVhZCAgICAgICAgICAgICAgICAgICAgICAgICAgLi4u IFBBU1MKICBUZXN0IDAwODk6ICBTZXF1ZW50aWFsIGZpbGUgbW1hcCByZWFkL3dyaXRlICAgICAg ICAgICAgICAgICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDkwOiAgc2VxdWVudGlhbCBmaWxlIDRL IHN5bmNocm9ub3VzIHdyaXRlICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA5MTog IFNlcXVlbnRpYWwgZmlsZSBsYXJnZSBzeW5jaHJvbm91cyB3cml0ZSAgICAgICAgICAgICAgLi4u IFBBU1MKCjQ2IC8gNDYgdGVzdHMgcGFzc2VkCgoqIFdpdGggQ09ORklHX0JMS19ERVZfWk9ORUQg bnZtZSBhbmQgem9uZWZzIHRlc3RzIG9uIG1lbWJhY2tlZCBudWxsX2JsayB6b25lZCA6LQotLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQoKIyBncmVwIC1pIGJsa19kZXZfem9uZWQgLmNvbmZpZwpDT05G SUdfQkxLX0RFVl9aT05FRD15CiMgbWFrZSBNPWRyaXZlcnMvbnZtZS8gY2xlYW4gCiAgQ0xFQU4g ICBkcml2ZXJzL252bWUvL01vZHVsZS5zeW12ZXJzCiMgbWFrZSBNPWRyaXZlcnMvbnZtZS8gCiAg Q0MgW01dICBkcml2ZXJzL252bWUvL2hvc3QvY29yZS5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUv L2hvc3QvdHJhY2UubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L2xpZ2h0bnZtLm8KICBD QyBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC96bnMubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9o b3N0L2h3bW9uLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLWNvcmUubwogIEND IFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L3BjaS5vCiAgTEQgW01dICBkcml2ZXJzL252bWUvL2hv c3QvbnZtZS5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL2hvc3QvZmFicmljcy5vCiAgTEQgW01d ICBkcml2ZXJzL252bWUvL2hvc3QvbnZtZS1mYWJyaWNzLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZt ZS8vaG9zdC9yZG1hLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLXJkbWEubwog IENDIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L2ZjLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8v aG9zdC9udm1lLWZjLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC90Y3AubwogIExEIFtN XSAgZHJpdmVycy9udm1lLy9ob3N0L252bWUtdGNwLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8v dGFyZ2V0L2NvcmUubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvY29uZmlnZnMubwog IENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvYWRtaW4tY21kLm8KICBDQyBbTV0gIGRyaXZl cnMvbnZtZS8vdGFyZ2V0L2ZhYnJpY3MtY21kLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vdGFy Z2V0L2Rpc2NvdmVyeS5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9pby1jbWQtZmls ZS5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9pby1jbWQtYmRldi5vCiAgQ0MgW01d ICBkcml2ZXJzL252bWUvL3RhcmdldC9wYXNzdGhydS5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUv L3RhcmdldC96bnMubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvdHJhY2UubwogIExE IFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvbnZtZXQubwogIENDIFtNXSAgZHJpdmVycy9udm1l Ly90YXJnZXQvbG9vcC5vCiAgTEQgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1lLWxvb3Au bwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvcmRtYS5vCiAgTEQgW01dICBkcml2ZXJz L252bWUvL3RhcmdldC9udm1ldC1yZG1hLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0 L2ZjLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252bWV0LWZjLm8KICBDQyBbTV0g IGRyaXZlcnMvbnZtZS8vdGFyZ2V0L2ZjbG9vcC5vCiAgTEQgW01dICBkcml2ZXJzL252bWUvL3Rh cmdldC9udm1lLWZjbG9vcC5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC90Y3Aubwog IExEIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvbnZtZXQtdGNwLm8KICBNT0RQT1NUIGRyaXZl cnMvbnZtZS8vTW9kdWxlLnN5bXZlcnMKICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1l LWNvcmUubW9kLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLWNvcmUua28KICBD QyBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLWZhYnJpY3MubW9kLm8KICBMRCBbTV0gIGRy aXZlcnMvbnZtZS8vaG9zdC9udm1lLWZhYnJpY3Mua28KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8v aG9zdC9udm1lLWZjLm1vZC5vCiAgTEQgW01dICBkcml2ZXJzL252bWUvL2hvc3QvbnZtZS1mYy5r bwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L252bWUtcmRtYS5tb2QubwogIExEIFtNXSAg ZHJpdmVycy9udm1lLy9ob3N0L252bWUtcmRtYS5rbwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9o b3N0L252bWUtdGNwLm1vZC5vCiAgTEQgW01dICBkcml2ZXJzL252bWUvL2hvc3QvbnZtZS10Y3Au a28KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLm1vZC5vCiAgTEQgW01dICBkcml2 ZXJzL252bWUvL2hvc3QvbnZtZS5rbwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvbnZt ZS1mY2xvb3AubW9kLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252bWUtZmNsb29w LmtvCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1lLWxvb3AubW9kLm8KICBMRCBb TV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252bWUtbG9vcC5rbwogIENDIFtNXSAgZHJpdmVycy9u dm1lLy90YXJnZXQvbnZtZXQtZmMubW9kLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0 L252bWV0LWZjLmtvCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1ldC1yZG1hLm1v ZC5vCiAgTEQgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1ldC1yZG1hLmtvCiAgQ0MgW01d ICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1ldC10Y3AubW9kLm8KICBMRCBbTV0gIGRyaXZlcnMv bnZtZS8vdGFyZ2V0L252bWV0LXRjcC5rbwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQv bnZtZXQubW9kLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252bWV0LmtvCiMgCiMg Y2RibGt0ZXN0cyAKIyAuL2NoZWNrIHRlc3RzL252bWUvCm52bWUvMDAyIChjcmVhdGUgbWFueSBz dWJzeXN0ZW1zIGFuZCB0ZXN0IGRpc2NvdmVyeSkgICAgICAgICBbcGFzc2VkXQogICAgcnVudGlt ZSAgMjQuMzc4cyAgLi4uICAyNC42MzZzCm52bWUvMDAzICh0ZXN0IGlmIHdlJ3JlIHNlbmRpbmcg a2VlcC1hbGl2ZXMgdG8gYSBkaXNjb3ZlcnkgY29udHJvbGxlcikgW3Bhc3NlZF0KICAgIHJ1bnRp bWUgIDEwLjEzM3MgIC4uLiAgMTAuMTUycwpudm1lLzAwNCAodGVzdCBudm1lIGFuZCBudm1ldCBV VUlEIE5TIGRlc2NyaXB0b3JzKSAgICAgICAgICAgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDIuNDYz cyAgLi4uICAyLjQ3OHMKbnZtZS8wMDUgKHJlc2V0IGxvY2FsIGxvb3BiYWNrIHRhcmdldCkgICAg ICAgICAgICAgICAgICAgICAgIFtub3QgcnVuXQogICAgbnZtZV9jb3JlIG1vZHVsZSBkb2VzIG5v dCBoYXZlIHBhcmFtZXRlciBtdWx0aXBhdGgKbnZtZS8wMDYgKGNyZWF0ZSBhbiBOVk1lT0YgdGFy Z2V0IHdpdGggYSBibG9jayBkZXZpY2UtYmFja2VkIG5zKSBbcGFzc2VkXQogICAgcnVudGltZSAg MC4wOTVzICAuLi4gIDAuMTIycwpudm1lLzAwNyAoY3JlYXRlIGFuIE5WTWVPRiB0YXJnZXQgd2l0 aCBhIGZpbGUtYmFja2VkIG5zKSAgICAgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDAuMDY1cyAgLi4u ICAwLjA3OXMKbnZtZS8wMDggKGNyZWF0ZSBhbiBOVk1lT0YgaG9zdCB3aXRoIGEgYmxvY2sgZGV2 aWNlLWJhY2tlZCBucykgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDIuNDczcyAgLi4uICAyLjUwMXMK bnZtZS8wMDkgKGNyZWF0ZSBhbiBOVk1lT0YgaG9zdCB3aXRoIGEgZmlsZS1iYWNrZWQgbnMpICAg ICAgIFtwYXNzZWRdCiAgICBydW50aW1lICAyLjQ2MHMgIC4uLiAgMi40MjRzCm52bWUvMDEwIChy dW4gZGF0YSB2ZXJpZmljYXRpb24gZmlvIGpvYiBvbiBOVk1lT0YgYmxvY2sgZGV2aWNlLWJhY2tl ZCBucykgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDI0LjUyNnMgIC4uLiAgMjguMDE1cwpudm1lLzAx MSAocnVuIGRhdGEgdmVyaWZpY2F0aW9uIGZpbyBqb2Igb24gTlZNZU9GIGZpbGUtYmFja2VkIG5z KSBbcGFzc2VkXQogICAgcnVudGltZSAgMjY1Ljk2N3MgIC4uLiAgMjgyLjcxN3MKbnZtZS8wMTIg KHJ1biBta2ZzIGFuZCBkYXRhIHZlcmlmaWNhdGlvbiBmaW8gam9iIG9uIE5WTWVPRiBibG9jayBk ZXZpY2UtYmFja2VkIG5zKSBbcGFzc2VkXQogICAgcnVudGltZSAgNDQuNjY1cyAgLi4uICA0OC4x MjRzCm52bWUvMDEzIChydW4gbWtmcyBhbmQgZGF0YSB2ZXJpZmljYXRpb24gZmlvIGpvYiBvbiBO Vk1lT0YgZmlsZS1iYWNrZWQgbnMpIFtwYXNzZWRdCiAgICBydW50aW1lICAyNjEuNzM5cyAgLi4u ICAzNTIuMzMxcwpudm1lLzAxNCAoZmx1c2ggYSBOVk1lT0YgYmxvY2sgZGV2aWNlLWJhY2tlZCBu cykgICAgICAgICAgICAgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDIxLjI2OHMgIC4uLiAgMjIuMDEz cwpudm1lLzAxNSAodW5pdCB0ZXN0IGZvciBOVk1lIGZsdXNoIGZvciBmaWxlIGJhY2tlZCBucykg ICAgICAgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDE4LjgyMHMgIC4uLiAgMjIuMTA0cwpudm1lLzAx NiAoY3JlYXRlL2RlbGV0ZSBtYW55IE5WTWVPRiBibG9jayBkZXZpY2UtYmFja2VkIG5zIGFuZCB0 ZXN0IGRpc2NvdmVyeSkgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDEzLjg5OXMgIC4uLiAgMTQuMzIy cwpudm1lLzAxNyAoY3JlYXRlL2RlbGV0ZSBtYW55IGZpbGUtbnMgYW5kIHRlc3QgZGlzY292ZXJ5 KSAgICAgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDE0LjMyMnMgIC4uLiAgMTQuMDMxcwpudm1lLzAx OCAodW5pdCB0ZXN0IE5WTWUtb0Ygb3V0IG9mIHJhbmdlIGFjY2VzcyBvbiBhIGZpbGUgYmFja2Vu ZCkgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDIuNDUwcyAgLi4uICAyLjQ0NHMKbnZtZS8wMTkgKHRl c3QgTlZNZSBEU00gRGlzY2FyZCBjb21tYW5kIG9uIE5WTWVPRiBibG9jay1kZXZpY2UgbnMpIFtw YXNzZWRdCiAgICBydW50aW1lICAyLjQ3NXMgIC4uLiAgMi40ODlzCm52bWUvMDIwICh0ZXN0IE5W TWUgRFNNIERpc2NhcmQgY29tbWFuZCBvbiBOVk1lT0YgZmlsZS1iYWNrZWQgbnMpIFtwYXNzZWRd CiAgICBydW50aW1lICAyLjQxMHMgIC4uLiAgMi40NDhzCm52bWUvMDIxICh0ZXN0IE5WTWUgbGlz dCBjb21tYW5kIG9uIE5WTWVPRiBmaWxlLWJhY2tlZCBucykgICBbcGFzc2VkXQogICAgcnVudGlt ZSAgMi40NDFzICAuLi4gIDIuNDM5cwpudm1lLzAyMiAodGVzdCBOVk1lIHJlc2V0IGNvbW1hbmQg b24gTlZNZU9GIGZpbGUtYmFja2VkIG5zKSAgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDIuODY0cyAg Li4uICAyLjg2M3MKbnZtZS8wMjMgKHRlc3QgTlZNZSBzbWFydC1sb2cgY29tbWFuZCBvbiBOVk1l T0YgYmxvY2stZGV2aWNlIG5zKSBbcGFzc2VkXQogICAgcnVudGltZSAgMi40NjVzICAuLi4gIDIu NDQ2cwpudm1lLzAyNCAodGVzdCBOVk1lIHNtYXJ0LWxvZyBjb21tYW5kIG9uIE5WTWVPRiBmaWxl LWJhY2tlZCBucykgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDIuNDE2cyAgLi4uICAyLjQxMXMKbnZt ZS8wMjUgKHRlc3QgTlZNZSBlZmZlY3RzLWxvZyBjb21tYW5kIG9uIE5WTWVPRiBmaWxlLWJhY2tl ZCBucykgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDIuNDE5cyAgLi4uICAyLjc0OHMKbnZtZS8wMjYg KHRlc3QgTlZNZSBucy1kZXNjcyBjb21tYW5kIG9uIE5WTWVPRiBmaWxlLWJhY2tlZCBucykgW3Bh c3NlZF0KICAgIHJ1bnRpbWUgIDIuNDIycyAgLi4uICAyLjQxMHMKbnZtZS8wMjcgKHRlc3QgTlZN ZSBucy1yZXNjYW4gY29tbWFuZCBvbiBOVk1lT0YgZmlsZS1iYWNrZWQgbnMpIFtwYXNzZWRdCiAg ICBydW50aW1lICAyLjQ1NnMgIC4uLiAgMi40NjJzCm52bWUvMDI4ICh0ZXN0IE5WTWUgbGlzdC1z dWJzeXMgY29tbWFuZCBvbiBOVk1lT0YgZmlsZS1iYWNrZWQgbnMpIFtwYXNzZWRdCiAgICBydW50 aW1lICAyLjQyN3MgIC4uLiAgMi40MjlzCm52bWUvMDI5ICh0ZXN0IHVzZXJzcGFjZSBJTyB2aWEg bnZtZS1jbGkgcmVhZC93cml0ZSBpbnRlcmZhY2UpIFtwYXNzZWRdCiAgICBydW50aW1lICAyLjc1 MXMgIC4uLiAgMi43NTVzCm52bWUvMDMwIChlbnN1cmUgdGhlIGRpc2NvdmVyeSBnZW5lcmF0aW9u IGNvdW50ZXIgaXMgdXBkYXRlZCBhcHByb3ByaWF0ZWx5KSBbcGFzc2VkXQogICAgcnVudGltZSAg MC4zNDZzICAuLi4gIDAuMzU3cwpudm1lLzAzMSAodGVzdCBkZWxldGlvbiBvZiBOVk1lT0YgY29u dHJvbGxlcnMgaW1tZWRpYXRlbHkgYWZ0ZXIgc2V0dXApIFtwYXNzZWRdCiAgICBydW50aW1lICAx My42MDFzICAuLi4gIDEzLjU5MXMKbnZtZS8wMzggKHRlc3QgZGVsZXRpb24gb2YgTlZNZU9GIHN1 YnN5c3RlbSB3aXRob3V0IGVuYWJsaW5nKSBbcGFzc2VkXQogICAgcnVudGltZSAgMC4wMzlzICAu Li4gIDAuMDU5cwojCiMgY2R6b25lZnN0ZXN0IAojIC4vem9uZWZzLXRlc3RzLnNoIC9kZXYvbnZt ZTFuMSAKR2F0aGVyaW5nIGluZm9ybWF0aW9uIG9uIC9kZXYvbnZtZTFuMS4uLgp6b25lZnMtdGVz dHMgb24gL2Rldi9udm1lMW4xOgogIDE2IHpvbmVzICgwIGNvbnZlbnRpb25hbCB6b25lcywgMTYg c2VxdWVudGlhbCB6b25lcykKICAxMzEwNzIgNTEyQiBzZWN0b3JzIHpvbmUgc2l6ZSAoNjQgTWlC KQogIDEgbWF4IG9wZW4gem9uZXMKUnVubmluZyB0ZXN0cwogIFRlc3QgMDAxMDogIG1rem9uZWZz IChvcHRpb25zKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBU ZXN0IDAwMTE6ICBta3pvbmVmcyAoZm9yY2UgZm9ybWF0KSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDEyOiAgbWt6b25lZnMgKGludmFsaWQgZGV2aWNlKSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAxMzogIG1rem9uZWZz IChzdXBlciBibG9jayB6b25lIHN0YXRlKSAgICAgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBU ZXN0IDAwMjA6ICBtb3VudCAoZGVmYXVsdCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDIxOiAgbW91bnQgKGludmFsaWQgZGV2aWNlKSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAyMjogIG1vdW50IChj aGVjayBtb3VudCBkaXJlY3Rvcnkgc3ViLWRpcmVjdG9yaWVzKSAgICAgICAgLi4uIFBBU1MKICBU ZXN0IDAwMjM6ICBtb3VudCAob3B0aW9ucykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDMwOiAgTnVtYmVyIG9mIGZpbGVzIChkZWZhdWx0KSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAzMTogIE51bWJlciBv ZiBmaWxlcyAoYWdncl9jbnYpICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIHNraXAKICBU ZXN0IDAwMzI6ICBOdW1iZXIgb2YgZmlsZXMgdXNpbmcgc3RhdCAoZGVmYXVsdCkgICAgICAgICAg ICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDMzOiAgTnVtYmVyIG9mIGZpbGVzIHVzaW5nIHN0YXQg KGFnZ3JfY252KSAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDAzNDogIE51bWJlciBv ZiBibG9ja3MgdXNpbmcgc3RhdCAoZGVmYXVsdCkgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBU ZXN0IDAwMzU6ICBOdW1iZXIgb2YgYmxvY2tzIHVzaW5nIHN0YXQgKGFnZ3JfY252KSAgICAgICAg ICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDQwOiAgRmlsZXMgcGVybWlzc2lvbnMgKGRlZmF1bHQp ICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA0MTogIEZpbGVzIHBl cm1pc3Npb25zIChhZ2dyX2NudikgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIHNraXAKICBU ZXN0IDAwNDI6ICBGaWxlcyBwZXJtaXNzaW9ucyAoc2V0IHZhbHVlKSAgICAgICAgICAgICAgICAg ICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDQzOiAgRmlsZXMgcGVybWlzc2lvbnMgKHNldCB2YWx1 ZSArIGFnZ3JfY252KSAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA1MDogIEZpbGVzIG93 bmVyIChkZWZhdWx0KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBU ZXN0IDAwNTE6ICBGaWxlcyBvd25lciAoYWdncl9jbnYpICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIC4uLiBza2lwCiAgVGVzdCAwMDUyOiAgRmlsZXMgb3duZXIgKHNldCB2YWx1ZSkgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA1MzogIEZpbGVzIG93 bmVyIChzZXQgdmFsdWUgKyBhZ2dyX2NudikgICAgICAgICAgICAgICAgICAgLi4uIHNraXAKICBU ZXN0IDAwNjA6ICBGaWxlcyBzaXplIChkZWZhdWx0KSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDYxOiAgRmlsZXMgc2l6ZSAoYWdncl9jbnYpICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA3MDogIENvbnZlbnRp b25hbCBmaWxlIHRydW5jYXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIHNraXAKICBU ZXN0IDAwNzE6ICBDb252ZW50aW9uYWwgZmlsZSB0cnVuY2F0ZSAoYWdncl9jbnYpICAgICAgICAg ICAgICAgIC4uLiBza2lwCiAgVGVzdCAwMDcyOiAgQ29udmVudGlvbmFsIGZpbGUgdW5saW5rICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA3MzogIENvbnZlbnRp b25hbCBmaWxlIHVubGluayAoYWdncl9jbnYpICAgICAgICAgICAgICAgICAgLi4uIHNraXAKICBU ZXN0IDAwNzQ6ICBDb252ZW50aW9uYWwgZmlsZSByYW5kb20gd3JpdGUgICAgICAgICAgICAgICAg ICAgICAgIC4uLiBza2lwCiAgVGVzdCAwMDc1OiAgQ29udmVudGlvbmFsIGZpbGUgcmFuZG9tIHdy aXRlIChkaXJlY3QpICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA3NjogIENvbnZlbnRp b25hbCBmaWxlIHJhbmRvbSB3cml0ZSAoYWdncl9jbnYpICAgICAgICAgICAgLi4uIHNraXAKICBU ZXN0IDAwNzc6ICBDb252ZW50aW9uYWwgZmlsZSByYW5kb20gd3JpdGUgKGFnZ3JfY252LCBkaXJl Y3QpICAgIC4uLiBza2lwCiAgVGVzdCAwMDc4OiAgQ29udmVudGlvbmFsIGZpbGUgbW1hcCByZWFk L3dyaXRlICAgICAgICAgICAgICAgICAgICAuLi4gc2tpcAogIFRlc3QgMDA3OTogIENvbnZlbnRp b25hbCBmaWxlIG1tYXAgcmVhZC93cml0ZSAoYWdncl9jbnYpICAgICAgICAgLi4uIHNraXAKICBU ZXN0IDAwODA6ICBTZXF1ZW50aWFsIGZpbGUgdHJ1bmNhdGUgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDgxOiAgU2VxdWVudGlhbCBmaWxlIHVubGluayAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA4MjogIFNlcXVlbnRp YWwgZmlsZSBidWZmZXJlZCB3cml0ZSBJTyAgICAgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBU ZXN0IDAwODM6ICBTZXF1ZW50aWFsIGZpbGUgb3ZlcndyaXRlICAgICAgICAgICAgICAgICAgICAg ICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDg0OiAgU2VxdWVudGlhbCBmaWxlIHVuYWxpZ25lZCB3 cml0ZSAoc3luYyBJTykgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA4NTogIFNlcXVlbnRp YWwgZmlsZSB1bmFsaWduZWQgd3JpdGUgKGFzeW5jIElPKSAgICAgICAgICAgLi4uIFBBU1MKICBU ZXN0IDAwODY6ICBTZXF1ZW50aWFsIGZpbGUgYXBwZW5kIChzeW5jKSAgICAgICAgICAgICAgICAg ICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDg3OiAgU2VxdWVudGlhbCBmaWxlIGFwcGVuZCAoYXN5 bmMpICAgICAgICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA4ODogIFNlcXVlbnRp YWwgZmlsZSByYW5kb20gcmVhZCAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uIFBBU1MKICBU ZXN0IDAwODk6ICBTZXF1ZW50aWFsIGZpbGUgbW1hcCByZWFkL3dyaXRlICAgICAgICAgICAgICAg ICAgICAgIC4uLiBQQVNTCiAgVGVzdCAwMDkwOiAgc2VxdWVudGlhbCBmaWxlIDRLIHN5bmNocm9u b3VzIHdyaXRlICAgICAgICAgICAgICAgICAuLi4gUEFTUwogIFRlc3QgMDA5MTogIFNlcXVlbnRp YWwgZmlsZSBsYXJnZSBzeW5jaHJvbm91cyB3cml0ZSAgICAgICAgICAgICAgLi4uIFBBU1MKCjQ2 IC8gNDYgdGVzdHMgcGFzc2VkCgoqIFdpdGhvdXQgQ09ORklHX0JMS19ERVZfWk9ORUQgbnZtZSB0 ZXN0cyA6LQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKIwojIGdyZXAgLWkgYmxrX2Rldl96b25l ZCAuY29uZmlnCiMgQ09ORklHX0JMS19ERVZfWk9ORUQgaXMgbm90IHNldAojIG1ha2VqIE09ZHJp dmVycy9udm1lLyBjbGVhbiAKICBDTEVBTiAgIGRyaXZlcnMvbnZtZS8vTW9kdWxlLnN5bXZlcnMK IyBtYWtlaiBNPWRyaXZlcnMvbnZtZS8gCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL2hvc3QvY29y ZS5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL2hvc3QvdHJhY2UubwogIENDIFtNXSAgZHJpdmVy cy9udm1lLy9ob3N0L2xpZ2h0bnZtLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L2Nv cmUubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L2h3bW9uLm8KICBDQyBbTV0gIGRyaXZl cnMvbnZtZS8vdGFyZ2V0L2NvbmZpZ2ZzLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9w Y2kubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvYWRtaW4tY21kLm8KICBDQyBbTV0g IGRyaXZlcnMvbnZtZS8vaG9zdC9mYWJyaWNzLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vaG9z dC9yZG1hLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L2ZhYnJpY3MtY21kLm8KICBD QyBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L2Rpc2NvdmVyeS5vCiAgQ0MgW01dICBkcml2ZXJz L252bWUvL2hvc3QvZmMubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvaW8tY21kLWZp bGUubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L3RjcC5vCiAgQ0MgW01dICBkcml2ZXJz L252bWUvL3RhcmdldC9pby1jbWQtYmRldi5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3Rhcmdl dC9wYXNzdGhydS5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC90cmFjZS5vCiAgQ0Mg W01dICBkcml2ZXJzL252bWUvL3RhcmdldC9sb29wLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8v dGFyZ2V0L3JkbWEubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvZmMubwogIENDIFtN XSAgZHJpdmVycy9udm1lLy90YXJnZXQvZmNsb29wLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8v dGFyZ2V0L3RjcC5vCiAgTEQgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1lLWxvb3Aubwog IExEIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvbnZtZS1mY2xvb3AubwogIExEIFtNXSAgZHJp dmVycy9udm1lLy90YXJnZXQvbnZtZXQtdGNwLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vaG9z dC9udm1lLWZhYnJpY3MubwogIExEIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L252bWUubwogIExE IFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L252bWUtcmRtYS5vCiAgTEQgW01dICBkcml2ZXJzL252 bWUvL3RhcmdldC9udm1ldC1yZG1hLm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252 bWV0Lm8KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252bWV0LWZjLm8KICBMRCBbTV0g IGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLXRjcC5vCiAgTEQgW01dICBkcml2ZXJzL252bWUvL2hv c3QvbnZtZS1mYy5vCiAgTEQgW01dICBkcml2ZXJzL252bWUvL2hvc3QvbnZtZS1jb3JlLm8KICBN T0RQT1NUIGRyaXZlcnMvbnZtZS8vTW9kdWxlLnN5bXZlcnMKICBDQyBbTV0gIGRyaXZlcnMvbnZt ZS8vaG9zdC9udm1lLWNvcmUubW9kLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1l LWZhYnJpY3MubW9kLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLWZjLm1vZC5v CiAgQ0MgW01dICBkcml2ZXJzL252bWUvL2hvc3QvbnZtZS1yZG1hLm1vZC5vCiAgQ0MgW01dICBk cml2ZXJzL252bWUvL2hvc3QvbnZtZS10Y3AubW9kLm8KICBDQyBbTV0gIGRyaXZlcnMvbnZtZS8v aG9zdC9udm1lLm1vZC5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1lLWZjbG9v cC5tb2QubwogIENDIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvbnZtZS1sb29wLm1vZC5vCiAg Q0MgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1ldC1mYy5tb2QubwogIENDIFtNXSAgZHJp dmVycy9udm1lLy90YXJnZXQvbnZtZXQtcmRtYS5tb2QubwogIENDIFtNXSAgZHJpdmVycy9udm1l Ly90YXJnZXQvbnZtZXQtdGNwLm1vZC5vCiAgQ0MgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9u dm1ldC5tb2QubwogIExEIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvbnZtZS1mY2xvb3Aua28K ICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vaG9zdC9udm1lLXRjcC5rbwogIExEIFtNXSAgZHJpdmVy cy9udm1lLy9ob3N0L252bWUtY29yZS5rbwogIExEIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQv bnZtZXQtdGNwLmtvCiAgTEQgW01dICBkcml2ZXJzL252bWUvL3RhcmdldC9udm1lLWxvb3Aua28K ICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252bWV0LWZjLmtvCiAgTEQgW01dICBkcml2 ZXJzL252bWUvL2hvc3QvbnZtZS1mYWJyaWNzLmtvCiAgTEQgW01dICBkcml2ZXJzL252bWUvL2hv c3QvbnZtZS1mYy5rbwogIExEIFtNXSAgZHJpdmVycy9udm1lLy90YXJnZXQvbnZtZXQtcmRtYS5r bwogIExEIFtNXSAgZHJpdmVycy9udm1lLy9ob3N0L252bWUtcmRtYS5rbwogIExEIFtNXSAgZHJp dmVycy9udm1lLy9ob3N0L252bWUua28KICBMRCBbTV0gIGRyaXZlcnMvbnZtZS8vdGFyZ2V0L252 bWV0LmtvCiMKIyBjZGJsa3Rlc3RzIAojIC4vY2hlY2sgdGVzdHMvbnZtZS8KbnZtZS8wMDIgKGNy ZWF0ZSBtYW55IHN1YnN5c3RlbXMgYW5kIHRlc3QgZGlzY292ZXJ5KSAgICAgICAgIFtwYXNzZWRd CiAgICBydW50aW1lICAgIC4uLiAgMjcuNjQwcwpudm1lLzAwMyAodGVzdCBpZiB3ZSdyZSBzZW5k aW5nIGtlZXAtYWxpdmVzIHRvIGEgZGlzY292ZXJ5IGNvbnRyb2xsZXIpIFtwYXNzZWRdCiAgICBy dW50aW1lICAxMC4xNDVzICAuLi4gIDEwLjE0N3MKbnZtZS8wMDQgKHRlc3QgbnZtZSBhbmQgbnZt ZXQgVVVJRCBOUyBkZXNjcmlwdG9ycykgICAgICAgICAgIFtwYXNzZWRdCiAgICBydW50aW1lICAx LjcxM3MgIC4uLiAgMS43MTJzCm52bWUvMDA1IChyZXNldCBsb2NhbCBsb29wYmFjayB0YXJnZXQp ICAgICAgICAgICAgICAgICAgICAgICBbbm90IHJ1bl0KICAgIG52bWVfY29yZSBtb2R1bGUgZG9l cyBub3QgaGF2ZSBwYXJhbWV0ZXIgbXVsdGlwYXRoCm52bWUvMDA2IChjcmVhdGUgYW4gTlZNZU9G IHRhcmdldCB3aXRoIGEgYmxvY2sgZGV2aWNlLWJhY2tlZCBucykgW3Bhc3NlZF0KICAgIHJ1bnRp bWUgIDAuMTExcyAgLi4uICAwLjExNXMKbnZtZS8wMDcgKGNyZWF0ZSBhbiBOVk1lT0YgdGFyZ2V0 IHdpdGggYSBmaWxlLWJhY2tlZCBucykgICAgIFtwYXNzZWRdCiAgICBydW50aW1lICAwLjA4MXMg IC4uLiAgMC4wNjlzCm52bWUvMDA4IChjcmVhdGUgYW4gTlZNZU9GIGhvc3Qgd2l0aCBhIGJsb2Nr IGRldmljZS1iYWNrZWQgbnMpIFtwYXNzZWRdCiAgICBydW50aW1lICAxLjY5MHMgIC4uLiAgMS43 MjdzCm52bWUvMDA5IChjcmVhdGUgYW4gTlZNZU9GIGhvc3Qgd2l0aCBhIGZpbGUtYmFja2VkIG5z KSAgICAgICBbcGFzc2VkXQogICAgcnVudGltZSAgMS42NTlzICAuLi4gIDEuNjYxcwpudm1lLzAx MCAocnVuIGRhdGEgdmVyaWZpY2F0aW9uIGZpbyBqb2Igb24gTlZNZU9GIGJsb2NrIGRldmljZS1i YWNrZWQgbnMpIFtwYXNzZWRdCiAgICBydW50aW1lICAyOC43ODFzICAuLi4gIDMwLjE2NnMKbnZt ZS8wMTEgKHJ1biBkYXRhIHZlcmlmaWNhdGlvbiBmaW8gam9iIG9uIE5WTWVPRiBmaWxlLWJhY2tl ZCBucykgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDI1My44MzFzICAuLi4gIDIzOC43NzRzCm52bWUv MDEyIChydW4gbWtmcyBhbmQgZGF0YSB2ZXJpZmljYXRpb24gZmlvIGpvYiBvbiBOVk1lT0YgYmxv Y2sgZGV2aWNlLWJhY2tlZCBucykgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDQwLjAwM3MgIC4uLiAg NjguMDc2cwpudm1lLzAxMyAocnVuIG1rZnMgYW5kIGRhdGEgdmVyaWZpY2F0aW9uIGZpbyBqb2Ig b24gTlZNZU9GIGZpbGUtYmFja2VkIG5zKSBbcGFzc2VkXQogICAgcnVudGltZSAgMjcyLjY0OXMg IC4uLiAgMjgzLjcyMHMKbnZtZS8wMTQgKGZsdXNoIGEgTlZNZU9GIGJsb2NrIGRldmljZS1iYWNr ZWQgbnMpICAgICAgICAgICAgIFtwYXNzZWRdCiAgICBydW50aW1lICAyMS43NzJzICAuLi4gIDIx LjM5N3MKbnZtZS8wMTUgKHVuaXQgdGVzdCBmb3IgTlZNZSBmbHVzaCBmb3IgZmlsZSBiYWNrZWQg bnMpICAgICAgIFtwYXNzZWRdCiAgICBydW50aW1lICAyMS45MDhzICAuLi4gIDE4LjYyMnMKbnZt ZS8wMTYgKGNyZWF0ZS9kZWxldGUgbWFueSBOVk1lT0YgYmxvY2sgZGV2aWNlLWJhY2tlZCBucyBh bmQgdGVzdCBkaXNjb3ZlcnkpIFtwYXNzZWRdCiAgICBydW50aW1lICAxNS44NjBzICAuLi4gIDE4 LjMxM3MKbnZtZS8wMTcgKGNyZWF0ZS9kZWxldGUgbWFueSBmaWxlLW5zIGFuZCB0ZXN0IGRpc2Nv dmVyeSkgICAgIFtwYXNzZWRdCiAgICBydW50aW1lICAxNi40NzBzICAuLi4gIDE4LjM3NHMKbnZt ZS8wMTggKHVuaXQgdGVzdCBOVk1lLW9GIG91dCBvZiByYW5nZSBhY2Nlc3Mgb24gYSBmaWxlIGJh Y2tlbmQpIFtwYXNzZWRdCiAgICBydW50aW1lICAxLjY2NXMgIC4uLiAgMS44OTBzCm52bWUvMDE5 ICh0ZXN0IE5WTWUgRFNNIERpc2NhcmQgY29tbWFuZCBvbiBOVk1lT0YgYmxvY2stZGV2aWNlIG5z KSBbcGFzc2VkXQogICAgcnVudGltZSAgMS42ODFzICAuLi4gIDEuOTgycwpudm1lLzAyMCAodGVz dCBOVk1lIERTTSBEaXNjYXJkIGNvbW1hbmQgb24gTlZNZU9GIGZpbGUtYmFja2VkIG5zKSBbcGFz c2VkXQogICAgcnVudGltZSAgMS42NDVzICAuLi4gIDEuOTEzcwpudm1lLzAyMSAodGVzdCBOVk1l IGxpc3QgY29tbWFuZCBvbiBOVk1lT0YgZmlsZS1iYWNrZWQgbnMpICAgW3Bhc3NlZF0KICAgIHJ1 bnRpbWUgIDEuNjQ4cyAgLi4uICAxLjk1NnMKbnZtZS8wMjIgKHRlc3QgTlZNZSByZXNldCBjb21t YW5kIG9uIE5WTWVPRiBmaWxlLWJhY2tlZCBucykgIFtwYXNzZWRdCiAgICBydW50aW1lICAyLjA2 M3MgIC4uLiAgMi41NTNzCm52bWUvMDIzICh0ZXN0IE5WTWUgc21hcnQtbG9nIGNvbW1hbmQgb24g TlZNZU9GIGJsb2NrLWRldmljZSBucykgW3Bhc3NlZF0KICAgIHJ1bnRpbWUgIDEuNjkycyAgLi4u ICAyLjU4OHMKbnZtZS8wMjQgKHRlc3QgTlZNZSBzbWFydC1sb2cgY29tbWFuZCBvbiBOVk1lT0Yg ZmlsZS1iYWNrZWQgbnMpIFtwYXNzZWRdCiAgICBydW50aW1lICAxLjY0M3MgIC4uLiAgMS42NTZz Cm52bWUvMDI1ICh0ZXN0IE5WTWUgZWZmZWN0cy1sb2cgY29tbWFuZCBvbiBOVk1lT0YgZmlsZS1i YWNrZWQgbnMpIFtwYXNzZWRdCiAgICBydW50aW1lICAxLjY0MHMgIC4uLiAgMS42NjhzCm52bWUv MDI2ICh0ZXN0IE5WTWUgbnMtZGVzY3MgY29tbWFuZCBvbiBOVk1lT0YgZmlsZS1iYWNrZWQgbnMp IFtwYXNzZWRdCiAgICBydW50aW1lICAxLjY0M3MgIC4uLiAgMS45NjFzCm52bWUvMDI3ICh0ZXN0 IE5WTWUgbnMtcmVzY2FuIGNvbW1hbmQgb24gTlZNZU9GIGZpbGUtYmFja2VkIG5zKSBbcGFzc2Vk XQogICAgcnVudGltZSAgMS42NDFzICAuLi4gIDEuNjc3cwpudm1lLzAyOCAodGVzdCBOVk1lIGxp c3Qtc3Vic3lzIGNvbW1hbmQgb24gTlZNZU9GIGZpbGUtYmFja2VkIG5zKSBbcGFzc2VkXQogICAg cnVudGltZSAgMS42NDhzICAuLi4gIDEuODY4cwpudm1lLzAyOSAodGVzdCB1c2Vyc3BhY2UgSU8g dmlhIG52bWUtY2xpIHJlYWQvd3JpdGUgaW50ZXJmYWNlKSBbcGFzc2VkXQogICAgcnVudGltZSAg MS45ODJzICAuLi4gIDIuNzAzcwpudm1lLzAzMCAoZW5zdXJlIHRoZSBkaXNjb3ZlcnkgZ2VuZXJh dGlvbiBjb3VudGVyIGlzIHVwZGF0ZWQgYXBwcm9wcmlhdGVseSkgW3Bhc3NlZF0KICAgIHJ1bnRp bWUgIDAuMzA4cyAgLi4uICAwLjMyOHMKbnZtZS8wMzEgKHRlc3QgZGVsZXRpb24gb2YgTlZNZU9G IGNvbnRyb2xsZXJzIGltbWVkaWF0ZWx5IGFmdGVyIHNldHVwKSBbcGFzc2VkXQogICAgcnVudGlt ZSAgNS40MzJzICAuLi4gIDcuNDk1cwpudm1lLzAzOCAodGVzdCBkZWxldGlvbiBvZiBOVk1lT0Yg c3Vic3lzdGVtIHdpdGhvdXQgZW5hYmxpbmcpIFtwYXNzZWRdCiAgICBydW50aW1lICAwLjA1M3Mg IC4uLiAgMC4wNDZzCi0tIAoyLjIyLjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpMaW51eC1udm1lIG1haWxpbmcgbGlzdApMaW51eC1udm1lQGxpc3Rz LmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5m by9saW51eC1udm1lCg==