Return-Path: X-Original-To: apmail-hbase-user-archive@www.apache.org Delivered-To: apmail-hbase-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id C526911DF9 for ; Mon, 25 Aug 2014 06:53:31 +0000 (UTC) Received: (qmail 77148 invoked by uid 500); 25 Aug 2014 06:53:26 -0000 Delivered-To: apmail-hbase-user-archive@hbase.apache.org Received: (qmail 77077 invoked by uid 500); 25 Aug 2014 06:53:26 -0000 Mailing-List: contact user-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@hbase.apache.org Delivered-To: mailing list user@hbase.apache.org Received: (qmail 77066 invoked by uid 99); 25 Aug 2014 06:53:26 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 25 Aug 2014 06:53:26 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of sreenivasulu.y@huawei.com designates 119.145.14.66 as permitted sender) Received: from [119.145.14.66] (HELO szxga03-in.huawei.com) (119.145.14.66) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 25 Aug 2014 06:52:59 +0000 Received: from 172.24.2.119 (EHLO szxeml413-hub.china.huawei.com) ([172.24.2.119]) by szxrg03-dlp.huawei.com (MOS 4.4.3-GA FastPath queued) with ESMTP id ATM31382; Mon, 25 Aug 2014 14:52:55 +0800 (CST) Received: from szxeml558-mbx.china.huawei.com ([169.254.7.153]) by szxeml413-hub.china.huawei.com ([10.82.67.152]) with mapi id 14.03.0158.001; Mon, 25 Aug 2014 14:52:47 +0800 From: sreenivasulu y To: "user@hbase.apache.org" Subject: RE: RegionServer failed in logsplitting, wal.HLogSplitter: Got while writing log entry to log Thread-Topic: RegionServer failed in logsplitting, wal.HLogSplitter: Got while writing log entry to log Thread-Index: AQHPwBE7zKVunyJDwEC9sM84PgaO1Zvg2qPQ Date: Mon, 25 Aug 2014 06:52:45 +0000 Message-ID: <422919DD6D695D439A6B31B21B6F8BDE3D9FF278@szxeml558-mbx.china.huawei.com> References: <422919DD6D695D439A6B31B21B6F8BDE3D9FE030@szxeml558-mbx.china.huawei.com> In-Reply-To: Accept-Language: en-US, zh-CN Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.18.166.116] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-CFilter-Loop: Reflected X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A02020A.53FADD47.00E7,ss=1,re=0.000,fgs=0, ip=169.254.7.153, so=2013-05-26 15:14:31, dmn=2011-05-27 18:58:46 X-Mirapoint-Loop-Id: a236d81d0191452ed4f9cb273b977ffb X-Virus-Checked: Checked by ClamAV on apache.org VGhhbmtzIGZvciByZXBseSB0ZWQgDQpJIGFtIHVzaW5nIGZvbGxvd2luZyB2ZXJzaW9ucw0KSEJh c2UgMC45OC4zDQpIREZTIDIuNC4zDQoNCkRvIHlvdSBzZWUgb3RoZXIgZXhjZXB0aW9ucyBpbiBt YWNoaW5lMSBzZXJ2ZXIgbG9nID8NClRoZSBmb2xsb3dpbmcgZmlsZSBpcyBub3QgZXhpc3QgbGlr ZSB0aGF0IHRocm93aW5nIGVycm9yLg0KDQoyMDE0LTA3LTExIDA4OjIzOjU4LDkyMSBXQVJOICBb VGhyZWFkLTM5NDc1XSBoZGZzLkRGU0NsaWVudDogRGF0YVN0cmVhbWVyIEV4Y2VwdGlvbg0Kb3Jn LmFwYWNoZS5oYWRvb3AuaXBjLlJlbW90ZUV4Y2VwdGlvbihvcmcuYXBhY2hlLmhhZG9vcC5oZGZz LnNlcnZlci5uYW1lbm9kZS5MZWFzZUV4cGlyZWRFeGNlcHRpb24pOiBObyBsZWFzZSBvbiAvaGJh c2UvZGF0YS9kZWZhdWx0LzIwMjVUaHJlYWQwX3RhYmxlLzI0N2I1YjM1OWFiODFlZDVkZWI1Mzc5 ZTBmMDdiYTU2L3JlY292ZXJlZC5lZGl0cy8wMDAwMDAwMDAwMDAwMDAwMDAyLnRlbXA6IEZpbGUg ZG9lcyBub3QgZXhpc3QuIFtMZWFzZS4gIEhvbGRlcjogREZTQ2xpZW50X2hiX3JzX0hPU1QtMTAt MTgtNDAtNjksNjAwMjAsMTQwNTAwMzg1MzQ1Nl83NjUyMzM1NjVfMjksIHBlbmRpbmdjcmVhdGVz OiAxMV0NCglhdCBvcmcuYXBhY2hlLmhhZG9vcC5oZGZzLnNlcnZlci5uYW1lbm9kZS5GU05hbWVz eXN0ZW0uY2hlY2tMZWFzZShGU05hbWVzeXN0ZW0uamF2YToyOTUyKQ0KCWF0IG9yZy5hcGFjaGUu aGFkb29wLmhkZnMuc2VydmVyLm5hbWVub2RlLkZTTmFtZXN5c3RlbS5hbmFseXplRmlsZVN0YXRl KEZTTmFtZXN5c3RlbS5qYXZhOjI3NzIpDQoJYXQgb3JnLmFwYWNoZS5oYWRvb3AuaGRmcy5zZXJ2 ZXIubmFtZW5vZGUuRlNOYW1lc3lzdGVtLmdldEFkZGl0aW9uYWxCbG9jayhGU05hbWVzeXN0ZW0u amF2YToyNjgwKQ0KCWF0IG9yZy5hcGFjaGUuaGFkb29wLmhkZnMuc2VydmVyLm5hbWVub2RlLk5h bWVOb2RlUnBjU2VydmVyLmFkZEJsb2NrKE5hbWVOb2RlUnBjU2VydmVyLmphdmE6NTg0KQ0KCWF0 IG9yZy5hcGFjaGUuaGFkb29wLmhkZnMucHJvdG9jb2xQQi5DbGllbnROYW1lbm9kZVByb3RvY29s U2VydmVyU2lkZVRyYW5zbGF0b3JQQi5hZGRCbG9jayhDbGllbnROYW1lbm9kZVByb3RvY29sU2Vy dmVyU2lkZVRyYW5zbGF0b3JQQi5qYXZhOjQ0MCkNCglhdCBvcmcuYXBhY2hlLmhhZG9vcC5oZGZz LnByb3RvY29sLnByb3RvLkNsaWVudE5hbWVub2RlUHJvdG9jb2xQcm90b3MkQ2xpZW50TmFtZW5v ZGVQcm90b2NvbCQyLmNhbGxCbG9ja2luZ01ldGhvZChDbGllbnROYW1lbm9kZVByb3RvY29sUHJv dG9zLmphdmEpDQoJYXQgb3JnLmFwYWNoZS5oYWRvb3AuaXBjLlByb3RvYnVmUnBjRW5naW5lJFNl cnZlciRQcm90b0J1ZlJwY0ludm9rZXIuY2FsbChQcm90b2J1ZlJwY0VuZ2luZS5qYXZhOjU4NSkN CglhdCBvcmcuYXBhY2hlLmhhZG9vcC5pcGMuUlBDJFNlcnZlci5jYWxsKFJQQy5qYXZhOjkyOCkN CglhdCBvcmcuYXBhY2hlLmhhZG9vcC5pcGMuU2VydmVyJEhhbmRsZXIkMS5ydW4oU2VydmVyLmph dmE6MjAxMykNCglhdCBvcmcuYXBhY2hlLmhhZG9vcC5pcGMuU2VydmVyJEhhbmRsZXIkMS5ydW4o U2VydmVyLmphdmE6MjAwOSkNCglhdCBqYXZhLnNlY3VyaXR5LkFjY2Vzc0NvbnRyb2xsZXIuZG9Q cml2aWxlZ2VkKE5hdGl2ZSBNZXRob2QpDQoJYXQgamF2YXguc2VjdXJpdHkuYXV0aC5TdWJqZWN0 LmRvQXMoU3ViamVjdC5qYXZhOjM5NikNCglhdCBvcmcuYXBhY2hlLmhhZG9vcC5zZWN1cml0eS5V c2VyR3JvdXBJbmZvcm1hdGlvbi5kb0FzKFVzZXJHcm91cEluZm9ybWF0aW9uLmphdmE6MTU1NikN CglhdCBvcmcuYXBhY2hlLmhhZG9vcC5pcGMuU2VydmVyJEhhbmRsZXIucnVuKFNlcnZlci5qYXZh OjIwMDcpDQoNCglhdCBvcmcuYXBhY2hlLmhhZG9vcC5pcGMuQ2xpZW50LmNhbGwoQ2xpZW50Lmph dmE6MTQxMCkNCglhdCBvcmcuYXBhY2hlLmhhZG9vcC5pcGMuQ2xpZW50LmNhbGwoQ2xpZW50Lmph dmE6MTM2MykNCglhdCBvcmcuYXBhY2hlLmhhZG9vcC5pcGMuUHJvdG9idWZScGNFbmdpbmUkSW52 b2tlci5pbnZva2UoUHJvdG9idWZScGNFbmdpbmUuamF2YToyMDYpDQoJYXQgJFByb3h5MTguYWRk QmxvY2soVW5rbm93biBTb3VyY2UpDQoJYXQgb3JnLmFwYWNoZS5oYWRvb3AuaGRmcy5wcm90b2Nv bFBCLkNsaWVudE5hbWVub2RlUHJvdG9jb2xUcmFuc2xhdG9yUEIuYWRkQmxvY2soQ2xpZW50TmFt ZW5vZGVQcm90b2NvbFRyYW5zbGF0b3JQQi5qYXZhOjM2MSkNCglhdCBzdW4ucmVmbGVjdC5HZW5l cmF0ZWRNZXRob2RBY2Nlc3NvcjI3Lmludm9rZShVbmtub3duIFNvdXJjZSkNCglhdCBzdW4ucmVm bGVjdC5EZWxlZ2F0aW5nTWV0aG9kQWNjZXNzb3JJbXBsLmludm9rZShEZWxlZ2F0aW5nTWV0aG9k QWNjZXNzb3JJbXBsLmphdmE6MjUpDQoJYXQgamF2YS5sYW5nLnJlZmxlY3QuTWV0aG9kLmludm9r ZShNZXRob2QuamF2YTo1OTcpDQoJYXQgb3JnLmFwYWNoZS5oYWRvb3AuaW8ucmV0cnkuUmV0cnlJ bnZvY2F0aW9uSGFuZGxlci5pbnZva2VNZXRob2QoUmV0cnlJbnZvY2F0aW9uSGFuZGxlci5qYXZh OjE5MCkNCglhdCBvcmcuYXBhY2hlLmhhZG9vcC5pby5yZXRyeS5SZXRyeUludm9jYXRpb25IYW5k bGVyLmludm9rZShSZXRyeUludm9jYXRpb25IYW5kbGVyLmphdmE6MTAzKQ0KCWF0ICRQcm94eTE5 LmFkZEJsb2NrKFVua25vd24gU291cmNlKQ0KCWF0IHN1bi5yZWZsZWN0LkdlbmVyYXRlZE1ldGhv ZEFjY2Vzc29yMjcuaW52b2tlKFVua25vd24gU291cmNlKQ0KCWF0IHN1bi5yZWZsZWN0LkRlbGVn YXRpbmdNZXRob2RBY2Nlc3NvckltcGwuaW52b2tlKERlbGVnYXRpbmdNZXRob2RBY2Nlc3Nvcklt cGwuamF2YToyNSkNCglhdCBqYXZhLmxhbmcucmVmbGVjdC5NZXRob2QuaW52b2tlKE1ldGhvZC5q YXZhOjU5NykNCglhdCBvcmcuYXBhY2hlLmhhZG9vcC5oYmFzZS5mcy5IRmlsZVN5c3RlbSQxLmlu dm9rZShIRmlsZVN5c3RlbS5qYXZhOjI5NCkNCglhdCAkUHJveHkyMC5hZGRCbG9jayhVbmtub3du IFNvdXJjZSkNCglhdCBvcmcuYXBhY2hlLmhhZG9vcC5oZGZzLkRGU091dHB1dFN0cmVhbSREYXRh U3RyZWFtZXIubG9jYXRlRm9sbG93aW5nQmxvY2soREZTT3V0cHV0U3RyZWFtLmphdmE6MTQzOSkN CglhdCBvcmcuYXBhY2hlLmhhZG9vcC5oZGZzLkRGU091dHB1dFN0cmVhbSREYXRhU3RyZWFtZXIu bmV4dEJsb2NrT3V0cHV0U3RyZWFtKERGU091dHB1dFN0cmVhbS5qYXZhOjEyNjEpDQoJYXQgb3Jn LmFwYWNoZS5oYWRvb3AuaGRmcy5ERlNPdXRwdXRTdHJlYW0kRGF0YVN0cmVhbWVyLnJ1bihERlNP dXRwdXRTdHJlYW0uamF2YTo1MjUpDQoyMDE0LTA3LTExIDA4OjIzOjU4LDkzMyBGQVRBTCBbUlNf TE9HX1JFUExBWV9PUFMtSE9TVC0xMC0xOC00MC02OTo2MDAyMC0wLVdyaXRlci0xMF0gd2FsLkhM b2dTcGxpdHRlcjogIEdvdCB3aGlsZSB3cml0aW5nIGxvZyBlbnRyeSB0byBsb2cNCmphdmEuaW8u SU9FeGNlcHRpb246IGNhbm5vdCBnZXQgbG9nIHdyaXRlcg0KCWF0IG9yZy5hcGFjaGUuaGFkb29w LmhiYXNlLnJlZ2lvbnNlcnZlci53YWwuSExvZ0ZhY3RvcnkuY3JlYXRlV3JpdGVyKEhMb2dGYWN0 b3J5LmphdmE6MTk3KQ0KCWF0IG9yZy5hcGFjaGUuaGFkb29wLmhiYXNlLnJlZ2lvbnNlcnZlci53 YWwuSExvZ0ZhY3RvcnkuY3JlYXRlUmVjb3ZlcmVkRWRpdHNXcml0ZXIoSExvZ0ZhY3RvcnkuamF2 YToxODIpDQoJYXQgb3JnLmFwYWNoZS5oYWRvb3AuaGJhc2UucmVnaW9uc2VydmVyLndhbC5ITG9n U3BsaXR0ZXIuY3JlYXRlV3JpdGVyKEhMb2dTcGxpdHRlci5qYXZhOjY0MykNCglhdCBvcmcuYXBh Y2hlLmhhZG9vcC5oYmFzZS5yZWdpb25zZXJ2ZXIud2FsLkhMb2dTcGxpdHRlciRMb2dSZWNvdmVy ZWRFZGl0c091dHB1dFNpbmsuY3JlYXRlV0FQKEhMb2dTcGxpdHRlci5qYXZhOjEyMjMpDQoJYXQg b3JnLmFwYWNoZS5oYWRvb3AuaGJhc2UucmVnaW9uc2VydmVyLndhbC5ITG9nU3BsaXR0ZXIkTG9n UmVjb3ZlcmVkRWRpdHNPdXRwdXRTaW5rLmdldFdyaXRlckFuZFBhdGgoSExvZ1NwbGl0dGVyLmph dmE6MTIwMCkNCglhdCBvcmcuYXBhY2hlLmhhZG9vcC5oYmFzZS5yZWdpb25zZXJ2ZXIud2FsLkhM b2dTcGxpdHRlciRMb2dSZWNvdmVyZWRFZGl0c091dHB1dFNpbmsuYXBwZW5kKEhMb2dTcGxpdHRl ci5qYXZhOjEyNDMpDQoJYXQgb3JnLmFwYWNoZS5oYWRvb3AuaGJhc2UucmVnaW9uc2VydmVyLndh bC5ITG9nU3BsaXR0ZXIkV3JpdGVyVGhyZWFkLndyaXRlQnVmZmVyKEhMb2dTcGxpdHRlci5qYXZh Ojg1MSkNCglhdCBvcmcuYXBhY2hlLmhhZG9vcC5oYmFzZS5yZWdpb25zZXJ2ZXIud2FsLkhMb2dT cGxpdHRlciRXcml0ZXJUaHJlYWQuZG9SdW4oSExvZ1NwbGl0dGVyLmphdmE6ODQzKQ0KCWF0IG9y Zy5hcGFjaGUuaGFkb29wLmhiYXNlLnJlZ2lvbnNlcnZlci53YWwuSExvZ1NwbGl0dGVyJFdyaXRl clRocmVhZC5ydW4oSExvZ1NwbGl0dGVyLmphdmE6ODEzKQ0KQ2F1c2VkIGJ5OiBqYXZhLmlvLkZp bGVOb3RGb3VuZEV4Y2VwdGlvbjogUGFyZW50IGRpcmVjdG9yeSBkb2Vzbid0IGV4aXN0OiAvaGJh c2UvZGF0YS9kZWZhdWx0LzIwMjVUaHJlYWQwX3RhYmxlL2RmMmRhZTM0MjMxODI5YWRjNmFjMTBi NDNmNWRlY2IyL3JlY292ZXJlZC5lZGl0cw0KCWF0IG9yZy5hcGFjaGUuaGFkb29wLmhkZnMuc2Vy dmVyLm5hbWVub2RlLkZTTmFtZXN5c3RlbS52ZXJpZnlQYXJlbnREaXIoRlNOYW1lc3lzdGVtLmph dmE6MjE1NikNCglhdCBvcmcuYXBhY2hlLmhhZG9vcC5oZGZzLnNlcnZlci5uYW1lbm9kZS5GU05h bWVzeXN0ZW0uc3RhcnRGaWxlSW50ZXJuYWwoRlNOYW1lc3lzdGVtLmphdmE6MjI4OSkNCglhdCBv cmcuYXBhY2hlLmhhZG9vcC5oZGZzLnNlcnZlci5uYW1lbm9kZS5GU05hbWVzeXN0ZW0uc3RhcnRG aWxlSW50KEZTTmFtZXN5c3RlbS5qYXZhOjIyMzcpDQoJYXQgb3JnLmFwYWNoZS5oYWRvb3AuaGRm cy5zZXJ2ZXIubmFtZW5vZGUuRlNOYW1lc3lzdGVtLnN0YXJ0RmlsZShGU05hbWVzeXN0ZW0uamF2 YToyMTkwKQ0KCWF0IG9yZy5hcGFjaGUuaGFkb29wLmhkZnMuc2VydmVyLm5hbWVub2RlLk5hbWVO b2RlUnBjU2VydmVyLmNyZWF0ZShOYW1lTm9kZVJwY1NlcnZlci5qYXZhOjUyMCkNCglhdCBvcmcu YXBhY2hlLmhhZG9vcC5oZGZzLnByb3RvY29sUEIuQ2xpZW50TmFtZW5vZGVQcm90b2NvbFNlcnZl clNpZGVUcmFuc2xhdG9yUEIuY3JlYXRlKENsaWVudE5hbWVub2RlUHJvdG9jb2xTZXJ2ZXJTaWRl VHJhbnNsYXRvclBCLmphdmE6MzU0KQ0KCWF0IG9yZy5hcGFjaGUuaGFkb29wLmhkZnMucHJvdG9j b2wucHJvdG8uQ2xpZW50TmFtZW5vZGVQcm90b2NvbFByb3RvcyRDbGllbnROYW1lbm9kZVByb3Rv Y29sJDIuY2FsbEJsb2NraW5nTWV0aG9kKENsaWVudE5hbWVub2RlUHJvdG9jb2xQcm90b3MuamF2 YSkNCglhdCBvcmcuYXBhY2hlLmhhZG9vcC5pcGMuUHJvdG9idWZScGNFbmdpbmUkU2VydmVyJFBy b3RvQnVmUnBjSW52b2tlci5jYWxsKFByb3RvYnVmUnBjRW5naW5lLmphdmE6NTg1KQ0KCWF0IG9y Zy5hcGFjaGUuaGFkb29wLmlwYy5SUEMkU2VydmVyLmNhbGwoUlBDLmphdmE6OTI4KQ0KCWF0IG9y Zy5hcGFjaGUuaGFkb29wLmlwYy5TZXJ2ZXIkSGFuZGxlciQxLnJ1bihTZXJ2ZXIuamF2YToyMDEz KQ0KCWF0IG9yZy5hcGFjaGUuaGFkb29wLmlwYy5TZXJ2ZXIkSGFuZGxlciQxLnJ1bihTZXJ2ZXIu amF2YToyMDA5KQ0KCWF0IGphdmEuc2VjdXJpdHkuQWNjZXNzQ29udHJvbGxlci5kb1ByaXZpbGVn ZWQoTmF0aXZlIE1ldGhvZCkNCglhdCBqYXZheC5zZWN1cml0eS5hdXRoLlN1YmplY3QuZG9BcyhT dWJqZWN0LmphdmE6Mzk2KQ0KCWF0IG9yZy5hcGFjaGUuaGFkb29wLnNlY3VyaXR5LlVzZXJHcm91 cEluZm9ybWF0aW9uLmRvQXMoVXNlckdyb3VwSW5mb3JtYXRpb24uamF2YToxNTU2KQ0KCWF0IG9y Zy5hcGFjaGUuaGFkb29wLmlwYy5TZXJ2ZXIkSGFuZGxlci5ydW4oU2VydmVyLmphdmE6MjAwNykN Cg0KCWF0IHN1bi5yZWZsZWN0Lk5hdGl2ZUNvbnN0cnVjdG9yQWNjZXNzb3JJbXBsLm5ld0luc3Rh bmNlMChOYXRpdmUgTWV0aG9kKQ0KCWF0IHN1bi5yZWZsZWN0Lk5hdGl2ZUNvbnN0cnVjdG9yQWNj ZXNzb3JJbXBsLm5ld0luc3RhbmNlKE5hdGl2ZUNvbnN0cnVjdG9yQWNjZXNzb3JJbXBsLmphdmE6 MzkpDQoJYXQgc3VuLnJlZmxlY3QuRGVsZWdhdGluZ0NvbnN0cnVjdG9yQWNjZXNzb3JJbXBsLm5l d0luc3RhbmNlKERlbGVnYXRpbmdDb25zdHJ1Y3RvckFjY2Vzc29ySW1wbC5qYXZhOjI3KQ0KCWF0 IGphdmEubGFuZy5yZWZsZWN0LkNvbnN0cnVjdG9yLm5ld0luc3RhbmNlKENvbnN0cnVjdG9yLmph dmE6NTEzKQ0KCWF0IG9yZy5hcGFjaGUuaGFkb29wLmlwYy5SZW1vdGVFeGNlcHRpb24uaW5zdGFu dGlhdGVFeGNlcHRpb24oUmVtb3RlRXhjZXB0aW9uLmphdmE6MTA2KQ0KCWF0IG9yZy5hcGFjaGUu aGFkb29wLmlwYy5SZW1vdGVFeGNlcHRpb24udW53cmFwUmVtb3RlRXhjZXB0aW9uKFJlbW90ZUV4 Y2VwdGlvbi5qYXZhOjczKQ0KCWF0IG9yZy5hcGFjaGUuaGFkb29wLmhkZnMuREZTT3V0cHV0U3Ry ZWFtLm5ld1N0cmVhbUZvckNyZWF0ZShERlNPdXRwdXRTdHJlYW0uamF2YToxNjA0KQ0KCWF0IG9y Zy5hcGFjaGUuaGFkb29wLmhkZnMuREZTQ2xpZW50LmNyZWF0ZShERlNDbGllbnQuamF2YToxNDY1 KQ0KCWF0IG9yZy5hcGFjaGUuaGFkb29wLmhkZnMuREZTQ2xpZW50LmNyZWF0ZShERlNDbGllbnQu amF2YToxNDI1KQ0KCWF0IG9yZy5hcGFjaGUuaGFkb29wLmhkZnMuRGlzdHJpYnV0ZWRGaWxlU3lz dGVtJDcuZG9DYWxsKERpc3RyaWJ1dGVkRmlsZVN5c3RlbS5qYXZhOjQzNykNCglhdCBvcmcuYXBh Y2hlLmhhZG9vcC5oZGZzLkRpc3RyaWJ1dGVkRmlsZVN5c3RlbSQ3LmRvQ2FsbChEaXN0cmlidXRl ZEZpbGVTeXN0ZW0uamF2YTo0MzMpDQoJYXQgb3JnLmFwYWNoZS5oYWRvb3AuZnMuRmlsZVN5c3Rl bUxpbmtSZXNvbHZlci5yZXNvbHZlKEZpbGVTeXN0ZW1MaW5rUmVzb2x2ZXIuamF2YTo4MSkNCglh dCBvcmcuYXBhY2hlLmhhZG9vcC5oZGZzLkRpc3RyaWJ1dGVkRmlsZVN5c3RlbS5jcmVhdGVOb25S ZWN1cnNpdmUoRGlzdHJpYnV0ZWRGaWxlU3lzdGVtLmphdmE6NDMzKQ0KCWF0IG9yZy5hcGFjaGUu aGFkb29wLmZzLkZpbGVTeXN0ZW0uY3JlYXRlTm9uUmVjdXJzaXZlKEZpbGVTeXN0ZW0uamF2YTox MTEwKQ0KCWF0IG9yZy5hcGFjaGUuaGFkb29wLmZzLkZpbGVTeXN0ZW0uY3JlYXRlTm9uUmVjdXJz aXZlKEZpbGVTeXN0ZW0uamF2YToxMDg2KQ0KCWF0IG9yZy5hcGFjaGUuaGFkb29wLmhiYXNlLnJl Z2lvbnNlcnZlci53YWwuUHJvdG9idWZMb2dXcml0ZXIuaW5pdChQcm90b2J1ZkxvZ1dyaXRlci5q YXZhOjc4KQ0KCWF0IG9yZy5hcGFjaGUuaGFkb29wLmhiYXNlLnJlZ2lvbnNlcnZlci53YWwuSExv Z0ZhY3RvcnkuY3JlYXRlV3JpdGVyKEhMb2dGYWN0b3J5LmphdmE6MTk0KQ0KCS4uLiA4IG1vcmUN Cg0KSW4gTmFtZU5vZGUgYXQgdGhlIHNhbWUgdGltZSBkZWxldGVkIHRoZSBmaWxlLg0KDQoyMDE0 LTA3LTExIDA4OjIzOjU3LDk4MyBJTkZPIEJsb2NrU3RhdGVDaGFuZ2U6IEJMT0NLKiBhZGRUb0lu dmFsaWRhdGVzOiBibGtfMTA3Mzg0ODQyN18xMDc2NTYgMTAuMTguNDAuNjk6NTAwNzYgMTAuMTgu NDAuODk6NTAwNzYgDQoyMDE0LTA3LTExIDA4OjIzOjU4LDc4NiBJTkZPIG9yZy5hcGFjaGUuaGFk b29wLmhkZnMuU3RhdGVDaGFuZ2U6IEJMT0NLKiBhbGxvY2F0ZUJsb2NrOiAvaGJhc2UvZGF0YS9k ZWZhdWx0LzIwMjVUaHJlYWQwX3RhYmxlLzZjZDAwODNkNTRkYmQ4YThiMDEwYzAwYTI3NzBhMzIx L3JlY292ZXJlZC5lZGl0cy8wMDAwMDAwMDAwMDAwMDAwMDAyLnRlbXAuIEJQLTg5MTM0MTU2LTEw LjE4LjQwLjY5LTE0MDUwMDM3ODg2MDYgYmxrXzEwNzM4NDk1NjRfMTA4Nzk0e2Jsb2NrVUNTdGF0 ZT1VTkRFUl9DT05TVFJVQ1RJT04sIHByaW1hcnlOb2RlSW5kZXg9LTEsIHJlcGxpY2FzPVtSZXBs aWNhVW5kZXJDb25zdHJ1Y3Rpb25bW0RJU0tdRFMtZGU1NmIwNGMtNzVkYy00ODg0LWFlZGUtMjIx MmMxYTEzMDVlOk5PUk1BTHxSQlddLCBSZXBsaWNhVW5kZXJDb25zdHJ1Y3Rpb25bW0RJU0tdRFMt NmEwMTMwOWUtYTRmMi00YWQyLWExMDAtMzhhZTBjOTQ3NDI3Ok5PUk1BTHxSQlddXX0NCjIwMTQt MDctMTEgMDg6MjM6NTgsODI2IElORk8gQmxvY2tTdGF0ZUNoYW5nZTogQkxPQ0sqIGFkZFRvSW52 YWxpZGF0ZXM6IGJsa18xMDczODQ4NDIzXzEwNzY1MiAxMC4xOC40MC44OTo1MDA3NiAxMC4xOC40 MC42OTo1MDA3NiANCjIwMTQtMDctMTEgMDg6MjM6NTgsODMyIElORk8gb3JnLmFwYWNoZS5oYWRv b3AuaXBjLlNlcnZlcjogSVBDIFNlcnZlciBoYW5kbGVyIDggb24gNjUxMTAsIGNhbGwgb3JnLmFw YWNoZS5oYWRvb3AuaGRmcy5wcm90b2NvbC5DbGllbnRQcm90b2NvbC5hZGRCbG9jayBmcm9tIDEw LjE4LjQwLjY5OjM3MjA4IENhbGwjNTg5MDY2IFJldHJ5IzA6IG9yZy5hcGFjaGUuaGFkb29wLmhk ZnMuc2VydmVyLm5hbWVub2RlLkxlYXNlRXhwaXJlZEV4Y2VwdGlvbjogTm8gbGVhc2Ugb24gL2hi YXNlL2RhdGEvZGVmYXVsdC8yMDI1VGhyZWFkMF90YWJsZS83ZDUwMzIxMjg3NzA5MjY0NDhhYTdl MDJjM2NmOTYzZS9yZWNvdmVyZWQuZWRpdHMvMDAwMDAwMDAwMDAwMDAwMDAwMi50ZW1wOiBGaWxl IGRvZXMgbm90IGV4aXN0LiBbTGVhc2UuICBIb2xkZXI6IERGU0NsaWVudF9oYl9yc19IT1NULTEw LTE4LTQwLTY5LDYwMDIwLDE0MDUwMDM4NTM0NTZfNzY1MjMzNTY1XzI5LCBwZW5kaW5nY3JlYXRl czogMTFdDQoyMDE0LTA3LTExIDA4OjIzOjU4LDgzMyBJTkZPIG9yZy5hcGFjaGUuaGFkb29wLmlw Yy5TZXJ2ZXI6IElQQyBTZXJ2ZXIgaGFuZGxlciA1IG9uIDY1MTEwLCBjYWxsIG9yZy5hcGFjaGUu aGFkb29wLmhkZnMucHJvdG9jb2wuQ2xpZW50UHJvdG9jb2wuY3JlYXRlIGZyb20gMTAuMTguNDAu Njk6MzcyMDggQ2FsbCM1ODkwNjcgUmV0cnkjMDogamF2YS5pby5GaWxlTm90Rm91bmRFeGNlcHRp b246IFBhcmVudCBkaXJlY3RvcnkgZG9lc24ndCBleGlzdDogL2hiYXNlL2RhdGEvZGVmYXVsdC8y MDI1VGhyZWFkMF90YWJsZS9kZjJkYWUzNDIzMTgyOWFkYzZhYzEwYjQzZjVkZWNiMi9yZWNvdmVy ZWQuZWRpdHMNCjIwMTQtMDctMTEgMDg6MjM6NTgsODM0IElORk8gb3JnLmFwYWNoZS5oYWRvb3Au aXBjLlNlcnZlcjogSVBDIFNlcnZlciBoYW5kbGVyIDYgb24gNjUxMTAsIGNhbGwgb3JnLmFwYWNo ZS5oYWRvb3AuaGRmcy5wcm90b2NvbC5DbGllbnRQcm90b2NvbC5jcmVhdGUgZnJvbSAxMC4xOC40 MC42OTozNzIwOCBDYWxsIzU4OTA2OCBSZXRyeSMwOiBqYXZhLmlvLkZpbGVOb3RGb3VuZEV4Y2Vw dGlvbjogUGFyZW50IGRpcmVjdG9yeSBkb2Vzbid0IGV4aXN0OiAvaGJhc2UvZGF0YS9kZWZhdWx0 LzIwMjVUaHJlYWQwX3RhYmxlL2YxNzAyMTc3OGVhMjU4ZmZiNWVkZGUyZDg2YjAyMzdmL3JlY292 ZXJlZC5lZGl0cw0KMjAxNC0wNy0xMSAwODoyMzo1OCw4MzQgSU5GTyBvcmcuYXBhY2hlLmhhZG9v cC5pcGMuU2VydmVyOiBJUEMgU2VydmVyIGhhbmRsZXIgMSBvbiA2NTExMCwgY2FsbCBvcmcuYXBh Y2hlLmhhZG9vcC5oZGZzLnByb3RvY29sLkNsaWVudFByb3RvY29sLmNyZWF0ZSBmcm9tIDEwLjE4 LjQwLjY5OjM3MjA4IENhbGwjNTg5MDY5IFJldHJ5IzA6IGphdmEuaW8uRmlsZU5vdEZvdW5kRXhj ZXB0aW9uOiBQYXJlbnQgZGlyZWN0b3J5IGRvZXNuJ3QgZXhpc3Q6IC9oYmFzZS9kYXRhL2RlZmF1 bHQvMjAyNVRocmVhZDBfdGFibGUvMDQ2ZGExOGM2ZGRlYWU3ZGY0NTljNDJkYWY3MTFjNzgvcmVj b3ZlcmVkLmVkaXRzDQoyMDE0LTA3LTExIDA4OjIzOjU4LDg0NCBJTkZPIG9yZy5hcGFjaGUuaGFk b29wLmlwYy5TZXJ2ZXI6IElQQyBTZXJ2ZXIgaGFuZGxlciA1IG9uIDY1MTEwLCBjYWxsIG9yZy5h cGFjaGUuaGFkb29wLmhkZnMucHJvdG9jb2wuQ2xpZW50UHJvdG9jb2wuYWRkQmxvY2sgZnJvbSAx MC4xOC40MC42OTozNzIwOCBDYWxsIzU4OTA3MiBSZXRyeSMwOiBvcmcuYXBhY2hlLmhhZG9vcC5o ZGZzLnNlcnZlci5uYW1lbm9kZS5MZWFzZUV4cGlyZWRFeGNlcHRpb246IE5vIGxlYXNlIG9uIC9o YmFzZS9kYXRhL2RlZmF1bHQvMjAyNVRocmVhZDBfdGFibGUvOTk1YTU2NTEyNzg0ZDEwOTM1MmQ5 ZGNiYmVlZWJmYmMvcmVjb3ZlcmVkLmVkaXRzLzAwMDAwMDAwMDAwMDAwMDAwMDIudGVtcDogRmls ZSBkb2VzIG5vdCBleGlzdC4gW0xlYXNlLiAgSG9sZGVyOiBERlNDbGllbnRfaGJfcnNfSE9TVC0x MC0xOC00MC02OSw2MDAyMCwxNDA1MDAzODUzNDU2Xzc2NTIzMzU2NV8yOSwgcGVuZGluZ2NyZWF0 ZXM6IDExXQ0KMjAxNC0wNy0xMSAwODoyMzo1OCw4NDQgSU5GTyBvcmcuYXBhY2hlLmhhZG9vcC5p cGMuU2VydmVyOiBJUEMgU2VydmVyIGhhbmRsZXIgOCBvbiA2NTExMCwgY2FsbCBvcmcuYXBhY2hl LmhhZG9vcC5oZGZzLnByb3RvY29sLkNsaWVudFByb3RvY29sLmFkZEJsb2NrIGZyb20gMTAuMTgu NDAuNjk6MzcyMDggQ2FsbCM1ODkwNzAgUmV0cnkjMDogb3JnLmFwYWNoZS5oYWRvb3AuaGRmcy5z ZXJ2ZXIubmFtZW5vZGUuTGVhc2VFeHBpcmVkRXhjZXB0aW9uOiBObyBsZWFzZSBvbiAvaGJhc2Uv ZGF0YS9kZWZhdWx0LzIwMjVUaHJlYWQwX3RhYmxlLzI0N2I1YjM1OWFiODFlZDVkZWI1Mzc5ZTBm MDdiYTU2L3JlY292ZXJlZC5lZGl0cy8wMDAwMDAwMDAwMDAwMDAwMDAyLnRlbXA6IEZpbGUgZG9l cyBub3QgZXhpc3QuIFtMZWFzZS4gIEhvbGRlcjogREZTQ2xpZW50X2hiX3JzX0hPU1QtMTAtMTgt NDAtNjksNjAwMjAsMTQwNTAwMzg1MzQ1Nl83NjUyMzM1NjVfMjksIHBlbmRpbmdjcmVhdGVzOiAx MV0NCjIwMTQtMDctMTEgMDg6MjM6NTgsODQ0IElORk8gb3JnLmFwYWNoZS5oYWRvb3AuaXBjLlNl cnZlcjogSVBDIFNlcnZlciBoYW5kbGVyIDYgb24gNjUxMTAsIGNhbGwgb3JnLmFwYWNoZS5oYWRv b3AuaGRmcy5wcm90b2NvbC5DbGllbnRQcm90b2NvbC5hZGRCbG9jayBmcm9tIDEwLjE4LjQwLjY5 OjM3MjA4IENhbGwjNTg5MDcxIFJldHJ5IzA6IG9yZy5hcGFjaGUuaGFkb29wLmhkZnMuc2VydmVy Lm5hbWVub2RlLkxlYXNlRXhwaXJlZEV4Y2VwdGlvbjogTm8gbGVhc2Ugb24gL2hiYXNlL2RhdGEv ZGVmYXVsdC8yMDI1VGhyZWFkMF90YWJsZS82YjhiOTJkNzNiNTFlMWZkMjQ1ODU0ZTYyMTExZmM4 Yy9yZWNvdmVyZWQuZWRpdHMvMDAwMDAwMDAwMDAwMDAwMDAwMi50ZW1wOiBGaWxlIGRvZXMgbm90 IGV4aXN0LiBbTGVhc2UuICBIb2xkZXI6IERGU0NsaWVudF9oYl9yc19IT1NULTEwLTE4LTQwLTY5 LDYwMDIwLDE0MDUwMDM4NTM0NTZfNzY1MjMzNTY1XzI5LCBwZW5kaW5nY3JlYXRlczogMTFdDQoy MDE0LTA3LTExIDA4OjIzOjU4LDg1NyBJTkZPIG9yZy5hcGFjaGUuaGFkb29wLmlwYy5TZXJ2ZXI6 IElQQyBTZXJ2ZXIgaGFuZGxlciAxIG9uIDY1MTEwLCBjYWxsIG9yZy5hcGFjaGUuaGFkb29wLmhk ZnMucHJvdG9jb2wuQ2xpZW50UHJvdG9jb2wuYWRkQmxvY2sgZnJvbSAxMC4xOC40MC42OTozNzIw OCBDYWxsIzU4OTA3MyBSZXRyeSMwOiBvcmcuYXBhY2hlLmhhZG9vcC5oZGZzLnNlcnZlci5uYW1l bm9kZS5MZWFzZUV4cGlyZWRFeGNlcHRpb246IE5vIGxlYXNlIG9uIC9oYmFzZS9kYXRhL2RlZmF1 bHQvMjAyNVRocmVhZDBfdGFibGUvNTkxZDA4NDY3NDg1NGJiOTEzZjQxOTA0NmU3ZjdkMGMvcmVj b3ZlcmVkLmVkaXRzLzAwMDAwMDAwMDAwMDAwMDAwMDIudGVtcDogRmlsZSBkb2VzIG5vdCBleGlz dC4gW0xlYXNlLiAgSG9sZGVyOiBERlNDbGllbnRfaGJfcnNfSE9TVC0xMC0xOC00MC02OSw2MDAy MCwxNDA1MDAzODUzNDU2Xzc2NTIzMzU2NV8yOSwgcGVuZGluZ2NyZWF0ZXM6IDExXQ0KMjAxNC0w Ny0xMSAwODoyMzo1OCw5NjAgSU5GTyBvcmcuYXBhY2hlLmhhZG9vcC5pcGMuU2VydmVyOiBJUEMg U2VydmVyIGhhbmRsZXIgOCBvbiA2NTExMCwgY2FsbCBvcmcuYXBhY2hlLmhhZG9vcC5oZGZzLnBy b3RvY29sLkNsaWVudFByb3RvY29sLmFkZEJsb2NrIGZyb20gMTAuMTguNDAuNjk6MzcyMDggQ2Fs bCM1ODkwNzQgUmV0cnkjMDogb3JnLmFwYWNoZS5oYWRvb3AuaGRmcy5zZXJ2ZXIubmFtZW5vZGUu TGVhc2VFeHBpcmVkRXhjZXB0aW9uOiBObyBsZWFzZSBvbiAvaGJhc2UvZGF0YS9kZWZhdWx0LzIw MjVUaHJlYWQwX3RhYmxlLzVjNTE0YjkzZWQxNWIzOGNkYzIxMGFiZWQ1ODkwN2RmL3JlY292ZXJl ZC5lZGl0cy8wMDAwMDAwMDAwMDAwMDAwMDAyLnRlbXA6IEZpbGUgZG9lcyBub3QgZXhpc3QuIFtM ZWFzZS4gIEhvbGRlcjogREZTQ2xpZW50X2hiX3JzX0hPU1QtMTAtMTgtNDAtNjksNjAwMjAsMTQw NTAwMzg1MzQ1Nl83NjUyMzM1NjVfMjksIHBlbmRpbmdjcmVhdGVzOiAxMV0NCjIwMTQtMDctMTEg MDg6MjM6NTgsOTY2IElORk8gb3JnLmFwYWNoZS5oYWRvb3AuaXBjLlNlcnZlcjogSVBDIFNlcnZl ciBoYW5kbGVyIDcgb24gNjUxMTAsIGNhbGwgb3JnLmFwYWNoZS5oYWRvb3AuaGRmcy5wcm90b2Nv bC5DbGllbnRQcm90b2NvbC5hZGRCbG9jayBmcm9tIDEwLjE4LjQwLjY5OjM3MjA4IENhbGwjNTg5 MDc2IFJldHJ5IzA6IG9yZy5hcGFjaGUuaGFkb29wLmhkZnMuc2VydmVyLm5hbWVub2RlLkxlYXNl RXhwaXJlZEV4Y2VwdGlvbjogTm8gbGVhc2Ugb24gL2hiYXNlL2RhdGEvZGVmYXVsdC8yMDI1VGhy ZWFkMF90YWJsZS9iNmQxMjk2OTE1NDBhZjAxMmEzODg1OTBiZjFlODYyOS9yZWNvdmVyZWQuZWRp dHMvMDAwMDAwMDAwMDAwMDAwMDAwMi50ZW1wOiBGaWxlIGRvZXMgbm90IGV4aXN0LiBbTGVhc2Uu ICBIb2xkZXI6IERGU0NsaWVudF9oYl9yc19IT1NULTEwLTE4LTQwLTY5LDYwMDIwLDE0MDUwMDM4 NTM0NTZfNzY1MjMzNTY1XzI5LCBwZW5kaW5nY3JlYXRlczogMTFdDQoyMDE0LTA3LTExIDA4OjIz OjU4LDk3NyBJTkZPIG9yZy5hcGFjaGUuaGFkb29wLmlwYy5TZXJ2ZXI6IElQQyBTZXJ2ZXIgaGFu ZGxlciAzIG9uIDY1MTEwLCBjYWxsIG9yZy5hcGFjaGUuaGFkb29wLmhkZnMucHJvdG9jb2wuQ2xp ZW50UHJvdG9jb2wuYWRkQmxvY2sgZnJvbSAxMC4xOC40MC42OTozNzIwOCBDYWxsIzU4OTA3NyBS ZXRyeSMwOiBvcmcuYXBhY2hlLmhhZG9vcC5oZGZzLnNlcnZlci5uYW1lbm9kZS5MZWFzZUV4cGly ZWRFeGNlcHRpb246IE5vIGxlYXNlIG9uIC9oYmFzZS9kYXRhL2RlZmF1bHQvMjAyNVRocmVhZDBf dGFibGUvMTkwNDE0NzYwNTg3ZWU2YWRiYmI1MThlN2UwYzcxOWYvcmVjb3ZlcmVkLmVkaXRzLzAw MDAwMDAwMDAwMDAwMDAwMDIudGVtcDogRmlsZSBkb2VzIG5vdCBleGlzdC4gW0xlYXNlLiAgSG9s ZGVyOiBERlNDbGllbnRfaGJfcnNfSE9TVC0xMC0xOC00MC02OSw2MDAyMCwxNDA1MDAzODUzNDU2 Xzc2NTIzMzU2NV8yOSwgcGVuZGluZ2NyZWF0ZXM6IDExXQ0KMjAxNC0wNy0xMSAwODoyMzo1OCw5 OTYgSU5GTyBCbG9ja1N0YXRlQ2hhbmdlOiBCTE9DSyogYWRkVG9JbnZhbGlkYXRlczogYmxrXzEw NzM4NDk1MTdfMTA4NzQ2IDEwLjE4LjQwLjY5OjUwMDc2IDEwLjE4LjQwLjg5OjUwMDc2IA0KMjAx NC0wNy0xMSAwODoyMzo1OSwwMTQgSU5GTyBCbG9ja1N0YXRlQ2hhbmdlOiBCTE9DSyogYWRkVG9J bnZhbGlkYXRlczogYmxrXzEwNzM4NDg0NDZfMTA3Njc1IDEwLjE4LjQwLjg5OjUwMDc2IDEwLjE4 LjQwLjY5OjUwMDc2DQoNCg0KLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCkZyb206IFRlZCBZ dSBbbWFpbHRvOnl1emhpaG9uZ0BnbWFpbC5jb21dIA0KU2VudDogMjUgQXVndXN0IDIwMTQgQU0g MTE6MDMNClRvOiB1c2VyQGhiYXNlLmFwYWNoZS5vcmcNClN1YmplY3Q6IFJlOiBSZWdpb25TZXJ2 ZXIgZmFpbGVkIGluIGxvZ3NwbGl0dGluZywgd2FsLkhMb2dTcGxpdHRlcjogR290IHdoaWxlIHdy aXRpbmcgbG9nIGVudHJ5IHRvIGxvZw0KDQpXaGF0IHJlbGVhc2Ugb2YgSEJhc2UgYXJlIHlvdSB1 c2luZyA/DQoNCkRvIHlvdSBzZWUgb3RoZXIgZXhjZXB0aW9ucyBpbiBtYWNoaW5lMSBzZXJ2ZXIg bG9nID8NCg0KUGxlYXNlIGNoZWNrIG5hbWVub2RlIGxvZyBhcyB3ZWxsLg0KDQpDaGVlcnMNCg0K DQpPbiBTdW4sIEF1ZyAyNCwgMjAxNCBhdCA2OjM3IFBNLCBzcmVlbml2YXN1bHUgeSA8c3JlZW5p dmFzdWx1LnlAaHVhd2VpLmNvbT4NCndyb3RlOg0KDQo+IEhpLA0KPg0KPiBJIGFtIHJ1bm5pbmcg YSBjbHVzdGVyIHdpdGggNCBub2RlIGFuZCAgSERGUyBpbiBIQSBtb2RlLg0KPiBNYWNoaW5lMSwg bWFjaGluZTIsIG1hY2hpbmUzIGFuZCBtYWNoaW5lNC4NCj4gQW5kIEkgYW0gcGVyZm9ybWluZyB0 aGUgZm9sbG93aW5nIG9wZXJhdGlvbnMgcmVzcGVjdGl2ZWx5Lg0KPiAxLiBjcmVhdGUgdGFibGUg d2l0aCBwcmVjcmVhdGVkIHJlZ2lvbnMuDQo+IDIuIGluc2VydCAxMDAwIHJlY29yZHMgaW50byB0 aGUgdGFibGUuDQo+IDMuIERpc2FibGUgdGhlIHRhYmxlLg0KPiA0LiBNb2RpZnkgdGhlIHRhYmxl Lg0KPiA1LiBlbmFibGUgdGhlIHRhYmxlLg0KPiA2LiBkaXNhYmxlIGFuZCBkZWxldGUgdGhlIHRh YmxlLg0KPg0KPiBXaGlsZSBwZXJmb3JtaW5nIHRoZSBhYm92ZSBvcGVyYXRpb25zIHN0ZXAzIGFu ZCBzdGVwNCwgbWFjaGluZTMgDQo+IHJlZ2lvbnNlcnZlciB3ZW50IGRvd24uDQo+IEJ1dCBpbiBt YWNoaW5lMSB0aHJvd24gdGhlIGZvbGxvd2luZyBlcnJvcg0KPiAyMDE0LTA3LTExIDA4OjIzOjU4 LDkzMyBGQVRBTA0KPiBbUlNfTE9HX1JFUExBWV9PUFMtSE9TVC0xMC0xOC00MC02OTo2MDAyMC0w LVdyaXRlci0xMF0gd2FsLkhMb2dTcGxpdHRlcjoNCj4gR290IHdoaWxlIHdyaXRpbmcgbG9nIGVu dHJ5IHRvIGxvZw0KPiBqYXZhLmlvLklPRXhjZXB0aW9uOiBjYW5ub3QgZ2V0IGxvZyB3cml0ZXIN Cj4gICAgICAgICBhdA0KPiBvcmcuYXBhY2hlLmhhZG9vcC5oYmFzZS5yZWdpb25zZXJ2ZXIud2Fs LkhMb2dGYWN0b3J5LmNyZWF0ZVdyaXRlcihITG9nRmFjdG9yeS5qYXZhOjE5NykNCj4gICAgICAg ICBhdA0KPiBvcmcuYXBhY2hlLmhhZG9vcC5oYmFzZS5yZWdpb25zZXJ2ZXIud2FsLkhMb2dGYWN0 b3J5LmNyZWF0ZVJlY292ZXJlZEVkaXRzV3JpdGVyKEhMb2dGYWN0b3J5LmphdmE6MTgyKQ0KPiAg ICAgICAgIGF0DQo+IG9yZy5hcGFjaGUuaGFkb29wLmhiYXNlLnJlZ2lvbnNlcnZlci53YWwuSExv Z1NwbGl0dGVyLmNyZWF0ZVdyaXRlcihITG9nU3BsaXR0ZXIuamF2YTo2NDMpDQo+ICAgICAgICAg YXQNCj4gb3JnLmFwYWNoZS5oYWRvb3AuaGJhc2UucmVnaW9uc2VydmVyLndhbC5ITG9nU3BsaXR0 ZXIkTG9nUmVjb3ZlcmVkRWRpdHNPdXRwdXRTaW5rLmNyZWF0ZVdBUChITG9nU3BsaXR0ZXIuamF2 YToxMjIzKQ0KPiAgICAgICAgIGF0DQo+IG9yZy5hcGFjaGUuaGFkb29wLmhiYXNlLnJlZ2lvbnNl cnZlci53YWwuSExvZ1NwbGl0dGVyJExvZ1JlY292ZXJlZEVkaXRzT3V0cHV0U2luay5nZXRXcml0 ZXJBbmRQYXRoKEhMb2dTcGxpdHRlci5qYXZhOjEyMDApDQo+ICAgICAgICAgYXQNCj4gb3JnLmFw YWNoZS5oYWRvb3AuaGJhc2UucmVnaW9uc2VydmVyLndhbC5ITG9nU3BsaXR0ZXIkTG9nUmVjb3Zl cmVkRWRpdHNPdXRwdXRTaW5rLmFwcGVuZChITG9nU3BsaXR0ZXIuamF2YToxMjQzKQ0KPiAgICAg ICAgIGF0DQo+IG9yZy5hcGFjaGUuaGFkb29wLmhiYXNlLnJlZ2lvbnNlcnZlci53YWwuSExvZ1Nw bGl0dGVyJFdyaXRlclRocmVhZC53cml0ZUJ1ZmZlcihITG9nU3BsaXR0ZXIuamF2YTo4NTEpDQo+ ICAgICAgICAgYXQNCj4gb3JnLmFwYWNoZS5oYWRvb3AuaGJhc2UucmVnaW9uc2VydmVyLndhbC5I TG9nU3BsaXR0ZXIkV3JpdGVyVGhyZWFkLmRvUnVuKEhMb2dTcGxpdHRlci5qYXZhOjg0MykNCj4g ICAgICAgICBhdA0KPiBvcmcuYXBhY2hlLmhhZG9vcC5oYmFzZS5yZWdpb25zZXJ2ZXIud2FsLkhM b2dTcGxpdHRlciRXcml0ZXJUaHJlYWQucnVuDQo+IChITG9nU3BsaXR0ZXIuamF2YTo4MTMpDQo+ IGFuZCBtYWNoaW5lIDEgYWxzbyBkb3duLi4NCj4NCj4gcGxlYXNlIGhlbHAgbWUgd2h5IHRoZSBt YWNoaW5lMSByZWdpb25zZXJ2ZXIgd2VudCBkb3duLg0KPg0KPg0KPg0KPg0KPiAtLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tDQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQ0KPiBUaGlzIGUtbWFpbCBhbmQgaXRzIGF0dGFjaG1lbnRzIGNvbnRhaW4g Y29uZmlkZW50aWFsIGluZm9ybWF0aW9uIGZyb20gDQo+IEhVQVdFSSwgd2hpY2ggaXMgaW50ZW5k ZWQgb25seSBmb3IgdGhlIHBlcnNvbiBvciBlbnRpdHkgd2hvc2UgYWRkcmVzcyANCj4gaXMgbGlz dGVkIGFib3ZlLiBBbnkgdXNlIG9mIHRoZSBpbmZvcm1hdGlvbiBjb250YWluZWQgaGVyZWluIGlu IGFueSANCj4gd2F5IChpbmNsdWRpbmcsIGJ1dCBub3QgbGltaXRlZCB0bywgdG90YWwgb3IgcGFy dGlhbCBkaXNjbG9zdXJlLCANCj4gcmVwcm9kdWN0aW9uLCBvciBkaXNzZW1pbmF0aW9uKSBieSBw ZXJzb25zIG90aGVyIHRoYW4gdGhlIGludGVuZGVkDQo+IHJlY2lwaWVudChzKSBpcyBwcm9oaWJp dGVkLiBJZiB5b3UgcmVjZWl2ZSB0aGlzIGUtbWFpbCBpbiBlcnJvciwgDQo+IHBsZWFzZSBub3Rp ZnkgdGhlIHNlbmRlciBieSBwaG9uZSBvciBlbWFpbCBpbW1lZGlhdGVseSBhbmQgZGVsZXRlIGl0 IQ0KPg0KPg0K