From mboxrd@z Thu Jan 1 00:00:00 1970 From: Subject: RE: Regression on Dell XPS13 (was: [char-misc for 4.10-rc4 V2] mei: bus: enable OS version only for SPT and newer) Date: Tue, 17 Jan 2017 16:57:49 +0000 Message-ID: <954f9b4e8bd844c98f8d3c12f0fe366f@ausx13mpc120.AMER.DELL.COM> References: <20170110224956.GA2897@x61s.reliablesolutions.de> <5B8DA87D05A7694D9FA63FD143655C1B5437A09D@hasmsx108.ger.corp.intel.com> <5B8DA87D05A7694D9FA63FD143655C1B5437A315@hasmsx108.ger.corp.intel.com> <20170113130018.GA896@kroah.com> <5549d8c0527412390d71236d80dff419@molgen.mpg.de> <20170114193959.GA30750@kroah.com> <5B8DA87D05A7694D9FA63FD143655C1B5437C2D3@hasmsx108.ger.corp.intel.com> <20170115105830.GD26374@kroah.com> <20170116110539.GA1307@kroah.com> <1b1feb50-2b22-b7e7-0fb8-2011340f5c47@leemhuis.info> <55b349b2-2999-94d5-9f68-b1944df1d374@molgen.mpg.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <55b349b2-2999-94d5-9f68-b1944df1d374@molgen.mpg.de> Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org To: pmenzel@molgen.mpg.de, rafael.j.wysocki@intel.com Cc: linux@leemhuis.info, gregkh@linuxfoundation.org, tomas.winkler@intel.com, jan@gondor.com, alexander.usyskin@intel.com, linux-kernel@vger.kernel.org, yu.c.chen@intel.com, tomi.p.sarvela@intel.com, daniel@quora.org, len.brown@intel.com, linux-pm@vger.kernel.org List-Id: linux-pm@vger.kernel.org SGkgUGF1bCwNCg0KVGhhbmtzIGZvciByYWlzaW5nIHRoaXMgdG9waWMgYW5kIGluY2x1ZGluZyBt ZS4gIA0KU3VzcGVuZCB0byBJZGxlIHN1cHBvcnQgaW4gTGludXggYXMgYW4gYWx0ZXJuYXRpdmUg UzMgb24geDg2IGlzIGEgbmV3IA0KdG9waWMuICBJbiBhbGwsIEkgZXhwZWN0ZWQgdGhhdCBzb21l IHByb2JsZW1zIHdvdWxkIGFyaXNlIGFzIGEgcmVzdWx0IA0Kb2YgdGhpcyBwYXRjaCwgYW5kIEkg aG9wZSB0aGV5IHdpbGwgc3B1ciBpbnRlcmVzdGluZyBkaXNjdXNzaW9ucyBhbmQgDQpzb2x1dGlv bnMuDQoNClNvbWV0aGluZyB0aGF0IG1pZ2h0IG5vdCBiZSBpbW1lZGlhdGVseSBvYnZpb3VzIGlz IHRoYXQgYnkgc3VwcG9ydGluZw0Kc3VzcGVuZCB0byBpZGxlLCBuZXcgZHJpdmVyIGJ1Z3MgYXJl IGdvaW5nIHRvIGJlIGlkZW50aWZpZWQgZm9yIGRyaXZlcnMNCnRoYXQgZG9uJ3QgcHJvcGVybHkg cHV0IGhhcmR3YXJlIGludG8gbG93IGVub3VnaCBwb3dlciBtb2RlcyBmb3IgdGhlIENQVQ0KdG8g Z28gaW50byB0aGUgcHJvcGVyIHN0YXRlLiAgVHJhZGl0aW9uYWxseSB3aXRoIFMzIHRoZSBCSU9T IHdvdWxkIGJlIHJlc3BvbnNpYmxlIA0KZm9yIHBvd2VyaW5nIGRldmljZXMgZG93biBiZWZvcmUg UzMgYW5kIGJhY2sgdXAgd2hlbiBleGl0aW5nIFMzLg0KVGhpcyBvbnVzIGlzIG5vdyBvbiB0aGUg T1MuDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogUGF1bCBNZW56ZWwg W21haWx0bzpwbWVuemVsQG1vbGdlbi5tcGcuZGVdDQo+IFNlbnQ6IFR1ZXNkYXksIEphbnVhcnkg MTcsIDIwMTcgODozNCBBTQ0KPiBUbzogUmFmYWVsIEouIFd5c29ja2kgPHJhZmFlbC5qLnd5c29j a2lAaW50ZWwuY29tPjsgTGltb25jaWVsbG8sIE1hcmlvDQo+IDxNYXJpb19MaW1vbmNpZWxsb0BE ZWxsLmNvbT4NCj4gQ2M6IFRob3JzdGVuIExlZW1odWlzIDxsaW51eEBsZWVtaHVpcy5pbmZvPjsg R3JlZyBLcm9haC1IYXJ0bWFuDQo+IDxncmVna2hAbGludXhmb3VuZGF0aW9uLm9yZz47IFRvbWFz IFdpbmtsZXIgPHRvbWFzLndpbmtsZXJAaW50ZWwuY29tPjsNCj4gSmFuIE5pZWh1c21hbm4gPGph bkBnb25kb3IuY29tPjsgVXN5c2tpbiwgQWxleGFuZGVyDQo+IDxhbGV4YW5kZXIudXN5c2tpbkBp bnRlbC5jb20+OyBsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnOyBDaGVuLCBZdSBDDQo+IDx5 dS5jLmNoZW5AaW50ZWwuY29tPjsgU2FydmVsYSwgVG9taSBQIDx0b21pLnAuc2FydmVsYUBpbnRl bC5jb20+OyBEYW5pZWwNCj4gQmx1ZW1hbiA8ZGFuaWVsQHF1b3JhLm9yZz47IExlbiBCcm93biA8 bGVuLmJyb3duQGludGVsLmNvbT47IGxpbnV4LQ0KPiBwbUB2Z2VyLmtlcm5lbC5vcmcNCj4gU3Vi amVjdDogUmVncmVzc2lvbiBvbiBEZWxsIFhQUzEzICh3YXM6IFtjaGFyLW1pc2MgZm9yIDQuMTAt cmM0IFYyXSBtZWk6IGJ1czoNCj4gZW5hYmxlIE9TIHZlcnNpb24gb25seSBmb3IgU1BUIGFuZCBu ZXdlcikNCj4gDQo+IERlYXIgUmFmYWVsLCBkZWFyIE1hcmlvLA0KPiANCj4gDQo+IE9uIDAxLzE3 LzE3IDA5OjE0LCBUaG9yc3RlbiBMZWVtaHVpcyB3cm90ZToNCj4gPiBHcmVnIEtyb2FoLUhhcnRt YW4gd3JvdGUgb24gMTYuMDEuMjAxNyAxMjowNToNCj4gPj4gT24gU3VuLCBKYW4gMTUsIDIwMTcg YXQgMTE6NTg6MzBBTSArMDEwMCwgR3JlZyBLcm9haC1IYXJ0bWFuIHdyb3RlOg0KPiA+Pj4gT24g U3VuLCBKYW4gMTUsIDIwMTcgYXQgMDc6MTk6MDNBTSArMDAwMCwgV2lua2xlciwgVG9tYXMgd3Jv dGU6DQo+ID4+Pj4+IFN1YmplY3Q6IFJlOiBbY2hhci1taXNjIGZvciA0LjEwLXJjNCBWMl0gbWVp OiBidXM6IGVuYWJsZSBPUw0KPiA+Pj4+PiB2ZXJzaW9uIG9ubHkgZm9yIFNQVCBhbmQgbmV3ZXIg T24gU2F0LCBKYW4gMTQsIDIwMTcgYXQgMDg6Mjc6MzFQTQ0KPiA+Pj4+PiArMDEwMCwgUGF1bCBN ZW56ZWwgd3JvdGU6DQo+ID4+Pj4+PiBPbiAyMDE3LTAxLTEzIDE0OjAwLCBHcmVnIEtyb2FoLUhh cnRtYW4gd3JvdGU6DQo+ID4+Pj4+Pj4gT24gV2VkLCBKYW4gMTEsIDIwMTcgYXQgMDM6MjY6MDZQ TSArMDEwMCwgUGF1bCBNZW56ZWwgd3JvdGU6DQo+ID4+Pj4+Pj4+IE9uIDAxLzExLzE3IDE1OjEy LCBXaW5rbGVyLCBUb21hcyB3cm90ZToNCj4gPj4+Pj4+Pj4+Pj4gT24gMDEvMTEvMTcgMTA6MjQs IFdpbmtsZXIsIFRvbWFzIHdyb3RlOg0KPiA+Pj4+Pj4+Pj4+Pj4+IE9uIFdlZCwgSmFuIDExLCAy MDE3IGF0IDAxOjI3OjIxQU0gKzAyMDAsIFRvbWFzIFdpbmtsZXINCj4gd3JvdGU6DQo+ID4+Pj4+ Pj4+Pj4+Pj4+IE9uIG9sZGVyIHBsYXRmb3JtcyB0aGUgY29tbWFuZCBzaG91bGQgYmUganVzdCBp Z25vcmVkDQo+IGJ5DQo+ID4+Pj4+Pj4+Pj4+Pj4+IHRoZSBmaXJtd2FyZSBidXQgc29tZSBvbGRl ciBwbGF0Zm9ybXMgbWlzYmVoYXZlIHNvIGl0J3MNCj4gPj4+Pj4+Pj4+Pj4+Pj4gc2FmZXIgdG8g c2VuZCB0aGUgY29tbWFuZCBvbmx5IGlmIHJlcXVpcmVkLg0KPiA+Pj4+Pj4+Pj4+Pj4+IFRoYW5r cyEgVGhpcyBmaXhlcyBzdXNwZW5kLXRvLXJhbSBmb3IgbWUgKG9uIGEgVGhpbmtwYWQNCj4geDIw MXMpLg0KPiA+Pj4+Pj4+Pj4+Pj4gV2hhdCBhYm91dCBEZWxsIFhQUzEzPw0KPiANCj4gVGhlcmUg aXMgYSByZWdyZXNzaW9uIHdpdGggTGludXggNC4xMC1yY3sxLDIsM30gb24gdGhlIEludGVsIEth YnkgTGFrZSBkZXZpY2UNCj4gRGVsbCBYUFMxMyAoOTM2MCkuIEhpdHRpbmcgdGhlIHBvd2VyIGJ1 dHRvbiwgdGhlIGxpZ2h0IG9mIHRoZSBwb3dlciBidXR0b24NCj4gbmV2ZXIgZ29lcyBvZmYuIFBy ZXNzaW5nIGl0IGFnYWluLCBub3RoaW5nIGhhcHBlbi4gT25seSBwcmVzc2luZyBpdCBsaWtlIHRl bg0KPiBzZWNvbmRzIHRoZSBzY3JlZW4gY29tZXMgYmFjayBmb3IgZml2ZSBzZWNvbmRzLCBhbmQg dGhlbiBpdCBzZWVtcyB0byB0cnkgdG8NCj4gc3VzcGVuZCBhZ2Fpbi4NCg0KDQpXaGVuIGl0J3Mg aW4gc3VzcGVuZCB0byBpZGxlLCB0aGUgRUMgd2lsbCBtb2RpZnkgc29tZSBiZWhhdmlvcnMgdGhh dCBhbGlnbg0KdG8gdmVuZG9yIHNwZWNpZmljYXRpb25zLiAgVGhlc2UgaW5jbHVkZSBib3RoIHRo ZSBwb3dlciBidXR0b24gYW5kIA0KdGhlIHBvd2VyIGxpZ2h0LiAgQm90aCBhcmUgYWN0dWFsbHkg ZXhwZWN0ZWQsIGJ1dCB0aGUgcG93ZXIgYnV0dG9uIGlzIA0KaW5kaWNhdGl2ZSBvZiBvdGhlciBw cm9ibGVtcyBpbiB0aGUgc3RhY2sgdGhhdCBuZWVkIHdvcmsuICANCkxldCBtZSBleHBsYWluIGhv dyBpdCBhbGwgd29ya3M6DQoNCldoZW4gaW4gc3VzcGVuZCB0byBpZGxlLCBpZiB0aGUgcG93ZXIg YnV0dG9uIGlzIHByZXNzZWQgb25seSBtb21lbnRhcmlseSAofiA8NnMpLA0KdGhlIEVDIHNlbmRz IGEgd2FrZXVwIGV2ZW50IHRvIHRoZSBmaXJtd2FyZSB3aGljaCBzZW5kcyBpdCB0byB0aGUgT1Mg DQp0aHJvdWdoIGFuIEFDUEkgZXZlbnQgdG8gdGhlIEludGVsIEhJRCBldmVudCBmaWx0ZXIgZHJp dmVyIChpbnRlbC1oaWQpLg0KDQpJZiBpdCdzIHByZXNzZWQgZm9yIGxvbmdlciAofjYtOSBzZWNv bmRzKSB0aGVuIGFuIElSUSBpcyB0cmlnZ2VyZWQgdG8gd2FrZSB1cCANCnRoZSBzeXN0ZW0gdGhl IHRyYWRpdGlvbmFsIHdheSB0aHJvdWdoIGEgcG93ZXIgYnV0dG9uIHByZXNzLg0KDQpJZiB0aGUg YnV0dG9uIGlzIHByZXNzZWQgZm9yIGEgdmVyeSBsb25nIHRpbWUgKH4xMCsgc2Vjb25kcykgdGhl biANCnRoZSBzeXN0ZW0gd2lsbCBiZSBmb3JjZSBwb3dlcmVkIG9mZi4NCg0KU28gaW4gdGhlIDw2 cyBzY2VuYXJpbywgdGhlIGludGVsLWhpZCBkcml2ZXIgaXMgcmVzcG9uc2libGUgdG8gcmVjZWl2 ZSB0aGUgQUNQSQ0KZXZlbnQgYW5kIHByb2Nlc3MgYWNjb3JkaW5nbHkuICBUaGUgbWFpbnRhaW5l ciBoYXMgYSBwYXRjaCByZWFkeSBmb3IgdGhlIGludGVsLWhpZA0KcG9ydGlvbiBvZiB0aGlzIHdv cmssIGJ1dCBpdCdzIGN1cnJlbnRseSBiZWluZyByZXZpZXdlZCBieSBJbnRlbCB0byBlbnN1cmUg aXQNCmNhbiBiZSBsZWdhbGx5IHN1Ym1pdHRlZCBpbnRvIHRoZSBrZXJuZWwuDQoNCkFmdGVyIHRo YXQgcGF0Y2ggaXMgYXBwcm92ZWQgZm9yIGRpc2Nsb3N1cmUsIHN1Ym1pdHRlZCBhbmQgYWNjZXB0 ZWQsIHRoZSBvdGhlciANCm1pc3NpbmcgcGFydCBpcyB0aGF0IHRoZSBBQ1BJIHN1YnN5c3RlbSBp dHNlbGYgaXMgZnJvemVuIHdoZW4gaW4gc3VzcGVuZCB0byBpZGxlLCANCnNvIHRoaXMgZXZlbnQg Y2FuJ3QgYmUgcmVjZWl2ZWQgYnkgaW50ZWwtaGlkLiAgVGhpcyBwYXJ0IG5lZWRzIGRpc2N1c3Np b24gb24gaG93IHRvIGZpeC4NCg0KSW4gdGhlIDYtOXMgc2NlbmFyaW8gdGhlcmUgYXJlIG5vIHBy b2JsZW1zIGFzIHRoaXMgaXMgdGhlIHRyYWRpdGlvbmFsIHdha2V1cA0KKGFzIHlvdSBmb3VuZCku DQoNCj4gDQo+ID4+Pj4+Pj4+Pj4+IFdpdGggTGludXMnIG1hc3RlciBicmFuY2ggZnJvbSB0b2Rh eSwgYW5kIEdyZWcncw0KPiA+Pj4+Pj4+Pj4+PiBjaGFyLW1pc2MtbGludXMgbWVyZ2VkDQo+ID4+ Pj4+Pj4+Pj4+IChNZXJnZTogODA3YjkzZTk5NWQxIDU0NmNmM2VmOWM5MiksIHRoZSByZWdyZXNz aW9uIGlzIHN0aWxsDQo+IHRoZXJlLg0KPiA+PiBb4oCmXQ0KPiA+Pj4+Pj4+PiBJIGFtIGN1cnJl bnRseSBiaXNlY3RpbmcgdG8gZmluZCB0aGUgY3VscHJpdC4gMTMgc3RlcHMgd2lsbA0KPiA+Pj4+ Pj4+PiB0YWtlIHNvbWUgdGltZSB0aG91Z2guDQo+ID4+Pj4+Pj4gSSBjYW4gZHVwbGljYXRlIHRo aXMgb24gbXkgbGFwdG9wIGhlcmUgYXMgd2VsbCA6KA0KPiA+Pj4+Pj4gV2hpY2ggc3lzdGVtIGRv IHlvdSBoYXZlPw0KPiA+Pj4+PiBBIERlbGwgWFBTMTMsIGRvbid0IGtub3cgd2hhdCBjcHUgdHlw ZSBpdCBpcywgaGVyZSdzIHRoZSBvdXRwdXQgb2YNCj4gPj4+Pj4gb25lIGNwdSBmcm9tIC9wcm9j L2NwdWluZm8NCj4gPj4gW+KApl0NCj4gPj4+Pj4gbW9kZWwgbmFtZQk6IEludGVsKFIpIENvcmUo VE0pIGk3LTY1NjBVIENQVSBAIDIuMjBHSHoNCj4gPj4+Pj4+PiBEaWQgeW91IGdldCBhbnl3aGVy ZSB3aXRoIHlvdXIgYmlzZWN0aW9uPw0KPiA+Pj4+Pj4gU29ycnksIEkgcmVwbGllZCB0byBhIGRp ZmZlcmVudCBtZXNzYWdlIHdpdGggbXkgc3RhdHVzLg0KPiA+Pj4+IFlvdSBhcmUgY2xvc2UhICBJ J2xsIHRyeSBiaXNlY3Rpb24gdG9tb3Jyb3cgaWYgSSBoYXZlIHNvbWUgc3BhcmUgdGltZS4NCj4g Pg0KPiA+IFBhdWwsIGRpZCB5b3UgZ2V0IGFueSBjbG9zZXI/IEkgaGF2ZSB0cm91YmxlIGZpbmRp bmcgdGltZSBmb3IgYSBwcm9wZXINCj4gPiBiaXNlY3Rpb24gKGl0J3MgYSBiaXQgY2hhb3RpYyBo ZXJlIHJpZ2h0IG5vdyA6LS8gKQ0KPiA+DQo+ID4+Pj4gR3JlZywgIGlzIHRoYXQgc2FtZSBMYXB0 b3AgbW9kZSBhcyBQYXVsJ3MsIHlvdSd2ZSBleHBlcmllbmNlIHRoZSBpc3N1ZQ0KPiBvbj8NCj4g Pj4+IEl0J3MgdGhlIHNhbWUgbW9kZWwgbmFtZSwgYnV0IGFzIHRoaXMgbW9kZWwgaGFzIGJlZW4g c2hpcHBlZCB3aXRoDQo+ID4+PiBtYW55IGRpZmZlcmVudCBDUFUgdmVyc2lvbnMgb3ZlciB0aGUg eWVhcnMsIEknbSBub3Qgc3VyZSBpZiBpdCBpcw0KPiA+Pj4gdGhlIGV4YWN0IHNhbWUgb25lLg0K PiA+DQo+ID4gR3JlZ3MgYWZhaWNzIGlzIFNreWxha2UgZ2VuZXJhdGlvbiAoWFBTIDEzICg5MzUw KSksIFBhdWwgYW5kIEkgaGF2ZSBhDQo+ID4gS2FieSBMYWtlIChYUFMgMTMgKDkzNjApKSwgd2hp Y2ggaXMgb25lIGdlbmVyYXRpb24gbmV3ZXIgKFdpZmkgaXMgYWxzbw0KPiA+IGRpZmZlcmVudDsg b3RoZXIgY29tcG9uZW50cyBsaWtlbHkgYXMgd2VsbCkuDQo+ID4NCj4gPj4gT2ssIDQuMTAtcmM0 IHNlZW1zIHRvIGhhdmUgZml4ZWQgdGhpcyBpc3N1ZSB3aXRoIG1lLiAgSSBkb24ndCBrbm93DQo+ ID4+IHdoYXQgaXQgd2FzLCBidXQgSSBjYW4ndCBkdXBsaWNhdGUgaXQgYW55bW9yZS4NCj4gPg0K PiA+IEdvb2QgdG8gaGVhci4NCj4gPg0KPiA+PiBQYXVsLCBhcmUgeW91IHN0aWxsIGhhdmluZyB0 aGlzIGlzc3VlPw0KPiA+DQo+ID4gRG9uJ3Qga25vdyBhYm91dCBQYXVsLCBidXQgSSBkaWQgYSBx dWljayB0ZXN0IHdpdGggcmM0IG9uIG15IG1hY2hpbmUNCj4gPiBhbmQgdGhlIGlzc3VlIGlzIHN0 aWxsIHRoZXJlIDotLw0KPiANCj4gSSBkaWRu4oCZdCB0ZXN0IExpbnV4IDQuMTAtcmM0IHlldCwg YnV0IEkgY29tcGxldGVkIHRoZSBiaXNlY3Rpb24uDQo+IA0KPiBgYGANCj4gNDA2ZTc5Mzg1ZjMy MjNkODIyNzJjZjJiZTg2YmM5NWNkMDAwYTI1OCBpcyB0aGUgZmlyc3QgYmFkIGNvbW1pdCBjb21t aXQNCj4gNDA2ZTc5Mzg1ZjMyMjNkODIyNzJjZjJiZTg2YmM5NWNkMDAwYTI1OA0KPiBBdXRob3I6 IFJhZmFlbCBKLiBXeXNvY2tpIDxyYWZhZWwuai53eXNvY2tpQGludGVsLmNvbT4NCj4gRGF0ZTog ICBNb24gTm92IDIxIDIyOjQ1OjQwIDIwMTYgKzAxMDANCj4gDQo+ICAgICAgUE0gLyBzbGVlcDog U3lzdGVtIHNsZWVwIHN0YXRlIHNlbGVjdGlvbiBpbnRlcmZhY2UgcmV3b3JrDQo+IA0KPiAgICAg IFRoZXJlIGFyZSBzeXN0ZW1zIGluIHdoaWNoIHRoZSBwbGF0Zm9ybSBkb2Vzbid0IHN1cHBvcnQg YW55IHNwZWNpYWwNCj4gICAgICBzbGVlcCBzdGF0ZXMsIHNvIHN1c3BlbmQtdG8taWRsZSAoUE1f U1VTUEVORF9GUkVFWkUpIGlzIHRoZSBvbmx5DQo+ICAgICAgYXZhaWxhYmxlIHN5c3RlbSBzbGVl cCBzdGF0ZS4gIEhvd2V2ZXIsIHNvbWUgdXNlciBzcGFjZSBmcmFtZXdvcmtzDQo+ICAgICAgb25s eSB1c2UgdGhlICJtZW0iIGFuZCAoc29tZXRpbWVzKSAic3RhbmRieSIgc2xlZXAgc3RhdGUgbGFi ZWxzLCBzbw0KPiAgICAgIHRoZSB1c2VycyBvZiB0aG9zZSBzeXN0ZW1zIG5lZWQgdG8gbW9kaWZ5 IHVzZXIgc3BhY2UgaW4gb3JkZXIgdG8gYmUNCj4gICAgICBhYmxlIHRvIHVzZSBzeXN0ZW0gc3Vz cGVuZCBhdCBhbGwgYW5kIHRoYXQgbWF5IGJlIGEgcGFpbiBpbiBwcmFjdGljZS4NCj4gDQo+ICAg ICAgQ29tbWl0IDAzOTlkNGRiM2VkZiAoUE0gLyBzbGVlcDogSW50cm9kdWNlIGNvbW1hbmQgbGlu ZSBhcmd1bWVudCBmb3INCj4gICAgICBzbGVlcCBzdGF0ZSBlbnVtZXJhdGlvbikgYXR0ZW1wdGVk IHRvIGFkZHJlc3MgdGhpcyBwcm9ibGVtIGJ5IGFkZGluZw0KPiAgICAgIGEgY29tbWFuZCBsaW5l IGFyZ3VtZW50IHRvIGNoYW5nZSB0aGUgbWVhbmluZyBvZiB0aGUgIm1lbSIgc3RyaW5nIGluDQo+ ICAgICAgL3N5cy9wb3dlci9zdGF0ZSB0byBtYWtlIGl0IHRyaWdnZXIgc3VzcGVuZC10by1pZGxl IChpbnN0ZWFkIG9mDQo+ICAgICAgc3VzcGVuZC10by1SQU0pLg0KPiANCj4gICAgICBIb3dldmVy LCB0aGVyZSBhbHNvIGFyZSBzeXN0ZW1zIGluIHdoaWNoIHRoZSBwbGF0Zm9ybSBkb2VzIHN1cHBv cnQNCj4gICAgICBzcGVjaWFsIHNsZWVwIHN0YXRlcywgYnV0IHN1c3BlbmQtdG8taWRsZSBpcyB0 aGUgcHJlZmVycmVkIG9uZSBhbnl3YXkNCj4gICAgICAoaXQgZXZlbiBtYXkgc2F2ZSBtb3JlIGVu ZXJneSB0aGFuIHRoZSBwbGF0Zm9ybS1wcm92aWRlZCBzbGVlcCBzdGF0ZXMNCj4gICAgICBpbiBz b21lIGNhc2VzKSBhbmQgdGhlIGFib3ZlIGNvbW1pdCBkb2Vzbid0IGhlbHAgaW4gdGhvc2UgY2Fz ZXMuDQo+IA0KPiAgICAgIEZvciB0aGlzIHJlYXNvbiwgcmV3b3JrIHRoZSBzeXN0ZW0gc2xlZXAg c3RhdGUgc2VsZWN0aW9uIGludGVyZmFjZQ0KPiAgICAgIGFnYWluIChidXQgcHJlc2VydmUgYmFj a3dhcmRzIGNvbXBhdGliaWxpYnkpLiAgTmFtZWx5LCBhZGQgYSBuZXcNCj4gICAgICBzeXNmcyBm aWxlLCAvc3lzL3Bvd2VyL21lbV9zbGVlcCwgdGhhdCB3aWxsIGNvbnRyb2wgdGhlIHN5c3RlbQ0K PiAgICAgIHN1c3BlbmQgbW9kZSB0cmlnZ2VyZWQgYnkgd3JpdGluZyAibWVtIiB0byAvc3lzL3Bv d2VyL3N0YXRlIChpbg0KPiAgICAgIGFuYWxvZ3kgd2l0aCB3aGF0IC9zeXMvcG93ZXIvZGlzayBk b2VzIGZvciBoaWJlcm5hdGlvbikuICBNYWtlIGl0DQo+ICAgICAgc2VsZWN0IHN1c3BlbmQtdG8t UkFNICgiZGVlcCIgc2xlZXApIGJ5IGRlZmF1bHQgKGlmIHN1cHBvcnRlZCkgYW5kDQo+ICAgICAg ZmFsbCBiYWNrIHRvIHN1c3BlbmQtdG8taWRsZSAoInMyaWRsZSIpIG90aGVyd2lzZSBhbmQgYWRk IGEgbmV3DQo+ICAgICAgY29tbWFuZCBsaW5lIGFyZ3VtZW50LCBtZW1fc2xlZXBfZGVmYXVsdCwg YWxsb3dpbmcgdGhhdCBkZWZhdWx0IHRvDQo+ICAgICAgYmUgb3ZlcnJpZGRlbiBpZiBuZWVkIGJl Lg0KPiANCj4gICAgICBBdCB0aGUgc2FtZSB0aW1lLCBkcm9wIHRoZSByZWxhdGl2ZV9zbGVlcF9z dGF0ZXMgY29tbWFuZCBsaW5lDQo+ICAgICAgYXJndW1lbnQgdGhhdCBkb2Vzbid0IG1ha2Ugc2Vu c2UgYW55IG1vcmUuDQo+IA0KPiAgICAgIFNpZ25lZC1vZmYtYnk6IFJhZmFlbCBKLiBXeXNvY2tp IDxyYWZhZWwuai53eXNvY2tpQGludGVsLmNvbT4NCj4gICAgICBUZXN0ZWQtYnk6IE1hcmlvIExp bW9uY2llbGxvIDxtYXJpby5saW1vbmNpZWxsb0BkZWxsLmNvbT4NCj4gDQo+IDowNDAwMDAgMDQw MDAwIGE1NzcwZmUwNDEzY2JlNzc5NGVhYjI4ZjcyZGZlOGVkZTFmMDkwYzINCj4gYTI4ODJjNzc2 NTk1MTdhYTcxMzdjOTMwZTBlN2YxNzhiYzc2YmZiZCBNICAgICAgRG9jdW1lbnRhdGlvbg0KPiA6 MDQwMDAwIDA0MDAwMCAyNTk0YjFhODc4MTUxNzNlOTcxOTllZjlkOWM1OTE4ZmVjMjJmY2ZkDQo+ IGZlMGI2OTk1M2JlNjUzNjQ0YzUzNjZhYzYzMTEzMWZkYmJkYjliY2MgTSAgICAgIGtlcm5lbA0K PiAkIGdpdCB0YWcgLS1jb250YWlucyA0MDZlNzkzODVmMzIyM2Q4MjI3MmNmMmJlODZiYzk1Y2Qw MDBhMjU4DQo+IHY0LjEwLXJjMQ0KPiB2NC4xMC1yYzINCj4gdjQuMTAtcmMzDQo+IGBgYA0KPiAN Cj4gUGxlYXNlIGZpbmQgdGhlIGNvbmZpZyBhbmQgdGhlIGJpc2VjdGlvbiBsb2cgYXR0YWNoZWQu IFNvbWV0aW1lcyBJIGhhZCB0bw0KPiBjaGVycnktcGljayBidWlsZCBmaXggY29tbWl0cyBmb3Ig UElFIGVuYWJsZWQgR0NDIG9uIHRvcC4NCj4gDQo+IFJhZmFlbCwgZG8geW91IHdhbnQgbWUgdG8g b3BlbiBhIGJ1ZyByZXBvcnQgZm9yIHRoYXQ/IE1hcmlvLCB3aGF0IHN5c3RlbXMNCj4gZGlkIHlv dSBhY3R1YWxseSB0ZXN0IHRoaXMgb24/IChXaHkgaXNu4oCZdCB0aGF0IGxpc3RlZCBpbiB0aGUg Y29tbWl0IG1lc3NhZ2U/KQ0KPiBNYXJpbywgZG8geW91IGhhdmUgYWNjZXNzIHRvIERlbGwgWFBT MTMgKDkzNjApIGRldmljZXMgdG8gaGVscCBnZXR0aW5nIHRoaXMNCj4gZml4ZWQ/DQo+IA0KDQpJ IHRlc3RlZCB0aGlzIG9uIHNldmVyYWwgc3lzdGVtcyBhbmQgZW5zdXJlZCB0aGF0IHRoZSBrZXJu ZWwgd2FzIGRvaW5nIHRoZQ0KcmlnaHQgdGhpbmcgaW4gdGVybXMgb2YgY2hvb3NpbmcgdGhlIGNv cnJlY3Qgc3RhdGUgdG8gZ28gaW50by4NCg0KQXMgSSBtZW50aW9uZWQgYWJvdmUsIHRob3NlIGJl aGF2aW9ycyBhcmUgY3VycmVudGx5IGV4cGVjdGVkIHVudGlsIHRoZXNlDQp0eXBlcyBpc3N1ZXMg YXJlIGlkZW50aWZpZWQgYW5kIGZpeGVkIGluIHRoZSBwcm9wZXIgc3Vic3lzdGVtcy4gIElmIHRo ZXkNCmVuZCB1cCBiZWluZyB0cm91Ymxlc29tZSB0byByZXNvbHZlLCBpdCdzIHBvc3NpYmxlIHRv IHF1aXJrIGluZGl2aWR1YWwgc3lzdGVtcywNCnRvIGRpc2FibGUgdGhpcyBiZWhhdmlvciBhbmQg cmV0dXJuIHRvIHRyYWRpdGlvbmFsIFMzIGJ1dCBJIHdvdWxkIHByZWZlciB0byBhY3R1YWxseSAN CmlkZW50aWZ5IGFuZCBmaXggdGhlIHZhcmlvdXMgcHJvYmxlbXMgc28gdGhhdCB3ZSBjYW4gcHVz aCB0aGUgTGludXggc3RhY2sgZm9yd2FyZC4NCg==