Return-Path: X-Original-To: apmail-incubator-general-archive@www.apache.org Delivered-To: apmail-incubator-general-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 80ED118425 for ; Tue, 19 Jan 2016 14:51:39 +0000 (UTC) Received: (qmail 98704 invoked by uid 500); 19 Jan 2016 14:51:38 -0000 Delivered-To: apmail-incubator-general-archive@incubator.apache.org Received: (qmail 98495 invoked by uid 500); 19 Jan 2016 14:51:38 -0000 Mailing-List: contact general-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: general@incubator.apache.org Delivered-To: mailing list general@incubator.apache.org Received: (qmail 98484 invoked by uid 99); 19 Jan 2016 14:51:38 -0000 Received: from Unknown (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 19 Jan 2016 14:51:38 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id 244F51804F3 for ; Tue, 19 Jan 2016 14:51:38 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -0.553 X-Spam-Level: X-Spam-Status: No, score=-0.553 tagged_above=-999 required=6.31 tests=[RP_MATCHES_RCVD=-0.554, URIBL_BLOCKED=0.001] autolearn=disabled Received: from mx1-eu-west.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id H-MA0qabM2oz for ; Tue, 19 Jan 2016 14:51:23 +0000 (UTC) Received: from mail.jpl.nasa.gov (smtp.jpl.nasa.gov [128.149.139.106]) by mx1-eu-west.apache.org (ASF Mail Server at mx1-eu-west.apache.org) with ESMTPS id 58C9A20BC2 for ; Tue, 19 Jan 2016 14:51:21 +0000 (UTC) Received: from mail.jpl.nasa.gov (ap-ehub-sp02.jpl.nasa.gov [128.149.137.149]) by smtp.jpl.nasa.gov (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.1) with ESMTP id u0JEpH40012706 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256 bits) verified NO) for ; Tue, 19 Jan 2016 06:51:19 -0800 Received: from AP-EMBX-SP40.RES.AD.JPL ([169.254.7.121]) by ap-ehub-sp02.RES.AD.JPL ([fe80::dd85:7b07:1e36:7e3c%15]) with mapi id 14.03.0210.002; Tue, 19 Jan 2016 06:51:18 -0800 From: "Mattmann, Chris A (3980)" To: "general@incubator.apache.org" Subject: Re: [DISCUSS] Apache Joshua Incubator Proposal - Machine Translation Toolkit Thread-Topic: [DISCUSS] Apache Joshua Incubator Proposal - Machine Translation Toolkit Thread-Index: AQHRTc+UxmNa9z/tdUunu7PLDflyk58DCKUA///tUwA= Date: Tue, 19 Jan 2016 14:51:16 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Microsoft-MacOutlook/14.5.9.151119 x-originating-ip: [128.149.137.81] Content-Type: text/plain; charset="utf-8" Content-ID: <7D21C360D3508541907EF2913E196FED@ad.jpl> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-Source-Sender: chris.a.mattmann@jpl.nasa.gov X-AUTH: Authorized SGkgVG9tbWFzbywgDQoNCnN1cmUgeWVzIHBsZWFzZSBhZGQgeW91cnNlbGYgdG8gdGhlIHByb3Bv c2FsIGFzIGEgY29tbWl0dGVyIGFuZC9vcg0KTWVudG9yLiBUaGFuayB5b3UhDQoNCkNoZWVycywN CkNocmlzDQoNCisrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKw0KQ2hyaXMgTWF0dG1hbm4sIFBoLkQuDQpDaGllZiBBcmNoaXRl Y3QNCkluc3RydW1lbnQgU29mdHdhcmUgYW5kIFNjaWVuY2UgRGF0YSBTeXN0ZW1zIFNlY3Rpb24g KDM5OCkNCk5BU0EgSmV0IFByb3B1bHNpb24gTGFib3JhdG9yeSBQYXNhZGVuYSwgQ0EgOTExMDkg VVNBDQpPZmZpY2U6IDE2OC01MTksIE1haWxzdG9wOiAxNjgtNTI3DQpFbWFpbDogY2hyaXMuYS5t YXR0bWFubkBuYXNhLmdvdg0KV1dXOiAgaHR0cDovL3N1bnNldC51c2MuZWR1L35tYXR0bWFubi8N CisrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKw0KQWRqdW5jdCBBc3NvY2lhdGUgUHJvZmVzc29yLCBDb21wdXRlciBTY2llbmNl IERlcGFydG1lbnQNClVuaXZlcnNpdHkgb2YgU291dGhlcm4gQ2FsaWZvcm5pYSwgTG9zIEFuZ2Vs ZXMsIENBIDkwMDg5IFVTQQ0KKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrDQoNCg0KDQoNCg0KLS0tLS1PcmlnaW5hbCBNZXNz YWdlLS0tLS0NCkZyb206IFRvbW1hc28gVGVvZmlsaSA8dG9tbWFzby50ZW9maWxpQGdtYWlsLmNv bT4NClJlcGx5LVRvOiAiZ2VuZXJhbEBpbmN1YmF0b3IuYXBhY2hlLm9yZyIgPGdlbmVyYWxAaW5j dWJhdG9yLmFwYWNoZS5vcmc+DQpEYXRlOiBNb25kYXksIEphbnVhcnkgMTgsIDIwMTYgYXQgMTE6 NTcgUE0NClRvOiAiZ2VuZXJhbEBpbmN1YmF0b3IuYXBhY2hlLm9yZyIgPGdlbmVyYWxAaW5jdWJh dG9yLmFwYWNoZS5vcmc+DQpTdWJqZWN0OiBSZTogW0RJU0NVU1NdIEFwYWNoZSBKb3NodWEgSW5j dWJhdG9yIFByb3Bvc2FsIC0gTWFjaGluZQ0KVHJhbnNsYXRpb24gVG9vbGtpdA0KDQo+SGkgQ2hy aXMsIGFsbCwNCj4NCj50aGF0J3MgYSB2ZXJ5IGludGVyZXN0aW5nIHByb3Bvc2FsLCBpZiB5b3Ug d2lzaCBJIGNhbiBoZWxwICh3aXRoIG15DQo+T3Blbk5MUC9MdWNlbmUgaGF0IG9uKS4NCj4NCj5S ZWdhcmRzLA0KPlRvbW1hc28NCj4NCj4yMDE2LTAxLTEzIDc6NTYgR01UKzAxOjAwIE1hdHRtYW5u LCBDaHJpcyBBICgzOTgwKSA8DQo+Y2hyaXMuYS5tYXR0bWFubkBqcGwubmFzYS5nb3Y+Og0KPg0K Pj4gSGkgRXZlcnlvbmUsDQo+Pg0KPj4gUGxlYXNlIGZpbmQgYXR0YWNoZWQgZm9yIHlvdXIgdmll d2luZyBwbGVhc3VyZSBhIHByb3Bvc2VkIG5ldyBwcm9qZWN0LA0KPj4gQXBhY2hlIEpvc2h1YSwg YSBzdGF0aXN0aWNhbCBtYWNoaW5lIHRyYW5zbGF0aW9uIHRvb2xraXQuIFRoZSBwcm9wb3NhbA0K Pj4gaXMgaW4gd2lraSBkcmFmdCBmb3JtIGF0Og0KPj5odHRwczovL3dpa2kuYXBhY2hlLm9yZy9p bmN1YmF0b3IvSm9zaHVhUHJvcG9zYWwNCj4+DQo+PiBQcm9wb3NhbCB0ZXh0IGlzIGNvcGllZCBi ZWxvdy4gSeKAmWxsIGxlYXZlIHRoZSBkaXNjdXNzaW9uIG9wZW4gZm9yIGEgd2Vlaw0KPj4gYW5k IHdlIGFyZSBpbnRlcmVzdGVkIGluIGZvbGtzIHdobyB3b3VsZCBsaWtlIHRvIGJlIGluaXRpYWwg Y29tbWl0dGVycw0KPj4gYW5kIG1lbnRvcnMuIFBsZWFzZSBkaXNjdXNzIGhlcmUgb24gdGhlIHRo cmVhZC4NCj4+DQo+PiBUaGFua3MhDQo+Pg0KPj4gQ2hlZXJzLA0KPj4gQ2hyaXMgKENoYW1waW9u KQ0KPj4NCj4+IOKAlOKAlOKAlA0KPj4NCj4+ID0gSm9zaHVhIFByb3Bvc2FsID0NCj4+DQo+PiA9 PSBBYnN0cmFjdCA9PQ0KPj4gW1tqb3NodWEtZGVjb2Rlci5vcmd8Sm9zaHVhXV0gaXMgYW4gb3Bl bi1zb3VyY2Ugc3RhdGlzdGljYWwgbWFjaGluZQ0KPj4gdHJhbnNsYXRpb24gdG9vbGtpdC4gSXQg aW5jbHVkZXMgYSBKYXZhLWJhc2VkIGRlY29kZXIgZm9yIHRyYW5zbGF0aW5nDQo+PndpdGgNCj4+ IHBocmFzZS1iYXNlZCwgaGllcmFyY2hpY2FsLCBhbmQgc3ludGF4LWJhc2VkIHRyYW5zbGF0aW9u IG1vZGVscywgYQ0KPj4gSGFkb29wLWJhc2VkIGdyYW1tYXIgZXh0cmFjdG9yIChUaHJheCksIGFu ZCBhbiBleHRlbnNpdmUgc2V0IG9mIHRvb2xzDQo+PmFuZA0KPj4gc2NyaXB0cyBmb3IgdHJhaW5p bmcgYW5kIGV2YWx1YXRpbmcgbmV3IG1vZGVscyBmcm9tIHBhcmFsbGVsIHRleHQuDQo+Pg0KPj4g PT0gUHJvcG9zYWwgPT0NCj4+IEpvc2h1YSBpcyBhIHN0YXRlIG9mIHRoZSBhcnQgc3RhdGlzdGlj YWwgbWFjaGluZSB0cmFuc2xhdGlvbiBzeXN0ZW0gdGhhdA0KPj4gcHJvdmlkZXMgYSBudW1iZXIg b2YgZmVhdHVyZXM6DQo+Pg0KPj4gICogU3VwcG9ydCBmb3IgdGhlIHR3byBtYWluIHBhcmFkaWdt cyBpbiBzdGF0aXN0aWNhbCBtYWNoaW5lDQo+PnRyYW5zbGF0aW9uOg0KPj4gcGhyYXNlLWJhc2Vk IGFuZCBoaWVyYXJjaGljYWwgLyBzeW50YWN0aWMuDQo+PiAgKiBBIHNwYXJzZSBmZWF0dXJlIEFQ SSB0aGF0IG1ha2VzIGl0IGVhc3kgdG8gYWRkIG5ldyBmZWF0dXJlIHRlbXBsYXRlcw0KPj4gc3Vw cG9ydGluZyBtaWxsaW9ucyBvZiBmZWF0dXJlcw0KPj4gICogTmF0aXZlIGltcGxlbWVudGF0aW9u cyBvZiBtYW55IHR1bmVycyAoTUVSVCwgTUlSQSwgUFJPLCBhbmQgQWRhR3JhZCkNCj4+ICAqIFN1 cHBvcnQgZm9yIGxhdHRpY2UgZGVjb2RpbmcsIGFsbG93aW5nIHVwc3RyZWFtIE5MUCB0b29scyB0 byBleHBvc2UNCj4+IHRoZWlyIGh5cG90aGVzaXMgc3BhY2UgdG8gdGhlIE1UIHN5c3RlbQ0KPj4g ICogQW4gZWZmaWNpZW50IHJlcHJlc2VudGF0aW9uIGZvciBtb2RlbHMsIGFsbG93aW5nIGZvciBx dWljayBsb2FkaW5nIG9mDQo+PiBtdWx0aS1naWdhYnl0ZSBtb2RlbCBmaWxlcw0KPj4gICogRmFz dCBkZWNvZGluZyBzcGVlZCAob24gcGFyIHdpdGggTW9zZXMgYW5kIG10cGx6KQ0KPj4gICogTGFu Z3VhZ2UgcGFja3Mg4oCUIHByZWNvbXBpbGVkIG1vZGVscyB0aGF0IGFsbG93IHRoZSBkZWNvZGVy IHRvIGJlIHJ1bg0KPj5hcw0KPj4gYSBibGFjayBib3gNCj4+ICAqIFRocmF4LCBhIEhhZG9vcC1i YXNlZCB0b29sIGZvciBsZWFybmluZyB0cmFuc2xhdGlvbiBtb2RlbHMgZnJvbQ0KPj4gcGFyYWxs ZWwgdGV4dA0KPj4gICogQSBzdWl0ZSBvZiB0b29scyBmb3IgY29uc3RydWN0aW5nIG5ldyBtb2Rl bHMgZm9yIGFueSBsYW5ndWFnZSBwYWlyDQo+PmZvcg0KPj4gd2hpY2ggc3VmZmljaWVudCB0cmFp bmluZyBkYXRhIGV4aXN0cw0KPj4NCj4+ID09IEJhY2tncm91bmQgYW5kIFJhdGlvbmFsZSA9PQ0K Pj4gQSBudW1iZXIgb2YgZmFjdG9ycyBtYWtlIHRoaXMgYSBnb29kIHRpbWUgZm9yIGFuIEFwYWNo ZSBwcm9qZWN0IGZvY3VzZWQNCj4+b24NCj4+IG1hY2hpbmUgdHJhbnNsYXRpb24gKE1UKTogdGhl IHF1YWxpdHkgb2YgTVQgb3V0cHV0IChmb3IgbWFueSBsYW5ndWFnZQ0KPj4gcGFpcnMpOyB0aGUg YXZlcmFnZSBjb21wdXRpbmcgcmVzb3VyY2VzIGF2YWlsYWJsZSBvbiBjb21wdXRlcnMsIHJlbGF0 aXZlDQo+PiB0byB0aGUgbmVlZHMgb2YgTVQgc3lzdGVtczsgYW5kIHRoZSBhdmFpbGFiaWxpdHkg b2YgYSBudW1iZXIgb2YNCj4+IGhpZ2gtcXVhbGl0eSB0b29sa2l0cywgdG9nZXRoZXIgd2l0aCBh IGxhcmdlIGJhc2Ugb2YgcmVzZWFyY2hlcnMgd29ya2luZw0KPj4gb24gdGhlbS4NCj4+DQo+PiBP dmVyIHRoZSBwYXN0IGRlY2FkZSwgbWFjaGluZSB0cmFuc2xhdGlvbiAoTVQ7IHRoZSBhdXRvbWF0 aWMgdHJhbnNsYXRpb24NCj4+IG9mIG9uZSBodW1hbiBsYW5ndWFnZSB0byBhbm90aGVyKSBoYXMg YmVjb21lIGEgcmVhbGl0eS4gVGhlIHJlc2VhcmNoDQo+PmludG8NCj4+IHN0YXRpc3RpY2FsIGFw cHJvYWNoZXMgdG8gdHJhbnNsYXRpb24gdGhhdCBiZWdhbiBpbiB0aGUgZWFybHkgbmluZXRpZXMs DQo+PiB0b2dldGhlciB3aXRoIHRoZSBhdmFpbGFiaWxpdHkgb2YgbGFyZ2UgYW1vdW50cyBvZiB0 cmFpbmluZyBkYXRhLCBhbmQNCj4+IGJldHRlciBjb21wdXRpbmcgaW5mcmFzdHJ1Y3R1cmUsIGhh dmUgYWxsIGNvbWUgdG9nZXRoZXIgdG8gcHJvZHVjZQ0KPj4gdHJhbnNsYXRpb25zIHJlc3VsdHMg dGhhdCBhcmUg4oCcZ29vZCBlbm91Z2jigJ0gZm9yIGEgbGFyZ2Ugc2V0IG9mIGxhbmd1YWdlDQo+ PiBwYWlycyBhbmQgdXNlIGNhc2VzLiBGcmVlIHNlcnZpY2VzIGxpa2UNCj4+IFtbaHR0cHM6Ly93 d3cuYmluZy5jb20vdHJhbnNsYXRvcnxCaW5nIFRyYW5zbGF0b3JdXSBhbmQNCj4+IFtbaHR0cHM6 Ly90cmFuc2xhdGUuZ29vZ2xlLmNvbXxHb29nbGUgVHJhbnNsYXRlXV0gaGF2ZSBtYWRlIHRoZXNl DQo+PnNlcnZpY2VzDQo+PiBhdmFpbGFibGUgdG8gdGhlIGF2ZXJhZ2UgcGVyc29uIHRocm91Z2gg ZGlyZWN0IGludGVyZmFjZXMgYW5kIHRocm91Z2gNCj4+IHRvb2xzIGxpa2UgYnJvd3NlciBwbHVn aW5zLCBhbmQgc2l0ZXMgYWNyb3NzIHRoZSB3b3JsZCB3aXRoIGhpZ2hlcg0KPj4gdHJhbnNsYXRp b24gbmVlZHMgdXNlIHRoZW0gdG8gdHJhbnNsYXRlIHRoZWlyIHBhZ2VzIHRocm91Z2gNCj4+YXV0 b21hdGljYWxseS4NCj4+DQo+PiBNVCBkb2VzIG5vdCByZXF1aXJlIHRoZSBpbmZyYXN0cnVjdHVy ZSBvZiBsYXJnZSBjb3Jwb3JhdGlvbnMgaW4gb3JkZXIgdG8NCj4+IHByb2R1Y2UgZmVhc2libGUg b3V0cHV0LiBNYWNoaW5lIHRyYW5zbGF0aW9uIGNhbiBiZSByZXNvdXJjZS1pbnRlbnNpdmUsDQo+ PiBidXQgbmVlZCBub3QgYmUgcHJvaGliaXRpdmVseSBzby4gRGlzayBhbmQgbWVtb3J5IHVzYWdl IGFyZSBtb3N0bHkgYQ0KPj4gbWF0dGVyIG9mIG1vZGVsIHNpemUsIHdoaWNoIGZvciBtb3N0IGxh bmd1YWdlIHBhaXJzIGlzIGEgZmV3IGdpZ2FieXRlcw0KPj5hdA0KPj4gbW9zdCwgYXQgd2hpY2gg c2l6ZSBtb2RlbHMgY2FuIHByb3ZpZGUgY292ZXJhZ2Ugb24gdGhlIG9yZGVyIG9mIHRlbnMgb3IN Cj4+IGV2ZW4gaHVuZHJlZHMgb2YgdGhvdXNhbmRzIG9mIHdvcmRzIGluIHRoZSBpbnB1dCBhbmQg b3V0cHV0IGxhbmd1YWdlcy4NCj4+VGhlDQo+PiBjb21wdXRhdGlvbmFsIGNvbXBsZXhpdHkgb2Yg dGhlIGFsZ29yaXRobXMgdXNlZCB0byBzZWFyY2ggZm9yDQo+PnRyYW5zbGF0aW9ucw0KPj4gb2Yg bmV3IHNlbnRlbmNlcyBhcmUgdHlwaWNhbGx5IGxpbmVhciBpbiB0aGUgbnVtYmVyIG9mIHdvcmRz IGluIHRoZQ0KPj5pbnB1dA0KPj4gc2VudGVuY2UsIG1ha2luZyBpdCBwb3NzaWJsZSB0byBydW4g YSB0cmFuc2xhdGlvbiBlbmdpbmUgb24gYSBwZXJzb25hbA0KPj4gY29tcHV0ZXIuDQo+Pg0KPj4g VGhlIHJlc2VhcmNoIGNvbW11bml0eSBoYXMgcHJvZHVjZWQgbWFueSBkaWZmZXJlbnQgb3BlbiBz b3VyY2UNCj4+dHJhbnNsYXRpb24NCj4+IHByb2plY3RzIGZvciBhIHJhbmdlIG9mIHByb2dyYW1t aW5nIGxhbmd1YWdlcyBhbmQgdW5kZXIgYSB2YXJpZXR5IG9mDQo+PiBsaWNlbnNlcy4gVGhlc2Ug cHJvamVjdHMgaW5jbHVkZSB0aGUgY29yZSDigJxkZWNvZGVy4oCdLCB3aGljaCB0YWtlcyBhIG1v ZGVsDQo+PiBhbmQgdXNlcyBpdCB0byB0cmFuc2xhdGUgbmV3IHNlbnRlbmNlcyBiZXR3ZWVuIHRo ZSBsYW5ndWFnZSBwYWlyIHRoZQ0KPj5tb2RlbA0KPj4gd2FzIGRlZmluZWQgZm9yLiBUaGV5IGFs c28gdHlwaWNhbGx5IGluY2x1ZGUgYSBsYXJnZSBzZXQgb2YgdG9vbHMgdGhhdA0KPj4gZW5hYmxl IG5ldyBtb2RlbHMgdG8gYmUgYnVpbHQgZnJvbSBsYXJnZSBzZXRzIG9mIGV4YW1wbGUgdHJhbnNs YXRpb25zDQo+PiAo4oCccGFyYWxsZWwgZGF0YeKAnSkgYW5kIG1vbm9saW5ndWFsIHRleHRzLiBU aGVzZSB0b29sa2l0cyBhcmUgdXN1YWxseQ0KPj5idWlsdA0KPj4gdG8gc3VwcG9ydCB0aGUgYWdl bmRhcyBvZiB0aGUgKGxhcmdlbHkpIGFjYWRlbWljIHJlc2VhcmNoZXJzIHRoYXQgYnVpbGQNCj4+ IHRoZW06IHRoZSByZXBlYXRlZCBjeWNsZSBvZiBidWlsZGluZyBuZXcgbW9kZWxzLCB0dW5pbmcg bW9kZWwgcGFyYW1ldGVycw0KPj4gYWdhaW5zdCBkZXZlbG9wbWVudCBkYXRhLCBhbmQgZXZhbHVh dGluZyB0aGVtIGFnYWluc3QgaGVsZC1vdXQgdGVzdA0KPj5kYXRhLA0KPj4gdXNpbmcgc3RhbmRh cmQgbWV0cmljcyBmb3IgdGVzdGluZyB0aGUgcXVhbGl0eSBvZiBNVCBvdXRwdXQuDQo+Pg0KPj4g VG9nZXRoZXIsIHRoZXNlIHRocmVlIGZhY3RvcnPigJR0aGUgcXVhbGl0eSBvZiBtYWNoaW5lIHRy YW5zbGF0aW9uIG91dHB1dCwNCj4+IHRoZSBmZWFzaWJpbGl0eSBvZiB0cmFuc2xhdGluZyBvbiBz dGFuZGFyZCBjb21wdXRlcnMsIGFuZCB0aGUNCj4+YXZhaWxhYmlsaXR5DQo+PiBvZiB0b29scyB0 byBidWlsZCBtb2RlbHPigJRtYWtlIGl0IHJlYXNvbmFibGUgZm9yIHRoZSBlbmQgdXNlcnMgdG8g dXNlIE1UDQo+PmFzDQo+PiBhIGJsYWNrLWJveCBzZXJ2aWNlLCBhbmQgdG8gcnVuIGl0IG9uIHRo ZWlyIHBlcnNvbmFsIG1hY2hpbmUuDQo+Pg0KPj4gVGhlc2UgZmFjdG9ycyBtYWtlIGl0IGEgZ29v ZCB0aW1lIGZvciBhbiBvcmdhbml6YXRpb24gd2l0aCB0aGUgc3RhdHVzIG9mDQo+PiB0aGUgQXBh Y2hlIEZvdW5kYXRpb24gdG8gaG9zdCBhIG1hY2hpbmUgdHJhbnNsYXRpb24gcHJvamVjdC4NCj4+ DQo+PiA9PSBDdXJyZW50IFN0YXR1cyA9PQ0KPj4gSm9zaHVhIHdhcyBvcmlnaW5hbGx5IHBvcnRl ZCBmcm9tIERhdmlkIENoaWFuZ+KAmXMgUHl0aG9uIGltcGxlbWVudGF0aW9uDQo+Pm9mDQo+PiBI aWVybyBieSBaaGlmZWkgTGksIHdoaWxlIGhlIHdhcyBhIFBoLkQuIHN0dWRlbnQgYXQgSm9obnMg SG9wa2lucw0KPj4gVW5pdmVyc2l0eS4gVGhlIGN1cnJlbnQgdmVyc2lvbiBpcyBtYWludGFpbmVk IGJ5IE1hdHQgUG9zdCBhdCBKb2hucw0KPj4gSG9wa2luc+KAmSBIdW1hbiBMYW5ndWFnZSBUZWNo bm9sb2d5IENlbnRlciBvZiBFeGNlbGxlbmNlLiBKb3NodWEgaGFzIG1hZGUNCj4+IG1hbnkgcmVs ZWFzZXMgd2l0aCBhIGxpc3Qgb2Ygb3ZlciAyMCBzb3VyY2UgY29kZSB0YWdzLiBUaGUgbGFzdCBy ZWxlYXNlDQo+Pm9mDQo+PiBKb3NodWEgd2FzIDYuMC41IG9uIE5vdmVtYmVyIDV0aCwgMjAxNS4N Cj4+DQo+PiA9PSBNZXJpdG9jcmFjeSA9PQ0KPj4gVGhlIGN1cnJlbnQgZGV2ZWxvcGVycyBhcmUg ZmFtaWxpYXIgd2l0aCBtZXJpdG9jcmF0aWMgb3BlbiBzb3VyY2UNCj4+IGRldmVsb3BtZW50IGF0 IEFwYWNoZS4gQXBhY2hlIHdhcyBjaG9zZW4gc3BlY2lmaWNhbGx5IGJlY2F1c2Ugd2Ugd2FudCB0 bw0KPj4gZW5jb3VyYWdlIHRoaXMgc3R5bGUgb2YgZGV2ZWxvcG1lbnQgZm9yIHRoZSBwcm9qZWN0 Lg0KPj4NCj4+ID09IENvbW11bml0eSA9PQ0KPj4gSm9zaHVhIGlzIHVzZWQgd2lkZWx5IGFjcm9z cyB0aGUgd29ybGQuIFBlcmhhcHMgaXRzIGJpZ2dlc3QgKGtub3duKQ0KPj4gcmVzZWFyY2ggLyBp bmR1c3RyaWFsIHVzZXIgaXMgdGhlIEFtYXpvbiByZXNlYXJjaCBncm91cCBpbiBCZXJsaW4uDQo+ PkFub3RoZXINCj4+IHVzZXIgaXMgdGhlIFVTIEFybXkgUmVzZWFyY2ggTGFiLiBObyBmb3JtYWwg Y2Vuc3VzIGhhcyBiZWVuIHVuZGVydGFrZW4sDQo+PiBidXQgcG9zdHMgdG8gdGhlIEpvc2h1YSB0 ZWNobmljYWwgc3VwcG9ydCBtYWlsaW5nIGxpc3QsIGFsb25nIHdpdGggdGhlDQo+PiBvY2Nhc2lv bmFsIGNvbnRyaWJ1dGlvbnMsIHN1Z2dlc3Qgc21hbGwgcmVzZWFyY2ggYW5kIGFjYWRlbWljDQo+ PmNvbW11bml0aWVzDQo+PiBzcHJlYWQgYWNyb3NzIHRoZSB3b3JsZCwgbWFueSBvZiB0aGVtIGlu IEluZGlhLg0KPj4NCj4+IER1cmluZyBpbmN1YmF0aW9uLCB3ZSB3aWxsIGV4cGxpY2l0bHkgc2Vl ayB0byBpbmNyZWFzZSBvdXIgdXNhZ2UgYWNyb3NzDQo+PiB0aGUgYm9hcmQsIGluY2x1ZGluZyBh Y2FkZW1pYyByZXNlYXJjaCwgaW5kdXN0cnksIGFuZCBvdGhlciBlbmQgdXNlcnMNCj4+IGludGVy ZXN0ZWQgaW4gc3RhdGlzdGljYWwgbWFjaGluZSB0cmFuc2xhdGlvbi4NCj4+DQo+PiA9PSBDb3Jl IERldmVsb3BlcnMgPT0NCj4+IFRoZSBjdXJyZW50IHNldCBvZiBjb3JlIGRldmVsb3BlcnMgaXMg ZmFpcmx5IHNtYWxsLCBoYXZpbmcgZmFsbGVuIHdpdGgNCj4+dGhlDQo+PiBncmFkdWF0aW9uIGZy b20gSm9obnMgSG9wa2lucyBvZiBzb21lIGNvcmUgc3R1ZGVudCBwYXJ0aWNpcGFudHMuDQo+Pkhv d2V2ZXIsDQo+PiBKb3NodWEgaXMgdXNlZCBmYWlybHkgd2lkZWx5LCBhcyBtZW50aW9uZWQgYWJv dmUsIGFuZCB0aGVyZSByZW1haW5zIGENCj4+IGNvbW1pdG1lbnQgZnJvbSB0aGUgcHJpbmNpcGFs IHJlc2VhcmNoZXIgYXQgSm9obnMgSG9wa2lucyB0byBjb250aW51ZSB0bw0KPj4gdXNlIGFuZCBk ZXZlbG9wIGl0LiBKb3NodWEgaGFzIHNlZW4gYSBudW1iZXIgb2YgbmV3IGNvbW11bml0eSBtZW1i ZXJzDQo+PiBiZWNvbWUgaW50ZXJlc3RlZCByZWNlbnRseSBkdWUgdG8gYSBwb3RlbnRpYWwgZm9y IGl0cyBwcm9qZWN0ZWQgdXNlIGluIGENCj4+IG51bWJlciBvZiBvbmdvaW5nIERBUlBBIHByb2pl Y3RzIHN1Y2ggYXMgWERBVEEgYW5kIE1lbWV4Lg0KPj4NCj4+ID09IEFsaWdubWVudCA9PQ0KPj4g Sm9zaHVhIGlzIGN1cnJlbnRseSBDb3B5cmlnaHQgKGMpIDIwMTUsIEpvaG5zIEhvcGtpbnMgVW5p dmVyc2l0eSBBbGwNCj4+IHJpZ2h0cyByZXNlcnZlZCBhbmQgbGljZW5zZWQgdW5kZXIgQlNEIDIt Y2xhdXNlIGxpY2Vuc2UuIEl0IHdvdWxkIG9mDQo+PiBjb3Vyc2UgYmUgdGhlIGludGVudGlvbiB0 byByZWxpY2Vuc2UgdGhpcyBjb2RlIHVuZGVyIEFMMi4wIHdoaWNoIHdvdWxkDQo+PiBwZXJtaXQg ZXhwYW5kZWQgYW5kIGluY3JlYXNlZCB1c2Ugb2YgdGhlIHNvZnR3YXJlIHdpdGhpbiBBcGFjaGUN Cj4+cHJvamVjdHMuDQo+PiBUaGVyZSBpcyBjdXJyZW50bHkgYW4gb25nb2luZyBlZmZvcnQgd2l0 aGluIHRoZSBBcGFjaGUgVGlrYSBjb21tdW5pdHkgdG8NCj4+IHV0aWxpemUgSm9zaHVhIHdpdGhp biBUaWth4oCZcyBUcmFuc2xhdGUgQVBJLCBzZWUNCj4+IFtbaHR0cHM6Ly9pc3N1ZXMuYXBhY2hl Lm9yZy9qaXJhL2Jyb3dzZS9USUtBLTEzNDN8VElLQS0xMzQzXV0uDQo+Pg0KPj4gPT0gS25vd24g Umlza3MgPT0NCj4+DQo+PiA9PT0gT3JwaGFuZWQgcHJvZHVjdHMgPT09DQo+PiBBdCB0aGUgbW9t ZW50LCByZWd1bGFyIGNvbnRyaWJ1dGlvbnMgYXJlIG1hZGUgYnkgYSBzaW5nbGUgY29udHJpYnV0 b3IsDQo+PnRoZQ0KPj4gbGVhZCBtYWludGFpbmVyLiBIZSAoTWF0dCBQb3N0KSBwbGFucyB0byBj b250aW51ZSBkZXZlbG9wbWVudCBmb3IgdGhlDQo+Pm5leHQNCj4+IGZldyB5ZWFycywgYnV0IGl0 IGlzIHN0aWxsIGEgc2luZ2xlIHBvaW50IG9mIGZhaWx1cmUsIHNpbmNlIHRoZSBncmFkdWF0ZQ0K Pj4gc3R1ZGVudHMgd2hvIHdvcmtlZCBvbiB0aGUgcHJvamVjdCBoYXZlIG1vdmVkIG9uIHRvIGpv YnMsIG1vc3RseSBpbg0KPj4gaW5kdXN0cnkuIEhvd2V2ZXIsIG91ciBnb2FsIGlzIHRvIGhlbHAg dGhhdCBwcm9jZXNzIGJ5IGdyb3dpbmcgdGhlDQo+PiBjb21tdW5pdHkgaW4gQXBhY2hlLCBhbmQg YXQgbGVhc3QgaW4gZ3Jvd2luZyB0aGUgY29tbXVuaXR5IHdpdGggdXNlcnMNCj4+YW5kDQo+PiBw YXJ0aWNpcGFudHMgZnJvbSBOQVNBIEpQTC4NCj4+DQo+PiA9PT0gSW5leHBlcmllbmNlIHdpdGgg T3BlbiBTb3VyY2UgPT09DQo+PiBUaGUgdGVhbSBib3RoIGF0IEpvaG5zIEhvcGtpbnMgYW5kIE5B U0EgSlBMIGhhdmUgZXhwZXJpZW5jZSB3aXRoIG1hbnkNCj4+T1NTDQo+PiBzb2Z0d2FyZSBwcm9q ZWN0cyBhdCBBcGFjaGUgYW5kIGVsc2V3aGVyZS4gV2UgdW5kZXJzdGFuZCAiaG93IGl0IHdvcmtz Ig0KPj4gaGVyZSBhdCB0aGUgZm91bmRhdGlvbi4NCj4+DQo+Pg0KPj4gPT0gUmVsYXRpb25zaGlw cyB3aXRoIE90aGVyIEFwYWNoZSBQcm9kdWN0cyA9PQ0KPj4gSm9zaHVhIGluY2x1ZGVzIGRlcGVu ZGVuY2VzIG9uIEhhZG9vcCwgYW5kIGFsc28gaXMgaW5jbHVkZWQgYXMgYSBwbHVnaW4NCj4+aW4N Cj4+IEFwYWNoZSBUaWthLiBXZSBhcmUgYWxzbyBpbnRlcmVzdGVkIGluIGNvb3JkaW5hdGluZyB3 aXRoIG90aGVyIHByb2plY3RzDQo+PiBpbmNsdWRpbmcgU3BhcmssIGFuZCBvdGhlciBwcm9qZWN0 cyBuZWVkaW5nIE1UIHNlcnZpY2VzIGZvciBsYW5ndWFnZQ0KPj4gdHJhbnNsYXRpb24uDQo+Pg0K Pj4gPT0gRGV2ZWxvcGVycyA9PQ0KPj4gSm9zaHVhIG9ubHkgaGFzIG9uZSByZWd1bGFyIGRldmVs b3BlciB3aG8gaXMgZW1wbG95ZWQgYnkgSm9obnMgSG9wa2lucw0KPj4gVW5pdmVyc2l0eS4gTkFT QSBKUEwgKE1hdHRtYW5uIGFuZCBNY0dpYmJuZXkpIGhhdmUgYmVlbiBjb250cmlidXRpbmcNCj4+ IGxhdGVseSBpbmNsdWRpbmcgYSBCcmV3IGZvcm11bGEgYW5kIG90aGVyIGNvbnRyaWJ1dGlvbnMg dG8gdGhlIHByb2plY3QNCj4+IHRocm91Z2ggdGhlIERBUlBBIFhEQVRBIGFuZCBNZW1leCBwcm9n cmFtcy4NCj4+DQo+PiA9PSBEb2N1bWVudGF0aW9uID09DQo+PiBEb2N1bWVudGF0aW9uIGFuZCBw dWJsaWNhdGlvbnMgcmVsYXRlZCB0byBKb3NodWEgY2FuIGJlIGZvdW5kIGF0DQo+PiBqb3NodWEt ZGVjb2Rlci5vcmcuIFRoZSBzb3VyY2UgZm9yIHRoZSBKb3NodWEgZG9jdW1lbnRhdGlvbiBpcyBj dXJyZW50bHkNCj4+IGhvc3RlZCBvbiBHaXRodWIgYXQNCj4+IGh0dHBzOi8vZ2l0aHViLmNvbS9q b3NodWEtZGVjb2Rlci9qb3NodWEtZGVjb2Rlci5naXRodWIuY29tDQo+Pg0KPj4gPT0gSW5pdGlh bCBTb3VyY2UgPT0NCj4+IEN1cnJlbnQgc291cmNlIHJlc2lkZXMgYXQgR2l0aHViOiBnaXRodWIu Y29tL2pvc2h1YS1kZWNvZGVyL2pvc2h1YSAodGhlDQo+PiBtYWluIGRlY29kZXIgYW5kIHRvb2xr aXQpIGFuZCBnaXRodWIuY29tL2pvc2h1YS1kZWNvZGVyL3RocmF4ICh0aGUNCj4+Z3JhbW1hcg0K Pj4gZXh0cmFjdGlvbiB0b29sKS4NCj4+DQo+PiA9PSBFeHRlcm5hbCBEZXBlbmRlbmNpZXMgPT0N Cj4+IEpvc2h1YSBoYXMgYSBudW1iZXIgb2YgZXh0ZXJuYWwgZGVwZW5kZW5jaWVzLiBPbmx5IEJl cmtlbGV5TE0gKEFwYWNoZQ0KPj4yLjApDQo+PiBhbmQgS2VuTE0gKExHUEcgMi4xKSBhcmUgcnVu LXRpbWUgZGVjb2RlciBkZXBlbmRlbmNpZXMgKG9uZSBvZiB3aGljaCBpcw0KPj4gbmVlZGVkIGZv ciB0cmFuc2xhdGluZyBzZW50ZW5jZXMgd2l0aCBwcmUtYnVpbHQgbW9kZWxzKS4gVGhlIHJlc3Qg YXJlDQo+PiBkZXBlbmRlbmNpZXMgZm9yIHRoZSBidWlsZCBzeXN0ZW0gYW5kIHBpcGVsaW5lLCB1 c2VkIGZvciBjb25zdHJ1Y3RpbmcNCj4+YW5kDQo+PiB0cmFpbmluZyBuZXcgbW9kZWxzIGZyb20g cGFyYWxsZWwgdGV4dC4NCj4+DQo+PiBBcGFjaGUgcHJvamVjdHM6DQo+PiAgKiBBbnQNCj4+ICAq IEhhZG9vcA0KPj4gICogQ29tbW9ucw0KPj4gICogTWF2ZW4NCj4+ICAqIEl2eQ0KPj4NCj4+IFRo ZXJlIGFyZSBhbHNvIGEgbnVtYmVyIG9mIG90aGVyIG9wZW4tc291cmNlIHByb2plY3RzIHdpdGgg dmFyaW91cw0KPj4gbGljZW5zZXMgdGhhdCB0aGUgcHJvamVjdCBkZXBlbmRzIG9uIGJvdGggZHlu YW1pY2FsbHkgKHJ1bnRpbWUpLCBhbmQNCj4+IHN0YXRpY2FsbHkuDQo+Pg0KPj4gPT09IEdOVSBH UEwgMiA9PT0NCj4+ICAqIEJlcmtlbGV5IEFsaWduZXI6IGh0dHBzOi8vY29kZS5nb29nbGUuY29t L3AvYmVya2VsZXlhbGlnbmVyLw0KPj4NCj4+ID09PSBMR1BHIDIuMSA9PT0NCj4+ICAqIEtlbkxN OiBnaXRodWIuY29tL2twdS9rZW5sbQ0KPj4NCj4+ID09PSBBcGFjaGUgMi4wID09PQ0KPj4gICog QmVya2VsZXlMTTogaHR0cHM6Ly9jb2RlLmdvb2dsZS5jb20vcC9iZXJrZWxleWxtLw0KPj4NCj4+ ID09PSBHTlUgR1BMID09PQ0KPj4gICogR0laQSsrOiBodHRwOi8vd3d3LnN0YXRtdC5vcmcvbW9z ZXMvZ2l6YS9HSVpBKysuaHRtbA0KPj4NCj4+ID09IFJlcXVpcmVkIFJlc291cmNlcyA9PQ0KPj4g ICogTWFpbGluZyBMaXN0cw0KPj4gICAgKiBwcml2YXRlQGpvc2h1YS5pbmN1YmF0b3IuYXBhY2hl Lm9yZw0KPj4gICAgKiBkZXZAam9zaHVhLmluY3ViYXRvci5hcGFjaGUub3JnDQo+PiAgICAqIGNv bW1pdHNAam9zaHVhLmluY3ViYXRvci5hcGFjaGUub3JnDQo+Pg0KPj4gICogR2l0IFJlcG9zDQo+ PiAgICAqIGh0dHBzOi8vZ2l0LXdpcC11cy5hcGFjaGUub3JnL3JlcG9zL2FzZi9qb3NodWEuZ2l0 DQo+Pg0KPj4gICogSXNzdWUgVHJhY2tpbmcNCj4+ICAgICogSklSQSBKb3NodWEgKEpPU0hVQSkN Cj4+DQo+PiAgKiBDb250aW51b3VzIEludGVncmF0aW9uDQo+PiAgICAqIEplbmtpbnMgYnVpbGRz IG9uIGh0dHBzOi8vYnVpbGRzLmFwYWNoZS5vcmcvDQo+Pg0KPj4gICogV2ViDQo+PiAgICAqIGh0 dHA6Ly9qb3NodWEuaW5jdWJhdG9yLmFwYWNoZS5vcmcvDQo+PiAgICAqIHdpa2kgYXQgaHR0cDov L2N3aWtpLmFwYWNoZS5vcmcNCj4+DQo+PiA9PSBJbml0aWFsIENvbW1pdHRlcnMgPT0NCj4+IFRo ZSBmb2xsb3dpbmcgaXMgYSBsaXN0IG9mIHRoZSBwbGFubmVkIGluaXRpYWwgQXBhY2hlIGNvbW1p dHRlcnMgKHRoZQ0KPj4gYWN0aXZlIHN1YnNldCBvZiB0aGUgY29tbWl0dGVycyBmb3IgdGhlIGN1 cnJlbnQgcmVwb3NpdG9yeSBvbiBHaXRodWIpLg0KPj4NCj4+ICAqIE1hdHQgUG9zdCAocG9zdEBj cy5qaHUuZWR1KQ0KPj4gICogTGV3aXMgSm9obiBNY0dpYmJuZXkgKGxld2lzbWNAYXBhY2hlLm9y ZykNCj4+ICAqIENocmlzIE1hdHRtYW5uIChtYXR0bWFubkBhcGFjaGUub3JnKQ0KPj4NCj4+ID09 IEFmZmlsaWF0aW9ucyA9PQ0KPj4NCj4+ICAqIEpvaG5zIEhvcGtpbnMgVW5pdmVyc2l0eQ0KPj4g ICAgKiBNYXR0IFBvc3QNCj4+DQo+PiAgKiBOQVNBIEpQTA0KPj4gICAgKiBDaHJpcyBNYXR0bWFu bg0KPj4gICAgKiBMZXdpcyBKb2huIE1jR2liYm5leQ0KPj4NCj4+DQo+PiA9PSBTcG9uc29ycyA9 PQ0KPj4gPT09IENoYW1waW9uID09PQ0KPj4gICogQ2hyaXMgTWF0dG1hbm4gKE5BU0EvSlBMKQ0K Pj4NCj4+ID09PSBOb21pbmF0ZWQgTWVudG9ycyA9PT0NCj4+ICAqIFBhdWwgUmFtaXJleg0KPj4g ICogTGV3aXMgSm9obiBNY0dpYmJuZXkNCj4+ICAqIENocmlzIE1hdHRtYW5uDQo+Pg0KPj4gPT0g U3BvbnNvcmluZyBFbnRpdHkgPT0NCj4+IFRoZSBBcGFjaGUgSW5jdWJhdG9yDQo+Pg0KPj4NCj4+ DQo+Pg0KPj4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrDQo+PiBDaHJpcyBNYXR0bWFubiwgUGguRC4NCj4+IENoaWVmIEFy Y2hpdGVjdA0KPj4gSW5zdHJ1bWVudCBTb2Z0d2FyZSBhbmQgU2NpZW5jZSBEYXRhIFN5c3RlbXMg U2VjdGlvbiAoMzk4KQ0KPj4gTkFTQSBKZXQgUHJvcHVsc2lvbiBMYWJvcmF0b3J5IFBhc2FkZW5h LCBDQSA5MTEwOSBVU0ENCj4+IE9mZmljZTogMTY4LTUxOSwgTWFpbHN0b3A6IDE2OC01MjcNCj4+ IEVtYWlsOiBjaHJpcy5hLm1hdHRtYW5uQG5hc2EuZ292DQo+PiBXV1c6ICBodHRwOi8vc3Vuc2V0 LnVzYy5lZHUvfm1hdHRtYW5uLw0KPj4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrDQo+PiBBZGp1bmN0IEFzc29jaWF0ZSBQ cm9mZXNzb3IsIENvbXB1dGVyIFNjaWVuY2UgRGVwYXJ0bWVudA0KPj4gVW5pdmVyc2l0eSBvZiBT b3V0aGVybiBDYWxpZm9ybmlhLCBMb3MgQW5nZWxlcywgQ0EgOTAwODkgVVNBDQo+PiArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysNCj4+DQo+Pg0KPj4NCj4+DQoNCg== DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0NClRvIHVuc3Vic2NyaWJlLCBlLW1haWw6IGdlbmVyYWwtdW5z dWJzY3JpYmVAaW5jdWJhdG9yLmFwYWNoZS5vcmcNCkZvciBhZGRpdGlvbmFsIGNvbW1hbmRz LCBlLW1haWw6IGdlbmVyYWwtaGVscEBpbmN1YmF0b3IuYXBhY2hlLm9yZw0K