From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24881 invoked by alias); 5 Oct 2015 11:59:14 -0000 Mailing-List: contact gcc-help-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-help-owner@gcc.gnu.org Received: (qmail 24134 invoked by uid 89); 5 Oct 2015 11:59:14 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=3.2 required=5.0 tests=AWL,BAYES_50,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,KAM_ASCII_DIVIDERS,MIME_BASE64_BLANKS,RCVD_IN_DNSWL_LOW,SPF_PASS,TBC,T_RP_MATCHES_RCVD autolearn=no version=3.3.2 X-HELO: COL004-OMC1S2.hotmail.com Received: from col004-omc1s2.hotmail.com (HELO COL004-OMC1S2.hotmail.com) (65.55.34.12) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-SHA256 encrypted) ESMTPS; Mon, 05 Oct 2015 11:59:11 +0000 Received: from COL130-W59 ([65.55.34.9]) by COL004-OMC1S2.hotmail.com over TLS secured channel with Microsoft SMTPSVC(7.5.7601.23008); Mon, 5 Oct 2015 04:59:09 -0700 X-TMN: [l9O9aASD+i60UT8kj4XN06XtLCn9DWoH] Message-ID: From: Chen Gang To: Chris Metcalf , "walt@tilera.com" CC: Jeff Law , gcc-help , Mike Stump , Michael Eager , Richard Henderson , Peter Maydell , =?utf-8?B?QW5kcmVhcyBGw6RyYmVy?= , "rth@twiddle.net" Subject: RE: [Consult] tile: How to construct testsuite for tile architecture without hardware. Date: Mon, 05 Oct 2015 11:59:00 -0000 In-Reply-To: References: <54BA30F3.4080202@sunrus.com.cn> <54BD2C5E.1070804@ezchip.com>,<54BDB71D.90703@sunrus.com.cn> <54C39ECA.3000603@sunrus.com.cn>,,,<55E27DB9.6050606@hotmail.com>,,<560CB2C0.7000107@hotmail.com>, Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-SW-Source: 2015-10/txt/msg00027.txt.bz2 QWZ0ZXIgZml4IHRoZSB0aWxsZWd4IHFlbXUncyBmc2luZ2xlIGZsb2F0aW5n IHBvaW50IGluc25zIGlzc3VlLCB0aGUgZ2NjIHRlc3Qgc3VpdGUgcmVzdWx0 IGlzOgoKCQk9PT0gZ2NjIFN1bW1hcnkgPT09CgojIG9mIGV4cGVjdGVkIHBh c3NlcwkJNzcyNzIKIyBvZiB1bmV4cGVjdGVkIGZhaWx1cmVzCTM2NQojIG9m IHVuZXhwZWN0ZWQgc3VjY2Vzc2VzCTcKIyBvZiBleHBlY3RlZCBmYWlsdXJl cwkJMTEzCiMgb2YgdW5yZXNvbHZlZCB0ZXN0Y2FzZXMJMTQxCiMgb2YgdW5z dXBwb3J0ZWQgdGVzdHMJCTE0NzYKCkFuZCBJIHNoYWxsIGNvbnRpbnVlIHRv IGFuYWx5emUgdGhlIGxlZnQgaXNzdWVzLCBuZXh0LiA6LSkKCgpUaGFua3Mu Ci0tCkNoZW4gR2FuZwoKT3Blbiwgc2hhcmUsIGFuZCBhdHRpdHVkZSBsaWtl IGFpciwgd2F0ZXIsIGFuZCBsaWZlIHdoaWNoIEdvZCBibGVzc2VkCgoKLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+IEZyb206 IHhpbGlfZ2NoZW5fNTI1N0Bob3RtYWlsLmNvbQo+IFRvOiBjbWV0Y2FsZkBl emNoaXAuY29tOyB3YWx0QHRpbGVyYS5jb20KPiBDQzogbGF3QHJlZGhhdC5j b207IGdjYy1oZWxwQGdjYy5nbnUub3JnOyBtaWtlc3R1bXBAY29tY2FzdC5u ZXQ7IGVhZ2VyQGVhZ2VybS5jb207IHJ0aEByZWRoYXQuY29tOyBwZXRlci5t YXlkZWxsQGxpbmFyby5vcmc7IGFmYWVyYmVyQHN1c2UuZGU7IHJ0aEB0d2lk ZGxlLm5ldAo+IFN1YmplY3Q6IFJFOiBbQ29uc3VsdF0gdGlsZTogSG93IHRv IGNvbnN0cnVjdCB0ZXN0c3VpdGUgZm9yIHRpbGUgYXJjaGl0ZWN0dXJlIHdp dGhvdXQgaGFyZHdhcmUuCj4gRGF0ZTogU3VuLCA0IE9jdCAyMDE1IDE5OjU1 OjQ0ICswODAwCj4KPiBBZnRlciBmaW5pc2ggYWRkaXRpb25hbCA3IHFlbXUg cGF0Y2hlcywgb3VyIHRpbGVneCBxZW11IGNhbiB0ZXN0IHRoZSBnY2MKPiB0 ZXN0c3VpdGUgc3VjY2Vzc2Z1bGx5IChubyBhbnkgdW5pbXBsZW1lbnRhdGlv biBpc3N1ZXMpLiBUaGUgdGVzdCByZXN1bHQKPiBpczoKPgo+ID09PSBnY2Mg U3VtbWFyeSA9PT0KPgo+ICMgb2YgZXhwZWN0ZWQgcGFzc2VzIDc3MDEyCj4g IyBvZiB1bmV4cGVjdGVkIGZhaWx1cmVzIDYyMgo+ICMgb2YgdW5leHBlY3Rl ZCBzdWNjZXNzZXMgNwo+ICMgb2YgZXhwZWN0ZWQgZmFpbHVyZXMgMTEzCj4g IyBvZiB1bnJlc29sdmVkIHRlc3RjYXNlcyAxNDMKPiAjIG9mIHVuc3VwcG9y dGVkIHRlc3RzIDE0NzYKPgo+Cj4gRm9yIHRoZSA2MjIgbGVmdCBpc3N1ZXM6 Cj4KPiAtIE1heWJlIHN0aWxsIHRpbGVneCBpbXBsZW1lbnRhdGlvbiBpc3N1 ZSwgZS5nLgo+Cj4gdGhlIGZsb2F0aW5nIHBvaW50IHNpbmdsZSBtdWwgaW5z dHJ1Y3Rpb24gY2Fubid0IGdldCB0aGUgcmVzdWx0IHdoaWNoCj4gdGlsZWd4 IGdjYyBleHBlY3RlZCAoaXQgaXMgb25seSByZWxhdGVkIHdpdGggY2FsY3Vs YXRpbmc6IGZsb2F0MzJfbXVsCj4gY2FsY3VsYXRpb24gcmVzdWx0IGlzIG5v dCBtYXRjaCB0aWxlZ3ggZ2NjIGV4cGVjdGVkKS4KPgo+IC0gTWF5YmUgZW52 b3JpbnRtZW50cyBjb25maWd1cmF0aW9uIGlzc3VlcywgZS5nLgo+Cj4gZm9y IGdjYyBndWFsaXR5X2NoZWNrLCBpdCBtYXkgY2FsbCBnZGIgb3V0c2lkZSwg c28gSSBuZWVkIGNvbmZpZyB0aGUKPiByZWxhdGVkIGdkYiBjb3JyZWN0bGx5 Lgo+Cj4gLSBNYXliZSB0aWxlZ3ggZ2NjIGlzc3VlcywgZS5nLgo+Cj4gZm9y IHNvbWUgVU5LTk9XTiBpbnN0cnVjdGlvbnMsIHByb2JhYmx5IGdlbmVyYXRl ZCBieSBpbmNvcnJlY3QganVtcAo+IGluc3RydWN0aW9ucywgb25lIHNhbXBs ZSBpcyAiLWZwaWMgLW1jbW9kZWw9bGFyZ2UiIGZvciBnY2MgbmVzdGVkLTUK PiB0ZXN0Lgo+Cj4gTmV4dCwgSSBzaGFsbDoKPgo+IC0gY29udGludWUgdG8g Zml4IHRoZSBsZWZ0IDYyMiBpc3N1ZXMsIGFuZCBzZW5kIHJlbGF0ZWQgcGF0 Y2hlcyB0bwo+IHFlbXUtZGV2ZWwgbWFpbGluZyBsaXN0IG9yIGdjYy1wYXRj aGVzIG1haWxpbmcgbGlzdC4KPgo+IC0gdGhlbiByZXdyaXRlIGZsb2F0aW5n IHBvaW50IGluc3RydWN0aW9ucywgYW5kIHRyeSB0byBsZXQgdGhlIHJlbGF0 ZWQKPiBjb2RlIG1lcmdlZCBpbnRvIHFlbXUgbWFpbmxpbmUgd2l0aCBxZW11 IG1lbWJlcnMnIGhlbHAgKGF0IHByZXNlbnQsCj4gZmxvYXRpbmcgcG9pbnQg aW1wbGVtZW50YXRpb24gaXMgYSB0ZW1wb3JhcnkgaW1wbGVtZW50YXRpb24p Lgo+Cj4gLSBhdCBsYXN0LCB0cnkgdG8gZmluaXNoIGFsbCBsZWZ0IHVuaW1w bGVtZW50ZWQgaW5zdHJ1Y3Rpb25zICh0aGVyZSBhcmUKPiBzdGlsbCBzb21l IHVuaW1wbGVtZW50IGluc25zIGxlZnQsIGJ1dCBhdCBwcmVzZW50LCBnY2Mg dGVzdHN1aXRlIGRvZXMKPiBub3QgdXNlIHRoZW0pLCBhbmQgc3RhcnQgdGls ZWd4IHFlbXUgc3lzdGVtIG1vZGUsIG5leHQuCj4KPgo+IFdlbGNvbWUgYW55 IG1lbWJlcnMnIGlkZWFzLCBzdWdnZXN0aW9uLCBhbmQgY29tcGxldGlvbnMu IDotKQo+Cj4KPiBUaGFua3MuCj4KPiBDaGVuIEdhbmcKPgo+IE9wZW4sIHNo YXJlLCBhbmQgYXR0aXR1ZGUgbGlrZSBhaXIsIHdhdGVyLCBhbmQgbGlmZSB3 aGljaCBHb2QgYmxlc3NlZAo+Cj4KPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCj4+IERhdGU6IFRodSwgMSBPY3QgMjAxNSAx MjoxMjo0OCArMDgwMAo+PiBGcm9tOiB4aWxpX2djaGVuXzUyNTdAaG90bWFp bC5jb20KPj4gVG86IGNtZXRjYWxmQGV6Y2hpcC5jb207IHdhbHRAdGlsZXJh LmNvbQo+PiBDQzogbGF3QHJlZGhhdC5jb207IGdjYy1oZWxwQGdjYy5nbnUu b3JnOyBtaWtlc3R1bXBAY29tY2FzdC5uZXQ7IGVhZ2VyQGVhZ2VybS5jb207 IHJ0aEByZWRoYXQuY29tOyBwZXRlci5tYXlkZWxsQGxpbmFyby5vcmc7IGFm YWVyYmVyQHN1c2UuZGU7IHJ0aEB0d2lkZGxlLm5ldAo+PiBTdWJqZWN0OiBS ZTogW0NvbnN1bHRdIHRpbGU6IEhvdyB0byBjb25zdHJ1Y3QgdGVzdHN1aXRl IGZvciB0aWxlIGFyY2hpdGVjdHVyZSB3aXRob3V0IGhhcmR3YXJlLgo+Pgo+ Pgo+PiBBdCBwcmVzZW50LCB0aWxlZ3ggaXMgaW50ZWdyYXRlZCBpbnRvIHFl bXUgbWFzdGVyIGJyYW5jaCBzdWNjZXNzZnVsbHkKPj4gd2l0aCB0aGUgbXVj aCBoZWxwIGJ5IHFlbXUgbWVtYmVycy4KPj4KPj4gQnV0IHNvcnJ5LCBJIGRp ZCBub3QgZmluaXNoIGdjYyB0ZXN0c3VpdGUgaW4gdGltZSwgdGhlIG1haW4g ZXhjdXNlIGlzCj4+Cj4+IC0gSSBhbSBidXN5IG9uIHRoZSBub3JtYWwgd29y ayAtLSBzb21ldGltZXMsIGhhdmUgdG8gZG8gb3ZlcnRpbWUgd29yay4KPj4g KG15IGNvbXBhbnkgc3RhcnRlZCB1cCBhbiB1cmdlbnQgcHJvamVjdCwgYnV0 IGNvdWxkbid0IGZpbmQgc3VpdGFibGUKPj4gcGVyc29ucyBmb3IgaXQgaW4g c2hvcnQgdGltZSwgc28gSSBoYXZlIHRvIGRvIGl0IGR1cmluZyB0aGVzZSBk YXlzKS4KPj4KPj4gTmV4dCwgaW4gQ2hpbmVzZSBOYXRpb25hbCBEYXksIEkg aGF2ZSBlbm91Z2ggZnJlZSB0aW1lIHJlc291cmNlcyBvbiBvcGVuCj4+IHNv dXJjZSwgaG9wZSBJIGZpbmlzaCBvdXIgZ2NjIHRlc3RzdWl0ZSB3aXRoaW4g Q2hpbmVzZSBOYXRpb25hbCBEYXkgKGl0Cj4+IGlzIGZyb20gMjAxNS0xMC0w MSAtLSAyMDE1LTEwLTA3KS4KPj4KPj4gVGhhbmtzLgo+Pgo+PiBPbiA4LzMw LzE1IDExOjUwLCBDaGVuIEdhbmcgd3JvdGU6Cj4+Pgo+Pj4gT2gsIHNvcnJ5 IGFnYWluLCBJIGRpZCBub3QgZmluaXNoIHFlbXUgdGVzdCB3aXRoaW4gdGhp cyBtb250aCwgYWdhaW4uCj4+PiBDdXJyZW50IHN0YXR1cyBpczoKPj4+Cj4+ PiA9PT0gZ2NjIFN1bW1hcnkgPT09Cj4+Pgo+Pj4gIyBvZiBleHBlY3RlZCBw YXNzZXMgNzY3MjUKPj4+ICMgb2YgdW5leHBlY3RlZCBmYWlsdXJlcyA3OTAK Pj4+ICMgb2YgdW5leHBlY3RlZCBzdWNjZXNzZXMgNwo+Pj4gIyBvZiBleHBl Y3RlZCBmYWlsdXJlcyAxMTMKPj4+ICMgb2YgdW5yZXNvbHZlZCB0ZXN0Y2Fz ZXMgMTQyCj4+PiAjIG9mIHVuc3VwcG9ydGVkIHRlc3RzIDE0ODMKPj4+Cj4+ Pgo+Pj4gTXkgbWFpbiBleGN1c2VzIGFyZToKPj4+Cj4+PiAtIFdlIGFyZSBs YWNrIG9mIHRpbGVneCBmbG9hdGluZyBwb2ludCBpbnNucyByZWxhdGVkIGRv Y3VtZW50cywgd2UgaGF2ZQo+Pj4gdG8gJ2d1ZXNzJyBpbXBsZW1lbnRhdGlv biBkZXRhaWxzLiBBdCBsYXN0LCB3ZSBmb3VuZCB3YXlzIHRvIHByb2Nlc3MK Pj4+IGl0ICh3ZSBzcGVudCBtb3JlIHRoYW4gYSBoYWxmIG1vbnRoIGZyZWUg dGltZSByZXNvdXJjZXMgZm9yIGl0KS4KPj4+Cj4+PiAtIE15IHJlbGF0ZWQg cWVtdSBjb2RlIG5lZWQgYmUgcmVmYWN0b3IgYmVmb3JlIG1lcmdpbmcgaW50 byBxZW11IG1hc3Rlcgo+Pj4gdHJlZS4gQXQgcHJlc2VudCwgd2UgYXJlIHJl ZmFjdG9yaW5nIGFuZCBtZXJnaW5nIHRpbGVneCBjb2RlIHRvIHFlbXUKPj4+ IG1hc3RlciB0cmVlIChtYWlubHkgYnkgcWVtdSByZWxhdGVkIG1lbWJlcnMp Lgo+Pj4KPj4+IEhvcGUgSSBjYW4gZmluaXNoIHFlbXUgdGlsZWd4IGdjYyB0 ZXN0c3VpdGUgd2l0aGluIG5leHQgbW9udGggKEkgZ3Vlc3MsCj4+PiBpdCBz aG91bGQgYmUgZG9uZSBpbiB0aW1lKS4KPj4+Cj4+PiAtIFRlc3QgdGhlIHJl ZmFjdG9yZWQgYW5kIG1lcmdlZCBjb2RlIGFnYWluLCBiYXNlZCBvbiBpdCwg SSBjb250aW51ZSB0bwo+Pj4gZml4IGdjYyB0ZXN0c3VpdGUgcmVsYXRlZCBp c3N1ZXMuCj4+Pgo+Pj4gLSBGaXggYWxsIDcwMCsgZ2NjIHRlc3RzdWl0ZSBp c3N1ZXMgKDEwKyBmb3IgcGVuZGluZyBpc3N1ZXMsIGFuZCB0aGUKPj4+IG90 aGVycyBhcmUgZm9yIFVOLWltcGxlbWVudGF0aW9uIGluc25zIGlzc3Vlcywg SSBndWVzcykuCj4+Pgo+Pj4KPj4+IFRoYW5rcy4KPj4+Cj4+Pgo+Pj4gT24g Ny8zMC8xNSAwNTowMSwgQ2hlbiBHYW5nIHdyb3RlOgo+Pj4+IE9uIDcvMjAv MTUgMDY6MjYsIENoZW4gR2FuZyB3cm90ZToKPj4+Pj4gSGVsbG8gYWxsOgo+ Pj4+Pgo+Pj4+PiBBdCBwcmVzZW50IChhZnRlciBhIGhhbGYgeWVhciksIHdp dGggdGhlIG11Y2ggaGVscCBvZiBRRU1VIG1lbWJlcnMsCj4+Pj4+IHRpbGVn eCBsaW51eC11c2VyIGNhbiB3b3JrIChtYW51YWxseSB1c2luZyBidXN5Ym94 J3Mgc2gsIGxzLCBjcCwgbXYsIHZpCj4+Pj4+IGFyZSBPSykuCj4+Pj4+Cj4+ Pj4+IE5leHQsIEkgc2hhbGwgc3RhcnQgZ2NjIHRlc3RzdWl0ZSB3aXRoIHFl bXUgdGlsZWd4IGxpbnV4LXVzZXIsIGhvcGUgSQo+Pj4+PiBjYW4gZmluaXNo IHdpdGhpbiB0aGlzIG1vbnRoICgyMDE1LTA3LTMxKS4KPj4+Pj4KPj4+Pgo+ Pj4+IFNvcnJ5LCBJIGNhbiBub3QgZmluaXNoIHRoZSBxZW11IHRlc3Qgd2l0 aGluIHRoaXMgbW9udGguIFRoZSByZWFzb24gaXMKPj4+PiBteSB0aWxlZ3gg cWVtdSBpcyBzdGlsbCBsYWNrIG9mIHNvbWUgaW5zdHJ1Y3Rpb25zIGltcGxl bWVudGF0aW9uLCBuZXh0LAo+Pj4+IEkgc2hvdWxkIGZpbmlzaCB0aGVtIGZp cnN0bHkgKEkgaW1wbGVtZW50ZWQgbW9zdCBpbnNucywgYnV0IG5vdCBhbGwp Lgo+Pj4+Cj4+Pj4gPT09IGdjYyBTdW1tYXJ5ID09PQo+Pj4+Cj4+Pj4gIyBv ZiBleHBlY3RlZCBwYXNzZXMgNjk4MzAKPj4+PiAjIG9mIHVuZXhwZWN0ZWQg ZmFpbHVyZXMgNDMxMgo+Pj4+ICMgb2YgdW5leHBlY3RlZCBzdWNjZXNzZXMg Mgo+Pj4+ICMgb2YgZXhwZWN0ZWQgZmFpbHVyZXMgMTA4Cj4+Pj4gIyBvZiB1 bnJlc29sdmVkIHRlc3RjYXNlcyAxNzc2Cj4+Pj4gIyBvZiB1bnN1cHBvcnRl ZCB0ZXN0cyAxNTY3Cj4+Pj4KPj4+PiBNb3JlIHRoYW4gNEsgZmFpbHVyZXMg YXJlIGJlY2F1c2UgdGlsZWd4IHFlbXUgbGFja3Mgb2YgaW5zdHJ1Y3Rpb24n cwo+Pj4+IGltcGxlbWVudGF0aW9uLCBhbmQgYWxzbyBtb3JlIHRoYW4gMTAg aXNzdWVzIGFyZSBmb3IgVElNRU9VVCAoSSBndWVzcywKPj4+PiBteSBvcmln aW5hbCB0aWxlZ3ggcWVtdSBpbnN0cnVjdGlvbidzIGltcGxlbWVudGF0aW9u IHN0aWxsIGhhcyBidWdzKS4KPj4+Pgo+Pj4+IEkgc2hhbGwgdHJ5IHRvIGZp bmlzaCBpdCB3aXRoaW4gbmV4dCBtb250aCwgYWx0aG91Z2ggSSBhbSBub3Qg cXVpdGUgc3VyZQo+Pj4+IChpdCBuZWVkcyBlbm91Z2ggdGltZSByZXNvdXJj ZXMgb24gaXQsIGJ1dCBJIGFtIGxhY2sgb2YgdGltZSByZXNvdXJjZXM6Cj4+ Pj4gSSBjYW4gb25seSBzcGVuZCBsZXNzIDEgaG91ciBwZXIgd29yayBkYXkg YW5kIDIgaG91cnMgcGVyIHdlZWsgZW5kIGRheSkuCj4+Pj4KPj4+Pgo+Pj4+ Cj4+Pj4gVGhhbmtzLgo+Pj4+Cj4+Pj4+IFRoYW5rcy4KPj4+Pj4KPj4+Pj4g T24gMS8yNC8xNSAyMTozMSwgQ2hlbiBHYW5nIFMgd3JvdGU6Cj4+Pj4+PiBI ZWxsbyBNYWludGFpbmVyczoKPj4+Pj4+Cj4+Pj4+PiBUaGUgcmVzdWx0IG9m IGdjYyB0ZXN0c3VpdGUgZm9yIHRpbGUgd2l0aG91dCBxZW11IGlzIGJlbG93 LCBJIGd1ZXNzIHRoZQo+Pj4+Pj4gZW52aXJvbm1lbnRzIGNvbnN0cnVjdGlv biBpcyBPSzoKPj4+Pj4+Cj4+Pj4+PiA9PT0gZ2NjIFN1bW1hcnkgPT09Cj4+ Pj4+Pgo+Pj4+Pj4gIyBvZiBleHBlY3RlZCBwYXNzZXMgNjY2NTAKPj4+Pj4+ ICMgb2YgdW5leHBlY3RlZCBmYWlsdXJlcyA0Mgo+Pj4+Pj4gIyBvZiB1bmV4 cGVjdGVkIHN1Y2Nlc3NlcyAxCj4+Pj4+PiAjIG9mIGV4cGVjdGVkIGZhaWx1 cmVzIDEwNwo+Pj4+Pj4gIyBvZiB1bnJlc29sdmVkIHRlc3RjYXNlcyAxNjU1 OAo+Pj4+Pj4gIyBvZiB1bnN1cHBvcnRlZCB0ZXN0cyAxNzcxCj4+Pj4+Pgo+ Pj4+Pj4gQmFzZWQgb24gbm9ybWFsIHRlc3RzdWl0ZSBhbmQgbWljcm9ibGF6 ZSB0ZXN0c3VpdGUgY29uZmlndXJhdGlvbiwgaXQgaXMKPj4+Pj4+IGVhc3kg dG8gY29uZmlnIGdjYyB0ZXN0c3VpdGUgZm9yIHRpbGUuIFRoYW5rIGdjYyB0 ZXN0c3VpdCBtZW1iZXIgYW5kCj4+Pj4+PiBtaWNyb2JsYXplIG1lbWJlciB2 ZXJ5IG11Y2guIDotKQo+Pj4+Pj4KPj4+Pj4+IC0gQ29weSB0aGUgb3JpZ2lu YWwgbWljcm9ibGF6ZSBleHAgZmlsZSBhcyB0aWxlIGV4cCBmaWxlLiBFeHBv cnQgdGlsZQo+Pj4+Pj4gaXAgdG8gL2V0Yy9ob3N0cy4KPj4+Pj4+Cj4+Pj4+ PiAtIENoYW5nZSB0aGUgcmVsYXRlZCBjb21waWxlciBuYW1lIGFuZCByZWxh dGVkIHBhdGNoIHRvIHRpbGUgaW4gdGlsZQo+Pj4+Pj4gZXhwIGZpbGUuCj4+ Pj4+Pgo+Pj4+Pj4gLSBVc2UgdGlsZSBjZmxhZyAiLW02NCAtbWNwdT10aWxl Z3ggLW1jbW9kZWw9bGFyZ2UgLW1saXR0bGUtZW5kaWFuIgo+Pj4+Pj4gaW5z dGVhZCBvZiB0aGUgb3JpZ2luYWwgbWljcm9ibGF6ZSBjZmxhZywgaW4gdGls ZSBleHAgZmlsZS4KPj4+Pj4+Cj4+Pj4+PiBJZiBPSywgSSBzaGFsbCB0cnkg dG8gbWFrZSBhIHRpbGUgcGF0Y2ggd2l0aGluIHRoaXMgbW9udGguIE5leHQg bW9udGgsCj4+Pj4+PiBJIHNoYWxsIHN0YXJ0IHRpbGUgcWVtdSAoSSBhbSBw cmVwYXJpbmcgZm9yIGl0IHdpdGhpbiB0aGlzIG1vbnRoKS4gQWZ0ZXIKPj4+ Pj4+IGNvbW11bmljYXRlIHdpdGggcWVtdSBtZW1iZXJzLCBJIGd1ZXNzLCBp dCBpcyBwb3NzaWJsZSB0byBmaW5pc2ggaXQuCj4+Pj4+Pgo+Pj4+Pj4KPj4+ Pj4+IFdlbGNvbWUgYW55IGlkZWFzLCBzdWdnZXN0aW9ucywgYW5kIGNvbXBs ZXRpb25zLgo+Pj4+Pj4KPj4+Pj4+IFRoYW5rcy4KPj4+Pj4+Cj4+Pj4+PiBP biAxLzIwLzE1IDEwOjAyLCBDaGVuIEdhbmcgUyB3cm90ZToKPj4+Pj4+PiBP biAxLzIwLzE1IDAwOjEwLCBDaHJpcyBNZXRjYWxmIHdyb3RlOgo+Pj4+Pj4+ PiBPbiAxLzE3LzIwMTUgNDo1MiBBTSwgQ2hlbiBHYW5nIFMgd3JvdGU6Cj4+ Pj4+Pj4+PiBIZWxsbyBNYWludGFpbmVyczoKPj4+Pj4+Pj4+Cj4+Pj4+Pj4+ PiBJIGFtIHRyeWluZyB0byBtYWtlIGdjYyBwYXRjaGVzIGZvciB0aWxlLCBh bmQgbmVlZCB0ZXN0c3VpdGUgd2l0aG91dAo+Pj4+Pj4+Pj4gcmVsYXRlZCBo YXJkd2FyZSwgc28gSSBjb25zdWx0Ogo+Pj4+Pj4+Pgo+Pj4+Pj4+PiBVbmZv cnR1bmF0ZWx5LCBhdCB0aGUgY3VycmVudCB0aW1lLCB0aGUgc2ltdWxhdG9y IGlzIG9ubHkgYXZhaWxhYmxlIGFzIHBhcnQgb2YgdGhlIGNvbW1lcmNpYWwg TXVsdGljb3JlIERldmVsb3BtZW50IEVudmlyb25tZW50IHBhY2thZ2UuIEEg cWVtdSBwb3J0IGZvciB0aWxlIGhhcmR3YXJlIHdvdWxkIGNlcnRhaW5seSBi ZSB3ZWxjb21lLCBidXQgdG8gbXkga25vd2xlZGdlLCBubyBvbmUgaGFzIGNv bXBsZXRlZCBzdWNoIGEgcG9ydCB5ZXQuIElTQSBhbmQgQUJJIGRvY3VtZW50 YXRpb24gZm9yIHRpbGVneCBhcmUgYXZhaWxhYmxlIGF0IHd3dy50aWxlcmEu Y29tL3NjbS4KPj4+Pj4+Pj4KPj4+Pj4+Pgo+Pj4+Pj4+IE9LLCB0aGFuayB5 b3UgdmVyeSBtdWNoLCBhbmQgdGhlIGRvY3VtZW50YXRpb24gaXMgcmVhbGx5 IHZhbHVhYmxlIHRvIG1lLgo+Pj4+Pj4+Cj4+Pj4+Pj4gQWZ0ZXIgZmluaXNo IGdjYyB0aWxlIHRlc3RzdWl0ZSAoaG9wZSBJIGNhbiBmaW5pc2ggd2l0aGlu IHRoaXMgbW9udGgpLAo+Pj4+Pj4+IEkgc2hhbGwgY29udGludWUgZm9yIHRp bGUgcWVtdSwgSSBzaG91bGQgdHJ5IG15IGJlc3QgZm9yIGl0LCBob3BlIEkg Y2FuCj4+Pj4+Pj4gZmluaXNoOiAiY2FuIHJ1biBnY2MgdGVzdHN1aXRlIHdp dGggdGhlIHRpbGUgcWVtdSIuCj4+Pj4+Pj4KPj4+Pj4+PiBBdCBwcmVzZW50 LCBpdCBpcyByZWFsbHkgdmVyeSBoYXJkIHRvIG1lLCBidXQgZm9yIG1lLCBp dCBpcyBteSBkdXR5IChJCj4+Pj4+Pj4gbWV0IGl0LCBhbmQgaXQgd2FzIHdp dGhpbiBteSBvcmlnaW5hbCBib2FyZGVyKS4KPj4+Pj4+Pgo+Pj4+Pj4+Cj4+ Pj4+Pj4gRm9yIG1lLCBub3RoaW5nIGlzIGltcG9zc2libGUsIGlmIEdvZCBi bGVzc2VkLgo+Pj4+Pj4+Cj4+Pj4+Pj4KPj4+Pj4+PiBUaGFua3MuCj4+Pj4+ Pj4KPj4+Pj4+Cj4+Pj4+Cj4+Pj4+IFRoYW5rcy4KPj4+Pj4KPj4+Pgo+Pj4K Pj4+IC0tCj4+PiBDaGVuIEdhbmcKPj4+Cj4+PiBPcGVuLCBzaGFyZSwgYW5k IGF0dGl0dWRlIGxpa2UgYWlyLCB3YXRlciwgYW5kIGxpZmUgd2hpY2ggR29k IGJsZXNzZWQKPj4+Cj4+Pgo+Pgo+PiAtLQo+PiBDaGVuIEdhbmcgKOmZiOWI mikKPj4KPj4gT3Blbiwgc2hhcmUsIGFuZCBhdHRpdHVkZSBsaWtlIGFpciwg d2F0ZXIsIGFuZCBsaWZlIHdoaWNoIEdvZCBibGVzc2VkCj4KIAkJIAkgICAJ CSAg