Return-Path: Delivered-To: apmail-ws-general-archive@www.apache.org Received: (qmail 27599 invoked from network); 30 Mar 2005 10:56:51 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 30 Mar 2005 10:56:51 -0000 Received: (qmail 61732 invoked by uid 500); 30 Mar 2005 10:56:50 -0000 Delivered-To: apmail-ws-general-archive@ws.apache.org Received: (qmail 61668 invoked by uid 500); 30 Mar 2005 10:56:50 -0000 Mailing-List: contact general-help@ws.apache.org; run by ezmlm Precedence: bulk Reply-To: general@ws.apache.org list-help: list-unsubscribe: List-Post: Delivered-To: mailing list general@ws.apache.org Received: (qmail 61653 invoked by uid 99); 30 Mar 2005 10:56:50 -0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received: from ajax-1.apache.org (HELO ajax.apache.org) (192.87.106.226) by apache.org (qpsmtpd/0.28) with ESMTP; Wed, 30 Mar 2005 02:56:47 -0800 Received: from ajax.apache.org (ajax.apache.org [127.0.0.1]) by ajax.apache.org (Postfix) with ESMTP id B0F24288 for ; Wed, 30 Mar 2005 12:56:43 +0200 (CEST) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: Apache Wiki To: Apache Wiki Date: Wed, 30 Mar 2005 10:56:43 -0000 Message-ID: <20050330105643.6825.80811@ajax.apache.org> Subject: [Ws Wiki] Update of "Frontpage/Axis2/f2f 2/Scribe30" by EranChinthaka X-Virus-Checked: Checked X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N RGVhciBXaWtpIHVzZXIsDQoNCllvdSBoYXZlIHN1YnNjcmliZWQgdG8gYSB3aWtpIHBhZ2Ugb3Ig d2lraSBjYXRlZ29yeSBvbiAiV3MgV2lraSIgZm9yIGNoYW5nZSBub3RpZmljYXRpb24uDQoNClRo ZSBmb2xsb3dpbmcgcGFnZSBoYXMgYmVlbiBjaGFuZ2VkIGJ5IEVyYW5DaGludGhha2E6DQpodHRw Oi8vd2lraS5hcGFjaGUub3JnL3dzL0Zyb250cGFnZS9BeGlzMi9mMmZfMi9TY3JpYmUzMA0KDQpO ZXcgcGFnZToNCnt7ew0KIA0KI2FwYWNoZS1heGlzDQoJPT09CSoqKiBZb3VyIGhvc3QgaXMgc3Rl cmxpbmcuZnJlZW5vZGUubmV0W2ZyZWVic2Qud2lkZXhzLm5sLzY2NjddLCBydW5uaW5nIHZlcnNp b24gZGFuY2VyLWlyY2QtMS4wLjM1DQoJPS09CVVzZXIgbW9kZSBmb3IgQ2hpbnRoYWthIGlzIG5v dyAraQ0KCS0tPnwJWU9VIGhhdmUgam9pbmVkICNhcGFjaGUtYXhpcw0KCT0tPQlUb3BpYyBmb3Ig I2FwYWNoZS1heGlzIGlzIOKAnEF4aXMyIEZhY2UtVG8tRmFjZSBpbiBTcmkgTGFua2HigJ0NCgk9 LT0JVG9waWMgZm9yICNhcGFjaGUtYXhpcyB3YXMgc2V0IGJ5IEdsZW5EIG9uIFR1ZXNkYXksIE1h cmNoIDI5LCAyMDA1IDExOjE5OjE1IEFNDQoJQ2hpbnRoYWthCUhpIGFsbA0KCUNoaW50aGFrYQlE YXNhcmF0aCBpcyBkb2luZyBhIHBwdCBvbiBkYXRhIGJpbmRpbmcNCglDaGludGhha2EJR2xlbiBz dWdnZXN0ZWQgdG8gaGF2ZSBvdXIgb3duIGRhdGEgYmluZGluZyB0b29sDQoJQ2hpbnRoYWthCWFz IHdlbGwNCgktLT58CURlZXBhbCAofk1pcmFuZGFAMjAzLjE0My40MC4zKSBoYXMgam9pbmVkICNh cGFjaGUtYXhpcw0KCURlZXBhbAlkYXNhcmF0aCBpcyBkb2luZyBkYXRhYmluZGluZyBwcmVzZW50 YXRpb24NCgktLT58CWNoYXRodXJhICh+Y2hhdGh1cmFAMjAzLjE0My40MC4zKSBoYXMgam9pbmVk ICNhcGFjaGUtYXhpcw0KCS0tPnwJU3JpbmF0aCAofmhlbWFwYW5pQDIwMy4xNDMuNDAuMykgaGFz IGpvaW5lZCAjYXBhY2hlLWF4aXMNCglTcmluYXRoCWRhc3JhdGggaXMgcHJyZXNlbnRpbmcgZW5j b2RpbmcNCglTcmluYXRoCXBsdWdnYWJsZSBkYXRhIGJpbmRpbmcgaXMgdGhlIHN1YmplY3QNCgkt LT58CVRoaWxpbmEgKH5NaXJhbmRhQDIwMy4xNDMuNDAuMykgaGFzIGpvaW5lZCAjYXBhY2hlLWF4 aXMNCglTcmluYXRoCXdlIGRpc2N1c3MgdGhlIHhtbGJlYW5zIGFuZCBhanhiDQoJU3JpbmF0aAlq YXhiDQoJU3JpbmF0aAloYXZlIGxvb2sgYXQgdGhlIHNhbXBsZSBvZiBza2VsdGVvbiBhbmQgc3R1 YnMnDQoJU3JpbmF0aAlkZWNpZGVkIGl0IGlzIG9rIHRvIHJlY29kZSBnZW4gdGhlIHN0dWJzIGFu ZCBza2VsdG9ucyBpZiB0aGUgc2VydmljZSBzd2l0Y2hlcyB0aGUgZGF0YSBiaW5kaW5nIHRvb2wN CgktLT58CUFqaXRoICh+TWlyYW5kYUAyMDMuMTQzLjQwLjMpIGhhcyBqb2luZWQgI2FwYWNoZS1h eGlzDQoJQ2hpbnRoYWthCW1lYW5pbmcsIGRhdGEgYmluZGluZyBjYW4gYmUgc2V0IHBlciBzZXJ2 aWNlIGJhc2lzDQoJQWppdGgJV2UgYXJlIGluIHRoZSBkYXRhIGJpbmRpbmcgZGlzY3Vzc2lvbg0K CUNoaW50aGFrYQlHbGVuIDogT00gaGFzIGFuIGludGVyZmFjZSB0byBnZXRPYmplY3RWYWx1ZSgp DQoJQ2hpbnRoYWthCXdoaWNoIHJldHVybnMgZm9yIGV4YW1wbGUgamF2YS5hd3QuaW1hZ2UNCglD aGludGhha2EJaWYgbm9kZSBjb250YWlucyBhbiBpbWFnZQ0KCUNoaW50aGFrYQlBaml0aCA6IHRo ZSB0aW1ldGFibGUgbGluayBpbiB0aGUgd2lraSBzZWVtcyBsaWtlIG5vdCB3b3JraW5nIGZvciBt ZSA6KA0KCXtlbmd9YmFyNGthCWhpLCB3aGF0IHRpbWUgaXMgaXQgdGhlcmUgPw0KCUNoaW50aGFr YQk5LjI0IGEubS4NCgl7ZW5nfWJhcjRrYQl3b3csIGhlcmUgMC4yNCBhbQ0KCURlZXBhbAlobW0N CglBaml0aAlDaGludGhhayA6IGhvbGQgb24gV2lsbCBsb29rDQoJe2VuZ31iYXI0a2EJQ2hpbnRo YWthLCBzbyBhcmUgeW91IEFzaWFuID8NCglEZWVwYWwJQlRXIHdoZXJlIHIgdSA/DQoJQ2hpbnRo YWthCVNyaW5hdGggc3VnZ2VzdHMgdG8gaGF2ZSBhIGRhdGFiaW5kaW5nIGxheWVyIG9uIHRvcCBv ZiBPTQ0KCS0tPnwJZGltcyAofmRpbXNAMjA5LjIzNy4yMjcuMTk4KSBoYXMgam9pbmVkICNhcGFj aGUtYXhpcw0KCUFqaXRoCXRyeSB0aGlzDQoJQWppdGgJaHR0cDovL3Blb3BsZS5hcGFjaGUub3Jn L35haml0aC9zdW1taXQvZGV0YWlsZWQtdGltZS1zbG90Lmh0bWwNCglDaGludGhha2EJb2ssIHRo YW5reA0KCURlZXBhbAlwcm9ibGVtIHdpdGggeG1sIGJlYW4gYW5kIGFycmF5cw0KCVNyaW5hdGgJ ZGFzcmF0aCBzYXlzIGl0IG1pZ2h0IGJlIHRyaWNreSB5byBpbXBsZW1lbnRzIGVuY29kaW5nIGlu dGVyZmFjZQ0KCS0tPnwJSmFsaXlhICh+TWlyYW5kYUAyMDMuMTQzLjQwLjMpIGhhcyBqb2luZWQg I2FwYWNoZS1heGlzDQoJU3JpbmF0aAlJIHRob3VnaHQgaXQgaXMgZWFzeSAuLiBidXQgbGV0IHVz IHNlZQ0KCVNyaW5hdGgJbWF5IGJlIG5vdCB0aGF0IGVhc3kNCglTcmluYXRoCXNob3VsZCBtZSBo YXZlIHRoZSBpbmJ1aWxkIGRhdGFiaW5kaW5nIHRoaW5nIHRvbw0KCXtlbmd9YmFyNGthCXNob3cg aXMgYXBhY2hlMiBjb21wYXJlZCB0byBhcGFjaGUxIHdpdGggcmVzcGVjdCB0byBwZXJmb3JtYW5j ZSA/DQoJe2VuZ31iYXI0a2EJc2hvdyA9IGhvdw0KCUNoaW50aGFrYQliYXI0a2EsIHRoaXMgaXMg bm90IGEgZ2VuZXJhbCBkaXNjdXNzaW9uDQoJQ2hpbnRoYWthCXdlIGFyZSBzY3JpYmluZyB0aGUg c3R1ZmYgZ29pbmcgaW4gdGhlIG9uIGdvaW5nIGF4aXMgMiBzdW1taXQNCglDaGludGhha2EJc28g dGhpcyBtYXkgbm90IGJlIHRoZSBnb29kIHRpbWUgdG8gYXNrIHF1ZXN0aW9ucywgc29ycnkgYWJ0 IGl0IDooDQoJQ2hpbnRoYWthCWV2YWx1YXRpbmcgdG8gd2hpY2ggZXh0ZW50IHdlIG5lZWQgb3Vy IG93biBkYXRhIGJpbmRpbmcgdG9vbA0KCS0tPnwJZ3VpbGxhdW1lX3MgKH5jaGF0emlsbGFAMjAz LjE0My40MC4zKSBoYXMgam9pbmVkICNhcGFjaGUtYXhpcw0KCUNoaW50aGFrYQljb21wYXJlZCB0 byB0aGUgb3B0aW9uIG9mIHVzaW5nIHhtbCBiZWFucw0KCXtlbmd9YmFyNGthCUNoaW50aGFrYTog b2ssIGNhbiBpIHN1Z2dlc3QgPw0KCUNoaW50aGFrYQlpZGVudGlmaWVkIGZvbGxvd2luZyBhcyB0 aGUgcHJvYmxlbXMgb2YgdXNpbmcgWE1MQmVhbnMNCglEZWVwYWwJYmFyNGthIDogc3VyZQ0KCUNo aW50aGFrYQkxLiBpZiB0aGVyZSBpcyBzb21lIHRoaW5nIHdyb25nLCB3ZSBkb247dCBoYXZlIGNv bnRyb2wgb3ZlciB0aGF0DQoJQ2hpbnRoYWthCTIuIFhNTCBiZWFucyBkb2Vzbjt0IHN1cHBvcnQg TVRPTQ0KCUFqaXRoCWZvciB0aGUgYXhpcyAyIHBlcmYgcmVzdWx0cw0KCUFqaXRoCWh0dHA6Ly9w ZW9wbGUuYXBhY2hlLm9yZy9+YWppdGgvQXhpcy1QZXJmLVJlcG9ydC9QZXJmb3JtYW5jZVRlc3RS ZXBvcnQuaHRtDQoJQWppdGgJaGF2ZSBhIGxvb2sgYXQgdGhpcw0KCUNoaW50aGFrYQlEaW1zIDog RG8geW91IHdhbnQgdG8gYWRkIHNvbWUgbW9yZSA/DQoJLS0+fAlMaWxhbnRoYSAoTGlsYW50aGFA Y3BlLTI0LTE3Ny0zNy02MS5tYS5jaGFydGVyLmNvbSkgaGFzIGpvaW5lZCAjYXBhY2hlLWF4aXMN Cgl7ZW5nfWJhcjRrYQlJIHRoaW5rIHRoZSBuZXcgYXhpcyAyIHJvbGUgYXMgYmFzaWMgaW5mcmFl c3RydWN0dXJlIHByb3ZpZGVyIGhhcyBsaXR0bGUgdG8gZG8gd2l0aCBkYXRhYmluZGluZywgaSBn dWVzcyBhbm90aGVyIHN1Yi1wcm9qZWN0IGNhbiBkbyB0aGlzDQoJLS0+fAlkYXNhcmF0aCAofk1p cmFuZGFAMjAzLjE0My40MC4zKSBoYXMgam9pbmVkICNhcGFjaGUtYXhpcw0KCXtlbmd9YmFyNGth CWFuZCBpdCB3aWxsIGJlIGdyZWF0IGlmIGl0IHByb3ZpZGVzIGVhc3kgc3VwcG9ydCBmb3Igb3Ro ZXIgbWFqb3IgZGF0YWJpbmRpbmcgdG9vbHMgdG9vDQoJe2VuZ31iYXI0a2EJV2hhdCBkbyB5b3Ug dGhpbmsgQ2hpbnRoYWthID8NCglDaGludGhha2EJeWVhaCwgSSBhZ3JlZQ0KCUNoaW50aGFrYQl3 ZSB3aWxsIGRlZmluaXRlbHkgcHJvdmlkZSBhbmQgbm93IGFsc28gYWxsb3dlZCB0byBoYXZlIHN1 cHBvcnQgZm9yIG90aGVyIGRhdGEgYmluZGluZyB0b29scw0KCUNoaW50aGFrYQl3ZWxsLCBhcyB1 IHNhaWQgaXRzIGEgZ29vZCBpZGVhIHRvIGhhdmUgYSBzbWFsbCBzdWIgcHJvamVjdCB0byBnaXZl IGF4aXMgMiBpdHMgb3duIGRhdGEgYmluZGluZyB0b29sDQoJQ2hpbnRoYWthCXNvIGJhcjRrYSB3 aHkgZG9uJ3QgeW91IHN0ZXAgZm9yd2FyZCBhbmQgaGVscCB1cyBieSBtZWV0aW5nIHRoYXQgY2hh bGxlbmdlIDopDQoJe2VuZ31iYXI0a2EJd2hhdCBjaGFsbGVuZ2UgZG8geW91IHJlZmVyLCBtYWtl IGF4aXMgMiBvd24gZGF0YSBiaW5kaW5nIHRvb2wgPw0KCUNoaW50aGFrYQl5ZWFoDQoJZGFzYXJh dGgJYW55IGV4aXN0aW5nIGRhdGEtYmluZGluZyB0b29scyBmb3IgYXhpcyBjKysNCgl7ZW5nfWJh cjRrYQlpIHdpbGwgbmVlZCB0byBtdWNoIHRpbWUgdG8gaW50cm9kdWNlIG15c2VsZiBiZXR0ZXIg aW50byBheGlzIDINCgl7ZW5nfWJhcjRrYQl0byA9IHRvbw0KCUNoaW50aGFrYQlzdW1taW5nIHVw IGRhdGEgYmluZGluZyBkaXNjdXNzaW9uDQoJQ2hpbnRoYWthCTEuIHN1cHBvcnQgTVRPTSAvIFhP UA0KCUNoaW50aGFrYQkyLiBwbHVnZ2FibGUgZGF0YSBiaW5kaW5nIHN1cHBvcnQNCgl8PC0tCVRo aWxpbmEgaGFzIGxlZnQgaXJjLmZyZWVub2RlLm9yZyAoUmVhZCBlcnJvcjogMTA0IChDb25uZWN0 aW9uIHJlc2V0IGJ5IHBlZXIpKQ0KCWNoYXRodXJhCWNhbmRpZGF0ZToNCgljaGF0aHVyYQl4bWwg YmVhbnMNCgljaGF0aHVyYQlqYXhiDQoJY2hhdGh1cmEJY2FzdG9yDQoJY2hhdGh1cmEJYW5kIG91 ciB2ZXJ5IG93bjopDQoJQ2hpbnRoYWthCTMuIFN3QSBzdXBwb3J0DQoJLS0+fAlUaGlsaW5hICh+ TWlyYW5kYUAyMDMuMTQzLjQwLjMpIGhhcyBqb2luZWQgI2FwYWNoZS1heGlzDQoJLS0+fAlzYW5q aXZhXyAofnNhbmppdmFAMjAzLjE0My40MC4zKSBoYXMgam9pbmVkICNhcGFjaGUtYXhpcw0KCUNo aW50aGFrYQk0LiB3ZHNsMmphdmEgYW5kIGphdmEyd3NkbCBzdXBwb3J0IGZvciBhbGwNCgljaGF0 aHVyYQlvayBNVE9NIHByZXNlbnRhdGlvbiBjb21taW5nIHVwDQoJQWppdGgJYWZ0ZXIgdGVhIDpE DQoJQ2hpbnRoYWthCUFqaXRoIDogKzENCgljaGF0aHVyYQljdXJyZW50IGRpc2N1c3Npb24uLi4u DQoJY2hhdGh1cmEJU2Fuaml2YTogdGhlcmUgYXJlIDE1MCBsYW5ndWFnZXMgdGhhdCBjb21waWxl cyB0byBKVk0NCgljaGF0aHVyYQkiQXhpcyAyIHNob3VsZCBiZSBlbmdpbmVlcmVkKGlmIHBvc3Np YmxlKSBzbyB0aGF0IGl0IHdpbGwgYmUgdGhlIFNPQVAgc3RhY2sgZm9yIGFsbCB0aG9zZSBsYW5n dWdlcw0KCWRhc2FyYXRoCWF4aXMgMiB3aWxsIGNvbXByaXNlIG9mIGphdmEgaGFuZGxlcnMgYW5k IG5vbi1qYXZhIHNlcnZpY2UgaW1wbGVtZW50YXRpb24NCglMaWxhbnRoYQltYWtlIGhhbmRsZXJz IGluIGphdmENCglMaWxhbnRoYQlhbmQgY2FsbCBzZXJ2aWNlcyB3cml0dGVuIGluIG5heSBsYW5n dWFnZXMNCglMaWxhbnRoYQlFSVM/DQoJfDwtLQlKYWxpeWEgaGFzIGxlZnQgaXJjLmZyZWVub2Rl Lm9yZyAoIk1pcmFuZGEgSU0hIFNtYWxsZXIsIEZhc3RlciwgRWFzaWVyLiBodHRwOi8vbWlyYW5k YS1pbS5vcmciKQ0KCUxpbGFudGhhCWNhbiB3ZSBsZXZhcmFnZSBjb25uZWN0b3IgYXJjaGl0ZWN0 dXJlDQoJTGlsYW50aGEJb3IgSk5JDQoJTGlsYW50aGEJb3IgSk1TPz8NCglkYXNhcmF0aAlwcm92 aWRlciBpcyByZXNwb25zaWJsZSBmb3IgY2FsbGluZyB0aGUgc2VydmljZSBpbXBsZW1lbnRhdGlv biB3aGljaCBtYXkgYmUgaW1wbGVtZW50ZWQgaW4gYW55IGxhbmd1YWdlIGJ1dCBob3cgaXQgZG9l cyB0aGF0IGlzIGltbWF0ZXJpYWwNCglkYXNhcmF0aAlpZiBpdCBpcyBDL0MrKyB0aGVuIGl0IGlz IEpOSQ0KCUxpbGFudGhhCXllcA0KCUNoaW50aGFrYQlKTkkgaXMgY2FsbGluZyBvdGhlciBDICsr IGltcGxzDQoJQ2hpbnRoYWthCWZvciBleGFtcGxlDQoJY2hhdGh1cmEJd2VsbCB0aGF0cyBubyB0 aGUgZXhhY3QgaXNzc3VlDQoJTGlsYW50aGEJbWF5IGJlIHVzaW5nIGNvbm5lY3RvciBhcmNoaXRl Y3R1cmU/DQoJQ2hpbnRoYWthCUkgd3JvdGUgYSBwcm92aWRlciB3aGljaCB3b3JrcyB3aXRoIGEg anNjcmlwdCBzZXJ2aWNlDQoJQ2hpbnRoYWthCXNvIGJhc2ljYWxsdCB0aGUgc2VydmljZSBpcyBq c2NyaXB0DQoJY2hhdGh1cmEJaXNzdWUgaXMgaWYgd2UgYXJlIHByb3ZpZGluZyBzdXBwb3J0IGZv ciBvdGhlciBsYW5ndWFnZXMgd2Ugc2hvdWxkLnQgcmV0aGluayBvdXIgZGF0YWJpbmRpbmcgc3R1 ZmYgYW5kIG1ha2UgaXQgZXh0ZW5zaWJsZSBmb3Igb3RoZXIgbGFuZ3VhZXMob3RoZXIgdGhhbiBq YXZhKQ0KCUxpbGFudGhhCXNlcmFsaXplIGluIGEgbGFuZ3VhZ2UgbmV1dHJhbCB3YXkNCgljaGF0 aHVyYQl5YWggYnV0IGRlc2VyaWFsaXNhdGlvbiBpc250DQoJQ2hpbnRoYWthCVRFQSBCUkVBSyAh ISEhDQoJY2hhdGh1cmEJIk1UT00gYWZ0ZXIgdGVhIjopDQoJTGlsYW50aGEJdXNlIENPUkJBIGNv bmNlcHRzPw0KCXtlbmd9YmFyNGthCXdoaWxlIHdlIGRyaW5rIHRlYSwgd2hlcmUgYXJlIGd1eXMg ZnJvbSA/DQoJe2VuZ31iYXI0a2EJaSBtZWFuIHdoZXJlIGFyZSB5b3UgZnJvbSA/DQoJY2hhdGh1 cmEJQkFjayB0byBNVE9NIHByZXNlbnRhdGlvbg0KCXNhbmppdmFfCXNyaSBsYW5rYSA6LSkNCglk YXNhcmF0aAl3aGVyZSBpcyB0aGlsaW5hDQoJZGFzYXJhdGgJPw0KCS0tPnwJR2xlbkQgKH5nZGFu aWVsc0Bwc2MucHJvZ3Jlc3MuY29tKSBoYXMgam9pbmVkICNhcGFjaGUtYXhpcw0KCURlZXBhbAlD aGludGhrYSBpcyBkb2luZyBBeGlvbSBwcmVzZW5hdGlvbg0KCURlZXBhbAliaW5hcnkgdG8gaW5m b3JzZXQgZGlzY3Vzc2lvbg0KCURlZXBhbAlERkRMDQoJRGVlcGFsCWN1cnJlbnR5IHdlIGhhdmUg dGhyZWUga2luZCBvZiBidWlsZGVycw0KCURlZXBhbAlTdEFYT01CdWlsZGVyDQoJRGVlcGFsCVN0 QVhTT0FQQnVpbGRlcg0KCURlZXBhbAlTdEFYTVRPTUJ1aWxkZXINCglEZWVwYWwJZ2xlbiA6IHdo YXQgZG9zZSBTdEFYU09BUEJ1aWxkZSBkbw0KCXw8LS0JZGltcyBoYXMgbGVmdCBpcmMuZnJlZW5v ZGUub3JnIChSZW1vdGUgY2xvc2VkIHRoZSBjb25uZWN0aW9uKQ0KCXw8LS0JVGhpbGluYSBoYXMg bGVmdCBpcmMuZnJlZW5vZGUub3JnICgiTWlyYW5kYSBJTSEgU21hbGxlciwgRmFzdGVyLCBFYXNp ZXIuIGh0dHA6Ly9taXJhbmRhLWltLm9yZyIpDQoJTGlsYW50aGEJZG8gdSBoYXZlIHRoZSBVUkwg dG8gcHB0Pw0KCS0tPnwJSmFsaXlhICh+TWlyYW5kYUAyMDMuMTQzLjQwLjMpIGhhcyBqb2luZWQg I2FwYWNoZS1heGlzDQoJU3JpbmF0aAlDaGludGhha2EgaXMgcHJlc2VudGluZyBPTQ0KCVNyaW5h dGgJaGUgaGFkIGZhbHNoeSBzbGlkZXMNCgktLT58CWFzaHV0b3NoICh+YXNodTA3QG1pbm90YXVy LmFwYWNoZS5vcmcpIGhhcyBqb2luZWQgI2FwYWNoZS1heGlzDQoJRGVlcGFsCXdlIHdpbGwgZ2l2 ZSB0aGUgbGluaw0KCVNyaW5hdGgJaHR0cDovL3Blb3BsZS5hcGFjaGUub3JnL35haml0aC9zdW1t aXQvDQoJU3JpbmF0aAl0aGUgbGluaw0KCURlZXBhbAlodHRwOi8vcGVvcGxlLmFwYWNoZS5vcmcv fmFqaXRoL3N1bW1pdC8NCglEZWVwYWwJQVhJT00gcHJlc2VudGF0aW9uIGlzIHVuZGVyIHRoYXQN CglTcmluYXRoCWNoaW50aGFrYSBpcyBleHBsYWluZyB0aGUgT00gaW50ZXJmYWNlcyAuLg0KCVNy aW5hdGgJaGUgZXhwbGFpc24gdGhlIGJ1aWxkZXJzDQoJU3JpbmF0aAl3ZSB0YWxrZWQgYWJvdXQg dGhlIGZhc3QgV1MgYW5kIE9NIGEgYml0DQoJU3JpbmF0aAlpZiB3ZSBjYW4gd3JpdGUgYSBwdWxs IHBhcnNlciBvdXQgb2YgYmluYXJ5IHN0cmVhbSB3ZSBhcmUgc2FtZQ0KCVNyaW5hdGgJaWYgd2Ug ZG8gYSBuZXcgYnVpbGRlciAuLiBpdCBtaWdodCBiZSBiaXQgdHJpY2t5DQoJU3JpbmF0aAlidXQg bm90IGltcG9zc2libGUNCglEZWVwYWwJcmVuYW1lIFNPQVBIZWFkZXIgdG8gU09BUEhlYWRlciBi b2xjaw0KCURlZXBhbAlpbiBPTQ0KCS0tPnwJSmF5YSAofmpheWFjaGFuZEBtaW5vdGF1ci5hcGFj aGUub3JnKSBoYXMgam9pbmVkICNhcGFjaGUtYXhpcw0KCXw8LS0Je2VuZ31iYXI0a2EgaGFzIGxl ZnQgaXJjLmZyZWVub2RlLm9yZyAoIkNoYXR6aWxsYSAwLjkuNjcgW0ZpcmVmb3ggMS4wLjIvMjAw NTAzMTddIikNCglEZWVwYWwJaGkgamF5YSBWZW5rZXQgaXMgaGVyZQ0KCURlZXBhbAlMTE9NIGlz IGJldHRlciBwcmVmb3JtaW5nDQoJRGVlcGFsCXRoYW4gdGFibGUgbW9kZWwNCglEZWVwYWwJTExP TSAtbGlua2VkIGxpc3QgbW9kZWwNCglEZWVwYWwJbm93IHRhbGtpbmcgRGVzZ24gcG9pbnMgc2xp ZGUNCgljaGF0aHVyYQlnbGVuOiB3aHkgZG8geW91IHdhbm5uYSBjYWNoZSB3aGVuIHlvdSBzZXJp YWxpemUNCglKYXlhCWhleSB2ZW5rYXQNCglTcmluYXRoCWFtIGluIHRoZSBtaWRkbGUgb2YgZ2xl biBhbmQgZGFzcmF0aCBhcmd1aW5nIGFib3V0IE9NRWxlbWVudC5zZXJpYWxpemUod3JpdGVyLGNh Y2hlKTsNCglEZWVwYWwJZG8gdSB3YW50IHRvIHRhbGsgdG8gbnZlbmthdA0KCURlZXBhbAlqYXlh IDogZG8gdSB3YW50IHRvIHRhbGsgdG8gbnZlbmthdA0KCVNyaW5hdGgJdHJ5aW5nIHRvIG5vdCBj b3VnaHQgaW4gdGhlIG1pZGRsZSA7KQ0KCVNyaW5hdGgJaXQgaXMgZ2V0dGluZyBpbnRlcnN0aW5n IDpEDQoJc2Fuaml2YV8JcG9pbnRlciB0byBFcmFuJ3MgcHJlc2VudGF0aW9uOiBodHRwOi8vcGVv cGxlLmFwYWNoZS5vcmcvfmFqaXRoL3N1bW1pdC8gKGxvb2sgZm9yIHRoZSBheGlvbSBwcmVlc250 YXRpb24pDQoJU3JpbmF0aAl3ZSBhcmUgZ2V0dGluZyB0byBzb21lIHdoZXJlIDopDQoJfDwtLQlK YWxpeWEgaGFzIGxlZnQgaXJjLmZyZWVub2RlLm9yZyAoUmVhZCBlcnJvcjogMTA0IChDb25uZWN0 aW9uIHJlc2V0IGJ5IHBlZXIpKQ0KCUpheWEJRGVlcGFsOiBjaGVjayB0aGUgcGVyc29uYWwgY2hh dCB3aW5kb3cuIEkndmUgc2VudCB5b3UgYSBtZXNzYWdlDQoJPS09CXNhbmppdmFfIGlzIG5vdyBr bm93biBhcyBzYW5qaXZhDQoJY2hhdGh1cmEJZGVjZXNzaW9uOiBXZSBuZWVkIGEgbWV0aG9kIGlu IG9tIEVsZWxtZW50LmNvbXBsZXRlKCk7DQoJRGVlcGFsCXRoZXJlIGdvaW5nIGFuIGludGVyZXN0 aW5nIGRpc2N1c3Npb24NCglEZWVwYWwJd2l0aCBjYWNoZSBvbi9vZmYNCglEZWVwYWwJYmlnIGFy Z3VtZW50cyA6KQ0KCWFzaHV0b3NoCXdoYXQgZG9lcyBvbUVsZW1lbnQuY29tcGxldGUoKSBkbz8N CglTcmluYXRoCWl0IGNvbXBsZXRlIHRoZSBlbGVtZW50DQoJU3JpbmF0aAltYW5zIGNvbXBsZXRs eSBidWlsZCB0aGUgZWxlbWVudA0KCVNyaW5hdGgJbWVhbnMNCglEZWVwYWwJaWYgaXQgaXMgdGhl IHJvb3QgcHJhc2Ugd2hvbGUgbWVzc2FnZSBhbmQNCglEZWVwYWwJYnVpbGRlIFNPQVBFbmV2ZWxv cCBvdXQgb2YgdGhhdA0KCWFzaHV0b3NoCXByZXNlbnRseSBpcyBpdCBkb25lIHRocm91Z2ggZGV0 YWNoIG1ldGhvZD8/DQoJRGVlcGFsCXNvb3J5IGJ1aWxkDQoJYXNodXRvc2gJdGhhdCBpcyBpZiB3 ZSBkbyBkZXRhY2gsIGl0IGdldHMgYnVpbHQgY29tcGxldGVseSBpZiBpdCB3YXNuJ3QNCglEZWVw YWwJaG1tIHl1cA0KCWNoYXRodXJhCXl1cCByZW1lbWJlciB0aGUgaXNzdWUgd2UgaGFkIGluIHRo ZSBzYW1wbGUgZmV3IGRheXMgYmFjaw0KCWFzaHV0b3NoCXllYWggLi4uIHRoYXRzIHdoYXQgaSB3 YXMgdGhpbmtpbmcgYWJ0DQoJSmF5YQl3YXMgc29tZXRoaW5nIGRvbmUgaW4gYWRkQ2hpbGRFbGVt ZW50KCkgb2YgT01FbGVtZW50IHNvIHRoYXQgaWYgYSBub24tZW1wdHkgdGV4dCBub2RlIGFscmVh ZHkgaXMgcHJlc2VudCBleHRyYSBub24tdGV4dCBjaGlsZCBub2RlcyBkb24ndCBnZXQgYWRkZWQ/ Pz8NCglKYXlhCWkuZS4gc29tZXRoaW5nIGxpa2UgPGJpbGxhbW91bnQgLi4uPiAxMjAgPHRheFBl cmNlbnRhZ2U+IDggPC90YXhQZXJjZW50YWdlPiA8L2JpbGxhbW91bnQ+IGlzIG5vdCBhbGxvd2Vk DQoJY2hhdGh1cmEJYW5vdGhlciBkZWNlc3Npb246IEluIE9NIHdlIHNob3VsZCBidWlsZCB1cHRv IHRoZSBoZWFkZXIgYXMgdGhlIGhhbmRsZXJzIGFjY2VzcyB0aGUgZW52ZWxvcCAuLi4gYnV0IGxl YXZlIGFsb25lIHRoZSBib2R5IHBhcnQgdW50b3VjaGVkDQoJSmF5YQlvayEgbm90IGFuIGlzc3Vl IGlmIG9tIGlzIG9ubHkgd29ycmllZCBhYm91dCBYTUwNCgljaGF0aHVyYQlSYXRpb25hbDogdG8g c2VlIHdoZXRoZXIgd2UgaGF2ZSBtdXN0IHVuZGVyc3RhbmQgaW4gdGhlIGhlYWRlcnMNCglhc2h1 dG9zaAljaGF0aHVyYTogYnV0IHRoZW4gd2hhdCBoYXBwZW5zIHdoZW4gc2VjdXJpdHkgY29tZXMg aW50byBwaWN0dXJlPw0KCWNoYXRodXJhCW5vdGhpbmcgaGFwcGVucw0KCURlZXBhbAlyZW1vdmUg Y2FjaGUgYXJndW1uZXQgZnJvbSBlbGVtZW50LnNlcmxpemUoc3RyYWVtV3JpdGVyICwgY2FjaGUp DQoJY2hhdGh1cmEJaWYgdGhlIHNlY3VyaXR5IGhhbmRsZXIgd2FudHMgdG8gYWNjZXNzIHRoZSBi b2R5IGxldCBoaW0gZ28gYWhlYWQgYW5kIGFjY2Vzcw0KCWFzaHV0b3NoCW9raw0KCWFzaHV0b3No CWFueXRoaW5nIGRlY2lkZWQgb24gZGF0YSBiaW5kaW5nIGludGVncmF0aW9uIHdpdGggQVhJT00/ DQoJSmF5YQlZb3UgbWVhbiBldmVuIGlmIGNhY2hlIGlzIG9mZiwgd2UgYXJlIGdvaW5nIHRvIGJ1 aWxkIHRpbGwgaGVhZGVycyBmb3Igc3VyZSE/IQ0KCURlZXBhbAl5dXA6DQoJRGVlcGFsCXdlIGhh dmUgdG8gZG8gdGhhdA0KCURlZXBhbAllbHNlIGhvdyBjYW4gd2UgZmluZCBtdXN0dW5kZXJzdGFu ZCBhbmQgYWxsDQoJY2hhdGh1cmEJaGFuZyBvbg0KCUpheWEJb2theQ0KCWNoYXRodXJhCWRlZXBh bDpjb29sDQoJR2xlbkQJVGhlcmUgYXJlIHR3byBmbGFncyBmb3IgY2FjaGluZyAtIG9uZSBvbiBz ZXJpYWxpemUoKSBhbmQgb25lIG9uIGdldFB1bGxQYXJzZXIoKS4NCglHbGVuRAlFaXRoZXIgd2Ug c2hvdWxkIGxlYXZlIHRoZW0gYm90aCB0aGVyZSwgYW5kIHByb3ZpZGUgYSBjb252ZW5pZW5jZSBt ZXRob2Qgc2VyaWFsaXplKFhtbFN0cmVhbVdyaXRlcikgd2hpY2ggZGVmYXVsdHMgY2FjaGUgdG8g ZmFsc2UuLi4NCglHbGVuRAlPciB3ZSByZW1vdmUgdGhlIGFyZ3VtZW50cyBmcm9tIGJvdGggYW5k IG1ha2UgaXQgYSBidWlsZGVyLXdpZGUgZmxhZyAoYnVpbGRlci5zZXRDYWNoZShib29sZWFuKSkN Cgl8PC0tCURlZXBhbCBoYXMgbGVmdCBpcmMuZnJlZW5vZGUub3JnIChSZWFkIGVycm9yOiAxNDUg KENvbm5lY3Rpb24gdGltZWQgb3V0KSkNCglkbXdhdGVycwl7Z2xvYmFsIG5vdGljZX0gSGkgYWxs ISBJbiBhYm91dCAxLjUgaG91cnMsIEknbSBnb2luZyB0byBiZSByZWJvb3RpbmcgdGhlIG1haW4g VVMgaHViIGZvciBhIGtlcm5lbCB1cGRhdGUuIFRoaXMgd2lsbGJlIHRoZSBsYXN0IG9mIHRoZSBm aXhlcyBmb3IgdGhlIGJveGVzIHRoYXQgaGFkIHRoZSBidWdneSBrZXJuZWwgY29kZS4gVGhpcyBy ZWJvb3Qgd2lsbCBhbHNvIHRha2UgZG93biB3d3cuZnJlZW5vZGUubmV0IGJyaWVmbHkuIE1haW50 YWluZW5jZSBzaG91bGQgb25seSB0YWtlIGFib3V0IDEwIG1pbnV0ZXMgYXQgdGhlIG1vc3QuIEkg YXBvbG9naXplIGZvciB0aGUgbGF0ZSBub3RpY2UuDQoJLS0+fAlEZWVwYWwgKH5NaXJhbmRhQDIw My4xNDMuNDAuMykgaGFzIGpvaW5lZCAjYXBhY2hlLWF4aXMNCglMaWxhbnRoYQlieWUgYWxsLCBn b29kIG5pZ2h0Li4uDQoJfDwtLQlMaWxhbnRoYSBoYXMgbGVmdCBpcmMuZnJlZW5vZGUub3JnICgp DQoJRGVlcGFsCWRpc2NzdXNzaW5nIGFib3V0IE1DIHNlcmxpbGl6YXRpb24NCglEZWVwYWwJd2hp Y2ggaXMgcmVsbHkgcmVxdWlyZCBmb3IgUk0NCglTcmluYXRoCXdlIGV4cGxhaXNuIE1UT00gbm93 DQoJQWppdGgJR3V5cyB0aGUgc3VtbWl0IG1hdGVyaWFsIHBhZ2UgaXMgdXBkYXRlZCBub3cNCglB aml0aAl0aGUgTVRPTSBwcmVzZW50YXRpb24gaXMgYWxzbyB0aGVyZQ0KCVNyaW5hdGgJd2hlbiB0 aGUgVHJhbnNwb3J0IFJlY2l2ZXIgcmVjaXZlZCBhIG1lc3NhZ2UgZnJvbSB0aGUgdHJhbnNwb3J0 IHdlIGtub3cgdGhhdCBpdCBpcyBNVE9NDQoJQWppdGgJaHR0cDovL3Blb3BsZS5hcGFjaGUub3Jn L35haml0aC9zdW1taXQvDQoJU3JpbmF0aAlkbyB3ZSBoYXZlIGEgTVRPTSBidWlsZGVyIHRvIGJ1 aWxkIHRoZSBPTQ0KCVNyaW5hdGgJZ2xlbiBzYWlkIHdlIG5lZWQgdG8gc2VwZXJhdGUgWE9QIGFu ZCBNVE9NDQoJU3JpbmF0aAloYXZlIGEgdHdvIGxldmVsIGFyY2gNCglTcmluYXRoCWFyY2hpDQoJ U3JpbmF0aAl0aGUgWE9QIHRoaW5ncyBpcyBwbHVnZ2FibGUNCglTcmluYXRoCU1UT00gaXMgWE9Q IGNvbm50ZWN0ZWQgdG8gU09BUA0KCVNyaW5hdGgJYWdyZWVkDQoJU3JpbmF0aAljb21tZW50IGFj Y2VwdGVkDQoJU3JpbmF0aAlPTWJsb2IgdHJpZXMgZGlmZmVyZCBidWlsZGluZw0KCVNyaW5hdGgJ d2UgYXJlIGluIGJpZyBkaXNjdXNzaW9uIG9mIG1ha2luZyBPTSBzY2hlbWEgYXdhcmUgLi4ub29w cw0KCVNyaW5hdGgJOykNCglBaml0aAloZSBoZSBIZXJlIHdlIGFyZSBjb21pbmcgYmFjayB0byBt eSAiYnVpbGRlciBleHRlbnNpb25zIg0KCUFqaXRoCTpEDQoJQ2hpbnRoYWthCXdlbGwgSSB3b24g YWdhaW4NCglDaGludGhha2EJOkQNCglTcmluYXRoCXRoYW5rcyBnb2QgOikNCglEZWVwYWwJbm8g c2NoZW1hIGF3YXJlIHBhcnNpbmcNCglEZWVwYWwJaW4gTVRPTSBiYXNlNjQgY29udGVudCByZXBy ZXNlbnQgYXMgT01UZXh0DQoJU3JpbmF0aAl0aGUgT010ZXh0IGhhcyBnZXRUZXh0KCkgYW5kIGdl dCBkYXRhIGhhbmRsZXINCglEZWVwYWwJdGhlIHBlcnNvbiB3aG8gaXMgZ29pbmcgdG8gdXNlIHRo ZSBheGlvbSBoYXMgdG8gYXdhcmUgb2YgdGhhdA0KCVNyaW5hdGgJeWUNCglEZWVwYWwJYnVmZmVy aW5nIGlzIGRvbmUgaW4gTVRPTQ0KCURlZXBhbAlzZXJpbGl6YXRpb24NCglEZWVwYWwJc28gZGlz Y3NzY3VzaW5nIGRyYXdiYWNrIG9mIHRoYXQNCglTcmluYXRoCWdpdmUgYSBCbG9iIGEgQ0lEDQoJ U3JpbmF0aAlPTSBibG9icyBrbm93cyBob3cgdGhleSB3aWxsIGJlIHdyaXR0ZW4gbGF0ZXINCglE ZWVwYWwJc28gbm8gYnVmZnJpbmcNCglEZWVwYWwJT01ibG9iIGhhcyB0byB0byBpdHMgb3duIHNl cmlhbGl6YXRpb24NCglEZWVwYWwJaGFzIHRvIGRvDQoJW0lORk9dCU5vdyBsb2dnaW5nIHRvIDxD OlxEb2N1bWVudHMgYW5kIFNldHRpbmdzXEVyYW4gQ2hpbnRoYWthXEFwcGxpY2F0aW9uIERhdGFc TW96aWxsYVxGaXJlZm94XFByb2ZpbGVzXG54MXl2czVtLmRlZmF1bHRcY2hhdHppbGxhXGxvZ3Nc aXJjLmZyZWVub2RlLm9yZ1xjaGFubmVsc1wjYXBhY2hlLWF4aXMuMjAwNS0wMy0zMC5sb2c+Lg0K CURlZXBhbAl0YWxraW5nIGxpdHRsZSBiaXQgYWJ0IGNsaW5ldCBzaWRlDQoJRGVlcGFsCWNsaWVu dCBzZWlkZSBzZW5kZXIgLCBob3cgY2FuIHdlIHNwZWNpZnkgd3QgdG8gdXNlDQoJRGVlcGFsCWlu IHRoZSBjbGllbnQgc2lkIGVhbmQgaG93IGNsaWVudC54bWwgbG9vayBsaWtlDQoJRGVlcGFsCXNp ZCBlYW5kID0gc2lkZSBhbmQNCglTcmluYXRoCWFwaSBoYXMgdGhlIHByZXNlbmFuY2UsIHRoZW4g Y29uZiBmaWxlLCB0aGVuIGNsYXNzYXB0aCB0cmlja3MgZWN0DQoJRGVlcGFsCWlzIEhUVFAgTWlt ZSBhbmQgU01UUCBtaW1lIGFyZSBzYW1lDQoJRGVlcGFsCW1lYW4gZm9ybWF0DQoJRGVlcGFsCWhl YWRlciBmb3JtdCBhbmQgYm9uZHJ5DQoJRGVlcGFsCWJvdW5kZXJ5DQoJR2xlbkQJYm91bmRhcnkN CgljaGF0aHVyYQk6KQ0KCURlZXBhbAl3cnRpbmcgT00gYXdhcmUgamF2YSBtYWlsIGxpa2UgaW1w bGVtZW50YXRpb24NCglEZWVwYWwJPw0KCS0tPnwJRlJeMiAofkZSUXVhZHJhdEBwRDk1QjZBRUUu ZGlwMC50LWlwY29ubmVjdC5kZSkgaGFzIGpvaW5lZCAjYXBhY2hlLWF4aXMNCglEZWVwYWwJY2hp bnRoa2EgOiBkbyB1IGhhdmUgd2hvbGUgdG9kYXkgY2hhdCBsb2cNCglDaGludGhha2EJeWVhaA0K CUNoaW50aGFrYQlidXQgSSdtIG5vdCBoYXBweSB3aXRoIHRoZSB3YXkgbXkgdG9vbCBoYXMgZm9y bWF0dGVkIHRoZSBjaGF0IGxvZw0KCS0tPnwJZGltcyAofmRpbXNAMjA5LjIzNy4yMjcuMTk4KSBo YXMgam9pbmVkICNhcGFjaGUtYXhpcw0KCXw8LS0JQ2hhblNlcnYgaGFzIGxlZnQgaXJjLmZyZWVu b2RlLm9yZyAoc3RlcmxpbmcuZnJlZW5vZGUubmV0IGlyYy5mcmVlbm9kZS5uZXQpDQoJfDwtLQlG Ul4yIGhhcyBsZWZ0IGlyYy5mcmVlbm9kZS5vcmcgKHN0ZXJsaW5nLmZyZWVub2RlLm5ldCBpcmMu ZnJlZW5vZGUubmV0KQ0KCXw8LS0JSmF5YSBoYXMgbGVmdCBpcmMuZnJlZW5vZGUub3JnIChzdGVy bGluZy5mcmVlbm9kZS5uZXQgaXJjLmZyZWVub2RlLm5ldCkNCgl8PC0tCUdsZW5EIGhhcyBsZWZ0 IGlyYy5mcmVlbm9kZS5vcmcgKHN0ZXJsaW5nLmZyZWVub2RlLm5ldCBpcmMuZnJlZW5vZGUubmV0 KQ0KCXw8LS0JZGFzYXJhdGggaGFzIGxlZnQgaXJjLmZyZWVub2RlLm9yZyAoc3RlcmxpbmcuZnJl ZW5vZGUubmV0IGlyYy5mcmVlbm9kZS5uZXQpDQoJfDwtLQlzYW5qaXZhIGhhcyBsZWZ0IGlyYy5m cmVlbm9kZS5vcmcgKHN0ZXJsaW5nLmZyZWVub2RlLm5ldCBpcmMuZnJlZW5vZGUubmV0KQ0KCXw8 LS0JY2hhdGh1cmEgaGFzIGxlZnQgaXJjLmZyZWVub2RlLm9yZyAoc3RlcmxpbmcuZnJlZW5vZGUu bmV0IGlyYy5mcmVlbm9kZS5uZXQpDQoJLS0+fAlGUl4yICh+RlJRdWFkcmF0QHBEOTVCNkFFRS5k aXAwLnQtaXBjb25uZWN0LmRlKSBoYXMgam9pbmVkICNhcGFjaGUtYXhpcw0KCS0tPnwJSmF5YSAo fmpheWFjaGFuZEBtaW5vdGF1ci5hcGFjaGUub3JnKSBoYXMgam9pbmVkICNhcGFjaGUtYXhpcw0K CS0tPnwJR2xlbkQgKH5nZGFuaWVsc0Bwc2MucHJvZ3Jlc3MuY29tKSBoYXMgam9pbmVkICNhcGFj aGUtYXhpcw0KCS0tPnwJZGFzYXJhdGggKH5NaXJhbmRhQDIwMy4xNDMuNDAuMykgaGFzIGpvaW5l ZCAjYXBhY2hlLWF4aXMNCgktLT58CXNhbmppdmEgKH5zYW5qaXZhQDIwMy4xNDMuNDAuMykgaGFz IGpvaW5lZCAjYXBhY2hlLWF4aXMNCgktLT58CWNoYXRodXJhICh+Y2hhdGh1cmFAMjAzLjE0My40 MC4zKSBoYXMgam9pbmVkICNhcGFjaGUtYXhpcw0KCS0tPnwJQ2hhblNlcnYgKENoYW5TZXJ2QHNl cnZpY2VzLikgaGFzIGpvaW5lZCAjYXBhY2hlLWF4aXMNCgk8LS18CWFzaHV0b3NoIGhhcyBsZWZ0 ICNhcGFjaGUtYXhpcw0KCS0tPnwJYXNodXRvc2ggKH5hc2h1MDdAbWlub3RhdXIuYXBhY2hlLm9y ZykgaGFzIGpvaW5lZCAjYXBhY2hlLWF4aXMNCglDaGludGhha2EJUGVvcGxlIGFyZSBzdGlsbCBo YXZpbmcgbHVuY2ggaGVyZQ0KCVNyaW5hdGgJcGVvcGxlIGFyZSBkb253IHdpdGggZWF0aW5nIGFu ZCBiYWNrDQoJfDwtLQlTcmluYXRoIGhhcyBsZWZ0IGlyYy5mcmVlbm9kZS5vcmcgKCJDaGF0emls bGEgMC45LjY2IFtNb3ppbGxhIHJ2OjEuNy41LzIwMDQxMTA3XSIpDQoJRGVlcGFsCXRhbGtpbmcg YWJvdXQgYXhpcyBtb2R1bGUNCglEZWVwYWwJbWVhbiBtYXZlbiBtb2R1bGUNCgktLT58CWNoYXRo dXJhaF9fICh+Y2hhdGh1cmFAMjAzLjE0My40MC4zKSBoYXMgam9pbmVkICNhcGFjaGUtYXhpcw0K CUNoaW50aGFrYQlkZWNpZGVkIHRvIGJhc2UgYXhpcyAyIG9uIGpkayAxLjQNCglzYW5qaXZhCU1p bmltdW0gSmF2YSBjb25maWc6IEpESyAxLjQNCgktLT58CUphbGl5YSAofk1pcmFuZGFAMjAzLjE0 My40MC4zKSBoYXMgam9pbmVkICNhcGFjaGUtYXhpcw0KCUNoaW50aGFrYQlydW50aW1lIHdpbGwg YmUgb24gamF2YSAxLjQNCglDaGludGhha2EJYnV0IGZvciBvZmZsaW5lIGJ1aWxkaW5nIGphdmEg MS41IGlzIGFsbG93ZWQNCgktLT58CWZveHNkZW4gKH5nY2ZAMjAzLjE0My40MC4zKSBoYXMgam9p bmVkICNhcGFjaGUtYXhpcw0KCS0tPnwJQWppdGgwMjEzICh+TWlyYW5kYUAyMDMuMTQzLjQwLjMp IGhhcyBqb2luZWQgI2FwYWNoZS1heGlzDQoJfDwtLQlKYWxpeWEgaGFzIGxlZnQgaXJjLmZyZWVu b2RlLm9yZyAoUmVhZCBlcnJvcjogMTA0IChDb25uZWN0aW9uIHJlc2V0IGJ5IHBlZXIpKQ0KCXw8 LS0JY2hhdGh1cmEgaGFzIGxlZnQgaXJjLmZyZWVub2RlLm9yZyAoUmVhZCBlcnJvcjogMTEwIChD b25uZWN0aW9uIHRpbWVkIG91dCkpDQoJfDwtLQlBaml0aCBoYXMgbGVmdCBpcmMuZnJlZW5vZGUu b3JnIChSZWFkIGVycm9yOiAxMTAgKENvbm5lY3Rpb24gdGltZWQgb3V0KSkNCgl8PC0tCWFzaHV0 b3NoIGhhcyBsZWZ0IGlyYy5mcmVlbm9kZS5vcmcgKCkNCgktLT58CWFzaHV0b3NoICh+YXNodTA3 QG1pbm90YXVyLmFwYWNoZS5vcmcpIGhhcyBqb2luZWQgI2FwYWNoZS1heGlzDQoJQ2hpbnRoYWth CXBhY2thZ2Ugc3RydWN0dXJlIGhhcyBiaXQgb2YgY2hhbmdlcw0KCUNoaW50aGFrYQl0aGUgc3Jj IHdpbGwgYmUgcmVtb3ZlZA0KCUNoaW50aGFrYQltb2R1bGUvY29yZS9vcmcNCglDaGludGhha2EJ bW9kdWxlL2NvcmUvdGVzdA0KCUNoaW50aGFrYQltb2R1bGUvY29yZS90ZXN0LXJlc291cmNlcyBs aWtld2lzZQ0KCUNoaW50aGFrYQl0aGUgd3MtZnggaGFuZGxlcnMgd2lsbCBiZSBpbiB0aGVpciBv d24gcGxhY2VzDQoJQ2hpbnRoYWthCW5vdCB1bmRlciBheGlzIDINCglDaGludGhha2EJc28gdGhl IGZvbGxvd2luZ3Mgd2lsbCBiZSBoYW5kbGVycw0KCUNoaW50aGFrYQlzb3JyeSBtb2R1bGVzDQoJ Q2hpbnRoYWthCTEuIGNvcmUNCglDaGludGhha2EJMi4gT00NCglDaGludGhha2EJMy4gc2FtcGxl cw0KCUNoaW50aGFrYQk0LiBXT00NCglDaGludGhha2EJNS4gc2VydmVyDQoJQ2hpbnRoYWthCXdl bGwgd2UgcmVvcmRlcmVkDQoJQ2hpbnRoYWthCTEuIE9NDQoJQ2hpbnRoYWthCVdPTQ0KCUNoaW50 aGFrYQkyLiBXT00NCglDaGludGhha2EJMy4gQ29yZQ0KCWFzaHV0b3NoCWRvIHdlIGhhdmUgbW9k dWxlL2NvcmUvb3JnL2FwYWNoZS9heGlzIGRpcmVjdGx5PyBzaHVkbid0IGEgamF2YSBpbiBiZXR3 ZWVuLCBsaWtlIG1vZHVsZS9jb3JlL2phdmEvb3JnL2FwYWNoZSBiZSBiZXR0ZXINCglDaGludGhh a2EJQXNodSA6IE5vDQoJQ2hpbnRoYWthCWNveiB3ZSBoYXZlIHR3byBqYXZhDQoJQ2hpbnRoYWth CWF4aXMvdHJ1bmsvKmphdmEqL21vZHVsZS9jb3JlLypqYXZhKg0KCUNoaW50aGFrYQlzZWUNCglD aGludGhha2EJaGVyZSBwZW9wbGUgYXJlIHJlLWFycmFuZ2luZyB0aGUgc3RydWN0dXJlDQoJYXNo dXRvc2gJb2sgYnV0IHRoZW4gd2Ugc2h1ZCBoYXZlIHNyYyBpbnN0ZWFkIG9mIGphdmEsIGFzIG5v dyB1J2xsIGhhdmUgZGlmZmVyZW50IHN0cnVjdHVyZSBmb3IgdGVzdCBhbmQgc3JjIGRpcmVjdG9y eQ0KCWd1aWxsYXVtZV9zCWJ1dCB3ZSBoYXZlICp0ZXN0KiBhdCB0aGUgc2FtZSBsZXZlbCA6IGF4 aXMvdHJ1bmsvKmphdmEqL21vZHVsZS9jb3JlLyp0ZXN0Ki9vcmcvLi4uDQoJQ2hpbnRoYWthCXNv cnJ5DQoJSmF5YQlmb3Igc2V0dGluZyB1cCBzb3VyY2UgcGF0aCBpbiBlY2xpcHNlIGl0IG1pZ2h0 IGJlIGxpdHRsZSBhbm5veWluZyBpZiB5b3UgZG9uJ3QgaGF2ZSBhIHRvcCBsZXZlbCBmb2xkZXIg Zm9yIGFsbCB0aGUgc291cmNlDQoJZ3VpbGxhdW1lX3MJc3JjL3NyYyA/DQoJYXNodXRvc2gJZXhh Y3RseQ0KCUNoaW50aGFrYQlJJ3ZlIG1lbnRpb25lZCB3cm9uZw0KCUNoaW50aGFrYQlpdHMgbGlr ZSBtb2R1bGUvY29yZS9zcmMNCglDaGludGhha2EJbW9kdWxlL2NvcmUvdGVzdA0KCUNoaW50aGFr YQlzb3JyeSA6KA0KCWFzaHV0b3NoCW9rLCB0aGlzIGxvb2tzIGZpbmUgOikNCglndWlsbGF1bWVf cwl0aGlzIGlzIG5vdCBhICp1c3VhbCogbWF2ZW4gc3RydWN0dXJlIC4uLg0KCUpheWEJcGVyZmVj dGx5IGZpbmUNCglDaGludGhha2EJR3VpbGF1bWUgOiBXaHkgPz8/DQoJQ2hpbnRoYWthCWFyZSB3 ZSBnb25uYSBzaGFwZSBvdXIgcHJvamVjdCBhY2NvcmRpbmcgdG8gTWF2ZW4NCglDaGludGhha2EJ aXRzIGp1c3QgYSBidWlsZCB0b29sDQoJQ2hpbnRoYWthCTooDQoJZ3VpbGxhdW1lX3MJYWxtb3N0 IGFsbCBtYXZlbiBwcm9qZWN0cyBoYXZlIGEgc3JjIGZvbGRlciB3aXRoIGFsbCBzb3VyY2VzIGlu c2lkZSAoamF2YSBzb3VyY2VzLCB0ZXN0IHNvdXJjZXMsIHJlc291cmNlcywgLi4uKQ0KCUNoaW50 aGFrYQlvaGhoaGhoDQoJZ3VpbGxhdW1lX3MJdGhhdCBjYW4gYmUgY29uZnVzaW5nIGZvciBkZXZl bG9wcGVycyB3aG8gYXJlIHVzZWQgdG8gYnVpbCB3aXRoIG1hdmVuDQoJQ2hpbnRoYWthCXdlIGp1 c3QgcmVtb3ZlZCBPTSBuYW1lIGZyb20gdGhlIHBhY2thZ2Ugc3RydWN0dXJlIDooIDooIDooDQoJ Q2hpbnRoYWthCWl0cyByZW5hbWVkIHRvIHhtbA0KCUpheWEJYnV0IHNlcGVyYXRpbmcgdGVzdCBz b3VyY2VzIGFuZCBjb2RlIHNvdXJjZXMgY2FuIGhlbHAgdG8gc2V0IHVwIElERXMgd2l0aCBqdXN0 IHRoZSByZXF1aXJlZCBjb250ZW50cw0KCUNoaW50aGFrYQlhcyBpdCAqd2lsbCogY29udGFpbiBz b21lIGRhdGEgYmluZGluZyBzdHVmZiBhcyB3ZWxsDQoJYXNodXRvc2gJY2hpbnRoYWthLCB0aGF0 IGxvb2tzIGdvb2QgaW5mYWN0LCB3aHkgOiggPz8NCglKYXlhCU9NIHJlbmFtZWQ/IG1lIHRvbyA6 KA0KCUNoaW50aGFrYQlPTSBpcyBhIGdvb2QgbmFtZSA6KA0KCUNoaW50aGFrYQlKYXlhLCB1IHdp dGggbWUgPz8NCglKYXlhCXl1cCwgd2UgYm90aCB3aXRoIE9NLiBCdXQgbm90IHRvIHN0YXJ0IGEg ZmlnaHQgYWdhaW5zdCB0aGUgYmlnIHdpZ3MgZGVjaXNpb24sIHRob3VnaA0KCUFqaXRoMDIxMwk6 KQ0KCUNoaW50aGFrYQlwb29yIHdlIDooDQoJYXNodXRvc2gJYW55d2F5cywgd2hhdCBoYXMgYmVl biBkZWNpZGVkIG9uIGRhdGEgYmluZGluZz8NCglDaGludGhha2EJd2VsbCBidXQgaXQgaGFzIGEg bWVhbmluZyB0aG91Z2gNCgk9LT0JQWppdGgwMjEzIGlzIG5vdyBrbm93biBhcyBBaml0aA0KCUNo aW50aGFrYQl3ZSBnb25uYSBoYXZlIG91ciBvd24gZGF0YSBiaW5kaW5nIGFzIHdlbGwNCglhc2h1 dG9zaAlubyBjYXN0b3I/Pw0KCUNoaW50aGFrYQlidXQgd2UgY2FuIHBsdWdpbiBhbnkgZGF0YSBi aW5kaW5nIHRvb2wNCglhc2h1dG9zaAlvaw0KCUNoaW50aGFrYQlBc2h1IDogYW55dGhpbmcNCglK YXlhCUNoaW50YWthIGFjdHVhbGx5IE9NIG5hbWUgaW4gdGhlIGluaXRpYWwgd2hlbiBJIHRyaWVk IHRvIHVuZGVyc3RhbmQgaXQgd2FzIHZlcnkgY29uZnVzaW5nLCBiZWluZyBmcmFuay4gSWYgb25l IHdlcmUgdG8gd3JpdGUgZG9jdW1lbnRhdGlvbiB0aGUgc2FtZSB3b3VsZCBjbHJlYXJseSByZWZs ZWN0Lg0KCUNoaW50aGFrYQlKQVhCLCBDYXN0b3IsIEpBWE1lLCBYTUxCRWFucywgdSBuYW1lIGl0 LCB3ZSBoYXZlIGl0DQoJY2hhdGh1cmFoX18JOikNCglDaGludGhha2EJd2VsbCwgaXMgdGhlIGN1 cnJlbnQgZG9jdW1lbnRhdGlvbiBub3QgZW5vdWdoID8NCglkYXNhcmF0aAk6KQ0KCUNoaW50aGFr YQlodHRwOi8vd3MuYXBhY2hlLm9yZy9heGlzMi9PTVR1dG9yaWFsLmh0bWwNCglKYXlhCVRoZSB3 aG9sZSBhcmNoaXRlY3R1cmUgd2UgY2FsbCBPTSBhdCBzZXZlcmFsIHBsYWNlcywgdGhlIG9iamVj dCBtb2RlbCB0aGF0IGlzIGJ1aWx0IGluc2lkZSBpcyBhbHNvIGNhbGxlZCBPTQ0KCUNoaW50aGFr YQl0aGUgd2hvbGUgYXJjaGkgaXMgQVhJT00NCglDaGludGhha2EJYW5kIHdoYXQgaXMgYnVpbGQg aW5zaWRlIGlzIE9NDQoJZGFzYXJhdGgJaXNuJ3QgdGhlICJ0cmFkZS1tYXJrIiBvZiBPTSBpcyBB WElPTQ0KCWRhc2FyYXRoCUkgd291bGQgbGlrZSB0byBzZWUgYW4gYXhpb20gbW9kdWxlIGluIHRo ZSBheGlzIGJ1aWxkDQoJSmF5YQlCdXQgT00gaXMgdW5kZXJzdG9vZCBhcyBhIHNob3J0IGZvciBB WElPTSwgaGVuY2UgdGhlIGNvbmZ1c2lvbg0KCWRhc2FyYXRoCU9NPW9iamVjdCBtb2RlbA0KCWRh c2FyYXRoCXBlcmlvZA0KCWRhc2FyYXRoCUkgZ3Vlc3Mgb3VyIGNsYXNzbmFtZXMgY3JlYXRlIHRo aXMgY29uZnVzaW9uDQoJSmF5YQl5ZWFoIHllYWguIG5vdyB0aGF0IGFmdGVyIGdldHRpbmcgZGVl cCB0aGVyZSBkb2Vzbid0IHNlZW0gYW55IGNvbmZ1c2lvbi4gQnV0IHdoZW4gSSBzdGFydGVkIEkg aGFkIGEgbG90IGNvbmZ1c2lvbg0KCUNoaW50aGFrYQl0aGF0cyBob3cgcmVhbGx5IGdvb2QgdGhp bmcgYXJlDQoJQ2hpbnRoYWthCW91dHNpZGUgaXQgc2VlbXMgcmVhbGx5IGdyZWF0DQoJQ2hpbnRo YWthCWJ1dCBpbnNpZGUgLi4uLiA6KQ0KCUNoaW50aGFrYQl3ZWxsIHRoaXMgaXMgdGhlIHJlLXJl LXJlZmluZWQgbW9kdWxlIHN0cnVjdHVyZQ0KCWRhc2FyYXRoCTopIGFuZCBPTSBpcyBub3QgYW55 IGRpZmZlcmVudA0KCUpheWEJOikNCglkYXNhcmF0aAlidXQgaG9wZWZ1bGx5IHdlIHdpbGwgZG8g c29tZSBjbGVhbmluZyB2ZXJ5IHNvb24NCglDaGludGhha2EJMS4gWE1MIChPTSArIERhdGEgQmlu ZGluZyBpbXBsICsgRGF0YSBiaW5kaW5nIGludGVyZmFjZXMpDQoJQ2hpbnRoYWthCTIuIFdPTQ0K CUNoaW50aGFrYQkzLiBDb3JlDQoJZGFzYXJhdGgJLTEgZm9yIHhtbA0KCUNoaW50aGFrYQk0LiBT ZXJ2ZXIgKFByb3ZpZGVycywgTGlzdGVuZXJzKQ0KCUNoaW50aGFrYQk1LiBTYW1wbGVzDQoJQ2hp bnRoYWthCTYuIFRvb2wNCglkYXNhcmF0aAl4bWwgaXMganVzdCBvbmUgZm9ybSBvZiBzZXJpYWxp emF0aW9uDQoJQ2hpbnRoYWthCTYuIFRvb2xzDQoJQ2hpbnRoYWthCTcuIEpDUA0KCUpheWEJd2hh dCBoYXBwZW5lZCB0byB0aGUgdHJhbnNwb3J0IHN0dWZmPz8/DQoJZGFzYXJhdGgJT00gaXRzZWxm IGdvZXMgYmV5b25kIHRoZSB4bWwgaW5mb3JzZXQNCglKYXlhCUkgdGhpbmsgSSdsbCBoYXZlIHJl ZmFjdG9yIG15IGNvbW1vbnNIVFRQIGVmZm9ydCBvbmNlIGFnYWluIHRoZW4NCglDaGludGhha2EJ dGhleSBnb2VzIHVuZGVyIGNvcmUNCglDaGludGhha2EJSmF5YSwgcmVmYWN0b3JpbmcgaXMgbm90 aGluZyBhbmQgdXN1YWwgdGhpbmcgOikNCglBaml0aAlKYXkgLSBPbmx5IHRoaW5nIGlzIHRoZSBj bGFzcyBsb2NhdGlvbnMgY2hhbmdlLiBub3QgdGhlIHBhY2thZ2VzDQoJSmF5YQlZZWFoLCB0cnlp bmcgdG8gY29udmluY2UgbWUgb2YgdGhhdCBmYWN0DQoJYXNodXRvc2gJd2hhdCBhYnQgU09BUCBz cGVjaWZpYyBjbGFzc2VzIG9mIE9NPyByIHRoZXkgdW5kZXIgeG1sIHRvbz8NCglDaGludGhha2EJ eWVhaA0KCUNoaW50aGFrYQlkaXNjdXNzaW5nIHRoYXQgbm93DQoJQWppdGgJc28gcHJvYmFibHkg eW91IHdvbnQgbmVlZCB0byBkbyBuYXl0aGluZyBleGNlcHQgcHV0IHRoZSBjb3JyZWN0IGRlcGVu ZGFuY2llcw0KCWFzaHV0b3NoCWNoaW50aGFrYSwgdSB3YW50ZWQgdGhlbSB0byBtb3ZlIG91dHNp ZGU/DQoJSmF5YQlBaml0aDogZ290IGl0LiBlYXJsaWVyIGFsc28gSSBkaWRuJ3QgZG8gYW55dGhp bmcgZ3JlYXQNCgl8PC0tCXNhbmppdmEgaGFzIGxlZnQgaXJjLmZyZWVub2RlLm9yZyAoUmVhZCBl cnJvcjogMTEwIChDb25uZWN0aW9uIHRpbWVkIG91dCkpDQoJQ2hpbnRoYWthCUFzaHUgOiBXaGF0 IGRvIHUgbWVhbiA/DQoJYXNodXRvc2gJdSB3YW50ZWQgb20gdG8gdGFrZSBjYXJlIG9mIGp1c3Qg eG1sIGluZm9zZXQ/DQoJQ2hpbnRoYWthCXllYWgsIG5vdyB0b28NCglDaGludGhha2EJYW5kIHBw bCBoYXZlIGFncmVlZCBmb3IgdGhhdA0KCUNoaW50aGFrYQlidXQgaXRzIG5pY2UgdG8gaGF2ZSBT T0FQIHNwZWNpZmljIHRoaW5nIGFsc28gOykNCglDaGludGhha2EJc28sIGJpdCBvZiBjb21wcmFt aXNhdGlvbg0KCURlZXBhbAluZXcgbW9kdWxlIHN0cnVjdHVyZQ0KCURlZXBhbAlodHRwOi8vcGVv cGxlLmFwYWNoZS5vcmcvfmRlZXBhbC9heGlzMmYyZi9tb2R1ZWxzLkpQRw0KCUNoaW50aGFrYQlk ZWVwYWwsIHUgciB0b28gc21hcnQNCglDaGludGhha2EJOikNCglEZWVwYWwJOikNCglhc2h1dG9z aAlsb29rcyBnb29kIDopDQoJQ2hpbnRoYWthCWJ1dCB1IGhhdmUgbWlzc2VkIGpjcA0KCUNoaW50 aGFrYQk6KQ0KCUFqaXRoCURlZXBhbDogeW91IG1pc3NlZCBKQ1ANCglEZWVwYWwJaSB3aWxsIHVw ZGF0ZSB0aGF0DQoJQ2hpbnRoYWthCXRyYW5zcG9ydCBzdHVmZg0KCUNoaW50aGFrYQlhbGwgdGhl IHNlbmRlcnMgZ290byBjb3JlDQoJQ2hpbnRoYWthCWFsbCB0aGUgbGlzdGVuZXJzIGdvdG8gc2Vy dmVyDQoJYXNodXRvc2gJd2hhdCB3aWxsIEpDUCBoYXZlPz8gOi1TDQoJQ2hpbnRoYWthCVNBQUog c3R1ZmYgdSBndXlzIGdvbm5hIGRvIDspDQoJRGVlcGFsCWkgdXBkYXRlZCB0aGUgaW1hZ2Ugc29y cnkgZm9yIG1pc3Rha2UNCglhc2h1dG9zaAlkZWVwYWwgdSB3b3VsZCBhbHNvIGxpa2UgdG8gY29y cmVjdCB0aGUgZmlsZW5hbWUgdG8gbW9kdWxlcy5KUEcNCglDaGludGhha2EJYXJlIHdlIGdpdmlu ZyBoaW0gaGFyZCB0aW1lIDspDQoJYXNodXRvc2gJOikNCglEZWVwYWwJb2ggb2sNCglndWlsbGF1 bWVfcwlqY3Agc2hvdWxkIGNvbnRhaW5zIHNhYWogKDEuMiBhbmQgbmV4dCB2ZXJzaW9uID8pLCBq YXhycGMoMS4xIGFuZCAyLjApIEFQSXMgKyBheGlzIGltcGwNCglEZWVwYWwJZG9uZQ0KCURlZXBh bAlodHRwOi8vcGVvcGxlLmFwYWNoZS5vcmcvfmRlZXBhbC9heGlzMmYyZi9tb2R1bGVzLkpQRw0K CUNoaW50aGFrYQlwZW9wbGUgbm93IHRhbGsgYWJvdXQgdGhlIG1vZHVsZSBpbnRlcmZhY2UNCglE ZWVwYWwJZ2xlbiA6IGVuZ2luZSBpcyBub3Qgc3RhdGVsZXNzDQoJRGVlcGFsCXNyaW5hdGggOiBp dCBpcyBub3QNCglDaGludGhha2EJTm93IHdlIGhhdmUgYSBwcm9ibGVtDQoJQ2hpbnRoYWthCXdo ZXRoZXIgQXhpcyBlbmdpbmUgaXMgc3RhdGVsZXNzIG9yIG5vdA0KCURlZXBhbAl3aGF0IGlzIEF4 aXNlbmdpbmUgLCB3dCBpdCBoYXMNCglDaGludGhha2EJd2UgaGF2ZSB3b3JsZCB3YXIgNCBoZXJl IDspDQoJZGFzYXJhdGgJZ2xlbjogIkEgU2VydmljZSBoYXMgYW4gYXNzb2NpYXRlZCBjbG91ZCBv ZiBzdGF0ZSINCglEZWVwYWwJYXJlIHdlIGdvaW5nIHRvIGhhdmUgbXVsaXRwbGUgYXhpc2VuZ2lu ZQ0KCWRhc2FyYXRoCWZveDogSXRzIGFjdHVhbGx5IGEgc3Rvcm0gb2Ygc3RhdGUNCglEZWVwYWwJ cGVyIG9uZSB0cmFuc3BvcnQNCglDaGludGhha2EJOykNCglEZWVwYWwJKGRpbXMgYXNraW5nKQ0K CWRhc2FyYXRoCTpEDQoJQ2hpbnRoYWthCURlZXBhbCA6IEFyZSB1IGEgY29tbWVudGF0b3Igb2Yg YSBjcmlja2V0IG1hdGNoID8/DQoJY2hhdGh1cmFoX18JOikNCglhc2h1dG9zaAljJ21vbiBoZXog ZG9pbiBhIGJldHRlciBqb2IgdGhhbiBSYW5qaXQgRmVybmFuZG8gOykNCglDaGludGhha2EJd2Vs bCBhbnlvbmUgY2FuIGRvIGJldHRlciB0aGFuIGhpbSBtYW4gOykNCglDaGludGhha2EJbm93IHBl b3BsZSBhcmUgZHJhd2luZyBzb21lIHBpY3R1cmVzIGFuZCBydWNoaXRoIGlzIHRha2luZyBzb21l IHBpY3R1cmVzDQoJZGFzYXJhdGgJYm90aCBzYW5qaXZhIGFuZCBnbGVuIGFyZSBkcmF3aW5nIHBp Y3R1cmVzDQoJY2hhdGh1cmFoX18JOikNCglkYXNhcmF0aAlwZW9wbGUgYXJlIHRhbGtpbmcgYWJv dXQgcGVyc2lzdGFuY2UgaW4gYXhpcw0KCWRhc2FyYXRoCXdoYXQgYXJlIHRoZSBjb250ZXh0cyB0 aGF0IHdlIHNob3VsZCBoYXZlPw0KCWRhc2FyYXRoCXdzLWNvbnRleHQsIG1lc3NhZ2UtY29udGV4 dCwgdHJhbnNwb3J0LWNvbnRleHQsIC4uLg0KCUNoaW50aGFrYQlzYW5qaXZhIHByb3Bvc2VkIGFu b3RoZXIgYXJjaGl0ZWN0dXJlDQoJQ2hpbnRoYWthCWEgc2xpZ2h0bHkgZGlmZmVyZW50IG9uZQ0K CWRhc2FyYXRoCXNob3VsZCB3ZSBvciBzaG91bGQgd2Ugbm90IGhhdmUgc2Vzc2lvbiBzY29wZSBp biBheGlzIDIuMA0KCURlZXBhbAliaWcgZGlzY3Vzc2lvbiBhYm91dCBzY29wZQ0KCURlZXBhbAlF bmdpbmUgY29udHRleHQNCglEZWVwYWwJU2VydmljZSBjb250dGV4dA0KCURlZXBhbAltb2R1bGUg Y29udHRleHQNCglEZWVwYWwJdHJhbnNwb3J0IGNvbnR0ZXh0DQoJRGVlcGFsCWFuZCBtZXNzYWdl IGNvbnRleHQNCglDaGludGhha2EJb25lIGNhbiBzZWUgdGhlIFNhbmppdmEncyBwcm9wb3NhbCBo ZXJlDQoJQ2hpbnRoYWthCWh0dHA6Ly9wZW9wbGUuYXBhY2hlLm9yZy9+Y2hpbnRoYWthL3N1bW1p dC9JTUdfMDYzOC5qcGcNCglDaGludGhha2EJc29ycnkgY2hhbmdlZCB0aGUgbmFtZSBvZiB0aGUg ZmlsZQ0KCUNoaW50aGFrYQlodHRwOi8vcGVvcGxlLmFwYWNoZS5vcmcvfmNoaW50aGFrYS9zdW1t aXQvc2Fuaml2YV9wcm9wLmpwZw0KCURlZXBhbAlodHRwOi8vcGVvcGxlLmFwYWNoZS5vcmcvfmRl ZXBhbC9heGlzMmYyZi9uZXdhcmNoaS5KUEcNCglEZWVwYWwJbmV3IGFyY2hpdGVjdHVyZSBwdXJv c2VkIGJ5IFNhbmppdmENCgktLT58CXNyaW5hdGhfcGVyZXJhICh+c3JpbmF0aF9wQDIwMy4xNDMu NDAuMykgaGFzIGpvaW5lZCAjYXBhY2hlLWF4aXMNCglHbGVuRAktLSBJdCBpcyBwb3NzaWJsZSBm b3IgdmFyaW91cyBjb21wb25lbnRzIChzZXJ2aWNlcywgZXRjKSB0byBhY2Nlc3MgdGhlIHZhcmlv dXMgc2NvcGVzLi4uIGhhdmUgdG8gYmUgY2FyZWZ1bCBhYm91dCB0aGlzLiBGb3IgaW5zdGFuY2Us IHRoZSBBZG1pblNlcnZpY2UgaXMgYSBzZXJ2aWNlIHdoaWNoIGFmZmVjdHMgdGhlIFJlZ2lzdHJ5 LiBXZSBuZWVkIHRvIGNvbnRpbnVlIHRvIHN1cHBvcnQgdGhpcyBzb3J0IG9mIHRoaW5nLg0KCUds ZW5ECS0tIEEgInR3byBsZXZlbCIgcmVnaXN0cnkgc2VlbXMgbGlrZSBhIGdvb2QgaWRlYSBieSBk ZWZhdWx0LiBUaGVyZSBpcyB0aGUgInBlcnNpc3RlbnQiIHJlZ2lzdHJ5LCB3aGljaCBpcyB0aGUg b25lIHRoYXQgY29ycmVzcG9uZHMgdG8gdGhlIGRpc2svZGF0YWJhc2UgdmVyc2lvbiBvZiB0aGUg Y29uZmlndXJhdGlvbi4gSWYgeW91IHdyaXRlIHRvIHRoYXQgb25lIHZpYSBBUElzLCB5b3UgZW5k IHVwIHdyaXRpbmcgdG8gcGVyc2lzdGVudCBzdG9yYWdlLiBUaGVuIHRoZXJlJ3MgdGhlICJkeW5h bWljIiByZWdpc3RyeSB3aGljaCBzaXRzIG9uIHRvcC4NCglHbGVuRAkuLi50aGUgZHluYW1pYyBv bmUgbGV0cyB5b3UgZG8gdGhpbmdzIGxpa2UgZGVwbG95IGFzeW5jaHJvbm91cyBjYWxsYmFjayBl bmRwb2ludHMgKHdoaWNoIGNvbWUgYW5kIGdvKSB3aXRob3V0IG1lc3NpbmcgdXAgdGhlIG9uLWRp c2sgdmVyc2lvbiBvZiB5b3VyIGNvbmZpZy4NCglHbGVuRAktLSBXZSBuZWVkIHRvIGNvbnRpbnVl IHRvIHN1cHBvcnQgQXhpcyAxJ3MgY29uY2VwdCBvZiBzY29wZSBjaGFpbmluZywgd2hlcmUgaXQg c2hvdWxkIGJlIHBvc3NpYmxlIHRvIGFzayBmb3IgdGhpbmdzIGZyb20gdGhlIE1lc3NhZ2VDb250 ZXh0IHdoaWNoIGFyZSBzdXBwbGllZCBieSB3aGF0ZXZlciBjb250ZXh0IGxldmVsIGF0IHdoaWNo IHRoZXkgYXJlIGZpcnN0IGVuY291bnRlcmVkIChpLmUuIHNldHRpbmcgU0VORF9YU0lfVFlQRVMg YXQgdGhlIGVuZ2luZSBsZXZlbCBtYWtlcyB0aGF0IHNldHRpbmcgYXZhaWxhYmxlIHRvIGFsbCBz ZXJ2aWNlcyB3aGljaCBoYXZlbid0IG92ZXJyaWRkZW4gdGhhdCB0aGVtc2VsdmVzKQ0KCXw8LS0J Z3VpbGxhdW1lX3MgaGFzIGxlZnQgaXJjLmZyZWVub2RlLm9yZyAoUmVhZCBlcnJvcjogMTA0IChD b25uZWN0aW9uIHJlc2V0IGJ5IHBlZXIpKQ0KCWRpbXMJaHR0cDovL3lmaWx0ZXIuY3MuYmVya2Vs ZXkuZWR1Lw0KCS0tPnwJZ3VpbGxhdW1lX3MgKH5jaGF0emlsbGFAMjAzLjE0My40MC4zKSBoYXMg am9pbmVkICNhcGFjaGUtYXhpcw0KCUNoaW50aGFrYQloZXkgZ3V5cyBsb29rIGF0IHRoaXMNCglD aGludGhha2EJaHR0cHM6Ly9zdGF4MmRvbS5kZXYuamF2YS5uZXQvDQoJQ2hpbnRoYWthCXNlZW1z IHRoZXkgaGF2ZSBkb25lIHNvbWUgb2Ygb3VyIHdvcmsNCglEZWVwYWwJaGkgYXNodSwgYW5kIGph eWEgLSB2ZW5rYXQgaGVyZS4gRG8geW91IGd1eXMgaGF2ZSBhbnkgcXVlc3Rpb25zIGZvciB0aGUg dG9waWNzIHNvIGZhciBkaXNjdXNzZWQgaGVyZT8NCglhc2h1dG9zaAloaSB2ZW5rYXQsIHdlJ2xs IGtlZXAgb24gc2hvb3RpbmcgYXMgYW5kIHdoZW4gd2UgaGF2ZSBxdWVzdGlvbnMNCgl8PC0tCXNy aW5hdGhfcGVyZXJhIGhhcyBsZWZ0IGlyYy5mcmVlbm9kZS5vcmcgKCJDaGF0emlsbGEgMC45LjY3 IFtGaXJlZm94IDEuMC4xLzIwMDUwMjI1XSIpDQoJRGVlcGFsCWRpY3Vzc2luZyBhYm91dCBtb2R1 bGUNCglEZWVwYWwJaW5pdCgpIG1ldGhvZA0KCURlZXBhbAl3aGF0IHdlIGdpdmUgYXMgYXJndW1l bnQNCgktLT58CUphbGl5YSAofk1pcmFuZGFAMjAzLjE0My40MC4zKSBoYXMgam9pbmVkICNhcGFj aGUtYXhpcw0KDQp9fX0NCg==