From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: Re: [PATCH RFC] docs/designs: PV stats interface Date: Wed, 23 Nov 2016 15:41:52 +0000 Message-ID: References: <1479910467-464-1-git-send-email-paul.durrant@citrix.com> <20161123150801.GB21907@char.us.oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c9ZgI-00033o-7E for xen-devel@lists.xenproject.org; Wed, 23 Nov 2016 15:41:54 +0000 In-Reply-To: <20161123150801.GB21907@char.us.oracle.com> Content-Language: en-US List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Konrad Rzeszutek Wilk , "annie.li@oracle.com" , "adnan.misherfi@oracle.com" Cc: "xen-devel@lists.xenproject.org" List-Id: xen-devel@lists.xenproject.org PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQo+IEZyb206IEtvbnJhZCBSemVzenV0ZWsgV2ls ayBbbWFpbHRvOmtvbnJhZC53aWxrQG9yYWNsZS5jb21dCj4gU2VudDogMjMgTm92ZW1iZXIgMjAx NiAxNTowOAo+IFRvOiBQYXVsIER1cnJhbnQgPFBhdWwuRHVycmFudEBjaXRyaXguY29tPjsgYW5u aWUubGlAb3JhY2xlLmNvbTsKPiBhZG5hbi5taXNoZXJmaUBvcmFjbGUuY29tCj4gQ2M6IHhlbi1k ZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwo+IFN1YmplY3Q6IFJlOiBbWGVuLWRldmVsXSBbUEFU Q0ggUkZDXSBkb2NzL2Rlc2lnbnM6IFBWIHN0YXRzIGludGVyZmFjZQo+IAo+IE9uIFdlZCwgTm92 IDIzLCAyMDE2IGF0IDAyOjE0OjI3UE0gKzAwMDAsIFBhdWwgRHVycmFudCB3cm90ZToKPiA+IFRo aXMgcGF0Y2ggaW50cm9kdWNlcyBhIGRlc2lnbiBwcm9wb3NhbCBmb3IgYW4gaW50ZXJmYWNlIHRv IHVzZWQgYnkKPiA+IGd1ZXN0IFBWIGRyaXZlcnMgb3IgYWdlbnRzIHRvIGNvbnZleSBzdGF0aXN0 aWNzIHRvIGEgbW9uaXRvcmluZyBhZ2VudAo+ID4gcnVubmluZyBpbiBhIHRvb2xzdGFjayBkb21h aW4uCj4gPgo+IAo+IEhleSBQYXVsIQo+IAo+IFRoYW5rIHlvdSBmb3IgcG9zdGluZyB0aGlzLCBh ZGRpbmcgb24gdGhlIENDIHNvbWUgZXh0cmEgZm9sa3MKPiBmcm9tIE9yYWNsZS4gV2UgaGF2ZSBh bHNvIGFuIGludGVybmFsIGRyaXZlcjoKPiAKPiBodHRwczovL29zcy5vcmFjbGUuY29tL2dpdC8/ cD1saW51eC0KPiB1ZWsuZ2l0O2E9YmxvYjtmPWRyaXZlcnMveGVuL292bWFwaS5jO2g9NjcyZDMz ZjQ2ZjdjNjIwNTNkMDAyZmI0OGVmNmFkOQo+IGYxODdhNjliYjtoYj0wMjAwMjZiMDg4Yzc3ODk5 NmRmYTc2MTdjY2I2MzJkZGJmMDRlOWZlCj4gCj4gd2hpY2ggY291bGQgdXNlIGEgZGVzaWduIGRv Y3VtZW50IG9yIHNvbWUgc3luZXJneS4KClRvb2sgYSBxdWljayBsb29rLi4uIExvb2tzIGxpa2Ug dGhhdCBtYXkgaGF2ZSBhIG1vcmUgZ2VuZXJhbCB1c2VjYXNlIHRoYW4ganVzdCBzdGF0aXN0aWNz LiBMb29rcyBtb3JlIGxpa2Ugc29tZXRoaW5nIHRoYXQgY291bGQgbWFrZSB1c2Ugb2YgQUZfVlNP Q0suCgogIFBhdWwKCj4gCj4gQnV0IGZpcnN0IG9mIGNvdXBsZSBvZiBxdWVzdGlvbnM6Cj4gIC0g V2hhdCBhYm91dCBxZW11LWFnZW50PyBXaHkgbm90IHVzZSB0aGF0Pwo+IAo+ICAtIFdoYXQgYWJv dXQgdXNpbmcgTWljcm9zb2Z0IGtleS12YWx1ZSBwYWlyIGRyaXZlcnM/IFRoZXkgZnVuY3Rpb24K PiAgICBpbiBMaW51eCBhbmQgV2luZG93cy4gTGludXggdW5kZXJsYXlpbmcgbGF5ZXJzIGNhbiBi ZSBjaGFuZ2VkCj4gICAgc28gdGhhdCB0aGUgcHJvdG9jb2wgaXMgYW4gWGVuU3RvcmUgb25lIGlu c3RlYWQgb2YgdGhlIHJpbmcKPiAgICB0aGUga3ZwIGRyaXZlciBpcyB1c2luZy4uCj4gCj4gPiBT aWduZWQtb2ZmLWJ5OiBQYXVsIER1cnJhbnQgPHBhdWwuZHVycmFudEBjaXRyaXguY29tPgo+ID4g LS0tCj4gPiBSRkMgYXQgdGhlIG1vbWVudCBzaW5jZSB0aGlzIGlzIGEgZmlyc3QgZHJhZnQgYW5k IGl0IGlzIG5vdCB5ZXQKPiA+IHByb3RvdHlwZWQKPiA+IC0tLQo+ID4gIGRvY3MvZGVzaWducy9w dl9zdGF0cy5tYXJrZG93biB8IDExNgo+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrCj4gPiAgMSBmaWxlIGNoYW5nZWQsIDExNiBpbnNlcnRpb25zKCspCj4gPiAgY3Jl YXRlIG1vZGUgMTAwNzU1IGRvY3MvZGVzaWducy9wdl9zdGF0cy5tYXJrZG93bgo+ID4KPiA+IGRp ZmYgLS1naXQgYS9kb2NzL2Rlc2lnbnMvcHZfc3RhdHMubWFya2Rvd24KPiBiL2RvY3MvZGVzaWdu cy9wdl9zdGF0cy5tYXJrZG93bgo+ID4gbmV3IGZpbGUgbW9kZSAxMDA3NTUKPiA+IGluZGV4IDAw MDAwMDAuLjQxODkzNjkKPiA+IC0tLSAvZGV2L251bGwKPiA+ICsrKyBiL2RvY3MvZGVzaWducy9w dl9zdGF0cy5tYXJrZG93bgo+ID4gQEAgLTAsMCArMSwxMTYgQEAKPiA+ICsjIFN0YXRpc3RpY3Mg SW50ZXJmYWNlIGZvciBQViBEcml2ZXJzL0FnZW50cwo+ID4gKwo+ID4gKyMjIEJhY2tncm91bmQK PiA+ICsKPiA+ICtJdCBpcyBjb21tb24gZm9yIGd1ZXN0IFBWIGRyaXZlcnMgb3IgYWdlbnRzIHRv IGNvbW11bmljYXRlIHN0YXRpc3RpY3MgdG8KPiBhbgo+ID4gK2FnZW50IHJ1bm5pbmcgaW4gYSB0 b29sc3RhY2sgZG9tYWluIHNvIHRoYXQgdGhlc2UgY2FuIGJlIGRpc3BsYXllZCB2aWEgYQo+IFVJ LAo+ID4gK29yIGV2ZW4gaW5mbHVlbmNlIGd1ZXN0IHBsYWNlbWVudCBldGMuIFRoZSBtZWNoYW5p c20gZm9yIGNvbnZleWluZwo+IHRoZXNlCj4gPiArc3RhdGlzdGljcyBpcyBjdXJyZW50bHkgYWQt aG9jLCB1bmRvY3VtZW50ZWQsIGFuZCB1c3VhbGx5IGJhc2VkIG9uCj4geGVuc3RvcmUuCj4gPiAr Cj4gPiArV2hpbHN0IHhlbnN0b3JlIGRvZXMgaW5kZWVkIHByb3ZpZGUgYSBjb252ZW5pZW50IG1l Y2hhbmlzbSwgdGhlIGxhY2sgb2YKPiA+ICtkb2N1bWVudGF0aW9uIGFuZCBzdGFuZGFyZGlzYXRp b24gb2YgdGhlIHByb3RvY29scyB1c2VkIGNyZWF0ZXMKPiA+ICtjb21wYXRpYmlsaXR5IGlzc3Vl cyBmb3IgUFYgZHJpdmVycyBvciBhZ2VudHMgbm90IHRpZWQgdG8gYSBzcGVjaWZpYwo+ID4gK3By b2R1Y3Qgb3IgZW52aXJvbm1lbnQuIEFsc28sIHRoZSBndWVzdCB4ZW5zdG9yZSBxdW90YSBhbmQg dGhlIHNpbmdsZQo+ID4gK2luc3RhbmNlIG9mIHhlbnN0b3JlZCBjYW4gZWFzaWx5IGJlY29tZSBz Y2FsYWJpbGl0eSBpc3N1ZXMuCj4gPiArCj4gPiArIyMgUHJvcG9zYWwKPiA+ICsKPiA+ICtUaGUg cHJvcG9zZWQgaW50ZXJmYWNlIGlzIGludGVuZGVkIHRvIGJlIHVzZWQgb25seSBmb3IgdGhlIHB1 cnBvc2VzIG9mCj4gPiArY29udmV5aW5nIHN0YXRpc3RpY3MgZnJvbSBndWVzdCBQViBkcml2ZXJz IG9yIGFnZW50cyB0byBhbiBhZ2VudCBvciBhZ2VudHMKPiA+ICtydW5uaW5nIGluIGEgdG9vbHN0 YWNrIGRvbWFpbi4gSXQgaXMgbm90IGludGVuZGVkIGZvciBidWxrIGRhdGEgdHJhbnNmZXIsCj4g PiArbm9yIGFzIGFub3RoZXIgbWVhbnMgb2YgY29udHJvbCBvZiB0aGUgUFYgZHJpdmVycyBvciBh Z2VudHMgYnkgdGhlCj4gPiArdG9vbHN0YWNrIGRvbWFpbi4KPiA+ICsKPiA+ICtQViBkcml2ZXJz IG9yIGFnZW50cyB0eXBpY2FsbHkgcHVibGlzaCBtdWx0aXBsZSByZWxhdGVkIHNldHMgb2Ygc3Rh dGlzdGljcy4KPiA+ICtGb3IgZXhhbXBsZSwgYSBQViBuZXR3b3JrIGZyb250ZW5kIG1heSBwdWJs aXNoIHN0YXRpc3RpY3MgcmVsYXRpbmcgdG8KPiA+ICtyZWNlaXZlZCB0cmFmZmljIGFuZCB0cmFu c21pdHRlZCB0cmFmZmljLiBUaGVzZSBzZXRzIGFyZSBsaWtlbHkgdG8gYmUKPiA+ICt1cGRhdGVk IGFzeW5jaHJvbm91c2x5IGZyb20gZWFjaCBvdGhlciBhbmQgdGhlcmVmb3JlIGl0IG1ha2VzIHNl bnNlCj4gdGhhdAo+ID4gK3RoZXkgY2FuIGJlIHNlcGFyYXRlZCBzdWNoIHRoYXQgYSBtb25pdG9y aW5nIGFnZW50IGNhbiByZWZyZXNoIGl0cyB2aWV3IG9mCj4gPiArdGhlbSBhc3luY2hyb25vdXNs eS4gSXQgaXMgdGhlcmVmb3JlIHByb3Bvc2VkIHRoYXQgYSB0d28tbGV2ZWwgaGllcmFyY2h5Cj4g b2YKPiA+ICt4ZW5zdG9yZSBrZXlzIGlzIHVzZWQgdG8gYWR2ZXJ0aXNlIHNldHMgb2YgZ3Vlc3Qg c3RhdGlzdGljcy4KPiA+ICsKPiA+ICtUaGUgdG9vbHN0YWNrIHdpbGwgY3JlYXRlIGEgd3JpdGVh YmxlIHRvcC1sZXZlbCBgc3RhdHNgIGtleSBpbiB0aGUgZ3Vlc3QKPiA+ICtzcGFjZS4gVW5kZXIg dGhpcyBlYWNoIGd1ZXN0IHN0YXRpc3RpY3MgKnByb3ZpZGVyKiBjcmVhdGVzIGEga2V5IGl0cyBu YW1lLAo+ID4gK2UuZy4gYE5ldHdvcmsgIzBgLiBUaGlzIGtleSBhY3RzIGFzIGEgcGFyZW50IHRv IGtleXMgdGhhdCB0aGVuIG5hbWUgZWFjaAo+ID4gK3NldCBvZiBzdGF0aXN0aWNzIHRoYXQgaXQg cHJvdmlkZXMsIGUuZy4gYFR4YC4gVW5kZXIgdGhlIGtleSBmb3IgYQo+ID4gK3BhcnRpY3VsYXIg c2V0IHRoZSBwcm92aWRlciB0aGVuIHdyaXRlcyBlbnRyaWVzIGNvbnRhaW5pbmcgZ3JhbnQgcmVm ZXJlbmNlcwo+ID4gK29mIHBhZ2VzIGNvbnRhaW5pbmcgdGhlIG5hbWVzIGFuZCB2YWx1ZXMgb2Yg dGhlIHN0YXRpc3RpY3MgaW4gdGhhdCBzZXQsIGFuZAo+ID4gK2FuIGV2ZW50IGNoYW5uZWwgdG8g YmUgdXNlZCBmb3Igc2lnbmFsbGluZyBlLmcuOgo+ID4gKwo+ID4gKyAgICBuYW1lLXR5cGUtcmVm MCA9IDEwCj4gPiArICAgIG5hbWUtdHlwZS1yZWYxID0gMTEKPiA+ICsgICAgdmFsLXJlZjAgPSAx Mgo+ID4gKyAgICB2YWwtcmVmMSA9IDEzCj4gPiArICAgIGV2ZW50LWNoYW5uZWwgPSAxMAo+ID4g Kwo+ID4gK1RoZSBwcm92aWRlciBtdXN0IGFsd2F5cyB3cml0ZSB0aGUgYGV2ZW50LWNoYW5uZWxg IGtleSBhZnRlciBhbGwgdGhlIG90aGVyCj4gPiAra2V5cyBoYXZlIGJlZW4gd3JpdHRlbiBzdWNo IHRoYXQgYSBtb25pdG9yaW5nIGFnZW50IHdpdGggYSB3YXRjaCBvbiB0aGUKPiA+ICtndWVzdCdz IHRvcC1sZXZlbCBgc3RhdHNgIGtleSBjYW4gbWFrZSB0aGUgYXNzdW1wdGlvbiB0aGF0IGl0IGlz IHNhZmUgdG8KPiA+ICtzYW1wbGUgYWxsIG90aGVyIGtleXMgb25jZSB0aGF0IGtleSBoYXMgYmVl biB3cml0dGVuLiBUaHVzIG5vIGV4cGxpY2l0Cj4gPiArYHN0YXRlYCBrZXkgaXMgcmVxdWlyZWQu Cj4gPiArCj4gPiArVGhlcmUgYXJlIHNlcGFyYXRlIHJlZmVyZW5jZXMgZm9yIHBhZ2VzIGNvbnRh aW5pbmcgdGhlIG5hbWVzIGFuZCB0eXBlcwo+IG9mCj4gPiArdGhlIHN0YXRpc3RpY3MgYW5kIHRo ZSB2YWx1ZXMgb2YgdGhvc2Ugc3RhdGlzdGljcyBzaW5jZSBpdCBpcyByZXF1aXJlZCB0aGF0Cj4g PiArdGhlIG5hbWVzIGFuZCB0eXBlcyBkbyBub3QgY2hhbmdlIGFuZCBoZW5jZSBhIG1vbml0b3Jp bmcgYWdlbnQgbmVlZAo+IG9ubHkKPiA+ICtzYW1wbGUgdGhlbSBvbmNlIGFuZCBjYW4gZG8gc28g YXMgc29vbiBhcyB0aGUgYXMgdGhlIGBuYW1lLXJlZmAga2V5cyBhcmUKPiA+ICt2YWxpZC4gVGhl IGZvcm1hdCBvZiBlYWNoICgqbmFtZSwgdHlwZSopIHR1cGxlIGlzIGFzIGZvbGxvd3M6Cj4gPiAr Cj4gPiArICAgIHN0cnVjdCBzdGF0c19uYW1lX3R5cGUgewo+ID4gKwl1aW50OF90IHR5cGU7Cj4g PiArCWNoYXIgbmFtZVs2M107Cj4gPiArICAgIH07Cj4gPiArCj4gPiArYW5kIHRoZSBwb3NzaWJs ZSB0eXBlcyBhcmU6Cj4gPiArCj4gPiArICAgICNkZWZpbmUgU1RBVFNfVFlQRV9TNjQJCTEKPiA+ ICsgICAgI2RlZmluZSBTVEFUU19UWVBFX1U2NAkJMgo+ID4gKyAgICAjZGVmaW5lIFNUQVRTX1RZ UEVfRE9VQkxFCTMKPiA+ICsgICAgI2RlZmluZSBTVEFUU19UWVBFX0FTQ0lJCTQKPiA+ICsKPiA+ ICtUaGUgYG5hbWVgIG11c3QgYmUgYSBOVUwgdGVybWluYXRlZCBBU0NJSSBzdHJpbmcgY29udGFp bmluZyBvbmx5Cj4gPiArYWxwaGFudW1lcmljIGNoYXJhY3RlcnMsIHByaW50YWJsZSBub24tYWxw aGFudW1lcmljIGNoYXJhY3RlcnMgb3IgYQo+IHNwYWNlCj4gPiArY2hhcmFjdGVyLCBpLmUuIHRo ZSBleHByZXNzaW9uOgo+ID4gKwo+ID4gKyAgICAoaXNhbG51bShuYW1lW2ldKSB8fCBpc3B1bmN0 KG5hbWVbaV0pIHx8IG5hbWVbaV0gPT0gJyAnKQo+ID4gKwo+ID4gK211c3QgYmUgdHJ1ZSBmb3Ig ZWFjaCB2YWx1ZSBvZiBgaWAgdW50aWwgYG5hbWVbaV0gPT0gJ1wwJ2AKPiA+ICsKPiA+ICtXaGVu IGl0ZXJhdGluZyB0aHJvdWdoIHRoZSBgc3RhdHNfbmFtZV90eXBlYCBzdHJ1Y3R1cmVzIGEgbW9u aXRvcmluZwo+IGFnZW50cwo+ID4gK2NhbiBkZXRlcm1pbmUgdGhhdCBpdCBoYXMgZmluaXNoZWQg d2hlbiBpdCBlaXRoZXIgZW5jb3VudGVycyBhIGB0eXBlYCB2YWx1ZQo+ID4gK29mIDAsIG9yIGl0 IGhhcyBpdGVyYXRlZCB0aHJvdWdoIGFsbCA2NCBzdHJ1Y3R1cmVzIGluIHRoZSBncmFudGVkIHBh Z2UgYW5kCj4gPiArdGhlcmUgYXJlIG5vIGZ1cnRoZXIgYG5hbWUtdHlwZS1yZWZgIGtleXMuCj4g PiArCj4gPiArQSBtb25pdG9yaW5nIGFnZW50IGNhbiBmaW5kIHRoZSB2YWx1ZSBvZiBhIHN0YXRp c3RpYyBieSBub3RpbmcgdGhlCj4gPiArYG5hbWUtdHlwZS1yZWZgIGluZGV4IGFuZCB0aGUgb2Zm c2V0IGludG8gdGhlIHBhZ2Ugd2hlcmUgdGhlCj4gPiArYHN0YXRzX25hbWVfdHlwZWAgd2FzIGZv dW5kIGFuZCB0aGUgbG9va2luZyBhdCB0aGUgc2FtZSBvZmZzZXQgaW4gdGhlCj4gPiArY29ycmVz cG9uZGluZyBgdmFsLXJlZmAgcGFnZS4gVmFsdWVzIGFyZSB0aGVyZWZvcmUgYWxzbyA2NCBvY3Rl dHMKPiA+ICtpbiBsZW5ndGggYW5kIGNvbnRhaW46Cj4gPiArCj4gPiArKiBgU1RBVFNfVFlQRV9T NjRgIDogQSBzaWduZWQgNjQtYml0IGludGVnZXIgaW4gbGl0dGxlIGVuZGlhbiBmb3JtIGluCj4g PiArCQkgICAgIG9jdGV0cyAwLi43Cj4gPiArKiBgU1RBVFNfVFlQRV9VNjRgIDogQW4gdW5zaWdu ZWQgNjQtYml0IGludGVnZXIgaW4gbGl0dGxlIGVuZGlhbiBmb3JtIGluCj4gPiArCQkgICAgIG9j dGV0cyAwLi43Cj4gPiArKiBgU1RBVFNfVFlQRV9ET1VCTEVgIDogQSBkb3VibGUgcHJlY2lzaW9u IGZsb2F0aW5nIHBvaW50IHZhbHVlIGluIGxpdHRsZQo+ID4gKwkJCWVuZGlhbiBmb3JtIGluCj4g PiArCQkJb2N0ZXRzIDAuLjcKPiA+ICsqIGBTVEFUU19UWVBFX0FTQ0lJYCA6IEEgTlVMIHRlcm1p bmF0ZWQgQVNDSUkgc3RyaW5nIG1lZXRpbmcgdGhlIHNhbWUKPiA+ICsJCSAgICAgICBjcml0ZXJp YSBhcyBgbmFtZWAKPiA+ICsKPiA+ICtBIHN0YXRpc3RpY3MgcHJvdmlkZXIgc2hvdWxkIG5vdCB1 cGRhdGUgYW55IG9mIHRoZSBzdGF0aXN0aWNzIGluIGEgc2V0Cj4gPiArdW50aWwgdGhlIGBldmVu dC1jaGFubmVsYCBpcyBzaWduYWxsZWQgaW5kaWNhdGluZyB0aGF0IGEgbW9uaXRvcmluZyBhZ2Vu dAo+ID4gK3dpc2hlcyB0byBzYW1wbGUgdGhlbS4gVGh1cyB0aGUgcmF0ZSBvZiB1cGRhdGUgaXMg bm9taW5hbGx5IHVuZGVyCj4gY29udHJvbAo+ID4gK29mIHRoZSBtb25pdG9yaW5nIGFnZW50Lgo+ ID4gKwo+ID4gK1doZW4gc3VjaCBhIHNpZ25hbCBpcyByZWNlaXZlZCwgYWxsIHN0YXRpc3RpY3Mg aW4gdGhlIHNldCBzaG91bGQgdGhlbiBiZQo+ID4gK3VwZGF0ZWQgYW5kIGEgc2lnbmFsIHNldCBi YWNrIHRvIHRoZSBtb25pdG9yaW5nIGFnZW50IHZpYSB0aGUKPiA+ICtgZXZlbnQtY2hhbm5lbGAg dG8gc2F5IHRoYXQgdGhlIHVwZGF0ZSBpcyBjb21wbGV0ZS4gVGhlIG1vbml0b3JpbmcgYWdlbnQK PiA+ICtjYW4gdGhlbiBzYW1wbGUgdGhlIHdob2xlIHNldCwga25vd2luZyB0aGF0IGl0IGlzIHNl bGYtY29uc2lzdGVudCwgYXMgbG9uZwo+ID4gK2FzIHRoZSBwcm92aWRlciBpcyBub3QgbWlzYmVo YXZpbmcuCj4gPiArCj4gPiArV2hlbiBhIHByb3ZpZGVyIHdpc2hlcyB0byB3aXRoZHJhdyBhIHNl dCBvZiBzdGF0aXN0aWNzLCBlLmcuIHdoZW4gaXQgaXMKPiA+ICtzaHV0dGluZyBkb3duLCBpdCBu b3RpZmllcyBhIG1vbml0b3JpbmcgYWdlbnQgYnkgZGVsZXRpbmcgdGhlCj4gPiArYGV2ZW50LWNo YW5uZWxgIGtleSBmcm9tIHhlbnN0b3JlLiBUaHVzIGEgbW9uaXRvcmluZyBhZ2VudCBtdXN0Cj4g bWFpbnRhaW4gYQo+ID4gK3dhdGNoIG9uIHRoYXQga2V5IGFuZCByZXNwb25kIGluIGEgdGltZWx5 IG1hbm5lciBieSBjbG9zaW5nIGl0cyBwb3J0Lgo+IE9uY2UKPiA+ICt0aGUgcHJvdmlkZXIgZGV0 ZWN0cyB0aGF0IGNoYW5uZWwgaXMgbm8gbG9uZ2VyIGJvdW5kIHRoZW4gaXQgY2FuIHJlbW92ZQo+ IHRoZQo+ID4gK3dob2xlIHNldCBvZiBrZXlzIGNvcnJlc3BvbmRpbmcgdG8gdGhlIHNldC4gV2hl biB0aGUgcHJvdmlkZXIgaXMgbm8KPiBsb25nZXIKPiA+ICthZHZlcnRpc2luZyBhbnkgc2V0cyBp dCBjYW4gdGhlbiByZW1vdmUgaXRzIHRvcC1sZXZlbCBrZXkuCj4gPiAtLQo+ID4gMi41LjMKPiA+ Cj4gPgo+ID4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K PiA+IFhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKPiA+IFhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCj4g PiBodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZl bEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK