Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 7244C2004F3 for ; Tue, 15 Aug 2017 16:06:41 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 709D4166B0E; Tue, 15 Aug 2017 14:06:41 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 8C3A9166B0D for ; Tue, 15 Aug 2017 16:06:40 +0200 (CEST) Received: (qmail 73952 invoked by uid 500); 15 Aug 2017 14:06:39 -0000 Mailing-List: contact user-help@lucenenet.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@lucenenet.apache.org Delivered-To: mailing list user@lucenenet.apache.org Received: (qmail 73939 invoked by uid 99); 15 Aug 2017 14:06:39 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 15 Aug 2017 14:06:39 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id A2969C31A4 for ; Tue, 15 Aug 2017 14:06:38 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1 X-Spam-Level: * X-Spam-Status: No, score=1 tagged_above=-999 required=6.31 tests=[KAM_LIVE=1] autolearn=disabled Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id VWOIFgtDLR5a for ; Tue, 15 Aug 2017 14:06:36 +0000 (UTC) Received: from ex10cshbfe01.apps4rent.net (ex10cshbfe02.apps4rent.net [69.160.246.193]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with SMTP id D03875F1BA for ; Tue, 15 Aug 2017 14:06:35 +0000 (UTC) Received: from EX10DAG10-N1.apps4rent.net ([10.10.10.123]) by EX10CSHBFE02 ([10.10.10.28]) with mapi id 14.03.0319.002; Tue, 15 Aug 2017 10:06:37 -0400 From: Shad Storhaug To: "o.albrecht@oliver-albrecht.de" CC: "user@lucenenet.apache.org" Subject: RE: [LUCENENET-594] Stackoverflow exception Thread-Topic: [LUCENENET-594] Stackoverflow exception Thread-Index: AdMVwUN178qOWxK/R/WlYGLCNzduuAAKF5WAAAdoxfA= Date: Tue, 15 Aug 2017 14:06:37 +0000 Message-ID: <458A3CD4F362D144B999930AAADEBAAD18E6AD59@EX10DAG10-N1> References: <458A3CD4F362D144B999930AAADEBAAD18E6AD04@EX10DAG10-N1> <1481769845.287233.1502802731716@email.1und1.de> In-Reply-To: <1481769845.287233.1502802731716@email.1und1.de> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [182.52.59.131] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 archived-at: Tue, 15 Aug 2017 14:06:41 -0000 T2xpdmVyLA0KDQpXaGVuIEkgd2FzIHN0ZXBwaW5nIHRocm91Z2ggdGhlIGNvZGUsIEkgbm90aWNl ZCB0aGF0IHRoZSAiQ29udGVudCIgZmllbGQgaXMgcmV0dXJuaW5nIGFuIGVtcHR5IHN0cmluZyAo YXQgbGVhc3QgZm9yIHRoZSBmaXJzdCBmZXcgZG9jdW1lbnRzKSB3aGVuIGNhbGxpbmcgRG9jdW1l bnQuR2V0RmllbGQoIkNvbnRlbnQiKS5HZXRTdHJpbmdWYWx1ZSgpLiAgQXJlIHlvdSB1c2luZyB0 aGUgRmllbGQuU3RvcmUuWUVTIG9wdGlvbiB3aGVuIHdyaXRpbmcgeW91ciAiQ29udGVudCIgZmll bGQgc28gaXQgY2FuIGJlIHJlYWQgYmFjaz8gRXZlbiBpZiB0aGF0IGlzIG5vdCBleGFjdGx5IHRo ZSBwcm9ibGVtLCBJIHN1c3BlY3QgdGhpcyBoYXMgbW9yZSB0byBkbyB3aXRoIGhvdyB0aGUgZGF0 YSBpcyB3cml0dGVuIHRvIHRoZSBpbmRleCB0aGFuIGhvdyBpdCBpcyBiZWluZyByZWFkLg0KDQpT b21lIGNvZGUgb3IgcHNldWRvLWNvZGUgZGVtb25zdHJhdGluZyBob3cgdGhlIGluZGV4IGlzIGJl aW5nIGNyZWF0ZWQgd291bGQgYmUgaGVscGZ1bC4NCg0KVGhhbmtzLA0KU2hhZCBTdG9yaGF1ZyAo TmlnaHRPd2w4ODgpDQoNCg0KLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCkZyb206IE9saXZl ciBBbGJyZWNodCBbbWFpbHRvOm8uYWxicmVjaHRAb2xpdmVyLWFsYnJlY2h0LmRlXSANClNlbnQ6 IFR1ZXNkYXksIEF1Z3VzdCAxNSwgMjAxNyA4OjEyIFBNDQpUbzogdXNlckBsdWNlbmVuZXQuYXBh Y2hlLm9yZw0KU3ViamVjdDogUkU6IFtMVUNFTkVORVQtNTk0XSBTdGFja292ZXJmbG93IGV4Y2Vw dGlvbg0KDQpIZWxsbyBTaGFkLA0KDQp0aGFua3MgZm9yIHlvdXIgYWZmb3JkLg0KDQpUaGUgY29u dGVudCBmaWVsZCBvZiB0aGUgaW5kZXggaXMgdGhlIGNvbnRlbnQgb2Ygc2V2ZXJhbCB0aG91c2Fu ZHMgZmlsZXMgaW4gdGhlIERNU8KgcGFydCBvZiBvdXIgRVJQIHNvbHV0aW9uLiBUaGVzZSBhcmUg bWFpbmx5IGxldHRlcnMsIGludm9pY2VzLCBvZmZlcnMgYW5kIG5vdGVzLiBOb3RoaW5nIHNwZWNp YWwuIEkgdGhpbmsgdGhlIHByb2JsZW0gaGVyZSBpcywgdGhhdCB0aGUgY29udGVudCBvZiBtYW55 IGZpbGVzIGFyZSB2ZXJ5IHNpbWlsYXIuIEkgZG9uJ3Qga25vdyAoYW5kIGFzIGFuIHVzZXIgaSBz aG91bGRuJ3Qga25vdykgaG93IHRoZSBpbmRleCBpbnRlcm5hbGx5IGlzIGJ1aWx0LCBidXQgaSB0 aGluayBpdCdzIGEga2luZCBvZiB0cmVlIGFuZCBiZWNhdXNlIG9mIHRoZSBzaW1pbGFyIGNvbnRl bnQsIHRoZSB0cmVlIGlzIHRvICJkZWVwIiBmb3IgcmVjdXJzaW9uLg0KDQpTbyBpIHRoaW5rIHRo YXQgdGhlIERvY3VtZW50RGljdGlvbmFyeS5HZXRFbnRyeUl0ZXJhdG9yIGlzIG5vdCBkZXNpZ25l ZCB0byB3b3JrIHdpdGggdGhlIFN1Z2dlc3RlciBhdCB0aGlzIHRpbWUuIEJ1dCB3aGF0IGlzIHRo ZSBwdXJwb3NlIERvY3VtZW50RGljdGlvbmFyeSBpZiBpdCBjYW4ndCBiZSB1c2VkIGluIHRoaXMg d2F5PyBJZiBpIGNhbiBub3QgdXNlIHRoZSBjb250ZW50IG9mIHRoZSBpbmRleCB0byBmZWVkIHRo ZSBBbmFseXppbmdTdWdnZXN0ZXIgdGhlIHdob2xlIGNvbmNlcHQgb2YgdGhlIHN1Z2dlc3RlciBp cyB1c2VsZXNzIGZvciBtZS4gV2hhdCBpIGhhdmUgaW4gbWluZCB0byBidWlsZCBpcyBzb21ldGhp bmcgbGlrZSB0aGUgZ29vZ2xlIHNlYXJjaCB3aGljaCBwcmVzZW50IHlvdSBzdWdnZXN0aW9ucyB3 aGF0IHlvdSBjb3VsZCBzZWFyY2guDQoNCmtpbmQgcmVnYXJkcw0KDQpPbGl2ZXINCg0KPiBTaGFk IFN0b3JoYXVnIDxzaGFkQHNoYWRzdG9yaGF1Zy5jb20+IGhhdCBhbSAxNS4gQXVndXN0IDIwMTcg dW0gMTQ6MjkgZ2VzY2hyaWViZW46DQo+IA0KPiBPbGl2ZXIsDQo+IA0KPiBJIGhhdmUgY3JlYXRl ZCBhIG5ldyBpc3N1ZSBzbyB3ZSBjYW4gdHJhY2sgdGhpcyBvbiBKSVJBOiANCj4gaHR0cHM6Ly9p c3N1ZXMuYXBhY2hlLm9yZy9qaXJhL3Byb2plY3RzL0xVQ0VORU5FVC9pc3N1ZXMvTFVDRU5FTkVU LTU5NA0KPiANCj4gSSBoYXZlIGNvbmZpcm1lZCB0aGUgc2FtZSBiZWhhdmlvciBpbiBKYXZhIEx1 Y2VuZSB3aXRoIHRoZSBmb2xsb3dpbmcgdGVzdDoNCj4gDQo+IFtUZXN0LCBMdWNlbmVOZXRTcGVj aWZpY10NCj4gIHB1YmxpYyB2b2lkIFRlc3RMVUNFTkVORVQ1OTQoKQ0KPiAgew0KPiAgLy8gUmF0 aGVyIHRoYW4gcmVseWluZyBvbiBhIGZpbGUgcGF0aCBzb21ld2hlcmUsIHdlIHN0b3JlIHRoZSAg Ly8gDQo+IGZpbGVzIHppcHBlZCBpbiBhbiBlbWJlZGRlZCByZXNvdXJjZSBhbmQgdW56aXAgdGhl bSB0byBhICAvLyBrbm93biANCj4gdGVtcCBkaXJlY3RvcnkgZm9yIHRoZSB0ZXN0Lg0KPiAgRGly ZWN0b3J5SW5mbyBpbmRleERpciA9IENyZWF0ZVRlbXBEaXIoInRlc3QtbHVjZW5lbmV0LTU5NCIp Ow0KPiAgdXNpbmcgKHZhciBzdHJlYW0gPSANCj4gR2V0VHlwZSgpLmdldFJlc291cmNlQXNTdHJl YW0oIkxVQ0VORU5FVC01OTQuemlwIikpDQo+ICB7DQo+ICBUZXN0VXRpbC5VbnppcChzdHJlYW0s IGluZGV4RGlyKTsNCj4gIH0NCj4gDQo+IEFuYWx5emluZ1N1Z2dlc3RlciBzdWdnZXN0ZXIgPSBu ZXcgQW5hbHl6aW5nU3VnZ2VzdGVyKG5ldyANCj4gR2VybWFuQW5hbHl6ZXIoTHVjZW5lLk5ldC5V dGlsLkx1Y2VuZVZlcnNpb24uTFVDRU5FXzQ4KSk7DQo+IA0KPiBMdWNlbmUuTmV0LlN0b3JlLkRp cmVjdG9yeSBkaXIgPSANCj4gTHVjZW5lLk5ldC5TdG9yZS5GU0RpcmVjdG9yeS5PcGVuKGluZGV4 RGlyKTsNCj4gIEluZGV4UmVhZGVyIGlyID0gRGlyZWN0b3J5UmVhZGVyLk9wZW4oZGlyKTsgIERv Y3VtZW50RGljdGlvbmFyeSBkaWN0IA0KPiA9IG5ldyBEb2N1bWVudERpY3Rpb25hcnkoaXIsICJD b250ZW50IiwgbnVsbCwgbnVsbCk7DQo+IA0KPiBJSW5wdXRJdGVyYXRvciBpdGVyID0gZGljdC5H ZXRFbnRyeUl0ZXJhdG9yKCk7ICBzdWdnZXN0ZXIuQnVpbGQoaXRlcik7IA0KPiAvLyBUaHJvd3Mg c3RhY2tvdmVyZmxvdyBleGNlcHRpb24gIH0NCj4gDQo+IENvbnZlcnRlZCB0byBKYXZhOg0KPiAN Cj4gcHVibGljIHZvaWQgdGVzdExVQ0VORU5FVDU5NCgpIHRocm93cyBFeGNlcHRpb24gIHsgIC8v IFJhdGhlciB0aGFuIA0KPiByZWx5aW5nIG9uIGEgZmlsZSBwYXRoIHNvbWV3aGVyZSwgd2Ugc3Rv cmUgdGhlICAvLyBmaWxlcyB6aXBwZWQgaW4gYW4gDQo+IGVtYmVkZGVkIHJlc291cmNlIGFuZCB1 bnppcCB0aGVtIHRvIGEgIC8vIGtub3duIHRlbXAgZGlyZWN0b3J5IGZvciB0aGUgDQo+IHRlc3Qu DQo+ICBGaWxlIGluZGV4RGlyID0gY3JlYXRlVGVtcERpcigidGVzdC1sdWNlbmVuZXQtNTk0Iik7 DQo+ICBGaWxlIGZpbGUgPSBuZXcgDQo+IEZpbGUoZ2V0Q2xhc3MoKS5nZXRSZXNvdXJjZSgiTFVD RU5FTkVULTU5NC56aXAiKS50b1VSSSgpKTsNCj4gIFRlc3RVdGlsLnVuemlwKGZpbGUsIGluZGV4 RGlyKTsNCj4gDQo+IEFuYWx5emluZ1N1Z2dlc3RlciBzdWdnZXN0ZXIgPSBuZXcgQW5hbHl6aW5n U3VnZ2VzdGVyKG5ldyANCj4gb3JnLmFwYWNoZS5sdWNlbmUuYW5hbHlzaXMuZGUuR2VybWFuQW5h bHl6ZXIob3JnLmFwYWNoZS5sdWNlbmUudXRpbC5WZQ0KPiByc2lvbi5MVUNFTkVfNDgpKTsNCj4g DQo+IG9yZy5hcGFjaGUubHVjZW5lLnN0b3JlLkRpcmVjdG9yeSBkaXIgPSANCj4gb3JnLmFwYWNo ZS5sdWNlbmUuc3RvcmUuRlNEaXJlY3Rvcnkub3BlbihpbmRleERpcik7DQo+ICBvcmcuYXBhY2hl Lmx1Y2VuZS5pbmRleC5JbmRleFJlYWRlciBpciA9IA0KPiBvcmcuYXBhY2hlLmx1Y2VuZS5pbmRl eC5EaXJlY3RvcnlSZWFkZXIub3BlbihkaXIpOw0KPiAgb3JnLmFwYWNoZS5sdWNlbmUuc2VhcmNo LnN1Z2dlc3QuRG9jdW1lbnREaWN0aW9uYXJ5IGRpY3QgPSBuZXcgDQo+IG9yZy5hcGFjaGUubHVj ZW5lLnNlYXJjaC5zdWdnZXN0LkRvY3VtZW50RGljdGlvbmFyeShpciwgIkNvbnRlbnQiLCANCj4g bnVsbCwgbnVsbCk7DQo+IA0KPiBvcmcuYXBhY2hlLmx1Y2VuZS5zZWFyY2guc3VnZ2VzdC5JbnB1 dEl0ZXJhdG9yIGl0ZXIgPSANCj4gZGljdC5nZXRFbnRyeUl0ZXJhdG9yKCk7ICBzdWdnZXN0ZXIu YnVpbGQoaXRlcik7IC8vIFRocm93cyANCj4gc3RhY2tvdmVyZmxvdyBleGNlcHRpb24gIH0NCj4g DQo+IEJvdGggdGVzdHMgdXNlIHRoZSBhdHRhY2hlZCB6aXAgZmlsZSwgTFVDRU5FTkVULTU5NC56 aXAgYXMgYW4gZW1iZWRkZWQgcmVzb3VyY2UuDQo+IA0KPiBJIGNhbiBvbmx5IGNvbmNsdWRlIHRo YXQgdGhlIGRhdGEgaW4gdGhlIGluZGV4IGlzIGludmFsaWQgaW4gc29tZSB3YXkgb3IgaXQgaXMg bm90IHZhbGlkIHRvIHVzZSB0aGUgcmVzdWx0IG9mIERvY3VtZW50RGljdGlvbmFyeS5HZXRFbnRy eUl0ZXJhdG9yKCkgaW4gY29uanVuY3Rpb24gd2l0aCBBbmFseXppbmdTdWdnZXN0ZXIuQnVpbGQo KS4NCj4gDQo+IERvIG5vdGUgdGhhdCB0aGUgQXV0b21hdG9uIGZ1bmN0aW9uYWxpdHkgd2FzIGlu dGVudGlvbmFsbHkgbWFkZSByZWN1cnNpdmUgKGh0dHBzOi8vaXNzdWVzLmFwYWNoZS5vcmcvamly YS9icm93c2UvTFVDRU5FLTYxNTYpLCBhbmQgc2luY2UgaXQgaXMgYmFzZWQgb24gYSByZWd1bGFy IGV4cHJlc3Npb24sIGlucHV0cyB0aGF0IGNhdXNlIHRvbyBtYW55IG1hdGNoZXMgY2FuIG92ZXJm bG93IHRoZSBjYWxsIHN0YWNrLg0KPiANCj4gVGhlcmUgaXMgc29tZSBpbmZvcm1hdGlvbiBvbmxp bmUgYWJvdXQgaG93IHRvIHVzZSB0aGUgQW5hbHl6aW5nU3VnZ2VzdGVyOg0KPiANCj4gaHR0cDov L2Jsb2cubWlrZW1jY2FuZGxlc3MuY29tLzIwMTIvMDkvbHVjZW5lcy1uZXctYW5hbHl6aW5nLXN1 Z2dlc3Rlcg0KPiAuaHRtbCANCj4gaHR0cDovL3d3dy5wcm9ncmFtY3JlZWsuY29tL2phdmEtYXBp LWV4YW1wbGVzL2luZGV4LnBocD9hcGk9b3JnLmFwYWNoZQ0KPiAubHVjZW5lLnNlYXJjaC5zdWdn ZXN0LmFuYWx5emluZy5BbmFseXppbmdTdWdnZXN0ZXINCj4gaHR0cDovL3B1bmVldGtoYW5hbC5i bG9nc3BvdC5jb20vMjAxMy8wNC9zaW1wbGUtYXV0by1zdWdnZXN0ZXItdXNpbmctbA0KPiB1Y2Vu ZS00MS5odG1sDQo+IA0KPiBZb3UgbWlnaHQgYWxzbyB0cnkgYW5hbHl6aW5nIHRoZSB0ZXN0cyB0 byBkZXRlcm1pbmUgdGhlIGNvcnJlY3QgdXNhZ2UgKGh0dHBzOi8vZ2l0aHViLmNvbS9hcGFjaGUv bHVjZW5lbmV0L2Jsb2IvbWFzdGVyL3NyYy9MdWNlbmUuTmV0LlRlc3RzLlN1Z2dlc3QvU3VnZ2Vz dC9BbmFseXppbmcvQW5hbHl6aW5nU3VnZ2VzdGVyVGVzdC5jcykuDQo+IA0KPiBOb25lIG9mIHRo ZXNlIGV4YW1wbGVzIHVzZSB0aGUgRG9jdW1lbnREaWN0aW9uYXJ5LkdldEVudHJ5SXRlcmF0b3Io KSBpbiBjb25qdW5jdGlvbiB3aXRoIEFuYWx5emluZ1N1Z2dlc3Rlci5CdWlsZCgpLiBJIHN1c3Bl Y3QgdGhhdCB0aGV5IGVpdGhlciB3ZXJlbid0IGRlc2lnbmVkIHRvIGJlIHVzZWQgdG9nZXRoZXIg b3IgdGhlIGRhdGEgaW4geW91ciAiQ29udGVudCIgZmllbGQgaXNuJ3Qgd2hhdCBpcyBleHBlY3Rl ZCBhcyB2YWxpZCBpbnB1dC4NCj4gDQo+IEkgc3VnZ2VzdCB5b3UgYWRkIHRoZSBkZXRhaWxzIG9m IGhvdyB5b3UgYXJlIGNyZWF0aW5nIHRoZSBpbmRleCBhbmQgd2hhdCB1c2FnZSBleGFtcGxlKHMp IHlvdSBhcmUgZm9sbG93aW5nIHRvIHRoZSBKSVJBIGlzc3VlIChodHRwczovL2lzc3Vlcy5hcGFj aGUub3JnL2ppcmEvcHJvamVjdHMvTFVDRU5FTkVUL2lzc3Vlcy9MVUNFTkVORVQtNTk0KSBzbyB3 ZSBjYW4gdHJ5IHRvIHdvcmsgb3V0IHdoZXRoZXIgdGhlcmUgaXMgc29tZXRoaW5nIHdyb25nIHdp dGggdGhlIGlucHV0IGRhdGEgb3IgdGhlIHVzYWdlIG9mIEFuYWx5emluZ1N1Z2dlc3RlciBpcyBp bmNvcnJlY3QuDQo+IA0KPiBUaGFua3MsDQo+IFNoYWQgU3RvcmhhdWcgKE5pZ2h0T3dsODg4KQ0K PiANCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogT2xpdmVyIEFsYnJlY2h0 IFttYWlsdG86by5hbGJyZWNodEBvbGl2ZXItYWxicmVjaHQuZGVdDQo+IFNlbnQ6IFR1ZXNkYXks IEF1Z3VzdCA4LCAyMDE3IDY6MjkgUE0NCj4gVG86IHVzZXJAbHVjZW5lbmV0LmFwYWNoZS5vcmcN Cj4gU3ViamVjdDogUkU6IFN0YWNrb3ZlcmZsb3cgZXhjZXB0aW9uDQo+IA0KPiBIZWxsbyBTaGFk LA0KPiANCj4gaSBjYW4gY29uZmlybSB0aGF0IHRoZSBidWcgaW4gdGhlIENJIGJ1aWxkIHN0aWxs IGV4aXN0cy4NCj4gDQo+IFRoZSBjb2RlIHRvIHJlcHJvZHVjZSB0aGUgaXNzdWUgd2FzIGluIG15 IGluaXRhbCBtYWlsLg0KPiANCj4gSSB0aGluayB0aGF0IHRoZSBwcm9ibGVtIGlzIG5vdCB0aGUg Y29kZSB0byByZXByb2R1Y2UgYnV0IHRoZSBpbmRleCBkYXRhIG5lZWRlZC4NCj4gDQo+IEkgY291 bGQgYnVpbGQgYSB0ZXN0IHByb2dyYW0gYW5kIHNlbmQgaXQgdG8geW91IGFsb25nIHdpdGggdGhl IGluZGV4IGRhdGEgZGlyZWN0b3J5LiBTbyB5b3UgY291bGQgZGVidWcgZm9yIHlvdXJzZWxmLg0K PiANCj4gSSB3b3VsZCBzZW5kIHlvdSBhIGxpbmsgdG8gdGhlIHJlc3VsdGluZyB6aXAgb24gbXkg Z29vZ2xlIGRyaXZlIHRvIHlvdXIgZS1tYWlsLWFkZHJlc3MuIEknbSBub3QgYWxsb3dlZCB0byBz aGFyZSB0aGUgZGF0YSB0byB0aGUgcHVibGljLg0KPiANCj4ga2luZCByZWdhcmRzDQo+IA0KPiBP bGl2ZXINCj4gDQo+ID4gU2hhZCBTdG9yaGF1ZyA8c2hhZEBzaGFkc3RvcmhhdWcuY29tPiBoYXQg YW0gOC4gQXVndXN0IDIwMTcgdW0gMTE6MzAgZ2VzY2hyaWViZW46DQo+ID4gDQo+ID4gT2xpdmVy LA0KPiA+IA0KPiA+IFRoZXJlIGhhdmUgYmVlbiBhIGxvdCBvZiBidWdzIGZpeGVkIHNpbmNlIHRo ZSBsYXN0IGJldGEgcmVsZWFzZS4gSXQgd291bGQgYmUgdXNlZnVsIHRvIGtub3cgd2hldGhlciB0 aGUgYnVnIHN0aWxsIGV4aXN0cyBpbiB0aGUgbGF0ZXN0IENJIGJ1aWxkIHNvIHdlIGFyZW4ndCBz cGVuZGluZyB0aW1lIHdvcmtpbmcgb24gYnVncyB0aGF0IGhhdmUgYWxyZWFkeSBiZWVuIGZpeGVk LiBJdCBzaG91bGRuJ3QgdGFrZSB5b3UgbG9uZyB0byBzd2FwIG91dCB0aGUgcGFja2FnZXMganVz dCB0byB0ZXN0IG91dCB3aGV0aGVyIHRoZSBwcm9ibGVtIGlzIHN0aWxsIHByZXNlbnQuDQo+ID4g DQo+ID4gSWYgdGhlIHByb2JsZW0gc3RpbGwgZXhpc3RzIGluIHRoZSBDSSBidWlsZCwgcGxlYXNl IHByb3ZpZGUgdXMgd2l0aCB0aGUgbWluaW1hbCBjb2RlIHRvIHJlcHJvZHVjZSBpdC4gQSBjb25z b2xlIGFwcGxpY2F0aW9uIHRoYXQgcmVwcm9kdWNlcyB0aGUgaXNzdWUgd291bGQgYmUgZmluZSwg YnV0IGl0IHdvdWxkIGJlIGlkZWFsIGlmIHlvdSBwcm92aWRlIGEgcHVsbCByZXF1ZXN0IG9uIEdp dEh1YiAoaHR0cHM6Ly9naXRodWIuY29tL2FwYWNoZS9sdWNlbmVuZXQvcHVsbHMpIHdpdGggYSB0 ZXN0IGluIHRoZSBBbmFseXppbmdTdWdnZXN0ZXJUZXN0IGNsYXNzIChodHRwczovL2dpdGh1Yi5j b20vYXBhY2hlL2x1Y2VuZW5ldC9ibG9iL21hc3Rlci9zcmMvTHVjZW5lLk5ldC5UZXN0cy5TdWdn ZXN0L1N1Z2dlc3QvQW5hbHl6aW5nL0FuYWx5emluZ1N1Z2dlc3RlclRlc3QuY3MpIHRoYXQgZmFp bHMgd2l0aCB0aGUgaXNzdWUgKGFuZCBtYXJrIGl0IHdpdGggdGhlIFtMdWNlbmVOZXRTcGVjaWZp Y10gYXR0cmlidXRlKSBzbyB3ZSBjYW4gZW5zdXJlIHRoZSBidWcgc3RheXMgZml4ZWQgdGhyb3Vn aG91dCBmdXR1cmUgcG9ydGluZyBlZmZvcnRzLiBPbmNlIHdlIGhhdmUgYSB0ZXN0LCB3ZSBjYW4g cG9ydCBpdCBiYWNrIHRvIEphdmEgYW5kIHN0ZXAgdGhyb3VnaCB0byBmaW5kIG91dCB3aGVyZSB0 aGUgZXhlY3V0aW9uIHBhdGhzIGRpdmVyZ2UuIEFsdGVybmF0aXZlbHksIGlmIHlvdSBhcmUgd2ls bGluZyB0byBkbyB0aGUgd29yayBvZiBjb21wYXJpbmcgd2l0aCBKYXZhIHRvIGZpbmQgb3V0IHdo ZXJlIHRoZSBwcm9ibGVtIGlzLCB5b3UgY291bGQgc3VibWl0IGEgUFIgY29udGFpbmluZyBib3Ro IHRoZSB0ZXN0IGFuZCB0aGUgZml4IGZvciBpdC4NCj4gPiANCj4gPiBEZXNwaXRlIHRoZSBmYWN0 IHRoZXJlIGFyZSBuZWFybHkgODAwMCB0ZXN0cywgdGhlcmUgYXJlIHNvbWUgZHVzdHkgY29ybmVy cyB0aGF0IGFyZSBub3QgY292ZXJlZCBhbmQgSSB0aGluayB5b3UgbWF5IGhhdmUgc3R1bWJsZWQg dXBvbiBvbmUgb2YgdGhlbS4gQW5kIG5vLCB5b3UgYXJlIHRoZSBmaXJzdCB0byByZXBvcnQgdGhp cyBpc3N1ZSB0byB1cy4NCj4gPiANCj4gPiBBbGwgSSBjYW4gdGVsbCB5b3UgaXMgdGhhdCB0aGUg ZG93bmxvYWQgY291bnRzIG9uIHRoZSBuZXcgTnVHZXQgcGFja2FnZXMgc3VjaCBhcyBMdWNlbmUu TmV0LlN1Z2dlc3QsIEx1Y2VuZS5OZXQuSGlnaGxpZ2h0ZXIsIEx1Y2VuZS5OZXQuRmFjZXQsIGFu ZCBMdWNlbmUuTmV0LlNwYXRpYWwgYXJlIG11Y2ggbG93ZXIgdGhhbiBJIHdvdWxkIGV4cGVjdCB0 aGVtIHRvIGJlIGZvciBhIGJldGEsIGFuZCBpdCB3b3VsZCBiZSBleHRyZW1lbHkgaGVscGZ1bCBp ZiB0aGVyZSB3ZXJlIHNvbWUgcGVvcGxlIGRlZGljYXRlZCB0byBmaW5kaW5nIGJ1Z3MgaW4gdGhl c2UgcGFja2FnZXMgYW5kIHJlcG9ydGluZyB0aGVtIHRvIHVzLg0KPiA+IA0KPiA+IFRoYW5rcywN Cj4gPiBTaGFkIFN0b3JoYXVnIChOaWdodE93bDg4OCkNCj4gPiANCj4gPiAtLS0tLU9yaWdpbmFs IE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206IE9saXZlciBBbGJyZWNodCBbbWFpbHRvOm8uYWxicmVj aHRAb2xpdmVyLWFsYnJlY2h0LmRlXQ0KPiA+IFNlbnQ6IFR1ZXNkYXksIEF1Z3VzdCA4LCAyMDE3 IDM6MDggUE0NCj4gPiBUbzogdXNlckBsdWNlbmVuZXQuYXBhY2hlLm9yZw0KPiA+IFN1YmplY3Q6 IFJFOiBTdGFja292ZXJmbG93IGV4Y2VwdGlvbg0KPiA+IA0KPiA+IEhlbGxvIEl0YW1hciwgaGVs bG8gU2hhZCwNCj4gPiANCj4gPiB0aGFua3MgZm9yIHRoZSBmYXN0IHJlc3BvbnNlLg0KPiA+IA0K PiA+IEkgY291bGQgeW91IHByb3ZpZGUgdGhlIGNhbGxzdGFjaywgYnV0IGkgdGhpbmsgaXQncyB1 c2VsZXNzIGJlY2F1c2UgaXQncyBmdWxsIG9mIGNhbGxzIHRvIElzRmluaXRlKFN0YXRlIHMsIE9w ZW5CaXRTZXQgcGF0aCwgT3BlbkJpdFNldCB2aXNpdGVkKSBiZWNhdXNlIGl0IGlzIGEgcmVjdXJz aXZlIGZ1bmN0aW9uLiBGb3IgdGhlIHNhbWUgcmVhc29uIGkgdGhpbmsgdGhhdCB1c2luZyB0aGUg Q0ktQnVpbGQgd291bGRuJ3QgY2hhbmdlIGFueXRoaW5nLiBUaGUgSXNGaW5pdGUtZnVuY3Rpb24g aXMgc3RpbGwgd29ya2luZyByZWN1cnNpdmVseS4NCj4gPiANCj4gPiBJJ3ZlIHRyaWVkIHRvIHJl cGxhY2UgdGhlIHJlY3Vyc2lvbiB3aXRoIGEgc3RhY2sgYmFzZWQgYXBwcm9hY2ggKHVzaW5nIFN0 YWNrKSwgYnV0IGknbSBub3Qgc3VyZSBpZiBteSBpbXBsZW1lbnRhdGlvbiBpcyBjb3JyZWN0Lg0K PiA+IA0KPiA+IEhvdyBldmVyLCBpZiBpIHVzZSBteSBub24tcmVjdXJzaXZlIHZlcnNpb24gb2Yg SXNGaW5pdGUgaXQgY3Jhc2hlcyB3aXRoIGEgc3RhY2tvdmVyZmxvdyBleGNlcHRpb24gaW4gR2V0 RmluaXRlU3RyaW5ncyhTdGF0ZSBzLCBIYXNoU2V0IHBhdGhzdGF0ZXMsIEhhc2hTZXQgc3RyaW5n cywgSW50MzJzUmVmIHBhdGgsIGludCBsaW1pdCksIHdoaWNoIGlzIGFsc28gYSByZWN1cnNpdmUg ZnVuY3Rpb24uIEJ1dCB0aGlzIGZ1bmN0aW9uIGlzIHRvIGNvbXBsZXggZm9yIG1lIHRvIGNvbnZl cnQgaXQgaW50byBhIG5vbi1yZWN1cnNpdmUgdmVyc2lvbiB3aXRob3V0IGV4YWN0IGtub3dsZWRn ZSB3aGF0IHRoZSBmdW5jdGlvbiBzaG91bGQgZG8uDQo+ID4gDQo+ID4gSW4gbXkgb3BpbmlvbiBp cyB0aGUgcmVwbGFjZW1lbnQgb2YgdGhlIHJlY3Vyc2lvbiB3aXRoIGEgbm9uLXJlY3Vyc2l2ZSBh cHByb2FjaCB0aGUgb25seSBzb2x1dGlvbi4gRG9lcyBubyBvbmUgZWxzZSBoYXZlIHRoaXMgcHJv YmxlbT8gSSB0aGluayB0byBoYXZlIGFuIGluZGV4IHdpdGggNDAwMCBkb2N1bWVudHMgYW5kIGEg c2l6ZSB3aXRoIDE1IE1CIGlzIG5vdCBzbyBleHRyYW9yZGluYXJ5LiBPciBpcyB0aGlzIG9ubHkg YSBwcm9ibGVtIGhvdyB0aGUgc3VnZ2VzdGVyIHdvcmtzPw0KPiA+IA0KPiA+IEknbSBqdXN0IHRy eSB0byB1c2UgbHVjZW5lIHRvIGJ1aWxkIGEgZnVsbHRleHQgcXVlcnkgZW5naW5lIGZvciBvdXIg aW50ZXJuYWwgZG1zIHN5c3RlbS4gVGhlIHN5c3RlbSBob2xkcyBjdXJyZW50bHkgNDUwLjAwMCBk b2N1bWVudHMgd2l0aCBjYS4gNTAgR0Igb2YgZGF0YS4gSSB0aGluayB0aGUgZmluYWwgaW5kZXgg d2lsbCBiZSBhcm91bmQgMiBHQiBvZiBzaXplLg0KPiA+IA0KPiA+IGtpbmQgcmVnYXJkcw0KPiA+ IA0KPiA+IE9saXZlcg0KPiA+IA0KPiA+ID4gU2hhZCBTdG9yaGF1ZyA8c2hhZEBzaGFkc3Rvcmhh dWcuY29tPiBoYXQgYW0gNy4gQXVndXN0IDIwMTcgdW0gMTk6MDYgZ2VzY2hyaWViZW46DQo+ID4g PiANCj4gPiA+IEhpIE9saXZlciwNCj4gPiA+IA0KPiA+ID4gSW4gYWRkaXRpb24gdG8gcHJvdmlk aW5nIHRoZSBmdWxsIHN0YWNrIHRyYWNlIHRoYXQgSXRhbWFyIA0KPiA+ID4gbWVudGlvbmVkLCBj b3VsZCB5b3UgY29uZmlybSB0aGUgcHJvYmxlbSBzdGlsbCBleGlzdHMgaWYgeW91IHVzZSANCj4g PiA+IHRoZSBsYXRlc3QgQ0kgYnVpbGQgaGVyZToNCj4gPiA+IFtodHRwczovL3d3dy5teWdldC5v cmcvZ2FsbGVyeS9sdWNlbmUtbmV0LWNpP10oaHR0cHM6Ly93d3cubXlnZXQubw0KPiA+ID4gcmcN Cj4gPiA+IC9nDQo+ID4gPiBhbGxlcnkvbHVjZW5lLW5ldC1jaSkNCj4gPiA+IA0KPiA+ID4gVGhh bmtzLA0KPiA+ID4gU2hhZCBTdG9yaGF1ZyAoTmlnaHRPd2w4ODgpDQo+ID4gPiANCj4gPiA+IC0t LS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiBGcm9tOiBpdGFtYXIuc3luaGVyc2hrb0Bn bWFpbC5jb20NCj4gPiA+IFttYWlsdG86aXRhbWFyLnN5bmhlcnNoa29AZ21haWwuY29tXQ0KPiA+ ID4gT24gQmVoYWxmIE9mIEl0YW1hciBTeW4tSGVyc2hrbw0KPiA+ID4gU2VudDogTW9uZGF5LCBB dWd1c3QgNywgMjAxNyA5OjA2IFBNDQo+ID4gPiBUbzogdXNlckBsdWNlbmVuZXQuYXBhY2hlLm9y Zw0KPiA+ID4gU3ViamVjdDogUmU6IFN0YWNrb3ZlcmZsb3cgZXhjZXB0aW9uDQo+ID4gPiANCj4g PiA+IFdoYXQgaXMgdGhlIGZ1bGwgc3RhY2t0cmFjZSBwbGVhc2U/DQo+ID4gPiANCj4gPiA+IC0t DQo+ID4gPiANCj4gPiA+IEl0YW1hciBTeW4tSGVyc2hrbw0KPiA+ID4gRnJlZWxhbmNlIERldmVs b3BlciAmIENvbnN1bHRhbnQNCj4gPiA+IEVsYXN0aWNzZWFyY2ggUGFydG5lcg0KPiA+ID4gTWlj cm9zb2Z0IE1WUCB8IEx1Y2VuZS5ORVQgUE1DDQo+ID4gPiBodHRwOi8vY29kZTk3Mi5jb20gfCBA c3luaGVyc2hrbyA8aHR0cHM6Ly90d2l0dGVyLmNvbS9zeW5oZXJzaGtvPiANCj4gPiA+IGh0dHA6 Ly9CaWdEYXRhQm91dGlxdWUuY28uaWwvDQo+ID4gPiANCj4gPiA+IE9uIE1vbiwgQXVnIDcsIDIw MTcgYXQgNDo0OSBQTSwgT2xpdmVyIEFsYnJlY2h0IDwgby5hbGJyZWNodEBvbGl2ZXItYWxicmVj aHQuZGU+IHdyb3RlOg0KPiA+ID4gDQo+ID4gPiA+IEhlbGxvLA0KPiA+ID4gPiANCj4gPiA+ID4g aSdtIHVzaW5nIGEgRG9jdW1lbnREaWN0aW9uYXJ5IHRvIGZlZWQgYW4gQW5hbHl6aW5nU3VnZ2Vz dGVyIA0KPiA+ID4gPiB1c2luZyB0aGUgZm9sbG93aW5nIGNvZGU6DQo+ID4gPiA+IA0KPiA+ID4g PiBTbmlwcGV0QW5hbHl6aW5nU3VnZ2VzdGVyIHN1Z2dlc3RlciA9IG5ldyBBbmFseXppbmdTdWdn ZXN0ZXIobmV3IA0KPiA+ID4gPiBHZXJtYW5BbmFseXplcihMdWNlbmUuTmV0LlV0aWwuTHVjZW5l VmVyc2lvbi5MVUNFTkVfNDgpKTsNCj4gPiA+ID4gDQo+ID4gPiA+IEx1Y2VuZS5OZXQuU3RvcmUu RGlyZWN0b3J5IGRpciA9IEx1Y2VuZS5OZXQuU3RvcmUuRlNEaXJlY3RvcnkuDQo+ID4gPiA+IE9w ZW4oaW5kZXhEaXIpOw0KPiA+ID4gPiANCj4gPiA+ID4gSW5kZXhSZWFkZXIgaXIgPSBEaXJlY3Rv cnlSZWFkZXIuT3BlbihkaXIpOw0KPiA+ID4gPiANCj4gPiA+ID4gRG9jdW1lbnREaWN0aW9uYXJ5 IGRpY3QgPSBuZXcgRG9jdW1lbnREaWN0aW9uYXJ5KGlyLCAiQ29udGVudCIsIA0KPiA+ID4gPiBu dWxsLCBudWxsKTsNCj4gPiA+ID4gDQo+ID4gPiA+IHN1Z2dlc3Rlci5CdWlsZChkaWN0LkdldEVu dHJ5SXRlcmF0b3IoKSk7DQo+ID4gPiA+IA0KPiA+ID4gPiBJIGdldCBhIHN0YWNrb3ZlcmZsb3cg ZXhjZXB0aW9uIG9uIHN1Z2dlc3Rlci5CdWlsZC4gVGhlIA0KPiA+ID4gPiBleGNlcHRpb24gdGhy b3dzIGluIEx1Y2VuZS5OZXQuVXRpbC5BdXRvbWF0b24uU3BlY2lhbE9wZXJhdGlvbnMuSXNGaW5p dGUuDQo+ID4gPiA+IA0KPiA+ID4gPiBUaGUgaW5kZXggY29udGFpbnMgMTAuMDAwIGRvY3VtZW50 cyBhbmQgaGFzIG5vIHBheWxvYWQgYW5kIG5vIHdlaWdodC4NCj4gPiA+ID4gDQo+ID4gPiA+IEtp bmQgcmVnYXJkcw0KPiA+ID4gPiANCj4gPiA+ID4gT2xpdmVyDQo=