From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from sog-mx-4.v43.ch3.sourceforge.com ([172.29.43.194] helo=mx.sourceforge.net) by sfs-ml-1.v29.ch3.sourceforge.com with esmtp (Exim 4.76) (envelope-from ) id 1WgCr2-0001GS-Ow for ltp-list@lists.sourceforge.net; Fri, 02 May 2014 12:46:16 +0000 Received: from mx3-phx2.redhat.com ([209.132.183.24]) by sog-mx-4.v43.ch3.sourceforge.com with esmtp (Exim 4.76) id 1WgCr0-0003mh-9B for ltp-list@lists.sourceforge.net; Fri, 02 May 2014 12:46:16 +0000 Date: Fri, 2 May 2014 08:46:07 -0400 (EDT) From: Jan Stancek Message-ID: <935886668.13611332.1399034767704.JavaMail.zimbra@redhat.com> In-Reply-To: <1264301891.7910240.1393244817542.JavaMail.zimbra@redhat.com> References: <1264301891.7910240.1393244817542.JavaMail.zimbra@redhat.com> MIME-Version: 1.0 Subject: Re: [LTP] make -j64 failure while building ltp-20140115 List-Id: Linux Test Project General Discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ltp-list-bounces@lists.sourceforge.net To: ltp-list Cc: Mikulas Patocka CgoKCi0tLS0tIE9yaWdpbmFsIE1lc3NhZ2UgLS0tLS0KPiBGcm9tOiAiSmFuIFN0YW5jZWsiIDxq c3RhbmNla0ByZWRoYXQuY29tPgo+IFRvOiAibHRwLWxpc3QiIDxsdHAtbGlzdEBsaXN0cy5zZi5u ZXQ+Cj4gU2VudDogTW9uZGF5LCAyNCBGZWJydWFyeSwgMjAxNCAxOjI2OjU3IFBNCj4gU3ViamVj dDogW0xUUF0gbWFrZSAtajY0IGZhaWx1cmUgd2hpbGUgYnVpbGRpbmcgbHRwLTIwMTQwMTE1Cj4g Cj4gSGksCj4gCj4gSSByYW4gaW50byBidWlsZCBmYWlsdXJlIChzZWUgYmVsb3cpIHdpdGggbHRw LTIwMTQwMTE1LiBUaGlzIGhhcHBlbmVkIG9ubHkKPiBvbmNlIGFuZCBhbGwKPiBteSBhdHRlbXB0 cyB0byByZWNyZWF0ZSBpdCBmYWlsZWQuIExUUCBpcyBydW4gYXMgcGFydCBvZiBhdXRvbWF0ZWQg dGVzdGluZwo+IGFjcm9zcwo+IG11bHRpcGxlIHN5c3RlbXMvYXJjaGl0ZWN0dXJlcywgd2hlcmUg ZWFjaCBzeXN0ZW0gc3RhcnRzIGZyb20gY2xlYW4KPiBpbnN0YWxsYXRpb24uCj4gCj4gSXQgbG9v a3MgbGlrZSB0aGF0IGJ1aWxkIHByb2Nlc3Mgc2hvdWxkIGNvbnRpbnVlIHdpdGg6Cj4gICAvbW50 L3Rlc3RzL2tlcm5lbC9SSEVMNi9sdHAtbGl0ZS9sdHAtZnVsbC0yMDE0MDExNS90ZXN0Y2FzZXMv bmV0d29yay9ycGMvYmFzaWNfdGVzdHMvcnBjMDEvZGF0YWZpbGVzCj4gYnV0IGluc3RlYWQgZm9y IHNvbWUgcmVhc29uIGl0IGp1bXBlZCB0byByb290IGRpcmVjdG9yeToKPiAgIG1ha2VbN106IEVu dGVyaW5nIGRpcmVjdG9yeSBgLycKCldoaWxlIHdvcmtpbmcgb24gbHZtMiB0ZXN0c3VpdGUgcHJv YmxlbSB3aXRoIHNpbWlsYXIgc3ltcHRvbXMsCk1pa3VsYXMgUGF0b2NrYSBmb3VuZCBhIHJhY2Ug Y29uZGl0aW9uIHRoYXQgY2F1c2VkIGtlcm5lbCB0byBvY2Nhc2lvbmFsbHkKcmV0dXJuICIvIiBp bnN0ZWFkIG9mIGEgZnVsbCBwYXRoIGluIHRoZSBmaWxlIC9wcm9jL3NlbGYvbWFwcwoodGhlIHNh bWUgYnVnIGFmZmVjdHMgb3RoZXIgcGF0aHMgcmV0dXJuZWQgaW4gdGhlIC9wcm9jIGZpbGVzeXN0 ZW0Kb3IgZWxzZXdoZXJlIGJ5IHRoZSBrZXJuZWwpLgoKUHJvYmxlbSBoZSBvYnNlcnZlZCB3aXRo IGx2bTIgc3RhcnRlZCB3aXRoIGNvbW1pdDoKICAyMzJkMmQ2MGFhNTQ2OWJiMDk3ZjU1NzI4ZjY1 MTQ2YmQ0OWMxZDI1CmFuZCBzaG91bGQgZ28gYXdheSB3aXRoIGNvbWJpbmF0aW9uIG9mOgogIGVk ZTRjZWJjZTE2ZjU2NDNjNjFhZWRkNmQ4OGQ5MDcwYTFkMjNhNjgKICBmNjUwMDgwMTUyMmM2MTc4 MmQ0OTkwZmExYWQ5NjE1NGNiMzk3Y2Q0CiAgZTgyNTE5NmQ0OGQyYjg5YTZlYzNhOGVmZjI4MDA5 OGQyYTc4MjA3ZQoKUmVnYXJkcywKSmFuCgo+IAo+IFJlZ2FyZHMsCj4gSmFuCj4gCj4gCj4gbWFr ZSAtajY0IC1DIGx0cC1mdWxsLTIwMTQwMTE1IGFsbAo+IG1ha2VbMV06IEVudGVyaW5nIGRpcmVj dG9yeQo+IGAvbW50L3Rlc3RzL2tlcm5lbC9SSEVMNi9sdHAtbGl0ZS9sdHAtZnVsbC0yMDE0MDEx NScKPiA8c25pcC4uPgo+IG1ha2VbNF06IExlYXZpbmcgZGlyZWN0b3J5Cj4gYC9tbnQvdGVzdHMv a2VybmVsL1JIRUw2L2x0cC1saXRlL2x0cC1mdWxsLTIwMTQwMTE1L3Rlc3RjYXNlcy9uZXR3b3Jr L2xpYjYnCj4gbWFrZVs0XTogRW50ZXJpbmcgZGlyZWN0b3J5Cj4gYC9tbnQvdGVzdHMva2VybmVs L1JIRUw2L2x0cC1saXRlL2x0cC1mdWxsLTIwMTQwMTE1L3Rlc3RjYXNlcy9uZXR3b3JrL3JwYycK PiBjb25maWcuc3RhdHVzOiBleGVjdXRpbmcgZGVwZmlsZXMgY29tbWFuZHMKPiBtYWtlWzVdOiBF bnRlcmluZyBkaXJlY3RvcnkKPiBgL21udC90ZXN0cy9rZXJuZWwvUkhFTDYvbHRwLWxpdGUvbHRw LWZ1bGwtMjAxNDAxMTUvdGVzdGNhc2VzL25ldHdvcmsvcnBjL2Jhc2ljX3Rlc3RzJwo+IG1ha2Vb Nl06IEVudGVyaW5nIGRpcmVjdG9yeQo+IGAvbW50L3Rlc3RzL2tlcm5lbC9SSEVMNi9sdHAtbGl0 ZS9sdHAtZnVsbC0yMDE0MDExNS90ZXN0Y2FzZXMvbmV0d29yay9ycGMvYmFzaWNfdGVzdHMvcnBj MDEnCj4gZ2NjIC1nIC1PMiAtZyAtTzIgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXBpcGUgLVdhbGwg LURfRk9SVElGWV9TT1VSQ0U9Mgo+IC1Xbm8tZXJyb3IgLUkuLi8uLi8uLi8uLi8uLi9pbmNsdWRl IC1JLi4vLi4vLi4vLi4vLi4vaW5jbHVkZQo+IC1MLi4vLi4vLi4vLi4vLi4vbGliICBycGMxLmMg ICAtbyBycGMxCj4gZ2NjIC1nIC1PMiAtZyAtTzIgLWZuby1zdHJpY3QtYWxpYXNpbmcgLXBpcGUg LVdhbGwgLURfRk9SVElGWV9TT1VSQ0U9Mgo+IC1Xbm8tZXJyb3IgLUkuLi8uLi8uLi8uLi8uLi9p bmNsdWRlIC1JLi4vLi4vLi4vLi4vLi4vaW5jbHVkZQo+IC1MLi4vLi4vLi4vLi4vLi4vbGliICBy cGNfc2VydmVyLmMgICAtbyBycGNfc2VydmVyCj4gY29uZmlnLnN0YXR1czogZXhlY3V0aW5nIGRl ZmF1bHQgY29tbWFuZHMKPiBycGNfc2VydmVyLmM6IEluIGZ1bmN0aW9uIOKAmG1haW7igJk6Cj4g cnBjX3NlcnZlci5jOjkwOjI6IHdhcm5pbmc6IHN1Z2dlc3QgcGFyZW50aGVzZXMgYXJvdW5kIGFz c2lnbm1lbnQgdXNlZCBhcwo+IHRydXRoIHZhbHVlIFstV3BhcmVudGhlc2VzXQo+ICAgaWYgKGhw ID0gZ2V0aG9zdGJ5bmFtZShob3N0X25hbWUpKQo+ICAgXgo+IHJwY19zZXJ2ZXIuYzo5MzoyOiB3 YXJuaW5nOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhwbWFwX3Vuc2V04oCZ Cj4gWy1XaW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCj4gICBwbWFwX3Vuc2V0KHByb2dy YW0sIHZlcnNpb24pOwo+ICAgXgo+IHJwY19zZXJ2ZXIuYzogSW4gZnVuY3Rpb24g4oCYc2Vydmlj ZV9yZXF1ZXN04oCZOgo+IHJwY19zZXJ2ZXIuYzoxMDg6Mzogd2FybmluZzogcGFzc2luZyBhcmd1 bWVudCAyIG9mIOKAmHN2Y19zZW5kcmVwbHnigJkgZnJvbQo+IGluY29tcGF0aWJsZSBwb2ludGVy IHR5cGUgW2VuYWJsZWQgYnkgZGVmYXVsdF0KPiAgICBzdmNfc2VuZHJlcGx5KHRyYW5zcCwgeGRy X3ZvaWQsIChjaGFyICopMCk7Cj4gICAgXgo+IEluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdXNyL2lu Y2x1ZGUvcnBjL3JwYy5oOjU2OjAsCj4gICAgICAgICAgICAgICAgICBmcm9tIHJwY19zZXJ2ZXIu Yzo4Ogo+IC91c3IvaW5jbHVkZS9ycGMvc3ZjLmg6MjQ0OjE1OiBub3RlOiBleHBlY3RlZCDigJh4 ZHJwcm9jX3TigJkgYnV0IGFyZ3VtZW50IGlzIG9mCj4gdHlwZSDigJhib29sX3QgKCopKHZvaWQp 4oCZCj4gIGV4dGVybiBib29sX3Qgc3ZjX3NlbmRyZXBseSAoU1ZDWFBSVCAqX194cHJ0LCB4ZHJw cm9jX3QgX194ZHJfcmVzdWx0cywKPiAgICAgICAgICAgICAgICBeCj4gcnBjX3NlcnZlci5jOjEx NjozOiB3YXJuaW5nOiBwYXNzaW5nIGFyZ3VtZW50IDIgb2YKPiDigJh0cmFuc3AtPnhwX29wcy0+ eHBfZ2V0YXJnc+KAmSBmcm9tIGluY29tcGF0aWJsZSBwb2ludGVyIHR5cGUgW2VuYWJsZWQgYnkK PiBkZWZhdWx0XQo+ICAgIHN2Y19nZXRhcmdzKHRyYW5zcCwgeGRyX3JlY2VpdmVfZGF0YSwgKHVu c2lnbmVkIGNoYXIgKikmYnVmZmVyKTsKPiAgICBeCj4gcnBjX3NlcnZlci5jOjExNjozOiBub3Rl OiBleHBlY3RlZCDigJh4ZHJwcm9jX3TigJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYaW50 Cj4gKCopKHN0cnVjdCBYRFIgKiwgc3RydWN0IGRhdGEgKiop4oCZCj4gcnBjX3NlcnZlci5jOjEx NjozOiB3YXJuaW5nOiBwb2ludGVyIHRhcmdldHMgaW4gcGFzc2luZyBhcmd1bWVudCAzIG9mCj4g 4oCYdHJhbnNwLT54cF9vcHMtPnhwX2dldGFyZ3PigJkgZGlmZmVyIGluIHNpZ25lZG5lc3MgWy1X cG9pbnRlci1zaWduXQo+IHJwY19zZXJ2ZXIuYzoxMTY6Mzogbm90ZTogZXhwZWN0ZWQg4oCYY2Fk ZHJfdOKAmSBidXQgYXJndW1lbnQgaXMgb2YgdHlwZQo+IOKAmHVuc2lnbmVkIGNoYXIgKuKAmQo+ IHJwY19zZXJ2ZXIuYzoxMTc6Mzogd2FybmluZzogcGFzc2luZyBhcmd1bWVudCAyIG9mIOKAmHN2 Y19zZW5kcmVwbHnigJkgZnJvbQo+IGluY29tcGF0aWJsZSBwb2ludGVyIHR5cGUgW2VuYWJsZWQg YnkgZGVmYXVsdF0KPiAgICBzdmNfc2VuZHJlcGx5KHRyYW5zcCwgeGRyX3NlbmRfZGF0YSwgKHVu c2lnbmVkIGNoYXIgKilidWZmZXIpOwo+ICAgIF4KPiBJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Vz ci9pbmNsdWRlL3JwYy9ycGMuaDo1NjowLAo+ICAgICAgICAgICAgICAgICAgZnJvbSBycGNfc2Vy dmVyLmM6ODoKPiAvdXNyL2luY2x1ZGUvcnBjL3N2Yy5oOjI0NDoxNTogbm90ZTogZXhwZWN0ZWQg 4oCYeGRycHJvY1904oCZIGJ1dCBhcmd1bWVudCBpcyBvZgo+IHR5cGUg4oCYaW50ICgqKShzdHJ1 Y3QgWERSICosIHN0cnVjdCBkYXRhICop4oCZCj4gIGV4dGVybiBib29sX3Qgc3ZjX3NlbmRyZXBs eSAoU1ZDWFBSVCAqX194cHJ0LCB4ZHJwcm9jX3QgX194ZHJfcmVzdWx0cywKPiAgICAgICAgICAg ICAgICBeCj4gcnBjX3NlcnZlci5jOjExNzozOiB3YXJuaW5nOiBwb2ludGVyIHRhcmdldHMgaW4g cGFzc2luZyBhcmd1bWVudCAzIG9mCj4g4oCYc3ZjX3NlbmRyZXBseeKAmSBkaWZmZXIgaW4gc2ln bmVkbmVzcyBbLVdwb2ludGVyLXNpZ25dCj4gICAgc3ZjX3NlbmRyZXBseSh0cmFuc3AsIHhkcl9z ZW5kX2RhdGEsICh1bnNpZ25lZCBjaGFyICopYnVmZmVyKTsKPiAgICBeCj4gSW4gZmlsZSBpbmNs dWRlZCBmcm9tIC91c3IvaW5jbHVkZS9ycGMvcnBjLmg6NTY6MCwKPiAgICAgICAgICAgICAgICAg IGZyb20gcnBjX3NlcnZlci5jOjg6Cj4gL3Vzci9pbmNsdWRlL3JwYy9zdmMuaDoyNDQ6MTU6IG5v dGU6IGV4cGVjdGVkIOKAmGNhZGRyX3TigJkgYnV0IGFyZ3VtZW50IGlzIG9mCj4gdHlwZSDigJh1 bnNpZ25lZCBjaGFyICrigJkKPiAgZXh0ZXJuIGJvb2xfdCBzdmNfc2VuZHJlcGx5IChTVkNYUFJU ICpfX3hwcnQsIHhkcnByb2NfdCBfX3hkcl9yZXN1bHRzLAo+ICAgICAgICAgICAgICAgIF4KPiBy cGNfc2VydmVyLmM6IEluIGZ1bmN0aW9uIOKAmG1haW7igJk6Cj4gcnBjMS5jOiBJbiBmdW5jdGlv biDigJhtYWlu4oCZOgo+IHJwY19zZXJ2ZXIuYzo4MTo2OiB3YXJuaW5nOiBpZ25vcmluZyByZXR1 cm4gdmFsdWUgb2Yg4oCYZHVw4oCZLCBkZWNsYXJlZCB3aXRoCj4gYXR0cmlidXRlIHdhcm5fdW51 c2VkX3Jlc3VsdCBbLVd1bnVzZWQtcmVzdWx0XQo+ICAgIGR1cCgxKTsKPiAgICAgICBeCj4gcnBj MS5jOjEwNDo1Nzogd2FybmluZzogYXJndW1lbnQgdG8g4oCYc2l6ZW9m4oCZIGluIOKAmG1lbWNw eeKAmSBjYWxsIGlzIHRoZSBzYW1lCj4gcG9pbnRlciB0eXBlIOKAmGNoYXIgKuKAmSBhcyB0aGUg ZGVzdGluYXRpb247IGV4cGVjdGVkIOKAmGNoYXLigJkgb3IgYW4gZXhwbGljaXQKPiBsZW5ndGgg Wy1Xc2l6ZW9mLXBvaW50ZXItbWVtYWNjZXNzXQo+ICAgbWVtY3B5KChjaGFyICopJnNlcnZlcl9z aW4uc2luX2FkZHIsIGhwLT5oX2FkZHIsIHNpemVvZihocC0+aF9hZGRyKSk7Cj4gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgo+IHJwYzEu YzoxMzc6ODogd2FybmluZzogcGFzc2luZyBhcmd1bWVudCA1IG9mIOKAmGNhbGxycGPigJkgZnJv bSBpbmNvbXBhdGlibGUKPiBwb2ludGVyIHR5cGUgW2VuYWJsZWQgYnkgZGVmYXVsdF0KPiAgICAg ICAgIHhkcl9yZWNlaXZlX2RhdGEsICZyZXR1cm5fYnVmZmVyKTsKPiAgICAgICAgIF4KPiBJbiBm aWxlIGluY2x1ZGVkIGZyb20gL3Vzci9pbmNsdWRlL3JwYy9ycGMuaDo0ODowLAo+ICAgICAgICAg ICAgICAgICAgZnJvbSBycGMxLmM6MjoKPiAvdXNyL2luY2x1ZGUvcnBjL2NsbnQuaDozNTk6MTI6 IG5vdGU6IGV4cGVjdGVkIOKAmHhkcnByb2NfdOKAmSBidXQgYXJndW1lbnQgaXMgb2YKPiB0eXBl IOKAmGludCAoKikoc3RydWN0IFhEUiAqLCBzdHJ1Y3QgZGF0YSAqKeKAmQo+ICBleHRlcm4gaW50 IGNhbGxycGMgKGNvbnN0IGNoYXIgKl9faG9zdCwgY29uc3QgdV9sb25nIF9fcHJvZ251bSwKPiAg ICAgICAgICAgICBeCj4gcnBjMS5jOjEzNzo4OiB3YXJuaW5nOiBwYXNzaW5nIGFyZ3VtZW50IDYg b2Yg4oCYY2FsbHJwY+KAmSBmcm9tIGluY29tcGF0aWJsZQo+IHBvaW50ZXIgdHlwZSBbZW5hYmxl ZCBieSBkZWZhdWx0XQo+ICAgICAgICAgeGRyX3JlY2VpdmVfZGF0YSwgJnJldHVybl9idWZmZXIp Owo+ICAgICAgICAgXgo+IEluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdXNyL2luY2x1ZGUvcnBjL3Jw Yy5oOjQ4OjAsCj4gICAgICAgICAgICAgICAgICBmcm9tIHJwYzEuYzoyOgo+IC91c3IvaW5jbHVk ZS9ycGMvY2xudC5oOjM1OToxMjogbm90ZTogZXhwZWN0ZWQg4oCYY29uc3QgY2hhciAq4oCZIGJ1 dCBhcmd1bWVudCBpcwo+IG9mIHR5cGUg4oCYc3RydWN0IGRhdGEgKuKAmQo+ICBleHRlcm4gaW50 IGNhbGxycGMgKGNvbnN0IGNoYXIgKl9faG9zdCwgY29uc3QgdV9sb25nIF9fcHJvZ251bSwKPiAg ICAgICAgICAgICBeCj4gcnBjMS5jOjEzNzo4OiB3YXJuaW5nOiBwYXNzaW5nIGFyZ3VtZW50IDcg b2Yg4oCYY2FsbHJwY+KAmSBmcm9tIGluY29tcGF0aWJsZQo+IHBvaW50ZXIgdHlwZSBbZW5hYmxl ZCBieSBkZWZhdWx0XQo+ICAgICAgICAgeGRyX3JlY2VpdmVfZGF0YSwgJnJldHVybl9idWZmZXIp Owo+ICAgICAgICAgXgo+IEluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdXNyL2luY2x1ZGUvcnBjL3Jw Yy5oOjQ4OjAsCj4gICAgICAgICAgICAgICAgICBmcm9tIHJwYzEuYzoyOgo+IC91c3IvaW5jbHVk ZS9ycGMvY2xudC5oOjM1OToxMjogbm90ZTogZXhwZWN0ZWQg4oCYeGRycHJvY1904oCZIGJ1dCBh cmd1bWVudCBpcyBvZgo+IHR5cGUg4oCYaW50ICgqKShzdHJ1Y3QgWERSICosIHN0cnVjdCBkYXRh ICoqKeKAmQo+ICBleHRlcm4gaW50IGNhbGxycGMgKGNvbnN0IGNoYXIgKl9faG9zdCwgY29uc3Qg dV9sb25nIF9fcHJvZ251bSwKPiAgICAgICAgICAgICBeCj4gcnBjMS5jOjEzNzo4OiB3YXJuaW5n OiBwYXNzaW5nIGFyZ3VtZW50IDggb2Yg4oCYY2FsbHJwY+KAmSBmcm9tIGluY29tcGF0aWJsZQo+ IHBvaW50ZXIgdHlwZSBbZW5hYmxlZCBieSBkZWZhdWx0XQo+ICAgICAgICAgeGRyX3JlY2VpdmVf ZGF0YSwgJnJldHVybl9idWZmZXIpOwo+ICAgICAgICAgXgo+IEluIGZpbGUgaW5jbHVkZWQgZnJv bSAvdXNyL2luY2x1ZGUvcnBjL3JwYy5oOjQ4OjAsCj4gICAgICAgICAgICAgICAgICBmcm9tIHJw YzEuYzoyOgo+IC91c3IvaW5jbHVkZS9ycGMvY2xudC5oOjM1OToxMjogbm90ZTogZXhwZWN0ZWQg 4oCYY2hhciAq4oCZIGJ1dCBhcmd1bWVudCBpcyBvZgo+IHR5cGUg4oCYc3RydWN0IGRhdGEgKiri gJkKPiAgZXh0ZXJuIGludCBjYWxscnBjIChjb25zdCBjaGFyICpfX2hvc3QsIGNvbnN0IHVfbG9u ZyBfX3Byb2dudW0sCj4gICAgICAgICAgICAgXgo+IHJwYzEuYzoxNTE6Mjogd2FybmluZzogcGFz c2luZyBhcmd1bWVudCAzIG9mIOKAmGNsbnQtPmNsX29wcy0+Y2xfY2FsbOKAmSBmcm9tCj4gaW5j b21wYXRpYmxlIHBvaW50ZXIgdHlwZSBbZW5hYmxlZCBieSBkZWZhdWx0XQo+ICAgcmMgPSAoaW50 KWNsbnRfY2FsbChjbG50LCAxLCB4ZHJfc2VuZF9kYXRhLCAmYnVmZmVyLAo+ICAgXgo+IHJwYzEu YzoxNTE6Mjogbm90ZTogZXhwZWN0ZWQg4oCYeGRycHJvY1904oCZIGJ1dCBhcmd1bWVudCBpcyBv ZiB0eXBlIOKAmGludAo+ICgqKShzdHJ1Y3QgWERSICosIHN0cnVjdCBkYXRhICop4oCZCj4gcnBj MS5jOjE1MToyOiB3YXJuaW5nOiBwYXNzaW5nIGFyZ3VtZW50IDQgb2Yg4oCYY2xudC0+Y2xfb3Bz LT5jbF9jYWxs4oCZIGZyb20KPiBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlIFtlbmFibGVkIGJ5 IGRlZmF1bHRdCj4gcnBjMS5jOjE1MToyOiBub3RlOiBleHBlY3RlZCDigJhjYWRkcl904oCZIGJ1 dCBhcmd1bWVudCBpcyBvZiB0eXBlIOKAmHN0cnVjdCBkYXRhCj4gKuKAmQo+IHJwYzEuYzoxNTE6 Mjogd2FybmluZzogcGFzc2luZyBhcmd1bWVudCA1IG9mIOKAmGNsbnQtPmNsX29wcy0+Y2xfY2Fs bOKAmSBmcm9tCj4gaW5jb21wYXRpYmxlIHBvaW50ZXIgdHlwZSBbZW5hYmxlZCBieSBkZWZhdWx0 XQo+IHJwYzEuYzoxNTE6Mjogbm90ZTogZXhwZWN0ZWQg4oCYeGRycHJvY1904oCZIGJ1dCBhcmd1 bWVudCBpcyBvZiB0eXBlIOKAmGludAo+ICgqKShzdHJ1Y3QgWERSICosIHN0cnVjdCBkYXRhICoq KeKAmQo+IHJwYzEuYzoxNTE6Mjogd2FybmluZzogcGFzc2luZyBhcmd1bWVudCA2IG9mIOKAmGNs bnQtPmNsX29wcy0+Y2xfY2FsbOKAmSBmcm9tCj4gaW5jb21wYXRpYmxlIHBvaW50ZXIgdHlwZSBb ZW5hYmxlZCBieSBkZWZhdWx0XQo+IHJwYzEuYzoxNTE6Mjogbm90ZTogZXhwZWN0ZWQg4oCYY2Fk ZHJfdOKAmSBidXQgYXJndW1lbnQgaXMgb2YgdHlwZSDigJhzdHJ1Y3QgZGF0YQo+ICoq4oCZCj4g cnBjMS5jOjE2NToyOiB3YXJuaW5nOiBwYXNzaW5nIGFyZ3VtZW50IDMgb2Yg4oCYY2xudC0+Y2xf b3BzLT5jbF9jYWxs4oCZIGZyb20KPiBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlIFtlbmFibGVk IGJ5IGRlZmF1bHRdCj4gICByYyA9IChpbnQpY2xudF9jYWxsKGNsbnQsIDEsIHhkcl9zZW5kX2Rh dGEsICZidWZmZXIsCj4gICBeCj4gcnBjMS5jOjE2NToyOiBub3RlOiBleHBlY3RlZCDigJh4ZHJw cm9jX3TigJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYaW50Cj4gKCopKHN0cnVjdCBYRFIg Kiwgc3RydWN0IGRhdGEgKinigJkKPiBycGMxLmM6MTY1OjI6IHdhcm5pbmc6IHBhc3NpbmcgYXJn dW1lbnQgNCBvZiDigJhjbG50LT5jbF9vcHMtPmNsX2NhbGzigJkgZnJvbQo+IGluY29tcGF0aWJs ZSBwb2ludGVyIHR5cGUgW2VuYWJsZWQgYnkgZGVmYXVsdF0KPiBycGMxLmM6MTY1OjI6IG5vdGU6 IGV4cGVjdGVkIOKAmGNhZGRyX3TigJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYc3RydWN0 IGRhdGEKPiAq4oCZCj4gcnBjMS5jOjE2NToyOiB3YXJuaW5nOiBwYXNzaW5nIGFyZ3VtZW50IDUg b2Yg4oCYY2xudC0+Y2xfb3BzLT5jbF9jYWxs4oCZIGZyb20KPiBpbmNvbXBhdGlibGUgcG9pbnRl ciB0eXBlIFtlbmFibGVkIGJ5IGRlZmF1bHRdCj4gcnBjMS5jOjE2NToyOiBub3RlOiBleHBlY3Rl ZCDigJh4ZHJwcm9jX3TigJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYaW50Cj4gKCopKHN0 cnVjdCBYRFIgKiwgc3RydWN0IGRhdGEgKiop4oCZCj4gcnBjMS5jOjE2NToyOiB3YXJuaW5nOiBw YXNzaW5nIGFyZ3VtZW50IDYgb2Yg4oCYY2xudC0+Y2xfb3BzLT5jbF9jYWxs4oCZIGZyb20KPiBp bmNvbXBhdGlibGUgcG9pbnRlciB0eXBlIFtlbmFibGVkIGJ5IGRlZmF1bHRdCj4gcnBjMS5jOjE2 NToyOiBub3RlOiBleHBlY3RlZCDigJhjYWRkcl904oCZIGJ1dCBhcmd1bWVudCBpcyBvZiB0eXBl IOKAmHN0cnVjdCBkYXRhCj4gKirigJkKPiBtYWtlIC1DIGZmc2ItNi4wLXJjMiAtZgo+ICIvbW50 L3Rlc3RzL2tlcm5lbC9SSEVMNi9sdHAtbGl0ZS9sdHAtZnVsbC0yMDE0MDExNS91dGlscy9mZnNi LTYuMC1yYzIvTWFrZWZpbGUiCj4gYWxsCj4gbWFrZVszXTogRW50ZXJpbmcgZGlyZWN0b3J5Cj4g YC9tbnQvdGVzdHMva2VybmVsL1JIRUw2L2x0cC1saXRlL2x0cC1mdWxsLTIwMTQwMTE1L3V0aWxz L2Zmc2ItNi4wLXJjMicKPiBtYWtlICBhbGwtYW0KPiBtYWtlWzRdOiBFbnRlcmluZyBkaXJlY3Rv cnkKPiBgL21udC90ZXN0cy9rZXJuZWwvUkhFTDYvbHRwLWxpdGUvbHRwLWZ1bGwtMjAxNDAxMTUv dXRpbHMvZmZzYi02LjAtcmMyJwo+IGdjYyAtREhBVkVfQ09ORklHX0ggLUkuICAgIC1EX0dOVV9T T1VSQ0UgLWcgLU8yIC1EX1JFRU5UUkFOVCAtTVQgZmlsZW9wcy5vCj4gLU1EIC1NUCAtTUYgLmRl cHMvZmlsZW9wcy5UcG8gLWMgLW8gZmlsZW9wcy5vIGZpbGVvcHMuYwo+IGdjYyAtREhBVkVfQ09O RklHX0ggLUkuICAgIC1EX0dOVV9TT1VSQ0UgLWcgLU8yIC1EX1JFRU5UUkFOVCAtTVQgcmFuZC5v IC1NRAo+IC1NUCAtTUYgLmRlcHMvcmFuZC5UcG8gLWMgLW8gcmFuZC5vIHJhbmQuYwo+IGdjYyAt REhBVkVfQ09ORklHX0ggLUkuICAgIC1EX0dOVV9TT1VSQ0UgLWcgLU8yIC1EX1JFRU5UUkFOVCAt TVQgbWFpbi5vIC1NRAo+IC1NUCAtTUYgLmRlcHMvbWFpbi5UcG8gLWMgLW8gbWFpbi5vIG1haW4u Ywo+IGdjYyAtREhBVkVfQ09ORklHX0ggLUkuICAgIC1EX0dOVV9TT1VSQ0UgLWcgLU8yIC1EX1JF RU5UUkFOVCAtTVQgZmgubyAtTUQgLU1QCj4gLU1GIC5kZXBzL2ZoLlRwbyAtYyAtbyBmaC5vIGZo LmMKPiBnY2MgLURIQVZFX0NPTkZJR19IIC1JLiAgICAtRF9HTlVfU09VUkNFIC1nIC1PMiAtRF9S RUVOVFJBTlQgLU1UIGZpbGVsaXN0Lm8KPiAtTUQgLU1QIC1NRiAuZGVwcy9maWxlbGlzdC5UcG8g LWMgLW8gZmlsZWxpc3QubyBmaWxlbGlzdC5jCj4gZ2NjIC1ESEFWRV9DT05GSUdfSCAtSS4gICAg LURfR05VX1NPVVJDRSAtZyAtTzIgLURfUkVFTlRSQU5UIC1NVCBtZXRhb3BzLm8KPiAtTUQgLU1Q IC1NRiAuZGVwcy9tZXRhb3BzLlRwbyAtYyAtbyBtZXRhb3BzLm8gbWV0YW9wcy5jCj4gZ2NjIC1E SEFWRV9DT05GSUdfSCAtSS4gICAgLURfR05VX1NPVVJDRSAtZyAtTzIgLURfUkVFTlRSQU5UIC1N VCByd2xvY2subyAtTUQKPiAtTVAgLU1GIC5kZXBzL3J3bG9jay5UcG8gLWMgLW8gcndsb2NrLm8g cndsb2NrLmMKPiBnY2MgLURIQVZFX0NPTkZJR19IIC1JLiAgICAtRF9HTlVfU09VUkNFIC1nIC1P MiAtRF9SRUVOVFJBTlQgLU1UIGNpcmxpc3Qubwo+IC1NRCAtTVAgLU1GIC5kZXBzL2Npcmxpc3Qu VHBvIC1jIC1vIGNpcmxpc3QubyBjaXJsaXN0LmMKPiBnY2MgLURIQVZFX0NPTkZJR19IIC1JLiAg ICAtRF9HTlVfU09VUkNFIC1nIC1PMiAtRF9SRUVOVFJBTlQgLU1UIHJidC5vIC1NRAo+IC1NUCAt TUYgLmRlcHMvcmJ0LlRwbyAtYyAtbyByYnQubyByYnQuYwo+IGdjYyAtREhBVkVfQ09ORklHX0gg LUkuICAgIC1EX0dOVV9TT1VSQ0UgLWcgLU8yIC1EX1JFRU5UUkFOVCAtTVQgZmZzYl90Zy5vCj4g LU1EIC1NUCAtTUYgLmRlcHMvZmZzYl90Zy5UcG8gLWMgLW8gZmZzYl90Zy5vIGZmc2JfdGcuYwo+ IGdjYyAtREhBVkVfQ09ORklHX0ggLUkuICAgIC1EX0dOVV9TT1VSQ0UgLWcgLU8yIC1EX1JFRU5U UkFOVCAtTVQgZmZzYl9mcy5vCj4gLU1EIC1NUCAtTUYgLmRlcHMvZmZzYl9mcy5UcG8gLWMgLW8g ZmZzYl9mcy5vIGZmc2JfZnMuYwo+IGdjYyAtREhBVkVfQ09ORklHX0ggLUkuICAgIC1EX0dOVV9T T1VSQ0UgLWcgLU8yIC1EX1JFRU5UUkFOVCAtTVQKPiBmZnNiX3RocmVhZC5vIC1NRCAtTVAgLU1G IC5kZXBzL2Zmc2JfdGhyZWFkLlRwbyAtYyAtbyBmZnNiX3RocmVhZC5vCj4gZmZzYl90aHJlYWQu Ywo+IGdjYyAtREhBVkVfQ09ORklHX0ggLUkuICAgIC1EX0dOVV9TT1VSQ0UgLWcgLU8yIC1EX1JF RU5UUkFOVCAtTVQgZmZzYl9vcC5vCj4gLU1EIC1NUCAtTUYgLmRlcHMvZmZzYl9vcC5UcG8gLWMg LW8gZmZzYl9vcC5vIGZmc2Jfb3AuYwo+IGdjYyAtREhBVkVfQ09ORklHX0ggLUkuICAgIC1EX0dO VV9TT1VSQ0UgLWcgLU8yIC1EX1JFRU5UUkFOVCAtTVQgdXRpbC5vIC1NRAo+IC1NUCAtTUYgLmRl cHMvdXRpbC5UcG8gLWMgLW8gdXRpbC5vIHV0aWwuYwo+IGdjYyAtREhBVkVfQ09ORklHX0ggLUku ICAgIC1EX0dOVV9TT1VSQ0UgLWcgLU8yIC1EX1JFRU5UUkFOVCAtTVQgcGFyc2VyLm8gLU1ECj4g LU1QIC1NRiAuZGVwcy9wYXJzZXIuVHBvIC1jIC1vIHBhcnNlci5vIHBhcnNlci5jCj4gZ2NjIC1E SEFWRV9DT05GSUdfSCAtSS4gICAgLURfR05VX1NPVVJDRSAtZyAtTzIgLURfUkVFTlRSQU5UIC1N VCBmZnNiX2ZjLm8KPiAtTUQgLU1QIC1NRiAuZGVwcy9mZnNiX2ZjLlRwbyAtYyAtbyBmZnNiX2Zj Lm8gZmZzYl9mYy5jCj4gZ2NjIC1ESEFWRV9DT05GSUdfSCAtSS4gICAgLURfR05VX1NPVVJDRSAt ZyAtTzIgLURfUkVFTlRSQU5UIC1NVCBmZnNiX3N0YXRzLm8KPiAtTUQgLU1QIC1NRiAuZGVwcy9m ZnNiX3N0YXRzLlRwbyAtYyAtbyBmZnNiX3N0YXRzLm8gZmZzYl9zdGF0cy5jCj4gZ2NjIC1ESEFW RV9DT05GSUdfSCAtSS4gICAgLURfR05VX1NPVVJDRSAtZyAtTzIgLURfUkVFTlRSQU5UIC1NVCBs aXN0Lm8gLU1ECj4gLU1QIC1NRiAuZGVwcy9saXN0LlRwbyAtYyAtbyBsaXN0Lm8gbGlzdC5jCj4g SW4gZmlsZSBpbmNsdWRlZCBmcm9tIHBhcnNlci5oOjIyOjAsCj4gICAgICAgICAgICAgICAgICBm cm9tIHBhcnNlci5jOjI1Ogo+IHBhcnNlci5jOiBJbiBmdW5jdGlvbiDigJhpbml0X2ZpbGVzeXPi gJk6Cj4gbGlzdC5oOjI5OjMzOiB3YXJuaW5nOiBjYXN0IGZyb20gcG9pbnRlciB0byBpbnRlZ2Vy IG9mIGRpZmZlcmVudCBzaXplCj4gWy1XcG9pbnRlci10by1pbnQtY2FzdF0KPiAgI2RlZmluZSBv ZmZzZXRvZih0eXBlLCBtZW1iZXIpICgoaW50KSAmKCh0eXBlICopMCktPm1lbWJlcikKPiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCj4gbGlzdC5oOjMzOjI4OiBub3RlOiBpbiBl eHBhbnNpb24gb2YgbWFjcm8g4oCYb2Zmc2V0b2bigJkKPiAgICh0eXBlICopKChjaGFyICopX19t cHRyIC0gb2Zmc2V0b2YodHlwZSwgbWVtYmVyKSk7IH0pCj4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF4KPiBsaXN0Lmg6MzY6Mjogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmGNv bnRhaW5lcl9vZuKAmQo+ICAgY29udGFpbmVyX29mKHB0ciwgdHlwZSwgbWVtYmVyKQo+ICAgXgo+ IGxpc3QuaDozOToxMzogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmGxpc3RfZW50cnni gJkKPiAgIGZvciAocG9zID0gbGlzdF9lbnRyeSgoaGVhZCktPm5leHQsIHR5cGVvZigqcG9zKSwg bWVtYmVyKTsgXAo+ICAgICAgICAgICAgICBeCj4gcGFyc2VyLmM6OTM5OjM6IG5vdGU6IGluIGV4 cGFuc2lvbiBvZiBtYWNybyDigJhsaXN0X2Zvcl9lYWNoX2VudHJ54oCZCj4gICAgbGlzdF9mb3Jf ZWFjaF9lbnRyeSh0bXBfbGlzdCwgJmxpc3RfaGVhZC0+bGlzdCwgbGlzdCkKPiAgICBeCj4gbGlz dC5oOjI5OjMzOiB3YXJuaW5nOiBjYXN0IGZyb20gcG9pbnRlciB0byBpbnRlZ2VyIG9mIGRpZmZl cmVudCBzaXplCj4gWy1XcG9pbnRlci10by1pbnQtY2FzdF0KPiAgI2RlZmluZSBvZmZzZXRvZih0 eXBlLCBtZW1iZXIpICgoaW50KSAmKCh0eXBlICopMCktPm1lbWJlcikKPiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBeCj4gbGlzdC5oOjMzOjI4OiBub3RlOiBpbiBleHBhbnNpb24g b2YgbWFjcm8g4oCYb2Zmc2V0b2bigJkKPiAgICh0eXBlICopKChjaGFyICopX19tcHRyIC0gb2Zm c2V0b2YodHlwZSwgbWVtYmVyKSk7IH0pCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4K PiBsaXN0Lmg6MzY6Mjogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmGNvbnRhaW5lcl9v ZuKAmQo+ICAgY29udGFpbmVyX29mKHB0ciwgdHlwZSwgbWVtYmVyKQo+ICAgXgo+IGxpc3QuaDo0 MToxMzogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmGxpc3RfZW50cnnigJkKPiAgICAg ICAgcG9zID0gbGlzdF9lbnRyeShwb3MtPm1lbWJlci5uZXh0LCB0eXBlb2YoKnBvcyksIG1lbWJl cikpCj4gICAgICAgICAgICAgIF4KPiBwYXJzZXIuYzo5Mzk6Mzogbm90ZTogaW4gZXhwYW5zaW9u IG9mIG1hY3JvIOKAmGxpc3RfZm9yX2VhY2hfZW50cnnigJkKPiAgICBsaXN0X2Zvcl9lYWNoX2Vu dHJ5KHRtcF9saXN0LCAmbGlzdF9oZWFkLT5saXN0LCBsaXN0KQo+ICAgIF4KPiBsaXN0Lmg6Mjk6 MzM6IHdhcm5pbmc6IGNhc3QgZnJvbSBwb2ludGVyIHRvIGludGVnZXIgb2YgZGlmZmVyZW50IHNp emUKPiBbLVdwb2ludGVyLXRvLWludC1jYXN0XQo+ICAjZGVmaW5lIG9mZnNldG9mKHR5cGUsIG1l bWJlcikgKChpbnQpICYoKHR5cGUgKikwKS0+bWVtYmVyKQo+ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIF4KPiBsaXN0Lmg6MzM6Mjg6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNy byDigJhvZmZzZXRvZuKAmQo+ICAgKHR5cGUgKikoKGNoYXIgKilfX21wdHIgLSBvZmZzZXRvZih0 eXBlLCBtZW1iZXIpKTsgfSkKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgo+IGxpc3Qu aDozNjoyOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCYY29udGFpbmVyX29m4oCZCj4g ICBjb250YWluZXJfb2YocHRyLCB0eXBlLCBtZW1iZXIpCj4gICBeCj4gbGlzdC5oOjM5OjEzOiBu b3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCYbGlzdF9lbnRyeeKAmQo+ICAgZm9yIChwb3Mg PSBsaXN0X2VudHJ5KChoZWFkKS0+bmV4dCwgdHlwZW9mKCpwb3MpLCBtZW1iZXIpOyBcCj4gICAg ICAgICAgICAgIF4KPiBwYXJzZXIuYzo5NDc6Mzogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3Jv IOKAmGxpc3RfZm9yX2VhY2hfZW50cnnigJkKPiAgICBsaXN0X2Zvcl9lYWNoX2VudHJ5KHRtcF9s aXN0LCAmbGlzdF9oZWFkLT5saXN0LCBsaXN0KSB7Cj4gICAgXgo+IGxpc3QuaDoyOTozMzogd2Fy bmluZzogY2FzdCBmcm9tIHBvaW50ZXIgdG8gaW50ZWdlciBvZiBkaWZmZXJlbnQgc2l6ZQo+IFst V3BvaW50ZXItdG8taW50LWNhc3RdCj4gICNkZWZpbmUgb2Zmc2V0b2YodHlwZSwgbWVtYmVyKSAo KGludCkgJigodHlwZSAqKTApLT5tZW1iZXIpCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXgo+IGxpc3QuaDozMzoyODogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmG9m ZnNldG9m4oCZCj4gICAodHlwZSAqKSgoY2hhciAqKV9fbXB0ciAtIG9mZnNldG9mKHR5cGUsIG1l bWJlcikpOyB9KQo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCj4gbGlzdC5oOjM2OjI6 IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhjb250YWluZXJfb2bigJkKPiAgIGNvbnRh aW5lcl9vZihwdHIsIHR5cGUsIG1lbWJlcikKPiAgIF4KPiBsaXN0Lmg6NDE6MTM6IG5vdGU6IGlu IGV4cGFuc2lvbiBvZiBtYWNybyDigJhsaXN0X2VudHJ54oCZCj4gICAgICAgIHBvcyA9IGxpc3Rf ZW50cnkocG9zLT5tZW1iZXIubmV4dCwgdHlwZW9mKCpwb3MpLCBtZW1iZXIpKQo+ICAgICAgICAg ICAgICBeCj4gcGFyc2VyLmM6OTQ3OjM6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhs aXN0X2Zvcl9lYWNoX2VudHJ54oCZCj4gICAgbGlzdF9mb3JfZWFjaF9lbnRyeSh0bXBfbGlzdCwg Jmxpc3RfaGVhZC0+bGlzdCwgbGlzdCkgewo+ICAgIF4KPiBwYXJzZXIuYzogSW4gZnVuY3Rpb24g 4oCYaW5pdF90Z19zdGF0c+KAmToKPiBsaXN0Lmg6Mjk6MzM6IHdhcm5pbmc6IGNhc3QgZnJvbSBw b2ludGVyIHRvIGludGVnZXIgb2YgZGlmZmVyZW50IHNpemUKPiBbLVdwb2ludGVyLXRvLWludC1j YXN0XQo+ICAjZGVmaW5lIG9mZnNldG9mKHR5cGUsIG1lbWJlcikgKChpbnQpICYoKHR5cGUgKikw KS0+bWVtYmVyKQo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KPiBsaXN0Lmg6 MzM6Mjg6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhvZmZzZXRvZuKAmQo+ICAgKHR5 cGUgKikoKGNoYXIgKilfX21wdHIgLSBvZmZzZXRvZih0eXBlLCBtZW1iZXIpKTsgfSkKPiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXgo+IGxpc3QuaDozNjoyOiBub3RlOiBpbiBleHBhbnNp b24gb2YgbWFjcm8g4oCYY29udGFpbmVyX29m4oCZCj4gICBjb250YWluZXJfb2YocHRyLCB0eXBl LCBtZW1iZXIpCj4gICBeCj4gbGlzdC5oOjM5OjEzOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFj cm8g4oCYbGlzdF9lbnRyeeKAmQo+ICAgZm9yIChwb3MgPSBsaXN0X2VudHJ5KChoZWFkKS0+bmV4 dCwgdHlwZW9mKCpwb3MpLCBtZW1iZXIpOyBcCj4gICAgICAgICAgICAgIF4KPiBwYXJzZXIuYzo5 Nzg6Njogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmGxpc3RfZm9yX2VhY2hfZW50cnni gJkKPiAgICAgICBsaXN0X2Zvcl9lYWNoX2VudHJ5KHRtcF9saXN0LAo+ICAgICAgIF4KPiBsaXN0 Lmg6Mjk6MzM6IHdhcm5pbmc6IGNhc3QgZnJvbSBwb2ludGVyIHRvIGludGVnZXIgb2YgZGlmZmVy ZW50IHNpemUKPiBbLVdwb2ludGVyLXRvLWludC1jYXN0XQo+ICAjZGVmaW5lIG9mZnNldG9mKHR5 cGUsIG1lbWJlcikgKChpbnQpICYoKHR5cGUgKikwKS0+bWVtYmVyKQo+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIF4KPiBsaXN0Lmg6MzM6Mjg6IG5vdGU6IGluIGV4cGFuc2lvbiBv ZiBtYWNybyDigJhvZmZzZXRvZuKAmQo+ICAgKHR5cGUgKikoKGNoYXIgKilfX21wdHIgLSBvZmZz ZXRvZih0eXBlLCBtZW1iZXIpKTsgfSkKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgo+ IGxpc3QuaDozNjoyOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCYY29udGFpbmVyX29m 4oCZCj4gICBjb250YWluZXJfb2YocHRyLCB0eXBlLCBtZW1iZXIpCj4gICBeCj4gbGlzdC5oOjQx OjEzOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCYbGlzdF9lbnRyeeKAmQo+ICAgICAg ICBwb3MgPSBsaXN0X2VudHJ5KHBvcy0+bWVtYmVyLm5leHQsIHR5cGVvZigqcG9zKSwgbWVtYmVy KSkKPiAgICAgICAgICAgICAgXgo+IHBhcnNlci5jOjk3ODo2OiBub3RlOiBpbiBleHBhbnNpb24g b2YgbWFjcm8g4oCYbGlzdF9mb3JfZWFjaF9lbnRyeeKAmQo+ICAgICAgIGxpc3RfZm9yX2VhY2hf ZW50cnkodG1wX2xpc3QsCj4gICAgICAgXgo+IGxpc3QuaDoyOTozMzogd2FybmluZzogY2FzdCBm cm9tIHBvaW50ZXIgdG8gaW50ZWdlciBvZiBkaWZmZXJlbnQgc2l6ZQo+IFstV3BvaW50ZXItdG8t aW50LWNhc3RdCj4gICNkZWZpbmUgb2Zmc2V0b2YodHlwZSwgbWVtYmVyKSAoKGludCkgJigodHlw ZSAqKTApLT5tZW1iZXIpCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgo+IGxp c3QuaDozMzoyODogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmG9mZnNldG9m4oCZCj4g ICAodHlwZSAqKSgoY2hhciAqKV9fbXB0ciAtIG9mZnNldG9mKHR5cGUsIG1lbWJlcikpOyB9KQo+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCj4gbGlzdC5oOjM2OjI6IG5vdGU6IGluIGV4 cGFuc2lvbiBvZiBtYWNybyDigJhjb250YWluZXJfb2bigJkKPiAgIGNvbnRhaW5lcl9vZihwdHIs IHR5cGUsIG1lbWJlcikKPiAgIF4KPiBsaXN0Lmg6Mzk6MTM6IG5vdGU6IGluIGV4cGFuc2lvbiBv ZiBtYWNybyDigJhsaXN0X2VudHJ54oCZCj4gICBmb3IgKHBvcyA9IGxpc3RfZW50cnkoKGhlYWQp LT5uZXh0LCB0eXBlb2YoKnBvcyksIG1lbWJlcik7IFwKPiAgICAgICAgICAgICAgXgo+IHBhcnNl ci5jOjk5MTo2OiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCYbGlzdF9mb3JfZWFjaF9l bnRyeeKAmQo+ICAgICAgIGxpc3RfZm9yX2VhY2hfZW50cnkodG1wX2xpc3QsCj4gICAgICAgXgo+ IGxpc3QuaDoyOTozMzogd2FybmluZzogY2FzdCBmcm9tIHBvaW50ZXIgdG8gaW50ZWdlciBvZiBk aWZmZXJlbnQgc2l6ZQo+IFstV3BvaW50ZXItdG8taW50LWNhc3RdCj4gICNkZWZpbmUgb2Zmc2V0 b2YodHlwZSwgbWVtYmVyKSAoKGludCkgJigodHlwZSAqKTApLT5tZW1iZXIpCj4gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXgo+IGxpc3QuaDozMzoyODogbm90ZTogaW4gZXhwYW5z aW9uIG9mIG1hY3JvIOKAmG9mZnNldG9m4oCZCj4gICAodHlwZSAqKSgoY2hhciAqKV9fbXB0ciAt IG9mZnNldG9mKHR5cGUsIG1lbWJlcikpOyB9KQo+ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBeCj4gbGlzdC5oOjM2OjI6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhjb250YWlu ZXJfb2bigJkKPiAgIGNvbnRhaW5lcl9vZihwdHIsIHR5cGUsIG1lbWJlcikKPiAgIF4KPiBsaXN0 Lmg6NDE6MTM6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhsaXN0X2VudHJ54oCZCj4g ICAgICAgIHBvcyA9IGxpc3RfZW50cnkocG9zLT5tZW1iZXIubmV4dCwgdHlwZW9mKCpwb3MpLCBt ZW1iZXIpKQo+ICAgICAgICAgICAgICBeCj4gcGFyc2VyLmM6OTkxOjY6IG5vdGU6IGluIGV4cGFu c2lvbiBvZiBtYWNybyDigJhsaXN0X2Zvcl9lYWNoX2VudHJ54oCZCj4gICAgICAgbGlzdF9mb3Jf ZWFjaF9lbnRyeSh0bXBfbGlzdCwKPiAgICAgICBeCj4gbXYgLWYgLmRlcHMvcndsb2NrLlRwbyAu ZGVwcy9yd2xvY2suUG8KPiBmZnNiX2ZzLmM6IEluIGZ1bmN0aW9uIOKAmGZzX25lZWRzX3N0YXRz 4oCZOgo+IGZmc2JfZnMuYzo2MjM6MjQ6IHdhcm5pbmc6IGNhc3QgZnJvbSBwb2ludGVyIHRvIGlu dGVnZXIgb2YgZGlmZmVyZW50IHNpemUKPiBbLVdwb2ludGVyLXRvLWludC1jYXN0XQo+ICAgcmV0 dXJuIChmcyAhPSBOVUxMKSA/IChpbnQpZnMtPmZzZC5jb25maWcgOiAwOwo+ICAgICAgICAgICAg ICAgICAgICAgICAgIF4KPiBtdiAtZiAuZGVwcy9saXN0LlRwbyAuZGVwcy9saXN0LlBvCj4gbXYg LWYgLmRlcHMvY2lybGlzdC5UcG8gLmRlcHMvY2lybGlzdC5Qbwo+IG12IC1mIC5kZXBzL21ldGFv cHMuVHBvIC5kZXBzL21ldGFvcHMuUG8KPiBtdiAtZiAuZGVwcy9yYW5kLlRwbyAuZGVwcy9yYW5k LlBvCj4gbWFrZVs3XTogRW50ZXJpbmcgZGlyZWN0b3J5IGAvJwo+IC4uLy4uLy4uLy4uLy4uLy4u L2luY2x1ZGUvbWsvZW52X3ByZS5tazoxMDA6IC8vaW5jbHVkZS9tay9jb25maWcubWs6IE5vIHN1 Y2gKPiBmaWxlIG9yIGRpcmVjdG9yeQo+IC4uLy4uLy4uLy4uLy4uLy4uL2luY2x1ZGUvbWsvZW52 X3ByZS5tazoxMDE6IC8vaW5jbHVkZS9tay9mZWF0dXJlcy5tazogTm8KPiBzdWNoIGZpbGUgb3Ig ZGlyZWN0b3J5Cj4gbWFrZVs3XTogKioqIE5vIHJ1bGUgdG8gbWFrZSB0YXJnZXQgYC8vaW5jbHVk ZS9tay9mZWF0dXJlcy5taycuICBTdG9wLgo+IG1ha2VbN106IExlYXZpbmcgZGlyZWN0b3J5IGAv Jwo+IG1ha2VbNl06ICoqKiBbYWxsXSBFcnJvciAyCj4gbWFrZVs2XTogTGVhdmluZyBkaXJlY3Rv cnkKPiBgL21udC90ZXN0cy9rZXJuZWwvUkhFTDYvbHRwLWxpdGUvbHRwLWZ1bGwtMjAxNDAxMTUv dGVzdGNhc2VzL25ldHdvcmsvcnBjL2Jhc2ljX3Rlc3RzL3JwYzAxJwo+IG1ha2VbNV06ICoqKiBb YWxsXSBFcnJvciAyCj4gbWFrZVs1XTogTGVhdmluZyBkaXJlY3RvcnkKPiBgL21udC90ZXN0cy9r ZXJuZWwvUkhFTDYvbHRwLWxpdGUvbHRwLWZ1bGwtMjAxNDAxMTUvdGVzdGNhc2VzL25ldHdvcmsv cnBjL2Jhc2ljX3Rlc3RzJwo+IG1ha2VbNF06ICoqKiBbYWxsXSBFcnJvciAyCj4gbWFrZVs0XTog TGVhdmluZyBkaXJlY3RvcnkKPiBgL21udC90ZXN0cy9rZXJuZWwvUkhFTDYvbHRwLWxpdGUvbHRw LWZ1bGwtMjAxNDAxMTUvdGVzdGNhc2VzL25ldHdvcmsvcnBjJwo+IG1ha2VbM106ICoqKiBbYWxs XSBFcnJvciAyCj4gbWFrZVszXTogTGVhdmluZyBkaXJlY3RvcnkKPiBgL21udC90ZXN0cy9rZXJu ZWwvUkhFTDYvbHRwLWxpdGUvbHRwLWZ1bGwtMjAxNDAxMTUvdGVzdGNhc2VzL25ldHdvcmsnCj4g bXYgLWYgLmRlcHMvZmZzYl90aHJlYWQuVHBvIC5kZXBzL2Zmc2JfdGhyZWFkLlBvCj4gbWFrZVsy XTogKioqIFthbGxdIEVycm9yIDIKPiBtYWtlWzJdOiBMZWF2aW5nIGRpcmVjdG9yeQo+IGAvbW50 L3Rlc3RzL2tlcm5lbC9SSEVMNi9sdHAtbGl0ZS9sdHAtZnVsbC0yMDE0MDExNS90ZXN0Y2FzZXMn Cj4gbWFrZVsxXTogKioqIFt0ZXN0Y2FzZXMtYWxsXSBFcnJvciAyCj4gbWFrZVsxXTogKioqIFdh aXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KPiAKPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K PiBGbG93LWJhc2VkIHJlYWwtdGltZSB0cmFmZmljIGFuYWx5dGljcyBzb2Z0d2FyZS4gQ2lzY28g Y2VydGlmaWVkIHRvb2wuCj4gTW9uaXRvciB0cmFmZmljLCBTTEFzLCBRb1MsIE1lZGlhbmV0LCBX QUFTIGV0Yy4gd2l0aCBOZXRGbG93IEFuYWx5emVyCj4gQ3VzdG9taXplIHlvdXIgb3duIGRhc2hi b2FyZHMsIHNldCB0cmFmZmljIGFsZXJ0cyBhbmQgZ2VuZXJhdGUgcmVwb3J0cy4KPiBOZXR3b3Jr IGJlaGF2aW9yYWwgYW5hbHlzaXMgJiBzZWN1cml0eSBtb25pdG9yaW5nLiBBbGwtaW4tb25lIHRv b2wuCj4gaHR0cDovL3B1YmFkcy5nLmRvdWJsZWNsaWNrLm5ldC9nYW1wYWQvY2xrP2lkPTEyNjgz OTA3MSZpdT0vNDE0MC9vc3RnLmNsa3Ryawo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCj4gTHRwLWxpc3QgbWFpbGluZyBsaXN0Cj4gTHRwLWxpc3RAbGlz dHMuc291cmNlZm9yZ2UubmV0Cj4gaHR0cHM6Ly9saXN0cy5zb3VyY2Vmb3JnZS5uZXQvbGlzdHMv bGlzdGluZm8vbHRwLWxpc3QKPiAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoiQWNjZWxlcmF0ZSBE ZXYgQ3ljbGVzIHdpdGggQXV0b21hdGVkIENyb3NzLUJyb3dzZXIgVGVzdGluZyAtIEZvciBGUkVF Ckluc3RhbnRseSBydW4geW91ciBTZWxlbml1bSB0ZXN0cyBhY3Jvc3MgMzAwKyBicm93c2VyL09T IGNvbWJvcy4gIEdldCAKdW5wYXJhbGxlbGVkIHNjYWxhYmlsaXR5IGZyb20gdGhlIGJlc3QgU2Vs ZW5pdW0gdGVzdGluZyBwbGF0Zm9ybSBhdmFpbGFibGUuClNpbXBsZSB0byB1c2UuIE5vdGhpbmcg dG8gaW5zdGFsbC4gR2V0IHN0YXJ0ZWQgbm93IGZvciBmcmVlLiIKaHR0cDovL3Auc2YubmV0L3Nm dS9TYXVjZUxhYnMKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KTHRwLWxpc3QgbWFpbGluZyBsaXN0Ckx0cC1saXN0QGxpc3RzLnNvdXJjZWZvcmdlLm5ldApo dHRwczovL2xpc3RzLnNvdXJjZWZvcmdlLm5ldC9saXN0cy9saXN0aW5mby9sdHAtbGlzdAo=