From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH v5 00/10] TEE mediator (and OP-TEE) support in XEN Date: Sat, 1 Jun 2019 15:50:10 +0100 Message-ID: <06a4f534-e671-004c-93bb-31b60ed77d28@arm.com> References: <20190521212530.12706-1-volodymyr_babchuk@epam.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hX5Kr-0002Zh-C4 for xen-devel@lists.xenproject.org; Sat, 01 Jun 2019 14:50:17 +0000 In-Reply-To: <20190521212530.12706-1-volodymyr_babchuk@epam.com> Content-Language: en-US List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Volodymyr Babchuk , "xen-devel@lists.xenproject.org" Cc: Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Ian Jackson , Tim Deegan , "tee-dev@lists.linaro.org" , Jan Beulich List-Id: xen-devel@lists.xenproject.org SGkgVm9sb2R5bXlyLAoKSSB0cmllZCB0byBhcHBseSB0aGUgcGF0Y2hlcyB0byBzdGFnaW5nIGJ1 dCBmYWlsIGJlY2F1c2UgdGhlIHBhdGNoZXMgCmNvbnRhaW5zID0yMC4gRG8geW91IGhhdmUgYSB0 cmVlIHdpdGggdGhlIHNlcmllcyBhcHBsaWVkPwoKQ2hlZXJzLAoKT24gNS8yMS8xOSAxMDoyNSBQ TSwgVm9sb2R5bXlyIEJhYmNodWsgd3JvdGU6Cj4gSGVsbG8gY29tbXVuaXR5LAo+IAo+IFRoaXMg aXMgdGhlIGZpZnRoIHZlcnNpb24gb2YgT1AtVEVFIG1lZGlhdG9yIGluIFhFTi4KPiAKPiBPUC1U RUUgMy41LjAgd2FzIHJlbGVhc2VkIHdoZW4gSSB3b3JrZWQgb24gdGhpcyB2ZXJzaW9uIG9mIHRo ZQo+IHBhdGhlcy4gVGhpcyBpcyB0aGUgZmlyc3QgcmVsZWFzZSB3aGVyZSB2aXJ0dWFsaXphdGlv biBzdXBwb3J0IGlzCj4gYXZhaWxhYmxlLiBUaGlzIHJlbGVhc2UgaW5jbHVkZXMgYm90aCBvcmln aW5hbCB2aXJ0dWFsaXphdGlvbiBwYXRjaGVzCj4gYW5kIG5ldyBTTUMgdGhhdCByZXRyZXZpZXMg bnVtYmVyIG9mIHRocmVhZHMgZnJvbSBPUC1URUUuCj4gCj4gTWFueSB0aGFua3MgdG8gYm90aCBP UC1URUUgYW5kIFhlbiBjb21tdW5pdGllcyBmb3IgcmV2aWV3aW5nIGFuZCBoZWxwaW5nCj4gd2l0 aCBteSBjaGFuZ2VzIHRvIHRoZSBib3RoIHByb2plY3RzLgo+IAo+IEdsb2JhbCBjaGFuZ2VzIGZy b20gdjQ6Cj4gICAtIFN1YnN0YW50aWFsIHJld29yayBvZiBPUC1URUUgbWVkaWF0b3IuIE5vdyBp dCB0cmllcyB0byByZXR1cm4gbWVhbmluZ2Z1bAo+ICAgICBlcnJvciBjb2RlcyBiYWNrIHRvIHRo ZSBndWVzdC4KPiAgIC0gT1AtVEVFIG1lZGlhdG9yIGRvZXMgbm90IHVzZSBzdHJ1Y3QgY3B1X3Vz ZXJfcmVncyBhcyBhIHN0b3JhZ2UgZm9yCj4gICAgIHBhcmFtZXRlcnMgYW5kIHJldHVybiB2YWx1 ZXMgd2hlbiBjYWxsaW5nIE9QLVRFRS4gVGhpcyBtYWtlcyBpdAo+ICAgICBjb21wYXRiaWxlIHdp dGggcmVxdWlyZW1lbnQgZnJvbSBTTUNDQy4KPiAgIC0gdGVlPW5hdGl2ZSBvcHRpb24gcmVwbGFj ZWQgd2l0aCB0ZWU9b3B0ZWUKPiAgIC0gQXV0aG9yc2hpcCBhbmQgcy1vLWIgdGFnIHJlc2V0IHRv IG15IEVQQU0gbWFpbCBhZGRyZXNzCj4gCj4gT3ZlcmFsbCBjaGFuZ2VzIGZyb20gdjM6Cj4gCj4g ICAtIFBhdGNoICJhcm06IGFkZCB0ZWVfZW5hYmxlZCBmbGFnIHRvIHhlbl9hcmNoX2RvbWFpbmNv bmZpZyIgd2FzCj4gICAgIHNxdWFzaGVkIGludG8gInhlbi9hcm06IGFkZCBnZW5lcmljIFRFRSBt ZWRpYXRvciBmcmFtZXdvcmsiCj4gICAtIEkgaW1wbGVtZW50ZWQgbW9yZSBlbGFib3JhdGUgZXJy b3IgcmVwb3RpbmcgdG8gYSBndWVzdC4gTm93IGd1ZXN0Cj4gICAgIHdpbGwgZ2V0IG1lYW5pbmdm dWwgZXJyb3IgY29kZXMgaW5zdGVhZCBvZiBnZW5lcmljCj4gICAgIEFSTV9TTUNDQ19FUlJfVU5L Tk9XTl9GVU5DVElPTi4KPiAKPiBQZXItcGF0Y2ggY2hhbmdlcyBhcmUgZGVzY3JpYmVkIGluIGNv cnJlc3BvbmRpbmcgZW1haWxzLgo+IAo+IENoYW5nZXMgZnJvbSB2MjoKPiAKPiAgIC0gVXNlIGRv bWFpbiBmbGFncyBpbnN0ZWQgb2YgZG9tY3RsIGludGVyZmFjZSB0byBlbmFibGUgb3B0ZWUgZm9y IGd1ZXN0cwo+ICAgLSBSZW1vdmUgcGF0Y2ggImxpYnhjOiBhZGQgeGNfZG9tX3RlZV9lbmFibGUo Li4uKSBmdW5jdGlvbiIgYmVjYXVzZQo+ICAgICBvZiBwcmV2aW91cyBjaGFuZ2UKPiAgIC0gTWVk aWF0b3Igbm93IHN0b3JlcyBvd24gY29udGV4dCBpbiBhcmNoIHBhcnQgb2Ygc3RydWN0IGRvbWFp biwgc28KPiAgICAgSSByZW1vdmVkIHBhdGNoICJvcHRlZTogYWRkIGRvbWFpbiBjb250ZXh0cyIK PiAKPiBQZXItcGF0Y2ggY2hhbmdlcyBhcmUgZGVzY3JpYmVkIGluIGNvcnJlc3BvbmRpbmcgZW1h aWxzLgo+IAo+ID09PT0KPiB2MjoKPiAKPiBUaGlzIGlzIHYyIG9mIHBhdGNoIHNlcmllcyBmb3Ig T1AtVEVFIG1lZGlhdG9yIHN1cHBvcnQgaW4gWEVOLiBDaGFuZ2VzIGZyb20gdjE6Cj4gCj4gICAt IEFkZGVkIGRvbWN0bCBpbnRlcmZhY2UsIHNvIG5vdyB4bCBkZWNpZGVzIHdoYXQgZG9tYWluIHNo b3VsZCB3b3JrIHdpdGggVEVFCj4gICAtIFJlbW92ZWQgWFNNIHN1cHBvcnQgZHVlIHRvIGNoYW5n ZSBkZXNjcmliZWQgYWJvdmUKPiAgIC0gUGF0Y2ggd2l0aCBPUC1URUUgbWVkaWF0b3Igd2FzIHNw bGl0ZWQgdG8gNyBzZXBhcmF0ZSBwYXRjaGVzCj4gICAtIFJlbW92ZWQgcGF0Y2ggd2l0aCBjYWxs X3NtY2NjKCkgZnVuY3Rpb24uIE5vdyB0aGlzIHNlcmllcyBkZXBlbmQgb24KPiAgICAgSnVsaWVu IEdyYWxsJ3Mgc2VyaWVzICJ4ZW4vYXJtOiBTTUNDQyBmaXh1cCBhbmQgaW1wcm92ZW1lbnQiIFsz XQo+IAo+ID09PT09Cj4gdjE6Cj4gCj4gVGhpcyBpcyBmb2xsb3cgZm9yIHBhdGNoIHNlcmllcyBb MV0uIFRoZXJlIHdhcyBsb3RzIG9mIGRpc2N1c3Npb25zCj4gZm9yIHRoYXQgc2VyaWVzIGFuZCBJ IHRyaWVkIHRvIGFkZHJlc3MgYWxsIG9mIHRoZW0gaW4gdGhpcyBuZXcgcGF0Y2hzZXQuCj4gCj4g Q3VycmVudGx5LCBJIGhhZCBhIHdvcmtpbmcgc29sdXRpb24gZm9yIE9QLVRFRSB2aXJ0dWFsaXph dGlvbiBhbmQgaXQgaXMgYmVpbmcKPiB1cHN0cmVhbWVkIHJpZ2h0IG5vdyAoWzJdKS4gU28sIEkg dGhpbmsgaXQgaXMgYSBnb29kIHRpbWUgdG8gaW50cm9kdWNlIHN1cHBvcnQKPiBpbiBYRU4gYXMg d2VsbC4KPiAKPiBUaGlzIHNlcmllcyBpbmNsdWRlIGdlbmVyaWMgVEVFIG1lZGlhdG9yIGZyYW1l d29yayBhbmQgZnVsbC1zY2FsZSBPUC1URUUgbWVkaWF0b3IKPiB3aGljaCBpcyB3b3JraW5nIHdp dGggbWVudGlvbmVkIGNoYWdlcyBpbiBPUC1URUUuIFNvLCBtdWx0aXBsZSBkb21haW5zIGNhbgo+ IHdvcmsgc2ltdWx0YW5lb3VzbHkgd2l0aCBPUC1URUUuCj4gCj4gSSBhZGRlZCBYU00gc3VwcG9y dCwgc28gbm93IGl0IGlzIHBvc3NpYmxlIHRvIGNvbnRyb2wgd2hpY2ggZG9tYWlucyBjYW4gd29y awo+IHdpdGggVEVFcy4gQWxzbyBJIGNoYW5nZWQgd2F5IGhvdyBURUUgZGlzY292ZXJ5IGlzIGRv bmUuIE5vdyAgaXQgaXMgdmVyeQo+IGdlbmVyaWMgYW5kIHNob3VsZCBzdXBwb3J0IGFueSBwbGF0 Zm9ybS4KPiAKPiBbMV0gaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9hcmNoaXZlcy9odG1s L3hlbi1kZXZlbC8yMDE3LTEwL21zZzAxNDUxLmh0bWwKPiBbMl0gaHR0cHM6Ly9naXRodWIuY29t L09QLVRFRS9vcHRlZV9vcy9wdWxsLzIzNzAKPiBbM10gaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0 Lm9yZy9hcmNoaXZlcy9odG1sL3hlbi1kZXZlbC8yMDE4LTA4L21zZzAyMTM4Lmh0bWwKPiAKPiAK PiBWb2xvZHlteXIgQmFiY2h1ayAoMTApOgo+ICAgIHhlbi9hcm06IGFkZCBnZW5lcmljIFRFRSBt ZWRpYXRvciBmcmFtZXdvcmsKPiAgICB4ZW4vYXJtOiBvcHRlZTogYWRkIE9QLVRFRSBoZWFkZXIg ZmlsZXMKPiAgICB4ZW4vYXJtOiBvcHRlZTogYWRkIE9QLVRFRSBtZWRpYXRvciBza2VsZXRvbgo+ ICAgIHhlbi9hcm06IG9wdGVlOiBhZGQgZmFzdCBjYWxscyBoYW5kbGluZwo+ICAgIHhlbi9hcm06 IG9wdGVlOiBhZGQgc3RkIGNhbGwgaGFuZGxpbmcKPiAgICB4ZW4vYXJtOiBvcHRlZTogYWRkIHN1 cHBvcnQgZm9yIFJQQyBTSE0gYnVmZmVycwo+ICAgIHhlbi9hcm06IG9wdGVlOiBhZGQgc3VwcG9y dCBmb3IgYXJiaXRyYXJ5IHNoYXJlZCBtZW1vcnkKPiAgICB4ZW4vYXJtOiBvcHRlZTogYWRkIHN1 cHBvcnQgZm9yIFJQQyBjb21tYW5kcwo+ICAgIHRvb2xzL2FybTogdGVlOiBhZGQgInRlZSIgb3B0 aW9uIGZvciB4bC5jZmcKPiAgICB0b29scy9hcm06IG9wdGVlOiBjcmVhdGUgb3B0ZWUgZmlybXdh cmUgbm9kZSBpbiBEVCBpZiB0ZWU9b3B0ZWUKPiAKPiAgIE1BSU5UQUlORVJTICAgICAgICAgICAg ICAgICAgICAgICAgIHwgICAgNiArCj4gICBkb2NzL21hbi94bC5jZmcuNS5wb2QuaW4gICAgICAg ICAgICB8ICAgMTkgKwo+ICAgdG9vbHMvbGlieGwvbGlieGwuaCAgICAgICAgICAgICAgICAgfCAg ICA1ICsKPiAgIHRvb2xzL2xpYnhsL2xpYnhsX2FybS5jICAgICAgICAgICAgIHwgICA0MiArCj4g ICB0b29scy9saWJ4bC9saWJ4bF90eXBlcy5pZGwgICAgICAgICB8ICAgIDYgKwo+ICAgdG9vbHMv eGwveGxfcGFyc2UuYyAgICAgICAgICAgICAgICAgfCAgICA5ICsKPiAgIHhlbi9hcmNoL2FybS9L Y29uZmlnICAgICAgICAgICAgICAgIHwgICAgOSArCj4gICB4ZW4vYXJjaC9hcm0vTWFrZWZpbGUg ICAgICAgICAgICAgICB8ICAgIDEgKwo+ICAgeGVuL2FyY2gvYXJtL2RvbWFpbi5jICAgICAgICAg ICAgICAgfCAgIDE5ICsKPiAgIHhlbi9hcmNoL2FybS9zZXR1cC5jICAgICAgICAgICAgICAgIHwg ICAgMiArCj4gICB4ZW4vYXJjaC9hcm0vdGVlL0tjb25maWcgICAgICAgICAgICB8ICAgIDQgKwo+ ICAgeGVuL2FyY2gvYXJtL3RlZS9NYWtlZmlsZSAgICAgICAgICAgfCAgICAyICsKPiAgIHhlbi9h cmNoL2FybS90ZWUvb3B0ZWUuYyAgICAgICAgICAgIHwgMTUzNiArKysrKysrKysrKysrKysrKysr KysrKysrKysKPiAgIHhlbi9hcmNoL2FybS90ZWUvdGVlLmMgICAgICAgICAgICAgIHwgICA5MyAr Kwo+ICAgeGVuL2FyY2gvYXJtL3ZzbWMuYyAgICAgICAgICAgICAgICAgfCAgICA1ICsKPiAgIHhl bi9hcmNoL2FybS94ZW4ubGRzLlMgICAgICAgICAgICAgIHwgICAgNyArCj4gICB4ZW4vaW5jbHVk ZS9hc20tYXJtL2RvbWFpbi5oICAgICAgICB8ICAgIDQgKwo+ICAgeGVuL2luY2x1ZGUvYXNtLWFy bS90ZWUvb3B0ZWVfbXNnLmggfCAgNDQ0ICsrKysrKysrCj4gICB4ZW4vaW5jbHVkZS9hc20tYXJt L3RlZS9vcHRlZV9zbWMuaCB8ICA1NTYgKysrKysrKysrKwo+ICAgeGVuL2luY2x1ZGUvYXNtLWFy bS90ZWUvdGVlLmggICAgICAgfCAgMTA5ICsrCj4gICB4ZW4vaW5jbHVkZS9wdWJsaWMvYXJjaC1h cm0uaCAgICAgICB8ICAgIDQgKwo+ICAgMjEgZmlsZXMgY2hhbmdlZCwgMjg4MiBpbnNlcnRpb25z KCspCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgeGVuL2FyY2gvYXJtL3RlZS9LY29uZmlnCj4gICBj cmVhdGUgbW9kZSAxMDA2NDQgeGVuL2FyY2gvYXJtL3RlZS9NYWtlZmlsZQo+ICAgY3JlYXRlIG1v ZGUgMTAwNjQ0IHhlbi9hcmNoL2FybS90ZWUvb3B0ZWUuYwo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0 IHhlbi9hcmNoL2FybS90ZWUvdGVlLmMKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCB4ZW4vaW5jbHVk ZS9hc20tYXJtL3RlZS9vcHRlZV9tc2cuaAo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IHhlbi9pbmNs dWRlL2FzbS1hcm0vdGVlL29wdGVlX3NtYy5oCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgeGVuL2lu Y2x1ZGUvYXNtLWFybS90ZWUvdGVlLmgKPiAKCi0tIApKdWxpZW4gR3JhbGwKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxp c3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVj dC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw= 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=-6.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,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 3BCFCC28CC1 for ; Sat, 1 Jun 2019 14:50:36 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (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 EBF3727738 for ; Sat, 1 Jun 2019 14:50:35 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org EBF3727738 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=arm.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hX5Ks-0002Zm-A6; Sat, 01 Jun 2019 14:50:18 +0000 Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hX5Kr-0002Zh-C4 for xen-devel@lists.xenproject.org; Sat, 01 Jun 2019 14:50:17 +0000 X-Inumbo-ID: 90f92f29-847c-11e9-8980-bc764e045a96 Received: from foss.arm.com (unknown [217.140.101.70]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTP id 90f92f29-847c-11e9-8980-bc764e045a96; Sat, 01 Jun 2019 14:50:15 +0000 (UTC) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 45B23374; Sat, 1 Jun 2019 07:50:15 -0700 (PDT) Received: from [10.37.12.21] (unknown [10.37.12.21]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 4496D3F5AF; Sat, 1 Jun 2019 07:50:12 -0700 (PDT) To: Volodymyr Babchuk , "xen-devel@lists.xenproject.org" References: <20190521212530.12706-1-volodymyr_babchuk@epam.com> From: Julien Grall Message-ID: <06a4f534-e671-004c-93bb-31b60ed77d28@arm.com> Date: Sat, 1 Jun 2019 15:50:10 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: <20190521212530.12706-1-volodymyr_babchuk@epam.com> Content-Language: en-US Subject: Re: [Xen-devel] [PATCH v5 00/10] TEE mediator (and OP-TEE) support in XEN X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Ian Jackson , Tim Deegan , "tee-dev@lists.linaro.org" , Jan Beulich Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="UTF-8"; format="flowed" Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" Message-ID: <20190601145010.hxTtK_Q4yyBEzjuHhPsxhMyb-ygUD87juEoESOYCz3k@z> SGkgVm9sb2R5bXlyLAoKSSB0cmllZCB0byBhcHBseSB0aGUgcGF0Y2hlcyB0byBzdGFnaW5nIGJ1 dCBmYWlsIGJlY2F1c2UgdGhlIHBhdGNoZXMgCmNvbnRhaW5zID0yMC4gRG8geW91IGhhdmUgYSB0 cmVlIHdpdGggdGhlIHNlcmllcyBhcHBsaWVkPwoKQ2hlZXJzLAoKT24gNS8yMS8xOSAxMDoyNSBQ TSwgVm9sb2R5bXlyIEJhYmNodWsgd3JvdGU6Cj4gSGVsbG8gY29tbXVuaXR5LAo+IAo+IFRoaXMg aXMgdGhlIGZpZnRoIHZlcnNpb24gb2YgT1AtVEVFIG1lZGlhdG9yIGluIFhFTi4KPiAKPiBPUC1U RUUgMy41LjAgd2FzIHJlbGVhc2VkIHdoZW4gSSB3b3JrZWQgb24gdGhpcyB2ZXJzaW9uIG9mIHRo ZQo+IHBhdGhlcy4gVGhpcyBpcyB0aGUgZmlyc3QgcmVsZWFzZSB3aGVyZSB2aXJ0dWFsaXphdGlv biBzdXBwb3J0IGlzCj4gYXZhaWxhYmxlLiBUaGlzIHJlbGVhc2UgaW5jbHVkZXMgYm90aCBvcmln aW5hbCB2aXJ0dWFsaXphdGlvbiBwYXRjaGVzCj4gYW5kIG5ldyBTTUMgdGhhdCByZXRyZXZpZXMg bnVtYmVyIG9mIHRocmVhZHMgZnJvbSBPUC1URUUuCj4gCj4gTWFueSB0aGFua3MgdG8gYm90aCBP UC1URUUgYW5kIFhlbiBjb21tdW5pdGllcyBmb3IgcmV2aWV3aW5nIGFuZCBoZWxwaW5nCj4gd2l0 aCBteSBjaGFuZ2VzIHRvIHRoZSBib3RoIHByb2plY3RzLgo+IAo+IEdsb2JhbCBjaGFuZ2VzIGZy b20gdjQ6Cj4gICAtIFN1YnN0YW50aWFsIHJld29yayBvZiBPUC1URUUgbWVkaWF0b3IuIE5vdyBp dCB0cmllcyB0byByZXR1cm4gbWVhbmluZ2Z1bAo+ICAgICBlcnJvciBjb2RlcyBiYWNrIHRvIHRo ZSBndWVzdC4KPiAgIC0gT1AtVEVFIG1lZGlhdG9yIGRvZXMgbm90IHVzZSBzdHJ1Y3QgY3B1X3Vz ZXJfcmVncyBhcyBhIHN0b3JhZ2UgZm9yCj4gICAgIHBhcmFtZXRlcnMgYW5kIHJldHVybiB2YWx1 ZXMgd2hlbiBjYWxsaW5nIE9QLVRFRS4gVGhpcyBtYWtlcyBpdAo+ICAgICBjb21wYXRiaWxlIHdp dGggcmVxdWlyZW1lbnQgZnJvbSBTTUNDQy4KPiAgIC0gdGVlPW5hdGl2ZSBvcHRpb24gcmVwbGFj ZWQgd2l0aCB0ZWU9b3B0ZWUKPiAgIC0gQXV0aG9yc2hpcCBhbmQgcy1vLWIgdGFnIHJlc2V0IHRv IG15IEVQQU0gbWFpbCBhZGRyZXNzCj4gCj4gT3ZlcmFsbCBjaGFuZ2VzIGZyb20gdjM6Cj4gCj4g ICAtIFBhdGNoICJhcm06IGFkZCB0ZWVfZW5hYmxlZCBmbGFnIHRvIHhlbl9hcmNoX2RvbWFpbmNv bmZpZyIgd2FzCj4gICAgIHNxdWFzaGVkIGludG8gInhlbi9hcm06IGFkZCBnZW5lcmljIFRFRSBt ZWRpYXRvciBmcmFtZXdvcmsiCj4gICAtIEkgaW1wbGVtZW50ZWQgbW9yZSBlbGFib3JhdGUgZXJy b3IgcmVwb3RpbmcgdG8gYSBndWVzdC4gTm93IGd1ZXN0Cj4gICAgIHdpbGwgZ2V0IG1lYW5pbmdm dWwgZXJyb3IgY29kZXMgaW5zdGVhZCBvZiBnZW5lcmljCj4gICAgIEFSTV9TTUNDQ19FUlJfVU5L Tk9XTl9GVU5DVElPTi4KPiAKPiBQZXItcGF0Y2ggY2hhbmdlcyBhcmUgZGVzY3JpYmVkIGluIGNv cnJlc3BvbmRpbmcgZW1haWxzLgo+IAo+IENoYW5nZXMgZnJvbSB2MjoKPiAKPiAgIC0gVXNlIGRv bWFpbiBmbGFncyBpbnN0ZWQgb2YgZG9tY3RsIGludGVyZmFjZSB0byBlbmFibGUgb3B0ZWUgZm9y IGd1ZXN0cwo+ICAgLSBSZW1vdmUgcGF0Y2ggImxpYnhjOiBhZGQgeGNfZG9tX3RlZV9lbmFibGUo Li4uKSBmdW5jdGlvbiIgYmVjYXVzZQo+ICAgICBvZiBwcmV2aW91cyBjaGFuZ2UKPiAgIC0gTWVk aWF0b3Igbm93IHN0b3JlcyBvd24gY29udGV4dCBpbiBhcmNoIHBhcnQgb2Ygc3RydWN0IGRvbWFp biwgc28KPiAgICAgSSByZW1vdmVkIHBhdGNoICJvcHRlZTogYWRkIGRvbWFpbiBjb250ZXh0cyIK PiAKPiBQZXItcGF0Y2ggY2hhbmdlcyBhcmUgZGVzY3JpYmVkIGluIGNvcnJlc3BvbmRpbmcgZW1h aWxzLgo+IAo+ID09PT0KPiB2MjoKPiAKPiBUaGlzIGlzIHYyIG9mIHBhdGNoIHNlcmllcyBmb3Ig T1AtVEVFIG1lZGlhdG9yIHN1cHBvcnQgaW4gWEVOLiBDaGFuZ2VzIGZyb20gdjE6Cj4gCj4gICAt IEFkZGVkIGRvbWN0bCBpbnRlcmZhY2UsIHNvIG5vdyB4bCBkZWNpZGVzIHdoYXQgZG9tYWluIHNo b3VsZCB3b3JrIHdpdGggVEVFCj4gICAtIFJlbW92ZWQgWFNNIHN1cHBvcnQgZHVlIHRvIGNoYW5n ZSBkZXNjcmliZWQgYWJvdmUKPiAgIC0gUGF0Y2ggd2l0aCBPUC1URUUgbWVkaWF0b3Igd2FzIHNw bGl0ZWQgdG8gNyBzZXBhcmF0ZSBwYXRjaGVzCj4gICAtIFJlbW92ZWQgcGF0Y2ggd2l0aCBjYWxs X3NtY2NjKCkgZnVuY3Rpb24uIE5vdyB0aGlzIHNlcmllcyBkZXBlbmQgb24KPiAgICAgSnVsaWVu IEdyYWxsJ3Mgc2VyaWVzICJ4ZW4vYXJtOiBTTUNDQyBmaXh1cCBhbmQgaW1wcm92ZW1lbnQiIFsz XQo+IAo+ID09PT09Cj4gdjE6Cj4gCj4gVGhpcyBpcyBmb2xsb3cgZm9yIHBhdGNoIHNlcmllcyBb MV0uIFRoZXJlIHdhcyBsb3RzIG9mIGRpc2N1c3Npb25zCj4gZm9yIHRoYXQgc2VyaWVzIGFuZCBJ IHRyaWVkIHRvIGFkZHJlc3MgYWxsIG9mIHRoZW0gaW4gdGhpcyBuZXcgcGF0Y2hzZXQuCj4gCj4g Q3VycmVudGx5LCBJIGhhZCBhIHdvcmtpbmcgc29sdXRpb24gZm9yIE9QLVRFRSB2aXJ0dWFsaXph dGlvbiBhbmQgaXQgaXMgYmVpbmcKPiB1cHN0cmVhbWVkIHJpZ2h0IG5vdyAoWzJdKS4gU28sIEkg dGhpbmsgaXQgaXMgYSBnb29kIHRpbWUgdG8gaW50cm9kdWNlIHN1cHBvcnQKPiBpbiBYRU4gYXMg d2VsbC4KPiAKPiBUaGlzIHNlcmllcyBpbmNsdWRlIGdlbmVyaWMgVEVFIG1lZGlhdG9yIGZyYW1l d29yayBhbmQgZnVsbC1zY2FsZSBPUC1URUUgbWVkaWF0b3IKPiB3aGljaCBpcyB3b3JraW5nIHdp dGggbWVudGlvbmVkIGNoYWdlcyBpbiBPUC1URUUuIFNvLCBtdWx0aXBsZSBkb21haW5zIGNhbgo+ IHdvcmsgc2ltdWx0YW5lb3VzbHkgd2l0aCBPUC1URUUuCj4gCj4gSSBhZGRlZCBYU00gc3VwcG9y dCwgc28gbm93IGl0IGlzIHBvc3NpYmxlIHRvIGNvbnRyb2wgd2hpY2ggZG9tYWlucyBjYW4gd29y awo+IHdpdGggVEVFcy4gQWxzbyBJIGNoYW5nZWQgd2F5IGhvdyBURUUgZGlzY292ZXJ5IGlzIGRv bmUuIE5vdyAgaXQgaXMgdmVyeQo+IGdlbmVyaWMgYW5kIHNob3VsZCBzdXBwb3J0IGFueSBwbGF0 Zm9ybS4KPiAKPiBbMV0gaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9hcmNoaXZlcy9odG1s L3hlbi1kZXZlbC8yMDE3LTEwL21zZzAxNDUxLmh0bWwKPiBbMl0gaHR0cHM6Ly9naXRodWIuY29t L09QLVRFRS9vcHRlZV9vcy9wdWxsLzIzNzAKPiBbM10gaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0 Lm9yZy9hcmNoaXZlcy9odG1sL3hlbi1kZXZlbC8yMDE4LTA4L21zZzAyMTM4Lmh0bWwKPiAKPiAK PiBWb2xvZHlteXIgQmFiY2h1ayAoMTApOgo+ICAgIHhlbi9hcm06IGFkZCBnZW5lcmljIFRFRSBt ZWRpYXRvciBmcmFtZXdvcmsKPiAgICB4ZW4vYXJtOiBvcHRlZTogYWRkIE9QLVRFRSBoZWFkZXIg ZmlsZXMKPiAgICB4ZW4vYXJtOiBvcHRlZTogYWRkIE9QLVRFRSBtZWRpYXRvciBza2VsZXRvbgo+ ICAgIHhlbi9hcm06IG9wdGVlOiBhZGQgZmFzdCBjYWxscyBoYW5kbGluZwo+ICAgIHhlbi9hcm06 IG9wdGVlOiBhZGQgc3RkIGNhbGwgaGFuZGxpbmcKPiAgICB4ZW4vYXJtOiBvcHRlZTogYWRkIHN1 cHBvcnQgZm9yIFJQQyBTSE0gYnVmZmVycwo+ICAgIHhlbi9hcm06IG9wdGVlOiBhZGQgc3VwcG9y dCBmb3IgYXJiaXRyYXJ5IHNoYXJlZCBtZW1vcnkKPiAgICB4ZW4vYXJtOiBvcHRlZTogYWRkIHN1 cHBvcnQgZm9yIFJQQyBjb21tYW5kcwo+ICAgIHRvb2xzL2FybTogdGVlOiBhZGQgInRlZSIgb3B0 aW9uIGZvciB4bC5jZmcKPiAgICB0b29scy9hcm06IG9wdGVlOiBjcmVhdGUgb3B0ZWUgZmlybXdh cmUgbm9kZSBpbiBEVCBpZiB0ZWU9b3B0ZWUKPiAKPiAgIE1BSU5UQUlORVJTICAgICAgICAgICAg ICAgICAgICAgICAgIHwgICAgNiArCj4gICBkb2NzL21hbi94bC5jZmcuNS5wb2QuaW4gICAgICAg ICAgICB8ICAgMTkgKwo+ICAgdG9vbHMvbGlieGwvbGlieGwuaCAgICAgICAgICAgICAgICAgfCAg ICA1ICsKPiAgIHRvb2xzL2xpYnhsL2xpYnhsX2FybS5jICAgICAgICAgICAgIHwgICA0MiArCj4g ICB0b29scy9saWJ4bC9saWJ4bF90eXBlcy5pZGwgICAgICAgICB8ICAgIDYgKwo+ICAgdG9vbHMv eGwveGxfcGFyc2UuYyAgICAgICAgICAgICAgICAgfCAgICA5ICsKPiAgIHhlbi9hcmNoL2FybS9L Y29uZmlnICAgICAgICAgICAgICAgIHwgICAgOSArCj4gICB4ZW4vYXJjaC9hcm0vTWFrZWZpbGUg ICAgICAgICAgICAgICB8ICAgIDEgKwo+ICAgeGVuL2FyY2gvYXJtL2RvbWFpbi5jICAgICAgICAg ICAgICAgfCAgIDE5ICsKPiAgIHhlbi9hcmNoL2FybS9zZXR1cC5jICAgICAgICAgICAgICAgIHwg ICAgMiArCj4gICB4ZW4vYXJjaC9hcm0vdGVlL0tjb25maWcgICAgICAgICAgICB8ICAgIDQgKwo+ ICAgeGVuL2FyY2gvYXJtL3RlZS9NYWtlZmlsZSAgICAgICAgICAgfCAgICAyICsKPiAgIHhlbi9h cmNoL2FybS90ZWUvb3B0ZWUuYyAgICAgICAgICAgIHwgMTUzNiArKysrKysrKysrKysrKysrKysr KysrKysrKysKPiAgIHhlbi9hcmNoL2FybS90ZWUvdGVlLmMgICAgICAgICAgICAgIHwgICA5MyAr Kwo+ICAgeGVuL2FyY2gvYXJtL3ZzbWMuYyAgICAgICAgICAgICAgICAgfCAgICA1ICsKPiAgIHhl bi9hcmNoL2FybS94ZW4ubGRzLlMgICAgICAgICAgICAgIHwgICAgNyArCj4gICB4ZW4vaW5jbHVk ZS9hc20tYXJtL2RvbWFpbi5oICAgICAgICB8ICAgIDQgKwo+ICAgeGVuL2luY2x1ZGUvYXNtLWFy bS90ZWUvb3B0ZWVfbXNnLmggfCAgNDQ0ICsrKysrKysrCj4gICB4ZW4vaW5jbHVkZS9hc20tYXJt L3RlZS9vcHRlZV9zbWMuaCB8ICA1NTYgKysrKysrKysrKwo+ICAgeGVuL2luY2x1ZGUvYXNtLWFy bS90ZWUvdGVlLmggICAgICAgfCAgMTA5ICsrCj4gICB4ZW4vaW5jbHVkZS9wdWJsaWMvYXJjaC1h cm0uaCAgICAgICB8ICAgIDQgKwo+ICAgMjEgZmlsZXMgY2hhbmdlZCwgMjg4MiBpbnNlcnRpb25z KCspCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgeGVuL2FyY2gvYXJtL3RlZS9LY29uZmlnCj4gICBj cmVhdGUgbW9kZSAxMDA2NDQgeGVuL2FyY2gvYXJtL3RlZS9NYWtlZmlsZQo+ICAgY3JlYXRlIG1v ZGUgMTAwNjQ0IHhlbi9hcmNoL2FybS90ZWUvb3B0ZWUuYwo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0 IHhlbi9hcmNoL2FybS90ZWUvdGVlLmMKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCB4ZW4vaW5jbHVk ZS9hc20tYXJtL3RlZS9vcHRlZV9tc2cuaAo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IHhlbi9pbmNs dWRlL2FzbS1hcm0vdGVlL29wdGVlX3NtYy5oCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgeGVuL2lu Y2x1ZGUvYXNtLWFybS90ZWUvdGVlLmgKPiAKCi0tIApKdWxpZW4gR3JhbGwKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxp c3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVj dC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=