From hdfs-dev-return-33150-archive-asf-public=cust-asf.ponee.io@hadoop.apache.org Thu Jul 5 23:15:27 2018 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx-eu-01.ponee.io (Postfix) with SMTP id EF3CC180657 for ; Thu, 5 Jul 2018 23:15:26 +0200 (CEST) Received: (qmail 47985 invoked by uid 500); 5 Jul 2018 21:15:25 -0000 Mailing-List: contact hdfs-dev-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list hdfs-dev@hadoop.apache.org Received: (qmail 46930 invoked by uid 99); 5 Jul 2018 21:15:24 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 05 Jul 2018 21:15:24 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id 5B7751A18AB for ; Thu, 5 Jul 2018 21:15:24 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 0.099 X-Spam-Level: X-Spam-Status: No, score=0.099 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id mE1h9mx-lNIQ for ; Thu, 5 Jul 2018 21:15:22 +0000 (UTC) Received: from us-smtp-delivery-102.mimecast.com (us-smtp-delivery-102.mimecast.com [216.205.24.102]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTPS id E01525F434 for ; Thu, 5 Jul 2018 21:15:21 +0000 (UTC) Received: from MBX080-W5-CO-5.exch080.serverpod.net (out.exch080.serverdata.net [199.193.207.86]) (Using TLS) by us-smtp-1.mimecast.com with ESMTP id us-mta-35-nrJtn2y6MfWSJb5KQNT7-w-1; Thu, 05 Jul 2018 17:15:19 -0400 Received: from MBX080-W2-CO-2.exch080.serverpod.net (10.224.117.142) by MBX080-W2-CO-3.exch080.serverpod.net (10.224.117.144) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Thu, 5 Jul 2018 14:15:18 -0700 Received: from MBX080-W2-CO-2.exch080.serverpod.net ([10.224.117.142]) by MBX080-W2-CO-2.exch080.serverpod.net ([10.224.117.142]) with mapi id 15.00.1367.000; Thu, 5 Jul 2018 14:15:18 -0700 From: Anu Engineer To: Sean Busbey , Hdfs-dev , Hadoop Common , "yarn-dev@hadoop.apache.org" Subject: Re: [DISCUSS]: securing ASF Hadoop releases out of the box Thread-Topic: [DISCUSS]: securing ASF Hadoop releases out of the box Thread-Index: AQHUE6/qFtZncyGK5k2hY6CjOWCMi6SBNoWA///AxICAAIKggIAADDAA//+dEoA= Date: Thu, 5 Jul 2018 21:15:18 +0000 Message-ID: <6EA13DEC-299D-4623-A53E-DAD7035D8B14@hortonworks.com> References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-messagesentrepresentingtype: 1 x-ms-exchange-transport-fromentityheader: Hosted x-source-routing-agent: Processed Content-ID: MIME-Version: 1.0 X-MC-Unique: nrJtn2y6MfWSJb5KQNT7-w-1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: base64 KzEsIG9uIHRoZSBOb24tUm91dGFibGUgSWRlYS4gV2UgbGlrZSBpdCBzbyBtdWNoIHRoYXQgd2Ug YWRkZWQgaXQgdG8gdGhlIE96b25lIHJvYWRtYXAuDQpodHRwczovL2lzc3Vlcy5hcGFjaGUub3Jn L2ppcmEvYnJvd3NlL0hERFMtMjMxDQoNCklmIHRoZXJlIGlzIGNvbnNlbnN1cyBvbiBicmluZ2lu ZyB0aGlzIHRvIEhhZG9vcCBpbiBnZW5lcmFsLCB3ZSBjYW4gYnVpbGQgdGhpcyBmZWF0dXJlIGlu IGNvbW1vbi4NCg0KLS1BbnUNCg0KDQpPbiA3LzUvMTgsIDE6MDkgUE0sICJTZWFuIEJ1c2JleSIg PGJ1c2JleUBjbG91ZGVyYS5jb20uSU5WQUxJRD4gd3JvdGU6DQoNCiAgICBJIHJlYWxseSwgcmVh bGx5IGxpa2UgdGhlIGFwcHJvYWNoIG9mIGRlZmF1bHRpbmcgdG8gb25seSBub24tcm91dGVhYmxl DQogICAgSVBzIGFsbG93ZWQuIGl0IHNlZW1zIGxpa2UgYSBnb29kIHRyYWRlb2ZmIGZvciBjb21w bGV4aXR5IG9mDQogICAgaW1wbGVtZW50YXRpb24sIHBhaW4gdG8gcmVjb25maWd1cmUsIGFuZCBs ZXZlbCBvZiBwcm90ZWN0aW9uLg0KICAgIA0KICAgIE9uIFRodSwgSnVsIDUsIDIwMTggYXQgMjoy NSBQTSwgVG9kZCBMaXBjb24gPHRvZGRAY2xvdWRlcmEuY29tLmludmFsaWQ+IHdyb3RlOg0KICAg ID4gVGhlIGFwcHJvYWNoIHdlIHRvb2sgaW4gQXBhY2hlIEt1ZHUgaXMgdGhhdCwgaWYgS2VyYmVy b3MgaGFzbid0IGJlZW4NCiAgICA+IGVuYWJsZWQsIHdlIGRlZmF1bHQgdG8gYSB3aGl0ZWxpc3Qg b2Ygc3VibmV0cy4gVGhlIGRlZmF1bHQgd2hpdGVsaXN0IGlzDQogICAgPiAxMjcuMC4wLjAvOCwx MC4wLjAuMC84LDE3Mi4xNi4wLjAvMTIsMTkyLjE2OC4wLjAvMTYsMTY5LjI1NC4wLjAvMTYgd2hp Y2gNCiAgICA+IG1hdGNoZXMgdGhlIElBTkEgIm5vbi1yb3V0ZWFibGUgSVAiIHN1Ym5ldCBsaXN0 Lg0KICAgID4NCiAgICA+IEluIG90aGVyIHdvcmRzLCBvdXQtb2YtdGhlLWJveCwgeW91IGdldCBh IGRlcGxveW1lbnQgdGhhdCB3b3JrcyBmaW5lIHdpdGhpbg0KICAgID4gYSB0eXBpY2FsIExBTiBl bnZpcm9ubWVudCwgYnV0IHdvbid0IGFsbG93IHNvbWUgcmVtb3RlIGhhY2tlciB0byBsb2NhdGUN CiAgICA+IHlvdXIgY2x1c3RlciBhbmQgYWNjZXNzIHlvdXIgZGF0YS4gV2UgdGhvdWdodCB0aGlz IHdhcyBhIG5pY2UgYmFsYW5jZQ0KICAgID4gYmV0d2VlbiAid29ya3Mgb3V0IG9mIHRoZSBib3gg d2l0aG91dCBsb3RzIG9mIGNvbmZpZ3VyYXRpb24iIGFuZCAiZGVjZW50DQogICAgPiBzZWN1cml0 eSIuIEluIG15IG9waW5pb24gYSAibG9jYWxob3N0LW9ubHkgYnkgZGVmYXVsdCIgd291bGQgYmUg YmUgb3Zlcmx5DQogICAgPiByZXN0cmljdGl2ZSBzaW5jZSBJJ2QgdXN1YWxseSBiZSBkZXBsb3lp bmcgb24gc29tZSBkYXRhY2VudGVyIG9yIEVDMg0KICAgID4gbWFjaGluZSBhbmQgdGhlbiB0cnlp bmcgdG8gYWNjZXNzIGl0IGZyb20gYSBjbGllbnQgb24gbXkgbGFwdG9wLg0KICAgID4NCiAgICA+ IFdlIHJlbGVhc2VkIHRoaXMgZmlyc3QgYSBiaXQgb3ZlciBhIHllYXIgYWdvIGlmIG15IG1lbW9y eSBzZXJ2ZXMgbWUsIGFuZA0KICAgID4gd2UndmUgaGFkIHJlbGF0aXZlbHkgZmV3IGNvbXBsYWlu dHMgb3IgcXVlc3Rpb25zIGFib3V0IGl0LiBXZSBhbHNvIG1hZGUNCiAgICA+IHN1cmUgdGhhdCB0 aGUgZXJyb3IgbWVzc2FnZSB0aGF0IGNvbWVzIGJhY2sgdG8gY2xpZW50cyBpcyBwcmV0dHkNCiAg ICA+IHJlYXNvbmFibGUsIGluZGljYXRpbmcgdGhlIHNwZWNpZmljIGNvbmZpZ3VyYXRpb24gdGhh dCBpcyBkaXNhbGxvd2luZw0KICAgID4gYWNjZXNzLCBzbyBpZiBwZW9wbGUgaGl0IHRoZSBpc3N1 ZSBvbiB1cGdyYWRlIHRoZXkgaGFkIGEgY2xlYXIgaWRlYSB3aGF0IGlzDQogICAgPiBnb2luZyBv bi4NCiAgICA+DQogICAgPiBPZiBjb3Vyc2UgaXQncyBub3QgZm9vbHByb29mLCBzaW5jZSBhcyBF cmljIHNheXMsIHlvdSdyZSBzdGlsbCBsaWtlbHkgb3Blbg0KICAgID4gdG8gdGhlIGVudGlyZXR5 IG9mIHlvdXIgY29ycG9yYXRpb24sIGFuZCB5b3UgbWF5IG5vdCB3YW50IHRoYXQsIGJ1dCBhcyBo ZQ0KICAgID4gYWxzbyBwb2ludGVkIG91dCwgdGhhdCBtaWdodCBiZSB0cnVlIGV2ZW4gaWYgeW91 IGVuYWJsZSBLZXJiZXJvcw0KICAgID4gYXV0aGVudGljYXRpb24uDQogICAgPg0KICAgID4gLVRv ZGQNCiAgICA+DQogICAgPiBPbiBUaHUsIEp1bCA1LCAyMDE4IGF0IDExOjM4IEFNLCBFcmljIFlh bmcgPGV5YW5nQGhvcnRvbndvcmtzLmNvbT4gd3JvdGU6DQogICAgPg0KICAgID4+IEhhZG9vcCBk ZWZhdWx0IGNvbmZpZ3VyYXRpb24gYWltZWQgZm9yIHVzZXIgZnJpZW5kbGluZXNzIHRvIGluY3Jl YXNlDQogICAgPj4gYWRvcHRpb24sIGFuZCBzZWN1cml0eSBjYW4gYmUgZW5hYmxlZCBvbmUgYnkg b25lLiAgVGhpcyBhcHByb2FjaCBpcyBtb3N0DQogICAgPj4gcHJvYmxlbWF0aWMgdG8gc2VjdXJp dHkgYmVjYXVzZSBzeXN0ZW0gY2FuIGJlIGNvbXByb21pc2VkIGJlZm9yZSBhbGwNCiAgICA+PiBz ZWN1cml0eSBmZWF0dXJlcyBhcmUgdHVybmVkIG9uLg0KICAgID4+IExhcnJ5J3MgcHJvcG9zYWwg d2lsbCBhZGQgc29tZSBzYWZldHkgdG8gcmVtaW5kIHN5c3RlbSBhZG1pbiBpZiBzZWN1cml0eQ0K ICAgID4+IGlzIGRpc2FibGVkLiAgSG93ZXZlciwgcmVkdWNpbmcgdGhlIG51bWJlciBvZiBrbm9i cyBvbiBzZWN1cml0eSBjb25maWdzIGFyZQ0KICAgID4+IGxpa2VseSByZXF1aXJlZCB0byBtYWtl IHRoZSBzeXN0ZW0gc2VjdXJlIGZvciB0aGUgYmFubmVyIGlkZWEgdG8gd29yaw0KICAgID4+IHdp dGhvdXQgd3JpdGluZyB0b28gbXVjaCBndWVzc2luZyBsb2dpYyB0byBkZXRlcm1pbmUgaWYgVUkg aXMgc2VjdXJlZC4NCiAgICA+PiBQZW5ldHJhdGlvbiB0ZXN0IGNhbiBwcm92aWRlIGJldHRlciBp bnNpZ2h0cyBvZiB3aGF0IGhhc24ndCBiZWVuIHNlY3VyZWQgdG8NCiAgICA+PiBpbXByb3ZlIHRo ZSBuZXh0IHJlbGVhc2UuICBUaGFua2Z1bGx5IG1vc3QgSGFkb29wIHZlbmRvcnMgaGF2ZSBkb25l IHRoaXMNCiAgICA+PiB3b3JrIHBlcmlvZGljYWxseSB0byBoZWxwIHRoZSBjb21tdW5pdHkgc2Vj dXJlIEhhZG9vcC4NCiAgICA+Pg0KICAgID4+IFRoZXJlIGFyZSBwbGVudHkgb2YgY29tcGFueSBh ZHZlcnRpc2VkIGlmIHlvdSB3YW50IHNlY3VyaXR5LCB1c2UNCiAgICA+PiBLZXJiZXJvcy4gIFRo aXMgc3RhdGVtZW50IGlzIG5vdCBlbnRpcmVseSB0cnVlLiAgS2VyYmVyb3MgbWFrZXMgc2VjdXJp dHkNCiAgICA+PiBtb3JlIGRpZmZpY3VsdCB0byBjcmFjayBmb3IgZXh0ZXJuYWwgcGFydGllcywg YnV0IGl0IHNob3VsZG4ndCBiZSB0aGUgb25seQ0KICAgID4+IG1ldGhvZCB0byBzZWN1cmUgSGFk b29wLiAgV2hlbiB0aGUgS2VyYmVyb3MgZW52aXJvbm1lbnQgaXMgbGFyZ2VyIHRoYW4NCiAgICA+ PiBIYWRvb3AgY2x1c3RlciwgYW55b25lIHdpdGhpbiBLZXJiZXJvcyBlbnZpcm9ubWVudCBjYW4g YWNjZXNzIEhhZG9vcA0KICAgID4+IGNsdXN0ZXIgZnJlZWx5IHdpdGhvdXQgcmVzdHJpY3Rpb24u ICBJbiBsYXJnZSBzY2FsZSBlbnRlcnByaXNlcyBvciBzb21lDQogICAgPj4gY2xvdWQgdmVuZG9y cyB0aGF0IHN1YmxldCB0aGVpciByZXNvdXJjZXMsIHRoaXMgbWlnaHQgbm90IGJlIGFjY2VwdGFi bGUuDQogICAgPj4NCiAgICA+PiBGcm9tIG15IHBvaW50IG9mIHZpZXcsIGEgc2VjdXJlIEhhZG9v cCByZWxlYXNlIG11c3QgZGVmYXVsdCBhbGwgc2V0dGluZ3MNCiAgICA+PiB0byBsb2NhbGhvc3Qg b25seSBhbmQgYWxsb3cgdXNlcnMgdG8gYWRkIG1vcmUgaG9zdHMgdGhyb3VnaCBhdXRob3JpemVk DQogICAgPj4gd2hpdGUgbGlzdCBvZiBzZXJ2ZXJzLiAgVGhpcyB3aWxsIGtlZXAgc2VjdXJpdHkg cGVyaW1ldGVyIGluIGNoZWNrLiAgQWxsDQogICAgPj4gd2lsZCBjYXJkIEFDTHMgd2lsbCBuZWVk IHRvIGJlIHJlbW92ZWQgb3IgZGVmYXVsdCB0byBjdXJyZW50IHVzZXIvY3VycmVudA0KICAgID4+ IGhvc3Qgb25seS4gIFByb3h5IHVzZXIvaG9zdCBBQ0wgbGlzdCBtdXN0IGJlIGVuZm9yY2VkIG9u IGh0dHAgY2hhbm5lbHMuDQogICAgPj4gVGhpcyBpcyBiYXNpY2FsbHkgcmVhbGlnbmluZyB0aGUg ZGVmYXVsdCBjb25maWd1cmF0aW9uIHRvIHNpbmdsZSBub2RlDQogICAgPj4gY2x1c3RlciBvciBm aXJld2FsbGVkIGNvbmZpZ3VyYXRpb24uDQogICAgPj4NCiAgICA+PiBSZWdhcmRzLA0KICAgID4+ IEVyaWMNCiAgICA+Pg0KICAgID4+IE9uIDcvNS8xOCwgODoyNCBBTSwgImxhcnJ5IG1jY2F5IiA8 bGFycnkubWNjYXlAZ21haWwuY29tPiB3cm90ZToNCiAgICA+Pg0KICAgID4+ICAgICBIaSBTdGV2 ZSAtDQogICAgPj4NCiAgICA+PiAgICAgVGhpcyBpcyBhIGxvbmcgb3ZlcmR1ZSBESVNDVVNTIHRo cmVhZCENCiAgICA+Pg0KICAgID4+ICAgICBQZXJoYXBzIHRoZSBVSXMgY2FuIHZlcnkgdmlzaWJs eSBzdGF0ZSAoaW4gcmVkKSAiV0FSTklORzogVU5TRUNVUkVEIFVJDQogICAgPj4gICAgIEFDQ0VT UyAtIE9QRU4gVE8gQ09NUFJPTUlTRSIgLSBtYXliZSBldmVuIGZvcmNlIGEgY2xpY2sgdGhyb3Vn aCB0aGUNCiAgICA+PiB3YXJuaW5nDQogICAgPj4gICAgIHRvIGdldCB0byB0aGUgcGFnZSBsaWtl IFNTTCBleGNlcHRpb25zIGluIHRoZSBicm93c2VyIGRvPw0KICAgID4+ICAgICBTaW1pbGFyIHRh Y3RpYyBmb3IgVUkgYWNjZXNzIHdpdGhvdXQgU1NMPw0KICAgID4+ICAgICBBIG5ldyBBdXRoZW50 aWNhdGlvbkZpbHRlciBjYW4gYmUgYWRkZWQgdG8gdGhlIGZpbHRlciBjaGFpbnMgdGhhdA0KICAg ID4+IGJsb2Nrcw0KICAgID4+ICAgICBBUEkgY2FsbHMgdW5sZXNzIGV4cGxpY2l0bHkgY29uZmln dXJlZCB0byBiZSBvcGVuIGFuZCBvYnZpb3VzIGxvZyBhDQogICAgPj4gc2ltaWxhcg0KICAgID4+ ICAgICBtZXNzYWdlPw0KICAgID4+DQogICAgPj4gICAgIHRoYW5rcywNCiAgICA+Pg0KICAgID4+ ICAgICAtLWxhcnJ5DQogICAgPj4NCiAgICA+Pg0KICAgID4+DQogICAgPj4NCiAgICA+PiAgICAg T24gV2VkLCBKdWwgNCwgMjAxOCBhdCAxMTo1OCBBTSwgU3RldmUgTG91Z2hyYW4gPA0KICAgID4+ IHN0ZXZlbEBob3J0b253b3Jrcy5jb20+DQogICAgPj4gICAgIHdyb3RlOg0KICAgID4+DQogICAg Pj4gICAgID4gQml0Y29pbnMgYXJlIHByb2ZpdGFibGUgZW5vdWdoIHRvIGp1c3RpZnkgd3JpdGlu ZyBtYWx3YXJlIHRvIHJ1biBvbg0KICAgID4+IEhhZG9vcA0KICAgID4+ICAgICA+IGNsdXN0ZXJz ICYgc2NoZWR1bGUgbWluaW5nIGpvYnM6IHRoZXJlIGhhdmUgYmVlbiBhIGNvdXBsZSBvZg0KICAg ID4+IGluY2lkZW50cyBvZg0KICAgID4+ICAgICA+IHRoaXMgaW4gdGhlIHdpbGQsIGdlbmVyYWxs eSBnb2luZyBpbiB0aHJvdWdoIG5vIHNlY3VyaXR5LCB3ZWxsIGtub3duDQogICAgPj4gICAgID4g cGFzc3dvcmRzLCBvcGVuIHBvcnRzLg0KICAgID4+ICAgICA+DQogICAgPj4gICAgID4gVmVuZG9y cyBvZiBIYWRvb3AtcmVsYXRlZCBwcm9kdWN0cyBnZXQgdG8gZGVhbCB3aXRoIHRoZWlyIGxvY2tk b3duDQogICAgPj4gICAgID4gdGhlbXNlbHZlcywgd2hpY2ggdGhleSBvZnRlbiBkbyBieSBpbnN0 YWxsaW5nIGtlcmJlcm9zIGZyb20gdGhlDQogICAgPj4gb3V0c2V0LA0KICAgID4+ICAgICA+IG1h a2luZyB1c2VycyBtYWtlIHVwIHRoZWlyIG93biBwYXNzd29yZCBmb3IgYWRtaW4gYWNjb3VudHMs IGV0Yy4NCiAgICA+PiAgICAgPg0KICAgID4+ICAgICA+IFRoZSBBU0YgcmVsZWFzZXMgdGhvdWdo OiB3ZSBqdXN0IHByb3ZpZGUgc29tZXRoaW5nIGluc2VjdXJlIG91dCB0aGUNCiAgICA+PiBib3gN CiAgICA+PiAgICAgPiBhbmQgc29tZSBkb2NzIHNheWluZyAidXNlIGtlcmJlcm9zIGlmIHlvdSB3 YW50IHNlY3VyaXR5Ig0KICAgID4+ICAgICA+DQogICAgPj4gICAgID4gV2hhdCB3ZSBjYW4gZG8g aGVyZT8NCiAgICA+PiAgICAgPg0KICAgID4+ICAgICA+IFNvbWUgdGhpbmdzIHRvIHRoaW5rIGFi b3V0DQogICAgPj4gICAgID4NCiAgICA+PiAgICAgPiAqIGRvY3MgZXhwbGFpbmluZyBJTiBDQVBJ VEFMIExFVFRFUlMgd2h5IHlvdSBuZWVkIHRvIGxvY2sgZG93biB5b3VyDQogICAgPj4gICAgID4g Y2x1c3RlciB0byBhIHByaXZhdGUgc3VibmV0IG9yIHVzZSBLZXJiZXJvcw0KICAgID4+ICAgICA+ ICogQW55dGhpbmcgd2hpY2ggY2FuIGJlIGRvbmUgdG8gbWFrZSBLZXJiZXJvcyBlYXNpZXIgKD8p LiBJIHNlZQ0KICAgID4+IHRoZXJlIGFyZQ0KICAgID4+ICAgICA+IHNvbWUgb3VzdGFuZGluZyBw YXRjaGVzIGZvciBIQURPT1AtMTI2NDkgd2hpY2ggbmVlZCByZXZpZXcsIGJ1dCB3aGF0DQogICAg Pj4gZWxzZT8NCiAgICA+PiAgICAgPg0KICAgID4+ICAgICA+IENvdWxkIHdlIGhhdmUgSGFkb29w IGRldGVybWluZSB3aGVuIGl0J3MgY29taW5nIHVwIG9uIGFuIG9wZW4NCiAgICA+PiBuZXR3b3Jr IGFuZA0KICAgID4+ICAgICA+IHN0YXJ0IHdhcm5pbmc/IEFuZCBob3c/DQogICAgPj4gICAgID4N CiAgICA+PiAgICAgPiBBdCB0aGUgdmVyeSBsZWFzdCwgc2luZ2xlIG5vZGUgaGFkb29wIHNob3Vs ZCBiZSBsb2NrZWQgZG93bi4gWW91DQogICAgPj4gc2hvdWxkbid0DQogICAgPj4gICAgID4gaGF2 ZSB0byBicmluZyB1cCBrZXJiZXJvcyB0byBydW4gaXQgbGlrZSB0aGF0LiBBbmQgZm9yIG1vcmUN CiAgICA+PiBzb3BoaXN0aWNhdGVkDQogICAgPj4gICAgID4gbXVsdGlub2RlIGRlcGxveW1lbnRz LCBzaG91bGQgdGhlIHNjcmlwdHMgcmVmdXNlIHRvIHdvcmsgd2l0aG91dA0KICAgID4+IGtlcmJl cm9zDQogICAgPj4gICAgID4gdW5sZXNzIHlvdSBwYXNzIGluIHNvbWUgYXJndW1lbnQgbGlrZSAi LS1EaW5zZWN1cmUtY2x1c3RlcnMtDQogICAgPj4gcGVybWl0dGVkIg0KICAgID4+ICAgICA+DQog ICAgPj4gICAgID4gQW55IG90aGVyIGlkZWFzPw0KICAgID4+ICAgICA+DQogICAgPj4gICAgID4N CiAgICA+PiAgICAgPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0NCiAgICA+PiAtLS0tLS0tLS0NCiAgICA+PiAgICAgPiBUbyB1bnN1 YnNjcmliZSwgZS1tYWlsOiBjb21tb24tZGV2LXVuc3Vic2NyaWJlQGhhZG9vcC5hcGFjaGUub3Jn DQogICAgPj4gICAgID4gRm9yIGFkZGl0aW9uYWwgY29tbWFuZHMsIGUtbWFpbDogY29tbW9uLWRl di1oZWxwQGhhZG9vcC5hcGFjaGUub3JnDQogICAgPj4gICAgID4NCiAgICA+PiAgICAgPg0KICAg ID4+DQogICAgPj4NCiAgICA+Pg0KICAgID4NCiAgICA+DQogICAgPiAtLQ0KICAgID4gVG9kZCBM aXBjb24NCiAgICA+IFNvZnR3YXJlIEVuZ2luZWVyLCBDbG91ZGVyYQ0KICAgIA0KICAgIA0KICAg IA0KICAgIC0tIA0KICAgIGJ1c2JleQ0KICAgIA0KICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KICAgIFRvIHVu c3Vic2NyaWJlLCBlLW1haWw6IGNvbW1vbi1kZXYtdW5zdWJzY3JpYmVAaGFkb29wLmFwYWNoZS5v cmcNCiAgICBGb3IgYWRkaXRpb25hbCBjb21tYW5kcywgZS1tYWlsOiBjb21tb24tZGV2LWhlbHBA aGFkb29wLmFwYWNoZS5vcmcNCiAgICANCiAgICANCg0K DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0NClRvIHVuc3Vic2NyaWJlLCBlLW1haWw6IGhkZnMtZGV2LXVu c3Vic2NyaWJlQGhhZG9vcC5hcGFjaGUub3JnDQpGb3IgYWRkaXRpb25hbCBjb21tYW5kcywg ZS1tYWlsOiBoZGZzLWRldi1oZWxwQGhhZG9vcC5hcGFjaGUub3JnDQoN