From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Kazlauskas, Nicholas" Subject: Re: [PATCH v4 3/4] drm: Document variable refresh properties Date: Wed, 31 Oct 2018 13:38:24 +0000 Message-ID: <311638a8-eb8a-cb8d-3f7a-109aaa4b046b@amd.com> References: <20181011163942.28267-1-nicholas.kazlauskas@amd.com> <20181011163942.28267-4-nicholas.kazlauskas@amd.com> <20181026143719.01381cdd@eldfell> <20181026145321.GV9144@intel.com> <20181026175924.GH9144@intel.com> <481ae686-adda-5857-5538-2b0af2e25427@daenzer.net> <20181029180341.GN9144@intel.com> <13a934a2-5cea-3d1b-ec57-bf5488698129@daenzer.net> <1c1c0f6f-ccbd-bfc2-f249-a01f6fc997ec@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1c1c0f6f-ccbd-bfc2-f249-a01f6fc997ec-5C7GfCeVMHo@public.gmane.org> Content-Language: en-US Content-ID: <042C0C4520D58F45B84766188E9FE6C8-asWib9pRmPqcE4WynfumptQqCkab/8FMAL8bYrjMMd8@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: =?utf-8?B?TWljaGVsIETDpG56ZXI=?= , =?utf-8?B?VmlsbGUgU3lyasOkbMOk?= Cc: "daniel.vetter-/w4YWyX8dFk@public.gmane.org" , "Olsak, Marek" , "amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" , "manasi.d.navare-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org" , "dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" , "Deucher, Alexander" , "Wentland, Harry" List-Id: dri-devel@lists.freedesktop.org T24gMTAvMzAvMTggMTE6MzQgQU0sIEthemxhdXNrYXMsIE5pY2hvbGFzIHdyb3RlOg0KPiBPbiAx MC8zMC8xOCA1OjI5IEFNLCBNaWNoZWwgRMOkbnplciB3cm90ZToNCj4+IE9uIDIwMTgtMTAtMjkg NzowMyBwLm0uLCBWaWxsZSBTeXJqw6Rsw6Qgd3JvdGU6DQo+Pj4gT24gTW9uLCBPY3QgMjksIDIw MTggYXQgMDU6Mzc6NDlQTSArMDEwMCwgTWljaGVsIETDpG56ZXIgd3JvdGU6DQo+Pj4+IE9uIDIw MTgtMTAtMjYgNzo1OSBwLm0uLCBWaWxsZSBTeXJqw6Rsw6Qgd3JvdGU6DQo+Pj4+PiBPbiBGcmks IE9jdCAyNiwgMjAxOCBhdCAwNTozNDoxNVBNICswMDAwLCBLYXpsYXVza2FzLCBOaWNob2xhcyB3 cm90ZToNCj4+Pj4+PiBPbiAxMC8yNi8xOCAxMDo1MyBBTSwgVmlsbGUgU3lyasOkbMOkIHdyb3Rl Og0KPj4+Pj4+Pg0KPj4+Pj4+PiBTcGVha2luZyBvZiB0aW1lc3RhbXBzLiBXaGF0IGlzIHRoZSBl eHBlY3RlZCBiZWhhdmlvdXIgb2YgdmJsYW5rDQo+Pj4+Pj4+IHRpbWVzdGFtcHMgd2hlbiB2cnIg aXMgZW5hYmxlZD8NCj4+Pj4+Pg0KPj4+Pj4+IFdoZW4gdnJyIGlzIGVuYWJsZWQgdGhlIGR1cmF0 aW9uIG9mIHRoZSB2ZXJ0aWNhbCBmcm9udCBwb3JjaCB3aWxsIGJlDQo+Pj4+Pj4gZXh0ZW5kZWQg dW50aWwgZmxpcCBvciB0aW1lb3V0IG9jY3Vycy4gVGhlIHZibGFuayB0aW1lc3RhbXAgd2lsbCB2 YXJ5DQo+Pj4+Pj4gYmFzZWQgb24gZHVyYXRpb24gb2YgdGhlIHZlcnRpY2FsIGZyb250IHBvcmNo LiBUaGUgbWluL21heCBkdXJhdGlvbiBmb3INCj4+Pj4+PiB0aGUgZnJvbnQgcG9yY2ggY2FuIGJl IHNwZWNpZmllZCBieSB0aGUgZHJpdmVyIHZpYSB0aGUgbWluL21heCByYW5nZS4NCj4+Pj4+Pg0K Pj4+Pj4+IE5vIGNoYW5nZXMgdG8gdmJsYW5rIHRpbWVzdGFtcGluZyBoYW5kbGluZyBzaG91bGQg YmUgbmVjZXNzYXJ5IHRvDQo+Pj4+Pj4gYWNjb21tb2RhdGUgdmFyaWFibGUgcmVmcmVzaCByYXRl Lg0KPj4+Pj4NCj4+Pj4+IFRoZSBwcm9ibGVtIGlzIHRoYXQgdGhlIHRpbWVzdGFtcCBpcyBzdXBw b3NlZCB0byBjb3JyZXNwb25kIHRvIHRoZSBmaXJzdA0KPj4+Pj4gYWN0aXZlIHBpeGVsLiBBbmQg c2luY2Ugd2UgZG9uJ3Qga25vdyBob3cgbG9uZyB0aGUgZnJvbnQgcG9yY2ggd2lsbCBiZQ0KPj4+ Pj4gd2UgY2FuJ3QgcmVhbGlzdGljYWxseSByZXBvcnQgdGhlIHRydWUgdmFsdWUuIFNvIEkgZ3Vl c3MganVzdCBhc3N1bWluZw0KPj4+Pj4gbWluIGZyb250IHBvcmNoIGxlbmd0aCBpcyBhcyBnb29k IGFzIGFueXRoaW5nIGVsc2U/DQo+Pj4+DQo+Pj4+IFRoYXQgKGFuZCBkb2N1bWVudGluZyB0aGF0 IHRoZSB0aW1lc3RhbXAgY29ycmVzcG9uZHMgdG8gdGhlIGVhcmxpZXN0DQo+Pj4+IHBvc3NpYmxl IGZpcnN0IGFjdGl2ZSBwaXhlbCwgbm90IG5lY2Vzc2FyaWx5IHRoZSBhY3R1YWwgb25lLCB3aXRo IFZSUikNCj4+Pj4gbWlnaHQgYmUgZ29vZCBlbm91Z2ggZm9yIHRoZSBhY3R1YWwgdmJsYW5rIGV2 ZW50IHRpbWVzdGFtcHMuDQo+Pj4+DQo+Pj4+DQo+Pj4+IEhvd2V2ZXIsIEknbSBub3Qgc28gc3Vy ZSBhYm91dCB0aGUgdGltZXN0YW1wcyBvZiBwYWdlIGZsaXAgY29tcGxldGlvbg0KPj4+PiBldmVu dHMuIFRob3NlIGNvdWxkIGJlIHZlcnkgbWlzbGVhZGluZyBpZiB0aGUgZmxpcCBjb21wbGV0ZXMg dG93YXJkcyB0aGUNCj4+Pj4gdGltZW91dCwgd2hpY2ggY291bGQgcmVzdWx0IGluIGJhZCBiZWhh dmlvdXIgb2YgYXBwbGljYXRpb25zIHdoaWNoIHVzZQ0KPj4+PiB0aGVtIGZvciBhbmltYXRpb24g dGltaW5nLg0KPj4+Pg0KPj4+PiBNYXliZSB0aGUgdGltZXN0YW1wIGNvdWxkIGJlIHVwZGF0ZWQg YXBwcm9wcmlhdGVseSAoeWVzLCBJJ20gaGFuZC13YXZpbmcNCj4+Pj4gOikgaW4gZHJtX2NydGNf c2VuZF92YmxhbmtfZXZlbnQ/DQo+Pj4NCj4+PiBIbW0uIFVwZGF0ZWQgaG93PyBXaGV0aGVyIGl0 J3MgYSBwYWdlIGZsaXAgZXZlbnQgb3IgdmJsYW5rIGV2ZW4gd2Ugd29uJ3QNCj4+PiBrbm93IHdo ZW4gdGhlIGZpcnN0IGFjdGl2ZSBwaXhlbCB3aWxsIGNvbWUuIEFsdGhvdWdoIEkgc3VwcG9zZSBp Zg0KPj4+IHRoZXJlIGlzIHNvbWUga2luZCBvZiB2cnIgc2xldyByYXRlIGxpbWl0IHdlIGNvdWxk IGF0IGxlYXN0IGFjY291bnQNCj4+PiBmb3IgdGhhdCB0byByZXBvcnQgYSBtb3JlIGNvcnJlY3Qg InRoaXMgaXMgdGhlIGVhcmxpZXN0IHlvdSBtaWd0aCBiZQ0KPj4+IGFibGUgdG8gc2VlIHlvdXIg ZnJhbWUiIHRpbWVzdGFtcC4NCj4+Pg0KPj4+IE9oLCBvciBhcmUgeW91IGFjdHVhbGx5IHNheWlu ZyB0aGF0IHNoY2VkdWxpbmcgYSBuZXcgZmxpcCBiZWZvcmUgdGhlDQo+Pj4gdGltZW91dCBpcyBh Y3R1YWxseSBnb2luZyB0byBsYXRjaCB0aGF0IGZsaXAgaW1tZWRpYXRlbHk/IEkgZmlndXJlZA0K Pj4+IHRoYXQgdGhlIGZsaXAgd291bGQgZ2V0IGxhdGNoZWQgb24gdGhlIG5leHQgc3RhcnQgb2Yg dmJsYW5rIHJlZ2FyZGxlc3MsDQo+Pj4gYW5kIHRoZSBhY3Qgb2Ygc2NoZWR1bGluZyBhIGZsaXAg d2lsbCBqdXN0IGtpY2sgdGhlIGhhcmR3YXJlIHRvIHN0YXJ0DQo+Pj4gc2Nhbm5pbmcgdGhlIHBy ZXZpb3VzbHkgbGF0Y2hlZCBmcmFtZSBlYXJsaWVyLg0KPj4+DQo+Pj4gc2Nhbm91dCBBIHwgLi4u IHZibGFuayB8IHNjYW5vdXQgQSB8IC4uLiB2YmxhbmsgfCBzY2Fub3V0IEIgfCAuLi4gdmJsYW5r DQo+Pj4gICAgICAgICAgICAgICAgICAgICBeICAgICAgICAgICAgICAgIF4gICAgICAgIF4gICAg ICAgICAgICAgICBeDQo+Pj4gICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgIHwg ICAgICAgIGZsaXAgQyAgICAgICAgICBsYXRjaCBDDQo+Pj4gICAgICAgICAgICAgICAgICAgICBm bGlwIEIgICAgICAgICAgIGxhdGNoIEINCj4+DQo+PiBUaGlzIHdvdWxkIGtpbmQgb2YgZGVmZWF0 IHRoZSBwb2ludCBvZiBWUlIsIHdvdWxkbid0IGl0PyBJZiBhIGZsaXAgd2FzDQo+PiBzY2hlZHVs ZWQgYWZ0ZXIgdGhlIHN0YXJ0IG9mIHZibGFuaywgdGhlIHZibGFuayB3b3VsZCBhbHdheXMgdGlt ZSBvdXQsDQo+PiByZXN1bHRpbmcgaW4gdGhlIG1pbmltdW0gcmVmcmVzaCByYXRlLg0KPj4NCj4+ DQo+Pj4gc2Nhbm91dCBBIHwgLi4uIHZibGFuayB8IHNjYW5vdXQgQiB8IC4uLiB2YmxhbmsgfCBz Y2Fub3V0IEMgfCAuLi4gdmJsYW5rDQo+Pj4gICAgICAgICAgICAgICAgICAgICBeIF4gICAgICAg ICAgICAgICAgICAgICAgXiBeDQo+Pj4gICAgICAgICAgICAgICAgICAgICB8IGxhdGNoIEIgICAg ICAgICAgICAgICAgfCBsYXRjaCBDDQo+Pj4gICAgICAgICAgICAgICAgICAgICBmbGlwIEIgICAg ICAgICAgICAgICAgICAgZmxpcCBDDQo+Pg0KPj4gU28gdGhpcyBpcyB3aGF0IGhhcHBlbnMuDQo+ Pg0KPj4gUmVnYXJkbGVzcywgd2hlbiB0aGUgZmxpcCBpcyBsYXRjaGVkLCBBTUQgaGFyZHdhcmUg Z2VuZXJhdGVzIGEgInBmbGlwIg0KPj4gaW50ZXJydXB0LCBhbmQgaXRzIGhhbmRsZXIgY2FsbHMg ZHJtX2NydGNfc2VuZF92YmxhbmtfZXZlbnQgKGFuZCBpbiB0aGUNCj4+IGNhc2Ugb2YgREMgZHJt X2NydGNfYWNjdXJhdGVfdmJsYW5rX2NvdW50IGJlZm9yZSB0aGF0KS4gU28gdGhlIHRpbWUgd2hl bg0KPj4gZHJtX2NydGNfc2VuZF92YmxhbmtfZXZlbnQgaXMgY2FsbGVkIG1pZ2h0IGJlIGEgZ29v ZCBhcHByb3hpbWF0aW9uIG9mDQo+PiB3aGVuIHNjYW5vdXQgb2YgdGhlIG5leHQgZnJhbWUgc3Rh cnRzLg0KPj4NCj4+IEFub3RoZXIgcG9zc2liaWxpdHkgbWlnaHQgYmUgdG8gd2FpdCBmb3IgdGhl IGhhcmR3YXJlIHZsaW5lIGNvdW50ZXIgdG8NCj4+IHdyYXAgYXJvdW5kIHRvIDAgYmVmb3JlIGNh bGxpbmcgZHJtX2NydGNfYWNjdXJhdGVfdmJsYW5rX2NvdW50LCB0aGVuIHRoZQ0KPj4gY2FsY3Vs YXRpb25zIHNob3VsZCBiZSBiYXNlZCBvbiAwIGluc3RlYWQgb2YgY3J0Y192dG90YWwuDQo+Pg0K Pj4NCj4gDQo+IA0KPiBJIHVuZGVyc3RhbmQgdGhlIGlzc3VlIHlvdSdyZSBkZXNjcmliaW5nIG5v dy4gVGhlIHRpbWVzdGFtcCBpcyBzdXBwb3NlZA0KPiB0byBzaWduaWZ5IHRoZSBlbmQgb2YgdGhl IGN1cnJlbnQgdmJsYW5rLiBUaGUgY2FsbCB0byBnZXQgc2Nhbm91dA0KPiBwb3NpdGlvbiBpcyBz dXBwb3NlZCB0byByZXR1cm4gdGhlIG51bWJlciBvZiBsaW5lcyB1bnRpbCBzY2Fub3V0IChhDQo+ IG5lZ2F0aXZlIHZhbHVlKSBvciB0aGUgbnVtYmVyIG9mIGxpbmVzIHNpbmNlIHRoZSBuZXh0IHNj YW5vdXQgYmVnYW4gKGENCj4gcG9zaXRpdmUgdmFsdWUpLg0KPiANCj4gVGhlIGFtZGdwdSBkcml2 ZXIgY2FsY3VsYXRlcyB0aGUgbnVtYmVyIG9mIGxpbmVzIGJhc2VkIG9uIGEgaGFyZHdhcmUNCj4g cmVnaXN0ZXIgc3RhdHVzIHBvc2l0aW9uIHdoaWNoIHJldHVybnMgYW4gaW5jcmVhc2luZyB2YWx1 ZSBmcm9tIDAgdGhhdA0KPiBpbmRpY2F0ZXMgdGhlIGN1cnJlbnQgdnBvcy9ocG9zIGZvciB0aGUg ZGlzcGxheS4NCj4gDQo+IEZvciBhbnkgdnBvcyBiZWxvdyB2Ymxfc3RhcnQgd2Uga25vdyB0aGUg dmFsdWUgaXMgY29ycmVjdCBzaW5jZSB0aGUgbmV4dA0KPiB2YmxhbmsgaGFzbid0IGJlZ3VuIHll dC4gQnV0IGZvciBhbnl0aGlnbiBhYm91dCB2Ymxfc3RhcnQgaXQncyBwcm9iYWJseQ0KPiB3cm9u ZyBzaW5jZSBpdCBhcHBsaWVzIGEgY29ycmVjdGl2ZSBvZmZzZXQgYmFzZWQgb24gdGhlIGZpeGVk IHZhbHVlIG9mDQo+IGNydGNfdnRvdGFsLiBJdCdzIGV2ZW4gd29yc2Ugd2hlbiB0aGUgdmFsdWUg aXMgYWJvdmUgY3J0Y192dG90YWwgc2luY2UNCj4gaXQnbGwgYmUgY2FsY3VsYXRpbmcgdGhlIG51 bWJlciBvZiBsaW5lcyBzaW5jZSB0aGUgbGFzdCBzY2Fub3V0IHNpbmNlDQo+IGl0J2xsIGJlIGEg cG9zaXRpdmUgdmFsdWUuDQo+IA0KPiBTbyB0aGUgaXNzdWUgYmVjb21lcyBkZXRlcm1pbmluZyB3 aGVuIHRoZSB2ZnJvbnQgcG9yY2ggd2lsbCBlbmQuDQo+IA0KPiBXaGVuIHRoZSBmbGlwIGFkZHJl c3MgZ2V0cyB3cml0dGVuIHRoZSB2ZnJvbnQgcG9yY2ggd2lsbCBlbmQgYXQgdGhlDQo+IHN0YXJ0 IG9mIHRoZSBuZXh0IGxpbmUgbGVhdmluZyBvbmx5IHRoZSBiYWNrIHBvcmNoIHBsdXMgcGFydCBv ZiB0aGUNCj4gbGluZS4gQnV0IHdlIGRvbid0IGtub3cgd2hlbiB0aGUgZmxpcCB3aWxsIG9jY3Vy LCBpZiBhdCBhbGwuIEl0IGhhc24ndA0KPiBvY2N1cnJlZCB5ZXQgaW4gdGhpcyBjYXNlLg0KPiAN Cj4gV2FpdGluZyBmb3IgdGhlIHdyYXAgYXJvdW5kIHRvIDAgbWlnaHQgYmUgdGhlIGJlc3QgY2hv aWNlIGhlcmUgc2luY2UNCj4gdGhlcmUncyBubyBndWFyYW50ZWUgdGhlIGZsaXAgd2lsbCBvY2N1 ci4NCj4gDQo+IE5pY2hvbGFzIEthemxhdXNrYXMNCj4gX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18NCj4gZHJpLWRldmVsIG1haWxpbmcgbGlzdA0KPiBkcmkt ZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnDQo+IGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsDQo+IA0KDQpJIHB1dCBzb21lIG1vcmUgdGhv dWdodCBpbnRvIHRoaXMgYW5kIEkgZG9uJ3QgdGhpbmsgdGhpcyBpcyBhcyBiYWQgYXMgSSANCmhh ZCBvcmlnaW5hbGx5IHRob3VnaHQuDQoNCkkgdGhpbmsgdGhlIHZibGFuayB0aW1lc3RhbXAgaXMg c3VwcG9zZWQgdG8gYmUgZm9yIHRoZSBmaXJzdCBhY3RpdmUgDQpwaXhlbCBvZiB0aGUgbmV4dCBz Y2Fub3V0LiBUaGUgdXNhZ2Ugb2Ygd2hpY2ggaXMgZm9yIGNsaWVudHMgdG8gdGltZSANCnRoZWly IGNvbnRlbnQvYW5pbWF0aW9uL2V0Yy4NCg0KVGhlIGNsaWVudCBsaWtlbHkgZG9lc24ndCBjYXJl IHdoZW4gdGhleSBpc3N1ZSB0aGVpciBmbGlwLCBqdXN0IHRoYXQgDQp0aGVpciBjb250ZW50IGlz IG1hdGNoZWQgZm9yIHRoYXQgdmJsYW5rIHRpbWVzdGFtcC4gVGhlIGZpeGVkIHJlZnJlc2ggDQpt b2RlbCB3b3JrcyByZWFsbHkgd2VsbCBmb3IgdGhhdCBraW5kIG9mIGFwcGxpY2F0aW9uLg0KDQpV dGlsaXppbmcgdmFyaWFibGUgcmVmcmVzaCByYXRlIHdvdWxkIGJlIGEgbWlzdGFrZSBpbiB0aGF0 IGNhc2Ugc2luY2UgDQp0aGUgY2xpZW50IHdvdWxkIHRoZW4gaGF2ZSB0byB0aW1lIGJhc2VkIG9u IHdoZW4gdGhleSBmbGlwIHdoaWNoIGlzIGEgDQpsb3QgaGFyZGVyIHRvICJwcmVkaWN0IiBwcmVj aXNlbHkuDQoNCkkgZGlkIHNvbWUgbW9yZSBpbnZlc3RpZ2F0aW9uIGludG8gd2hlbiBhbWRncHUg Z2V0cyB0aGUgc2Nhbm91dCBwb3NpdGlvbiANCmFuZCB3aGF0IHZhbHVlcyB3ZSBnZXQgYmFjayBv dXQgb2YgaXQuIFRoZSB0aW1lc3RhbXAgaXMgdXBkYXRlZCBzaG9ydGx5IA0KYWZ0ZXIgdGhlIGNy dGMgaXJxIHZibGFuayB3aGljaCBpcyB0eXBpY2FsbHkgd2l0aGluIGEgZmV3IGxpbmVzIG9mIA0K dmJsX3N0YXJ0LiBUaGlzIG1ha2VzIHNlbnNlLCBzaW5jZSB3ZSBjYW4gcHJvdmlkZSB0aGUgcHJl ZGljdGlvbiANCnRpbWVzdGFtcCBlYXJseS4gV2FpdGluZyBmb3IgdGhlIHZibGFuayB0byB3cmFw IGFyb3VuZCB0byAwIGRvZXNuJ3QgDQpyZWFsbHkgbWFrZSBzZW5zZSBoZXJlIHNpbmNlIHRoYXQg d291bGQgbWVhbiB3ZSBhbHJlYWR5IGhpdCB0aW1lb3V0IG9yIA0KdGhlIGZsaXAgb2NjdXJyZWQg LSBtYWtpbmcgdGhlIHRpbWVzdGFtcCB1c2VsZXNzIGFuZCBwcm9iYWJseSBidXJuaW5nIGEgDQp0 b24gb2YgQ1BVIHRvIGRvIGl0Lg0KDQpXaGF0IHRoaXMgbWVhbnMgaXMgdGhhdCB3ZSdyZSBnb2lu ZyB0byBoYXZlIHRvIG1ha2Ugc29tZSBzb3J0IG9mIA0KcHJlZGljdGlvbiBiYXNlZCBvbiBhIGZp eGVkIGR1cmF0aW9uIHRvIGhhdmUgYSByZWFzb25hYmxlIHJlc3VsdC4gSSANCnRoaW5rIGFzc3Vt aW5nIHRoZSBtaW4gZnJvbnQgcG9yY2ggZHVyYXRpb24gKG1heCByZWZyZXNoKSBpcyB0aGUgbG9n aWNhbCANCmFwcHJvYWNoIGhlcmUgLSBpbiBtb3N0IGNhc2VzIHRoaXMgd2lsbCBiZSBjcnRjX3Z0 b3RhbCBzaW5jZSBpdCdzIHRoZSANCm1vbml0b3IncyBmYXN0ZXN0IHJlZnJlc2guIEZvciBjbGll bnRzIHRoYXQgZmxpcCBlYXJseSB0aGlzIHdpbGwgZW5kIHVwIA0KYmVpbmcgdGhlIGNvcnJlY3Qg dGltZXN0YW1wLiBObyBuZWVkIHRvIGV4cGxpY2l0bHkgY2hlY2sgZm9yIHZhcmlhYmxlIA0KcmVm cmVzaCBlbmFibGVkIGluIHRoZSBnZXQgc2Nhbm91dCBwb3MgaGFuZGxlciBlaXRoZXIuDQoNClRo ZXJlIGlzIG9uZSBsaXR0bGUgY2F2ZWF0IHdpdGggZ2V0IHNjYW5vdXQgcG9zIHdpdGggdGhhdCBh cHByb2FjaCwgDQpob3dldmVyLiBGb3IgdXNhZ2VzIG90aGVyIHRoYW4gdGhlIHRpbWVzdGFtcCB0 aGUgbnVtYmVyIG9mIGxpbmVzIHVudGlsIA0Kc2Nhbm91dCB3aWxsIHN0aWxsIGJlIGluY29ycmVj dCB3aGVuIGdvaW5nIGFib3ZlIGNydGNfdnRvdGFsLiBXZSBjYW4gDQplaXRoZXIgYXNzdW1lIHRo ZSB3b3JzdCBpbiB0aGlzIGNhc2UgKHRoZSBtYXggZnJvbnQgcG9yY2ggZHVyYXRpb24sIHRoZSAN Cm1pbiByZWZyZXNoL3RpbWVvdXQpIG9yIGNsYW1wIGFuZCBqdXN0IHJldHVybiB0aGUgc2l6ZSBv ZiB0aGUgYmFjayBwb3JjaCANCmluc3RlYWQgVGhlIHZwb3Mgd2lsbCBsb29rIHN0YWxsZWQsIGJ1 dCB0aGUgZmxpcCB3aWxsIGxpa2VseSBoYXBwZW4gDQpzb29uZXIgdGhhbiB0aGUgdGltZW91dCBp biBtb3N0IGNhc2VzIHNvIHRoaXMgd2lsbCBsaWtlbHkgd29yayBvdXQgYmV0dGVyLg0KDQpOaWNo b2xhcyBLYXpsYXVza2FzDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwphbWQtZ2Z4IG1haWxpbmcgbGlzdAphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK