From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Daniel Subject: [PATCH 00/43] Execlists v5 Date: Thu, 24 Jul 2014 17:04:08 +0100 Message-ID: <1406217891-8912-1-git-send-email-thomas.daniel@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [143.182.124.21]) by gabe.freedesktop.org (Postfix) with ESMTP id 9F59C6E2C9 for ; Thu, 24 Jul 2014 09:04:55 -0700 (PDT) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVGhvbWFzIERhbmllbCA8dGhvbWFzLmRhbmllbEBpbnRlbC5jb20+CgpGb3IgYSBkZXNj cmlwdGlvbiBvZiB0aGlzIHBhdGNoc2V0LCBwbGVhc2UgY2hlY2sgdGhlIHByZXZpb3VzIGNvdmVy IGxldHRlcnM6IFsxXSwgWzJdLCBbM10gYW5kIFs0XS4KCkkgaGF2ZSB0YWtlbiBvd25lcnNoaXAg b2YgdGhpcyBwYXRjaHNldCBmcm9tIE9zY2FyLCBhbmQgdGhpcyB2ZXJzaW9uIHJlcHJlc2VudHMg aGlzIGxhc3Qgd29yayBvbiB0aGUgZXhlY2xpc3RzIHBhdGNoc2V0LiAgVGhlIG5hcnJhdGl2ZSBi ZWxvdyBpcyBmcm9tIGhpbS4KCkkgaGF2ZSBiZWVuIGdpdmVuIHNvbWUgZ3JhY2UgcGVyaW9kIHRv IGZpeCB0aGUgcmVtYWluaW5nIGlzc3VlcyBpbiBFeGVjbGlzdHMgYmVmb3JlIEkgbW92ZSB0byBh IGRpZmZlcmVudCBwcm9qZWN0LCBhbmQgdGhpcyBpcyB0aGUgcmVzdWx0LiBUaGVyZSBhcmUgdmVy eSBsaXR0bGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGlzIHY1IGFuZCB0aGUgdjQgSSBzZW50IG91 dCBsYXN0IHdlZWssIHNvIEkgd2FzIHVuc3VyZSB3aGV0aGVyIHRvIGRyb3AgYSBuZXcgcGF0Y2hi b21iIG9yIHNpbXBseSByZXBseSB0byB0aGUgcGF0Y2hlcyB0aGF0IGhhdmUgY2hhbmdlZCwgYnV0 IEkgZGVjaWRlZCBmb3IgdGhlIGZvcm1lciB0byBtYWtlIHRoZSByZXZpZXcgZWFzaWVyLgoKVGhl IGNoYW5nZXMgYXJlOgoKLSBOZXcgcHJlcC13b3JrIHBhdGNoIHRvIHByZXZlbnQgYSBwb3RlbnRp YWwgcHJvYmxlbSB3aXRoIHRoZSBsZWdhY3kgcmluZ2J1ZmZlciBzdWJtaXNzaW9uIGV4dHJhY3Rp b24gdGhhdCB3YXMgZG9uZSBlYXJsaWVyLgotIERvIHRoZSByZW1haW5pbmcgaW50ZWxfcnVudGlt ZV9wdXQgd2hpbGUgcHVyZ2luZyB0aGUgZXhlY2xpc3RzIHF1ZXVlIGR1cmluZyByZXNldC4KLSBD aGVjayBhcmd1bWVudHMgYmVmb3JlIGRvaW5nIHN0dWZmIGluIGludGVsX2V4ZWNsaXN0c19zdWJt aXNzaW9uLiBBbHNvLCBnZXQgcmVsX2NvbnN0YW50cyBwYXJzaW5nIHJpZ2h0LgotIERvIGdlbjhf ZW1pdF9mbHVzaCA9IGdlbjZfcmluZ19mbHVzaCArIGdlbjZfYnNkX3JpbmdfZmx1c2guCi0gTmV3 IHBhdGNoZXMgZm9yIHBpbm5pbmcgY29udGV4dCBhbmQgcmluZ2J1ZmZlciBiYWNraW5nIG9iamVj dHMgb24tZGVtYW5kIChiZWZvcmUgSSB3YXMgcGlubmluZyBvbiBpbnRlcnJ1cHQgdGltZSwgd2hp Y2ggd2FzIGEgbm8tbm8pLiBUaGVzZSBmaXggdGhlIHJlYW1pbmluZyBldmljdGlvbiBpc3N1ZXMg SSB3YXMgc2VlaW5nLgoKVGhlIHByZXZpb3VzIGNvbW1lbnQgYWJvdXQgdGhlIFdBcyBzdGlsbCBh cHBsaWVzLiBJIHJlcHJvZHVjZSBpdCBoZXJlIGZvciBjb21wbGV0ZW5lc3M6CgoiT25lIG90aGVy IGNhdmVhdCBJIGhhdmUgbm90aWNlZCBpcyB0aGF0IG1hbnkgV0FzIGluIGdlbjhfaW5pdF9jbG9j a19nYXRpbmcgKHRob3NlIHRoYXQgYWZmZWN0IHJlZ2lzdGVycyB0aGF0IG5vdyBleGlzdCBwZXIt Y29udGV4dCkgY2FuIGdldCBsb3N0IGluIHRoZSByZW5kZXIgZGVmYXVsdCBjb250ZXh0LiBUaGUg cmVhc29uIGlzLCBpbiBFeGVjbGlzdHMsIGEgY29udGV4dCBpcyBzYXZlZCBhcyBzb29uIGFzIGhl YWQgPSB0YWlsICh3aXRoIE1JX1NFVF9DT05URVhULCBob3dldmVyLCB0aGUgY29udGV4dCB3b3Vs ZG4ndCBiZSBzYXZlZCB1bnRpbCB5b3UgdHJpZWQgdG8gcmVzdG9yZSBhIGRpZmZlcmVudCBjb250 ZXh0KS4gQXMgd2UgYXJlIHNlbmRpbmcgdGhlIGdvbGRlbiBzdGF0ZSBiYXRjaGJ1ZmZlciB0byB0 aGUgcmVuZGVyIHJpbmcgYXMgc29vbiBhcyB0aGUgcmluZ3MgYXJlIGluaXRpYWxpemVkLCB3ZSBh cmUgZWZmZWN0aXZlbHkgc2F2aW5nIHRoZSBkZWZhdWx0IGNvbnRleHQgYmVmb3JlIGdlbjhfaW5p dF9jbG9ja19nYXRpbmcgaGFzIGFuIG9wcG9ydHVuaXR5IHRvIHNldCB0aGUgV0FzLiBJIGhhdmVu J3Qgbm90aWNlZCBhbnkgaWxsLWVmZmVjdCBmcm9tIHRoaXMgKHlldCkgYnV0IGl0IHdvdWxkIGJl IGEgZ29vZCBpZGVhIHRvIG1vdmUgdGhlIFdBcyBzb21ld2hlcmUgZWxzZSAocmluZyBpbml0IGxv b2tzIGxpa2UgYSBnb29kIHBsYWNlKS4gSSBiZWxpZXZlIHRoZXJlIGlzIGFscmVhZHkgd29yayBp biBwcm9ncmVzcyB0byBjcmVhdGUgYSBuZXcgV0EgYXJjaGl0ZWN0dXJlLCBzbyB0aGlzIGNhbiBi ZSB0YWNrbGVkIHRoZXJlLiIKClRoZSBwcmV2aW91cyBJR1QgdGVzdCBbNF0gc3RpbGwgYXBwbGll cy4KClRoZXJlIGFyZSB0aHJlZSBwZW5kaW5nIGlzc3VlczoKCi0gVGhlIHRlc3QgZ2VtX2Nsb3Nl X3JhY2Ugd2FybnMgYWJvdXQgInNjaGVkdWxpbmcgd2hpbGUgYXRvbWljIiB3aGVuIHRoZSBzaHJp bmtlciBnZXRzIGNhbGxlZC4gV2l0aG91dCBFeGVjbGlzdHMsIHRoZSBzaHJpbmtlciBkb2VzIG5v dCBnZXQgY2FsbGVkIGF0IGFsbCAod2hpY2gga2luZCBvZiBtYWtlcyBzZW5zZSkgYnV0IHRoZSB0 ZXN0cyB0aW1lb3V0cyBiZWZvcmUgZmluaXNoaW5nLgotIFRoZSB0ZXN0IGdlbV9jb25jdXJyZW50 X2JsaXQgZmFpbHMgaW4gdGhlIGd0dC0qIHN1YnRlc3RzOiBzb21lIHBpeGVscyAoMTQsIHRvIGJl IGV4YWN0KSBkbyBub3QgZ2V0IGNvcGllZCBjb3JyZWN0bHkgZnJvbSBvbmUgYm8gdG8gYW5vdGhl ci4gRnVubmlseSBlbm91Z2gsIHRoZSB0ZXN0cyBwYXNzIGlmIEkgZG8gYSBpOTE1IG1vZHVsZSBy ZWxvYWQgZmlyc3QgKC4vdGVzdHMvZHJ2X21vZHVsZV9yZWxvYWQpLiBZZXN0ZXJkYXkgSSBkdW1w ZWQgYWxsIHRoZSByZWdpc3RlcnMgaW4gdGhlIGNoaXAgYmVmb3JlIGFuZCBhZnRlciBhIG1vZHVs ZSByZWxvYWQgKGF0dGFjaGVkKSwgYnV0IEkgaGF2ZW7FvXQgZm91bmQgYW55IG1lYW5pbmdmdWwg ZGlmZmVyZW5jZSB5ZXQuCi0gV2hlbiBJIHRyeSB0byBydW4gYSB3aG9sZSBJR1Qgc3VpdGUgdXNp bmcgUGlnbGl0LCBzb21ldGltZXMgSSBoaXQgdGhlIEJVR19PTighaTkxNV9nZW1fb2JqX2lzX3Bp bm5lZChjdHhfb2JqMCkpIGluIGV4ZWNsaXN0c19zdWJtaXRfY29udGV4dCgpLiBJIGhhdmVuxb10 IG1hbmFnZWQgdG8gcmVwcm9kdWNlIHRoZSBwcm9ibGVtIGF0IHdpbGwsIGJ1dCB0aGVyZSBpcyBv YnZpb3VzbHkgc29tZXRoaW5nIHdyb25nIHdpdGggdGhlIGxhc3QgdHdvIEV4ZWNsaXN0cyBwYXRj aGVzLgoKS2VlcCB0aGUgci1iIHRhZ3MgY29taW5nLCBwbGVhc2UhIQoKLS0gT3NjYXIKClsxXQpo dHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL2FyY2hpdmVzL2ludGVsLWdmeC8yMDE0LU1hcmNo LzA0MjU2My5odG1sClsyXQpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL2FyY2hpdmVzL2lu dGVsLWdmeC8yMDE0LU1heS8wNDQ4NDcuaHRtbApbM10KaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9hcmNoaXZlcy9pbnRlbC1nZngvMjAxNC1KdW5lLzA0NzEzOC5odG1sCls0XQpodHRwOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL2FyY2hpdmVzL2ludGVsLWdmeC8yMDE0LUp1bHkvMDQ4OTQ0 Lmh0bWwKWzVdCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvYXJjaGl2ZXMvaW50ZWwtZ2Z4 LzIwMTQtTWF5LzA0NDg0Ni5odG1sCgpCZW4gV2lkYXdza3kgKDIpOgogIGRybS9pOTE1L2Jkdzog SW1wbGVtZW50IGNvbnRleHQgc3dpdGNoaW5nIChzb21ld2hhdCkKICBkcm0vaTkxNS9iZHc6IFBy aW50IGNvbnRleHQgc3RhdGUgaW4gZGVidWdmcwoKTWljaGVsIFRoaWVycnkgKDEpOgogIGRybS9p OTE1L2JkdzogVHdvLXN0YWdlIGV4ZWNsaXN0IHN1Ym1pdCBwcm9jZXNzCgpPc2NhciBNYXRlbyAo MzkpOgogIGRybS9pOTE1OiBSZW9yZGVyIHRoZSBhY3R1YWwgd29ya2xvYWQgc3VibWlzc2lvbiBz byB0aGF0IGFyZ3MgY2hlY2tpbmcKICAgIGlzIGRvbmUgZWFybGllcgogIGRybS9pOTE1L2Jkdzog TmV3IHNvdXJjZSBhbmQgaGVhZGVyIGZpbGUgZm9yIExScywgTFJDcyBhbmQgRXhlY2xpc3RzCiAg ZHJtL2k5MTUvYmR3OiBNYWNybyBmb3IgTFJDcyBhbmQgbW9kdWxlIG9wdGlvbiBmb3IgRXhlY2xp c3RzCiAgZHJtL2k5MTUvYmR3OiBJbml0aWFsaXphdGlvbiBmb3IgTG9naWNhbCBSaW5nIENvbnRl eHRzCiAgZHJtL2k5MTUvYmR3OiBJbnRyb2R1Y2Ugb25lIGNvbnRleHQgYmFja2luZyBvYmplY3Qg cGVyIGVuZ2luZQogIGRybS9pOTE1L2JkdzogQSBiaXQgbW9yZSBhZHZhbmNlZCBMUiBjb250ZXh0 IGFsbG9jL2ZyZWUKICBkcm0vaTkxNS9iZHc6IEFsbG9jYXRlIHJpbmdidWZmZXJzIGZvciBMb2dp Y2FsIFJpbmcgQ29udGV4dHMKICBkcm0vaTkxNS9iZHc6IEFkZCBhIGNvbnRleHQgYW5kIGFuIGVu Z2luZSBwb2ludGVycyB0byB0aGUgcmluZ2J1ZmZlcgogIGRybS9pOTE1L2JkdzogUG9wdWxhdGUg TFIgY29udGV4dHMgKHNvbWV3aGF0KQogIGRybS9pOTE1L2JkdzogRGVmZXJyZWQgY3JlYXRpb24g b2YgdXNlci1jcmVhdGVkIExSQ3MKICBkcm0vaTkxNS9iZHc6IFJlbmRlciBtb290IGNvbnRleHQg cmVzZXQgYW5kIHN3aXRjaCB3aXRoIEV4ZWNsaXN0cwogIGRybS9pOTE1L2JkdzogRG9uJ3Qgd3Jp dGUgUERQIGluIHRoZSBsZWdhY3kgd2F5IHdoZW4gdXNpbmcgTFJDcwogIGRybS9pOTE1OiBBYnN0 cmFjdCB0aGUgbGVnYWN5IHdvcmtsb2FkIHN1Ym1pc3Npb24gbWVjaGFuaXNtIGF3YXkKICBkcm0v aTkxNS9iZHc6IFNrZWxldG9uIGZvciB0aGUgbmV3IGxvZ2ljYWwgcmluZ3Mgc3VibWlzc2lvbiBw YXRoCiAgZHJtL2k5MTUvYmR3OiBHZW5lcmljIGxvZ2ljYWwgcmluZyBpbml0IGFuZCBjbGVhbnVw CiAgZHJtL2k5MTUvYmR3OiBHRU4tc3BlY2lmaWMgbG9naWNhbCByaW5nIGluaXQKICBkcm0vaTkx NS9iZHc6IEdFTi1zcGVjaWZpYyBsb2dpY2FsIHJpbmcgc2V0L2dldCBzZXFubwogIGRybS9pOTE1 L2JkdzogTmV3IGxvZ2ljYWwgcmluZyBzdWJtaXNzaW9uIG1lY2hhbmlzbQogIGRybS9pOTE1L2Jk dzogR0VOLXNwZWNpZmljIGxvZ2ljYWwgcmluZyBlbWl0IHJlcXVlc3QKICBkcm0vaTkxNS9iZHc6 IEdFTi1zcGVjaWZpYyBsb2dpY2FsIHJpbmcgZW1pdCBmbHVzaAogIGRybS9pOTE1L2JkdzogRW1p c3Npb24gb2YgcmVxdWVzdHMgd2l0aCBsb2dpY2FsIHJpbmdzCiAgZHJtL2k5MTUvYmR3OiBSaW5n IGlkbGUgYW5kIHN0b3Agd2l0aCBsb2dpY2FsIHJpbmdzCiAgZHJtL2k5MTUvYmR3OiBJbnRlcnJ1 cHRzIHdpdGggbG9naWNhbCByaW5ncwogIGRybS9pOTE1L2JkdzogR0VOLXNwZWNpZmljIGxvZ2lj YWwgcmluZyBlbWl0IGJhdGNoYnVmZmVyIHN0YXJ0CiAgZHJtL2k5MTUvYmR3OiBXb3JrbG9hZCBz dWJtaXNzaW9uIG1lY2hhbmlzbSBmb3IgRXhlY2xpc3RzCiAgZHJtL2k5MTUvYmR3OiBBbHdheXMg dXNlIE1NSU8gZmxpcHMgd2l0aCBFeGVjbGlzdHMKICBkcm0vaTkxNS9iZHc6IFJlbmRlciBzdGF0 ZSBpbml0IGZvciBFeGVjbGlzdHMKICBkcm0vaTkxNS9iZHc6IFdyaXRlIHRoZSB0YWlsIHBvaW50 ZXIsIExSQyBzdHlsZQogIGRybS9pOTE1L2JkdzogQXZvaWQgbm9uLWxpdGUtcmVzdG9yZSBwcmVl bXB0aW9ucwogIGRybS9pOTE1L2JkdzogSGVscCBvdXQgdGhlIGN0eCBzd2l0Y2ggaW50ZXJydXB0 IGhhbmRsZXIKICBkcm0vaTkxNS9iZHc6IE1ha2Ugc3VyZSBncHUgcmVzZXQgc3RpbGwgd29ya3Mg d2l0aCBFeGVjbGlzdHMKICBkcm0vaTkxNS9iZHc6IE1ha2Ugc3VyZSBlcnJvciBjYXB0dXJlIGtl ZXBzIHdvcmtpbmcgd2l0aCBFeGVjbGlzdHMKICBkcm0vaTkxNS9iZHc6IERpc2FibGUgc2VtYXBo b3JlcyBmb3IgRXhlY2xpc3RzCiAgZHJtL2k5MTUvYmR3OiBEaXNwbGF5IGV4ZWNsaXN0cyBpbmZv IGluIGRlYnVnZnMKICBkcm0vaTkxNS9iZHc6IERpc3BsYXkgY29udGV4dCBiYWNraW5nIG9iaiAm IHJpbmdidWZmZXIgaW5mbyBpbiBkZWJ1Z2ZzCiAgZHJtL2k5MTUvYmR3OiBEb2N1bWVudCBMb2dp Y2FsIFJpbmdzLCBMUiBjb250ZXh0cyBhbmQgRXhlY2xpc3RzCiAgZHJtL2k5MTUvYmR3OiBFbmFi bGUgTG9naWNhbCBSaW5nIENvbnRleHRzIChoZW5jZSwgRXhlY2xpc3RzKQogIGRybS9pOTE1L2Jk dzogUGluIHRoZSBjb250ZXh0IGJhY2tpbmcgb2JqZWN0cyB0byBHR1RUIG9uLWRlbWFuZAogIGRy bS9pOTE1L2JkdzogUGluIHRoZSByaW5nYnVmZmVyIGJhY2tpbmcgb2JqZWN0IHRvIEdHVFQgb24t ZGVtYW5kCgpUaG9tYXMgRGFuaWVsICgxKToKICBkcm0vaTkxNS9iZHc6IEhhbmRsZSBjb250ZXh0 IHN3aXRjaCBldmVudHMKCiBEb2N1bWVudGF0aW9uL0RvY0Jvb2svZHJtLnRtcGwgICAgICAgICAg ICAgICB8ICAgIDUgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvTWFrZWZpbGUgICAgICAgICAgICAg ICAgfCAgICAxICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jICAgICAgICAg IHwgIDE1NyArKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMgICAgICAgICAgICAg IHwgICAgNCArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAgICAgICAgICB8 ICAgNDcgKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgICAgICAgICAgICAgIHwg IDEzMiArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jICAgICAgfCAg IDU2ICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMgICB8ICAx MTggKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jICAgICAgICAgIHwgICAg NSArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9yZW5kZXJfc3RhdGUuYyB8ICAgNDAg Ky0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3JlbmRlcl9zdGF0ZS5oIHwgICA0NyAr CiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dwdV9lcnJvci5jICAgICAgICB8ICAgMjIgKy0K IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMgICAgICAgICAgICAgIHwgICA0NCArLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wYXJhbXMuYyAgICAgICAgICAgfCAgICA2ICsKIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggICAgICAgICAgICAgIHwgICAgNSArCiBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgICAgICAgICB8ICAgIDIgKwogZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgICAgICAgICAgICAgfCAxODAyICsrKysrKysrKysr KysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuaCAgICAgICAg ICAgICB8ICAxMTUgKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JlbmRlcnN0YXRlLmgg ICAgIHwgICAgOCArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jICAg ICAgfCAgMTY2ICsrLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oICAg ICAgfCAgIDQxICstCiAyMSBmaWxlcyBjaGFuZ2VkLCAyNjIyIGluc2VydGlvbnMoKyksIDIwMSBk ZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbV9yZW5kZXJfc3RhdGUuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2xyYy5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfbHJjLmgKCi0tIAoxLjkuMApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ludGVsLWdmeAo=