From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29393 invoked by alias); 5 Feb 2011 17:30:07 -0000 Received: (qmail 29320 invoked by uid 22791); 5 Feb 2011 17:30:04 -0000 X-SWARE-Spam-Status: No, hits=0.2 required=5.0 tests=AWL,BAYES_20,MISSING_HEADERS,RCVD_IN_DNSWL_LOW,SARE_MILLIONSOF,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from prod-mail-xrelay04.akamai.com (HELO prod-mail-xrelay04.akamai.com) (96.6.114.79) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sat, 05 Feb 2011 17:29:54 +0000 Received: from prod-mail-xrelay04.akamai.com (localhost [127.0.0.1]) by postfix.imss70 (Postfix) with ESMTP id AB2364184F9 for ; Sat, 5 Feb 2011 17:29:52 +0000 (GMT) Received: from prod-mail-relay04.akamai.com (unknown [172.27.8.27]) by prod-mail-xrelay04.akamai.com (Postfix) with ESMTP id 7B7F241800A for ; Sat, 5 Feb 2011 17:29:52 +0000 (UTC) Received: from usma1ex-cashub.kendall.corp.akamai.com (usma1ex-cashub1-nlb.kendall.corp.akamai.com [172.17.120.172]) by prod-mail-relay04.akamai.com (Postfix) with ESMTP id 4B5BE47BDE for ; Sat, 5 Feb 2011 17:29:52 +0000 (GMT) Received: from usma1ex-cashub5.kendall.corp.akamai.com (172.27.66.70) by usma1ex-cashub1.kendall.corp.akamai.com (172.17.120.164) with Microsoft SMTP Server (TLS) id 8.3.137.0; Sat, 5 Feb 2011 12:29:51 -0500 Received: from USMBX1.msg.corp.akamai.com ([169.254.1.240]) by usma1ex-cashub5.kendall.corp.akamai.com ([172.27.66.70]) with mapi; Sat, 5 Feb 2011 12:29:51 -0500 From: "Lubashev, Igor" CC: "pthreads-win32@sourceware.org" Date: Sat, 05 Feb 2011 17:30:00 -0000 Subject: Re: Compilation issue with pthreads-win32 Message-ID: <83CE6FF8F6C9B2468A618FC2C512672605A8E02A59@USMBX1.msg.corp.akamai.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-IsSubscribed: yes Mailing-List: contact pthreads-win32-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: pthreads-win32-owner@sourceware.org X-SW-Source: 2011/txt/msg00002.txt.bz2 V2h5IGlzIHRoaXMgYW4gaXNzdWU/DQoNCklmIHNvbWUgY29kZSB3YW50cyB0 byBoYXZlIHRyZWFkcyBjb21wZXJhYmxlL2hhc2hhYmxlLCB0aGV5IGNhbiBy b2xsIHRoZWlyIG93biBjbGFzcy9zdHJ1Y3QgdGhhdCB3cmFwcyBwdGhyZWFk X3QgYW5kIHByb3ZpZGVzIHdoYXRldmVyIGZ1bmN0aW9uYWxpdHkgaXQgd2Fu dHMuDQoNCkluIGZhY3QsIGZvciB0aGUgc2ltcGxlIHJlcXVpcm1lbnQgb2Yg aXNOdWxsLCBjb21wYXJlLCBhbmQgaGFzaCwganVzdCB1c2UgYSAocHRocmVh ZF90ICopIGZvciBhIHRocmVhZCBoYW5kbGUhDQoNCg0KLSBJZ29yIEx1YmFz aGV2DQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBBbGV4 YW5kZXIgVGVyZWtob3YgW1RFUkVLSE9WQGRlLmlibS5jb21dDQpSZWNlaXZl ZDogU2F0dXJkYXksIDA1IEZlYiAyMDExLCAxMDoxOGFtDQpUbzogUm9zcyBK b2huc29uIFtSb3NzLkpvaG5zb25AaG9tZW1haWwuY29tLmF1XQ0KQ0M6IHB0 aHJlYWRzLXdpbjMyQHNvdXJjZXdhcmUub3JnIFtwdGhyZWFkcy13aW4zMkBz b3VyY2V3YXJlLm9yZ10NClN1YmplY3Q6IFJlOiBDb21waWxhdGlvbiBpc3N1 ZSB3aXRoIHB0aHJlYWRzLXdpbjMyDQoNClJvc3MgSm9obnNvbiA8Um9zcy5K b2huc29uQGhvbWVtYWlsLmNvbS5hdT4gd3JvdGU6DQpbLi4uXQ0KPiBZb3Ug YXJlIHJpZ2h0IHRoYXQgYWxsIFVuaXhlcyAodGhhdCBJIGtub3cgb2YpIGRl ZmluZQ0KPiBwdGhyZWFkX3QgYXMgYSBzY2FsYXIgdHlwZSBhbmQgdGhhdCBw dGhyZWFkX3dpbjMyDQo+IGRldmlhdGVzIGZyb20gdGhpcyBjb252ZW50aW9u IGJ5IHVzaW5nIGEgc3RydWN0LiBUaGUNCj4gcHJvamVjdHMgRkFRIG9mZmVy cyBhIGhpc3RvcnkgYW5kIGV4cGxhbmF0aW9uIGluDQo+IFF1ZXN0aW9uIDEx LCB3aGljaCBJJ3ZlIHF1b3RlZCBhdCB0aGUgZW5kLg0KDQpNYWluZnJhbWUg VU5JWA0KDQpodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1NpbmdsZV9V TklYX1NwZWNpZmljYXRpb24jei4yRk9TDQoNCmFsc28gdXNlcyBhIHN0cnVj dC4NCg0KVW5mb3J0dW5hdGVseSBwdGhyZWFkcyBkbyBub3QgcHJvdmlkZSBz dGFuZGFyZA0KDQpwdGhyZWFkX251bGwvY29tcGFyZS9oYXNoDQoNCmludGVy ZmFjZXMsIHNlZQ0KDQpodHRwOi8vdGlueXVybC5jb20vYnVqOQ0KDQpidXQg eW91IG1pZ2h0IHdhbnQgdG8gYWRkIF9ucCgpIGZ1bmN0aW9ucy4uLg0KDQpy ZWdhcmRzLA0KYWxleGFuZGVyLg0KDQoNClJvc3MgSm9obnNvbiA8Um9zcy5K b2huc29uQGhvbWVtYWlsLmNvbS5hdT5Ac291cmNld2FyZS5vcmcgb24gMDUu MDIuMjAxMQ0KMDk6NTE6MzUNCg0KU2VudCBieTogICAgcHRocmVhZHMtd2lu MzItb3duZXJAc291cmNld2FyZS5vcmcNCg0KDQpUbzogICAgcHRocmVhZHMt d2luMzJAc291cmNld2FyZS5vcmcNCmNjOg0KU3ViamVjdDogICAgUmU6IENv bXBpbGF0aW9uIGlzc3VlIHdpdGggcHRocmVhZHMtd2luMzINCg0KDQpIaSBD bGF1ZGUsDQoNCkdsYWQgeW91IGZvdW5kIHRoZSBsaWJyYXJ5IHVzZWZ1bCBh bmQgdGhhbmt5b3UgZm9yIHRoZSBmZWVkYmFjay4NCg0KWW91IGFyZSByaWdo dCB0aGF0IGFsbCBVbml4ZXMgKHRoYXQgSSBrbm93IG9mKSBkZWZpbmUgcHRo cmVhZF90IGFzIGENCnNjYWxhciB0eXBlIGFuZCB0aGF0IHB0aHJlYWRfd2lu MzIgZGV2aWF0ZXMgZnJvbSB0aGlzIGNvbnZlbnRpb24gYnkNCnVzaW5nIGEg c3RydWN0LiBUaGUgcHJvamVjdHMgRkFRIG9mZmVycyBhIGhpc3RvcnkgYW5k IGV4cGxhbmF0aW9uIGluDQpRdWVzdGlvbiAxMSwgd2hpY2ggSSd2ZSBxdW90 ZWQgYXQgdGhlIGVuZC4NCg0KSUlSQyBTb2xhcmlzIGRvZXMgbm90IHVzZSBh IHBvaW50ZXIgYnV0IHVzZXMgYW4gaW50IHR5cGUgdGhhdCBzZXF1ZW5jZXMN CnRvIHByb3ZpZGUgYSB1bmlxdWUgaWQgZm9yIGVhY2ggbmV3IHRocmVhZCBp biBhIHByb2Nlc3MuIEkgaGF2ZSBubyBpZGVhDQpob3cgU29sYXJpcyBtYXBz IHRoaXMgY291bnRpbmcgdmFsdWUgdG8gdGhyZWFkIHN0b3JhZ2Ugd2hlbiBu ZWVkZWQgbm9yDQpob3cgaXQgZG9lcyBpdCBlZmZpY2llbnRseSB3aGVuIHRo ZSBzZXQgb2YgbGl2aW5nIHRocmVhZHMgYmVjb21lcw0Kc3BhcnNlLCBidXQg dGhleSBkbyBpdC4gTGludXggYW5kIEJTRCB1c2UgcG9pbnRlcnMgd2hpY2gg YXJlIG5vdCB1bmlxdWUNCmlmIHRoZSB0aHJlYWQgZXhpdHMgYW5kIGl0cyBt ZW1vcnkgaGFzIGJlZW4gYWxsb2NhdGVkIHRvIGEgbmV3DQpwdGhyZWFkX3Qs IG9yIGFueSBvdGhlciB0eXBlIGZvciB0aGF0IG1hdHRlci4gSSBrbm93IGZy b20gY29tbWVudHMgaW4NCnRoZWlyIGNvZGUgdGhhdCB0aGUgQlNEIGRldmVs b3BlcnMgaGF2ZSB0aG91Z2h0IGFib3V0IHRoaXMgaXNzdWUgYW5kIHRoZQ0K cG9zc2liaWxpdHkgb2YgY2hhbmdpbmcgYXdheSBmcm9tIGEgcG9pbnRlciB0 eXBlIGF0IHNvbWUgcG9pbnQuDQoNCkhhdmluZyBkb25lIHNvIG91cnNlbHZl cyB3ZSBubyBsb25nZXIgZ2V0IHF1ZXN0aW9ucyBhYm91dCB0aGUgbWFueQ0K Y29tcGxleCBwcm9ibGVtcyB0aGF0IGFyaXNlIHdoZW4gdXNpbmcgcG9pbnRl cnMuIFdlIGhhdmUgaGFkIGEgZmV3DQpxdWVzdGlvbnMgbGlrZSB5b3VycyB0 byBkbyB3aXRoIHBvcnRpbmcsIGFsbCB0aHJlZSBvZiB3aGljaCBoYXZlIGJl ZW4NCmZhaXJseSBlYXNpbHkgc29sdmVkIEFGQUlLLiBJIHRha2UgdGhlIGJs YW1lIGZvciB0aGUgZGVjaXNpb24gYnV0IEkNCnRob3VnaHQgaXQgd2FzIGJl dHRlciB0byBwcm92aWRlIGFwcGxpY2F0aW9uIHJlbGlhYmlsaXR5LCBwcmVk aWN0YWJpbGl0eQ0KZXRjLiBmb3IgZXZlcnlvbmUgYW5kIGFjY2VwdCB0aGUg b2NjYXNpb25hbCBidXQgZml4YWJsZSBjb21waWxlciBicmVha2FnZS4NCg0K QnV0IHRoZSBjcnV4IG9mIGl0IGlzIHRoaXM6IHRoZSBQT1NJWCAoYW5kIG5v dyB0aGUgU1VTdjMpIHN0YW5kYXJkDQphbGxvd3MgcHRocmVhZF90IHRvIGJl IHNjYWxhciBvciBub24tc2NhbGFyIGFuZCBpbiBtYWtpbmcgaXQgbm9uLXNj YWxhcg0KaW4gcHRocmVhZHMtd2luIHdlIGFyZSBub3QganVzdCB0YWtpbmcg YWR2YW50YWdlIG9mIGEgbG9vcGhvbGUgaW4gdGhlDQpzdGFuZGFyZDsgdGhl IHN0YW5kYXJkIGhhcyBkZWxpYmVyYXRlbHkgbm90IGRlZmluZWQgcHRocmVh ZF90IHNvIHRoYXQNCmltcGxlbWVudGF0aW9ucyBjYW4gZGVmaW5lIGl0IGhv dyB0aGV5IHNlZSBmaXQuIFRoZSBub3RlcyB3aXRoaW4gdGhlDQpzdGFuZGFy ZCBhY3R1YWxseSBzdWdnZXN0IGRlZmluaW5nIHB0aHJlYWRfdCBhcyBhIHN0 cnVjdCBleGFjdGx5IGFzIGl0DQppcyBkZWZpbmVkIGhlcmUsIHRvIGFsbG93 IGluY2x1c2lvbiBvZiBhICdzZXF1ZW5jZScgY291bnRlciB0byByZW5kZXIN CnRoZSBoYW5kbGUgdW5pcXVlIG92ZXIgdGltZS4NCg0KQnV0IGJhY2sgdG8g eW91ciBjb2RlOg0KV2hhdCB3b3VsZCBoYXBwZW4gaWYgeW91IGRpZCBub3Qg c2V0IFNTRC0+aWQgPSAwLCBpLmUuIGp1c3QgbGVhdmUgaXQNCnVuaXRpYWxp c2VkPyBJJ20gY3VyaW91cyBiZWNhdXNlIHlvdXIgY29kZSBhcHBlYXJzIG5v dCB0byBhdHRlbXB0IGENCmNvbXBhcmlzb24gb2YgdGhlIHZhbHVlIHdpdGgg MCwgZS5nLiAiaWYgKFNTRC0+aWQgPT0gMCkgLi4uIiBvdGhlcndpc2UNCnlv dSB3b3VsZCBzZWUgYSBjb21waWxlciBlcnJvciBhdHRlbXB0aW5nIHRvIGNv bXBhcmUgYSBzdHJ1Y3QuDQoNCklmIHlvdSBjYW4ndCBhdm9pZCBpbml0aWFs aXNpbmcgYSBwdGhyZWFkX3QgdmFyaWFibGUsIEkgd291bGQgc3VnZ2VzdA0K ZG9pbmcgaXQgYnkgZGVjbGFyaW5nIGEgc3BlY2lhbCBwdGhyZWFkX3QgY29u c3RhbnQgd2l0aCB0aGUgdmFsdWUgeW91DQp3YW50ICgwIGluIHRoaXMgY2Fz ZSksIGUuZy46DQoNCnR5cGVkZWYgdW5pb24gew0KICAgICBwdGhyZWFkX3Qg dDsNCiAgICAgaW50IGZpbGxlcltzaXplb2YocHRocmVhZF90KS9zaXplb2Yo aW50KV07DQp9IGluaXRfdDsNCg0KY29uc3QgaW5pdF90IHVfaW5pdCA9IHsu ZmlsbGVyID0gezB9fTsgIyBSZWxpZXMgb24gaGF2aW5nIGEgQzk5DQpjb21w bGlhbnQgY29tcGlsZXINCg0KVGhlbiB5b3UgY2FuIGRvIHRoaXMgdG8gaW5p dGlhbGlzZToNCg0KU1NELT5pZCA9IHVfaW5pdC50Ow0KDQpOb3RlIHRoYXQg dGhlIGluaXRpYWxpc2F0aW9uIG9mIHRoZSBhcnJheSB1X2luaXQuZmlsbGVy IG9ubHkgc2V0cyB0aGUNCmZpcnN0IGVsZW1lbnQgdG8gMCBleHBsaWNpdGx5 IGFuZCB0aGUgcmVtYWluaW5nIGVsZW1lbnRzLCBpZiBhbnksIGFyZQ0Kc2V0 IHRvIDAgYnkgZGVmYXVsdC4gU2luY2UgeW91IGRvbid0IHJlYWxseSBrbm93 IGhvdyBtYW55IGVsZW1lbnRzIHRoZXJlDQphcmUgeW91IHNob3VsZCBwcm9i YWJseSBhdm9pZCB0cnlpbmcgdG8gaW5pdGlhbGlzZSBtb3JlIHRoYW4gb25l DQplbGVtZW50LCBpLmUuIGRvbid0IGRvICIgPSB7LmZpbGxlciA9IHswICwg MH19OyIuDQoNClRoaXMgbWV0aG9kIG1lYW5zIHlvdSBkb24ndCBuZWVkIHRv IGJyZWFrIHRoZSBvcGFjaXR5IG9mIHRoZSBwdGhyZWFkX3QNCmFuZCBpdCBz aG91bGQgYWxzbyBiZSBwb3J0YWJsZS4NCg0KQWxzbyBmb3IgcG9ydGFiaWxp dHksIHlvdSBzaG91bGQgb25seSBldmVyIHVzZSB0aGUgcHRocmVhZF9lcXVh bCgpDQpmdW5jdGlvbiB0byBjb21wYXJlIHB0aHJlYWRfdCB0eXBlcywgZS5n LjoNCg0KaWYgKHB0aHJlYWRfZXF1YWwoU1NELT5pZCwgdV9pbml0LnQpIHsN CiAgICAgLi4uDQp9DQoNCkFuZCBvbmUgbW9yZSB0aGluZyB0aGF0IEkgY2Fu IG1lbnRpb24uIEluIHB0aHJlYWRzLXdpbjMyIHlvdSBjYW4gY2FsbA0KcHRo cmVhZF9raWxsKHRocmVhZElELCAwKSB0byBjaGVjayBpZiB0aHJlYWRJRCBp cyB2YWxpZCwgaS5lLiByZWZlcnMgdG8NCmEgbGl2aW5nIHRocmVhZC4gSXQg d2lsbCByZXR1cm4gRVNSQ0ggaWYgaW52YWxpZC4gSG93ZXZlciB0aGlzIGlz IG5vdA0KcG9ydGFibGUgYW5kIHRoZXJlZm9yZSBub3Qgc2FmZSBidXQgY2Fu IHNvbWV0aW1lcyBiZSBiZXR0ZXIgdGhhbg0Kbm90aGluZy4gSXQgcHJvYmFi bHkgYWxzbyB3b3JrcyBmb3IgU29sYXJpcyBhbmQgd29ya3MgaGVyZSBiZWNh dXNlIHdlDQpjYW4gZ3VhcmFudGVlIHRoYXQgdGhyZWFkSUQgaXMgYSB1bmlx dWUgdmFsdWUgd2l0aGluIHRoZSBwcm9jZXNzIHNjb3BlDQphbmQgd2UgY2Fu IGRldGVybWluZSBhbGwgb2YgdGhlIHByZXZpb3VzIHZhbHVlcyBvZiBsaXZp bmcgYW5kIGRlYWQNCnRocmVhZElEcy4gKFRoaXMgaXMgbm90IGFic29sdXRl bHkgc3RyaWN0bHkgdHJ1ZSBvZiBjb3Vyc2UgYnV0IGlzIHRydWUNCndpdGhp biB0aGUgcHJhY3RpY2FsIGxpZmV0aW1lcyBvZiBwcm9jZXNzZXMuKQ0KDQpG QVENCj09PQ0KUSAxMSBXaHkgaXNuJ3QgcHRocmVhZF90IGRlZmluZWQgYXMg YSBzY2FsYXIgKGUuZy4gcG9pbnRlciBvciBpbnQpDQpsaWtlIGl0IGlzIGZv ciBvdGhlciBQT1NJWCB0aHJlYWRzIGltcGxlbWVudGF0aW9ucz8NCi0tLS0N Cg0KT3JpZ2luYWxseSBwdGhyZWFkX3Qgd2FzIGRlZmluZWQgYXMgYSBwb2lu dGVyICh0byB0aGUgb3BhcXVlIHB0aHJlYWRfdF8NCnN0cnVjdCkgYW5kIGxh dGVyIGl0IHdhcyBjaGFuZ2VkIHRvIGEgc3RydWN0IGNvbnRhaW5pbmcgdGhl IG9yaWdpbmFsDQpwb2ludGVyIHBsdXMgYSBzZXF1ZW5jZSBjb3VudGVyLiBU aGlzIGlzIGFsbG93ZWQgdW5kZXIgYm90aCB0aGUgb3JpZ2luYWwNClBPU0lY IFRocmVhZHMgU3RhbmRhcmQgYW5kIHRoZSBjdXJyZW50IFNpbmdsZSBVbml4 IFNwZWNpZmljYXRpb24uDQoNCldoZW4gcHRocmVhZF90IGlzIGEgc2ltcGxl IHBvaW50ZXIgdG8gYSBzdHJ1Y3Qgc29tZSB2ZXJ5IGRpZmZpY3VsdCB0bw0K ZGVidWcgcHJvYmxlbXMgYXJpc2UgZnJvbSB0aGUgcHJvY2VzcyBvZiBmcmVl aW5nIGFuZCBsYXRlciBhbGxvY2luZw0KdGhyZWFkIHN0cnVjdHMgYmVjYXVz ZSBuZXcgcHRocmVhZF90IGhhbmRsZXMgY2FuIGFjcXVpcmUgdGhlIGlkZW50 aXR5IG9mDQpwcmV2aW91c2x5IGRldGFjaGVkIHRocmVhZHMuIFRoZSBjaGFu Z2UgdG8gYSBzdHJ1Y3Qgd2FzIG1hZGUsIGFsb25nIHdpdGgNCnNvbWUgY2hh bmdlcyB0byB0aGVpciBpbnRlcm5hbCBtYW5hZ21lbnQsIGluIG9yZGVyIHRv IGd1YXJhbnRlZSAoZm9yDQpwcmFjdGljYWwgYXBwbGljYXRpb25zKSB0aGF0 IHRoZSBwdGhyZWFkX3QgaGFuZGxlIHdpbGwgYmUgdW5pcXVlIG92ZXIgdGhl DQpsaWZlIG9mIHRoZSBydW5uaW5nIHByb2Nlc3MuDQoNCldoZXJlIGFwcGxp Y2F0aW9uIGNvZGUgYXR0ZW1wdHMgdG8gY29tcGFyZSBvbmUgcHRocmVhZF90 IGFnYWluc3QgYW5vdGhlcg0KZGlyZWN0bHksIGEgY29tcGlsZXIgZXJyb3Ig d2lsbCBiZSBlbWl0dGVkIGJlY2F1c2Ugc3RydWN0cyBjYW4ndCBiZQ0KY29t cGFyZWQgYXQgdGhhdCBsZXZlbC4gVGhpcyBzaG91bGQgc2lnbmFsIGEgcG90 ZW50aWFsbHkgc2VyaW91cyBwcm9ibGVtDQppbiB0aGUgY29kZSBkZXNpZ24s IHdoaWNoIHdvdWxkIGdvIHVuZGV0ZWN0ZWQgaWYgcHRocmVhZF90IHdhcyBh IHNjYWxhci4NCg0KVGhlIFBPU0lYIFRocmVhZGluZyBBUEkgcHJvdmlkZXMg YSBmdW5jdGlvbiBuYW1lZCBwdGhyZWFkX2VxdWFsKCkgdG8NCmNvbXBhcmUg cHRocmVhZF90IHRocmVhZCBoYW5kbGVzLg0KDQpPdGhlciBwdGhyZWFkcyBp bXBsZW1lbnRhdGlvbnMsIHN1Y2ggYXMgU3VuJ3MsIHVzZSBhbiBpbnQgYXMg dGhlIGhhbmRsZQ0KYnV0IGRvIGd1YXJhbnRlZSB1bmlxdWVuZXNzIHdpdGhp biB0aGUgcHJvY2VzcyBzY29wZS4gV2luMzIgc2NhbGFyIHR5cGVkDQp0aHJl YWQgaGFuZGxlcyBhbHNvIGd1YXJhbnRlZSB1bmlxdWVuZXNzIGluIHN5c3Rl bSBzY29wZS4gSXQgd2Fzbid0IGNsZWFyDQpob3cgd2VsbCB0aGUgaW50ZXJu YWwgbWFuYWdlbWVudCBvZiB0aGVzZSBoYW5kbGVzIHdvdWxkIHNjYWxlIGFz IHRoZQ0KbnVtYmVyIG9mIHRocmVhZHMgYW5kIHRoZSBmcmFnbWVudGF0aW9u IG9mIHRoZSBzZXF1ZW5jZSBudW1iZXJpbmcNCmluY3JlYXNlZCBmb3IgYXBw bGljYXRpb25zIHdoZXJlIHRob3VzYW5kcyBvciBtaWxsaW9ucyBvZiB0aHJl YWRzIGFyZQ0KY3JlYXRlZCBhbmQgZGV0YWNoZWQgb3ZlciB0aW1lLiBUaGUg Y3VycmVudCBtYW5hZ2VtZW50IG9mIHRocmVhZHMgd2l0aGluDQpwdGhyZWFk cy13aW4zMiB1c2luZyBzdHJ1Y3RzIGZvciBwdGhyZWFkX3QsIGFuZCByZXVz aW5nIHdpdGhvdXQgZXZlcg0KZnJlZWluZyB0aGVtLCByZWR1Y2VzIHRoZSBt YW5hZ2VtZW50IHRpbWUgb3ZlcmhlYWRzIHRvIGEgY29uc3RhbnQsIHdoaWNo DQpjb3VsZCBiZSBpbXBvcnRhbnQgZ2l2ZW4gdGhhdCBwdGhyZWFkcy13aW4z MiB0aHJlYWRzIGFyZSBidWlsdCBvbiB0b3Agb2YNCldpbjMyIHRocmVhZHMg YW5kIHdpbGwgdGhlcmVmb3JlIGluY2x1ZGUgdGhhdCBtYW5hZ2VtZW50IG92 ZXJoZWFkIG9uIHRvcA0Kb2YgdGhlaXIgb3duLiBUaGUgY29zdCBpcyB0aGF0 IHRoZSBtZW1vcnkgcmVzb3VyY2VzIHVzZWQgZm9yIHRocmVhZA0KaGFuZGxl cyB3aWxsIHJlbWFpbiBhdCB0aGUgcGVhayBsZXZlbCB1bnRpbCB0aGUgcHJv Y2VzcyBleGl0cy4NCg0KV2hpbGUgaXQgbWF5IGJlIGluY29udmVuaWVudCBm b3IgZGV2ZWxvcGVycyB0byBiZSBmb3JjZWQgYXdheSBmcm9tIG1ha2luZw0K YXNzdW1wdGlvbnMgYWJvdXQgdGhlIGludGVybmFscyBvZiBwdGhyZWFkX3Qs IHRoZSBhZHZhbnRhZ2UgZm9yIHRoZQ0KZnV0dXJlIGRldmVsb3BtZW50IG9m IHB0aHJlYWQtd2luMzIsIGFzIHdlbGwgYXMgdGhvc2UgYXBwbGljYXRpb25z IHRoYXQNCnVzZSBpdCBhbmQgb3RoZXIgcHRocmVhZCBpbXBsZW1lbnRhdGlv bnMsIGlzIHRoYXQgdGhlIGxpYnJhcnkgaXMgZnJlZSB0bw0KY2hhbmdlIHB0 aHJlYWRfdCBpbnRlcm5hbHMgYW5kIG1hbmFnZW1lbnQgYXMgYmV0dGVyIG1l dGhvZHMgYXJpc2UuDQoNCg0KT24gNS8wMi8yMDExIDE6MzUgQU0sIENsYXVk ZSBMQUxZUkUgd3JvdGU6DQogPiBIaSBSb3NzLA0KID4NCiA+IEkgd291bGQg bGlrZSB0byB0aGFuayBhIGxvdCB5b3VyIHB0aHJlYWRzLXdpbjMyIHRlYW0g Zm9yIHRoZSBncmVhdA0Kd29yayB0aGV5IGFjaGlldmVkLg0KID4gVGhpcyB3 ZWVrLCBJIHdhcyBpbiBhIHNpdHVhdGlvbiBvZiBtaWdyYXRpbmcgVU5JWCBz b3VyY2UgY29kZSB0bw0KV2luZG93cyBlbnZpcm9ubWVudC4NCiA+IEFuZCBo ZWxwZnVsbHkgd2l0aCB5b3VyIHByb2plY3QgcGhyZWFkcy13aW4zMiB0aGF0 IHRhc2sgd2FzIGVhc2lseQ0KcG9zc2libGUuDQogPg0KID4gQnV0IEkgZW5j b3VudGVyZWQgc29tZSBjb21waWxhdGlvbiBpc3N1ZXMuIEFuZCBJIGhhdmUg aGFkIHRvIGRlY2xhcmUNCnNvbWUgbWlzc2luZw0KID4gdHlwZWRlZiBhbmQg bWFjcm9zIGluIG15IGNvZGUsIHBpY2tlZCBmcm9tIGN5Z3dpbiBoZWFkZXIg ZmlsZXMuIEFuZA0Kc3VycHJpc2luZ2x5DQogPiBpdCB3YXMgZW5vdWdoIGZv ciBteSBjb2RlIGJlaW5nIGFibGUgdG8gY29tcGlsZS4NCiA+DQogPiBTbyBh cyBpdCB3YXMganVzdCBhIHNtYWxsIGlzc3VlLCBJIHRob3VnaHQgSSBzaG91 bGQgZ2l2ZSB5b3UgbXkgcG9pbnQNCm9mIHZpZXcgYW5kDQogPiB0aGUgbGl0 dGxlIGRlY2xhcmF0aW9ucyBJIG1hZGUuIEkgdGhpbmsgdGhhdCBpdCBzaG91 bGQgYmUgZWFzaWx5DQppbnRlZ3JhdGVkIGluIHlvdXINCiA+IHNvdXJjZSBj b2RlLiBKdXN0IGhhdmUgYSBsb29rIGF0IHRoZSBwb3NpeC5oIGF0dGFjaGVk IGZpbGUuDQogPg0KID4gQW5vdGhlciBwb2ludCBpcyBjb25jZXJuaW5nIHRo ZSBkZWNsYXJhdGlvbiBvZiB5b3VyIHR5cGUgInB0aHJlYWRfdCIuDQpJbiBh bGwgVU5JWA0KID4gcGxhdGZvcm1zIHRoaXMgaXMgZm9ybWVybHkgYSBwb2lu dGVyLCBidXQgaW4geW91ciBXaW5kb3dzDQppbXBsZW1lbnRhdGlvbiB0aGlz DQogPiBpcyBhIHN0cnVjdCBvYmplY3QuIFRoZSBpc3N1ZSBpcyB0aGF0IEkg d2FzIGdpdmVuIGEgc291cmNlIGZpbGUNCmNvbnRhaW5pbmcgYSBTU0QNCiA+ IG9iamVjdCBjb250YWluaW5nIGEgZmllbGQgImlkIiBvZiB0eXBlIHB0aHJl YWRfdC4NCiA+DQogPiBzdHJ1Y3QgU1NEIHsNCiA+ICAgIHB0aHJlYWRfdCBp ZDsNCiA+ICAgIGludCBkdW1teTsNCiA+IH0NCiA+DQogPiBBbmQgc29tZXdo ZXJlIGVsc2UgaW4gdGhlIGNvZGUgdGhleSBnYXZlIG1lLCBJIGhhdmUgdGhp cw0KID4gU1NELT5pZCA9IDA7DQogPg0KID4gQW5kIHRoYXQgbGluZSBvZiBj b2RlIHdhcyBub3QgYWNjZXB0ZWQgYnkgY2wuZXhlIChXaW5kb3dzKSBjb21w aWxlciAhDQogPiBTbyBJIGZhY2UgdGhlIHNpdHVhdGlvbiBieSBhZGRpbmcg dGhpcyB1Z2x5IGZpeA0KID4NCiA+ICNpZmRlZiBXSU4zMg0KID4gU1NELT5p ZC5wID0gMA0KID4gI2Vsc2UgLyogV0lOMzIgKi8NCiA+IFNTRC0+aWQgPSAw Ow0KID4gI2VuZGlmIC8qIFdJTjMyICovDQogPg0KID4gU28gSSBhbSBzb3Jy eSB0byB0ZWxsIHlvdSB0aGlzIGFib3V0IHRoZSBtb3N0IGJhc2ljIHR5cGUg b2YgeW91cg0KcHRocmVhZHMtd2luMzIgbGlicmFyeSwNCiA+IGJ1dCBpdCB3 b3VsZCBoYXZlIGJlZW4gZ3JlYXQgdG8ga2VlcCB0aGUgcHRocmVhZF90IHR5 cGUgYXMgYSBwb2ludGVyDQpyYXRoZXIgdGhhbiBhIHN0cnVjdA0KID4gb2Jq ZWN0LiBIb3dldmVyLCBhcyBJIG1hbmFnZWQgdG8gZml4IHRoaXMgc2l0dWF0 aW9uIGl0cyBhIHRpbnkgaXNzdWUsIGFuDQogPiBlbmhhbmNlbWVudCBzdWdn ZXN0aW9uIHJhdGhlciB0aGFuIGEgYnVnLi4uDQogPg0KID4gVGhhbmsgYSBs b3QgZm9yIGFsbCB5b3V5IGdyZWF0IGpvYiAhDQogPg0KID4gQ2xhdWRlLg0K ID4NCiA+DQogPg0KID4NCg0KDQoNCg0K