From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH v7 09/11] drm: uevent for connector status change Date: Mon, 13 May 2019 17:04:24 +0200 Message-ID: <20190513150424.GT17751@phenom.ffwll.local> References: <20190507162745.25600-1-ramalingam.c@intel.com> <20190507162745.25600-10-ramalingam.c@intel.com> <31dad9a323382628911c5301a6eec179855aa815.camel@bootlin.com> <8aa3980a6948b9b2b989c237f8453ca54e72ad95.camel@bootlin.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-ed1-x541.google.com (mail-ed1-x541.google.com [IPv6:2a00:1450:4864:20::541]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4932889F71 for ; Mon, 13 May 2019 15:04:31 +0000 (UTC) Received: by mail-ed1-x541.google.com with SMTP id w11so18017360edl.5 for ; Mon, 13 May 2019 08:04:31 -0700 (PDT) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Ser, Simon" Cc: "airlied@linux.ie" , "maxime.ripard@bootlin.com" , "daniel.vetter@ffwll.ch" , "intel-gfx@lists.freedesktop.org" , "dri-devel@lists.freedesktop.org" , "paul.kocialkowski@bootlin.com" , "ppaalanen@gmail.com" , "thomas.petazzoni@bootlin.com" , "Vetter, Daniel" List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCBNYXkgMTMsIDIwMTkgYXQgMTA6MTE6MDFBTSArMDAwMCwgU2VyLCBTaW1vbiB3cm90 ZToKPiBPbiBNb24sIDIwMTktMDUtMTMgYXQgMTE6MzQgKzAyMDAsIERhbmllbCBWZXR0ZXIgd3Jv dGU6Cj4gPiBPbiBNb24sIE1heSAxMywgMjAxOSBhdCAxMTowMiBBTSBQYXVsIEtvY2lhbGtvd3Nr aQo+ID4gPHBhdWwua29jaWFsa293c2tpQGJvb3RsaW4uY29tPiB3cm90ZToKPiA+ID4gSGksCj4g PiA+IAo+ID4gPiBPbiBGcmksIDIwMTktMDUtMTAgYXQgMTY6NTQgKzAyMDAsIERhbmllbCBWZXR0 ZXIgd3JvdGU6Cj4gPiA+ID4gT24gRnJpLCBNYXkgMTAsIDIwMTkgYXQgMjoxMiBQTSBQYXVsIEtv Y2lhbGtvd3NraQo+ID4gPiA+IDxwYXVsLmtvY2lhbGtvd3NraUBib290bGluLmNvbT4gd3JvdGU6 Cj4gPiA+ID4gPiBIaSwKPiA+ID4gPiA+IAo+ID4gPiA+ID4gT24gVHVlLCAyMDE5LTA1LTA3IGF0 IDIxOjU3ICswNTMwLCBSYW1hbGluZ2FtIEMgd3JvdGU6Cj4gPiA+ID4gPiA+IERSTSBBUEkgZm9y IGdlbmVyYXRpbmcgdWV2ZW50IGZvciBhIHN0YXR1cyBjaGFuZ2VzIG9mIGNvbm5lY3RvcidzCj4g PiA+ID4gPiA+IHByb3BlcnR5Lgo+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gVGhpcyB1ZXZlbnQg d2lsbCBoYXZlIGZvbGxvd2luZyBkZXRhaWxzIHJlbGF0ZWQgdG8gdGhlIHN0YXR1cyBjaGFuZ2U6 Cj4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiAgIEhPVFBMVUc9MSwgQ09OTkVDVE9SPTxjb25uZWN0 b3JfaWQ+IGFuZCBQUk9QRVJUWT08cHJvcGVydHlfaWQ+Cj4gPiA+ID4gPiA+IAo+ID4gPiA+ID4g PiBOZWVkIEFDSyBmcm9tIHRoaXMgdWV2ZW50IGZyb20gdXNlcnNwYWNlIGNvbnN1bWVyLgo+ID4g PiA+ID4gCj4gPiA+ID4gPiBTbyB3ZSBqdXN0IGhhZCBzb21lIGRpc2N1c3Npb25zIG92ZXIgb24g SVJDIGFuZCBhdCBhYm91dCB0aGUgaG90cGx1Zwo+ID4gPiA+ID4gaXNzdWUgYW5kIGNhbWUgdXAg d2l0aCBzaW1pbGFyIGlkZWFzOgo+ID4gPiA+ID4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvYXJjaGl2ZXMvZHJpLWRldmVsLzIwMTktTWF5LzIxNzQwOC5odG1sCj4gPiA+ID4gPiAKPiA+ ID4gPiA+IFRoZSBjb25jbHVzaW9ucyBvZiB0aGVzZSBkaXNjdXNzaW9ucyBzbyBmYXIgd291bGQg YmUgdG8gaGF2ZSBhIG1vcmUgb3IKPiA+ID4gPiA+IGxlc3MgZmluZSBncmFpbiBvZiB1ZXZlbnQg cmVwb3J0aW5nIGRlcGVuZGluZyBvbiB3aGF0IGhhcHBlbmVkLiBUaGUKPiA+ID4gPiA+IHBvaW50 IGlzIHRoYXQgd2UgbmVlZCB0byBjb3ZlciBkaWZmZXJlbnQgY2FzZXM6Cj4gPiA+ID4gPiAtIG9u ZSBvciBtb3JlIHByb3BlcnRpZXMgY2hhbmdlZDsKPiA+ID4gPiA+IC0gdGhlIGNvbm5lY3RvciBz dGF0dXMgY2hhbmdlZDsKPiA+ID4gPiA+IC0gc29tZXRoaW5nIGVsc2UgYWJvdXQgdGhlIGNvbm5l Y3RvciBjaGFuZ2VkIChlLmcuIEVESUQvbW9kZXMpCj4gPiA+ID4gPiAKPiA+ID4gPiA+IEZvciB0 aGUgZmlyc3QgY2FzZSwgd2UgY2FuIHNlbmQgb3V0Ogo+ID4gPiA+ID4gSE9UUExVRz0xCj4gPiA+ ID4gPiBDT05ORUNUT1I9PGlkPgo+ID4gPiA+ID4gUFJPUEVSVFk9PGlkPgo+ID4gPiA+ID4gCj4g PiA+ID4gPiBhbmQgbm8gcmVwcm9iZSBpcyByZXF1aXJlZC4KPiA+ID4gPiA+IAo+ID4gPiA+ID4g Rm9yIHRoZSBzZWNvbmQgb25lLCBzb21ldGhpbmcgbGlrZToKPiA+ID4gPiA+IEhPVFBMVUc9MQo+ ID4gPiA+ID4gQ09OTkVDVE9SPTxpZD4KPiA+ID4gPiA+IFNUQVRVUz1Db25uZWN0ZWQvRGlzY29u bmVjdGVkCj4gPiA+ID4gPiAKPiA+ID4gPiA+IGFuZCBhIGNvbm5lY3RvciBwcm9iZSBpcyBuZWVk ZWQgZm9yIGNvbm5lY3RlZCwgYnV0IG5vdCBmb3IKPiA+ID4gPiA+IGRpc2Nvbm5lY3RlZDsKPiA+ ID4gPiA+IAo+ID4gPiA+ID4gRm9yIHRoZSB0aGlyZCBvbmUsIHdlIGNhbiBvbmx5IGluZGljYXRl IHRoZSBjb25uZWN0b3I6Cj4gPiA+ID4gPiBIT1RQTFVHPTEKPiA+ID4gPiA+IENPTk5FQ1RPUj08 aWQ+Cj4gPiA+ID4gPiAKPiA+ID4gPiA+IGFuZCBhIHJlcHJvYmUgb2YgdGhlIGNvbm5lY3RvciBp cyBhbHdheXMgbmVlZGVkCj4gPiA+ID4gCj4gPiA+ID4gVGhlcmUncyBubyBtYXRlcmlhbCBkaWZm ZXJlbmNlIGJldHdlZW4gdGhpcyBvbmUgYW5kIHRoZSBwcmV2aW91cyBvbmUuCj4gPiA+ID4gUGx1 cyB0aGVyZSdzIG5vIGJlZW5maXQgaW4gc3VwcGx5aW5nIHRoZSBhY3R1YWwgdmFsdWUgb2YgdGhl IHByb3BlcnR5LAo+ID4gPiA+IGkuZS4gd2UgY2FuIHJldXNlIHRoZSBzYW1lIFBST1BFUlRZPTxp ZC1vZi1zdGF0dXMtcHJvcGVydHk+IHRyaWNrLgo+ID4gPiAKPiA+ID4gVGhhdCdzIHRoZSBpZGVh LCBidXQgd2UgbmVlZCB0byBoYW5kbGUgc3RhdHVzIGNoYW5nZXMgZGlmZmVyZW50bHkgdGhhbgo+ ID4gPiBwcm9wZXJ0aWVzLCBzaW5jZSBhcyBmYXIgYXMgSSBrbm93LCBjb25uZWN0ZWQvdW5jb25u ZWN0ZWQgc3RhdHVzIGlzIG5vdAo+ID4gPiBleHBvc2VkIGFzIGEgcHJvcCBmb3IgdGhlIGNvbm5l Y3Rvci4KPiA+IAo+ID4gT29wcywgdG90YWxseSBtaXNzZWQgdGhhdC4gIkV2ZXJ5dGhpbmcgaXMg YSBwcm9wZXJ0eSIgaXMga2luZGEKPiA+IG5ldy1pc2gsIGF0IGxlYXN0IGNvbXBhcmVkIHRvIGtt cy4gS2luZGEgdGVtcHRlZCB0byBqdXN0IG1ha2Ugc3RhdHVzCj4gPiBpbnRvIGEgcHJvcGVydHku IE9yIGFub3RoZXIgZXhjdXNlIHdoeSB3ZSBzaG91bGQgZXhwb3NlIHRoZSBlcG9jaAo+ID4gcHJv cGVydHkgOi0pCj4gPiAKPiA+ID4gPiBIZXJlJ3Mgd2h5Ogo+ID4gPiA+IC0gQSBzaWRlIGVmZmVj dCBvZiBmb3JjaW5nIGEgcHJvYmUgb24gYSBjb25uZWN0b3IgaXMgdGhhdCB5b3UgZ2V0IHRvCj4g PiA+ID4gcmVhZCBhbGwgdGhlIHByb3BlcnRpZXMsIHNvIHN1cHBseWluZyB0aGVtIGlzIGtpbmRh IHBvaW50bGVzcy4KPiA+ID4gCj4gPiA+IEFncmVlZCwgZXhjZXB0IGZvciB0aGUgc3RhdHVzIGNh c2Ugd2hlcmUgaXQncyB1c2VmdWwgdG8ga25vdyBpdCdzIGEKPiA+ID4gZGlzY29ubmVjdCwgYmVj YXVzZSB3ZSBkb24ndCBuZWVkIGFueSBwcm9iZSBzdGVwIGluIHRoYXQgY2FzZS4KPiA+ID4gCj4g PiA+ID4gLSBZb3UgY2FuIHJlYWQgU1RBVFVTIHdpdGhvdXQgZm9yY2luZyBhIHJlcHJvYmUsIGlm IHlvdSB3YW50IHRvIGF2b2lkCj4gPiA+ID4gdGhlIHJlcHJvYmUgZm9yIGRpc2Nvbm5lY3RlZC4g SSdkIGtpbmRhIG5vdCByZWNvbW1lbmQgdGhhdCB0aG91Z2gsCj4gPiA+ID4gZmVlbHMgYSBiaXQg bGlrZSBvdmVyb3B0aW1pemluZy4gQW5kIGZvciByZWFzb25hYmxlIGNvbm5lY3RvcnMgKGkuZS4K PiA+ID4gPiBkcCkgcmVwcm9iaW5nIGEgZGlzY29ubmVjdGVkIG91dHB1dCBpcyBmYXN0LiBIRE1J IGlzIC4uLiBsZXNzCj4gPiA+ID4gcmVhc29uYWJsZSB1bmZvcnR1bmF0ZWx5LCBidXQgb2ggd2Vs bC4KPiA+ID4gCj4gPiA+IEhvdyB3b3VsZCB0aGF0IGJlIHJldHJlaXZlZCB0aGVuPyBGcm9tIHRo ZSBsb29rcyBvZiBpdCwgdGhhdCdzIGEKPiA+ID4gTU9ERV9HRVRDT05ORUNUT1IgaW9jdGwgYW5k IEkgd2FzIHVuZGVyIHRoZSBpbXByZXNzaW9uIHRoaXMgaXMgd2hhdAo+ID4gPiBkb2VzIHRoZSBm dWxsIHJlcHJvYmUuCj4gPiAKPiA+IGRybUdldENvbm5lY3RvciB2cyBkcm1HZXRDb25uZWN0b3JD dXJyZW50Lgo+ID4gCj4gPiA+IE5vdCBzdXJlIHdoYXQgaXNzdWVzIGNvdWxkIGFyaXNlIGluIGNh c2Ugb2YgZGlzY29ubmVjdCB3aXRob3V0IHJlcHJvYmUKPiA+ID4gLS0gYXQgbGVhc3QgSSBkb24n dCBzZWUgd2h5IHVzZXJzcGFjZSBzaG91bGQgaGF2ZSB0byBkbyBhbnl0aGluZyBpbgo+ID4gPiBw YXJ0aWN1bGFyIGV4Y2VwdCBubyBsb25nZXIgdXNpbmcgdGhlIGNvbm5lY3RvciwgZXZlbiBpbiBj b21wbGV4IERQIE1TVAo+ID4gPiBjYXNlcy4KPiA+IAo+ID4gY29ubmVjdG9yLT5zdGF0dXMgbWln aHQgYmUgYSBsaWUgd2l0aG91dCBhIGZ1bGwgcmVwcm9iZSwgYW5kIHdyb25nbHkKPiA+IGluZGlj YXRlIHRoYXQgdGhlIGNvbm5lY3RvciBpcyBkaXNjb25uZWN0ZWQgd2hpbGUgdGhlcmUncyBzdGls bAo+ID4gc29tZXRoaW5nIHBsdWdnZWQgaW4uIEknbSBub3Qgc3VyZSB3ZSd2ZSBmaXhlZCB0aG9z ZSBidWdzIGJ5IG5vdwo+ID4gKHVzdWFsbHkgaXQncyBhcm91bmQgImhwZCBpbmRpY2F0ZXMgZGlz Y29ubmVjdGVkIiB2cy4gImkyYyBpbmRpY2F0ZXMKPiA+IGNvbm5lY3RlZCwgYW5kIHdlIGNhbid0 IGJyZWFrIHRoaXMgYmVjYXVzZSBldmVyeSBpbnRlbCBwbGF0Zm9ybSBldmVyCj4gPiBzaGlwcGVk IGhhcyBhIGZldyBkZXZpY2VzIHdoZXJlIHRoaXMgaXMgc29tZWhvdyBicm9rZW4sIGlycmVzcGVj dGl2ZQo+ID4gb2YgdGhlIHNpbmspLgo+ID4gCj4gPiA+ID4gLSBUaGVyZSdzIG5vIHdheSB0byBv bmx5IHJlcHJvYmUgc3RhdHVzLCB5b3UgY2FuIG9ubHkgZXZlciByZXByb2JlCj4gPiA+ID4gZXZl cnl0aGluZyB3aXRoIHRoZSBjdXJyZW50IGlvY3RsIGFuZCBpbXBsZW1lbnRhdGlvbnMuIEhhdmlu ZyBhbgo+ID4gPiA+IG9wdGlvbiB0byByZXByb2JlIG9ubHkgcGFydHMgb2YgaXQgZG9lc24ndCBz ZWVtIHVzZWZ1bCB0byBtZSAod2UgbmVlZAo+ID4gPiA+IHRvIHJlYWQgdGhlIEVESUQgYW55d2F5 LCBhbmQgdGhhdCdzIHRoZSBleHBlbnNpdmUgcGFydCBvZiByZXByb2JpbmcgaW4KPiA+ID4gPiBh bG1vc3QgYWxsIGNhc2VzKS4KPiA+ID4gCj4gPiA+IEFncmVlZC4KPiA+ID4gCj4gPiA+ID4gSW4g YSB3YXkgUFJPUEVSVFk9PHN0YXR1cy1wcm9wLWlkPiBzaW1wbHkgdGVsbHMgdXNlcnNwYWNlIHRo YXQgaXQKPiA+ID4gPiBuZWVkcyB0byByZXByb2JlIHRoaXMgY29ubmVjdG9yLgo+ID4gPiAKPiA+ ID4gSSB0aG91Z2h0IHdlIGNvdWxkIGFjY2VzcyB0aGUgcHJvcHMgYWxvbmUsIHdoaWNoIGF2b2lk cyBkb2luZyBhIHJlcHJvYmUKPiA+ID4gd2hlbiB0aGUga2VybmVsIGtub3dzIHRoYXQgb25seSBh IHByb3Agb3IgYSBzZXQgb2YgcHJvcHMgY2hhbmdlZCBhbmQgZG8KPiA+ID4gbm90IHJlcXVpcmUg YSBmdWxsIHJlcHJvYmUuIFRoYXQncyB0aGUgZmlyc3QgY2FzZSBJIHdhcyBtZW50aW9ubmluZy4K PiA+ID4gCj4gPiA+ID4gQXQgdGhhdCBwb2ludCB3ZSBuZWVkIHRvIGZpZ3VyZSBvdXQgd2hldGhl ciB0aGlzIGlzIGEgZ29vZCB1YXBpIG9yCj4gPiA+ID4gbm90LCBhbmQgdGhhdCdzIHdoZXJlIHRo ZSBlcG9jaCBjb21lcyBpbi4gVGhlcmUncyB0d28gcmVhc29ucyBmb3IgYW4KPiA+ID4gPiBlcG9j aDoKPiA+ID4gPiAtIFdlIG5lZWQgaXQgaW50ZXJuYWxseSBiZWNhdXNlIEknbSBub3QgZ29pbmln IHRvIHdpcmUgYSBuZXcgcmV0dXJuCj4gPiA+ID4gdmFsdWUgdGhyb3VnaCBodW5kcmVkcyBvZiBj b25uZWN0b3IgcHJvYmUgZnVuY3Rpb25zLiBJdCdzIG11Y2ggZWFzaWVyCj4gPiA+ID4gdG8gaGF2 ZSBhbiBlcG9jaCBjb3VudGVyIHdoaWNoIHdlIHNldCBmcm9tIGUuZy4gZHJtX3NldF9lZGlkIGFu ZAo+ID4gPiA+IHNpbWlsYXIgZnVuY3Rpb25zIHRoYXQgdXBkYXRlIHByb2JlIHN0YXRlLgo+ID4g PiAKPiA+ID4gSSBkb24ndCB0aGluayBJJ20gZm9sbG93aW5nIHdoYXQgaXNzdWUgdGhpcyBpcyB0 cnlpbmcgdG8gc29sdmUKPiA+ID4gaW50ZXJuYWxseS4KPiA+IAo+ID4gU28gSSdtIGFzc3VtaW5n IHRoYXQgaWYgd2UgaGFuZGxlIGEgaG90cGx1Zywgd2Ugb25seSB3YW50IHRvIGdlbmVyYXRlCj4g PiBvbmUgdWV2ZW50IGZvciB0aGF0LCBub3Qgb25lIGZvciBldmVyeSBsaXR0bGUgdGhpbmcgdGhh dCBjaGFuZ2VkLgo+ID4gVGhlcmUncyB0d28gd2F5cyB0byBpbXBsZW1lbnQgdGhpcyBsb2dpYzoK PiA+IC0gV2l0aCBzb21lIGVwb2NoIGNvdW50ZXIgYW5kIGEgaGVscGVyIGZ1bmN0aW9uIHlvdSBj YW4gY2FsbCBldmVyeXRpbWUKPiA+IHNvbWV0aGluZyBjaGFuZ2VkIChlLmcuIHN0YXR1cywgb3Ig ZWRpZCwgb3IgYW55dGhpbmcgZWxzZSB3ZSBjYXJlCj4gPiBhYm91dCBlLmcuIGZyb20gZHAgYXV4 KS4gVGhpcyB3b24ndCBuZWVkIG11Y2ggKGlmIGFueSkgZHJpdmVyIGNoYW5nZXMsCj4gPiBiZWNh dXNlIHdlIGNhbiBqdXN0IHB1dCB0aGVzZSBpbnRvIHRoZSByZWxldmFudCBoZWxwZXIvY29yZSBm dW5jdGlvbnMKPiA+IChsaWtlIGVkaWQgdXBkYXRlLCBvciBkcCBhdXggcmVhZGluZyBvciB3aGF0 ZXZlcikuCj4gPiAtIFdpcmluZyBhIG5ldyByZXR1cm4gdmFsdWUgdGhyb3VnaCB0aGUgZW50aXJl IHN0YWNrIChhbmQgX2FsbF8gdGhlCj4gPiBrbXMgZHJpdmVycykgc28gdGhhdCB0aGUgcHJvYmUg aGVscGVycyBjb3VsZCBhZ2dyZWdhdGUgdGhpcyBsaWtlIHRoZXkKPiA+IGN1cnJlbnRseSBkby4K PiA+IAo+ID4gT25lIG9mIHRoZXNlIGlzIGEgbG90IGxlc3MgdHlwaW5nLgo+ID4gCj4gPiA+ID4g LSBJZiB1c2Vyc3BhY2UgbWlzc2VzIGFuIGV2ZW50IGFuZCB0aGVyZSdzIG5vIGVwb2NoLCB3ZSdy ZSBmb3JjaW5nCj4gPiA+ID4gdXNlcnNwYWNlIHRvIHJlcHJvYmUgZXZlcnl0aGluZy4gVXNlIGNh c2Ugd291bGQgYmUgaWYgYSBjb21wb3NpdG9yIGlzCj4gPiA+ID4gc3dpdGNoZWQgYXdheSB3ZSBw cm9iYWJseSBkb24ndCB3YW50IHRvIHBpc3Mgb2YgdGhlIGN1cnJlbnQgY29tcG9zaXRvcgo+ID4g PiA+IGJ5IGJsb2NraW5nIGl0J3Mgb3duIHByb2JlIGtlcm5lbCBjYWxscyBieSBkb2luZyBvdXIg b3duIChwcm9iZSBpcwo+ID4gPiA+IHNpbmdsZS10aHJlYWRlZCBpbiB0aGUga2VybmVsIHRocm91 Z2ggdGhlIGRldi0+bW9kZV9jb25maWcubXV0ZXgpLiBJZgo+ID4gPiA+IGl0IGNhbiByZWFkIHRo ZSBlcG9jaCBwcm9wZXJ0eSAod2hpY2ggaXQgY2FuIGRvIHdpdGhvdXQgZm9yY2luZyBhCj4gPiA+ ID4gcmVwcm9iZSkgdXNlcnNwYWNlIHdvdWxkIGtub3cgd2hpY2ggY29ubmVjdG9ycyBpdCBuZWVk cyB0byBjaGVjayBhbmQKPiA+ID4gPiByZXByb2JlLgo+ID4gPiA+IAo+ID4gPiA+IEhlbmNlIHdo eSBlcG9jaCwgaXQncyBhIGJpdCBtb3JlIHJvYnVzdCB1c2Vyc3BhY2UgYXBpLiBPZmMgeW91IGNv dWxkCj4gPiA+ID4gYWxzbyByZXF1aXJlIHRoYXQgdXNlcnNwYWNlIG5lZWRzIHRvIGtlZXAgcGFy c2luZyBhbGwgdWV2ZW50cyBhbmQgbWFrZQo+ID4gPiA+IGEgbGlzdCBvZiBhbGwgY29ubmVjdG9y cyBpdCBuZWVkcyB0byByZXByb2JlIHdoZW4gaXQncyBiYWNrIHRvIGJlaW5nCj4gPiA+ID4gdGhl IGFjdGl2ZSBjb21wb3NpdG9yLiBCdXQganVzdCBjb21wYXJpbmcgYSBjdXJyZW50IGVwb2NoIHdp dGggdGhlIG9uZQo+ID4gPiA+IHlvdSBjYWNoZWQgZnJvbSB0aGUgbGFzdCBmdWxsIHByb2JlIGlz IG11Y2ggZWFzaWVyLgo+ID4gPiAKPiA+ID4gRmFpciBlbm91Z2gsIEkgdGhpbmsgaXQncyBhIGZp bmUgaWRlYSBmb3Igcm9idXN0bmVzcyB5ZXMsIGJ1dCBJIHRoaW5rCj4gPiA+IHdlIGNvdWxkIGFs c28gcHJvdmlkZSBleHRyYSBpbmZvIGluIHRoZSB1ZXZlbnQgd2hlbiByZWxldmFudCBhbmQgbm90 Cj4gPiA+IHJlbHkgb24gdGhhdCBlbnRpcmVseS4KPiA+IAo+ID4gU2VlIGFib3ZlLCB3aXRoIGRy bUdldENvbm5lY3RvckN1cnJlbnQgdGhlcmUncyBubyBuZWVkIHRvIHByb3ZpZGUgbW9yZQo+ID4g dGhhbiB3aGF0J3MgbmVlZGVkIGluIHRoZSB1ZXZlbnQsIHNpbmNlIHVzZXJzcGFjZSBjYW4gZ2V0 IGV2ZXJ5dGhpbmcKPiA+IGVsc2UgYXQgdGhlIGNvc3Qgb2Ygb25lIGlvY3RsLCB3aXRob3V0IHJl cHJvYmluZy4gV2l0aCBhIGJpdCBvZgo+ID4gZW5naW5lZXJpbmcgd29yayB3ZSBjb3VsZCBldmVu IGF2b2lkIHRha2luZyB0aGUgZXhwZW5zaXZlCj4gPiBkZXYtPm1vZGVfY29uZmlnLm11dGV4IGxv Y2sgZm9yIHRoaXMgZmFzdHBhdGguCj4gPiAKPiA+ID4gPiBBbm90aGVyIHRoaW5nOiBOb25lIG9m IHRoaXMgd2UgY2FuIGZvciBjb25uZWN0b3JzIHdpdGggdW5yZWxpYWJsZSBoZHAuCj4gPiA+ID4g T3IgYXQgbGVhc3QgeW91J2xsIHBpc3Mgb2YgdXNlcnMgaWYgeW91IGNhY2hlIGFsd2F5cy4gVGhl IHNhZCB0aGluZyBpcwo+ID4gPiA+IHRoYXQgSERNSSBpcyB1bnJlbGlhYmxlLCBhdCBsZWFzdCBv biBzb21lIG1hY2hpbmVzL3NjcmVlbiBjb21ib3MgKHlvdQo+ID4gPiA+IG5ldmVyIGdldCBhIGhw ZCBpcnEgaWYgeW91IHBsdWcgaW4vdW5wbHVnKS4gU28gcmVhbCBjb21wb3NpdG9ycyBzdGlsbAo+ ID4gPiA+IG5lZWQgdG8gcmVwcm9iZSB3aGVuIHRoZSB1c2VyIGFza3MgZm9yIGl0LiBpZ3QgY2Fu IHByb2JhYmx5IGdldCBhd2F5Cj4gPiA+ID4gd2l0aG91dCByZXByb2JpbmcuCj4gPiA+IAo+ID4g PiBJIHdvbmRlciBob3cgdGhhdCBpcyBoYW5kbGVkIGN1cnJlbnRseSBhbmQgaG93IGEgdXNlciBh Y3Rpb24gY2FuIHNvbHZlCj4gPiA+IHRoZSBpc3N1ZSB3aXRob3V0IGFueSBub3RpZmljYXRpb24g ZnJvbSB0aGUga2VybmVsLiBNYXliZSBhIG5lZWQgYQo+ID4gPiBiZXR0ZXIgdW5kZXJzdGFuZGlu ZyBvZiB0aGF0IGNhc2UgdG8gaGF2ZSBhIGNsZWFyZXIgaWRlYS4KPiA+IAo+ID4gVXNlciBvcGVu cyB0aGUgc2NyZWVuIGNvbmZpZ3VyYXRpb24gdG9vbCAtPiB1c3VhbGx5IGF0IHRoYXQgcG9pbnQg dGhlCj4gPiB0b29sL2NvbXBvc2l0b3IgZm9yY2UgYSBmdWxsIHJlcHJvYmUsIHdoaWNoIHRoZW4g b2Z0ZW4gdHJpZ2dlcnMgdGhlCj4gPiBhdXRvbWF0aWMgcmVjb25maWd1cmluZy4gRS5nLiBvbiBv bmUgbGFwdG9wIEkgaGF2ZSBoZXJlIHdoZW4gSSBwbHVnIGluCj4gPiByYW5kb20gc2hpdCBwcm9q ZWN0b3JzIGF0IGNvbmZlcmVuY2VzIG5vdGhpbmcgaGFwcGVucywgdW50aWwgSSBydW4KPiA+IHhy YW5kciwgd2hpY2ggdHJpZ2dlcnMgdGhlIGZ1bGwgcmVwcm9iZSwgd2hpY2ggdGhlbiBtYWtlcyB0 aGUga2VybmVsCj4gPiByZWFsaXplIHNvbWV0aGluZyBjaGFuZ2UsIHNlbmRpbmcgYW5kIHVldmVu dCwgd2hpY2ggc3RhcnRzIHRoZQo+ID4gYXV0b21hdGljIHJlY29uZmlndXJlIG1hY2hpbmVyeS4K PiA+IAo+ID4gVGhlcmUncyBhbHNvIHRoZSBpc3N1ZSB0aGF0IHRoZXJlJ3MgbWFjaGluZXMgd2l0 aCBocGQgc3Rvcm1zIChldmVuIG9uCj4gPiBEUCwgd2hlcmUgeW91IHJlYWxseSBuZWVkIGhwZCB0 byB3b3JrIHRvIGJlIGNvbXBsaWFudCksIGFuZCB3ZSBoYXZlIHRvCj4gPiB0dXJuIG9mIHRoZSBo cGQgaXJxIHRvIGtlZXAgdGhlIG1hY2hpbmUgdXNlYWJsZS4KPiAKPiBOb3RlIHRoYXQgeHJhbmRy IG9ubHkgd29ya3Mgb24gWDExLiBPbiBXYXlsYW5kLCBpdCB3b24ndC4KPiAKPiBXaGV0aGVyIHRo ZSB1c2VyIGNhbiBhY3R1YWxseSBkbyBhbnl0aGluZyBkZXBlbmRzIG9uIHRoZSBjb21wb3NpdG9y LiBPbgo+IEdOT01FIHRoZSBELUJ1cyBpbnRlcmZhY2UgY291bGQgcHJvYmFibHkgZm9yY2UgYSBy ZS1wcm9iZSB3aGVuIGEKPiBjb25maWd1cmF0aW9uIHRvb2wgaXMgc3RhcnRlZCBvciBtYXliZSB3 aXRoIGEgIlJlc2NhbiBjb25uZWN0b3JzIgo+IGJ1dHRvbiAobm90IHN1cmUgdGhleSdkIGxpa2Ug dG8gaGF2ZSB0aGlzIGluIHRoZWlyIFVJKS4gT24gS0RFLCBXZXN0b24KPiBhbmQgd2xyb290cyB0 aGVyZSBpcyBubyB3YXkgdG8gZG8gaXQuCj4gCj4gQXMgY29tcG9zaXRvciB3cml0ZXJzLCBkbyB3 ZSByZWFsbHkgbmVlZCB0byBwcm92aWRlIGEgd2F5IGZvciB1c2VycyB0bwo+IGZvcmNlIGEgcmVw cm9iZT8gQ2FuJ3QgdGhlIGtlcm5lbCBkbyBhbnl0aGluZyB0byBoYW5kbGUgdGhlc2UgYmFkCj4g c2NyZWVucz8KClllYWgsIHdlIGRlZmVuc2l2ZWx5IGZhbGwgYmFjayB0byBwb2xsaW5nLiBXaGlj aCBpc24ndCBncmVhdCBmcm9tIGEgcG93ZXIKdXNhZ2UgcG92LgoKYnR3IGFzIGxvbmcgYXMgY29t cG9zaXRvcnMgdXNlIGRybUdldENvbm5lY3RvciBhbmQgbm90IGp1c3QKZHJtR2V0Q29ubmVjdG9y Q3VycmVudCB5b3UgY2FuIHRyaWdnZXIgYSBmdWxsIHJlcHJvYmUuIElmIHRoZXJlJ3Mgbm90IHdh eQp0byB0cmlnZ2VyIHRoYXQgdGhleSdsbCBhbGwgaGF2ZSB0byBhZGQgYSAiZm9yY2UgcHJvYmUi IGJ1dHRvbiBzb29uZXIgb3IKbGF0ZXIuIEJ1dCB1c3VhbGx5IGl0J3MgZW5vdWdoIGlmIHlvdSBk byBhIGZ1bGwgcmVwcm9iZSB3aGVuIHRoZSB1c2VyCnN0YXJ0cyB5b3VyIGNvbmZpZyB0b29sLgot RGFuaWVsCgoKPiA+IENoZWVycywgRGFuaWVsCj4gPiAKPiA+ID4gQ2hlZXJzLAo+ID4gPiAKPiA+ ID4gUGF1bAo+ID4gPiAKPiA+ID4gPiAtRGFuaWVsCj4gPiA+ID4gCj4gPiA+ID4gPiBUaGVuIHdl IHN0aWxsIGhhdmUgdGhlIGxlZ2FjeSBjYXNlOgo+ID4gPiA+ID4gSE9UUExVRz0xCj4gPiA+ID4g PiAKPiA+ID4gPiA+IHdoZXJlIHVzZXJzcGFjZSBpcyBleHBlY3RlZCB0byByZXByb2JlIGFsbCB0 aGUgY29ubmVjdG9ycy4KPiA+ID4gPiA+IAo+ID4gPiA+ID4gSSB0aGluayB0aGlzIHdvdWxkIGRl c2VydmUgdG8gYmUgYSBzZXBhcmF0ZSBzZXJpZXMgb24gaXRzIG93bi4gU28gSSBhbQo+ID4gPiA+ ID4gcHJvcG9zaW5nIHRvIHRha2UgdGhpcyBvbmUgb2ZmIHlvdXIgcGxhdGUgYW5kIGNvbWUgdXAg d2l0aCBhbm90aGVyCj4gPiA+ID4gPiBzZXJlcyBpbXBsZW1lbnRpbmcgdGhpcyBwcm9wb3NhbC4g V2hhdCBkbyB5b3UgdGhpbms/Cj4gPiA+ID4gPiAKPiA+ID4gPiA+IENoZWVycywKPiA+ID4gPiA+ IAo+ID4gPiA+ID4gUGF1bAo+ID4gPiA+ID4gCj4gPiA+ID4gPiA+IHYyOgo+ID4gPiA+ID4gPiAg IE1pbm9yIGZpeGVzIGF0IEtEb2MgY29tbWVudHMgW0RhbmllbF0KPiA+ID4gPiA+ID4gdjM6Cj4g PiA+ID4gPiA+ICAgQ2hlY2sgdGhlIHByb3BlcnR5IGlzIHJlYWxseSBhdHRhY2hlZCB3aXRoIGNv bm5lY3RvciBbRGFuaWVsXQo+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gU2lnbmVkLW9mZi1ieTog UmFtYWxpbmdhbSBDIDxyYW1hbGluZ2FtLmNAaW50ZWwuY29tPgo+ID4gPiA+ID4gPiBSZXZpZXdl ZC1ieTogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBmZndsbC5jaD4KPiA+ID4gPiA+ID4g LS0tCj4gPiA+ID4gPiA+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX3N5c2ZzLmMgfCAzNSArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ID4gPiA+ID4gPiAgaW5jbHVkZS9kcm0vZHJt X3N5c2ZzLmggICAgIHwgIDUgKysrKy0KPiA+ID4gPiA+ID4gIDIgZmlsZXMgY2hhbmdlZCwgMzkg aW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQo+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fc3lzZnMuYyBiL2RyaXZlcnMvZ3B1L2RybS9k cm1fc3lzZnMuYwo+ID4gPiA+ID4gPiBpbmRleCAxOGIxYWM0NDI5OTcuLjYzZmE5NTFhMjBkYiAx MDA2NDQKPiA+ID4gPiA+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9zeXNmcy5jCj4gPiA+ ID4gPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fc3lzZnMuYwo+ID4gPiA+ID4gPiBAQCAt MjEsNiArMjEsNyBAQAo+ID4gPiA+ID4gPiAgI2luY2x1ZGUgPGRybS9kcm1fc3lzZnMuaD4KPiA+ ID4gPiA+ID4gICNpbmNsdWRlIDxkcm0vZHJtUC5oPgo+ID4gPiA+ID4gPiAgI2luY2x1ZGUgImRy bV9pbnRlcm5hbC5oIgo+ID4gPiA+ID4gPiArI2luY2x1ZGUgImRybV9jcnRjX2ludGVybmFsLmgi Cj4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiAgI2RlZmluZSB0b19kcm1fbWlub3IoZCkgZGV2X2dl dF9kcnZkYXRhKGQpCj4gPiA+ID4gPiA+ICAjZGVmaW5lIHRvX2RybV9jb25uZWN0b3IoZCkgZGV2 X2dldF9kcnZkYXRhKGQpCj4gPiA+ID4gPiA+IEBAIC0zMjAsNiArMzIxLDkgQEAgdm9pZCBkcm1f c3lzZnNfbGVhc2VfZXZlbnQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiA+ID4gPiA+ID4gICAq IFNlbmQgYSB1ZXZlbnQgZm9yIHRoZSBEUk0gZGV2aWNlIHNwZWNpZmllZCBieSBAZGV2LiAgQ3Vy cmVudGx5IHdlIG9ubHkKPiA+ID4gPiA+ID4gICAqIHNldCBIT1RQTFVHPTEgaW4gdGhlIHVldmVu dCBlbnZpcm9ubWVudCwgYnV0IHRoaXMgY291bGQgYmUgZXhwYW5kZWQgdG8KPiA+ID4gPiA+ID4g ICAqIGRlYWwgd2l0aCBvdGhlciB0eXBlcyBvZiBldmVudHMuCj4gPiA+ID4gPiA+ICsgKgo+ID4g PiA+ID4gPiArICogQW55IG5ldyB1YXBpIHNob3VsZCBiZSB1c2luZyB0aGUgZHJtX3N5c2ZzX2Nv bm5lY3Rvcl9zdGF0dXNfZXZlbnQoKQo+ID4gPiA+ID4gPiArICogZm9yIHVldmVudHMgb24gY29u bmVjdG9yIHN0YXR1cyBjaGFuZ2UuCj4gPiA+ID4gPiA+ICAgKi8KPiA+ID4gPiA+ID4gIHZvaWQg ZHJtX3N5c2ZzX2hvdHBsdWdfZXZlbnQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiA+ID4gPiA+ ID4gIHsKPiA+ID4gPiA+ID4gQEAgLTMzMiw2ICszMzYsMzcgQEAgdm9pZCBkcm1fc3lzZnNfaG90 cGx1Z19ldmVudChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ID4gPiA+ID4gPiAgfQo+ID4gPiA+ ID4gPiAgRVhQT1JUX1NZTUJPTChkcm1fc3lzZnNfaG90cGx1Z19ldmVudCk7Cj4gPiA+ID4gPiA+ IAo+ID4gPiA+ID4gPiArLyoqCj4gPiA+ID4gPiA+ICsgKiBkcm1fc3lzZnNfY29ubmVjdG9yX3N0 YXR1c19ldmVudCAtIGdlbmVyYXRlIGEgRFJNIHVldmVudCBmb3IgY29ubmVjdG9yCj4gPiA+ID4g PiA+ICsgKiBwcm9wZXJ0eSBzdGF0dXMgY2hhbmdlCj4gPiA+ID4gPiA+ICsgKiBAY29ubmVjdG9y OiBjb25uZWN0b3Igb24gd2hpY2ggcHJvcGVydHkgc3RhdHVzIGNoYW5nZWQKPiA+ID4gPiA+ID4g KyAqIEBwcm9wZXJ0eTogY29ubmVjdG9yIHByb3BlcnR5IHdob2VzIHN0YXR1cyBjaGFuZ2VkLgo+ ID4gPiA+ID4gPiArICoKPiA+ID4gPiA+ID4gKyAqIFNlbmQgYSB1ZXZlbnQgZm9yIHRoZSBEUk0g ZGV2aWNlIHNwZWNpZmllZCBieSBAZGV2LiAgQ3VycmVudGx5IHdlCj4gPiA+ID4gPiA+ICsgKiBz ZXQgSE9UUExVRz0xIGFuZCBjb25uZWN0b3IgaWQgYWxvbmcgd2l0aCB0aGUgYXR0YWNoZWQgcHJv cGVydHkgaWQKPiA+ID4gPiA+ID4gKyAqIHJlbGF0ZWQgdG8gdGhlIHN0YXR1cyBjaGFuZ2UuCj4g PiA+ID4gPiA+ICsgKi8KPiA+ID4gPiA+ID4gK3ZvaWQgZHJtX3N5c2ZzX2Nvbm5lY3Rvcl9zdGF0 dXNfZXZlbnQoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiA+ID4gPiA+ID4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGRybV9wcm9wZXJ0eSAqcHJv cGVydHkpCj4gPiA+ID4gPiA+ICt7Cj4gPiA+ID4gPiA+ICsgICAgIHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYgPSBjb25uZWN0b3ItPmRldjsKPiA+ID4gPiA+ID4gKyAgICAgY2hhciBob3RwbHVnX3N0 cltdID0gIkhPVFBMVUc9MSIsIGNvbm5faWRbMzBdLCBwcm9wX2lkWzMwXTsKPiA+ID4gPiA+ID4g KyAgICAgY2hhciAqZW52cFs0XSA9IHsgaG90cGx1Z19zdHIsIGNvbm5faWQsIHByb3BfaWQsIE5V TEwgfTsKPiA+ID4gPiA+ID4gKwo+ID4gPiA+ID4gPiArICAgICBXQVJOX09OKCFkcm1fbW9kZV9v YmpfZmluZF9wcm9wX2lkKCZjb25uZWN0b3ItPmJhc2UsCj4gPiA+ID4gPiA+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvcGVydHktPmJhc2UuaWQpKTsKPiA+ID4g PiA+ID4gKwo+ID4gPiA+ID4gPiArICAgICBzbnByaW50Zihjb25uX2lkLCBBUlJBWV9TSVpFKGNv bm5faWQpLAo+ID4gPiA+ID4gPiArICAgICAgICAgICAgICAiQ09OTkVDVE9SPSV1IiwgY29ubmVj dG9yLT5iYXNlLmlkKTsKPiA+ID4gPiA+ID4gKyAgICAgc25wcmludGYocHJvcF9pZCwgQVJSQVlf U0laRShwcm9wX2lkKSwKPiA+ID4gPiA+ID4gKyAgICAgICAgICAgICAgIlBST1BFUlRZPSV1Iiwg cHJvcGVydHktPmJhc2UuaWQpOwo+ID4gPiA+ID4gPiArCj4gPiA+ID4gPiA+ICsgICAgIERSTV9E RUJVRygiZ2VuZXJhdGluZyBjb25uZWN0b3Igc3RhdHVzIGV2ZW50XG4iKTsKPiA+ID4gPiA+ID4g Kwo+ID4gPiA+ID4gPiArICAgICBrb2JqZWN0X3VldmVudF9lbnYoJmRldi0+cHJpbWFyeS0+a2Rl di0+a29iaiwgS09CSl9DSEFOR0UsIGVudnApOwo+ID4gPiA+ID4gPiArfQo+ID4gPiA+ID4gPiAr RVhQT1JUX1NZTUJPTChkcm1fc3lzZnNfY29ubmVjdG9yX3N0YXR1c19ldmVudCk7Cj4gPiA+ID4g PiA+ICsKPiA+ID4gPiA+ID4gIHN0YXRpYyB2b2lkIGRybV9zeXNmc19yZWxlYXNlKHN0cnVjdCBk ZXZpY2UgKmRldikKPiA+ID4gPiA+ID4gIHsKPiA+ID4gPiA+ID4gICAgICAga2ZyZWUoZGV2KTsK PiA+ID4gPiA+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9zeXNmcy5oIGIvaW5jbHVk ZS9kcm0vZHJtX3N5c2ZzLmgKPiA+ID4gPiA+ID4gaW5kZXggNGYzMTFlODM2Y2RjLi5kNDU0ZWY2 MTdiMmMgMTAwNjQ0Cj4gPiA+ID4gPiA+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9zeXNmcy5oCj4g PiA+ID4gPiA+ICsrKyBiL2luY2x1ZGUvZHJtL2RybV9zeXNmcy5oCj4gPiA+ID4gPiA+IEBAIC00 LDEwICs0LDEzIEBACj4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiAgc3RydWN0IGRybV9kZXZpY2U7 Cj4gPiA+ID4gPiA+ICBzdHJ1Y3QgZGV2aWNlOwo+ID4gPiA+ID4gPiArc3RydWN0IGRybV9jb25u ZWN0b3I7Cj4gPiA+ID4gPiA+ICtzdHJ1Y3QgZHJtX3Byb3BlcnR5Owo+ID4gPiA+ID4gPiAKPiA+ ID4gPiA+ID4gIGludCBkcm1fY2xhc3NfZGV2aWNlX3JlZ2lzdGVyKHN0cnVjdCBkZXZpY2UgKmRl dik7Cj4gPiA+ID4gPiA+ICB2b2lkIGRybV9jbGFzc19kZXZpY2VfdW5yZWdpc3RlcihzdHJ1Y3Qg ZGV2aWNlICpkZXYpOwo+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gIHZvaWQgZHJtX3N5c2ZzX2hv dHBsdWdfZXZlbnQoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gPiA+ID4gPiA+IC0KPiA+ID4g PiA+ID4gK3ZvaWQgZHJtX3N5c2ZzX2Nvbm5lY3Rvcl9zdGF0dXNfZXZlbnQoc3RydWN0IGRybV9j b25uZWN0b3IgKmNvbm5lY3RvciwKPiA+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc3RydWN0IGRybV9wcm9wZXJ0eSAqcHJvcGVydHkpOwo+ID4gPiA+ID4gPiAg I2VuZGlmCj4gPiA+ID4gPiAtLQo+ID4gPiA+ID4gUGF1bCBLb2NpYWxrb3dza2ksIEJvb3RsaW4K PiA+ID4gPiA+IEVtYmVkZGVkIExpbnV4IGFuZCBrZXJuZWwgZW5naW5lZXJpbmcKPiA+ID4gPiA+ IGh0dHBzOi8vYm9vdGxpbi5jb20KPiA+ID4gPiA+IAo+ID4gPiAtLQo+ID4gPiBQYXVsIEtvY2lh bGtvd3NraSwgQm9vdGxpbgo+ID4gPiBFbWJlZGRlZCBMaW51eCBhbmQga2VybmVsIGVuZ2luZWVy aW5nCj4gPiA+IGh0dHBzOi8vYm9vdGxpbi5jb20KPiA+ID4gCj4gPiAKPiA+IAoKLS0gCkRhbmll bCBWZXR0ZXIKU29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0aW9uCmh0dHA6Ly9ibG9n LmZmd2xsLmNoCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==