From mboxrd@z Thu Jan 1 00:00:00 1970 From: "james qian wang (Arm Technology China)" Subject: Re: [PATCH v2 2/2] drm/komeda: Adds komeda_kms_drop_master Date: Fri, 14 Jun 2019 05:46:04 +0000 Message-ID: <20190614054557.GA31993@james-ThinkStation-P300> References: <1560251589-31827-1-git-send-email-lowry.li@arm.com> <1560251589-31827-3-git-send-email-lowry.li@arm.com> <20190611123038.GC2458@phenom.ffwll.local> <20190612022617.GA8595@james-ThinkStation-P300> <20190613081727.GE23020@phenom.ffwll.local> <20190613082813.GM4173@e110455-lin.cambridge.arm.com> <20190613090814.GJ23020@phenom.ffwll.local> <20190613132436.GN4173@e110455-lin.cambridge.arm.com> <20190613143008.GO23020@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70074.outbound.protection.outlook.com [40.107.7.74]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1659A8923D for ; Fri, 14 Jun 2019 05:46:09 +0000 (UTC) In-Reply-To: <20190613143008.GO23020@phenom.ffwll.local> Content-Language: en-US Content-ID: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Liviu Dudau , "Lowry Li (Arm Technology China)" , "maarten.lankhorst@linux.intel.com" , "seanpaul@chromium.org" , "airlied@linux.ie" , Brian Starkey , Ayan Halder , "Jonathan Chai (Arm Technology China)" , "linux-kernel@vger.kernel.org" , "dri-devel@lists.freedesktop.org" , "Julien Yin (Arm Technology China)" , nd List-Id: dri-devel@lists.freedesktop.org T24gVGh1LCBKdW4gMTMsIDIwMTkgYXQgMDQ6MzA6MDhQTSArMDIwMCwgRGFuaWVsIFZldHRlciB3 cm90ZToNCj4gT24gVGh1LCBKdW4gMTMsIDIwMTkgYXQgMDI6MjQ6MzdQTSArMDEwMCwgTGl2aXUg RHVkYXUgd3JvdGU6DQo+ID4gT24gVGh1LCBKdW4gMTMsIDIwMTkgYXQgMTE6MDg6MTRBTSArMDIw MCwgRGFuaWVsIFZldHRlciB3cm90ZToNCj4gPiA+IE9uIFRodSwgSnVuIDEzLCAyMDE5IGF0IDA5 OjI4OjEzQU0gKzAxMDAsIExpdml1IER1ZGF1IHdyb3RlOg0KPiA+ID4gPiBPbiBUaHUsIEp1biAx MywgMjAxOSBhdCAxMDoxNzoyN0FNICswMjAwLCBEYW5pZWwgVmV0dGVyIHdyb3RlOg0KPiA+ID4g PiA+IE9uIFdlZCwgSnVuIDEyLCAyMDE5IGF0IDAyOjI2OjI0QU0gKzAwMDAsIGphbWVzIHFpYW4g d2FuZyAoQXJtIFRlY2hub2xvZ3kgQ2hpbmEpIHdyb3RlOg0KPiA+ID4gPiA+ID4gT24gVHVlLCBK dW4gMTEsIDIwMTkgYXQgMDI6MzA6MzhQTSArMDIwMCwgRGFuaWVsIFZldHRlciB3cm90ZToNCj4g PiA+ID4gPiA+ID4gT24gVHVlLCBKdW4gMTEsIDIwMTkgYXQgMTE6MTM6NDVBTSArMDAwMCwgTG93 cnkgTGkgKEFybSBUZWNobm9sb2d5IENoaW5hKSB3cm90ZToNCj4gPiA+ID4gPiA+ID4gPiBGcm9t OiAiTG93cnkgTGkgKEFybSBUZWNobm9sb2d5IENoaW5hKSIgPExvd3J5LkxpQGFybS5jb20+DQo+ ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiBUaGUga29tZWRhIGludGVybmFsIHJlc291 cmNlcyAocGlwZWxpbmVzKSBhcmUgc2hhcmVkIGJldHdlZW4gY3J0Y3MsDQo+ID4gPiA+ID4gPiA+ ID4gYW5kIHJlc291cmNlcyByZWxlYXNlIGJ5IGRpc2FibGVfY3J0Yy4gVGhpcyBjb21taXQgaXMg d29ya2luZyBmb3Igb25jZQ0KPiA+ID4gPiA+ID4gPiA+IHVzZXIgZm9yZ290IGRpc2FibGluZyBj cnRjIGxpa2UgYXBwIHF1aXQgYWJub21hbGx5LCBhbmQgdGhlbiB0aGUNCj4gPiA+ID4gPiA+ID4g PiByZXNvdXJjZXMgY2FuIG5vdCBiZSB1c2VkIGJ5IGFub3RoZXIgY3J0Yy4gQWRkcyBkcm9wX21h c3RlciB0bw0KPiA+ID4gPiA+ID4gPiA+IHNodXRkb3duIHRoZSBkZXZpY2UgYW5kIG1ha2Ugc3Vy ZSBhbGwgdGhlIGtvbWVkYSByZXNvdXJjZXMgaGF2ZSBiZWVuDQo+ID4gPiA+ID4gPiA+ID4gcmVs ZWFzZWQgYW5kIGNhbiBiZSB1c2VkIGZvciB0aGUgbmV4dCB1c2FnZS4NCj4gPiA+ID4gPiA+ID4g Pg0KPiA+ID4gPiA+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IExvd3J5IExpIChBcm0gVGVjaG5vbG9n eSBDaGluYSkgPGxvd3J5LmxpQGFybS5jb20+DQo+ID4gPiA+ID4gPiA+ID4gLS0tDQo+ID4gPiA+ ID4gPiA+ID4gIGRyaXZlcnMvZ3B1L2RybS9hcm0vZGlzcGxheS9rb21lZGEva29tZWRhX2ttcy5j IHwgMTMgKysrKysrKysrKysrKw0KPiA+ID4gPiA+ID4gPiA+ICAxIGZpbGUgY2hhbmdlZCwgMTMg aW5zZXJ0aW9ucygrKQ0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9hcm0vZGlzcGxheS9rb21lZGEva29tZWRhX2ttcy5jIGIvZHJp dmVycy9ncHUvZHJtL2FybS9kaXNwbGF5L2tvbWVkYS9rb21lZGFfa21zLmMNCj4gPiA+ID4gPiA+ ID4gPiBpbmRleCA4NTQzODYwLi42NDdiY2U1IDEwMDY0NA0KPiA+ID4gPiA+ID4gPiA+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9hcm0vZGlzcGxheS9rb21lZGEva29tZWRhX2ttcy5jDQo+ID4gPiA+ ID4gPiA+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2FybS9kaXNwbGF5L2tvbWVkYS9rb21lZGFf a21zLmMNCj4gPiA+ID4gPiA+ID4gPiBAQCAtNTQsMTEgKzU0LDI0IEBAIHN0YXRpYyBpcnFyZXR1 cm5fdCBrb21lZGFfa21zX2lycV9oYW5kbGVyKGludCBpcnEsIHZvaWQgKmRhdGEpDQo+ID4gPiA+ ID4gPiA+ID4gIHJldHVybiBzdGF0dXM7DQo+ID4gPiA+ID4gPiA+ID4gIH0NCj4gPiA+ID4gPiA+ ID4gPg0KPiA+ID4gPiA+ID4gPiA+ICsvKiBLb21lZGEgaW50ZXJuYWwgcmVzb3VyY2VzIChwaXBl bGluZXMpIGFyZSBzaGFyZWQgYmV0d2VlbiBjcnRjcywgYW5kIHJlc291cmNlcw0KPiA+ID4gPiA+ ID4gPiA+ICsgKiBhcmUgcmVsZWFzZWQgYnkgZGlzYWJsZV9jcnRjLiBCdXQgaWYgdXNlciBmb3Jn ZXQgZGlzYWJsaW5nIGNydGMgbGlrZSBhcHAgcXVpdA0KPiA+ID4gPiA+ID4gPiA+ICsgKiBhYm5v cm1hbGx5LCB0aGUgcmVzb3VyY2VzIGNhbiBub3QgYmUgdXNlZCBieSBhbm90aGVyIGNydGMuDQo+ ID4gPiA+ID4gPiA+ID4gKyAqIFVzZSBkcm9wX21hc3RlciB0byBzaHV0ZG93biB0aGUgZGV2aWNl IGFuZCBtYWtlIHN1cmUgYWxsIHRoZSBrb21lZGEgcmVzb3VyY2VzDQo+ID4gPiA+ID4gPiA+ID4g KyAqIGhhdmUgYmVlbiByZWxlYXNlZCwgYW5kIGNhbiBiZSB1c2VkIGZvciB0aGUgbmV4dCB1c2Fn ZS4NCj4gPiA+ID4gPiA+ID4gPiArICovDQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+IE5v LiBJZiB3ZSB3YW50IHRoaXMsIHdlIG5lZWQgdG8gaW1wbGVtZW50IHRoaXMgYWNyb3NzIGRyaXZl cnMsIG5vdCB3aXRoDQo+ID4gPiA+ID4gPiA+IHBlci12ZW5kb3IgaGFja3MuDQo+ID4gPiA+ID4g PiA+DQo+ID4gPiA+ID4gPiA+IFRoZSBrZXJuZWxkb2Mgc2hvdWxkIGhhdmUgYmVlbiBhIHNvbGlk IGhpbnQ6ICJPbmx5IHVzZWQgYnkgdm13Z2Z4LiINCj4gPiA+ID4gPiA+ID4gLURhbmllbA0KPiA+ ID4gPiA+ID4NCj4gPiA+ID4gPiA+IEhpIERhbmllbDoNCj4gPiA+ID4gPiA+IFRoaXMgZHJvcF9t YXN0ZXIgaXMgcmVhbGx5IHdoYXQgd2Ugd2FudCwgY2FuIHdlIHVwZGF0ZSB0aGUgZG9jIGFuZA0K PiA+ID4gPiA+ID4gYWRkIGtvbWVkYSBhcyBhIHVzZXIgb2YgdGhpcyBoYWNrcyBsaWtlICJ1c2Vk IGJ5IHZtd2ZneCBhbmQga29tZWRhIiwNCj4gPiA+ID4gPiA+IG9yIG1heWJlIGRpcmVjdGx5IHBy b21vdGUgdGhpcyBwZXItdmVuZG9yIGhhY2tzIGFzIGFuIG9wdGlvbmFsIGNoaXANCj4gPiA+ID4g PiA+IGZ1bmN0aW9uID8NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IFN0aWxsIG5vLCBiZWNhdXNlIGl0 IHdvdWxkIG1lYW4gZGlmZmVyZW50IGJlaGF2aW91ciBmb3IgYXJtL2tvbWVkYQ0KPiA+ID4gPiA+ IGNvbXBhcmVkIHRvIGV2ZXJ5b25lIGVsc2UuIEFuZCB3ZSByZWFsbHkgZG9uJ3Qgd2FudCB0aGlz LCBiZWNhdXNlIHRoaXMNCj4gPiA+ID4gPiB3b3VsZCBjb21wbGV0ZWx5IGJyZWFrIGZsaWNrZXIt bGVzcyB2dC1zd2l0Y2hpbmcuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBDdXJyZW50bHkgdGhlIG9u bHkgZmFsbGJhY2sgZm9yIHRoaXMgY2FzZSBpcyB0aGUgbGFzdGNsb3NlIGhhbmRsZXIsIHdoaWNo DQo+ID4gPiA+ID4gYXRtIGp1c3QgcmVzdG9yZXMgZmJjb24vZmJkZXYuIElmIHlvdSB3YW50IHRv IGNoYW5nZS9leHRlbmQgdGhhdCB0byB3b3JrDQo+ID4gPiA+ID4gd2l0aG91dCBmYmRldiwgdGhl biB0aGF0J3MgdGhlIHBsYWNlIHRvIGRvIHRoZSBjaGFuZ2UuIEFuZCBhY3Jvc3MgX2FsbF8NCj4g PiA+ID4gPiBkcm0ga21zIGRyaXZlcnMsIHNvIHRoYXQgd2UgaGF2ZSBjb25zaXN0ZW50IGJlaGF2 aW91ci4NCj4gPiA+ID4NCj4gPiA+ID4gU2xpZ2h0bHkgdW5yZWxhdGVkLCBqdXN0IHRoaW5raW5n IG9mIGEgc29sdXRpb24gYW5kIHdhbnRlZCBjb25maXJtYXRpb24vZG91YmxlDQo+ID4gPiA+IGNo ZWNraW5nOiBjYW4gYSBDUlRDIGJlIGluc3RhbnRpYXRlZCB3aXRob3V0IGFueSBwbGFuZXMgKG9y IHdpdGhvdXQgYSBwcmltYXJ5DQo+ID4gPiA+IHBsYW5lKT8NCj4gPiA+DQo+ID4gPiBXaXRob3V0 IGEgcHJpbWFyeSBwbGFuZSBtYXliZSBub3Qgc28gcmVjb21tZW5kZWQsIGJlY2F1c2UgaXQgd291 bGQgYnJlYWsNCj4gPiA+IGFsbCB0aGUgbGVnYWN5IHVzZXJzcGFjZS4gTWlnaHQgZXZlbiByZXN1 bHQgaW4gc29tZSBvb3BzZXMsIG5vdCBzdXJlIHdlDQo+ID4gPiBjaGVjayBmb3IgY3J0Yy0+cHJp bWFyeSAhPSBOVUxMLg0KPiA+ID4NCj4gPiA+IEknbSBub3Qgc3VyZSB3aGF0IHlvdSBtZWFuIGFi b3V0IGluc3RhbnRpYXRpbmcgaXQgd2l0aG91dCBhbnkgcGxhbmUgYXQNCj4gPiA+IGFsbC4gVGhh dCB3b3VsZCBiZSByYXRoZXIgdXNlbGVzcy4NCj4gPg0KPiA+IEFncmVlLCBhbmQgSSB0aGluayBJ IGhhdmUgb25lIHdheSBvZiBzb2x2aW5nIHRoZSBzY2VuYXJpbyBMb3dyeSBhbmQgSmFtZXMgYXJl DQo+ID4gdHJ5aW5nIHRvIGNvdmVyLiBCYXNpY2FsbHksIGtvbWVkYSBoYXMgMiBwaXBlbGluZXMg dGhhdCBhcmUgZXhwb3NlZCBhcyAyIGNydGNzLg0KPiA+IEhvd2V2ZXIsIGxheWVycyAocGxhbmVz IGluIERSTSkgY2FuIGJlIGFzc29jaWF0ZWQgd2l0aCBhbnkgb2YgdGhlIHBpcGVsaW5lcyBhbmQN Cj4gPiBpdCBpcyBwb3NzaWJsZSB0byBoYXZlIGEgRFJNIG1hc3RlciBvcGVuIHVwIGNydGMwIGFu ZCBlbmFibGUgYWxsIHBvc3NpYmxlIHBsYW5lcywNCj4gPiB3aGljaCB3b3VsZCBsZWF2ZSBjcnRj MSB3aXRoIG5vIGF2YWlsYWJsZSBsYXllciB0byB1c2UgKGJ1dCB0ZWNobmljYWxseSBzdGlsbCB2 aXNpYmxlIHRvDQo+ID4gdXNlcnNwYWNlLCBhcyBpdCBoYXMgYmVlbiBkcm1fY3J0Y19pbml0LWVk LiBKYW1lcyBhbmQgTG93cnkgYXJlIHRyeWluZyB0byBnaXZlDQo+ID4gYW5vdGhlciBtYXN0ZXIg YSBjaGFuY2Ugb2YgZW5hYmxpbmcgY3J0YzEgaWYgcHJldmlvdXMgbWFzdGVyIGRyb3BzIHRoZQ0K PiA+IG93bmVyc2hpcCBvZiBjcnRjMCB3aXRob3V0IGRpc2FibGluZyBpdC4gU28gb25lIHNvbHV0 aW9uIEknbSB0aGlua2luZyBvZiBpcyB0bw0KPiA+IHRpZSBvbmUgb2YgdGhlIGxheWVycy9wbGFu ZXMgdG8gY3J0YzEgcmVnYXJkbGVzcyBpZiB0aGF0IHBpcGVsaW5lIGlzIGVuYWJsZWQgb3INCj4g PiBub3QuDQo+ID4NCj4gPiBBbHRlcm5hdGl2ZWx5LCB3ZSBuZWVkIGEgbW9yZSBnZW5lcmljIHNv bHV0aW9uIGZvciByZS1hbGxvY2F0aW5nIHJlc291cmNlcw0KPiA+IGJldHdlZW4gQ1JUQ3MgdGhh dCBtaWdodCBiZSBlbmFibGVkIGF0IGRpZmZlcmVudCB0aW1lcy4gSWRlYXMgb24gaG93IHVzZXJz cGFjZQ0KPiA+IHNob3VsZCBoYW5kbGUgaXQgZmlyc3QgYXJlIHdlbGNvbWUgYXMgd2VsbC4NCj4N Cj4gVWgsIHlvdSBjYW4ndCBoYXZlIG1vcmUgdGhhbiBvbmUgYWN0aXZlIG1hc3Rlci4gQW5kIHRo YXQgb3RoZXIgbWFzdGVyDQo+IG5lZWRzIHRvIGNsZWFuIHVwIHRoZSBtZXNzIGxlZnQgYmVoaW5k IGJ5IHRoZSBwcmV2aW91cyBvbmUuIEdlbmVyYWxseSB0aGF0DQoNClllcyBrb21lZGEgbmVlZHMg c3VjaCBjbGVhbiB1cCAoZGlzYWJsZWluZyBhbGwgcGxhbmVzIGlzDQplbm91Z2ggZm9yIHN1Y2gg Y2xlYW51cCksIGJ1dCBubyBtYXR0ZXIgaXQgaGFuZGxlcyBieSBvbGQgbWFzdGVyIG9yDQp0aGUg bmV3IG1hc3RlciwganVzdCBiZWZvcmUgdGhlIG5ldyBtYXN0ZXIgZW5hYmxlIHRoZSBjcnRjIGlz IGVub3V0aA0KZm9yIGtvbWVkYS4NCkkgdGhpbmsgdGhlIHByb2JsZW0gaGVyZSBpcyB3aGljaCBw bGFjZSB3ZSBzaG91bGQgZG8gc3VjaCBjbGVhbnVwOg0KVVNFUiBvciBLRVJORUwgbW9kZS4NCg0K Rm9yIGtlcm5lbDogc2V0X21hc3Rlci9kcm9wX21hc3RlciBpcyBhIGdvb2QgcGxhY2UuDQpGb3Ig dXNlcjogZW50ZXJfdnQgYW5kIGxlYXZlX3Z0Lg0KDQpXaHkgSSBkZWNpZGUgdG8gYWRkIGl0IHRv IGtlcm5lbDoNCi0gU28gbWFueSB1c2VyczogWC93YXlsYW5kL0FuZHJvaWQsIGF2b2lkIGR1cGxp ZGF0ZWQgY29kZS4NCi0gd2UgYWxzbyBwbGFuIHRvIHN1cHBvcnQgdGhpcmQtcGFydCB1c2VyLiB0 aGV5IG1heSBub3QgZG8gc3VjaA0KICBjbGVhbnVwIGZvciBrb21lZGEuDQoNClRoYW5rcw0KSmFt ZXMNCg0KPiBtZWFucyBkaXNhYmxpbmcgYWxsIHRoZSBwbGFuZXMsIGxpa2UgZS5nLiBmYmRldiBl bXVsYXRpb24gZG9lcyAoYnV0DQo+IHRoZXJlJ3MgYSBsb3QgbW9yZSB3ZSBzaG91bGQgcHJvYmFi bHkgY2xlYW4gdXAsIGN1cnJlbnQgY29kZSBpcyBraW5kYSBqdXN0DQo+IGdvb2QgZW5vdWdoKS4N Cj4NCj4gSWYgeW91IHdhbnQgbXVsdGlwbGUgY29uY3VycmVudCBtYXN0ZXJzIG9uIHRoZSBzYW1l IGh3LCB0aGVuIHlvdSBuZWVkIGRybQ0KPiBsZWFzZXMsIGFuZCB0aGVyZSB5b3UgY2FuIGxpbWl0 IHRoZSBsZWFzZXMgdG8gaG93ZXZlciBtYW55IHBsYW5lcyB5b3UNCj4gdGhpbmsgdGhleSBuZWVk Lg0KPiAtRGFuaWVsDQo+DQo+ID4NCj4gPiBCZXN0IHJlZ2FyZHMsDQo+ID4gTGl2aXUNCj4gPg0K PiA+ID4gLURhbmllbA0KPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4gQmVzdCByZWdhcmRzLA0KPiA+ ID4gPiBMaXZpdQ0KPiA+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4ga21zIGlzIGEgY3Jvc3Mt dmVuZG9yIGFwaSwgdmVuZG9yIGhhY2tzIGFyZSB2ZXJ5LCB2ZXJ5IG11Y2ggbm90IGNvb2wuDQo+ ID4gPiA+ID4gLURhbmllbA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gSmFt ZXMNCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gK3N0YXRpYyB2b2lkIGtvbWVkYV9rbXNf ZHJvcF9tYXN0ZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwNCj4gPiA+ID4gPiA+ID4gPiArICAg c3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYpDQo+ID4gPiA+ID4gPiA+ID4gK3sNCj4gPiA+ID4g PiA+ID4gPiArZHJtX2F0b21pY19oZWxwZXJfc2h1dGRvd24oZGV2KTsNCj4gPiA+ID4gPiA+ID4g PiArfQ0KPiA+ID4gPiA+ID4gPiA+ICsNCj4gPiA+ID4gPiA+ID4gPiAgc3RhdGljIHN0cnVjdCBk cm1fZHJpdmVyIGtvbWVkYV9rbXNfZHJpdmVyID0gew0KPiA+ID4gPiA+ID4gPiA+ICAuZHJpdmVy X2ZlYXR1cmVzID0gRFJJVkVSX0dFTSB8IERSSVZFUl9NT0RFU0VUIHwgRFJJVkVSX0FUT01JQyB8 DQo+ID4gPiA+ID4gPiA+ID4gICAgIERSSVZFUl9QUklNRSB8IERSSVZFUl9IQVZFX0lSUSwNCj4g PiA+ID4gPiA+ID4gPiAgLmxhc3RjbG9zZT0gZHJtX2ZiX2hlbHBlcl9sYXN0Y2xvc2UsDQo+ID4g PiA+ID4gPiA+ID4gIC5pcnFfaGFuZGxlcj0ga29tZWRhX2ttc19pcnFfaGFuZGxlciwNCj4gPiA+ ID4gPiA+ID4gPiArLm1hc3Rlcl9kcm9wPSBrb21lZGFfa21zX2Ryb3BfbWFzdGVyLA0KPiA+ID4g PiA+ID4gPiA+ICAuZ2VtX2ZyZWVfb2JqZWN0X3VubG9ja2VkPSBkcm1fZ2VtX2NtYV9mcmVlX29i amVjdCwNCj4gPiA+ID4gPiA+ID4gPiAgLmdlbV92bV9vcHM9ICZkcm1fZ2VtX2NtYV92bV9vcHMs DQo+ID4gPiA+ID4gPiA+ID4gIC5kdW1iX2NyZWF0ZT0ga29tZWRhX2dlbV9jbWFfZHVtYl9jcmVh dGUsDQo+ID4gPiA+ID4gPiA+ID4gLS0NCj4gPiA+ID4gPiA+ID4gPiAxLjkuMQ0KPiA+ID4gPiA+ ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18NCj4gPiA+ID4gPiA+ID4gPiBkcmktZGV2ZWwgbWFpbGluZyBsaXN0DQo+ ID4gPiA+ID4gPiA+ID4gZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZw0KPiA+ID4gPiA+ ID4gPiA+IGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJp LWRldmVsDQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+IC0tDQo+ID4gPiA+ID4gPiA+IERh bmllbCBWZXR0ZXINCj4gPiA+ID4gPiA+ID4gU29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBv cmF0aW9uDQo+ID4gPiA+ID4gPiA+IGh0dHA6Ly9ibG9nLmZmd2xsLmNoDQo+ID4gPiA+ID4gPiBJ TVBPUlRBTlQgTk9USUNFOiBUaGUgY29udGVudHMgb2YgdGhpcyBlbWFpbCBhbmQgYW55IGF0dGFj aG1lbnRzIGFyZSBjb25maWRlbnRpYWwgYW5kIG1heSBhbHNvIGJlIHByaXZpbGVnZWQuIElmIHlv dSBhcmUgbm90IHRoZSBpbnRlbmRlZCByZWNpcGllbnQsIHBsZWFzZSBub3RpZnkgdGhlIHNlbmRl ciBpbW1lZGlhdGVseSBhbmQgZG8gbm90IGRpc2Nsb3NlIHRoZSBjb250ZW50cyB0byBhbnkgb3Ro ZXIgcGVyc29uLCB1c2UgaXQgZm9yIGFueSBwdXJwb3NlLCBvciBzdG9yZSBvciBjb3B5IHRoZSBp bmZvcm1hdGlvbiBpbiBhbnkgbWVkaXVtLiBUaGFuayB5b3UuDQo+ID4gPiA+ID4gPiBfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0KPiA+ID4gPiA+ID4gZHJp LWRldmVsIG1haWxpbmcgbGlzdA0KPiA+ID4gPiA+ID4gZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNr dG9wLm9yZw0KPiA+ID4gPiA+ID4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9kcmktZGV2ZWwNCj4gPiA+ID4gPg0KPiA+ID4gPiA+IC0tDQo+ID4gPiA+ID4g RGFuaWVsIFZldHRlcg0KPiA+ID4gPiA+IFNvZnR3YXJlIEVuZ2luZWVyLCBJbnRlbCBDb3Jwb3Jh dGlvbg0KPiA+ID4gPiA+IGh0dHA6Ly9ibG9nLmZmd2xsLmNoDQo+ID4gPiA+DQo+ID4gPiA+IC0t DQo+ID4gPiA+ID09PT09PT09PT09PT09PT09PT09DQo+ID4gPiA+IHwgSSB3b3VsZCBsaWtlIHRv IHwNCj4gPiA+ID4gfCBmaXggdGhlIHdvcmxkLCAgfA0KPiA+ID4gPiB8IGJ1dCB0aGV5J3JlIG5v dCB8DQo+ID4gPiA+IHwgZ2l2aW5nIG1lIHRoZSAgIHwNCj4gPiA+ID4gIFwgc291cmNlIGNvZGUh ICAvDQo+ID4gPiA+ICAgLS0tLS0tLS0tLS0tLS0tDQo+ID4gPiA+ICAgICDCr1xfKOODhClfL8Kv DQo+ID4gPiA+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f DQo+ID4gPiA+IGRyaS1kZXZlbCBtYWlsaW5nIGxpc3QNCj4gPiA+ID4gZHJpLWRldmVsQGxpc3Rz LmZyZWVkZXNrdG9wLm9yZw0KPiA+ID4gPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA0KPiA+ID4NCj4gPiA+IC0tDQo+ID4gPiBEYW5pZWwg VmV0dGVyDQo+ID4gPiBTb2Z0d2FyZSBFbmdpbmVlciwgSW50ZWwgQ29ycG9yYXRpb24NCj4gPiA+ IGh0dHA6Ly9ibG9nLmZmd2xsLmNoDQo+ID4NCj4gPiAtLQ0KPiA+ID09PT09PT09PT09PT09PT09 PT09DQo+ID4gfCBJIHdvdWxkIGxpa2UgdG8gfA0KPiA+IHwgZml4IHRoZSB3b3JsZCwgIHwNCj4g PiB8IGJ1dCB0aGV5J3JlIG5vdCB8DQo+ID4gfCBnaXZpbmcgbWUgdGhlICAgfA0KPiA+ICBcIHNv dXJjZSBjb2RlISAgLw0KPiA+ICAgLS0tLS0tLS0tLS0tLS0tDQo+ID4gICAgIMKvXF8o44OEKV8v wq8NCj4gPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0K PiA+IGRyaS1kZXZlbCBtYWlsaW5nIGxpc3QNCj4gPiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnDQo+ID4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9kcmktZGV2ZWwNCj4NCj4gLS0NCj4gRGFuaWVsIFZldHRlcg0KPiBTb2Z0d2FyZSBFbmdpbmVl ciwgSW50ZWwgQ29ycG9yYXRpb24NCj4gaHR0cDovL2Jsb2cuZmZ3bGwuY2gNCg0KLS0NClJldmll d2VkLWJ5OiBKYW1lcyBRaWFuIFdhbmcgKEFybSBUZWNobm9sb2d5IENoaW5hKSA8amFtZXMucWlh bi53YW5nQGFybS5jb20+DQpJTVBPUlRBTlQgTk9USUNFOiBUaGUgY29udGVudHMgb2YgdGhpcyBl bWFpbCBhbmQgYW55IGF0dGFjaG1lbnRzIGFyZSBjb25maWRlbnRpYWwgYW5kIG1heSBhbHNvIGJl IHByaXZpbGVnZWQuIElmIHlvdSBhcmUgbm90IHRoZSBpbnRlbmRlZCByZWNpcGllbnQsIHBsZWFz ZSBub3RpZnkgdGhlIHNlbmRlciBpbW1lZGlhdGVseSBhbmQgZG8gbm90IGRpc2Nsb3NlIHRoZSBj b250ZW50cyB0byBhbnkgb3RoZXIgcGVyc29uLCB1c2UgaXQgZm9yIGFueSBwdXJwb3NlLCBvciBz dG9yZSBvciBjb3B5IHRoZSBpbmZvcm1hdGlvbiBpbiBhbnkgbWVkaXVtLiBUaGFuayB5b3UuDQpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwg bWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWw=