From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [IPv6:2a00:1098:0:82:1000:25:2eeb:e3e3]) by sourceware.org (Postfix) with ESMTPS id CCB6A3973038 for ; Fri, 27 Nov 2020 15:40:19 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org CCB6A3973038 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 C55FD1F40EA7; Fri, 27 Nov 2020 15:40:18 +0000 (GMT) Date: Fri, 27 Nov 2020 15:40:16 +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: <87a6xj2tnm.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> User-Agent: Alpine 2.21 (DEB 202 2017-01-01) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="8323329-365934760-1606491618=:28382" X-Spam-Status: No, score=-10.4 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, URIBL_BLACK 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: Fri, 27 Nov 2020 15:40:34 -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-365934760-1606491618=:28382 Content-Type: text/plain; charset=US-ASCII; format=flowed Incorporated ABI docs feedback, added a text version of the perlink documentation. --8323329-365934760-1606491618=:28382 Content-Type: text/x-diff; name=0001-Incorporate-feedback-clarifications-from-upstream.patch Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename=0001-Incorporate-feedback-clarifications-from-upstream.patch RnJvbSAyMzZmODFjZTFiYzkwZWE5Zjk0NzcxZTQ5YmQ1OTkwYjNmZGY4ZjY0 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQ0KRnJvbTogPT9VVEYtOD9xP1Zp dmVrPTIwRGFzPUMyPUEwTW9oYXBhdHJhPz0gPHZpdmVrQGNvbGxhYm9yYS5j b20+DQpEYXRlOiBXZWQsIDI1IE5vdiAyMDIwIDE3OjA3OjU1ICswMDAwDQpT dWJqZWN0OiBbUEFUQ0ggMS8yXSBJbmNvcnBvcmF0ZSBmZWVkYmFjayAmIGNs YXJpZmljYXRpb25zIGZyb20gdXBzdHJlYW0NCg0KLS0tDQogcHJvZ3JhbS1s b2FkaW5nLWFuZC1keW5hbWljLWxpbmtpbmcudHh0IHwgNzkgKysrKysrKysr KysrKysrKystLS0tLS0tLQ0KIDEgZmlsZSBjaGFuZ2VkLCA1MyBpbnNlcnRp b25zKCspLCAyNiBkZWxldGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBhL3Byb2dy YW0tbG9hZGluZy1hbmQtZHluYW1pYy1saW5raW5nLnR4dCBiL3Byb2dyYW0t bG9hZGluZy1hbmQtZHluYW1pYy1saW5raW5nLnR4dA0KaW5kZXggYTM3YWMz NC4uYTA3YzE5NSAxMDA2NDQNCi0tLSBhL3Byb2dyYW0tbG9hZGluZy1hbmQt ZHluYW1pYy1saW5raW5nLnR4dA0KKysrIGIvcHJvZ3JhbS1sb2FkaW5nLWFu ZC1keW5hbWljLWxpbmtpbmcudHh0DQpAQCAtMTAsOCArMTAsOCBAQCBQVF9T VU5XX0VIX0ZSQU1FIDB4NjQ3NGU1NTANCiAgIFNlZ21lbnQgY29udGFpbnMg dGhlIEVIX0ZSQU1FX0hEUiBzZWN0aW9uIChzdGFjayBmcmFtZSB1bndpbmQg aW5mb3JtYXRpb24pDQogDQogICBOT1RFOiBUaGUgdmlydHVhbCBhZGRyZXNz IHJhbmdlIHJlZmVycmVkIHRvIGJ5IFBUX0dOVV9FSF9GUkFNRSBtdXN0IGJl DQotICBjb3ZlcmVkIGJ5IGEgc2VwYXJhdGUgUFRfTE9BRCBoZWFkZXIgLSBQ VF9HTlVfRUhfRlJBTUUgb24gaXRzIG93biBkb2VzDQotICBub3QgdHJpZ2dl ciB0aGUgbWFwcGluZy9sb2FkaW5nIG9mIGFueSBkYXRhIGludG8gbWVtb3J5 Lg0KKyAgY292ZXJlZCBieSBhIFBUX0xPQUQgZW50cnkgLSBQVF9HTlVfRUhf RlJBTUUgb24gaXRzIG93biBkb2VzIG5vdCB0cmlnZ2VyDQorICB0aGUgbWFw cGluZy9sb2FkaW5nIG9mIGFueSBkYXRhLg0KIA0KICAgUFRfU1VOV19FSF9G UkFNRSBpcyB1c2VkIGJ5IGEgbm9uLUdOVSBpbXBsZW1lbnRhdGlvbiBmb3Ig dGhlIHNhbWUgcHVycG9zZSwNCiAgIGFuZCBoYXMgdGhlIHNhbWUgdmFsdWUg KGFsdGhvdWdoIHRoaXMgZG9lcyBub3QgaW1wbHkgY29tcGF0aWJsZSBjb250 ZW50cykuDQpAQCAtNDIsNyArNDIsOSBAQCBQVF9HTlVfUkVMUk8gICAgIDB4 NjQ3NGU1NTINCiAgIFRoZSBzcGVjaWZpZWQgc2VnbWVudCBzaG91bGQgYmUg bWFkZSByZWFkLW9ubHkgb25jZSBydW4tdGltZSBsaW5raW5nDQogICBvZiB0 aGlzIG9iamVjdCBoYXMgY29tcGxldGVkLg0KIA0KLSAgRE9DVU1FTlRNRTog SW50ZXJhY3Rpb24gd2l0aCBQVF9MT0FEIGhlcmUNCisgIEFzIHdpdGggUFRf R05VX0VIX0ZSQU1FIHRoaXMgaGVhZGVyIGVudHJ5IGRvZXMgTk9UIGd1YXJh bnRlZSB0aGF0IHRoZQ0KKyAgcmFuZ2UgaW4gcXVlc3Rpb24gaXMgbG9hZGVk OiBUaGF0IG11c3QgYmUgZW5zdXJlZCB2aWEgYSBQVF9MT0FEIGVudHJ5DQor ICB3aGljaCBjb3ZlcnMgdGhlIHJhbmdlLg0KIA0KICAgUmVmZXJlbmNlOiBo dHRwczovL3JlZnNwZWNzLmxpbnV4Zm91bmRhdGlvbi5vcmcvTFNCXzUuMC4w L0xTQi1Db3JlLWdlbmVyaWMvTFNCLUNvcmUtZ2VuZXJpYy5odG1sI1BST0dI RUFERVINCiANCkBAIC0xMzksNyArMTQxLDggQEAgVGhlIHZhbHVlcyBhcmUg dHlwaWNhbGx5IGZvdW5kIGluIHRoZSBFbGZXKER5bikuZF90YWcgbWVtYmVy Lg0KIERUX0dOVV9GTEFHU18xICAgIDB4NmZmZmZkZjQNCiANCiAgIFNpbWls YXIgdG8gRFRfRkxBR1MgYW5kIERUX0ZMQUdTXzEsIGJ1dCBEVF9GTEFHUyBp cyBnZW5lcmljIGFuZA0KLSAgdGhlIERUX0ZMQUdTXzEgYml0IG1hc2sgaGFz IGJlZW4gZXhoYXVzdGVkIChsYXN0IGJpdCBjbGFpbWVkIGJ5IFNvbGFyaXMp Lg0KKyAgdGhlIERUX0ZMQUdTXzEgYml0IG1hc2sgaGFzIGJlZW4gZXhoYXVz dGVkIChsYXN0IGF2YWlsYWJsZSBiaXQNCisgIGNsYWltZWQgYnkgU29sYXJp cykuDQogDQogICBDdXJyZW50bHkgc3VwcG9ydHMgdGhlIGZvbGxvd2luZyBm bGFnIGJpdChzKSBpbiBpdHMgZF92YWwgdmFsdWU6DQogDQpAQCAtMTY1LDE2 ICsxNjgsMTkgQEAgRFRfR05VX0ZMQUdTXzEgICAgMHg2ZmZmZmRmNA0KIA0K ICAgVGhpcyBtZWNoYW5pc20gaXMgdGhlIGJhc2lzIGZvciBpc29sYXRpb24g b2YgTERfQVVESVQgbGlicmFyaWVzIChmb3IgZXhhbXBsZSkuDQogDQotICBX aGlsZSB0aGlzIGlzIGdlbmVyYWxseSBkZXNpcmFibGUgc29tZSBsaWJyYXJp ZXMgZG8gbm90IGJlaGF2ZSB3ZWxsIHVuZGVyIHRoZXNlDQotICBjb25kaXRp b25zIC0gaW4gcGFydGljdWxhciBsaWJjIChtYWxsb2MvZnJlZSBnZXQgdXBz ZXQgd2hlbiB0aGV5IGludGVyYWN0IHdpdGgNCi0gIGluZGVwZW5kZW50IGNv cGllcyBvZiB0aGVtc2VsdmVzIHNpbmNlIHRoZXkgaGF2ZSBubyBrbm93bGVk Z2Ugb2Ygb25lIGFub3RoZXIncw0KLSAgbWVtb3J5IGFjY291bnRpbmcpIGFu ZCBsaWJwdGhyZWFkICh3aGljaCB0ZW5kcyB0byBkZWFkbG9jayBvZiB0d28g ZGlmZmVyZW50DQotICBuYW1lc3BhY2VzIGF0dGVtcHQgdG8gaW5pdGlhbGlz ZSB0aHJlYWRzYWZlIGxvY2tpbmcpLiBERl9HTlVfMV9VTklRVUUgaXMgdXNl ZCB0bw0KLSAgbWFyayBzdWNoIGxpYnJhcmllcyBzbyB0aGF0IHdoZW4gdGhl eSBhcmUgbG9hZGVkIG9ubHkgb25lIGNvcHkgKHdoaWNoIHJlc2lkZXMgaW4N Ci0gIExNX0lEX0JBU0UpIGlzIG1hcHBlZCwgYW5kIGFsbCBuYW1lc3BhY2Vz IHVzZSB0aGF0IGNvcHkgKHVubGVzcyBzdWNoIHNoYXJpbmcgaXMNCi0gIGV4 cGxpY2l0bHkgc3VwcHJlc3NlZCwgc3VjaCBhcyBmb3IgTERfQVVESVQgbGli cmFyaWVzKS4NCisgIFdoaWxlIHRoaXMgaXMgZ2VuZXJhbGx5IGRlc2lyYWJs ZSBzb21lIGxpYnJhcmllcyBkbyBub3QgYmVoYXZlIHdlbGwNCisgIHVuZGVy IHRoZXNlIGNvbmRpdGlvbnMgLSBpbiBwYXJ0aWN1bGFyIGxpYmMgKG1hbGxv Yy9mcmVlIGdldCB1cHNldA0KKyAgd2hlbiB0aGV5IGludGVyYWN0IHdpdGgg aW5kZXBlbmRlbnQgY29waWVzIG9mIHRoZW1zZWx2ZXMgc2luY2UgdGhleQ0K KyAgaGF2ZSBubyBrbm93bGVkZ2Ugb2Ygb25lIGFub3RoZXIncyBtZW1vcnkg YWNjb3VudGluZykgYW5kIGxpYnB0aHJlYWQNCisgICh3aGljaCB0ZW5kcyB0 byBkZWFkbG9jayBvZiB0d28gZGlmZmVyZW50IG5hbWVzcGFjZXMgYXR0ZW1w dCB0bw0KKyAgaW5pdGlhbGlzZSB0aHJlYWQgbWV0YWRhdGEpLg0KIA0KLSAg VGhpcyBiZWhhdmlvdXIgY2FuIGFsd2F5cyBiZSBleHBsaWNpdGx5IG92ZXJy aWRkZW4gYnkgdGhlIGNhbGxlciBvZiBkbG1vcGVuKDMpLg0KKyAgREZfR05V XzFfVU5JUVVFIGlzIHVzZWQgdG8gbWFyayBzdWNoIGxpYnJhcmllcyBzbyB0 aGF0IHdoZW4gdGhleSBhcmUNCisgIGxvYWRlZCBvbmx5IG9uZSBjb3B5ICh3 aGljaCByZXNpZGVzIGluIExNX0lEX0JBU0UpIGlzIG1hcHBlZCwgYW5kDQor ICBhbGwgbmFtZXNwYWNlcyB1c2UgdGhhdCBjb3B5ICh1bmxlc3Mgc3VjaCBz aGFyaW5nIGlzIGV4cGxpY2l0bHkNCisgIHN1cHByZXNzZWQsIHN1Y2ggYXMg Zm9yIExEX0FVRElUIGxpYnJhcmllcykuDQorDQorICBUaGlzIGJlaGF2aW91 ciBjYW4gYmUgZXhwbGljaXRseSBvdmVycmlkZGVuIGJ5IHRoZSBjYWxsZXIg b2YgZGxtb3BlbigzKS4NCiANCiAgIFJlZmVyZW5jZTogVGhpcyBkb2N1bWVu dCBpcyBjYW5vbmljYWwuDQogDQpAQCAtMTg2LDcgKzE5Miw3IEBAIERUX0dO VV9QUkVMSU5LRUQgIDB4NmZmZmZkZjUNCiAgIFRoZSBkX3ZhbCBmaWVsZCBj b250YWlucyBhIHRpbWVfdCB2YWx1ZSBnaXZpbmcgdGhlIFVUQyB0aW1lIGF0 IHdoaWNoIHRoZQ0KICAgb2JqZWN0IHdhcyAocHJlKWxpbmtlZC4NCiANCi0g IFJlZmVyZW5jZTogRE9DVU1FTlRNRQ0KKyAgUmVmZXJlbmNlOiBTZWUgdGhl IGFjY29tcGFueWluZyBwcmVsaW5rIGRvY3VtZW50IGZvciBkZXRhaWxzLg0K IA0KIERUX0dOVV9DT05GTElDVFNaIDB4NmZmZmZkZjYNCiANCkBAIC0yMzMs MTIgKzIzOSwxMyBAQCBEVF9HTlVfSEFTSCAgICAgICAweDZmZmZmZWY1DQog ICBUaGUgZF9wdHIgdmFsdWUgZ2l2ZXMgdGhlIGxvY2F0aW9uIG9mIHRoZSBH TlUgc3R5bGUgc3ltYm9sIGhhc2ggdGFibGUuDQogDQogICBUaGUgR05VIGhh c2ggb2YgYSBzeW1ib2wgaXMgY29tcHV0ZWQgYXMgZm9sbG93czoNCi0gIC0g ZXh0cmFjdCB0aGUgTkFNRSBvZiB0aGUgc3ltYm9sDQotICAgIC0gZXhhbXBs ZXM6ICdmb29AdmVyc2lvbi1pbmZvJyBiZWNvbWVzICdmb28nOyAnYmFyJyBy ZW1haW5zICdiYXInDQorICAtIHRha2UgdGhlIE5BTUUgb2YgdGhlIHN5bWJv bCAoV0lUSE9VVCBhbnkgQHZlcnNpb24gc3VmZml4KQ0KICAgICAtIHVuc2ln bmVkIGxvbmcgaCDihpAgNTM4MQ0KICAgICAtIGZvciBlYWNoIHVuc2lnbmVk IGNoYXJhY3RlciBDIGluIE5BTUUsIHN0YXJ0aW5nIGF0IHBvc2l0aW9uIDA6 DQogICAgICAgLSBoIOKGkCAoaCA8PCA1KSArIGggKyBDOw0KLSAgICAtIEhB U0gg4oaQIGggJiAweGZmZmZmZmZmIC8vIDMyIGJpdCB2YWx1ZQ0KKyAgICAg ICAgT1INCisgICAgICAgIGgg4oaQIChoICogMzMpICsgQzsNCisgICAgLSB1 aW50MzJfdCBIQVNIIOKGkCBoDQogDQogICBIYXNoIFRhYmxlIGNvbnRlbnRz Og0KIA0KQEAgLTI4NSw3ICsyOTIsNyBAQCBEVF9HTlVfSEFTSCAgICAgICAw eDZmZmZmZWY1DQogDQogICAtIGJsb29tICAgICAgICA6IEVsZlcoQWRkcilb IGJpdG1hc2std29yZHMgXQ0KIA0KLSAgRm9yIGVhY2ggc3ltYm9sIFtuYW1l XSBTIHRoZSBmb2xsb3dpbmcgaXMgY2FycmllZCBvdXQ6DQorICBGb3IgZWFj aCBzeW1ib2wgW25hbWVdIFMgdGhlIGZvbGxvd2luZyBpcyBjYXJyaWVkIG91 dCAoYnkgdGhlIGxpbmsgZWRpdG9yKToNCiAgICAgLSBDIOKGkCBfX0VMRl9O QVRJVkVfQ0xBU1MgLyogaWUgMzIgb24gRUxGMzIsIDY0IG9uIEVMRjY0ICov DQogICAgIC0gSCDihpAgZ251LWhhc2goIFMgKQ0KICAgICAtIEJXT1JEIOKG kCAoSCAvIEMpICYgKGJpdG1hc2std29yZHMgLSAxKQ0KQEAgLTMyOSw3ICsz MzYsMTUgQEAgRFRfR05VX0hBU0ggICAgICAgMHg2ZmZmZmVmNQ0KICAgLSBC VUNLRVQg4oaQIENIQVNIICUgbmJ1Y2tldHMNCiAgIC0gQ0lOREVYIOKGkCBw b3NpdGlvbiBvZiB0aGUgc3ltYm9sIF93aXRoaW5fIGl0cyBidWNrZXQNCiAg ICAgICAgICAgICAgIDAgZm9yIHRoZSBmaXJzdCBzeW1ib2wsIDEgZm9yIHRo ZSBzZWNvbmQgYW5kIHNvIGZvcnRoDQotICAtIGlmIHRoaXMgaXMgdGhlIGxh c3Qgc3ltYm9sIGluIHRoZSBidWNrZXQ6DQorDQorICAgIFRoZSBjaGFpbiBk YXRhIGFyZSBzdG9yZWQgYXMgYSBzaW5nbGUgbGluZWFyIGNodW5rIHdpdGgg ZWFjaA0KKyAgICBwc2V1ZG8taGFzaCB2YWx1ZSBpbW1lZGlhdGVseSBmb2xs b3dpbmcgYW5vdGhlci4gQ0lOREVYIGdpdmVzIHRoZQ0KKyAgICBwb3NpdGlv biBvZiBhIHBzZXVkby1oYXNoIGluc2lkZSB0aGUgYnVja2V0IHRvIHdoaWNo IGl0IGJlbG9uZ3MsDQorICAgIHJhdGhlciB0aGFuIGl0cyBwb3NpdGlvbiBp biB0aGUgY2hhaW4gZGF0YSBhcmVhIGFzIGEgd2hvbGUuDQorDQorICAgIFsg YjBoMCB8IGIwaDEgfCBiMGgzIHwgYjFoMCB8IOKApg0KKw0KKyAgLSBpZiBh IHBzZXVkby1oYXNoIHZhbHVlIGlzIHRoZSBsYXN0IG9uZSBpbiB0aGUgYnVj a2V0Og0KICAgICAtIENIQVNIIOKGkCBDSEFTSCB8IDEgIC8qIHNldCB0aGUg bGVhc3QgYml0ICovDQogICAtIGVsc2UNCiAgICAgLSBDSEFTSCDihpAgQ0hB U0ggJiB+MSAvKiB1bnNldCB0aGUgbGVhc3QgYml0ICovDQpAQCAtMzU5LDcg KzM3NCw3IEBAIFNIVF9HTlVfSU5DUkVNRU5UQUxfSU5QVVRTIDB4NmZmZjQ3 MDANCiANCiAgIFNlY3Rpb24gbmFtZTogIi5nbnVfaW5jcmVtZW50YWxfaW5w dXRzIg0KIA0KLSAgQ3VycmVudGx5IHVzZWQgaW50ZXJuYWxseSBmb3IgaW5j cmVtZW50YWwgbGlua2luZyBieSBnb2xkLg0KKyAgQ3VycmVudGx5IHVzZWQg aW50ZXJuYWxseSBkdXJpbmcgaW5jcmVtZW50YWwgbGlua2luZyBieSBnb2xk Lg0KIA0KIFNIVF9HTlVfQVRUUklCVVRFUyAgICAgICAgIDB4NmZmZmZmZjUN CiANCkBAIC0zNzUsNyArMzkwLDcgQEAgU0hUX0dOVV9BVFRSSUJVVEVTICAg ICAgICAgMHg2ZmZmZmZmNQ0KICAgICAtIHN0YXJ0aW5nIHdpdGggYSBcMCB0 ZXJtaW5hdGVkIG5hbWUNCiAgICAgLSBhdCBsZWFzdCA2IGJ5dGVzIG9mIHRh Zy1ieXRlK3ZhbHVlDQogICAgICAgLSBhIHRhZyBieXRlDQotICAgICAgLSBh IDQgYnl0ZSBuYXRpdmUgaW50ZWdlciBzaXplIChpbmNsdWRpbmcgdGhlIHRh ZyBieXRlIGFuZCB0aGUgc2l6ZSBpdHNlbGYpDQorICAgICAgLSBhIDQgYnl0 ZSBuYXRpdmUgaW50ZWdlciBzaXplIChpbmNsdWRpbmcgdGhlIHRhZyBieXRl ICYgdGhlIHNpemUgaXRzZWxmKQ0KICAgICAgICAgLSBpZiB0aGUgdGFnIGlz IDIgb3IgMzogYSBMRUIxMjggZW5jb2RlZCB2YWx1ZSBzdG9yZWQgaW4gdGhl IHJlbWFpbmluZyBzcGFjZQ0KICAgICAgIC0gRE9DVU1FTlRNRTogc29tZSBh dHRyaWJ1dGUgYnl0ZXM/IHJldmVyc2UgZW5naW5lZXIgZnJvbSByZWFkZWxm Pw0KIA0KQEAgLTQ0Nyw3ICs0NjIsMTEgQEAgU0hUX0dOVV92ZXJkZWYgICAg ICAgICAgICAgMHg2ZmZmZmZmZA0KICAgICBWRVJfTkRYX0xPQ0FMICAgICAw ICAgICAgLy8gcHJpdmF0ZSBzeW1ib2wNCiAgICAgVkVSX05EWF9HTE9CQUwg ICAgMSAgICAgIC8vIGdsb2JhbCBzeW1ib2wNCiAgICAgVkVSX05EWF9MT1JF U0VSVkUgMHhmZjAwIC8vIEJlZ2lubmluZyBvZiByZXNlcnZlZCBlbnRyaWVz DQotICAgIFZFUl9ORFhfRUxJTUlOQVRFIDB4ZmYwMSAvLyBET0NVTUVOVE1F OiBTeW1ib2wgc2hvdWxkIGJlIGVsaW1pbmF0ZWQNCisgICAgVkVSX05EWF9F TElNSU5BVEUgMHhmZjAxIC8vDQorDQorICAgIERPQ1VNRU5UTUU6IFZFUl9O RFhfRUxJTUlOQVRFIGRvZXMgbm90IGFwcGVhciB0byBiZSBpbXBsZW1lbnRl ZA0KKyAgICBpbiBnbGliYzogSWYgYW4gaW1wbGVtZW50YXRpb24gZXhpc3Rz IGl0cyBzZW1hbnRpY3Mgc2hvdWxkIGJlDQorICAgIHJldmVyc2UtZW5naW5l ZXJlZCBmcm9tIHRoZXJlIGFuZCBleHBsYWluZWQgaGVyZS4NCiANCiAgIEVs ZlcoVmVyZGF1eCk6DQogDQpAQCAtNDk5LDkgKzUxOCwxNyBAQCBTSFRfR05V X3Zlcm5lZWQgICAgICAgICAgICAweDZmZmZmZmZlDQogICAgICAgICAgICAg ICAgICAgICAgIE5vdCBmYXRhbCBpZiB0aGlzIHN5bWJvbCt2ZXJzaW9uIGlz IG1pc3NpbmcuDQogDQogICB2bmFfb3RoZXI6DQotICAgIElmIGJpdCAxNSAo MHg4MDAwKSBpcyBzZXQgdGhlbiB0aGlzIHN5bWJvbCBpcyBoaWRkZW4uDQot ICAgIHZuYV9vdGhlciBzaG91bGQgdGhlcmVmb3JlIGJlIGJpdHdpc2UtYW5k ZWQgd2l0aCAweDdmZmYgYmVmb3JlDQotICAgIGNvbXBhcmlzb24gd2l0aCB0 aGUgdmFsdWUgZnJvbSBTSFRfR05VX3ZlcnN5bS4NCisgICAgVGhpcyB2YWx1 ZSBpcyB1c2VkIHRvIGxvb2sgdXAgdGhlIHN5bWJvbCB2ZXJzaW9uIGhhc2g6 IEl0IGdpdmVzDQorICAgIHRoZSBwb3NpdGlvbiBvZiB0aGUgaGFzaCBpbiB0 aGUgdmVyc2lvbiBsb29rdXAgdGFibGUuDQorDQorICAgIEJpdCAxNSAoMHg4 MDAwKSBpcyBhIGZsYWcgYml0IGFuZCBzaG91bGQgYmUgbWFza2VkIG91dCBv Zg0KKyAgICB0aGlzIHZhbHVlIGJlZm9yZSB1c2luZyBpdCBhcyBhbiBpbmRl eCAoZWcgYnkgYml0d2lzZS1hbmQtaW5nDQorICAgIGl0cyB2YWx1ZSB3aXRo IDB4N2ZmZikNCisNCisgICAgSWYgYml0IDE1ICgweDgwMDApIGlzIHNldCB0 aGVuIHRoaXMgc3ltYm9sIGlzIGhpZGRlbiBhbmQgaXMNCisgICAgbmV2ZXIg YW4gYWNjZXB0YWJsZSBjYW5kaWRhdGUgZm9yIG1hdGNoaW5nIHZlcnNpb24g Y3JpdGVyaWEuDQorDQorICAgIFJlZmVyZW5jZTogZ2xpYmM6IGVsZi9kbC12 ZXJzaW9uLmM7IGVsZi9kbC1sb29rdXAuYw0KIA0KIFNIVF9HTlVfdmVyc3lt ICAgICAgICAgICAgIDB4NmZmZmZmZmYNCiANCkBAIC01MjcsNyArNTU0LDcg QEAgU0hUX0dOVV92ZXJzeW0gICAgICAgICAgICAgMHg2ZmZmZmZmZg0KIFR3 byB2YWx1ZXMgYXJlIHJlc2VydmVkOg0KIA0KICAgVkVSX05EWF9MT0NBTCAg MCAtIFRoZSBzeW1ib2wgaXMgcHJpdmF0ZSwgYW5kIGlzIG5vdCBhdmFpbGFi bGUgb3V0c2lkZSB0aGlzIG9iamVjdC4NCi0gIFZFUl9ORFhfR0xPQkFMIDEg LSBUaGUgc3ltYm9sIGlzIGdsb2JhbGx5IGF2YWlsYWJsZSAoaWUgbm90IHZl cnNpb25lZD8gRE9DVU1FTlRNRSkuDQorICBWRVJfTkRYX0dMT0JBTCAxIC0g VGhlIHN5bWJvbCBpcyBnbG9iYWxseSBhdmFpbGFibGUgKGllIHRoZSBiYXNl IG9yIGRlZmF1bHQgdmVyc2lvbikuDQogDQogTm90ZSBzZWN0aW9uIGRlc2Ny aXB0b3JzIChTSFRfTk9URSBleHRlbnNpb25zKQ0KID09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCi0tIA0KMi4yMC4x DQoNCg== --8323329-365934760-1606491618=:28382 Content-Type: text/x-diff; name=0002-Add-prelink-documentationa.patch Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename=0002-Add-prelink-documentationa.patch RnJvbSA2ZDFhOTg4NWEzODUxOGMyZGY2ZTc4NGYyM2JlODJmYTAwNDg1MmNl IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQ0KRnJvbTogPT9VVEYtOD9xP1Zp dmVrPTIwRGFzPUMyPUEwTW9oYXBhdHJhPz0gPHZpdmVrQGNvbGxhYm9yYS5j b20+DQpEYXRlOiBXZWQsIDI1IE5vdiAyMDIwIDE3OjA4OjI0ICswMDAwDQpT dWJqZWN0OiBbUEFUQ0ggMi8yXSBBZGQgcHJlbGluayBkb2N1bWVudGF0aW9u YQ0KTUlNRS1WZXJzaW9uOiAxLjANCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFp bjsgY2hhcnNldD1VVEYtOA0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzog OGJpdA0KDQpFeHRyYWN0ZWQgZnJvbSBwcmVsaW5rLnBkZiBieSBKYWt1YiBK ZWzDrW5layAtIGFwcGVhcnMgdG8gYmUNCnRoZSBjbG9zZXN0IHRoaW5nIHRv IGEgY2Fub25pY2FsIGRlc2NyaXB0aW9uIHdlIGNhbiBmaW5kLg0KLS0tDQog cHJlbGluay50eHQgfCAzNTQ5ICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKw0KIDEgZmlsZSBjaGFuZ2VkLCAz NTQ5IGluc2VydGlvbnMoKykNCiBjcmVhdGUgbW9kZSAxMDA2NDQgcHJlbGlu ay50eHQNCg0KZGlmZiAtLWdpdCBhL3ByZWxpbmsudHh0IGIvcHJlbGluay50 eHQNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwLi45YmM0 ZDBiDQotLS0gL2Rldi9udWxsDQorKysgYi9wcmVsaW5rLnR4dA0KQEAgLTAs MCArMSwzNTQ5IEBADQorUHJlbGluaw0KKw0KK0pha3ViIEplbMOtbmVrDQor UmVkIEhhdCwgSW5jLg0KK2pha3ViQHJlZGhhdC5jb20NCisNCitbIFRoaXMg dmVyc2lvbiBleHRyYWN0ZWQgZnJvbSBQREYgd2l0aCBwZGZ0b3RleHQgYW5k IGVkaXRlZCBmb3IgY2xhcml0eSBdDQorDQorTm92ZW1iZXIgMTksIDIwMjAN CitBYnN0cmFjdA0KKw0KK1ByZWxpbmsgaXMgYSB0b29sIGRlc2lnbmVkIHRv IHNwZWVkIHVwIGR5bmFtaWMgbGlua2luZyBvZiBFTEYgcHJvZ3JhbXMNCitv biB2YXJpb3VzIExpbnV4IGFyY2hpdGVjdHVyZXMuIEl0IHNwZWVkcyB1cCBz dGFydCB1cCBvZg0KKw0KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0NCisNCisxIFByZWZhY2UNCisNCitJbiAxOTk1LCBMaW51eCBjaGFuZ2Vk IGl0cyBiaW5hcnkgZm9ybWF0IGZyb20gYS5vdXQgdG8gRUxGLg0KKw0KK1Ro ZSBhLm91dCBiaW5hcnkgZm9ybWF0IHdhcyB2ZXJ5IGluZmxleGlibGUgYW5k IHNoYXJlZCBsaWJyYXJpZXMgd2VyZSBwcmV0dHkNCitoYXJkIHRvIGJ1aWxk LiBMaW51eOKAmXMgc2hhcmVkIGxpYnJhcmllcyBpbiBhLm91dCBhcmUgcG9z aXRpb24gZGVwZW5kZW50IGFuZA0KK2VhY2ggaGFkIHRvIGJlIGdpdmVuIGEg dW5pcXVlIHZpcnR1YWwgYWRkcmVzcyBzcGFjZSBzbG90IGF0IGxpbmsgdGlt ZS4NCisNCitNYWludGFpbmluZyB0aGVzZSBhc3NpZ25tZW50cyB3YXMgcHJl dHR5IGhhcmQgZXZlbiB3aGVuIHRoZXJlIHdlcmUganVzdCBhIGZldw0KK3No YXJlZCBsaWJyYXJpZXMsIHRoZXJlIHVzZWQgdG8gYmUgYSBjZW50cmFsIGFk ZHJlc3MgcmVnaXN0cnkgbWFpbnRhaW5lZCBieQ0KK2h1bWFucyBpbiBmb3Jt IG9mIGEgdGV4dCBmaWxlLCBidXQgaXQgaXMgY2VydGFpbmx5IGltcG9zc2li bGUgdG8gZG8gdGhlc2UgZGF5cw0KK3doZW4gdGhlcmUgYXJlIHRob3VzYW5k cyBvZiBkaWZmZXJlbnQgc2hhcmVkIGxpYnJhcmllcyBhbmQgdGhlaXIgc2l6 ZSwgdmVyc2lvbg0KK2FuZCBleHBvcnRlZCBzeW1ib2xzIGFyZSBjb25zdGFu dGx5IGNoYW5naW5nLg0KKw0KK09uIHRoZSBvdGhlciBzaWRlLCB0aGVyZSB3 YXMganVzdCBtaW5pbXVtIGFtb3VudCBvZiB3b3JrIHRoZSBkeW5hbWljIGxp bmtlcg0KK2hhZCB0byBkbyBpbiBvcmRlciB0byBsb2FkIHRoZXNlIHNoYXJl ZCBsaWJyYXJpZXMsIGFzIHJlbG9jYXRpb24gaGFuZGxpbmcgYW5kDQorc3lt Ym9sIGxvb2t1cCB3YXMgb25seSBkb25lIGF0IGxpbmsgdGltZS4gVGhlIGR5 bmFtaWMgbGlua2VyIHVzZWQgdGhlIHVzZWxpYg0KK3N5c3RlbSBjYWxsIHdo aWNoIGp1c3QgbWFwcGVkIHRoZSBuYW1lZCBsaWJyYXJ5IGludG8gdGhlIGFk ZHJlc3Mgc3BhY2UgKHdpdGgNCitubyBzZWdtZW50IG9yIHNlY3Rpb24gcHJv dGVjdGlvbiBkaWZmZXJlbmNlcywgdGhlIHdob2xlIG1hcHBpbmcgd2FzIHdy aXRhYmxlDQorYW5kIGV4ZWN1dGFibGUpLg0KKw0KK1RoZSBFTEYgYmluYXJ5 IGZvcm1hdCBpcyBvbmUgb2YgdGhlIG1vc3QgZmxleGlibGUgYmluYXJ5IGZv cm1hdHMsIGl0cyBzaGFyZWQNCisNCitbIEFzIGRlc2NyaWJlZCBpbiBnZW5l cmljIEFCSSBkb2N1bWVudCBbMV0gYW5kIHZhcmlvdXMgcHJvY2Vzc29yDQor ICBzcGVjaWZpYyBBQkkgc3VwcGxlbWVudHMgWzJdLCBbM10sIFs0XSwgWzVd LCBbNl0sIFs3XSwgWzhdLiBdDQorDQorbGlicmFyaWVzIGFyZSBlYXN5IHRv IGJ1aWxkIGFuZCB0aGVyZSBpcyBubyBuZWVkIGZvciBhIGNlbnRyYWwgYXNz aWdubWVudCBvZg0KK3ZpcnR1YWwgYWRkcmVzcyBzcGFjZSBzbG90cy4NCisN CitTaGFyZWQgbGlicmFyaWVzIGFyZSBwb3NpdGlvbiBpbmRlcGVuZGVudCBh bmQgcmVsb2NhdGlvbiBoYW5kbGluZyBhbmQgc3ltYm9sDQorbG9va3VwIGFy ZSBkb25lIHBhcnRseSBhdCB0aGUgdGltZSB0aGUgZXhlY3V0YWJsZSBpcyBj cmVhdGVkIGFuZCBwYXJ0bHkgYXQNCitydW50aW1lLg0KKw0KK1N5bWJvbHMg aW4gc2hhcmVkIGxpYnJhcmllcyBjYW4gYmUgb3ZlcnJpZGRlbiBhdCBydW50 aW1lIGJ5IHByZWxvYWRpbmcgYSBuZXcNCitzaGFyZWQgbGlicmFyeSBkZWZp bmluZyB0aG9zZSBzeW1ib2xzIG9yIHdpdGhvdXQgcmVsaW5raW5nIGFuIGV4 ZWN1dGFibGUgYnkNCithZGRpbmcgc3ltYm9scyB0byBhIHNoYXJlZCBsaWJy YXJ5IHdoaWNoIGlzIHNlYXJjaGVkIHVwIGVhcmxpZXIgZHVyaW5nIHN5bWJv bA0KK2xvb2t1cCBvciBieSBhZGRpbmcgbmV3IGRlcGVuZGVudCBzaGFyZWQg bGlicmFyaWVzIHRvIGEgbGlicmFyeSB1c2VkIGJ5IHRoZQ0KK3Byb2dyYW0u DQorDQorQWxsIHRoZXNlIGltcHJvdmVtZW50cyBoYXZlIHRoZWlyIHByaWNl Og0KKw0KKyAtIHNsb3dlciBwcm9ncmFtIHN0YXJ0dXANCisgLSBtb3JlIG5v bi1zaGFyZWFibGUgbWVtb3J5IHBlciBwcm9jZXNzIA0KKyAtIHJ1bnRpbWUg Y29zdCBhc3NvY2lhdGVkIHdpdGggcG9zaXRpb24gaW5kZXBlbmRlbnQgY29k ZSBpbiBzaGFyZWQgbGlicmFyaWVzDQorDQorUHJvZ3JhbSBzdGFydHVwIG9m IEVMRiBwcm9ncmFtcyBpcyBzbG93ZXIgdGhhbiBzdGFydHVwIG9mIGEub3V0 IHByb2dyYW1zDQord2l0aCBzaGFyZWQgbGlicmFyaWVzLCBiZWNhdXNlIHRo ZSBkeW5hbWljIGxpbmtlciBoYXMgbXVjaCBtb3JlIHdvcmsgdG8gZG8NCiti ZWZvcmUgY2FsbGluZyBwcm9ncmFt4oCZcyBlbnRyeSBwb2ludC4NCisNCitU aGUgY29zdCBvZiBsb2FkaW5nIGxpYnJhcmllcyBpcyBqdXN0IHNsaWdodGx5 IGJpZ2dlciwgYXMgRUxGIHNoYXJlZCBsaWJyYXJpZXMNCitoYXZlIHR5cGlj YWxseSBzZXBhcmF0ZSByZWFkLW9ubHkgYW5kIHdyaXRhYmxlIHNlZ21lbnRz LCBzbyB0aGUgZHluYW1pYyBsaW5rZXINCitoYXMgdG8gdXNlIGRpZmZlcmVu dCBtZW1vcnkgcHJvdGVjdGlvbiBmb3IgZWFjaCBzZWdtZW50Lg0KKw0KK1Ro ZSBtYWluIGRpZmZlcmVuY2UgaXMgaW4gcmVsb2NhdGlvbiBoYW5kbGluZyBh bmQgYXNzb2NpYXRlZCBzeW1ib2wNCitsb29rdXAuIEluIHRoZSBhLm91dCBm b3JtYXQgdGhlcmUgd2FzIG5vIHJlbG9jYXRpb24gaGFuZGxpbmcgb3Igc3lt Ym9sIGxvb2t1cA0KK2F0IHJ1bnRpbWU6IEluIEVMRiwgdGhpcyBjb3N0IGlz IG11Y2ggbW9yZSBpbXBvcnRhbnQgdG9kYXkgdGhhbiBpdCB1c2VkIHRvDQor YmUgZHVyaW5nIGEub3V0IHRvIEVMRiB0cmFuc2l0aW9uIGluIExpbnV4LCBh cyBlc3BlY2lhbGx5IEdVSSBwcm9ncmFtcyBrZWVwDQorY29uc3RhbnRseSBn cm93aW5nIGFuZCBzdGFydCB0byB1c2UgbW9yZSBhbmQgbW9yZSBzaGFyZWQg bGlicmFyaWVzLg0KKw0KKzUgeWVhcnMgYWdvIHByb2dyYW1zIHVzaW5nIG1v cmUgdGhhbiAxMCBzaGFyZWQgbGlicmFyaWVzIHdlcmUgdmVyeSByYXJlLCB0 aGVzZQ0KK2RheXMgbW9zdCBvZiB0aGUgR1VJIHByb2dyYW1zIGxpbmsgYWdh aW5zdCBhcm91bmQgNDAgb3IgbW9yZSBzaGFyZWQgYW5kIGluDQorZXh0cmVt ZSBjYXNlcyBwcm9ncmFtcyB1c2UgZXZlbiBtb3JlIHRoYW4gOTAgc2hhcmVk IGxpYnJhcmllcy4NCisNCitFdmVyeSBzaGFyZWQgbGlicmFyeSBhZGRzIGl0 cyBzZXQgb2YgZHluYW1pYyByZWxvY2F0aW9ucyB0byB0aGUgY29zdCBhbmQN CitlbmxhcmdlcyBzeW1ib2wgc2VhcmNoIHNjb3BlLCBzbyBpbiBhZGRpdGlv biB0byBkb2luZyBtb3JlIHN5bWJvbCBsb29rdXBzLA0KK2VhY2ggc3ltYm9s IGxvb2t1cCB0aGUgYXBwbGljYXRpb24gaGFzIHRvIHBlcmZvcm0gaXMgb24g YXZlcmFnZSBtb3JlDQorZXhwZW5zaXZlLg0KKw0KK0Fub3RoZXIgZmFjdG9y IGluY3JlYXNpbmcgdGhlIGNvc3QgaXMgdGhlIGxlbmd0aCBvZiBzeW1ib2wg bmFtZXMgd2hpY2ggaGF2ZSB0bw0KK2JlIGNvbXBhcmVkIHdoZW4gZmluZGlu ZyBzeW1ib2wgaW4gdGhlIHN5bWJvbCBoYXNoIHRhYmxlIG9mIGEgc2hhcmVk IGxpYnJhcnk6DQorQysrIGxpYnJhcmllcyB0ZW5kIHRvIGhhdmUgZXh0cmVt ZWx5IGxvbmcgc3ltYm9sIG5hbWVzIGFuZCB1bmZvcnR1bmF0ZWx5IHRoZQ0K K25ldyBDKysgQUJJIHB1dHMgbmFtZXNwYWNlcyBhbmQgY2xhc3MgbmFtZXMg Zmlyc3QgYW5kIG1ldGhvZCBuYW1lcyBsYXN0IGluIHRoZQ0KK21hbmdsZWQg bmFtZXMsIHNvIG9mdGVuIHN5bWJvbCBuYW1lcyBkaWZmZXIgb25seSBpbiBs YXN0IGZldyBieXRlcyBvZiB2ZXJ5DQorbG9uZyBuYW1lcy4NCisNCitFdmVy eSB0aW1lIGEgcmVsb2NhdGlvbiBpcyBhcHBsaWVkIHRoZSBlbnRpcmUgbWVt b3J5IHBhZ2UgY29udGFpbmluZyB0aGUNCithZGRyZXNzIHdoaWNoIGlzIHdy aXR0ZW4gdG8gbXVzdCBiZSBsb2FkZWQgaW50byBtZW1vcnkuIFRoZSBvcGVy YXRpbmcgc3lzdGVtDQorZG9lcyBhIGNvcHktb24td3JpdGUgb3BlcmF0aW9u IHdoaWNoIGFsc28gaGFzIHRoZSBjb25zZXF1ZW5jZSB0aGF0IHRoZQ0KK3Bo eXNpY2FsIG1lbW9yeSBvZiB0aGUgbWVtb3J5IHBhZ2UgY2Fubm90IGFueW1v cmUgYmUgc2hhcmVkIHdpdGggb3RoZXINCitwcm9jZXNzZXMuIFdpdGggRUxG LCB0eXBpY2FsbHkgYWxsIG9mIHByb2dyYW3igJlzIEdsb2JhbCBPZmZzZXQg VGFibGUsDQorY29uc3RhbnRzIGFuZCB2YXJpYWJsZXMgY29udGFpbmluZyBw b2ludGVycyB0byBvYmplY3RzIGluIHNoYXJlZCBsaWJyYXJpZXMsDQorZXRj LiBhcmUgd3JpdHRlbiBpbnRvIGJlZm9yZSB0aGUgZHluYW1pYyBsaW5rZXIg cGFzc2VzIGNvbnRyb2wgb3ZlciB0byB0aGUNCitwcm9ncmFtLg0KKw0KK09u IG1vc3QgYXJjaGl0ZWN0dXJlcyAod2l0aCBzb21lIGV4Y2VwdGlvbnMgbGlr ZSBBTUQ2NCBhcmNoaXRlY3R1cmUpIHBvc2l0aW9uDQoraW5kZXBlbmRlbnQg Y29kZSByZXF1aXJlcyB0aGF0IG9uZSByZWdpc3RlciBuZWVkcyB0byBiZSBk ZWRpY2F0ZWQgYXMgUElDDQorcmVnaXN0ZXIgYW5kIHRodXMgY2Fubm90IGJl IHVzZWQgaW4gdGhlIGZ1bmN0aW9ucyBmb3Igb3RoZXIgcHVycG9zZXMuIFRo aXMNCitlc3BlY2lhbGx5IGRlZ3JhZGVzIHBlcmZvcm1hbmNlIG9uIHJlZ2lz dGVyLXN0YXJ2ZWQgYXJjaGl0ZWN0dXJlcyBsaWtlDQorSUEtMzIuIEFsc28s IHRoZXJlIG5lZWRzIHRvIGJlIHNvbWUgY29kZSB0byBzZXQgdXAgdGhlIFBJ QyByZWdpc3RlciwgZWl0aGVyDQoraW52b2tlZCBhcyBwYXJ0IG9mIGZ1bmN0 aW9uIHByb2xvZ3Vlcywgb3Igd2hlbiB1c2luZyBmdW5jdGlvbiBkZXNjcmlw dG9ycyBpbg0KK3RoZSBjYWxsaW5nIHNlcXVlbmNlLg0KKw0KK1ByZWxpbmsg aXMgYSB0b29sIHdoaWNoICh0b2dldGhlciB3aXRoIGNvcnJlc3BvbmRpbmcg ZHluYW1pYyBsaW5rZXIgYW5kIGxpbmtlcg0KK2NoYW5nZXMpIGF0dGVtcHRz IHRvIGJyaW5nIGJhY2sgc29tZSBvZiB0aGUgYS5vdXQgYWR2YW50YWdlcyAo c3VjaCBhcyB0aGUNCitzcGVlZCBhbmQgbGVzcyBDT1figJlkIHBhZ2VzKSB0 byB0aGUgRUxGIGJpbmFyeSBmb3JtYXQgd2hpbGUgcmV0YWluaW5nIGFsbCBv Zg0KK2l0cyBmbGV4aWJpbGl0eS4NCisNCitJbiBhIGxpbWl0ZWQgd2F5IGl0 IGFsc28gYXR0ZW1wdHMgdG8gZGVjcmVhc2UgbnVtYmVyIG9mIG5vbnNoYXJl YWJsZSBwYWdlcw0KK2NyZWF0ZWQgYnkgcmVsb2NhdGlvbnMuIFByZWxpbmsg d29ya3MgY2xvc2VseSB3aXRoIHRoZSBkeW5hbWljIGxpbmtlciBpbiB0aGUN CitHTlUgQyBsaWJyYXJ5LCBidXQgcHJvYmFibHkgaXQgd291bGRu4oCZdCBi ZSB0b28gaGFyZCB0byBwb3J0IGl0IHRvIHNvbWUgb3RoZXINCitFTEYgdXNp bmcgcGxhdGZvcm1zIHdoZXJlIHRoZSBkeW5hbWljIGxpbmtlciBjYW4gYmUg bW9kaWZpZWQgaW4gc2ltaWxhciB3YXlzLg0KKw0KKz09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT0NCisNCisyIENhY2hpbmcgb2Ygc3ltYm9sIGxv b2t1cCByZXN1bHRzDQorDQorUHJvZ3JhbSBzdGFydHVwIGNhbiBiZSBzcGVl ZGVkIHVwIGJ5IGNhY2hpbmcgb2Ygc3ltYm9sIGxvb2t1cCByZXN1bHRzLg0K K01hbnkgc2hhcmVkIGxpYnJhcmllcyBuZWVkIG1vcmUgdGhhbiBvbmUgbG9v a3VwIG9mIGEgcGFydGljdWxhciBzeW1ib2wuDQorVGhpcyBpcyBlc3BlY2lh bGx5IHRydWUgZm9yIEMrKyBzaGFyZWQgbGlicmFyaWVzLCB3aGVyZSBlLmcu IHRoZSBzYW1lIG1ldGhvZA0KK2lzIHByZXNlbnQgaW4gbXVsdGlwbGUgdmly dHVhbCB0YWJsZXMgb3IgUlRUSSBkYXRhIHN0cnVjdHVyZXMuDQorDQorVHJh ZGl0aW9uYWxseSwgZWFjaCBFTEYgc2VjdGlvbiB3aGljaCBuZWVkcyBkeW5h bWljIHJlbG9jYXRpb25zIGhhcyBhbg0KK2Fzc29jaWF0ZWQgLnJlbGEqIG9y IC5yZWwqIHNlY3Rpb24gKGRlcGVuZGluZyBvbiB3aGV0aGVyIHRoZSBhcmNo aXRlY3R1cmUgaXMNCitkZWZpbmVkIHRvIHVzZSBSRUxBIG9yIFJFTCByZWxv Y2F0aW9ucykuIFRoZSByZWxvY2F0aW9ucyBpbiB0aG9zZSBzZWN0aW9ucyBh cmUNCit0eXBpY2FsbHkgc29ydGVkIGJ5IGFzY2VuZGluZyByX29mZnNldCB2 YWx1ZXMuDQorDQorU3ltYm9sIGxvb2t1cHMgYXJlIHVzdWFsbHkgdGhlIG1v c3QgZXhwZW5zaXZlIG9wZXJhdGlvbiBkdXJpbmcgcHJvZ3JhbQ0KK3N0YXJ0 dXAsIHNvIGNhY2hpbmcgdGhlIHN5bWJvbCBsb29rdXBzIGhhcyBwb3RlbnRp YWwgdG8gZGVjcmVhc2UgdGltZSBzcGVudA0KK2luIHRoZSBkeW5hbWljIGxp bmtlci4NCisNCitPbmUgd2F5IHRvIGRlY3JlYXNlIHRoZSBjb3N0IG9mIHN5 bWJvbCBsb29rdXBzIGlzIHRvIGNyZWF0ZSBhIHRhYmxlIHdpdGggdGhlDQor c2l6ZSBlcXVhbCB0byBudW1iZXIgb2YgZW50cmllcyBpbiBkeW5hbWljIHN5 bWJvbCB0YWJsZSAoLmR5bnN5bSkgaW4gdGhlDQorZHluYW1pYyBsaW5rZXIg d2hlbiByZXNvbHZpbmcgYSBwYXJ0aWN1bGFyIHNoYXJlZCBsaWJyYXJ5LCBi dXQgdGhhdCB3b3VsZCBpbg0KK3NvbWUgY2FzZXMgbmVlZCBhIGxvdCBvZiBt ZW1vcnkgYW5kIHNvbWUgdGltZSBzcGVudCBpbiBpbml0aWFsaXppbmcgdGhl DQordGFibGUuDQorDQorQW5vdGhlciBvcHRpb24gd291bGQgYmUgdG8gdXNl IGEgaGFzaCB0YWJsZSB3aXRoIGNoYWluZWQgbGlzdHMsIGJ1dCB0aGF0IG5l ZWRzDQorYm90aCBleHRyYSBtZW1vcnkgYW5kIHdvdWxkIGFsc28gdGFrZSBl eHRyYSB0aW1lIGZvciBjb21wdXRhdGlvbiBvZiB0aGUgaGFzaA0KK3ZhbHVl IGFuZCB3YWxraW5nIHVwIHRoZSBjaGFpbnMgd2hlbiBkb2luZyBuZXcgbG9v a3Vwcy4NCisNCitGb3J0dW5hdGVseSwgbmVpdGhlciBvZiB0aGVzZSBhcmUg cmVhbGx5IG5lY2Vzc2FyeSBpZiB3ZSBtb2RpZnkgdGhlIGxpbmtlciB0bw0K K3NvcnQgcmVsb2NhdGlvbnMgc28gdGhhdCByZWxvY2F0aW9ucyBhZ2FpbnN0 IHRoZSBzYW1lIHN5bWJvbCBhcmUgYWRqYWNlbnQuDQorDQorVGhpcyBoYXMg YmVlbiBkb25lIGZpcnN0IGluIHRoZSBTdW4gbGlua2VyIGFuZCBkeW5hbWlj IGxpbmtlciwgc28gdGhlIEdOVQ0KK2xpbmtlciBhbmQgZHluYW1pYyBsaW5r ZXIgdXNlIHRoZSBzYW1lIEVMRiBleHRlbnNpb25zIGFuZCBsaW5rZXIgZmxh Z3MuDQorDQorUGFydGljdWxhcmx5LCB0aGUgZm9sbG93aW5nIG5ldyBFTEYg ZHluYW1pYyB0YWdzIGhhdmUgYmVlbiBpbnRyb2R1Y2VkOg0KKw0KKyAgI2Rl ZmluZSBEVF9SRUxBQ09VTlQgMHg2ZmZmZmZmOQ0KKw0KKyAgI2RlZmluZSBE VF9SRUxDT1VOVCAweDZmZmZmZmZhDQorDQorTmV3IG9wdGlvbnMgLXogY29t YnJlbG9jIGFuZCAteiBub2NvbWJyZWxvYyBoYXZlIGJlZW4gYWRkZWQgdG8g dGhlIGxpbmtlci4NCitbIC16IGNvbWJyZWxvYyBpcyB0aGUgZGVmYXVsdCBp biBHTlUgbGlua2VyIHZlcnNpb25zIDIuMTMgYW5kIGxhdGVyIF0NCisNCitU aGUgbGF0dGVyIGNhdXNlcyB0aGUgcHJldmlvdXMgbGlua2VyIGJlaGF2aW9y LCBpLmUuIGVhY2ggc2VjdGlvbiByZXF1aXJpbmcNCityZWxvY2F0aW9ucyBo YXMgYSBjb3JyZXNwb25kaW5nIHJlbG9jYXRpb24gc2VjdGlvbiwgd2hpY2gg aXMgc29ydGVkIGJ5DQorYXNjZW5kaW5nIHJfb2Zmc2V0Lg0KKw0KKy16IGNv bWJyZWxvYyBpbnN0cnVjdHMgdGhlIGxpbmtlciB0byBjcmVhdGUganVzdCBv bmUgcmVsb2NhdGlvbiBzZWN0aW9uIGZvcg0KK2R5bmFtaWMgcmVsb2NhdGlv bnMgb3RoZXIgdGhhbiBzeW1ib2wganVtcCB0YWJsZSAoUExUKSByZWxvY2F0 aW9ucy4NCisNCitUaGlzIHNpbmdsZSByZWxvY2F0aW9uIHNlY3Rpb24gKGVp dGhlciAucmVsYS5keW4gb3IgLnJlbC5keW4pIGlzIHNvcnRlZCwgc28NCit0 aGF0IHJlbGF0aXZlIHJlbG9jYXRpb25zIGNvbWUgZmlyc3QgKHNvcnRlZCBi eSBhc2NlbmRpbmcgcl9vZmZzZXQpLA0KK2ZvbGxvd2VkIGJ5IG90aGVyIHJl bG9jYXRpb25zLCBzb3J0ZWQgYWdhaW4gYnkgYXNjZW5kaW5nIHJfb2Zmc2V0 Lg0KKw0KK1sgSW4gZmFjdCBzb3J0aW5nIG5lZWRzIHRvIGluY2x1ZGUgdGhl IHR5cGUgb2YgbG9va3VwLiBNb3N0IHJlbG9jYXRpb25zDQorICByZXNvbHZl IHRvIGEgUExUIHNsb3QgaW4gdGhlIGV4ZWN1dGFibGUgaWYgdGhlcmUgaXMg b25lIGZvciB0aGUgbG9va3VwDQorICBzeW1ib2wsIGJlY2F1c2UgdGhlIGV4 ZWN1dGFibGUgbWlnaHQgaGF2ZSBhIHBvaW50ZXIgYWdhaW5zdCB0aGF0IHN5 bWJvbA0KKyAgd2l0aG91dCBhbnkgZHluYW1pYyByZWxvY2F0aW9ucy4NCisg IEJ1dCBlLmcuIHJlbG9jYXRpb25zIHVzZWQgZm9yIHRoZSBQTFQgc2xvdHMg bXVzdCBhdm9pZCB0aGVzZSBdDQorDQorSWYgbW9yZSByZWxvY2F0aW9ucyBh cmUgYWdhaW5zdCB0aGUgc2FtZSBzeW1ib2wsIHRoZXkgaW1tZWRpYXRlbHkg Zm9sbG93DQordGhlIGZpcnN0IHJlbG9jYXRpb24gYWdhaW5zdCB0aGF0IHN5 bWJvbCB3aXRoIGxvd2VzdCByX29mZnNldC4NCisNCitUaGUgbnVtYmVyIG9m IHJlbGF0aXZlIHJlbG9jYXRpb25zIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhl IHNlY3Rpb24gaXMgc3RvcmVkDQoraW4gdGhlIERUX1JFTEFDT1VOVCByZXNw LiBEVF9SRUxDT1VOVCBkeW5hbWljIHRhZy4NCisNCitUaGUgZHluYW1pYyBs aW5rZXIgY2FuIHVzZSB0aGUgbmV3IGR5bmFtaWMgdGFnIGZvciB0d28gcHVy cG9zZXMuDQorDQorSWYgdGhlIHNoYXJlZCBsaWJyYXJ5IGlzIHN1Y2Nlc3Nm dWxseSBtYXBwZWQgYXQgdGhlIHNhbWUgYWRkcmVzcyBhcyB0aGUgZmlyc3QN CitQVF9MT0FEIHNlZ21lbnTigJlzIHZpcnR1YWwgYWRkcmVzcywgdGhlIGxv YWQgb2Zmc2V0IGlzIHplcm8gYW5kIHRoZSBkeW5hbWljDQorbGlua2VyIGNh biBhdm9pZCBhbGwgdGhlIHJlbGF0aXZlIHJlbG9jYXRpb25zIHdoaWNoIHdv dWxkIGp1c3QgYWRkIHplcm8gdG8NCit2YXJpb3VzIG1lbW9yeSBsb2NhdGlv bnMuDQorDQorTm9ybWFsbHkgc2hhcmVkIGxpYnJhcmllcyBhcmUgbGlua2Vk IHdpdGggZmlyc3QgUFRfTE9BRCBzZWdtZW504oCZcyB2aXJ0dWFsDQorYWRk cmVzcyBzZXQgdG8gemVybywgc28gdGhlIGxvYWQgb2Zmc2V0IGlzIG5vbi16 ZXJvLiBUaGlzIGNhbiBiZSBjaGFuZ2VkDQordGhyb3VnaCBhIGxpbmtlciBz Y3JpcHQgb3IgYnkgdXNpbmcgYSBzcGVjaWFsIHByZWxpbmsgb3B0aW9uIOKA k3JlbG9jLW9ubHkgdG8NCitjaGFuZ2UgdGhlIGJhc2UgYWRkcmVzcyBvZiBh IHNoYXJlZCBsaWJyYXJ5Lg0KKw0KK0FsbCBwcmVsaW5rZWQgc2hhcmVkIGxp YnJhcmllcyBoYXZlIG5vbi16ZXJvIGJhc2UgYWRkcmVzcyBhcyB3ZWxsLg0K Kw0KK0lmIHRoZSBsb2FkIG9mZnNldCBpcyBub24temVybywgdGhlIGR5bmFt aWMgbGlua2VyIGNhbiBzdGlsbCBtYWtlIHVzZSBvZiB0aGlzDQorZHluYW1p YyB0YWcsIGFzIHJlbGF0aXZlIHJlbG9jYXRpb24gaGFuZGxpbmcgaXMgdHlw aWNhbGx5IHdheSBzaW1wbGVyIHRoYW4NCitoYW5kbGluZyBvdGhlciByZWxv Y2F0aW9ucyAoc2luY2Ugc3ltYm9sIGxvb2t1cCBpcyBub3QgbmVjZXNzYXJ5 KSBhbmQgdGh1cyBpdA0KK2NhbiBoYW5kbGUgYWxsIHJlbGF0aXZlIHJlbG9j YXRpb25zIGluIGEgdGlnaHQgbG9vcCBpbiBvbmUgcGxhY2UgYW5kIHRoZW4N CitoYW5kbGUgdGhlIHJlbWFpbmluZyByZWxvY2F0aW9ucyB3aXRoIHRoZSBm dWxseSBmZWF0dXJlZCByZWxvY2F0aW9uIGhhbmRsaW5nDQorcm91dGluZS4N CisNCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQorVGhlIHNl Y29uZCBhbmQgbW9yZSBpbXBvcnRhbnQgcG9pbnQgaXMgdGhhdCBpZiByZWxv Y2F0aW9ucyBhZ2FpbnN0IHRoZSBzYW1lDQorc3ltYm9sIGFyZSBhZGphY2Vu dCwgdGhlIGR5bmFtaWMgbGlua2VyIGNhbiB1c2UgYSBjYWNoZSB3aXRoIHNp bmdsZSBlbnRyeS4NCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t DQorDQorVGhlIGR5bmFtaWMgbGlua2VyIGluIGdsaWJjLCBpZiBpdCBzZWVz IHN0YXRpc3RpY3MgYXMgcGFydCBvZiB0aGUgTERfREVCVUcNCitlbnZpcm9u bWVudCB2YXJpYWJsZSwgZGlzcGxheXMgc3RhdGlzdGljcyB3aGljaCBjYW4g c2hvdyBob3cgdXNlZnVsIHRoaXMNCitvcHRpbWl6YXRpb24gaXMuIExldOKA mXMgbG9vayBhdCBzb21lIGJpZyBDKysgYXBwbGljYXRpb24sIGUuZy4ga29u cXVlcm9yLiBJZg0KK25vdCB1c2luZyB0aGUgY2FjaGUsIHRoZSBzdGF0aXN0 aWNzIGxvb2tzIGxpa2UgdGhpczoNCisNCisgIHJ1bnRpbWUgbGlua2VyIHN0 YXRpc3RpY3M6DQorICB0b3RhbCBzdGFydHVwIHRpbWUgaW4gZHluYW1pYyBs b2FkZXI6IDI3MDg4NjA1OSBjbG9jayBjeWNsZXMNCisgICAgICAgICAgICB0 aW1lIG5lZWRlZCBmb3IgcmVsb2NhdGlvbjogMjY2MzY0OTI3IGNsb2NrIGN5 Y2xlcyAoOTguMyUpDQorICAgICAgICAgICAgICAgICBudW1iZXIgb2YgcmVs b2NhdGlvbnM6IDc5MDY3DQorICAgICAgbnVtYmVyIG9mIHJlbG9jYXRpb25z IGZyb20gY2FjaGU6IDANCisgICAgICAgIG51bWJlciBvZiByZWxhdGl2ZSBy ZWxvY2F0aW9uczogMzExNjkNCisgICAgICAgICAgIHRpbWUgbmVlZGVkIHRv IGxvYWQgb2JqZWN0czogNDIwMzYzMSBjbG9jayBjeWNsZXMgKDEuNSUpDQor DQorVGhpcyBwcm9ncmFtIHJ1biBpcyB3aXRoIGhvdCBjYWNoZXMsIG9uIG5v bi1wcmVsaW5rZWQgc3lzdGVtLCB3aXRoIGxhenkNCitiaW5kaW5nLiBUaGUg bnVtYmVycyBzaG93IHRoYXQgdGhlIGR5bmFtaWMgbGlua2VyIHNwZW50IG1v c3Qgb2YgaXRzIHRpbWUgaW4NCityZWxvY2F0aW9uIGhhbmRsaW5nIGFuZCBl c3BlY2lhbGx5IHN5bWJvbCBsb29rdXBzLiBJZiB1c2luZyBzeW1ib2wgbG9v a3VwDQorY2FjaGUsIHRoZSBudW1iZXJzIGxvb2sgZGlmZmVyZW50Og0KKw0K Kw0KKyAgdG90YWwgc3RhcnR1cCB0aW1lIGluIGR5bmFtaWMgbG9hZGVyOiAx MzI5MjIwMDEgY2xvY2sgY3ljbGVzDQorICAgICAgICAgICAgdGltZSBuZWVk ZWQgZm9yIHJlbG9jYXRpb246IDEyODM5OTY1OSBjbG9jayBjeWNsZXMgKDk2 LjUlKQ0KKyAgICAgICAgICAgICAgICAgbnVtYmVyIG9mIHJlbG9jYXRpb25z OiAyNTQ3Mw0KKyAgICAgIG51bWJlciBvZiByZWxvY2F0aW9ucyBmcm9tIGNh Y2hlOiA1MzU5NA0KKyAgICAgICAgbnVtYmVyIG9mIHJlbGF0aXZlIHJlbG9j YXRpb25zOiAzMTE2OQ0KKyAgICAgICAgICAgdGltZSBuZWVkZWQgdG8gbG9h ZCBvYmplY3RzOiA0MjAyMzk0IGNsb2NrIGN5Y2xlcyAoMy4xJSkNCisNCitP biBhdmVyYWdlLCBmb3Igb25lIHJlYWwgc3ltYm9sIGxvb2t1cCB0aGVyZSB3 ZXJlIHR3byBjYWNoZSBoaXRzIGFuZCB0b3RhbA0KK3RpbWUgc3BlbnQgaW4g dGhlIGR5bmFtaWMgbGlua2VyIGRlY3JlYXNlZCBieSA1MCUuDQorDQorPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KKw0KKzMgUHJlbGluayBk ZXNpZ24NCisNCitQcmVsaW5rIHdhcyBkZXNpZ25lZCBzbyBhcyB0byByZXF1 aXJlIGFzIGZldyBFTEYgZXh0ZW5zaW9ucyBhcyBwb3NzaWJsZS4NCisNCitJ dCBzaG91bGQgbm90IGJlIHRpZWQgdG8gYSBwYXJ0aWN1bGFyIGFyY2hpdGVj dHVyZSwgYnV0IHNob3VsZCB3b3JrIG9uIGFsbCBFTEYNCithcmNoaXRlY3R1 cmVzLg0KKw0KK0R1cmluZyBwcm9ncmFtIHN0YXJ0dXAgaXQgc2hvdWxkIGF2 b2lkIGFsbCBzeW1ib2wgbG9va3VwcyB3aGljaCwgYXMgaGFzIGJlZW4NCitz aG93biBhYm92ZSwgYXJlIHZlcnkgZXhwZW5zaXZlLg0KKw0KK0l0IG5lZWRz IHRvIHdvcmsgaW4gYW4gZW52aXJvbm1lbnQgd2hlcmUgc2hhcmVkIGxpYnJh cmllcyBhbmQgZXhlY3V0YWJsZXMgYXJlDQorY2hhbmdpbmcgZnJvbSB0aW1l IHRvIHRpbWUsIHdoZXRoZXIgaXQgaXMgYmVjYXVzZSBvZiBzZWN1cml0eSB1 cGRhdGVzIG9yDQorZmVhdHVyZSBlbmhhbmNlbWVudHMuDQorDQorSXQgc2hv dWxkIGF2b2lkIGJpZyBjb2RlIGR1cGxpY2F0aW9uIGJldHdlZW4gdGhlIGR5 bmFtaWMgbGlua2VyIGFuZCB0aGUNCit0b29sLg0KKw0KK0FuZCBwcmVsaW5r ZWQgc2hhcmVkIGxpYnJhcmllcyBuZWVkIHRvIGJlIHVzYWJsZSBldmVuIGlu IG5vbi1wcmVsaW5rZWQNCitleGVjdXRhYmxlcywgb3Igd2hlbiBvbmUgb2Yg dGhlIHNoYXJlZCBsaWJyYXJpZXMgaXMgdXBncmFkZWQgYW5kIHRoZQ0KK3By ZWxpbmtpbmcgb2YgdGhlIGV4ZWN1dGFibGUgaGFzIG5vdCBiZWVuIHVwZGF0 ZWQuDQorDQorVG8gbWluaW1pemUgdGhlIG51bWJlciBvZiBwZXJmb3JtZWQg cmVsb2NhdGlvbnMgZHVyaW5nIHN0YXJ0dXAsIHRoZSBzaGFyZWQNCitsaWJy YXJpZXMgKGFuZCBleGVjdXRhYmxlcykgbmVlZCB0byBiZSByZWxvY2F0ZWQg YWxyZWFkeSBhcyBtdWNoIGFzDQorcG9zc2libGUuDQorDQorRm9yIHJlbGF0 aXZlIHJlbG9jYXRpb25zIHRoaXMgbWVhbnMgdGhlIGxpYnJhcnkgbmVlZHMg dG8gYmUgbG9hZGVkIGFsd2F5cyBhdA0KK3RoZSBzYW1lIGJhc2UgYWRkcmVz cywgZm9yIG90aGVyIHJlbG9jYXRpb25zIHRoaXMgbWVhbnMgYWxsIHNoYXJl ZCBsaWJyYXJpZXMNCit3aXRoIGRlZmluaXRpb25zIHRob3NlIHJlbG9jYXRp b25zIHJlc29sdmUgdG8gKG9mdGVuIHRoaXMgaW5jbHVkZXMgYWxsIHNoYXJl ZA0KK2xpYnJhcmllcyB0aGUgbGlicmFyeSBvciBleGVjdXRhYmxlIGRlcGVu ZHMgb24pIG11c3QgYWx3YXlzIGJlIGxvYWRlZCBhdCB0aGUNCitzYW1lIGFk ZHJlc3Nlcy4NCisNCitFTEYgZXhlY3V0YWJsZXMgKHdpdGggdGhlIGV4Y2Vw dGlvbiBvZiBQb3NpdGlvbiBJbmRlcGVuZGVudCBFeGVjdXRhYmxlcykgaGF2 ZQ0KK3RoZWlyIGxvYWQgYWRkcmVzcyBmaXhlZCBhbHJlYWR5IGR1cmluZyBs aW5raW5nLg0KKw0KK0ZvciBzaGFyZWQgbGlicmFyaWVzLCBwcmVsaW5rIG5l ZWRzIHNvbWV0aGluZyBzaW1pbGFyIHRvIGEub3V0IHJlZ2lzdHJ5IG9mDQor dmlydHVhbCBhZGRyZXNzIHNwYWNlIHNsb3RzLg0KKw0KK01haW50YWluaW5n IHN1Y2ggcmVnaXN0cnkgYWNyb3NzIGFsbCBpbnN0YWxsYXRpb25zIHdvdWxk buKAmXQgc2NhbGUgd2VsbCBzbw0KK3ByZWxpbmsgaW5zdGVhZCBhc3NpZ25z IHRoZXNlIHZpcnR1YWwgYWRkcmVzcyBzcGFjZSBzbG90cyBvbiB0aGUgZmx5 IGFmdGVyDQorbG9va2luZyBhdCBhbGwgZXhlY3V0YWJsZXMgaXQgaXMgc3Vw cG9zZWQgdG8gc3BlZWQgdXAgYW5kIGFsbCB0aGVpciBkZXBlbmRlbnQNCitz aGFyZWQgbGlicmFyaWVzLg0KKw0KK1RoZSBuZXh0IHN0ZXAgaXMgdG8gYWN0 dWFsbHkgcmVsb2NhdGUgc2hhcmVkIGxpYnJhcmllcyB0byB0aGUgYXNzaWdu ZWQgYmFzZQ0KK2FkZHJlc3MuIFdoZW4gdGhpcyBpcyBkb25lLCB0aGUgYWN0 dWFsIHByZWxpbmtpbmcgb2Ygc2hhcmVkIGxpYnJhcmllcyBjYW4gYmUNCitk b25lLg0KKw0KK0ZpcnN0LCBhbGwgZGVwZW5kZW50IHNoYXJlZCBsaWJyYXJp ZXMgbmVlZCB0byBiZSBwcmVsaW5rZWQgKHByZWxpbmsgZG9lc27igJl0DQor c3VwcG9ydCBjaXJjdWxhciBkZXBlbmRlbmNpZXMgYmV0d2VlbiBzaGFyZWQg bGlicmFyaWVzLCB3aWxsIGp1c3Qgd2FybiBhYm91dA0KK3RoZW0gaW5zdGVh ZCBvZiBwcmVsaW5raW5nIHRoZSBsaWJyYXJpZXMgaW4gdGhlIGN5Y2xlKS4N CisNCitUaGVuIGZvciBlYWNoIHJlbG9jYXRpb24gaW4gdGhlIHNoYXJlZCBs aWJyYXJ5IHByZWxpbmsgbmVlZHMgdG8gbG9vayB1cCB0aGUNCitzeW1ib2wg aW4gbmF0dXJhbCBzeW1ib2wgc2VhcmNoIHNjb3BlIG9mIHRoZSBzaGFyZWQg bGlicmFyeSAodGhlIHNoYXJlZA0KK2xpYnJhcnkgaXRzZWxmIGZpcnN0LCB0 aGVuIGJyZWFkdGggZmlyc3Qgc2VhcmNoIG9mIGFsbCBkZXBlbmRlbnQgc2hh cmVkDQorbGlicmFyaWVzKSBhbmQgYXBwbHkgdGhlIHJlbG9jYXRpb24gdG8g dGhlIHN5bWJvbOKAmXMgdGFyZ2V0IHNlY3Rpb24uDQorDQorVGhlIHN5bWJv bCBsb29rdXAgY29kZSBpbiB0aGUgZHluYW1pYyBsaW5rZXIgaXMgcXVpdGUg Y29tcGxleCBhbmQgYmlnLCBzbyB0bw0KK2F2b2lkIGR1cGxpY2F0aW5nIGFs bCB0aGlzLCBwcmVsaW5rIGhhcyBjaG9zZW4gdG8gdXNlIGR5bmFtaWMgbGlu a2VyIHRvIGRvIHRoZQ0KK3N5bWJvbCBsb29rdXBzLg0KKw0KK0R5bmFtaWMg bGlua2VyIGlzIHRvbGQgdmlhIGEgc3BlY2lhbCBlbnZpcm9ubWVudCB2YXJp YWJsZSBpdCBzaG91bGQgcHJpbnQgYWxsDQorcGVyZm9ybWVkIHN5bWJvbCBs b29rdXBzIGFuZCB0aGVpciB0eXBlIGFuZCBwcmVsaW5rIHJlYWRzIHRoaXMg b3V0cHV0IHRocm91Z2gNCithIHBpcGUuDQorDQorQXMgb25lIG9mIHRoZSBy ZXF1aXJlbWVudHMgd2FzIHRoYXQgcHJlbGlua2VkIHNoYXJlZCBsaWJyYXJp ZXMgbXVzdCBiZSB1c2FibGUNCitldmVuIGZvciBub24tcHJlbGlua2VkIGV4 ZWN1dGFibGVzIChkdXBsaWNhdGluZyBhbGwgc2hhcmVkIGxpYnJhcmllcyBz byB0aGF0DQordGhlcmUgYXJlIHByaXN0aW5lIGFuZCBwcmVsaW5rZWQgY29w aWVzIHdvdWxkIGJlIHZlcnkgdW5mcmllbmRseSB0byBSQU0NCit1c2FnZSks IHByZWxpbmsgaGFzIHRvIGVuc3VyZSB0aGF0IGJ5IGFwcGx5aW5nIHRoZSBy ZWxvY2F0aW9uIG5vIGluZm9ybWF0aW9uDQoraXMgbG9zdCBhbmQgdGh1cyBy ZWxvY2F0aW9uIHByb2Nlc3NpbmcgY2FuIGJlIGNoZWFwbHkgZG9uZSBhdCBz dGFydHVwIHRpbWUgb2YNCitub24tcHJlbGlua2VkIGV4ZWN1dGFibGVzLg0K Kw0KK0ZvciBSRUxBIGFyY2hpdGVjdHVyZXMgdGhpcyBpcyBlYXNpZXIsIGJl Y2F1c2UgdGhlIGNvbnRlbnQgb2YgdGhlIHJlbG9jYXRpb27igJlzDQordGFy Z2V0IG1lbW9yeSBpcyBub3QgbmVlZGVkIHdoZW4gcHJvY2Vzc2luZyB0aGUg cmVsb2NhdGlvbi4NCitbIFJlbGF0aXZlIHJlbG9jYXRpb25zIG9uIGNlcnRh aW4gUkVMQSBhcmNoaXRlY3R1cmVzIHVzZSByZWxvY2F0aW9uIHRhcmdldOKA mXMNCisgIG1lbW9yeSwgZWl0aGVyIGFsb25lIG9yIHRvZ2V0aGVyIHdpdGgg cl9hZGRlbmQgZmllbGQuIF0NCisNCitGb3IgUkVMIGFyY2hpdGVjdHVyZXMg dGhpcyBpcyBub3QgdGhlIGNhc2UuIHByZWxpbmsgYXR0ZW1wdHMgc29tZSB0 cmlja3MNCitkZXNjcmliZWQgbGF0ZXIgYW5kIGlmIHRoZXkgZmFpbCwgbmVl ZHMgdG8gY29udmVydCB0aGUgUkVMIHJlbG9jYXRpb24gc2VjdGlvbg0KK3Rv IFJFTEEgZm9ybWF0IHdoZXJlIGFkZGVuZCBpcyBzdG9yZWQgaW4gdGhlIHJl bG9jYXRpb24gc2VjdGlvbiBpbnN0ZWFkIG9mDQorcmVsb2NhdGlvbiB0YXJn ZXTigJlzIG1lbW9yeS4NCisNCitXaGVuIGFsbCBzaGFyZWQgbGlicmFyaWVz IGFuIGV4ZWN1dGFibGUgKGRpcmVjdGx5IG9yIGluZGlyZWN0bHkpIGRlcGVu ZHMgb24NCithcmUgcHJlbGlua2VkLCByZWxvY2F0aW9ucyBpbiB0aGUgZXhl Y3V0YWJsZSBhcmUgaGFuZGxlZCBzaW1pbGFybHkgdG8NCityZWxvY2F0aW9u cyBpbiBzaGFyZWQgbGlicmFyaWVzLg0KKw0KK1VuZm9ydHVuYXRlbHksIG5v dCBhbGwgc3ltYm9scyByZXNvbHZlIHRoZSBzYW1lIHdoZW4gbG9va2VkIHVw IGluIGEgc2hhcmVkDQorbGlicmFyeeKAmXMgbmF0dXJhbCBzeW1ib2wgc2Vh cmNoIHNjb3BlIChpLmUuIGFzIGl0IGlzIGRvbmUgYXQgdGhlIHRpbWUgdGhl DQorc2hhcmVkIGxpYnJhcnkgaXMgcHJlbGlua2VkKSBhbmQgd2hlbiBsb29r ZWQgdXAgaW4gYXBwbGljYXRpb27igJlzIGdsb2JhbCBzeW1ib2wNCitzZWFy Y2ggc2NvcGUuDQorDQorU3VjaCBzeW1ib2xzIGFyZSBoZXJlaW4gY2FsbGVk IGNvbmZsaWN0cyBhbmQgdGhlIHJlbG9jYXRpb25zIGFnYWluc3QgdGhvc2UN CitzeW1ib2xzIGNvbmZsaWN0aW5nIHJlbG9jYXRpb25zLiBDb25mbGljdHMg ZGVwZW5kIG9uIHRoZSBleGVjdXRhYmxlLCBhbGwgaXRzDQorc2hhcmVkIGxp YnJhcmllcyBhbmQgdGhlaXIgcmVzcGVjdGl2ZSBvcmRlci4NCisNCitUaGV5 IGFyZSBvbmx5IGNvbXB1dGFibGUgZm9yIHRoZSBzaGFyZWQgbGlicmFyaWVz IGxpbmtlZCB0byB0aGUgZXhlY3V0YWJsZQ0KKyhsaWJyYXJpZXMgbWVudGlv bmVkIGluIERUX05FRURFRCBkeW5hbWljIHRhZ3MgYW5kIHNoYXJlZCBsaWJy YXJpZXMgdGhleQ0KK3RyYW5zaXRpdmVseSBuZWVkKS4NCisNCitUaGUgc2V0 IG9mIHNoYXJlZCBsaWJyYXJpZXMgbG9hZGVkIHZpYSBkbG9wZW4oMykgY2Fu bm90IGJlIHByZWRpY3RlZCBieQ0KK3ByZWxpbmssIG5laXRoZXIgY2FuIHRo ZSBvcmRlciBpbiB3aGljaCB0aGlzIGhhcHBlbmVkLCBub3IgdGhlIHRpbWUg d2hlbiB0aGV5DQorYXJlIHVubG9hZGVkLg0KKw0KK1doZW4gdGhlIGR5bmFt aWMgbGlua2VyIHByaW50cyBzeW1ib2wgbG9va3VwcyBkb25lIGluIHRoZSBl eGVjdXRhYmxlLCBpdCBhbHNvDQorcHJpbnRzIGNvbmZsaWN0cy4gUHJlbGlu ayB0aGVuIHRha2VzIGFsbCByZWxvY2F0aW9ucyBhZ2FpbnN0IHRob3NlIHN5 bWJvbHMgYW5kDQorYnVpbGRzIGEgc3BlY2lhbCBSRUxBIHNlY3Rpb24gd2l0 aCBjb25mbGljdCBmaXh1cHMgYW5kIHN0b3JlcyBpdCBpbnRvIHRoZQ0KK3By ZWxpbmtlZCBleGVjdXRhYmxlLg0KKw0KK0Fsc28gYSBsaXN0IG9mIGFsbCBk ZXBlbmRlbnQgc2hhcmVkIGxpYnJhcmllcyBpbiB0aGUgb3JkZXIgdGhleSBh cHBlYXIgaW4gdGhlDQorc3ltYm9sIHNlYXJjaCBzY29wZSwgdG9nZXRoZXIg d2l0aCB0aGVpciBjaGVja3N1bXMgYW5kIHRpbWVzIG9mIHByZWxpbmtpbmcg aXMNCitzdG9yZWQgaW4gYW5vdGhlciBzcGVjaWFsIHNlY3Rpb24uDQorDQor VGhlIGR5bmFtaWMgbGlua2VyIGZpcnN0IGNoZWNrcyBpZiBpdCBpcyBpdHNl bGYgcHJlbGlua2VkLiBJZiB5ZXMsIGl0IGNhbg0KK2F2b2lkIGl0cyBwcmVs aW1pbmFyeSByZWxvY2F0aW9uIHByb2Nlc3NpbmcgKHRoaXMgb25lIGlzIGRv bmUgd2l0aCBqdXN0IHRoZQ0KK2R5bmFtaWMgbGlua2VyIGl0c2VsZiBpbiB0 aGUgc2VhcmNoIHNjb3BlLCBzbyB0aGF0IGFsbCByb3V0aW5lcyBpbiB0aGUg ZHluYW1pYw0KK2xpbmtlciBjYW4gYmUgdXNlZCBlYXNpbHkgd2l0aG91dCB0 b28gbWFueSBsaW1pdGF0aW9ucykuDQorDQorV2hlbiBpdCBpcyBhYm91dCB0 byBzdGFydCBhIHByb2dyYW0sIGl0IGZpcnN0IGxvb2tzIGF0IHRoZSBsaWJy YXJ5IGxpc3QNCitzZWN0aW9uIGNyZWF0ZWQgYnkgcHJlbGluayAoaWYgYW55 KSBhbmQgY2hlY2tzIHdoZXRoZXIgdGhleSBhcmUgcHJlc2VudCBpbg0KK3N5 bWJvbCBzZWFyY2ggc2NvcGUgaW4gdGhlIHNhbWUgb3JkZXIsIG5vbmUgaGF2 ZSBiZWVuIG1vZGlmaWVkIHNpbmNlDQorcHJlbGlua2luZyBhbmQgdGhhdCB0 aGVyZSBhcmVu4oCZdCBhbnkgbmV3IHNoYXJlZCBsaWJyYXJpZXMgbG9hZGVk IGVpdGhlci4NCisNCitJZiBhbGwgdGhlc2UgY29uZGl0aW9ucyBhcmUgc2F0 aXNmaWVkLCBwcmVsaW5raW5nIGNhbiBiZSB1c2VkLiBJbiB0aGF0IGNhc2UN Cit0aGUgZHluYW1pYyBsaW5rZXIgcHJvY2Vzc2VzIHRoZSBmaXh1cCBzZWN0 aW9uIGFuZCBza2lwcyBhbGwgbm9ybWFsIHJlbG9jYXRpb24NCitoYW5kbGlu Zy4gSWYgb25lIG9yIG1vcmUgb2YgdGhlIGNvbmRpdGlvbnMgYXJlIG5vdCBt ZXQsIHRoZSBkeW5hbWljIGxpbmtlcg0KK2NvbnRpbnVlcyB3aXRoIG5vcm1h bCByZWxvY2F0aW9uIHByb2Nlc3NpbmcgaW4gdGhlIGV4ZWN1dGFibGUgYW5k IGFsbCBzaGFyZWQNCitsaWJyYXJpZXMuDQorDQorPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PQ0KKw0KKzQgQ29sbGVjdGluZyBleGVjdXRhYmxl cyBhbmQgbGlicmFyaWVzIHdoaWNoIHNob3VsZCBiZSBwcmVsaW5rZWQNCisN CitCZWZvcmUgdGhlIGFjdHVhbCB3b3JrIGNhbiBzdGFydCB0aGUgcHJlbGlu ayB0b29sIG5lZWRzIHRvIGNvbGxlY3QgdGhlDQorZmlsZW5hbWVzIG9mIGV4 ZWN1dGFibGVzIGFuZCBsaWJyYXJpZXMgaXQgaXMgc3VwcG9zZWQgdG8gcHJl bGluay4gSXQgZG9lc27igJl0DQorbWFrZSBhbnkgc2Vuc2UgdG8gcHJlbGlu ayBhIHNoYXJlZCBsaWJyYXJ5IGlmIG5vIGV4ZWN1dGFibGUgaXMgbGlua2Vk IGFnYWluc3QNCitpdCBiZWNhdXNlIHRoZSBwcmVsaW5raW5nIGluZm9ybWF0 aW9uIHdpbGwgbm90IGJlIHVzZWQgYW55d2F5Lg0KKw0KK0Z1cnRoZXJtb3Jl LCB3aGVuIHByZWxpbmsgbmVlZHMgdG8gZG8gYSBSRUwgdG8gUkVMQSBjb252 ZXJzaW9uIG9mIHJlbG9jYXRpb24NCitzZWN0aW9ucyBpbiB0aGUgc2hhcmVk IGxpYnJhcnkgKHNlZSBsYXRlcikgb3Igd2hlbiBpdCBuZWVkcyB0byBjb252 ZXJ0DQorU0hUX05PQklUUyBQTFQgc2VjdGlvbiB0byBTSFRfUFJPR0JJVFMs IGEgcHJlbGlua2VkIHNoYXJlZCBsaWJyYXJ5IG1pZ2h0IGdyb3cNCitpbiBz aXplIGFuZCBzbyBwcmVsaW5raW5nIGlzIG9ubHkgZGVzaXJhYmxlIGlmIGl0 IHdpbGwgc3BlZWQgdXAgc3RhcnR1cCBvZg0KK3NvbWUgcHJvZ3JhbS4NCisN CitUaGUgb25seSBjaGFuZ2Ugd2hpY2ggbWlnaHQgYmUgdXNlZnVsIGV2ZW4g Zm9yIHNoYXJlZCBsaWJyYXJpZXMgd2hpY2ggYXJlDQorbmV2ZXIgbGlua2Vk IGFnYWluc3QsIG9ubHkgbG9hZGVkIHVzaW5nIGRsb3BlbiwgaXMgcmVsb2Nh dGluZyB0byBhIHVuaXF1ZQ0KK2FkZHJlc3MuIFRoaXMgaXMgdXNlZnVsIGlm IHRoZXJlIGFyZSBtYW55IHJlbGF0aXZlIHJlbG9jYXRpb25zIGFuZCB0aGVy ZSBhcmUNCitwYWdlcyBpbiB0aGUgc2hhcmVkIGxpYnJhcnnigJlzIHdyaXRh YmxlIHNlZ21lbnQgd2hpY2ggYXJlIG5ldmVyIHdyaXR0ZW4gaW50bw0KK3dp dGggdGhlIGV4Y2VwdGlvbiBvZiB0aG9zZSByZWxhdGl2ZSByZWxvY2F0aW9u cy4NCisNCitTdWNoIHNoYXJlZCBsaWJyYXJpZXMgYXJlIHJhcmUsIHNvIHBy ZWxpbmsgZG9lc27igJl0IGhhbmRsZSB0aGVzZSBhdXRvbWF0aWNhbGx5LA0K K2luc3RlYWQgdGhlIGFkbWluaXN0cmF0b3Igb3IgZGV2ZWxvcGVyIGNhbiB1 c2UgcHJlbGluayDigJNyZWxvYy1vbmx5PUFERFJFU1MgdG8NCityZWxvY2F0 ZSBpdCBtYW51YWxseS4NCisNCitQcmVsaW5raW5nIGFuIGV4ZWN1dGFibGUg cmVxdWlyZXMgYWxsIHNoYXJlZCBsaWJyYXJpZXMgaXQgaXMgbGlua2VkIGFn YWluc3QNCit0byBiZSBwcmVsaW5rZWQgYWxyZWFkeS4gUHJlbGluayBoYXMg dHdvIG1haW4gbW9kZXMgaW4gd2hpY2ggaXQgY29sbGVjdHMNCitmaWxlbmFt ZXMuDQorDQorT25lIGlzIGluY3JlbWVudGFsIHByZWxpbmtpbmcsIHdoZXJl IHByZWxpbmsgaXMgaW52b2tlZCB3aXRob3V0IHRoZSAtYSBvcHRpb24uDQor DQorSW4gdGhpcyBtb2RlLCBwcmVsaW5rIHF1ZXVlcyBmb3IgcHJlbGlua2lu ZyBhbGwgZXhlY3V0YWJsZXMgYW5kIHNoYXJlZA0KK2xpYnJhcmllcyBnaXZl biBvbiB0aGUgY29tbWFuZCBsaW5lLCBhbGwgZXhlY3V0YWJsZXMgaW4gZGly ZWN0b3J5IHRyZWVzDQorc3BlY2lmaWVkIG9uIHRoZSBjb21tYW5kIGxpbmUs IGFuZCBhbGwgc2hhcmVkIGxpYnJhcmllcyB0aG9zZSBleGVjdXRhYmxlcyBh bmQNCitzaGFyZWQgbGlicmFyaWVzIGFyZSBsaW5rZWQgYWdhaW5zdC4NCisN CitGb3IgdGhlIHJlYXNvbnMgbWVudGlvbmVkIGVhcmxpZXIgYSBzaGFyZWQg bGlicmFyeSBpcyBxdWV1ZWQgb25seSBpZiBhIHByb2dyYW0NCitpcyBsaW5r ZWQgd2l0aCBpdCBvciB0aGUgdXNlciB0ZWxscyB0aGUgdG9vbCB0byBkbyBp dCBhbnl3YXkgYnkgZXhwbGljaXRseQ0KK21lbnRpb25pbmcgaXQgb24gdGhl IGNvbW1hbmQgbGluZS4NCisNCitUaGUgc2Vjb25kIG1vZGUgaXMgZnVsbCBw cmVsaW5raW5nLCB3aGVyZSB0aGUgLWEgb3B0aW9uIGlzIGdpdmVuIG9uIHRo ZQ0KK2NvbW1hbmQgbGluZS4NCisNCitUaGlzIGluIGFkZGl0aW9uIHRvIGlu Y3JlbWVudGFsIHByZWxpbmtpbmcgcXVldWVzIGFsbCBleGVjdXRhYmxlcyBm b3VuZCBpbg0KK2RpcmVjdG9yeSB0cmVlcyBzcGVjaWZpZWQgaW4gcHJlbGlu ay5jb25mICh3aGljaCB0eXBpY2FsbHkgaW5jbHVkZXMgYWxsIG9yDQorbW9z dCBkaXJlY3RvcmllcyB3aGVyZSBzeXN0ZW0gZXhlY3V0YWJsZXMgYXJlIGZv dW5kKS4NCisNCitGb3IgZWFjaCBkaXJlY3Rvcnkgc3VidHJlZSBpbiB0aGUg Y29uZmlnIGZpbGUgdGhlIHVzZXIgY2FuIHNwZWNpZnkgd2hldGhlcg0KK3N5 bWJvbGljIGxpbmtzIHRvIHBsYWNlcyBvdXRzaWRlIG9mIHRoZSB0cmVlIGFy ZSB0byBiZSBmb2xsb3dlZCBvciBub3QgYW5kDQord2hldGhlciBzZWFyY2hp bmcgc2hvdWxkIGNvbnRpbnVlIGV2ZW4gYWNyb3NzIGZpbGVzeXN0ZW0gYm91 bmRhcmllcy4NCisNCitUaGVyZSBpcyBhbHNvIGFuIG9wdGlvbiB0byBibGFj a2xpc3Qgc29tZSBleGVjdXRhYmxlcyBvciBkaXJlY3RvcnkgdHJlZXMgc28N Cit0aGF0IHRoZSBleGVjdXRhYmxlcyBvciBhbnl0aGluZyBpbiB0aGUgZGly ZWN0b3J5IHRyZWVzIHdpbGwgbm90IGJlIHByZWxpbmtlZC4NCitUaGlzIGNh biBiZSBzcGVjaWZpZWQgZWl0aGVyIG9uIHRoZSBjb21tYW5kIGxpbmUgb3Ig aW4gdGhlIGNvbmZpZyBmaWxlLg0KKw0KK1ByZWxpbmsgd2lsbCBub3QgYXR0 ZW1wdCB0byBjaGFuZ2UgZXhlY3V0YWJsZXMgd2hpY2ggdXNlIGEgbm9uLXN0 YW5kYXJkDQorZHluYW1pYyBsaW5rZXIgZm9yIHNlY3VyaXR5IHJlYXNvbnMs IGJlY2F1c2UgaXQgYWN0dWFsbHkgbmVlZHMgdG8gZXhlY3V0ZQ0KK3RoZSBk eW5hbWljIGxpbmtlciBmb3Igc3ltYm9sIGxvb2t1cCBhbmQgaXQgbmVlZHMg dG8gYXZvaWQgZXhlY3V0aW5nIHNvbWUNCityYW5kb20gdW5rbm93biBleGVj dXRhYmxlIHdpdGggdGhlIHBlcm1pc3Npb25zIHdpdGggd2hpY2ggcHJlbGlu ayBpcyBydW4NCisodHlwaWNhbGx5IHJvb3QsIHdpdGggdGhlIHBlcm1pc3Np b25zIGF0IGxlYXN0IGZvciBjaGFuZ2luZyBhbGwgZXhlY3V0YWJsZXMNCith bmQgc2hhcmVkIGxpYnJhcmllcyBpbiB0aGUgc3lzdGVtKS4NCisNCitbIFN0 YW5kYXJkIGR5bmFtaWMgbGlua2VyIHBhdGggaXMgaGFyZGNvZGVkIGluIHRo ZSBleGVjdXRhYmxlIGZvciBlYWNoDQorICBhcmNoaXRlY3R1cmUuIEl0IGNh biBiZSBvdmVycmlkZGVuIGZyb20gdGhlIGNvbW1hbmQgbGluZSwgYnV0IG9u bHkgd2l0aA0KKyAgb25lIGR5bmFtaWMgbGlua2VyIG5hbWUgKG5vcm1hbGx5 LCBtdWx0aXBsZSBzdGFuZGFyZCBkeW5hbWljIGxpbmtlcnMgYXJlDQorICB1 c2VkIHdoZW4gcHJlbGlua2luZyBtaXhlZCBhcmNoaXRlY3R1cmUgc3lzdGVt cykuIF0NCisNCitUaGUgYWRtaW5pc3RyYXRvciBzaG91bGQgZW5zdXJlIHRo YXQgcHJlbGluay5jb25mIGRvZXNu4oCZdCBjb250YWluDQord29ybGQtd3Jp dGFibGUgZGlyZWN0b3JpZXMgYW5kIHN1Y2ggZGlyZWN0b3JpZXMgYXJlIG5v dCBnaXZlbiB0byB0aGUgdG9vbCBvbg0KK3RoZSBjb21tYW5kIGxpbmUgZWl0 aGVyLCBidXQgdGhlIHRvb2wgc2hvdWxkIGJlIGRpc3RydXN0ZnVsIG9mIHRo ZSBvYmplY3RzDQorbmV2ZXJ0aGVsZXNzLg0KKw0KK0Fsc28sIHByZWxpbmsg d2lsbCBub3QgY2hhbmdlIHNoYXJlZCBsaWJyYXJpZXMgd2hpY2ggYXJlIG5v dCBzcGVjaWZpZWQNCitkaXJlY3RseSBvbiB0aGUgY29tbWFuZCBsaW5lIG9y IGxvY2F0ZWQgaW4gdGhlIGRpcmVjdG9yeSB0cmVlcyBzcGVjaWZpZWQgb24N Cit0aGUgY29tbWFuZCBsaW5lIG9yIGluIHRoZSBjb25maWcgZmlsZS4gVGhp cyBpcyBzbyB0aGF0IGUuZy4gcHJlbGluayBkb2VzbuKAmXQNCit0cnkgdG8g Y2hhbmdlIHNoYXJlZCBsaWJyYXJpZXMgb24gc2hhcmVkIG5ldHdvcmtlZCBm aWxlc3lzdGVtcywgb3IgYXQgbGVhc3QgaXQNCitpcyBwb3NzaWJsZSB0byBj b25maWd1cmUgdGhlIHRvb2wgc28gdGhhdCBpdCBkb2VzbuKAmXQgZG8gaXQu DQorDQorRm9yIGVhY2ggZXhlY3V0YWJsZSBhbmQgc2hhcmVkIGxpYnJhcnkg aXQgY29sbGVjdHMsIHByZWxpbmsgZXhlY3V0ZXMgdGhlDQorZHluYW1pYyBs aW5rZXIgdG8gbGlzdCBhbGwgc2hhcmVkIGxpYnJhcmllcyBpdCBkZXBlbmRz IG9uLCBjaGVja3MgaWYgaXQgaXMNCithbHJlYWR5IHByZWxpbmtlZCBhbmQg d2hldGhlciBhbnkgb2YgaXRzIGRlcGVuZGVuY2llcyBjaGFuZ2VkLg0KKw0K K09iamVjdHMgd2hpY2ggYXJlIGFscmVhZHkgcHJlbGlua2VkIGFuZCBoYXZl IG5vIGRlcGVuZGVuY2llcyB3aGljaCBjaGFuZ2VkDQorZG9u4oCZdCBoYXZl IHRvIGJlIHByZWxpbmtlZCBhZ2FpbiAod2l0aCB0aGUgZXhjZXB0aW9uIHdo ZW4gZS5nLiB2aXJ0dWFsIGFkZHJlc3MNCitzcGFjZSBsYXlvdXQgY29kZSBm aW5kcyBvdXQgaXQgbmVlZHMgdG8gYXNzaWduIG5ldyB2aXJ0dWFsIGFkZHJl c3Mgc3BhY2Ugc2xvdHMNCitmb3IgdGhlIHNoYXJlZCBsaWJyYXJ5IG9yIG9u ZSBvZiBpdHMgZGVwZW5kZW5jaWVzKS4NCisNCitSdW5uaW5nIHRoZSBkeW5h bWljIGxpbmtlciB0byBnZXQgdGhlIHN5bWJvbCBsb29rdXAgaW5mb3JtYXRp b24gaXMgYSBxdWl0ZQ0KK2Nvc3RseSBvcGVyYXRpb24gZXNwZWNpYWxseSBv biBzeXN0ZW1zIHdpdGggbWFueSBleGVjdXRhYmxlcyBhbmQgc2hhcmVkDQor bGlicmFyaWVzIGluc3RhbGxlZCwgc28gcHJlbGluayBvZmZlcnMgYSBmYXN0 ZXIgLXEgbW9kZS4NCisNCitJbiBhbGwgbW9kZXMsIHByZWxpbmsgc3RvcmVz IG1vZGlmaWNhdGlvbiBhbmQgY2hhbmdlIHRpbWVzIG9mIGVhY2ggc2hhcmVk DQorbGlicmFyeSBhbmQgZXhlY3V0YWJsZSB0b2dldGhlciB3aXRoIGFsbCBv YmplY3QgZGVwZW5kZW5jaWVzIGFuZCBvdGhlcg0KK2luZm9ybWF0aW9uIGlu dG8gcHJlbGluay5jYWNoZSBmaWxlLg0KKw0KK1doZW4gcHJlbGlua2luZyBp biAtcSBtb2RlLCBpdCBqdXN0IGNvbXBhcmVzIG1vZGlmaWNhdGlvbiBhbmQg Y2hhbmdlIHRpbWVzIG9mDQordGhlIGV4ZWN1dGFibGVzIGFuZCBzaGFyZWQg bGlicmFyaWVzIChhbmQgYWxsIHRoZWlyIGRlcGVuZGVuY2llcykuDQorDQor Q2hhbmdlIHRpbWUgaXMgbmVlZGVkIGJlY2F1c2UgcHJlbGluayBwcmVzZXJ2 ZXMgbW9kaWZpY2F0aW9uIHRpbWUgd2hlbg0KK3ByZWxpbmtpbmcgKGFzIHdl bGwgYXMgcGVybWlzc2lvbnMsIG93bmVyIGFuZCBncm91cCkuIElmIHRoZSB0 aW1lcyBtYXRjaCwgaXQNCithc3N1bWVzIHRoZSBmaWxlIGhhcyBub3QgY2hh bmdlZCBzaW5jZSBsYXN0IHByZWxpbmtpbmcuIFRoZXJlZm9yZSB0aGUgZmls ZSBjYW4NCitiZSBza2lwcGVkIGlmIGl0IGlzIGFscmVhZHkgcHJlbGlua2Vk IGFuZCBub25lIG9mIHRoZSBkZXBlbmRlbmNpZXMgY2hhbmdlZC4NCisNCitJ ZiBhbnkgdGltZSBjaGFuZ2VkIG9yIG9uZSBvZiB0aGUgZGVwZW5kZW5jaWVz IGNoYW5nZWQsIGl0IGludm9rZXMgdGhlIGR5bmFtaWMNCitsaW5rZXIgdGhl IHNhbWUgd2F5IGFzIGluIG5vcm1hbCBtb2RlIHRvIGZpbmQgb3V0IHJlYWwg ZGVwZW5kZW5jaWVzLCB3aGV0aGVyDQoraXQgaGFzIGJlZW4gcHJlbGlua2Vk IG9yIG5vdCBldGMuIFRoZSBjb2xsZWN0aW5nIHBoYXNlIGluIG5vcm1hbCBt b2RlIGNhbiB0YWtlDQorYSBmZXcgbWludXRlcywgd2hpbGUgaW4gcXVpY2sg bW9kZSB1c3VhbGx5IHRha2VzIGp1c3QgYSBmZXcgc2Vjb25kcywgYXMgdGhl DQorb25seSBvcGVyYXRpb24gaXQgZG9lcyBpcyBpdCBjYWxscyBqdXN0IGxv dHMgb2Ygc3RhdCBzeXN0ZW0gY2FsbHMuDQorDQorPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PQ0KKw0KKzUgQXNzaWduaW5nIHZpcnR1YWwgYWRk cmVzcyBzcGFjZSBzbG90cw0KKw0KK1ByZWxpbmsgaGFzIHRvIGVuc3VyZSBh dCBsZWFzdCB0aGF0IGZvciBhbGwgc3VjY2Vzc2Z1bGx5IHByZWxpbmtlZCBl eGVjdXRhYmxlcw0KK2FsbCBzaGFyZWQgbGlicmFyaWVzIHRoZXkgYXJlICh0 cmFuc2l0aXZlbHkpIGxpbmtlZCBhZ2FpbnN0IGhhdmUNCitub24tb3Zlcmxh cHBpbmcgdmlydHVhbCBhZGRyZXNzIHNwYWNlIHNsb3RzIChmdXJ0aGVybW9y ZSB0aGV5IGNhbm5vdCBvdmVybGFwDQord2l0aCB0aGUgdmlydHVhbCBhZGRy ZXNzIHNwYWNlIHJhbmdlIHVzZWQgYnkgdGhlIGV4ZWN1dGFibGUgaXRzZWxm LCBpdHMgYnJrDQorYXJlYSwgdHlwaWNhbCBzdGFjayBsb2NhdGlvbiBhbmQg bGQuc28uY2FjaGUgYW5kIG90aGVyIGZpbGVzIG1tYXBlZCBieSB0aGUNCitk eW5hbWljIGxpbmtlciBpbiBlYXJseSBzdGFnZXMgb2YgZHluYW1pYyBsaW5r aW5nIChiZWZvcmUgYWxsIGRlcGVuZGVuY2llcyBhcmUNCittbWFwZWQpLg0K Kw0KK0lmIHRoZXJlIHdlcmUgYW55IG92ZXJsYXBzLCB0aGUgZHluYW1pYyBs aW5rZXIgKHdoaWNoIG1tYXBzIHRoZSBzaGFyZWQNCitsaWJyYXJpZXMgYXQg dGhlIGRlc2lyZWQgbG9jYXRpb24gd2l0aG91dCBNQVBfRklYRUQgbW1hcCBm bGFnIHNvIHRoYXQgaXQgaXMNCitvbmx5IHNvZnQgcmVxdWlyZW1lbnQpIHdv dWxkIG5vdCBtYW5hZ2UgdG8gbW1hcCB0aGVtIGF0IHRoZSBhc3NpZ25lZCBs b2NhdGlvbnMNCithbmQgdGhlIHByZWxpbmtpbmcgaW5mb3JtYXRpb24gd291 bGQgYmUgaW52YWxpZGF0ZWQgKHRoZSBkeW5hbWljIGxpbmtlciB3b3VsZA0K K2hhdmUgdG8gZG8gYWxsIG5vcm1hbCByZWxvY2F0aW9uIGhhbmRsaW5nIGFu ZCBzeW1ib2wgbG9va3VwcykuDQorDQorRXhlY3V0YWJsZXMgYXJlIGxpbmtl ZCBhZ2FpbnN0IHZlcnkgd2lkZSB2YXJpZXR5IG9mIHNoYXJlZCBsaWJyYXJ5 DQorY29tYmluYXRpb25zIGFuZCB0aGF0IGhhcyB0byBiZSB0YWtlbiBpbnRv IGFjY291bnQuDQorDQorVGhlIHNpbXBsZXN0IGFwcHJvYWNoIGlzIHRvIHNv cnQgc2hhcmVkIGxpYnJhcmllcyBieSBkZXNjZW5kaW5nIHVzYWdlIGNvdW50 DQorKHNvIHRoYXQgbW9zdCBvZnRlbiB1c2VkIHNoYXJlZCBsaWJyYXJpZXMg bGlrZSB0aGUgZHluYW1pYyBsaW5rZXIsIGxpYmMuc28NCitldGMuIGFyZSBj bG9zZSB0byBlYWNoIG90aGVyKSBhbmQgYXNzaWduIHRoZW0gY29uc2VjdXRp dmUgc2xvdHMgc3RhcnRpbmcgYXQNCitzb21lIGFyY2hpdGVjdHVyZSBzcGVj aWZpYyBiYXNlIGFkZHJlc3MgKHdpdGggYSBwYWdlIG9yIHR3byBpbiBiZXR3 ZWVuIHRoZQ0KK3NoYXJlZCBsaWJyYXJpZXMgdG8gYWxsb3cgZm9yIGEgbGlt aXRlZCBncm93dGggb2Ygc2hhcmVkIGxpYnJhcmllcyB3aXRob3V0DQoraGF2 aW5nIHRvIHJlcG9zaXRpb24gdGhlbSkuDQorDQorUHJlbGluayBoYXMgdG8g ZmluZCBvdXQgd2hpY2ggc2hhcmVkIGxpYnJhcmllcyB3aWxsIG5lZWQgYSBS RUwgdG8gUkVMQQ0KK2NvbnZlcnNpb24gb2YgcmVsb2NhdGlvbiBzZWN0aW9u cyBhbmQgZm9yIHRob3NlIHdoaWNoIHdpbGwgbmVlZCB0aGUgY29udmVyc2lv bg0KK2NvdW50IHdpdGggdGhlIGluY3JlYXNlZCBzaXplIG9mIHRoZSBsaWJy YXJ54oCZcyBsb2FkYWJsZSBzZWdtZW50cy4NCitUaGlzIGlzIHByZWxpbmsg YmVoYXZpb3Igd2l0aG91dCAtbSBhbmQgLVIgb3B0aW9ucy4NCisNCitUaGUg YXJjaGl0ZWN0dXJlIHNwZWNpZmljIGJhc2UgYWRkcmVzcyBpcyBiZXN0IGxv Y2F0ZWQgYSBmZXcgbWVnYWJ5dGVzIGFib3ZlDQordGhlIGxvY2F0aW9uIHdo ZXJlIG1tYXAgd2l0aCBOVUxMIGZpcnN0IGFyZ3VtZW50IGFuZCB3aXRob3V0 IE1BUF9GSVhFRCBzdGFydHMNCithbGxvY2F0aW5nIG1lbW9yeSBhcmVhcyAo aW4gTGludXggdGhpcyBpcyB0aGUgdmFsdWUgb2YgVEFTS19VTk1BUFBFRF9C QVNFDQorbWFjcm8pLiBUaGUgcmVhc29uIGZvciBub3Qgc3RhcnRpbmcgdG8g YXNzaWduIGFkZHJlc3NlcyBpbiBwcmVsaW5rIGltbWVkaWF0ZWx5DQorYXQg VEFTS19VTk1BUFBFRF9CQVNFIGlzIHRoYXQgbGQuc28uY2FjaGUgYW5kIG90 aGVyIG1hcHBpbmdzIGJ5IHRoZSBkeW5hbWljDQorbGlua2VyIHdpbGwgZW5k IHVwIGluIHRoZSBzYW1lIHJhbmdlIGFuZCBjb3VsZCBvdmVybGFwIHdpdGgg dGhlIHNoYXJlZA0KK2xpYnJhcmllcy4NCisNCitbIFRBU0tfVU5NQVBQRURf QkFTRSBoYXMgYmVlbiBjaG9zZW4gb24gZWFjaCBwbGF0Zm9ybSBzbyB0aGF0 IHRoZXJlIGlzIGVub3VnaA0KKyAgdmlydHVhbCBtZW1vcnkgZm9yIGJvdGgg dGhlIGJyayBhcmVhIChiZXR3ZWVuIGV4ZWN1dGFibGXigJlzIGVuZCBhbmQg dGhpcw0KKyAgbWVtb3J5IGFkZHJlc3MpIGFuZCBtbWFwIGFyZWEgKGJldHdl ZW4gdGhpcyBhZGRyZXNzIGFuZCBib3R0b20gb2Ygc3RhY2spLiBdDQorDQor QWxzbywgaWYgc29tZSBhcHBsaWNhdGlvbiB1c2VzIGRsb3BlbiB0byBsb2Fk IGEgc2hhcmVkIGxpYnJhcnkgd2hpY2ggaGFzIGJlZW4NCitwcmVsaW5rZWQq LCB0aG9zZSBmZXcgbWVnYWJ5dGVzIGFib3ZlIFRBU0tfVU5NQVBQRURfQkFT RSBpbmNyZWFzZSB0aGUNCitwcm9iYWJpbGl0eSB0aGF0IHRoZSBzdGFjayBz bG90IHdpbGwgYmUgc3RpbGwgdW51c2VkIChpdCBjYW4gY2xhc2ggd2l0aCBl LmcuDQorbm9uLXByZWxpbmtlZCBzaGFyZWQgbGlicmFyaWVzIGxvYWRlZCBi eSBkbG9wZW4gZWFybGllcioqIG9yIG90aGVyIGtpbmRzIG9mDQorbW1hcCBj YWxscyB3aXRoIE5VTEwgZmlyc3QgYXJndW1lbnQgbGlrZSBtYWxsb2MgYWxs b2NhdGluZyBiaWcgY2h1bmtzIG9mDQorbWVtb3J5LCBtbWFwaW5nIG9mIGxv Y2FsZSBkYXRhYmFzZSwgZXRjLikuDQorDQorKiBbIFR5cGljYWxseSB0aGlz IGlzIGJlY2F1c2Ugc29tZSBvdGhlciBleGVjdXRhYmxlIGlzIGxpbmtlZCBh Z2FpbnN0DQorICAgIHRoYXQgc2hhcmVkIGxpYnJhcnkgZGlyZWN0bHkuIF0N CisNCisqKiBbIElmIHNoYXJlZCBsaWJyYXJpZXMgaGF2ZSBmaXJzdCBQVF9M T0FEIHNlZ21lbnTigJlzIHZpcnR1YWwgYWRkcmVzcyB6ZXJvLA0KKyAgICAg dGhlIGtlcm5lbCB0eXBpY2FsbHkgcGlja3MgZmlyc3QgZW1wdHkgc2xvdCBh Ym92ZSBUQVNLX1VOTUFQUEVEX0JBU0UNCisgICAgIGJpZyBlbm91Z2ggZm9y IHRoZSBtYXBwaW5nLl0NCisNCisNCitUaGlzIHNpbXBsZXN0IGFwcHJvYWNo IGlzIHVuZm9ydHVuYXRlbHkgcHJvYmxlbWF0aWMgb24gMzItYml0IChvciAz MS1iaXQpDQorYXJjaGl0ZWN0dXJlcyB3aGVyZSB0aGUgdG90YWwgdmlydHVh bCBhZGRyZXNzIHNwYWNlIGZvciBhIHByb2Nlc3MgaXMgc29tZXdoZXJlDQor YmV0d2VlbiAyR0IgKFMvMzkwKSBhbmQgYWxtb3N0IDRHQiAoTGludXggSUEt MzIgNEdCLzRHQiBrZXJuZWwgc3BsaXQsIEFNRDY0DQorcnVubmluZyAzMi1i aXQgcHJvY2Vzc2VzLCBldGMuKS4NCisNCitUeXBpY2FsIGluc3RhbGxhdGlv bnMgdGhlc2UgZGF5cyBjb250YWluIHRob3VzYW5kcyBvZiBzaGFyZWQgbGli cmFyaWVzIGFuZCBpZg0KK2VhY2ggb2YgdGhlbSBpcyBnaXZlbiBhIHVuaXF1 ZSBhZGRyZXNzIHNwYWNlIHNsb3QsIG9uIGF2ZXJhZ2UgZXhlY3V0YWJsZXMg d2lsbA0KK2hhdmUgcHJldHR5IHNwYXJzZSBtYXBwaW5nIG9mIGl0cyBzaGFy ZWQgbGlicmFyaWVzIGFuZCB0aGVyZSB3aWxsIGJlIGxlc3MNCitjb250aWd1 b3VzIHZpcnR1YWwgbWVtb3J5IGZvciBhcHBsaWNhdGlvbuKAmXMgb3duIHVz ZS4NCisNCitbIEVzcGVjaWFsbHkgZGF0YWJhc2VzIGxvb2sgdGhlc2UgZGF5 cyBmb3IgZXZlcnkgYnl0ZSBvZiB2aXJ0dWFsIGFkZHJlc3MNCisgIHNwYWNl IG9uIDMyLWJpdCBhcmNoaXRlY3R1cmVzLiBdDQorDQorUHJlbGluayBoYXMg YSBzcGVjaWFsIG1vZGUsIHR1cm5lZCBvbiB3aXRoIC1tIG9wdGlvbiwgaW4g d2hpY2ggaXQgY29tcHV0ZXMNCit3aGF0IHNoYXJlZCBsaWJyYXJpZXMgYXJl IGV2ZXIgbG9hZGVkIHRvZ2V0aGVyIGluIHNvbWUgZXhlY3V0YWJsZSAobm90 DQorY29uc2lkZXJpbmcgZGxvcGVuKS4NCisNCitJZiB0d28gc2hhcmVkIGxp YnJhcmllcyBhcmUgZXZlciBsb2FkZWQgdG9nZXRoZXIsIHByZWxpbmsgYXNz aWducyB0aGVtDQorZGlmZmVyZW50IHZpcnR1YWwgYWRkcmVzcyBzcGFjZSBz bG90cywgYnV0IGlmIHRoZXkgbmV2ZXIgYXBwZWFyIHRvZ2V0aGVyLA0KK2l0 IGNhbiBnaXZlIHRoZW0gb3ZlcmxhcHBpbmcgYWRkcmVzc2VzLg0KKw0KK0Zv ciBleGFtcGxlIGFwcGxpY2F0aW9ucyB1c2luZyBLREUgdG9vbGtpdCBsaW5r IHR5cGljYWxseSBhZ2FpbnN0IG1hbnkgS0RFDQorc2hhcmVkIGxpYnJhcmll cywgcHJvZ3JhbXMgd3JpdHRlbiB1c2luZyB0aGUgR3RrKyB0b29sa2l0IGxp bmsgdHlwaWNhbGx5DQorYWdhaW5zdCBtYW55IEd0aysgc2hhcmVkIGxpYnJh cmllcywgYnV0IHRoZXJlIGFyZSBqdXN0IHZlcnkgZmV3IHByb2dyYW1zIHdo aWNoDQorbGluayBhZ2FpbnN0IGJvdGggS0RFIGFuZCBHdGsrIHNoYXJlZCBs aWJyYXJpZXMsIGFuZCBldmVuIGlmIHRoZXkgZG8sIHRoZXkNCitsaW5rIGFn YWluc3QgdmVyeSBzbWFsbCBzdWJzZXQgb2YgdGhvc2Ugc2hhcmVkIGxpYnJh cmllcy4NCisNCitTbyBhbGwgS0RFIHNoYXJlZCBsaWJyYXJpZXMgbm90IGlu IHRoYXQgc3Vic2V0IGNhbiB1c2Ugb3ZlcmxhcHBpbmcgYWRkcmVzc2VzDQor d2l0aCBhbGwgR3RrKyBzaGFyZWQgbGlicmFyaWVzIGJ1dCB0aGUgZmV3IGV4 Y2VwdGlvbnMuIFRoaXMgbGVhZHMgdG8NCitjb25zaWRlcmFibHkgc21hbGxl ciB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2UgcmFuZ2UgdXNlZCBieSBhbGwgcHJl bGlua2VkIHNoYXJlZA0KK2xpYnJhcmllcywgYnV0IGl0IGhhcyBpdHMgb3du IGRpc2FkdmFudGFnZXMgdG9vLg0KKw0KK0l0IGRvZXNu4oCZdCB3b3JrIHRv byB3ZWxsIHdpdGggaW5jcmVtZW50YWwgcHJlbGlua2luZywgYmVjYXVzZSB0 aGVuIG5vdCBhbGwNCitleGVjdXRhYmxlcyBhcmUgaW52ZXN0aWdhdGVkLCBq dXN0IHRob3NlIHdoaWNoIGFyZSBnaXZlbiBvbiBwcmVsaW5r4oCZcyBjb21t YW5kDQorbGluZS4gUHJlbGluayBhbHNvIGNvbnNpZGVycyBleGVjdXRhYmxl cyBpbiBwcmVsaW5rLmNhY2hlLCBidXQgaXQgaGFzIG5vDQoraW5mb3JtYXRp b24gYWJvdXQgZXhlY3V0YWJsZXMgd2hpY2ggaGF2ZSBub3QgYmVlbiBwcmVs aW5rZWQgeWV0LiBJZiBhIG5ldw0KK2V4ZWN1dGFibGUsIHdoaWNoIGxpbmtz IGFnYWluc3Qgc29tZSBzaGFyZWQgbGlicmFyaWVzIHdoaWNoIG5ldmVyIGFw cGVhcmVkDQordG9nZXRoZXIgYmVmb3JlLCBpcyBwcmVsaW5rZWQgbGF0ZXIs IHByZWxpbmsgaGFzIHRvIGFzc2lnbiB0aGVtIG5ldywNCitub24tb3Zlcmxh cHBpbmcgYWRkcmVzc2VzLg0KKw0KK1RoaXMgbWVhbnMgdGhhdCBhbnkgZXhl Y3V0YWJsZXMsIHdoaWNoIGxpbmtlZCBhZ2FpbnN0IHRoZSBsaWJyYXJ5IHRo YXQgaGFzDQorYmVlbiBtb3ZlZCBhbmQgcmUtcHJlbGlua2VkLCBuZWVkIHRv IGJlIHByZWxpbmtlZCBhZ2Fpbi4gSWYgdGhpcyBoYXBwZW5lZA0KK2R1cmlu ZyBpbmNyZW1lbnRhbCBwcmVsaW5raW5nLCBwcmVsaW5rIHdpbGwgZml4IHVw IG9ubHkgdGhlIGV4ZWN1dGFibGVzIGdpdmVuDQorb24gdGhlIGNvbW1hbmQg bGluZSwgbGVhdmluZyBvdGhlciBleGVjdXRhYmxlcyB1bnRvdWNoZWQuIFRo ZSB1bnRvdWNoZWQNCitleGVjdXRhYmxlcyB3b3VsZCBub3QgYmUgYWJsZSB0 byBiZW5lZml0IGZyb20gcHJlbGlua2luZyBhbnltb3JlLg0KKw0KK0FsdGhv dWdoIHdpdGggdGhlIGFib3ZlIHR3byBsYXlvdXQgc2NoZW1lcyBzaGFyZWQg bGlicmFyeSBhZGRyZXNzZXMgY2FuIHZhcnkNCitzbGlnaHRseSBiZXR3ZWVu IGRpZmZlcmVudCBob3N0cyBydW5uaW5nIHRoZSBzYW1lIGRpc3RyaWJ1dGlv biAoZGVwZW5kaW5nIG9uDQordGhlIGV4YWN0IHNldCBvZiBpbnN0YWxsZWQg ZXhlY3V0YWJsZXMgYW5kIGxpYnJhcmllcyksIGVzcGVjaWFsbHkgdGhlIG1v c3QNCitvZnRlbiB1c2VkIHNoYXJlZCBsaWJyYXJpZXMgd2lsbCBoYXZlIGlk ZW50aWNhbCBiYXNlIGFkZHJlc3NlcyBvbiBkaWZmZXJlbnQNCitjb21wdXRl cnMuDQorDQorVGhpcyBpcyBvZnRlbiBub3QgZGVzaXJhYmxlIGZvciBzZWN1 cml0eSByZWFzb25zLCBiZWNhdXNlIGl0IG1ha2VzIGl0IHNsaWdodGx5DQor ZWFzaWVyIGZvciB2YXJpb3VzIGV4cGxvaXRzIHRvIGp1bXAgdG8gcm91dGlu ZXMgdGhleSB3YW50LiBTdGFuZGFyZCBMaW51eA0KK2tlcm5lbHMgYXNzaWdu IGFsd2F5cyB0aGUgc2FtZSBhZGRyZXNzZXMgdG8gc2hhcmVkIGxpYnJhcmll cyBsb2FkZWQgYnkgdGhlDQorYXBwbGljYXRpb24gYXQgZWFjaCBydW4sIHNv IHdpdGggdGhlc2Uga2VybmVscyBwcmVsaW5rIGRvZXNu4oCZdCBtYWtlIHRo aW5ncw0KK3dvcnNlLiBCdXQgdGhlcmUgYXJlIGtlcm5lbCBwYXRjaGVzLCBz dWNoIGFzIFJlZCBIYXTigJlzIEV4ZWMtU2hpZWxkLCB3aGljaA0KK3JhbmRv bWl6ZSBtZW1vcnkgbWFwcGluZ3Mgb24gZWFjaCBydW4uDQorDQorSWYgc2hh cmVkIGxpYnJhcmllcyBhcmUgcHJlbGlua2VkLCB0aGV5IGNhbm5vdCBiZSBh c3NpZ25lZCBkaWZmZXJlbnQgYWRkcmVzc2VzDQorb24gZWFjaCBydW4gKHBy ZWxpbmtpbmcgaW5mb3JtYXRpb24gY2FuIGJlIG9ubHkgdXNlZCB0byBzcGVl ZCB1cCBzdGFydHVwIGlmDQordGhleSBhcmUgbWFwcGVkIGF0IHRoZSBiYXNl IGFkZHJlc3NlcyB3aGljaCB3YXMgdXNlZCBkdXJpbmcgcHJlbGlua2luZyks IHdoaWNoDQorbWVhbnMgcHJlbGlua2luZyBtaWdodCBub3QgYmUgZGVzaXJh YmxlIG9uIHNvbWUgZWRnZSBzZXJ2ZXJzLg0KKw0KK1ByZWxpbmsgY2FuIGFz c2lnbiBkaWZmZXJlbnQgYWRkcmVzc2VzIG9uIGRpZmZlcmVudCBob3N0cyB0 aG91Z2gsIHdoaWNoIGlzDQorYWxtb3N0IHRoZSBzYW1lIGFzIGFzc2lnbmlu ZyByYW5kb20gYWRkcmVzc2VzIG9uIGVhY2ggcnVuIGZvciBsb25nIHJ1bm5p bmcNCitwcm9jZXNzZXMgc3VjaCBhcyBkYWVtb25zLg0KKw0KK0Z1cnRoZXJt b3JlLCB0aGUgYWRtaW5pc3RyYXRvciBjYW4gZm9yY2UgZnVsbCBwcmVsaW5r aW5nIGFuZCBhc3NpZ25tZW50IG9mIG5ldw0KK3JhbmRvbSBhZGRyZXNzZXMg ZXZlcnkgZmV3IGRheXMgKGlmIGhlIGlzIGFsc28gd2lsbGluZyB0byByZXN0 YXJ0IHRoZQ0KK3NlcnZpY2VzLCBzbyB0aGF0IHRoZSBvbGQgc2hhcmVkIGxp YnJhcmllcyBhbmQgZXhlY3V0YWJsZXMgZG9u4oCZdCBoYXZlIHRvIGJlDQor a2VwdCBpbiBtZW1vcnkpLg0KKw0KK1RvIGFzc2lnbiByYW5kb20gYWRkcmVz c2VzIHByZWxpbmsgaGFzIHRoZSAtUiBvcHRpb24uIFRoaXMgY2F1c2VzIGEg cmFuZG9tDQorc3RhcnRpbmcgYWRkcmVzcyBzb21ld2hlcmUgaW4gdGhlIGFy Y2hpdGVjdHVyZSBzcGVjaWZpYyByYW5nZSBpbiB3aGljaCBzaGFyZWQNCits aWJyYXJpZXMgYXJlIGFzc2lnbmVkLCBhbmQgbWlub3IgcmFuZG9tIHJlc2h1 ZmZsaW5nIGluIHRoZSBxdWV1ZSBvZiBzaGFyZWQNCitsaWJyYXJpZXMgd2hp Y2ggbmVlZCBhZGRyZXNzIGFzc2lnbm1lbnQgKG5vcm1hbGx5IGl0IGlzIHNv cnRlZCBieSBkZXNjZW5kaW5nDQordXNhZ2UgY291bnQsIHdpdGggcmFuZG9t aXphdGlvbiBzaGFyZWQgbGlicmFyaWVzIHdoaWNoIGFyZSBub3QgdmVyeSBm YXIgYXdheQ0KK2Zyb20gZWFjaCBvdGhlciBpbiB0aGUgc29ydGVkIGxpc3Qg Y2FuIGJlIHN3YXBwZWQpLg0KKw0KK1RoZSAtUiBvcHRpb24gc2hvdWxkIHdv cmsgb3J0aG9nb25hbGx5IHRvIHRoZSAtbSBvcHRpb24uIFNvbWUgYXJjaGl0 ZWN0dXJlcw0KK2hhdmUgc3BlY2lhbCBmdXJ0aGVyIHJlcXVpcmVtZW50cyBv biBzaGFyZWQgbGlicmFyeSBhZGRyZXNzIGFzc2lnbm1lbnQuIE9uDQorMzIt Yml0IFBvd2VyUEMsIGlmIHNoYXJlZCBsaWJyYXJpZXMgYXJlIGxvY2F0ZWQg Y2xvc2UgdG8gdGhlIGV4ZWN1dGFibGUsIHNvDQordGhhdCBldmVyeXRoaW5n IGZpdHMgaW50byAzMk1CIGFyZWEsDQorDQorUExUIHNsb3RzIHJlc29sdmlu ZyB0byB0aG9zZSBzaGFyZWQgbGlicmFyaWVzIGNhbiB1c2UgdGhlIGJyYW5j aCByZWxhdGl2ZQ0KK2luc3RydWN0aW9uIGluc3RlYWQgb2YgbW9yZSBleHBl bnNpdmUgc2VxdWVuY2VzIGludm9sdmluZyBtZW1vcnkgbG9hZCBhbmQNCitp bmRpcmVjdCBicmFuY2guDQorDQorSWYgc2hhcmVkIGxpYnJhcmllcyBhcmUg bG9jYXRlZCBpbiB0aGUgZmlyc3QgMzJNQiBvZiBhZGRyZXNzIHNwYWNlLCBQ TFQgc2xvdHMNCityZXNvbHZpbmcgdG8gdGhvc2Ugc2hhcmVkIGxpYnJhcmll cyBjYW4gdXNlIHRoZSBicmFuY2ggYWJzb2x1dGUgaW5zdHJ1Y3Rpb24NCiso YnV0IGFscmVhZHkgUExUIHNsb3RzIGluIHRob3NlIHNoYXJlZCBsaWJyYXJp ZXMgcmVzb2x2aW5nIHRvIGFkZHJlc3NlcyBpbiB0aGUNCitleGVjdXRhYmxl IGNhbm5vdCBiZSBkb25lIGNoZWFwbHkpLg0KKw0KK1RoaXMgbWVhbnMgZm9y IG9wdGltaXphdGlvbiBwcmVsaW5rIHNob3VsZCBhc3NpZ24gYWRkcmVzc2Vz IGZyb20gYSAyNE1CIHJlZ2lvbg0KK2JlbG93IHRoZSBleGVjdXRhYmxlIGZp cnN0LCBhc3N1bWluZyBtb3N0IG9mIHRoZSBleGVjdXRhYmxlcyBhcmUgc21h bGxlciB0aGFuDQordGhvc2UgcmVtYWluaW5nIDhNQi4gcHJlbGluayBhc3Np Z25zIHRoZXNlIGZyb20gaGlnaGVyIHRvIGxvd2VyIGFkZHJlc3Nlcy4NCisN CitXaGVuIHRoaXMgcmVnaW9uIGlzIGZ1bGwsIHByZWxpbmsgc3RhcnRzIGZy b20gYWRkcmVzcyAweDQwMDAwIHVwIHRpbGwgdGhlDQorYm90dG9tIG9mIHRo ZSBmaXJzdCBhcmVhLg0KKw0KK1sgVG8gbGVhdmUgc29tZSBwYWdlcyB1bm1h cHBlZCB0byBjYXRjaCBOVUxMIHBvaW50ZXIgZGVyZWZlcmVuY2VzLiBdDQor DQorT25seSB3aGVuIGFsbCB0aGVzZSBhcmVhcyBhcmUgZnVsbCwgcHJlbGlu ayBzdGFydHMgcGlja2luZyBhZGRyZXNzZXMgaGlnaA0KK2Fib3ZlIHRoZSBl eGVjdXRhYmxlLCBzbyB0aGF0IHN1ZmZpY2llbnQgc3BhY2UgaXMgbGVmdCBp biBiZXR3ZWVuIHRvIGxlYXZlDQorcm9vbSBmb3IgYnJrLg0KKw0KK1doZW4g LVIgb3B0aW9uIGlzIHNwZWNpZmllZCwgcHJlbGluayBuZWVkcyB0byBob25v ciBpdCwgYnV0IGluIGEgd2F5IHdoaWNoDQorZG9lc27igJl0IHRvdGFsbHkg a2lsbCB0aGlzIG9wdGltaXphdGlvbi4gU28gaXQgcGlja3MgdXAgYSByYW5k b20gc3RhcnQgYmFzZQ0KK3dpdGhpbiBlYWNoIG9mIHRoZSAzIHJlZ2lvbnMg c2VwYXJhdGVseSwgc3BsaXR0aW5nIHRoZW0gaW50byA2IHJlZ2lvbnMuDQor DQorQW5vdGhlciBhcmNoaXRlY3R1cmUgd2hpY2ggbmVlZHMgdG8gYmUgaGFu ZGxlZCBzcGVjaWFsbHkgaXMgSUEtMzIgd2hlbiB1c2luZw0KK0V4ZWMtU2hp ZWxkLiBUaGUgSUEtMzIgYXJjaGl0ZWN0dXJlIGRvZXNu4oCZdCBoYXZlIGEg Yml0IHRvIGRpc2FibGUgZXhlY3V0aW9uDQorZm9yIGVhY2ggcGFnZSwgb25s eSBmb3IgZWFjaCBzZWdtZW50LiBBbGwgcmVhZGFibGUgcGFnZXMgYXJlIG5v cm1hbGx5DQorZXhlY3V0YWJsZTogVGhpcyBtZWFucyB0aGUgc3RhY2sgaXMg dXN1YWxseSBleGVjdXRhYmxlLCBhcyBpcyBtZW1vcnkgYWxsb2NhdGVkDQor YnkgbWFsbG9jLg0KKw0KK1RoaXMgaXMgdW5kZXNpcmFibGUgZm9yIHNlY3Vy aXR5IHJlYXNvbnMsIGV4cGxvaXRzIGNhbiB0aGVuIG92ZXJmbG93IGEgYnVm ZmVyDQorb24gdGhlIHN0YWNrIHRvIHRyYW5zZmVyIGNvbnRyb2wgdG8gY29k ZSBpdCBjcmVhdGVzIG9uIHRoZSBzdGFjay4gT25seSB2ZXJ5DQorZmV3IHBy b2dyYW1zIGFjdHVhbGx5IG5lZWQgYW4gZXhlY3V0YWJsZSBzdGFjay4NCisN CitGb3IgZXhhbXBsZSBwcm9ncmFtcyB1c2luZyBHQ0MgdHJhbXBvbGluZXMg Zm9yIG5lc3RlZCBmdW5jdGlvbnMgbmVlZCBpdCBvcg0KK3doZW4gYW4gYXBw bGljYXRpb24gaXRzZWxmIGNyZWF0ZXMgZXhlY3V0YWJsZSBjb2RlIG9uIHRo ZSBzdGFjayBhbmQgY2FsbHMgaXQuDQorRXhlYy1TaGllbGQgd29ya3MgYXJv dW5kIHRoaXMgSUEzMiBhcmNoaXRlY3R1cmUgZGVmaWNpZW5jeSBieSB1c2lu ZyBhIHNlcGFyYXRlDQorY29kZSBzZWdtZW50LCB3aGljaCBzdGFydHMgYXQg YWRkcmVzcyAwIGFuZCBzcGFucyBhZGRyZXNzIHNwYWNlIHVudGlsIGl0cw0K K2xpbWl0LCBoaWdoZXN0IHBhZ2Ugd2hpY2ggbmVlZHMgdG8gYmUgZXhlY3V0 YWJsZS4gVGhpcyBpcyBkeW5hbWljYWxseSBjaGFuZ2VkDQord2hlbiBzb21l IHBhZ2Ugd2l0aCBoaWdoZXIgYWRkcmVzcyB0aGFuIHRoZSBsaW1pdCBuZWVk cyB0byBiZSBleGVjdXRhYmxlDQorKGVpdGhlciBiZWNhdXNlIG9mIG1tYXAg d2l0aCBQUk9UX0VYRUMgYml0IHNldCwgb3IgbXByb3RlY3Qgd2l0aCBQUk9U X0VYRUMgb2YNCithbiBleGlzdGluZyBtYXBwaW5nKS4NCisNCitUaGlzIGtp bmQgb2YgcHJvdGVjdGlvbiBpcyBvZiBjb3Vyc2Ugb25seSBlZmZlY3RpdmUg aWYgdGhlIGxpbWl0IGlzIGFzIGxvdyBhcyBwb3NzaWJsZS4NCisNCitUaGUg a2VybmVsIHRyaWVzIHRvIHB1dCBhbGwgbmV3IG1hcHBpbmdzIHdpdGggUFJP VF9FWEVDIHNldCBhbmQgTlVMTCBhZGRyZXNzDQorbG93LiBJZiBwb3NzaWJs ZSBpbnRvIEFTQ0lJIFNoaWVsZCBhcmVhIChmaXJzdCAxNk1CIG9mIGFkZHJl c3Mgc3BhY2UpLCBpZg0KK25vdCwgYXQgbGVhc3QgYmVsb3cgdGhlIGV4ZWN1 dGFibGUuDQorDQorSWYgcHJlbGluayBkZXRlY3RzIEV4ZWMtU2hpZWxkLCBp dCB0cmllcyB0byBkbyB0aGUgc2FtZSBhcyBrZXJuZWwgd2hlbg0KK2Fzc2ln bmluZyBhZGRyZXNzZXMsIGkuZS4gcHJlZmVycyB0byBhc3NpZ24gYWRkcmVz c2VzIGluIEFTQ0lJIFNoaWVsZCBhcmVhIGFuZA0KK2NvbnRpbnVlcyB3aXRo IG90aGVyIGFkZHJlc3NlcyBiZWxvdyB0aGUgcHJvZ3JhbS4gSXQgbmVlZHMg dG8gbGVhdmUgZmlyc3QgMU1CDQorcGx1cyA0S0Igb2YgYWRkcmVzcyBzcGFj ZSB1bmFsbG9jYXRlZCB0aG91Z2gsIGJlY2F1c2UgdGhhdCByYW5nZSBpcyBv ZnRlbiB1c2VkDQorYnkgcHJvZ3JhbXMgdXNpbmcgdm04NiBzeXN0ZW0gY2Fs bC4NCisNCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQorDQor NiBSZWxvY2F0aW9uIG9mIGxpYnJhcmllcw0KKw0KK1doZW4gYSBzaGFyZWQg bGlicmFyeSBoYXMgYSBiYXNlIGFkZHJlc3MgYXNzaWduZWQsIGl0IG5lZWRz IHRvIGJlIHJlbG9jYXRlZCBzbw0KK3RoYXQgdGhlIGJhc2UgYWRkcmVzcyBp cyBlcXVhbCB0byB0aGUgZmlyc3QgUFRfTE9BRCBzZWdtZW504oCZcyBwX3Zh ZGRyLiBUaGUNCitlZmZlY3Qgb2YgdGhpcyBvcGVyYXRpb24gc2hvdWxkIGJl IGJpdHdpc2UgaWRlbnRpY2FsIGFzIGlmIHRoZSBsaWJyYXJ5IHdlcmUNCits aW5rZWQgd2l0aCB0aGF0IGJhc2UgYWRkcmVzcyBvcmlnaW5hbGx5LiBUaGF0 IGlzLCB0aGUgZm9sbG93aW5nIHNjcmlwdHMNCitzaG91bGQgcHJvZHVjZSBp ZGVudGljYWwgb3V0cHV0Og0KKw0KKyAgJCBnY2MgLWcgLXNoYXJlZCAtbyBs aWJmb28uc28uMS4wLjAgLVdsLC1oLGxpYmZvby5zby4xIFwNCisgICAgICBp bnB1dDEubyBpbnB1dDIubyBzb21lbGliLmENCisNCisgICQgcHJlbGluayAt LXJlbG9jLW9ubHk9MHg1NDMyMTAwMCBsaWJmb28uc28uMS4wLjANCisNCith bmQ6DQorDQorICAkIGdjYyAtc2hhcmVkIC1XbCwtLXZlcmJvc2UgMj4mMSA+ IC9kZXYvbnVsbCBcDQorICAgICAgfCBzZWQgLWUg4oCZL149PT09PT0vLC9e PT09PT09LyFk4oCZIFwNCisgICAgICAgICAgICAtZSDigJkvXj09PT09PS9k O3MvMFwoICsgU0laRU9GX0hFQURFUlNcKS8weDU0MzIxMDAwXDEv4oCZIFwN CisgICAgICA+IGxpYmZvby5zby5sZHMNCisNCisgICQgZ2NjIC1XbCwtVCxs aWJmb28uc28ubGRzIC1nIC1zaGFyZWQgLW8gbGliZm9vLnNvLjEuMC4wIFwN CisgICAgICAgIC1XbCwtaCxsaWJmb28uc28uMSBpbnB1dDEubyBpbnB1dDIu byBzb21lbGliLmENCisNCitUaGUgZmlyc3Qgc2NyaXB0IGNyZWF0ZXMgYSBu b3JtYWwgc2hhcmVkIGxpYnJhcnkgd2l0aCB0aGUgZGVmYXVsdCBiYXNlIGFk ZHJlc3MNCiswIGFuZCB0aGVuIHVzZXMgcHJlbGlua+KAmXMgc3BlY2lhbCBt b2RlIHdoZW4gaXQganVzdCByZWxvY2F0ZXMgYSBsaWJyYXJ5IHRvIGENCitn aXZlbiBhZGRyZXNzLiBUaGUgc2Vjb25kIHNjcmlwdCBmaXJzdCBtb2RpZmll cyBhIGJ1aWx0LWluIEdOVSBsaW5rZXIgc2NyaXB0DQorZm9yIGxpbmtpbmcg b2Ygc2hhcmVkIGxpYnJhcmllcywgc28gdGhhdCB0aGUgYmFzZSBhZGRyZXNz IGlzIHRoZSBvbmUgZ2l2ZW4NCitpbnN0ZWFkIG9mIHplcm8gYW5kIHN0b3Jl cyBpdCBpbnRvIGEgdGVtcG9yYXJ5IGZpbGUuIFRoZW4gaXQgY3JlYXRlcyBh IHNoYXJlZA0KK2xpYnJhcnkgdXNpbmcgdGhhdCBsaW5rZXJzY3JpcHQuDQor DQorVGhlIHJlbG9jYXRpb24gb3BlcmF0aW9uIGludm9sdmVzIG1vc3RseSBh ZGRpbmcgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiBvbGQgYW5kDQorbmV3IGJh c2UgYWRkcmVzcyB0byBhbGwgRUxGIGZpZWxkcyB3aGljaCBjb250YWluIHZh bHVlcyByZXByZXNlbnRpbmcgdmlydHVhbA0KK2FkZHJlc3NlcyBvZiB0aGUg c2hhcmVkIGxpYnJhcnkgKG9yIGluIHRoZSBwcm9ncmFtIGhlYWRlciB0YWJs ZSBhbHNvDQorcmVwcmVzZW50aW5nIHBoeXNpY2FsIGFkZHJlc3NlcykuIEZp bGUgb2Zmc2V0cyBuZWVkIHRvIGJlIHVubW9kaWZpZWQuDQorDQorTW9zdCBw bGFjZXMgd2hlcmUgdGhlIGFkanVzdG1lbnRzIG5lZWQgdG8gYmUgZG9uZSBh cmUgY2xlYXIsIHByZWxpbmsganVzdCBoYXMNCit0byB3YXRjaCBFTEYgc3Bl YyB0byBzZWUgd2hpY2ggZmllbGRzIGNvbnRhaW4gdmlydHVhbCBhZGRyZXNz ZXMuIE9uZSBwcm9ibGVtDQoraXMgd2l0aCBhYnNvbHV0ZSBzeW1ib2xzLiBQ cmVsaW5rIGhhcyBubyB3YXkgdG8gZmluZCBvdXQgaWYgYW4gYWJzb2x1dGUg c3ltYm9sDQoraW4gYSBzaGFyZWQgbGlicmFyeSBpcyByZWFsbHkgbWVhbnQg YXMgYWJzb2x1dGUgYW5kIHRodXMgbm90IGNoYW5naW5nIGR1cmluZw0KK3Jl bG9jYXRpb24sIG9yIGlmIGl0IGlzIGFuIGFkZHJlc3Mgb2Ygc29tZSBwbGFj ZSBpbiB0aGUgc2hhcmVkIGxpYnJhcnkgb3V0c2lkZQ0KK29mIGFueSBzZWN0 aW9uIG9yIG9uIHRoZWlyIGVkZ2UuDQorDQorRm9yIGluc3RhbmNlIHN5bWJv bHMgY3JlYXRlZCBpbiB0aGUgR05VIGxpbmtlcuKAmXMgc2NyaXB0IG91dHNp ZGUgb2Ygc2VjdGlvbg0KK2RpcmVjdGl2ZXMgaGF2ZSBhbGwgU0hOX0FCUyBz ZWN0aW9uLCB5ZXQgdGhleSBjYW4gYmUgbG9jYXRpb24gaW4gdGhlIGxpYnJh cnkNCisoZS5nLiBzeW1ib2xmb28gPSAuKSBvciB0aGV5IGNhbiBiZSBhYnNv bHV0ZSAoZS5nLiBzeW1ib2xiYXIgPSAweDEyMzQ1MDAwKS4NCisNCitUaGlz IGRpc3RpbmN0aW9uIGlzIGxvc3QgYXQgbGluayB0aW1lLiBCdXQgdGhlIGR5 bmFtaWMgbGlua2VyIHdoZW4gbG9va2luZyB1cA0KK3N5bWJvbHMgZG9lc27i gJl0IG1ha2UgYW55IGRpc3RpbmN0aW9uIGJldHdlZW4gdGhlbSwgYWxsIGFk ZHJlc3NlcyBkdXJpbmcNCitkeW5hbWljIGxvb2t1cCBoYXZlIHRoZSBsb2Fk IG9mZnNldCBhZGRlZCB0byBpdC4NCisNCitQcmVsaW5rIGNob29zZXMgdG8g cmVsb2NhdGUgYW55IGFic29sdXRlIHN5bWJvbHMgd2l0aCB2YWx1ZSBiaWdn ZXIgdGhhbiB6ZXJvLA0KK3RoYXQgd2F5IHByZWxpbmsg4oCTcmVsb2Mtb25s eSBnZXRzIGJpdHdpc2UgaWRlbnRpY2FsIG91dHB1dCB3aXRoIGxpbmtpbmcN CitkaXJlY3RseSBhdCB0aGUgZGlmZmVyZW50IGJhc2UgaW4gYWxtb3N0IGFs bCByZWFsLXdvcmxkIGNhc2VzLg0KKw0KK1RocmVhZCBMb2NhbCBTdG9yYWdl IHN5bWJvbHMgKHRob3NlIHdpdGggU1RUX1RMUyB0eXBlKSBhcmUgbmV2ZXIg cmVsb2NhdGVkLCBhcw0KK3RoZWlyIHZhbHVlcyBhcmUgcmVsYXRpdmUgdG8g c3RhcnQgb2Ygc2hhcmVkIGxpYnJhcnnigJlzIHRocmVhZCBsb2NhbCBhcmVh Lg0KKw0KK1doZW4gcmVsb2NhdGluZyB0aGUgZHluYW1pYyBzZWN0aW9uIHRo ZXJlIGFyZSBubyBiaXRzIHdoaWNoIHRlbGwgaWYgYQ0KK3BhcnRpY3VsYXIg ZHluYW1pYyB0YWcgdXNlcyBkX3VuLmRfcHRyICh3aGljaCBuZWVkcyB0byBi ZSBhZGp1c3RlZCkgb3INCitkX3VuLmRfdmFsICh3aGljaCBuZWVkcyB0byBi ZSBsZWZ0IGFzIGlzKSwgc28gcHJlbGluayBoYXMgdG8gaGFyZGNvZGUgYSBs aXN0DQorb2Ygd2VsbCBrbm93biBhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQg ZHluYW1pYyB0YWdzIHdoaWNoIG5lZWQgYWRqdXN0aW5nIGFuZA0KK2hhdmUg YSBob29rIGZvciBhcmNoaXRlY3R1cmUgc3BlY2lmaWMgZHluYW1pYyB0YWcg YWRqdXN0bWVudC4NCisNCitTdW4gY2FtZSB1cCB3aXRoIERUX0FERFJSTkdM TyB0byBEVF9BRERSUk5HSEkgYW5kIERUX1ZBTFJOR0xPIHRvIERUX1ZBTFJO R0hJDQorZHluYW1pYyB0YWcgbnVtYmVyIHJhbmdlcywgc28gYXQgbGVhc3Qg YXMgbG9uZyBhcyB0aGVzZSByYW5nZXMgYXJlIHVzZWQgZm9yDQorbmV3IGR5 bmFtaWMgdGFncyBwcmVsaW5rIGNhbiByZWxvY2F0ZSBjb3JyZWN0bHkgZXZl biB3aXRob3V0IGxpc3RpbmcgdGhlbSBhbGwNCitleHBsaWNpdGx5Lg0KKw0K K1doZW4gcmVsb2NhdGluZyAucmVsYS4qIG9yIC5yZWwuKiBzZWN0aW9ucywg d2hpY2ggaXMgZG9uZSBpbiBhcmNoaXRlY3R1cmUNCitzcGVjaWZpYyBjb2Rl LCByZWxhdGl2ZSByZWxvY2F0aW9ucyBhbmQgb24gLmdvdC5wbHQgdXNpbmcg YXJjaGl0ZWN0dXJlcyBhbHNvDQorUExUIHJlbG9jYXRpb25zIHR5cGljYWxs eSBuZWVkIGFuIGFkanVzdG1lbnQuDQorDQorVGhlIGFkanVzdG1lbnQgbmVl ZHMgdG8gYmUgZG9uZSBpbiBlaXRoZXIgcl9hZGRlbmQgZmllbGQgb2YgdGhl IEVsZk5OX1JlbGENCitzdHJ1Y3R1cmUsIGluIHRoZSBtZW1vcnkgcG9pbnRl ZCBieSByX29mZnNldCwgb3IgaW4gYm90aCBsb2NhdGlvbnMuIE9uIHNvbWUN CithcmNoaXRlY3R1cmVzIHdoYXQgbmVlZHMgYWRqdXN0aW5nIGlzIG5vdCBl dmVuIHRoZSBzYW1lIGZvciBhbGwgcmVsYXRpdmUNCityZWxvY2F0aW9ucy4N CisNCitSZWxhdGl2ZSByZWxvY2F0aW9ucyBhZ2FpbnN0IHNvbWUgc2VjdGlv bnMgbmVlZCB0byBoYXZlIHJfYWRkZW5kIGFkanVzdGVkDQord2hpbGUgb3Ro ZXJzIG5lZWQgdG8gaGF2ZSBtZW1vcnkgYWRqdXN0ZWQuIE9uIG1hbnkgYXJj aGl0ZWN0dXJlcywgZmlyc3QgZmV3DQord29yZHMgaW4gR09UIGFyZSBzcGVj aWFsIGFuZCBzb21lIG9mIHRoZW0gbmVlZCBhZGp1c3RtZW50Lg0KKw0KK1Ro ZSBoYXJkZXN0IHBhcnQgb2YgdGhlIGFkanVzdG1lbnQgaXMgaGFuZGxpbmcg dGhlIGRlYnVnZ2luZyBzZWN0aW9ucy4gVGhlc2UNCithcmUgbm9uLWFsbG9j YXRlZCBzZWN0aW9ucyB3aGljaCB0eXBpY2FsbHkgaGF2ZSBubyBjb3JyZXNw b25kaW5nIHJlbG9jYXRpb24NCitzZWN0aW9uIGFzc29jaWF0ZWQgd2l0aCB0 aGVtLiBQcmVsaW5rIGhhcyB0byBtYXRjaCB0aGUgdmFyaW91cyBkZWJ1Z2dl cnMgaW4NCit3aGF0IGZpZWxkcyBpdCBhZGp1c3RzIGFuZCB3aGF0IGFyZSBz a2lwcGVkLg0KKw0KK0FzIG9mIHRoaXMgd3JpdGluZyBwcmVsaW5rIHNob3Vs ZCBoYW5kbGUgRFdBUkYgMiBbMTVdIHN0YW5kYXJkIGFzDQorY29ycmVjdGVk IChhbmQgZXh0ZW5kZWQpIGJ5IERXQVJGIDMgZHJhZnQgWzE2XSwgU3RhYnMg WzE3XSB3aXRoIEdDQw0KK2V4dGVuc2lvbnMgYW5kIEFscGhhIG9yIE1JUFMg TWRlYnVnLg0KKw0KK0RXQVJGIDIgZGVidWdnaW5nIGluZm9ybWF0aW9uIGlu dm9sdmVzIG1hbnkgc2VwYXJhdGUgc2VjdGlvbnMsIGVhY2ggb2YgdGhlbQ0K K3dpdGggYSB1bmlxdWUgZm9ybWF0IHdoaWNoIG5lZWRzIHRvIGJlIHJlbG9j YXRlZCBkaWZmZXJlbnRseS4gRm9yIHJlbG9jYXRpb24NCitvZiB0aGUgLmRl YnVnX2luZm8gc2VjdGlvbiBjb21waWxhdGlvbiB1bml0cyBwcmVsaW5rIGhh cyB0byBwYXJzZSB0aGUNCitjb3JyZXNwb25kaW5nIHBhcnQgb2YgdGhlIC5k ZWJ1Z19hYmJyZXYgc2VjdGlvbiwgYWRqdXN0IGFsbCB2YWx1ZXMgb2YNCith dHRyaWJ1dGVzIHRoYXQgYXJlIHVzaW5nIHRoZSBEV19GT1JNX2FkZHIgZm9y bSBhbmQgYWRqdXN0IGVtYmVkZGVkIGxvY2F0aW9uDQorbGlzdHMuIC5kZWJ1 Z19yYW5nZXMgYW5kIC5kZWJ1Z19sb2Mgc2VjdGlvbiBwb3J0aW9ucyBkZXBl bmQgb24gdGhlIGV4YWN0IHBsYWNlDQoraW4gLmRlYnVnX2luZm8gc2VjdGlv biBmcm9tIHdoaWNoIHRoZXkgYXJlIHJlZmVyZW5jZWQsIHNvIHRoYXQgcHJl bGluayBjYW4NCitrZWVwIHRyYWNrIG9mIHRoZWlyIGJhc2UgYWRkcmVzcy4N CisNCitEV0FSRiBkZWJ1Z2dpbmcgZm9ybWF0IGlzIHZlcnkgZXh0ZW5kYWJs ZSwgc28gcHJlbGluayBuZWVkcyB0byBiZSB2ZXJ5DQorY29uc2VydmF0aXZl IHdoZW4gaXQgc2VlcyB1bmtub3duIGV4dGVuc2lvbnMuIEl0IG5lZWRzIHRv IGZhaWwgcHJlbGlua2luZw0KK2luc3RlYWQgb2Ygc2lsZW50bHkgYnJlYWsg ZGVidWdnaW5nIGluZm9ybWF0aW9uIGlmIGl0IHNlZXMgYW4gdW5rbm93biAu ZGVidWdfKg0KK3NlY3Rpb24sIHVua25vd24gYXR0cmlidXRlIGZvcm0gb3Ig dW5rbm93biBhdHRyaWJ1dGUgd2l0aCBvbmUgb2YgdGhlDQorRFdfRk9STV9i bG9jayogZm9ybXMsIGFzIHRoZXkgY2FuIHBvdGVudGlhbGx5IGVtYmVkIGFk ZHJlc3NlcyB3aGljaCB3b3VsZCBuZWVkDQorYWRqdXN0bWVudC4NCisNCitG b3Igc3RhYnMgcHJlbGluayB0cmllZCB0byBtYXRjaCBHREIgYmVoYXZpb3Iu DQorDQorRm9yIE5fRlVOLCBpdCBuZWVkcyB0byBkaWZmZXJlbnRpYXRlIGJl dHdlZW4gZnVuY3Rpb24gc3RhcnQgYW5kIGZ1bmN0aW9uDQorYWRkcmVzcyB3 aGljaCBhcmUgYm90aCBlbmNvZGVkIHdpdGggdGhpcyB0eXBlLCB0aGUgcmVz dCBvZiB0eXBlcyBlaXRoZXIgYWx3YXlzDQorbmVlZCByZWxvY2F0aW5nIG9y IG5ldmVyLiBBbmQgc2ltaWxhcmx5IHRvIERXQVJGIDIgaGFuZGxpbmcsIGl0 IG5lZWRzIHRvDQorcmVqZWN0IHVua25vd24gdHlwZXMuDQorDQorVGhlIHJl bG9jYXRpb24gY29kZSBpbiBwcmVsaW5rIGlzIGEgbGl0dGxlIGJpdCBtb3Jl IGdlbmVyaWMgdGhhbiB3aGF0IGlzDQorZGVzY3JpYmVkIGFib3ZlLCBhcyBp dCBpcyB1c2VkIGFsc28gYnkgb3RoZXIgcGFydHMgb2YgcHJlbGluaywgd2hl biBncm93aW5nDQorc2VjdGlvbnMgaW4gYSBtaWRkbGUgb2YgdGhlIHNoYXJl ZCBsaWJyYXJ5IGR1cmluZyBSRUwgdG8gUkVMQSBjb252ZXJzaW9uLiBBbGwN CithZGp1c3RtZW50IGZ1bmN0aW9ucyBnZXQgcGFzc2VkIGJvdGggdGhlIG9m ZnNldCBpdCBzaG91bGQgYWRkIHRvIHZpcnR1YWwNCithZGRyZXNzZXMgYW5k IGEgc3RhcnQgYWRkcmVzcy4gQWRqdXN0bWVudCBpcyBvbmx5IGRvbmUgaWYg dGhlIG9sZCB2aXJ0dWFsDQorYWRkcmVzcyB3YXMgYmlnZ2VyIG9yIGVxdWFs IHRoYW4gdGhlIHN0YXJ0IGFkZHJlc3MuDQorDQorPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PQ0KKw0KKzcgUkVMIHRvIFJFTEEgY29udmVyc2lv bg0KKw0KK09uIGFyY2hpdGVjdHVyZXMgd2hpY2ggbm9ybWFsbHkgdXNlIHRo ZSBSRUwgZm9ybWF0IGZvciByZWxvY2F0aW9ucyBpbnN0ZWFkDQorb2YgUkVM QSAoSUEtMzIsIEFSTSBhbmQgTUlQUyksIGlmIGNlcnRhaW4gcmVsb2NhdGlv biB0eXBlcyB1c2UgdGhlIG1lbW9yeQ0KK3Jfb2Zmc2V0IHBvaW50cyB0byBk dXJpbmcgcmVsb2NhdGlvbiwgcHJlbGluayBoYXMgdG8gZWl0aGVyIGNvbnZl cnQgdGhlbSB0byBhDQorZGlmZmVyZW50IHJlbG9jYXRpb24gdHlwZSB3aGlj aCBkb2VzbuKAmXQgdXNlIHRoZSBtZW1vcnkgdmFsdWUsIG9yIHRoZSB3aG9s ZQ0KKy5yZWwuZHluIHNlY3Rpb24gbmVlZHMgdG8gYmUgY29udmVydGVkIHRv IFJFTEEgZm9ybWF0LiBMZXTigJlzIGRlc2NyaWJlIGl0IG9uIGFuDQorZXhh bXBsZSBvbiBJQS0zMiBhcmNoaXRlY3R1cmU6DQorDQorICAkIGNhdCA+IHRl c3QxLmMgPDxFT0YNCisgICAgZXh0ZXJuIGludCBpWzRdOw0KKyAgICBpbnQg KmogPSBpICsgMjsNCisgICAgRU9GDQorDQorICAkIGNhdCA+IHRlc3QyLmMg PDxFT0YNCisgICAgaW50IGlbNF07DQorICAgIEVPRg0KKw0KKyAgJCBnY2Mg LW5vc3RkbGliIC1zaGFyZWQgLWZwaWMgLXMgLW8gdGVzdDIuc28gdGVzdDIu Yw0KKw0KKyAgJCBnY2MgLW5vc3RkbGliIC1zaGFyZWQgLWZwaWMgLW8gdGVz dDEuc28gdGVzdDEuYyAuL3Rlc3QyLnNvDQorDQorICAkIHJlYWRlbGYgLWwg dGVzdDEuc28gfCBncmVwIExPQUQgfCBoZWFkIC0xDQorICAgIExPQUQgICAg MHgwMDAwMDAgMHgwMDAwMDAwMCAweDAwMDAwMDAwIDB4MDAyYjggMHgwMDJi OCBSIEUgMHgxMDAwDQorDQorICAkIHJlYWRlbGYgLWwgdGVzdDIuc28gfCBn cmVwIExPQUQgfCBoZWFkIC0xDQorICAgIExPQUQgICAgIDB4MDAwMDAwIDB4 MDAwMDAwMDAgMHgwMDAwMDAwMCAweDAwMjQ0IDB4MDAyNDQgUiBFIDB4MTAw MA0KKw0KKyAgJCByZWFkZWxmIC1yIHRlc3QxLnNvDQorICAgIFJlbG9jYXRp b24gc2VjdGlvbiDigJkucmVsLmR5buKAmSBhdCBvZmZzZXQgMHgyYjAgY29u dGFpbnMgMSBlbnRyaWVzOg0KKyAgICBPZmZzZXQgICBJbmZvICAgICBUeXBl ICAgICBTeW0uVmFsdWUgU3ltLiBOYW1lDQorICAgIDAwMDAxMmI4IDAwMDAw ZDAxIFJfMzg2XzMyIDAwMDAwMDAwICBpDQorDQorICAkIG9iamR1bXAgLXMg LWogLmRhdGEgdGVzdDEuc28NCisgICAgdGVzdDEuc286IGZpbGUgZm9ybWF0 IGVsZjMyLWkzODYNCisgICAgQ29udGVudHMgb2Ygc2VjdGlvbiAuZGF0YToN CisgICAgMTJiOCAwODAwMDAwMCAgICAgLi4uLg0KKw0KKyAgJCByZWFkZWxm IC1zIHRlc3QyLnNvIHwgZ3JlcCBpXCQNCisgICAgMTE6IDAwMDAxMmE4IDE2 IE9CSkVDVCBHTE9CQUwgREVGQVVMVCA4IGkNCisNCisgICQgcHJlbGluayAt TiAuL3Rlc3QxLnNvIC4vdGVzdDIuc28NCisgICQgcmVhZGVsZiAtbCB0ZXN0 MS5zbyB8IGdyZXAgTE9BRCB8IGhlYWQgLTENCisgICAgTE9BRCAgICAweDAw MDAwMCAweDA0ZGJhMDAwIDB4MDRkYmEwMDAgMHgwMDJiYyAweDAwMmJjIFIg RSAweDEwMDANCisNCisgICQgcmVhZGVsZiAtbCB0ZXN0Mi5zbyB8IGdyZXAg TE9BRCB8IGhlYWQgLTENCisgICAgTE9BRCAgICAweDAwMDAwMCAweDA0ZGI2 MDAwIDB4MDRkYjYwMDAgMHgwMDI0NCAweDAwMjQ0IFIgRSAweDEwMDANCisN CisgICQgcmVhZGVsZiAtciB0ZXN0MS5zbw0KKyAgICBSZWxvY2F0aW9uIHNl Y3Rpb24g4oCZLnJlbC5keW7igJkgYXQgb2Zmc2V0IDB4MmIwIGNvbnRhaW5z IDEgZW50cmllczoNCisgICAgT2Zmc2V0ICAgSW5mbyAgICAgVHlwZSAgICAg U3ltLlZhbHVlIFN5bS4gTmFtZSArIEFkZGVuZA0KKyAgICAwNGRiYjJiYyAw MDAwMGQwMSBSXzM4Nl8zMiAwMDAwMDAwMCAgICAgICBpICsgOA0KKw0KKyAg JCBvYmpkdW1wIC1zIC1qIC5kYXRhIHRlc3QxLnNvDQorICAgIHRlc3QxLnNv OiBmaWxlIGZvcm1hdCBlbGYzMi1pMzg2DQorICAgIENvbnRlbnRzIG9mIHNl Y3Rpb24gLmRhdGE6DQorICAgIDRkYmIyYmMgYjA3MmRiMDQgICAgLnIuLg0K Kw0KKyAgJCByZWFkZWxmIC1zIHRlc3QyLnNvIHwgZ3JlcCBpXCQNCisgICAg MTE6IDA0ZGI3MmE4IDE2IE9CSkVDVCBHTE9CQUwgREVGQVVMVCAgICAgOGkN CisNCitSRUwgdG8gUkVMQSBjb252ZXJzaW9uIGV4YW1wbGUNCisNCitUaGlz IHJlbG9jYXRpb24gaXMgYWdhaW5zdCBpICsgOCwgd2hlcmUgdGhlIGFkZGVu ZCBpcyBzdG9yZWQgYXQgdGhlIG1lbW9yeQ0KK2xvY2F0aW9uIHBvaW50ZWQg Ynkgcl9vZmZzZXQuIFByZWxpbmsgYXNzaWduZWQgYmFzZSBhZGRyZXNzIDB4 NGRiYTAwMCB0bw0KK3Rlc3QxLnNvIGFuZCAweDRkYjYwMDAgdG8gdGVzdDIu c28uDQorDQorUHJlbGluayBhYm92ZSBjb252ZXJ0ZWQgdGhlIFJFTCBzZWN0 aW9uIGluIHRlc3QxLnNvIHRvIFJFTEEsIGJ1dCBsZXTigJlzIGFzc3VtZQ0K K2l0IGRpZCBub3QuIEFsbCBvdXRwdXQgY29udGFpbmluZyAyYmMgYWJvdmUg d291bGQgY2hhbmdlIHRvIDJiOCAodGhhdCBjaGFuZ2VkDQorYWJvdmUgb25s eSBiZWNhdXNlIC5yZWwuZHluIHNlY3Rpb24gZ3JldyB1cCBieSA0IGJ5dGVz IGR1cmluZyB0aGUgY29udmVyc2lvbg0KK3RvIFJFTEEgZm9ybWF0KSwgdGhl IHJlc3Qgd291bGQgc3RheSB1bmNoYW5nZWQuDQorDQorV2hlbiBzb21lIHBy b2dyYW0gbGlua2VkIGFnYWluc3QgdGVzdDEuc28gd2FzIHByZWxpbmtlZCwg dGhlIChvbmx5KSByZWxvY2F0aW9uDQoraW4gdGVzdDEuc28gd291bGQgbm90 IGJlIHVzZWQgYW5kIGogd291bGQgY29udGFpbiB0aGUgcmlnaHQgdmFsdWUs IDB4NGRiNzJiMA0KKyhhZGRyZXNzIG9mIGkgKyA4OyBub3RlIHRoYXQgSUEt MzIgaXMgbGl0dGxlIGVuZGlhbiwgc28gdGhlIHZhbHVlcyBpbiAuZGF0YQ0K K3NlY3Rpb24gYXJlIGhhcmRlciB0byByZWFkIGZvciBhIGh1bWFuKS4NCisN CitOb3csIGxldOKAmXMgYXNzdW1lIG9uZSBvZiB0aGUgc2hhcmVkIGxpYnJh cmllcyB0aGUgZXhlY3V0YWJsZSBpcyBsaW5rZWQgYWdhaW5zdA0KK2lzIHVw Z3JhZGVkLiBUaGlzIG1lYW5zIHByZWxpbmsgaW5mb3JtYXRpb24gY2Fubm90 IGJlIHVzZWQsIGFzIGl0IGlzIG91dCBvZg0KK2RhdGUuIExldOKAmXMgYXNz dW1lIGl0IHdhcyBhIGxpYnJhcnkgb3RoZXIgdGhhbiB0ZXN0Mi5zby4NCisN CitOb3JtYWwgcmVsb2NhdGlvbiBwcm9jZXNzaW5nIGZvciB0ZXN0MS5zbyBu ZWVkcyB0byBoYXBwZW4uDQorDQorU3RhbmRhcmQgUl8zODZfMzIgY2FsY3Vs YXRpb24gaXMgUyArIEEsIGluIHRoaXMgY2FzZSAweDRkYjcyYTggKyAweDRk YjcyYjAgPQ0KKzB4OWI2ZTU1OCBhbmQgaiBjb250YWlucyB3cm9uZyB2YWx1 ZS4NCisNCitFaXRoZXIgdGVzdDIuc28gY291bGQgY2hhbmdlIGFuZCBub3cg dGhlIGkgdmFyaWFibGUgd291bGQgaGF2ZSBkaWZmZXJlbnQNCithZGRyZXNz LCBvciBzb21lIG90aGVyIHNoYXJlZCBsaWJyYXJ5IGxpbmtlZCB0byB0aGUg ZXhlY3V0YWJsZSBjb3VsZCBvdmVybG9hZA0KK3N5bWJvbCBpLiBXaXRob3V0 IGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gdGhlIGR5bmFtaWMgbGlua2VyIGNh bm5vdCBmaW5kIG91dA0KK3RoZSBhZGRlbmQgaXMgOC4NCisNCitUaGUgb3Jp Z2luYWwgdmFsdWUgb2YgYSBzeW1ib2wgY291bGQgcGVyaGFwcyBiZSBzdG9y ZWQgaW4gc29tZSBzcGVjaWFsDQorYWxsb2NhdGVkIHNlY3Rpb24gYW5kIHRo ZSBkeW5hbWljIGxpbmtlciBjb3VsZCBkbyBzb21lIG1hZ2ljIHRvIGxvY2F0 ZSBpdCwgYnV0DQoraXQgd291bGQgbWVhbiBzdGFuZGFyZCByZWxvY2F0aW9u IGhhbmRsaW5nIGNvZGUgaW4gdGhlIGR5bmFtaWMgbGlua2VyIGNhbm5vdA0K K2JlIHVzZWQgZm9yIHJlbG9jYXRpb24gcHJvY2Vzc2luZyBvZiBwcmVsaW5r ZWQgc2hhcmVkIGxpYnJhcmllcyB3aGVyZSBwcmVsaW5raW5nDQoraW5mb3Jt YXRpb24gY2Fubm90IGJlIHVzZWQuDQorDQorU28gcHJlbGluayBpbiB0aGlz IGNhc2UgY29udmVydHMgdGhlIHdob2xlIC5yZWwuZHluIHNlY3Rpb24gaW50 byB0aGUgUkVMQQ0KK2Zvcm1hdCwgdGhlIGFkZGVuZCBpcyBzdG9yZWQgaW4g cl9hZGRlbmQgZmllbGQgYW5kIHdoZW4gZG9pbmcgcmVsb2NhdGlvbg0KK3By b2Nlc3NpbmcsIGl0IHJlYWxseSBkb2VzbuKAmXQgbWF0dGVyIHdoYXQgdmFs dWUgaXMgYXQgdGhlIG1lbW9yeSBsb2NhdGlvbg0KK3BvaW50ZWQgYnkgcl9v ZmZzZXQuDQorDQorVGhlIGRpc2FkdmFudGFnZSBvZiB0aGlzIGlzIHRoYXQg dGhlIHJlbG9jYXRpb24gc2VjdGlvbiBncmV3IGJ5IDUwJS4gSWYNCitwcmVs aW5raW5nIGluZm9ybWF0aW9uIGNhbiBiZSB1c2VkLCBpdCBzaG91bGRu4oCZ dCBtYXR0ZXIgbXVjaCwgc2luY2UgdGhlDQorc2VjdGlvbiBpcyBuZXZlciBs b2FkZWQgYXQgcnVudGltZSBiZWNhdXNlIGl0IGlzIG5vdCBhY2Nlc3NlZC4N CisNCitJZiBwcmVsaW5raW5nIGNhbm5vdCBiZSB1c2VkLCB3aGV0aGVyIGJl Y2F1c2UgaXQgaXMgb3V0IG9mIGRhdGUgb3IgYmVjYXVzZSB0aGUNCitzaGFy ZWQgbGlicmFyeSBoYXMgYmVlbiBsb2FkZWQgYnkgZGxvcGVuLCBpdCB3aWxs IGluY3JlYXNlIG1lbW9yeSBmb290cHJpbnQsDQorYnV0IGl0IGlzIHJlYWQt b25seSBtZW1vcnkgd2hpY2ggaXMgdHlwaWNhbGx5IG5vdCB1c2VkIGFmdGVy IHN0YXJ0dXAgYW5kIGNhbg0KK2JlIGRpc2NhcmRlZCBhcyBpdCBpcyBiYWNr ZWQgb3V0IGJ5IHRoZSBmaWxlIGNvbnRhaW5pbmcgdGhlIHNoYXJlZCBsaWJy YXJ5Lg0KKw0KK0F0IGxlYXN0IG9uIElBLTMyLCBSRUwgdG8gUkVMQSBjb252 ZXJzaW9uIGlzIG5vdCBhbHdheXMgbmVjZXNzYXJ5Lg0KK0lmIFJfMzg2XzMy IGFkZGVkIGlzIG9yaWdpbmFsbHkgMCwgcHJlbGluayBjYW4gaW5zdGVhZCBj aGFuZ2UgaXRzIHR5cGUgdG8NCitSXzM4Nl9HTE9CX0RBVCwgd2hpY2ggaXMg YSBzaW1pbGFyIGR5bmFtaWMgcmVsb2NhdGlvbiwgYnV0IGNhbGN1bGF0ZWQg YXMgUw0KK2luc3RlYWQgb2YgUyArIEEuDQorDQorVGhlcmUgaXMgbm8gc2lt aWxhciBjb252ZXJzaW9uIGZvciBSXzM4Nl9QQzMyIHBvc3NpYmxlIHRob3Vn aCwgb24gdGhlIG90aGVyDQorc2lkZSB0aGlzIHJlbG9jYXRpb24gdHlwZSBz aG91bGQgbmV2ZXIgYXBwZWFyIGluIHBvc2l0aW9uIGluZGVwZW5kZW50IHNo YXJlZA0KK2xpYnJhcmllcywgb25seSBpbiBwb3NpdGlvbiBkZXBlbmRlbnQg Y29kZS4NCisNCitPbiBBUk0sIHRoZSBzaXR1YXRpb24gaXMgdGhlIHNhbWUs IGp1c3QgdXNpbmcgZGlmZmVyZW50IHJlbG9jYXRpb24gbmFtZXMNCisoUl9B Uk1fMzIsIFJfQVJNX0dMT0JfREFUIGFuZCBSX0FSTV9QQzI0KS4NCisNCitU aGUgLnJlbC5wbHQgc2VjdGlvbiBkb2VzbuKAmXQgaGF2ZSB0byBiZSBjb252 ZXJ0ZWQgdG8gUkVMQSBmb3JtYXQgb24gZWl0aGVyIG9mDQordGhlc2UgYXJj aGl0ZWN0dXJlcywgaWYgdGhlIGNvbnZlcnNpb24gaXMgbmVlZGVkLCBhbGwg b3RoZXIgLnJlbC4qIGFsbG9jYXRlZA0KK3NlY3Rpb25zLCB3aGljaCBoYXZl IHRvIGJlIGFkamFjZW50IGFzIHRoZXkgYXJlIHBvaW50ZWQgdG8gYnkgRFRf UkVMIGFuZA0KK0RUX1JFTFNaIGR5bmFtaWMgdGFncywgaGF2ZSB0byBiZSBj b252ZXJ0ZWQgdG9nZXRoZXIuDQorDQorVGhlIGNvbnZlcnNpb24gaXRzZWxm IGlzIGZhaXJseSBlYXN5LCBzb21lIGFyY2hpdGVjdHVyZSBzcGVjaWZpYyBj b2RlIGp1c3QgaGFzDQordG8gZmV0Y2ggdGhlIG9yaWdpbmFsIGFkZGVuZCBm cm9tIG1lbW9yeSBwb2ludGVkIGJ5IHRoZSByZWxvY2F0aW9uIGFuZCBzdG9y ZQ0KK2l0IGludG8gcl9hZGRlbmQgZmllbGQgKG9yIGNsZWFyIHJfYWRkZW5k IGlmIHRoZSBwYXJ0aWN1bGFyIHJlbG9jYXRpb24gdHlwZQ0KK25ldmVyIHVz ZXMgdGhlIGFkZGVuZCkuDQorDQorVGhlIG1haW4gcHJvYmxlbSBpcyB0aGF0 IHdoZW4gdGhlIGNvbnZlcnNpb24gaGFwcGVucywgdGhlIC5yZWwuZHluIHNl Y3Rpb24NCitncm93cyBieSA1MCUgYW5kIHRoZXJlIG5lZWRzIHRvIGJlIHJv b20gZm9yIHRoYXQgaW4gdGhlIHJlYWQtb25seSBsb2FkYWJsZQ0KK3NlZ21l bnQgb2YgdGhlIHNoYXJlZCBsaWJyYXJ5Lg0KKw0KK0luIHNoYXJlZCBsaWJy YXJpZXMgaXQgaXMgYWx3YXlzIHBvc3NpYmxlIHRvIGdyb3cgdGhlIGZpcnN0 IHJlYWQtb25seSBQVF9MT0FEDQorc2VnbWVudCBieSBhZGRpbmcgdGhlIGFk ZGl0aW9uYWwgZGF0YSBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSByZWFkLW9u bHkNCitzZWdtZW50LCBhcyB0aGUgc2hhcmVkIGxpYnJhcnkgaXMgcmVsb2Nh dGFibGUuDQorDQorUHJlbGluayBjYW4gcmVsb2NhdGUgdGhlIHdob2xlIHNo YXJlZCBsaWJyYXJ5IHRvIGEgaGlnaGVyIGFkZHJlc3MgdGhhbiBpdCBoYXMN Cithc3NpZ25lZCBmb3IgaXQuIFRoZSBmaWxlIG9mZnNldHMgb2YgYWxsIHNl Y3Rpb25zIGFuZCB0aGUgc2VjdGlvbiBoZWFkZXIgdGFibGUNCitmaWxlIG9m ZnNldCBuZWVkIHRvIGJlIGluY3JlYXNlZCwgYnV0IHRoZSBFTEYgaGVhZGVy IGFuZCBwcm9ncmFtIGhlYWRlcnMgbmVlZA0KK3RvIHN0YXkgYXQgdGhlIGJl Z2lubmluZyBvZiB0aGUgZmlsZS4NCisNCitUaGUgcmVsb2NhdGlvbiBzZWN0 aW9uIGNhbiB0aGVuIGJlIG1vdmVkIHRvIHRoZSBuZXdseSBjcmVhdGVkIHNw YWNlIGJldHdlZW4NCit0aGUgZW5kIG9mIHRoZSBwcm9ncmFtIGhlYWRlciB0 YWJsZSBhbmQgdGhlIGZpcnN0IHNlY3Rpb24uIE1vdmluZyB0aGUgc2VjdGlv bg0KK2Zyb20gdGhlIG9sZCBsb2NhdGlvbiB0byB0aGUgbmV3bHkgY3JlYXRl ZCBzcGFjZSB3b3VsZCBsZWF2ZSBvZnRlbiB2ZXJ5IGJpZw0KK2dhcCBpbiB2 aXJ0dWFsIGFkZHJlc3Mgc3BhY2UgYXMgd2VsbCBhcyBpbiB0aGUgZmlsZSBh dCB0aGUgb2xkIGxvY2F0aW9uIG9mIHRoZQ0KK3JlbG9jYXRpb24gc2VjdGlv bi4NCisNCitGb3J0dW5hdGVseSB0aGUgbGlua2VyIHR5cGljYWxseSBwdXRz IHNwZWNpYWwgRUxGIHNlY3Rpb25zIGluY2x1ZGluZyBhbGxvY2F0ZWQNCity ZWxvY2F0aW9uIHNlY3Rpb24gYmVmb3JlIHRoZSBjb2RlIHNlY3Rpb24gYW5k IG90aGVyIHJlYWQtb25seSBzZWN0aW9ucyB1bmRlcg0KK3VzZXLigJlzIGNv bnRyb2wuDQorDQorVGhlc2Ugc3BlY2lhbCBzZWN0aW9ucyBhcmUgaW50ZW5k ZWQgZm9yIGR5bmFtaWMgbGlua2luZyBvbmx5LiBUaGVpciBhZGRyZXNzZXMN CithcmUgc3RvcmVkIGp1c3QgaW4gdGhlIC5keW5hbWljIHNlY3Rpb24gYW5k IHByZWxpbmsgY2FuIGVhc2lseSBhZGp1c3QgdGhlbQ0KK3RoZXJlLiBUaGVy ZSBpcyBubyBuZWVkIGZvciBhIHNoYXJlZCBsaWJyYXJ5IHRvIHN0b3JlIGFk ZHJlc3Mgb2Ygb25lIG9mIHRoZQ0KK3NwZWNpYWwgc2VjdGlvbnMgaW50byBp dHMgY29kZSBvciBkYXRhIHNlY3Rpb25zIGFuZCBleGlzdGluZyBsaW5rZXJz IGluIGZhY3QNCitkb27igJl0IGNyZWF0ZSBzdWNoIHJlZmVyZW5jZXMuDQor DQorV2hlbiBncm93aW5nIHRoZSByZWxvY2F0aW9uIHNlY3Rpb24sIHByZWxp bmsgY2hlY2tzIHdoZXRoZXIgYWxsIHNlY3Rpb25zDQorYmVmb3JlIHRoZSBy ZWxvY2F0aW9uIHNlY3Rpb24gYXJlIHNwZWNpYWwgYW5kIGlmIHRoZXkgYXJl LCBqdXN0IG1vdmVzIHRoZW0NCit0byBsb3dlciBhZGRyZXNzZXMsIHNvIHRo YXQgdGhlIG5ld2x5IGNyZWF0ZWQgc3BhY2UgaXMgcmlnaHQgYWJvdmUgdGhl DQorcmVsb2NhdGlvbiBzZWN0aW9uLg0KKw0KK1sgQXMgc3BlY2lhbCBzZWN0 aW9ucyBwcmVsaW5rIGNvbnNpZGVycyBzZWN0aW9ucyB3aXRoIFNIVF9OT1RF LCBTSFRfSEFTSCwNCisgIFNIVF9EWU5TWU0sIFNIVF9TVFJUQUIsIFNIVF9H TlVfdmVyZGVmLCBTSFRfR05VX3Zlcm5lZWQsIFNIVF9HTlVfdmVyc3ltLA0K KyAgU0hUX1JFTCBvciBTSFRfUkVMQSB0eXBlIG9yIHRoZSAuaW50ZXJwIHNl Y3Rpb24uIF0NCisNCitUaGUgYWR2YW50YWdlIGlzIHRoYXQgaW5zdGVhZCBv ZiBtb3ZpbmcgYWxsIHNlY3Rpb25zIGJ5IHRoZSBzaXplIG9mIHRoZSBuZXcN CityZWxvY2F0aW9uIHNlY3Rpb24gdGhleSBjYW4gYmUgYWRqdXN0ZWQgaWRl YWxseSBqdXN0IGJ5IHRoZSBkaWZmZXJlbmNlIGJldHdlZW4NCitvbGQgYW5k IG5ldyByZWxvY2F0aW9uIHNlY3Rpb24gc2l6ZS4NCisNCitUaGVyZSBhcmUg dHdvIGZhY3RvcnMgd2hpY2ggY2FuIGluY3JlYXNlIHRoZSBuZWNlc3Nhcnkg YWRqdXN0bWVudCBvZiBhbGwNCitoaWdoZXIgc2VjdGlvbnMuDQorDQorVGhl IGZpcnN0IGlzIHJlcXVpcmVkIHNlY3Rpb24gYWxpZ25tZW50IG9mIGFueSBh bGxvY2F0ZWQgc2VjdGlvbiBhYm92ZSB0aGUNCityZWxvY2F0aW9uIHNlY3Rp b24uIFByZWxpbmsgbmVlZHMgdG8gZmluZCB0aGUgaGlnaGVzdCBzZWN0aW9u IGFsaWdubWVudCBhbW9uZw0KK3Rob3NlIHNlY3Rpb25zIGFuZCBpbmNyZWFz ZSB0aGUgYWRqdXN0bWVudCBmcm9tIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4g b2xkIGFuZA0KK25ldyByZWxvY2F0aW9uIHNlY3Rpb24gdXAgdG8gdGhlIG5l eHQgbXVsdGlwbGUgb2YgdGhhdCBhbGlnbm1lbnQuDQorDQorVGhlIHNlY29u ZCBmYWN0b3IgaXMgb25seSByZWxldmFudCB0byBzaGFyZWQgbGlicmFyaWVz IHdoZXJlIGxpbmtlciBvcHRpbWl6ZWQNCit0aGUgZGF0YSBzZWdtZW50IHBs YWNlbWVudC4gVHJhZGl0aW9uYWxseSBsaW5rZXIgYXNzaWduZWQgdGhlIGVu ZCBhZGRyZXNzIG9mDQordGhlIHJlYWQtb25seSBzZWdtZW50IHBsdXMgdGhl IGFyY2hpdGVjdHVyZeKAmXMgbWF4aW11bSBFTEYgcGFnZSBzaXplIGFzIHRo ZQ0KK3N0YXJ0IGFkZHJlc3Mgb2YgdGhlIHJlYWQtd3JpdGUgc2VnbWVudC4N CisNCitXaGlsZSB0aGlzIGNyZWF0ZWQgc21hbGxlc3QgZmlsZSBzaXplcyBv ZiB0aGUgc2hhcmVkIGxpYnJhcmllcywgaXQgb2Z0ZW4NCit3YXN0ZWQgb25l IHBhZ2UgaW4gdGhlIHJlYWQtd3JpdGUgc2VnbWVudCBiZWNhdXNlIG9mIHBh cnRpYWwgcGFnZXMuIFdoZW4NCitsaW5rZXIgb3B0aW1pemVzIHN1Y2ggdGhh dCBsZXNzIHNwYWNlIGlzIHdhc3RlZCBpbiBwYXJ0aWFsIHBhZ2VzLCB0aGUg ZGlzdGFuY2UNCitiZXR3ZWVuIHJlYWQtb25seSBhbmQgcmVhZC13cml0ZSBz ZWdtZW50cyBjYW4gYmUgc21hbGxlciB0aGFuIGFyY2hpdGVjdHVyZQ0KK3Nw ZWNpZmljIG1heGltdW0gRUxGIHBhZ2Ugc2l6ZS4NCisNCitQcmVsaW5rIGhh cyB0byB0YWtlIHRoaXMgaW50byBhY2NvdW50LCBzbyB0aGF0IHdoZW4gYWRq dXN0aW5nIHRoZSBzZWN0aW9ucyB0aGUNCityZWFkLW9ubHkgYW5kIHJlYWQt d3JpdGUgc2VnbWVudCBkb27igJl0IGVuZCB1cCBvbiB0aGUgc2FtZSBwYWdl LiBVbmZvcnR1bmF0ZWx5DQorcHJlbGluayBjYW5ub3QgaW5jcmVhc2Ugb3Ig ZGVjcmVhc2UgdGhlIGRpc3RhbmNlIGJldHdlZW4gdGhlIHJlYWQtb25seSBh bmQNCityZWFkLXdyaXRlIHNlZ21lbnRzLCBzaW5jZSBpdCBpcyBwb3NzaWJs ZSB0aGF0IHRoZSBzaGFyZWQgbGlicmFyeSBoYXMgcmVsYXRpdmUNCithZGRy ZXNzZXMgb2YgYW55IGFsbG9jYXRlZCBjb2RlLCBkYXRhIG9yIC5ic3Mgc2Vj dGlvbnMgc3RvcmVkIGluIGl0cyBzZWN0aW9ucw0KK3dpdGhvdXQgYW55IHJl bG9jYXRpb25zIHdoaWNoIHdvdWxkIGFsbG93IHByZWxpbmsgdG8gY2hhbmdl IHRoZW0uDQorDQorUHJlbGluayBoYXMgdG8gbW92ZSBhbGwgc2VjdGlvbnMg c3RhcnRpbmcgd2l0aCB0aGUgZmlyc3QgYWxsb2NhdGVkDQorU0hUX1BST0dC SVRTIHNlY3Rpb24gb3RoZXIgdGhhbiAuaW50ZXJwIHVwIHRvIHRoZSBsYXN0 IGFsbG9jYXRlZCBTSFRfUFJPR0JJVFMNCitvciBTSFRfTk9CSVRTIHNlY3Rp b24gYXMgYSBibG9jayBhbmQgdGh1cyBuZWVkcyB0byBpbmNyZWFzZSB0aGUg YWRqdXN0bWVudCBpbg0KK3N0ZXBzIG9mIHRoZSBoaWdoZXN0IHNlY3Rpb24g YWxpZ25tZW50IGFzIG1hbnkgdGltZXMgdGltZXMgYXMgbmVlZGVkIHNvIHRo YXQNCit0aGUgc2VnbWVudHMgZW5kIHVwIGluIGRpZmZlcmVudCBwYWdlcy4N CisNCitCZWxvdyBhcmUgMyBleGFtcGxlczoNCisNCisgICQgY2F0ID4gdGVz dDEuYyA8PEVPRg0KKyAgaW50IGlbMl0gX19hdHRyaWJ1dGVfXygoYWxpZ25l ZCAoMzIpKSk7DQorICAjZGVmaW5lIEoxKE4pIGludCAqaiMjTiA9ICZpWzFd Ow0KKyAgI2RlZmluZSBKMihOKSBKMShOIyMwKSBKMShOIyMxKSBKMShOIyMy KSBKMShOIyMzKSBKMShOIyM0KQ0KKyAgI2RlZmluZSBKMyhOKSBKMihOIyMw KSBKMihOIyMxKSBKMihOIyMyKSBKMihOIyMzKSBKMihOIyM0KQ0KKyAgI2Rl ZmluZSBKNChOKSBKMyhOIyMwKSBKMyhOIyMxKSBKMyhOIyMyKSBKMyhOIyMz KSBKMyhOIyM0KQ0KKyAgSjQoMCkgSjQoMSkgSjMoMikgSjMoMykgSjEoNCkN CisgIGNvbnN0IGludCBsWzI1Nl0gPSB7IFsxMF0gPSAxIH07DQorICAvKiBQ dXQgYSB6ZXJvIHNpemVkIHNlY3Rpb24gYXQgdGhlIGVuZCBvZiByZWFkLW9u bHkgc2VnbWVudCwNCisgICAgIHNvIHRoYXQgdGhlIGVuZCBhZGRyZXNzIG9m IHRoZSBzZWdtZW50IGlzIHByaW50ZWQuICovDQorICBhc20gKOKAnS5zZWN0 aW9uIHJvX3NlZ19lbmQsIFzigJ1hXOKAnTsgLnByZXZpb3Vz4oCdKTsNCisg IEVPRg0KKw0KKyAgJCBnY2MgLXNoYXJlZCAtTzIgLW5vc3RkbGliIC1mcGlj IC1vIHRlc3QxLnNvIHRlc3QxLmMNCisgICQgcmVhZGVsZiAtUyB0ZXN0MS5z byB8IGdyZXAg4oCZXiBcW+KAmQ0KKyAgW05yXSBOYW1lICAgICAgICBUeXBl ICAgICBBZGRyICAgICBPZmYgICAgU2l6ZSAgIEVTIEZsZyBMayBJbmYgQWwN CisgIFsgMF0gICAgICAgICAgICAgTlVMTCAgICAgMDAwMDAwMDAgMDAwMDAw IDAwMDAwMCAwMCAwICAgIDAgIDANCisgIFsgMV0gLmhhc2ggICAgICAgSEFT SCAgICAgMDAwMDAwYjQgMDAwMGI0IDAwMDkzMCAwNCBBICAgIDIgIDAgICA0 DQorICBbIDJdIC5keW5zeW0gICAgIERZTlNZTSAgIDAwMDAwOWU0IDAwMDll NCAwMDE0MzAgMTAgQSAgICAzICBkICAgNA0KKyAgWyAzXSAuZHluc3RyICAg ICBTVFJUQUIgICAwMDAwMWUxNCAwMDFlMTQgMDAwNzM1IDAwIEEgICAgMCAg MCAgIDENCisgIFsgNF0gLnJlbC5keW4gICAgUkVMICAgICAgMDAwMDI1NGMg MDAyNTRjIDAwMDk2OCAwOCBBICAgIDIgIDAgICA0DQorICBbIDVdIC50ZXh0 ICAgICAgIFBST0dCSVRTIDAwMDAyZWI0IDAwMmViNCAwMDAwMDAgMDAgQVgg ICAwICAwICAgNA0KKyAgWyA2XSAucm9kYXRhICAgICBQUk9HQklUUyAwMDAw MmVjMCAwMDJlYzAgMDAwNDAwIDAwIEEgICAgMCAgMCAgMzINCisgIFsgN10g IHJvX3NlZ19lbmQgUFJPR0JJVFMgMDAwMDMyYzAgMDAzMmMwIDAwMDAwMCAw MCBBICAgIDAgIDAgICAxDQorICBbIDhdIC5kYXRhICAgICAgIFBST0dCSVRT IDAwMDA0MmMwIDAwMzJjMCAwMDA0YjQgMDAgV0EgICAwICAwICAgNA0KKyAg WyA5XSAuZHluYW1pYyAgICBEWU5BTUlDICAwMDAwNDc3NCAwMDM3NzQgMDAw MDcwIDA4IFdBICAgMyAgMCAgIDQNCisgIFsxMF0gLmdvdCAgICAgICAgUFJP R0JJVFMgMDAwMDQ3ZTQgMDAzN2U0IDAwMDAwYyAwNCBXQSAgIDAgIDAgICA0 DQorICBbMTFdIC5ic3MgICAgICAgIE5PQklUUyAgIDAwMDA0ODAwIDAwMzgw MCAwMDAwMDggMDAgV0EgICAwICAwICAzMg0KKyAgWzEyXSAuY29tbWVudCAg ICBQUk9HQklUUyAwMDAwMDAwMCAwMDM4MDAgMDAwMDMzIDAwICAgICAgMCAg MCAgIDENCisgIFsxM10gLnNoc3RydGFiICAgU1RSVEFCICAgMDAwMDAwMDAg MDAzODMzIDAwMDA3NSAwMCAgICAgIDAgIDAgICAxDQorICBbMTRdIC5zeW10 YWIgICAgIFNZTVRBQiAgIDAwMDAwMDAwIDAwM2IyOCAwMDE0NzAgMTAgICAg IDE1IDExICAgNA0KKyAgWzE1XSAuc3RydGFiICAgICBTVFJUQUIgICAwMDAw MDAwMCAwMDRmOTggMDAwNzQyIDAwICAgICAgMCAgMCAgIDENCisNCisgICQg cmVhZGVsZiAtbCB0ZXN0MS5zbyB8IGdyZXAgTE9BRA0KKyAgICBMT0FEICAg IDB4MDAwMDAwIDB4MDAwMDAwMDAgMHgwMDAwMDAwMCAweDAzMmMwIDB4MDMy YzAgUiBFIDB4MTAwMA0KKyAgICBMT0FEICAgIDB4MDAzMmMwIDB4MDAwMDQy YzAgMHgwMDAwNDJjMCAweDAwNTMwIDB4MDA1NDggUlcgMHgxMDAwDQorDQor ICAkIHByZWxpbmsgLU4gLi90ZXN0MS5zbw0KKyAgJCByZWFkZWxmIC1sIHRl c3QxLnNvIHwgZ3JlcCBMT0FEDQorICAgIExPQUQgICAgMHgwMDAwMDAgMHgw MjAwMDAwMCAweDAyMDAwMDAwIDB4MDM3ODAgMHgwMzc4MCBSIEUgMHgxMDAw DQorICAgIExPQUQgICAgMHgwMDM3ODAgMHgwMjAwNDc4MCAweDAyMDA0Nzgw IDB4MDA1MzAgMHgwMDU0OCBSVyAweDEwMDANCisNCisgICQgcmVhZGVsZiAt UyB0ZXN0MS5zbyB8IGdyZXAg4oCZXiBcW+KAmQ0KKyAgW05yXSBOYW1lICAg ICAgICAgICAgICBUeXBlICAgICAgICBBZGRyICAgICBPZmYgICAgU2l6ZSAg IEVTIEZsZyAgTGsgSW5mICBBbA0KKyAgWyAwXSAgICAgICAgICAgICAgICAg ICBOVUxMICAgICAgICAwMDAwMDAwMCAwMDAwMDAgMDAwMDAwIDAwICAgICAg IDAgICAwICAgMA0KKyAgWyAxXSAuaGFzaCAgICAgICAgICAgICBIQVNIICAg ICAgICAwMjAwMDBiNCAwMDAwYjQgMDAwOTMwIDA0IEEgICAgIDIgICAwICAg NA0KKyAgWyAyXSAuZHluc3ltICAgICAgICAgICBEWU5TWU0gICAgICAwMjAw MDllNCAwMDA5ZTQgMDAxNDMwIDEwIEEgICAgIDMgICBkICAgNA0KKyAgWyAz XSAuZHluc3RyICAgICAgICAgICBTVFJUQUIgICAgICAwMjAwMWUxNCAwMDFl MTQgMDAwNzM1IDAwIEEgICAgIDAgICAwICAgMQ0KKyAgWyA0XSAucmVsLmR5 biAgICAgICAgICBSRUxBICAgICAgICAwMjAwMjU0YyAwMDI1NGMgMDAwZTFj IDBjIEEgICAgIDIgICAwICAgNA0KKyAgWyA1XSAudGV4dCAgICAgICAgICAg ICBQUk9HQklUUyAgICAwMjAwMzM3NCAwMDMzNzQgMDAwMDAwIDAwIEFYICAg IDAgICAwICAgNA0KKyAgWyA2XSAucm9kYXRhICAgICAgICAgICBQUk9HQklU UyAgICAwMjAwMzM4MCAwMDMzODAgMDAwNDAwIDAwIEEgICAgIDAgICAwICAz Mg0KKyAgWyA3XSByb19zZWdfZW5kICAgICAgICBQUk9HQklUUyAgICAwMjAw Mzc4MCAwMDM3ODAgMDAwMDAwIDAwIEEgICAgIDAgICAwICAgMQ0KKyAgWyA4 XSAuZGF0YSAgICAgICAgICAgICBQUk9HQklUUyAgICAwMjAwNDc4MCAwMDM3 ODAgMDAwNGI0IDAwIFdBICAgIDAgICAwICAgNA0KKyAgWyA5XSAuZHluYW1p YyAgICAgICAgICBEWU5BTUlDICAgICAwMjAwNGMzNCAwMDNjMzQgMDAwMDcw IDA4IFdBICAgIDMgICAwICAgNA0KKyAgWzEwXSAuZ290ICAgICAgICAgICAg ICBQUk9HQklUUyAgICAwMjAwNGNhNCAwMDNjYTQgMDAwMDBjIDA0IFdBICAg IDAgICAwICAgNA0KKyAgWzExXSAuYnNzICAgICAgICAgICAgICBOT0JJVFMg ICAgICAwMjAwNGNjMCAwMDNjYzAgMDAwMDA4IDAwIFdBICAgIDAgICAwICAz Mg0KKyAgWzEyXSAuY29tbWVudCAgICAgICAgICBQUk9HQklUUyAgICAwMDAw MDAwMCAwMDNjYzAgMDAwMDMzIDAwICAgICAgIDAgICAwICAgMQ0KKyAgWzEz XSAuZ251LmxpYmxpc3QgICAgICBHTlVfTElCTElTVCAwMDAwMDAwMCAwMDNj ZjMgMDAwMDAwIDE0ICAgICAgMTQgICAwICAgNA0KKyAgWzE0XSAuZ251Lmxp YnN0ciAgICAgICBTVFJUQUIgICAgICAwMDAwMDAwMCAwMDNjZjMgMDAwMDAw IDAwICAgICAgIDAgICAwICAgMQ0KKyAgWzE1XSAuZ251LnByZWxpbmtfdW5k byBQUk9HQklUUyAgICAwMDAwMDAwMCAwMDNjZjQgMDAwMzBjIDAxICAgICAg IDAgICAwICAgNA0KKyAgWzE2XSAuc2hzdHJ0YWIgICAgICAgICBTVFJUQUIg ICAgICAwMDAwMDAwMCAwMDQwMDMgMDAwMGEwIDAwICAgICAgIDAgICAwICAg MQ0KKyAgWzE3XSAuc3ltdGFiICAgICAgICAgICBTWU1UQUIgICAgICAwMDAw MDAwMCAwMDQzYTAgMDAxNDcwIDEwICAgICAgMTggIDExICAgNA0KKyAgWzE4 XSAuc3RydGFiICAgICAgICAgICBTVFJUQUIgICAgICAwMDAwMDAwMCAwMDU4 MTAgMDAwNzQyIDAwICAgICAgIDAgICAwICAgMQ0KKw0KK0dyb3dpbmcgcmVh ZC1vbmx5IHNlZ21lbnQgd2l0aCBzZWdtZW50IGRpc3RhbmNlIG9uZSBwYWdl DQorRmlndXJlIDE6IEdyb3dpbmcgcmVhZC1vbmx5IHNlZ21lbnQgd2l0aCBz ZWdtZW50IGRpc3RhbmNlIG9uZSBwYWdlDQorDQorSW4gdGhpcyBleGFtcGxl IHRoZSByZWFkLXdyaXRlIHNlZ21lbnQgc3RhcnRzIGF0IGFkZHJlc3MgMHg0 MmMwLCB3aGljaCBpcyBvbmUNCitwYWdlIGFib3ZlIHRoZSBlbmQgb2YgcmVh ZC1vbmx5IHNlZ21lbnQuIFByZWxpbmsgbmVlZHMgdG8gZ3JvdyB0aGUgcmVh ZC1vbmx5DQorUFRfTE9BRCBzZWdtZW50IGJ5IDUwJSBvZiAucmVsLmR5biBz aXplLCBpLmUuIDB4NGI0IGJ5dGVzLiBQcmVsaW5rIGp1c3QgbmVlZHMNCit0 byByb3VuZCB0aGF0IHVwIGZvciB0aGUgaGlnaGVzdCBhbGlnbm1lbnQgKDMy IGJ5dGVzIHJlcXVpcmVkIGJ5IC5yb2RhdGEgb3IgLmJzcw0KK3NlY3Rpb25z KSBhbmQgbW92ZXMgYWxsIHNlY3Rpb25zIGFib3ZlIC5yZWwuZHluIGJ5IDB4 NGMwIGJ5dGVzLg0KKw0KKyAgJCBjYXQgPiB0ZXN0Mi5jIDw8RU9GDQorICBp bnQgaVsyXSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkICgzMikpKTsNCisgICNk ZWZpbmUgSjEoTikgaW50ICpqIyNOID0gJmlbMV07DQorICAjZGVmaW5lIEoy KE4pIEoxKE4jIzApIEoxKE4jIzEpIEoxKE4jIzIpIEoxKE4jIzMpIEoxKE4j IzQpDQorICAjZGVmaW5lIEozKE4pIEoyKE4jIzApIEoyKE4jIzEpIEoyKE4j IzIpIEoyKE4jIzMpIEoyKE4jIzQpDQorICAjZGVmaW5lIEo0KE4pIEozKE4j IzApIEozKE4jIzEpIEozKE4jIzIpIEozKE4jIzMpIEozKE4jIzQpDQorICBK NCgwKSBKNCgxKSBKMygyKSBKMygzKSBKMSg0KQ0KKyAgY29uc3QgaW50IGxb MjU2XSA9IHsgWzEwXSA9IDEgfTsNCisgIGludCBrWzY3MF07DQorICBhc20g KOKAnS5zZWN0aW9uIHJvX3NlZ19lbmQsIFzigJ1hXOKAnTsgLnByZXZpb3Vz 4oCdKTsNCisgIEVPRg0KKw0KKyAgJCBnY2MgLXNoYXJlZCAtTzIgLW5vc3Rk bGliIC1mcGljIC1vIHRlc3QyLnNvIHRlc3QyLmMNCisgICQgcmVhZGVsZiAt UyB0ZXN0Mi5zbyB8IGdyZXAg4oCZXiBcW+KAmQ0KKyAgW05yXSBOYW1lICAg ICAgICAgICAgICBUeXBlICAgICAgICBBZGRyICAgICBPZmYgICAgU2l6ZSAg IEVTIEZsZyAgTGsgSW5mICBBbA0KKyAgWyAwXSAgICAgICAgICAgICAgICAg ICBOVUxMICAgICAgICAwMDAwMDAwMCAwMDAwMDAgMDAwMDAwIDAwICAgICAg IDAgICAwICAgMA0KKyAgWyAxXSAuaGFzaCAgICAgICAgICAgICBIQVNIICAg ICAgICAwMDAwMDBiNCAwMDAwYjQgMDAwOTM0IDA0IEEgICAgIDIgICAwICAg NA0KKyAgWyAyXSAuZHluc3ltICAgICAgICAgICBEWU5TWU0gICAgICAwMDAw MDllOCAwMDA5ZTggMDAxNDQwIDEwIEEgICAgIDMgICBkICAgNA0KKyAgWyAz XSAuZHluc3RyICAgICAgICAgICBTVFJUQUIgICAgICAwMDAwMWUyOCAwMDFl MjggMDAwNzM3IDAwIEEgICAgIDAgICAwICAgMQ0KKyAgWyA0XSAucmVsLmR5 biAgICAgICAgICBSRUwgICAgICAgICAwMDAwMjU2MCAwMDI1NjAgMDAwOTY4 IDA4IEEgICAgIDIgICAwICAgNA0KKyAgWyA1XSAudGV4dCAgICAgICAgICAg ICBQUk9HQklUUyAgICAwMDAwMmVjOCAwMDJlYzggMDAwMDAwIDAwIEFYICAg IDAgICAwICAgNA0KKyAgWyA2XSAucm9kYXRhICAgICAgICAgICBQUk9HQklU UyAgICAwMDAwMmVlMCAwMDJlZTAgMDAwNDAwIDAwIEEgICAgIDAgICAwICAz Mg0KKyAgWyA3XSByb19zZWdfZW5kICAgICAgICBQUk9HQklUUyAgICAwMDAw MzJlMCAwMDMyZTAgMDAwMDAwIDAwIEEgICAgIDAgICAwICAgMQ0KKyAgWyA4 XSAuZGF0YSAgICAgICAgICAgICBQUk9HQklUUyAgICAwMDAwNDAwMCAwMDQw MDAgMDAwNGI0IDAwIFdBICAgIDAgICAwICAgNA0KKyAgWyA5XSAuZHluYW1p YyAgICAgICAgICBEWU5BTUlDICAgICAwMDAwNDRiNCAwMDQ0YjQgMDAwMDcw IDA4IFdBICAgIDMgICAwICAgNA0KKyAgWzEwXSAuZ290ICAgICAgICAgICAg ICBQUk9HQklUUyAgICAwMDAwNDUyNCAwMDQ1MjQgMDAwMDBjIDA0IFdBICAg IDAgICAwICAgNA0KKyAgWzExXSAuYnNzICAgICAgICAgICAgICBOT0JJVFMg ICAgICAwMDAwNDU0MCAwMDQ1NDAgMDAwYTg4IDAwIFdBICAgIDAgICAwICAz Mg0KKyAgWzEyXSAuY29tbWVudCAgICAgICAgICBQUk9HQklUUyAgICAwMDAw MDAwMCAwMDQ1NDAgMDAwMDMzIDAwICAgICAgIDAgICAwICAgMQ0KKyAgWzEz XSAuc2hzdHJ0YWIgICAgICAgICBTVFJUQUIgICAgICAwMDAwMDAwMCAwMDQ1 NzMgMDAwMDc1IDAwICAgICAgIDAgICAwICAgMQ0KKyAgWzE0XSAuc3ltdGFi ICAgICAgICAgICBTWU1UQUIgICAgICAwMDAwMDAwMCAwMDQ4NjggMDAxNDgw IDEwICAgICAgMTUgIDExICAgNA0KKyAgWzE1XSAuc3RydGFiICAgICAgICAg ICBTVFJUQUIgICAgICAwMDAwMDAwMCAwMDVjZTggMDAwNzQ0IDAwICAgICAg IDAgICAwICAgMQ0KKw0KKyAgJCByZWFkZWxmIC1sIHRlc3QyLnNvIHwgZ3Jl cCBMT0FEDQorICAgIExPQUQgICAgMHgwMDAwMDAgMHgwMDAwMDAwMCAweDAw MDAwMDAwIDB4MDMyZTAgMHgwMzJlMCBSIEUgMHgxMDAwDQorICAgIExPQUQg ICAgMHgwMDQwMDAgMHgwMDAwNDAwMCAweDAwMDA0MDAwIDB4MDA1MzAgMHgw MGZjOCBSVyAweDEwMDANCisNCisgICQgcHJlbGluayAtTiAuL3Rlc3QyLnNv DQorICAkIHJlYWRlbGYgLWwgdGVzdDIuc28gfCBncmVwIExPQUQNCisgICAg TE9BRCAgICAweDAwMDAwMCAweDAyMDAwMDAwIDB4MDIwMDAwMDAgMHgwMzdh MCAweDAzN2EwIFIgRSAweDEwMDANCisgICAgTE9BRCAgICAweDAwNDRjMCAw eDAyMDA0NGMwIDB4MDIwMDQ0YzAgMHgwMDUzMCAweDAwZmM4IFJXIDB4MTAw MA0KKw0KKyAgJCByZWFkZWxmIC1TIHRlc3QyLnNvIHwgZ3JlcCDigJleIFxb 4oCZDQorICBbTnJdIE5hbWUgICAgICAgICAgICAgIFR5cGUgICAgICAgIEFk ZHIgICAgIE9mZiAgICBTaXplICAgRVMgRmxnICBMayBJbmYgIEFsDQorICBb IDBdICAgICAgICAgICAgICAgICAgIE5VTEwgICAgICAgIDAwMDAwMDAwIDAw MDAwMCAwMDAwMDAgMDAgICAgICAgMCAgIDAgICAwDQorICBbIDFdIC5oYXNo ICAgICAgICAgICAgIEhBU0ggICAgICAgIDAyMDAwMGI0IDAwMDBiNCAwMDA5 MzQgMDQgQSAgICAgMiAgIDAgICA0DQorICBbIDJdIC5keW5zeW0gICAgICAg ICAgIERZTlNZTSAgICAgIDAyMDAwOWU4IDAwMDllOCAwMDE0NDAgMTAgQSAg ICAgMyAgIGQgICA0DQorICBbIDNdIC5keW5zdHIgICAgICAgICAgIFNUUlRB QiAgICAgIDAyMDAxZTI4IDAwMWUyOCAwMDA3MzcgMDAgQSAgICAgMCAgIDAg ICAxDQorICBbIDRdIC5yZWwuZHluICAgICAgICAgIFJFTEEgICAgICAgIDAy MDAyNTYwIDAwMjU2MCAwMDBlMWMgMGMgQSAgICAgMiAgIDAgICA0DQorICBb IDVdIC50ZXh0ICAgICAgICAgICAgIFBST0dCSVRTICAgIDAyMDAzMzg4IDAw MzM4OCAwMDAwMDAgMDAgQVggICAgMCAgIDAgICA0DQorICBbIDZdIC5yb2Rh dGEgICAgICAgICAgIFBST0dCSVRTICAgIDAyMDAzM2EwIDAwMzNhMCAwMDA0 MDAgMDAgQSAgICAgMCAgIDAgIDMyDQorICBbIDddIHJvX3NlZ19lbmQgICAg ICAgIFBST0dCSVRTICAgIDAyMDAzN2EwIDAwMzdhMCAwMDAwMDAgMDAgQSAg ICAgMCAgIDAgICAxDQorICBbIDhdIC5kYXRhICAgICAgICAgICAgIFBST0dC SVRTICAgIDAyMDA0NGMwIDAwNDRjMCAwMDA0YjQgMDAgV0EgICAgMCAgIDAg ICA0DQorICBbIDldIC5keW5hbWljICAgICAgICAgIERZTkFNSUMgICAgIDAy MDA0OTc0IDAwNDk3NCAwMDAwNzAgMDggV0EgICAgMyAgIDAgICA0DQorICBb MTBdIC5nb3QgICAgICAgICAgICAgIFBST0dCSVRTICAgIDAyMDA0OWU0IDAw NDllNCAwMDAwMGMgMDQgV0EgICAgMCAgIDAgICA0DQorICBbMTFdIC5ic3Mg ICAgICAgICAgICAgIE5PQklUUyAgICAgIDAyMDA0YTAwIDAwNGEwMCAwMDBh ODggMDAgV0EgICAgMCAgIDAgIDMyDQorICBbMTJdIC5jb21tZW50ICAgICAg ICAgIFBST0dCSVRTICAgIDAwMDAwMDAwIDAwNGEwMCAwMDAwMzMgMDAgICAg ICAgMCAgIDAgICAxDQorICBbMTNdIC5nbnUubGlibGlzdCAgICAgIEdOVV9M SUJMSVNUIDAwMDAwMDAwIDAwNGEzMyAwMDAwMDAgMTQgICAgICAxNCAgIDAg ICA0DQorICBbMTRdIC5nbnUubGlic3RyICAgICAgIFNUUlRBQiAgICAgIDAw MDAwMDAwIDAwNGEzMyAwMDAwMDAgMDAgICAgICAgMCAgIDAgICAxDQorICBb MTVdIC5nbnUucHJlbGlua191bmRvIFBST0dCSVRTICAgIDAwMDAwMDAwIDAw NGEzNCAwMDAzMGMgMDEgICAgICAgMCAgIDAgICA0DQorICBbMTZdIC5zaHN0 cnRhYiAgICAgICAgIFNUUlRBQiAgICAgIDAwMDAwMDAwIDAwNGQ0MyAwMDAw YTAgMDAgICAgICAgMCAgIDAgICAxDQorICBbMTddIC5zeW10YWIgICAgICAg ICAgIFNZTVRBQiAgICAgIDAwMDAwMDAwIDAwNTBlMCAwMDE0ODAgMTAgICAg ICAxOCAgMTEgICA0DQorICBbMThdIC5zdHJ0YWIgICAgICAgICAgIFNUUlRB QiAgICAgIDAwMDAwMDAwIDAwNjU2MCAwMDA3NDQgMDAgICAgICAgMCAgIDAg ICAxDQorDQorR3Jvd2luZyByZWFkLW9ubHkgc2VnbWVudCBub3QgcmVxdWly aW5nIGFkZGl0aW9uYWwgcGFkZGluZw0KK0ZpZ3VyZSAyOiBHcm93aW5nIHJl YWQtb25seSBzZWdtZW50IG5vdCByZXF1aXJpbmcgYWRkaXRpb25hbCBwYWRk aW5nDQorDQorDQorSW4gdGhlIHNlY29uZCBleGFtcGxlIHByZWxpbmsgY2Fu IGdyb3cgYnkganVzdCAweDRjMCBieXRlcyBhcyB3ZWxsLCBldmVuDQordGhv dWdoIHRoZSBkaXN0YW5jZSBiZXR3ZWVuIHJlYWQtd3JpdGUgYW5kIHJlYWQt b25seSBzZWdtZW50IGlzIGp1c3QgMHhkMjANCitieXRlcy4gV2l0aCB0aGlz IGRpc3RhbmNlLCBoeXBvdGhldGljYWwgYWRqdXN0bWVudCBieSBhbnkgc2l6 ZSBsZXNzIHRoYW4gMHhkMjENCitieXRlcyAobW9kdWxvIDQwOTYpIHdvdWxk IG5lZWQganVzdCByb3VuZGluZyB1cCB0byB0aGUgbmV4dCBtdWx0aXBsZSBv ZiAzMg0KK2J5dGVzLCB3aGlsZSBhZGp1c3RtZW50cyBmcm9tIDB4ZDIxIHVw IHRvIDB4ZmUwIHdvdWxkIHJlcXVpcmUgYWRqdXN0bWVudHMgaW4NCittdWx0 aXBsZXMgb2YgNDA5NiBieXRlcy4NCisNCisgICQgY2F0ID4gdGVzdDMuYyA8 PEVPRg0KKyAgaW50IGlbMl0gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCAoMzIp KSk7DQorICAjZGVmaW5lIEoxKE4pIGludCAqaiMjTiA9ICZpWzFdOw0KKyAg I2RlZmluZSBKMihOKSBKMShOIyMwKSBKMShOIyMxKSBKMShOIyMyKSBKMShO IyMzKSBKMShOIyM0KQ0KKyAgI2RlZmluZSBKMyhOKSBKMihOIyMwKSBKMihO IyMxKSBKMihOIyMyKSBKMihOIyMzKSBKMihOIyM0KQ0KKyAgI2RlZmluZSBK NChOKSBKMyhOIyMwKSBKMyhOIyMxKSBKMyhOIyMyKSBKMyhOIyMzKSBKMyhO IyM0KQ0KKyAgSjQoMCkgSjQoMSkgSjMoMikgSjMoMykgSjEoNCkNCisgIGlu dCBrWzY3MF07DQorICBhc20gKOKAnS5zZWN0aW9uIHJvX3NlZ19lbmQsIFzi gJ1hXOKAnTsgLnByZXZpb3Vz4oCdKTsNCisgIEVPRg0KKw0KKyAgJCBnY2Mg LXNoYXJlZCAtTzIgLW5vc3RkbGliIC1mcGljIC1vIHRlc3QzLnNvIHRlc3Qz LmMNCisgICQgcmVhZGVsZiAtUyB0ZXN0My5zbyB8IGdyZXAg4oCZXiBcW+KA mQ0KKyAgW05yXSBOYW1lICAgICAgICAgICAgICBUeXBlICAgICAgICBBZGRy ICAgICBPZmYgICAgU2l6ZSAgIEVTIEZsZyAgTGsgSW5mICBBbA0KKyAgWyAw XSAgICAgICAgICAgICAgICAgICBOVUxMICAgICAgICAwMDAwMDAwMCAwMDAw MDAgMDAwMDAwIDAwICAgICAgIDAgICAwICAgMA0KKyAgWyAxXSAuaGFzaCAg ICAgICAgICAgICBIQVNIICAgICAgICAwMDAwMDBiNCAwMDAwYjQgMDAwOTJj IDA0IEEgICAgIDIgICAwICAgNA0KKyAgWyAyXSAuZHluc3ltICAgICAgICAg ICBEWU5TWU0gICAgICAwMDAwMDllMCAwMDA5ZTAgMDAxNDIwIDEwIEEgICAg IDMgICBjICAgNA0KKyAgWyAzXSAuZHluc3RyICAgICAgICAgICBTVFJUQUIg ICAgICAwMDAwMWUwMCAwMDFlMDAgMDAwNzM1IDAwIEEgICAgIDAgICAwICAg MQ0KKyAgWyA0XSAucmVsLmR5biAgICAgICAgICBSRUwgICAgICAgICAwMDAw MjUzOCAwMDI1MzggMDAwOTY4IDA4IEEgICAgIDIgICAwICAgNA0KKyAgWyA1 XSAudGV4dCAgICAgICAgICAgICBQUk9HQklUUyAgICAwMDAwMmVhMCAwMDJl YTAgMDAwMDAwIDAwIEFYICAgIDAgICAwICAgNA0KKyAgWyA2XSByb19zZWdf ZW5kICAgICAgICBQUk9HQklUUyAgICAwMDAwMmVhMCAwMDJlYTAgMDAwMDAw IDAwIEEgICAgIDAgICAwICAgMQ0KKyAgWyA3XSAuZGF0YSAgICAgICAgICAg ICBQUk9HQklUUyAgICAwMDAwMzAwMCAwMDMwMDAgMDAwNGI0IDAwIFdBICAg IDAgICAwICAgNA0KKyAgWyA4XSAuZHluYW1pYyAgICAgICAgICBEWU5BTUlD ICAgICAwMDAwMzRiNCAwMDM0YjQgMDAwMDcwIDA4IFdBICAgIDMgICAwICAg NA0KKyAgWyA5XSAuZ290ICAgICAgICAgICAgICBQUk9HQklUUyAgICAwMDAw MzUyNCAwMDM1MjQgMDAwMDBjIDA0IFdBICAgIDAgICAwICAgNA0KKyAgWzEw XSAuYnNzICAgICAgICAgICAgICBOT0JJVFMgICAgICAwMDAwMzU0MCAwMDM1 NDAgMDAwYTg4IDAwIFdBICAgIDAgICAwICAzMg0KKyAgWzExXSAuY29tbWVu dCAgICAgICAgICBQUk9HQklUUyAgICAwMDAwMDAwMCAwMDM1NDAgMDAwMDMz IDAwICAgICAgIDAgICAwICAgMQ0KKyAgWzEyXSAuc2hzdHJ0YWIgICAgICAg ICBTVFJUQUIgICAgICAwMDAwMDAwMCAwMDM1NzMgMDAwMDZkIDAwICAgICAg IDAgICAwICAgMQ0KKyAgWzEzXSAuc3ltdGFiICAgICAgICAgICBTWU1UQUIg ICAgICAwMDAwMDAwMCAwMDM4MzggMDAxNDYwIDEwICAgICAgMTQgIDEwICAg NA0KKyAgWzE0XSAuc3RydGFiICAgICAgICAgICBTVFJUQUIgICAgICAwMDAw MDAwMCAwMDRjOTggMDAwNzQyIDAwICAgICAgIDAgICAwICAgMQ0KKw0KKyAg JCByZWFkZWxmIC1sIHRlc3QzLnNvIHwgZ3JlcCBMT0FEDQorICAgIExPQUQg ICAgMHgwMDAwMDAgMHgwMDAwMDAwMCAweDAwMDAwMDAwIDB4MDJlYTAgMHgw MmVhMCBSIEUgMHgxMDAwDQorICAgIExPQUQgICAgMHgwMDMwMDAgMHgwMDAw MzAwMCAweDAwMDAzMDAwIDB4MDA1MzAgMHgwMGZjOCBSVyAweDEwMDANCisN CisgICQgcHJlbGluayAtTiAuL3Rlc3QzLnNvDQorICAkIHJlYWRlbGYgLWwg dGVzdDMuc28gfCBncmVwIExPQUQNCisgICAgTE9BRCAgICAweDAwMDAwMCAw eDAyMDAwMDAwIDB4MDIwMDAwMDAgMHgwM2VhMCAweDAzZWEwIFIgRSAweDEw MDANCisgICAgTE9BRCAgICAweDAwNDAwMCAweDAyMDA0MDAwIDB4MDIwMDQw MDAgMHgwMDUzMCAweDAwZmM4IFJXIDB4MTAwMA0KKw0KKyAgJCByZWFkZWxm IC1TIHRlc3QzLnNvIHwgZ3JlcCDigJleIFxb4oCZDQorICBbTnJdIE5hbWUg ICAgICAgICAgICAgIFR5cGUgICAgICAgIEFkZHIgICAgIE9mZiAgICBTaXpl ICAgRVMgRmxnICBMayBJbmYgIEFsIA0KKyAgWyAwXSAgICAgICAgICAgICAg ICAgICBOVUxMICAgICAgICAwMDAwMDAwMCAwMDAwMDAgMDAwMDAwIDAwICAg ICAgIDAgICAwICAgMA0KKyAgWyAxXSAuaGFzaCAgICAgICAgICAgICBIQVNI ICAgICAgICAwMjAwMDBiNCAwMDAwYjQgMDAwOTJjIDA0IEEgICAgIDIgICAw ICAgNA0KKyAgWyAyXSAuZHluc3ltICAgICAgICAgICBEWU5TWU0gICAgICAw MjAwMDllMCAwMDA5ZTAgMDAxNDIwIDEwIEEgICAgIDMgICBjICAgNA0KKyAg WyAzXSAuZHluc3RyICAgICAgICAgICBTVFJUQUIgICAgICAwMjAwMWUwMCAw MDFlMDAgMDAwNzM1IDAwIEEgICAgIDAgICAwICAgMQ0KKyAgWyA0XSAucmVs LmR5biAgICAgICAgICBSRUxBICAgICAgICAwMjAwMjUzOCAwMDI1MzggMDAw ZTFjIDBjIEEgICAgIDIgICAwICAgNA0KKyAgWyA1XSAudGV4dCAgICAgICAg ICAgICBQUk9HQklUUyAgICAwMjAwM2VhMCAwMDNlYTAgMDAwMDAwIDAwIEFY ICAgIDAgICAwICAgNA0KKyAgWyA2XSByb19zZWdfZW5kICAgICAgICBQUk9H QklUUyAgICAwMjAwM2VhMCAwMDNlYTAgMDAwMDAwIDAwIEEgICAgIDAgICAw ICAgMQ0KKyAgWyA3XSAuZGF0YSAgICAgICAgICAgICBQUk9HQklUUyAgICAw MjAwNDAwMCAwMDQwMDAgMDAwNGI0IDAwIFdBICAgIDAgICAwICAgNA0KKyAg WyA4XSAuZHluYW1pYyAgICAgICAgICBEWU5BTUlDICAgICAwMjAwNDRiNCAw MDQ0YjQgMDAwMDcwIDA4IFdBICAgIDMgICAwICAgNA0KKyAgWyA5XSAuZ290 ICAgICAgICAgICAgICBQUk9HQklUUyAgICAwMjAwNDUyNCAwMDQ1MjQgMDAw MDBjIDA0IFdBICAgIDAgICAwICAgNA0KKyAgWzEwXSAuYnNzICAgICAgICAg ICAgICBOT0JJVFMgICAgICAwMjAwNDU0MCAwMDQ1NDAgMDAwYTg4IDAwIFdB ICAgIDAgICAwICAzMg0KKyAgWzExXSAuY29tbWVudCAgICAgICAgICBQUk9H QklUUyAgICAwMDAwMDAwMCAwMDQ1NDAgMDAwMDMzIDAwICAgICAgIDAgICAw ICAgMQ0KKyAgWzEyXSAuZ251LmxpYmxpc3QgICAgICBHTlVfTElCTElTVCAw MDAwMDAwMCAwMDQ1NzMgMDAwMDAwIDE0ICAgICAgMTMgICAwICAgNA0KKyAg WzEzXSAuZ251LmxpYnN0ciAgICAgICBTVFJUQUIgICAgICAwMDAwMDAwMCAw MDQ1NzMgMDAwMDAwIDAwICAgICAgIDAgICAwICAgMQ0KKyAgWzE0XSAuZ251 LnByZWxpbmtfdW5kbyBQUk9HQklUUyAgICAwMDAwMDAwMCAwMDQ1NzQgMDAw MmU0IDAxICAgICAgIDAgICAwICAgNA0KKyAgWzE1XSAuc2hzdHJ0YWIgICAg ICAgICBTVFJUQUIgICAgICAwMDAwMDAwMCAwMDQ4NWIgMDAwMDk4IDAwICAg ICAgIDAgICAwICAgMQ0KKyAgWzE2XSAuc3ltdGFiICAgICAgICAgICBTWU1U QUIgICAgICAwMDAwMDAwMCAwMDRiYzggMDAxNDYwIDEwICAgICAgMTcgIDEw ICAgNA0KKyAgWzE3XSAuc3RydGFiICAgICAgICAgICBTVFJUQUIgICAgICAw MDAwMDAwMCAwMDYwMjggMDAwNzQyIDAwICAgICAgIDAgICAwICAgMQ0KKw0K Kw0KK0dyb3dpbmcgcmVhZC1vbmx5IHNlZ21lbnQgaWYgcGFnZSBwYWRkaW5n IG5lZWRlZA0KK0ZpZ3VyZSAzOiBHcm93aW5nIHJlYWQtb25seSBzZWdtZW50 IGlmIHBhZ2UgcGFkZGluZyBuZWVkZWQNCisNCitJbiB0aGUgbGFzdCBleGFt cGxlIHRoZSBkaXN0YW5jZSBiZXR3ZWVuIFBUX0xPQUQgc2VnbWVudHMgaXMg dmVyeSBzbWFsbCwganVzdA0KKzB4MTYwIGJ5dGVzIGFuZCB0aGUgYWRqdXN0 bWVudCBoYWQgdG8gYmUgZG9uZSBieSA0MDk2IGJ5dGVzLg0KKw0KKz09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0NCisNCis4IENvbmZsaWN0cw0K Kw0KK0FzIHNhaWQgZWFybGllciwgaWYgc3ltYm9sIGxvb2t1cCBvZiBzb21l IHN5bWJvbCBpbiBwYXJ0aWN1bGFyIHNoYXJlZCBsaWJyYXJ5DQorcmVzdWx0 cyBpbiBkaWZmZXJlbnQgdmFsdWVzIHdoZW4gdGhhdCBzaGFyZWQgbGlicmFy eeKAmXMgbmF0dXJhbCBzZWFyY2ggc2NvcGUgaXMNCit1c2VkIGFuZCB3aGVu IHVzaW5nIHNlYXJjaCBzY29wZSBvZiB0aGUgYXBwbGljYXRpb24gdGhlIERT TyBpcyB1c2VkIGluLCB0aGlzDQoraXMgY29uc2lkZXJlZCBhIGNvbmZsaWN0 LiBIZXJlIGlzIGFuIGV4YW1wbGUgb2YgYSBjb25mbGljdCBvbiBJQS0zMjoN CisNCisgICQgY2F0ID4gdGVzdDEuYyA8PEVPRg0KKyAgaW50IGk7DQorICBp bnQgKmogPSAmaTsNCisgIGludCAqZm9vICh2b2lkKSB7IHJldHVybiAmaTsg fQ0KKyAgRU9GDQorDQorICAkIGNhdCA+IHRlc3QyLmMgPDxFT0YNCisgIGlu dCBpOw0KKyAgaW50ICprID0gJmk7DQorICBpbnQgKmJhciAodm9pZCkgeyBy ZXR1cm4gJmk7IH0NCisgIEVPRg0KKw0KKyAgJCBjYXQgPiB0ZXN0LmMgPDxF T0YNCisgICNpbmNsdWRlIDxzdGRpby5oPg0KKyAgZXh0ZXJuIGludCBpLCAq aiwgKmssICpmb28gKHZvaWQpLCBiYXIgKHZvaWQpOw0KKyAgaW50IG1haW4g KHZvaWQpDQorICB7DQorICAjaWZkZWYgUFJJTlRfSQ0KKyAgICAgIHByaW50 ZiAo4oCdJXBcbuKAnSwgJmkpOw0KKyAgI2VuZGlmDQorICAgICAgcHJpbnRm ICjigJ0lcCAlcCAlcCAlcFxu4oCdLCBqLCBrLCBmb28gKCksIGJhciAoKSk7 DQorICB9DQorICBFT0YNCisNCisgICQgZ2NjIC1ub3N0ZGxpYiAtc2hhcmVk IC1mcGljIC1zIC1vIHRlc3QxLnNvIHRlc3QxLmMNCisgICQgZ2NjIC1ub3N0 ZGxpYiAtc2hhcmVkIC1mcGljIC1vIHRlc3QyLnNvIHRlc3QyLmMgLi90ZXN0 MS5zbw0KKyAgJCBnY2MgLW8gdGVzdCB0ZXN0LmMgLi90ZXN0Mi5zbyAuL3Rl c3QxLnNvDQorDQorICAkIC4vdGVzdA0KKyAgMHgxNjEzN2MgMHgxNjEzN2Mg MHgxNjEzN2MgMHgxNjEzN2MNCisNCisgICQgcmVhZGVsZiAtciAuL3Rlc3Qx LnNvDQorDQorICBSZWxvY2F0aW9uIHNlY3Rpb24g4oCZLnJlbC5keW7igJkg YXQgb2Zmc2V0IDB4MmJjIGNvbnRhaW5zIDIgZW50cmllczoNCisgIE9mZnNl dCAgIEluZm8gICAgIFR5cGUgICAgICAgICAgIFN5bS5WYWx1ZSBTeW0uTmFt ZQ0KKyAgMDAwMDEyZTQgMDAwMDBkMDEgUl8zODZfMzIgICAgICAgMDAwMDEz NjggIGkNCisgIDAwMDAxMzY0IDAwMDAwZDA2IFJfMzg2X0dMT0JfREFUIDAw MDAxMzY4ICBpDQorDQorICAkIHByZWxpbmsgLU4gLi90ZXN0IC4vdGVzdDEu c28gLi90ZXN0Mi5zbw0KKyAgJCBMRF9XQVJOPSBMRF9UUkFDRV9QUkVMSU5L SU5HPTEgTERfQklORF9OT1c9MSAvbGliL2xkLWxpbnV4LnNvLjIgLi90ZXN0 MS5zbw0KKyAgLi90ZXN0MS5zbyA9PiAuL3Rlc3QxLnNvICgweDA0ZGI2MDAw LCAweDAwMDAwMDAwKQ0KKw0KKyAgJCBMRF9XQVJOPSBMRF9UUkFDRV9QUkVM SU5LSU5HPTEgTERfQklORF9OT1c9MSAvbGliL2xkLWxpbnV4LnNvLjIgLi90 ZXN0Mi5zbw0KKyAgLi90ZXN0Mi5zbyA9PiAuL3Rlc3QyLnNvICgweDA0ZGJh MDAwLCAweDAwMDAwMDAwKQ0KKyAgLi90ZXN0MS5zbyA9PiAuL3Rlc3QxLnNv ICgweDA0ZGI2MDAwLCAweDAwMDAwMDAwKQ0KKw0KKyAgJCBMRF9XQVJOPSBM RF9UUkFDRV9QUkVMSU5LSU5HPTEgTERfQklORF9OT1c9MSAvbGliL2xkLWxp bnV4LnNvLjIgLi90ZXN0IFwNCisgICAgfCBzZWQg4oCZcy9eW1s6c3BhY2U6 XV0qLyAv4oCZDQorICAgIC4vdGVzdCAgICAgPT4gLi90ZXN0ICAgICAoMHgw ODA0ODAwMCwgMHgwMDAwMDAwMCkNCisgICAgLi90ZXN0Mi5zbyA9PiAuL3Rl c3QyLnNvICgweDA0ZGJhMDAwLCAweDAwMDAwMDAwKQ0KKyAgICAuL3Rlc3Qx LnNvID0+IC4vdGVzdDEuc28gKDB4MDRkYjYwMDAsIDB4MDAwMDAwMDApDQor ICAgIGxpYmMuc28uNiAgPT4gL2xpYi90bHMvbGliYy5zby42ICgweDAwYjIy MDAwLCAweDAwMDAwMDAwKQ0KKyAgICAgICAgVExTKDB4MSwgMHgwMDAwMDAy OCkNCisgICAgL2xpYi9sZC1saW51eC5zby4yID0+IC9saWIvbGQtbGludXgu c28uMiAoMHgwMGIwYTAwMCwgMHgwMDAwMDAwMCkNCisNCisgICAkIHJlYWRl bGYgLVMgLi90ZXN0MS5zbyB8IGdyZXAg4oCZXC5kYXRhXHxcLmdvdOKAmQ0K KyAgIFsgNl0gLmRhdGEgUFJPR0JJVFMgMDRkYjcyZTQgMDAwMmU0IDAwMDAw NCAwMCBXQSAwIDAgNA0KKyAgIFsgOF0gLmdvdCAgUFJPR0JJVFMgMDRkYjcz NTggMDAwMzU4IDAwMDAxMCAwNCBXQSAwIDAgNA0KKw0KKyAgICQgcmVhZGVs ZiAtciAuL3Rlc3QxLnNvDQorICAgUmVsb2NhdGlvbiBzZWN0aW9uIOKAmS5y ZWwuZHlu4oCZIGF0IG9mZnNldCAweDJiYyBjb250YWlucyAyIGVudHJpZXM6 DQorICAgT2Zmc2V0ICAgSW5mbyAgICAgVHlwZSAgICAgICAgICAgU3ltLlZh bHVlIFN5bS4gTmFtZQ0KKyAgIDA0ZGI3MmU0IDAwMDAwZDA2IFJfMzg2X0dM T0JfREFUIDA0ZGI3MzY4ICBpDQorICAgMDRkYjczNjQgMDAwMDBkMDYgUl8z ODZfR0xPQl9EQVQgMDRkYjczNjggIGkNCisNCisgICAkIG9iamR1bXAgLXMg LWogLmdvdCAtaiAuZGF0YSB0ZXN0MS5zbw0KKyAgIHRlc3QxLnNvOiBmaWxl IGZvcm1hdCBlbGYzMi1pMzg2DQorICAgQ29udGVudHMgb2Ygc2VjdGlvbiAu ZGF0YToNCisgICA0ZGI3MmU0IDY4NzNkYjA0ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGhzLi4NCisgICBDb250ZW50cyBvZiBz ZWN0aW9uIC5nb3Q6DQorICAgNGRiNzM1OCBlODEyMDAwMCAwMDAwMDAwMCAw MDAwMDAwMCA2ODczZGIwNCAuLi4uLi4uLi4uLi5ocy4uDQorDQorICAgJCBy ZWFkZWxmIC1yIC4vdGVzdCB8IHNlZCDigJkvXC5nbnVcLmNvbmZsaWN0Lywk IWTigJkNCisgICBSZWxvY2F0aW9uIHNlY3Rpb24g4oCZLmdudS5jb25mbGlj dOKAmSBhdCBvZmZzZXQgMHg3YWMgY29udGFpbnMgMTggZW50cmllczoNCisg ICBPZmZzZXQgICBJbmZvICAgICBUeXBlICAgICBTeW0uVmFsdWUgU3ltLk5h bWUgKyBBZGRlbmQNCisgICAwNGRiNzJlNCAwMDAwMDAwMSBSXzM4Nl8zMiAg ICAgICAgICAgICAgICAgICAgMDRkYmIzN2MNCisgICAwNGRiNzM2NCAwMDAw MDAwMSBSXzM4Nl8zMiAgICAgICAgICAgICAgICAgICAgMDRkYmIzN2MNCisg ICAwMGM1Njg3NCAwMDAwMDAwMSBSXzM4Nl8zMiAgICAgICAgICAgICAgICAg ICAgZmZmZmZmZjANCisgICAwMGM1Njg3OCAwMDAwMDAwMSBSXzM4Nl8zMiAg ICAgICAgICAgICAgICAgICAgMDAwMDAwMDENCisgICAwMGM1NjhiYyAwMDAw MDAwMSBSXzM4Nl8zMiAgICAgICAgICAgICAgICAgICAgZmZmZmZmZjQNCisg ICAwMGM1NjkwMCAwMDAwMDAwMSBSXzM4Nl8zMiAgICAgICAgICAgICAgICAg ICAgZmZmZmZmZWMNCisgICAwMGM1Njk0OCAwMDAwMDAwMSBSXzM4Nl8zMiAg ICAgICAgICAgICAgICAgICAgZmZmZmZmZGMNCisgICAwMGM1Njk1YyAwMDAw MDAwMSBSXzM4Nl8zMiAgICAgICAgICAgICAgICAgICAgZmZmZmZmZTANCisg ICAwMGM1Njk4MCAwMDAwMDAwMSBSXzM4Nl8zMiAgICAgICAgICAgICAgICAg ICAgZmZmZmZmZjgNCisgICAwMGM1Njk4OCAwMDAwMDAwMSBSXzM4Nl8zMiAg ICAgICAgICAgICAgICAgICAgZmZmZmZmZTQNCisgICAwMGM1NjlhNCAwMDAw MDAwMSBSXzM4Nl8zMiAgICAgICAgICAgICAgICAgICAgZmZmZmZmZDgNCisg ICAwMGM1NjljNCAwMDAwMDAwMSBSXzM4Nl8zMiAgICAgICAgICAgICAgICAg ICAgZmZmZmZmZTgNCisgICAwMGM1NjlkOCAwMDAwMDAwMSBSXzM4Nl8zMiAg ICAgICAgICAgICAgICAgICAgMDgwNDg1YjgNCisgICAwMGIxZjUxMCAwMDAw MDAwNyBSXzM4Nl9KVU1QX1NMT1QgICAgICAgICAgICAgMDBiOTE0NjANCisg ICAwMGIxZjUxNCAwMDAwMDAwNyBSXzM4Nl9KVU1QX1NMT1QgICAgICAgICAg ICAgMDBiOTEwODANCisgICAwMGIxZjUxOCAwMDAwMDAwNyBSXzM4Nl9KVU1Q X1NMT1QgICAgICAgICAgICAgMDBiOTE3NTANCisgICAwMGIxZjUxYyAwMDAw MDAwNyBSXzM4Nl9KVU1QX1NMT1QgICAgICAgICAgICAgMDBiOTEyYzANCisg ICAwMGIxZjUyMCAwMDAwMDAwNyBSXzM4Nl9KVU1QX1NMT1QgICAgICAgICAg ICAgMDBiOTEyMDANCisNCisgICAkIC4vdGVzdA0KKyAgIDB4NGRiYjM3YyAw eDRkYmIzN2MgMHg0ZGJiMzdjIDB4NGRiYjM3Yw0KKw0KK0NvbmZsaWN0IGV4 YW1wbGUNCisNCitJbiB0aGUgZXhhbXBsZSwgYW1vbmcgc29tZSBjb25mbGlj dHMgY2F1c2VkIGJ5IHRoZSBkeW5hbWljIGxpbmtlciBhbmQgdGhlIEMNCits aWJyYXJ5LCB0aGVyZSBpcyBhIGNvbmZsaWN0IGZvciB0aGUgc3ltYm9sIGkg aW4gdGVzdDEuc28gc2hhcmVkIGxpYnJhcnkuDQorDQorWyBQYXJ0aWN1bGFy bHkgaW4gdGhlIGV4YW1wbGUsIHRoZSA1IFJfMzg2X0pVTVBfU0xPVCBmaXh1 cHMgYXJlIFBMVCBzbG90cyBpbg0KKyAgdGhlIGR5bmFtaWMgbGlua2VyIGZv ciBtZW1vcnkgYWxsb2NhdG9yIGZ1bmN0aW9ucyByZXNvbHZpbmcgdG8gQyBs aWJyYXJ5DQorICBmdW5jdGlvbnMgaW5zdGVhZCBvZiBkeW5hbWljIGxpbmtl cuKAmXMgb3duIHRyaXZpYWwgaW1wbGVtZW50YXRpb24uIEZpcnN0IDEwDQor ICBSXzM4Nl8zMiBmaXh1cHMgYXQgb2Zmc2V0cyAweGM1Njg3NCB0byAweGM1 NjljNCBhcmUgVGhyZWFkIExvY2FsIFN0b3JhZ2UNCisgIGZpeHVwcyBpbiB0 aGUgQyBsaWJyYXJ5IGFuZCB0aGUgZml4dXAgYXQgMHhjNTY5ZDggaXMgZm9y IF9JT19zdGRpbl91c2VkIHdlYWsNCisgIHVuZGVmaW5lZCBzeW1ib2wgaW4g dGhlIEMgbGlicmFyeSwgcmVzb2x2aW5nIHRvIGEgc3ltYm9sIHdpdGggdGhl IHNhbWUgbmFtZQ0KKyAgaW4gdGhlIGV4ZWN1dGFibGUuIF0NCisNCit0ZXN0 MS5zbyBoYXMganVzdCBpdHNlbGYgaW4gaXRzIG5hdHVyYWwgc3ltYm9sIGxv b2t1cCBzY29wZSAoYXMgcHJvdmVkIGJ5DQorY29tbWFuZCBvdXRwdXQpOg0K Kw0KKyAgTERfV0FSTj0gTERfVFJBQ0VfUFJFTElOS0lORz0xIExEX0JJTkRf Tk9XPTEgL2xpYi9sZC1saW51eC5zby4yDQorICAuL3Rlc3QxLnNvDQorDQor U28gd2hlbiBsb29raW5nIHVwIHN5bWJvbCBpIGluIHRoaXMgc2NvcGUgdGhl IGRlZmluaXRpb24gaW4gdGVzdDEuc28gaXMgY2hvc2VuLg0KKw0KK3Rlc3Qx LnNvIGhhcyB0d28gcmVsb2NhdGlvbnMgYWdhaW5zdCB0aGUgc3ltYm9sIGks IG9uZSBSXzM4Nl8zMg0KK2FnYWluc3QgLmRhdGEgc2VjdGlvbiBhbmQgb25l IFJfMzg2X0dMT0JfREFUIGFnYWluc3QgLmdvdCBzZWN0aW9uLg0KKw0KK1do ZW4gcHJlbGlua2luZyB0ZXN0MS5zbyBsaWJyYXJ5LCB0aGUgZHluYW1pYyBs aW5rZXIgc3RvcmVzIHRoZSBhZGRyZXNzIG9mIGkNCisoMHg0ZGI3MzY4KSBp bnRvIGJvdGggbG9jYXRpb25zIChhdCBvZmZzZXRzIDB4NGRiNzJlNCBhbmQg MHg0ZGI3MzY0KS4NCisNCitUaGUgZ2xvYmFsIHN5bWJvbCBzZWFyY2ggc2Nv cGUgaW4gdGVzdCBleGVjdXRhYmxlIGNvbnRhaW5zIHRoZSBleGVjdXRhYmxl DQoraXRzZWxmLCB0ZXN0Mi5zbyBhbmQgdGVzdDEuc28gbGlicmFyaWVzLCBs aWJjLnNvLjYgYW5kIHRoZSBkeW5hbWljIGxpbmtlciBpbg0KK3RoZSBsaXN0 ZWQgb3JkZXIuDQorDQorV2hlbiBkb2luZyBzeW1ib2wgbG9va3VwIGZvciBz eW1ib2wgaSBpbiB0ZXN0MS5zbyB3aGVuIGRvaW5nIHJlbG9jYXRpb24NCitw cm9jZXNzaW5nIG9mIHRoZSB3aG9sZSBleGVjdXRhYmxlLCBhZGRyZXNzIG9m IGkgaW4gdGVzdDIuc28gaXMgcmV0dXJuZWQgYXMNCit0aGF0IHN5bWJvbCBj b21lcyBlYXJsaWVyIGluIHRoZSBnbG9iYWwgc2VhcmNoIHNjb3BlLg0KKw0K K1NvLCB3aGVuIG5vbmUgb2YgdGhlIGxpYnJhcmllcyBub3IgdGhlIGV4ZWN1 dGFibGUgaXMgcHJlbGlua2VkLCB0aGUgcHJvZ3JhbQ0KK3ByaW50cyA0IGlk ZW50aWNhbCBhZGRyZXNzZXMuIElmIHByZWxpbmsgZGlkbuKAmXQgY3JlYXRl IGNvbmZsaWN0IGZpeHVwcyBmb3IgdGhlDQordHdvIHJlbG9jYXRpb25zIGFn YWluc3QgdGhlIHN5bWJvbCBpIGluIHRlc3QxLnNvLCBwcmVsaW5rZWQgZXhl Y3V0YWJsZSAod2hpY2gNCitieXBhc3NlcyBub3JtYWwgcmVsb2NhdGlvbiBw cm9jZXNzaW5nIG9uIHN0YXJ0dXApIHdvdWxkIHByaW50IGluc3RlYWQgb2Yg dGhlDQorZGVzaXJlZDoNCisNCisgICAweDRkYmIzN2MgMHg0ZGJiMzdjIDB4 NGRiYjM3YyAweDRkYmIzN2MNCisgICBkaWZmZXJlbnQgYWRkcmVzc2VzLA0K KyAgIDB4NGRiNzM2OCAweDRkYmIzN2MgMHg0ZGI3MzY4IDB4NGRiYjM3Yw0K Kw0KK1RoYXQgaXMgYSBmdW5jdGlvbmFsaXR5IGNoYW5nZSB0aGF0IHByZWxp bmsgY2Fubm90IGJlIHBlcm1pdHRlZCB0byBtYWtlLCBzbw0KK2luc3RlYWQg aXQgZml4ZXMgdXAgdGhlIHR3byBsb2NhdGlvbnMgYnkgc3RvcmluZyB0aGUg ZGVzaXJlZCB2YWx1ZSBpbiB0aGVyZS4NCitJbiB0aGlzIGNhc2UgcHJlbGlu ayByZWFsbHkgY2Fubm90IGF2b2lkIHRoYXQgLSB0ZXN0MS5zbyBzaGFyZWQg bGlicmFyeSBjb3VsZA0KK2JlIGFsc28gdXNlZCB3aXRob3V0IHRlc3QyLnNv IGluIHNvbWUgb3RoZXIgZXhlY3V0YWJsZeKAmXMgc3ltYm9sIHNlYXJjaCBz Y29wZS4NCitPciB0aGVyZSBjb3VsZCBiZSBzb21lIGV4ZWN1dGFibGUgbGlu a2VkIHdpdGg6DQorDQorICAkIGdjYyAtbyB0ZXN0MiB0ZXN0LmMgLi90ZXN0 MS5zbyAuL3Rlc3QyLnNvDQorDQorQ29uZmxpY3QgZXhhbXBsZSB3aXRoIHN3 YXBwZWQgb3JkZXIgb2YgbGlicmFyaWVzIHdoZXJlIGkgbG9va3VwIGluIHRl c3QxLnNvDQorYW5kIHRlc3QyLnNvIGlzIHN1cHBvc2VkIHRvIHJlc29sdmUg dG8gaSBpbiB0ZXN0MS5zby4NCisNCitOb3cgY29uc2lkZXIgd2hhdCBoYXBw ZW5zIGlmIHRoZSBleGVjdXRhYmxlIGlzIGxpbmtlZCB3aXRoIC1EUFJJTlRf SToNCisNCisgICQgZ2NjIC1EUFJJTlRfSSAtbyB0ZXN0MyB0ZXN0LmMgLi90 ZXN0Mi5zbyAuL3Rlc3QxLnNvDQorICAkIC4vdGVzdDMNCisgIDB4ODA0OTcy Yw0KKyAgMHg4MDQ5NzJjIDB4ODA0OTcyYyAweDgwNDk3MmMgMHg4MDQ5NzJj DQorDQorICAkIHByZWxpbmsgLU4gLi90ZXN0MyAuL3Rlc3QxLnNvIC4vdGVz dDIuc28NCisgICQgcmVhZGVsZiAtUyAuL3Rlc3QyLnNvIHwgZ3JlcCDigJlc LmRhdGFcfFwuZ2904oCZDQorWyA2XSAuZGF0YSBQUk9HQklUUyAwNGRiYjJm MCAwMDAyZjAgMDAwMDA0IDAwIFdBIDAgMCA0DQorWyA4XSAuZ290ICBQUk9H QklUUyAwNGRiYjM2YyAwMDAzNmMgMDAwMDEwIDA0IFdBIDAgMCA0DQorDQor ICAkIHJlYWRlbGYgLXIgLi90ZXN0Mi5zbw0KKw0KK1JlbG9jYXRpb24gc2Vj dGlvbiDigJkucmVsLmR5buKAmSBhdCBvZmZzZXQgMHgyYzggY29udGFpbnMg MiBlbnRyaWVzOg0KKw0KKyAgT2Zmc2V0ICAgSW5mbyAgICAgVHlwZSAgICAg ICAgICAgU3ltLlZhbHVlICBTeW0uTmFtZQ0KKyAgMDRkYmIyZjAgMDAwMDBk MDYgUl8zODZfR0xPQl9EQVQgMDRkYmIzN2MgICBpDQorICAwNGRiYjM3OCAw MDAwMGQwNiBSXzM4Nl9HTE9CX0RBVCAwNGRiYjM3YyAgIGkNCisNCisgICQg b2JqZHVtcCAtcyAtaiAuZ290IC1qIC5kYXRhIHRlc3QyLnNvDQorICB0ZXN0 Mi5zbzogZmlsZSBmb3JtYXQgZWxmMzItaTM4Ng0KKyAgQ29udGVudHMgb2Yg c2VjdGlvbiAuZGF0YToNCisgIDRkYmIyZjAgN2NiM2RiMDQgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfC4uLg0KKyAgQ29udGVu dHMgb2Ygc2VjdGlvbiAuZ290Og0KKyAgNGRiYjM2YyBmNDEyMDAwMCAwMDAw MDAwMCAwMDAwMDAwMCA3Y2IzZGIwNCAuLi4uLi4uLi4uLi58Li4uDQorDQor ICAkIHJlYWRlbGYgLXIgLi90ZXN0Mw0KKyAgUmVsb2NhdGlvbiBzZWN0aW9u IOKAmS5yZWwuZHlu4oCZIGF0IG9mZnNldCAweDM3MCBjb250YWlucyA0IGVu dHJpZXM6DQorICBPZmZzZXQgICBJbmZvICAgICBUeXBlICAgICAgICAgICAg IFN5bS5WYWx1ZSAgU3ltLk5hbWUNCisgIDA4MDQ5NzIwIDAwMDAwZTA2IFJf Mzg2X0dMT0JfREFUICAgMDAwMDAwMDAgICBfX2dtb25fc3RhcnRfXw0KKyAg MDgwNDk3MjQgMDAwMDAxMDUgUl8zODZfQ09QWSAgICAgICAwODA0OTcyNCAg IGoNCisgIDA4MDQ5NzI4IDAwMDAwMzA1IFJfMzg2X0NPUFkgICAgICAgMDgw NDk3MjggICBrDQorICAwODA0OTcyYyAwMDAwMDQwNSBSXzM4Nl9DT1BZICAg ICAgIDA4MDQ5NzJjICAgaQ0KKw0KKyAgUmVsb2NhdGlvbiBzZWN0aW9uIOKA mS5yZWwucGx04oCZIGF0IG9mZnNldCAweDM5MCBjb250YWlucyA0IGVudHJp ZXM6DQorICBPZmZzZXQgICBJbmZvICAgICAgVHlwZSAgICAgICAgICAgIFN5 bS5WYWx1ZSAgU3ltLiBOYW1lDQorICAwODA0OTcxMCAwMDAwMDYwNyAgUl8z ODZfSlVNUF9TTE9UIDA4MDQ4M2Q4ICAgX19saWJjX3N0YXJ0X21haW4NCisg IDA4MDQ5NzE0IDAwMDAwNzA3ICBSXzM4Nl9KVU1QX1NMT1QgMDgwNDgzZTgg ICBwcmludGYNCisgIDA4MDQ5NzE4IDAwMDAwODA3ICBSXzM4Nl9KVU1QX1NM T1QgMDgwNDgzZjggICBmb28NCisgIDA4MDQ5NzFjIDAwMDAwYzA3ICBSXzM4 Nl9KVU1QX1NMT1QgMDgwNDg0MDggICBiYXINCisNCisgIFJlbG9jYXRpb24g c2VjdGlvbiDigJkuZ251LmNvbmZsaWN04oCZIGF0IG9mZnNldCAweDdmMCBj b250YWlucyAyMCBlbnRyaWVzOg0KKyAgT2Zmc2V0ICAgSW5mbyAgICAgIFR5 cGUgICAgICAgICAgICBTeW0uVmFsdWUgU3ltLk5hbWUgKyBBZGRlbmQNCisg IDA0ZGJiMmYwIDAwMDAwMDAxICBSXzM4Nl8zMiAgICAgICAgICAgICAgICAg ICAgICAgICAgIDA4MDQ5NzJjDQorICAwNGRiYjM3OCAwMDAwMDAwMSAgUl8z ODZfMzIgICAgICAgICAgICAgICAgICAgICAgICAgICAwODA0OTcyYw0KKyAg MDRkYjcyZTQgMDAwMDAwMDEgIFJfMzg2XzMyICAgICAgICAgICAgICAgICAg ICAgICAgICAgMDgwNDk3MmMNCisgIDA0ZGI3MzY0IDAwMDAwMDAxICBSXzM4 Nl8zMiAgICAgICAgICAgICAgICAgICAgICAgICAgIDA4MDQ5NzJjDQorICAw MGM1Njg3NCAwMDAwMDAwMSAgUl8zODZfMzIgICAgICAgICAgICAgICAgICAg ICAgICAgICBmZmZmZmZmMA0KKyAgMDBjNTY4NzggMDAwMDAwMDEgIFJfMzg2 XzMyICAgICAgICAgICAgICAgICAgICAgICAgICAgMDAwMDAwMDENCisgIDAw YzU2OGJjIDAwMDAwMDAxICBSXzM4Nl8zMiAgICAgICAgICAgICAgICAgICAg ICAgICAgIGZmZmZmZmY0DQorICAwMGM1NjkwMCAwMDAwMDAwMSAgUl8zODZf MzIgICAgICAgICAgICAgICAgICAgICAgICAgICBmZmZmZmZlYw0KKyAgMDBj NTY5NDggMDAwMDAwMDEgIFJfMzg2XzMyICAgICAgICAgICAgICAgICAgICAg ICAgICAgZmZmZmZmZGMNCisgIDAwYzU2OTVjIDAwMDAwMDAxICBSXzM4Nl8z MiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZmZmZmZmUwDQorICAwMGM1 Njk4MCAwMDAwMDAwMSAgUl8zODZfMzIgICAgICAgICAgICAgICAgICAgICAg ICAgICBmZmZmZmZmOA0KKyAgMDBjNTY5ODggMDAwMDAwMDEgIFJfMzg2XzMy ICAgICAgICAgICAgICAgICAgICAgICAgICAgZmZmZmZmZTQNCisgIDAwYzU2 OWE0IDAwMDAwMDAxICBSXzM4Nl8zMiAgICAgICAgICAgICAgICAgICAgICAg ICAgIGZmZmZmZmQ4DQorICAwMGM1NjljNCAwMDAwMDAwMSAgUl8zODZfMzIg ICAgICAgICAgICAgICAgICAgICAgICAgICBmZmZmZmZlOA0KKyAgMDBjNTY5 ZDggMDAwMDAwMDEgIFJfMzg2XzMyICAgICAgICAgICAgICAgICAgICAgICAg ICAgMDgwNDg1ZjANCisgIDAwYjFmNTEwIDAwMDAwMDA3ICBSXzM4Nl9KVU1Q X1NMT1QgICAgICAgICAgICAgICAgICAgIDAwYjkxNDYwDQorICAwMGIxZjUx NCAwMDAwMDAwNyAgUl8zODZfSlVNUF9TTE9UICAgICAgICAgICAgICAgICAg ICAwMGI5MTA4MA0KKyAgMDBiMWY1MTggMDAwMDAwMDcgIFJfMzg2X0pVTVBf U0xPVCAgICAgICAgICAgICAgICAgICAgMDBiOTE3NTANCisgIDAwYjFmNTFj IDAwMDAwMDA3ICBSXzM4Nl9KVU1QX1NMT1QgICAgICAgICAgICAgICAgICAg IDAwYjkxMmMwDQorICAwMGIxZjUyMCAwMDAwMDAwNyAgUl8zODZfSlVNUF9T TE9UICAgICAgICAgICAgICAgICAgICAwMGI5MTIwMA0KKw0KKyAgJCAuL3Rl c3QzDQorICAweDgwNDk3MmMNCisgIDB4ODA0OTcyYyAweDgwNDk3MmMgMHg4 MDQ5NzJjIDB4ODA0OTcyYw0KKw0KK0NvbmZsaWN0IGV4YW1wbGUgd2l0aCBD T1BZIHJlbG9jYXRpb24gZm9yIGNvbmZsaWN0aW5nIHN5bWJvbA0KKw0KK0Jl Y2F1c2UgdGhlIGV4ZWN1dGFibGUgaXMgbm90IGNvbXBpbGVkIGFzIHBvc2l0 aW9uIGluZGVwZW5kZW50IGNvZGUgYW5kIG1haW4NCitmdW5jdGlvbiB0YWtl cyBhZGRyZXNzIG9mIGkgdmFyaWFibGUsIHRoZSBvYmplY3QgZmlsZSBmb3Ig dGVzdDMuYyBjb250YWlucyBhDQorUl8zODZfMzIgcmVsb2NhdGlvbiBhZ2Fp bnN0IGkuIFRoZSBsaW5rZXIgY2Fubm90IG1ha2UgZHluYW1pYyByZWxvY2F0 aW9ucw0KK2FnYWluc3QgcmVhZC1vbmx5IHNlZ21lbnQgaW4gdGhlIGV4ZWN1 dGFibGUsIHNvIHRoZSBhZGRyZXNzIG9mIGkgbXVzdCBiZQ0KK2NvbnN0YW50 Lg0KKw0KK1RoaXMgaXMgYWNjb21wbGlzaGVkIGJ5IGNyZWF0aW5nIGEgbmV3 IG9iamVjdCBpIGluIHRoZSBleGVjdXRhYmxl4oCZcyAuZHluYnNzDQorc2Vj dGlvbiBhbmQgY3JlYXRpbmcgYSBkeW5hbWljIFJfMzg2X0NPUFkgcmVsb2Nh dGlvbiBmb3IgaXQuDQorDQorVGhlIHJlbG9jYXRpb24gZW5zdXJlcyB0aGF0 IGR1cmluZyBzdGFydHVwIHRoZSBjb250ZW50IG9mIGkgb2JqZWN0IGVhcmxp ZXN0IGluDQordGhlIHNlYXJjaCBzY29wZSB3aXRob3V0IHRoZSBleGVjdXRh YmxlIGlzIGNvcGllZCB0byB0aGlzIGkgb2JqZWN0IGluDQorZXhlY3V0YWJs ZS4NCisNCitOb3csIHVubGlrZSB0ZXN0IGV4ZWN1dGFibGUsIGluIHRlc3Qz IGV4ZWN1dGFibGUgaSBsb29rdXBzIGluIGJvdGggdGVzdDEuc28NCithbmQg dGVzdDIuc28gbGlicmFyaWVzIHJlc3VsdCBpbiBhZGRyZXNzIG9mIGkgaW4g dGhlIGV4ZWN1dGFibGUgKGluc3RlYWQgb2YNCit0ZXN0Mi5zbykuIFRoaXMg bWVhbnMgdGhhdCB0d28gY29uZmxpY3QgZml4dXBzIGFyZSBuZWVkZWQgYWdh aW4gZm9yIHRlc3QxLnNvDQorKGJ1dCBzdG9yaW5nIDB4ODA0OTcyYyBpbnN0 ZWFkIG9mIDB4NGRiYjM3YykgYW5kIHR3byBuZXcgZml4dXBzIGFyZSBuZWVk ZWQgZm9yDQordGVzdDIuc28uIElmIHRoZSBleGVjdXRhYmxlIGlzIGNvbXBp bGVkIGFzIHBvc2l0aW9uIGluZGVwZW5kZW50IGNvZGUsDQorDQorICAkIGdj YyAtZnBpYy1EUFJJTlRfSSAtbyB0ZXN0NCB0ZXN0LmMgLi90ZXN0Mi5zbyAu L3Rlc3QxLnNvDQorICAkIC4vdGVzdDQNCisgIDB4NGRiYjM3Yw0KKyAgMHg0 ZGJiMzdjIDB4NGRiYjM3YyAweDRkYmIzN2MgMHg0ZGJiMzdjDQorDQorQ29u ZmxpY3QgZXhhbXBsZSB3aXRoIHBvc2l0aW9uIGluZGVwZW5kZW50IGNvZGUg aW4gdGhlIGV4ZWN1dGFibGUNCisNCitUaGUgYWRkcmVzcyBvZiBpIGlzIHN0 b3JlZCBpbiBleGVjdXRhYmxl4oCZcyAuZ290IHNlY3Rpb24sIHdoaWNoIGlz IHdyaXRhYmxlIGFuZA0KK3RodXMgY2FuIGhhdmUgZHluYW1pYyByZWxvY2F0 aW9uIGFnYWluc3QgaXQuIFNvIHRoZSBsaW5rZXIgY3JlYXRlcyBhDQorUl8z ODZfR0xPQl9EQVQgcmVsb2NhdGlvbiBhZ2FpbnN0IHRoZSAuZ290IHNlY3Rp b24sIHRoZSBzeW1ib2wgaSBpcyB1bmRlZmluZWQNCitpbiB0aGUgZXhlY3V0 YWJsZSBhbmQgbm8gY29weSByZWxvY2F0aW9ucyBhcmUgbmVlZGVkLg0KK0lu IHRoaXMgY2FzZSwgb25seSB0ZXN0MS5zbyB3aWxsIG5lZWQgMiBmaXh1cHMs IHRlc3QyLnNvIHdpbGwgbm90IG5lZWQgYW55Lg0KKw0KK1RoZXJlIGFyZSB2 YXJpb3VzIHJlYXNvbnMgZm9yIGNvbmZsaWN0czoNCisNCivigKIgSW1wcm9w ZXJseSBsaW5rZWQgc2hhcmVkIGxpYnJhcmllcy4NCisNCitJZiBhIHNoYXJl ZCBsaWJyYXJ5IGFsd2F5cyBuZWVkcyBzeW1ib2xzIGZyb20gc29tZSBwYXJ0 aWN1bGFyIHNoYXJlZCBsaWJyYXJ5LA0KK2l0IHNob3VsZCBiZSBsaW5rZWQg YWdhaW5zdCB0aGF0IGxpYnJhcnksIHVzdWFsbHkgYnkgYWRkaW5nIC1sTElC TkFNRSB0byBnY2MNCistc2hhcmVkIGNvbW1hbmQgbGluZSB1c2VkIGR1cmlu ZyBsaW5raW5nIG9mIHRoZSBzaGFyZWQgbGlicmFyeS4NCisNCitUaGlzIGJv dGggcmVkdWNlcyBjb25mbGljdCBmaXh1cHMgaW4gcHJlbGluayBhbmQgbWFr ZXMgdGhlIGxpYnJhcnkgZWFzaWVyIHRvDQorbG9hZCB1c2luZyBkbG9wZW4s IGJlY2F1c2UgYXBwbGljYXRpb25zIGRvbuKAmXQgaGF2ZSB0byByZW1lbWJl ciB0aGF0IHRoZXkgaGF2ZQ0KK3RvIGxvYWQgc29tZSBvdGhlciBsaWJyYXJ5 IGZpcnN0LiBUaGUgYmVzdCBwbGFjZSB0byByZWNvcmQgdGhlIGRlcGVuZGVu Y3kgaXMNCitpbiB0aGUgc2hhcmVkIGxpYnJhcnkgaXRzZWxmLg0KKw0KK0Fu b3RoZXIgcmVhc29uIGlzIGlmIHRoZSBuZWVkZWQgbGlicmFyeSB1c2VzIHN5 bWJvbCB2ZXJzaW9uaW5nIGZvciBpdHMNCitzeW1ib2xzLiBOb3QgbGlua2lu ZyBhZ2FpbnN0IHRoYXQgbGlicmFyeSBjYW4gcmVzdWx0IGluIG1hbGZ1bmN0 aW9uaW5nIHNoYXJlZA0KK2xpYnJhcnkuDQorDQorUHJlbGluayBpc3N1ZXMg YSB3YXJuaW5nIGZvciBzdWNoIGxpYnJhcmllcyAtDQorDQorICBXYXJuaW5n OiBsaWJyYXJ5IGhhcyB1bmRlZmluZWQgbm9uLXdlYWsgc3ltYm9scy4NCisN CitXaGVuIGxpbmtpbmcgYSBzaGFyZWQgbGlicmFyeSwgdGhlIC1XbCwteixk ZWZzIG9wdGlvbiBjYW4gYmUgdXNlZCB0byBlbnN1cmUNCit0aGVyZSBhcmUg bm8gc3VjaCB1bmRlZmluZWQgbm9ud2VhayBzeW1ib2xzLg0KKw0KK1RoZXJl IGFyZSBleGNlcHRpb25zIHdoZW4gdW5kZWZpbmVkIG5vbi13ZWFrIHN5bWJv bHMgaW4gc2hhcmVkIGxpYnJhcmllcyBhcmUNCitkZXNpcmFibGUuDQorDQor T25lIGV4Y2VwdGlvbiBpcyB3aGVuIHRoZXJlIGFyZSBtdWx0aXBsZSBzaGFy ZWQgbGlicmFyaWVzIHByb3ZpZGluZyB0aGUgc2FtZQ0KK2Z1bmN0aW9uYWxp dHksIGFuZCBhIHNoYXJlZCBsaWJyYXJ5IGRvZXNu4oCZdCBjYXJlIHdoaWNo IG9uZSBpcyB1c2VkLg0KKw0KK0FuIGV4YW1wbGUgY2FuIGJlIGUuZy4gbGli cmVhZGxpbmUuc28uNCwgd2hpY2ggbmVlZHMgc29tZSB0ZXJtaW5hbCBoYW5k bGluZw0KK2Z1bmN0aW9ucywgd2hpY2ggYXJlIHByb3ZpZGVkIGJlIGVpdGhl ciBsaWJ0ZXJtY2FwLnNvLjIsIG9yIGxpYm5jdXJzZXMuc28uNS4NCisNCitB bm90aGVyIGV4Y2VwdGlvbiBpcyB3aXRoIHBsdWdpbnMgb3Igb3RoZXIgc2hh cmVkIGxpYnJhcmllcyB3aGljaCBleHBlY3Qgc29tZQ0KK3N5bWJvbHMgdG8g YmUgcmVzb2x2ZWQgdG8gc3ltYm9scyBkZWZpbmVkIGluIHRoZSBleGVjdXRh YmxlLg0KKw0KK+KAoiBBIGxpYnJhcnkgb3ZlcnJpZGluZyBmdW5jdGlvbmFs aXR5IG9mIHNvbWUgb3RoZXIgbGlicmFyeS4NCisNCitPbmUgZXhhbXBsZSBp cyBlLmcuIEMgbGlicmFyeSBhbmQgUE9TSVggdGhyZWFkIGxpYnJhcnkuIE9s ZGVyIHZlcnNpb25zIG9mIHRoZQ0KK0dOVSBDIGxpYnJhcnkgZGlkIG5vdCBw cm92aWRlIGNhbmNlbGFibGUgZW50cnkgcG9pbnRzIHJlcXVpcmVkIGJ5IHRo ZQ0KK3N0YW5kYXJkLiBUaGlzIGlzIG5vdCBuZWVkZWQgZm9yIG5vbi10aHJl YWRlZCBhcHBsaWNhdGlvbnMuIFNvIG9ubHkgdGhlDQorbGlicHRocmVhZC5z by4wIHNoYXJlZCBsaWJyYXJ5IHdoaWNoIHByb3ZpZGVzIFBPU0lYIHRocmVh ZGluZyBzdXBwb3J0IHRoZW4NCitvdmVycm9kZSB0aGUgY2FuY2VsbGF0aW9u IGVudHJ5IHBvaW50cyByZXF1aXJlZCBieSB0aGUgc3RhbmRhcmQgYnkgd3Jh cHBlcg0KK2Z1bmN0aW9ucyB3aGljaCBwcm92aWRlZCB0aGUgcmVxdWlyZWQg ZnVuY3Rpb25hbGl0eS4NCisNCitBbHRob3VnaCBtb3N0IHJlY2VudCB2ZXJz aW9ucyBvZiB0aGUgR05VIEMgbGlicmFyeSBoYW5kbGUgY2FuY2VsbGF0aW9u IGV2ZW4gaW4NCitlbnRyeSBwb2ludHMgaW4gbGliYy5zby42ICh0aGlzIHdh cyBuZWVkZWQgZm9yIGNhc2VzIHdoZW4gbGliYy5zby42IGNvbWVzDQorZWFy bGllciBiZWZvcmUgbGlicHRocmVhZC5zby4wIGluIHN5bWJvbCBzZWFyY2gg c2NvcGUgYW5kIHVzZWQgdG8gYmUgd29ya2VkDQorYXJvdW5kIGJ5IG5vbi1z dGFuZGFyZCBoYW5kbGluZyBvZiB3ZWFrIHN5bWJvbHMgaW4gdGhlIGR5bmFt aWMgbGlua2VyKSwNCitiZWNhdXNlIG9mIHN5bWJvbCB2ZXJzaW9uaW5nIHRo ZSBzeW1ib2xzIGhhZCB0byBzdGF5IGluIGxpYnB0aHJlYWQuc28uMCBhcw0K K3dlbGwgYXMgaW4gbGliYy5zby42Lg0KKw0KK1RoaXMgbWVhbnMgZXZlcnkg cHJvZ3JhbSB1c2luZyBQT1NJWCB0aHJlYWRzIG9uIExpbnV4IHdpbGwgaGF2 ZSBhIGNvdXBsZSBvZg0KK2NvbmZsaWN0IGZpeHVwcyBiZWNhdXNlIG9mIHRo aXMuDQorDQor4oCiIFByb2dyYW1zIHdoaWNoIG5lZWQgY29weSByZWxvY2F0 aW9ucy4NCisNCitBbHRob3VnaCBwcmVsaW5rIHdpbGwgcmVzb2x2ZSB0aGUg Y29weSByZWxvY2F0aW9ucyBhdCBwcmVsaW5raW5nIHRpbWUsIGlmIGFueQ0K K3NoYXJlZCBsaWJyYXJ5IGhhcyByZWxvY2F0aW9ucyBhZ2FpbnN0IHRoZSBz eW1ib2wgd2hpY2ggbmVlZGVkIGNvcHkNCityZWxvY2F0aW9uLCBhbGwgc3Vj aCByZWxvY2F0aW9ucyB3aWxsIG5lZWQgY29uZmxpY3QgZml4dXBzLiBHZW5l cmFsbHksIGl0IGlzDQorYmV0dGVyIHRvIG5vdCBleHBvcnQgdmFyaWFibGVz IGZyb20gc2hhcmVkIGxpYnJhcmllcyBpbiB0aGVpciBBUElzLCBpbnN0ZWFk DQorcHJvdmlkZSBhY2Nlc3NvciBmdW5jdGlvbnMuDQorDQor4oCiIEZ1bmN0 aW9uIHBvaW50ZXIgZXF1YWxpdHkgcmVxdWlyZW1lbnQgZm9yIGZ1bmN0aW9u cyBjYWxsZWQgZnJvbSBleGVjdXRhYmxlcy4NCisNCitXaGVuIGFkZHJlc3Mg b2Ygc29tZSBnbG9iYWwgZnVuY3Rpb24gaXMgdGFrZW4sIGF0IGxlYXN0IEMg YW5kIEMrKyByZXF1aXJlIHRoYXQNCit0aGlzIHBvaW50ZXIgaXMgdGhlIHNh bWUgaW4gdGhlIHdob2xlIHByb2dyYW0uIEV4ZWN1dGFibGVzIHR5cGljYWxs eSBjb250YWluDQorcG9zaXRpb24gZGVwZW5kZW50IGNvZGUsIHNvIHdoZW4g Y29kZSBpbiB0aGUgZXhlY3V0YWJsZSB0YWtlcyBhZGRyZXNzIG9mIHNvbWUN CitmdW5jdGlvbiBub3QgZGVmaW5lZCBpbiB0aGUgZXhlY3V0YWJsZSBpdHNl bGYsIHRoYXQgYWRkcmVzcyBtdXN0IGJlIGxpbmsgdGltZQ0KK2NvbnN0YW50 Lg0KKw0KK0xpbmtlciBhY2NvbXBsaXNoZXMgdGhpcyBieSBjcmVhdGluZyBh IFBMVCBzbG90IGZvciB0aGUgZnVuY3Rpb24gdW5sZXNzIHRoZXJlDQord2Fz IG9uZSBhbHJlYWR5IGFuZCByZXNvbHZpbmcgdG8gdGhlIGFkZHJlc3Mgb2Yg UExUIHNsb3QuDQorDQorVGhlIHN5bWJvbCBmb3IgdGhlIGZ1bmN0aW9uIGlz IGNyZWF0ZWQgd2l0aCBzdF92YWx1ZSBlcXVhbCB0byBhZGRyZXNzIG9mIHRo ZQ0KK1BMVCBzbG90LCBidXQgc3Rfc2huZHggc2V0IHRvIFNITl9VTkRFRi4N CisNCitTdWNoIHN5bWJvbHMgYXJlIHRyZWF0ZWQgc3BlY2lhbGx5IGJ5IHRo ZSBkeW5hbWljIGxpbmtlciwgaW4gdGhhdCBQTFQNCityZWxvY2F0aW9ucyBy ZXNvbHZlIHRvIGZpcnN0IHN5bWJvbCBpbiB0aGUgZ2xvYmFsIHNlYXJjaCBz Y29wZSBhZnRlciB0aGUNCitleGVjdXRhYmxlLCB3aGlsZSBzeW1ib2wgbG9v a3VwcyBmb3IgYWxsIG90aGVyIHJlbG9jYXRpb24gdHlwZXMgcmV0dXJuIHRo ZQ0KK2FkZHJlc3Mgb2YgdGhlIHN5bWJvbCBpbiB0aGUgZXhlY3V0YWJsZS4N CisNCitVbmZvcnR1bmF0ZWx5LCBHTlUgbGlua2VyIGRvZXNu4oCZdCBkaWZm ZXJlbnRpYXRlIGJldHdlZW4gdGFraW5nIGFkZHJlc3Mgb2YgYQ0KK2Z1bmN0 aW9uIGluIGFuIGV4ZWN1dGFibGUgKGVzcGVjaWFsbHkgb25lIGZvciB3aGlj aCBubyBkeW5hbWljIHJlbG9jYXRpb24gaXMNCitwb3NzaWJsZSBpbiBjYXNl IGl0IGlzIGluIHJlYWQtb25seSBzZWdtZW50KSBhbmQganVzdCBjYWxsaW5n IHRoZSBmdW5jdGlvbiwNCitidXQgbmV2ZXIgdGFraW5nIGl0cyBhZGRyZXNz Lg0KKw0KK0lmIGl0IGNsZWFyZWQgdGhlIHN0X3ZhbHVlIGZpZWxkIG9mIHRo ZSBTSE5fVU5ERUYgZnVuY3Rpb24gc3ltYm9scyBpbiBjYXNlDQorbm90aGlu ZyBpbiB0aGUgZXhlY3V0YWJsZSB0YWtlcyB0aGUgZnVuY3Rpb27igJlzIGFk ZHJlc3MsIHNldmVyYWwgcHJlbGluaw0KK2NvbmZsaWN0IGNvdWxkIGRpc2Fw cGVhciAoU0hOX1VOREVGIHN5bWJvbHMgd2l0aCBzdF92YWx1ZSBzZXQgdG8g MCBhcmUgdHJlYXRlZA0KK2Fsd2F5cyBhcyByZWFsIHVuZGVmaW5lZCBzeW1i b2xzIGJ5IHRoZSBkeW5hbWljIGxpbmtlcikuDQorDQor4oCiIENPTURBVCBj b2RlIGFuZCBkYXRhIGluIEMrKy4NCisNCitDKysgbGFuZ3VhZ2UgaGFzIHNl dmVyYWwgcGxhY2VzIHdoZXJlIGl0IG1heSBuZWVkIHRvIGVtaXQgc29tZSBj b2RlIG9yIGRhdGENCit3aXRob3V0IGEgY2xlYXIgdW5pcXVlIGNvbXBpbGF0 aW9uIHVuaXQgb3duaW5nIGl0LiBFeGFtcGxlcyBpbmNsdWRlIHRha2luZw0K K2FkZHJlc3Mgb2YgYW4gaW5saW5lIGZ1bmN0aW9uLCBsb2NhbCBzdGF0aWMg dmFyaWFibGUgaW4gaW5saW5lIGZ1bmN0aW9ucywNCit2aXJ0dWFsIHRhYmxl cyBmb3Igc29tZSBjbGFzc2VzICh0aGlzIGRlcGVuZHMgb24gI3ByYWdtYSBp bnRlcmZhY2Ugb3IgI3ByYWdtYQ0KK2ltcGxlbWVudGF0aW9uIHByZXNlbmNl LCBwcmVzZW5jZSBvZiBub24taW5saW5lIG5vbi1wdXJlLXZpcnR1YWwgbWVt YmVyDQorZnVuY3Rpb24gaW4gdGhlIGNsYXNzLCBldGMuKSwgUlRUSSBpbmZv IGZvciB0aGVtLg0KKw0KK0NvbXBpbGVycyBhbmQgbGlua2VycyBoYW5kbGUg dGhlc2UgdXNpbmcgdmFyaW91cyBDT01EQVQgc2NoZW1lcywgZS5nLiBHTlUN CitsaW5rZXLigJlzIC5nbnUubGlua29uY2UqIHNwZWNpYWwgc2VjdGlvbnMg b3IgdXNpbmcgU0hUX0dST1VQLg0KKw0KK1VuZm9ydHVuYXRlbHksIGFsbCB0 aGVzZSBkdXBsaWNhdGUgbWVyZ2luZyBzY2hlbWVzIHdvcmsgb25seSBkdXJp bmcgbGlua2luZyBvZg0KK3NoYXJlZCBsaWJyYXJpZXMgb3IgZXhlY3V0YWJs ZXMsIG5vIGR1cGxpY2F0ZSByZW1vdmFsIGlzIGRvbmUgYWNyb3NzIHNoYXJl ZA0KK2xpYnJhcmllcy4NCisNCitTaGFyZWQgbGlicmFyaWVzIHR5cGljYWxs eSBoYXZlIHJlbG9jYXRpb25zIGFnYWluc3QgdGhlaXIgQ09NREFUIGNvZGUg b3IgZGF0YQ0KK29iamVjdHMgKG90aGVyd2lzZSB0aGV5IHdvdWxkbuKAmXQg YmUgYXQgbGVhc3QgaW4gbW9zdCBjYXNlcyBlbWl0dGVkIGF0IGFsbCksIHNv DQoraWYgdGhlcmUgYXJlIENPTURBVCBkdXBsaWNhdGVzIGFjcm9zcyBzaGFy ZWQgbGlicmFyaWVzIG9yIHRoZSBleGVjdXRhYmxlLCB0aGV5DQorbGVhZCB0 byBjb25mbGljdCBmaXh1cHMuDQorDQorVGhlIGxpbmtlciB0aGVvcmV0aWNh bGx5IGNvdWxkIHRyeSB0byBtZXJnZSBDT01EQVQgZHVwbGljYXRlcyBhY3Jv c3Mgc2hhcmVkDQorbGlicmFyaWVzIGlmIHNwZWNpZmljYWxseSByZXF1ZXN0 ZWQgYnkgdGhlIHVzZXIgKGlmIGEgQ09NREFUIHN5bWJvbCBpcyBhbHJlYWR5 DQorcHJlc2VudCBpbiBvbmUgb2YgdGhlIGRlcGVuZGVudCBzaGFyZWQgbGli cmFyaWVzIGFuZCBpcyBTVEJfV0VBSywgdGhlIGxpbmtlcg0KK2NvdWxkIHNr aXAgaXQpLg0KKw0KK1VuZm9ydHVuYXRlbHksIHRoaXMgb25seSB3b3JrcyBh cyBsb25nIGFzIHRoZSB1c2VyIGhhcyBmdWxsIGNvbnRyb2wgb3ZlciB0aGUN CitkZXBlbmRlbnQgc2hhcmVkIGxpYnJhcmllcywgYmVjYXVzZSB0aGUgQ09N REFUIHN5bWJvbCBjb3VsZCBiZSBleHBvcnRlZCBmcm9tDQordGhlbSBqdXN0 IGFzIGEgc2lkZSBlZmZlY3Qgb2YgdGhlaXIgaW1wbGVtZW50YXRpb24gKGUu Zy4gdGhleSB1c2Ugc29tZSBjbGFzcw0KK2ludGVybmFsbHkpLiBXaGVuIHN1 Y2ggbGlicmFyaWVzIGFyZSByZWJ1aWx0IGV2ZW4gd2l0aCBtaW5vciBjaGFu Z2VzIGluIHRoZWlyDQoraW1wbGVtZW50YXRpb24gKHVuZm9ydHVuYXRlbHkg d2l0aCBDKysgc2hhcmVkIGxpYnJhcmllcyBpdCBpcyB1c3VhbGx5IG5vdCB2 ZXJ5DQorY2xlYXIgd2hhdCBwYXJ0IGlzIGV4cG9ydGVkIEFCSSBhbmQgd2hh dCBpcyBub3QpLCBzb21lIG9mIHRob3NlIENPTURBVCBzeW1ib2xzDQoraW4g dGhlbSBjb3VsZCBnbyBhd2F5IChlLmcuIGJlY2F1c2Ugc3VkZGVubHkgdGhl eSB1c2UgYSBkaWZmZXJlbnQgY2xhc3MNCitpbnRlcm5hbGx5IGFuZCB0aGUg cHJldmlvdXNseSB1c2VkIGNsYXNzIGlzIG5vdCByZWZlcmVuY2VkIGFueXdo ZXJlKS4NCisNCitXaGVuIENPTURBVCBvYmplY3RzIGFyZSBub3QgbWVyZ2Vk IGFjcm9zcyBzaGFyZWQgbGlicmFyaWVzLCB0aGlzIG1ha2VzIG5vDQorcHJv YmxlbXMsIGFzIGVhY2ggbGlicmFyeSB3aGljaCBuZWVkcyB0aGUgQ09NREFU IGhhcyBpdHMgb3duIGNvcHkuIEJ1dCB3aXRoDQorQ09NREFUIGR1cGxpY2F0 ZSByZW1vdmFsIGJldHdlZW4gc2hhcmVkIGxpYnJhcmllcyB0aGVyZSBjb3Vs ZCBzdWRkZW5seSBiZQ0KK3VucmVzb2x2ZWQgcmVmZXJlbmNlcyBhbmQgdGhl IHNoYXJlZCBsaWJyYXJpZXMgd291bGQgbmVlZCB0byBiZSByZWxpbmtlZC4g VGhlDQorb25seSBwbGFjZSB3aGVyZSB0aGlzIGNvdWxkIHdvcmsgc2FmZWx5 IGlzIHdoZW4gYSBzaW5nbGUgcGFja2FnZSBpbmNsdWRlcw0KK3NldmVyYWwg QysrIHNoYXJlZCBsaWJyYXJpZXMgd2hpY2ggZGVwZW5kIG9uIGVhY2ggb3Ro ZXIuIFRoZXkgYXJlIHRoZW4gc2hpcHBlZA0KK2Fsd2F5cyB0b2dldGhlciBh bmQgd2hlbiBvbmUgY2hhbmdlcywgYWxsIG90aGVycyBuZWVkIGNoYW5naW5n IHRvby4NCisNCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQor DQorOSBQcmVsaW5rIG9wdGltaXphdGlvbnMgdG8gcmVkdWNlIG51bWJlciBv ZiBjb25mbGljdCBmaXh1cHMNCisNCitQcmVsaW5rIGNhbiBvcHRpbWl6ZSBv dXQgc29tZSBjb25mbGljdCBmaXh1cHMgaWYgaXQgY2FuIHByb3ZlIHRoYXQg dGhlIGNoYW5nZXMNCithcmUgbm90IG9ic2VydmFibGUgYnkgdGhlIGFwcGxp Y2F0aW9uIGF0IHJ1bnRpbWUgKG9wZW5pbmcgaXRzIGV4ZWN1dGFibGUgYW5k DQorcmVhZGluZyBpdCBkb2VzbuKAmXQgY291bnQpLiBJZiB0aGVyZSBpcyBh IGRhdGEgb2JqZWN0IGluIHNvbWUgc2hhcmVkIGxpYnJhcnkNCit3aXRoIGEg c3ltYm9sIHRoYXQgaXMgb3ZlcnJpZGRlbiBieSBhIHN5bWJvbCBpbiBhIGRp ZmZlcmVudCBzaGFyZWQgbGlicmFyeQ0KK2VhcmxpZXIgaW4gZ2xvYmFsIHN5 bWJvbCBsb29rdXAgc2NvcGUgb3IgaW4gdGhlIGV4ZWN1dGFibGUsIHRoZW4g dGhhdCBkYXRhDQorb2JqZWN0IGlzIGxpa2VseSBuZXZlciByZWZlcmVuY2Vk IGFuZCBpdCBzaG91bGRu4oCZdCBtYXR0ZXIgd2hhdCBpdCBjb250YWlucy4N CitFeGFtaW5lIHRoZSBmb2xsb3dpbmcgZXhhbXBsZToNCisNCisgICQgY2F0 ID4gdGVzdDEuYyA8PEVPRg0KKyAgaW50IGksIGosIGs7DQorICBzdHJ1Y3Qg QSB7IGludCAqYTsgaW50ICpiOyBpbnQgKmM7IH0geCA9IHsgJmksICZqLCAm ayB9Ow0KKyAgc3RydWN0IEEgKnkgPSAmeDsNCisgIEVPRg0KKw0KKyAgJCBj YXQgPiB0ZXN0Mi5jIDw8RU9GDQorICBpbnQgaSwgaiwgazsNCisgIHN0cnVj dCBBIHsgaW50ICphOyBpbnQgKmI7IGludCAqYzsgfSB4ID0geyAmaSwgJmos ICZrIH07DQorICBzdHJ1Y3QgQSAqeiA9ICZ4Ow0KKyAgRU9GDQorDQorICAk IGNhdCA+IHRlc3QuYyA8PEVPRg0KKyAgI2luY2x1ZGUgPHN0ZGlvLmg+DQor ICBleHRlcm4gc3RydWN0IEEgeyBpbnQgKmE7IGludCAqYjsgaW50ICpjOyB9 ICp5LCAqejsNCisgIGludCBtYWluICh2b2lkKQ0KKyAgew0KKyAgICAgIHBy aW50ZiAo4oCdJXA6ICVwICVwICVwXG7igJ0sIHksIHktPmEsIHktPmIsIHkt PmMpOw0KKyAgICAgIHByaW50ZiAo4oCdJXA6ICVwICVwICVwXG7igJ0sIHos IHotPmEsIHotPmIsIHotPmMpOw0KKyAgfQ0KKyAgRU9GDQorDQorICAkIGdj YyAtbm9zdGRsaWIgLXNoYXJlZCAtZnBpYyAtcyAtbyB0ZXN0MS5zbyB0ZXN0 MS5jDQorICAkIGdjYyAtbm9zdGRsaWIgLXNoYXJlZCAtZnBpYyAtbyB0ZXN0 Mi5zbyB0ZXN0Mi5jIC4vdGVzdDEuc28NCisgICQgZ2NjIC1vIHRlc3QgdGVz dC5jIC4vdGVzdDIuc28gLi90ZXN0MS5zbw0KKw0KKyAgJCAuL3Rlc3QNCisg IDB4YWYzMzE0OiAweGFmMzNiMCAweGFmMzNhOCAweGFmMzNhYw0KKyAgMHhh ZjMzMTQ6IDB4YWYzM2IwIDB4YWYzM2E4IDB4YWYzM2FjDQorDQorQyBleGFt cGxlIHdoZXJlIGNvbmZsaWN0IGZpeHVwcyBjb3VsZCBiZSBvcHRpbWl6ZWQg b3V0DQorDQorSW4gdGhpcyBleGFtcGxlIHRoZXJlIGFyZSAzIGNvbmZsaWN0 IGZpeHVwcyBwb2ludGluZyBpbnRvIHRoZSAxMiBieXRlIGxvbmcgeA0KK29i amVjdCBpbiB0ZXN0MS5zbyBzaGFyZWQgbGlicmFyeSAoYW1vbmcgb3RoZXIg Y29uZmxpY3RzKS4gQW5kIG5vdGhpbmcgaW4gdGhlDQorcHJvZ3JhbSBjYW4g cG9rZSBhdCB4IGNvbnRlbnQgaW4gdGVzdDEuc28sIHNpbXBseSBiZWNhdXNl IGl0IGhhcyB0byBsb29rIGF0IGl0DQordGhyb3VnaCB4IHN5bWJvbCB3aGlj aCByZXNvbHZlcyB0byB0ZXN0Mi5zby4gU28gaW4gdGhpcyBjYXNlIHByZWxp bmsgY291bGQNCitza2lwIHRob3NlIDMgY29uZmxpY3RzLiBVbmZvcnR1bmF0 ZWx5IGl0IGlzIG5vdCB0aGF0IGVhc3k6DQorDQorICAkIGNhdCA+IHRlc3Qz LmMgPDxFT0YNCisgIGludCBpLCBqLCBrOw0KKyAgc3RhdGljIHN0cnVjdCBB IHsgaW50ICphOyBpbnQgKmI7IGludCAqYzsgfSBsb2NhbCA9IHsgJmksICZq LCAmayB9Ow0KKyAgZXh0ZXJuIHN0cnVjdCBBIHg7DQorICBzdHJ1Y3QgQSAq eSA9ICZ4Ow0KKyAgc3RydWN0IEEgKnkyID0gJmxvY2FsOw0KKyAgZXh0ZXJu IHN0cnVjdCBBIHggX19hdHRyaWJ1dGVfXygoYWxpYXMgKOKAnWxvY2Fs4oCd KSkpOw0KKyAgRU9GDQorDQorICAkIGNhdCA+IHRlc3Q0LmMgPDxFT0YNCisg ICNpbmNsdWRlIDxzdGRpby5oPg0KKyAgZXh0ZXJuIHN0cnVjdCBBIHsgaW50 ICphOyBpbnQgKmI7IGludCAqYzsgfSAqeSwgKnkyLCAqejsNCisgIGludCBt YWluICh2b2lkKQ0KKyAgew0KKyAgICAgIHByaW50ZiAo4oCdJXA6ICVwICVw ICVwXG7igJ0sIHksIHktPmEsIHktPmIsIHktPmMpOw0KKyAgICAgIHByaW50 ZiAo4oCdJXA6ICVwICVwICVwXG7igJ0sIHkyLCB5Mi0+YSwgeTItPmIsIHky LT5jKTsNCisgICAgICBwcmludGYgKOKAnSVwOiAlcCAlcCAlcFxu4oCdLCB6 LCB6LT5hLCB6LT5iLCB6LT5jKTsNCisgIH0NCisgIEVPRg0KKw0KKyAgJCBn Y2MgLW5vc3RkbGliIC1zaGFyZWQgLWZwaWMgLXMgLW8gdGVzdDMuc28gdGVz dDMuYw0KKyAgJCBnY2MgLW5vc3RkbGliIC1zaGFyZWQgLWZwaWMgLW8gdGVz dDQuc28gdGVzdDIuYyAuL3Rlc3QzLnNvDQorICAkIGdjYyAtbyB0ZXN0NCB0 ZXN0NC5jIC4vdGVzdDQuc28gLi90ZXN0My5zbw0KKw0KKyAgJCAuL3Rlc3Q0 DQorICAweDY1YTMxNDogMHg2NWEzYjAgMHg2NWEzYTggMHg2NWEzYWMNCisg IDB4YmQxMzI4OiAweDY1YTNiMCAweDY1YTNhOCAweDY1YTNhYw0KKyAgMHg2 NWEzMTQ6IDB4NjVhM2IwIDB4NjVhM2E4IDB4NjVhM2FjDQorDQorTW9kaWZp ZWQgQyBleGFtcGxlIHdoZXJlIGNvbmZsaWN0IGZpeHVwcyBjYW5ub3QgYmUg cmVtb3ZlZA0KKw0KK0luIHRoaXMgZXhhbXBsZSwgdGhlcmUgYXJlIGFnYWlu IDMgY29uZmxpY3QgZml4dXBzIHBvaW50aW5nIGludG8gdGhlIDEyIGJ5dGUN Citsb25nIHggb2JqZWN0IGluIHRlc3QzLnNvIHNoYXJlZCBsaWJyYXJ5Lg0K Kw0KK1RoZSBmYWN0IHRoYXQgdmFyaWFibGUgbG9jYWwgaXMgbG9jYXRlZCBh dCB0aGUgc2FtZSAxMiBieXRlcyBpcyB0b3RhbGx5DQoraW52aXNpYmxlIHRv IHByZWxpbmssIGFzIGxvY2FsIGlzIGEgU1RCX0xPQ0FMIHN5bWJvbCB3aGlj aCBkb2VzbuKAmXQgc2hvdyB1cCBpbg0KKy5keW5zeW0gc2VjdGlvbi4NCisN CitCdXQgaWYgdGhvc2UgMyBjb25mbGljdCBmaXh1cHMgYXJlIHJlbW92ZWQs IHRoZW4gc3VkZGVubHkgcHJvZ3JhbeKAmXMgb2JzZXJ2YWJsZQ0KK2JlaGF2 aW9yIGNoYW5nZXMgKHRoZSBsYXN0IDMgYWRkcmVzc2VzIG9uIHNlY29uZCBs aW5lIHdvdWxkIGJlIGRpZmZlcmVudCB0aGFuDQordGhvc2Ugb24gZmlyc3Qg b3IgdGhpcmQgbGluZSkuDQorDQorRm9ydHVuYXRlbHksIHRoZXJlIGFyZSBh dCBsZWFzdCBzb21lIG9iamVjdHMgd2hlcmUgcHJlbGluayBjYW4gYmUgcmVh c29uYWJseQ0KK3N1cmUgdGhleSB3aWxsIG5ldmVyIGJlIHJlZmVyZW5jZWQg dGhyb3VnaCBzb21lIGxvY2FsIGFsaWFzLiBUaG9zZSBhcmUgdmFyaW91cw0K K2NvbXBpbGVyIGdlbmVyYXRlZCBvYmplY3RzIHdpdGggd2VsbCBkZWZpbmVk IG1lYW5pbmcgd2hpY2ggaXMgcHJlbGluayBhYmxlIHRvDQoraWRlbnRpZnkg aW4gc2hhcmVkIGxpYnJhcmllcy4NCisNCitUaGUgbW9zdCBpbXBvcnRhbnQg b25lcyBhcmUgQysrIHZpcnR1YWwgdGFibGVzIGFuZCBSVFRJIGRhdGEuIFRo ZXkgYXJlIGVtaXR0ZWQNCithcyBDT01EQVQgZGF0YSBieSB0aGUgY29tcGls ZXIsIGluIEdDQyBpbnRvIC5nbnUubGlua29uY2UuZC4qIHNlY3Rpb25zLg0K Kw0KK0RhdGEgb3IgY29kZSBpbiB0aGVzZSBzZWN0aW9ucyBjYW4gYmUgYWNj ZXNzZWQgb25seSB0aHJvdWdoIGdsb2JhbCBzeW1ib2xzLA0KK290aGVyd2lz ZSBsaW5rZXIgbWlnaHQgY3JlYXRlIHVuZXhwZWN0ZWQgcmVzdWx0cyB3aGVu IHR3byBvciBtb3JlIG9mIHRoZXNlDQorc2VjdGlvbnMgYXJlIG1lcmdlZCB0 b2dldGhlciAoYWxsIGJ1dCBvbmUgZGVsZXRlZCkuDQorDQorV2hlbiBwcmVs aW5rIGlzIGNoZWNraW5nIGZvciBzdWNoIGRhdGEsIGl0IGZpcnN0IGNoZWNr cyB3aGV0aGVyIHRoZSBzaGFyZWQNCitsaWJyYXJ5IGluIHF1ZXN0aW9uIGlz IGxpbmtlZCBhZ2FpbnN0IGxpYnN0ZGMrKy5zby4gSWYgbm90LCBpdCBpcyBu b3QgYSBDKysNCitsaWJyYXJ5IChvciBpbmNvcnJlY3RseSBidWlsdCBvbmUp IGFuZCB0aHVzIGl0IG1ha2VzIG5vIHNlbnNlIHRvIHNlYXJjaCBhbnkNCitm dXJ0aGVyLiBJdCBsb29rcyBvbmx5IGluIC5kYXRhIHNlY3Rpb24sIGZvciBT VEJfV0VBSyBTVFRfT0JKRUNUIHN5bWJvbHMgd2hvc2UNCituYW1lcyBzdGFy dCB3aXRoIGNlcnRhaW4gcHJlZml4ZXMgYW5kIHdoZXJlIG5vIG90aGVyIHN5 bWJvbHMgKGluIGR5bmFtaWMNCitzeW1ib2wgdGFibGUpIHBvaW50IGludG8g dGhlIG9iamVjdHMuDQorDQorWyBfX3Z0XyBmb3IgR0NDIDIuOTUueCBhbmQg Mi45Ni1SSCB2aXJ0dWFsIHRhYmxlcywgX1pUViBmb3IgR0NDIDMueCB2aXJ0 dWFsDQorICB0YWJsZXMgYW5kIF9aVEkgZm9yIEdDQyAzLnggUlRUSSBkYXRh LiBdDQorDQorSWYgdGhlc2Ugb2JqZWN0cyBhcmUgdW51c2VkIGJlY2F1c2Ug dGhlcmUgaXMgYSBjb25mbGljdCBvbiB0aGVpciBzeW1ib2wsIGFsbA0KK2Nv bmZsaWN0IGZpeHVwcyBwb2ludGluZyBpbnRvIHRoZSB2aXJ0dWFsIHRhYmxl IG9yIFJUVEkgc3RydWN0dXJlIGNhbiBiZQ0KK2Rpc2NhcmRlZC4NCisNCitB bm90aGVyIHBvc3NpYmxlIG9wdGltaXphdGlvbiBpcyBhZ2FpbiByZWxhdGVk IHRvIEMrKyB2aXJ0dWFsIHRhYmxlcy4NCisNCitGdW5jdGlvbiBhZGRyZXNz ZXMgaW4gdGhlbSBhcmUgbm90IGludGVuZGVkIGZvciBwb2ludGVyIGNvbXBh cmlzb25zLiBDKysgY29kZQ0KK29ubHkgbG9hZHMgdGhlbSBmcm9tIHRoZSB2 aXJ0dWFsIHRhYmxlcyBhbmQgY2FsbHMgdGhyb3VnaCB0aGUgcG9pbnRlci4N CisNCitQb2ludGVycyB0byBtZW1iZXIgZnVuY3Rpb25zIGFyZSBoYW5kbGVk IGRpZmZlcmVudGx5LiBBcyBwb2ludGVyIGVxdWl2YWxlbmNlDQoraXMgdGhl IG9ubHkgcmVhc29uIHdoeSBhbGwgZnVuY3Rpb24gcG9pbnRlcnMgcmVzb2x2 ZSB0byBQTFQgc2xvdHMgaW4gdGhlDQorZXhlY3V0YWJsZSBldmVuIHdoZW4g dGhlIGV4ZWN1dGFibGUgZG9lc27igJl0IGluY2x1ZGUgaW1wbGVtZW50YXRp b24gb2YgdGhlDQorZnVuY3Rpb24gKGkuZS4gaGFzIFNITl9VTkRFRiBzeW1i b2wgd2l0aCBub24temVybyBzdF92YWx1ZSBwb2ludGluZyBhdCB0aGUgUExU DQorc2xvdCBpbiB0aGUgZXhlY3V0YWJsZSksIHByZWxpbmsgY2FuIHJlc29s dmUgbWV0aG9kIGFkZHJlc3NlcyBpbiB2aXJ0dWFsDQordGFibGVzIHRvIHRo ZSBhY3R1YWwgbWV0aG9kIGltcGxlbWVudGF0aW9uLg0KKw0KK0luIG1hbnkg Y2FzZXMgdGhpcyBpcyBpbiB0aGUgc2FtZSBsaWJyYXJ5IGFzIHRoZSB2aXJ0 dWFsIHRhYmxlIChvciBpbiBvbmUgb2YNCitsaWJyYXJpZXMgaW4gaXRzIG5h dHVyYWwgc3ltYm9sIGxvb2t1cCBzY29wZSksIHNvIGEgY29uZmxpY3QgZml4 dXAgaXMNCit1bm5lY2Vzc2FyeS4gVGhpcyBvcHRpbWl6YXRpb24gc3BlZWRz IHVwIHByb2dyYW1zIGFsc28gYWZ0ZXIgY29udHJvbCBpcw0KK3RyYW5zZmVy ZWQgdG8gdGhlIGFwcGxpY2F0aW9uIGFuZCBub3QganVzdCB0aGUgdGltZSB0 byBzdGFydCB1cCB0aGUNCithcHBsaWNhdGlvbiwgYWx0aG91Z2gganVzdCBh IGZldyBjeWNsZXMgcGVyIG1ldGhvZCBjYWxsLiBUaGUgY29uZmxpY3QgZml4 dXANCityZWR1Y3Rpb24gaXMgcXVpdGUgYmlnIG9uIHNvbWUgcHJvZ3JhbXMu DQorDQorQmVsb3cgaXMgc3RhdGlzdGljcyBmb3Iga21haWwgcHJvZ3JhbSBv biBjb21wbGV0ZWx5IHVucHJlbGlua2VkIGJveDoNCisNCisgICQgTERfREVC VUc9c3RhdGlzdGljcyAvdXNyL2Jpbi9rbWFpbCAyPiYxIHwgc2VkIOKAmTIs OCFkO3MvXiAqLy/igJkNCisNCisgIHRvdGFsIHN0YXJ0dXAgdGltZSBpbiBk eW5hbWljIGxvYWRlcjogMjQwNzI0ODY3IGNsb2NrIGN5Y2xlcw0KKyAgICAg ICAgICAgIHRpbWUgbmVlZGVkIGZvciByZWxvY2F0aW9uOiAyMzQwNDk2MzYg Y2xvY2sgY3ljbGVzICg5Ny4yJSkNCisgICAgICAgICAgICAgICAgIG51bWJl ciBvZiByZWxvY2F0aW9uczogMzQ4NTQNCisgICAgICBudW1iZXIgb2YgcmVs b2NhdGlvbnMgZnJvbSBjYWNoZTogNzQzNjQNCisgICAgICAgIG51bWJlciBv ZiByZWxhdGl2ZSByZWxvY2F0aW9uczogMzUzNTENCisgICAgICAgICAgIHRp bWUgbmVlZGVkIHRvIGxvYWQgb2JqZWN0czogNjI0MTY3OCBjbG9jayBjeWNs ZXMgKDIuNSUpDQorDQorICAkIGxzIC1sIC91c3IvYmluL2ttYWlsDQorICAt cnd4ci14ci14IDEgcm9vdCByb290IDIxNDkwODQgT2N0IDIgMTI6MDUgL3Vz ci9iaW4va21haWwNCisNCisgICQgKCBYdmZiIDozICYgKSA+L2Rldi9udWxs IDI+JjEgPC9kZXYvbnVsbDsgc2xlZXAgMjANCisgICQgKCBESVNQTEFZPToz IGttYWlsJiApID4vZGV2L251bGwgMj4mMSA8L2Rldi9udWxsOyBzbGVlcCAx MDsga2lsbGFsbCBrbWFpbA0KKyAgJCAoIERJU1BMQVk9OjMga21haWwmICkg Pi9kZXYvbnVsbCAyPiYxIDwvZGV2L251bGw7IHNsZWVwIDEwDQorDQorICAk IGNhdCAvcHJvYy/igJgvc2Jpbi9waWRvZiBrbWFpbOKAmC9zdGF0bQ0KKyAg NDE2NCA0MTY0IDM1MDkgMjI0IDMzIDM5MDcgNjU1DQorDQorICAkIGtpbGxh bGwgWHZmYiBrZGVpbml0IGttYWlsDQorDQorU3RhdGlzdGljcyBmb3IgdW5w cmVsaW5rZWQga21haWwNCisNCitzdGF0bSBzcGVjaWFsIGZpbGUgZm9yIGEg cHJvY2VzcyBjb250YWlucyBpdHMgbWVtb3J5IHN0YXRpc3RpY3MuIFRoZSBu dW1iZXJzDQoraW4gaXQgbWVhbiBpbiBvcmRlciB0b3RhbCBudW1iZXIgb2Yg dXNlZCBwYWdlcyAob24gSUEtMzIgTGludXggYSBwYWdlIGlzIDRLQiksDQor bnVtYmVyIG9mIHJlc2lkZW50IHBhZ2VzIChpLmUuIG5vdCBzd2FwcGVkIG91 dCksIG51bWJlciBvZiBzaGFyZWQgcGFnZXMsDQorbnVtYmVyIG9mIHRleHQg cGFnZXMsIG51bWJlciBvZiBsaWJyYXJ5IHBhZ2VzLCBudW1iZXIgb2Ygc3Rh Y2sgYW5kIG90aGVyIHBhZ2VzDQorYW5kIG51bWJlciBvZiBkaXJ0eSBwYWdl cyB1c2VkIGJ5IHRoZSBwcm9jZXNzLiBEaXN0aW5jdGlvbiBiZXR3ZWVuIHRl eHQgYW5kDQorbGlicmFyeSBwYWdlcyBpcyB2ZXJ5IHJvdWdoLCBzbyB0aG9z ZSBudW1iZXJzIGFyZW7igJl0IHRoYXQgbXVjaCB1c2VmdWwuIE9mDQoraW50 ZXJlc3QgYXJlIG1haW5seSBmaXJzdCBudW1iZXIsIHRoaXJkIG51bWJlciBh bmQgbGFzdCBudW1iZXIuDQorDQorU3RhdGlzdGljcyBmb3Iga21haWwgb24g Y29tcGxldGVseSBwcmVsaW5rZWQgYm94Og0KKw0KKyAgJCBMRF9ERUJVRz1z dGF0aXN0aWNzIC91c3IvYmluL2ttYWlsIDI+JjEgfCBzZWQg4oCZMiw4IWQ7 cy9eICovL+KAmQ0KKyAgdG90YWwgc3RhcnR1cCB0aW1lIGluIGR5bmFtaWMg bG9hZGVyOiA4NDA5NTA0IGNsb2NrIGN5Y2xlcw0KKyAgICAgICAgICAgIHRp bWUgbmVlZGVkIGZvciByZWxvY2F0aW9uOiAzMDI0NzIwIGNsb2NrIGN5Y2xl cyAoMzUuOSUpDQorICAgICAgICAgICAgICAgICBudW1iZXIgb2YgcmVsb2Nh dGlvbnM6IDANCisgICAgICBudW1iZXIgb2YgcmVsb2NhdGlvbnMgZnJvbSBj YWNoZTogODk2MQ0KKyAgICAgICAgbnVtYmVyIG9mIHJlbGF0aXZlIHJlbG9j YXRpb25zOiAwDQorICAgICAgICAgICB0aW1lIG5lZWRlZCB0byBsb2FkIG9i amVjdHM6IDQ4OTczMzYgY2xvY2sgY3ljbGVzICg1OC4yJSkNCisNCisgICQg bHMgLWwgL3Vzci9iaW4va21haWwNCisgIC1yd3hyLXhyLXggMSByb290IHJv b3QgMjI2OTUwMCBPY3QgMiAxMjowNSAvdXNyL2Jpbi9rbWFpbA0KKw0KKyAg JCAoIFh2ZmIgOjMgJiApID4vZGV2L251bGwgMj4mMSA8L2Rldi9udWxsOyBz bGVlcCAyMA0KKyAgJCAoIERJU1BMQVk9OjMga21haWwmICkgPi9kZXYvbnVs bCAyPiYxIDwvZGV2L251bGw7IHNsZWVwIDEwOyBraWxsYWxsIGttYWlsDQor ICAkICggRElTUExBWT06MyBrbWFpbCYgKSA+L2Rldi9udWxsIDI+JjEgPC9k ZXYvbnVsbDsgc2xlZXAgMTANCisNCisgICQgY2F0IC9wcm9jL+KAmC9zYmlu L3BpZG9mIGttYWls4oCYL3N0YXRtDQorICAzODAzIDM4MDMgMzE4NiAyNDkg MzMgMzUyMSA2MTcNCisNCisgICQga2lsbGFsbCBYdmZiIGtkZWluaXQga21h aWwNCisNCitTdGF0aXN0aWNzIGZvciBwcmVsaW5rZWQga21haWwNCisNCitT dGF0aXN0aWNzIGZvciBrbWFpbCBvbiBjb21wbGV0ZWx5IHByZWxpbmtlZCBi b3ggd2l0aCBDKysgY29uZmxpY3QgZml4dXANCitvcHRpbWl6YXRpb25zIHR1 cm5lZCBvZmY6DQorDQorICAkIExEX0RFQlVHPXN0YXRpc3RpY3MgL3Vzci9i aW4va21haWwgMj4mMSB8IHNlZCDigJkyLDghZDtzL14gKi8v4oCZDQorICB0 b3RhbCBzdGFydHVwIHRpbWUgaW4gZHluYW1pYyBsb2FkZXI6IDk3MDQxNjgg Y2xvY2sgY3ljbGVzDQorICAgICAgICAgICAgdGltZSBuZWVkZWQgZm9yIHJl bG9jYXRpb246IDQ3MzQ3MTUgY2xvY2sgY3ljbGVzICg0OC43JSkNCisgICAg ICAgICAgICAgICAgIG51bWJlciBvZiByZWxvY2F0aW9uczogMA0KKyAgICAg IG51bWJlciBvZiByZWxvY2F0aW9ucyBmcm9tIGNhY2hlOiA1OTg3MQ0KKyAg ICAgICAgbnVtYmVyIG9mIHJlbGF0aXZlIHJlbG9jYXRpb25zOiAwDQorICAg ICAgICAgICB0aW1lIG5lZWRlZCB0byBsb2FkIG9iamVjdHM6IDQ0ODc5NzEg Y2xvY2sgY3ljbGVzICg0Ni4yJSkNCisNCisgICQgbHMgLWwgL3Vzci9iaW4v a21haWwNCisgIC1yd3hyLXhyLXggMSByb290IHJvb3QgMjg3NzM2MCBPY3Qg MiAxMjowNSAvdXNyL2Jpbi9rbWFpbA0KKw0KKyAgJCAoIFh2ZmIgOjMgJiAp ID4vZGV2L251bGwgMj4mMSA8L2Rldi9udWxsOyBzbGVlcCAyMA0KKyAgJCAo IERJU1BMQVk9OjMga21haWwmICkgPi9kZXYvbnVsbCAyPiYxIDwvZGV2L251 bGw7IHNsZWVwIDEwOyBraWxsYWxsIGttYWlsDQorICAkICggRElTUExBWT06 MyBrbWFpbCYgKSA+L2Rldi9udWxsIDI+JjEgPC9kZXYvbnVsbDsgc2xlZXAg MTANCisNCisgICQgY2F0IC9wcm9jL+KAmC9zYmluL3BpZG9mIGttYWls4oCY L3N0YXRtDQorICAzOTU3IDM5NTcgMzMyOSAzOTggMzMgMzUyNiA2MjgNCisN CisgICQga2lsbGFsbCBYdmZiIGtkZWluaXQga21haWwNCisNCitTdGF0aXN0 aWNzIGZvciBwcmVsaW5rZWQga21haWwgd2l0aG91dCBjb25mbGljdCBmaXh1 cCByZWR1Y3Rpb24NCisNCitPbiB0aGlzIGFwcGxpY2F0aW9uLCBDKysgY29u ZmxpY3QgZml4dXAgb3B0aW1pemF0aW9ucyBzYXZlZCA1MDkxMCB1bm5lZWRl ZA0KK2NvbmZsaWN0IGZpeHVwcywgc3BlZWRlZCB1cCBzdGFydHVwIGJ5IDEz LjMlIGFuZCBkZWNyZWFzZWQgbnVtYmVyIG9mIGRpcnR5DQorcGFnZXMgYnkg MTEsIHdoaWNoIG1lYW5zIHRoZSBhcHBsaWNhdGlvbiBuZWVkcyA0NEtCIGxl c3MgbWVtb3J5IHBlci1wcm9jZXNzLg0KKw0KKz09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT0NCisNCisxMCBUaHJlYWQgTG9jYWwgU3RvcmFnZSBz dXBwb3J0DQorDQorDQorVGhyZWFkIExvY2FsIFN0b3JhZ2Ugc3VwcG9ydCAo WzEyXSwgWzEzXSwgWzE0XSkgaGFzIGJlZW4gcmVjZW50bHkNCithZGRlZCB0 byBHQ0MsDQorDQorR05VIGJpbnV0aWxzIGFuZCBHTlUgQyBMaWJyYXJ5Lg0K Kw0KK1RMUyBzdXBwb3J0IGlzIGEgc2V0IG9mIG5ldyByZWxvY2F0aW9ucyB3 aGljaCB0b2dldGhlciB3aXRoIGR5bmFtaWMgbGlua2VyIGFuZA0KK1BPU0lY IHRocmVhZCBsaWJyYXJ5IGFkZGl0aW9ucyBwcm92aWRlIGZhc3RlciBhbmQg ZWFzaWVyIHRvIHVzZSBhbHRlcm5hdGl2ZSB0bw0KK3RyYWRpdGlvbmFsIFBP U0lYIHRocmVhZCBsb2NhbCBkYXRhIEFQSSAocHRocmVhZF9nZXRzcGVjaWZp YywNCitwdGhyZWFkX3NldHNwZWNpZmljLCBwdGhyZWFkX2tleV8qKS4NCisN CitUTFMgbmVjZXNzaXRhdGVkIHNldmVyYWwgY2hhbmdlcyB0byBwcmVsaW5r LiBUaHJlYWQgTG9jYWwgc3ltYm9scyAod2l0aCB0eXBlDQorU1RUX1RMUykg bXVzdCBub3QgYmUgcmVsb2NhdGVkLCBhcyB0aGV5IGFyZSByZWxhdGl2ZSB0 byB0aGUgc3RhcnQgb2YgUFRfVExTDQorc2VnbWVudCBhbmQgdGh1cyBub3Qg dmlydHVhbCBhZGRyZXNzZXMuDQorDQorVGhlIGR5bmFtaWMgbGlua2VyIGhh ZCB0byBiZSBlbmhhbmNlZCBzbyB0aGF0IGl0IHRlbGxzIHByZWxpbmsgYXQN CitMRF9UUkFDRV9QUkVMSU5LSU5HIHRpbWUgd2hhdCBUTFMgbW9kdWxlIElE cyBoYXZlIGJlZW4gYXNzaWduZWQgYW5kIHdoYXQNCithZGRyZXNzZXMgcmVs YXRpdmUgdG8gc3RhcnQgb2YgVExTIGJsb2NrIGhhdmUgYmVlbiBnaXZlbiB0 byBQVF9UTFMgc2VnbWVudCBvZg0KK2VhY2ggbGlicmFyeSBvciBleGVjdXRh YmxlLg0KKw0KK1RoZXJlIGFyZSAzIGNsYXNzZXMgb2YgbmV3IFRMUyBkeW5h bWljIHJlbG9jYXRpb25zIHByZWxpbmsgaXMgaW50ZXJlc3RlZCBpbg0KKyh3 aXRoIGRpZmZlcmVudCBuYW1lcyBvbiBkaWZmZXJlbnQgYXJjaGl0ZWN0dXJl cykuDQorDQorSW4gZmlyc3QgY2xhc3MgYXJlIG1vZHVsZSBJRCByZWxvY2F0 aW9ucywgd2hpY2ggYXJlIHVzZWQgZm9yIFRMUyBHbG9iYWwNCitEeW5hbWlj IGFuZCBMb2NhbCBEeW5hbWljIG1vZGVscyAoZm9yIEdsb2JhbCBEeW5hbWlj IG1vZGVsIHRoZXkgYXJlIHN1cHBvc2VkDQordG8gcmVzb2x2ZSB0byBtb2R1 bGUgSUQgb2YgdGhlIGV4ZWN1dGFibGUgb3Igc2hhcmVkIGxpYnJhcnkgb2Yg cGFydGljdWxhcg0KK1NUVF9UTFMgc3ltYm9sLCBmb3IgTG9jYWwgRHluYW1p YyBtb2RlbCB0aGlzIHJlc29sdmVzIHRvIG1vZHVsZSBJRCBvZiB0aGUNCitj b250YWluaW5nIHNoYXJlZCBsaWJyYXJ5KS4gVGhlc2UgcmVsb2NhdGlvbnMg YXJlIGhhcmQgdG8gcHJlbGluayBpbiBhbnkNCit1c2VmdWwgd2F5IHdpdGhv dXQgbW92aW5nIFRMUyBtb2R1bGUgSUQgYXNzaWdubWVudCBmcm9tIHRoZSBk eW5hbWljIGxpbmtlciB0bw0KK3ByZWxpbmsuDQorDQorQWx0aG91Z2ggcHJl bGluayBjYW4gZmluZCBvdXQgd2hhdCBzaGFyZWQgbGlicmFyeSB3aWxsIGNv bnRhaW4gcGFydGljdWxhcg0KK1NUVF9UTFMgc3ltYm9sIHVubGVzcyB0aGVy ZSB3aWxsIGJlIGNvbmZsaWN0cyBmb3IgdGhhdCBzeW1ib2wsIGl0IGRvZXNu 4oCZdCBrbm93DQoraG93IG1hbnkgc2hhcmVkIGxpYnJhcmllcyB3aXRoIFBU X1RMUyBzZWdtZW50IHdpbGwgcHJlY2VkZSBpdCBvciB3aGV0aGVyDQorZXhl Y3V0YWJsZSB3aWxsIG9yIHdpbGwgbm90IGhhdmUgUFRfVExTIHNlZ21lbnQu IFVudGlsIFRMUyBpcyB3aWRlbHkgZGVwbG95ZWQNCitieSBtYW55IGxpYnJh cmllcywgcHJlbGluayBjb3VsZCBndWVzcyB0aGF0IG9ubHkgbGliYy5zbyB3 aWxsIGhhdmUgUFRfVExTIGFuZA0KK3N0b3JlIDEgKGZpcnN0IG1vZHVsZSBJ RCB0aGUgZHluYW1pYyBsaW5rZXIgYXNzaWducyksIGJ1dCBnaXZlbiB0aGF0 IGxpYmMuc28NCit1c2VzIGp1c3Qgb25lIHN1Y2ggcmVsb2NhdGlvbiBpdCBp cyBub3QgcHJvYmFibHkgd29ydGggZG9pbmcgdGhpcyB3aGVuIHNvb24NCitv dGhlciBzaGFyZWQgbGlicmFyaWVzIGJlc2lkZXMgbGliYy5zbyBhbmQgbGli R0wuc28gc3RhcnQgdXNpbmcgaXQgaGVhdmlseS4NCitCZWNhdXNlIG9mIHRo aXMgcHJlbGluayBkb2VzbuKAmXQgZG8gYW55dGhpbmcgc3BlY2lhbCB3aGVu IHByZWxpbmtpbmcgc2hhcmVkDQorbGlicmFyaWVzIHdpdGggdGhlc2UgcmVs b2NhdGlvbnMgYW5kIGZvciBlYWNoIHJlbG9jYXRpb25zIGluIHRoaXMgY2xh c3MNCitjcmVhdGVzIG9uZSBjb25mbGljdCBmaXh1cC4NCisNCitJbiBzZWNv bmQgY2xhc3MgYXJlIHJlbG9jYXRpb25zIHdoaWNoIHJlc29sdmUgdG8gc3Rf dmFsdWUgb2Ygc29tZSBTVFRfVExTDQorc3ltYm9sLiBUaGVzZSByZWxvY2F0 aW9ucyBhcmUgdXNlZCBpbiBHbG9iYWwgRHluYW1pYyBUTFMgbW9kZWwgKGlu IExvY2FsDQorRHluYW1pYyB0aGV5IGFyZSByZXNvbHZlZCBhdCBsaW5rIHRp bWUgYWxyZWFkeSkgYW5kIGZyb20gcHJlbGluayBwb2ludCBvZiB2aWV3DQor dGhleSBhcmUgbXVjaCBtb3JlIHNpbWlsYXIgdG8gbm9ybWFsIHJlbG9jYXRp b25zIHRoYW4gdGhlIG90aGVyIHR3byBjbGFzc2VzLg0KK1doZW4gdGhlIFNU VF9UTFMgc3ltYm9sIGlzIGxvb2tlZCB1cCBzdWNjZXNzZnVsbHkgaW4gc2hh cmVkIGxpYnJhcnnigJlzIG5hdHVyYWwNCitzZWFyY2ggc2NvcGUsIHByZWxp bmsganVzdCBzdG9yZXMgaXRzIHN0X3ZhbHVlIGludG8gdGhlIHJlbG9jYXRp b24uIFRoZQ0KK2NoYW5jZXMgdGhlcmUgd2lsbCBiZSBhIGNvbmZsaWN0IGFy ZSBldmVuIHNtYWxsZXIgdGhhbiB3aXRoIG5vcm1hbCBzeW1ib2wNCitsb29r dXBzLCBzaW5jZSBvdmVybG9hZGluZyBUTFMgc3ltYm9scyBtZWFucyB3YXN0 ZWQgbWVtb3J5IGluIGVhY2ggc2luZ2xlDQordGhyZWFkIGFuZCB0aHVzIGxp YnJhcnkgd3JpdGVycyB3aWxsIHRyeSB0byBhdm9pZCBpdCBpZiBwb3NzaWJs ZS4NCisNCisNCitUaGUgdGhpcmQgY2xhc3MgaW5jbHVkZXMgcmVsb2NhdGlv bnMgd2hpY2ggcmVzb2x2ZSB0byBvZmZzZXRzIHdpdGhpbiBwcm9ncmFt4oCZ cw0KK2luaXRpYWwgVExTIGJsb2NrLg0KKw0KK1sgTmVnYXRpdmUgb24gYXJj aGl0ZWN0dXJlcyB3aGljaCBoYXZlIFRMUyBibG9jayBpbW1lZGlhdGVseSBi ZWxvdyB0aHJlYWQNCisgIHBvaW50ZXIgKGUuZy4gSUEtMzIsIEFNRDY0LCBT UEFSQywgUy8zOTApIGFuZCBwb3NpdGl2ZSBvbiBhcmNoaXRlY3R1cmVzDQor ICB3aGljaCBoYXZlIFRMUyBibG9jayBhdCB0aHJlYWQgcG9pbnRlciBvciBh IGZldyBieXRlcyBhYm92ZSBpdCAoZS5nLg0KKyAgUG93ZXJQQywgQWxwaGEs IElBLTY0LCBTdXBlckgpLiBdDQorDQorUmVsb2NhdGlvbiBpbiB0aGlzIGNs YXNzIGFyZSB1c2VkIGluIEluaXRpYWwgRXhlYyBUTFMgbW9kZWwgKG9yIGlu IExvY2FsIEV4ZWMNCittb2RlbCBpZiB0aGlzIG1vZGVsIGlzIHN1cHBvcnRl ZCBpbiBzaGFyZWQgbGlicmFyaWVzKS4gVGhlc2Ugb2Zmc2V0cyBhcmUgZXZl bg0KK2hhcmRlciB0byBwcmVkaWN0IHRoYW4gbW9kdWxlIElEcyBhbmQgdW5s aWtlIG1vZHVsZSBJRHMgaXQgd291bGRu4oCZdCBiZSB2ZXJ5DQoraGVscGZ1 bCBpZiB0aGV5IHdlcmUgYXNzaWduZWQgYnkgcHJlbGluayBpbnN0ZWFkIG9m IGR5bmFtaWMgbGlua2VyICh3aGljaA0KK3dvdWxkIGp1c3QgcmVhZCB0aGVt IGZyb20gc29tZSBkeW5hbWljIHRhZykuIFRoYXTigJlzIGJlY2F1c2UgVExT IGJsb2NrIG5lZWRzIHRvDQorYmUgcGFja2VkIHRpZ2h0bHkgYW5kIGFueSBh c3NpZ25tZW50cyBpbiBwcmVsaW5rIGNvdWxkbuKAmXQgdGFrZSBpbnRvIGFj Y291bnQNCitvdGhlciBzaGFyZWQgbGlicmFyaWVzIGxpbmtlZCBpbnRvIHRo ZSBzYW1lIGV4ZWN1dGFibGUgYW5kIHRoZSBleGVjdXRhYmxlDQoraXRzZWxm LiBTaW1pbGFybHkgdG8gbW9kdWxlIElEIHJlbG9jYXRpb25zLCBwcmVsaW5r IGRvZXNu4oCZdCBkbyBhbnl0aGluZyBhYm91dA0KK3RoZW0gd2hlbiBwcmVs aW5raW5nIHNoYXJlZCBsaWJyYXJpZXMgYW5kIGZvciBlYWNoIHN1Y2ggcmVs b2NhdGlvbiBjcmVhdGVzIGENCitjb25mbGljdCBmaXh1cC4NCisNCis9PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09DQorDQorMTEgUHJlbGlua2lu ZyBvZiBleGVjdXRhYmxlcyBhbmQgc2hhcmVkIGxpYnJhcmllcw0KKw0KK1Jl d3JpdGluZyBvZiBleGVjdXRhYmxlcyBpcyBoYXJkZXIgdGhhbiBmb3Igc2hh cmVkIGxpYnJhcmllcywgYm90aCBiZWNhdXNlDQordGhlcmUgYXJlIG1vcmUg Y2hhbmdlcyBuZWNlc3NhcnkgYW5kIGJlY2F1c2Ugc2hhcmVkIGxpYnJhcmll cyBhcmUgcmVsb2NhdGFibGUNCithbmQgdGh1cyBoYXZlIGR5bmFtaWMgcmVs b2NhdGlvbnMgZm9yIGFsbCBhYnNvbHV0ZSBhZGRyZXNzZXMuIEFmdGVyIGNv bGxlY3RpbmcNCithbGwgaW5mb3JtYXRpb24gZnJvbSB0aGUgZHluYW1pYyBs aW5rZXIgYW5kIGFzc2lnbmluZyB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2UNCitz bG90cyB0byBhbGwgc2hhcmVkIGxpYnJhcmllcywgcHJlbGlua2luZyBvZiBz aGFyZWQgbGlicmFyaWVzIGludm9sdmVzDQorZm9sbG93aW5nIHN0ZXBzOg0K Kw0KK+KAoiBSZWxvY2F0aW9uIG9mIHRoZSBzaGFyZWQgbGlicmFyeSB0byB0 aGUgYXNzaWduZWQgYmFzZSBhZGRyZXNzLg0KKw0KK+KAoiBSRUwgdG8gUkVM QSBjb252ZXJzaW9uIGlmIG5lZWRlZCAodGhlIG9ubHkgc3RlcCB3aGljaCBj aGFuZ2VzIHNpemVzIG9mDQorICBhbGxvY2F0ZWQgc2VjdGlvbnMgaW4gdGhl IG1pZGRsZSkuDQorDQor4oCiIE9uIGFyY2hpdGVjdHVyZXMgd2hpY2ggaGF2 ZSBTSFRfTk9CSVRTIC5wbHQgc2VjdGlvbnMsIGJlZm9yZSByZWxvY2F0aW9u cyBhcmUNCisgIGFwcGxpZWQgdGhlIHNlY3Rpb24gbmVlZHMgdG8gYmUgY29u dmVydGVkIHRvIFNIVF9QUk9HQklUUy4gQXMgdGhlIHNlY3Rpb24NCisgIG5l ZWRzIHRvIGJlIGF0IHRoZSBlbmQgKG9yIGFmdGVyIGl0KSBvZiBmaWxlIGJh Y2tlZCBwYXJ0IG9mIHNvbWUgUFRfTE9BRA0KKyAgc2VnbWVudCwgdGhpcyBq dXN0IG1lYW5zIHRoYXQgdGhlIGZpbGUgYmFja2VkIHVwIHBhcnQgbmVlZHMg dG8gYmUgZW5sYXJnZWQsDQorICB0aGUgZmlsZSBmaWxsZWQgd2l0aCB6ZXJv cyBhbmQgYWxsIGZvbGxvd2luZyBzZWN0aW9uIGZpbGUgb2Zmc2V0cyBvciBw cm9ncmFtDQorICBoZWFkZXIgZW50cnkgZmlsZSBvZmZzZXRzIGFkanVzdGVk Lg0KKw0KKyAgQWxsIFNIVF9OT0JJVFMgc2VjdGlvbnMgaW4gdGhlIHNhbWUg UFRfTE9BRCBzZWdtZW50IHdpdGggdmlydHVhbCBhZGRyZXNzZXMNCisgIGxv d2VyIHRoYW4gdGhlIC5wbHQgc3RhcnQgYWRkcmVzcyBuZWVkIHRvIGJlIGNv bnZlcnRlZCBmcm9tIFNIVF9OT0JJVFMgdG8NCisgIFNIVF9QUk9HQklUUyB0 b28uIFdpdGhvdXQgbWFraW5nIHRoZSBzZWN0aW9uIFNIVF9QUk9HQklUUywg cHJlbGluayBjYW5ub3QNCisgIGFwcGx5IHJlbG9jYXRpb25zIGFnYWluc3Qg aXQgYXMgc3VjaCBzZWN0aW9ucyBjb250YWluIG9ubHkgemVyb3MuDQorICBB cmNoaXRlY3R1cmVzIHdpdGggU0hUX05PQklUUyAucGx0IHNlY3Rpb24gc3Vw cG9ydGVkIGJ5IHByZWxpbmsgYXJlIFBvd2VyUEMNCisgIGFuZCBQb3dlclBD NjQuDQorDQor4oCiIEFwcGx5aW5nIHJlbG9jYXRpb25zLiBGb3IgZWFjaCBk eW5hbWljIHJlbG9jYXRpb24gaW4gdGhlIHNoYXJlZCBsaWJyYXJ5LA0KKyAg YWRkcmVzcyBvZiByZWxvY2F0aW9u4oCZcyBzeW1ib2wgbG9va2VkIHVwIGlu IG5hdHVyYWwgc3ltYm9sIGxvb2t1cCBzZWFyY2gNCisgIHNjb3BlIG9mIHRo ZSBzaGFyZWQgbGlicmFyeSAob3IgMCBpZiB0aGUgc3ltYm9sIGlzIG5vdCBm b3VuZCBpbiB0aGF0IHNlYXJjaA0KKyAgc2NvcGUpIGlzIHN0b3JlZCBpbiBh biBhcmNoaXRlY3R1cmUgYW5kIHJlbG9jYXRpb24gdHlwZSBkZXBlbmRlbnQg d2F5IHRvDQorICBtZW1vcnkgcG9pbnRlZCBieSByX29mZnNldCBmaWVsZCBv ZiB0aGUgcmVsb2NhdGlvbi4gVGhpcyBzdGVwIHVzZXMgc3ltYm9sDQorICBs b29rdXAgaW5mb3JtYXRpb24gcHJvdmlkZWQgYnkgZHluYW1pYyBsaW5rZXIu DQorDQor4oCiIEFkZGl0aW9uIG9yIG1vZGlmaWNhdGlvbiBvZiBEVF9DSEVD S1NVTSBhbmQgRFRfR05VX1BSRUxJTktFRCBkeW5hbWljIHRhZ3MuDQorICBU aGUgZm9ybWVyIGlzIHNldCB0byBjaGVja3N1bSBvZiBhbGxvY2F0ZWQgc2Vj dGlvbnMgaW4gdGhlIHNoYXJlZA0KKyAgbGlicmFyeSwgdGhlIGxhdHRlciB0 byB0aW1lIG9mIHByZWxpbmtpbmcuDQorDQorICBbIFByZWxpbmsgaXMgbm90 IGFibGUgdG8gZ3JvdyAuZHluYW1pYyBzZWN0aW9uLCBzbyBpdCBuZWVkcyBz b21lIHNwYXJlDQorICAgIGR5bmFtaWMgdGFncyAoRFRfTlVMTCkgYXQgdGhl IGVuZCBvZiAuZHluYW1pYyBzZWN0aW9uLiBHTlUgbGlua2VyDQorICAgIHZl cnNpb25zIHJlbGVhc2VkIGFmdGVyIEF1Z3VzdCAyMDAxIGxlYXZlIHNwYWNl IGJ5IGRlZmF1bHQuIF0NCisNCivigKIgT24gYXJjaGl0ZWN0dXJlcyB3aGlj aCBkb27igJl0IHVzZSB3cml0YWJsZSAucGx0LCBidXQgaW5zdGVhZCB1c2Ug LmdvdC5wbHQNCisgICh0aGlzIHNlY3Rpb24gaXMgbWVyZ2VkIGR1cmluZyBs aW5raW5nIGludG8gLmdvdCkgc2VjdGlvbiwgcHJlbGluayB0eXBpY2FsbHkN CisgIHN0b3JlcyBhZGRyZXNzIGludG8gdGhlIGZpcnN0IFBMVCBzbG90IGlu IC5wbHQgc2VjdGlvbiB0byB0aGUgcmVzZXJ2ZWQNCisgIHNlY29uZCB3b3Jk IG9mIC5nb3Qgc2VjdGlvbi4gT24gdGhlc2UgYXJjaGl0ZWN0dXJlcywgdGhl IGR5bmFtaWMgbGlua2VyIGhhcw0KKyAgdG8gaW5pdGlhbGl6ZSAucGx0IHNl Y3Rpb24gaWYgbGF6eSBiaW5kaW5nLg0KKw0KKyAgT24gbm9uLXByZWxpbmtl ZCBleGVjdXRhYmxlcyBvciBzaGFyZWQgbGlicmFyaWVzIHRoaXMgdHlwaWNh bGx5IG1lYW5zIGFkZGluZw0KKyAgbG9hZCBvZmZzZXQgdG8gdGhlIHZhbHVl cyBpbiAuZ290LnBsdCBzZWN0aW9uLCBmb3IgcHJlbGlua2VkIHNoYXJlZA0K KyAgbGlicmFyaWVzIG9yIGV4ZWN1dGFibGVzIGlmIHByZWxpbmtpbmcgaW5m b3JtYXRpb24gY2Fubm90IGJlIHVzZWQgaXQgbmVlZHMNCisgIHRvIGNvbXB1 dGUgdGhlIHJpZ2h0IHZhbHVlcyBpbiAuZ290LnBsdCBzZWN0aW9uIHdpdGhv dXQgbG9va2luZyBhdCB0aGlzDQorICBzZWN0aW9u4oCZcyBjb250ZW50IChz aW5jZSBpdCBjb250YWlucyBwcmVsaW5raW5nIGluZm9ybWF0aW9uKS4gVGhl IHNlY29uZA0KKyAgd29yZCBpbiAuZ290IHNlY3Rpb24gaXMgdXNlZCBmb3Ig dGhpcyBjb21wdXRhdGlvbi4NCisNCivigKIgQWRkaXRpb24gb2YgLmdudV9w cmVsaW5rX3VuZG8gdW5hbGxvY2F0ZWQgc2VjdGlvbiBpZiBub3QgcHJlc2Vu dCB5ZXQuIFRoaXMNCisgIHNlY3Rpb24gaXMgdXNlZCBieSBwcmVsaW5rIGlu dGVybmFsbHkgZHVyaW5nIHVuZG8gb3BlcmF0aW9uLg0KKw0KK+KAoiBBZGRp dGlvbiBvZiAuZ251X2xpYmxpc3QgYW5kIC5nbnVfbGlic3RyIHVuYWxsb2Nh dGVkIHNlY3Rpb25zIG9yLCBpZiB0aGV5DQorICBhcmUgYWxyZWFkeSBwcmVz ZW50LCB0aGVpciB1cGRhdGUgaW5jbHVkaW5nIHBvc3NpYmxlIGdyb3dpbmcg b3Igc2hyaW5raW5nLg0KKyAgVGhlc2Ugc2VjdGlvbnMgYXJlIHVzZWQgb25s eSBieSBwcmVsaW5rIHRvIGNvbXBhcmUgdGhlIGRlcGVuZGVudCBsaWJyYXJp ZXMNCisgIChhbmQgdGhlaXIgb3JkZXIpIGF0IHRoZSB0aW1lIHdoZW4gdGhl IHNoYXJlZCBsaWJyYXJ5IHdhcyBwcmVsaW5rZWQgYWdhaW5zdA0KKyAgY3Vy cmVudCBkZXBlbmRlbmNpZXMuIElmIGEgc2hhcmVkIGxpYnJhcnkgaGFzIG5v IGRlcGVuZGVuY2llcyAoZS5nLiBkeW5hbWljDQorICBsaW5rZXIpLCB0aGVz ZSBzZWN0aW9ucyBhcmUgbm90IHByZXNlbnQuDQorDQorICBBZGRpbmcgb3Ig cmVzaXppbmcgdW5hbGxvY2F0ZWQgc2VjdGlvbiBuZWVkcyBqdXN0IGZpbGUg b2Zmc2V0cyBvZiBmb2xsb3dpbmcNCisgIHVuYWxsb2NhdGVkIHNlY3Rpb25z IHJlY29tcHV0ZWQgKGVuc3VyaW5nIHByb3BlciBhbGlnbm1lbnQpLCBncm93 aW5nIHNlY3Rpb24NCisgIGhlYWRlciB0YWJsZSBhbmQgLnNoc3RydGFiIGFu ZCBhZGRpbmcgbmV3IHNlY3Rpb24gbmFtZXMgdG8gdGhhdCBzZWN0aW9uLg0K KyAgUHJlbGlua2luZyBvZiBleGVjdXRhYmxlcyBpbnZvbHZlcyBmb2xsb3dp bmcgc3RlcHM6DQorDQor4oCiIFJFTCB0byBSRUxBIGNvbnZlcnNpb24gaWYg bmVlZGVkLg0KKw0KK+KAoiBTSFRfTk9CSVRTIHRvIFNIVF9QUk9HQklUUyBj b252ZXJzaW9uIG9mIC5wbHQgc2VjdGlvbiBpZiBuZWVkZWQuDQorDQor4oCi IEFwcGx5aW5nIHJlbG9jYXRpb25zLg0KKw0KK+KAoiBBZGRpdGlvbiBvciBy ZXNpemluZyBvZiBhbGxvY2F0ZWQgLmdudS5jb25mbGljdCBzZWN0aW9uIGNv bnRhaW5pbmcgbGlzdCBvZg0KKyAgY29uZmxpY3QgZml4dXBzLg0KKw0KK+KA oiBBZGRpdGlvbiBvciByZXNpemluZyBvZiBhbGxvY2F0ZWQgLmdudS5saWJs aXN0IHNlY3Rpb24gd2hpY2ggaXMgdXNlZCBieSB0aGUNCisgIGR5bmFtaWMg bGlua2VyIGF0IHJ1bnRpbWUgdG8gc2VlIGlmIG5vbmUgb2YgdGhlIGRlcGVu ZGVuY2llcyBjaGFuZ2VkIG9yIHdlcmUNCisgIHJlb3JkZXJlZC4gSWYgdGhl eSB3ZXJlLCBpdCBjb250aW51ZXMgbm9ybWFsIHJlbG9jYXRpb24gcHJvY2Vz c2luZywNCisgIG90aGVyd2lzZSB0aGV5IGNhbiBiZSBza2lwcGVkIGFuZCBv bmx5IGNvbmZsaWN0IGZpeHVwcyBhcHBsaWVkLg0KKw0KK+KAoiBHcm93aW5n IG9mIGFsbG9jYXRlZCAuZHluc3RyIHNlY3Rpb24sIHdoZXJlIHN0cmluZ3Mg cmVmZXJlbmNlZCBmcm9tDQorICAuZ251LmxpYmxpc3Qgc2VjdGlvbiBuZWVk IHRvIGJlIGFkZGVkLg0KKw0KK+KAoiBJZiB0aGVyZSBhcmUgYW55IENPUFkg cmVsb2NhdGlvbnMgKHdoaWNoIHByZWxpbmsgd2FudHMgdG8gaGFuZGxlIHJh dGhlciB0aGFuDQorICBkZWZlcnJpbmcgdGhlbSBhcyBjb25mbGljdCBmaXh1 cHMgdG8gcnVudGltZSksIHRoZXkgbmVlZCB0byBiZSBhcHBsaWVkLg0KKw0K K+KAoiBNb2RpZnlpbmcgc2Vjb25kIHdvcmQgaW4gLmdvdCBzZWN0aW9uIGZv ciAuZ290LnBsdCB1c2luZyBhcmNoaXRlY3R1cmVzLg0KKw0KK+KAoiBBZGRp dGlvbiBvciBhZGp1c3Rpbmcgb2YgZHluYW1pYyB0YWdzIHdoaWNoIGFsbG93 IHRoZSBkeW5hbWljIGxpbmtlciB0byBmaW5kDQorICB0aGUgLmdudS5saWJs aXN0IGFuZCAuZ251LmNvbmZsaWN0IHNlY3Rpb25zIGFuZCB0aGVpciBzaXpl cy4gRFRfR05VX0NPTkZMSUNUDQorICBhbmQgRFRfR05VX0NPTkZMSUNUU1og c2hvdWxkIGJlIHByZXNlbnQgaWYgdGhlcmUgYXJlIGFueSBjb25mbGljdCBm aXh1cHMuIEl0DQorICBzaG91bGQgY29udGFpbiB0aGUgdmlydHVhbCBhZGRy ZXNzIG9mIHRoZSAuZ251LmNvbmZsaWN0IHNlY3Rpb24gc3RhcnQgcmVzcC4N CisgIGl0cyBzaXplIGluIGJ5dGVzLiBEVF9HTlVfTElCTElTVCBhbmQgRFRf R05VX0xJQkxJU1RTWiBuZWVkIHRvIGJlIHByZXNlbnQgaW4NCisgIGFsbCBw cmVsaW5rZWQgZXhlY3V0YWJsZXMgYW5kIG11c3QgYmUgZXF1YWwgdGhlIHRv IHZpcnR1YWwgYWRkcmVzcyBvZiB0aGUNCisgIC5nbnUubGlibGlzdCBzZWN0 aW9uIGFuZCBpdHMgc2l6ZSBpbiBieXRlcy4NCisNCivigKIgQWRkaXRpb24g b2YgLmdudV9wcmVsaW5rX3VuZG8gdW5hbGxvY2F0ZWQgc2VjdGlvbiBpZiBu b3QgcHJlc2VudC4NCisNCitFeGVjdXRhYmxlcyBjYW4gaGF2ZSBhYnNvbHV0 ZSByZWxvY2F0aW9ucyBhbHJlYWR5IGFwcGxpZWQgKGFuZCB3aXRob3V0IGEN CitkeW5hbWljIHJlbG9jYXRpb24pIHRvIHZpcnR1YWxseSBhbnkgYWxsb2Nh dGVkIFNIVF9QUk9HQklUUyBzZWN0aW9uLA0KKw0KK1sgT25lIGV4Y2VwdGlv biBpcyAuaW50ZXJwIHNwZWNpYWwgc2VjdGlvbi4gSXQgc2hvdWxkbuKAmXQg aGF2ZSByZWxvY2F0aW9ucw0KKyAgYXBwbGllZCB0byBpdCwgbm9yIGFueSBv dGhlciBzZWN0aW9uIHNob3VsZCByZWZlcmVuY2UgaXQuIF0NCisNCithZ2Fp bnN0IGFsbW9zdCBhbGwgYWxsb2NhdGVkIFNIVF9QUk9HQklUUyBhbmQgU0hU X05PQklUUyBzZWN0aW9ucy4gVGhpcyBtZWFucw0KK3RoYXQgd2hlbiBncm93 aW5nLCBhZGRpbmcgb3Igc2hyaW5raW5nIGFsbG9jYXRlZCBzZWN0aW9ucyBp biBleGVjdXRhYmxlcywgYWxsDQorU0hUX1BST0dCSVRTIGFuZCBTSFRfTk9C SVRTIHNlY3Rpb24gbXVzdCBrZWVwIHRoZWlyIG9yaWdpbmFsIHZpcnR1YWwg YWRkcmVzc2VzDQorYW5kIHNpemVzIDE4Lg0KKw0KK1sgV2l0aCBhIG5vdGFi bGUgZXhjZXB0aW9uIG9mIHNwbGl0dGluZyBvbmUgc2VjdGlvbiBpbnRvIHR3 byBjb3ZlcmluZyB0aGUNCisgIHNhbWUgdmlydHVhbCBhZGRyZXNzIHJhbmdl LiBdDQorDQorUHJlbGluayB0cmllcyB2YXJpb3VzIHBsYWNlcyB3aGVyZSB0 byBwdXQgYWxsb2NhdGVkIHNlY3Rpb25zIHdoaWNoIHdlcmUNCithZGRlZCBv ciBncmV3Og0KKw0KK+KAoiBJbiB0aGUgdW5saWtlbHkgY2FzZSBpZiB0aGVy ZSBpcyBhbHJlYWR5IHNvbWUgZ2FwIGJldHdlZW4gc2VjdGlvbnMgaW4NCisg IHJlYWRvbmx5IFBUX0xPQUQgc2VnbWVudCB3aGVyZSB0aGUgc2VjdGlvbiBm aXRzLg0KKw0KK+KAoiBJZiB0aGUgU0hUX05PQklUUyBzZWN0aW9ucyBhcmUg c21hbGwgZW5vdWdoIHRvIGZpdCBpbnRvIGEgcGFnZSB0b2dldGhlciB3aXRo DQorICB0aGUgcHJlY2VkaW5nIFNIVF9QUk9HQklUUyBzZWN0aW9uIGFuZCB0 aGVyZSBpcyBzdGlsbCBzb21lIHNwYWNlIGluIHRoZSBwYWdlDQorICBhZnRl ciB0aGUgU0hUX05PQklUUyBzZWN0aW9ucy4gSW4gdGhpcyBjYXNlLCBwcmVs aW5rIGNvbnZlcnRzIHRoZSBTSFRfTk9CSVRTDQorICBzZWN0aW9ucyBpbnRv IFNIVF9QUk9HQklUUyBzZWN0aW9ucywgZmlsbHMgdGhlbSB3aXRoIHplcm9z IGFuZCBhZGRzIHRoZSBuZXcNCisgIHNlY3Rpb24gYWZ0ZXIgaXQuDQorDQor ICBUaGlzIGRvZXNu4oCZdCBpbmNyZWFzZSBudW1iZXIgb2YgUFRfTE9BRCBz ZWdtZW50cywgYnV0IHVuZm9ydHVuYXRlbHkgdGhvc2UNCisgIGFkZGVkIHNl Y3Rpb25zIGFyZSB3cml0YWJsZS4NCisNCisgIFRoaXMgZG9lc27igJl0IG1h dHRlciBtdWNoIGZvciBlLmcuIC5nbnUuY29uZmxpY3Qgc2VjdGlvbiB3aGlj aCBpcyBvbmx5IHVzZWQNCisgIGJlZm9yZSBjb250cm9sIGlzIHRyYW5zZmVy ZWQgdG8gdGhlIHByb2dyYW0sIGJ1dCBjb3VsZCBtYXR0ZXIgZm9yIC5keW5z dHINCisgIHdoaWNoIGlzIHVzZWQgZXZlbiBkdXJpbmcgZGxvcGVuLg0KKw0K K+KAoiBPbiBJQS0zMiwgZXhlY3V0YWJsZXMgaGF2ZSBmb3IgaGlzdG9yaWNh bCByZWFzb25zIGJhc2UgYWRkcmVzcyAweDgwNDgwMDAuDQorICBUaGUgcmVh c29uIGZvciB0aGlzIHdhcyB0aGF0IHdoZW4gc3RhY2sgd2FzIHB1dCBpbW1l ZGlhdGVseSBiZWxvdw0KKyAgZXhlY3V0YWJsZXMsIHN0YWNrIGFuZCB0aGUg ZXhlY3V0YWJsZSBjb3VsZCBjb2V4aXN0IGluIHRoZSBzYW1lIHNlY29uZCBs ZXZlbA0KKyAgcGFnZSB0YWJsZS4gTGludXggcHV0cyB0aGUgc3RhY2sgdHlw aWNhbGx5IGF0IHRoZSBlbmQgb2YgdmlydHVhbCBhZGRyZXNzDQorICBzcGFj ZSBhbmQgc28ga2VlcGluZyB0aGlzIGV4YWN0IGJhc2UgYWRkcmVzcyBpcyBu b3QgcmVhbGx5IG5lY2Vzc2FyeS4NCisNCisgIFByZWxpbmsgY2FuIGRlY3Jl YXNlIHRoZSBiYXNlIGFkZHJlc3MgYW5kIHRodXMgaW5jcmVhc2Ugc2l6ZSBv ZiByZWFkLW9ubHkNCisgIFBUX0xPQUQgc2VnbWVudCB3aGlsZSBTSFRfUFJP R0JJVFMgYW5kIFNIVF9OT0JJVFMgc2VjdGlvbiBjYW4gc3RheSBhdCB0aGVp cg0KKyAgcHJldmlvdXMgYWRkcmVzc2VzLiBKdXN0IHRoZWlyIGZpbGUgb2Zm c2V0cyBuZWVkIHRvIGJlIGluY3JlYXNlZC4gQWxsIHRoZXNlDQorICBzZWdt ZW50IGhlYWRlciBhZGp1c3RtZW50cyBuZWVkIHRvIGJlIGRvbmUgaW4gbXVs dGlwbGllcyBvZiBFTEYgcGFnZSBzaXplcywNCisgIHNvIGV2ZW4gaWYgcHJl bGluayBjaG9zZSB0byBkbyBzaW1pbGFyIHRoaW5ncyBvbiBhcmNoaXRlY3R1 cmVzIG90aGVyIHRoYW4NCisgIElBLTMyIHdoaWNoIHR5cGljYWxseSBzdGFy dCBleGVjdXRhYmxlcyBvbiBzb21lIGFkZHJlc3Mgd2hpY2ggaXMgYSBwb3dl ciBvZg0KKyAgMiwgaXQgd291bGQgYmUgb25seSByZWFzb25hYmxlIGlmIEVM RiBwYWdlIHNpemUgb24gdGhhdCBhcmNoaXRlY3R1cmUgKHdoaWNoDQorICBj YW4gYmUgbXVjaCBiaWdnZXIgdGhhbiBwYWdlIHNpemUgdXNlZCBieSB0aGUg b3BlcmF0aW5nIHN5c3RlbSkgaXMgdmVyeQ0KKyAgc21hbGwuDQorDQor4oCi IExhc3QgcG9zc2liaWxpdHkgaXMgdG8gY3JlYXRlIGEgbmV3IFBUX0xPQUQg c2VnbWVudC4NCisNCisgIFsgTGludXgga2VybmVscyBiZWZvcmUgMi40LjEw IGxvYWRlZCBleGVjdXRhYmxlcyB3aGljaCBoYWQgbWlkZGxlIFBUX0xPQUQN CisgICAgc2VnbWVudCB3aXRoIHBfbWVtc3ogYmlnZ2VyIHRoYW4gcF9maWxl c3ogaW5jb3JyZWN0bHksIHNvIHByZWxpbmsgc2hvdWxkDQorICAgIGJlIG9u bHkgdXNlZCBvbiBzeXN0ZW1zIHdpdGggMi40LjEwIG9yIGxhdGVyIGtlcm5l bHMuXQ0KKw0KKyAgU2VjdGlvbiBpbW1lZGlhdGVseSBhYm92ZSBwcm9ncmFt IGhlYWRlciB0YWJsZSAodHlwaWNhbGx5IC5pbnRlcnApIGhhcyB0bw0KKyAg YmUgbW92ZWQgc29tZXdoZXJlIGVsc2UsIGJ1dCBpZiBwb3NzaWJsZSBjbG9z ZSB0byB0aGUgYmVnaW5uaW5nIG9mIHRoZQ0KKyAgZXhlY3V0YWJsZS4gVGhl IG5ldyBQVF9MT0FEIHNlZ21lbnQgaXMgdGhlbiBhZGRlZCBhZnRlciB0aGUg bGFzdCBQVF9MT0FEDQorICBzZWdtZW50Lg0KKw0KKyAgVGhlIHNlZ21lbnQg aGFzIHRvIGJlIHdyaXRhYmxlIGV2ZW4gd2hlbiBhbGwgdGhlIHNlY3Rpb25z IGluIGl0IGFyZQ0KKyAgcmVhZC1vbmx5LCB1bmxlc3MgaXQgZW5kcyBleGFj dGx5IG9uIGEgcGFnZSBib3VuZGFyeSwgYmVjYXVzZSBicmsgYXJlYQ0KKyAg c3RhcnRzIGltbWVkaWF0ZWx5IGFmdGVyIHRoZSBlbmQgb2YgbGFzdCBQVF9M T0FEIHNlZ21lbnQgYW5kIHRoZSBleGVjdXRhYmxlDQorICBleHBlY3RzIGl0 IHRvIGJlIHdyaXRhYmxlLg0KKw0KKyAgU28gdGhhdCB2ZXJpZmljYXRpb24g d29ya3MgcHJvcGVybHksIGlmIHRoZXJlIGlzIC5nbnUucHJlbGlua191bmRv IHNlY3Rpb24NCisgIGluIHRoZSBleGVjdXRhYmxlLCBwcmVsaW5rIGZpcnN0 IHJlc2h1ZmZsZXMgdGhlIHNlY3Rpb25zIGFuZCBzZWdtZW50cyBmb3INCisg IHRoZSBwdXJwb3NlIG9mIGZpbmRpbmcgcGxhY2VzIGZvciB0aGUgc2VjdGlv bnMgdG8gdGhlIG9yaWdpbmFsIHNlcXVlbmNlIGFzDQorICByZWNvcmRlZCBp biB0aGUgLmdudS5wcmVsaW5rX3VuZG8gc2VjdGlvbi4gRXhhbXBsZXMgb2Yg dGhlIGFib3ZlIG1lbnRpb25lZA0KKyAgY2FzZXM6DQorDQorICAkIFNFRENN RD3igJlzL14uKiBcLnBsdC4qJC8uLi4vOy9cWy4qXC50ZXh0LywvXFsuKlwu Z290L2TigJkNCisgICQgU0VEQ01EMj3igJkvU2VjdGlvbiB0byBTZWdtZW50 LywkZDsvXktleSB0by8sL15Qcm9ncmFtL2Q7L15bQS1aXS9kOy9eICokL2Ti gJkNCisNCisgICQgY2F0ID4gdGVzdDEuYyA8PEVPRg0KKyAgaW50IG1haW4g KHZvaWQpIHsgcmV0dXJuIDA7IH0NCisgIEVPRg0KKw0KKyAgJCBnY2MgLVds LC0tdmVyYm9zZSAyPiYxIFwNCisgICAgfCBzZWQg4oCZL149PT0vLC9ePT09 LyFkOy9ePT09L2Q7cy9cLnJlbFwuZHluLy4gKz0gNTEyOyAmL+KAmSA+IHRl c3QxLmxkcw0KKyAgJCBnY2MgLXMgLU8yIC1vIHRlc3QxIHRlc3QxLmMgLVds LC1ULHRlc3QxLmxkcw0KKw0KKyAgJCByZWFkZWxmIC1TbCAuL3Rlc3QxIHwg c2VkIC1lIOKAnSRTRURDTUTigJ0gLWUg4oCdJFNFRENNRDLigJ0NCisgIFtO cl0gTmFtZSAgICAgICAgICAgICAgVHlwZSAgICAgICAgQWRkciAgICAgT2Zm ICAgIFNpemUgICBFUyBGbGcgIExrIEluZiAgQWwgDQorICBbIDBdICAgICAg ICAgICAgICAgICAgIE5VTEwgICAgICAgIDAwMDAwMDAwIDAwMDAwMCAwMDAw MDAgMDAgICAgICAgMCAgIDAgICAwDQorICBbIDFdIC5pbnRlcnAgICAgICAg ICAgIFBST0dCSVRTICAgIDA4MDQ4MTE0IDAwMDExNCAwMDAwMTMgMDAgQSAg ICAgMCAgIDAgICAxDQorICBbIDJdIC5ub3RlLkFCSS10YWcgICAgIE5PVEUg ICAgICAgIDA4MDQ4MTI4IDAwMDEyOCAwMDAwMjAgMDAgQSAgICAgMCAgIDAg ICA0DQorICBbIDNdIC5oYXNoICAgICAgICAgICAgIEhBU0ggICAgICAgIDA4 MDQ4MTQ4IDAwMDE0OCAwMDAwMjQgMDQgQSAgICAgNCAgIDAgICA0DQorICBb IDRdIC5keW5zeW0gICAgICAgICAgIERZTlNZTSAgICAgIDA4MDQ4MTZjIDAw MDE2YyAwMDAwNDAgMTAgQSAgICAgNSAgIDEgICA0DQorICBbIDVdIC5keW5z dHIgICAgICAgICAgIFNUUlRBQiAgICAgIDA4MDQ4MWFjIDAwMDFhYyAwMDAw NDUgMDAgQSAgICAgMCAgIDAgICAxDQorICBbIDZdIC5nbnUudmVyc2lvbiAg ICAgIFZFUlNZTSAgICAgIDA4MDQ4MWYyIDAwMDFmMiAwMDAwMDggMDIgQSAg ICAgNCAgIDAgICAyDQorICBbIDddIC5nbnUudmVyc2lvbl9yICAgIFZFUk5F RUQgICAgIDA4MDQ4MWZjIDAwMDFmYyAwMDAwMjAgMDAgQSAgICAgNSAgIDEg ICA0DQorICBbIDhdIC5yZWwuZHluICAgICAgICAgIFJFTCAgICAgICAgIDA4 MDQ4NDFjIDAwMDQxYyAwMDAwMDggMDggQSAgICAgNCAgIDAgICA0DQorICBb IDldIC5yZWwucGx0ICAgICAgICAgIFJFTCAgICAgICAgIDA4MDQ4NDI0IDAw MDQyNCAwMDAwMDggMDggQSAgICAgNCAgIGIgICA0DQorICBbMTBdIC5pbml0 ICAgICAgICAgICAgIFBST0dCSVRTICAgIDA4MDQ4NDJjIDAwMDQyYyAwMDAw MTcgMDAgQVggICAgMCAgIDAgICA0DQorICAuLi4NCisgIFsyMl0gLmJzcyAg ICAgICAgICAgICAgTk9CSVRTICAgICAgMDgwNDk2ZjggMDAwNmY4IDAwMDAw NCAwMCBXQSAgICAwICAgMCAgIDQNCisgIFsyM10gLmNvbW1lbnQgICAgICAg ICAgUFJPR0JJVFMgICAgMDAwMDAwMDAgMDAwNmY4IDAwMDEzMiAwMCAgICAg ICAwICAgMCAgIDENCisgIFsyNF0gLnNoc3RydGFiICAgICAgICAgU1RSVEFC ICAgICAgMDAwMDAwMDAgMDAwODJhIDAwMDBiZSAwMCAgICAgICAwICAgMCAg IDENCisNCisgICBUeXBlICAgIE9mZnNldCAgIFZpcnRBZGRyICAgUGh5c0Fk ZHIgICBGaWxlU2l6IE1lbVNpeiAgRmxnICBBbGlnbg0KKyAgIFBIRFIgICAg MHgwMDAwMzQgMHgwODA0ODAzNCAweDA4MDQ4MDM0IDB4MDAwZTAgMHgwMDBl MCBSIEUgIDB4NA0KKyAgIElOVEVSUCAgMHgwMDAxMTQgMHgwODA0ODExNCAw eDA4MDQ4MTE0IDB4MDAwMTMgMHgwMDAxMyBSICAgIDB4MQ0KKyAgIFtSZXF1 ZXN0aW5nIHByb2dyYW0gaW50ZXJwcmV0ZXI6IC9saWIvbGQtbGludXguc28u Ml0NCisgICBMT0FEICAgIDB4MDAwMDAwIDB4MDgwNDgwMDAgMHgwODA0ODAw MCAweDAwNWZjIDB4MDA1ZmMgUiBFICAweDEwMDANCisgICBMT0FEICAgIDB4 MDAwNWZjIDB4MDgwNDk1ZmMgMHgwODA0OTVmYyAweDAwMGZjIDB4MDAxMDAg UlcgICAweDEwMDANCisgICBEWU5BTUlDIDB4MDAwNjA4IDB4MDgwNDk2MDgg MHgwODA0OTYwOCAweDAwMGM4IDB4MDAwYzggUlcgICAweDQNCisgICBOT1RF ICAgIDB4MDAwMTI4IDB4MDgwNDgxMjggMHgwODA0ODEyOCAweDAwMDIwIDB4 MDAwMjAgUiAgICAweDQNCisgICBTVEFDSyAgIDB4MDAwMDAwIDB4MDAwMDAw MDAgMHgwMDAwMDAwMCAweDAwMDAwIDB4MDAwMDAgUlcgICAweDQNCisNCisg ICAkIHByZWxpbmsgLU4gLi90ZXN0MQ0KKyAgICQgcmVhZGVsZiAtU2wgLi90 ZXN0MSB8IHNlZCAtZSDigJ0kU0VEQ01E4oCdIC1lIOKAnSRTRURDTUQy4oCd DQorICAgW05yXSBOYW1lICAgICAgICAgICAgICBUeXBlICAgICAgICBBZGRy ICAgICBPZmYgICAgU2l6ZSAgIEVTIEZsZyAgTGsgSW5mICBBbCANCisgICBb IDBdICAgICAgICAgICAgICAgICAgIE5VTEwgICAgICAgIDAwMDAwMDAwIDAw MDAwMCAwMDAwMDAgMDAgICAgICAgMCAgIDAgICAwDQorICAgWyAxXSAuaW50 ZXJwICAgICAgICAgICBQUk9HQklUUyAgICAwODA0ODExNCAwMDAxMTQgMDAw MDEzIDAwIEEgICAgIDAgICAwICAgMQ0KKyAgIFsgMl0gLm5vdGUuQUJJLXRh ZyAgICAgTk9URSAgICAgICAgMDgwNDgxMjggMDAwMTI4IDAwMDAyMCAwMCBB ICAgICAwICAgMCAgIDQNCisgICBbIDNdIC5oYXNoICAgICAgICAgICAgIEhB U0ggICAgICAgIDA4MDQ4MTQ4IDAwMDE0OCAwMDAwMjQgMDQgQSAgICAgNCAg IDAgICA0DQorICAgWyA0XSAuZHluc3ltICAgICAgICAgICBEWU5TWU0gICAg ICAwODA0ODE2YyAwMDAxNmMgMDAwMDQwIDEwIEEgICAgIDggICAxICAgNA0K KyAgIFsgNV0gLmdudS5saWJsaXN0ICAgICAgR05VX0xJQkxJU1QgMDgwNDgx YWMgMDAwMWFjIDAwMDAyOCAxNCBBICAgICA4ICAgMCAgIDQNCisgICBbIDZd IC5nbnUudmVyc2lvbiAgICAgIFZFUlNZTSAgICAgIDA4MDQ4MWYyIDAwMDFm MiAwMDAwMDggMDIgQSAgICAgNCAgIDAgICAyDQorICAgWyA3XSAuZ251LnZl cnNpb25fciAgICBWRVJORUVEICAgICAwODA0ODFmYyAwMDAxZmMgMDAwMDIw IDAwIEEgICAgIDggICAxICAgNA0KKyAgIFsgOF0gLmR5bnN0ciAgICAgICAg ICAgU1RSVEFCICAgICAgMDgwNDgyMWMgMDAwMjFjIDAwMDA1OCAwMCBBICAg ICAwICAgMCAgIDENCisgICBbIDldIC5nbnUuY29uZmxpY3QgICAgIFJFTEEg ICAgICAgIDA4MDQ4Mjc0IDAwMDI3NCAwMDAwYzAgMGMgQSAgICAgNCAgIDAg ICA0DQorICAgWzEwXSAucmVsLmR5biAgICAgICAgICBSRUwgICAgICAgICAw ODA0ODQxYyAwMDA0MWMgMDAwMDA4IDA4IEEgICAgIDQgICAwICAgNA0KKyAg IFsxMV0gLnJlbC5wbHQgICAgICAgICAgUkVMICAgICAgICAgMDgwNDg0MjQg MDAwNDI0IDAwMDAwOCAwOCBBICAgICA0ICAgZCAgIDQNCisgICBbMTJdIC5p bml0ICAgICAgICAgICAgIFBST0dCSVRTICAgIDA4MDQ4NDJjIDAwMDQyYyAw MDAwMTcgMDAgQVggICAgMCAgIDAgICA0DQorICAgLi4uDQorICAgWzI0XSAu YnNzICAgICAgICAgICAgICBOT0JJVFMgICAgICAwODA0OTZmOCAwMDA2Zjgg MDAwMDA0IDAwIFdBICAgIDAgICAwICAgNA0KKyAgIFsyNV0gLmNvbW1lbnQg ICAgICAgICAgUFJPR0JJVFMgICAgMDAwMDAwMDAgMDAwNmY4IDAwMDEzMiAw MCAgICAgICAwICAgMCAgIDENCisgICBbMjZdIC5nbnUucHJlbGlua191bmRv IFBST0dCSVRTICAgIDAwMDAwMDAwIDAwMDgyYyAwMDA0ZDQgMDEgICAgICAg MCAgIDAgICA0DQorICAgWzI3XSAuc2hzdHJ0YWIgICAgICAgICBTVFJUQUIg ICAgICAwMDAwMDAwMCAwMDBkMDAgMDAwMGViIDAwICAgICAgIDAgICAwICAg MQ0KKyAgIFR5cGUgICAgT2Zmc2V0ICAgVmlydEFkZHIgICBQaHlzQWRkciAg IEZpbGVTaXogTWVtU2l6ICBGbGcgIEFsaWduDQorICAgUEhEUiAgICAweDAw MDAzNCAweDA4MDQ4MDM0IDB4MDgwNDgwMzQgMHgwMDBlMCAweDAwMGUwIFIg RSAgMHg0DQorICAgSU5URVJQICAweDAwMDExNCAweDA4MDQ4MTE0IDB4MDgw NDgxMTQgMHgwMDAxMyAweDAwMDEzIFIgICAgMHgxDQorICAgW1JlcXVlc3Rp bmcgcHJvZ3JhbSBpbnRlcnByZXRlcjogL2xpYi9sZC1saW51eC5zby4yXQ0K KyAgIExPQUQgICAgMHgwMDAwMDAgMHgwODA0ODAwMCAweDA4MDQ4MDAwIDB4 MDA1ZmMgMHgwMDVmYyBSIEUgIDB4MTAwMA0KKyAgIExPQUQgICAgMHgwMDA1 ZmMgMHgwODA0OTVmYyAweDA4MDQ5NWZjIDB4MDAwZmMgMHgwMDEwMCBSVyAg IDB4MTAwMA0KKyAgIERZTkFNSUMgMHgwMDA2MDggMHgwODA0OTYwOCAweDA4 MDQ5NjA4IDB4MDAwYzggMHgwMDBjOCBSVyAgIDB4NA0KKyAgIE5PVEUgICAg MHgwMDAxMjggMHgwODA0ODEyOCAweDA4MDQ4MTI4IDB4MDAwMjAgMHgwMDAy MCBSICAgIDB4NA0KKyAgIFNUQUNLICAgMHgwMDAwMDAgMHgwMDAwMDAwMCAw eDAwMDAwMDAwIDB4MDAwMDAgMHgwMDAwMCBSVyAgIDB4NA0KKw0KK1Jlc2h1 ZmZsaW5nIG9mIGFuIGV4ZWN1dGFibGUgd2l0aCBhIGdhcCBiZXR3ZWVuIHNl Y3Rpb25zDQorDQorRmlndXJlIDQ6IFJlc2h1ZmZsaW5nIG9mIGFuIGV4ZWN1 dGFibGUgd2l0aCBhIGdhcCBiZXR3ZWVuIHNlY3Rpb25zDQorDQorSW4gdGhl IGFib3ZlIHNhbXBsZSwgdGhlcmUgd2FzIGVub3VnaCBzcGFjZSBiZXR3ZWVu IHNlY3Rpb25zIChwYXJ0aWN1bGFybHkNCitiZXR3ZWVuIHRoZSBlbmQgb2Yg dGhlIC5nbnUudmVyc2lvbl9yIHNlY3Rpb24gYW5kIHRoZSBzdGFydCBvZiAu cmVsLmR5bikgdGhhdA0KK3RoZSBuZXcgc2VjdGlvbnMgY291bGQgYmUgYWRk ZWQgdGhlcmUuDQorDQorICAkIFNFRENNRD3igJlzL14uKiBcLnBsdC4qJC8u Li4vOy9cWy4qXC50ZXh0LywvXFsuKlwuZ290L2TigJkNCisgICQgU0VEQ01E Mj3igJkvU2VjdGlvbiB0byBTZWdtZW50LywkZDsvXktleSB0by8sL15Qcm9n cmFtL2Q7L15bQS1aXS9kOy9eICokL2TigJkNCisgICQgY2F0ID4gdGVzdDIu YyA8PEVPRg0KKyAgaW50IG1haW4gKHZvaWQpIHsgcmV0dXJuIDA7IH0NCisg IEVPRg0KKw0KKyAgJCBnY2MgLXMgLU8yIC1vIHRlc3QyIHRlc3QyLmMNCisg ICQgcmVhZGVsZiAtU2wgLi90ZXN0MiB8IHNlZCAtZSDigJ0kU0VEQ01E4oCd IC1lIOKAnSRTRURDTUQy4oCdDQorICBbTnJdIE5hbWUgICAgICAgICAgICAg IFR5cGUgICAgICAgIEFkZHIgICAgIE9mZiAgICBTaXplICAgRVMgRmxnICBM ayBJbmYgIEFsDQorICBbIDBdICAgICAgICAgICAgICAgICAgIE5VTEwgICAg ICAgIDAwMDAwMDAwIDAwMDAwMCAwMDAwMDAgMDAgICAgICAgMCAgIDAgICAw DQorICBbIDFdIC5pbnRlcnAgICAgICAgICAgIFBST0dCSVRTICAgIDA4MDQ4 MTE0IDAwMDExNCAwMDAwMTMgMDAgQSAgICAgMCAgIDAgICAxDQorICBbIDJd IC5ub3RlLkFCSS10YWcgICAgIE5PVEUgICAgICAgIDA4MDQ4MTI4IDAwMDEy OCAwMDAwMjAgMDAgQSAgICAgMCAgIDAgICA0DQorICBbIDNdIC5oYXNoICAg ICAgICAgICAgIEhBU0ggICAgICAgIDA4MDQ4MTQ4IDAwMDE0OCAwMDAwMjQg MDQgQSAgICAgNCAgIDAgICA0DQorICBbIDRdIC5keW5zeW0gICAgICAgICAg IERZTlNZTSAgICAgIDA4MDQ4MTZjIDAwMDE2YyAwMDAwNDAgMTAgQSAgICAg NSAgIDEgICA0DQorICBbIDVdIC5keW5zdHIgICAgICAgICAgIFNUUlRBQiAg ICAgIDA4MDQ4MWFjIDAwMDFhYyAwMDAwNDUgMDAgQSAgICAgMCAgIDAgICAx DQorICBbIDZdIC5nbnUudmVyc2lvbiAgICAgIFZFUlNZTSAgICAgIDA4MDQ4 MWYyIDAwMDFmMiAwMDAwMDggMDIgQSAgICAgNCAgIDAgICAyDQorICBbIDdd IC5nbnUudmVyc2lvbl9yIFZFUk5FRUQgICAgICAgIDA4MDQ4MWZjIDAwMDFm YyAwMDAwMjAgMDAgQSAgICAgNSAgIDEgICA0DQorICBbIDhdIC5yZWwuZHlu ICAgICAgIFJFTCAgICAgICAgICAgIDA4MDQ4MjFjIDAwMDIxYyAwMDAwMDgg MDggQSAgICAgNCAgIDAgICA0DQorICBbIDldIC5yZWwucGx0ICAgICAgIFJF TCAgICAgICAgICAgIDA4MDQ4MjI0IDAwMDIyNCAwMDAwMDggMDggQSAgICAg NCAgIGIgICA0DQorICBbMTBdIC5pbml0ICAgICAgICAgIFBST0dCSVRTICAg ICAgIDA4MDQ4MjJjIDAwMDIyYyAwMDAwMTcgMDAgQVggICAgMCAgIDAgICA0 DQorICAuLi4NCisgIFsyMl0gLmJzcyAgICAgICAgICAgTk9CSVRTICAgICAg ICAgMDgwNDk0ZjggMDAwNGY4IDAwMDAwNCAwMCBXQSAgICAwICAgMCAgIDQN CisgIFsyM10gLmNvbW1lbnQgICAgICAgUFJPR0JJVFMgICAgICAgMDAwMDAw MDAgMDAwNGY4IDAwMDEzMiAwMCAgICAgICAwICAgMCAgIDENCisgIFsyNF0g LnNoc3RydGFiICAgICAgU1RSVEFCICAgICAgICAgMDAwMDAwMDAgMDAwNjJh IDAwMDBiZSAwMCAgICAgICAwICAgMCAgIDENCisgICBUeXBlICAgIE9mZnNl dCAgIFZpcnRBZGRyICAgUGh5c0FkZHIgICBGaWxlU2l6IE1lbVNpeiAgRmxn ICBBbGlnbg0KKyAgIFBIRFIgICAgMHgwMDAwMzQgMHgwODA0ODAzNCAweDA4 MDQ4MDM0IDB4MDAwZTAgMHgwMDBlMCBSIEUgIDB4NA0KKyAgIElOVEVSUCAg MHgwMDAxMTQgMHgwODA0ODExNCAweDA4MDQ4MTE0IDB4MDAwMTMgMHgwMDAx MyBSICAgIDB4MQ0KKyAgIFtSZXF1ZXN0aW5nIHByb2dyYW0gaW50ZXJwcmV0 ZXI6IC9saWIvbGQtbGludXguc28uMl0NCisgICBMT0FEICAgIDB4MDAwMDAw IDB4MDgwNDgwMDAgMHgwODA0ODAwMCAweDAwM2ZjIDB4MDAzZmMgUiBFICAw eDEwMDANCisgICBMT0FEICAgIDB4MDAwM2ZjIDB4MDgwNDkzZmMgMHgwODA0 OTNmYyAweDAwMGZjIDB4MDAxMDAgUlcgICAweDEwMDANCisgICBEWU5BTUlD IDB4MDAwNDA4IDB4MDgwNDk0MDggMHgwODA0OTQwOCAweDAwMGM4IDB4MDAw YzggUlcgICAweDQNCisgICBOT1RFICAgIDB4MDAwMTI4IDB4MDgwNDgxMjgg MHgwODA0ODEyOCAweDAwMDIwIDB4MDAwMjAgUiAgICAweDQNCisgICBTVEFD SyAgIDB4MDAwMDAwIDB4MDAwMDAwMDAgMHgwMDAwMDAwMCAweDAwMDAwIDB4 MDAwMDAgUlcgICAweDQNCisNCisgICAkIHByZWxpbmsgLU4gLi90ZXN0Mg0K KyAgICQgcmVhZGVsZiAtU2wgLi90ZXN0MiB8IHNlZCAtZSDigJ0kU0VEQ01E 4oCdIC1lIOKAnSRTRURDTUQy4oCdDQorICAgW05yXSBOYW1lICAgICAgICAg ICAgICBUeXBlICAgICAgICBBZGRyICAgICBPZmYgICAgU2l6ZSAgIEVTIEZs ZyAgTGsgSW5mICBBbA0KKyAgIFsgMF0gICAgICAgICAgICAgICAgICAgTlVM TCAgICAgICAgMDAwMDAwMDAgMDAwMDAwIDAwMDAwMCAwMCAgICAgICAwICAg MCAgIDANCisgICBbIDFdIC5pbnRlcnAgICAgICAgICAgIFBST0dCSVRTICAg IDA4MDQ4MTE0IDAwMDExNCAwMDAwMTMgMDAgQSAgICAgMCAgIDAgICAxDQor ICAgWyAyXSAubm90ZS5BQkktdGFnICAgICBOT1RFICAgICAgICAwODA0ODEy OCAwMDAxMjggMDAwMDIwIDAwIEEgICAgIDAgICAwICAgNA0KKyAgIFsgM10g Lmhhc2ggICAgICAgICAgICAgSEFTSCAgICAgICAgMDgwNDgxNDggMDAwMTQ4 IDAwMDAyNCAwNCBBICAgICA0ICAgMCAgIDQNCisgICBbIDRdIC5keW5zeW0g ICAgICAgICAgIERZTlNZTSAgICAgIDA4MDQ4MTZjIDAwMDE2YyAwMDAwNDAg MTAgQSAgICAyMyAgIDEgICA0DQorICAgWyA1XSAuZ251LmxpYmxpc3QgICAg ICBHTlVfTElCTElTVCAwODA0ODFhYyAwMDAxYWMgMDAwMDI4IDE0IEEgICAg MjMgICAwICAgNA0KKyAgIFsgNl0gLmdudS52ZXJzaW9uICAgICAgVkVSU1lN ICAgICAgMDgwNDgxZjIgMDAwMWYyIDAwMDAwOCAwMiBBICAgICA0ICAgMCAg IDINCisgICBbIDddIC5nbnUudmVyc2lvbl9yICAgIFZFUk5FRUQgICAgIDA4 MDQ4MWZjIDAwMDFmYyAwMDAwMjAgMDAgQSAgICAyMyAgIDEgICA0DQorICAg WyA4XSAucmVsLmR5biAgICAgICAgICBSRUwgICAgICAgICAwODA0ODIxYyAw MDAyMWMgMDAwMDA4IDA4IEEgICAgIDQgICAwICAgNA0KKyAgIFsgOV0gLnJl bC5wbHQgICAgICAgICAgUkVMICAgICAgICAgMDgwNDgyMjQgMDAwMjI0IDAw MDAwOCAwOCBBICAgICA0ICAgYiAgIDQNCisgICBbMTBdIC5pbml0ICAgICAg ICAgICAgIFBST0dCSVRTICAgIDA4MDQ4MjJjIDAwMDIyYyAwMDAwMTcgMDAg QVggICAgMCAgIDAgICA0DQorICAgLi4uDQorICAgWzIyXSAuYnNzICAgICAg ICAgICAgICBQUk9HQklUUyAgICAwODA0OTRmOCAwMDA0ZjggMDAwMDA0IDAw IFdBICAgIDAgICAwICAgNA0KKyAgIFsyM10gLmR5bnN0ciAgICAgICAgICAg U1RSVEFCICAgICAgMDgwNDk0ZmMgMDAwNGZjIDAwMDA1OCAwMCBBICAgICAw ICAgMCAgIDENCisgICBbMjRdIC5nbnUuY29uZmxpY3QgICAgIFJFTEEgICAg ICAgIDA4MDQ5NTU0IDAwMDU1NCAwMDAwYzAgMGMgQSAgICAgNCAgIDAgICA0 DQorICAgWzI1XSAuY29tbWVudCAgICAgICAgICBQUk9HQklUUyAgICAwMDAw MDAwMCAwMDA2MTQgMDAwMTMyIDAwICAgICAgIDAgICAwICAgMQ0KKyAgIFsy Nl0gLmdudS5wcmVsaW5rX3VuZG8gUFJPR0JJVFMgICAgMDAwMDAwMDAgMDAw NzQ4IDAwMDRkNCAwMSAgICAgICAwICAgMCAgIDQNCisgICBbMjddIC5zaHN0 cnRhYiAgICAgICAgIFNUUlRBQiAgICAgIDAwMDAwMDAwIDAwMGMxYyAwMDAw ZWIgMDAgICAgICAgMCAgIDAgICAxDQorICAgVHlwZSAgICBPZmZzZXQgICBW aXJ0QWRkciAgIFBoeXNBZGRyICAgRmlsZVNpeiBNZW1TaXogIEZsZyAgQWxp Z24NCisgICBQSERSICAgIDB4MDAwMDM0IDB4MDgwNDgwMzQgMHgwODA0ODAz NCAweDAwMGUwIDB4MDAwZTAgUiBFICAweDQNCisgICBJTlRFUlAgIDB4MDAw MTE0IDB4MDgwNDgxMTQgMHgwODA0ODExNCAweDAwMDEzIDB4MDAwMTMgUiAg ICAweDENCisgICBbUmVxdWVzdGluZyBwcm9ncmFtIGludGVycHJldGVyOiAv bGliL2xkLWxpbnV4LnNvLjJdDQorICAgTE9BRCAgICAweDAwMDAwMCAweDA4 MDQ4MDAwIDB4MDgwNDgwMDAgMHgwMDNmYyAweDAwM2ZjIFIgRSAgMHgxMDAw DQorICAgTE9BRCAgICAweDAwMDNmYyAweDA4MDQ5M2ZjIDB4MDgwNDkzZmMg MHgwMDIxOCAweDAwMjE4IFJXICAgMHgxMDAwDQorICAgRFlOQU1JQyAweDAw MDQwOCAweDA4MDQ5NDA4IDB4MDgwNDk0MDggMHgwMDBjOCAweDAwMGM4IFJX ICAgMHg0DQorICAgTk9URSAgICAweDAwMDEyOCAweDA4MDQ4MTI4IDB4MDgw NDgxMjggMHgwMDAyMCAweDAwMDIwIFIgICAgMHg0DQorICAgU1RBQ0sgICAw eDAwMDAwMCAweDAwMDAwMDAwIDB4MDAwMDAwMDAgMHgwMDAwMCAweDAwMDAw IFJXICAgMHg0DQorDQorUmVzaHVmZmxpbmcgb2YgYW4gZXhlY3V0YWJsZSB3 aXRoIHNtYWxsIC5ic3MNCisNCitGaWd1cmUgNTogUmVzaHVmZmxpbmcgb2Yg YW4gZXhlY3V0YWJsZSB3aXRoIHNtYWxsIC5ic3MNCisNCitJbiB0aGlzIGNh c2UgLmJzcyBzZWN0aW9uIHdhcyBzbWFsbCBlbm91Z2ggdGhhdCBwcmVsaW5r IGNvbnZlcnRlZCBpdCB0bw0KK1NIVF9QUk9HQklUUy4NCisNCisgICQgU0VE Q01EPeKAmXMvXi4qIFwucGx0LiokLy4uLi87L1xbLipcLnRleHQvLC9cWy4q XC5nb3QvZOKAmQ0KKyAgJCBTRURDTUQyPeKAmS9TZWN0aW9uIHRvIFNlZ21l bnQvLCRkOy9eS2V5IHRvLywvXlByb2dyYW0vZDsvXltBLVpdL2Q7L14gKiQv ZOKAmQ0KKyAgJCBjYXQgPiB0ZXN0My5jIDw8RU9GDQorICBpbnQgZm9vIFs0 MDk2XTsNCisgIGludCBtYWluICh2b2lkKSB7IHJldHVybiAwOyB9DQorICBF T0YNCisNCisgICQgZ2NjIC1zIC1PMiAtbyB0ZXN0MyB0ZXN0My5jDQorICAk IHJlYWRlbGYgLVNsIC4vdGVzdDMgfCBzZWQgLWUg4oCdJFNFRENNROKAnSAt ZSDigJ0kU0VEQ01EMuKAnQ0KKyAgW05yXSBOYW1lICAgICAgICAgICAgICBU eXBlICAgICAgICBBZGRyICAgICBPZmYgICAgU2l6ZSAgIEVTIEZsZyAgTGsg SW5mICBBbA0KKyAgWyAwXSAgICAgICAgICAgICAgICAgICBOVUxMICAgICAg ICAwMDAwMDAwMCAwMDAwMDAgMDAwMDAwIDAwICAgICAgIDAgICAwICAgMA0K KyAgWyAxXSAuaW50ZXJwICAgICAgICAgICBQUk9HQklUUyAgICAwODA0ODEx NCAwMDAxMTQgMDAwMDEzIDAwIEEgICAgIDAgICAwICAgMQ0KKyAgWyAyXSAu bm90ZS5BQkktdGFnICAgICBOT1RFICAgICAgICAwODA0ODEyOCAwMDAxMjgg MDAwMDIwIDAwIEEgICAgIDAgICAwICAgNA0KKyAgWyAzXSAuaGFzaCAgICAg ICAgICAgICBIQVNIICAgICAgICAwODA0ODE0OCAwMDAxNDggMDAwMDI0IDA0 IEEgICAgIDQgICAwICAgNA0KKyAgWyA0XSAuZHluc3ltICAgICAgICAgICBE WU5TWU0gICAgICAwODA0ODE2YyAwMDAxNmMgMDAwMDQwIDEwIEEgICAgIDUg ICAxICAgNA0KKyAgWyA1XSAuZHluc3RyICAgICAgICAgICBTVFJUQUIgICAg ICAwODA0ODFhYyAwMDAxYWMgMDAwMDQ1IDAwIEEgICAgIDAgICAwICAgMQ0K KyAgWyA2XSAuZ251LnZlcnNpb24gICAgICBWRVJTWU0gICAgICAwODA0ODFm MiAwMDAxZjIgMDAwMDA4IDAyIEEgICAgIDQgICAwICAgMg0KKyAgWyA3XSAu Z251LnZlcnNpb25fciAgICBWRVJORUVEICAgICAwODA0ODFmYyAwMDAxZmMg MDAwMDIwIDAwIEEgICAgIDUgICAxICAgNA0KKyAgWyA4XSAucmVsLmR5biAg ICAgICAgICBSRUwgICAgICAgICAwODA0ODIxYyAwMDAyMWMgMDAwMDA4IDA4 IEEgICAgIDQgICAwICAgNA0KKyAgWyA5XSAucmVsLnBsdCAgICAgICAgICBS RUwgICAgICAgICAwODA0ODIyNCAwMDAyMjQgMDAwMDA4IDA4IEEgICAgIDQg ICBiICAgNA0KKyAgWzEwXSAuaW5pdCAgICAgICAgICAgICBQUk9HQklUUyAg ICAwODA0ODIyYyAwMDAyMmMgMDAwMDE3IDAwIEFYICAgIDAgICAwICAgNA0K KyAgLi4uDQorICBbMjJdIC5ic3MgICAgICAgICAgICAgIE5PQklUUyAgICAg IDA4MDQ5NTAwIDAwMDUwMCAwMDQwMjAgMDAgV0EgICAgMCAgIDAgIDMyDQor ICBbMjNdIC5jb21tZW50ICAgICAgICAgIFBST0dCSVRTICAgIDAwMDAwMDAw IDAwMDUwMCAwMDAxMzIgICAgMDAgICAgMCAgIDAgICAxDQorICBbMjRdIC5z aHN0cnRhYiAgICAgICAgIFNUUlRBQiAgICAgIDAwMDAwMDAwIDAwMDYzMiAw MDAwYmUgICAgMDAgICAgMCAgIDAgICAxDQorICBUeXBlICAgIE9mZnNldCAg IFZpcnRBZGRyICAgUGh5c0FkZHIgICBGaWxlU2l6IE1lbVNpeiAgRmxnICBB bGlnbg0KKyAgUEhEUiAgICAweDAwMDAzNCAweDA4MDQ4MDM0IDB4MDgwNDgw MzQgMHgwMDBlMCAweDAwMGUwIFIgRSAgMHg0DQorICBJTlRFUlAgIDB4MDAw MTE0IDB4MDgwNDgxMTQgMHgwODA0ODExNCAweDAwMDEzIDB4MDAwMTMgUiAg ICAweDENCisgIFtSZXF1ZXN0aW5nIHByb2dyYW0gaW50ZXJwcmV0ZXI6IC9s aWIvbGQtbGludXguc28uMl0NCisgIExPQUQgICAgMHgwMDAwMDAgMHgwODA0 ODAwMCAweDA4MDQ4MDAwIDB4MDAzZmMgMHgwMDNmYyBSIEUgIDB4MTAwMA0K KyAgTE9BRCAgICAweDAwMDNmYyAweDA4MDQ5M2ZjIDB4MDgwNDkzZmMgMHgw MDBmYyAweDA0MTI0IFJXICAgMHgxMDAwDQorICBEWU5BTUlDIDB4MDAwNDA4 IDB4MDgwNDk0MDggMHgwODA0OTQwOCAweDAwMGM4IDB4MDAwYzggUlcgICAw eDQNCisgIE5PVEUgICAgMHgwMDAxMjggMHgwODA0ODEyOCAweDA4MDQ4MTI4 IDB4MDAwMjAgMHgwMDAyMCBSICAgIDB4NA0KKyAgU1RBQ0sgICAweDAwMDAw MCAweDAwMDAwMDAwIDB4MDAwMDAwMDAgMHgwMDAwMCAweDAwMDAwIFJXICAg MHg0DQorDQorICAkIHByZWxpbmsgLU4gLi90ZXN0Mw0KKyAgJCByZWFkZWxm IC1TbCAuL3Rlc3QzIHwgc2VkIC1lIOKAnSRTRURDTUTigJ0gLWUg4oCdJFNF RENNRDLigJ0NCisgIFtOcl0gTmFtZSAgICAgICAgICAgICAgVHlwZSAgICAg ICAgQWRkciAgICAgT2ZmICAgIFNpemUgICBFUyBGbGcgIExrIEluZiAgQWwN CisgIFsgMF0gICAgICAgICAgICAgICAgICAgTlVMTCAgICAgICAgMDAwMDAw MDAgMDAwMDAwIDAwMDAwMCAwMCAgICAgICAwICAgMCAgIDANCisgIFsgMV0g LmludGVycCAgICAgICAgICAgUFJPR0JJVFMgICAgMDgwNDcxMTQgMDAwMTE0 IDAwMDAxMyAwMCBBICAgICAwICAgMCAgIDENCisgIFsgMl0gLm5vdGUuQUJJ LXRhZyAgICAgTk9URSAgICAgICAgMDgwNDcxMjggMDAwMTI4IDAwMDAyMCAw MCBBICAgICAwICAgMCAgIDQNCisgIFsgM10gLmR5bnN0ciAgICAgICAgICAg U1RSVEFCICAgICAgMDgwNDcxNDggMDAwMTQ4IDAwMDA1OCAwMCBBICAgICAw ICAgMCAgIDENCisgIFsgNF0gLmdudS5saWJsaXN0ICAgICAgR05VX0xJQkxJ U1QgMDgwNDcxYTAgMDAwMWEwIDAwMDAyOCAxNCBBICAgICAzICAgMCAgIDQN CisgIFsgNV0gLmdudS5jb25mbGljdCAgICAgUkVMQSAgICAgICAgMDgwNDcx YzggMDAwMWM4IDAwMDBjMCAwYyBBICAgICA3ICAgMCAgIDQNCisgIFsgNl0g Lmhhc2ggICAgICAgICAgICAgSEFTSCAgICAgICAgMDgwNDgxNDggMDAxMTQ4 IDAwMDAyNCAwNCBBICAgICA3ICAgMCAgIDQNCisgIFsgN10gLmR5bnN5bSAg ICAgICAgICAgRFlOU1lNICAgICAgMDgwNDgxNmMgMDAxMTZjIDAwMDA0MCAx MCBBICAgICAzICAgMSAgIDQNCisgIFsgOF0gLmdudS52ZXJzaW9uICAgICAg VkVSU1lNICAgICAgMDgwNDgxZjIgMDAxMWYyIDAwMDAwOCAwMiBBICAgICA3 ICAgMCAgIDINCisgIFsgOV0gLmdudS52ZXJzaW9uX3IgICAgVkVSTkVFRCAg ICAgMDgwNDgxZmMgMDAxMWZjIDAwMDAyMCAwMCBBICAgICAzICAgMSAgIDQN CisgIFsxMF0gLnJlbC5keW4gICAgICAgICAgUkVMICAgICAgICAgMDgwNDgy MWMgMDAxMjFjIDAwMDAwOCAwOCBBICAgICA3ICAgMCAgIDQNCisgIFsxMV0g LnJlbC5wbHQgICAgICAgICAgUkVMICAgICAgICAgMDgwNDgyMjQgMDAxMjI0 IDAwMDAwOCAwOCBBICAgICA3ICAgZCAgIDQNCisgIFsxMl0gLmluaXQgICAg ICAgICAgICAgUFJPR0JJVFMgICAgMDgwNDgyMmMgMDAxMjJjIDAwMDAxNyAw MCBBWCAgICAwICAgMCAgIDQNCisgIC4uLg0KKyAgWzI0XSAuYnNzICAgICAg ICAgICAgICBOT0JJVFMgICAgICAwODA0OTUwMCAwMDE0ZjggMDA0MDIwIDAw IFdBICAgIDAgICAwICAzMg0KKyAgWzI1XSAuY29tbWVudCAgICAgICAgICBQ Uk9HQklUUyAgICAwMDAwMDAwMCAwMDE0ZjggMDAwMTMyIDAwICAgICAgIDAg ICAwICAgMQ0KKyAgWzI2XSAuZ251LnByZWxpbmtfdW5kbyBQUk9HQklUUyAg ICAwMDAwMDAwMCAwMDE2MmMgMDAwNGQ0IDAxICAgICAgIDAgICAwICAgNA0K KyAgWzI3XSAuc2hzdHJ0YWIgICAgICAgICBTVFJUQUIgICAgICAwMDAwMDAw MCAwMDFiMDAgMDAwMGViIDAwICAgICAgIDAgICAwICAgMQ0KKyAgVHlwZSAg ICBPZmZzZXQgICBWaXJ0QWRkciAgIFBoeXNBZGRyICAgRmlsZVNpeiBNZW1T aXogIEZsZyAgQWxpZ24NCisgIFBIRFIgICAgMHgwMDAwMzQgMHgwODA0NzAz NCAweDA4MDQ3MDM0IDB4MDAwZTAgMHgwMDBlMCBSIEUgIDB4NA0KKyAgSU5U RVJQICAweDAwMDExNCAweDA4MDQ3MTE0IDB4MDgwNDcxMTQgMHgwMDAxMyAw eDAwMDEzIFIgICAgMHgxDQorICBbUmVxdWVzdGluZyBwcm9ncmFtIGludGVy cHJldGVyOiAvbGliL2xkLWxpbnV4LnNvLjJdDQorICBMT0FEICAgIDB4MDAw MDAwIDB4MDgwNDcwMDAgMHgwODA0NzAwMCAweDAxM2ZjIDB4MDEzZmMgUiBF ICAweDEwMDANCisgIExPQUQgICAgMHgwMDEzZmMgMHgwODA0OTNmYyAweDA4 MDQ5M2ZjIDB4MDAwZmMgMHgwNDEyNCBSVyAgIDB4MTAwMA0KKyAgRFlOQU1J QyAweDAwMTQwOCAweDA4MDQ5NDA4IDB4MDgwNDk0MDggMHgwMDBjOCAweDAw MGM4IFJXICAgMHg0DQorICBOT1RFICAgIDB4MDAwMTI4IDB4MDgwNDcxMjgg MHgwODA0NzEyOCAweDAwMDIwIDB4MDAwMjAgUiAgICAweDQNCisgIFNUQUNL ICAgMHgwMDAwMDAgMHgwMDAwMDAwMCAweDAwMDAwMDAwIDB4MDAwMDAgMHgw MDAwMCBSVyAgIDB4NA0KKw0KK1Jlc2h1ZmZsaW5nIG9mIGFuIGV4ZWN1dGFi bGUgd2l0aCBkZWNyZWFzaW5nIG9mIGJhc2UgYWRkcmVzcw0KKw0KK0ZpZ3Vy ZSA2OiBSZXNodWZmbGluZyBvZiBhbiBleGVjdXRhYmxlIHdpdGggZGVjcmVh c2luZyBvZiB0aGUgYmFzZSBhZGRyZXNzDQorDQorSW4gdGVzdDMgdGhlIGJh c2UgYWRkcmVzcyBvZiB0aGUgZXhlY3V0YWJsZSB3YXMgZGVjcmVhc2VkIGJ5 IG9uZSBwYWdlIGFuZA0KK3RoZSBuZXcgc2VjdGlvbnMgYWRkZWQgdGhlcmUu DQorDQorICAkIFNFRENNRD3igJlzL14uKiBcLnBsdC4qJC8uLi4vOy9cWy4q XC50ZXh0LywvXFsuKlwuZ290L2TigJkNCisgICQgU0VEQ01EMj3igJkvU2Vj dGlvbiB0byBTZWdtZW50LywkZDsvXktleSB0by8sL15Qcm9ncmFtL2Q7L15b QS1aXS9kOy9eICokL2TigJkNCisgICQgY2F0ID4gdGVzdDQuYyA8PEVPRg0K KyAgaW50IGZvbyBbNDA5Nl07DQorICBpbnQgbWFpbiAodm9pZCkgeyByZXR1 cm4gMDsgfQ0KKyAgRU9GDQorDQorICAkIGdjYyAtV2wsLS12ZXJib3NlIDI+ JjEgXA0KKyAgICB8IHNlZCDigJkvXj09PS8sL149PT0vIWQ7L149PT0vZDtz LzB4MDgwNDgwMDAvMHgwODAwMDAwMC/igJkgPiB0ZXN0NC5sZHMNCisgICQg Z2NjIC1zIC1PMiAtbyB0ZXN0NCB0ZXN0NC5jIC1XbCwtVCx0ZXN0NC5sZHMN CisgICQgcmVhZGVsZiAtU2wgLi90ZXN0NCB8IHNlZCAtZSDigJ0kU0VEQ01E 4oCdIC1lIOKAnSRTRURDTUQy4oCdDQorICBbTnJdIE5hbWUgICAgICAgICAg ICAgIFR5cGUgICAgICAgIEFkZHIgICAgIE9mZiAgICBTaXplICAgRVMgRmxn ICBMayBJbmYgIEFsDQorICBbIDBdICAgICAgICAgICAgICAgICAgIE5VTEwg ICAgICAgIDAwMDAwMDAwIDAwMDAwMCAwMDAwMDAgMDAgICAgICAgMCAgIDAg ICAwDQorICBbIDFdIC5pbnRlcnAgICAgICAgICAgIFBST0dCSVRTICAgIDA4 MDAwMTE0IDAwMDExNCAwMDAwMTMgMDAgQSAgICAgMCAgIDAgICAxDQorICBb IDJdIC5ub3RlLkFCSS10YWcgICAgIE5PVEUgICAgICAgIDA4MDAwMTI4IDAw MDEyOCAwMDAwMjAgMDAgQSAgICAgMCAgIDAgICA0DQorICBbIDNdIC5oYXNo ICAgICAgICAgICAgIEhBU0ggICAgICAgIDA4MDAwMTQ4IDAwMDE0OCAwMDAw MjQgMDQgQSAgICAgNCAgIDAgICA0DQorICBbIDRdIC5keW5zeW0gICAgICAg ICAgIERZTlNZTSAgICAgIDA4MDAwMTZjIDAwMDE2YyAwMDAwNDAgMTAgQSAg ICAgNSAgIDEgICA0DQorICBbIDVdIC5keW5zdHIgICAgICAgICAgIFNUUlRB QiAgICAgIDA4MDAwMWFjIDAwMDFhYyAwMDAwNDUgMDAgQSAgICAgMCAgIDAg ICAxDQorICBbIDZdIC5nbnUudmVyc2lvbiAgICAgIFZFUlNZTSAgICAgIDA4 MDAwMWYyIDAwMDFmMiAwMDAwMDggMDIgQSAgICAgNCAgIDAgICAyDQorICBb IDddIC5nbnUudmVyc2lvbl9yICAgIFZFUk5FRUQgICAgIDA4MDAwMWZjIDAw MDFmYyAwMDAwMjAgMDAgQSAgICAgNSAgIDEgICA0DQorICBbIDhdIC5yZWwu ZHluICAgICAgICAgIFJFTCAgICAgICAgIDA4MDAwMjFjIDAwMDIxYyAwMDAw MDggMDggQSAgICAgNCAgIDAgICA0DQorICBbIDldIC5yZWwucGx0ICAgICAg ICAgIFJFTCAgICAgICAgIDA4MDAwMjI0IDAwMDIyNCAwMDAwMDggMDggQSAg ICAgNCAgIGIgICA0DQorICBbMTBdIC5pbml0ICAgICAgICAgICAgIFBST0dC SVRTICAgIDA4MDAwMjJjIDAwMDIyYyAwMDAwMTcgMDAgQVggICAgMCAgIDAg ICA0DQorICAuLi4NCisgIFsyMl0gLmJzcyAgICAgICAgICAgICAgTk9CSVRT ICAgICAgMDgwMDE1MDAgMDAwNTAwIDAwNDAyMCAwMCBXQSAgICAwICAgMCAg MzINCisgIFsyM10gLmNvbW1lbnQgICAgICAgICAgUFJPR0JJVFMgICAgMDAw MDAwMDAgMDAwNTAwIDAwMDEzMiAwMCAgICAgICAwICAgMCAgIDENCisgIFsy NF0gLnNoc3RydGFiICAgICAgICAgU1RSVEFCICAgICAgMDAwMDAwMDAgMDAw NjMyIDAwMDBiZSAwMCAgICAgICAwICAgMCAgIDENCisgIFR5cGUgICAgT2Zm c2V0ICAgVmlydEFkZHIgICBQaHlzQWRkciAgIEZpbGVTaXogTWVtU2l6ICBG bGcgIEFsaWduDQorICBQSERSICAgIDB4MDAwMDM0IDB4MDgwMDAwMzQgMHgw ODAwMDAzNCAweDAwMGUwIDB4MDAwZTAgUiBFICAweDQNCisgIElOVEVSUCAg MHgwMDAxMTQgMHgwODAwMDExNCAweDA4MDAwMTE0IDB4MDAwMTMgMHgwMDAx MyBSICAgIDB4MQ0KKyAgW1JlcXVlc3RpbmcgcHJvZ3JhbSBpbnRlcnByZXRl cjogL2xpYi9sZC1saW51eC5zby4yXQ0KKyAgTE9BRCAgICAweDAwMDAwMCAw eDA4MDAwMDAwIDB4MDgwMDAwMDAgMHgwMDNmYyAweDAwM2ZjIFIgRSAgMHgx MDAwDQorICBMT0FEICAgIDB4MDAwM2ZjIDB4MDgwMDEzZmMgMHgwODAwMTNm YyAweDAwMGZjIDB4MDQxMjQgUlcgICAweDEwMDANCisgIERZTkFNSUMgMHgw MDA0MDggMHgwODAwMTQwOCAweDA4MDAxNDA4IDB4MDAwYzggMHgwMDBjOCBS VyAgIDB4NA0KKyAgTk9URSAgICAweDAwMDEyOCAweDA4MDAwMTI4IDB4MDgw MDAxMjggMHgwMDAyMCAweDAwMDIwIFIgICAgMHg0DQorICBTVEFDSyAgIDB4 MDAwMDAwIDB4MDAwMDAwMDAgMHgwMDAwMDAwMCAweDAwMDAwIDB4MDAwMDAg UlcgICAweDQNCisNCisgICQgcHJlbGluayAtTiAuL3Rlc3Q0DQorICAkIHJl YWRlbGYgLVNsIC4vdGVzdDQgfCBzZWQgLWUg4oCdJFNFRENNROKAnSAtZSDi gJ0kU0VEQ01EMuKAnQ0KKyAgW05yXSBOYW1lICAgICAgICAgICAgICBUeXBl ICAgICAgICBBZGRyICAgICBPZmYgICAgU2l6ZSAgIEVTIEZsZyAgTGsgSW5m ICBBbA0KKyAgWyAwXSAgICAgICAgICAgICAgICAgICBOVUxMICAgICAgICAw MDAwMDAwMCAwMDAwMDAgMDAwMDAwIDAwICAgICAgIDAgICAwICAgMA0KKyAg WyAxXSAuaW50ZXJwICAgICAgICAgICBQUk9HQklUUyAgICAwODAwMDEzNCAw MDAxMzQgMDAwMDEzIDAwIEEgICAgIDAgICAwICAgMQ0KKyAgWyAyXSAubm90 ZS5BQkktdGFnICAgICBOT1RFICAgICAgICAwODAwMDE0OCAwMDAxNDggMDAw MDIwIDAwIEEgICAgIDAgICAwICAgNA0KKyAgWyAzXSAuaGFzaCAgICAgICAg ICAgICBIQVNIICAgICAgICAwODAwMDE2OCAwMDAxNjggMDAwMDI0IDA0IEEg ICAgIDQgICAwICAgNA0KKyAgWyA0XSAuZHluc3ltICAgICAgICAgICBEWU5T WU0gICAgICAwODAwMDE4YyAwMDAxOGMgMDAwMDQwIDEwIEEgICAgMjIgICAx ICAgNA0KKyAgWyA1XSAuZ251LnZlcnNpb24gICAgICBWRVJTWU0gICAgICAw ODAwMDFmMiAwMDAxZjIgMDAwMDA4IDAyIEEgICAgIDQgICAwICAgMg0KKyAg WyA2XSAuZ251LnZlcnNpb25fciAgICBWRVJORUVEICAgICAwODAwMDFmYyAw MDAxZmMgMDAwMDIwIDAwIEEgICAgMjIgICAxICAgNA0KKyAgWyA3XSAucmVs LmR5biAgICAgICAgICBSRUwgICAgICAgICAwODAwMDIxYyAwMDAyMWMgMDAw MDA4IDA4IEEgICAgIDQgICAwICAgNA0KKyAgWyA4XSAucmVsLnBsdCAgICAg ICAgICBSRUwgICAgICAgICAwODAwMDIyNCAwMDAyMjQgMDAwMDA4IDA4IEEg ICAgIDQgICBhICAgNA0KKyAgWyA5XSAuaW5pdCAgICAgICAgICAgICBQUk9H QklUUyAgICAwODAwMDIyYyAwMDAyMmMgMDAwMDE3IDAwIEFYICAgIDAgICAw ICAgNA0KKyAgLi4uDQorICBbMjFdIC5ic3MgICAgICAgICAgICAgIE5PQklU UyAgICAgIDA4MDAxNTAwIDAwMDRmOCAwMDQwMjAgMDAgV0EgICAgMCAgIDAg IDMyDQorICBbMjJdIC5keW5zdHIgICAgICAgICAgIFNUUlRBQiAgICAgIDA4 MDA2NGY4IDAwMDRmOCAwMDAwNTggMDAgQSAgICAgMCAgIDAgICAxDQorICBb MjNdIC5nbnUubGlibGlzdCAgICAgIEdOVV9MSUJMSVNUIDA4MDA2NTUwIDAw MDU1MCAwMDAwMjggMTQgQSAgICAyMiAgIDAgICA0DQorICBbMjRdIC5nbnUu Y29uZmxpY3QgICAgIFJFTEEgICAgICAgIDA4MDA2NTc4IDAwMDU3OCAwMDAw YzAgMGMgQSAgICAgNCAgIDAgICA0DQorICBbMjVdIC5jb21tZW50ICAgICAg ICAgIFBST0dCSVRTICAgIDAwMDAwMDAwIDAwMDYzOCAwMDAxMzIgMDAgICAg ICAgMCAgIDAgICAxDQorICBbMjZdIC5nbnUucHJlbGlua191bmRvIFBST0dC SVRTICAgIDAwMDAwMDAwIDAwMDc2YyAwMDA0ZDQgMDEgICAgICAgMCAgIDAg ICA0DQorICBbMjddIC5zaHN0cnRhYiAgICAgICAgIFNUUlRBQiAgICAgIDAw MDAwMDAwIDAwMGM0MCAwMDAwZWIgMDAgICAgICAgMCAgIDAgICAxDQorICBU eXBlICAgIE9mZnNldCAgIFZpcnRBZGRyICAgUGh5c0FkZHIgICBGaWxlU2l6 IE1lbVNpeiAgRmxnICBBbGlnbg0KKyAgUEhEUiAgICAweDAwMDAzNCAweDA4 MDAwMDM0IDB4MDgwMDAwMzQgMHgwMDBlMCAweDAwMGUwIFIgRSAgMHg0DQor ICBJTlRFUlAgIDB4MDAwMTM0IDB4MDgwMDAxMzQgMHgwODAwMDEzNCAweDAw MDEzIDB4MDAwMTMgUiAgICAweDENCisgIFtSZXF1ZXN0aW5nIHByb2dyYW0g aW50ZXJwcmV0ZXI6IC9saWIvbGQtbGludXguc28uMl0NCisgIExPQUQgICAg MHgwMDAwMDAgMHgwODAwMDAwMCAweDA4MDAwMDAwIDB4MDAzZmMgMHgwMDNm YyBSIEUgIDB4MTAwMA0KKyAgTE9BRCAgICAweDAwMDNmYyAweDA4MDAxM2Zj IDB4MDgwMDEzZmMgMHgwMDBmYyAweDA0MTI0IFJXICAgMHgxMDAwDQorICBM T0FEICAgIDB4MDAwNGY4IDB4MDgwMDY0ZjggMHgwODAwNjRmOCAweDAwMTQw IDB4MDAxNDAgUlcgICAweDEwMDANCisgIERZTkFNSUMgMHgwMDA0MDggMHgw ODAwMTQwOCAweDA4MDAxNDA4IDB4MDAwYzggMHgwMDBjOCBSVyAgIDB4NA0K KyAgTk9URSAgICAweDAwMDE0OCAweDA4MDAwMTQ4IDB4MDgwMDAxNDggMHgw MDAyMCAweDAwMDIwIFIgICAgMHg0DQorICBTVEFDSyAgIDB4MDAwMDAwIDB4 MDAwMDAwMDAgMHgwMDAwMDAwMCAweDAwMDAwIDB4MDAwMDAgUlcgICAweDQN CisNCitSZXNodWZmbGluZyBvZiBhbiBleGVjdXRhYmxlIHdpdGggYWRkaXRp b24gb2YgYSBuZXcgc2VnbWVudA0KKw0KK0ZpZ3VyZSA3OiBSZXNodWZmbGlu ZyBvZiBhbiBleGVjdXRhYmxlIHdpdGggYWRkaXRpb24gb2YgYSBuZXcgc2Vn bWVudA0KKw0KK0luIHRoZSBsYXN0IGV4YW1wbGUsIGJhc2UgYWRkcmVzcyB3 YXMgbm90IGRlY3JlYXNlZCBidXQgaW5zdGVhZCBhIG5ldw0KK1BUX0xPQUQg c2VnbWVudCBoYXMgYmVlbiBhZGRlZC4NCisNCitSXzxhcmNoPl9DT1BZIHJl bG9jYXRpb25zIGFyZSB0eXBpY2FsbHkgYWdhaW5zdCBmaXJzdCBwYXJ0IG9m IHRoZSBTSFRfTk9CSVRTDQorLmJzcyBzZWN0aW9uLiBTbyB0aGF0IHByZWxp bmsgY2FuIGFwcGx5IHRoZW0sIGl0IG5lZWRzIHRvIGZpcnN0IGNoYW5nZSB0 aGVpcg0KK3NlY3Rpb24gdG8gU0hUX1BST0dCSVRTLCBidXQgYXMgLmJzcyBz ZWN0aW9uIHR5cGljYWxseSBvY2N1cGllcyBtdWNoIGxhcmdlcg0KK3BhcnQg b2YgbWVtb3J5LCBpdCBpcyBub3QgZGVzaXJhYmxlIHRvIGNvbnZlcnQgLmJz cyBzZWN0aW9uIGludG8gU0hUX1BST0dCSVRTDQorYXMgd2hvbGUuDQorDQor QSBzZWN0aW9uIGNhbm5vdCBiZSBwYXJ0bHkgU0hUX1BST0dCSVRTIGFuZCBw YXJ0bHkgU0hUX05PQklUUywgc28gcHJlbGluaw0KK2ZpcnN0IHNwbGl0cyB0 aGUgc2VjdGlvbiBpbnRvIHR3byBwYXJ0cywgZmlyc3QgLmR5bmJzcyB3aGlj aCBjb3ZlcnMgYXJlYSBmcm9tDQordGhlIHN0YXJ0IG9mIC5ic3Mgc2VjdGlv biB1cCB0byBoaWdoZXN0IGJ5dGUgdG8gd2hpY2ggc29tZSBDT1BZIHJlbG9j YXRpb24gaXMNCithcHBsaWVkIGFuZCB0aGVuIHRoZSBvbGQgLmJzcy4gVGhl IGZpcnN0IGlzIGNvbnZlcnRlZCB0byBTSFRfUFJPR0JJVFMgYW5kIGl0cw0K K3NpemUgaXMgZGVjcmVhc2VkLCB0aGUgbGF0dGVyIHN0YXlzIFNIVF9OT0JJ VFMgYW5kIGl0cyBzdGFydCBhZGRyZXNzIGFuZCBmaWxlDQorb2Zmc2V0IGFy ZSBhZGp1c3RlZCBhcyB3ZWxsIGFzIGl0cyBzaXplIGRlY3JlYXNlZC4NCisN CitUaGUgZHluYW1pYyBsaW5rZXIgaGFuZGxlcyByZWxvY2F0aW9ucyBpbiB0 aGUgZXhlY3V0YWJsZSBsYXN0LCBzbyBwcmVsaW5rDQorY2Fubm90IGp1c3Qg Y29weSBtZW1vcnkgZnJvbSB0aGUgc2hhcmVkIGxpYnJhcnkgd2hlcmUgdGhl IHN5bWJvbCBvZiB0aGUgQ09QWQ0KK3JlbG9jYXRpb24gaGFzIGJlZW4gbG9v a2VkIHVwIGluLiBUaGVyZSBtaWdodCBiZSByZWxvY2F0aW9ucyBhcHBsaWVk IGJ5IHRoZQ0KK2R5bmFtaWMgbGlua2VyIGluIG5vcm1hbCByZWxvY2F0aW9u IHByb2Nlc3NpbmcgdG8gdGhlIG9iamVjdHMsIHNvIHByZWxpbmsgaGFzDQor dG8gZmlyc3QgcHJvY2VzcyB0aGUgcmVsb2NhdGlvbnMgYWdhaW5zdCB0aGF0 IG1lbW9yeSBhcmVhLg0KKw0KK1JlbG9jYXRpb25zIHdoaWNoIGRvbuKAmXQg bmVlZCBjb25mbGljdCBmaXh1cHMgYXJlIGFscmVhZHkgYXBwbGllZCwgc28g cHJlbGluaw0KK2p1c3QgbmVlZHMgdG8gYXBwbHkgY29uZmxpY3QgZml4dXBz IGFnYWluc3QgdGhlIG1lbW9yeSBhcmVhLCB0aGVuIGNvcHkgaXQgdG8NCit0 aGUgbmV3bHkgY3JlYXRlZCAuZHluYnNzIHNlY3Rpb24uIEhlcmUgaXMgYW4g ZXhhbXBsZSB3aGljaCBzaG93cyB2YXJpb3VzDQordGhpbmdzIHdoaWNoIENP UFkgcmVsb2NhdGlvbiBoYW5kbGluZyBpbiBwcmVsaW5rIG5lZWRzIHRvIGRl YWwgd2l0aDoNCisNCisgICQgY2F0ID4gdGVzdDEuYyA8PEVPRg0KKyAgc3Ry dWN0IEEgeyBjaGFyIGE7IHN0cnVjdCBBICpiOyBpbnQgKmM7IGludCAqZDsg fTsNCisgIGludCBiYXIsIGJhejsNCisgIHN0cnVjdCBBIGZvbyA9IHsgMSwg JmZvbywgJmJhciwgJmJheiB9Ow0KKyAgaW50ICphZGRyICh2b2lkKSB7IHJl dHVybiAmYmF6OyB9DQorICBFT0YNCisNCisgICQgY2F0ID4gdGVzdC5jIDw8 RU9GDQorICAjaW5jbHVkZSA8c3RkaW8uaD4NCisgIHN0cnVjdCBBIHsgY2hh ciBhOyBzdHJ1Y3QgQSAqYjsgaW50ICpjOyBpbnQgKmQ7IH07DQorICBpbnQg YmFyLCAqYWRkciAodm9pZCksIGJpZ1s4MTkyXTsNCisgIGV4dGVybiBzdHJ1 Y3QgQSBmb287DQorICBpbnQgbWFpbiAodm9pZCkNCisgIHsNCisgICAgICBw cmludGYgKOKAnSVwOiAlZCAlcCAlcCAlcCAlcCAlcFxu4oCdLA0KKyAgICAg ICAgICAgICAgJmZvbywgZm9vLmEsIGZvby5iLCBmb28uYywgZm9vLmQsICZi YXIsIGFkZHIgKCkpOw0KKyAgfQ0KKyAgRU9GDQorDQorICAkIGdjYyAtbm9z dGRsaWIgLXNoYXJlZCAtZnBpYyAtcyAtbyB0ZXN0MS5zbyB0ZXN0MS5jDQor ICAkIGdjYyAtcyAtbyB0ZXN0IHRlc3QuYyAuL3Rlc3QxLnNvDQorICAkIC4v dGVzdA0KKyAgMHg4MDQ5NmMwOiAxIDB4ODA0OTZjMCAweDgwNTE2ZTAgMHg0 ODMzYTQgMHg4MDUxNmUwIDB4NDgzM2E0DQorDQorICAkIHJlYWRlbGYgLXIg dGVzdCB8IHNlZCDigJkvXC5yZWxcLmR5bi8sL1wucmVsXC5wbHQvIWQ7L14w LyFk4oCZDQorICAwODA0OTZhYyAwMDAwMGMwNiBSXzM4Nl9HTE9CX0RBVCAw MDAwMDAwMCBfX2dtb25fc3RhcnRfXw0KKyAgMDgwNDk2YzAgMDAwMDA2MDUg Ul8zODZfQ09QWSAgICAgMDgwNDk2YzAgZm9vDQorDQorICAkIHJlYWRlbGYg LVMgdGVzdCB8IGdyZXAgYnNzDQorICBbMjJdIC5ic3MgICAgTk9CSVRTIDA4 MDQ5NmMwIDAwMDZjMCAwMDgwMjQgMDAgV0EgICAgICAwICAgICAgIDAgICAg ICAgMzINCisNCisgICQgcHJlbGluayAtTiAuL3Rlc3QgLi90ZXN0MS5zbw0K KyAgJCByZWFkZWxmIC1zIHRlc3QgfCBncmVwIGZvbw0KKyAgNjogIDA4MDQ5 NmMwIDE2IE9CSkVDVCBHTE9CQUwgREVGQVVMVCAyNSBmb28NCisgICQgcmVh ZGVsZiAtcyB0ZXN0MS5zbyB8IGdyZXAgZm9vDQorICAxNTogMDA0YTkzMTQg MTYgT0JKRUNUIEdMT0JBTCBERUZBVUxUICA2IGZvbw0KKw0KKyAgICQgcmVh ZGVsZiAtciB0ZXN0IHwgc2VkIOKAmS8uZ251LmNvbmZsaWN0LywvXC5yZWxc LmR5bi8hZDsvXjAvIWTigJkNCisgICAwMDRhOTMxOCAwMDAwMDAwMSBSXzM4 Nl8zMiAgICAgICAgICAgIDA4MDQ5NmMwDQorICAgMDA0YTkzMWMgMDAwMDAw MDEgUl8zODZfMzIgICAgICAgICAgICAwODA1MTZlMA0KKyAgIDAwNWY5ODc0 IDAwMDAwMDAxIFJfMzg2XzMyICAgICAgICAgICAgZmZmZmZmZjANCisgICAw MDVmOTg3OCAwMDAwMDAwMSBSXzM4Nl8zMiAgICAgICAgICAgIDAwMDAwMDAx DQorICAgMDA1Zjk4YmMgMDAwMDAwMDEgUl8zODZfMzIgICAgICAgICAgICBm ZmZmZmZmNA0KKyAgIDAwNWY5OTAwIDAwMDAwMDAxIFJfMzg2XzMyICAgICAg ICAgICAgZmZmZmZmZWMNCisgICAwMDVmOTk0OCAwMDAwMDAwMSBSXzM4Nl8z MiAgICAgICAgICAgIGZmZmZmZmRjDQorICAgMDA1Zjk5NWMgMDAwMDAwMDEg Ul8zODZfMzIgICAgICAgICAgICBmZmZmZmZlMA0KKyAgIDAwNWY5OTgwIDAw MDAwMDAxIFJfMzg2XzMyICAgICAgICAgICAgZmZmZmZmZjgNCisgICAwMDVm OTk4OCAwMDAwMDAwMSBSXzM4Nl8zMiAgICAgICAgICAgIGZmZmZmZmU0DQor ICAgMDA1Zjk5YTQgMDAwMDAwMDEgUl8zODZfMzIgICAgICAgICAgICBmZmZm ZmZkOA0KKyAgIDAwNWY5OWM0IDAwMDAwMDAxIFJfMzg2XzMyICAgICAgICAg ICAgZmZmZmZmZTgNCisgICAwMDVmOTlkOCAwMDAwMDAwMSBSXzM4Nl8zMiAg ICAgICAgICAgIDA4MDQ4NTg0DQorICAgMDA0YzI1MTAgMDAwMDAwMDcgUl8z ODZfSlVNUF9TTE9UICAgICAwMDUzNDQ2MA0KKyAgIDAwNGMyNTE0IDAwMDAw MDA3IFJfMzg2X0pVTVBfU0xPVCAgICAgMDA1MzQwODANCisgICAwMDRjMjUx OCAwMDAwMDAwNyBSXzM4Nl9KVU1QX1NMT1QgICAgIDAwNTM0NzUwDQorICAg MDA0YzI1MWMgMDAwMDAwMDcgUl8zODZfSlVNUF9TTE9UICAgICAwMDUzNDJj MA0KKyAgIDAwNGMyNTIwIDAwMDAwMDA3IFJfMzg2X0pVTVBfU0xPVCAgICAg MDA1MzQyMDANCisNCisgICAkIG9iamR1bXAgLXMgLWogLmR5bmJzcyB0ZXN0 DQorICAgdGVzdDogZmlsZSBmb3JtYXQgZWxmMzItaTM4Ng0KKyAgIENvbnRl bnRzIG9mIHNlY3Rpb24gLmR5bmJzczoNCisgICA4MDQ5NmMwIDAxMDAwMDAw IGMwOTYwNDA4IGUwMTYwNTA4IGE0OTM0YTAwIC4uLi4uLi4uLi4uLi4uSi4N CisNCisgICAkIG9iamR1bXAgLXMgLWogLmRhdGEgdGVzdDEuc28NCisgICB0 ZXN0MS5zbzogZmlsZSBmb3JtYXQgZWxmMzItaTM4Ng0KKyAgIENvbnRlbnRz IG9mIHNlY3Rpb24gLmRhdGE6DQorICAgNGE5MzE0ICAwMTAwMDAwMCAxNDkz NGEwMCBhODkzNGEwMCBhNDkzNGEwMCAuLi4uLi5KLi4uSi4uLkouDQorDQor ICAgJCByZWFkZWxmIC1TIHRlc3QgfCBncmVwIGJzcw0KKyAgIFsyNF0gLmR5 bmJzcyAgICAgIFBST0dCSVRTICAgMDgwNDk2YzAgMDAxNmMwIDAwMDAxMCAw MCBXQSAgICAwICAwICAzMg0KKyAgIFsyNV0gLmJzcyAgICAgICAgIE5PQklU UyAgICAgMDgwNDk2ZDAgMDAxNmQwIDAwODAxNCAwMCBXQSAgICAwICAwICAz Mg0KKw0KKyAgICQgc2VkIOKAmXMvODE5Mi8xL+KAmSB0ZXN0LmMgPiB0ZXN0 Mi5jDQorICAgJCBnY2MgLXMgLW8gdGVzdDIgdGVzdDIuYyAuL3Rlc3QxLnNv DQorICAgJCByZWFkZWxmIC1TIHRlc3QyIHwgZ3JlcCBic3MNCisgICBbMjJd IC5ic3MgICAgICAgICBOT0JJVFMgICAgIDA4MDQ5NmIwIDAwMDZiMCAwMDAw MWMgMDAgV0EgICAgMCAgMCAgIDgNCisNCisgICAkIHByZWxpbmsgLU4gLi90 ZXN0MiAuL3Rlc3QxLnNvDQorICAgJCByZWFkZWxmIC1TIHRlc3QyIHwgZ3Jl cCBic3MNCisgICBbMjJdIC5keW5ic3MgICAgICAgUFJPR0JJVFMgIDA4MDQ5 NmIwIDAwMDZiMCAwMDAwMTAgMDAgV0EgICAgMCAgMCAgIDgNCisgICBbMjNd IC5ic3MgICAgICAgICAgUFJPR0JJVFMgIDA4MDQ5NmMwIDAwMDZjMCAwMDAw MGMgMDAgV0EgICAgMCAgMCAgIDgNCisNCitSZWxvY2F0aW9uIGhhbmRsaW5n IG9mIC5keW5ic3Mgb2JqZWN0cw0KKw0KK0JlY2F1c2UgdGVzdC5jIGV4ZWN1 dGFibGUgaXMgbm90IGNvbXBpbGVkIGFzIHBvc2l0aW9uIGluZGVwZW5kZW50 IGNvZGUgYW5kDQordGFrZXMgYWRkcmVzcyBvZiBmb28gdmFyaWFibGUsIGEg Q09QWSByZWxvY2F0aW9uIGlzIG5lZWRlZCB0byBhdm9pZCBkeW5hbWljDQor cmVsb2NhdGlvbiBhZ2FpbnN0IGV4ZWN1dGFibGXigJlzIHJlYWQtb25seSBQ VF9MT0FEIHNlZ21lbnQuDQorDQorVGhlIGZvbyBvYmplY3QgaW4gdGVzdDEu c28gaGFzIG9uZSBmaWVsZCB3aXRoIG5vIHJlbG9jYXRpb25zIGFwcGxpZWQg YXQgYWxsLA0KK29uZSByZWxvY2F0aW9uIGFnYWluc3QgdGhlIHZhcmlhYmxl IGl0c2VsZiwgb25lIHJlbG9jYXRpb24gd2hpY2ggbmVlZHMgYQ0KK2NvbmZs aWN0IGZpeHVwIChhcyBpdCBpcyBvdmVycmlkZGVuIGJ5IHRoZSB2YXJpYWJs ZSBpbiB0aGUgZXhlY3V0YWJsZSkgYW5kIG9uZQ0KK3dpdGggcmVsb2NhdGlv biB3aGljaCBkb2VzbuKAmXQgbmVlZCBhbnkgZml4dXBzLg0KKw0KK1RoZSBm aXJzdCBhbmQgbGFzdCBmaWVsZCBjb250YWluIGFscmVhZHkgdGhlIHJpZ2h0 IHZhbHVlcyBpbiBwcmVsaW5rZWQNCit0ZXN0MS5zbywgd2hpbGUgc2Vjb25k IGFuZCB0aGlyZCBvbmUgbmVlZCB0byBiZSBjaGFuZ2VkIGZvciBzeW1ib2wg YWRkcmVzc2VzDQoraW4gdGhlIGV4ZWN1dGFibGUgKGFzIHNob3duIGluIHRo ZSBvYmpkdW1wIG91dHB1dCkuIFRoZSBjb25mbGljdCBmaXh1cHMNCithZ2Fp bnN0IGZvbyBpbiB0ZXN0MS5zbyBuZWVkIHRvIHN0YXkgKHVubGVzcyBpdCBp cyBhIEMrKyB2aXJ0dWFsIHRhYmxlIG9yIFJUVEkNCitkYXRhLCBpLmUuIG5v dCBpbiB0aGlzIHRlc3RjYXNlKS4NCisNCitJbiB0ZXN0LCBwcmVsaW5rIGNo YW5nZWQgLmR5bmJzcyB0byBTSFRfUFJPR0JJVFMgYW5kIGtlcHQgU0hUX05P QklUUyAuYnNzLA0KK3doaWxlIGluIHNsaWdodGx5IG1vZGlmaWVkIHRlc3Rj YXNlICh0ZXN0MikgdGhlIHNpemUgb2YgLmJzcyB3YXMgc21hbGwgZW5vdWdo DQordGhhdCBwcmVsaW5rIGNob3NlIHRvIG1ha2UgaXQgU0hUX1BST0dCSVRT IHRvbyBhbmQgZ3JvdyB0aGUgcmVhZC13cml0ZSBQVF9MT0FEDQorc2VnbWVu dCBhbmQgcHV0IC5keW5zdHIgYW5kIC5nbnUuY29uZmxpY3Qgc2VjdGlvbnMg YWZ0ZXIgaXQuDQorDQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQ0KKw0KKzEyIFByZWxpbmsgdW5kbyBvcGVyYXRpb24NCisNCitQcmVsaW5r aW5nIG9mIHNoYXJlZCBsaWJyYXJpZXMgYW5kIGV4ZWN1dGFibGVzIGlzIGRl c2lnbmVkIHRvIGJlIHJldmVyc2libGUsDQorc28gdGhhdCBwcmVsaW5rIG9w ZXJhdGlvbiBmb2xsb3dlZCBieSB1bmRvIG9wZXJhdGlvbiBnZW5lcmF0ZXMg Yml0d2lzZQ0KK2lkZW50aWNhbCBmaWxlIHRvIHRoZSBvcmlnaW5hbCBiZWZv cmUgcHJlbGlua2luZy4gRm9yIHRoaXMgb3BlcmF0aW9uIHByZWxpbmsNCitz dG9yZXMgdGhlIG9yaWdpbmFsIEVMRiBoZWFkZXIsIGFsbCB0aGUgcHJvZ3Jh bSBhbmQgYWxsIHNlY3Rpb24gaGVhZGVycyBpbnRvIGENCisuZ251LnByZWxp bmtfdW5kbyBzZWN0aW9uIGJlZm9yZSBpdCBzdGFydHMgcHJlbGlua2luZyBh biB1bnByZWxpbmtlZA0KK2V4ZWN1dGFibGUgb3Igc2hhcmVkIGxpYnJhcnku DQorDQorV2hlbiB1bmRvaW5nIHRoZSBtb2RpZmljYXRpb25zLCBwcmVsaW5r IGhhcyB0byBjb252ZXJ0IFJFTEEgYmFjayB0byBSRUwgZmlyc3QNCitpZiBS RUwgdG8gUkVMQSBjb252ZXJzaW9uIHdhcyBkb25lIGR1cmluZyBwcmVsaW5r aW5nIGFuZCBhbGwgYWxsb2NhdGVkDQorc2VjdGlvbnMgYWJvdmUgaXQgcmVs b2NhdGVkIGRvd24gdG8gYWRqdXN0IGZvciB0aGUgc2VjdGlvbiBzaHJpbmsu IFJlbG9jYXRpb24NCit0eXBlcyB3aGljaCB3ZXJlIGNoYW5nZWQgd2hlbiB0 cnlpbmcgdG8gYXZvaWQgUkVMIHRvIFJFTEEgY29udmVyc2lvbiBuZWVkIHRv DQorYmUgY2hhbmdlZCBiYWNrIChlLmcuIG9uIElBLTMyLCBpdCBpcyBhc3N1 bWVkIFJfMzg2X0dMT0JfREFUIHJlbG9jYXRpb25zDQorc2hvdWxkIGJlIG9u bHkgdGhvc2UgYWdhaW5zdCAuZ290IHNlY3Rpb24gYW5kIFJfMzg2XzMyIHJl bG9jYXRpb25zIGluIHRoZQ0KK3JlbWFpbmluZyBwbGFjZXMpLg0KKw0KK09u IFJFTEEgYXJjaGl0ZWN0dXJlcywgdGhlIG1lbW9yeSBwb2ludGVkIGJ5IHJf b2Zmc2V0IGZpZWxkIG9mIHRoZSByZWxvY2F0aW9ucw0KK25lZWRzIHRvIGJl IHJlaW5pdGlhbGl6ZWQgdG8gdGhlIHZhbHVlcyBzdG9yZWQgdGhlcmUgYnkg dGhlIGxpbmtlciBvcmlnaW5hbGx5Lg0KK0ZvciBwcmVsaW5rIGl0IGRvZXNu 4oCZdCBtYXR0ZXIgbXVjaCB3aGF0IHRoaXMgdmFsdWUgaXMgKGUuZy4gYWx3 YXlzIDAsIGNvcHkgb2YNCityX2FkZGVuZCwgZXRjLiksIGFzIGxvbmcgYXMg aXQgaXMgY29tcHV0YWJsZSBmcm9tIHRoZSBpbmZvcm1hdGlvbiBwcmVsaW5r IGhhcw0KK2R1cmluZyB1bmRvIG9wZXJhdGlvbi4NCisNCitbIFN1Y2ggYXMg cmVsb2NhdGlvbiB0eXBlLCByX2FkZGVuZCB2YWx1ZSwgdHlwZSwgYmluZGlu ZywgZmxhZ3Mgb3Igb3RoZXINCisgIGF0dHJpYnV0ZXMgb2YgcmVsb2NhdGlv buKAmXMgc3ltYm9sLCB3aGF0IHNlY3Rpb24gdGhlIHJlbG9jYXRpb24gcG9p bnRzIGludG8NCisgIG9yIHRoZSBvZmZzZXQgd2l0aGluIHNlY3Rpb24gaXQg cG9pbnRzIHRvLl0NCisNCitUaGUgR05VIGxpbmtlciBoYWQgdG8gYmUgY2hh bmdlZCBvbiBzZXZlcmFsIGFyY2hpdGVjdHVyZXMsIHNvIHRoYXQgaXQgc3Rv cmVzDQordGhlcmUgc3VjaCBhIHZhbHVlLCBhcyBpbiBzZXZlcmFsIHBsYWNl cyB0aGUgdmFsdWUgZS5nLiBkZXBlbmRlZCBvbiBvcmlnaW5hbA0KK2FkZGVu ZCBiZWZvcmUgZmluYWwgbGluayAod2hpY2ggaXMgbm90IGF2YWlsYWJsZSBh bnl3aGVyZSBhZnRlciBmaW5hbCBsaW5rDQordGltZSwgc2luY2Ugcl9hZGRl bmQgZmllbGQgY291bGQgYmUgYWRqdXN0ZWQgZHVyaW5nIHRoZSBmaW5hbCBs aW5rKS4gSWYgc2Vjb25kDQord29yZCBvZiAuZ290IHNlY3Rpb24gaGFzIGJl ZW4gbW9kaWZpZWQsIGl0IG5lZWRzIHRvIGJlIHJldmVydGVkIGJhY2sgdG8g dGhlDQorb3JpZ2luYWwgdmFsdWUgKG9uIG1vc3QgYXJjaGl0ZWN0dXJlcyB6 ZXJvKS4NCisNCitJbiBleGVjdXRhYmxlcywgc2VjdGlvbnMgd2hpY2ggd2Vy ZSBtb3ZlZCBkdXJpbmcgcHJlbGlua2luZyBuZWVkIHRvIGJlIHB1dA0KK2Jh Y2sgYW5kIHNlZ21lbnRzIGFkZGVkIHdoaWxlIHByZWxpbmtpbmcgbXVzdCBi ZSByZW1vdmVkLg0KKw0KK1RoZXJlIGFyZSAzIGRpZmZlcmVudCB3YXlzIGhv dyBhbiB1bmRvIG9wZXJhdGlvbiBjYW4gYmUgcGVyZm9ybWVkOg0KKw0KK+KA oiBVbmRvaW5nIGluZGl2aWR1YWwgZXhlY3V0YWJsZXMgb3Igc2hhcmVkIGxp YnJhcmllcyBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQNCisgIGxpbmUgaW4g cGxhY2UgKGkuZS4gd2hlbiB0aGUgdW5kbyBvcGVyYXRpb24gaXMgc3VjY2Vz c2Z1bCwgdGhlIHByZWxpbmtlZA0KKyAgZXhlY3V0YWJsZSBvciBsaWJyYXJ5 IGlzIGF0b21pY2FsbHkgcmVwbGFjZWQgd2l0aCB0aGUgdW5kb25lIG9iamVj dCkuDQorDQor4oCiIFdpdGggLW8gb3B0aW9uLCBvbmx5IGEgc2luZ2xlIGV4 ZWN1dGFibGUgb3Igc2hhcmVkIGxpYnJhcnkgZ2l2ZW4gb24gdGhlDQorICBj b21tYW5kIGxpbmUgaXMgdW5kb25lIGFuZCBzdG9yZWQgdG8gdGhlIGZpbGUg c3BlY2lmaWVkIGFzIC1vIG9wdGlvbuKAmXMNCisgIGFyZ3VtZW50Lg0KKw0K K+KAoiBXaXRoIC11YSBvcHRpb25zLCBwcmVsaW5rIGJ1aWxkcyBhIGxpc3Qg b2YgZXhlY3V0YWJsZXMgaW4gcGF0aHMgd3JpdHRlbiBpbg0KKyAgaXRzIGNv bmZpZyBmaWxlIChwbHVzIGRpcmVjdG9yaWVzIGFuZCBleGVjdXRhYmxlcyBv ciBsaWJyYXJpZXMgZnJvbSBjb21tYW5kDQorICBsaW5lKSBhbmQgYWxsIHNo YXJlZCBsaWJyYXJpZXMgdGhlc2UgZXhlY3V0YWJsZXMgZGVwZW5kIG9uLiBB bGwgZXhlY3V0YWJsZXMNCisgIGFuZCBsaWJyYXJpZXMgaW4gdGhlIGxpc3Qg YXJlIHRoZW4gdW5wcmVsaW5rZWQuIFRoaXMgb3B0aW9uIGlzIHVzZWQgdG8N CisgIHVucHJlbGluayB0aGUgd2hvbGUgc3lzdGVtLg0KKw0KKyAgSXQgaXMg bm90IHBlcmZlY3QgYW5kIG5lZWRzIHRvIGJlIHdvcmtlZCBvbiwgc2luY2Ug ZS5nLiBpZiBzb21lIGV4ZWN1dGFibGUNCisgIHVzZXMgc29tZSBzaGFyZWQg bGlicmFyeSB3aGljaCBubyBvdGhlciBleGVjdXRhYmxlIGxpbmtzIGFnYWlu c3QsIHRoaXMNCisgIGV4ZWN1dGFibGUgKGFuZCBzaGFyZWQgbGlicmFyeSkg aXMgcHJlbGlua2VkLCB0aGVuIHRoZSBleGVjdXRhYmxlIGlzIHJlbW92ZWQN CisgIChlLmcuIHVuaW5zdGFsbGVkKSBidXQgdGhlIHNoYXJlZCBsaWJyYXJ5 IGlzIGtlcHQsIHRoZW4gdGhlIHNoYXJlZCBsaWJyYXJ5DQorICBpcyBub3Qg dW5wcmVsaW5rZWQgdW5sZXNzIHNwZWNpZmljYWxseSBtZW50aW9uZWQgb24g dGhlIGNvbW1hbmQgbGluZS4NCisNCis9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09DQorDQorMTMgVmVyaWZpY2F0aW9uIG9mIHByZWxpbmtlZCBm aWxlcw0KKw0KK0FzIHByZWxpbmsgbmVlZHMgdG8gbW9kaWZ5IGV4ZWN1dGFi bGVzIGFuZCBzaGFyZWQgbGlicmFyaWVzIGluc3RhbGxlZCBvbiBhDQorc3lz dGVtLCBpdCBjb21wbGljYXRlcyBzeXN0ZW0gaW50ZWdyaXR5IHZlcmlmaWNh dGlvbiAoZS5nLiBycG0gLVYsIFRyaXBXaXJlKS4NCisNCitUaGVzZSBzeXN0 ZW1zIHN0b3JlIGNoZWNrc3VtcyBvZiBpbnN0YWxsZWQgZmlsZXMgaW50byBz b21lIGRhdGFiYXNlIGFuZCBkdXJpbmcNCit2ZXJpZmljYXRpb24gY29tcHV0 ZSB0aGVtIGFnYWluIGFuZCBjb21wYXJlIHRvIHRoZSB2YWx1ZXMgc3RvcmVk IGluIHRoZQ0KK2RhdGFiYXNlLiBPbiBhIHByZWxpbmtlZCBzeXN0ZW0gbW9z dCBvZiB0aGUgZXhlY3V0YWJsZXMgYW5kIHNoYXJlZCBsaWJyYXJpZXMNCit3 b3VsZCBiZSByZXBvcnRlZCBhcyBtb2RpZmllZC4NCisNCitQcmVsaW5rIG9m ZmVycyBhIHNwZWNpYWwgbW9kZSBmb3IgdGhlc2Ugc3lzdGVtcywgaW4gd2hp Y2ggaXQgdmVyaWZpZXMgdGhhdA0KK3VucHJlbGlua2luZyB0aGUgZXhlY3V0 YWJsZSBvciBzaGFyZWQgbGlicmFyeSBmb2xsb3dlZCBieSBpbW1lZGlhdGUg cHJlbGlua2luZw0KKyh3aXRoIHRoZSBzYW1lIGJhc2UgYWRkcmVzcykgY3Jl YXRlcyBiaXR3aXNlIGlkZW50aWNhbCBvdXRwdXQgd2l0aCB0aGUNCitleGVj dXRhYmxlIG9yIHNoYXJlZCBsaWJyYXJ5IHRoYXTigJlzIGJlaW5nIHZlcmlm aWVkLiBGdXJ0aGVybW9yZSwgZGVwZW5kaW5nIG9uDQorb3RoZXIgcHJlbGlu ayBvcHRpb25zLCBpdCBlaXRoZXIgd3JpdGVzIHRoZSB1bnByZWxpbmtlZCBp bWFnZSB0byBpdHMgc3RhbmRhcmQNCitvdXRwdXQgb3IgY29tcHV0ZXMgTUQ1 IG9yIFNIQTEgZGlnZXN0IGZyb20gdGhpcyB1bnByZWxpbmtlZCBpbWFnZS4N CisNCitNZXJlIHVuZG8gb3BlcmF0aW9uIHRvIGEgZmlsZSBhbmQgY2hlY2tz dW1taW5nIGl0IGlzIG5vdCBnb29kIGVub3VnaCwgc2luY2UgYW4NCitpbnRy dWRlciBjb3VsZCBoYXZlIG1vZGlmaWVkIGUuZy4gY29uZmxpY3QgZml4dXBz IG9yIG1lbW9yeSB3aGljaCByZWxvY2F0aW9ucw0KK3BvaW50IGF0LCBjaGFu Z2luZyBhIGJlaGF2aW9yIG9mIHRoZSBwcm9ncmFtIHdoaWxlIGZpbGUgYWZ0 ZXIgdW5wcmVsaW5raW5nDQord291bGQgYmUgdW5tb2RpZmllZC4NCisNCitE dXJpbmcgdmVyaWZpY2F0aW9uLCBib3RoIHByZWxpbmsgZXhlY3V0YWJsZSBh bmQgdGhlIGR5bmFtaWMgbGlua2VyIGFyZSB1c2VkLA0KK3NvIGEgcHJvcGVy IHN5c3RlbSBpbnRlZ3JpdHkgdmVyaWZpY2F0aW9uIGZpcnN0IGNoZWNrcyB3 aGV0aGVyIHByZWxpbmsNCitleGVjdXRhYmxlICh3aGljaCBpcyBzdGF0aWNh bGx5IGxpbmtlZCBmb3IgdGhpcyByZWFzb24pIGhhc27igJl0IGJlZW4gbW9k aWZpZWQsDQordGhlbiB1c2VzIHByZWxpbmsg4oCTdmVyaWZ5IHRvIHZlcmlm eSB0aGUgZHluYW1pYyBsaW5rZXIgKHdoZW4gdmVyaWZpY2F0aW5nDQorbGQu c28gdGhlIGR5bmFtaWMgbGlua2VyIGlzIG5vdCBleGVjdXRlZCkgZm9sbG93 ZWQgYnkgdmVyaWZpY2F0aW9uIG9mIG90aGVyDQorZXhlY3V0YWJsZXMgYW5k IGxpYnJhcmllcy4NCisNCitWZXJpZmljYXRpb24gcmVxdWlyZXMgYWxsIGRl cGVuZGVuY2llcyBvZiBjaGVja2VkIG9iamVjdCB0byBiZSB1bm1vZGlmaWVk DQorc2luY2UgbGFzdCBwcmVsaW5raW5nLiBJZiBzb21lIGRlcGVuZGVuY3kg aGFzIGJlZW4gY2hhbmdlZCBvciBpcyBtaXNzaW5nLA0KK3ByZWxpbmsgd2ls bCByZXBvcnQgaXQgYW5kIHJldHVybiB3aXRoIG5vbi16ZXJvIGV4aXQgc3Rh dHVzLiBUaGlzIGlzIGJlY2F1c2UNCitwcmVsaW5raW5nIGRlcGVuZHMgb24g dGhlaXIgY29udGVudCBhbmQgc28gaWYgdGhleSBhcmUgbW9kaWZpZWQsIHRo ZQ0KK2V4ZWN1dGFibGUgb3Igc2hhcmVkIGxpYnJhcnkgbWlnaHQgYmUgZGlm ZmVyZW50IHRvIG9uZSBhZnRlciB1bnByZWxpbmtpbmcNCitmb2xsb3dlZCBi eSBwcmVsaW5raW5nIGFnYWluLg0KKw0KK0luIHRoZSBmdXR1cmUsIHBlcmhh cHMgaXQgd291bGQgYmUgcG9zc2libGUgdG8gZXZlbiB2ZXJpZnkgZXhlY3V0 YWJsZXMgb3INCitzaGFyZWQgbGlicmFyaWVzIHdpdGhvdXQgdW5tb2RpZmll ZCBkZXBlbmRlbmNpZXMsIHVuZGVyIHRoZSBhc3N1bXB0aW9uIHRoYXQgaW4N CitzdWNoIGNhc2UgdGhlIHByZWxpbmsgaW5mb3JtYXRpb24gd2lsbCBub3Qg YmUgdXNlZC4gSXQgd291bGQganVzdCBuZWVkIHRvDQordmVyaWZ5IHRoYXQg bm90aGluZyBlbHNlIGJ1dCB0aGUgaW5mb3JtYXRpb24gb25seSB1c2VkIHdo ZW4gZGVwZW5kZW5jaWVzIGFyZQ0KK3VwIHRvIGRhdGUgaGFzIGNoYW5nZWQg YmV0d2VlbiB0aGUgZXhlY3V0YWJsZSBvciBsaWJyYXJ5IG9uIHRoZSBmaWxl c3lzdGVtIGFuZA0KK2ZpbGUgYWZ0ZXIgdW5wcmVsaW5rIGZvbGxvd2VkIGJ5 IHByZWxpbmsgY3ljbGUuDQorDQorVGhlIHByZWxpbmsgb3BlcmF0aW9uIHdv dWxkIG5lZWQgdG8gYmUgbW9kaWZpZWQgaW4gdGhpcyBjYXNlLCBzbyB0aGF0 IG5vDQoraW5mb3JtYXRpb24gaXMgY29sbGVjdGVkIGZyb20gdGhlIGR5bmFt aWMgbGlua2VyLCB0aGUgbGlzdCBvZiBkZXBlbmRlbmNpZXMgaXMNCithc3N1 bWVkIHRvIGJlIHRoZSBvbmUgc3RvcmVkIGluIHRoZSBleGVjdXRhYmxlIGFu ZCBleHBlY3QgaXQgdG8gaGF2ZSBpZGVudGljYWwNCitudW1iZXIgb2YgY29u ZmxpY3QgZml4dXBzLg0KKw0KKz09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0NCisNCisxNCBNZWFzdXJlbWVudHMNCisNCitUaGVyZSBhcmUgdHdv IGFyZWFzIHdoZXJlIHByZWxpbmsgY2FuIHNwZWVkIHRoaW5ncyB1cCBub3Rp Y2VhYmx5LiBUaGUgcHJpbWFyeQ0KK2lzIGNlcnRhaW5seSBzdGFydHVwIHRp bWUgb2YgYmlnIEdVSSBhcHBsaWNhdGlvbnMgd2hlcmUgdGhlIGR5bmFtaWMg bGlua2VyDQorc3BlbmRzIGZyb20gMTAwbXMgdXAgdG8gYSBmZXcgc2Vjb25k cyBiZWZvcmUgZ2l2aW5nIGNvbnRyb2wgdG8gdGhlDQorYXBwbGljYXRpb24u DQorDQorQW5vdGhlciBhcmVhIGlzIHdoZW4gbG90cyBvZiBzbWFsbCBwcm9n cmFtcyBhcmUgc3RhcnRlZCB1cCwgYnV0IHRoZWlyDQorZXhlY3V0aW9uIHRp bWUgaXMgcmF0aGVyIHNob3J0LCBzbyB0aGUgc3RhcnR1cCB0aW1lIHdoaWNo IHByZWxpbmsgb3B0aW1pemVzIGlzDQorYSBub3RpY2VhYmxlIGZyYWN0aW9u IG9mIHRoZSB0b3RhbCB0aW1lLg0KKw0KK1RoaXMgaXMgdHlwaWNhbCBmb3Ig c2hlbGwgc2NyaXB0aW5nLg0KKw0KK0ZpcnN0IG51bWJlcnMgYXJlIGZyb20g bG1iZW5jaCBiZW5jaG1hcmssIHZlcnNpb24gMy4wLWEzLiBNb3N0IG9mIHRo ZQ0KK2JlbmNobWFya3MgaW4gbG1iZW5jaCBzdWl0ZSBtZWFzdXJlIGtlcm5l bCBzcGVlZCwgc28gaXQgZG9lc27igJl0IG1hdHRlciBtdWNoDQord2hldGhl ciBwcmVsaW5rIGlzIHVzZWQgb3Igbm90LiBPbmx5IGluIGxhdF9wcm9jIGJl bmNobWFyayBwcmVsaW5rIHNob3dzIHVwDQordmlzaWJseS4gVGhpcyBiZW5j aG1hcmsgbWVhc3VyZXMgMyBkaWZmZXJlbnQgdGhpbmdzOg0KKw0KK+KAoiBm b3JrIHByb2MsIHdoaWNoIGlzIGZvcmsoKSBmb2xsb3dlZCBieSBpbW1lZGlh dGUgZXhpdCgxKSBpbiB0aGUgY2hpbGQgYW5kDQorICB3YWl0KDApIGluIHRo ZSBwYXJlbnQuIFRoZSByZXN1bHRzIGFyZSAoYXMgZXhwZWN0ZWQpIGFib3V0 IHRoZSBzYW1lIGJldHdlZW4NCisgIHVucHJlbGlua2VkIGFuZCBwcmVsaW5r ZWQgc3lzdGVtcy4NCisNCivigKIgZXhlYyBwcm9jLCBpLmUuIGZvcmsoKSBm b2xsb3dlZCBieSBpbW1lZGlhdGUgY2xvc2UoMSkgYW5kIGV4ZWN2ZSgpIG9m IGENCisgIHNpbXBsZSBoZWxsbyB3b3JsZCBwcm9ncmFtICh0aGlzIHByb2dy YW0gaXMgY29tcGlsZWQgYW5kIGxpbmtlZCBkdXJpbmcgdGhlDQorICBiZW5j aG1hcmsgaW50byBhIHRlbXBvcmFyeSBkaXJlY3RvcnkgYW5kIGlzIG5ldmVy IHByZWxpbmtlZCkuIFRoZSBudW1iZXJzDQorICBhcmUgMTYwwrVzIHRvIDIw MMK1cyBiZXR0ZXIgb24gcHJlbGlua2VkIHN5c3RlbXMsIGJlY2F1c2UgdGhl cmUgaXMgbm8NCisgIHJlbG9jYXRpb24gcHJvY2Vzc2luZyBuZWVkZWQgaW5p dGlhbGx5IGluIHRoZSBkeW5hbWljIGxpbmtlciBhbmQgYmVjYXVzZSBhbGwN CisgIHJlbGF0aXZlIHJlbG9jYXRpb25zIGluIGxpYmMuc28uNiBjYW4gYmUg c2tpcHBlZC4NCisNCivigKIgc2ggcHJvYywgaS5lLiBmb3JrKCkgZm9sbG93 ZWQgYnkgaW1tZWRpYXRlIGNsb3NlKDEpIGFuZCBleGVjbHAo4oCdL2Jpbi9z aOKAnSwNCisgIOKAnXNo4oCdLCDigJ0tY+KAnSwg4oCdL3RtcC9oZWxsb+KA nSwgMCkuIEFsdGhvdWdoIHRoZSBoZWxsbyB3b3JsZCBwcm9ncmFtIGlzIG5v dA0KKyAgcHJlbGlua2VkIGluIHRoaXMgY2FzZSBlaXRoZXIsIHRoZSBzaGVs bCBpcywgc28gb3V0IG9mIHRoZSA5MDDCtXMgdG8gMTAwMMK1cw0KKyAgc3Bl ZWR1cCBsZXNzIHRoYW4gMjAwwrVzIGNhbiBiZSBhY2NvdW50ZWQgb24gdGhl IHNwZWVkIHVwIG9mIHRoZSBoZWxsbyB3b3JsZA0KKyAgcHJvZ3JhbSBhcyBp biBleGVjIHByb2MgYmVuY2htYXJrIGFuZCB0aGUgcmVzdCB0byB0aGUgc3Bl ZWR1cCBvZiBzaGVsbA0KKyAgc3RhcnR1cC4NCisNCitGaXJzdCA0IHJvd3Mg YXJlIGZyb20gcnVubmluZyB0aGUgYmVuY2htYXJrIG9uIGEgZnVsbHkgdW5w cmVsaW5rZWQgc3lzdGVtLA0KK3RoZSBsYXN0IDQgcm93cyBvbiB0aGUgc2Ft ZSBzeXN0ZW0sIGJ1dCBmdWxseSBwcmVsaW5rZWQuDQorDQorTE1CRU5DSCAz LjAgU1VNTUFSWQ0KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKEFscGhhIHNvZnR3YXJlLCBkbyBub3QgZGlzdHJpYnV0ZSkNCisNCitQ cm9jZXNzb3IsIFByb2Nlc3NlcyAtIHRpbWVzIGluIG1pY3Jvc2Vjb25kcyAt IHNtYWxsZXIgaXMgYmV0dGVyDQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tDQorSG9zdCBPUyAgICAgICAgICAgTWh6ICBudWxsIG51bGwgICAgICBv cGVuIHNsY3Qgc2lnICBzaWcgIGZvcmsgZXhlYyBzaA0KKyAgICAgICAgICAg ICAgICAgIGNhbGwgSS9PICBzdGF0IGNsb3MgVENQICBpbnN0IGhuZGwgcHJv YyBwcm9jIHByb2MNCistLS0tIC0tLS0tLS0tLS0tLSAtLS0tIC0tLS0gLS0t LSAtLS0tIC0tLS0gLS0tLSAtLS0tIC0tLS0gLS0tLSAtLS0tIC0tLQ0KK3Bv cmsgTGludXggMi40LjIyIDY1MSAgMC41MyAwLjk3IDYuMjAgOC4xMCA0MS4y IDEuNDQgNC4zMCAyNzYuIDE0OTcgNTQwMw0KK3BvcmsgTGludXggMi40LjIy IDY1MSAgMC41MyAwLjk1IDYuMTQgNy45MSAzNy44IDEuNDMgNC4zNCAyNzQu IDE0ODYgNTM5MQ0KK3BvcmsgTGludXggMi40LjIyIDY1MSAgMC41NiAwLjk0 IDYuMTggOC4wOSA0My40IDEuNDEgNC4zMCAyNTEuIDE1MDcgNTQyMw0KK3Bv cmsgTGludXggMi40LjIyIDY1MSAgMC41MyAwLjk0IDYuMTIgOC4wOSA0MS4w IDEuNDMgNC40MCAyNTYuIDE0OTcgNTM4NQ0KK3BvcmsgTGludXggMi40LjIy IDY1MSAgMC41NiAwLjk0IDUuNzkgNy41OCAzOS4xIDEuNDEgNC4zMCAyNzEu IDEzMTkgNDQ2MA0KK3BvcmsgTGludXggMi40LjIyIDY1MSAgMC41NiAwLjky IDUuNzYgNy40MCAzOC45IDEuNDEgNC4zMCAyNTMuIDEzMDQgNDQxNw0KK3Bv cmsgTGludXggMi40LjIyIDY1MSAgMC41NiAwLjk1IDYuMjAgNy44MyAzNy43 IDEuNDEgNC4zNyAyNDguIDEzMjMgNDQ4MQ0KK3BvcmsgTGludXggMi40LjIy IDY1MSAgMC41NiAxLjAxIDYuMDQgNy43NyAzNy45IDEuNDMgNC4zMiAyNTYu IDEzMjQgNDQ1Nw0KKw0KKw0KK2xtYmVuY2ggcmVzdWx0cyB3aXRob3V0IGFu ZCB3aXRoIHByZWxpbmtpbmcNCitCZWxvdyBpcyBhIHNhbXBsZSB0aW1pbmcg b2YgYSAyMzlLIGxvbmcgY29uZmlndXJlIHNoZWxsIHNjcmlwdCBmcm9tIEdD QyBvbg0KK2JvdGggdW5wcmVsaW5rZWQgYW5kIHByZWxpbmtlZCBzeXN0ZW0u IFByZXBhcmF0aW9uIHN0ZXAgd2FzIGZvbGxvd2luZzoNCisNCisgICQgY2Q7 DQorICAkIGN2cyAtZCA6cHNlcnZlcjphbm9uY3ZzQHN1YnZlcnNpb25zLmdu dS5vcmc6L2N2c3Jvb3QvZ2NjIGxvZ2luDQorICAjIEVtcHR5IHBhc3N3b3Jk DQorICAkIGN2cyAtZCA6cHNlcnZlcjphbm9uY3ZzQHN1YnZlcnNpb25zLmdu dS5vcmc6L2N2c3Jvb3QvZ2NjIC16MyBjbyBcDQorICAgIC1EMjAwMzExMDMg Z2NjDQorICAkIG1rZGlyIH4vZ2NjL29iag0KKyAgJCBjZCB+L2djYy9vYmo7 DQorICAkIC4uL2NvbmZpZ3VyZSBpMzg2LXJlZGhhdC1saW51eDsgbWFrZSBj b25maWd1cmUtZ2NjDQorDQorUHJlcGFyYXRpb24gc2NyaXB0IGZvciBzaGVs bCBzY3JpcHQgdGVzdHMNCitPbiBhbiB1bnByZWxpbmtlZCBzeXN0ZW0sIHRo ZSByZXN1bHRzIHdlcmU6DQorDQorICAkIGNkIH4vZ2NjL29iai9nY2MNCisg ICQgZm9yIGkgaW4gMSAyOyBkbyAuL2NvbmZpZy5zdGF0dXMgLS1yZWNoZWNr ID4gL2Rldi9udWxsIDI+JjE7IGRvbmUNCisgICQgZm9yIGkgaW4gMSAyIDMg NDsgZG8gdGltZSAuL2NvbmZpZy5zdGF0dXMgLS1yZWNoZWNrID4gL2Rldi9u dWxsIDI+JjE7IGRvbmUNCisgIHJlYWwgMG00LjQzNnMNCisgIHVzZXIgMG0x LjczMHMNCisgIHN5cyAgMG0xLjI2MHMNCisNCisgIHJlYWwgMG00LjQwOXMN CisgIHVzZXIgMG0xLjY2MHMNCisgIHN5cyAgMG0xLjM0MHMNCisNCisgIHJl YWwgMG00LjQzMXMNCisgIHVzZXIgMG0xLjgxMHMNCisgIHN5cyAgMG0xLjMw MHMNCisNCisgIHJlYWwgMG00LjQzMnMNCisgIHVzZXIgMG0xLjY3MHMNCisg IHN5cyAgMG0xLjIxMHMNCisNCitTaGVsbCBzY3JpcHQgdGVzdCByZXN1bHRz IG9uIHVucHJlbGlua2VkIHN5c3RlbQ0KK2FuZCBvbiBhIGZ1bGx5IHByZWxp bmtlZCBzeXN0ZW06DQorDQorICAkIGNkIH4vZ2NjL29iai9nY2MNCisgICQg Zm9yIGkgaW4gMSAyOyBkbyAuL2NvbmZpZy5zdGF0dXMgLS1yZWNoZWNrID4g L2Rldi9udWxsIDI+JjE7IGRvbmUNCisgICQgZm9yIGkgaW4gMSAyIDMgNDsg ZG8gdGltZSAuL2NvbmZpZy5zdGF0dXMgLS1yZWNoZWNrID4gL2Rldi9udWxs IDI+JjE7IGRvbmUNCisNCisgIHJlYWwgMG00LjEyNnMNCisgIHVzZXIgMG0x LjU5MHMNCisgIHN5cyAgMG0xLjI0MHMNCisNCisgIHJlYWwgMG00LjE1MXMN CisgIHVzZXIgMG0xLjYyMHMNCisgIHN5cyAgMG0xLjIzMHMNCisNCisgIHJl YWwgMG00LjE2MXMNCisgIHVzZXIgMG0xLjYwMHMNCisgIHN5cyAgMG0xLjE5 MHMNCisNCisgIHJlYWwgMG00LjEyMnMNCisgIHVzZXIgMG0xLjU3MHMNCisg IHN5cyAgMG0xLjIzMHMNCisNCitTaGVsbCBzY3JpcHQgdGVzdCByZXN1bHRz IG9uIHByZWxpbmtlZCBzeXN0ZW0NCisNCitOb3cgdGltaW5nIG9mIGEgZmV3 IGJpZyBHVUkgcHJvZ3JhbXMuIEFsbCB0aW1pbmdzIHdlcmUgZG9uZSB3aXRo b3V0IFggc2VydmVyDQorcnVubmluZyBhbmQgd2l0aCBESVNQTEFZIGVudmly b25tZW50IHZhcmlhYmxlIG5vdCBzZXQgKHNvIHRoYXQgd2hlbiBjb250cm9s IGlzDQordHJhbnNmZXJlZCB0byB0aGUgYXBwbGljYXRpb24sIGl0IHZlcnkg c29vbiBmaW5kcyBvdXQgdGhlcmUgaXMgbm8gWCBzZXJ2ZXIgaXQNCitjYW4g dGFsayB0byBhbmQgYmFpbCBvdXQpLiBUaGUgbWVhc3VyZW1lbnRzIGFyZSBk b25lIGJ5IHRoZSBkeW5hbWljIGxpbmtlciBpbg0KK3RpY2tzIG9uIGEgNjUx TUh6IGR1YWwgUGVudGl1bSBJSUkgbWFjaGluZSwgaS5lLiB0aWNrcyBoYXZl IHRvIGJlIGRpdmlkZWQgYnkNCis2NTEwMDAwMDAgdG8gZ2V0IHRpbWVzIGlu IHNlY29uZHMuDQorDQorRWFjaCBhcHBsaWNhdGlvbiBoYXMgYmVlbiBydW4g NCB0aW1lcyBhbmQgdGhlIHJlc3VsdHMgd2l0aCBzbWFsbGVzdCB0b3RhbCB0 aW1lDQorc3BlbnQgaW4gdGhlIGR5bmFtaWMgbGlua2VyIHdhcyBjaG9zZW4u DQorDQorRXBpcGhhbnkgV1dXIGJyb3dzZXIgYW5kIEV2b2x1dGlvbiBtYWls IGNsaWVudCB3ZXJlIGNob3NlbiBhcyBleGFtcGxlcyBvZiBHdGsrDQorYXBw bGljYXRpb25zICh0eXBpY2FsbHkgdGhleSB1c2UgcmVhbGx5IG1hbnkgc2hh cmVkIGxpYnJhcmllcywgYnV0IG1hbnkgb2YNCit0aGVtIGFyZSBxdWl0ZSBz bWFsbCwgdGhlcmUgYXJlbuKAmXQgcmVhbGx5IG1hbnkgcmVsb2NhdGlvbnMg bm9yIGNvbmZsaWN0IGZpeHVwcw0KK2FuZCBtb3N0IG9mIHRoZSBsaWJyYXJp ZXMgYXJlIHdyaXR0ZW4gaW4gQykgYW5kIEtvbnF1ZXJvciBXV1cgYnJvd3Nl ciBhbmQNCitLV29yZCB3b3JkIHByb2Nlc3NvciB3ZXJlIGNob3NlbiBhcyBl eGFtcGxlcyBvZiBLREUgYXBwbGljYXRpb25zICh0eXBpY2FsbHkNCit0aGV5 IHVzZSBzbGlnaHRseSBmZXdlciBzaGFyZWQgbGlicmFyaWVzLCB0aG91Z2gg c3RpbGwgYSBsb3QsIG1vc3Qgb2YgdGhlDQorc2hhcmVkIGxpYnJhcmllcyBh cmUgd3JpdHRlbiBpbiBDKyssIGhhdmUgbWFueSByZWxvY2F0aW9ucyBhbmQg Y2F1c2UgbWFueQ0KK2NvbmZsaWN0IGZpeHVwcywgZXNwZWNpYWxseSB3aXRo b3V0IEMrKyBjb25mbGljdCBmaXh1cCBvcHRpbWl6YXRpb25zIGluDQorcHJl bGluaykuDQorDQorT24gbm9uLXByZWxpbmtlZCBzeXN0ZW0sIHRoZSB0aW1p bmdzIGFyZSBkb25lIHdpdGggbGF6eSBiaW5kaW5nLCBpLmUuIHdpdGhvdXQN CitMRF9CSU5EX05PVz0xIHNldCBpbiB0aGUgZW52aXJvbm1lbnQuIFRoaXMg aXMgYmVjYXVzZSB0aGF04oCZcyBob3cgcGVvcGxlDQorZ2VuZXJhbGx5IHJ1 biBwcm9ncmFtcywgb24gdGhlIG90aGVyIHNpZGUgaXQgaXMgbm90IGV4YWN0 IGFwcGxlcyB0byBhcHBsZXMNCitjb21wYXJpc29uLCBzaW5jZSBvbiBwcmVs aW5rZWQgc3lzdGVtIHRoZXJlIGlzIG5vIGxhenkgYmluZGluZyB3aXRoIHRo ZQ0KK2V4Y2VwdGlvbiBvZiBzaGFyZWQgbGlicmFyaWVzIGxvYWRlZCB0aHJv dWdoIGRsb3Blbi4NCisNCitTbyB3aGVuIGNvbnRyb2wgaXMgcGFzc2VkIHRv IHRoZSBhcHBsaWNhdGlvbiwgcHJlbGlua2VkIHByb2dyYW1zIHNob3VsZCBi ZQ0KK3NsaWdodGx5IGZhc3RlciBmb3IgYSB3aGlsZSBzaW5jZSBub24tcHJl bGlua2VkIHByb2dyYW1zIHdpbGwgaGF2ZSB0byBkbw0KK3N5bWJvbCBsb29r dXBzIGFuZCBwcm9jZXNzaW5nIHJlbG9jYXRpb25zIChhbmQgb24gdmFyaW91 cyBhcmNoaXRlY3R1cmVzDQorZmx1c2hpbmcgaW5zdHJ1Y3Rpb24gY2FjaGVz KSB3aGVuZXZlciB0aGV5IGNhbGwgc29tZSBmdW5jdGlvbiB0aGV5IGhhdmVu 4oCZdA0KK2NhbGxlZCBiZWZvcmUgaW4gcGFydGljdWxhciBzaGFyZWQgbGli cmFyeSBvciBpbiB0aGUgZXhlY3V0YWJsZS4NCisNCisgICQgbGRkIOKAmHdo aWNoIGVwaXBoYW55LWJpbuKAmCB8IHdjIC1sDQorICA2NA0KKyAgJCAjIFVu cHJlbGlua2VkIHN5c3RlbQ0KKyAgJCBMRF9ERUJVRz1zdGF0aXN0aWNzIGVw aXBoYW55LWJpbiAyPiYxIHwgc2VkIOKAmXMvXiAqLy/igJkNCisgIDE4OTYw OiBydW50aW1lIGxpbmtlciBzdGF0aXN0aWNzOg0KKyAgMTg5NjA6DQorICAx ODk2MDogICB0b3RhbCBzdGFydHVwIHRpbWUgaW4gZHluYW1pYyBsb2FkZXI6 IDY3MzM2NTkzIGNsb2NrIGN5Y2xlcw0KKyAgMTg5NjA6ICAgICAgICAgICAg IHRpbWUgbmVlZGVkIGZvciByZWxvY2F0aW9uOiA1ODExOTk4MyBjbG9jayBj eWNsZXMgKDg2LjMlKQ0KKyAgMTg5NjA6ICAgICAgICAgICAgICAgICAgbnVt YmVyIG9mIHJlbG9jYXRpb25zOiA2OTk5DQorICAxODk2MDogICAgICAgbnVt YmVyIG9mIHJlbG9jYXRpb25zIGZyb20gY2FjaGU6IDQ3NzANCisgIDE4OTYw OiAgICAgICAgIG51bWJlciBvZiByZWxhdGl2ZSByZWxvY2F0aW9uczogMzE0 OTQNCisgIDE4OTYwOiAgICAgICAgICAgIHRpbWUgbmVlZGVkIHRvIGxvYWQg b2JqZWN0czogODY5NjEwNCBjbG9jayBjeWNsZXMgKDEyLjklKQ0KKyAgICAo ZXBpcGhhbnktYmluOjE4OTYwKTogR3RrLVdBUk5JTkcgKio6IGNhbm5vdCBv cGVuIGRpc3BsYXk6DQorICAxODk2MDogcnVudGltZSBsaW5rZXIgc3RhdGlz dGljczogDQorICAxODk2MDogDQorICAxODk2MDogICAgICAgICAgICBmaW5h bCBudW1iZXIgb2YgcmVsb2NhdGlvbnM6IDc2OTINCisgIDE4OTYwOiBmaW5h bCBudW1iZXIgb2YgcmVsb2NhdGlvbnMgZnJvbSBjYWNoZTogNDc3MA0KKw0K KyAgJCAjIFByZWxpbmtlZCBzeXN0ZW0NCisgICQgTERfREVCVUc9c3RhdGlz dGljcyBlcGlwaGFueS1iaW4gMj4mMSB8IHNlZCDigJlzL14gKi8v4oCZDQor ICAyNTY5NzogcnVudGltZSBsaW5rZXIgc3RhdGlzdGljczoNCisgIDI1Njk3 OiANCisgIDI1Njk3OiAgIHRvdGFsIHN0YXJ0dXAgdGltZSBpbiBkeW5hbWlj IGxvYWRlcjogNzMxMzcyMSBjbG9jayBjeWNsZXMNCisgIDI1Njk3OiAgICAg ICAgICAgICB0aW1lIG5lZWRlZCBmb3IgcmVsb2NhdGlvbjogNTY1NjgwIGNs b2NrIGN5Y2xlcyAoNy43JSkNCisgIDI1Njk3OiAgICAgICAgICAgICAgICAg IG51bWJlciBvZiByZWxvY2F0aW9uczogMA0KKyAgMjU2OTc6ICAgICAgIG51 bWJlciBvZiByZWxvY2F0aW9ucyBmcm9tIGNhY2hlOiAxMjA1DQorICAyNTY5 NzogICAgICAgICBudW1iZXIgb2YgcmVsYXRpdmUgcmVsb2NhdGlvbnM6IDAN CisgIDI1Njk3OiAgICAgICAgICAgIHRpbWUgbmVlZGVkIHRvIGxvYWQgb2Jq ZWN0czogNjE3OTQ2NyBjbG9jayBjeWNsZXMgKDg0LjQlKQ0KKyAgICAoZXBp cGhhbnktYmluOjI1Njk3KTogR3RrLVdBUk5JTkcgKio6IGNhbm5vdCBvcGVu IGRpc3BsYXk6DQorICAyNTY5NzogcnVudGltZSBsaW5rZXIgc3RhdGlzdGlj czoNCisgIDI1Njk3OiANCisgIDI1Njk3OiAgICAgICAgICAgIGZpbmFsIG51 bWJlciBvZiByZWxvY2F0aW9uczogMzENCisgIDI1Njk3OiBmaW5hbCBudW1i ZXIgb2YgcmVsb2NhdGlvbnMgZnJvbSBjYWNoZTogMTIwNQ0KKw0KKyAgJCBs ZGQg4oCYd2hpY2ggZXZvbHV0aW9u4oCYIHwgd2MgLWwNCisgIDY4DQorICAk ICMgVW5wcmVsaW5rZWQgc3lzdGVtDQorICAkIExEX0RFQlVHPXN0YXRpc3Rp Y3MgZXZvbHV0aW9uIDI+JjEgfCBzZWQg4oCZcy9eICovL+KAmQ0KKzE5MDQy OiBydW50aW1lIGxpbmtlciBzdGF0aXN0aWNzOg0KKzE5MDQyOiANCisxOTA0 MjogICB0b3RhbCBzdGFydHVwIHRpbWUgaW4gZHluYW1pYyBsb2FkZXI6IDU0 MzgyMTIyIGNsb2NrIGN5Y2xlcw0KKzE5MDQyOiAgICAgICAgICAgICB0aW1l IG5lZWRlZCBmb3IgcmVsb2NhdGlvbjogNDM0MDMxOTAgY2xvY2sgY3ljbGVz ICg3OS44JSkNCisxOTA0MjogICAgICAgICAgICAgICAgICBudW1iZXIgb2Yg cmVsb2NhdGlvbnM6IDM0NTINCisxOTA0MjogICAgICAgbnVtYmVyIG9mIHJl bG9jYXRpb25zIGZyb20gY2FjaGU6IDI4ODUNCisxOTA0MjogICAgICAgICBu dW1iZXIgb2YgcmVsYXRpdmUgcmVsb2NhdGlvbnM6IDM0OTU3DQorMTkwNDI6 ICAgICAgICAgICAgdGltZSBuZWVkZWQgdG8gbG9hZCBvYmplY3RzOiAxMDQ1 MDE0MiBjbG9jayBjeWNsZXMgKDE5LjIlKQ0KKyhldm9sdXRpb246MTkwNDIp OiBHdGstV0FSTklORyAqKjogY2Fubm90IG9wZW4gZGlzcGxheToNCisxOTA0 MjogcnVudGltZSBsaW5rZXIgc3RhdGlzdGljczoNCisxOTA0MjogDQorMTkw NDI6ICAgICAgICAgICAgZmluYWwgbnVtYmVyIG9mIHJlbG9jYXRpb25zOiA0 MDc1DQorMTkwNDI6IGZpbmFsIG51bWJlciBvZiByZWxvY2F0aW9ucyBmcm9t IGNhY2hlOiAyODg1DQorDQorICAkICMgUHJlbGlua2VkIHN5c3RlbQ0KKyAg JCBMRF9ERUJVRz1zdGF0aXN0aWNzIGV2b2x1dGlvbiAyPiYxIHwgc2VkIOKA mXMvXiAqLy/igJkNCisyNTcyMzogcnVudGltZSBsaW5rZXIgc3RhdGlzdGlj czoNCisyNTcyMzogDQorMjU3MjM6ICAgdG90YWwgc3RhcnR1cCB0aW1lIGlu IGR5bmFtaWMgbG9hZGVyOiA5MTc2MTQwIGNsb2NrIGN5Y2xlcw0KKzI1NzIz OiAgICAgICAgICAgICB0aW1lIG5lZWRlZCBmb3IgcmVsb2NhdGlvbjogMjAz NzgzIGNsb2NrIGN5Y2xlcyAoMi4yJSkNCisyNTcyMzogICAgICAgICAgICAg ICAgICBudW1iZXIgb2YgcmVsb2NhdGlvbnM6IDANCisyNTcyMzogICAgICAg bnVtYmVyIG9mIHJlbG9jYXRpb25zIGZyb20gY2FjaGU6IDUyNQ0KKzI1NzIz OiAgICAgICAgIG51bWJlciBvZiByZWxhdGl2ZSByZWxvY2F0aW9uczogMA0K KzI1NzIzOiAgICAgICAgICAgIHRpbWUgbmVlZGVkIHRvIGxvYWQgb2JqZWN0 czogODQwNTE1NyBjbG9jayBjeWNsZXMgKDkxLjUlKQ0KKyhldm9sdXRpb246 MjU3MjMpOiBHdGstV0FSTklORyAqKjogY2Fubm90IG9wZW4gZGlzcGxheToN CisyNTcyMzogcnVudGltZSBsaW5rZXIgc3RhdGlzdGljczoNCisyNTcyMzog DQorMjU3MjM6ICAgICAgICAgICAgZmluYWwgbnVtYmVyIG9mIHJlbG9jYXRp b25zOiAzMQ0KKzI1NzIzOiBmaW5hbCBudW1iZXIgb2YgcmVsb2NhdGlvbnMg ZnJvbSBjYWNoZTogNTI1DQorDQorICAkIGxkZCDigJh3aGljaCBrb25xdWVy b3LigJggfCB3YyAtbA0KKyAgMzcNCisgICQgIyBVbnByZWxpbmtlZCBzeXN0 ZW0NCisgICQgTERfREVCVUc9c3RhdGlzdGljcyBrb25xdWVyb3IgMj4mMSB8 IHNlZCDigJlzL14gKi8v4oCZDQorMTg5Nzk6IHJ1bnRpbWUgbGlua2VyIHN0 YXRpc3RpY3M6DQorMTg5Nzk6IA0KKzE4OTc5OiAgIHRvdGFsIHN0YXJ0dXAg dGltZSBpbiBkeW5hbWljIGxvYWRlcjogMTMxOTg1NzAzIGNsb2NrIGN5Y2xl cw0KKzE4OTc5OiAgICAgICAgICAgICB0aW1lIG5lZWRlZCBmb3IgcmVsb2Nh dGlvbjogMTI3MzQxMDc3IGNsb2NrIGN5Y2xlcyAoOTYuNCUpDQorMTg5Nzk6 ICAgICAgICAgICAgICAgICAgbnVtYmVyIG9mIHJlbG9jYXRpb25zOiAyNTQ3 Mw0KKzE4OTc5OiAgICAgICBudW1iZXIgb2YgcmVsb2NhdGlvbnMgZnJvbSBj YWNoZTogNTM1OTQNCisxODk3OTogICAgICAgICBudW1iZXIgb2YgcmVsYXRp dmUgcmVsb2NhdGlvbnM6IDMxMTcxDQorMTg5Nzk6ICAgICAgICAgICAgdGlt ZSBuZWVkZWQgdG8gbG9hZCBvYmplY3RzOiA0MzE4ODAzIGNsb2NrIGN5Y2xl cyAoMy4yJSkNCitrb25xdWVyb3I6IGNhbm5vdCBjb25uZWN0IHRvIFggc2Vy dmVyDQorMTg5Nzk6IHJ1bnRpbWUgbGlua2VyIHN0YXRpc3RpY3M6DQorMTg5 Nzk6IA0KKzE4OTc5OiAgICAgICAgICAgIGZpbmFsIG51bWJlciBvZiByZWxv Y2F0aW9uczogMjU3NTkNCisxODk3OTogZmluYWwgbnVtYmVyIG9mIHJlbG9j YXRpb25zIGZyb20gY2FjaGU6IDUzNTk0DQorDQorICAkICMgUHJlbGlua2Vk IHN5c3RlbQ0KKyAgJCBMRF9ERUJVRz1zdGF0aXN0aWNzIGtvbnF1ZXJvciAy PiYxIHwgc2VkIOKAmXMvXiAqLy/igJkNCisyNTczMzogcnVudGltZSBsaW5r ZXIgc3RhdGlzdGljczoNCisyNTczMzogDQorMjU3MzM6ICAgdG90YWwgc3Rh cnR1cCB0aW1lIGluIGR5bmFtaWMgbG9hZGVyOiA1NTMzNjk2IGNsb2NrIGN5 Y2xlcw0KKzI1NzMzOiAgICAgICAgICAgICB0aW1lIG5lZWRlZCBmb3IgcmVs b2NhdGlvbjogMTk0MTQ4OSBjbG9jayBjeWNsZXMgKDM1LjAlKQ0KKzI1NzMz OiAgICAgICAgICAgICAgICAgIG51bWJlciBvZiByZWxvY2F0aW9uczogMA0K KzI1NzMzOiAgICAgICBudW1iZXIgb2YgcmVsb2NhdGlvbnMgZnJvbSBjYWNo ZTogMjA2Ng0KKzI1NzMzOiAgICAgICAgIG51bWJlciBvZiByZWxhdGl2ZSBy ZWxvY2F0aW9uczogMA0KKzI1NzMzOiAgICAgICAgICAgIHRpbWUgbmVlZGVk IHRvIGxvYWQgb2JqZWN0czogMzIxNzczNiBjbG9jayBjeWNsZXMgKDU4LjEl KQ0KK2tvbnF1ZXJvcjogY2Fubm90IGNvbm5lY3QgdG8gWCBzZXJ2ZXINCisy NTczMzogcnVudGltZSBsaW5rZXIgc3RhdGlzdGljczoNCisyNTczMzogDQor MjU3MzM6ICAgICAgICAgICAgZmluYWwgbnVtYmVyIG9mIHJlbG9jYXRpb25z OiAwDQorMjU3MzM6IGZpbmFsIG51bWJlciBvZiByZWxvY2F0aW9ucyBmcm9t IGNhY2hlOiAyMDY2DQorDQorICAkIGxkZCDigJh3aGljaCBrd29yZOKAmCB8 IHdjIC1sDQorICA0MA0KKyAgJCAjIFVucHJlbGlua2VkIHN5c3RlbQ0KKyAg JCBMRF9ERUJVRz1zdGF0aXN0aWNzIGt3b3JkIDI+JjEgfCBzZWQg4oCZcy9e ICovL+KAmQ0KKzE5MDY1OiBydW50aW1lIGxpbmtlciBzdGF0aXN0aWNzOg0K KzE5MDY1OiANCisxOTA2NTogICB0b3RhbCBzdGFydHVwIHRpbWUgaW4gZHlu YW1pYyBsb2FkZXI6IDE1MzY4NDU5MSBjbG9jayBjeWNsZXMNCisxOTA2NTog ICAgICAgICAgICAgdGltZSBuZWVkZWQgZm9yIHJlbG9jYXRpb246IDE0ODI1 NTI5NCBjbG9jayBjeWNsZXMgKDk2LjQlKQ0KKzE5MDY1OiAgICAgICAgICAg ICAgICAgIG51bWJlciBvZiByZWxvY2F0aW9uczogMjYyMzENCisxOTA2NTog ICAgICAgbnVtYmVyIG9mIHJlbG9jYXRpb25zIGZyb20gY2FjaGU6IDU1ODMz DQorMTkwNjU6ICAgICAgICAgbnVtYmVyIG9mIHJlbGF0aXZlIHJlbG9jYXRp b25zOiAzMDY2MA0KKzE5MDY1OiAgICAgICAgICAgIHRpbWUgbmVlZGVkIHRv IGxvYWQgb2JqZWN0czogNTA2ODc0NiBjbG9jayBjeWNsZXMgKDMuMiUpDQor a3dvcmQ6IGNhbm5vdCBjb25uZWN0IHRvIFggc2VydmVyDQorMTkwNjU6IHJ1 bnRpbWUgbGlua2VyIHN0YXRpc3RpY3M6DQorMTkwNjU6IA0KKzE5MDY1OiAg ICAgICAgICAgIGZpbmFsIG51bWJlciBvZiByZWxvY2F0aW9uczogMjY1MjgN CisxOTA2NTogZmluYWwgbnVtYmVyIG9mIHJlbG9jYXRpb25zIGZyb20gY2Fj aGU6IDU1ODMzDQorDQorICAkICMgUHJlbGlua2VkIHN5c3RlbQ0KKyAgJCBM RF9ERUJVRz1zdGF0aXN0aWNzIGt3b3JkIDI+JjEgfCBzZWQg4oCZcy9eICov L+KAmQ0KKzI1NzQ5OiBydW50aW1lIGxpbmtlciBzdGF0aXN0aWNzOg0KKzI1 NzQ5OiANCisyNTc0OTogICB0b3RhbCBzdGFydHVwIHRpbWUgaW4gZHluYW1p YyBsb2FkZXI6IDY1MTY2MzUgY2xvY2sgY3ljbGVzDQorMjU3NDk6ICAgICAg ICAgICAgIHRpbWUgbmVlZGVkIGZvciByZWxvY2F0aW9uOiAyMTA2ODU2IGNs b2NrIGN5Y2xlcyAoMzIuMyUpDQorMjU3NDk6ICAgICAgICAgICAgICAgICAg bnVtYmVyIG9mIHJlbG9jYXRpb25zOiAwDQorMjU3NDk6ICAgICAgIG51bWJl ciBvZiByZWxvY2F0aW9ucyBmcm9tIGNhY2hlOiAyMTMwDQorMjU3NDk6ICAg ICAgICAgbnVtYmVyIG9mIHJlbGF0aXZlIHJlbG9jYXRpb25zOiAwDQorMjU3 NDk6ICAgICAgICAgICAgdGltZSBuZWVkZWQgdG8gbG9hZCBvYmplY3RzOiA0 MDA4NTg1IGNsb2NrIGN5Y2xlcyAoNjEuNSUpDQora3dvcmQ6IGNhbm5vdCBj b25uZWN0IHRvIFggc2VydmVyDQorMjU3NDk6IHJ1bnRpbWUgbGlua2VyIHN0 YXRpc3RpY3M6DQorMjU3NDk6IA0KKzI1NzQ5OiAgICAgICAgICAgIGZpbmFs IG51bWJlciBvZiByZWxvY2F0aW9uczogMA0KKzI1NzQ5OiBmaW5hbCBudW1i ZXIgb2YgcmVsb2NhdGlvbnMgZnJvbSBjYWNoZTogMjEzMA0KKw0KKw0KK0R5 bmFtaWMgbGlua2VyIHN0YXRpc3RpY3MgZm9yIHVucHJlbGlua2VkIGFuZCBw cmVsaW5rZWQgR1VJIHByb2dyYW1zIEluIHRoZQ0KK2Nhc2Ugb2YgYWJvdmUg bWVudGlvbmVkIEd0aysgYXBwbGljYXRpb25zLCB0aGUgb3JpZ2luYWwgc3Rh cnR1cCB0aW1lIHNwZW50IGluDQordGhlIGR5bmFtaWMgbGlua2VyIGRlY3Jl YXNlZCBpbnRvIDExJSB0byAxNyUgb2YgdGhlIG9yaWdpbmFsIHRpbWVzLCB3 aXRoIEtERQ0KK2FwcGxpY2F0aW9ucyBpdCBkZWNyZWFzZWQgZXZlbiBpbnRv IGFyb3VuZCA0LjIlIG9mIG9yaWdpbmFsIHRpbWVzLg0KKw0KK1RoZSBzdGFy dHVwIHRpbWUgcmVwb3J0ZWQgYnkgdGhlIGR5bmFtaWMgbGlua2VyIGlzIG9u bHkgcGFydCBvZiB0aGUgdG90YWwNCitzdGFydHVwIHRpbWUgb2YgYSBHVUkg cHJvZ3JhbS4gVW5mb3J0dW5hdGVseSBpdCBjYW5ub3QgYmUgbWVhc3VyZWQg dmVyeQ0KK2FjY3VyYXRlbHkgd2l0aG91dCBwYXRjaGluZyBlYWNoIGFwcGxp Y2F0aW9uIHNlcGFyYXRlbHksIHNvIHRoYXQgaXQgd291bGQNCitwcmludCBj dXJyZW50IHByb2Nlc3MgQ1BVIHRpbWUgYXQgdGhlIHBvaW50IHdoZW4gYWxs IHdpbmRvd3MgYXJlIHBhaW50ZWQgYW5kDQordGhlIHByb2Nlc3Mgc3RhcnRz IHdhaXRpbmcgZm9yIHVzZXIgaW5wdXQuDQorDQorVGhlIGZvbGxvd2luZyB0 YWJsZSBjb250YWlucyB2YWx1ZXMgcmVwb3J0ZWQgYnkgdGltZSgxKSBjb21t YW5kIG9uIGVhY2ggb2YgdGhlDQorNCBHVUkgcHJvZ3JhbXMgcnVubmluZyB1 bmRlciBYLCBib3RoIG9uIHVucHJlbGlua2VkIGFuZCBmdWxseSBwcmVsaW5r ZWQNCitzeXN0ZW0uDQorDQorQXMgc29vbiBhcyBlYWNoIHByb2dyYW0gcGFp bnRlZCBpdHMgd2luZG93cywgaXQgd2FzIGtpbGxlZCBieSBhcHBsaWNhdGlv buKAmXMNCitxdWl0IGhvdCBrZXkuDQorDQorWyBDdHJsK1cgZm9yIEVwaXBo YW55LCBDdHJsK1EgZm9yIEV2b2x1dGlvbiBhbmQgS29ucXVlcm9yIGFuZCBF bnRlciBpbg0KKyAgS3dvcmTigJlzIGRvY3VtZW50IHR5cGUgY2hvaWNlIGRp YWxvZy4gXQ0KKw0KK0VzcGVjaWFsbHkgdGhlIHJlYWwgdGltZSB2YWx1ZXMg ZGVwZW5kIGFsc28gb24gdGhlIHNwZWVkIG9mIGh1bWFuDQorcmVhY3Rpb25z LCBzbyBlYWNoIG1lYXN1cmVtZW50IHdhcyByZXBlYXRlZCAxMCB0aW1lcy4g QWxsIHRpbWluZ3Mgd2VyZQ0KK2RvbmUgd2l0aCBob3QgY2FjaGVzLCBhZnRl ciBydW5uaW5nIHRoZSBhcHBsaWNhdGlvbnMgdHdvIHRpbWVzIGJlZm9yZQ0K K21lYXN1cmVtZW50Lg0KKw0KKyAgICBUYWJsZSAxOiBHVUkgcHJvZ3JhbSBz dGFydCB1cCB0aW1lcyB3aXRob3V0IGFuZCB3aXRoIHByZWxpbmtpbmcNCisN CitUeXBlIHwgVmFsdWVzIChpbiBzZWNvbmRzKSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHxNZWFuIHwgc3RkICANCisgICAgIHwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgICAgIHwgZGV2DQorLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0rLS0tLS0tDQordW5wcmVsaW5rZWQgZXBpcGhhbnkgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IMK1ICAg fCBzICANCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLSstLS0tLS0NCity ZWFsIHwzLjA1MyB8Mi44NCB8My4wMHwyLjkwMXwzLjAxOXwyLjkyOXwyLjg4 M3wyLjk3NXwyLjkyMnwzLjAyNnwyLjk1NHwwLjA2OTgNCit1c2VyIHwyLjMz ICB8Mi4zMSB8Mi4yOHwyLjMyIHwyLjQ0IHwyLjM3IHwyLjI5IHwyLjM1IHwy LjM0IHwyLjQxIHwyLjM0NHwwLjA1MDgNCitzeXMgIHwwLjIgICB8MC4yMyB8 MC4yM3wwLjE5IHwwLjE5IHwwLjEyIHwwLjI1IHwwLjE2IHwwLjE0IHwwLjE0 IHwwLjE4NXwwLjA0NDANCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLSst LS0tLS0NCitwcmVsaW5rZWQgZXBpcGhhbnkgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgwrUgICB8IHMgIA0KKy0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tKy0tLS0tLQ0KK3JlYWwgfDIuNzcz fDIuNzQzfDIuODMzfDIuNzUzfDIuNzUzfDIuNjQ0fDIuNzE3fDIuODk3fDIu NjggfDIuNzYxfDIuNzU1fDAuMDcxNg0KK3VzZXIgfDIuMTggfDIuMTcgfDIu MTcgfDIuMTIgfDIuMjMgfDIuMjYgfDIuMTMgfDIuMTcgfDIuMTUgfDIuMTUg fDIuMTczfDAuMDQzMA0KK3N5cyAgfDAuMTMgfDAuMTUgfDAuMTggfDAuMTUg fDAuMTEgfDAuMDQgfDAuMTggfDAuMTQgfDAuMSAgfDAuMTUgfDAuMTMzfDAu MDQxNg0KKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tKy0tLS0tLQ0KK3Vu cHJlbGlua2VkIGV2b2x1dGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCDCtSAgIHwgcyAgDQorLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0rLS0tLS0tDQorcmVhbCB8Mi4xMDZ8MS44ODZ8MS44 Mjh8Mi4xMiB8MS44Njd8MS44NzF8Mi4yNDJ8MS44NzF8MS44NjJ8Mi4yNDF8 MS45ODl8MC4xNjc5DQordXNlciB8MS4xMiB8MS4wOSB8MS4xNSB8MS4xOSB8 MS4xNyB8MS4yMyB8MS4xNSB8MS4xMSB8MS4xNyB8MS4xNCB8MS4xNTJ8MC4w NDA4DQorc3lzICB8MC4xICB8MC4xMSB8MC4xMyB8MC4wNyB8MC4xICB8MC4w NSB8MC4xMSB8MC4xMSB8MC4wOSB8MC4wOCB8MC4wOTV8MC4wMjMyDQorLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0tLS0tDQorcHJlbGlua2VkIGV2 b2x1dGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCDCtSAgIHwgcyAgDQorLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0rLS0tLS0tDQorcmVhbCB8MS42ODR8MS42MjF8MS42ODZ8MS43MiB8 MS42OTR8MS42OTF8MS42MzF8MS42OTd8MS42Njh8MS41MzV8MS42NjN8MC4w NTQxDQordXNlciB8MC45MiB8MC44NyB8MC45MiB8MC45NSB8MC43OSB8MC44 NiB8MC45NCB8MC44NyB8MC44OSB8MC44NiB8MC44ODd8MC4wNDc2DQorc3lz ICB8MC4wNiB8MC4xICB8MC4wNiB8MC4wNSB8MC4xMSB8MC4wOCB8MC4wNyB8 MC4xICB8MC4xMiB8MC4wNyB8MC4wODJ8MC4wMjM5DQorLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0rLS0tLS0tDQordW5wcmVsaW5rZWQga3dvcmQgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 IMK1ICAgfCBzICANCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLSstLS0t LS0NCityZWFsIHwyLjExMXwxLjQxNHwxLjM2IHwxLjM1NnwxLjI1OXwxLjM4 M3wxLjI4IHwxLjMyMXwxLjI1MnwxLjQwN3wxLjQxNHwwLjI1MTcNCit1c2Vy IHwxLjA0IHwwLjkgIHwwLjkzIHwwLjg4IHwwLjg5IHwwLjg5IHwwLjg3IHww Ljg5IHwwLjkgIHwwLjggIHwwLjg5OXwwLjA1OTcNCitzeXMgIHwwLjA3IHww LjA0IHwwLjA2IHwwLjA1IHwwLjA2IHwwLjEgIHwwLjA5IHwwLjA4IHwwLjA4 IHwwLjEyIHwwLjA3NXwwLjAyNDINCistLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLSstLS0tLS0NCitwcmVsaW5rZWQga3dvcmQgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgwrUgICB8IHMg IA0KKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tKy0tLS0tLQ0KK3JlYWwg fDEuNTkgfDEuMDUyfDAuOTcyfDEuMDY0fDEuMTA2fDEuMDg3fDEuMDY2fDEu MDg3fDEuMDY1fDEuMDA1fDEuMTA5fDAuMTczNQ0KK3VzZXIgfDAuNjEgfDAu NTMgfDAuNTggfDAuNiAgfDAuNiAgfDAuNTggfDAuNTkgfDAuNjEgfDAuNTcg fDAuNiAgfDAuNTg3fDAuMDI0MQ0KK3N5cyAgfDAuMDggfDAuMDggfDAuMDYg fDAuMDYgfDAuMDMgfDAuMDcgfDAuMDYgfDAuMDMgfDAuMDYgfDAuMDQgfDAu MDU3fDAuMDE4Mw0KKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tKy0tLS0t LQ0KK3VucHJlbGlua2VkIGtvbnF1ZXJvciAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfCDCtSAgIHwgcyAgDQorLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0tLS0tDQorcmVhbCB8MS4zMDZ8MS4z ODZ8MS4yNyB8MS4yNDN8MS4yMjd8MS4yODZ8MS4yNjJ8MS4zMjJ8MS4zNDV8 MS4zMzJ8MS4yOTh8MC4wNDk1DQordXNlciB8MC44OCB8MC44NiB8MC44OCB8 MC45ICB8MC44NyB8MC44MyB8MC44MyB8MC44NiB8MC44NiB8MC44OSB8MC44 NjZ8MC4wMjMyDQorc3lzICB8MC4wNyB8MC4xMSB8MC4xMiB8MC4xICB8MC4x MiB8MC4wOCB8MC4xMyB8MC4xMiB8MC4wOSB8MC4wOCB8MC4xMDJ8MC4wMjEw DQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0tLS0tDQorcHJlbGlu a2VkIGtvbnF1ZXJvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8IMK1ICAgfCBzICANCistLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLSstLS0tLS0NCityZWFsIHwxLjA1NnwwLjk2MnwwLjk2MXww LjkwNnwwLjkyN3wwLjkyM3wwLjkzM3wwLjk1OHwwLjk1NXwxLjE0MnwwLjk3 MnwwLjA3MjINCit1c2VyIHwwLjU2IHwwLjYgIHwwLjU2IHwwLjUyIHwwLjU3 IHwwLjU4IHwwLjUgIHwwLjU3IHwwLjYxIHwwLjU1IHwwLjU2MnwwLjAzMzQN CitzeXMgIHwwLjEgIHwwLjEzIHwwLjA4IHwwLjE1IHwwLjA3IHwwLjA5IHww LjA5IHwwLjA5IHwwLjEgIHwwLjA4IHwwLjA5OHwwLjAyNDQNCistLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLSstLS0tLS0NCisNCitPcGVuT2ZmaWNlLm9y ZyBpcyBwcm9iYWJseSB0aGUgbGFyZ2VzdCBwcm9ncmFtIHRoZXNlIGRheXMg aW4gTGludXgsDQorbW9zdGx5IHdyaXR0ZW4gaW4gQysrLiBJbiBPcGVuT2Zm aWNlLm9yZyAxLjEsIHRoZSBtYWluIGV4ZWN1dGFibGUsDQorc29mZmljZS5i aW4sIGxpbmtzIGRpcmVjdGx5IGFnYWluc3QgMzQgc2hhcmVkIGxpYnJhcmll cywgYnV0IHR5cGljYWxseQ0KK2R1cmluZyBzdGFydHVwIGl0IGxvYWRzIHVz aW5nIGRsb3BlbiBtYW55IG90aGVycy4gQXMgaGFzIGJlZW4NCittZW50aW9u ZWQgZWFybGllciwgcHJlbGluayBjYW5ub3Qgc3BlZWQgdXAgbG9hZGluZyBz aGFyZWQgbGlicmFyaWVzDQordXNpbmcgZGxvcGVuLCBzaW5jZSBpdCBjYW5u b3QgcHJlZGljdCBpbiB3aGljaCBvcmRlciBhbmQgd2hhdCBzaGFyZWQNCits aWJyYXJpZXMgd2lsbCBiZSBsb2FkZWQgKGFuZCB0aHVzIGNhbm5vdCBjb21w dXRlIGNvbmZsaWN0IGZpeHVwcykuDQorDQorVGhlIHNvZmZpY2UuYmluIGlz IHR5cGljYWxseSBzdGFydGVkIHRocm91Z2ggYSB3cmFwcGVyIHNjcmlwdCBh bmQNCitkZXBlbmRpbmcgb24gd2hhdCBhcmd1bWVudHMgYXJlIHBhc3NlZCB0 byBpdCwgZGlmZmVyZW50IE9wZW5PZmZpY2Uub3JnDQorYXBwbGljYXRpb24g aXMgc3RhcnRlZC4gV2l0aCBubyBvcHRpb25zLCBpdCBzdGFydHMganVzdCBl bXB0eSB3aW5kb3cNCit3aXRoIG1lbnUgZnJvbSB3aGljaCB0aGUgYXBwbGlj YXRpb25zIGNhbiBiZSBzdGFydGVkLCB3aXRoIHNheQ0KK3ByaXZhdGU6ZmFj dG9yeS9zd3JpdGVyIGFyZ3VtZW50IGl0IHN0YXJ0cyBhIHdvcmQgcHJvY2Vz c29yLCB3aXRoDQorcHJpdmF0ZTpmYWN0b3J5L3NjYWxjIGl0IHN0YXJ0cyBh IHNwcmVhZHNoZWV0IGV0Yy4gV2hlbiBzb2ZmaWNlLmJpbiBpcw0KK2FscmVh ZHkgcnVubmluZywgaWYgeW91IHN0YXJ0IGFub3RoZXIgY29weSBvZiBpdCwg aXQganVzdCBpbnN0cnVjdHMNCit0aGUgYWxyZWFkeSBydW5uaW5nIGNvcHkg dG8gcG9wIHVwIGEgbmV3IHdpbmRvdyBhbmQgZXhpdHMuDQorDQorSW4gYW4g ZXhwZXJpbWVudCwgc29mZmljZS5iaW4gaGFzIGJlZW4gaW52b2tlZCA3IHRp bWVzIGFnYWluc3QgcnVubmluZw0KK1ggc2VydmVyIHdpdGg6DQorICBubyBh cmd1bWVudHMsDQorICBwcml2YXRlOmZhY3Rvcnkvc3dyaXRlciwNCisgIHBy aXZhdGU6ZmFjdG9yeS9zY2FsYywNCisgIHByaXZhdGU6ZmFjdG9yeS9zZHJh dywNCisgIHByaXZhdGU6ZmFjdG9yeS9zaW1wcmVzcywNCisgIGFuZCBwcml2 YXRlOmZhY3Rvcnkvc21hdGgNCithcmd1bWVudHMgKGluIGFsbCB0aGVzZSBj YXNlcyBub3RoaW5nIHdhcyBwcmVzc2VkIGF0IGFsbCkgYW5kIGxhc3QNCit3 aXRoIHRoZSBwcml2YXRlOmZhY3Rvcnkvc3dyaXRlciBhcmd1bWVudCB3aGVy ZSB0aGUgbWVudSBpdGVtIE5ldw0KK1ByZXNlbnRhdGlvbiB3YXMgc2VsZWN0 ZWQgYW5kIHRoZSB3b3JkIHByb2Nlc3NvciB3aW5kb3cgY2xvc2VkLg0KKw0K K0luIGFsbCB0aGVzZSBjYXNlcywgL3Byb2Mv4oCYcGlkb2Ygc29mZmljZS5i aW7igJgvbWFwcyBmaWxlIHdhcyBjYXB0dXJlZA0KK2FuZCB0aGUgYXBwbGlj YXRpb24gdGhlbiBraWxsZWQuIFRoaXMgZmlsZSBjb250YWlucyBhbW9uZyBv dGhlciB0aGluZ3MNCitsaXN0IG9mIGFsbCBzaGFyZWQgbGlicmFyaWVzIG1t YXBwZWQgYnkgdGhlIHByb2Nlc3MgYXQgdGhlIHBvaW50IHdoZXJlDQoraXQg c3RhcnRlZCB3YWl0aW5nIGZvciB1c2VyIGlucHV0IGFmdGVyIGxvYWRpbmcg dXAuIFRoZXNlIGxpc3RzIHdlcmUNCit0aGVuIHN1bW1hcml6ZWQsIHRvIGdl dCBudW1iZXIgb2YgdGhlIHJ1bnMgaW4gd2hpY2ggcGFydGljdWxhciBzaGFy ZWQNCitsaWJyYXJ5IHdhcyBsb2FkZWQgdXAgb3V0IG9mIHRoZSB0b3RhbCA3 IHJ1bnMuDQorDQorVGhlcmUgd2VyZSAzOCBzaGFyZWQgbGlicmFyaWVzIHNo aXBwZWQgYXMgcGFydCBvZiBPcGVuT2ZmaWNlLm9yZw0KK3BhY2thZ2Ugd2hp Y2ggaGF2ZSBiZWVuIGxvYWRlZCBpbiBhbGwgNyB0aW1lcywgYW5vdGhlciAz IHNoYXJlZA0KK2xpYnJhcmllcyBpbmNsdWRlZCBpbiBPcGVuT2ZmaWNlLm9y ZyAoYW5kIGFsc28gb25lIHNoYXJlZCBsaWJyYXJ5DQorc2hpcHBlZCBpbiBh bm90aGVyIHBhY2thZ2UsIGxpYmRiX2N4eC00LjEuc28pIHdoaWNoIHdlcmUg bG9hZGVkIDYNCit0aW1lcy4NCisNCitbIEluIGFsbCBydW5zIGJ1dCB3aGVu IHJhbiB3aXRob3V0IGFyZ3VtZW50cy4gQnV0IHdoZW4gdGhlIGFwcGxpY2F0 aW9uDQorICBpcyBzdGFydGVkIHdpdGhvdXQgYW55IGFyZ3VtZW50cywgaXQg Y2Fubm90IGRvIGFueSB1c2VmdWwgd29yaywgc28NCisgIG9uZSBsb2FkcyBv bmUgb2YgdGhlIGFwcGxpY2F0aW9ucyBhZnRlcndhcmQgIGFueXdheS4gXQ0K Kw0KK1RoZXJlIHdhcyBvbmUgc2hhcmVkIGxpYnJhcnkgbG9hZGVkIGluIDUg cnVucywgYnV0IHdhcyBsb2NhbGUgc3BlY2lmaWMNCithbmQgdGh1cyBub3Qg d29ydGggY29uc2lkZXJpbmcuIEluc3BlY3RpbmcgT3Blbk9mZmljZS5vcmcg c291cmNlLA0KK3RoZXNlIHNoYXJlZCBsaWJyYXJpZXMgYXJlIG5ldmVyIHVu bG9hZGVkIHdpdGggZGxjbG9zZSwgc28gc29mZmljZS5iaW4NCitjYW4gYmUg bWFkZSBtdWNoIG1vcmUgcHJlbGluayBmcmllbmRseSBhbmQgdGh1cyBzYXZl IHN1YnN0YW50aWFsDQorYW1vdW50IG9mIHN0YXJ0dXAgdGltZSBieSBsaW5r aW5nIGFnYWluc3QgYWxsIHRob3NlIDc2IHNoYXJlZA0KK2xpYnJhcmllcyBp bnN0ZWFkIG9mIGp1c3QgMzQgc2hhcmVkIGxpYnJhcmllcyBpdCBpcyBsaW5r ZWQgYWdhaW5zdC4NCisNCitJbiB0aGUgdGltaW5ncyBiZWxvdywgc29mZmlj ZTEuYmluIGlzIHRoZSBvcmlnaW5hbCBzb2ZmaWNlLmJpbiBhcw0KK2NyZWF0 ZWQgYnkgdGhlIE9wZW5PZmZpY2Uub3JnIG1ha2VmaWxlcyBhbmQgc29mZmlj ZTMuYmluIGlzIHRoZSBzYW1lDQorZXhlY3V0YWJsZSBsaW5rZWQgZHluYW1p Y2FsbHkgYWdhaW5zdCBhZGRpdGlvbmFsIDQyIHNoYXJlZCBsaWJyYXJpZXMu DQorVGhlIG9yZGVyaW5nIG9mIHRob3NlIDQyIHNoYXJlZCBsaWJyYXJpZXMg bWF0dGVycyBmb3IgdGhlIG51bWJlciBvZg0KK2NvbmZsaWN0IGZpeHVwcywg dW5mb3J0dW5hdGVseSB3aXRoIGxhcmdlIEMrKyBzaGFyZWQgbGlicmFyaWVz IHRoZXJlDQoraXMgbm8gb2J2aW91cyBydWxlIGZvciBvcmRlcmluZyB0aGVt IGFzIHNvbWV0aW1lcyBpdCBpcyBtb3JlIHVzZWZ1bA0KK3doZW4gYSBzaGFy ZWQgbGlicmFyeSBwcmVjZWRlcyBpdHMgZGVwZW5kZW5jeSBhbmQgc29tZXRp bWVzIHZpY2UNCit2ZXJzYSwgc28gYSBmZXcgZGlmZmVyZW50IG9yZGVyaW5n cyB3ZXJlIHRyaWVkIGluIHNldmVyYWwgc3RlcHMgYW5kDQorYWx3YXlzIHRo ZSBvbmUgd2l0aCBzbWFsbGVzdCBudW1iZXIgb2YgY29uZmxpY3QgZml4dXBz IHdhcyBjaG9zZW4uDQorDQorU3RpbGwsIHRoZSBudW1iZXIgb2YgY29uZmxp Y3QgZml4dXBzIGlzIHF1aXRlIGhpZ2ggYW5kIGJpZyBwYXJ0IG9mIHRoZQ0K K2ZpeHVwcyBhcmUgc3RvcmluZyBhZGRyZXNzZXMgb2YgUExUIHNsb3RzIGlu IHRoZSBleGVjdXRhYmxlIGludG8NCit2YXJpb3VzIHBsYWNlcyBpbiBzaGFy ZWQgbGlicmFyaWVzIHNvZmZpY2UyLmJpbiBpcyBhbm90aGVyDQorDQorWyBU aGlzIG1pZ2h0IGdldCBiZXR0ZXIgd2hlbiB0aGUgbGlua2VyIGlzIG1vZGlm aWVkIHRvIGhhbmRsZSBjYWxscw0KKyAgd2l0aG91dCBldmVyIHRha2luZyBh ZGRyZXNzIG9mIHRoZSBmdW5jdGlvbiBpbiBleGVjdXRhYmxlcw0KKyAgc3Bl Y2lhbGx5LCBidXQgb25seSB0ZXN0aW5nIGl0IHdpbGwgYWN0dWFsbHkgc2hv dyBpdCB1cC4gXQ0KKw0KK2V4cGVyaW1lbnQsIHdoZXJlIHRoZSBleGVjdXRh YmxlIGl0c2VsZiBpcyBlbXB0eSBzb3VyY2UgZmlsZSwgYWxsDQorb2JqZWN0 cyB3aGljaCB3ZXJlIG9yaWdpbmFsbHkgaW4gc29mZmljZS5iaW4gZXhlY3V0 YWJsZSB3aXRoIHRoZQ0KK2V4Y2VwdGlvbiBvZiBzdGFydCBmaWxlcyB3ZXJl IHJlY29tcGlsZWQgYXMgcG9zaXRpb24gaW5kZXBlbmRlbnQgY29kZQ0KK2Fu ZCBsaW5rZWQgaW50byBhIG5ldyBzaGFyZWQgbGlicmFyeS4NCisNCitUaGlz IHJlZHVjZWQgbnVtYmVyIG9mIGNvbmZsaWN0cyBhIGxvdCBhbmQgc3BlZWRl ZCB1cCBzdGFydCB1cCB0aW1lcw0KK2FnYWluc3Qgc29mZmljZTMuYmluIHdo ZW4gY2FjaGVzIGFyZSBob3QuIEl0IGlzIGEgbGl0dGxlIGJpdCBzbG93ZXIN Cit0aGFuIHNvZmZpY2UzLmJpbiB3aGVuIHJ1bm5pbmcgd2l0aCBjb2xkIGNh Y2hlcyAoZS5nLiBmb3IgdGhlIGZpcnN0DQordGltZSBhZnRlciBib290dXAp LCBhcyB0aGVyZSBpcyBvbmUgbW9yZSBzaGFyZWQgbGlicmFyeSB0byBsb2Fk IGV0Yy4NCitJbiB0aGUgdGltaW5ncyBiZWxvdywgbnVtYmVycyBmb3Igc29m ZmljZTEuYmluIGFuZCBzb2ZmaWNlMi5iaW4gcmVzcC4NCitzb2ZmaWNlMy5i aW4gY2Fubm90IGJlIGVhc2lseSBjb21wYXJlZCwgYXMgc29mZmljZTEuYmlu IGxvYWRzIGxlc3MNCit0aGFuIGhhbGYgb2YgdGhlIG5lZWRlZCBzaGFyZWQg bGlicmFyaWVzIHdoaWNoIHRoZSByZW1haW5pbmcgdHdvDQorZXhlY3V0YWJs ZXMgbG9hZCBhbmQgdGhlIHRpbWUgdG8gbG9hZCB0aG9zZSBzaGFyZWQgbGli cmFyaWVzIGRvZXNu4oCZdA0KK3Nob3cgdXAgdGhlcmUuDQorDQorU3RpbGws IHdoZW4gaXQgaXMgcHJlbGlua2VkIGl0IHRha2VzIGp1c3Qgc2xpZ2h0bHkg bW9yZSB0aGFuIHR3byB0aW1lcw0KK2xvbmdlciB0byBsb2FkIHNvZmZpY2Uy LmJpbiB0aGFuIHNvZmZpY2UxLmJpbiBhbmQgdGhlIHRpbWVzIGFyZSBzdGls bA0KK2xlc3MgdGhhbiA3JSBvZiBob3cgbG9uZyBpdCB0YWtlcyB0byBsb2Fk IGp1c3QgdGhlIGluaXRpYWwgMzQgc2hhcmVkDQorbGlicmFyaWVzIHdoZW4g bm90IHByZWxpbmtpbmcuDQorDQorICAkIFM94oCZcy9eICovL+KAmQ0KKyAg JCBsZGQgL3Vzci9saWIvb3Blbm9mZmljZS9wcm9ncmFtL3NvZmZpY2UxLmJp biB8IHdjIC1sDQorICAzNA0KKyAgJCAjIFVucHJlbGlua2VkIHN5c3RlbQ0K KyAgJCBMRF9ERUJVRz1zdGF0aXN0aWNzIC91c3IvbGliL29wZW5vZmZpY2Uv cHJvZ3JhbS9zb2ZmaWNlMS5iaW4gMj4mMSB8IHNlZCDigJ0kU+KAnQ0KKzE5 MDk1OiBydW50aW1lIGxpbmtlciBzdGF0aXN0aWNzOg0KKzE5MDk1OiANCisx OTA5NTogICB0b3RhbCBzdGFydHVwIHRpbWUgaW4gZHluYW1pYyBsb2FkZXI6 IDE1OTgzMzU4MiBjbG9jayBjeWNsZXMNCisxOTA5NTogICAgICAgICAgICAg dGltZSBuZWVkZWQgZm9yIHJlbG9jYXRpb246IDE1NTQ2NDE3NCBjbG9jayBj eWNsZXMgKDk3LjIlKQ0KKzE5MDk1OiAgICAgICAgICAgICAgICAgIG51bWJl ciBvZiByZWxvY2F0aW9uczogMzExMzYNCisxOTA5NTogICAgICAgbnVtYmVy IG9mIHJlbG9jYXRpb25zIGZyb20gY2FjaGU6IDMxNzAyDQorMTkwOTU6ICAg ICAgICAgbnVtYmVyIG9mIHJlbGF0aXZlIHJlbG9jYXRpb25zOiAxODI4NA0K KzE5MDk1OiAgICAgICAgICAgIHRpbWUgbmVlZGVkIHRvIGxvYWQgb2JqZWN0 czogMzkxOTY0NSBjbG9jayBjeWNsZXMgKDIuNCUpDQorL3Vzci9saWIvb3Bl bm9mZmljZS9wcm9ncmFtL3NvZmZpY2UxLmJpbiBYMTEgZXJyb3I6IENhbuKA mXQgb3BlbiBkaXNwbGF5Og0KK1NldCBESVNQTEFZIGVudmlyb25tZW50IHZh cmlhYmxlLCB1c2UgLWRpc3BsYXkgb3B0aW9uDQorb3IgY2hlY2sgcGVybWlz c2lvbnMgb2YgeW91ciBYLVNlcnZlcg0KKyhTZWUg4oCdbWFuIFjigJ0gcmVz cC4g4oCdbWFuIHhob3N04oCdIGZvciBkZXRhaWxzKQ0KKzE5MDk1OiBydW50 aW1lIGxpbmtlciBzdGF0aXN0aWNzOg0KKzE5MDk1OiANCisxOTA5NTogICAg ICAgICAgICBmaW5hbCBudW1iZXIgb2YgcmVsb2NhdGlvbnM6IDMxNzE1DQor MTkwOTU6IGZpbmFsIG51bWJlciBvZiByZWxvY2F0aW9ucyBmcm9tIGNhY2hl OiAzMTcwMg0KKw0KKyAgJCAjIFByZWxpbmtlZCBzeXN0ZW0NCisgICQgTERf REVCVUc9c3RhdGlzdGljcyAvdXNyL2xpYi9vcGVub2ZmaWNlL3Byb2dyYW0v c29mZmljZTEuYmluIDI+JjEgfCBzZWQg4oCdJFPigJ0NCisyNTc1OTogcnVu dGltZSBsaW5rZXIgc3RhdGlzdGljczoNCisyNTc1OTogDQorMjU3NTk6ICAg dG90YWwgc3RhcnR1cCB0aW1lIGluIGR5bmFtaWMgbG9hZGVyOiA0MjUyMzk3 IGNsb2NrIGN5Y2xlcw0KKzI1NzU5OiAgICAgICAgICAgICB0aW1lIG5lZWRl ZCBmb3IgcmVsb2NhdGlvbjogMTE4OTg0MCBjbG9jayBjeWNsZXMgKDI3Ljkl KQ0KKzI1NzU5OiAgICAgICAgICAgICAgICAgIG51bWJlciBvZiByZWxvY2F0 aW9uczogMA0KKzI1NzU5OiAgICAgICBudW1iZXIgb2YgcmVsb2NhdGlvbnMg ZnJvbSBjYWNoZTogMjE0Mg0KKzI1NzU5OiAgICAgICAgIG51bWJlciBvZiBy ZWxhdGl2ZSByZWxvY2F0aW9uczogMA0KKzI1NzU5OiAgICAgICAgICAgIHRp bWUgbmVlZGVkIHRvIGxvYWQgb2JqZWN0czogMjYwNDQ4NiBjbG9jayBjeWNs ZXMgKDYxLjIlKQ0KKy91c3IvbGliL29wZW5vZmZpY2UvcHJvZ3JhbS9zb2Zm aWNlMS5iaW4gWDExIGVycm9yOiBDYW7igJl0IG9wZW4gZGlzcGxheToNCitT ZXQgRElTUExBWSBlbnZpcm9ubWVudCB2YXJpYWJsZSwgdXNlIC1kaXNwbGF5 IG9wdGlvbg0KK29yIGNoZWNrIHBlcm1pc3Npb25zIG9mIHlvdXIgWC1TZXJ2 ZXINCisoU2VlIOKAnW1hbiBY4oCdIHJlc3AuIOKAnW1hbiB4aG9zdOKAnSBm b3IgZGV0YWlscykNCisyNTc1OTogcnVudGltZSBsaW5rZXIgc3RhdGlzdGlj czoNCisyNTc1OTogDQorMjU3NTk6ICAgICAgICAgICAgZmluYWwgbnVtYmVy IG9mIHJlbG9jYXRpb25zOiAyNA0KKzI1NzU5OiBmaW5hbCBudW1iZXIgb2Yg cmVsb2NhdGlvbnMgZnJvbSBjYWNoZTogMjE0Mg0KKw0KKyAgJCBsZGQgL3Vz ci9saWIvb3Blbm9mZmljZS9wcm9ncmFtL3NvZmZpY2UyLmJpbiB8IHdjIC1s DQorICA3Nw0KKyAgJCAjIFVucHJlbGlua2VkIHN5c3RlbQ0KKyAgJCBMRF9E RUJVRz1zdGF0aXN0aWNzIC91c3IvbGliL29wZW5vZmZpY2UvcHJvZ3JhbS9z b2ZmaWNlMi5iaW4gMj4mMSB8IHNlZCDigJ0kU+KAnQ0KKzE5MTE1OiBydW50 aW1lIGxpbmtlciBzdGF0aXN0aWNzOg0KKzE5MTE1OiANCisxOTExNTogICB0 b3RhbCBzdGFydHVwIHRpbWUgaW4gZHluYW1pYyBsb2FkZXI6IDk0Nzc5MzY3 MCBjbG9jayBjeWNsZXMNCisxOTExNTogICAgICAgICAgICAgdGltZSBuZWVk ZWQgZm9yIHJlbG9jYXRpb246IDkzNjg5NTc0MSBjbG9jayBjeWNsZXMgKDk4 LjglKQ0KKzE5MTE1OiAgICAgICAgICAgICAgICAgIG51bWJlciBvZiByZWxv Y2F0aW9uczogNjkxNjQNCisxOTExNTogICAgICAgbnVtYmVyIG9mIHJlbG9j YXRpb25zIGZyb20gY2FjaGU6IDk0NTAyDQorMTkxMTU6ICAgICAgICAgbnVt YmVyIG9mIHJlbGF0aXZlIHJlbG9jYXRpb25zOiA1OTM3NA0KKzE5MTE1OiAg ICAgICAgICAgIHRpbWUgbmVlZGVkIHRvIGxvYWQgb2JqZWN0czogMTAwNDY0 ODYgY2xvY2sgY3ljbGVzICgxLjAlKQ0KKy91c3IvbGliL29wZW5vZmZpY2Uv cHJvZ3JhbS9zb2ZmaWNlMi5iaW4gWDExIGVycm9yOiBDYW7igJl0IG9wZW4g ZGlzcGxheToNCitTZXQgRElTUExBWSBlbnZpcm9ubWVudCB2YXJpYWJsZSwg dXNlIC1kaXNwbGF5IG9wdGlvbg0KK29yIGNoZWNrIHBlcm1pc3Npb25zIG9m IHlvdXIgWC1TZXJ2ZXINCisoU2VlIOKAnW1hbiBY4oCdIHJlc3AuIOKAnW1h biB4aG9zdOKAnSBmb3IgZGV0YWlscykNCisxOTExNTogcnVudGltZSBsaW5r ZXIgc3RhdGlzdGljczoNCisxOTExNTogDQorMTkxMTU6ICAgICAgICAgICAg ZmluYWwgbnVtYmVyIG9mIHJlbG9jYXRpb25zOiA2OTk2Ng0KKzE5MTE1OiBm aW5hbCBudW1iZXIgb2YgcmVsb2NhdGlvbnMgZnJvbSBjYWNoZTogOTQ1MDIN CisNCisgICQgIyBQcmVsaW5rZWQgc3lzdGVtDQorICAkIExEX0RFQlVHPXN0 YXRpc3RpY3MgL3Vzci9saWIvb3Blbm9mZmljZS9wcm9ncmFtL3NvZmZpY2Uy LmJpbiAyPiYxIHwgc2VkIOKAnSRT4oCdDQorMjU3Nzc6IHJ1bnRpbWUgbGlu a2VyIHN0YXRpc3RpY3M6DQorMjU3Nzc6IA0KKzI1Nzc3OiAgIHRvdGFsIHN0 YXJ0dXAgdGltZSBpbiBkeW5hbWljIGxvYWRlcjogMTA5NTIwOTkgY2xvY2sg Y3ljbGVzDQorMjU3Nzc6ICAgICAgICAgICAgIHRpbWUgbmVlZGVkIGZvciBy ZWxvY2F0aW9uOiAzMjU0NTE4IGNsb2NrIGN5Y2xlcyAoMjkuNyUpDQorMjU3 Nzc6ICAgICAgICAgICAgICAgICAgbnVtYmVyIG9mIHJlbG9jYXRpb25zOiAw DQorMjU3Nzc6ICAgICAgIG51bWJlciBvZiByZWxvY2F0aW9ucyBmcm9tIGNh Y2hlOiA1MzA5DQorMjU3Nzc6ICAgICAgICAgbnVtYmVyIG9mIHJlbGF0aXZl IHJlbG9jYXRpb25zOiAwDQorMjU3Nzc6ICAgICAgICAgICAgdGltZSBuZWVk ZWQgdG8gbG9hZCBvYmplY3RzOiA2ODA1MDEzIGNsb2NrIGN5Y2xlcyAoNjIu MSUpDQorL3Vzci9saWIvb3Blbm9mZmljZS9wcm9ncmFtL3NvZmZpY2UyLmJp biBYMTEgZXJyb3I6IENhbuKAmXQgb3BlbiBkaXNwbGF5Og0KK1NldCBESVNQ TEFZIGVudmlyb25tZW50IHZhcmlhYmxlLCB1c2UgLWRpc3BsYXkgb3B0aW9u DQorb3IgY2hlY2sgcGVybWlzc2lvbnMgb2YgeW91ciBYLVNlcnZlcg0KKyhT ZWUg4oCdbWFuIFjigJ0gcmVzcC4g4oCdbWFuIHhob3N04oCdIGZvciBkZXRh aWxzKQ0KKzI1Nzc3OiBydW50aW1lIGxpbmtlciBzdGF0aXN0aWNzOg0KKzI1 Nzc3OiANCisyNTc3NzogICAgICAgICAgICBmaW5hbCBudW1iZXIgb2YgcmVs b2NhdGlvbnM6IDI0DQorMjU3Nzc6IGZpbmFsIG51bWJlciBvZiByZWxvY2F0 aW9ucyBmcm9tIGNhY2hlOiA1MzA5DQorDQorICAkIGxkZCAvdXNyL2xpYi9v cGVub2ZmaWNlL3Byb2dyYW0vc29mZmljZTMuYmluIHwgd2MgLWwNCisgIDc2 DQorICAkICMgVW5wcmVsaW5rZWQgc3lzdGVtDQorICAkIExEX0RFQlVHPXN0 YXRpc3RpY3MgL3Vzci9saWIvb3Blbm9mZmljZS9wcm9ncmFtL3NvZmZpY2Uz LmJpbiAyPiYxIHwgc2VkIOKAnSRT4oCdDQorMTkxMzE6IHJ1bnRpbWUgbGlu a2VyIHN0YXRpc3RpY3M6DQorMTkxMzE6IA0KKzE5MTMxOiAgIHRvdGFsIHN0 YXJ0dXAgdGltZSBpbiBkeW5hbWljIGxvYWRlcjogODUyMjc1NzU0IGNsb2Nr IGN5Y2xlcw0KKzE5MTMxOiAgICAgICAgICAgICB0aW1lIG5lZWRlZCBmb3Ig cmVsb2NhdGlvbjogODQwOTk2ODU5IGNsb2NrIGN5Y2xlcyAoOTguNiUpDQor MTkxMzE6ICAgICAgICAgICAgICAgICAgbnVtYmVyIG9mIHJlbG9jYXRpb25z OiA2ODM2Mg0KKzE5MTMxOiAgICAgICBudW1iZXIgb2YgcmVsb2NhdGlvbnMg ZnJvbSBjYWNoZTogODkyMTMNCisxOTEzMTogICAgICAgICBudW1iZXIgb2Yg cmVsYXRpdmUgcmVsb2NhdGlvbnM6IDU1ODMxDQorMTkxMzE6ICAgICAgICAg ICAgdGltZSBuZWVkZWQgdG8gbG9hZCBvYmplY3RzOiAxMDE3MDIwNyBjbG9j ayBjeWNsZXMgKDEuMSUpDQorL3Vzci9saWIvb3Blbm9mZmljZS9wcm9ncmFt L3NvZmZpY2UzLmJpbiBYMTEgZXJyb3I6IENhbuKAmXQgb3BlbiBkaXNwbGF5 Og0KK1NldCBESVNQTEFZIGVudmlyb25tZW50IHZhcmlhYmxlLCB1c2UgLWRp c3BsYXkgb3B0aW9uDQorb3IgY2hlY2sgcGVybWlzc2lvbnMgb2YgeW91ciBY LVNlcnZlcg0KKyhTZWUg4oCdbWFuIFjigJ0gcmVzcC4g4oCdbWFuIHhob3N0 4oCdIGZvciBkZXRhaWxzKQ0KKzE5MTMxOiBydW50aW1lIGxpbmtlciBzdGF0 aXN0aWNzOg0KKzE5MTMxOiANCisxOTEzMTogICAgICAgICAgICBmaW5hbCBu dW1iZXIgb2YgcmVsb2NhdGlvbnM6IDY5MTc3DQorMTkxMzE6IGZpbmFsIG51 bWJlciBvZiByZWxvY2F0aW9ucyBmcm9tIGNhY2hlOiA4OTIxMw0KKw0KKw0K KyAgJCAjIFByZWxpbmtlZCBzeXN0ZW0NCisgICQgTERfREVCVUc9c3RhdGlz dGljcyAvdXNyL2xpYi9vcGVub2ZmaWNlL3Byb2dyYW0vc29mZmljZTMuYmlu IDI+JjEgfCBzZWQg4oCdJFPigJ0NCisyNTg0NzogcnVudGltZSBsaW5rZXIg c3RhdGlzdGljczoNCisyNTg0NzogDQorMjU4NDc6ICAgdG90YWwgc3RhcnR1 cCB0aW1lIGluIGR5bmFtaWMgbG9hZGVyOiAxMjI3NzQwNyBjbG9jayBjeWNs ZXMNCisyNTg0NzogICAgICAgICAgICAgdGltZSBuZWVkZWQgZm9yIHJlbG9j YXRpb246IDQyMzI5MTUgY2xvY2sgY3ljbGVzICgzNC40JSkNCisyNTg0Nzog ICAgICAgICAgICAgICAgICBudW1iZXIgb2YgcmVsb2NhdGlvbnM6IDANCisy NTg0NzogICAgICAgbnVtYmVyIG9mIHJlbG9jYXRpb25zIGZyb20gY2FjaGU6 IDg5NjENCisyNTg0NzogICAgICAgICBudW1iZXIgb2YgcmVsYXRpdmUgcmVs b2NhdGlvbnM6IDANCisyNTg0NzogICAgICAgICAgICB0aW1lIG5lZWRlZCB0 byBsb2FkIG9iamVjdHM6IDY5MjUwMjMgY2xvY2sgY3ljbGVzICg1Ni40JSkN CisvdXNyL2xpYi9vcGVub2ZmaWNlL3Byb2dyYW0vc29mZmljZTMuYmluIFgx MSBlcnJvcjogQ2Fu4oCZdCBvcGVuIGRpc3BsYXk6DQorU2V0IERJU1BMQVkg ZW52aXJvbm1lbnQgdmFyaWFibGUsIHVzZSAtZGlzcGxheSBvcHRpb24NCitv ciBjaGVjayBwZXJtaXNzaW9ucyBvZiB5b3VyIFgtU2VydmVyDQorKFNlZSDi gJ1tYW4gWOKAnSByZXNwLiDigJ1tYW4geGhvc3TigJ0gZm9yIGRldGFpbHMp DQorMjU4NDc6IHJ1bnRpbWUgbGlua2VyIHN0YXRpc3RpY3M6DQorMjU4NDc6 IA0KKzI1ODQ3OiAgICAgICAgICAgIGZpbmFsIG51bWJlciBvZiByZWxvY2F0 aW9uczogMjQNCisyNTg0NzogZmluYWwgbnVtYmVyIG9mIHJlbG9jYXRpb25z IGZyb20gY2FjaGU6IDg5NjENCisNCitUYWJsZSAyOiBPcGVuT2ZmaWNlLm9y ZyBzdGFydCB1cCB0aW1lcyB3aXRob3V0IGFuZCB3aXRoIHByZWxpbmtpbmcN CisNCitUeXBlfFZhbHVlcyAoaW4gc2Vjb25kcykgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfEF2ZyAgfHN0ZGRldg0KKy0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0tLS0tDQordW5wcmVsaW5rZWQgc29m ZmljZTEuYmluIHByaXZhdGU6ZmFjdG9yeS9zd3JpdGVyICAgICAgICAgICAg ICAgIHwgwrUgICB8IHMNCistLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tKy0t LS0tLQ0KK3JlYWx8NS41Njl8NS4xNDl8NS41NDd8NS41NTl8NS41NDl8NS4x Mzl8NS41NSB8NS41NTl8NS41OTh8NS41NTl8NS40Nzh8MC4xNzY1IA0KK3Vz ZXJ8NC42NSB8NC41NyB8NC42MiB8NC42NCB8NC41NyB8NC41NSB8NC42NSB8 NC40OSB8NC41MiB8NC40NiB8NC41NzJ8MC4wNjgwIA0KK3N5cyB8MC4yOSB8 MC4yNCB8MC4xOSB8MC4yMSB8MC4yMSB8MC4yMSB8MC4yNSB8MC4yNSB8MC4y NyB8MC4yNiB8MC4yMzh8MC4wMzE5IA0KKy0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0rLS0tLS0tDQorcHJlbGlua2VkIHNvZmZpY2UxLmJpbiBwcml2YXRl OmZhY3Rvcnkvc3dyaXRlciAgICAgICAgICAgICAgICAgIHwgwrUgICB8IHMN CistLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tKy0tLS0tLQ0KK3JlYWx8NC45 NDZ8NC44OTl8NS4yOTF8NC44Nzl8NC44Nzl8NC44OTh8NS4yOTl8NC45MDF8 NC44ODd8NC45MDF8NC45Nzh8MC4xNjgxIA0KK3VzZXJ8NC4yMyB8NC4yNyB8 NC4xOCB8NC4yNCB8NC4xNyB8NC4yMiB8NC4xNSB8NC4yNSB8NC4yNiB8NC4z MSB8NC4yMjh8MC4wNDk0IA0KK3N5cyB8MC4yMiB8MC4yMiB8MC4yNCB8MC4y NiB8MC4zICB8MC4yNiB8MC4yOSB8MC4xNyB8MC4yMSB8MC4yMyB8MC4yNCB8 MC4wMzg5IA0KKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0tLS0tDQor dW5wcmVsaW5rZWQgc29mZmljZTIuYmluIHByaXZhdGU6ZmFjdG9yeS9zd3Jp dGVyICAgICAgICAgICAgICAgIHwgwrUgICB8IHMNCistLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tKy0tLS0tLQ0KK3JlYWx8NS41NzV8NS4xNjZ8NS41OTJ8 NS4xNDl8NS41NzF8NS41NTl8NS4xNTl8NS4xNTd8NS41Njl8NS4xNDl8NS4z NjV8MC4yMjAxIA0KK3VzZXJ8NC41OSB8NC41ICB8NC41NyB8NC4zNyB8NC40 NyB8NC41NyB8NC41NiB8NC40MSB8NC42MyB8NC41ICB8NC41MTd8MC4wODI2 IA0KK3N5cyB8MC4yNCB8MC4yNCB8MC4yMSB8MC4zNCB8MC4yNyB8MC4xOSB8 MC4xOSB8MC4yNyB8MC4xOSB8MC4yOSB8MC4yNDN8MC4wNTAxIA0KKy0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0tLS0tDQorcHJlbGlua2VkIHNvZmZp Y2UyLmJpbiBwcml2YXRlOmZhY3Rvcnkvc3dyaXRlciAgICAgICAgICAgICAg ICAgIHwgwrUgICB8IHMNCistLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tKy0t LS0tLQ0KK3JlYWx8My42OSB8My42NiB8My42NTh8My42NjF8My42Mzl8My42 Mzh8My42NDl8My42NTl8My42NSB8My42NTl8My42NTZ8MC4wMTQ2IA0KK3Vz ZXJ8Mi45MyB8Mi44OCB8Mi44OCB8Mi45ICB8Mi44NCB8Mi42MyB8Mi44OSB8 Mi44NSB8Mi43NyB8Mi44MyB8Mi44NCB8MC4wODYwIA0KK3N5cyB8MC4yMiB8 MC4xOCB8MC4yMyB8MC4yICB8MC4xOCB8MC4yOSB8MC4yMiB8MC4yMyB8MC4y NCB8MC4yMiB8MC4yMjF8MC4wMzE4IA0KKy0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0rLS0tLS0tDQordW5wcmVsaW5rZWQgc29mZmljZTMuYmluIHByaXZh dGU6ZmFjdG9yeS9zd3JpdGVyICAgICAgICAgICAgICAgIHwgwrUgICB8IHMN CistLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tKy0tLS0tLQ0KK3JlYWx8NS4w MzF8NS4wMiB8NS4wMDl8NS4wMjh8NS4wMTl8NS4wMTl8NS4wMTl8NS4wNTJ8 NS40MjZ8NS4wMjl8NS4wNjV8MC4xMjczIA0KK3VzZXJ8NC4zMSB8NC4zNSB8 NC4zNCB8NC4zICB8NC4zOCB8NC4yOSB8NC40NSB8NC4zNyB8NC4zOCB8NC40 NCB8NC4zNjF8MC4wNTQ3IA0KK3N5cyB8MC4yNyB8MC4yNSB8MC4yNiB8MC4y NyB8MC4yNyB8MC4zMSB8MC4xOCB8MC4xNyB8MC4xNiB8MC4xNSB8MC4yMjl8 MC4wNTc2IA0KKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0tLS0tDQor cHJlbGlua2VkIHNvZmZpY2UzLmJpbiBwcml2YXRlOmZhY3Rvcnkvc3dyaXRl ciAgICAgICAgICAgICAgICAgIHwgwrUgICB8IHMNCistLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tKy0tLS0tLQ0KK3JlYWx8My43MDV8My42Njl8My42NTl8 My42Njl8My42NiB8My42NTl8My42NTl8My42NjF8My42Njh8My42NDl8My42 NjZ8MC4wMTUxIA0KK3VzZXJ8Mi44NiB8Mi44OCB8Mi44NSB8Mi44NCB8Mi44 MyB8Mi44NiB8Mi44NCB8Mi45MSB8Mi44NiB8Mi44ICB8Mi44NTN8MC4wMjk1 IA0KK3N5cyB8MC4yNiB8MC4xOSB8MC4yNyB8MC4yNSB8MC4yNCB8MC4yMyB8 MC4yOCB8MC4yMSB8MC4yMSB8MC4yNyB8MC4yNDF8MC4wMzAzIA0KKy0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0rLS0tLS0tDQorDQorPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQ0KKw0KKzE1IFNpbWlsYXIgdG9vbHMgb24g b3RoZXIgRUxGIHVzaW5nIE9wZXJhdGluZyBTeXN0ZW1zDQorDQorU29tZXRo aW5nIHNpbWlsYXIgdG8gcHJlbGluayBpcyBhdmFpbGFibGUgb24gb3RoZXIg RUxGIHBsYXRmb3Jtcy4gT24NCitJcml4IHRoZXJlIGlzIFFVSUNLU1RBUlQg YW5kIG9uIFNvbGFyaXMgY3JsZS4NCisNCitTR0kgUVVJQ0tTVEFSVCBpcyBt dWNoIGNsb3NlciB0byBwcmVsaW5rIGZyb20gdGhlc2UgdHdvLiBUaGUgcnFz DQorcHJvZ3JhbSByZWxvY2F0ZXMgbGlicmFyaWVzIHRvIChpZiBwb3NzaWJs ZSkgdW5pcXVlIHZpcnR1YWwgYWRkcmVzcw0KK3NwYWNlIHNsb3QuIFRoZSBi YXNlIGFkZHJlc3MgaXMgZWl0aGVyIHNwZWNpZmllZCBvbiB0aGUgY29tbWFu ZCBsaW5lDQord2l0aCB0aGUgLWwgb3B0aW9uLCBvciBycXMgdXNlcyBhIHNv X2xvY2F0aW9ucyByZWdpc3RyeSB3aXRoIC1jIG9yIC11DQorb3B0aW9ucyBh bmQgZmluZHMgYSBub3QgeWV0IG9jY3VwaWVkIHNsb3QuDQorDQorVGhpcyBp cyBzaW1pbGFyIHRvIGhvdyBwcmVsaW5rIGxheXMgb3V0IGxpYnJhcmllcyB3 aXRob3V0IHRoZSAtbQ0KK29wdGlvbi4gUVVJQ0tTVEFSVCB1c2VzIHRoZSBz YW1lIGRhdGEgc3RydWN0dXJlIGZvciBsaWJyYXJ5IGxpc3RzDQorKEVsZk5O X0xpYikgYXMgcHJlbGluaywgYnV0IHVzZXMgbW9yZSBmaWVsZHMgaW4gaXQg KHByZWxpbmsgZG9lc27igJl0DQordXNlIGxfdmVyc2lvbiBhbmQgbF9mbGFn cyBmaWVsZHMgYXQgdGhlIG1vbWVudCkgYW5kIHVzZXMgZGlmZmVyZW50DQor ZHluYW1pYyB0YWdzIGFuZCBzZWN0aW9uIHR5cGUgZm9yIGl0Lg0KKw0KK0Fu b3RoZXIgZGlmZmVyZW5jZSBpcyB0aGF0IFFVSUNLU1RBUlQgbWFrZXMgYWxs IGxpYmxpc3Qgc2VjdGlvbg0KK1NIRl9BTExPQywgd2hldGhlciBpbiBzaGFy ZWQgbGlicmFyaWVzIG9yIGV4ZWN1dGFibGVzLiBwcmVsaW5rIG9ubHkNCitu ZWVkcyBsaWJsaXN0IHNlY3Rpb24gaW4gdGhlIGV4ZWN1dGFibGUgYmUgYWxs b2NhdGVkLCBsaWJsaXN0IHNlY3Rpb25zDQoraW4gc2hhcmVkIGxpYnJhcmll cyBhcmUgbm90IGFsbG9jYXRlZCBhbmQgdXNlZCBhdCBwcmVsaW5rIHRpbWUg b25seS4NCisNCitUaGUgYmlnZ2VzdCBkaWZmZXJlbmNlIGJldHdlZW4gUVVJ Q0tTVEFSVCBhbmQgcHJlbGluayBpcyBpbiBob3cNCitjb25mbGljdHMgYXJl IGVuY29kZWQuIFNHSSBzdG9yZXMgdGhlbSBpbiBhIHZlcnkgY29tcGFjdCBm b3JtYXQsIGFzDQorYXJyYXkgb2YgLmR5bnN5bSBzZWN0aW9uIGluZGV4ZXMg Zm9yIHN5bWJvbHMgd2hpY2ggYXJlIGNvbmZsaWN0aW5nLg0KK1RoZXJlIGlz IG5vIGluZm9ybWF0aW9uIHB1YmxpY2x5IGF2YWlsYWJsZSB3aGF0IGV4YWN0 bHkgU0dJIGR5bmFtaWMNCitsaW5rZXIgZG9lcyB3aGVuIGl0IGlzIHJlc29s dmluZyB0aGUgY29uZmxpY3RzLCBzbyB0aGlzIGlzIGp1c3QgYQ0KK2d1ZXNz Lg0KKw0KK0dpdmVuIHRoYXQgdGhlIGNvbmZsaWN0cyBjYW4gYmUgc3RvcmVk IGluIGEgc2hhcmVkIGxpYnJhcnkgb3INCitleGVjdXRhYmxlIGRpZmZlcmVu dCB0byB0aGUgc2hhcmVkIGxpYnJhcnkgd2l0aCB0aGUgcmVsb2NhdGlvbnMN CithZ2FpbnN0IHRoZSBjb25mbGljdGluZyBzeW1ib2wgYW5kIGRpZmZlcmVu dCB0byB0aGUgc2hhcmVkIGxpYnJhcnkNCit3aGljaCB0aGUgc3ltYm9sIHdh cyBvcmlnaW5hbGx5IHJlc29sdmVkIHRvLCB0aGVyZSBkb2VzbuKAmXQgc2Vl bSB0byBiZQ0KK2FuIG9idmlvdXMgd2F5IGhvdyB0byBoYW5kbGUgdGhlIGNv bmZsaWN0cyB2ZXJ5IGNoZWFwbHkuDQorDQorVGhlIGR5bmFtaWMgbGlua2Vy IHByb2JhYmx5IGNvbGxlY3RzIGxpc3Qgb2YgYWxsIGNvbmZsaWN0aW5nIHN5 bWJvbA0KK25hbWVzLCBmb3IgZWFjaCBzdWNoIHN5bWJvbCBjb21wdXRlcyBF TEYgaGFzaCBhbmQgd2Fsa3MgaGFzaCBidWNrZXRzDQorZm9yIHRoaXMgaGFz aCBvZiBhbGwgc2hhcmVkIGxpYnJhcmllcywgbG9va2luZyBmb3IgdGhlIHN5 bWJvbC4gRXZlcnkNCit0aW1lIGl0IGZpbmRzIHRoZSBzeW1ib2wsIGFsbCBy ZWxvY2F0aW9ucyBhZ2FpbnN0IGl0IG5lZWQgdG8gYmUNCityZWRvbmUuDQor DQorVW5saWtlIHRoaXMsIHByZWxpbmsgc3RvcmVzIGNvbmZsaWN0cyBhcyBh biBhcnJheSBvZiBFbGZOTl9SZWxhDQorc3RydWN0dXJlcywgd2l0aCBvbmUg ZW50cnkgZm9yIGVhY2ggc2hhcmVkIHJlbG9jYXRpb24gYWdhaW5zdA0KK2Nv bmZsaWN0aW5nIHN5bWJvbCBpbiBzb21lIHNoYXJlZCBsaWJyYXJ5LiBUaGlz IGd1YXJhbnRlZXMgdGhhdCB0aGVyZQ0KK2FyZSBubyBzeW1ib2wgbG9va3Vw cyBkdXJpbmcgcHJvZ3JhbSBzdGFydHVwIChwcm92aWRlZCB0aGF0IHNoYXJl ZA0KK2xpYnJhcmllcyBoYXZlIG5vdCBiZWVuIGNoYW5nZWQgYWZ0ZXIgcHJl bGlua2luZyksIHdoaWxlIHdpdGgNCitRVUlDS1NUQVJUIHdpbGwgZG8gc29t ZSBzeW1ib2wgbG9va3VwcyBpZiB0aGVyZSBhcmUgYW55IGNvbmZsaWN0cy4N CisNCitRVUlDS1NUQVJUIHB1dHMgY29uZmxpY3Qgc2VjdGlvbnMgaW50byB0 aGUgZXhlY3V0YWJsZSBhbmQgZXZlcnkgc2hhcmVkDQorbGlicmFyeSB3aGVy ZSBycXMgZGV0ZXJtaW5lcyBjb25mbGljdHMgd2hpbGUgcHJlbGluayBzdG9y ZXMgdGhlbSBpbg0KK3RoZSBleGVjdXRhYmxlIG9ubHkgKGJ1dCB0aGUgYXJy YXkgaXMgdHlwaWNhbGx5IG11Y2ggYmlnZ2VyKS4gRGlzaw0KK3NwYWNlIHJl cXVpcmVtZW50cyBmb3IgcHJlbGlua2VkIGV4ZWN1dGFibGVzIGFyZSBjZXJ0 YWlubHkgYmlnZ2VyIHRoYW4NCitmb3IgcmVxdWlja3N0YXJ0ZWQgZXhlY3V0 YWJsZXMsIGJ1dCB3aGljaCBvbmUgaGFzIGJpZ2dlciBydW50aW1lDQorbWVt b3J5IHJlcXVpcmVtZW50cyBpcyB1bmNsZWFyLg0KKw0KK0lmIHByZWxpbmtp bmcgY2FuIGJlIHVzZWQsIGFsbCAucmVsYSogYW5kIC5yZWwqIHNlY3Rpb25z IGluIHRoZQ0KK2V4ZWN1dGFibGUgYW5kIGFsbCBzaGFyZWQgbGlicmFyaWVz IGFyZSBza2lwcGVkLCBzbyB0aGV5IHdpbGwgbm90IG5lZWQNCit0byBiZSBw YWdlZCBpbiBkdXJpbmcgd2hvbGUgcHJvZ3JhbeKAmXMgbGlmZSAod2l0aCB0 aGUgZXhjZXB0aW9uIG9mDQorZmlyc3QgYW5kIGxhc3QgcGFnZXMgaW4gdGhl IHJlbG9jYXRpb24gc2VjdGlvbnMgd2hpY2ggY2FuIGJlIHBhZ2VkIGluDQor YmVjYXVzZSBvZiBvdGhlciBzZWN0aW9ucyBvbiB0aGUgc2FtZSBwYWdlKSwg YnV0IHdob2xlIC5nbnUuY29uZmxpY3QNCitzZWN0aW9uIG5lZWRzIHRvIGJl IHBhZ2VkIGluIChyZWFkLW9ubHkpIGFuZCBwcm9jZXNzZWQuDQorDQorV2l0 aCBRVUlDS1NUQVJULCBwcm9iYWJseSBhbGwgKG11Y2ggc21hbGxlcikgY29u ZmxpY3Qgc2VjdGlvbnMgbmVlZCB0bw0KK2JlIHBhZ2VkIGluIGFuZCBhbHNv IGxpa2VseSBmb3IgZWFjaCBjb25mbGljdCB3aG9sZSByZWxvY2F0aW9uDQor c2VjdGlvbnMgb2YgZWFjaCBsaWJyYXJ5IHdoaWNoIG5lZWRzIHRoZSBjb25m bGljdCB0byBiZSBhcHBsaWVkDQorYWdhaW5zdC4NCisNCitJbiBRVUlDS1NU QVJUIGRvY3VtZW50YXRpb24sIFNHSSBzYXlzIHRoYXQgY29uZmxpY3RzIGFy ZSB2ZXJ5IGNvc3RseQ0KK2FuZCB0aGF0IGRldmVsb3BlcnMgc2hvdWxkIGF2 b2lkIHRoZW0uIFVuZm9ydHVuYXRlbHksIHRoaXMgaXMNCitzb21ldGltZXMg cXVpdGUgaGFyZCwgZXNwZWNpYWxseSB3aXRoIEMrKyBzaGFyZWQgbGlicmFy aWVzLiBJdCBpcw0KK3VuY2xlYXIgd2hldGhlciBycXMgZG9lcyBhbnkgb3B0 aW1pemF0aW9ucyB0byB0cmltIGRvd24gdGhlIG51bWJlciBvZg0KK2NvbmZs aWN0cy4NCisNCitTdW4gdG9vayBjb21wbGV0ZWx5IGRpZmZlcmVudCBhcHBy b2FjaC4gVGhlIGR5bmFtaWMgbGlua2VyIHByb3ZpZGVzIGENCitkbGR1bXAg KGNvbnN0IGNoYXIgKmlwYXRoLCBjb25zdCBjaGFyICpvcGF0aCwgaW50IGZs YWdzKTsgZnVuY3Rpb24uDQoraXBhdGggaXMgc3VwcG9zZWQgdG8gYmUgYSBw YXRoIHRvIGFuIEVMRiBvYmplY3QgbG9hZGVkIGFscmVhZHkgaW4gdGhlDQor Y3VycmVudCBwcm9jZXNzLiBUaGlzIGZ1bmN0aW9uIGNyZWF0ZXMgYSBuZXcg RUxGIG9iamVjdCBhdCBvcGF0aCwNCit3aGljaCBpcyBsaWtlIHRoZSBpcGF0 aCBvYmplY3QsIGJ1dCByZWxvY2F0ZWQgdG8gdGhlIGJhc2UgYWRkcmVzcw0K K3doaWNoIGl0IGhhcyBhY3R1YWxseSBiZWVuIG1hcHBlZCBhdCBpbiB0aGUg Y3VycmVudCBwcm9jZXNzIGFuZCB3aXRoDQorc29tZSByZWxvY2F0aW9ucyAo c3BlY2lmaWVkIGluIGZsYWdzIGJpdG1hc2spIGFwcGxpZWQgYXMgdGhleSBo YXZlDQorYmVlbiByZXNvbHZlZCBpbiB0aGUgY3VycmVudCBwcm9jZXNzLg0K Kw0KK1JlbG9jYXRpb25zLCB3aGljaCBoYXZlIGJlZW4gYXBwbGllZCwgYXJl IG92ZXJ3cml0dGVuIGluIHRoZQ0KK3JlbG9jYXRpb24gc2VjdGlvbnMgd2l0 aCBSXypfTk9ORSByZWxvY2F0aW9ucy4gVGhlIGNybGUgZXhlY3V0YWJsZSwg aW4NCithZGRpdGlvbiB0byBvdGhlciBmdW5jdGlvbnMgbm90IHJlbGF0ZWQg dG8gc3RhcnR1cCB0aW1lcywgd2l0aCBzb21lDQorc3BlY2lmaWMgb3B0aW9u cyB1c2VzIHRoZSBkbGR1bXAgZnVuY3Rpb24gdG8gZHVtcCBhbGwgc2hhcmVk IGxpYnJhcmllcw0KK2EgcGFydGljdWxhciBleGVjdXRhYmxlIHVzZXMgKGFu ZCB0aGUgZXhlY3V0YWJsZSBpdHNlbGYpIGludG8gYSBuZXcNCitkaXJlY3Rv cnksIHdpdGggc2VsZWN0ZWQgcmVsb2NhdGlvbiBjbGFzc2VzIGJlaW5nIGFs cmVhZHkgYXBwbGllZC4NCisNCitUaGUgbWFpbiBkaXNhZHZhbnRhZ2Ugb2Yg dGhpcyBhcHByb2FjaCBpcyB0aGF0IHN1Y2ggYWx0ZXJuYXRlIHNoYXJlZA0K K2xpYnJhcmllcyBhcmUgYXQgbGVhc3QgZm9yIG1vc3QgcmVsb2NhdGlvbiBj bGFzc2VzIG5vdCBzaGFyZWFibGUNCithY3Jvc3MgZGlmZmVyZW50IHByb2dy YW1zIGF0IGFsbCAoYW5kIGZvciB0aG9zZSB3aGVyZSB0aGV5IGNvdWxkIGJl DQorc2hhcmVhYmxlIGEgbGl0dGxlIGJpdCB0aGVyZSB3aWxsIGJlIG1hbnkg cmVsb2NhdGlvbnMgbGVmdCBmb3IgdGhlDQorZHluYW1pYyBsaW5rZXIsIHNv IHRoZSBzcGVlZCBnYWlucyB3aWxsIGJlIHNtYWxsKS4NCisNCitBbm90aGVy IGRpc2FkdmFudGFnZSBpcyB0aGF0IGFsbCByZWxvY2F0aW9uIHNlY3Rpb25z IG5lZWQgdG8gYmUgcGFnZWQNCitpbnRvIHRoZSBtZW1vcnksIGp1c3QgdG8g ZmluZCBvdXQgdGhhdCBtb3N0IG9mIHRoZSByZWxvY2F0aW9ucyBhcmUNCitS XypfTk9ORS4NCisNCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 DQorDQorMTYgRUxGIGV4dGVuc2lvbnMgZm9yIHByZWxpbmsNCisNCitQcmVs aW5rIG5lZWRzIGEgZmV3IEVMRiBleHRlbnNpb25zIGZvciBpdHMgZGF0YSBz dHJ1Y3R1cmVzIGluIEVMRg0KK29iamVjdHMuIEZvciBsaXN0IG9mIGRlcGVu ZGVuY2llcyBhdCB0aGUgdGltZSBvZiBwcmVsaW5raW5nLCBhIG5ldw0KK3Nl Y3Rpb24gdHlwZSBTSFRfR05VX0xJQkxJU1QgaXMgZGVmaW5lZDoNCisNCisg ICNkZWZpbmUgU0hUX0dOVV9MSUJMSVNUIDB4NmZmZmZmZjcgLyogUHJlbGlu ayBsaWJyYXJ5IGxpc3QgKi8NCisNCisgIHR5cGVkZWYgc3RydWN0DQorICB7 DQorICAgIEVsZjMyX1dvcmQgbF9uYW1lOyAgICAgICAvKiBOYW1lIChzdHJp bmcgdGFibGUgaW5kZXgpICovDQorICAgIEVsZjMyX1dvcmQgbF90aW1lX3N0 YW1wOyAvKiBUaW1lc3RhbXAgKi8NCisgICAgRWxmMzJfV29yZCBsX2NoZWNr c3VtOyAgIC8qIENoZWNrc3VtICovDQorICAgIEVsZjMyX1dvcmQgbF92ZXJz aW9uOyAgICAvKiBVbnVzZWQsIHNob3VsZCBiZSB6ZXJvICovDQorICAgIEVs ZjMyX1dvcmQgbF9mbGFnczsgICAgICAvKiBVbnVzZWQsIHNob3VsZCBiZSB6 ZXJvICovDQorICB9IEVsZjMyX0xpYjsNCisNCisgIHR5cGVkZWYgc3RydWN0 DQorICB7DQorICAgIEVsZjY0X1dvcmQgbF9uYW1lOyAgICAgICAvKiBOYW1l IChzdHJpbmcgdGFibGUgaW5kZXgpICovDQorICAgIEVsZjY0X1dvcmQgbF90 aW1lX3N0YW1wOyAvKiBUaW1lc3RhbXAgKi8NCisgICAgRWxmNjRfV29yZCBs X2NoZWNrc3VtOyAgIC8qIENoZWNrc3VtICovDQorICAgIEVsZjY0X1dvcmQg bF92ZXJzaW9uOyAgICAvKiBVbnVzZWQsIHNob3VsZCBiZSB6ZXJvICovDQor ICAgIEVsZjY0X1dvcmQgbF9mbGFnczsgICAgICAvKiBVbnVzZWQsIHNob3Vs ZCBiZSB6ZXJvICovDQorICB9IEVsZjY0X0xpYjsNCisNCitOZXcgc3RydWN0 dXJlcyBhbmQgc2VjdGlvbiB0eXBlIGNvbnN0YW50cyB1c2VkIGJ5IHByZWxp bmsNCitJbnRyb2R1Y2VzIGEgZmV3IG5ldyBzcGVjaWFsIHNlY3Rpb25zOg0K Kw0KKyAgVGFibGUgMzogU3BlY2lhbCBzZWN0aW9ucyBpbnRyb2R1Y2VkIGJ5 IHByZWxpbmsNCisNCisgIE5hbWUgICAgICAgICAgICAgICB8IFR5cGUgICAg ICAgICAgICB8IEF0dHJpYnV0ZXMNCisgIC0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0NCisgICAgICAgICAgICAg ICAgICAgICB8IEluIHNoYXJlZCBsaWJyYXJpZXMNCisgIC0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0NCisgIC5n bnUubGlibGlzdCAgICAgICB8IFNIVF9HTlVfTElCTElTVCB8IDANCisgIC5n bnUubGlic3RyICAgICAgICB8IFNIVF9TVFJUQUIgICAgICB8IDANCisgIC5n bnUucHJlbGlua191bmRvICB8IFNIVF9QUk9HQklUUyAgICB8IDANCisgIC0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0NCisgICAgICAgICAgICAgICAgICAgICB8IEluIGV4ZWN1dGFibGVzDQor ICAtLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tDQorICAuZ251LmxpYmxpc3QgICAgICAgfCBTSFRfR05VX0xJQkxJ U1QgfCBTSEZfQUxMT0MNCisgIC5nbnUuY29uZmxpY3QgICAgICB8IFNIVF9S RUxBICAgICAgICB8IFNIRl9BTExPQw0KKyAgLmdudS5wcmVsaW5rX3VuZG8g IHwgU0hUX1BST0dCSVRTICAgIHwgMA0KKw0KKw0KK+KAoiAuZ251LmxpYmxp c3QNCisNCisgIFRoaXMgc2VjdGlvbiBjb250YWlucyBvbmUgRWxmTk5fTGli IHN0cnVjdHVyZSBmb3IgZWFjaCBzaGFyZWQNCisgIGxpYnJhcnkgd2hpY2gg dGhlIG9iamVjdCBoYXMgYmVlbiBwcmVsaW5rZWQgYWdhaW5zdCwgaW4gdGhl IG9yZGVyIGluDQorICB3aGljaCB0aGV5IGFwcGVhciBpbiBzeW1ib2wgc2Vh cmNoIHNjb3BlLiBTZWN0aW9u4oCZcyBzaF9saW5rIHZhbHVlDQorICBzaG91 bGQgY29udGFpbiBzZWN0aW9uIGluZGV4IG9mIC5nbnUubGlic3RyIGZvciBz aGFyZWQgbGlicmFyaWVzIGFuZA0KKyAgc2VjdGlvbiBpbmRleCBvZiAuZHlu c3ltIGZvciBleGVjdXRhYmxlcy4NCisNCisgIGxfbmFtZSBmaWVsZCBjb250 YWlucyB0aGUgZGVwZW5kZW50IGxpYnJhcnnigJlzIG5hbWUgYXMgaW5kZXgg aW50byB0aGUNCisgIHNlY3Rpb24gcG9pbnRlZCBieXNoX2xpbmsgZmllbGQu DQorDQorICBsX3RpbWVfc3RhbXAgcmVzcC4gbF9jaGVja3N1bSBzaG91bGQg Y29udGFpbiBjb3BpZXMgb2YNCisgIERUX0dOVV9QUkVMSU5LRUQgcmVzcC4g RFRfQ0hFQ0tTVU0gdmFsdWVzIG9mIHRoZSBkZXBlbmRlbnQgbGlicmFyeS4N CisNCivigKIgLmdudS5jb25mbGljdA0KKw0KKyAgVGhpcyBzZWN0aW9uIGNv bnRhaW5zIG9uZSBFbGZOTl9SZWxhIHN0cnVjdHVyZSBmb3IgZWFjaCBuZWVk ZWQNCisgIHByZWxpbmsgY29uZmxpY3QgZml4dXAuIHJfb2Zmc2V0IGZpZWxk IGNvbnRhaW5zIHRoZSBhYnNvbHV0ZSBhZGRyZXNzDQorICBhdCB3aGljaCB0 aGUgZml4dXAgbmVlZHMgdG8gYmUgYXBwbGllZCwgcl9hZGRlbmQgdGhlIHZh bHVlIHRoYXQNCisgIG5lZWRzIHRvIGJlIHN0b3JlZCBhdCB0aGF0IGxvY2F0 aW9uLiBFTEZOTl9SX1NZTSBvZiByX2luZm8gZmllbGQNCisgIHNob3VsZCBi ZSB6ZXJvLCBFTEZOTl9SX1RZUEUgb2Ygcl9pbmZvIGZpZWxkIHNob3VsZCBi ZSBhcmNoaXRlY3R1cmUNCisgIHNwZWNpZmljIHJlbG9jYXRpb24gdHlwZSB3 aGljaCBzaG91bGQgYmUgaGFuZGxlZCB0aGUgc2FtZSBhcyBmb3INCisgIC5y ZWxhLiogc2VjdGlvbnMgb24gdGhlIGFyY2hpdGVjdHVyZS4NCisNCisgIEZv ciBFTV9BTFBIQSBtYWNoaW5lLCBhbGwgdHlwZXMgd2l0aCBSX0FMUEhBX0pN UF9TTE9UIGluIGxvd2VzdCA4DQorICBiaXRzIG9mIEVMRjY0X1JfVFlQRSBz aG91bGQgYmUgaGFuZGxlZCBhcyBSX0FMUEhBX0pNUF9TTE9UDQorICByZWxv Y2F0aW9uLCB0aGUgdXBwZXIgMjQgYml0cyBjb250YWlucyBpbmRleCBpbiBv cmlnaW5hbCAucmVsYS5wbHQNCisgIHNlY3Rpb24gb2YgdGhlIFJfQUxQSEFf Sk1QX1NMT1QgcmVsb2NhdGlvbiB0aGUgZml4dXAgd2FzIGNyZWF0ZWQNCisg IGZvci4NCisNCivigKIgLmdudS5saWJzdHINCisNCisgICBUaGlzIHNlY3Rp b24gY29udGFpbnMgc3RyaW5ncyBmb3IgLmdudS5saWJsaXN0IHNlY3Rpb24g aW4gc2hhcmVkDQorICAgbGlicmFyaWVzIHdoZXJlIC5nbnUubGlibGlzdCBz ZWN0aW9uIGlzIG5vdCBhbGxvY2F0ZWQuDQorDQor4oCiIC5nbnUucHJlbGlu a191bmRvDQorDQorICBUaGlzIHNlY3Rpb24gY29udGFpbnMgcHJlbGluayBw cml2YXRlIGRhdGEgdXNlZCBmb3IgcHJlbGluayDigJMgdW5kbw0KKyAgb3Bl cmF0aW9uLiBUaGlzIGRhdGEgaW5jbHVkZXMgdGhlIG9yaWdpbmFsIEVsZk5O X0VoZHIgb2YgdGhlIG9iamVjdA0KKyAgYmVmb3JlIHByZWxpbmtpbmcgYW5k IGFsbCBpdHMgb3JpZ2luYWwgRWxmTk5fUGhkciBhbmQgRWxmTk5fU2hkcg0K KyAgaGVhZGVycy4NCisNCitQcmVsaW5rIGFsc28gZGVmaW5lcyA2IG5ldyBk eW5hbWljIHRhZ3M6DQorDQorICAjZGVmaW5lIERUX0dOVV9QUkVMSU5LRUQg IDB4NmZmZmZkZjUgLyogUHJlbGlua2luZyB0aW1lc3RhbXAgKi8NCisgICNk ZWZpbmUgRFRfR05VX0NPTkZMSUNUU1ogMHg2ZmZmZmRmNiAvKiBTaXplIG9m IGNvbmZsaWN0IHNlY3Rpb24gKi8NCisgICNkZWZpbmUgRFRfR05VX0xJQkxJ U1RTWiAgMHg2ZmZmZmRmNyAvKiBTaXplIG9mIGxpYnJhcnkgbGlzdCAqLw0K KyAgI2RlZmluZSBEVF9DSEVDS1NVTSAgICAgICAweDZmZmZmZGY4IC8qIExp YnJhcnkgY2hlY2tzdW0gKi8NCisgICNkZWZpbmUgRFRfR05VX0NPTkZMSUNU ICAgMHg2ZmZmZmVmOCAvKiBTdGFydCBvZiBjb25mbGljdCBzZWN0aW9uICov DQorICAjZGVmaW5lIERUX0dOVV9MSUJMSVNUICAgIDB4NmZmZmZlZjkgLyog TGlicmFyeSBsaXN0ICovDQorDQorDQorUHJlbGluayBkeW5hbWljIHRhZ3MN CisNCitEVF9HTlVfUFJFTElOS0VEIGFuZCBEVF9DSEVDS1NVTSBkeW5hbWlj IHRhZ3MgbXVzdCBiZSBwcmVzZW50IGluDQorcHJlbGlua2VkIHNoYXJlZCBs aWJyYXJpZXMuDQorDQorVGhlIGNvcnJlc3BvbmRpbmcgZF91bi5kX3ZhbCBm aWVsZHMgc2hvdWxkIGNvbnRhaW4gdGltZSB3aGVuIHRoZQ0KK2xpYnJhcnkg aGFzIGJlZW4gcHJlbGlua2VkIChpbiBzZWNvbmRzIHNpbmNlIEphbnVhcnks IDFzdCwgMTk3MCwgMDA6MDANCitVVEMpIHJlc3AuIENSQzMyIGNoZWNrc3Vt IG9mIGFsbCBzZWN0aW9ucyB3aXRoIG9uZSBvZiBTSEZfQUxMT0MsDQorU0hG X1dSSVRFIG9yIFNIRl9FWEVDSU5TVFIgYml0IHNldCB3aG9zZSB0eXBlIGlz IG5vdCBTSFRfTk9CSVRTLCBpbg0KK3RoZSBvcmRlciB0aGV5IGFwcGVhciBp biB0aGUgc2hhcmVkIGxpYnJhcnnigJlzIHNlY3Rpb24gaGVhZGVyIHRhYmxl LA0KK3dpdGggRFRfR05VX1BSRUxJTktFRCBhbmQgRFRfQ0hFQ0tTVU0gZF91 bi52X3ZhbCB2YWx1ZXMgc2V0IHRvIDAgZm9yDQordGhlIHRpbWUgb2YgY2hl Y2tzdW0gY29tcHV0YXRpb24uDQorDQorVGhlIERUX0dOVV9MSUJMSVNUIGFu ZCBEVF9HTlVfTElCTElTVFNaIGR5bmFtaWMgdGFncyBtdXN0IGJlIHByZXNl bnQNCitpbiBhbGwgcHJlbGlua2VkIGV4ZWN1dGFibGVzLg0KKw0KK1RoZSBk X3VuLmRfcHRyIHZhbHVlIG9mIHRoZSBEVF9HTlVfTElCTElTVCBkeW5hbWlj IHRhZyBjb250YWlucyB0aGUNCit2aXJ0dWFsIGFkZHJlc3Mgb2YgdGhlIC5n bnUubGlibGlzdCBzZWN0aW9uIGluIHRoZSBleGVjdXRhYmxlIGFuZA0KK2Rf dW4uZF92YWwgb2YgRFRfR05VX0xJQkxJU1RTWiB0YWcgY29udGFpbnMgaXRz IHNpemUgaW4gYnl0ZXMuDQorDQorRFRfR05VX0NPTkZMSUNUIGFuZCBEVF9H TlVfQ09ORkxJQ1RTWiBkeW5hbWljIHRhZ3MgbWF5IGJlIHByZXNlbnQgaW4N CitwcmVsaW5rZWQgZXhlY3V0YWJsZXMuDQorDQorZF91bi5kX3B0ciBvZiBE VF9HTlVfQ09ORkxJQ1QgZHluYW1pYyB0YWcgY29udGFpbnMgdGhlIHZpcnR1 YWwgYWRkcmVzcw0KK29mIC5nbnUuY29uZmxpY3Qgc2VjdGlvbiBpbiB0aGUg ZXhlY3V0YWJsZSAoaWYgcHJlc2VudCkgYW5kIGRfdW4uZF92YWwNCitvZiBE VF9HTlVfQ09ORkxJQ1RTWiB0YWcgY29udGFpbnMgaXRzIHNpemUgaW4gYnl0 ZXMuDQorDQorUmVmZXJlbmNlcw0KKw0KK1sxXSAgU3lzdGVtIFYgQXBwbGlj YXRpb24gQmluYXJ5IEludGVyZmFjZSwgRWRpdGlvbiA0LjEuDQorICAgICBo dHRwOi8vd3d3LmNhbGRlcmEuY29tL2RldmVsb3BlcnMvZGV2c3BlY3MvZ2Fi aTQxLnBkZg0KKw0KK1syXSAgU3lzdGVtIFYgQXBwbGljYXRpb24gQmluYXJ5 IEludGVyZmFjZSwgSW50ZWwgMzg2IEFyY2hpdGVjdHVyZSBQcm9jZXNzb3IN CisgICAgIFN1cHBsZW1lbnQuDQorICAgICBodHRwOi8vd3d3LmNhbGRlcmEu Y29tL2RldmVsb3BlcnMvZGV2c3BlY3MvYWJpMzg2LTQucGRmDQorDQorWzNd ICBTeXN0ZW0gViBBcHBsaWNhdGlvbiBCaW5hcnkgSW50ZXJmYWNlLA0KKyAg ICAgQU1ENjQgQXJjaGl0ZWN0dXJlIFByb2Nlc3NvciBTdXBwbGVtZW50Lg0K KyAgICAgaHR0cDovL3d3dy54ODYtNjQub3JnL2NnaS1iaW4vY3Zzd2ViLmNn aS94ODYtNjQtQUJJLw0KKw0KK1s0XSAgU3lzdGVtIFYgQXBwbGljYXRpb24g QmluYXJ5IEludGVyZmFjZSwNCisgICAgIEludGVsIEl0YW5pdW0gQXJjaGl0 ZWN0dXJlIFByb2Nlc3NvciBTdXBwbGVtZW50LCBJbnRlbCBDb3Jwb3JhdGlv biwgMjAwMS4NCisgICAgIGh0dHA6Ly9yZWZzcGVjcy5mcmVlc3RhbmRhcmRz Lm9yZy9lbGYvSUE2NC1TeXNWLXBzQUJJLnBkZg0KKw0KK1s1XSAgU3RldmUg WnVja2VyLCBLYXJpIEthcmhpLCBTeXN0ZW0gViBBcHBsaWNhdGlvbiBCaW5h cnkgSW50ZXJmYWNlLCBQb3dlclBDDQorICAgICBBcmNoaXRlY3R1cmUgUHJv Y2Vzc29yIFN1cHBsZW1lbnQsIFN1blNvZnQsIElCTSwgMTk5NS4NCisgICAg IGh0dHA6Ly9yZWZzcGVjcy5mcmVlc3RhbmRhcmRzLm9yZy9lbGYvZWxmc3Bl Y19wcGMucGRmDQorDQorWzZdICBTeXN0ZW0gViBBcHBsaWNhdGlvbiBCaW5h cnkgSW50ZXJmYWNlLCBQb3dlclBDNjQgQXJjaGl0ZWN0dXJlIFByb2Nlc3Nv cg0KKyAgICAgU3VwcGxlbWVudC4NCisgICAgIGZ0cDovL2Z0cC5saW51eHBw YzY0Lm9yZy9wdWIvcGVvcGxlL2Ftb2RyYS9QUEMtZWxmNjRhYmkudHh0Lmd6 DQorDQorWzddICBTeXN0ZW0gViBBcHBsaWNhdGlvbiBCaW5hcnkgSW50ZXJm YWNlLCBBUk0gQXJjaGl0ZWN0dXJlIFByb2Nlc3NvciBTdXBwbGVtZW50Lg0K KyAgICAgaHR0cDovL3d3dy5hcm0uY29tL3N1cHBvcnQvNTY2RkhULyRGaWxl L0FSTUVMRi5wZGYNCisNCitbOF0gIFNQQVJDIENvbXBsaWFuY2UgRGVmaW5p dGlvbiwgVmVyc2lvbiAyLjQuMSwNCisgICAgIFNQQVJDIEludGVybmF0aW9u YWwsIEluYy4sIDE5OTkuDQorICAgICBodHRwOi8vd3d3LnNwYXJjLmNvbS9z dGFuZGFyZHMvU0NELjIuNC4xLnBzLloNCisNCitbOV0gIFVscmljaCBEcmVw cGVyLCBIb3cgVG8gV3JpdGUgU2hhcmVkIExpYnJhcmllcywgUmVkIEhhdCwg SW5jLiwgMjAwMy4NCisgICAgIGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9k cmVwcGVyL2Rzb2hvd3RvLnBkZg0KKw0KK1sxMF0gTGlua2VyIEFuZCBMaWJy YXJ5IEd1aWRlLCBTdW4gTWljcm9zeXN0ZW1zLCAyMDAyLg0KKyAgICAgaHR0 cDovL2RvY3Muc3VuLmNvbS9kYi9kb2MvODE2LTEzODYNCisNCitbMTFdIEpv aG4gUi4gTGV2aW5lLCBMaW5rZXJzIGFuZCBMb2FkZXJzLCAxOTk5Lg0KKyAg ICAgaHR0cDovL3d3dy5nemxpbnV4Lm9yZy9kb2NzL2NhdGVnb3J5L2Rldi9j L2xpbmtlcmFuZGxvYWRlci5wZGYNCisNCitbMTJdIFVscmljaCBEcmVwcGVy LCBFTEYgSGFuZGxpbmcgRm9yIFRocmVhZC1Mb2NhbCBTdG9yYWdlLA0KKyAg ICAgUmVkIEhhdCwgSW5jLiwgMjAwMy4NCisgICAgIGh0dHA6Ly9wZW9wbGUu cmVkaGF0LmNvbS9kcmVwcGVyL3Rscy5wZGYNCisNCitbMTNdIEFsYW4gTW9k cmEsIFBvd2VyUEMgU3BlY2lmaWMgVGhyZWFkIExvY2FsIFN0b3JhZ2UgQUJJ LCAyMDAzLg0KKyAgICAgZnRwOi8vZnRwLmxpbnV4cHBjNjQub3JnL3B1Yi9w ZW9wbGUvYW1vZHJhL3BwYzMydGxzLnR4dC5neg0KKw0KK1sxNF0gQWxhbiBN b2RyYSwgUG93ZXJQQzY0IFNwZWNpZmljIFRocmVhZCBMb2NhbCBTdG9yYWdl IEFCSSwgMjAwMy4NCisgICAgIGZ0cDovL2Z0cC5saW51eHBwYzY0Lm9yZy9w dWIvcGVvcGxlL2Ftb2RyYS9wcGM2NHRscy50eHQuZ3oNCisNCitbMTVdIERX QVJGIERlYnVnZ2luZyBJbmZvcm1hdGlvbiBGb3JtYXQgVmVyc2lvbiAyLg0K KyAgICAgaHR0cDovL3d3dy5lYWdlcmNvbi5jb20vZHdhcmYvZHdhcmYtMi4w LjAucGRmDQorDQorWzE2XSBEV0FSRiBEZWJ1Z2dpbmcgSW5mb3JtYXRpb24g Rm9ybWF0IFZlcnNpb24gMywgRHJhZnQsIDIwMDEuDQorICAgICBodHRwOi8v cmVhbGl0eS5zZ2l3ZWIub3JnL2RhdmVhL2R3YXJmMy1kcmFmdDgtMDExMTI1 LnBkZg0KKw0KK1sxN10gVGhlIOKAnXN0YWJz4oCdIGRlYnVnZ2luZyBpbmZv cm1hdGlvbiBmb3JtYXQuDQorICAgICBodHRwOi8vc291cmNlcy5yZWRoYXQu Y29tL2NnaS1iaW4vY3Zzd2ViLmNnaS9zcmMvZ2RiL2RvYy9zdGFicy50ZXhp bmZvP2N2c3Jvb3Q9c3JjDQorDQorMjAwMy0xMS0wMyBGaXJzdCBkcmFmdC4N Ci0tIA0KMi4yMC4xDQoNCg== --8323329-365934760-1606491618=:28382--