From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH v6 9/9] drm/selftests: Add tests for drm_internal_framebuffer_create Date: Tue, 30 Oct 2018 10:28:08 +0100 Message-ID: <20181030092808.GL21967@phenom.ffwll.local> References: <20181029171419.4512-1-alexandru-cosmin.gheorghe@arm.com> <20181029171419.4512-10-alexandru-cosmin.gheorghe@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-ed1-x542.google.com (mail-ed1-x542.google.com [IPv6:2a00:1450:4864:20::542]) by gabe.freedesktop.org (Postfix) with ESMTPS id EC79A6E1D6 for ; Tue, 30 Oct 2018 09:28:12 +0000 (UTC) Received: by mail-ed1-x542.google.com with SMTP id u12-v6so6951876eds.4 for ; Tue, 30 Oct 2018 02:28:12 -0700 (PDT) Content-Disposition: inline In-Reply-To: <20181029171419.4512-10-alexandru-cosmin.gheorghe@arm.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Alexandru-Cosmin Gheorghe Cc: Charles Xu , nd , Matt Szczesiak , "airlied@linux.ie" , Liviu Dudau , "dri-devel@lists.freedesktop.org" , "maxime.ripard@bootlin.com" , David Garbett , "seanpaul@chromium.org" , Lisa Wu , "daniel.vetter@ffwll.ch" , "malidp@foss.arm.com" , Ayan Halder , "james qian wang (Arm Technology China)" , Brendan Higgins List-Id: dri-devel@lists.freedesktop.org T24gTW9uLCBPY3QgMjksIDIwMTggYXQgMDU6MTQ6NDRQTSArMDAwMCwgQWxleGFuZHJ1LUNvc21p biBHaGVvcmdoZSB3cm90ZToKPiBBZGQgdGVzdHMgdGhhdCB2ZXJpZnkgdGhhdCBkcm1faW50ZXJu YWxfZnJhbWVidWZmZXJfY3JlYXRlIGNyZWF0ZXMKPiBidWZmZXJzIGNvcnJlY3RseSBieSBjcmVh dGluZyBhIGR1bW15IGRybV9kZXZpY2Ugd2l0aCBhIG1vY2sgZnVuY3Rpb24KPiBmb3IgdGhlIGZi X2NyZWF0ZSBjYWxsYmFjay4KPiAKPiBUbyBkZWNpZGUgaWYgYSBidWZmZXIgaGFzIGJlZW4gY3Jl YXRlZCBvciBub3QgaXQganVzdCBjaGVja3MgaWYKPiBmYl9jcmVhdGUgY2FsbGJhY2sgaGFzIGJl ZW4gY2FsbGVkIGZvciB0aGUgcGFydGljdWxhciBkcm1fbW9kZV9mYl9jbWQyCj4gdGhhdCdzIGJl aW5nIHRlc3RlZC4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBBbGV4YW5kcnUgR2hlb3JnaGUgPGFsZXhh bmRydS1jb3NtaW4uZ2hlb3JnaGVAYXJtLmNvbT4KCkFnYWluIGFkZGluZyBCcmVuZGFuIGFzIGZ5 aSwgbG90cyBvZiB1c2UtY2FzZXMgZm9yIHRoZSBtb2NraW5nCmluZnJhc3RydWN0dXJlIGZyb20g a3VuaXQgaW4gdGhlc2UgdW5pdCB0ZXN0cyBoZXJlIChncmVnIGZvcgpidWZmZXJfY3JlYXRlZCku Cgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vc2VsZnRlc3RzL01ha2VmaWxlICAgICAgICAgICAg fCAgIDIgKy0KPiAgLi4uL2dwdS9kcm0vc2VsZnRlc3RzL2RybV9tb2Rlc2V0X3NlbGZ0ZXN0cy5o IHwgICAxICsKPiAgLi4uL2dwdS9kcm0vc2VsZnRlc3RzL3Rlc3QtZHJtX2ZyYW1lYnVmZmVyLmMg IHwgMzQ0ICsrKysrKysrKysrKysrKysrKwo+ICAuLi4vZHJtL3NlbGZ0ZXN0cy90ZXN0LWRybV9t b2Rlc2V0X2NvbW1vbi5oICAgfCAgIDEgKwo+ICA0IGZpbGVzIGNoYW5nZWQsIDM0NyBpbnNlcnRp b25zKCspLCAxIGRlbGV0aW9uKC0pCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL2dwdS9k cm0vc2VsZnRlc3RzL3Rlc3QtZHJtX2ZyYW1lYnVmZmVyLmMKPiAKPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL3NlbGZ0ZXN0cy9NYWtlZmlsZSBiL2RyaXZlcnMvZ3B1L2RybS9zZWxmdGVz dHMvTWFrZWZpbGUKPiBpbmRleCAwN2I0Zjg4YjQyMmEuLjM4M2Q4ZDZjNTg0NyAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vc2VsZnRlc3RzL01ha2VmaWxlCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL3NlbGZ0ZXN0cy9NYWtlZmlsZQo+IEBAIC0xLDQgKzEsNCBAQAo+ICB0ZXN0LWRybV9t b2Rlc2V0LXkgOj0gdGVzdC1kcm1fbW9kZXNldF9jb21tb24ubyB0ZXN0LWRybV9wbGFuZV9oZWxw ZXIubyBcCj4gLSAgICAgICAgICAgICAgICAgICAgICB0ZXN0LWRybV9mb3JtYXQubwo+ICsgICAg ICAgICAgICAgICAgICAgICAgdGVzdC1kcm1fZm9ybWF0Lm8gdGVzdC1kcm1fZnJhbWVidWZmZXIu bwo+ICAKPiAgb2JqLSQoQ09ORklHX0RSTV9ERUJVR19TRUxGVEVTVCkgKz0gdGVzdC1kcm1fbW0u byB0ZXN0LWRybV9tb2Rlc2V0Lm8KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3NlbGZ0 ZXN0cy9kcm1fbW9kZXNldF9zZWxmdGVzdHMuaCBiL2RyaXZlcnMvZ3B1L2RybS9zZWxmdGVzdHMv ZHJtX21vZGVzZXRfc2VsZnRlc3RzLmgKPiBpbmRleCA0ZTIwM2FjOGMxMzQuLjkyNjAxZGVmZDhm NiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vc2VsZnRlc3RzL2RybV9tb2Rlc2V0X3Nl bGZ0ZXN0cy5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3NlbGZ0ZXN0cy9kcm1fbW9kZXNldF9z ZWxmdGVzdHMuaAo+IEBAIC0xMCwzICsxMCw0IEBAIHNlbGZ0ZXN0KGNoZWNrX3BsYW5lX3N0YXRl LCBpZ3RfY2hlY2tfcGxhbmVfc3RhdGUpCj4gIHNlbGZ0ZXN0KGNoZWNrX2RybV9mb3JtYXRfYmxv Y2tfd2lkdGgsIGlndF9jaGVja19kcm1fZm9ybWF0X2Jsb2NrX3dpZHRoKQo+ICBzZWxmdGVzdChj aGVja19kcm1fZm9ybWF0X2Jsb2NrX2hlaWdodCwgaWd0X2NoZWNrX2RybV9mb3JtYXRfYmxvY2tf aGVpZ2h0KQo+ICBzZWxmdGVzdChjaGVja19kcm1fZm9ybWF0X21pbl9waXRjaCwgaWd0X2NoZWNr X2RybV9mb3JtYXRfbWluX3BpdGNoKQo+ICtzZWxmdGVzdChjaGVja19kcm1fZnJhbWVidWZmZXJf Y3JlYXRlLCBpZ3RfY2hlY2tfZHJtX2ZyYW1lYnVmZmVyX2NyZWF0ZSkKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL3NlbGZ0ZXN0cy90ZXN0LWRybV9mcmFtZWJ1ZmZlci5jIGIvZHJpdmVy cy9ncHUvZHJtL3NlbGZ0ZXN0cy90ZXN0LWRybV9mcmFtZWJ1ZmZlci5jCj4gbmV3IGZpbGUgbW9k ZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwMDAwMDAuLjMwOTg0MzU2NzhhZgo+IC0tLSAvZGV2L251 bGwKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vc2VsZnRlc3RzL3Rlc3QtZHJtX2ZyYW1lYnVmZmVy LmMKPiBAQCAtMCwwICsxLDM0NCBAQAo+ICsvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BM LTIuMAo+ICsvKgo+ICsgKiBUZXN0IGNhc2VzIGZvciB0aGUgZHJtX2ZyYW1lYnVmZmVyIGZ1bmN0 aW9ucwo+ICsgKi8KPiArCj4gKyNpbmNsdWRlIDxkcm0vZHJtUC5oPgo+ICsjaW5jbHVkZSAiLi4v ZHJtX2NydGNfaW50ZXJuYWwuaCIKPiArCj4gKyNpbmNsdWRlICJ0ZXN0LWRybV9tb2Rlc2V0X2Nv bW1vbi5oIgo+ICsKPiArI2RlZmluZSBNSU5fV0lEVEggNAo+ICsjZGVmaW5lIE1BWF9XSURUSCA0 MDk2Cj4gKyNkZWZpbmUgTUlOX0hFSUdIVCA0Cj4gKyNkZWZpbmUgTUFYX0hFSUdIVCA0MDk2Cj4g Kwo+ICtzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyX3Rlc3Qgewo+ICsJaW50IGJ1ZmZlcl9jcmVhdGVk Owo+ICsJc3RydWN0IGRybV9tb2RlX2ZiX2NtZDIgY21kOwo+ICsJY29uc3QgY2hhciAqbmFtZTsK PiArfTsKPiArCj4gK3N0YXRpYyBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyX3Rlc3QgY3JlYXRlYnVm ZmVyX3Rlc3RzW10gPSB7Cj4gK3sgLmJ1ZmZlcl9jcmVhdGVkID0gMSwgLm5hbWUgPSAiQUJHUjg4 ODggbm9ybWFsIHNpemVzIiwKPiArCS5jbWQgPSB7IC53aWR0aCA9IDYwMCwgLmhlaWdodCA9IDYw MCwgLnBpeGVsX2Zvcm1hdCA9IERSTV9GT1JNQVRfQUJHUjg4ODgsCj4gKwkJIC5oYW5kbGVzID0g eyAxLCAwLCAwIH0sIC5waXRjaGVzID0geyA0ICogNjAwLCAwLCAwIH0sCj4gKwl9Cj4gK30sCj4g K3sgLmJ1ZmZlcl9jcmVhdGVkID0gMSwgLm5hbWUgPSAiQUJHUjg4ODggbWF4IHNpemVzIiwKPiAr CS5jbWQgPSB7IC53aWR0aCA9IE1BWF9XSURUSCwgLmhlaWdodCA9IE1BWF9IRUlHSFQsIC5waXhl bF9mb3JtYXQgPSBEUk1fRk9STUFUX0FCR1I4ODg4LAo+ICsJCSAuaGFuZGxlcyA9IHsgMSwgMCwg MCB9LCAucGl0Y2hlcyA9IHsgNCAqIE1BWF9XSURUSCwgMCwgMCB9LAo+ICsJfQo+ICt9LAo+ICt7 IC5idWZmZXJfY3JlYXRlZCA9IDEsIC5uYW1lID0gIkFCR1I4ODg4IHBpdGNoIGdyZWF0ZXIgdGhh biBtaW4gcmVxdWlyZWQiLAo+ICsJLmNtZCA9IHsgLndpZHRoID0gTUFYX1dJRFRILCAuaGVpZ2h0 ID0gTUFYX0hFSUdIVCwgLnBpeGVsX2Zvcm1hdCA9IERSTV9GT1JNQVRfQUJHUjg4ODgsCj4gKwkJ IC5oYW5kbGVzID0geyAxLCAwLCAwIH0sIC5waXRjaGVzID0geyA0ICogTUFYX1dJRFRIICsgMSwg MCwgMCB9LAo+ICsJfQo+ICt9LAo+ICt7IC5idWZmZXJfY3JlYXRlZCA9IDAsIC5uYW1lID0gIkFC R1I4ODg4IHBpdGNoIGxlc3MgdGhhbiBtaW4gcmVxdWlyZWQiLAo+ICsJLmNtZCA9IHsgLndpZHRo ID0gTUFYX1dJRFRILCAuaGVpZ2h0ID0gTUFYX0hFSUdIVCwgLnBpeGVsX2Zvcm1hdCA9IERSTV9G T1JNQVRfQUJHUjg4ODgsCj4gKwkJIC5oYW5kbGVzID0geyAxLCAwLCAwIH0sIC5waXRjaGVzID0g eyA0ICogTUFYX1dJRFRIIC0gMSwgMCwgMCB9LAo+ICsJfQo+ICt9LAo+ICt7IC5idWZmZXJfY3Jl YXRlZCA9IDAsIC5uYW1lID0gIkFCR1I4ODg4IEludmFsaWQgd2lkdGgiLAo+ICsJLmNtZCA9IHsg LndpZHRoID0gTUFYX1dJRFRIICsgMSwgLmhlaWdodCA9IE1BWF9IRUlHSFQsIC5waXhlbF9mb3Jt YXQgPSBEUk1fRk9STUFUX0FCR1I4ODg4LAo+ICsJCSAuaGFuZGxlcyA9IHsgMSwgMCwgMCB9LCAu cGl0Y2hlcyA9IHsgNCAqIChNQVhfV0lEVEggKyAxKSwgMCwgMCB9LAo+ICsJfQo+ICt9LAo+ICt7 IC5idWZmZXJfY3JlYXRlZCA9IDAsIC5uYW1lID0gIkFCR1I4ODg4IEludmFsaWQgYnVmZmVyIGhh bmRsZSIsCj4gKwkuY21kID0geyAud2lkdGggPSBNQVhfV0lEVEgsIC5oZWlnaHQgPSBNQVhfSEVJ R0hULCAucGl4ZWxfZm9ybWF0ID0gRFJNX0ZPUk1BVF9BQkdSODg4OCwKPiArCQkgLmhhbmRsZXMg PSB7IDAsIDAsIDAgfSwgLnBpdGNoZXMgPSB7IDQgKiBNQVhfV0lEVEgsIDAsIDAgfSwKPiArCX0K PiArfSwKPiAreyAuYnVmZmVyX2NyZWF0ZWQgPSAwLCAubmFtZSA9ICJObyBwaXhlbCBmb3JtYXQi LAo+ICsJLmNtZCA9IHsgLndpZHRoID0gTUFYX1dJRFRILCAuaGVpZ2h0ID0gTUFYX0hFSUdIVCwg LnBpeGVsX2Zvcm1hdCA9IDAsCj4gKwkJIC5oYW5kbGVzID0geyAxLCAwLCAwIH0sIC5waXRjaGVz ID0geyA0ICogTUFYX1dJRFRILCAwLCAwIH0sCj4gKwl9Cj4gK30sCj4gK3sgLmJ1ZmZlcl9jcmVh dGVkID0gMCwgLm5hbWUgPSAiQUJHUjg4ODggV2lkdGggMCIsCj4gKwkuY21kID0geyAud2lkdGgg PSAwLCAuaGVpZ2h0ID0gTUFYX0hFSUdIVCwgLnBpeGVsX2Zvcm1hdCA9IERSTV9GT1JNQVRfQUJH Ujg4ODgsCj4gKwkJIC5oYW5kbGVzID0geyAxLCAwLCAwIH0sIC5waXRjaGVzID0geyA0ICogTUFY X1dJRFRILCAwLCAwIH0sCj4gKwl9Cj4gK30sCj4gK3sgLmJ1ZmZlcl9jcmVhdGVkID0gMCwgLm5h bWUgPSAiQUJHUjg4ODggSGVpZ2h0IDAiLAo+ICsJLmNtZCA9IHsgLndpZHRoID0gTUFYX1dJRFRI LCAuaGVpZ2h0ID0gMCwgLnBpeGVsX2Zvcm1hdCA9IERSTV9GT1JNQVRfQUJHUjg4ODgsCj4gKwkJ IC5oYW5kbGVzID0geyAxLCAwLCAwIH0sIC5waXRjaGVzID0geyA0ICogTUFYX1dJRFRILCAwLCAw IH0sCj4gKwl9Cj4gK30sCj4gK3sgLmJ1ZmZlcl9jcmVhdGVkID0gMCwgLm5hbWUgPSAiQUJHUjg4 ODggT3V0IG9mIGJvdW5kIGhlaWdodCAqIHBpdGNoIGNvbWJpbmF0aW9uIiwKPiArCS5jbWQgPSB7 IC53aWR0aCA9IE1BWF9XSURUSCwgLmhlaWdodCA9IE1BWF9IRUlHSFQsIC5waXhlbF9mb3JtYXQg PSBEUk1fRk9STUFUX0FCR1I4ODg4LAo+ICsJCSAuaGFuZGxlcyA9IHsgMSwgMCwgMCB9LCAub2Zm c2V0cyA9IHsgVUlOVF9NQVggLSAxLCAwLCAwIH0sIC5waXRjaGVzID0geyA0ICogTUFYX1dJRFRI LCAwLCAwIH0sCj4gKwl9Cj4gK30sCj4gK3sgLmJ1ZmZlcl9jcmVhdGVkID0gMSwgLm5hbWUgPSAi QUJHUjg4ODggTGFyZ2UgYnVmZmVyIG9mZnNldCIsCj4gKwkuY21kID0geyAud2lkdGggPSBNQVhf V0lEVEgsIC5oZWlnaHQgPSBNQVhfSEVJR0hULCAucGl4ZWxfZm9ybWF0ID0gRFJNX0ZPUk1BVF9B QkdSODg4OCwKPiArCQkgLmhhbmRsZXMgPSB7IDEsIDAsIDAgfSwgLm9mZnNldHMgPSB7IFVJTlRf TUFYIC8gMiwgMCwgMCB9LCAucGl0Y2hlcyA9IHsgNCAqIE1BWF9XSURUSCwgMCwgMCB9LAo+ICsJ fQo+ICt9LAo+ICt7IC5idWZmZXJfY3JlYXRlZCA9IDEsIC5uYW1lID0gIkFCR1I4ODg4IFNldCBE Uk1fTU9ERV9GQl9NT0RJRklFUlMgd2l0aG91dCBtb2RpZmllcnMiLAo+ICsJLmNtZCA9IHsgLndp ZHRoID0gTUFYX1dJRFRILCAuaGVpZ2h0ID0gTUFYX0hFSUdIVCwgLnBpeGVsX2Zvcm1hdCA9IERS TV9GT1JNQVRfQUJHUjg4ODgsCj4gKwkJIC5oYW5kbGVzID0geyAxLCAwLCAwIH0sIC5vZmZzZXRz ID0geyBVSU5UX01BWCAvIDIsIDAsIDAgfSwKPiArCQkgLnBpdGNoZXMgPSB7IDQgKiBNQVhfV0lE VEgsIDAsIDAgfSwgLmZsYWdzID0gRFJNX01PREVfRkJfTU9ESUZJRVJTLAo+ICsJfQo+ICt9LAo+ ICt7IC5idWZmZXJfY3JlYXRlZCA9IDEsIC5uYW1lID0gIkFCR1I4ODg4IFZhbGlkIGJ1ZmZlciBt b2RpZmllciIsCj4gKwkuY21kID0geyAud2lkdGggPSBNQVhfV0lEVEgsIC5oZWlnaHQgPSBNQVhf SEVJR0hULCAucGl4ZWxfZm9ybWF0ID0gRFJNX0ZPUk1BVF9BQkdSODg4OCwKPiArCQkgLmhhbmRs ZXMgPSB7IDEsIDAsIDAgfSwgLm9mZnNldHMgPSB7IFVJTlRfTUFYIC8gMiwgMCwgMCB9LCAucGl0 Y2hlcyA9IHsgNCAqIE1BWF9XSURUSCwgMCwgMCB9LAo+ICsJCSAuZmxhZ3MgPSBEUk1fTU9ERV9G Ql9NT0RJRklFUlMsIC5tb2RpZmllciA9IHsgQUZCQ19GT1JNQVRfTU9EX1lUUiwgMCwgMCB9LAo+ ICsJfQo+ICt9LAo+ICt7IC5idWZmZXJfY3JlYXRlZCA9IDAsIC5uYW1lID0gIkFCR1I4ODg4IElu dmFsaWQgYnVmZmVyIG1vZGlmaWVyKERSTV9GT1JNQVRfTU9EX1NBTVNVTkdfNjRfMzJfVElMRSki LAo+ICsJLmNtZCA9IHsgLndpZHRoID0gTUFYX1dJRFRILCAuaGVpZ2h0ID0gTUFYX0hFSUdIVCwg LnBpeGVsX2Zvcm1hdCA9IERSTV9GT1JNQVRfQUJHUjg4ODgsCj4gKwkJIC5oYW5kbGVzID0geyAx LCAwLCAwIH0sIC5vZmZzZXRzID0geyBVSU5UX01BWCAvIDIsIDAsIDAgfSwKPiArCQkgLnBpdGNo ZXMgPSB7IDQgKiBNQVhfV0lEVEgsIDAsIDAgfSwgLmZsYWdzID0gRFJNX01PREVfRkJfTU9ESUZJ RVJTLAo+ICsJCSAubW9kaWZpZXIgPSB7IERSTV9GT1JNQVRfTU9EX1NBTVNVTkdfNjRfMzJfVElM RSwgMCwgMCB9LAo+ICsJfQo+ICt9LAo+ICt7IC5idWZmZXJfY3JlYXRlZCA9IDEsIC5uYW1lID0g IkFCR1I4ODg4IEV4dHJhIHBpdGNoZXMgd2l0aG91dCBEUk1fTU9ERV9GQl9NT0RJRklFUlMiLAo+ ICsJLmNtZCA9IHsgLndpZHRoID0gTUFYX1dJRFRILCAuaGVpZ2h0ID0gTUFYX0hFSUdIVCwgLnBp eGVsX2Zvcm1hdCA9IERSTV9GT1JNQVRfQUJHUjg4ODgsCj4gKwkJIC5oYW5kbGVzID0geyAxLCAw LCAwIH0sIC5vZmZzZXRzID0geyBVSU5UX01BWCAvIDIsIDAsIDAgfSwKPiArCQkgLnBpdGNoZXMg PSB7IDQgKiBNQVhfV0lEVEgsIDQgKiBNQVhfV0lEVEgsIDAgfSwKPiArCX0KPiArfSwKPiAreyAu YnVmZmVyX2NyZWF0ZWQgPSAwLCAubmFtZSA9ICJBQkdSODg4OCBFeHRyYSBwaXRjaGVzIHdpdGgg RFJNX01PREVfRkJfTU9ESUZJRVJTIiwKPiArCS5jbWQgPSB7IC53aWR0aCA9IE1BWF9XSURUSCwg LmhlaWdodCA9IE1BWF9IRUlHSFQsIC5waXhlbF9mb3JtYXQgPSBEUk1fRk9STUFUX0FCR1I4ODg4 LAo+ICsJCSAuaGFuZGxlcyA9IHsgMSwgMCwgMCB9LCAuZmxhZ3MgPSBEUk1fTU9ERV9GQl9NT0RJ RklFUlMsCj4gKwkJIC5waXRjaGVzID0geyA0ICogTUFYX1dJRFRILCA0ICogTUFYX1dJRFRILCAw IH0sCj4gKwl9Cj4gK30sCj4gK3sgLmJ1ZmZlcl9jcmVhdGVkID0gMSwgLm5hbWUgPSAiTlYxMiBO b3JtYWwgc2l6ZXMiLAo+ICsJLmNtZCA9IHsgLndpZHRoID0gNjAwLCAuaGVpZ2h0ID0gNjAwLCAu cGl4ZWxfZm9ybWF0ID0gRFJNX0ZPUk1BVF9OVjEyLAo+ICsJCSAuaGFuZGxlcyA9IHsgMSwgMSwg MCB9LCAucGl0Y2hlcyA9IHsgNjAwLCA2MDAsIDAgfSwKPiArCX0KPiArfSwKPiAreyAuYnVmZmVy X2NyZWF0ZWQgPSAxLCAubmFtZSA9ICJOVjEyIE1heCBzaXplcyIsCj4gKwkuY21kID0geyAud2lk dGggPSBNQVhfV0lEVEgsIC5oZWlnaHQgPSBNQVhfSEVJR0hULCAucGl4ZWxfZm9ybWF0ID0gRFJN X0ZPUk1BVF9OVjEyLAo+ICsJCSAuaGFuZGxlcyA9IHsgMSwgMSwgMCB9LCAucGl0Y2hlcyA9IHsg TUFYX1dJRFRILCBNQVhfV0lEVEgsIDAgfSwKPiArCX0KPiArfSwKPiAreyAuYnVmZmVyX2NyZWF0 ZWQgPSAwLCAubmFtZSA9ICJOVjEyIEludmFsaWQgcGl0Y2giLAo+ICsJLmNtZCA9IHsgLndpZHRo ID0gTUFYX1dJRFRILCAuaGVpZ2h0ID0gTUFYX0hFSUdIVCwgLnBpeGVsX2Zvcm1hdCA9IERSTV9G T1JNQVRfTlYxMiwKPiArCQkgLmhhbmRsZXMgPSB7IDEsIDEsIDAgfSwgLnBpdGNoZXMgPSB7IE1B WF9XSURUSCwgTUFYX1dJRFRIIC0gMSwgMCB9LAo+ICsJfQo+ICt9LAo+ICt7IC5idWZmZXJfY3Jl YXRlZCA9IDAsIC5uYW1lID0gIk5WMTIgSW52YWxpZCBtb2RpZmllci9taXNzc2luZyBEUk1fTU9E RV9GQl9NT0RJRklFUlMgZmxhZyIsCj4gKwkuY21kID0geyAud2lkdGggPSBNQVhfV0lEVEgsIC5o ZWlnaHQgPSBNQVhfSEVJR0hULCAucGl4ZWxfZm9ybWF0ID0gRFJNX0ZPUk1BVF9OVjEyLAo+ICsJ CSAuaGFuZGxlcyA9IHsgMSwgMSwgMCB9LCAubW9kaWZpZXIgPSB7IERSTV9GT1JNQVRfTU9EX1NB TVNVTkdfNjRfMzJfVElMRSwgMCwgMCB9LAo+ICsJCSAucGl0Y2hlcyA9IHsgTUFYX1dJRFRILCBN QVhfV0lEVEgsIDAgfSwKPiArCX0KPiArfSwKPiAreyAuYnVmZmVyX2NyZWF0ZWQgPSAwLCAubmFt ZSA9ICJOVjEyIGRpZmZlcmVudCAgbW9kaWZpZXIgcGVyLXBsYW5lIiwKPiArCS5jbWQgPSB7IC53 aWR0aCA9IE1BWF9XSURUSCwgLmhlaWdodCA9IE1BWF9IRUlHSFQsIC5waXhlbF9mb3JtYXQgPSBE Uk1fRk9STUFUX05WMTIsCj4gKwkJIC5oYW5kbGVzID0geyAxLCAxLCAwIH0sIC5mbGFncyA9IERS TV9NT0RFX0ZCX01PRElGSUVSUywKPiArCQkgLm1vZGlmaWVyID0geyBEUk1fRk9STUFUX01PRF9T QU1TVU5HXzY0XzMyX1RJTEUsIDAsIDAgfSwKPiArCQkgLnBpdGNoZXMgPSB7IE1BWF9XSURUSCwg TUFYX1dJRFRILCAwIH0sCj4gKwl9Cj4gK30sCj4gK3sgLmJ1ZmZlcl9jcmVhdGVkID0gMSwgLm5h bWUgPSAiTlYxMiB3aXRoIERSTV9GT1JNQVRfTU9EX1NBTVNVTkdfNjRfMzJfVElMRSIsCj4gKwku Y21kID0geyAud2lkdGggPSBNQVhfV0lEVEgsIC5oZWlnaHQgPSBNQVhfSEVJR0hULCAucGl4ZWxf Zm9ybWF0ID0gRFJNX0ZPUk1BVF9OVjEyLAo+ICsJCSAuaGFuZGxlcyA9IHsgMSwgMSwgMCB9LCAu ZmxhZ3MgPSBEUk1fTU9ERV9GQl9NT0RJRklFUlMsCj4gKwkJIC5tb2RpZmllciA9IHsgRFJNX0ZP Uk1BVF9NT0RfU0FNU1VOR182NF8zMl9USUxFLCBEUk1fRk9STUFUX01PRF9TQU1TVU5HXzY0XzMy X1RJTEUsIDAgfSwKPiArCQkgLnBpdGNoZXMgPSB7IE1BWF9XSURUSCwgTUFYX1dJRFRILCAwIH0s Cj4gKwl9Cj4gK30sCj4gK3sgLmJ1ZmZlcl9jcmVhdGVkID0gMCwgLm5hbWUgPSAiTlYxMiBWYWxp ZCBtb2RpZmllcnMgd2l0aG91dCBEUk1fTU9ERV9GQl9NT0RJRklFUlMiLAo+ICsJLmNtZCA9IHsg LndpZHRoID0gTUFYX1dJRFRILCAuaGVpZ2h0ID0gTUFYX0hFSUdIVCwgLnBpeGVsX2Zvcm1hdCA9 IERSTV9GT1JNQVRfTlYxMiwKPiArCQkgLmhhbmRsZXMgPSB7IDEsIDEsIDAgfSwgLm1vZGlmaWVy ID0geyBEUk1fRk9STUFUX01PRF9TQU1TVU5HXzY0XzMyX1RJTEUsCj4gKwkJCQkJCSAgICAgICBE Uk1fRk9STUFUX01PRF9TQU1TVU5HXzY0XzMyX1RJTEUsIDAgfSwKPiArCQkgLnBpdGNoZXMgPSB7 IE1BWF9XSURUSCwgTUFYX1dJRFRILCAwIH0sCj4gKwl9Cj4gK30sCj4gK3sgLmJ1ZmZlcl9jcmVh dGVkID0gMCwgLm5hbWUgPSAiTlYxMiBNb2RpZmllciBmb3IgaW5leGlzdGVudCBwbGFuZSIsCj4g KwkuY21kID0geyAud2lkdGggPSBNQVhfV0lEVEgsIC5oZWlnaHQgPSBNQVhfSEVJR0hULCAucGl4 ZWxfZm9ybWF0ID0gRFJNX0ZPUk1BVF9OVjEyLAo+ICsJCSAuaGFuZGxlcyA9IHsgMSwgMSwgMCB9 LCAuZmxhZ3MgPSBEUk1fTU9ERV9GQl9NT0RJRklFUlMsCj4gKwkJIC5tb2RpZmllciA9IHsgRFJN X0ZPUk1BVF9NT0RfU0FNU1VOR182NF8zMl9USUxFLCBEUk1fRk9STUFUX01PRF9TQU1TVU5HXzY0 XzMyX1RJTEUsCj4gKwkJCSAgICAgICBEUk1fRk9STUFUX01PRF9TQU1TVU5HXzY0XzMyX1RJTEUg fSwKPiArCQkgLnBpdGNoZXMgPSB7IE1BWF9XSURUSCwgTUFYX1dJRFRILCAwIH0sCj4gKwl9Cj4g K30sCj4gK3sgLmJ1ZmZlcl9jcmVhdGVkID0gMCwgLm5hbWUgPSAiTlYxMiBIYW5kbGUgZm9yIGlu ZXhpc3RlbnQgcGxhbmUiLAo+ICsJLmNtZCA9IHsgLndpZHRoID0gTUFYX1dJRFRILCAuaGVpZ2h0 ID0gTUFYX0hFSUdIVCwgLnBpeGVsX2Zvcm1hdCA9IERSTV9GT1JNQVRfTlYxMiwKPiArCQkgLmhh bmRsZXMgPSB7IDEsIDEsIDEgfSwgLmZsYWdzID0gRFJNX01PREVfRkJfTU9ESUZJRVJTLCAucGl0 Y2hlcyA9IHsgTUFYX1dJRFRILCBNQVhfV0lEVEgsIDAgfSwKPiArCX0KPiArfSwKPiAreyAuYnVm ZmVyX2NyZWF0ZWQgPSAxLCAubmFtZSA9ICJOVjEyIEhhbmRsZSBmb3IgaW5leGlzdGVudCBwbGFu ZSB3aXRob3V0IERSTV9NT0RFX0ZCX01PRElGSUVSUyIsCj4gKwkuY21kID0geyAud2lkdGggPSA2 MDAsIC5oZWlnaHQgPSA2MDAsIC5waXhlbF9mb3JtYXQgPSBEUk1fRk9STUFUX05WMTIsCj4gKwkJ IC5oYW5kbGVzID0geyAxLCAxLCAxIH0sIC5waXRjaGVzID0geyA2MDAsIDYwMCwgNjAwIH0sCj4g Kwl9Cj4gK30sCj4gK3sgLmJ1ZmZlcl9jcmVhdGVkID0gMSwgLm5hbWUgPSAiWVZVNDIwIE5vcm1h bCBzaXplcyIsCj4gKwkuY21kID0geyAud2lkdGggPSA2MDAsIC5oZWlnaHQgPSA2MDAsIC5waXhl bF9mb3JtYXQgPSBEUk1fRk9STUFUX1lWVTQyMCwKPiArCQkgLmhhbmRsZXMgPSB7IDEsIDEsIDEg fSwgLmZsYWdzID0gRFJNX01PREVfRkJfTU9ESUZJRVJTLAo+ICsJCSAucGl0Y2hlcyA9IHsgNjAw LCAzMDAsIDMwMCB9LAo+ICsJfQo+ICt9LAo+ICt7IC5idWZmZXJfY3JlYXRlZCA9IDEsIC5uYW1l ID0gIllWVTQyMCBEUk1fTU9ERV9GQl9NT0RJRklFUlMgc2V0IHdpdGhvdXQgbW9kaWZpZXIiLAo+ ICsJLmNtZCA9IHsgLndpZHRoID0gNjAwLCAuaGVpZ2h0ID0gNjAwLCAucGl4ZWxfZm9ybWF0ID0g RFJNX0ZPUk1BVF9ZVlU0MjAsCj4gKwkJIC5oYW5kbGVzID0geyAxLCAxLCAxIH0sIC5waXRjaGVz ID0geyA2MDAsIDMwMCwgMzAwIH0sCj4gKwl9Cj4gK30sCj4gK3sgLmJ1ZmZlcl9jcmVhdGVkID0g MSwgLm5hbWUgPSAiWVZVNDIwIE1heCBzaXplcyIsCj4gKwkuY21kID0geyAud2lkdGggPSBNQVhf V0lEVEgsIC5oZWlnaHQgPSBNQVhfSEVJR0hULCAucGl4ZWxfZm9ybWF0ID0gRFJNX0ZPUk1BVF9Z VlU0MjAsCj4gKwkJIC5oYW5kbGVzID0geyAxLCAxLCAxIH0sIC5waXRjaGVzID0geyBNQVhfV0lE VEgsIERJVl9ST1VORF9VUChNQVhfV0lEVEgsIDIpLAo+ICsJCQkJCQkgICAgICBESVZfUk9VTkRf VVAoTUFYX1dJRFRILCAyKSB9LAo+ICsJfQo+ICt9LAo+ICt7IC5idWZmZXJfY3JlYXRlZCA9IDAs IC5uYW1lID0gIllWVTQyMCBJbnZhbGlkIHBpdGNoIiwKPiArCS5jbWQgPSB7IC53aWR0aCA9IE1B WF9XSURUSCwgLmhlaWdodCA9IE1BWF9IRUlHSFQsIC5waXhlbF9mb3JtYXQgPSBEUk1fRk9STUFU X1lWVTQyMCwKPiArCQkgLmhhbmRsZXMgPSB7IDEsIDEsIDEgfSwgLnBpdGNoZXMgPSB7IE1BWF9X SURUSCwgRElWX1JPVU5EX1VQKE1BWF9XSURUSCwgMikgLSAxLAo+ICsJCQkJCQkgICAgICBESVZf Uk9VTkRfVVAoTUFYX1dJRFRILCAyKSB9LAo+ICsJfQo+ICt9LAo+ICt7IC5idWZmZXJfY3JlYXRl ZCA9IDEsIC5uYW1lID0gIllWVTQyMCBEaWZmZXJlbnQgcGl0Y2hlcyIsCj4gKwkuY21kID0geyAu d2lkdGggPSBNQVhfV0lEVEgsIC5oZWlnaHQgPSBNQVhfSEVJR0hULCAucGl4ZWxfZm9ybWF0ID0g RFJNX0ZPUk1BVF9ZVlU0MjAsCj4gKwkJIC5oYW5kbGVzID0geyAxLCAxLCAxIH0sIC5waXRjaGVz ID0geyBNQVhfV0lEVEgsIERJVl9ST1VORF9VUChNQVhfV0lEVEgsIDIpICsgMSwKPiArCQkJCQkJ ICAgICAgRElWX1JPVU5EX1VQKE1BWF9XSURUSCwgMikgKyA3IH0sCj4gKwl9Cj4gK30sCj4gK3sg LmJ1ZmZlcl9jcmVhdGVkID0gMSwgLm5hbWUgPSAiWVZVNDIwIERpZmZlcmVudCBidWZmZXIgb2Zm c2V0cy9waXRjaGVzIiwKPiArCS5jbWQgPSB7IC53aWR0aCA9IE1BWF9XSURUSCwgLmhlaWdodCA9 IE1BWF9IRUlHSFQsIC5waXhlbF9mb3JtYXQgPSBEUk1fRk9STUFUX1lWVTQyMCwKPiArCQkgLmhh bmRsZXMgPSB7IDEsIDEsIDEgfSwgLm9mZnNldHMgPSB7IE1BWF9XSURUSCwgTUFYX1dJRFRIICAr IE1BWF9XSURUSCAqIE1BWF9IRUlHSFQsCj4gKwkJCQkJCSAgICAgIE1BWF9XSURUSCAgKyAyICog TUFYX1dJRFRIICogTUFYX0hFSUdIVCB9LAo+ICsJCSAucGl0Y2hlcyA9IHsgTUFYX1dJRFRILCBE SVZfUk9VTkRfVVAoTUFYX1dJRFRILCAyKSArIDEsIERJVl9ST1VORF9VUChNQVhfV0lEVEgsIDIp ICsgNyB9LAo+ICsJfQo+ICt9LAo+ICt7IC5idWZmZXJfY3JlYXRlZCA9IDAsIC5uYW1lID0gIllW VTQyMCBNb2RpZmllciBzZXQganVzdCBmb3IgcGxhbmUgMCwgd2l0aG91dCBEUk1fTU9ERV9GQl9N T0RJRklFUlMiLAo+ICsJLmNtZCA9IHsgLndpZHRoID0gTUFYX1dJRFRILCAuaGVpZ2h0ID0gTUFY X0hFSUdIVCwgLnBpeGVsX2Zvcm1hdCA9IERSTV9GT1JNQVRfWVZVNDIwLAo+ICsJCSAuaGFuZGxl cyA9IHsgMSwgMSwgMSB9LCAubW9kaWZpZXIgPSB7IEFGQkNfRk9STUFUX01PRF9TUEFSU0UsIDAs IDAgfSwKPiArCQkgLnBpdGNoZXMgPSB7IE1BWF9XSURUSCwgRElWX1JPVU5EX1VQKE1BWF9XSURU SCwgMiksIERJVl9ST1VORF9VUChNQVhfV0lEVEgsIDIpIH0sCj4gKwl9Cj4gK30sCj4gK3sgLmJ1 ZmZlcl9jcmVhdGVkID0gMCwgLm5hbWUgPSAiWVZVNDIwIE1vZGlmaWVyIHNldCBqdXN0IGZvciBw bGFuZXMgMCwgMSwgd2l0aG91dCBEUk1fTU9ERV9GQl9NT0RJRklFUlMiLAo+ICsJLmNtZCA9IHsg LndpZHRoID0gTUFYX1dJRFRILCAuaGVpZ2h0ID0gTUFYX0hFSUdIVCwgLnBpeGVsX2Zvcm1hdCA9 IERSTV9GT1JNQVRfWVZVNDIwLAo+ICsJCSAuaGFuZGxlcyA9IHsgMSwgMSwgMSB9LCAubW9kaWZp ZXIgPSB7IEFGQkNfRk9STUFUX01PRF9TUEFSU0UsIEFGQkNfRk9STUFUX01PRF9TUEFSU0UsIDAg fSwKPiArCQkgLnBpdGNoZXMgPSB7IE1BWF9XSURUSCwgRElWX1JPVU5EX1VQKE1BWF9XSURUSCwg MiksIERJVl9ST1VORF9VUChNQVhfV0lEVEgsIDIpIH0sCj4gKwl9Cj4gK30sCj4gK3sgLmJ1ZmZl cl9jcmVhdGVkID0gMCwgLm5hbWUgPSAiWVZVNDIwIE1vZGlmaWVyIHNldCBqdXN0IGZvciBwbGFu ZSAwLCAxLCB3aXRoIERSTV9NT0RFX0ZCX01PRElGSUVSUyIsCj4gKwkuY21kID0geyAud2lkdGgg PSBNQVhfV0lEVEgsIC5oZWlnaHQgPSBNQVhfSEVJR0hULCAucGl4ZWxfZm9ybWF0ID0gRFJNX0ZP Uk1BVF9ZVlU0MjAsCj4gKwkJIC5oYW5kbGVzID0geyAxLCAxLCAxIH0sIC5mbGFncyA9IERSTV9N T0RFX0ZCX01PRElGSUVSUywKPiArCQkgLm1vZGlmaWVyID0geyBBRkJDX0ZPUk1BVF9NT0RfU1BB UlNFLCBBRkJDX0ZPUk1BVF9NT0RfU1BBUlNFLCAwIH0sCj4gKwkJIC5waXRjaGVzID0geyBNQVhf V0lEVEgsIERJVl9ST1VORF9VUChNQVhfV0lEVEgsIDIpLCBESVZfUk9VTkRfVVAoTUFYX1dJRFRI LCAyKSB9LAo+ICsJfQo+ICt9LAo+ICt7IC5idWZmZXJfY3JlYXRlZCA9IDEsIC5uYW1lID0gIllW VTQyMCBWYWxpZCBtb2RpZmllciIsCj4gKwkuY21kID0geyAud2lkdGggPSBNQVhfV0lEVEgsIC5o ZWlnaHQgPSBNQVhfSEVJR0hULCAucGl4ZWxfZm9ybWF0ID0gRFJNX0ZPUk1BVF9ZVlU0MjAsCj4g KwkJIC5oYW5kbGVzID0geyAxLCAxLCAxIH0sIC5mbGFncyA9IERSTV9NT0RFX0ZCX01PRElGSUVS UywKPiArCQkgLm1vZGlmaWVyID0geyBBRkJDX0ZPUk1BVF9NT0RfU1BBUlNFLCBBRkJDX0ZPUk1B VF9NT0RfU1BBUlNFLCBBRkJDX0ZPUk1BVF9NT0RfU1BBUlNFIH0sCj4gKwkJIC5waXRjaGVzID0g eyBNQVhfV0lEVEgsIERJVl9ST1VORF9VUChNQVhfV0lEVEgsIDIpLCBESVZfUk9VTkRfVVAoTUFY X1dJRFRILCAyKSB9LAo+ICsJfQo+ICt9LAo+ICt7IC5idWZmZXJfY3JlYXRlZCA9IDAsIC5uYW1l ID0gIllWVTQyMCBEaWZmZXJlbnQgbW9kaWZpZXJzIHBlciBwbGFuZSIsCj4gKwkuY21kID0geyAu d2lkdGggPSBNQVhfV0lEVEgsIC5oZWlnaHQgPSBNQVhfSEVJR0hULCAucGl4ZWxfZm9ybWF0ID0g RFJNX0ZPUk1BVF9ZVlU0MjAsCj4gKwkJIC5oYW5kbGVzID0geyAxLCAxLCAxIH0sIC5mbGFncyA9 IERSTV9NT0RFX0ZCX01PRElGSUVSUywKPiArCQkgLm1vZGlmaWVyID0geyBBRkJDX0ZPUk1BVF9N T0RfU1BBUlNFLCBBRkJDX0ZPUk1BVF9NT0RfU1BBUlNFIHwgQUZCQ19GT1JNQVRfTU9EX1lUUiwK PiArCQkJICAgICAgIEFGQkNfRk9STUFUX01PRF9TUEFSU0UgfSwKPiArCQkgLnBpdGNoZXMgPSB7 IE1BWF9XSURUSCwgRElWX1JPVU5EX1VQKE1BWF9XSURUSCwgMiksIERJVl9ST1VORF9VUChNQVhf V0lEVEgsIDIpIH0sCj4gKwl9Cj4gK30sCj4gK3sgLmJ1ZmZlcl9jcmVhdGVkID0gMCwgLm5hbWUg PSAiWVZVNDIwIE1vZGlmaWVyIGZvciBpbmV4aXN0ZW50IHBsYW5lIiwKPiArCS5jbWQgPSB7IC53 aWR0aCA9IE1BWF9XSURUSCwgLmhlaWdodCA9IE1BWF9IRUlHSFQsIC5waXhlbF9mb3JtYXQgPSBE Uk1fRk9STUFUX1lWVTQyMCwKPiArCQkgLmhhbmRsZXMgPSB7IDEsIDEsIDEgfSwgLmZsYWdzID0g RFJNX01PREVfRkJfTU9ESUZJRVJTLAo+ICsJCSAubW9kaWZpZXIgPSB7IEFGQkNfRk9STUFUX01P RF9TUEFSU0UsIEFGQkNfRk9STUFUX01PRF9TUEFSU0UsIEFGQkNfRk9STUFUX01PRF9TUEFSU0Us Cj4gKwkJCSAgICAgICBBRkJDX0ZPUk1BVF9NT0RfU1BBUlNFIH0sCj4gKwkJIC5waXRjaGVzID0g eyBNQVhfV0lEVEgsIERJVl9ST1VORF9VUChNQVhfV0lEVEgsIDIpLCBESVZfUk9VTkRfVVAoTUFY X1dJRFRILCAyKSB9LAo+ICsJfQo+ICt9LAo+ICt7IC5idWZmZXJfY3JlYXRlZCA9IDEsIC5uYW1l ID0gIlgwTDIgTm9ybWFsIHNpemVzIiwKPiArCS5jbWQgPSB7IC53aWR0aCA9IDYwMCwgLmhlaWdo dCA9IDYwMCwgLnBpeGVsX2Zvcm1hdCA9IERSTV9GT1JNQVRfWDBMMiwKPiArCQkgLmhhbmRsZXMg PSB7IDEsIDAsIDAgfSwgLnBpdGNoZXMgPSB7IDEyMDAsIDAsIDAgfQo+ICsJfQo+ICt9LAo+ICt7 IC5idWZmZXJfY3JlYXRlZCA9IDEsIC5uYW1lID0gIlgwTDIgTWF4IHNpemVzIiwKPiArCS5jbWQg PSB7IC53aWR0aCA9IE1BWF9XSURUSCwgLmhlaWdodCA9IE1BWF9IRUlHSFQsIC5waXhlbF9mb3Jt YXQgPSBEUk1fRk9STUFUX1gwTDIsCj4gKwkJIC5oYW5kbGVzID0geyAxLCAwLCAwIH0sIC5waXRj aGVzID0geyAyICogTUFYX1dJRFRILCAwLCAwIH0KPiArCX0KPiArfSwKPiAreyAuYnVmZmVyX2Ny ZWF0ZWQgPSAwLCAubmFtZSA9ICJYMEwyIEludmFsaWQgcGl0Y2giLAo+ICsJLmNtZCA9IHsgLndp ZHRoID0gTUFYX1dJRFRILCAuaGVpZ2h0ID0gTUFYX0hFSUdIVCwgLnBpeGVsX2Zvcm1hdCA9IERS TV9GT1JNQVRfWDBMMiwKPiArCQkgLmhhbmRsZXMgPSB7IDEsIDAsIDAgfSwgLnBpdGNoZXMgPSB7 IDIgKiBNQVhfV0lEVEggLSAxLCAwLCAwIH0KPiArCX0KPiArfSwKPiAreyAuYnVmZmVyX2NyZWF0 ZWQgPSAxLCAubmFtZSA9ICJYMEwyIFBpdGNoIGdyZWF0ZXIgdGhhbiBtaW5pbXVtIHJlcXVpcmVk IiwKPiArCS5jbWQgPSB7IC53aWR0aCA9IE1BWF9XSURUSCwgLmhlaWdodCA9IE1BWF9IRUlHSFQs IC5waXhlbF9mb3JtYXQgPSBEUk1fRk9STUFUX1gwTDIsCj4gKwkJIC5oYW5kbGVzID0geyAxLCAw LCAwIH0sIC5waXRjaGVzID0geyAyICogTUFYX1dJRFRIICsgMSwgMCwgMCB9Cj4gKwl9Cj4gK30s Cj4gK3sgLmJ1ZmZlcl9jcmVhdGVkID0gMCwgLm5hbWUgPSAiWDBMMiBIYW5kbGUgZm9yIGluZXhp c3RlbnQgcGxhbmUiLAo+ICsJLmNtZCA9IHsgLndpZHRoID0gTUFYX1dJRFRILCAuaGVpZ2h0ID0g TUFYX0hFSUdIVCwgLnBpeGVsX2Zvcm1hdCA9IERSTV9GT1JNQVRfWDBMMiwKPiArCQkgLmhhbmRs ZXMgPSB7IDEsIDEsIDAgfSwgLmZsYWdzID0gRFJNX01PREVfRkJfTU9ESUZJRVJTLAo+ICsJCSAu cGl0Y2hlcyA9IHsgMiAqIE1BWF9XSURUSCArIDEsIDAsIDAgfQo+ICsJfQo+ICt9LAo+ICt7IC5i dWZmZXJfY3JlYXRlZCA9IDEsIC5uYW1lID0gIlgwTDIgT2Zmc2V0IGZvciBpbmV4aXN0ZW50IHBs YW5lLCB3aXRob3V0IERSTV9NT0RFX0ZCX01PRElGSUVSUyBzZXQiLAo+ICsJLmNtZCA9IHsgLndp ZHRoID0gTUFYX1dJRFRILCAuaGVpZ2h0ID0gTUFYX0hFSUdIVCwgLnBpeGVsX2Zvcm1hdCA9IERS TV9GT1JNQVRfWDBMMiwKPiArCQkgLmhhbmRsZXMgPSB7IDEsIDAsIDAgfSwgLm9mZnNldHMgPSB7 IDAsIDAsIDMgfSwKPiArCQkgLnBpdGNoZXMgPSB7IDIgKiBNQVhfV0lEVEggKyAxLCAwLCAwIH0K PiArCX0KPiArfSwKPiAreyAuYnVmZmVyX2NyZWF0ZWQgPSAwLCAubmFtZSA9ICJYMEwyIE1vZGlm aWVyIHdpdGhvdXQgRFJNX01PREVfRkJfTU9ESUZJRVJTIHNldCIsCj4gKwkuY21kID0geyAud2lk dGggPSBNQVhfV0lEVEgsIC5oZWlnaHQgPSBNQVhfSEVJR0hULCAucGl4ZWxfZm9ybWF0ID0gRFJN X0ZPUk1BVF9YMEwyLAo+ICsJCSAuaGFuZGxlcyA9IHsgMSwgMCwgMCB9LCAucGl0Y2hlcyA9IHsg MiAqIE1BWF9XSURUSCArIDEsIDAsIDAgfSwKPiArCQkgLm1vZGlmaWVyID0geyBBRkJDX0ZPUk1B VF9NT0RfU1BBUlNFLCAwLCAwIH0sCj4gKwl9Cj4gK30sCj4gK3sgLmJ1ZmZlcl9jcmVhdGVkID0g MSwgLm5hbWUgPSAiWDBMMiBWYWxpZCBtb2RpZmllciIsCj4gKwkuY21kID0geyAud2lkdGggPSBN QVhfV0lEVEgsIC5oZWlnaHQgPSBNQVhfSEVJR0hULCAucGl4ZWxfZm9ybWF0ID0gRFJNX0ZPUk1B VF9YMEwyLAo+ICsJCSAuaGFuZGxlcyA9IHsgMSwgMCwgMCB9LCAucGl0Y2hlcyA9IHsgMiAqIE1B WF9XSURUSCArIDEsIDAsIDAgfSwKPiArCQkgLm1vZGlmaWVyID0geyBBRkJDX0ZPUk1BVF9NT0Rf U1BBUlNFLCAwLCAwIH0sIC5mbGFncyA9IERSTV9NT0RFX0ZCX01PRElGSUVSUywKPiArCX0KPiAr fSwKPiAreyAuYnVmZmVyX2NyZWF0ZWQgPSAwLCAubmFtZSA9ICJYMEwyIE1vZGlmaWVyIGZvciBp bmV4aXN0ZW50IHBsYW5lIiwKPiArCS5jbWQgPSB7IC53aWR0aCA9IE1BWF9XSURUSCwgLmhlaWdo dCA9IE1BWF9IRUlHSFQsCj4gKwkJIC5waXhlbF9mb3JtYXQgPSBEUk1fRk9STUFUX1gwTDIsIC5o YW5kbGVzID0geyAxLCAwLCAwIH0sCj4gKwkJIC5waXRjaGVzID0geyAyICogTUFYX1dJRFRIICsg MSwgMCwgMCB9LAo+ICsJCSAubW9kaWZpZXIgPSB7IEFGQkNfRk9STUFUX01PRF9TUEFSU0UsIEFG QkNfRk9STUFUX01PRF9TUEFSU0UsIDAgfSwKPiArCQkgLmZsYWdzID0gRFJNX01PREVfRkJfTU9E SUZJRVJTLAoKTWlzbWF0Y2hpbmcgbW9kaWZpZXIgdGVzdHMgc2VlbXMgdG8gYmUgbWlzc2luZz8g TmVlZHMgbXVsdGktcGxhbmUgb2ZjLgoKPiArCX0KPiArfSwKPiArfTsKPiArCj4gK3N0YXRpYyBz dHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYl9jcmVhdGVfbW9jayhzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LAo+ICsJCQkJCSAgICAgIHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2LAo+ICsJCQkJCSAg ICAgIGNvbnN0IHN0cnVjdCBkcm1fbW9kZV9mYl9jbWQyICptb2RlX2NtZCkKPiArewo+ICsJaW50 ICpidWZmZXJfY3JlYXRlZCA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4gKwkqYnVmZmVyX2NyZWF0ZWQg PSAxOwo+ICsJcmV0dXJuIEVSUl9QVFIoLUVJTlZBTCk7Cj4gK30KPiArCj4gK3N0YXRpYyBpbnQg ZXhlY3V0ZV9kcm1fbW9kZV9mYl9jbWQyKHN0cnVjdCBkcm1fbW9kZV9mYl9jbWQyICpyKQo+ICt7 Cj4gKwlpbnQgYnVmZmVyX2NyZWF0ZWQgPSAwOwo+ICsJc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAq ZmI7Cj4gKwlzdHJ1Y3QgZHJtX21vZGVfY29uZmlnX2Z1bmNzIG1vY2tfY29uZmlnX2Z1bmNzID0g ewo+ICsJCS5mYl9jcmVhdGUgPSBmYl9jcmVhdGVfbW9jaywKPiArCX07Cj4gKwlzdHJ1Y3QgZHJt X2RldmljZSBtb2NrX2RybV9kZXZpY2UgPSB7Cj4gKwkJLm1vZGVfY29uZmlnID0gewo+ICsJCQku bWluX3dpZHRoID0gTUlOX1dJRFRILAo+ICsJCQkubWF4X3dpZHRoID0gTUFYX1dJRFRILAo+ICsJ CQkubWluX2hlaWdodCA9IE1JTl9IRUlHSFQsCj4gKwkJCS5tYXhfaGVpZ2h0ID0gTUFYX0hFSUdI VCwKPiArCQkJLmFsbG93X2ZiX21vZGlmaWVycyA9IHRydWUsCj4gKwkJCS5mdW5jcyA9ICZtb2Nr X2NvbmZpZ19mdW5jcywKPiArCQl9LAo+ICsJCS5kZXZfcHJpdmF0ZSA9ICZidWZmZXJfY3JlYXRl ZAo+ICsJfTsKPiArCj4gKwlmYiA9IGRybV9pbnRlcm5hbF9mcmFtZWJ1ZmZlcl9jcmVhdGUoJm1v Y2tfZHJtX2RldmljZSwgciwgTlVMTCk7Cj4gKwlyZXR1cm4gYnVmZmVyX2NyZWF0ZWQ7Cj4gK30K PiArCj4gK2ludCBpZ3RfY2hlY2tfZHJtX2ZyYW1lYnVmZmVyX2NyZWF0ZSh2b2lkICppZ25vcmVk KQo+ICt7Cj4gKwlpbnQgaSA9IDA7Cj4gKwo+ICsJZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUo Y3JlYXRlYnVmZmVyX3Rlc3RzKTsgaSsrKSB7Cj4gKwkJRkFJTChjcmVhdGVidWZmZXJfdGVzdHNb aV0uYnVmZmVyX2NyZWF0ZWQgIT0KPiArCQkJCWV4ZWN1dGVfZHJtX21vZGVfZmJfY21kMigmY3Jl YXRlYnVmZmVyX3Rlc3RzW2ldLmNtZCksCj4gKwkJICAgICAiVGVzdCAlZDogXCIlc1wiIGZhaWxl ZFxuIiwgaSwgY3JlYXRlYnVmZmVyX3Rlc3RzW2ldLm5hbWUpOwo+ICsJfQo+ICsKPiArCXJldHVy biAwOwo+ICt9Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9zZWxmdGVzdHMvdGVzdC1k cm1fbW9kZXNldF9jb21tb24uaCBiL2RyaXZlcnMvZ3B1L2RybS9zZWxmdGVzdHMvdGVzdC1kcm1f bW9kZXNldF9jb21tb24uaAo+IGluZGV4IDU5MmE2NTgxYjE4OS4uZDVkZjViZDUxYjA1IDEwMDY0 NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9zZWxmdGVzdHMvdGVzdC1kcm1fbW9kZXNldF9jb21t b24uaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9zZWxmdGVzdHMvdGVzdC1kcm1fbW9kZXNldF9j b21tb24uaAo+IEBAIC0xNyw1ICsxNyw2IEBAIGludCBpZ3RfY2hlY2tfcGxhbmVfc3RhdGUodm9p ZCAqaWdub3JlZCk7Cj4gIGludCBpZ3RfY2hlY2tfZHJtX2Zvcm1hdF9ibG9ja193aWR0aCh2b2lk ICppZ25vcmVkKTsKPiAgaW50IGlndF9jaGVja19kcm1fZm9ybWF0X2Jsb2NrX2hlaWdodCh2b2lk ICppZ25vcmVkKTsKPiAgaW50IGlndF9jaGVja19kcm1fZm9ybWF0X21pbl9waXRjaCh2b2lkICpp Z25vcmVkKTsKPiAraW50IGlndF9jaGVja19kcm1fZnJhbWVidWZmZXJfY3JlYXRlKHZvaWQgKmln bm9yZWQpOwoKSSBoYWQgYSBmZXcgY29tbWVudHMgc3VnZ2VzdGlvbiBhZGRpdGlvbmFsIHRlc3Rz LCBidXQgdGhlbiBJIGZvdW5kIHRoZW0KYWxsIHdoZW4gc2Nyb2xsaW5nIGRvd24gYSBiaXQuIFJl YWxseSBjb21wcmVoZW5zaXZlLCBuaWNlIHdvcmshCgpSZXZpZXdlZC1ieTogRGFuaWVsIFZldHRl ciA8ZGFuaWVsLnZldHRlckBmZndsbC5jaD4KPiAgCj4gICNlbmRpZgo+IC0tIAo+IDIuMTkuMQo+ IAoKLS0gCkRhbmllbCBWZXR0ZXIKU29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0aW9u Cmh0dHA6Ly9ibG9nLmZmd2xsLmNoCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2RyaS1kZXZlbAo=