From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [46.235.227.227]) by sourceware.org (Postfix) with ESMTPS id A5051397183F for ; Wed, 9 Dec 2020 16:59:24 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org A5051397183F Received: from collabora.com (unknown [IPv6:2001:4d48:ad5c:ef00:8e70:5aff:fe59:c29c]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: vivek) by bhuna.collabora.co.uk (Postfix) with ESMTPSA id 71A621F44645; Wed, 9 Dec 2020 16:59:23 +0000 (GMT) Date: Wed, 9 Dec 2020 16:59:21 +0000 (GMT) From: =?UTF-8?Q?Vivek_Das=C2=A0Mohapatra?= X-X-Sender: vivek@noise.cbg.collabora.co.uk To: Florian Weimer cc: Mark Wielaard , GNU gABI gnu-gabi Subject: Re: ABI document In-Reply-To: <87czzu7nne.fsf@oldenburg2.str.redhat.com> Message-ID: References: <87o8nypmpq.fsf@oldenburg2.str.redhat.com> <616c0f661732fd1021e5a5b13ef872927390004d.camel@klomp.org> <87ime6pl2q.fsf@oldenburg2.str.redhat.com> <1597402688538.b66a61e7629438@mozgaia> <874kojj7rn.fsf@oldenburg2.str.redhat.com> <87a6xj2tnm.fsf@oldenburg2.str.redhat.com> <87czzu7nne.fsf@oldenburg2.str.redhat.com> User-Agent: Alpine 2.21 (DEB 202 2017-01-01) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="8323329-1404142571-1607533163=:28382" X-Spam-Status: No, score=-11.2 required=5.0 tests=BAYES_00, GIT_PATCH_0, HK_OBFDOM, KAM_ASCII_DIVIDERS, KAM_DMARC_STATUS, KAM_SHORT, SCC_10_SHORT_WORD_LINES, SCC_5_SHORT_WORD_LINES, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gnu-gabi@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gnu-gabi mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 09 Dec 2020 16:59:42 -0000 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-1404142571-1607533163=:28382 Content-Type: text/plain; charset=US-ASCII; format=flowed Right - I dropped Jakub a line last week and I haven't seen a response either way: Could someone with commit access apply the attached patches? --8323329-1404142571-1607533163=:28382 Content-Type: text/x-diff; name=0001-Document-GNU-extensions-to-ELF-related-to-loading-an.patch Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename=0001-Document-GNU-extensions-to-ELF-related-to-loading-an.patch RnJvbSAxNWU5N2M5NTUzZjFkN2JhZTk0YmZmOGQ2NTI4NTIyNGM3NWZhNDY4 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQ0KRnJvbTogPT9VVEYtOD9xP1Zp dmVrPTIwRGFzPUMyPUEwTW9oYXBhdHJhPz0gPHZpdmVrQGNvbGxhYm9yYS5j b20+DQpEYXRlOiBUaHUsIDI3IEF1ZyAyMDIwIDE3OjM5OjE3ICswMTAwDQpT dWJqZWN0OiBbUEFUQ0ggMS8yXSBEb2N1bWVudCBHTlUgZXh0ZW5zaW9ucyB0 byBFTEYgcmVsYXRlZCB0byBsb2FkaW5nIGFuZA0KIGxpbmtpbmcNCg0KUHJv Z3JhbSBoZWFkZXIgcmVsYXRlZDoNCg0KUFRfR05VX0VIX0ZSQU1FDQpQVF9T VU5XX0VIX0ZSQU1FDQpQVF9HTlVfU1RBQ0sNClBUX0dOVV9SRUxSTw0KUFRf R05VX1BST1BFUlRZDQogIEdOVV9QUk9QRVJUWV9TVEFDS19TSVpFDQogIEdO VV9QUk9QRVJUWV9OT19DT1BZX09OX1BST1RFQ1RFRA0KICBHTlVfUFJPUEVS VFlfTE9QUk9DDQogIEdOVV9QUk9QRVJUWV9ISVBST0MNCiAgR05VX1BST1BF UlRZX0xPVVNFUg0KICBHTlVfUFJPUEVSVFlfSElVU0VSDQoNClBUX0RZTkFN SUMgZW50cmllcw0KICBEVF9HTlVfRkxBR1NfMSAoREZfR05VXzFfVU5JUVVF KQ0KICBEVF9HTlVfUFJFTElOS0VEDQogIERUX0dOVV9DT05GTElDVFNaDQog IERUX0dOVV9MSUJMSVNUU1oNCiAgRFRfR05VX0hBU0gNCiAgRFRfR05VX0NP TkZMSUNUDQogIERUX0dOVV9MSUJMSVNUDQoNClNlY3Rpb24gaGVhZGVyIHJl bGF0ZWQNCg0KU0hUX0dOVV9JTkNSRU1FTlRBTF9JTlBVVFMNClNIVF9HTlVf QVRUUklCVVRFUw0KU0hUX0dOVV9IQVNIDQpTSFRfR05VX0xJQkxJU1QNClNI VF9HTlVfdmVyZGVmDQpTSFRfR05VX3Zlcm5lZWQNClNIVF9HTlVfdmVyc3lt DQoNClNIVF9OT1RFIGV4dGVuc2lvbnMNCiAgTlRfR05VX0FCSV9UQUcNCiAg ICBHTlVfQUJJX1RBR19MSU5VWA0KICAgIEdOVV9BQklfVEFHX0hVUkQNCiAg ICBHTlVfQUJJX1RBR19TT0xBUklTDQogICAgR05VX0FCSV9UQUdfRlJFRUJT RA0KICAgIEdOVV9BQklfVEFHX05FVEJTRA0KICAgIEdOVV9BQklfVEFHX1NZ TExBQkxFDQogICAgR05VX0FCSV9UQUdfTkFDTA0KDQogIE5UX0dOVV9IV0NB UA0KICBOVF9HTlVfQlVJTERfSUQNCiAgTlRfR05VX0dPTERfVkVSU0lPTg0K ICBOVF9HTlVfUFJPUEVSVFlfVFlQRV8wDQotLS0NCiBwcm9ncmFtLWxvYWRp bmctYW5kLWR5bmFtaWMtbGlua2luZy50eHQgfCA2MzggKysrKysrKysrKysr KysrKysrKysrKysrDQogMSBmaWxlIGNoYW5nZWQsIDYzOCBpbnNlcnRpb25z KCspDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHByb2dyYW0tbG9hZGluZy1hbmQt ZHluYW1pYy1saW5raW5nLnR4dA0KDQpkaWZmIC0tZ2l0IGEvcHJvZ3JhbS1s b2FkaW5nLWFuZC1keW5hbWljLWxpbmtpbmcudHh0IGIvcHJvZ3JhbS1sb2Fk aW5nLWFuZC1keW5hbWljLWxpbmtpbmcudHh0DQpuZXcgZmlsZSBtb2RlIDEw MDY0NA0KaW5kZXggMDAwMDAwMC4uYTA3YzE5NQ0KLS0tIC9kZXYvbnVsbA0K KysrIGIvcHJvZ3JhbS1sb2FkaW5nLWFuZC1keW5hbWljLWxpbmtpbmcudHh0 DQpAQCAtMCwwICsxLDYzOCBAQA0KK1Byb2dyYW0gSGVhZGVycw0KKz09PT09 PT09PT09PT09PQ0KKw0KK1RoZXNlIGFyZSBHTlUgZXh0ZW5kZWQgcHJvZ3Jh bSBoZWFkZXIgdHlwZSB2YWx1ZXM6IFRoZXkgYXJlIHR5cGljYWxseQ0KK2Zv dW5kIGluIEVsZlcoUGhkcikucF90eXBlLg0KKw0KK1BUX0dOVV9FSF9GUkFN RSAgMHg2NDc0ZTU1MA0KK1BUX1NVTldfRUhfRlJBTUUgMHg2NDc0ZTU1MA0K Kw0KKyAgU2VnbWVudCBjb250YWlucyB0aGUgRUhfRlJBTUVfSERSIHNlY3Rp b24gKHN0YWNrIGZyYW1lIHVud2luZCBpbmZvcm1hdGlvbikNCisNCisgIE5P VEU6IFRoZSB2aXJ0dWFsIGFkZHJlc3MgcmFuZ2UgcmVmZXJyZWQgdG8gYnkg UFRfR05VX0VIX0ZSQU1FIG11c3QgYmUNCisgIGNvdmVyZWQgYnkgYSBQVF9M T0FEIGVudHJ5IC0gUFRfR05VX0VIX0ZSQU1FIG9uIGl0cyBvd24gZG9lcyBu b3QgdHJpZ2dlcg0KKyAgdGhlIG1hcHBpbmcvbG9hZGluZyBvZiBhbnkgZGF0 YS4NCisNCisgIFBUX1NVTldfRUhfRlJBTUUgaXMgdXNlZCBieSBhIG5vbi1H TlUgaW1wbGVtZW50YXRpb24gZm9yIHRoZSBzYW1lIHB1cnBvc2UsDQorICBh bmQgaGFzIHRoZSBzYW1lIHZhbHVlIChhbHRob3VnaCB0aGlzIGRvZXMgbm90 IGltcGx5IGNvbXBhdGlibGUgY29udGVudHMpLg0KKw0KKyAgVGhlIGNvbnRl bnRzIG9mIHRoZSBFSF9GUkFNRV9IRFIgYXJlIGRlc2NyaWJlZCBpbiB0aGUg TFNCLiBBcyBvZiB2NS4wOg0KKw0KKyAgUmVmZXJlbmNlOiBodHRwczovL3Jl ZnNwZWNzLmxpbnV4Zm91bmRhdGlvbi5vcmcvTFNCXzUuMC4wL0xTQi1Db3Jl LWdlbmVyaWMvTFNCLUNvcmUtZ2VuZXJpYy9laGZyYW1lY2hwdC5odG1sDQor ICBSZWZlcmVuY2U6IGh0dHBzOi8vcmVmc3BlY3MubGludXhmb3VuZGF0aW9u Lm9yZy9MU0JfNS4wLjAvTFNCLUNvcmUtZ2VuZXJpYy9MU0ItQ29yZS1nZW5l cmljL2VoZnJhbWVjaHB0Lmh0bWwjRUhGUkFNRUhEUg0KKyAgUmVmZXJlbmNl OiBodHRwczovL3JlZnNwZWNzLmxpbnV4Zm91bmRhdGlvbi5vcmcvTFNCXzUu MC4wL0xTQi1Db3JlLWdlbmVyaWMvTFNCLUNvcmUtZ2VuZXJpYy5odG1sI1BS T0dIRUFERVINCisNCitQVF9HTlVfU1RBQ0sgICAgIDB4NjQ3NGU1NTENCisN CisgIFRoZSBwX2ZsYWdzIG1lbWJlciBvZiB0aGlzIEVsZlcoUGhkcikgc3Ry dWN0dXJlIGFwcGx5IHRvIHRoZSBzdGFjay4NCisNCisgIElmIHByZXNlbnQg QU5EIHBfZmxhZ3MgRE9FUyBOT1QgY29udGFpbiBQRl9YICgweDEpIHRoZW4g dGhlIHN0YWNrDQorICBzaG91bGQgX25vdF8gYmUgZXhlY3V0YWJsZS4NCisN CisgIE90aGVyd2lzZSB0aGUgc3RhY2sgZm9sbG93cyB0aGUgYXJjaGl0ZWN0 dXJlIHNwZWNpZmljIGRlZmF1bHQgZm9yDQorICBleGVjdXRhYmlsaXR5OiBG b3IgZXhhbXBsZSBvbiB4ODYgdGhlIHN0YWNrIGlzIGV4ZWN1dGFibGUgYnkg ZGVmYXVsdC4NCisNCisgIE5PVEU6IFNvbWUgaW1wbGVtZW50YXRpb25zIG1h eSB1c2UgdGhpcyBoZWFkZXIncyBwX3NpemUgdG8gc2V0IHRoZSBzdGFjayBz aXplLg0KKyAgZ2xpYmMgZG9lcyBOT1QgZG8gdGhpczogU2VlIEdOVV9QUk9Q RVJUWV9TVEFDS19TSVpFIGluc3RlYWQuDQorDQorICBSZWZlcmVuY2U6IGh0 dHBzOi8vcmVmc3BlY3MubGludXhmb3VuZGF0aW9uLm9yZy9MU0JfNS4wLjAv TFNCLUNvcmUtZ2VuZXJpYy9MU0ItQ29yZS1nZW5lcmljLmh0bWwjUFJPR0hF QURFUg0KKw0KK1BUX0dOVV9SRUxSTyAgICAgMHg2NDc0ZTU1Mg0KKw0KKyAg VGhlIHNwZWNpZmllZCBzZWdtZW50IHNob3VsZCBiZSBtYWRlIHJlYWQtb25s eSBvbmNlIHJ1bi10aW1lIGxpbmtpbmcNCisgIG9mIHRoaXMgb2JqZWN0IGhh cyBjb21wbGV0ZWQuDQorDQorICBBcyB3aXRoIFBUX0dOVV9FSF9GUkFNRSB0 aGlzIGhlYWRlciBlbnRyeSBkb2VzIE5PVCBndWFyYW50ZWUgdGhhdCB0aGUN CisgIHJhbmdlIGluIHF1ZXN0aW9uIGlzIGxvYWRlZDogVGhhdCBtdXN0IGJl IGVuc3VyZWQgdmlhIGEgUFRfTE9BRCBlbnRyeQ0KKyAgd2hpY2ggY292ZXJz IHRoZSByYW5nZS4NCisNCisgIFJlZmVyZW5jZTogaHR0cHM6Ly9yZWZzcGVj cy5saW51eGZvdW5kYXRpb24ub3JnL0xTQl81LjAuMC9MU0ItQ29yZS1nZW5l cmljL0xTQi1Db3JlLWdlbmVyaWMuaHRtbCNQUk9HSEVBREVSDQorDQorUFRf R05VX1BST1BFUlRZICAweDY0NzRlNTUzDQorDQorICBUaGUgTGludXgga2Vy bmVsIHVzZXMgdGhpcyBwcm9ncmFtIGhlYWRlciB0byBsb2NhdGUgdGhlDQor ICAiLm5vdGUuZ251LnByb3BlcnR5IHNlY3Rpb24iLg0KKw0KKyAgSWYgdGhl cmUgaXMgYSBwcm9ncmFtIHByb3BlcnR5IHRoYXQgcmVxdWlyZXMgdGhlIGtl cm5lbCB0byBwZXJmb3JtDQorICBzb21lIGFjdGlvbiBiZWZvcmUgbG9hZGlu ZyBhbmQgRUxGIGZpbGUgKGVnIEFBcmNoNjQgQlRJIG9yIEludGVsIENFVCkN CisgIHRoZW4gdGhpcyBoZWFkZXIgTVVTVCBiZSBwcmVzZW50Lg0KKw0KKyAg SWYgbm8gc3VjaCBmZWF0dXJlcyBhcmUgdG8gYmUgZW5hYmxlZCB0aGlzIGhl YWRlciBNVVNUIE5PVCBiZSBwcmVzZW50Lg0KKw0KKyAgVGhlIGNvbnRlbnRz IGFyZSBsYWlkIG91dCBhcyBmb2xsb3dzOg0KKw0KKyAgRmllbGQgICAgICB8 IExlbmd0aCAgIHwgQ29udGVudHMNCisgIG5fbmFtc3ogICAgfCA0ICAgICAg ICB8IDQNCisgIG5fZGVzY3N6ICAgfCA0ICAgICAgICB8IFNpemUgb2Ygbl9k ZXNjICg0IGJ5dGUgaW50LCBwcm9jZXNzb3IgZm9ybWF0KQ0KKyAgbl90eXBl ICAgICB8IDQgICAgICAgIHwgTlRfR05VX1BST1BFUlRZX1RZUEVfMCAoMHg1 KQ0KKyAgbl9uYW1lICAgICB8IDQgICAgICAgIHwgR05VXDANCisgIG5fZGVz YyAgICAgfCBuX2Rlc2NzeiB8IHByb3BlcnR5IGFycmF5DQorDQorICBFYWNo IGVsZW1lbnQgb2Ygbl9kZXNjLCBpbiB0dXJuIGlzOg0KKw0KKyAgdHlwZWRl ZiBzdHJ1Y3Qgew0KKyAgICBFbGZfV29yZCBwcl90eXBlOw0KKyAgICBFbGZf V29yZCBwcl9kYXRhc3o7DQorICAgIHVuc2lnbmVkIGNoYXIgcHJfZGF0YVtQ Ul9EQVRBU1pdOw0KKyAgICB1bnNpZ25lZCBjaGFyIHByX3BhZGRpbmdbUFJf UEFERElOR107DQorICB9IEVsZl9Qcm9wOw0KKw0KKyAgcHJfZGF0YSBpcyBh bGlnbmVkIHRvIDQgYnl0ZXMgaW4gMzItYml0IG9iamVjdHMgYW5kIDggYnl0 ZXMgaW4gNjQtYml0IG9uZXMuDQorDQorICBUaGUgc2VnbWVudCBpdHNlbGYg aXMgYWxpZ25lZCBhY2NvcmRpbmcgdG8gdGhlIHByb2dyYW0gaGVhZGVyJ3Mg cF9hbGlnbg0KKyAgZmllbGQuDQorDQorICBQUl9QQURESU5HIGJ5dGVzIGFy ZSBhZGRlZCBfYWZ0ZXJfIFBSX0RBVEFTWiBzbyB0aGF0IGVhY2ggcHJvcGVy dHkgaXMNCisgIGFsaWduZWQgdG8gNCBieXRlcyAob24gMzIgYml0IGFyY2hp dGVjdHVyZXMpIGFuZCB0byA4IGJ5dGVzIG9uIDY0IGJpdA0KKyAgYXJjaGl0 ZWN0dXJlcy4NCisNCisgIFRoaXMgaXMgdHJ1ZSBldmVuIGlmIHByX2RhdGFz eiBpcyAwIChjZiBHTlVfUFJPUEVSVFlfTk9fQ09QWV9PTl9QUk9URUNURUQp Lg0KKw0KKyAgUHJvcGVydGllcyBhcmUgc29ydGVkIGluIGFzY2VuZGluZyBv cmRlciBvZiBwcl90eXBlOw0KKw0KKyAgRGVmaW5lZCBwcm9wZXJ0aWVzIGFy ZToNCisNCisgIEdOVV9QUk9QRVJUWV9TVEFDS19TSVpFICAweDENCisNCisg IHByX2RhdGEgaG9sZHMgYSBuYXRpdmUgc2l6ZWQgKDQgYnl0ZXMgb24gMzIg Yml0IGFyY2hpdGVjdXJlcywNCisgIDggYnl0ZXMgb24gNjQgYml0KSBpbnRl Z2VyIGluIHRoZSB0YXJnZXQgcHJvY2Vzc29yJ3MgbmF0aXZlIGZvcm1hdC4N CisNCisgIFRoZSBsaW5rZXIgc2hvdWxkIHBpY2sgdGhlIGhpZ2hlc3QgaW5z dGFuY2Ugb2YgdGhpcyBmcm9tIGFsbCByZWxvY2F0YWJsZQ0KKyAgb2JqZWN0 cyBpbiB0aGUgbGluayBjaGFpbiBhbmQgZW5zdXJlIHRoZSBzdGFjayBpcyBh dCBsZWFzdCB0aGlzIGJpZy4NCisNCisgIFRoZXJlIGlzIG5vIGltcGxpY2F0 aW9uIG9yIHJlcXVpcmVtZW50IHRoYXQgdGhlIGxpbmtlciBzaG91bGQgb3Ig d2lsbA0KKyAgcmVkdWNlIHRoZSBzdGFjayBzaXplIHRvIG1hdGNoIHRoaXMg dmFsdWUuDQorDQorICBHTlVfUFJPUEVSVFlfTk9fQ09QWV9PTl9QUk9URUNU RUQgMHgyDQorDQorICBUaGUgbGlua2VyIHNob3VsZCB0cmVhdCBwcm90ZWN0 ZWQgZGF0YSBzeW1ib2wgYXMgZGVmaW5lZCBsb2NhbGx5IGF0DQorICBydW4t dGltZSBhbmQgY29weSB0aGlzIHByb3BlcnR5IHRvIHRoZSBvdXRwdXQgc2hh cmUgb2JqZWN0Lg0KKw0KKyAgVGhlIGxpbmtlciBzaG91bGQgYWRkIHRoaXMg cHJvcGVydHkgdG8gdGhlIG91dHB1dCBzaGFyZSBvYmplY3QgaWYNCisgIGFu eSBwcm90ZWN0ZWQgc3ltYm9sIGlzIGV4cGVjdGVkIHRvIGJlIGRlZmluZWQg bG9jYWxseSBhdCBydW4tdGltZS4NCisNCisgIFRoZSBydW4tdGltZSBsb2Fk ZXIgc2hvdWxkIGRpc2FsbG93IGNvcHkgcmVsb2NhdGlvbnMgYWdhaW5zdCBw cm90ZWN0ZWQNCisgIGRhdGEgc3ltYm9scyBkZWZpbmVkIHN1Y2ggb2JqZWN0 cy4NCisNCisgIFRoaXMgdHlwZSBpcyBleHBlY3RlZCB0byBoYXZlIGEgcHJf ZGF0YXN6IGZpZWxkIG9mIDAsIGFuZCBubyBwcl9kYXRhDQorICBjb250ZW50 cyAob25seSBwYWRkaW5nKS4NCisNCisgIEdOVV9QUk9QRVJUWV9MT1BST0Mg IDB4YzAwMDAwMDANCisgIEdOVV9QUk9QRVJUWV9ISVBST0MgIDB4ZGZmZmZm ZmYNCisNCisgIFJlc2VydmVkIGZvciBwcm9jZXNzb3Itc3BlY2lmaWMgdmFs dWVzLg0KKw0KKyAgR05VX1BST1BFUlRZX0xPVVNFUiAgIDB4ZTAwMDAwMDAN CisgIEdOVV9QUk9QRVJUWV9ISVVTRVIgICAweGZmZmZmZmZmDQorDQorICBS ZXNlcnZlZCBmb3IgYXBwbGljYXRpb24gc3BlY2lmaWMgdmFsdWVzLg0KKw0K KyAgUmVmZXJlbmNlOiBodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5j b20vd2lraS9oamwtdG9vbHMvbGludXgtYWJpL2xpbnV4LWFiaS1kcmFmdC5w ZGYNCisNCitUaGVyZSBhcmUgZnVydGhlciBleHRlbnNpb25zIHRvIHBfdHlw ZSBidXQgY3VycmVudGx5IHRoZXkgYXJlIGFsbA0KK2FyY2hpdGVjdHVyZSBz cGVjaWZpYyBhbmQgc2hvdWxkIGJlIGRvY3VtZW50ZWQgaW4gdGhlIHJlbGV2 YW50IEFCSXMuDQorDQorRHluYW1pYyBzZWdtZW50IGV4dGVuc2lvbnMgKFBU X0RZTkFNSUMgZW50cmllcykNCis9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQ0KKw0KK1RoZSBmb2xsb3dpbmcgdHlw ZXMgd2l0aGluIFBUX0RZTkFNSUMgYXJlIEdOVSBleHRlbnNpb25zOg0KK1Ro ZSB2YWx1ZXMgYXJlIHR5cGljYWxseSBmb3VuZCBpbiB0aGUgRWxmVyhEeW4p LmRfdGFnIG1lbWJlci4NCisNCitEVF9HTlVfRkxBR1NfMSAgICAweDZmZmZm ZGY0DQorDQorICBTaW1pbGFyIHRvIERUX0ZMQUdTIGFuZCBEVF9GTEFHU18x LCBidXQgRFRfRkxBR1MgaXMgZ2VuZXJpYyBhbmQNCisgIHRoZSBEVF9GTEFH U18xIGJpdCBtYXNrIGhhcyBiZWVuIGV4aGF1c3RlZCAobGFzdCBhdmFpbGFi bGUgYml0DQorICBjbGFpbWVkIGJ5IFNvbGFyaXMpLg0KKw0KKyAgQ3VycmVu dGx5IHN1cHBvcnRzIHRoZSBmb2xsb3dpbmcgZmxhZyBiaXQocykgaW4gaXRz IGRfdmFsIHZhbHVlOg0KKw0KKyAgREZfR05VXzFfVU5JUVVFDQorDQorICBU aGlzIGZsYWcgYml0IGluZGljYXRlcyB0aGF0IHRoZSBsaWJyYXJ5IHNob3Vs ZCBiZSBsb2FkZWQgYXQgbW9zdCBvbmNlDQorICBhY3Jvc3MgYWxsIG5hbWVz cGFjZXMgdW5sZXNzIGEgc3RhbmRhbG9uZSBjb3B5IGlzIGV4cGxpY2l0bHkg cmVxdWVzdGVkLg0KKw0KKyAgU29tZSBiYWNrZ3JvdW5kOg0KKw0KKyAgQnkg ZGVmYXVsdCBsaWJyYXJpZXMgYW5kIGFsbCB0aGVpciBkZXBlbmRlbmNpZXMg YXJlIGxvYWRlZCBpbnRvIGEgc2luZ2xlDQorICBuYW1lc3BhY2Ugb3IgbGlu ay1tYXAgKExNX0lEX0JBU0UpIC0gdGhpcyBhcHBsaWVzIHRvIGxpYnJhcmll cyBsb2FkZWQgYnkNCisgIGxkLnNvIHdoZW4gYSBwcm9ncmFtIHN0YXJ0cywg YW5kIHRvIHRob3NlIGxvYWRlZCBsYXRlciBieSBkbG9wZW4oMykuDQorDQor ICBnbGliYyBpbXBsZW1lbnRzIGEgZHluYW1pYyBsb2FkaW5nIGV4dGVuc2lv biAtIGRsbW9wZW4oMykgd2hpY2ggaXMgc2ltaWxhcg0KKyAgdG8gZGxvcGVu KDMpIGJ1dCBjYW4gbG9hZCBsaWJyYXJpZXMgaW50byBzZWNvbmRhcnkgbmFt ZXNwYWNlcywgZWFjaCBvZg0KKyAgd2hpY2ggaGFzIGl0cyBvd24gcHJpdmF0 ZSBsaW5rIG1hcC4NCisNCisgIExpYnJhcmllcyBpbiB0aGVzZSBuYW1lc3Bh Y2VzIGFyZSBOT1QgdXNlZCBieSB0aGUgbGlua2VyIHRvIHJlc29sdmUNCisg IHN5bWJvbHMgZm9yIG9uZSBhbm90aGVyOiBBIGxpYnJhcnkgaW4gbmFtZXNw YWNlcyAyIChmb3IgZXhhbXBsZSkNCisgIHdpbGwgbm90IHVzZSBzeW1ib2xz IG9yIGxpYnJhcmllcyBmcm9tIGFueSBvdGhlciBuYW1lc3BhY2UsIG5vciB3 aWxsIGl0DQorICBiZSB1c2VkIHRvIHNhdGlzZnkgc3ltYm9sIGxvb2t1cHMg ZnJvbSBsaWJyYXJpZXMgaW4gdGhvc2UgbmFtZXNwYWNlcy4NCisNCisgIFRo aXMgbWVjaGFuaXNtIGlzIHRoZSBiYXNpcyBmb3IgaXNvbGF0aW9uIG9mIExE X0FVRElUIGxpYnJhcmllcyAoZm9yIGV4YW1wbGUpLg0KKw0KKyAgV2hpbGUg dGhpcyBpcyBnZW5lcmFsbHkgZGVzaXJhYmxlIHNvbWUgbGlicmFyaWVzIGRv IG5vdCBiZWhhdmUgd2VsbA0KKyAgdW5kZXIgdGhlc2UgY29uZGl0aW9ucyAt IGluIHBhcnRpY3VsYXIgbGliYyAobWFsbG9jL2ZyZWUgZ2V0IHVwc2V0DQor ICB3aGVuIHRoZXkgaW50ZXJhY3Qgd2l0aCBpbmRlcGVuZGVudCBjb3BpZXMg b2YgdGhlbXNlbHZlcyBzaW5jZSB0aGV5DQorICBoYXZlIG5vIGtub3dsZWRn ZSBvZiBvbmUgYW5vdGhlcidzIG1lbW9yeSBhY2NvdW50aW5nKSBhbmQgbGli cHRocmVhZA0KKyAgKHdoaWNoIHRlbmRzIHRvIGRlYWRsb2NrIG9mIHR3byBk aWZmZXJlbnQgbmFtZXNwYWNlcyBhdHRlbXB0IHRvDQorICBpbml0aWFsaXNl IHRocmVhZCBtZXRhZGF0YSkuDQorDQorICBERl9HTlVfMV9VTklRVUUgaXMg dXNlZCB0byBtYXJrIHN1Y2ggbGlicmFyaWVzIHNvIHRoYXQgd2hlbiB0aGV5 IGFyZQ0KKyAgbG9hZGVkIG9ubHkgb25lIGNvcHkgKHdoaWNoIHJlc2lkZXMg aW4gTE1fSURfQkFTRSkgaXMgbWFwcGVkLCBhbmQNCisgIGFsbCBuYW1lc3Bh Y2VzIHVzZSB0aGF0IGNvcHkgKHVubGVzcyBzdWNoIHNoYXJpbmcgaXMgZXhw bGljaXRseQ0KKyAgc3VwcHJlc3NlZCwgc3VjaCBhcyBmb3IgTERfQVVESVQg bGlicmFyaWVzKS4NCisNCisgIFRoaXMgYmVoYXZpb3VyIGNhbiBiZSBleHBs aWNpdGx5IG92ZXJyaWRkZW4gYnkgdGhlIGNhbGxlciBvZiBkbG1vcGVuKDMp Lg0KKw0KKyAgUmVmZXJlbmNlOiBUaGlzIGRvY3VtZW50IGlzIGNhbm9uaWNh bC4NCisNCitQcmVsaW5raW5nDQorPT09PT09PT09PQ0KKw0KK0RUX0dOVV9Q UkVMSU5LRUQgIDB4NmZmZmZkZjUNCisNCisgIFRoZSBkX3ZhbCBmaWVsZCBj b250YWlucyBhIHRpbWVfdCB2YWx1ZSBnaXZpbmcgdGhlIFVUQyB0aW1lIGF0 IHdoaWNoIHRoZQ0KKyAgb2JqZWN0IHdhcyAocHJlKWxpbmtlZC4NCisNCisg IFJlZmVyZW5jZTogU2VlIHRoZSBhY2NvbXBhbnlpbmcgcHJlbGluayBkb2N1 bWVudCBmb3IgZGV0YWlscy4NCisNCitEVF9HTlVfQ09ORkxJQ1RTWiAweDZm ZmZmZGY2DQorDQorICBVc2VkIGluIHByZWxpbmtlZCBvYmplY3RzLg0KKyAg ZF92YWwgY29udGFpbnMgdGhlIHNpemUgb2YgdGhlIGNvbmZsaWN0IHNlZ21l bnQuDQorDQorRFRfR05VX0xJQkxJU1RTWiAgMHg2ZmZmZmRmNw0KKw0KKyAg VXNlZCBpbiBwcmVsaW5rZWQgb2JqZWN0cy4NCisgIGRfdmFsIGNvbnRhaW5z IHRoZSBzaXplIG9mIHRoZSBsaWJyYXJ5IGxpc3QuDQorDQorRFRfR05VX0NP TkZMSUNUICAgMHg2ZmZmZmVmOA0KKw0KKyAgVXNlZCBpbiBwcmVsaW5rZWQg b2JqZWN0cy4NCisgIFRoZSBkX3B0ciB2YWx1ZSBnaXZlcyB0aGUgbG9jYXRp b24gb2YgdGhlIGNvbmZsaWN0IHNlZ21lbnQuDQorICBUaGlzIHdpbGwgY29u dGFpbiBhbiBhcnJheSBvZiBFbGZXKFJlbGEpIHN0cnVjdHMuDQorDQorICBJ ZiBEVF9HTlVfTElCTElTVCBtYXRjaGVzIHRoZSBsaWJyYXJ5IHNlYXJjaGxp c3QgYWZ0ZXIgbG9hZGluZw0KKyAgdGhlbiB0aGVzZSByZWxvY2F0aW9uIHJl Y29yZHMgYXJlIHJlcGxheWVkIGltbWVkaWF0ZWx5IGFmdGVyDQorICBydW4t dGltZSBsb2FkaW5nLg0KKw0KK0RUX0dOVV9MSUJMSVNUICAgIDB4NmZmZmZl ZjkNCisNCisgIFVzZWQgaW4gcHJlbGlua2VkIG9iamVjdHMuDQorICBUaGUg ZF9wdHIgdmFsdWUgZ2l2ZXMgdGhlIGxvY2F0aW9uIG9mIHRoZSBFbGZXKExp YikgYXJyYXkgZ2l2aW5nIHRoZQ0KKyAgU09OQU1FLCBjaGVja3N1bSBhbmQg dGltZXN0YW1wIG9yIGVhY2ggbGlicmFyeSBlbmNvdW50ZXJlZCBhdCBwcmVs aW5rIHRpbWUuDQorDQorICBUaGlzIGlzIHVzZWQgdG8gY2hlY2sgdGhhdCBh bGwgcmVxdWlyZWQgcHJlbGlua2VkIGxpYnJhcmllcyBhcmUgc3RpbGwNCisg IHByZXNlbnQsIGxvYWRlZCwgYW5kIGhhdmUgdGhlIGNvcnJlY3QgY2hlY2tz dW1zIGF0IHJ1bnRpbWUuDQorDQorICB0eXBlZGVmIHN0cnVjdCB7DQorICAg IEVsZlcoV29yZCkgbF9uYW1lOyAgICAgICAgICAvKiBOYW1lIChzdHJpbmcg dGFibGUgaW5kZXgpICovDQorICAgIEVsZlcoV29yZCkgbF90aW1lX3N0YW1w OyAgICAvKiBUaW1lc3RhbXAgKi8NCisgICAgRWxmVyhXb3JkKSBsX2NoZWNr c3VtOyAgICAgIC8qIENoZWNrc3VtICovDQorICAgIEVsZlcoV29yZCkgbF92 ZXJzaW9uOyAgICAgICAvKiBJbnRlcmZhY2UgdmVyc2lvbiAqLw0KKyAgICBF bGZXKFdvcmQpIGxfZmxhZ3M7ICAgICAgICAgLyogRmxhZ3MgKi8NCisgIH0g RWxmVyhMaWIpOw0KKw0KK0hhc2hlcw0KKz09PT09PQ0KKw0KK0RUX0dOVV9I QVNIICAgICAgIDB4NmZmZmZlZjUNCisNCisgIFRoZSBkX3B0ciB2YWx1ZSBn aXZlcyB0aGUgbG9jYXRpb24gb2YgdGhlIEdOVSBzdHlsZSBzeW1ib2wgaGFz aCB0YWJsZS4NCisNCisgIFRoZSBHTlUgaGFzaCBvZiBhIHN5bWJvbCBpcyBj b21wdXRlZCBhcyBmb2xsb3dzOg0KKyAgLSB0YWtlIHRoZSBOQU1FIG9mIHRo ZSBzeW1ib2wgKFdJVEhPVVQgYW55IEB2ZXJzaW9uIHN1ZmZpeCkNCisgICAg LSB1bnNpZ25lZCBsb25nIGgg4oaQIDUzODENCisgICAgLSBmb3IgZWFjaCB1 bnNpZ25lZCBjaGFyYWN0ZXIgQyBpbiBOQU1FLCBzdGFydGluZyBhdCBwb3Np dGlvbiAwOg0KKyAgICAgIC0gaCDihpAgKGggPDwgNSkgKyBoICsgQzsNCisg ICAgICAgIE9SDQorICAgICAgICBoIOKGkCAoaCAqIDMzKSArIEM7DQorICAg IC0gdWludDMyX3QgSEFTSCDihpAgaA0KKw0KKyAgSGFzaCBUYWJsZSBjb250 ZW50czoNCisNCisgIGJpdG1hc2stYml0cyBpcyBhIHBvd2VyIG9mIDIuDQor ICBJdCBpcyBhdCBsZWFzdCAzMiAob24gMzIgYml0KTsgYXQgbGVhc3QgNjQg b24gNjQgYml0IGFyY2hpdGVjdHVyZXMuDQorICBUaGVyZSBhcmUgb3RoZXIg cmVzdHJpY3Rpb25zLCBzZWUgZWxmbGluay5jIGluIHRoZSBiaW51dGlscy1n ZGIvYmZkIHNvdXJjZS4NCisNCisgIFRoZSBidWNrZXQgaW4gd2hpY2ggYSBz eW1ib2wncyBoYXNoIGVudHJ5IGlzIGZvdW5kIGlzOg0KKw0KKyAgICBnbnUt aGFzaCggc3ltYm9sLW5hbWUgKSAlIG5idWNrZXRzDQorDQorICBUaGUgdGFi bGUgaXMgZGl2aWRlZCBpbnRvIDQgcGFydHM6DQorICAtLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tDQorICBQYXJ0IDEgKG1ldGFkYXRhKToNCisN CisgIC0gbmJ1Y2tldHMgICAgIDogNCBieXRlIG5hdGl2ZSBpbnRlZ2VyLiBO dW1iZXIgb2YgYnVja2V0cw0KKyAgICAgICAgICAgICAgICAgICBBIGJ1Y2tl dCBvY2N1cGllcyAzMiBiaXRzLg0KKw0KKyAgLSBzeW1vZmZzZXQgICAgOiA0 IGJ5dGUgbmF0aXZlIGludGVnZXIuDQorICAgICAgICAgICAgICAgICAgIFN0 YXJ0aW5nIGluZGV4IG9mIGZpcnN0ICJyZWFsIiBzeW1ib2wgaW4gdGhlICIu ZHluc3ltIg0KKyAgICAgICAgICAgICAgICAgICBzZWN0aW9uLCBTZWUgYmVs b3cuDQorDQorICAtIGJpdG1hc2std29yZHM6IDQgYnl0ZSBuYXRpdmUgaW50 ZWdlci4NCisgICAgICAgICAgICAgICAgICAgVGhlIG51bWJlciBvZiBFTEZD TEFTUzxTSVpFPiB3b3JkcyBpbiBwYXJ0IDIgb2YgdGhlIHRhYmxlLg0KKyAg ICAgICAgICAgICAgICAgICBPbiA2NC1iaXQgYXJjaGl0Y3R1cmVzOiBiaXRt YXNrLWJpdHMgLyA2NA0KKyAgICAgICAgICAgICAgICAgICBBbmQgb24gMzIt Yml0IG9uZXMgICAgOiBiaXRtYXNrLWJpdHMgLyAzMg0KKw0KKyAgLSBibG9v bS1zaGlmdCAgOiA0IGJ5dGUgbmF0aXZlIGludGVnZXIuDQorICAgICAgICAg ICAgICAgICAgIFRoZSBzaGlmdC1jb3VudCB1c2VkIGluIHRoZSBibG9vbSBm aWx0ZXIuDQorDQorICBzeW1vZmZzZXQ6DQorICBUaGVyZSBhcmUgc3ludGhl dGljIHN5bWJvbHMgLSBvbmUgZm9yIGVhY2ggc2VjdGlvbiBpbiB0aGUgbGlu a2VyIG91dHB1dC4NCisgIHN5bW9mZnNldCBnaXZlcyB0aGUgbnVtYmVyIG9m IHN1Y2ggc3ludGhldGljIHN5bWJvbHMgKCB3aGljaCBjYW5ub3QgYmUNCisg IGxvb2tlZCB1cCB2aWEgdGhlIEdOVSBoYXNoIHNlY3Rpb24gZGVzY3JpYmVk IGhlcmUgKS4NCisNCisgIE5COiBzeW1ib2xzIHRoYXQgX2Nhbl8gYmUgbG9v a2VkIHVwIHZpYSB0aGUgR05VIGhhc2ggbXVzdCBiZSBzdG9yZWQgaW4NCisg IHRoZSAiLmR5bnN5bSIgc2VjdGlvbiBpbiBhc2NlbmRpbmcgb3JkZXIgb2Yg YnVja2V0Lg0KKyAgVGhhdCBpcyB0aGUgb3JkZXJpbmcgaXMgZGV0ZXJtaW5l ZCBieToNCisNCisgICAgIGdudS1oYXNoKCBzeW1ib2wtbmFtZSApICUgbmJ1 Y2tldHMNCisNCisgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0N CisgIFBhcnQgMiAodGhlIGJsb29tIGZpbHRlciBiaXRtYXNrKToNCisNCisg IC0gYmxvb20gICAgICAgIDogRWxmVyhBZGRyKVsgYml0bWFzay13b3JkcyBd DQorDQorICBGb3IgZWFjaCBzeW1ib2wgW25hbWVdIFMgdGhlIGZvbGxvd2lu ZyBpcyBjYXJyaWVkIG91dCAoYnkgdGhlIGxpbmsgZWRpdG9yKToNCisgICAg LSBDIOKGkCBfX0VMRl9OQVRJVkVfQ0xBU1MgLyogaWUgMzIgb24gRUxGMzIs IDY0IG9uIEVMRjY0ICovDQorICAgIC0gSCDihpAgZ251LWhhc2goIFMgKQ0K KyAgICAtIEJXT1JEIOKGkCAoSCAvIEMpICYgKGJpdG1hc2std29yZHMgLSAx KQ0KKyAgICAtIGluIGJsb29tWyBCV09SRCBdIHNldDoNCisgICAgICAtIGJp dCBIICYgKEMgLSAxKQ0KKyAgICAgIC0gYml0IChIID4+IGJsb29tLXNoaWZ0 KSAmIChDIC0gMSkNCisNCisgIE5PVEU6IFRoZSBkaXNjdXNzaW9ucyBhbmQg ZXhhbXBsZXMgb2YgdGhpcyB0aGF0IGFyZSBhcm91bmQgbWF5DQorICB1c2Ug bW9kdWxvIG9wZXJhdGlvbnMgaW5zdGVhZCBvZiB0aGUgbG9naWNhbC1hbmRz IHlvdSBzZWUgYWJvdmU6DQorICBUaGlzIGlzIG5vdCBhbiBlcnJvciBvciBk aXZlcmdlbmNlIHNpbmNlOg0KKw0KKyAgICAgIHggJSAy4oG/IOKJoSB4ICYg KDLigb8gLSAxKSAvKiBOQjogd2hlcmUgeCBpcyB1bnNpZ25lZCAqLw0KKw0K KyAgTk9URTogRm9yIHRob3NlIHVuZmFtaWxpYXIgd2l0aCBibG9vbSBmaWx0 ZXJzOiBJZiBlaXRoZXIgYml0DQorICBkZXNjcmliZWQgYWJvdmUgaXMgTk9U IFNFVCB0aGVuIHRoZSBoYXNoIGlzIERFRklOSVRFTFkgTk9UDQorICBwcmVz ZW50IGluIHRoZSB0YWJsZSBhbmQgbG9va3VwIG5lZWQgcHJvY2VlZCBubyBm dXJ0aGVyLg0KKw0KKyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQ0KKyAgUGFydCAzICh0aGUgYnVja2V0IG1ldGFkYXRhKToNCisNCisgIC0g YnVja2V0W25idWNrZXRzXSA6IEFycmF5IG9mIDQgYnl0ZSBuYXRpdmUgaW50 ZWdlcnMsIGdpdmluZzoNCisNCisgIEZvciBlYWNoIGJ1Y2tldDoNCisgICAg LSBUaGUgSU5ERVggb2YgdGhlIGZpcnN0IHN5bWJvbCBpbiB0aGF0IGJ1Y2tl dCwNCisgICAgICBPUiAwIGlmIG5vIHN5bWJvbHMgaW4gdGhhdCBidWNrZXQu DQorDQorICBOT1RFOiB0aGVzZSBpbmRpY2VzIGdpdmUgdGhlIG9mZnNldCBp bnRvIHRoZSAiLmR5bnN5bSIgc2VjdGlvbi4NCisgIEZvciB0aGUgb2Zmc2V0 IGludG8gdGhlIGJ1Y2tldCBkYXRhIGluIHBhcnQgNCBvZiB0aGUgdGFibGUs IHNlZSBiZWxvdzoNCisgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0NCisgIFBhcnQgNCAodGhlIGNoYWlucywgb3IgYWN0dWFsIGJ1Y2tldCBk YXRhKToNCisNCisgIC0gY2hhaW4gOiBDb250aWd1b3VzIGFycmF5cyBvZiBw c2V1ZG8gaGFzaCB2YWx1ZXMgY29tYmluaW5nIHRoZQ0KKyAgICAgICAgICAg IGhhc2ggdmFsdWVzIGFuZCB0aGUgaW5kZXggb2YgdGhlIHJlbGF0ZWQgc3lt Ym9sDQorICAgICAgICAgICAgRWFjaCBwc2V1ZG8gaGFzaCB2YWx1ZSBpcyBh IDQgYnl0ZSBuYXRpdmUgaW50ZWdlci4NCisNCisgICAgICAgICAgICBFbGZX KFdvcmQpW251bWJlci1vZi1zeW1ib2xzXS4NCisNCisgIEZvciBlYWNoIHN5 bWJvbCBbbmFtZV0gUzoNCisNCisgIC0gQ0hBU0gg4oaQIGdudS1oYXNoKCBT ICkNCisgIC0gQlVDS0VUIOKGkCBDSEFTSCAlIG5idWNrZXRzDQorICAtIENJ TkRFWCDihpAgcG9zaXRpb24gb2YgdGhlIHN5bWJvbCBfd2l0aGluXyBpdHMg YnVja2V0DQorICAgICAgICAgICAgICAwIGZvciB0aGUgZmlyc3Qgc3ltYm9s LCAxIGZvciB0aGUgc2Vjb25kIGFuZCBzbyBmb3J0aA0KKw0KKyAgICBUaGUg Y2hhaW4gZGF0YSBhcmUgc3RvcmVkIGFzIGEgc2luZ2xlIGxpbmVhciBjaHVu ayB3aXRoIGVhY2gNCisgICAgcHNldWRvLWhhc2ggdmFsdWUgaW1tZWRpYXRl bHkgZm9sbG93aW5nIGFub3RoZXIuIENJTkRFWCBnaXZlcyB0aGUNCisgICAg cG9zaXRpb24gb2YgYSBwc2V1ZG8taGFzaCBpbnNpZGUgdGhlIGJ1Y2tldCB0 byB3aGljaCBpdCBiZWxvbmdzLA0KKyAgICByYXRoZXIgdGhhbiBpdHMgcG9z aXRpb24gaW4gdGhlIGNoYWluIGRhdGEgYXJlYSBhcyBhIHdob2xlLg0KKw0K KyAgICBbIGIwaDAgfCBiMGgxIHwgYjBoMyB8IGIxaDAgfCDigKYNCisNCisg IC0gaWYgYSBwc2V1ZG8taGFzaCB2YWx1ZSBpcyB0aGUgbGFzdCBvbmUgaW4g dGhlIGJ1Y2tldDoNCisgICAgLSBDSEFTSCDihpAgQ0hBU0ggfCAxICAvKiBz ZXQgdGhlIGxlYXN0IGJpdCAqLw0KKyAgLSBlbHNlDQorICAgIC0gQ0hBU0gg 4oaQIENIQVNIICYgfjEgLyogdW5zZXQgdGhlIGxlYXN0IGJpdCAqLw0KKyAg LSBCWVRFLU9GRlNFVCDihpAgKGJ1Y2tldFtCVUNLRVRdICsgQ0lOREVYIC0g c3ltb2Zmc2V0KSAqIDQNCisgIC0gQ0hBSU4tQUREUiAg4oaQICgoY2hhciAq KSZidWNrZXRbbmJ1Y2tldHNdKSArIEJZVEUtT0ZGU0VUDQorICAtICooRWxm VyhXb3JkKSAqKShDSEFJTi1BRERSKSDihpAgQ0hBU0gNCisNCisgIFRoZSBs ZWFzdCBiaXQgb2YgYSBwc2V1ZG8taGFzaCB2YWx1ZSBiZWluZyBzZXQgaW5k aWNhdGVzIHRoYXQNCisgIHRoaXMgZW50cnkgaXMgdGhlIGxhc3QgaW4gdGhl IGNoYWluIC0gdGhpcyBpcyB1c2VkIGR1cmluZyBsb29rdXBnDQorICBzaW5j ZSB1bmxpa2UgdGhlIHN0b2NrIEVMRiBoYXNoIHRoZSBHTlUgaGFzaCBkb2Vz IG5vdCB1c2UgbGlua2VkDQorICBsaXN0cyB0byBzdG9yZSBpdHMgY2hhaW5z Lg0KKw0KKyAgUmVmZXJlbmNlOiBodHRwczovL3NvdXJjZXdhcmUub3JnL2xl Z2FjeS1tbC9iaW51dGlscy8yMDA2LTEwL21zZzAwMzc3Lmh0bWwNCisgIFJl ZmVyZW5jZTogaHR0cHM6Ly9mbGFwZW5ndWluLm1lL2VsZi1kdC1nbnUtaGFz aA0KKyAgUmVmZXJlbmNlOiBodHRwczovL3NvdXJjZXdhcmUub3JnL2dpdC8/ cD1iaW51dGlscy1nZGIuZ2l0O2E9YmxvYjtmPWJmZC9lbGZsaW5rLmM7aD0x Mzg0YzFhNDZiODNiNTU4NzZiNmE3M2RiY2JhMDM4NmE0NTgwNjNiO2hiPUhF QUQjbDcyNjMNCisgICAgICAgICAgICAgYmZkX2VsZl9zaXplX2R5bnN5bV9o YXNoX2R5bnN0cg0KKyAgUmVmZXJlbmNlOiBodHRwczovL3NvdXJjZXdhcmUu b3JnL2dpdC8/cD1nbGliYy5naXQ7YT1ibG9iO2Y9ZWxmL2RsLWxvb2t1cC5j O2g9ODA3ZjNlYTliNjc0ODliMzExNjUzNWI3YzQzM2M3NzRhNzJlNGMyOTto Yj1IRUFEI2wzNTcNCisgICAgICAgICAgICAgZG9fbG9va3VwX3gNCisNCitT ZWN0aW9uIEhlYWRlcnMNCis9PT09PT09PT09PT09PT0NCisNCitUaGUgR05V IGV4dGVuc2lvbnMgdG8gc2VjdGlvbiBoZWFkZXIgdHlwZSB2YWx1ZXMuDQor VHlwaWNhbGx5IGZvdW5kIGluIEVsZlcoU2hkcikuc2hfdHlwZS4NCisNCitT SFRfR05VX0lOQ1JFTUVOVEFMX0lOUFVUUyAweDZmZmY0NzAwDQorDQorICBT ZWN0aW9uIG5hbWU6ICIuZ251X2luY3JlbWVudGFsX2lucHV0cyINCisNCisg IEN1cnJlbnRseSB1c2VkIGludGVybmFsbHkgZHVyaW5nIGluY3JlbWVudGFs IGxpbmtpbmcgYnkgZ29sZC4NCisNCitTSFRfR05VX0FUVFJJQlVURVMgICAg ICAgICAweDZmZmZmZmY1DQorDQorICBTZWN0aW9uIG5hbWU6ICIuZ251LmF0 dHJpYnV0ZXMiDQorDQorICBHTlUgc3BlY2lmaWMgcHJvZ3JhbSBhdHRyaWJ1 dGVzLCBzaF9zaXplIGJ5dGVzIGF0IHNoX29mZnNldCBpbnRvIHRoZSBmaWxl Lg0KKw0KKyAgVGhlIGZpcnN0IGJ5dGUgaXMgdGhlIHZlcnNpb24gb2YgdGhl IGF0dHJpYnV0ZSBzcGVjOiBDdXJyZW50bHkgb25seSAnQScNCisgIGlzIGRl ZmluZWQuIEVhY2ggYXR0cmlidXRlIGlzIHN0b3JlZCBhczoNCisNCisgIC0g bGVuOiAgNCBieXRlIGludGVnZXIgaW4gbmF0aXZlIGZvcm1hdCAodG90YWwg YXR0cmlidXRlIGxlbmd0aCkNCisgIC0gZGF0YTogKGxlbiAtIDQpIGJ5dGVz IG9mIGF0dHJpYnV0ZSBkYXRhDQorICAgIC0gc3RhcnRpbmcgd2l0aCBhIFww IHRlcm1pbmF0ZWQgbmFtZQ0KKyAgICAtIGF0IGxlYXN0IDYgYnl0ZXMgb2Yg dGFnLWJ5dGUrdmFsdWUNCisgICAgICAtIGEgdGFnIGJ5dGUNCisgICAgICAt IGEgNCBieXRlIG5hdGl2ZSBpbnRlZ2VyIHNpemUgKGluY2x1ZGluZyB0aGUg dGFnIGJ5dGUgJiB0aGUgc2l6ZSBpdHNlbGYpDQorICAgICAgICAtIGlmIHRo ZSB0YWcgaXMgMiBvciAzOiBhIExFQjEyOCBlbmNvZGVkIHZhbHVlIHN0b3Jl ZCBpbiB0aGUgcmVtYWluaW5nIHNwYWNlDQorICAgICAgLSBET0NVTUVOVE1F OiBzb21lIGF0dHJpYnV0ZSBieXRlcz8gcmV2ZXJzZSBlbmdpbmVlciBmcm9t IHJlYWRlbGY/DQorDQorU0hUX0dOVV9IQVNIICAgICAgICAgICAgICAgMHg2 ZmZmZmZmNg0KKw0KKyAgU2VjdGlvbiBuYW1lOiAiLmdudS5oYXNoIiAoYXJj aGl0ZWN0dXJlIHNwZWNpZmljIEFCSSBtYXkgb3ZlcnJpZGUgdGhpcykNCisN CisgIFRoaXMgc2VjdGlvbiBjb250YWlucyB0aGUgR05VIHN0eWxlIGhhc2gg dGFibGUuIFNlZSBEVF9HTlVfSEFTSC4NCisgIEN1cnJlbnRseSBvbmx5IHRo ZSBNSVBTIGFyY2hpdGVjdHVyZSBpcyBrbm93biB0byB1c2UgYSBkaWZmZXJl bnQgbmFtZS4NCisNCitTSFRfR05VX0xJQkxJU1QgICAgICAgICAgICAweDZm ZmZmZmY3DQorDQorICBTZWUgRFRfR05VX0xJQkxJU1QuDQorDQorICBTZWN0 aW9uIG5hbWU6ICIuZ251LmxpYmxpc3QiDQorDQorICBUaGlzIHNlY3Rpb24g c2hvdWxkIHJlZmVyIHRvIGEgU0hUX1NUUlRBQiB0eXBlIHNlY3Rpb24gdmlh IGl0cyBzaF9saW5rDQorICBmaWVsZDogVGhhdCBzdHJ0YWIgaG9sZHMgdGhl IG5hbWVzIG9mIHRoZSBsaWJyYXJpZXMgbGlzdGVkIGluIGVhY2gNCisgIEVs ZlcoTGliKSBzdHJ1Y3QgY29udGFpbmVkIGluIHRoaXMgR05VX0xJQkxJU1Qg c2VjdGlvbi4NCisNCitTeW1ib2wgVmVyc2lvbmluZw0KKz09PT09PT09PT09 PT09PT09DQorDQorVGhlc2Ugc2VjdGlvbnMgaW1wbGVtZW50IEdOVSBzeW1i b2wgdmVyc2lvbmluZy4NCitUaGVzZSBzZWN0aW9ucyBhbGwgaGF2ZSB0aGUg U0hGX0FMTE9DIGF0cmlidXRlLg0KKw0KK1JlZmVyZW5jZTogaHR0cHM6Ly9y ZWZzcGVjcy5saW51eGZvdW5kYXRpb24ub3JnL0xTQl81LjAuMC9MU0ItQ29y ZS1nZW5lcmljL0xTQi1Db3JlLWdlbmVyaWMuaHRtbA0KK1JlZmVyZW5jZTog aHR0cHM6Ly9yZWZzcGVjcy5saW51eGZvdW5kYXRpb24ub3JnL0xTQl81LjAu MC9MU0ItQ29yZS1nZW5lcmljL0xTQi1Db3JlLWdlbmVyaWMuaHRtbCNTWU1W RVJTSU9ODQorDQorU0hUX0dOVV92ZXJkZWYgICAgICAgICAgICAgMHg2ZmZm ZmZmZA0KKw0KKyAgU2VjdGlvbiBuYW1lOiAiLmdudS52ZXJzaW9uX2QiDQor DQorICBUaGlzIHNlY3Rpb24gY29udGFpbnMgc3ltYm9sIHZlcnNpb24gZGVm aW5pdGlvbnMuDQorDQorICBUaGUgbnVtYmVyIG9mIGVudHJpZXMgaXQgY29u dGFpbnMgaXMgZ2l2ZW4gYnkgdGhlIERUX1ZFUkRFRk5VTSBlbnRyeQ0KKyAg b2YgdGhlIER5bmFtaWMgU2VjdGlvbiBTSFRfRFlOQU1JQy8iLmR5bmFtaWMi Lg0KKw0KKyAgVGhlIHNoX2xpbmsgbWVtYmVyIG9mIHRoaXMgc2VjdGlvbiBo ZWFkZXIgKHNlZSB0aGUgU3lzdGVtIFYgQUJJKSBwb2ludHMgdG8NCisgIHRo ZSBTSFRfU1RSVEFCIHNlY3Rpb24gdGhhdCBjb250YWlucyB0aGUgc3RyaW5n cyByZWZlcmVuY2VkIGJ5IHRoaXMgc2VjdGlvbi4NCisNCisgIFRoaXMgc2Vj dGlvbiBjb250YWlucyBhbiBhcnJheSBvZiBFbGZXKFZlcmRlZikgc3RydWN0 dXJlcyBvcHRpb25hbGx5DQorICBmb2xsb3dlZCBieSBhbiBhcnJheSBvZiBF bGZXKFZlcmRhdXgpIHN0cnVjdHVyZXMuDQorDQorICBFbGZXKFZlcmRlZik6 DQorDQorICB0eXBlZGVmIHN0cnVjdCB7DQorICAgIEVsZlcoSGFsZikgdmRf dmVyc2lvbjsgLyogMCwgMSBvciAyLiBTZWUgYmVsb3cgICAgICAgICAgICAg ICAgICAgICAgICAqLw0KKyAgICBFbGZXKEhhbGYpIHZkX2ZsYWdzOyAgIC8q IEEgZmxhZyBiaXRmaWVsZC4gU2VlIGJlbG93ICAgICAgICAgICAgICAgICAg Ki8NCisgICAgRWxmVyhIYWxmKSB2ZF9uZHg7ICAgICAvKiBSZWZlcnJlZCB0 byBieSBTSFRfR05VX3ZlcnN5bS4gU2VlIGJlbG93ICAgICovDQorICAgIEVs ZlcoSGFsZikgdmRfY250OyAgICAgLyogTnVtYmVyIG9mIGFzc29jaWF0ZWQg RWxmVyhWZXJkYXV4KSBlbnRyaWVzICAqLw0KKyAgICBFbGZXKFdvcmQpIHZk X2hhc2g7ICAgIC8qIFZlcnNpb24gbmFtZSBoYXNoIChwZXIgRUxGIEhhc2gg ZnVuY3Rpb24pICAgKi8NCisgICAgRWxmVyhXb3JkKSB2ZF9hdXg7ICAgICAv KiBPZmZzZXQgaW4gYnl0ZXMgZnJvbSB0aGlzIEVsZlcoVmVyZGVmKQ0KKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvIGl0cyBFbGZXKFZlcmRh dXgpIGFycmF5ICAgICAgICAgICAgICAgICAgKi8NCisgICAgRWxmVyhXb3Jk KSB2ZF9uZXh0OyAgICAvKiBPZmZzZXQgaW4gYnl0ZXMgZnJtIHRoaXMgRWxm VyhWZXJkZWYpDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG8g dGhlIG5leHQgRWxmVyhWZXJkZWYpIGVudHJ5Lg0KKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDAgZm9yIGxhc3QgZW50cnkuICAgICAgICAgICAg ICAgICAgICAgICAgICAgKi8NCisgIH0gRWxmVyhWZXJkZWYpOw0KKw0KKyAg dmRfdmVyc2lvbjoNCisgICAgVkVSX0RFRl9OT05FICAgIDAgLy8gTm8gdmVy c2lvbg0KKyAgICBWRVJfREVGX0NVUlJFTlQgMSAvLyBDdXJycmVudCB2ZXJz aW9uDQorDQorICB2ZF9mbGFnczoNCisgICAgVkVSX0ZMR19CQVNFIDB4MSAv LyBbRGVmYXVsdF0gVmVyc2lvbiBvZiB0aGUgd2hvbGUgb2JqZWN0DQorICAg IFZFUl9GTEdfV0VBSyAweDIgLy8gV2VhayB2ZXJzaW9uIGlkZW50aWZpZXIN CisNCisgIHZkX25keDoNCisgICAgVkVSX05EWF9MT0NBTCAgICAgMCAgICAg IC8vIHByaXZhdGUgc3ltYm9sDQorICAgIFZFUl9ORFhfR0xPQkFMICAgIDEg ICAgICAvLyBnbG9iYWwgc3ltYm9sDQorICAgIFZFUl9ORFhfTE9SRVNFUlZF IDB4ZmYwMCAvLyBCZWdpbm5pbmcgb2YgcmVzZXJ2ZWQgZW50cmllcw0KKyAg ICBWRVJfTkRYX0VMSU1JTkFURSAweGZmMDEgLy8NCisNCisgICAgRE9DVU1F TlRNRTogVkVSX05EWF9FTElNSU5BVEUgZG9lcyBub3QgYXBwZWFyIHRvIGJl IGltcGxlbWVudGVkDQorICAgIGluIGdsaWJjOiBJZiBhbiBpbXBsZW1lbnRh dGlvbiBleGlzdHMgaXRzIHNlbWFudGljcyBzaG91bGQgYmUNCisgICAgcmV2 ZXJzZS1lbmdpbmVlcmVkIGZyb20gdGhlcmUgYW5kIGV4cGxhaW5lZCBoZXJl Lg0KKw0KKyAgRWxmVyhWZXJkYXV4KToNCisNCisgIHR5cGVkZWYgc3RydWN0 IHsNCisgICAgRWxmVyhXb3JkKSB2ZGFfbmFtZTsgLy8gYnl0ZSBvZmZzZXQg aW50byB0aGUgc3RydGFiIG9mIHRoZSB2ZXJzaW9uIG5hbWUNCisgICAgRWxm VyhXb3JkKSB2ZGFfbmV4dDsgLy8gYnl0ZSBvZmZzZXQgZnJvbSB0aGlzIEVs ZlcoVmVyZGF1eCkgdG8gdGhlIG5leHQNCisgIH0gRWxmVyhWZXJkYXV4KTsN CisNCitTSFRfR05VX3Zlcm5lZWQgICAgICAgICAgICAweDZmZmZmZmZlDQor DQorICBTZWN0aW9uIG5hbWU6ICIuZ251LnZlcnNpb25fciINCisNCisgIFRo aXMgc2VjdGlvbiBjb250YWlucyBzeW1ib2wgdmVyc2lvbiByZXF1aXJlbWVu dHMuDQorDQorICBUaGUgbnVtYmVyIG9mIGVudHJpZXMgaXQgY29udGFpbnMg aXMgZ2l2ZW4gYnkgdGhlIERUX1ZFUk5FRUROVU0gZW50cnkNCisgIG9mIHRo ZSBEeW5hbWljIFNlY3Rpb24gU0hUX0RZTkFNSUMvIi5keW5hbWljIi4NCisN CisgIFRoZSBzaF9saW5rIG1lbWJlciBvZiB0aGlzIHNlY3Rpb24gaGVhZGVy IChzZWUgdGhlIFN5c3RlbSBWIEFCSSkgcG9pbnRzIHRvDQorICB0aGUgU0hU X1NUUlRBQiBzZWN0aW9uIHRoYXQgY29udGFpbnMgdGhlIHN0cmluZ3MgcmVm ZXJlbmNlZCBieSB0aGlzIHNlY3Rpb24uDQorDQorICBUaGlzIHNlY3Rpb24g Y29udGFpbnMgYW4gYXJyYXkgb2YgRWxmVyhWZXJuZWVkKSBzdHJ1Y3R1cmVz IG9wdGlvbmFsbHkNCisgIGZvbGxvd2VkIGJ5IGFuIGFycmF5IG9mIEVsZlco VmVybmF1eCkgc3RydWN0dXJlcy4NCisNCisgIEVsZlcoVmVybmVlZCk6DQor DQorICB0eXBlZGVmIHN0cnVjdCB7DQorICAgIEVsZlcoSGFsZikgdm5fdmVy c2lvbjsgLyogU2VlIGJlbG93ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAqLw0KKyAgICBFbGZXKEhhbGYpIHZuX2NudDsgICAgIC8q IE51bWJlciBvZiBhc3NvY2lhdGVkIEVsZlcoVmVybmF1eCkgZW50cmllcyAg ICAgKi8NCisgICAgRWxmVyhXb3JkKSB2bl9maWxlOyAgICAvKiBCeXRlIG9m ZnNldCBpbiBzdHJ0YWIgb2YgcmVxdWlyZWQgRFNPIGZpbGVuYW1lICovDQor ICAgIEVsZlcoV29yZCkgdm5fYXV4OyAgICAgLyogQnl0ZSBvZmZzZXQgZnJv bSB0aGlzIEVsZlcoVmVybmVlZCkNCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB0byBpdHMgRWxmVyhWZXJuYXV4KSBhcnJheSAgICAgICAgICAg ICAgICAgICAgICovDQorICAgIEVsZlcoV29yZCkgdm5fbmV4dDsgICAgLyog Qnl0ZSBvZmZzZXQgZnJvbSB0aGlzIEVsZlcoVmVybmVlZCkgdG8gdGhlDQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV4dCBvbmUuIDAgaW4g dGhlIGxhc3Qgb25lICAgICAgICAgICAgICAgICAgICAqLw0KKyAgfSBFbGZX KFZlcm5lZWQpOw0KKw0KKyAgRWxmVyhWZXJuYXV4KToNCisNCisgIHR5cGVk ZWYgc3RydWN0IHsNCisgICAgRWxmVyhXb3JkKSB2bmFfaGFzaDsgIC8qIERl cGVuZGVuY3kgbmFtZSBoYXNoIChwZXIgRUxGIGhhc2ggZnVuY3Rpb24pICAg ICovDQorICAgIEVsZlcoSGFsZikgdm5hX2ZsYWdzOyAvKiBEZXBlbmRlbmN5 IGZsYWcgYml0ZmllbGQuIFNlZSBiZWxvdyAgICAgICAgICAgICAqLw0KKyAg ICBFbGZXKEhhbGYpIHZuYV9vdGhlcjsgLyogUmVmZXJyZWQgdG8gYnkgU0hU X0dOVV92ZXJzeW0sIGJ1dCBzZWUgYmVsb3cgICAgKi8NCisgICAgRWxmVyhX b3JkKSB2bmFfbmFtZTsgIC8qIEJ5dGUgb2Zmc2V0IGluIHN0cnRhYiBvZiBy ZXF1aXJlZCAoc3ltYm9sKSBuYW1lICovDQorICAgIEVsZlcoV29yZCkgdm5h X25leHQ7ICAvKiBCeXRlIG9mZnNldCBmcm9tIHRoaXMgRWxmVyhWZXJuYXV4 KSB0byB0aGUgbmV4dA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg MCBmb3IgdGhlIGxhc3QgZW50cnkgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKi8NCisgIH0gRWxmVyhWZXJuYXV4KTsNCisNCisgIHZuYV9mbGFnczoN CisgICAgVkVSX0ZMR19XRUFLIDB4MiAgV2VhayB2ZXJzaW9uIGlkZW50aWZp ZXI6DQorICAgICAgICAgICAgICAgICAgICAgIE5vdCBmYXRhbCBpZiB0aGlz IHN5bWJvbCt2ZXJzaW9uIGlzIG1pc3NpbmcuDQorDQorICB2bmFfb3RoZXI6 DQorICAgIFRoaXMgdmFsdWUgaXMgdXNlZCB0byBsb29rIHVwIHRoZSBzeW1i b2wgdmVyc2lvbiBoYXNoOiBJdCBnaXZlcw0KKyAgICB0aGUgcG9zaXRpb24g b2YgdGhlIGhhc2ggaW4gdGhlIHZlcnNpb24gbG9va3VwIHRhYmxlLg0KKw0K KyAgICBCaXQgMTUgKDB4ODAwMCkgaXMgYSBmbGFnIGJpdCBhbmQgc2hvdWxk IGJlIG1hc2tlZCBvdXQgb2YNCisgICAgdGhpcyB2YWx1ZSBiZWZvcmUgdXNp bmcgaXQgYXMgYW4gaW5kZXggKGVnIGJ5IGJpdHdpc2UtYW5kLWluZw0KKyAg ICBpdHMgdmFsdWUgd2l0aCAweDdmZmYpDQorDQorICAgIElmIGJpdCAxNSAo MHg4MDAwKSBpcyBzZXQgdGhlbiB0aGlzIHN5bWJvbCBpcyBoaWRkZW4gYW5k IGlzDQorICAgIG5ldmVyIGFuIGFjY2VwdGFibGUgY2FuZGlkYXRlIGZvciBt YXRjaGluZyB2ZXJzaW9uIGNyaXRlcmlhLg0KKw0KKyAgICBSZWZlcmVuY2U6 IGdsaWJjOiBlbGYvZGwtdmVyc2lvbi5jOyBlbGYvZGwtbG9va3VwLmMNCisN CitTSFRfR05VX3ZlcnN5bSAgICAgICAgICAgICAweDZmZmZmZmZmDQorDQor ICBTZWN0aW9uIG5hbWU6ICIuZ251LnZlcnNpb24iDQorDQorICBUaGUgdmVy c2lvbmVkIHN5bWJvbCB0YWJsZS4NCisNCisgIElmIHByZXNlbnQsIHRoaXMg bXVzdCBoYXZlIHRoZSBzYW1lIG51bWJlciBvZmVudHJpZXMgYXMgdGhlDQor ICBTSFRfRFlOU1lNLyIuZHluc3ltIiBzZWN0aW9uLiBUaGUgZW50cmllcyBp biB0aGlzIHNlY3Rpb24gYXJlIGluIHRoZQ0KKyAgc2FtZSBvcmRlciBhcyB0 aG9zZSBpbiBTSFRfRFlOU1lNLg0KKw0KKyAgVGhhdCBpcyB0byBzYXk6IEVu dHJ5IDIgaW4gdGhpcyB0YWJsZSBjb3JyZXNwb25kcyB0byBlbnRyeSAyIGlu DQorICBTSFRfRFlOU1lNLCBlbnRyeSAzIGhlcmUgdG8gZW50cnkgMyBpbiBT SFRfRFlOU1lNLCBhbmQgc28gb24uDQorDQorICBUaGlzIHNlY3Rpb24gY29u dGFpbnMgYW4gYXJyYXkgb2YgZWxlbWVudHMgb2YgdHlwZSBFbGZXKEhhbGYp Lg0KKw0KKyAgRWFjaCBlbnRyeSBzcGVjaWZpZXMgdGhlIHZlcnNpb24gZGVm aW5lZCBmb3Igb3IgcmVxdWlyZWQgYnkgdGhlDQorICBjb3JyZXNwb25kaW5n IHN5bWJvbCBpbiB0aGUgRHluYW1pYyBTeW1ib2wgVGFibGUuDQorDQorICBF bnRyaWVzIGRvIG5vdCBnaXZlIHRoZSB2ZXJzaW9uIGRpcmVjdGx5IC0gaW5z dGVhZCB0aGV5IHJlZmVyIHRvIHRoZQ0KKyAgY29ycmVzcG9uZGluZyBFbGZX KFZlcm5hdXgpLnZuYV9vdGhlciBvciBFbGZXKFZlcmRlZikudmRfbmR4IHN0 cnVjdHVyZSttZW1iZXIuDQorDQorVHdvIHZhbHVlcyBhcmUgcmVzZXJ2ZWQ6 DQorDQorICBWRVJfTkRYX0xPQ0FMICAwIC0gVGhlIHN5bWJvbCBpcyBwcml2 YXRlLCBhbmQgaXMgbm90IGF2YWlsYWJsZSBvdXRzaWRlIHRoaXMgb2JqZWN0 Lg0KKyAgVkVSX05EWF9HTE9CQUwgMSAtIFRoZSBzeW1ib2wgaXMgZ2xvYmFs bHkgYXZhaWxhYmxlIChpZSB0aGUgYmFzZSBvciBkZWZhdWx0IHZlcnNpb24p Lg0KKw0KK05vdGUgc2VjdGlvbiBkZXNjcmlwdG9ycyAoU0hUX05PVEUgZXh0 ZW5zaW9ucykNCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09DQorDQorVGhlc2UgU0hUX05PVEUgZGVzY3JpcHRvciB0 eXBlcyBhcmUgR05VIGV4dGVuc2lvbnMNCitGb3VuZCBpbiB0aGUgdHlwZSBm aWVsZCBvZiB0aGUgRUxGIG5vdGUgbGF5b3V0Lg0KKw0KK1NlY3Rpb24gbmFt ZTogIi5ub3RlIiBhcyBwZXIgc3RhbmRhcmQgU0hUX05PVEUgc2VjdGlvbnMu DQorDQorRWFjaCBub3RlIGVudHJ5IHNob3VsZCBiZSBhbGlnbmVkIHRvIDQg Ynl0ZXMgaW4gMzItYml0IG9iamVjdHMgb3INCis4IGJ5dGVzIGluIDY0LWJp dCBvYmplY3RzIChzZWUgYmVsb3cgZm9yIGV4Y2VwdGlvbnMgdG8gdGhpcyku DQorDQorQWxpZ25tZW50OiBBIG5vdGUgcGFyc2VyIHNob3VsZCB1c2UgcF9h bGlnbiBmcm9tIHRoZSBwcm9ncmFtIHNlY3Rpb24NCitoZWFkZXIgZm9yIG5v dGUgYWxpZ25tZW50IHJhdGhlciB0aGFuIGFzc3VtaW5nIGFsaWdubWVudCBi YXNlZCBvbiBFTEYNCitmaWxlIGNsYXNzLg0KKw0KK05UX0dOVV9BQklfVEFH ICAgICAgICAgMQ0KKw0KKyAgVXNlIHRvIGluZGljYXRlIGtlcm5lbCB0eXBl IGFuZCBtaW5pbXVtIGtlcm5lbCB2ZXJzaW9uOg0KKyAgU2VjdGlvbiBtdXN0 IGJlIG5hbWVkICIubm90ZS5BQkktdGFnIg0KKw0KKyAgQWxpZ25tZW50OiBB bHdheXMgNC1ieXRlcywgRXZlbiBvbiA2NCBiaXQgYXJjaGl0ZWN0dXJlcy4N CisNCisgIFRoZSBuYW1lIGZpZWxkIChuYW1lc3ovbmFtZSkgY29udGFpbnMg dGhlIHN0cmluZyAiR05VIi4NCisNCisgIFRoZSBkZXNjc3ogZmllbGQgbXVz dCBiZSBhdCBsZWFzdCAxNiwNCisgIFRoZSBmaXJzdCAxNiBieXRlcyBvZiB0 aGUgZGVzYyBbYWthIGRlc2NkYXRhXSBmaWVsZCBhcmUgYXMgZm9sbG93czoN CisNCisgIFRoZSBmaXJzdCA0IGJ5dGUgd29yZCBpcyBhIG5hdGl2ZSBpbnRl Z2VyIGluZGljYXRpbmcgdGhlIGtlcm5lbCB0eXBlOg0KKyAgR05VX0FCSV9U QUdfTElOVVggICAgIDANCisgIEdOVV9BQklfVEFHX0hVUkQgICAgICAxDQor ICBHTlVfQUJJX1RBR19TT0xBUklTICAgMg0KKyAgR05VX0FCSV9UQUdfRlJF RUJTRCAgIDMNCisgIEdOVV9BQklfVEFHX05FVEJTRCAgICA0DQorICBHTlVf QUJJX1RBR19TWUxMQUJMRSAgNQ0KKyAgR05VX0FCSV9UQUdfTkFDTCAgICAg IDYNCisNCisgIFRoZSBzZWNvbmQsIHRoaXJkLCBhbmQgZm91cnRoIDQtYnl0 ZSB3b3JkcyBvZiB0aGUgZGVzYyBmaWVsZCBjb250YWluIHRoZSBlYXJsaWVz dA0KKyAgY29tcGF0aWJsZSBrZXJuZWwgdmVyc2lvbi4NCisNCisgIEZvciBl eGFtcGxlLCBpZiB0aGUgMyB3b3JkcyBhcmUgMiwgMiwgYW5kIDUsIHRoaXMg c2lnbmlmaWVzIGEgMi4yLjUga2VybmVsLg0KKw0KK05UX0dOVV9IV0NBUCAg ICAgICAgICAgMg0KKw0KKyAgVGhlIGZpcnN0IDQgYnl0ZXMgYXJlIGEgbmF0 aXZlIGludGVnZXIgZ2l2aW5nIHRoZSBudW1iZXIgb2YgY2FwYWJpbGl0aWVz Lg0KKw0KKyAgVGhlIG5leHQgNCBieXRlcyBnaXZlIHRoZSBiaXRtYXNrIG9m IGVuYWJsZWQgY2FwYWJpbGl0aWVzLg0KKw0KKyAgVGhlIHJlbWFpbmRlciBp cyBhIHBhY2tlZCBhcnJheSBvZjoNCisgIFsgIDEgYnl0ZSBdWyBOIGJ5dGVz ICAgICAgICAgICAgICAgIF0NCisgIFsgVEVTVEJJVCBdWyBcMCB0ZXJtaW5h dGVkIGNhcCBuYW1lIF0NCisNCitOVF9HTlVfQlVJTERfSUQgICAgICAgIDMN CisNCisgIGRlc2NzeiBieXRlcyBvZiBidWlsZC1pZCBkYXRhLg0KKw0KKyAg QWxpZ25tZW50OiBBbHdheXMgNC1ieXRlcywgRXZlbiBvbiA2NCBiaXQgYXJj aGl0ZWN0dXJlcy4NCisNCisgIFR5cGljYWxseSBwcmVzZW50ZWQgYXMgYSBo ZXggc3RyaW5nIGJ5IHVzZXItZmFjaW5nIHRvb2xzLg0KKyAgU3RvcmVkIGFz IGJpbmFyeSAoaWUgbm90IG5lY2Vzc2FyaWx5IHByaW50YWJsZSwgbm90IGVu Y29kZWQpLg0KKw0KKyAgVGhlIGJ1aWxkLWlkIGlzIGRlc2N0cmliZWQgYXMg aGF2aW5nIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoNCisgIEl0IGlzIHVu aXF1ZSBhbW9uZyB0aGUgc2V0IG9mIG1lYW5pbmdmdWwgY29udGVudHMgZm9y IEVMRiBmaWxlcyBhbmQNCisgIGlkZW50aWNhbCB3aGVuIHRoZSBvdXRwdXQg ZmlsZXdvdWxkIG90aGVyd2lzZSBoYXZlIGJlZW4gaWRlbnRpY2FsLg0KKw0K KyAgVGhlIGNvbXB1dGF0aW9uIG1lY2hhbmlzbSBmb3IgdGhlIGJ1aWxkLWlk IGlzIG5vdCBnaXZlbiwgYW5kIGlzIGluDQorICBhbnkgY2FzZSBvcGFxdWUg YWZ0ZXIgY29tcGlsZSB0aW1lLg0KKw0KK05UX0dOVV9HT0xEX1ZFUlNJT04g ICAgNA0KKw0KKyAgVXAgdG8gZGVzY3N6IG9mIFtwcmludGFibGVdIGdvbGQg dmVyc2lvbiBzdHJpbmcgYnl0ZXMuDQorDQorTlRfR05VX1BST1BFUlRZX1RZ UEVfMCA1DQorDQorICAzMiBvciA2NCBiaXQgYWxpZ25lZCAobWF0Y2hpbmcg dGhlIGFyY2hpdGVjdHVyZSkgYnl0ZXMgb2YgZGF0YS4NCisgIEVhY2ggZW50 cnkgd2l0aGluIHRoaXMgZGF0YSBibG9iIGNvbnNpc3RzIG9mOg0KKw0KKyAg NCBieXRlcywgYSBuYXRpdmUgaW50ZWdlciBnaXZpbmcgdGhlIHN1YnR5cGUu DQorICA0IGJ5dGVzLCBhIG5hdGl2ZSBpbnRlZ2VyIGdpdmluZyB0aGUgc2l6 ZSBvZiB0aGUgZW50cnkNCisNCisgIFNlZSBQVF9HTlVfUFJPUEVSVFkgYW5k L29yIGFyY2hpdGVjdHVyZSBzcGVjaWZpYyBBQklzIGZvciBkZXRhaWxzLg0K LS0gDQoyLjIwLjENCg0K --8323329-1404142571-1607533163=:28382 Content-Type: text/x-diff; name=0002-Add-prelink-documentation.patch Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename=0002-Add-prelink-documentation.patch RnJvbSA5ODlhYjMyNzFiMjJkYjUxYTUyZTY0NjM5OThiZGMxNTk3M2M5Nzg2 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQ0KRnJvbTogPT9VVEYtOD9xP1Zp dmVrPTIwRGFzPUMyPUEwTW9oYXBhdHJhPz0gPHZpdmVrQGNvbGxhYm9yYS5j b20+DQpEYXRlOiBXZWQsIDI1IE5vdiAyMDIwIDE3OjA4OjI0ICswMDAwDQpT dWJqZWN0OiBbUEFUQ0ggMi8yXSBBZGQgcHJlbGluayBkb2N1bWVudGF0aW9u DQpNSU1FLVZlcnNpb246IDEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWlu OyBjaGFyc2V0PVVURi04DQpDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4 Yml0DQoNCkV4dHJhY3RlZCBmcm9tIHByZWxpbmsucGRmIGJ5IEpha3ViIEpl bMOtbmVrIC0gYXBwZWFycyB0byBiZQ0KdGhlIGNsb3Nlc3QgdGhpbmcgdG8g YSBjYW5vbmljYWwgZGVzY3JpcHRpb24gd2UgY2FuIGZpbmQuDQotLS0NCiBw cmVsaW5rLnR4dCB8IDM1NDkgKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrDQogMSBmaWxlIGNoYW5nZWQsIDM1 NDkgaW5zZXJ0aW9ucygrKQ0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBwcmVsaW5r LnR4dA0KDQpkaWZmIC0tZ2l0IGEvcHJlbGluay50eHQgYi9wcmVsaW5rLnR4 dA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAuLjliYzRk MGINCi0tLSAvZGV2L251bGwNCisrKyBiL3ByZWxpbmsudHh0DQpAQCAtMCww ICsxLDM1NDkgQEANCitQcmVsaW5rDQorDQorSmFrdWIgSmVsw61uZWsNCitS ZWQgSGF0LCBJbmMuDQoramFrdWJAcmVkaGF0LmNvbQ0KKw0KK1sgVGhpcyB2 ZXJzaW9uIGV4dHJhY3RlZCBmcm9tIFBERiB3aXRoIHBkZnRvdGV4dCBhbmQg ZWRpdGVkIGZvciBjbGFyaXR5IF0NCisNCitOb3ZlbWJlciAxOSwgMjAyMA0K K0Fic3RyYWN0DQorDQorUHJlbGluayBpcyBhIHRvb2wgZGVzaWduZWQgdG8g c3BlZWQgdXAgZHluYW1pYyBsaW5raW5nIG9mIEVMRiBwcm9ncmFtcw0KK29u IHZhcmlvdXMgTGludXggYXJjaGl0ZWN0dXJlcy4gSXQgc3BlZWRzIHVwIHN0 YXJ0IHVwIG9mDQorDQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQ0KKw0KKzEgUHJlZmFjZQ0KKw0KK0luIDE5OTUsIExpbnV4IGNoYW5nZWQg aXRzIGJpbmFyeSBmb3JtYXQgZnJvbSBhLm91dCB0byBFTEYuDQorDQorVGhl IGEub3V0IGJpbmFyeSBmb3JtYXQgd2FzIHZlcnkgaW5mbGV4aWJsZSBhbmQg c2hhcmVkIGxpYnJhcmllcyB3ZXJlIHByZXR0eQ0KK2hhcmQgdG8gYnVpbGQu IExpbnV44oCZcyBzaGFyZWQgbGlicmFyaWVzIGluIGEub3V0IGFyZSBwb3Np dGlvbiBkZXBlbmRlbnQgYW5kDQorZWFjaCBoYWQgdG8gYmUgZ2l2ZW4gYSB1 bmlxdWUgdmlydHVhbCBhZGRyZXNzIHNwYWNlIHNsb3QgYXQgbGluayB0aW1l Lg0KKw0KK01haW50YWluaW5nIHRoZXNlIGFzc2lnbm1lbnRzIHdhcyBwcmV0 dHkgaGFyZCBldmVuIHdoZW4gdGhlcmUgd2VyZSBqdXN0IGEgZmV3DQorc2hh cmVkIGxpYnJhcmllcywgdGhlcmUgdXNlZCB0byBiZSBhIGNlbnRyYWwgYWRk cmVzcyByZWdpc3RyeSBtYWludGFpbmVkIGJ5DQoraHVtYW5zIGluIGZvcm0g b2YgYSB0ZXh0IGZpbGUsIGJ1dCBpdCBpcyBjZXJ0YWlubHkgaW1wb3NzaWJs ZSB0byBkbyB0aGVzZSBkYXlzDQord2hlbiB0aGVyZSBhcmUgdGhvdXNhbmRz IG9mIGRpZmZlcmVudCBzaGFyZWQgbGlicmFyaWVzIGFuZCB0aGVpciBzaXpl LCB2ZXJzaW9uDQorYW5kIGV4cG9ydGVkIHN5bWJvbHMgYXJlIGNvbnN0YW50 bHkgY2hhbmdpbmcuDQorDQorT24gdGhlIG90aGVyIHNpZGUsIHRoZXJlIHdh cyBqdXN0IG1pbmltdW0gYW1vdW50IG9mIHdvcmsgdGhlIGR5bmFtaWMgbGlu a2VyDQoraGFkIHRvIGRvIGluIG9yZGVyIHRvIGxvYWQgdGhlc2Ugc2hhcmVk IGxpYnJhcmllcywgYXMgcmVsb2NhdGlvbiBoYW5kbGluZyBhbmQNCitzeW1i b2wgbG9va3VwIHdhcyBvbmx5IGRvbmUgYXQgbGluayB0aW1lLiBUaGUgZHlu YW1pYyBsaW5rZXIgdXNlZCB0aGUgdXNlbGliDQorc3lzdGVtIGNhbGwgd2hp Y2gganVzdCBtYXBwZWQgdGhlIG5hbWVkIGxpYnJhcnkgaW50byB0aGUgYWRk cmVzcyBzcGFjZSAod2l0aA0KK25vIHNlZ21lbnQgb3Igc2VjdGlvbiBwcm90 ZWN0aW9uIGRpZmZlcmVuY2VzLCB0aGUgd2hvbGUgbWFwcGluZyB3YXMgd3Jp dGFibGUNCithbmQgZXhlY3V0YWJsZSkuDQorDQorVGhlIEVMRiBiaW5hcnkg Zm9ybWF0IGlzIG9uZSBvZiB0aGUgbW9zdCBmbGV4aWJsZSBiaW5hcnkgZm9y bWF0cywgaXRzIHNoYXJlZA0KKw0KK1sgQXMgZGVzY3JpYmVkIGluIGdlbmVy aWMgQUJJIGRvY3VtZW50IFsxXSBhbmQgdmFyaW91cyBwcm9jZXNzb3INCisg IHNwZWNpZmljIEFCSSBzdXBwbGVtZW50cyBbMl0sIFszXSwgWzRdLCBbNV0s IFs2XSwgWzddLCBbOF0uIF0NCisNCitsaWJyYXJpZXMgYXJlIGVhc3kgdG8g YnVpbGQgYW5kIHRoZXJlIGlzIG5vIG5lZWQgZm9yIGEgY2VudHJhbCBhc3Np Z25tZW50IG9mDQordmlydHVhbCBhZGRyZXNzIHNwYWNlIHNsb3RzLg0KKw0K K1NoYXJlZCBsaWJyYXJpZXMgYXJlIHBvc2l0aW9uIGluZGVwZW5kZW50IGFu ZCByZWxvY2F0aW9uIGhhbmRsaW5nIGFuZCBzeW1ib2wNCitsb29rdXAgYXJl IGRvbmUgcGFydGx5IGF0IHRoZSB0aW1lIHRoZSBleGVjdXRhYmxlIGlzIGNy ZWF0ZWQgYW5kIHBhcnRseSBhdA0KK3J1bnRpbWUuDQorDQorU3ltYm9scyBp biBzaGFyZWQgbGlicmFyaWVzIGNhbiBiZSBvdmVycmlkZGVuIGF0IHJ1bnRp bWUgYnkgcHJlbG9hZGluZyBhIG5ldw0KK3NoYXJlZCBsaWJyYXJ5IGRlZmlu aW5nIHRob3NlIHN5bWJvbHMgb3Igd2l0aG91dCByZWxpbmtpbmcgYW4gZXhl Y3V0YWJsZSBieQ0KK2FkZGluZyBzeW1ib2xzIHRvIGEgc2hhcmVkIGxpYnJh cnkgd2hpY2ggaXMgc2VhcmNoZWQgdXAgZWFybGllciBkdXJpbmcgc3ltYm9s DQorbG9va3VwIG9yIGJ5IGFkZGluZyBuZXcgZGVwZW5kZW50IHNoYXJlZCBs aWJyYXJpZXMgdG8gYSBsaWJyYXJ5IHVzZWQgYnkgdGhlDQorcHJvZ3JhbS4N CisNCitBbGwgdGhlc2UgaW1wcm92ZW1lbnRzIGhhdmUgdGhlaXIgcHJpY2U6 DQorDQorIC0gc2xvd2VyIHByb2dyYW0gc3RhcnR1cA0KKyAtIG1vcmUgbm9u LXNoYXJlYWJsZSBtZW1vcnkgcGVyIHByb2Nlc3MgDQorIC0gcnVudGltZSBj b3N0IGFzc29jaWF0ZWQgd2l0aCBwb3NpdGlvbiBpbmRlcGVuZGVudCBjb2Rl IGluIHNoYXJlZCBsaWJyYXJpZXMNCisNCitQcm9ncmFtIHN0YXJ0dXAgb2Yg RUxGIHByb2dyYW1zIGlzIHNsb3dlciB0aGFuIHN0YXJ0dXAgb2YgYS5vdXQg cHJvZ3JhbXMNCit3aXRoIHNoYXJlZCBsaWJyYXJpZXMsIGJlY2F1c2UgdGhl IGR5bmFtaWMgbGlua2VyIGhhcyBtdWNoIG1vcmUgd29yayB0byBkbw0KK2Jl Zm9yZSBjYWxsaW5nIHByb2dyYW3igJlzIGVudHJ5IHBvaW50Lg0KKw0KK1Ro ZSBjb3N0IG9mIGxvYWRpbmcgbGlicmFyaWVzIGlzIGp1c3Qgc2xpZ2h0bHkg YmlnZ2VyLCBhcyBFTEYgc2hhcmVkIGxpYnJhcmllcw0KK2hhdmUgdHlwaWNh bGx5IHNlcGFyYXRlIHJlYWQtb25seSBhbmQgd3JpdGFibGUgc2VnbWVudHMs IHNvIHRoZSBkeW5hbWljIGxpbmtlcg0KK2hhcyB0byB1c2UgZGlmZmVyZW50 IG1lbW9yeSBwcm90ZWN0aW9uIGZvciBlYWNoIHNlZ21lbnQuDQorDQorVGhl IG1haW4gZGlmZmVyZW5jZSBpcyBpbiByZWxvY2F0aW9uIGhhbmRsaW5nIGFu ZCBhc3NvY2lhdGVkIHN5bWJvbA0KK2xvb2t1cC4gSW4gdGhlIGEub3V0IGZv cm1hdCB0aGVyZSB3YXMgbm8gcmVsb2NhdGlvbiBoYW5kbGluZyBvciBzeW1i b2wgbG9va3VwDQorYXQgcnVudGltZTogSW4gRUxGLCB0aGlzIGNvc3QgaXMg bXVjaCBtb3JlIGltcG9ydGFudCB0b2RheSB0aGFuIGl0IHVzZWQgdG8NCiti ZSBkdXJpbmcgYS5vdXQgdG8gRUxGIHRyYW5zaXRpb24gaW4gTGludXgsIGFz IGVzcGVjaWFsbHkgR1VJIHByb2dyYW1zIGtlZXANCitjb25zdGFudGx5IGdy b3dpbmcgYW5kIHN0YXJ0IHRvIHVzZSBtb3JlIGFuZCBtb3JlIHNoYXJlZCBs aWJyYXJpZXMuDQorDQorNSB5ZWFycyBhZ28gcHJvZ3JhbXMgdXNpbmcgbW9y ZSB0aGFuIDEwIHNoYXJlZCBsaWJyYXJpZXMgd2VyZSB2ZXJ5IHJhcmUsIHRo ZXNlDQorZGF5cyBtb3N0IG9mIHRoZSBHVUkgcHJvZ3JhbXMgbGluayBhZ2Fp bnN0IGFyb3VuZCA0MCBvciBtb3JlIHNoYXJlZCBhbmQgaW4NCitleHRyZW1l IGNhc2VzIHByb2dyYW1zIHVzZSBldmVuIG1vcmUgdGhhbiA5MCBzaGFyZWQg bGlicmFyaWVzLg0KKw0KK0V2ZXJ5IHNoYXJlZCBsaWJyYXJ5IGFkZHMgaXRz IHNldCBvZiBkeW5hbWljIHJlbG9jYXRpb25zIHRvIHRoZSBjb3N0IGFuZA0K K2VubGFyZ2VzIHN5bWJvbCBzZWFyY2ggc2NvcGUsIHNvIGluIGFkZGl0aW9u IHRvIGRvaW5nIG1vcmUgc3ltYm9sIGxvb2t1cHMsDQorZWFjaCBzeW1ib2wg bG9va3VwIHRoZSBhcHBsaWNhdGlvbiBoYXMgdG8gcGVyZm9ybSBpcyBvbiBh dmVyYWdlIG1vcmUNCitleHBlbnNpdmUuDQorDQorQW5vdGhlciBmYWN0b3Ig aW5jcmVhc2luZyB0aGUgY29zdCBpcyB0aGUgbGVuZ3RoIG9mIHN5bWJvbCBu YW1lcyB3aGljaCBoYXZlIHRvDQorYmUgY29tcGFyZWQgd2hlbiBmaW5kaW5n IHN5bWJvbCBpbiB0aGUgc3ltYm9sIGhhc2ggdGFibGUgb2YgYSBzaGFyZWQg bGlicmFyeToNCitDKysgbGlicmFyaWVzIHRlbmQgdG8gaGF2ZSBleHRyZW1l bHkgbG9uZyBzeW1ib2wgbmFtZXMgYW5kIHVuZm9ydHVuYXRlbHkgdGhlDQor bmV3IEMrKyBBQkkgcHV0cyBuYW1lc3BhY2VzIGFuZCBjbGFzcyBuYW1lcyBm aXJzdCBhbmQgbWV0aG9kIG5hbWVzIGxhc3QgaW4gdGhlDQorbWFuZ2xlZCBu YW1lcywgc28gb2Z0ZW4gc3ltYm9sIG5hbWVzIGRpZmZlciBvbmx5IGluIGxh c3QgZmV3IGJ5dGVzIG9mIHZlcnkNCitsb25nIG5hbWVzLg0KKw0KK0V2ZXJ5 IHRpbWUgYSByZWxvY2F0aW9uIGlzIGFwcGxpZWQgdGhlIGVudGlyZSBtZW1v cnkgcGFnZSBjb250YWluaW5nIHRoZQ0KK2FkZHJlc3Mgd2hpY2ggaXMgd3Jp dHRlbiB0byBtdXN0IGJlIGxvYWRlZCBpbnRvIG1lbW9yeS4gVGhlIG9wZXJh dGluZyBzeXN0ZW0NCitkb2VzIGEgY29weS1vbi13cml0ZSBvcGVyYXRpb24g d2hpY2ggYWxzbyBoYXMgdGhlIGNvbnNlcXVlbmNlIHRoYXQgdGhlDQorcGh5 c2ljYWwgbWVtb3J5IG9mIHRoZSBtZW1vcnkgcGFnZSBjYW5ub3QgYW55bW9y ZSBiZSBzaGFyZWQgd2l0aCBvdGhlcg0KK3Byb2Nlc3Nlcy4gV2l0aCBFTEYs IHR5cGljYWxseSBhbGwgb2YgcHJvZ3JhbeKAmXMgR2xvYmFsIE9mZnNldCBU YWJsZSwNCitjb25zdGFudHMgYW5kIHZhcmlhYmxlcyBjb250YWluaW5nIHBv aW50ZXJzIHRvIG9iamVjdHMgaW4gc2hhcmVkIGxpYnJhcmllcywNCitldGMu IGFyZSB3cml0dGVuIGludG8gYmVmb3JlIHRoZSBkeW5hbWljIGxpbmtlciBw YXNzZXMgY29udHJvbCBvdmVyIHRvIHRoZQ0KK3Byb2dyYW0uDQorDQorT24g bW9zdCBhcmNoaXRlY3R1cmVzICh3aXRoIHNvbWUgZXhjZXB0aW9ucyBsaWtl IEFNRDY0IGFyY2hpdGVjdHVyZSkgcG9zaXRpb24NCitpbmRlcGVuZGVudCBj b2RlIHJlcXVpcmVzIHRoYXQgb25lIHJlZ2lzdGVyIG5lZWRzIHRvIGJlIGRl ZGljYXRlZCBhcyBQSUMNCityZWdpc3RlciBhbmQgdGh1cyBjYW5ub3QgYmUg dXNlZCBpbiB0aGUgZnVuY3Rpb25zIGZvciBvdGhlciBwdXJwb3Nlcy4gVGhp cw0KK2VzcGVjaWFsbHkgZGVncmFkZXMgcGVyZm9ybWFuY2Ugb24gcmVnaXN0 ZXItc3RhcnZlZCBhcmNoaXRlY3R1cmVzIGxpa2UNCitJQS0zMi4gQWxzbywg dGhlcmUgbmVlZHMgdG8gYmUgc29tZSBjb2RlIHRvIHNldCB1cCB0aGUgUElD IHJlZ2lzdGVyLCBlaXRoZXINCitpbnZva2VkIGFzIHBhcnQgb2YgZnVuY3Rp b24gcHJvbG9ndWVzLCBvciB3aGVuIHVzaW5nIGZ1bmN0aW9uIGRlc2NyaXB0 b3JzIGluDQordGhlIGNhbGxpbmcgc2VxdWVuY2UuDQorDQorUHJlbGluayBp cyBhIHRvb2wgd2hpY2ggKHRvZ2V0aGVyIHdpdGggY29ycmVzcG9uZGluZyBk eW5hbWljIGxpbmtlciBhbmQgbGlua2VyDQorY2hhbmdlcykgYXR0ZW1wdHMg dG8gYnJpbmcgYmFjayBzb21lIG9mIHRoZSBhLm91dCBhZHZhbnRhZ2VzIChz dWNoIGFzIHRoZQ0KK3NwZWVkIGFuZCBsZXNzIENPV+KAmWQgcGFnZXMpIHRv IHRoZSBFTEYgYmluYXJ5IGZvcm1hdCB3aGlsZSByZXRhaW5pbmcgYWxsIG9m DQoraXRzIGZsZXhpYmlsaXR5Lg0KKw0KK0luIGEgbGltaXRlZCB3YXkgaXQg YWxzbyBhdHRlbXB0cyB0byBkZWNyZWFzZSBudW1iZXIgb2Ygbm9uc2hhcmVh YmxlIHBhZ2VzDQorY3JlYXRlZCBieSByZWxvY2F0aW9ucy4gUHJlbGluayB3 b3JrcyBjbG9zZWx5IHdpdGggdGhlIGR5bmFtaWMgbGlua2VyIGluIHRoZQ0K K0dOVSBDIGxpYnJhcnksIGJ1dCBwcm9iYWJseSBpdCB3b3VsZG7igJl0IGJl IHRvbyBoYXJkIHRvIHBvcnQgaXQgdG8gc29tZSBvdGhlcg0KK0VMRiB1c2lu ZyBwbGF0Zm9ybXMgd2hlcmUgdGhlIGR5bmFtaWMgbGlua2VyIGNhbiBiZSBt b2RpZmllZCBpbiBzaW1pbGFyIHdheXMuDQorDQorPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PQ0KKw0KKzIgQ2FjaGluZyBvZiBzeW1ib2wgbG9v a3VwIHJlc3VsdHMNCisNCitQcm9ncmFtIHN0YXJ0dXAgY2FuIGJlIHNwZWVk ZWQgdXAgYnkgY2FjaGluZyBvZiBzeW1ib2wgbG9va3VwIHJlc3VsdHMuDQor TWFueSBzaGFyZWQgbGlicmFyaWVzIG5lZWQgbW9yZSB0aGFuIG9uZSBsb29r dXAgb2YgYSBwYXJ0aWN1bGFyIHN5bWJvbC4NCitUaGlzIGlzIGVzcGVjaWFs bHkgdHJ1ZSBmb3IgQysrIHNoYXJlZCBsaWJyYXJpZXMsIHdoZXJlIGUuZy4g dGhlIHNhbWUgbWV0aG9kDQoraXMgcHJlc2VudCBpbiBtdWx0aXBsZSB2aXJ0 dWFsIHRhYmxlcyBvciBSVFRJIGRhdGEgc3RydWN0dXJlcy4NCisNCitUcmFk aXRpb25hbGx5LCBlYWNoIEVMRiBzZWN0aW9uIHdoaWNoIG5lZWRzIGR5bmFt aWMgcmVsb2NhdGlvbnMgaGFzIGFuDQorYXNzb2NpYXRlZCAucmVsYSogb3Ig LnJlbCogc2VjdGlvbiAoZGVwZW5kaW5nIG9uIHdoZXRoZXIgdGhlIGFyY2hp dGVjdHVyZSBpcw0KK2RlZmluZWQgdG8gdXNlIFJFTEEgb3IgUkVMIHJlbG9j YXRpb25zKS4gVGhlIHJlbG9jYXRpb25zIGluIHRob3NlIHNlY3Rpb25zIGFy ZQ0KK3R5cGljYWxseSBzb3J0ZWQgYnkgYXNjZW5kaW5nIHJfb2Zmc2V0IHZh bHVlcy4NCisNCitTeW1ib2wgbG9va3VwcyBhcmUgdXN1YWxseSB0aGUgbW9z dCBleHBlbnNpdmUgb3BlcmF0aW9uIGR1cmluZyBwcm9ncmFtDQorc3RhcnR1 cCwgc28gY2FjaGluZyB0aGUgc3ltYm9sIGxvb2t1cHMgaGFzIHBvdGVudGlh bCB0byBkZWNyZWFzZSB0aW1lIHNwZW50DQoraW4gdGhlIGR5bmFtaWMgbGlu a2VyLg0KKw0KK09uZSB3YXkgdG8gZGVjcmVhc2UgdGhlIGNvc3Qgb2Ygc3lt Ym9sIGxvb2t1cHMgaXMgdG8gY3JlYXRlIGEgdGFibGUgd2l0aCB0aGUNCitz aXplIGVxdWFsIHRvIG51bWJlciBvZiBlbnRyaWVzIGluIGR5bmFtaWMgc3lt Ym9sIHRhYmxlICguZHluc3ltKSBpbiB0aGUNCitkeW5hbWljIGxpbmtlciB3 aGVuIHJlc29sdmluZyBhIHBhcnRpY3VsYXIgc2hhcmVkIGxpYnJhcnksIGJ1 dCB0aGF0IHdvdWxkIGluDQorc29tZSBjYXNlcyBuZWVkIGEgbG90IG9mIG1l bW9yeSBhbmQgc29tZSB0aW1lIHNwZW50IGluIGluaXRpYWxpemluZyB0aGUN Cit0YWJsZS4NCisNCitBbm90aGVyIG9wdGlvbiB3b3VsZCBiZSB0byB1c2Ug YSBoYXNoIHRhYmxlIHdpdGggY2hhaW5lZCBsaXN0cywgYnV0IHRoYXQgbmVl ZHMNCitib3RoIGV4dHJhIG1lbW9yeSBhbmQgd291bGQgYWxzbyB0YWtlIGV4 dHJhIHRpbWUgZm9yIGNvbXB1dGF0aW9uIG9mIHRoZSBoYXNoDQordmFsdWUg YW5kIHdhbGtpbmcgdXAgdGhlIGNoYWlucyB3aGVuIGRvaW5nIG5ldyBsb29r dXBzLg0KKw0KK0ZvcnR1bmF0ZWx5LCBuZWl0aGVyIG9mIHRoZXNlIGFyZSBy ZWFsbHkgbmVjZXNzYXJ5IGlmIHdlIG1vZGlmeSB0aGUgbGlua2VyIHRvDQor c29ydCByZWxvY2F0aW9ucyBzbyB0aGF0IHJlbG9jYXRpb25zIGFnYWluc3Qg dGhlIHNhbWUgc3ltYm9sIGFyZSBhZGphY2VudC4NCisNCitUaGlzIGhhcyBi ZWVuIGRvbmUgZmlyc3QgaW4gdGhlIFN1biBsaW5rZXIgYW5kIGR5bmFtaWMg bGlua2VyLCBzbyB0aGUgR05VDQorbGlua2VyIGFuZCBkeW5hbWljIGxpbmtl ciB1c2UgdGhlIHNhbWUgRUxGIGV4dGVuc2lvbnMgYW5kIGxpbmtlciBmbGFn cy4NCisNCitQYXJ0aWN1bGFybHksIHRoZSBmb2xsb3dpbmcgbmV3IEVMRiBk eW5hbWljIHRhZ3MgaGF2ZSBiZWVuIGludHJvZHVjZWQ6DQorDQorICAjZGVm aW5lIERUX1JFTEFDT1VOVCAweDZmZmZmZmY5DQorDQorICAjZGVmaW5lIERU X1JFTENPVU5UIDB4NmZmZmZmZmENCisNCitOZXcgb3B0aW9ucyAteiBjb21i cmVsb2MgYW5kIC16IG5vY29tYnJlbG9jIGhhdmUgYmVlbiBhZGRlZCB0byB0 aGUgbGlua2VyLg0KK1sgLXogY29tYnJlbG9jIGlzIHRoZSBkZWZhdWx0IGlu IEdOVSBsaW5rZXIgdmVyc2lvbnMgMi4xMyBhbmQgbGF0ZXIgXQ0KKw0KK1Ro ZSBsYXR0ZXIgY2F1c2VzIHRoZSBwcmV2aW91cyBsaW5rZXIgYmVoYXZpb3Is IGkuZS4gZWFjaCBzZWN0aW9uIHJlcXVpcmluZw0KK3JlbG9jYXRpb25zIGhh cyBhIGNvcnJlc3BvbmRpbmcgcmVsb2NhdGlvbiBzZWN0aW9uLCB3aGljaCBp cyBzb3J0ZWQgYnkNCithc2NlbmRpbmcgcl9vZmZzZXQuDQorDQorLXogY29t YnJlbG9jIGluc3RydWN0cyB0aGUgbGlua2VyIHRvIGNyZWF0ZSBqdXN0IG9u ZSByZWxvY2F0aW9uIHNlY3Rpb24gZm9yDQorZHluYW1pYyByZWxvY2F0aW9u cyBvdGhlciB0aGFuIHN5bWJvbCBqdW1wIHRhYmxlIChQTFQpIHJlbG9jYXRp b25zLg0KKw0KK1RoaXMgc2luZ2xlIHJlbG9jYXRpb24gc2VjdGlvbiAoZWl0 aGVyIC5yZWxhLmR5biBvciAucmVsLmR5bikgaXMgc29ydGVkLCBzbw0KK3Ro YXQgcmVsYXRpdmUgcmVsb2NhdGlvbnMgY29tZSBmaXJzdCAoc29ydGVkIGJ5 IGFzY2VuZGluZyByX29mZnNldCksDQorZm9sbG93ZWQgYnkgb3RoZXIgcmVs b2NhdGlvbnMsIHNvcnRlZCBhZ2FpbiBieSBhc2NlbmRpbmcgcl9vZmZzZXQu DQorDQorWyBJbiBmYWN0IHNvcnRpbmcgbmVlZHMgdG8gaW5jbHVkZSB0aGUg dHlwZSBvZiBsb29rdXAuIE1vc3QgcmVsb2NhdGlvbnMNCisgIHJlc29sdmUg dG8gYSBQTFQgc2xvdCBpbiB0aGUgZXhlY3V0YWJsZSBpZiB0aGVyZSBpcyBv bmUgZm9yIHRoZSBsb29rdXANCisgIHN5bWJvbCwgYmVjYXVzZSB0aGUgZXhl Y3V0YWJsZSBtaWdodCBoYXZlIGEgcG9pbnRlciBhZ2FpbnN0IHRoYXQgc3lt Ym9sDQorICB3aXRob3V0IGFueSBkeW5hbWljIHJlbG9jYXRpb25zLg0KKyAg QnV0IGUuZy4gcmVsb2NhdGlvbnMgdXNlZCBmb3IgdGhlIFBMVCBzbG90cyBt dXN0IGF2b2lkIHRoZXNlIF0NCisNCitJZiBtb3JlIHJlbG9jYXRpb25zIGFy ZSBhZ2FpbnN0IHRoZSBzYW1lIHN5bWJvbCwgdGhleSBpbW1lZGlhdGVseSBm b2xsb3cNCit0aGUgZmlyc3QgcmVsb2NhdGlvbiBhZ2FpbnN0IHRoYXQgc3lt Ym9sIHdpdGggbG93ZXN0IHJfb2Zmc2V0Lg0KKw0KK1RoZSBudW1iZXIgb2Yg cmVsYXRpdmUgcmVsb2NhdGlvbnMgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUg c2VjdGlvbiBpcyBzdG9yZWQNCitpbiB0aGUgRFRfUkVMQUNPVU5UIHJlc3Au IERUX1JFTENPVU5UIGR5bmFtaWMgdGFnLg0KKw0KK1RoZSBkeW5hbWljIGxp bmtlciBjYW4gdXNlIHRoZSBuZXcgZHluYW1pYyB0YWcgZm9yIHR3byBwdXJw b3Nlcy4NCisNCitJZiB0aGUgc2hhcmVkIGxpYnJhcnkgaXMgc3VjY2Vzc2Z1 bGx5IG1hcHBlZCBhdCB0aGUgc2FtZSBhZGRyZXNzIGFzIHRoZSBmaXJzdA0K K1BUX0xPQUQgc2VnbWVudOKAmXMgdmlydHVhbCBhZGRyZXNzLCB0aGUgbG9h ZCBvZmZzZXQgaXMgemVybyBhbmQgdGhlIGR5bmFtaWMNCitsaW5rZXIgY2Fu IGF2b2lkIGFsbCB0aGUgcmVsYXRpdmUgcmVsb2NhdGlvbnMgd2hpY2ggd291 bGQganVzdCBhZGQgemVybyB0bw0KK3ZhcmlvdXMgbWVtb3J5IGxvY2F0aW9u cy4NCisNCitOb3JtYWxseSBzaGFyZWQgbGlicmFyaWVzIGFyZSBsaW5rZWQg d2l0aCBmaXJzdCBQVF9MT0FEIHNlZ21lbnTigJlzIHZpcnR1YWwNCithZGRy ZXNzIHNldCB0byB6ZXJvLCBzbyB0aGUgbG9hZCBvZmZzZXQgaXMgbm9uLXpl cm8uIFRoaXMgY2FuIGJlIGNoYW5nZWQNCit0aHJvdWdoIGEgbGlua2VyIHNj cmlwdCBvciBieSB1c2luZyBhIHNwZWNpYWwgcHJlbGluayBvcHRpb24g4oCT cmVsb2Mtb25seSB0bw0KK2NoYW5nZSB0aGUgYmFzZSBhZGRyZXNzIG9mIGEg c2hhcmVkIGxpYnJhcnkuDQorDQorQWxsIHByZWxpbmtlZCBzaGFyZWQgbGli cmFyaWVzIGhhdmUgbm9uLXplcm8gYmFzZSBhZGRyZXNzIGFzIHdlbGwuDQor DQorSWYgdGhlIGxvYWQgb2Zmc2V0IGlzIG5vbi16ZXJvLCB0aGUgZHluYW1p YyBsaW5rZXIgY2FuIHN0aWxsIG1ha2UgdXNlIG9mIHRoaXMNCitkeW5hbWlj IHRhZywgYXMgcmVsYXRpdmUgcmVsb2NhdGlvbiBoYW5kbGluZyBpcyB0eXBp Y2FsbHkgd2F5IHNpbXBsZXIgdGhhbg0KK2hhbmRsaW5nIG90aGVyIHJlbG9j YXRpb25zIChzaW5jZSBzeW1ib2wgbG9va3VwIGlzIG5vdCBuZWNlc3Nhcnkp IGFuZCB0aHVzIGl0DQorY2FuIGhhbmRsZSBhbGwgcmVsYXRpdmUgcmVsb2Nh dGlvbnMgaW4gYSB0aWdodCBsb29wIGluIG9uZSBwbGFjZSBhbmQgdGhlbg0K K2hhbmRsZSB0aGUgcmVtYWluaW5nIHJlbG9jYXRpb25zIHdpdGggdGhlIGZ1 bGx5IGZlYXR1cmVkIHJlbG9jYXRpb24gaGFuZGxpbmcNCityb3V0aW5lLg0K Kw0KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCitUaGUgc2Vj b25kIGFuZCBtb3JlIGltcG9ydGFudCBwb2ludCBpcyB0aGF0IGlmIHJlbG9j YXRpb25zIGFnYWluc3QgdGhlIHNhbWUNCitzeW1ib2wgYXJlIGFkamFjZW50 LCB0aGUgZHluYW1pYyBsaW5rZXIgY2FuIHVzZSBhIGNhY2hlIHdpdGggc2lu Z2xlIGVudHJ5Lg0KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0N CisNCitUaGUgZHluYW1pYyBsaW5rZXIgaW4gZ2xpYmMsIGlmIGl0IHNlZXMg c3RhdGlzdGljcyBhcyBwYXJ0IG9mIHRoZSBMRF9ERUJVRw0KK2Vudmlyb25t ZW50IHZhcmlhYmxlLCBkaXNwbGF5cyBzdGF0aXN0aWNzIHdoaWNoIGNhbiBz aG93IGhvdyB1c2VmdWwgdGhpcw0KK29wdGltaXphdGlvbiBpcy4gTGV04oCZ cyBsb29rIGF0IHNvbWUgYmlnIEMrKyBhcHBsaWNhdGlvbiwgZS5nLiBrb25x dWVyb3IuIElmDQorbm90IHVzaW5nIHRoZSBjYWNoZSwgdGhlIHN0YXRpc3Rp Y3MgbG9va3MgbGlrZSB0aGlzOg0KKw0KKyAgcnVudGltZSBsaW5rZXIgc3Rh dGlzdGljczoNCisgIHRvdGFsIHN0YXJ0dXAgdGltZSBpbiBkeW5hbWljIGxv YWRlcjogMjcwODg2MDU5IGNsb2NrIGN5Y2xlcw0KKyAgICAgICAgICAgIHRp bWUgbmVlZGVkIGZvciByZWxvY2F0aW9uOiAyNjYzNjQ5MjcgY2xvY2sgY3lj bGVzICg5OC4zJSkNCisgICAgICAgICAgICAgICAgIG51bWJlciBvZiByZWxv Y2F0aW9uczogNzkwNjcNCisgICAgICBudW1iZXIgb2YgcmVsb2NhdGlvbnMg ZnJvbSBjYWNoZTogMA0KKyAgICAgICAgbnVtYmVyIG9mIHJlbGF0aXZlIHJl bG9jYXRpb25zOiAzMTE2OQ0KKyAgICAgICAgICAgdGltZSBuZWVkZWQgdG8g bG9hZCBvYmplY3RzOiA0MjAzNjMxIGNsb2NrIGN5Y2xlcyAoMS41JSkNCisN CitUaGlzIHByb2dyYW0gcnVuIGlzIHdpdGggaG90IGNhY2hlcywgb24gbm9u LXByZWxpbmtlZCBzeXN0ZW0sIHdpdGggbGF6eQ0KK2JpbmRpbmcuIFRoZSBu dW1iZXJzIHNob3cgdGhhdCB0aGUgZHluYW1pYyBsaW5rZXIgc3BlbnQgbW9z dCBvZiBpdHMgdGltZSBpbg0KK3JlbG9jYXRpb24gaGFuZGxpbmcgYW5kIGVz cGVjaWFsbHkgc3ltYm9sIGxvb2t1cHMuIElmIHVzaW5nIHN5bWJvbCBsb29r dXANCitjYWNoZSwgdGhlIG51bWJlcnMgbG9vayBkaWZmZXJlbnQ6DQorDQor DQorICB0b3RhbCBzdGFydHVwIHRpbWUgaW4gZHluYW1pYyBsb2FkZXI6IDEz MjkyMjAwMSBjbG9jayBjeWNsZXMNCisgICAgICAgICAgICB0aW1lIG5lZWRl ZCBmb3IgcmVsb2NhdGlvbjogMTI4Mzk5NjU5IGNsb2NrIGN5Y2xlcyAoOTYu NSUpDQorICAgICAgICAgICAgICAgICBudW1iZXIgb2YgcmVsb2NhdGlvbnM6 IDI1NDczDQorICAgICAgbnVtYmVyIG9mIHJlbG9jYXRpb25zIGZyb20gY2Fj aGU6IDUzNTk0DQorICAgICAgICBudW1iZXIgb2YgcmVsYXRpdmUgcmVsb2Nh dGlvbnM6IDMxMTY5DQorICAgICAgICAgICB0aW1lIG5lZWRlZCB0byBsb2Fk IG9iamVjdHM6IDQyMDIzOTQgY2xvY2sgY3ljbGVzICgzLjElKQ0KKw0KK09u IGF2ZXJhZ2UsIGZvciBvbmUgcmVhbCBzeW1ib2wgbG9va3VwIHRoZXJlIHdl cmUgdHdvIGNhY2hlIGhpdHMgYW5kIHRvdGFsDQordGltZSBzcGVudCBpbiB0 aGUgZHluYW1pYyBsaW5rZXIgZGVjcmVhc2VkIGJ5IDUwJS4NCisNCis9PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09DQorDQorMyBQcmVsaW5rIGRl c2lnbg0KKw0KK1ByZWxpbmsgd2FzIGRlc2lnbmVkIHNvIGFzIHRvIHJlcXVp cmUgYXMgZmV3IEVMRiBleHRlbnNpb25zIGFzIHBvc3NpYmxlLg0KKw0KK0l0 IHNob3VsZCBub3QgYmUgdGllZCB0byBhIHBhcnRpY3VsYXIgYXJjaGl0ZWN0 dXJlLCBidXQgc2hvdWxkIHdvcmsgb24gYWxsIEVMRg0KK2FyY2hpdGVjdHVy ZXMuDQorDQorRHVyaW5nIHByb2dyYW0gc3RhcnR1cCBpdCBzaG91bGQgYXZv aWQgYWxsIHN5bWJvbCBsb29rdXBzIHdoaWNoLCBhcyBoYXMgYmVlbg0KK3No b3duIGFib3ZlLCBhcmUgdmVyeSBleHBlbnNpdmUuDQorDQorSXQgbmVlZHMg dG8gd29yayBpbiBhbiBlbnZpcm9ubWVudCB3aGVyZSBzaGFyZWQgbGlicmFy aWVzIGFuZCBleGVjdXRhYmxlcyBhcmUNCitjaGFuZ2luZyBmcm9tIHRpbWUg dG8gdGltZSwgd2hldGhlciBpdCBpcyBiZWNhdXNlIG9mIHNlY3VyaXR5IHVw ZGF0ZXMgb3INCitmZWF0dXJlIGVuaGFuY2VtZW50cy4NCisNCitJdCBzaG91 bGQgYXZvaWQgYmlnIGNvZGUgZHVwbGljYXRpb24gYmV0d2VlbiB0aGUgZHlu YW1pYyBsaW5rZXIgYW5kIHRoZQ0KK3Rvb2wuDQorDQorQW5kIHByZWxpbmtl ZCBzaGFyZWQgbGlicmFyaWVzIG5lZWQgdG8gYmUgdXNhYmxlIGV2ZW4gaW4g bm9uLXByZWxpbmtlZA0KK2V4ZWN1dGFibGVzLCBvciB3aGVuIG9uZSBvZiB0 aGUgc2hhcmVkIGxpYnJhcmllcyBpcyB1cGdyYWRlZCBhbmQgdGhlDQorcHJl bGlua2luZyBvZiB0aGUgZXhlY3V0YWJsZSBoYXMgbm90IGJlZW4gdXBkYXRl ZC4NCisNCitUbyBtaW5pbWl6ZSB0aGUgbnVtYmVyIG9mIHBlcmZvcm1lZCBy ZWxvY2F0aW9ucyBkdXJpbmcgc3RhcnR1cCwgdGhlIHNoYXJlZA0KK2xpYnJh cmllcyAoYW5kIGV4ZWN1dGFibGVzKSBuZWVkIHRvIGJlIHJlbG9jYXRlZCBh bHJlYWR5IGFzIG11Y2ggYXMNCitwb3NzaWJsZS4NCisNCitGb3IgcmVsYXRp dmUgcmVsb2NhdGlvbnMgdGhpcyBtZWFucyB0aGUgbGlicmFyeSBuZWVkcyB0 byBiZSBsb2FkZWQgYWx3YXlzIGF0DQordGhlIHNhbWUgYmFzZSBhZGRyZXNz LCBmb3Igb3RoZXIgcmVsb2NhdGlvbnMgdGhpcyBtZWFucyBhbGwgc2hhcmVk IGxpYnJhcmllcw0KK3dpdGggZGVmaW5pdGlvbnMgdGhvc2UgcmVsb2NhdGlv bnMgcmVzb2x2ZSB0byAob2Z0ZW4gdGhpcyBpbmNsdWRlcyBhbGwgc2hhcmVk DQorbGlicmFyaWVzIHRoZSBsaWJyYXJ5IG9yIGV4ZWN1dGFibGUgZGVwZW5k cyBvbikgbXVzdCBhbHdheXMgYmUgbG9hZGVkIGF0IHRoZQ0KK3NhbWUgYWRk cmVzc2VzLg0KKw0KK0VMRiBleGVjdXRhYmxlcyAod2l0aCB0aGUgZXhjZXB0 aW9uIG9mIFBvc2l0aW9uIEluZGVwZW5kZW50IEV4ZWN1dGFibGVzKSBoYXZl DQordGhlaXIgbG9hZCBhZGRyZXNzIGZpeGVkIGFscmVhZHkgZHVyaW5nIGxp bmtpbmcuDQorDQorRm9yIHNoYXJlZCBsaWJyYXJpZXMsIHByZWxpbmsgbmVl ZHMgc29tZXRoaW5nIHNpbWlsYXIgdG8gYS5vdXQgcmVnaXN0cnkgb2YNCit2 aXJ0dWFsIGFkZHJlc3Mgc3BhY2Ugc2xvdHMuDQorDQorTWFpbnRhaW5pbmcg c3VjaCByZWdpc3RyeSBhY3Jvc3MgYWxsIGluc3RhbGxhdGlvbnMgd291bGRu 4oCZdCBzY2FsZSB3ZWxsIHNvDQorcHJlbGluayBpbnN0ZWFkIGFzc2lnbnMg dGhlc2UgdmlydHVhbCBhZGRyZXNzIHNwYWNlIHNsb3RzIG9uIHRoZSBmbHkg YWZ0ZXINCitsb29raW5nIGF0IGFsbCBleGVjdXRhYmxlcyBpdCBpcyBzdXBw b3NlZCB0byBzcGVlZCB1cCBhbmQgYWxsIHRoZWlyIGRlcGVuZGVudA0KK3No YXJlZCBsaWJyYXJpZXMuDQorDQorVGhlIG5leHQgc3RlcCBpcyB0byBhY3R1 YWxseSByZWxvY2F0ZSBzaGFyZWQgbGlicmFyaWVzIHRvIHRoZSBhc3NpZ25l ZCBiYXNlDQorYWRkcmVzcy4gV2hlbiB0aGlzIGlzIGRvbmUsIHRoZSBhY3R1 YWwgcHJlbGlua2luZyBvZiBzaGFyZWQgbGlicmFyaWVzIGNhbiBiZQ0KK2Rv bmUuDQorDQorRmlyc3QsIGFsbCBkZXBlbmRlbnQgc2hhcmVkIGxpYnJhcmll cyBuZWVkIHRvIGJlIHByZWxpbmtlZCAocHJlbGluayBkb2VzbuKAmXQNCitz dXBwb3J0IGNpcmN1bGFyIGRlcGVuZGVuY2llcyBiZXR3ZWVuIHNoYXJlZCBs aWJyYXJpZXMsIHdpbGwganVzdCB3YXJuIGFib3V0DQordGhlbSBpbnN0ZWFk IG9mIHByZWxpbmtpbmcgdGhlIGxpYnJhcmllcyBpbiB0aGUgY3ljbGUpLg0K Kw0KK1RoZW4gZm9yIGVhY2ggcmVsb2NhdGlvbiBpbiB0aGUgc2hhcmVkIGxp YnJhcnkgcHJlbGluayBuZWVkcyB0byBsb29rIHVwIHRoZQ0KK3N5bWJvbCBp biBuYXR1cmFsIHN5bWJvbCBzZWFyY2ggc2NvcGUgb2YgdGhlIHNoYXJlZCBs aWJyYXJ5ICh0aGUgc2hhcmVkDQorbGlicmFyeSBpdHNlbGYgZmlyc3QsIHRo ZW4gYnJlYWR0aCBmaXJzdCBzZWFyY2ggb2YgYWxsIGRlcGVuZGVudCBzaGFy ZWQNCitsaWJyYXJpZXMpIGFuZCBhcHBseSB0aGUgcmVsb2NhdGlvbiB0byB0 aGUgc3ltYm9s4oCZcyB0YXJnZXQgc2VjdGlvbi4NCisNCitUaGUgc3ltYm9s IGxvb2t1cCBjb2RlIGluIHRoZSBkeW5hbWljIGxpbmtlciBpcyBxdWl0ZSBj b21wbGV4IGFuZCBiaWcsIHNvIHRvDQorYXZvaWQgZHVwbGljYXRpbmcgYWxs IHRoaXMsIHByZWxpbmsgaGFzIGNob3NlbiB0byB1c2UgZHluYW1pYyBsaW5r ZXIgdG8gZG8gdGhlDQorc3ltYm9sIGxvb2t1cHMuDQorDQorRHluYW1pYyBs aW5rZXIgaXMgdG9sZCB2aWEgYSBzcGVjaWFsIGVudmlyb25tZW50IHZhcmlh YmxlIGl0IHNob3VsZCBwcmludCBhbGwNCitwZXJmb3JtZWQgc3ltYm9sIGxv b2t1cHMgYW5kIHRoZWlyIHR5cGUgYW5kIHByZWxpbmsgcmVhZHMgdGhpcyBv dXRwdXQgdGhyb3VnaA0KK2EgcGlwZS4NCisNCitBcyBvbmUgb2YgdGhlIHJl cXVpcmVtZW50cyB3YXMgdGhhdCBwcmVsaW5rZWQgc2hhcmVkIGxpYnJhcmll cyBtdXN0IGJlIHVzYWJsZQ0KK2V2ZW4gZm9yIG5vbi1wcmVsaW5rZWQgZXhl Y3V0YWJsZXMgKGR1cGxpY2F0aW5nIGFsbCBzaGFyZWQgbGlicmFyaWVzIHNv IHRoYXQNCit0aGVyZSBhcmUgcHJpc3RpbmUgYW5kIHByZWxpbmtlZCBjb3Bp ZXMgd291bGQgYmUgdmVyeSB1bmZyaWVuZGx5IHRvIFJBTQ0KK3VzYWdlKSwg cHJlbGluayBoYXMgdG8gZW5zdXJlIHRoYXQgYnkgYXBwbHlpbmcgdGhlIHJl bG9jYXRpb24gbm8gaW5mb3JtYXRpb24NCitpcyBsb3N0IGFuZCB0aHVzIHJl bG9jYXRpb24gcHJvY2Vzc2luZyBjYW4gYmUgY2hlYXBseSBkb25lIGF0IHN0 YXJ0dXAgdGltZSBvZg0KK25vbi1wcmVsaW5rZWQgZXhlY3V0YWJsZXMuDQor DQorRm9yIFJFTEEgYXJjaGl0ZWN0dXJlcyB0aGlzIGlzIGVhc2llciwgYmVj YXVzZSB0aGUgY29udGVudCBvZiB0aGUgcmVsb2NhdGlvbuKAmXMNCit0YXJn ZXQgbWVtb3J5IGlzIG5vdCBuZWVkZWQgd2hlbiBwcm9jZXNzaW5nIHRoZSBy ZWxvY2F0aW9uLg0KK1sgUmVsYXRpdmUgcmVsb2NhdGlvbnMgb24gY2VydGFp biBSRUxBIGFyY2hpdGVjdHVyZXMgdXNlIHJlbG9jYXRpb24gdGFyZ2V04oCZ cw0KKyAgbWVtb3J5LCBlaXRoZXIgYWxvbmUgb3IgdG9nZXRoZXIgd2l0aCBy X2FkZGVuZCBmaWVsZC4gXQ0KKw0KK0ZvciBSRUwgYXJjaGl0ZWN0dXJlcyB0 aGlzIGlzIG5vdCB0aGUgY2FzZS4gcHJlbGluayBhdHRlbXB0cyBzb21lIHRy aWNrcw0KK2Rlc2NyaWJlZCBsYXRlciBhbmQgaWYgdGhleSBmYWlsLCBuZWVk cyB0byBjb252ZXJ0IHRoZSBSRUwgcmVsb2NhdGlvbiBzZWN0aW9uDQordG8g UkVMQSBmb3JtYXQgd2hlcmUgYWRkZW5kIGlzIHN0b3JlZCBpbiB0aGUgcmVs b2NhdGlvbiBzZWN0aW9uIGluc3RlYWQgb2YNCityZWxvY2F0aW9uIHRhcmdl dOKAmXMgbWVtb3J5Lg0KKw0KK1doZW4gYWxsIHNoYXJlZCBsaWJyYXJpZXMg YW4gZXhlY3V0YWJsZSAoZGlyZWN0bHkgb3IgaW5kaXJlY3RseSkgZGVwZW5k cyBvbg0KK2FyZSBwcmVsaW5rZWQsIHJlbG9jYXRpb25zIGluIHRoZSBleGVj dXRhYmxlIGFyZSBoYW5kbGVkIHNpbWlsYXJseSB0bw0KK3JlbG9jYXRpb25z IGluIHNoYXJlZCBsaWJyYXJpZXMuDQorDQorVW5mb3J0dW5hdGVseSwgbm90 IGFsbCBzeW1ib2xzIHJlc29sdmUgdGhlIHNhbWUgd2hlbiBsb29rZWQgdXAg aW4gYSBzaGFyZWQNCitsaWJyYXJ54oCZcyBuYXR1cmFsIHN5bWJvbCBzZWFy Y2ggc2NvcGUgKGkuZS4gYXMgaXQgaXMgZG9uZSBhdCB0aGUgdGltZSB0aGUN CitzaGFyZWQgbGlicmFyeSBpcyBwcmVsaW5rZWQpIGFuZCB3aGVuIGxvb2tl ZCB1cCBpbiBhcHBsaWNhdGlvbuKAmXMgZ2xvYmFsIHN5bWJvbA0KK3NlYXJj aCBzY29wZS4NCisNCitTdWNoIHN5bWJvbHMgYXJlIGhlcmVpbiBjYWxsZWQg Y29uZmxpY3RzIGFuZCB0aGUgcmVsb2NhdGlvbnMgYWdhaW5zdCB0aG9zZQ0K K3N5bWJvbHMgY29uZmxpY3RpbmcgcmVsb2NhdGlvbnMuIENvbmZsaWN0cyBk ZXBlbmQgb24gdGhlIGV4ZWN1dGFibGUsIGFsbCBpdHMNCitzaGFyZWQgbGli cmFyaWVzIGFuZCB0aGVpciByZXNwZWN0aXZlIG9yZGVyLg0KKw0KK1RoZXkg YXJlIG9ubHkgY29tcHV0YWJsZSBmb3IgdGhlIHNoYXJlZCBsaWJyYXJpZXMg bGlua2VkIHRvIHRoZSBleGVjdXRhYmxlDQorKGxpYnJhcmllcyBtZW50aW9u ZWQgaW4gRFRfTkVFREVEIGR5bmFtaWMgdGFncyBhbmQgc2hhcmVkIGxpYnJh cmllcyB0aGV5DQordHJhbnNpdGl2ZWx5IG5lZWQpLg0KKw0KK1RoZSBzZXQg b2Ygc2hhcmVkIGxpYnJhcmllcyBsb2FkZWQgdmlhIGRsb3BlbigzKSBjYW5u b3QgYmUgcHJlZGljdGVkIGJ5DQorcHJlbGluaywgbmVpdGhlciBjYW4gdGhl IG9yZGVyIGluIHdoaWNoIHRoaXMgaGFwcGVuZWQsIG5vciB0aGUgdGltZSB3 aGVuIHRoZXkNCithcmUgdW5sb2FkZWQuDQorDQorV2hlbiB0aGUgZHluYW1p YyBsaW5rZXIgcHJpbnRzIHN5bWJvbCBsb29rdXBzIGRvbmUgaW4gdGhlIGV4 ZWN1dGFibGUsIGl0IGFsc28NCitwcmludHMgY29uZmxpY3RzLiBQcmVsaW5r IHRoZW4gdGFrZXMgYWxsIHJlbG9jYXRpb25zIGFnYWluc3QgdGhvc2Ugc3lt Ym9scyBhbmQNCitidWlsZHMgYSBzcGVjaWFsIFJFTEEgc2VjdGlvbiB3aXRo IGNvbmZsaWN0IGZpeHVwcyBhbmQgc3RvcmVzIGl0IGludG8gdGhlDQorcHJl bGlua2VkIGV4ZWN1dGFibGUuDQorDQorQWxzbyBhIGxpc3Qgb2YgYWxsIGRl cGVuZGVudCBzaGFyZWQgbGlicmFyaWVzIGluIHRoZSBvcmRlciB0aGV5IGFw cGVhciBpbiB0aGUNCitzeW1ib2wgc2VhcmNoIHNjb3BlLCB0b2dldGhlciB3 aXRoIHRoZWlyIGNoZWNrc3VtcyBhbmQgdGltZXMgb2YgcHJlbGlua2luZyBp cw0KK3N0b3JlZCBpbiBhbm90aGVyIHNwZWNpYWwgc2VjdGlvbi4NCisNCitU aGUgZHluYW1pYyBsaW5rZXIgZmlyc3QgY2hlY2tzIGlmIGl0IGlzIGl0c2Vs ZiBwcmVsaW5rZWQuIElmIHllcywgaXQgY2FuDQorYXZvaWQgaXRzIHByZWxp bWluYXJ5IHJlbG9jYXRpb24gcHJvY2Vzc2luZyAodGhpcyBvbmUgaXMgZG9u ZSB3aXRoIGp1c3QgdGhlDQorZHluYW1pYyBsaW5rZXIgaXRzZWxmIGluIHRo ZSBzZWFyY2ggc2NvcGUsIHNvIHRoYXQgYWxsIHJvdXRpbmVzIGluIHRoZSBk eW5hbWljDQorbGlua2VyIGNhbiBiZSB1c2VkIGVhc2lseSB3aXRob3V0IHRv byBtYW55IGxpbWl0YXRpb25zKS4NCisNCitXaGVuIGl0IGlzIGFib3V0IHRv IHN0YXJ0IGEgcHJvZ3JhbSwgaXQgZmlyc3QgbG9va3MgYXQgdGhlIGxpYnJh cnkgbGlzdA0KK3NlY3Rpb24gY3JlYXRlZCBieSBwcmVsaW5rIChpZiBhbnkp IGFuZCBjaGVja3Mgd2hldGhlciB0aGV5IGFyZSBwcmVzZW50IGluDQorc3lt Ym9sIHNlYXJjaCBzY29wZSBpbiB0aGUgc2FtZSBvcmRlciwgbm9uZSBoYXZl IGJlZW4gbW9kaWZpZWQgc2luY2UNCitwcmVsaW5raW5nIGFuZCB0aGF0IHRo ZXJlIGFyZW7igJl0IGFueSBuZXcgc2hhcmVkIGxpYnJhcmllcyBsb2FkZWQg ZWl0aGVyLg0KKw0KK0lmIGFsbCB0aGVzZSBjb25kaXRpb25zIGFyZSBzYXRp c2ZpZWQsIHByZWxpbmtpbmcgY2FuIGJlIHVzZWQuIEluIHRoYXQgY2FzZQ0K K3RoZSBkeW5hbWljIGxpbmtlciBwcm9jZXNzZXMgdGhlIGZpeHVwIHNlY3Rp b24gYW5kIHNraXBzIGFsbCBub3JtYWwgcmVsb2NhdGlvbg0KK2hhbmRsaW5n LiBJZiBvbmUgb3IgbW9yZSBvZiB0aGUgY29uZGl0aW9ucyBhcmUgbm90IG1l dCwgdGhlIGR5bmFtaWMgbGlua2VyDQorY29udGludWVzIHdpdGggbm9ybWFs IHJlbG9jYXRpb24gcHJvY2Vzc2luZyBpbiB0aGUgZXhlY3V0YWJsZSBhbmQg YWxsIHNoYXJlZA0KK2xpYnJhcmllcy4NCisNCis9PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09DQorDQorNCBDb2xsZWN0aW5nIGV4ZWN1dGFibGVz IGFuZCBsaWJyYXJpZXMgd2hpY2ggc2hvdWxkIGJlIHByZWxpbmtlZA0KKw0K K0JlZm9yZSB0aGUgYWN0dWFsIHdvcmsgY2FuIHN0YXJ0IHRoZSBwcmVsaW5r IHRvb2wgbmVlZHMgdG8gY29sbGVjdCB0aGUNCitmaWxlbmFtZXMgb2YgZXhl Y3V0YWJsZXMgYW5kIGxpYnJhcmllcyBpdCBpcyBzdXBwb3NlZCB0byBwcmVs aW5rLiBJdCBkb2VzbuKAmXQNCittYWtlIGFueSBzZW5zZSB0byBwcmVsaW5r IGEgc2hhcmVkIGxpYnJhcnkgaWYgbm8gZXhlY3V0YWJsZSBpcyBsaW5rZWQg YWdhaW5zdA0KK2l0IGJlY2F1c2UgdGhlIHByZWxpbmtpbmcgaW5mb3JtYXRp b24gd2lsbCBub3QgYmUgdXNlZCBhbnl3YXkuDQorDQorRnVydGhlcm1vcmUs IHdoZW4gcHJlbGluayBuZWVkcyB0byBkbyBhIFJFTCB0byBSRUxBIGNvbnZl cnNpb24gb2YgcmVsb2NhdGlvbg0KK3NlY3Rpb25zIGluIHRoZSBzaGFyZWQg bGlicmFyeSAoc2VlIGxhdGVyKSBvciB3aGVuIGl0IG5lZWRzIHRvIGNvbnZl cnQNCitTSFRfTk9CSVRTIFBMVCBzZWN0aW9uIHRvIFNIVF9QUk9HQklUUywg YSBwcmVsaW5rZWQgc2hhcmVkIGxpYnJhcnkgbWlnaHQgZ3Jvdw0KK2luIHNp emUgYW5kIHNvIHByZWxpbmtpbmcgaXMgb25seSBkZXNpcmFibGUgaWYgaXQg d2lsbCBzcGVlZCB1cCBzdGFydHVwIG9mDQorc29tZSBwcm9ncmFtLg0KKw0K K1RoZSBvbmx5IGNoYW5nZSB3aGljaCBtaWdodCBiZSB1c2VmdWwgZXZlbiBm b3Igc2hhcmVkIGxpYnJhcmllcyB3aGljaCBhcmUNCituZXZlciBsaW5rZWQg YWdhaW5zdCwgb25seSBsb2FkZWQgdXNpbmcgZGxvcGVuLCBpcyByZWxvY2F0 aW5nIHRvIGEgdW5pcXVlDQorYWRkcmVzcy4gVGhpcyBpcyB1c2VmdWwgaWYg dGhlcmUgYXJlIG1hbnkgcmVsYXRpdmUgcmVsb2NhdGlvbnMgYW5kIHRoZXJl IGFyZQ0KK3BhZ2VzIGluIHRoZSBzaGFyZWQgbGlicmFyeeKAmXMgd3JpdGFi bGUgc2VnbWVudCB3aGljaCBhcmUgbmV2ZXIgd3JpdHRlbiBpbnRvDQord2l0 aCB0aGUgZXhjZXB0aW9uIG9mIHRob3NlIHJlbGF0aXZlIHJlbG9jYXRpb25z Lg0KKw0KK1N1Y2ggc2hhcmVkIGxpYnJhcmllcyBhcmUgcmFyZSwgc28gcHJl bGluayBkb2VzbuKAmXQgaGFuZGxlIHRoZXNlIGF1dG9tYXRpY2FsbHksDQor aW5zdGVhZCB0aGUgYWRtaW5pc3RyYXRvciBvciBkZXZlbG9wZXIgY2FuIHVz ZSBwcmVsaW5rIOKAk3JlbG9jLW9ubHk9QUREUkVTUyB0bw0KK3JlbG9jYXRl IGl0IG1hbnVhbGx5Lg0KKw0KK1ByZWxpbmtpbmcgYW4gZXhlY3V0YWJsZSBy ZXF1aXJlcyBhbGwgc2hhcmVkIGxpYnJhcmllcyBpdCBpcyBsaW5rZWQgYWdh aW5zdA0KK3RvIGJlIHByZWxpbmtlZCBhbHJlYWR5LiBQcmVsaW5rIGhhcyB0 d28gbWFpbiBtb2RlcyBpbiB3aGljaCBpdCBjb2xsZWN0cw0KK2ZpbGVuYW1l cy4NCisNCitPbmUgaXMgaW5jcmVtZW50YWwgcHJlbGlua2luZywgd2hlcmUg cHJlbGluayBpcyBpbnZva2VkIHdpdGhvdXQgdGhlIC1hIG9wdGlvbi4NCisN CitJbiB0aGlzIG1vZGUsIHByZWxpbmsgcXVldWVzIGZvciBwcmVsaW5raW5n IGFsbCBleGVjdXRhYmxlcyBhbmQgc2hhcmVkDQorbGlicmFyaWVzIGdpdmVu IG9uIHRoZSBjb21tYW5kIGxpbmUsIGFsbCBleGVjdXRhYmxlcyBpbiBkaXJl Y3RvcnkgdHJlZXMNCitzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZSwg YW5kIGFsbCBzaGFyZWQgbGlicmFyaWVzIHRob3NlIGV4ZWN1dGFibGVzIGFu ZA0KK3NoYXJlZCBsaWJyYXJpZXMgYXJlIGxpbmtlZCBhZ2FpbnN0Lg0KKw0K K0ZvciB0aGUgcmVhc29ucyBtZW50aW9uZWQgZWFybGllciBhIHNoYXJlZCBs aWJyYXJ5IGlzIHF1ZXVlZCBvbmx5IGlmIGEgcHJvZ3JhbQ0KK2lzIGxpbmtl ZCB3aXRoIGl0IG9yIHRoZSB1c2VyIHRlbGxzIHRoZSB0b29sIHRvIGRvIGl0 IGFueXdheSBieSBleHBsaWNpdGx5DQorbWVudGlvbmluZyBpdCBvbiB0aGUg Y29tbWFuZCBsaW5lLg0KKw0KK1RoZSBzZWNvbmQgbW9kZSBpcyBmdWxsIHBy ZWxpbmtpbmcsIHdoZXJlIHRoZSAtYSBvcHRpb24gaXMgZ2l2ZW4gb24gdGhl DQorY29tbWFuZCBsaW5lLg0KKw0KK1RoaXMgaW4gYWRkaXRpb24gdG8gaW5j cmVtZW50YWwgcHJlbGlua2luZyBxdWV1ZXMgYWxsIGV4ZWN1dGFibGVzIGZv dW5kIGluDQorZGlyZWN0b3J5IHRyZWVzIHNwZWNpZmllZCBpbiBwcmVsaW5r LmNvbmYgKHdoaWNoIHR5cGljYWxseSBpbmNsdWRlcyBhbGwgb3INCittb3N0 IGRpcmVjdG9yaWVzIHdoZXJlIHN5c3RlbSBleGVjdXRhYmxlcyBhcmUgZm91 bmQpLg0KKw0KK0ZvciBlYWNoIGRpcmVjdG9yeSBzdWJ0cmVlIGluIHRoZSBj b25maWcgZmlsZSB0aGUgdXNlciBjYW4gc3BlY2lmeSB3aGV0aGVyDQorc3lt Ym9saWMgbGlua3MgdG8gcGxhY2VzIG91dHNpZGUgb2YgdGhlIHRyZWUgYXJl IHRvIGJlIGZvbGxvd2VkIG9yIG5vdCBhbmQNCit3aGV0aGVyIHNlYXJjaGlu ZyBzaG91bGQgY29udGludWUgZXZlbiBhY3Jvc3MgZmlsZXN5c3RlbSBib3Vu ZGFyaWVzLg0KKw0KK1RoZXJlIGlzIGFsc28gYW4gb3B0aW9uIHRvIGJsYWNr bGlzdCBzb21lIGV4ZWN1dGFibGVzIG9yIGRpcmVjdG9yeSB0cmVlcyBzbw0K K3RoYXQgdGhlIGV4ZWN1dGFibGVzIG9yIGFueXRoaW5nIGluIHRoZSBkaXJl Y3RvcnkgdHJlZXMgd2lsbCBub3QgYmUgcHJlbGlua2VkLg0KK1RoaXMgY2Fu IGJlIHNwZWNpZmllZCBlaXRoZXIgb24gdGhlIGNvbW1hbmQgbGluZSBvciBp biB0aGUgY29uZmlnIGZpbGUuDQorDQorUHJlbGluayB3aWxsIG5vdCBhdHRl bXB0IHRvIGNoYW5nZSBleGVjdXRhYmxlcyB3aGljaCB1c2UgYSBub24tc3Rh bmRhcmQNCitkeW5hbWljIGxpbmtlciBmb3Igc2VjdXJpdHkgcmVhc29ucywg YmVjYXVzZSBpdCBhY3R1YWxseSBuZWVkcyB0byBleGVjdXRlDQordGhlIGR5 bmFtaWMgbGlua2VyIGZvciBzeW1ib2wgbG9va3VwIGFuZCBpdCBuZWVkcyB0 byBhdm9pZCBleGVjdXRpbmcgc29tZQ0KK3JhbmRvbSB1bmtub3duIGV4ZWN1 dGFibGUgd2l0aCB0aGUgcGVybWlzc2lvbnMgd2l0aCB3aGljaCBwcmVsaW5r IGlzIHJ1bg0KKyh0eXBpY2FsbHkgcm9vdCwgd2l0aCB0aGUgcGVybWlzc2lv bnMgYXQgbGVhc3QgZm9yIGNoYW5naW5nIGFsbCBleGVjdXRhYmxlcw0KK2Fu ZCBzaGFyZWQgbGlicmFyaWVzIGluIHRoZSBzeXN0ZW0pLg0KKw0KK1sgU3Rh bmRhcmQgZHluYW1pYyBsaW5rZXIgcGF0aCBpcyBoYXJkY29kZWQgaW4gdGhl IGV4ZWN1dGFibGUgZm9yIGVhY2gNCisgIGFyY2hpdGVjdHVyZS4gSXQgY2Fu IGJlIG92ZXJyaWRkZW4gZnJvbSB0aGUgY29tbWFuZCBsaW5lLCBidXQgb25s eSB3aXRoDQorICBvbmUgZHluYW1pYyBsaW5rZXIgbmFtZSAobm9ybWFsbHks IG11bHRpcGxlIHN0YW5kYXJkIGR5bmFtaWMgbGlua2VycyBhcmUNCisgIHVz ZWQgd2hlbiBwcmVsaW5raW5nIG1peGVkIGFyY2hpdGVjdHVyZSBzeXN0ZW1z KS4gXQ0KKw0KK1RoZSBhZG1pbmlzdHJhdG9yIHNob3VsZCBlbnN1cmUgdGhh dCBwcmVsaW5rLmNvbmYgZG9lc27igJl0IGNvbnRhaW4NCit3b3JsZC13cml0 YWJsZSBkaXJlY3RvcmllcyBhbmQgc3VjaCBkaXJlY3RvcmllcyBhcmUgbm90 IGdpdmVuIHRvIHRoZSB0b29sIG9uDQordGhlIGNvbW1hbmQgbGluZSBlaXRo ZXIsIGJ1dCB0aGUgdG9vbCBzaG91bGQgYmUgZGlzdHJ1c3RmdWwgb2YgdGhl IG9iamVjdHMNCituZXZlcnRoZWxlc3MuDQorDQorQWxzbywgcHJlbGluayB3 aWxsIG5vdCBjaGFuZ2Ugc2hhcmVkIGxpYnJhcmllcyB3aGljaCBhcmUgbm90 IHNwZWNpZmllZA0KK2RpcmVjdGx5IG9uIHRoZSBjb21tYW5kIGxpbmUgb3Ig bG9jYXRlZCBpbiB0aGUgZGlyZWN0b3J5IHRyZWVzIHNwZWNpZmllZCBvbg0K K3RoZSBjb21tYW5kIGxpbmUgb3IgaW4gdGhlIGNvbmZpZyBmaWxlLiBUaGlz IGlzIHNvIHRoYXQgZS5nLiBwcmVsaW5rIGRvZXNu4oCZdA0KK3RyeSB0byBj aGFuZ2Ugc2hhcmVkIGxpYnJhcmllcyBvbiBzaGFyZWQgbmV0d29ya2VkIGZp bGVzeXN0ZW1zLCBvciBhdCBsZWFzdCBpdA0KK2lzIHBvc3NpYmxlIHRvIGNv bmZpZ3VyZSB0aGUgdG9vbCBzbyB0aGF0IGl0IGRvZXNu4oCZdCBkbyBpdC4N CisNCitGb3IgZWFjaCBleGVjdXRhYmxlIGFuZCBzaGFyZWQgbGlicmFyeSBp dCBjb2xsZWN0cywgcHJlbGluayBleGVjdXRlcyB0aGUNCitkeW5hbWljIGxp bmtlciB0byBsaXN0IGFsbCBzaGFyZWQgbGlicmFyaWVzIGl0IGRlcGVuZHMg b24sIGNoZWNrcyBpZiBpdCBpcw0KK2FscmVhZHkgcHJlbGlua2VkIGFuZCB3 aGV0aGVyIGFueSBvZiBpdHMgZGVwZW5kZW5jaWVzIGNoYW5nZWQuDQorDQor T2JqZWN0cyB3aGljaCBhcmUgYWxyZWFkeSBwcmVsaW5rZWQgYW5kIGhhdmUg bm8gZGVwZW5kZW5jaWVzIHdoaWNoIGNoYW5nZWQNCitkb27igJl0IGhhdmUg dG8gYmUgcHJlbGlua2VkIGFnYWluICh3aXRoIHRoZSBleGNlcHRpb24gd2hl biBlLmcuIHZpcnR1YWwgYWRkcmVzcw0KK3NwYWNlIGxheW91dCBjb2RlIGZp bmRzIG91dCBpdCBuZWVkcyB0byBhc3NpZ24gbmV3IHZpcnR1YWwgYWRkcmVz cyBzcGFjZSBzbG90cw0KK2ZvciB0aGUgc2hhcmVkIGxpYnJhcnkgb3Igb25l IG9mIGl0cyBkZXBlbmRlbmNpZXMpLg0KKw0KK1J1bm5pbmcgdGhlIGR5bmFt aWMgbGlua2VyIHRvIGdldCB0aGUgc3ltYm9sIGxvb2t1cCBpbmZvcm1hdGlv biBpcyBhIHF1aXRlDQorY29zdGx5IG9wZXJhdGlvbiBlc3BlY2lhbGx5IG9u IHN5c3RlbXMgd2l0aCBtYW55IGV4ZWN1dGFibGVzIGFuZCBzaGFyZWQNCits aWJyYXJpZXMgaW5zdGFsbGVkLCBzbyBwcmVsaW5rIG9mZmVycyBhIGZhc3Rl ciAtcSBtb2RlLg0KKw0KK0luIGFsbCBtb2RlcywgcHJlbGluayBzdG9yZXMg bW9kaWZpY2F0aW9uIGFuZCBjaGFuZ2UgdGltZXMgb2YgZWFjaCBzaGFyZWQN CitsaWJyYXJ5IGFuZCBleGVjdXRhYmxlIHRvZ2V0aGVyIHdpdGggYWxsIG9i amVjdCBkZXBlbmRlbmNpZXMgYW5kIG90aGVyDQoraW5mb3JtYXRpb24gaW50 byBwcmVsaW5rLmNhY2hlIGZpbGUuDQorDQorV2hlbiBwcmVsaW5raW5nIGlu IC1xIG1vZGUsIGl0IGp1c3QgY29tcGFyZXMgbW9kaWZpY2F0aW9uIGFuZCBj aGFuZ2UgdGltZXMgb2YNCit0aGUgZXhlY3V0YWJsZXMgYW5kIHNoYXJlZCBs aWJyYXJpZXMgKGFuZCBhbGwgdGhlaXIgZGVwZW5kZW5jaWVzKS4NCisNCitD aGFuZ2UgdGltZSBpcyBuZWVkZWQgYmVjYXVzZSBwcmVsaW5rIHByZXNlcnZl cyBtb2RpZmljYXRpb24gdGltZSB3aGVuDQorcHJlbGlua2luZyAoYXMgd2Vs bCBhcyBwZXJtaXNzaW9ucywgb3duZXIgYW5kIGdyb3VwKS4gSWYgdGhlIHRp bWVzIG1hdGNoLCBpdA0KK2Fzc3VtZXMgdGhlIGZpbGUgaGFzIG5vdCBjaGFu Z2VkIHNpbmNlIGxhc3QgcHJlbGlua2luZy4gVGhlcmVmb3JlIHRoZSBmaWxl IGNhbg0KK2JlIHNraXBwZWQgaWYgaXQgaXMgYWxyZWFkeSBwcmVsaW5rZWQg YW5kIG5vbmUgb2YgdGhlIGRlcGVuZGVuY2llcyBjaGFuZ2VkLg0KKw0KK0lm IGFueSB0aW1lIGNoYW5nZWQgb3Igb25lIG9mIHRoZSBkZXBlbmRlbmNpZXMg Y2hhbmdlZCwgaXQgaW52b2tlcyB0aGUgZHluYW1pYw0KK2xpbmtlciB0aGUg c2FtZSB3YXkgYXMgaW4gbm9ybWFsIG1vZGUgdG8gZmluZCBvdXQgcmVhbCBk ZXBlbmRlbmNpZXMsIHdoZXRoZXINCitpdCBoYXMgYmVlbiBwcmVsaW5rZWQg b3Igbm90IGV0Yy4gVGhlIGNvbGxlY3RpbmcgcGhhc2UgaW4gbm9ybWFsIG1v ZGUgY2FuIHRha2UNCithIGZldyBtaW51dGVzLCB3aGlsZSBpbiBxdWljayBt b2RlIHVzdWFsbHkgdGFrZXMganVzdCBhIGZldyBzZWNvbmRzLCBhcyB0aGUN Citvbmx5IG9wZXJhdGlvbiBpdCBkb2VzIGlzIGl0IGNhbGxzIGp1c3QgbG90 cyBvZiBzdGF0IHN5c3RlbSBjYWxscy4NCisNCis9PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09DQorDQorNSBBc3NpZ25pbmcgdmlydHVhbCBhZGRy ZXNzIHNwYWNlIHNsb3RzDQorDQorUHJlbGluayBoYXMgdG8gZW5zdXJlIGF0 IGxlYXN0IHRoYXQgZm9yIGFsbCBzdWNjZXNzZnVsbHkgcHJlbGlua2VkIGV4 ZWN1dGFibGVzDQorYWxsIHNoYXJlZCBsaWJyYXJpZXMgdGhleSBhcmUgKHRy YW5zaXRpdmVseSkgbGlua2VkIGFnYWluc3QgaGF2ZQ0KK25vbi1vdmVybGFw cGluZyB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2Ugc2xvdHMgKGZ1cnRoZXJtb3Jl IHRoZXkgY2Fubm90IG92ZXJsYXANCit3aXRoIHRoZSB2aXJ0dWFsIGFkZHJl c3Mgc3BhY2UgcmFuZ2UgdXNlZCBieSB0aGUgZXhlY3V0YWJsZSBpdHNlbGYs IGl0cyBicmsNCithcmVhLCB0eXBpY2FsIHN0YWNrIGxvY2F0aW9uIGFuZCBs ZC5zby5jYWNoZSBhbmQgb3RoZXIgZmlsZXMgbW1hcGVkIGJ5IHRoZQ0KK2R5 bmFtaWMgbGlua2VyIGluIGVhcmx5IHN0YWdlcyBvZiBkeW5hbWljIGxpbmtp bmcgKGJlZm9yZSBhbGwgZGVwZW5kZW5jaWVzIGFyZQ0KK21tYXBlZCkuDQor DQorSWYgdGhlcmUgd2VyZSBhbnkgb3ZlcmxhcHMsIHRoZSBkeW5hbWljIGxp bmtlciAod2hpY2ggbW1hcHMgdGhlIHNoYXJlZA0KK2xpYnJhcmllcyBhdCB0 aGUgZGVzaXJlZCBsb2NhdGlvbiB3aXRob3V0IE1BUF9GSVhFRCBtbWFwIGZs YWcgc28gdGhhdCBpdCBpcw0KK29ubHkgc29mdCByZXF1aXJlbWVudCkgd291 bGQgbm90IG1hbmFnZSB0byBtbWFwIHRoZW0gYXQgdGhlIGFzc2lnbmVkIGxv Y2F0aW9ucw0KK2FuZCB0aGUgcHJlbGlua2luZyBpbmZvcm1hdGlvbiB3b3Vs ZCBiZSBpbnZhbGlkYXRlZCAodGhlIGR5bmFtaWMgbGlua2VyIHdvdWxkDQor aGF2ZSB0byBkbyBhbGwgbm9ybWFsIHJlbG9jYXRpb24gaGFuZGxpbmcgYW5k IHN5bWJvbCBsb29rdXBzKS4NCisNCitFeGVjdXRhYmxlcyBhcmUgbGlua2Vk IGFnYWluc3QgdmVyeSB3aWRlIHZhcmlldHkgb2Ygc2hhcmVkIGxpYnJhcnkN Citjb21iaW5hdGlvbnMgYW5kIHRoYXQgaGFzIHRvIGJlIHRha2VuIGludG8g YWNjb3VudC4NCisNCitUaGUgc2ltcGxlc3QgYXBwcm9hY2ggaXMgdG8gc29y dCBzaGFyZWQgbGlicmFyaWVzIGJ5IGRlc2NlbmRpbmcgdXNhZ2UgY291bnQN Cisoc28gdGhhdCBtb3N0IG9mdGVuIHVzZWQgc2hhcmVkIGxpYnJhcmllcyBs aWtlIHRoZSBkeW5hbWljIGxpbmtlciwgbGliYy5zbw0KK2V0Yy4gYXJlIGNs b3NlIHRvIGVhY2ggb3RoZXIpIGFuZCBhc3NpZ24gdGhlbSBjb25zZWN1dGl2 ZSBzbG90cyBzdGFydGluZyBhdA0KK3NvbWUgYXJjaGl0ZWN0dXJlIHNwZWNp ZmljIGJhc2UgYWRkcmVzcyAod2l0aCBhIHBhZ2Ugb3IgdHdvIGluIGJldHdl ZW4gdGhlDQorc2hhcmVkIGxpYnJhcmllcyB0byBhbGxvdyBmb3IgYSBsaW1p dGVkIGdyb3d0aCBvZiBzaGFyZWQgbGlicmFyaWVzIHdpdGhvdXQNCitoYXZp bmcgdG8gcmVwb3NpdGlvbiB0aGVtKS4NCisNCitQcmVsaW5rIGhhcyB0byBm aW5kIG91dCB3aGljaCBzaGFyZWQgbGlicmFyaWVzIHdpbGwgbmVlZCBhIFJF TCB0byBSRUxBDQorY29udmVyc2lvbiBvZiByZWxvY2F0aW9uIHNlY3Rpb25z IGFuZCBmb3IgdGhvc2Ugd2hpY2ggd2lsbCBuZWVkIHRoZSBjb252ZXJzaW9u DQorY291bnQgd2l0aCB0aGUgaW5jcmVhc2VkIHNpemUgb2YgdGhlIGxpYnJh cnnigJlzIGxvYWRhYmxlIHNlZ21lbnRzLg0KK1RoaXMgaXMgcHJlbGluayBi ZWhhdmlvciB3aXRob3V0IC1tIGFuZCAtUiBvcHRpb25zLg0KKw0KK1RoZSBh cmNoaXRlY3R1cmUgc3BlY2lmaWMgYmFzZSBhZGRyZXNzIGlzIGJlc3QgbG9j YXRlZCBhIGZldyBtZWdhYnl0ZXMgYWJvdmUNCit0aGUgbG9jYXRpb24gd2hl cmUgbW1hcCB3aXRoIE5VTEwgZmlyc3QgYXJndW1lbnQgYW5kIHdpdGhvdXQg TUFQX0ZJWEVEIHN0YXJ0cw0KK2FsbG9jYXRpbmcgbWVtb3J5IGFyZWFzIChp biBMaW51eCB0aGlzIGlzIHRoZSB2YWx1ZSBvZiBUQVNLX1VOTUFQUEVEX0JB U0UNCittYWNybykuIFRoZSByZWFzb24gZm9yIG5vdCBzdGFydGluZyB0byBh c3NpZ24gYWRkcmVzc2VzIGluIHByZWxpbmsgaW1tZWRpYXRlbHkNCithdCBU QVNLX1VOTUFQUEVEX0JBU0UgaXMgdGhhdCBsZC5zby5jYWNoZSBhbmQgb3Ro ZXIgbWFwcGluZ3MgYnkgdGhlIGR5bmFtaWMNCitsaW5rZXIgd2lsbCBlbmQg dXAgaW4gdGhlIHNhbWUgcmFuZ2UgYW5kIGNvdWxkIG92ZXJsYXAgd2l0aCB0 aGUgc2hhcmVkDQorbGlicmFyaWVzLg0KKw0KK1sgVEFTS19VTk1BUFBFRF9C QVNFIGhhcyBiZWVuIGNob3NlbiBvbiBlYWNoIHBsYXRmb3JtIHNvIHRoYXQg dGhlcmUgaXMgZW5vdWdoDQorICB2aXJ0dWFsIG1lbW9yeSBmb3IgYm90aCB0 aGUgYnJrIGFyZWEgKGJldHdlZW4gZXhlY3V0YWJsZeKAmXMgZW5kIGFuZCB0 aGlzDQorICBtZW1vcnkgYWRkcmVzcykgYW5kIG1tYXAgYXJlYSAoYmV0d2Vl biB0aGlzIGFkZHJlc3MgYW5kIGJvdHRvbSBvZiBzdGFjaykuIF0NCisNCitB bHNvLCBpZiBzb21lIGFwcGxpY2F0aW9uIHVzZXMgZGxvcGVuIHRvIGxvYWQg YSBzaGFyZWQgbGlicmFyeSB3aGljaCBoYXMgYmVlbg0KK3ByZWxpbmtlZCos IHRob3NlIGZldyBtZWdhYnl0ZXMgYWJvdmUgVEFTS19VTk1BUFBFRF9CQVNF IGluY3JlYXNlIHRoZQ0KK3Byb2JhYmlsaXR5IHRoYXQgdGhlIHN0YWNrIHNs b3Qgd2lsbCBiZSBzdGlsbCB1bnVzZWQgKGl0IGNhbiBjbGFzaCB3aXRoIGUu Zy4NCitub24tcHJlbGlua2VkIHNoYXJlZCBsaWJyYXJpZXMgbG9hZGVkIGJ5 IGRsb3BlbiBlYXJsaWVyKiogb3Igb3RoZXIga2luZHMgb2YNCittbWFwIGNh bGxzIHdpdGggTlVMTCBmaXJzdCBhcmd1bWVudCBsaWtlIG1hbGxvYyBhbGxv Y2F0aW5nIGJpZyBjaHVua3Mgb2YNCittZW1vcnksIG1tYXBpbmcgb2YgbG9j YWxlIGRhdGFiYXNlLCBldGMuKS4NCisNCisqIFsgVHlwaWNhbGx5IHRoaXMg aXMgYmVjYXVzZSBzb21lIG90aGVyIGV4ZWN1dGFibGUgaXMgbGlua2VkIGFn YWluc3QNCisgICAgdGhhdCBzaGFyZWQgbGlicmFyeSBkaXJlY3RseS4gXQ0K Kw0KKyoqIFsgSWYgc2hhcmVkIGxpYnJhcmllcyBoYXZlIGZpcnN0IFBUX0xP QUQgc2VnbWVudOKAmXMgdmlydHVhbCBhZGRyZXNzIHplcm8sDQorICAgICB0 aGUga2VybmVsIHR5cGljYWxseSBwaWNrcyBmaXJzdCBlbXB0eSBzbG90IGFi b3ZlIFRBU0tfVU5NQVBQRURfQkFTRQ0KKyAgICAgYmlnIGVub3VnaCBmb3Ig dGhlIG1hcHBpbmcuXQ0KKw0KKw0KK1RoaXMgc2ltcGxlc3QgYXBwcm9hY2gg aXMgdW5mb3J0dW5hdGVseSBwcm9ibGVtYXRpYyBvbiAzMi1iaXQgKG9yIDMx LWJpdCkNCithcmNoaXRlY3R1cmVzIHdoZXJlIHRoZSB0b3RhbCB2aXJ0dWFs IGFkZHJlc3Mgc3BhY2UgZm9yIGEgcHJvY2VzcyBpcyBzb21ld2hlcmUNCiti ZXR3ZWVuIDJHQiAoUy8zOTApIGFuZCBhbG1vc3QgNEdCIChMaW51eCBJQS0z MiA0R0IvNEdCIGtlcm5lbCBzcGxpdCwgQU1ENjQNCitydW5uaW5nIDMyLWJp dCBwcm9jZXNzZXMsIGV0Yy4pLg0KKw0KK1R5cGljYWwgaW5zdGFsbGF0aW9u cyB0aGVzZSBkYXlzIGNvbnRhaW4gdGhvdXNhbmRzIG9mIHNoYXJlZCBsaWJy YXJpZXMgYW5kIGlmDQorZWFjaCBvZiB0aGVtIGlzIGdpdmVuIGEgdW5pcXVl IGFkZHJlc3Mgc3BhY2Ugc2xvdCwgb24gYXZlcmFnZSBleGVjdXRhYmxlcyB3 aWxsDQoraGF2ZSBwcmV0dHkgc3BhcnNlIG1hcHBpbmcgb2YgaXRzIHNoYXJl ZCBsaWJyYXJpZXMgYW5kIHRoZXJlIHdpbGwgYmUgbGVzcw0KK2NvbnRpZ3Vv dXMgdmlydHVhbCBtZW1vcnkgZm9yIGFwcGxpY2F0aW9u4oCZcyBvd24gdXNl Lg0KKw0KK1sgRXNwZWNpYWxseSBkYXRhYmFzZXMgbG9vayB0aGVzZSBkYXlz IGZvciBldmVyeSBieXRlIG9mIHZpcnR1YWwgYWRkcmVzcw0KKyAgc3BhY2Ug b24gMzItYml0IGFyY2hpdGVjdHVyZXMuIF0NCisNCitQcmVsaW5rIGhhcyBh IHNwZWNpYWwgbW9kZSwgdHVybmVkIG9uIHdpdGggLW0gb3B0aW9uLCBpbiB3 aGljaCBpdCBjb21wdXRlcw0KK3doYXQgc2hhcmVkIGxpYnJhcmllcyBhcmUg ZXZlciBsb2FkZWQgdG9nZXRoZXIgaW4gc29tZSBleGVjdXRhYmxlIChub3QN Citjb25zaWRlcmluZyBkbG9wZW4pLg0KKw0KK0lmIHR3byBzaGFyZWQgbGli cmFyaWVzIGFyZSBldmVyIGxvYWRlZCB0b2dldGhlciwgcHJlbGluayBhc3Np Z25zIHRoZW0NCitkaWZmZXJlbnQgdmlydHVhbCBhZGRyZXNzIHNwYWNlIHNs b3RzLCBidXQgaWYgdGhleSBuZXZlciBhcHBlYXIgdG9nZXRoZXIsDQoraXQg Y2FuIGdpdmUgdGhlbSBvdmVybGFwcGluZyBhZGRyZXNzZXMuDQorDQorRm9y IGV4YW1wbGUgYXBwbGljYXRpb25zIHVzaW5nIEtERSB0b29sa2l0IGxpbmsg dHlwaWNhbGx5IGFnYWluc3QgbWFueSBLREUNCitzaGFyZWQgbGlicmFyaWVz LCBwcm9ncmFtcyB3cml0dGVuIHVzaW5nIHRoZSBHdGsrIHRvb2xraXQgbGlu ayB0eXBpY2FsbHkNCithZ2FpbnN0IG1hbnkgR3RrKyBzaGFyZWQgbGlicmFy aWVzLCBidXQgdGhlcmUgYXJlIGp1c3QgdmVyeSBmZXcgcHJvZ3JhbXMgd2hp Y2gNCitsaW5rIGFnYWluc3QgYm90aCBLREUgYW5kIEd0aysgc2hhcmVkIGxp YnJhcmllcywgYW5kIGV2ZW4gaWYgdGhleSBkbywgdGhleQ0KK2xpbmsgYWdh aW5zdCB2ZXJ5IHNtYWxsIHN1YnNldCBvZiB0aG9zZSBzaGFyZWQgbGlicmFy aWVzLg0KKw0KK1NvIGFsbCBLREUgc2hhcmVkIGxpYnJhcmllcyBub3QgaW4g dGhhdCBzdWJzZXQgY2FuIHVzZSBvdmVybGFwcGluZyBhZGRyZXNzZXMNCit3 aXRoIGFsbCBHdGsrIHNoYXJlZCBsaWJyYXJpZXMgYnV0IHRoZSBmZXcgZXhj ZXB0aW9ucy4gVGhpcyBsZWFkcyB0bw0KK2NvbnNpZGVyYWJseSBzbWFsbGVy IHZpcnR1YWwgYWRkcmVzcyBzcGFjZSByYW5nZSB1c2VkIGJ5IGFsbCBwcmVs aW5rZWQgc2hhcmVkDQorbGlicmFyaWVzLCBidXQgaXQgaGFzIGl0cyBvd24g ZGlzYWR2YW50YWdlcyB0b28uDQorDQorSXQgZG9lc27igJl0IHdvcmsgdG9v IHdlbGwgd2l0aCBpbmNyZW1lbnRhbCBwcmVsaW5raW5nLCBiZWNhdXNlIHRo ZW4gbm90IGFsbA0KK2V4ZWN1dGFibGVzIGFyZSBpbnZlc3RpZ2F0ZWQsIGp1 c3QgdGhvc2Ugd2hpY2ggYXJlIGdpdmVuIG9uIHByZWxpbmvigJlzIGNvbW1h bmQNCitsaW5lLiBQcmVsaW5rIGFsc28gY29uc2lkZXJzIGV4ZWN1dGFibGVz IGluIHByZWxpbmsuY2FjaGUsIGJ1dCBpdCBoYXMgbm8NCitpbmZvcm1hdGlv biBhYm91dCBleGVjdXRhYmxlcyB3aGljaCBoYXZlIG5vdCBiZWVuIHByZWxp bmtlZCB5ZXQuIElmIGEgbmV3DQorZXhlY3V0YWJsZSwgd2hpY2ggbGlua3Mg YWdhaW5zdCBzb21lIHNoYXJlZCBsaWJyYXJpZXMgd2hpY2ggbmV2ZXIgYXBw ZWFyZWQNCit0b2dldGhlciBiZWZvcmUsIGlzIHByZWxpbmtlZCBsYXRlciwg cHJlbGluayBoYXMgdG8gYXNzaWduIHRoZW0gbmV3LA0KK25vbi1vdmVybGFw cGluZyBhZGRyZXNzZXMuDQorDQorVGhpcyBtZWFucyB0aGF0IGFueSBleGVj dXRhYmxlcywgd2hpY2ggbGlua2VkIGFnYWluc3QgdGhlIGxpYnJhcnkgdGhh dCBoYXMNCitiZWVuIG1vdmVkIGFuZCByZS1wcmVsaW5rZWQsIG5lZWQgdG8g YmUgcHJlbGlua2VkIGFnYWluLiBJZiB0aGlzIGhhcHBlbmVkDQorZHVyaW5n IGluY3JlbWVudGFsIHByZWxpbmtpbmcsIHByZWxpbmsgd2lsbCBmaXggdXAg b25seSB0aGUgZXhlY3V0YWJsZXMgZ2l2ZW4NCitvbiB0aGUgY29tbWFuZCBs aW5lLCBsZWF2aW5nIG90aGVyIGV4ZWN1dGFibGVzIHVudG91Y2hlZC4gVGhl IHVudG91Y2hlZA0KK2V4ZWN1dGFibGVzIHdvdWxkIG5vdCBiZSBhYmxlIHRv IGJlbmVmaXQgZnJvbSBwcmVsaW5raW5nIGFueW1vcmUuDQorDQorQWx0aG91 Z2ggd2l0aCB0aGUgYWJvdmUgdHdvIGxheW91dCBzY2hlbWVzIHNoYXJlZCBs aWJyYXJ5IGFkZHJlc3NlcyBjYW4gdmFyeQ0KK3NsaWdodGx5IGJldHdlZW4g ZGlmZmVyZW50IGhvc3RzIHJ1bm5pbmcgdGhlIHNhbWUgZGlzdHJpYnV0aW9u IChkZXBlbmRpbmcgb24NCit0aGUgZXhhY3Qgc2V0IG9mIGluc3RhbGxlZCBl eGVjdXRhYmxlcyBhbmQgbGlicmFyaWVzKSwgZXNwZWNpYWxseSB0aGUgbW9z dA0KK29mdGVuIHVzZWQgc2hhcmVkIGxpYnJhcmllcyB3aWxsIGhhdmUgaWRl bnRpY2FsIGJhc2UgYWRkcmVzc2VzIG9uIGRpZmZlcmVudA0KK2NvbXB1dGVy cy4NCisNCitUaGlzIGlzIG9mdGVuIG5vdCBkZXNpcmFibGUgZm9yIHNlY3Vy aXR5IHJlYXNvbnMsIGJlY2F1c2UgaXQgbWFrZXMgaXQgc2xpZ2h0bHkNCitl YXNpZXIgZm9yIHZhcmlvdXMgZXhwbG9pdHMgdG8ganVtcCB0byByb3V0aW5l cyB0aGV5IHdhbnQuIFN0YW5kYXJkIExpbnV4DQora2VybmVscyBhc3NpZ24g YWx3YXlzIHRoZSBzYW1lIGFkZHJlc3NlcyB0byBzaGFyZWQgbGlicmFyaWVz IGxvYWRlZCBieSB0aGUNCithcHBsaWNhdGlvbiBhdCBlYWNoIHJ1biwgc28g d2l0aCB0aGVzZSBrZXJuZWxzIHByZWxpbmsgZG9lc27igJl0IG1ha2UgdGhp bmdzDQord29yc2UuIEJ1dCB0aGVyZSBhcmUga2VybmVsIHBhdGNoZXMsIHN1 Y2ggYXMgUmVkIEhhdOKAmXMgRXhlYy1TaGllbGQsIHdoaWNoDQorcmFuZG9t aXplIG1lbW9yeSBtYXBwaW5ncyBvbiBlYWNoIHJ1bi4NCisNCitJZiBzaGFy ZWQgbGlicmFyaWVzIGFyZSBwcmVsaW5rZWQsIHRoZXkgY2Fubm90IGJlIGFz c2lnbmVkIGRpZmZlcmVudCBhZGRyZXNzZXMNCitvbiBlYWNoIHJ1biAocHJl bGlua2luZyBpbmZvcm1hdGlvbiBjYW4gYmUgb25seSB1c2VkIHRvIHNwZWVk IHVwIHN0YXJ0dXAgaWYNCit0aGV5IGFyZSBtYXBwZWQgYXQgdGhlIGJhc2Ug YWRkcmVzc2VzIHdoaWNoIHdhcyB1c2VkIGR1cmluZyBwcmVsaW5raW5nKSwg d2hpY2gNCittZWFucyBwcmVsaW5raW5nIG1pZ2h0IG5vdCBiZSBkZXNpcmFi bGUgb24gc29tZSBlZGdlIHNlcnZlcnMuDQorDQorUHJlbGluayBjYW4gYXNz aWduIGRpZmZlcmVudCBhZGRyZXNzZXMgb24gZGlmZmVyZW50IGhvc3RzIHRo b3VnaCwgd2hpY2ggaXMNCithbG1vc3QgdGhlIHNhbWUgYXMgYXNzaWduaW5n IHJhbmRvbSBhZGRyZXNzZXMgb24gZWFjaCBydW4gZm9yIGxvbmcgcnVubmlu Zw0KK3Byb2Nlc3NlcyBzdWNoIGFzIGRhZW1vbnMuDQorDQorRnVydGhlcm1v cmUsIHRoZSBhZG1pbmlzdHJhdG9yIGNhbiBmb3JjZSBmdWxsIHByZWxpbmtp bmcgYW5kIGFzc2lnbm1lbnQgb2YgbmV3DQorcmFuZG9tIGFkZHJlc3NlcyBl dmVyeSBmZXcgZGF5cyAoaWYgaGUgaXMgYWxzbyB3aWxsaW5nIHRvIHJlc3Rh cnQgdGhlDQorc2VydmljZXMsIHNvIHRoYXQgdGhlIG9sZCBzaGFyZWQgbGli cmFyaWVzIGFuZCBleGVjdXRhYmxlcyBkb27igJl0IGhhdmUgdG8gYmUNCitr ZXB0IGluIG1lbW9yeSkuDQorDQorVG8gYXNzaWduIHJhbmRvbSBhZGRyZXNz ZXMgcHJlbGluayBoYXMgdGhlIC1SIG9wdGlvbi4gVGhpcyBjYXVzZXMgYSBy YW5kb20NCitzdGFydGluZyBhZGRyZXNzIHNvbWV3aGVyZSBpbiB0aGUgYXJj aGl0ZWN0dXJlIHNwZWNpZmljIHJhbmdlIGluIHdoaWNoIHNoYXJlZA0KK2xp YnJhcmllcyBhcmUgYXNzaWduZWQsIGFuZCBtaW5vciByYW5kb20gcmVzaHVm ZmxpbmcgaW4gdGhlIHF1ZXVlIG9mIHNoYXJlZA0KK2xpYnJhcmllcyB3aGlj aCBuZWVkIGFkZHJlc3MgYXNzaWdubWVudCAobm9ybWFsbHkgaXQgaXMgc29y dGVkIGJ5IGRlc2NlbmRpbmcNCit1c2FnZSBjb3VudCwgd2l0aCByYW5kb21p emF0aW9uIHNoYXJlZCBsaWJyYXJpZXMgd2hpY2ggYXJlIG5vdCB2ZXJ5IGZh ciBhd2F5DQorZnJvbSBlYWNoIG90aGVyIGluIHRoZSBzb3J0ZWQgbGlzdCBj YW4gYmUgc3dhcHBlZCkuDQorDQorVGhlIC1SIG9wdGlvbiBzaG91bGQgd29y ayBvcnRob2dvbmFsbHkgdG8gdGhlIC1tIG9wdGlvbi4gU29tZSBhcmNoaXRl Y3R1cmVzDQoraGF2ZSBzcGVjaWFsIGZ1cnRoZXIgcmVxdWlyZW1lbnRzIG9u IHNoYXJlZCBsaWJyYXJ5IGFkZHJlc3MgYXNzaWdubWVudC4gT24NCiszMi1i aXQgUG93ZXJQQywgaWYgc2hhcmVkIGxpYnJhcmllcyBhcmUgbG9jYXRlZCBj bG9zZSB0byB0aGUgZXhlY3V0YWJsZSwgc28NCit0aGF0IGV2ZXJ5dGhpbmcg Zml0cyBpbnRvIDMyTUIgYXJlYSwNCisNCitQTFQgc2xvdHMgcmVzb2x2aW5n IHRvIHRob3NlIHNoYXJlZCBsaWJyYXJpZXMgY2FuIHVzZSB0aGUgYnJhbmNo IHJlbGF0aXZlDQoraW5zdHJ1Y3Rpb24gaW5zdGVhZCBvZiBtb3JlIGV4cGVu c2l2ZSBzZXF1ZW5jZXMgaW52b2x2aW5nIG1lbW9yeSBsb2FkIGFuZA0KK2lu ZGlyZWN0IGJyYW5jaC4NCisNCitJZiBzaGFyZWQgbGlicmFyaWVzIGFyZSBs b2NhdGVkIGluIHRoZSBmaXJzdCAzMk1CIG9mIGFkZHJlc3Mgc3BhY2UsIFBM VCBzbG90cw0KK3Jlc29sdmluZyB0byB0aG9zZSBzaGFyZWQgbGlicmFyaWVz IGNhbiB1c2UgdGhlIGJyYW5jaCBhYnNvbHV0ZSBpbnN0cnVjdGlvbg0KKyhi dXQgYWxyZWFkeSBQTFQgc2xvdHMgaW4gdGhvc2Ugc2hhcmVkIGxpYnJhcmll cyByZXNvbHZpbmcgdG8gYWRkcmVzc2VzIGluIHRoZQ0KK2V4ZWN1dGFibGUg Y2Fubm90IGJlIGRvbmUgY2hlYXBseSkuDQorDQorVGhpcyBtZWFucyBmb3Ig b3B0aW1pemF0aW9uIHByZWxpbmsgc2hvdWxkIGFzc2lnbiBhZGRyZXNzZXMg ZnJvbSBhIDI0TUIgcmVnaW9uDQorYmVsb3cgdGhlIGV4ZWN1dGFibGUgZmly c3QsIGFzc3VtaW5nIG1vc3Qgb2YgdGhlIGV4ZWN1dGFibGVzIGFyZSBzbWFs bGVyIHRoYW4NCit0aG9zZSByZW1haW5pbmcgOE1CLiBwcmVsaW5rIGFzc2ln bnMgdGhlc2UgZnJvbSBoaWdoZXIgdG8gbG93ZXIgYWRkcmVzc2VzLg0KKw0K K1doZW4gdGhpcyByZWdpb24gaXMgZnVsbCwgcHJlbGluayBzdGFydHMgZnJv bSBhZGRyZXNzIDB4NDAwMDAgdXAgdGlsbCB0aGUNCitib3R0b20gb2YgdGhl IGZpcnN0IGFyZWEuDQorDQorWyBUbyBsZWF2ZSBzb21lIHBhZ2VzIHVubWFw cGVkIHRvIGNhdGNoIE5VTEwgcG9pbnRlciBkZXJlZmVyZW5jZXMuIF0NCisN CitPbmx5IHdoZW4gYWxsIHRoZXNlIGFyZWFzIGFyZSBmdWxsLCBwcmVsaW5r IHN0YXJ0cyBwaWNraW5nIGFkZHJlc3NlcyBoaWdoDQorYWJvdmUgdGhlIGV4 ZWN1dGFibGUsIHNvIHRoYXQgc3VmZmljaWVudCBzcGFjZSBpcyBsZWZ0IGlu IGJldHdlZW4gdG8gbGVhdmUNCityb29tIGZvciBicmsuDQorDQorV2hlbiAt UiBvcHRpb24gaXMgc3BlY2lmaWVkLCBwcmVsaW5rIG5lZWRzIHRvIGhvbm9y IGl0LCBidXQgaW4gYSB3YXkgd2hpY2gNCitkb2VzbuKAmXQgdG90YWxseSBr aWxsIHRoaXMgb3B0aW1pemF0aW9uLiBTbyBpdCBwaWNrcyB1cCBhIHJhbmRv bSBzdGFydCBiYXNlDQord2l0aGluIGVhY2ggb2YgdGhlIDMgcmVnaW9ucyBz ZXBhcmF0ZWx5LCBzcGxpdHRpbmcgdGhlbSBpbnRvIDYgcmVnaW9ucy4NCisN CitBbm90aGVyIGFyY2hpdGVjdHVyZSB3aGljaCBuZWVkcyB0byBiZSBoYW5k bGVkIHNwZWNpYWxseSBpcyBJQS0zMiB3aGVuIHVzaW5nDQorRXhlYy1TaGll bGQuIFRoZSBJQS0zMiBhcmNoaXRlY3R1cmUgZG9lc27igJl0IGhhdmUgYSBi aXQgdG8gZGlzYWJsZSBleGVjdXRpb24NCitmb3IgZWFjaCBwYWdlLCBvbmx5 IGZvciBlYWNoIHNlZ21lbnQuIEFsbCByZWFkYWJsZSBwYWdlcyBhcmUgbm9y bWFsbHkNCitleGVjdXRhYmxlOiBUaGlzIG1lYW5zIHRoZSBzdGFjayBpcyB1 c3VhbGx5IGV4ZWN1dGFibGUsIGFzIGlzIG1lbW9yeSBhbGxvY2F0ZWQNCiti eSBtYWxsb2MuDQorDQorVGhpcyBpcyB1bmRlc2lyYWJsZSBmb3Igc2VjdXJp dHkgcmVhc29ucywgZXhwbG9pdHMgY2FuIHRoZW4gb3ZlcmZsb3cgYSBidWZm ZXINCitvbiB0aGUgc3RhY2sgdG8gdHJhbnNmZXIgY29udHJvbCB0byBjb2Rl IGl0IGNyZWF0ZXMgb24gdGhlIHN0YWNrLiBPbmx5IHZlcnkNCitmZXcgcHJv Z3JhbXMgYWN0dWFsbHkgbmVlZCBhbiBleGVjdXRhYmxlIHN0YWNrLg0KKw0K K0ZvciBleGFtcGxlIHByb2dyYW1zIHVzaW5nIEdDQyB0cmFtcG9saW5lcyBm b3IgbmVzdGVkIGZ1bmN0aW9ucyBuZWVkIGl0IG9yDQord2hlbiBhbiBhcHBs aWNhdGlvbiBpdHNlbGYgY3JlYXRlcyBleGVjdXRhYmxlIGNvZGUgb24gdGhl IHN0YWNrIGFuZCBjYWxscyBpdC4NCitFeGVjLVNoaWVsZCB3b3JrcyBhcm91 bmQgdGhpcyBJQTMyIGFyY2hpdGVjdHVyZSBkZWZpY2llbmN5IGJ5IHVzaW5n IGEgc2VwYXJhdGUNCitjb2RlIHNlZ21lbnQsIHdoaWNoIHN0YXJ0cyBhdCBh ZGRyZXNzIDAgYW5kIHNwYW5zIGFkZHJlc3Mgc3BhY2UgdW50aWwgaXRzDQor bGltaXQsIGhpZ2hlc3QgcGFnZSB3aGljaCBuZWVkcyB0byBiZSBleGVjdXRh YmxlLiBUaGlzIGlzIGR5bmFtaWNhbGx5IGNoYW5nZWQNCit3aGVuIHNvbWUg cGFnZSB3aXRoIGhpZ2hlciBhZGRyZXNzIHRoYW4gdGhlIGxpbWl0IG5lZWRz IHRvIGJlIGV4ZWN1dGFibGUNCisoZWl0aGVyIGJlY2F1c2Ugb2YgbW1hcCB3 aXRoIFBST1RfRVhFQyBiaXQgc2V0LCBvciBtcHJvdGVjdCB3aXRoIFBST1Rf RVhFQyBvZg0KK2FuIGV4aXN0aW5nIG1hcHBpbmcpLg0KKw0KK1RoaXMga2lu ZCBvZiBwcm90ZWN0aW9uIGlzIG9mIGNvdXJzZSBvbmx5IGVmZmVjdGl2ZSBp ZiB0aGUgbGltaXQgaXMgYXMgbG93IGFzIHBvc3NpYmxlLg0KKw0KK1RoZSBr ZXJuZWwgdHJpZXMgdG8gcHV0IGFsbCBuZXcgbWFwcGluZ3Mgd2l0aCBQUk9U X0VYRUMgc2V0IGFuZCBOVUxMIGFkZHJlc3MNCitsb3cuIElmIHBvc3NpYmxl IGludG8gQVNDSUkgU2hpZWxkIGFyZWEgKGZpcnN0IDE2TUIgb2YgYWRkcmVz cyBzcGFjZSksIGlmDQorbm90LCBhdCBsZWFzdCBiZWxvdyB0aGUgZXhlY3V0 YWJsZS4NCisNCitJZiBwcmVsaW5rIGRldGVjdHMgRXhlYy1TaGllbGQsIGl0 IHRyaWVzIHRvIGRvIHRoZSBzYW1lIGFzIGtlcm5lbCB3aGVuDQorYXNzaWdu aW5nIGFkZHJlc3NlcywgaS5lLiBwcmVmZXJzIHRvIGFzc2lnbiBhZGRyZXNz ZXMgaW4gQVNDSUkgU2hpZWxkIGFyZWEgYW5kDQorY29udGludWVzIHdpdGgg b3RoZXIgYWRkcmVzc2VzIGJlbG93IHRoZSBwcm9ncmFtLiBJdCBuZWVkcyB0 byBsZWF2ZSBmaXJzdCAxTUINCitwbHVzIDRLQiBvZiBhZGRyZXNzIHNwYWNl IHVuYWxsb2NhdGVkIHRob3VnaCwgYmVjYXVzZSB0aGF0IHJhbmdlIGlzIG9m dGVuIHVzZWQNCitieSBwcm9ncmFtcyB1c2luZyB2bTg2IHN5c3RlbSBjYWxs Lg0KKw0KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCisNCis2 IFJlbG9jYXRpb24gb2YgbGlicmFyaWVzDQorDQorV2hlbiBhIHNoYXJlZCBs aWJyYXJ5IGhhcyBhIGJhc2UgYWRkcmVzcyBhc3NpZ25lZCwgaXQgbmVlZHMg dG8gYmUgcmVsb2NhdGVkIHNvDQordGhhdCB0aGUgYmFzZSBhZGRyZXNzIGlz IGVxdWFsIHRvIHRoZSBmaXJzdCBQVF9MT0FEIHNlZ21lbnTigJlzIHBfdmFk ZHIuIFRoZQ0KK2VmZmVjdCBvZiB0aGlzIG9wZXJhdGlvbiBzaG91bGQgYmUg Yml0d2lzZSBpZGVudGljYWwgYXMgaWYgdGhlIGxpYnJhcnkgd2VyZQ0KK2xp bmtlZCB3aXRoIHRoYXQgYmFzZSBhZGRyZXNzIG9yaWdpbmFsbHkuIFRoYXQg aXMsIHRoZSBmb2xsb3dpbmcgc2NyaXB0cw0KK3Nob3VsZCBwcm9kdWNlIGlk ZW50aWNhbCBvdXRwdXQ6DQorDQorICAkIGdjYyAtZyAtc2hhcmVkIC1vIGxp YmZvby5zby4xLjAuMCAtV2wsLWgsbGliZm9vLnNvLjEgXA0KKyAgICAgIGlu cHV0MS5vIGlucHV0Mi5vIHNvbWVsaWIuYQ0KKw0KKyAgJCBwcmVsaW5rIC0t cmVsb2Mtb25seT0weDU0MzIxMDAwIGxpYmZvby5zby4xLjAuMA0KKw0KK2Fu ZDoNCisNCisgICQgZ2NjIC1zaGFyZWQgLVdsLC0tdmVyYm9zZSAyPiYxID4g L2Rldi9udWxsIFwNCisgICAgICB8IHNlZCAtZSDigJkvXj09PT09PS8sL149 PT09PT0vIWTigJkgXA0KKyAgICAgICAgICAgIC1lIOKAmS9ePT09PT09L2Q7 cy8wXCggKyBTSVpFT0ZfSEVBREVSU1wpLzB4NTQzMjEwMDBcMS/igJkgXA0K KyAgICAgID4gbGliZm9vLnNvLmxkcw0KKw0KKyAgJCBnY2MgLVdsLC1ULGxp YmZvby5zby5sZHMgLWcgLXNoYXJlZCAtbyBsaWJmb28uc28uMS4wLjAgXA0K KyAgICAgICAgLVdsLC1oLGxpYmZvby5zby4xIGlucHV0MS5vIGlucHV0Mi5v IHNvbWVsaWIuYQ0KKw0KK1RoZSBmaXJzdCBzY3JpcHQgY3JlYXRlcyBhIG5v cm1hbCBzaGFyZWQgbGlicmFyeSB3aXRoIHRoZSBkZWZhdWx0IGJhc2UgYWRk cmVzcw0KKzAgYW5kIHRoZW4gdXNlcyBwcmVsaW5r4oCZcyBzcGVjaWFsIG1v ZGUgd2hlbiBpdCBqdXN0IHJlbG9jYXRlcyBhIGxpYnJhcnkgdG8gYQ0KK2dp dmVuIGFkZHJlc3MuIFRoZSBzZWNvbmQgc2NyaXB0IGZpcnN0IG1vZGlmaWVz IGEgYnVpbHQtaW4gR05VIGxpbmtlciBzY3JpcHQNCitmb3IgbGlua2luZyBv ZiBzaGFyZWQgbGlicmFyaWVzLCBzbyB0aGF0IHRoZSBiYXNlIGFkZHJlc3Mg aXMgdGhlIG9uZSBnaXZlbg0KK2luc3RlYWQgb2YgemVybyBhbmQgc3RvcmVz IGl0IGludG8gYSB0ZW1wb3JhcnkgZmlsZS4gVGhlbiBpdCBjcmVhdGVzIGEg c2hhcmVkDQorbGlicmFyeSB1c2luZyB0aGF0IGxpbmtlcnNjcmlwdC4NCisN CitUaGUgcmVsb2NhdGlvbiBvcGVyYXRpb24gaW52b2x2ZXMgbW9zdGx5IGFk ZGluZyB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIG9sZCBhbmQNCituZXcgYmFz ZSBhZGRyZXNzIHRvIGFsbCBFTEYgZmllbGRzIHdoaWNoIGNvbnRhaW4gdmFs dWVzIHJlcHJlc2VudGluZyB2aXJ0dWFsDQorYWRkcmVzc2VzIG9mIHRoZSBz aGFyZWQgbGlicmFyeSAob3IgaW4gdGhlIHByb2dyYW0gaGVhZGVyIHRhYmxl IGFsc28NCityZXByZXNlbnRpbmcgcGh5c2ljYWwgYWRkcmVzc2VzKS4gRmls ZSBvZmZzZXRzIG5lZWQgdG8gYmUgdW5tb2RpZmllZC4NCisNCitNb3N0IHBs YWNlcyB3aGVyZSB0aGUgYWRqdXN0bWVudHMgbmVlZCB0byBiZSBkb25lIGFy ZSBjbGVhciwgcHJlbGluayBqdXN0IGhhcw0KK3RvIHdhdGNoIEVMRiBzcGVj IHRvIHNlZSB3aGljaCBmaWVsZHMgY29udGFpbiB2aXJ0dWFsIGFkZHJlc3Nl cy4gT25lIHByb2JsZW0NCitpcyB3aXRoIGFic29sdXRlIHN5bWJvbHMuIFBy ZWxpbmsgaGFzIG5vIHdheSB0byBmaW5kIG91dCBpZiBhbiBhYnNvbHV0ZSBz eW1ib2wNCitpbiBhIHNoYXJlZCBsaWJyYXJ5IGlzIHJlYWxseSBtZWFudCBh cyBhYnNvbHV0ZSBhbmQgdGh1cyBub3QgY2hhbmdpbmcgZHVyaW5nDQorcmVs b2NhdGlvbiwgb3IgaWYgaXQgaXMgYW4gYWRkcmVzcyBvZiBzb21lIHBsYWNl IGluIHRoZSBzaGFyZWQgbGlicmFyeSBvdXRzaWRlDQorb2YgYW55IHNlY3Rp b24gb3Igb24gdGhlaXIgZWRnZS4NCisNCitGb3IgaW5zdGFuY2Ugc3ltYm9s cyBjcmVhdGVkIGluIHRoZSBHTlUgbGlua2Vy4oCZcyBzY3JpcHQgb3V0c2lk ZSBvZiBzZWN0aW9uDQorZGlyZWN0aXZlcyBoYXZlIGFsbCBTSE5fQUJTIHNl Y3Rpb24sIHlldCB0aGV5IGNhbiBiZSBsb2NhdGlvbiBpbiB0aGUgbGlicmFy eQ0KKyhlLmcuIHN5bWJvbGZvbyA9IC4pIG9yIHRoZXkgY2FuIGJlIGFic29s dXRlIChlLmcuIHN5bWJvbGJhciA9IDB4MTIzNDUwMDApLg0KKw0KK1RoaXMg ZGlzdGluY3Rpb24gaXMgbG9zdCBhdCBsaW5rIHRpbWUuIEJ1dCB0aGUgZHlu YW1pYyBsaW5rZXIgd2hlbiBsb29raW5nIHVwDQorc3ltYm9scyBkb2VzbuKA mXQgbWFrZSBhbnkgZGlzdGluY3Rpb24gYmV0d2VlbiB0aGVtLCBhbGwgYWRk cmVzc2VzIGR1cmluZw0KK2R5bmFtaWMgbG9va3VwIGhhdmUgdGhlIGxvYWQg b2Zmc2V0IGFkZGVkIHRvIGl0Lg0KKw0KK1ByZWxpbmsgY2hvb3NlcyB0byBy ZWxvY2F0ZSBhbnkgYWJzb2x1dGUgc3ltYm9scyB3aXRoIHZhbHVlIGJpZ2dl ciB0aGFuIHplcm8sDQordGhhdCB3YXkgcHJlbGluayDigJNyZWxvYy1vbmx5 IGdldHMgYml0d2lzZSBpZGVudGljYWwgb3V0cHV0IHdpdGggbGlua2luZw0K K2RpcmVjdGx5IGF0IHRoZSBkaWZmZXJlbnQgYmFzZSBpbiBhbG1vc3QgYWxs IHJlYWwtd29ybGQgY2FzZXMuDQorDQorVGhyZWFkIExvY2FsIFN0b3JhZ2Ug c3ltYm9scyAodGhvc2Ugd2l0aCBTVFRfVExTIHR5cGUpIGFyZSBuZXZlciBy ZWxvY2F0ZWQsIGFzDQordGhlaXIgdmFsdWVzIGFyZSByZWxhdGl2ZSB0byBz dGFydCBvZiBzaGFyZWQgbGlicmFyeeKAmXMgdGhyZWFkIGxvY2FsIGFyZWEu DQorDQorV2hlbiByZWxvY2F0aW5nIHRoZSBkeW5hbWljIHNlY3Rpb24gdGhl cmUgYXJlIG5vIGJpdHMgd2hpY2ggdGVsbCBpZiBhDQorcGFydGljdWxhciBk eW5hbWljIHRhZyB1c2VzIGRfdW4uZF9wdHIgKHdoaWNoIG5lZWRzIHRvIGJl IGFkanVzdGVkKSBvcg0KK2RfdW4uZF92YWwgKHdoaWNoIG5lZWRzIHRvIGJl IGxlZnQgYXMgaXMpLCBzbyBwcmVsaW5rIGhhcyB0byBoYXJkY29kZSBhIGxp c3QNCitvZiB3ZWxsIGtub3duIGFyY2hpdGVjdHVyZSBpbmRlcGVuZGVudCBk eW5hbWljIHRhZ3Mgd2hpY2ggbmVlZCBhZGp1c3RpbmcgYW5kDQoraGF2ZSBh IGhvb2sgZm9yIGFyY2hpdGVjdHVyZSBzcGVjaWZpYyBkeW5hbWljIHRhZyBh ZGp1c3RtZW50Lg0KKw0KK1N1biBjYW1lIHVwIHdpdGggRFRfQUREUlJOR0xP IHRvIERUX0FERFJSTkdISSBhbmQgRFRfVkFMUk5HTE8gdG8gRFRfVkFMUk5H SEkNCitkeW5hbWljIHRhZyBudW1iZXIgcmFuZ2VzLCBzbyBhdCBsZWFzdCBh cyBsb25nIGFzIHRoZXNlIHJhbmdlcyBhcmUgdXNlZCBmb3INCituZXcgZHlu YW1pYyB0YWdzIHByZWxpbmsgY2FuIHJlbG9jYXRlIGNvcnJlY3RseSBldmVu IHdpdGhvdXQgbGlzdGluZyB0aGVtIGFsbA0KK2V4cGxpY2l0bHkuDQorDQor V2hlbiByZWxvY2F0aW5nIC5yZWxhLiogb3IgLnJlbC4qIHNlY3Rpb25zLCB3 aGljaCBpcyBkb25lIGluIGFyY2hpdGVjdHVyZQ0KK3NwZWNpZmljIGNvZGUs IHJlbGF0aXZlIHJlbG9jYXRpb25zIGFuZCBvbiAuZ290LnBsdCB1c2luZyBh cmNoaXRlY3R1cmVzIGFsc28NCitQTFQgcmVsb2NhdGlvbnMgdHlwaWNhbGx5 IG5lZWQgYW4gYWRqdXN0bWVudC4NCisNCitUaGUgYWRqdXN0bWVudCBuZWVk cyB0byBiZSBkb25lIGluIGVpdGhlciByX2FkZGVuZCBmaWVsZCBvZiB0aGUg RWxmTk5fUmVsYQ0KK3N0cnVjdHVyZSwgaW4gdGhlIG1lbW9yeSBwb2ludGVk IGJ5IHJfb2Zmc2V0LCBvciBpbiBib3RoIGxvY2F0aW9ucy4gT24gc29tZQ0K K2FyY2hpdGVjdHVyZXMgd2hhdCBuZWVkcyBhZGp1c3RpbmcgaXMgbm90IGV2 ZW4gdGhlIHNhbWUgZm9yIGFsbCByZWxhdGl2ZQ0KK3JlbG9jYXRpb25zLg0K Kw0KK1JlbGF0aXZlIHJlbG9jYXRpb25zIGFnYWluc3Qgc29tZSBzZWN0aW9u cyBuZWVkIHRvIGhhdmUgcl9hZGRlbmQgYWRqdXN0ZWQNCit3aGlsZSBvdGhl cnMgbmVlZCB0byBoYXZlIG1lbW9yeSBhZGp1c3RlZC4gT24gbWFueSBhcmNo aXRlY3R1cmVzLCBmaXJzdCBmZXcNCit3b3JkcyBpbiBHT1QgYXJlIHNwZWNp YWwgYW5kIHNvbWUgb2YgdGhlbSBuZWVkIGFkanVzdG1lbnQuDQorDQorVGhl IGhhcmRlc3QgcGFydCBvZiB0aGUgYWRqdXN0bWVudCBpcyBoYW5kbGluZyB0 aGUgZGVidWdnaW5nIHNlY3Rpb25zLiBUaGVzZQ0KK2FyZSBub24tYWxsb2Nh dGVkIHNlY3Rpb25zIHdoaWNoIHR5cGljYWxseSBoYXZlIG5vIGNvcnJlc3Bv bmRpbmcgcmVsb2NhdGlvbg0KK3NlY3Rpb24gYXNzb2NpYXRlZCB3aXRoIHRo ZW0uIFByZWxpbmsgaGFzIHRvIG1hdGNoIHRoZSB2YXJpb3VzIGRlYnVnZ2Vy cyBpbg0KK3doYXQgZmllbGRzIGl0IGFkanVzdHMgYW5kIHdoYXQgYXJlIHNr aXBwZWQuDQorDQorQXMgb2YgdGhpcyB3cml0aW5nIHByZWxpbmsgc2hvdWxk IGhhbmRsZSBEV0FSRiAyIFsxNV0gc3RhbmRhcmQgYXMNCitjb3JyZWN0ZWQg KGFuZCBleHRlbmRlZCkgYnkgRFdBUkYgMyBkcmFmdCBbMTZdLCBTdGFicyBb MTddIHdpdGggR0NDDQorZXh0ZW5zaW9ucyBhbmQgQWxwaGEgb3IgTUlQUyBN ZGVidWcuDQorDQorRFdBUkYgMiBkZWJ1Z2dpbmcgaW5mb3JtYXRpb24gaW52 b2x2ZXMgbWFueSBzZXBhcmF0ZSBzZWN0aW9ucywgZWFjaCBvZiB0aGVtDQor d2l0aCBhIHVuaXF1ZSBmb3JtYXQgd2hpY2ggbmVlZHMgdG8gYmUgcmVsb2Nh dGVkIGRpZmZlcmVudGx5LiBGb3IgcmVsb2NhdGlvbg0KK29mIHRoZSAuZGVi dWdfaW5mbyBzZWN0aW9uIGNvbXBpbGF0aW9uIHVuaXRzIHByZWxpbmsgaGFz IHRvIHBhcnNlIHRoZQ0KK2NvcnJlc3BvbmRpbmcgcGFydCBvZiB0aGUgLmRl YnVnX2FiYnJldiBzZWN0aW9uLCBhZGp1c3QgYWxsIHZhbHVlcyBvZg0KK2F0 dHJpYnV0ZXMgdGhhdCBhcmUgdXNpbmcgdGhlIERXX0ZPUk1fYWRkciBmb3Jt IGFuZCBhZGp1c3QgZW1iZWRkZWQgbG9jYXRpb24NCitsaXN0cy4gLmRlYnVn X3JhbmdlcyBhbmQgLmRlYnVnX2xvYyBzZWN0aW9uIHBvcnRpb25zIGRlcGVu ZCBvbiB0aGUgZXhhY3QgcGxhY2UNCitpbiAuZGVidWdfaW5mbyBzZWN0aW9u IGZyb20gd2hpY2ggdGhleSBhcmUgcmVmZXJlbmNlZCwgc28gdGhhdCBwcmVs aW5rIGNhbg0KK2tlZXAgdHJhY2sgb2YgdGhlaXIgYmFzZSBhZGRyZXNzLg0K Kw0KK0RXQVJGIGRlYnVnZ2luZyBmb3JtYXQgaXMgdmVyeSBleHRlbmRhYmxl LCBzbyBwcmVsaW5rIG5lZWRzIHRvIGJlIHZlcnkNCitjb25zZXJ2YXRpdmUg d2hlbiBpdCBzZWVzIHVua25vd24gZXh0ZW5zaW9ucy4gSXQgbmVlZHMgdG8g ZmFpbCBwcmVsaW5raW5nDQoraW5zdGVhZCBvZiBzaWxlbnRseSBicmVhayBk ZWJ1Z2dpbmcgaW5mb3JtYXRpb24gaWYgaXQgc2VlcyBhbiB1bmtub3duIC5k ZWJ1Z18qDQorc2VjdGlvbiwgdW5rbm93biBhdHRyaWJ1dGUgZm9ybSBvciB1 bmtub3duIGF0dHJpYnV0ZSB3aXRoIG9uZSBvZiB0aGUNCitEV19GT1JNX2Js b2NrKiBmb3JtcywgYXMgdGhleSBjYW4gcG90ZW50aWFsbHkgZW1iZWQgYWRk cmVzc2VzIHdoaWNoIHdvdWxkIG5lZWQNCithZGp1c3RtZW50Lg0KKw0KK0Zv ciBzdGFicyBwcmVsaW5rIHRyaWVkIHRvIG1hdGNoIEdEQiBiZWhhdmlvci4N CisNCitGb3IgTl9GVU4sIGl0IG5lZWRzIHRvIGRpZmZlcmVudGlhdGUgYmV0 d2VlbiBmdW5jdGlvbiBzdGFydCBhbmQgZnVuY3Rpb24NCithZGRyZXNzIHdo aWNoIGFyZSBib3RoIGVuY29kZWQgd2l0aCB0aGlzIHR5cGUsIHRoZSByZXN0 IG9mIHR5cGVzIGVpdGhlciBhbHdheXMNCituZWVkIHJlbG9jYXRpbmcgb3Ig bmV2ZXIuIEFuZCBzaW1pbGFybHkgdG8gRFdBUkYgMiBoYW5kbGluZywgaXQg bmVlZHMgdG8NCityZWplY3QgdW5rbm93biB0eXBlcy4NCisNCitUaGUgcmVs b2NhdGlvbiBjb2RlIGluIHByZWxpbmsgaXMgYSBsaXR0bGUgYml0IG1vcmUg Z2VuZXJpYyB0aGFuIHdoYXQgaXMNCitkZXNjcmliZWQgYWJvdmUsIGFzIGl0 IGlzIHVzZWQgYWxzbyBieSBvdGhlciBwYXJ0cyBvZiBwcmVsaW5rLCB3aGVu IGdyb3dpbmcNCitzZWN0aW9ucyBpbiBhIG1pZGRsZSBvZiB0aGUgc2hhcmVk IGxpYnJhcnkgZHVyaW5nIFJFTCB0byBSRUxBIGNvbnZlcnNpb24uIEFsbA0K K2FkanVzdG1lbnQgZnVuY3Rpb25zIGdldCBwYXNzZWQgYm90aCB0aGUgb2Zm c2V0IGl0IHNob3VsZCBhZGQgdG8gdmlydHVhbA0KK2FkZHJlc3NlcyBhbmQg YSBzdGFydCBhZGRyZXNzLiBBZGp1c3RtZW50IGlzIG9ubHkgZG9uZSBpZiB0 aGUgb2xkIHZpcnR1YWwNCithZGRyZXNzIHdhcyBiaWdnZXIgb3IgZXF1YWwg dGhhbiB0aGUgc3RhcnQgYWRkcmVzcy4NCisNCis9PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09DQorDQorNyBSRUwgdG8gUkVMQSBjb252ZXJzaW9u DQorDQorT24gYXJjaGl0ZWN0dXJlcyB3aGljaCBub3JtYWxseSB1c2UgdGhl IFJFTCBmb3JtYXQgZm9yIHJlbG9jYXRpb25zIGluc3RlYWQNCitvZiBSRUxB IChJQS0zMiwgQVJNIGFuZCBNSVBTKSwgaWYgY2VydGFpbiByZWxvY2F0aW9u IHR5cGVzIHVzZSB0aGUgbWVtb3J5DQorcl9vZmZzZXQgcG9pbnRzIHRvIGR1 cmluZyByZWxvY2F0aW9uLCBwcmVsaW5rIGhhcyB0byBlaXRoZXIgY29udmVy dCB0aGVtIHRvIGENCitkaWZmZXJlbnQgcmVsb2NhdGlvbiB0eXBlIHdoaWNo IGRvZXNu4oCZdCB1c2UgdGhlIG1lbW9yeSB2YWx1ZSwgb3IgdGhlIHdob2xl DQorLnJlbC5keW4gc2VjdGlvbiBuZWVkcyB0byBiZSBjb252ZXJ0ZWQgdG8g UkVMQSBmb3JtYXQuIExldOKAmXMgZGVzY3JpYmUgaXQgb24gYW4NCitleGFt cGxlIG9uIElBLTMyIGFyY2hpdGVjdHVyZToNCisNCisgICQgY2F0ID4gdGVz dDEuYyA8PEVPRg0KKyAgICBleHRlcm4gaW50IGlbNF07DQorICAgIGludCAq aiA9IGkgKyAyOw0KKyAgICBFT0YNCisNCisgICQgY2F0ID4gdGVzdDIuYyA8 PEVPRg0KKyAgICBpbnQgaVs0XTsNCisgICAgRU9GDQorDQorICAkIGdjYyAt bm9zdGRsaWIgLXNoYXJlZCAtZnBpYyAtcyAtbyB0ZXN0Mi5zbyB0ZXN0Mi5j DQorDQorICAkIGdjYyAtbm9zdGRsaWIgLXNoYXJlZCAtZnBpYyAtbyB0ZXN0 MS5zbyB0ZXN0MS5jIC4vdGVzdDIuc28NCisNCisgICQgcmVhZGVsZiAtbCB0 ZXN0MS5zbyB8IGdyZXAgTE9BRCB8IGhlYWQgLTENCisgICAgTE9BRCAgICAw eDAwMDAwMCAweDAwMDAwMDAwIDB4MDAwMDAwMDAgMHgwMDJiOCAweDAwMmI4 IFIgRSAweDEwMDANCisNCisgICQgcmVhZGVsZiAtbCB0ZXN0Mi5zbyB8IGdy ZXAgTE9BRCB8IGhlYWQgLTENCisgICAgTE9BRCAgICAgMHgwMDAwMDAgMHgw MDAwMDAwMCAweDAwMDAwMDAwIDB4MDAyNDQgMHgwMDI0NCBSIEUgMHgxMDAw DQorDQorICAkIHJlYWRlbGYgLXIgdGVzdDEuc28NCisgICAgUmVsb2NhdGlv biBzZWN0aW9uIOKAmS5yZWwuZHlu4oCZIGF0IG9mZnNldCAweDJiMCBjb250 YWlucyAxIGVudHJpZXM6DQorICAgIE9mZnNldCAgIEluZm8gICAgIFR5cGUg ICAgIFN5bS5WYWx1ZSBTeW0uIE5hbWUNCisgICAgMDAwMDEyYjggMDAwMDBk MDEgUl8zODZfMzIgMDAwMDAwMDAgIGkNCisNCisgICQgb2JqZHVtcCAtcyAt aiAuZGF0YSB0ZXN0MS5zbw0KKyAgICB0ZXN0MS5zbzogZmlsZSBmb3JtYXQg ZWxmMzItaTM4Ng0KKyAgICBDb250ZW50cyBvZiBzZWN0aW9uIC5kYXRhOg0K KyAgICAxMmI4IDA4MDAwMDAwICAgICAuLi4uDQorDQorICAkIHJlYWRlbGYg LXMgdGVzdDIuc28gfCBncmVwIGlcJA0KKyAgICAxMTogMDAwMDEyYTggMTYg T0JKRUNUIEdMT0JBTCBERUZBVUxUIDggaQ0KKw0KKyAgJCBwcmVsaW5rIC1O IC4vdGVzdDEuc28gLi90ZXN0Mi5zbw0KKyAgJCByZWFkZWxmIC1sIHRlc3Qx LnNvIHwgZ3JlcCBMT0FEIHwgaGVhZCAtMQ0KKyAgICBMT0FEICAgIDB4MDAw MDAwIDB4MDRkYmEwMDAgMHgwNGRiYTAwMCAweDAwMmJjIDB4MDAyYmMgUiBF IDB4MTAwMA0KKw0KKyAgJCByZWFkZWxmIC1sIHRlc3QyLnNvIHwgZ3JlcCBM T0FEIHwgaGVhZCAtMQ0KKyAgICBMT0FEICAgIDB4MDAwMDAwIDB4MDRkYjYw MDAgMHgwNGRiNjAwMCAweDAwMjQ0IDB4MDAyNDQgUiBFIDB4MTAwMA0KKw0K KyAgJCByZWFkZWxmIC1yIHRlc3QxLnNvDQorICAgIFJlbG9jYXRpb24gc2Vj dGlvbiDigJkucmVsLmR5buKAmSBhdCBvZmZzZXQgMHgyYjAgY29udGFpbnMg MSBlbnRyaWVzOg0KKyAgICBPZmZzZXQgICBJbmZvICAgICBUeXBlICAgICBT eW0uVmFsdWUgU3ltLiBOYW1lICsgQWRkZW5kDQorICAgIDA0ZGJiMmJjIDAw MDAwZDAxIFJfMzg2XzMyIDAwMDAwMDAwICAgICAgIGkgKyA4DQorDQorICAk IG9iamR1bXAgLXMgLWogLmRhdGEgdGVzdDEuc28NCisgICAgdGVzdDEuc286 IGZpbGUgZm9ybWF0IGVsZjMyLWkzODYNCisgICAgQ29udGVudHMgb2Ygc2Vj dGlvbiAuZGF0YToNCisgICAgNGRiYjJiYyBiMDcyZGIwNCAgICAuci4uDQor DQorICAkIHJlYWRlbGYgLXMgdGVzdDIuc28gfCBncmVwIGlcJA0KKyAgICAx MTogMDRkYjcyYTggMTYgT0JKRUNUIEdMT0JBTCBERUZBVUxUICAgICA4aQ0K Kw0KK1JFTCB0byBSRUxBIGNvbnZlcnNpb24gZXhhbXBsZQ0KKw0KK1RoaXMg cmVsb2NhdGlvbiBpcyBhZ2FpbnN0IGkgKyA4LCB3aGVyZSB0aGUgYWRkZW5k IGlzIHN0b3JlZCBhdCB0aGUgbWVtb3J5DQorbG9jYXRpb24gcG9pbnRlZCBi eSByX29mZnNldC4gUHJlbGluayBhc3NpZ25lZCBiYXNlIGFkZHJlc3MgMHg0 ZGJhMDAwIHRvDQordGVzdDEuc28gYW5kIDB4NGRiNjAwMCB0byB0ZXN0Mi5z by4NCisNCitQcmVsaW5rIGFib3ZlIGNvbnZlcnRlZCB0aGUgUkVMIHNlY3Rp b24gaW4gdGVzdDEuc28gdG8gUkVMQSwgYnV0IGxldOKAmXMgYXNzdW1lDQor aXQgZGlkIG5vdC4gQWxsIG91dHB1dCBjb250YWluaW5nIDJiYyBhYm92ZSB3 b3VsZCBjaGFuZ2UgdG8gMmI4ICh0aGF0IGNoYW5nZWQNCithYm92ZSBvbmx5 IGJlY2F1c2UgLnJlbC5keW4gc2VjdGlvbiBncmV3IHVwIGJ5IDQgYnl0ZXMg ZHVyaW5nIHRoZSBjb252ZXJzaW9uDQordG8gUkVMQSBmb3JtYXQpLCB0aGUg cmVzdCB3b3VsZCBzdGF5IHVuY2hhbmdlZC4NCisNCitXaGVuIHNvbWUgcHJv Z3JhbSBsaW5rZWQgYWdhaW5zdCB0ZXN0MS5zbyB3YXMgcHJlbGlua2VkLCB0 aGUgKG9ubHkpIHJlbG9jYXRpb24NCitpbiB0ZXN0MS5zbyB3b3VsZCBub3Qg YmUgdXNlZCBhbmQgaiB3b3VsZCBjb250YWluIHRoZSByaWdodCB2YWx1ZSwg MHg0ZGI3MmIwDQorKGFkZHJlc3Mgb2YgaSArIDg7IG5vdGUgdGhhdCBJQS0z MiBpcyBsaXR0bGUgZW5kaWFuLCBzbyB0aGUgdmFsdWVzIGluIC5kYXRhDQor c2VjdGlvbiBhcmUgaGFyZGVyIHRvIHJlYWQgZm9yIGEgaHVtYW4pLg0KKw0K K05vdywgbGV04oCZcyBhc3N1bWUgb25lIG9mIHRoZSBzaGFyZWQgbGlicmFy aWVzIHRoZSBleGVjdXRhYmxlIGlzIGxpbmtlZCBhZ2FpbnN0DQoraXMgdXBn cmFkZWQuIFRoaXMgbWVhbnMgcHJlbGluayBpbmZvcm1hdGlvbiBjYW5ub3Qg YmUgdXNlZCwgYXMgaXQgaXMgb3V0IG9mDQorZGF0ZS4gTGV04oCZcyBhc3N1 bWUgaXQgd2FzIGEgbGlicmFyeSBvdGhlciB0aGFuIHRlc3QyLnNvLg0KKw0K K05vcm1hbCByZWxvY2F0aW9uIHByb2Nlc3NpbmcgZm9yIHRlc3QxLnNvIG5l ZWRzIHRvIGhhcHBlbi4NCisNCitTdGFuZGFyZCBSXzM4Nl8zMiBjYWxjdWxh dGlvbiBpcyBTICsgQSwgaW4gdGhpcyBjYXNlIDB4NGRiNzJhOCArIDB4NGRi NzJiMCA9DQorMHg5YjZlNTU4IGFuZCBqIGNvbnRhaW5zIHdyb25nIHZhbHVl Lg0KKw0KK0VpdGhlciB0ZXN0Mi5zbyBjb3VsZCBjaGFuZ2UgYW5kIG5vdyB0 aGUgaSB2YXJpYWJsZSB3b3VsZCBoYXZlIGRpZmZlcmVudA0KK2FkZHJlc3Ms IG9yIHNvbWUgb3RoZXIgc2hhcmVkIGxpYnJhcnkgbGlua2VkIHRvIHRoZSBl eGVjdXRhYmxlIGNvdWxkIG92ZXJsb2FkDQorc3ltYm9sIGkuIFdpdGhvdXQg YWRkaXRpb25hbCBpbmZvcm1hdGlvbiB0aGUgZHluYW1pYyBsaW5rZXIgY2Fu bm90IGZpbmQgb3V0DQordGhlIGFkZGVuZCBpcyA4Lg0KKw0KK1RoZSBvcmln aW5hbCB2YWx1ZSBvZiBhIHN5bWJvbCBjb3VsZCBwZXJoYXBzIGJlIHN0b3Jl ZCBpbiBzb21lIHNwZWNpYWwNCithbGxvY2F0ZWQgc2VjdGlvbiBhbmQgdGhl IGR5bmFtaWMgbGlua2VyIGNvdWxkIGRvIHNvbWUgbWFnaWMgdG8gbG9jYXRl IGl0LCBidXQNCitpdCB3b3VsZCBtZWFuIHN0YW5kYXJkIHJlbG9jYXRpb24g aGFuZGxpbmcgY29kZSBpbiB0aGUgZHluYW1pYyBsaW5rZXIgY2Fubm90DQor YmUgdXNlZCBmb3IgcmVsb2NhdGlvbiBwcm9jZXNzaW5nIG9mIHByZWxpbmtl ZCBzaGFyZWQgbGlicmFyaWVzIHdoZXJlIHByZWxpbmtpbmcNCitpbmZvcm1h dGlvbiBjYW5ub3QgYmUgdXNlZC4NCisNCitTbyBwcmVsaW5rIGluIHRoaXMg Y2FzZSBjb252ZXJ0cyB0aGUgd2hvbGUgLnJlbC5keW4gc2VjdGlvbiBpbnRv IHRoZSBSRUxBDQorZm9ybWF0LCB0aGUgYWRkZW5kIGlzIHN0b3JlZCBpbiBy X2FkZGVuZCBmaWVsZCBhbmQgd2hlbiBkb2luZyByZWxvY2F0aW9uDQorcHJv Y2Vzc2luZywgaXQgcmVhbGx5IGRvZXNu4oCZdCBtYXR0ZXIgd2hhdCB2YWx1 ZSBpcyBhdCB0aGUgbWVtb3J5IGxvY2F0aW9uDQorcG9pbnRlZCBieSByX29m ZnNldC4NCisNCitUaGUgZGlzYWR2YW50YWdlIG9mIHRoaXMgaXMgdGhhdCB0 aGUgcmVsb2NhdGlvbiBzZWN0aW9uIGdyZXcgYnkgNTAlLiBJZg0KK3ByZWxp bmtpbmcgaW5mb3JtYXRpb24gY2FuIGJlIHVzZWQsIGl0IHNob3VsZG7igJl0 IG1hdHRlciBtdWNoLCBzaW5jZSB0aGUNCitzZWN0aW9uIGlzIG5ldmVyIGxv YWRlZCBhdCBydW50aW1lIGJlY2F1c2UgaXQgaXMgbm90IGFjY2Vzc2VkLg0K Kw0KK0lmIHByZWxpbmtpbmcgY2Fubm90IGJlIHVzZWQsIHdoZXRoZXIgYmVj YXVzZSBpdCBpcyBvdXQgb2YgZGF0ZSBvciBiZWNhdXNlIHRoZQ0KK3NoYXJl ZCBsaWJyYXJ5IGhhcyBiZWVuIGxvYWRlZCBieSBkbG9wZW4sIGl0IHdpbGwg aW5jcmVhc2UgbWVtb3J5IGZvb3RwcmludCwNCitidXQgaXQgaXMgcmVhZC1v bmx5IG1lbW9yeSB3aGljaCBpcyB0eXBpY2FsbHkgbm90IHVzZWQgYWZ0ZXIg c3RhcnR1cCBhbmQgY2FuDQorYmUgZGlzY2FyZGVkIGFzIGl0IGlzIGJhY2tl ZCBvdXQgYnkgdGhlIGZpbGUgY29udGFpbmluZyB0aGUgc2hhcmVkIGxpYnJh cnkuDQorDQorQXQgbGVhc3Qgb24gSUEtMzIsIFJFTCB0byBSRUxBIGNvbnZl cnNpb24gaXMgbm90IGFsd2F5cyBuZWNlc3NhcnkuDQorSWYgUl8zODZfMzIg YWRkZWQgaXMgb3JpZ2luYWxseSAwLCBwcmVsaW5rIGNhbiBpbnN0ZWFkIGNo YW5nZSBpdHMgdHlwZSB0bw0KK1JfMzg2X0dMT0JfREFULCB3aGljaCBpcyBh IHNpbWlsYXIgZHluYW1pYyByZWxvY2F0aW9uLCBidXQgY2FsY3VsYXRlZCBh cyBTDQoraW5zdGVhZCBvZiBTICsgQS4NCisNCitUaGVyZSBpcyBubyBzaW1p bGFyIGNvbnZlcnNpb24gZm9yIFJfMzg2X1BDMzIgcG9zc2libGUgdGhvdWdo LCBvbiB0aGUgb3RoZXINCitzaWRlIHRoaXMgcmVsb2NhdGlvbiB0eXBlIHNo b3VsZCBuZXZlciBhcHBlYXIgaW4gcG9zaXRpb24gaW5kZXBlbmRlbnQgc2hh cmVkDQorbGlicmFyaWVzLCBvbmx5IGluIHBvc2l0aW9uIGRlcGVuZGVudCBj b2RlLg0KKw0KK09uIEFSTSwgdGhlIHNpdHVhdGlvbiBpcyB0aGUgc2FtZSwg anVzdCB1c2luZyBkaWZmZXJlbnQgcmVsb2NhdGlvbiBuYW1lcw0KKyhSX0FS TV8zMiwgUl9BUk1fR0xPQl9EQVQgYW5kIFJfQVJNX1BDMjQpLg0KKw0KK1Ro ZSAucmVsLnBsdCBzZWN0aW9uIGRvZXNu4oCZdCBoYXZlIHRvIGJlIGNvbnZl cnRlZCB0byBSRUxBIGZvcm1hdCBvbiBlaXRoZXIgb2YNCit0aGVzZSBhcmNo aXRlY3R1cmVzLCBpZiB0aGUgY29udmVyc2lvbiBpcyBuZWVkZWQsIGFsbCBv dGhlciAucmVsLiogYWxsb2NhdGVkDQorc2VjdGlvbnMsIHdoaWNoIGhhdmUg dG8gYmUgYWRqYWNlbnQgYXMgdGhleSBhcmUgcG9pbnRlZCB0byBieSBEVF9S RUwgYW5kDQorRFRfUkVMU1ogZHluYW1pYyB0YWdzLCBoYXZlIHRvIGJlIGNv bnZlcnRlZCB0b2dldGhlci4NCisNCitUaGUgY29udmVyc2lvbiBpdHNlbGYg aXMgZmFpcmx5IGVhc3ksIHNvbWUgYXJjaGl0ZWN0dXJlIHNwZWNpZmljIGNv ZGUganVzdCBoYXMNCit0byBmZXRjaCB0aGUgb3JpZ2luYWwgYWRkZW5kIGZy b20gbWVtb3J5IHBvaW50ZWQgYnkgdGhlIHJlbG9jYXRpb24gYW5kIHN0b3Jl DQoraXQgaW50byByX2FkZGVuZCBmaWVsZCAob3IgY2xlYXIgcl9hZGRlbmQg aWYgdGhlIHBhcnRpY3VsYXIgcmVsb2NhdGlvbiB0eXBlDQorbmV2ZXIgdXNl cyB0aGUgYWRkZW5kKS4NCisNCitUaGUgbWFpbiBwcm9ibGVtIGlzIHRoYXQg d2hlbiB0aGUgY29udmVyc2lvbiBoYXBwZW5zLCB0aGUgLnJlbC5keW4gc2Vj dGlvbg0KK2dyb3dzIGJ5IDUwJSBhbmQgdGhlcmUgbmVlZHMgdG8gYmUgcm9v bSBmb3IgdGhhdCBpbiB0aGUgcmVhZC1vbmx5IGxvYWRhYmxlDQorc2VnbWVu dCBvZiB0aGUgc2hhcmVkIGxpYnJhcnkuDQorDQorSW4gc2hhcmVkIGxpYnJh cmllcyBpdCBpcyBhbHdheXMgcG9zc2libGUgdG8gZ3JvdyB0aGUgZmlyc3Qg cmVhZC1vbmx5IFBUX0xPQUQNCitzZWdtZW50IGJ5IGFkZGluZyB0aGUgYWRk aXRpb25hbCBkYXRhIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIHJlYWQtb25s eQ0KK3NlZ21lbnQsIGFzIHRoZSBzaGFyZWQgbGlicmFyeSBpcyByZWxvY2F0 YWJsZS4NCisNCitQcmVsaW5rIGNhbiByZWxvY2F0ZSB0aGUgd2hvbGUgc2hh cmVkIGxpYnJhcnkgdG8gYSBoaWdoZXIgYWRkcmVzcyB0aGFuIGl0IGhhcw0K K2Fzc2lnbmVkIGZvciBpdC4gVGhlIGZpbGUgb2Zmc2V0cyBvZiBhbGwgc2Vj dGlvbnMgYW5kIHRoZSBzZWN0aW9uIGhlYWRlciB0YWJsZQ0KK2ZpbGUgb2Zm c2V0IG5lZWQgdG8gYmUgaW5jcmVhc2VkLCBidXQgdGhlIEVMRiBoZWFkZXIg YW5kIHByb2dyYW0gaGVhZGVycyBuZWVkDQordG8gc3RheSBhdCB0aGUgYmVn aW5uaW5nIG9mIHRoZSBmaWxlLg0KKw0KK1RoZSByZWxvY2F0aW9uIHNlY3Rp b24gY2FuIHRoZW4gYmUgbW92ZWQgdG8gdGhlIG5ld2x5IGNyZWF0ZWQgc3Bh Y2UgYmV0d2Vlbg0KK3RoZSBlbmQgb2YgdGhlIHByb2dyYW0gaGVhZGVyIHRh YmxlIGFuZCB0aGUgZmlyc3Qgc2VjdGlvbi4gTW92aW5nIHRoZSBzZWN0aW9u DQorZnJvbSB0aGUgb2xkIGxvY2F0aW9uIHRvIHRoZSBuZXdseSBjcmVhdGVk IHNwYWNlIHdvdWxkIGxlYXZlIG9mdGVuIHZlcnkgYmlnDQorZ2FwIGluIHZp cnR1YWwgYWRkcmVzcyBzcGFjZSBhcyB3ZWxsIGFzIGluIHRoZSBmaWxlIGF0 IHRoZSBvbGQgbG9jYXRpb24gb2YgdGhlDQorcmVsb2NhdGlvbiBzZWN0aW9u Lg0KKw0KK0ZvcnR1bmF0ZWx5IHRoZSBsaW5rZXIgdHlwaWNhbGx5IHB1dHMg c3BlY2lhbCBFTEYgc2VjdGlvbnMgaW5jbHVkaW5nIGFsbG9jYXRlZA0KK3Jl bG9jYXRpb24gc2VjdGlvbiBiZWZvcmUgdGhlIGNvZGUgc2VjdGlvbiBhbmQg b3RoZXIgcmVhZC1vbmx5IHNlY3Rpb25zIHVuZGVyDQordXNlcuKAmXMgY29u dHJvbC4NCisNCitUaGVzZSBzcGVjaWFsIHNlY3Rpb25zIGFyZSBpbnRlbmRl ZCBmb3IgZHluYW1pYyBsaW5raW5nIG9ubHkuIFRoZWlyIGFkZHJlc3Nlcw0K K2FyZSBzdG9yZWQganVzdCBpbiB0aGUgLmR5bmFtaWMgc2VjdGlvbiBhbmQg cHJlbGluayBjYW4gZWFzaWx5IGFkanVzdCB0aGVtDQordGhlcmUuIFRoZXJl IGlzIG5vIG5lZWQgZm9yIGEgc2hhcmVkIGxpYnJhcnkgdG8gc3RvcmUgYWRk cmVzcyBvZiBvbmUgb2YgdGhlDQorc3BlY2lhbCBzZWN0aW9ucyBpbnRvIGl0 cyBjb2RlIG9yIGRhdGEgc2VjdGlvbnMgYW5kIGV4aXN0aW5nIGxpbmtlcnMg aW4gZmFjdA0KK2RvbuKAmXQgY3JlYXRlIHN1Y2ggcmVmZXJlbmNlcy4NCisN CitXaGVuIGdyb3dpbmcgdGhlIHJlbG9jYXRpb24gc2VjdGlvbiwgcHJlbGlu ayBjaGVja3Mgd2hldGhlciBhbGwgc2VjdGlvbnMNCitiZWZvcmUgdGhlIHJl bG9jYXRpb24gc2VjdGlvbiBhcmUgc3BlY2lhbCBhbmQgaWYgdGhleSBhcmUs IGp1c3QgbW92ZXMgdGhlbQ0KK3RvIGxvd2VyIGFkZHJlc3Nlcywgc28gdGhh dCB0aGUgbmV3bHkgY3JlYXRlZCBzcGFjZSBpcyByaWdodCBhYm92ZSB0aGUN CityZWxvY2F0aW9uIHNlY3Rpb24uDQorDQorWyBBcyBzcGVjaWFsIHNlY3Rp b25zIHByZWxpbmsgY29uc2lkZXJzIHNlY3Rpb25zIHdpdGggU0hUX05PVEUs IFNIVF9IQVNILA0KKyAgU0hUX0RZTlNZTSwgU0hUX1NUUlRBQiwgU0hUX0dO VV92ZXJkZWYsIFNIVF9HTlVfdmVybmVlZCwgU0hUX0dOVV92ZXJzeW0sDQor ICBTSFRfUkVMIG9yIFNIVF9SRUxBIHR5cGUgb3IgdGhlIC5pbnRlcnAgc2Vj dGlvbi4gXQ0KKw0KK1RoZSBhZHZhbnRhZ2UgaXMgdGhhdCBpbnN0ZWFkIG9m IG1vdmluZyBhbGwgc2VjdGlvbnMgYnkgdGhlIHNpemUgb2YgdGhlIG5ldw0K K3JlbG9jYXRpb24gc2VjdGlvbiB0aGV5IGNhbiBiZSBhZGp1c3RlZCBpZGVh bGx5IGp1c3QgYnkgdGhlIGRpZmZlcmVuY2UgYmV0d2Vlbg0KK29sZCBhbmQg bmV3IHJlbG9jYXRpb24gc2VjdGlvbiBzaXplLg0KKw0KK1RoZXJlIGFyZSB0 d28gZmFjdG9ycyB3aGljaCBjYW4gaW5jcmVhc2UgdGhlIG5lY2Vzc2FyeSBh ZGp1c3RtZW50IG9mIGFsbA0KK2hpZ2hlciBzZWN0aW9ucy4NCisNCitUaGUg Zmlyc3QgaXMgcmVxdWlyZWQgc2VjdGlvbiBhbGlnbm1lbnQgb2YgYW55IGFs bG9jYXRlZCBzZWN0aW9uIGFib3ZlIHRoZQ0KK3JlbG9jYXRpb24gc2VjdGlv bi4gUHJlbGluayBuZWVkcyB0byBmaW5kIHRoZSBoaWdoZXN0IHNlY3Rpb24g YWxpZ25tZW50IGFtb25nDQordGhvc2Ugc2VjdGlvbnMgYW5kIGluY3JlYXNl IHRoZSBhZGp1c3RtZW50IGZyb20gdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiBv bGQgYW5kDQorbmV3IHJlbG9jYXRpb24gc2VjdGlvbiB1cCB0byB0aGUgbmV4 dCBtdWx0aXBsZSBvZiB0aGF0IGFsaWdubWVudC4NCisNCitUaGUgc2Vjb25k IGZhY3RvciBpcyBvbmx5IHJlbGV2YW50IHRvIHNoYXJlZCBsaWJyYXJpZXMg d2hlcmUgbGlua2VyIG9wdGltaXplZA0KK3RoZSBkYXRhIHNlZ21lbnQgcGxh Y2VtZW50LiBUcmFkaXRpb25hbGx5IGxpbmtlciBhc3NpZ25lZCB0aGUgZW5k IGFkZHJlc3Mgb2YNCit0aGUgcmVhZC1vbmx5IHNlZ21lbnQgcGx1cyB0aGUg YXJjaGl0ZWN0dXJl4oCZcyBtYXhpbXVtIEVMRiBwYWdlIHNpemUgYXMgdGhl DQorc3RhcnQgYWRkcmVzcyBvZiB0aGUgcmVhZC13cml0ZSBzZWdtZW50Lg0K Kw0KK1doaWxlIHRoaXMgY3JlYXRlZCBzbWFsbGVzdCBmaWxlIHNpemVzIG9m IHRoZSBzaGFyZWQgbGlicmFyaWVzLCBpdCBvZnRlbg0KK3dhc3RlZCBvbmUg cGFnZSBpbiB0aGUgcmVhZC13cml0ZSBzZWdtZW50IGJlY2F1c2Ugb2YgcGFy dGlhbCBwYWdlcy4gV2hlbg0KK2xpbmtlciBvcHRpbWl6ZXMgc3VjaCB0aGF0 IGxlc3Mgc3BhY2UgaXMgd2FzdGVkIGluIHBhcnRpYWwgcGFnZXMsIHRoZSBk aXN0YW5jZQ0KK2JldHdlZW4gcmVhZC1vbmx5IGFuZCByZWFkLXdyaXRlIHNl Z21lbnRzIGNhbiBiZSBzbWFsbGVyIHRoYW4gYXJjaGl0ZWN0dXJlDQorc3Bl Y2lmaWMgbWF4aW11bSBFTEYgcGFnZSBzaXplLg0KKw0KK1ByZWxpbmsgaGFz IHRvIHRha2UgdGhpcyBpbnRvIGFjY291bnQsIHNvIHRoYXQgd2hlbiBhZGp1 c3RpbmcgdGhlIHNlY3Rpb25zIHRoZQ0KK3JlYWQtb25seSBhbmQgcmVhZC13 cml0ZSBzZWdtZW50IGRvbuKAmXQgZW5kIHVwIG9uIHRoZSBzYW1lIHBhZ2Uu IFVuZm9ydHVuYXRlbHkNCitwcmVsaW5rIGNhbm5vdCBpbmNyZWFzZSBvciBk ZWNyZWFzZSB0aGUgZGlzdGFuY2UgYmV0d2VlbiB0aGUgcmVhZC1vbmx5IGFu ZA0KK3JlYWQtd3JpdGUgc2VnbWVudHMsIHNpbmNlIGl0IGlzIHBvc3NpYmxl IHRoYXQgdGhlIHNoYXJlZCBsaWJyYXJ5IGhhcyByZWxhdGl2ZQ0KK2FkZHJl c3NlcyBvZiBhbnkgYWxsb2NhdGVkIGNvZGUsIGRhdGEgb3IgLmJzcyBzZWN0 aW9ucyBzdG9yZWQgaW4gaXRzIHNlY3Rpb25zDQord2l0aG91dCBhbnkgcmVs b2NhdGlvbnMgd2hpY2ggd291bGQgYWxsb3cgcHJlbGluayB0byBjaGFuZ2Ug dGhlbS4NCisNCitQcmVsaW5rIGhhcyB0byBtb3ZlIGFsbCBzZWN0aW9ucyBz dGFydGluZyB3aXRoIHRoZSBmaXJzdCBhbGxvY2F0ZWQNCitTSFRfUFJPR0JJ VFMgc2VjdGlvbiBvdGhlciB0aGFuIC5pbnRlcnAgdXAgdG8gdGhlIGxhc3Qg YWxsb2NhdGVkIFNIVF9QUk9HQklUUw0KK29yIFNIVF9OT0JJVFMgc2VjdGlv biBhcyBhIGJsb2NrIGFuZCB0aHVzIG5lZWRzIHRvIGluY3JlYXNlIHRoZSBh ZGp1c3RtZW50IGluDQorc3RlcHMgb2YgdGhlIGhpZ2hlc3Qgc2VjdGlvbiBh bGlnbm1lbnQgYXMgbWFueSB0aW1lcyB0aW1lcyBhcyBuZWVkZWQgc28gdGhh dA0KK3RoZSBzZWdtZW50cyBlbmQgdXAgaW4gZGlmZmVyZW50IHBhZ2VzLg0K Kw0KK0JlbG93IGFyZSAzIGV4YW1wbGVzOg0KKw0KKyAgJCBjYXQgPiB0ZXN0 MS5jIDw8RU9GDQorICBpbnQgaVsyXSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVk ICgzMikpKTsNCisgICNkZWZpbmUgSjEoTikgaW50ICpqIyNOID0gJmlbMV07 DQorICAjZGVmaW5lIEoyKE4pIEoxKE4jIzApIEoxKE4jIzEpIEoxKE4jIzIp IEoxKE4jIzMpIEoxKE4jIzQpDQorICAjZGVmaW5lIEozKE4pIEoyKE4jIzAp IEoyKE4jIzEpIEoyKE4jIzIpIEoyKE4jIzMpIEoyKE4jIzQpDQorICAjZGVm aW5lIEo0KE4pIEozKE4jIzApIEozKE4jIzEpIEozKE4jIzIpIEozKE4jIzMp IEozKE4jIzQpDQorICBKNCgwKSBKNCgxKSBKMygyKSBKMygzKSBKMSg0KQ0K KyAgY29uc3QgaW50IGxbMjU2XSA9IHsgWzEwXSA9IDEgfTsNCisgIC8qIFB1 dCBhIHplcm8gc2l6ZWQgc2VjdGlvbiBhdCB0aGUgZW5kIG9mIHJlYWQtb25s eSBzZWdtZW50LA0KKyAgICAgc28gdGhhdCB0aGUgZW5kIGFkZHJlc3Mgb2Yg dGhlIHNlZ21lbnQgaXMgcHJpbnRlZC4gKi8NCisgIGFzbSAo4oCdLnNlY3Rp b24gcm9fc2VnX2VuZCwgXOKAnWFc4oCdOyAucHJldmlvdXPigJ0pOw0KKyAg RU9GDQorDQorICAkIGdjYyAtc2hhcmVkIC1PMiAtbm9zdGRsaWIgLWZwaWMg LW8gdGVzdDEuc28gdGVzdDEuYw0KKyAgJCByZWFkZWxmIC1TIHRlc3QxLnNv IHwgZ3JlcCDigJleIFxb4oCZDQorICBbTnJdIE5hbWUgICAgICAgIFR5cGUg ICAgIEFkZHIgICAgIE9mZiAgICBTaXplICAgRVMgRmxnIExrIEluZiBBbA0K KyAgWyAwXSAgICAgICAgICAgICBOVUxMICAgICAwMDAwMDAwMCAwMDAwMDAg MDAwMDAwIDAwIDAgICAgMCAgMA0KKyAgWyAxXSAuaGFzaCAgICAgICBIQVNI ICAgICAwMDAwMDBiNCAwMDAwYjQgMDAwOTMwIDA0IEEgICAgMiAgMCAgIDQN CisgIFsgMl0gLmR5bnN5bSAgICAgRFlOU1lNICAgMDAwMDA5ZTQgMDAwOWU0 IDAwMTQzMCAxMCBBICAgIDMgIGQgICA0DQorICBbIDNdIC5keW5zdHIgICAg IFNUUlRBQiAgIDAwMDAxZTE0IDAwMWUxNCAwMDA3MzUgMDAgQSAgICAwICAw ICAgMQ0KKyAgWyA0XSAucmVsLmR5biAgICBSRUwgICAgICAwMDAwMjU0YyAw MDI1NGMgMDAwOTY4IDA4IEEgICAgMiAgMCAgIDQNCisgIFsgNV0gLnRleHQg ICAgICAgUFJPR0JJVFMgMDAwMDJlYjQgMDAyZWI0IDAwMDAwMCAwMCBBWCAg IDAgIDAgICA0DQorICBbIDZdIC5yb2RhdGEgICAgIFBST0dCSVRTIDAwMDAy ZWMwIDAwMmVjMCAwMDA0MDAgMDAgQSAgICAwICAwICAzMg0KKyAgWyA3XSAg cm9fc2VnX2VuZCBQUk9HQklUUyAwMDAwMzJjMCAwMDMyYzAgMDAwMDAwIDAw IEEgICAgMCAgMCAgIDENCisgIFsgOF0gLmRhdGEgICAgICAgUFJPR0JJVFMg MDAwMDQyYzAgMDAzMmMwIDAwMDRiNCAwMCBXQSAgIDAgIDAgICA0DQorICBb IDldIC5keW5hbWljICAgIERZTkFNSUMgIDAwMDA0Nzc0IDAwMzc3NCAwMDAw NzAgMDggV0EgICAzICAwICAgNA0KKyAgWzEwXSAuZ290ICAgICAgICBQUk9H QklUUyAwMDAwNDdlNCAwMDM3ZTQgMDAwMDBjIDA0IFdBICAgMCAgMCAgIDQN CisgIFsxMV0gLmJzcyAgICAgICAgTk9CSVRTICAgMDAwMDQ4MDAgMDAzODAw IDAwMDAwOCAwMCBXQSAgIDAgIDAgIDMyDQorICBbMTJdIC5jb21tZW50ICAg IFBST0dCSVRTIDAwMDAwMDAwIDAwMzgwMCAwMDAwMzMgMDAgICAgICAwICAw ICAgMQ0KKyAgWzEzXSAuc2hzdHJ0YWIgICBTVFJUQUIgICAwMDAwMDAwMCAw MDM4MzMgMDAwMDc1IDAwICAgICAgMCAgMCAgIDENCisgIFsxNF0gLnN5bXRh YiAgICAgU1lNVEFCICAgMDAwMDAwMDAgMDAzYjI4IDAwMTQ3MCAxMCAgICAg MTUgMTEgICA0DQorICBbMTVdIC5zdHJ0YWIgICAgIFNUUlRBQiAgIDAwMDAw MDAwIDAwNGY5OCAwMDA3NDIgMDAgICAgICAwICAwICAgMQ0KKw0KKyAgJCBy ZWFkZWxmIC1sIHRlc3QxLnNvIHwgZ3JlcCBMT0FEDQorICAgIExPQUQgICAg MHgwMDAwMDAgMHgwMDAwMDAwMCAweDAwMDAwMDAwIDB4MDMyYzAgMHgwMzJj MCBSIEUgMHgxMDAwDQorICAgIExPQUQgICAgMHgwMDMyYzAgMHgwMDAwNDJj MCAweDAwMDA0MmMwIDB4MDA1MzAgMHgwMDU0OCBSVyAweDEwMDANCisNCisg ICQgcHJlbGluayAtTiAuL3Rlc3QxLnNvDQorICAkIHJlYWRlbGYgLWwgdGVz dDEuc28gfCBncmVwIExPQUQNCisgICAgTE9BRCAgICAweDAwMDAwMCAweDAy MDAwMDAwIDB4MDIwMDAwMDAgMHgwMzc4MCAweDAzNzgwIFIgRSAweDEwMDAN CisgICAgTE9BRCAgICAweDAwMzc4MCAweDAyMDA0NzgwIDB4MDIwMDQ3ODAg MHgwMDUzMCAweDAwNTQ4IFJXIDB4MTAwMA0KKw0KKyAgJCByZWFkZWxmIC1T IHRlc3QxLnNvIHwgZ3JlcCDigJleIFxb4oCZDQorICBbTnJdIE5hbWUgICAg ICAgICAgICAgIFR5cGUgICAgICAgIEFkZHIgICAgIE9mZiAgICBTaXplICAg RVMgRmxnICBMayBJbmYgIEFsDQorICBbIDBdICAgICAgICAgICAgICAgICAg IE5VTEwgICAgICAgIDAwMDAwMDAwIDAwMDAwMCAwMDAwMDAgMDAgICAgICAg MCAgIDAgICAwDQorICBbIDFdIC5oYXNoICAgICAgICAgICAgIEhBU0ggICAg ICAgIDAyMDAwMGI0IDAwMDBiNCAwMDA5MzAgMDQgQSAgICAgMiAgIDAgICA0 DQorICBbIDJdIC5keW5zeW0gICAgICAgICAgIERZTlNZTSAgICAgIDAyMDAw OWU0IDAwMDllNCAwMDE0MzAgMTAgQSAgICAgMyAgIGQgICA0DQorICBbIDNd IC5keW5zdHIgICAgICAgICAgIFNUUlRBQiAgICAgIDAyMDAxZTE0IDAwMWUx NCAwMDA3MzUgMDAgQSAgICAgMCAgIDAgICAxDQorICBbIDRdIC5yZWwuZHlu ICAgICAgICAgIFJFTEEgICAgICAgIDAyMDAyNTRjIDAwMjU0YyAwMDBlMWMg MGMgQSAgICAgMiAgIDAgICA0DQorICBbIDVdIC50ZXh0ICAgICAgICAgICAg IFBST0dCSVRTICAgIDAyMDAzMzc0IDAwMzM3NCAwMDAwMDAgMDAgQVggICAg MCAgIDAgICA0DQorICBbIDZdIC5yb2RhdGEgICAgICAgICAgIFBST0dCSVRT ICAgIDAyMDAzMzgwIDAwMzM4MCAwMDA0MDAgMDAgQSAgICAgMCAgIDAgIDMy DQorICBbIDddIHJvX3NlZ19lbmQgICAgICAgIFBST0dCSVRTICAgIDAyMDAz NzgwIDAwMzc4MCAwMDAwMDAgMDAgQSAgICAgMCAgIDAgICAxDQorICBbIDhd IC5kYXRhICAgICAgICAgICAgIFBST0dCSVRTICAgIDAyMDA0NzgwIDAwMzc4 MCAwMDA0YjQgMDAgV0EgICAgMCAgIDAgICA0DQorICBbIDldIC5keW5hbWlj ICAgICAgICAgIERZTkFNSUMgICAgIDAyMDA0YzM0IDAwM2MzNCAwMDAwNzAg MDggV0EgICAgMyAgIDAgICA0DQorICBbMTBdIC5nb3QgICAgICAgICAgICAg IFBST0dCSVRTICAgIDAyMDA0Y2E0IDAwM2NhNCAwMDAwMGMgMDQgV0EgICAg MCAgIDAgICA0DQorICBbMTFdIC5ic3MgICAgICAgICAgICAgIE5PQklUUyAg ICAgIDAyMDA0Y2MwIDAwM2NjMCAwMDAwMDggMDAgV0EgICAgMCAgIDAgIDMy DQorICBbMTJdIC5jb21tZW50ICAgICAgICAgIFBST0dCSVRTICAgIDAwMDAw MDAwIDAwM2NjMCAwMDAwMzMgMDAgICAgICAgMCAgIDAgICAxDQorICBbMTNd IC5nbnUubGlibGlzdCAgICAgIEdOVV9MSUJMSVNUIDAwMDAwMDAwIDAwM2Nm MyAwMDAwMDAgMTQgICAgICAxNCAgIDAgICA0DQorICBbMTRdIC5nbnUubGli c3RyICAgICAgIFNUUlRBQiAgICAgIDAwMDAwMDAwIDAwM2NmMyAwMDAwMDAg MDAgICAgICAgMCAgIDAgICAxDQorICBbMTVdIC5nbnUucHJlbGlua191bmRv IFBST0dCSVRTICAgIDAwMDAwMDAwIDAwM2NmNCAwMDAzMGMgMDEgICAgICAg MCAgIDAgICA0DQorICBbMTZdIC5zaHN0cnRhYiAgICAgICAgIFNUUlRBQiAg ICAgIDAwMDAwMDAwIDAwNDAwMyAwMDAwYTAgMDAgICAgICAgMCAgIDAgICAx DQorICBbMTddIC5zeW10YWIgICAgICAgICAgIFNZTVRBQiAgICAgIDAwMDAw MDAwIDAwNDNhMCAwMDE0NzAgMTAgICAgICAxOCAgMTEgICA0DQorICBbMThd IC5zdHJ0YWIgICAgICAgICAgIFNUUlRBQiAgICAgIDAwMDAwMDAwIDAwNTgx MCAwMDA3NDIgMDAgICAgICAgMCAgIDAgICAxDQorDQorR3Jvd2luZyByZWFk LW9ubHkgc2VnbWVudCB3aXRoIHNlZ21lbnQgZGlzdGFuY2Ugb25lIHBhZ2UN CitGaWd1cmUgMTogR3Jvd2luZyByZWFkLW9ubHkgc2VnbWVudCB3aXRoIHNl Z21lbnQgZGlzdGFuY2Ugb25lIHBhZ2UNCisNCitJbiB0aGlzIGV4YW1wbGUg dGhlIHJlYWQtd3JpdGUgc2VnbWVudCBzdGFydHMgYXQgYWRkcmVzcyAweDQy YzAsIHdoaWNoIGlzIG9uZQ0KK3BhZ2UgYWJvdmUgdGhlIGVuZCBvZiByZWFk LW9ubHkgc2VnbWVudC4gUHJlbGluayBuZWVkcyB0byBncm93IHRoZSByZWFk LW9ubHkNCitQVF9MT0FEIHNlZ21lbnQgYnkgNTAlIG9mIC5yZWwuZHluIHNp emUsIGkuZS4gMHg0YjQgYnl0ZXMuIFByZWxpbmsganVzdCBuZWVkcw0KK3Rv IHJvdW5kIHRoYXQgdXAgZm9yIHRoZSBoaWdoZXN0IGFsaWdubWVudCAoMzIg Ynl0ZXMgcmVxdWlyZWQgYnkgLnJvZGF0YSBvciAuYnNzDQorc2VjdGlvbnMp IGFuZCBtb3ZlcyBhbGwgc2VjdGlvbnMgYWJvdmUgLnJlbC5keW4gYnkgMHg0 YzAgYnl0ZXMuDQorDQorICAkIGNhdCA+IHRlc3QyLmMgPDxFT0YNCisgIGlu dCBpWzJdIF9fYXR0cmlidXRlX18oKGFsaWduZWQgKDMyKSkpOw0KKyAgI2Rl ZmluZSBKMShOKSBpbnQgKmojI04gPSAmaVsxXTsNCisgICNkZWZpbmUgSjIo TikgSjEoTiMjMCkgSjEoTiMjMSkgSjEoTiMjMikgSjEoTiMjMykgSjEoTiMj NCkNCisgICNkZWZpbmUgSjMoTikgSjIoTiMjMCkgSjIoTiMjMSkgSjIoTiMj MikgSjIoTiMjMykgSjIoTiMjNCkNCisgICNkZWZpbmUgSjQoTikgSjMoTiMj MCkgSjMoTiMjMSkgSjMoTiMjMikgSjMoTiMjMykgSjMoTiMjNCkNCisgIEo0 KDApIEo0KDEpIEozKDIpIEozKDMpIEoxKDQpDQorICBjb25zdCBpbnQgbFsy NTZdID0geyBbMTBdID0gMSB9Ow0KKyAgaW50IGtbNjcwXTsNCisgIGFzbSAo 4oCdLnNlY3Rpb24gcm9fc2VnX2VuZCwgXOKAnWFc4oCdOyAucHJldmlvdXPi gJ0pOw0KKyAgRU9GDQorDQorICAkIGdjYyAtc2hhcmVkIC1PMiAtbm9zdGRs aWIgLWZwaWMgLW8gdGVzdDIuc28gdGVzdDIuYw0KKyAgJCByZWFkZWxmIC1T IHRlc3QyLnNvIHwgZ3JlcCDigJleIFxb4oCZDQorICBbTnJdIE5hbWUgICAg ICAgICAgICAgIFR5cGUgICAgICAgIEFkZHIgICAgIE9mZiAgICBTaXplICAg RVMgRmxnICBMayBJbmYgIEFsDQorICBbIDBdICAgICAgICAgICAgICAgICAg IE5VTEwgICAgICAgIDAwMDAwMDAwIDAwMDAwMCAwMDAwMDAgMDAgICAgICAg MCAgIDAgICAwDQorICBbIDFdIC5oYXNoICAgICAgICAgICAgIEhBU0ggICAg ICAgIDAwMDAwMGI0IDAwMDBiNCAwMDA5MzQgMDQgQSAgICAgMiAgIDAgICA0 DQorICBbIDJdIC5keW5zeW0gICAgICAgICAgIERZTlNZTSAgICAgIDAwMDAw OWU4IDAwMDllOCAwMDE0NDAgMTAgQSAgICAgMyAgIGQgICA0DQorICBbIDNd IC5keW5zdHIgICAgICAgICAgIFNUUlRBQiAgICAgIDAwMDAxZTI4IDAwMWUy OCAwMDA3MzcgMDAgQSAgICAgMCAgIDAgICAxDQorICBbIDRdIC5yZWwuZHlu ICAgICAgICAgIFJFTCAgICAgICAgIDAwMDAyNTYwIDAwMjU2MCAwMDA5Njgg MDggQSAgICAgMiAgIDAgICA0DQorICBbIDVdIC50ZXh0ICAgICAgICAgICAg IFBST0dCSVRTICAgIDAwMDAyZWM4IDAwMmVjOCAwMDAwMDAgMDAgQVggICAg MCAgIDAgICA0DQorICBbIDZdIC5yb2RhdGEgICAgICAgICAgIFBST0dCSVRT ICAgIDAwMDAyZWUwIDAwMmVlMCAwMDA0MDAgMDAgQSAgICAgMCAgIDAgIDMy DQorICBbIDddIHJvX3NlZ19lbmQgICAgICAgIFBST0dCSVRTICAgIDAwMDAz MmUwIDAwMzJlMCAwMDAwMDAgMDAgQSAgICAgMCAgIDAgICAxDQorICBbIDhd IC5kYXRhICAgICAgICAgICAgIFBST0dCSVRTICAgIDAwMDA0MDAwIDAwNDAw MCAwMDA0YjQgMDAgV0EgICAgMCAgIDAgICA0DQorICBbIDldIC5keW5hbWlj ICAgICAgICAgIERZTkFNSUMgICAgIDAwMDA0NGI0IDAwNDRiNCAwMDAwNzAg MDggV0EgICAgMyAgIDAgICA0DQorICBbMTBdIC5nb3QgICAgICAgICAgICAg IFBST0dCSVRTICAgIDAwMDA0NTI0IDAwNDUyNCAwMDAwMGMgMDQgV0EgICAg MCAgIDAgICA0DQorICBbMTFdIC5ic3MgICAgICAgICAgICAgIE5PQklUUyAg ICAgIDAwMDA0NTQwIDAwNDU0MCAwMDBhODggMDAgV0EgICAgMCAgIDAgIDMy DQorICBbMTJdIC5jb21tZW50ICAgICAgICAgIFBST0dCSVRTICAgIDAwMDAw MDAwIDAwNDU0MCAwMDAwMzMgMDAgICAgICAgMCAgIDAgICAxDQorICBbMTNd IC5zaHN0cnRhYiAgICAgICAgIFNUUlRBQiAgICAgIDAwMDAwMDAwIDAwNDU3 MyAwMDAwNzUgMDAgICAgICAgMCAgIDAgICAxDQorICBbMTRdIC5zeW10YWIg ICAgICAgICAgIFNZTVRBQiAgICAgIDAwMDAwMDAwIDAwNDg2OCAwMDE0ODAg MTAgICAgICAxNSAgMTEgICA0DQorICBbMTVdIC5zdHJ0YWIgICAgICAgICAg IFNUUlRBQiAgICAgIDAwMDAwMDAwIDAwNWNlOCAwMDA3NDQgMDAgICAgICAg MCAgIDAgICAxDQorDQorICAkIHJlYWRlbGYgLWwgdGVzdDIuc28gfCBncmVw IExPQUQNCisgICAgTE9BRCAgICAweDAwMDAwMCAweDAwMDAwMDAwIDB4MDAw MDAwMDAgMHgwMzJlMCAweDAzMmUwIFIgRSAweDEwMDANCisgICAgTE9BRCAg ICAweDAwNDAwMCAweDAwMDA0MDAwIDB4MDAwMDQwMDAgMHgwMDUzMCAweDAw ZmM4IFJXIDB4MTAwMA0KKw0KKyAgJCBwcmVsaW5rIC1OIC4vdGVzdDIuc28N CisgICQgcmVhZGVsZiAtbCB0ZXN0Mi5zbyB8IGdyZXAgTE9BRA0KKyAgICBM T0FEICAgIDB4MDAwMDAwIDB4MDIwMDAwMDAgMHgwMjAwMDAwMCAweDAzN2Ew IDB4MDM3YTAgUiBFIDB4MTAwMA0KKyAgICBMT0FEICAgIDB4MDA0NGMwIDB4 MDIwMDQ0YzAgMHgwMjAwNDRjMCAweDAwNTMwIDB4MDBmYzggUlcgMHgxMDAw DQorDQorICAkIHJlYWRlbGYgLVMgdGVzdDIuc28gfCBncmVwIOKAmV4gXFvi gJkNCisgIFtOcl0gTmFtZSAgICAgICAgICAgICAgVHlwZSAgICAgICAgQWRk ciAgICAgT2ZmICAgIFNpemUgICBFUyBGbGcgIExrIEluZiAgQWwNCisgIFsg MF0gICAgICAgICAgICAgICAgICAgTlVMTCAgICAgICAgMDAwMDAwMDAgMDAw MDAwIDAwMDAwMCAwMCAgICAgICAwICAgMCAgIDANCisgIFsgMV0gLmhhc2gg ICAgICAgICAgICAgSEFTSCAgICAgICAgMDIwMDAwYjQgMDAwMGI0IDAwMDkz NCAwNCBBICAgICAyICAgMCAgIDQNCisgIFsgMl0gLmR5bnN5bSAgICAgICAg ICAgRFlOU1lNICAgICAgMDIwMDA5ZTggMDAwOWU4IDAwMTQ0MCAxMCBBICAg ICAzICAgZCAgIDQNCisgIFsgM10gLmR5bnN0ciAgICAgICAgICAgU1RSVEFC ICAgICAgMDIwMDFlMjggMDAxZTI4IDAwMDczNyAwMCBBICAgICAwICAgMCAg IDENCisgIFsgNF0gLnJlbC5keW4gICAgICAgICAgUkVMQSAgICAgICAgMDIw MDI1NjAgMDAyNTYwIDAwMGUxYyAwYyBBICAgICAyICAgMCAgIDQNCisgIFsg NV0gLnRleHQgICAgICAgICAgICAgUFJPR0JJVFMgICAgMDIwMDMzODggMDAz Mzg4IDAwMDAwMCAwMCBBWCAgICAwICAgMCAgIDQNCisgIFsgNl0gLnJvZGF0 YSAgICAgICAgICAgUFJPR0JJVFMgICAgMDIwMDMzYTAgMDAzM2EwIDAwMDQw MCAwMCBBICAgICAwICAgMCAgMzINCisgIFsgN10gcm9fc2VnX2VuZCAgICAg ICAgUFJPR0JJVFMgICAgMDIwMDM3YTAgMDAzN2EwIDAwMDAwMCAwMCBBICAg ICAwICAgMCAgIDENCisgIFsgOF0gLmRhdGEgICAgICAgICAgICAgUFJPR0JJ VFMgICAgMDIwMDQ0YzAgMDA0NGMwIDAwMDRiNCAwMCBXQSAgICAwICAgMCAg IDQNCisgIFsgOV0gLmR5bmFtaWMgICAgICAgICAgRFlOQU1JQyAgICAgMDIw MDQ5NzQgMDA0OTc0IDAwMDA3MCAwOCBXQSAgICAzICAgMCAgIDQNCisgIFsx MF0gLmdvdCAgICAgICAgICAgICAgUFJPR0JJVFMgICAgMDIwMDQ5ZTQgMDA0 OWU0IDAwMDAwYyAwNCBXQSAgICAwICAgMCAgIDQNCisgIFsxMV0gLmJzcyAg ICAgICAgICAgICAgTk9CSVRTICAgICAgMDIwMDRhMDAgMDA0YTAwIDAwMGE4 OCAwMCBXQSAgICAwICAgMCAgMzINCisgIFsxMl0gLmNvbW1lbnQgICAgICAg ICAgUFJPR0JJVFMgICAgMDAwMDAwMDAgMDA0YTAwIDAwMDAzMyAwMCAgICAg ICAwICAgMCAgIDENCisgIFsxM10gLmdudS5saWJsaXN0ICAgICAgR05VX0xJ QkxJU1QgMDAwMDAwMDAgMDA0YTMzIDAwMDAwMCAxNCAgICAgIDE0ICAgMCAg IDQNCisgIFsxNF0gLmdudS5saWJzdHIgICAgICAgU1RSVEFCICAgICAgMDAw MDAwMDAgMDA0YTMzIDAwMDAwMCAwMCAgICAgICAwICAgMCAgIDENCisgIFsx NV0gLmdudS5wcmVsaW5rX3VuZG8gUFJPR0JJVFMgICAgMDAwMDAwMDAgMDA0 YTM0IDAwMDMwYyAwMSAgICAgICAwICAgMCAgIDQNCisgIFsxNl0gLnNoc3Ry dGFiICAgICAgICAgU1RSVEFCICAgICAgMDAwMDAwMDAgMDA0ZDQzIDAwMDBh MCAwMCAgICAgICAwICAgMCAgIDENCisgIFsxN10gLnN5bXRhYiAgICAgICAg ICAgU1lNVEFCICAgICAgMDAwMDAwMDAgMDA1MGUwIDAwMTQ4MCAxMCAgICAg IDE4ICAxMSAgIDQNCisgIFsxOF0gLnN0cnRhYiAgICAgICAgICAgU1RSVEFC ICAgICAgMDAwMDAwMDAgMDA2NTYwIDAwMDc0NCAwMCAgICAgICAwICAgMCAg IDENCisNCitHcm93aW5nIHJlYWQtb25seSBzZWdtZW50IG5vdCByZXF1aXJp bmcgYWRkaXRpb25hbCBwYWRkaW5nDQorRmlndXJlIDI6IEdyb3dpbmcgcmVh ZC1vbmx5IHNlZ21lbnQgbm90IHJlcXVpcmluZyBhZGRpdGlvbmFsIHBhZGRp bmcNCisNCisNCitJbiB0aGUgc2Vjb25kIGV4YW1wbGUgcHJlbGluayBjYW4g Z3JvdyBieSBqdXN0IDB4NGMwIGJ5dGVzIGFzIHdlbGwsIGV2ZW4NCit0aG91 Z2ggdGhlIGRpc3RhbmNlIGJldHdlZW4gcmVhZC13cml0ZSBhbmQgcmVhZC1v bmx5IHNlZ21lbnQgaXMganVzdCAweGQyMA0KK2J5dGVzLiBXaXRoIHRoaXMg ZGlzdGFuY2UsIGh5cG90aGV0aWNhbCBhZGp1c3RtZW50IGJ5IGFueSBzaXpl IGxlc3MgdGhhbiAweGQyMQ0KK2J5dGVzIChtb2R1bG8gNDA5Nikgd291bGQg bmVlZCBqdXN0IHJvdW5kaW5nIHVwIHRvIHRoZSBuZXh0IG11bHRpcGxlIG9m IDMyDQorYnl0ZXMsIHdoaWxlIGFkanVzdG1lbnRzIGZyb20gMHhkMjEgdXAg dG8gMHhmZTAgd291bGQgcmVxdWlyZSBhZGp1c3RtZW50cyBpbg0KK211bHRp cGxlcyBvZiA0MDk2IGJ5dGVzLg0KKw0KKyAgJCBjYXQgPiB0ZXN0My5jIDw8 RU9GDQorICBpbnQgaVsyXSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkICgzMikp KTsNCisgICNkZWZpbmUgSjEoTikgaW50ICpqIyNOID0gJmlbMV07DQorICAj ZGVmaW5lIEoyKE4pIEoxKE4jIzApIEoxKE4jIzEpIEoxKE4jIzIpIEoxKE4j IzMpIEoxKE4jIzQpDQorICAjZGVmaW5lIEozKE4pIEoyKE4jIzApIEoyKE4j IzEpIEoyKE4jIzIpIEoyKE4jIzMpIEoyKE4jIzQpDQorICAjZGVmaW5lIEo0 KE4pIEozKE4jIzApIEozKE4jIzEpIEozKE4jIzIpIEozKE4jIzMpIEozKE4j IzQpDQorICBKNCgwKSBKNCgxKSBKMygyKSBKMygzKSBKMSg0KQ0KKyAgaW50 IGtbNjcwXTsNCisgIGFzbSAo4oCdLnNlY3Rpb24gcm9fc2VnX2VuZCwgXOKA nWFc4oCdOyAucHJldmlvdXPigJ0pOw0KKyAgRU9GDQorDQorICAkIGdjYyAt c2hhcmVkIC1PMiAtbm9zdGRsaWIgLWZwaWMgLW8gdGVzdDMuc28gdGVzdDMu Yw0KKyAgJCByZWFkZWxmIC1TIHRlc3QzLnNvIHwgZ3JlcCDigJleIFxb4oCZ DQorICBbTnJdIE5hbWUgICAgICAgICAgICAgIFR5cGUgICAgICAgIEFkZHIg ICAgIE9mZiAgICBTaXplICAgRVMgRmxnICBMayBJbmYgIEFsDQorICBbIDBd ICAgICAgICAgICAgICAgICAgIE5VTEwgICAgICAgIDAwMDAwMDAwIDAwMDAw MCAwMDAwMDAgMDAgICAgICAgMCAgIDAgICAwDQorICBbIDFdIC5oYXNoICAg ICAgICAgICAgIEhBU0ggICAgICAgIDAwMDAwMGI0IDAwMDBiNCAwMDA5MmMg MDQgQSAgICAgMiAgIDAgICA0DQorICBbIDJdIC5keW5zeW0gICAgICAgICAg IERZTlNZTSAgICAgIDAwMDAwOWUwIDAwMDllMCAwMDE0MjAgMTAgQSAgICAg MyAgIGMgICA0DQorICBbIDNdIC5keW5zdHIgICAgICAgICAgIFNUUlRBQiAg ICAgIDAwMDAxZTAwIDAwMWUwMCAwMDA3MzUgMDAgQSAgICAgMCAgIDAgICAx DQorICBbIDRdIC5yZWwuZHluICAgICAgICAgIFJFTCAgICAgICAgIDAwMDAy NTM4IDAwMjUzOCAwMDA5NjggMDggQSAgICAgMiAgIDAgICA0DQorICBbIDVd IC50ZXh0ICAgICAgICAgICAgIFBST0dCSVRTICAgIDAwMDAyZWEwIDAwMmVh MCAwMDAwMDAgMDAgQVggICAgMCAgIDAgICA0DQorICBbIDZdIHJvX3NlZ19l bmQgICAgICAgIFBST0dCSVRTICAgIDAwMDAyZWEwIDAwMmVhMCAwMDAwMDAg MDAgQSAgICAgMCAgIDAgICAxDQorICBbIDddIC5kYXRhICAgICAgICAgICAg IFBST0dCSVRTICAgIDAwMDAzMDAwIDAwMzAwMCAwMDA0YjQgMDAgV0EgICAg MCAgIDAgICA0DQorICBbIDhdIC5keW5hbWljICAgICAgICAgIERZTkFNSUMg ICAgIDAwMDAzNGI0IDAwMzRiNCAwMDAwNzAgMDggV0EgICAgMyAgIDAgICA0 DQorICBbIDldIC5nb3QgICAgICAgICAgICAgIFBST0dCSVRTICAgIDAwMDAz NTI0IDAwMzUyNCAwMDAwMGMgMDQgV0EgICAgMCAgIDAgICA0DQorICBbMTBd IC5ic3MgICAgICAgICAgICAgIE5PQklUUyAgICAgIDAwMDAzNTQwIDAwMzU0 MCAwMDBhODggMDAgV0EgICAgMCAgIDAgIDMyDQorICBbMTFdIC5jb21tZW50 ICAgICAgICAgIFBST0dCSVRTICAgIDAwMDAwMDAwIDAwMzU0MCAwMDAwMzMg MDAgICAgICAgMCAgIDAgICAxDQorICBbMTJdIC5zaHN0cnRhYiAgICAgICAg IFNUUlRBQiAgICAgIDAwMDAwMDAwIDAwMzU3MyAwMDAwNmQgMDAgICAgICAg MCAgIDAgICAxDQorICBbMTNdIC5zeW10YWIgICAgICAgICAgIFNZTVRBQiAg ICAgIDAwMDAwMDAwIDAwMzgzOCAwMDE0NjAgMTAgICAgICAxNCAgMTAgICA0 DQorICBbMTRdIC5zdHJ0YWIgICAgICAgICAgIFNUUlRBQiAgICAgIDAwMDAw MDAwIDAwNGM5OCAwMDA3NDIgMDAgICAgICAgMCAgIDAgICAxDQorDQorICAk IHJlYWRlbGYgLWwgdGVzdDMuc28gfCBncmVwIExPQUQNCisgICAgTE9BRCAg ICAweDAwMDAwMCAweDAwMDAwMDAwIDB4MDAwMDAwMDAgMHgwMmVhMCAweDAy ZWEwIFIgRSAweDEwMDANCisgICAgTE9BRCAgICAweDAwMzAwMCAweDAwMDAz MDAwIDB4MDAwMDMwMDAgMHgwMDUzMCAweDAwZmM4IFJXIDB4MTAwMA0KKw0K KyAgJCBwcmVsaW5rIC1OIC4vdGVzdDMuc28NCisgICQgcmVhZGVsZiAtbCB0 ZXN0My5zbyB8IGdyZXAgTE9BRA0KKyAgICBMT0FEICAgIDB4MDAwMDAwIDB4 MDIwMDAwMDAgMHgwMjAwMDAwMCAweDAzZWEwIDB4MDNlYTAgUiBFIDB4MTAw MA0KKyAgICBMT0FEICAgIDB4MDA0MDAwIDB4MDIwMDQwMDAgMHgwMjAwNDAw MCAweDAwNTMwIDB4MDBmYzggUlcgMHgxMDAwDQorDQorICAkIHJlYWRlbGYg LVMgdGVzdDMuc28gfCBncmVwIOKAmV4gXFvigJkNCisgIFtOcl0gTmFtZSAg ICAgICAgICAgICAgVHlwZSAgICAgICAgQWRkciAgICAgT2ZmICAgIFNpemUg ICBFUyBGbGcgIExrIEluZiAgQWwgDQorICBbIDBdICAgICAgICAgICAgICAg ICAgIE5VTEwgICAgICAgIDAwMDAwMDAwIDAwMDAwMCAwMDAwMDAgMDAgICAg ICAgMCAgIDAgICAwDQorICBbIDFdIC5oYXNoICAgICAgICAgICAgIEhBU0gg ICAgICAgIDAyMDAwMGI0IDAwMDBiNCAwMDA5MmMgMDQgQSAgICAgMiAgIDAg ICA0DQorICBbIDJdIC5keW5zeW0gICAgICAgICAgIERZTlNZTSAgICAgIDAy MDAwOWUwIDAwMDllMCAwMDE0MjAgMTAgQSAgICAgMyAgIGMgICA0DQorICBb IDNdIC5keW5zdHIgICAgICAgICAgIFNUUlRBQiAgICAgIDAyMDAxZTAwIDAw MWUwMCAwMDA3MzUgMDAgQSAgICAgMCAgIDAgICAxDQorICBbIDRdIC5yZWwu ZHluICAgICAgICAgIFJFTEEgICAgICAgIDAyMDAyNTM4IDAwMjUzOCAwMDBl MWMgMGMgQSAgICAgMiAgIDAgICA0DQorICBbIDVdIC50ZXh0ICAgICAgICAg ICAgIFBST0dCSVRTICAgIDAyMDAzZWEwIDAwM2VhMCAwMDAwMDAgMDAgQVgg ICAgMCAgIDAgICA0DQorICBbIDZdIHJvX3NlZ19lbmQgICAgICAgIFBST0dC SVRTICAgIDAyMDAzZWEwIDAwM2VhMCAwMDAwMDAgMDAgQSAgICAgMCAgIDAg ICAxDQorICBbIDddIC5kYXRhICAgICAgICAgICAgIFBST0dCSVRTICAgIDAy MDA0MDAwIDAwNDAwMCAwMDA0YjQgMDAgV0EgICAgMCAgIDAgICA0DQorICBb IDhdIC5keW5hbWljICAgICAgICAgIERZTkFNSUMgICAgIDAyMDA0NGI0IDAw NDRiNCAwMDAwNzAgMDggV0EgICAgMyAgIDAgICA0DQorICBbIDldIC5nb3Qg ICAgICAgICAgICAgIFBST0dCSVRTICAgIDAyMDA0NTI0IDAwNDUyNCAwMDAw MGMgMDQgV0EgICAgMCAgIDAgICA0DQorICBbMTBdIC5ic3MgICAgICAgICAg ICAgIE5PQklUUyAgICAgIDAyMDA0NTQwIDAwNDU0MCAwMDBhODggMDAgV0Eg ICAgMCAgIDAgIDMyDQorICBbMTFdIC5jb21tZW50ICAgICAgICAgIFBST0dC SVRTICAgIDAwMDAwMDAwIDAwNDU0MCAwMDAwMzMgMDAgICAgICAgMCAgIDAg ICAxDQorICBbMTJdIC5nbnUubGlibGlzdCAgICAgIEdOVV9MSUJMSVNUIDAw MDAwMDAwIDAwNDU3MyAwMDAwMDAgMTQgICAgICAxMyAgIDAgICA0DQorICBb MTNdIC5nbnUubGlic3RyICAgICAgIFNUUlRBQiAgICAgIDAwMDAwMDAwIDAw NDU3MyAwMDAwMDAgMDAgICAgICAgMCAgIDAgICAxDQorICBbMTRdIC5nbnUu cHJlbGlua191bmRvIFBST0dCSVRTICAgIDAwMDAwMDAwIDAwNDU3NCAwMDAy ZTQgMDEgICAgICAgMCAgIDAgICA0DQorICBbMTVdIC5zaHN0cnRhYiAgICAg ICAgIFNUUlRBQiAgICAgIDAwMDAwMDAwIDAwNDg1YiAwMDAwOTggMDAgICAg ICAgMCAgIDAgICAxDQorICBbMTZdIC5zeW10YWIgICAgICAgICAgIFNZTVRB QiAgICAgIDAwMDAwMDAwIDAwNGJjOCAwMDE0NjAgMTAgICAgICAxNyAgMTAg ICA0DQorICBbMTddIC5zdHJ0YWIgICAgICAgICAgIFNUUlRBQiAgICAgIDAw MDAwMDAwIDAwNjAyOCAwMDA3NDIgMDAgICAgICAgMCAgIDAgICAxDQorDQor DQorR3Jvd2luZyByZWFkLW9ubHkgc2VnbWVudCBpZiBwYWdlIHBhZGRpbmcg bmVlZGVkDQorRmlndXJlIDM6IEdyb3dpbmcgcmVhZC1vbmx5IHNlZ21lbnQg aWYgcGFnZSBwYWRkaW5nIG5lZWRlZA0KKw0KK0luIHRoZSBsYXN0IGV4YW1w bGUgdGhlIGRpc3RhbmNlIGJldHdlZW4gUFRfTE9BRCBzZWdtZW50cyBpcyB2 ZXJ5IHNtYWxsLCBqdXN0DQorMHgxNjAgYnl0ZXMgYW5kIHRoZSBhZGp1c3Rt ZW50IGhhZCB0byBiZSBkb25lIGJ5IDQwOTYgYnl0ZXMuDQorDQorPT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQ0KKw0KKzggQ29uZmxpY3RzDQor DQorQXMgc2FpZCBlYXJsaWVyLCBpZiBzeW1ib2wgbG9va3VwIG9mIHNvbWUg c3ltYm9sIGluIHBhcnRpY3VsYXIgc2hhcmVkIGxpYnJhcnkNCityZXN1bHRz IGluIGRpZmZlcmVudCB2YWx1ZXMgd2hlbiB0aGF0IHNoYXJlZCBsaWJyYXJ5 4oCZcyBuYXR1cmFsIHNlYXJjaCBzY29wZSBpcw0KK3VzZWQgYW5kIHdoZW4g dXNpbmcgc2VhcmNoIHNjb3BlIG9mIHRoZSBhcHBsaWNhdGlvbiB0aGUgRFNP IGlzIHVzZWQgaW4sIHRoaXMNCitpcyBjb25zaWRlcmVkIGEgY29uZmxpY3Qu IEhlcmUgaXMgYW4gZXhhbXBsZSBvZiBhIGNvbmZsaWN0IG9uIElBLTMyOg0K Kw0KKyAgJCBjYXQgPiB0ZXN0MS5jIDw8RU9GDQorICBpbnQgaTsNCisgIGlu dCAqaiA9ICZpOw0KKyAgaW50ICpmb28gKHZvaWQpIHsgcmV0dXJuICZpOyB9 DQorICBFT0YNCisNCisgICQgY2F0ID4gdGVzdDIuYyA8PEVPRg0KKyAgaW50 IGk7DQorICBpbnQgKmsgPSAmaTsNCisgIGludCAqYmFyICh2b2lkKSB7IHJl dHVybiAmaTsgfQ0KKyAgRU9GDQorDQorICAkIGNhdCA+IHRlc3QuYyA8PEVP Rg0KKyAgI2luY2x1ZGUgPHN0ZGlvLmg+DQorICBleHRlcm4gaW50IGksICpq LCAqaywgKmZvbyAodm9pZCksIGJhciAodm9pZCk7DQorICBpbnQgbWFpbiAo dm9pZCkNCisgIHsNCisgICNpZmRlZiBQUklOVF9JDQorICAgICAgcHJpbnRm ICjigJ0lcFxu4oCdLCAmaSk7DQorICAjZW5kaWYNCisgICAgICBwcmludGYg KOKAnSVwICVwICVwICVwXG7igJ0sIGosIGssIGZvbyAoKSwgYmFyICgpKTsN CisgIH0NCisgIEVPRg0KKw0KKyAgJCBnY2MgLW5vc3RkbGliIC1zaGFyZWQg LWZwaWMgLXMgLW8gdGVzdDEuc28gdGVzdDEuYw0KKyAgJCBnY2MgLW5vc3Rk bGliIC1zaGFyZWQgLWZwaWMgLW8gdGVzdDIuc28gdGVzdDIuYyAuL3Rlc3Qx LnNvDQorICAkIGdjYyAtbyB0ZXN0IHRlc3QuYyAuL3Rlc3QyLnNvIC4vdGVz dDEuc28NCisNCisgICQgLi90ZXN0DQorICAweDE2MTM3YyAweDE2MTM3YyAw eDE2MTM3YyAweDE2MTM3Yw0KKw0KKyAgJCByZWFkZWxmIC1yIC4vdGVzdDEu c28NCisNCisgIFJlbG9jYXRpb24gc2VjdGlvbiDigJkucmVsLmR5buKAmSBh dCBvZmZzZXQgMHgyYmMgY29udGFpbnMgMiBlbnRyaWVzOg0KKyAgT2Zmc2V0 ICAgSW5mbyAgICAgVHlwZSAgICAgICAgICAgU3ltLlZhbHVlIFN5bS5OYW1l DQorICAwMDAwMTJlNCAwMDAwMGQwMSBSXzM4Nl8zMiAgICAgICAwMDAwMTM2 OCAgaQ0KKyAgMDAwMDEzNjQgMDAwMDBkMDYgUl8zODZfR0xPQl9EQVQgMDAw MDEzNjggIGkNCisNCisgICQgcHJlbGluayAtTiAuL3Rlc3QgLi90ZXN0MS5z byAuL3Rlc3QyLnNvDQorICAkIExEX1dBUk49IExEX1RSQUNFX1BSRUxJTktJ Tkc9MSBMRF9CSU5EX05PVz0xIC9saWIvbGQtbGludXguc28uMiAuL3Rlc3Qx LnNvDQorICAuL3Rlc3QxLnNvID0+IC4vdGVzdDEuc28gKDB4MDRkYjYwMDAs IDB4MDAwMDAwMDApDQorDQorICAkIExEX1dBUk49IExEX1RSQUNFX1BSRUxJ TktJTkc9MSBMRF9CSU5EX05PVz0xIC9saWIvbGQtbGludXguc28uMiAuL3Rl c3QyLnNvDQorICAuL3Rlc3QyLnNvID0+IC4vdGVzdDIuc28gKDB4MDRkYmEw MDAsIDB4MDAwMDAwMDApDQorICAuL3Rlc3QxLnNvID0+IC4vdGVzdDEuc28g KDB4MDRkYjYwMDAsIDB4MDAwMDAwMDApDQorDQorICAkIExEX1dBUk49IExE X1RSQUNFX1BSRUxJTktJTkc9MSBMRF9CSU5EX05PVz0xIC9saWIvbGQtbGlu dXguc28uMiAuL3Rlc3QgXA0KKyAgICB8IHNlZCDigJlzL15bWzpzcGFjZTpd XSovIC/igJkNCisgICAgLi90ZXN0ICAgICA9PiAuL3Rlc3QgICAgICgweDA4 MDQ4MDAwLCAweDAwMDAwMDAwKQ0KKyAgICAuL3Rlc3QyLnNvID0+IC4vdGVz dDIuc28gKDB4MDRkYmEwMDAsIDB4MDAwMDAwMDApDQorICAgIC4vdGVzdDEu c28gPT4gLi90ZXN0MS5zbyAoMHgwNGRiNjAwMCwgMHgwMDAwMDAwMCkNCisg ICAgbGliYy5zby42ICA9PiAvbGliL3Rscy9saWJjLnNvLjYgKDB4MDBiMjIw MDAsIDB4MDAwMDAwMDApDQorICAgICAgICBUTFMoMHgxLCAweDAwMDAwMDI4 KQ0KKyAgICAvbGliL2xkLWxpbnV4LnNvLjIgPT4gL2xpYi9sZC1saW51eC5z by4yICgweDAwYjBhMDAwLCAweDAwMDAwMDAwKQ0KKw0KKyAgICQgcmVhZGVs ZiAtUyAuL3Rlc3QxLnNvIHwgZ3JlcCDigJlcLmRhdGFcfFwuZ2904oCZDQor ICAgWyA2XSAuZGF0YSBQUk9HQklUUyAwNGRiNzJlNCAwMDAyZTQgMDAwMDA0 IDAwIFdBIDAgMCA0DQorICAgWyA4XSAuZ290ICBQUk9HQklUUyAwNGRiNzM1 OCAwMDAzNTggMDAwMDEwIDA0IFdBIDAgMCA0DQorDQorICAgJCByZWFkZWxm IC1yIC4vdGVzdDEuc28NCisgICBSZWxvY2F0aW9uIHNlY3Rpb24g4oCZLnJl bC5keW7igJkgYXQgb2Zmc2V0IDB4MmJjIGNvbnRhaW5zIDIgZW50cmllczoN CisgICBPZmZzZXQgICBJbmZvICAgICBUeXBlICAgICAgICAgICBTeW0uVmFs dWUgU3ltLiBOYW1lDQorICAgMDRkYjcyZTQgMDAwMDBkMDYgUl8zODZfR0xP Ql9EQVQgMDRkYjczNjggIGkNCisgICAwNGRiNzM2NCAwMDAwMGQwNiBSXzM4 Nl9HTE9CX0RBVCAwNGRiNzM2OCAgaQ0KKw0KKyAgICQgb2JqZHVtcCAtcyAt aiAuZ290IC1qIC5kYXRhIHRlc3QxLnNvDQorICAgdGVzdDEuc286IGZpbGUg Zm9ybWF0IGVsZjMyLWkzODYNCisgICBDb250ZW50cyBvZiBzZWN0aW9uIC5k YXRhOg0KKyAgIDRkYjcyZTQgNjg3M2RiMDQgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgaHMuLg0KKyAgIENvbnRlbnRzIG9mIHNl Y3Rpb24gLmdvdDoNCisgICA0ZGI3MzU4IGU4MTIwMDAwIDAwMDAwMDAwIDAw MDAwMDAwIDY4NzNkYjA0IC4uLi4uLi4uLi4uLmhzLi4NCisNCisgICAkIHJl YWRlbGYgLXIgLi90ZXN0IHwgc2VkIOKAmS9cLmdudVwuY29uZmxpY3QvLCQh ZOKAmQ0KKyAgIFJlbG9jYXRpb24gc2VjdGlvbiDigJkuZ251LmNvbmZsaWN0 4oCZIGF0IG9mZnNldCAweDdhYyBjb250YWlucyAxOCBlbnRyaWVzOg0KKyAg IE9mZnNldCAgIEluZm8gICAgIFR5cGUgICAgIFN5bS5WYWx1ZSBTeW0uTmFt ZSArIEFkZGVuZA0KKyAgIDA0ZGI3MmU0IDAwMDAwMDAxIFJfMzg2XzMyICAg ICAgICAgICAgICAgICAgICAwNGRiYjM3Yw0KKyAgIDA0ZGI3MzY0IDAwMDAw MDAxIFJfMzg2XzMyICAgICAgICAgICAgICAgICAgICAwNGRiYjM3Yw0KKyAg IDAwYzU2ODc0IDAwMDAwMDAxIFJfMzg2XzMyICAgICAgICAgICAgICAgICAg ICBmZmZmZmZmMA0KKyAgIDAwYzU2ODc4IDAwMDAwMDAxIFJfMzg2XzMyICAg ICAgICAgICAgICAgICAgICAwMDAwMDAwMQ0KKyAgIDAwYzU2OGJjIDAwMDAw MDAxIFJfMzg2XzMyICAgICAgICAgICAgICAgICAgICBmZmZmZmZmNA0KKyAg IDAwYzU2OTAwIDAwMDAwMDAxIFJfMzg2XzMyICAgICAgICAgICAgICAgICAg ICBmZmZmZmZlYw0KKyAgIDAwYzU2OTQ4IDAwMDAwMDAxIFJfMzg2XzMyICAg ICAgICAgICAgICAgICAgICBmZmZmZmZkYw0KKyAgIDAwYzU2OTVjIDAwMDAw MDAxIFJfMzg2XzMyICAgICAgICAgICAgICAgICAgICBmZmZmZmZlMA0KKyAg IDAwYzU2OTgwIDAwMDAwMDAxIFJfMzg2XzMyICAgICAgICAgICAgICAgICAg ICBmZmZmZmZmOA0KKyAgIDAwYzU2OTg4IDAwMDAwMDAxIFJfMzg2XzMyICAg ICAgICAgICAgICAgICAgICBmZmZmZmZlNA0KKyAgIDAwYzU2OWE0IDAwMDAw MDAxIFJfMzg2XzMyICAgICAgICAgICAgICAgICAgICBmZmZmZmZkOA0KKyAg IDAwYzU2OWM0IDAwMDAwMDAxIFJfMzg2XzMyICAgICAgICAgICAgICAgICAg ICBmZmZmZmZlOA0KKyAgIDAwYzU2OWQ4IDAwMDAwMDAxIFJfMzg2XzMyICAg ICAgICAgICAgICAgICAgICAwODA0ODViOA0KKyAgIDAwYjFmNTEwIDAwMDAw MDA3IFJfMzg2X0pVTVBfU0xPVCAgICAgICAgICAgICAwMGI5MTQ2MA0KKyAg IDAwYjFmNTE0IDAwMDAwMDA3IFJfMzg2X0pVTVBfU0xPVCAgICAgICAgICAg ICAwMGI5MTA4MA0KKyAgIDAwYjFmNTE4IDAwMDAwMDA3IFJfMzg2X0pVTVBf U0xPVCAgICAgICAgICAgICAwMGI5MTc1MA0KKyAgIDAwYjFmNTFjIDAwMDAw MDA3IFJfMzg2X0pVTVBfU0xPVCAgICAgICAgICAgICAwMGI5MTJjMA0KKyAg IDAwYjFmNTIwIDAwMDAwMDA3IFJfMzg2X0pVTVBfU0xPVCAgICAgICAgICAg ICAwMGI5MTIwMA0KKw0KKyAgICQgLi90ZXN0DQorICAgMHg0ZGJiMzdjIDB4 NGRiYjM3YyAweDRkYmIzN2MgMHg0ZGJiMzdjDQorDQorQ29uZmxpY3QgZXhh bXBsZQ0KKw0KK0luIHRoZSBleGFtcGxlLCBhbW9uZyBzb21lIGNvbmZsaWN0 cyBjYXVzZWQgYnkgdGhlIGR5bmFtaWMgbGlua2VyIGFuZCB0aGUgQw0KK2xp YnJhcnksIHRoZXJlIGlzIGEgY29uZmxpY3QgZm9yIHRoZSBzeW1ib2wgaSBp biB0ZXN0MS5zbyBzaGFyZWQgbGlicmFyeS4NCisNCitbIFBhcnRpY3VsYXJs eSBpbiB0aGUgZXhhbXBsZSwgdGhlIDUgUl8zODZfSlVNUF9TTE9UIGZpeHVw cyBhcmUgUExUIHNsb3RzIGluDQorICB0aGUgZHluYW1pYyBsaW5rZXIgZm9y IG1lbW9yeSBhbGxvY2F0b3IgZnVuY3Rpb25zIHJlc29sdmluZyB0byBDIGxp YnJhcnkNCisgIGZ1bmN0aW9ucyBpbnN0ZWFkIG9mIGR5bmFtaWMgbGlua2Vy 4oCZcyBvd24gdHJpdmlhbCBpbXBsZW1lbnRhdGlvbi4gRmlyc3QgMTANCisg IFJfMzg2XzMyIGZpeHVwcyBhdCBvZmZzZXRzIDB4YzU2ODc0IHRvIDB4YzU2 OWM0IGFyZSBUaHJlYWQgTG9jYWwgU3RvcmFnZQ0KKyAgZml4dXBzIGluIHRo ZSBDIGxpYnJhcnkgYW5kIHRoZSBmaXh1cCBhdCAweGM1NjlkOCBpcyBmb3Ig X0lPX3N0ZGluX3VzZWQgd2Vhaw0KKyAgdW5kZWZpbmVkIHN5bWJvbCBpbiB0 aGUgQyBsaWJyYXJ5LCByZXNvbHZpbmcgdG8gYSBzeW1ib2wgd2l0aCB0aGUg c2FtZSBuYW1lDQorICBpbiB0aGUgZXhlY3V0YWJsZS4gXQ0KKw0KK3Rlc3Qx LnNvIGhhcyBqdXN0IGl0c2VsZiBpbiBpdHMgbmF0dXJhbCBzeW1ib2wgbG9v a3VwIHNjb3BlIChhcyBwcm92ZWQgYnkNCitjb21tYW5kIG91dHB1dCk6DQor DQorICBMRF9XQVJOPSBMRF9UUkFDRV9QUkVMSU5LSU5HPTEgTERfQklORF9O T1c9MSAvbGliL2xkLWxpbnV4LnNvLjINCisgIC4vdGVzdDEuc28NCisNCitT byB3aGVuIGxvb2tpbmcgdXAgc3ltYm9sIGkgaW4gdGhpcyBzY29wZSB0aGUg ZGVmaW5pdGlvbiBpbiB0ZXN0MS5zbyBpcyBjaG9zZW4uDQorDQordGVzdDEu c28gaGFzIHR3byByZWxvY2F0aW9ucyBhZ2FpbnN0IHRoZSBzeW1ib2wgaSwg b25lIFJfMzg2XzMyDQorYWdhaW5zdCAuZGF0YSBzZWN0aW9uIGFuZCBvbmUg Ul8zODZfR0xPQl9EQVQgYWdhaW5zdCAuZ290IHNlY3Rpb24uDQorDQorV2hl biBwcmVsaW5raW5nIHRlc3QxLnNvIGxpYnJhcnksIHRoZSBkeW5hbWljIGxp bmtlciBzdG9yZXMgdGhlIGFkZHJlc3Mgb2YgaQ0KKygweDRkYjczNjgpIGlu dG8gYm90aCBsb2NhdGlvbnMgKGF0IG9mZnNldHMgMHg0ZGI3MmU0IGFuZCAw eDRkYjczNjQpLg0KKw0KK1RoZSBnbG9iYWwgc3ltYm9sIHNlYXJjaCBzY29w ZSBpbiB0ZXN0IGV4ZWN1dGFibGUgY29udGFpbnMgdGhlIGV4ZWN1dGFibGUN CitpdHNlbGYsIHRlc3QyLnNvIGFuZCB0ZXN0MS5zbyBsaWJyYXJpZXMsIGxp YmMuc28uNiBhbmQgdGhlIGR5bmFtaWMgbGlua2VyIGluDQordGhlIGxpc3Rl ZCBvcmRlci4NCisNCitXaGVuIGRvaW5nIHN5bWJvbCBsb29rdXAgZm9yIHN5 bWJvbCBpIGluIHRlc3QxLnNvIHdoZW4gZG9pbmcgcmVsb2NhdGlvbg0KK3By b2Nlc3Npbmcgb2YgdGhlIHdob2xlIGV4ZWN1dGFibGUsIGFkZHJlc3Mgb2Yg aSBpbiB0ZXN0Mi5zbyBpcyByZXR1cm5lZCBhcw0KK3RoYXQgc3ltYm9sIGNv bWVzIGVhcmxpZXIgaW4gdGhlIGdsb2JhbCBzZWFyY2ggc2NvcGUuDQorDQor U28sIHdoZW4gbm9uZSBvZiB0aGUgbGlicmFyaWVzIG5vciB0aGUgZXhlY3V0 YWJsZSBpcyBwcmVsaW5rZWQsIHRoZSBwcm9ncmFtDQorcHJpbnRzIDQgaWRl bnRpY2FsIGFkZHJlc3Nlcy4gSWYgcHJlbGluayBkaWRu4oCZdCBjcmVhdGUg Y29uZmxpY3QgZml4dXBzIGZvciB0aGUNCit0d28gcmVsb2NhdGlvbnMgYWdh aW5zdCB0aGUgc3ltYm9sIGkgaW4gdGVzdDEuc28sIHByZWxpbmtlZCBleGVj dXRhYmxlICh3aGljaA0KK2J5cGFzc2VzIG5vcm1hbCByZWxvY2F0aW9uIHBy b2Nlc3Npbmcgb24gc3RhcnR1cCkgd291bGQgcHJpbnQgaW5zdGVhZCBvZiB0 aGUNCitkZXNpcmVkOg0KKw0KKyAgIDB4NGRiYjM3YyAweDRkYmIzN2MgMHg0 ZGJiMzdjIDB4NGRiYjM3Yw0KKyAgIGRpZmZlcmVudCBhZGRyZXNzZXMsDQor ICAgMHg0ZGI3MzY4IDB4NGRiYjM3YyAweDRkYjczNjggMHg0ZGJiMzdjDQor DQorVGhhdCBpcyBhIGZ1bmN0aW9uYWxpdHkgY2hhbmdlIHRoYXQgcHJlbGlu ayBjYW5ub3QgYmUgcGVybWl0dGVkIHRvIG1ha2UsIHNvDQoraW5zdGVhZCBp dCBmaXhlcyB1cCB0aGUgdHdvIGxvY2F0aW9ucyBieSBzdG9yaW5nIHRoZSBk ZXNpcmVkIHZhbHVlIGluIHRoZXJlLg0KK0luIHRoaXMgY2FzZSBwcmVsaW5r IHJlYWxseSBjYW5ub3QgYXZvaWQgdGhhdCAtIHRlc3QxLnNvIHNoYXJlZCBs aWJyYXJ5IGNvdWxkDQorYmUgYWxzbyB1c2VkIHdpdGhvdXQgdGVzdDIuc28g aW4gc29tZSBvdGhlciBleGVjdXRhYmxl4oCZcyBzeW1ib2wgc2VhcmNoIHNj b3BlLg0KK09yIHRoZXJlIGNvdWxkIGJlIHNvbWUgZXhlY3V0YWJsZSBsaW5r ZWQgd2l0aDoNCisNCisgICQgZ2NjIC1vIHRlc3QyIHRlc3QuYyAuL3Rlc3Qx LnNvIC4vdGVzdDIuc28NCisNCitDb25mbGljdCBleGFtcGxlIHdpdGggc3dh cHBlZCBvcmRlciBvZiBsaWJyYXJpZXMgd2hlcmUgaSBsb29rdXAgaW4gdGVz dDEuc28NCithbmQgdGVzdDIuc28gaXMgc3VwcG9zZWQgdG8gcmVzb2x2ZSB0 byBpIGluIHRlc3QxLnNvLg0KKw0KK05vdyBjb25zaWRlciB3aGF0IGhhcHBl bnMgaWYgdGhlIGV4ZWN1dGFibGUgaXMgbGlua2VkIHdpdGggLURQUklOVF9J Og0KKw0KKyAgJCBnY2MgLURQUklOVF9JIC1vIHRlc3QzIHRlc3QuYyAuL3Rl c3QyLnNvIC4vdGVzdDEuc28NCisgICQgLi90ZXN0Mw0KKyAgMHg4MDQ5NzJj DQorICAweDgwNDk3MmMgMHg4MDQ5NzJjIDB4ODA0OTcyYyAweDgwNDk3MmMN CisNCisgICQgcHJlbGluayAtTiAuL3Rlc3QzIC4vdGVzdDEuc28gLi90ZXN0 Mi5zbw0KKyAgJCByZWFkZWxmIC1TIC4vdGVzdDIuc28gfCBncmVwIOKAmVwu ZGF0YVx8XC5nb3TigJkNCitbIDZdIC5kYXRhIFBST0dCSVRTIDA0ZGJiMmYw IDAwMDJmMCAwMDAwMDQgMDAgV0EgMCAwIDQNCitbIDhdIC5nb3QgIFBST0dC SVRTIDA0ZGJiMzZjIDAwMDM2YyAwMDAwMTAgMDQgV0EgMCAwIDQNCisNCisg ICQgcmVhZGVsZiAtciAuL3Rlc3QyLnNvDQorDQorUmVsb2NhdGlvbiBzZWN0 aW9uIOKAmS5yZWwuZHlu4oCZIGF0IG9mZnNldCAweDJjOCBjb250YWlucyAy IGVudHJpZXM6DQorDQorICBPZmZzZXQgICBJbmZvICAgICBUeXBlICAgICAg ICAgICBTeW0uVmFsdWUgIFN5bS5OYW1lDQorICAwNGRiYjJmMCAwMDAwMGQw NiBSXzM4Nl9HTE9CX0RBVCAwNGRiYjM3YyAgIGkNCisgIDA0ZGJiMzc4IDAw MDAwZDA2IFJfMzg2X0dMT0JfREFUIDA0ZGJiMzdjICAgaQ0KKw0KKyAgJCBv YmpkdW1wIC1zIC1qIC5nb3QgLWogLmRhdGEgdGVzdDIuc28NCisgIHRlc3Qy LnNvOiBmaWxlIGZvcm1hdCBlbGYzMi1pMzg2DQorICBDb250ZW50cyBvZiBz ZWN0aW9uIC5kYXRhOg0KKyAgNGRiYjJmMCA3Y2IzZGIwNCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Li4uDQorICBDb250ZW50 cyBvZiBzZWN0aW9uIC5nb3Q6DQorICA0ZGJiMzZjIGY0MTIwMDAwIDAwMDAw MDAwIDAwMDAwMDAwIDdjYjNkYjA0IC4uLi4uLi4uLi4uLnwuLi4NCisNCisg ICQgcmVhZGVsZiAtciAuL3Rlc3QzDQorICBSZWxvY2F0aW9uIHNlY3Rpb24g 4oCZLnJlbC5keW7igJkgYXQgb2Zmc2V0IDB4MzcwIGNvbnRhaW5zIDQgZW50 cmllczoNCisgIE9mZnNldCAgIEluZm8gICAgIFR5cGUgICAgICAgICAgICAg U3ltLlZhbHVlICBTeW0uTmFtZQ0KKyAgMDgwNDk3MjAgMDAwMDBlMDYgUl8z ODZfR0xPQl9EQVQgICAwMDAwMDAwMCAgIF9fZ21vbl9zdGFydF9fDQorICAw ODA0OTcyNCAwMDAwMDEwNSBSXzM4Nl9DT1BZICAgICAgIDA4MDQ5NzI0ICAg ag0KKyAgMDgwNDk3MjggMDAwMDAzMDUgUl8zODZfQ09QWSAgICAgICAwODA0 OTcyOCAgIGsNCisgIDA4MDQ5NzJjIDAwMDAwNDA1IFJfMzg2X0NPUFkgICAg ICAgMDgwNDk3MmMgICBpDQorDQorICBSZWxvY2F0aW9uIHNlY3Rpb24g4oCZ LnJlbC5wbHTigJkgYXQgb2Zmc2V0IDB4MzkwIGNvbnRhaW5zIDQgZW50cmll czoNCisgIE9mZnNldCAgIEluZm8gICAgICBUeXBlICAgICAgICAgICAgU3lt LlZhbHVlICBTeW0uIE5hbWUNCisgIDA4MDQ5NzEwIDAwMDAwNjA3ICBSXzM4 Nl9KVU1QX1NMT1QgMDgwNDgzZDggICBfX2xpYmNfc3RhcnRfbWFpbg0KKyAg MDgwNDk3MTQgMDAwMDA3MDcgIFJfMzg2X0pVTVBfU0xPVCAwODA0ODNlOCAg IHByaW50Zg0KKyAgMDgwNDk3MTggMDAwMDA4MDcgIFJfMzg2X0pVTVBfU0xP VCAwODA0ODNmOCAgIGZvbw0KKyAgMDgwNDk3MWMgMDAwMDBjMDcgIFJfMzg2 X0pVTVBfU0xPVCAwODA0ODQwOCAgIGJhcg0KKw0KKyAgUmVsb2NhdGlvbiBz ZWN0aW9uIOKAmS5nbnUuY29uZmxpY3TigJkgYXQgb2Zmc2V0IDB4N2YwIGNv bnRhaW5zIDIwIGVudHJpZXM6DQorICBPZmZzZXQgICBJbmZvICAgICAgVHlw ZSAgICAgICAgICAgIFN5bS5WYWx1ZSBTeW0uTmFtZSArIEFkZGVuZA0KKyAg MDRkYmIyZjAgMDAwMDAwMDEgIFJfMzg2XzMyICAgICAgICAgICAgICAgICAg ICAgICAgICAgMDgwNDk3MmMNCisgIDA0ZGJiMzc4IDAwMDAwMDAxICBSXzM4 Nl8zMiAgICAgICAgICAgICAgICAgICAgICAgICAgIDA4MDQ5NzJjDQorICAw NGRiNzJlNCAwMDAwMDAwMSAgUl8zODZfMzIgICAgICAgICAgICAgICAgICAg ICAgICAgICAwODA0OTcyYw0KKyAgMDRkYjczNjQgMDAwMDAwMDEgIFJfMzg2 XzMyICAgICAgICAgICAgICAgICAgICAgICAgICAgMDgwNDk3MmMNCisgIDAw YzU2ODc0IDAwMDAwMDAxICBSXzM4Nl8zMiAgICAgICAgICAgICAgICAgICAg ICAgICAgIGZmZmZmZmYwDQorICAwMGM1Njg3OCAwMDAwMDAwMSAgUl8zODZf MzIgICAgICAgICAgICAgICAgICAgICAgICAgICAwMDAwMDAwMQ0KKyAgMDBj NTY4YmMgMDAwMDAwMDEgIFJfMzg2XzMyICAgICAgICAgICAgICAgICAgICAg ICAgICAgZmZmZmZmZjQNCisgIDAwYzU2OTAwIDAwMDAwMDAxICBSXzM4Nl8z MiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZmZmZmZmVjDQorICAwMGM1 Njk0OCAwMDAwMDAwMSAgUl8zODZfMzIgICAgICAgICAgICAgICAgICAgICAg ICAgICBmZmZmZmZkYw0KKyAgMDBjNTY5NWMgMDAwMDAwMDEgIFJfMzg2XzMy ICAgICAgICAgICAgICAgICAgICAgICAgICAgZmZmZmZmZTANCisgIDAwYzU2 OTgwIDAwMDAwMDAxICBSXzM4Nl8zMiAgICAgICAgICAgICAgICAgICAgICAg ICAgIGZmZmZmZmY4DQorICAwMGM1Njk4OCAwMDAwMDAwMSAgUl8zODZfMzIg ICAgICAgICAgICAgICAgICAgICAgICAgICBmZmZmZmZlNA0KKyAgMDBjNTY5 YTQgMDAwMDAwMDEgIFJfMzg2XzMyICAgICAgICAgICAgICAgICAgICAgICAg ICAgZmZmZmZmZDgNCisgIDAwYzU2OWM0IDAwMDAwMDAxICBSXzM4Nl8zMiAg ICAgICAgICAgICAgICAgICAgICAgICAgIGZmZmZmZmU4DQorICAwMGM1Njlk OCAwMDAwMDAwMSAgUl8zODZfMzIgICAgICAgICAgICAgICAgICAgICAgICAg ICAwODA0ODVmMA0KKyAgMDBiMWY1MTAgMDAwMDAwMDcgIFJfMzg2X0pVTVBf U0xPVCAgICAgICAgICAgICAgICAgICAgMDBiOTE0NjANCisgIDAwYjFmNTE0 IDAwMDAwMDA3ICBSXzM4Nl9KVU1QX1NMT1QgICAgICAgICAgICAgICAgICAg IDAwYjkxMDgwDQorICAwMGIxZjUxOCAwMDAwMDAwNyAgUl8zODZfSlVNUF9T TE9UICAgICAgICAgICAgICAgICAgICAwMGI5MTc1MA0KKyAgMDBiMWY1MWMg MDAwMDAwMDcgIFJfMzg2X0pVTVBfU0xPVCAgICAgICAgICAgICAgICAgICAg MDBiOTEyYzANCisgIDAwYjFmNTIwIDAwMDAwMDA3ICBSXzM4Nl9KVU1QX1NM T1QgICAgICAgICAgICAgICAgICAgIDAwYjkxMjAwDQorDQorICAkIC4vdGVz dDMNCisgIDB4ODA0OTcyYw0KKyAgMHg4MDQ5NzJjIDB4ODA0OTcyYyAweDgw NDk3MmMgMHg4MDQ5NzJjDQorDQorQ29uZmxpY3QgZXhhbXBsZSB3aXRoIENP UFkgcmVsb2NhdGlvbiBmb3IgY29uZmxpY3Rpbmcgc3ltYm9sDQorDQorQmVj YXVzZSB0aGUgZXhlY3V0YWJsZSBpcyBub3QgY29tcGlsZWQgYXMgcG9zaXRp b24gaW5kZXBlbmRlbnQgY29kZSBhbmQgbWFpbg0KK2Z1bmN0aW9uIHRha2Vz IGFkZHJlc3Mgb2YgaSB2YXJpYWJsZSwgdGhlIG9iamVjdCBmaWxlIGZvciB0 ZXN0My5jIGNvbnRhaW5zIGENCitSXzM4Nl8zMiByZWxvY2F0aW9uIGFnYWlu c3QgaS4gVGhlIGxpbmtlciBjYW5ub3QgbWFrZSBkeW5hbWljIHJlbG9jYXRp b25zDQorYWdhaW5zdCByZWFkLW9ubHkgc2VnbWVudCBpbiB0aGUgZXhlY3V0 YWJsZSwgc28gdGhlIGFkZHJlc3Mgb2YgaSBtdXN0IGJlDQorY29uc3RhbnQu DQorDQorVGhpcyBpcyBhY2NvbXBsaXNoZWQgYnkgY3JlYXRpbmcgYSBuZXcg b2JqZWN0IGkgaW4gdGhlIGV4ZWN1dGFibGXigJlzIC5keW5ic3MNCitzZWN0 aW9uIGFuZCBjcmVhdGluZyBhIGR5bmFtaWMgUl8zODZfQ09QWSByZWxvY2F0 aW9uIGZvciBpdC4NCisNCitUaGUgcmVsb2NhdGlvbiBlbnN1cmVzIHRoYXQg ZHVyaW5nIHN0YXJ0dXAgdGhlIGNvbnRlbnQgb2YgaSBvYmplY3QgZWFybGll c3QgaW4NCit0aGUgc2VhcmNoIHNjb3BlIHdpdGhvdXQgdGhlIGV4ZWN1dGFi bGUgaXMgY29waWVkIHRvIHRoaXMgaSBvYmplY3QgaW4NCitleGVjdXRhYmxl Lg0KKw0KK05vdywgdW5saWtlIHRlc3QgZXhlY3V0YWJsZSwgaW4gdGVzdDMg ZXhlY3V0YWJsZSBpIGxvb2t1cHMgaW4gYm90aCB0ZXN0MS5zbw0KK2FuZCB0 ZXN0Mi5zbyBsaWJyYXJpZXMgcmVzdWx0IGluIGFkZHJlc3Mgb2YgaSBpbiB0 aGUgZXhlY3V0YWJsZSAoaW5zdGVhZCBvZg0KK3Rlc3QyLnNvKS4gVGhpcyBt ZWFucyB0aGF0IHR3byBjb25mbGljdCBmaXh1cHMgYXJlIG5lZWRlZCBhZ2Fp biBmb3IgdGVzdDEuc28NCisoYnV0IHN0b3JpbmcgMHg4MDQ5NzJjIGluc3Rl YWQgb2YgMHg0ZGJiMzdjKSBhbmQgdHdvIG5ldyBmaXh1cHMgYXJlIG5lZWRl ZCBmb3INCit0ZXN0Mi5zby4gSWYgdGhlIGV4ZWN1dGFibGUgaXMgY29tcGls ZWQgYXMgcG9zaXRpb24gaW5kZXBlbmRlbnQgY29kZSwNCisNCisgICQgZ2Nj IC1mcGljLURQUklOVF9JIC1vIHRlc3Q0IHRlc3QuYyAuL3Rlc3QyLnNvIC4v dGVzdDEuc28NCisgICQgLi90ZXN0NA0KKyAgMHg0ZGJiMzdjDQorICAweDRk YmIzN2MgMHg0ZGJiMzdjIDB4NGRiYjM3YyAweDRkYmIzN2MNCisNCitDb25m bGljdCBleGFtcGxlIHdpdGggcG9zaXRpb24gaW5kZXBlbmRlbnQgY29kZSBp biB0aGUgZXhlY3V0YWJsZQ0KKw0KK1RoZSBhZGRyZXNzIG9mIGkgaXMgc3Rv cmVkIGluIGV4ZWN1dGFibGXigJlzIC5nb3Qgc2VjdGlvbiwgd2hpY2ggaXMg d3JpdGFibGUgYW5kDQordGh1cyBjYW4gaGF2ZSBkeW5hbWljIHJlbG9jYXRp b24gYWdhaW5zdCBpdC4gU28gdGhlIGxpbmtlciBjcmVhdGVzIGENCitSXzM4 Nl9HTE9CX0RBVCByZWxvY2F0aW9uIGFnYWluc3QgdGhlIC5nb3Qgc2VjdGlv biwgdGhlIHN5bWJvbCBpIGlzIHVuZGVmaW5lZA0KK2luIHRoZSBleGVjdXRh YmxlIGFuZCBubyBjb3B5IHJlbG9jYXRpb25zIGFyZSBuZWVkZWQuDQorSW4g dGhpcyBjYXNlLCBvbmx5IHRlc3QxLnNvIHdpbGwgbmVlZCAyIGZpeHVwcywg dGVzdDIuc28gd2lsbCBub3QgbmVlZCBhbnkuDQorDQorVGhlcmUgYXJlIHZh cmlvdXMgcmVhc29ucyBmb3IgY29uZmxpY3RzOg0KKw0KK+KAoiBJbXByb3Bl cmx5IGxpbmtlZCBzaGFyZWQgbGlicmFyaWVzLg0KKw0KK0lmIGEgc2hhcmVk IGxpYnJhcnkgYWx3YXlzIG5lZWRzIHN5bWJvbHMgZnJvbSBzb21lIHBhcnRp Y3VsYXIgc2hhcmVkIGxpYnJhcnksDQoraXQgc2hvdWxkIGJlIGxpbmtlZCBh Z2FpbnN0IHRoYXQgbGlicmFyeSwgdXN1YWxseSBieSBhZGRpbmcgLWxMSUJO QU1FIHRvIGdjYw0KKy1zaGFyZWQgY29tbWFuZCBsaW5lIHVzZWQgZHVyaW5n IGxpbmtpbmcgb2YgdGhlIHNoYXJlZCBsaWJyYXJ5Lg0KKw0KK1RoaXMgYm90 aCByZWR1Y2VzIGNvbmZsaWN0IGZpeHVwcyBpbiBwcmVsaW5rIGFuZCBtYWtl cyB0aGUgbGlicmFyeSBlYXNpZXIgdG8NCitsb2FkIHVzaW5nIGRsb3Blbiwg YmVjYXVzZSBhcHBsaWNhdGlvbnMgZG9u4oCZdCBoYXZlIHRvIHJlbWVtYmVy IHRoYXQgdGhleSBoYXZlDQordG8gbG9hZCBzb21lIG90aGVyIGxpYnJhcnkg Zmlyc3QuIFRoZSBiZXN0IHBsYWNlIHRvIHJlY29yZCB0aGUgZGVwZW5kZW5j eSBpcw0KK2luIHRoZSBzaGFyZWQgbGlicmFyeSBpdHNlbGYuDQorDQorQW5v dGhlciByZWFzb24gaXMgaWYgdGhlIG5lZWRlZCBsaWJyYXJ5IHVzZXMgc3lt Ym9sIHZlcnNpb25pbmcgZm9yIGl0cw0KK3N5bWJvbHMuIE5vdCBsaW5raW5n IGFnYWluc3QgdGhhdCBsaWJyYXJ5IGNhbiByZXN1bHQgaW4gbWFsZnVuY3Rp b25pbmcgc2hhcmVkDQorbGlicmFyeS4NCisNCitQcmVsaW5rIGlzc3VlcyBh IHdhcm5pbmcgZm9yIHN1Y2ggbGlicmFyaWVzIC0NCisNCisgIFdhcm5pbmc6 IGxpYnJhcnkgaGFzIHVuZGVmaW5lZCBub24td2VhayBzeW1ib2xzLg0KKw0K K1doZW4gbGlua2luZyBhIHNoYXJlZCBsaWJyYXJ5LCB0aGUgLVdsLC16LGRl ZnMgb3B0aW9uIGNhbiBiZSB1c2VkIHRvIGVuc3VyZQ0KK3RoZXJlIGFyZSBu byBzdWNoIHVuZGVmaW5lZCBub253ZWFrIHN5bWJvbHMuDQorDQorVGhlcmUg YXJlIGV4Y2VwdGlvbnMgd2hlbiB1bmRlZmluZWQgbm9uLXdlYWsgc3ltYm9s cyBpbiBzaGFyZWQgbGlicmFyaWVzIGFyZQ0KK2Rlc2lyYWJsZS4NCisNCitP bmUgZXhjZXB0aW9uIGlzIHdoZW4gdGhlcmUgYXJlIG11bHRpcGxlIHNoYXJl ZCBsaWJyYXJpZXMgcHJvdmlkaW5nIHRoZSBzYW1lDQorZnVuY3Rpb25hbGl0 eSwgYW5kIGEgc2hhcmVkIGxpYnJhcnkgZG9lc27igJl0IGNhcmUgd2hpY2gg b25lIGlzIHVzZWQuDQorDQorQW4gZXhhbXBsZSBjYW4gYmUgZS5nLiBsaWJy ZWFkbGluZS5zby40LCB3aGljaCBuZWVkcyBzb21lIHRlcm1pbmFsIGhhbmRs aW5nDQorZnVuY3Rpb25zLCB3aGljaCBhcmUgcHJvdmlkZWQgYmUgZWl0aGVy IGxpYnRlcm1jYXAuc28uMiwgb3IgbGlibmN1cnNlcy5zby41Lg0KKw0KK0Fu b3RoZXIgZXhjZXB0aW9uIGlzIHdpdGggcGx1Z2lucyBvciBvdGhlciBzaGFy ZWQgbGlicmFyaWVzIHdoaWNoIGV4cGVjdCBzb21lDQorc3ltYm9scyB0byBi ZSByZXNvbHZlZCB0byBzeW1ib2xzIGRlZmluZWQgaW4gdGhlIGV4ZWN1dGFi bGUuDQorDQor4oCiIEEgbGlicmFyeSBvdmVycmlkaW5nIGZ1bmN0aW9uYWxp dHkgb2Ygc29tZSBvdGhlciBsaWJyYXJ5Lg0KKw0KK09uZSBleGFtcGxlIGlz IGUuZy4gQyBsaWJyYXJ5IGFuZCBQT1NJWCB0aHJlYWQgbGlicmFyeS4gT2xk ZXIgdmVyc2lvbnMgb2YgdGhlDQorR05VIEMgbGlicmFyeSBkaWQgbm90IHBy b3ZpZGUgY2FuY2VsYWJsZSBlbnRyeSBwb2ludHMgcmVxdWlyZWQgYnkgdGhl DQorc3RhbmRhcmQuIFRoaXMgaXMgbm90IG5lZWRlZCBmb3Igbm9uLXRocmVh ZGVkIGFwcGxpY2F0aW9ucy4gU28gb25seSB0aGUNCitsaWJwdGhyZWFkLnNv LjAgc2hhcmVkIGxpYnJhcnkgd2hpY2ggcHJvdmlkZXMgUE9TSVggdGhyZWFk aW5nIHN1cHBvcnQgdGhlbg0KK292ZXJyb2RlIHRoZSBjYW5jZWxsYXRpb24g ZW50cnkgcG9pbnRzIHJlcXVpcmVkIGJ5IHRoZSBzdGFuZGFyZCBieSB3cmFw cGVyDQorZnVuY3Rpb25zIHdoaWNoIHByb3ZpZGVkIHRoZSByZXF1aXJlZCBm dW5jdGlvbmFsaXR5Lg0KKw0KK0FsdGhvdWdoIG1vc3QgcmVjZW50IHZlcnNp b25zIG9mIHRoZSBHTlUgQyBsaWJyYXJ5IGhhbmRsZSBjYW5jZWxsYXRpb24g ZXZlbiBpbg0KK2VudHJ5IHBvaW50cyBpbiBsaWJjLnNvLjYgKHRoaXMgd2Fz IG5lZWRlZCBmb3IgY2FzZXMgd2hlbiBsaWJjLnNvLjYgY29tZXMNCitlYXJs aWVyIGJlZm9yZSBsaWJwdGhyZWFkLnNvLjAgaW4gc3ltYm9sIHNlYXJjaCBz Y29wZSBhbmQgdXNlZCB0byBiZSB3b3JrZWQNCithcm91bmQgYnkgbm9uLXN0 YW5kYXJkIGhhbmRsaW5nIG9mIHdlYWsgc3ltYm9scyBpbiB0aGUgZHluYW1p YyBsaW5rZXIpLA0KK2JlY2F1c2Ugb2Ygc3ltYm9sIHZlcnNpb25pbmcgdGhl IHN5bWJvbHMgaGFkIHRvIHN0YXkgaW4gbGlicHRocmVhZC5zby4wIGFzDQor d2VsbCBhcyBpbiBsaWJjLnNvLjYuDQorDQorVGhpcyBtZWFucyBldmVyeSBw cm9ncmFtIHVzaW5nIFBPU0lYIHRocmVhZHMgb24gTGludXggd2lsbCBoYXZl IGEgY291cGxlIG9mDQorY29uZmxpY3QgZml4dXBzIGJlY2F1c2Ugb2YgdGhp cy4NCisNCivigKIgUHJvZ3JhbXMgd2hpY2ggbmVlZCBjb3B5IHJlbG9jYXRp b25zLg0KKw0KK0FsdGhvdWdoIHByZWxpbmsgd2lsbCByZXNvbHZlIHRoZSBj b3B5IHJlbG9jYXRpb25zIGF0IHByZWxpbmtpbmcgdGltZSwgaWYgYW55DQor c2hhcmVkIGxpYnJhcnkgaGFzIHJlbG9jYXRpb25zIGFnYWluc3QgdGhlIHN5 bWJvbCB3aGljaCBuZWVkZWQgY29weQ0KK3JlbG9jYXRpb24sIGFsbCBzdWNo IHJlbG9jYXRpb25zIHdpbGwgbmVlZCBjb25mbGljdCBmaXh1cHMuIEdlbmVy YWxseSwgaXQgaXMNCitiZXR0ZXIgdG8gbm90IGV4cG9ydCB2YXJpYWJsZXMg ZnJvbSBzaGFyZWQgbGlicmFyaWVzIGluIHRoZWlyIEFQSXMsIGluc3RlYWQN Citwcm92aWRlIGFjY2Vzc29yIGZ1bmN0aW9ucy4NCisNCivigKIgRnVuY3Rp b24gcG9pbnRlciBlcXVhbGl0eSByZXF1aXJlbWVudCBmb3IgZnVuY3Rpb25z IGNhbGxlZCBmcm9tIGV4ZWN1dGFibGVzLg0KKw0KK1doZW4gYWRkcmVzcyBv ZiBzb21lIGdsb2JhbCBmdW5jdGlvbiBpcyB0YWtlbiwgYXQgbGVhc3QgQyBh bmQgQysrIHJlcXVpcmUgdGhhdA0KK3RoaXMgcG9pbnRlciBpcyB0aGUgc2Ft ZSBpbiB0aGUgd2hvbGUgcHJvZ3JhbS4gRXhlY3V0YWJsZXMgdHlwaWNhbGx5 IGNvbnRhaW4NCitwb3NpdGlvbiBkZXBlbmRlbnQgY29kZSwgc28gd2hlbiBj b2RlIGluIHRoZSBleGVjdXRhYmxlIHRha2VzIGFkZHJlc3Mgb2Ygc29tZQ0K K2Z1bmN0aW9uIG5vdCBkZWZpbmVkIGluIHRoZSBleGVjdXRhYmxlIGl0c2Vs ZiwgdGhhdCBhZGRyZXNzIG11c3QgYmUgbGluayB0aW1lDQorY29uc3RhbnQu DQorDQorTGlua2VyIGFjY29tcGxpc2hlcyB0aGlzIGJ5IGNyZWF0aW5nIGEg UExUIHNsb3QgZm9yIHRoZSBmdW5jdGlvbiB1bmxlc3MgdGhlcmUNCit3YXMg b25lIGFscmVhZHkgYW5kIHJlc29sdmluZyB0byB0aGUgYWRkcmVzcyBvZiBQ TFQgc2xvdC4NCisNCitUaGUgc3ltYm9sIGZvciB0aGUgZnVuY3Rpb24gaXMg Y3JlYXRlZCB3aXRoIHN0X3ZhbHVlIGVxdWFsIHRvIGFkZHJlc3Mgb2YgdGhl DQorUExUIHNsb3QsIGJ1dCBzdF9zaG5keCBzZXQgdG8gU0hOX1VOREVGLg0K Kw0KK1N1Y2ggc3ltYm9scyBhcmUgdHJlYXRlZCBzcGVjaWFsbHkgYnkgdGhl IGR5bmFtaWMgbGlua2VyLCBpbiB0aGF0IFBMVA0KK3JlbG9jYXRpb25zIHJl c29sdmUgdG8gZmlyc3Qgc3ltYm9sIGluIHRoZSBnbG9iYWwgc2VhcmNoIHNj b3BlIGFmdGVyIHRoZQ0KK2V4ZWN1dGFibGUsIHdoaWxlIHN5bWJvbCBsb29r dXBzIGZvciBhbGwgb3RoZXIgcmVsb2NhdGlvbiB0eXBlcyByZXR1cm4gdGhl DQorYWRkcmVzcyBvZiB0aGUgc3ltYm9sIGluIHRoZSBleGVjdXRhYmxlLg0K Kw0KK1VuZm9ydHVuYXRlbHksIEdOVSBsaW5rZXIgZG9lc27igJl0IGRpZmZl cmVudGlhdGUgYmV0d2VlbiB0YWtpbmcgYWRkcmVzcyBvZiBhDQorZnVuY3Rp b24gaW4gYW4gZXhlY3V0YWJsZSAoZXNwZWNpYWxseSBvbmUgZm9yIHdoaWNo IG5vIGR5bmFtaWMgcmVsb2NhdGlvbiBpcw0KK3Bvc3NpYmxlIGluIGNhc2Ug aXQgaXMgaW4gcmVhZC1vbmx5IHNlZ21lbnQpIGFuZCBqdXN0IGNhbGxpbmcg dGhlIGZ1bmN0aW9uLA0KK2J1dCBuZXZlciB0YWtpbmcgaXRzIGFkZHJlc3Mu DQorDQorSWYgaXQgY2xlYXJlZCB0aGUgc3RfdmFsdWUgZmllbGQgb2YgdGhl IFNITl9VTkRFRiBmdW5jdGlvbiBzeW1ib2xzIGluIGNhc2UNCitub3RoaW5n IGluIHRoZSBleGVjdXRhYmxlIHRha2VzIHRoZSBmdW5jdGlvbuKAmXMgYWRk cmVzcywgc2V2ZXJhbCBwcmVsaW5rDQorY29uZmxpY3QgY291bGQgZGlzYXBw ZWFyIChTSE5fVU5ERUYgc3ltYm9scyB3aXRoIHN0X3ZhbHVlIHNldCB0byAw IGFyZSB0cmVhdGVkDQorYWx3YXlzIGFzIHJlYWwgdW5kZWZpbmVkIHN5bWJv bHMgYnkgdGhlIGR5bmFtaWMgbGlua2VyKS4NCisNCivigKIgQ09NREFUIGNv ZGUgYW5kIGRhdGEgaW4gQysrLg0KKw0KK0MrKyBsYW5ndWFnZSBoYXMgc2V2 ZXJhbCBwbGFjZXMgd2hlcmUgaXQgbWF5IG5lZWQgdG8gZW1pdCBzb21lIGNv ZGUgb3IgZGF0YQ0KK3dpdGhvdXQgYSBjbGVhciB1bmlxdWUgY29tcGlsYXRp b24gdW5pdCBvd25pbmcgaXQuIEV4YW1wbGVzIGluY2x1ZGUgdGFraW5nDQor YWRkcmVzcyBvZiBhbiBpbmxpbmUgZnVuY3Rpb24sIGxvY2FsIHN0YXRpYyB2 YXJpYWJsZSBpbiBpbmxpbmUgZnVuY3Rpb25zLA0KK3ZpcnR1YWwgdGFibGVz IGZvciBzb21lIGNsYXNzZXMgKHRoaXMgZGVwZW5kcyBvbiAjcHJhZ21hIGlu dGVyZmFjZSBvciAjcHJhZ21hDQoraW1wbGVtZW50YXRpb24gcHJlc2VuY2Us IHByZXNlbmNlIG9mIG5vbi1pbmxpbmUgbm9uLXB1cmUtdmlydHVhbCBtZW1i ZXINCitmdW5jdGlvbiBpbiB0aGUgY2xhc3MsIGV0Yy4pLCBSVFRJIGluZm8g Zm9yIHRoZW0uDQorDQorQ29tcGlsZXJzIGFuZCBsaW5rZXJzIGhhbmRsZSB0 aGVzZSB1c2luZyB2YXJpb3VzIENPTURBVCBzY2hlbWVzLCBlLmcuIEdOVQ0K K2xpbmtlcuKAmXMgLmdudS5saW5rb25jZSogc3BlY2lhbCBzZWN0aW9ucyBv ciB1c2luZyBTSFRfR1JPVVAuDQorDQorVW5mb3J0dW5hdGVseSwgYWxsIHRo ZXNlIGR1cGxpY2F0ZSBtZXJnaW5nIHNjaGVtZXMgd29yayBvbmx5IGR1cmlu ZyBsaW5raW5nIG9mDQorc2hhcmVkIGxpYnJhcmllcyBvciBleGVjdXRhYmxl cywgbm8gZHVwbGljYXRlIHJlbW92YWwgaXMgZG9uZSBhY3Jvc3Mgc2hhcmVk DQorbGlicmFyaWVzLg0KKw0KK1NoYXJlZCBsaWJyYXJpZXMgdHlwaWNhbGx5 IGhhdmUgcmVsb2NhdGlvbnMgYWdhaW5zdCB0aGVpciBDT01EQVQgY29kZSBv ciBkYXRhDQorb2JqZWN0cyAob3RoZXJ3aXNlIHRoZXkgd291bGRu4oCZdCBi ZSBhdCBsZWFzdCBpbiBtb3N0IGNhc2VzIGVtaXR0ZWQgYXQgYWxsKSwgc28N CitpZiB0aGVyZSBhcmUgQ09NREFUIGR1cGxpY2F0ZXMgYWNyb3NzIHNoYXJl ZCBsaWJyYXJpZXMgb3IgdGhlIGV4ZWN1dGFibGUsIHRoZXkNCitsZWFkIHRv IGNvbmZsaWN0IGZpeHVwcy4NCisNCitUaGUgbGlua2VyIHRoZW9yZXRpY2Fs bHkgY291bGQgdHJ5IHRvIG1lcmdlIENPTURBVCBkdXBsaWNhdGVzIGFjcm9z cyBzaGFyZWQNCitsaWJyYXJpZXMgaWYgc3BlY2lmaWNhbGx5IHJlcXVlc3Rl ZCBieSB0aGUgdXNlciAoaWYgYSBDT01EQVQgc3ltYm9sIGlzIGFscmVhZHkN CitwcmVzZW50IGluIG9uZSBvZiB0aGUgZGVwZW5kZW50IHNoYXJlZCBsaWJy YXJpZXMgYW5kIGlzIFNUQl9XRUFLLCB0aGUgbGlua2VyDQorY291bGQgc2tp cCBpdCkuDQorDQorVW5mb3J0dW5hdGVseSwgdGhpcyBvbmx5IHdvcmtzIGFz IGxvbmcgYXMgdGhlIHVzZXIgaGFzIGZ1bGwgY29udHJvbCBvdmVyIHRoZQ0K K2RlcGVuZGVudCBzaGFyZWQgbGlicmFyaWVzLCBiZWNhdXNlIHRoZSBDT01E QVQgc3ltYm9sIGNvdWxkIGJlIGV4cG9ydGVkIGZyb20NCit0aGVtIGp1c3Qg YXMgYSBzaWRlIGVmZmVjdCBvZiB0aGVpciBpbXBsZW1lbnRhdGlvbiAoZS5n LiB0aGV5IHVzZSBzb21lIGNsYXNzDQoraW50ZXJuYWxseSkuIFdoZW4gc3Vj aCBsaWJyYXJpZXMgYXJlIHJlYnVpbHQgZXZlbiB3aXRoIG1pbm9yIGNoYW5n ZXMgaW4gdGhlaXINCitpbXBsZW1lbnRhdGlvbiAodW5mb3J0dW5hdGVseSB3 aXRoIEMrKyBzaGFyZWQgbGlicmFyaWVzIGl0IGlzIHVzdWFsbHkgbm90IHZl cnkNCitjbGVhciB3aGF0IHBhcnQgaXMgZXhwb3J0ZWQgQUJJIGFuZCB3aGF0 IGlzIG5vdCksIHNvbWUgb2YgdGhvc2UgQ09NREFUIHN5bWJvbHMNCitpbiB0 aGVtIGNvdWxkIGdvIGF3YXkgKGUuZy4gYmVjYXVzZSBzdWRkZW5seSB0aGV5 IHVzZSBhIGRpZmZlcmVudCBjbGFzcw0KK2ludGVybmFsbHkgYW5kIHRoZSBw cmV2aW91c2x5IHVzZWQgY2xhc3MgaXMgbm90IHJlZmVyZW5jZWQgYW55d2hl cmUpLg0KKw0KK1doZW4gQ09NREFUIG9iamVjdHMgYXJlIG5vdCBtZXJnZWQg YWNyb3NzIHNoYXJlZCBsaWJyYXJpZXMsIHRoaXMgbWFrZXMgbm8NCitwcm9i bGVtcywgYXMgZWFjaCBsaWJyYXJ5IHdoaWNoIG5lZWRzIHRoZSBDT01EQVQg aGFzIGl0cyBvd24gY29weS4gQnV0IHdpdGgNCitDT01EQVQgZHVwbGljYXRl IHJlbW92YWwgYmV0d2VlbiBzaGFyZWQgbGlicmFyaWVzIHRoZXJlIGNvdWxk IHN1ZGRlbmx5IGJlDQordW5yZXNvbHZlZCByZWZlcmVuY2VzIGFuZCB0aGUg c2hhcmVkIGxpYnJhcmllcyB3b3VsZCBuZWVkIHRvIGJlIHJlbGlua2VkLiBU aGUNCitvbmx5IHBsYWNlIHdoZXJlIHRoaXMgY291bGQgd29yayBzYWZlbHkg aXMgd2hlbiBhIHNpbmdsZSBwYWNrYWdlIGluY2x1ZGVzDQorc2V2ZXJhbCBD Kysgc2hhcmVkIGxpYnJhcmllcyB3aGljaCBkZXBlbmQgb24gZWFjaCBvdGhl ci4gVGhleSBhcmUgdGhlbiBzaGlwcGVkDQorYWx3YXlzIHRvZ2V0aGVyIGFu ZCB3aGVuIG9uZSBjaGFuZ2VzLCBhbGwgb3RoZXJzIG5lZWQgY2hhbmdpbmcg dG9vLg0KKw0KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCisN Cis5IFByZWxpbmsgb3B0aW1pemF0aW9ucyB0byByZWR1Y2UgbnVtYmVyIG9m IGNvbmZsaWN0IGZpeHVwcw0KKw0KK1ByZWxpbmsgY2FuIG9wdGltaXplIG91 dCBzb21lIGNvbmZsaWN0IGZpeHVwcyBpZiBpdCBjYW4gcHJvdmUgdGhhdCB0 aGUgY2hhbmdlcw0KK2FyZSBub3Qgb2JzZXJ2YWJsZSBieSB0aGUgYXBwbGlj YXRpb24gYXQgcnVudGltZSAob3BlbmluZyBpdHMgZXhlY3V0YWJsZSBhbmQN CityZWFkaW5nIGl0IGRvZXNu4oCZdCBjb3VudCkuIElmIHRoZXJlIGlzIGEg ZGF0YSBvYmplY3QgaW4gc29tZSBzaGFyZWQgbGlicmFyeQ0KK3dpdGggYSBz eW1ib2wgdGhhdCBpcyBvdmVycmlkZGVuIGJ5IGEgc3ltYm9sIGluIGEgZGlm ZmVyZW50IHNoYXJlZCBsaWJyYXJ5DQorZWFybGllciBpbiBnbG9iYWwgc3lt Ym9sIGxvb2t1cCBzY29wZSBvciBpbiB0aGUgZXhlY3V0YWJsZSwgdGhlbiB0 aGF0IGRhdGENCitvYmplY3QgaXMgbGlrZWx5IG5ldmVyIHJlZmVyZW5jZWQg YW5kIGl0IHNob3VsZG7igJl0IG1hdHRlciB3aGF0IGl0IGNvbnRhaW5zLg0K K0V4YW1pbmUgdGhlIGZvbGxvd2luZyBleGFtcGxlOg0KKw0KKyAgJCBjYXQg PiB0ZXN0MS5jIDw8RU9GDQorICBpbnQgaSwgaiwgazsNCisgIHN0cnVjdCBB IHsgaW50ICphOyBpbnQgKmI7IGludCAqYzsgfSB4ID0geyAmaSwgJmosICZr IH07DQorICBzdHJ1Y3QgQSAqeSA9ICZ4Ow0KKyAgRU9GDQorDQorICAkIGNh dCA+IHRlc3QyLmMgPDxFT0YNCisgIGludCBpLCBqLCBrOw0KKyAgc3RydWN0 IEEgeyBpbnQgKmE7IGludCAqYjsgaW50ICpjOyB9IHggPSB7ICZpLCAmaiwg JmsgfTsNCisgIHN0cnVjdCBBICp6ID0gJng7DQorICBFT0YNCisNCisgICQg Y2F0ID4gdGVzdC5jIDw8RU9GDQorICAjaW5jbHVkZSA8c3RkaW8uaD4NCisg IGV4dGVybiBzdHJ1Y3QgQSB7IGludCAqYTsgaW50ICpiOyBpbnQgKmM7IH0g KnksICp6Ow0KKyAgaW50IG1haW4gKHZvaWQpDQorICB7DQorICAgICAgcHJp bnRmICjigJ0lcDogJXAgJXAgJXBcbuKAnSwgeSwgeS0+YSwgeS0+YiwgeS0+ Yyk7DQorICAgICAgcHJpbnRmICjigJ0lcDogJXAgJXAgJXBcbuKAnSwgeiwg ei0+YSwgei0+Yiwgei0+Yyk7DQorICB9DQorICBFT0YNCisNCisgICQgZ2Nj IC1ub3N0ZGxpYiAtc2hhcmVkIC1mcGljIC1zIC1vIHRlc3QxLnNvIHRlc3Qx LmMNCisgICQgZ2NjIC1ub3N0ZGxpYiAtc2hhcmVkIC1mcGljIC1vIHRlc3Qy LnNvIHRlc3QyLmMgLi90ZXN0MS5zbw0KKyAgJCBnY2MgLW8gdGVzdCB0ZXN0 LmMgLi90ZXN0Mi5zbyAuL3Rlc3QxLnNvDQorDQorICAkIC4vdGVzdA0KKyAg MHhhZjMzMTQ6IDB4YWYzM2IwIDB4YWYzM2E4IDB4YWYzM2FjDQorICAweGFm MzMxNDogMHhhZjMzYjAgMHhhZjMzYTggMHhhZjMzYWMNCisNCitDIGV4YW1w bGUgd2hlcmUgY29uZmxpY3QgZml4dXBzIGNvdWxkIGJlIG9wdGltaXplZCBv dXQNCisNCitJbiB0aGlzIGV4YW1wbGUgdGhlcmUgYXJlIDMgY29uZmxpY3Qg Zml4dXBzIHBvaW50aW5nIGludG8gdGhlIDEyIGJ5dGUgbG9uZyB4DQorb2Jq ZWN0IGluIHRlc3QxLnNvIHNoYXJlZCBsaWJyYXJ5IChhbW9uZyBvdGhlciBj b25mbGljdHMpLiBBbmQgbm90aGluZyBpbiB0aGUNCitwcm9ncmFtIGNhbiBw b2tlIGF0IHggY29udGVudCBpbiB0ZXN0MS5zbywgc2ltcGx5IGJlY2F1c2Ug aXQgaGFzIHRvIGxvb2sgYXQgaXQNCit0aHJvdWdoIHggc3ltYm9sIHdoaWNo IHJlc29sdmVzIHRvIHRlc3QyLnNvLiBTbyBpbiB0aGlzIGNhc2UgcHJlbGlu ayBjb3VsZA0KK3NraXAgdGhvc2UgMyBjb25mbGljdHMuIFVuZm9ydHVuYXRl bHkgaXQgaXMgbm90IHRoYXQgZWFzeToNCisNCisgICQgY2F0ID4gdGVzdDMu YyA8PEVPRg0KKyAgaW50IGksIGosIGs7DQorICBzdGF0aWMgc3RydWN0IEEg eyBpbnQgKmE7IGludCAqYjsgaW50ICpjOyB9IGxvY2FsID0geyAmaSwgJmos ICZrIH07DQorICBleHRlcm4gc3RydWN0IEEgeDsNCisgIHN0cnVjdCBBICp5 ID0gJng7DQorICBzdHJ1Y3QgQSAqeTIgPSAmbG9jYWw7DQorICBleHRlcm4g c3RydWN0IEEgeCBfX2F0dHJpYnV0ZV9fKChhbGlhcyAo4oCdbG9jYWzigJ0p KSk7DQorICBFT0YNCisNCisgICQgY2F0ID4gdGVzdDQuYyA8PEVPRg0KKyAg I2luY2x1ZGUgPHN0ZGlvLmg+DQorICBleHRlcm4gc3RydWN0IEEgeyBpbnQg KmE7IGludCAqYjsgaW50ICpjOyB9ICp5LCAqeTIsICp6Ow0KKyAgaW50IG1h aW4gKHZvaWQpDQorICB7DQorICAgICAgcHJpbnRmICjigJ0lcDogJXAgJXAg JXBcbuKAnSwgeSwgeS0+YSwgeS0+YiwgeS0+Yyk7DQorICAgICAgcHJpbnRm ICjigJ0lcDogJXAgJXAgJXBcbuKAnSwgeTIsIHkyLT5hLCB5Mi0+YiwgeTIt PmMpOw0KKyAgICAgIHByaW50ZiAo4oCdJXA6ICVwICVwICVwXG7igJ0sIHos IHotPmEsIHotPmIsIHotPmMpOw0KKyAgfQ0KKyAgRU9GDQorDQorICAkIGdj YyAtbm9zdGRsaWIgLXNoYXJlZCAtZnBpYyAtcyAtbyB0ZXN0My5zbyB0ZXN0 My5jDQorICAkIGdjYyAtbm9zdGRsaWIgLXNoYXJlZCAtZnBpYyAtbyB0ZXN0 NC5zbyB0ZXN0Mi5jIC4vdGVzdDMuc28NCisgICQgZ2NjIC1vIHRlc3Q0IHRl c3Q0LmMgLi90ZXN0NC5zbyAuL3Rlc3QzLnNvDQorDQorICAkIC4vdGVzdDQN CisgIDB4NjVhMzE0OiAweDY1YTNiMCAweDY1YTNhOCAweDY1YTNhYw0KKyAg MHhiZDEzMjg6IDB4NjVhM2IwIDB4NjVhM2E4IDB4NjVhM2FjDQorICAweDY1 YTMxNDogMHg2NWEzYjAgMHg2NWEzYTggMHg2NWEzYWMNCisNCitNb2RpZmll ZCBDIGV4YW1wbGUgd2hlcmUgY29uZmxpY3QgZml4dXBzIGNhbm5vdCBiZSBy ZW1vdmVkDQorDQorSW4gdGhpcyBleGFtcGxlLCB0aGVyZSBhcmUgYWdhaW4g MyBjb25mbGljdCBmaXh1cHMgcG9pbnRpbmcgaW50byB0aGUgMTIgYnl0ZQ0K K2xvbmcgeCBvYmplY3QgaW4gdGVzdDMuc28gc2hhcmVkIGxpYnJhcnkuDQor DQorVGhlIGZhY3QgdGhhdCB2YXJpYWJsZSBsb2NhbCBpcyBsb2NhdGVkIGF0 IHRoZSBzYW1lIDEyIGJ5dGVzIGlzIHRvdGFsbHkNCitpbnZpc2libGUgdG8g cHJlbGluaywgYXMgbG9jYWwgaXMgYSBTVEJfTE9DQUwgc3ltYm9sIHdoaWNo IGRvZXNu4oCZdCBzaG93IHVwIGluDQorLmR5bnN5bSBzZWN0aW9uLg0KKw0K K0J1dCBpZiB0aG9zZSAzIGNvbmZsaWN0IGZpeHVwcyBhcmUgcmVtb3ZlZCwg dGhlbiBzdWRkZW5seSBwcm9ncmFt4oCZcyBvYnNlcnZhYmxlDQorYmVoYXZp b3IgY2hhbmdlcyAodGhlIGxhc3QgMyBhZGRyZXNzZXMgb24gc2Vjb25kIGxp bmUgd291bGQgYmUgZGlmZmVyZW50IHRoYW4NCit0aG9zZSBvbiBmaXJzdCBv ciB0aGlyZCBsaW5lKS4NCisNCitGb3J0dW5hdGVseSwgdGhlcmUgYXJlIGF0 IGxlYXN0IHNvbWUgb2JqZWN0cyB3aGVyZSBwcmVsaW5rIGNhbiBiZSByZWFz b25hYmx5DQorc3VyZSB0aGV5IHdpbGwgbmV2ZXIgYmUgcmVmZXJlbmNlZCB0 aHJvdWdoIHNvbWUgbG9jYWwgYWxpYXMuIFRob3NlIGFyZSB2YXJpb3VzDQor Y29tcGlsZXIgZ2VuZXJhdGVkIG9iamVjdHMgd2l0aCB3ZWxsIGRlZmluZWQg bWVhbmluZyB3aGljaCBpcyBwcmVsaW5rIGFibGUgdG8NCitpZGVudGlmeSBp biBzaGFyZWQgbGlicmFyaWVzLg0KKw0KK1RoZSBtb3N0IGltcG9ydGFudCBv bmVzIGFyZSBDKysgdmlydHVhbCB0YWJsZXMgYW5kIFJUVEkgZGF0YS4gVGhl eSBhcmUgZW1pdHRlZA0KK2FzIENPTURBVCBkYXRhIGJ5IHRoZSBjb21waWxl ciwgaW4gR0NDIGludG8gLmdudS5saW5rb25jZS5kLiogc2VjdGlvbnMuDQor DQorRGF0YSBvciBjb2RlIGluIHRoZXNlIHNlY3Rpb25zIGNhbiBiZSBhY2Nl c3NlZCBvbmx5IHRocm91Z2ggZ2xvYmFsIHN5bWJvbHMsDQorb3RoZXJ3aXNl IGxpbmtlciBtaWdodCBjcmVhdGUgdW5leHBlY3RlZCByZXN1bHRzIHdoZW4g dHdvIG9yIG1vcmUgb2YgdGhlc2UNCitzZWN0aW9ucyBhcmUgbWVyZ2VkIHRv Z2V0aGVyIChhbGwgYnV0IG9uZSBkZWxldGVkKS4NCisNCitXaGVuIHByZWxp bmsgaXMgY2hlY2tpbmcgZm9yIHN1Y2ggZGF0YSwgaXQgZmlyc3QgY2hlY2tz IHdoZXRoZXIgdGhlIHNoYXJlZA0KK2xpYnJhcnkgaW4gcXVlc3Rpb24gaXMg bGlua2VkIGFnYWluc3QgbGlic3RkYysrLnNvLiBJZiBub3QsIGl0IGlzIG5v dCBhIEMrKw0KK2xpYnJhcnkgKG9yIGluY29ycmVjdGx5IGJ1aWx0IG9uZSkg YW5kIHRodXMgaXQgbWFrZXMgbm8gc2Vuc2UgdG8gc2VhcmNoIGFueQ0KK2Z1 cnRoZXIuIEl0IGxvb2tzIG9ubHkgaW4gLmRhdGEgc2VjdGlvbiwgZm9yIFNU Ql9XRUFLIFNUVF9PQkpFQ1Qgc3ltYm9scyB3aG9zZQ0KK25hbWVzIHN0YXJ0 IHdpdGggY2VydGFpbiBwcmVmaXhlcyBhbmQgd2hlcmUgbm8gb3RoZXIgc3lt Ym9scyAoaW4gZHluYW1pYw0KK3N5bWJvbCB0YWJsZSkgcG9pbnQgaW50byB0 aGUgb2JqZWN0cy4NCisNCitbIF9fdnRfIGZvciBHQ0MgMi45NS54IGFuZCAy Ljk2LVJIIHZpcnR1YWwgdGFibGVzLCBfWlRWIGZvciBHQ0MgMy54IHZpcnR1 YWwNCisgIHRhYmxlcyBhbmQgX1pUSSBmb3IgR0NDIDMueCBSVFRJIGRhdGEu IF0NCisNCitJZiB0aGVzZSBvYmplY3RzIGFyZSB1bnVzZWQgYmVjYXVzZSB0 aGVyZSBpcyBhIGNvbmZsaWN0IG9uIHRoZWlyIHN5bWJvbCwgYWxsDQorY29u ZmxpY3QgZml4dXBzIHBvaW50aW5nIGludG8gdGhlIHZpcnR1YWwgdGFibGUg b3IgUlRUSSBzdHJ1Y3R1cmUgY2FuIGJlDQorZGlzY2FyZGVkLg0KKw0KK0Fu b3RoZXIgcG9zc2libGUgb3B0aW1pemF0aW9uIGlzIGFnYWluIHJlbGF0ZWQg dG8gQysrIHZpcnR1YWwgdGFibGVzLg0KKw0KK0Z1bmN0aW9uIGFkZHJlc3Nl cyBpbiB0aGVtIGFyZSBub3QgaW50ZW5kZWQgZm9yIHBvaW50ZXIgY29tcGFy aXNvbnMuIEMrKyBjb2RlDQorb25seSBsb2FkcyB0aGVtIGZyb20gdGhlIHZp cnR1YWwgdGFibGVzIGFuZCBjYWxscyB0aHJvdWdoIHRoZSBwb2ludGVyLg0K Kw0KK1BvaW50ZXJzIHRvIG1lbWJlciBmdW5jdGlvbnMgYXJlIGhhbmRsZWQg ZGlmZmVyZW50bHkuIEFzIHBvaW50ZXIgZXF1aXZhbGVuY2UNCitpcyB0aGUg b25seSByZWFzb24gd2h5IGFsbCBmdW5jdGlvbiBwb2ludGVycyByZXNvbHZl IHRvIFBMVCBzbG90cyBpbiB0aGUNCitleGVjdXRhYmxlIGV2ZW4gd2hlbiB0 aGUgZXhlY3V0YWJsZSBkb2VzbuKAmXQgaW5jbHVkZSBpbXBsZW1lbnRhdGlv biBvZiB0aGUNCitmdW5jdGlvbiAoaS5lLiBoYXMgU0hOX1VOREVGIHN5bWJv bCB3aXRoIG5vbi16ZXJvIHN0X3ZhbHVlIHBvaW50aW5nIGF0IHRoZSBQTFQN CitzbG90IGluIHRoZSBleGVjdXRhYmxlKSwgcHJlbGluayBjYW4gcmVzb2x2 ZSBtZXRob2QgYWRkcmVzc2VzIGluIHZpcnR1YWwNCit0YWJsZXMgdG8gdGhl IGFjdHVhbCBtZXRob2QgaW1wbGVtZW50YXRpb24uDQorDQorSW4gbWFueSBj YXNlcyB0aGlzIGlzIGluIHRoZSBzYW1lIGxpYnJhcnkgYXMgdGhlIHZpcnR1 YWwgdGFibGUgKG9yIGluIG9uZSBvZg0KK2xpYnJhcmllcyBpbiBpdHMgbmF0 dXJhbCBzeW1ib2wgbG9va3VwIHNjb3BlKSwgc28gYSBjb25mbGljdCBmaXh1 cCBpcw0KK3VubmVjZXNzYXJ5LiBUaGlzIG9wdGltaXphdGlvbiBzcGVlZHMg dXAgcHJvZ3JhbXMgYWxzbyBhZnRlciBjb250cm9sIGlzDQordHJhbnNmZXJl ZCB0byB0aGUgYXBwbGljYXRpb24gYW5kIG5vdCBqdXN0IHRoZSB0aW1lIHRv IHN0YXJ0IHVwIHRoZQ0KK2FwcGxpY2F0aW9uLCBhbHRob3VnaCBqdXN0IGEg ZmV3IGN5Y2xlcyBwZXIgbWV0aG9kIGNhbGwuIFRoZSBjb25mbGljdCBmaXh1 cA0KK3JlZHVjdGlvbiBpcyBxdWl0ZSBiaWcgb24gc29tZSBwcm9ncmFtcy4N CisNCitCZWxvdyBpcyBzdGF0aXN0aWNzIGZvciBrbWFpbCBwcm9ncmFtIG9u IGNvbXBsZXRlbHkgdW5wcmVsaW5rZWQgYm94Og0KKw0KKyAgJCBMRF9ERUJV Rz1zdGF0aXN0aWNzIC91c3IvYmluL2ttYWlsIDI+JjEgfCBzZWQg4oCZMiw4 IWQ7cy9eICovL+KAmQ0KKw0KKyAgdG90YWwgc3RhcnR1cCB0aW1lIGluIGR5 bmFtaWMgbG9hZGVyOiAyNDA3MjQ4NjcgY2xvY2sgY3ljbGVzDQorICAgICAg ICAgICAgdGltZSBuZWVkZWQgZm9yIHJlbG9jYXRpb246IDIzNDA0OTYzNiBj bG9jayBjeWNsZXMgKDk3LjIlKQ0KKyAgICAgICAgICAgICAgICAgbnVtYmVy IG9mIHJlbG9jYXRpb25zOiAzNDg1NA0KKyAgICAgIG51bWJlciBvZiByZWxv Y2F0aW9ucyBmcm9tIGNhY2hlOiA3NDM2NA0KKyAgICAgICAgbnVtYmVyIG9m IHJlbGF0aXZlIHJlbG9jYXRpb25zOiAzNTM1MQ0KKyAgICAgICAgICAgdGlt ZSBuZWVkZWQgdG8gbG9hZCBvYmplY3RzOiA2MjQxNjc4IGNsb2NrIGN5Y2xl cyAoMi41JSkNCisNCisgICQgbHMgLWwgL3Vzci9iaW4va21haWwNCisgIC1y d3hyLXhyLXggMSByb290IHJvb3QgMjE0OTA4NCBPY3QgMiAxMjowNSAvdXNy L2Jpbi9rbWFpbA0KKw0KKyAgJCAoIFh2ZmIgOjMgJiApID4vZGV2L251bGwg Mj4mMSA8L2Rldi9udWxsOyBzbGVlcCAyMA0KKyAgJCAoIERJU1BMQVk9OjMg a21haWwmICkgPi9kZXYvbnVsbCAyPiYxIDwvZGV2L251bGw7IHNsZWVwIDEw OyBraWxsYWxsIGttYWlsDQorICAkICggRElTUExBWT06MyBrbWFpbCYgKSA+ L2Rldi9udWxsIDI+JjEgPC9kZXYvbnVsbDsgc2xlZXAgMTANCisNCisgICQg Y2F0IC9wcm9jL+KAmC9zYmluL3BpZG9mIGttYWls4oCYL3N0YXRtDQorICA0 MTY0IDQxNjQgMzUwOSAyMjQgMzMgMzkwNyA2NTUNCisNCisgICQga2lsbGFs bCBYdmZiIGtkZWluaXQga21haWwNCisNCitTdGF0aXN0aWNzIGZvciB1bnBy ZWxpbmtlZCBrbWFpbA0KKw0KK3N0YXRtIHNwZWNpYWwgZmlsZSBmb3IgYSBw cm9jZXNzIGNvbnRhaW5zIGl0cyBtZW1vcnkgc3RhdGlzdGljcy4gVGhlIG51 bWJlcnMNCitpbiBpdCBtZWFuIGluIG9yZGVyIHRvdGFsIG51bWJlciBvZiB1 c2VkIHBhZ2VzIChvbiBJQS0zMiBMaW51eCBhIHBhZ2UgaXMgNEtCKSwNCitu dW1iZXIgb2YgcmVzaWRlbnQgcGFnZXMgKGkuZS4gbm90IHN3YXBwZWQgb3V0 KSwgbnVtYmVyIG9mIHNoYXJlZCBwYWdlcywNCitudW1iZXIgb2YgdGV4dCBw YWdlcywgbnVtYmVyIG9mIGxpYnJhcnkgcGFnZXMsIG51bWJlciBvZiBzdGFj ayBhbmQgb3RoZXIgcGFnZXMNCithbmQgbnVtYmVyIG9mIGRpcnR5IHBhZ2Vz IHVzZWQgYnkgdGhlIHByb2Nlc3MuIERpc3RpbmN0aW9uIGJldHdlZW4gdGV4 dCBhbmQNCitsaWJyYXJ5IHBhZ2VzIGlzIHZlcnkgcm91Z2gsIHNvIHRob3Nl IG51bWJlcnMgYXJlbuKAmXQgdGhhdCBtdWNoIHVzZWZ1bC4gT2YNCitpbnRl cmVzdCBhcmUgbWFpbmx5IGZpcnN0IG51bWJlciwgdGhpcmQgbnVtYmVyIGFu ZCBsYXN0IG51bWJlci4NCisNCitTdGF0aXN0aWNzIGZvciBrbWFpbCBvbiBj b21wbGV0ZWx5IHByZWxpbmtlZCBib3g6DQorDQorICAkIExEX0RFQlVHPXN0 YXRpc3RpY3MgL3Vzci9iaW4va21haWwgMj4mMSB8IHNlZCDigJkyLDghZDtz L14gKi8v4oCZDQorICB0b3RhbCBzdGFydHVwIHRpbWUgaW4gZHluYW1pYyBs b2FkZXI6IDg0MDk1MDQgY2xvY2sgY3ljbGVzDQorICAgICAgICAgICAgdGlt ZSBuZWVkZWQgZm9yIHJlbG9jYXRpb246IDMwMjQ3MjAgY2xvY2sgY3ljbGVz ICgzNS45JSkNCisgICAgICAgICAgICAgICAgIG51bWJlciBvZiByZWxvY2F0 aW9uczogMA0KKyAgICAgIG51bWJlciBvZiByZWxvY2F0aW9ucyBmcm9tIGNh Y2hlOiA4OTYxDQorICAgICAgICBudW1iZXIgb2YgcmVsYXRpdmUgcmVsb2Nh dGlvbnM6IDANCisgICAgICAgICAgIHRpbWUgbmVlZGVkIHRvIGxvYWQgb2Jq ZWN0czogNDg5NzMzNiBjbG9jayBjeWNsZXMgKDU4LjIlKQ0KKw0KKyAgJCBs cyAtbCAvdXNyL2Jpbi9rbWFpbA0KKyAgLXJ3eHIteHIteCAxIHJvb3Qgcm9v dCAyMjY5NTAwIE9jdCAyIDEyOjA1IC91c3IvYmluL2ttYWlsDQorDQorICAk ICggWHZmYiA6MyAmICkgPi9kZXYvbnVsbCAyPiYxIDwvZGV2L251bGw7IHNs ZWVwIDIwDQorICAkICggRElTUExBWT06MyBrbWFpbCYgKSA+L2Rldi9udWxs IDI+JjEgPC9kZXYvbnVsbDsgc2xlZXAgMTA7IGtpbGxhbGwga21haWwNCisg ICQgKCBESVNQTEFZPTozIGttYWlsJiApID4vZGV2L251bGwgMj4mMSA8L2Rl di9udWxsOyBzbGVlcCAxMA0KKw0KKyAgJCBjYXQgL3Byb2Mv4oCYL3NiaW4v cGlkb2Yga21haWzigJgvc3RhdG0NCisgIDM4MDMgMzgwMyAzMTg2IDI0OSAz MyAzNTIxIDYxNw0KKw0KKyAgJCBraWxsYWxsIFh2ZmIga2RlaW5pdCBrbWFp bA0KKw0KK1N0YXRpc3RpY3MgZm9yIHByZWxpbmtlZCBrbWFpbA0KKw0KK1N0 YXRpc3RpY3MgZm9yIGttYWlsIG9uIGNvbXBsZXRlbHkgcHJlbGlua2VkIGJv eCB3aXRoIEMrKyBjb25mbGljdCBmaXh1cA0KK29wdGltaXphdGlvbnMgdHVy bmVkIG9mZjoNCisNCisgICQgTERfREVCVUc9c3RhdGlzdGljcyAvdXNyL2Jp bi9rbWFpbCAyPiYxIHwgc2VkIOKAmTIsOCFkO3MvXiAqLy/igJkNCisgIHRv dGFsIHN0YXJ0dXAgdGltZSBpbiBkeW5hbWljIGxvYWRlcjogOTcwNDE2OCBj bG9jayBjeWNsZXMNCisgICAgICAgICAgICB0aW1lIG5lZWRlZCBmb3IgcmVs b2NhdGlvbjogNDczNDcxNSBjbG9jayBjeWNsZXMgKDQ4LjclKQ0KKyAgICAg ICAgICAgICAgICAgbnVtYmVyIG9mIHJlbG9jYXRpb25zOiAwDQorICAgICAg bnVtYmVyIG9mIHJlbG9jYXRpb25zIGZyb20gY2FjaGU6IDU5ODcxDQorICAg ICAgICBudW1iZXIgb2YgcmVsYXRpdmUgcmVsb2NhdGlvbnM6IDANCisgICAg ICAgICAgIHRpbWUgbmVlZGVkIHRvIGxvYWQgb2JqZWN0czogNDQ4Nzk3MSBj bG9jayBjeWNsZXMgKDQ2LjIlKQ0KKw0KKyAgJCBscyAtbCAvdXNyL2Jpbi9r bWFpbA0KKyAgLXJ3eHIteHIteCAxIHJvb3Qgcm9vdCAyODc3MzYwIE9jdCAy IDEyOjA1IC91c3IvYmluL2ttYWlsDQorDQorICAkICggWHZmYiA6MyAmICkg Pi9kZXYvbnVsbCAyPiYxIDwvZGV2L251bGw7IHNsZWVwIDIwDQorICAkICgg RElTUExBWT06MyBrbWFpbCYgKSA+L2Rldi9udWxsIDI+JjEgPC9kZXYvbnVs bDsgc2xlZXAgMTA7IGtpbGxhbGwga21haWwNCisgICQgKCBESVNQTEFZPToz IGttYWlsJiApID4vZGV2L251bGwgMj4mMSA8L2Rldi9udWxsOyBzbGVlcCAx MA0KKw0KKyAgJCBjYXQgL3Byb2Mv4oCYL3NiaW4vcGlkb2Yga21haWzigJgv c3RhdG0NCisgIDM5NTcgMzk1NyAzMzI5IDM5OCAzMyAzNTI2IDYyOA0KKw0K KyAgJCBraWxsYWxsIFh2ZmIga2RlaW5pdCBrbWFpbA0KKw0KK1N0YXRpc3Rp Y3MgZm9yIHByZWxpbmtlZCBrbWFpbCB3aXRob3V0IGNvbmZsaWN0IGZpeHVw IHJlZHVjdGlvbg0KKw0KK09uIHRoaXMgYXBwbGljYXRpb24sIEMrKyBjb25m bGljdCBmaXh1cCBvcHRpbWl6YXRpb25zIHNhdmVkIDUwOTEwIHVubmVlZGVk DQorY29uZmxpY3QgZml4dXBzLCBzcGVlZGVkIHVwIHN0YXJ0dXAgYnkgMTMu MyUgYW5kIGRlY3JlYXNlZCBudW1iZXIgb2YgZGlydHkNCitwYWdlcyBieSAx MSwgd2hpY2ggbWVhbnMgdGhlIGFwcGxpY2F0aW9uIG5lZWRzIDQ0S0IgbGVz cyBtZW1vcnkgcGVyLXByb2Nlc3MuDQorDQorPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQ0KKw0KKzEwIFRocmVhZCBMb2NhbCBTdG9yYWdlIHN1 cHBvcnQNCisNCisNCitUaHJlYWQgTG9jYWwgU3RvcmFnZSBzdXBwb3J0IChb MTJdLCBbMTNdLCBbMTRdKSBoYXMgYmVlbiByZWNlbnRseQ0KK2FkZGVkIHRv IEdDQywNCisNCitHTlUgYmludXRpbHMgYW5kIEdOVSBDIExpYnJhcnkuDQor DQorVExTIHN1cHBvcnQgaXMgYSBzZXQgb2YgbmV3IHJlbG9jYXRpb25zIHdo aWNoIHRvZ2V0aGVyIHdpdGggZHluYW1pYyBsaW5rZXIgYW5kDQorUE9TSVgg dGhyZWFkIGxpYnJhcnkgYWRkaXRpb25zIHByb3ZpZGUgZmFzdGVyIGFuZCBl YXNpZXIgdG8gdXNlIGFsdGVybmF0aXZlIHRvDQordHJhZGl0aW9uYWwgUE9T SVggdGhyZWFkIGxvY2FsIGRhdGEgQVBJIChwdGhyZWFkX2dldHNwZWNpZmlj LA0KK3B0aHJlYWRfc2V0c3BlY2lmaWMsIHB0aHJlYWRfa2V5XyopLg0KKw0K K1RMUyBuZWNlc3NpdGF0ZWQgc2V2ZXJhbCBjaGFuZ2VzIHRvIHByZWxpbmsu IFRocmVhZCBMb2NhbCBzeW1ib2xzICh3aXRoIHR5cGUNCitTVFRfVExTKSBt dXN0IG5vdCBiZSByZWxvY2F0ZWQsIGFzIHRoZXkgYXJlIHJlbGF0aXZlIHRv IHRoZSBzdGFydCBvZiBQVF9UTFMNCitzZWdtZW50IGFuZCB0aHVzIG5vdCB2 aXJ0dWFsIGFkZHJlc3Nlcy4NCisNCitUaGUgZHluYW1pYyBsaW5rZXIgaGFk IHRvIGJlIGVuaGFuY2VkIHNvIHRoYXQgaXQgdGVsbHMgcHJlbGluayBhdA0K K0xEX1RSQUNFX1BSRUxJTktJTkcgdGltZSB3aGF0IFRMUyBtb2R1bGUgSURz IGhhdmUgYmVlbiBhc3NpZ25lZCBhbmQgd2hhdA0KK2FkZHJlc3NlcyByZWxh dGl2ZSB0byBzdGFydCBvZiBUTFMgYmxvY2sgaGF2ZSBiZWVuIGdpdmVuIHRv IFBUX1RMUyBzZWdtZW50IG9mDQorZWFjaCBsaWJyYXJ5IG9yIGV4ZWN1dGFi bGUuDQorDQorVGhlcmUgYXJlIDMgY2xhc3NlcyBvZiBuZXcgVExTIGR5bmFt aWMgcmVsb2NhdGlvbnMgcHJlbGluayBpcyBpbnRlcmVzdGVkIGluDQorKHdp dGggZGlmZmVyZW50IG5hbWVzIG9uIGRpZmZlcmVudCBhcmNoaXRlY3R1cmVz KS4NCisNCitJbiBmaXJzdCBjbGFzcyBhcmUgbW9kdWxlIElEIHJlbG9jYXRp b25zLCB3aGljaCBhcmUgdXNlZCBmb3IgVExTIEdsb2JhbA0KK0R5bmFtaWMg YW5kIExvY2FsIER5bmFtaWMgbW9kZWxzIChmb3IgR2xvYmFsIER5bmFtaWMg bW9kZWwgdGhleSBhcmUgc3VwcG9zZWQNCit0byByZXNvbHZlIHRvIG1vZHVs ZSBJRCBvZiB0aGUgZXhlY3V0YWJsZSBvciBzaGFyZWQgbGlicmFyeSBvZiBw YXJ0aWN1bGFyDQorU1RUX1RMUyBzeW1ib2wsIGZvciBMb2NhbCBEeW5hbWlj IG1vZGVsIHRoaXMgcmVzb2x2ZXMgdG8gbW9kdWxlIElEIG9mIHRoZQ0KK2Nv bnRhaW5pbmcgc2hhcmVkIGxpYnJhcnkpLiBUaGVzZSByZWxvY2F0aW9ucyBh cmUgaGFyZCB0byBwcmVsaW5rIGluIGFueQ0KK3VzZWZ1bCB3YXkgd2l0aG91 dCBtb3ZpbmcgVExTIG1vZHVsZSBJRCBhc3NpZ25tZW50IGZyb20gdGhlIGR5 bmFtaWMgbGlua2VyIHRvDQorcHJlbGluay4NCisNCitBbHRob3VnaCBwcmVs aW5rIGNhbiBmaW5kIG91dCB3aGF0IHNoYXJlZCBsaWJyYXJ5IHdpbGwgY29u dGFpbiBwYXJ0aWN1bGFyDQorU1RUX1RMUyBzeW1ib2wgdW5sZXNzIHRoZXJl IHdpbGwgYmUgY29uZmxpY3RzIGZvciB0aGF0IHN5bWJvbCwgaXQgZG9lc27i gJl0IGtub3cNCitob3cgbWFueSBzaGFyZWQgbGlicmFyaWVzIHdpdGggUFRf VExTIHNlZ21lbnQgd2lsbCBwcmVjZWRlIGl0IG9yIHdoZXRoZXINCitleGVj dXRhYmxlIHdpbGwgb3Igd2lsbCBub3QgaGF2ZSBQVF9UTFMgc2VnbWVudC4g VW50aWwgVExTIGlzIHdpZGVseSBkZXBsb3llZA0KK2J5IG1hbnkgbGlicmFy aWVzLCBwcmVsaW5rIGNvdWxkIGd1ZXNzIHRoYXQgb25seSBsaWJjLnNvIHdp bGwgaGF2ZSBQVF9UTFMgYW5kDQorc3RvcmUgMSAoZmlyc3QgbW9kdWxlIElE IHRoZSBkeW5hbWljIGxpbmtlciBhc3NpZ25zKSwgYnV0IGdpdmVuIHRoYXQg bGliYy5zbw0KK3VzZXMganVzdCBvbmUgc3VjaCByZWxvY2F0aW9uIGl0IGlz IG5vdCBwcm9iYWJseSB3b3J0aCBkb2luZyB0aGlzIHdoZW4gc29vbg0KK290 aGVyIHNoYXJlZCBsaWJyYXJpZXMgYmVzaWRlcyBsaWJjLnNvIGFuZCBsaWJH TC5zbyBzdGFydCB1c2luZyBpdCBoZWF2aWx5Lg0KK0JlY2F1c2Ugb2YgdGhp cyBwcmVsaW5rIGRvZXNu4oCZdCBkbyBhbnl0aGluZyBzcGVjaWFsIHdoZW4g cHJlbGlua2luZyBzaGFyZWQNCitsaWJyYXJpZXMgd2l0aCB0aGVzZSByZWxv Y2F0aW9ucyBhbmQgZm9yIGVhY2ggcmVsb2NhdGlvbnMgaW4gdGhpcyBjbGFz cw0KK2NyZWF0ZXMgb25lIGNvbmZsaWN0IGZpeHVwLg0KKw0KK0luIHNlY29u ZCBjbGFzcyBhcmUgcmVsb2NhdGlvbnMgd2hpY2ggcmVzb2x2ZSB0byBzdF92 YWx1ZSBvZiBzb21lIFNUVF9UTFMNCitzeW1ib2wuIFRoZXNlIHJlbG9jYXRp b25zIGFyZSB1c2VkIGluIEdsb2JhbCBEeW5hbWljIFRMUyBtb2RlbCAoaW4g TG9jYWwNCitEeW5hbWljIHRoZXkgYXJlIHJlc29sdmVkIGF0IGxpbmsgdGlt ZSBhbHJlYWR5KSBhbmQgZnJvbSBwcmVsaW5rIHBvaW50IG9mIHZpZXcNCit0 aGV5IGFyZSBtdWNoIG1vcmUgc2ltaWxhciB0byBub3JtYWwgcmVsb2NhdGlv bnMgdGhhbiB0aGUgb3RoZXIgdHdvIGNsYXNzZXMuDQorV2hlbiB0aGUgU1RU X1RMUyBzeW1ib2wgaXMgbG9va2VkIHVwIHN1Y2Nlc3NmdWxseSBpbiBzaGFy ZWQgbGlicmFyeeKAmXMgbmF0dXJhbA0KK3NlYXJjaCBzY29wZSwgcHJlbGlu ayBqdXN0IHN0b3JlcyBpdHMgc3RfdmFsdWUgaW50byB0aGUgcmVsb2NhdGlv bi4gVGhlDQorY2hhbmNlcyB0aGVyZSB3aWxsIGJlIGEgY29uZmxpY3QgYXJl IGV2ZW4gc21hbGxlciB0aGFuIHdpdGggbm9ybWFsIHN5bWJvbA0KK2xvb2t1 cHMsIHNpbmNlIG92ZXJsb2FkaW5nIFRMUyBzeW1ib2xzIG1lYW5zIHdhc3Rl ZCBtZW1vcnkgaW4gZWFjaCBzaW5nbGUNCit0aHJlYWQgYW5kIHRodXMgbGli cmFyeSB3cml0ZXJzIHdpbGwgdHJ5IHRvIGF2b2lkIGl0IGlmIHBvc3NpYmxl Lg0KKw0KKw0KK1RoZSB0aGlyZCBjbGFzcyBpbmNsdWRlcyByZWxvY2F0aW9u cyB3aGljaCByZXNvbHZlIHRvIG9mZnNldHMgd2l0aGluIHByb2dyYW3igJlz DQoraW5pdGlhbCBUTFMgYmxvY2suDQorDQorWyBOZWdhdGl2ZSBvbiBhcmNo aXRlY3R1cmVzIHdoaWNoIGhhdmUgVExTIGJsb2NrIGltbWVkaWF0ZWx5IGJl bG93IHRocmVhZA0KKyAgcG9pbnRlciAoZS5nLiBJQS0zMiwgQU1ENjQsIFNQ QVJDLCBTLzM5MCkgYW5kIHBvc2l0aXZlIG9uIGFyY2hpdGVjdHVyZXMNCisg IHdoaWNoIGhhdmUgVExTIGJsb2NrIGF0IHRocmVhZCBwb2ludGVyIG9yIGEg ZmV3IGJ5dGVzIGFib3ZlIGl0IChlLmcuDQorICBQb3dlclBDLCBBbHBoYSwg SUEtNjQsIFN1cGVySCkuIF0NCisNCitSZWxvY2F0aW9uIGluIHRoaXMgY2xh c3MgYXJlIHVzZWQgaW4gSW5pdGlhbCBFeGVjIFRMUyBtb2RlbCAob3IgaW4g TG9jYWwgRXhlYw0KK21vZGVsIGlmIHRoaXMgbW9kZWwgaXMgc3VwcG9ydGVk IGluIHNoYXJlZCBsaWJyYXJpZXMpLiBUaGVzZSBvZmZzZXRzIGFyZSBldmVu DQoraGFyZGVyIHRvIHByZWRpY3QgdGhhbiBtb2R1bGUgSURzIGFuZCB1bmxp a2UgbW9kdWxlIElEcyBpdCB3b3VsZG7igJl0IGJlIHZlcnkNCitoZWxwZnVs IGlmIHRoZXkgd2VyZSBhc3NpZ25lZCBieSBwcmVsaW5rIGluc3RlYWQgb2Yg ZHluYW1pYyBsaW5rZXIgKHdoaWNoDQord291bGQganVzdCByZWFkIHRoZW0g ZnJvbSBzb21lIGR5bmFtaWMgdGFnKS4gVGhhdOKAmXMgYmVjYXVzZSBUTFMg YmxvY2sgbmVlZHMgdG8NCitiZSBwYWNrZWQgdGlnaHRseSBhbmQgYW55IGFz c2lnbm1lbnRzIGluIHByZWxpbmsgY291bGRu4oCZdCB0YWtlIGludG8gYWNj b3VudA0KK290aGVyIHNoYXJlZCBsaWJyYXJpZXMgbGlua2VkIGludG8gdGhl IHNhbWUgZXhlY3V0YWJsZSBhbmQgdGhlIGV4ZWN1dGFibGUNCitpdHNlbGYu IFNpbWlsYXJseSB0byBtb2R1bGUgSUQgcmVsb2NhdGlvbnMsIHByZWxpbmsg ZG9lc27igJl0IGRvIGFueXRoaW5nIGFib3V0DQordGhlbSB3aGVuIHByZWxp bmtpbmcgc2hhcmVkIGxpYnJhcmllcyBhbmQgZm9yIGVhY2ggc3VjaCByZWxv Y2F0aW9uIGNyZWF0ZXMgYQ0KK2NvbmZsaWN0IGZpeHVwLg0KKw0KKz09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0NCisNCisxMSBQcmVsaW5raW5n IG9mIGV4ZWN1dGFibGVzIGFuZCBzaGFyZWQgbGlicmFyaWVzDQorDQorUmV3 cml0aW5nIG9mIGV4ZWN1dGFibGVzIGlzIGhhcmRlciB0aGFuIGZvciBzaGFy ZWQgbGlicmFyaWVzLCBib3RoIGJlY2F1c2UNCit0aGVyZSBhcmUgbW9yZSBj aGFuZ2VzIG5lY2Vzc2FyeSBhbmQgYmVjYXVzZSBzaGFyZWQgbGlicmFyaWVz IGFyZSByZWxvY2F0YWJsZQ0KK2FuZCB0aHVzIGhhdmUgZHluYW1pYyByZWxv Y2F0aW9ucyBmb3IgYWxsIGFic29sdXRlIGFkZHJlc3Nlcy4gQWZ0ZXIgY29s bGVjdGluZw0KK2FsbCBpbmZvcm1hdGlvbiBmcm9tIHRoZSBkeW5hbWljIGxp bmtlciBhbmQgYXNzaWduaW5nIHZpcnR1YWwgYWRkcmVzcyBzcGFjZQ0KK3Ns b3RzIHRvIGFsbCBzaGFyZWQgbGlicmFyaWVzLCBwcmVsaW5raW5nIG9mIHNo YXJlZCBsaWJyYXJpZXMgaW52b2x2ZXMNCitmb2xsb3dpbmcgc3RlcHM6DQor DQor4oCiIFJlbG9jYXRpb24gb2YgdGhlIHNoYXJlZCBsaWJyYXJ5IHRvIHRo ZSBhc3NpZ25lZCBiYXNlIGFkZHJlc3MuDQorDQor4oCiIFJFTCB0byBSRUxB IGNvbnZlcnNpb24gaWYgbmVlZGVkICh0aGUgb25seSBzdGVwIHdoaWNoIGNo YW5nZXMgc2l6ZXMgb2YNCisgIGFsbG9jYXRlZCBzZWN0aW9ucyBpbiB0aGUg bWlkZGxlKS4NCisNCivigKIgT24gYXJjaGl0ZWN0dXJlcyB3aGljaCBoYXZl IFNIVF9OT0JJVFMgLnBsdCBzZWN0aW9ucywgYmVmb3JlIHJlbG9jYXRpb25z IGFyZQ0KKyAgYXBwbGllZCB0aGUgc2VjdGlvbiBuZWVkcyB0byBiZSBjb252 ZXJ0ZWQgdG8gU0hUX1BST0dCSVRTLiBBcyB0aGUgc2VjdGlvbg0KKyAgbmVl ZHMgdG8gYmUgYXQgdGhlIGVuZCAob3IgYWZ0ZXIgaXQpIG9mIGZpbGUgYmFj a2VkIHBhcnQgb2Ygc29tZSBQVF9MT0FEDQorICBzZWdtZW50LCB0aGlzIGp1 c3QgbWVhbnMgdGhhdCB0aGUgZmlsZSBiYWNrZWQgdXAgcGFydCBuZWVkcyB0 byBiZSBlbmxhcmdlZCwNCisgIHRoZSBmaWxlIGZpbGxlZCB3aXRoIHplcm9z IGFuZCBhbGwgZm9sbG93aW5nIHNlY3Rpb24gZmlsZSBvZmZzZXRzIG9yIHBy b2dyYW0NCisgIGhlYWRlciBlbnRyeSBmaWxlIG9mZnNldHMgYWRqdXN0ZWQu DQorDQorICBBbGwgU0hUX05PQklUUyBzZWN0aW9ucyBpbiB0aGUgc2FtZSBQ VF9MT0FEIHNlZ21lbnQgd2l0aCB2aXJ0dWFsIGFkZHJlc3Nlcw0KKyAgbG93 ZXIgdGhhbiB0aGUgLnBsdCBzdGFydCBhZGRyZXNzIG5lZWQgdG8gYmUgY29u dmVydGVkIGZyb20gU0hUX05PQklUUyB0bw0KKyAgU0hUX1BST0dCSVRTIHRv by4gV2l0aG91dCBtYWtpbmcgdGhlIHNlY3Rpb24gU0hUX1BST0dCSVRTLCBw cmVsaW5rIGNhbm5vdA0KKyAgYXBwbHkgcmVsb2NhdGlvbnMgYWdhaW5zdCBp dCBhcyBzdWNoIHNlY3Rpb25zIGNvbnRhaW4gb25seSB6ZXJvcy4NCisgIEFy Y2hpdGVjdHVyZXMgd2l0aCBTSFRfTk9CSVRTIC5wbHQgc2VjdGlvbiBzdXBw b3J0ZWQgYnkgcHJlbGluayBhcmUgUG93ZXJQQw0KKyAgYW5kIFBvd2VyUEM2 NC4NCisNCivigKIgQXBwbHlpbmcgcmVsb2NhdGlvbnMuIEZvciBlYWNoIGR5 bmFtaWMgcmVsb2NhdGlvbiBpbiB0aGUgc2hhcmVkIGxpYnJhcnksDQorICBh ZGRyZXNzIG9mIHJlbG9jYXRpb27igJlzIHN5bWJvbCBsb29rZWQgdXAgaW4g bmF0dXJhbCBzeW1ib2wgbG9va3VwIHNlYXJjaA0KKyAgc2NvcGUgb2YgdGhl IHNoYXJlZCBsaWJyYXJ5IChvciAwIGlmIHRoZSBzeW1ib2wgaXMgbm90IGZv dW5kIGluIHRoYXQgc2VhcmNoDQorICBzY29wZSkgaXMgc3RvcmVkIGluIGFu IGFyY2hpdGVjdHVyZSBhbmQgcmVsb2NhdGlvbiB0eXBlIGRlcGVuZGVudCB3 YXkgdG8NCisgIG1lbW9yeSBwb2ludGVkIGJ5IHJfb2Zmc2V0IGZpZWxkIG9m IHRoZSByZWxvY2F0aW9uLiBUaGlzIHN0ZXAgdXNlcyBzeW1ib2wNCisgIGxv b2t1cCBpbmZvcm1hdGlvbiBwcm92aWRlZCBieSBkeW5hbWljIGxpbmtlci4N CisNCivigKIgQWRkaXRpb24gb3IgbW9kaWZpY2F0aW9uIG9mIERUX0NIRUNL U1VNIGFuZCBEVF9HTlVfUFJFTElOS0VEIGR5bmFtaWMgdGFncy4NCisgIFRo ZSBmb3JtZXIgaXMgc2V0IHRvIGNoZWNrc3VtIG9mIGFsbG9jYXRlZCBzZWN0 aW9ucyBpbiB0aGUgc2hhcmVkDQorICBsaWJyYXJ5LCB0aGUgbGF0dGVyIHRv IHRpbWUgb2YgcHJlbGlua2luZy4NCisNCisgIFsgUHJlbGluayBpcyBub3Qg YWJsZSB0byBncm93IC5keW5hbWljIHNlY3Rpb24sIHNvIGl0IG5lZWRzIHNv bWUgc3BhcmUNCisgICAgZHluYW1pYyB0YWdzIChEVF9OVUxMKSBhdCB0aGUg ZW5kIG9mIC5keW5hbWljIHNlY3Rpb24uIEdOVSBsaW5rZXINCisgICAgdmVy c2lvbnMgcmVsZWFzZWQgYWZ0ZXIgQXVndXN0IDIwMDEgbGVhdmUgc3BhY2Ug YnkgZGVmYXVsdC4gXQ0KKw0KK+KAoiBPbiBhcmNoaXRlY3R1cmVzIHdoaWNo IGRvbuKAmXQgdXNlIHdyaXRhYmxlIC5wbHQsIGJ1dCBpbnN0ZWFkIHVzZSAu Z290LnBsdA0KKyAgKHRoaXMgc2VjdGlvbiBpcyBtZXJnZWQgZHVyaW5nIGxp bmtpbmcgaW50byAuZ290KSBzZWN0aW9uLCBwcmVsaW5rIHR5cGljYWxseQ0K KyAgc3RvcmVzIGFkZHJlc3MgaW50byB0aGUgZmlyc3QgUExUIHNsb3QgaW4g LnBsdCBzZWN0aW9uIHRvIHRoZSByZXNlcnZlZA0KKyAgc2Vjb25kIHdvcmQg b2YgLmdvdCBzZWN0aW9uLiBPbiB0aGVzZSBhcmNoaXRlY3R1cmVzLCB0aGUg ZHluYW1pYyBsaW5rZXIgaGFzDQorICB0byBpbml0aWFsaXplIC5wbHQgc2Vj dGlvbiBpZiBsYXp5IGJpbmRpbmcuDQorDQorICBPbiBub24tcHJlbGlua2Vk IGV4ZWN1dGFibGVzIG9yIHNoYXJlZCBsaWJyYXJpZXMgdGhpcyB0eXBpY2Fs bHkgbWVhbnMgYWRkaW5nDQorICBsb2FkIG9mZnNldCB0byB0aGUgdmFsdWVz IGluIC5nb3QucGx0IHNlY3Rpb24sIGZvciBwcmVsaW5rZWQgc2hhcmVkDQor ICBsaWJyYXJpZXMgb3IgZXhlY3V0YWJsZXMgaWYgcHJlbGlua2luZyBpbmZv cm1hdGlvbiBjYW5ub3QgYmUgdXNlZCBpdCBuZWVkcw0KKyAgdG8gY29tcHV0 ZSB0aGUgcmlnaHQgdmFsdWVzIGluIC5nb3QucGx0IHNlY3Rpb24gd2l0aG91 dCBsb29raW5nIGF0IHRoaXMNCisgIHNlY3Rpb27igJlzIGNvbnRlbnQgKHNp bmNlIGl0IGNvbnRhaW5zIHByZWxpbmtpbmcgaW5mb3JtYXRpb24pLiBUaGUg c2Vjb25kDQorICB3b3JkIGluIC5nb3Qgc2VjdGlvbiBpcyB1c2VkIGZvciB0 aGlzIGNvbXB1dGF0aW9uLg0KKw0KK+KAoiBBZGRpdGlvbiBvZiAuZ251X3By ZWxpbmtfdW5kbyB1bmFsbG9jYXRlZCBzZWN0aW9uIGlmIG5vdCBwcmVzZW50 IHlldC4gVGhpcw0KKyAgc2VjdGlvbiBpcyB1c2VkIGJ5IHByZWxpbmsgaW50 ZXJuYWxseSBkdXJpbmcgdW5kbyBvcGVyYXRpb24uDQorDQor4oCiIEFkZGl0 aW9uIG9mIC5nbnVfbGlibGlzdCBhbmQgLmdudV9saWJzdHIgdW5hbGxvY2F0 ZWQgc2VjdGlvbnMgb3IsIGlmIHRoZXkNCisgIGFyZSBhbHJlYWR5IHByZXNl bnQsIHRoZWlyIHVwZGF0ZSBpbmNsdWRpbmcgcG9zc2libGUgZ3Jvd2luZyBv ciBzaHJpbmtpbmcuDQorICBUaGVzZSBzZWN0aW9ucyBhcmUgdXNlZCBvbmx5 IGJ5IHByZWxpbmsgdG8gY29tcGFyZSB0aGUgZGVwZW5kZW50IGxpYnJhcmll cw0KKyAgKGFuZCB0aGVpciBvcmRlcikgYXQgdGhlIHRpbWUgd2hlbiB0aGUg c2hhcmVkIGxpYnJhcnkgd2FzIHByZWxpbmtlZCBhZ2FpbnN0DQorICBjdXJy ZW50IGRlcGVuZGVuY2llcy4gSWYgYSBzaGFyZWQgbGlicmFyeSBoYXMgbm8g ZGVwZW5kZW5jaWVzIChlLmcuIGR5bmFtaWMNCisgIGxpbmtlciksIHRoZXNl IHNlY3Rpb25zIGFyZSBub3QgcHJlc2VudC4NCisNCisgIEFkZGluZyBvciBy ZXNpemluZyB1bmFsbG9jYXRlZCBzZWN0aW9uIG5lZWRzIGp1c3QgZmlsZSBv ZmZzZXRzIG9mIGZvbGxvd2luZw0KKyAgdW5hbGxvY2F0ZWQgc2VjdGlvbnMg cmVjb21wdXRlZCAoZW5zdXJpbmcgcHJvcGVyIGFsaWdubWVudCksIGdyb3dp bmcgc2VjdGlvbg0KKyAgaGVhZGVyIHRhYmxlIGFuZCAuc2hzdHJ0YWIgYW5k IGFkZGluZyBuZXcgc2VjdGlvbiBuYW1lcyB0byB0aGF0IHNlY3Rpb24uDQor ICBQcmVsaW5raW5nIG9mIGV4ZWN1dGFibGVzIGludm9sdmVzIGZvbGxvd2lu ZyBzdGVwczoNCisNCivigKIgUkVMIHRvIFJFTEEgY29udmVyc2lvbiBpZiBu ZWVkZWQuDQorDQor4oCiIFNIVF9OT0JJVFMgdG8gU0hUX1BST0dCSVRTIGNv bnZlcnNpb24gb2YgLnBsdCBzZWN0aW9uIGlmIG5lZWRlZC4NCisNCivigKIg QXBwbHlpbmcgcmVsb2NhdGlvbnMuDQorDQor4oCiIEFkZGl0aW9uIG9yIHJl c2l6aW5nIG9mIGFsbG9jYXRlZCAuZ251LmNvbmZsaWN0IHNlY3Rpb24gY29u dGFpbmluZyBsaXN0IG9mDQorICBjb25mbGljdCBmaXh1cHMuDQorDQor4oCi IEFkZGl0aW9uIG9yIHJlc2l6aW5nIG9mIGFsbG9jYXRlZCAuZ251LmxpYmxp c3Qgc2VjdGlvbiB3aGljaCBpcyB1c2VkIGJ5IHRoZQ0KKyAgZHluYW1pYyBs aW5rZXIgYXQgcnVudGltZSB0byBzZWUgaWYgbm9uZSBvZiB0aGUgZGVwZW5k ZW5jaWVzIGNoYW5nZWQgb3Igd2VyZQ0KKyAgcmVvcmRlcmVkLiBJZiB0aGV5 IHdlcmUsIGl0IGNvbnRpbnVlcyBub3JtYWwgcmVsb2NhdGlvbiBwcm9jZXNz aW5nLA0KKyAgb3RoZXJ3aXNlIHRoZXkgY2FuIGJlIHNraXBwZWQgYW5kIG9u bHkgY29uZmxpY3QgZml4dXBzIGFwcGxpZWQuDQorDQor4oCiIEdyb3dpbmcg b2YgYWxsb2NhdGVkIC5keW5zdHIgc2VjdGlvbiwgd2hlcmUgc3RyaW5ncyBy ZWZlcmVuY2VkIGZyb20NCisgIC5nbnUubGlibGlzdCBzZWN0aW9uIG5lZWQg dG8gYmUgYWRkZWQuDQorDQor4oCiIElmIHRoZXJlIGFyZSBhbnkgQ09QWSBy ZWxvY2F0aW9ucyAod2hpY2ggcHJlbGluayB3YW50cyB0byBoYW5kbGUgcmF0 aGVyIHRoYW4NCisgIGRlZmVycmluZyB0aGVtIGFzIGNvbmZsaWN0IGZpeHVw cyB0byBydW50aW1lKSwgdGhleSBuZWVkIHRvIGJlIGFwcGxpZWQuDQorDQor 4oCiIE1vZGlmeWluZyBzZWNvbmQgd29yZCBpbiAuZ290IHNlY3Rpb24gZm9y IC5nb3QucGx0IHVzaW5nIGFyY2hpdGVjdHVyZXMuDQorDQor4oCiIEFkZGl0 aW9uIG9yIGFkanVzdGluZyBvZiBkeW5hbWljIHRhZ3Mgd2hpY2ggYWxsb3cg dGhlIGR5bmFtaWMgbGlua2VyIHRvIGZpbmQNCisgIHRoZSAuZ251LmxpYmxp c3QgYW5kIC5nbnUuY29uZmxpY3Qgc2VjdGlvbnMgYW5kIHRoZWlyIHNpemVz LiBEVF9HTlVfQ09ORkxJQ1QNCisgIGFuZCBEVF9HTlVfQ09ORkxJQ1RTWiBz aG91bGQgYmUgcHJlc2VudCBpZiB0aGVyZSBhcmUgYW55IGNvbmZsaWN0IGZp eHVwcy4gSXQNCisgIHNob3VsZCBjb250YWluIHRoZSB2aXJ0dWFsIGFkZHJl c3Mgb2YgdGhlIC5nbnUuY29uZmxpY3Qgc2VjdGlvbiBzdGFydCByZXNwLg0K KyAgaXRzIHNpemUgaW4gYnl0ZXMuIERUX0dOVV9MSUJMSVNUIGFuZCBEVF9H TlVfTElCTElTVFNaIG5lZWQgdG8gYmUgcHJlc2VudCBpbg0KKyAgYWxsIHBy ZWxpbmtlZCBleGVjdXRhYmxlcyBhbmQgbXVzdCBiZSBlcXVhbCB0aGUgdG8g dmlydHVhbCBhZGRyZXNzIG9mIHRoZQ0KKyAgLmdudS5saWJsaXN0IHNlY3Rp b24gYW5kIGl0cyBzaXplIGluIGJ5dGVzLg0KKw0KK+KAoiBBZGRpdGlvbiBv ZiAuZ251X3ByZWxpbmtfdW5kbyB1bmFsbG9jYXRlZCBzZWN0aW9uIGlmIG5v dCBwcmVzZW50Lg0KKw0KK0V4ZWN1dGFibGVzIGNhbiBoYXZlIGFic29sdXRl IHJlbG9jYXRpb25zIGFscmVhZHkgYXBwbGllZCAoYW5kIHdpdGhvdXQgYQ0K K2R5bmFtaWMgcmVsb2NhdGlvbikgdG8gdmlydHVhbGx5IGFueSBhbGxvY2F0 ZWQgU0hUX1BST0dCSVRTIHNlY3Rpb24sDQorDQorWyBPbmUgZXhjZXB0aW9u IGlzIC5pbnRlcnAgc3BlY2lhbCBzZWN0aW9uLiBJdCBzaG91bGRu4oCZdCBo YXZlIHJlbG9jYXRpb25zDQorICBhcHBsaWVkIHRvIGl0LCBub3IgYW55IG90 aGVyIHNlY3Rpb24gc2hvdWxkIHJlZmVyZW5jZSBpdC4gXQ0KKw0KK2FnYWlu c3QgYWxtb3N0IGFsbCBhbGxvY2F0ZWQgU0hUX1BST0dCSVRTIGFuZCBTSFRf Tk9CSVRTIHNlY3Rpb25zLiBUaGlzIG1lYW5zDQordGhhdCB3aGVuIGdyb3dp bmcsIGFkZGluZyBvciBzaHJpbmtpbmcgYWxsb2NhdGVkIHNlY3Rpb25zIGlu IGV4ZWN1dGFibGVzLCBhbGwNCitTSFRfUFJPR0JJVFMgYW5kIFNIVF9OT0JJ VFMgc2VjdGlvbiBtdXN0IGtlZXAgdGhlaXIgb3JpZ2luYWwgdmlydHVhbCBh ZGRyZXNzZXMNCithbmQgc2l6ZXMgMTguDQorDQorWyBXaXRoIGEgbm90YWJs ZSBleGNlcHRpb24gb2Ygc3BsaXR0aW5nIG9uZSBzZWN0aW9uIGludG8gdHdv IGNvdmVyaW5nIHRoZQ0KKyAgc2FtZSB2aXJ0dWFsIGFkZHJlc3MgcmFuZ2Uu IF0NCisNCitQcmVsaW5rIHRyaWVzIHZhcmlvdXMgcGxhY2VzIHdoZXJlIHRv IHB1dCBhbGxvY2F0ZWQgc2VjdGlvbnMgd2hpY2ggd2VyZQ0KK2FkZGVkIG9y IGdyZXc6DQorDQor4oCiIEluIHRoZSB1bmxpa2VseSBjYXNlIGlmIHRoZXJl IGlzIGFscmVhZHkgc29tZSBnYXAgYmV0d2VlbiBzZWN0aW9ucyBpbg0KKyAg cmVhZG9ubHkgUFRfTE9BRCBzZWdtZW50IHdoZXJlIHRoZSBzZWN0aW9uIGZp dHMuDQorDQor4oCiIElmIHRoZSBTSFRfTk9CSVRTIHNlY3Rpb25zIGFyZSBz bWFsbCBlbm91Z2ggdG8gZml0IGludG8gYSBwYWdlIHRvZ2V0aGVyIHdpdGgN CisgIHRoZSBwcmVjZWRpbmcgU0hUX1BST0dCSVRTIHNlY3Rpb24gYW5kIHRo ZXJlIGlzIHN0aWxsIHNvbWUgc3BhY2UgaW4gdGhlIHBhZ2UNCisgIGFmdGVy IHRoZSBTSFRfTk9CSVRTIHNlY3Rpb25zLiBJbiB0aGlzIGNhc2UsIHByZWxp bmsgY29udmVydHMgdGhlIFNIVF9OT0JJVFMNCisgIHNlY3Rpb25zIGludG8g U0hUX1BST0dCSVRTIHNlY3Rpb25zLCBmaWxscyB0aGVtIHdpdGggemVyb3Mg YW5kIGFkZHMgdGhlIG5ldw0KKyAgc2VjdGlvbiBhZnRlciBpdC4NCisNCisg IFRoaXMgZG9lc27igJl0IGluY3JlYXNlIG51bWJlciBvZiBQVF9MT0FEIHNl Z21lbnRzLCBidXQgdW5mb3J0dW5hdGVseSB0aG9zZQ0KKyAgYWRkZWQgc2Vj dGlvbnMgYXJlIHdyaXRhYmxlLg0KKw0KKyAgVGhpcyBkb2VzbuKAmXQgbWF0 dGVyIG11Y2ggZm9yIGUuZy4gLmdudS5jb25mbGljdCBzZWN0aW9uIHdoaWNo IGlzIG9ubHkgdXNlZA0KKyAgYmVmb3JlIGNvbnRyb2wgaXMgdHJhbnNmZXJl ZCB0byB0aGUgcHJvZ3JhbSwgYnV0IGNvdWxkIG1hdHRlciBmb3IgLmR5bnN0 cg0KKyAgd2hpY2ggaXMgdXNlZCBldmVuIGR1cmluZyBkbG9wZW4uDQorDQor 4oCiIE9uIElBLTMyLCBleGVjdXRhYmxlcyBoYXZlIGZvciBoaXN0b3JpY2Fs IHJlYXNvbnMgYmFzZSBhZGRyZXNzIDB4ODA0ODAwMC4NCisgIFRoZSByZWFz b24gZm9yIHRoaXMgd2FzIHRoYXQgd2hlbiBzdGFjayB3YXMgcHV0IGltbWVk aWF0ZWx5IGJlbG93DQorICBleGVjdXRhYmxlcywgc3RhY2sgYW5kIHRoZSBl eGVjdXRhYmxlIGNvdWxkIGNvZXhpc3QgaW4gdGhlIHNhbWUgc2Vjb25kIGxl dmVsDQorICBwYWdlIHRhYmxlLiBMaW51eCBwdXRzIHRoZSBzdGFjayB0eXBp Y2FsbHkgYXQgdGhlIGVuZCBvZiB2aXJ0dWFsIGFkZHJlc3MNCisgIHNwYWNl IGFuZCBzbyBrZWVwaW5nIHRoaXMgZXhhY3QgYmFzZSBhZGRyZXNzIGlzIG5v dCByZWFsbHkgbmVjZXNzYXJ5Lg0KKw0KKyAgUHJlbGluayBjYW4gZGVjcmVh c2UgdGhlIGJhc2UgYWRkcmVzcyBhbmQgdGh1cyBpbmNyZWFzZSBzaXplIG9m IHJlYWQtb25seQ0KKyAgUFRfTE9BRCBzZWdtZW50IHdoaWxlIFNIVF9QUk9H QklUUyBhbmQgU0hUX05PQklUUyBzZWN0aW9uIGNhbiBzdGF5IGF0IHRoZWly DQorICBwcmV2aW91cyBhZGRyZXNzZXMuIEp1c3QgdGhlaXIgZmlsZSBvZmZz ZXRzIG5lZWQgdG8gYmUgaW5jcmVhc2VkLiBBbGwgdGhlc2UNCisgIHNlZ21l bnQgaGVhZGVyIGFkanVzdG1lbnRzIG5lZWQgdG8gYmUgZG9uZSBpbiBtdWx0 aXBsaWVzIG9mIEVMRiBwYWdlIHNpemVzLA0KKyAgc28gZXZlbiBpZiBwcmVs aW5rIGNob3NlIHRvIGRvIHNpbWlsYXIgdGhpbmdzIG9uIGFyY2hpdGVjdHVy ZXMgb3RoZXIgdGhhbg0KKyAgSUEtMzIgd2hpY2ggdHlwaWNhbGx5IHN0YXJ0 IGV4ZWN1dGFibGVzIG9uIHNvbWUgYWRkcmVzcyB3aGljaCBpcyBhIHBvd2Vy IG9mDQorICAyLCBpdCB3b3VsZCBiZSBvbmx5IHJlYXNvbmFibGUgaWYgRUxG IHBhZ2Ugc2l6ZSBvbiB0aGF0IGFyY2hpdGVjdHVyZSAod2hpY2gNCisgIGNh biBiZSBtdWNoIGJpZ2dlciB0aGFuIHBhZ2Ugc2l6ZSB1c2VkIGJ5IHRoZSBv cGVyYXRpbmcgc3lzdGVtKSBpcyB2ZXJ5DQorICBzbWFsbC4NCisNCivigKIg TGFzdCBwb3NzaWJpbGl0eSBpcyB0byBjcmVhdGUgYSBuZXcgUFRfTE9BRCBz ZWdtZW50Lg0KKw0KKyAgWyBMaW51eCBrZXJuZWxzIGJlZm9yZSAyLjQuMTAg bG9hZGVkIGV4ZWN1dGFibGVzIHdoaWNoIGhhZCBtaWRkbGUgUFRfTE9BRA0K KyAgICBzZWdtZW50IHdpdGggcF9tZW1zeiBiaWdnZXIgdGhhbiBwX2ZpbGVz eiBpbmNvcnJlY3RseSwgc28gcHJlbGluayBzaG91bGQNCisgICAgYmUgb25s eSB1c2VkIG9uIHN5c3RlbXMgd2l0aCAyLjQuMTAgb3IgbGF0ZXIga2VybmVs cy5dDQorDQorICBTZWN0aW9uIGltbWVkaWF0ZWx5IGFib3ZlIHByb2dyYW0g aGVhZGVyIHRhYmxlICh0eXBpY2FsbHkgLmludGVycCkgaGFzIHRvDQorICBi ZSBtb3ZlZCBzb21ld2hlcmUgZWxzZSwgYnV0IGlmIHBvc3NpYmxlIGNsb3Nl IHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlDQorICBleGVjdXRhYmxlLiBUaGUg bmV3IFBUX0xPQUQgc2VnbWVudCBpcyB0aGVuIGFkZGVkIGFmdGVyIHRoZSBs YXN0IFBUX0xPQUQNCisgIHNlZ21lbnQuDQorDQorICBUaGUgc2VnbWVudCBo YXMgdG8gYmUgd3JpdGFibGUgZXZlbiB3aGVuIGFsbCB0aGUgc2VjdGlvbnMg aW4gaXQgYXJlDQorICByZWFkLW9ubHksIHVubGVzcyBpdCBlbmRzIGV4YWN0 bHkgb24gYSBwYWdlIGJvdW5kYXJ5LCBiZWNhdXNlIGJyayBhcmVhDQorICBz dGFydHMgaW1tZWRpYXRlbHkgYWZ0ZXIgdGhlIGVuZCBvZiBsYXN0IFBUX0xP QUQgc2VnbWVudCBhbmQgdGhlIGV4ZWN1dGFibGUNCisgIGV4cGVjdHMgaXQg dG8gYmUgd3JpdGFibGUuDQorDQorICBTbyB0aGF0IHZlcmlmaWNhdGlvbiB3 b3JrcyBwcm9wZXJseSwgaWYgdGhlcmUgaXMgLmdudS5wcmVsaW5rX3VuZG8g c2VjdGlvbg0KKyAgaW4gdGhlIGV4ZWN1dGFibGUsIHByZWxpbmsgZmlyc3Qg cmVzaHVmZmxlcyB0aGUgc2VjdGlvbnMgYW5kIHNlZ21lbnRzIGZvcg0KKyAg dGhlIHB1cnBvc2Ugb2YgZmluZGluZyBwbGFjZXMgZm9yIHRoZSBzZWN0aW9u cyB0byB0aGUgb3JpZ2luYWwgc2VxdWVuY2UgYXMNCisgIHJlY29yZGVkIGlu IHRoZSAuZ251LnByZWxpbmtfdW5kbyBzZWN0aW9uLiBFeGFtcGxlcyBvZiB0 aGUgYWJvdmUgbWVudGlvbmVkDQorICBjYXNlczoNCisNCisgICQgU0VEQ01E PeKAmXMvXi4qIFwucGx0LiokLy4uLi87L1xbLipcLnRleHQvLC9cWy4qXC5n b3QvZOKAmQ0KKyAgJCBTRURDTUQyPeKAmS9TZWN0aW9uIHRvIFNlZ21lbnQv LCRkOy9eS2V5IHRvLywvXlByb2dyYW0vZDsvXltBLVpdL2Q7L14gKiQvZOKA mQ0KKw0KKyAgJCBjYXQgPiB0ZXN0MS5jIDw8RU9GDQorICBpbnQgbWFpbiAo dm9pZCkgeyByZXR1cm4gMDsgfQ0KKyAgRU9GDQorDQorICAkIGdjYyAtV2ws LS12ZXJib3NlIDI+JjEgXA0KKyAgICB8IHNlZCDigJkvXj09PS8sL149PT0v IWQ7L149PT0vZDtzL1wucmVsXC5keW4vLiArPSA1MTI7ICYv4oCZID4gdGVz dDEubGRzDQorICAkIGdjYyAtcyAtTzIgLW8gdGVzdDEgdGVzdDEuYyAtV2ws LVQsdGVzdDEubGRzDQorDQorICAkIHJlYWRlbGYgLVNsIC4vdGVzdDEgfCBz ZWQgLWUg4oCdJFNFRENNROKAnSAtZSDigJ0kU0VEQ01EMuKAnQ0KKyAgW05y XSBOYW1lICAgICAgICAgICAgICBUeXBlICAgICAgICBBZGRyICAgICBPZmYg ICAgU2l6ZSAgIEVTIEZsZyAgTGsgSW5mICBBbCANCisgIFsgMF0gICAgICAg ICAgICAgICAgICAgTlVMTCAgICAgICAgMDAwMDAwMDAgMDAwMDAwIDAwMDAw MCAwMCAgICAgICAwICAgMCAgIDANCisgIFsgMV0gLmludGVycCAgICAgICAg ICAgUFJPR0JJVFMgICAgMDgwNDgxMTQgMDAwMTE0IDAwMDAxMyAwMCBBICAg ICAwICAgMCAgIDENCisgIFsgMl0gLm5vdGUuQUJJLXRhZyAgICAgTk9URSAg ICAgICAgMDgwNDgxMjggMDAwMTI4IDAwMDAyMCAwMCBBICAgICAwICAgMCAg IDQNCisgIFsgM10gLmhhc2ggICAgICAgICAgICAgSEFTSCAgICAgICAgMDgw NDgxNDggMDAwMTQ4IDAwMDAyNCAwNCBBICAgICA0ICAgMCAgIDQNCisgIFsg NF0gLmR5bnN5bSAgICAgICAgICAgRFlOU1lNICAgICAgMDgwNDgxNmMgMDAw MTZjIDAwMDA0MCAxMCBBICAgICA1ICAgMSAgIDQNCisgIFsgNV0gLmR5bnN0 ciAgICAgICAgICAgU1RSVEFCICAgICAgMDgwNDgxYWMgMDAwMWFjIDAwMDA0 NSAwMCBBICAgICAwICAgMCAgIDENCisgIFsgNl0gLmdudS52ZXJzaW9uICAg ICAgVkVSU1lNICAgICAgMDgwNDgxZjIgMDAwMWYyIDAwMDAwOCAwMiBBICAg ICA0ICAgMCAgIDINCisgIFsgN10gLmdudS52ZXJzaW9uX3IgICAgVkVSTkVF RCAgICAgMDgwNDgxZmMgMDAwMWZjIDAwMDAyMCAwMCBBICAgICA1ICAgMSAg IDQNCisgIFsgOF0gLnJlbC5keW4gICAgICAgICAgUkVMICAgICAgICAgMDgw NDg0MWMgMDAwNDFjIDAwMDAwOCAwOCBBICAgICA0ICAgMCAgIDQNCisgIFsg OV0gLnJlbC5wbHQgICAgICAgICAgUkVMICAgICAgICAgMDgwNDg0MjQgMDAw NDI0IDAwMDAwOCAwOCBBICAgICA0ICAgYiAgIDQNCisgIFsxMF0gLmluaXQg ICAgICAgICAgICAgUFJPR0JJVFMgICAgMDgwNDg0MmMgMDAwNDJjIDAwMDAx NyAwMCBBWCAgICAwICAgMCAgIDQNCisgIC4uLg0KKyAgWzIyXSAuYnNzICAg ICAgICAgICAgICBOT0JJVFMgICAgICAwODA0OTZmOCAwMDA2ZjggMDAwMDA0 IDAwIFdBICAgIDAgICAwICAgNA0KKyAgWzIzXSAuY29tbWVudCAgICAgICAg ICBQUk9HQklUUyAgICAwMDAwMDAwMCAwMDA2ZjggMDAwMTMyIDAwICAgICAg IDAgICAwICAgMQ0KKyAgWzI0XSAuc2hzdHJ0YWIgICAgICAgICBTVFJUQUIg ICAgICAwMDAwMDAwMCAwMDA4MmEgMDAwMGJlIDAwICAgICAgIDAgICAwICAg MQ0KKw0KKyAgIFR5cGUgICAgT2Zmc2V0ICAgVmlydEFkZHIgICBQaHlzQWRk ciAgIEZpbGVTaXogTWVtU2l6ICBGbGcgIEFsaWduDQorICAgUEhEUiAgICAw eDAwMDAzNCAweDA4MDQ4MDM0IDB4MDgwNDgwMzQgMHgwMDBlMCAweDAwMGUw IFIgRSAgMHg0DQorICAgSU5URVJQICAweDAwMDExNCAweDA4MDQ4MTE0IDB4 MDgwNDgxMTQgMHgwMDAxMyAweDAwMDEzIFIgICAgMHgxDQorICAgW1JlcXVl c3RpbmcgcHJvZ3JhbSBpbnRlcnByZXRlcjogL2xpYi9sZC1saW51eC5zby4y XQ0KKyAgIExPQUQgICAgMHgwMDAwMDAgMHgwODA0ODAwMCAweDA4MDQ4MDAw IDB4MDA1ZmMgMHgwMDVmYyBSIEUgIDB4MTAwMA0KKyAgIExPQUQgICAgMHgw MDA1ZmMgMHgwODA0OTVmYyAweDA4MDQ5NWZjIDB4MDAwZmMgMHgwMDEwMCBS VyAgIDB4MTAwMA0KKyAgIERZTkFNSUMgMHgwMDA2MDggMHgwODA0OTYwOCAw eDA4MDQ5NjA4IDB4MDAwYzggMHgwMDBjOCBSVyAgIDB4NA0KKyAgIE5PVEUg ICAgMHgwMDAxMjggMHgwODA0ODEyOCAweDA4MDQ4MTI4IDB4MDAwMjAgMHgw MDAyMCBSICAgIDB4NA0KKyAgIFNUQUNLICAgMHgwMDAwMDAgMHgwMDAwMDAw MCAweDAwMDAwMDAwIDB4MDAwMDAgMHgwMDAwMCBSVyAgIDB4NA0KKw0KKyAg ICQgcHJlbGluayAtTiAuL3Rlc3QxDQorICAgJCByZWFkZWxmIC1TbCAuL3Rl c3QxIHwgc2VkIC1lIOKAnSRTRURDTUTigJ0gLWUg4oCdJFNFRENNRDLigJ0N CisgICBbTnJdIE5hbWUgICAgICAgICAgICAgIFR5cGUgICAgICAgIEFkZHIg ICAgIE9mZiAgICBTaXplICAgRVMgRmxnICBMayBJbmYgIEFsIA0KKyAgIFsg MF0gICAgICAgICAgICAgICAgICAgTlVMTCAgICAgICAgMDAwMDAwMDAgMDAw MDAwIDAwMDAwMCAwMCAgICAgICAwICAgMCAgIDANCisgICBbIDFdIC5pbnRl cnAgICAgICAgICAgIFBST0dCSVRTICAgIDA4MDQ4MTE0IDAwMDExNCAwMDAw MTMgMDAgQSAgICAgMCAgIDAgICAxDQorICAgWyAyXSAubm90ZS5BQkktdGFn ICAgICBOT1RFICAgICAgICAwODA0ODEyOCAwMDAxMjggMDAwMDIwIDAwIEEg ICAgIDAgICAwICAgNA0KKyAgIFsgM10gLmhhc2ggICAgICAgICAgICAgSEFT SCAgICAgICAgMDgwNDgxNDggMDAwMTQ4IDAwMDAyNCAwNCBBICAgICA0ICAg MCAgIDQNCisgICBbIDRdIC5keW5zeW0gICAgICAgICAgIERZTlNZTSAgICAg IDA4MDQ4MTZjIDAwMDE2YyAwMDAwNDAgMTAgQSAgICAgOCAgIDEgICA0DQor ICAgWyA1XSAuZ251LmxpYmxpc3QgICAgICBHTlVfTElCTElTVCAwODA0ODFh YyAwMDAxYWMgMDAwMDI4IDE0IEEgICAgIDggICAwICAgNA0KKyAgIFsgNl0g LmdudS52ZXJzaW9uICAgICAgVkVSU1lNICAgICAgMDgwNDgxZjIgMDAwMWYy IDAwMDAwOCAwMiBBICAgICA0ICAgMCAgIDINCisgICBbIDddIC5nbnUudmVy c2lvbl9yICAgIFZFUk5FRUQgICAgIDA4MDQ4MWZjIDAwMDFmYyAwMDAwMjAg MDAgQSAgICAgOCAgIDEgICA0DQorICAgWyA4XSAuZHluc3RyICAgICAgICAg ICBTVFJUQUIgICAgICAwODA0ODIxYyAwMDAyMWMgMDAwMDU4IDAwIEEgICAg IDAgICAwICAgMQ0KKyAgIFsgOV0gLmdudS5jb25mbGljdCAgICAgUkVMQSAg ICAgICAgMDgwNDgyNzQgMDAwMjc0IDAwMDBjMCAwYyBBICAgICA0ICAgMCAg IDQNCisgICBbMTBdIC5yZWwuZHluICAgICAgICAgIFJFTCAgICAgICAgIDA4 MDQ4NDFjIDAwMDQxYyAwMDAwMDggMDggQSAgICAgNCAgIDAgICA0DQorICAg WzExXSAucmVsLnBsdCAgICAgICAgICBSRUwgICAgICAgICAwODA0ODQyNCAw MDA0MjQgMDAwMDA4IDA4IEEgICAgIDQgICBkICAgNA0KKyAgIFsxMl0gLmlu aXQgICAgICAgICAgICAgUFJPR0JJVFMgICAgMDgwNDg0MmMgMDAwNDJjIDAw MDAxNyAwMCBBWCAgICAwICAgMCAgIDQNCisgICAuLi4NCisgICBbMjRdIC5i c3MgICAgICAgICAgICAgIE5PQklUUyAgICAgIDA4MDQ5NmY4IDAwMDZmOCAw MDAwMDQgMDAgV0EgICAgMCAgIDAgICA0DQorICAgWzI1XSAuY29tbWVudCAg ICAgICAgICBQUk9HQklUUyAgICAwMDAwMDAwMCAwMDA2ZjggMDAwMTMyIDAw ICAgICAgIDAgICAwICAgMQ0KKyAgIFsyNl0gLmdudS5wcmVsaW5rX3VuZG8g UFJPR0JJVFMgICAgMDAwMDAwMDAgMDAwODJjIDAwMDRkNCAwMSAgICAgICAw ICAgMCAgIDQNCisgICBbMjddIC5zaHN0cnRhYiAgICAgICAgIFNUUlRBQiAg ICAgIDAwMDAwMDAwIDAwMGQwMCAwMDAwZWIgMDAgICAgICAgMCAgIDAgICAx DQorICAgVHlwZSAgICBPZmZzZXQgICBWaXJ0QWRkciAgIFBoeXNBZGRyICAg RmlsZVNpeiBNZW1TaXogIEZsZyAgQWxpZ24NCisgICBQSERSICAgIDB4MDAw MDM0IDB4MDgwNDgwMzQgMHgwODA0ODAzNCAweDAwMGUwIDB4MDAwZTAgUiBF ICAweDQNCisgICBJTlRFUlAgIDB4MDAwMTE0IDB4MDgwNDgxMTQgMHgwODA0 ODExNCAweDAwMDEzIDB4MDAwMTMgUiAgICAweDENCisgICBbUmVxdWVzdGlu ZyBwcm9ncmFtIGludGVycHJldGVyOiAvbGliL2xkLWxpbnV4LnNvLjJdDQor ICAgTE9BRCAgICAweDAwMDAwMCAweDA4MDQ4MDAwIDB4MDgwNDgwMDAgMHgw MDVmYyAweDAwNWZjIFIgRSAgMHgxMDAwDQorICAgTE9BRCAgICAweDAwMDVm YyAweDA4MDQ5NWZjIDB4MDgwNDk1ZmMgMHgwMDBmYyAweDAwMTAwIFJXICAg MHgxMDAwDQorICAgRFlOQU1JQyAweDAwMDYwOCAweDA4MDQ5NjA4IDB4MDgw NDk2MDggMHgwMDBjOCAweDAwMGM4IFJXICAgMHg0DQorICAgTk9URSAgICAw eDAwMDEyOCAweDA4MDQ4MTI4IDB4MDgwNDgxMjggMHgwMDAyMCAweDAwMDIw IFIgICAgMHg0DQorICAgU1RBQ0sgICAweDAwMDAwMCAweDAwMDAwMDAwIDB4 MDAwMDAwMDAgMHgwMDAwMCAweDAwMDAwIFJXICAgMHg0DQorDQorUmVzaHVm Zmxpbmcgb2YgYW4gZXhlY3V0YWJsZSB3aXRoIGEgZ2FwIGJldHdlZW4gc2Vj dGlvbnMNCisNCitGaWd1cmUgNDogUmVzaHVmZmxpbmcgb2YgYW4gZXhlY3V0 YWJsZSB3aXRoIGEgZ2FwIGJldHdlZW4gc2VjdGlvbnMNCisNCitJbiB0aGUg YWJvdmUgc2FtcGxlLCB0aGVyZSB3YXMgZW5vdWdoIHNwYWNlIGJldHdlZW4g c2VjdGlvbnMgKHBhcnRpY3VsYXJseQ0KK2JldHdlZW4gdGhlIGVuZCBvZiB0 aGUgLmdudS52ZXJzaW9uX3Igc2VjdGlvbiBhbmQgdGhlIHN0YXJ0IG9mIC5y ZWwuZHluKSB0aGF0DQordGhlIG5ldyBzZWN0aW9ucyBjb3VsZCBiZSBhZGRl ZCB0aGVyZS4NCisNCisgICQgU0VEQ01EPeKAmXMvXi4qIFwucGx0LiokLy4u Li87L1xbLipcLnRleHQvLC9cWy4qXC5nb3QvZOKAmQ0KKyAgJCBTRURDTUQy PeKAmS9TZWN0aW9uIHRvIFNlZ21lbnQvLCRkOy9eS2V5IHRvLywvXlByb2dy YW0vZDsvXltBLVpdL2Q7L14gKiQvZOKAmQ0KKyAgJCBjYXQgPiB0ZXN0Mi5j IDw8RU9GDQorICBpbnQgbWFpbiAodm9pZCkgeyByZXR1cm4gMDsgfQ0KKyAg RU9GDQorDQorICAkIGdjYyAtcyAtTzIgLW8gdGVzdDIgdGVzdDIuYw0KKyAg JCByZWFkZWxmIC1TbCAuL3Rlc3QyIHwgc2VkIC1lIOKAnSRTRURDTUTigJ0g LWUg4oCdJFNFRENNRDLigJ0NCisgIFtOcl0gTmFtZSAgICAgICAgICAgICAg VHlwZSAgICAgICAgQWRkciAgICAgT2ZmICAgIFNpemUgICBFUyBGbGcgIExr IEluZiAgQWwNCisgIFsgMF0gICAgICAgICAgICAgICAgICAgTlVMTCAgICAg ICAgMDAwMDAwMDAgMDAwMDAwIDAwMDAwMCAwMCAgICAgICAwICAgMCAgIDAN CisgIFsgMV0gLmludGVycCAgICAgICAgICAgUFJPR0JJVFMgICAgMDgwNDgx MTQgMDAwMTE0IDAwMDAxMyAwMCBBICAgICAwICAgMCAgIDENCisgIFsgMl0g Lm5vdGUuQUJJLXRhZyAgICAgTk9URSAgICAgICAgMDgwNDgxMjggMDAwMTI4 IDAwMDAyMCAwMCBBICAgICAwICAgMCAgIDQNCisgIFsgM10gLmhhc2ggICAg ICAgICAgICAgSEFTSCAgICAgICAgMDgwNDgxNDggMDAwMTQ4IDAwMDAyNCAw NCBBICAgICA0ICAgMCAgIDQNCisgIFsgNF0gLmR5bnN5bSAgICAgICAgICAg RFlOU1lNICAgICAgMDgwNDgxNmMgMDAwMTZjIDAwMDA0MCAxMCBBICAgICA1 ICAgMSAgIDQNCisgIFsgNV0gLmR5bnN0ciAgICAgICAgICAgU1RSVEFCICAg ICAgMDgwNDgxYWMgMDAwMWFjIDAwMDA0NSAwMCBBICAgICAwICAgMCAgIDEN CisgIFsgNl0gLmdudS52ZXJzaW9uICAgICAgVkVSU1lNICAgICAgMDgwNDgx ZjIgMDAwMWYyIDAwMDAwOCAwMiBBICAgICA0ICAgMCAgIDINCisgIFsgN10g LmdudS52ZXJzaW9uX3IgVkVSTkVFRCAgICAgICAgMDgwNDgxZmMgMDAwMWZj IDAwMDAyMCAwMCBBICAgICA1ICAgMSAgIDQNCisgIFsgOF0gLnJlbC5keW4g ICAgICAgUkVMICAgICAgICAgICAgMDgwNDgyMWMgMDAwMjFjIDAwMDAwOCAw OCBBICAgICA0ICAgMCAgIDQNCisgIFsgOV0gLnJlbC5wbHQgICAgICAgUkVM ICAgICAgICAgICAgMDgwNDgyMjQgMDAwMjI0IDAwMDAwOCAwOCBBICAgICA0 ICAgYiAgIDQNCisgIFsxMF0gLmluaXQgICAgICAgICAgUFJPR0JJVFMgICAg ICAgMDgwNDgyMmMgMDAwMjJjIDAwMDAxNyAwMCBBWCAgICAwICAgMCAgIDQN CisgIC4uLg0KKyAgWzIyXSAuYnNzICAgICAgICAgICBOT0JJVFMgICAgICAg ICAwODA0OTRmOCAwMDA0ZjggMDAwMDA0IDAwIFdBICAgIDAgICAwICAgNA0K KyAgWzIzXSAuY29tbWVudCAgICAgICBQUk9HQklUUyAgICAgICAwMDAwMDAw MCAwMDA0ZjggMDAwMTMyIDAwICAgICAgIDAgICAwICAgMQ0KKyAgWzI0XSAu c2hzdHJ0YWIgICAgICBTVFJUQUIgICAgICAgICAwMDAwMDAwMCAwMDA2MmEg MDAwMGJlIDAwICAgICAgIDAgICAwICAgMQ0KKyAgIFR5cGUgICAgT2Zmc2V0 ICAgVmlydEFkZHIgICBQaHlzQWRkciAgIEZpbGVTaXogTWVtU2l6ICBGbGcg IEFsaWduDQorICAgUEhEUiAgICAweDAwMDAzNCAweDA4MDQ4MDM0IDB4MDgw NDgwMzQgMHgwMDBlMCAweDAwMGUwIFIgRSAgMHg0DQorICAgSU5URVJQICAw eDAwMDExNCAweDA4MDQ4MTE0IDB4MDgwNDgxMTQgMHgwMDAxMyAweDAwMDEz IFIgICAgMHgxDQorICAgW1JlcXVlc3RpbmcgcHJvZ3JhbSBpbnRlcnByZXRl cjogL2xpYi9sZC1saW51eC5zby4yXQ0KKyAgIExPQUQgICAgMHgwMDAwMDAg MHgwODA0ODAwMCAweDA4MDQ4MDAwIDB4MDAzZmMgMHgwMDNmYyBSIEUgIDB4 MTAwMA0KKyAgIExPQUQgICAgMHgwMDAzZmMgMHgwODA0OTNmYyAweDA4MDQ5 M2ZjIDB4MDAwZmMgMHgwMDEwMCBSVyAgIDB4MTAwMA0KKyAgIERZTkFNSUMg MHgwMDA0MDggMHgwODA0OTQwOCAweDA4MDQ5NDA4IDB4MDAwYzggMHgwMDBj OCBSVyAgIDB4NA0KKyAgIE5PVEUgICAgMHgwMDAxMjggMHgwODA0ODEyOCAw eDA4MDQ4MTI4IDB4MDAwMjAgMHgwMDAyMCBSICAgIDB4NA0KKyAgIFNUQUNL ICAgMHgwMDAwMDAgMHgwMDAwMDAwMCAweDAwMDAwMDAwIDB4MDAwMDAgMHgw MDAwMCBSVyAgIDB4NA0KKw0KKyAgICQgcHJlbGluayAtTiAuL3Rlc3QyDQor ICAgJCByZWFkZWxmIC1TbCAuL3Rlc3QyIHwgc2VkIC1lIOKAnSRTRURDTUTi gJ0gLWUg4oCdJFNFRENNRDLigJ0NCisgICBbTnJdIE5hbWUgICAgICAgICAg ICAgIFR5cGUgICAgICAgIEFkZHIgICAgIE9mZiAgICBTaXplICAgRVMgRmxn ICBMayBJbmYgIEFsDQorICAgWyAwXSAgICAgICAgICAgICAgICAgICBOVUxM ICAgICAgICAwMDAwMDAwMCAwMDAwMDAgMDAwMDAwIDAwICAgICAgIDAgICAw ICAgMA0KKyAgIFsgMV0gLmludGVycCAgICAgICAgICAgUFJPR0JJVFMgICAg MDgwNDgxMTQgMDAwMTE0IDAwMDAxMyAwMCBBICAgICAwICAgMCAgIDENCisg ICBbIDJdIC5ub3RlLkFCSS10YWcgICAgIE5PVEUgICAgICAgIDA4MDQ4MTI4 IDAwMDEyOCAwMDAwMjAgMDAgQSAgICAgMCAgIDAgICA0DQorICAgWyAzXSAu aGFzaCAgICAgICAgICAgICBIQVNIICAgICAgICAwODA0ODE0OCAwMDAxNDgg MDAwMDI0IDA0IEEgICAgIDQgICAwICAgNA0KKyAgIFsgNF0gLmR5bnN5bSAg ICAgICAgICAgRFlOU1lNICAgICAgMDgwNDgxNmMgMDAwMTZjIDAwMDA0MCAx MCBBICAgIDIzICAgMSAgIDQNCisgICBbIDVdIC5nbnUubGlibGlzdCAgICAg IEdOVV9MSUJMSVNUIDA4MDQ4MWFjIDAwMDFhYyAwMDAwMjggMTQgQSAgICAy MyAgIDAgICA0DQorICAgWyA2XSAuZ251LnZlcnNpb24gICAgICBWRVJTWU0g ICAgICAwODA0ODFmMiAwMDAxZjIgMDAwMDA4IDAyIEEgICAgIDQgICAwICAg Mg0KKyAgIFsgN10gLmdudS52ZXJzaW9uX3IgICAgVkVSTkVFRCAgICAgMDgw NDgxZmMgMDAwMWZjIDAwMDAyMCAwMCBBICAgIDIzICAgMSAgIDQNCisgICBb IDhdIC5yZWwuZHluICAgICAgICAgIFJFTCAgICAgICAgIDA4MDQ4MjFjIDAw MDIxYyAwMDAwMDggMDggQSAgICAgNCAgIDAgICA0DQorICAgWyA5XSAucmVs LnBsdCAgICAgICAgICBSRUwgICAgICAgICAwODA0ODIyNCAwMDAyMjQgMDAw MDA4IDA4IEEgICAgIDQgICBiICAgNA0KKyAgIFsxMF0gLmluaXQgICAgICAg ICAgICAgUFJPR0JJVFMgICAgMDgwNDgyMmMgMDAwMjJjIDAwMDAxNyAwMCBB WCAgICAwICAgMCAgIDQNCisgICAuLi4NCisgICBbMjJdIC5ic3MgICAgICAg ICAgICAgIFBST0dCSVRTICAgIDA4MDQ5NGY4IDAwMDRmOCAwMDAwMDQgMDAg V0EgICAgMCAgIDAgICA0DQorICAgWzIzXSAuZHluc3RyICAgICAgICAgICBT VFJUQUIgICAgICAwODA0OTRmYyAwMDA0ZmMgMDAwMDU4IDAwIEEgICAgIDAg ICAwICAgMQ0KKyAgIFsyNF0gLmdudS5jb25mbGljdCAgICAgUkVMQSAgICAg ICAgMDgwNDk1NTQgMDAwNTU0IDAwMDBjMCAwYyBBICAgICA0ICAgMCAgIDQN CisgICBbMjVdIC5jb21tZW50ICAgICAgICAgIFBST0dCSVRTICAgIDAwMDAw MDAwIDAwMDYxNCAwMDAxMzIgMDAgICAgICAgMCAgIDAgICAxDQorICAgWzI2 XSAuZ251LnByZWxpbmtfdW5kbyBQUk9HQklUUyAgICAwMDAwMDAwMCAwMDA3 NDggMDAwNGQ0IDAxICAgICAgIDAgICAwICAgNA0KKyAgIFsyN10gLnNoc3Ry dGFiICAgICAgICAgU1RSVEFCICAgICAgMDAwMDAwMDAgMDAwYzFjIDAwMDBl YiAwMCAgICAgICAwICAgMCAgIDENCisgICBUeXBlICAgIE9mZnNldCAgIFZp cnRBZGRyICAgUGh5c0FkZHIgICBGaWxlU2l6IE1lbVNpeiAgRmxnICBBbGln bg0KKyAgIFBIRFIgICAgMHgwMDAwMzQgMHgwODA0ODAzNCAweDA4MDQ4MDM0 IDB4MDAwZTAgMHgwMDBlMCBSIEUgIDB4NA0KKyAgIElOVEVSUCAgMHgwMDAx MTQgMHgwODA0ODExNCAweDA4MDQ4MTE0IDB4MDAwMTMgMHgwMDAxMyBSICAg IDB4MQ0KKyAgIFtSZXF1ZXN0aW5nIHByb2dyYW0gaW50ZXJwcmV0ZXI6IC9s aWIvbGQtbGludXguc28uMl0NCisgICBMT0FEICAgIDB4MDAwMDAwIDB4MDgw NDgwMDAgMHgwODA0ODAwMCAweDAwM2ZjIDB4MDAzZmMgUiBFICAweDEwMDAN CisgICBMT0FEICAgIDB4MDAwM2ZjIDB4MDgwNDkzZmMgMHgwODA0OTNmYyAw eDAwMjE4IDB4MDAyMTggUlcgICAweDEwMDANCisgICBEWU5BTUlDIDB4MDAw NDA4IDB4MDgwNDk0MDggMHgwODA0OTQwOCAweDAwMGM4IDB4MDAwYzggUlcg ICAweDQNCisgICBOT1RFICAgIDB4MDAwMTI4IDB4MDgwNDgxMjggMHgwODA0 ODEyOCAweDAwMDIwIDB4MDAwMjAgUiAgICAweDQNCisgICBTVEFDSyAgIDB4 MDAwMDAwIDB4MDAwMDAwMDAgMHgwMDAwMDAwMCAweDAwMDAwIDB4MDAwMDAg UlcgICAweDQNCisNCitSZXNodWZmbGluZyBvZiBhbiBleGVjdXRhYmxlIHdp dGggc21hbGwgLmJzcw0KKw0KK0ZpZ3VyZSA1OiBSZXNodWZmbGluZyBvZiBh biBleGVjdXRhYmxlIHdpdGggc21hbGwgLmJzcw0KKw0KK0luIHRoaXMgY2Fz ZSAuYnNzIHNlY3Rpb24gd2FzIHNtYWxsIGVub3VnaCB0aGF0IHByZWxpbmsg Y29udmVydGVkIGl0IHRvDQorU0hUX1BST0dCSVRTLg0KKw0KKyAgJCBTRURD TUQ94oCZcy9eLiogXC5wbHQuKiQvLi4uLzsvXFsuKlwudGV4dC8sL1xbLipc LmdvdC9k4oCZDQorICAkIFNFRENNRDI94oCZL1NlY3Rpb24gdG8gU2VnbWVu dC8sJGQ7L15LZXkgdG8vLC9eUHJvZ3JhbS9kOy9eW0EtWl0vZDsvXiAqJC9k 4oCZDQorICAkIGNhdCA+IHRlc3QzLmMgPDxFT0YNCisgIGludCBmb28gWzQw OTZdOw0KKyAgaW50IG1haW4gKHZvaWQpIHsgcmV0dXJuIDA7IH0NCisgIEVP Rg0KKw0KKyAgJCBnY2MgLXMgLU8yIC1vIHRlc3QzIHRlc3QzLmMNCisgICQg cmVhZGVsZiAtU2wgLi90ZXN0MyB8IHNlZCAtZSDigJ0kU0VEQ01E4oCdIC1l IOKAnSRTRURDTUQy4oCdDQorICBbTnJdIE5hbWUgICAgICAgICAgICAgIFR5 cGUgICAgICAgIEFkZHIgICAgIE9mZiAgICBTaXplICAgRVMgRmxnICBMayBJ bmYgIEFsDQorICBbIDBdICAgICAgICAgICAgICAgICAgIE5VTEwgICAgICAg IDAwMDAwMDAwIDAwMDAwMCAwMDAwMDAgMDAgICAgICAgMCAgIDAgICAwDQor ICBbIDFdIC5pbnRlcnAgICAgICAgICAgIFBST0dCSVRTICAgIDA4MDQ4MTE0 IDAwMDExNCAwMDAwMTMgMDAgQSAgICAgMCAgIDAgICAxDQorICBbIDJdIC5u b3RlLkFCSS10YWcgICAgIE5PVEUgICAgICAgIDA4MDQ4MTI4IDAwMDEyOCAw MDAwMjAgMDAgQSAgICAgMCAgIDAgICA0DQorICBbIDNdIC5oYXNoICAgICAg ICAgICAgIEhBU0ggICAgICAgIDA4MDQ4MTQ4IDAwMDE0OCAwMDAwMjQgMDQg QSAgICAgNCAgIDAgICA0DQorICBbIDRdIC5keW5zeW0gICAgICAgICAgIERZ TlNZTSAgICAgIDA4MDQ4MTZjIDAwMDE2YyAwMDAwNDAgMTAgQSAgICAgNSAg IDEgICA0DQorICBbIDVdIC5keW5zdHIgICAgICAgICAgIFNUUlRBQiAgICAg IDA4MDQ4MWFjIDAwMDFhYyAwMDAwNDUgMDAgQSAgICAgMCAgIDAgICAxDQor ICBbIDZdIC5nbnUudmVyc2lvbiAgICAgIFZFUlNZTSAgICAgIDA4MDQ4MWYy IDAwMDFmMiAwMDAwMDggMDIgQSAgICAgNCAgIDAgICAyDQorICBbIDddIC5n bnUudmVyc2lvbl9yICAgIFZFUk5FRUQgICAgIDA4MDQ4MWZjIDAwMDFmYyAw MDAwMjAgMDAgQSAgICAgNSAgIDEgICA0DQorICBbIDhdIC5yZWwuZHluICAg ICAgICAgIFJFTCAgICAgICAgIDA4MDQ4MjFjIDAwMDIxYyAwMDAwMDggMDgg QSAgICAgNCAgIDAgICA0DQorICBbIDldIC5yZWwucGx0ICAgICAgICAgIFJF TCAgICAgICAgIDA4MDQ4MjI0IDAwMDIyNCAwMDAwMDggMDggQSAgICAgNCAg IGIgICA0DQorICBbMTBdIC5pbml0ICAgICAgICAgICAgIFBST0dCSVRTICAg IDA4MDQ4MjJjIDAwMDIyYyAwMDAwMTcgMDAgQVggICAgMCAgIDAgICA0DQor ICAuLi4NCisgIFsyMl0gLmJzcyAgICAgICAgICAgICAgTk9CSVRTICAgICAg MDgwNDk1MDAgMDAwNTAwIDAwNDAyMCAwMCBXQSAgICAwICAgMCAgMzINCisg IFsyM10gLmNvbW1lbnQgICAgICAgICAgUFJPR0JJVFMgICAgMDAwMDAwMDAg MDAwNTAwIDAwMDEzMiAgICAwMCAgICAwICAgMCAgIDENCisgIFsyNF0gLnNo c3RydGFiICAgICAgICAgU1RSVEFCICAgICAgMDAwMDAwMDAgMDAwNjMyIDAw MDBiZSAgICAwMCAgICAwICAgMCAgIDENCisgIFR5cGUgICAgT2Zmc2V0ICAg VmlydEFkZHIgICBQaHlzQWRkciAgIEZpbGVTaXogTWVtU2l6ICBGbGcgIEFs aWduDQorICBQSERSICAgIDB4MDAwMDM0IDB4MDgwNDgwMzQgMHgwODA0ODAz NCAweDAwMGUwIDB4MDAwZTAgUiBFICAweDQNCisgIElOVEVSUCAgMHgwMDAx MTQgMHgwODA0ODExNCAweDA4MDQ4MTE0IDB4MDAwMTMgMHgwMDAxMyBSICAg IDB4MQ0KKyAgW1JlcXVlc3RpbmcgcHJvZ3JhbSBpbnRlcnByZXRlcjogL2xp Yi9sZC1saW51eC5zby4yXQ0KKyAgTE9BRCAgICAweDAwMDAwMCAweDA4MDQ4 MDAwIDB4MDgwNDgwMDAgMHgwMDNmYyAweDAwM2ZjIFIgRSAgMHgxMDAwDQor ICBMT0FEICAgIDB4MDAwM2ZjIDB4MDgwNDkzZmMgMHgwODA0OTNmYyAweDAw MGZjIDB4MDQxMjQgUlcgICAweDEwMDANCisgIERZTkFNSUMgMHgwMDA0MDgg MHgwODA0OTQwOCAweDA4MDQ5NDA4IDB4MDAwYzggMHgwMDBjOCBSVyAgIDB4 NA0KKyAgTk9URSAgICAweDAwMDEyOCAweDA4MDQ4MTI4IDB4MDgwNDgxMjgg MHgwMDAyMCAweDAwMDIwIFIgICAgMHg0DQorICBTVEFDSyAgIDB4MDAwMDAw IDB4MDAwMDAwMDAgMHgwMDAwMDAwMCAweDAwMDAwIDB4MDAwMDAgUlcgICAw eDQNCisNCisgICQgcHJlbGluayAtTiAuL3Rlc3QzDQorICAkIHJlYWRlbGYg LVNsIC4vdGVzdDMgfCBzZWQgLWUg4oCdJFNFRENNROKAnSAtZSDigJ0kU0VE Q01EMuKAnQ0KKyAgW05yXSBOYW1lICAgICAgICAgICAgICBUeXBlICAgICAg ICBBZGRyICAgICBPZmYgICAgU2l6ZSAgIEVTIEZsZyAgTGsgSW5mICBBbA0K KyAgWyAwXSAgICAgICAgICAgICAgICAgICBOVUxMICAgICAgICAwMDAwMDAw MCAwMDAwMDAgMDAwMDAwIDAwICAgICAgIDAgICAwICAgMA0KKyAgWyAxXSAu aW50ZXJwICAgICAgICAgICBQUk9HQklUUyAgICAwODA0NzExNCAwMDAxMTQg MDAwMDEzIDAwIEEgICAgIDAgICAwICAgMQ0KKyAgWyAyXSAubm90ZS5BQkkt dGFnICAgICBOT1RFICAgICAgICAwODA0NzEyOCAwMDAxMjggMDAwMDIwIDAw IEEgICAgIDAgICAwICAgNA0KKyAgWyAzXSAuZHluc3RyICAgICAgICAgICBT VFJUQUIgICAgICAwODA0NzE0OCAwMDAxNDggMDAwMDU4IDAwIEEgICAgIDAg ICAwICAgMQ0KKyAgWyA0XSAuZ251LmxpYmxpc3QgICAgICBHTlVfTElCTElT VCAwODA0NzFhMCAwMDAxYTAgMDAwMDI4IDE0IEEgICAgIDMgICAwICAgNA0K KyAgWyA1XSAuZ251LmNvbmZsaWN0ICAgICBSRUxBICAgICAgICAwODA0NzFj OCAwMDAxYzggMDAwMGMwIDBjIEEgICAgIDcgICAwICAgNA0KKyAgWyA2XSAu aGFzaCAgICAgICAgICAgICBIQVNIICAgICAgICAwODA0ODE0OCAwMDExNDgg MDAwMDI0IDA0IEEgICAgIDcgICAwICAgNA0KKyAgWyA3XSAuZHluc3ltICAg ICAgICAgICBEWU5TWU0gICAgICAwODA0ODE2YyAwMDExNmMgMDAwMDQwIDEw IEEgICAgIDMgICAxICAgNA0KKyAgWyA4XSAuZ251LnZlcnNpb24gICAgICBW RVJTWU0gICAgICAwODA0ODFmMiAwMDExZjIgMDAwMDA4IDAyIEEgICAgIDcg ICAwICAgMg0KKyAgWyA5XSAuZ251LnZlcnNpb25fciAgICBWRVJORUVEICAg ICAwODA0ODFmYyAwMDExZmMgMDAwMDIwIDAwIEEgICAgIDMgICAxICAgNA0K KyAgWzEwXSAucmVsLmR5biAgICAgICAgICBSRUwgICAgICAgICAwODA0ODIx YyAwMDEyMWMgMDAwMDA4IDA4IEEgICAgIDcgICAwICAgNA0KKyAgWzExXSAu cmVsLnBsdCAgICAgICAgICBSRUwgICAgICAgICAwODA0ODIyNCAwMDEyMjQg MDAwMDA4IDA4IEEgICAgIDcgICBkICAgNA0KKyAgWzEyXSAuaW5pdCAgICAg ICAgICAgICBQUk9HQklUUyAgICAwODA0ODIyYyAwMDEyMmMgMDAwMDE3IDAw IEFYICAgIDAgICAwICAgNA0KKyAgLi4uDQorICBbMjRdIC5ic3MgICAgICAg ICAgICAgIE5PQklUUyAgICAgIDA4MDQ5NTAwIDAwMTRmOCAwMDQwMjAgMDAg V0EgICAgMCAgIDAgIDMyDQorICBbMjVdIC5jb21tZW50ICAgICAgICAgIFBS T0dCSVRTICAgIDAwMDAwMDAwIDAwMTRmOCAwMDAxMzIgMDAgICAgICAgMCAg IDAgICAxDQorICBbMjZdIC5nbnUucHJlbGlua191bmRvIFBST0dCSVRTICAg IDAwMDAwMDAwIDAwMTYyYyAwMDA0ZDQgMDEgICAgICAgMCAgIDAgICA0DQor ICBbMjddIC5zaHN0cnRhYiAgICAgICAgIFNUUlRBQiAgICAgIDAwMDAwMDAw IDAwMWIwMCAwMDAwZWIgMDAgICAgICAgMCAgIDAgICAxDQorICBUeXBlICAg IE9mZnNldCAgIFZpcnRBZGRyICAgUGh5c0FkZHIgICBGaWxlU2l6IE1lbVNp eiAgRmxnICBBbGlnbg0KKyAgUEhEUiAgICAweDAwMDAzNCAweDA4MDQ3MDM0 IDB4MDgwNDcwMzQgMHgwMDBlMCAweDAwMGUwIFIgRSAgMHg0DQorICBJTlRF UlAgIDB4MDAwMTE0IDB4MDgwNDcxMTQgMHgwODA0NzExNCAweDAwMDEzIDB4 MDAwMTMgUiAgICAweDENCisgIFtSZXF1ZXN0aW5nIHByb2dyYW0gaW50ZXJw cmV0ZXI6IC9saWIvbGQtbGludXguc28uMl0NCisgIExPQUQgICAgMHgwMDAw MDAgMHgwODA0NzAwMCAweDA4MDQ3MDAwIDB4MDEzZmMgMHgwMTNmYyBSIEUg IDB4MTAwMA0KKyAgTE9BRCAgICAweDAwMTNmYyAweDA4MDQ5M2ZjIDB4MDgw NDkzZmMgMHgwMDBmYyAweDA0MTI0IFJXICAgMHgxMDAwDQorICBEWU5BTUlD IDB4MDAxNDA4IDB4MDgwNDk0MDggMHgwODA0OTQwOCAweDAwMGM4IDB4MDAw YzggUlcgICAweDQNCisgIE5PVEUgICAgMHgwMDAxMjggMHgwODA0NzEyOCAw eDA4MDQ3MTI4IDB4MDAwMjAgMHgwMDAyMCBSICAgIDB4NA0KKyAgU1RBQ0sg ICAweDAwMDAwMCAweDAwMDAwMDAwIDB4MDAwMDAwMDAgMHgwMDAwMCAweDAw MDAwIFJXICAgMHg0DQorDQorUmVzaHVmZmxpbmcgb2YgYW4gZXhlY3V0YWJs ZSB3aXRoIGRlY3JlYXNpbmcgb2YgYmFzZSBhZGRyZXNzDQorDQorRmlndXJl IDY6IFJlc2h1ZmZsaW5nIG9mIGFuIGV4ZWN1dGFibGUgd2l0aCBkZWNyZWFz aW5nIG9mIHRoZSBiYXNlIGFkZHJlc3MNCisNCitJbiB0ZXN0MyB0aGUgYmFz ZSBhZGRyZXNzIG9mIHRoZSBleGVjdXRhYmxlIHdhcyBkZWNyZWFzZWQgYnkg b25lIHBhZ2UgYW5kDQordGhlIG5ldyBzZWN0aW9ucyBhZGRlZCB0aGVyZS4N CisNCisgICQgU0VEQ01EPeKAmXMvXi4qIFwucGx0LiokLy4uLi87L1xbLipc LnRleHQvLC9cWy4qXC5nb3QvZOKAmQ0KKyAgJCBTRURDTUQyPeKAmS9TZWN0 aW9uIHRvIFNlZ21lbnQvLCRkOy9eS2V5IHRvLywvXlByb2dyYW0vZDsvXltB LVpdL2Q7L14gKiQvZOKAmQ0KKyAgJCBjYXQgPiB0ZXN0NC5jIDw8RU9GDQor ICBpbnQgZm9vIFs0MDk2XTsNCisgIGludCBtYWluICh2b2lkKSB7IHJldHVy biAwOyB9DQorICBFT0YNCisNCisgICQgZ2NjIC1XbCwtLXZlcmJvc2UgMj4m MSBcDQorICAgIHwgc2VkIOKAmS9ePT09LywvXj09PS8hZDsvXj09PS9kO3Mv MHgwODA0ODAwMC8weDA4MDAwMDAwL+KAmSA+IHRlc3Q0Lmxkcw0KKyAgJCBn Y2MgLXMgLU8yIC1vIHRlc3Q0IHRlc3Q0LmMgLVdsLC1ULHRlc3Q0Lmxkcw0K KyAgJCByZWFkZWxmIC1TbCAuL3Rlc3Q0IHwgc2VkIC1lIOKAnSRTRURDTUTi gJ0gLWUg4oCdJFNFRENNRDLigJ0NCisgIFtOcl0gTmFtZSAgICAgICAgICAg ICAgVHlwZSAgICAgICAgQWRkciAgICAgT2ZmICAgIFNpemUgICBFUyBGbGcg IExrIEluZiAgQWwNCisgIFsgMF0gICAgICAgICAgICAgICAgICAgTlVMTCAg ICAgICAgMDAwMDAwMDAgMDAwMDAwIDAwMDAwMCAwMCAgICAgICAwICAgMCAg IDANCisgIFsgMV0gLmludGVycCAgICAgICAgICAgUFJPR0JJVFMgICAgMDgw MDAxMTQgMDAwMTE0IDAwMDAxMyAwMCBBICAgICAwICAgMCAgIDENCisgIFsg Ml0gLm5vdGUuQUJJLXRhZyAgICAgTk9URSAgICAgICAgMDgwMDAxMjggMDAw MTI4IDAwMDAyMCAwMCBBICAgICAwICAgMCAgIDQNCisgIFsgM10gLmhhc2gg ICAgICAgICAgICAgSEFTSCAgICAgICAgMDgwMDAxNDggMDAwMTQ4IDAwMDAy NCAwNCBBICAgICA0ICAgMCAgIDQNCisgIFsgNF0gLmR5bnN5bSAgICAgICAg ICAgRFlOU1lNICAgICAgMDgwMDAxNmMgMDAwMTZjIDAwMDA0MCAxMCBBICAg ICA1ICAgMSAgIDQNCisgIFsgNV0gLmR5bnN0ciAgICAgICAgICAgU1RSVEFC ICAgICAgMDgwMDAxYWMgMDAwMWFjIDAwMDA0NSAwMCBBICAgICAwICAgMCAg IDENCisgIFsgNl0gLmdudS52ZXJzaW9uICAgICAgVkVSU1lNICAgICAgMDgw MDAxZjIgMDAwMWYyIDAwMDAwOCAwMiBBICAgICA0ICAgMCAgIDINCisgIFsg N10gLmdudS52ZXJzaW9uX3IgICAgVkVSTkVFRCAgICAgMDgwMDAxZmMgMDAw MWZjIDAwMDAyMCAwMCBBICAgICA1ICAgMSAgIDQNCisgIFsgOF0gLnJlbC5k eW4gICAgICAgICAgUkVMICAgICAgICAgMDgwMDAyMWMgMDAwMjFjIDAwMDAw OCAwOCBBICAgICA0ICAgMCAgIDQNCisgIFsgOV0gLnJlbC5wbHQgICAgICAg ICAgUkVMICAgICAgICAgMDgwMDAyMjQgMDAwMjI0IDAwMDAwOCAwOCBBICAg ICA0ICAgYiAgIDQNCisgIFsxMF0gLmluaXQgICAgICAgICAgICAgUFJPR0JJ VFMgICAgMDgwMDAyMmMgMDAwMjJjIDAwMDAxNyAwMCBBWCAgICAwICAgMCAg IDQNCisgIC4uLg0KKyAgWzIyXSAuYnNzICAgICAgICAgICAgICBOT0JJVFMg ICAgICAwODAwMTUwMCAwMDA1MDAgMDA0MDIwIDAwIFdBICAgIDAgICAwICAz Mg0KKyAgWzIzXSAuY29tbWVudCAgICAgICAgICBQUk9HQklUUyAgICAwMDAw MDAwMCAwMDA1MDAgMDAwMTMyIDAwICAgICAgIDAgICAwICAgMQ0KKyAgWzI0 XSAuc2hzdHJ0YWIgICAgICAgICBTVFJUQUIgICAgICAwMDAwMDAwMCAwMDA2 MzIgMDAwMGJlIDAwICAgICAgIDAgICAwICAgMQ0KKyAgVHlwZSAgICBPZmZz ZXQgICBWaXJ0QWRkciAgIFBoeXNBZGRyICAgRmlsZVNpeiBNZW1TaXogIEZs ZyAgQWxpZ24NCisgIFBIRFIgICAgMHgwMDAwMzQgMHgwODAwMDAzNCAweDA4 MDAwMDM0IDB4MDAwZTAgMHgwMDBlMCBSIEUgIDB4NA0KKyAgSU5URVJQICAw eDAwMDExNCAweDA4MDAwMTE0IDB4MDgwMDAxMTQgMHgwMDAxMyAweDAwMDEz IFIgICAgMHgxDQorICBbUmVxdWVzdGluZyBwcm9ncmFtIGludGVycHJldGVy OiAvbGliL2xkLWxpbnV4LnNvLjJdDQorICBMT0FEICAgIDB4MDAwMDAwIDB4 MDgwMDAwMDAgMHgwODAwMDAwMCAweDAwM2ZjIDB4MDAzZmMgUiBFICAweDEw MDANCisgIExPQUQgICAgMHgwMDAzZmMgMHgwODAwMTNmYyAweDA4MDAxM2Zj IDB4MDAwZmMgMHgwNDEyNCBSVyAgIDB4MTAwMA0KKyAgRFlOQU1JQyAweDAw MDQwOCAweDA4MDAxNDA4IDB4MDgwMDE0MDggMHgwMDBjOCAweDAwMGM4IFJX ICAgMHg0DQorICBOT1RFICAgIDB4MDAwMTI4IDB4MDgwMDAxMjggMHgwODAw MDEyOCAweDAwMDIwIDB4MDAwMjAgUiAgICAweDQNCisgIFNUQUNLICAgMHgw MDAwMDAgMHgwMDAwMDAwMCAweDAwMDAwMDAwIDB4MDAwMDAgMHgwMDAwMCBS VyAgIDB4NA0KKw0KKyAgJCBwcmVsaW5rIC1OIC4vdGVzdDQNCisgICQgcmVh ZGVsZiAtU2wgLi90ZXN0NCB8IHNlZCAtZSDigJ0kU0VEQ01E4oCdIC1lIOKA nSRTRURDTUQy4oCdDQorICBbTnJdIE5hbWUgICAgICAgICAgICAgIFR5cGUg ICAgICAgIEFkZHIgICAgIE9mZiAgICBTaXplICAgRVMgRmxnICBMayBJbmYg IEFsDQorICBbIDBdICAgICAgICAgICAgICAgICAgIE5VTEwgICAgICAgIDAw MDAwMDAwIDAwMDAwMCAwMDAwMDAgMDAgICAgICAgMCAgIDAgICAwDQorICBb IDFdIC5pbnRlcnAgICAgICAgICAgIFBST0dCSVRTICAgIDA4MDAwMTM0IDAw MDEzNCAwMDAwMTMgMDAgQSAgICAgMCAgIDAgICAxDQorICBbIDJdIC5ub3Rl LkFCSS10YWcgICAgIE5PVEUgICAgICAgIDA4MDAwMTQ4IDAwMDE0OCAwMDAw MjAgMDAgQSAgICAgMCAgIDAgICA0DQorICBbIDNdIC5oYXNoICAgICAgICAg ICAgIEhBU0ggICAgICAgIDA4MDAwMTY4IDAwMDE2OCAwMDAwMjQgMDQgQSAg ICAgNCAgIDAgICA0DQorICBbIDRdIC5keW5zeW0gICAgICAgICAgIERZTlNZ TSAgICAgIDA4MDAwMThjIDAwMDE4YyAwMDAwNDAgMTAgQSAgICAyMiAgIDEg ICA0DQorICBbIDVdIC5nbnUudmVyc2lvbiAgICAgIFZFUlNZTSAgICAgIDA4 MDAwMWYyIDAwMDFmMiAwMDAwMDggMDIgQSAgICAgNCAgIDAgICAyDQorICBb IDZdIC5nbnUudmVyc2lvbl9yICAgIFZFUk5FRUQgICAgIDA4MDAwMWZjIDAw MDFmYyAwMDAwMjAgMDAgQSAgICAyMiAgIDEgICA0DQorICBbIDddIC5yZWwu ZHluICAgICAgICAgIFJFTCAgICAgICAgIDA4MDAwMjFjIDAwMDIxYyAwMDAw MDggMDggQSAgICAgNCAgIDAgICA0DQorICBbIDhdIC5yZWwucGx0ICAgICAg ICAgIFJFTCAgICAgICAgIDA4MDAwMjI0IDAwMDIyNCAwMDAwMDggMDggQSAg ICAgNCAgIGEgICA0DQorICBbIDldIC5pbml0ICAgICAgICAgICAgIFBST0dC SVRTICAgIDA4MDAwMjJjIDAwMDIyYyAwMDAwMTcgMDAgQVggICAgMCAgIDAg ICA0DQorICAuLi4NCisgIFsyMV0gLmJzcyAgICAgICAgICAgICAgTk9CSVRT ICAgICAgMDgwMDE1MDAgMDAwNGY4IDAwNDAyMCAwMCBXQSAgICAwICAgMCAg MzINCisgIFsyMl0gLmR5bnN0ciAgICAgICAgICAgU1RSVEFCICAgICAgMDgw MDY0ZjggMDAwNGY4IDAwMDA1OCAwMCBBICAgICAwICAgMCAgIDENCisgIFsy M10gLmdudS5saWJsaXN0ICAgICAgR05VX0xJQkxJU1QgMDgwMDY1NTAgMDAw NTUwIDAwMDAyOCAxNCBBICAgIDIyICAgMCAgIDQNCisgIFsyNF0gLmdudS5j b25mbGljdCAgICAgUkVMQSAgICAgICAgMDgwMDY1NzggMDAwNTc4IDAwMDBj MCAwYyBBICAgICA0ICAgMCAgIDQNCisgIFsyNV0gLmNvbW1lbnQgICAgICAg ICAgUFJPR0JJVFMgICAgMDAwMDAwMDAgMDAwNjM4IDAwMDEzMiAwMCAgICAg ICAwICAgMCAgIDENCisgIFsyNl0gLmdudS5wcmVsaW5rX3VuZG8gUFJPR0JJ VFMgICAgMDAwMDAwMDAgMDAwNzZjIDAwMDRkNCAwMSAgICAgICAwICAgMCAg IDQNCisgIFsyN10gLnNoc3RydGFiICAgICAgICAgU1RSVEFCICAgICAgMDAw MDAwMDAgMDAwYzQwIDAwMDBlYiAwMCAgICAgICAwICAgMCAgIDENCisgIFR5 cGUgICAgT2Zmc2V0ICAgVmlydEFkZHIgICBQaHlzQWRkciAgIEZpbGVTaXog TWVtU2l6ICBGbGcgIEFsaWduDQorICBQSERSICAgIDB4MDAwMDM0IDB4MDgw MDAwMzQgMHgwODAwMDAzNCAweDAwMGUwIDB4MDAwZTAgUiBFICAweDQNCisg IElOVEVSUCAgMHgwMDAxMzQgMHgwODAwMDEzNCAweDA4MDAwMTM0IDB4MDAw MTMgMHgwMDAxMyBSICAgIDB4MQ0KKyAgW1JlcXVlc3RpbmcgcHJvZ3JhbSBp bnRlcnByZXRlcjogL2xpYi9sZC1saW51eC5zby4yXQ0KKyAgTE9BRCAgICAw eDAwMDAwMCAweDA4MDAwMDAwIDB4MDgwMDAwMDAgMHgwMDNmYyAweDAwM2Zj IFIgRSAgMHgxMDAwDQorICBMT0FEICAgIDB4MDAwM2ZjIDB4MDgwMDEzZmMg MHgwODAwMTNmYyAweDAwMGZjIDB4MDQxMjQgUlcgICAweDEwMDANCisgIExP QUQgICAgMHgwMDA0ZjggMHgwODAwNjRmOCAweDA4MDA2NGY4IDB4MDAxNDAg MHgwMDE0MCBSVyAgIDB4MTAwMA0KKyAgRFlOQU1JQyAweDAwMDQwOCAweDA4 MDAxNDA4IDB4MDgwMDE0MDggMHgwMDBjOCAweDAwMGM4IFJXICAgMHg0DQor ICBOT1RFICAgIDB4MDAwMTQ4IDB4MDgwMDAxNDggMHgwODAwMDE0OCAweDAw MDIwIDB4MDAwMjAgUiAgICAweDQNCisgIFNUQUNLICAgMHgwMDAwMDAgMHgw MDAwMDAwMCAweDAwMDAwMDAwIDB4MDAwMDAgMHgwMDAwMCBSVyAgIDB4NA0K Kw0KK1Jlc2h1ZmZsaW5nIG9mIGFuIGV4ZWN1dGFibGUgd2l0aCBhZGRpdGlv biBvZiBhIG5ldyBzZWdtZW50DQorDQorRmlndXJlIDc6IFJlc2h1ZmZsaW5n IG9mIGFuIGV4ZWN1dGFibGUgd2l0aCBhZGRpdGlvbiBvZiBhIG5ldyBzZWdt ZW50DQorDQorSW4gdGhlIGxhc3QgZXhhbXBsZSwgYmFzZSBhZGRyZXNzIHdh cyBub3QgZGVjcmVhc2VkIGJ1dCBpbnN0ZWFkIGEgbmV3DQorUFRfTE9BRCBz ZWdtZW50IGhhcyBiZWVuIGFkZGVkLg0KKw0KK1JfPGFyY2g+X0NPUFkgcmVs b2NhdGlvbnMgYXJlIHR5cGljYWxseSBhZ2FpbnN0IGZpcnN0IHBhcnQgb2Yg dGhlIFNIVF9OT0JJVFMNCisuYnNzIHNlY3Rpb24uIFNvIHRoYXQgcHJlbGlu ayBjYW4gYXBwbHkgdGhlbSwgaXQgbmVlZHMgdG8gZmlyc3QgY2hhbmdlIHRo ZWlyDQorc2VjdGlvbiB0byBTSFRfUFJPR0JJVFMsIGJ1dCBhcyAuYnNzIHNl Y3Rpb24gdHlwaWNhbGx5IG9jY3VwaWVzIG11Y2ggbGFyZ2VyDQorcGFydCBv ZiBtZW1vcnksIGl0IGlzIG5vdCBkZXNpcmFibGUgdG8gY29udmVydCAuYnNz IHNlY3Rpb24gaW50byBTSFRfUFJPR0JJVFMNCithcyB3aG9sZS4NCisNCitB IHNlY3Rpb24gY2Fubm90IGJlIHBhcnRseSBTSFRfUFJPR0JJVFMgYW5kIHBh cnRseSBTSFRfTk9CSVRTLCBzbyBwcmVsaW5rDQorZmlyc3Qgc3BsaXRzIHRo ZSBzZWN0aW9uIGludG8gdHdvIHBhcnRzLCBmaXJzdCAuZHluYnNzIHdoaWNo IGNvdmVycyBhcmVhIGZyb20NCit0aGUgc3RhcnQgb2YgLmJzcyBzZWN0aW9u IHVwIHRvIGhpZ2hlc3QgYnl0ZSB0byB3aGljaCBzb21lIENPUFkgcmVsb2Nh dGlvbiBpcw0KK2FwcGxpZWQgYW5kIHRoZW4gdGhlIG9sZCAuYnNzLiBUaGUg Zmlyc3QgaXMgY29udmVydGVkIHRvIFNIVF9QUk9HQklUUyBhbmQgaXRzDQor c2l6ZSBpcyBkZWNyZWFzZWQsIHRoZSBsYXR0ZXIgc3RheXMgU0hUX05PQklU UyBhbmQgaXRzIHN0YXJ0IGFkZHJlc3MgYW5kIGZpbGUNCitvZmZzZXQgYXJl IGFkanVzdGVkIGFzIHdlbGwgYXMgaXRzIHNpemUgZGVjcmVhc2VkLg0KKw0K K1RoZSBkeW5hbWljIGxpbmtlciBoYW5kbGVzIHJlbG9jYXRpb25zIGluIHRo ZSBleGVjdXRhYmxlIGxhc3QsIHNvIHByZWxpbmsNCitjYW5ub3QganVzdCBj b3B5IG1lbW9yeSBmcm9tIHRoZSBzaGFyZWQgbGlicmFyeSB3aGVyZSB0aGUg c3ltYm9sIG9mIHRoZSBDT1BZDQorcmVsb2NhdGlvbiBoYXMgYmVlbiBsb29r ZWQgdXAgaW4uIFRoZXJlIG1pZ2h0IGJlIHJlbG9jYXRpb25zIGFwcGxpZWQg YnkgdGhlDQorZHluYW1pYyBsaW5rZXIgaW4gbm9ybWFsIHJlbG9jYXRpb24g cHJvY2Vzc2luZyB0byB0aGUgb2JqZWN0cywgc28gcHJlbGluayBoYXMNCit0 byBmaXJzdCBwcm9jZXNzIHRoZSByZWxvY2F0aW9ucyBhZ2FpbnN0IHRoYXQg bWVtb3J5IGFyZWEuDQorDQorUmVsb2NhdGlvbnMgd2hpY2ggZG9u4oCZdCBu ZWVkIGNvbmZsaWN0IGZpeHVwcyBhcmUgYWxyZWFkeSBhcHBsaWVkLCBzbyBw cmVsaW5rDQoranVzdCBuZWVkcyB0byBhcHBseSBjb25mbGljdCBmaXh1cHMg YWdhaW5zdCB0aGUgbWVtb3J5IGFyZWEsIHRoZW4gY29weSBpdCB0bw0KK3Ro ZSBuZXdseSBjcmVhdGVkIC5keW5ic3Mgc2VjdGlvbi4gSGVyZSBpcyBhbiBl eGFtcGxlIHdoaWNoIHNob3dzIHZhcmlvdXMNCit0aGluZ3Mgd2hpY2ggQ09Q WSByZWxvY2F0aW9uIGhhbmRsaW5nIGluIHByZWxpbmsgbmVlZHMgdG8gZGVh bCB3aXRoOg0KKw0KKyAgJCBjYXQgPiB0ZXN0MS5jIDw8RU9GDQorICBzdHJ1 Y3QgQSB7IGNoYXIgYTsgc3RydWN0IEEgKmI7IGludCAqYzsgaW50ICpkOyB9 Ow0KKyAgaW50IGJhciwgYmF6Ow0KKyAgc3RydWN0IEEgZm9vID0geyAxLCAm Zm9vLCAmYmFyLCAmYmF6IH07DQorICBpbnQgKmFkZHIgKHZvaWQpIHsgcmV0 dXJuICZiYXo7IH0NCisgIEVPRg0KKw0KKyAgJCBjYXQgPiB0ZXN0LmMgPDxF T0YNCisgICNpbmNsdWRlIDxzdGRpby5oPg0KKyAgc3RydWN0IEEgeyBjaGFy IGE7IHN0cnVjdCBBICpiOyBpbnQgKmM7IGludCAqZDsgfTsNCisgIGludCBi YXIsICphZGRyICh2b2lkKSwgYmlnWzgxOTJdOw0KKyAgZXh0ZXJuIHN0cnVj dCBBIGZvbzsNCisgIGludCBtYWluICh2b2lkKQ0KKyAgew0KKyAgICAgIHBy aW50ZiAo4oCdJXA6ICVkICVwICVwICVwICVwICVwXG7igJ0sDQorICAgICAg ICAgICAgICAmZm9vLCBmb28uYSwgZm9vLmIsIGZvby5jLCBmb28uZCwgJmJh ciwgYWRkciAoKSk7DQorICB9DQorICBFT0YNCisNCisgICQgZ2NjIC1ub3N0 ZGxpYiAtc2hhcmVkIC1mcGljIC1zIC1vIHRlc3QxLnNvIHRlc3QxLmMNCisg ICQgZ2NjIC1zIC1vIHRlc3QgdGVzdC5jIC4vdGVzdDEuc28NCisgICQgLi90 ZXN0DQorICAweDgwNDk2YzA6IDEgMHg4MDQ5NmMwIDB4ODA1MTZlMCAweDQ4 MzNhNCAweDgwNTE2ZTAgMHg0ODMzYTQNCisNCisgICQgcmVhZGVsZiAtciB0 ZXN0IHwgc2VkIOKAmS9cLnJlbFwuZHluLywvXC5yZWxcLnBsdC8hZDsvXjAv IWTigJkNCisgIDA4MDQ5NmFjIDAwMDAwYzA2IFJfMzg2X0dMT0JfREFUIDAw MDAwMDAwIF9fZ21vbl9zdGFydF9fDQorICAwODA0OTZjMCAwMDAwMDYwNSBS XzM4Nl9DT1BZICAgICAwODA0OTZjMCBmb28NCisNCisgICQgcmVhZGVsZiAt UyB0ZXN0IHwgZ3JlcCBic3MNCisgIFsyMl0gLmJzcyAgICBOT0JJVFMgMDgw NDk2YzAgMDAwNmMwIDAwODAyNCAwMCBXQSAgICAgIDAgICAgICAgMCAgICAg ICAzMg0KKw0KKyAgJCBwcmVsaW5rIC1OIC4vdGVzdCAuL3Rlc3QxLnNvDQor ICAkIHJlYWRlbGYgLXMgdGVzdCB8IGdyZXAgZm9vDQorICA2OiAgMDgwNDk2 YzAgMTYgT0JKRUNUIEdMT0JBTCBERUZBVUxUIDI1IGZvbw0KKyAgJCByZWFk ZWxmIC1zIHRlc3QxLnNvIHwgZ3JlcCBmb28NCisgIDE1OiAwMDRhOTMxNCAx NiBPQkpFQ1QgR0xPQkFMIERFRkFVTFQgIDYgZm9vDQorDQorICAgJCByZWFk ZWxmIC1yIHRlc3QgfCBzZWQg4oCZLy5nbnUuY29uZmxpY3QvLC9cLnJlbFwu ZHluLyFkOy9eMC8hZOKAmQ0KKyAgIDAwNGE5MzE4IDAwMDAwMDAxIFJfMzg2 XzMyICAgICAgICAgICAgMDgwNDk2YzANCisgICAwMDRhOTMxYyAwMDAwMDAw MSBSXzM4Nl8zMiAgICAgICAgICAgIDA4MDUxNmUwDQorICAgMDA1Zjk4NzQg MDAwMDAwMDEgUl8zODZfMzIgICAgICAgICAgICBmZmZmZmZmMA0KKyAgIDAw NWY5ODc4IDAwMDAwMDAxIFJfMzg2XzMyICAgICAgICAgICAgMDAwMDAwMDEN CisgICAwMDVmOThiYyAwMDAwMDAwMSBSXzM4Nl8zMiAgICAgICAgICAgIGZm ZmZmZmY0DQorICAgMDA1Zjk5MDAgMDAwMDAwMDEgUl8zODZfMzIgICAgICAg ICAgICBmZmZmZmZlYw0KKyAgIDAwNWY5OTQ4IDAwMDAwMDAxIFJfMzg2XzMy ICAgICAgICAgICAgZmZmZmZmZGMNCisgICAwMDVmOTk1YyAwMDAwMDAwMSBS XzM4Nl8zMiAgICAgICAgICAgIGZmZmZmZmUwDQorICAgMDA1Zjk5ODAgMDAw MDAwMDEgUl8zODZfMzIgICAgICAgICAgICBmZmZmZmZmOA0KKyAgIDAwNWY5 OTg4IDAwMDAwMDAxIFJfMzg2XzMyICAgICAgICAgICAgZmZmZmZmZTQNCisg ICAwMDVmOTlhNCAwMDAwMDAwMSBSXzM4Nl8zMiAgICAgICAgICAgIGZmZmZm ZmQ4DQorICAgMDA1Zjk5YzQgMDAwMDAwMDEgUl8zODZfMzIgICAgICAgICAg ICBmZmZmZmZlOA0KKyAgIDAwNWY5OWQ4IDAwMDAwMDAxIFJfMzg2XzMyICAg ICAgICAgICAgMDgwNDg1ODQNCisgICAwMDRjMjUxMCAwMDAwMDAwNyBSXzM4 Nl9KVU1QX1NMT1QgICAgIDAwNTM0NDYwDQorICAgMDA0YzI1MTQgMDAwMDAw MDcgUl8zODZfSlVNUF9TTE9UICAgICAwMDUzNDA4MA0KKyAgIDAwNGMyNTE4 IDAwMDAwMDA3IFJfMzg2X0pVTVBfU0xPVCAgICAgMDA1MzQ3NTANCisgICAw MDRjMjUxYyAwMDAwMDAwNyBSXzM4Nl9KVU1QX1NMT1QgICAgIDAwNTM0MmMw DQorICAgMDA0YzI1MjAgMDAwMDAwMDcgUl8zODZfSlVNUF9TTE9UICAgICAw MDUzNDIwMA0KKw0KKyAgICQgb2JqZHVtcCAtcyAtaiAuZHluYnNzIHRlc3QN CisgICB0ZXN0OiBmaWxlIGZvcm1hdCBlbGYzMi1pMzg2DQorICAgQ29udGVu dHMgb2Ygc2VjdGlvbiAuZHluYnNzOg0KKyAgIDgwNDk2YzAgMDEwMDAwMDAg YzA5NjA0MDggZTAxNjA1MDggYTQ5MzRhMDAgLi4uLi4uLi4uLi4uLi5KLg0K Kw0KKyAgICQgb2JqZHVtcCAtcyAtaiAuZGF0YSB0ZXN0MS5zbw0KKyAgIHRl c3QxLnNvOiBmaWxlIGZvcm1hdCBlbGYzMi1pMzg2DQorICAgQ29udGVudHMg b2Ygc2VjdGlvbiAuZGF0YToNCisgICA0YTkzMTQgIDAxMDAwMDAwIDE0OTM0 YTAwIGE4OTM0YTAwIGE0OTM0YTAwIC4uLi4uLkouLi5KLi4uSi4NCisNCisg ICAkIHJlYWRlbGYgLVMgdGVzdCB8IGdyZXAgYnNzDQorICAgWzI0XSAuZHlu YnNzICAgICAgUFJPR0JJVFMgICAwODA0OTZjMCAwMDE2YzAgMDAwMDEwIDAw IFdBICAgIDAgIDAgIDMyDQorICAgWzI1XSAuYnNzICAgICAgICAgTk9CSVRT ICAgICAwODA0OTZkMCAwMDE2ZDAgMDA4MDE0IDAwIFdBICAgIDAgIDAgIDMy DQorDQorICAgJCBzZWQg4oCZcy84MTkyLzEv4oCZIHRlc3QuYyA+IHRlc3Qy LmMNCisgICAkIGdjYyAtcyAtbyB0ZXN0MiB0ZXN0Mi5jIC4vdGVzdDEuc28N CisgICAkIHJlYWRlbGYgLVMgdGVzdDIgfCBncmVwIGJzcw0KKyAgIFsyMl0g LmJzcyAgICAgICAgIE5PQklUUyAgICAgMDgwNDk2YjAgMDAwNmIwIDAwMDAx YyAwMCBXQSAgICAwICAwICAgOA0KKw0KKyAgICQgcHJlbGluayAtTiAuL3Rl c3QyIC4vdGVzdDEuc28NCisgICAkIHJlYWRlbGYgLVMgdGVzdDIgfCBncmVw IGJzcw0KKyAgIFsyMl0gLmR5bmJzcyAgICAgICBQUk9HQklUUyAgMDgwNDk2 YjAgMDAwNmIwIDAwMDAxMCAwMCBXQSAgICAwICAwICAgOA0KKyAgIFsyM10g LmJzcyAgICAgICAgICBQUk9HQklUUyAgMDgwNDk2YzAgMDAwNmMwIDAwMDAw YyAwMCBXQSAgICAwICAwICAgOA0KKw0KK1JlbG9jYXRpb24gaGFuZGxpbmcg b2YgLmR5bmJzcyBvYmplY3RzDQorDQorQmVjYXVzZSB0ZXN0LmMgZXhlY3V0 YWJsZSBpcyBub3QgY29tcGlsZWQgYXMgcG9zaXRpb24gaW5kZXBlbmRlbnQg Y29kZSBhbmQNCit0YWtlcyBhZGRyZXNzIG9mIGZvbyB2YXJpYWJsZSwgYSBD T1BZIHJlbG9jYXRpb24gaXMgbmVlZGVkIHRvIGF2b2lkIGR5bmFtaWMNCity ZWxvY2F0aW9uIGFnYWluc3QgZXhlY3V0YWJsZeKAmXMgcmVhZC1vbmx5IFBU X0xPQUQgc2VnbWVudC4NCisNCitUaGUgZm9vIG9iamVjdCBpbiB0ZXN0MS5z byBoYXMgb25lIGZpZWxkIHdpdGggbm8gcmVsb2NhdGlvbnMgYXBwbGllZCBh dCBhbGwsDQorb25lIHJlbG9jYXRpb24gYWdhaW5zdCB0aGUgdmFyaWFibGUg aXRzZWxmLCBvbmUgcmVsb2NhdGlvbiB3aGljaCBuZWVkcyBhDQorY29uZmxp Y3QgZml4dXAgKGFzIGl0IGlzIG92ZXJyaWRkZW4gYnkgdGhlIHZhcmlhYmxl IGluIHRoZSBleGVjdXRhYmxlKSBhbmQgb25lDQord2l0aCByZWxvY2F0aW9u IHdoaWNoIGRvZXNu4oCZdCBuZWVkIGFueSBmaXh1cHMuDQorDQorVGhlIGZp cnN0IGFuZCBsYXN0IGZpZWxkIGNvbnRhaW4gYWxyZWFkeSB0aGUgcmlnaHQg dmFsdWVzIGluIHByZWxpbmtlZA0KK3Rlc3QxLnNvLCB3aGlsZSBzZWNvbmQg YW5kIHRoaXJkIG9uZSBuZWVkIHRvIGJlIGNoYW5nZWQgZm9yIHN5bWJvbCBh ZGRyZXNzZXMNCitpbiB0aGUgZXhlY3V0YWJsZSAoYXMgc2hvd24gaW4gdGhl IG9iamR1bXAgb3V0cHV0KS4gVGhlIGNvbmZsaWN0IGZpeHVwcw0KK2FnYWlu c3QgZm9vIGluIHRlc3QxLnNvIG5lZWQgdG8gc3RheSAodW5sZXNzIGl0IGlz IGEgQysrIHZpcnR1YWwgdGFibGUgb3IgUlRUSQ0KK2RhdGEsIGkuZS4gbm90 IGluIHRoaXMgdGVzdGNhc2UpLg0KKw0KK0luIHRlc3QsIHByZWxpbmsgY2hh bmdlZCAuZHluYnNzIHRvIFNIVF9QUk9HQklUUyBhbmQga2VwdCBTSFRfTk9C SVRTIC5ic3MsDQord2hpbGUgaW4gc2xpZ2h0bHkgbW9kaWZpZWQgdGVzdGNh c2UgKHRlc3QyKSB0aGUgc2l6ZSBvZiAuYnNzIHdhcyBzbWFsbCBlbm91Z2gN Cit0aGF0IHByZWxpbmsgY2hvc2UgdG8gbWFrZSBpdCBTSFRfUFJPR0JJVFMg dG9vIGFuZCBncm93IHRoZSByZWFkLXdyaXRlIFBUX0xPQUQNCitzZWdtZW50 IGFuZCBwdXQgLmR5bnN0ciBhbmQgLmdudS5jb25mbGljdCBzZWN0aW9ucyBh ZnRlciBpdC4NCisNCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 DQorDQorMTIgUHJlbGluayB1bmRvIG9wZXJhdGlvbg0KKw0KK1ByZWxpbmtp bmcgb2Ygc2hhcmVkIGxpYnJhcmllcyBhbmQgZXhlY3V0YWJsZXMgaXMgZGVz aWduZWQgdG8gYmUgcmV2ZXJzaWJsZSwNCitzbyB0aGF0IHByZWxpbmsgb3Bl cmF0aW9uIGZvbGxvd2VkIGJ5IHVuZG8gb3BlcmF0aW9uIGdlbmVyYXRlcyBi aXR3aXNlDQoraWRlbnRpY2FsIGZpbGUgdG8gdGhlIG9yaWdpbmFsIGJlZm9y ZSBwcmVsaW5raW5nLiBGb3IgdGhpcyBvcGVyYXRpb24gcHJlbGluaw0KK3N0 b3JlcyB0aGUgb3JpZ2luYWwgRUxGIGhlYWRlciwgYWxsIHRoZSBwcm9ncmFt IGFuZCBhbGwgc2VjdGlvbiBoZWFkZXJzIGludG8gYQ0KKy5nbnUucHJlbGlu a191bmRvIHNlY3Rpb24gYmVmb3JlIGl0IHN0YXJ0cyBwcmVsaW5raW5nIGFu IHVucHJlbGlua2VkDQorZXhlY3V0YWJsZSBvciBzaGFyZWQgbGlicmFyeS4N CisNCitXaGVuIHVuZG9pbmcgdGhlIG1vZGlmaWNhdGlvbnMsIHByZWxpbmsg aGFzIHRvIGNvbnZlcnQgUkVMQSBiYWNrIHRvIFJFTCBmaXJzdA0KK2lmIFJF TCB0byBSRUxBIGNvbnZlcnNpb24gd2FzIGRvbmUgZHVyaW5nIHByZWxpbmtp bmcgYW5kIGFsbCBhbGxvY2F0ZWQNCitzZWN0aW9ucyBhYm92ZSBpdCByZWxv Y2F0ZWQgZG93biB0byBhZGp1c3QgZm9yIHRoZSBzZWN0aW9uIHNocmluay4g UmVsb2NhdGlvbg0KK3R5cGVzIHdoaWNoIHdlcmUgY2hhbmdlZCB3aGVuIHRy eWluZyB0byBhdm9pZCBSRUwgdG8gUkVMQSBjb252ZXJzaW9uIG5lZWQgdG8N CitiZSBjaGFuZ2VkIGJhY2sgKGUuZy4gb24gSUEtMzIsIGl0IGlzIGFzc3Vt ZWQgUl8zODZfR0xPQl9EQVQgcmVsb2NhdGlvbnMNCitzaG91bGQgYmUgb25s eSB0aG9zZSBhZ2FpbnN0IC5nb3Qgc2VjdGlvbiBhbmQgUl8zODZfMzIgcmVs b2NhdGlvbnMgaW4gdGhlDQorcmVtYWluaW5nIHBsYWNlcykuDQorDQorT24g UkVMQSBhcmNoaXRlY3R1cmVzLCB0aGUgbWVtb3J5IHBvaW50ZWQgYnkgcl9v ZmZzZXQgZmllbGQgb2YgdGhlIHJlbG9jYXRpb25zDQorbmVlZHMgdG8gYmUg cmVpbml0aWFsaXplZCB0byB0aGUgdmFsdWVzIHN0b3JlZCB0aGVyZSBieSB0 aGUgbGlua2VyIG9yaWdpbmFsbHkuDQorRm9yIHByZWxpbmsgaXQgZG9lc27i gJl0IG1hdHRlciBtdWNoIHdoYXQgdGhpcyB2YWx1ZSBpcyAoZS5nLiBhbHdh eXMgMCwgY29weSBvZg0KK3JfYWRkZW5kLCBldGMuKSwgYXMgbG9uZyBhcyBp dCBpcyBjb21wdXRhYmxlIGZyb20gdGhlIGluZm9ybWF0aW9uIHByZWxpbmsg aGFzDQorZHVyaW5nIHVuZG8gb3BlcmF0aW9uLg0KKw0KK1sgU3VjaCBhcyBy ZWxvY2F0aW9uIHR5cGUsIHJfYWRkZW5kIHZhbHVlLCB0eXBlLCBiaW5kaW5n LCBmbGFncyBvciBvdGhlcg0KKyAgYXR0cmlidXRlcyBvZiByZWxvY2F0aW9u 4oCZcyBzeW1ib2wsIHdoYXQgc2VjdGlvbiB0aGUgcmVsb2NhdGlvbiBwb2lu dHMgaW50bw0KKyAgb3IgdGhlIG9mZnNldCB3aXRoaW4gc2VjdGlvbiBpdCBw b2ludHMgdG8uXQ0KKw0KK1RoZSBHTlUgbGlua2VyIGhhZCB0byBiZSBjaGFu Z2VkIG9uIHNldmVyYWwgYXJjaGl0ZWN0dXJlcywgc28gdGhhdCBpdCBzdG9y ZXMNCit0aGVyZSBzdWNoIGEgdmFsdWUsIGFzIGluIHNldmVyYWwgcGxhY2Vz IHRoZSB2YWx1ZSBlLmcuIGRlcGVuZGVkIG9uIG9yaWdpbmFsDQorYWRkZW5k IGJlZm9yZSBmaW5hbCBsaW5rICh3aGljaCBpcyBub3QgYXZhaWxhYmxlIGFu eXdoZXJlIGFmdGVyIGZpbmFsIGxpbmsNCit0aW1lLCBzaW5jZSByX2FkZGVu ZCBmaWVsZCBjb3VsZCBiZSBhZGp1c3RlZCBkdXJpbmcgdGhlIGZpbmFsIGxp bmspLiBJZiBzZWNvbmQNCit3b3JkIG9mIC5nb3Qgc2VjdGlvbiBoYXMgYmVl biBtb2RpZmllZCwgaXQgbmVlZHMgdG8gYmUgcmV2ZXJ0ZWQgYmFjayB0byB0 aGUNCitvcmlnaW5hbCB2YWx1ZSAob24gbW9zdCBhcmNoaXRlY3R1cmVzIHpl cm8pLg0KKw0KK0luIGV4ZWN1dGFibGVzLCBzZWN0aW9ucyB3aGljaCB3ZXJl IG1vdmVkIGR1cmluZyBwcmVsaW5raW5nIG5lZWQgdG8gYmUgcHV0DQorYmFj ayBhbmQgc2VnbWVudHMgYWRkZWQgd2hpbGUgcHJlbGlua2luZyBtdXN0IGJl IHJlbW92ZWQuDQorDQorVGhlcmUgYXJlIDMgZGlmZmVyZW50IHdheXMgaG93 IGFuIHVuZG8gb3BlcmF0aW9uIGNhbiBiZSBwZXJmb3JtZWQ6DQorDQor4oCi IFVuZG9pbmcgaW5kaXZpZHVhbCBleGVjdXRhYmxlcyBvciBzaGFyZWQgbGli cmFyaWVzIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZA0KKyAgbGluZSBpbiBw bGFjZSAoaS5lLiB3aGVuIHRoZSB1bmRvIG9wZXJhdGlvbiBpcyBzdWNjZXNz ZnVsLCB0aGUgcHJlbGlua2VkDQorICBleGVjdXRhYmxlIG9yIGxpYnJhcnkg aXMgYXRvbWljYWxseSByZXBsYWNlZCB3aXRoIHRoZSB1bmRvbmUgb2JqZWN0 KS4NCisNCivigKIgV2l0aCAtbyBvcHRpb24sIG9ubHkgYSBzaW5nbGUgZXhl Y3V0YWJsZSBvciBzaGFyZWQgbGlicmFyeSBnaXZlbiBvbiB0aGUNCisgIGNv bW1hbmQgbGluZSBpcyB1bmRvbmUgYW5kIHN0b3JlZCB0byB0aGUgZmlsZSBz cGVjaWZpZWQgYXMgLW8gb3B0aW9u4oCZcw0KKyAgYXJndW1lbnQuDQorDQor 4oCiIFdpdGggLXVhIG9wdGlvbnMsIHByZWxpbmsgYnVpbGRzIGEgbGlzdCBv ZiBleGVjdXRhYmxlcyBpbiBwYXRocyB3cml0dGVuIGluDQorICBpdHMgY29u ZmlnIGZpbGUgKHBsdXMgZGlyZWN0b3JpZXMgYW5kIGV4ZWN1dGFibGVzIG9y IGxpYnJhcmllcyBmcm9tIGNvbW1hbmQNCisgIGxpbmUpIGFuZCBhbGwgc2hh cmVkIGxpYnJhcmllcyB0aGVzZSBleGVjdXRhYmxlcyBkZXBlbmQgb24uIEFs bCBleGVjdXRhYmxlcw0KKyAgYW5kIGxpYnJhcmllcyBpbiB0aGUgbGlzdCBh cmUgdGhlbiB1bnByZWxpbmtlZC4gVGhpcyBvcHRpb24gaXMgdXNlZCB0bw0K KyAgdW5wcmVsaW5rIHRoZSB3aG9sZSBzeXN0ZW0uDQorDQorICBJdCBpcyBu b3QgcGVyZmVjdCBhbmQgbmVlZHMgdG8gYmUgd29ya2VkIG9uLCBzaW5jZSBl LmcuIGlmIHNvbWUgZXhlY3V0YWJsZQ0KKyAgdXNlcyBzb21lIHNoYXJlZCBs aWJyYXJ5IHdoaWNoIG5vIG90aGVyIGV4ZWN1dGFibGUgbGlua3MgYWdhaW5z dCwgdGhpcw0KKyAgZXhlY3V0YWJsZSAoYW5kIHNoYXJlZCBsaWJyYXJ5KSBp cyBwcmVsaW5rZWQsIHRoZW4gdGhlIGV4ZWN1dGFibGUgaXMgcmVtb3ZlZA0K KyAgKGUuZy4gdW5pbnN0YWxsZWQpIGJ1dCB0aGUgc2hhcmVkIGxpYnJhcnkg aXMga2VwdCwgdGhlbiB0aGUgc2hhcmVkIGxpYnJhcnkNCisgIGlzIG5vdCB1 bnByZWxpbmtlZCB1bmxlc3Mgc3BlY2lmaWNhbGx5IG1lbnRpb25lZCBvbiB0 aGUgY29tbWFuZCBsaW5lLg0KKw0KKz09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0NCisNCisxMyBWZXJpZmljYXRpb24gb2YgcHJlbGlua2VkIGZp bGVzDQorDQorQXMgcHJlbGluayBuZWVkcyB0byBtb2RpZnkgZXhlY3V0YWJs ZXMgYW5kIHNoYXJlZCBsaWJyYXJpZXMgaW5zdGFsbGVkIG9uIGENCitzeXN0 ZW0sIGl0IGNvbXBsaWNhdGVzIHN5c3RlbSBpbnRlZ3JpdHkgdmVyaWZpY2F0 aW9uIChlLmcuIHJwbSAtViwgVHJpcFdpcmUpLg0KKw0KK1RoZXNlIHN5c3Rl bXMgc3RvcmUgY2hlY2tzdW1zIG9mIGluc3RhbGxlZCBmaWxlcyBpbnRvIHNv bWUgZGF0YWJhc2UgYW5kIGR1cmluZw0KK3ZlcmlmaWNhdGlvbiBjb21wdXRl IHRoZW0gYWdhaW4gYW5kIGNvbXBhcmUgdG8gdGhlIHZhbHVlcyBzdG9yZWQg aW4gdGhlDQorZGF0YWJhc2UuIE9uIGEgcHJlbGlua2VkIHN5c3RlbSBtb3N0 IG9mIHRoZSBleGVjdXRhYmxlcyBhbmQgc2hhcmVkIGxpYnJhcmllcw0KK3dv dWxkIGJlIHJlcG9ydGVkIGFzIG1vZGlmaWVkLg0KKw0KK1ByZWxpbmsgb2Zm ZXJzIGEgc3BlY2lhbCBtb2RlIGZvciB0aGVzZSBzeXN0ZW1zLCBpbiB3aGlj aCBpdCB2ZXJpZmllcyB0aGF0DQordW5wcmVsaW5raW5nIHRoZSBleGVjdXRh YmxlIG9yIHNoYXJlZCBsaWJyYXJ5IGZvbGxvd2VkIGJ5IGltbWVkaWF0ZSBw cmVsaW5raW5nDQorKHdpdGggdGhlIHNhbWUgYmFzZSBhZGRyZXNzKSBjcmVh dGVzIGJpdHdpc2UgaWRlbnRpY2FsIG91dHB1dCB3aXRoIHRoZQ0KK2V4ZWN1 dGFibGUgb3Igc2hhcmVkIGxpYnJhcnkgdGhhdOKAmXMgYmVpbmcgdmVyaWZp ZWQuIEZ1cnRoZXJtb3JlLCBkZXBlbmRpbmcgb24NCitvdGhlciBwcmVsaW5r IG9wdGlvbnMsIGl0IGVpdGhlciB3cml0ZXMgdGhlIHVucHJlbGlua2VkIGlt YWdlIHRvIGl0cyBzdGFuZGFyZA0KK291dHB1dCBvciBjb21wdXRlcyBNRDUg b3IgU0hBMSBkaWdlc3QgZnJvbSB0aGlzIHVucHJlbGlua2VkIGltYWdlLg0K Kw0KK01lcmUgdW5kbyBvcGVyYXRpb24gdG8gYSBmaWxlIGFuZCBjaGVja3N1 bW1pbmcgaXQgaXMgbm90IGdvb2QgZW5vdWdoLCBzaW5jZSBhbg0KK2ludHJ1 ZGVyIGNvdWxkIGhhdmUgbW9kaWZpZWQgZS5nLiBjb25mbGljdCBmaXh1cHMg b3IgbWVtb3J5IHdoaWNoIHJlbG9jYXRpb25zDQorcG9pbnQgYXQsIGNoYW5n aW5nIGEgYmVoYXZpb3Igb2YgdGhlIHByb2dyYW0gd2hpbGUgZmlsZSBhZnRl ciB1bnByZWxpbmtpbmcNCit3b3VsZCBiZSB1bm1vZGlmaWVkLg0KKw0KK0R1 cmluZyB2ZXJpZmljYXRpb24sIGJvdGggcHJlbGluayBleGVjdXRhYmxlIGFu ZCB0aGUgZHluYW1pYyBsaW5rZXIgYXJlIHVzZWQsDQorc28gYSBwcm9wZXIg c3lzdGVtIGludGVncml0eSB2ZXJpZmljYXRpb24gZmlyc3QgY2hlY2tzIHdo ZXRoZXIgcHJlbGluaw0KK2V4ZWN1dGFibGUgKHdoaWNoIGlzIHN0YXRpY2Fs bHkgbGlua2VkIGZvciB0aGlzIHJlYXNvbikgaGFzbuKAmXQgYmVlbiBtb2Rp ZmllZCwNCit0aGVuIHVzZXMgcHJlbGluayDigJN2ZXJpZnkgdG8gdmVyaWZ5 IHRoZSBkeW5hbWljIGxpbmtlciAod2hlbiB2ZXJpZmljYXRpbmcNCitsZC5z byB0aGUgZHluYW1pYyBsaW5rZXIgaXMgbm90IGV4ZWN1dGVkKSBmb2xsb3dl ZCBieSB2ZXJpZmljYXRpb24gb2Ygb3RoZXINCitleGVjdXRhYmxlcyBhbmQg bGlicmFyaWVzLg0KKw0KK1ZlcmlmaWNhdGlvbiByZXF1aXJlcyBhbGwgZGVw ZW5kZW5jaWVzIG9mIGNoZWNrZWQgb2JqZWN0IHRvIGJlIHVubW9kaWZpZWQN CitzaW5jZSBsYXN0IHByZWxpbmtpbmcuIElmIHNvbWUgZGVwZW5kZW5jeSBo YXMgYmVlbiBjaGFuZ2VkIG9yIGlzIG1pc3NpbmcsDQorcHJlbGluayB3aWxs IHJlcG9ydCBpdCBhbmQgcmV0dXJuIHdpdGggbm9uLXplcm8gZXhpdCBzdGF0 dXMuIFRoaXMgaXMgYmVjYXVzZQ0KK3ByZWxpbmtpbmcgZGVwZW5kcyBvbiB0 aGVpciBjb250ZW50IGFuZCBzbyBpZiB0aGV5IGFyZSBtb2RpZmllZCwgdGhl DQorZXhlY3V0YWJsZSBvciBzaGFyZWQgbGlicmFyeSBtaWdodCBiZSBkaWZm ZXJlbnQgdG8gb25lIGFmdGVyIHVucHJlbGlua2luZw0KK2ZvbGxvd2VkIGJ5 IHByZWxpbmtpbmcgYWdhaW4uDQorDQorSW4gdGhlIGZ1dHVyZSwgcGVyaGFw cyBpdCB3b3VsZCBiZSBwb3NzaWJsZSB0byBldmVuIHZlcmlmeSBleGVjdXRh YmxlcyBvcg0KK3NoYXJlZCBsaWJyYXJpZXMgd2l0aG91dCB1bm1vZGlmaWVk IGRlcGVuZGVuY2llcywgdW5kZXIgdGhlIGFzc3VtcHRpb24gdGhhdCBpbg0K K3N1Y2ggY2FzZSB0aGUgcHJlbGluayBpbmZvcm1hdGlvbiB3aWxsIG5vdCBi ZSB1c2VkLiBJdCB3b3VsZCBqdXN0IG5lZWQgdG8NCit2ZXJpZnkgdGhhdCBu b3RoaW5nIGVsc2UgYnV0IHRoZSBpbmZvcm1hdGlvbiBvbmx5IHVzZWQgd2hl biBkZXBlbmRlbmNpZXMgYXJlDQordXAgdG8gZGF0ZSBoYXMgY2hhbmdlZCBi ZXR3ZWVuIHRoZSBleGVjdXRhYmxlIG9yIGxpYnJhcnkgb24gdGhlIGZpbGVz eXN0ZW0gYW5kDQorZmlsZSBhZnRlciB1bnByZWxpbmsgZm9sbG93ZWQgYnkg cHJlbGluayBjeWNsZS4NCisNCitUaGUgcHJlbGluayBvcGVyYXRpb24gd291 bGQgbmVlZCB0byBiZSBtb2RpZmllZCBpbiB0aGlzIGNhc2UsIHNvIHRoYXQg bm8NCitpbmZvcm1hdGlvbiBpcyBjb2xsZWN0ZWQgZnJvbSB0aGUgZHluYW1p YyBsaW5rZXIsIHRoZSBsaXN0IG9mIGRlcGVuZGVuY2llcyBpcw0KK2Fzc3Vt ZWQgdG8gYmUgdGhlIG9uZSBzdG9yZWQgaW4gdGhlIGV4ZWN1dGFibGUgYW5k IGV4cGVjdCBpdCB0byBoYXZlIGlkZW50aWNhbA0KK251bWJlciBvZiBjb25m bGljdCBmaXh1cHMuDQorDQorPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PQ0KKw0KKzE0IE1lYXN1cmVtZW50cw0KKw0KK1RoZXJlIGFyZSB0d28g YXJlYXMgd2hlcmUgcHJlbGluayBjYW4gc3BlZWQgdGhpbmdzIHVwIG5vdGlj ZWFibHkuIFRoZSBwcmltYXJ5DQoraXMgY2VydGFpbmx5IHN0YXJ0dXAgdGlt ZSBvZiBiaWcgR1VJIGFwcGxpY2F0aW9ucyB3aGVyZSB0aGUgZHluYW1pYyBs aW5rZXINCitzcGVuZHMgZnJvbSAxMDBtcyB1cCB0byBhIGZldyBzZWNvbmRz IGJlZm9yZSBnaXZpbmcgY29udHJvbCB0byB0aGUNCithcHBsaWNhdGlvbi4N CisNCitBbm90aGVyIGFyZWEgaXMgd2hlbiBsb3RzIG9mIHNtYWxsIHByb2dy YW1zIGFyZSBzdGFydGVkIHVwLCBidXQgdGhlaXINCitleGVjdXRpb24gdGlt ZSBpcyByYXRoZXIgc2hvcnQsIHNvIHRoZSBzdGFydHVwIHRpbWUgd2hpY2gg cHJlbGluayBvcHRpbWl6ZXMgaXMNCithIG5vdGljZWFibGUgZnJhY3Rpb24g b2YgdGhlIHRvdGFsIHRpbWUuDQorDQorVGhpcyBpcyB0eXBpY2FsIGZvciBz aGVsbCBzY3JpcHRpbmcuDQorDQorRmlyc3QgbnVtYmVycyBhcmUgZnJvbSBs bWJlbmNoIGJlbmNobWFyaywgdmVyc2lvbiAzLjAtYTMuIE1vc3Qgb2YgdGhl DQorYmVuY2htYXJrcyBpbiBsbWJlbmNoIHN1aXRlIG1lYXN1cmUga2VybmVs IHNwZWVkLCBzbyBpdCBkb2VzbuKAmXQgbWF0dGVyIG11Y2gNCit3aGV0aGVy IHByZWxpbmsgaXMgdXNlZCBvciBub3QuIE9ubHkgaW4gbGF0X3Byb2MgYmVu Y2htYXJrIHByZWxpbmsgc2hvd3MgdXANCit2aXNpYmx5LiBUaGlzIGJlbmNo bWFyayBtZWFzdXJlcyAzIGRpZmZlcmVudCB0aGluZ3M6DQorDQor4oCiIGZv cmsgcHJvYywgd2hpY2ggaXMgZm9yaygpIGZvbGxvd2VkIGJ5IGltbWVkaWF0 ZSBleGl0KDEpIGluIHRoZSBjaGlsZCBhbmQNCisgIHdhaXQoMCkgaW4gdGhl IHBhcmVudC4gVGhlIHJlc3VsdHMgYXJlIChhcyBleHBlY3RlZCkgYWJvdXQg dGhlIHNhbWUgYmV0d2Vlbg0KKyAgdW5wcmVsaW5rZWQgYW5kIHByZWxpbmtl ZCBzeXN0ZW1zLg0KKw0KK+KAoiBleGVjIHByb2MsIGkuZS4gZm9yaygpIGZv bGxvd2VkIGJ5IGltbWVkaWF0ZSBjbG9zZSgxKSBhbmQgZXhlY3ZlKCkgb2Yg YQ0KKyAgc2ltcGxlIGhlbGxvIHdvcmxkIHByb2dyYW0gKHRoaXMgcHJvZ3Jh bSBpcyBjb21waWxlZCBhbmQgbGlua2VkIGR1cmluZyB0aGUNCisgIGJlbmNo bWFyayBpbnRvIGEgdGVtcG9yYXJ5IGRpcmVjdG9yeSBhbmQgaXMgbmV2ZXIg cHJlbGlua2VkKS4gVGhlIG51bWJlcnMNCisgIGFyZSAxNjDCtXMgdG8gMjAw wrVzIGJldHRlciBvbiBwcmVsaW5rZWQgc3lzdGVtcywgYmVjYXVzZSB0aGVy ZSBpcyBubw0KKyAgcmVsb2NhdGlvbiBwcm9jZXNzaW5nIG5lZWRlZCBpbml0 aWFsbHkgaW4gdGhlIGR5bmFtaWMgbGlua2VyIGFuZCBiZWNhdXNlIGFsbA0K KyAgcmVsYXRpdmUgcmVsb2NhdGlvbnMgaW4gbGliYy5zby42IGNhbiBiZSBz a2lwcGVkLg0KKw0KK+KAoiBzaCBwcm9jLCBpLmUuIGZvcmsoKSBmb2xsb3dl ZCBieSBpbW1lZGlhdGUgY2xvc2UoMSkgYW5kIGV4ZWNscCjigJ0vYmluL3No 4oCdLA0KKyAg4oCdc2jigJ0sIOKAnS1j4oCdLCDigJ0vdG1wL2hlbGxv4oCd LCAwKS4gQWx0aG91Z2ggdGhlIGhlbGxvIHdvcmxkIHByb2dyYW0gaXMgbm90 DQorICBwcmVsaW5rZWQgaW4gdGhpcyBjYXNlIGVpdGhlciwgdGhlIHNoZWxs IGlzLCBzbyBvdXQgb2YgdGhlIDkwMMK1cyB0byAxMDAwwrVzDQorICBzcGVl ZHVwIGxlc3MgdGhhbiAyMDDCtXMgY2FuIGJlIGFjY291bnRlZCBvbiB0aGUg c3BlZWQgdXAgb2YgdGhlIGhlbGxvIHdvcmxkDQorICBwcm9ncmFtIGFzIGlu IGV4ZWMgcHJvYyBiZW5jaG1hcmsgYW5kIHRoZSByZXN0IHRvIHRoZSBzcGVl ZHVwIG9mIHNoZWxsDQorICBzdGFydHVwLg0KKw0KK0ZpcnN0IDQgcm93cyBh cmUgZnJvbSBydW5uaW5nIHRoZSBiZW5jaG1hcmsgb24gYSBmdWxseSB1bnBy ZWxpbmtlZCBzeXN0ZW0sDQordGhlIGxhc3QgNCByb3dzIG9uIHRoZSBzYW1l IHN5c3RlbSwgYnV0IGZ1bGx5IHByZWxpbmtlZC4NCisNCitMTUJFTkNIIDMu MCBTVU1NQVJZDQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0oQWxwaGEgc29mdHdhcmUsIGRvIG5vdCBkaXN0cmlidXRlKQ0KKw0KK1By b2Nlc3NvciwgUHJvY2Vzc2VzIC0gdGltZXMgaW4gbWljcm9zZWNvbmRzIC0g c21hbGxlciBpcyBiZXR0ZXINCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0NCitIb3N0IE9TICAgICAgICAgICBNaHogIG51bGwgbnVsbCAgICAgIG9w ZW4gc2xjdCBzaWcgIHNpZyAgZm9yayBleGVjIHNoDQorICAgICAgICAgICAg ICAgICAgY2FsbCBJL08gIHN0YXQgY2xvcyBUQ1AgIGluc3QgaG5kbCBwcm9j IHByb2MgcHJvYw0KKy0tLS0gLS0tLS0tLS0tLS0tIC0tLS0gLS0tLSAtLS0t IC0tLS0gLS0tLSAtLS0tIC0tLS0gLS0tLSAtLS0tIC0tLS0gLS0tDQorcG9y ayBMaW51eCAyLjQuMjIgNjUxICAwLjUzIDAuOTcgNi4yMCA4LjEwIDQxLjIg MS40NCA0LjMwIDI3Ni4gMTQ5NyA1NDAzDQorcG9yayBMaW51eCAyLjQuMjIg NjUxICAwLjUzIDAuOTUgNi4xNCA3LjkxIDM3LjggMS40MyA0LjM0IDI3NC4g MTQ4NiA1MzkxDQorcG9yayBMaW51eCAyLjQuMjIgNjUxICAwLjU2IDAuOTQg Ni4xOCA4LjA5IDQzLjQgMS40MSA0LjMwIDI1MS4gMTUwNyA1NDIzDQorcG9y ayBMaW51eCAyLjQuMjIgNjUxICAwLjUzIDAuOTQgNi4xMiA4LjA5IDQxLjAg MS40MyA0LjQwIDI1Ni4gMTQ5NyA1Mzg1DQorcG9yayBMaW51eCAyLjQuMjIg NjUxICAwLjU2IDAuOTQgNS43OSA3LjU4IDM5LjEgMS40MSA0LjMwIDI3MS4g MTMxOSA0NDYwDQorcG9yayBMaW51eCAyLjQuMjIgNjUxICAwLjU2IDAuOTIg NS43NiA3LjQwIDM4LjkgMS40MSA0LjMwIDI1My4gMTMwNCA0NDE3DQorcG9y ayBMaW51eCAyLjQuMjIgNjUxICAwLjU2IDAuOTUgNi4yMCA3LjgzIDM3Ljcg MS40MSA0LjM3IDI0OC4gMTMyMyA0NDgxDQorcG9yayBMaW51eCAyLjQuMjIg NjUxICAwLjU2IDEuMDEgNi4wNCA3Ljc3IDM3LjkgMS40MyA0LjMyIDI1Ni4g MTMyNCA0NDU3DQorDQorDQorbG1iZW5jaCByZXN1bHRzIHdpdGhvdXQgYW5k IHdpdGggcHJlbGlua2luZw0KK0JlbG93IGlzIGEgc2FtcGxlIHRpbWluZyBv ZiBhIDIzOUsgbG9uZyBjb25maWd1cmUgc2hlbGwgc2NyaXB0IGZyb20gR0ND IG9uDQorYm90aCB1bnByZWxpbmtlZCBhbmQgcHJlbGlua2VkIHN5c3RlbS4g UHJlcGFyYXRpb24gc3RlcCB3YXMgZm9sbG93aW5nOg0KKw0KKyAgJCBjZDsN CisgICQgY3ZzIC1kIDpwc2VydmVyOmFub25jdnNAc3VidmVyc2lvbnMuZ251 Lm9yZzovY3Zzcm9vdC9nY2MgbG9naW4NCisgICMgRW1wdHkgcGFzc3dvcmQN CisgICQgY3ZzIC1kIDpwc2VydmVyOmFub25jdnNAc3VidmVyc2lvbnMuZ251 Lm9yZzovY3Zzcm9vdC9nY2MgLXozIGNvIFwNCisgICAgLUQyMDAzMTEwMyBn Y2MNCisgICQgbWtkaXIgfi9nY2Mvb2JqDQorICAkIGNkIH4vZ2NjL29iajsN CisgICQgLi4vY29uZmlndXJlIGkzODYtcmVkaGF0LWxpbnV4OyBtYWtlIGNv bmZpZ3VyZS1nY2MNCisNCitQcmVwYXJhdGlvbiBzY3JpcHQgZm9yIHNoZWxs IHNjcmlwdCB0ZXN0cw0KK09uIGFuIHVucHJlbGlua2VkIHN5c3RlbSwgdGhl IHJlc3VsdHMgd2VyZToNCisNCisgICQgY2Qgfi9nY2Mvb2JqL2djYw0KKyAg JCBmb3IgaSBpbiAxIDI7IGRvIC4vY29uZmlnLnN0YXR1cyAtLXJlY2hlY2sg PiAvZGV2L251bGwgMj4mMTsgZG9uZQ0KKyAgJCBmb3IgaSBpbiAxIDIgMyA0 OyBkbyB0aW1lIC4vY29uZmlnLnN0YXR1cyAtLXJlY2hlY2sgPiAvZGV2L251 bGwgMj4mMTsgZG9uZQ0KKyAgcmVhbCAwbTQuNDM2cw0KKyAgdXNlciAwbTEu NzMwcw0KKyAgc3lzICAwbTEuMjYwcw0KKw0KKyAgcmVhbCAwbTQuNDA5cw0K KyAgdXNlciAwbTEuNjYwcw0KKyAgc3lzICAwbTEuMzQwcw0KKw0KKyAgcmVh bCAwbTQuNDMxcw0KKyAgdXNlciAwbTEuODEwcw0KKyAgc3lzICAwbTEuMzAw cw0KKw0KKyAgcmVhbCAwbTQuNDMycw0KKyAgdXNlciAwbTEuNjcwcw0KKyAg c3lzICAwbTEuMjEwcw0KKw0KK1NoZWxsIHNjcmlwdCB0ZXN0IHJlc3VsdHMg b24gdW5wcmVsaW5rZWQgc3lzdGVtDQorYW5kIG9uIGEgZnVsbHkgcHJlbGlu a2VkIHN5c3RlbToNCisNCisgICQgY2Qgfi9nY2Mvb2JqL2djYw0KKyAgJCBm b3IgaSBpbiAxIDI7IGRvIC4vY29uZmlnLnN0YXR1cyAtLXJlY2hlY2sgPiAv ZGV2L251bGwgMj4mMTsgZG9uZQ0KKyAgJCBmb3IgaSBpbiAxIDIgMyA0OyBk byB0aW1lIC4vY29uZmlnLnN0YXR1cyAtLXJlY2hlY2sgPiAvZGV2L251bGwg Mj4mMTsgZG9uZQ0KKw0KKyAgcmVhbCAwbTQuMTI2cw0KKyAgdXNlciAwbTEu NTkwcw0KKyAgc3lzICAwbTEuMjQwcw0KKw0KKyAgcmVhbCAwbTQuMTUxcw0K KyAgdXNlciAwbTEuNjIwcw0KKyAgc3lzICAwbTEuMjMwcw0KKw0KKyAgcmVh bCAwbTQuMTYxcw0KKyAgdXNlciAwbTEuNjAwcw0KKyAgc3lzICAwbTEuMTkw cw0KKw0KKyAgcmVhbCAwbTQuMTIycw0KKyAgdXNlciAwbTEuNTcwcw0KKyAg c3lzICAwbTEuMjMwcw0KKw0KK1NoZWxsIHNjcmlwdCB0ZXN0IHJlc3VsdHMg b24gcHJlbGlua2VkIHN5c3RlbQ0KKw0KK05vdyB0aW1pbmcgb2YgYSBmZXcg YmlnIEdVSSBwcm9ncmFtcy4gQWxsIHRpbWluZ3Mgd2VyZSBkb25lIHdpdGhv dXQgWCBzZXJ2ZXINCitydW5uaW5nIGFuZCB3aXRoIERJU1BMQVkgZW52aXJv bm1lbnQgdmFyaWFibGUgbm90IHNldCAoc28gdGhhdCB3aGVuIGNvbnRyb2wg aXMNCit0cmFuc2ZlcmVkIHRvIHRoZSBhcHBsaWNhdGlvbiwgaXQgdmVyeSBz b29uIGZpbmRzIG91dCB0aGVyZSBpcyBubyBYIHNlcnZlciBpdA0KK2NhbiB0 YWxrIHRvIGFuZCBiYWlsIG91dCkuIFRoZSBtZWFzdXJlbWVudHMgYXJlIGRv bmUgYnkgdGhlIGR5bmFtaWMgbGlua2VyIGluDQordGlja3Mgb24gYSA2NTFN SHogZHVhbCBQZW50aXVtIElJSSBtYWNoaW5lLCBpLmUuIHRpY2tzIGhhdmUg dG8gYmUgZGl2aWRlZCBieQ0KKzY1MTAwMDAwMCB0byBnZXQgdGltZXMgaW4g c2Vjb25kcy4NCisNCitFYWNoIGFwcGxpY2F0aW9uIGhhcyBiZWVuIHJ1biA0 IHRpbWVzIGFuZCB0aGUgcmVzdWx0cyB3aXRoIHNtYWxsZXN0IHRvdGFsIHRp bWUNCitzcGVudCBpbiB0aGUgZHluYW1pYyBsaW5rZXIgd2FzIGNob3Nlbi4N CisNCitFcGlwaGFueSBXV1cgYnJvd3NlciBhbmQgRXZvbHV0aW9uIG1haWwg Y2xpZW50IHdlcmUgY2hvc2VuIGFzIGV4YW1wbGVzIG9mIEd0aysNCithcHBs aWNhdGlvbnMgKHR5cGljYWxseSB0aGV5IHVzZSByZWFsbHkgbWFueSBzaGFy ZWQgbGlicmFyaWVzLCBidXQgbWFueSBvZg0KK3RoZW0gYXJlIHF1aXRlIHNt YWxsLCB0aGVyZSBhcmVu4oCZdCByZWFsbHkgbWFueSByZWxvY2F0aW9ucyBu b3IgY29uZmxpY3QgZml4dXBzDQorYW5kIG1vc3Qgb2YgdGhlIGxpYnJhcmll cyBhcmUgd3JpdHRlbiBpbiBDKSBhbmQgS29ucXVlcm9yIFdXVyBicm93c2Vy IGFuZA0KK0tXb3JkIHdvcmQgcHJvY2Vzc29yIHdlcmUgY2hvc2VuIGFzIGV4 YW1wbGVzIG9mIEtERSBhcHBsaWNhdGlvbnMgKHR5cGljYWxseQ0KK3RoZXkg dXNlIHNsaWdodGx5IGZld2VyIHNoYXJlZCBsaWJyYXJpZXMsIHRob3VnaCBz dGlsbCBhIGxvdCwgbW9zdCBvZiB0aGUNCitzaGFyZWQgbGlicmFyaWVzIGFy ZSB3cml0dGVuIGluIEMrKywgaGF2ZSBtYW55IHJlbG9jYXRpb25zIGFuZCBj YXVzZSBtYW55DQorY29uZmxpY3QgZml4dXBzLCBlc3BlY2lhbGx5IHdpdGhv dXQgQysrIGNvbmZsaWN0IGZpeHVwIG9wdGltaXphdGlvbnMgaW4NCitwcmVs aW5rKS4NCisNCitPbiBub24tcHJlbGlua2VkIHN5c3RlbSwgdGhlIHRpbWlu Z3MgYXJlIGRvbmUgd2l0aCBsYXp5IGJpbmRpbmcsIGkuZS4gd2l0aG91dA0K K0xEX0JJTkRfTk9XPTEgc2V0IGluIHRoZSBlbnZpcm9ubWVudC4gVGhpcyBp cyBiZWNhdXNlIHRoYXTigJlzIGhvdyBwZW9wbGUNCitnZW5lcmFsbHkgcnVu IHByb2dyYW1zLCBvbiB0aGUgb3RoZXIgc2lkZSBpdCBpcyBub3QgZXhhY3Qg YXBwbGVzIHRvIGFwcGxlcw0KK2NvbXBhcmlzb24sIHNpbmNlIG9uIHByZWxp bmtlZCBzeXN0ZW0gdGhlcmUgaXMgbm8gbGF6eSBiaW5kaW5nIHdpdGggdGhl DQorZXhjZXB0aW9uIG9mIHNoYXJlZCBsaWJyYXJpZXMgbG9hZGVkIHRocm91 Z2ggZGxvcGVuLg0KKw0KK1NvIHdoZW4gY29udHJvbCBpcyBwYXNzZWQgdG8g dGhlIGFwcGxpY2F0aW9uLCBwcmVsaW5rZWQgcHJvZ3JhbXMgc2hvdWxkIGJl DQorc2xpZ2h0bHkgZmFzdGVyIGZvciBhIHdoaWxlIHNpbmNlIG5vbi1wcmVs aW5rZWQgcHJvZ3JhbXMgd2lsbCBoYXZlIHRvIGRvDQorc3ltYm9sIGxvb2t1 cHMgYW5kIHByb2Nlc3NpbmcgcmVsb2NhdGlvbnMgKGFuZCBvbiB2YXJpb3Vz IGFyY2hpdGVjdHVyZXMNCitmbHVzaGluZyBpbnN0cnVjdGlvbiBjYWNoZXMp IHdoZW5ldmVyIHRoZXkgY2FsbCBzb21lIGZ1bmN0aW9uIHRoZXkgaGF2ZW7i gJl0DQorY2FsbGVkIGJlZm9yZSBpbiBwYXJ0aWN1bGFyIHNoYXJlZCBsaWJy YXJ5IG9yIGluIHRoZSBleGVjdXRhYmxlLg0KKw0KKyAgJCBsZGQg4oCYd2hp Y2ggZXBpcGhhbnktYmlu4oCYIHwgd2MgLWwNCisgIDY0DQorICAkICMgVW5w cmVsaW5rZWQgc3lzdGVtDQorICAkIExEX0RFQlVHPXN0YXRpc3RpY3MgZXBp cGhhbnktYmluIDI+JjEgfCBzZWQg4oCZcy9eICovL+KAmQ0KKyAgMTg5NjA6 IHJ1bnRpbWUgbGlua2VyIHN0YXRpc3RpY3M6DQorICAxODk2MDoNCisgIDE4 OTYwOiAgIHRvdGFsIHN0YXJ0dXAgdGltZSBpbiBkeW5hbWljIGxvYWRlcjog NjczMzY1OTMgY2xvY2sgY3ljbGVzDQorICAxODk2MDogICAgICAgICAgICAg dGltZSBuZWVkZWQgZm9yIHJlbG9jYXRpb246IDU4MTE5OTgzIGNsb2NrIGN5 Y2xlcyAoODYuMyUpDQorICAxODk2MDogICAgICAgICAgICAgICAgICBudW1i ZXIgb2YgcmVsb2NhdGlvbnM6IDY5OTkNCisgIDE4OTYwOiAgICAgICBudW1i ZXIgb2YgcmVsb2NhdGlvbnMgZnJvbSBjYWNoZTogNDc3MA0KKyAgMTg5NjA6 ICAgICAgICAgbnVtYmVyIG9mIHJlbGF0aXZlIHJlbG9jYXRpb25zOiAzMTQ5 NA0KKyAgMTg5NjA6ICAgICAgICAgICAgdGltZSBuZWVkZWQgdG8gbG9hZCBv YmplY3RzOiA4Njk2MTA0IGNsb2NrIGN5Y2xlcyAoMTIuOSUpDQorICAgIChl cGlwaGFueS1iaW46MTg5NjApOiBHdGstV0FSTklORyAqKjogY2Fubm90IG9w ZW4gZGlzcGxheToNCisgIDE4OTYwOiBydW50aW1lIGxpbmtlciBzdGF0aXN0 aWNzOiANCisgIDE4OTYwOiANCisgIDE4OTYwOiAgICAgICAgICAgIGZpbmFs IG51bWJlciBvZiByZWxvY2F0aW9uczogNzY5Mg0KKyAgMTg5NjA6IGZpbmFs IG51bWJlciBvZiByZWxvY2F0aW9ucyBmcm9tIGNhY2hlOiA0NzcwDQorDQor ICAkICMgUHJlbGlua2VkIHN5c3RlbQ0KKyAgJCBMRF9ERUJVRz1zdGF0aXN0 aWNzIGVwaXBoYW55LWJpbiAyPiYxIHwgc2VkIOKAmXMvXiAqLy/igJkNCisg IDI1Njk3OiBydW50aW1lIGxpbmtlciBzdGF0aXN0aWNzOg0KKyAgMjU2OTc6 IA0KKyAgMjU2OTc6ICAgdG90YWwgc3RhcnR1cCB0aW1lIGluIGR5bmFtaWMg bG9hZGVyOiA3MzEzNzIxIGNsb2NrIGN5Y2xlcw0KKyAgMjU2OTc6ICAgICAg ICAgICAgIHRpbWUgbmVlZGVkIGZvciByZWxvY2F0aW9uOiA1NjU2ODAgY2xv Y2sgY3ljbGVzICg3LjclKQ0KKyAgMjU2OTc6ICAgICAgICAgICAgICAgICAg bnVtYmVyIG9mIHJlbG9jYXRpb25zOiAwDQorICAyNTY5NzogICAgICAgbnVt YmVyIG9mIHJlbG9jYXRpb25zIGZyb20gY2FjaGU6IDEyMDUNCisgIDI1Njk3 OiAgICAgICAgIG51bWJlciBvZiByZWxhdGl2ZSByZWxvY2F0aW9uczogMA0K KyAgMjU2OTc6ICAgICAgICAgICAgdGltZSBuZWVkZWQgdG8gbG9hZCBvYmpl Y3RzOiA2MTc5NDY3IGNsb2NrIGN5Y2xlcyAoODQuNCUpDQorICAgIChlcGlw aGFueS1iaW46MjU2OTcpOiBHdGstV0FSTklORyAqKjogY2Fubm90IG9wZW4g ZGlzcGxheToNCisgIDI1Njk3OiBydW50aW1lIGxpbmtlciBzdGF0aXN0aWNz Og0KKyAgMjU2OTc6IA0KKyAgMjU2OTc6ICAgICAgICAgICAgZmluYWwgbnVt YmVyIG9mIHJlbG9jYXRpb25zOiAzMQ0KKyAgMjU2OTc6IGZpbmFsIG51bWJl ciBvZiByZWxvY2F0aW9ucyBmcm9tIGNhY2hlOiAxMjA1DQorDQorICAkIGxk ZCDigJh3aGljaCBldm9sdXRpb27igJggfCB3YyAtbA0KKyAgNjgNCisgICQg IyBVbnByZWxpbmtlZCBzeXN0ZW0NCisgICQgTERfREVCVUc9c3RhdGlzdGlj cyBldm9sdXRpb24gMj4mMSB8IHNlZCDigJlzL14gKi8v4oCZDQorMTkwNDI6 IHJ1bnRpbWUgbGlua2VyIHN0YXRpc3RpY3M6DQorMTkwNDI6IA0KKzE5MDQy OiAgIHRvdGFsIHN0YXJ0dXAgdGltZSBpbiBkeW5hbWljIGxvYWRlcjogNTQz ODIxMjIgY2xvY2sgY3ljbGVzDQorMTkwNDI6ICAgICAgICAgICAgIHRpbWUg bmVlZGVkIGZvciByZWxvY2F0aW9uOiA0MzQwMzE5MCBjbG9jayBjeWNsZXMg KDc5LjglKQ0KKzE5MDQyOiAgICAgICAgICAgICAgICAgIG51bWJlciBvZiBy ZWxvY2F0aW9uczogMzQ1Mg0KKzE5MDQyOiAgICAgICBudW1iZXIgb2YgcmVs b2NhdGlvbnMgZnJvbSBjYWNoZTogMjg4NQ0KKzE5MDQyOiAgICAgICAgIG51 bWJlciBvZiByZWxhdGl2ZSByZWxvY2F0aW9uczogMzQ5NTcNCisxOTA0Mjog ICAgICAgICAgICB0aW1lIG5lZWRlZCB0byBsb2FkIG9iamVjdHM6IDEwNDUw MTQyIGNsb2NrIGN5Y2xlcyAoMTkuMiUpDQorKGV2b2x1dGlvbjoxOTA0Mik6 IEd0ay1XQVJOSU5HICoqOiBjYW5ub3Qgb3BlbiBkaXNwbGF5Og0KKzE5MDQy OiBydW50aW1lIGxpbmtlciBzdGF0aXN0aWNzOg0KKzE5MDQyOiANCisxOTA0 MjogICAgICAgICAgICBmaW5hbCBudW1iZXIgb2YgcmVsb2NhdGlvbnM6IDQw NzUNCisxOTA0MjogZmluYWwgbnVtYmVyIG9mIHJlbG9jYXRpb25zIGZyb20g Y2FjaGU6IDI4ODUNCisNCisgICQgIyBQcmVsaW5rZWQgc3lzdGVtDQorICAk IExEX0RFQlVHPXN0YXRpc3RpY3MgZXZvbHV0aW9uIDI+JjEgfCBzZWQg4oCZ cy9eICovL+KAmQ0KKzI1NzIzOiBydW50aW1lIGxpbmtlciBzdGF0aXN0aWNz Og0KKzI1NzIzOiANCisyNTcyMzogICB0b3RhbCBzdGFydHVwIHRpbWUgaW4g ZHluYW1pYyBsb2FkZXI6IDkxNzYxNDAgY2xvY2sgY3ljbGVzDQorMjU3MjM6 ICAgICAgICAgICAgIHRpbWUgbmVlZGVkIGZvciByZWxvY2F0aW9uOiAyMDM3 ODMgY2xvY2sgY3ljbGVzICgyLjIlKQ0KKzI1NzIzOiAgICAgICAgICAgICAg ICAgIG51bWJlciBvZiByZWxvY2F0aW9uczogMA0KKzI1NzIzOiAgICAgICBu dW1iZXIgb2YgcmVsb2NhdGlvbnMgZnJvbSBjYWNoZTogNTI1DQorMjU3MjM6 ICAgICAgICAgbnVtYmVyIG9mIHJlbGF0aXZlIHJlbG9jYXRpb25zOiAwDQor MjU3MjM6ICAgICAgICAgICAgdGltZSBuZWVkZWQgdG8gbG9hZCBvYmplY3Rz OiA4NDA1MTU3IGNsb2NrIGN5Y2xlcyAoOTEuNSUpDQorKGV2b2x1dGlvbjoy NTcyMyk6IEd0ay1XQVJOSU5HICoqOiBjYW5ub3Qgb3BlbiBkaXNwbGF5Og0K KzI1NzIzOiBydW50aW1lIGxpbmtlciBzdGF0aXN0aWNzOg0KKzI1NzIzOiAN CisyNTcyMzogICAgICAgICAgICBmaW5hbCBudW1iZXIgb2YgcmVsb2NhdGlv bnM6IDMxDQorMjU3MjM6IGZpbmFsIG51bWJlciBvZiByZWxvY2F0aW9ucyBm cm9tIGNhY2hlOiA1MjUNCisNCisgICQgbGRkIOKAmHdoaWNoIGtvbnF1ZXJv cuKAmCB8IHdjIC1sDQorICAzNw0KKyAgJCAjIFVucHJlbGlua2VkIHN5c3Rl bQ0KKyAgJCBMRF9ERUJVRz1zdGF0aXN0aWNzIGtvbnF1ZXJvciAyPiYxIHwg c2VkIOKAmXMvXiAqLy/igJkNCisxODk3OTogcnVudGltZSBsaW5rZXIgc3Rh dGlzdGljczoNCisxODk3OTogDQorMTg5Nzk6ICAgdG90YWwgc3RhcnR1cCB0 aW1lIGluIGR5bmFtaWMgbG9hZGVyOiAxMzE5ODU3MDMgY2xvY2sgY3ljbGVz DQorMTg5Nzk6ICAgICAgICAgICAgIHRpbWUgbmVlZGVkIGZvciByZWxvY2F0 aW9uOiAxMjczNDEwNzcgY2xvY2sgY3ljbGVzICg5Ni40JSkNCisxODk3OTog ICAgICAgICAgICAgICAgICBudW1iZXIgb2YgcmVsb2NhdGlvbnM6IDI1NDcz DQorMTg5Nzk6ICAgICAgIG51bWJlciBvZiByZWxvY2F0aW9ucyBmcm9tIGNh Y2hlOiA1MzU5NA0KKzE4OTc5OiAgICAgICAgIG51bWJlciBvZiByZWxhdGl2 ZSByZWxvY2F0aW9uczogMzExNzENCisxODk3OTogICAgICAgICAgICB0aW1l IG5lZWRlZCB0byBsb2FkIG9iamVjdHM6IDQzMTg4MDMgY2xvY2sgY3ljbGVz ICgzLjIlKQ0KK2tvbnF1ZXJvcjogY2Fubm90IGNvbm5lY3QgdG8gWCBzZXJ2 ZXINCisxODk3OTogcnVudGltZSBsaW5rZXIgc3RhdGlzdGljczoNCisxODk3 OTogDQorMTg5Nzk6ICAgICAgICAgICAgZmluYWwgbnVtYmVyIG9mIHJlbG9j YXRpb25zOiAyNTc1OQ0KKzE4OTc5OiBmaW5hbCBudW1iZXIgb2YgcmVsb2Nh dGlvbnMgZnJvbSBjYWNoZTogNTM1OTQNCisNCisgICQgIyBQcmVsaW5rZWQg c3lzdGVtDQorICAkIExEX0RFQlVHPXN0YXRpc3RpY3Mga29ucXVlcm9yIDI+ JjEgfCBzZWQg4oCZcy9eICovL+KAmQ0KKzI1NzMzOiBydW50aW1lIGxpbmtl ciBzdGF0aXN0aWNzOg0KKzI1NzMzOiANCisyNTczMzogICB0b3RhbCBzdGFy dHVwIHRpbWUgaW4gZHluYW1pYyBsb2FkZXI6IDU1MzM2OTYgY2xvY2sgY3lj bGVzDQorMjU3MzM6ICAgICAgICAgICAgIHRpbWUgbmVlZGVkIGZvciByZWxv Y2F0aW9uOiAxOTQxNDg5IGNsb2NrIGN5Y2xlcyAoMzUuMCUpDQorMjU3MzM6 ICAgICAgICAgICAgICAgICAgbnVtYmVyIG9mIHJlbG9jYXRpb25zOiAwDQor MjU3MzM6ICAgICAgIG51bWJlciBvZiByZWxvY2F0aW9ucyBmcm9tIGNhY2hl OiAyMDY2DQorMjU3MzM6ICAgICAgICAgbnVtYmVyIG9mIHJlbGF0aXZlIHJl bG9jYXRpb25zOiAwDQorMjU3MzM6ICAgICAgICAgICAgdGltZSBuZWVkZWQg dG8gbG9hZCBvYmplY3RzOiAzMjE3NzM2IGNsb2NrIGN5Y2xlcyAoNTguMSUp DQora29ucXVlcm9yOiBjYW5ub3QgY29ubmVjdCB0byBYIHNlcnZlcg0KKzI1 NzMzOiBydW50aW1lIGxpbmtlciBzdGF0aXN0aWNzOg0KKzI1NzMzOiANCisy NTczMzogICAgICAgICAgICBmaW5hbCBudW1iZXIgb2YgcmVsb2NhdGlvbnM6 IDANCisyNTczMzogZmluYWwgbnVtYmVyIG9mIHJlbG9jYXRpb25zIGZyb20g Y2FjaGU6IDIwNjYNCisNCisgICQgbGRkIOKAmHdoaWNoIGt3b3Jk4oCYIHwg d2MgLWwNCisgIDQwDQorICAkICMgVW5wcmVsaW5rZWQgc3lzdGVtDQorICAk IExEX0RFQlVHPXN0YXRpc3RpY3Mga3dvcmQgMj4mMSB8IHNlZCDigJlzL14g Ki8v4oCZDQorMTkwNjU6IHJ1bnRpbWUgbGlua2VyIHN0YXRpc3RpY3M6DQor MTkwNjU6IA0KKzE5MDY1OiAgIHRvdGFsIHN0YXJ0dXAgdGltZSBpbiBkeW5h bWljIGxvYWRlcjogMTUzNjg0NTkxIGNsb2NrIGN5Y2xlcw0KKzE5MDY1OiAg ICAgICAgICAgICB0aW1lIG5lZWRlZCBmb3IgcmVsb2NhdGlvbjogMTQ4MjU1 Mjk0IGNsb2NrIGN5Y2xlcyAoOTYuNCUpDQorMTkwNjU6ICAgICAgICAgICAg ICAgICAgbnVtYmVyIG9mIHJlbG9jYXRpb25zOiAyNjIzMQ0KKzE5MDY1OiAg ICAgICBudW1iZXIgb2YgcmVsb2NhdGlvbnMgZnJvbSBjYWNoZTogNTU4MzMN CisxOTA2NTogICAgICAgICBudW1iZXIgb2YgcmVsYXRpdmUgcmVsb2NhdGlv bnM6IDMwNjYwDQorMTkwNjU6ICAgICAgICAgICAgdGltZSBuZWVkZWQgdG8g bG9hZCBvYmplY3RzOiA1MDY4NzQ2IGNsb2NrIGN5Y2xlcyAoMy4yJSkNCitr d29yZDogY2Fubm90IGNvbm5lY3QgdG8gWCBzZXJ2ZXINCisxOTA2NTogcnVu dGltZSBsaW5rZXIgc3RhdGlzdGljczoNCisxOTA2NTogDQorMTkwNjU6ICAg ICAgICAgICAgZmluYWwgbnVtYmVyIG9mIHJlbG9jYXRpb25zOiAyNjUyOA0K KzE5MDY1OiBmaW5hbCBudW1iZXIgb2YgcmVsb2NhdGlvbnMgZnJvbSBjYWNo ZTogNTU4MzMNCisNCisgICQgIyBQcmVsaW5rZWQgc3lzdGVtDQorICAkIExE X0RFQlVHPXN0YXRpc3RpY3Mga3dvcmQgMj4mMSB8IHNlZCDigJlzL14gKi8v 4oCZDQorMjU3NDk6IHJ1bnRpbWUgbGlua2VyIHN0YXRpc3RpY3M6DQorMjU3 NDk6IA0KKzI1NzQ5OiAgIHRvdGFsIHN0YXJ0dXAgdGltZSBpbiBkeW5hbWlj IGxvYWRlcjogNjUxNjYzNSBjbG9jayBjeWNsZXMNCisyNTc0OTogICAgICAg ICAgICAgdGltZSBuZWVkZWQgZm9yIHJlbG9jYXRpb246IDIxMDY4NTYgY2xv Y2sgY3ljbGVzICgzMi4zJSkNCisyNTc0OTogICAgICAgICAgICAgICAgICBu dW1iZXIgb2YgcmVsb2NhdGlvbnM6IDANCisyNTc0OTogICAgICAgbnVtYmVy IG9mIHJlbG9jYXRpb25zIGZyb20gY2FjaGU6IDIxMzANCisyNTc0OTogICAg ICAgICBudW1iZXIgb2YgcmVsYXRpdmUgcmVsb2NhdGlvbnM6IDANCisyNTc0 OTogICAgICAgICAgICB0aW1lIG5lZWRlZCB0byBsb2FkIG9iamVjdHM6IDQw MDg1ODUgY2xvY2sgY3ljbGVzICg2MS41JSkNCitrd29yZDogY2Fubm90IGNv bm5lY3QgdG8gWCBzZXJ2ZXINCisyNTc0OTogcnVudGltZSBsaW5rZXIgc3Rh dGlzdGljczoNCisyNTc0OTogDQorMjU3NDk6ICAgICAgICAgICAgZmluYWwg bnVtYmVyIG9mIHJlbG9jYXRpb25zOiAwDQorMjU3NDk6IGZpbmFsIG51bWJl ciBvZiByZWxvY2F0aW9ucyBmcm9tIGNhY2hlOiAyMTMwDQorDQorDQorRHlu YW1pYyBsaW5rZXIgc3RhdGlzdGljcyBmb3IgdW5wcmVsaW5rZWQgYW5kIHBy ZWxpbmtlZCBHVUkgcHJvZ3JhbXMgSW4gdGhlDQorY2FzZSBvZiBhYm92ZSBt ZW50aW9uZWQgR3RrKyBhcHBsaWNhdGlvbnMsIHRoZSBvcmlnaW5hbCBzdGFy dHVwIHRpbWUgc3BlbnQgaW4NCit0aGUgZHluYW1pYyBsaW5rZXIgZGVjcmVh c2VkIGludG8gMTElIHRvIDE3JSBvZiB0aGUgb3JpZ2luYWwgdGltZXMsIHdp dGggS0RFDQorYXBwbGljYXRpb25zIGl0IGRlY3JlYXNlZCBldmVuIGludG8g YXJvdW5kIDQuMiUgb2Ygb3JpZ2luYWwgdGltZXMuDQorDQorVGhlIHN0YXJ0 dXAgdGltZSByZXBvcnRlZCBieSB0aGUgZHluYW1pYyBsaW5rZXIgaXMgb25s eSBwYXJ0IG9mIHRoZSB0b3RhbA0KK3N0YXJ0dXAgdGltZSBvZiBhIEdVSSBw cm9ncmFtLiBVbmZvcnR1bmF0ZWx5IGl0IGNhbm5vdCBiZSBtZWFzdXJlZCB2 ZXJ5DQorYWNjdXJhdGVseSB3aXRob3V0IHBhdGNoaW5nIGVhY2ggYXBwbGlj YXRpb24gc2VwYXJhdGVseSwgc28gdGhhdCBpdCB3b3VsZA0KK3ByaW50IGN1 cnJlbnQgcHJvY2VzcyBDUFUgdGltZSBhdCB0aGUgcG9pbnQgd2hlbiBhbGwg d2luZG93cyBhcmUgcGFpbnRlZCBhbmQNCit0aGUgcHJvY2VzcyBzdGFydHMg d2FpdGluZyBmb3IgdXNlciBpbnB1dC4NCisNCitUaGUgZm9sbG93aW5nIHRh YmxlIGNvbnRhaW5zIHZhbHVlcyByZXBvcnRlZCBieSB0aW1lKDEpIGNvbW1h bmQgb24gZWFjaCBvZiB0aGUNCis0IEdVSSBwcm9ncmFtcyBydW5uaW5nIHVu ZGVyIFgsIGJvdGggb24gdW5wcmVsaW5rZWQgYW5kIGZ1bGx5IHByZWxpbmtl ZA0KK3N5c3RlbS4NCisNCitBcyBzb29uIGFzIGVhY2ggcHJvZ3JhbSBwYWlu dGVkIGl0cyB3aW5kb3dzLCBpdCB3YXMga2lsbGVkIGJ5IGFwcGxpY2F0aW9u 4oCZcw0KK3F1aXQgaG90IGtleS4NCisNCitbIEN0cmwrVyBmb3IgRXBpcGhh bnksIEN0cmwrUSBmb3IgRXZvbHV0aW9uIGFuZCBLb25xdWVyb3IgYW5kIEVu dGVyIGluDQorICBLd29yZOKAmXMgZG9jdW1lbnQgdHlwZSBjaG9pY2UgZGlh bG9nLiBdDQorDQorRXNwZWNpYWxseSB0aGUgcmVhbCB0aW1lIHZhbHVlcyBk ZXBlbmQgYWxzbyBvbiB0aGUgc3BlZWQgb2YgaHVtYW4NCityZWFjdGlvbnMs IHNvIGVhY2ggbWVhc3VyZW1lbnQgd2FzIHJlcGVhdGVkIDEwIHRpbWVzLiBB bGwgdGltaW5ncyB3ZXJlDQorZG9uZSB3aXRoIGhvdCBjYWNoZXMsIGFmdGVy IHJ1bm5pbmcgdGhlIGFwcGxpY2F0aW9ucyB0d28gdGltZXMgYmVmb3JlDQor bWVhc3VyZW1lbnQuDQorDQorICAgIFRhYmxlIDE6IEdVSSBwcm9ncmFtIHN0 YXJ0IHVwIHRpbWVzIHdpdGhvdXQgYW5kIHdpdGggcHJlbGlua2luZw0KKw0K K1R5cGUgfCBWYWx1ZXMgKGluIHNlY29uZHMpICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfE1lYW4gfCBzdGQgIA0KKyAgICAgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgICAgfCBkZXYNCistLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLSstLS0tLS0NCit1bnByZWxpbmtlZCBlcGlwaGFueSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgwrUgICB8 IHMgIA0KKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tKy0tLS0tLQ0KK3Jl YWwgfDMuMDUzIHwyLjg0IHwzLjAwfDIuOTAxfDMuMDE5fDIuOTI5fDIuODgz fDIuOTc1fDIuOTIyfDMuMDI2fDIuOTU0fDAuMDY5OA0KK3VzZXIgfDIuMzMg IHwyLjMxIHwyLjI4fDIuMzIgfDIuNDQgfDIuMzcgfDIuMjkgfDIuMzUgfDIu MzQgfDIuNDEgfDIuMzQ0fDAuMDUwOA0KK3N5cyAgfDAuMiAgIHwwLjIzIHww LjIzfDAuMTkgfDAuMTkgfDAuMTIgfDAuMjUgfDAuMTYgfDAuMTQgfDAuMTQg fDAuMTg1fDAuMDQ0MA0KKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tKy0t LS0tLQ0KK3ByZWxpbmtlZCBlcGlwaGFueSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCDCtSAgIHwgcyAgDQorLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0tLS0tDQorcmVhbCB8Mi43NzN8 Mi43NDN8Mi44MzN8Mi43NTN8Mi43NTN8Mi42NDR8Mi43MTd8Mi44OTd8Mi42 OCB8Mi43NjF8Mi43NTV8MC4wNzE2DQordXNlciB8Mi4xOCB8Mi4xNyB8Mi4x NyB8Mi4xMiB8Mi4yMyB8Mi4yNiB8Mi4xMyB8Mi4xNyB8Mi4xNSB8Mi4xNSB8 Mi4xNzN8MC4wNDMwDQorc3lzICB8MC4xMyB8MC4xNSB8MC4xOCB8MC4xNSB8 MC4xMSB8MC4wNCB8MC4xOCB8MC4xNCB8MC4xICB8MC4xNSB8MC4xMzN8MC4w NDE2DQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0tLS0tDQordW5w cmVsaW5rZWQgZXZvbHV0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8IMK1ICAgfCBzICANCistLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLSstLS0tLS0NCityZWFsIHwyLjEwNnwxLjg4NnwxLjgy OHwyLjEyIHwxLjg2N3wxLjg3MXwyLjI0MnwxLjg3MXwxLjg2MnwyLjI0MXwx Ljk4OXwwLjE2NzkNCit1c2VyIHwxLjEyIHwxLjA5IHwxLjE1IHwxLjE5IHwx LjE3IHwxLjIzIHwxLjE1IHwxLjExIHwxLjE3IHwxLjE0IHwxLjE1MnwwLjA0 MDgNCitzeXMgIHwwLjEgIHwwLjExIHwwLjEzIHwwLjA3IHwwLjEgIHwwLjA1 IHwwLjExIHwwLjExIHwwLjA5IHwwLjA4IHwwLjA5NXwwLjAyMzINCistLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLSstLS0tLS0NCitwcmVsaW5rZWQgZXZv bHV0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8IMK1ICAgfCBzICANCistLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLSstLS0tLS0NCityZWFsIHwxLjY4NHwxLjYyMXwxLjY4NnwxLjcyIHwx LjY5NHwxLjY5MXwxLjYzMXwxLjY5N3wxLjY2OHwxLjUzNXwxLjY2M3wwLjA1 NDENCit1c2VyIHwwLjkyIHwwLjg3IHwwLjkyIHwwLjk1IHwwLjc5IHwwLjg2 IHwwLjk0IHwwLjg3IHwwLjg5IHwwLjg2IHwwLjg4N3wwLjA0NzYNCitzeXMg IHwwLjA2IHwwLjEgIHwwLjA2IHwwLjA1IHwwLjExIHwwLjA4IHwwLjA3IHww LjEgIHwwLjEyIHwwLjA3IHwwLjA4MnwwLjAyMzkNCistLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLSstLS0tLS0NCit1bnByZWxpbmtlZCBrd29yZCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg wrUgICB8IHMgIA0KKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tKy0tLS0t LQ0KK3JlYWwgfDIuMTExfDEuNDE0fDEuMzYgfDEuMzU2fDEuMjU5fDEuMzgz fDEuMjggfDEuMzIxfDEuMjUyfDEuNDA3fDEuNDE0fDAuMjUxNw0KK3VzZXIg fDEuMDQgfDAuOSAgfDAuOTMgfDAuODggfDAuODkgfDAuODkgfDAuODcgfDAu ODkgfDAuOSAgfDAuOCAgfDAuODk5fDAuMDU5Nw0KK3N5cyAgfDAuMDcgfDAu MDQgfDAuMDYgfDAuMDUgfDAuMDYgfDAuMSAgfDAuMDkgfDAuMDggfDAuMDgg fDAuMTIgfDAuMDc1fDAuMDI0Mg0KKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tKy0tLS0tLQ0KK3ByZWxpbmtlZCBrd29yZCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCDCtSAgIHwgcyAg DQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0tLS0tDQorcmVhbCB8 MS41OSB8MS4wNTJ8MC45NzJ8MS4wNjR8MS4xMDZ8MS4wODd8MS4wNjZ8MS4w ODd8MS4wNjV8MS4wMDV8MS4xMDl8MC4xNzM1DQordXNlciB8MC42MSB8MC41 MyB8MC41OCB8MC42ICB8MC42ICB8MC41OCB8MC41OSB8MC42MSB8MC41NyB8 MC42ICB8MC41ODd8MC4wMjQxDQorc3lzICB8MC4wOCB8MC4wOCB8MC4wNiB8 MC4wNiB8MC4wMyB8MC4wNyB8MC4wNiB8MC4wMyB8MC4wNiB8MC4wNCB8MC4w NTd8MC4wMTgzDQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0tLS0t DQordW5wcmVsaW5rZWQga29ucXVlcm9yICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8IMK1ICAgfCBzICANCistLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLSstLS0tLS0NCityZWFsIHwxLjMwNnwxLjM4 NnwxLjI3IHwxLjI0M3wxLjIyN3wxLjI4NnwxLjI2MnwxLjMyMnwxLjM0NXwx LjMzMnwxLjI5OHwwLjA0OTUNCit1c2VyIHwwLjg4IHwwLjg2IHwwLjg4IHww LjkgIHwwLjg3IHwwLjgzIHwwLjgzIHwwLjg2IHwwLjg2IHwwLjg5IHwwLjg2 NnwwLjAyMzINCitzeXMgIHwwLjA3IHwwLjExIHwwLjEyIHwwLjEgIHwwLjEy IHwwLjA4IHwwLjEzIHwwLjEyIHwwLjA5IHwwLjA4IHwwLjEwMnwwLjAyMTAN CistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLSstLS0tLS0NCitwcmVsaW5r ZWQga29ucXVlcm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgwrUgICB8IHMgIA0KKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tKy0tLS0tLQ0KK3JlYWwgfDEuMDU2fDAuOTYyfDAuOTYxfDAu OTA2fDAuOTI3fDAuOTIzfDAuOTMzfDAuOTU4fDAuOTU1fDEuMTQyfDAuOTcy fDAuMDcyMg0KK3VzZXIgfDAuNTYgfDAuNiAgfDAuNTYgfDAuNTIgfDAuNTcg fDAuNTggfDAuNSAgfDAuNTcgfDAuNjEgfDAuNTUgfDAuNTYyfDAuMDMzNA0K K3N5cyAgfDAuMSAgfDAuMTMgfDAuMDggfDAuMTUgfDAuMDcgfDAuMDkgfDAu MDkgfDAuMDkgfDAuMSAgfDAuMDggfDAuMDk4fDAuMDI0NA0KKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tKy0tLS0tLQ0KKw0KK09wZW5PZmZpY2Uub3Jn IGlzIHByb2JhYmx5IHRoZSBsYXJnZXN0IHByb2dyYW0gdGhlc2UgZGF5cyBp biBMaW51eCwNCittb3N0bHkgd3JpdHRlbiBpbiBDKysuIEluIE9wZW5PZmZp Y2Uub3JnIDEuMSwgdGhlIG1haW4gZXhlY3V0YWJsZSwNCitzb2ZmaWNlLmJp biwgbGlua3MgZGlyZWN0bHkgYWdhaW5zdCAzNCBzaGFyZWQgbGlicmFyaWVz LCBidXQgdHlwaWNhbGx5DQorZHVyaW5nIHN0YXJ0dXAgaXQgbG9hZHMgdXNp bmcgZGxvcGVuIG1hbnkgb3RoZXJzLiBBcyBoYXMgYmVlbg0KK21lbnRpb25l ZCBlYXJsaWVyLCBwcmVsaW5rIGNhbm5vdCBzcGVlZCB1cCBsb2FkaW5nIHNo YXJlZCBsaWJyYXJpZXMNCit1c2luZyBkbG9wZW4sIHNpbmNlIGl0IGNhbm5v dCBwcmVkaWN0IGluIHdoaWNoIG9yZGVyIGFuZCB3aGF0IHNoYXJlZA0KK2xp YnJhcmllcyB3aWxsIGJlIGxvYWRlZCAoYW5kIHRodXMgY2Fubm90IGNvbXB1 dGUgY29uZmxpY3QgZml4dXBzKS4NCisNCitUaGUgc29mZmljZS5iaW4gaXMg dHlwaWNhbGx5IHN0YXJ0ZWQgdGhyb3VnaCBhIHdyYXBwZXIgc2NyaXB0IGFu ZA0KK2RlcGVuZGluZyBvbiB3aGF0IGFyZ3VtZW50cyBhcmUgcGFzc2VkIHRv IGl0LCBkaWZmZXJlbnQgT3Blbk9mZmljZS5vcmcNCithcHBsaWNhdGlvbiBp cyBzdGFydGVkLiBXaXRoIG5vIG9wdGlvbnMsIGl0IHN0YXJ0cyBqdXN0IGVt cHR5IHdpbmRvdw0KK3dpdGggbWVudSBmcm9tIHdoaWNoIHRoZSBhcHBsaWNh dGlvbnMgY2FuIGJlIHN0YXJ0ZWQsIHdpdGggc2F5DQorcHJpdmF0ZTpmYWN0 b3J5L3N3cml0ZXIgYXJndW1lbnQgaXQgc3RhcnRzIGEgd29yZCBwcm9jZXNz b3IsIHdpdGgNCitwcml2YXRlOmZhY3Rvcnkvc2NhbGMgaXQgc3RhcnRzIGEg c3ByZWFkc2hlZXQgZXRjLiBXaGVuIHNvZmZpY2UuYmluIGlzDQorYWxyZWFk eSBydW5uaW5nLCBpZiB5b3Ugc3RhcnQgYW5vdGhlciBjb3B5IG9mIGl0LCBp dCBqdXN0IGluc3RydWN0cw0KK3RoZSBhbHJlYWR5IHJ1bm5pbmcgY29weSB0 byBwb3AgdXAgYSBuZXcgd2luZG93IGFuZCBleGl0cy4NCisNCitJbiBhbiBl eHBlcmltZW50LCBzb2ZmaWNlLmJpbiBoYXMgYmVlbiBpbnZva2VkIDcgdGlt ZXMgYWdhaW5zdCBydW5uaW5nDQorWCBzZXJ2ZXIgd2l0aDoNCisgIG5vIGFy Z3VtZW50cywNCisgIHByaXZhdGU6ZmFjdG9yeS9zd3JpdGVyLA0KKyAgcHJp dmF0ZTpmYWN0b3J5L3NjYWxjLA0KKyAgcHJpdmF0ZTpmYWN0b3J5L3NkcmF3 LA0KKyAgcHJpdmF0ZTpmYWN0b3J5L3NpbXByZXNzLA0KKyAgYW5kIHByaXZh dGU6ZmFjdG9yeS9zbWF0aA0KK2FyZ3VtZW50cyAoaW4gYWxsIHRoZXNlIGNh c2VzIG5vdGhpbmcgd2FzIHByZXNzZWQgYXQgYWxsKSBhbmQgbGFzdA0KK3dp dGggdGhlIHByaXZhdGU6ZmFjdG9yeS9zd3JpdGVyIGFyZ3VtZW50IHdoZXJl IHRoZSBtZW51IGl0ZW0gTmV3DQorUHJlc2VudGF0aW9uIHdhcyBzZWxlY3Rl ZCBhbmQgdGhlIHdvcmQgcHJvY2Vzc29yIHdpbmRvdyBjbG9zZWQuDQorDQor SW4gYWxsIHRoZXNlIGNhc2VzLCAvcHJvYy/igJhwaWRvZiBzb2ZmaWNlLmJp buKAmC9tYXBzIGZpbGUgd2FzIGNhcHR1cmVkDQorYW5kIHRoZSBhcHBsaWNh dGlvbiB0aGVuIGtpbGxlZC4gVGhpcyBmaWxlIGNvbnRhaW5zIGFtb25nIG90 aGVyIHRoaW5ncw0KK2xpc3Qgb2YgYWxsIHNoYXJlZCBsaWJyYXJpZXMgbW1h cHBlZCBieSB0aGUgcHJvY2VzcyBhdCB0aGUgcG9pbnQgd2hlcmUNCitpdCBz dGFydGVkIHdhaXRpbmcgZm9yIHVzZXIgaW5wdXQgYWZ0ZXIgbG9hZGluZyB1 cC4gVGhlc2UgbGlzdHMgd2VyZQ0KK3RoZW4gc3VtbWFyaXplZCwgdG8gZ2V0 IG51bWJlciBvZiB0aGUgcnVucyBpbiB3aGljaCBwYXJ0aWN1bGFyIHNoYXJl ZA0KK2xpYnJhcnkgd2FzIGxvYWRlZCB1cCBvdXQgb2YgdGhlIHRvdGFsIDcg cnVucy4NCisNCitUaGVyZSB3ZXJlIDM4IHNoYXJlZCBsaWJyYXJpZXMgc2hp cHBlZCBhcyBwYXJ0IG9mIE9wZW5PZmZpY2Uub3JnDQorcGFja2FnZSB3aGlj aCBoYXZlIGJlZW4gbG9hZGVkIGluIGFsbCA3IHRpbWVzLCBhbm90aGVyIDMg c2hhcmVkDQorbGlicmFyaWVzIGluY2x1ZGVkIGluIE9wZW5PZmZpY2Uub3Jn IChhbmQgYWxzbyBvbmUgc2hhcmVkIGxpYnJhcnkNCitzaGlwcGVkIGluIGFu b3RoZXIgcGFja2FnZSwgbGliZGJfY3h4LTQuMS5zbykgd2hpY2ggd2VyZSBs b2FkZWQgNg0KK3RpbWVzLg0KKw0KK1sgSW4gYWxsIHJ1bnMgYnV0IHdoZW4g cmFuIHdpdGhvdXQgYXJndW1lbnRzLiBCdXQgd2hlbiB0aGUgYXBwbGljYXRp b24NCisgIGlzIHN0YXJ0ZWQgd2l0aG91dCBhbnkgYXJndW1lbnRzLCBpdCBj YW5ub3QgZG8gYW55IHVzZWZ1bCB3b3JrLCBzbw0KKyAgb25lIGxvYWRzIG9u ZSBvZiB0aGUgYXBwbGljYXRpb25zIGFmdGVyd2FyZCAgYW55d2F5LiBdDQor DQorVGhlcmUgd2FzIG9uZSBzaGFyZWQgbGlicmFyeSBsb2FkZWQgaW4gNSBy dW5zLCBidXQgd2FzIGxvY2FsZSBzcGVjaWZpYw0KK2FuZCB0aHVzIG5vdCB3 b3J0aCBjb25zaWRlcmluZy4gSW5zcGVjdGluZyBPcGVuT2ZmaWNlLm9yZyBz b3VyY2UsDQordGhlc2Ugc2hhcmVkIGxpYnJhcmllcyBhcmUgbmV2ZXIgdW5s b2FkZWQgd2l0aCBkbGNsb3NlLCBzbyBzb2ZmaWNlLmJpbg0KK2NhbiBiZSBt YWRlIG11Y2ggbW9yZSBwcmVsaW5rIGZyaWVuZGx5IGFuZCB0aHVzIHNhdmUg c3Vic3RhbnRpYWwNCithbW91bnQgb2Ygc3RhcnR1cCB0aW1lIGJ5IGxpbmtp bmcgYWdhaW5zdCBhbGwgdGhvc2UgNzYgc2hhcmVkDQorbGlicmFyaWVzIGlu c3RlYWQgb2YganVzdCAzNCBzaGFyZWQgbGlicmFyaWVzIGl0IGlzIGxpbmtl ZCBhZ2FpbnN0Lg0KKw0KK0luIHRoZSB0aW1pbmdzIGJlbG93LCBzb2ZmaWNl MS5iaW4gaXMgdGhlIG9yaWdpbmFsIHNvZmZpY2UuYmluIGFzDQorY3JlYXRl ZCBieSB0aGUgT3Blbk9mZmljZS5vcmcgbWFrZWZpbGVzIGFuZCBzb2ZmaWNl My5iaW4gaXMgdGhlIHNhbWUNCitleGVjdXRhYmxlIGxpbmtlZCBkeW5hbWlj YWxseSBhZ2FpbnN0IGFkZGl0aW9uYWwgNDIgc2hhcmVkIGxpYnJhcmllcy4N CitUaGUgb3JkZXJpbmcgb2YgdGhvc2UgNDIgc2hhcmVkIGxpYnJhcmllcyBt YXR0ZXJzIGZvciB0aGUgbnVtYmVyIG9mDQorY29uZmxpY3QgZml4dXBzLCB1 bmZvcnR1bmF0ZWx5IHdpdGggbGFyZ2UgQysrIHNoYXJlZCBsaWJyYXJpZXMg dGhlcmUNCitpcyBubyBvYnZpb3VzIHJ1bGUgZm9yIG9yZGVyaW5nIHRoZW0g YXMgc29tZXRpbWVzIGl0IGlzIG1vcmUgdXNlZnVsDQord2hlbiBhIHNoYXJl ZCBsaWJyYXJ5IHByZWNlZGVzIGl0cyBkZXBlbmRlbmN5IGFuZCBzb21ldGlt ZXMgdmljZQ0KK3ZlcnNhLCBzbyBhIGZldyBkaWZmZXJlbnQgb3JkZXJpbmdz IHdlcmUgdHJpZWQgaW4gc2V2ZXJhbCBzdGVwcyBhbmQNCithbHdheXMgdGhl IG9uZSB3aXRoIHNtYWxsZXN0IG51bWJlciBvZiBjb25mbGljdCBmaXh1cHMg d2FzIGNob3Nlbi4NCisNCitTdGlsbCwgdGhlIG51bWJlciBvZiBjb25mbGlj dCBmaXh1cHMgaXMgcXVpdGUgaGlnaCBhbmQgYmlnIHBhcnQgb2YgdGhlDQor Zml4dXBzIGFyZSBzdG9yaW5nIGFkZHJlc3NlcyBvZiBQTFQgc2xvdHMgaW4g dGhlIGV4ZWN1dGFibGUgaW50bw0KK3ZhcmlvdXMgcGxhY2VzIGluIHNoYXJl ZCBsaWJyYXJpZXMgc29mZmljZTIuYmluIGlzIGFub3RoZXINCisNCitbIFRo aXMgbWlnaHQgZ2V0IGJldHRlciB3aGVuIHRoZSBsaW5rZXIgaXMgbW9kaWZp ZWQgdG8gaGFuZGxlIGNhbGxzDQorICB3aXRob3V0IGV2ZXIgdGFraW5nIGFk ZHJlc3Mgb2YgdGhlIGZ1bmN0aW9uIGluIGV4ZWN1dGFibGVzDQorICBzcGVj aWFsbHksIGJ1dCBvbmx5IHRlc3RpbmcgaXQgd2lsbCBhY3R1YWxseSBzaG93 IGl0IHVwLiBdDQorDQorZXhwZXJpbWVudCwgd2hlcmUgdGhlIGV4ZWN1dGFi bGUgaXRzZWxmIGlzIGVtcHR5IHNvdXJjZSBmaWxlLCBhbGwNCitvYmplY3Rz IHdoaWNoIHdlcmUgb3JpZ2luYWxseSBpbiBzb2ZmaWNlLmJpbiBleGVjdXRh YmxlIHdpdGggdGhlDQorZXhjZXB0aW9uIG9mIHN0YXJ0IGZpbGVzIHdlcmUg cmVjb21waWxlZCBhcyBwb3NpdGlvbiBpbmRlcGVuZGVudCBjb2RlDQorYW5k IGxpbmtlZCBpbnRvIGEgbmV3IHNoYXJlZCBsaWJyYXJ5Lg0KKw0KK1RoaXMg cmVkdWNlZCBudW1iZXIgb2YgY29uZmxpY3RzIGEgbG90IGFuZCBzcGVlZGVk IHVwIHN0YXJ0IHVwIHRpbWVzDQorYWdhaW5zdCBzb2ZmaWNlMy5iaW4gd2hl biBjYWNoZXMgYXJlIGhvdC4gSXQgaXMgYSBsaXR0bGUgYml0IHNsb3dlcg0K K3RoYW4gc29mZmljZTMuYmluIHdoZW4gcnVubmluZyB3aXRoIGNvbGQgY2Fj aGVzIChlLmcuIGZvciB0aGUgZmlyc3QNCit0aW1lIGFmdGVyIGJvb3R1cCks IGFzIHRoZXJlIGlzIG9uZSBtb3JlIHNoYXJlZCBsaWJyYXJ5IHRvIGxvYWQg ZXRjLg0KK0luIHRoZSB0aW1pbmdzIGJlbG93LCBudW1iZXJzIGZvciBzb2Zm aWNlMS5iaW4gYW5kIHNvZmZpY2UyLmJpbiByZXNwLg0KK3NvZmZpY2UzLmJp biBjYW5ub3QgYmUgZWFzaWx5IGNvbXBhcmVkLCBhcyBzb2ZmaWNlMS5iaW4g bG9hZHMgbGVzcw0KK3RoYW4gaGFsZiBvZiB0aGUgbmVlZGVkIHNoYXJlZCBs aWJyYXJpZXMgd2hpY2ggdGhlIHJlbWFpbmluZyB0d28NCitleGVjdXRhYmxl cyBsb2FkIGFuZCB0aGUgdGltZSB0byBsb2FkIHRob3NlIHNoYXJlZCBsaWJy YXJpZXMgZG9lc27igJl0DQorc2hvdyB1cCB0aGVyZS4NCisNCitTdGlsbCwg d2hlbiBpdCBpcyBwcmVsaW5rZWQgaXQgdGFrZXMganVzdCBzbGlnaHRseSBt b3JlIHRoYW4gdHdvIHRpbWVzDQorbG9uZ2VyIHRvIGxvYWQgc29mZmljZTIu YmluIHRoYW4gc29mZmljZTEuYmluIGFuZCB0aGUgdGltZXMgYXJlIHN0aWxs DQorbGVzcyB0aGFuIDclIG9mIGhvdyBsb25nIGl0IHRha2VzIHRvIGxvYWQg anVzdCB0aGUgaW5pdGlhbCAzNCBzaGFyZWQNCitsaWJyYXJpZXMgd2hlbiBu b3QgcHJlbGlua2luZy4NCisNCisgICQgUz3igJlzL14gKi8v4oCZDQorICAk IGxkZCAvdXNyL2xpYi9vcGVub2ZmaWNlL3Byb2dyYW0vc29mZmljZTEuYmlu IHwgd2MgLWwNCisgIDM0DQorICAkICMgVW5wcmVsaW5rZWQgc3lzdGVtDQor ICAkIExEX0RFQlVHPXN0YXRpc3RpY3MgL3Vzci9saWIvb3Blbm9mZmljZS9w cm9ncmFtL3NvZmZpY2UxLmJpbiAyPiYxIHwgc2VkIOKAnSRT4oCdDQorMTkw OTU6IHJ1bnRpbWUgbGlua2VyIHN0YXRpc3RpY3M6DQorMTkwOTU6IA0KKzE5 MDk1OiAgIHRvdGFsIHN0YXJ0dXAgdGltZSBpbiBkeW5hbWljIGxvYWRlcjog MTU5ODMzNTgyIGNsb2NrIGN5Y2xlcw0KKzE5MDk1OiAgICAgICAgICAgICB0 aW1lIG5lZWRlZCBmb3IgcmVsb2NhdGlvbjogMTU1NDY0MTc0IGNsb2NrIGN5 Y2xlcyAoOTcuMiUpDQorMTkwOTU6ICAgICAgICAgICAgICAgICAgbnVtYmVy IG9mIHJlbG9jYXRpb25zOiAzMTEzNg0KKzE5MDk1OiAgICAgICBudW1iZXIg b2YgcmVsb2NhdGlvbnMgZnJvbSBjYWNoZTogMzE3MDINCisxOTA5NTogICAg ICAgICBudW1iZXIgb2YgcmVsYXRpdmUgcmVsb2NhdGlvbnM6IDE4Mjg0DQor MTkwOTU6ICAgICAgICAgICAgdGltZSBuZWVkZWQgdG8gbG9hZCBvYmplY3Rz OiAzOTE5NjQ1IGNsb2NrIGN5Y2xlcyAoMi40JSkNCisvdXNyL2xpYi9vcGVu b2ZmaWNlL3Byb2dyYW0vc29mZmljZTEuYmluIFgxMSBlcnJvcjogQ2Fu4oCZ dCBvcGVuIGRpc3BsYXk6DQorU2V0IERJU1BMQVkgZW52aXJvbm1lbnQgdmFy aWFibGUsIHVzZSAtZGlzcGxheSBvcHRpb24NCitvciBjaGVjayBwZXJtaXNz aW9ucyBvZiB5b3VyIFgtU2VydmVyDQorKFNlZSDigJ1tYW4gWOKAnSByZXNw LiDigJ1tYW4geGhvc3TigJ0gZm9yIGRldGFpbHMpDQorMTkwOTU6IHJ1bnRp bWUgbGlua2VyIHN0YXRpc3RpY3M6DQorMTkwOTU6IA0KKzE5MDk1OiAgICAg ICAgICAgIGZpbmFsIG51bWJlciBvZiByZWxvY2F0aW9uczogMzE3MTUNCisx OTA5NTogZmluYWwgbnVtYmVyIG9mIHJlbG9jYXRpb25zIGZyb20gY2FjaGU6 IDMxNzAyDQorDQorICAkICMgUHJlbGlua2VkIHN5c3RlbQ0KKyAgJCBMRF9E RUJVRz1zdGF0aXN0aWNzIC91c3IvbGliL29wZW5vZmZpY2UvcHJvZ3JhbS9z b2ZmaWNlMS5iaW4gMj4mMSB8IHNlZCDigJ0kU+KAnQ0KKzI1NzU5OiBydW50 aW1lIGxpbmtlciBzdGF0aXN0aWNzOg0KKzI1NzU5OiANCisyNTc1OTogICB0 b3RhbCBzdGFydHVwIHRpbWUgaW4gZHluYW1pYyBsb2FkZXI6IDQyNTIzOTcg Y2xvY2sgY3ljbGVzDQorMjU3NTk6ICAgICAgICAgICAgIHRpbWUgbmVlZGVk IGZvciByZWxvY2F0aW9uOiAxMTg5ODQwIGNsb2NrIGN5Y2xlcyAoMjcuOSUp DQorMjU3NTk6ICAgICAgICAgICAgICAgICAgbnVtYmVyIG9mIHJlbG9jYXRp b25zOiAwDQorMjU3NTk6ICAgICAgIG51bWJlciBvZiByZWxvY2F0aW9ucyBm cm9tIGNhY2hlOiAyMTQyDQorMjU3NTk6ICAgICAgICAgbnVtYmVyIG9mIHJl bGF0aXZlIHJlbG9jYXRpb25zOiAwDQorMjU3NTk6ICAgICAgICAgICAgdGlt ZSBuZWVkZWQgdG8gbG9hZCBvYmplY3RzOiAyNjA0NDg2IGNsb2NrIGN5Y2xl cyAoNjEuMiUpDQorL3Vzci9saWIvb3Blbm9mZmljZS9wcm9ncmFtL3NvZmZp Y2UxLmJpbiBYMTEgZXJyb3I6IENhbuKAmXQgb3BlbiBkaXNwbGF5Og0KK1Nl dCBESVNQTEFZIGVudmlyb25tZW50IHZhcmlhYmxlLCB1c2UgLWRpc3BsYXkg b3B0aW9uDQorb3IgY2hlY2sgcGVybWlzc2lvbnMgb2YgeW91ciBYLVNlcnZl cg0KKyhTZWUg4oCdbWFuIFjigJ0gcmVzcC4g4oCdbWFuIHhob3N04oCdIGZv ciBkZXRhaWxzKQ0KKzI1NzU5OiBydW50aW1lIGxpbmtlciBzdGF0aXN0aWNz Og0KKzI1NzU5OiANCisyNTc1OTogICAgICAgICAgICBmaW5hbCBudW1iZXIg b2YgcmVsb2NhdGlvbnM6IDI0DQorMjU3NTk6IGZpbmFsIG51bWJlciBvZiBy ZWxvY2F0aW9ucyBmcm9tIGNhY2hlOiAyMTQyDQorDQorICAkIGxkZCAvdXNy L2xpYi9vcGVub2ZmaWNlL3Byb2dyYW0vc29mZmljZTIuYmluIHwgd2MgLWwN CisgIDc3DQorICAkICMgVW5wcmVsaW5rZWQgc3lzdGVtDQorICAkIExEX0RF QlVHPXN0YXRpc3RpY3MgL3Vzci9saWIvb3Blbm9mZmljZS9wcm9ncmFtL3Nv ZmZpY2UyLmJpbiAyPiYxIHwgc2VkIOKAnSRT4oCdDQorMTkxMTU6IHJ1bnRp bWUgbGlua2VyIHN0YXRpc3RpY3M6DQorMTkxMTU6IA0KKzE5MTE1OiAgIHRv dGFsIHN0YXJ0dXAgdGltZSBpbiBkeW5hbWljIGxvYWRlcjogOTQ3NzkzNjcw IGNsb2NrIGN5Y2xlcw0KKzE5MTE1OiAgICAgICAgICAgICB0aW1lIG5lZWRl ZCBmb3IgcmVsb2NhdGlvbjogOTM2ODk1NzQxIGNsb2NrIGN5Y2xlcyAoOTgu OCUpDQorMTkxMTU6ICAgICAgICAgICAgICAgICAgbnVtYmVyIG9mIHJlbG9j YXRpb25zOiA2OTE2NA0KKzE5MTE1OiAgICAgICBudW1iZXIgb2YgcmVsb2Nh dGlvbnMgZnJvbSBjYWNoZTogOTQ1MDINCisxOTExNTogICAgICAgICBudW1i ZXIgb2YgcmVsYXRpdmUgcmVsb2NhdGlvbnM6IDU5Mzc0DQorMTkxMTU6ICAg ICAgICAgICAgdGltZSBuZWVkZWQgdG8gbG9hZCBvYmplY3RzOiAxMDA0NjQ4 NiBjbG9jayBjeWNsZXMgKDEuMCUpDQorL3Vzci9saWIvb3Blbm9mZmljZS9w cm9ncmFtL3NvZmZpY2UyLmJpbiBYMTEgZXJyb3I6IENhbuKAmXQgb3BlbiBk aXNwbGF5Og0KK1NldCBESVNQTEFZIGVudmlyb25tZW50IHZhcmlhYmxlLCB1 c2UgLWRpc3BsYXkgb3B0aW9uDQorb3IgY2hlY2sgcGVybWlzc2lvbnMgb2Yg eW91ciBYLVNlcnZlcg0KKyhTZWUg4oCdbWFuIFjigJ0gcmVzcC4g4oCdbWFu IHhob3N04oCdIGZvciBkZXRhaWxzKQ0KKzE5MTE1OiBydW50aW1lIGxpbmtl ciBzdGF0aXN0aWNzOg0KKzE5MTE1OiANCisxOTExNTogICAgICAgICAgICBm aW5hbCBudW1iZXIgb2YgcmVsb2NhdGlvbnM6IDY5OTY2DQorMTkxMTU6IGZp bmFsIG51bWJlciBvZiByZWxvY2F0aW9ucyBmcm9tIGNhY2hlOiA5NDUwMg0K Kw0KKyAgJCAjIFByZWxpbmtlZCBzeXN0ZW0NCisgICQgTERfREVCVUc9c3Rh dGlzdGljcyAvdXNyL2xpYi9vcGVub2ZmaWNlL3Byb2dyYW0vc29mZmljZTIu YmluIDI+JjEgfCBzZWQg4oCdJFPigJ0NCisyNTc3NzogcnVudGltZSBsaW5r ZXIgc3RhdGlzdGljczoNCisyNTc3NzogDQorMjU3Nzc6ICAgdG90YWwgc3Rh cnR1cCB0aW1lIGluIGR5bmFtaWMgbG9hZGVyOiAxMDk1MjA5OSBjbG9jayBj eWNsZXMNCisyNTc3NzogICAgICAgICAgICAgdGltZSBuZWVkZWQgZm9yIHJl bG9jYXRpb246IDMyNTQ1MTggY2xvY2sgY3ljbGVzICgyOS43JSkNCisyNTc3 NzogICAgICAgICAgICAgICAgICBudW1iZXIgb2YgcmVsb2NhdGlvbnM6IDAN CisyNTc3NzogICAgICAgbnVtYmVyIG9mIHJlbG9jYXRpb25zIGZyb20gY2Fj aGU6IDUzMDkNCisyNTc3NzogICAgICAgICBudW1iZXIgb2YgcmVsYXRpdmUg cmVsb2NhdGlvbnM6IDANCisyNTc3NzogICAgICAgICAgICB0aW1lIG5lZWRl ZCB0byBsb2FkIG9iamVjdHM6IDY4MDUwMTMgY2xvY2sgY3ljbGVzICg2Mi4x JSkNCisvdXNyL2xpYi9vcGVub2ZmaWNlL3Byb2dyYW0vc29mZmljZTIuYmlu IFgxMSBlcnJvcjogQ2Fu4oCZdCBvcGVuIGRpc3BsYXk6DQorU2V0IERJU1BM QVkgZW52aXJvbm1lbnQgdmFyaWFibGUsIHVzZSAtZGlzcGxheSBvcHRpb24N CitvciBjaGVjayBwZXJtaXNzaW9ucyBvZiB5b3VyIFgtU2VydmVyDQorKFNl ZSDigJ1tYW4gWOKAnSByZXNwLiDigJ1tYW4geGhvc3TigJ0gZm9yIGRldGFp bHMpDQorMjU3Nzc6IHJ1bnRpbWUgbGlua2VyIHN0YXRpc3RpY3M6DQorMjU3 Nzc6IA0KKzI1Nzc3OiAgICAgICAgICAgIGZpbmFsIG51bWJlciBvZiByZWxv Y2F0aW9uczogMjQNCisyNTc3NzogZmluYWwgbnVtYmVyIG9mIHJlbG9jYXRp b25zIGZyb20gY2FjaGU6IDUzMDkNCisNCisgICQgbGRkIC91c3IvbGliL29w ZW5vZmZpY2UvcHJvZ3JhbS9zb2ZmaWNlMy5iaW4gfCB3YyAtbA0KKyAgNzYN CisgICQgIyBVbnByZWxpbmtlZCBzeXN0ZW0NCisgICQgTERfREVCVUc9c3Rh dGlzdGljcyAvdXNyL2xpYi9vcGVub2ZmaWNlL3Byb2dyYW0vc29mZmljZTMu YmluIDI+JjEgfCBzZWQg4oCdJFPigJ0NCisxOTEzMTogcnVudGltZSBsaW5r ZXIgc3RhdGlzdGljczoNCisxOTEzMTogDQorMTkxMzE6ICAgdG90YWwgc3Rh cnR1cCB0aW1lIGluIGR5bmFtaWMgbG9hZGVyOiA4NTIyNzU3NTQgY2xvY2sg Y3ljbGVzDQorMTkxMzE6ICAgICAgICAgICAgIHRpbWUgbmVlZGVkIGZvciBy ZWxvY2F0aW9uOiA4NDA5OTY4NTkgY2xvY2sgY3ljbGVzICg5OC42JSkNCisx OTEzMTogICAgICAgICAgICAgICAgICBudW1iZXIgb2YgcmVsb2NhdGlvbnM6 IDY4MzYyDQorMTkxMzE6ICAgICAgIG51bWJlciBvZiByZWxvY2F0aW9ucyBm cm9tIGNhY2hlOiA4OTIxMw0KKzE5MTMxOiAgICAgICAgIG51bWJlciBvZiBy ZWxhdGl2ZSByZWxvY2F0aW9uczogNTU4MzENCisxOTEzMTogICAgICAgICAg ICB0aW1lIG5lZWRlZCB0byBsb2FkIG9iamVjdHM6IDEwMTcwMjA3IGNsb2Nr IGN5Y2xlcyAoMS4xJSkNCisvdXNyL2xpYi9vcGVub2ZmaWNlL3Byb2dyYW0v c29mZmljZTMuYmluIFgxMSBlcnJvcjogQ2Fu4oCZdCBvcGVuIGRpc3BsYXk6 DQorU2V0IERJU1BMQVkgZW52aXJvbm1lbnQgdmFyaWFibGUsIHVzZSAtZGlz cGxheSBvcHRpb24NCitvciBjaGVjayBwZXJtaXNzaW9ucyBvZiB5b3VyIFgt U2VydmVyDQorKFNlZSDigJ1tYW4gWOKAnSByZXNwLiDigJ1tYW4geGhvc3Ti gJ0gZm9yIGRldGFpbHMpDQorMTkxMzE6IHJ1bnRpbWUgbGlua2VyIHN0YXRp c3RpY3M6DQorMTkxMzE6IA0KKzE5MTMxOiAgICAgICAgICAgIGZpbmFsIG51 bWJlciBvZiByZWxvY2F0aW9uczogNjkxNzcNCisxOTEzMTogZmluYWwgbnVt YmVyIG9mIHJlbG9jYXRpb25zIGZyb20gY2FjaGU6IDg5MjEzDQorDQorDQor ICAkICMgUHJlbGlua2VkIHN5c3RlbQ0KKyAgJCBMRF9ERUJVRz1zdGF0aXN0 aWNzIC91c3IvbGliL29wZW5vZmZpY2UvcHJvZ3JhbS9zb2ZmaWNlMy5iaW4g Mj4mMSB8IHNlZCDigJ0kU+KAnQ0KKzI1ODQ3OiBydW50aW1lIGxpbmtlciBz dGF0aXN0aWNzOg0KKzI1ODQ3OiANCisyNTg0NzogICB0b3RhbCBzdGFydHVw IHRpbWUgaW4gZHluYW1pYyBsb2FkZXI6IDEyMjc3NDA3IGNsb2NrIGN5Y2xl cw0KKzI1ODQ3OiAgICAgICAgICAgICB0aW1lIG5lZWRlZCBmb3IgcmVsb2Nh dGlvbjogNDIzMjkxNSBjbG9jayBjeWNsZXMgKDM0LjQlKQ0KKzI1ODQ3OiAg ICAgICAgICAgICAgICAgIG51bWJlciBvZiByZWxvY2F0aW9uczogMA0KKzI1 ODQ3OiAgICAgICBudW1iZXIgb2YgcmVsb2NhdGlvbnMgZnJvbSBjYWNoZTog ODk2MQ0KKzI1ODQ3OiAgICAgICAgIG51bWJlciBvZiByZWxhdGl2ZSByZWxv Y2F0aW9uczogMA0KKzI1ODQ3OiAgICAgICAgICAgIHRpbWUgbmVlZGVkIHRv IGxvYWQgb2JqZWN0czogNjkyNTAyMyBjbG9jayBjeWNsZXMgKDU2LjQlKQ0K Ky91c3IvbGliL29wZW5vZmZpY2UvcHJvZ3JhbS9zb2ZmaWNlMy5iaW4gWDEx IGVycm9yOiBDYW7igJl0IG9wZW4gZGlzcGxheToNCitTZXQgRElTUExBWSBl bnZpcm9ubWVudCB2YXJpYWJsZSwgdXNlIC1kaXNwbGF5IG9wdGlvbg0KK29y IGNoZWNrIHBlcm1pc3Npb25zIG9mIHlvdXIgWC1TZXJ2ZXINCisoU2VlIOKA nW1hbiBY4oCdIHJlc3AuIOKAnW1hbiB4aG9zdOKAnSBmb3IgZGV0YWlscykN CisyNTg0NzogcnVudGltZSBsaW5rZXIgc3RhdGlzdGljczoNCisyNTg0Nzog DQorMjU4NDc6ICAgICAgICAgICAgZmluYWwgbnVtYmVyIG9mIHJlbG9jYXRp b25zOiAyNA0KKzI1ODQ3OiBmaW5hbCBudW1iZXIgb2YgcmVsb2NhdGlvbnMg ZnJvbSBjYWNoZTogODk2MQ0KKw0KK1RhYmxlIDI6IE9wZW5PZmZpY2Uub3Jn IHN0YXJ0IHVwIHRpbWVzIHdpdGhvdXQgYW5kIHdpdGggcHJlbGlua2luZw0K Kw0KK1R5cGV8VmFsdWVzIChpbiBzZWNvbmRzKSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8QXZnICB8c3RkZGV2DQorLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLSstLS0tLS0NCit1bnByZWxpbmtlZCBzb2Zm aWNlMS5iaW4gcHJpdmF0ZTpmYWN0b3J5L3N3cml0ZXIgICAgICAgICAgICAg ICAgfCDCtSAgIHwgcw0KKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0t LS0tDQorcmVhbHw1LjU2OXw1LjE0OXw1LjU0N3w1LjU1OXw1LjU0OXw1LjEz OXw1LjU1IHw1LjU1OXw1LjU5OHw1LjU1OXw1LjQ3OHwwLjE3NjUgDQordXNl cnw0LjY1IHw0LjU3IHw0LjYyIHw0LjY0IHw0LjU3IHw0LjU1IHw0LjY1IHw0 LjQ5IHw0LjUyIHw0LjQ2IHw0LjU3MnwwLjA2ODAgDQorc3lzIHwwLjI5IHww LjI0IHwwLjE5IHwwLjIxIHwwLjIxIHwwLjIxIHwwLjI1IHwwLjI1IHwwLjI3 IHwwLjI2IHwwLjIzOHwwLjAzMTkgDQorLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLSstLS0tLS0NCitwcmVsaW5rZWQgc29mZmljZTEuYmluIHByaXZhdGU6 ZmFjdG9yeS9zd3JpdGVyICAgICAgICAgICAgICAgICAgfCDCtSAgIHwgcw0K Ky0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0tLS0tDQorcmVhbHw0Ljk0 Nnw0Ljg5OXw1LjI5MXw0Ljg3OXw0Ljg3OXw0Ljg5OHw1LjI5OXw0LjkwMXw0 Ljg4N3w0LjkwMXw0Ljk3OHwwLjE2ODEgDQordXNlcnw0LjIzIHw0LjI3IHw0 LjE4IHw0LjI0IHw0LjE3IHw0LjIyIHw0LjE1IHw0LjI1IHw0LjI2IHw0LjMx IHw0LjIyOHwwLjA0OTQgDQorc3lzIHwwLjIyIHwwLjIyIHwwLjI0IHwwLjI2 IHwwLjMgIHwwLjI2IHwwLjI5IHwwLjE3IHwwLjIxIHwwLjIzIHwwLjI0IHww LjAzODkgDQorLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLSstLS0tLS0NCit1 bnByZWxpbmtlZCBzb2ZmaWNlMi5iaW4gcHJpdmF0ZTpmYWN0b3J5L3N3cml0 ZXIgICAgICAgICAgICAgICAgfCDCtSAgIHwgcw0KKy0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0rLS0tLS0tDQorcmVhbHw1LjU3NXw1LjE2Nnw1LjU5Mnw1 LjE0OXw1LjU3MXw1LjU1OXw1LjE1OXw1LjE1N3w1LjU2OXw1LjE0OXw1LjM2 NXwwLjIyMDEgDQordXNlcnw0LjU5IHw0LjUgIHw0LjU3IHw0LjM3IHw0LjQ3 IHw0LjU3IHw0LjU2IHw0LjQxIHw0LjYzIHw0LjUgIHw0LjUxN3wwLjA4MjYg DQorc3lzIHwwLjI0IHwwLjI0IHwwLjIxIHwwLjM0IHwwLjI3IHwwLjE5IHww LjE5IHwwLjI3IHwwLjE5IHwwLjI5IHwwLjI0M3wwLjA1MDEgDQorLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLSstLS0tLS0NCitwcmVsaW5rZWQgc29mZmlj ZTIuYmluIHByaXZhdGU6ZmFjdG9yeS9zd3JpdGVyICAgICAgICAgICAgICAg ICAgfCDCtSAgIHwgcw0KKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0t LS0tDQorcmVhbHwzLjY5IHwzLjY2IHwzLjY1OHwzLjY2MXwzLjYzOXwzLjYz OHwzLjY0OXwzLjY1OXwzLjY1IHwzLjY1OXwzLjY1NnwwLjAxNDYgDQordXNl cnwyLjkzIHwyLjg4IHwyLjg4IHwyLjkgIHwyLjg0IHwyLjYzIHwyLjg5IHwy Ljg1IHwyLjc3IHwyLjgzIHwyLjg0IHwwLjA4NjAgDQorc3lzIHwwLjIyIHww LjE4IHwwLjIzIHwwLjIgIHwwLjE4IHwwLjI5IHwwLjIyIHwwLjIzIHwwLjI0 IHwwLjIyIHwwLjIyMXwwLjAzMTggDQorLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLSstLS0tLS0NCit1bnByZWxpbmtlZCBzb2ZmaWNlMy5iaW4gcHJpdmF0 ZTpmYWN0b3J5L3N3cml0ZXIgICAgICAgICAgICAgICAgfCDCtSAgIHwgcw0K Ky0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0tLS0tDQorcmVhbHw1LjAz MXw1LjAyIHw1LjAwOXw1LjAyOHw1LjAxOXw1LjAxOXw1LjAxOXw1LjA1Mnw1 LjQyNnw1LjAyOXw1LjA2NXwwLjEyNzMgDQordXNlcnw0LjMxIHw0LjM1IHw0 LjM0IHw0LjMgIHw0LjM4IHw0LjI5IHw0LjQ1IHw0LjM3IHw0LjM4IHw0LjQ0 IHw0LjM2MXwwLjA1NDcgDQorc3lzIHwwLjI3IHwwLjI1IHwwLjI2IHwwLjI3 IHwwLjI3IHwwLjMxIHwwLjE4IHwwLjE3IHwwLjE2IHwwLjE1IHwwLjIyOXww LjA1NzYgDQorLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLSstLS0tLS0NCitw cmVsaW5rZWQgc29mZmljZTMuYmluIHByaXZhdGU6ZmFjdG9yeS9zd3JpdGVy ICAgICAgICAgICAgICAgICAgfCDCtSAgIHwgcw0KKy0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0rLS0tLS0tDQorcmVhbHwzLjcwNXwzLjY2OXwzLjY1OXwz LjY2OXwzLjY2IHwzLjY1OXwzLjY1OXwzLjY2MXwzLjY2OHwzLjY0OXwzLjY2 NnwwLjAxNTEgDQordXNlcnwyLjg2IHwyLjg4IHwyLjg1IHwyLjg0IHwyLjgz IHwyLjg2IHwyLjg0IHwyLjkxIHwyLjg2IHwyLjggIHwyLjg1M3wwLjAyOTUg DQorc3lzIHwwLjI2IHwwLjE5IHwwLjI3IHwwLjI1IHwwLjI0IHwwLjIzIHww LjI4IHwwLjIxIHwwLjIxIHwwLjI3IHwwLjI0MXwwLjAzMDMgDQorLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLSstLS0tLS0NCisNCis9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09DQorDQorMTUgU2ltaWxhciB0b29scyBvbiBv dGhlciBFTEYgdXNpbmcgT3BlcmF0aW5nIFN5c3RlbXMNCisNCitTb21ldGhp bmcgc2ltaWxhciB0byBwcmVsaW5rIGlzIGF2YWlsYWJsZSBvbiBvdGhlciBF TEYgcGxhdGZvcm1zLiBPbg0KK0lyaXggdGhlcmUgaXMgUVVJQ0tTVEFSVCBh bmQgb24gU29sYXJpcyBjcmxlLg0KKw0KK1NHSSBRVUlDS1NUQVJUIGlzIG11 Y2ggY2xvc2VyIHRvIHByZWxpbmsgZnJvbSB0aGVzZSB0d28uIFRoZSBycXMN Citwcm9ncmFtIHJlbG9jYXRlcyBsaWJyYXJpZXMgdG8gKGlmIHBvc3NpYmxl KSB1bmlxdWUgdmlydHVhbCBhZGRyZXNzDQorc3BhY2Ugc2xvdC4gVGhlIGJh c2UgYWRkcmVzcyBpcyBlaXRoZXIgc3BlY2lmaWVkIG9uIHRoZSBjb21tYW5k IGxpbmUNCit3aXRoIHRoZSAtbCBvcHRpb24sIG9yIHJxcyB1c2VzIGEgc29f bG9jYXRpb25zIHJlZ2lzdHJ5IHdpdGggLWMgb3IgLXUNCitvcHRpb25zIGFu ZCBmaW5kcyBhIG5vdCB5ZXQgb2NjdXBpZWQgc2xvdC4NCisNCitUaGlzIGlz IHNpbWlsYXIgdG8gaG93IHByZWxpbmsgbGF5cyBvdXQgbGlicmFyaWVzIHdp dGhvdXQgdGhlIC1tDQorb3B0aW9uLiBRVUlDS1NUQVJUIHVzZXMgdGhlIHNh bWUgZGF0YSBzdHJ1Y3R1cmUgZm9yIGxpYnJhcnkgbGlzdHMNCisoRWxmTk5f TGliKSBhcyBwcmVsaW5rLCBidXQgdXNlcyBtb3JlIGZpZWxkcyBpbiBpdCAo cHJlbGluayBkb2VzbuKAmXQNCit1c2UgbF92ZXJzaW9uIGFuZCBsX2ZsYWdz IGZpZWxkcyBhdCB0aGUgbW9tZW50KSBhbmQgdXNlcyBkaWZmZXJlbnQNCitk eW5hbWljIHRhZ3MgYW5kIHNlY3Rpb24gdHlwZSBmb3IgaXQuDQorDQorQW5v dGhlciBkaWZmZXJlbmNlIGlzIHRoYXQgUVVJQ0tTVEFSVCBtYWtlcyBhbGwg bGlibGlzdCBzZWN0aW9uDQorU0hGX0FMTE9DLCB3aGV0aGVyIGluIHNoYXJl ZCBsaWJyYXJpZXMgb3IgZXhlY3V0YWJsZXMuIHByZWxpbmsgb25seQ0KK25l ZWRzIGxpYmxpc3Qgc2VjdGlvbiBpbiB0aGUgZXhlY3V0YWJsZSBiZSBhbGxv Y2F0ZWQsIGxpYmxpc3Qgc2VjdGlvbnMNCitpbiBzaGFyZWQgbGlicmFyaWVz IGFyZSBub3QgYWxsb2NhdGVkIGFuZCB1c2VkIGF0IHByZWxpbmsgdGltZSBv bmx5Lg0KKw0KK1RoZSBiaWdnZXN0IGRpZmZlcmVuY2UgYmV0d2VlbiBRVUlD S1NUQVJUIGFuZCBwcmVsaW5rIGlzIGluIGhvdw0KK2NvbmZsaWN0cyBhcmUg ZW5jb2RlZC4gU0dJIHN0b3JlcyB0aGVtIGluIGEgdmVyeSBjb21wYWN0IGZv cm1hdCwgYXMNCithcnJheSBvZiAuZHluc3ltIHNlY3Rpb24gaW5kZXhlcyBm b3Igc3ltYm9scyB3aGljaCBhcmUgY29uZmxpY3RpbmcuDQorVGhlcmUgaXMg bm8gaW5mb3JtYXRpb24gcHVibGljbHkgYXZhaWxhYmxlIHdoYXQgZXhhY3Rs eSBTR0kgZHluYW1pYw0KK2xpbmtlciBkb2VzIHdoZW4gaXQgaXMgcmVzb2x2 aW5nIHRoZSBjb25mbGljdHMsIHNvIHRoaXMgaXMganVzdCBhDQorZ3Vlc3Mu DQorDQorR2l2ZW4gdGhhdCB0aGUgY29uZmxpY3RzIGNhbiBiZSBzdG9yZWQg aW4gYSBzaGFyZWQgbGlicmFyeSBvcg0KK2V4ZWN1dGFibGUgZGlmZmVyZW50 IHRvIHRoZSBzaGFyZWQgbGlicmFyeSB3aXRoIHRoZSByZWxvY2F0aW9ucw0K K2FnYWluc3QgdGhlIGNvbmZsaWN0aW5nIHN5bWJvbCBhbmQgZGlmZmVyZW50 IHRvIHRoZSBzaGFyZWQgbGlicmFyeQ0KK3doaWNoIHRoZSBzeW1ib2wgd2Fz IG9yaWdpbmFsbHkgcmVzb2x2ZWQgdG8sIHRoZXJlIGRvZXNu4oCZdCBzZWVt IHRvIGJlDQorYW4gb2J2aW91cyB3YXkgaG93IHRvIGhhbmRsZSB0aGUgY29u ZmxpY3RzIHZlcnkgY2hlYXBseS4NCisNCitUaGUgZHluYW1pYyBsaW5rZXIg cHJvYmFibHkgY29sbGVjdHMgbGlzdCBvZiBhbGwgY29uZmxpY3Rpbmcgc3lt Ym9sDQorbmFtZXMsIGZvciBlYWNoIHN1Y2ggc3ltYm9sIGNvbXB1dGVzIEVM RiBoYXNoIGFuZCB3YWxrcyBoYXNoIGJ1Y2tldHMNCitmb3IgdGhpcyBoYXNo IG9mIGFsbCBzaGFyZWQgbGlicmFyaWVzLCBsb29raW5nIGZvciB0aGUgc3lt Ym9sLiBFdmVyeQ0KK3RpbWUgaXQgZmluZHMgdGhlIHN5bWJvbCwgYWxsIHJl bG9jYXRpb25zIGFnYWluc3QgaXQgbmVlZCB0byBiZQ0KK3JlZG9uZS4NCisN CitVbmxpa2UgdGhpcywgcHJlbGluayBzdG9yZXMgY29uZmxpY3RzIGFzIGFu IGFycmF5IG9mIEVsZk5OX1JlbGENCitzdHJ1Y3R1cmVzLCB3aXRoIG9uZSBl bnRyeSBmb3IgZWFjaCBzaGFyZWQgcmVsb2NhdGlvbiBhZ2FpbnN0DQorY29u ZmxpY3Rpbmcgc3ltYm9sIGluIHNvbWUgc2hhcmVkIGxpYnJhcnkuIFRoaXMg Z3VhcmFudGVlcyB0aGF0IHRoZXJlDQorYXJlIG5vIHN5bWJvbCBsb29rdXBz IGR1cmluZyBwcm9ncmFtIHN0YXJ0dXAgKHByb3ZpZGVkIHRoYXQgc2hhcmVk DQorbGlicmFyaWVzIGhhdmUgbm90IGJlZW4gY2hhbmdlZCBhZnRlciBwcmVs aW5raW5nKSwgd2hpbGUgd2l0aA0KK1FVSUNLU1RBUlQgd2lsbCBkbyBzb21l IHN5bWJvbCBsb29rdXBzIGlmIHRoZXJlIGFyZSBhbnkgY29uZmxpY3RzLg0K Kw0KK1FVSUNLU1RBUlQgcHV0cyBjb25mbGljdCBzZWN0aW9ucyBpbnRvIHRo ZSBleGVjdXRhYmxlIGFuZCBldmVyeSBzaGFyZWQNCitsaWJyYXJ5IHdoZXJl IHJxcyBkZXRlcm1pbmVzIGNvbmZsaWN0cyB3aGlsZSBwcmVsaW5rIHN0b3Jl cyB0aGVtIGluDQordGhlIGV4ZWN1dGFibGUgb25seSAoYnV0IHRoZSBhcnJh eSBpcyB0eXBpY2FsbHkgbXVjaCBiaWdnZXIpLiBEaXNrDQorc3BhY2UgcmVx dWlyZW1lbnRzIGZvciBwcmVsaW5rZWQgZXhlY3V0YWJsZXMgYXJlIGNlcnRh aW5seSBiaWdnZXIgdGhhbg0KK2ZvciByZXF1aWNrc3RhcnRlZCBleGVjdXRh YmxlcywgYnV0IHdoaWNoIG9uZSBoYXMgYmlnZ2VyIHJ1bnRpbWUNCittZW1v cnkgcmVxdWlyZW1lbnRzIGlzIHVuY2xlYXIuDQorDQorSWYgcHJlbGlua2lu ZyBjYW4gYmUgdXNlZCwgYWxsIC5yZWxhKiBhbmQgLnJlbCogc2VjdGlvbnMg aW4gdGhlDQorZXhlY3V0YWJsZSBhbmQgYWxsIHNoYXJlZCBsaWJyYXJpZXMg YXJlIHNraXBwZWQsIHNvIHRoZXkgd2lsbCBub3QgbmVlZA0KK3RvIGJlIHBh Z2VkIGluIGR1cmluZyB3aG9sZSBwcm9ncmFt4oCZcyBsaWZlICh3aXRoIHRo ZSBleGNlcHRpb24gb2YNCitmaXJzdCBhbmQgbGFzdCBwYWdlcyBpbiB0aGUg cmVsb2NhdGlvbiBzZWN0aW9ucyB3aGljaCBjYW4gYmUgcGFnZWQgaW4NCiti ZWNhdXNlIG9mIG90aGVyIHNlY3Rpb25zIG9uIHRoZSBzYW1lIHBhZ2UpLCBi dXQgd2hvbGUgLmdudS5jb25mbGljdA0KK3NlY3Rpb24gbmVlZHMgdG8gYmUg cGFnZWQgaW4gKHJlYWQtb25seSkgYW5kIHByb2Nlc3NlZC4NCisNCitXaXRo IFFVSUNLU1RBUlQsIHByb2JhYmx5IGFsbCAobXVjaCBzbWFsbGVyKSBjb25m bGljdCBzZWN0aW9ucyBuZWVkIHRvDQorYmUgcGFnZWQgaW4gYW5kIGFsc28g bGlrZWx5IGZvciBlYWNoIGNvbmZsaWN0IHdob2xlIHJlbG9jYXRpb24NCitz ZWN0aW9ucyBvZiBlYWNoIGxpYnJhcnkgd2hpY2ggbmVlZHMgdGhlIGNvbmZs aWN0IHRvIGJlIGFwcGxpZWQNCithZ2FpbnN0Lg0KKw0KK0luIFFVSUNLU1RB UlQgZG9jdW1lbnRhdGlvbiwgU0dJIHNheXMgdGhhdCBjb25mbGljdHMgYXJl IHZlcnkgY29zdGx5DQorYW5kIHRoYXQgZGV2ZWxvcGVycyBzaG91bGQgYXZv aWQgdGhlbS4gVW5mb3J0dW5hdGVseSwgdGhpcyBpcw0KK3NvbWV0aW1lcyBx dWl0ZSBoYXJkLCBlc3BlY2lhbGx5IHdpdGggQysrIHNoYXJlZCBsaWJyYXJp ZXMuIEl0IGlzDQordW5jbGVhciB3aGV0aGVyIHJxcyBkb2VzIGFueSBvcHRp bWl6YXRpb25zIHRvIHRyaW0gZG93biB0aGUgbnVtYmVyIG9mDQorY29uZmxp Y3RzLg0KKw0KK1N1biB0b29rIGNvbXBsZXRlbHkgZGlmZmVyZW50IGFwcHJv YWNoLiBUaGUgZHluYW1pYyBsaW5rZXIgcHJvdmlkZXMgYQ0KK2RsZHVtcCAo Y29uc3QgY2hhciAqaXBhdGgsIGNvbnN0IGNoYXIgKm9wYXRoLCBpbnQgZmxh Z3MpOyBmdW5jdGlvbi4NCitpcGF0aCBpcyBzdXBwb3NlZCB0byBiZSBhIHBh dGggdG8gYW4gRUxGIG9iamVjdCBsb2FkZWQgYWxyZWFkeSBpbiB0aGUNCitj dXJyZW50IHByb2Nlc3MuIFRoaXMgZnVuY3Rpb24gY3JlYXRlcyBhIG5ldyBF TEYgb2JqZWN0IGF0IG9wYXRoLA0KK3doaWNoIGlzIGxpa2UgdGhlIGlwYXRo IG9iamVjdCwgYnV0IHJlbG9jYXRlZCB0byB0aGUgYmFzZSBhZGRyZXNzDQor d2hpY2ggaXQgaGFzIGFjdHVhbGx5IGJlZW4gbWFwcGVkIGF0IGluIHRoZSBj dXJyZW50IHByb2Nlc3MgYW5kIHdpdGgNCitzb21lIHJlbG9jYXRpb25zIChz cGVjaWZpZWQgaW4gZmxhZ3MgYml0bWFzaykgYXBwbGllZCBhcyB0aGV5IGhh dmUNCitiZWVuIHJlc29sdmVkIGluIHRoZSBjdXJyZW50IHByb2Nlc3MuDQor DQorUmVsb2NhdGlvbnMsIHdoaWNoIGhhdmUgYmVlbiBhcHBsaWVkLCBhcmUg b3ZlcndyaXR0ZW4gaW4gdGhlDQorcmVsb2NhdGlvbiBzZWN0aW9ucyB3aXRo IFJfKl9OT05FIHJlbG9jYXRpb25zLiBUaGUgY3JsZSBleGVjdXRhYmxlLCBp bg0KK2FkZGl0aW9uIHRvIG90aGVyIGZ1bmN0aW9ucyBub3QgcmVsYXRlZCB0 byBzdGFydHVwIHRpbWVzLCB3aXRoIHNvbWUNCitzcGVjaWZpYyBvcHRpb25z IHVzZXMgdGhlIGRsZHVtcCBmdW5jdGlvbiB0byBkdW1wIGFsbCBzaGFyZWQg bGlicmFyaWVzDQorYSBwYXJ0aWN1bGFyIGV4ZWN1dGFibGUgdXNlcyAoYW5k IHRoZSBleGVjdXRhYmxlIGl0c2VsZikgaW50byBhIG5ldw0KK2RpcmVjdG9y eSwgd2l0aCBzZWxlY3RlZCByZWxvY2F0aW9uIGNsYXNzZXMgYmVpbmcgYWxy ZWFkeSBhcHBsaWVkLg0KKw0KK1RoZSBtYWluIGRpc2FkdmFudGFnZSBvZiB0 aGlzIGFwcHJvYWNoIGlzIHRoYXQgc3VjaCBhbHRlcm5hdGUgc2hhcmVkDQor bGlicmFyaWVzIGFyZSBhdCBsZWFzdCBmb3IgbW9zdCByZWxvY2F0aW9uIGNs YXNzZXMgbm90IHNoYXJlYWJsZQ0KK2Fjcm9zcyBkaWZmZXJlbnQgcHJvZ3Jh bXMgYXQgYWxsIChhbmQgZm9yIHRob3NlIHdoZXJlIHRoZXkgY291bGQgYmUN CitzaGFyZWFibGUgYSBsaXR0bGUgYml0IHRoZXJlIHdpbGwgYmUgbWFueSBy ZWxvY2F0aW9ucyBsZWZ0IGZvciB0aGUNCitkeW5hbWljIGxpbmtlciwgc28g dGhlIHNwZWVkIGdhaW5zIHdpbGwgYmUgc21hbGwpLg0KKw0KK0Fub3RoZXIg ZGlzYWR2YW50YWdlIGlzIHRoYXQgYWxsIHJlbG9jYXRpb24gc2VjdGlvbnMg bmVlZCB0byBiZSBwYWdlZA0KK2ludG8gdGhlIG1lbW9yeSwganVzdCB0byBm aW5kIG91dCB0aGF0IG1vc3Qgb2YgdGhlIHJlbG9jYXRpb25zIGFyZQ0KK1Jf Kl9OT05FLg0KKw0KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0N CisNCisxNiBFTEYgZXh0ZW5zaW9ucyBmb3IgcHJlbGluaw0KKw0KK1ByZWxp bmsgbmVlZHMgYSBmZXcgRUxGIGV4dGVuc2lvbnMgZm9yIGl0cyBkYXRhIHN0 cnVjdHVyZXMgaW4gRUxGDQorb2JqZWN0cy4gRm9yIGxpc3Qgb2YgZGVwZW5k ZW5jaWVzIGF0IHRoZSB0aW1lIG9mIHByZWxpbmtpbmcsIGEgbmV3DQorc2Vj dGlvbiB0eXBlIFNIVF9HTlVfTElCTElTVCBpcyBkZWZpbmVkOg0KKw0KKyAg I2RlZmluZSBTSFRfR05VX0xJQkxJU1QgMHg2ZmZmZmZmNyAvKiBQcmVsaW5r IGxpYnJhcnkgbGlzdCAqLw0KKw0KKyAgdHlwZWRlZiBzdHJ1Y3QNCisgIHsN CisgICAgRWxmMzJfV29yZCBsX25hbWU7ICAgICAgIC8qIE5hbWUgKHN0cmlu ZyB0YWJsZSBpbmRleCkgKi8NCisgICAgRWxmMzJfV29yZCBsX3RpbWVfc3Rh bXA7IC8qIFRpbWVzdGFtcCAqLw0KKyAgICBFbGYzMl9Xb3JkIGxfY2hlY2tz dW07ICAgLyogQ2hlY2tzdW0gKi8NCisgICAgRWxmMzJfV29yZCBsX3ZlcnNp b247ICAgIC8qIFVudXNlZCwgc2hvdWxkIGJlIHplcm8gKi8NCisgICAgRWxm MzJfV29yZCBsX2ZsYWdzOyAgICAgIC8qIFVudXNlZCwgc2hvdWxkIGJlIHpl cm8gKi8NCisgIH0gRWxmMzJfTGliOw0KKw0KKyAgdHlwZWRlZiBzdHJ1Y3QN CisgIHsNCisgICAgRWxmNjRfV29yZCBsX25hbWU7ICAgICAgIC8qIE5hbWUg KHN0cmluZyB0YWJsZSBpbmRleCkgKi8NCisgICAgRWxmNjRfV29yZCBsX3Rp bWVfc3RhbXA7IC8qIFRpbWVzdGFtcCAqLw0KKyAgICBFbGY2NF9Xb3JkIGxf Y2hlY2tzdW07ICAgLyogQ2hlY2tzdW0gKi8NCisgICAgRWxmNjRfV29yZCBs X3ZlcnNpb247ICAgIC8qIFVudXNlZCwgc2hvdWxkIGJlIHplcm8gKi8NCisg ICAgRWxmNjRfV29yZCBsX2ZsYWdzOyAgICAgIC8qIFVudXNlZCwgc2hvdWxk IGJlIHplcm8gKi8NCisgIH0gRWxmNjRfTGliOw0KKw0KK05ldyBzdHJ1Y3R1 cmVzIGFuZCBzZWN0aW9uIHR5cGUgY29uc3RhbnRzIHVzZWQgYnkgcHJlbGlu aw0KK0ludHJvZHVjZXMgYSBmZXcgbmV3IHNwZWNpYWwgc2VjdGlvbnM6DQor DQorICBUYWJsZSAzOiBTcGVjaWFsIHNlY3Rpb25zIGludHJvZHVjZWQgYnkg cHJlbGluaw0KKw0KKyAgTmFtZSAgICAgICAgICAgICAgIHwgVHlwZSAgICAg ICAgICAgIHwgQXR0cmlidXRlcw0KKyAgLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQ0KKyAgICAgICAgICAgICAg ICAgICAgIHwgSW4gc2hhcmVkIGxpYnJhcmllcw0KKyAgLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQ0KKyAgLmdu dS5saWJsaXN0ICAgICAgIHwgU0hUX0dOVV9MSUJMSVNUIHwgMA0KKyAgLmdu dS5saWJzdHIgICAgICAgIHwgU0hUX1NUUlRBQiAgICAgIHwgMA0KKyAgLmdu dS5wcmVsaW5rX3VuZG8gIHwgU0hUX1BST0dCSVRTICAgIHwgMA0KKyAgLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LQ0KKyAgICAgICAgICAgICAgICAgICAgIHwgSW4gZXhlY3V0YWJsZXMNCisg IC0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0NCisgIC5nbnUubGlibGlzdCAgICAgICB8IFNIVF9HTlVfTElCTElT VCB8IFNIRl9BTExPQw0KKyAgLmdudS5jb25mbGljdCAgICAgIHwgU0hUX1JF TEEgICAgICAgIHwgU0hGX0FMTE9DDQorICAuZ251LnByZWxpbmtfdW5kbyAg fCBTSFRfUFJPR0JJVFMgICAgfCAwDQorDQorDQor4oCiIC5nbnUubGlibGlz dA0KKw0KKyAgVGhpcyBzZWN0aW9uIGNvbnRhaW5zIG9uZSBFbGZOTl9MaWIg c3RydWN0dXJlIGZvciBlYWNoIHNoYXJlZA0KKyAgbGlicmFyeSB3aGljaCB0 aGUgb2JqZWN0IGhhcyBiZWVuIHByZWxpbmtlZCBhZ2FpbnN0LCBpbiB0aGUg b3JkZXIgaW4NCisgIHdoaWNoIHRoZXkgYXBwZWFyIGluIHN5bWJvbCBzZWFy Y2ggc2NvcGUuIFNlY3Rpb27igJlzIHNoX2xpbmsgdmFsdWUNCisgIHNob3Vs ZCBjb250YWluIHNlY3Rpb24gaW5kZXggb2YgLmdudS5saWJzdHIgZm9yIHNo YXJlZCBsaWJyYXJpZXMgYW5kDQorICBzZWN0aW9uIGluZGV4IG9mIC5keW5z eW0gZm9yIGV4ZWN1dGFibGVzLg0KKw0KKyAgbF9uYW1lIGZpZWxkIGNvbnRh aW5zIHRoZSBkZXBlbmRlbnQgbGlicmFyeeKAmXMgbmFtZSBhcyBpbmRleCBp bnRvIHRoZQ0KKyAgc2VjdGlvbiBwb2ludGVkIGJ5c2hfbGluayBmaWVsZC4N CisNCisgIGxfdGltZV9zdGFtcCByZXNwLiBsX2NoZWNrc3VtIHNob3VsZCBj b250YWluIGNvcGllcyBvZg0KKyAgRFRfR05VX1BSRUxJTktFRCByZXNwLiBE VF9DSEVDS1NVTSB2YWx1ZXMgb2YgdGhlIGRlcGVuZGVudCBsaWJyYXJ5Lg0K Kw0KK+KAoiAuZ251LmNvbmZsaWN0DQorDQorICBUaGlzIHNlY3Rpb24gY29u dGFpbnMgb25lIEVsZk5OX1JlbGEgc3RydWN0dXJlIGZvciBlYWNoIG5lZWRl ZA0KKyAgcHJlbGluayBjb25mbGljdCBmaXh1cC4gcl9vZmZzZXQgZmllbGQg Y29udGFpbnMgdGhlIGFic29sdXRlIGFkZHJlc3MNCisgIGF0IHdoaWNoIHRo ZSBmaXh1cCBuZWVkcyB0byBiZSBhcHBsaWVkLCByX2FkZGVuZCB0aGUgdmFs dWUgdGhhdA0KKyAgbmVlZHMgdG8gYmUgc3RvcmVkIGF0IHRoYXQgbG9jYXRp b24uIEVMRk5OX1JfU1lNIG9mIHJfaW5mbyBmaWVsZA0KKyAgc2hvdWxkIGJl IHplcm8sIEVMRk5OX1JfVFlQRSBvZiByX2luZm8gZmllbGQgc2hvdWxkIGJl IGFyY2hpdGVjdHVyZQ0KKyAgc3BlY2lmaWMgcmVsb2NhdGlvbiB0eXBlIHdo aWNoIHNob3VsZCBiZSBoYW5kbGVkIHRoZSBzYW1lIGFzIGZvcg0KKyAgLnJl bGEuKiBzZWN0aW9ucyBvbiB0aGUgYXJjaGl0ZWN0dXJlLg0KKw0KKyAgRm9y IEVNX0FMUEhBIG1hY2hpbmUsIGFsbCB0eXBlcyB3aXRoIFJfQUxQSEFfSk1Q X1NMT1QgaW4gbG93ZXN0IDgNCisgIGJpdHMgb2YgRUxGNjRfUl9UWVBFIHNo b3VsZCBiZSBoYW5kbGVkIGFzIFJfQUxQSEFfSk1QX1NMT1QNCisgIHJlbG9j YXRpb24sIHRoZSB1cHBlciAyNCBiaXRzIGNvbnRhaW5zIGluZGV4IGluIG9y aWdpbmFsIC5yZWxhLnBsdA0KKyAgc2VjdGlvbiBvZiB0aGUgUl9BTFBIQV9K TVBfU0xPVCByZWxvY2F0aW9uIHRoZSBmaXh1cCB3YXMgY3JlYXRlZA0KKyAg Zm9yLg0KKw0KK+KAoiAuZ251LmxpYnN0cg0KKw0KKyAgIFRoaXMgc2VjdGlv biBjb250YWlucyBzdHJpbmdzIGZvciAuZ251LmxpYmxpc3Qgc2VjdGlvbiBp biBzaGFyZWQNCisgICBsaWJyYXJpZXMgd2hlcmUgLmdudS5saWJsaXN0IHNl Y3Rpb24gaXMgbm90IGFsbG9jYXRlZC4NCisNCivigKIgLmdudS5wcmVsaW5r X3VuZG8NCisNCisgIFRoaXMgc2VjdGlvbiBjb250YWlucyBwcmVsaW5rIHBy aXZhdGUgZGF0YSB1c2VkIGZvciBwcmVsaW5rIOKAkyB1bmRvDQorICBvcGVy YXRpb24uIFRoaXMgZGF0YSBpbmNsdWRlcyB0aGUgb3JpZ2luYWwgRWxmTk5f RWhkciBvZiB0aGUgb2JqZWN0DQorICBiZWZvcmUgcHJlbGlua2luZyBhbmQg YWxsIGl0cyBvcmlnaW5hbCBFbGZOTl9QaGRyIGFuZCBFbGZOTl9TaGRyDQor ICBoZWFkZXJzLg0KKw0KK1ByZWxpbmsgYWxzbyBkZWZpbmVzIDYgbmV3IGR5 bmFtaWMgdGFnczoNCisNCisgICNkZWZpbmUgRFRfR05VX1BSRUxJTktFRCAg MHg2ZmZmZmRmNSAvKiBQcmVsaW5raW5nIHRpbWVzdGFtcCAqLw0KKyAgI2Rl ZmluZSBEVF9HTlVfQ09ORkxJQ1RTWiAweDZmZmZmZGY2IC8qIFNpemUgb2Yg Y29uZmxpY3Qgc2VjdGlvbiAqLw0KKyAgI2RlZmluZSBEVF9HTlVfTElCTElT VFNaICAweDZmZmZmZGY3IC8qIFNpemUgb2YgbGlicmFyeSBsaXN0ICovDQor ICAjZGVmaW5lIERUX0NIRUNLU1VNICAgICAgIDB4NmZmZmZkZjggLyogTGli cmFyeSBjaGVja3N1bSAqLw0KKyAgI2RlZmluZSBEVF9HTlVfQ09ORkxJQ1Qg ICAweDZmZmZmZWY4IC8qIFN0YXJ0IG9mIGNvbmZsaWN0IHNlY3Rpb24gKi8N CisgICNkZWZpbmUgRFRfR05VX0xJQkxJU1QgICAgMHg2ZmZmZmVmOSAvKiBM aWJyYXJ5IGxpc3QgKi8NCisNCisNCitQcmVsaW5rIGR5bmFtaWMgdGFncw0K Kw0KK0RUX0dOVV9QUkVMSU5LRUQgYW5kIERUX0NIRUNLU1VNIGR5bmFtaWMg dGFncyBtdXN0IGJlIHByZXNlbnQgaW4NCitwcmVsaW5rZWQgc2hhcmVkIGxp YnJhcmllcy4NCisNCitUaGUgY29ycmVzcG9uZGluZyBkX3VuLmRfdmFsIGZp ZWxkcyBzaG91bGQgY29udGFpbiB0aW1lIHdoZW4gdGhlDQorbGlicmFyeSBo YXMgYmVlbiBwcmVsaW5rZWQgKGluIHNlY29uZHMgc2luY2UgSmFudWFyeSwg MXN0LCAxOTcwLCAwMDowMA0KK1VUQykgcmVzcC4gQ1JDMzIgY2hlY2tzdW0g b2YgYWxsIHNlY3Rpb25zIHdpdGggb25lIG9mIFNIRl9BTExPQywNCitTSEZf V1JJVEUgb3IgU0hGX0VYRUNJTlNUUiBiaXQgc2V0IHdob3NlIHR5cGUgaXMg bm90IFNIVF9OT0JJVFMsIGluDQordGhlIG9yZGVyIHRoZXkgYXBwZWFyIGlu IHRoZSBzaGFyZWQgbGlicmFyeeKAmXMgc2VjdGlvbiBoZWFkZXIgdGFibGUs DQord2l0aCBEVF9HTlVfUFJFTElOS0VEIGFuZCBEVF9DSEVDS1NVTSBkX3Vu LnZfdmFsIHZhbHVlcyBzZXQgdG8gMCBmb3INCit0aGUgdGltZSBvZiBjaGVj a3N1bSBjb21wdXRhdGlvbi4NCisNCitUaGUgRFRfR05VX0xJQkxJU1QgYW5k IERUX0dOVV9MSUJMSVNUU1ogZHluYW1pYyB0YWdzIG11c3QgYmUgcHJlc2Vu dA0KK2luIGFsbCBwcmVsaW5rZWQgZXhlY3V0YWJsZXMuDQorDQorVGhlIGRf dW4uZF9wdHIgdmFsdWUgb2YgdGhlIERUX0dOVV9MSUJMSVNUIGR5bmFtaWMg dGFnIGNvbnRhaW5zIHRoZQ0KK3ZpcnR1YWwgYWRkcmVzcyBvZiB0aGUgLmdu dS5saWJsaXN0IHNlY3Rpb24gaW4gdGhlIGV4ZWN1dGFibGUgYW5kDQorZF91 bi5kX3ZhbCBvZiBEVF9HTlVfTElCTElTVFNaIHRhZyBjb250YWlucyBpdHMg c2l6ZSBpbiBieXRlcy4NCisNCitEVF9HTlVfQ09ORkxJQ1QgYW5kIERUX0dO VV9DT05GTElDVFNaIGR5bmFtaWMgdGFncyBtYXkgYmUgcHJlc2VudCBpbg0K K3ByZWxpbmtlZCBleGVjdXRhYmxlcy4NCisNCitkX3VuLmRfcHRyIG9mIERU X0dOVV9DT05GTElDVCBkeW5hbWljIHRhZyBjb250YWlucyB0aGUgdmlydHVh bCBhZGRyZXNzDQorb2YgLmdudS5jb25mbGljdCBzZWN0aW9uIGluIHRoZSBl eGVjdXRhYmxlIChpZiBwcmVzZW50KSBhbmQgZF91bi5kX3ZhbA0KK29mIERU X0dOVV9DT05GTElDVFNaIHRhZyBjb250YWlucyBpdHMgc2l6ZSBpbiBieXRl cy4NCisNCitSZWZlcmVuY2VzDQorDQorWzFdICBTeXN0ZW0gViBBcHBsaWNh dGlvbiBCaW5hcnkgSW50ZXJmYWNlLCBFZGl0aW9uIDQuMS4NCisgICAgIGh0 dHA6Ly93d3cuY2FsZGVyYS5jb20vZGV2ZWxvcGVycy9kZXZzcGVjcy9nYWJp NDEucGRmDQorDQorWzJdICBTeXN0ZW0gViBBcHBsaWNhdGlvbiBCaW5hcnkg SW50ZXJmYWNlLCBJbnRlbCAzODYgQXJjaGl0ZWN0dXJlIFByb2Nlc3Nvcg0K KyAgICAgU3VwcGxlbWVudC4NCisgICAgIGh0dHA6Ly93d3cuY2FsZGVyYS5j b20vZGV2ZWxvcGVycy9kZXZzcGVjcy9hYmkzODYtNC5wZGYNCisNCitbM10g IFN5c3RlbSBWIEFwcGxpY2F0aW9uIEJpbmFyeSBJbnRlcmZhY2UsDQorICAg ICBBTUQ2NCBBcmNoaXRlY3R1cmUgUHJvY2Vzc29yIFN1cHBsZW1lbnQuDQor ICAgICBodHRwOi8vd3d3Lng4Ni02NC5vcmcvY2dpLWJpbi9jdnN3ZWIuY2dp L3g4Ni02NC1BQkkvDQorDQorWzRdICBTeXN0ZW0gViBBcHBsaWNhdGlvbiBC aW5hcnkgSW50ZXJmYWNlLA0KKyAgICAgSW50ZWwgSXRhbml1bSBBcmNoaXRl Y3R1cmUgUHJvY2Vzc29yIFN1cHBsZW1lbnQsIEludGVsIENvcnBvcmF0aW9u LCAyMDAxLg0KKyAgICAgaHR0cDovL3JlZnNwZWNzLmZyZWVzdGFuZGFyZHMu b3JnL2VsZi9JQTY0LVN5c1YtcHNBQkkucGRmDQorDQorWzVdICBTdGV2ZSBa dWNrZXIsIEthcmkgS2FyaGksIFN5c3RlbSBWIEFwcGxpY2F0aW9uIEJpbmFy eSBJbnRlcmZhY2UsIFBvd2VyUEMNCisgICAgIEFyY2hpdGVjdHVyZSBQcm9j ZXNzb3IgU3VwcGxlbWVudCwgU3VuU29mdCwgSUJNLCAxOTk1Lg0KKyAgICAg aHR0cDovL3JlZnNwZWNzLmZyZWVzdGFuZGFyZHMub3JnL2VsZi9lbGZzcGVj X3BwYy5wZGYNCisNCitbNl0gIFN5c3RlbSBWIEFwcGxpY2F0aW9uIEJpbmFy eSBJbnRlcmZhY2UsIFBvd2VyUEM2NCBBcmNoaXRlY3R1cmUgUHJvY2Vzc29y DQorICAgICBTdXBwbGVtZW50Lg0KKyAgICAgZnRwOi8vZnRwLmxpbnV4cHBj NjQub3JnL3B1Yi9wZW9wbGUvYW1vZHJhL1BQQy1lbGY2NGFiaS50eHQuZ3oN CisNCitbN10gIFN5c3RlbSBWIEFwcGxpY2F0aW9uIEJpbmFyeSBJbnRlcmZh Y2UsIEFSTSBBcmNoaXRlY3R1cmUgUHJvY2Vzc29yIFN1cHBsZW1lbnQuDQor ICAgICBodHRwOi8vd3d3LmFybS5jb20vc3VwcG9ydC81NjZGSFQvJEZpbGUv QVJNRUxGLnBkZg0KKw0KK1s4XSAgU1BBUkMgQ29tcGxpYW5jZSBEZWZpbml0 aW9uLCBWZXJzaW9uIDIuNC4xLA0KKyAgICAgU1BBUkMgSW50ZXJuYXRpb25h bCwgSW5jLiwgMTk5OS4NCisgICAgIGh0dHA6Ly93d3cuc3BhcmMuY29tL3N0 YW5kYXJkcy9TQ0QuMi40LjEucHMuWg0KKw0KK1s5XSAgVWxyaWNoIERyZXBw ZXIsIEhvdyBUbyBXcml0ZSBTaGFyZWQgTGlicmFyaWVzLCBSZWQgSGF0LCBJ bmMuLCAyMDAzLg0KKyAgICAgaHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2Ry ZXBwZXIvZHNvaG93dG8ucGRmDQorDQorWzEwXSBMaW5rZXIgQW5kIExpYnJh cnkgR3VpZGUsIFN1biBNaWNyb3N5c3RlbXMsIDIwMDIuDQorICAgICBodHRw Oi8vZG9jcy5zdW4uY29tL2RiL2RvYy84MTYtMTM4Ng0KKw0KK1sxMV0gSm9o biBSLiBMZXZpbmUsIExpbmtlcnMgYW5kIExvYWRlcnMsIDE5OTkuDQorICAg ICBodHRwOi8vd3d3Lmd6bGludXgub3JnL2RvY3MvY2F0ZWdvcnkvZGV2L2Mv bGlua2VyYW5kbG9hZGVyLnBkZg0KKw0KK1sxMl0gVWxyaWNoIERyZXBwZXIs IEVMRiBIYW5kbGluZyBGb3IgVGhyZWFkLUxvY2FsIFN0b3JhZ2UsDQorICAg ICBSZWQgSGF0LCBJbmMuLCAyMDAzLg0KKyAgICAgaHR0cDovL3Blb3BsZS5y ZWRoYXQuY29tL2RyZXBwZXIvdGxzLnBkZg0KKw0KK1sxM10gQWxhbiBNb2Ry YSwgUG93ZXJQQyBTcGVjaWZpYyBUaHJlYWQgTG9jYWwgU3RvcmFnZSBBQkks IDIwMDMuDQorICAgICBmdHA6Ly9mdHAubGludXhwcGM2NC5vcmcvcHViL3Bl b3BsZS9hbW9kcmEvcHBjMzJ0bHMudHh0Lmd6DQorDQorWzE0XSBBbGFuIE1v ZHJhLCBQb3dlclBDNjQgU3BlY2lmaWMgVGhyZWFkIExvY2FsIFN0b3JhZ2Ug QUJJLCAyMDAzLg0KKyAgICAgZnRwOi8vZnRwLmxpbnV4cHBjNjQub3JnL3B1 Yi9wZW9wbGUvYW1vZHJhL3BwYzY0dGxzLnR4dC5neg0KKw0KK1sxNV0gRFdB UkYgRGVidWdnaW5nIEluZm9ybWF0aW9uIEZvcm1hdCBWZXJzaW9uIDIuDQor ICAgICBodHRwOi8vd3d3LmVhZ2VyY29uLmNvbS9kd2FyZi9kd2FyZi0yLjAu MC5wZGYNCisNCitbMTZdIERXQVJGIERlYnVnZ2luZyBJbmZvcm1hdGlvbiBG b3JtYXQgVmVyc2lvbiAzLCBEcmFmdCwgMjAwMS4NCisgICAgIGh0dHA6Ly9y ZWFsaXR5LnNnaXdlYi5vcmcvZGF2ZWEvZHdhcmYzLWRyYWZ0OC0wMTExMjUu cGRmDQorDQorWzE3XSBUaGUg4oCdc3RhYnPigJ0gZGVidWdnaW5nIGluZm9y bWF0aW9uIGZvcm1hdC4NCisgICAgIGh0dHA6Ly9zb3VyY2VzLnJlZGhhdC5j b20vY2dpLWJpbi9jdnN3ZWIuY2dpL3NyYy9nZGIvZG9jL3N0YWJzLnRleGlu Zm8/Y3Zzcm9vdD1zcmMNCisNCisyMDAzLTExLTAzIEZpcnN0IGRyYWZ0Lg0K LS0gDQoyLjIwLjENCg0K --8323329-1404142571-1607533163=:28382--