From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id 819C812A8 for ; Thu, 7 May 2015 05:37:35 +0200 (CEST) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga103.jf.intel.com with ESMTP; 06 May 2015 20:37:35 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.13,382,1427785200"; d="scan'208";a="725059810" Received: from orsmsx110.amr.corp.intel.com ([10.22.240.8]) by orsmga002.jf.intel.com with ESMTP; 06 May 2015 20:37:34 -0700 Received: from orsmsx153.amr.corp.intel.com (10.22.226.247) by ORSMSX110.amr.corp.intel.com (10.22.240.8) with Microsoft SMTP Server (TLS) id 14.3.224.2; Wed, 6 May 2015 20:37:34 -0700 Received: from fmsmsx107.amr.corp.intel.com (10.18.124.205) by ORSMSX153.amr.corp.intel.com (10.22.226.247) with Microsoft SMTP Server (TLS) id 14.3.224.2; Wed, 6 May 2015 20:37:33 -0700 Received: from fmsmsx113.amr.corp.intel.com ([169.254.13.26]) by fmsmsx107.amr.corp.intel.com ([169.254.6.205]) with mapi id 14.03.0224.002; Wed, 6 May 2015 20:37:33 -0700 From: "Wiles, Keith" To: "Wiles, Keith" , "dev@dpdk.org" Thread-Topic: [dpdk-dev] GitHub sandbox for the DPDK community Thread-Index: AQHQhCdlg1RCyqklQ0KpSAVz9bdNYJ1v7uwAgAAH2gD//6+NAIAAP6gA Date: Thu, 7 May 2015 03:37:33 +0000 Message-ID: References: <3874506.o2COu6VmK6@xps13> <554A89A0.1080906@bisdn.de> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.254.52.153] Content-Type: text/plain; charset="euc-kr" Content-ID: <3F4586F0589566449D4CB390D434764A@intel.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [dpdk-dev] GitHub sandbox for the DPDK community X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 May 2015 03:37:36 -0000 SSBkaWQgbm90IGZpbmlzaCBhIHRob3VnaHQgZm9yIHNvbWUgcmVhc29uLg0KDQpPbiA1LzYvMTUs IDQ6NDkgUE0sICJXaWxlcywgS2VpdGgiIDxrZWl0aC53aWxlc0BpbnRlbC5jb20+IHdyb3RlOg0K DQo+SGkgVGhvbWFzLCAoc29ycnkgYWJvdXQgdGhlIGxlbmd0aCkNCj4NCj5PbiA1LzYvMTUsIDI6 MzcgUE0sICJNYXJjIFN1bmUiIDxtYXJjLnN1bmVAYmlzZG4uZGU+IHdyb3RlOg0KPg0KPj4NCj4+ DQo+Pk9uIDA2LzA1LzE1IDIzOjA5LCBUaG9tYXMgTW9uamFsb24gd3JvdGU6DQo+Pj4gSGVsbG8g ZXZlcnlvbmUsDQo+Pj4NCj4+PiBJJ20gYmFjayBmcm9tIG1pbmktaG9saWRheXMgYW5kIGl0J3Mg Z29vZCB0byBzZWUgdGhhdCB0aGVyZSBhcmUNCj4+PiBhIGxvdCBvZiBwcm9wb3NhbHMgdHJ5aW5n IHRvIGltcHJvdmUgb3VyIHdvcmtmbG93Lg0KPj4+IE1vc3Qgb2YgdGhlIGRpc2N1c3Npb25zIGFy ZSBmb2N1cyBvbiBwcm9jZXNzIGFuZCB0b29scywgaG93ZXZlcg0KPj4+IHdlIG11c3Qga2VlcCBp biBtaW5kIHRoYXQgc3VibWl0dGluZyBjbGVhbiBwYXRjaGVzIGFuZCBkb2luZyBtb3JlDQo+Pj4g cmV2aWV3cyBjYW4gZ3JlYXRseSBpbXByb3ZlIHRoZSBsaWZlIG9mIHRoZSBwcm9qZWN0Lg0KPj4+ IFRoZSBkZWJhdGUgZm9yL2FnYWluc3QgR2l0SHViIHJhaXNlcyBzZXZlcmFsIGludGVyZXN0aW5n IHF1ZXN0aW9ucw0KPj4+IGFib3V0IGRpZmZlcmVudCBwYXJ0cyBvZiB0aGUgd29ya2Zsb3cgd2hp Y2ggZGVzZXJ2ZXMgc29tZSBkZXRhaWxlZA0KPj4+IGV4cGxhbmF0aW9ucyAoYW5kIGNvbnRleHQg cmVtaW5kZXJzKS4NCj4+Pg0KPj4+IFByZXZpb3VzbHksIHRoZXJlIHdhcyBhIGRpc2N1c3Npb24g YWJvdXQgdGhlIGNvbnRyaWJ1dGlvbiBydWxlcyBhbmQNCj4+PnRvb2xzOg0KPj4+IAlodHRwOi8v ZHBkay5vcmcvbWwvYXJjaGl2ZXMvZGV2LzIwMTUtTWFyY2gvMDE1NDk5Lmh0bWwNCj4+PiBUaGVu IGEgY29kaW5nIHJ1bGVzIGRpc2N1c3Npb24gd2FzIHN0YXJ0ZWQ6DQo+Pj4gCWh0dHA6Ly9kcGRr Lm9yZy9tbC9hcmNoaXZlcy9kZXYvMjAxNS1BcHJpbC8wMTYyNDMuaHRtbA0KPj4+IEFuZCBhIG1v cmUgZ2VuZXJhbCB0aHJlYWQgYnJvdWdodCBzb21lIGludGVyZXN0aW5nIG9waW5pb25zOg0KPj4+ IAlodHRwOi8vZHBkay5vcmcvbWwvYXJjaGl2ZXMvZGV2LzIwMTUtQXByaWwvMDE2NTUxLmh0bWwN Cj4+PiBBcyBhIGNvbnNlcXVlbmNlLCB3ZSBhcmUgbm93IGRpc2N1c3NpbmcgdGhlIHdvcmtmbG93 IGFuZCBlc3BlY2lhbGx5DQo+Pj4gaG93IEdpdEh1YiBjb3VsZCBoZWxwIHVzLg0KPg0KPlRoZSBl bWFpbHMgYWJvdmUgc2hvdyBvbmUgdGhpbmcgd2UgY2FuIG5vdCBtYWtlIGEgZGVjaXNpb24gb24g aG93IHRvDQo+cHJvY2VlZC4gV2UgaGF2ZSBubyBtZXRob2QgdG8gZGVjaWRlIG9uIGEgdG9waWMs IGxvb2sgYXQgY29kaW5nIHN0eWxlIHdlDQo+aGF2ZSB5ZXQgdG8gbWFrZSBhbnkgaGVhZCB3YXkg YW5kIGl0IGlzIHVuY2xlYXIgaG93IHdlIGNhbiBkZWNpZGUgb24gYQ0KPnBhdGguIFdlIGNhbiBu b3Qgdm90ZSBhbmQgd2UgZG8gbm90IGhhdmUgYSBraW5nIG9mIHRoZSByZXBvIHRvIG1ha2UgdGhv c2UNCj5kZWNpc2lvbnMsIGl0IGp1c3QgZGllcyB3aXRoIG91dCBiZWluZyByZXNvbHZlZC4NCj4N Cj5JIHdhcyBob3BpbmcgdGhlIG1vdmluZyB0byBHaXRodWIgd291bGQgYWxsb3cgdXMgdG8gaGF2 ZSBtdWx0aXBsZQ0KPnBlcnNvbnMvY29tcGFuaWVzIGVxdWFsIGFjY2VzcyB0byB0aGUgcmVwb3Mv d2ViIHBhZ2VzIGFuZCBvdGhlciBmdW5jdGlvbnMNCj5vbiBhIHRoaXJkIHBhcnR5IHNpdGUuIFdp dGggdGhpcyBtb3ZlIHdlIHdvdWxkIHB1dCBwcm9jZXNzZXMgaW4gcGxhY2UgdG8NCj5zdGFydCBm aXhpbmcgdGhlc2UgcHJvYmxlbXMuIEkga25vdyB3ZSBjYW4gZG8gdGhpcyBub3csIGJ1dCB0aGUg bW92ZSBJTU8NCj53YXMgaG93IHdlIGdldCBpdCBzdGFydGVkLiBXZSBzaG91bGQgc3RhcnQgbm93 IGFueXdheS4NCj4NCj5XZSBhcmUgYWxsIG92ZXIgdGhlIHdvcmxkIGFuZCBpdCB3b3VsZCBiZSBn b29kIHRvIGhhdmUgYSBuZXV0cmFsIHdvcmxkd2lkZQ0KPnNpdGUgdG8gZ2l2ZSBldmVyeW9uZSBh IGVxdWFsIGZvb3Rob2xkIGludG8gRFBESy4gSSB3YXMgaG9waW5nIGl0IHdvdWxkDQo+cmVkdWNl IHNvbWUgY29zdCBhbmQgdGltZSBmcm9tIDZXaW5kLCBidXQgbWF5YmUgaXQgaXMgY29uc2lkZXIg anVzdCB0aGUNCj5jb3N0IG9mIGRvaW5nIGJ1c2luZXNzIGZvciA2V2luZC4NCj4NCj4+PiBQbGVh c2Ugbm90ZSB0aGF0IHRoZSBmb2xsb3ctdXAgb2Ygc29tZSBvZiB0aGVzZSBkaXNjdXNzaW9ucyBt YXkgYmUgZG9uZQ0KPj4+IGJ5IHN1Ym1pdHRpbmcgJiByZXZpZXdpbmcgcGF0Y2hlcyAoZS5nLiBn dWlkZWxpbmVzIGRvY3VtZW50cywNCj4+PiB0b29scyBpbnRlZ3JhdGlvbiwgZXRjKS4NCj4+PiBO b3cgbGV0J3MgdGFsayBhYm91dCB0aGUgd29ya2Zsb3cuDQo+Pj4NCj4+PiBXaGVuIHRoZSBkcGRr Lm9yZyBwcm9qZWN0IHdhcyBzdGFydGVkIGluIDIwMTMsIGl0IGhhcyBiZWVuIGRlY2lkZWQgdG8N Cj4+PmFkb3B0DQo+Pj4gYW4gZW1haWwgd29ya2Zsb3cuIEl0IGlzIHRoZSBtb3N0IGNvbW1vbiBt b2RlbCBpbiBwcm9qZWN0cyB3aGljaCBhcmUNCj4+PiB0ZWNobmljYWxseSBjbG9zZSB0byBEUERL OiBMaW51eCwgUWVtdSwgR0xJQkMsIEdDQy4gU28gaXQgaXMgYSBwcm9taXNlDQo+Pj50bw0KPj4+ IGF0dHJhY3QgY29udHJpYnV0b3JzIGZyb20gdGhlc2UgcHJvamVjdHMuIE1vcmVvdmVyLCB0aGUg bnVtYmVyIG9mDQo+Pj5jb21tZW50cw0KPj4+IHRvIHRoaXMgdGhyZWFkIHRlbmRzIHRvIHByb3Zl IHRoYXQgZW1haWxzIGFyZSBub3QgZGVhZCA7KQ0KPj4+IFNlZSBhbHNvIHRoZSBudW1iZXIgb2Yg Y29udHJpYnV0b3JzIG9mIHByZXZpb3VzIHZlcnNpb25zOg0KPj4+IAkxLjY6IDI1ICgyMDE0LCBB cHJpbCkNCj4+PiAJMS43OiA0NiAoMjAxNCwgU2VwdGVtYmVyKQ0KPj4+IAkxLjg6IDU0ICgyMDE0 LCBEZWNlbWJlcikNCj4+PiAJMi4wOiA2MCAoMjAxNSwgQXByaWwpDQo+Pj4NCj4+PiBBbm90aGVy IGNob2ljZSB3YXMgZG9uZSBhYm91dCB0aGUgbnVtYmVyIG9mIG1haWxpbmcgbGlzdHM6IG1vc3Qg b2YgdGhlDQo+Pj50cmFmZmljDQo+Pj4gaXMgaW4gb25seSBvbmUgbGlzdCAoZGV2QCkgaW4gb3Jk ZXIgdG8gYXZvaWQgc2VwYXJhdGlvbiBiZXR3ZWVuIHBhdGNoZXMNCj4+PmFuZA0KPj4+IGRpc2N1 c3Npb25zL3JlcG9ydHMgbGVhZGluZyB0byBwYXRjaGVzLiBJdCBhbHNvIGFsbG93cyB1c2VyIHF1 ZXN0aW9ucw0KPj4+dG8gYmUNCj4+PiByZWFkIGJ5IHNraWxsZWQgZGV2ZWxvcGVycy4NCj4+Pg0K Pj4+IFRoZSBwb3J0YWwgdG8gZG9jLCBnaXQgYW5kIG1haWxpbmcgbGlzdCBpcyB0aGUgd2Vic2l0 ZSB3aGljaCBpcyBtYW5hZ2VkDQo+Pj53aXRoDQo+Pj4gZ2l0IGluIG9yZGVyIHRvIG9wZW4gaXQg d2hlbiBuZWVkZWQgYW5kIG1hdHVyZSBlbm91Z2guDQo+Pj4gUGxlYXNlIGZpbmQgd2ViIHRyYWZm aWMgZXZvbHV0aW9uIGluIHRoZSBhdHRhY2hlZCBmaWxlLg0KPj4+IFRoZXJlIGlzIGFsc28gYSBw YXRjaHdvcmsgd2ViIGludGVyZmFjZSB0byBlYXNlIGJyb3dzaW5nIHBhdGNoZXMNCj4+PnN1Ym1p dHRlZA0KPj4+IHRvIHRoZSBtYWlsaW5nIGxpc3QuIEl0IHByb3ZpZGVzIGEgdmlldyBvbiBwYXRj aGVzIHN0YXR1cyBhbmQgYWdyZWdhdGUNCj4+PiBkaXNjdXNzaW9ucyBvbiBzcGVjaWZpYyBwYXRj aGVzLiBTb21lIGltcHJvdmVtZW50cyBhcmUgaW4gcHJvZ3Jlc3M6DQo+Pj4gCWh0dHA6Ly9wZXJt YWxpbmsuZ21hbmUub3JnL2dtYW5lLmNvbXAudmVyc2lvbi1jb250cm9sLnBhdGNod29yay8xMTYy DQo+Pj4gCWh0dHBzOi8vbGlzdHMub3psYWJzLm9yZy9waXBlcm1haWwvcGF0Y2h3b3JrLzIwMTUt TWF5LzAwMTMxMC5odG1sDQo+DQo+VGhlIHBhdGNod29yayBzaXRlIHdvdWxkIG5vdCBiZSByZXF1 aXJlZCBmb3IgR2l0aHViIGFzIHlvdSBjYW4gcmV2aWV3IGFuZA0KPnNlZSBhbGwgb2YgdGhlIHB1 bGwgcmVxdWVzdHMuIEFsc28gdGhlIHB1bGwgcmVxdWVzdGVkIGFyZSBxdWlja2x5IGFjY2Vzc2Vk DQo+dG8gc29ydCBhbmQgbWFuYWdlIHRoZSBwYXRjaGVzIElNTyBiZXR0ZXIgdGhlbiBwYXRjaHdv cmsuIFRoZSBmZWF0dXJlIGlzDQo+YnVpbHQgaW50byBHaXRIdWIgYW5kIHdlIGRvIG5vdCBuZWVk IHRvIG1haW50YWluIHRoYXQgc2l0ZSBvciB0b29sLiBUaGUNCj5wdWxsIHJlcXVlc3RzIGNhbiBh bHNvIGJlIHBsYWNlZCBpbnRvIGdpdmVuIHN0YXRlcyBqdXN0IGxpa2UgcGF0Y2h3b3JrLg0KPlRo ZSBwYXRjaHdvcmsgaW50ZXJmYWNlIGlzIGNsdW5reSB0byBtZSBhcyBpdCBzZWVtcyB0byBiZSBv ZGQgdG8gbWFuYWdlDQo+cGF0Y2hlcywgbWF5YmUgdGhleSBjYW4gZml4IHRoZSB1c2FiaWxpdHkg aXNzdWVzLiBUaGUgZmlsdGVyIGJ1dHRvbiBpcyBub3QNCj52ZXJ5IHZpc2libGUgYW5kIHdoZW4g eW91IG5lZWQgdG8gY2hhbmdlIGEgc2V0IG9mIHBhdGNoZXMgeW91IGhhdmUgdG8gZG8gYQ0KPmxv dCBvZiBjbGlja3MgYW5kIGJhY2sgcGFnZXMgdG8gY2hhbmdlIHRoZW0gYWxsLiBNYXliZSBJIGRv IG5vdCBrbm93IGhvdw0KPnRvIHVzZSB0aGUgc2l0ZSwgYnV0IEkgZG8gbm90IHRoaW5rIHRoYXQg aXMgdGhlIHByb2JsZW0gSU1PLiBUaGUgR2l0SHViDQo+b25lIHdvcmtzIHRvZGF5IHdpdGhvdXQg aGF2aW5nIHRvIGZpeCBhbnl0aGluZy4NCj4NCj4+Pg0KPj4+IFRoZXJlIGFyZSAzIHR5cGVzIG9m IGdpdCByZXBvc2l0b3JpZXMgKGh0dHA6Ly9kcGRrLm9yZy9icm93c2UpOg0KPj4+ICAgIC0gdGhl IG1haW4gRFBESyB0cmVlDQo+Pj4gICAgLSBzdWJ0cmVlcywgY3JlYXRlZCBvbiByZXF1ZXN0IG9y IGV4dGVybmFsLCBtYXkgaGVscCB0byBzY2FsZSBieQ0KPj4+cHJvdmlkaW5nDQo+Pj4gICAgICBw YXRjaGVzIHJlYWR5IGZvciBtZXJnZSBpbiB0aGUgbWFpbiB0cmVlDQo+Pj4gICAgLSBzaWRlIHRy ZWVzLCBjcmVhdGVkIG9uIHJlcXVlc3QsIGUuZy4gZHRzIG9yIHBrdGdlbg0KPg0KPkkgbGlrZSB0 aGUgaWRlYSBvZiBnb2luZyB0byB0aGUgR2l0SHViIHBhZ2UgYW5kIGJlaW5nIGFibGUgdG8gc2Ny b2xsIGRvd24NCj50aGUgcGFnZSB0byBzZWUgYWxsIG9mIHRoZSByZXBvcyBhdCB0aGUgc2FtZSB0 aW1lLiBUaGlzIHdheSBwZW9wbGUgbm90aWNlDQo+dGhlIG90aGVyIHRvb2xzIGFuZCBzdWJ0cmVl cyBxdWlja2x5LiBJIGtub3cgeW91IGNhbiBtb2RpZnkgdGhlIHdlYiBwYWdlDQo+dG8gbWFrZSBp dCBlYXNpZXIgdG8gc2VlLCBidXQgR2l0aHViIGFscmVhZHkgaGFzIGl0IGRvbmUuDQo+DQo+SSBz ZWVtIHRvIGhhdmUgdG8gdGVsbCBwZW9wbGUgd2hlcmUgUGt0Z2VuIGlzIGxvY2F0ZWQgb24gdGhl IHNpdGUganVzdA0KPmFib3V0IGV2ZXJ5IHRpbWUgSSB0YWxrIGFib3V0IGl0LCBiZWluZyBvbiB0 aGUgR2l0SHViIGxpc3Qgb2YgcmVwb3Mgc2VlbXMNCj5tdWNoIG1vcmUgb2J2aW91cyB0byBtZS4g SSB3YW50IHRvIG1ha2UgaXQgZWFzeSBmb3Igc29tZW9uZSB0byBiZSBhZGRlZCB0bw0KPnRoZSB0 ZWFtIHRvIGhlbHAgaW1wcm92ZSB0aGUgY29kZSBhbmQgYSBHaXRodWIgdGVhbSBzZWVtcyBsaWtl IHRoZSBlYXNpZXN0DQo+d2F5Lg0KPg0KPj4+IERvIG5vdCBoZXNpdGF0ZSB0byByZXF1ZXN0IGNy ZWF0aW9uIG9mIGEgbmV3IHRyZWUsIGl0J3Mgb3Blbi4NCj4+PiBJbnRlbCBoYXMgcmVxdWVzdGVk IHNvbWUgc21hbGwgc3VidHJlZXMgd2hpY2ggc2VlbXMgbm90IHZlcnkgdXNlZnVsLiBXZQ0KPj4+ bWF5DQo+Pj4gdHJ5IHRvIG9yZ2FuaXplIHNvbWUgbmV3IHN1YnRyZWVzIGZvciBiaWdnZXIgYXJl YXMsIHdoaWNoIHdvdWxkIHRha2UNCj4+PmNhcmUNCj4+PiBvZiBtYW55IHNlY3Rpb25zIG9mIHRo ZSBNQUlOVEFJTkVSUyBmaWxlLiBNYXliZSB0aGF0IHNvbWUgZGVkaWNhdGVkDQo+Pj5tYWlsaW5n DQo+Pj4gbGlzdHMgc2hvdWxkIGJlIGNyZWF0ZWQuIFRoZXNlIG1haWxpbmcgbGlzdHMgYW5kIHN1 YnRyZWVzIG1heSBiZSBob3N0ZWQNCj4+Pm9uDQo+Pj4gZHBkay5vcmcgb3IgZWxzZXdoZXJlIGlm IGV2ZXJ5Ym9keSBhZ3JlZS4NCj4NCj5JIGFncmVlIHdpdGggTmVpbCBvbiBhIGZldyBtb3JlIHJl cG9zIGZvciBzdWJ0cmVlcyBvciBzdWJtb2R1bGVzLCB0aGlzDQo+YWxsb3dzIHVzIGluIEdpdGh1 YiB0byBoYXZlIGRpZmZlcmVudCB0ZWFtcyBhbmQgbWVtYmVycyBvbiB0aG9zZSByZXBvcyBhcw0K PmNvbW1pdHRlcnMuIEFkZGluZyBuZXcgcGVyc29ucyB0byB0ZWFtcyBpcyBxdWljayBhbmQgZWFz eSBmb3IgYW55b25lIG9uDQo+dGhlIHRlYW0gdG8gYWRkIG9yIG1vZGlmeSBzb21lb25lIG9uIHRo ZSB0ZWFtLiBUaGUgb3duZXJzIGhhdmUgZnVsbCBwb3dlcg0KPmZvciBhbGwgdGVhbXMgYW5kIGFk ZGluZy9yZW1vdmluZyBjb250cmlidXRvcnMgcGx1cyBjcmVhdGluZyBvciBkZWxldGluZw0KPnJl cG9zIGFuZCBvdGhlciBmdW5jdGlvbnMuDQo+DQo+Pj4NCj4+PiBUaGVyZSB3YXMgbm8gYnVnIHRy YWNrZXIgaW5pdGlhbGx5IGluc3RhbGxlZCB0byBhdm9pZCBmcmFnbWVudGF0aW9uDQo+Pj53aXRo DQo+Pj4gbWFpbGluZy1saXN0IGRpc2N1c3Npb25zLiBOb3cgdGhhdCB0cmFmZmljIGlzIGJlY29t aW5nIGh1Z2UsIGl0IGFwcGVhcnMNCj4+PnRvIGJlDQo+Pj4gYSBuZXcgcHJpb3JpdHkuDQo+Pj4N Cj4+PiBMYXN0IHBvaW50IGluIHRoZSB3b3JrZmxvdyBzdGF0dXM6IHRlc3RzIGFuZCBjb250aW51 b3VzIGludGVncmF0aW9uLg0KPj4+IEl0J3MgYSBjb21wbGljYXRlZCB0b3BpYywgZXNwZWNpYWxs eSBiZWNhdXNlIERQREsgcmVxdWlyZXMgc29tZQ0KPj4+ZXhwZW5zaXZlDQo+Pj4gaW5mcmFzdHJ1 Y3R1cmUgZm9yIHRoZSB0ZXN0cy4gU29tZSBwZW9wbGUgYXJlIHdvcmtpbmcgb24gaXQgYXQgSW50 ZWwNCj4+PmFuZA0KPj4+IDZXSU5ELCBzbyBJIGd1ZXNzIHdlIHdpbGwgaGF2ZSBhIHB1YmxpYyBk aXNjdXNzaW9uIGluIHRoZSBjb21pbmcgd2Vla3MuDQo+DQo+R2l0SHViIG9yIHRoZSBjdXJyZW50 IHN5c3RlbSBkb2VzIG5vdCBhZGRyZXNzIHRoaXMgY29uY2VybiwgYnV0IEkgZG8gbm90DQo+c2Vl IHRoYXQgR2l0aHViIHdvdWxkIHJlc3RyaWN0IGFueXRoaW5nLiBJIGFtIG5vdCBzYXlpbmcgeW91 IG1hZGUgdGhhdA0KPnBvaW50LCBidXQgcG9pbnRpbmcgb3V0IGl0IG5lZWRzIHRvIGJlIGFkZHJl c3MgYW5kIGlzIG5vdCBhIHByby9jb24uDQo+DQo+Pj4NCj4+PiBBZnRlciBjYXJlZnVsbHkgcmVh ZGluZyBwcmV2aW91cyBjb21tZW50cyBhYm91dCBnaXRodWIgaG9zdGluZywgSSB3b3VsZA0KPj4+ bGlrZQ0KPj4+IHRvIHNvcnQgcHJvcy9jb25zIGJlbG93Lg0KPj4+IEludmFsaWRhdGVkIFBybzoN Cj4+PiAtIHdlYiBwYWdlcyBzeXN0ZW06IGFscmVhZHkgcG9zc2libGUgd2l0aG91dCBHaXRIdWIN Cj4NCj5XaXRoIHRoZSBnaXRodWIgcGFnZXMgd2UgY2FuIGhhdmUgYW55b25lIG1vZGlmeSB0aGUg cGFnZXMgYW5kIGRvZXMgbm90DQo+aGF2ZSB0byBiZSB5b3Ugb3Igc29tZW9uZSBhdCA2V2luZC4g VGhlIEdpdGh1YiB3ZWIgcGFnZSBzdXBwb3J0IGlzIGFscmVhZHkNCj5wcmVzZW50IGFuZCBpcyBj b250YWluZWQgaW4gdGhlIHJlcG8gYXMgYSBicmFuY2ggZm9yIGVhY2ggcmVwbywgaWYgd2UgbmVl ZA0KPml0LiBUbyBtZSBpdCBqdXN0IHNlZW1zIGVhc2llciBmb3Igc29tZW9uZSBpbiB0aGUgqfh3 ZWQtcGFnZSIgdGVhbSB0bw0KPm1vZGlmeSBxdWlja2x5Lg0KPg0KPj4+IC0gcG9wdWxhcml0eTog d2h5IGJlaW5nIGhvc3RlZCBvbiBHaXRIdWIgd291bGQgaW1wcm92ZSB0aGUgdmlzaWJpbGl0eT8N Cj4+PiBQcm9zOg0KPj4+IC0gbGVzcyBjb21wbGljYXRlZCBjb21tYW5kIGxpbmVzDQo+Pj4gLSBz YW1lIHZpZXcgZm9yIGV2ZXJ5b25lIChpbmRlcGVuZGVudCBvZiBNVUEgZmVhdHVyZXMpDQo+Pj4g LSBtb3JlIGNvZGUgY29udGV4dCB3aGVuIHJlYWRpbmcgcGF0Y2hlcw0KPg0KPiBIYXMgdHdvIG1v ZGVzIHNpZGUgYnkgc2lkZSBkaWZmIG9yIHN0YW5kYXJkIGlubGluZSBkaWZmIHN1cHBvcnQuDQo+ DQo+Pj4gLSBpbnRlZ3JhdGVkIGJ1ZyB0cmFja2VyDQo+DQo+VGhlIGJ1ZyB0cmFja2VyIGlzIHNv bWV0aGluZyB3ZSBuZWVkIG5vdyB0aGF0IHdlIGhhdmUgbW9yZSBwYXRjaGVzIGFuZA0KPnVzZXJz Lg0KPg0KPj4+IENvbnM6DQo+Pj4gLSBmdWxsIGZlYXR1cmUgdXNhZ2UgaW1wbGllcyBldmVyeWJv ZHkgaXMgZm9yY2VkIHRvIHVzZSBpdA0KDQpJIHVzZSBHaXRIdWIgZm9yIFBrdGdlbiBmb3IgYSBs b25nIHRpbWUgYW5kIHRoZSBvbmx5IHRpbWUgSSByZWFsbHkgbmVlZGVkDQp0byB0b3VjaCB0aGUg R2l0SHViIHdlYiBwYWdlIHdhcyBpZiBJIHdhbnRlZCB0byB2ZXJpZnkgdGhlIFJFQURNRSBvcg0K c29tZXRoaW5nIHdhcyBjb3JyZWN0IGFmdGVyIEkgcHVzaGVkIHRoZSBjb21taXRzLiBOb3JtYWxs eSBJIGp1c3QgdXNlZA0KY29tbWFuZCBsaW5lIHB1bGwvY29tbWl0IHRvIHVwZGF0ZSBteSBsb2Nh bCByZXBvLCBkbyBhbGwgb2YgbXkNCnRlc3RpbmcvZGV2ZWxvcG1lbnQgdGhlbiBjb21taXQgYW5k IHB1c2ggdGhlIGNoYW5nZXMgdG8gdGhlIEdpdEh1YiByZXBvcnQuDQpBdCB0aGlzIHBvaW50IGV2 ZXJ5b25lIG9uZSB0aGF0IHdhcyBmb2xsb3dpbmcgd291bGQgZ2V0IGEgbm90aWNlLiBUbyBtZSBp dA0Kc2VlbWVkIGxpa2UgR2l0aHViIHdhcyBqdXN0IGEgcmVtb3RlIHJlcG8gaW4gbXkgZGF5IHRv IGRheSB3b3JrIGxvb2tzIGxpa2UNCndoYXQgSSBiZWxpZXZlIGV2ZXJ5b25lIGlzIGRvaW5nIG5v dy4gTWF5YmUgc29tZW9uZSBjYW4gZXhwbGFpbiB3aGF0IGlzIHNvDQpkaWZmZXJlbnQgZm9yIHRo ZSBkYXkgdG8gZGF5IHdvcmtmbG93Lg0KDQo+IA0KPg0KPj4+IC0gZnJhZ21lbnRhdGlvbiBiZXR3 ZWVuIG9ubGluZSBkYXRhIGFuZCBtYWlsaW5nIGxpc3QNCj4NCj5UaGUgZnJhZ21lbnRhdGlvbiBp cyBzb21ldGhpbmcgSSB3YW50IHRvIHNvbHZlIGFzIGhhdmUgc2VlbiBzb21lIGNvbW1lbnRzDQo+ YWJvdXQgaW50ZWdyYXRpbmcgdGhlIHR3byBzeXN0ZW1zIHdpdGggc29tZSBvcGVuIHNvdXJjZSBj b2RlLCB3aGljaCBJDQo+d291bGQgaG9wZSB3aWxsIHNvbHZlIHRoYXQgcHJvYmxlbS4gTW9yZSBp bnZlc3RpZ2F0aW9uIG5lZWRzIHRvIGJlIGRvbmUuDQo+DQo+Pj4gLSBkaXNjdXNzaW9ucyBhcmUg bm90IHRocmVhZGVkLCBsb25nIGRpc2N1c3Npb25zIG5vdCBjbGVhcg0KPj4+IC0gZWRpdGluZyBp biBicm93c2VyIG1heSBiZSBsaW1pdGVkDQo+DQo+UGVyc29uYWxseSBJIG9ubHkgdXNlZCB0aGUg d2ViIGJhc2VkIGVkaXRpbmcgb2YgZmlsZXMgdG8gdXBkYXRlIHRoZQ0KPnZlcnNpb24gbnVtYmVy IG9uIHRoZSByZWFkbWUgd2hlbiBJIGZvcmdvdC4gSSB3b3VsZCBub3Qgc3VnZ2VzdCB5b3UgZG8g YWxsDQo+b2YgeW91ciBjb2RpbmcgaW4gdGhlIHdlYiBicm93c2VyLCBidXQgb24geW91ciBsb2Nh bCByZXBvIGNvcHkgYW5kIGVkaXRvcg0KPm9mIGNob29zZS4NCj4NCj4+PiAtIG5vIG9mZmxpbmUg YWNjZXNzDQo+DQo+WW91IGhhdmUgdGhlIGxvY2FsIHJlcG8gYXMgeW91ciBvZmZsaW5lIGFjY2Vz cywgaXMgdGhpcyB3aGF0IHlvdSBtZWFuPyBJDQo+c2l0ZSBtYXkgZ28gZG93biwgYnV0IEkgZXhw ZWN0IGl0IHdvdWxkIGJlIHRoZSBzYW1lIGZvciBhbnkgc2l0ZS4gSWYNCj5HaXRIdWIgaXMgY2F1 c2luZyB0aGUgZG93biB0aW1lIHRoaXMgaXMgYSBkaWZmZXJlbnQgcHJvYmxlbSBJTU8uDQo+DQo+ Pj4gLSBkaWZmaWN1bHQgdG8gZm9sbG93IGhpc3RvcnkgYXMgd2UgcmVseSBvbiB1c2VyIHJlcG9z aXRvcmllcyB3aGljaCBtYXkNCj4+PmNoYW5nZQ0KPg0KPlRoZSBwdWxsIHJlcXVlc3RzIGhhdmUg dGhlIGhpc3RvcnkganVzdCBsaWtlIHBhdGNoZXMgZG8gdG9kYXksIGl0IHNob3VsZA0KPm5vdCBi ZSBhbnkgZGlmZmVyZW50LiBIb3cgZG8geW91IHRoaW5rIHdlIHdpbGwgbG9zZSBoaXN0b3J5Pw0K Pg0KPj4+IC0gR2l0SHViIChjb21tZXJjaWFsIHNlcnZpY2UpIGlzIHdhdGNoaW5nIHVzDQo+DQo+ SWYgeW91IGhhdmUgbm90IGZpZ3VyZWQgaXQgb3V0IHlldCwgZXZlcnlvbmUgaXMgb3V0IHRvIGdl dCBldmVyeW9uZSBlbHNlDQo+bm93IGluIHRoaXMgZ2xvYmFsIEludGVybmV0IEZhZCA6LSkNCj4N Cj4+PiAtIGhvdyB0byBsZWF2ZSBhbmQgbWlncmF0ZSBkYXRhIGZyb20gR2l0SHViPw0KPg0KPkkg dGhpbmsgdGhhdCBpcyBraW5kIG9mIGVhc3kganVzdCBjbG9uZSB0aGUgcmVwbyBpcyB0aGF0IG5v dCB0aGUgY2FzZT8gSQ0KPmNhbiBzZWUgd2Ugd291bGQgbG9zZSBzb21lIG9mIHRoZSBjb21tZW50 cywgYnV0IEkgYW0gbm90IHN1cmUgdGhleSBhcmUNCj50aGF0IHdvcnRoIHdpbGQuIEJlc2lkZXMg d2UgY2FuIGFsd2F5cyBrZWVwIHRoZSBzaXRlIGFzIGEgbWlycm9yIGlmIHdlDQo+ZGVjaWRlIHRv IG1vdmUuDQo+DQo+Pj4gLSBhZG1pbmlzdHJhdGlvbiBpc3N1ZXMgb3V0IG9mIGNvbnRyb2wgKHNl ZSBzbmFwc2hvdCBvZiB0b2RheSdzDQo+Pj5kb3dudGltZSkNCj4+Pg0KPj4+IEkgZGlkIGFuIGFi dXNlIHJlcG9ydCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL2RwZGsgaW4gY2FzZSB3ZSB3YW50IHRv DQo+Pj51c2UgdGhpcw0KPj4+IEdpdEh1YiBhY2NvdW50Lg0KPg0KPk9LLCBncmVhdCB5b3UgYXJl IHRoZSBvbmUgdGhhdCBjcmVhdGVkIHRoYXQgYWNjb3VudCBJIGNyZWF0ZWQgdGhlDQo+aHR0cHM6 Ly9naXRodWIuY29tL2RwZGstb3JnIG9uZSBub3Qga25vd2luZyB3aG8gY3JlYXRlZCBpdC4NCj4N Cj4+PiBNeSBvcGluaW9uIGlzIHRoYXQgR2l0SHViIG9mZmVycyBzb21lIG5pY2UgdG9vbHMgYW5k IHRveXMgYnV0IHNvbWUNCj4+PnBlb3BsZQ0KPj4+IHdvbid0IGJlIGNvbWZvcnRhYmxlIHdpdGgg aXQuDQo+DQo+SSB0aGluayB0aGUgc2FtZSBpcyBmb3Igb3RoZXJzIG5vdCBiZWluZyB2ZXJ5IGNv bWZvcnRhYmxlIHdpdGggY3JlYXRpbmcNCj5wYXRjaGVzIGFuZCBlbWFpbGluZyB0aGVtIGFzIHdl bGwsIHNvIHRoaXMgb25lIGlzIHRpZSBJTU8uDQo+DQo+Pj4gSXQgbWF5IGJlIHJlYXNvbmFibGUg dG8gdHJ5IHNvbWUgZmVhdHVyZXMgd2l0aG91dCBmb3JjaW5nIGV2ZXJ5b25lIHRvDQo+Pj5taWdy YXRlLA0KPj4+IHdoaWxlIGtlZXBpbmcgY29uc2lzdGVuY3kgYmV0d2VlbiBldmVyeSBjb250cmli dXRvcnMuDQo+Pj4gTWFraW5nIHNvbWUgdGVzdHMgaW4gYSBzYW5kYm94IHNlZW1zIHRvIGJlIGEg Z29vZCBhcHByb2FjaC4NCj4NCj5UaGUgc2FuZGJveCBJIGNyZWF0ZWQgd2FzIGZvciB0aGF0IHB1 cnBvc2UgYW5kIGFueW9uZSBpcyB3ZWxjb21lIHRvIHBsYXkNCj53aXRoIHRoZSBzaXRlLCBqdXN0 IGxldCBtZSBrbm93LiBodHRwczovL2dpdGh1Yi5jb20vZHBkay1vcmcNCj4NCj5UaG9tYXMsIGp1 c3Qgc2VuZCBtZSBhIEdpdEh1YiBsb2dpbiBuYW1lIGFuZCBJIGNhbiBhZGQgeW91IGFzIGFuIG93 bmVyIHRvDQo+dGhlIGRwZGstb3JnIHNpdGUgb3IgYW55b25lIGVsc2UgeW91IHdhbnQgdG8gaGF2 ZSBhcyBhbiBvd25lci4gSSBoYXZlIGJlZW4NCj5hZGRpbmcgbW9zdCBhcyBjb250cmlidXRvcnMu DQo+DQo+Pg0KPj5IaSBUaG9tYXMsDQo+Pg0KPj5UaGFua3MgZm9yIHRoZSBkZXRhaWxlZCBleHBs YW5hdGlvbi4gQXMgdGhlIG9mZmljaWFsICJtYWludGFpbmVyIiBvZg0KPj5EUERLLCBhbmQgSSB0 aGluayBzdHJvbmdseSBpbiBmYXZvdXIgb2YgdGhlIGN1cnJlbnQgbWFpbC1iYXNlZCB3b3JrZmxv dywNCj4+SSB3b3VsZCBsaWtlIHRvIGtub3cgaG93IHdvdWxkIHlvdSBzZWUgYSBoeWJyaWQgYXBw cm9hY2ggbGlrZToNCj4+DQo+Pmh0dHA6Ly9kcGRrLm9yZy9tbC9hcmNoaXZlcy9kZXYvMjAxNS1N YXkvMDE3MjgzLmh0bWwNCj4+DQo+PmlmIHdlIHdvdWxkIG1hbmFnZSB0byBtYWtlIGl0IHdvcmsg cmVsaWFibHkuDQo+DQo+KzEsIEkgdG9vIGJlbGlldmUgd2UgY2FuIG1ha2UgdGhpcyBzdGFibGUg b3IgdXNlIHRoZSBvdGhlciBvcGVuIHNvdXJjZQ0KPkdpdGh1YiBwcm9qZWN0IG1heWJlIHRoZSBw bGFjZSB0byBzdGFydC4NCj4NCj5odHRwczovL2dpdGh1Yi5jb20vZ29vZ2xlL3B1bGwtcmVxdWVz dC1tYWlsZXINCj4NCj5odHRwczovL2dpdGh1Yi5jb20vcnVzdC1sYW5nL3J1c3QvcHVsbC8yNTA1 OCNkaXNjdXNzaW9uX3IyOTU0ODA1MA0KPg0KPj4NCj4+DQo+Pg0KPj5CZXN0DQo+Pk1hcmMNCj4+ DQo+Pj4NCj4+PiBUaGFua3MgZm9yIHJlYWRpbmcNCj4+DQo+DQoNCg==