From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dhinakaran Pandiyan Subject: Re: [PATCH 2/5] drm/i915: Refactor PSR status debugfs Date: Wed, 02 Jan 2019 11:02:42 -0800 Message-ID: References: <20181204230032.6352-1-jose.souza@intel.com> <20181204230032.6352-2-jose.souza@intel.com> <4d0a8bd1fd7f37e66936ef380d02da9a4c140552.camel@intel.com> <2e3f2f319e27ab57632f375de09cf464ed8e438e.camel@intel.com> <4af8b422fccff1a47696d1f39b2c3fe4129e7c83.camel@intel.com> <7121064b123bb31c7728a652f8ef9dba187de193.camel@intel.com> Reply-To: dhinakaran.pandiyan@intel.com Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2B2C96E506 for ; Wed, 2 Jan 2019 19:02:55 +0000 (UTC) In-Reply-To: <7121064b123bb31c7728a652f8ef9dba187de193.camel@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Souza, Jose" , "intel-gfx@lists.freedesktop.org" Cc: "Vivi, Rodrigo" List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCAyMDE5LTAxLTAyIGF0IDA5OjA5IC0wODAwLCBTb3V6YSwgSm9zZSB3cm90ZToKPiBP biBUdWUsIDIwMTgtMTItMTEgYXQgMTg6NTQgKzAwMDAsIFNvdXphLCBKb3NlIHdyb3RlOgo+ID4g T24gVHVlLCAyMDE4LTEyLTExIGF0IDEwOjMyIC0wODAwLCBEaGluYWthcmFuIFBhbmRpeWFuIHdy b3RlOgo+ID4gPiBPbiBUdWUsIDIwMTgtMTItMTEgYXQgMDQ6NDQgLTA4MDAsIFNvdXphLCBKb3Nl IHdyb3RlOgo+ID4gPiA+IE9uIE1vbiwgMjAxOC0xMi0xMCBhdCAyMjo1MSAtMDgwMCwgRGhpbmFr YXJhbiBQYW5kaXlhbiB3cm90ZToKPiA+ID4gPiA+IE9uIFR1ZSwgMjAxOC0xMi0wNCBhdCAxNTow MCAtMDgwMCwgSm9zw6kgUm9iZXJ0byBkZSBTb3V6YQo+ID4gPiA+ID4gd3JvdGU6Cj4gPiA+ID4g PiA+IFRoZSBvbGQgZGVidWdmcyBmaWVsZHMgd2FzIG5vdCBmb2xsb3dpbmcgYSBuYW1pbmcgcGFy dGVybgo+ID4gPiA+ID4gPiBhbmQKPiA+ID4gPiA+ID4gaXQKPiA+ID4gPiA+ID4gd2FzCj4gPiA+ ID4gPiA+IGEgYml0IGNvbmZ1c2luZy4KPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+IFNvIGl0IHdl bnQgZnJvbToKPiA+ID4gPiA+ID4gfiQgc3VkbyBtb3JlIC9zeXMva2VybmVsL2RlYnVnL2RyaS8w L2k5MTVfZWRwX3Bzcl9zdGF0dXMKPiA+ID4gPiA+ID4gU2lua19TdXBwb3J0OiB5ZXMKPiA+ID4g PiA+ID4gUFNSIG1vZGU6IFBTUjEKPiA+ID4gPiA+ID4gRW5hYmxlZDogeWVzCj4gPiA+ID4gPiA+ IEJ1c3kgZnJvbnRidWZmZXIgYml0czogMHgwMDAKPiA+ID4gPiA+ID4gTWFpbiBsaW5rIGluIHN0 YW5kYnkgbW9kZTogbm8KPiA+ID4gPiA+ID4gSFcgRW5hYmxlZCAmIEFjdGl2ZSBiaXQ6IHllcwo+ ID4gPiA+ID4gPiBTb3VyY2UgUFNSIHN0YXR1czogMHgyNDA1MDAwNiBbU1JET05BQ0tdCj4gPiA+ ID4gPiA+IAo+ID4gPiA+ID4gPiBUbzoKPiA+ID4gPiA+ID4gfiQgc3VkbyBtb3JlIC9zeXMva2Vy bmVsL2RlYnVnL2RyaS8wL2k5MTVfZWRwX3Bzcl9zdGF0dXMKPiA+ID4gPiA+ID4gU2luayBzdXBw b3J0OiB5ZXMgWzB4MDAwMDAwMDNdCj4gPiA+ID4gPiA+IFN0YXR1czogUFNSMSBlbmFibGVkCj4g PiA+ID4gPiA+IFNvdXJjZSBQU1IgY3RsOiBlbmFibGVkIFsweDgxZjAwZTI2XQo+ID4gPiA+ID4g PiBTb3VyY2UgUFNSIHN0YXR1czogU1JERU5UIFsweDQwMDQwMDA2XQo+ID4gPiA+ID4gPiBCdXN5 IGZyb250YnVmZmVyIGJpdHM6IDB4MDAwMDAwMDAKPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+IFRo ZSAnTWFpbiBsaW5rIGluIHN0YW5kYnkgbW9kZScgd2FzIHJlbW92ZWQgYXMgaXQgaXMgbm90Cj4g PiA+ID4gPiA+IHVzZWZ1bAo+ID4gPiA+ID4gPiBidXQKPiA+ID4gPiA+ID4gaWYgbmVlZGVkIGJ5 IHNvbWVvbmUgdGhlIGluZm9ybWF0aW9uIGlzIHN0aWxsIGluIHRoZQo+ID4gPiA+ID4gPiByZWdp c3Rlcgo+ID4gPiA+ID4gPiB2YWx1ZQo+ID4gPiA+ID4gPiBvZiAnU291cmNlIFBTUiBjdGwnIGlu c2lkZSBvZiB0aGUgYnJhY2tldHMsIFBTUiBtb2RlIGFuZAo+ID4gPiA+ID4gPiBFbmFibGVkCj4g PiA+ID4gPiA+IHdhcwo+ID4gPiA+ID4gPiBzcXVhc2hlZCBpbnRvIFN0YXR1cywgc29tZSByZW5h bWVzIGFuZCByZW9yZGVycyBhbmQgd2UgaGF2ZQo+ID4gPiA+ID4gPiB0aGlzCj4gPiA+ID4gPiA+ IGNsZWFuZXIgdmVyc2lvbi4gVGhpcyB3aWxsIGFsc28gbWFrZSBlYXN5IHRvIHBhcnNlIGRlYnVn ZnMKPiA+ID4gPiA+ID4gZm9yCj4gPiA+ID4gPiA+IElHVAo+ID4gPiA+ID4gPiB0ZXN0cy4KPiA+ ID4gPiA+ID4gCj4gPiA+ID4gPiA+IENjOiBSb2RyaWdvIFZpdmkgPHJvZHJpZ28udml2aUBpbnRl bC5jb20+Cj4gPiA+ID4gPiA+IENjOiBEaGluYWthcmFuIFBhbmRpeWFuIDxkaGluYWthcmFuLnBh bmRpeWFuQGludGVsLmNvbT4KPiA+ID4gPiA+ID4gU3VnZ2VzdGVkLWJ5OiBEaGluYWthcmFuIFBh bmRpeWFuIDwKPiA+ID4gPiA+ID4gZGhpbmFrYXJhbi5wYW5kaXlhbkBpbnRlbC5jb20+Cj4gPiA+ ID4gPiA+IFNpZ25lZC1vZmYtYnk6IEpvc8OpIFJvYmVydG8gZGUgU291emEgPGpvc2Uuc291emFA aW50ZWwuY29tPgo+ID4gPiA+ID4gPiAtLS0KPiA+ID4gPiA+ID4gIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZGVidWdmcy5jIHwgOTYgKysrKysrKysrKysrKysrLS0KPiA+ID4gPiA+ID4gLS0t LQo+ID4gPiA+ID4gPiAtLS0tCj4gPiA+ID4gPiA+IC0tLS0KPiA+ID4gPiA+ID4gIDEgZmlsZSBj aGFuZ2VkLCA0OSBpbnNlcnRpb25zKCspLCA0NyBkZWxldGlvbnMoLSkKPiA+ID4gPiA+ID4gCj4g PiA+ID4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMu Ywo+ID4gPiA+ID4gPiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCj4gPiA+ ID4gPiA+IGluZGV4IDM4ZGNlZTFjYTA2Mi4uODYzMDNiYTAyNjY2IDEwMDY0NAo+ID4gPiA+ID4g PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwo+ID4gPiA+ID4gPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwo+ID4gPiA+ID4gPiBAQCAt MjY2NSw3ICsyNjY1LDggQEAKPiA+ID4gPiA+ID4gREVGSU5FX1NIT1dfQVRUUklCVVRFKGk5MTVf cHNyX3Npbmtfc3RhdHVzKTsKPiA+ID4gPiA+ID4gIHN0YXRpYyB2b2lkCj4gPiA+ID4gPiA+ICBw c3Jfc291cmNlX3N0YXR1cyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gPiA+ ID4gPiA+IHN0cnVjdAo+ID4gPiA+ID4gPiBzZXFfZmlsZQo+ID4gPiA+ID4gPiAqbSkKPiA+ID4g PiA+ID4gIHsKPiA+ID4gPiA+ID4gLQl1MzIgdmFsLCBwc3Jfc3RhdHVzOwo+ID4gPiA+ID4gPiAr CXUzMiB2YWwsIHN0YXR1c192YWw7Cj4gPiA+ID4gPiA+ICsJY29uc3QgY2hhciAqc3RhdHVzID0g InVua25vd24iOwo+ID4gPiA+ID4gPiAgCj4gPiA+ID4gPiA+ICAJaWYgKGRldl9wcml2LT5wc3Iu cHNyMl9lbmFibGVkKSB7Cj4gPiA+ID4gPiA+ICAJCXN0YXRpYyBjb25zdCBjaGFyICogY29uc3Qg bGl2ZV9zdGF0dXNbXSA9IHsKPiA+ID4gPiA+ID4gQEAgLTI2ODEsMTQgKzI2ODIsMTEgQEAgcHNy X3NvdXJjZV9zdGF0dXMoc3RydWN0Cj4gPiA+ID4gPiA+IGRybV9pOTE1X3ByaXZhdGUKPiA+ID4g PiA+ID4gKmRldl9wcml2LCBzdHJ1Y3Qgc2VxX2ZpbGUgKm0pCj4gPiA+ID4gPiA+ICAJCQkiQlVG X09OIiwKPiA+ID4gPiA+ID4gIAkJCSJUR19PTiIKPiA+ID4gPiA+ID4gIAkJfTsKPiA+ID4gPiA+ ID4gLQkJcHNyX3N0YXR1cyA9IEk5MTVfUkVBRChFRFBfUFNSMl9TVEFUVVMpOwo+ID4gPiA+ID4g PiAtCQl2YWwgPSAocHNyX3N0YXR1cyAmIEVEUF9QU1IyX1NUQVRVU19TVEFURV9NQVNLKQo+ID4g PiA+ID4gPiAtCQkJRURQX1BTUjJfU1RBVFVTX1NUQVRFX1NISUZUOwo+ID4gPiA+ID4gPiAtCQlp ZiAodmFsIDwgQVJSQVlfU0laRShsaXZlX3N0YXR1cykpIHsKPiA+ID4gPiA+ID4gLQkJCXNlcV9w cmludGYobSwgIlNvdXJjZSBQU1Igc3RhdHVzOiAweCV4Cj4gPiA+ID4gPiA+IFslc11cbiIsCj4g PiA+ID4gPiA+IC0JCQkJICAgcHNyX3N0YXR1cywKPiA+ID4gPiA+ID4gbGl2ZV9zdGF0dXNbdmFs XSk7Cj4gPiA+ID4gPiA+IC0JCQlyZXR1cm47Cj4gPiA+ID4gPiA+IC0JCX0KPiA+ID4gPiA+ID4g KwkJdmFsID0gSTkxNV9SRUFEKEVEUF9QU1IyX1NUQVRVUyk7Cj4gPiA+ID4gPiA+ICsJCXN0YXR1 c192YWwgPSAodmFsICYgRURQX1BTUjJfU1RBVFVTX1NUQVRFX01BU0spCj4gPiA+ID4gPiA+ICsJ CQkgICAgICBFRFBfUFNSMl9TVEFUVVNfU1RBVEVfU0hJRlQ7Cj4gPiA+ID4gPiA+ICsJCWlmIChz dGF0dXNfdmFsIDwgQVJSQVlfU0laRShsaXZlX3N0YXR1cykpCj4gPiA+ID4gPiA+ICsJCQlzdGF0 dXMgPSBsaXZlX3N0YXR1c1tzdGF0dXNfdmFsXTsKPiA+ID4gPiA+ID4gIAl9IGVsc2Ugewo+ID4g PiA+ID4gPiAgCQlzdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGxpdmVfc3RhdHVzW10gPSB7Cj4g PiA+ID4gPiA+ICAJCQkiSURMRSIsCj4gPiA+ID4gPiA+IEBAIC0yNzAwLDc0ICsyNjk4LDc4IEBA IHBzcl9zb3VyY2Vfc3RhdHVzKHN0cnVjdAo+ID4gPiA+ID4gPiBkcm1faTkxNV9wcml2YXRlCj4g PiA+ID4gPiA+ICpkZXZfcHJpdiwgc3RydWN0IHNlcV9maWxlICptKQo+ID4gPiA+ID4gPiAgCQkJ IlNSRE9GRkFDSyIsCj4gPiA+ID4gPiA+ICAJCQkiU1JERU5UX09OIiwKPiA+ID4gPiA+ID4gIAkJ fTsKPiA+ID4gPiA+ID4gLQkJcHNyX3N0YXR1cyA9IEk5MTVfUkVBRChFRFBfUFNSX1NUQVRVUyk7 Cj4gPiA+ID4gPiA+IC0JCXZhbCA9IChwc3Jfc3RhdHVzICYgRURQX1BTUl9TVEFUVVNfU1RBVEVf TUFTSykKPiA+ID4gPiA+ID4gLQkJCUVEUF9QU1JfU1RBVFVTX1NUQVRFX1NISUZUOwo+ID4gPiA+ ID4gPiAtCQlpZiAodmFsIDwgQVJSQVlfU0laRShsaXZlX3N0YXR1cykpIHsKPiA+ID4gPiA+ID4g LQkJCXNlcV9wcmludGYobSwgIlNvdXJjZSBQU1Igc3RhdHVzOiAweCV4Cj4gPiA+ID4gPiA+IFsl c11cbiIsCj4gPiA+ID4gPiA+IC0JCQkJICAgcHNyX3N0YXR1cywKPiA+ID4gPiA+ID4gbGl2ZV9z dGF0dXNbdmFsXSk7Cj4gPiA+ID4gPiA+IC0JCQlyZXR1cm47Cj4gPiA+ID4gPiA+IC0JCX0KPiA+ ID4gPiA+ID4gKwkJdmFsID0gSTkxNV9SRUFEKEVEUF9QU1JfU1RBVFVTKTsKPiA+ID4gPiA+ID4g KwkJc3RhdHVzX3ZhbCA9ICh2YWwgJiBFRFBfUFNSX1NUQVRVU19TVEFURV9NQVNLKQo+ID4gPiA+ ID4gPiArCQkJICAgICAgRURQX1BTUl9TVEFUVVNfU1RBVEVfU0hJRlQ7Cj4gPiA+ID4gPiA+ICsJ CWlmIChzdGF0dXNfdmFsIDwgQVJSQVlfU0laRShsaXZlX3N0YXR1cykpCj4gPiA+ID4gPiA+ICsJ CQlzdGF0dXMgPSBsaXZlX3N0YXR1c1tzdGF0dXNfdmFsXTsKPiA+ID4gPiA+ID4gIAl9Cj4gPiA+ ID4gPiA+ICAKPiA+ID4gPiA+ID4gLQlzZXFfcHJpbnRmKG0sICJTb3VyY2UgUFNSIHN0YXR1czog MHgleCBbJXNdXG4iLAo+ID4gPiA+ID4gPiBwc3Jfc3RhdHVzLAo+ID4gPiA+ID4gPiAidW5rbm93 biIpOwo+ID4gPiA+ID4gPiArCXNlcV9wcmludGYobSwgIlNvdXJjZSBQU1Igc3RhdHVzOiAlcyBb MHglMDh4XVxuIiwKPiA+ID4gPiA+ID4gc3RhdHVzLCB2YWwpOwo+ID4gPiA+ID4gPiAgfQo+ID4g PiA+ID4gPiAgCj4gPiA+ID4gPiA+ICBzdGF0aWMgaW50IGk5MTVfZWRwX3Bzcl9zdGF0dXMoc3Ry dWN0IHNlcV9maWxlICptLCB2b2lkCj4gPiA+ID4gPiA+ICpkYXRhKQo+ID4gPiA+ID4gPiAgewo+ ID4gPiA+ID4gPiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IG5vZGVfdG9f aTkxNShtLQo+ID4gPiA+ID4gPiA+IHByaXZhdGUpOwo+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4g LQl1MzIgcHNycGVyZiA9IDA7Cj4gPiA+ID4gPiA+IC0JYm9vbCBlbmFibGVkID0gZmFsc2U7Cj4g PiA+ID4gPiA+IC0JYm9vbCBzaW5rX3N1cHBvcnQ7Cj4gPiA+ID4gPiA+ICsJc3RydWN0IGk5MTVf cHNyICpwc3IgPSAmZGV2X3ByaXYtPnBzcjsKPiA+ID4gPiA+ID4gKwljb25zdCBjaGFyICpzdGF0 dXM7Cj4gPiA+ID4gPiA+ICsJYm9vbCBlbmFibGVkOwo+ID4gPiA+ID4gPiArCXUzMiB2YWw7Cj4g PiA+ID4gPiA+ICAKPiA+ID4gPiA+ID4gIAlpZiAoIUhBU19QU1IoZGV2X3ByaXYpKQo+ID4gPiA+ ID4gPiAgCQlyZXR1cm4gLUVOT0RFVjsKPiA+ID4gPiA+ID4gIAo+ID4gPiA+ID4gPiAtCXNpbmtf c3VwcG9ydCA9IGRldl9wcml2LT5wc3Iuc2lua19zdXBwb3J0Owo+ID4gPiA+ID4gPiAtCXNlcV9w cmludGYobSwgIlNpbmtfU3VwcG9ydDogJXNcbiIsCj4gPiA+ID4gPiA+IHllc25vKHNpbmtfc3Vw cG9ydCkpOwo+ID4gPiA+ID4gPiAtCWlmICghc2lua19zdXBwb3J0KQo+ID4gPiA+ID4gPiArCXNl cV9wcmludGYobSwgIlNpbmsgc3VwcG9ydDogJXMiLCB5ZXNubyhwc3ItCj4gPiA+ID4gPiA+ID4g c2lua19zdXBwb3J0KSk7Cj4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiArCWlmICghcHNyLT5zaW5r X3N1cHBvcnQpIHsKPiA+ID4gPiA+ID4gKwkJc2VxX3B1dHMobSwgIlxuIik7Cj4gPiA+ID4gPiA+ ICAJCXJldHVybiAwOwo+ID4gPiA+ID4gPiArCX0KPiA+ID4gPiA+ID4gIAo+ID4gPiA+ID4gPiAg CWludGVsX3J1bnRpbWVfcG1fZ2V0KGRldl9wcml2KTsKPiA+ID4gPiA+ID4gKwltdXRleF9sb2Nr KCZwc3ItPmxvY2spOwo+ID4gPiA+ID4gPiAgCj4gPiA+ID4gPiA+IC0JbXV0ZXhfbG9jaygmZGV2 X3ByaXYtPnBzci5sb2NrKTsKPiA+ID4gPiA+ID4gLQlzZXFfcHJpbnRmKG0sICJQU1IgbW9kZTog JXNcbiIsCj4gPiA+ID4gPiA+IC0JCSAgIGRldl9wcml2LT5wc3IucHNyMl9lbmFibGVkID8gIlBT UjIiIDoKPiA+ID4gPiA+ID4gIlBTUjEiKTsKPiA+ID4gPiA+ID4gLQlzZXFfcHJpbnRmKG0sICJF bmFibGVkOiAlc1xuIiwgeWVzbm8oZGV2X3ByaXYtCj4gPiA+ID4gPiA+ID4gcHNyLmVuYWJsZWQp KTsKPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+IC0Jc2VxX3ByaW50ZihtLCAiQnVzeSBmcm9udGJ1 ZmZlciBiaXRzOiAweCUwM3hcbiIsCj4gPiA+ID4gPiA+IC0JCSAgIGRldl9wcml2LT5wc3IuYnVz eV9mcm9udGJ1ZmZlcl9iaXRzKTsKPiA+ID4gPiA+ID4gKwlzZXFfcHJpbnRmKG0sICIgWzB4JTA4 eF1cbiIsIHBzci0+ZHAtPnBzcl9kcGNkWzBdKTsKPiA+ID4gPiA+IAo+ID4gPiA+ID4gVGhpcyBj YW4gYmUgbW92ZWQgY2xvc2VyIHRvIHdoZXJlICJTaW5rIHN1cHBvcnQiIGlzIHByaW50ZWQuCj4g PiA+ID4gPiBBbHNvLCAgdGhlCj4gPiA+ID4gPiBleHRyYSB6ZXJvZXMgdGhhdCBnZXQgcHJpbnRl ZCBkdWUgdG8gIiUwOHgiIGxvb2sgb2RkLCBwbGVhc2UKPiA+ID4gPiA+IGNvbnNpZGVyCj4gPiA+ ID4gPiBjaGFuZ2luZyBpdCB0byAiJTAyeCIuCj4gPiA+ID4gCj4gPiA+ID4gRG9uZQo+ID4gPiA+ IAo+ID4gPiA+ID4gPiAgCj4gPiA+ID4gPiA+IC0JaWYgKGRldl9wcml2LT5wc3IucHNyMl9lbmFi bGVkKQo+ID4gPiA+ID4gPiAtCQllbmFibGVkID0gSTkxNV9SRUFEKEVEUF9QU1IyX0NUTCkgJgo+ ID4gPiA+ID4gPiBFRFBfUFNSMl9FTkFCTEU7Cj4gPiA+ID4gPiA+ICsJaWYgKHBzci0+ZW5hYmxl ZCkKPiA+ID4gPiA+ID4gKwkJc3RhdHVzID0gcHNyLT5wc3IyX2VuYWJsZWQgPyAiUFNSMiBlbmFi bGVkIiA6Cj4gPiA+ID4gPiA+ICJQU1IxCj4gPiA+ID4gPiA+IGVuYWJsZWQiOwo+ID4gPiA+ID4g PiAgCWVsc2UKPiA+ID4gPiA+ID4gLQkJZW5hYmxlZCA9IEk5MTVfUkVBRChFRFBfUFNSX0NUTCkg Jgo+ID4gPiA+ID4gPiBFRFBfUFNSX0VOQUJMRTsKPiA+ID4gPiA+ID4gKwkJc3RhdHVzID0gImRp c2FibGVkIjsKPiA+ID4gPiA+ID4gKwlzZXFfcHJpbnRmKG0sICJTdGF0dXM6ICVzXG4iLCBzdGF0 dXMpOwo+ID4gPiA+ID4gCj4gPiA+ID4gPiBDYW4gd2UganVzdCB1c2UgdGhlIGN0bCBmaWVsZCBh bmQgZ2V0IHJpZCBvZiB0aGlzPyBUaGlzCj4gPiA+ID4gPiBzdGF0dXMKPiA+ID4gPiA+IGFuZAo+ ID4gPiA+ID4gYW5kCj4gPiA+ID4gPiB0aGUgb25lIGJlbG93IGNhbiBiZSBjb25mdXNpbmcgdG8g dGhvc2Ugbm90IGZhbWlsaWFyIHdpdGggdGhlCj4gPiA+ID4gPiBjb2RlCj4gPiA+ID4gPiBiYXNl Lgo+ID4gPiA+ID4gCj4gPiA+ID4gPiBXZSBzaG91bGQgYmUgYWJsZSB0byBwYXJzZSBhbGwgdGhl IGluZm9ybWF0aW9uIHdlIG5lZWQgZnJvbQo+ID4gPiA+ID4gdHdvCj4gPiA+ID4gPiBsaW5lcwo+ ID4gPiA+ID4gU291cmNlIFBTUiBjdGw6CQlbUFNSMSxQU1IyXSBlbmFibGVkIDxyZWcgdmFsdWU+ Cj4gPiA+ID4gPiBTb3VyY2UgUFNSIHN0YXR1czoJPHN0YXRlPiA8cmVnIHZhbHVlPgo+ID4gPiA+ IAo+ID4gPiA+IEknbSBmaW5lIGluIGhhdmluZyBqdXN0IG9uZSBidXQgd2hlbiB0aGVyZSBpcyBm cm9udGJ1ZmZlcgo+ID4gPiA+IG1vZGlmaWNhdGlvbnMKPiA+ID4gPiBTdGF0dXMgaXMga2VwdCBh cyBlbmFibGVkIGFuZCBTb3VyY2UgUFNSIGN0bCBhbmQgU291cmNlIFBTUgo+ID4gPiA+IHN0YXR1 cwo+ID4gPiA+IGFyZQo+ID4gPiA+IHNldCB0byBpZGxlIHN0YXRlcywgCj4gPiA+IAo+ID4gPiBU aGF0IGlzIGEgZ29vZCBwb2ludCAtICBwc3JfaW52YWxpZGF0ZSgpIHdvdWxkIGRpc2FibGUgdGhl Cj4gPiA+IGZlYXR1cmUKPiA+ID4gaW4gCj4gPiA+IGhhcmR3YXJlIGJ1dCB0aGUgZHJpdmVyIHN0 YXRlIGlzIGVuYWJsZWQuIEkgZ3Vlc3MsIHlvdSBjb3VsZAo+ID4gPiBjaGFuZ2UKPiA+ID4gIlN0 YXR1cyIgdG8gIlBTUiBtb2RlIi8iRmVhdHVyZSBzdGF0ZSIuIAo+ID4gPiAuLi4KPiA+ID4gUFNS IG1vZGU6CQl7UFNSMSBlbmFibGVkLCBQU1IyIGVuYWJsZWQsIGRpc2FibGVkfQo+ID4gPiBTb3Vy Y2UgUFNSIGN0bDoJCXtlbmFibGVkLCBkaXNhYmxlZH0gLi4uCj4gPiA+IFNvdXJjZSBQU1Igc3Rh dHVzOgkuLi4KPiA+ID4gLi4uCj4gPiA+IAo+ID4gPiBJcyB0aGlzIGJldHRlcj8KPiA+ID4gCj4g PiAKPiA+IFllYWggbG9va3MgZ29vZCB0byBtZS4KPiA+IAo+ID4gPiBBbHNvLCBpdCBtaWdodCBi ZSB3b3J0aCBwcmludGluZyB0aGUgIlBTUiBtb2RlOiIgbGluZSBldmVuIHdoZW4KPiA+ID4gdGhl cmUKPiA+ID4gaXMgbm8gc2lua19zdXBwb3J0LiBJdCdzIGFuIHVzZWZ1bCBwaWVjZSBvZiBkZWJ1 ZyBpbmZvcm1hdGlvbiBhbmQKPiA+ID4gZG9lc24ndCBhY2Nlc3MgdGhlIGhhcmR3YXJlLgo+IAo+ IEFib3V0IHRoaXMgb25lLCB0byByZWFkIHBzci0+ZW5hYmxlIGFuZCBwc3ItPnBzcjJfZW5hYmxl ZCB3ZSB0YWtlIFBTUgo+IG11dGV4IGFuZCBpdCBpcyBvbmx5IGluaXRpYWxpemVkIGlmIHNpbmsg c3VwcG9ydCBQU1IuCj4gSWYgdGhhdCBpbmZvcm1hdGlvbiBpcyB1c2VmdWwgd2hlbiBkb2luZyBJ R1QgY2hhbmdlcyBJIHdpbGwgc2VuZCBpdAo+IGluCj4gYSBzZXBhcmF0ZSBwYXRjaCwgc291bmRz IGdvb2Q/CgpZZWFoLCB0aGF0J3MgZmluZS4KCi1ESwoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==