From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 1/3] drm/i915: Add enum aux_ch and clean up the aux init to use it Date: Thu, 22 Feb 2018 14:48:48 +0200 Message-ID: <20180222124848.GV5453@intel.com> References: <20180220170524.12303-1-ville.syrjala@linux.intel.com> <20180220193109.GE27433@intel.com> <1519285729.2358.13.camel@dk-H97M-D3H> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id A20B56ED89 for ; Thu, 22 Feb 2018 12:48:51 +0000 (UTC) Content-Disposition: inline In-Reply-To: <1519285729.2358.13.camel@dk-H97M-D3H> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Pandiyan, Dhinakaran" Cc: "intel-gfx@lists.freedesktop.org" , "Vivi, Rodrigo" List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCBGZWIgMjIsIDIwMTggYXQgMDc6MjU6MjJBTSArMDAwMCwgUGFuZGl5YW4sIERoaW5h a2FyYW4gd3JvdGU6Cj4gCj4gCj4gCj4gT24gVHVlLCAyMDE4LTAyLTIwIGF0IDExOjMxIC0wODAw LCBSb2RyaWdvIFZpdmkgd3JvdGU6Cj4gPiBPbiBUdWUsIEZlYiAyMCwgMjAxOCBhdCAwNzowNToy MlBNICswMjAwLCBWaWxsZSBTeXJqYWxhIHdyb3RlOgo+ID4gPiBGcm9tOiBWaWxsZSBTeXJqw6Rs w6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgo+ID4gPiAKPiA+ID4gU2luY2Ugd2Ug bm8gbG9uZ2VyIGhhdmUgYSAxOjEgY29ycmVzcG9uZGVuY2UgYmV0d2VlbiBwb3J0cyBhbmQgQVVY Cj4gPiA+IGNoYW5uZWxzLCBsZXQncyBnaXZlIEFVWCBjaGFubmVscyB0aGVpciBvd24gZW51bS4g TWFrZXMgaXQgZWFzaWVyCj4gPiA+IHRvIHRlbGwgdGhlIGFwcGxlcyBmcm9tIHRoZSBvcmFuZ2Vz LCBhbmQgd2UgZ2V0IHJpZCBvZiB0aGUKPiA+ID4gcG9ydCBFIEFVWCBwb3dlciBkb21haW4gRklY TUUgc2luY2Ugd2Ugbm93IGRlcml2ZSB0aGUgcG93ZXIgZG9tYWluCj4gPiA+IGZyb20gdGhlIGFj dHVhbCBBVVggQ0guCj4gPiAKPiA+IAo+ID4gQmVhdXRpZnVsIGNsZWFuLXVwLiBJIGhhZCB0aGlz IGluIGEgdG9kbyBsaXN0IHllYXJzIGFnbyBhbmQKPiA+IGFmdGVyIHN0YXlpbmcgb24gdGhlIGJv dHRvbSBmb3Igc28gbG9uZyBJIGhhZCByZW1vdmVkIGl0IGZyb20gdGhlcmUuLi4KPiA+ID4gCj4g PiA+IHYyOiBSZWJhc2UgZHVlIHRvIEFVWCBGCj4gPiAKPiA+IHNvcnJ5IGFuZCB0aGFua3MhIDop Cj4gPiAKPiA+ID4gCj4gPiA+IFNpZ25lZC1vZmYtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUu c3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cj4gPiAKPiA+IEkgd29uZGVyZWQgaWYgYXQgbGVhc3Qg YXV4X3Bvd2VyX2RvbWFpbiBwYXJ0IGNvdWxkIGJlIGluIGEKPiA+IHNlcGFyYXRlZCBwYXRjaCBi ZWNhdXNlIGJ5IHRoZSBlbmQgSSB3YXMgYSBiaXQgY29uZnVzZWQuLi4KPiA+IEJ1dCBpbiB0aGUg ZW5kIEkgY291bGQgcHV0IGFsbCBwaWVjZXMgdG9nZXRoZXIgYW5kIGl0IG1hZGUgc2Vuc2UKPiA+ IGFnYWluLiBTbyBvbmUgcGF0Y2ggZm9yIGVhc3kgYmFjayBwb3J0aW5nIHNlZW1zIGJldHRlci4K PiA+IAo+ID4gUmV2aWV3ZWQtYnk6IFJvZHJpZ28gVml2aSA8cm9kcmlnby52aXZpQGludGVsLmNv bT4KPiA+IAo+ID4gPiAtLS0KPiA+ID4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgg ICAgICB8ICAgOCArLQo+ID4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5o IHwgIDExICsrCj4gPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jICAgICAgfCAy NDAgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KPiA+ID4gIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rydi5oICAgICB8ICAgMSArCj4gPiA+ICA0IGZpbGVzIGNoYW5nZWQs IDEzMSBpbnNlcnRpb25zKCspLCAxMjkgZGVsZXRpb25zKC0pCj4gPiA+IAo+ID4gPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfcmVnLmgKPiA+ID4gaW5kZXggMTQxMmFiY2IyN2Q0Li4zOWQ2MjQwODNhMTcgMTAw NjQ0Cj4gPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKPiA+ID4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAo+ID4gPiBAQCAtNTM0Nyw4ICs1MzQ3 LDggQEAgZW51bSB7Cj4gPiA+ICAjZGVmaW5lIF9EUEZfQVVYX0NIX0RBVEE0CShkZXZfcHJpdi0+ aW5mby5kaXNwbGF5X21taW9fb2Zmc2V0ICsgMHg2NDUyMCkKPiA+ID4gICNkZWZpbmUgX0RQRl9B VVhfQ0hfREFUQTUJKGRldl9wcml2LT5pbmZvLmRpc3BsYXlfbW1pb19vZmZzZXQgKyAweDY0NTI0 KQo+ID4gPiAgCj4gPiA+IC0jZGVmaW5lIERQX0FVWF9DSF9DVEwocG9ydCkJX01NSU9fUE9SVChw b3J0LCBfRFBBX0FVWF9DSF9DVEwsIF9EUEJfQVVYX0NIX0NUTCkKPiA+ID4gLSNkZWZpbmUgRFBf QVVYX0NIX0RBVEEocG9ydCwgaSkJX01NSU8oX1BPUlQocG9ydCwgX0RQQV9BVVhfQ0hfREFUQTEs IF9EUEJfQVVYX0NIX0RBVEExKSArIChpKSAqIDQpIC8qIDUgcmVnaXN0ZXJzICovCj4gPiA+ICsj ZGVmaW5lIERQX0FVWF9DSF9DVEwoYXV4X2NoKQlfTU1JT19QT1JUKGF1eF9jaCwgX0RQQV9BVVhf Q0hfQ1RMLCBfRFBCX0FVWF9DSF9DVEwpCj4gPiA+ICsjZGVmaW5lIERQX0FVWF9DSF9EQVRBKGF1 eF9jaCwgaSkJX01NSU8oX1BPUlQoYXV4X2NoLCBfRFBBX0FVWF9DSF9EQVRBMSwgX0RQQl9BVVhf Q0hfREFUQTEpICsgKGkpICogNCkgLyogNSByZWdpc3RlcnMgKi8KPiA+ID4gIAo+ID4gPiAgI2Rl ZmluZSAgIERQX0FVWF9DSF9DVExfU0VORF9CVVNZCSAgICAoMSA8PCAzMSkKPiA+ID4gICNkZWZp bmUgICBEUF9BVVhfQ0hfQ1RMX0RPTkUJCSAgICAoMSA8PCAzMCkKPiA+ID4gQEAgLTc4NzUsOCAr Nzg3NSw4IEBAIGVudW0gewo+ID4gPiAgI2RlZmluZSBfUENIX0RQRF9BVVhfQ0hfREFUQTQJMHhl NDMyMAo+ID4gPiAgI2RlZmluZSBfUENIX0RQRF9BVVhfQ0hfREFUQTUJMHhlNDMyNAo+ID4gPiAg Cj4gPiA+IC0jZGVmaW5lIFBDSF9EUF9BVVhfQ0hfQ1RMKHBvcnQpCQlfTU1JT19QT1JUKChwb3J0 KSAtIFBPUlRfQiwgX1BDSF9EUEJfQVVYX0NIX0NUTCwgX1BDSF9EUENfQVVYX0NIX0NUTCkKPiA+ ID4gLSNkZWZpbmUgUENIX0RQX0FVWF9DSF9EQVRBKHBvcnQsIGkpCV9NTUlPKF9QT1JUKChwb3J0 KSAtIFBPUlRfQiwgX1BDSF9EUEJfQVVYX0NIX0RBVEExLCBfUENIX0RQQ19BVVhfQ0hfREFUQTEp ICsgKGkpICogNCkgLyogNSByZWdpc3RlcnMgKi8KPiA+ID4gKyNkZWZpbmUgUENIX0RQX0FVWF9D SF9DVEwoYXV4X2NoKQkJX01NSU9fUE9SVCgoYXV4X2NoKSAtIEFVWF9DSF9CLCBfUENIX0RQQl9B VVhfQ0hfQ1RMLCBfUENIX0RQQ19BVVhfQ0hfQ1RMKQo+ID4gPiArI2RlZmluZSBQQ0hfRFBfQVVY X0NIX0RBVEEoYXV4X2NoLCBpKQlfTU1JTyhfUE9SVCgoYXV4X2NoKSAtIEFVWF9DSF9CLCBfUENI X0RQQl9BVVhfQ0hfREFUQTEsIF9QQ0hfRFBDX0FVWF9DSF9EQVRBMSkgKyAoaSkgKiA0KSAvKiA1 IHJlZ2lzdGVycyAqLwo+ID4gPiAgCj4gPiA+ICAvKiBDUFQgKi8KPiA+ID4gICNkZWZpbmUgIFBP UlRfVFJBTlNfQV9TRUxfQ1BUCTAKPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Rpc3BsYXkuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXku aAo+ID4gPiBpbmRleCBjNDA0MmUzNDJmNTAuLmY1NzMzYTI1NzZlNyAxMDA2NDQKPiA+ID4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5oCj4gPiA+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuaAo+ID4gPiBAQCAtMTM5LDYgKzEzOSwxNyBA QCBlbnVtIGRwaW9fcGh5IHsKPiA+ID4gIAo+ID4gPiAgI2RlZmluZSBJOTE1X05VTV9QSFlTX1ZM ViAyCj4gPiA+ICAKPiA+ID4gK2VudW0gYXV4X2NoIHsKPiA+ID4gKwlBVVhfQ0hfQSwKPiA+ID4g KwlBVVhfQ0hfQiwKPiA+ID4gKwlBVVhfQ0hfQywKPiA+ID4gKwlBVVhfQ0hfRCwKPiA+ID4gKwlf QVVYX0NIX0UsIC8qIGRvZXMgbm90IGV4aXN0ICovCj4gPiA+ICsJQVVYX0NIX0YsCj4gPiA+ICt9 Owo+ID4gPiArCj4gPiA+ICsjZGVmaW5lIGF1eF9jaF9uYW1lKGEpICgoYSkgKyAnQScpCj4gPiA+ ICsKPiA+ID4gIGVudW0gaW50ZWxfZGlzcGxheV9wb3dlcl9kb21haW4gewo+ID4gPiAgCVBPV0VS X0RPTUFJTl9QSVBFX0EsCj4gPiA+ICAJUE9XRVJfRE9NQUlOX1BJUEVfQiwKPiA+ID4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kcC5jCj4gPiA+IGluZGV4IGYyMGIyNWY5OGU1YS4uZWViOGEwMjZmZDA4IDEw MDY0NAo+ID4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCj4gPiA+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPiA+ID4gQEAgLTEzMzEsMTcxICsx MzMxLDE5NCBAQCBpbnRlbF9kcF9hdXhfdHJhbnNmZXIoc3RydWN0IGRybV9kcF9hdXggKmF1eCwg c3RydWN0IGRybV9kcF9hdXhfbXNnICptc2cpCj4gPiA+ICAJcmV0dXJuIHJldDsKPiA+ID4gIH0K PiA+ID4gIAo+ID4gPiAtc3RhdGljIGVudW0gcG9ydCBpbnRlbF9hdXhfcG9ydChzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gPiA+IC0JCQkJZW51bSBwb3J0IHBvcnQpCj4gPiA+ ICtzdGF0aWMgZW51bSBhdXhfY2ggaW50ZWxfYXV4X2NoKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxf ZHApCj4gPiA+ICB7Cj4gPiA+ICsJc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIgPSAmZHBf dG9fZGlnX3BvcnQoaW50ZWxfZHApLT5iYXNlOwo+ID4gPiArCXN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZW5jb2Rlci0+YmFzZS5kZXYpOwo+ID4gPiArCWVudW0g cG9ydCBwb3J0ID0gZW5jb2Rlci0+cG9ydDsKPiA+ID4gIAljb25zdCBzdHJ1Y3QgZGRpX3ZidF9w b3J0X2luZm8gKmluZm8gPQo+ID4gPiAgCQkmZGV2X3ByaXYtPnZidC5kZGlfcG9ydF9pbmZvW3Bv cnRdOwo+ID4gPiAtCWVudW0gcG9ydCBhdXhfcG9ydDsKPiA+ID4gKwllbnVtIGF1eF9jaCBhdXhf Y2g7Cj4gPiA+ICAKPiA+ID4gIAlpZiAoIWluZm8tPmFsdGVybmF0ZV9hdXhfY2hhbm5lbCkgewo+ ID4gPiArCQlhdXhfY2ggPSAoZW51bSBhdXhfY2gpIHBvcnQ7Cj4gPiA+ICsKPiA+ID4gIAkJRFJN X0RFQlVHX0tNUygidXNpbmcgQVVYICVjIGZvciBwb3J0ICVjIChwbGF0Zm9ybSBkZWZhdWx0KVxu IiwKPiA+ID4gLQkJCSAgICAgIHBvcnRfbmFtZShwb3J0KSwgcG9ydF9uYW1lKHBvcnQpKTsKPiA+ ID4gLQkJcmV0dXJuIHBvcnQ7Cj4gPiA+ICsJCQkgICAgICBhdXhfY2hfbmFtZShhdXhfY2gpLCBw b3J0X25hbWUocG9ydCkpOwo+ID4gPiArCQlyZXR1cm4gYXV4X2NoOwo+ID4gPiAgCX0KPiA+ID4g IAo+ID4gPiAgCXN3aXRjaCAoaW5mby0+YWx0ZXJuYXRlX2F1eF9jaGFubmVsKSB7Cj4gPiA+ICAJ Y2FzZSBEUF9BVVhfQToKPiA+ID4gLQkJYXV4X3BvcnQgPSBQT1JUX0E7Cj4gPiA+ICsJCWF1eF9j aCA9IEFVWF9DSF9BOwo+ID4gPiAgCQlicmVhazsKPiA+ID4gIAljYXNlIERQX0FVWF9COgo+ID4g PiAtCQlhdXhfcG9ydCA9IFBPUlRfQjsKPiA+ID4gKwkJYXV4X2NoID0gQVVYX0NIX0I7Cj4gPiA+ ICAJCWJyZWFrOwo+ID4gPiAgCWNhc2UgRFBfQVVYX0M6Cj4gPiA+IC0JCWF1eF9wb3J0ID0gUE9S VF9DOwo+ID4gPiArCQlhdXhfY2ggPSBBVVhfQ0hfQzsKPiA+ID4gIAkJYnJlYWs7Cj4gPiA+ICAJ Y2FzZSBEUF9BVVhfRDoKPiA+ID4gLQkJYXV4X3BvcnQgPSBQT1JUX0Q7Cj4gPiA+ICsJCWF1eF9j aCA9IEFVWF9DSF9EOwo+ID4gPiAgCQlicmVhazsKPiA+ID4gIAljYXNlIERQX0FVWF9GOgo+ID4g PiAtCQlhdXhfcG9ydCA9IFBPUlRfRjsKPiA+ID4gKwkJYXV4X2NoID0gQVVYX0NIX0Y7Cj4gPiA+ ICAJCWJyZWFrOwo+ID4gPiAgCWRlZmF1bHQ6Cj4gPiA+ICAJCU1JU1NJTkdfQ0FTRShpbmZvLT5h bHRlcm5hdGVfYXV4X2NoYW5uZWwpOwo+ID4gPiAtCQlhdXhfcG9ydCA9IFBPUlRfQTsKPiA+ID4g KwkJYXV4X2NoID0gQVVYX0NIX0E7Cj4gPiA+ICAJCWJyZWFrOwo+ID4gPiAgCX0KPiA+ID4gIAo+ ID4gPiAgCURSTV9ERUJVR19LTVMoInVzaW5nIEFVWCAlYyBmb3IgcG9ydCAlYyAoVkJUKVxuIiwK PiA+ID4gLQkJICAgICAgcG9ydF9uYW1lKGF1eF9wb3J0KSwgcG9ydF9uYW1lKHBvcnQpKTsKPiA+ ID4gKwkJICAgICAgYXV4X2NoX25hbWUoYXV4X2NoKSwgcG9ydF9uYW1lKHBvcnQpKTsKPiA+ID4g IAo+ID4gPiAtCXJldHVybiBhdXhfcG9ydDsKPiA+ID4gKwlyZXR1cm4gYXV4X2NoOwo+ID4gPiAr fQo+ID4gPiArCj4gPiA+ICtzdGF0aWMgZW51bSBpbnRlbF9kaXNwbGF5X3Bvd2VyX2RvbWFpbgo+ ID4gPiAraW50ZWxfYXV4X3Bvd2VyX2RvbWFpbihzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+ ID4gPiArewo+ID4gPiArCXN3aXRjaCAoaW50ZWxfZHAtPmF1eF9jaCkgewo+ID4gPiArCWNhc2Ug QVVYX0NIX0E6Cj4gPiA+ICsJCXJldHVybiBQT1dFUl9ET01BSU5fQVVYX0E7Cj4gPiA+ICsJY2Fz ZSBBVVhfQ0hfQjoKPiA+ID4gKwkJcmV0dXJuIFBPV0VSX0RPTUFJTl9BVVhfQjsKPiA+ID4gKwlj YXNlIEFVWF9DSF9DOgo+ID4gPiArCQlyZXR1cm4gUE9XRVJfRE9NQUlOX0FVWF9DOwo+ID4gPiAr CWNhc2UgQVVYX0NIX0Q6Cj4gPiA+ICsJCXJldHVybiBQT1dFUl9ET01BSU5fQVVYX0Q7Cj4gPiA+ ICsJY2FzZSBBVVhfQ0hfRjoKPiA+ID4gKwkJcmV0dXJuIFBPV0VSX0RPTUFJTl9BVVhfRjsKPiA+ ID4gKwlkZWZhdWx0Ogo+ID4gPiArCQlNSVNTSU5HX0NBU0UoaW50ZWxfZHAtPmF1eF9jaCk7Cj4g PiA+ICsJCXJldHVybiBQT1dFUl9ET01BSU5fQVVYX0E7Cj4gPiA+ICsJfQo+ID4gPiAgfQo+ID4g PiAgCj4gPiA+ICBzdGF0aWMgaTkxNV9yZWdfdCBnNHhfYXV4X2N0bF9yZWcoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ID4gPiAtCQkJCSAgZW51bSBwb3J0IHBvcnQpCj4gPiA+ ICsJCQkJICBlbnVtIGF1eF9jaCBhdXhfY2gpCj4gPiA+ICB7Cj4gPiA+IC0Jc3dpdGNoIChwb3J0 KSB7Cj4gPiA+IC0JY2FzZSBQT1JUX0I6Cj4gPiA+IC0JY2FzZSBQT1JUX0M6Cj4gPiA+IC0JY2Fz ZSBQT1JUX0Q6Cj4gPiA+IC0JCXJldHVybiBEUF9BVVhfQ0hfQ1RMKHBvcnQpOwo+ID4gPiArCXN3 aXRjaCAoYXV4X2NoKSB7Cj4gPiA+ICsJY2FzZSBBVVhfQ0hfQjoKPiA+ID4gKwljYXNlIEFVWF9D SF9DOgo+ID4gPiArCWNhc2UgQVVYX0NIX0Q6Cj4gPiA+ICsJCXJldHVybiBEUF9BVVhfQ0hfQ1RM KGF1eF9jaCk7Cj4gPiA+ICAJZGVmYXVsdDoKPiA+ID4gLQkJTUlTU0lOR19DQVNFKHBvcnQpOwo+ ID4gPiAtCQlyZXR1cm4gRFBfQVVYX0NIX0NUTChQT1JUX0IpOwo+ID4gPiArCQlNSVNTSU5HX0NB U0UoYXV4X2NoKTsKPiA+ID4gKwkJcmV0dXJuIERQX0FVWF9DSF9DVEwoQVVYX0NIX0IpOwo+IAo+ IFNob3VsZG4ndCBpbnRlbF9kcC0+YXV4X2NoIGNoYW5nZSB0b28gaWYgd2UgYXJlIHN3aXRjaGlu ZyB0byBmYWxsYmFjawo+IGRlZmF1bHQgcmVnaXN0ZXJzPwoKVGhlIGRlZmF1bHQgY2FzZSBpcyB0 aGVyZSBqdXN0IHRvIGFwcGVhc2UgdGhlIGNvbXBpbGVyIHJlYWxseS4KV2hhdGV2ZXIgd2UgZG8g aGVyZSBpcyBtb3N0IGxpa2VseSBnb2luZyB0byBiZSB3cm9uZyBhbnl3YXkgc28KdGhlcmUncyBs aXR0bGUgcG9pbnQgaW4gdHJ5aW5nIHRvIG1ha2UgaXQgcG9saXNoZWQgaW4gYW55IHdheS4KCi0t IApWaWxsZSBTeXJqw6Rsw6QKSW50ZWwgT1RDCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2ludGVsLWdmeAo=