From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Stabellini Subject: Re: [v9 00/19] QEMU:Xen stubdom vTPM for HVM virtual machine(QEMU Part) Date: Thu, 14 Jul 2016 16:33:58 +0100 (BST) Message-ID: References: <1468151270-12984-1-git-send-email-emilcondrea@gmail.com> <945CA011AD5F084CBEA3E851C0AB28894B8FD7C8@SHSMSX101.ccr.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <945CA011AD5F084CBEA3E851C0AB28894B8FD7C8@SHSMSX101.ccr.corp.intel.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: "Xu, Quan" Cc: Stefano Stabellini , "wei.liu2@citrix.com" , "stefanb@linux.vnet.ibm.com" , "quan.xu2@aliyun.com" , "qemu-devel@nongnu.org" , "xen-devel@lists.xen.org" , anthony.perard@citrix.com, "dgdegra@tycho.nsa.gov" , "eblake@redhat.com" , Emil Condrea List-Id: xen-devel@lists.xenproject.org SGkgUXVhbiwKCnRoYW5rcyBmb3IgQ0MnaW5nIG1lLiBzc3RhYmVsbGluaUBrZXJuZWwub3JnIGlz IHRoZSByaWdodCBhZGRyZXNzIHRvCnJlYWNoIG1lIG5vdy4KCkkgYW0gYWxzbyBDQydpbmcgQW50 aG9ueSBQZXJhcmQgd2hvIGlzIFhlbiBjby1tYWludGFpbmVyIGluIFFFTVUuCgpDaGVlcnMsCgpT dGVmYW5vCgpPbiBXZWQsIDEzIEp1bCAyMDE2LCBYdSwgUXVhbiB3cm90ZToKPiBFbWlsLCBUaGFu a3MgZm9yIHlvdXIgIGVmZm9ydCAoIHRvZGF5IEkganVzdCBjb21lIGJhY2sgdG8gcmV0dXJuIG15 IGxhcHRvcCkuCj4gCj4gYnR3LCBzc3RhYmVsbGluaUBrZXJuZWwub3JnIG1heSBiZSB0aGUgcmln aHQgZW1haWwuCj4gIFN0ZWZhbiAvIFN0ZWZhbm8sICBjb3VsZCB5b3UgaGVscCB1cyByZXZpZXcg dGhlc2UgcGF0Y2hlcz8gVGhhbmtzIGluIGFkdmFuY2UhIQo+IAo+IFF1YW4gCj4gCj4gIAo+IE9u IEp1bHkgMTAsIDIwMTYgNzo0OCBQTSwgRW1pbCBDb25kcmVhIDxlbWlsY29uZHJlYUBnbWFpbC5j b20+IHdyb3RlOgo+ID4gKklOVFJPRFVDVElPTioKPiA+IFRoZSBnb2FsIG9mIHZpcnR1YWwgVHJ1 c3RlZCBQbGF0Zm9ybSBNb2R1bGUgKHZUUE0pIGlzIHRvIHByb3ZpZGUgYSBUUE0KPiA+IGZ1bmN0 aW9uYWxpdHkgdG8gdmlydHVhbCBtYWNoaW5lcyAoRmVkb3JhLCBVYnVudHUsIFJlZGhhdCwgV2lu ZG93cyAuZXRjKS4KPiA+IFRoaXMgYWxsb3dzIHByb2dyYW1zIHRvIGludGVyYWN0IHdpdGggYSBU UE0gaW4gYSB2aXJ0dWFsIG1hY2hpbmUgdGhlIHNhbWUgd2F5Cj4gPiB0aGV5IGludGVyYWN0IHdp dGggYSBUUE0gb24gdGhlIHBoeXNpY2FsIHN5c3RlbS4gRWFjaCB2aXJ0dWFsIG1hY2hpbmUgZ2V0 cyBpdHMKPiA+IG93biB1bmlxdWUsIGVtdWxhdGVkLCBzb2Z0d2FyZSBUUE0uIEVhY2ggbWFqb3Ig Y29tcG9uZW50IG9mIHZUUE0gaXMKPiA+IGltcGxlbWVudGVkIGFzIGEgc3R1YmRvbSwgcHJvdmlk aW5nIHNlY3VyZSBzZXBhcmF0aW9uIGd1YXJhbnRlZWQgYnkgdGhlCj4gPiBoeXBlcnZpc29yLgo+ ID4gCj4gPiBUaGUgdlRQTSBzdHViZG9tIGlzIGEgWGVuIG1pbmktT1MgZG9tYWluIHRoYXQgZW11 bGF0ZXMgYSBUUE0gZm9yIHRoZQo+ID4gdmlydHVhbCBtYWNoaW5lIHRvIHVzZS4gSXQgaXMgYSBz bWFsbCB3cmFwcGVyIGFyb3VuZCB0aGUgQmVybGlvcyBUUE0gZW11bGF0b3IuCj4gPiBUUE0gY29t bWFuZHMgYXJlIHBhc3NlZCBmcm9tIG1pbmktb3MgVFBNIGJhY2tlbmQgZHJpdmVyLgo+ID4gCj4g PiAqQVJDSElURUNUVVJFKgo+ID4gVGhlIGFyY2hpdGVjdHVyZSBvZiBzdHViZG9tIHZUUE0gZm9y IEhWTSB2aXJ0dWFsIG1hY2hpbmU6Cj4gPiAKPiA+ICAgICAgICAgICAgICstLS0tLS0tLS0tLS0t LS0tLS0tLSsKPiA+ICAgICAgICAgICAgIHwgV2luZG93cy9MaW51eCBEb21VIHwgLi4uCj4gPiAg ICAgICAgICAgICB8ICAgICAgICB8ICBeICAgICAgICB8Cj4gPiAgICAgICAgICAgICB8ICAgICAg ICB2ICB8ICAgICAgICB8Cj4gPiAgICAgICAgICAgICB8ICBRZW11IHRwbTEuMiBUaXMgICB8Cj4g PiAgICAgICAgICAgICB8ICAgICAgICB8ICBeICAgICAgICB8Cj4gPiAgICAgICAgICAgICB8ICAg ICAgICB2ICB8ICAgICAgICB8Cj4gPiAgICAgICAgICAgICB8IFhlblN0dWJkb21zIGJhY2tlbmR8 Cj4gPiAgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0rCj4gPiAgICAgICAgICAgICAg ICAgICAgICB8ICBeCj4gPiAgICAgICAgICAgICAgICAgICAgICB2ICB8Cj4gPiAgICAgICAgICAg ICArLS0tLS0tLS0tLS0tLS0tLS0tLS0rCj4gPiAgICAgICAgICAgICB8ICAgICAgWGVuRGV2T3Bz ICAgICB8Cj4gPiAgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0rCj4gPiAgICAgICAg ICAgICAgICAgICAgICB8ICBeCj4gPiAgICAgICAgICAgICAgICAgICAgICB2ICB8Cj4gPiAgICAg ICAgICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0rCj4gPiAgICAgICAgICAgICB8ICBtaW5pLW9z L3RwbWJhY2sgICB8Cj4gPiAgICAgICAgICAgICB8ICAgICAgICB8ICBeICAgICAgICB8Cj4gPiAg ICAgICAgICAgICB8ICAgICAgICB2ICB8ICAgICAgICB8Cj4gPiAgICAgICAgICAgICB8ICAgdnRw bS1zdHViZG9tICAgICB8IC4uLgo+ID4gICAgICAgICAgICAgfCAgICAgICAgfCAgXiAgICAgICAg fAo+ID4gICAgICAgICAgICAgfCAgICAgICAgdiAgfCAgICAgICAgfAo+ID4gICAgICAgICAgICAg fCAgbWluaS1vcy90cG1mcm9udCAgfAo+ID4gICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0t LS0tKwo+ID4gICAgICAgICAgICAgICAgICAgICAgfCAgXgo+ID4gICAgICAgICAgICAgICAgICAg ICAgdiAgfAo+ID4gICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKwo+ID4gICAgICAg ICAgICAgfCAgbWluaS1vcy90cG1iYWNrICAgfAo+ID4gICAgICAgICAgICAgfCAgICAgICAgfCAg XiAgICAgICAgfAo+ID4gICAgICAgICAgICAgfCAgICAgICAgdiAgfCAgICAgICAgfAo+ID4gICAg ICAgICAgICAgfCAgdnRwbW1nci1zdHViZG9tICAgfAo+ID4gICAgICAgICAgICAgfCAgICAgICAg fCAgXiAgICAgICAgfAo+ID4gICAgICAgICAgICAgfCAgICAgICAgdiAgfCAgICAgICAgfAo+ID4g ICAgICAgICAgICAgfCAgbWluaS1vcy90cG1fdGlzICAgfAo+ID4gICAgICAgICAgICAgKy0tLS0t LS0tLS0tLS0tLS0tLS0tKwo+ID4gICAgICAgICAgICAgICAgICAgICAgfCAgXgo+ID4gICAgICAg ICAgICAgICAgICAgICAgdiAgfAo+ID4gICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0t Kwo+ID4gICAgICAgICAgICAgfCAgICBIYXJkd2FyZSBUUE0gICAgfAo+ID4gICAgICAgICAgICAg Ky0tLS0tLS0tLS0tLS0tLS0tLS0tKwo+ID4gCj4gPiAgKiBXaW5kb3dzL0xpbnV4IERvbVU6Cj4g PiAgICAgVGhlIEhWTSBiYXNlZCBndWVzdCB0aGF0IHdhbnRzIHRvIHVzZSBhIHZUUE0uIFRoZXJl IG1heSBiZQo+ID4gICAgIG1vcmUgdGhhbiBvbmUgb2YgdGhlc2UuCj4gPiAKPiA+ICAqIFFlbXUg dHBtMS4yIFRpczoKPiA+ICAgICBJbXBsZW1lbnRhdGlvbiBvZiB0aGUgdHBtMS4yIFRpcyBpbnRl cmZhY2UgZm9yIEhWTSB2aXJ0dWFsCj4gPiAgICAgbWFjaGluZXMuIEl0IGlzIFFlbXUgZW11bGF0 aW9uIGRldmljZS4KPiA+IAo+ID4gICogdlRQTSB4ZW5zdHViZG9tcyBkcml2ZXI6Cj4gPiAgICAg UWVtdSB2VFBNIGRyaXZlci4gVGhpcyBkcml2ZXIgcHJvdmlkZXMgdnRwbSBpbml0aWFsaXphdGlv bgo+ID4gICAgIGFuZCBzZW5kaW5nIGRhdGEgYW5kIGNvbW1lbmRzIHRvIGEgcGFyYS12aXJ0dWFs aXplZCB2dHBtCj4gPiAgICAgc3R1YmRvbS4KPiA+IAo+ID4gICogWGVuRGV2T3BzOgo+ID4gICAg IFJlZ2lzdGVyIFhlbiBzdHViZG9tIHZUUE0gZnJvbnRlbmQgZHJpdmVyLCBhbmQgdHJhbnNmZXIg YW55Cj4gPiAgICAgcmVxdWVzdC9yZXBvbmQgYmV0d2VlbiBUUE0geGVuc3R1YmRvbXMgZHJpdmVy IGFuZCBYZW4gdlRQTQo+ID4gICAgIHN0dWJkb20uIEZhY2lsaXRhdGUgY29tbXVuaWNhdGlvbnMg YmV0d2VlbiBYZW4gdlRQTSBzdHViZG9tCj4gPiAgICAgYW5kIHZUUE0geGVuc3R1YmRvbXMgZHJp dmVyLgo+ID4gCj4gPiAgKiBtaW5pLW9zL3RwbWJhY2s6Cj4gPiAgICAgTWluaS1vcyBUUE0gYmFj a2VuZCBkcml2ZXIuIFRoZSBMaW51eCBmcm9udGVuZCBkcml2ZXIgY29ubmVjdHMKPiA+ICAgICB0 byB0aGlzIGJhY2tlbmQgZHJpdmVyIHRvIGZhY2lsaXRhdGUgY29tbXVuaWNhdGlvbnMgYmV0d2Vl biB0aGUKPiA+ICAgICBMaW51eCBEb21VIGFuZCBpdHMgdlRQTS4gVGhpcyBkcml2ZXIgaXMgYWxz byB1c2VkIGJ5IHZ0cG1tZ3IKPiA+ICAgICBzdHViZG9tIHRvIGNvbW11bmljYXRlIHdpdGggdnRw bS1zdHViZG9tLgo+ID4gCj4gPiAgKiB2dHBtLXN0dWJkb206Cj4gPiAgICAgQSBtaW5pLW9zIHN0 dWIgZG9tYWluIHRoYXQgaW1wbGVtZW50cyBhIHZUUE0uIFRoZXJlIGlzIGEKPiA+ICAgICBvbmUg dG8gb25lIG1hcHBpbmcgYmV0d2VlbiBydW5uaW5nIHZ0cG0tc3R1YmRvbSBpbnN0YW5jZXMgYW5k Cj4gPiAgICAgbG9naWNhbCB2dHBtcyBvbiB0aGUgc3lzdGVtLiBUaGUgdlRQTSBQbGF0Zm9ybSBD b25maWd1cmF0aW9uCj4gPiAgICAgUmVnaXN0ZXJzIChQQ1JzKSBhcmUgYWxsIGluaXRpYWxpemVk IHRvIHplcm8uCj4gPiAKPiA+ICAqIG1pbmktb3MvdHBtZnJvbnQ6Cj4gPiAgICAgTWluaS1vcyBU UE0gZnJvbnRlbmQgZHJpdmVyLiBUaGUgdlRQTSBtaW5pLW9zIGRvbWFpbiB2dHBtCj4gPiAgICAg c3R1YmRvbSB1c2VzIHRoaXMgZHJpdmVyIHRvIGNvbW11bmljYXRlIHdpdGggdnRwbW1nci1zdHVi ZG9tLgo+ID4gICAgIFRoaXMgZHJpdmVyIGNvdWxkIGFsc28gYmUgdXNlZCBzZXBhcmF0ZWx5IHRv IGltcGxlbWVudCBhIG1pbmktb3MKPiA+ICAgICBkb21haW4gdGhhdCB3aXNoZXMgdG8gdXNlIGEg dlRQTSBvZiBpdHMgb3duLgo+ID4gCj4gPiAgKiB2dHBtbWdyLXN0dWJkb206Cj4gPiAgICAgQSBt aW5pLW9zIGRvbWFpbiB0aGF0IGltcGxlbWVudHMgdGhlIHZUUE0gbWFuYWdlci4gVGhlcmUgaXMg b25seQo+ID4gICAgIG9uZSB2VFBNIG1hbmFnZXIgYW5kIGl0IHNob3VsZCBiZSBydW5uaW5nIGR1 cmluZyB0aGUgZW50aXJlIGxpZmV0aW1lCj4gPiAgICAgb2YgdGhlIG1hY2hpbmUuIHZ0cG1tZ3Ig ZG9tYWluIHNlY3VyZWx5IHN0b3JlcyBlbmNyeXB0aW9uIGtleXMgZm9yCj4gPiAgICAgZWFjaCBv ZiB0aGUgdnRwbXMgYW5kIGFjY2Vzc2VzIHRvIHRoZSBoYXJkd2FyZSBUUE0gdG8gZ2V0IHRoZSBy b290IG9mCj4gPiAgICAgdHJ1c3QgZm9yIHRoZSBlbnRpcmUgc3lzdGVtLgo+ID4gCj4gPiAgKiBt aW5pLW9zL3RwbV90aXM6Cj4gPiAgICAgTWluaS1vcyBUUE0gdmVyc2lvbiAxLjIgVFBNIEludGVy ZmFjZSBTcGVjaWZpY2F0aW9uIChUSVMpIGRyaXZlci4KPiA+ICAgICBUaGlzIGRyaXZlciB1c2Vk IGJ5IHZ0cG1tZ3Itc3R1YmRvbSB0byB0YWxrIGRpcmVjdGx5IHRvIHRoZSBoYXJkd2FyZQo+ID4g ICAgIFRQTS4gQ29tbXVuaWNhdGlvbiBpcyBmYWNpbGl0YXRlZCBieSBtYXBwaW5nIGhhcmR3YXJl IG1lbW9yeSBwYWdlcwo+ID4gICAgIGludG8gdnRwbW1nciBzdHViZG9tLgo+ID4gCj4gPiAgKiBI YXJkd2FyZSBUUE06IFRoZSBwaHlzaWNhbCBUUE0gMS4yIHRoYXQgaXMgc29sZGVyZWQgb250byB0 aGUKPiA+IG1vdGhlcmJvYXJkLgo+ID4gCj4gPiAtLS0KPiA+IENoYW5nZXMgaW4gdjkKPiA+IEhp Z2ggbGV2ZWwgY2hhbmdlczogKGVhY2ggcGF0Y2ggaGFzIGEgZGV0YWlsZWQgaGlzdG9yeSB2ZXJz aW9uaW5nKQo+ID4gICogcmViYXNlIG9uIHVwc3RyZWFtIHFlbXUKPiA+ICAqIHJlZmFjdG9yIHFl bXUgeGVuZGV2cywgeGVuc3RvcmUgZnVuY3Rpb25zIGluIG9yZGVyIHRvIGJlIHNoYXJlZCB3aXRo IGJvdGgKPiA+IGJhY2tlbmQgYW5kIGZyb250ZW5kcwo+ID4gICogY29udmVydCB0cG0gc3R1YmRv bXMgdG8gbmV3IHFhcGkgbGF5b3V0Cj4gPiAgKiB1c2UgbGlieGVuZ250dGFiLCBsaWJ4ZW5ldnRj aG4gc3RhYmxlIEFQSSBpbnN0ZWFkIG9mIHhjXyogY2FsbHMKPiA+ICAqIGFkZGVkIHJlc2V0X3Rw bV9lc3RhYmxpc2hlZF9mbGFnIGFuZCBnZXRfdHBtX3ZlcnNpb24gZm9yIFRQTURyaXZlck9wcwo+ ID4gICogaW5zdGVhZCBvZiB4ZW5fZnJvbnRlbmQuYyBnbG9iYWwgdmFyaWFibGUgeGVuc3RvcmVf ZGV2LCB1c2UgdnRwbSBzcGVjaWZpYwo+ID4geGVuc3RvcmVfdnRwbV9kZXYgKHNpbmNlIGl0IHdp bGwgYmUgbmVlZGVkIGp1c3QgZm9yIHRwbV94ZW5zdHViZG9tcyBxZW11Cj4gPiBkcml2ZXIpCj4g PiAKPiA+IAo+ID4gRW1pbCBDb25kcmVhICgxOSk6Cj4gPiAgIHhlbjogQ3JlYXRlIGEgbmV3IGZp bGUgeGVuX3B2ZGV2LmMKPiA+ICAgeGVuOiBDcmVhdGUgYSBuZXcgZmlsZSB4ZW5fZnJvbnRlbmQu Ywo+ID4gICB4ZW46IE1vdmUgeGVuc3RvcmVfdXBkYXRlIHRvIHhlbl9wdmRldi5jCj4gPiAgIHhl bjogTW92ZSBldnRjaG4gZnVuY3Rpb25zIHRvIHhlbl9wdmRldi5jCj4gPiAgIHhlbjogUHJlcGFy ZSB4ZW5kZXYgcXRhaWwgdG8gYmUgc2hhcmVkIHdpdGggZnJvbnRlbmRzCj4gPiAgIHhlbjogUmVu YW1lIHhlbl9iZV9wcmludGYgdG8geGVuX3B2X3ByaW50Zgo+ID4gICB4ZW46IFJlbmFtZSB4ZW5f YmVfdW5iaW5kX2V2dGNobgo+ID4gICB4ZW46IFJlbmFtZSB4ZW5fYmVfc2VuZF9ub3RpZnkKPiA+ ICAgeGVuOiBSZW5hbWUgeGVuX2JlX2V2dGNobl9ldmVudAo+ID4gICB4ZW46IFJlbmFtZSB4ZW5f YmVfZmluZF94ZW5kZXYKPiA+ICAgeGVuOiBSZW5hbWUgeGVuX2JlX2RlbF94ZW5kZXYKPiA+ICAg eGVuOiBSZW5hbWUgeGVuX2JlX2Zyb250ZW5kX2NoYW5nZWQKPiA+ICAgeGVuOiBEaXN0aW5ndWlz aCBiZXR3ZWVuIGZyb250ZW5kIGFuZCBiYWNrZW5kIGRldm9wcwo+ID4gICBRZW11LVhlbi12VFBN OiBTdXBwb3J0IGZvciBYZW4gc3R1YmRvbSB2VFBNIGNvbW1hbmQgbGluZSBvcHRpb25zCj4gPiAg IFFlbXUtWGVuLXZUUE06IFhlbiBmcm9udGVuZCBkcml2ZXIgaW5mcmFzdHJ1Y3R1cmUKPiA+ICAg UWVtdS1YZW4tdlRQTTogUmVnaXN0ZXIgWGVuIHN0dWJkb20gdlRQTSBmcm9udGVuZCBkcml2ZXIK PiA+ICAgUWVtdS1YZW4tdlRQTTogTW92ZSB0cG1fcGFzc3Rocm91Z2hfaXNfc2VsZnRlc3QoKSBp bnRvIHRwbV91dGlsLmMKPiA+ICAgUWVtdS1YZW4tdlRQTTogUWVtdSB2VFBNIHhlbnN0dWJkb21z IGJhY2tlbmQKPiA+ICAgUWVtdS1YZW4tdlRQTTogUUVNVSBtYWNoaW5lIGNsYXNzIGlzIGluaXRp YWxpemVkIGJlZm9yZSB0cG1faW5pdCgpCj4gPiAKPiA+ICBiYWNrZW5kcy90cG0uYyAgICAgICAg ICAgICAgICAgICB8ICAxMSArKwo+ID4gIGNvbmZpZ3VyZSAgICAgICAgICAgICAgICAgICAgICAg IHwgIDE0ICsrCj4gPiAgaG1wLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKwo+ ID4gIGh3L2Jsb2NrL3hlbl9kaXNrLmMgICAgICAgICAgICAgIHwgIDU5ICsrKy0tLQo+ID4gIGh3 L2NoYXIveGVuX2NvbnNvbGUuYyAgICAgICAgICAgIHwgIDE2ICstCj4gPiAgaHcvZGlzcGxheS94 ZW5mYi5jICAgICAgICAgICAgICAgfCAgNTcgKysrLS0tCj4gPiAgaHcvbmV0L3hlbl9uaWMuYyAg ICAgICAgICAgICAgICAgfCAgMjkgKy0tCj4gPiAgaHcvdHBtL01ha2VmaWxlLm9ianMgICAgICAg ICAgICAgfCAgIDMgKy0KPiA+ICBody90cG0vdHBtX3Bhc3N0aHJvdWdoLmMgICAgICAgICB8ICAx MyArLQo+ID4gIGh3L3RwbS90cG1fdXRpbC5jICAgICAgICAgICAgICAgIHwgIDExICsrCj4gPiAg aHcvdHBtL3RwbV91dGlsLmggICAgICAgICAgICAgICAgfCAgIDEgKwo+ID4gIGh3L3RwbS90cG1f eGVuc3R1YmRvbXMuYyAgICAgICAgIHwgMjg0ICsrKysrKysrKysrKysrKysrKysrKysrKysrCj4g PiAgaHcvdHBtL3hlbl92dHBtX2Zyb250ZW5kLmMgICAgICAgfCAzMDMgKysrKysrKysrKysrKysr KysrKysrKysrKysrKwo+ID4gIGh3L3RwbS94ZW5fdnRwbV9mcm9udGVuZC5oICAgICAgIHwgIDEw ICsKPiA+ICBody91c2IveGVuLXVzYi5jICAgICAgICAgICAgICAgICB8ICAzOCArKy0tCj4gPiAg aHcveGVuL01ha2VmaWxlLm9ianMgICAgICAgICAgICAgfCAgIDIgKy0KPiA+ICBody94ZW4veGVu X2JhY2tlbmQuYyAgICAgICAgICAgICB8IDM3OCArKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQo+ID4gIGh3L3hlbi94ZW5fZGV2Y29uZmlnLmMgICAgICAgICAgIHwgICA0ICstCj4g PiAgaHcveGVuL3hlbl9mcm9udGVuZC5jICAgICAgICAgICAgfCA0MTYKPiA+ICsrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ID4gIGh3L3hlbi94ZW5fcHZkZXYuYyAgICAg ICAgICAgICAgIHwgMjk4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiA+ICBpbmNsdWRl L2h3L3hlbi94ZW5fYmFja2VuZC5oICAgICB8ICA3MSArLS0tLS0tCj4gPiAgaW5jbHVkZS9ody94 ZW4veGVuX2Zyb250ZW5kLmggICAgfCAgMjAgKysKPiA+ICBpbmNsdWRlL2h3L3hlbi94ZW5fcHZk ZXYuaCAgICAgICB8ICA4MyArKysrKysrKwo+ID4gIGluY2x1ZGUvc3lzZW11L3RwbV9iYWNrZW5k X2ludC5oIHwgICAyICsKPiA+ICBxYXBpLXNjaGVtYS5qc29uICAgICAgICAgICAgICAgICB8ICAx NiArLQo+ID4gIHFlbXUtb3B0aW9ucy5oeCAgICAgICAgICAgICAgICAgIHwgIDEzICstCj4gPiAg dHBtLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDcgKy0KPiA+ICB2bC5jICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8ICAxNyArLQo+ID4gIHhlbi1jb21tb24uYyAgICAgICAg ICAgICAgICAgICAgIHwgICA0ICstCj4gPiAgeGVuLWh2bS5jICAgICAgICAgICAgICAgICAgICAg ICAgfCAgIDYgKwo+ID4gIDMwIGZpbGVzIGNoYW5nZWQsIDE2NDkgaW5zZXJ0aW9ucygrKSwgNTM5 IGRlbGV0aW9ucygtKSAgY3JlYXRlIG1vZGUgMTAwNjQ0Cj4gPiBody90cG0vdHBtX3hlbnN0dWJk b21zLmMgIGNyZWF0ZSBtb2RlIDEwMDY0NAo+ID4gaHcvdHBtL3hlbl92dHBtX2Zyb250ZW5kLmMg IGNyZWF0ZSBtb2RlIDEwMDY0NAo+ID4gaHcvdHBtL3hlbl92dHBtX2Zyb250ZW5kLmggIGNyZWF0 ZSBtb2RlIDEwMDY0NCBody94ZW4veGVuX2Zyb250ZW5kLmMKPiA+IGNyZWF0ZSBtb2RlIDEwMDY0 NCBody94ZW4veGVuX3B2ZGV2LmMgIGNyZWF0ZSBtb2RlIDEwMDY0NAo+ID4gaW5jbHVkZS9ody94 ZW4veGVuX2Zyb250ZW5kLmggIGNyZWF0ZSBtb2RlIDEwMDY0NAo+ID4gaW5jbHVkZS9ody94ZW4v eGVuX3B2ZGV2LmgKPiA+IAo+ID4gLS0KPiA+IDEuOS4xCj4gCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1k ZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK