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=-10.7 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED 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 6D7F0C64E7C for ; Wed, 2 Dec 2020 19:35:42 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (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 CA77D206A5 for ; Wed, 2 Dec 2020 19:35:41 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org CA77D206A5 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:To:References:Message-Id:Date:In-Reply-To:From: Subject:Mime-Version:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=Sx8BORdTmOZ6c3m0PaYO4pjFSfFYBzSikGNKJfiAPjA=; b=x+PuGMfxyoRQsvxpAT+Pjfc8u h1XxXveWKSTpEBDz1sX74JPCPsoPuiQK7st/vnT74wGmQkTlgL7Ar10gkK5TFIcxuVcIG5PtZvDhm WYGWb6K8dACjw1gqE3O+21tHLNDhgKXscLWpXcubyEYdkuMcYAyM3o0u1mpsQhcRUbIDgYniXSx2c iBmUKfq4Eu7eWVPXwsrE3v5E5zvd2MOsLIRu5/j0xtyw2cN0klxYspjAzxlerxN27/eCYzwRTq7HR UZQmuB003zX6N2wNjqNtqS8QlZX6aT15/phiTXC837fHD2EQlXVHm09RETMSdSFcq4926uTTWbVXW tCJNEehTg==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kkXtJ-0002ZE-7F; Wed, 02 Dec 2020 19:34:17 +0000 Received: from mail-qt1-x841.google.com ([2607:f8b0:4864:20::841]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kkXtG-0002YY-2Q for linux-arm-kernel@lists.infradead.org; Wed, 02 Dec 2020 19:34:15 +0000 Received: by mail-qt1-x841.google.com with SMTP id l7so1927383qtp.8 for ; Wed, 02 Dec 2020 11:34:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=1Wk+CAE1KvZQne0n7C3iLulWineyglxiQ8gJr5x5grc=; b=FAhLa6G8eX+fjpnVroXPFkvBDEQOpaU5GjpyozPh9wLYSrllX5qwb9OWEoRX2GAjL/ a8zjBccMgbmaZs07bzs/vJPZl66PyaKj9xZ40f7nJibhGbMFejZlKlvor5F95dWFSVn6 OprO2gwLFF39lWSjifoAi/6q3MHzhaZoxaoRrr0XKGpYu6Sz7ItpK98PEJUYB/7bn7Vm pGBUvkTE4EFEuWCddCflaiV0GBPL0XRkD2QUi9nlgzx24m86bJlQaMEsncBMUO7m1DZw /ZTypAw8BCUoNv15fQErE121Q3FDVNy4pvkvucyhxWwfBmocxQB53oBtFDSi6Icmx7hl 3fFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=1Wk+CAE1KvZQne0n7C3iLulWineyglxiQ8gJr5x5grc=; b=S0o+hWwNmI06dW3onMTskW95fGrb9Ib27r1iR9QMguKJiThlrn9XkSBlRDuxkqWeNK Y1f5oTAfk+BsqQxK5jxqYzr/oZMw4Hf5uC5PBcHf24Pxz+xOy2LoSPUM3z18maM0MeXW uEcLZGZW0/fY15k0mMEzZJVZ2pA0RTVvN9prgPxvW9gZRsPCeTcamJGEx4QTt2IjRlj3 iGNEsEZNEtliGKexr1wpfLTGrL0lqYFhzob+Zqv4kGPbE7hCXZ8awCgYzYLdNklFjbMb LMraa2Ch+9Vfv3tQSaYL7dsO2uqC9hPLSCOqZWa5BbpqSucRRsMMtrSlQ44aGOMdSNrJ 8S0Q== X-Gm-Message-State: AOAM532aNCpXA2Egc8fUBs0zUe4FYdpilJfowPnGw2KBuc6ld+XLVLDz F6+Peh+jJmywy/VluhgpEQouujBP5Fx0Bt06 X-Google-Smtp-Source: ABdhPJxJqIVwHaVuexoGYpw1rpgol+wjWjfEEsC5HnzxfkY+wYFRQcS/bkFadsGeTDcgJ2n+PrlpKg== X-Received: by 2002:aed:33c4:: with SMTP id v62mr4186172qtd.19.1606937650828; Wed, 02 Dec 2020 11:34:10 -0800 (PST) Received: from elaines-2018-ibm-macbook-pro.lan (c-71-192-139-151.hsd1.nh.comcast.net. [71.192.139.151]) by smtp.gmail.com with ESMTPSA id u13sm2589321qta.87.2020.12.02.11.34.08 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 02 Dec 2020 11:34:10 -0800 (PST) Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.120.23.2.4\)) Subject: Re: [PATCH v8 3/4] doc: trusted-encrypted: updates with TEE as a new trust source From: gmail Elaine Palmer In-Reply-To: <1604419306-26105-4-git-send-email-sumit.garg@linaro.org> Date: Wed, 2 Dec 2020 14:34:07 -0500 Message-Id: <81A6B61D-3811-4957-B270-52AE5FA6DE4F@gmail.com> References: <1604419306-26105-1-git-send-email-sumit.garg@linaro.org> <1604419306-26105-4-git-send-email-sumit.garg@linaro.org> To: Sumit Garg X-Mailer: Apple Mail (2.3608.120.23.2.4) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201202_143414_189048_EF1D44E1 X-CRM114-Status: GOOD ( 37.95 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-doc@vger.kernel.org, NAYNA JAIN1 , zohar@linux.ibm.com, dhowells@redhat.com, Kenneth Goldman , gcwilson@linux.ibm.com, daniel.thompson@linaro.org, corbet@lwn.net, jmorris@namei.org, Markus.Wamser@mixed-mode.de, serge@hallyn.com, zgu@us.ibm.com, jejb@linux.ibm.com, lhinds@redhat.com, op-tee@lists.trustedfirmware.org, jarkko.sakkinen@linux.intel.com, linux-arm-kernel@lists.infradead.org, stefanb@us.ibm.com, janne.karhunen@gmail.com, linux-kernel@vger.kernel.org, linux-security-module@vger.kernel.org, keyrings@vger.kernel.org, casey@schaufler-ca.com, linux-integrity@vger.kernel.org, jens.wiklander@linaro.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org CkhpIFN1bWl0LCAgCgpUaGFuayB5b3UgZm9yIHRoZSBkZXRhaWxlZCBkZXNjcmlwdGlvbnMgYW5k IGV4YW1wbGVzIG9mIHRydXN0IHNvdXJjZXMgZm9yIFRydXN0ZWQgS2V5cy4gICBBIGdyb3VwIG9m IHVzIGluIElCTSAoU3RlZmFuIEJlcmdlciwgS2VuIEdvbGRtYW4sIFpob25nc2h1IEd1LCBOYXlu YSBKYWluLCBFbGFpbmUgUGFsbWVyLCBHZW9yZ2UgV2lsc29uLCBNaW1pIFpvaGFyKSBoYXZlIGJl ZW4gZG9pbmcgcmVsYXRlZCB3b3JrIGZvciBxdWl0ZSBzb21lIHRpbWUsIGFuZCB3ZSBoYXZlIG9u ZSBwcmltYXJ5IGNvbmNlcm4gYW5kIHNvbWUgc3VnZ2VzdGVkIGNoYW5nZXMgdG8gdGhlIGRvY3Vt ZW50LiAKCk91ciBwcmltYXJ5IGNvbmNlcm4gaXMgdGhhdCBkZXNjcmliaW5nIGEgVEVFIGFzIGEg VHJ1c3QgU291cmNlIG5lZWRzIHRvIGJlIG1vcmUgc3BlY2lmaWMuICAgRm9yIGV4YW1wbGUsICJB Uk0gVHJ1c3Rab25lIiBpcyBub3Qgc3VmZmljaWVudCwgYnV0ICJ3b2xmU1NMIGVtYmVkZGVkIFNT TC9UTFMgbGlicmFyeSB3aXRoIEFSTSBUcnVzdFpvbmUgQ3J5cHRvQ2VsbC0zMTAiIGlzLiAgSnVz dCBiZWNhdXNlIGEga2V5IGlzIHByb3RlY3RlZCBieSBzb2Z0d2FyZSBydW5uaW5nIGluIGEgVEVF IGlzIG5vdCBlbm91Z2ggdG8gZXN0YWJsaXNoIHRydXN0LiAgSnVzdCBsaWtlIGNyeXB0b2dyYXBo aWMgbW9kdWxlcywgYSBUcnVzdCBTb3VyY2Ugc2hvdWxkIGJlIGRlZmluZWQgYXMgYSBzcGVjaWZp YyBpbXBsZW1lbnRhdGlvbiBvbiBzcGVjaWZpYyBoYXJkd2FyZSB3aXRoIHdlbGwtZG9jdW1lbnRl ZCBlbnZpcm9ubWVudGFsIGFzc3VtcHRpb25zLCBkZXBlbmRlbmNpZXMsIGFuZCB0aHJlYXRzLgoK SW4gYWRkaXRpb24gdG8gdGhlIGFib3ZlIGNvbmNlcm4sIG91ciBzdWdnZXN0ZWQgY2hhbmdlcyBh cmUgaW5saW5lIGJlbG93LgoKPiBCZWdpbiBmb3J3YXJkZWQgbWVzc2FnZToKPiAKPiBGcm9tOiBT dW1pdCBHYXJnIDxzdW1pdC5nYXJnQGxpbmFyby5vcmc+Cj4gU3ViamVjdDogW1BBVENIIHY4IDMv NF0gZG9jOiB0cnVzdGVkLWVuY3J5cHRlZDogdXBkYXRlcyB3aXRoIFRFRSBhcyBhIG5ldyB0cnVz dCBzb3VyY2UKPiBEYXRlOiBOb3ZlbWJlciAzLCAyMDIwIGF0IDExOjAxOjQ1IEFNIEVTVAo+IFRv OiBqYXJra28uc2Fra2luZW5AbGludXguaW50ZWwuY29tLCB6b2hhckBsaW51eC5pYm0uY29tLCBq ZWpiQGxpbnV4LmlibS5jb20KPiBDYzogZGhvd2VsbHNAcmVkaGF0LmNvbSwgamVucy53aWtsYW5k ZXJAbGluYXJvLm9yZywgY29yYmV0QGx3bi5uZXQsIGptb3JyaXNAbmFtZWkub3JnLCBzZXJnZUBo YWxseW4uY29tLCBjYXNleUBzY2hhdWZsZXItY2EuY29tLCBqYW5uZS5rYXJodW5lbkBnbWFpbC5j b20sIGRhbmllbC50aG9tcHNvbkBsaW5hcm8ub3JnLCBNYXJrdXMuV2Ftc2VyQG1peGVkLW1vZGUu ZGUsIGxoaW5kc0ByZWRoYXQuY29tLCBrZXlyaW5nc0B2Z2VyLmtlcm5lbC5vcmcsIGxpbnV4LWlu dGVncml0eUB2Z2VyLmtlcm5lbC5vcmcsIGxpbnV4LXNlY3VyaXR5LW1vZHVsZUB2Z2VyLmtlcm5l bC5vcmcsIGxpbnV4LWRvY0B2Z2VyLmtlcm5lbC5vcmcsIGxpbnV4LWtlcm5lbEB2Z2VyLmtlcm5l bC5vcmcsIGxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZywgb3AtdGVlQGxpc3Rz LnRydXN0ZWRmaXJtd2FyZS5vcmcsIFN1bWl0IEdhcmcgPHN1bWl0LmdhcmdAbGluYXJvLm9yZz4K PiAKPiBVcGRhdGUgZG9jdW1lbnRhdGlvbiBmb3IgVHJ1c3RlZCBhbmQgRW5jcnlwdGVkIEtleXMg d2l0aCBURUUgYXMgYSBuZXcKPiB0cnVzdCBzb3VyY2UuIEZvbGxvd2luZyBpcyBicmllZiBkZXNj cmlwdGlvbiBvZiB1cGRhdGVzOgo+IAo+IC0gQWRkIGEgc2VjdGlvbiB0byBkZW1vc3RyYXRlIGEg bGlzdCBvZiBzdXBwb3J0ZWQgZGV2aWNlcyBhbG9uZyB3aXRoCj4gdGhlaXIgc2VjdXJpdHkgcHJv cGVydGllcy9ndWFyYW50ZWVzLgo+IC0gQWRkIGEga2V5IGdlbmVyYXRpb24gc2VjdGlvbi4KPiAt IFVwZGF0ZXMgZm9yIHVzYWdlIHNlY3Rpb24gaW5jbHVkaW5nIGRpZmZlcmVuY2VzIHNwZWNpZmlj IHRvIGEgdHJ1c3QKPiBzb3VyY2UuCj4gCj4gU2lnbmVkLW9mZi1ieTogU3VtaXQgR2FyZyA8c3Vt aXQuZ2FyZ0BsaW5hcm8ub3JnPgo+IFJldmlld2VkLWJ5OiBKYXJra28gU2Fra2luZW4gPGphcmtr by5zYWtraW5lbkBsaW51eC5pbnRlbC5jb20+Cj4gLS0tCj4gRG9jdW1lbnRhdGlvbi9zZWN1cml0 eS9rZXlzL3RydXN0ZWQtZW5jcnlwdGVkLnJzdCB8IDIwMyArKysrKysrKysrKysrKysrKystLS0t Cj4gMSBmaWxlIGNoYW5nZWQsIDE3MSBpbnNlcnRpb25zKCspLCAzMiBkZWxldGlvbnMoLSkKPiAK PiBkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9zZWN1cml0eS9rZXlzL3RydXN0ZWQtZW5jcnlw dGVkLnJzdCBiL0RvY3VtZW50YXRpb24vc2VjdXJpdHkva2V5cy90cnVzdGVkLWVuY3J5cHRlZC5y c3QKPiBpbmRleCAxZGE4NzlhLi4xNjA0MmM4IDEwMDY0NAo+IC0tLSBhL0RvY3VtZW50YXRpb24v c2VjdXJpdHkva2V5cy90cnVzdGVkLWVuY3J5cHRlZC5yc3QKPiArKysgYi9Eb2N1bWVudGF0aW9u L3NlY3VyaXR5L2tleXMvdHJ1c3RlZC1lbmNyeXB0ZWQucnN0Cj4gQEAgLTYsMzAgKzYsMTYxIEBA IFRydXN0ZWQgYW5kIEVuY3J5cHRlZCBLZXlzIGFyZSB0d28gbmV3IGtleSB0eXBlcyBhZGRlZCB0 byB0aGUgZXhpc3Rpbmcga2VybmVsCj4ga2V5IHJpbmcgc2VydmljZS4gIEJvdGggb2YgdGhlc2Ug bmV3IHR5cGVzIGFyZSB2YXJpYWJsZSBsZW5ndGggc3ltbWV0cmljIGtleXMsCj4gYW5kIGluIGJv dGggY2FzZXMgYWxsIGtleXMgYXJlIGNyZWF0ZWQgaW4gdGhlIGtlcm5lbCwgYW5kIHVzZXIgc3Bh Y2Ugc2VlcywKPiBzdG9yZXMsIGFuZCBsb2FkcyBvbmx5IGVuY3J5cHRlZCBibG9icy4gIFRydXN0 ZWQgS2V5cyByZXF1aXJlIHRoZSBhdmFpbGFiaWxpdHkKPiAtb2YgYSBUcnVzdGVkIFBsYXRmb3Jt IE1vZHVsZSAoVFBNKSBjaGlwIGZvciBncmVhdGVyIHNlY3VyaXR5LCB3aGlsZSBFbmNyeXB0ZWQK PiAtS2V5cyBjYW4gYmUgdXNlZCBvbiBhbnkgc3lzdGVtLiAgQWxsIHVzZXIgbGV2ZWwgYmxvYnMs IGFyZSBkaXNwbGF5ZWQgYW5kIGxvYWRlZAo+IC1pbiBoZXggYXNjaWkgZm9yIGNvbnZlbmllbmNl LCBhbmQgYXJlIGludGVncml0eSB2ZXJpZmllZC4KPiArb2YgYSBUcnVzdCBTb3VyY2UgZm9yIGdy ZWF0ZXIgc2VjdXJpdHksIHdoaWxlIEVuY3J5cHRlZCBLZXlzIGNhbiBiZSB1c2VkIG9uIGFueQo+ ICtzeXN0ZW0uIEFsbCB1c2VyIGxldmVsIGJsb2JzLCBhcmUgZGlzcGxheWVkIGFuZCBsb2FkZWQg aW4gaGV4IGFzY2lpIGZvcgo+ICtjb252ZW5pZW5jZSwgYW5kIGFyZSBpbnRlZ3JpdHkgdmVyaWZp ZWQuCj4gCj4gLVRydXN0ZWQgS2V5cyB1c2UgYSBUUE0gYm90aCB0byBnZW5lcmF0ZSBhbmQgdG8g c2VhbCB0aGUga2V5cy4gIEtleXMgYXJlIHNlYWxlZAo+IC11bmRlciBhIDIwNDggYml0IFJTQSBr ZXkgaW4gdGhlIFRQTSwgYW5kIG9wdGlvbmFsbHkgc2VhbGVkIHRvIHNwZWNpZmllZCBQQ1IKPiAt KGludGVncml0eSBtZWFzdXJlbWVudCkgdmFsdWVzLCBhbmQgb25seSB1bnNlYWxlZCBieSB0aGUg VFBNLCBpZiBQQ1JzIGFuZCBibG9iCj4gLWludGVncml0eSB2ZXJpZmljYXRpb25zIG1hdGNoLiAg QSBsb2FkZWQgVHJ1c3RlZCBLZXkgY2FuIGJlIHVwZGF0ZWQgd2l0aCBuZXcKPiAtKGZ1dHVyZSkg UENSIHZhbHVlcywgc28ga2V5cyBhcmUgZWFzaWx5IG1pZ3JhdGVkIHRvIG5ldyBwY3IgdmFsdWVz LCBzdWNoIGFzCj4gLXdoZW4gdGhlIGtlcm5lbCBhbmQgaW5pdHJhbWZzIGFyZSB1cGRhdGVkLiAg VGhlIHNhbWUga2V5IGNhbiBoYXZlIG1hbnkgc2F2ZWQKPiAtYmxvYnMgdW5kZXIgZGlmZmVyZW50 IFBDUiB2YWx1ZXMsIHNvIG11bHRpcGxlIGJvb3RzIGFyZSBlYXNpbHkgc3VwcG9ydGVkLgo+IAo+ IC1UUE0gMS4yCj4gLS0tLS0tLS0KPiArVHJ1c3QgU291cmNlCj4gKz09PT09PT09PT09PQo+IAo+ IC1CeSBkZWZhdWx0LCB0cnVzdGVkIGtleXMgYXJlIHNlYWxlZCB1bmRlciB0aGUgU1JLLCB3aGlj aCBoYXMgdGhlIGRlZmF1bHQKPiAtYXV0aG9yaXphdGlvbiB2YWx1ZSAoMjAgemVyb3MpLiAgVGhp cyBjYW4gYmUgc2V0IGF0IHRha2Vvd25lcnNoaXAgdGltZSB3aXRoIHRoZQo+IC10cm91c2VyJ3Mg dXRpbGl0eTogInRwbV90YWtlb3duZXJzaGlwIC11IC16Ii4KPiArVHJ1c3QgU291cmNlIHByb3Zp ZGVzIHRoZSBzb3VyY2Ugb2Ygc2VjdXJpdHkgZm9yIHRoZSBUcnVzdGVkIEtleXMsIG9uIHdoaWNo Cj4gK2Jhc2lzIFRydXN0ZWQgS2V5cyBlc3RhYmxpc2hlcyBhIFRydXN0IG1vZGVsIHdpdGggaXRz IHVzZXIuIEEgVHJ1c3QgU291cmNlIGNvdWxkCj4gK2RpZmZlciBmcm9tIG9uZSBzeXN0ZW0gdG8g YW5vdGhlciBkZXBlbmRpbmcgb24gaXRzIHNlY3VyaXR5IHJlcXVpcmVtZW50cy4gSXQKPiArY291 bGQgYmUgZWl0aGVyIGFuIG9mZi1jaGlwIGRldmljZSBvciBhbiBvbi1jaGlwIGRldmljZS4gRm9s bG93aW5nIHNlY3Rpb24KPiArZGVtb3N0cmF0ZXMgYSBsaXN0IG9mIHN1cHBvcnRlZCBkZXZpY2Vz IGFsb25nIHdpdGggdGhlaXIgc2VjdXJpdHkgcHJvcGVydGllcy8KPiArZ3VhcmFudGVlczoKUGxl YXNlIGNoYW5nZSB0aGUgZm9sbG93aW5nIAoiVHJ1c3QgU291cmNlIHByb3ZpZGVzIHRoZSBzb3Vy Y2Ugb2Ygc2VjdXJpdHkgZm9yIHRoZSBUcnVzdGVkIEtleXMsIG9uIHdoaWNoIGJhc2lzIFRydXN0 ZWQgS2V5cyBlc3RhYmxpc2hlcyBhIFRydXN0IG1vZGVsIHdpdGggaXRzIHVzZXIuIiAKdG8gCiJB IHRydXN0IHNvdXJjZSBwcm92aWRlcyB0aGUgc291cmNlIG9mIHNlY3VyaXR5IGZvciB0aGUgVHJ1 c3RlZCBLZXlzLiAgV2hldGhlciBvciBub3QgYSB0cnVzdCBzb3VyY2UgaXMgc3VmZmljaWVudGx5 IHNhZmUgZGVwZW5kcyBvbiB0aGUgc3RyZW5ndGggYW5kIGNvcnJlY3RuZXNzIG9mIGl0cyBpbXBs ZW1lbnRhdGlvbiwgYXMgd2VsbCBhcyB0aGUgdGhyZWF0IGVudmlyb25tZW50IGZvciBhIHNwZWNp ZmljIHVzZSBjYXNlLiAgU2luY2UgdGhlIGtlcm5lbCBkb2Vzbid0IGtub3cgd2hhdCB0aGUgZW52 aXJvbm1lbnQgaXMsIGFuZCB0aGVyZSBpcyBubyBtZXRyaWMgb2YgdHJ1c3QsIGl0IGlzIGRlcGVu ZGVudCBvbiB0aGUgY29uc3VtZXIgb2YgdGhlIFRydXN0ZWQgS2V5cyB0byBkZXRlcm1pbmUgaWYg dGhlIHRydXN0IHNvdXJjZSBpcyBzdWZmaWNpZW50bHkgc2FmZS4iCj4gCj4gLVRQTSAyLjAKPiAt LS0tLS0tLQo+ICsgICogIFJvb3Qgb2YgdHJ1c3QgZm9yIHN0b3JhZ2UKPiAKPiAtVGhlIHVzZXIg bXVzdCBmaXJzdCBjcmVhdGUgYSBzdG9yYWdlIGtleSBhbmQgbWFrZSBpdCBwZXJzaXN0ZW50LCBz byB0aGUga2V5IGlzCj4gLWF2YWlsYWJsZSBhZnRlciByZWJvb3QuIFRoaXMgY2FuIGJlIGRvbmUg dXNpbmcgdGhlIGZvbGxvd2luZyBjb21tYW5kcy4KPiArICAgICAoMSkgVFBNIChUcnVzdGVkIFBs YXRmb3JtIE1vZHVsZTogaGFyZHdhcmUgZGV2aWNlKQo+ICsKPiArICAgICAgICAgUm9vdGVkIHRv IFN0b3JhZ2UgUm9vdCBLZXkgKFNSSykgd2hpY2ggbmV2ZXIgbGVhdmVzIHRoZSBUUE0gdGhhdAo+ ICsgICAgICAgICBwcm92aWRlcyBjcnlwdG8gb3BlcmF0aW9uIHRvIGVzdGFibGlzaCByb290IG9m IHRydXN0IGZvciBzdG9yYWdlLgo+ICsKPiArICAgICAoMikgVEVFIChUcnVzdGVkIEV4ZWN1dGlv biBFbnZpcm9ubWVudDogT1AtVEVFIGJhc2VkIG9uIEFybSBUcnVzdFpvbmUpCj4gKwo+ICsgICAg ICAgICBSb290ZWQgdG8gSGFyZHdhcmUgVW5pcXVlIEtleSAoSFVLKSB3aGljaCBpcyBnZW5lcmFs bHkgYnVybnQgaW4gb24tY2hpcAo+ICsgICAgICAgICBmdXNlcyBhbmQgaXMgYWNjZXNzaWJsZSB0 byBURUUgb25seS4KPiArCj4gKyAgKiAgRXhlY3V0aW9uIGlzb2xhdGlvbgo+ICsKPiArICAgICAo MSkgVFBNCj4gKwo+ICsgICAgICAgICBGaXhlZCBzZXQgb2Ygb3BlcmF0aW9ucyBydW5uaW5nIGlu IGlzb2xhdGVkIGV4ZWN1dGlvbiBlbnZpcm9ubWVudC4KPiArCj4gKyAgICAgKDIpIFRFRQo+ICsK PiArICAgICAgICAgQ3VzdG9taXphYmxlIHNldCBvZiBvcGVyYXRpb25zIHJ1bm5pbmcgaW4gaXNv bGF0ZWQgZXhlY3V0aW9uCj4gKyAgICAgICAgIGVudmlyb25tZW50IHZlcmlmaWVkIHZpYSBTZWN1 cmUvVHJ1c3RlZCBib290IHByb2Nlc3MuCj4gKwo+ICsgICogT3B0aW9uYWwgYmluZGluZyB0byBw bGF0Zm9ybSBpbnRlZ3JpdHkgc3RhdGUKPiArCj4gKyAgICAgKDEpIFRQTQo+ICsKPiArICAgICAg ICAgS2V5cyBjYW4gYmUgb3B0aW9uYWxseSBzZWFsZWQgdG8gc3BlY2lmaWVkIFBDUiAoaW50ZWdy aXR5IG1lYXN1cmVtZW50KQo+ICsgICAgICAgICB2YWx1ZXMsIGFuZCBvbmx5IHVuc2VhbGVkIGJ5 IHRoZSBUUE0sIGlmIFBDUnMgYW5kIGJsb2IgaW50ZWdyaXR5Cj4gKyAgICAgICAgIHZlcmlmaWNh dGlvbnMgbWF0Y2guIEEgbG9hZGVkIFRydXN0ZWQgS2V5IGNhbiBiZSB1cGRhdGVkIHdpdGggbmV3 Cj4gKyAgICAgICAgIChmdXR1cmUpIFBDUiB2YWx1ZXMsIHNvIGtleXMgYXJlIGVhc2lseSBtaWdy YXRlZCB0byBuZXcgUENSIHZhbHVlcywKPiArICAgICAgICAgc3VjaCBhcyB3aGVuIHRoZSBrZXJu ZWwgYW5kIGluaXRyYW1mcyBhcmUgdXBkYXRlZC4gVGhlIHNhbWUga2V5IGNhbgo+ICsgICAgICAg ICBoYXZlIG1hbnkgc2F2ZWQgYmxvYnMgdW5kZXIgZGlmZmVyZW50IFBDUiB2YWx1ZXMsIHNvIG11 bHRpcGxlIGJvb3RzIGFyZQo+ICsgICAgICAgICBlYXNpbHkgc3VwcG9ydGVkLgo+ICsKPiArICAg ICAoMikgVEVFCj4gKwo+ICsgICAgICAgICBSZWxpZXMgb24gU2VjdXJlL1RydXN0ZWQgYm9vdCBw cm9jZXNzIGZvciBwbGF0Zm9ybSBpbnRlZ3JpdHkuIEl0IGNhbgo+ICsgICAgICAgICBiZSBleHRl bmRlZCB3aXRoIFRFRSBiYXNlZCBtZWFzdXJlZCBib290IHByb2Nlc3MuCj4gKwo+ICsgICogIE9u LWNoaXAgdmVyc3VzIG9mZi1jaGlwCj4gKwo+ICsgICAgICgxKSBUUE0KPiArCj4gKyAgICAgICAg IE9mZi1jaGlwIGRldmljZSBjb25uZWN0ZWQgdmlhIHNlcmlhbCBidXMgKGxpa2UgSTJDLCBTUEkg ZXRjLikgZXhwb3NpbmcKPiArICAgICAgICAgcGh5c2ljYWwgYWNjZXNzIHdoaWNoIHJlcHJlc2Vu dHMgYW4gYXR0YWNrIHN1cmZhY2UgdGhhdCBjYW4gYmUKPiArICAgICAgICAgbWl0aWdhdGVkIHZp YSB0YW1wZXIgZGV0ZWN0aW9uLgo+ICsKPiArICAgICAoMikgVEVFCj4gKwo+ICsgICAgICAgICBP bi1jaGlwIGZ1bmN0aW9uYWxpdHksIGltbXVuZSB0byB0aGlzIGF0dGFjayBzdXJmYWNlLgo+ICsK PiArICAqICBNZW1vcnkgYXR0YWNrcyAoRFJBTSBiYXNlZCBsaWtlIGF0dGFjaGluZyBhIGJ1cyBt b25pdG9yIGV0Yy4pCj4gKwo+ICsgICAgICgxKSBUUE0KPiArCj4gKyAgICAgICAgIEltbXVuZSB0 byB0aGVzZSBhdHRhY2tzIGFzIGl0IGRvZXNu4oCZdCBtYWtlIHVzZSBvZiBzeXN0ZW0gRFJBTS4K PiArCj4gKyAgICAgKDIpIFRFRQo+ICsKPiArICAgICAgICAgQW4gaW1wbGVtZW50YXRpb24gYmFz ZWQgb24gVHJ1c3Rab25lIHByb3RlY3RlZCBEUkFNIGlzIHN1c2NlcHRpYmxlIHRvCj4gKyAgICAg ICAgIHN1Y2ggYXR0YWNrcy4gSW4gb3JkZXIgdG8gbWl0aWdhdGUgdGhlc2UgYXR0YWNrcyBvbmUg bmVlZHMgdG8gcmVseSBvbgo+ICsgICAgICAgICBvbi1jaGlwIHNlY3VyZSBSQU0gdG8gc3RvcmUg c2VjcmV0cyBvciBoYXZlIHRoZSBlbnRpcmUgVEVFCj4gKyAgICAgICAgIGltcGxlbWVudGF0aW9u IGJhc2VkIG9uIG9uLWNoaXAgc2VjdXJlIFJBTS4gQW4gYWx0ZXJuYXRpdmUgbWl0aWdhdGlvbgo+ ICsgICAgICAgICB3b3VsZCBiZSB0byB1c2UgZW5jcnlwdGVkIERSQU0uCj4gKwo+ICsgICogIFNp ZGUtY2hhbm5lbCBhdHRhY2tzIChjYWNoZSwgbWVtb3J5LCBDUFUgb3IgdGltZSBiYXNlZCkKPiAr Cj4gKyAgICAgKDEpIFRQTQo+ICsKPiArICAgICAgICAgSW1tdW5lIHRvIHNpZGUtY2hhbm5lbCBh dHRhY2tzIGFzIGl0cyByZXNvdXJjZXMgYXJlIGlzb2xhdGVkIGZyb20gdGhlCj4gKyAgICAgICAg IG1haW4gT1MuCj4gKwo+ICsgICAgICgyKSBURUUKPiArCj4gKyAgICAgICAgIEEgY2FyZWZ1bCBp bXBsZW1lbnRhdGlvbiBpcyByZXF1aXJlZCB0byBtaXRpZ2F0ZSBhZ2FpbnN0IHRoZXNlIGF0dGFj a3MKPiArICAgICAgICAgZm9yIHJlc291cmNlcyB3aGljaCBhcmUgc2hhcmVkIChlZy4gc2hhcmVk IG1lbW9yeSkgd2l0aCB0aGUgbWFpbiBPUy4KPiArICAgICAgICAgQ2FjaGUgYW5kIENQVSBiYXNl ZCBzaWRlLWNoYW5uZWwgYXR0YWNrcyBjYW4gYmUgbWl0aWdhdGVkIHZpYQo+ICsgICAgICAgICBp bnZhbGlkYXRpbmcgY2FjaGVzIGFuZCBDUFUgcmVnaXN0ZXJzIGR1cmluZyBjb250ZXh0IHN3aXRj aCB0byBhbmQgZnJvbQo+ICsgICAgICAgICB0aGUgc2VjdXJlIHdvcmxkLgo+ICsgICAgICAgICBU byBtaXRpZ2F0ZSBhZ2FpbnN0IHRpbWUgYmFzZWQgYXR0YWNrcywgb25lIG5lZWRzIHRvIGhhdmUg dGltZQo+ICsgICAgICAgICBpbnZhcmlhbnQgaW1wbGVtZW50YXRpb25zIChsaWtlIGNyeXB0byBh bGdvcml0aG1zIGV0Yy4pLgo+ICsKPiArICAqICBSZXNpc3RhbmNlIHRvIHBoeXNpY2FsIGF0dGFj a3MgKHBvd2VyIGFuYWx5c2lzLCBlbGVjdHJvbWFnbmV0aWMgZW1hbmF0aW9uLAo+ICsgICAgIHBy b2JlcyBldGMuKQo+ICsKPiArICAgICAoMSkgVFBNCj4gKwo+ICsgICAgICAgICBQcm92aWRlcyBs aW1pdGVkIHByb3RlY3Rpb24gdXRpbGl6aW5nIHRhbXBlciByZXNpc3RhbmNlLgo+ICsKPiArICAg ICAoMikgVEVFCj4gKwo+ICsgICAgICAgICBQcm92aWRlcyBubyBwcm90ZWN0aW9uIGJ5IGl0c2Vs ZiwgcmVsaWVzIG9uIHRoZSB1bmRlcmx5aW5nIHBsYXRmb3JtIGZvcgo+ICsgICAgICAgICBmZWF0 dXJlcyBzdWNoIGFzIHRhbXBlciByZXNpc3RhbmNlLgo+ICsKPiArCnBsZWFzZSBhZGQgdGhlIGZv bGxvd2luZzoKCiogUHJvdmlzaW9uaW5nIC0gdGhlIHRydXN0IHNvdXJjZSdzIHVuaXF1ZSBhbmQg dmVyaWZpYWJsZSBjcnlwdG9ncmFwaGljIGlkZW50aXR5IGlzIHByb3Zpc2lvbmVkIGR1cmluZyBt YW51ZmFjdHVyaW5nCgooMSkgVFBNClRoZSB1bmlxdWUgYW5kIHZlcmlmaWFibGUgY3J5cHRvZ3Jh cGhpYyBpZGVudGl0eSBpcyB0aGUgZW5kb3JzZW1lbnQga2V5IChFSykgb3IgaXRzIHByaW1hcnkg c2VlZC4gIEEgcmV2aWV3IG9mIHRoZSBnZW5lcmF0aW9uIG9mIHRoZSBFSyBhbmQgaXRzIGFjY29t cGFueWluZyBjZXJ0aWZpY2F0ZSBpcyBwYXJ0IG9mIHRoZSBDb21tb24gQ3JpdGVyaWEgZXZhbHVh dGlvbiBvZiB0aGUgcHJvZHVjdCdzIGxpZmVjeWNsZSBwcm9jZXNzZXMgKEFMQ18qKS4gIFNlZSAi VENHIFByb3RlY3Rpb24gUHJvZmlsZSBmb3IgUEMgQ2xpZW50IFNwZWNpZmljIFRQTSAyIiAoaHR0 cHM6Ly90cnVzdGVkY29tcHV0aW5nZ3JvdXAub3JnL3Jlc291cmNlL3BjLWNsaWVudC1wcm90ZWN0 aW9uLXByb2ZpbGUtZm9yLXRwbS0yLTAvKS4KCigyKSBURUUKQSBwcm90ZWN0aW9uIHByb2ZpbGUg Zm9yIFRFRXMgZG9lcyBub3QgeWV0IGV4aXN0LiAgVGhlcmVmb3JlLCB0aGUgcHJvdmlzaW9uaW5n IHByb2Nlc3MgdGhhdCBnZW5lcmF0ZXMgdGhlIEhhcmR3YXJlIFVuaXF1ZSBLZXkgaXMgbm90IGV2 YWx1YXRlZCBieSBhbiBpbmRlcGVuZGVudCB0aGlyZCBwYXJ0eSBhbmQgaXMgaGlnaGx5IGRlcGVu ZGVudCBvbiB0aGUgbWFudWZhY3R1cmluZyBlbnZpcm9ubWVudC4gIAoKCiogQ3J5cHRvZ3JhcGh5 CigxKSBUUE0KQXMgcGFydCBvZiB0aGUgVFBNJ3MgbWFuZGF0b3J5IENvbW1vbiBDcml0ZXJpYSBl dmFsdWF0aW9uLCB0aGUgY29ycmVjdG5lc3Mgb2YgdGhlIFRQTSdzIGltcGxlbWVudGF0aW9uIG9m IGNyeXB0b2dyYXBoaWMgYWxnb3JpdGhtcywgdGhlIHByb3RlY3Rpb24gb2Yga2V5cywgYW5kIHRo ZSBnZW5lcmF0aW9uIG9mIHJhbmRvbSBudW1iZXJzLCBhbmQgb3RoZXIgc2VjdXJpdHktcmVsZXZh bnQgZnVuY3Rpb25zIG11c3QgYmUgZG9jdW1lbnRlZCwgcmV2aWV3ZWQsIGFuZCB0ZXN0ZWQgYnkg YW4gaW5kZXBlbmRlbnQgdGhpcmQgcGFydHkgZXZhbHVhdGlvbiBhZ2VuY3kuICBJdCBtdXN0IG1l ZXQgdGhlIHJlcXVpcmVtZW50cyBvZiBGSVBTIDE0MC0yLCBGSVBTIDE0MC0zLCBvciBJU08vSUVD IDE5NzkwOjIwMTIuIAoKKDIpIFRFRQpFdmFsdWF0aW9ucyBvZiBjcnlwdG9ncmFwaGljIG1vZHVs ZXMgd2l0aGluIFRFRXMgYXJlIG5vdCByZXF1aXJlZCwgYnV0IHNvbWUgYXJlIGF2YWlsYWJsZSBm b3Igc3BlY2lmaWMgaW1wbGVtZW50YXRpb25zIHdpdGhpbiBURUVzLgoKCgoqIEludGVyZmFjZXMg YW5kIEFQSXMKKDEpIFRQTXMgaGF2ZSB3ZWxsLWRvY3VtZW50ZWQsIHN0YW5kYXJkaXplZCBpbnRl cmZhY2VzIGFuZCBBUElzLgooMikgVW5sZXNzIHRoZXkgaW1wbGVtZW50IGZ1bmN0aW9uYWxpdHkg c3VjaCBhcyBhIHZpcnR1YWwgVFBNLCBURUVzIGhhdmUgY3VzdG9tIGludGVyZmFjZXMgYW5kIEFQ SXMuIAoKCgoqIFRocmVhdCBtb2RlbApUaGUgc3RyZW5ndGggYW5kIGFwcHJvcHJpYXRlbmVzcyBv ZiAgVFBNcyBhbmQgVEVFcyBmb3IgYSBnaXZlbiBwdXJwb3NlIG11c3QgYmUgYXNzZXNzZWQgd2hl biB1c2luZyB0aGVtIHRvIHByb3RlY3Qgc2VjdXJpdHktcmVsZXZhbnQgZGF0YS4gICAgCgpXZSBz dWdnZXN0IGRvY3VtZW50aW5nIGVudmlyb25tZW50YWwgYXNzdW1wdGlvbnMgYW5kIGRlcGVuZGVu Y2llcyBpbiBhIGhpZ2gtbGV2ZWwgdGhyZWF0IG1vZGVsIGZvciBlYWNoIGFkZGl0aW9uYWwgdHJ1 c3Qgc291cmNlLiAgSnVzdCBhcyBlYWNoIG5ldyBMU00gbmVlZHMgdG8gY29tcGx5IHdpdGggRG9j dW1lbnRhdGlvbi9zZWN1cml0eS9sc20tZGV2ZWxvcG1lbnQucnN0LCBlYWNoIG5ldyBUcnVzdGVk IEtleSBzb3VyY2Ugc2hvdWxkIHByb3ZpZGUgYSBoaWdoLWxldmVsIHRocmVhdCBtb2RlbC4gICBB biBleGFtcGxlIG9mIGEgaGlnaC1sZXZlbCB0aHJlYXQgbW9kZWwgaXMgIkNvbW1vbiBTZWN1cml0 eSBUaHJlYXRzIHYxLjDigJ0gKGh0dHBzOi8vd3d3Lm9wZW5jb21wdXRlLm9yZy9kb2N1bWVudHMv Y29tbW9uLXNlY3VyaXR5LXRocmVhdHMtbm90ZXMtMS1wZGYgKS4gCgpUaGUgb3JpZ2luYWwgVHJ1 c3RlZCBLZXlzIGltcGxlbWVudGF0aW9uIGFzc3VtZWQgZGlzY3JldGUgcGh5c2ljYWwgVFBNcyBm b3Iga2V5IHByb3RlY3Rpb24uICBIb3dldmVyLCBldmVuIHBoeXNpY2FsIFRQTXMgdGhlbXNlbHZl cyB2YXJ5IGJhc2VkIG9uIHRoZSBtYW51ZmFjdHVyZXIgYW5kIHN5c3RlbXMgaW4gd2hpY2ggdGhl eSBhcmUgcGxhY2VkLiAgVGhlIGVtYmVkZGVkIGNoaXBzZXQsIGZpcm13YXJlIGxvYWQsIGFsZ29y aXRobXMsIHBhY2thZ2luZywgcGlucywgYW5kIGNvdW50ZXJtZWFzdXJlcyB2YXJ5LiAgKFRocmVh dHMgYW5kIG1pdGlnYXRpb25zIG9uIHBoeXNpY2FsIFRQTXMgYXJlIHdlbGwgZG9jdW1lbnRlZCwg ZS5nLiwgIlRocmVhdCBNb2RlbCBvZiBhIFNjZW5hcmlvIEJhc2VkIG9uIFRydXN0ZWQgUGxhdGZv cm0gTW9kdWxlIDIuMCBTcGVjaWZpY2F0aW9u4oCdIChodHRwOi8vY2V1ci13cy5vcmcvVm9sLTEw MTEvNi5wZGYpLgoKU3BlY2lmaWMgdG8gVHJ1c3RlZCBLZXlzIGFuZCBUUE1zLCB0aGVyZSBpcyBz b21lIGRpc2N1c3Npb24gb2YgdGhyZWF0cyBhbmQgbWl0aWdhdGlvbnMgaW4gdGhlIEludGVncml0 eV9vdmVydmlldy5wZGYgb24gdGhlIElNQSB3aWtpOgoKCeKAoiBUaGUgdHJ1c3RlZCBrZXkgY29t cG9uZW50IGRvZXMgdHdvIHRoaW5ncyB0byBoZWxwIHdpdGggc2VjdXJlIGtleSBtYW5hZ2VtZW50 IG9uIExpbnV4LiBGaXJzdCwgaXQgcHJvdmlkZXMgYSBrZXJuZWwga2V5IHJpbmcgc2VydmljZSBp biB3aGljaCB0aGUgc3ltbWV0cmljIGVuY3J5cHRpb24ga2V5cyBhcmUgbmV2ZXIgdmlzaWJsZSBp biBwbGFpbiB0ZXh0IHRvIHVzZXJzcGFjZS4gVGhlIGtleXMgYXJlIGNyZWF0ZWQgaW4gdGhlIGtl cm5lbCwgYW5kIHNlYWxlZCBieSBhIGhhcmR3YXJlIGRldmljZSBzdWNoIGFzIGEgVFBNLCB3aXRo IHVzZXJzcGFjZSBzZWVpbmcgb25seSB0aGUgc2VhbGVkIGJsb2JzLiBNYWxpY2lvdXMgb3IgY29t cHJvbWlzZWQgYXBwbGljYXRpb25zIGNhbm5vdCBzdGVhbCBhIHRydXN0ZWQga2V5LCBzaW5jZSBv bmx5IHRoZSBrZXJuZWwgY2FuIHNlZSB0aGUgdW5zZWFsZWQgYmxvYnMuIFNlY29uZGx5LCB0aGUg dHJ1c3RlZCBrZXlzIGNhbiB0aWUga2V5IHVuc2VhbGluZyB0byB0aGUgaW50ZWdyaXR5IG1lYXN1 cmVtZW50cywgc28gdGhhdCBrZXlzIGNhbm5vdCBiZSBzdG9sZW4gaW4gYW4gb2ZmbGluZSBhdHRh Y2ssIHN1Y2ggYXMgYnkgYm9vdGluZyBhbiB1bmxvY2tlZCBMaW51eCBpbWFnZSBmcm9tIENEIG9y IFVTQi4gIEFzIHRoZSBtZWFzdXJlbWVudHMgd2lsbCBiZSBkaWZmZXJlbnQsIHRoZSBUUE0gY2hp cCB3aWxsIHJlZnVzZSB0byB1bnNlYWwgdGhlIGtleXMsIGV2ZW4gZm9yIHRoZSBrZXJuZWwuCgpD b25zdW1lcnMgb2YgVHJ1c3RlZCBLZXlzIGluIGRpZmZlcmVudCBlbnZpcm9ubWVudHMgbmVlZCBl bm91Z2ggaW5mb3JtYXRpb24gc28gdGhhdCB0aGV5IGNhbiBjcmVhdGUgdGhlaXIgb3duIHRocmVh dCBtb2RlbHMgdGFpbG9yZWQgdG8gdGhlaXIgdXNlIGNhc2VzLiAgRm9yIHRoZSBwcmVzZW50IHN1 Ym1pc3Npb24sIGEgaGlnaC1sZXZlbCBzZWN1cml0eSBtb2RlbCBvZiBBUk0gVHJ1c3Rab25lIGFu ZCBob3cgVHJ1c3RlZCBLZXlzIGtleSBwcm90ZWN0aW9uIGlzIGltcGxlbWVudGVkIGFsb25nIHdp dGggYW4gZW51bWVyYXRpb24gb2Ygc2VjdXJpdHkgY29uc2lkZXJhdGlvbnMgZm9yIGVuZC11c2Ug dGhyZWF0IG1vZGVscyB3b3VsZCBiZSBhcHByb3ByaWF0ZS4gIAoKQW4gZXhjZWxsZW50IGFuZCBy ZWxhdGVkIHBhcGVyIGRlc2NyaWJlcyB0aGUgc3RyZW5ndGhzLCB3ZWFrbmVzc2VzLCBhbmQgY291 bnRlcm1lYXN1cmVzIG9mIGEgZmlybXdhcmUgVFBNIGltcGxlbWVudGVkIHdpdGhpbiBhIFRFRS4g IFNlZSAiZlRQTTogQSBTb2Z0d2FyZS1vbmx5IEltcGxlbWVudGF0aW9uIG9mIGEgVFBNIENoaXDi gJ0gKGh0dHBzOi8vd3d3LnVzZW5peC5vcmcvY29uZmVyZW5jZS91c2VuaXhzZWN1cml0eTE2L3Rl Y2huaWNhbC1zZXNzaW9ucy9wcmVzZW50YXRpb24vcmFqKQoKCj4gK0tleSBHZW5lcmF0aW9uCj4g Kz09PT09PT09PT09PT09Cj4gKwo+ICtUcnVzdGVkIEtleXMKPiArLS0tLS0tLS0tLS0tCj4gKwo+ ICtOZXcga2V5cyBhcmUgY3JlYXRlZCBmcm9tIHRydXN0IHNvdXJjZSBnZW5lcmF0ZWQgcmFuZG9t IG51bWJlcnMsIGFuZCBhcmUKPiArZW5jcnlwdGVkL2RlY3J5cHRlZCB1c2luZyB0cnVzdCBzb3Vy Y2Ugc3RvcmFnZSByb290IGtleS4KUGxlYXNlIGNoYW5nZSB0aGUgZm9sbG93aW5nCiJOZXcga2V5 cyBhcmUgY3JlYXRlZCBmcm9tIHRydXN0IHNvdXJjZSBnZW5lcmF0ZWQgcmFuZG9tIG51bWJlcnMs IGFuZCBhcmUgZW5jcnlwdGVkL2RlY3J5cHRlZCB1c2luZyB0cnVzdCBzb3VyY2Ugc3RvcmFnZSBy b290IGtleS4iCnRvCiJOZXcga2V5cyBhcmUgY3JlYXRlZCBmcm9tIHJhbmRvbSBudW1iZXJzIGdl bmVyYXRlZCBpbiB0aGUgdHJ1c3Qgc291cmNlLiBUaGV5IGFyZSBlbmNyeXB0ZWQvZGVjcnlwdGVk IHVzaW5nIGEgY2hpbGQga2V5IGluIHRoZSBzdG9yYWdlIGtleSBoaWVyYXJjaHkuICBFbmNyeXB0 aW9uIGFuZCBkZWNyeXB0aW9uIG9mIHRoZSBjaGlsZCBrZXkgbXVzdCBiZSBwcm90ZWN0ZWQgYnkg YSBzdHJvbmcgYWNjZXNzIGNvbnRyb2wgcG9saWN5IHdpdGhpbiB0aGUgdHJ1c3Qgc291cmNlLiDi gJwKClRoYW5rIHlvdS4gCkVsYWluZQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCkVsYWluZSBSLiBQYWxtZXIsIFNlbmlvciBUZWNobmljYWwgU3RhZmYgTWVtYmVyClNlY3Vy ZSBTeXN0ZW1zIGFuZCBBY2FkZW15IG9mIFRlY2hub2xvZ3kKSUJNIFQuSi4gV2F0c29uIFJlc2Vh cmNoIENlbnRlcgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpsaW51eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmlu ZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9s aW51eC1hcm0ta2VybmVsCg==