From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH] drm: Convert all helpers to drm_connector_list_iter Date: Fri, 16 Dec 2016 08:29:43 +0100 Message-ID: References: <20161215155843.13408-1-daniel.vetter@ffwll.ch> <201612160608.pIHFGnGj%fengguang.wu@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <201612160608.pIHFGnGj%fengguang.wu@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: kbuild test robot Cc: Intel Graphics Development , Harry Wentland , kbuild-all@01.org, DRI Development List-Id: dri-devel@lists.freedesktop.org SGkgS2J1aWxkIGZvbGtzCgpTbyB5ZWFoIHRoaXMgZG9lc24ndCBhcHBseSBiZWNhdXNlIGl0J3Mg anVzdCAxIHBhdGNoIHJlc2VudCBvdXQgb2YgYQpiaWcgcGF0Y2ggc2VyaWVzLCBpbi1yZXBseS10 byB0aGUgcGF0Y2ggaXQgcmVwbGFjZXMuIFNvIGFwcGx5aW5nIHRoaXMKYWxvbmUgYW5kIHRlbGxp bmcgbWUgKGFuZCBhbGwgdGhlIG1haWxpbmcgbGlzdHMpIHRoYXQgaXQgZG9lc24ndCBhcHBseQpp c24ndCBhbGwgdGhhdCB1c2VmdWwuCgpBbmQgaXQgc2hvdWxkbid0IGJlIHRvbyBoYXJkIHRvIGRl dGVjdCB0aGlzLCBzaW5jZSB0aGUgZmRvIHBhdGNod29yawppbnN0YW5jZSBkb2VzIGNhdGNoIG1v c3Qgb2YgdGhlc2UgcGFydGlhbCByZXNlbmRzIHN1Y2Nlc3NmdWxseSBhbmQKY29ycmVjdGx5LCBh bmQgd2lsbCByZXRlc3QgdGhlIGVudGlyZSBwYXRjaCBzZXJpZXMuCi1EYW5pZWwKCgpPbiBUaHUs IERlYyAxNSwgMjAxNiBhdCAxMTo1OSBQTSwga2J1aWxkIHRlc3Qgcm9ib3QgPGxrcEBpbnRlbC5j b20+IHdyb3RlOgo+IEhpIERhbmllbCwKPgo+IFthdXRvIGJ1aWxkIHRlc3QgRVJST1Igb24gZHJt L2RybS1uZXh0XQo+IFthbHNvIGJ1aWxkIHRlc3QgRVJST1Igb24gbmV4dC0yMDE2MTIxNV0KPiBb Y2Fubm90IGFwcGx5IHRvIHY0LjldCj4gW2lmIHlvdXIgcGF0Y2ggaXMgYXBwbGllZCB0byB0aGUg d3JvbmcgZ2l0IHRyZWUsIHBsZWFzZSBkcm9wIHVzIGEgbm90ZSB0byBoZWxwIGltcHJvdmUgdGhl IHN5c3RlbV0KPgo+IHVybDogICAgaHR0cHM6Ly9naXRodWIuY29tLzBkYXktY2kvbGludXgvY29t bWl0cy9EYW5pZWwtVmV0dGVyL2RybS1Db252ZXJ0LWFsbC1oZWxwZXJzLXRvLWRybV9jb25uZWN0 b3JfbGlzdF9pdGVyLzIwMTYxMjE2LTA2MTUwOAo+IGJhc2U6ICAgZ2l0Oi8vcGVvcGxlLmZyZWVk ZXNrdG9wLm9yZy9+YWlybGllZC9saW51eC5naXQgZHJtLW5leHQKPiBjb25maWc6IGkzODYtcmFu ZGNvbmZpZy14MDAzLTIwMTY1MCAoYXR0YWNoZWQgYXMgLmNvbmZpZykKPiBjb21waWxlcjogZ2Nj LTYgKERlYmlhbiA2LjIuMC0zKSA2LjIuMCAyMDE2MDkwMQo+IHJlcHJvZHVjZToKPiAgICAgICAg ICMgc2F2ZSB0aGUgYXR0YWNoZWQgLmNvbmZpZyB0byBsaW51eCBidWlsZCB0cmVlCj4gICAgICAg ICBtYWtlIEFSQ0g9aTM4Ngo+Cj4gQWxsIGVycm9yL3dhcm5pbmdzIChuZXcgb25lcyBwcmVmaXhl ZCBieSA+Pik6Cj4KPiAgICBkcml2ZXJzL2dwdS9kcm0vZHJtX2NydGNfaGVscGVyLmM6IEluIGZ1 bmN0aW9uICdkcm1faGVscGVyX2VuY29kZXJfaW5fdXNlJzoKPj4+IGRyaXZlcnMvZ3B1L2RybS9k cm1fY3J0Y19oZWxwZXIuYzo5MTozMzogZXJyb3I6IHN0b3JhZ2Ugc2l6ZSBvZiAnY29ubl9pdGVy JyBpc24ndCBrbm93bgo+ICAgICAgc3RydWN0IGRybV9jb25uZWN0b3JfbGlzdF9pdGVyIGNvbm5f aXRlcjsKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn4KPj4+ IGRyaXZlcnMvZ3B1L2RybS9kcm1fY3J0Y19oZWxwZXIuYzoxMDQ6MjogZXJyb3I6IGltcGxpY2l0 IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uICdkcm1fY29ubmVjdG9yX2xpc3RfaXRlcl9nZXQnIFst V2Vycm9yPWltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQo+ICAgICAgZHJtX2Nvbm5lY3Rv cl9saXN0X2l0ZXJfZ2V0KGRldiwgJmNvbm5faXRlcik7Cj4gICAgICBefn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn4KPj4+IGRyaXZlcnMvZ3B1L2RybS9kcm1fY3J0Y19oZWxwZXIuYzoxMDU6Mjog ZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uICdkcm1fZm9yX2VhY2hfY29u bmVjdG9yX2l0ZXInIFstV2Vycm9yPWltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQo+ICAg ICAgZHJtX2Zvcl9lYWNoX2Nvbm5lY3Rvcl9pdGVyKGNvbm5lY3RvciwgJmNvbm5faXRlcikgewo+ ICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cj4+PiBkcml2ZXJzL2dwdS9kcm0vZHJt X2NydGNfaGVscGVyLmM6MTA1OjUzOiBlcnJvcjogZXhwZWN0ZWQgJzsnIGJlZm9yZSAneycgdG9r ZW4KPiAgICAgIGRybV9mb3JfZWFjaF9jb25uZWN0b3JfaXRlcihjb25uZWN0b3IsICZjb25uX2l0 ZXIpIHsKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF4KPiAgICBkcml2ZXJzL2dwdS9kcm0vZHJtX2NydGNfaGVscGVyLmM6OTE6MzM6IHdh cm5pbmc6IHVudXNlZCB2YXJpYWJsZSAnY29ubl9pdGVyJyBbLVd1bnVzZWQtdmFyaWFibGVdCj4g ICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9saXN0X2l0ZXIgY29ubl9pdGVyOwo+ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fgo+ICAgIGRyaXZlcnMvZ3B1L2Ry bS9kcm1fY3J0Y19oZWxwZXIuYzogSW4gZnVuY3Rpb24gJ2RybV9jcnRjX2hlbHBlcl9kaXNhYmxl JzoKPiAgICBkcml2ZXJzL2dwdS9kcm0vZHJtX2NydGNfaGVscGVyLmM6NDQ2OjM0OiBlcnJvcjog c3RvcmFnZSBzaXplIG9mICdjb25uX2l0ZXInIGlzbid0IGtub3duCj4gICAgICAgc3RydWN0IGRy bV9jb25uZWN0b3JfbGlzdF9pdGVyIGNvbm5faXRlcjsKPiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXn5+fn5+fn5+Cj4gICAgZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjX2hl bHBlci5jOjQ1Mjo1NDogZXJyb3I6IGV4cGVjdGVkICc7JyBiZWZvcmUgJ3snIHRva2VuCj4gICAg ICAgZHJtX2Zvcl9lYWNoX2Nvbm5lY3Rvcl9pdGVyKGNvbm5lY3RvciwgJmNvbm5faXRlcikgewo+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IF4KPiAgICBkcml2ZXJzL2dwdS9kcm0vZHJtX2NydGNfaGVscGVyLmM6NDQ2OjM0OiB3YXJuaW5n OiB1bnVzZWQgdmFyaWFibGUgJ2Nvbm5faXRlcicgWy1XdW51c2VkLXZhcmlhYmxlXQo+ICAgICAg IHN0cnVjdCBkcm1fY29ubmVjdG9yX2xpc3RfaXRlciBjb25uX2l0ZXI7Cj4gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fgo+ICAgIGRyaXZlcnMvZ3B1L2RybS9k cm1fY3J0Y19oZWxwZXIuYzogSW4gZnVuY3Rpb24gJ2RybV9jcnRjX2hlbHBlcl9zZXRfY29uZmln JzoKPiAgICBkcml2ZXJzL2dwdS9kcm0vZHJtX2NydGNfaGVscGVyLmM6NTIxOjMzOiBlcnJvcjog c3RvcmFnZSBzaXplIG9mICdjb25uX2l0ZXInIGlzbid0IGtub3duCj4gICAgICBzdHJ1Y3QgZHJt X2Nvbm5lY3Rvcl9saXN0X2l0ZXIgY29ubl9pdGVyOwo+ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIF5+fn5+fn5+fgo+Pj4gZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjX2hlbHBl ci5jOjU4ODozOiBlcnJvcjogZXhwZWN0ZWQgJzsnIGJlZm9yZSAnc2F2ZV9jb25uZWN0b3JfZW5j b2RlcnMnCj4gICAgICAgc2F2ZV9jb25uZWN0b3JfZW5jb2RlcnNbY291bnQrK10gPSBjb25uZWN0 b3ItPmVuY29kZXI7Cj4gICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KPj4+IGRyaXZlcnMv Z3B1L2RybS9kcm1fY3J0Y19oZWxwZXIuYzo1ODk6MjogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0 aW9uIG9mIGZ1bmN0aW9uICdkcm1fY29ubmVjdG9yX2xpc3RfaXRlcl9wdXQnIFstV2Vycm9yPWlt cGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQo+ICAgICAgZHJtX2Nvbm5lY3Rvcl9saXN0X2l0 ZXJfcHV0KCZjb25uX2l0ZXIpOwo+ICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cj4g ICAgZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjX2hlbHBlci5jOjYzMzo1MzogZXJyb3I6IGV4cGVj dGVkICc7JyBiZWZvcmUgJ3snIHRva2VuCj4gICAgICBkcm1fZm9yX2VhY2hfY29ubmVjdG9yX2l0 ZXIoY29ubmVjdG9yLCAmY29ubl9pdGVyKSB7Cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCj4gICAgZHJpdmVycy9ncHUvZHJtL2RybV9j cnRjX2hlbHBlci5jOjY3NTo1MzogZXJyb3I6IGV4cGVjdGVkICc7JyBiZWZvcmUgJ3snIHRva2Vu Cj4gICAgICBkcm1fZm9yX2VhY2hfY29ubmVjdG9yX2l0ZXIoY29ubmVjdG9yLCAmY29ubl9pdGVy KSB7Cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBeCj4+PiBkcml2ZXJzL2dwdS9kcm0vZHJtX2NydGNfaGVscGVyLmM6NzY3OjM6IGVycm9y OiBleHBlY3RlZCAnOycgYmVmb3JlICdjb25uZWN0b3InCj4gICAgICAgY29ubmVjdG9yLT5lbmNv ZGVyID0gc2F2ZV9jb25uZWN0b3JfZW5jb2RlcnNbY291bnQrK107Cj4gICAgICAgXn5+fn5+fn5+ Cj4gICAgZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjX2hlbHBlci5jOjUyMTozMzogd2FybmluZzog dW51c2VkIHZhcmlhYmxlICdjb25uX2l0ZXInIFstV3VudXNlZC12YXJpYWJsZV0KPiAgICAgIHN0 cnVjdCBkcm1fY29ubmVjdG9yX2xpc3RfaXRlciBjb25uX2l0ZXI7Cj4gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+Cj4gICAgZHJpdmVycy9ncHUvZHJtL2RybV9j cnRjX2hlbHBlci5jOjUxNzo0OTogd2FybmluZzogdW51c2VkIHZhcmlhYmxlICduZXdfZW5jb2Rl cicgWy1XdW51c2VkLXZhcmlhYmxlXQo+ICAgICAgc3RydWN0IGRybV9lbmNvZGVyICoqc2F2ZV9j b25uZWN0b3JfZW5jb2RlcnMsICpuZXdfZW5jb2RlciwgKmVuY29kZXI7Cj4gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+Cj4gICAg ZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjX2hlbHBlci5jOjUxNjo0MTogd2FybmluZzogdW51c2Vk IHZhcmlhYmxlICduZXdfY3J0YycgWy1XdW51c2VkLXZhcmlhYmxlXQo+ICAgICAgc3RydWN0IGRy bV9jcnRjICoqc2F2ZV9lbmNvZGVyX2NydGNzLCAqbmV3X2NydGM7Cj4gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fgo+ICAgIGRyaXZlcnMvZ3B1L2Ry bS9kcm1fY3J0Y19oZWxwZXIuYzogSW4gZnVuY3Rpb24gJ2RybV9oZWxwZXJfY2hvb3NlX2VuY29k ZXJfZHBtcyc6Cj4gICAgZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjX2hlbHBlci5jOjc5NTozMzog ZXJyb3I6IHN0b3JhZ2Ugc2l6ZSBvZiAnY29ubl9pdGVyJyBpc24ndCBrbm93bgo+ICAgICAgc3Ry dWN0IGRybV9jb25uZWN0b3JfbGlzdF9pdGVyIGNvbm5faXRlcjsKPiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn4KPiAgICBJbiBmaWxlIGluY2x1ZGVkIGZyb20g aW5jbHVkZS9saW51eC9saW5rYWdlLmg6NDowLAo+ICAgICAgICAgICAgICAgICAgICAgZnJvbSBp bmNsdWRlL2xpbnV4L2tlcm5lbC5oOjYsCj4gICAgICAgICAgICAgICAgICAgICBmcm9tIGRyaXZl cnMvZ3B1L2RybS9kcm1fY3J0Y19oZWxwZXIuYzozMjoKPj4+IGluY2x1ZGUvbGludXgvY29tcGls ZXIuaDoxNDk6MjogZXJyb3I6IGV4cGVjdGVkICc7JyBiZWZvcmUgJ2lmJwo+ICAgICAgaWYgKF9f YnVpbHRpbl9jb25zdGFudF9wKCEhKGNvbmQpKSA/ICEhKGNvbmQpIDogICBcCj4gICAgICBeCj4g ICAgaW5jbHVkZS9saW51eC9jb21waWxlci5oOjE0NzoyMzogbm90ZTogaW4gZXhwYW5zaW9uIG9m IG1hY3JvICdfX3RyYWNlX2lmJwo+ICAgICAjZGVmaW5lIGlmKGNvbmQsIC4uLikgX190cmFjZV9p ZiggKGNvbmQgLCAjIyBfX1ZBX0FSR1NfXykgKQo+ICAgICAgICAgICAgICAgICAgICAgICAgICAg Xn5+fn5+fn5+fgo+Pj4gZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjX2hlbHBlci5jOjgwMDozOiBu b3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8gJ2lmJwo+ICAgICAgIGlmIChjb25uZWN0b3ItPmVu Y29kZXIgPT0gZW5jb2RlcikKPiAgICAgICBefgo+ICAgIGRyaXZlcnMvZ3B1L2RybS9kcm1fY3J0 Y19oZWxwZXIuYzo3OTU6MzM6IHdhcm5pbmc6IHVudXNlZCB2YXJpYWJsZSAnY29ubl9pdGVyJyBb LVd1bnVzZWQtdmFyaWFibGVdCj4gICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9saXN0X2l0ZXIg Y29ubl9pdGVyOwo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+ fgo+ICAgIGRyaXZlcnMvZ3B1L2RybS9kcm1fY3J0Y19oZWxwZXIuYzogSW4gZnVuY3Rpb24gJ2Ry bV9oZWxwZXJfY2hvb3NlX2NydGNfZHBtcyc6Cj4gICAgZHJpdmVycy9ncHUvZHJtL2RybV9jcnRj X2hlbHBlci5jOjgzNjozMzogZXJyb3I6IHN0b3JhZ2Ugc2l6ZSBvZiAnY29ubl9pdGVyJyBpc24n dCBrbm93bgo+ICAgICAgc3RydWN0IGRybV9jb25uZWN0b3JfbGlzdF9pdGVyIGNvbm5faXRlcjsK PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn4KPiAgICBJbiBm aWxlIGluY2x1ZGVkIGZyb20gaW5jbHVkZS9saW51eC9saW5rYWdlLmg6NDowLAo+ICAgICAgICAg ICAgICAgICAgICAgZnJvbSBpbmNsdWRlL2xpbnV4L2tlcm5lbC5oOjYsCj4gICAgICAgICAgICAg ICAgICAgICBmcm9tIGRyaXZlcnMvZ3B1L2RybS9kcm1fY3J0Y19oZWxwZXIuYzozMjoKPj4+IGlu Y2x1ZGUvbGludXgvY29tcGlsZXIuaDoxNDk6MjogZXJyb3I6IGV4cGVjdGVkICc7JyBiZWZvcmUg J2lmJwo+ICAgICAgaWYgKF9fYnVpbHRpbl9jb25zdGFudF9wKCEhKGNvbmQpKSA/ICEhKGNvbmQp IDogICBcCj4gICAgICBeCj4gICAgaW5jbHVkZS9saW51eC9jb21waWxlci5oOjE0NzoyMzogbm90 ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvICdfX3RyYWNlX2lmJwo+ICAgICAjZGVmaW5lIGlmKGNv bmQsIC4uLikgX190cmFjZV9pZiggKGNvbmQgLCAjIyBfX1ZBX0FSR1NfXykgKQo+ICAgICAgICAg ICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fgo+ICAgIGRyaXZlcnMvZ3B1L2RybS9kcm1fY3J0 Y19oZWxwZXIuYzo4NDE6Mzogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvICdpZicKPiAgICAg ICBpZiAoY29ubmVjdG9yLT5lbmNvZGVyICYmIGNvbm5lY3Rvci0+ZW5jb2Rlci0+Y3J0YyA9PSBj cnRjKQo+ICAgICAgIF5+Cj4gICAgZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjX2hlbHBlci5jOjgz NjozMzogd2FybmluZzogdW51c2VkIHZhcmlhYmxlICdjb25uX2l0ZXInIFstV3VudXNlZC12YXJp YWJsZV0KPiAgICAgIHN0cnVjdCBkcm1fY29ubmVjdG9yX2xpc3RfaXRlciBjb25uX2l0ZXI7Cj4g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+Cj4gICAgY2MxOiBz b21lIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3JzCj4gLS0KPiAgICBkcml2ZXJzL2dw dS9kcm0vZHJtX3Byb2JlX2hlbHBlci5jOiBJbiBmdW5jdGlvbiAnZHJtX2ttc19oZWxwZXJfcG9s bF9lbmFibGVfbG9ja2VkJzoKPj4+IGRyaXZlcnMvZ3B1L2RybS9kcm1fcHJvYmVfaGVscGVyLmM6 MTMyOjMzOiBlcnJvcjogc3RvcmFnZSBzaXplIG9mICdjb25uX2l0ZXInIGlzbid0IGtub3duCj4g ICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9saXN0X2l0ZXIgY29ubl9pdGVyOwo+ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fgo+Pj4gZHJpdmVycy9ncHUvZHJt L2RybV9wcm9iZV9oZWxwZXIuYzoxNDA6MjogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9m IGZ1bmN0aW9uICdkcm1fY29ubmVjdG9yX2xpc3RfaXRlcl9nZXQnIFstV2Vycm9yPWltcGxpY2l0 LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQo+ICAgICAgZHJtX2Nvbm5lY3Rvcl9saXN0X2l0ZXJfZ2V0 KGRldiwgJmNvbm5faXRlcik7Cj4gICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KPj4+ IGRyaXZlcnMvZ3B1L2RybS9kcm1fcHJvYmVfaGVscGVyLmM6MTQxOjI6IGVycm9yOiBpbXBsaWNp dCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAnZHJtX2Zvcl9lYWNoX2Nvbm5lY3Rvcl9pdGVyJyBb LVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KPiAgICAgIGRybV9mb3JfZWFj aF9jb25uZWN0b3JfaXRlcihjb25uZWN0b3IsICZjb25uX2l0ZXIpIHsKPiAgICAgIF5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fgo+Pj4gZHJpdmVycy9ncHUvZHJtL2RybV9wcm9iZV9oZWxwZXIu YzoxNDE6NTM6IGVycm9yOiBleHBlY3RlZCAnOycgYmVmb3JlICd7JyB0b2tlbgo+ICAgICAgZHJt X2Zvcl9lYWNoX2Nvbm5lY3Rvcl9pdGVyKGNvbm5lY3RvciwgJmNvbm5faXRlcikgewo+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgo+ICAg IGRyaXZlcnMvZ3B1L2RybS9kcm1fcHJvYmVfaGVscGVyLmM6MTMyOjMzOiB3YXJuaW5nOiB1bnVz ZWQgdmFyaWFibGUgJ2Nvbm5faXRlcicgWy1XdW51c2VkLXZhcmlhYmxlXQo+ICAgICAgc3RydWN0 IGRybV9jb25uZWN0b3JfbGlzdF9pdGVyIGNvbm5faXRlcjsKPiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBefn5+fn5+fn4KPiAgICBkcml2ZXJzL2dwdS9kcm0vZHJtX3Byb2Jl X2hlbHBlci5jOiBJbiBmdW5jdGlvbiAnb3V0cHV0X3BvbGxfZXhlY3V0ZSc6Cj4gICAgZHJpdmVy cy9ncHUvZHJtL2RybV9wcm9iZV9oZWxwZXIuYzozODg6MzM6IGVycm9yOiBzdG9yYWdlIHNpemUg b2YgJ2Nvbm5faXRlcicgaXNuJ3Qga25vd24KPiAgICAgIHN0cnVjdCBkcm1fY29ubmVjdG9yX2xp c3RfaXRlciBjb25uX2l0ZXI7Cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Xn5+fn5+fn5+Cj4gICAgZHJpdmVycy9ncHUvZHJtL2RybV9wcm9iZV9oZWxwZXIuYzo0MDU6NTM6 IGVycm9yOiBleHBlY3RlZCAnOycgYmVmb3JlICd7JyB0b2tlbgo+ICAgICAgZHJtX2Zvcl9lYWNo X2Nvbm5lY3Rvcl9pdGVyKGNvbm5lY3RvciwgJmNvbm5faXRlcikgewo+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgo+ICAgIGRyaXZlcnMv Z3B1L2RybS9kcm1fcHJvYmVfaGVscGVyLmM6Mzg5OjI4OiB3YXJuaW5nOiB1bnVzZWQgdmFyaWFi bGUgJ29sZF9zdGF0dXMnIFstV3VudXNlZC12YXJpYWJsZV0KPiAgICAgIGVudW0gZHJtX2Nvbm5l Y3Rvcl9zdGF0dXMgb2xkX3N0YXR1czsKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Xn5+fn5+fn5+fgo+ICAgIGRyaXZlcnMvZ3B1L2RybS9kcm1fcHJvYmVfaGVscGVyLmM6Mzg4OjMz OiB3YXJuaW5nOiB1bnVzZWQgdmFyaWFibGUgJ2Nvbm5faXRlcicgWy1XdW51c2VkLXZhcmlhYmxl XQo+ICAgICAgc3RydWN0IGRybV9jb25uZWN0b3JfbGlzdF9pdGVyIGNvbm5faXRlcjsKPiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn4KPiAgICBkcml2ZXJzL2dw dS9kcm0vZHJtX3Byb2JlX2hlbHBlci5jOiBJbiBmdW5jdGlvbiAnZHJtX2hlbHBlcl9ocGRfaXJx X2V2ZW50JzoKPiAgICBkcml2ZXJzL2dwdS9kcm0vZHJtX3Byb2JlX2hlbHBlci5jOjU3MDozMzog ZXJyb3I6IHN0b3JhZ2Ugc2l6ZSBvZiAnY29ubl9pdGVyJyBpc24ndCBrbm93bgo+ICAgICAgc3Ry dWN0IGRybV9jb25uZWN0b3JfbGlzdF9pdGVyIGNvbm5faXRlcjsKPiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn4KPiAgICBkcml2ZXJzL2dwdS9kcm0vZHJtX3By b2JlX2hlbHBlci5jOjU3OTo1MzogZXJyb3I6IGV4cGVjdGVkICc7JyBiZWZvcmUgJ3snIHRva2Vu Cj4gICAgICBkcm1fZm9yX2VhY2hfY29ubmVjdG9yX2l0ZXIoY29ubmVjdG9yLCAmY29ubl9pdGVy KSB7Cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBeCj4gICAgZHJpdmVycy9ncHUvZHJtL2RybV9wcm9iZV9oZWxwZXIuYzo1NzE6Mjg6IHdh cm5pbmc6IHVudXNlZCB2YXJpYWJsZSAnb2xkX3N0YXR1cycgWy1XdW51c2VkLXZhcmlhYmxlXQo+ ICAgICAgZW51bSBkcm1fY29ubmVjdG9yX3N0YXR1cyBvbGRfc3RhdHVzOwo+ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+Cj4gICAgZHJpdmVycy9ncHUvZHJtL2RybV9w cm9iZV9oZWxwZXIuYzo1NzA6MzM6IHdhcm5pbmc6IHVudXNlZCB2YXJpYWJsZSAnY29ubl9pdGVy JyBbLVd1bnVzZWQtdmFyaWFibGVdCj4gICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9saXN0X2l0 ZXIgY29ubl9pdGVyOwo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+ fn5+fgo+ICAgIGNjMTogc29tZSB3YXJuaW5ncyBiZWluZyB0cmVhdGVkIGFzIGVycm9ycwo+IC0t Cj4gICAgZHJpdmVycy9ncHUvZHJtL2RybV9wbGFuZV9oZWxwZXIuYzogSW4gZnVuY3Rpb24gJ2dl dF9jb25uZWN0b3JzX2Zvcl9jcnRjJzoKPj4+IGRyaXZlcnMvZ3B1L2RybS9kcm1fcGxhbmVfaGVs cGVyLmM6Nzc6MzM6IGVycm9yOiBzdG9yYWdlIHNpemUgb2YgJ2Nvbm5faXRlcicgaXNuJ3Qga25v d24KPiAgICAgIHN0cnVjdCBkcm1fY29ubmVjdG9yX2xpc3RfaXRlciBjb25uX2l0ZXI7Cj4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+Cj4+PiBkcml2ZXJzL2dw dS9kcm0vZHJtX3BsYW5lX2hlbHBlci5jOjg3OjI6IGVycm9yOiBpbXBsaWNpdCBkZWNsYXJhdGlv biBvZiBmdW5jdGlvbiAnZHJtX2Nvbm5lY3Rvcl9saXN0X2l0ZXJfZ2V0JyBbLVdlcnJvcj1pbXBs aWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KPiAgICAgIGRybV9jb25uZWN0b3JfbGlzdF9pdGVy X2dldChkZXYsICZjb25uX2l0ZXIpOwo+ICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ Cj4+PiBkcml2ZXJzL2dwdS9kcm0vZHJtX3BsYW5lX2hlbHBlci5jOjg4OjI6IGVycm9yOiBpbXBs aWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAnZHJtX2Zvcl9lYWNoX2Nvbm5lY3Rvcl9pdGVy JyBbLVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KPiAgICAgIGRybV9mb3Jf ZWFjaF9jb25uZWN0b3JfaXRlcihjb25uZWN0b3IsICZjb25uX2l0ZXIpIHsKPiAgICAgIF5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgo+Pj4gZHJpdmVycy9ncHUvZHJtL2RybV9wbGFuZV9oZWxw ZXIuYzo4ODo1MzogZXJyb3I6IGV4cGVjdGVkICc7JyBiZWZvcmUgJ3snIHRva2VuCj4gICAgICBk cm1fZm9yX2VhY2hfY29ubmVjdG9yX2l0ZXIoY29ubmVjdG9yLCAmY29ubl9pdGVyKSB7Cj4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCj4g ICAgZHJpdmVycy9ncHUvZHJtL2RybV9wbGFuZV9oZWxwZXIuYzo3NzozMzogd2FybmluZzogdW51 c2VkIHZhcmlhYmxlICdjb25uX2l0ZXInIFstV3VudXNlZC12YXJpYWJsZV0KPiAgICAgIHN0cnVj dCBkcm1fY29ubmVjdG9yX2xpc3RfaXRlciBjb25uX2l0ZXI7Cj4gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+Cj4gICAgY2MxOiBzb21lIHdhcm5pbmdzIGJlaW5n IHRyZWF0ZWQgYXMgZXJyb3JzCj4gLS0KPiAgICBkcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19o ZWxwZXIuYzogSW4gZnVuY3Rpb24gJ2hhbmRsZV9jb25mbGljdGluZ19lbmNvZGVycyc6Cj4+PiBk cml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYzo5NzozMzogZXJyb3I6IHN0b3JhZ2Ug c2l6ZSBvZiAnY29ubl9pdGVyJyBpc24ndCBrbm93bgo+ICAgICAgc3RydWN0IGRybV9jb25uZWN0 b3JfbGlzdF9pdGVyIGNvbm5faXRlcjsKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBefn5+fn5+fn4KPj4+IGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jOjE0 ODoyOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24gJ2RybV9jb25uZWN0 b3JfbGlzdF9pdGVyX2dldCcgWy1XZXJyb3I9aW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25d Cj4gICAgICBkcm1fY29ubmVjdG9yX2xpc3RfaXRlcl9nZXQoc3RhdGUtPmRldiwgJmNvbm5faXRl cik7Cj4gICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KPj4+IGRyaXZlcnMvZ3B1L2Ry bS9kcm1fYXRvbWljX2hlbHBlci5jOjE0OToyOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24g b2YgZnVuY3Rpb24gJ2RybV9mb3JfZWFjaF9jb25uZWN0b3JfaXRlcicgWy1XZXJyb3I9aW1wbGlj aXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCj4gICAgICBkcm1fZm9yX2VhY2hfY29ubmVjdG9yX2l0 ZXIoY29ubmVjdG9yLCAmY29ubl9pdGVyKSB7Cj4gICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn4KPj4+IGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jOjE0OTo1MzogZXJy b3I6IGV4cGVjdGVkICc7JyBiZWZvcmUgJ3snIHRva2VuCj4gICAgICBkcm1fZm9yX2VhY2hfY29u bmVjdG9yX2l0ZXIoY29ubmVjdG9yLCAmY29ubl9pdGVyKSB7Cj4gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCj4gICAgZHJpdmVycy9ncHUv ZHJtL2RybV9hdG9taWNfaGVscGVyLmM6OTg6MjI6IHdhcm5pbmc6IHVudXNlZCB2YXJpYWJsZSAn ZW5jb2RlcicgWy1XdW51c2VkLXZhcmlhYmxlXQo+ICAgICAgc3RydWN0IGRybV9lbmNvZGVyICpl bmNvZGVyOwo+ICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+Cj4gICAgZHJpdmVycy9n cHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmM6OTc6MzM6IHdhcm5pbmc6IHVudXNlZCB2YXJpYWJs ZSAnY29ubl9pdGVyJyBbLVd1bnVzZWQtdmFyaWFibGVdCj4gICAgICBzdHJ1Y3QgZHJtX2Nvbm5l Y3Rvcl9saXN0X2l0ZXIgY29ubl9pdGVyOwo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF5+fn5+fn5+fgo+ICAgIGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5j OiBJbiBmdW5jdGlvbiAnZHJtX2F0b21pY19oZWxwZXJfZGlzYWJsZV9hbGwnOgo+ICAgIGRyaXZl cnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jOjI0NTI6MzM6IGVycm9yOiBzdG9yYWdlIHNp emUgb2YgJ2Nvbm5faXRlcicgaXNuJ3Qga25vd24KPiAgICAgIHN0cnVjdCBkcm1fY29ubmVjdG9y X2xpc3RfaXRlciBjb25uX2l0ZXI7Cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXn5+fn5+fn5+Cj4gICAgZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmM6MjQ2 Mjo0ODogZXJyb3I6IGV4cGVjdGVkICc7JyBiZWZvcmUgJ3snIHRva2VuCj4gICAgICBkcm1fZm9y X2VhY2hfY29ubmVjdG9yX2l0ZXIoY29ubiwgJmNvbm5faXRlcikgewo+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KPj4+IGRyaXZlcnMvZ3B1L2Ry bS9kcm1fYXRvbWljX2hlbHBlci5jOjI0ODA6MjogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9u IG9mIGZ1bmN0aW9uICdkcm1fY29ubmVjdG9yX2xpc3RfaXRlcl9wdXQnIFstV2Vycm9yPWltcGxp Y2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQo+ICAgICAgZHJtX2Nvbm5lY3Rvcl9saXN0X2l0ZXJf cHV0KCZjb25uX2l0ZXIpOwo+ICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cj4gICAg ZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmM6MjQ3OToxOiB3YXJuaW5nOiBsYWJl bCAnZnJlZScgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XdW51c2VkLWxhYmVsXQo+ICAgICBmcmVl Ogo+ICAgICBefn5+Cj4gICAgZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmM6MjQ1 MjozMzogd2FybmluZzogdW51c2VkIHZhcmlhYmxlICdjb25uX2l0ZXInIFstV3VudXNlZC12YXJp YWJsZV0KPiAgICAgIHN0cnVjdCBkcm1fY29ubmVjdG9yX2xpc3RfaXRlciBjb25uX2l0ZXI7Cj4g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+Cj4gICAgZHJpdmVy cy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmM6IEluIGZ1bmN0aW9uICdkcm1fYXRvbWljX2hl bHBlcl9jb25uZWN0b3JfZHBtcyc6Cj4gICAgZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVs cGVyLmM6Mjg1MzozMzogZXJyb3I6IHN0b3JhZ2Ugc2l6ZSBvZiAnY29ubl9pdGVyJyBpc24ndCBr bm93bgo+ICAgICAgc3RydWN0IGRybV9jb25uZWN0b3JfbGlzdF9pdGVyIGNvbm5faXRlcjsKPiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn4KPiAgICBkcml2ZXJz L2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYzoyODgyOjU3OiBlcnJvcjogZXhwZWN0ZWQgJzsn IGJlZm9yZSAneycgdG9rZW4KPiAgICAgIGRybV9mb3JfZWFjaF9jb25uZWN0b3JfaXRlcih0bXBf Y29ubmVjdG9yLCAmY29ubl9pdGVyKSB7Cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgo+ICAgIGRyaXZlcnMvZ3B1L2RybS9kcm1f YXRvbWljX2hlbHBlci5jOjI4NTM6MzM6IHdhcm5pbmc6IHVudXNlZCB2YXJpYWJsZSAnY29ubl9p dGVyJyBbLVd1bnVzZWQtdmFyaWFibGVdCj4gICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9saXN0 X2l0ZXIgY29ubl9pdGVyOwo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+ fn5+fn5+fgo+ICAgIGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jOiBJbiBmdW5j dGlvbiAnZHJtX2F0b21pY19oZWxwZXJfZHVwbGljYXRlX3N0YXRlJzoKPiAgICBkcml2ZXJzL2dw dS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYzozMjY5OjMzOiBlcnJvcjogc3RvcmFnZSBzaXplIG9m ICdjb25uX2l0ZXInIGlzbid0IGtub3duCj4gICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9saXN0 X2l0ZXIgY29ubl9pdGVyOwo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+ fn5+fn5+fgo+ICAgIGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jOjMzMDE6NDg6 IGVycm9yOiBleHBlY3RlZCAnOycgYmVmb3JlICd7JyB0b2tlbgo+ICAgICAgZHJtX2Zvcl9lYWNo X2Nvbm5lY3Rvcl9pdGVyKGNvbm4sICZjb25uX2l0ZXIpIHsKPiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCj4gICAgZHJpdmVycy9ncHUvZHJtL2Ry bV9hdG9taWNfaGVscGVyLmM6MzI2OTozMzogd2FybmluZzogdW51c2VkIHZhcmlhYmxlICdjb25u X2l0ZXInIFstV3VudXNlZC12YXJpYWJsZV0KPiAgICAgIHN0cnVjdCBkcm1fY29ubmVjdG9yX2xp c3RfaXRlciBjb25uX2l0ZXI7Cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Xn5+fn5+fn5+Cj4gICAgY2MxOiBzb21lIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3Jz Cj4gLS0KPiAgICBkcml2ZXJzL2dwdS9kcm0vZHJtX21vZGVzZXRfaGVscGVyLmM6IEluIGZ1bmN0 aW9uICdkcm1faGVscGVyX21vdmVfcGFuZWxfY29ubmVjdG9yc190b19oZWFkJzoKPj4+IGRyaXZl cnMvZ3B1L2RybS9kcm1fbW9kZXNldF9oZWxwZXIuYzo1MTozMzogZXJyb3I6ICdzdHJ1Y3QgZHJt X21vZGVfY29uZmlnJyBoYXMgbm8gbWVtYmVyIG5hbWVkICdjb25uZWN0b3JfbGlzdF9sb2NrJzsg ZGlkIHlvdSBtZWFuICdjb25uZWN0b3JfbGlzdCc/Cj4gICAgICBzcGluX2xvY2tfaXJxKCZkZXYt Pm1vZGVfY29uZmlnLmNvbm5lY3Rvcl9saXN0X2xvY2spOwo+ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIF4KPiAgICBkcml2ZXJzL2dwdS9kcm0vZHJtX21vZGVzZXRfaGVscGVy LmM6NjE6MzU6IGVycm9yOiAnc3RydWN0IGRybV9tb2RlX2NvbmZpZycgaGFzIG5vIG1lbWJlciBu YW1lZCAnY29ubmVjdG9yX2xpc3RfbG9jayc7IGRpZCB5b3UgbWVhbiAnY29ubmVjdG9yX2xpc3Qn Pwo+ICAgICAgc3Bpbl91bmxvY2tfaXJxKCZkZXYtPm1vZGVfY29uZmlnLmNvbm5lY3Rvcl9saXN0 X2xvY2spOwo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgo+IC0tCj4g ICAgZHJpdmVycy9ncHUvZHJtL2RybV9mYl9oZWxwZXIuYzogSW4gZnVuY3Rpb24gJ2RybV9mYl9o ZWxwZXJfc2luZ2xlX2FkZF9hbGxfY29ubmVjdG9ycyc6Cj4+PiBkcml2ZXJzL2dwdS9kcm0vZHJt X2ZiX2hlbHBlci5jOjEyMzozMzogZXJyb3I6IHN0b3JhZ2Ugc2l6ZSBvZiAnY29ubl9pdGVyJyBp c24ndCBrbm93bgo+ICAgICAgc3RydWN0IGRybV9jb25uZWN0b3JfbGlzdF9pdGVyIGNvbm5faXRl cjsKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn4KPj4+IGRy aXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmM6MTMwOjI6IGVycm9yOiBpbXBsaWNpdCBkZWNs YXJhdGlvbiBvZiBmdW5jdGlvbiAnZHJtX2Nvbm5lY3Rvcl9saXN0X2l0ZXJfZ2V0JyBbLVdlcnJv cj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KPiAgICAgIGRybV9jb25uZWN0b3JfbGlz dF9pdGVyX2dldChkZXYsICZjb25uX2l0ZXIpOwo+ICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+Cj4+PiBkcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5jOjEzMToyOiBlcnJvcjog aW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24gJ2RybV9mb3JfZWFjaF9jb25uZWN0b3Jf aXRlcicgWy1XZXJyb3I9aW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCj4gICAgICBkcm1f Zm9yX2VhY2hfY29ubmVjdG9yX2l0ZXIoY29ubmVjdG9yLCAmY29ubl9pdGVyKSB7Cj4gICAgICBe fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KPj4+IGRyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVs cGVyLmM6MTMxOjUzOiBlcnJvcjogZXhwZWN0ZWQgJzsnIGJlZm9yZSAneycgdG9rZW4KPiAgICAg IGRybV9mb3JfZWFjaF9jb25uZWN0b3JfaXRlcihjb25uZWN0b3IsICZjb25uX2l0ZXIpIHsKPiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4K Pj4+IGRyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmM6MTUxOjI6IGVycm9yOiBpbXBsaWNp dCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAnZHJtX2Nvbm5lY3Rvcl9saXN0X2l0ZXJfcHV0JyBb LVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KPiAgICAgIGRybV9jb25uZWN0 b3JfbGlzdF9pdGVyX3B1dCgmY29ubl9pdGVyKTsKPiAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fgo+ICAgIGRyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmM6MTUwOjE6IHdhcm5p bmc6IGxhYmVsICdvdXQnIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV3VudXNlZC1sYWJlbF0KPiAg ICAgb3V0Ogo+ICAgICBefn4KPiAgICBkcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5jOjEz OToxOiB3YXJuaW5nOiBsYWJlbCAnZmFpbCcgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XdW51c2Vk LWxhYmVsXQo+ICAgICBmYWlsOgo+ICAgICBefn5+Cj4gICAgZHJpdmVycy9ncHUvZHJtL2RybV9m Yl9oZWxwZXIuYzoxMjM6MzM6IHdhcm5pbmc6IHVudXNlZCB2YXJpYWJsZSAnY29ubl9pdGVyJyBb LVd1bnVzZWQtdmFyaWFibGVdCj4gICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9saXN0X2l0ZXIg Y29ubl9pdGVyOwo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+ fgo+ICAgIGNjMTogc29tZSB3YXJuaW5ncyBiZWluZyB0cmVhdGVkIGFzIGVycm9ycwo+Cj4gdmlt ICs5MSBkcml2ZXJzL2dwdS9kcm0vZHJtX2NydGNfaGVscGVyLmMKPgo+ICAgICAyNiAgICogICAg ICBLZWl0aCBQYWNrYXJkCj4gICAgIDI3ICAgKiAgICAgIEVyaWMgQW5ob2x0IDxlcmljQGFuaG9s dC5uZXQ+Cj4gICAgIDI4ICAgKiAgICAgIERhdmUgQWlybGllIDxhaXJsaWVkQGxpbnV4LmllPgo+ ICAgICAyOSAgICogICAgICBKZXNzZSBCYXJuZXMgPGplc3NlLmJhcm5lc0BpbnRlbC5jb20+Cj4g ICAgIDMwICAgKi8KPiAgICAgMzEKPiAgID4gMzIgICNpbmNsdWRlIDxsaW51eC9rZXJuZWwuaD4K PiAgICAgMzMgICNpbmNsdWRlIDxsaW51eC9leHBvcnQuaD4KPiAgICAgMzQgICNpbmNsdWRlIDxs aW51eC9tb2R1bGVwYXJhbS5oPgo+ICAgICAzNQo+ICAgICAzNiAgI2luY2x1ZGUgPGRybS9kcm1Q Lmg+Cj4gICAgIDM3ICAjaW5jbHVkZSA8ZHJtL2RybV9hdG9taWMuaD4KPiAgICAgMzggICNpbmNs dWRlIDxkcm0vZHJtX2NydGMuaD4KPiAgICAgMzkgICNpbmNsdWRlIDxkcm0vZHJtX2ZvdXJjYy5o Pgo+ICAgICA0MCAgI2luY2x1ZGUgPGRybS9kcm1fY3J0Y19oZWxwZXIuaD4KPiAgICAgNDEgICNp bmNsdWRlIDxkcm0vZHJtX2ZiX2hlbHBlci5oPgo+ICAgICA0MiAgI2luY2x1ZGUgPGRybS9kcm1f cGxhbmVfaGVscGVyLmg+Cj4gICAgIDQzICAjaW5jbHVkZSA8ZHJtL2RybV9hdG9taWNfaGVscGVy Lmg+Cj4gICAgIDQ0ICAjaW5jbHVkZSA8ZHJtL2RybV9lZGlkLmg+Cj4gICAgIDQ1Cj4gICAgIDQ2 ICAvKioKPiAgICAgNDcgICAqIERPQzogb3ZlcnZpZXcKPiAgICAgNDggICAqCj4gICAgIDQ5ICAg KiBUaGUgQ1JUQyBtb2Rlc2V0IGhlbHBlciBsaWJyYXJ5IHByb3ZpZGVzIGEgZGVmYXVsdCBzZXRf Y29uZmlnIGltcGxlbWVudGF0aW9uCj4gICAgIDUwICAgKiBpbiBkcm1fY3J0Y19oZWxwZXJfc2V0 X2NvbmZpZygpLiBQbHVzIGEgZmV3IG90aGVyIGNvbnZlbmllbmNlIGZ1bmN0aW9ucyB1c2luZwo+ ICAgICA1MSAgICogdGhlIHNhbWUgY2FsbGJhY2tzIHdoaWNoIGRyaXZlcnMgY2FuIHVzZSB0byBl LmcuIHJlc3RvcmUgdGhlIG1vZGVzZXQKPiAgICAgNTIgICAqIGNvbmZpZ3VyYXRpb24gb24gcmVz dW1lIHdpdGggZHJtX2hlbHBlcl9yZXN1bWVfZm9yY2VfbW9kZSgpLgo+ICAgICA1MyAgICoKPiAg ICAgNTQgICAqIE5vdGUgdGhhdCB0aGlzIGhlbHBlciBsaWJyYXJ5IGRvZXNuJ3QgdHJhY2sgdGhl IGN1cnJlbnQgcG93ZXIgc3RhdGUgb2YgQ1JUQ3MKPiAgICAgNTUgICAqIGFuZCBlbmNvZGVycy4g SXQgY2FuIGNhbGwgY2FsbGJhY2tzIGxpa2UgLT5kcG1zKCkgZXZlbiB0aG91Z2ggdGhlIGhhcmR3 YXJlIGlzCj4gICAgIDU2ICAgKiBhbHJlYWR5IGluIHRoZSBkZXNpcmVkIHN0YXRlLiBUaGlzIGRl ZmljaWVuY3kgaGFzIGJlZW4gZml4ZWQgaW4gdGhlIGF0b21pYwo+ICAgICA1NyAgICogaGVscGVy cy4KPiAgICAgNTggICAqCj4gICAgIDU5ICAgKiBUaGUgZHJpdmVyIGNhbGxiYWNrcyBhcmUgbW9z dGx5IGNvbXBhdGlibGUgd2l0aCB0aGUgYXRvbWljIG1vZGVzZXQgaGVscGVycywKPiAgICAgNjAg ICAqIGV4Y2VwdCBmb3IgdGhlIGhhbmRsaW5nIG9mIHRoZSBwcmltYXJ5IHBsYW5lOiBBdG9taWMg aGVscGVycyByZXF1aXJlIHRoYXQgdGhlCj4gICAgIDYxICAgKiBwcmltYXJ5IHBsYW5lIGlzIGlt cGxlbWVudGVkIGFzIGEgcmVhbCBzdGFuZGFsb25lIHBsYW5lIGFuZCBub3QgZGlyZWN0bHkgdGll ZAo+ICAgICA2MiAgICogdG8gdGhlIENSVEMgc3RhdGUuIEZvciBlYXNpZXIgdHJhbnNpdGlvbiB0 aGlzIGxpYnJhcnkgcHJvdmlkZXMgZnVuY3Rpb25zIHRvCj4gICAgIDYzICAgKiBpbXBsZW1lbnQg dGhlIG9sZCBzZW1hbnRpY3MgcmVxdWlyZWQgYnkgdGhlIENSVEMgaGVscGVycyB1c2luZyB0aGUg bmV3IHBsYW5lCj4gICAgIDY0ICAgKiBhbmQgYXRvbWljIGhlbHBlciBjYWxsYmFja3MuCj4gICAg IDY1ICAgKgo+ICAgICA2NiAgICogRHJpdmVycyBhcmUgc3Ryb25nbHkgdXJnZWQgdG8gY29udmVy dCB0byB0aGUgYXRvbWljIGhlbHBlcnMgKGJ5IHdheSBvZiBmaXJzdAo+ICAgICA2NyAgICogY29u dmVydGluZyB0byB0aGUgcGxhbmUgaGVscGVycykuIE5ldyBkcml2ZXJzIG11c3Qgbm90IHVzZSB0 aGVzZSBmdW5jdGlvbnMKPiAgICAgNjggICAqIGJ1dCBuZWVkIHRvIGltcGxlbWVudCB0aGUgYXRv bWljIGludGVyZmFjZSBpbnN0ZWFkLCBwb3RlbnRpYWxseSB1c2luZyB0aGUKPiAgICAgNjkgICAq IGF0b21pYyBoZWxwZXJzIGZvciB0aGF0Lgo+ICAgICA3MCAgICoKPiAgICAgNzEgICAqIFRoZXNl IGxlZ2FjeSBtb2Rlc2V0IGhlbHBlcnMgdXNlIHRoZSBzYW1lIGZ1bmN0aW9uIHRhYmxlIHN0cnVj dHVyZXMgYXMKPiAgICAgNzIgICAqIGFsbCBvdGhlciBtb2Rlc2V0dGluZyBoZWxwZXJzLiBTZWUg dGhlIGRvY3VtZW50YXRpb24gZm9yIHN0cnVjdAo+ICAgICA3MyAgICogJmRybV9jcnRjX2hlbHBl cl9mdW5jcywgc3RydWN0ICZkcm1fZW5jb2Rlcl9oZWxwZXJfZnVuY3MgYW5kIHN0cnVjdAo+ICAg ICA3NCAgICogJmRybV9jb25uZWN0b3JfaGVscGVyX2Z1bmNzLgo+ICAgICA3NSAgICovCj4gICAg IDc2Cj4gICAgIDc3ICAvKioKPiAgICAgNzggICAqIGRybV9oZWxwZXJfZW5jb2Rlcl9pbl91c2Ug LSBjaGVjayBpZiBhIGdpdmVuIGVuY29kZXIgaXMgaW4gdXNlCj4gICAgIDc5ICAgKiBAZW5jb2Rl cjogZW5jb2RlciB0byBjaGVjawo+ICAgICA4MCAgICoKPiAgICAgODEgICAqIENoZWNrcyB3aGV0 aGVyIEBlbmNvZGVyIGlzIHdpdGggdGhlIGN1cnJlbnQgbW9kZSBzZXR0aW5nIG91dHB1dCBjb25m aWd1cmF0aW9uCj4gICAgIDgyICAgKiBpbiB1c2UgYnkgYW55IGNvbm5lY3Rvci4gVGhpcyBkb2Vz bid0IG1lYW4gdGhhdCBpdCBpcyBhY3R1YWxseSBlbmFibGVkIHNpbmNlCj4gICAgIDgzICAgKiB0 aGUgRFBNUyBzdGF0ZSBpcyB0cmFja2VkIHNlcGFyYXRlbHkuCj4gICAgIDg0ICAgKgo+ICAgICA4 NSAgICogUmV0dXJuczoKPiAgICAgODYgICAqIFRydWUgaWYgQGVuY29kZXIgaXMgdXNlZCwgZmFs c2Ugb3RoZXJ3aXNlLgo+ICAgICA4NyAgICovCj4gICAgIDg4ICBib29sIGRybV9oZWxwZXJfZW5j b2Rlcl9pbl91c2Uoc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyKQo+ICAgICA4OSAgewo+ICAg ICA5MCAgICAgICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yOwo+ICAgPiA5MSAg ICAgICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9saXN0X2l0ZXIgY29ubl9pdGVyOwo+ICAgICA5 MiAgICAgICAgICBzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gZW5jb2Rlci0+ZGV2Owo+ICAgICA5 Mwo+ICAgICA5NCAgICAgICAgICAvKgo+ICAgICA5NSAgICAgICAgICAgKiBXZSBjYW4gZXhwZWN0 IHRoaXMgbXV0ZXggdG8gYmUgbG9ja2VkIGlmIHdlIGFyZSBub3QgcGFuaWNraW5nLgo+ICAgICA5 NiAgICAgICAgICAgKiBMb2NraW5nIGlzIGN1cnJlbnRseSBmdWJhciBpbiB0aGUgcGFuaWMgaGFu ZGxlci4KPiAgICAgOTcgICAgICAgICAgICovCj4gICAgIDk4ICAgICAgICAgIGlmICghb29wc19p bl9wcm9ncmVzcykgewo+ICAgICA5OSAgICAgICAgICAgICAgICAgIFdBUk5fT04oIW11dGV4X2lz X2xvY2tlZCgmZGV2LT5tb2RlX2NvbmZpZy5tdXRleCkpOwo+ICAgIDEwMCAgICAgICAgICAgICAg ICAgIFdBUk5fT04oIWRybV9tb2Rlc2V0X2lzX2xvY2tlZCgmZGV2LT5tb2RlX2NvbmZpZy5jb25u ZWN0aW9uX211dGV4KSk7Cj4gICAgMTAxICAgICAgICAgIH0KPiAgICAxMDIKPiAgICAxMDMKPiAg PiAxMDQgICAgICAgICAgZHJtX2Nvbm5lY3Rvcl9saXN0X2l0ZXJfZ2V0KGRldiwgJmNvbm5faXRl cik7Cj4gID4gMTA1ICAgICAgICAgIGRybV9mb3JfZWFjaF9jb25uZWN0b3JfaXRlcihjb25uZWN0 b3IsICZjb25uX2l0ZXIpIHsKPiAgICAxMDYgICAgICAgICAgICAgICAgICBpZiAoY29ubmVjdG9y LT5lbmNvZGVyID09IGVuY29kZXIpIHsKPiAgICAxMDcgICAgICAgICAgICAgICAgICAgICAgICAg IGRybV9jb25uZWN0b3JfbGlzdF9pdGVyX3B1dCgmY29ubl9pdGVyKTsKPiAgICAxMDggICAgICAg ICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOwo+Cj4gLS0tCj4gMC1EQVkga2VybmVsIHRl c3QgaW5mcmFzdHJ1Y3R1cmUgICAgICAgICAgICAgICAgT3BlbiBTb3VyY2UgVGVjaG5vbG9neSBD ZW50ZXIKPiBodHRwczovL2xpc3RzLjAxLm9yZy9waXBlcm1haWwva2J1aWxkLWFsbCAgICAgICAg ICAgICAgICAgICBJbnRlbCBDb3Jwb3JhdGlvbgoKCgotLSAKRGFuaWVsIFZldHRlcgpTb2Z0d2Fy ZSBFbmdpbmVlciwgSW50ZWwgQ29ycG9yYXRpb24KKzQxICgwKSA3OSAzNjUgNTcgNDggLSBodHRw Oi8vYmxvZy5mZndsbC5jaApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRl bC1nZngK