From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [RFC] usb: typec: tcpm: remove operating_snk_mw for rdo From: Guenter Roeck Message-Id: Date: Fri, 20 Apr 2018 07:13:03 -0700 To: Jun Li , Hans de Goede , "heikki.krogerus@linux.intel.com" Cc: "gregkh@linuxfoundation.org" , "linux-usb@vger.kernel.org" , dl-linux-imx List-ID: T24gMDQvMjAvMjAxOCAwMzo1MSBBTSwgSnVuIExpIHdyb3RlOgo+IAo+PiAtLS0tLU9yaWdpbmFs IE1lc3NhZ2UtLS0tLQo+PiBGcm9tOiBIYW5zIGRlIEdvZWRlIFttYWlsdG86aGRlZ29lZGVAcmVk aGF0LmNvbV0KPj4gU2VudDogMjAxOOW5tDTmnIgyMOaXpSAxNzoyMQo+PiBUbzogSnVuIExpIDxq dW4ubGlAbnhwLmNvbT47IGxpbnV4QHJvZWNrLXVzLm5ldDsKPj4gaGVpa2tpLmtyb2dlcnVzQGxp bnV4LmludGVsLmNvbQo+PiBDYzogZ3JlZ2toQGxpbnV4Zm91bmRhdGlvbi5vcmc7IGxpbnV4LXVz YkB2Z2VyLmtlcm5lbC5vcmc7IGRsLWxpbnV4LWlteAo+PiA8bGludXgtaW14QG54cC5jb20+Cj4+ IFN1YmplY3Q6IFJlOiBbUEFUQ0ggUkZDXSB1c2I6IHR5cGVjOiB0Y3BtOiByZW1vdmUgb3BlcmF0 aW5nX3Nua19tdyBmb3IgcmRvCj4+Cj4+IEhpLAo+Pgo+PiBPbiAyMC0wNC0xOCAxMToxOCwgSnVu IExpIHdyb3RlOgo+Pj4KPj4+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQo+Pj4+IEZyb206 IEhhbnMgZGUgR29lZGUgW21haWx0bzpoZGVnb2VkZUByZWRoYXQuY29tXQo+Pj4+IFNlbnQ6IDIw MTjlubQ05pyIMTjml6UgMTk6NDAKPj4+PiBUbzogSnVuIExpIDxqdW4ubGlAbnhwLmNvbT47IGxp bnV4QHJvZWNrLXVzLm5ldDsKPj4+PiBoZWlra2kua3JvZ2VydXNAbGludXguaW50ZWwuY29tCj4+ Pj4gQ2M6IGdyZWdraEBsaW51eGZvdW5kYXRpb24ub3JnOyBsaW51eC11c2JAdmdlci5rZXJuZWwu b3JnOwo+Pj4+IGRsLWxpbnV4LWlteCA8bGludXgtaW14QG54cC5jb20+Cj4+Pj4gU3ViamVjdDog UmU6IFtQQVRDSCBSRkNdIHVzYjogdHlwZWM6IHRjcG06IHJlbW92ZSBvcGVyYXRpbmdfc25rX213 Cj4+Pj4gZm9yIHJkbwo+Pj4+Cj4+Pj4gSGksCj4+Pj4KPj4+PiBPbiAxNy0wNC0xOCAwODowMSwg TGkgSnVuIHdyb3RlOgo+Pj4+PiBUaGlzIHBhdGNoIGlzIGEgZnVydGhlciB1cGRhdGUgZm9yIHJk byBiYXNlZCBvbiBbMV0sIHdoaWNoIHJlbW92ZWQKPj4+Pj4gbWF4X3Nua19tYS9tdi9tdyBidXQg a2VwdCBvcGVyYXRpbmdfc25rX213Lgo+Pj4+PiBvcGVyYXRpbmdfc25rX213IGlzIG9ubHkgdXNl ZCB0byBqdWRnZSBjYXBhYmlsaXR5IG1pc21hdGNoLCBwZXIgUEQKPj4+Pj4gc3BlYywgd2UgY2Fu IGFjaGlldmUgdGhpcyB2aWEgY29tcGFyZSB0aGUgc2VsZWN0ZWQgc291cmNlIFBETyBhbmQKPj4+ Pj4gbWF0Y2hpbmcgc2luayBQRE8sIGFsc28gYWZ0ZXIgcGF0Y2ggWzFdLCB3ZSBkb24ndCBsaW1p dCB0aGUgUERPCj4+Pj4+IG1hdGNoaW5nIGJldHdlZW4gdGhlIHNhbWUgdHlwZSwgc28gdGhlIHJk byBvcGVyYXRpbmcgYW5kIG1heAo+Pj4+PiBjdXJyZW50L3Bvd2VyIGNhbGN1bGF0aW9uIHNob3Vs ZCBiZSB1cGRhdGVkIGFjY29yZGluZ2x5Lgo+Pj4+Cj4+Pj4gSSBkbyBub3QgYmVsaWV2ZSB0aGF0 IHRoaXMgaXMgY29ycmVjdCwgbGV0cyB0YWtlIGEgZGV2aWNlIHdpdGggYQo+Pj4+IGZ1c2IzMDIg dGNwYyB3aXRoIHRoZSBmb2xsb3dpbmcgUERPLXM6Cj4+Pj4KPj4+PiAJUERPX0ZJWEVEKDUwMDAs IDQwMCwgUERPX0ZJWEVEX0ZMQUdTKQo+Pj4+IAlQRE9fVkFSKDUwMDAsIDEyMDAwLCAzMDAwKTsK Pj4+Pgo+Pj4+IEFuZCBhbiBvcGVyYXRpbmdfc25rX213IG9mIDI1MDBtVyB0aGVuIGFjY29yZGlu ZyB0byB5b3VyIG5ldyBjb2RlIGEKPj4+PiBjaGFyZ2VyIHdoaWNoIHN1cHBsaWVzIDEyViAyQSB3 aWxsIG5vdyBnZXQgdGhlIG1pc21hdGNoIGJpdCBzZXQgZXZlbgo+Pj4+IHRob3VnaCBpdCBpcyBk ZWxpdmVyaW5nIDI0Vy4KPj4+Pgo+Pj4KPj4+IFBlciBQRCBzcGVjLCBteSB1bmRlcnN0YW5kaW5n IGlzIHRvIGp1ZGdlIGNhcGFiaWxpdHkgbWlzbWF0Y2gsIHdlCj4+PiBzaG91bGQgdXNlICptYXgq IGN1cnJlbnQvcG93ZXIsIG5vdCB0aGlzIG9wZXJhdGluZyBwb3dlci4KPj4KPj4gT2ssIEknbSBu b3QgZmFtaWxpYXIgd2l0aCB0aGUgUEQgc3BlYywgcGVyaGFwcyBzb21lb25lIHdobyBrbm93cyBp dCB3ZWxsIGNhbgo+PiBjb21tZW50IGhlcmUgPwo+IAo+IEhpIEd1ZW50ZXIsCj4gQ291bGQgeW91 IHBsZWFzZSBjb21tZW50IGhlcmU/Cj4gCgpJIGFtIG5vdCwgYW5kIG5ldmVyIHdhcywgdGhlIGtp bmQgb2YgcGVyc29uIHdobyB3b3VsZCBibGluZGx5IGZvbGxvdyBhIHNwZWNpZmljYXRpb24uCkkg dXNlIHNwZWNpZmljYXRpb25zIGFzIGd1aWRlbGluZS4gRm9yIFBELCB3aGVuIEkgaW1wbGVtZW50 ZWQgdGhlIGNvZGUsIEkgbWFkZSBzdXJlCnRoYXQgdGhlIGltcGxlbWVudGF0aW9uIHdvcmtlZCB3 aXRoIGFzIG1hbnkgcG93ZXIgYWRhcHRlcnMgYW5kIGRvbmdsZXMgYXMgSSBjb3VsZCBnZXQKbXkg aGFuZCBvbi4KCkF0IHRoaXMgcG9pbnQgaW4gdGltZSwgSSB3b3VsZCBvbmx5IGNoYW5nZSB0aGUg Y29kZSBteXNlbGYgaWYgaXQgaXMga25vd24gdG8gYmUgYnJva2VuLgpPdGhlcndpc2UgSSB3b3Vs ZCBsZWF2ZSBpdCBhbG9uZS4gSSB3b3VsZCBfbmV2ZXJfIG1ha2UgYSBjaGFuZ2UgYmVjYXVzZSBt eSBpbnRlcnByZXRhdGlvbgpvZiB0aGUgc3BlY2lmaWNhdGlvbiBpcyBkaWZmZXJlbnQsIHVubGVz cyBJIGNhbiBwcm92ZSB0aGF0IHRoZSBjdXJyZW50IGNvZGUgaXMgd3JvbmcgYW5kCmNhdXNlcyBw cm9ibGVtcy4KClVuZm9ydHVuYXRlbHksIEkgZG9uJ3QgY3VycmVudGx5IGhhdmUgYSBzZXR1cCB0 byB0ZXN0IHRoZSBjdXJyZW50IHZlcnNpb24gb2YgdGhlIGNvZGUsCm5vciB0aGUgdGltZSB0byBk byBhbGwgdGhlIHRlc3RpbmcuIEkgYW0gbW9yZSBhbmQgbW9yZSBjb25jZXJuZWQsIHRob3VnaCwg dGhhdCBjaGFuZ2VzCmFyZSBtYWRlIG91dCBvZiBwcmluY2lwbGUsIG5vdCBiZWNhdXNlIHNvbWV0 aGluZyBoYXMgYmVlbiBzaG93biB0byBiZSBicm9rZW4uIEJ1dCB0aGF0IGlzCmp1c3QgYSBwZXJz b25hbCBjb25jZXJuLCBhbmQgd2l0aG91dCByZS10ZXN0aW5nIGV2ZXJ5dGhpbmcgSSBkb24ndCBy ZWFsbHkgaGF2ZSBhIHN0cm9uZwpjYXNlIGZvciBvciBhZ2FpbnN0IHRob3NlIGNoYW5nZXMuCgpH dWVudGVyCgo+IFRoYW5rcwo+IEp1bgo+IAo+Pgo+Pj4gSW4geW91ciBjYXNlKFZBUiBQRE8pLCB0 aGUgbWF4IGN1cnJlbnQgaXMgMzAwMG1BLCBjYW4gSSBzYXkgdGhlIG1heAo+Pj4gcG93ZXIgaXMg MzAwMG1BICogNVYgPSAxNVc/IHNvIHRoZSBtYXggY3VycmVudCByZXF1aXJlZCBhdCAxMlYgaXMg MTVXCj4+PiAvIDEyViA9IDEuMjVBLCBzbyB5ZXMsIHRoZSAxMlZAMkEgaXMgZW5vdWdoLCBkbyB5 b3UgdGhpbmsgdGhpcyBraW5kIG9mCj4+PiBjYWxjdWxhdGlvbiBpcyByZWFzb25hYmxlPwo+Pgo+ PiBUaGF0IGRvZXMgbm90IHNvdW5kIHVucmVhc29uYWJsZSwgdGhlIHJlYWwgcXVlc3Rpb24gaXMg d2hlbiBleGFjdGx5IHNob3VsZCB3ZQo+PiBzZXQgdGhlIGNhcGFiaWxpdHkgbWlzbWF0Y2ggYml0 LCBvbmNlIHdlIGhhdmUgdGhhdCBtb3JlIGNsZWFyIGhvdyB0bwo+PiBpbXBsZW1lbnQgdGhpcyBz aG91bGQgYmVjb21lIGNsZWFyIHRvby4KPiAKPiBGdWxseSBhZ3JlZSwgYmVsb3cgaXMgdGhlIGNh cGFiaWxpdHkgbWlzbWF0Y2ggYml0IHJlbGF0ZWQgZGVzY3JpcHRpb24gZnJvbSBQRCBzcGVjOgo+ IAo+ICJJZiB0aGUgQ2FwYWJpbGl0eSBNaXNtYXRjaCBiaXQgaXMgc2V0IHRvIG9uZQo+IFRoZSBN YXhpbXVtIE9wZXJhdGluZyBDdXJyZW50L1Bvd2VyIGZpZWxkIG1heSBjb250YWluIGEgdmFsdWUg bGFyZ2VyIHRoYW4KPiB0aGUgbWF4aW11bSBjdXJyZW50L3Bvd2VyIG9mZmVyZWQgaW4gdGhlIFNv dXJjZV9DYXBhYmlsaXRpZXMgTWVzc2FnZeKAmXMgUERPCj4gYXMgcmVmZXJlbmNlZCBieSB0aGUg T2JqZWN0IHBvc2l0aW9uIGZpZWxkLiBUaGlzIGVuYWJsZXMgdGhlIFNpbmsgdG8gaW5kaWNhdGUg dGhhdAo+IGl0IHJlcXVpcmVzIG1vcmUgY3VycmVudC9wb3dlciB0aGFuIGlzIGJlaW5nIG9mZmVy ZWQuIElmIHRoZSBTaW5rIHJlcXVpcmVzIGEKPiBkaWZmZXJlbnQgdm9sdGFnZSB0aGlzIHdpbGwg YmUgaW5kaWNhdGVkIGJ5IGl0cyBTaW5rX0NhcGFiaWxpdGllcyBNZXNzYWdlLiIKPiAKPiAiNi40 LjIuOCBNYXhpbXVtIE9wZXJhdGluZyBDdXJyZW50Cj4gVGhlIE1heGltdW0gT3BlcmF0aW5nIEN1 cnJlbnQgZmllbGQgaW4gdGhlIFJlcXVlc3QgTWVzc2FnZSBzaGFsbCBiZSBzZXQgdG8KPiB0aGUg aGlnaGVzdCBjdXJyZW50IHRoZSBTaW5rIHdpbGwgZXZlciByZXF1aXJlLiBUaGUgZGlmZmVyZW5j ZSBiZXR3ZWVuCj4gdGhlIE9wZXJhdGluZyBDdXJyZW50IGFuZCBNYXhpbXVtIE9wZXJhdGluZyBD dXJyZW50IGZpZWxkcwo+ICh3aGVuIHRoZSBHaXZlQmFjayBGbGFnIGlzIGNsZWFyZWQpIGlzIHVz ZWQgYnkgdGhlIERldmljZSBQb2xpY3kgTWFuYWdlcgo+IGluIHRoZSBTb3VyY2UgdG8gY2FsY3Vs YXRlIHRoZSBzaXplIG9mIHRoZSBQb3dlciBSZXNlcnZlIHRvIGJlIG1haW50YWluZWQKPiAoc2Vl IFNlY3Rpb24gOC4yLjUuMSkuIFRoZSBPcGVyYXRpbmcgQ3VycmVudCB2YWx1ZSBzaGFsbCBiZSBs ZXNzIHRoYW4gb3IKPiBlcXVhbCB0byB0aGUgTWF4aW11bSBPcGVyYXRpbmcgQ3VycmVudCB2YWx1 ZS4KPiBXaGVuIHRoZSBDYXBhYmlsaXRpZXMgTWlzbWF0Y2ggYml0IGlzIHNldCB0byB6ZXJvIHRo ZSByZXF1ZXN0ZWQgTWF4aW11bSBPcGVyYXRpbmcKPiBDdXJyZW50IHNoYWxsIGJlIGxlc3MgdGhh biBvciBlcXVhbCB0byB0aGUgY3VycmVudCBpbiB0aGUgb2ZmZXJlZCBTb3VyY2UgQ2FwYWJpbGl0 aWVzCj4gc2luY2UgdGhlIFNvdXJjZSB3aWxsIG5lZWQgdG8gcmVzZXJ2ZSB0aGlzIHBvd2VyIGZv ciBmdXR1cmUgdXNlLiAuLi4KPiAgIAo+IFdoZW4gdGhlIENhcGFiaWxpdGllcyBNaXNtYXRjaCBi aXQgaXMgc2V0IHRvIG9uZSB0aGUgcmVxdWVzdGVkIE1heGltdW0KPiBPcGVyYXRpbmcgQ3VycmVu dCBtYXkgYmUgZ3JlYXRlciB0aGFuIHRoZSBjdXJyZW50IGluIHRoZSBvZmZlcmVkIFNvdXJjZQo+ IENhcGFiaWxpdGllcyBzaW5jZSB0aGUgU291cmNlIHdpbGwgbmVlZCB0aGlzIGluZm9ybWF0aW9u IHRvIGFzY2VydGFpbgo+IHRoZSBTaW5r4oCZcyBhY3R1YWwgbmVlZHMiLgo+IAo+Pgo+PiBSZWdh cmRzLAo+Pgo+PiBIYW5zCj4+Cj4+Cj4+Cj4+Pgo+Pj4+IEkgcmVhbGx5IGRvbid0IHNlZSBhbnkg d2F5IHRvIGZpeCB0aGlzIGFuZCBJIGJlbGlldmUgd2Ugc2hvdWxkIGp1c3QKPj4+PiBrZWVwIHRo ZSBvcGVyYXRpbmdfc25rX213IGZpZWxkLgo+Pj4KPj4+IEkgaGFkIHRoZSBzYW1lIHdvcnJ5IG9m IGJyZWFraW5nIGV4aXN0aW5nIHVzZXJzLCBidXQgZm91bmQgdGhlcmUgaXMKPj4+IHNvbWV0aGlu ZyBub3QgbWF0Y2hpbmcgUEQgc3BlYywgc28gd2FudCB0byBnZXQgY29tbWVudHMsIGlmIHdlIHJl YWxseQo+Pj4gbmVlZCBhbm90aGVyIGlucHV0IChiZXNpZGUgc2luayBQRE8pIGluIHByYWN0aWNl LCB3ZSBjYW4ga2VlcCBpdC4KPj4+Cj4+PiBUaGFua3MKPj4+IEp1bgo+Pj4+Cj4+Pj4gUmVnYXJk cwo+Pj4+Cj4+Pj4gSGFucwo+Pj4+Cj4+Pj4KPj4+Pgo+Pj4+PiBbMV1odHRwczovL2VtZWEwMS5z YWZlbGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0dHBzJTNBJTJGJQo+Pj4+PiAy Rgo+Pj4+Pgo+Pj4+Cj4+IHBhdGNod29yay5rZXJuZWwub3JnJTJGcGF0Y2glMkYxMDM0MjI5OSUy RiZkYXRhPTAyJTdDMDElN0NqdW4ubGklNAo+Pj4+IDBueHAKPj4+Pj4gLmNvbSU3Qzc5NmM5NDM4 MDRjYzRhMzMzYTdjMDhkNWE1MjEyZTQxJTdDNjg2ZWExZDNiYzJiNGM2ZmE5Cj4+IDJjZAo+Pj4+ IDk5YzVjMzAKPj4+Pj4KPj4+Pgo+PiAxNjM1JTdDMCU3QzAlN0M2MzY1OTY0ODQyODQ4MDc0ODcm c2RhdGE9Qkg3NHp6VnBwQWk3RmE4anRSdDJjd2MKPj4+PiBkJTJGJTJGCj4+Pj4+IG82aWROQzVo azV6eW9XSUE0JTNEJnJlc2VydmVkPTAKPj4+Pj4KPj4+Pj4gU2lnbmVkLW9mZi1ieTogTGkgSnVu IDxqdW4ubGlAbnhwLmNvbT4KPj4+Pj4gLS0tCj4+Pj4+ICAgICBkcml2ZXJzL3VzYi90eXBlYy90 Y3BtLmMgfCA1Mgo+Pj4+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0t LS0tLS0tLQo+Pj4+PiAgICAgMSBmaWxlIGNoYW5nZWQsIDMzIGluc2VydGlvbnMoKyksIDE5IGRl bGV0aW9ucygtKQo+Pj4+Pgo+Pj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy91c2IvdHlwZWMvdGNw bS5jIGIvZHJpdmVycy91c2IvdHlwZWMvdGNwbS5jCj4+Pj4+IGluZGV4Cj4+Pj4+IDI3MTkyMDgz Li4wYmUwNGIzIDEwMDY0NAo+Pj4+PiAtLS0gYS9kcml2ZXJzL3VzYi90eXBlYy90Y3BtLmMKPj4+ Pj4gKysrIGIvZHJpdmVycy91c2IvdHlwZWMvdGNwbS5jCj4+Pj4+IEBAIC0xODU0LDI4ICsxODU0 LDQyIEBAIHN0YXRpYyBpbnQgdGNwbV9wZF9idWlsZF9yZXF1ZXN0KHN0cnVjdAo+Pj4+IHRjcG1f cG9ydCAqcG9ydCwgdTMyICpyZG8pCj4+Pj4+ICAgICAJZWxzZQo+Pj4+PiAgICAgCQltdiA9IHBk b19taW5fdm9sdGFnZShwZG8pOwo+Pj4+Pgo+Pj4+PiAtCS8qIFNlbGVjdCBtYXhpbXVtIGF2YWls YWJsZSBjdXJyZW50IHdpdGhpbiB0aGUgc2luayBwZG8ncyBsaW1pdCAqLwo+Pj4+PiAtCWlmICh0 eXBlID09IFBET19UWVBFX0JBVFQpIHsKPj4+Pj4gLQkJbXcgPSBtaW5fcG93ZXIocGRvLCBtYXRj aGluZ19zbmtfcGRvKTsKPj4+Pj4gLQkJbWEgPSAxMDAwICogbXcgLyBtdjsKPj4+Pj4gLQl9IGVs c2Ugewo+Pj4+PiAtCQltYSA9IG1pbl9jdXJyZW50KHBkbywgbWF0Y2hpbmdfc25rX3Bkbyk7Cj4+ Pj4+IC0JCW13ID0gbWEgKiBtdiAvIDEwMDA7Cj4+Pj4+IC0JfQo+Pj4+PiAtCj4+Pj4+ICAgICAJ ZmxhZ3MgPSBSRE9fVVNCX0NPTU0gfCBSRE9fTk9fU1VTUEVORDsKPj4+Pj4KPj4+Pj4gLQkvKiBT ZXQgbWlzbWF0Y2ggYml0IGlmIG9mZmVyZWQgcG93ZXIgaXMgbGVzcyB0aGFuIG9wZXJhdGluZyBw b3dlciAqLwo+Pj4+PiAtCW1heF9tYSA9IG1hOwo+Pj4+PiAtCW1heF9tdyA9IG13Owo+Pj4+PiAt CWlmIChtdyA8IHBvcnQtPm9wZXJhdGluZ19zbmtfbXcpIHsKPj4+Pj4gLQkJZmxhZ3MgfD0gUkRP X0NBUF9NSVNNQVRDSDsKPj4+Pj4gLQkJaWYgKHR5cGUgPT0gUERPX1RZUEVfQkFUVCAmJgo+Pj4+ PiAtCQkgICAgKHBkb19tYXhfcG93ZXIobWF0Y2hpbmdfc25rX3BkbykgPgo+PiBwZG9fbWF4X3Bv d2VyKHBkbykpKQo+Pj4+PiAtCQkJbWF4X213ID0gcGRvX21heF9wb3dlcihtYXRjaGluZ19zbmtf cGRvKTsKPj4+Pj4gLQkJZWxzZSBpZiAocGRvX21heF9jdXJyZW50KG1hdGNoaW5nX3Nua19wZG8p ID4KPj4+Pj4gLQkJCSBwZG9fbWF4X2N1cnJlbnQocGRvKSkKPj4+Pj4gKwlzd2l0Y2ggKHR5cGUp IHsKPj4+Pj4gKwljYXNlIFBET19UWVBFX0ZJWEVEOgo+Pj4+PiArCWNhc2UgUERPX1RZUEVfVkFS Ogo+Pj4+PiArCQlpZiAocGRvX3R5cGUobWF0Y2hpbmdfc25rX3BkbykgPT0gUERPX1RZUEVfQkFU VCkKPj4+Pj4gKwkJCW1heF9tYSA9IHBkb19tYXhfcG93ZXIobWF0Y2hpbmdfc25rX3BkbykgKiAx MDAwIC8KPj4gbXY7Cj4+Pj4+ICsJCWVsc2UKPj4+Pj4gICAgIAkJCW1heF9tYSA9IHBkb19tYXhf Y3VycmVudChtYXRjaGluZ19zbmtfcGRvKTsKPj4+Pj4gKwo+Pj4+PiArCQlpZiAobWF4X21hID4g cGRvX21heF9jdXJyZW50KHBkbykpIHsKPj4+Pj4gKwkJCWZsYWdzIHw9IFJET19DQVBfTUlTTUFU Q0g7Cj4+Pj4+ICsJCQltYSA9IHBkb19tYXhfY3VycmVudChwZG8pOwo+Pj4+PiArCQl9IGVsc2Ug ewo+Pj4+PiArCQkJbWEgPSBtYXhfbWE7Cj4+Pj4+ICsJCX0KPj4+Pj4gKwkJYnJlYWs7Cj4+Pj4+ ICsJY2FzZSBQRE9fVFlQRV9CQVRUOgo+Pj4+PiArCQlpZiAocGRvX3R5cGUobWF0Y2hpbmdfc25r X3BkbykgPT0gUERPX1RZUEVfQkFUVCkKPj4+Pj4gKwkJCW1heF9tdyA9IHBkb19tYXhfcG93ZXIo bWF0Y2hpbmdfc25rX3Bkbyk7Cj4+Pj4+ICsJCWVsc2UKPj4+Pj4gKwkJCW1heF9tdyA9IHBkb19t YXhfY3VycmVudChtYXRjaGluZ19zbmtfcGRvKSAqCj4+Pj4+ICsJCQkJIHBkb19taW5fdm9sdGFn ZShtYXRjaGluZ19zbmtfcGRvKSAvCj4+Pj4+ICsJCQkJIDEwMDA7Cj4+Pj4+ICsKPj4+Pj4gKwkJ aWYgKG1heF9tdyA+IHBkb19tYXhfcG93ZXIocGRvKSkgewo+Pj4+PiArCQkJZmxhZ3MgfD0gUkRP X0NBUF9NSVNNQVRDSDsKPj4+Pj4gKwkJCW13ID0gcGRvX21heF9wb3dlcihwZG8pOwo+Pj4+PiAr CQl9IGVsc2Ugewo+Pj4+PiArCQkJbXcgPSBtYXhfbXc7Cj4+Pj4+ICsJCX0KPj4+Pj4gKwo+Pj4+ PiArCQltYSA9IG13ICogMTAwMCAvIG12Owo+Pj4+PiArCQlicmVhazsKPj4+Pj4gKwlkZWZhdWx0 Ogo+Pj4+PiArCQlicmVhazsKPj4+Pj4gICAgIAl9Cj4+Pj4+Cj4+Pj4+ICAgICAJdGNwbV9sb2co cG9ydCwgImNjPSVkIGNjMT0lZCBjYzI9JWQgdmJ1cz0lZCB2Y29ubj0lcwo+Pj4+IHBvbGFyaXR5 PSVkIiwKPj4+Pj4KLS0tClRvIHVuc3Vic2NyaWJlIGZyb20gdGhpcyBsaXN0OiBzZW5kIHRoZSBs aW5lICJ1bnN1YnNjcmliZSBsaW51eC11c2IiIGluCnRoZSBib2R5IG9mIGEgbWVzc2FnZSB0byBt YWpvcmRvbW9Admdlci5rZXJuZWwub3JnCk1vcmUgbWFqb3Jkb21vIGluZm8gYXQgIGh0dHA6Ly92 Z2VyLmtlcm5lbC5vcmcvbWFqb3Jkb21vLWluZm8uaHRtbAo=